package cz.moneta.test.dsl.kasanova.components.enums;

import java.util.Random;

public enum KSNCountries {
    CZ("Česká republika"),
    AF("Afghánistán"),
    AX("Alandské ostrovy"),
    AL("Albánie"),
    DZ("Alžírsko"),
    AS("Americká Samoa"),
    VI("Americké Panenské ostrovy"),
    AD("Andorra"),
    AO("Angola"),
    AI("Anguilla"),
    AQ("Antarktida"),
    AG("Antigua a Barbuda"),
    AR("Argentina"),
    AM("Arménie"),
    AW("Aruba"),
    AU("Austrálie"),
    AZ("Ázerbájdžán"),
    BS("Bahamy"),
    BH("Bahrajn"),
    BD("Bangladéš"),
    BB("Barbados"),
    BE("Belgie"),
    BZ("Belize"),
    BY("Bělorusko"),
    BJ("Benin"),
    BM("Bermudy"),
    BT("Bhútán"),
    BO("Bolívie"),
    BQ("Bonaire, Svatý Eustach a Saba"),
    BA("Bosna a Hercegovina"),
    BW("Botswana"),
    BV("Bouvetův ostrov"),
    BR("Brazílie"),
    IO("Britské indickooceánské území"),
    VG("Britské Panenské ostrovy"),
    BN("Brunej"),
    BG("Bulharsko"),
    BF("Burkina Faso"),
    BI("Burundi"),
    TD("Čad"),
    ME("Černá Hora"),
    CL("Chile"),
    HR("Chorvatsko"),
    CN("Čína"),
    CK("Cookovy ostrovy"),
    CW("Curacao"),
    DK("Dánsko"),
    CD("Demokratická republika Kongo"),
    DM("Dominika"),
    DO("Dominikánská republika"),
    DJ("Džibutsko"),
    EG("Egypt"),
    EC("Ekvádor"),
    ER("Eritrea"),
    EE("Estonsko"),
    ET("Etiopie"),
    FO("Faerské ostrovy"),
    FK("Falklandy"),
    FJ("Fidži"),
    PH("Filipíny"),
    FI("Finsko"),
    FR("Francie"),
    GF("Francouzská Guyana"),
    TF("Francouzská jižní a antarktická území"),
    PF("Francouzská Polynésie"),
    GA("Gabon"),
    GM("Gambie"),
    GH("Ghana"),
    GI("Gibraltar"),
    GD("Grenada"),
    GL("Grónsko"),
    GE("Gruzie"),
    GP("Guadeloupe"),
    GU("Guam"),
    GT("Guatemala"),
    GG("Guernsey"),
    GN("Guinea"),
    GW("Guinea-Bissau"),
    GY("Guyana"),
    HT("Haiti"),
    HM("Heardův ostrov a MacDonaldovy ostrovy"),
    HN("Honduras"),
    HK("Hongkong"),
    IN("Indie"),
    ID("Indonésie"),
    IQ("Irák"),
    IR("Írán"),
    IE("Irsko"),
    IS("Island"),
    IT("Itálie"),
    IL("Izrael"),
    JM("Jamajka"),
    JP("Japonsko"),
    YE("Jemen"),
    JE("Jersey"),
    ZA("Jižní Afrika"),
    GS("Jižní Georgie a Jižní Sandwichovy ostrovy"),
    SS("Jižní Súdán"),
    JO("Jordánsko"),
    KY("Kajmanské ostrovy"),
    KH("Kambodža"),
    CM("Kamerun"),
    CA("Kanada"),
    CV("Kapverdy"),
    QA("Katar"),
    KZ("Kazachstán"),
    KE("Keňa"),
    KI("Kiribati"),
    CC("Kokosové (Keelingovy) ostrovy"),
    CO("Kolumbie"),
    KM("Komory"),
    CG("Konžská republika"),
    KP("Korejská lidově demokratická republika"),
    KR("Korejská republika"),
    XK("Kosovo"),
    CR("Kostarika"),
    CU("Kuba"),
    KW("Kuvajt"),
    CY("Kypr"),
    KG("Kyrgyzstán"),
    LA("Laos"),
    LS("Lesotho"),
    LB("Libanon"),
    LR("Libérie"),
    LY("Libye"),
    LI("Lichtenštejnsko"),
    LT("Litva"),
    LV("Lotyšsko"),
    LU("Lucembursko"),
    MO("Macao"),
    MG("Madagaskar"),
    HU("Maďarsko"),
    MK("Makedonie"),
    MY("Malajsie"),
    MW("Malawi"),
    MV("Maledivy"),
    ML("Mali"),
    MT("Malta"),
    IM("Man"),
    MA("Maroko"),
    MH("Marshallovy ostrovy"),
    MQ("Martinik"),
    MU("Mauricius"),
    MR("Mauritánie"),
    YT("Mayotte"),
    UM("Menší odlehlé ostrovy USA"),
    MX("Mexiko"),
    FM("Mikronésie"),
    MD("Moldavsko"),
    MC("Monako"),
    MN("Mongolsko"),
    MS("Montserrat"),
    MZ("Mosambik"),
    MM("Myanmar"),
    NA("Namibie"),
    NR("Nauru"),
    DE("Německo"),
    NP("Nepál"),
    NE("Niger"),
    NG("Nigérie"),
    NI("Nikaragua"),
    NU("Niue"),
    NL("Nizozemsko"),
    NF("Norfolk"),
    NO("Norsko"),
    NC("Nová Kaledonie"),
    NZ("Nový Zéland"),
    OM("Omán"),
    PK("Pákistán"),
    PW("Palau"),
    PS("Palestina"),
    PA("Panama"),
    PG("Papua Nová Guinea"),
    PY("Paraguay"),
    PE("Peru"),
    PN("Pitcairn"),
    CI("Pobřeží Slonoviny"),
    PL("Polsko"),
    PR("Portoriko"),
    PT("Portugalsko"),
    AT("Rakousko"),
    GR("Řecko"),
    RE("Réunion"),
    GQ("Rovníková Guinea"),
    RO("Rumunsko"),
    RU("Rusko"),
    RW("Rwanda"),
    PM("Saint Pierre a Miquelon"),
    SB("Šalomounovy ostrovy"),
    SV("Salvador"),
    WS("Samoa"),
    SM("San Marino"),
    SA("Saúdská Arábie"),
    SN("Senegal"),
    MP("Severní Mariany"),
    SC("Seychely"),
    SL("Sierra Leone"),
    SG("Singapur"),
    SK("Slovensko"),
    SI("Slovinsko"),
    SO("Somálsko"),
    ES("Španělsko"),
    SJ("Špicberky a Jan Mayen"),
    AE("Spojené arabské emiráty"),
    US("Spojené státy"),
    RS("Srbsko"),
    LK("Šrí Lanka"),
    CF("Středoafrická republika"),
    SD("Súdán"),
    SR("Surinam"),
    SH("Svatá Helena"),
    LC("Svatá Lucie"),
    BL("Svatý Bartoloměj"),
    KN("Svatý Kryštof a Nevis"),
    MF("Svatý Martin (FR)"),
    SX("Svatý Martin (NL)"),
    ST("Svatý Tomáš a Princův ostrov"),
    VC("Svatý Vincenc a Grenadiny"),
    SZ("Svazijsko"),
    SE("Švédsko"),
    CH("Švýcarsko"),
    SY("Sýrie"),
    TJ("Tádžikistán"),
    TZ("Tanzanie"),
    TW("Tchaj-wan"),
    TH("Thajsko"),
    TG("Togo"),
    TK("Tokelau"),
    TO("Tonga"),
    TT("Trinidad a Tobago"),
    TN("Tunisko"),
    TR("Turecko"),
    TM("Turkmenistán"),
    TC("Turks a Caicos"),
    TV("Tuvalu"),
    UG("Uganda"),
    UA("Ukrajina"),
    UY("Uruguay"),
    UZ("Uzbekistán"),
    CX("Vánoční ostrov"),
    VU("Vanuatu"),
    VA("Vatikán"),
    GB("Velká Británie"),
    VE("Venezuela"),
    VN("Vietnam"),
    TL("Východní Timor"),
    WF("Wallis a Futuna"),
    ZM("Zambie"),
    EH("Západní Sahara"),
    ZW("Zimbabwe");
    
    private final String value;
    private static final Random random = new Random();
    
    KSNCountries(String value) {
        this.value = value;
    }
    
    public String getValue() {
        return this.value;
    }

    public static String getRandomCountryValue() {
        int i = random.nextInt(KSNCountries.values().length);
        return KSNCountries.values()[i].getValue();
    }
}
