Repository: porimol/countryinfo (language: python)

Issue:
Add demonyms for Wales and Scotland

Macau missing key 'capital_latlng'
I run into a key error while try to access capital_latlng from Macau. 

`CountryInfo('Macau').info()['capital_latlng']`

Despite that there no capital city exist, a nan or empty string as return value, would be preferred..


Discussion / hints:

Fix patch:
diff --git a/countryinfo/data/andorra.json b/countryinfo/data/andorra.json
new file mode 100644
index 0000000..6f2515e
--- /dev/null
+++ b/countryinfo/data/andorra.json
@@ -0,0 +1,26 @@
+{"name":"Andorra",
+  "altSpellings":["AD","Principality of Andorra","Principat d'Andorra"],
+  "area":467,
+  "borders":["FRA","ESP"],
+  "callingCodes":["376"],
+  "capital":"Andorra la Vella",
+  "capital_latlng":[42.5,1.5],
+  "currencies":["EUR"],
+  "demonym":"Andorran",
+  "flag":"https://upload.wikimedia.org/wikipedia/commons/1/19/Flag_of_Andorra.svg",
+  "geoJSON":{"type":"FeatureCollection",
+    "features":[{"type":"Feature","id":"AND",
+      "properties":{"name":"Andorra"},
+      "geometry":{"type":"Polygon",
+        "coordinates":[[[1.3943348412536523,42.64693108863298 ],[1.3943348412536523,42.40519111504224 ],[1.865862744691583,42.40519111504224 ],[1.865862744691583,42.64693108863298],[1.3943348412536523,42.64693108863298]]]}}]},
+  "ISO":{"alpha2":"AD","alpha3":"AND"},
+  "languages":["ca","fr","es","oc"],
+  "latlng":[42.5,1.5],
+  "nativeName":"Principat d'Andorra",
+  "population":81588,
+  "provinces":["Andorra la Vella","Canillo","Encamp","Escaldes-Engordany","La Massana","Ordino","Sant Julià de Lòria"],
+  "region":"Europe","subregion":"Southern Europe",
+  "timezones":["UTC+01:00"],
+  "tld":[".ad"],
+  "translations":{"de":"Andorra","es":"Andorra","fr":"Andorre","ja":"アンドラ","it":"Andorra"},
+  "wiki":"https://en.wikipedia.org/wiki/Andorra"}
\ No newline at end of file
diff --git a/countryinfo/data/burma.json b/countryinfo/data/burma.json
index d40a200..d1bdb7d 100644
--- a/countryinfo/data/burma.json
+++ b/countryinfo/data/burma.json
@@ -1,1 +1,24 @@
-{"flag":"","geoJSON":{},"ISO":{},"provinces":["Ayeyarwady","Bago","Chin State","Kachin State","Kayah State","Kayin State","Magway","Mandalay","Mon State","Rakhine State","Sagaing","Shan State","Tanintharyi","Yangon"],"tld":[],"wiki":"http://en.wikipedia.org/wiki/burma"}
\ No newline at end of file
+{"name":"Burma",
+    "altSpellings":["Myanmar","Republic of the Union of Myanmar","Pyidaunzu Thanmăda Myăma Nainngandaw"],
+    "area":676570,
+    "borders":["BGD","CHN","IND","LAO","THA"],
+    "callingCodes":["95"],
+    "capital":"Naypyidaw",
+    "capital_latlng":[19.75,96.1],
+    "currencies":["MMK"],
+    "demonym":"Burmese",
+    "flag":"https://upload.wikimedia.org/wikipedia/commons/8/8c/Flag_of_Myanmar.svg",
+    "geoJSON":{},
+    "ISO":{"alpha2":"MM","alpha3":"MMR"},
+    "languages":["my"],
+    "nativeName":"Myanma",
+    "population":57526449,
+    "latlng":[22,98],
+    "provinces":["Ayeyarwady","Bago","Chin State","Kachin State","Kayah State","Kayin State","Magway","Mandalay","Mon State","Rakhine State","Sagaing","Shan State","Tanintharyi","Yangon"],
+    "region":"Asia",
+    "subregion":"South-Eastern Asia",
+    "timezones":["UTC+06:30"],
+    "tld":[".mm"],
+    "translations":{"de":"Myanmar","es":"Birmania","fr":"Birmanie","ja":"ミャンマー","it":"Birmania"},
+    "wiki":"http://en.wikipedia.org/wiki/burma"
+}
diff --git a/countryinfo/data/cape_verde.json b/countryinfo/data/cape_verde.json
index 3fa9aa9..74f3053 100644
--- a/countryinfo/data/cape_verde.json
+++ b/countryinfo/data/cape_verde.json
@@ -1,1 +1,1 @@
-{"name":"Cape Verde","altSpellings":["CV","Republic of Cabo Verde","República de Cabo Verde"],"area":4033,"borders":[],"callingCodes":["238"],"capital":"Praia","capital_latlng":[14.916017,-23.509613],"currencies":["CVE"],"demonym":"Cape Verdian","flag":"","geoJSON":{},"ISO":{"alpha2":"CV","alpha3":"CPV"},"languages":["pt"],"latlng":[16,-24],"nativeName":"Cabo Verde","population":518467,"provinces":["Boa Vista","Brava","Maio","Mosteiros","Paul","Porto Novo","Praia","Ribeira Grande","Sal","Santa Catarina","Santa Cruz","Sao Domingos","Sao Filipe","Sao Nicolau","Sao Vicente","Tarrafal"],"region":"Africa","subregion":"Western Africa","timezones":["UTC−01:00"],"tld":[".cv"],"translations":{"de":"Kap Verde","es":"Cabo Verde","fr":"Cap Vert","ja":"カーボベルデ","it":"Capo Verde"},"wiki":"http://en.wikipedia.org/wiki/cape_verde"}
\ No newline at end of file
+{"name":"Cape Verde","altSpellings":["CV","Republic of Cabo Verde","República de Cabo Verde","Cabo Verde"],"area":4033,"borders":[],"callingCodes":["238"],"capital":"Praia","capital_latlng":[14.916017,-23.509613],"currencies":["CVE"],"demonym":"Cape Verdian","flag":"","geoJSON":{},"ISO":{"alpha2":"CV","alpha3":"CPV"},"languages":["pt"],"latlng":[16,-24],"nativeName":"Cabo Verde","population":518467,"provinces":["Boa Vista","Brava","Maio","Mosteiros","Paul","Porto Novo","Praia","Ribeira Grande","Sal","Santa Catarina","Santa Cruz","Sao Domingos","Sao Filipe","Sao Nicolau","Sao Vicente","Tarrafal"],"region":"Africa","subregion":"Western Africa","timezones":["UTC−01:00"],"tld":[".cv"],"translations":{"de":"Kap Verde","es":"Cabo Verde","fr":"Cap Vert","ja":"カーボベルデ","it":"Capo Verde"},"wiki":"http://en.wikipedia.org/wiki/cape_verde"}
diff --git a/countryinfo/data/czeck_republic.json b/countryinfo/data/czeck_republic.json
index 7a0ad6e..4ac352f 100644
--- a/countryinfo/data/czeck_republic.json
+++ b/countryinfo/data/czeck_republic.json
@@ -1,1 +1,1 @@
-{"name":"Czech Republic","altSpellings":["CZ","Česká republika","Česko"],"area":78865,"borders":["AUT","DEU","POL","SVK"],"callingCodes":["420"],"capital":"Prague","capital_latlng":[50.087465,14.421254],"currencies":["CZK"],"demonym":"Czech","flag":"","geoJSON":{"type":"FeatureCollection","features":[{"type":"Feature","id":"CZE","properties":{"name":"Czech Republic"},"geometry":{"type":"Polygon","coordinates":[[[16.960288,48.596982],[16.499283,48.785808],[16.029647,48.733899],[15.253416,49.039074],[14.901447,48.964402],[14.338898,48.555305],[13.595946,48.877172],[13.031329,49.307068],[12.521024,49.547415],[12.415191,49.969121],[12.240111,50.266338],[12.966837,50.484076],[13.338132,50.733234],[14.056228,50.926918],[14.307013,51.117268],[14.570718,51.002339],[15.016996,51.106674],[15.490972,50.78473],[16.238627,50.697733],[16.176253,50.422607],[16.719476,50.215747],[16.868769,50.473974],[17.554567,50.362146],[17.649445,50.049038],[18.392914,49.988629],[18.853144,49.49623],[18.554971,49.495015],[18.399994,49.315001],[18.170498,49.271515],[18.104973,49.043983],[17.913512,48.996493],[17.886485,48.903475],[17.545007,48.800019],[17.101985,48.816969],[16.960288,48.596982]]]}}]},"ISO":{"alpha2":"CZ","alpha3":"CZE"},"languages":["cs","sk"],"latlng":[49.75,15.5],"nativeName":"Česká republika","population":10521600,"provinces":["Brnensky","Budejovicky","Jihlavsky","Karlovarsky","Kralovehradecky","Liberecky","Olomoucky","Ostravsky","Pardubicky","Plzensky","Praha","Stredocesky","Ustecky","Zlinsky"],"region":"Europe","subregion":"Eastern Europe","timezones":["UTC+01:00"],"tld":[".cz"],"translations":{"de":"Tschechische Republik","es":"República Checa","fr":"République tchèque","ja":"チェコ","it":"Repubblica Ceca"},"wiki":"http://en.wikipedia.org/wiki/czeck_republic"}
\ No newline at end of file
+{"name":"Czech Republic","altSpellings":["CZ","Česká republika","Česko","Czechia"],"area":78865,"borders":["AUT","DEU","POL","SVK"],"callingCodes":["420"],"capital":"Prague","capital_latlng":[50.087465,14.421254],"currencies":["CZK"],"demonym":"Czech","flag":"","geoJSON":{"type":"FeatureCollection","features":[{"type":"Feature","id":"CZE","properties":{"name":"Czech Republic"},"geometry":{"type":"Polygon","coordinates":[[[16.960288,48.596982],[16.499283,48.785808],[16.029647,48.733899],[15.253416,49.039074],[14.901447,48.964402],[14.338898,48.555305],[13.595946,48.877172],[13.031329,49.307068],[12.521024,49.547415],[12.415191,49.969121],[12.240111,50.266338],[12.966837,50.484076],[13.338132,50.733234],[14.056228,50.926918],[14.307013,51.117268],[14.570718,51.002339],[15.016996,51.106674],[15.490972,50.78473],[16.238627,50.697733],[16.176253,50.422607],[16.719476,50.215747],[16.868769,50.473974],[17.554567,50.362146],[17.649445,50.049038],[18.392914,49.988629],[18.853144,49.49623],[18.554971,49.495015],[18.399994,49.315001],[18.170498,49.271515],[18.104973,49.043983],[17.913512,48.996493],[17.886485,48.903475],[17.545007,48.800019],[17.101985,48.816969],[16.960288,48.596982]]]}}]},"ISO":{"alpha2":"CZ","alpha3":"CZE"},"languages":["cs","sk"],"latlng":[49.75,15.5],"nativeName":"Česká republika","population":10521600,"provinces":["Brnensky","Budejovicky","Jihlavsky","Karlovarsky","Kralovehradecky","Liberecky","Olomoucky","Ostravsky","Pardubicky","Plzensky","Praha","Stredocesky","Ustecky","Zlinsky"],"region":"Europe","subregion":"Eastern Europe","timezones":["UTC+01:00"],"tld":[".cz"],"translations":{"de":"Tschechische Republik","es":"República Checa","fr":"République tchèque","ja":"チェコ","it":"Repubblica Ceca"},"wiki":"http://en.wikipedia.org/wiki/czeck_republic"}
\ No newline at end of file
diff --git a/countryinfo/data/tobago.json b/countryinfo/data/east_timor.json
similarity index 100%
rename from countryinfo/data/tobago.json
rename to countryinfo/data/east_timor.json
diff --git a/countryinfo/data/heard_island_and_mc_donald_islands.json b/countryinfo/data/heard_island_and_mc_donald_islands.json
index 66698a9..2be142b 100644
--- a/countryinfo/data/heard_island_and_mc_donald_islands.json
+++ b/countryinfo/data/heard_island_and_mc_donald_islands.json
@@ -1,1 +1,1 @@
-{"name":"Heard Island and McDonald Islands","altSpellings":["HM"],"area":412,"borders":[],"callingCodes":[""],"capital":"","currencies":["AUD"],"demonym":"Heard and McDonald Islander","flag":"","geoJSON":{},"ISO":{"alpha2":"HM","alpha3":"HMD"},"languages":["en"],"latlng":[-53.1,72.51666666],"nativeName":"Heard Island and McDonald Islands","population":0,"provinces":["Heard Island and McDonald Islands"],"region":"","subregion":"","timezones":null,"tld":[".hm",".aq"],"translations":{"de":"Heard und die McDonaldinseln","es":"Islas Heard y McDonald","fr":"Îles Heard-et-MacDonald","ja":"ハード島とマクドナルド諸島","it":"Isole Heard e McDonald"},"wiki":"http://en.wikipedia.org/wiki/heard_island_and_mc_donald_islands"}
\ No newline at end of file
+{"name":"Heard Island and McDonald Islands","altSpellings":["HM"],"area":412,"borders":[],"callingCodes":[""],"capital":"","capital_latlng":[],"currencies":["AUD"],"demonym":"Heard and McDonald Islander","flag":"","geoJSON":{},"ISO":{"alpha2":"HM","alpha3":"HMD"},"languages":["en"],"latlng":[-53.1,72.51666666],"nativeName":"Heard Island and McDonald Islands","population":0,"provinces":["Heard Island and McDonald Islands"],"region":"","subregion":"","timezones":null,"tld":[".hm",".aq"],"translations":{"de":"Heard und die McDonaldinseln","es":"Islas Heard y McDonald","fr":"Îles Heard-et-MacDonald","ja":"ハード島とマクドナルド諸島","it":"Isole Heard e McDonald"},"wiki":"http://en.wikipedia.org/wiki/heard_island_and_mc_donald_islands"}
\ No newline at end of file
diff --git a/countryinfo/data/holy_see_vatican_city.json b/countryinfo/data/holy_see_vatican_city.json
index 6e4e9b5..b8b6c85 100644
--- a/countryinfo/data/holy_see_vatican_city.json
+++ b/countryinfo/data/holy_see_vatican_city.json
@@ -1,1 +1,26 @@
-{"flag":"","geoJSON":{},"ISO":{},"provinces":["Holy See (Vatican City)"],"tld":[],"wiki":"http://en.wikipedia.org/wiki/holy_see_vatican_city"}
\ No newline at end of file
+{   
+    "name":"Vatican City State",
+    "alt":["Vatican City","Vatican","The Vatican"],
+    "area":0.49,
+    "borders":["IT"],
+    "callingCodes":["379"],
+    "capital":["Vatican City"],
+    "capital_latlng":[41.904755,12.454628],
+    "currencies":["EUR"],
+    "demonym":"Vaticanian",
+    "flag":"https://upload.wikimedia.org/wikipedia/commons/3/39/Flag_of_the_Vatican_City_%282023%E2%80%93present%29.svg",
+    "geoJSON":{},
+    "ISO":{
+        "alpha2":"VA",
+        "alpha3":"VAT"
+    },
+    "languages":["la","it"],
+    "latlng":[41.904755,12.454628],
+    "nativeName":"Vaticano",
+    "population":764,
+    "provinces":["Holy See (Vatican City)"],
+    "timezones":["UTC+01:00"],
+    "region":"Europe",
+    "subregion":"Southern Europe",
+    "tld":[".va"],
+    "wiki":"http://en.wikipedia.org/wiki/holy_see_vatican_city"}
\ No newline at end of file
diff --git a/countryinfo/data/hong_kong.json b/countryinfo/data/hong_kong.json
index f1da870..120dcfb 100644
--- a/countryinfo/data/hong_kong.json
+++ b/countryinfo/data/hong_kong.json
@@ -1,1 +1,1 @@
-{"name":"Hong Kong","altSpellings":["HK","香港"],"area":1104,"borders":["CHN"],"callingCodes":["852"],"capital":"City of Victoria","capital_latlng":[-36.59861,144.678005],"currencies":["HKD"],"demonym":"Chinese","flag":"","geoJSON":{},"ISO":{"alpha2":"HK","alpha3":"HKG"},"languages":["en","zh"],"latlng":[22.25,114.16666666],"nativeName":"香港","population":7234800,"provinces":["Hong Kong"],"region":"Asia","subregion":"Eastern Asia","timezones":["UTC+08:00"],"tld":[".hk"],"translations":{"de":"Hong Kong","es":"Hong Kong","fr":"Hong Kong","ja":"香港","it":"Hong Kong"},"wiki":"http://en.wikipedia.org/wiki/hong_kong"}
\ No newline at end of file
+{"name":"Hong Kong","altSpellings":["HK","香港"],"area":1104,"borders":["CHN"],"callingCodes":["852"],"capital":"City of Victoria","capital_latlng":[22.278333,114.174444],"currencies":["HKD"],"demonym":"Chinese","flag":"","geoJSON":{},"ISO":{"alpha2":"HK","alpha3":"HKG"},"languages":["en","zh"],"latlng":[22.25,114.16666666],"nativeName":"香港","population":7234800,"provinces":["Hong Kong"],"region":"Asia","subregion":"Eastern Asia","timezones":["UTC+08:00"],"tld":[".hk"],"translations":{"de":"Hong Kong","es":"Hong Kong","fr":"Hong Kong","ja":"香港","it":"Hong Kong"},"wiki":"http://en.wikipedia.org/wiki/hong_kong"}
\ No newline at end of file
diff --git a/countryinfo/data/hungary.json b/countryinfo/data/hungary.json
index 1918db3..413fe82 100644
--- a/countryinfo/data/hungary.json
+++ b/countryinfo/data/hungary.json
@@ -1,1 +1,25 @@
-{"flag":"","geoJSON":{},"ISO":{"alpha2":"HU","alpha3":"HUN"},"provinces":["Bacs-Kiskun","Baranya","Bekes","Bekescsaba","Borsod-Abauj-Zemplen","Budapest","Csongrad","Debrecen","Dunaujvaros","Eger","Fejer","Gyor","Gyor-Moson-Sopron","Hajdu-Bihar","Heves","Hodmezovasarhely","Jasz-Nagykun-Szolnok","Kaposvar","Kecskemet","Komarom-Esztergom","Miskolc","Nagykanizsa","Nograd","Nyiregyhaza","Pecs","Pest","Somogy","Sopron","Szabolcs-Szatmar-Bereg","Szeged","Szekesfehervar","Szolnok","Szombathely","Tatabanya","Tolna","Vas","Veszprem","Veszprem","Zala","Zalaegerszeg"],"tld":[],"wiki":"http://en.wikipedia.org/wiki/hungary"}
+{
+    "name":"Hungary",
+    "altSpellings":["HU","Magyarorszag"],
+    "area":93030,
+    "borders":["AUT","HRV","ROU","SRB","SVK","SVN","UKR"],
+    "callingCodes":["36"],
+    "capital":"Budapest",
+    "capital_latlng":[47.5,19.083333],
+    "currencies":["HUF"],
+    "demonym":"Hungarian",
+    "flag":"https://upload.wikimedia.org/wikipedia/commons/c/c1/Flag_of_Hungary.svg",
+    "geoJSON":{},
+    "ISO":{"alpha2":"HU","alpha3":"HUN"},
+    "languages":["hu"],
+    "latlng":[47,20],
+    "nativeName":"Magyarorszag",
+    "population":9678000,
+    "provinces":["Bacs-Kiskun","Baranya","Bekes","Bekescsaba","Borsod-Abauj-Zemplen","Budapest","Csongrad","Debrecen","Dunaujvaros","Eger","Fejer","Gyor","Gyor-Moson-Sopron","Hajdu-Bihar","Heves","Hodmezovasarhely","Jasz-Nagykun-Szolnok","Kaposvar","Kecskemet","Komarom-Esztergom","Miskolc","Nagykanizsa","Nograd","Nyiregyhaza","Pecs","Pest","Somogy","Sopron","Szabolcs-Szatmar-Bereg","Szeged","Szekesfehervar","Szolnok","Szombathely","Tatabanya","Tolna","Vas","Veszprem","Veszprem","Zala","Zalaegerszeg"],
+    "region":"Europe",
+    "subregion":"Eastern Europe",
+    "timezones":["UTC+01:00"],
+    "tld":[".hu"],
+    "translations":{"de":"Ungarn","es":"Hungria","fr":"Hongrie","ja":"ハンガリー","it":"Ungheria"},
+    "wiki":"http://en.wikipedia.org/wiki/hungary"
+}
diff --git a/countryinfo/data/macau.json b/countryinfo/data/macau.json
index 9a85a5f..0042542 100644
--- a/countryinfo/data/macau.json
+++ b/countryinfo/data/macau.json
@@ -1,1 +1,25 @@
-{"name":"Macau","altSpellings":["MO","澳门","Macao Special Administrative Region of the People's Republic of China","中華人民共和國澳門特別行政區","Região Administrativa Especial de Macau da República Popular da China"],"area":30,"borders":["CHN"],"callingCodes":["853"],"capital":"","currencies":["MOP"],"demonym":"Chinese","flag":"","geoJSON":{},"ISO":{"alpha2":"MO","alpha3":"MAC"},"languages":["zh","pt"],"latlng":[22.16666666,113.55],"nativeName":"澳門","population":631000,"provinces":["Macau"],"region":"Asia","subregion":"Eastern Asia","timezones":["UTC+08:00"],"tld":[".mo"],"translations":{"de":"Macao","es":"Macao","fr":"Macao","ja":"マカオ","it":"Macao"},"wiki":"http://en.wikipedia.org/wiki/macau"}
\ No newline at end of file
+{
+    "name":"Macau",
+    "altSpellings":["MO","澳门","Macao Special Administrative Region of the People's Republic of China","中華人民共和國澳門特別行政區","Região Administrativa Especial de Macau da República Popular da China"],
+    "area":30,
+    "borders":["CHN"],
+    "callingCodes":["853"],
+    "capital":"",
+    "capital_latlng":[22.16666666,113.55],
+    "currencies":["MOP"],
+    "demonym":"Chinese",
+    "flag":"",
+    "geoJSON":{},
+    "ISO":{"alpha2":"MO","alpha3":"MAC"},
+    "languages":["zh","pt"],
+    "latlng":[22.16666666,113.55],
+    "nativeName":"澳門",
+    "population":631000,
+    "provinces":["Macau"],
+    "region":"Asia",
+    "subregion":"Eastern Asia",
+    "timezones":["UTC+08:00"],
+    "tld":[".mo"],
+    "translations":{"de":"Macao","es":"Macao","fr":"Macao","ja":"マカオ","it":"Macao"},
+    "wiki":"http://en.wikipedia.org/wiki/macau"
+}
\ No newline at end of file
diff --git a/countryinfo/data/macedonia_former_yugoslav_republic_of.json b/countryinfo/data/macedonia_former_yugoslav_republic_of.json
index 8b1b51c..108ef54 100644
--- a/countryinfo/data/macedonia_former_yugoslav_republic_of.json
+++ b/countryinfo/data/macedonia_former_yugoslav_republic_of.json
@@ -1,1 +1,1 @@
-{"name":"Republic of Macedonia","altSpellings":["MK","Republic of Macedonia","Република Македонија"],"area":25713,"borders":["ALB","BGR","GRC","KOS","SRB"],"callingCodes":["389"],"capital":"Skopje","capital_latlng":[41.996092,21.43165],"currencies":["MKD"],"demonym":"Macedonian","flag":"","geoJSON":{"type":"FeatureCollection","features":[{"type":"Feature","id":"MKD","properties":{"name":"Macedonia"},"geometry":{"type":"Polygon","coordinates":[[[20.59023,41.85541],[20.71731,41.84711],[20.76216,42.05186],[21.3527,42.2068],[21.576636,42.245224],[21.91708,42.30364],[22.380526,42.32026],[22.881374,41.999297],[22.952377,41.337994],[22.76177,41.3048],[22.597308,41.130487],[22.055378,41.149866],[21.674161,40.931275],[21.02004,40.842727],[20.60518,41.08622],[20.46315,41.51509],[20.59023,41.85541]]]}}]},"ISO":{"alpha2":"MK","alpha3":"MKD"},"languages":["mk"],"latlng":[41.83333333,22],"nativeName":"Македонија","population":2058539,"provinces":["Aracinovo","Bac","Belcista","Berovo","Bistrica","Bitola","Blatec","Bogdanci","Bogomila","Bogovinje","Bosilovo","Brvenica","Cair (Skopje)","Capari","Caska","Cegrane","Centar (Skopje)","Centar Zupa","Cesinovo","Cucer-Sandevo","Debar","Delcevo","Delogozdi","Demir Hisar","Demir Kapija","Dobrusevo","Dolna Banjica","Dolneni","Dorce Petrov (Skopje)","Drugovo","Dzepciste","Gazi Baba (Skopje)","Gevgelija","Gostivar","Gradsko","Ilinden","Izvor","Jegunovce","Kamenjane","Karbinci","Karpos (Skopje)","Kavadarci","Kicevo","Kisela Voda (Skopje)","Klecevce","Kocani","Konce","Kondovo","Konopiste","Kosel","Kratovo","Kriva Palanka","Krivogastani","Krusevo","Kuklis","Kukurecani","Kumanovo","Labunista","Lipkovo","Lozovo","Lukovo","Makedonska Kamenica","Makedonski Brod","Mavrovi Anovi","Meseista","Miravci","Mogila","Murtino","Negotino","Negotino-Poloska","Novaci","Novo Selo","Oblesevo","Ohrid","Orasac","Orizari","Oslomej","Pehcevo","Petrovec","Plasnia","Podares","Prilep","Probistip","Radovis","Rankovce","Resen","Rosoman","Rostusa","Samokov","Saraj","Sipkovica","Sopiste","Sopotnika","Srbinovo","Star Dojran","Staravina","Staro Nagoricane","Stip","Struga","Strumica","Studenicani","Suto Orizari (Skopje)","Sveti Nikole","Tearce","Tetovo","Topolcani","Valandovo","Vasilevo","Veles","Velesta","Vevcani","Vinica","Vitoliste","Vranestica","Vrapciste","Vratnica","Vrutok","Zajas","Zelenikovo","Zileno","Zitose","Zletovo","Zrnovci"],"region":"Europe","subregion":"Southern Europe","timezones":["UTC+01:00"],"tld":[".mk"],"translations":{"de":"Mazedonien","es":"Macedonia","fr":"Macédoine","ja":"マケドニア旧ユーゴスラビア共和国","it":"Macedonia"},"wiki":"http://en.wikipedia.org/wiki/macedonia_former_yugoslav_republic_of"}
\ No newline at end of file
+{"name":"Republic of Macedonia","altSpellings":["MK","Republic of Macedonia","North Macedonia","Република Македонија"],"area":25713,"borders":["ALB","BGR","GRC","KOS","SRB"],"callingCodes":["389"],"capital":"Skopje","capital_latlng":[41.996092,21.43165],"currencies":["MKD"],"demonym":"Macedonian","flag":"","geoJSON":{"type":"FeatureCollection","features":[{"type":"Feature","id":"MKD","properties":{"name":"Macedonia"},"geometry":{"type":"Polygon","coordinates":[[[20.59023,41.85541],[20.71731,41.84711],[20.76216,42.05186],[21.3527,42.2068],[21.576636,42.245224],[21.91708,42.30364],[22.380526,42.32026],[22.881374,41.999297],[22.952377,41.337994],[22.76177,41.3048],[22.597308,41.130487],[22.055378,41.149866],[21.674161,40.931275],[21.02004,40.842727],[20.60518,41.08622],[20.46315,41.51509],[20.59023,41.85541]]]}}]},"ISO":{"alpha2":"MK","alpha3":"MKD"},"languages":["mk"],"latlng":[41.83333333,22],"nativeName":"Македонија","population":2058539,"provinces":["Aracinovo","Bac","Belcista","Berovo","Bistrica","Bitola","Blatec","Bogdanci","Bogomila","Bogovinje","Bosilovo","Brvenica","Cair (Skopje)","Capari","Caska","Cegrane","Centar (Skopje)","Centar Zupa","Cesinovo","Cucer-Sandevo","Debar","Delcevo","Delogozdi","Demir Hisar","Demir Kapija","Dobrusevo","Dolna Banjica","Dolneni","Dorce Petrov (Skopje)","Drugovo","Dzepciste","Gazi Baba (Skopje)","Gevgelija","Gostivar","Gradsko","Ilinden","Izvor","Jegunovce","Kamenjane","Karbinci","Karpos (Skopje)","Kavadarci","Kicevo","Kisela Voda (Skopje)","Klecevce","Kocani","Konce","Kondovo","Konopiste","Kosel","Kratovo","Kriva Palanka","Krivogastani","Krusevo","Kuklis","Kukurecani","Kumanovo","Labunista","Lipkovo","Lozovo","Lukovo","Makedonska Kamenica","Makedonski Brod","Mavrovi Anovi","Meseista","Miravci","Mogila","Murtino","Negotino","Negotino-Poloska","Novaci","Novo Selo","Oblesevo","Ohrid","Orasac","Orizari","Oslomej","Pehcevo","Petrovec","Plasnia","Podares","Prilep","Probistip","Radovis","Rankovce","Resen","Rosoman","Rostusa","Samokov","Saraj","Sipkovica","Sopiste","Sopotnika","Srbinovo","Star Dojran","Staravina","Staro Nagoricane","Stip","Struga","Strumica","Studenicani","Suto Orizari (Skopje)","Sveti Nikole","Tearce","Tetovo","Topolcani","Valandovo","Vasilevo","Veles","Velesta","Vevcani","Vinica","Vitoliste","Vranestica","Vrapciste","Vratnica","Vrutok","Zajas","Zelenikovo","Zileno","Zitose","Zletovo","Zrnovci"],"region":"Europe","subregion":"Southern Europe","timezones":["UTC+01:00"],"tld":[".mk"],"translations":{"de":"Mazedonien","es":"Macedonia","fr":"Macédoine","ja":"マケドニア旧ユーゴスラビア共和国","it":"Macedonia"},"wiki":"http://en.wikipedia.org/wiki/macedonia_former_yugoslav_republic_of"}
\ No newline at end of file
diff --git a/countryinfo/data/montenegro.json b/countryinfo/data/montenegro.json
index caff497..7377c72 100644
--- a/countryinfo/data/montenegro.json
+++ b/countryinfo/data/montenegro.json
@@ -13,6 +13,7 @@
   "latlng":[42.7044223, 19.3957785],
   "nativeName":"Crna Gora",
   "population":621873,
