#
#  Copyright 2025 by C Change Labs Inc. www.c-change-labs.com
#
#  Licensed under the Apache License, Version 2.0 (the "License");
#  you may not use this file except in compliance with the License.
#  You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
#  Unless required by applicable law or agreed to in writing, software
#  distributed under the License is distributed on an "AS IS" BASIS,
#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#  See the License for the specific language governing permissions and
#  limitations under the License.
#
from enum import StrEnum

# Do not edit this file. It is generated with tools/openepd/codegen/generate_geography_enum.py, or `make codegen`


class Geography(StrEnum):
    """
    Geography definitions.

    Special geography regions:

     * EU27: 27 members of the Euro bloc
     * NAFTA: North American Free Trade Agreement

    Country geography regions, see https://en.wikipedia.org/wiki/ISO_3166-1

     * AD: Andorra
     * AE: United Arab Emirates
     * AF: Afghanistan
     * AG: Antigua and Barbuda
     * AI: Anguilla
     * AL: Albania
     * AM: Armenia
     * AO: Angola
     * AQ: Antarctica
     * AR: Argentina
     * AS: American Samoa
     * AT: Austria
     * AU: Australia
     * AW: Aruba
     * AX: Åland Islands
     * AZ: Azerbaijan
     * BA: Bosnia and Herzegovina
     * BB: Barbados
     * BD: Bangladesh
     * BE: Belgium
     * BF: Burkina Faso
     * BG: Bulgaria
     * BH: Bahrain
     * BI: Burundi
     * BJ: Benin
     * BL: Saint Barthélemy
     * BM: Bermuda
     * BN: Brunei Darussalam
     * BO: Bolivia, Plurinational State of
     * BQ: Bonaire, Sint Eustatius and Saba
     * BR: Brazil
     * BS: Bahamas
     * BT: Bhutan
     * BV: Bouvet Island
     * BW: Botswana
     * BY: Belarus
     * BZ: Belize
     * CA: Canada
     * CC: Cocos (Keeling) Islands
     * CD: Congo, The Democratic Republic of the
     * CF: Central African Republic
     * CG: Congo
     * CH: Switzerland
     * CI: Côte d'Ivoire
     * CK: Cook Islands
     * CL: Chile
     * CM: Cameroon
     * CN: China
     * CO: Colombia
     * CR: Costa Rica
     * CU: Cuba
     * CV: Cabo Verde
     * CW: Curaçao
     * CX: Christmas Island
     * CY: Cyprus
     * CZ: Czechia
     * DE: Germany
     * DJ: Djibouti
     * DK: Denmark
     * DM: Dominica
     * DO: Dominican Republic
     * DZ: Algeria
     * EC: Ecuador
     * EE: Estonia
     * EG: Egypt
     * EH: Western Sahara
     * ER: Eritrea
     * ES: Spain
     * ET: Ethiopia
     * FI: Finland
     * FJ: Fiji
     * FK: Falkland Islands (Malvinas)
     * FM: Micronesia, Federated States of
     * FO: Faroe Islands
     * FR: France
     * GA: Gabon
     * GB: United Kingdom
     * GD: Grenada
     * GE: Georgia
     * GF: French Guiana
     * GG: Guernsey
     * GH: Ghana
     * GI: Gibraltar
     * GL: Greenland
     * GM: Gambia
     * GN: Guinea
     * GP: Guadeloupe
     * GQ: Equatorial Guinea
     * GR: Greece
     * GS: South Georgia and the South Sandwich Islands
     * GT: Guatemala
     * GU: Guam
     * GW: Guinea-Bissau
     * GY: Guyana
     * HK: Hong Kong
     * HM: Heard Island and McDonald Islands
     * HN: Honduras
     * HR: Croatia
     * HT: Haiti
     * HU: Hungary
     * ID: Indonesia
     * IE: Ireland
     * IL: Israel
     * IM: Isle of Man
     * IN: India
     * IO: British Indian Ocean Territory
     * IQ: Iraq
     * IR: Iran, Islamic Republic of
     * IS: Iceland
     * IT: Italy
     * JE: Jersey
     * JM: Jamaica
     * JO: Jordan
     * JP: Japan
     * KE: Kenya
     * KG: Kyrgyzstan
     * KH: Cambodia
     * KI: Kiribati
     * KM: Comoros
     * KN: Saint Kitts and Nevis
     * KP: Korea, Democratic People's Republic of
     * KR: Korea, Republic of
     * KW: Kuwait
     * KY: Cayman Islands
     * KZ: Kazakhstan
     * LA: Lao People's Democratic Republic
     * LB: Lebanon
     * LC: Saint Lucia
     * LI: Liechtenstein
     * LK: Sri Lanka
     * LR: Liberia
     * LS: Lesotho
     * LT: Lithuania
     * LU: Luxembourg
     * LV: Latvia
     * LY: Libya
     * MA: Morocco
     * MC: Monaco
     * MD: Moldova, Republic of
     * ME: Montenegro
     * MF: Saint Martin (French part)
     * MG: Madagascar
     * MH: Marshall Islands
     * MK: North Macedonia
     * ML: Mali
     * MM: Myanmar
     * MN: Mongolia
     * MO: Macao
     * MP: Northern Mariana Islands
     * MQ: Martinique
     * MR: Mauritania
     * MS: Montserrat
     * MT: Malta
     * MU: Mauritius
     * MV: Maldives
     * MW: Malawi
     * MX: Mexico
     * MY: Malaysia
     * MZ: Mozambique
     * NA: Namibia
     * NC: New Caledonia
     * NE: Niger
     * NF: Norfolk Island
     * NG: Nigeria
     * NI: Nicaragua
     * NL: Netherlands
     * NO: Norway
     * NP: Nepal
     * NR: Nauru
     * NU: Niue
     * NZ: New Zealand
     * OM: Oman
     * PA: Panama
     * PE: Peru
     * PF: French Polynesia
     * PG: Papua New Guinea
     * PH: Philippines
     * PK: Pakistan
     * PL: Poland
     * PM: Saint Pierre and Miquelon
     * PN: Pitcairn
     * PR: Puerto Rico
     * PS: Palestine, State of
     * PT: Portugal
     * PW: Palau
     * PY: Paraguay
     * QA: Qatar
     * RE: Réunion
     * RO: Romania
     * RS: Serbia
     * RU: Russian Federation
     * RW: Rwanda
     * SA: Saudi Arabia
     * SB: Solomon Islands
     * SC: Seychelles
     * SD: Sudan
     * SE: Sweden
     * SG: Singapore
     * SH: Saint Helena, Ascension and Tristan da Cunha
     * SI: Slovenia
     * SJ: Svalbard and Jan Mayen
     * SK: Slovakia
     * SL: Sierra Leone
     * SM: San Marino
     * SN: Senegal
     * SO: Somalia
     * SR: Suriname
     * SS: South Sudan
     * ST: Sao Tome and Principe
     * SV: El Salvador
     * SX: Sint Maarten (Dutch part)
     * SY: Syrian Arab Republic
     * SZ: Eswatini
     * TC: Turks and Caicos Islands
     * TD: Chad
     * TF: French Southern Territories
     * TG: Togo
     * TH: Thailand
     * TJ: Tajikistan
     * TK: Tokelau
     * TL: Timor-Leste
     * TM: Turkmenistan
     * TN: Tunisia
     * TO: Tonga
     * TR: Türkiye
     * TT: Trinidad and Tobago
     * TV: Tuvalu
     * TW: Taiwan, Province of China
     * TZ: Tanzania, United Republic of
     * UA: Ukraine
     * UG: Uganda
     * UM: United States Minor Outlying Islands
     * US: United States
     * UY: Uruguay
     * UZ: Uzbekistan
     * VA: Holy See (Vatican City State)
     * VC: Saint Vincent and the Grenadines
     * VE: Venezuela, Bolivarian Republic of
     * VG: Virgin Islands, British
     * VI: Virgin Islands, U.S.
     * VN: Viet Nam
     * VU: Vanuatu
     * WF: Wallis and Futuna
     * WS: Samoa
     * YE: Yemen
     * YT: Mayotte
     * ZA: South Africa
     * ZM: Zambia
     * ZW: Zimbabwe

    USA states and Canada provinces, see https://en.wikipedia.org/wiki/ISO_3166-1:

     * CA-AB: Alberta, Canada
     * CA-BC: British Columbia, Canada
     * CA-MB: Manitoba, Canada
     * CA-NB: New Brunswick, Canada
     * CA-NL: Newfoundland and Labrador, Canada
     * CA-NS: Nova Scotia, Canada
     * CA-NT: Northwest Territories, Canada
     * CA-NU: Nunavut, Canada
     * CA-ON: Ontario, Canada
     * CA-PE: Prince Edward Island, Canada
     * CA-QC: Quebec, Canada
     * CA-SK: Saskatchewan, Canada
     * CA-YT: Yukon, Canada
     * US-AK: Alaska, United States
     * US-AL: Alabama, United States
     * US-AR: Arkansas, United States
     * US-AS: American Samoa, United States
     * US-AZ: Arizona, United States
     * US-CA: California, United States
     * US-CO: Colorado, United States
     * US-CT: Connecticut, United States
     * US-DC: District of Columbia, United States
     * US-DE: Delaware, United States
     * US-FL: Florida, United States
     * US-GA: Georgia, United States
     * US-GU: Guam, United States
     * US-HI: Hawaii, United States
     * US-IA: Iowa, United States
     * US-ID: Idaho, United States
     * US-IL: Illinois, United States
     * US-IN: Indiana, United States
     * US-KS: Kansas, United States
     * US-KY: Kentucky, United States
     * US-LA: Louisiana, United States
     * US-MA: Massachusetts, United States
     * US-MD: Maryland, United States
     * US-ME: Maine, United States
     * US-MI: Michigan, United States
     * US-MN: Minnesota, United States
     * US-MO: Missouri, United States
     * US-MP: Northern Mariana Islands, United States
     * US-MS: Mississippi, United States
     * US-MT: Montana, United States
     * US-NC: North Carolina, United States
     * US-ND: North Dakota, United States
     * US-NE: Nebraska, United States
     * US-NH: New Hampshire, United States
     * US-NJ: New Jersey, United States
     * US-NM: New Mexico, United States
     * US-NV: Nevada, United States
     * US-NY: New York, United States
     * US-OH: Ohio, United States
     * US-OK: Oklahoma, United States
     * US-OR: Oregon, United States
     * US-PA: Pennsylvania, United States
     * US-PR: Puerto Rico, United States
     * US-RI: Rhode Island, United States
     * US-SC: South Carolina, United States
     * US-SD: South Dakota, United States
     * US-TN: Tennessee, United States
     * US-TX: Texas, United States
     * US-UM: United States Minor Outlying Islands, United States
     * US-UT: Utah, United States
     * US-VA: Virginia, United States
     * US-VI: Virgin Islands, U.S., United States
     * US-VT: Vermont, United States
     * US-WA: Washington, United States
     * US-WI: Wisconsin, United States
     * US-WV: West Virginia, United States
     * US-WY: Wyoming, United States

    UN m49 codes for countries and regions (i.e. both Egypt and Northern Africa)
    See https://unstats.un.org/unsd/methodology/m49/overview/

     * m49_001: Global
     * m49_003: North America. The continent of North America (numerical code 003) comprises Northern America (numerical code 021), Caribbean (numerical code 029), and Central America (numerical code 013).
     * m49_002: Africa
     * m49_015: Northern Africa
     * m49_202: Sub-Saharan Africa
     * m49_019: Americas
     * m49_419: Latin America and the Caribbean
     * m49_021: Northern America
     * m49_142: Asia
     * m49_143: Central Asia
     * m49_030: Eastern Asia
     * m49_035: South-eastern Asia
     * m49_034: Southern Asia
     * m49_145: Western Asia
     * m49_150: Europe
     * m49_151: Eastern Europe
     * m49_154: Northern Europe
     * m49_039: Southern Europe
     * m49_155: Western Europe
     * m49_009: Oceania
     * m49_053: Australia and New Zealand
     * m49_054: Melanesia
     * m49_057: Micronesia
     * m49_061: Polynesia
     * m49_012: Algeria
     * m49_818: Egypt
     * m49_434: Libya
     * m49_504: Morocco
     * m49_729: Sudan
     * m49_788: Tunisia
     * m49_732: Western Sahara
     * m49_086: British Indian Ocean Territory
     * m49_108: Burundi
     * m49_174: Comoros
     * m49_262: Djibouti
     * m49_232: Eritrea
     * m49_231: Ethiopia
     * m49_260: French Southern Territories
     * m49_404: Kenya
     * m49_450: Madagascar
     * m49_454: Malawi
     * m49_480: Mauritius
     * m49_175: Mayotte
     * m49_508: Mozambique
     * m49_638: Réunion
     * m49_646: Rwanda
     * m49_690: Seychelles
     * m49_706: Somalia
     * m49_728: South Sudan
     * m49_800: Uganda
     * m49_834: United Republic of Tanzania
     * m49_894: Zambia
     * m49_716: Zimbabwe
     * m49_024: Angola
     * m49_120: Cameroon
     * m49_140: Central African Republic
     * m49_148: Chad
     * m49_178: Congo
     * m49_180: Democratic Republic of the Congo
     * m49_226: Equatorial Guinea
     * m49_266: Gabon
     * m49_678: Sao Tome and Principe
     * m49_072: Botswana
     * m49_748: Eswatini
     * m49_426: Lesotho
     * m49_516: Namibia
     * m49_710: South Africa
     * m49_204: Benin
     * m49_854: Burkina Faso
     * m49_132: Cabo Verde
     * m49_384: Côte d’Ivoire
     * m49_270: Gambia
     * m49_288: Ghana
     * m49_324: Guinea
     * m49_624: Guinea-Bissau
     * m49_430: Liberia
     * m49_466: Mali
     * m49_478: Mauritania
     * m49_562: Niger
     * m49_566: Nigeria
     * m49_654: Saint Helena
     * m49_686: Senegal
     * m49_694: Sierra Leone
     * m49_768: Togo
     * m49_660: Anguilla
     * m49_028: Antigua and Barbuda
     * m49_533: Aruba
     * m49_044: Bahamas
     * m49_052: Barbados
     * m49_535: Bonaire, Sint Eustatius and Saba
     * m49_092: British Virgin Islands
     * m49_136: Cayman Islands
     * m49_192: Cuba
     * m49_531: Curaçao
     * m49_212: Dominica
     * m49_214: Dominican Republic
     * m49_308: Grenada
     * m49_312: Guadeloupe
     * m49_332: Haiti
     * m49_388: Jamaica
     * m49_474: Martinique
     * m49_500: Montserrat
     * m49_630: Puerto Rico
     * m49_652: Saint Barthélemy
     * m49_659: Saint Kitts and Nevis
     * m49_662: Saint Lucia
     * m49_663: Saint Martin (French Part)
     * m49_670: Saint Vincent and the Grenadines
     * m49_534: Sint Maarten (Dutch part)
     * m49_780: Trinidad and Tobago
     * m49_796: Turks and Caicos Islands
     * m49_850: United States Virgin Islands
     * m49_084: Belize
     * m49_188: Costa Rica
     * m49_222: El Salvador
     * m49_320: Guatemala
     * m49_340: Honduras
     * m49_484: Mexico
     * m49_558: Nicaragua
     * m49_591: Panama
     * m49_032: Argentina
     * m49_068: Bolivia (Plurinational State of)
     * m49_074: Bouvet Island
     * m49_076: Brazil
     * m49_152: Chile
     * m49_170: Colombia
     * m49_218: Ecuador
     * m49_238: Falkland Islands (Malvinas)
     * m49_254: French Guiana
     * m49_328: Guyana
     * m49_600: Paraguay
     * m49_604: Peru
     * m49_239: South Georgia and the South Sandwich Islands
     * m49_740: Suriname
     * m49_858: Uruguay
     * m49_862: Venezuela (Bolivarian Republic of)
     * m49_060: Bermuda
     * m49_124: Canada
     * m49_304: Greenland
     * m49_666: Saint Pierre and Miquelon
     * m49_840: United States of America
     * m49_010: Antarctica
     * m49_398: Kazakhstan
     * m49_417: Kyrgyzstan
     * m49_762: Tajikistan
     * m49_795: Turkmenistan
     * m49_860: Uzbekistan
     * m49_156: China
     * m49_344: China, Hong Kong Special Administrative Region
     * m49_446: China, Macao Special Administrative Region
     * m49_408: Democratic People's Republic of Korea
     * m49_392: Japan
     * m49_496: Mongolia
     * m49_410: Republic of Korea
     * m49_096: Brunei Darussalam
     * m49_116: Cambodia
     * m49_360: Indonesia
     * m49_418: Lao People's Democratic Republic
     * m49_458: Malaysia
     * m49_104: Myanmar
     * m49_608: Philippines
     * m49_702: Singapore
     * m49_764: Thailand
     * m49_626: Timor-Leste
     * m49_704: Viet Nam
     * m49_004: Afghanistan
     * m49_050: Bangladesh
     * m49_064: Bhutan
     * m49_356: India
     * m49_364: Iran (Islamic Republic of)
     * m49_462: Maldives
     * m49_524: Nepal
     * m49_586: Pakistan
     * m49_144: Sri Lanka
     * m49_051: Armenia
     * m49_031: Azerbaijan
     * m49_048: Bahrain
     * m49_196: Cyprus
     * m49_268: Georgia
     * m49_368: Iraq
     * m49_376: Israel
     * m49_400: Jordan
     * m49_414: Kuwait
     * m49_422: Lebanon
     * m49_512: Oman
     * m49_634: Qatar
     * m49_682: Saudi Arabia
     * m49_275: State of Palestine
     * m49_760: Syrian Arab Republic
     * m49_792: Türkiye
     * m49_784: United Arab Emirates
     * m49_887: Yemen
     * m49_112: Belarus
     * m49_100: Bulgaria
     * m49_203: Czechia
     * m49_348: Hungary
     * m49_616: Poland
     * m49_498: Republic of Moldova
     * m49_642: Romania
     * m49_643: Russian Federation
     * m49_703: Slovakia
     * m49_804: Ukraine
     * m49_248: Åland Islands
     * m49_208: Denmark
     * m49_233: Estonia
     * m49_234: Faroe Islands
     * m49_246: Finland
     * m49_831: Guernsey
     * m49_352: Iceland
     * m49_372: Ireland
     * m49_833: Isle of Man
     * m49_832: Jersey
     * m49_428: Latvia
     * m49_440: Lithuania
     * m49_578: Norway
     * m49_744: Svalbard and Jan Mayen Islands
     * m49_752: Sweden
     * m49_826: United Kingdom of Great Britain and Northern Ireland
     * m49_008: Albania
     * m49_020: Andorra
     * m49_070: Bosnia and Herzegovina
     * m49_191: Croatia
     * m49_292: Gibraltar
     * m49_300: Greece
     * m49_336: Holy See
     * m49_380: Italy
     * m49_470: Malta
     * m49_499: Montenegro
     * m49_807: North Macedonia
     * m49_620: Portugal
     * m49_674: San Marino
     * m49_688: Serbia
     * m49_705: Slovenia
     * m49_724: Spain
     * m49_040: Austria
     * m49_056: Belgium
     * m49_250: France
     * m49_276: Germany
     * m49_438: Liechtenstein
     * m49_442: Luxembourg
     * m49_492: Monaco
     * m49_528: Netherlands (Kingdom of the)
     * m49_756: Switzerland
     * m49_036: Australia
     * m49_162: Christmas Island
     * m49_166: Cocos (Keeling) Islands
     * m49_334: Heard Island and McDonald Islands
     * m49_554: New Zealand
     * m49_574: Norfolk Island
     * m49_242: Fiji
     * m49_540: New Caledonia
     * m49_598: Papua New Guinea
     * m49_090: Solomon Islands
     * m49_548: Vanuatu
     * m49_316: Guam
     * m49_296: Kiribati
     * m49_584: Marshall Islands
     * m49_583: Micronesia (Federated States of)
     * m49_520: Nauru
     * m49_580: Northern Mariana Islands
     * m49_585: Palau
     * m49_581: United States Minor Outlying Islands
     * m49_016: American Samoa
     * m49_184: Cook Islands
     * m49_258: French Polynesia
     * m49_570: Niue
     * m49_612: Pitcairn
     * m49_882: Samoa
     * m49_772: Tokelau
     * m49_776: Tonga
     * m49_798: Tuvalu
     * m49_876: Wallis and Futuna Islands

    """

    # Special geography
    EU27 = "EU27"
    NAFTA = "NAFTA"

    # Countries
    AD = "AD"
    AE = "AE"
    AF = "AF"
    AG = "AG"
    AI = "AI"
    AL = "AL"
    AM = "AM"
    AO = "AO"
    AQ = "AQ"
    AR = "AR"
    AS = "AS"
    AT = "AT"
    AU = "AU"
    AW = "AW"
    AX = "AX"
    AZ = "AZ"
    BA = "BA"
    BB = "BB"
    BD = "BD"
    BE = "BE"
    BF = "BF"
    BG = "BG"
    BH = "BH"
    BI = "BI"
    BJ = "BJ"
    BL = "BL"
    BM = "BM"
    BN = "BN"
    BO = "BO"
    BQ = "BQ"
    BR = "BR"
    BS = "BS"
    BT = "BT"
    BV = "BV"
    BW = "BW"
    BY = "BY"
    BZ = "BZ"
    CA = "CA"
    CC = "CC"
    CD = "CD"
    CF = "CF"
    CG = "CG"
    CH = "CH"
    CI = "CI"
    CK = "CK"
    CL = "CL"
    CM = "CM"
    CN = "CN"
    CO = "CO"
    CR = "CR"
    CU = "CU"
    CV = "CV"
    CW = "CW"
    CX = "CX"
    CY = "CY"
    CZ = "CZ"
    DE = "DE"
    DJ = "DJ"
    DK = "DK"
    DM = "DM"
    DO = "DO"
    DZ = "DZ"
    EC = "EC"
    EE = "EE"
    EG = "EG"
    EH = "EH"
    ER = "ER"
    ES = "ES"
    ET = "ET"
    FI = "FI"
    FJ = "FJ"
    FK = "FK"
    FM = "FM"
    FO = "FO"
    FR = "FR"
    GA = "GA"
    GB = "GB"
    GD = "GD"
    GE = "GE"
    GF = "GF"
    GG = "GG"
    GH = "GH"
    GI = "GI"
    GL = "GL"
    GM = "GM"
    GN = "GN"
    GP = "GP"
    GQ = "GQ"
    GR = "GR"
    GS = "GS"
    GT = "GT"
    GU = "GU"
    GW = "GW"
    GY = "GY"
    HK = "HK"
    HM = "HM"
    HN = "HN"
    HR = "HR"
    HT = "HT"
    HU = "HU"
    ID = "ID"
    IE = "IE"
    IL = "IL"
    IM = "IM"
    IN = "IN"
    IO = "IO"
    IQ = "IQ"
    IR = "IR"
    IS = "IS"
    IT = "IT"
    JE = "JE"
    JM = "JM"
    JO = "JO"
    JP = "JP"
    KE = "KE"
    KG = "KG"
    KH = "KH"
    KI = "KI"
    KM = "KM"
    KN = "KN"
    KP = "KP"
    KR = "KR"
    KW = "KW"
    KY = "KY"
    KZ = "KZ"
    LA = "LA"
    LB = "LB"
    LC = "LC"
    LI = "LI"
    LK = "LK"
    LR = "LR"
    LS = "LS"
    LT = "LT"
    LU = "LU"
    LV = "LV"
    LY = "LY"
    MA = "MA"
    MC = "MC"
    MD = "MD"
    ME = "ME"
    MF = "MF"
    MG = "MG"
    MH = "MH"
    MK = "MK"
    ML = "ML"
    MM = "MM"
    MN = "MN"
    MO = "MO"
    MP = "MP"
    MQ = "MQ"
    MR = "MR"
    MS = "MS"
    MT = "MT"
    MU = "MU"
    MV = "MV"
    MW = "MW"
    MX = "MX"
    MY = "MY"
    MZ = "MZ"
    NA = "NA"
    NC = "NC"
    NE = "NE"
    NF = "NF"
    NG = "NG"
    NI = "NI"
    NL = "NL"
    NO = "NO"
    NP = "NP"
    NR = "NR"
    NU = "NU"
    NZ = "NZ"
    OM = "OM"
    PA = "PA"
    PE = "PE"
    PF = "PF"
    PG = "PG"
    PH = "PH"
    PK = "PK"
    PL = "PL"
    PM = "PM"
    PN = "PN"
    PR = "PR"
    PS = "PS"
    PT = "PT"
    PW = "PW"
    PY = "PY"
    QA = "QA"
    RE = "RE"
    RO = "RO"
    RS = "RS"
    RU = "RU"
    RW = "RW"
    SA = "SA"
    SB = "SB"
    SC = "SC"
    SD = "SD"
    SE = "SE"
    SG = "SG"
    SH = "SH"
    SI = "SI"
    SJ = "SJ"
    SK = "SK"
    SL = "SL"
    SM = "SM"
    SN = "SN"
    SO = "SO"
    SR = "SR"
    SS = "SS"
    ST = "ST"
    SV = "SV"
    SX = "SX"
    SY = "SY"
    SZ = "SZ"
    TC = "TC"
    TD = "TD"
    TF = "TF"
    TG = "TG"
    TH = "TH"
    TJ = "TJ"
    TK = "TK"
    TL = "TL"
    TM = "TM"
    TN = "TN"
    TO = "TO"
    TR = "TR"
    TT = "TT"
    TV = "TV"
    TW = "TW"
    TZ = "TZ"
    UA = "UA"
    UG = "UG"
    UM = "UM"
    US = "US"
    UY = "UY"
    UZ = "UZ"
    VA = "VA"
    VC = "VC"
    VE = "VE"
    VG = "VG"
    VI = "VI"
    VN = "VN"
    VU = "VU"
    WF = "WF"
    WS = "WS"
    YE = "YE"
    YT = "YT"
    ZA = "ZA"
    ZM = "ZM"
    ZW = "ZW"

    # USA and Canada subdivisions
    CA_AB = "CA-AB"
    CA_BC = "CA-BC"
    CA_MB = "CA-MB"
    CA_NB = "CA-NB"
    CA_NL = "CA-NL"
    CA_NS = "CA-NS"
    CA_NT = "CA-NT"
    CA_NU = "CA-NU"
    CA_ON = "CA-ON"
    CA_PE = "CA-PE"
    CA_QC = "CA-QC"
    CA_SK = "CA-SK"
    CA_YT = "CA-YT"
    US_AK = "US-AK"
    US_AL = "US-AL"
    US_AR = "US-AR"
    US_AS = "US-AS"
    US_AZ = "US-AZ"
    US_CA = "US-CA"
    US_CO = "US-CO"
    US_CT = "US-CT"
    US_DC = "US-DC"
    US_DE = "US-DE"
    US_FL = "US-FL"
    US_GA = "US-GA"
    US_GU = "US-GU"
    US_HI = "US-HI"
    US_IA = "US-IA"
    US_ID = "US-ID"
    US_IL = "US-IL"
    US_IN = "US-IN"
    US_KS = "US-KS"
    US_KY = "US-KY"
    US_LA = "US-LA"
    US_MA = "US-MA"
    US_MD = "US-MD"
    US_ME = "US-ME"
    US_MI = "US-MI"
    US_MN = "US-MN"
    US_MO = "US-MO"
    US_MP = "US-MP"
    US_MS = "US-MS"
    US_MT = "US-MT"
    US_NC = "US-NC"
    US_ND = "US-ND"
    US_NE = "US-NE"
    US_NH = "US-NH"
    US_NJ = "US-NJ"
    US_NM = "US-NM"
    US_NV = "US-NV"
    US_NY = "US-NY"
    US_OH = "US-OH"
    US_OK = "US-OK"
    US_OR = "US-OR"
    US_PA = "US-PA"
    US_PR = "US-PR"
    US_RI = "US-RI"
    US_SC = "US-SC"
    US_SD = "US-SD"
    US_TN = "US-TN"
    US_TX = "US-TX"
    US_UM = "US-UM"
    US_UT = "US-UT"
    US_VA = "US-VA"
    US_VI = "US-VI"
    US_VT = "US-VT"
    US_WA = "US-WA"
    US_WI = "US-WI"
    US_WV = "US-WV"
    US_WY = "US-WY"

    # m49 codification
    m49_001 = "001"  # Global
    m49_003 = "003"  # North America. The continent of North America (numerical code 003) comprises Northern America (numerical code 021), Caribbean (numerical code 029), and Central America (numerical code 013).
    m49_002 = "002"  # Africa
    m49_015 = "015"  # Northern Africa
    m49_202 = "202"  # Sub-Saharan Africa
    m49_019 = "019"  # Americas
    m49_419 = "419"  # Latin America and the Caribbean
    m49_021 = "021"  # Northern America
    m49_142 = "142"  # Asia
    m49_143 = "143"  # Central Asia
    m49_030 = "030"  # Eastern Asia
    m49_035 = "035"  # South-eastern Asia
    m49_034 = "034"  # Southern Asia
    m49_145 = "145"  # Western Asia
    m49_150 = "150"  # Europe
    m49_151 = "151"  # Eastern Europe
    m49_154 = "154"  # Northern Europe
    m49_039 = "039"  # Southern Europe
    m49_155 = "155"  # Western Europe
    m49_009 = "009"  # Oceania
    m49_053 = "053"  # Australia and New Zealand
    m49_054 = "054"  # Melanesia
    m49_057 = "057"  # Micronesia
    m49_061 = "061"  # Polynesia
    m49_012 = "012"  # Algeria
    m49_818 = "818"  # Egypt
    m49_434 = "434"  # Libya
    m49_504 = "504"  # Morocco
    m49_729 = "729"  # Sudan
    m49_788 = "788"  # Tunisia
    m49_732 = "732"  # Western Sahara
    m49_086 = "086"  # British Indian Ocean Territory
    m49_108 = "108"  # Burundi
    m49_174 = "174"  # Comoros
    m49_262 = "262"  # Djibouti
    m49_232 = "232"  # Eritrea
    m49_231 = "231"  # Ethiopia
    m49_260 = "260"  # French Southern Territories
    m49_404 = "404"  # Kenya
    m49_450 = "450"  # Madagascar
    m49_454 = "454"  # Malawi
    m49_480 = "480"  # Mauritius
    m49_175 = "175"  # Mayotte
    m49_508 = "508"  # Mozambique
    m49_638 = "638"  # Réunion
    m49_646 = "646"  # Rwanda
    m49_690 = "690"  # Seychelles
    m49_706 = "706"  # Somalia
    m49_728 = "728"  # South Sudan
    m49_800 = "800"  # Uganda
    m49_834 = "834"  # United Republic of Tanzania
    m49_894 = "894"  # Zambia
    m49_716 = "716"  # Zimbabwe
    m49_024 = "024"  # Angola
    m49_120 = "120"  # Cameroon
    m49_140 = "140"  # Central African Republic
    m49_148 = "148"  # Chad
    m49_178 = "178"  # Congo
    m49_180 = "180"  # Democratic Republic of the Congo
    m49_226 = "226"  # Equatorial Guinea
    m49_266 = "266"  # Gabon
    m49_678 = "678"  # Sao Tome and Principe
    m49_072 = "072"  # Botswana
    m49_748 = "748"  # Eswatini
    m49_426 = "426"  # Lesotho
    m49_516 = "516"  # Namibia
    m49_710 = "710"  # South Africa
    m49_204 = "204"  # Benin
    m49_854 = "854"  # Burkina Faso
    m49_132 = "132"  # Cabo Verde
    m49_384 = "384"  # Côte d’Ivoire
    m49_270 = "270"  # Gambia
    m49_288 = "288"  # Ghana
    m49_324 = "324"  # Guinea
    m49_624 = "624"  # Guinea-Bissau
    m49_430 = "430"  # Liberia
    m49_466 = "466"  # Mali
    m49_478 = "478"  # Mauritania
    m49_562 = "562"  # Niger
    m49_566 = "566"  # Nigeria
    m49_654 = "654"  # Saint Helena
    m49_686 = "686"  # Senegal
    m49_694 = "694"  # Sierra Leone
    m49_768 = "768"  # Togo
    m49_660 = "660"  # Anguilla
    m49_028 = "028"  # Antigua and Barbuda
    m49_533 = "533"  # Aruba
    m49_044 = "044"  # Bahamas
    m49_052 = "052"  # Barbados
    m49_535 = "535"  # Bonaire, Sint Eustatius and Saba
    m49_092 = "092"  # British Virgin Islands
    m49_136 = "136"  # Cayman Islands
    m49_192 = "192"  # Cuba
    m49_531 = "531"  # Curaçao
    m49_212 = "212"  # Dominica
    m49_214 = "214"  # Dominican Republic
    m49_308 = "308"  # Grenada
    m49_312 = "312"  # Guadeloupe
    m49_332 = "332"  # Haiti
    m49_388 = "388"  # Jamaica
    m49_474 = "474"  # Martinique
    m49_500 = "500"  # Montserrat
    m49_630 = "630"  # Puerto Rico
    m49_652 = "652"  # Saint Barthélemy
    m49_659 = "659"  # Saint Kitts and Nevis
    m49_662 = "662"  # Saint Lucia
    m49_663 = "663"  # Saint Martin (French Part)
    m49_670 = "670"  # Saint Vincent and the Grenadines
    m49_534 = "534"  # Sint Maarten (Dutch part)
    m49_780 = "780"  # Trinidad and Tobago
    m49_796 = "796"  # Turks and Caicos Islands
    m49_850 = "850"  # United States Virgin Islands
    m49_084 = "084"  # Belize
    m49_188 = "188"  # Costa Rica
    m49_222 = "222"  # El Salvador
    m49_320 = "320"  # Guatemala
    m49_340 = "340"  # Honduras
    m49_484 = "484"  # Mexico
    m49_558 = "558"  # Nicaragua
    m49_591 = "591"  # Panama
    m49_032 = "032"  # Argentina
    m49_068 = "068"  # Bolivia (Plurinational State of)
    m49_074 = "074"  # Bouvet Island
    m49_076 = "076"  # Brazil
    m49_152 = "152"  # Chile
    m49_170 = "170"  # Colombia
    m49_218 = "218"  # Ecuador
    m49_238 = "238"  # Falkland Islands (Malvinas)
    m49_254 = "254"  # French Guiana
    m49_328 = "328"  # Guyana
    m49_600 = "600"  # Paraguay
    m49_604 = "604"  # Peru
    m49_239 = "239"  # South Georgia and the South Sandwich Islands
    m49_740 = "740"  # Suriname
    m49_858 = "858"  # Uruguay
    m49_862 = "862"  # Venezuela (Bolivarian Republic of)
    m49_060 = "060"  # Bermuda
    m49_124 = "124"  # Canada
    m49_304 = "304"  # Greenland
    m49_666 = "666"  # Saint Pierre and Miquelon
    m49_840 = "840"  # United States of America
    m49_010 = "010"  # Antarctica
    m49_398 = "398"  # Kazakhstan
    m49_417 = "417"  # Kyrgyzstan
    m49_762 = "762"  # Tajikistan
    m49_795 = "795"  # Turkmenistan
    m49_860 = "860"  # Uzbekistan
    m49_156 = "156"  # China
    m49_344 = "344"  # China, Hong Kong Special Administrative Region
    m49_446 = "446"  # China, Macao Special Administrative Region
    m49_408 = "408"  # Democratic People's Republic of Korea
    m49_392 = "392"  # Japan
    m49_496 = "496"  # Mongolia
    m49_410 = "410"  # Republic of Korea
    m49_096 = "096"  # Brunei Darussalam
    m49_116 = "116"  # Cambodia
    m49_360 = "360"  # Indonesia
    m49_418 = "418"  # Lao People's Democratic Republic
    m49_458 = "458"  # Malaysia
    m49_104 = "104"  # Myanmar
    m49_608 = "608"  # Philippines
    m49_702 = "702"  # Singapore
    m49_764 = "764"  # Thailand
    m49_626 = "626"  # Timor-Leste
    m49_704 = "704"  # Viet Nam
    m49_004 = "004"  # Afghanistan
    m49_050 = "050"  # Bangladesh
    m49_064 = "064"  # Bhutan
    m49_356 = "356"  # India
    m49_364 = "364"  # Iran (Islamic Republic of)
    m49_462 = "462"  # Maldives
    m49_524 = "524"  # Nepal
    m49_586 = "586"  # Pakistan
    m49_144 = "144"  # Sri Lanka
    m49_051 = "051"  # Armenia
    m49_031 = "031"  # Azerbaijan
    m49_048 = "048"  # Bahrain
    m49_196 = "196"  # Cyprus
    m49_268 = "268"  # Georgia
    m49_368 = "368"  # Iraq
    m49_376 = "376"  # Israel
    m49_400 = "400"  # Jordan
    m49_414 = "414"  # Kuwait
    m49_422 = "422"  # Lebanon
    m49_512 = "512"  # Oman
    m49_634 = "634"  # Qatar
    m49_682 = "682"  # Saudi Arabia
    m49_275 = "275"  # State of Palestine
    m49_760 = "760"  # Syrian Arab Republic
    m49_792 = "792"  # Türkiye
    m49_784 = "784"  # United Arab Emirates
    m49_887 = "887"  # Yemen
    m49_112 = "112"  # Belarus
    m49_100 = "100"  # Bulgaria
    m49_203 = "203"  # Czechia
    m49_348 = "348"  # Hungary
    m49_616 = "616"  # Poland
    m49_498 = "498"  # Republic of Moldova
    m49_642 = "642"  # Romania
    m49_643 = "643"  # Russian Federation
    m49_703 = "703"  # Slovakia
    m49_804 = "804"  # Ukraine
    m49_248 = "248"  # Åland Islands
    m49_208 = "208"  # Denmark
    m49_233 = "233"  # Estonia
    m49_234 = "234"  # Faroe Islands
    m49_246 = "246"  # Finland
    m49_831 = "831"  # Guernsey
    m49_352 = "352"  # Iceland
    m49_372 = "372"  # Ireland
    m49_833 = "833"  # Isle of Man
    m49_832 = "832"  # Jersey
    m49_428 = "428"  # Latvia
    m49_440 = "440"  # Lithuania
    m49_578 = "578"  # Norway
    m49_744 = "744"  # Svalbard and Jan Mayen Islands
    m49_752 = "752"  # Sweden
    m49_826 = "826"  # United Kingdom of Great Britain and Northern Ireland
    m49_008 = "008"  # Albania
    m49_020 = "020"  # Andorra
    m49_070 = "070"  # Bosnia and Herzegovina
    m49_191 = "191"  # Croatia
    m49_292 = "292"  # Gibraltar
    m49_300 = "300"  # Greece
    m49_336 = "336"  # Holy See
    m49_380 = "380"  # Italy
    m49_470 = "470"  # Malta
    m49_499 = "499"  # Montenegro
    m49_807 = "807"  # North Macedonia
    m49_620 = "620"  # Portugal
    m49_674 = "674"  # San Marino
    m49_688 = "688"  # Serbia
    m49_705 = "705"  # Slovenia
    m49_724 = "724"  # Spain
    m49_040 = "040"  # Austria
    m49_056 = "056"  # Belgium
    m49_250 = "250"  # France
    m49_276 = "276"  # Germany
    m49_438 = "438"  # Liechtenstein
    m49_442 = "442"  # Luxembourg
    m49_492 = "492"  # Monaco
    m49_528 = "528"  # Netherlands (Kingdom of the)
    m49_756 = "756"  # Switzerland
    m49_036 = "036"  # Australia
    m49_162 = "162"  # Christmas Island
    m49_166 = "166"  # Cocos (Keeling) Islands
    m49_334 = "334"  # Heard Island and McDonald Islands
    m49_554 = "554"  # New Zealand
    m49_574 = "574"  # Norfolk Island
    m49_242 = "242"  # Fiji
    m49_540 = "540"  # New Caledonia
    m49_598 = "598"  # Papua New Guinea
    m49_090 = "090"  # Solomon Islands
    m49_548 = "548"  # Vanuatu
    m49_316 = "316"  # Guam
    m49_296 = "296"  # Kiribati
    m49_584 = "584"  # Marshall Islands
    m49_583 = "583"  # Micronesia (Federated States of)
    m49_520 = "520"  # Nauru
    m49_580 = "580"  # Northern Mariana Islands
    m49_585 = "585"  # Palau
    m49_581 = "581"  # United States Minor Outlying Islands
    m49_016 = "016"  # American Samoa
    m49_184 = "184"  # Cook Islands
    m49_258 = "258"  # French Polynesia
    m49_570 = "570"  # Niue
    m49_612 = "612"  # Pitcairn
    m49_882 = "882"  # Samoa
    m49_772 = "772"  # Tokelau
    m49_776 = "776"  # Tonga
    m49_798 = "798"  # Tuvalu
    m49_876 = "876"  # Wallis and Futuna Islands


