direct_address 0.0.9 → 0.0.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (256) hide show
  1. data/.gitignore +1 -1
  2. data/VERSION +1 -1
  3. data/direct_address.gemspec +251 -4
  4. data/generators/direct_address/templates/tasks/harvest.rake +5 -16
  5. data/lib/direct_address/harvester/countries.yml +495 -0
  6. data/lib/direct_address/harvester/geoname.rb +8 -78
  7. data/lib/direct_address/harvester/regions/AD.yml +14 -0
  8. data/lib/direct_address/harvester/regions/AE.yml +8 -0
  9. data/lib/direct_address/harvester/regions/AF.yml +33 -0
  10. data/lib/direct_address/harvester/regions/AG.yml +9 -0
  11. data/lib/direct_address/harvester/regions/AI.yml +2 -0
  12. data/lib/direct_address/harvester/regions/AL.yml +17 -0
  13. data/lib/direct_address/harvester/regions/AM.yml +15 -0
  14. data/lib/direct_address/harvester/regions/AN.yml +2 -0
  15. data/lib/direct_address/harvester/regions/AO.yml +39 -0
  16. data/lib/direct_address/harvester/regions/AQ.yml +2 -0
  17. data/lib/direct_address/harvester/regions/AR.yml +49 -0
  18. data/lib/direct_address/harvester/regions/AS.yml +2 -0
  19. data/lib/direct_address/harvester/regions/AT.yml +19 -0
  20. data/lib/direct_address/harvester/regions/AU.yml +17 -0
  21. data/lib/direct_address/harvester/regions/AW.yml +2 -0
  22. data/lib/direct_address/harvester/regions/AX.yml +2 -0
  23. data/lib/direct_address/harvester/regions/AZ.yml +71 -0
  24. data/lib/direct_address/harvester/regions/BA.yml +2 -0
  25. data/lib/direct_address/harvester/regions/BB.yml +13 -0
  26. data/lib/direct_address/harvester/regions/BD.yml +10 -0
  27. data/lib/direct_address/harvester/regions/BE.yml +25 -0
  28. data/lib/direct_address/harvester/regions/BF.yml +91 -0
  29. data/lib/direct_address/harvester/regions/BG.yml +53 -0
  30. data/lib/direct_address/harvester/regions/BH.yml +5 -0
  31. data/lib/direct_address/harvester/regions/BI.yml +31 -0
  32. data/lib/direct_address/harvester/regions/BJ.yml +26 -0
  33. data/lib/direct_address/harvester/regions/BL.yml +2 -0
  34. data/lib/direct_address/harvester/regions/BM.yml +9 -0
  35. data/lib/direct_address/harvester/regions/BN.yml +5 -0
  36. data/lib/direct_address/harvester/regions/BO.yml +2 -0
  37. data/lib/direct_address/harvester/regions/BR.yml +57 -0
  38. data/lib/direct_address/harvester/regions/BS.yml +12 -0
  39. data/lib/direct_address/harvester/regions/BT.yml +9 -0
  40. data/lib/direct_address/harvester/regions/BV.yml +2 -0
  41. data/lib/direct_address/harvester/regions/BW.yml +19 -0
  42. data/lib/direct_address/harvester/regions/BY.yml +4 -0
  43. data/lib/direct_address/harvester/regions/BZ.yml +8 -0
  44. data/lib/direct_address/harvester/regions/CA.yml +16 -0
  45. data/lib/direct_address/harvester/regions/CC.yml +2 -0
  46. data/lib/direct_address/harvester/regions/CD.yml +23 -0
  47. data/lib/direct_address/harvester/regions/CF.yml +30 -0
  48. data/lib/direct_address/harvester/regions/CG.yml +23 -0
  49. data/lib/direct_address/harvester/regions/CH.yml +51 -0
  50. data/lib/direct_address/harvester/regions/CI.yml +2 -0
  51. data/lib/direct_address/harvester/regions/CK.yml +2 -0
  52. data/lib/direct_address/harvester/regions/CL.yml +12 -0
  53. data/lib/direct_address/harvester/regions/CM.yml +4 -0
  54. data/lib/direct_address/harvester/regions/CN.yml +64 -0
  55. data/lib/direct_address/harvester/regions/CO.yml +64 -0
  56. data/lib/direct_address/harvester/regions/CR.yml +9 -0
  57. data/lib/direct_address/harvester/regions/CS.yml +2 -0
  58. data/lib/direct_address/harvester/regions/CU.yml +17 -0
  59. data/lib/direct_address/harvester/regions/CV.yml +16 -0
  60. data/lib/direct_address/harvester/regions/CX.yml +2 -0
  61. data/lib/direct_address/harvester/regions/CY.yml +8 -0
  62. data/lib/direct_address/harvester/regions/CZ.yml +34 -0
  63. data/lib/direct_address/harvester/regions/DE.yml +33 -0
  64. data/lib/direct_address/harvester/regions/DJ.yml +11 -0
  65. data/lib/direct_address/harvester/regions/DK.yml +6 -0
  66. data/lib/direct_address/harvester/regions/DM.yml +2 -0
  67. data/lib/direct_address/harvester/regions/DO.yml +31 -0
  68. data/lib/direct_address/harvester/regions/DZ.yml +51 -0
  69. data/lib/direct_address/harvester/regions/EC.yml +24 -0
  70. data/lib/direct_address/harvester/regions/EE.yml +31 -0
  71. data/lib/direct_address/harvester/regions/EG.yml +28 -0
  72. data/lib/direct_address/harvester/regions/EH.yml +2 -0
  73. data/lib/direct_address/harvester/regions/ER.yml +2 -0
  74. data/lib/direct_address/harvester/regions/ES.yml +35 -0
  75. data/lib/direct_address/harvester/regions/ET.yml +5 -0
  76. data/lib/direct_address/harvester/regions/FI.yml +11 -0
  77. data/lib/direct_address/harvester/regions/FJ.yml +7 -0
  78. data/lib/direct_address/harvester/regions/FK.yml +2 -0
  79. data/lib/direct_address/harvester/regions/FM.yml +9 -0
  80. data/lib/direct_address/harvester/regions/FO.yml +2 -0
  81. data/lib/direct_address/harvester/regions/FR.yml +45 -0
  82. data/lib/direct_address/harvester/regions/GA.yml +21 -0
  83. data/lib/direct_address/harvester/regions/GB.yml +438 -0
  84. data/lib/direct_address/harvester/regions/GD.yml +8 -0
  85. data/lib/direct_address/harvester/regions/GE.yml +3 -0
  86. data/lib/direct_address/harvester/regions/GF.yml +2 -0
  87. data/lib/direct_address/harvester/regions/GG.yml +2 -0
  88. data/lib/direct_address/harvester/regions/GH.yml +13 -0
  89. data/lib/direct_address/harvester/regions/GI.yml +2 -0
  90. data/lib/direct_address/harvester/regions/GL.yml +2 -0
  91. data/lib/direct_address/harvester/regions/GM.yml +13 -0
  92. data/lib/direct_address/harvester/regions/GN.yml +73 -0
  93. data/lib/direct_address/harvester/regions/GP.yml +2 -0
  94. data/lib/direct_address/harvester/regions/GQ.yml +9 -0
  95. data/lib/direct_address/harvester/regions/GR.yml +63 -0
  96. data/lib/direct_address/harvester/regions/GS.yml +2 -0
  97. data/lib/direct_address/harvester/regions/GT.yml +24 -0
  98. data/lib/direct_address/harvester/regions/GU.yml +2 -0
  99. data/lib/direct_address/harvester/regions/GW.yml +19 -0
  100. data/lib/direct_address/harvester/regions/GY.yml +12 -0
  101. data/lib/direct_address/harvester/regions/HK.yml +2 -0
  102. data/lib/direct_address/harvester/regions/HM.yml +2 -0
  103. data/lib/direct_address/harvester/regions/HN.yml +20 -0
  104. data/lib/direct_address/harvester/regions/HR.yml +3 -0
  105. data/lib/direct_address/harvester/regions/HT.yml +12 -0
  106. data/lib/direct_address/harvester/regions/HU.yml +53 -0
  107. data/lib/direct_address/harvester/regions/ID.yml +54 -0
  108. data/lib/direct_address/harvester/regions/IE.yml +47 -0
  109. data/lib/direct_address/harvester/regions/IL.yml +7 -0
  110. data/lib/direct_address/harvester/regions/IM.yml +2 -0
  111. data/lib/direct_address/harvester/regions/IN.yml +69 -0
  112. data/lib/direct_address/harvester/regions/IO.yml +2 -0
  113. data/lib/direct_address/harvester/regions/IQ.yml +19 -0
  114. data/lib/direct_address/harvester/regions/IR.yml +30 -0
  115. data/lib/direct_address/harvester/regions/IS.yml +23 -0
  116. data/lib/direct_address/harvester/regions/IT.yml +41 -0
  117. data/lib/direct_address/harvester/regions/JE.yml +2 -0
  118. data/lib/direct_address/harvester/regions/JM.yml +15 -0
  119. data/lib/direct_address/harvester/regions/JO.yml +13 -0
  120. data/lib/direct_address/harvester/regions/JP.yml +106 -0
  121. data/lib/direct_address/harvester/regions/KE.yml +16 -0
  122. data/lib/direct_address/harvester/regions/KG.yml +14 -0
  123. data/lib/direct_address/harvester/regions/KH.yml +19 -0
  124. data/lib/direct_address/harvester/regions/KI.yml +2 -0
  125. data/lib/direct_address/harvester/regions/KM.yml +5 -0
  126. data/lib/direct_address/harvester/regions/KN.yml +16 -0
  127. data/lib/direct_address/harvester/regions/KP.yml +20 -0
  128. data/lib/direct_address/harvester/regions/KR.yml +29 -0
  129. data/lib/direct_address/harvester/regions/KW.yml +6 -0
  130. data/lib/direct_address/harvester/regions/KY.yml +2 -0
  131. data/lib/direct_address/harvester/regions/KZ.yml +22 -0
  132. data/lib/direct_address/harvester/regions/LA.yml +34 -0
  133. data/lib/direct_address/harvester/regions/LB.yml +2 -0
  134. data/lib/direct_address/harvester/regions/LC.yml +13 -0
  135. data/lib/direct_address/harvester/regions/LI.yml +23 -0
  136. data/lib/direct_address/harvester/regions/LK.yml +10 -0
  137. data/lib/direct_address/harvester/regions/LR.yml +27 -0
  138. data/lib/direct_address/harvester/regions/LS.yml +21 -0
  139. data/lib/direct_address/harvester/regions/LT.yml +3 -0
  140. data/lib/direct_address/harvester/regions/LU.yml +7 -0
  141. data/lib/direct_address/harvester/regions/LV.yml +37 -0
  142. data/lib/direct_address/harvester/regions/LY.yml +26 -0
  143. data/lib/direct_address/harvester/regions/MA.yml +16 -0
  144. data/lib/direct_address/harvester/regions/MC.yml +2 -0
  145. data/lib/direct_address/harvester/regions/MD.yml +51 -0
  146. data/lib/direct_address/harvester/regions/ME.yml +24 -0
  147. data/lib/direct_address/harvester/regions/MF.yml +2 -0
  148. data/lib/direct_address/harvester/regions/MG.yml +8 -0
  149. data/lib/direct_address/harvester/regions/MH.yml +2 -0
  150. data/lib/direct_address/harvester/regions/MK.yml +2 -0
  151. data/lib/direct_address/harvester/regions/ML.yml +19 -0
  152. data/lib/direct_address/harvester/regions/MM.yml +28 -0
  153. data/lib/direct_address/harvester/regions/MN.yml +52 -0
  154. data/lib/direct_address/harvester/regions/MO.yml +2 -0
  155. data/lib/direct_address/harvester/regions/MP.yml +2 -0
  156. data/lib/direct_address/harvester/regions/MQ.yml +2 -0
  157. data/lib/direct_address/harvester/regions/MR.yml +32 -0
  158. data/lib/direct_address/harvester/regions/MS.yml +5 -0
  159. data/lib/direct_address/harvester/regions/MT.yml +2 -0
  160. data/lib/direct_address/harvester/regions/MU.yml +13 -0
  161. data/lib/direct_address/harvester/regions/MV.yml +7 -0
  162. data/lib/direct_address/harvester/regions/MW.yml +54 -0
  163. data/lib/direct_address/harvester/regions/MX.yml +34 -0
  164. data/lib/direct_address/harvester/regions/MY.yml +28 -0
  165. data/lib/direct_address/harvester/regions/MZ.yml +21 -0
  166. data/lib/direct_address/harvester/regions/NA.yml +15 -0
  167. data/lib/direct_address/harvester/regions/NC.yml +2 -0
  168. data/lib/direct_address/harvester/regions/NE.yml +2 -0
  169. data/lib/direct_address/harvester/regions/NF.yml +2 -0
  170. data/lib/direct_address/harvester/regions/NG.yml +75 -0
  171. data/lib/direct_address/harvester/regions/NI.yml +17 -0
  172. data/lib/direct_address/harvester/regions/NL.yml +24 -0
  173. data/lib/direct_address/harvester/regions/NO.yml +42 -0
  174. data/lib/direct_address/harvester/regions/NP.yml +15 -0
  175. data/lib/direct_address/harvester/regions/NR.yml +2 -0
  176. data/lib/direct_address/harvester/regions/NU.yml +2 -0
  177. data/lib/direct_address/harvester/regions/NZ.yml +18 -0
  178. data/lib/direct_address/harvester/regions/OM.yml +10 -0
  179. data/lib/direct_address/harvester/regions/PA.yml +23 -0
  180. data/lib/direct_address/harvester/regions/PE.yml +51 -0
  181. data/lib/direct_address/harvester/regions/PF.yml +2 -0
  182. data/lib/direct_address/harvester/regions/PG.yml +3 -0
  183. data/lib/direct_address/harvester/regions/PH.yml +74 -0
  184. data/lib/direct_address/harvester/regions/PK.yml +8 -0
  185. data/lib/direct_address/harvester/regions/PL.yml +28 -0
  186. data/lib/direct_address/harvester/regions/PM.yml +3 -0
  187. data/lib/direct_address/harvester/regions/PN.yml +2 -0
  188. data/lib/direct_address/harvester/regions/PR.yml +2 -0
  189. data/lib/direct_address/harvester/regions/PS.yml +2 -0
  190. data/lib/direct_address/harvester/regions/PT.yml +41 -0
  191. data/lib/direct_address/harvester/regions/PW.yml +2 -0
  192. data/lib/direct_address/harvester/regions/PY.yml +19 -0
  193. data/lib/direct_address/harvester/regions/QA.yml +11 -0
  194. data/lib/direct_address/harvester/regions/RE.yml +2 -0
  195. data/lib/direct_address/harvester/regions/RO.yml +78 -0
  196. data/lib/direct_address/harvester/regions/RS.yml +2 -0
  197. data/lib/direct_address/harvester/regions/RU.yml +160 -0
  198. data/lib/direct_address/harvester/regions/RW.yml +19 -0
  199. data/lib/direct_address/harvester/regions/SA.yml +14 -0
  200. data/lib/direct_address/harvester/regions/SB.yml +7 -0
  201. data/lib/direct_address/harvester/regions/SC.yml +22 -0
  202. data/lib/direct_address/harvester/regions/SD.yml +28 -0
  203. data/lib/direct_address/harvester/regions/SE.yml +36 -0
  204. data/lib/direct_address/harvester/regions/SG.yml +2 -0
  205. data/lib/direct_address/harvester/regions/SH.yml +2 -0
  206. data/lib/direct_address/harvester/regions/SI.yml +2 -0
  207. data/lib/direct_address/harvester/regions/SJ.yml +2 -0
  208. data/lib/direct_address/harvester/regions/SK.yml +11 -0
  209. data/lib/direct_address/harvester/regions/SL.yml +7 -0
  210. data/lib/direct_address/harvester/regions/SM.yml +14 -0
  211. data/lib/direct_address/harvester/regions/SN.yml +25 -0
  212. data/lib/direct_address/harvester/regions/SO.yml +21 -0
  213. data/lib/direct_address/harvester/regions/SR.yml +12 -0
  214. data/lib/direct_address/harvester/regions/ST.yml +4 -0
  215. data/lib/direct_address/harvester/regions/SV.yml +16 -0
  216. data/lib/direct_address/harvester/regions/SY.yml +15 -0
  217. data/lib/direct_address/harvester/regions/SZ.yml +7 -0
  218. data/lib/direct_address/harvester/regions/TC.yml +2 -0
  219. data/lib/direct_address/harvester/regions/TD.yml +33 -0
  220. data/lib/direct_address/harvester/regions/TF.yml +2 -0
  221. data/lib/direct_address/harvester/regions/TG.yml +13 -0
  222. data/lib/direct_address/harvester/regions/TH.yml +150 -0
  223. data/lib/direct_address/harvester/regions/TJ.yml +4 -0
  224. data/lib/direct_address/harvester/regions/TK.yml +2 -0
  225. data/lib/direct_address/harvester/regions/TL.yml +14 -0
  226. data/lib/direct_address/harvester/regions/TM.yml +7 -0
  227. data/lib/direct_address/harvester/regions/TN.yml +25 -0
  228. data/lib/direct_address/harvester/regions/TO.yml +2 -0
  229. data/lib/direct_address/harvester/regions/TR.yml +110 -0
  230. data/lib/direct_address/harvester/regions/TT.yml +6 -0
  231. data/lib/direct_address/harvester/regions/TV.yml +2 -0
  232. data/lib/direct_address/harvester/regions/TW.yml +2 -0
  233. data/lib/direct_address/harvester/regions/TZ.yml +53 -0
  234. data/lib/direct_address/harvester/regions/UA.yml +31 -0
  235. data/lib/direct_address/harvester/regions/UG.yml +111 -0
  236. data/lib/direct_address/harvester/regions/UM.yml +2 -0
  237. data/lib/direct_address/harvester/regions/US.yml +103 -0
  238. data/lib/direct_address/harvester/regions/UY.yml +20 -0
  239. data/lib/direct_address/harvester/regions/UZ.yml +24 -0
  240. data/lib/direct_address/harvester/regions/VA.yml +2 -0
  241. data/lib/direct_address/harvester/regions/VC.yml +8 -0
  242. data/lib/direct_address/harvester/regions/VE.yml +27 -0
  243. data/lib/direct_address/harvester/regions/VG.yml +2 -0
  244. data/lib/direct_address/harvester/regions/VI.yml +2 -0
  245. data/lib/direct_address/harvester/regions/VN.yml +49 -0
  246. data/lib/direct_address/harvester/regions/VU.yml +7 -0
  247. data/lib/direct_address/harvester/regions/WF.yml +2 -0
  248. data/lib/direct_address/harvester/regions/WS.yml +2 -0
  249. data/lib/direct_address/harvester/regions/YE.yml +14 -0
  250. data/lib/direct_address/harvester/regions/YT.yml +2 -0
  251. data/lib/direct_address/harvester/regions/ZA.yml +19 -0
  252. data/lib/direct_address/harvester/regions/ZM.yml +9 -0
  253. data/lib/direct_address/harvester/regions/ZW.yml +10 -0
  254. data/spec/direct_address_spec.rb +1 -0
  255. metadata +274 -14
  256. data/lib/direct_address/harvester/extend_string.rb +0 -85