+  "provinces":["Podgorica", "Nikšić", "Pljevlja", "Bijelo Polje", "Cetinje", "Bar", "Herceg Novi", "Berane", "Budva", "Ulcinj", "Tivat", "Kotor", "Danilovgrad", "Gusinje", "Petnjica", "Rožaje", "Šavnik", "Žabljak", "Kolašin", "Mojkovac", "Plav", "Andrijevica", "Plužine", "Šušan"],
   "region":"Europe",
   "subregion":"Eastern Europe",
   "timezones":["UTC+01:00"],
diff --git a/countryinfo/data/scotland.json b/countryinfo/data/scotland.json
index a83db4e..3484bbc 100644
--- a/countryinfo/data/scotland.json
+++ b/countryinfo/data/scotland.json
@@ -1,12 +1,28 @@
 {
     "name": "Scotland",
-    "flag": "",
-    "geoJSON": {},
+    "altSpellings": [],
+    "area":80231,
+    "borders": [],
+    "callingCodes": ["+44"],
+    "capital": "Edinburgh",
+    "capital_latlng": [55.953252, -3.188267],
+    "currencies": ["GBP"],
+    "demonym": "Scottish",
+    "flag": "https://upload.wikimedia.org/wikipedia/commons/1/10/Flag_of_Scotland.svg",
     "ISO": {
         "alpha2": "",
         "alpha3": ""
     },
+    "languages": ["English", "Scots", "Scottish Gaelic", "British Sign Language"],
+    "latlng": [56.4906712, -4.2026458],
+    "nativeName": "Alba",
+    "population": 5295000,
     "provinces": ["Aberdeen City", "Aberdeenshire", "Angus", "Argyll and Bute", "City of Edinburgh", "Clackmannanshire", "Dumfries and Galloway", "Dundee City", "East Ayrshire", "East Dunbartonshire", "East Lothian", "East Renfrewshire", "Eilean Siar (Western Isles)", "Falkirk", "Fife", "Glasgow City", "Highland", "Inverclyde", "Midlothian", "Moray", "North Ayrshire", "North Lanarkshire", "Orkney Islands", "Perth and Kinross", "Renfrewshire", "Shetland Islands", "South Ayrshire", "South Lanarkshire", "Stirling", "The Scottish Borders", "West Dunbartonshire", "West Lothian"],
-    "tld": [],
+    "region": "Europe",
+    "subregion": "Northern Europe",
+    "timezones": ["UTC+00:00"],
+    "tld": [".scot"],
+    "geoJSON": {},
+    "tranlations":{"de":"Schottland","es":"Escocia","fr":"Écosse","ja":"スコットランド","it":"Scozia"},
     "wiki": "http://en.wikipedia.org/wiki/scotland"
 }
