<?php

namespace Fifa\ConnectId\Sdk\Util\Data;

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

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