@@ -1,97 +1,27 @@
1
- require 'net/http'
2
- require 'uri'
3
- require 'yaml'
4
1
  require 'rubygems'
5
- require 'hpricot'
6
- require File.dirname(__FILE__) + '/extend_string.rb'
7
2
 
8
3
  class Geoname
9
- URL = 'http://www.geonames.org'
10
- COUNTRIES_PATH = '/countries/'
11
- REGION_PATH = '/{ALPHA2}/administrative-division-{country}.html'
12
4
 
13
5
  class InvalidModelError < StandardError; end
14
6
 
15
7
  def self.retrieve_to_db
16
8
  raise(InvalidModelError, 'Country and Region models must be generated before populating the database. Please make sure the gem is installed into a rails project then try running: script/generate direct_address') if !gem_integrated?
17
- countries = Geoname.retrieve_countries
18
- countries.each do |country|
19
- c = Country.find_by_abbreviation(country[0]) || Country.create(:abbreviation => country[0], :name => country[1])
20
- regions = Geoname.retrieve_regions(country[0], country[1])
21
- puts "Successfully retrieved #{country[1]} :: found #{regions.size} regions"
9
+ countries = YAML.load_file(File.join(File.dirname(__FILE__), 'countries.yml'))
10
+ for country in countries
11
+ abbrev = country[0]
12
+ name = country[1]
13
+ c = Country.find_or_create_by_abbreviation(:abbreviation => abbrev, :name => name)
14
+ regions = YAML.load_file(File.join(File.dirname(__FILE__), 'regions', "#{abbrev}.yml")) || []
22
15
  for region in regions
