Index: django/contrib/localflavor/pl/pl_voivodeships.py
===================================================================
--- django/contrib/localflavor/pl/pl_voivodeships.py	(wersja 0)
+++ django/contrib/localflavor/pl/pl_voivodeships.py	(wersja 0)
@@ -0,0 +1,24 @@
+"""
+Polish voivodeship as in http://en.wikipedia.org/wiki/Poland#Administrative_division
+"""
+
+from django.utils.translation import ugettext_lazy as _
+
+VOIVODESHIP_CHOICES = (
+    ('lower_silesia', _('Lower Silesia')),
+    ('kuyavia-pomerania', _('Kuyavia-Pomerania')),
+    ('lublin',_('Lublin')),
+    ('lubusz',_('Lubusz')),
+    ('lodz',_('Lodz')),
+    ('lesser_poland',_('Lesser Poland')),
+    ('masovia',_('Masovia')),
+    ('opole',_('Opole')),
+    ('subcarpatia',_('Subcarpatia')),
+    ('podlasie',_('Podlasie')),
+    ('pomerania',_('Pomerania')),
+    ('silesia',_('Silesia')),
+    ('swietokrzyskie',_('Swietokrzyskie')),
+    ('warmia-masuria',_('Warmia-Masuria')),
+    ('greater_poland', _('Greater Poland')),
+    ('west_pomerania',_('West Pomerania')),
+)
Index: django/contrib/localflavor/pl/__init__.py
===================================================================
Index: django/contrib/localflavor/pl/pl_administrativeunits.py
===================================================================
--- django/contrib/localflavor/pl/pl_administrativeunits.py	(wersja 0)
+++ django/contrib/localflavor/pl/pl_administrativeunits.py	(wersja 0)
@@ -0,0 +1,385 @@
+# -*- coding: utf-8 -*-
+"""
+Polish administrative units as in http://pl.wikipedia.org/wiki/Podzia%C5%82_administracyjny_Polski
+"""
+
+
+ADMINISTRATIVEUNIT_CHOICES = (
+    ('wroclaw',u'Wrocław'),
+    ('jeleniagora',u'Jelenia Góra'),
+    ('legnica',u'Legnica'),
+    ('boleslawiecki',u'bolesławiecki'),
+    ('dzierzoniowski',u'dzierżoniowski'),
+    ('glogowski',u'głogowski'),
+    ('gorowski',u'górowski'),
+    ('jaworski',u'jaworski'),
+    ('jeleniogorski',u'jeleniogórski'),
+    ('kamiennogorski',u'kamiennogórski'),
+    ('klodzki',u'kłodzki'),
+    ('legnicki',u'legnicki'),
+    ('lubanski', u'lubański'),
+    ('lubinski', u'lubiński'),
+    ('lwowecki', u'lwówecki'),
+    ('milicki', u'milicki'),
+    ('olesnicki', u'oleśnicki'),
+    ('olawski', u'oławski'),
+    ('polkowicki', u'polkowicki'),
+    ('strzelinski',u'strzeliński'),
+    ('sredzki',u'średzki'),
+    ('swidnicki',u'świdnicki'),
+    ('trzebnicki',u'trzebnicki'),
+    ('walbrzyski',u'wałbrzyski'),
+    ('wolowski',u'wołowski'),
+    ('wroclawski',u'wrocławski'),
+    ('zabkowicki',u'ząbkowicki'),
+    ('zgorzelecki',u'zgorzelecki'),
+    ('zlotoryjski',u'złotoryjski'),
+    ('bydgoszcz',u'Bydgoszcz'),
+    ('torun',u'Toruń'),
+    ('wloclawek',u'Włocławek'),
+    ('grudziadz',u'Grudziądz'),
+    ('aleksandrowski',u'aleksandrowski'),
+    ('brodnicki',u'brodnicki'),
+    ('bydgoski',u'bydgoski'),
+    ('chelminski',u'chełmiński'),
+    ('golubsko-dobrzynski',u'golubsko-dobrzyński'),
+    ('grudziadzki',u'grudziądzki'),
+    ('inowroclawski',u'inowrocławski'),
+    ('lipnowski',u'lipnowski'),
+    ('mogilenski',u'mogileński'),
+    ('nakielski',u'nakielski'),
+    ('radziejowski',u'radziejowski'),
+    ('rypinski',u'rypiński'),
+    ('sepolenski',u'sępoleński'),
+    ('swiecki',u'świecki'),
+    ('torunski',u'toruński'),
+    ('tucholski',u'tucholski'),
+    ('wabrzeski',u'wąbrzeski'),
+    ('wloclawski',u'wrocławski'),
+    ('zninski',u'źniński'),
+    ('lublin',u'Lublin'),
+    ('biala-podlaska',u'Biała Podlaska'),
+    ('chelm',u'Chełm'),
+    ('zamosc',u'Zamość'),
+    ('bialski',u'bialski'),
+    ('bilgorajski',u'biłgorajski'),
+    ('chelmski',u'chełmski'),
+    ('hrubieszowski',u'hrubieszowski'),
+    ('janowski',u'janowski'),
+    ('krasnostawski',u'krasnostawski'),
+    ('krasnicki',u'kraśnicki'),
+    ('lubartowski',u'lubartowski'),
+    ('lubelski',u'lubelski'),
+    ('leczynski',u'łęczyński'),
+    ('lukowski',u'łukowski'),
+    ('opolski',u'opolski'),
+    ('parczewski',u'parczewski'),
+    ('pulawski',u'puławski'),
+    ('radzynski',u'radzyński'),
+    ('rycki',u'rycki'),
+    ('swidnicki',u'świdnicki'),
+    ('tomaszowski',u'tomaszowski'),
+    ('wlodawski',u'włodawski'),
+    ('zamojski',u'zamojski'),
+    ('gorzow-wielkopolski',u'Gorzów Wielkopolski'),
+    ('zielona-gora',u'Zielona Góra'),
+    ('gorzowski',u'gorzowski'),
+    ('krosnienski',u'krośnieński'),
+    ('miedzyrzecki',u'międzyrzecki'),
+    ('nowosolski',u'nowosolski'),
+    ('slubicki',u'słubicki'),
+    ('strzelecko-drezdenecki',u'strzelecko-drezdenecki'),
+    ('sulecinski',u'suleńciński'),
+    ('swiebodzinski',u'świebodziński'),
+    ('wschowski',u'wschowski'),
+    ('zielonogorski',u'zielonogórski'),
+    ('zaganski',u'żagański'),
+    ('zarski',u'żarski'),
+    ('lodz',u'Łódź'),
+    ('piotrkow-trybunalski',u'Piotrków Trybunalski'),
+    ('skierniewice',u'Skierniewice'),
+    ('belchatowski',u'bełchatowski'),
+    ('brzezinski',u'brzeziński'),
+    ('kutnowski',u'kutnowski'),
+    ('laski',u'łaski'),
+    ('leczycki',u'łęczycki'),
+    ('lowicki',u'łowicki'),
+    ('lodzki wschodni',u'łódzki wschodni'),
+    ('opoczynski',u'opoczyński'),
+    ('pabianicki',u'pabianicki'),
+    ('pajeczanski',u'pajęczański'),
+    ('piotrkowski',u'piotrkowski'),
+    ('poddebicki',u'poddębicki'),
+    ('radomszczanski',u'radomszczański'),
+    ('rawski',u'rawski'),
+    ('sieradzki',u'sieradzki'),
+    ('skierniewicki',u'skierniewicki'),
+    ('tomaszowski',u'tomaszowski'),
+    ('wielunski',u'wieluński'),
+    ('wieruszowski',u'wieruszowski'),
+    ('zdunskowolski',u'zduńskowolski'),
+    ('zgierski',u'zgierski'),
+    ('krakow',u'Kraków'),
+    ('tarnow',u'Tarnów'),
+    ('nowy-sacz',u'Nowy Sącz'),
+    ('bochenski',u'bocheński'),
+    ('brzeski',u'brzeski'),
+    ('chrzanowski',u'chrzanowski'),
+    ('dabrowski',u'dąbrowski'),
+    ('gorlicki',u'gorlicki'),
+    ('krakowski',u'krakowski'),
+    ('limanowski',u'limanowski'),
+    ('miechowski',u'miechowski'),
+    ('myslenicki',u'myślenicki'),
+    ('nowosadecki',u'nowosądecki'),
+    ('nowotarski',u'nowotarski'),
+    ('olkuski',u'olkuski'),
+    ('oswiecimski',u'oświęcimski'),
+    ('proszowicki',u'proszowicki'),
+    ('suski',u'suski'),
+    ('tarnowski',u'tarnowski'),
+    ('tatrzanski',u'tatrzański'),
+    ('wadowicki',u'wadowicki'),
+    ('wielicki',u'wielicki'),
+    ('warszawa',u'Warszawa'),
+    ('ostroleka',u'Ostrołęka'),
+    ('plock',u'Płock'),
+    ('radom',u'Radom'),
+    ('siedlce',u'Siedlce'),
+    ('bialobrzeski',u'białobrzeski'),
+    ('ciechanowski',u'ciechanowski'),
+    ('garwolinski',u'garwoliński'),
+    ('gostyninski',u'gostyniński'),
+    ('grodziski',u'grodziski'),
+    ('grojecki',u'grójecki'),
+    ('kozienicki',u'kozenicki'),
+    ('legionowski',u'legionowski'),
+    ('lipski',u'lipski'),
+    ('losicki',u'łosicki'),
+    ('makowski',u'makowski'),
+    ('minski',u'miński'),
+    ('mlawski',u'mławski'),
+    ('nowodworski',u'nowodworski'),
+    ('ostrolecki',u'ostrołęcki'),
+    ('ostrowski',u'ostrowski'),
+    ('otwocki',u'otwocki'),
+    ('piaseczynski',u'piaseczyński'),
+    ('plocki',u'płocki'),
+    ('plonski',u'płoński'),
+    ('pruszkowski',u'pruszkowski'),
+    ('przasnyski',u'przasnyski'),
+    ('przysuski',u'przysuski'),
+    ('pultuski',u'pułtuski'),
+    ('radomski',u'radomski'),
+    ('siedlecki',u'siedlecki'),
+    ('sierpecki',u'sierpecki'),
+    ('sochaczewski',u'sochaczewski'),
+    ('sokolowski',u'sokołowski'),
+    ('szydlowiecki',u'szydłowiecki'),
+    ('warszawski-zachodni',u'warszawski zachodni'),
+    ('wegrowski',u'węgrowski'),
+    ('wolominski',u'wołomiński'),
+    ('wyszkowski',u'wyszkowski'),
+    ('zwolenski',u'zwoleński'),
+    ('zurominski',u'żuromiński'),
+    ('zyrardowski',u'żyrardowski'),
+    ('opole',u'Opole'),
+    ('brzeski',u'brzeski'),
+    ('glubczycki',u'głubczyski'),
+    ('kedzierzynsko-kozielski',u'kędzierzyński-kozielski'),
+    ('kluczborski',u'kluczborski'),
+    ('krapkowicki',u'krapkowicki'),
+    ('namyslowski',u'namysłowski'),
+    ('nyski',u'nyski'),
+    ('oleski',u'oleski'),
+    ('opolski',u'opolski'),
+    ('prudnicki',u'prudnicki'),
+    ('strzelecki',u'strzelecki'),
+    ('rzeszow',u'Rzeszów'),
+    ('krosno',u'Krosno'),
+    ('przemysl',u'Przemyśl'),
+    ('tarnobrzeg',u'Tarnobrzeg'),
+    ('bieszczadzki',u'bieszczadzki'),
+    ('brzozowski',u'brzozowski'),
+    ('debicki',u'dębicki'),
+    ('jaroslawski',u'jarosławski'),
+    ('jasielski',u'jasielski'),
+    ('kolbuszowski',u'kolbuszowski'),
+    ('krosnienski',u'krośnieński'),
+    ('leski',u'leski'),
+    ('lezajski',u'leżajski'),
+    ('lubaczowski',u'lubaczowski'),
+    ('lancucki',u'łańcucki'),
+    ('mielecki',u'mielecki'),
+    ('nizanski',u'niżański'),
+    ('przemyski',u'przemyski'),
+    ('przeworski',u'przeworski'),
+    ('ropczycko-sedziszowski',u'ropczycko-sędziszowski'),
+    ('rzeszowski',u'rzeszowski'),
+    ('sanocki',u'sanocki'),
+    ('stalowowolski',u'stalowowolski'),
+    ('strzyzowski',u'strzyżowski'),
+    ('tarnobrzeski',u'tarnobrzeski'),
+    ('bialystok',u'Białystok'),
+    ('lomza',u'Łomża'),
+    ('suwalki',u'Suwałki'),
+    ('augustowski',u'augustowski'),
+    ('bialostocki',u'białostocki'),
+    ('bielski',u'bielski'),
+    ('grajewski',u'grajewski'),
+    ('hajnowski',u'hajnowski'),
+    ('kolnenski',u'kolneński'),
+    ('łomzynski',u'łomżyński'),
+    ('moniecki',u'moniecki'),
+    ('sejnenski',u'sejneński'),
+    ('siemiatycki',u'siematycki'),
+    ('sokolski',u'sokólski'),
+    ('suwalski',u'suwalski'),
+    ('wysokomazowiecki',u'wysokomazowiecki'),
+    ('zambrowski',u'zambrowski'),
+    ('gdansk',u'Gdańsk'),
+    ('gdynia',u'Gdynia'),
+    ('slupsk',u'Słupsk'),
+    ('sopot',u'Sopot'),
+    ('bytowski',u'bytowski'),
+    ('chojnicki',u'chojnicki'),
+    ('czluchowski',u'człuchowski'),
+    ('kartuski',u'kartuski'),
+    ('koscierski',u'kościerski'),
+    ('kwidzynski',u'kwidzyński'),
+    ('leborski',u'lęborski'),
+    ('malborski',u'malborski'),
+    ('nowodworski',u'nowodworski'),
+    ('gdanski',u'gdański'),
+    ('pucki',u'pucki'),
+    ('slupski',u'słupski'),
+    ('starogardzki',u'starogardzki'),
+    ('sztumski',u'sztumski'),
+    ('tczewski',u'tczewski'),
+    ('wejherowski',u'wejcherowski'),
+    ('katowice',u'Katowice'),
+    ('bielsko-biala',u'Bielsko-Biała'),
+    ('bytom',u'Bytom'),
+    ('chorzow',u'Chorzów'),
+    ('czestochowa',u'Częstochowa'),
+    ('dabrowa-gornicza',u'Dąbrowa Górnicza'),
+    ('gliwice',u'Gliwice'),
+    ('jastrzebie-zdroj',u'Jastrzębie Zdrój'),
+    ('jaworzno',u'Jaworzno'),
+    ('myslowice',u'Mysłowice'),
+    ('piekary-slaskie',u'Piekary Śląskie'),
+    ('ruda-slaska',u'Ruda Śląska'),
+    ('rybnik',u'Rybnik'),
+    ('siemianowice-slaskie',u'Siemianowice Śląskie'),
+    ('sosnowiec',u'Sosnowiec'),
+    ('swietochlowice',u'Świętochłowice'),
+    ('tychy',u'Tychy'),
+    ('zabrze',u'Zabrze'),
+    ('zory',u'Żory'),
+    ('bedzinski',u'będziński'),
+    ('bielski',u'bielski'),
+    ('bierunsko-ledzinski',u'bieruńsko-lędziński'),
+    ('cieszynski',u'cieszyński'),
+    ('czestochowski',u'częstochowski'),
+    ('gliwicki',u'gliwicki'),
+    ('klobucki',u'kłobucki'),
+    ('lubliniecki',u'lubliniecki'),
+    ('mikolowski',u'mikołowski'),
+    ('myszkowski',u'myszkowski'),
+    ('pszczynski',u'pszczyński'),
+    ('raciborski',u'raciborski'),
+    ('rybnicki',u'rybnicki'),
+    ('tarnogorski',u'tarnogórski'),
+    ('wodzislawski',u'wodzisławski'),
+    ('zawiercianski',u'zawierciański'),
+    ('zywiecki',u'żywiecki'),
+    ('kielce',u'Kielce'),
+    ('buski',u'buski'),
+    ('jedrzejowski',u'jędrzejowski'),
+    ('kazimierski',u'kazimierski'),
+    ('kielecki',u'kielecki'),
+    ('konecki',u'konecki'),
+    ('opatowski',u'opatowski'),
+    ('ostrowiecki',u'ostrowiecki'),
+    ('pinczowski',u'pińczowski'),
+    ('sandomierski',u'sandomierski'),
+    ('skarzyski',u'skarżyski'),
+    ('starachowicki',u'starachowicki'),
+    ('staszowski',u'staszowski'),
+    ('wloszczowski',u'włoszczowski'),
+    ('olsztyn',u'Olsztyn'),
+    ('elblag',u'Elbląg'),
+    ('bartoszycki',u'bartoszycki'),
+    ('braniewski',u'braniewski'),
+    ('dzialdowski',u'działdowski'),
+    ('elblaski',u'elbląski'),
+    ('elcki',u'ełcki'),
+    ('gizycki',u'giżycki'),
+    ('goldapski',u'gołdapski'),
+    ('ilawski',u'iławski'),
+    ('ketrzynski',u'kętrzyński'),
+    ('lidzbarski',u'lidzbarski'),
+    ('mragowski',u'mrągowski'),
+    ('nidzicki',u'nidzicki'),
+    ('nowomiejski',u'nowomiejski'),
+    ('olecki',u'olecki'),
+    ('olsztynski',u'olsztyński'),
+    ('ostrodzki',u'ostródzki'),
+    ('piski',u'piski'),
+    ('szczycienski',u'szczycieński'),
+    ('wegorzewski',u'węgorzewski'),
+    ('poznan',u'Poznań'),
+    ('kalisz',u'Kalisz'),
+    ('konin',u'Konin'),
+    ('leszno',u'Leszno'),
+    ('chodzieski',u'chodziejski'),
+    ('czarnkowsko-trzcianecki',u'czarnkowsko-trzcianecki'),
+    ('gnieznienski',u'gnieźnieński'),
+    ('gostynski',u'gostyński'),
+    ('grodziski',u'grodziski'),
+    ('jarocinski',u'jarociński'),
+    ('kaliski',u'kaliski'),
+    ('kepinski',u'kępiński'),
+    ('kolski',u'kolski'),
+    ('koninski',u'koniński'),
+    ('koscianski',u'kościański'),
+    ('krotoszynski',u'krotoszyński'),
+    ('leszczynski',u'leszczyński'),
+    ('miedzychodzki',u'międzychodzki'),
+    ('nowotomyski',u'nowotomyski'),
+    ('obornicki',u'obornicki'),
+    ('ostrowski',u'ostrowski'),
+    ('ostrzeszowski',u'ostrzeszowski'),
+    ('pilski',u'pilski'),
+    ('pleszewski',u'pleszewski'),
+    ('poznanski',u'poznański'),
+    ('rawicki',u'rawicki'),
+    ('slupecki',u'słupecki'),
+    ('szamotulski',u'szamotulski'),
+    ('sredzki',u'średzki'),
+    ('sremski',u'śremski'),
+    ('turecki',u'turecki'),
+    ('wagrowiecki',u'wągrowiecki'),
+    ('wolsztynski',u'wolsztyński'),
+    ('wrzesinski',u'wrzesiński'),
+    ('zlotowski',u'złotowski'),
+    ('bialogardzki',u'białogardzki'),
+    ('choszczenski',u'choszczeński'),
+    ('drawski',u'drawski'),
+    ('goleniowski',u'goleniowski'),
+    ('gryficki',u'gryficki'),
+    ('gryfinski',u'gryfiński'),
+    ('kamienski',u'kamieński'),
+    ('kolobrzeski',u'kołobrzeski'),
+    ('koszalinski',u'koszaliński'),
+    ('lobeski',u'łobeski'),
+    ('mysliborski',u'myśliborski'),
+    ('policki',u'policki'),
+    ('pyrzycki',u'pyrzycki'),
+    ('slawienski',u'sławieński'),
+    ('stargardzki',u'stargardzki'),
+    ('szczecinecki',u'szczecinecki'),
+    ('swidwinski',u'świdwiński'),
+    ('walecki',u'wałecki'),
+)    
+
Index: django/contrib/localflavor/pl/forms.py
===================================================================
--- django/contrib/localflavor/pl/forms.py	(wersja 0)
+++ django/contrib/localflavor/pl/forms.py	(wersja 0)
@@ -0,0 +1,83 @@
+"""
+Polish-specific form helpers
+"""
+
+from django.newforms import ValidationError
+from django.newforms.fields import Select, RegexField
+from django.utils.translation import ugettext
+
+class PLVoivodeshipSelect(Select):
+    """
+    A select widget with list of Polish voivodeships (administrative provinces) as choices.
+    """
+    def __init__(self, attrs=None):
+        from pl_voivodeships import VOIVODESHIP_CHOICES
+        super(PLVoivodeshipSelect, self).__init__(attrs, choices=VOIVODESHIP_CHOICES)
+
+class PLAdministrativeUnitSelect(Select):
+    """
+    A select widget with list of Polish administrative units as choices.
+    """
+    def __init__(self, attrs=None):
+        from pl_administrativeunits import ADMINISTRATIVEUNIT_CHOICES
+        super(PLAdministrativeUnitSelect, self).__init__(attrs, choices=ADMINISTRATIVEUNIT_CHOICES)
+
+class PLNationalIdentificationNumberField(RegexField):
+    """
+    A form field that validates as Polish Identification Number (PESEL)
+
+    Checks the following rules:
+        * the length consist of 11 digits
+        * has a valid checksum
+
+    The algorithm is documented at http://en.wikipedia.org/wiki/PESEL
+    """
+
+    def has_valid_checksum(self, number):
+        """ 
+        Calculates a checksum with the provided algorithm 
+        """
+        multiple_table = (1,3,7,9,1,3,7,9,1,3,1)
+        result = 0
+        for i in range(len(number)):
+            result += int(number[i])*multiple_table[i]
+        
+        if result % 10 == 0:
+            return True
+        else:
+            return False
+        
+    def __init__(self, *args, **kwargs):
+        super(PLNationalIdentificationNumberField, self).__init__(r'^\d{11}$',
+            max_length=None, min_length=None, error_message=ugettext(u'National Identification Number consist of 11 digits.'),
+            *args, **kwargs)
+
+    def clean(self,value):
+        super(PLNationalIdentificationNumberField, self).clean(value)
+        if not self.has_valid_checksum(value):
+            raise ValidationError(ugettext(u'Wrong checksum of the National Identification Number'))
+        return u'%s' % (value)
+
+
+class PLTaxNumberField(RegexField):
+    """
+    A form field that validates as Polish Tax Number (NIP)
+    Valid forms are: XXX-XXX-YY-YY or XX-XX-YYY-YYY
+    """
+    def __init__(self, *args, **kwargs):
+        super(PLTaxNumberField, self).__init__(r'^\d{3}-\d{3}-\d{2}-\d{2}$|^\d{2}-\d{2}-\d{3}-\d{3}$',
+            max_length=None, min_length=None,
+            error_message=ugettext(u'Enter a tax number field (NIP) in the format XXX-XXX-XX-XX or XX-XX-XXX-XXX.'),  *args, **kwargs)
+
+
+class PLPostalCodeField(RegexField):
+    """
+    A form field that validates as Polish postal code.
+    Valid code is XX-XXX where X is digit
+    """
+    def __init__(self, *args, **kwargs):
+        super(PLPostalCodeField, self).__init__(r'^\d{2}-\d{3}$',
+            max_length=None, min_length=None,
+            error_message=ugettext(u'Enter a postal code in the format XX-XXX.'),
+            *args, **kwargs)
+
Index: tests/regressiontests/forms/localflavor.py
===================================================================
--- tests/regressiontests/forms/localflavor.py	(wersja 5897)
+++ tests/regressiontests/forms/localflavor.py	(kopia robocza)
@@ -1390,5 +1390,60 @@
 >>> w.render('Districts', 'RK')
 u'<select name="Districts">\n<option value="BB">Banska Bystrica</option>\n<option value="BS">Banska Stiavnica</option>\n<option value="BJ">Bardejov</option>\n<option value="BN">Banovce nad Bebravou</option>\n<option value="BR">Brezno</option>\n<option value="BA1">Bratislava I</option>\n<option value="BA2">Bratislava II</option>\n<option value="BA3">Bratislava III</option>\n<option value="BA4">Bratislava IV</option>\n<option value="BA5">Bratislava V</option>\n<option value="BY">Bytca</option>\n<option value="CA">Cadca</option>\n<option value="DT">Detva</option>\n<option value="DK">Dolny Kubin</option>\n<option value="DS">Dunajska Streda</option>\n<option value="GA">Galanta</option>\n<option value="GL">Gelnica</option>\n<option value="HC">Hlohovec</option>\n<option value="HE">Humenne</option>\n<option value="IL">Ilava</option>\n<option value="KK">Kezmarok</option>\n<option value="KN">Komarno</option>\n<option value="KE1">Kosice I</option>\n<option value="KE2">Kosice II</option>\n<option value="KE3">Kosice III</option>\n<option value="KE4">Kosice IV</option>\n<option value="KEO">Kosice - okolie</option>\n<option value="KA">Krupina</option>\n<option value="KM">Kysucke Nove Mesto</option>\n<option value="LV">Levice</option>\n<option value="LE">Levoca</option>\n<option value="LM">Liptovsky Mikulas</option>\n<option value="LC">Lucenec</option>\n<option value="MA">Malacky</option>\n<option value="MT">Martin</option>\n<option value="ML">Medzilaborce</option>\n<option value="MI">Michalovce</option>\n<option value="MY">Myjava</option>\n<option value="NO">Namestovo</option>\n<option value="NR">Nitra</option>\n<option value="NM">Nove Mesto nad Vahom</option>\n<option value="NZ">Nove Zamky</option>\n<option value="PE">Partizanske</option>\n<option value="PK">Pezinok</option>\n<option value="PN">Piestany</option>\n<option value="PT">Poltar</option>\n<option value="PP">Poprad</option>\n<option value="PB">Povazska Bystrica</option>\n<option value="PO">Presov</option>\n<option value="PD">Prievidza</option>\n<option value="PU">Puchov</option>\n<option value="RA">Revuca</option>\n<option value="RS">Rimavska Sobota</option>\n<option value="RV">Roznava</option>\n<option value="RK" selected="selected">Ruzomberok</option>\n<option value="SB">Sabinov</option>\n<option value="SC">Senec</option>\n<option value="SE">Senica</option>\n<option value="SI">Skalica</option>\n<option value="SV">Snina</option>\n<option value="SO">Sobrance</option>\n<option value="SN">Spisska Nova Ves</option>\n<option value="SL">Stara Lubovna</option>\n<option value="SP">Stropkov</option>\n<option value="SK">Svidnik</option>\n<option value="SA">Sala</option>\n<option value="TO">Topolcany</option>\n<option value="TV">Trebisov</option>\n<option value="TN">Trencin</option>\n<option value="TT">Trnava</option>\n<option value="TR">Turcianske Teplice</option>\n<option value="TS">Tvrdosin</option>\n<option value="VK">Velky Krtis</option>\n<option value="VT">Vranov nad Toplou</option>\n<option value="ZM">Zlate Moravce</option>\n<option value="ZV">Zvolen</option>\n<option value="ZC">Zarnovica</option>\n<option value="ZH">Ziar nad Hronom</option>\n<option value="ZA">Zilina</option>\n</select>'
 