diff --git a/countryinfo/data/serbia.json b/countryinfo/data/serbia.json
index 65ab558..06e6020 100644
--- a/countryinfo/data/serbia.json
+++ b/countryinfo/data/serbia.json
@@ -10,7 +10,7 @@
   "flag":"https://upload.wikimedia.org/wikipedia/commons/thumb/f/ff/Flag_of_Serbia.svg/1200px-Flag_of_Serbia.svg.png",
   "ISO":{"alpha2":"RS","alpha3":"SRB"},
   "languages":["rs"],
-  "latlng":[44.1305021,16.4284181],
+  "latlng":[44.016521,21.005859],
   "nativeName":"Srbija",
   "population":7186862,
   "provinces":["Kolubara","Mačva","Moravica","Pomoravlje","Rasina","Raška","Šumadija","Zlatibor","Bor","Braničevo","Jablanica","Nišava","Pčinja","Pirot","Podunavlje","Toplica","Zaječar","Central Banat","North Bačka","North Banat","South Bačka","South Banat","Srem","West Bačka","Kosovo","Kosovo-Pomoravlje","Kosovska Mitrovica ","Peć","Prizren"],
diff --git a/countryinfo/data/wales.json b/countryinfo/data/wales.json
index af45fdc..6963f2a 100644
--- a/countryinfo/data/wales.json
+++ b/countryinfo/data/wales.json
@@ -1,1 +1,1 @@
-{"name":"Wales", "flag":"","geoJSON":{},"ISO":{"alpha2":"GB","alpha3":"GBR"},"provinces":["Blaenau Gwent","Bridgend","Caerphilly","Cardiff","Carmarthenshire","Ceredigion","Conwy","Denbighshire","Flintshire","Gwynedd","Isle of Anglesey","Merthyr Tydfil","Monmouthshire","Neath Port Talbot","Newport","Pembrokeshire","Powys","Rhondda Cynon Taff","Swansea","The Vale of Glamorgan","Torfaen","Wrexham"],"tld":[],"wiki":"http://en.wikipedia.org/wiki/wales"}
+{"name":"Wales", "flag":"","geoJSON":{},"ISO":{"alpha2":"GB","alpha3":"GBR"}, "demonym": "Welsh","provinces":["Blaenau Gwent","Bridgend","Caerphilly","Cardiff","Carmarthenshire","Ceredigion","Conwy","Denbighshire","Flintshire","Gwynedd","Isle of Anglesey","Merthyr Tydfil","Monmouthshire","Neath Port Talbot","Newport","Pembrokeshire","Powys","Rhondda Cynon Taff","Swansea","The Vale of Glamorgan","Torfaen","Wrexham"],"tld":[],"wiki":"http://en.wikipedia.org/wiki/wales"}