23
- if c.regions.count(:conditions => ['lower(name) = ?', region]) == 0
24
- c.regions.create(:name => region)
25
- end
16
+ r = c.regions.find_or_create_by_name(:name => region)
17
+ puts "Created country / region: #{name} / #{region}"
26
18
  end
27
19
  end
28
20
  end
29
21
 
30
- def self.retrieve_all(path)
31
- countries = Geoname.retrieve_countries(path)
32
- countries.each do |country|
33
- regions = Geoname.retrieve_regions(country[0], country[1], path)
34
- puts "Successfully retrieved #{country[1]} :: found #{regions.size} regions"
35
- end
36
- end
37
-
38
-
39
- def self.retrieve_countries(filepath = nil)
40
- response = Geoname.get_body("#{Geoname::URL}#{Geoname::COUNTRIES_PATH}")
41
- countries = Geoname.parse_countries response
42
- if filepath
43
- Geoname.export("#{filepath}/countries.yml", countries )
44
- end
45
- countries
46
- end
47
-
48
- def self.retrieve_regions(alpha2, country, filepath = nil)
49
- path = Geoname::REGION_PATH.gsub('{ALPHA2}', alpha2).gsub('{country}', Geoname.url_format(country))
50
- response = Geoname.get_body("#{Geoname::URL}#{path}")
51
- regions = Geoname.parse_regions response
52
- if filepath
53
- Geoname.export("#{filepath}/regions/#{alpha2}.yml", regions)
54
- end
55
- regions
56
- end
57
22
 
