// worldLocations provides functions to retrieve information about the world's countries and cities. // All location data is taken from https://github.com/dr5hn/countries-states-cities-database/ package worldLocations import "seekia/imported/geodist" import "seekia/internal/encoding" import "seekia/internal/helpers" import _ "embed" import "slices" import "errors" //go:embed worldCities.messagepack var worldCitiesFileBytes []byte func init(){ initializeAllCountryObjectsList() } // This must be called on startup once func InitializeWorldLocationsVariables()error{ var allCityObjectsListForMessagepack []CityObjectForMessagepack err := encoding.DecodeMessagePackBytes(false, worldCitiesFileBytes, &allCityObjectsListForMessagepack) if (err != nil) { return err } allCityObjectsList = make([]CityObject, 0, len(allCityObjectsListForMessagepack)) for _, cityObjectForMessagepack := range allCityObjectsListForMessagepack { cityName := cityObjectForMessagepack.Name cityState := cityObjectForMessagepack.State cityCountryIdentifier := cityObjectForMessagepack.Country cityLatitude := cityObjectForMessagepack.Latitude cityLongitude := cityObjectForMessagepack.Longitude countryObject, err := GetCountryObjectFromCountryIdentifier(cityCountryIdentifier) if (err != nil) { return err } cityCountryPrimaryName := countryObject.NamesList[0] newCityObject := CityObject{ Name: cityName, State: cityState, Country: cityCountryPrimaryName, Latitude: cityLatitude, Longitude: cityLongitude, } allCityObjectsList = append(allCityObjectsList, newCityObject) } allCityObjectsMap = make(map[CoordinatesObject]CityObject) for _, cityObject := range allCityObjectsList{ cityLatitude := cityObject.Latitude cityLongitude := cityObject.Longitude coordinatesObject := CoordinatesObject{ Latitude: cityLatitude, Longitude: cityLongitude, } allCityObjectsMap[coordinatesObject] = cityObject } return nil } var allCityObjectsList []CityObject func getAllCityObjectsList()([]CityObject, error){ if (allCityObjectsList == nil){ return nil, errors.New("allCityObjectsList is not initialized.") } // The list only has to be established once upon startup return allCityObjectsList, nil } var allCityObjectsMap map[CoordinatesObject]CityObject func getAllCityObjectsMap()(map[CoordinatesObject]CityObject, error){ if (allCityObjectsMap == nil){ return nil, errors.New("getAllCityObjectsMap called when allCityObjectsMap is not initialized.") } return allCityObjectsMap, nil } // This is the format that cities are stored in in the worldCitites.messagepack file // We store it in this format to save space type CityObjectForMessagepack struct{ Name string State string // This is the country's identifier Country int Latitude float64 Longitude float64 } type CityObject struct{ Name string State string Country string Latitude float64 Longitude float64 } type CoordinatesObject struct{ Latitude float64 Longitude float64 } type CountryObject struct{ Identifier int // The first name in this list is the country's primary name NamesList []string } //Outputs: // -bool: City found (Typically during use, if this is false, the user has entered coordinates manually, which is fine) // -string: City name // -string: City state // -string: City country // -error func GetCityFromCoordinates(locationLatitude float64, locationLongitude float64)(bool, string, string, string, error){ allCityObjectsMap, err := getAllCityObjectsMap() if (err != nil) { return false, "", "", "", err } coordinatesObject := CoordinatesObject{ Latitude: locationLatitude, Longitude: locationLongitude, } cityObject, exists := allCityObjectsMap[coordinatesObject] if (exists == false){ return false, "", "", "", nil } cityName := cityObject.Name cityState := cityObject.State cityCountry := cityObject.Country return true, cityName, cityState, cityCountry, nil } //Outputs: // -string: City Name // -string: City State // -int: City Country Identifier // -float64: Kilometers distance from city // -error func GetClosestCityFromCoordinates(locationLatitude float64, locationLongitude float64)(string, string, int, float64, error){ cityFound, cityName, cityState, cityCountry, err := GetCityFromCoordinates(locationLatitude, locationLongitude) if (err != nil) { return "", "", 0, 0, err } if (cityFound == true){ countryIdentifier, err := GetCountryIdentifierFromCountryName(cityCountry) if (err != nil){ return "", "", 0, 0, err } return cityName, cityState, countryIdentifier, 0, nil } allCityObjectList, err := getAllCityObjectsList() if (err != nil) { return "", "", 0, 0, err } closestCityName := "" closestCityState := "" closestCityCountry := "" closestCityKilometersDistance := float64(0) for index, cityObject := range allCityObjectList{ cityName := cityObject.Name cityStateName := cityObject.State cityCountryName := cityObject.Country cityLatitude := cityObject.Latitude cityLongitude := cityObject.Longitude cityKilometersDistance, err := geodist.GetDistanceBetweenCoordinates(locationLatitude, locationLongitude, cityLatitude, cityLongitude) if (err != nil) { return "", "", 0, 0, err } if (index == 0 || cityKilometersDistance < closestCityKilometersDistance){ closestCityName = cityName closestCityState = cityStateName closestCityCountry = cityCountryName closestCityKilometersDistance = cityKilometersDistance } } closestCountryIdentifier, err := GetCountryIdentifierFromCountryName(closestCityCountry) if (err != nil){ return "", "", 0, 0, err } return closestCityName, closestCityState, closestCountryIdentifier, closestCityKilometersDistance, nil } func GetAllCityObjectsInCountry(countryIdentifier int)([]CityObject, error){ countryObject, err := GetCountryObjectFromCountryIdentifier(countryIdentifier) if (err != nil){ return nil, errors.New("GetAllCityObjectsInCountry failed: " + err.Error()) } countryNamesList := countryObject.NamesList allCityObjectsList, err := getAllCityObjectsList() if (err != nil) { return nil, err } countryCityObjectsList := make([]CityObject, 0) for _, cityObject := range allCityObjectsList{ cityCountryName := cityObject.Country isWithinCountry := slices.Contains(countryNamesList, cityCountryName) if (isWithinCountry == true){ countryCityObjectsList = append(countryCityObjectsList, cityObject) } } return countryCityObjectsList, nil } // Name should be the primary name func GetCountryIdentifierFromCountryName(countryName string)(int, error){ allCountryObjectsList, err := GetAllCountryObjectsList() if (err != nil) { return 0, err } for _, countryObject := range allCountryObjectsList{ countryIdentifier := countryObject.Identifier countryPrimaryName := countryObject.NamesList[0] if (countryName == countryPrimaryName){ return countryIdentifier, nil } } return 0, errors.New("GetCountryIdentifierFromCountryName called with unknown country name: " + countryName) } func GetCountryObjectFromCountryIdentifier(countryIdentifier int)(CountryObject, error){ allCountryObjectsList, err := GetAllCountryObjectsList() if (err != nil) { emptyObject := CountryObject{} return emptyObject, err } for _, countryObject := range allCountryObjectsList{ currentCountryIdentifier := countryObject.Identifier if (countryIdentifier == currentCountryIdentifier){ return countryObject, nil } } emptyObject := CountryObject{} countryIdentifierString := helpers.ConvertIntToString(countryIdentifier) return emptyObject, errors.New("GetCountryObjectFromCountryIdentifier called with unknown country identifier: " + countryIdentifierString) } func VerifyCountryIdentifier(inputIdentifier int)bool{ if (inputIdentifier >= 1 && inputIdentifier <= 219){ return true } return false } // The countries list does not contain all of the country names from the original cities.json file from which worldCities.messagepack is created // All countries within the worldCities.messagepack file must exist within the country objects list. // Countries are defined as being within the jurisdiction of a particular government. // Users can use the countries filters to filter out other users who may live nearby, but are not in the country they are in. // This is useful because there may be restrictions on travel and living that would make mating more difficult. // Most users who do not live near a border should only rely on the Distance filter to find users who are nearby. // Any time the countries list is updated, a new profile version must be created. var allCountryObjectsList []CountryObject func GetAllCountryObjectsList()([]CountryObject, error){ if (allCountryObjectsList == nil){ return nil, errors.New("allCountryObjectsList is not initialized.") } return allCountryObjectsList, nil } func initializeAllCountryObjectsList(){ countryObject_1 := CountryObject{ Identifier: 1, NamesList: []string{"Afghanistan"}, } countryObject_2 := CountryObject{ Identifier: 2, NamesList: []string{"Aland Islands"}, } countryObject_3 := CountryObject{ Identifier: 3, NamesList: []string{"Albania"}, } countryObject_4 := CountryObject{ Identifier: 4, NamesList: []string{"Algeria"}, } countryObject_5 := CountryObject{ Identifier: 5, NamesList: []string{"Andorra"}, } countryObject_6 := CountryObject{ Identifier: 6, NamesList: []string{"Angola"}, } countryObject_7 := CountryObject{ Identifier: 7, NamesList: []string{"Anguilla"}, } countryObject_8 := CountryObject{ Identifier: 8, NamesList: []string{"Antarctica"}, } countryObject_9 := CountryObject{ Identifier: 9, NamesList: []string{"Antigua And Barbuda"}, } countryObject_10 := CountryObject{ Identifier: 10, NamesList: []string{"Argentina"}, } countryObject_11 := CountryObject{ Identifier: 11, NamesList: []string{"Armenia"}, } countryObject_12 := CountryObject{ Identifier: 12, NamesList: []string{"Aruba"}, } countryObject_13 := CountryObject{ Identifier: 13, NamesList: []string{"Australia"}, } countryObject_14 := CountryObject{ Identifier: 14, NamesList: []string{"Austria"}, } countryObject_15 := CountryObject{ Identifier: 15, NamesList: []string{"Azerbaijan"}, } countryObject_16 := CountryObject{ Identifier: 16, NamesList: []string{"Bangladesh"}, } countryObject_17 := CountryObject{ Identifier: 17, NamesList: []string{"Bahrain"}, } countryObject_18 := CountryObject{ Identifier: 18, NamesList: []string{"Barbados"}, } countryObject_19 := CountryObject{ Identifier: 19, NamesList: []string{"Belarus"}, } countryObject_20 := CountryObject{ Identifier: 20, NamesList: []string{"Belgium"}, } countryObject_21 := CountryObject{ Identifier: 21, NamesList: []string{"Belize"}, } countryObject_22 := CountryObject{ Identifier: 22, NamesList: []string{"Benin"}, } countryObject_23 := CountryObject{ Identifier: 23, NamesList: []string{"Bhutan"}, } countryObject_24 := CountryObject{ Identifier: 24, NamesList: []string{"Bolivia"}, } countryObject_25 := CountryObject{ Identifier: 25, NamesList: []string{"Bonaire"}, } countryObject_26 := CountryObject{ Identifier: 26, NamesList: []string{"Bosnia and Herzegovina"}, } countryObject_27 := CountryObject{ Identifier: 27, NamesList: []string{"Botswana"}, } countryObject_28 := CountryObject{ Identifier: 28, NamesList: []string{"Brazil"}, } countryObject_29 := CountryObject{ Identifier: 29, NamesList: []string{"British Indian Ocean Territory"}, } countryObject_30 := CountryObject{ Identifier: 30, NamesList: []string{"Brunei"}, } countryObject_31 := CountryObject{ Identifier: 31, NamesList: []string{"Bulgaria"}, } countryObject_32 := CountryObject{ Identifier: 32, NamesList: []string{"Burkina Faso"}, } countryObject_33 := CountryObject{ Identifier: 33, NamesList: []string{"Burundi"}, } countryObject_34 := CountryObject{ Identifier: 34, NamesList: []string{"Cambodia"}, } countryObject_35 := CountryObject{ Identifier: 35, NamesList: []string{"Cameroon"}, } countryObject_36 := CountryObject{ Identifier: 36, NamesList: []string{"Canada"}, } countryObject_37 := CountryObject{ Identifier: 37, NamesList: []string{"Cape Verde"}, } countryObject_38 := CountryObject{ Identifier: 38, NamesList: []string{"Cayman Islands"}, } countryObject_39 := CountryObject{ Identifier: 39, NamesList: []string{"Central African Republic"}, } countryObject_40 := CountryObject{ Identifier: 40, NamesList: []string{"Chad"}, } countryObject_41 := CountryObject{ Identifier: 41, NamesList: []string{"Chile"}, } countryObject_42 := CountryObject{ Identifier: 42, NamesList: []string{"China"}, } countryObject_43 := CountryObject{ Identifier: 43, NamesList: []string{"Christmas Island"}, } countryObject_44 := CountryObject{ Identifier: 44, NamesList: []string{"Colombia"}, } countryObject_45 := CountryObject{ Identifier: 45, NamesList: []string{"Comoros"}, } countryObject_46 := CountryObject{ Identifier: 46, NamesList: []string{"Congo"}, } countryObject_47 := CountryObject{ Identifier: 47, NamesList: []string{"Costa Rica"}, } countryObject_48 := CountryObject{ Identifier: 48, NamesList: []string{"Cote D'Ivoire"}, } countryObject_49 := CountryObject{ Identifier: 49, NamesList: []string{"Croatia"}, } countryObject_50 := CountryObject{ Identifier: 50, NamesList: []string{"Cuba"}, } countryObject_51 := CountryObject{ Identifier: 51, NamesList: []string{"CuraƧao"}, } countryObject_52 := CountryObject{ Identifier: 52, NamesList: []string{"Cyprus"}, } countryObject_53 := CountryObject{ Identifier: 53, NamesList: []string{"Czech Republic"}, } countryObject_54 := CountryObject{ Identifier: 54, NamesList: []string{"Democratic Republic of the Congo"}, } countryObject_55 := CountryObject{ Identifier: 55, NamesList: []string{"Denmark"}, } countryObject_56 := CountryObject{ Identifier: 56, NamesList: []string{"Djibouti"}, } countryObject_57 := CountryObject{ Identifier: 57, NamesList: []string{"Dominica"}, } countryObject_58 := CountryObject{ Identifier: 58, NamesList: []string{"Dominican Republic"}, } countryObject_59 := CountryObject{ Identifier: 59, NamesList: []string{"East Timor", "Timor-Leste"}, } countryObject_60 := CountryObject{ Identifier: 60, NamesList: []string{"Ecuador"}, } countryObject_61 := CountryObject{ Identifier: 61, NamesList: []string{"Egypt"}, } countryObject_62 := CountryObject{ Identifier: 62, NamesList: []string{"El Salvador"}, } countryObject_63 := CountryObject{ Identifier: 63, NamesList: []string{"Equatorial Guinea"}, } countryObject_64 := CountryObject{ Identifier: 64, NamesList: []string{"Eritrea"}, } countryObject_65 := CountryObject{ Identifier: 65, NamesList: []string{"Estonia"}, } countryObject_66 := CountryObject{ Identifier: 66, NamesList: []string{"Ethiopia"}, } countryObject_67 := CountryObject{ Identifier: 67, NamesList: []string{"Falkland Islands"}, } countryObject_68 := CountryObject{ Identifier: 68, NamesList: []string{"Fiji Islands"}, } countryObject_69 := CountryObject{ Identifier: 69, NamesList: []string{"Finland"}, } countryObject_70 := CountryObject{ Identifier: 70, NamesList: []string{"France"}, } countryObject_71 := CountryObject{ Identifier: 71, NamesList: []string{"Gabon"}, } countryObject_72 := CountryObject{ Identifier: 72, NamesList: []string{"Gambia"}, } countryObject_73 := CountryObject{ Identifier: 73, NamesList: []string{"Georgia"}, } countryObject_74 := CountryObject{ Identifier: 74, NamesList: []string{"Germany"}, } countryObject_75 := CountryObject{ Identifier: 75, NamesList: []string{"Ghana"}, } countryObject_76 := CountryObject{ Identifier: 76, NamesList: []string{"Greece"}, } countryObject_77 := CountryObject{ Identifier: 77, NamesList: []string{"Greenland"}, } countryObject_78 := CountryObject{ Identifier: 78, NamesList: []string{"Grenada"}, } countryObject_79 := CountryObject{ Identifier: 79, NamesList: []string{"Guatemala"}, } countryObject_80 := CountryObject{ Identifier: 80, NamesList: []string{"Guinea"}, } countryObject_81 := CountryObject{ Identifier: 81, NamesList: []string{"Guinea-Bissau"}, } countryObject_82 := CountryObject{ Identifier: 82, NamesList: []string{"Guyana"}, } countryObject_83 := CountryObject{ Identifier: 83, NamesList: []string{"Haiti"}, } countryObject_84 := CountryObject{ Identifier: 84, NamesList: []string{"Honduras"}, } countryObject_85 := CountryObject{ Identifier: 85, NamesList: []string{"Hungary"}, } countryObject_86 := CountryObject{ Identifier: 86, NamesList: []string{"Iceland"}, } countryObject_87 := CountryObject{ Identifier: 87, NamesList: []string{"India"}, } countryObject_88 := CountryObject{ Identifier: 88, NamesList: []string{"Indonesia"}, } countryObject_89 := CountryObject{ Identifier: 89, NamesList: []string{"Iran"}, } countryObject_90 := CountryObject{ Identifier: 90, NamesList: []string{"Iraq"}, } countryObject_91 := CountryObject{ Identifier: 91, NamesList: []string{"Ireland"}, } countryObject_92 := CountryObject{ Identifier: 92, NamesList: []string{"Israel"}, } countryObject_93 := CountryObject{ Identifier: 93, NamesList: []string{"Italy"}, } countryObject_94 := CountryObject{ Identifier: 94, NamesList: []string{"Jamaica"}, } countryObject_95 := CountryObject{ Identifier: 95, NamesList: []string{"Japan"}, } countryObject_96 := CountryObject{ Identifier: 96, NamesList: []string{"Jersey"}, } countryObject_97 := CountryObject{ Identifier: 97, NamesList: []string{"Jordan"}, } countryObject_98 := CountryObject{ Identifier: 98, NamesList: []string{"Kazakhstan"}, } countryObject_99 := CountryObject{ Identifier: 99, NamesList: []string{"Kenya"}, } countryObject_100 := CountryObject{ Identifier: 100, NamesList: []string{"Kiribati"}, } countryObject_101 := CountryObject{ Identifier: 101, NamesList: []string{"Kosovo"}, } countryObject_102 := CountryObject{ Identifier: 102, NamesList: []string{"Kuwait"}, } countryObject_103 := CountryObject{ Identifier: 103, NamesList: []string{"Kyrgyzstan"}, } countryObject_104 := CountryObject{ Identifier: 104, NamesList: []string{"Laos"}, } countryObject_105 := CountryObject{ Identifier: 105, NamesList: []string{"Latvia"}, } countryObject_106 := CountryObject{ Identifier: 106, NamesList: []string{"Lebanon"}, } countryObject_107 := CountryObject{ Identifier: 107, NamesList: []string{"Lesotho"}, } countryObject_108 := CountryObject{ Identifier: 108, NamesList: []string{"Liberia"}, } countryObject_109 := CountryObject{ Identifier: 109, NamesList: []string{"Libya"}, } countryObject_110 := CountryObject{ Identifier: 110, NamesList: []string{"Liechtenstein"}, } countryObject_111 := CountryObject{ Identifier: 111, NamesList: []string{"Lithuania"}, } countryObject_112 := CountryObject{ Identifier: 112, NamesList: []string{"Luxembourg"}, } countryObject_113 := CountryObject{ Identifier: 113, NamesList: []string{"North Macedonia"}, } countryObject_114 := CountryObject{ Identifier: 114, NamesList: []string{"Madagascar"}, } countryObject_115 := CountryObject{ Identifier: 115, NamesList: []string{"Malawi"}, } countryObject_116 := CountryObject{ Identifier: 116, NamesList: []string{"Malaysia"}, } countryObject_117 := CountryObject{ Identifier: 117, NamesList: []string{"Maldives"}, } countryObject_118 := CountryObject{ Identifier: 118, NamesList: []string{"Mali"}, } countryObject_119 := CountryObject{ Identifier: 119, NamesList: []string{"Malta"}, } countryObject_120 := CountryObject{ Identifier: 120, NamesList: []string{"Isle of Man"}, } countryObject_121 := CountryObject{ Identifier: 121, NamesList: []string{"Marshall Islands"}, } countryObject_122 := CountryObject{ Identifier: 122, NamesList: []string{"Mauritania"}, } countryObject_123 := CountryObject{ Identifier: 123, NamesList: []string{"Mauritius"}, } countryObject_124 := CountryObject{ Identifier: 124, NamesList: []string{"Mexico"}, } countryObject_125 := CountryObject{ Identifier: 125, NamesList: []string{"Micronesia"}, } countryObject_126 := CountryObject{ Identifier: 126, NamesList: []string{"Moldova"}, } countryObject_127 := CountryObject{ Identifier: 127, NamesList: []string{"Monaco"}, } countryObject_128 := CountryObject{ Identifier: 128, NamesList: []string{"Mongolia"}, } countryObject_129 := CountryObject{ Identifier: 129, NamesList: []string{"Montenegro"}, } countryObject_130 := CountryObject{ Identifier: 130, NamesList: []string{"Morocco"}, } countryObject_131 := CountryObject{ Identifier: 131, NamesList: []string{"Mozambique"}, } countryObject_132 := CountryObject{ Identifier: 132, NamesList: []string{"Myanmar"}, } countryObject_133 := CountryObject{ Identifier: 133, NamesList: []string{"Namibia"}, } countryObject_134 := CountryObject{ Identifier: 134, NamesList: []string{"Nauru"}, } countryObject_135 := CountryObject{ Identifier: 135, NamesList: []string{"Nepal"}, } countryObject_136 := CountryObject{ Identifier: 136, NamesList: []string{"Netherlands"}, } countryObject_137 := CountryObject{ Identifier: 137, NamesList: []string{"New Caledonia"}, } countryObject_138 := CountryObject{ Identifier: 138, NamesList: []string{"New Zealand"}, } countryObject_139 := CountryObject{ Identifier: 139, NamesList: []string{"Nicaragua"}, } countryObject_140 := CountryObject{ Identifier: 140, NamesList: []string{"Niger"}, } countryObject_141 := CountryObject{ Identifier: 141, NamesList: []string{"Nigeria"}, } countryObject_142 := CountryObject{ Identifier: 142, NamesList: []string{"Niue"}, } countryObject_143 := CountryObject{ Identifier: 143, NamesList: []string{"North Korea"}, } countryObject_144 := CountryObject{ Identifier: 144, NamesList: []string{"Norway"}, } countryObject_145 := CountryObject{ Identifier: 145, NamesList: []string{"Oman"}, } countryObject_146 := CountryObject{ Identifier: 146, NamesList: []string{"Pakistan"}, } countryObject_147 := CountryObject{ Identifier: 147, NamesList: []string{"Palau"}, } countryObject_148 := CountryObject{ Identifier: 148, NamesList: []string{"Panama"}, } countryObject_149 := CountryObject{ Identifier: 149, NamesList: []string{"Papua New Guinea"}, } countryObject_150 := CountryObject{ Identifier: 150, NamesList: []string{"Paraguay"}, } countryObject_151 := CountryObject{ Identifier: 151, NamesList: []string{"Peru"}, } countryObject_152 := CountryObject{ Identifier: 152, NamesList: []string{"Philippines"}, } countryObject_153 := CountryObject{ Identifier: 153, NamesList: []string{"Poland"}, } countryObject_154 := CountryObject{ Identifier: 154, NamesList: []string{"Portugal"}, } countryObject_155 := CountryObject{ Identifier: 155, NamesList: []string{"Puerto Rico"}, } countryObject_156 := CountryObject{ Identifier: 156, NamesList: []string{"Qatar"}, } countryObject_157 := CountryObject{ Identifier: 157, NamesList: []string{"Romania"}, } countryObject_158 := CountryObject{ Identifier: 158, NamesList: []string{"Russia"}, } countryObject_159 := CountryObject{ Identifier: 159, NamesList: []string{"Rwanda"}, } countryObject_160 := CountryObject{ Identifier: 160, NamesList: []string{"Saint Kitts And Nevis"}, } countryObject_161 := CountryObject{ Identifier: 161, NamesList: []string{"Saint Lucia"}, } countryObject_162 := CountryObject{ Identifier: 162, NamesList: []string{"Saint Pierre and Miquelon"}, } countryObject_163 := CountryObject{ Identifier: 163, NamesList: []string{"Saint Vincent And The Grenadines"}, } countryObject_164 := CountryObject{ Identifier: 164, NamesList: []string{"Saint-Martin"}, } countryObject_165 := CountryObject{ Identifier: 165, NamesList: []string{"Samoa"}, } countryObject_166 := CountryObject{ Identifier: 166, NamesList: []string{"San Marino"}, } countryObject_167 := CountryObject{ Identifier: 167, NamesList: []string{"Sao Tome and Principe"}, } countryObject_168 := CountryObject{ Identifier: 168, NamesList: []string{"Saudi Arabia"}, } countryObject_169 := CountryObject{ Identifier: 169, NamesList: []string{"Senegal"}, } countryObject_170 := CountryObject{ Identifier: 170, NamesList: []string{"Serbia"}, } countryObject_171 := CountryObject{ Identifier: 171, NamesList: []string{"Seychelles"}, } countryObject_172 := CountryObject{ Identifier: 172, NamesList: []string{"Sierra Leone"}, } countryObject_173 := CountryObject{ Identifier: 173, NamesList: []string{"Singapore"}, } countryObject_174 := CountryObject{ Identifier: 174, NamesList: []string{"Sint Maarten"}, } countryObject_175 := CountryObject{ Identifier: 175, NamesList: []string{"Slovakia"}, } countryObject_176 := CountryObject{ Identifier: 176, NamesList: []string{"Slovenia"}, } countryObject_177 := CountryObject{ Identifier: 177, NamesList: []string{"Solomon Islands"}, } countryObject_178 := CountryObject{ Identifier: 178, NamesList: []string{"Somalia"}, } countryObject_179 := CountryObject{ Identifier: 179, NamesList: []string{"South Africa"}, } countryObject_180 := CountryObject{ Identifier: 180, NamesList: []string{"South Korea"}, } countryObject_181 := CountryObject{ Identifier: 181, NamesList: []string{"South Sudan"}, } countryObject_182 := CountryObject{ Identifier: 182, NamesList: []string{"Spain"}, } countryObject_183 := CountryObject{ Identifier: 183, NamesList: []string{"Sri Lanka"}, } countryObject_184 := CountryObject{ Identifier: 184, NamesList: []string{"Sudan"}, } countryObject_185 := CountryObject{ Identifier: 185, NamesList: []string{"Suriname"}, } countryObject_186 := CountryObject{ Identifier: 186, NamesList: []string{"Eswatini", "Swaziland"}, } countryObject_187 := CountryObject{ Identifier: 187, NamesList: []string{"Sweden"}, } countryObject_188 := CountryObject{ Identifier: 188, NamesList: []string{"Switzerland"}, } countryObject_189 := CountryObject{ Identifier: 189, NamesList: []string{"Syria"}, } countryObject_190 := CountryObject{ Identifier: 190, NamesList: []string{"Taiwan"}, } countryObject_191 := CountryObject{ Identifier: 191, NamesList: []string{"Tajikistan"}, } countryObject_192 := CountryObject{ Identifier: 192, NamesList: []string{"Tanzania"}, } countryObject_193 := CountryObject{ Identifier: 193, NamesList: []string{"Thailand"}, } countryObject_194 := CountryObject{ Identifier: 194, NamesList: []string{"The Bahamas"}, } countryObject_195 := CountryObject{ Identifier: 195, NamesList: []string{"Togo"}, } countryObject_196 := CountryObject{ Identifier: 196, NamesList: []string{"Tonga"}, } countryObject_197 := CountryObject{ Identifier: 197, NamesList: []string{"Trinidad And Tobago"}, } countryObject_198 := CountryObject{ Identifier: 198, NamesList: []string{"Tunisia"}, } countryObject_199 := CountryObject{ Identifier: 199, NamesList: []string{"Turkey"}, } countryObject_200 := CountryObject{ Identifier: 200, NamesList: []string{"Turkmenistan"}, } countryObject_201 := CountryObject{ Identifier: 201, NamesList: []string{"Turks And Caicos Islands"}, } countryObject_202 := CountryObject{ Identifier: 202, NamesList: []string{"Tuvalu"}, } countryObject_203 := CountryObject{ Identifier: 203, NamesList: []string{"Uganda"}, } countryObject_204 := CountryObject{ Identifier: 204, NamesList: []string{"Ukraine"}, } countryObject_205 := CountryObject{ Identifier: 205, NamesList: []string{"United Arab Emirates"}, } countryObject_206 := CountryObject{ Identifier: 206, NamesList: []string{"United Kingdom"}, } countryObject_207 := CountryObject{ Identifier: 207, NamesList: []string{"United States"}, } countryObject_208 := CountryObject{ Identifier: 208, NamesList: []string{"Uruguay"}, } countryObject_209 := CountryObject{ Identifier: 209, NamesList: []string{"Uzbekistan"}, } countryObject_210 := CountryObject{ Identifier: 210, NamesList: []string{"Vanuatu"}, } countryObject_211 := CountryObject{ Identifier: 211, NamesList: []string{"Vatican City State"}, } countryObject_212 := CountryObject{ Identifier: 212, NamesList: []string{"Venezuela"}, } countryObject_213 := CountryObject{ Identifier: 213, NamesList: []string{"Vietnam"}, } countryObject_214 := CountryObject{ Identifier: 214, NamesList: []string{"British Virgin Islands"}, } countryObject_215 := CountryObject{ Identifier: 215, NamesList: []string{"Wallis And Futuna Islands"}, } countryObject_216 := CountryObject{ Identifier: 216, NamesList: []string{"Yemen"}, } countryObject_217 := CountryObject{ Identifier: 217, NamesList: []string{"Zambia"}, } countryObject_218 := CountryObject{ Identifier: 218, NamesList: []string{"Zimbabwe"}, } countryObject_219 := CountryObject{ Identifier: 219, NamesList: []string{"Bermuda"}, } allCountryObjectsList = []CountryObject{ countryObject_1, countryObject_2, countryObject_3, countryObject_4, countryObject_5, countryObject_6, countryObject_7, countryObject_8, countryObject_9, countryObject_10, countryObject_11, countryObject_12, countryObject_13, countryObject_14, countryObject_15, countryObject_16, countryObject_17, countryObject_18, countryObject_19, countryObject_20, countryObject_21, countryObject_22, countryObject_23, countryObject_24, countryObject_25, countryObject_26, countryObject_27, countryObject_28, countryObject_29, countryObject_30, countryObject_31, countryObject_32, countryObject_33, countryObject_34, countryObject_35, countryObject_36, countryObject_37, countryObject_38, countryObject_39, countryObject_40, countryObject_41, countryObject_42, countryObject_43, countryObject_44, countryObject_45, countryObject_46, countryObject_47, countryObject_48, countryObject_49, countryObject_50, countryObject_51, countryObject_52, countryObject_53, countryObject_54, countryObject_55, countryObject_56, countryObject_57, countryObject_58, countryObject_59, countryObject_60, countryObject_61, countryObject_62, countryObject_63, countryObject_64, countryObject_65, countryObject_66, countryObject_67, countryObject_68, countryObject_69, countryObject_70, countryObject_71, countryObject_72, countryObject_73, countryObject_74, countryObject_75, countryObject_76, countryObject_77, countryObject_78, countryObject_79, countryObject_80, countryObject_81, countryObject_82, countryObject_83, countryObject_84, countryObject_85, countryObject_86, countryObject_87, countryObject_88, countryObject_89, countryObject_90, countryObject_91, countryObject_92, countryObject_93, countryObject_94, countryObject_95, countryObject_96, countryObject_97, countryObject_98, countryObject_99, countryObject_100, countryObject_101, countryObject_102, countryObject_103, countryObject_104, countryObject_105, countryObject_106, countryObject_107, countryObject_108, countryObject_109, countryObject_110, countryObject_111, countryObject_112, countryObject_113, countryObject_114, countryObject_115, countryObject_116, countryObject_117, countryObject_118, countryObject_119, countryObject_120, countryObject_121, countryObject_122, countryObject_123, countryObject_124, countryObject_125, countryObject_126, countryObject_127, countryObject_128, countryObject_129, countryObject_130, countryObject_131, countryObject_132, countryObject_133, countryObject_134, countryObject_135, countryObject_136, countryObject_137, countryObject_138, countryObject_139, countryObject_140, countryObject_141, countryObject_142, countryObject_143, countryObject_144, countryObject_145, countryObject_146, countryObject_147, countryObject_148, countryObject_149, countryObject_150, countryObject_151, countryObject_152, countryObject_153, countryObject_154, countryObject_155, countryObject_156, countryObject_157, countryObject_158, countryObject_159, countryObject_160, countryObject_161, countryObject_162, countryObject_163, countryObject_164, countryObject_165, countryObject_166, countryObject_167, countryObject_168, countryObject_169, countryObject_170, countryObject_171, countryObject_172, countryObject_173, countryObject_174, countryObject_175, countryObject_176, countryObject_177, countryObject_178, countryObject_179, countryObject_180, countryObject_181, countryObject_182, countryObject_183, countryObject_184, countryObject_185, countryObject_186, countryObject_187, countryObject_188, countryObject_189, countryObject_190, countryObject_191, countryObject_192, countryObject_193, countryObject_194, countryObject_195, countryObject_196, countryObject_197, countryObject_198, countryObject_199, countryObject_200, countryObject_201, countryObject_202, countryObject_203, countryObject_204, countryObject_205, countryObject_206, countryObject_207, countryObject_208, countryObject_209, countryObject_210, countryObject_211, countryObject_212, countryObject_213, countryObject_214, countryObject_215, countryObject_216, countryObject_217, countryObject_218, countryObject_219} }