File Coverage

blib/lib/Geography/Countries/LatLong.pm
Criterion Covered Total %
statement 23 31 74.1
branch 8 18 44.4
condition n/a
subroutine 7 10 70.0
pod 5 6 83.3
total 43 65 66.1


line stmt bran cond sub pod time code
1             package Geography::Countries::LatLong;
2            
3             =head1 NAME
4            
5             Geography::Countries::LatLong - Mean latitude and longitude
6            
7             =head1 SYNOPSIS
8            
9             use Geography::Countries::LatLong;
10             if ( Geography::Countries::LatLong::supports('Hungary') ){
11             my $array_ref = latlong('Hungary');
12             my ($lat, $long) = latlongr('Hungary');
13             }
14            
15             =head1 DESCRIPTION
16            
17             This is version 1.0.
18            
19             This module provides mean latitude and longitude for a large number
20             of countries, named in English. Should translations become available,
21             this module will happily move in C.
22            
23             Regions and continents are not supported - please see the list below.
24            
25             Look-up is by the English name of the country, as returned by
26             the C module, of which this is a sub-class
27             that exports none of its parent's properties or methods.
28            
29             =head1 CHANGES SINCE VERSION 0.922
30            
31             The mean values were once arrived at with the following I code,
32             where C is a country name recognised by I:
33            
34             % You will need the Mapping Toolbox to run the above snippet.
35             function [lat,lon] = country_latlon(name);
36             load worldmtx;
37             c=worldhi(name);
38             lat = mean(c.latlim);
39             lon = mean(c.longlim);
40             fprintf( '"%s" => ["%.4f","%.4f"],', name,lat,lon);
41             % end function country_latlon
42            
43             The current dataset is derived from a variety of public-domain sources.
44            
45             The data from the old C<$countries_latlong> hash has been preserved in
46             C<$countries_latlong_old>. To force all routines to the old data,
47             first call L.
48            
49             DEPENDENCIES
50            
51             This module requires this other modules:
52            
53             Geography::Countries
54            
55             =head2 EXPORT
56            
57             This module exports the following subroutines:
58            
59             countries
60             latlong
61            
62             =cut
63            
64 1     1   24091 use strict;
  1         2  
  1         30  
65 1     1   4 use base 'Geography::Countries';
  1         2  
  1         807  
66 1     1   33088 use vars qw/@countries $countries %EXPORT_TAGS @EXPORT_OK/;
  1         10  
  1         156  
67 1     1   6 use vars qw /@ISA @EXPORT @EXPORT_OK %EXPORT_TAGS $VERSION $countries_latlong $countries_latlong_old/;
  1         2  
  1         5193  
