Import danych z http://ump.waw.pl/

A zastanawia? sie kto? nad problemem synchronizacji aktualizajci danych z ump do osm ?
Np stworzeniem narzedzia:

  1. txt2osm.py jakiego? obszaru do obszar_ump.osm
  2. ?ci?gni?cie obszr_osm.osm na podstawie skrajnych z obszar_ump.osm
  3. Generacja róznicy pomi?dzy obszar_ump.osm a obszar_ump.osm tak aby powsta?y:
    obszar_braki_osm.osm - to czego nie ma w osm a jest w ump
    obszar_roznica_<id_i_opis>osm.osm i obszar_roznica<id_i_opis>_ump.osm - pokazuj?cy ró?ne wersje tych samych fragmentów w przypadku gdy wersja ump jest b. z?o?ona / lepsza ni? osm ?

Sam pomys? jest dobry i jestem pewien, ?e kto? ju? o tym wcze?niej my?la?, ale jest dosy? k?opotliwy do zrealizowania - trudno jest okre?li?, która droga to która.
O ile maj?c do czynienia z ró?nymi wersjami tego samego terenu z OSM (gdzie znalaz?yby si? poprzesuwane punkty i porozszerzane drogi), mo?emy porównywa? je za pomoc? ID ka?dego elementu (które si? nie zmienia w czasie), to plik z importu ma ju? inne ID dla tych samych dróg, ni? to, co by?o do tej pory (a w?a?ciwie to nie ma wcale ?adnych sensownych ID).
Mo?na porównywa? dok?adne koordynaty punktów, ale co je?li kto? pod?o?y? pod nie ?lady i lekko poprawi? to z UMP?
Nieco lepszy sposób to jakie? inteligentne porównywanie dróg za pomoc? kszta?tu i po?o?enia, ale w?tpi?, ?eby kto? si? chcia? podj?? takiego zadania :slight_smile: Pro?ciej wczyta? plik po konwersji jako kolejn? warstw? w JOSM i szuka? zmian r?cznie.

PS. Nie uda?o mi si? znale?? nigdzie narz?dzia do wy?wietlania zmian w danym oszarze w OSM, istnieje w ogóle co? takiego?

http://labs.geofabrik.de/history/?

BTW arzej si? do kogo? odezwa??

Super, a co znaczy
Label=~[0x2b]2/8 Prymasa Tysiaclecia

