# -*- coding: utf-8
"""Lookup tables for geographic name variations."""


from __future__ import unicode_literals


ALTERNATIVE_COUNTRY_NAMES = {
    "alankomaat": "the netherlands",
    "alemanha": "germany",
    "alemania": "germany",
    "allemagne": "germany",
    "andorra": "andorra",
    "andorre": "andorra",
    "armenia": "armenia",
    "austria": "austria",
    "áustria": "austria",
    "autriche": "austria",
    "belarus": "belarus",
    "bélgica": "belgium",
    "belgië": "belgium",
    "belgien": "belgium",
    "belgio": "belgium",
    "belgique": "belgium",
    "belgium": "belgium",
    "brasil": "brazil",
    "brasil": "brazil",
    "brasil": "brazil",
    "bulgaria": "bulgaria",
    "canada": "canada",
    "ceská republika": "czech republic",
    "chile": "chile",
    "china": "china",
    "cidade do vaticano": "vatican city",
    "città del vaticano": "vatican city",
    "czech republic": "czech republic",
    "danemark": "denmark",
    "dänemark": "denmark",
    "danimarca": "denmark",
    "danmark": "denmark",
    "denemarken": "denmark",
    "denmark": "denmark",
    "deutschland": "germany",
    "dinamarca": "denmark",
    "duitsland": "germany",
    "eesti": "estonia",
    "espagne": "spain",
    "espainia": "spain",
    "españa": "spain",
    "espanha": "spain",
    "espanja": "spain",
    "espanya": "spain",
    "estland": "estonia",
    "estonia": "estonia",
    "estónia": "estonia",
    "estonie": "estonia",
    "finlande": "finland",
    "finland": "finland",
    "finlandia": "finland",
    "finlândia": "finland",
    "finnland": "finland",
    "frança": "france",
    "france": "france",
    "francia": "france",
    "frankreich": "france",
    "frankrig": "france",
    "frankrijk": "france",
    "frankrike": "france",
    "georgia": "georgia",
    "germania": "germany",
    "germany": "germany",
    "gibraltar": "gibraltar",
    "grèce": "greece",
    "grecia": "greece",
    "grécia": "greece",
    "greece": "greece",
    "grekland": "greece",
    "griechenland": "greece",
    "griekenland": "greece",
    "holanda países baixos": "the netherlands",
    "holanda": "the netherlands",
    "hongarije": "hungary",
    "hongrie": "hungary",
    "hungary": "hungary",
    "hungria": "hungary",
    "hungría": "hungary",
    "iceland": "iceland",
    "ierland": "ireland",
    "indonesia": "indonesia",
    "indonésia": "indonesia",
    "indonésie": "indonesia",
    "indonesië": "indonesia",
    "indonesien": "indonesia",
    "ireland": "ireland",
    "irlanda": "ireland",
    "irlande": "ireland",
    "irland": "ireland",
    "italia": "italy",
    "itália": "italy",
    "italie": "italy",
    "italië": "italy",
    "italien": "italy",
    "italy": "italy",
    "japan": "japan",
    "kosovo": "kosovo",
    "latvia": "latvia",
    "latvija": "latvia",
    "letland": "latvia",
    "letonia": "latvia",
    "letónia": "latvia",
    "lettland": "latvia",
    "lettonie": "latvia",
    "liechtenstein": "liechtenstein",
    "lietuva": "lithuania",
    "lithuania": "lithuania",
    "luxembourg": "luxembourg",
    "luxemburgo": "luxembourg",
    "macedonia the former yugoslav republic of": "macedonia",
    "magyarország": "hungary",
    "malaisie": "malaysia",
    "malasia": "malaysia",
    "malásia": "malaysia",
    "malaysia": "malaysia",
    "maleisië": "malaysia",
    "malesia": "malaysia",
    "marocco": "morocco",
    "marokko": "morocco",
    "marruecos": "morocco",
    "meksiko": "mexico",
    "messico": "mexico",
    "mexico": "mexico",
    "méxico": "mexico",
    "mexiko": "mexico",
    "mexique": "mexico",
    "monaco": "monaco",
    "morocco": "morocco",
    "nederländerna": "the netherlands",
    "nederland": "the netherlands",
    "netherlands": "the netherlands",
    "niederlande": "the netherlands",
    "noorwegen": "norway",
    "norge": "norway",
    "noruega": "norway",
    "norvège": "norway",
    "norvegia": "norway",
    "norway": "norway",
    "norwegen": "norway",
    "oostenrijk": "austria",
    "österreich": "austria",
    "österrike": "austria",
    "østerrike": "austria",
    "paesi bassi": "the netherlands",
    "pays bas": "the netherlands",
    "poland": "poland",
    "polen": "poland",
    "pologne": "poland",
    "polonia": "poland",
    "polónia": "poland",
    "polska": "poland",
    "portogallo": "portugal",
    "portugali": "portugal",
    "portugal": "portugal",
    "ranska": "france",
    "regno unito": "united kingdom",
    "reino unido": "united kingdom",
    "royaume uni": "united kingdom",
    "ruotsi": "sweden",
    "rusia": "russia",
    "rusland": "russia",
    "russia": "russia",
    "rússia": "russia",
    "russie": "russia",
    "russland": "russia",
    "saksa": "germany",
    "san marino": "san marino",
    "schweden": "sweden",
    "schweiz": "switzerland",
    "serbia": "serbia",
    "singapore": "singapore",
    "slovakia": "slovakia",
    "slovensko": "slovakia",
    "south africa": "south africa",
    "spagna": "spain",
    "spain": "spain",
    "spania": "spain",
    "spanien": "spain",
    "spanje": "spain",
    "storbritannia": "united kingdom",
    "storbritannien": "united kingdom",
    "suecia": "sweden",
    "suécia": "sweden",
    "suède": "sweden",
    "suíça": "switzerland",
    "suisse": "switzerland",
    "suiza": "switzerland",
    "suomi": "finland",
    "sveitsi": "switzerland",
    "sverige": "sweden",
    "svezia": "sweden",
    "svizzera": "switzerland",
    "sweden": "sweden",
    "switzerland": "switzerland",
    "the netherlands": "the netherlands",
    "the united states of america": "united states",
    "turchia": "turkey",
    "türkei": "turkey",
    "turkey": "turkey",
    "turkiet": "turkey",
    "turkije": "turkey",
    "türkiye": "turkey",
    "turquia": "turkey",
    "turquía": "turkey",
    "turquie": "turkey",
    "tyrkiet": "turkey",
    "tyskland": "germany",
    "ukraine": "ukraine",
    "ungarn": "hungary",
    "ungheria": "hungary",
    "united kingdom": "united kingdom",
    "united states": "united states",
    "vatican city": "vatican city",
    "venäjä": "russia",
    "vereinigtes königreich": "united kingdom",
    "verenigd koninkrijk": "united kingdom",
    "viro": "estonia",
    "yhdistynyt kuningaskunta": "united kingdom",
    "zweden": "sweden",
    "zwitserland": "switzerland",
    "Ελλάδα": "greece",
    "Ελλάς": "greece",
    "България": "bulgaria",
    "Россия": "russia",
}

