wuaschtikus
7/7/2016 - 10:12 AM

ISO 3166-3

//
//  Country.swift
//  Mia
//
//  Created by Grüner Martin on 07/07/16.
//  Copyright © 2016 Grüner Martin. All rights reserved.
//

import Foundation

open class Country {
    
    open var twoLetterShortHand:String!
    open var threeLetterShortHand:String!
    open var name:String!
    open var nationality:String!
    
    init(twoLetterShortHand:String, threeLetterShortHand:String, name:String, nationality:String) {
        self.twoLetterShortHand = twoLetterShortHand
        self.threeLetterShortHand = threeLetterShortHand
        self.name = name
        self.nationality = nationality
    }
}

public enum CountryType : String {
    
    static let allValues = [ANDORRA,
                            UNITED_ARAB_EMIRATES,
                            AFGHANISTAN,
                            ANTIGUA_AND_BARBUDA,
                            ANGUILLA,
                            ALBANIA,
                            ARMENIA,
                            NETHERLANDS_ANTILLES,
                            ANGOLA,
                            ANTARCTICA,
                            ARGENTINE,
                            AMERICAN_SAMOA,
                            AUSTRIA,
                            AUSTRALIA,
                            ARUBA,
                            ALAND_ISLANDS,
                            AZERBAIJAN,
                            BOSNIA_AND_HERZEGOVINA,
                            BARBADOS,
                            BANGLADESH,
                            BELGIUM,
                            BURKINA_FASO,
                            BULGARIA,
                            BAHRAIN,
                            BURUNDI,
                            BENIN,
                            SAINT_BARTHLEMY,
                            BERMUDA,
                            BRUNEI_DARUSSALAM,
                            BOLVIA,
                            BRAZIL,
                            BAHAMAS,
                            BHUTAN,
                            BOUVET_ISLAND,
                            BOTSWANA,
                            BELARUS,
                            BELIZE,
                            CANADA,
                            COCOS_ISLANDS,
                            CONGO_REPUBLIC,
                            CENTRAL_AFRICAN_REPUBLIC,
                            CONGO,
                            SWITZERLAND,
                            CODE_D_IVOIRE,
                            COOK_ISLANDS,
                            CAMEROON,
                            CHINA,
                            COLOMBIA,
                            COSTA_RICA,
                            CUBA,
                            CAPE_VERDE,
                            CHRISTMAS_ISLAND,
                            CYPRUS,
                            CZECH_REPUBLIC,
                            GERMANY,
                            DJIBOUTI,
                            DENMARK,
                            DOMINICA,
                            DOMINICAN_REPUBLIC,
                            ALGERIA,
                            ECUADOR,
                            ESTONIA,
                            EGYPT,
                            WESTERN_SAHARA,
                            ERITREA,
                            SPAIN,
                            ETHIOPIA,
                            FINLAND,
                            FIJI,
                            FALKLAND_ISLANDS,
                            MICRONESIA,
                            FAROE_ISLANDS,
                            FRANCE,
                            GABON,
                            UNITED_KINGDOM,
                            GRENADA,
                            GEORGIA,
                            FRENCH_GUIANA,
                            GUERNSEY,
                            GHANA,
                            GIBRALTAR,
                            GREENLAND,
                            GAMBIA,
                            GUINEA,
                            GUADELOUPE,
                            EQUATORIAL_GUINEA,
                            GREECE,
                            SOUTH_GEORGIA_AND_SANDWICH_ISLANDS,
                            GUATELMALA,
                            GUAM,
                            GUINEA_BISSAU,
                            GUYANA,
                            HONG_KONG,
                            HEARD_ISLAND_AND_MCDONALD_ISLANDS,
                            HONDURAS,
                            CROATIA,
                            HAITI,
                            HUNGARY,
                            INDONESIA,
                            IRELAND,
                            ISRAEL,
                            ISLE_OF_MAN,
                            INDIA,
                            BRITISH_INDIAN_OCEAN_TERRITORY,
                            IRAQ,
                            IRAN,
                            ICELAND,
                            ITALY,
                            JERSEY,
                            JAMAICA,
                            JORDAN,
                            JAPAN,
                            KENYA,
                            KYRGYZSTAN,
                            CAMBODIA,
                            KIRIBATI,
                            COMOROS,
                            SAINT_KITTS_AND_NEVIS,
                            NORTH_KOREA,
                            SOUTH_KOREA,
                            KUWAIT,
                            CAYMAN_ISLANDS,
                            KAZAKHSTAN,
                            LAO,
                            LEBANON,
                            SAINT_LUCIA,
                            LIECHTENSTEIN,
                            SRI_LANKA,
                            LIBERIA,
                            LESOTHO,
                            LITHUANIA,
                            LUXEMBOURG,
                            LATVIA,
                            LIBYAN,
                            MOROCCO,
                            MONACO,
                            MOLDOVA,
                            MONTENEGRO,
                            SAINT_MARTIN,
                            MADAGASCAR,
                            MARSHALL_ISLANDS,
                            MACEDONIA,
                            MALI,
                            MYANMAR,
                            MONGOLIA,
                            MACAO,
                            NORTHERN_MARIANA_ISLANDS,
                            MARTINIQUE,
                            MAURITANIA,
                            MONTSERRAT,
                            MALTA,
                            MAURITIUS,
                            MALDIVES,
                            MALAWI,
                            MEXICO,
                            MALAYSIA,
                            MOZAMBIQUE,
                            NAMIBIA,
                            NEW_CALEDONIA,
                            NIGER,
                            NORFOLK_ISLAND,
                            NIGERIA,
                            NICARAGUA,
                            NETHERLANDS,
                            NORWAY,
                            NEPAL,
                            NAURU,
                            NIUE,
                            NEW_ZEALAND,
                            OMAN,
                            PANAMA,
                            PERU,
                            FRENCH_POLYNESIA,
                            PAPUA_NEW_GUINEA,
                            PHILIPPINES,
                            PAKISTAN,
                            POLAND,
                            SAINT_PIERRE_AND_MIQUELON,
                            PITCAIRN,
                            PUERTO_RICO,
                            PALESTINIA,
                            PORTUGAL,
                            PALAU,
                            PARAGUAY,
                            QATAR,
                            REUNION,
                            ROMANIA,
                            SERBIA,
                            RUSSIA,
                            RWANDA,
                            SAUDI_ARABIA,
                            SOLOMON_ISLANDS,
                            SEYCHELLES,
                            SUDAN,
                            SWEDEN,
                            SINGAPORE,
                            SAINT_HELENA,
                            SLOVENIA,
                            SVALBARD_AND_JAN_MAYEN,
                            SLOVAKIA,
                            SIERRA_LEONE,
                            SAN_MARINO,
                            SENEGAL,
                            SOMALIA,
                            SURINAME,
                            SAO_TOME_AND_PRINCIPE,
                            EL_SALVADOR,
                            SYRIA,
                            SWAZILAND,
                            TURKS_AND_CAICOS_ISLANDS,
                            CHAD,
                            FRENCH_SOUTHERN_TERRITORIES,
                            TOGO,
                            THAILAND,
                            TAJIKISTAN,
                            TOKELAU,
                            TIMOR_LESTE,
                            TURKMENISTAN,
                            TUNISIA,
                            TONGA,
                            TURKEY,
                            TRINIDAD_AND_TOBAGO,
                            TUVALU,
                            TAIWAN,
                            TANZANIA,
                            UKRAINE,
                            UGANDA,
                            UNITED_CountryS_MINOR_OUTLYING_ISLANDS,
                            UNITED_CountryS,
                            URUGUAY,
                            UZBEKISTANI,
                            VATICAN,
                            SAINT_VINCENT_AND_THE_GRENADINES,
                            VENEZUELA,
                            VIRGIN_ISLANDS_BRITISH,
                            VIRGIN_ISLANDS_UNITED_CountryS,
                            VIETNAM,
                            VANUATU,
                            WALLIS_AND_FUTUNA,
                            SAMOA,
                            YEMEN,
                            MAYOTTE,
                            SOUTH_AFRICA,
                            ZAMBIA,
                            ZIMBABWE
                            ]
    
    
    case ANDORRA = "AND"
    case UNITED_ARAB_EMIRATES = "ARE"
    case AFGHANISTAN = "AFG"
    case ANTIGUA_AND_BARBUDA = "ATG"
    case ANGUILLA = "AIA"
    case ALBANIA = "ALB"
    case ARMENIA = "ARM"
    case NETHERLANDS_ANTILLES = "ANT"
    case ANGOLA = "AGO"
    case ANTARCTICA = "ATA"
    case ARGENTINE = "ARG"
    case AMERICAN_SAMOA = "AS"
    case AUSTRIA = "AUT"
    case AUSTRALIA = "AUS"
    case ARUBA = "ABW"
    case ALAND_ISLANDS = "ALA"
    case AZERBAIJAN = "AZE"
    case BOSNIA_AND_HERZEGOVINA = "BIH"
    case BARBADOS = "BRB"
    case BANGLADESH = "BGD"
    case BELGIUM = "BEL"
    case BURKINA_FASO = "BFA"
    case BULGARIA = "BGR"
    case BAHRAIN = "BHR"
    case BURUNDI = "BDI"
    case BENIN = "BEN"
    case SAINT_BARTHLEMY = "BLM"
    case BERMUDA = "BMU"
    case BRUNEI_DARUSSALAM = "BRN"
    case BOLVIA = "BOL"
    case BRAZIL = "BRA"
    case BAHAMAS = "BHS"
    case BHUTAN = "BTN"
    case BOUVET_ISLAND = "BVT"
    case BOTSWANA = "BWA"
    case BELARUS = "BLR"
    case BELIZE = "BLZ"
    case CANADA = "CAN"
    case COCOS_ISLANDS = "CCK"
    case CONGO_REPUBLIC = "COD"
    case CENTRAL_AFRICAN_REPUBLIC = "CAF"
    case CONGO = "COG"
    case SWITZERLAND = "CHE"
    case CODE_D_IVOIRE = "CIV"
    case COOK_ISLANDS = "COK"
    case CHILE = "CHL"
    case CAMEROON = "CMR"
    case CHINA = "CHN"
    case COLOMBIA = "COL"
    case COSTA_RICA = "CRI"
    case CUBA = "CUB"
    case CAPE_VERDE = "CPV"
    case CHRISTMAS_ISLAND = "CXR"
    case CYPRUS = "CYP"
    case CZECH_REPUBLIC = "CZE"
    case GERMANY = "GER"
    case DJIBOUTI = "DJI"
    case DENMARK = "DNK"
    case DOMINICA = "DMA"
    case DOMINICAN_REPUBLIC = "DOM"
    case ALGERIA = "DZA"
    case ECUADOR = "ECU"
    case ESTONIA = "EST"
    case EGYPT = "EGY"
    case WESTERN_SAHARA = "ESH"
    case ERITREA = "ERI"
    case SPAIN = "ESP"
    case ETHIOPIA = "ETH"
    case FINLAND = "FIN"
    case FIJI = "FJI"
    case FALKLAND_ISLANDS = "FLK"
    case MICRONESIA = "FSM"
    case FAROE_ISLANDS = "FRO"
    case FRANCE = "FRA"
    case GABON = "GAB"
    case UNITED_KINGDOM = "GBR"
    case GRENADA = "GRD"
    case GEORGIA = "GEO"
    case FRENCH_GUIANA = "GUF"
    case GUERNSEY = "GGY"
    case GHANA = "GHA"
    case GIBRALTAR = "GIB"
    case GREENLAND = "GRL"
    case GAMBIA = "GMB"
    case GUINEA = "GIN"
    case GUADELOUPE = "GLP"
    case EQUATORIAL_GUINEA = "GNQ"
    case GREECE = "GRC"
    case SOUTH_GEORGIA_AND_SANDWICH_ISLANDS = "SGS"
    case GUATELMALA = "GTM"
    case GUAM = "GUM"
    case GUINEA_BISSAU = "GNB"
    case GUYANA = "GUY"
    case HONG_KONG = "HKG"
    case HEARD_ISLAND_AND_MCDONALD_ISLANDS = "HMD"
    case HONDURAS = "HND"
    case CROATIA = "HRV"
    case HAITI = "HTI"
    case HUNGARY = "HUN"
    case INDONESIA = "IDN"
    case IRELAND = "IRL"
    case ISRAEL = "ISR"
    case ISLE_OF_MAN = "IMN"
    case INDIA = "IND"
    case BRITISH_INDIAN_OCEAN_TERRITORY = "IOT"
    case IRAQ = "IRQ"
    case IRAN = "IRN"
    case ICELAND = "ISL"
    case ITALY = "ITA"
    case JERSEY = "JEY"
    case JAMAICA = "JAM"
    case JORDAN = "JOR"
    case JAPAN = "JPN"
    case KENYA = "KEN"
    case KYRGYZSTAN = "KGZ"
    case CAMBODIA = "KHM"
    case KIRIBATI = "KIR"
    case COMOROS = "COM"
    case SAINT_KITTS_AND_NEVIS = "KNA"
    case NORTH_KOREA = "PRK"
    case SOUTH_KOREA = "KOR"
    case KUWAIT = "KWT"
    case CAYMAN_ISLANDS = "CYM"
    case KAZAKHSTAN = "KAZ"
    case LAO = "LAO"
    case LEBANON = "LBN"
    case SAINT_LUCIA = "LCA"
    case LIECHTENSTEIN = "LIE"
    case SRI_LANKA = "LKA"
    case LIBERIA = "LBR"
    case LESOTHO = "LSO"
    case LITHUANIA = "LTU"
    case LUXEMBOURG = "LUX"
    case LATVIA = "LVA"
    case LIBYAN = "LBY"
    case MOROCCO = "MAR"
    case MONACO = "MCO"
    case MOLDOVA = "MDA"
    case MONTENEGRO = "MNE"
    case SAINT_MARTIN = "MAF"
    case MADAGASCAR = "MDG"
    case MARSHALL_ISLANDS = "MHL"
    case MACEDONIA = "MKD"
    case MALI = "MLI"
    case MYANMAR = "MMR"
    case MONGOLIA = "MNG"
    case MACAO = "MAC"
    case NORTHERN_MARIANA_ISLANDS = "MNP"
    case MARTINIQUE = "MTQ"
    case MAURITANIA = "MRT"
    case MONTSERRAT = "MSR"
    case MALTA = "MLT"
    case MAURITIUS = "MUS"
    case MALDIVES = "MDV"
    case MALAWI = "MWI"
    case MEXICO = "MEX"
    case MALAYSIA = "MYS"
    case MOZAMBIQUE = "MOZ"
    case NAMIBIA = "NAM"
    case NEW_CALEDONIA = "NCL"
    case NIGER = "NER"
    case NORFOLK_ISLAND = "NFK"
    case NIGERIA = "NGA"
    case NICARAGUA = "NIC"
    case NETHERLANDS = "NLD"
    case NORWAY = "NOR"
    case NEPAL = "NPL"
    case NAURU = "NRU"
    case NIUE = "NIU"
    case NEW_ZEALAND = "NZL"
    case OMAN = "OMN"
    case PANAMA = "PAN"
    case PERU = "PER"
    case FRENCH_POLYNESIA = "PYF"
    case PAPUA_NEW_GUINEA = "PNG"
    case PHILIPPINES = "PHL"
    case PAKISTAN = "PAK"
    case POLAND = "POL"
    case SAINT_PIERRE_AND_MIQUELON = "SPM"
    case PITCAIRN = "PCN"
    case PUERTO_RICO = "PRI"
    case PALESTINIA = "PSE"
    case PORTUGAL = "PRT"
    case PALAU = "PLW"
    case PARAGUAY = "PRY"
    case QATAR = "QAT"
    case REUNION = "REU"
    case ROMANIA = "ROU"
    case SERBIA = "SRB"
    case RUSSIA = "RUS"
    case RWANDA = "RWA"
    case SAUDI_ARABIA = "SAU"
    case SOLOMON_ISLANDS = "SLB"
    case SEYCHELLES = "SYC"
    case SUDAN = "SDN"
    case SWEDEN = "SWE"
    case SINGAPORE = "SGP"
    case SAINT_HELENA = "SHN"
    case SLOVENIA = "SVN"
    case SVALBARD_AND_JAN_MAYEN = "SJM"
    case SLOVAKIA = "SVK"
    case SIERRA_LEONE = "SLE"
    case SAN_MARINO = "SMR"
    case SENEGAL = "SEN"
    case SOMALIA = "SOM"
    case SURINAME = "SUR"
    case SAO_TOME_AND_PRINCIPE = "STP"
    case EL_SALVADOR = "SLV"
    case SYRIA = "SYR"
    case SWAZILAND = "SWZ"
    case TURKS_AND_CAICOS_ISLANDS = "TCA"
    case CHAD = "TCD"
    case FRENCH_SOUTHERN_TERRITORIES = "ATF"
    case TOGO = "TGO"
    case THAILAND = "THA"
    case TAJIKISTAN = "TJK"
    case TOKELAU = "TKL"
    case TIMOR_LESTE = "TLS"
    case TURKMENISTAN = "TKM"
    case TUNISIA = "TUN"
    case TONGA = "TON"
    case TURKEY = "TUR"
    case TRINIDAD_AND_TOBAGO = "TTO"
    case TUVALU = "TUV"
    case TAIWAN = "TWN"
    case TANZANIA = "TZA"
    case UKRAINE = "UKR"
    case UGANDA = "UGA"
    case UNITED_CountryS_MINOR_OUTLYING_ISLANDS = "UMI"
    case UNITED_CountryS = "USA"
    case URUGUAY = "URY"
    case UZBEKISTANI = "UZB"
    case VATICAN = "VATICAN"
    case SAINT_VINCENT_AND_THE_GRENADINES = "VCT"
    case VENEZUELA = "VEN"
    case VIRGIN_ISLANDS_BRITISH = "VGB"
    case VIRGIN_ISLANDS_UNITED_CountryS = "VIR"
    case VIETNAM = "VNM"
    case VANUATU = "VUT"
    case WALLIS_AND_FUTUNA = "WLF"
    case SAMOA = "WSM"
    case YEMEN = "YEM"
    case MAYOTTE = "MYT"
    case SOUTH_AFRICA = "ZAF"
    case ZAMBIA = "ZMB"
    case ZIMBABWE = "ZWE"
    
