0 : Odsłon:
Nepenthes
Zobaczył, że boty kradną informacje z jego strony. Zastawił pułapkę, której pożałowały.
Crawlery zlizują zawartości stron www w celu karmienia danymi IA.
This is a tarpit intended to catch web crawlers. Specifically, it's targetting crawlers that scrape data for LLM's - but really, like the plants it is named after, it'll eat just about anything that finds it's way inside.
It works by generating an endless sequences of pages, each of which with dozens of links, that simply go back into a the tarpit. Pages are randomly generated, but in a deterministic way, causing them to appear to be flat files that never change. Intentional delay is added to prevent crawlers from bogging down your server, in addition to wasting their time. Lastly, optional Markov-babble can be added to the pages, to give the crawlers something to scrape up and train their LLMs on, hopefully accelerating model collapse.
You can take a look at what this looks like, here. (Note: VERY slow page loads!)
WARNING
THIS IS DELIBERATELY MALICIOUS SOFTWARE INTENDED TO CAUSE HARMFUL ACTIVITY. DO NOT DEPLOY IF YOU AREN'T FULLY COMFORTABLE WITH WHAT YOU ARE DOING.
ANOTHER WARNING
LLM scrapers are relentless and brutual. You may be able to keep them at bay with this software - but it works by providing them with a neverending stream of exactly what they are looking for. YOU ARE LIKELY TO EXPERIENCE SIGNIFICANT CONTINUOUS CPU LOAD, ESPECIALLY WITH THE MARKOV MODULE ENABLED.
YET ANOTHER WARNING
There is not currently a way to differentiate between web crawlers that are indexing sites for search purposes, vs crawlers that are training AI models. ANY SITE THIS SOFTWARE IS APPLIED TO WILL LIKELY DISAPPEAR FROM ALL SEARCH RESULTS.
So why should I run this, then?
So that, as I said to Ars Technica, we can fight back even if we don't succeed. Be indigestible. Grow spikes.
Instead of rolling over and letting these assholes do what they want, make them have to work for it instead.
Latest Version
Nepenthes 1.1
All downloads
Usage
Expected usage is to hide the tarpit behind nginx or Apache, or whatever else you have implemented your site in. Directly exposing it to the internet is ill advised. We want it to look as innocent and normal as possible; in addition HTTP headers are used to configure the tarpit.
I'll be using nginx configurations for examples. Here's a real world snippet for the demo above:
POLSKI:
Nepenthes
To jest tarpit przeznaczony do łapania robotów sieciowych. Konkretnie, jest skierowany na roboty, które zeskrobują dane dla LLM - ale tak naprawdę, podobnie jak rośliny, od których pochodzi jego nazwa, zje prawie wszystko, co znajdzie drogę do środka.
Działa poprzez generowanie nieskończonych sekwencji stron, z których każda zawiera dziesiątki linków, które po prostu wracają do tarpit. Strony są generowane losowo, ale w sposób deterministyczny, co sprawia, że wyglądają jak płaskie pliki, które nigdy się nie zmieniają. Celowe opóźnienie jest dodawane, aby zapobiec robotom spowalnianiu serwera, oprócz marnowania ich czasu. Na koniec, opcjonalne bełkot Markowa można dodać do stron, aby dać robotom coś do zeskrobania i trenowania ich LLM, miejmy nadzieję, przyspieszając załamanie modelu.
Możesz zobaczyć, jak to wygląda, tutaj. (Uwaga: BARDZO wolne ładowanie stron!)
OSTRZEŻENIE
TO JEST CELOWO ZŁOŚLIWE OPROGRAMOWANIE, KTÓRE MA NA CELU WYWOŁYWAĆ SZKODLIWE DZIAŁANIA. NIE WDRAŻAJ, JEŚLI NIE CZUJESZ SIĘ W PEŁNI KOMFORTOWO Z TYM, CO ROBISZ.
INNE OSTRZEŻENIE
Scrapery LLM są bezlitosne i brutalne. Możesz być w stanie trzymać je na dystans za pomocą tego oprogramowania — ale działa ono poprzez dostarczanie im niekończącego się strumienia dokładnie tego, czego szukają. PRAWDOPODOBNIE BĘDZIESZ DOŚWIADCZAŁ ZNACZNEGO CIĄGŁEGO OBCIĄŻENIA PROCESORA, SZCZEGÓLNIE PO WŁĄCZENIU MODUŁU MARKOV.
JEDNO OSTRZEŻENIE
Obecnie nie ma sposobu, aby odróżnić roboty indeksujące witryny w celach wyszukiwania od robotów szkolących modele AI. KAŻDA STRONA, DO KTÓREJ ZASTOSOWANO TO OPROGRAMOWANIE, NAPRAWDĘ ZNIKNIE ZE WSZYSTKICH WYNIKÓW WYSZUKIWANIA.
Więc dlaczego miałbym to uruchomić?
Abyśmy, jak powiedziałem Ars Technica, mogli się bronić, nawet jeśli nam się nie uda. Bądź niestrawny. Rozwijaj kolce.
Zamiast się poddać i pozwolić tym dupkom robić, co chcą, spraw, żeby musieli na to zapracować.
Najnowsza wersja
Nepenthes 1.1
Wszystkie pliki do pobrania
Użycie
Oczekiwane użycie to ukrycie tarpita za nginx lub Apache lub czymkolwiek innym, w czym zaimplementowałeś swoją stronę. Bezpośrednie wystawianie go na działanie Internetu jest niewskazane. Chcemy, żeby wyglądał tak niewinnie i normalnie, jak to możliwe; ponadto nagłówki HTTP są używane do konfigurowania tarpita.
Jako przykłady użyję konfiguracji nginx. Oto fragment rzeczywistego świata dla powyższej demonstracji:
location /nepenthes-demo/ {
proxy_pass http://localhost:8893;
proxy_set_header X-Prefix '/nepenthes-demo';
proxy_set_header X-Forwarded-For $remote_addr;
proxy_buffering off;
}
Zobaczysz, że dodano tutaj kilka nagłówków: „X-Prefix” mówi tarpitowi, że wszystkie linki powinny prowadzić do tej ścieżki. Spraw, aby pasowało to do tego, co jest w dyrektywie „location”. X-Forwarded-For jest opcjonalne, ale sprawi, że wszelkie zebrane statystyki będą znacznie bardziej przydatne.
Dyrektywa proxy_buffering jest ważna. Roboty LLM zazwyczaj rozłączają się, jeśli nie otrzymają odpowiedzi w ciągu kilku sekund; Nepenthes przeciwdziała temu, pobierając po kilka bajtów na raz. Buforowanie przerywa to obejście.
Możesz mieć wiele serwerów proxy do pojedynczej instancji Nepenthes; po prostu ustaw odpowiednio nagłówek X-Prefix.
Instalacja
Możesz użyć Dockera lub zainstalować ręcznie.
Dockerfile i compose.yaml są dostępne w katalogu /docker. Po prostu dostosuj plik konfiguracyjny do swoich preferencji, 'docker compose up'. Nadal będziesz musiał uruchomić korpus Markova, jeśli włączysz tę funkcję (patrz następna sekcja).
W przypadku instalacji ręcznej musisz zainstalować Lua (preferowany 5.4), SQLite (jeśli używasz Markova) i OpenSSL. Następujące moduły Lua muszą zostać zainstalowane — jeśli wszystkie są obecne w menedżerze pakietów, użyj go; w przeciwnym razie będziesz musiał zainstalować Luarocks i użyć go do zainstalowania następujących elementów:
cqueues
ossl (znany również jako luaossl)
lpeg
lzlib (lub lua-zlib, potrzebny jest tylko jeden z dwóch)
dbi-sqlite3 (znany również jako luadbi-sqlite3)
unix (znany również jako lunix)
Utwórz użytkownika nepenthes (NAPRAWDĘ nie chcesz, aby był uruchamiany jako root). Załóżmy, że katalog domowy użytkownika jest również katalogiem instalacyjnym.
useradd -m nepenthes
Rozpakuj tarball:
cd scratch/
tar -xvzf nepenthes-1.0.tar.gz
cp -r nepenthes-1.0/* /home/nepenthes/
Dostosuj config.yml według własnych preferencji (patrz poniżej dokumentacja). Następnie możesz zacząć:
su -l -u nepenthes /home/nepenthes/nepenthes /home/nepenthes/config.yml
Wysłanie SIGTERM lub SIGINT spowoduje zamknięcie procesu.
Bootstrapping Markov Babbler
Funkcja Markov wymaga wyszkolonego korpusu do bełkotu. Jeden został celowo pominięty, ponieważ w idealnym przypadku tarpity każdego powinny wyglądać inaczej, aby uniknąć wykrycia. Znajdź źródło tekstu w dowolnym preferowanym języku; jest wiele korpusów badawczych, ewentualnie wyciągnij kilka bardzo długich artykułów z Wikipedii, może weź kilka książek z Project Gutenberg, plik Fortune Unix, to naprawdę nie ma znaczenia. Bądź kreatywny!
Trening odbywa się poprzez wysyłanie danych do punktu końcowego POST. Trzeba to zrobić tylko raz. Wysyłanie danych treningowych więcej niż raz kumuluje się w istniejącym korpusie, co pozwala na mieszanie różnych tekstów - lub trenowanie w kawałkach.
Gdy masz już swój tekst, zakładając, że nazywa się corpus.txt, w swoim katalogu roboczym i uruchamiasz z domyślnym portem:
curl -XPOST -d ./@corpus.txt -H'Content-type: text/plain' http://localhost:8893/train
Może to potrwać bardzo, BARDZO długo - prawdopodobnie godziny. curl może potencjalnie przekroczyć limit czasu. Zobacz load.sh w dystrybucji nepenthes, aby zapoznać się ze skryptem, który przyrostowo ładuje dane treningowe.
Moduł Markowa zwraca pusty ciąg, jeśli nie ma korpusu. W związku z tym tarpit będzie nadal działał jako tarpit bez załadowanego korpusu. Dodatkowy procesor wykorzystany na to sprawdzenie jest prawie zerowy.
Jeśli chcesz usunąć korpus Markowa i zacząć od nowa, wystarczy użyć curl do tego samego punktu końcowego, używając metody DELETE:
curl -XDELETE http://localhost:8893/train
Statystyki
Chcesz zobaczyć, jaką zdobycz złapałeś? Istnieje kilka punktów końcowych statystyk, wszystkie zwracające JSON. Aby zobaczyć wszystko:
http://{http_host:http_port}/stats
Aby zobaczyć tylko ciągi agenta użytkownika:
http://{http_host:http_port}/stats/agents
Lub tylko adresy IP: 3 http://{http_host:http_port}/stats/ips/
Mogą być dość duże; więc można filtrować zarówno „agentów”, jak i „ips”, po prostu dodaj minimalną liczbę trafień do adresu URL. Na przykład, aby zobaczyć listę wszystkich adresów IP, które zostały odwiedzone ponad 100 razy:
c
Po prostu zwiń adresy URL, przekieruj do 'jq', aby ładnie wydrukować zgodnie z życzeniem. Skrypt do dzieła!
Nowość w wersji 1.1: jest punkt końcowy statystyk korpusu, jeśli jesteś ciekaw, jak duży jest i nie chcesz bawić się w SQLite:
http://{http_host:http_port}/stats/markov
Nepenthes używane defensywnie
Link do lokalizacji Nepenthes z Twojej witryny spowoduje zalanie prawidłowych adresów URL w nazwie domeny Twojej witryny, co sprawi, że mało prawdopodobne jest, aby robot indeksujący uzyskał dostęp do prawdziwej zawartości.
Ponadto zagregowane statystyki dostarczą listę adresów IP, które prawie na pewno są robotami indeksującymi, a nie prawdziwymi użytkownikami. Użyj tej listy, aby utworzyć listy kontroli dostępu, które blokują tym adresom IP dostęp do Twojej zawartości
zwracają 403, 404 lub po prostu blokują na poziomie zapory.
Integracja z fail2ban lub blocklistd (lub podobnymi) jest przyszłą możliwością, umożliwiającą reagowanie w czasie rzeczywistym na roboty, ale obecnie nie jest zaimplementowana.
Używając Nepenthes defensywnie, idealnie byłoby wyłączyć moduł Markowa i ustawić zarówno max_delay, jak i min_delay na coś dużego, jako sposób na oszczędzanie procesora.
Wymuszanie pliku robots.txt
Często o to pytają: tak, to jest prawidłowy przypadek użycia. Nie to zamierzałem zrobić (sprawiać ból firmom AI), co jest czymś zupełnie innym niż zmuszanie botów do respektowania pliku robots.txt. Ale działa dobrze, gdy jest stosowany.
Wystarczy dodać:
User-agent: \*
Disallow: /nepenthes-demo
Do pliku robots.txt, a ci, którzy respektują zasady, zostaną z dala. Wtedy statystyki IP mogą być używane jako lista banów, aby oszczędzać zasoby.
Nepenthes używane ofensywnie
Załóżmy, że masz moc i przepustowość do spalenia i chcesz po prostu zobaczyć, jak te modele AI płoną. Nepenthes ma to, czego potrzebujesz:
Nie próbuj blokować robotów za pomocą statystyk IP. Ustaw czasy opóźnień tak niskie, jak ci wygodnie. Wytrenuj duży korpus Markowa i zostaw moduł Markowa włączony, ustaw maksymalny rozmiar bełkotu na coś dużego. Krótko mówiąc, pozwól im wchłonąć tyle gówna, na ile mają miejsce na dysku, i się tym zadław.
Zaawansowane
Od wersji 1.1 Nepenthes może nasłuchiwać na gnieździe domeny unix zamiast wiązać się z hostem i portem. Ustaw argument „unix_socket” w pliku config.yaml na ścieżkę, do której ma się wiązać.
Pamiętaj, MUSISZ ustawić nagłówek X-Forwarded-For lub podobny w serwerze proxy! Nepenthes będzie działał nieprawidłowo bez niego podczas nasłuchiwania gniazda unix.
Ta funkcja nie została rygorystycznie przetestowana, zachowaj ostrożność.
Plik konfiguracyjny
Wszystkie możliwe dyrektywy w config.yaml:
http_host : ustawia hosta, na którym Nepenthes będzie nasłuchiwał; domyślnie jest to tylko localhost.
http_port : ustawia numer portu nasłuchującego; domyślnie 8893
unix_socket: ustawia ścieżkę do gniazda domeny unix, na którym będzie nasłuchiwał. Domyślnie jest to nil.
prefix: należy podać prefiks dla wszystkich generowanych linków. Można go zastąpić nagłówkiem HTTP X-Prefix. Domyślnie nic.
templates: ścieżka do plików szablonów. Powinien to być katalog '/templates' w instalacji Nepenthes.
detach: jeśli true, Nepenthes przejdzie w tło i przekieruje dane wyjściowe rejestrowania do Syslog.
pidfile: ścieżka do usunięcia pliku pid po demonizacji. Jeśli pusta, nie zostanie utworzony żaden plik pid.
max_wait: najdłuższe opóźnienie dodawane do każdego żądania. Zwiększ, aby spowolnić roboty; jeśli są zbyt wolne, mogą nie powrócić.
min_wait: Najmniejsze opóźnienie dodawane do każdego żądania. Losowa wartość jest wybierana pomiędzy max_wait i min_wait.
real_ip_header: Zmienia nazwę nagłówka X-Forwarded-For, który komunikuje rzeczywisty adres IP klienta w celu zbierania statystyk.
prefix_header: Zmienia nazwę nagłówka X-Prefix, który zastępuje zmienną konfiguracji prefiksu.
forget_time: Czas, w sekundach, przez jaki dany user-agent może zniknąć, zanim zostanie usunięty z tabeli statystyk.
forget_hits: User-agent, który generuje więcej niż tę liczbę żądań
: Wyślij Wiadomość.
Przetłumacz ten tekst na 91 języków
: Podobne ogłoszenia.
ქალთა სპორტული შარვალი და მაღალი ქუსლები, ეს არის აგურის წარმატება.24
ქალთა სპორტული შარვალი და მაღალი ქუსლები, ეს არის აგურის წარმატება. ბოლო დრომდე, ქალთა sweatpants დაკავშირებული იყო მხოლოდ სპორტთან, და ახლა ისინი აუცილებელია სეზონი, ასევე ელეგანტური სტილისტებით. რამოდენიმე წლის განმავლობაში, მოდის პოდიუმებზე, ჩვენ…
Mozaika szklana white
: Nazwa: Mozaika : Model nr.: : Typ: Mozaika kamienna szklana ceramiczna metalowa : Czas dostawy: 96 h : Pakowanie: Sprzedawana na sztuki. Pakiet do 30 kg lub paleta do 200 kg : Waga: 1,5 kg : Materiał: : Pochodzenie: Polska . Europa : Dostępność:…
Słowiańscy Królowie Lechii – Polska Starożytna.
Wstęp audio do książki „Słowiańscy królowie Lechii – Polska starożytna”. Jest to pierwsza publikacja w polskiej historiografii na temat organizacji władzy i funkcjonowania Lechii, czyli starożytnej Polski, zwanej inaczej Imperium Lechitów, Scytią…
Twoje ręce opowiadają historię twojego życia.
Twoje ręce opowiadają historię twojego życia. Czy kiedykolwiek spojrzałeś na linie na dłoniach i na końcach palców? W twojej dłoni są oczywiste fizyczne oznaki bycia uzdrowicielem, więc uważnie je obserwuj! 1. Trzy lub więcej pionowych linii na dłoni tuż…
POLCOLRIT. Producent. Płytki ceramiczne.
POLCOLORIT S.A. to najstarsza prywatna firma produkująca płytki ceramiczne w Polsce. Przedsiębiorstwo powstało w 1984 roku i od tego czasu nie przerwanie się rozwija. Co roku poszerza się produkowany asortyment a park maszynowy jest sukcesywnie…
Stacyjka
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : Opis. : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : DETALE HANDLOWE: : Kraj: ( Polska ) : Zasięg…
Według raportu ONZ społeczeństwo nie może spożywać mięsa bo otyłość gwałtownie rośnie.
Według raportu ONZ społeczeństwo nie może spożywać mięsa bo otyłość gwałtownie rośnie. Co myślicie na temat artykułu? Czerwone mięso jest bogatym źródłem witaminy B12, której nie ma w warzywach i której organizm nie może wytworzyć. Odgrywa rolę w…
10 haseł, które pomogą Ci pozbyć się problemów i osiągnąć to, czego chcesz.
10 haseł, które pomogą Ci pozbyć się problemów i osiągnąć to, czego chcesz. Pierwsze słowo: „walcz”. To słowo najlepiej pomaga, gdy wiszą nad Tobą problemy z kategorii obowiązków. Jeśli robisz coś, co powinno przyjść naturalnie, ale nie masz na to siły…
జేబులో పెట్టిన మొక్క: చెట్టు క్రాసులా: క్రాసులా అర్బోరెస్సెన్స్, ఓవల్ క్రాసులా: క్రాసులా ఓవాటా,7
జేబులో పెట్టిన మొక్క: చెట్టు క్రాసులా: క్రాసులా అర్బోరెస్సెన్స్, ఓవల్ క్రాసులా: క్రాసులా ఓవాటా, క్రాసులా బోన్సాయ్ చెట్టులా కనిపిస్తుంది. ఈ జేబులో పెట్టిన మొక్క ఒక మీటరు ఎత్తుకు కూడా చేరుకుంటుంది. దీని ప్రయోజనం ఏమిటంటే దీనికి ప్రత్యేక శ్రద్ధ అవసరం లేదు.…
La Merced, Mercado de Sonora i Mercado Jamaica.
Pięknie wyglądają z góry miasta. Oto są promieniujące ulice otaczają Plaza Del Ejecutivo w dzielnicy Venustiano Carranza w Meksyku w Meksyku. W tej dzielnicy, w której mieszka ponad 430 000 osób, znajdują się trzy duże tradycyjne rynki miasta Meksyk: La…
176-letni Hanuman Das Baba: Żyjący święty Vrindavan.
176-letni Hanuman Das Baba: Żyjący święty Vrindavan. Hanuman Das Baba z Vrindavan, który może być jednym z najstarszych żyjących ludzi na ziemi, urodzonym w 1845 roku. Wspomniał, że wyhodował drugi zestaw zębów po wypadnięciu wszystkich zębów, co zdarza…
Słonowice: Unikatowe w skali europejskiej stanowisko archeologiczne obejmujące zespół wielkich grobowców megalitycznych:
Słowiańska Dolina Królów – 3000 lat p.n.e. Rok 2021: Obecnie mamy rok 7530 lub 7529 według czasu Świątyni Światła Świata. Słonowice: Unikatowe w skali europejskiej stanowisko archeologiczne obejmujące zespół wielkich grobowców megalitycznych: megaksylonów…
Na temat zwierząt można zatem sformułować następujące uwagi.
Na temat zwierząt można zatem sformułować następujące uwagi. Spośród mężczyzn, którzy przyszli na świat, można przypuszczać, że ci, którzy byli tchórzami lub prowadzili niesprawiedliwe życie, w drugim pokoleniu zmienili się w naturę kobiet. I to był…
Autotrepanacja.
Autotrepanacja. Wywiercił dziurę we własnej czaszce, aby pozostać na górze na zawsze. Joe Mellen to 76-letni były beatnik(buntownik), który użył wiertarki elektrycznej, aby zrobić dziurę w swojej czaszce.⠀ Jeśli chodzi o pierwsze wersety wspomnień, nie są…
Skrzynia z logo Ahnenerbe i niezwykłymi czaszkami.
Skrzynia z logo Ahnenerbe i niezwykłymi czaszkami. Skrzynia została znaleziona w Rosji. W odległych górskich lasach Rosji, podczas wykopalisk myśliwych w poszukiwaniu artefaktów wojskowych. W pudełku znajdowały się dwie starannie zapakowane czaszki innej…
透明质酸或胶原蛋白?您应该选择哪个程序:
透明质酸或胶原蛋白?您应该选择哪个程序: 透明质酸和胶原蛋白是人体自然产生的物质。应该强调的是,在25岁以后,它们的产量会下降,这就是为什么衰老过程和皮肤变得松弛,松弛,皱纹和皱纹的原因。为了抵消它们,美容医学使您可以通过注射透明质酸或胶原蛋白来减慢这些过程。您应该选择哪一个?这些治疗有什么区别? 美容医学-I型胶原蛋白治疗…
Parceria público-privada, BioNTech, moderna, curevac, covid-19, coronavírus, vacina:
Parceria público-privada, BioNTech, moderna, curevac, covid-19, coronavírus, vacina: 20200320AD BTM Innovations, Apeiron, SRI International, Iktos, medicamentos antivirais, AdaptVac, ExpreS2ion Biotechnologies, pfizer, janssen, sanofi, Em 16 de março, a…
CANADAPIPE. Manufacturer. Pipe, valves, hydrants, fittings, and plumbing products.
About Us At the McWane Family of Companies, we cast ductile iron products — including pipe, valves, hydrants, fittings, and plumbing products — manufacture fire extinguishers, fire suppression systems, steel pressure vessels, and build network switches…
ARGOCARD. Producent. Karty plastikowe.
Argo Card Sp. z o.o. jest największym polskim producentem kart plastikowych oraz wiodącym dostawcą związanych z nimi usług. Firma specjalizuje się w personalizacji, mailingu, fullfilmencie i obsłudze zaawansowanych systemów zarządzania relacjami z…
Tajemnicza, bardzo skomplikowana konstrukcja i granitowa podstawa znajduje się na dnie szybu w Zawyet El'Aryan.
Starożytny Zawyet El Aryan w Egipcie. Tajemnicza, bardzo skomplikowana konstrukcja i granitowa podstawa znajduje się na dnie szybu w Zawyet El'Aryan. Archeolog Jean-Philip Lauer stoi po prawej stronie. Możesz uzyskać wyobrażenie o wymiarach tego miejsca.…
Trzymam się zasady 3:2:1. Ciasto kruche wychodzi idealne za każdym razem.
Trzymam się zasady 3:2:1. Ciasto kruche wychodzi idealne za każdym razem. Autor: Anna Sowińska Kruche ciasto jest niezwykle szybkie w przygotowaniu i można wykorzystać je na wiele różnych sposobów. Jak jednak wykonać idealną masę, która po upieczeniu…
Pojedyncza różę może zamienić się w cały krzaczek w przeciągu kilku chwil!
Pojedyncza różę może zamienić się w cały krzaczek w przeciągu kilku chwil! Nie ma to jak kwiecisty bukiecik w wazonie, człowiek od razu promienieje na sam widok, mimo iż pogoda za oknem może nie dopisywać, prawda? Kwiatki nie należą do najtańszych…
ਇੱਕ ਖਾਸ ਮੌਕੇ ਲਈ ਸੰਪੂਰਨ ਕਪੜੇ:
ਇੱਕ ਖਾਸ ਮੌਕੇ ਲਈ ਸੰਪੂਰਨ ਕਪੜੇ: ਸਾਡੇ ਵਿੱਚੋਂ ਹਰੇਕ ਨੇ ਇਹ ਕੀਤਾ: ਇੱਕ ਵਿਆਹ ਆ ਰਿਹਾ ਹੈ, ਬਪਤਿਸਮਾ ਲੈ ਰਿਹਾ ਹੈ, ਕਿਸੇ ਕਿਸਮ ਦੀ ਰਸਮ ਹੈ, ਸਾਨੂੰ ਸਹੀ dressੰਗ ਨਾਲ ਕੱਪੜੇ ਪਾਉਣੇ ਪੈਣਗੇ, ਪਰ ਬੇਸ਼ਕ ਅਜਿਹਾ ਕਰਨ ਲਈ ਕੁਝ ਵੀ ਨਹੀਂ ਹੈ. ਅਸੀਂ ਸਟੋਰ ਤੇ ਜਾਂਦੇ ਹਾਂ, ਅਸੀਂ ਖਰੀਦਦੇ ਹਾਂ ਕੀ ਹੈ ਅਤੇ ਕੀ…
Herbata oolong ma bogaty aromat, łagodny smak i szalenie interesujący wygląd.
Pij zamiast zwykłej herbaty. Działa jak eliksir młodości i ma właściwości antyrakowe Herbata oolong ma bogaty aromat, łagodny smak i szalenie interesujący wygląd. Niebieski napar sprawia wrażenie, jakby pełen był sztucznych dodatków. To tylko pozory -…
Cywilizacja Majów.
Cywilizacja Majów. Nocuchich, Campeche sfotografowane podczas wyprawy Niemca Teoberta Malera. Widać w nim monumentalną stiukową twarz z nakrytą głową. Zdjęcie 1900 Maya-Zivilisation. Nocuchich, Campeche fotografiert während der Expedition des…