58
23
  private
59
24
 
60
- def self.parse_countries(body)
61
- doc = Hpricot(body)
62
- (doc/"#countries td > a[@href]").collect do |elem|
63
- href = elem.attributes['href']
64
- fips = nil
65
- if (href =~ /countries\/(.+)\//)
66
- fips = $1
67
- end
68
- [fips, elem.innerHTML]
69
- end
70
- end
71
-
72
- def self.parse_regions(body)
73
- doc = Hpricot(body)
74
- (doc/"#subdivtable tr td:nth-child(4) a[@href]").collect {|elem| elem.innerHTML}
75
- end
76
-
77
- def self.url_format(string)
78
- string.downcase.gsub(' ', '-').removeaccents
79
- end
80
-
81
- def self.get_body(url)
82
- url = URI.parse(url)
83
- request = Net::HTTP::Get.new(url.path)
84
- response = Net::HTTP.start(url.host, url.port) {|http| http.request(request)}
85
- response.body
86
- end
87
-
88
- def self.export(path, content)
89
- FileUtils.mkdir_p(File.dirname(path))
90
- File.open(path, 'w+' ) do |out|
91
- YAML.dump(content,out)
92
- end
93
- end
94
-
95
25
  def self.gem_integrated?
96
26
  begin
97
27
  c = Country.new(:name => 'test', :abbreviation => 't')
@@ -0,0 +1,14 @@
1
+ ---
2
+ - Canillo
3
+ - Canillo
4
+ - Encamp
5
+ - Encamp
6
+ - La Massana
7
+ - La Massana
8
+ - Ordino
9
+ - Ordino
10
+ - "Sant Julia de L\xC3\xB2ria"
11
+ - Andorra la Vella
12
+ - Andorra la Vella
13
+ - Escaldes-Engordany
14
+ - Les Escaldes
@@ -0,0 +1,8 @@
1
+ ---
2
+ - "'Ajman"
3
+ - Abu Zaby
4
+ - Abu Dhabi
5
+ - Dubayy
6
+ - Al Fujayrah
7
+ - Ash Shariqah
8
+ - Umm al Qaywayn
@@ -0,0 +1,33 @@
1
+ ---
2
+ - Balkh province
3
+ - Bamian province
4
+ - Badghis province
5
+ - Badakhshan province
6
+ - Baghlan province
7
+ - Farah province
8
+ - Faryab province
9
+ - Ghazni province
10
+ - Ghowr province
11
+ - Helmand province
12
+ - Herat province
13
+ - Jowzjan province
14
+ - Kabul province
15
+ - Kabul
16
+ - Kandahar province
17
+ - Kapisa province
18
+ - Kondoz province
19
+ - Konar province
20
+ - Laghman province
21
+ - Lowgar province
22
+ - Nangrahar province
23
+ - Nimruz province
24
+ - Oruzgan province
25
+ - Parwan province
26
+ - kabul
27
+ - Paktia province
28
+ - Paktika province
29
+ - Samangan province
30
+ - Sar-e Pol province
31
+ - Takhar province
32
+ - Wardak province
33
+ - Zabol province
@@ -0,0 +1,9 @@
1
+ ---
2
+ - Saint George
3
+ - Saint Philip
4
+ - Saint John
5
+ - Saint John's
6
+ - Saint Paul
7
+ - Saint Mary
8
+ - Saint Peter
9
+ - Barbuda
@@ -0,0 +1,2 @@
1
+ --- []
2
+
@@ -0,0 +1,17 @@
1
+ ---
2
+ - Berat
3
+ - Berat
4
+ - Diber
5
+ - Durres
6
+ - Elbasan
7
+ - Elbasan
8
+ - Fier
9
+ - Fier
10
+ - Gjirokaster
11
+ - Korce
12
+ - Kukes
13
+ - Lezhe
14
+ - Shkoder
15
+ - "Shkod\xC3\xABr"
16
+ - Tirane
17
+ - Vlore
@@ -0,0 +1,15 @@
1
+ ---
2
+ - Aragatsotn
3
+ - Ashtarak
4
+ - Armavir
5
+ - Armavir
6
+ - Ararat
7
+ - Artashat
8
+ - Lorri
9
+ - Shirak
10
+ - Gyumri
11
+ - Tavush
12
+ - Ijevan
13
+ - Vayots' Dzor
14
+ - Yerevan
15
+ - Yerevan
@@ -0,0 +1,2 @@
1
+ --- []
2
+
@@ -0,0 +1,39 @@
1
+ ---
2
+ - Bengo
3
+ - Caxito
4
+ - Benguela province
5
+ - Benguela
6
+ - Bie
7
+ - Kuito
8
+ - Cabinda
9
+ - Cabinda
10
+ - Cuando-Cubango
11
+ - Menongue
12
+ - Cunene
13
+ - Ondjiva
14
+ - Cuanza Norte
15
+ - N'dalatando
16
+ - Cuanza Sul
17
+ - Sumbe
18
+ - Huambo province
19
+ - Huambo
20
+ - Huila province
21
+ - Lubango
22
+ - Lunda Norte
23
+ - Lucapa
24
+ - Lunda Sul
25
+ - Saurimo
26
+ - Luanda
27
+ - Luanda
28
+ - Malange
29
+ - Malanje
30
+ - Moxico
31
+ - Luena
32
+ - Namibe
33
+ - Namibe
34
+ - Uige
35
+ - !binary |
36
+ VcOtZ2U=
37
+
38
+ - Zaire
39
+ - M'banza Congo
@@ -0,0 +1,2 @@
1
+ --- []
2
+
@@ -0,0 +1,49 @@
1
+ ---
2
+ - Salta
3
+ - Salta
4
+ - Buenos Aires Province
5
+ - La Plata
6
+ - Distrito Federal
7
+ - Buenos Aires
8
+ - San Luis
9
+ - San Luis
10
+ - Entre Rios
11
+ - "Paran\xC3\xA1"
12
+ - La Rioja
13
+ - La Rioja
14
+ - Santiago del Estero
15
+ - Santiago del Estero
16
+ - Chaco
17
+ - Resistencia
18
+ - San Juan
19
+ - San Juan
20
+ - Catamarca
21
+ - San Fernando del Valle de Catamarca
22
+ - La Pampa
23
+ - Santa Rosa
24
+ - Mendoza
25
+ - Mendoza
26
+ - Misiones
27
+ - Posadas
28
+ - Formosa
29
+ - Formosa
30
+ - Neuquen
31
+ - "Neuqu\xC3\xA9n"
32
+ - Rio Negro
33
+ - Viedma
34
+ - Santa Fe
35
+ - Santa Fe
36
+ - Tucuman
37
+ - "San Miguel de Tucum\xC3\xA1n"
38
+ - Chubut
39
+ - Rawson
40
+ - Tierra del Fuego
41
+ - Ushuaia
42
+ - Corrientes
43
+ - Corrientes
44
+ - Cordoba
45
+ - "C\xC3\xB3rdoba"
46
+ - Jujuy
47
+ - San Salvador de Jujuy
48
+ - Santa Cruz
49
+ - "R\xC3\xADo Gallegos"
@@ -0,0 +1,2 @@
1
+ --- []
2
+
@@ -0,0 +1,19 @@
1
+ ---
2
+ - Burgenland
3
+ - Eisenstadt
4
+ - Karnten
5
+ - Klagenfurt
6
+ - Niederosterreich
7
+ - "Sankt P\xC3\xB6lten"
8
+ - Oberosterreich
9
+ - Linz
10
+ - Salzburg
11
+ - Salzburg
12
+ - Steiermark
13
+ - Graz
14
+ - Tirol
15
+ - Innsbruck
16
+ - Vorarlberg
17
+ - Bregenz
18
+ - Wien
19
+ - Wien
@@ -0,0 +1,17 @@
1
+ ---
2
+ - Australian Capital Territory
3
+ - Canberra
4
+ - New South Wales
5
+ - Sydney
6
+ - Northern Territory
7
+ - Darwin
8
+ - Queensland
9
+ - Brisbane
10
+ - South Australia
11
+ - Adelaide
12
+ - Tasmania
13
+ - Hobart
14
+ - Victoria
15
+ - Melbourne
16
+ - Western Australia
17
+ - Perth
@@ -0,0 +1,2 @@
1
+ --- []
2
+
@@ -0,0 +1,2 @@
1
+ --- []
2
+
@@ -0,0 +1,71 @@
1
+ ---
2
+ - Ali Bayramli
3
+ - Abseron
4
+ - Agstafa
5
+ - AgcabAdi
6
+ - Agdam
7
+ - Agdas
8
+ - Agsu
9
+ - Astara
10
+ - Baki
11
+ - Baku
12
+ - BalakAn
13
+ - BArdA
14
+ - Beylaqan
15
+ - Bilasuvar
16
+ - Cabrayil
17
+ - Daskasan
18
+ - Davaci
19
+ - Fuzuli
20
+ - Ganca
21
+ - Gadabay
22
+ - Goranboy
23
+ - Goranboy
24
+ - Goycay
25
+ - Haciqabul
26
+ - Imisli
27
+ - Ismayilli
28
+ - Kalbacar
29
+ - Kurdamir
30
+ - Lacin
31
+ - Lerik
32
+ - Masalli
33
+ - Mingacevir
34
+ - Naftalan
35
+ - Neftcala
36
+ - Naxcivan
37
+ - Oguz
38
+ - Qabala
39
+ - Qax
40
+ - Qazax
41
+ - Qazax
42
+ - Quba
43
+ - Qubadli
44
+ - Qobustan
45
+ - Qusar
46
+ - Sabirabad
47
+ - Salyan
48
+ - Saatli
49
+ - Siyazan
50
+ - Samkir
51
+ - Sumqayit
52
+ - Samaxi
53
+ - Samux
54
+ - Tartar
55
+ - Tovuz
56
+ - Tovuz
57
+ - Ucar
58
+ - Ucar
59
+ - Xankandi
60
+ - Xacmaz
61
+ - Xanlar
62
+ - Xanlar
63
+ - Xocali
64
+ - Xizi
65
+ - Xocavand
66
+ - Yardimli
67
+ - Yevlax
68
+ - Zangilan
69
+ - Zaqatala
70
+ - Zaqatala
71
+ - Zardab
@@ -0,0 +1,2 @@
1
+ --- []
2
+