68            
69             @ISA = qw /Exporter/;
70             @EXPORT = qw /country latlong /;
71             @EXPORT_OK = qw /countries_latlong countries_latlong_old/;
72             $VERSION = '1.0';
73            
74             #
75             # Arrays of latitude and longitude
76             # indexed by country names.
77             #
78             $countries_latlong_old = {
79             'Tuvalu' => [
80             '-8.0000',
81             '178.0000'
82             ],
83             'Sweden' => [
84             '62.0000',
85             '15.0000'
86             ],
87             'West Bank' => [
88             '32.0000',
89             '35.2500'
90             ],
91             'Anguilla' => [
92             '18.2500',
93             '-63.1667'
94             ],
95             'Libyan Arab Jamahiriya' => [
96             '26.33853',
97             '17.19351'
98             ],
99             'Paracel Islands' => [
100             '16.5000',
101             '112.0000'
102             ],
103             'Guinea' => [
104             '11.0000',
105             '-10.0000'
106             ],
107             'Korea, Republic of' => [
108             '36.0575',
109             '127.3356'
110             ],
111             'Midway Island' => [
112             '28.3225',
113             '-177.8170'
114             ],
115             'French Southern and Antarctic Lands' => [
116             '-43.0000',
117             '67.0000'
118             ],
119             'Keeling Islands' => [
120             '-11.9947',
121             '96.8787'
122             ],
123             'Guyana' => [
124             '5.0000',
125             '-59.0000'
126             ],
127             'Ethiopia' => [
128             '8.0000',
129             '38.0000'
130             ],
131             'Equatorial Guinea' => [
132             '2.0000',
133             '10.0000'
134             ],
135             'South Africa' => [
136             '-29.0000',
137             '24.0000'
138             ],
139             'United States of America' => [
140             '38.15217',
141             '-100.25006'
142             ],
143             'Peru' => [
144             '-10.0000',
145             '-76.0000'
146             ],
147             'Indonesia' => [
148             '-5.0000',
149             '120.0000'
150             ],
151             'Portugal' => [
152             '39.5000',
153             '-8.0000'
154             ],
155             'Nigeria' => [
156             '10.0000',
157             '8.0000'
158             ],
159             'Cook Islands' => [
160             '-21.2333',
161             '-159.7667'
162             ],
163             'Solomon Islands' => [
164             '-8.0000',
165             '159.0000'
166             ],
167             'Latvia' => [
168             '57.0000',
169             '25.0000'
170             ],
171             'Antigua and Barbuda' => [
172             '17.0500',
173             '-61.8000'
174             ],
175             'Turkey' => [
176             '39.0000',
177             '35.0000'
178             ],
179             'Serbia' => [
180             '44.0000',
181             '21.0000'
182             ],
183             'Malawi' => [
184             '-13.5000',
185             '34.0000'
186             ],
187             'Gambia, The' => [
188             '13.4667',
189             '-16.5667'
190             ],
191             'Indian Ocean' => [
192             '-20.0000',
193             '80.0000'
194             ],
195             'Faroe Islands' => [
196             '62.0000',
197             '-7.0000'
198             ],
199             'Cayman Islands' => [
200             '19.5000',
201             '-80.5000'
202             ],
203             'Mauritius' => [
204             '-20.2833',
205             '57.5500'
206             ],
207             'Maldives' => [
208             '3.2500',
209             '73.0000'
210             ],
211             'Bangladesh' => [
212             '24.0000',
213             '90.0000'
214             ],
215             'Democratic People\'s Republic of Korea' => [
216             '40.3017',
217             '127.4318'
218             ],
219             'Netherlands' => [
220             '52.5000',
221             '5.7500'
222             ],
223             'Brazil' => [
224             '-10.0000',
225             '-55.0000'
226             ],
227             'Korea, Democratic Peoples Republic of' => [
228             '40.3017',
229             '127.4318'
230             ],
231             'Madeira Islands' => [
232             '32.7495',
233             '-16.7756'
234             ],
235             'Japan' => [
236             '36.0000',
237             '138.0000'
238             ],
239             'Republic of Guinea' => [
240             '9.93489',
241             '-11.28384'
242             ],
243             'Ecuador' => [
244             '-2.0000',
245             '-77.5000'
246             ],
247             'United Kingdom of Great Britain and Northern Island' => [ # Typo
248             '55.40342',
249             '-3.21145'
250             ],
251             'United Kingdom of Great Britain and Northern Ireland' => [ # Fixed
252             '55.40342',
253             '-3.21145'
254             ],
255             'South Georgia And The South Sandwich Islands' => [
256             '-56.5656',
257             '-34.0227'
258             ],
259             'Mali' => [
260             '17.0000',
261             '-4.0000'
262             ],
263             'United Republic of Tanzania' => [
264             '-6.36822',
265             '34.88519'
266             ],
267             'Jamaica' => [
268             '18.2500',
269             '-77.5000'
270             ],
271             'Dominica' => [
272             '15.4167',
273             '-61.3333'
274             ],
275             'Southern Ocean' => [
276             '-60.0000',
277             '90.0000'
278             ],
279             'Israel' => [
280             '31.5000',
281             '34.7500'
282             ],
283             'Madagascar' => [
284             '-20.0000',
285             '47.0000'
286             ],
287             'Hungary, Republic of' => [
288             '47.16463',
289             '19.50894'
290             ],
291             'Cocos Islands' => [
292             '-11.9947',
293             '96.8787'
294             ],
295             'Syrian Arab Republic' => [
296             '34.81491',
297             '39.00233'
298             ],
299             'Malta' => [
300             '35.8333',
301             '14.5833'
302             ],
303             'Saint Pierre and Miquelon' => [
304             '46.8333',
305             '-56.3333'
306             ],
307             'Midway Islands' => [
308             '28.2000',
309             '-177.3667'
310             ],
311             'American Samoa' => [
312             '-14.3333',
313             '-170.0000'
314             ],
315             'Russian Federation' => [
316             '61.52311',
317             '105.06381'
318             ],
319             'Micronesia, Federated States of' => [
320             '6.9167',
321             '158.2500'
322             ],
323             'Antarctica' => [
324             '-90.0000',
325             '0.0000'
326             ],
327             'Azerbaijan' => [
328             '40.5000',
329             '47.5000'
330             ],
331             'Northern Mariana Islands' => [
332             '15.2000',
333             '145.7500'
334             ],
335             'Iraq' => [
336             '33.0000',
337             '44.0000'
338             ],
339             'Turks and Caicas Islands' => [
340             '22.0124',
341             '-72.7319'
342             ],
343             'Christmas Island' => [
344             '-10.5000',
345             '105.6667'
346             ],
347             'EU' => [
348             '51',
349             '4.5'
350             ],
351             'Guernsey' => [
352             '49.4667',
353             '-2.5833'
354             ],
355             'Democratic Yemen' => [
356             '15.35796',
357             '48.17329'
358             ],
359             'Federated States of Micronesia' => [
360             '8.4674',
361             '150.5438'
362             ],
363             'United States Pacific Island Wildlife Refuges, Baker Island' => [
364             '0.2167',
365             '-176.4667'
366             ],
367             'Howland Island' => [
368             '0.8000',
369             '-176.6333'
370             ],
371             'Belarus' => [
372             '53.0000',
373             '28.0000'
374             ],
375             'Vietnam' => [
376             '16.0000',
377             '106.0000'
378             ],
379             'Niger' => [
380             '16.0000',
381             '8.0000'
382             ],
383             'Ukraine' => [
384             '49.0000',
385             '32.0000'
386             ],
387             'Saint Kitts and Nevis' => [
388             '17.3333',
389             '-62.7500'
390             ],
391             'Romania' => [
392             '46.0000',
393             '25.0000'
394             ],
395             'Greece' => [
396             '39.0000',
397             '22.0000'
398             ],
399             'Grenada' => [
400             '12.1167',
401             '-61.6667'
402             ],
403             'San Marino' => [
404             '43.7667',
405             '12.4167'
406             ],
407             'Federal Republic of Germany' => [
408             '51.16572',
409             '10.45275'
410             ],
411             'Mayotte' => [
412             '-12.8333',
413             '45.1667'
414             ],
415             'Chile' => [
416             '-30.0000',
417             '-71.0000'
418             ],
419             'United States' => [
420             '38.0000',
421             '-97.0000'
422             ],
423             'Holy See (Vatican City)' => [
424             '41.9000',
425             '12.4500'
426             ],
427             'Vatican City' => [
428             '41.9000',
429             '12.4500'
430             ],
431             'Holy See' => [
432             '41.9000',
433             '12.4500'
434             ],
435             'Wallis and Futuna' => [
436             '-13.3000',
437             '-176.2000'
438             ],
439             'Wallis and Futuna Islands' => [
440             '-13.3000',
441             '-176.2000'
442             ],
443             'Heard Island and McDonald Islands' => [
444             '-53.1000',
445             '72.5167'
446             ],
447             'Costa Rica' => [
448             '10.0000',
449             '-84.0000'
450             ],
451             'France' => [
452             '46.0000',
453             '2.0000'
454             ],
455             'Kermadec Islands' => [
456             '-29.8863',
457             '-178.2544'
458             ],
459             'United States Pacific Island Wildlife Refuges, Howland Island' => [
460             '0.8000',
461             '-176.6333'
462             ],
463             'Malaysia' => [
464             '2.5000',
465             '112.5000'
466             ],
467             'Comoros' => [
468             '-12.1667',
469             '44.2500'
470             ],
471             'Cambodia' => [
472             '13.0000',
473             '105.0000'
474             ],
475             'British Indian Ocean Territory' => [
476             '-6.0000',
477             '71.5000'
478             ],
479             'Samoa' => [
480             '-13.5833',
481             '-172.3333'
482             ],
483             'Rwanda' => [
484             '-2.0000',
485             '30.0000'
486             ],
487             'Cote d\'Ivoire' => [
488             '8.0000',
489             '-5.0000'
490             ],
491             'Uruguay' => [
492             '-33.0000',
493             '-56.0000'
494             ],
495             'Benin' => [
496             '9.5000',
497             '2.2500'
498             ],
499             'Netherlands Antilles' => [
500             '12.2500',
501             '-68.7500'
502             ],
503             'Mongolia' => [
504             '46.0000',
505             '105.0000'
506             ],
507             'Korea, North' => [
508             '40.0000',
509             '127.0000'
510             ],
511             'Hungary' => [
512             '47.0000',
513             '20.0000'
514             ],
515             'Trinidad and Tobago' => [
516             '11.0000',
517             '-61.0000'
518             ],
519             'Saint Lucia' => [
520             '13.8833',
521             '-60.9667'
522             ],
523             'Pakistan' => [
524             '30.0000',
525             '70.0000'
526             ],
527             'Hong Kong' => [
528             '22.2500',
529             '114.1667'
530             ],
531             'French Guyana' => [
532             '3.95180',
533             '-53.07823'
534             ],
535             'Suriname' => [
536             '4.0000',
537             '-56.0000'
538             ],
539             'Navassa Island' => [
540             '18.4167',
541             '-75.0333'
542             ],
543             'Britain' => [
544             '55.40342',
545             '-3.21145'
546             ],
547             'Gibraltar' => [
548             '36.1333',
549             '-5.3500'
550             ],
551             'Western Sahara' => [
552             '24.5000',
553             '-13.0000'
554             ],
555             'Antipodes Islands' => [
556             '-49.6749',
557             '178.7925'
558             ],
559             'Eritrea' => [
560             '15.0000',
561             '39.0000'
562             ],
563             'Micronesia, Federated States' => [
564             '8.4674',
565             '150.5438'
566             ],
567             'Angola' => [
568             '-12.5000',
569             '18.5000'
570             ],
571             'Korea, South' => [
572             '37.0000',
573             '127.5000'
574             ],
575             'Armenia' => [
576             '40.0000',
577             '45.0000'
578             ],
579             'Virgin Islands, British' => [
580             '18.5350',
581             '-64.5259'
582             ],
583             'Saudi Arabia' => [
584             '25.0000',
585             '45.0000'
586             ],
587             'Guinea-Bissau' => [
588             '12.0000',
589             '-15.0000'
590             ],
591             'Turkmenistan' => [
592             '40.0000',
593             '60.0000'
594             ],
595             'Kingman Reef' => [
596             '6.4000',
597             '-162.3667'
598             ],
599             'Honduras' => [
600             '15.0000',
601             '-86.5000'
602             ],
603             'Qatar' => [
604             '25.5000',
605             '51.2500'
606             ],
607             'Nicaragua' => [
608             '13.0000',
609             '-85.0000'
610             ],
611             'Tokelau' => [
612             '-9.0000',
613             '-172.0000'
614             ],
615             'Pitcairn' => [
616             '-24.4930',
617             '-127.7594'
618             ],
619             'Iceland' => [
620             '65.0000',
621             '-18.0000'
622             ],
623             'Ghana' => [
624             '8.0000',
625             '-2.0000'
626             ],
627             'Republic of the Congo' => [
628             '-0.66207',
629             '14.92742'
630             ],
631             'Arctic Ocean' => [
632             '90.0000',
633             '0.0000'
634             ],
635             'French Polynesia' => [
636             '-15.0000',
637             '-140.0000'
638             ],
639             'Akrotiri' => [
640             '34.6167',
641             '32.9667'
642             ],
643             'Djibouti' => [
644             '11.5000',
645             '43.0000'
646             ],
647             'Slovakia' => [
648             '48.6667',
649             '19.5000'
650             ],
651             'Lao People\'s Democratic Republic' => [
652             '18.20521',
653             '103.89504'
654             ],
655             'Turks and Caicos Islands' => [
656             '21.7500',
657             '-71.5833'
658             ],
659             'Tajikistan' => [
660             '39.0000',
661             '71.0000'
662             ],
663             'Coral Sea Islands' => [
664             '-18.0000',
665             '152.0000'
666             ],
667             'Republic of Niger' => [
668             '17.61100',
669             '8.08095'
670             ],
671             'Palmyra Atoll' => [
672             '5.8667',
673             '-162.0667'
674             ],
675             'United States Pacific Island Wildlife Refuges, Johnston Atoll' => [
676             '16.7500',
677             '-169.5167'
678             ],
679             'Cuba' => [
680             '21.5000',
681             '-80.0000'
682             ],
683             'Spain' => [
684             '40.0000',
685             '-4.0000'
686             ],
687             'Republic of Moldova' => [
688             '46.9795',
689             '28.3772'
690             ],
691             'Guatamala' => [
692             '15.7763',
693             '-90.2323'
694             ],
695             'Bolivia' => [
696             '-17.0000',
697             '-65.0000'
698             ],
699             'Switzerland' => [
700             '47.0000',
701             '8.0000'
702             ],
703             'Faroc Islands' => [
704             '-23.6308',
705             '-148.5444'
706             ],
707             'Europa Island' => [
708             '-22.3333',
709             '40.3667'
710             ],
711             'Montserrat' => [
712             '16.7500',
713             '-62.2000'
714             ],
715             'Pitcairn Islands' => [
716             '-25.0667',
717             '-130.1000'
718             ],
719             'Montenegro' => [
720             '42.5000',
721             '19.3000'
722             ],
723             'Luxembourg' => [
724             '49.7500',
725             '6.1667'
726             ],
727             'Brunei' => [
728             '4.5000',
729             '114.6667'
730             ],
731             'Iran' => [
732             '32.0000',
733             '53.0000'
734             ],
735             'Western Samoa' => [
736             '-13.74787',
737             '-172.10396'
738             ],
739             'Martinique' => [
740             '14.6667',
741             '-61.0000'
742             ],
743             'Bahamas, The' => [
744             '24.2500',
745             '-76.0000'
746             ],
747             'Tanzania' => [
748             '-6.0000',
749             '35.0000'
750             ],
751             'Pacific Ocean' => [
752             '0.0000',
753             '-160.0000'
754             ],
755             'Glorioso Islands' => [
756             '-11.5000',
757             '47.3333'
758             ],
759             'Kazakhstan' => [
760             '48.0000',
761             '68.0000'
762             ],
763             'Italy' => [
764             '42.8333',
765             '12.8333'
766             ],
767             'Republic of Korea' => [
768             '36.0575',
769             '127.3356'
770             ],
771             'Zimbabwe' => [
772             '-20.0000',
773             '30.0000'
774             ],
775             'East Timor' => [
776             '-8.8333',
777             '125.9167'
778             ],
779             'New Zealand' => [
780             '-41.0000',
781             '174.0000'
782             ],
783             'Netherlands, Kingdom of the' => [
784             '52.11200',
785             '5.29500'
786             ],
787             'Yemen' => [
788             '15.0000',
789             '48.0000'
790             ],
791             'Burundi' => [
792             '-3.5000',
793             '30.0000'
794             ],
795             'Bahrain' => [
796             '26.0000',
797             '50.5500'
798             ],
799             'Jarvis Island' => [
800             '-0.3667',
801             '-160.0167'
802             ],
803             'Reunion' => [
804             '-21.1000',
805             '55.6000'
806             ],
807             'Ashmore and Cartier Islands' => [
808             '-12.2333',
809             '123.0833'
810             ],
811             'Macedonia, The Former Yugoslav Republic of' => [
812             '41.61100',
813             '21.75141'
814             ],
815             'Burma' => [
816             '22.0000',
817             '98.0000'
818             ],
819             'Heard Island And Mcdonald Islands' => [
820             '-53.0507',
821             '73.2278'
822             ],
823             'British Virgin Islands' => [
824             '18.5000',
825             '-64.5000'
826             ],
827             'Greenland' => [
828             '72.0000',
829             '-40.0000'
830             ],
831             'Denmark' => [
832             '56.0000',
833             '10.0000'
834             ],
835             'Andorra' => [
836             '42.5000',
837             '1.5000'
838             ],
839             'Norfolk Island' => [
840             '-29.0333',
841             '167.9500'
842             ],
843             'Albania' => [
844             '41.0000',
845             '20.0000'
846             ],
847             'Congo, Republic of the' => [
848             '-1.0000',
849             '15.0000'
850             ],
851             'Nepal' => [
852             '28.0000',
853             '84.0000'
854             ],
855             'Tonga' => [
856             '-20.0000',
857             '-175.0000'
858             ],
859             'Somalia' => [
860             '10.0000',
861             '49.0000'
862             ],
863             'Nauru' => [
864             '-0.5333',
865             '166.9167'
866             ],
867             'Falkland Islands (Islas Malvinas)' => [
868             '-51.7500',
869             '-59.0000'
870             ],
871             'Mozambique' => [
872             '-18.2500',
873             '35.0000'
874             ],
875             'America' => [
876             '38.15217',
877             '-100.25006'
878             ],
879             'Antipodes' => [
880             '-49.6749',
881             '178.7925'
882             ],
883             'Jan Mayen' => [
884             '71.0000',
885             '-8.0000'
886             ],
887             'Virgin Islands, U.S.' => [
888             '18.0699',
889             '-64.8257'
890             ],
891             'United States Pacific Island Wildlife Refuges, Kingman Reef' => [
892             '6.3833',
893             '-162.4167'
894             ],
895             'Antipodean Islands' => [
896             '-49.6749',
897             '178.7925'
898             ],
899             'Virgin Islands' => [
900             '18.3333',
901             '-64.8333'
902             ],
903             'Argentina' => [
904             '-34.0000',
905             '-64.0000'
906             ],
907             'Gaza Strip' => [
908             '31.4167',
909             '34.3333'
910             ],
911             'Federal Islamic Republic of the Comoros' => [
912             '-11.88810',
913             '43.87701'
914             ],
915             'Prince Edward Islands' => [
916             '-46.7943',
917             '37.7964'
918             ],
919             'Dominican Republic' => [
920             '19.0000',
921             '-70.6667'
922             ],
923             'Micronesia' => [
924             '8.4674',
925             '150.5438'
926             ],
927             'Micronesia-Polynesia' => [
928             '8.4674',
929             '150.5438'
930             ],
931             'Morocco' => [
932             '32.0000',
933             '-5.0000'
934             ],
935             'Tunisia' => [
936             '34.0000',
937             '9.0000'
938             ],
939             'Guinea, Republic of' => [
940             '9.93489',
941             '-11.28384'
942             ],
943             'South Georgia and the South Sandwich Islands' => [
944             '-54.5000',
945             '-37.0000'
946             ],
947             'Paraguay' => [
948             '-23.0000',
949             '-58.0000'
950             ],
951             'Congo, Democratic Republic of the' => [
952             '0.0000',
953             '25.0000'
954             ],
955             'Croatia' => [
956             '45.1667',
957             '15.5000'
958             ],
959             'Great Britain' => [
960             '55.40342',
961             '-3.21145'
962             ],
963             'Swaziland' => [
964             '-26.5000',
965             '31.5000'
966             ],
967             'Dhekelia' => [
968             '34.9833',
969             '33.7500'
970             ],
971             'Slovenia' => [
972             '46.1167',
973             '14.8167'
974             ],
975             'Belize' => [
976             '17.2500',
977             '-88.7500'
978             ],
979             'Botswana' => [
980             '-22.0000',
981             '24.0000'
982             ],
983             'India' => [
984             '20.0000',
985             '77.0000'
986             ],
987             'Namibia' => [
988             '-22.0000',
989             '17.0000'
990             ],
991             'Algeria' => [
992             '28.0000',
993             '3.0000'
994             ],
995             'United States Pacific Island Wildlife Refuges, Midway Islands' => [
996             '28.2000',
997             '-177.3667'
998             ],
999             'Galapagos Islands' => [
1000             '-0.6223',
1001             '-90.4509'
1002             ],
1003             'EEC' => [
1004             '51',
1005             '4.5'
1006             ],
1007             'UK' => [
1008             '55.40342',
1009             '-3.21145'
1010             ],
1011             'Taiwan' => [
1012             '23.5000',
1013             '121.0000'
1014             ],
1015             'Netherlands, Antilles' => [
1016             '15.01941',
1017             '-66.05044'
1018             ],
1019             'Falkland Islands' => [
1020             '-51.9578',
1021             '-59.5288'
1022             ],
1023             'Bulgaria' => [
1024             '43.0000',
1025             '25.0000'
1026             ],
1027             'Laos' => [
1028             '18.0000',
1029             '105.0000'
1030             ],
1031             'Macau' => [
1032             '22.1667',
1033             '113.5500'
1034             ],
1035             'Lebanon' => [
1036             '33.8333',
1037             '35.8333'
1038             ],
1039             'Thailand' => [
1040             '15.0000',
1041             '100.0000'
1042             ],
1043             'United States Pacific Island Wildlife Refuges, Palmyra Atoll' => [
1044             '5.8833',
1045             '-162.0833'
1046             ],
1047             'Barbados' => [
1048             '13.1667',
1049             '-59.5333'
1050             ],
1051             'United Arab Emirates' => [
1052             '24.0000',
1053             '54.0000'
1054             ],
1055             'Singapore' => [
1056             '1.3667',
1057             '103.8000'
1058             ],
1059             'Spratly Islands' => [
1060             '8.6333',
1061             '111.9167'
1062             ],
1063             'Cameroon' => [
1064             '6.0000',
1065             '12.0000'
1066             ],
1067             'Cocos (Keeling) Islands' => [
1068             '-12.5000',
1069             '96.8333'
1070             ],
1071             'Germany' => [
1072             '51.0000',
1073             '9.0000'
1074             ],
1075             'Burkina Faso' => [
1076             '13.0000',
1077             '-2.0000'
1078             ],
1079             'Belgium' => [
1080             '50.8333',
1081             '4.0000'
1082             ],
1083             'Monaco' => [
1084             '43.7333',
1085             '7.4000'
1086             ],
1087             'Hong Kong Special Administrative Region of China' => [
1088             '22.3565',
1089             '114.1363'
1090             ],
1091             'European Union' => [
1092             '51',
1093             '4.5'
1094             ],
1095             'Comoros, Federal Islamic Republic of the' => [
1096             '-11.88810',
1097             '43.87701'
1098             ],
1099             'French Guiana' => [
1100             '4.0000',
1101             '-53.0000'
1102             ],
1103             'Uzbekistan' => [
1104             '41.0000',
1105             '64.0000'
1106             ],
1107             'Haiti' => [
1108             '19.0000',
1109             '-72.4167'
1110             ],
1111             'Kiribati' => [
1112             '1.4167',
1113             '173.0000'
1114             ],
1115             'Bouvet Island' => [
1116             '-54.4333',
1117             '3.4000'
1118             ],
1119             'Guam' => [
1120             '13.4667',
1121             '144.7833'
1122             ],
1123             'Libya' => [
1124             '25.0000',
1125             '17.0000'
1126             ],
1127             'Atlantic Ocean' => [
1128             '0.0000',
1129             '-25.0000'
1130             ],
1131             'Panama' => [
1132             '9.0000',
1133             '-80.0000'
1134             ],
1135             'Iran (Islamic Republic of)' => [
1136             '32.42065',
1137             '53.68236'
1138             ],
1139             'North Korea' => [
1140             '40.3017',
1141             '127.4318'
1142             ],
1143             'Syria' => [
1144             '35.0000',
1145             '38.0000'
1146             ],
1147             'Puerto Rico' => [
1148             '18.2500',
1149             '-66.5000'
1150             ],
1151             'Tromelin Island' => [
1152             '-15.8667',
1153             '54.4167'
1154             ],
1155             'GB' => [
1156             '55.40342',
1157             '-3.21145'
1158             ],
1159             'Zambia' => [
1160             '-15.0000',
1161             '30.0000'
1162             ],
1163             'Liechtenstein' => [
1164             '47.2667',
1165             '9.5333'
1166             ],
1167             'Sri Lanka' => [
1168             '7.0000',
1169             '81.0000'
1170             ],
1171             'China' => [
1172             '35.0000',
1173             '105.0000'
1174             ],
1175             'Sierra Leone' => [
1176             '8.5000',
1177             '-11.5000'
1178             ],
1179             'Congo' => [
1180             '-0.66207',
1181             '14.92742'
1182             ],
1183             'Estonia' => [
1184             '59.0000',
1185             '26.0000'
1186             ],
1187             'Democratic Republic of the Congo' => [
1188             '-4.03479',
1189             '21.75503'
1190             ],
1191             'Guatemala' => [
1192             '15.5000',
1193             '-90.2500'
1194             ],
1195             'Oman' => [
1196             '21.0000',
1197             '57.0000'
1198             ],
1199             'Ireland' => [
1200             '53.0000',
1201             '-8.0000'
1202             ],
1203             'Guadeloupe' => [
1204             '16.2500',
1205             '-61.5833'
1206             ],
1207             'Vanuatu' => [
1208             '-16.0000',
1209             '167.0000'
1210             ],
1211             'Wake Island' => [
1212             '19.2833',
1213             '166.6500'
1214             ],
1215             'Czech Republic' => [
1216             '49.7500',
1217             '15.5000'
1218             ],
1219             'Central African Republic' => [
1220             '7.0000',
1221             '21.0000'
1222             ],
1223             'Mexico' => [
1224             '23.0000',
1225             '-102.0000'
1226             ],
1227             'Bahamas' => [
1228             '24.6949',
1229             '-77.4616'
1230             ],
1231             'Bassas da India' => [
1232             '-21.5000',
1233             '39.8333'
1234             ],
1235             'Juan de Nova Island' => [
1236             '-17.0500',
1237             '42.7500'
1238             ],
1239             'Niue' => [
1240             '-19.0333',
1241             '-169.8667'
1242             ],
1243             'Independent State of Samoa' => [
1244             '-13.74787',
1245             '-172.10396'
1246             ],
1247             'Yugoslavia' => [
1248             '44.0660',
1249             '20.9225'
1250             ],
1251             'Viet Nam' => [
1252             '15.89854',
1253             '105.80642'
1254             ],
1255             'United States Pacific Island Wildlife Refuges, Jarvis Island' => [
1256             '-0.3833',
1257             '-160.0167'
1258             ],
1259             'Saint Helena' => [
1260             '-11.9541',
1261             '-10.0300'
1262             ],
1263             'Iran, Islamic Republic of' => [
1264             '32.42065',
1265             '53.68236'
1266             ],
1267             'El Salvador' => [
1268             '13.8333',
1269             '-88.9167'
1270             ],
1271             'Jersey' => [
1272             '49.2500',
1273             '-2.1667'
1274             ],
1275             'Brunei Darussalam' => [
1276             '4.5251',
1277             '114.7155'
1278             ],
1279             'South Korea' => [
1280             '36.0575',
1281             '127.3356'
1282             ],
1283             'Aruba' => [
1284             '12.5000',
1285             '-69.9667'
1286             ],
1287             'Poland' => [
1288             '52.0000',
1289             '20.0000'
1290             ],
1291             'Ivory Coast' => [
1292             '7.5469',
1293             '-5.5471'
1294             ],
1295             'Togo' => [
1296             '8.0000',
1297             '1.1667'
1298             ],
1299             'Democratic Peoples Republic of Korea' => [
1300             '40.3017',
1301             '127.4318'
1302             ],
1303             'Canary Islands' => [
1304             '28.5251',
1305             '-15.7937'
1306             ],
1307             'Moldova' => [
1308             '47.0000',
1309             '29.0000'
1310             ],
1311             'United States Virgin Islands' => [
1312             '18.0699',
1313             '-64.8257'
1314             ],
1315             'Gabon' => [
1316             '-1.0000',
1317             '11.7500'
1318             ],
1319             'Kenya' => [
1320             '1.0000',
1321             '38.0000'
1322             ],
1323             'Baker Island' => [
1324             '0.2167',
1325             '-176.4667'
1326             ],
1327             'Egypt' => [
1328             '27.0000',
1329             '30.0000'
1330             ],
1331             'Australia' => [
1332             '-27.0000',
1333             '133.0000'
1334             ],
1335             'Johnston Atoll' => [
1336             '16.7500',
1337             '-169.5167'
1338             ],
1339             'Macedonia' => [
1340             '41.8333',
1341             '22.0000'
1342             ],
1343             'United Kingdom' => [
1344             '54.0000',
1345             '-2.0000'
1346             ],
1347             'Lithuania' => [
1348             '56.0000',
1349             '24.0000'
1350             ],
1351             'Marshall Islands' => [
1352             '9.0000',
1353             '168.0000'
1354             ],
1355             'Norway' => [
1356             '62.0000',
1357             '10.0000'
1358             ],
1359             'Canada' => [
1360             '60.0000',
1361             '-95.0000'
1362             ],
1363             'Cyprus' => [
1364             '35.0000',
1365             '33.0000'
1366             ],
1367             'Svalbard' => [
1368             '78.0000',
1369             '20.0000'
1370             ],
1371             'Papua New Guinea' => [
1372             '-6.0000',
1373             '147.0000'
1374             ],
1375             'Bermuda' => [
1376             '32.3333',
1377             '-64.7500'
1378             ],
1379             'Kyrgyzstan' => [
1380             '41.0000',
1381             '75.0000'
1382             ],
1383             'Mauritania' => [
1384             '20.0000',
1385             '-12.0000'
1386             ],
1387             'Zaire' => [
1388             '-4.03479',
1389             '21.75503'
1390             ],
1391             'Seychelles' => [
1392             '-4.5833',
1393             '55.6667'
1394             ],
1395             'Russia' => [
1396             '60.0000',
1397             '100.0000'
1398             ],
1399             'Finland' => [
1400             '64.0000',
1401             '26.0000'
1402             ],
1403             'Clipperton Island' => [
1404             '10.2833',
1405             '-109.2167'
1406             ],
1407             'Palau' => [
1408             '7.5000',
1409             '134.5000'
1410             ],
1411             'Chad' => [
1412             '15.0000',
1413             '19.0000'
1414             ],
1415             'Fiji' => [
1416             '-18.0000',
1417             '175.0000'
1418             ],
1419             'Austria' => [
1420             '47.3333',
1421             '13.3333'
1422             ],
1423             'Cape Verde' => [
1424             '16.0000',
1425             '-24.0000'
1426             ],
1427             'Jordan' => [
1428             '31.0000',
1429             '36.0000'
1430             ],
1431             'Lesotho' => [
1432             '-29.5000',
1433             '28.5000'
1434             ],
1435             'Philippines' => [
1436             '13.0000',
1437             '122.0000'
1438             ],
1439             'Uganda' => [
1440             '1.0000',
1441             '32.0000'
1442             ],
1443             'Bhutan' => [
1444             '27.5000',
1445             '90.5000'
1446             ],
1447             'Sao Tome and Principe' => [
1448             '1.0000',
1449             '7.0000'
1450             ],
1451             'Saint Vincent and the Grenadines' => [
1452             '13.2500',
1453             '-61.2000'
1454             ],
1455             'Colombia' => [
1456             '4.0000',
1457             '-72.0000'
1458             ],
1459             'Gambia' => [
1460             '13.4454',
1461             '-15.3114'
1462             ],
1463             'Liberia' => [
1464             '6.5000',
1465             '-9.5000'
1466             ],
1467             'USA' => [
1468             '38.15217',
1469             '-100.25006'
1470             ],
1471             'Côte d\'Ivoire' => [
1472             '7.5469',
1473             '-5.5471'
1474             ],
1475             'The former Yugoslav Republic of Macedonia' => [
1476             '41.61100',
1477             '21.75141'
1478             ],
1479             'Taiwan Province of China' => [
1480             '23.60003',
1481             '120.65415'
1482             ],
1483             'Isle of Man' => [
1484             '54.2500',
1485             '-4.5000'
1486             ],
1487             'Bosnia and Herzegovina' => [
1488             '44.0000',
1489             '18.0000'
1490             ],
1491             'Kuwait' => [
1492             '29.5000',
1493             '45.7500'
1494             ],
1495             'Venezuela' => [
1496             '8.0000',
1497             '-66.0000'
1498             ],
1499             'The Former Yugoslav Republic of Macedonia' => [
1500             '41.61100',
1501             '21.75141'
1502             ],
1503             'Georgia' => [
1504             '42.0000',
1505             '43.5000'
1506             ],
1507             'New Caledonia' => [
1508             '-21.5000',
1509             '165.5000'
1510             ],
1511             'Afghanistan' => [
1512             '33.0000',
1513             '65.0000'
1514             ],
1515             'Sudan' => [
1516             '15.0000',
1517             '30.0000'
1518             ],
1519             'Holland' => [
1520             '52.11200',
1521             '5.29500'
1522             ],
1523             'Niger, Republic of' => [
1524             '17.61100',
1525             '8.08095'
1526             ],
1527             'Senegal' => [
1528             '14.0000',
1529             '-14.0000'
1530             ]
1531             };
1532            
1533             $countries_latlong = {
1534             "Afghanistan" => [33.0000, 65.0000],
1535             "Akrotiri" => [34.6167, 32.9667],
1536             "Albania" => [41.0000, 20.0000],
1537             "Algeria" => [28.0000, 3.0000],
1538             "American Samoa" => [-14.3333, -170.0000],
1539             "Andorra" => [42.5000, 1.5000],
1540             "Angola" => [-12.5000, 18.5000],
1541             "Anguilla" => [18.2500, -63.1667],
1542             "Antarctica" => [-90.0000, 0.0000],
1543             "Antigua and Barbuda" => [17.0500, -61.8000],
1544             "Arctic Ocean" => [90.0000, 0.0000],
1545             "Argentina" => [-34.0000, -64.0000],
1546             "Armenia" => [40.0000, 45.0000],
1547             "Aruba" => [12.5000, -69.9667],
1548             "Ashmore and Cartier Islands" => [-12.2333, 123.0833],
1549             "Atlantic Ocean" => [0.0000, -25.0000],
1550             "Australia" => [-27.0000, 133.0000],
1551             "Austria" => [47.3333, 13.3333],
1552             "Azerbaijan" => [40.5000, 47.5000],
1553             "Bahamas, The" => [24.2500, -76.0000],
1554             "Bahamas" => [24.2500, -76.0000],
1555             "Bahrain" => [26.0000, 50.5500],
1556             "Baker Island" => [0.2167, -176.4667],
1557             "Bangladesh" => [24.0000, 90.0000],
1558             "Barbados" => [13.1667, -59.5333],
1559             "Bassas da India" => [-21.5000, 39.8333],
1560             "Belarus" => [53.0000, 28.0000],
1561             "Belgium" => [50.8333, 4.0000],
1562             "Belize" => [17.2500, -88.7500],
1563             "Benin" => [9.5000, 2.2500],
1564             "Bermuda" => [32.3333, -64.7500],
1565             "Bhutan" => [27.5000, 90.5000],
1566             "Bolivia" => [-17.0000, -65.0000],
1567             "Bosnia and Herzegovina" => [44.0000, 18.0000],
1568             "Botswana" => [-22.0000, 24.0000],
1569             "Bouvet Island" => [-54.4333, 3.4000],
1570             "Brazil" => [-10.0000, -55.0000],
1571             "British Indian Ocean Territory" => [-6.0000, 71.5000],
1572             "British Virgin Islands" => [18.5000, -64.5000],
1573             "Virgin Islands, British" => [18.5000, -64.5000],
1574             "Brunei" => [4.5000, 114.6667],
1575             "Bulgaria" => [43.0000, 25.0000],
1576             "Burkina Faso" => [13.0000, -2.0000],
1577             "Burma" => [22.0000, 98.0000],
1578             "Burundi" => [-3.5000, 30.0000],
1579             "Cambodia" => [13.0000, 105.0000],
1580             "Cameroon" => [6.0000, 12.0000],
1581             "Canada" => [60.0000, -95.0000],
1582             "Cape Verde" => [16.0000, -24.0000],
1583             "Cayman Islands" => [19.5000, -80.5000],
1584             "Central African Republic" => [7.0000, 21.0000],
1585             "Chad" => [15.0000, 19.0000],
1586             "Chile" => [-30.0000, -71.0000],
1587             "China" => [35.0000, 105.0000],
1588             "Christmas Island" => [-10.5000, 105.6667],
1589             "Clipperton Island" => [10.2833, -109.2167],
1590             "Cocos (Keeling) Islands" => [-12.5000, 96.8333],
1591             "Keeling Islands" => [-12.5000, 96.8333],
1592             "Cocos Islands" => [-12.5000, 96.8333],
1593             "Cocos" => [-12.5000, 96.8333],
1594             "Colombia" => [4.0000, -72.0000],
1595             "Comoros" => [-12.1667, 44.2500],
1596             'Comoros, Federal Islamic Republic of the' => [-12.1667, 44.2500],
1597             'Federal Islamic Republic of the Comoros' => [-12.1667, 44.2500],
1598             "Congo, Democratic Republic of the" => [0.0000, 25.0000],
1599             "Democratic Republic of the Congo" => [0.0000, 25.0000],
1600             "Congo, Republic of the" => [-1.0000, 15.0000],
1601             "Republic of the Congo" => [-1.0000, 15.0000],
1602             "Cook Islands" => [-21.2333, -159.7667],
1603             "Coral Sea Islands" => [-18.0000, 152.0000],
1604             "Costa Rica" => [10.0000, -84.0000],
1605             "Cote d'Ivoire" => [8.0000, -5.0000],
1606             'Côte d\'Ivoire' => [8.0000, -5.0000],
1607             'Ivory Coast' => [8.0000, -5.0000],
1608             'The Ivory Coast' => [8.0000, -5.0000],
1609             "Croatia" => [45.1667, 15.5000],
1610             "Cuba" => [21.5000, -80.0000],
1611             "Cyprus" => [35.0000, 33.0000],
1612             "Czech Republic" => [49.7500, 15.5000],
1613             "Denmark" => [56.0000, 10.0000],
1614             "Dhekelia" => [34.9833, 33.7500],
1615             "Djibouti" => [11.5000, 43.0000],
1616             "Dominica" => [15.4167, -61.3333],
1617             "Dominican Republic" => [19.0000, -70.6667],
1618             "East Timor" => [-8.8333, 125.9167],
1619             "Ecuador" => [-2.0000, -77.5000],
1620             "Egypt" => [27.0000, 30.0000],
1621             "El Salvador" => [13.8333, -88.9167],
1622             "Equatorial Guinea" => [2.0000, 10.0000],
1623             "Eritrea" => [15.0000, 39.0000],
1624             "Estonia" => [59.0000, 26.0000],
1625             "Ethiopia" => [8.0000, 38.0000],
1626             "Europa Island" => [-22.3333, 40.3667],
1627             "Falkland Islands (Islas Malvinas)" => [-51.7500, -59.0000],
1628             "Falkland Islands" => [-51.7500, -59.0000],
1629             "Faroe Islands" => [62.0000, -7.0000],
1630             "Fiji" => [-18.0000, 175.0000],
1631             "Finland" => [64.0000, 26.0000],
1632             "France" => [46.0000, 2.0000],
1633             "French Guiana" => [4.0000, -53.0000],
1634             "French Polynesia" => [-15.0000, -140.0000],
1635             "French Southern and Antarctic Lands" => [-43.0000, 67.0000],
1636             "Gabon" => [-1.0000, 11.7500],
1637             "Gambia, The" => [13.4667, -16.5667],
1638             "Gambia" => [13.4667, -16.5667],
1639             "Gaza Strip" => [31.4167, 34.3333],
1640             "Georgia" => [42.0000, 43.5000],
1641             "Germany" => [51.0000, 9.0000],
1642             'Federal Republic of Germany' => [51.0000, 9.0000],
1643             "Ghana" => [8.0000, -2.0000],
1644             "Gibraltar" => [36.1333, -5.3500],
1645             "Glorioso Islands" => [-11.5000, 47.3333],
1646             "Greece" => [39.0000, 22.0000],
1647             "Greenland" => [72.0000, -40.0000],
1648             "Grenada" => [12.1167, -61.6667],
1649             "Guadeloupe" => [16.2500, -61.5833],
1650             "Guam" => [13.4667, 144.7833],
1651             "Guatemala" => [15.5000, -90.2500],
1652             "Guernsey" => [49.4667, -2.5833],
1653             "Guinea" => [11.0000, -10.0000],
1654             "Republic of Guinea" => [11.0000, -10.0000],
1655             "Guinea, Republic of" => [11.0000, -10.0000],
1656             "Guinea-Bissau" => [12.0000, -15.0000],
1657             "Guyana" => [5.0000, -59.0000],
1658             "French Guyana" => [5.0000, -59.0000],
1659             "Haiti" => [19.0000, -72.4167],
1660             "Heard Island and McDonald Islands" => [-53.1000, 72.5167],
1661             'Heard Island And Mcdonald Islands' => [-53.1000, 72.5167],
1662             "Holy See (Vatican City)" => [41.9000, 12.4500],
1663             "Holy See" => [41.9000, 12.4500],
1664             "The Holy See" => [41.9000, 12.4500],
1665             "Holy See, The" => [41.9000, 12.4500],
1666             "Vatican City" => [41.9000, 12.4500],
1667             "Vatican City, The" => [41.9000, 12.4500],
1668             "The Vatican City" => [41.9000, 12.4500],
1669             "Honduras" => [15.0000, -86.5000],
1670             "Hong Kong" => [22.2500, 114.1667],
1671             "Hong Kong Special Administrative Region of China" => [22.2500, 114.1667],
1672             "Howland Island" => [0.8000, -176.6333],
1673             "Hungary" => [47.0000, 20.0000],
1674             "Hungary, Repulic of" => [47.0000, 20.0000],
1675             "Iceland" => [65.0000, -18.0000],
1676             "India" => [20.0000, 77.0000],
1677             "Indian Ocean" => [-20.0000, 80.0000],
1678             "Indonesia" => [-5.0000, 120.0000],
1679             "Iran" => [32.0000, 53.0000],
1680             'Iran (Islamic Republic of)' => [32.0000, 53.0000],
1681             'Iran, Islamic Republic of' => [32.0000, 53.0000],
1682             "Iraq" => [33.0000, 44.0000],
1683             "Ireland" => [53.0000, -8.0000],
1684             "Isle of Man" => [54.2500, -4.5000],
1685             "Israel" => [31.5000, 34.7500],
1686             "Italy" => [42.8333, 12.8333],
1687             "Jamaica" => [18.2500, -77.5000],
1688             "Jan Mayen" => [71.0000, -8.0000],
1689             "Japan" => [36.0000, 138.0000],
1690             "Jarvis Island" => [-0.3667, -160.0167],
1691             "Jersey" => [49.2500, -2.1667],
1692             "Johnston Atoll" => [16.7500, -169.5167],
1693             "Jordan" => [31.0000, 36.0000],
1694             "Juan de Nova Island" => [-17.0500, 42.7500],
1695             "Kazakhstan" => [48.0000, 68.0000],
1696             "Kenya" => [1.0000, 38.0000],
1697             "Kingman Reef" => [6.4000, -162.3667],
1698             "Kiribati" => [1.4167, 173.0000],
1699             "Korea, North" => [40.0000, 127.0000],
1700             "North Korea" => [40.0000, 127.0000],
1701             'Korea, Republic of' => [40.0000, 127.0000],
1702             'Democratic People\'s Republic of Korea' => [40.0000, 127.0000],
1703             'Democratic Peoples Republic of Korea' => [40.0000, 127.0000],
1704             'Korea, Democratic Peoples Republic of' => [40.0000, 127.0000],
1705             "Korea, South" => [37.0000, 127.5000],
1706             'Republic of Korea' => [37.0000, 127.5000],
1707             'South Korea' => [37.0000, 127.5000],
1708             "Kuwait" => [29.5000, 45.7500],
1709             "Kyrgyzstan" => [41.0000, 75.0000],
1710             "Laos" => [18.0000, 105.0000],
1711             'Lao People\'s Democratic Republic' => [18.0000, 105.0000],
1712             'People\'s Democratic Republic of Laos' => [18.0000, 105.0000],
1713             'People\'s Democratic Republic of Lao' => [18.0000, 105.0000],
1714             "Latvia" => [57.0000, 25.0000],
1715             "Lebanon" => [33.8333, 35.8333],
1716             "Lesotho" => [-29.5000, 28.5000],
1717             "Liberia" => [6.5000, -9.5000],
1718             "Libya" => [25.0000, 17.0000],
1719             'Libyan Arab Jamahiriya' => [25.0000, 17.0000],
1720             "Liechtenstein" => [47.2667, 9.5333],
1721             "Lithuania" => [56.0000, 24.0000],
1722             "Luxembourg" => [49.7500, 6.1667],
1723             "Macau" => [22.1667, 113.5500],
1724             "Macedonia" => [41.8333, 22.0000],
1725             'Macedonia, The Former Yugoslav Republic of' => [41.8333, 22.0000],
1726             'The Former Yugoslav Republic of Macedonia' => [41.8333, 22.0000],
1727             'The former Yugoslav Republic of Macedonia' => [41.8333, 22.0000],
1728             "Madagascar" => [-20.0000, 47.0000],
1729             "Malawi" => [-13.5000, 34.0000],
1730             "Malaysia" => [2.5000, 112.5000],
1731             "Maldives" => [3.2500, 73.0000],
1732             "Mali" => [17.0000, -4.0000],
1733             "Malta" => [35.8333, 14.5833],
1734             "Marshall Islands" => [9.0000, 168.0000],
1735             "Martinique" => [14.6667, -61.0000],
1736             "Mauritania" => [20.0000, -12.0000],
1737             "Mauritius" => [-20.2833, 57.5500],
1738             "Mayotte" => [-12.8333, 45.1667],
1739             "Mexico" => [23.0000, -102.0000],
1740             "Micronesia, Federated States of" => [6.9167, 158.2500],
1741             "Federated States of Micronesia" => [6.9167, 158.2500],
1742             "Micronesia" => [6.9167, 158.2500],
1743             "Micronesia, Federated States" => [6.9167, 158.2500],
1744             "Midway Islands" => [28.2000, -177.3667],
1745             "Moldova" => [47.0000, 29.0000],
1746             "Moldova, Republic of" => [47.0000, 29.0000],
1747             "Monaco" => [43.7333, 7.4000],
1748             "Mongolia" => [46.0000, 105.0000],
1749             "Montenegro" => [42.5000, 19.3000],
1750             "Montserrat" => [16.7500, -62.2000],
1751             "Morocco" => [32.0000, -5.0000],
1752             "Mozambique" => [-18.2500, 35.0000],
1753             "Namibia" => [-22.0000, 17.0000],
1754             "Nauru" => [-0.5333, 166.9167],
1755             "Navassa Island" => [18.4167, -75.0333],
1756             "Nepal" => [28.0000, 84.0000],
1757             "Netherlands" => [52.5000, 5.7500],
1758             'Netherlands, Kingdom of the' => [52.5000, 5.7500],
1759             "Holland" => [52.5000, 5.7500],
1760             "Netherlands Antilles" => [12.2500, -68.7500],
1761             "Netherlands, Antilles" => [12.2500, -68.7500],
1762             "New Caledonia" => [-21.5000, 165.5000],
1763             "New Zealand" => [-41.0000, 174.0000],
1764             "Nicaragua" => [13.0000, -85.0000],
1765             "Niger" => [16.0000, 8.0000],
1766             "Niger, Republic of" => [16.0000, 8.0000],
1767             "Nigeria" => [10.0000, 8.0000],
1768             "Niue" => [-19.0333, -169.8667],
1769             "Norfolk Island" => [-29.0333, 167.9500],
1770             "Northern Mariana Islands" => [15.2000, 145.7500],
1771             "Norway" => [62.0000, 10.0000],
1772             "Oman" => [21.0000, 57.0000],
1773             "Pacific Ocean" => [0.0000, -160.0000],
1774             "Pakistan" => [30.0000, 70.0000],
1775             "Palau" => [7.5000, 134.5000],
1776             "Palmyra Atoll" => [5.8667, -162.0667],
1777             "Panama" => [9.0000, -80.0000],
1778             "Papua New Guinea" => [-6.0000, 147.0000],
1779             "Paracel Islands" => [16.5000, 112.0000],
1780             "Paraguay" => [-23.0000, -58.0000],
1781             "Peru" => [-10.0000, -76.0000],
1782             "Philippines" => [13.0000, 122.0000],
1783             "Pitcairn Islands" => [-25.0667, -130.1000],
1784             "Pitcairn" => [-25.0667, -130.1000],
1785             "Poland" => [52.0000, 20.0000],
1786             "Portugal" => [39.5000, -8.0000],
1787             "Puerto Rico" => [18.2500, -66.5000],
1788             "Qatar" => [25.5000, 51.2500],
1789             "Reunion" => [-21.1000, 55.6000],
1790             "Romania" => [46.0000, 25.0000],
1791             "Russia" => [60.0000, 100.0000],
1792             "Russian Federation" => [60.0000, 100.0000],
1793             "Russian Federation, The" => [60.0000, 100.0000],
1794             "The Russian Federation" => [60.0000, 100.0000],
1795             "USSR" => [60.0000, 100.0000],
1796             "The Soviet Union" => [60.0000, 100.0000],
1797             "Rwanda" => [-2.0000, 30.0000],
1798             "Saint Kitts and Nevis" => [17.3333, -62.7500],
1799             "Saint Lucia" => [13.8833, -60.9667],
1800             "Saint Pierre and Miquelon" => [46.8333, -56.3333],
1801             "Saint Vincent and the Grenadines" => [13.2500, -61.2000],
1802             "Samoa" => [-13.5833, -172.3333],
1803             "San Marino" => [43.7667, 12.4167],
1804             "Sao Tome and Principe" => [1.0000, 7.0000],
1805             "Saudi Arabia" => [25.0000, 45.0000],
1806             "Senegal" => [14.0000, -14.0000],
1807             "Serbia" => [44.0000, 21.0000],
1808             "Seychelles" => [-4.5833, 55.6667],
1809             "Sierra Leone" => [8.5000, -11.5000],
1810             "Singapore" => [1.3667, 103.8000],
1811             "Slovakia" => [48.6667, 19.5000],
1812             "Slovenia" => [46.1167, 14.8167],
1813             "Solomon Islands" => [-8.0000, 159.0000],
1814             "Somalia" => [10.0000, 49.0000],
1815             "South Africa" => [-29.0000, 24.0000],
1816             "South Georgia and the South Sandwich Islands" => [-54.5000, -37.0000],
1817             'South Georgia And The South Sandwich Islands' => [-54.5000, -37.0000],
1818             "Southern Ocean" => [-60.0000, 90.0000],
1819             "Spain" => [40.0000, -4.0000],
1820             "Spratly Islands" => [8.6333, 111.9167],
1821             "Sri Lanka" => [7.0000, 81.0000],
1822             "Sudan" => [15.0000, 30.0000],
1823             "Suriname" => [4.0000, -56.0000],
1824             "Svalbard" => [78.0000, 20.0000],
1825             "Swaziland" => [-26.5000, 31.5000],
1826             "Sweden" => [62.0000, 15.0000],
1827             "Switzerland" => [47.0000, 8.0000],
1828             "Syria" => [35.0000, 38.0000],
1829             'Syrian Arab Republic' => [35.0000, 38.0000],
1830             "Taiwan" => [23.5000, 121.0000],
1831             'Taiwan Province of China' => [23.5000, 121.0000], # Not really a provience of china but if it helps you find it
1832             "Tajikistan" => [39.0000, 71.0000],
1833             "Tanzania" => [-6.0000, 35.0000],
1834             "United Republic of Tanzania" => [-6.0000, 35.0000],
1835             "Tanzania, United Republic of" => [-6.0000, 35.0000],
1836             "Thailand" => [15.0000, 100.0000],
1837             "Togo" => [8.0000, 1.1667],
1838             "Tokelau" => [-9.0000, -172.0000],
1839             "Tonga" => [-20.0000, -175.0000],
1840             "Trinidad and Tobago" => [11.0000, -61.0000],
1841             "Tromelin Island" => [-15.8667, 54.4167],
1842             "Tunisia" => [34.0000, 9.0000],
1843             "Turkey" => [39.0000, 35.0000],
1844             "Turkmenistan" => [40.0000, 60.0000],
1845             "Turks and Caicos Islands" => [21.7500, -71.5833],
1846             'Turks and Caicas Islands' => [21.7500, -71.5833],
1847             "Tuvalu" => [-8.0000, 178.0000],
1848             "Uganda" => [1.0000, 32.0000],
1849             "Ukraine" => [49.0000, 32.0000],
1850             "United Arab Emirates" => [24.0000, 54.0000],
1851             "United Kingdom" => [54.0000, -2.0000],
1852             'United Kingdom of Great Britain and Northern Ireland' => [54.0000, -2.0000],
1853             'UK' => [54.0000, -2.0000],
1854             'GB' => [54.0000, -2.0000],
1855             'Great Britain' => [54.0000, -2.0000],
1856             'Britain' => [54.0000, -2.0000],
1857             "United States" => [38.0000, -97.0000],
1858             'United States of America' => [38.0000, -97.0000],
1859             'America' => [38.0000, -97.0000],
1860             'US' => [38.0000, -97.0000],
1861             'USA' => [38.0000, -97.0000],
1862             "United States Pacific Island Wildlife Refuges, Baker Island" => [0.2167, -176.4667],
1863             "United States Pacific Island Wildlife Refuges, Howland Island" => [0.8000, -176.6333],
1864             "United States Pacific Island Wildlife Refuges, Jarvis Island" => [-0.3833, -160.0167],
1865             "United States Pacific Island Wildlife Refuges, Johnston Atoll" => [16.7500, -169.5167],
1866             "United States Pacific Island Wildlife Refuges, Kingman Reef" => [6.3833, -162.4167],
1867             "United States Pacific Island Wildlife Refuges, Midway Islands" => [28.2000, -177.3667],
1868             "United States Pacific Island Wildlife Refuges, Palmyra Atoll" => [5.8833, -162.0833],
1869             "Uruguay" => [-33.0000, -56.0000],
1870             "Uzbekistan" => [41.0000, 64.0000],
1871             "Vanuatu" => [-16.0000, 167.0000],
1872             "Venezuela" => [8.0000, -66.0000],
1873             "Vietnam" => [16.0000, 106.0000],
1874             "Viet Nam" => [16.0000, 106.0000],
1875             "Virgin Islands" => [18.3333, -64.8333],
1876             "United States Virgin Islands" => [18.3333, -64.8333],
1877             "Virgin Islands, U.S." => [18.3333, -64.8333],
1878             "Virgin Islands, US" => [18.3333, -64.8333],
1879             "Wake Island" => [19.2833, 166.6500],
1880             "Wallis and Futuna" => [-13.3000, -176.2000],
1881             'Wallis and Futuna Islands' => [-13.3000, -176.2000],
1882             "West Bank" => [32.0000, 35.2500],
1883             "Western Sahara" => [24.5000, -13.0000],
1884             "Yemen" => [15.0000, 48.0000],
1885             "Democratic Yemen" => [15.0000, 48.0000],
1886             "Zambia" => [-15.0000, 30.0000],
1887             "Zimbabwe" => [-20.0000, 30.0000],
1888             };
1889            
1890             =head1 SUBROUTINES
1891            
1892             =head2 latlong ($country_name)
1893            
1894             Returns as a 1x2 anonymous array the latitude and longitude
1895             for the country supplied as the sole argument, or C if
1896             the country is not supported.
1897            
1898             =cut
1899            
1900             sub latlong ($) {
1901 6 50   6 1 3265 shift if $_[0] eq __PACKAGE__;
1902 6         8 my $country = shift;
1903 6 50       12 return undef if not $country;
1904 6 100       22 return undef if not exists $countries_latlong->{$country};
1905 5 100       24 return wantarray? @{$countries_latlong->{$country}} : $countries_latlong->{$country};
  1         5  
1906             }
1907            
1908            
1909             =head2 supports ($country)
1910            
1911             Returns a true value if the sole argument is a country name supported by this module;
1912             otherwise, returns C.
1913            
1914             =cut
1915            
1916             sub supports ($) {
1917 2 50   2 1 6 shift if $_[0] eq __PACKAGE__;
1918 2         2 my $country = shift;
1919 2 50       5 return undef unless $country;
1920 2         11 return exists $countries_latlong->{$country};
1921             }
1922            
1923             =head2 unsupported
1924            
1925             Cs to C a list of C
1926             that are not supported by this module.
1927            
1928             =cut
1929            
1930             sub unsupported {
1931 0 0   0 1 0 shift if $_[0] eq __PACKAGE__;
1932 0         0 warn "The following are not supported by ".__PACKAGE__.":\n";
1933 0         0 foreach (&Geography::Countries::countries){
1934 0 0       0 if (ref $countries_latlong->{$_} ne 'ARRAY'){
1935 0         0 warn "\t$_\n";
1936             }
1937             }
1938             }
1939            
1940            
1941             =head2 country
1942            
1943             Just C's routine.
1944            
1945             =cut
1946            
1947             sub country {
1948 0 0   0 1 0 shift if $_[0] eq __PACKAGE__;
1949 0         0 return Geography::Countries::country(@_);
1950             }
1951            
1952             =head1 full_status
1953            
1954             Returns a hash that describes what is and is not supported by L,
1955             in relation to this module. Keys are C, of which
1956             all but the last relate to the lists returned by the L method
1957             (L). These entries may be on the
1958             'todo' list of the relevant ISO groups, or of the L author,
1959             though my money is on the former.
1960            
1961             The C key lists country names that are not supported: these are on my own
1962             'todo' list.
1963            
1964             The current value of this hash is:
1965            
1966             {
1967             'code2' => [
1968             'Isle of Man'
1969             ],
1970             'code3' => [
1971             'Antarctica',
1972             'Christmas Island',
1973             'Mayotte',
1974             'Heard Island and McDonald Islands',
1975             'British Indian Ocean Territory',
1976             'Heard Island And Mcdonald Islands',
1977             'South Georgia and the South Sandwich Islands',
1978             'Cocos (Keeling) Islands',
1979             'Bouvet Island'
1980             ],
1981             'numcode' => [
1982             'Antarctica',
1983             'Christmas Island',
1984             'Mayotte',
1985             'Heard Island and McDonald Islands',
1986             'British Indian Ocean Territory',
1987             'Heard Island And Mcdonald Islands',
1988             'South Georgia and the South Sandwich Islands',
1989             'Cocos (Keeling) Islands',
1990             'Bouvet Island'
1991             ],
1992             'countries' => [],
1993             'absent' => [
1994             'Antipodean Islands',
1995             'Antipodes',
1996             'Antipodes Islands',
1997             'Brunei Darussalam',
1998             'Canary Islands',
1999             'EEC',
2000             'EU',
2001             'European Union',
2002             'Faroc Islands',
2003             'Galapagos Islands',
2004             'Guatamala',
2005             'Independent State of Samoa',
2006             'Kermadec Islands',
2007             'Madeira Islands',
2008             'Micronesia-Polynesia',
2009             'Prince Edward Islands',
2010             'Saint Helena',
2011             'Western Samoa',
2012             'Yugoslavia',
2013             'Zaire'
2014             ],
2015             }
2016            
2017             =cut
2018            
2019             sub full_status {
2020             return {
2021 0     0 0 0 'code2' => [
2022             'Isle of Man'
2023             ],
2024             'code3' => [
2025             'Antarctica',
2026             'Christmas Island',
2027             'Mayotte',
2028             'Heard Island and McDonald Islands',
2029             'British Indian Ocean Territory',
2030             'Heard Island And Mcdonald Islands',
2031             'South Georgia and the South Sandwich Islands',
2032             'Cocos (Keeling) Islands',
2033             'Bouvet Island'
2034             ],
2035             'numcode' => [
2036             'Antarctica',
2037             'Christmas Island',
2038             'Mayotte',
2039             'Heard Island and McDonald Islands',
2040             'British Indian Ocean Territory',
2041             'Heard Island And Mcdonald Islands',
2042             'South Georgia and the South Sandwich Islands',
2043             'Cocos (Keeling) Islands',
2044             'Bouvet Island'
2045             ],
2046             'countries' => [],
2047             'absent' => [
2048             'Antipodean Islands',
2049             'Antipodes',
2050             'Antipodes Islands',
2051             'Brunei Darussalam',
2052             'Canary Islands',
2053             'EEC',
2054             'EU',
2055             'European Union',
2056             'Faroc Islands',
2057             'Galapagos Islands',
2058             'Guatamala',
2059             'Independent State of Samoa',
2060             'Kermadec Islands',
2061             'Madeira Islands',
2062             'Micronesia-Polynesia',
2063             'Prince Edward Islands',
2064             'Saint Helena',
2065             'Western Samoa',
2066             'Yugoslavia',
2067             'Zaire'
2068             ],
2069             };
2070             }
2071            
2072             =head2 USE_OLD_DATA
2073            
2074             Sets the module to use data from veresion 0.922.
2075            
2076             =cut
2077            
2078             sub USE_OLD_DATA {
2079 1     1 1 5 return $countries_latlong = $countries_latlong_old;
2080             }
2081            
2082             1;
2083            
2084             __END__