+# PLVoivodeshipSelect ##########################################################
+
+>>> from django.contrib.localflavor.pl.forms import PLVoivodeshipSelect
+>>> f = PLVoivodeshipSelect()
+>>> f.render('voivodeships','pomerania')
+u'<select name="voivodeships">\n<option value="lower_silesia">Lower Silesia</option>\n<option value="kuyavia-pomerania">Kuyavia-Pomerania</option>\n<option value="lublin">Lublin</option>\n<option value="lubusz">Lubusz</option>\n<option value="lodz">Lodz</option>\n<option value="lesser_poland">Lesser Poland</option>\n<option value="masovia">Masovia</option>\n<option value="opole">Opole</option>\n<option value="subcarpatia">Subcarpatia</option>\n<option value="podlasie">Podlasie</option>\n<option value="pomerania" selected="selected">Pomerania</option>\n<option value="silesia">Silesia</option>\n<option value="swietokrzyskie">Swietokrzyskie</option>\n<option value="warmia-masuria">Warmia-Masuria</option>\n<option value="greater_poland">Greater Poland</option>\n<option value="west_pomerania">West Pomerania</option>\n</select>'
+
+# PLAdministrativeUnitSelect ##########################################################
+
+>>> from django.contrib.localflavor.pl.forms import PLAdministrativeUnitSelect
+>>> f = PLAdministrativeUnitSelect()
+>>> f.render('administrativeunit','katowice')
+u'<select name="administrativeunit">\n<option value="wroclaw">Wroc\u0142aw</option>\n<option value="jeleniagora">Jelenia G\xf3ra</option>\n<option value="legnica">Legnica</option>\n<option value="boleslawiecki">boles\u0142awiecki</option>\n<option value="dzierzoniowski">dzier\u017coniowski</option>\n<option value="glogowski">g\u0142ogowski</option>\n<option value="gorowski">g\xf3rowski</option>\n<option value="jaworski">jaworski</option>\n<option value="jeleniogorski">jeleniog\xf3rski</option>\n<option value="kamiennogorski">kamiennog\xf3rski</option>\n<option value="klodzki">k\u0142odzki</option>\n<option value="legnicki">legnicki</option>\n<option value="lubanski">luba\u0144ski</option>\n<option value="lubinski">lubi\u0144ski</option>\n<option value="lwowecki">lw\xf3wecki</option>\n<option value="milicki">milicki</option>\n<option value="olesnicki">ole\u015bnicki</option>\n<option value="olawski">o\u0142awski</option>\n<option value="polkowicki">polkowicki</option>\n<option value="strzelinski">strzeli\u0144ski</option>\n<option value="sredzki">\u015bredzki</option>\n<option value="swidnicki">\u015bwidnicki</option>\n<option value="trzebnicki">trzebnicki</option>\n<option value="walbrzyski">wa\u0142brzyski</option>\n<option value="wolowski">wo\u0142owski</option>\n<option value="wroclawski">wroc\u0142awski</option>\n<option value="zabkowicki">z\u0105bkowicki</option>\n<option value="zgorzelecki">zgorzelecki</option>\n<option value="zlotoryjski">z\u0142otoryjski</option>\n<option value="bydgoszcz">Bydgoszcz</option>\n<option value="torun">Toru\u0144</option>\n<option value="wloclawek">W\u0142oc\u0142awek</option>\n<option value="grudziadz">Grudzi\u0105dz</option>\n<option value="aleksandrowski">aleksandrowski</option>\n<option value="brodnicki">brodnicki</option>\n<option value="bydgoski">bydgoski</option>\n<option value="chelminski">che\u0142mi\u0144ski</option>\n<option value="golubsko-dobrzynski">golubsko-dobrzy\u0144ski</option>\n<option value="grudziadzki">grudzi\u0105dzki</option>\n<option value="inowroclawski">inowroc\u0142awski</option>\n<option value="lipnowski">lipnowski</option>\n<option value="mogilenski">mogile\u0144ski</option>\n<option value="nakielski">nakielski</option>\n<option value="radziejowski">radziejowski</option>\n<option value="rypinski">rypi\u0144ski</option>\n<option value="sepolenski">s\u0119pole\u0144ski</option>\n<option value="swiecki">\u015bwiecki</option>\n<option value="torunski">toru\u0144ski</option>\n<option value="tucholski">tucholski</option>\n<option value="wabrzeski">w\u0105brzeski</option>\n<option value="wloclawski">wroc\u0142awski</option>\n<option value="zninski">\u017ani\u0144ski</option>\n<option value="lublin">Lublin</option>\n<option value="biala-podlaska">Bia\u0142a Podlaska</option>\n<option value="chelm">Che\u0142m</option>\n<option value="zamosc">Zamo\u015b\u0107</option>\n<option value="bialski">bialski</option>\n<option value="bilgorajski">bi\u0142gorajski</option>\n<option value="chelmski">che\u0142mski</option>\n<option value="hrubieszowski">hrubieszowski</option>\n<option value="janowski">janowski</option>\n<option value="krasnostawski">krasnostawski</option>\n<option value="krasnicki">kra\u015bnicki</option>\n<option value="lubartowski">lubartowski</option>\n<option value="lubelski">lubelski</option>\n<option value="leczynski">\u0142\u0119czy\u0144ski</option>\n<option value="lukowski">\u0142ukowski</option>\n<option value="opolski">opolski</option>\n<option value="parczewski">parczewski</option>\n<option value="pulawski">pu\u0142awski</option>\n<option value="radzynski">radzy\u0144ski</option>\n<option value="rycki">rycki</option>\n<option value="swidnicki">\u015bwidnicki</option>\n<option value="tomaszowski">tomaszowski</option>\n<option value="wlodawski">w\u0142odawski</option>\n<option value="zamojski">zamojski</option>\n<option value="gorzow-wielkopolski">Gorz\xf3w Wielkopolski</option>\n<option value="zielona-gora">Zielona G\xf3ra</option>\n<option value="gorzowski">gorzowski</option>\n<option value="krosnienski">kro\u015bnie\u0144ski</option>\n<option value="miedzyrzecki">mi\u0119dzyrzecki</option>\n<option value="nowosolski">nowosolski</option>\n<option value="slubicki">s\u0142ubicki</option>\n<option value="strzelecko-drezdenecki">strzelecko-drezdenecki</option>\n<option value="sulecinski">sule\u0144ci\u0144ski</option>\n<option value="swiebodzinski">\u015bwiebodzi\u0144ski</option>\n<option value="wschowski">wschowski</option>\n<option value="zielonogorski">zielonog\xf3rski</option>\n<option value="zaganski">\u017caga\u0144ski</option>\n<option value="zarski">\u017carski</option>\n<option value="lodz">\u0141\xf3d\u017a</option>\n<option value="piotrkow-trybunalski">Piotrk\xf3w Trybunalski</option>\n<option value="skierniewice">Skierniewice</option>\n<option value="belchatowski">be\u0142chatowski</option>\n<option value="brzezinski">brzezi\u0144ski</option>\n<option value="kutnowski">kutnowski</option>\n<option value="laski">\u0142aski</option>\n<option value="leczycki">\u0142\u0119czycki</option>\n<option value="lowicki">\u0142owicki</option>\n<option value="lodzki wschodni">\u0142\xf3dzki wschodni</option>\n<option value="opoczynski">opoczy\u0144ski</option>\n<option value="pabianicki">pabianicki</option>\n<option value="pajeczanski">paj\u0119cza\u0144ski</option>\n<option value="piotrkowski">piotrkowski</option>\n<option value="poddebicki">podd\u0119bicki</option>\n<option value="radomszczanski">radomszcza\u0144ski</option>\n<option value="rawski">rawski</option>\n<option value="sieradzki">sieradzki</option>\n<option value="skierniewicki">skierniewicki</option>\n<option value="tomaszowski">tomaszowski</option>\n<option value="wielunski">wielu\u0144ski</option>\n<option value="wieruszowski">wieruszowski</option>\n<option value="zdunskowolski">zdu\u0144skowolski</option>\n<option value="zgierski">zgierski</option>\n<option value="krakow">Krak\xf3w</option>\n<option value="tarnow">Tarn\xf3w</option>\n<option value="nowy-sacz">Nowy S\u0105cz</option>\n<option value="bochenski">boche\u0144ski</option>\n<option value="brzeski">brzeski</option>\n<option value="chrzanowski">chrzanowski</option>\n<option value="dabrowski">d\u0105browski</option>\n<option value="gorlicki">gorlicki</option>\n<option value="krakowski">krakowski</option>\n<option value="limanowski">limanowski</option>\n<option value="miechowski">miechowski</option>\n<option value="myslenicki">my\u015blenicki</option>\n<option value="nowosadecki">nowos\u0105decki</option>\n<option value="nowotarski">nowotarski</option>\n<option value="olkuski">olkuski</option>\n<option value="oswiecimski">o\u015bwi\u0119cimski</option>\n<option value="proszowicki">proszowicki</option>\n<option value="suski">suski</option>\n<option value="tarnowski">tarnowski</option>\n<option value="tatrzanski">tatrza\u0144ski</option>\n<option value="wadowicki">wadowicki</option>\n<option value="wielicki">wielicki</option>\n<option value="warszawa">Warszawa</option>\n<option value="ostroleka">Ostro\u0142\u0119ka</option>\n<option value="plock">P\u0142ock</option>\n<option value="radom">Radom</option>\n<option value="siedlce">Siedlce</option>\n<option value="bialobrzeski">bia\u0142obrzeski</option>\n<option value="ciechanowski">ciechanowski</option>\n<option value="garwolinski">garwoli\u0144ski</option>\n<option value="gostyninski">gostyni\u0144ski</option>\n<option value="grodziski">grodziski</option>\n<option value="grojecki">gr\xf3jecki</option>\n<option value="kozienicki">kozenicki</option>\n<option value="legionowski">legionowski</option>\n<option value="lipski">lipski</option>\n<option value="losicki">\u0142osicki</option>\n<option value="makowski">makowski</option>\n<option value="minski">mi\u0144ski</option>\n<option value="mlawski">m\u0142awski</option>\n<option value="nowodworski">nowodworski</option>\n<option value="ostrolecki">ostro\u0142\u0119cki</option>\n<option value="ostrowski">ostrowski</option>\n<option value="otwocki">otwocki</option>\n<option value="piaseczynski">piaseczy\u0144ski</option>\n<option value="plocki">p\u0142ocki</option>\n<option value="plonski">p\u0142o\u0144ski</option>\n<option value="pruszkowski">pruszkowski</option>\n<option value="przasnyski">przasnyski</option>\n<option value="przysuski">przysuski</option>\n<option value="pultuski">pu\u0142tuski</option>\n<option value="radomski">radomski</option>\n<option value="siedlecki">siedlecki</option>\n<option value="sierpecki">sierpecki</option>\n<option value="sochaczewski">sochaczewski</option>\n<option value="sokolowski">soko\u0142owski</option>\n<option value="szydlowiecki">szyd\u0142owiecki</option>\n<option value="warszawski-zachodni">warszawski zachodni</option>\n<option value="wegrowski">w\u0119growski</option>\n<option value="wolominski">wo\u0142omi\u0144ski</option>\n<option value="wyszkowski">wyszkowski</option>\n<option value="zwolenski">zwole\u0144ski</option>\n<option value="zurominski">\u017curomi\u0144ski</option>\n<option value="zyrardowski">\u017cyrardowski</option>\n<option value="opole">Opole</option>\n<option value="brzeski">brzeski</option>\n<option value="glubczycki">g\u0142ubczyski</option>\n<option value="kedzierzynsko-kozielski">k\u0119dzierzy\u0144ski-kozielski</option>\n<option value="kluczborski">kluczborski</option>\n<option value="krapkowicki">krapkowicki</option>\n<option value="namyslowski">namys\u0142owski</option>\n<option value="nyski">nyski</option>\n<option value="oleski">oleski</option>\n<option value="opolski">opolski</option>\n<option value="prudnicki">prudnicki</option>\n<option value="strzelecki">strzelecki</option>\n<option value="rzeszow">Rzesz\xf3w</option>\n<option value="krosno">Krosno</option>\n<option value="przemysl">Przemy\u015bl</option>\n<option value="tarnobrzeg">Tarnobrzeg</option>\n<option value="bieszczadzki">bieszczadzki</option>\n<option value="brzozowski">brzozowski</option>\n<option value="debicki">d\u0119bicki</option>\n<option value="jaroslawski">jaros\u0142awski</option>\n<option value="jasielski">jasielski</option>\n<option value="kolbuszowski">kolbuszowski</option>\n<option value="krosnienski">kro\u015bnie\u0144ski</option>\n<option value="leski">leski</option>\n<option value="lezajski">le\u017cajski</option>\n<option value="lubaczowski">lubaczowski</option>\n<option value="lancucki">\u0142a\u0144cucki</option>\n<option value="mielecki">mielecki</option>\n<option value="nizanski">ni\u017ca\u0144ski</option>\n<option value="przemyski">przemyski</option>\n<option value="przeworski">przeworski</option>\n<option value="ropczycko-sedziszowski">ropczycko-s\u0119dziszowski</option>\n<option value="rzeszowski">rzeszowski</option>\n<option value="sanocki">sanocki</option>\n<option value="stalowowolski">stalowowolski</option>\n<option value="strzyzowski">strzy\u017cowski</option>\n<option value="tarnobrzeski">tarnobrzeski</option>\n<option value="bialystok">Bia\u0142ystok</option>\n<option value="lomza">\u0141om\u017ca</option>\n<option value="suwalki">Suwa\u0142ki</option>\n<option value="augustowski">augustowski</option>\n<option value="bialostocki">bia\u0142ostocki</option>\n<option value="bielski">bielski</option>\n<option value="grajewski">grajewski</option>\n<option value="hajnowski">hajnowski</option>\n<option value="kolnenski">kolne\u0144ski</option>\n<option value="\u0142omzynski">\u0142om\u017cy\u0144ski</option>\n<option value="moniecki">moniecki</option>\n<option value="sejnenski">sejne\u0144ski</option>\n<option value="siemiatycki">siematycki</option>\n<option value="sokolski">sok\xf3lski</option>\n<option value="suwalski">suwalski</option>\n<option value="wysokomazowiecki">wysokomazowiecki</option>\n<option value="zambrowski">zambrowski</option>\n<option value="gdansk">Gda\u0144sk</option>\n<option value="gdynia">Gdynia</option>\n<option value="slupsk">S\u0142upsk</option>\n<option value="sopot">Sopot</option>\n<option value="bytowski">bytowski</option>\n<option value="chojnicki">chojnicki</option>\n<option value="czluchowski">cz\u0142uchowski</option>\n<option value="kartuski">kartuski</option>\n<option value="koscierski">ko\u015bcierski</option>\n<option value="kwidzynski">kwidzy\u0144ski</option>\n<option value="leborski">l\u0119borski</option>\n<option value="malborski">malborski</option>\n<option value="nowodworski">nowodworski</option>\n<option value="gdanski">gda\u0144ski</option>\n<option value="pucki">pucki</option>\n<option value="slupski">s\u0142upski</option>\n<option value="starogardzki">starogardzki</option>\n<option value="sztumski">sztumski</option>\n<option value="tczewski">tczewski</option>\n<option value="wejherowski">wejcherowski</option>\n<option value="katowice" selected="selected">Katowice</option>\n<option value="bielsko-biala">Bielsko-Bia\u0142a</option>\n<option value="bytom">Bytom</option>\n<option value="chorzow">Chorz\xf3w</option>\n<option value="czestochowa">Cz\u0119stochowa</option>\n<option value="dabrowa-gornicza">D\u0105browa G\xf3rnicza</option>\n<option value="gliwice">Gliwice</option>\n<option value="jastrzebie-zdroj">Jastrz\u0119bie Zdr\xf3j</option>\n<option value="jaworzno">Jaworzno</option>\n<option value="myslowice">Mys\u0142owice</option>\n<option value="piekary-slaskie">Piekary \u015al\u0105skie</option>\n<option value="ruda-slaska">Ruda \u015al\u0105ska</option>\n<option value="rybnik">Rybnik</option>\n<option value="siemianowice-slaskie">Siemianowice \u015al\u0105skie</option>\n<option value="sosnowiec">Sosnowiec</option>\n<option value="swietochlowice">\u015awi\u0119toch\u0142owice</option>\n<option value="tychy">Tychy</option>\n<option value="zabrze">Zabrze</option>\n<option value="zory">\u017bory</option>\n<option value="bedzinski">b\u0119dzi\u0144ski</option>\n<option value="bielski">bielski</option>\n<option value="bierunsko-ledzinski">bieru\u0144sko-l\u0119dzi\u0144ski</option>\n<option value="cieszynski">cieszy\u0144ski</option>\n<option value="czestochowski">cz\u0119stochowski</option>\n<option value="gliwicki">gliwicki</option>\n<option value="klobucki">k\u0142obucki</option>\n<option value="lubliniecki">lubliniecki</option>\n<option value="mikolowski">miko\u0142owski</option>\n<option value="myszkowski">myszkowski</option>\n<option value="pszczynski">pszczy\u0144ski</option>\n<option value="raciborski">raciborski</option>\n<option value="rybnicki">rybnicki</option>\n<option value="tarnogorski">tarnog\xf3rski</option>\n<option value="wodzislawski">wodzis\u0142awski</option>\n<option value="zawiercianski">zawiercia\u0144ski</option>\n<option value="zywiecki">\u017cywiecki</option>\n<option value="kielce">Kielce</option>\n<option value="buski">buski</option>\n<option value="jedrzejowski">j\u0119drzejowski</option>\n<option value="kazimierski">kazimierski</option>\n<option value="kielecki">kielecki</option>\n<option value="konecki">konecki</option>\n<option value="opatowski">opatowski</option>\n<option value="ostrowiecki">ostrowiecki</option>\n<option value="pinczowski">pi\u0144czowski</option>\n<option value="sandomierski">sandomierski</option>\n<option value="skarzyski">skar\u017cyski</option>\n<option value="starachowicki">starachowicki</option>\n<option value="staszowski">staszowski</option>\n<option value="wloszczowski">w\u0142oszczowski</option>\n<option value="olsztyn">Olsztyn</option>\n<option value="elblag">Elbl\u0105g</option>\n<option value="bartoszycki">bartoszycki</option>\n<option value="braniewski">braniewski</option>\n<option value="dzialdowski">dzia\u0142dowski</option>\n<option value="elblaski">elbl\u0105ski</option>\n<option value="elcki">e\u0142cki</option>\n<option value="gizycki">gi\u017cycki</option>\n<option value="goldapski">go\u0142dapski</option>\n<option value="ilawski">i\u0142awski</option>\n<option value="ketrzynski">k\u0119trzy\u0144ski</option>\n<option value="lidzbarski">lidzbarski</option>\n<option value="mragowski">mr\u0105gowski</option>\n<option value="nidzicki">nidzicki</option>\n<option value="nowomiejski">nowomiejski</option>\n<option value="olecki">olecki</option>\n<option value="olsztynski">olszty\u0144ski</option>\n<option value="ostrodzki">ostr\xf3dzki</option>\n<option value="piski">piski</option>\n<option value="szczycienski">szczycie\u0144ski</option>\n<option value="wegorzewski">w\u0119gorzewski</option>\n<option value="poznan">Pozna\u0144</option>\n<option value="kalisz">Kalisz</option>\n<option value="konin">Konin</option>\n<option value="leszno">Leszno</option>\n<option value="chodzieski">chodziejski</option>\n<option value="czarnkowsko-trzcianecki">czarnkowsko-trzcianecki</option>\n<option value="gnieznienski">gnie\u017anie\u0144ski</option>\n<option value="gostynski">gosty\u0144ski</option>\n<option value="grodziski">grodziski</option>\n<option value="jarocinski">jaroci\u0144ski</option>\n<option value="kaliski">kaliski</option>\n<option value="kepinski">k\u0119pi\u0144ski</option>\n<option value="kolski">kolski</option>\n<option value="koninski">koni\u0144ski</option>\n<option value="koscianski">ko\u015bcia\u0144ski</option>\n<option value="krotoszynski">krotoszy\u0144ski</option>\n<option value="leszczynski">leszczy\u0144ski</option>\n<option value="miedzychodzki">mi\u0119dzychodzki</option>\n<option value="nowotomyski">nowotomyski</option>\n<option value="obornicki">obornicki</option>\n<option value="ostrowski">ostrowski</option>\n<option value="ostrzeszowski">ostrzeszowski</option>\n<option value="pilski">pilski</option>\n<option value="pleszewski">pleszewski</option>\n<option value="poznanski">pozna\u0144ski</option>\n<option value="rawicki">rawicki</option>\n<option value="slupecki">s\u0142upecki</option>\n<option value="szamotulski">szamotulski</option>\n<option value="sredzki">\u015bredzki</option>\n<option value="sremski">\u015bremski</option>\n<option value="turecki">turecki</option>\n<option value="wagrowiecki">w\u0105growiecki</option>\n<option value="wolsztynski">wolszty\u0144ski</option>\n<option value="wrzesinski">wrzesi\u0144ski</option>\n<option value="zlotowski">z\u0142otowski</option>\n<option value="bialogardzki">bia\u0142ogardzki</option>\n<option value="choszczenski">choszcze\u0144ski</option>\n<option value="drawski">drawski</option>\n<option value="goleniowski">goleniowski</option>\n<option value="gryficki">gryficki</option>\n<option value="gryfinski">gryfi\u0144ski</option>\n<option value="kamienski">kamie\u0144ski</option>\n<option value="kolobrzeski">ko\u0142obrzeski</option>\n<option value="koszalinski">koszali\u0144ski</option>\n<option value="lobeski">\u0142obeski</option>\n<option value="mysliborski">my\u015bliborski</option>\n<option value="policki">policki</option>\n<option value="pyrzycki">pyrzycki</option>\n<option value="slawienski">s\u0142awie\u0144ski</option>\n<option value="stargardzki">stargardzki</option>\n<option value="szczecinecki">szczecinecki</option>\n<option value="swidwinski">\u015bwidwi\u0144ski</option>\n<option value="walecki">wa\u0142ecki</option>\n</select>'
+
+# PLPostalCodeField ##############################################################
+
+>>> from django.contrib.localflavor.pl.forms import PLPostalCodeField
+>>> f = PLPostalCodeField()
+>>> f.clean('43--434')
+Traceback (most recent call last):
+...
+ValidationError: [u'Enter a postal code in the format XX-XXX.']
+>>> f.clean('41-403')
+u'41-403'
+
+# PLTaxNumberField ###############################################################
+
+>>> from django.contrib.localflavor.pl.forms import PLTaxNumberField
+>>> f = PLTaxNumberField()
+>>> f.clean('43-343-234-323')
+Traceback (most recent call last):
+...
+ValidationError: [u'Enter a tax number field (NIP) in the format XXX-XXX-XX-XX or XX-XX-XXX-XXX.']
+>>> f.clean('43-34-234-323')
+u'43-34-234-323'
+>>> f.clean('433-344-24-23')
+u'433-344-24-23'
+
+# PLNationalIdentificationNumberField ############################################
+
+>>> from django.contrib.localflavor.pl.forms import PLNationalIdentificationNumberField
+>>> f =  PLNationalIdentificationNumberField()
+>>> f.clean('80071610614')
+u'80071610614'
+>>> f.clean('80071610610')
+Traceback (most recent call last):
+...
+ValidationError: [u'Wrong checksum of the National Identification Number']
+>>> f.clean('80')
+Traceback (most recent call last):
+...
+ValidationError: [u'National Identification Number consist of 11 digits.']
+>>> f.clean('800716106AA')
+Traceback (most recent call last):
+...
+ValidationError: [u'National Identification Number consist of 11 digits.']
 """
-