class Country(StrEnum):
    """
    Geography definitions.

    Countries, see https://en.wikipedia.org/wiki/ISO_3166-1

     * AD: Andorra
     * AE: United Arab Emirates
     * AF: Afghanistan
     * AG: Antigua and Barbuda
     * AI: Anguilla
     * AL: Albania
     * AM: Armenia
     * AO: Angola
     * AQ: Antarctica
     * AR: Argentina
     * AS: American Samoa
     * AT: Austria
     * AU: Australia
     * AW: Aruba
     * AX: Åland Islands
     * AZ: Azerbaijan
     * BA: Bosnia and Herzegovina
     * BB: Barbados
     * BD: Bangladesh
     * BE: Belgium
     * BF: Burkina Faso
     * BG: Bulgaria
     * BH: Bahrain
     * BI: Burundi
     * BJ: Benin
     * BL: Saint Barthélemy
     * BM: Bermuda
     * BN: Brunei Darussalam
     * BO: Bolivia, Plurinational State of
     * BQ: Bonaire, Sint Eustatius and Saba
     * BR: Brazil
     * BS: Bahamas
     * BT: Bhutan
     * BV: Bouvet Island
     * BW: Botswana
     * BY: Belarus
     * BZ: Belize
     * CA: Canada
     * CC: Cocos (Keeling) Islands
     * CD: Congo, The Democratic Republic of the
     * CF: Central African Republic
     * CG: Congo
     * CH: Switzerland
     * CI: Côte d'Ivoire
     * CK: Cook Islands
     * CL: Chile
     * CM: Cameroon
     * CN: China
     * CO: Colombia
     * CR: Costa Rica
     * CU: Cuba
     * CV: Cabo Verde
     * CW: Curaçao
     * CX: Christmas Island
     * CY: Cyprus
     * CZ: Czechia
     * DE: Germany
     * DJ: Djibouti
     * DK: Denmark
     * DM: Dominica
     * DO: Dominican Republic
     * DZ: Algeria
     * EC: Ecuador
     * EE: Estonia
     * EG: Egypt
     * EH: Western Sahara
     * ER: Eritrea
     * ES: Spain
     * ET: Ethiopia
     * FI: Finland
     * FJ: Fiji
     * FK: Falkland Islands (Malvinas)
     * FM: Micronesia, Federated States of
     * FO: Faroe Islands
     * FR: France
     * GA: Gabon
     * GB: United Kingdom
     * GD: Grenada
     * GE: Georgia
     * GF: French Guiana
     * GG: Guernsey
     * GH: Ghana
     * GI: Gibraltar
     * GL: Greenland
     * GM: Gambia
     * GN: Guinea
     * GP: Guadeloupe
     * GQ: Equatorial Guinea
     * GR: Greece
     * GS: South Georgia and the South Sandwich Islands
     * GT: Guatemala
     * GU: Guam
     * GW: Guinea-Bissau
     * GY: Guyana
     * HK: Hong Kong
     * HM: Heard Island and McDonald Islands
     * HN: Honduras
     * HR: Croatia
     * HT: Haiti
     * HU: Hungary
     * ID: Indonesia
     * IE: Ireland
     * IL: Israel
     * IM: Isle of Man
     * IN: India
     * IO: British Indian Ocean Territory
     * IQ: Iraq
     * IR: Iran, Islamic Republic of
     * IS: Iceland
     * IT: Italy
     * JE: Jersey
     * JM: Jamaica
     * JO: Jordan
     * JP: Japan
     * KE: Kenya
     * KG: Kyrgyzstan
     * KH: Cambodia
     * KI: Kiribati
     * KM: Comoros
     * KN: Saint Kitts and Nevis
     * KP: Korea, Democratic People's Republic of
     * KR: Korea, Republic of
     * KW: Kuwait
     * KY: Cayman Islands
     * KZ: Kazakhstan
     * LA: Lao People's Democratic Republic
     * LB: Lebanon
     * LC: Saint Lucia
     * LI: Liechtenstein
     * LK: Sri Lanka
     * LR: Liberia
     * LS: Lesotho
     * LT: Lithuania
     * LU: Luxembourg
     * LV: Latvia
     * LY: Libya
     * MA: Morocco
     * MC: Monaco
     * MD: Moldova, Republic of
     * ME: Montenegro
     * MF: Saint Martin (French part)
     * MG: Madagascar
     * MH: Marshall Islands
     * MK: North Macedonia
     * ML: Mali
     * MM: Myanmar
     * MN: Mongolia
     * MO: Macao
     * MP: Northern Mariana Islands
     * MQ: Martinique
     * MR: Mauritania
     * MS: Montserrat
     * MT: Malta
     * MU: Mauritius
     * MV: Maldives
     * MW: Malawi
     * MX: Mexico
     * MY: Malaysia
     * MZ: Mozambique
     * NA: Namibia
     * NC: New Caledonia
     * NE: Niger
     * NF: Norfolk Island
     * NG: Nigeria
     * NI: Nicaragua
     * NL: Netherlands
     * NO: Norway
     * NP: Nepal
     * NR: Nauru
     * NU: Niue
     * NZ: New Zealand
     * OM: Oman
     * PA: Panama
     * PE: Peru
     * PF: French Polynesia
     * PG: Papua New Guinea
     * PH: Philippines
     * PK: Pakistan
     * PL: Poland
     * PM: Saint Pierre and Miquelon
     * PN: Pitcairn
     * PR: Puerto Rico
     * PS: Palestine, State of
     * PT: Portugal
     * PW: Palau
     * PY: Paraguay
     * QA: Qatar
     * RE: Réunion
     * RO: Romania
     * RS: Serbia
     * RU: Russian Federation
     * RW: Rwanda
     * SA: Saudi Arabia
     * SB: Solomon Islands
     * SC: Seychelles
     * SD: Sudan
     * SE: Sweden
     * SG: Singapore
     * SH: Saint Helena, Ascension and Tristan da Cunha
     * SI: Slovenia
     * SJ: Svalbard and Jan Mayen
     * SK: Slovakia
     * SL: Sierra Leone
     * SM: San Marino
     * SN: Senegal
     * SO: Somalia
     * SR: Suriname
     * SS: South Sudan
     * ST: Sao Tome and Principe
     * SV: El Salvador
     * SX: Sint Maarten (Dutch part)
     * SY: Syrian Arab Republic
     * SZ: Eswatini
     * TC: Turks and Caicos Islands
     * TD: Chad
     * TF: French Southern Territories
     * TG: Togo
     * TH: Thailand
     * TJ: Tajikistan
     * TK: Tokelau
     * TL: Timor-Leste
     * TM: Turkmenistan
     * TN: Tunisia
     * TO: Tonga
     * TR: Türkiye
     * TT: Trinidad and Tobago
     * TV: Tuvalu
     * TW: Taiwan, Province of China
     * TZ: Tanzania, United Republic of
     * UA: Ukraine
     * UG: Uganda
     * UM: United States Minor Outlying Islands
     * US: United States
     * UY: Uruguay
     * UZ: Uzbekistan
     * VA: Holy See (Vatican City State)
     * VC: Saint Vincent and the Grenadines
     * VE: Venezuela, Bolivarian Republic of
     * VG: Virgin Islands, British
     * VI: Virgin Islands, U.S.
     * VN: Viet Nam
     * VU: Vanuatu
     * WF: Wallis and Futuna
     * WS: Samoa
     * YE: Yemen
     * YT: Mayotte
     * ZA: South Africa
     * ZM: Zambia
     * ZW: Zimbabwe
    """

    # Countries
    AD = "AD"
    AE = "AE"
    AF = "AF"
    AG = "AG"
    AI = "AI"
    AL = "AL"
    AM = "AM"
    AO = "AO"
    AQ = "AQ"
    AR = "AR"
    AS = "AS"
    AT = "AT"
    AU = "AU"
    AW = "AW"
    AX = "AX"
    AZ = "AZ"
    BA = "BA"
    BB = "BB"
    BD = "BD"
    BE = "BE"
    BF = "BF"
    BG = "BG"
    BH = "BH"
    BI = "BI"
    BJ = "BJ"
    BL = "BL"
    BM = "BM"
    BN = "BN"
    BO = "BO"
    BQ = "BQ"
    BR = "BR"
    BS = "BS"
    BT = "BT"
    BV = "BV"
    BW = "BW"
    BY = "BY"
    BZ = "BZ"
    CA = "CA"
    CC = "CC"
    CD = "CD"
    CF = "CF"
    CG = "CG"
    CH = "CH"
    CI = "CI"
    CK = "CK"
    CL = "CL"
    CM = "CM"
    CN = "CN"
    CO = "CO"
    CR = "CR"
    CU = "CU"
    CV = "CV"
    CW = "CW"
    CX = "CX"
    CY = "CY"
    CZ = "CZ"
    DE = "DE"
    DJ = "DJ"
    DK = "DK"
    DM = "DM"
    DO = "DO"
    DZ = "DZ"
    EC = "EC"
    EE = "EE"
    EG = "EG"
    EH = "EH"
    ER = "ER"
    ES = "ES"
    ET = "ET"
    FI = "FI"
    FJ = "FJ"
    FK = "FK"
    FM = "FM"
    FO = "FO"
    FR = "FR"
    GA = "GA"
    GB = "GB"
    GD = "GD"
    GE = "GE"
    GF = "GF"
    GG = "GG"
    GH = "GH"
    GI = "GI"
    GL = "GL"
    GM = "GM"
    GN = "GN"
    GP = "GP"
    GQ = "GQ"
    GR = "GR"
    GS = "GS"
    GT = "GT"
    GU = "GU"
    GW = "GW"
    GY = "GY"
    HK = "HK"
    HM = "HM"
    HN = "HN"
    HR = "HR"
    HT = "HT"
    HU = "HU"
    ID = "ID"
    IE = "IE"
    IL = "IL"
    IM = "IM"
    IN = "IN"
    IO = "IO"
    IQ = "IQ"
    IR = "IR"
    IS = "IS"
    IT = "IT"
    JE = "JE"
    JM = "JM"
    JO = "JO"
    JP = "JP"
    KE = "KE"
    KG = "KG"
    KH = "KH"
    KI = "KI"
    KM = "KM"
    KN = "KN"
    KP = "KP"
    KR = "KR"
    KW = "KW"
    KY = "KY"
    KZ = "KZ"
    LA = "LA"
    LB = "LB"
    LC = "LC"
    LI = "LI"
    LK = "LK"
    LR = "LR"
    LS = "LS"
    LT = "LT"
    LU = "LU"
    LV = "LV"
    LY = "LY"
    MA = "MA"
    MC = "MC"
    MD = "MD"
    ME = "ME"
    MF = "MF"
    MG = "MG"
    MH = "MH"
    MK = "MK"
    ML = "ML"
    MM = "MM"
    MN = "MN"
    MO = "MO"
    MP = "MP"
    MQ = "MQ"
    MR = "MR"
    MS = "MS"
    MT = "MT"
    MU = "MU"
    MV = "MV"
    MW = "MW"
    MX = "MX"
    MY = "MY"
    MZ = "MZ"
    NA = "NA"
    NC = "NC"
    NE = "NE"
    NF = "NF"
    NG = "NG"
    NI = "NI"
    NL = "NL"
    NO = "NO"
    NP = "NP"
    NR = "NR"
    NU = "NU"
    NZ = "NZ"
    OM = "OM"
    PA = "PA"
    PE = "PE"
    PF = "PF"
    PG = "PG"
    PH = "PH"
    PK = "PK"
    PL = "PL"
    PM = "PM"
    PN = "PN"
    PR = "PR"
    PS = "PS"
    PT = "PT"
    PW = "PW"
    PY = "PY"
    QA = "QA"
    RE = "RE"
    RO = "RO"
    RS = "RS"
    RU = "RU"
    RW = "RW"
    SA = "SA"
    SB = "SB"
    SC = "SC"
    SD = "SD"
    SE = "SE"
    SG = "SG"
    SH = "SH"
    SI = "SI"
    SJ = "SJ"
    SK = "SK"
    SL = "SL"
    SM = "SM"
    SN = "SN"
    SO = "SO"
    SR = "SR"
    SS = "SS"
    ST = "ST"
    SV = "SV"
    SX = "SX"
    SY = "SY"
    SZ = "SZ"
    TC = "TC"
    TD = "TD"
    TF = "TF"
    TG = "TG"
    TH = "TH"
    TJ = "TJ"
    TK = "TK"
    TL = "TL"
    TM = "TM"
    TN = "TN"
    TO = "TO"
    TR = "TR"
    TT = "TT"
    TV = "TV"
    TW = "TW"
    TZ = "TZ"
    UA = "UA"
    UG = "UG"
    UM = "UM"
    US = "US"
    UY = "UY"
    UZ = "UZ"
    VA = "VA"
    VC = "VC"
    VE = "VE"
    VG = "VG"
    VI = "VI"
    VN = "VN"
    VU = "VU"
    WF = "WF"
    WS = "WS"
    YE = "YE"
    YT = "YT"
    ZA = "ZA"
    ZM = "ZM"
    ZW = "ZW"