COUNTRY_CODES = {
    "af": "afghanistan",
    "al": "albania",
    "dz": "algeria",
    "as": "american samoa",
    "ad": "andorra",
    "ao": "angola",
    "ai": "anguilla",
    "aq": "antarctica",
    "ag": "antigua and barbuda",
    "ar": "argentina",
    "am": "armenia",
    "aw": "aruba",
    "au": "australia",
    "at": "austria",
    "az": "azerbaijan",
    "bs": "bahamas",
    "bh": "bahrain",
    "bd": "bangladesh",
    "bb": "barbados",
    "by": "belarus",
    "be": "belgium",
    "bz": "belize",
    "bj": "benin",
    "bm": "bermuda",
    "bt": "bhutan",
    "bo": "bolivia",
    "ba": "bosnia and herzegovina",
    "bw": "botswana",
    "bv": "bouvet island",
    "br": "brazil",
    "io": "british indian ocean territory",
    "bn": "brunei darussalam",
    "bg": "bulgaria",
    "bf": "burkina faso",
    "bi": "burundi",
    "kh": "cambodia",
    "cm": "cameroon",
    "ca": "canada",
    "cv": "cape verde",
    "ky": "cayman islands",
    "cf": "central african republic",
    "td": "chad",
    "cl": "chile",
    "cn": "china",
    "cx": "christmas island",
    "cc": "cocos (keeling islands)",
    "co": "colombia",
    "km": "comoros",
    "cg": "congo",
    "ck": "cook islands",
    "cr": "costa rica",
    "ci": "cote d'ivoire (ivory coast)",
    "hr": "croatia (hrvatska",
    "cu": "cuba",
    "cy": "cyprus",
    "cz": "czech republic",
    "dk": "denmark",
    "dj": "djibouti",
    "dm": "dominica",
    "do": "dominican republic",
    "tp": "east timor",
    "ec": "ecuador",
    "eg": "egypt",
    "sv": "el salvador",
    "gq": "equatorial guinea",
    "er": "eritrea",
    "ee": "estonia",
    "et": "ethiopia",
    "fk": "falkland islands (malvinas)",
    "fo": "faroe islands",
    "fj": "fiji",
    "fi": "finland",
    "fr": "france",
    "fx": "france    metropolitan",
    "gf": "french guiana",
    "pf": "french polynesia",
    "tf": "french southern territories",
    "ga": "gabon",
    "gm": "gambia",
    "ge": "georgia",
    "de": "germany",
    "gh": "ghana",
    "gi": "gibraltar",
    "gr": "greece",
    "gl": "greenland",
    "gd": "grenada",
    "gp": "guadeloupe",
    "gu": "guam",
    "gt": "guatemala",
    "gn": "guinea",
    "gw": "guinea-bissau",
    "gy": "guyana",
    "ht": "haiti",
    "hm": "heard and mcdonald islands",
    "hn": "honduras",
    "hk": "hong kong",
    "hu": "hungary",
    "is": "iceland",
    "in": "india",
    "id": "indonesia",
    "ir": "iran",
    "iq": "iraq",
    "ie": "ireland",
    "il": "israel",
    "it": "italy",
    "jm": "jamaica",
    "jp": "japan",
    "jo": "jordan",
    "kz": "kazakhstan",
    "ke": "kenya",
    "ki": "kiribati",
    "kp": "korea (north)",
    "kr": "korea (south)",
    "kw": "kuwait",
    "kg": "kyrgyzstan",
    "la": "laos",
    "lv": "latvia",
    "lb": "lebanon",
    "ls": "lesotho",
    "lr": "liberia",
    "ly": "libya",
    "li": "liechtenstein",
    "lt": "lithuania",
    "lu": "luxembourg",
    "mo": "macau",
    "mk": "macedonia",
    "mg": "madagascar",
    "mw": "malawi",
    "my": "malaysia",
    "mv": "maldives",
    "ml": "mali",
    "mt": "malta",
    "mh": "marshall islands",
    "mq": "martinique",
    "mr": "mauritania",
    "mu": "mauritius",
    "yt": "mayotte",
    "mx": "mexico",
    "fm": "micronesia",
    "md": "moldova",
    "mc": "monaco",
    "mn": "mongolia",
    "ms": "montserrat",
    "ma": "morocco",
    "mz": "mozambique",
    "mm": "myanmar",
    "na": "namibia",
    "nr": "nauru",
    "np": "nepal",
    "nl": "netherlands",
    "an": "netherlands antilles",
    "nc": "new caledonia",
    "nz": "new zealand",
    "ni": "nicaragua",
    "ne": "niger",
    "ng": "nigeria",
    "nu": "niue",
    "nf": "norfolk island",
    "mp": "northern mariana islands",
    "no": "norway",
    "om": "oman",
    "pk": "pakistan",
    "pw": "palau",
    "pa": "panama",
    "pg": "papua new guinea",
    "py": "paraguay",
    "pe": "peru",
    "ph": "philippines",
    "pn": "pitcairn",
    "pl": "poland",
    "pt": "portugal",
    "pr": "puerto rico",
    "qa": "qatar",
    "re": "reunion",
    "ro": "romania",
    "ru": "russian federation",
    "rw": "rwanda",
    "kn": "saint kitts and nevis",
    "lc": "saint lucia",
    "vc": "saint vincent and the grenadines",
    "ws": "samoa",
    "sm": "san marino",
    "st": "sao tome and principe",
    "sa": "saudi arabia",
    "sn": "senegal",
    "sc": "seychelles",
    "sl": "sierra leone",
    "sg": "singapore",
    "sk": "slovak republic",
    "si": "slovenia",
    "sb": "solomon islands",
    "so": "somalia",
    "za": "south africa",
    "gs": "s. georgia and s. sandwich isls.",
    "es": "spain",
    "lk": "sri lanka",
    "sh": "st. helena",
    "pm": "st. pierre and miquelon",
    "sd": "sudan",
    "sr": "suriname",
    "sj": "svalbard and jan mayen islands",
    "sz": "swaziland",
    "se": "sweden",
    "ch": "switzerland",
    "sy": "syria",
    "tw": "taiwan",
    "tj": "tajikistan",
    "tz": "tanzania",
    "th": "thailand",
    "tg": "togo",
    "tk": "tokelau",
    "to": "tonga",
    "tt": "trinidad and tobago",
    "tn": "tunisia",
    "tr": "turkey",
    "tm": "turkmenistan",
    "tc": "turks and caicos islands",
    "tv": "tuvalu",
    "ug": "uganda",
    "ua": "ukraine",
    "ae": "united arab emirates",
    "uk": "united kingdom",
    "us": "united states",
    "um": "us minor outlying islands",
    "uy": "uruguay",
    "uz": "uzbekistan",
    "vu": "vanuatu",
    "va": "vatican city state (holy see)",
    "ve": "venezuela",
    "vn": "viet nam",
    "vg": "virgin islands (british)",
    "vi": "virgin islands (us)",
    "wf": "wallis and futuna islands",
    "eh": "western sahara",
    "ye": "yemen",
    "yu": "yugoslavia",
    "zr": "zaire",
    "zm": "zambia",
    "zw": "zimbabwe",
}
COUNTRIES = frozenset(COUNTRY_CODES.values())