Test patch:
diff --git a/tests.py b/tests.py
index 602c7cf..f7d3b61 100644
--- a/tests.py
+++ b/tests.py
@@ -7,6 +7,8 @@ class Tests(unittest.TestCase):
     all_countries = {}
 
     def setUp(self):
+        self.verificationErrors = [] #Variable used to collect non-fatal errors
+
         """Loads all the countries just once for all the tests
         """
         if not self.all_countries:
@@ -16,13 +18,18 @@ def setUp(self):
                 country = CountryInfo(name)
                 self.all_countries[name] = country
 
+    def tearDown(self):
+        """Loads and prints all exceptions encountered while running tests
+        """
+        self.assertEqual([], self.verificationErrors)
+
     def test_all_countries_have_name(self):
         for name in self.all_countries:
             try:
                 country = self.all_countries[name]
                 self.assertIsNotNone(country.name())
             except KeyError as err:
-                self.fail("Country '{0}' key error: {1}".format(name, err))
+                self.verificationErrors.append("name: "+ str(name))
 
     def test_all_countries_have_native_name(self):
         for name in self.all_countries:
@@ -30,7 +37,7 @@ def test_all_countries_have_native_name(self):
                 country = self.all_countries[name]
                 country.native_name()
             except KeyError as err:
-                self.fail("Country '{0}' key error: {1}".format(name, err))
+                self.verificationErrors.append("native_name: "+ str(name))
 
     def test_all_countries_have_iso(self):
         for name in self.all_countries:
@@ -38,7 +45,7 @@ def test_all_countries_have_iso(self):
                 country = self.all_countries[name]
                 country.iso()
             except KeyError as err:
-                self.fail("Country '{0}' key error: {1}".format(name, err))
+                self.verificationErrors.append("iso: "+ str(name))
 
     def test_all_countries_have_alt_spellings(self):
         for name in self.all_countries:
@@ -46,7 +53,7 @@ def test_all_countries_have_alt_spellings(self):
                 country = self.all_countries[name]
                 country.alt_spellings()
             except KeyError as err:
-                self.fail("Country '{0}' key error: {1}".format(name, err))
+                self.verificationErrors.append("alt_spellings: "+ str(name))
 
     def test_all_countries_have_translations(self):
         for name in self.all_countries:
@@ -54,7 +61,119 @@ def test_all_countries_have_translations(self):
                 country = self.all_countries[name]
                 country.translations()
             except KeyError as err:
-                self.fail("Country '{0}' key error: {1}".format(name, err))
+                self.verificationErrors.append("translations: "+ str(name))
+
+    def test_all_countries_have_latlng(self):
+        for name in self.all_countries:
+            try:
+                country = self.all_countries[name]
+                country.latlng()
+            except KeyError as err:
+                self.verificationErrors.append("latlng: "+ str(name))
+
+    def test_all_countries_have_area(self):
+        for name in self.all_countries:
+            try:
+                country = self.all_countries[name]
+                country.area()
+            except KeyError as err:
+                self.verificationErrors.append("area: "+ str(name))
+
+    def test_all_countries_have_callingCodes(self):
+        for name in self.all_countries:
+            try:
+                country = self.all_countries[name]
+                country.calling_codes()
+            except KeyError as err:
+                self.verificationErrors.append("callingCodes: "+ str(name))
+
+    def test_all_countries_have_capital(self):
+        for name in self.all_countries:
+            try:
+                country = self.all_countries[name]
+                country.capital()
+            except KeyError as err:
+                self.verificationErrors.append("capital: "+ str(name))
+
+    def test_all_countries_have_capital_latlng(self):
+        for name in self.all_countries:
+            try:
+                country = self.all_countries[name]
+                country.capital_latlng()
+            except KeyError as err:
+                self.verificationErrors.append("capital_latlng: "+ str(name))
+
+    def test_all_countries_have_currencies(self):
+        for name in self.all_countries:
+            try:
+                country = self.all_countries[name]
+                country.currencies()
+            except KeyError as err:
+                self.verificationErrors.append("currencies: "+ str(name))
+
+    def test_all_countries_have_demonym(self):
+        for name in self.all_countries:
+            try:
+                country = self.all_countries[name]
+                country.demonym()
+            except KeyError as err:
+                self.verificationErrors.append("demonym: "+ str(name))
+
+    def test_all_countries_have_population(self):
+        for name in self.all_countries:
+            try:
+                country = self.all_countries[name]
+                country.population()
+            except KeyError as err:
+                self.verificationErrors.append("population: "+ str(name))
+
+    def test_all_countries_have_provinces(self):
+        for name in self.all_countries:
+            try:
+                country = self.all_countries[name]
+                country.provinces()
+            except KeyError as err:
+                self.verificationErrors.append("provinces: "+ str(name))
+
+    def test_all_countries_have_region(self):
+        for name in self.all_countries:
+            try:
+                country = self.all_countries[name]
+                country.region()
+            except KeyError as err:
+                self.verificationErrors.append("region: "+ str(name))
+
+    def test_all_countries_have_subregion(self):
+        for name in self.all_countries:
+            try:
+                country = self.all_countries[name]
+                country.subregion()
+            except KeyError as err:
+                self.verificationErrors.append("subregion: "+ str(name))
+
+    def test_all_countries_have_timezones(self):
+        for name in self.all_countries:
+            try:
+                country = self.all_countries[name]
+                country.timezones()
+            except KeyError as err:
+                self.verificationErrors.append("timezones: "+ str(name))
+
+    def test_all_countries_have_tld(self):
+        for name in self.all_countries:
+            try:
+                country = self.all_countries[name]
+                country.tld()
+            except KeyError as err:
+                self.verificationErrors.append("tld "+ str(name))
+
+    def test_all_countries_have_wiki(self):
+        for name in self.all_countries:
+            try:
+                country = self.all_countries[name]
+                country.wiki()
+            except KeyError as err:
+                self.verificationErrors.append("wiki: "+ str(name))
 
     def test_select_country_from_alt_name(self):
         country = CountryInfo('PK')