    public func countryInfo() -> Country {
        
        switch self {
            
        case .ANDORRA:
            return Country(twoLetterShortHand: "AD", threeLetterShortHand: "AND", name: "Andorra", nationality: "Andorran")
            
        case .UNITED_ARAB_EMIRATES:
            return Country(twoLetterShortHand: "AE", threeLetterShortHand: "ARE", name: "United Arab Emirates", nationality: "Emirati")
            
        case .AFGHANISTAN:
            return Country(twoLetterShortHand: "AF", threeLetterShortHand: "AFG", name: "Afghanistan", nationality: "Afghan")
            
        case .ANTIGUA_AND_BARBUDA:
            return Country(twoLetterShortHand: "AG", threeLetterShortHand: "ATG", name: "Antigua and Barbuda", nationality: "Antiguan, Barbudan")
            
        case .ANGUILLA:
            return Country(twoLetterShortHand: "AI", threeLetterShortHand: "AIA", name: "Anguilla", nationality: "Anguillan")
            
        case .ALBANIA:
            return Country(twoLetterShortHand: "AL", threeLetterShortHand: "ALB", name: "Albania", nationality: "Albanian")
            
        case .ARMENIA:
            return Country(twoLetterShortHand: "AM", threeLetterShortHand: "ARM", name: "Armenia", nationality: "Armenian")
            
        case .NETHERLANDS_ANTILLES:
            return Country(twoLetterShortHand: "AN", threeLetterShortHand: "ANT", name: "Netherlands Antilles", nationality: "Antillean")
            
        case .ANGOLA:
            return Country(twoLetterShortHand: "AO", threeLetterShortHand: "AGO", name: "Angola", nationality: "Angolan")
            
        case .ANTARCTICA:
            return Country(twoLetterShortHand: "AQ", threeLetterShortHand: "ATA", name: "Antarctica", nationality: "Antarctic")
            
        case .ARGENTINE:
            return Country(twoLetterShortHand: "AR", threeLetterShortHand: "ARG", name: "Argentina", nationality: "Argentinian")
            
        case .AMERICAN_SAMOA:
            return Country(twoLetterShortHand: "AS", threeLetterShortHand: "ASM", name: "American Samoa", nationality: "American Samoan")
            
        case .AUSTRIA:
            return Country(twoLetterShortHand: "AT", threeLetterShortHand: "AUT", name: "Austria", nationality: "Austrian")
            
        case .AUSTRALIA:
            return Country(twoLetterShortHand: "AU", threeLetterShortHand: "AUS", name: "Australia", nationality: "Australian")
            
        case .ARUBA:
            return Country(twoLetterShortHand: "AW", threeLetterShortHand: "ABW", name: "Aruba", nationality: "Aruban")
            
        case .ALAND_ISLANDS:
            return Country(twoLetterShortHand: "AX", threeLetterShortHand: "ALA", name: "Aland Islands", nationality: "")
            
        case .AZERBAIJAN:
            return Country(twoLetterShortHand: "AZ", threeLetterShortHand: "AZE", name: "Azerbaijan", nationality: "Azerbaijani, Azeri")
            
        case .BOSNIA_AND_HERZEGOVINA:
            return Country(twoLetterShortHand: "BA", threeLetterShortHand: "BIH", name: "Bosnia and Herzegovina", nationality: "Bosnian, Bosniak, Herzegovinian")
            
        case .BARBADOS:
            return Country(twoLetterShortHand: "BB", threeLetterShortHand: "BRB", name: "Barbados", nationality: "Barbadian")
            
        case .BANGLADESH:
            return Country(twoLetterShortHand: "BD", threeLetterShortHand: "BGD", name: "Bangladesh", nationality: "Bangladeshi")
            
        case .BELGIUM:
            return Country(twoLetterShortHand: "BE", threeLetterShortHand: "BEL", name: "Belgium", nationality: "Belgian")
            
        case .BURKINA_FASO:
            return Country(twoLetterShortHand: "BF", threeLetterShortHand: "BFA", name: "Burkina Faso", nationality: "Burkinabe")
            
        case .BULGARIA:
            return Country(twoLetterShortHand: "BG", threeLetterShortHand: "BGR", name: "Bulgaria", nationality: "Bulgarian")
            
        case .BAHRAIN:
            return Country(twoLetterShortHand: "BH", threeLetterShortHand: "BHR", name: "Bahrain", nationality: "Bahraini")
            
        case .BURUNDI:
            return Country(twoLetterShortHand: "BI", threeLetterShortHand: "BDI", name: "Burundi", nationality: "Burundian")
            
        case .BENIN:
            return Country(twoLetterShortHand: "BJ", threeLetterShortHand: "BEN", name: "Benin", nationality: "Beninese")
            
        case .SAINT_BARTHLEMY:
            return Country(twoLetterShortHand: "BL", threeLetterShortHand: "BLM", name: "Saint Barthlemy", nationality: "")
            
        case .BERMUDA:
            return Country(twoLetterShortHand: "BM", threeLetterShortHand: "BMU", name: "Bermuda", nationality: "Bermudian, Bermudan")
            
        case .BRUNEI_DARUSSALAM:
            return Country(twoLetterShortHand: "BN", threeLetterShortHand: "BRN", name: "Brunei Darussalam", nationality: "Bruneian")
            
        case .BOLVIA:
            return Country(twoLetterShortHand: "BO", threeLetterShortHand: "BOL", name: "Bolivia", nationality: "Bolivian")
            
        case .BRAZIL:
            return Country(twoLetterShortHand: "BR", threeLetterShortHand: "BRA", name: "Brazil", nationality: "Brazilian")
            
        case .BAHAMAS:
            return Country(twoLetterShortHand: "BS", threeLetterShortHand: "BHS", name: "Bahamas", nationality: "Bahamian")
            
        case .BHUTAN:
            return Country(twoLetterShortHand: "BT", threeLetterShortHand: "BTN", name: "Bhutan", nationality: "Bhutanese")
            
        case .BOUVET_ISLAND:
            return Country(twoLetterShortHand: "BV", threeLetterShortHand: "BVT", name: "Bouvet Island", nationality: "")
            
        case .BOTSWANA:
            return Country(twoLetterShortHand: "BW", threeLetterShortHand: "BWA", name: "Botswana", nationality: "Botswanan")
            
        case .BELARUS:
            return Country(twoLetterShortHand: "BY", threeLetterShortHand: "BLR", name: "Belarus", nationality: "Belarusian")
            
        case .BELIZE:
            return Country(twoLetterShortHand: "BZ", threeLetterShortHand: "BLZ", name: "Belize", nationality: "Belizean")
            
        case .CANADA:
            return Country(twoLetterShortHand: "CA", threeLetterShortHand: "CAN", name: "Canada", nationality: "Canadian")
            
        case .COCOS_ISLANDS:
            return Country(twoLetterShortHand: "CC", threeLetterShortHand: "CCK", name: "Cocos (Keeling) Islands", nationality: "")
            
        case .CONGO_REPUBLIC:
            return Country(twoLetterShortHand: "CD", threeLetterShortHand: "COD", name: "Congo the Democratic Republic of the", nationality: "Congolese")
            
        case .CENTRAL_AFRICAN_REPUBLIC:
            return Country(twoLetterShortHand: "CF", threeLetterShortHand: "CAF", name: "Central African Republic", nationality: "Central African")
            
        case .CONGO:
            return Country(twoLetterShortHand: "CG", threeLetterShortHand: "COG", name: "Congo", nationality: "Congolese")
            
        case .SWITZERLAND:
            return Country(twoLetterShortHand: "CH", threeLetterShortHand: "CHE", name: "Switzerland", nationality: "Swiss")
            
        case .CODE_D_IVOIRE:
            return Country(twoLetterShortHand: "CI", threeLetterShortHand: "CIV", name: "Cote d'Ivoire", nationality: "Ivorian")
            
        case .COOK_ISLANDS:
            return Country(twoLetterShortHand: "CK", threeLetterShortHand: "COK", name: "Cook Islands", nationality: "")
            
        case .CHILE:
            return Country(twoLetterShortHand: "CL", threeLetterShortHand: "CHL", name: "Chile", nationality: "Chilean")
            
        case .CAMEROON:
            return Country(twoLetterShortHand: "CM", threeLetterShortHand: "CMR", name: "Cameroon", nationality: "Cameroonian")
            
        case .CHINA:
            return Country(twoLetterShortHand: "CN", threeLetterShortHand: "CHN", name: "China", nationality: "Chinese")
            
        case .COLOMBIA:
            return Country(twoLetterShortHand: "CO", threeLetterShortHand: "COL", name: "Colombia", nationality: "Colombian")
            
        case .COSTA_RICA:
            return Country(twoLetterShortHand: "CR", threeLetterShortHand: "CRI", name: "Costa Rica", nationality: "Costa Rican")
            
        case .CUBA:
            return Country(twoLetterShortHand: "CU", threeLetterShortHand: "CUB", name: "Cuba", nationality: "Cuban")
            
        case .CAPE_VERDE:
            return Country(twoLetterShortHand: "CV", threeLetterShortHand: "CPV", name: "Cape Verde", nationality: "Cape Verdean")
            
        case .CHRISTMAS_ISLAND:
            return Country(twoLetterShortHand: "CX", threeLetterShortHand: "CXR", name: "Christmas Island", nationality: "")
            
        case .CYPRUS:
            return Country(twoLetterShortHand: "CY", threeLetterShortHand: "CYP", name: "Cyprus", nationality: "Cypriot")
            
        case .CZECH_REPUBLIC:
            return Country(twoLetterShortHand: "CZ", threeLetterShortHand: "CZE", name: "Czech Republic", nationality: "Czech")
            
        case .GERMANY:
            return Country(twoLetterShortHand: "DE", threeLetterShortHand: "DEU", name: "Germany", nationality: "German")
            
        case .DJIBOUTI:
            return Country(twoLetterShortHand: "DJ", threeLetterShortHand: "DJI", name: "Djibouti", nationality: "Djiboutian")
            
        case .DENMARK:
            return Country(twoLetterShortHand: "DK", threeLetterShortHand: "DNK", name: "Denmark", nationality: "Danish")
            
        case .DOMINICA:
            return Country(twoLetterShortHand: "DM", threeLetterShortHand: "DMA", name: "Dominica", nationality: "Dominican")
            
        case .DOMINICAN_REPUBLIC:
            return Country(twoLetterShortHand: "DO", threeLetterShortHand: "DOM", name: "Dominican Republic", nationality: "Dominican")
            
        case .ALGERIA:
            return Country(twoLetterShortHand: "DZ", threeLetterShortHand: "DZA", name: "Algeria", nationality: "Algerian")
            
        case .ECUADOR:
            return Country(twoLetterShortHand: "EC", threeLetterShortHand: "ECU", name: "Ecuador", nationality: "Ecuadorian")
            
        case .ESTONIA:
            return Country(twoLetterShortHand: "EE", threeLetterShortHand: "EST", name: "Estonia", nationality: "Estonian")
            
        case .EGYPT:
            return Country(twoLetterShortHand: "EG", threeLetterShortHand: "EGY", name: "Egypt", nationality: "Egyptian")
            
        case .WESTERN_SAHARA:
            return Country(twoLetterShortHand: "EH", threeLetterShortHand: "ESH", name: "Western Sahara", nationality: "Sahraw, Sahrawian, Sahraouian")
            
        case .ERITREA:
            return Country(twoLetterShortHand: "ER", threeLetterShortHand: "ERI", name: "Eritrea", nationality: "Eritrean")
            
        case .SPAIN:
            return Country(twoLetterShortHand: "ES", threeLetterShortHand: "ESP", name: "Spain", nationality: "Spanish")
            
        case .ETHIOPIA:
            return Country(twoLetterShortHand: "ET", threeLetterShortHand: "ETH", name: "Ethiopia", nationality: "Ethiopian")
            
        case .FINLAND:
            return Country(twoLetterShortHand: "FI", threeLetterShortHand: "FIN", name: "Finland", nationality: "Finnish")
            
        case .FIJI:
            return Country(twoLetterShortHand: "FJ", threeLetterShortHand: "FJI", name: "Fiji", nationality: "Fijian")
            
        case .FALKLAND_ISLANDS:
            return Country(twoLetterShortHand: "FK", threeLetterShortHand: "FLK", name: "Falkland Islands (Malvinas)", nationality: "")
            
        case .MICRONESIA:
            return Country(twoLetterShortHand: "FM", threeLetterShortHand: "FSM", name: "Micronesia Federated Countrys of", nationality: "Micronesian")
            
        case .FAROE_ISLANDS:
            return Country(twoLetterShortHand: "FO", threeLetterShortHand: "FRO", name: "Faroe Islands", nationality: "Faroese")
            
        case .FRANCE:
            return Country(twoLetterShortHand: "FR", threeLetterShortHand: "FRA", name: "France", nationality: "French")
            
        case .GABON:
            return Country(twoLetterShortHand: "GA", threeLetterShortHand: "GAB", name: "Gabon", nationality: "Gabonese")
            
        case .UNITED_KINGDOM:
            return Country(twoLetterShortHand: "GB", threeLetterShortHand: "GBR", name: "United Kingdom", nationality: "British")
            
        case .GRENADA:
            return Country(twoLetterShortHand: "GD", threeLetterShortHand: "GRD", name: "Grenada", nationality: "Grenadian")
            
        case .GEORGIA:
            return Country(twoLetterShortHand: "GE", threeLetterShortHand: "GEO", name: "Georgia", nationality: "Georgian")
            
        case .FRENCH_GUIANA:
            return Country(twoLetterShortHand: "GF", threeLetterShortHand: "GUF", name: "French Guiana", nationality: "French Guianese")
            
        case .GUERNSEY:
            return Country(twoLetterShortHand: "GG", threeLetterShortHand: "GGY", name: "Guernsey", nationality: "")
            
        case .GHANA:
            return Country(twoLetterShortHand: "GH", threeLetterShortHand: "GHA", name: "Ghana", nationality: "Ghanaian")
            
        case .GIBRALTAR:
            return Country(twoLetterShortHand: "GI", threeLetterShortHand: "GIB", name: "Gibraltar", nationality: "")
            
        case .GREENLAND:
            return Country(twoLetterShortHand: "GL", threeLetterShortHand: "GRL", name: "Greenland", nationality: "Greenlandic")
            
        case .GAMBIA:
            return Country(twoLetterShortHand: "GM", threeLetterShortHand: "GMB", name: "Gambia", nationality: "Gambian")
            
        case .GUINEA:
            return Country(twoLetterShortHand: "GN", threeLetterShortHand: "GIN", name: "Guinea", nationality: "Guinean")
            
        case .GUADELOUPE:
            return Country(twoLetterShortHand: "GP", threeLetterShortHand: "GLP", name: "Guadeloupe", nationality: "")
            
        case .EQUATORIAL_GUINEA:
            return Country(twoLetterShortHand: "GQ", threeLetterShortHand: "GNQ", name: "Equatorial Guinea", nationality: "Equatorial Guinean, Equatoguinean")
            
        case .GREECE:
            return Country(twoLetterShortHand: "GR", threeLetterShortHand: "GRC", name: "Greece", nationality: "Greek, Hellenic")
            
        case .SOUTH_GEORGIA_AND_SANDWICH_ISLANDS:
            return Country(twoLetterShortHand: "GS", threeLetterShortHand: "SGS", name: "South Georgia and the South Sandwich Islands", nationality: "")
            
        case .GUATELMALA:
            return Country(twoLetterShortHand: "GT", threeLetterShortHand: "GTM", name: "Guatemala", nationality: "Guatemalan")
            
        case .GUAM:
            return Country(twoLetterShortHand: "GU", threeLetterShortHand: "GUM", name: "Guam", nationality: "Guamanian")
            
        case .GUINEA_BISSAU:
            return Country(twoLetterShortHand: "GW", threeLetterShortHand: "GNB", name: "Guinea-Bissau", nationality: "Guinean")
            
        case .GUYANA:
            return Country(twoLetterShortHand: "GY", threeLetterShortHand: "GUY", name: "Guyana", nationality: "Guyanese")
            
        case .HONG_KONG:
            return Country(twoLetterShortHand: "HK", threeLetterShortHand: "HKG", name: "Hong Kong", nationality: "Hong Kong, Hongkongese")
            
        case .HEARD_ISLAND_AND_MCDONALD_ISLANDS:
            return Country(twoLetterShortHand: "HM", threeLetterShortHand: "HMD", name: "Heard Island and McDonald Islands", nationality: "")
            
        case .HONDURAS:
            return Country(twoLetterShortHand: "HN", threeLetterShortHand: "HND", name: "Honduras", nationality: "Honduran")
            
        case .CROATIA:
            return Country(twoLetterShortHand: "HR", threeLetterShortHand: "HRV", name: "Croatia", nationality: "Croatian")
            
        case .HAITI:
            return Country(twoLetterShortHand: "HT", threeLetterShortHand: "HTI", name: "Haiti", nationality: "Haitian")
            
        case .HUNGARY:
            return Country(twoLetterShortHand: "HU", threeLetterShortHand: "HUN", name: "Hungary", nationality: "Hungarian")
            
        case .INDONESIA:
            return Country(twoLetterShortHand: "ID", threeLetterShortHand: "IDN", name: "Indonesia", nationality: "Indonesian")
            
        case .IRELAND:
            return Country(twoLetterShortHand: "IE", threeLetterShortHand: "IRL", name: "Ireland", nationality: "Irish")
            
        case .ISRAEL:
            return Country(twoLetterShortHand: "IL", threeLetterShortHand: "ISR", name: "Israel", nationality: "Israeli")
            
        case .ISLE_OF_MAN:
            return Country(twoLetterShortHand: "IM", threeLetterShortHand: "IMN", name: "Isle of Man", nationality: "Manx")
            
        case .INDIA:
            return Country(twoLetterShortHand: "IN", threeLetterShortHand: "IND", name: "India", nationality: "Indian")
            
        case .BRITISH_INDIAN_OCEAN_TERRITORY:
            return Country(twoLetterShortHand: "IO", threeLetterShortHand: "IOT", name: "British Indian Ocean Territory", nationality: "")
            
        case .IRAQ:
            return Country(twoLetterShortHand: "IQ", threeLetterShortHand: "IRQ", name: "Iraq", nationality: "Iraqi")
            
        case .IRAN:
            return Country(twoLetterShortHand: "IR", threeLetterShortHand: "IRN", name: "Iran Islamic Republic of", nationality: "Iranian, Persian")
            
        case .ICELAND:
            return Country(twoLetterShortHand: "IS", threeLetterShortHand: "ISL", name: "Iceland", nationality: "Icelandic")
            
        case .ITALY:
            return Country(twoLetterShortHand: "IT", threeLetterShortHand: "ITA", name: "Italy", nationality: "Italian")
            
        case .JERSEY:
            return Country(twoLetterShortHand: "JE", threeLetterShortHand: "JEY", name: "Jersey", nationality: "")
            
        case .JAMAICA:
            return Country(twoLetterShortHand: "JM", threeLetterShortHand: "JAM", name: "Jamaica", nationality: "Jamaican")
            
        case .JORDAN:
            return Country(twoLetterShortHand: "JO", threeLetterShortHand: "JOR", name: "Jordan", nationality: "Jordanian")
            
        case .JAPAN:
            return Country(twoLetterShortHand: "JP", threeLetterShortHand: "JPN", name: "Japan", nationality: "Japanese")
            
        case .KENYA:
            return Country(twoLetterShortHand: "KE", threeLetterShortHand: "KEN", name: "Kenya", nationality: "Kenyan")
            
        case .KYRGYZSTAN:
            return Country(twoLetterShortHand: "KG", threeLetterShortHand: "KGZ", name: "Kyrgyzstan", nationality: "Kyrgyz")
            
        case .CAMBODIA:
            return Country(twoLetterShortHand: "KH", threeLetterShortHand: "KHM", name: "Cambodia", nationality: "Cambodian")
            
        case .KIRIBATI:
            return Country(twoLetterShortHand: "KI", threeLetterShortHand: "KIR", name: "Kiribati", nationality: "I-Kiribati")
            
        case .COMOROS:
            return Country(twoLetterShortHand: "KM", threeLetterShortHand: "COM", name: "Comoros", nationality: "Comorian")
            
        case .SAINT_KITTS_AND_NEVIS:
            return Country(twoLetterShortHand: "KN", threeLetterShortHand: "KNA", name: "Saint Kitts and Nevis", nationality: "")
            
        case .NORTH_KOREA:
            return Country(twoLetterShortHand: "KP", threeLetterShortHand: "PRK", name: "Korea Democratic People's Republic of", nationality: "North Korean")
            
        case .SOUTH_KOREA:
            return Country(twoLetterShortHand: "KR", threeLetterShortHand: "KOR", name: "Korea Republic of", nationality: "South Korean")
            
        case .KUWAIT:
            return Country(twoLetterShortHand: "KW", threeLetterShortHand: "KWT", name: "Kuwait", nationality: "Kuwaiti")
            
        case .CAYMAN_ISLANDS:
            return Country(twoLetterShortHand: "KY", threeLetterShortHand: "CYM", name: "Cayman Islands", nationality: "Caymanian")
            
        case .KAZAKHSTAN:
            return Country(twoLetterShortHand: "KZ", threeLetterShortHand: "KAZ", name: "Kazakhstan", nationality: "Kazakh")
            
        case .LAO:
            return Country(twoLetterShortHand: "LA", threeLetterShortHand: "LAO", name: "Lao People's Democratic Republic", nationality: "Lao")
            
        case.LEBANON:
            return Country(twoLetterShortHand: "LB", threeLetterShortHand: "LBN", name: "Lebanon", nationality: "Lebanese")
            
        case .SAINT_LUCIA:
            return Country(twoLetterShortHand: "LC", threeLetterShortHand: "LCA", name: "Saint Lucia", nationality: "Saint Lucian")
            
        case .LIECHTENSTEIN:
            return Country(twoLetterShortHand: "LI", threeLetterShortHand: "LIE", name: "Liechtenstein", nationality: "")
            
        case .SRI_LANKA:
            return Country(twoLetterShortHand: "LK", threeLetterShortHand: "LKA", name: "Sri Lanka", nationality: "Sri Lankan")
            
        case .LIBERIA:
            return Country(twoLetterShortHand: "LR", threeLetterShortHand: "LBR", name: "Liberia", nationality: "Liberian")
            
        case .LESOTHO:
            return Country(twoLetterShortHand: "LS", threeLetterShortHand: "LSO", name: "Lesotho", nationality: "Basotho")
            
        case .LITHUANIA:
            return Country(twoLetterShortHand: "LT", threeLetterShortHand: "LTU", name: "Lithuania", nationality: "Lithuanian")
            
        case .LUXEMBOURG:
            return Country(twoLetterShortHand: "LU", threeLetterShortHand: "LUX", name: "Luxembourg", nationality: "Luxembourg, Luxembourgish")
            
        case .LATVIA:
            return Country(twoLetterShortHand: "LV", threeLetterShortHand: "LVA", name: "Latvia", nationality: "Latvian")
            
        case .LIBYAN:
            return Country(twoLetterShortHand: "LY", threeLetterShortHand: "LBY", name: "Libyan Arab Jamahiriya", nationality: "Libyan")
            
        case .MOROCCO:
            return Country(twoLetterShortHand: "MA", threeLetterShortHand: "MAR", name: "Morocco", nationality: "Moroccan")
            
        case .MONACO:
            return Country(twoLetterShortHand: "MC", threeLetterShortHand: "MCO", name: "Monaco", nationality: "Monegasque, Monacan")
            
        case .MOLDOVA:
            return Country(twoLetterShortHand: "MD", threeLetterShortHand: "MDA", name: "Moldova", nationality: "Moldovan")
            
        case .MONTENEGRO:
            return Country(twoLetterShortHand: "ME", threeLetterShortHand: "MNE", name: "Montenegro", nationality: "Montenegrin")
            
        case .SAINT_MARTIN:
            return Country(twoLetterShortHand: "MF", threeLetterShortHand: "MAF", name: "Saint Martin (French part)", nationality: "")
            
        case .MADAGASCAR:
            return Country(twoLetterShortHand: "MG", threeLetterShortHand: "MDG", name: "Madagascar", nationality: "Malagasy")
            
        case .MARSHALL_ISLANDS:
            return Country(twoLetterShortHand: "MH", threeLetterShortHand: "MHL", name: "Marshall Islands", nationality: "Marshallese")
            
        case .MACEDONIA:
            return Country(twoLetterShortHand: "MK", threeLetterShortHand: "MKD", name: "Macedonia the former Yugoslav Republic of", nationality: "Macedonian")
            
        case .MALI:
            return Country(twoLetterShortHand: "ML", threeLetterShortHand: "MLI", name: "Mali", nationality: "Malian")
            
        case .MYANMAR:
            return Country(twoLetterShortHand: "MM", threeLetterShortHand: "MMR", name: "Myanmar", nationality: "Burmese")
            
        case .MONGOLIA:
            return Country(twoLetterShortHand: "MN", threeLetterShortHand: "MNG", name: "Mongolia", nationality: "Mongolian")
            
        case .MACAO:
            return Country(twoLetterShortHand: "MO", threeLetterShortHand: "MAC", name: "Macao", nationality: "Macanese, Chinese")
            
        case .NORTHERN_MARIANA_ISLANDS:
            return Country(twoLetterShortHand: "MP", threeLetterShortHand: "MNP", name: "Northern Mariana Islands", nationality: "Northern Marianan")
            
        case .MARTINIQUE:
            return Country(twoLetterShortHand: "MQ", threeLetterShortHand: "MTQ", name: "Martinique", nationality: "Martiniquais, Martinican")
            
        case .MAURITANIA:
            return Country(twoLetterShortHand: "MR", threeLetterShortHand: "MRT", name: "Mauritania", nationality: "Mauritanian")
            
        case .MONTSERRAT:
            return Country(twoLetterShortHand: "MS", threeLetterShortHand: "MSR", name: "Montserrat", nationality: "Montserratian")
            
        case .MALTA:
            return Country(twoLetterShortHand: "MT", threeLetterShortHand: "MLT", name: "Malta", nationality: "Maltese")
            
        case .MAURITIUS:
            return Country(twoLetterShortHand: "MU", threeLetterShortHand: "MUS", name: "Mauritius", nationality: "Mauritian")
            
        case .MALDIVES:
            return Country(twoLetterShortHand: "MV", threeLetterShortHand: "MDV", name: "Maldives", nationality: "Maldivian")
            
        case .MALAWI:
            return Country(twoLetterShortHand: "MW", threeLetterShortHand: "MWI", name: "Malawi", nationality: "Malawian")
            
        case .MEXICO:
            return Country(twoLetterShortHand: "MX", threeLetterShortHand: "MEX", name: "Mexico", nationality: "Mexican")
            
        case .MALAYSIA:
            return Country(twoLetterShortHand: "MY", threeLetterShortHand: "MYS", name: "Malaysia", nationality: "Malaysian")
            
        case .MOZAMBIQUE:
            return Country(twoLetterShortHand: "MZ", threeLetterShortHand: "MOZ", name: "Mozambique", nationality: "Mozambican")
            
        case .NAMIBIA:
            return Country(twoLetterShortHand: "NA", threeLetterShortHand: "NAM", name: "Namibia", nationality: "Namibian")
            
        case .NEW_CALEDONIA:
            return Country(twoLetterShortHand: "NC", threeLetterShortHand: "NCL", name: "New Caledonia", nationality: "New Caledonian")
            
        case .NIGER:
            return Country(twoLetterShortHand: "NE", threeLetterShortHand: "NER", name: "Niger", nationality: "Nigerien")
            
        case .NORFOLK_ISLAND:
            return Country(twoLetterShortHand: "NF", threeLetterShortHand: "NFK", name: "Norfolk Island", nationality: "")
            
        case .NIGERIA:
            return Country(twoLetterShortHand: "NG", threeLetterShortHand: "NGA", name: "Nigeria", nationality: "Nigerian")
            
        case .NICARAGUA:
            return Country(twoLetterShortHand: "NI", threeLetterShortHand: "NIC", name: "Nicaragua", nationality: "Nicaraguan")
            
        case .NETHERLANDS:
            return Country(twoLetterShortHand: "NL", threeLetterShortHand: "NLD", name: "Netherlands", nationality: "Dutch")
            
        case .NORWAY:
            return Country(twoLetterShortHand: "NO", threeLetterShortHand: "NOR", name: "Norway", nationality: "Norwegian")
            
        case .NEPAL:
            return Country(twoLetterShortHand: "NP", threeLetterShortHand: "NPL", name: "Nepal", nationality: "Nepali")
            
        case .NAURU:
            return Country(twoLetterShortHand: "NR", threeLetterShortHand: "NRU", name: "Nauru", nationality: "Nauruan")
            
        case .NIUE:
            return Country(twoLetterShortHand: "NU", threeLetterShortHand: "NIU", name: "Niue", nationality: "Niuean")
            
        case .NEW_ZEALAND:
            return Country(twoLetterShortHand: "NZ", threeLetterShortHand: "NZL", name: "New Zealand", nationality: "")
            
        case .OMAN:
            return Country(twoLetterShortHand: "OM", threeLetterShortHand: "OMN", name: "Oman", nationality: "Omani")
            
        case .PANAMA:
            return Country(twoLetterShortHand: "PA", threeLetterShortHand: "PAN", name: "Panama", nationality: "Panamanian")
            
        case .PERU:
            return Country(twoLetterShortHand: "PE", threeLetterShortHand: "PER", name: "Peru", nationality: "Peruvian")
            
        case .FRENCH_POLYNESIA:
            return Country(twoLetterShortHand: "PF", threeLetterShortHand: "PYF", name: "French Polynesia", nationality: "French Polynesian")
            
        case .PAPUA_NEW_GUINEA:
            return Country(twoLetterShortHand: "PG", threeLetterShortHand: "PNG", name: "Papua New Guinea", nationality: "Papua New Guinean, Papuan")
            
        case .PHILIPPINES:
            return Country(twoLetterShortHand: "PH", threeLetterShortHand: "PHL", name: "Philippines", nationality: "Philippine, Filipino")
            
        case .PAKISTAN:
            return Country(twoLetterShortHand: "PK", threeLetterShortHand: "PAK", name: "Pakistan", nationality: "Pakistani")
            
        case .POLAND:
            return Country(twoLetterShortHand: "PL", threeLetterShortHand: "POL", name: "Poland", nationality: "Polish")
            
        case .SAINT_PIERRE_AND_MIQUELON:
            return Country(twoLetterShortHand: "PM", threeLetterShortHand: "SPM", name: "Saint Pierre and Miquelon", nationality: "Saint Pierrais, Miquelonnais")
            
        case .PITCAIRN:
            return Country(twoLetterShortHand: "PN", threeLetterShortHand: "PCN", name: "Pitcairn", nationality: "")
            
        case .PUERTO_RICO:
            return Country(twoLetterShortHand: "PR", threeLetterShortHand: "PRI", name: "Puerto Rico", nationality: "Puerto Rican")
            
        case .PALESTINIA:
            return Country(twoLetterShortHand: "PS", threeLetterShortHand: "PSE", name: "Palestinian Territory Occupied", nationality: "Palestinian")
            
        case .PORTUGAL:
            return Country(twoLetterShortHand: "PT", threeLetterShortHand: "PRT", name: "Portugal", nationality: "Portuguese")
            
        case .PALAU:
            return Country(twoLetterShortHand: "PW", threeLetterShortHand: "PLW", name: "Palau", nationality: "Palauan")
            
        case .PARAGUAY:
            return Country(twoLetterShortHand: "PY", threeLetterShortHand: "PRY", name: "Paraguay", nationality: "Paraguayan")
            
        case .QATAR:
            return Country(twoLetterShortHand: "QA", threeLetterShortHand: "QAT", name: "Qatar", nationality: "Qatari")
            
        case .REUNION:
            return Country(twoLetterShortHand: "RE", threeLetterShortHand: "REU", name: "Reunion", nationality: "Reunionese, Reunionnais")
            
        case .ROMANIA:
            return Country(twoLetterShortHand: "RO", threeLetterShortHand: "ROU", name: "Romania", nationality: "Romanian")
            
        case .SERBIA:
            return Country(twoLetterShortHand: "RS", threeLetterShortHand: "SRB", name: "Serbia", nationality: "Serbian")
            
        case .RUSSIA:
            return Country(twoLetterShortHand: "RU", threeLetterShortHand: "RUS", name: "Russian Federation", nationality: "Russian")
            
        case .RWANDA:
            return Country(twoLetterShortHand: "RW", threeLetterShortHand: "RWA", name: "Rwanda", nationality: "Rwandan")
            
        case .SAUDI_ARABIA:
            return Country(twoLetterShortHand: "SA", threeLetterShortHand: "SAU", name: "Saudi Arabia", nationality: "Saudi, Saudi Arabian")
            
        case .SOLOMON_ISLANDS:
            return Country(twoLetterShortHand: "SB", threeLetterShortHand: "SLB", name: "Solomon Islands", nationality: "Solomon Island")
            
        case .SEYCHELLES:
            return Country(twoLetterShortHand: "SC", threeLetterShortHand: "SYC", name: "Seychelles", nationality: "Seychellois")
            
        case .SUDAN:
            return Country(twoLetterShortHand: "SD", threeLetterShortHand: "SDN", name: "Sudan", nationality: "Sudanese")
            
        case .SWEDEN:
            return Country(twoLetterShortHand: "SE", threeLetterShortHand: "SWE", name: "Sweden", nationality: "Swedish")
            
        case .SINGAPORE:
            return Country(twoLetterShortHand: "SG", threeLetterShortHand: "SGP", name: "Singapore", nationality: "")
            
        case .SAINT_HELENA:
            return Country(twoLetterShortHand: "SH", threeLetterShortHand: "SHN", name: "Saint Helena", nationality: "Saint Helenian")
            
        case .SLOVENIA:
            return Country(twoLetterShortHand: "SI", threeLetterShortHand: "SVN", name: "Slovenia", nationality: "Slovenian, Slovene")
            
        case .SVALBARD_AND_JAN_MAYEN:
            return Country(twoLetterShortHand: "SJ", threeLetterShortHand: "SJM", name: "Svalbard and Jan Mayen", nationality: "")
            
        case .SLOVAKIA:
            return Country(twoLetterShortHand: "SK", threeLetterShortHand: "SVK", name: "Slovakia", nationality: "Slovak")
            
        case .SIERRA_LEONE:
            return Country(twoLetterShortHand: "SL", threeLetterShortHand: "SLE", name: "Sierra Leone", nationality: "Sierra Leonean")
            
        case .SAN_MARINO:
            return Country(twoLetterShortHand: "SM", threeLetterShortHand: "SMR", name: "San Marino", nationality: "Sammarinese")
            
        case .SENEGAL:
            return Country(twoLetterShortHand: "SN", threeLetterShortHand: "SEN", name: "Senegal", nationality: "Senegalese")
            
        case .SOMALIA:
            return Country(twoLetterShortHand: "SO", threeLetterShortHand: "SOM", name: "Somalia", nationality: "Somali, Somalian")
            
        case .SURINAME:
            return Country(twoLetterShortHand: "SR", threeLetterShortHand: "SUR", name: "Suriname", nationality: "Surinamese")
            
        case .SAO_TOME_AND_PRINCIPE:
            return Country(twoLetterShortHand: "ST", threeLetterShortHand: "STP", name: "Sao Tome and Principe", nationality: "Sao Tomean")
            
        case .EL_SALVADOR:
            return Country(twoLetterShortHand: "SV", threeLetterShortHand: "SLV", name: "El Salvador", nationality: "Salvadoran")
            
        case .SYRIA:
            return Country(twoLetterShortHand: "SY", threeLetterShortHand: "SYR", name: "Syrian Arab Republic", nationality: "Syrian")
            
        case .SWAZILAND:
            return Country(twoLetterShortHand: "SZ", threeLetterShortHand: "SWZ", name: "Swaziland", nationality: "Swazi")
            
        case .TURKS_AND_CAICOS_ISLANDS:
            return Country(twoLetterShortHand: "TC", threeLetterShortHand: "TCA", name: "Turks and Caicos Islands", nationality: "")
        
        case .CHAD:
            return Country(twoLetterShortHand: "TD", threeLetterShortHand: "TCD", name: "Chad", nationality: "Chadian")
            
        case .FRENCH_SOUTHERN_TERRITORIES:
            return Country(twoLetterShortHand: "TF", threeLetterShortHand: "ATF", name: "French Southern Territories", nationality: "")
            
        case .TOGO:
            return Country(twoLetterShortHand: "TG", threeLetterShortHand: "TGO", name: "Togo", nationality: "Togolese")
            
        case .THAILAND:
            return Country(twoLetterShortHand: "TH", threeLetterShortHand: "THA", name: "Thailand", nationality: "Thai")
            
        case .TAJIKISTAN:
            return Country(twoLetterShortHand: "TJ", threeLetterShortHand: "TJK", name: "Tajikistan", nationality: "Tajikistani")
            
        case .TOKELAU:
            return Country(twoLetterShortHand: "TK", threeLetterShortHand: "TKL", name: "Tokelau", nationality: "")
            
        case .TIMOR_LESTE:
            return Country(twoLetterShortHand: "TL", threeLetterShortHand: "TLS", name: "Timor-Leste", nationality: "Timorese")
            
        case .TURKMENISTAN:
            return Country(twoLetterShortHand: "TM", threeLetterShortHand: "TKM", name: "Turkmenistan", nationality: "Turkmen")
            
        case .TUNISIA:
            return Country(twoLetterShortHand: "TN", threeLetterShortHand: "TUN", name: "Tunisia", nationality: "Tunisian")
            
        case .TONGA:
            return Country(twoLetterShortHand: "TO", threeLetterShortHand: "TON", name: "Tonga", nationality: "Tongan")
            
        case .TURKEY:
            return Country(twoLetterShortHand: "TR", threeLetterShortHand: "TUR", name: "Turkey", nationality: "Turkish")
            
        case .TRINIDAD_AND_TOBAGO:
            return Country(twoLetterShortHand: "TT", threeLetterShortHand: "TTO", name: "Trinidad and Tobago", nationality: "Trinidadian, Tobagonian")
            
        case .TUVALU:
            return Country(twoLetterShortHand: "TV", threeLetterShortHand: "TUV", name: "Tuvalu", nationality: "Tuvaluan")
            
        case .TAIWAN:
            return Country(twoLetterShortHand: "TW", threeLetterShortHand: "TWN", name: "Taiwan Province of China", nationality: "Taiwanese")
            
        case .TANZANIA:
            return Country(twoLetterShortHand: "TZ", threeLetterShortHand: "TZA", name: "Tanzania United Republic of", nationality: "Tanzanian")
            
        case .UKRAINE:
            return Country(twoLetterShortHand: "UA", threeLetterShortHand: "UKR", name: "Ukraine", nationality: "Ukrainian")
            
        case .UGANDA:
            return Country(twoLetterShortHand: "UG", threeLetterShortHand: "UGA", name: "Uganda", nationality: "Ugandan")
            
        case .UNITED_CountryS_MINOR_OUTLYING_ISLANDS:
            return Country(twoLetterShortHand: "UM", threeLetterShortHand: "UMI", name: "United Countrys Minor Outlying Islands", nationality: "")
            
        case .UNITED_CountryS:
            return Country(twoLetterShortHand: "US", threeLetterShortHand: "USA", name: "United Countrys", nationality: "American")
            
        case .URUGUAY:
            return Country(twoLetterShortHand: "UY", threeLetterShortHand: "URY", name: "Uruguay", nationality: "Uruguayan")
            
        case .UZBEKISTANI:
            return Country(twoLetterShortHand: "UZ", threeLetterShortHand: "UZB", name: "Uzbekistan", nationality: "Uzbekistani, Uzbek")
            
        case .VATICAN:
            return Country(twoLetterShortHand: "VA", threeLetterShortHand: "VAT", name: "Holy See (Vatican City Country)", nationality: "")
            
        case .SAINT_VINCENT_AND_THE_GRENADINES:
            return Country(twoLetterShortHand: "VC", threeLetterShortHand: "VCT", name: "Saint Vincent and the Grenadines", nationality: "Saint Vincentian")
            
        case .VENEZUELA:
            return Country(twoLetterShortHand: "VE", threeLetterShortHand: "VEN", name: "Venezuela", nationality: "Venezuelan")
            
        case .VIRGIN_ISLANDS_BRITISH:
            return Country(twoLetterShortHand: "VG", threeLetterShortHand: "VGB", name: "Virgin Islands British", nationality: "Virgin Island")
            
        case .VIRGIN_ISLANDS_UNITED_CountryS:
            return Country(twoLetterShortHand: "VI", threeLetterShortHand: "VIR", name: "Virgin Islands U.S.", nationality: "Virgin Island")
            
        case .VIETNAM:
            return Country(twoLetterShortHand: "VN", threeLetterShortHand: "VNM", name: "Viet Nam", nationality: "Vietnamese")
            
        case .VANUATU:
            return Country(twoLetterShortHand: "VU", threeLetterShortHand: "VUT", name: "Vanuatu", nationality: "Ni-Vanuatu, Vanuatuan")
            
        case .WALLIS_AND_FUTUNA:
            return Country(twoLetterShortHand: "WF", threeLetterShortHand: "WLF", name: "Wallis and Futuna", nationality: "Wallisian, Futunan")
            
        case .SAMOA:
            return Country(twoLetterShortHand: "WS", threeLetterShortHand: "WSM", name: "Samoa", nationality: "Samoan")
            
        case .YEMEN:
            return Country(twoLetterShortHand: "YE", threeLetterShortHand: "YEM", name: "Yemen", nationality: "Yemeni")
            
        case .MAYOTTE:
            return Country(twoLetterShortHand: "YT", threeLetterShortHand: "MYT", name: "Mayotte", nationality: "Mahoran")
            
        case .SOUTH_AFRICA:
            return Country(twoLetterShortHand: "ZA", threeLetterShortHand: "ZAF", name: "South Africa", nationality: "South African")
            
        case .ZAMBIA:
            return Country(twoLetterShortHand: "ZM", threeLetterShortHand: "ZMB", name: "Zambia", nationality: "Zambian")
            
        case .ZIMBABWE:
            return Country(twoLetterShortHand: "ZW", threeLetterShortHand: "ZWE", name: "Zimbabwe", nationality: "Zimbabwean")
        }
    }
}