193ccd686SRico Sonntag<?php 23976b470SGreg Roach 393ccd686SRico Sonntag/** 493ccd686SRico Sonntag * webtrees: online genealogy 589f7189bSGreg Roach * Copyright (C) 2021 webtrees development team 693ccd686SRico Sonntag * This program is free software: you can redistribute it and/or modify 793ccd686SRico Sonntag * it under the terms of the GNU General Public License as published by 893ccd686SRico Sonntag * the Free Software Foundation, either version 3 of the License, or 993ccd686SRico Sonntag * (at your option) any later version. 1093ccd686SRico Sonntag * This program is distributed in the hope that it will be useful, 1193ccd686SRico Sonntag * but WITHOUT ANY WARRANTY; without even the implied warranty of 1293ccd686SRico Sonntag * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 1393ccd686SRico Sonntag * GNU General Public License for more details. 1493ccd686SRico Sonntag * You should have received a copy of the GNU General Public License 1589f7189bSGreg Roach * along with this program. If not, see <https://www.gnu.org/licenses/>. 1693ccd686SRico Sonntag */ 17fcfa147eSGreg Roach 1893ccd686SRico Sonntagdeclare(strict_types=1); 1993ccd686SRico Sonntag 2093ccd686SRico Sonntagnamespace Fisharebest\Webtrees\Statistics\Service; 2193ccd686SRico Sonntag 2293ccd686SRico Sonntaguse Fisharebest\Webtrees\I18N; 2393ccd686SRico Sonntag 2493ccd686SRico Sonntag/** 2593ccd686SRico Sonntag * Functions for managing country codes and names. 2693ccd686SRico Sonntag */ 2793ccd686SRico Sonntagclass CountryService 2893ccd686SRico Sonntag{ 2993ccd686SRico Sonntag /** 3093ccd686SRico Sonntag * Country codes and names 3193ccd686SRico Sonntag * 3224f2a3afSGreg Roach * @return array<string> 3393ccd686SRico Sonntag */ 3493ccd686SRico Sonntag public function getAllCountries(): array 3593ccd686SRico Sonntag { 3693ccd686SRico Sonntag return [ 3793ccd686SRico Sonntag /* I18N: Name of a country or state */ 3893ccd686SRico Sonntag '???' => I18N::translate('Unknown'), 3993ccd686SRico Sonntag /* I18N: Name of a country or state */ 4093ccd686SRico Sonntag 'ABW' => I18N::translate('Aruba'), 4193ccd686SRico Sonntag /* I18N: Name of a country or state */ 4293ccd686SRico Sonntag 'AFG' => I18N::translate('Afghanistan'), 4393ccd686SRico Sonntag /* I18N: Name of a country or state */ 4493ccd686SRico Sonntag 'AGO' => I18N::translate('Angola'), 4593ccd686SRico Sonntag /* I18N: Name of a country or state */ 4693ccd686SRico Sonntag 'AIA' => I18N::translate('Anguilla'), 4793ccd686SRico Sonntag /* I18N: Name of a country or state */ 4893ccd686SRico Sonntag 'ALA' => I18N::translate('Aland Islands'), 4993ccd686SRico Sonntag /* I18N: Name of a country or state */ 5093ccd686SRico Sonntag 'ALB' => I18N::translate('Albania'), 5193ccd686SRico Sonntag /* I18N: Name of a country or state */ 5293ccd686SRico Sonntag 'AND' => I18N::translate('Andorra'), 5393ccd686SRico Sonntag /* I18N: Name of a country or state */ 5493ccd686SRico Sonntag 'ARE' => I18N::translate('United Arab Emirates'), 5593ccd686SRico Sonntag /* I18N: Name of a country or state */ 5693ccd686SRico Sonntag 'ARG' => I18N::translate('Argentina'), 5793ccd686SRico Sonntag /* I18N: Name of a country or state */ 5893ccd686SRico Sonntag 'ARM' => I18N::translate('Armenia'), 5993ccd686SRico Sonntag /* I18N: Name of a country or state */ 6093ccd686SRico Sonntag 'ASM' => I18N::translate('American Samoa'), 6193ccd686SRico Sonntag /* I18N: Name of a country or state */ 6293ccd686SRico Sonntag 'ATA' => I18N::translate('Antarctica'), 6393ccd686SRico Sonntag /* I18N: Name of a country or state */ 6493ccd686SRico Sonntag 'ATF' => I18N::translate('French Southern Territories'), 6593ccd686SRico Sonntag /* I18N: Name of a country or state */ 6693ccd686SRico Sonntag 'ATG' => I18N::translate('Antigua and Barbuda'), 6793ccd686SRico Sonntag /* I18N: Name of a country or state */ 6893ccd686SRico Sonntag 'AUS' => I18N::translate('Australia'), 6993ccd686SRico Sonntag /* I18N: Name of a country or state */ 7093ccd686SRico Sonntag 'AUT' => I18N::translate('Austria'), 7193ccd686SRico Sonntag /* I18N: Name of a country or state */ 7293ccd686SRico Sonntag 'AZE' => I18N::translate('Azerbaijan'), 7393ccd686SRico Sonntag /* I18N: Name of a country or state */ 7493ccd686SRico Sonntag 'AZR' => I18N::translate('Azores'), 7593ccd686SRico Sonntag /* I18N: Name of a country or state */ 7693ccd686SRico Sonntag 'BDI' => I18N::translate('Burundi'), 7793ccd686SRico Sonntag /* I18N: Name of a country or state */ 7893ccd686SRico Sonntag 'BEL' => I18N::translate('Belgium'), 7993ccd686SRico Sonntag /* I18N: Name of a country or state */ 8093ccd686SRico Sonntag 'BEN' => I18N::translate('Benin'), 8193ccd686SRico Sonntag // BES => Bonaire, Sint Eustatius and Saba 8293ccd686SRico Sonntag /* I18N: Name of a country or state */ 8393ccd686SRico Sonntag 'BFA' => I18N::translate('Burkina Faso'), 8493ccd686SRico Sonntag /* I18N: Name of a country or state */ 8593ccd686SRico Sonntag 'BGD' => I18N::translate('Bangladesh'), 8693ccd686SRico Sonntag /* I18N: Name of a country or state */ 8793ccd686SRico Sonntag 'BGR' => I18N::translate('Bulgaria'), 8893ccd686SRico Sonntag /* I18N: Name of a country or state */ 8993ccd686SRico Sonntag 'BHR' => I18N::translate('Bahrain'), 9093ccd686SRico Sonntag /* I18N: Name of a country or state */ 9193ccd686SRico Sonntag 'BHS' => I18N::translate('Bahamas'), 9293ccd686SRico Sonntag /* I18N: Name of a country or state */ 9393ccd686SRico Sonntag 'BIH' => I18N::translate('Bosnia and Herzegovina'), 9493ccd686SRico Sonntag // BLM => Saint Barthélemy 9593ccd686SRico Sonntag /* I18N: Name of a country or state */ 9693ccd686SRico Sonntag 'BLR' => I18N::translate('Belarus'), 9793ccd686SRico Sonntag /* I18N: Name of a country or state */ 9893ccd686SRico Sonntag 'BLZ' => I18N::translate('Belize'), 9993ccd686SRico Sonntag /* I18N: Name of a country or state */ 10093ccd686SRico Sonntag 'BMU' => I18N::translate('Bermuda'), 10193ccd686SRico Sonntag /* I18N: Name of a country or state */ 10293ccd686SRico Sonntag 'BOL' => I18N::translate('Bolivia'), 10393ccd686SRico Sonntag /* I18N: Name of a country or state */ 10493ccd686SRico Sonntag 'BRA' => I18N::translate('Brazil'), 10593ccd686SRico Sonntag /* I18N: Name of a country or state */ 10693ccd686SRico Sonntag 'BRB' => I18N::translate('Barbados'), 10793ccd686SRico Sonntag /* I18N: Name of a country or state */ 10893ccd686SRico Sonntag 'BRN' => I18N::translate('Brunei Darussalam'), 10993ccd686SRico Sonntag /* I18N: Name of a country or state */ 11093ccd686SRico Sonntag 'BTN' => I18N::translate('Bhutan'), 11193ccd686SRico Sonntag /* I18N: Name of a country or state */ 11293ccd686SRico Sonntag 'BVT' => I18N::translate('Bouvet Island'), 11393ccd686SRico Sonntag /* I18N: Name of a country or state */ 11493ccd686SRico Sonntag 'BWA' => I18N::translate('Botswana'), 11593ccd686SRico Sonntag /* I18N: Name of a country or state */ 11693ccd686SRico Sonntag 'CAF' => I18N::translate('Central African Republic'), 11793ccd686SRico Sonntag /* I18N: Name of a country or state */ 11893ccd686SRico Sonntag 'CAN' => I18N::translate('Canada'), 11993ccd686SRico Sonntag /* I18N: Name of a country or state */ 12093ccd686SRico Sonntag 'CCK' => I18N::translate('Cocos (Keeling) Islands'), 12193ccd686SRico Sonntag /* I18N: Name of a country or state */ 12293ccd686SRico Sonntag 'CHE' => I18N::translate('Switzerland'), 12393ccd686SRico Sonntag /* I18N: Name of a country or state */ 12493ccd686SRico Sonntag 'CHL' => I18N::translate('Chile'), 12593ccd686SRico Sonntag /* I18N: Name of a country or state */ 12693ccd686SRico Sonntag 'CHN' => I18N::translate('China'), 12793ccd686SRico Sonntag /* I18N: Name of a country or state */ 12893ccd686SRico Sonntag 'CIV' => I18N::translate('Cote d’Ivoire'), 12993ccd686SRico Sonntag /* I18N: Name of a country or state */ 13093ccd686SRico Sonntag 'CMR' => I18N::translate('Cameroon'), 13193ccd686SRico Sonntag /* I18N: Name of a country or state */ 13293ccd686SRico Sonntag 'COD' => I18N::translate('Democratic Republic of the Congo'), 13393ccd686SRico Sonntag /* I18N: Name of a country or state */ 13493ccd686SRico Sonntag 'COG' => I18N::translate('Republic of the Congo'), 13593ccd686SRico Sonntag /* I18N: Name of a country or state */ 13693ccd686SRico Sonntag 'COK' => I18N::translate('Cook Islands'), 13793ccd686SRico Sonntag /* I18N: Name of a country or state */ 13893ccd686SRico Sonntag 'COL' => I18N::translate('Colombia'), 13993ccd686SRico Sonntag /* I18N: Name of a country or state */ 14093ccd686SRico Sonntag 'COM' => I18N::translate('Comoros'), 14193ccd686SRico Sonntag /* I18N: Name of a country or state */ 14293ccd686SRico Sonntag 'CPV' => I18N::translate('Cape Verde'), 14393ccd686SRico Sonntag /* I18N: Name of a country or state */ 14493ccd686SRico Sonntag 'CRI' => I18N::translate('Costa Rica'), 14593ccd686SRico Sonntag /* I18N: Name of a country or state */ 14693ccd686SRico Sonntag 'CUB' => I18N::translate('Cuba'), 14793ccd686SRico Sonntag // CUW => Curaçao 14893ccd686SRico Sonntag /* I18N: Name of a country or state */ 14993ccd686SRico Sonntag 'CXR' => I18N::translate('Christmas Island'), 15093ccd686SRico Sonntag /* I18N: Name of a country or state */ 15193ccd686SRico Sonntag 'CYM' => I18N::translate('Cayman Islands'), 15293ccd686SRico Sonntag /* I18N: Name of a country or state */ 15393ccd686SRico Sonntag 'CYP' => I18N::translate('Cyprus'), 15493ccd686SRico Sonntag /* I18N: Name of a country or state */ 15593ccd686SRico Sonntag 'CZE' => I18N::translate('Czech Republic'), 15693ccd686SRico Sonntag /* I18N: Name of a country or state */ 15793ccd686SRico Sonntag 'DEU' => I18N::translate('Germany'), 15893ccd686SRico Sonntag /* I18N: Name of a country or state */ 15993ccd686SRico Sonntag 'DJI' => I18N::translate('Djibouti'), 16093ccd686SRico Sonntag /* I18N: Name of a country or state */ 16193ccd686SRico Sonntag 'DMA' => I18N::translate('Dominica'), 16293ccd686SRico Sonntag /* I18N: Name of a country or state */ 16393ccd686SRico Sonntag 'DNK' => I18N::translate('Denmark'), 16493ccd686SRico Sonntag /* I18N: Name of a country or state */ 16593ccd686SRico Sonntag 'DOM' => I18N::translate('Dominican Republic'), 16693ccd686SRico Sonntag /* I18N: Name of a country or state */ 16793ccd686SRico Sonntag 'DZA' => I18N::translate('Algeria'), 16893ccd686SRico Sonntag /* I18N: Name of a country or state */ 16993ccd686SRico Sonntag 'ECU' => I18N::translate('Ecuador'), 17093ccd686SRico Sonntag /* I18N: Name of a country or state */ 17193ccd686SRico Sonntag 'EGY' => I18N::translate('Egypt'), 17293ccd686SRico Sonntag /* I18N: Name of a country or state */ 17393ccd686SRico Sonntag 'ENG' => I18N::translate('England'), 17493ccd686SRico Sonntag /* I18N: Name of a country or state */ 17593ccd686SRico Sonntag 'ERI' => I18N::translate('Eritrea'), 17693ccd686SRico Sonntag /* I18N: Name of a country or state */ 17793ccd686SRico Sonntag 'ESH' => I18N::translate('Western Sahara'), 17893ccd686SRico Sonntag /* I18N: Name of a country or state */ 17993ccd686SRico Sonntag 'ESP' => I18N::translate('Spain'), 18093ccd686SRico Sonntag /* I18N: Name of a country or state */ 18193ccd686SRico Sonntag 'EST' => I18N::translate('Estonia'), 18293ccd686SRico Sonntag /* I18N: Name of a country or state */ 18393ccd686SRico Sonntag 'ETH' => I18N::translate('Ethiopia'), 18493ccd686SRico Sonntag /* I18N: Name of a country or state */ 18593ccd686SRico Sonntag 'FIN' => I18N::translate('Finland'), 18693ccd686SRico Sonntag /* I18N: Name of a country or state */ 18793ccd686SRico Sonntag 'FJI' => I18N::translate('Fiji'), 18893ccd686SRico Sonntag /* I18N: Name of a country or state */ 18993ccd686SRico Sonntag 'FLD' => I18N::translate('Flanders'), 19093ccd686SRico Sonntag /* I18N: Name of a country or state */ 19193ccd686SRico Sonntag 'FLK' => I18N::translate('Falkland Islands'), 19293ccd686SRico Sonntag /* I18N: Name of a country or state */ 19393ccd686SRico Sonntag 'FRA' => I18N::translate('France'), 19493ccd686SRico Sonntag /* I18N: Name of a country or state */ 19593ccd686SRico Sonntag 'FRO' => I18N::translate('Faroe Islands'), 19693ccd686SRico Sonntag /* I18N: Name of a country or state */ 19793ccd686SRico Sonntag 'FSM' => I18N::translate('Micronesia'), 19893ccd686SRico Sonntag /* I18N: Name of a country or state */ 19993ccd686SRico Sonntag 'GAB' => I18N::translate('Gabon'), 20093ccd686SRico Sonntag /* I18N: Name of a country or state */ 20193ccd686SRico Sonntag 'GBR' => I18N::translate('United Kingdom'), 20293ccd686SRico Sonntag /* I18N: Name of a country or state */ 20393ccd686SRico Sonntag 'GEO' => I18N::translate('Georgia'), 20493ccd686SRico Sonntag /* I18N: Name of a country or state */ 20593ccd686SRico Sonntag 'GGY' => I18N::translate('Guernsey'), 20693ccd686SRico Sonntag /* I18N: Name of a country or state */ 20793ccd686SRico Sonntag 'GHA' => I18N::translate('Ghana'), 20893ccd686SRico Sonntag /* I18N: Name of a country or state */ 20993ccd686SRico Sonntag 'GIB' => I18N::translate('Gibraltar'), 21093ccd686SRico Sonntag /* I18N: Name of a country or state */ 21193ccd686SRico Sonntag 'GIN' => I18N::translate('Guinea'), 21293ccd686SRico Sonntag /* I18N: Name of a country or state */ 21393ccd686SRico Sonntag 'GLP' => I18N::translate('Guadeloupe'), 21493ccd686SRico Sonntag /* I18N: Name of a country or state */ 21593ccd686SRico Sonntag 'GMB' => I18N::translate('Gambia'), 21693ccd686SRico Sonntag /* I18N: Name of a country or state */ 21793ccd686SRico Sonntag 'GNB' => I18N::translate('Guinea-Bissau'), 21893ccd686SRico Sonntag /* I18N: Name of a country or state */ 21993ccd686SRico Sonntag 'GNQ' => I18N::translate('Equatorial Guinea'), 22093ccd686SRico Sonntag /* I18N: Name of a country or state */ 22193ccd686SRico Sonntag 'GRC' => I18N::translate('Greece'), 22293ccd686SRico Sonntag /* I18N: Name of a country or state */ 22393ccd686SRico Sonntag 'GRD' => I18N::translate('Grenada'), 22493ccd686SRico Sonntag /* I18N: Name of a country or state */ 22593ccd686SRico Sonntag 'GRL' => I18N::translate('Greenland'), 22693ccd686SRico Sonntag /* I18N: Name of a country or state */ 22793ccd686SRico Sonntag 'GTM' => I18N::translate('Guatemala'), 22893ccd686SRico Sonntag /* I18N: Name of a country or state */ 22993ccd686SRico Sonntag 'GUF' => I18N::translate('French Guiana'), 23093ccd686SRico Sonntag /* I18N: Name of a country or state */ 23193ccd686SRico Sonntag 'GUM' => I18N::translate('Guam'), 23293ccd686SRico Sonntag /* I18N: Name of a country or state */ 23393ccd686SRico Sonntag 'GUY' => I18N::translate('Guyana'), 23493ccd686SRico Sonntag /* I18N: Name of a country or state */ 23593ccd686SRico Sonntag 'HKG' => I18N::translate('Hong Kong'), 23693ccd686SRico Sonntag /* I18N: Name of a country or state */ 23793ccd686SRico Sonntag 'HMD' => I18N::translate('Heard Island and McDonald Islands'), 23893ccd686SRico Sonntag /* I18N: Name of a country or state */ 23993ccd686SRico Sonntag 'HND' => I18N::translate('Honduras'), 24093ccd686SRico Sonntag /* I18N: Name of a country or state */ 24193ccd686SRico Sonntag 'HRV' => I18N::translate('Croatia'), 24293ccd686SRico Sonntag /* I18N: Name of a country or state */ 24393ccd686SRico Sonntag 'HTI' => I18N::translate('Haiti'), 24493ccd686SRico Sonntag /* I18N: Name of a country or state */ 24593ccd686SRico Sonntag 'HUN' => I18N::translate('Hungary'), 24693ccd686SRico Sonntag /* I18N: Name of a country or state */ 24793ccd686SRico Sonntag 'IDN' => I18N::translate('Indonesia'), 24893ccd686SRico Sonntag /* I18N: Name of a country or state */ 24993ccd686SRico Sonntag 'IND' => I18N::translate('India'), 25093ccd686SRico Sonntag /* I18N: Name of a country or state */ 25193ccd686SRico Sonntag 'IOM' => I18N::translate('Isle of Man'), 25293ccd686SRico Sonntag /* I18N: Name of a country or state */ 25393ccd686SRico Sonntag 'IOT' => I18N::translate('British Indian Ocean Territory'), 25493ccd686SRico Sonntag /* I18N: Name of a country or state */ 25593ccd686SRico Sonntag 'IRL' => I18N::translate('Ireland'), 25693ccd686SRico Sonntag /* I18N: Name of a country or state */ 25793ccd686SRico Sonntag 'IRN' => I18N::translate('Iran'), 25893ccd686SRico Sonntag /* I18N: Name of a country or state */ 25993ccd686SRico Sonntag 'IRQ' => I18N::translate('Iraq'), 26093ccd686SRico Sonntag /* I18N: Name of a country or state */ 26193ccd686SRico Sonntag 'ISL' => I18N::translate('Iceland'), 26293ccd686SRico Sonntag /* I18N: Name of a country or state */ 26393ccd686SRico Sonntag 'ISR' => I18N::translate('Israel'), 26493ccd686SRico Sonntag /* I18N: Name of a country or state */ 26593ccd686SRico Sonntag 'ITA' => I18N::translate('Italy'), 26693ccd686SRico Sonntag /* I18N: Name of a country or state */ 26793ccd686SRico Sonntag 'JAM' => I18N::translate('Jamaica'), 26893ccd686SRico Sonntag //'JEY' => Jersey 26993ccd686SRico Sonntag /* I18N: Name of a country or state */ 27093ccd686SRico Sonntag 'JOR' => I18N::translate('Jordan'), 27193ccd686SRico Sonntag /* I18N: Name of a country or state */ 27293ccd686SRico Sonntag 'JPN' => I18N::translate('Japan'), 27393ccd686SRico Sonntag /* I18N: Name of a country or state */ 27493ccd686SRico Sonntag 'KAZ' => I18N::translate('Kazakhstan'), 27593ccd686SRico Sonntag /* I18N: Name of a country or state */ 27693ccd686SRico Sonntag 'KEN' => I18N::translate('Kenya'), 27793ccd686SRico Sonntag /* I18N: Name of a country or state */ 27893ccd686SRico Sonntag 'KGZ' => I18N::translate('Kyrgyzstan'), 27993ccd686SRico Sonntag /* I18N: Name of a country or state */ 28093ccd686SRico Sonntag 'KHM' => I18N::translate('Cambodia'), 28193ccd686SRico Sonntag /* I18N: Name of a country or state */ 28293ccd686SRico Sonntag 'KIR' => I18N::translate('Kiribati'), 28393ccd686SRico Sonntag /* I18N: Name of a country or state */ 28493ccd686SRico Sonntag 'KNA' => I18N::translate('Saint Kitts and Nevis'), 28593ccd686SRico Sonntag /* I18N: Name of a country or state */ 28693ccd686SRico Sonntag 'KOR' => I18N::translate('Korea'), 28793ccd686SRico Sonntag /* I18N: Name of a country or state */ 28893ccd686SRico Sonntag 'KWT' => I18N::translate('Kuwait'), 28993ccd686SRico Sonntag /* I18N: Name of a country or state */ 29093ccd686SRico Sonntag 'LAO' => I18N::translate('Laos'), 29193ccd686SRico Sonntag /* I18N: Name of a country or state */ 29293ccd686SRico Sonntag 'LBN' => I18N::translate('Lebanon'), 29393ccd686SRico Sonntag /* I18N: Name of a country or state */ 29493ccd686SRico Sonntag 'LBR' => I18N::translate('Liberia'), 29593ccd686SRico Sonntag /* I18N: Name of a country or state */ 29693ccd686SRico Sonntag 'LBY' => I18N::translate('Libya'), 29793ccd686SRico Sonntag /* I18N: Name of a country or state */ 29893ccd686SRico Sonntag 'LCA' => I18N::translate('Saint Lucia'), 29993ccd686SRico Sonntag /* I18N: Name of a country or state */ 30093ccd686SRico Sonntag 'LIE' => I18N::translate('Liechtenstein'), 30193ccd686SRico Sonntag /* I18N: Name of a country or state */ 30293ccd686SRico Sonntag 'LKA' => I18N::translate('Sri Lanka'), 30393ccd686SRico Sonntag /* I18N: Name of a country or state */ 30493ccd686SRico Sonntag 'LSO' => I18N::translate('Lesotho'), 30593ccd686SRico Sonntag /* I18N: Name of a country or state */ 30693ccd686SRico Sonntag 'LTU' => I18N::translate('Lithuania'), 30793ccd686SRico Sonntag /* I18N: Name of a country or state */ 30893ccd686SRico Sonntag 'LUX' => I18N::translate('Luxembourg'), 30993ccd686SRico Sonntag /* I18N: Name of a country or state */ 31093ccd686SRico Sonntag 'LVA' => I18N::translate('Latvia'), 31193ccd686SRico Sonntag /* I18N: Name of a country or state */ 31293ccd686SRico Sonntag 'MAC' => I18N::translate('Macau'), 31393ccd686SRico Sonntag // MAF => Saint Martin 31493ccd686SRico Sonntag /* I18N: Name of a country or state */ 31593ccd686SRico Sonntag 'MAR' => I18N::translate('Morocco'), 31693ccd686SRico Sonntag /* I18N: Name of a country or state */ 31793ccd686SRico Sonntag 'MCO' => I18N::translate('Monaco'), 31893ccd686SRico Sonntag /* I18N: Name of a country or state */ 31993ccd686SRico Sonntag 'MDA' => I18N::translate('Moldova'), 32093ccd686SRico Sonntag /* I18N: Name of a country or state */ 32193ccd686SRico Sonntag 'MDG' => I18N::translate('Madagascar'), 32293ccd686SRico Sonntag /* I18N: Name of a country or state */ 32393ccd686SRico Sonntag 'MDV' => I18N::translate('Maldives'), 32493ccd686SRico Sonntag /* I18N: Name of a country or state */ 32593ccd686SRico Sonntag 'MEX' => I18N::translate('Mexico'), 32693ccd686SRico Sonntag /* I18N: Name of a country or state */ 32793ccd686SRico Sonntag 'MHL' => I18N::translate('Marshall Islands'), 32893ccd686SRico Sonntag /* I18N: Name of a country or state */ 32993ccd686SRico Sonntag 'MKD' => I18N::translate('Macedonia'), 33093ccd686SRico Sonntag /* I18N: Name of a country or state */ 33193ccd686SRico Sonntag 'MLI' => I18N::translate('Mali'), 33293ccd686SRico Sonntag /* I18N: Name of a country or state */ 33393ccd686SRico Sonntag 'MLT' => I18N::translate('Malta'), 33493ccd686SRico Sonntag /* I18N: Name of a country or state */ 33593ccd686SRico Sonntag 'MMR' => I18N::translate('Myanmar'), 33693ccd686SRico Sonntag /* I18N: Name of a country or state */ 33793ccd686SRico Sonntag 'MNG' => I18N::translate('Mongolia'), 33893ccd686SRico Sonntag /* I18N: Name of a country or state */ 33993ccd686SRico Sonntag 'MNP' => I18N::translate('Northern Mariana Islands'), 34093ccd686SRico Sonntag /* I18N: Name of a country or state */ 34193ccd686SRico Sonntag 'MNT' => I18N::translate('Montenegro'), 34293ccd686SRico Sonntag /* I18N: Name of a country or state */ 34393ccd686SRico Sonntag 'MOZ' => I18N::translate('Mozambique'), 34493ccd686SRico Sonntag /* I18N: Name of a country or state */ 34593ccd686SRico Sonntag 'MRT' => I18N::translate('Mauritania'), 34693ccd686SRico Sonntag /* I18N: Name of a country or state */ 34793ccd686SRico Sonntag 'MSR' => I18N::translate('Montserrat'), 34893ccd686SRico Sonntag /* I18N: Name of a country or state */ 34993ccd686SRico Sonntag 'MTQ' => I18N::translate('Martinique'), 35093ccd686SRico Sonntag /* I18N: Name of a country or state */ 35193ccd686SRico Sonntag 'MUS' => I18N::translate('Mauritius'), 35293ccd686SRico Sonntag /* I18N: Name of a country or state */ 35393ccd686SRico Sonntag 'MWI' => I18N::translate('Malawi'), 35493ccd686SRico Sonntag /* I18N: Name of a country or state */ 35593ccd686SRico Sonntag 'MYS' => I18N::translate('Malaysia'), 35693ccd686SRico Sonntag /* I18N: Name of a country or state */ 35793ccd686SRico Sonntag 'MYT' => I18N::translate('Mayotte'), 35893ccd686SRico Sonntag /* I18N: Name of a country or state */ 35993ccd686SRico Sonntag 'NAM' => I18N::translate('Namibia'), 36093ccd686SRico Sonntag /* I18N: Name of a country or state */ 36193ccd686SRico Sonntag 'NCL' => I18N::translate('New Caledonia'), 36293ccd686SRico Sonntag /* I18N: Name of a country or state */ 36393ccd686SRico Sonntag 'NER' => I18N::translate('Niger'), 36493ccd686SRico Sonntag /* I18N: Name of a country or state */ 36593ccd686SRico Sonntag 'NFK' => I18N::translate('Norfolk Island'), 36693ccd686SRico Sonntag /* I18N: Name of a country or state */ 36793ccd686SRico Sonntag 'NGA' => I18N::translate('Nigeria'), 36893ccd686SRico Sonntag /* I18N: Name of a country or state */ 36993ccd686SRico Sonntag 'NIC' => I18N::translate('Nicaragua'), 37093ccd686SRico Sonntag /* I18N: Name of a country or state */ 37193ccd686SRico Sonntag 'NIR' => I18N::translate('Northern Ireland'), 37293ccd686SRico Sonntag /* I18N: Name of a country or state */ 37393ccd686SRico Sonntag 'NIU' => I18N::translate('Niue'), 37493ccd686SRico Sonntag /* I18N: Name of a country or state */ 37593ccd686SRico Sonntag 'NLD' => I18N::translate('Netherlands'), 37693ccd686SRico Sonntag /* I18N: Name of a country or state */ 37793ccd686SRico Sonntag 'NOR' => I18N::translate('Norway'), 37893ccd686SRico Sonntag /* I18N: Name of a country or state */ 37993ccd686SRico Sonntag 'NPL' => I18N::translate('Nepal'), 38093ccd686SRico Sonntag /* I18N: Name of a country or state */ 38193ccd686SRico Sonntag 'NRU' => I18N::translate('Nauru'), 38293ccd686SRico Sonntag /* I18N: Name of a country or state */ 38393ccd686SRico Sonntag 'NZL' => I18N::translate('New Zealand'), 38493ccd686SRico Sonntag /* I18N: Name of a country or state */ 38593ccd686SRico Sonntag 'OMN' => I18N::translate('Oman'), 38693ccd686SRico Sonntag /* I18N: Name of a country or state */ 38793ccd686SRico Sonntag 'PAK' => I18N::translate('Pakistan'), 38893ccd686SRico Sonntag /* I18N: Name of a country or state */ 38993ccd686SRico Sonntag 'PAN' => I18N::translate('Panama'), 39093ccd686SRico Sonntag /* I18N: Name of a country or state */ 39193ccd686SRico Sonntag 'PCN' => I18N::translate('Pitcairn'), 39293ccd686SRico Sonntag /* I18N: Name of a country or state */ 39393ccd686SRico Sonntag 'PER' => I18N::translate('Peru'), 39493ccd686SRico Sonntag /* I18N: Name of a country or state */ 39593ccd686SRico Sonntag 'PHL' => I18N::translate('Philippines'), 39693ccd686SRico Sonntag /* I18N: Name of a country or state */ 39793ccd686SRico Sonntag 'PLW' => I18N::translate('Palau'), 39893ccd686SRico Sonntag /* I18N: Name of a country or state */ 39993ccd686SRico Sonntag 'PNG' => I18N::translate('Papua New Guinea'), 40093ccd686SRico Sonntag /* I18N: Name of a country or state */ 40193ccd686SRico Sonntag 'POL' => I18N::translate('Poland'), 40293ccd686SRico Sonntag /* I18N: Name of a country or state */ 40393ccd686SRico Sonntag 'PRI' => I18N::translate('Puerto Rico'), 40493ccd686SRico Sonntag /* I18N: Name of a country or state */ 40593ccd686SRico Sonntag 'PRK' => I18N::translate('North Korea'), 40693ccd686SRico Sonntag /* I18N: Name of a country or state */ 40793ccd686SRico Sonntag 'PRT' => I18N::translate('Portugal'), 40893ccd686SRico Sonntag /* I18N: Name of a country or state */ 40993ccd686SRico Sonntag 'PRY' => I18N::translate('Paraguay'), 41093ccd686SRico Sonntag /* I18N: Name of a country or state */ 41193ccd686SRico Sonntag 'PSE' => I18N::translate('Occupied Palestinian Territory'), 41293ccd686SRico Sonntag /* I18N: Name of a country or state */ 41393ccd686SRico Sonntag 'PYF' => I18N::translate('French Polynesia'), 41493ccd686SRico Sonntag /* I18N: Name of a country or state */ 41593ccd686SRico Sonntag 'QAT' => I18N::translate('Qatar'), 41693ccd686SRico Sonntag /* I18N: Name of a country or state */ 41793ccd686SRico Sonntag 'REU' => I18N::translate('Reunion'), 41893ccd686SRico Sonntag /* I18N: Name of a country or state */ 41993ccd686SRico Sonntag 'ROM' => I18N::translate('Romania'), 42093ccd686SRico Sonntag /* I18N: Name of a country or state */ 42193ccd686SRico Sonntag 'RUS' => I18N::translate('Russia'), 42293ccd686SRico Sonntag /* I18N: Name of a country or state */ 42393ccd686SRico Sonntag 'RWA' => I18N::translate('Rwanda'), 42493ccd686SRico Sonntag /* I18N: Name of a country or state */ 42593ccd686SRico Sonntag 'SAU' => I18N::translate('Saudi Arabia'), 42693ccd686SRico Sonntag /* I18N: Name of a country or state */ 42793ccd686SRico Sonntag 'SCT' => I18N::translate('Scotland'), 42893ccd686SRico Sonntag /* I18N: Name of a country or state */ 42993ccd686SRico Sonntag 'SDN' => I18N::translate('Sudan'), 43093ccd686SRico Sonntag /* I18N: Name of a country or state */ 43193ccd686SRico Sonntag 'SEA' => I18N::translate('At sea'), 43293ccd686SRico Sonntag /* I18N: Name of a country or state */ 43393ccd686SRico Sonntag 'SEN' => I18N::translate('Senegal'), 43493ccd686SRico Sonntag /* I18N: Name of a country or state */ 43593ccd686SRico Sonntag 'SER' => I18N::translate('Serbia'), 43693ccd686SRico Sonntag /* I18N: Name of a country or state */ 43793ccd686SRico Sonntag 'SGP' => I18N::translate('Singapore'), 43893ccd686SRico Sonntag /* I18N: Name of a country or state */ 43993ccd686SRico Sonntag 'SGS' => I18N::translate('South Georgia and the South Sandwich Islands'), 44093ccd686SRico Sonntag /* I18N: Name of a country or state */ 44193ccd686SRico Sonntag 'SHN' => I18N::translate('Saint Helena'), 44293ccd686SRico Sonntag /* I18N: Name of a country or state */ 44393ccd686SRico Sonntag 'SJM' => I18N::translate('Svalbard and Jan Mayen'), 44493ccd686SRico Sonntag /* I18N: Name of a country or state */ 44593ccd686SRico Sonntag 'SLB' => I18N::translate('Solomon Islands'), 44693ccd686SRico Sonntag /* I18N: Name of a country or state */ 44793ccd686SRico Sonntag 'SLE' => I18N::translate('Sierra Leone'), 44893ccd686SRico Sonntag /* I18N: Name of a country or state */ 44993ccd686SRico Sonntag 'SLV' => I18N::translate('El Salvador'), 45093ccd686SRico Sonntag /* I18N: Name of a country or state */ 45193ccd686SRico Sonntag 'SMR' => I18N::translate('San Marino'), 45293ccd686SRico Sonntag /* I18N: Name of a country or state */ 45393ccd686SRico Sonntag 'SOM' => I18N::translate('Somalia'), 45493ccd686SRico Sonntag /* I18N: Name of a country or state */ 45593ccd686SRico Sonntag 'SPM' => I18N::translate('Saint Pierre and Miquelon'), 45693ccd686SRico Sonntag /* I18N: Name of a country or state */ 45793ccd686SRico Sonntag 'SSD' => I18N::translate('South Sudan'), 45893ccd686SRico Sonntag /* I18N: Name of a country or state */ 45993ccd686SRico Sonntag 'STP' => I18N::translate('Sao Tome and Principe'), 46093ccd686SRico Sonntag /* I18N: Name of a country or state */ 46193ccd686SRico Sonntag 'SUR' => I18N::translate('Suriname'), 46293ccd686SRico Sonntag /* I18N: Name of a country or state */ 46393ccd686SRico Sonntag 'SVK' => I18N::translate('Slovakia'), 46493ccd686SRico Sonntag /* I18N: Name of a country or state */ 46593ccd686SRico Sonntag 'SVN' => I18N::translate('Slovenia'), 46693ccd686SRico Sonntag /* I18N: Name of a country or state */ 46793ccd686SRico Sonntag 'SWE' => I18N::translate('Sweden'), 46893ccd686SRico Sonntag /* I18N: Name of a country or state */ 46993ccd686SRico Sonntag 'SWZ' => I18N::translate('Swaziland'), 47093ccd686SRico Sonntag // SXM => Sint Maarten 47193ccd686SRico Sonntag /* I18N: Name of a country or state */ 47293ccd686SRico Sonntag 'SYC' => I18N::translate('Seychelles'), 47393ccd686SRico Sonntag /* I18N: Name of a country or state */ 47493ccd686SRico Sonntag 'SYR' => I18N::translate('Syria'), 47593ccd686SRico Sonntag /* I18N: Name of a country or state */ 47693ccd686SRico Sonntag 'TCA' => I18N::translate('Turks and Caicos Islands'), 47793ccd686SRico Sonntag /* I18N: Name of a country or state */ 47893ccd686SRico Sonntag 'TCD' => I18N::translate('Chad'), 47993ccd686SRico Sonntag /* I18N: Name of a country or state */ 48093ccd686SRico Sonntag 'TGO' => I18N::translate('Togo'), 48193ccd686SRico Sonntag /* I18N: Name of a country or state */ 48293ccd686SRico Sonntag 'THA' => I18N::translate('Thailand'), 48393ccd686SRico Sonntag /* I18N: Name of a country or state */ 48493ccd686SRico Sonntag 'TJK' => I18N::translate('Tajikistan'), 48593ccd686SRico Sonntag /* I18N: Name of a country or state */ 48693ccd686SRico Sonntag 'TKL' => I18N::translate('Tokelau'), 48793ccd686SRico Sonntag /* I18N: Name of a country or state */ 48893ccd686SRico Sonntag 'TKM' => I18N::translate('Turkmenistan'), 48993ccd686SRico Sonntag /* I18N: Name of a country or state */ 49093ccd686SRico Sonntag 'TLS' => I18N::translate('Timor-Leste'), 49193ccd686SRico Sonntag /* I18N: Name of a country or state */ 49293ccd686SRico Sonntag 'TON' => I18N::translate('Tonga'), 49393ccd686SRico Sonntag /* I18N: Name of a country or state */ 49493ccd686SRico Sonntag 'TTO' => I18N::translate('Trinidad and Tobago'), 49593ccd686SRico Sonntag /* I18N: Name of a country or state */ 49693ccd686SRico Sonntag 'TUN' => I18N::translate('Tunisia'), 49793ccd686SRico Sonntag /* I18N: Name of a country or state */ 49893ccd686SRico Sonntag 'TUR' => I18N::translate('Turkey'), 49993ccd686SRico Sonntag /* I18N: Name of a country or state */ 50093ccd686SRico Sonntag 'TUV' => I18N::translate('Tuvalu'), 50193ccd686SRico Sonntag /* I18N: Name of a country or state */ 50293ccd686SRico Sonntag 'TWN' => I18N::translate('Taiwan'), 50393ccd686SRico Sonntag /* I18N: Name of a country or state */ 50493ccd686SRico Sonntag 'TZA' => I18N::translate('Tanzania'), 50593ccd686SRico Sonntag /* I18N: Name of a country or state */ 50693ccd686SRico Sonntag 'UGA' => I18N::translate('Uganda'), 50793ccd686SRico Sonntag /* I18N: Name of a country or state */ 50893ccd686SRico Sonntag 'UKR' => I18N::translate('Ukraine'), 50993ccd686SRico Sonntag /* I18N: Name of a country or state */ 51093ccd686SRico Sonntag 'UMI' => I18N::translate('US Minor Outlying Islands'), 51193ccd686SRico Sonntag /* I18N: Name of a country or state */ 51293ccd686SRico Sonntag 'URY' => I18N::translate('Uruguay'), 51393ccd686SRico Sonntag /* I18N: Name of a country or state */ 51493ccd686SRico Sonntag 'USA' => I18N::translate('United States'), 51593ccd686SRico Sonntag /* I18N: Name of a country or state */ 51693ccd686SRico Sonntag 'UZB' => I18N::translate('Uzbekistan'), 51793ccd686SRico Sonntag /* I18N: Name of a country or state */ 51893ccd686SRico Sonntag 'VAT' => I18N::translate('Vatican City'), 51993ccd686SRico Sonntag /* I18N: Name of a country or state */ 52093ccd686SRico Sonntag 'VCT' => I18N::translate('Saint Vincent and the Grenadines'), 52193ccd686SRico Sonntag /* I18N: Name of a country or state */ 52293ccd686SRico Sonntag 'VEN' => I18N::translate('Venezuela'), 52393ccd686SRico Sonntag /* I18N: Name of a country or state */ 52493ccd686SRico Sonntag 'VGB' => I18N::translate('British Virgin Islands'), 52593ccd686SRico Sonntag /* I18N: Name of a country or state */ 52693ccd686SRico Sonntag 'VIR' => I18N::translate('US Virgin Islands'), 52793ccd686SRico Sonntag /* I18N: Name of a country or state */ 52893ccd686SRico Sonntag 'VNM' => I18N::translate('Vietnam'), 52993ccd686SRico Sonntag /* I18N: Name of a country or state */ 53093ccd686SRico Sonntag 'VUT' => I18N::translate('Vanuatu'), 53193ccd686SRico Sonntag /* I18N: Name of a country or state */ 53293ccd686SRico Sonntag 'WLF' => I18N::translate('Wallis and Futuna'), 53393ccd686SRico Sonntag /* I18N: Name of a country or state */ 53493ccd686SRico Sonntag 'WLS' => I18N::translate('Wales'), 53593ccd686SRico Sonntag /* I18N: Name of a country or state */ 53693ccd686SRico Sonntag 'WSM' => I18N::translate('Samoa'), 53793ccd686SRico Sonntag /* I18N: Name of a country or state */ 53893ccd686SRico Sonntag 'YEM' => I18N::translate('Yemen'), 53993ccd686SRico Sonntag /* I18N: Name of a country or state */ 54093ccd686SRico Sonntag 'ZAF' => I18N::translate('South Africa'), 54193ccd686SRico Sonntag /* I18N: Name of a country or state */ 54293ccd686SRico Sonntag 'ZMB' => I18N::translate('Zambia'), 54393ccd686SRico Sonntag /* I18N: Name of a country or state */ 54493ccd686SRico Sonntag 'ZWE' => I18N::translate('Zimbabwe'), 54593ccd686SRico Sonntag ]; 54693ccd686SRico Sonntag } 54793ccd686SRico Sonntag 54893ccd686SRico Sonntag /** 54993ccd686SRico Sonntag * ISO3166 3 letter codes, with their 2 letter equivalent. 55093ccd686SRico Sonntag * NOTE: this is not 1:1. ENG/SCO/WAL/NIR => GB 551*9deadf1cSGreg Roach * NOTE: this also includes chapman codes and others. Should it? 55293ccd686SRico Sonntag * 55324f2a3afSGreg Roach * @return array<string> 55493ccd686SRico Sonntag */ 55593ccd686SRico Sonntag public function iso3166(): array 55693ccd686SRico Sonntag { 55793ccd686SRico Sonntag return [ 55893ccd686SRico Sonntag 'ABW' => 'AW', 55993ccd686SRico Sonntag 'AFG' => 'AF', 56093ccd686SRico Sonntag 'AGO' => 'AO', 56193ccd686SRico Sonntag 'AIA' => 'AI', 56293ccd686SRico Sonntag 'ALA' => 'AX', 56393ccd686SRico Sonntag 'ALB' => 'AL', 56493ccd686SRico Sonntag 'AND' => 'AD', 56593ccd686SRico Sonntag 'ARE' => 'AE', 56693ccd686SRico Sonntag 'ARG' => 'AR', 56793ccd686SRico Sonntag 'ARM' => 'AM', 56893ccd686SRico Sonntag 'ASM' => 'AS', 56993ccd686SRico Sonntag 'ATA' => 'AQ', 57093ccd686SRico Sonntag 'ATF' => 'TF', 57193ccd686SRico Sonntag 'ATG' => 'AG', 57293ccd686SRico Sonntag 'AUS' => 'AU', 57393ccd686SRico Sonntag 'AUT' => 'AT', 57493ccd686SRico Sonntag 'AZE' => 'AZ', 57593ccd686SRico Sonntag 'BDI' => 'BI', 57693ccd686SRico Sonntag 'BEL' => 'BE', 57793ccd686SRico Sonntag 'BEN' => 'BJ', 57893ccd686SRico Sonntag 'BFA' => 'BF', 57993ccd686SRico Sonntag 'BGD' => 'BD', 58093ccd686SRico Sonntag 'BGR' => 'BG', 58193ccd686SRico Sonntag 'BHR' => 'BH', 58293ccd686SRico Sonntag 'BHS' => 'BS', 58393ccd686SRico Sonntag 'BIH' => 'BA', 58493ccd686SRico Sonntag 'BLR' => 'BY', 58593ccd686SRico Sonntag 'BLZ' => 'BZ', 58693ccd686SRico Sonntag 'BMU' => 'BM', 58793ccd686SRico Sonntag 'BOL' => 'BO', 58893ccd686SRico Sonntag 'BRA' => 'BR', 58993ccd686SRico Sonntag 'BRB' => 'BB', 59093ccd686SRico Sonntag 'BRN' => 'BN', 59193ccd686SRico Sonntag 'BTN' => 'BT', 59293ccd686SRico Sonntag 'BVT' => 'BV', 59393ccd686SRico Sonntag 'BWA' => 'BW', 59493ccd686SRico Sonntag 'CAF' => 'CF', 59593ccd686SRico Sonntag 'CAN' => 'CA', 59693ccd686SRico Sonntag 'CCK' => 'CC', 59793ccd686SRico Sonntag 'CHE' => 'CH', 59893ccd686SRico Sonntag 'CHL' => 'CL', 59993ccd686SRico Sonntag 'CHN' => 'CN', 60093ccd686SRico Sonntag 'CIV' => 'CI', 60193ccd686SRico Sonntag 'CMR' => 'CM', 60293ccd686SRico Sonntag 'COD' => 'CD', 60393ccd686SRico Sonntag 'COG' => 'CG', 60493ccd686SRico Sonntag 'COK' => 'CK', 60593ccd686SRico Sonntag 'COL' => 'CO', 60693ccd686SRico Sonntag 'COM' => 'KM', 60793ccd686SRico Sonntag 'CPV' => 'CV', 60893ccd686SRico Sonntag 'CRI' => 'CR', 60993ccd686SRico Sonntag 'CUB' => 'CU', 61093ccd686SRico Sonntag 'CXR' => 'CX', 61193ccd686SRico Sonntag 'CYM' => 'KY', 61293ccd686SRico Sonntag 'CYP' => 'CY', 61393ccd686SRico Sonntag 'CZE' => 'CZ', 61493ccd686SRico Sonntag 'DEU' => 'DE', 61593ccd686SRico Sonntag 'DJI' => 'DJ', 61693ccd686SRico Sonntag 'DMA' => 'DM', 61793ccd686SRico Sonntag 'DNK' => 'DK', 61893ccd686SRico Sonntag 'DOM' => 'DO', 61993ccd686SRico Sonntag 'DZA' => 'DZ', 62093ccd686SRico Sonntag 'ECU' => 'EC', 62193ccd686SRico Sonntag 'EGY' => 'EG', 62293ccd686SRico Sonntag 'ENG' => 'GB', 62393ccd686SRico Sonntag 'ERI' => 'ER', 62493ccd686SRico Sonntag 'ESH' => 'EH', 62593ccd686SRico Sonntag 'ESP' => 'ES', 62693ccd686SRico Sonntag 'EST' => 'EE', 62793ccd686SRico Sonntag 'ETH' => 'ET', 62893ccd686SRico Sonntag 'FIN' => 'FI', 62993ccd686SRico Sonntag 'FJI' => 'FJ', 63093ccd686SRico Sonntag 'FLK' => 'FK', 63193ccd686SRico Sonntag 'FRA' => 'FR', 63293ccd686SRico Sonntag 'FRO' => 'FO', 63393ccd686SRico Sonntag 'FSM' => 'FM', 63493ccd686SRico Sonntag 'GAB' => 'GA', 63593ccd686SRico Sonntag 'GBR' => 'GB', 63693ccd686SRico Sonntag 'GEO' => 'GE', 63793ccd686SRico Sonntag 'GHA' => 'GH', 63893ccd686SRico Sonntag 'GIB' => 'GI', 63993ccd686SRico Sonntag 'GIN' => 'GN', 64093ccd686SRico Sonntag 'GLP' => 'GP', 64193ccd686SRico Sonntag 'GMB' => 'GM', 64293ccd686SRico Sonntag 'GNB' => 'GW', 64393ccd686SRico Sonntag 'GNQ' => 'GQ', 64493ccd686SRico Sonntag 'GRC' => 'GR', 64593ccd686SRico Sonntag 'GRD' => 'GD', 64693ccd686SRico Sonntag 'GRL' => 'GL', 64793ccd686SRico Sonntag 'GTM' => 'GT', 64893ccd686SRico Sonntag 'GUF' => 'GF', 64993ccd686SRico Sonntag 'GUM' => 'GU', 65093ccd686SRico Sonntag 'GUY' => 'GY', 65193ccd686SRico Sonntag 'HKG' => 'HK', 65293ccd686SRico Sonntag 'HMD' => 'HM', 65393ccd686SRico Sonntag 'HND' => 'HN', 65493ccd686SRico Sonntag 'HRV' => 'HR', 65593ccd686SRico Sonntag 'HTI' => 'HT', 65693ccd686SRico Sonntag 'HUN' => 'HU', 65793ccd686SRico Sonntag 'IDN' => 'ID', 65893ccd686SRico Sonntag 'IND' => 'IN', 65993ccd686SRico Sonntag 'IOT' => 'IO', 66093ccd686SRico Sonntag 'IRL' => 'IE', 66193ccd686SRico Sonntag 'IRN' => 'IR', 66293ccd686SRico Sonntag 'IRQ' => 'IQ', 66393ccd686SRico Sonntag 'ISL' => 'IS', 66493ccd686SRico Sonntag 'ISR' => 'IL', 66593ccd686SRico Sonntag 'ITA' => 'IT', 66693ccd686SRico Sonntag 'JAM' => 'JM', 66793ccd686SRico Sonntag 'JOR' => 'JO', 66893ccd686SRico Sonntag 'JPN' => 'JA', 66993ccd686SRico Sonntag 'KAZ' => 'KZ', 67093ccd686SRico Sonntag 'KEN' => 'KE', 67193ccd686SRico Sonntag 'KGZ' => 'KG', 67293ccd686SRico Sonntag 'KHM' => 'KH', 67393ccd686SRico Sonntag 'KIR' => 'KI', 67493ccd686SRico Sonntag 'KNA' => 'KN', 67593ccd686SRico Sonntag 'KOR' => 'KO', 67693ccd686SRico Sonntag 'KWT' => 'KW', 67793ccd686SRico Sonntag 'LAO' => 'LA', 67893ccd686SRico Sonntag 'LBN' => 'LB', 67993ccd686SRico Sonntag 'LBR' => 'LR', 68093ccd686SRico Sonntag 'LBY' => 'LY', 68193ccd686SRico Sonntag 'LCA' => 'LC', 68293ccd686SRico Sonntag 'LIE' => 'LI', 68393ccd686SRico Sonntag 'LKA' => 'LK', 68493ccd686SRico Sonntag 'LSO' => 'LS', 68593ccd686SRico Sonntag 'LTU' => 'LT', 68693ccd686SRico Sonntag 'LUX' => 'LU', 68793ccd686SRico Sonntag 'LVA' => 'LV', 68893ccd686SRico Sonntag 'MAC' => 'MO', 68993ccd686SRico Sonntag 'MAR' => 'MA', 69093ccd686SRico Sonntag 'MCO' => 'MC', 69193ccd686SRico Sonntag 'MDA' => 'MD', 69293ccd686SRico Sonntag 'MDG' => 'MG', 69393ccd686SRico Sonntag 'MDV' => 'MV', 69493ccd686SRico Sonntag 'MEX' => 'MX', 69593ccd686SRico Sonntag 'MHL' => 'MH', 69693ccd686SRico Sonntag 'MKD' => 'MK', 69793ccd686SRico Sonntag 'MLI' => 'ML', 69893ccd686SRico Sonntag 'MLT' => 'MT', 69993ccd686SRico Sonntag 'MMR' => 'MM', 70093ccd686SRico Sonntag 'MNG' => 'MN', 70193ccd686SRico Sonntag 'MNP' => 'MP', 70293ccd686SRico Sonntag 'MNT' => 'ME', 70393ccd686SRico Sonntag 'MOZ' => 'MZ', 70493ccd686SRico Sonntag 'MRT' => 'MR', 70593ccd686SRico Sonntag 'MSR' => 'MS', 70693ccd686SRico Sonntag 'MTQ' => 'MQ', 70793ccd686SRico Sonntag 'MUS' => 'MU', 70893ccd686SRico Sonntag 'MWI' => 'MW', 70993ccd686SRico Sonntag 'MYS' => 'MY', 71093ccd686SRico Sonntag 'MYT' => 'YT', 71193ccd686SRico Sonntag 'NAM' => 'NA', 71293ccd686SRico Sonntag 'NCL' => 'NC', 71393ccd686SRico Sonntag 'NER' => 'NE', 71493ccd686SRico Sonntag 'NFK' => 'NF', 71593ccd686SRico Sonntag 'NGA' => 'NG', 71693ccd686SRico Sonntag 'NIC' => 'NI', 71793ccd686SRico Sonntag 'NIR' => 'GB', 71893ccd686SRico Sonntag 'NIU' => 'NU', 71993ccd686SRico Sonntag 'NLD' => 'NL', 72093ccd686SRico Sonntag 'NOR' => 'NO', 72193ccd686SRico Sonntag 'NPL' => 'NP', 72293ccd686SRico Sonntag 'NRU' => 'NR', 72393ccd686SRico Sonntag 'NZL' => 'NZ', 72493ccd686SRico Sonntag 'OMN' => 'OM', 72593ccd686SRico Sonntag 'PAK' => 'PK', 72693ccd686SRico Sonntag 'PAN' => 'PA', 72793ccd686SRico Sonntag 'PCN' => 'PN', 72893ccd686SRico Sonntag 'PER' => 'PE', 72993ccd686SRico Sonntag 'PHL' => 'PH', 73093ccd686SRico Sonntag 'PLW' => 'PW', 73193ccd686SRico Sonntag 'PNG' => 'PG', 73293ccd686SRico Sonntag 'POL' => 'PL', 73393ccd686SRico Sonntag 'PRI' => 'PR', 73493ccd686SRico Sonntag 'PRK' => 'KP', 73593ccd686SRico Sonntag 'PRT' => 'PO', 73693ccd686SRico Sonntag 'PRY' => 'PY', 73793ccd686SRico Sonntag 'PSE' => 'PS', 73893ccd686SRico Sonntag 'PYF' => 'PF', 73993ccd686SRico Sonntag 'QAT' => 'QA', 74093ccd686SRico Sonntag 'REU' => 'RE', 74193ccd686SRico Sonntag 'ROM' => 'RO', 74293ccd686SRico Sonntag 'RUS' => 'RU', 74393ccd686SRico Sonntag 'RWA' => 'RW', 74493ccd686SRico Sonntag 'SAU' => 'SA', 74593ccd686SRico Sonntag 'SCT' => 'GB', 74693ccd686SRico Sonntag 'SDN' => 'SD', 74793ccd686SRico Sonntag 'SEN' => 'SN', 74893ccd686SRico Sonntag 'SER' => 'RS', 74993ccd686SRico Sonntag 'SGP' => 'SG', 75093ccd686SRico Sonntag 'SGS' => 'GS', 75193ccd686SRico Sonntag 'SHN' => 'SH', 75293ccd686SRico Sonntag 'SJM' => 'SJ', 75393ccd686SRico Sonntag 'SLB' => 'SB', 75493ccd686SRico Sonntag 'SLE' => 'SL', 75593ccd686SRico Sonntag 'SLV' => 'SV', 75693ccd686SRico Sonntag 'SMR' => 'SM', 75793ccd686SRico Sonntag 'SOM' => 'SO', 75893ccd686SRico Sonntag 'SPM' => 'PM', 75993ccd686SRico Sonntag 'STP' => 'ST', 76093ccd686SRico Sonntag 'SUR' => 'SR', 76193ccd686SRico Sonntag 'SVK' => 'SK', 76293ccd686SRico Sonntag 'SVN' => 'SI', 76393ccd686SRico Sonntag 'SWE' => 'SE', 76493ccd686SRico Sonntag 'SWZ' => 'SZ', 76593ccd686SRico Sonntag 'SYC' => 'SC', 76693ccd686SRico Sonntag 'SYR' => 'SY', 76793ccd686SRico Sonntag 'TCA' => 'TC', 76893ccd686SRico Sonntag 'TCD' => 'TD', 76993ccd686SRico Sonntag 'TGO' => 'TG', 77093ccd686SRico Sonntag 'THA' => 'TH', 77193ccd686SRico Sonntag 'TJK' => 'TJ', 77293ccd686SRico Sonntag 'TKL' => 'TK', 77393ccd686SRico Sonntag 'TKM' => 'TM', 77493ccd686SRico Sonntag 'TLS' => 'TL', 77593ccd686SRico Sonntag 'TON' => 'TO', 77693ccd686SRico Sonntag 'TTO' => 'TT', 77793ccd686SRico Sonntag 'TUN' => 'TN', 77893ccd686SRico Sonntag 'TUR' => 'TR', 77993ccd686SRico Sonntag 'TUV' => 'TV', 78093ccd686SRico Sonntag 'TWN' => 'TW', 78193ccd686SRico Sonntag 'TZA' => 'TZ', 78293ccd686SRico Sonntag 'UGA' => 'UG', 78393ccd686SRico Sonntag 'UKR' => 'UA', 78493ccd686SRico Sonntag 'UMI' => 'UM', 78593ccd686SRico Sonntag 'URY' => 'UY', 78693ccd686SRico Sonntag 'USA' => 'US', 78793ccd686SRico Sonntag 'UZB' => 'UZ', 78893ccd686SRico Sonntag 'VAT' => 'VA', 78993ccd686SRico Sonntag 'VCT' => 'VC', 79093ccd686SRico Sonntag 'VEN' => 'VE', 79193ccd686SRico Sonntag 'VGB' => 'VG', 79293ccd686SRico Sonntag 'VIR' => 'VI', 79393ccd686SRico Sonntag 'VNM' => 'VN', 79493ccd686SRico Sonntag 'VUT' => 'VU', 79593ccd686SRico Sonntag 'WLF' => 'WF', 79693ccd686SRico Sonntag 'WLS' => 'GB', 79793ccd686SRico Sonntag 'WSM' => 'WS', 79893ccd686SRico Sonntag 'YEM' => 'YE', 79993ccd686SRico Sonntag 'ZAF' => 'ZA', 80093ccd686SRico Sonntag 'ZMB' => 'ZM', 80193ccd686SRico Sonntag 'ZWE' => 'ZW', 80293ccd686SRico Sonntag ]; 80393ccd686SRico Sonntag } 80493ccd686SRico Sonntag 80593ccd686SRico Sonntag /** 80693ccd686SRico Sonntag * Returns the translated country name based on the given two letter country code. 80793ccd686SRico Sonntag * 80893ccd686SRico Sonntag * @param string $twoLetterCode The two letter country code 80993ccd686SRico Sonntag * 81093ccd686SRico Sonntag * @return string 81193ccd686SRico Sonntag */ 81293ccd686SRico Sonntag public function mapTwoLetterToName(string $twoLetterCode): string 81393ccd686SRico Sonntag { 81493ccd686SRico Sonntag $threeLetterCode = array_search($twoLetterCode, $this->iso3166(), true); 81593ccd686SRico Sonntag $threeLetterCode = $threeLetterCode ?: '???'; 81693ccd686SRico Sonntag 81793ccd686SRico Sonntag return $this->getAllCountries()[$threeLetterCode]; 81893ccd686SRico Sonntag } 81993ccd686SRico Sonntag} 820