US_STATE_ABBREVIATIONS = {
    "al": "alabama",
    "ak": "alaska",
    "az": "arizona",
    "ar": "arkansas",
    "ca": "california",
    "co": "colorado",
    "ct": "connecticut",
    "de": "delaware",
    "fl": "florida",
    "ga": "georgia",
    "hi": "hawaii",
    "id": "idaho",
    "il": "illinois",
    "in": "indiana",
    "ia": "iowa",
    "ks": "kansas",
    "ky": "kentucky",
    "la": "louisiana",
    "me": "maine",
    "md": "maryland",
    "ma": "massachusetts",
    "mi": "michigan",
    "mn": "minnesota",
    "ms": "mississippi",
    "mo": "missouri",
    "mt": "montana",
    "ne": "nebraska",
    "nv": "nevada",
    "nh": "new hampshire",
    "nj": "new jersey",
    "nm": "new mexico",
    "ny": "new york",
    "nc": "north carolina",
    "nd": "north dakota",
    "oh": "ohio",
    "ok": "oklahoma",
    "or": "oregon",
    "pa": "pennsylvania",
    "ri": "rhode island",
    "sc": "south carolina",
    "sd": "south dakota",
    "tn": "tennessee",
    "tx": "texas",
    "ut": "utah",
    "vt": "vermont",
    "va": "virginia",
    "wa": "washington",
    "wv": "west virginia",
    "wi": "wisconsin",
    "wy": "wyoming",
}
US_STATES = frozenset(US_STATE_ABBREVIATIONS.values())
