states = {'ca': ['Province / Territory', ['Alberta', 'British Columbia', 'Manitoba', 'New Brunswick', 'Newfoundland and Labrador', 'Nova Scotia', 'Ontario', 'Prince Edward Island', 'Quebec', 'Saskatchewan', 'Northwest Territories', 'Nunavut', 'Yukon'], 'ZIP'], 'au': ['State / Territory', ['ACT', 'NSW', 'NT', 'QLD', 'SA', 'TAS', 'VIC', 'WA'], 'Postal Code'], 'za': ['Province', ['The Eastern Cape', 'The Free State', 'Gauteng', 'KwaZulu-Natal', 'Limpopo', 'Mpumalanga', 'The Northern Cape', 'North West', 'The Western Cape'], 'Postal Code'], 'us': ['State', ['Alabama', 'Alaska', 'American Samoa', 'Arizona', 'Arkansas', 'California', 'Colorado', 'Connecticut', 'Delaware', 'District of Columbia', 'Florida', 'Georgia', 'Guam', 'Hawaii', 'Idaho', 'Illinois', 'Indiana', 'Iowa', 'Kansas', 'Kentucky', 'Louisiana', 'Maine', 'Maryland', 'Massachusetts', 'Michigan', 'Minnesota', 'Mississippi', 'Missouri', 'Montana', 'Nebraska', 'Nevada', 'New Hampshire', 'New Jersey', 'New Mexico', 'New York', 'North Carolina', 'North Dakota', 'Northern Marianas Islands', 'Ohio', 'Oklahoma', 'Oregon', 'Pennsylvania', 'Puerto Rico', 'Rhode Island', 'South Carolina', 'South Dakota', 'Tennessee', 'Texas', 'Utah', 'Vermont', 'Virginia', 'Virgin Islands', 'Washington', 'West Virginia', 'Wisconsin', 'Wyoming'], 'ZIP'], 'gb': ['County', ['Aberdeen City', 'Aberdeenshire', 'Angus', 'Antrim', 'Ards', 'Argyll and Bute', 'Armagh', 'Ballymena', 'Ballymoney', 'Banbridge', 'Barking and Dagenham', 'Barnet', 'Barnsley', 'Bath and North East Somerset', 'Bedfordshire', 'Belfast', 'Bexley', 'Birmingham', 'Blackburn with Darwen', 'Blackpool', 'Blaenau Gwent', 'Bolton', 'Bournemouth', 'Bracknell Forest', 'Bradford', 'Brent', 'Bridgend', 'Brighton and Hove', 'Bristol, City of', 'Bromley', 'Buckinghamshire', 'Bury', 'Caerphilly', 'Calderdale', 'Cambridgeshire', 'Camden', 'Cardiff', 'Carmarthenshire', 'Carrickfergus', 'Castlereagh', 'Ceredigion', 'Cheshire', 'Clackmannanshire', 'Coleraine', 'Conwy', 'Cookstown', 'Cornwall', 'Coventry', 'Craigavon', 'Croydon', 'Cumbria', 'Darlington', 'Denbighshire', 'Derby', 'Derbyshire', 'Derry', 'Devon', 'Doncaster', 'Dorset', 'Down', 'Dudley', 'Dumfries and Galloway', 'Dundee City', 'Dungannon', 'Durham', 'Ealing', 'East Ayrshire', 'East Dunbartonshire', 'East Lothian', 'East Renfrewshire', 'East Riding of Yorkshire', 'East Sussex', 'Edinburgh, City of', 'Eilean Siar', 'Enfield', 'Essex', 'Falkirk', 'Fermanagh', 'Fife', 'Flintshire', 'Gateshead', 'Glasgow City', 'Gloucestershire', 'Greenwich', 'Gwynedd', 'Hackney', 'Halton', 'Hammersmith and Fulham', 'Hampshire', 'Haringey', 'Harrow', 'Hartlepool', 'Havering', 'Herefordshire, County of', 'Hertfordshire', 'Highland', 'Hillingdon', 'Hounslow', 'Inverclyde', 'Isle of Anglesey', 'Isle of Wight', 'Isles of Scilly', 'Islington', 'Kensington and Chelsea', 'Kent', 'Kingston upon Hull, City of', 'Kingston upon Thames', 'Kirklees', 'Knowsley', 'Lambeth', 'Lancashire', 'Larne', 'Leeds', 'Leicester', 'Leicestershire', 'Lewisham', 'Limavady', 'Lincolnshire', 'Lisburn', 'Liverpool', 'London, City of', 'Luton', 'Magherafelt', 'Manchester', 'Medway', 'Merthyr Tydfil', 'Merton', 'Middlesbrough', 'Midlothian', 'Milton Keynes', 'Monmouthshire', 'Moray', 'Moyle', 'Neath Port Talbot', 'Newcastle upon Tyne', 'Newham', 'Newport', 'Newry and Mourne', 'Newtownabbey', 'Norfolk', 'North Ayrshire', 'North Down', 'North East Lincolnshire', 'North Lanarkshire', 'North Lincolnshire', 'North Somerset', 'North Tyneside', 'North Yorkshire', 'Northamptonshire', 'Northumberland', 'Nottingham', 'Nottinghamshire', 'Oldham', 'Omagh', 'Orkney Islands', 'Oxfordshire', 'Pembrokeshire', 'Perth and Kinross', 'Peterborough', 'Plymouth', 'Poole', 'Portsmouth', 'Powys', 'Reading', 'Redbridge', 'Redcar and Cleveland', 'RenfrewshireRhondda, Cynon, Taff', 'Richmond upon Thames', 'Rochdale', 'Rotherham', 'Rutland', 'Salford', 'Sandwell', 'Scottish Borders, The', 'Sefton', 'Sheffield', 'Shetland Islands', 'Shropshire', 'Slough', 'Solihull', 'Somerset', 'South Ayrshire', 'South Gloucestershire', 'South Lanarkshire', 'South Tyneside', 'Southampton', 'Southend-on-Sea', 'Southwark', 'St. Helens', 'Staffordshire', 'Stirling', 'Stockport', 'Stockton-on-Tees', 'Stoke-on-Trent', 'Strabane', 'Suffolk', 'Sunderland', 'Surrey', 'Sutton', 'Swansea', 'Swindon', 'Tameside', 'Telford and Wrekin', 'Thurrock', 'Torbay', 'Torfaen', 'Tower Hamlets', 'Trafford', 'Vale of Glamorgan, The', 'Wakefield', 'Walsall', 'Waltham Forest', 'Wandsworth', 'Warrington', 'Warwickshire', 'West Berkshire', 'West Dunbartonshire', 'West Lothian', 'West Sussex', 'Westminster', 'Wigan', 'Wiltshire', 'Windsor and Maidenhead', 'Wirral', 'Wokingham', 'Wolverhampton', 'Worcestershire', 'Wrexham', 'York'], 'Postal Code']}; dialling_codes = {'gw': '245', 'gu': '1', 'gt': '502', 'gr': '30', 'gq': '240', 'gp': '590', 'gy': '592', 'gf': '594', 'ge': '995', 'gd': '1', 'gb': '44', 'ga': '241', 'gn': '224', 'gm': '220', 'gl': '299', 'gi': '350', 'gh': '233', 'lb': '961', 'lc': '1', 'la': '856', 'tv': '688', 'tw': '886', 'tt': '1', 'tr': '90', 'lk': '94', 'li': '423', 'lv': '371', 'to': '676', 'lt': '370', 'lu': '352', 'lr': '231', 'ls': '266', 'th': '66', 'tf': '262', 'tg': '228', 'td': '235', 'tc': '1', 'ly': '218', 'do': '1', 'dm': '1767', 'dj': '253', 'dk': '45', 'um': '1', 'de': '49', 'ye': '967', 'dz': '213', 'uy': '598', 'yt': '269', 'vu': '678', 'kn': '1', 'qa': '974', 'tm': '993', 'wf': '681', 'ee': '372', 'eg': '20', 'za': '27', 'ec': '593', 'us': '1', 'et': '251', 'zw': '263', 'es': '34', 'er': '291', 'ru': '7', 'rw': '250', 'rs': '381', 're': '262', 'it': '39', 'ro': '40', 'tk': '690', 'bd': '880', 'be': '32', 'bf': '226', 'bg': '359', 'vg': '1', 'ba': '387', 'bb': '1', 'bm': '1', 'bn': '673', 'bo': '591', 'bh': '973', 'bi': '257', 'bj': '229', 'bt': '975', 'jm': '1', 'bw': '267', 'ws': '685', 'br': '55', 'bs': '1', 'tz': '255', 'by': '375', 'bz': '501', 'om': '968', 'zm': '260', 'ua': '380', 'jo': '962', 'mz': '258', 'ck': '682', 'ci': '225', 'ch': '41', 'co': '57', 'cn': '86', 'cm': '237', 'cl': '56', 'cc': '61', 'ca': '1', 'cg': '242', 'cf': '236', 'cd': '243', 'cz': '420', 'cy': '357', 'cx': '61', 'cr': '506', 'cv': '238', 'cu': '53', 've': '58', 'pr': '1', 'tn': '216', 'pw': '680', 'pt': '351', 'py': '595', 'tl': '670', 'iq': '964', 'pa': '507', 'pf': '689', 'pg': '675', 'pe': '51', 'pk': '92', 'ph': '63', 'pl': '48', 'pm': '508', 'hr': '385', 'ht': '509', 'hu': '36', 'hk': '852', 'hn': '504', 'sa': '966', 'jp': '81', 'me': '382', 'md': '373', 'mg': '261', 'ma': '212', 'mc': '377', 'uz': '998', 'mm': '95', 'ml': '223', 'mo': '853', 'mn': '976', 'mh': '692', 'mk': '389', 'mu': '230', 'mt': '356', 'mw': '265', 'mv': '960', 'mq': '596', 'mp': '1', 'ms': '1', 'mr': '222', 'ug': '256', 'my': '60', 'mx': '52', 'il': '972', 'va': '3', 'vc': '1', 'ae': '971', 'ad': '376', 'ag': '1', 'af': '93', 'ai': '1', 'vi': '1', 'is': '354', 'ir': '98', 'am': '374', 'al': '355', 'ao': '244', 'an': '599', 'as': '1', 'ar': '54', 'au': '61', 'at': '43', 'aw': '297', 'in': '91', 'az': '994', 'ie': '353', 'id': '62', 'ni': '505', 'nl': '31', 'no': '47', 'na': '264', 'nc': '687', 'ne': '227', 'nf': '672', 'ng': '234', 'nz': '64', 'sh': '290', 'vn': '84', 'np': '977', 'so': '252', 'nr': '674', 'nu': '683', 'fr': '33', 'sb': '677', 'fi': '358', 'fj': '679', 'fk': '500', 'fm': '691', 'fo': '298', 'tj': '992', 'sz': '268', 'sy': '963', 'kg': '996', 'ke': '254', 'sr': '597', 'ki': '686', 'kh': '855', 'sv': '503', 'km': '269', 'st': '239', 'sk': '421', 'kr': '82', 'si': '386', 'kp': '850', 'kw': '965', 'sn': '221', 'sm': '378', 'sl': '232', 'sc': '248', 'kz': '7', 'ky': '1', 'sg': '65', 'se': '46', 'sd': '249'};