Droga 2 i 8 ?
(znalezione na http://ump.waw.pl/faq.html))

A
Type=0x16

Która to z
http://wiki.openstreetmap.org/wiki/Map_Features#Highway
Google podpowiada ?e to trail ?

Tak, to jest droga 2 i 8, czasami drogi o dwóch numerach zbiegaj? si? w jedn? wtedy w ump jest to tak oznaczane.

Walkway/Trail, w ten sposób s? oznaczane drogi, ?cie?ki, nieprzejezdne samochodem osobowym, ci??arowym, terenowym (ogólnie tereny gdzie niewarto zap?dza? si? samochodem). Z definicji takie odcinki dróg otrzymuj? zakaz ruchu, wi?c routing tamt?dy nie prowadzi. Czasami s? te? wykorzystywane w miastach do pokazania dojazdu do jakiej? posesji która ma inny adrews ni? wskazywa?aby to ulica przy której si? znajduje. Tak samo robi si? czasami z osiedlami (nazwanymi osiedlami). Ogólnie jednak jest to jaka? ?cie?ka, po której samochodem si? nie je?dzi.

Grrrr cudownie, kto? kto importowa? dane z UMP natworzy? mas? zduplikowanych dróg w okolicy Poznania (odcinek Pozna?->Rogalin), zapraszam do pomocy w porz?dkach :wink:

Witam

Czy tylko ja mam wra?enie, ?e dane z UMP s? “do?? dok?adne” - znaczy si? (poza wspomnianymi ju? problemami z rondami i po??czeniami dróg) dok?adne, je?eli chodzi o wymogi nawigacji samochodowej, ale jakby chcie? dok?ada? trasy piesze/rowerowe to dok?adno?ci brakuje.

njarek zrobi? mi przys?ug? i zaimportowa? moj? okolic? ale teraz mijaj? si? z moimi GPX’ami - to niby nic wielkiego, bo ulice s? do?? rzadko, ale … Gdyby chcie? doda? chodniki, przej?cia dla pieszych, przystanki autobusowe, parkingi to zaczynaj? si? schody.

pytanie techniczne do bardziej do?wiadczonych:
czy kilka ?ladów (GPX) z jednego urz?dzenia jest wystarczaj?co dok?adne, czy lepiej poczeka? a? kto? przejedzie z innym GPS’em? Innymi s?owy, czy jest mo?liwe, ?e ten odbiornik który mam ma sta?y b??d, który np. przesuwa mi pozycj? o 10m w lewo.
Nie wiem, czy poprawia?. Nie chcia?bym bardziej popsu? ni? jest :slight_smile:

jeszcze inna kwestia to nazewnictwo dróg - drogi osiedlowe ja oznaczam jako residential z UMP cz??? wesz?a jako service, rozumiem, ?e mog? i powinienem poprawi? na residential.

btw. to nie wiem sk?d UMP ma te dane, bo cz??ci “dróg” nie ma (mo?e by?y) odk?d si? wprowadzi?em - czyli jakie? 20 lat :slight_smile:

no to jak mi ju? ta lista skarg i za?ale? taka d?uga wysz?a to jak wy??czy? emotikony - rozró?niam bez problemu dwukropek minus nawias od ?rednik minus nawias, ale nie zawsze rozpoznam, czy w tym ?ó?tym kó?ku jest ?uk i dwa ma?e kwadraty, czy ?uk, kwadrat i kreska :wink:

Lepsze takie ni? ?adne :slight_smile:

Porównaj swoje traki to innych publicznych (w josm mo?na to zrobi? b. dok?adnie) i jesli wyjdzie Ci ?e masz tak jak wi?kszo?? to spokojnie mo?esz cyzelowa? UMP do Twoich traków.
B. dobrze jest te? udost?pnia? innym swoje tracki via
http://www.openstreetmap.org/traces/mine

Tutaj obowi?zuje
http://wiki.openstreetmap.org/wiki/Map_features#Route
i ?mia?o poprawiaj

Pozdrowienia !

M.in. st?d moje w?tpliwo?ci co do legalno?ci tych danych :confused: W ka?dym razie ja wszystkie poprawiam w?asnymi ?ladami GPX (wywalaj?c uprzednio te oznakowane jako UMP i tworz?c nowe na ich miejsce, coby nie by?o “derived work”)

My?l?, ?e je?li przejedziesz si? kilka razy t? sam? tras? o ró?nych porach, to w zupe?no?ci wystarczy. W teorii takie b??dy mog?yby istnie?, ale chyba raczej przez pomy?k?/z?o?liwo?? konstruktorów.

Na pewno chodzi o Route? Nie widz? tu jego zastosowania… To drogi takie, jak ka?de inne, bez specjalnych zastosowa?.

Chodzi?o mi ca?o?ciowo o stron? (Map_features).
Tutaj b?dzie oczywi?cie:

http://wiki.openstreetmap.org/wiki/Map_features#Highway

Po imporcie z UMP mamy wiele dróg highway=unclassified & surface=unpaved. Czy drogi te nie powinny mie? tagu highway ustawionego na track?
Po pierwsze zwyk?ym autem mog? by? trudne do pokonania, po drugie highway=unclassified s? widoczne nawet w wi?kszym oddaleniu: http://openstreetmap.org/?lat=53.843&lon=17.403&zoom=10&layers=B000FTF
Po trzecie opis track z Map Features wydaje mi si? lepiej oddawa? ich charakter :smiley:

Czesc, zrobilem nowa wersje txt2osm.py, mam nadzieje ze lepsza. Ta wersja konwertuje nie tylko ulice ale wszystko co jest w UMP, podszedlem do tego z takiej strony ze zamiast ignorowac to czego program nie rozumie to program sie wywala jesli czegos nie rozumie, i dodawalem feature’sy az przestal sie wywalac, w zwiazku z tym zrobil sie dosyc dlugasny. Zastrzegam ze nie znam pythona i pewnie mozna by go bylo zakodowac lepiej.
Z ciekawszych rzeczy, potrafi:

  • wykombinowac wartosc “highway=” dla rond, biorac klase najwazniejszej drogi ktora dochodzi do ronda.
  • zrozumiec tag HLevel0 z UMP i dzieli droge na kawalki odpowiednio przydzielajac “layer=”, “bridge=yes” i “tunnel=yes” kawalkom.
  • dodawac dane adresowe dla budynkow, drog, sklepow itd. Dla drog, jesli w UMP sa numery budynkow dla dwoch koleknych wezlow z ich lewej i prawej strony to dodaje addr:interpolation (wedlug Karlsruhe Schema) obok drogi, po lewej i po prawej. Kody pocztowe itd.
  • dodawac relacje turn restrictions z plikow *.zakazy.txt z UMP. To jest chyba najbardziej skomplikowana czesc programu bo UMP opisuje zakazy punktami a nie drogami wiec skrpt musi znalesc droge ktora przechodzi przez dane wezly i ewentualnie podzielic ja na dwie (w OSM drogi w relacji musza sie konczyc albo zaczynac na wezle “via”). Dodatkowo jesli z nazwy relacji nie wynika czy to jest zakaz skretu w prawo czy w lewo to prboje sam policzyc kat skretu (oczywiscie bardzo zawode).
  • przetrawic cala europe w ciagu pol godziny. Oryginalny skrypt jak zapuscilem tylko dla katalogu UMP-Warszawa to pracowal 66.2 minut, zmienilem strukture w ktorej sa punkty z listy na podwojny slownik (z dwoma indeksami) i przekonwertowal UMP-Warszawa/ w 14 sekund. Dodanie relacji spowodowalo ze zajmuje mu to 43 sekundy.

Dla POI zamiast czytac pliki .pnt, zapuszczam skrypt z katalogu narzedzia/ w UMP ktory konwertue je do .txt i dopiero potem zapuszczam txt2osm. Poniewaz w UMP wszystko jest opisane tylko punktami a nie identyfikatorami to im wiekszy obszar skonwertujesz za jednym razem, tym mniej roboty jest pozniej z laczeniem drog ze soba, bo skrypt je polaczy, wiecej lepiej pracowac na wiekszych obszarach. Na przyklad w wolominie pod warszawa wszystkie lokalne ulice byly w pliku …ulice.txt oprocze ronda w samym srodku ktore bylo w …drogi.txt, wiec nie zostalo polaczone. Najlepiej wiec uruchamiac skrypt w ten sposob (zalozmy ze chcemy skonwertowac Wolomin i okolice):

./txt2osm.py UMP-Warszawa/src/WOLOMIN*.txt – UMP-Warszawa/src/*.txt > wolomin.osm

to spowoduje ze skrypt najpierw zaladuje WOLOMIN.drogi.txt i WOLOMIN.ulice.txt, zobaczy jakie sa minimalne i maksymalne wspolrzedne wezlow w tych danych, i potem zaladuje cala reszte warszawy wywalajac to co nie ma zadnego przeciecia z wyznaczonym prostokatem, w zwiazku z tym dostaniemy taki prostokatny wycinek mapy UMP ze wszystkimi danymi ktore sa w UMP. Wszystkie pliki podane po parametrze “–” juz nie zmieniaja rozmiarow tego prostokata.

Oczywiscie dane trzeba nadal sprawdzic recznie po zaladowaniu do JOSM i popoprawiac. Niektore tagi uzywane w UMP dla roznych osob najwyrazniej mialy rozne znaczeni i wtedy w roznych regionach, ten sam tag ma rozne znaczenie, w zwiazku z tym nie wszedzie moglem znalesc jednoznaczny odpowiednik z osm. Wydaje mi sie ze dane ktore juz sa w OSM maja wiekszy priorytet i nie nalezy nigdy ich wywalac na kozysc ump, (czesto mamy lepsza dokladnosc).

Wyjatkiem sa nazwy miejscowosci, w OSM ktos kiedys zaimportowal wszystkie miejscowosci z GNS, czyli z dokladnoscia do 0.03 stopnia w zwiazku z tym tworza taka brzydka siatkie i niektore miescowosci sa w tych samych punktach (czasem 5 miejscowosci sie pokrywa w tym samym punkcie) i czasem brakuje w nich polskich znakow. Wiec jesli w UMP jest jakas miejscowosc to chyba mozna spokojnie odszukac ta sama miejscowosc w OSM i wywalic. (W bazie gns sa w ogole jakies bardzo stare dane i nazwy miejscowosci ktore juz dawno nie istenija i nawet lokalna ludnosc o nich nie wie, ale moze warto je i tak trzymac… ostatnia aktualizacja w gns jest chyba z '93)

Tam gdzie sa dostepne zdjecia yahoo chyba warto popoprawiac odrazu polozenie obiektow.

Skrypt nie rozwija skrotow wiec trzeba recznie porozwijac skroty w nazwach i pododawac imiona do nazwisk a nazwach ulic. Wydaje mi sie ze nalezy zostawiac tag source= nawet jesli sie poprawi recznie dany obiekt po to zeby nie lamac licencji UMP ktora przeciez wymaga “attribution”, i to sie odnosi nie tylko do pozycji ale takze nazwy i innych informacji o obiekcie.

Ogolnie nie bylem fanem importowania danych z UMP bo sytuacja z licencja jest bardzo niejasna… czy przez attribution autorzy rozumieja tylko zeby istniala informacja ktora pozwoli dociekliwym osobom znalesc sciezke do zrodla danej informacji czy tez oczekuja informacji o tym ze dane sa z UMP przy kazdym ich uzyciu (jesli to drugie oczywisice OSM nie moze sie zgadzac na taka licencje). Zalozmy ze ktos chce uzyc mapke zrobiona z osm w telewizji zeby pokazac gdzie cos sie stalo, to wtedy licencia OSM wymaga tylko zeby gdzies na ekranie pojawila sie nazwa OpenStreetMap ale nie nazwy innych wlascicieli praw autorskich danych w osm.
(No ale rzeczywiscie nie ma sensu podwajac wysilkow w dwoch projektach, i skoro juz ktos robi import to najlepiej to zrobic dobrze odrazu bo dane w UMP nie maja identyfikatorow i pewnie nigdy nie bedzie mozna robic automatycznych update’ow)

Na listach -legal i -licensing twierdzi sie ze CC w ogole nie ma zatosowania do danych i ze uzycie tej licencji bylo pomylka i ze wlasciwie to mozna robic co sie chce z danymi na CC. Ale glupio bylo by ignorowac licencje UMP jesli sami uzywamy tej samej licenji w tym momencie. Nie jest dla mnie jasne czy kiedy zmieni sie nasza licencja to czy trzeba bedzie wywalic zaimportowane na prawach CC dane z bazy. Nie bedac wlascicielami praw do tych danych, teoretycznie nie mozna zgodzic sie na zmiane ich licencji (Z drugiej strony “share-alike” w CC mowi tylko ze licencja ma byc podobna, nie koniecznie taka sama)

Nie wiem tez skad sa niektore dane w UMP, dzis znalazlem w wolominie ulice podzielona na trzy segmenty z name=Ottokara, name=Brzozy i name=Brzeziny i okazuje sie ze to jest jedna ulica ktora tak naprawde nazywa sie Generala Ottokara Brzozy-Brzeziny :slight_smile: Najwyrazniej ktos patrzyl na jakas inna mape i narysowal to co widzial, dodatkowo chyba trzymal ja do gory nogami bo Ottokara byla po prawej a Brzeziny po lewej :slight_smile:

Skrypt jest pod http://www.openstreetmap.pl/ump/txt2osm.py
i pliki .osm (zzipowane) pod http://www.openstreetmap.pl/ump/

W ump jest troche literowek i najpierw dodawalem do skryptu te literowki ale potem zaczalem poprawiac w pikach .txt wiec jak ktos chce zapuscic skrypt na wszystkich danych to musi nalozyc patcha z http://www.openstreetmap.pl/ump/ump.diff na dane z CVSa

Jestem pod wra?eniem!
Wida?, ?e w?o?y?e? w to naprawd? du?o wysi?ku (magiczna bariera 1000 linii przekroczona ;)). Sama lista usprawnie? te? wygl?da imponuj?co. Nie sprawdza?em jeszce dzia?ania skryptu, ale je?li wszystko jest naprawd? tak, jak piszesz, to skrypt si? przez jaki? czas przyda.

No w?a?nie, “przez jaki? czas”. Przy takiej ilo?ci pracy, z której mozemy korzysta?, na pewno kto? b?dzie mia? pomys? na nowe usprawnienia. Tu zaczynaj? si? schody, bo sam kod odstrasza - ilo?ci? i czytelno?ci?. Pewnie w takim momencie b?dziesz zam?czany pro?bami os poprawki a? b?dziesz mia? do?? :stuck_out_tongue:

Potwierdzam, cz??ci miejscowo?ci brakuje (~15%), cz??? ju? znikn??a (~15%), wi?kszo?? pozosta?ych zmieni?a nazwy (~40%), reszta si? zgadza. Nie s?dz?, ?eby trzymanie tych starych mia?o sens.

Juz spiesze z wyjasnieniem dlaczego najprawdopodobniej zostalo to tak nazwane. Kiedys, kompilator nie byl w stanie dzielic nazw ulic na czesci skladowe i aby odnalezc dana ulice trzeba byloby wpisac cala nazwe: tzn Generala-… itd. Z tego powodu zapewne ktos sobie wymyslil ze podzieli ja na 3 czesci, ktora kazda bedzie sie nazywala inaczej, ale dzieki temu znajdziemy ja niezaleznie od tego co wpiszemy. Troche to niezgodne z zasadami ump, bo w projekcie uzywa sie tylko nazwiska dla nazw ulic (przynajmniej powinno sie uzywac), ale niektorzy tak robia. Teraz kompilator pozwala juz na wyszukanie ulicy przez wpisanie tylko czesci nazwy (na przyklad samo imie). Tak wiec nie jest to wina patrzenia na mape do gory nogami, ale raczej proba obejscia ograniczen kompilatora.

Chcia?bym zauwa?y?, ?e w ramach generowania http://mapa.ump.waw.pl/ump-www/ tworzony jest plik w formacie OSM dla mapnik’a (ten sam silnik renderuj?cy co na stronie g?ównej OSM). Mo?e jak znajd? chwil? na ogarni?cie kodu, to udost?pni? kod i ew. wynikowy xml publicznie. Jak kto? lubi liczy? linie, to kod ma 4300, a definicja regu? konwersji prawie 6000 :stuck_out_tongue:

Baz? by?y ?ród?a z http://code.google.com/p/mp2osm/, które zosta?y przeze mnie poprawione pod konkretne przypadku oraz dostosowany plik xml definiuj?cy regu?y konwersji.
Wi?cej szczegó?ów na temat technikaliów dost?pne pod: http://ump.fuw.edu.pl/wiki/UMP-pcPL_online .

Niestety osm_id s? przy ka?dej generacji inne i na razie, aby ca?e ump-pcPL mia?o unikalne, musz? konwertowa? ca?o?? (potrzeba ok 2GB ram do tego). Jako próbk? podaj? UMP-Warszawa (2.2MB, 28MB rozpakowane):
http://marcom.homeip.net/ump-www/ump-warszawa.osm.bz2
Reszt? mo?na zobaczy? w formie wygenerowanej na WWW :wink: .
Ca?e UMP-pcPL to plik 103MB .osm.gz (770MB po rozpakowaniu).

Idea?em by?oby, gdyby powsta?y narz?dzia synchronizacyjne osm < - > ump, lub chocia? ump → osm. Wymaga?o by to dodatkowych tagów w OSM (np ump:typ, ump:type, ump:plik, ump:…) oraz pewnie pewnych zmian w ump, np pami?tanie osm_id, bo dopasowywanie na podstawie zawarto?ci (wspó?rz?dne/label/lista punktów) mo?e nie zawsze by? wystarczaj?ce.

Jak na razie widz?, ?e oba projekty id? w swoj? stron? i dubluj? swoj? prac?, bez wzajemnej komunikacji i pomys?u na wspó?prac?. A przyk?ady na b??dy i niedoci?gni?cia mo?na mno?y? po obu stronach i w obu przypadkach wydaj? si? by? niedopuszczalne dla drugiej strony.

G?ównym celem UMP-pcPL jest u?ywalna mapa w odbiornikach z dzia?aj?cym rutingiem. G?ównym celem OSM wydaje si? by? (takie odnios?em wra?enie i chyba nie tylko ja) wygl?d na WWW i zawarcie jak najwi?cej ilo?ci danych (czy latarnie przyuliczne te? s? warte zaznaczenia? :wink: ). Ruting jest raczej na samym ko?cu, jednak ?eby dzia?a? konieczne jest spe?nienie wielu obwarowa?, co jest w?a?nie si?? UMP-pcPL (know-how). Z tego wzgl?du aby edytowa? (commitowa? zg?aszane poprawki) potrzebna jest wiedza jak to robi?, by nie popsu? mapy, czego unika? itp.

Super by by?o, gdyby da?o si? po??czy? si?y, nie psuj?c tego co jest w obu projektach (rozmach OSM i funkcjonalno?? UMP).

Hej, wedlug pomyslu Mateusza Korniaka zalozylem repozytorium dla txt2osm.py, jest ono pod http://repo.or.cz/w/ump2osm.git i jesli ktos chce commitowac zmiany to moze mi podac swoja nazwe uzytkownika zebym go dodal albo moze commitowac anonimowo jako mob.

Przy opkazji:

W osm znajdziesz o wiele wiecej danych niz te ktore sa widoczne przez mapnik. Jednym z pozytecznych sposobow wykorzystania danych jest napewno wyszukiwanie miejsc po roznych kryteriach. Ale, jak sie mawia w roznych wolnych projektach, “mozliwosci wykorzystania sa ograniczone wylacznie twoja wyobraznia”.

Np, osobiscie, jak rysuje budynki to dodaje zwykle informacje o ilosci pieter, z tego mozesz aproksymowac sobie wysokosc budynku (nie mam jak zmierzyc dokladnie wysokosci) i chcialem zrobic jak kiedys bede mial wolna chwile, cos w stylu gry FPP gdzie chodzis po mapie 3d wygenerowanej z osm i srtm (osm ma tez ustalone tagi dla modeli 3d budynkow, jak w google maps). (Naszczescie okazuje sie ze ktos mnie juz w tym wyprzedzil i zrobil podobny projekt ostatnio)

Wracajac do ump, to w ump tez jest wiele wiecej danych niz te ktore sa widoczne w http://mapa.ump.waw.pl/ump-www/ i mysle ze lepiej uzywac skrptyu txt2osm.py, ktory konwertuje dokladnie wszystkie tagi ktore sa w ump, niz tego konwertera ktory robi pliki konkretnie dla mapnika. Szkoda by bylo stracic wiele z tych danych, natomiast dane ktorych rzeczywiscie nie chcemy w osm mozna wywalac w JOSM przed uploadem.

Plik http://openstreetmap.pl/ump/ump-warszawa.osm.bz2 zajmuje 46.5MB rozpakowany.

Rzeczywiscie najlepszym rozwiazaniem byloby gdybysmy mogli synchronizowac dane miedzy osm i ump, ale w ump obiekty nie maja identyfikatorow wiec byloby to dosyc zawodne. Przy innych wiekszych importach danych (AND, TIGER, francuski kataster) w osm zachowane zostaly identyfikatory zeby mozna bylo aktualizowac dane z tych baz (oczywiscie tylko te dane ktore nie zostaly jeszcze poprawione przez kogos w osm, co rozpoznaje sie po tym ze kasowane/zmieniane jest jego oryginalne ID). Dodanie identyfikatorow do obiektow w UMP pewnie byloby latwe i nieszkodliwe i mozna by zalatwic jednym skryptem, ale trzeba by przekonac UMPowcow. I jesli ktos chcialby sie tego podjac to najlepiej teraz kiedy jeszcze nieduza czesc zostala zassana z ump.

Skrypt ktory robilby aktualizacje oczywiscie musialby wygladac tak ze nowe obiekty dopiero co dodane w UMP sa importowane do OSM natomiast zmiany/kasowanie tylko wtedy kiedy ID obiektu w OSM wskazuje ze obiekt nie zostal nigdy dotkniety. Ewentualnie moglby nawet dodawac ticket do OpenStreetBugs jesli w ktoryms miejscu jest potrzebna potencjalna poprawka, np ktos dodal droge w UMP a ona krzyzuje sie z istniejaca juz droga i trzeba dodac wezel na skrzyzowaniu.

Hmm, czy dane UMP zawieraj? te? obrysy budynków? Bo tak patrz?, ?e yahoo nie ma zdj?? dla http://openstreetmap.org/?lat=52.361415&lon=16.886225&zoom=18&layers=B000FTF a ?ladów GPX te? niet. Oczywi?cie user arzej to wrysowa?..

EDIT: Niewa?ne, s? dane w yahoo jednak. Jako? alergicznie na tego nicka reaguj? po wessaniu tysi?cy hektarów z UMP i ?cie?ek ze stron urz?du marsza?kowskiego…