<?php
// image_chart.php
// Interface to Google Chart Image Charts Map Chart
// RJM Programming - November, 2023
// Reference: https://developers.google.com/chart/image/docs/gallery/chart_gall
$url='';
$sixrand='ffffff';
$sixrs=['0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f'];
$ourtzlist="";
$tbit='';
$b='b';
$contbit='';
$retval='';
$origchco='';
$origchco='';
$origchdls='';
if (isset($_GET['chco'])) {
  $origchco=$_GET['chco'];
  if (strpos($origchco, '|') !== false) {
    $origchdls=str_replace('|~','',str_replace('|',',6|',($origchco . '|~')));
  } else {
    $origchdls=urlencode(str_replace('|~','',str_replace('|',',6|', str_replace('+',' ',urldecode($origchco) . '|~'))));
  }
} 

$iso_country_codes=['AF','Afghanistan',
'ax','Aland Islands',
'Al','Albania',
'DZ','Algeria',
'as','American Samoa',
'ad','Andorra',
'AO','Angola',
'ai','Anguilla',
'AQ','Antarctica',
'ag','Antigua and Barbuda',
'AR','Argentina',
'AM','Armenia',
'aw','Aruba',
'AU','Australia',
'At','Austria',
'AZ','Azerbaijan',
'bs','Bahamas the',
'Bh','Bahrain',
'BD','Bangladesh',
'bb','Barbados',
'BY','Belarus',
'BE','Belgium',
'BZ','Belize',
'BJ','Benin',
'bm','Bermuda',
'Bt','Bhutan',
'BO','Bolivia',
'Ba','Bosnia and Herzegovina',
'Bw','Botswana',
'bv','Bouvet Island (Bouvetoya)',
'BR','Brazil',
'io','British Indian Ocean Territory (Chagos Archipelago)',
'vg','British Virgin Islands',
'Bn','Brunei Darussalam',
'BG','Bulgaria',
'BF','Burkina Faso',
'bi','Burundi',
'KH','Cambodia',
'CM','Cameroon',
'CA','Canada',
'cv','Cape Verde',
'ky','Cayman Islands',
'CF','Central African Republic',
'TD','Chad',
'CL','Chile',
'CN','China',
'cx','Christmas Island',
'cc','Cocos (Keeling) Islands',
'CO','Colombia',
'km','Comoros the',
'CD','Congo',
'CG','Congo the',
'ck','Cook Islands',
'CR','Costa Rica',
'CI','Cote d\'Ivoire',
'HR','Croatia',
'CU','Cuba',
'Cy','Cyprus',
'CZ','Czech Republic',
'dK','Denmark',
'Dj','Djibouti',
'DM','Dominica',
'DO','Dominican Republic',
'EC','Ecuador',
'EG','Egypt',
'SV','El Salvador',
'GQ','Equatorial Guinea',
'ER','Eritrea',
'Ee','Estonia',
'ET','Ethiopia',
'FO','Faroe Islands',
'FK','Falkland Islands (Malvinas)',
'fJ','Fiji',
'FI','Finland',
'FR','France, French Republic',
'GF','French Guiana',
'pf','French Polynesia',
'tf','French Southern Territories',
'GA','Gabon',
'GM','Gambia the',
'GE','Georgia',
'DE','Germany',
'GH','Ghana',
'gi','Gibraltar',
'gR','Greece',
'GL','Greenland',
'gd','Grenada',
'gp','Guadeloupe',
'gu','Guam',
'GT','Guatemala',
'gg','Guernsey',
'GN','Guinea',
'GW','Guinea-Bissau',
'GY','Guyana',
'HT','Haiti',
'hm','Heard Island and McDonald Islands',
'va','Holy See (Vatican City State)',
'HN','Honduras',
'hk','Hong Kong',
'HU','Hungary',
'is','Iceland',
'IN','India',
'ID','Indonesia',
'IR','Iran',
'IQ','Iraq',
'IE','Ireland',
'im','Isle of Man',
'Il','Israel',
'IT','Italy',
'Jm','Jamaica',
'JP','Japan',
'JE','Jersey',
'Jo','Jordan',
'KZ','Kazakhstan',
'KE','Kenya',
'kI','Kiribati',
'KP','Korea',
'KR','Korea',
'KW','Kuwait',
'KG','Kyrgyz Republic',
'kg','Kyrgyzstan',
'LA','Laos',
'Lv','Latvia',
'Lb','Lebanon',
'ls','Lesotho',
'LR','Liberia',
'LY','Libyan Arab Jamahiriya',
'li','Liechtenstein',
'Lt','Lithuania',
'lu','Luxembourg',
'mo','Macao',
'MK','North Macedonia',
'Mk','Macedonia',
'MG','Madagascar',
'MW','Malawi',
'MY','Malaysia',
'mv','Maldives',
'ML','Mali',
'MT','Malta',
'mh','Marshall Islands',
'mq','Martinique',
'MR','Mauritania',
'mu','Mauritius',
'yt','Mayotte',
'MX','Mexico',
'fm','Micronesia',
'MD','Moldova',
'mc','Monaco',
'MN','Mongolia',
'Me','Montenegro',
'ms','Montserrat',
'MA','Morocco',
'MZ','Mozambique',
'MM','Myanmar',
'NA','Namibia',
'nr','Nauru',
'NP','Nepal',
'an','Netherlands Antilles',
'NL','Netherlands the',
'nc','New Caledonia',
'nZ','New Zealand',
'NI','Nicaragua',
'NE','Niger',
'NG','Nigeria',
'nu','Niue',
'NF','Norfolk Island',
'mp','Northern Mariana Islands',
'NO','Norway',
'om','Oman',
'PK','Pakistan',
'pw','Palau',
'ps','Palestinian Territory',
'PA','Panama',
'PG','Papua New Guinea',
'PY','Paraguay',
'PE','Peru',
'PH','Philippines',
'pn','Pitcairn Islands',
'PL','Poland',
'PT','Portugal, Portuguese Republic',
'pr','Puerto Rico',
'qa','Qatar',
're','Reunion',
'RO','Romania',
'RU','Russia',
'Rw','Rwanda',
'bl','Saint Barthelemy',
'sh','Saint Helena',
'kn','Saint Kitts and Nevis',
'lc','Saint Lucia',
'mf','Saint Martin',
'pm','Saint Pierre and Miquelon',
'vc','Saint Vincent and the Grenadines',
'ws','Samoa',
'sm','San Marino',
'st','Sao Tome and Principe',
'SA','Saudi Arabia',
'SN','Senegal',
'RS','Serbia',
'sc','Seychelles',
'SL','Sierra Leone',
'sg','Singapore',
'SK','Slovakia (Slovak Republic)',
'Si','Slovenia',
'SB','Solomon Islands',
'SO','Somalia, Somali Republic',
'ZA','South Africa',
'gs','South Georgia and the South Sandwich Islands',
'ES','Spain',
'LK','Sri Lanka',
'SD','Sudan',
'SR','Suriname',
'sj','Svalbard & Jan Mayen Islands',
'sz','Swaziland',
'SE','Sweden',
'Ch','Switzerland, Swiss Confederation',
'Sy','Syrian Arab Republic',
'Tw','Taiwan',
'TJ','Tajikistan',
'TZ','Tanzania',
'TH','Thailand',
'tl','Timor-Leste',
'TG','Togo',
'tk','Tokelau',
'to','Tonga',
'tt','Trinidad and Tobago',
'TN','Tunisia',
'TR','Turkey',
'TM','Turkmenistan',
'tc','Turks and Caicos Islands',
'tV','Tuvalu',
'UG','Uganda',
'UA','Ukraine',
'AE','United Arab Emirates',
'GB','United Kingdom',
'US','United States of America',
'UM','United States Minor Outlying Islands',
'vi','United States Virgin Islands',
'UY','Uruguay, Eastern Republic of',
'UZ','Uzbekistan',
'vu','Vanuatu',
'VE','Venezuela',
'VN','Vietnam',
'wf','Wallis and Futuna',
'EH','Western Sahara',
'YE','Yemen',
'ZM','Zambia',
'ZW','Zimbabwe'];
$ourtzlist="<option value=\"Europe/Amsterdam\" title=\"50.5,3.06611328125,53.62548828125,7.197265625\" data-geo=\"52.36666,4.9,CEST,NL,+1\">Europe/Amsterdam</option><option value=\"Europe/Andorra\" title=\"42.434472656249994,1.414843750000017,42.642724609374994,1.740234375\" data-geo=\"42.5,1.51666,CEST,AD,+1\">Europe/Andorra</option><option value=\"Europe/Athens\" title=\"34.934472656249994,19.646484375,41.743798828124994,28.231835937500023\" data-geo=\"37.96666,23.71666,EEST,GR,+2\">Europe/Athens</option><option value=\"Europe/Belgrade\" data-geo=\"44.83333,20.5,CEST,RS,+1\">Europe/Belgrade</option><option value=\"Europe/Berlin\" data-geo=\"52.5,13.36666,CEST,DE,+1\">Europe/Berlin</option><option value=\"Europe/Bratislava\" title=\"47.763427734375,16.862695312500023,49.597705078124996,22.538671875\" data-geo=\"48.15,17.11666,CEST,SK,+1\">Europe/Bratislava</option><option value=\"Europe/Brussels\" title=\"49.510888671874994,2.52490234375,51.491113281249994,6.364453125000011\" data-geo=\"50.83333,4.33333,CEST,BE,+1\">Europe/Brussels</option><option value=\"Europe/Bucharest\" data-geo=\"44.43333,26.1,EEST,RO,+2\">Europe/Bucharest</option><option value=\"Europe/Budapest\" title=\"45.75302734375,16.093066406250017,48.553466796875,22.87666015625001\" data-geo=\"47.5,19.08333,CEST,HU,+1\">Europe/Budapest</option><option value=\"Europe/Chisinau\" title=\"45.450439453125,26.618945312500017,48.477734375,30.13105468750001\" data-geo=\"47,28.83333,EEST,MD,+2\">Europe/Chisinau</option><option value=\"Europe/Copenhagen\" data-geo=\"55.66666,12.58333,CEST,DK,+1\">Europe/Copenhagen</option><option value=\"Europe/Dublin\" title=\"51.47373046875,-10.390234374999977,55.3658203125,-6.027392578124989\" data-geo=\"53.33333,-6.25,IST,IE,+0\">Europe/Dublin</option><option value=\"Europe/Gibraltar\" data-geo=\"36.13333,-5.35,CEST,GI,+1\">Europe/Gibraltar</option><option value=\"Europe/Guernsey\" data-geo=\"49.44999,-2.53334,BST,GG,+0\">Europe/Guernsey</option><option value=\"Europe/Helsinki\" data-geo=\"60.16666,24.96666,EEST,FI,+2\">Europe/Helsinki</option><option value=\"Europe/Isle_of_Man\" data-geo=\"54.15,-4.46667,BST,IM,+0\">Europe/Isle_of_Man</option><option value=\"Europe/Istanbul\" data-geo=\"41.01666,28.96666,+03,TR,+2\">Europe/Istanbul</option><option value=\"Europe/Jersey\" data-geo=\"49.19999,-2.11667,BST,JE,+0\">Europe/Jersey</option><option value=\"Europe/Simferopol\" data-geo=\"44.94999,34.1,MSK,RU,+3\">Europe/Simferopol</option><option value=\"Europe/Moscow\" data-geo=\"55.75,37.58333,MSK,RU,+3\">Europe/Moscow</option><option value=\"Europe/Kaliningrad\" data-geo=\"54.71666,20.5,EET,RU,+2\">Europe/Kaliningrad</option><option value=\"Europe/Kiev\" data-geo=\"50.43333,30.51666,EEST,UA,+2\">Europe/Kiev</option><option value=\"Europe/Lisbon\" data-geo=\"38.71666,-9.13334,WEST,PT,+0\">Europe/Lisbon</option><option value=\"Europe/Ljubljana\" data-geo=\"46.05,14.51666,CEST,SI,+1\">Europe/Ljubljana</option><option value=\"Europe/Luxembourg\" title=\"49.4,5.6,50.2,6.6\" data-geo=\"49.6,6.15,CEST,LU,+1\">Europe/Luxembourg</option><option value=\"Europe/Madrid\" data-geo=\"40.4,-3.68334,CEST,ES,+1\">Europe/Madrid</option><option value=\"Europe/Malta\" title=\"35.820214843749994,14.180371093750011,36.07578125,14.566210937500017\" data-geo=\"35.9,14.51666,CEST,MT,+1\">Europe/Malta</option><option value=\"Europe/Mariehamn\" data-geo=\"60.1,19.95,EEST,AX,+2\">Europe/Mariehamn</option><option value=\"Europe/Minsk\" data-geo=\"53.9,27.56666,+03,BY,+3\">Europe/Minsk</option><option value=\"Europe/Monaco\" data-geo=\"43.69999,7.38333,CEST,MC,+1\">Europe/Monaco</option><option value=\"Europe/Oslo\" title=\"58.020947265625,-9.098876953125,80.47783203125,33.62929687500002\" data-geo=\"59.91666,10.75,CEST,NO,+1\">Europe/Oslo</option><option value=\"Europe/Paris\" data-geo=\"48.86666,2.33333,CEST,FR,+1\">Europe/Paris</option><option value=\"Europe/Podgorica\" data-geo=\"42.43333,19.26666,CEST,ME,+1\">Europe/Podgorica</option><option value=\"Europe/Prague\" data-geo=\"50.08333,14.43333,CEST,CZ,+1\">Europe/Prague</option><option value=\"Europe/Riga\" data-geo=\"56.94999,24.1,EEST,LV,+2\">Europe/Riga</option><option value=\"Europe/Rome\" title=\"36.687841796875,6.627734375000017,47.08212890625,18.48583984375\" data-geo=\"41.9,12.48333,CEST,IT,+1\">Europe/Rome</option><option value=\"Europe/Samara\" data-geo=\"53.19999,50.15,+04,RU,+4\">Europe/Samara</option><option value=\"Europe/San_Marino\" title=\"43.894091796874996,12.396875,43.98974609375,12.5146484375\" data-geo=\"43.91666,12.46666,CEST,SM,+1\">Europe/San_Marino</option><option value=\"Europe/Sarajevo\" data-geo=\"43.86666,18.41666,CEST,BA,+1\">Europe/Sarajevo</option><option value=\"Europe/Skopje\" data-geo=\"41.98333,21.43333,CEST,MK,+1\">Europe/Skopje</option><option value=\"Europe/Sofia\" title=\"41.243554687499994,22.344042968750017,44.23779296875,28.585351562500023\" data-geo=\"42.68333,23.31666,EEST,BG,+2\">Europe/Sofia</option><option value=\"Europe/Stockholm\" data-geo=\"59.33333,18.05,CEST,SE,+1\">Europe/Stockholm</option><option value=\"Europe/Tallinn\" title=\"57.52548828125,21.8544921875,59.639013671875,28.15107421875001\" data-geo=\"59.41666,24.75,EEST,EE,+2\">Europe/Tallinn</option><option value=\"Europe/Tirane\" data-geo=\"41.33333,19.83333,CEST,AL,+1\">Europe/Tirane</option><option value=\"Europe/Uzhgorod\" data-geo=\"48.61666,22.3,EEST,UA,+2\">Europe/Uzhgorod</option><option value=\"Europe/Vaduz\" data-geo=\"47.15,9.51666,CEST,LI,+1\">Europe/Vaduz</option><option value=\"Europe/Vatican\" data-geo=\"41.90222,12.45305,CEST,VA,+1\">Europe/Vatican</option><option value=\"Europe/Vienna\" title=\"46.399707031249996,9.524023437500006,49.001123046874994,17.147363281250023\" data-geo=\"48.21666,16.33333,CEST,AT,+1\">Europe/Vienna</option><option value=\"Europe/Vilnius\" data-geo=\"54.68333,25.31666,EEST,LT,+2\">Europe/Vilnius</option><option value=\"Europe/Volgograd\" data-geo=\"48.73333,44.41666,+04,RU,+3\">Europe/Volgograd</option><option value=\"Europe/Warsaw\" title=\"49,14,55,24\" data-geo=\"52.25,21,CEST,PL,+1\">Europe/Warsaw</option><option value=\"Europe/Zagreb\" title=\"42.432910156249996,13.5171875,46.534619140625,19.400976562500006\" data-geo=\"45.8,15.96666,CEST,HR,+1\">Europe/Zagreb</option><option value=\"Europe/Zaporozhye\" data-geo=\"47.83333,35.16666,EEST,UA,+2\">Europe/Zaporozhye</option><option value=\"Europe/Zurich\" data-geo=\"47.38333,8.53333,CEST,CH,+1\">Europe/Zurich</option><option value=\"Africa/Abidjan\" data-geo=\"5.31666,-4.03334,GMT,CI,+0\">Africa/Abidjan</option><option value=\"Africa/Accra\" data-geo=\"5.55,-0.21667,GMT,GH,+0\">Africa/Accra</option><option value=\"Africa/Addis_Ababa\" data-geo=\"9.03333,38.7,EAT,ET,+3\">Africa/Addis_Ababa</option><option value=\"Africa/Algiers\" data-geo=\"36.78333,3.05,CET,DZ,+1\">Africa/Algiers</option><option value=\"Africa/Asmara\" title=\"12.3765625,36.4267578125,18.005078125,43.11669921875\" data-geo=\"15.33333,38.88333,EAT,ER,+3\">Africa/Asmara</option><option value=\"Africa/Bamako\" data-geo=\"12.65,-8,GMT,ML,+0\">Africa/Bamako</option><option value=\"Africa/Bangui\" data-geo=\"4.36666,18.58333,WAT,CF,+1\">Africa/Bangui</option><option value=\"Africa/Banjul\" title=\"13.064160156249997,-16.824804687499977,13.812109375,-13.826708984374989\" data-geo=\"13.46666,-16.65,GMT,GM,+0\">Africa/Banjul</option><option value=\"Africa/Bissau\" data-geo=\"11.85,-15.58334,GMT,GW,+0\">Africa/Bissau</option><option value=\"Africa/Blantyre\" data-geo=\"-15.78334,35,CAT,MW,+2\">Africa/Blantyre</option><option value=\"Africa/Brazzaville\" title=\"-5.004296875,11.130175781250017,3.687304687499989,18.622167968750006\" data-geo=\"-4.26667,15.28333,WAT,CG,+1\">Africa/Brazzaville</option><option value=\"Africa/Bujumbura\" title=\"-4.455859375,29.01416015625,-2.31298828125,30.811425781250023\" data-geo=\"-3.38334,29.36666,CAT,BI,+2\">Africa/Bujumbura</option><option value=\"Africa/Cairo\" data-geo=\"30.05,31.25,EET,EG,+2\">Africa/Cairo</option><option value=\"Africa/Casablanca\" data-geo=\"33.65,-7.58334,+01,MA,+0\">Africa/Casablanca</option><option value=\"Africa/Ceuta\" data-geo=\"35.88333,-5.31667,CEST,ES,+1\">Africa/Ceuta</option><option value=\"Africa/Conakry\" data-geo=\"9.51666,-13.71667,GMT,GN,+0\">Africa/Conakry</option><option value=\"Africa/Dakar\" data-geo=\"14.66666,-17.43334,GMT,SN,+0\">Africa/Dakar</option><option value=\"Africa/Dar_es_Salaam\" data-geo=\"-6.8,39.28333,EAT,TZ,+3\">Africa/Dar_es_Salaam</option><option value=\"Africa/Djibouti\" data-geo=\"11.6,43.15,EAT,DJ,+3\">Africa/Djibouti</option><option value=\"Africa/Douala\" data-geo=\"4.05,9.7,WAT,CM,+1\">Africa/Douala</option><option value=\"Africa/El_Aaiun\" data-geo=\"27.15,-13.2,+01,EH,+0\">Africa/El_Aaiun</option><option value=\"Africa/Freetown\" title=\"6.906542968749989,-13.292675781249983,9.996533203124997,-10.283203125\" data-geo=\"8.5,-13.25,GMT,SL,+0\">Africa/Freetown</option><option value=\"Africa/Gaborone\" title=\"-26.85419921875001,19.977343750000017,-17.78759765625,29.36484375\" data-geo=\"-24.65001,25.91666,CAT,BW,+2\">Africa/Gaborone</option><option value=\"Africa/Harare\" data-geo=\"-17.83334,31.05,CAT,ZW,+2\">Africa/Harare</option><option value=\"Africa/Johannesburg\" data-geo=\"-26.25,28,SAST,ZA,+2\">Africa/Johannesburg</option><option value=\"Africa/Juba\" data-geo=\"4.85,31.6,EAT,SS,+3\">Africa/Juba</option><option value=\"Africa/Kampala\" data-geo=\"0.31666,32.41666,EAT,UG,+3\">Africa/Kampala</option><option value=\"Africa/Khartoum\" data-geo=\"15.6,32.53333,CAT,SD,+3\">Africa/Khartoum</option><option value=\"Africa/Kigali\" data-geo=\"-1.95,30.06666,CAT,RW,+2\">Africa/Kigali</option><option value=\"Africa/Kinshasa\" data-geo=\"-4.3,15.3,WAT,CD,+1\">Africa/Kinshasa</option><option value=\"Africa/Lagos\" data-geo=\"6.45,3.4,WAT,NG,+1\">Africa/Lagos</option><option value=\"Africa/Libreville\" data-geo=\"0.38333,9.45,WAT,GA,+1\">Africa/Libreville</option><option value=\"Africa/Lome\" data-geo=\"6.13333,1.21666,GMT,TG,+0\">Africa/Lome</option><option value=\"Africa/Luanda\" data-geo=\"-8.8,13.23333,WAT,AO,+1\">Africa/Luanda</option><option value=\"Africa/Lubumbashi\" data-geo=\"-11.66667,27.46666,CAT,CD,+2\">Africa/Lubumbashi</option><option value=\"Africa/Lusaka\" data-geo=\"-15.41667,28.28333,CAT,ZM,+2\">Africa/Lusaka</option><option value=\"Africa/Malabo\" title=\"0.960107421874994,8.434277343750011,3.75830078125,11.335351562500023\" data-geo=\"3.75,8.78333,WAT,GQ,+1\">Africa/Malabo</option><option value=\"Africa/Maputo\" data-geo=\"-25.96667,32.58333,CAT,MZ,+2\">Africa/Maputo</option><option value=\"Africa/Maseru\" title=\"-30.64228515625001,27.0517578125,-28.58173828125001,29.390722656250006\" data-geo=\"-29.46667,27.5,SAST,LS,+2\">Africa/Maseru</option><option value=\"Africa/Mbabane\" title=\"-27.30996093750001,30.7875,-25.74296875,32.112890625\" data-geo=\"-26.3,31.1,SAST,SZ,+2\">Africa/Mbabane</option><option value=\"Africa/Mogadishu\" data-geo=\"2.06666,45.36666,EAT,SO,+3\">Africa/Mogadishu</option><option value=\"Africa/Monrovia\" data-geo=\"6.3,-10.78334,GMT,LR,+0\">Africa/Monrovia</option><option value=\"Africa/Nairobi\" data-geo=\"-1.28334,36.81666,EAT,KE,+3\">Africa/Nairobi</option><option value=\"Africa/Ndjamena\" title=\"7.475292968749997,13.4482421875,23.445214843749994,23.9833984375\" data-geo=\"12.11666,15.05,WAT,TD,+1\">Africa/Ndjamena</option><option value=\"Africa/Niamey\" data-geo=\"13.51666,2.11666,WAT,NE,+1\">Africa/Niamey</option><option value=\"Africa/Nouakchott\" data-geo=\"18.1,-15.95,GMT,MR,+0\">Africa/Nouakchott</option><option value=\"Africa/Ouagadougou\" data-geo=\"12.36666,-1.51667,GMT,BF,+0\">Africa/Ouagadougou</option><option value=\"Africa/Porto-Novo\" data-geo=\"6.48333,2.61666,WAT,BJ,+1\">Africa/Porto-Novo</option><option value=\"Africa/Sao_Tome\" title=\"0.04736328125,6.468164062500023,1.699121093749994,7.452343750000011\" data-geo=\"0.33333,6.73333,GMT,ST,+0\">Africa/Sao_Tome</option><option value=\"Africa/Tripoli\" data-geo=\"32.9,13.18333,EET,LY,+2\">Africa/Tripoli</option><option value=\"Africa/Tunis\" data-geo=\"36.8,10.18333,CET,TN,+1\">Africa/Tunis</option><option value=\"Africa/Windhoek\" data-geo=\"-22.56667,17.1,CAT,NA,+2\">Africa/Windhoek</option><option value=\"America/Denver\" data-geo=\"39.73916,-104.98417,MDT,US,-7\">America/Denver</option><option value=\"America/Adak\" data-geo=\"51.88,-176.65806,HDT,US,-10\">America/Adak</option><option value=\"America/Anchorage\" data-geo=\"61.21805,-149.90028,AKDT,US,-9\">America/Anchorage</option><option value=\"America/Anguilla\" data-geo=\"18.2,-63.06667,AST,AI,-4\">America/Anguilla</option><option value=\"America/Antigua\" title=\"16.99716796874999,-61.887109375,17.7140625,-61.68603515625\" data-geo=\"17.05,-61.8,AST,AG,-4\">America/Antigua</option><option value=\"America/Araguaina\" data-geo=\"-7.2,-48.2,-03,BR,-3\">America/Araguaina</option><option value=\"America/Argentina/Buenos_Aires\" data-geo=\"-34.6,-58.45,-03,AR,-3\">America/Argentina/Buenos_Aires</option><option value=\"America/Argentina/Catamarca\" data-geo=\"-28.46667,-65.78334,-03,AR,-3\">America/Argentina/Catamarca</option><option value=\"America/Argentina/Cordoba\" data-geo=\"-31.4,-64.18334,-03,AR,-3\">America/Argentina/Cordoba</option><option value=\"America/Argentina/Jujuy\" data-geo=\"-24.18334,-65.3,-03,AR,-3\">America/Argentina/Jujuy</option><option value=\"America/Argentina/La_Rioja\" data-geo=\"-29.43334,-66.85,-03,AR,-3\">America/Argentina/La_Rioja</option><option value=\"America/Argentina/Mendoza\" data-geo=\"-32.88334,-68.81667,-03,AR,-3\">America/Argentina/Mendoza</option><option value=\"America/Argentina/Rio_Gallegos\" data-geo=\"-51.63334,-69.21667,-03,AR,-3\">America/Argentina/Rio_Gallegos</option><option value=\"America/Argentina/Salta\" data-geo=\"-24.78334,-65.41667,-03,AR,-3\">America/Argentina/Salta</option><option value=\"America/Argentina/San_Juan\" data-geo=\"-31.53334,-68.51667,-03,AR,-3\">America/Argentina/San_Juan</option><option value=\"America/Argentina/San_Luis\" data-geo=\"-33.31667,-66.35,-03,AR,-3\">America/Argentina/San_Luis</option><option value=\"America/Argentina/Tucuman\" data-geo=\"-26.81667,-65.21667,-03,AR,-3\">America/Argentina/Tucuman</option><option value=\"America/Argentina/Ushuaia\" data-geo=\"-54.8,-68.3,-03,AR,-3\">America/Argentina/Ushuaia</option><option value=\"America/Aruba\" data-geo=\"12.5,-69.96667,AST,AW,-4\">America/Aruba</option><option value=\"America/Asuncion\" data-geo=\"-25.26667,-57.66667,-04,PY,-3\">America/Asuncion</option><option value=\"America/Atikokan\" data-geo=\"48.75861,-91.62167,EST,CA,-5\">America/Atikokan</option><option value=\"America/Bahia\" data-geo=\"-12.98334,-38.51667,-03,BR,-3\">America/Bahia</option><option value=\"America/Bahia_Banderas\" data-geo=\"20.8,-105.25,CDT,MX,-6\">America/Bahia_Banderas</option><option value=\"America/Barbados\" title=\"13.062207031249997,-59.6466796875,13.317675781250003,-59.427636718749994\" data-geo=\"13.1,-59.61667,AST,BB,-4\">America/Barbados</option><option value=\"America/Belem\" data-geo=\"-1.45,-48.48334,-03,BR,-3\">America/Belem</option><option value=\"America/Belize\" title=\"15.888671875,-89.2375,18.482324218749994,-87.78862304687499\" data-geo=\"17.5,-88.2,CST,BZ,-6\">America/Belize</option><option value=\"America/Blanc-Sablon\" data-geo=\"51.41666,-57.11667,AST,CA,-4\">America/Blanc-Sablon</option><option value=\"America/Boa_Vista\" data-geo=\"2.81666,-60.66667,-04,BR,-4\">America/Boa_Vista</option><option value=\"America/Bogota\" data-geo=\"4.6,-74.08334,-05,CO,-5\">America/Bogota</option><option value=\"America/Boise\" data-geo=\"43.61361,-116.2025,MDT,US,-7\">America/Boise</option><option value=\"America/Cambridge_Bay\" data-geo=\"69.11388,-105.05278,MDT,CA,-7\">America/Cambridge_Bay</option><option value=\"America/Campo_Grande\" data-geo=\"-20.45,-54.61667,-04,BR,-3\">America/Campo_Grande</option><option value=\"America/Cancun\" data-geo=\"21.08333,-86.76667,EST,MX,-5\">America/Cancun</option><option value=\"America/Caracas\" data-geo=\"10.5,-66.93334,-04,VE,-4.5\">America/Caracas</option><option value=\"America/Cayenne\" data-geo=\"4.93333,-52.33334,-03,GF,-3\">America/Cayenne</option><option value=\"America/Cayman\" data-geo=\"19.3,-81.38334,EST,KY,-5\">America/Cayman</option><option value=\"America/Chicago\" data-geo=\"41.85,-87.65,CDT,US,-6\">America/Chicago</option><option value=\"America/Chihuahua\" data-geo=\"28.63333,-106.08334,MDT,MX,-7\">America/Chihuahua</option><option value=\"America/Costa_Rica\" title=\"8.070654296874991,-85.90800781249999,11.189453125,-82.56357421874999\" data-geo=\"9.93333,-84.08334,CST,CR,-6\">America/Costa_Rica</option><option value=\"America/Creston\" data-geo=\"49.1,-116.51667,MST,CA,-7\">America/Creston</option><option value=\"America/Cuiaba\" data-geo=\"-15.58334,-56.08334,-04,BR,-3\">America/Cuiaba</option><option value=\"America/Curacao\" data-geo=\"12.18333,-69,AST,CW,-4\">America/Curacao</option><option value=\"America/Danmarkshavn\" data-geo=\"76.76666,-18.66667,GMT,GL,+0\">America/Danmarkshavn</option><option value=\"America/Dawson\" data-geo=\"64.06666,-139.41667,PDT,CA,-8\">America/Dawson</option><option value=\"America/Dawson_Creek\" data-geo=\"59.76666,-120.23334,MST,CA,-7\">America/Dawson_Creek</option><option value=\"America/Detroit\" data-geo=\"42.33138,-83.04584,EDT,US,-5\">America/Detroit</option><option value=\"America/Dominica\" title=\"15.227294921875,-61.48115234375,15.633105468750003,-61.25107421874999\" data-geo=\"15.3,-61.4,AST,DM,-4\">America/Dominica</option><option value=\"America/Edmonton\" data-geo=\"53.55,-113.46667,MDT,CA,-7\">America/Edmonton</option><option value=\"America/Eirunepe\" data-geo=\"-6.66667,-69.86667,-05,BR,-5\">America/Eirunepe</option><option value=\"America/El_Salvador\" title=\"13.164013671874997,-90.105908203125,14.431103515624997,-87.71533203125\" data-geo=\"13.7,-89.2,CST,SV,-6\">America/El_Salvador</option><option value=\"America/Fortaleza\" data-geo=\"-3.71667,-38.5,-03,BR,-3\">America/Fortaleza</option><option value=\"America/Glace_Bay\" data-geo=\"46.19999,-59.95,ADT,CA,-4\">America/Glace_Bay</option><option value=\"America/Godthab\" data-geo=\"64.18333,-51.73334,-02,GL,-3\">America/Godthab</option><option value=\"America/Goose_Bay\" data-geo=\"53.33333,-60.41667,ADT,CA,-4\">America/Goose_Bay</option><option value=\"America/Grand_Turk\" data-geo=\"21.46666,-71.13334,EDT,TC,-4\">America/Grand_Turk</option><option value=\"America/Grenada\" title=\"12.008447265624994,-61.782177734375,12.237011718749997,-61.60703125\" data-geo=\"12.05,-61.75,AST,GD,-4\">America/Grenada</option><option value=\"America/Guadeloupe\" data-geo=\"16.23333,-61.53334,AST,GP,-4\">America/Guadeloupe</option><option value=\"America/Guatemala\" data-geo=\"14.63333,-90.51667,CST,GT,-6\">America/Guatemala</option><option value=\"America/Guayaquil\" data-geo=\"-2.16667,-79.83334,-05,EC,-5\">America/Guayaquil</option><option value=\"America/Guyana\" data-geo=\"6.8,-58.16667,-04,GY,-4\">America/Guyana</option><option value=\"America/Halifax\" data-geo=\"44.65,-63.6,ADT,CA,-4\">America/Halifax</option><option value=\"America/Havana\" title=\"19.85546875,-84.88720703125,23.1904296875,-74.13681640624999\" data-geo=\"23.13333,-82.36667,CDT,CU,-5\">America/Havana</option><option value=\"America/Hermosillo\" data-geo=\"29.06666,-110.96667,MST,MX,-7\">America/Hermosillo</option><option value=\"America/Indiana/Indianapolis\" data-geo=\"39.76833,-86.15806,EDT,US,-5\">America/Indiana/Indianapolis</option><option value=\"America/Indiana/Knox\" data-geo=\"41.29583,-86.625,CDT,US,-6\">America/Indiana/Knox</option><option value=\"America/Indiana/Marengo\" data-geo=\"38.37555,-86.34473,EDT,US,-5\">America/Indiana/Marengo</option><option value=\"America/Indiana/Petersburg\" data-geo=\"38.49194,-87.27862,EDT,US,-5\">America/Indiana/Petersburg</option><option value=\"America/Indiana/Tell_City\" data-geo=\"37.95305,-86.76139,CDT,US,-6\">America/Indiana/Tell_City</option><option value=\"America/Indiana/Vevay\" data-geo=\"38.74777,-85.06723,EDT,US,-5\">America/Indiana/Vevay</option><option value=\"America/Indiana/Vincennes\" data-geo=\"38.67722,-87.52862,EDT,US,-5\">America/Indiana/Vincennes</option><option value=\"America/Indiana/Winamac\" data-geo=\"41.05138,-86.60306,EDT,US,-5\">America/Indiana/Winamac</option><option value=\"America/Inuvik\" data-geo=\"68.34972,-133.71667,MDT,CA,-7\">America/Inuvik</option><option value=\"America/Iqaluit\" data-geo=\"63.73333,-68.46667,EDT,CA,-5\">America/Iqaluit</option><option value=\"America/Jamaica\" data-geo=\"18,-76.8,EST,JM,-5\">America/Jamaica</option><option value=\"America/Juneau\" data-geo=\"58.30194,-134.41973,AKDT,US,-9\">America/Juneau</option><option value=\"America/Kentucky/Louisville\" data-geo=\"38.25416,-85.75945,EDT,US,-5\">America/Kentucky/Louisville</option><option value=\"America/Kentucky/Monticello\" data-geo=\"36.82972,-84.84917,EDT,US,-5\">America/Kentucky/Monticello</option><option value=\"America/Kralendijk\" data-geo=\"12.15083,-68.27667,AST,BQ,-4\">America/Kralendijk</option><option value=\"America/La_Paz\" data-geo=\"-16.5,-68.15,-04,BO,-4\">America/La_Paz</option><option value=\"America/Lima\" data-geo=\"-12.05,-77.05,-05,PE,-5\">America/Lima</option><option value=\"America/Los_Angeles\" data-geo=\"34.05222,-118.24278,PDT,US,-8\">America/Los_Angeles</option><option value=\"America/Lower_Princes\" data-geo=\"18.05138,-63.04723,AST,SX,-4\">America/Lower_Princes</option><option value=\"America/Maceio\" data-geo=\"-9.66667,-35.71667,-03,BR,-3\">America/Maceio</option><option value=\"America/Managua\" data-geo=\"12.15,-86.28334,CST,NI,-6\">America/Managua</option><option value=\"America/Manaus\" data-geo=\"-3.13334,-60.01667,-04,BR,-4\">America/Manaus</option><option value=\"America/Marigot\" data-geo=\"18.06666,-63.08334,AST,MF,-4\">America/Marigot</option><option value=\"America/Martinique\" data-geo=\"14.6,-61.08334,AST,MQ,-4\">America/Martinique</option><option value=\"America/Matamoros\" data-geo=\"25.83333,-97.5,CDT,MX,-6\">America/Matamoros</option><option value=\"America/Mazatlan\" data-geo=\"23.21666,-106.41667,MDT,MX,-7\">America/Mazatlan</option><option value=\"America/Menominee\" data-geo=\"45.10777,-87.61417,CDT,US,-6\">America/Menominee</option><option value=\"America/Merida\" data-geo=\"20.96666,-89.61667,CDT,MX,-6\">America/Merida</option><option value=\"America/Metlakatla\" data-geo=\"55.12694,-131.57639,AKDT,US,-8\">America/Metlakatla</option><option value=\"America/Mexico_City\" data-geo=\"19.4,-99.15001,CDT,MX,-6\">America/Mexico_City</option><option value=\"America/Miquelon\" data-geo=\"47.05,-56.33334,-02,PM,-3\">America/Miquelon</option><option value=\"America/Moncton\" data-geo=\"46.1,-64.78334,ADT,CA,-4\">America/Moncton</option><option value=\"America/Monterrey\" data-geo=\"25.66666,-100.31667,CDT,MX,-6\">America/Monterrey</option><option value=\"America/Montevideo\" data-geo=\"-34.88334,-56.18334,-03,UY,-2\">America/Montevideo</option><option value=\"America/Montreal\" data-geo=\"45.51666,-73.56667,UTC,??,-5\">America/Montreal</option><option value=\"America/Montserrat\" data-geo=\"16.71666,-62.21667,AST,MS,-4\">America/Montserrat</option><option value=\"America/Nassau\" title=\"20.937402343749994,-78.98564453124999,26.940087890624994,-72.747265625\" data-geo=\"25.08333,-77.35,EDT,BS,-5\">America/Nassau</option><option value=\"America/New_York\" data-geo=\"40.71416,-74.00639,EDT,US,-5\">America/New_York</option><option value=\"America/Nipigon\" data-geo=\"49.01666,-88.26667,EDT,CA,-5\">America/Nipigon</option><option value=\"America/Nome\" data-geo=\"64.50111,-165.40639,AKDT,US,-9\">America/Nome</option><option value=\"America/Noronha\" data-geo=\"-3.85,-32.41667,-02,BR,-2\">America/Noronha</option><option value=\"America/North_Dakota/Beulah\" data-geo=\"47.26416,-101.77778,CDT,US,-6\">America/North_Dakota/Beulah</option><option value=\"America/North_Dakota/Center\" data-geo=\"47.11638,-101.29917,CDT,US,-6\">America/North_Dakota/Center</option><option value=\"America/North_Dakota/New_Salem\" data-geo=\"46.845,-101.41084,CDT,US,-6\">America/North_Dakota/New_Salem</option><option value=\"America/Ojinaga\" data-geo=\"29.56666,-104.41667,MDT,MX,-7\">America/Ojinaga</option><option value=\"America/Panama\" title=\"7.220068359374991,-83.02734375,9.597851562499997,-77.19599609375\" data-geo=\"8.96666,-79.53334,EST,PA,-5\">America/Panama</option><option value=\"America/Pangnirtung\" data-geo=\"66.13333,-65.73334,EDT,CA,-5\">America/Pangnirtung</option><option value=\"America/Paramaribo\" title=\"1.842236328124997,-58.05449218749999,5.993457031249989,-53.990478515625\" data-geo=\"5.83333,-55.16667,-03,SR,-3\">America/Paramaribo</option><option value=\"America/Phoenix\" data-geo=\"33.44833,-112.07334,MST,US,-7\">America/Phoenix</option><option value=\"America/Port-au-Prince\" title=\"18.03916015624999,-74.478125,20.093652343749994,-71.64531249999999\" data-geo=\"18.53333,-72.33334,EDT,HT,-5\">America/Port-au-Prince</option><option value=\"America/Port_of_Spain\" title=\"10.064648437499997,-61.90610351562499,11.325390625,-60.52548828124999\" data-geo=\"10.65,-61.51667,AST,TT,-4\">America/Port_of_Spain</option><option value=\"America/Porto_Velho\" data-geo=\"-8.76667,-63.9,-04,BR,-4\">America/Porto_Velho</option><option value=\"America/Puerto_Rico\" title=\"17.7,-68,18.7,-65\" data-geo=\"18.46833,-66.10612,AST,PR,-4\">America/Puerto_Rico</option><option value=\"America/Rainy_River\" data-geo=\"48.71666,-94.56667,CDT,CA,-6\">America/Rainy_River</option><option value=\"America/Rankin_Inlet\" data-geo=\"62.81666,-92.08306,CDT,CA,-6\">America/Rankin_Inlet</option><option value=\"America/Recife\" data-geo=\"-8.05,-34.9,-03,BR,-3\">America/Recife</option><option value=\"America/Regina\" data-geo=\"50.4,-104.65001,CST,CA,-6\">America/Regina</option><option value=\"America/Resolute\" data-geo=\"74.69555,-94.82917,CDT,CA,-6\">America/Resolute</option><option value=\"America/Rio_Branco\" data-geo=\"-9.96667,-67.8,-05,BR,-5\">America/Rio_Branco</option><option value=\"America/Santa_Isabel\" data-geo=\"30.3,-114.86667,UTC,MX,-8\">America/Santa_Isabel</option><option value=\"America/Santarem\" data-geo=\"-2.43334,-54.86667,-03,BR,-3\">America/Santarem</option><option value=\"America/Santiago\" title=\"-55.891699218750006,-109.434130859375,-17.50605468750001,-66.435791015625\" data-geo=\"-33.45,-70.66667,-03,CL,-3\">America/Santiago</option><option value=\"America/Santo_Domingo\" title=\"17.63559570312499,-72.000390625,19.913964843749994,-68.33916015624999\" data-geo=\"18.46666,-69.9,AST,DO,-4\">America/Santo_Domingo</option><option value=\"America/Sao_Paulo\" data-geo=\"-23.53334,-46.61667,-03,BR,-2\">America/Sao_Paulo</option><option value=\"America/Scoresbysund\" data-geo=\"70.48333,-21.96667,+00,GL,-1\">America/Scoresbysund</option><option value=\"America/Shiprock\" data-geo=\"36.78555,-108.68639,UTC,??,-7\">America/Shiprock</option><option value=\"America/Sitka\" data-geo=\"57.17638,-135.30195,AKDT,US,-9\">America/Sitka</option><option value=\"America/St_Barthelemy\" data-geo=\"17.88333,-62.85,AST,BL,-4\">America/St_Barthelemy</option><option value=\"America/St_Johns\" data-geo=\"47.56666,-52.71667,NDT,CA,-3.5\">America/St_Johns</option><option value=\"America/St_Kitts\" title=\"17.1005859375,-62.840478515624994,17.402587890625,-62.5322265625\" data-geo=\"17.3,-62.71667,AST,KN,-4\">America/St_Kitts</option><option value=\"America/St_Lucia\" title=\"13.717578125,-61.073144531249994,14.093359375,-60.88676757812499\" data-geo=\"14.01666,-61,AST,LC,-4\">America/St_Lucia</option><option value=\"America/St_Thomas\" data-geo=\"18.35,-64.93334,AST,VI,-4\">America/St_Thomas</option><option value=\"America/St_Vincent\" title=\"12.694726562499994,-61.353515625,13.358740234374991,-61.1240234375\" data-geo=\"13.15,-61.23334,AST,VC,-4\">America/St_Vincent</option><option value=\"America/Swift_Current\" data-geo=\"50.28333,-107.83334,CST,CA,-6\">America/Swift_Current</option><option value=\"America/Tegucigalpa\" title=\"12.979248046875,-89.36259765624999,16.513964843750003,-83.15751953124999\" data-geo=\"14.1,-87.21667,CST,HN,-6\">America/Tegucigalpa</option><option value=\"America/Thule\" data-geo=\"76.56666,-68.78334,ADT,GL,-4\">America/Thule</option><option value=\"America/Thunder_Bay\" data-geo=\"48.38333,-89.25,EDT,CA,-5\">America/Thunder_Bay</option><option value=\"America/Tijuana\" data-geo=\"32.53333,-117.01667,PDT,MX,-8\">America/Tijuana</option><option value=\"America/Toronto\" data-geo=\"43.65,-79.38334,EDT,CA,-5\">America/Toronto</option><option value=\"America/Tortola\" data-geo=\"18.45,-64.61667,AST,VG,-4\">America/Tortola</option><option value=\"America/Vancouver\" data-geo=\"49.26666,-123.11667,PDT,CA,-8\">America/Vancouver</option><option value=\"America/Whitehorse\" data-geo=\"60.71666,-135.05001,PDT,CA,-8\">America/Whitehorse</option><option value=\"America/Winnipeg\" data-geo=\"49.88333,-97.15001,CDT,CA,-6\">America/Winnipeg</option><option value=\"America/Yakutat\" data-geo=\"59.54694,-139.72723,AKDT,US,-9\">America/Yakutat</option><option value=\"America/Yellowknife\" data-geo=\"62.44999,-114.35,MDT,CA,-7\">America/Yellowknife</option><option value=\"Asia/Aden\" title=\"12.318994140624994,42.54902343750001,18.996142578125003,54.51113281250002\" data-geo=\"12.75,45.2,+03,YE,+3\">Asia/Aden</option><option value=\"Asia/Almaty\" data-geo=\"43.25,76.95,+06,KZ,+6\">Asia/Almaty</option><option value=\"Asia/Amman\" title=\"29.190478515624996,34.95078125,33.372216796874994,39.29277343750002\" data-geo=\"31.95,35.93333,EEST,JO,+2\">Asia/Amman</option><option value=\"Asia/Anadyr\" data-geo=\"64.75,177.48333,+12,RU,+12\">Asia/Anadyr</option><option value=\"Asia/Aqtau\" data-geo=\"44.51666,50.26666,+05,KZ,+5\">Asia/Aqtau</option><option value=\"Asia/Aqtobe\" data-geo=\"50.28333,57.16666,+05,KZ,+5\">Asia/Aqtobe</option><option value=\"Asia/Ashgabat\" data-geo=\"37.95,58.38333,+05,TM,+5\">Asia/Ashgabat</option><option value=\"Asia/Baghdad\" title=\"29.063671875,38.773535156250006,37.371875,48.546484375\" data-geo=\"33.35,44.41666,+03,IQ,+3\">Asia/Baghdad</option><option value=\"Asia/Bahrain\" title=\"25.806787109374994,50.45244140625002,26.246435546875,50.61748046875002\" data-geo=\"26.38333,50.58333,+03,BH,+3\">Asia/Bahrain</option><option value=\"Asia/Baku\" title=\"38.398730468749996,44.76826171875001,41.890966796875,50.36591796875001\" data-geo=\"40.38333,49.85,+04,AZ,+4\">Asia/Baku</option><option value=\"Asia/Bangkok\" data-geo=\"13.75,100.51666,+07,TH,+7\">Asia/Bangkok</option><option value=\"Asia/Beirut\" data-geo=\"33.88333,35.5,EEST,LB,+2\">Asia/Beirut</option><option value=\"Asia/Bishkek\" title=\"39.20751953125,69.2291015625,43.240380859374994,80.24619140625003\" data-geo=\"42.9,74.6,+06,KG,+6\">Asia/Bishkek</option><option value=\"Asia/Brunei\" data-geo=\"4.93333,114.91666,+08,BN,+8\">Asia/Brunei</option><option value=\"Asia/Choibalsan\" data-geo=\"48.06666,114.5,+08,MN,+8\">Asia/Choibalsan</option><option value=\"Asia/Chongqing\" data-geo=\"29.56666,106.58333,UTC,??,+8\">Asia/Chongqing</option><option value=\"Asia/Colombo\" data-geo=\"6.93333,79.85,+0530,LK,+5.5\">Asia/Colombo</option><option value=\"Asia/Damascus\" title=\"32.317285156249994,35.76445312500002,37.297265625,42.35908203125001\" data-geo=\"33.5,36.3,EEST,SY,+2\">Asia/Damascus</option><option value=\"Asia/Dhaka\" title=\"20.790429687499994,88.0234375,26.571533203125,92.63164062499999\" data-geo=\"23.71666,90.41666,+06,BD,+6\">Asia/Dhaka</option><option value=\"Asia/Dili\" title=\"-9.511914062500011,124.03632812500001,-8.139941406250003,127.29609375000001\" data-geo=\"-8.55,125.58333,+09,TL,+9\">Asia/Dili</option><option value=\"Asia/Dubai\" title=\"22.621484375,51.568359375,26.068164062499996,56.38798828125002\" data-geo=\"25.3,55.3,+04,AE,+4\">Asia/Dubai</option><option value=\"Asia/Dushanbe\" title=\"36.684033203125,67.349609375,41.035107421875,75.11875\" data-geo=\"38.58333,68.8,+05,TJ,+5\">Asia/Dushanbe</option><option title=\"31.2,34,32.5,35.7\" value=\"Asia/Gaza\" data-geo=\"31.5,34.46666,EEST,PS,+2\">Asia/Gaza</option><option value=\"Asia/Harbin\" data-geo=\"45.75,126.68333,UTC,??,+8\">Asia/Harbin</option><option value=\"Asia/Hebron\" data-geo=\"31.53333,35.095,EEST,PS,+2\">Asia/Hebron</option><option value=\"Asia/Ho_Chi_Minh\" data-geo=\"10.75,106.66666,+07,VN,+7\">Asia/Ho_Chi_Minh</option><option value=\"Asia/Hong_Kong\" data-geo=\"22.28333,114.14999,HKT,HK,+8\">Asia/Hong_Kong</option><option value=\"Asia/Hovd\" data-geo=\"48.01666,91.64999,+07,MN,+7\">Asia/Hovd</option><option value=\"Asia/Irkutsk\" data-geo=\"52.26666,104.33333,+08,RU,+8\">Asia/Irkutsk</option><option value=\"Asia/Jakarta\" title=\"-10.90966796875,95.20664062500003,5.907031249999989,140.97617187500003\" data-geo=\"-6.16667,106.8,WIB,ID,+7\">Asia/Jakarta</option><option value=\"Asia/Jayapura\" data-geo=\"-2.53334,140.7,WIT,ID,+9\">Asia/Jayapura</option><option value=\"Asia/Jerusalem\" data-geo=\"31.76666,35.23333,IDT,IL,+2\">Asia/Jerusalem</option><option value=\"Asia/Kabul\" data-geo=\"34.51666,69.2,+0430,AF,+4.5\">Asia/Kabul</option><option value=\"Asia/Kamchatka\" data-geo=\"53.01666,158.65,+12,RU,+12\">Asia/Kamchatka</option><option value=\"Asia/Karachi\" data-geo=\"24.86666,67.05,PKT,PK,+5\">Asia/Karachi</option><option value=\"Asia/Kashgar\" data-geo=\"39.48333,75.98333,UTC,??,+6\">Asia/Kashgar</option><option value=\"Asia/Kathmandu\" data-geo=\"27.71666,85.31666,+0545,NP,+5.75\">Asia/Kathmandu</option><option value=\"Asia/Kolkata\" data-geo=\"22.53333,88.36666,IST,IN,+5.5\">Asia/Kolkata</option><option value=\"Asia/Krasnoyarsk\" data-geo=\"56.01666,92.83333,+07,RU,+7\">Asia/Krasnoyarsk</option><option value=\"Asia/Kuala_Lumpur\" data-geo=\"3.16666,101.7,+08,MY,+8\">Asia/Kuala_Lumpur</option><option value=\"Asia/Kuching\" data-geo=\"1.55,110.33333,+08,MY,+8\">Asia/Kuching</option><option value=\"Asia/Kuwait\" title=\"28.533154296874997,46.53144531250001,30.097314453124994,48.442480468750006\" data-geo=\"29.33333,47.98333,+03,KW,+3\">Asia/Kuwait</option><option value=\"Asia/Macau\" data-geo=\"22.23333,113.58333,CST,MO,+8\">Asia/Macau</option><option value=\"Asia/Magadan\" data-geo=\"59.56666,150.8,+11,RU,+10\">Asia/Magadan</option><option value=\"Asia/Makassar\" data-geo=\"-5.11667,119.39999,WITA,ID,+8\">Asia/Makassar</option><option value=\"Asia/Manila\" data-geo=\"14.58333,121,PST,PH,+8\">Asia/Manila</option><option value=\"Asia/Muscat\" title=\"16.648388671874997,51.977636718750006,26.356347656249994,59.8375\" data-geo=\"23.6,58.58333,+04,OM,+4\">Asia/Muscat</option><option value=\"Asia/Nicosia\" data-geo=\"35.16666,33.36666,EEST,CY,+2\">Asia/Nicosia</option><option value=\"Asia/Novokuznetsk\" data-geo=\"53.75,87.11666,+07,RU,+7\">Asia/Novokuznetsk</option><option value=\"Asia/Novosibirsk\" data-geo=\"55.03333,82.91666,+07,RU,+6\">Asia/Novosibirsk</option><option value=\"Asia/Omsk\" data-geo=\"55,73.4,+06,RU,+6\">Asia/Omsk</option><option value=\"Asia/Oral\" data-geo=\"51.21666,51.35,+05,KZ,+5\">Asia/Oral</option><option value=\"Asia/Phnom_Penh\" title=\"10.411230468749991,102.31972656250002,14.705078125,107.60546875\" data-geo=\"11.55,104.91666,+07,KH,+7\">Asia/Phnom_Penh</option><option value=\"Asia/Pontianak\" data-geo=\"-0.03334,109.33333,WIB,ID,+7\">Asia/Pontianak</option><option value=\"Asia/Pyongyang\" title=\"37.719042968749996,124.3486328125,42.99814453125,130.68730468750005\" data-geo=\"39.01666,125.75,KST,KP,+9\">Asia/Pyongyang</option><option value=\"Asia/Qatar\" title=\"24.564648437499997,50.75458984375001,26.153271484374997,51.60888671875\" data-geo=\"25.28333,51.53333,+03,QA,+3\">Asia/Qatar</option><option value=\"Asia/Qyzylorda\" data-geo=\"44.8,65.46666,+05,KZ,+6\">Asia/Qyzylorda</option><option value=\"Asia/Rangoon\" data-geo=\"16.78333,96.16666,UTC,MM,+6.5\">Asia/Rangoon</option><option value=\"Asia/Riyadh\" data-geo=\"24.63333,46.71666,+03,SA,+3\">Asia/Riyadh</option><option value=\"Asia/Sakhalin\" data-geo=\"46.96666,142.7,+11,RU,+10\">Asia/Sakhalin</option><option value=\"Asia/Samarkand\" data-geo=\"39.66666,66.8,+05,UZ,+5\">Asia/Samarkand</option><option value=\"Asia/Seoul\" title=\"33.201513671875,126.00751953125001,38.6234375,130.93427734375\" data-geo=\"37.55,126.96666,KST,KR,+9\">Asia/Seoul</option><option value=\"Asia/Shanghai\" title=\"17,82,55,133\" data-geo=\"31.23333,121.46666,CST,CN,+8\">Asia/Shanghai</option><option value=\"Asia/Singapore\" title=\"1.1,103.6,1.5,104.2\" data-geo=\"1.28333,103.85,+08,SG,+8\">Asia/Singapore</option><option value=\"Asia/Taipei\" data-geo=\"25.05,121.5,CST,TW,+8\">Asia/Taipei</option><option value=\"Asia/Tashkent\" data-geo=\"41.33333,69.3,+05,UZ,+5\">Asia/Tashkent</option><option value=\"Asia/Tbilisi\" title=\"41.070214843749994,39.97832031250002,43.569775390625,46.67255859375001\" data-geo=\"41.71666,44.81666,+04,GE,+4\">Asia/Tbilisi</option><option value=\"Asia/Tehran\" data-geo=\"35.66666,51.43333,+0430,IR,+3.5\">Asia/Tehran</option><option value=\"Asia/Thimphu\" data-geo=\"27.46666,89.64999,+06,BT,+6\">Asia/Thimphu</option><option value=\"Asia/Tokyo\" title=\"24.266064453124997,123.67978515625003,45.509521484375,145.8330078125\" data-geo=\"35.65444,139.74472,JST,JP,+9\">Asia/Tokyo</option><option value=\"Asia/Ulaanbaatar\" data-geo=\"47.91666,106.88333,+08,MN,+8\">Asia/Ulaanbaatar</option><option value=\"Asia/Urumqi\" data-geo=\"43.8,87.58333,+06,CN,+6\">Asia/Urumqi</option><option value=\"Asia/Vientiane\" data-geo=\"17.96666,102.6,+07,LA,+7\">Asia/Vientiane</option><option value=\"Asia/Vladivostok\" data-geo=\"43.16666,131.93333,+10,RU,+10\">Asia/Vladivostok</option><option value=\"Asia/Yakutsk\" data-geo=\"62,129.66666,+09,RU,+9\">Asia/Yakutsk</option><option value=\"Asia/Yekaterinburg\" data-geo=\"56.85,60.6,+05,RU,+5\">Asia/Yekaterinburg</option><option value=\"Asia/Yerevan\" title=\"38.869042968749994,43.439453125,41.290966796875,46.58476562500002\" data-geo=\"40.18333,44.5,+04,AM,+4\">Asia/Yerevan</option><option value=\"Atlantic/Azores\" data-geo=\"37.73333,-25.66667,+00,PT,-1\">Atlantic/Azores</option><option value=\"Atlantic/Bermuda\" data-geo=\"32.28333,-64.76667,ADT,BM,-4\">Atlantic/Bermuda</option><option value=\"Atlantic/Canary\" data-geo=\"28.1,-15.4,WEST,ES,+0\">Atlantic/Canary</option><option value=\"Atlantic/Cape_Verde\" title=\"14.818212890624991,-25.341552734375,17.193652343750003,-22.681884765625\" data-geo=\"14.91666,-23.51667,-01,CV,-1\">Atlantic/Cape_Verde</option><option value=\"Atlantic/Faroe\" data-geo=\"62.01666,-6.76667,WEST,FO,+0\">Atlantic/Faroe</option><option value=\"Atlantic/Madeira\" data-geo=\"32.63333,-16.9,WEST,PT,+0\">Atlantic/Madeira</option><option value=\"Atlantic/Reykjavik\" title=\"63,-25,67,-13\" data-geo=\"64.15,-21.85,GMT,IS,+0\">Atlantic/Reykjavik</option><option value=\"Atlantic/South_Georgia\" data-geo=\"-54.26667,-36.53334,-02,GS,-2\">Atlantic/South_Georgia</option><option value=\"Atlantic/St_Helena\" data-geo=\"-15.91667,-5.7,GMT,SH,+0\">Atlantic/St_Helena</option><option value=\"Atlantic/Stanley\" data-geo=\"-51.70001,-57.85,-03,FK,-3\">Atlantic/Stanley</option><option value=\"Australia/Adelaide\" data-geo=\"-34.91667,138.58333,ACST,AU,+10.5\">Australia/Adelaide</option><option value=\"Australia/Brisbane\" data-geo=\"-27.46667,153.03333,AEST,AU,+10\">Australia/Brisbane</option><option value=\"Australia/Broken_Hill\" data-geo=\"-31.95,141.45,ACST,AU,+10.5\">Australia/Broken_Hill</option><option value=\"Australia/Currie\" data-geo=\"-39.93334,143.86666,AEST,AU,+11\">Australia/Currie</option><option value=\"Australia/Darwin\" data-geo=\"-12.46667,130.83333,ACST,AU,+9.5\">Australia/Darwin</option><option value=\"Australia/Eucla\" data-geo=\"-31.71667,128.86666,+0845,AU,+8.75\">Australia/Eucla</option><option value=\"Australia/Hobart\" data-geo=\"-42.88334,147.31666,AEST,AU,+11\">Australia/Hobart</option><option value=\"Australia/Lindeman\" data-geo=\"-20.26667,149,AEST,AU,+10\">Australia/Lindeman</option><option value=\"Australia/Lord_Howe\" data-geo=\"-31.55,159.08333,+1030,AU,+11\">Australia/Lord_Howe</option><option value=\"Australia/Melbourne\" data-geo=\"-37.81667,144.96666,AEST,AU,+11\">Australia/Melbourne</option><option value=\"Australia/Sydney\" data-geo=\"-33.86667,151.21666,AEST,AU,+11\">Australia/Sydney</option><option value=\"Indian/Antananarivo\" data-geo=\"-18.91667,47.51666,EAT,MG,+3\">Indian/Antananarivo</option><option value=\"Indian/Chagos\" data-geo=\"-7.33334,72.41666,+06,IO,+6\">Indian/Chagos</option><option value=\"Indian/Christmas\" data-geo=\"-10.41667,105.71666,+07,CX,+7\">Indian/Christmas</option><option value=\"Indian/Cocos\" data-geo=\"-12.16667,96.91666,+0630,CC,+6.5\">Indian/Cocos</option><option value=\"Indian/Comoro\" title=\"-12.368261718750006,43.226660156250006,-11.368457031250003,44.52675781250002\" data-geo=\"-11.68334,43.26666,EAT,KM,+3\">Indian/Comoro</option><option value=\"Indian/Kerguelen\" data-geo=\"-49.35278,70.2175,+05,TF,+5\">Indian/Kerguelen</option><option value=\"Indian/Mahe\" title=\"-4.785546875,55.383398437500006,-4.558789062500011,55.54296875\" data-geo=\"-4.66667,55.46666,+04,SC,+4\">Indian/Mahe</option><option value=\"Indian/Maldives\" data-geo=\"4.16666,73.5,+05,MV,+5\">Indian/Maldives</option><option value=\"Indian/Mauritius\" data-geo=\"-20.16667,57.5,+04,MU,+4\">Indian/Mauritius</option><option value=\"Indian/Mayotte\" data-geo=\"-12.78334,45.23333,EAT,YT,+3\">Indian/Mayotte</option><option value=\"Indian/Reunion\" data-geo=\"-20.86667,55.46666,+04,RE,+4\">Indian/Reunion</option><option value=\"Pacific/Apia\" title=\"-14.047265625,-172.778515625,-13.465234375,-171.449560546875\" data-geo=\"-13.83334,-171.73334,+13,WS,+14\">Pacific/Apia</option><option value=\"Pacific/Auckland\" data-geo=\"-36.86667,174.76666,NZST,NZ,+13\">Pacific/Auckland</option><option value=\"Pacific/Chatham\" data-geo=\"-43.95,-176.55001,+1245,nZ,+13.75\">Pacific/Chatham</option><option value=\"Pacific/Chuuk\" data-geo=\"7.41666,151.78333,+10,FM,+10\">Pacific/Chuuk</option><option value=\"Pacific/Easter\" data-geo=\"-27.15,-109.43334,-05,CL,-5\">Pacific/Easter</option><option value=\"Pacific/Efate\" title=\"-20.241796875,166.52607421875,-13.70947265625,169.89628906250005\" data-geo=\"-17.66667,168.41666,+11,VU,+11\">Pacific/Efate</option><option value=\"Pacific/Enderbury\" title=\"-15.0,-170.0,5.0,-140.0\" data-geo=\"-3.13334,-171.08334,+13,KI,+13\">Pacific/Enderbury</option><option value=\"Pacific/Fakaofo\" data-geo=\"-9.36667,-171.23334,+13,TK,+13\">Pacific/Fakaofo</option>option value=\"Pacific/Fiji\" data-geo=\"-18.13334,178.41666,+12,FJ,+13\">Pacific/Fiji</option><option value=\"Pacific/Funafuti\" data-title=\"-11.0,175.0,-5.0,181.0\" data-geo=\"-8.51667,179.21666,+12,TV,+12\">Pacific/Funafuti</option><option value=\"Pacific/Galapagos\" data-geo=\"-0.9,-89.6,-06,EC,-6\">Pacific/Galapagos</option><option value=\"Pacific/Gambier\" data-geo=\"-23.13334,-134.95,-09,PF,-9\">Pacific/Gambier</option><option value=\"Pacific/Guadalcanal\" data-geo=\"-9.53334,160.2,+11,SB,+11\">Pacific/Guadalcanal</option><option value=\"Pacific/Guam\" data-geo=\"13.46666,144.75,ChST,GU,+10\">Pacific/Guam</option><option value=\"Pacific/Honolulu\" data-geo=\"21.30694,-157.85834,HST,US,-10\">Pacific/Honolulu</option><option value=\"Pacific/Johnston\" data-geo=\"16.75,-169.51667,UTC,UM,-10\">Pacific/Johnston</option><option value=\"Pacific/Kiritimati\" data-geo=\"1.86666,-157.33334,+14,KI,+14\">Pacific/Kiritimati</option><option value=\"Pacific/Kosrae\" data-geo=\"5.31666,162.98333,+11,FM,+11\">Pacific/Kosrae</option><option value=\"Pacific/Kwajalein\" data-geo=\"9.08333,167.33333,+12,MH,+12\">Pacific/Kwajalein</option><option value=\"Pacific/Majuro\" data-geo=\"7.15,171.2,+12,MH,+12\">Pacific/Majuro</option><option value=\"Pacific/Marquesas\" data-geo=\"-9,-139.5,-0930,PF,-9.5\">Pacific/Marquesas</option><option value=\"Pacific/Midway\" data-geo=\"28.21666,-177.36667,SST,UM,-11\">Pacific/Midway</option><option value=\"Pacific/Nauru\" data-geo=\"-0.51667,166.91666,+12,NR,+12\">Pacific/Nauru</option><option value=\"Pacific/Niue\" data-geo=\"-19.01667,-169.91667,-11,NU,-11\">Pacific/Niue</option><option value=\"Pacific/Norfolk\" data-geo=\"-29.05,167.96666,+11,NF,+11.5\">Pacific/Norfolk</option><option value=\"Pacific/Noumea\" data-geo=\"-22.26667,166.45,+11,NC,+11\">Pacific/Noumea</option><option value=\"Pacific/Pago_Pago\" data-geo=\"-14.26667,-170.7,SST,AS,-11\">Pacific/Pago_Pago</option><option value=\"Pacific/Palau\" title=\"3.021875,131.1349609375,7.712109375,134.65957031250002\" data-geo=\"7.33333,134.48333,+09,PW,+9\">Pacific/Palau</option><option value=\"Pacific/Pitcairn\" data-geo=\"-25.06667,-130.08334,-08,PN,-8\">Pacific/Pitcairn</option><option value=\"Pacific/Pohnpei\" data-geo=\"6.96666,158.21666,+11,FM,+11\">Pacific/Pohnpei</option><option value=\"Pacific/Port_Moresby\" data-geo=\"-9.5,147.16666,+10,PG,+10\">Pacific/Port_Moresby</option><option value=\"Pacific/Rarotonga\" data-geo=\"-21.23334,-159.76667,-10,CK,-10\">Pacific/Rarotonga</option><option value=\"Pacific/Saipan\" data-geo=\"15.2,145.75,ChST,MP,+10\">Pacific/Saipan</option><option value=\"Pacific/Tahiti\" data-geo=\"-17.53334,-149.56667,-10,PF,-10\">Pacific/Tahiti</option><option value=\"Pacific/Tarawa\" data-geo=\"1.41666,173,+12,KI,+12\">Pacific/Tarawa</option><option value=\"Pacific/Tongatapu\" title=\"-21.45058593750001,-175.362353515625,-18.56533203125001,-173.921875\" data-geo=\"-21.16667,-175.16667,+13,TO,+13\">Pacific/Tongatapu</option><option value=\"Pacific/Wake\" data-geo=\"19.28333,166.61666,+12,UM,+12\">Pacific/Wake</option><option value=\"Pacific/Wallis\" data-geo=\"-13.3,-176.16667,+12,WF,+12\">Pacific/Wallis</option><option value=\"Australia/Perth\" data-geo=\"-31.95,115.85,AWST,AU,+8\">Australia/Perth</option><option value=\"Antarctica/Troll\" data-geo=\"-72.01139,2.535,+02,AQ,+0\">Antarctica/Troll</option><option value=\"Asia/Chita\" data-geo=\"52.05,113.46666,+09,RU,+8\">Asia/Chita</option><option value=\"Asia/Khandyga\" data-geo=\"62.65638,135.55388,+09,RU,+9\">Asia/Khandyga</option><option value=\"Asia/Srednekolymsk\" data-geo=\"67.46666,153.71666,+11,RU,+11\">Asia/Srednekolymsk</option><option value=\"Asia/Ust-Nera\" data-geo=\"64.56027,143.22666,+10,RU,+10\">Asia/Ust-Nera</option><option value=\"Europe/Busingen\" data-geo=\"47.69999,8.68333,CEST,DE,+1\">Europe/Busingen</option><option value=\"Pacific/Bougainville\" data-geo=\"-6.21667,155.56666,+11,PG,+11\">Pacific/Bougainville</option><option value=\"America/Fort_Nelson\" data-geo=\"58.8,-122.7,MST\">America/Fort_Nelson</option><option value=\"Asia/Atyrau\" data-geo=\"47.11666,51.93333,+05\">Asia/Atyrau</option><option value=\"Asia/Barnaul\" data-geo=\"53.36666,83.75,+07\">Asia/Barnaul</option><option value=\"Asia/Famagusta\" data-geo=\"35.11666,33.95,EEST\">Asia/Famagusta</option><option value=\"Asia/Tomsk\" data-geo=\"56.5,84.96666,+07\">Asia/Tomsk</option><option value=\"Europe/London\" data-geo=\"51.5074,-0.1278,BST,GB,+0\">Europe/London</option><option value=\"Antarctica/Casey\" data-geo=\"-66.28334,110.51666,+08,AQ,+8\">Antarctica/Casey</option><option value=\"Antarctica/Davis\" data-geo=\"-68.58334,77.96666,+07,AQ,+7\">Antarctica/Davis</option><option value=\"Antarctica/DumontDUrville\" data-geo=\"-66.66667,140.01666,+10,AQ,+10\">Antarctica/DumontDUrville</option><option value=\"Antarctica/Macquarie\" data-geo=\"-54.5,158.95,+11,AU,+11\">Antarctica/Macquarie</option><option value=\"Antarctica/Mawson\" data-geo=\"-67.6,62.88333,+05,AQ,+5\">Antarctica/Mawson</option><option value=\"Antarctica/McMurdo\" data-geo=\"-77.83334,166.6,NZST,AQ,+13\">Antarctica/McMurdo</option><option value=\"Antarctica/Palmer\" data-geo=\"-64.8,-64.1,-03,AQ,-3\">Antarctica/Palmer</option><option value=\"Antarctica/Rothera\" data-geo=\"-67.56667,-68.13334,-03,AQ,-3\">Antarctica/Rothera</option><option value=\"Antarctica/South_Pole\" data-geo=\"-90,0,UTC,??,+13\">Antarctica/South_Pole</option><option value=\"Antarctica/Syowa\" data-geo=\"-69.00612,39.59,+03,AQ,+3\">Antarctica/Syowa</option><option value=\"Antarctica/Vostok\" data-geo=\"-78.40001,106.89999,+06,AQ,+6\">Antarctica/Vostok</option><option value=\"Arctic/Longyearbyen\" data-geo=\"78,16,CEST,SJ,+1\">Arctic/Longyearbyen</option>";

$lastcode='';
$lastcountrycode=' ';
$lastcountry='';
$lastplace='';
$screenheight='0';

// ;Continent;CC1|CC2|:blLAT,blLONG,trLAT,trLONG:width,height:scblX,scblY,sctrX,sctrY
$continfo=';Europe;IS|CY|:35.16666,-27.6,67.0,33.36666:468,450:422,560,890,140';  // 53 523
$continfo.=';Australia;AU|AU|:-44,113.65,-10.26667,161.28333:600,450:422,560,866,140';
$continfo.=';Asia;FI|WS|:-14,37,81,179.9:600,450:422,560,866,140';
$continfo.=';America;GS|US|:-56,-179.9,77,-35:600,450:422,560,866,140';
$continfo.=';Africa;TF||:-35,-17,37,52:600,450:422,560,890,140';
if (isset($_GET['screenheight'])) {
    $screenheight=str_replace('+',' ',urldecode($_GET['screenheight']));
}
if (isset($_POST['screenheight'])) {
    $screenheight=str_replace('+',' ',urldecode($_POST['screenheight']));
}


if (isset($_GET['nothing'])) {
  exit;
} else if ($screenheight != '0' && !isset($_GET['returnxytoparent']) && (!isset($_POST['returnxytoparent']) && !isset($_POST['ix']))) {
  echo "<html>
<head>
<script type=text/javascript>
  function tryit() {
    if (('' + location.hash).indexOf('returnxytoparent=') != -1) {
      document.getElementById('returnxytoparent').value=decodeURIComponent(('' + location.hash).split('returnxytoparent=')[1].split('&')[0].split('#'));
      document.getElementById('submy').click();
    }
  }
</script>
</head>
<body onload=tryit();>
<form style=display:none; target=_self action=/PHP/GeoChart/image_chart.php method=POST>
<input type=hidden name=returnxytoparent id=returnxytoparent value=\"\"></input>
<input type=hidden name=screenheight value=" . $screenheight . "></input>
<input type=submit style=display:none; value=Submit id=submy></input>
</form>
</body>
</html>";
  exit;
} else if (isset($_GET['returnxytoparent']) || (isset($_POST['returnxytoparent']) && !isset($_POST['ix']))) {
  if (isset($_GET['returnxytoparent'])) {
  if (isset($_GET['screenheight'])) {
    $screenheight=str_replace('+',' ',urldecode($_GET['screenheight']));
  }
  if (strpos(str_replace('+',' ',urldecode($_GET['returnxytoparent'])), '&chld=') !== false && strpos(str_replace('+',' ',urldecode($_GET['returnxytoparent'])), '&chld=&') === false) {
    $lastcountrycode=strtoupper(substr(explode('&chld=', str_replace('+',' ',urldecode($_GET['returnxytoparent'])))[1],0,2));
    for ($ihuh=0; $ihuh<sizeof($iso_country_codes); $ihuh+=2) {
                 if (strtoupper(explode('-', $lastcountrycode)[0]) == strtoupper($iso_country_codes[$ihuh])) {
                  $lastcountry=$iso_country_codes[1 + $ihuh];
                  $lastplace=$iso_country_codes[1 + $ihuh];
                 }
    }
  }
  $imgurl=str_replace('chart.googleapis/chart','www.rjmprogramming.com.au/ITblog/455/350', str_replace('+',' ',urldecode($_GET['returnxytoparent'])));
  } else {
  if (isset($_POST['screenheight'])) {
    $screenheight=str_replace('+',' ',urldecode($_POST['screenheight']));
  }
  if (strpos(str_replace('+',' ',urldecode($_POST['returnxytoparent'])), '&chld=') !== false && strpos(str_replace('+',' ',urldecode($_POST['returnxytoparent'])), '&chld=&') === false) {
    $lastcountrycode=strtoupper(substr(explode('&chld=', str_replace('+',' ',urldecode($_POST['returnxytoparent'])))[1],0,2));
    for ($ihuh=0; $ihuh<sizeof($iso_country_codes); $ihuh+=2) {
                 if (strtoupper(explode('-', $lastcountrycode)[0]) == strtoupper($iso_country_codes[$ihuh])) {
                  $lastcountry=$iso_country_codes[1 + $ihuh];
                  $lastplace=$iso_country_codes[1 + $ihuh];
                 }
    }
  }
  $imgurl=str_replace('chart.googleapis/chart','www.rjmprogramming.com.au/ITblog/455/350', str_replace('+',' ',urldecode($_POST['returnxytoparent'])));
  }
  $ccd='';
  if (strpos($imgurl, 'chld=') !== false) {
    $ccd=strtoupper(substr(explode('chld=', $imgurl)[1],0,2));
  } else if (strpos($imgurl, urlencode('chld=')) !== false) {
    $ccd=strtoupper(substr(explode(urlencode('chld='), $imgurl)[1],0,2));
  }
  echo "<html>
  <head>
  <style> * { margin:0 0 0 0; padding:0 0 0 0; } 
  .crossedtotl { 
      background:
          linear-gradient(to top left,
              rgba(127,127,127,0) 0%,
              rgba(127,127,127,0) calc(50% - 0.8px),
              rgba(127,127,127,1) 50%,
              rgba(127,127,127,0) calc(50% + 0.8px),
              rgba(127,127,127,0) 100%);
  }
 
  .crossedtotr {
      background:
          linear-gradient(to top right,
              rgba(0,0,0,0) 0%,
              rgba(0,0,0,0) calc(50% - 0.8px),
              rgba(0,0,0,1) 50%,
              rgba(0,0,0,0) calc(50% + 0.8px),
              rgba(0,0,0,0) 100%);
  }
  </style>
  <scr" . "ipt type=text/javascript>

   var oneoftwo=0, xinxy=[], yinxy=[], opis='1.0', ovnum=1, defzoom=2;
   var x=0, y=0, isclear=true;
   var xs=10, ys=10, lastsuff='';
   var storedsuffs='|';
   var screenheight=('" . $screenheight . "' == '0' ? eval('' + screen.height) : eval('' + '" . $screenheight . "'));
   var elem=null, context=null;
   var origtitle='Optionally click in relevant region for menu';
   var ourccd='" . $ourccd . "';
   var lastcode='" . $lastcode . "';
   var lastplace='" . $lastplace . "';
   var lastcountry='" . $lastcountry . "';
   var lastcountrycode='" . $lastcountrycode . "';
   var gextras='', grcodeis='', gerdescis='', grdescis='';
   var myxhr=null;
var blurbone=', where if you click on orange country more functionality available ', zaconto=null, zzaconto=null;
var blurbtwo=', where if you click on orange country more functionality available (change value from No Trip Planning to retain red x placement elements which you can right click to form trip legs, where double click on legs can simulate pen ups)';
var lastgdivid=' ', gdivid='', gw1='', gw2='', gw3=''; 
var pos3=-999, pos4=-999, blk='hidden';
var isdouble=0, nolineplease=false;
var sofararealist='|';
var nextv='hidden';
var lastspano=null, spanos=[], newone=99999999;
var lastr='';
var refreshword='rand';
var zoomword='zorro';
var iizoom=1, lastiizoom=0, zoomdone=false;
var spancount=0, jjans='No Trip Planning';
var dbwo=null, woit=false, woito=null, isfixed='', twomw='';
   

if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i) || 9 == 19) {
  blurbone='';
  blurbtwo='';
}


function tryit() {
      if (window.opener) {
         window.opener.tryit();
      } else if (window.top != window.self) {
         top.tryit();
      }
}

function StringfromCharCode(howmany) {
   var prefixer='';
   for (var ijk=0; ijk<howmany; ijk++) {
      prefixer+=' ';
   }
   if (document.URL.indexOf('tab=') != -1) {
   return prefixer + String.fromCharCode(9) + String.fromCharCode(32) + String.fromCharCode(32);
   } else {
   return prefixer + '|' + String.fromCharCode(32) + String.fromCharCode(32);
   }
}

    
 function lpw(lp) {
   if (lp.indexOf(encodeURIComponent(', ')) != -1) { return lp.replace('%252C', '%2C');   }
   return encodeURIComponent(lp.replace(/\ \(/g,', ').replace(/\)$/g,'')).replace(/\%20/g,'_').replace('%252C', '%2C');
 }

 function oldmenuize(rans) {
      var rdescis=lastplace;
      if ((rans + ' ').toUpperCase().substring(0,1) == 'W') {
         if (rdescis == '') {
         window.open('//wikipedia.org','_blank','top=10,left=10,width=600,height=600');
         } else {
         window.open('//wikipedia.org/wiki/' + encodeURIComponent(rdescis.replace(/\ \(/g,', ').replace(/\)$/g,'')).replace(/\%20/g,'_'),'_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
         }
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'Y') {
         if (rdescis == '') {
         window.open('//www.youtube.com','_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
         } else {
         window.open('//www.rjmprogramming.com.au/HTMLCSS/karaoke_youtube_api.htm?emoji=on&nokaraoke=y&youtubeid=' + encodeURIComponent('           ' + rdescis.replace(/\ \(/g,', ').replace(/\)$/g,'')),'_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
         }
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'G') {
         if (rdescis == '') {
         window.open('//www.google.com','_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
         } else {
         window.open('//www.google.com/search?q=' + encodeURIComponent(rdescis.replace(/\ \(/g,', ').replace(/\)$/g,'')) + '&tbm=isch','_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
         }
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'T') { // && eval(('' + document.getElementById('myp').getAttribute('data-fc')).length) == 2) {
         if (rdescis == '') {
         window.open('//www.rjmprogramming.com.au/PHP/tz_places.php','_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
         } else {
         window.open('//www.rjmprogramming.com.au/PHP/tz_places.php?iso=' + ('' + lastcode + '  ').toUpperCase().substring(0,2).trim(),'_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
         }
      }
 }





function menuize(rans) {
      var rdescis=lastplace;
      var latdeg=-999, longdeg=-999;
      if (gextras.indexOf(' (') != -1) {
       if (gextras.split(' (')[1].split(')')[0].indexOf(',') != -1) {
        latdeg=eval('' + gextras.split(' (')[1].split(')')[0].split(',')[0]);
        longdeg=eval('' + gextras.split(' (')[1].split(')')[0].split(',')[1]);
       }
      } else if (storedsuffs.indexOf('~' + lpw(lastplace) + '`') != -1 && storedsuffs.indexOf('~' + lpw(lastplace) + '`|') == -1) {
       gextras=storedsuffs.split('~' + lpw(lastplace) + '`')[1].split('`')[0].split('~')[0]; //.split('|')[0];
       if (gextras.split(' (')[1].split(')')[0].indexOf(',') != -1) {
        latdeg=eval('' + gextras.split(' (')[1].split(')')[0].split(',')[0]);
        longdeg=eval('' + gextras.split(' (')[1].split(')')[0].split(',')[1]);
       }
      }

      if ((rans + ' ').toUpperCase().substring(0,1) == 'W') {
         if (rdescis == '') {
         window.open('//wikipedia.org','_blank','top=180,left=400,width=600,height=600');
         } else {
         window.open('//wikipedia.org/wiki/' + encodeURIComponent(rdescis.replace(/\ \(/g,', ').replace(/\)$/g,'')).replace(/\%20/g,'_'),'_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
         }
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'Y') {
         if (rdescis == '') {
         window.open('//www.youtube.com','_blank','top=180,left=400,width=600,height=600');
         } else {
         window.open('//www.rjmprogramming.com.au/HTMLCSS/karaoke_youtube_api.htm?emoji=on&nokaraoke=y&youtubeid=' + encodeURIComponent('           ' + rdescis.replace(/\ \(/g,', ').replace(/\)$/g,'')),'_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
         }
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'G') {
         if (rdescis == '') {
         window.open('//www.google.com','_blank','top=180,left=400,width=600,height=600');
         } else {
         window.open('//www.google.com/search?q=' + encodeURIComponent(rdescis.replace(/\ \(/g,', ').replace(/\)$/g,'')) + '&tbm=isch','_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
         }
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'T') { // && eval(('' + document.getElementById('myp').getAttribute('data-fc')).length) == 2) {
         if (rdescis == '') {
         window.open('//www.rjmprogramming.com.au/PHP/tz_places.php','_blank','top=180,left=400,width=600,height=600');
         } else {
         window.open('//www.rjmprogramming.com.au/PHP/tz_places.php?iso=' + ('' + lastcode + '  ').toUpperCase().substring(0,2).trim(),'_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
         }
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'I' && window.opener) {
         window.opener.tryit();
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'I' && window.top != window.self) {
         top.tryit();
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'A' && latdeg > -91 && gextras.indexOf(' (') != -1) {  // Airports
         window.open('//www.rjmprogramming.com.au/HTMLCSS/intair.php?num=3&lat=' + latdeg + '&long=' + longdeg + '&spawn=' + encodeURIComponent('//www.rjmprogramming.com.au/PHP/Map/map.php?title=' + maybenot(document.getElementById('myp').getAttribute('data-fc').toUpperCase(),rdescis) + ';' + encodeURIComponent(rdescis) + '%' + '20and%' + '20Airports&onclick=y&justmenu=y&label=[%' + '27Lat%' + '27,&value=%' + '27Lon%' + '27,%' + '27Name%' + '27]&data=,' + '[' + latdeg + ',' + longdeg + ',~' + encodeURIComponent(rdescis).replace(/\-/g,'%' + '2d').replace(/\#/g,'%' + '23') + '~]'),'_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'P' && latdeg >= -91 && gextras.indexOf(' (') != -1) {  // Ports
         window.open('//www.rjmprogramming.com.au/HTMLCSS/intair.php?num=4&lat=' + latdeg + '&long=' + longdeg + '&port=y&spawn=' + encodeURIComponent('//www.rjmprogramming.com.au/PHP/Map/map.php?title=' + maybenot(document.getElementById('myp').getAttribute('data-fc').toUpperCase(),rdescis) + ';' + encodeURIComponent(rdescis) + '%' + '20and%' + '20Ports&onclick=y&justmenu=y&label=[%' + '27Lat%' + '27,&value=%' + '27Lon%' + '27,%' + '27Name%' + '27]&data=,' + '[' + latdeg + ',' + longdeg + ',~' + encodeURIComponent(rdescis).replace(/\-/g,'%' + '2d').replace(/\#/g,'%' + '23') + '~]'),'_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'S' && latdeg > -91 && gextras.indexOf(' (') != -1) {  // Sun Angle
         window.open('//www.rjmprogramming.com.au/PHP/SunAngle/sun_angle_now_at.php?latd=' + ('' + latdeg).split('.')[0] + '&latm=' + Math.round(eval(eval('0.' + ('' + latdeg + '.0').split('.')[1]) * 60)) + '&lats=0&longd=' + ('' + longdeg).split('.')[0] + '&longm=' + Math.round(eval(eval('0.' + ('' + longdeg + '.0').split('.')[1]) * 60)) + '&longs=0&from=from&done=y','_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'M' && latdeg > -91 && gextras.indexOf(' (') != -1) {  // Moon Angle
         window.open('//www.rjmprogramming.com.au/PHP/MoonAngle/moon_angle_now_at.php?latd=' + ('' + latdeg).split('.')[0] + '&latm=' + Math.round(eval(eval('0.' + ('' + latdeg + '.0').split('.')[1]) * 60)) + '&lats=0&longd=' + ('' + longdeg).split('.')[0] + '&longm=' + Math.round(eval(eval('0.' + ('' + longdeg + '.0').split('.')[1]) * 60)) + '&longs=0&from=from&done=y','_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'C' && latdeg > -91 && gextras.indexOf(' (') != -1) {  // Coriolis Effect
         window.open('//www.rjmprogramming.com.au/PHP/Coriolis/coriolis_force_at.php?latd=' + ('' + latdeg).split('.')[0] + '&latm=' + Math.round(eval(eval('0.' + ('' + latdeg + '.0').split('.')[1]) * 60)) + '&lats=0&longd=' + ('' + longdeg).split('.')[0] + '&longm=' + Math.round(eval(eval('0.' + ('' + longdeg + '.0').split('.')[1]) * 60)) + '&longs=0&from=from&done=y','_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'E' && latdeg > -91 && gextras.indexOf(' (') != -1) {  // Google Earth
         window.open('//earth.google.com/web/@' + ('+' + latdeg).replace('+-','-') + (',+' + longdeg).replace('+-','-') + ',328.51120179a,63169669.71505167d,1y,0h,0t,0r','_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'O' && latdeg > -91 && gextras.indexOf(' (') != -1) {  // Geo Chart
         window.open('//www.rjmprogramming.com.au/PHP/GeoChart/geo_chart.php' + '?title=' + maybenot(document.getElementById('myp').getAttribute('data-fc').toUpperCase(),rdescis) + ';' + encodeURIComponent(rdescis).replace(/\-/g,'%' + '2d').replace(/\#/g,'%' + '23') + '&aregexographicals=y&aregeographicals=&width=500&height=312&onclick=y&country=Places&popularity=&data=%20[' + latdeg + '|' + longdeg + '|~' + encodeURIComponent(rdescis).replace(/\-/g,'%' + '2d').replace(/\#/g,'%' + '23') + '~,2]','_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'J' && eval(('' + document.getElementById('myp').getAttribute('data-fc')).length) == 2) {  // GeoJSON
         //window.open('//www.rjmprogramming.com.au/HTMLCSS/countries.html','ifcountries','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
 //alert(1);
         twomw=document.getElementById('myp').getAttribute('data-fc').substring(0,2).toUpperCase();
         document.getElementById('placegeo').value='' + latdeg + ',' + longdeg;
         document.getElementById('placegeo').title='';
         if ((latdeg < -990 && longdeg < -990) || gextras.trim() == '') {
              jjans=jjans + '     ';
         }
 //alert(11);
         if (sofararealist.indexOf('|' + ('' + twomw.substring(0,2).toUpperCase() + '  ').toUpperCase().substring(0,2).trim() + '|') == -1) {
         sofararealist+=('' + twomw.substring(0,2).toUpperCase() + '  ').toUpperCase().substring(0,2).trim() + '|';
         }
 //alert(111);
         //document.getElementById('ifcountries').src='//www.rjmprogramming.com.au/HTMLCSS/countries.html?' + (Math.max(lastiizoom,1) == 1 ? zoomword + '=' + Math.max(lastiizoom,1) : 'zoom=' + Math.max(lastiizoom,1)) + '&' + refreshword + '=' + Math.floor(Math.random() * 198767564);
         //document.getElementById('ifcountries').src='//www.rjmprogramming.com.au/HTMLCSS/countries.html?' + (Math.max(lastiizoom,1) == 1 ? zoomword + '=' + Math.max(lastiizoom,1) : 'zoom=' + Math.max(lastiizoom,1)) + '&' + refreshword + '=' + Math.floor(Math.random() * 198767564);
         if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i) && document.getElementById('ifcountries').src.indexOf('?') != -1 && document.getElementById('ifcountries').src.indexOf('/countries.') != -1) {
         document.getElementById('placegeo').value='';
         document.getElementById('placegeo').title='' + latdeg + ',' + longdeg;
         sofararealist+=('' + lastcode + '  ').toUpperCase().substring(0,2).trim() + '|';
                       zoomword='zoom';
                       refreshword='refresh';
         document.getElementById('ifcountries').src+=lhit('#' + (Math.max(lastiizoom,1) == 1 ? zoomword + '=' + Math.max(lastiizoom,1) : 'zoom=' + Math.max(lastiizoom,1)) + '&' + refreshword + '=' + Math.floor(Math.random() * 198767564));
         } else {         
         document.getElementById('ifcountries').src='//www.rjmprogramming.com.au/HTMLCSS/countries.html?' + (Math.max(lastiizoom,1) == 1 ? zoomword + '=' + Math.max(lastiizoom,1) : 'zoom=' + Math.max(lastiizoom,1)) + '&' + refreshword + '=' + Math.floor(Math.random() * 198767564);
         }
         lastr=rdescis;
 //alert(1111);
         if ((latdeg < -990 && longdeg < -990) || blurbone == '') {
         if (confirm('Taking you to ' + decodeURIComponent(rdescis) + ' on world map now' + blurbone + ' ...')) {
         document.getElementById('ifcountries').style.display='block';
         //document.getElementById('more').style.display='none';
         location.href='#ifcountries';
         }
         } else {
 //alert(11111);
         jjans=jjans.replace(/\ \ \ \ \ $/g,'');
 jjans=prompt('Taking you to ' + decodeURIComponent(rdescis) + ' on world map now' + blurbtwo + ' ...', '' + jjans);
 if (jjans != null) {
 //alert(11111);
         document.getElementById('ifcountries').style.display='block';
         //document.getElementById('more').style.display='none';
         location.href='#ifcountries';
 }
      }
      }  // new

      //}
}


 function okd(e){ 
   var charx = e.which || e.keyCode;
   var latdeg=-999, longdeg=-999;
   if (gextras.indexOf(' (') != -1) {
       if (gextras.split('t to (')[1].split(')')[0].indexOf(',') != -1) {
        latdeg=eval('' + gextras.split('t to (')[1].split(')')[0].split(',')[0]);
        longdeg=eval('' + gextras.split('t to (')[1].split(')')[0].split(',')[1]);
       }
   } else if (storedsuffs.indexOf('~' + lpw(lastplace) + '`') != -1 && storedsuffs.indexOf('~' + lpw(lastplace) + '`|') == -1) {
       gextras=storedsuffs.split('~' + lpw(lastplace) + '`')[1].split('`')[0].split('~')[0]; //.split('|')[0];
       if (gextras.split(' (')[1].split(')')[0].indexOf(',') != -1) {
        latdeg=eval('' + gextras.split(' (')[1].split(')')[0].split(',')[0]);
        longdeg=eval('' + gextras.split(' (')[1].split(')')[0].split(',')[1]);
       }
   }
   if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i)) {
     charx=charx;
   } else if (('' + e.keyCode) == '87') { // Wikipedia
     menuize('W');
   } else if (('' + e.keyCode) == '89') { // YouTube
     menuize('Y');
   } else if (('' + e.keyCode) == '84') { // TimeZone tz_places.php
     menuize('T');
   } else if (('' + e.keyCode) == '71') { // Google
     menuize('G');
   } else if (latdeg > -91) {
     if (('' + e.keyCode) == '65') { // Airports
     menuize('A');
     } else if (('' + e.keyCode) == '83') { // Sun Angle
     menuize('S');
     } else if (('' + e.keyCode) == '77') { // Moon Angle
     menuize('M');
     } else if (('' + e.keyCode) == '80') { // Ports
     menuize('P');
     } else if (('' + e.keyCode) == '67') { // Coriolis
     menuize('C');
     } else if (('' + e.keyCode) == '69') { // Google Earth
     menuize('E');
     } else if (('' + e.keyCode) == '79') { // Geo Chart
     menuize('O');
     } 
   //} else if (('' + e.keyCode) == '65') { // Airports
   //alert('storedsuffs=' + storedsuffs + ' and lastplace=' + lastplace);
   } 
   return true;  
 }
   
   function doslptc(cnameis, ccodeis) {
     lastcode=ccodeis;
     lastplace=cnameis;
     if (('' + ccodeis + '   ').substring(2).substring(0,1) == '-') {
      lastcountrycode=ccodeis.substring(0,2).toUpperCase();
     } else if (eval('' + ccodeis.length) == 2) {
      lastcountrycode=ccodeis.toUpperCase();
     } 
     if (cnameis.indexOf(' (') != -1 && cnameis.replace(/\ /g,'').indexOf('()') == -1) {
      lastcountry=cnameis.split(' (')[1].split(')')[0];
     }
     if (window.opener) {
       window.opener.slptc(cnameis, ccodeis);
     } else if (window.parent) {
       parent.slptc(cnameis, ccodeis);
     }
     return cnameis;
   }
   
   function pax(sxis) {
     if (window.opener) {
       window.opener.sxiss(sxis);
     } else if (window.parent) {
       parent.sxiss(sxis);
     }
     return sxis;
   }
   
   function paa(syis) {
     if (window.opener) {
       window.opener.syiss(syis);
     } else if (window.parent) {
       parent.syiss(syis);
     }
     return syis;
   }

   function rgbToHex(r, g, b) { // thanks to https://stackoverflow.com/questions/6735470/get-pixel-color-from-canvas-on-mousemove
    if (r > 255 || g > 255 || b > 255)
        throw 'Invalid color component';
    return ((r << 16) | (g << 8) | b).toString(16);
   }
   
   
   function filloutform(e,isclick) {
       var p='', hex='', myid='';
       var browserZoomLevel = Math.round(window.devicePixelRatio * 100);
       browserZoomLevel=1;
       
       e = e || window.event;
       e.preventDefault();

       if (e.touches) {
       if (e.touches[0].pageX) {
       //document.getElementById('myspan').innerHTML+='<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1:' + e.touches[0].pageY + ' ' + browserZoomLevel + ' ' + document.body.scrollTop;
       x = eval(e.touches[0].pageX + document.body.scrollLeft) * browserZoomLevel;
       y = eval(e.touches[0].pageY + document.body.scrollTop) * browserZoomLevel;
       xs = pax(e.touches[0].screenX);
       ys = paa(e.touches[0].screenY);
       } else {
       //document.getElementById('myspan').innerHTML+='<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;' + '2:' + e.touches[0].clientY + ' ' + browserZoomLevel + ' ' + document.body.scrollTop;
       x = eval(e.touches[0].clientX + document.body.scrollLeft) * browserZoomLevel;
       y = eval(e.touches[0].clientY + document.body.scrollTop) * browserZoomLevel;
       xs = pax(e.touches[0].screenX);
       ys = paa(e.touches[0].screenY);
       }
       console.log('pos3=' + pos3 + ',pos4=' + pos4);
       } else if (e.clientX || e.clientY) {
      //document.getElementById('myspan').innerHTML+='<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;' + '3:' + e.clientY + ' ' + browserZoomLevel + ' ' + document.body.scrollTop;
        x = e.clientX + document.body.scrollLeft;
        y = e.clientY + document.body.scrollTop;
       xs = pax(e.screenX);
       ys = paa(e.screenY);
       } else {
      //document.getElementById('myspan').innerHTML+='<br>' + '4:' + e.pageY + ' ' + browserZoomLevel + ' ' + document.body.scrollTop;
        x = e.pageX + document.body.scrollLeft;
        x = e.pageY + document.body.scrollTop;
       xs = pax(e.screenX);
       ys = paa(e.screenY);
       }
       
       console.log('xs=' + xs + ' and ys=' + ys);
   
      if (eval('' + x) > 2 && eval('' + y) > 2) {
      document.getElementById('ix').value='' + x;
      document.getElementById('iy').value='' + y;
      if (document.getElementById('imode').value == 'click' && isclick != 0) {
        document.getElementById('imode').value='click';
      if (!context) { thisonl(); }
      p = context.getImageData(x, y, 1, 1).data; 
      hex = ('#' + ('000000' + rgbToHex(p[0], p[1], p[2])).slice(-6)).toUpperCase();
        document.getElementById('moimode').value='mouseover';
      myid='';
      if (document.getElementById('myp').innerHTML.indexOf(hex) != -1) {
      myid=document.getElementById('myp').innerHTML.split(hex)[0].split(' id=\"')[eval(-1 + document.getElementById('myp').innerHTML.split(hex)[0].split(' id=\"').length)].split('\"')[0];
      document.getElementById('ici').title=doslptc(document.getElementById(myid).title, myid.substring(1));
      document.getElementById(myid).click();
      } else if (document.getElementById('myp').innerHTML.indexOf(hex.toLowerCase()) != -1) {
      myid=document.getElementById('myp').innerHTML.split(hex.toLowerCase())[0].split(' id=\"')[eval(-1 + document.getElementById('myp').innerHTML.split(hex.toLowerCase())[0].split(' id=\"').length)].split('\"')[0];
      //document.title='x=' + x + ' and y=' + y + ' ' + hex;
      document.getElementById('ici').title=doslptc(document.getElementById(myid).title, myid.substring(1));
      document.getElementById(myid).click();
      } else if (hex.toUpperCase() != '#D0D0D0' && hex.toUpperCase() != '#FFFFFF' && hex.toUpperCase() != '#000000' && hex.toUpperCase() != '#B3BCC0' && hex.toUpperCase() != '#BCBCBC') {
//if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i)) {
//  alert('origtitle=' + origtitle + ' and ' + document.getElementById('ici').title + ' and hex=' + hex);
//}
        if (document.getElementById('ici').title != origtitle) {
        //if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i)) {
        //document.getElementById('blastcol').click();
       // document.getElementById('myform').submit();
        //} else {
        gmenu('', document.getElementById('ici').title); 
        //}
        } else {
        //document.getElementById('blastcol').click();
        document.getElementById('myform').submit();
        }
      }
      } else {
      document.getElementById('moix').value='' + x;
      document.getElementById('moiy').value='' + y;
      if (!context) { thisonl(); }
      p = context.getImageData(x, y, 1, 1).data; 
      hex = ('#' + ('000000' + rgbToHex(p[0], p[1], p[2])).slice(-6)).toUpperCase();
        document.getElementById('moimode').value='mouseover';
      myid='';
      if (document.getElementById('myp').innerHTML.indexOf(hex) != -1) {
      myid=document.getElementById('myp').innerHTML.split(hex)[0].split(' id=\"')[eval(-1 + document.getElementById('myp').innerHTML.split(hex)[0].split(' id=\"').length)].split('\"')[0];
      document.getElementById('ici').title=doslptc(document.getElementById(myid).title, myid.substring(1));
      } else if (document.getElementById('myp').innerHTML.indexOf(hex.toLowerCase()) != -1) {
      myid=document.getElementById('myp').innerHTML.split(hex.toLowerCase())[0].split(' id=\"')[eval(-1 + document.getElementById('myp').innerHTML.split(hex.toLowerCase())[0].split(' id=\"').length)].split('\"')[0];
      //document.title='x=' + x + ' and y=' + y + ' ' + hex;
      document.getElementById('ici').title=doslptc(document.getElementById(myid).title, myid.substring(1));
      } else if (document.getElementById('ici').title == origtitle) {
        //document.getElementById('moblastcol').click();
        document.getElementById('myformmo').submit();
      }
      }
      }
   }
 
   
   function latergmenu() {
   var rcodeis=grcodeis;
   var erdescis=gerdescis;
   var rdescis=decodeURIComponent(erdescis);
   var latdeg=-999, longdeg=-999;
   document.getElementById('ici').style.cursor='pointer';
   if (document.getElementById('placegeo').value.indexOf(',') != -1) {
          console.log('placegeo=' + document.getElementById('placegeo').value);
          latdeg=document.getElementById('placegeo').value.split(',')[0];
          longdeg=document.getElementById('placegeo').value.split(',')[1];
          gextras='A - Airports Closest to (' + latdeg + ',' + longdeg + ')' + String.fromCharCode(10);
          gextras+='S - Sun Angle at Noon at (' + latdeg + ',' + longdeg + ')' + String.fromCharCode(10);
          gextras+='M - Moon Angle at (' + latdeg + ',' + longdeg + ')' + String.fromCharCode(10);
          gextras+='C - Coriolis Effect at (' + latdeg + ',' + longdeg + ')' + String.fromCharCode(10);
          gextras+='E - Google Earth at (' + latdeg + ',' + longdeg + ')' + String.fromCharCode(10);
          gextras+='P - Ports Closest to (' + latdeg + ',' + longdeg + ')' + String.fromCharCode(10);
          gextras+='O - Geo Chart at (' + latdeg + ',' + longdeg + ')' + String.fromCharCode(10);
          gextras='A - Airports Closest to (' + (('' + latdeg).indexOf('.') != -1 ? ('' + latdeg) : ('' + latdeg + '.000')) + ',' + (('' + longdeg).indexOf('.') != -1 ? ('' + longdeg) : ('' + longdeg + '.000')) + ')' + StringfromCharCode(2);
          gextras+='S - Sun Angle at Noon at (' + (('' + latdeg).indexOf('.') != -1 ? ('' + latdeg) : ('' + latdeg + '.000')) + ',' + (('' + longdeg).indexOf('.') != -1 ? ('' + longdeg) : ('' + longdeg + '.000')) + ')' + String.fromCharCode(10);
          gextras+='M - Moon Angle at (' + (('' + latdeg).indexOf('.') != -1 ? ('' + latdeg) : ('' + latdeg + '.000')) + ',' + (('' + longdeg).indexOf('.') != -1 ? ('' + longdeg) : ('' + longdeg + '.000')) + ')' + StringfromCharCode(9);
          gextras+='C - Coriolis Effect at (' + (('' + latdeg).indexOf('.') != -1 ? ('' + latdeg) : ('' + latdeg + '.000')) + ',' + (('' + longdeg).indexOf('.') != -1 ? ('' + longdeg) : ('' + longdeg + '.000')) + ')' + String.fromCharCode(10);
          gextras+='E - Google Earth at (' + (('' + latdeg).indexOf('.') != -1 ? ('' + latdeg) : ('' + latdeg + '.000')) + ',' + (('' + longdeg).indexOf('.') != -1 ? ('' + longdeg) : ('' + longdeg + '.000')) + ')' + StringfromCharCode(8);
          gextras+='P - Ports Closest to (' + (('' + latdeg).indexOf('.') != -1 ? ('' + latdeg) : ('' + latdeg + '.000')) + ',' + (('' + longdeg).indexOf('.') != -1 ? ('' + longdeg) : ('' + longdeg + '.000')) + ')' + String.fromCharCode(10);
          gextras+='O - Geo Chart at (' + (('' + latdeg).indexOf('.') != -1 ? ('' + latdeg) : ('' + latdeg + '.000')) + ',' + (('' + longdeg).indexOf('.') != -1 ? ('' + longdeg) : ('' + longdeg + '.000')) + ')';
  if (storedsuffs.indexOf('~' + lpw(lastsuff) + '`' + gextras) == -1 && storedsuffs.indexOf('~' + lpw(lastsuff) + '`|') == -1) {
     storedsuffs+='~' + lpw(lastsuff) + '`' + gextras + '|';
  }
          storedsuffs=storedsuffs.replace('~' + lpw(lastsuff) + '`|', '~' + lpw(lastsuff) + '`' + gextras + '|');
     if (window.opener) {
       window.opener.putgextras(gextras, rdescis);
     } else if (window.parent) {
       parent.putgextras(gextras, rdescis);
     }
          document.getElementById('placegeo').value='';
   } else if (document.getElementById('placegeo').value == ' ') {
          gextras='';
     if (window.opener) {
       window.opener.putgextras(gextras, rdescis);
     } else if (window.parent) {
       parent.putgextras(gextras, rdescis);
     }
   }
   if (rdescis != lastplace && lastplace.trim() != '') { rdescis=lastplace;  }
   if ((1 == 1 || rcodeis.trim()) != '' && rdescis.trim() != '') {
      if (gextras.trim() == '' && storedsuffs.indexOf('~' + lpw(rdescis) + '`') != -1) {
      gextras=storedsuffs.split('~' + lpw(rdescis) + '`')[1].split('`')[0].split('~')[0]; //.split('|')[0];
      }
      var rans=null; //prompt('What do you want to do with region ' + rdescis + '? ' + String.fromCharCode(10) + String.fromCharCode(10) + 'W - Wikipedia look up ' + String.fromCharCode(10) + 'Y - YouTube look up ' + String.fromCharCode(10) + 'G - Google look up ' + String.fromCharCode(10) + 'T - TimeZone look up ' + String.fromCharCode(10) + 'J - GeoJson look up ' + String.fromCharCode(10) + 'I - Image Chart look up ' + String.fromCharCode(10) + gextras, '');
      if (gextras == '') {
      rans=prompt('What do you want to do with region ' + rdescis + '? ' + String.fromCharCode(10) + String.fromCharCode(10) + 'W - Wikipedia look up ' + StringfromCharCode(6) + 'Y - YouTube look up ' + String.fromCharCode(10) + 'G - Google look up ' + StringfromCharCode(11) + 'T - TimeZone look up ' + String.fromCharCode(10) + 'J - GeoJson look up ' + StringfromCharCode(9) + 'I - Image Chart look up ' + String.fromCharCode(10) + String.fromCharCode(10) + gextras, '');
      } else {
      // Thanks to https://stackoverflow.com/questions/17779744/regular-expression-to-get-a-string-between-parentheses-in-javascript for regex below ...
      rans=prompt('What to do with ' + rdescis + (' at (' + (('' + latdeg).indexOf('.') != -1 ? ('' + latdeg) : ('' + latdeg + '.000')) + ',' + (('' + longdeg).indexOf('.') != -1 ? ('' + longdeg) : ('' + longdeg + '.000')) + ') ? ').replace(' at (-999,-999) ?', '?').replace(' at (-999.000,-999.000) ?', '?') + String.fromCharCode(10) + String.fromCharCode(10) + 'W - Wikipedia look up ' + StringfromCharCode(6) + 'Y - YouTube look up ' + String.fromCharCode(10) + 'G - Google look up ' + StringfromCharCode(11) + 'T - TimeZone look up ' + String.fromCharCode(10) + 'J - GeoJson look up ' + StringfromCharCode(9) + 'I - Image Chart look up ' + String.fromCharCode(10) + gextras.replace(/\(([^)]+)\)/g, '()').replace('(' + latdeg + ',' + longdeg + ')','()').replace('(' + latdeg + ',' + longdeg + ')','()').replace('(' + latdeg + ',' + longdeg + ')','()').replace('(' + latdeg + ',' + longdeg + ')','()').replace('(' + latdeg + ',' + longdeg + ')','()').replace('(' + latdeg + ',' + longdeg + ')','()').replace('(' + latdeg + ',' + longdeg + ')','()').replace('(' + latdeg + ',' + longdeg + ')','()').replace('(' + latdeg + ',' + longdeg + ')','()').replace('(' + latdeg + ',' + longdeg + ')','()').replace('(' + ('' + latdeg).replace('.000','') + ',' + ('' + longdeg).replace('.000','') + ')','()').replace('(' + ('' + latdeg).replace('.000','') + ',' + ('' + longdeg).replace('.000','') + ')','()').replace('(' + ('' + latdeg).replace('.000','') + ',' + ('' + longdeg).replace('.000','') + ')','()').replace('(' + ('' + latdeg).replace('.000','') + ',' + ('' + longdeg).replace('.000','') + ')','()').replace('(' + ('' + latdeg).replace('.000','') + ',' + ('' + longdeg).replace('.000','') + ')','()').replace('(' + ('' + latdeg).replace('.000','') + ',' + ('' + longdeg).replace('.000','') + ')','()').replace('(' + ('' + latdeg).replace('.000','') + ',' + ('' + longdeg).replace('.000','') + ')','()').replace('(' + ('' + latdeg).replace('.000','') + ',' + ('' + longdeg).replace('.000','') + ')','()').replace('(' + ('' + latdeg).replace('.000','') + ',' + ('' + longdeg).replace('.000','') + ')','()').replace('(' + ('' + latdeg).replace('.000','') + ',' + ('' + longdeg).replace('.000','') + ')','()'), '');
      }
      if (rans == null) { rans=' '; } else if (rans.trim() != '') { rans+=gextras; }
      gextras='';
      if ((rans + ' ').toUpperCase().substring(0,1) == 'W') {
         window.open('//wikipedia.org/wiki/' + encodeURIComponent(rdescis.replace(/\ \(/g,', ').replace(/\)$/g,'')).replace(/\%20/g,'_'),'_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'Y') {
         window.open('//www.rjmprogramming.com.au/HTMLCSS/karaoke_youtube_api.htm?emoji=on&nokaraoke=y&youtubeid=' + encodeURIComponent('           ' + rdescis.replace(/\ \(/g,', ').replace(/\)$/g,'')),'_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'G') {
         window.open('//www.google.com/search?q=' + encodeURIComponent(rdescis.replace(/\ \(/g,', ').replace(/\)$/g,'')) + '&tbm=isch','_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'I' && window.opener) {
         window.opener.tryit();
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'I' && window.top != window.self) {
         top.tryit();
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'T' && eval(('' + document.getElementById('myp').getAttribute('data-fc')).length) == 2) {
         window.open('//www.rjmprogramming.com.au/PHP/tz_places.php?iso=' + document.getElementById('myp').getAttribute('data-fc').toUpperCase(),'_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'A' && rans.indexOf(' (') != -1) {  // Airports
         window.open('//www.rjmprogramming.com.au/HTMLCSS/intair.php?num=3&lat=' + latdeg + '&long=' + longdeg + '&spawn=' + encodeURIComponent('//www.rjmprogramming.com.au/PHP/Map/map.php?title=' + maybenot(document.getElementById('myp').getAttribute('data-fc').toUpperCase(),rdescis) + ';' + encodeURIComponent(rdescis) + '%' + '20and%' + '20Airports&onclick=y&justmenu=y&label=[%' + '27Lat%' + '27,&value=%' + '27Lon%' + '27,%' + '27Name%' + '27]&data=,' + '[' + latdeg + ',' + longdeg + ',~' + encodeURIComponent(rdescis).replace(/\-/g,'%' + '2d').replace(/\#/g,'%' + '23') + '~]'),'_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'P' && rans.indexOf(' (') != -1) {  // Ports
         window.open('//www.rjmprogramming.com.au/HTMLCSS/intair.php?num=4&lat=' + latdeg + '&long=' + longdeg + '&port=y&spawn=' + encodeURIComponent('//www.rjmprogramming.com.au/PHP/Map/map.php?title=' + maybenot(document.getElementById('myp').getAttribute('data-fc').toUpperCase(),rdescis) + ';' + encodeURIComponent(rdescis) + '%' + '20and%' + '20Ports&onclick=y&justmenu=y&label=[%' + '27Lat%' + '27,&value=%' + '27Lon%' + '27,%' + '27Name%' + '27]&data=,' + '[' + latdeg + ',' + longdeg + ',~' + encodeURIComponent(rdescis).replace(/\-/g,'%' + '2d').replace(/\#/g,'%' + '23') + '~]'),'_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'S' && rans.indexOf(' (') != -1) {  // Sun Angle
         window.open('//www.rjmprogramming.com.au/PHP/SunAngle/sun_angle_now_at.php?latd=' + ('' + latdeg).split('.')[0] + '&latm=' + Math.round(eval(eval('0.' + ('' + latdeg + '.0').split('.')[1]) * 60)) + '&lats=0&longd=' + ('' + longdeg).split('.')[0] + '&longm=' + Math.round(eval(eval('0.' + ('' + longdeg + '.0').split('.')[1]) * 60)) + '&longs=0&from=from&done=y','_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'M' && rans.indexOf(' (') != -1) {  // Moon Angle
         window.open('//www.rjmprogramming.com.au/PHP/MoonAngle/moon_angle_now_at.php?latd=' + ('' + latdeg).split('.')[0] + '&latm=' + Math.round(eval(eval('0.' + ('' + latdeg + '.0').split('.')[1]) * 60)) + '&lats=0&longd=' + ('' + longdeg).split('.')[0] + '&longm=' + Math.round(eval(eval('0.' + ('' + longdeg + '.0').split('.')[1]) * 60)) + '&longs=0&from=from&done=y','_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'C' && rans.indexOf(' (') != -1) {  // Coriolis Effect
         window.open('//www.rjmprogramming.com.au/PHP/Coriolis/coriolis_force_at.php?latd=' + ('' + latdeg).split('.')[0] + '&latm=' + Math.round(eval(eval('0.' + ('' + latdeg + '.0').split('.')[1]) * 60)) + '&lats=0&longd=' + ('' + longdeg).split('.')[0] + '&longm=' + Math.round(eval(eval('0.' + ('' + longdeg + '.0').split('.')[1]) * 60)) + '&longs=0&from=from&done=y','_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'E' && rans.indexOf(' (') != -1) {  // Google Earth
         window.open('//earth.google.com/web/@' + ('+' + latdeg).replace('+-','-') + (',+' + longdeg).replace('+-','-') + ',328.51120179a,63169669.71505167d,1y,0h,0t,0r','_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'O' && rans.indexOf(' (') != -1) {  // Geo Chart
         window.open('//www.rjmprogramming.com.au/PHP/GeoChart/geo_chart.php' + '?title=' + maybenot(document.getElementById('myp').getAttribute('data-fc').toUpperCase(),rdescis) + ';' + encodeURIComponent(rdescis).replace(/\-/g,'%' + '2d').replace(/\#/g,'%' + '23') + '&aregexographicals=y&aregeographicals=&width=500&height=312&onclick=y&country=Places&popularity=&data=%20[' + latdeg + '|' + longdeg + '|~' + encodeURIComponent(rdescis).replace(/\-/g,'%' + '2d').replace(/\#/g,'%' + '23') + '~,2]','_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'J' && eval(('' + document.getElementById('myp').getAttribute('data-fc')).length) == 2) {  // GeoJSON
         //window.open('//www.rjmprogramming.com.au/HTMLCSS/countries.html','ifcountries','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
 //alert(1);
         twomw=document.getElementById('myp').getAttribute('data-fc').substring(0,2).toUpperCase();
         document.getElementById('placegeo').value='' + latdeg + ',' + longdeg;
         document.getElementById('placegeo').title='';
         if ((latdeg < -990 && longdeg < -990) || gextras.trim() == '') {
              jjans=jjans + '     ';
         }
 //alert(11);
         if (sofararealist.indexOf('|' + ('' + twomw.substring(0,2).toUpperCase() + '  ').toUpperCase().substring(0,2).trim() + '|') == -1) {
         sofararealist+=('' + twomw.substring(0,2).toUpperCase() + '  ').toUpperCase().substring(0,2).trim() + '|';
         }
 //alert(111);
         //document.getElementById('ifcountries').src='//www.rjmprogramming.com.au/HTMLCSS/countries.html?' + (Math.max(lastiizoom,1) == 1 ? zoomword + '=' + Math.max(lastiizoom,1) : 'zoom=' + Math.max(lastiizoom,1)) + '&' + refreshword + '=' + Math.floor(Math.random() * 198767564);
         //document.getElementById('ifcountries').src='//www.rjmprogramming.com.au/HTMLCSS/countries.html?' + (Math.max(lastiizoom,1) == 1 ? zoomword + '=' + Math.max(lastiizoom,1) : 'zoom=' + Math.max(lastiizoom,1)) + '&' + refreshword + '=' + Math.floor(Math.random() * 198767564);
         if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i) && document.getElementById('ifcountries').src.indexOf('?') != -1 && document.getElementById('ifcountries').src.indexOf('/countries.') != -1) {
         document.getElementById('placegeo').value='';
         document.getElementById('placegeo').title='' + latdeg + ',' + longdeg;
         sofararealist+=('' + lastcode + '  ').toUpperCase().substring(0,2).trim() + '|';
                       zoomword='zoom';
                       refreshword='refresh';
         document.getElementById('ifcountries').src+=lhit('#' + (Math.max(lastiizoom,1) == 1 ? zoomword + '=' + Math.max(lastiizoom,1) : 'zoom=' + Math.max(lastiizoom,1)) + '&' + refreshword + '=' + Math.floor(Math.random() * 198767564));
         } else {         
         document.getElementById('ifcountries').src='//www.rjmprogramming.com.au/HTMLCSS/countries.html?' + (Math.max(lastiizoom,1) == 1 ? zoomword + '=' + Math.max(lastiizoom,1) : 'zoom=' + Math.max(lastiizoom,1)) + '&' + refreshword + '=' + Math.floor(Math.random() * 198767564);
         }
         lastr=rdescis;
 //alert(1111);
         if ((latdeg < -990 && longdeg < -990) || blurbone == '') {
         if (confirm('Taking you to ' + decodeURIComponent(rdescis) + ' on world map now' + blurbone + ' ...')) {
         document.getElementById('ifcountries').style.display='block';
         //document.getElementById('more').style.display='none';
         location.href='#ifcountries';
         }
         } else {
 //alert(11111);
         jjans=jjans.replace(/\ \ \ \ \ $/g,'');
 jjans=prompt('Taking you to ' + decodeURIComponent(rdescis) + ' on world map now' + blurbtwo + ' ...', '' + jjans);
 if (jjans != null) {
 //alert(11111);
         document.getElementById('ifcountries').style.display='block';
         //document.getElementById('more').style.display='none';
         location.href='#ifcountries';
 }
      }
      }  // new

   }
  }


  function coordit(xiois) {
       var xaconto = (xiois.contentWindow || xiois.contentDocument);
   //alert(11);
       if (xaconto != null) {
   //alert('111 ' + xiois.src);
       if (xaconto.document) { xaconto = xaconto.document; }
    //alert('1111 ' + xaconto.body.innerHTML);
    
       if (xaconto.body.innerHTML.indexOf('>Coordinates') != -1) {
        var subpart=xaconto.body.innerHTML.split('>Coordinates')[1];
        var latdeg=-999, longdeg=-999, latmin=0, longmin=0, latsec=0, longsec=0, sparelat='', sparelong='';
        if (subpart.indexOf('\"latitude\"') != -1 && subpart.indexOf('\"longitude\"') != -1) {
          // <span class=latitude>40°11′N</span>
          latdeg=subpart.split('\"latitude\"')[1].split('>')[1].split(\"°\")[0].split('<')[0];
          console.log('latdeg=' + latdeg);
          sparelat=subpart.split('\"latitude\"')[1].split('>')[1].split('<')[0].slice(-1);
          console.log('sparelat=' + sparelat);
          latmin=subpart.split('\"latitude\"')[1].split('>')[1].split('<')[0].substring(eval(1 + eval('' + latdeg.length))).split(\"′\")[0].split(sparelat)[0].split('<')[0];
          console.log('latmin=' + latmin);
          if (sparelat == 'S') {  latdeg=eval(eval(eval(-1 * latmin) / 60) - latdeg); } else { latdeg+=eval(eval('' + latmin) / 60) }
          console.log('Latdeg=' + latdeg);

          longdeg=subpart.split('\"longitude\"')[1].split('>')[1].split(\"°\")[0].split('<')[0];
          sparelong=subpart.split('\"longitude\"')[1].split('>')[1].split('<')[0].slice(-1);
          longmin=subpart.split('\"longitude\"')[1].split('>')[1].split('<')[0].substring(eval(1 + eval('' + longdeg.length))).split(\"′\")[0].split(sparelong)[0].split('<')[0];
          if (sparelong == 'W') {  longdeg=eval(eval(eval(-1 * longmin) / 60) - longdeg); } else { longdeg+=eval(eval('' + longmin) / 60) }

          gextras='A - Airports Closest to (' + latdeg + ',' + longdeg + ')' + String.fromCharCode(10);
          gextras+='S - Sun Angle at Noon at (' + latdeg + ',' + longdeg + ')' + String.fromCharCode(10);
          gextras+='M - Moon Angle at (' + latdeg + ',' + longdeg + ')' + String.fromCharCode(10);
          gextras+='C - Coriolis Effect at (' + latdeg + ',' + longdeg + ')' + String.fromCharCode(10);
          gextras+='E - Google Earth at (' + latdeg + ',' + longdeg + ')' + String.fromCharCode(10);
          gextras+='P - Ports Closest to (' + latdeg + ',' + longdeg + ')' + String.fromCharCode(10);
          gextras+='O - Geo Chart at (' + latdeg + ',' + longdeg + ')' + String.fromCharCode(10);
          gextras='A - Airports Closest to (' + (('' + latdeg).indexOf('.') != -1 ? ('' + latdeg) : ('' + latdeg + '.000')) + ',' + (('' + longdeg).indexOf('.') != -1 ? ('' + longdeg) : ('' + longdeg + '.000')) + ')' + StringfromCharCode(2);
          gextras+='S - Sun Angle at Noon at (' + (('' + latdeg).indexOf('.') != -1 ? ('' + latdeg) : ('' + latdeg + '.000')) + ',' + (('' + longdeg).indexOf('.') != -1 ? ('' + longdeg) : ('' + longdeg + '.000')) + ')' + String.fromCharCode(10);
          gextras+='M - Moon Angle at (' + (('' + latdeg).indexOf('.') != -1 ? ('' + latdeg) : ('' + latdeg + '.000')) + ',' + (('' + longdeg).indexOf('.') != -1 ? ('' + longdeg) : ('' + longdeg + '.000')) + ')' + StringfromCharCode(9);
          gextras+='C - Coriolis Effect at (' + (('' + latdeg).indexOf('.') != -1 ? ('' + latdeg) : ('' + latdeg + '.000')) + ',' + (('' + longdeg).indexOf('.') != -1 ? ('' + longdeg) : ('' + longdeg + '.000')) + ')' + String.fromCharCode(10);
          gextras+='E - Google Earth at (' + (('' + latdeg).indexOf('.') != -1 ? ('' + latdeg) : ('' + latdeg + '.000')) + ',' + (('' + longdeg).indexOf('.') != -1 ? ('' + longdeg) : ('' + longdeg + '.000')) + ')' + StringfromCharCode(8);
          gextras+='P - Ports Closest to (' + (('' + latdeg).indexOf('.') != -1 ? ('' + latdeg) : ('' + latdeg + '.000')) + ',' + (('' + longdeg).indexOf('.') != -1 ? ('' + longdeg) : ('' + longdeg + '.000')) + ')' + String.fromCharCode(10);
          gextras+='O - Geo Chart at (' + (('' + latdeg).indexOf('.') != -1 ? ('' + latdeg) : ('' + latdeg + '.000')) + ',' + (('' + longdeg).indexOf('.') != -1 ? ('' + longdeg) : ('' + longdeg + '.000')) + ')';
  if (storedsuffs.indexOf('~' + lpw(lastsuff) + '`' + gextras) == -1 && storedsuffs.indexOf('~' + lpw(lastsuff) + '`|') == -1) {
     storedsuffs+='~' + lpw(lastsuff) + '`' + gextras + '|';
  }
          storedsuffs=storedsuffs.replace('~' + lpw(lastsuff) + '`|', '~' + lpw(lastsuff) + '`' + gextras + '|');
     if (window.opener) {
       window.opener.putgextras(gextras, grdescis);
     } else if (window.parent) {
       parent.putgextras(gextras, grdescis);
     }
         return true;
          
        }
       
       } else {
         gextras='';
     if (window.opener) {
       window.opener.putgextras(gextras, grdescis);
     } else if (window.parent) {
       parent.putgextras(gextras, grdescis);
     }
       }
       }
         return true;
  }
   
 
  function gmenu(rcodeis, erdescis) {
   var rdescis=decodeURIComponent(erdescis);
      var latdeg=-999, longdeg=-999;
   if (rdescis != lastplace && lastplace.trim() != '') { rdescis=lastplace;  }
      if (gextras.indexOf(' (') != -1) {
       if (gextras.split(' (')[1].split(')')[0].indexOf(',') != -1) {
        latdeg=eval('' + gextras.split(' (')[1].split(')')[0].split(',')[0]);
        longdeg=eval('' + gextras.split(' (')[1].split(')')[0].split(',')[1]);
       }
      } else if (storedsuffs.indexOf('~' + lpw(lastplace) + '`') != -1 && storedsuffs.indexOf('~' + lpw(lastplace) + '`|') == -1) {
       gextras=storedsuffs.split('~' + lpw(lastplace) + '`')[1].split('`')[0].split('~')[0]; //.split('|')[0];
       if (gextras.split(' (')[1].split(')')[0].indexOf(',') != -1) {
        latdeg=eval('' + gextras.split(' (')[1].split(')')[0].split(',')[0]);
        longdeg=eval('' + gextras.split(' (')[1].split(')')[0].split(',')[1]);
       }
      }
   if ((1 == 1 || rcodeis.trim()) != '' && rdescis.trim() != '') {
      grcodeis=rcodeis;
      gerdescis=erdescis;
      grdescis=rdescis;
      //setTimeout(latergmenu, 8000);
      if (lastsuff != encodeURIComponent(rdescis.replace(/\ \(/g,', ').replace(/\)$/g,'')).replace(/\%20/g,'_') && storedsuffs.indexOf('~' + lpw(rdescis) + '`') == -1) {
      gextras='';
      lastsuff=encodeURIComponent(rdescis.replace(/\ \(/g,', ').replace(/\)$/g,'')).replace(/\%20/g,'_');
      storedsuffs+='~' + lpw(rdescis) + '`' + '|';
      if (storedsuffs.indexOf('~' + lpw(rdescis) + '`') != -1 && storedsuffs.indexOf('~' + lpw(rdescis) + '`|') == -1) {
      gextras=storedsuffs.split('~' + lpw(rdescis) + '`')[1].split('`')[0].split('~')[0]; //.split('|')[0];
      //alert('rdescis=' + rdescis + ' and storedsuffs=' + storedsuffs);
      document.getElementById('placegeo').value=storedsuffs.split('~' + lpw(rdescis) + '`')[1].split(' (')[1].split(')')[0];
      document.getElementById('placegeo').title='';
      setTimeout(latergmenu, 80);
      } else if (1 == 11) {
      document.getElementById('ici').style.cursor='progress';
      setTimeout(latergmenu, 8000);
    myxhr = new XMLHttpRequest();
    myxhr.open('GET', '//en.wikipedia.org/wiki/' + encodeURIComponent(rdescis.replace(/\ \(/g,', ').replace(/\)$/g,'')).replace(/\%20/g,'_'), true);
    myxhr.responseType = 'text';
    myxhr.onreadystatechange=stateChanged;
    myxhr.send(null);
      } else if (11 == 11) {
      document.getElementById('ici').style.cursor='progress';
      setTimeout(latergmenu, 8000);
      document.getElementById('placegeo').value=' ';
      document.getElementById('wif').src='/PHP/fgc/index.php?placegeo=' + encodeURIComponent(rdescis.replace(/\ \(/g,', ').replace(/\)$/g,'')).replace(/\%20/g,'_');
      } else {
      document.getElementById('ici').style.cursor='progress';
      setTimeout(latergmenu, 8000);
      document.getElementById('wif').src='//en.wikipedia.org/wiki/' + encodeURIComponent(rdescis.replace(/\ \(/g,', ').replace(/\)$/g,'')).replace(/\%20/g,'_');
      }
      } else {
      if (storedsuffs.indexOf('~' + lpw(rdescis) + '`') != -1) {
      gextras=storedsuffs.split('~' + lpw(rdescis) + '`')[1].split('`')[0].split('~')[0];
      }

      var rans=null; //prompt('What do you want to do with region ' + rdescis + '? ' + String.fromCharCode(10) + String.fromCharCode(10) + 'W - Wikipedia look up ' + String.fromCharCode(10) + 'Y - YouTube look up ' + String.fromCharCode(10) + 'G - Google look up ' + String.fromCharCode(10) + 'T - TimeZone look up ' + String.fromCharCode(10) + 'J - GeoJson look up ' + StringfromCharCode(10) + 'I - Image Chart look up ' + String.fromCharCode(10) + gextras, '');
      if (gextras == '') {
      rans=prompt('What do you want to do with region ' + rdescis + '? ' + String.fromCharCode(10) + String.fromCharCode(10) + 'W - Wikipedia look up ' + StringfromCharCode(6) + 'Y - YouTube look up ' + String.fromCharCode(10) + 'G - Google look up ' + StringfromCharCode(11) + 'T - TimeZone look up ' + String.fromCharCode(10) + 'J - GeoJson look up ' + StringfromCharCode(9) + 'I - Image Chart look up ' + String.fromCharCode(10) + String.fromCharCode(10) + gextras, '');
      } else {
      //alert(storedsuffs);
      rans=prompt('What to do with ' + rdescis + (' at (' + latdeg + ',' + longdeg + ') ? ').replace(' at (-999,-999) ?', '?').replace(' at (-999.000,-999.000) ?', '?') + String.fromCharCode(10) + String.fromCharCode(10) + 'W - Wikipedia look up ' + StringfromCharCode(6) + 'Y - YouTube look up ' + String.fromCharCode(10) + 'G - Google look up ' + StringfromCharCode(11) + 'T - TimeZone look up ' + String.fromCharCode(10) + 'J - GeoJson look up ' + StringfromCharCode(9) + 'I - Image Chart look up ' + String.fromCharCode(10) + gextras.replace(/\(([^)]+)\)/g, '()').replace('(' + latdeg + ',' + longdeg + ')','()').replace('(' + latdeg + ',' + longdeg + ')','()').replace('(' + latdeg + ',' + longdeg + ')','()').replace('(' + latdeg + ',' + longdeg + ')','()').replace('(' + latdeg + ',' + longdeg + ')','()').replace('(' + latdeg + ',' + longdeg + ')','()').replace('(' + latdeg + ',' + longdeg + ')','()').replace('(' + latdeg + ',' + longdeg + ')','()').replace('(' + latdeg + ',' + longdeg + ')','()').replace('(' + latdeg + ',' + longdeg + ')','()'), '');
      }
      if (rans == null) { rans=' '; } else if (rans.trim() != '') { rans+=gextras; }
      if ((rans + ' ').toUpperCase().substring(0,1) == 'W') {
         window.open('//wikipedia.org/wiki/' + encodeURIComponent(rdescis.replace(/\ \(/g,', ').replace(/\)$/g,'')).replace(/\%20/g,'_'),'_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'Y') {
         window.open('//www.rjmprogramming.com.au/HTMLCSS/karaoke_youtube_api.htm?emoji=on&nokaraoke=y&youtubeid=' + encodeURIComponent('           ' + rdescis.replace(/\ \(/g,', ').replace(/\)$/g,'')),'_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'G') {
         window.open('//www.google.com/search?q=' + encodeURIComponent(rdescis.replace(/\ \(/g,', ').replace(/\)$/g,'')) + '&tbm=isch','_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'T' && eval(('' + document.getElementById('myp').getAttribute('data-fc')).length) == 2) {
         window.open('//www.rjmprogramming.com.au/PHP/tz_places.php?iso=' + document.getElementById('myp').getAttribute('data-fc').toUpperCase(),'_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'A' && rans.indexOf(' (') != -1) {  // Airports
         window.open('//www.rjmprogramming.com.au/HTMLCSS/intair.php?num=3&lat=' + latdeg + '&long=' + longdeg + '&spawn=' + encodeURIComponent('//www.rjmprogramming.com.au/PHP/Map/map.php?title=' + maybenot(document.getElementById('myp').getAttribute('data-fc').toUpperCase(),rdescis) + ';' + encodeURIComponent(rdescis) + '%' + '20and%' + '20Airports&onclick=y&justmenu=y&label=[%' + '27Lat%' + '27,&value=%' + '27Lon%' + '27,%' + '27Name%' + '27]&data=,' + '[' + latdeg + ',' + longdeg + ',~' + encodeURIComponent(rdescis).replace(/\-/g,'%' + '2d').replace(/\#/g,'%' + '23') + '~]'),'_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'P' && rans.indexOf(' (') != -1) {  // Ports
         window.open('//www.rjmprogramming.com.au/HTMLCSS/intair.php?num=4&lat=' + latdeg + '&long=' + longdeg + '&port=y&spawn=' + encodeURIComponent('//www.rjmprogramming.com.au/PHP/Map/map.php?title=' + maybenot(document.getElementById('myp').getAttribute('data-fc').toUpperCase(),rdescis) + ';' + encodeURIComponent(rdescis) + '%' + '20and%' + '20Ports&onclick=y&justmenu=y&label=[%' + '27Lat%' + '27,&value=%' + '27Lon%' + '27,%' + '27Name%' + '27]&data=,' + '[' + latdeg + ',' + longdeg + ',~' + encodeURIComponent(rdescis).replace(/\-/g,'%' + '2d').replace(/\#/g,'%' + '23') + '~]'),'_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'S' && rans.indexOf(' (') != -1) {  // Sun Angle
         window.open('//www.rjmprogramming.com.au/PHP/SunAngle/sun_angle_now_at.php?latd=' + ('' + latdeg).split('.')[0] + '&latm=' + Math.round(eval(eval('0.' + ('' + latdeg + '.0').split('.')[1]) * 60)) + '&lats=0&longd=' + ('' + longdeg).split('.')[0] + '&longm=' + Math.round(eval(eval('0.' + ('' + longdeg + '.0').split('.')[1]) * 60)) + '&longs=0&from=from&done=y','_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'M' && rans.indexOf(' (') != -1) {  // Moon Angle
         window.open('//www.rjmprogramming.com.au/PHP/MoonAngle/moon_angle_now_at.php?latd=' + ('' + latdeg).split('.')[0] + '&latm=' + Math.round(eval(eval('0.' + ('' + latdeg + '.0').split('.')[1]) * 60)) + '&lats=0&longd=' + ('' + longdeg).split('.')[0] + '&longm=' + Math.round(eval(eval('0.' + ('' + longdeg + '.0').split('.')[1]) * 60)) + '&longs=0&from=from&done=y','_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'C' && rans.indexOf(' (') != -1) {  // Coriolis Effect
         window.open('//www.rjmprogramming.com.au/PHP/Coriolis/coriolis_force_at.php?latd=' + ('' + latdeg).split('.')[0] + '&latm=' + Math.round(eval(eval('0.' + ('' + latdeg + '.0').split('.')[1]) * 60)) + '&lats=0&longd=' + ('' + longdeg).split('.')[0] + '&longm=' + Math.round(eval(eval('0.' + ('' + longdeg + '.0').split('.')[1]) * 60)) + '&longs=0&from=from&done=y','_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'E' && rans.indexOf(' (') != -1) {  // Google Earth
         window.open('//earth.google.com/web/@' + ('+' + latdeg).replace('+-','-') + (',+' + longdeg).replace('+-','-') + ',328.51120179a,63169669.71505167d,1y,0h,0t,0r','_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      } else if ((rans + ' ').toUpperCase().substring(0,1) == 'O' && rans.indexOf(' (') != -1) {  // Geo Chart
         window.open('//www.rjmprogramming.com.au/PHP/GeoChart/geo_chart.php' + '?title=' + maybenot(document.getElementById('myp').getAttribute('data-fc').toUpperCase(),rdescis) + ';' + encodeURIComponent(rdescis).replace(/\-/g,'%' + '2d').replace(/\#/g,'%' + '23') + '&aregexographicals=y&aregeographicals=&width=500&height=312&onclick=y&country=Places&popularity=&data=%20[' + latdeg + '|' + longdeg + '|~' + encodeURIComponent(rdescis).replace(/\-/g,'%' + '2d').replace(/\#/g,'%' + '23') + '~,2]','_blank','top=' + ys + ',left=' + xs + ',width=600,height=' + Math.max(100,eval(-100 + screenheight - ys)));
      }
      
      
   }
   }
  }

function maybenot(inmaybe, vspl) {
  var fontarr=document.getElementsByTagName('font');
  for (var ifo=0; ifo<fontarr.length; ifo++) {
     if (fontarr[ifo].title == vspl) {
        return fontarr[ifo].innerHTML.substring(0,2);
     }
  }
  return inmaybe;
}

  
  function thisonl() {
   //alert(21);
   elem = document.getElementById('mycanvas');
   //alert(211);
   context = elem.getContext('2d');
   //alert(2111);
   setTimeout(canvasize, 5000);
   //alert(21111);
  }
  
  function canvasize() { //(ioel) {
   var ioel=document.getElementById('ici');
   //alert(1);
   context.drawImage(document.getElementById('ici'), 0, 0);
   //document.getElementById('mycanvas').style.display='block';
   //alert(11);
   document.getElementById('moreturnxytoparent').value=elem.toDataURL('image/jpeg', 0.4);
   //alert('111 ' + document.getElementById('moreturnxytoparent').value.length);
   return true;
  }
  
  function lfdfn(inoh) {
    var bits=inoh.split(' data-fcn=\"');
    if (document.getElementById('ici').title == origtitle && eval('' + bits.length) > 1) {
      origtitle=origtitle.replace('relevant region', 'relevant ' + bits[1].split('\"')[0] + ' region');
      document.getElementById('ici').title=origtitle;
    }
    return inoh;
  }
  
   function stateChanged() {
 if (myxhr.readyState == 4) {
  if (myxhr.status == 200) {
   console.log('myxhr=' + myxhr);
        var subpart=myxhr.responseText.split('>Coordinates')[1];
        var latdeg=-999, longdeg=-999, latmin=0, longmin=0, latsec=0, longsec=0, sparelat='', sparelong='';
        if (subpart.indexOf('\"latitude\"') != -1 && subpart.indexOf('\"longitude\"') != -1) {
          latdeg=subpart.split('\"latitude\"')[1].split('>')[1].split(\"°\")[0].split('<')[0];
          sparelat=subpart.split('\"latitude\"')[1].split('>')[1].split('<')[0].slice(-1);
          latmin=subpart.split('\"latitude\"')[1].split('>')[1].split('<')[0].substring(eval(1 + eval('' + latdeg.length))).split(\"′\")[0].split(sparelat)[0].split('<')[0];
          if (sparelat == 'S') {  latdeg=eval(eval(eval(-1 * latmin) / 60) - latdeg); } else { latdeg+=eval(eval('' + latmin) / 60) }

          longdeg=subpart.split('\"longitude\"')[1].split('>')[1].split(\"°\")[0].split('<')[0];
          sparelong=subpart.split('\"longitude\"')[1].split('>')[1].split('<')[0].slice(-1);
          longmin=subpart.split('\"longitude\"')[1].split('>')[1].split('<')[0].substring(eval(1 + eval('' + longdeg.length))).split(\"′\")[0].split(sparelong)[0].split('<')[0];
          if (sparelong == 'W') {  longdeg=eval(eval(eval(-1 * longmin) / 60) - longdeg); } else { longdeg+=eval(eval('' + longmin) / 60) }

          gextras='A - Airports Closest to (' + latdeg + ',' + longdeg + ')' + String.fromCharCode(10);
          gextras+='S - Sun Angle at Noon at (' + latdeg + ',' + longdeg + ')' + String.fromCharCode(10);
          gextras+='M - Moon Angle at (' + latdeg + ',' + longdeg + ')' + String.fromCharCode(10);
          gextras+='C - Coriolis Effect at (' + latdeg + ',' + longdeg + ')' + String.fromCharCode(10);
          gextras+='E - Google Earth at (' + latdeg + ',' + longdeg + ')' + String.fromCharCode(10);
          gextras+='P - Ports Closest to (' + latdeg + ',' + longdeg + ')' + String.fromCharCode(10);
          gextras+='O - Geo Chart at (' + latdeg + ',' + longdeg + ')' + String.fromCharCode(10);
  if (storedsuffs.indexOf('~' + lpw(lastsuff) + '`' + gextras) == -1 && storedsuffs.indexOf('~' + lpw(lastsuff) + '`|') == -1) {
     storedsuffs+='~' + lpw(lastsuff) + '`' + gextras + '|';
  }
          storedsuffs=storedsuffs.replace('~' + lpw(lastsuff) + '`|', '~' + lpw(lastsuff) + '`' + gextras + '|');
     if (window.opener) {
       window.opener.putgextras(gextras, grdescis);
     } else if (window.parent) {
       parent.putgextras(gextras, grdescis);
     }
     }
  }
  }
  }

  function nospan() {
     if (('' + jjans).trim() == 'No Trip Planning') {
     document.getElementById('plots').innerHTML='';
     spancount=0;
     }
  }
  
  function sein(iz) {
    if (!zoomdone) {
      zoomdone=true;
      setInterval(rifcheck, 15000);
    }
    return iz;
  }
  
  function lhit(inh) {
    locationhash=inh;
    ifcheck(document.getElementById('ifcountries'));
    return inh;
  }
 
  function rifcheck() {
       var waszoom=1;
       var xif=-999, yif=-999, xxif=-999, yyif=-999;
       var xlatdeg=0, xlongdeg=0;
    if (9 == 9) {
          var iiizoom=lastiizoom;
          if (document.getElementById('ifcountries').src.indexOf('zoom=') == -1 && document.getElementById('ifcountries').src.indexOf('refresh=') == -1) {
          iiizoom=eval(2 * lastiizoom); //eval('' + zawconto.getzoom());
          }
          //alert('' + iiizoom + ' ' + lastiizoom + ' ' + document.getElementById('ifcountries').src);
          //alert('' + iiizoom);
            if (lastiizoom != iiizoom || (document.getElementById('ifcountries').src.indexOf('zoom=') != -1 && document.getElementById('ifcountries').src.indexOf('refresh=') != -1)) {
              var isp=0;
              var huhrect=document.getElementById('ifcountries').getBoundingClientRect();
              var ospancount=spancount;
              newone=eval(1 + spancount);
              while (document.getElementById('span' + isp)) {
                if (isp < ospancount) {
                waszoom=document.getElementById('span' + isp).getAttribute('data-zoom');
                if (waszoom != iiizoom) {
                //alert(67);
                  xlatdeg=eval('' + document.getElementById('span' + isp).getAttribute('data-geo').split(',')[0]);
                  xlongdeg=eval('' + document.getElementById('span' + isp).getAttribute('data-geo').split(',')[1]);
                //alert(167);
                  xxif=eval(iiizoom * eval(180 + eval('' + xlongdeg)));
                  yyif=eval(iiizoom * eval(90 - eval('' + xlatdeg)));
                //alert(1167);
                  if (1 == 1) {
            document.getElementById('plots').innerHTML+='<span id=sspan' + spancount + '><span oncontextmenu=\"event.stopPropagation(); event.preventDefault(); if (isdouble == 0) { storeaway(this); }\" data-zoom=\"' + iiizoom + '\" data-iframepos=\"' + huhrect.left + ',' + huhrect.top + '\" data-geo=\"' + xlatdeg + ',' + xlongdeg + '\" title=\"' + decodeURIComponent(document.getElementById('span' + isp).title) + '\" id=span' + spancount + ' style=\"font-style:bold;text-shadow:-1px 1px 1px #ff2d95;font-size:6px;margin:0 0 0 0;padding:0 0 0 0;z-index:2134;position:fixed;top:' + eval(eval('' + huhrect.top) + yyif) + 'px;left:' + eval(eval('' + huhrect.left) + xxif) + 'px;\">x</span></span>';
            nodiv(isp, spancount);
            spancount++;
            document.getElementById('span' + isp).style.display='none';
                  } else {
                  document.getElementById('span' + isp).style.top='' + eval(eval('' + huhrect.top) + yyif) + 'px';
                  document.getElementById('span' + isp).style.left='' + eval(eval('' + huhrect.left) + xxif) + 'px';
                  document.getElementById('span' + isp).setAttribute('data-zoom', '' + iiizoom);
                  document.getElementById('span' + isp).setAttribute('data-iframepos', '' + huhrect.left + ',' + huhrect.top);
                  document.getElementById('sspan' + isp).innerHTML=document.getElementById('span' + isp).outerHTML;
                //alert(document.getElementById('sspan' + isp).innerHTML);
                  }
                }
                }
                isp++;
              }

              lastiizoom=iiizoom;
              if (document.getElementById('ifcountries').src.indexOf('zoom=') == -1 && document.getElementById('ifcountries').src.indexOf('refresh=') == -1) {
                       zoomword='zoom';
                       refreshword='refresh';
                       if (document.getElementById('ifcountries')) {
                          document.getElementById('ifcountries').style.width='' + eval(2 * eval('' + document.getElementById('ifcountries').style.width.replace('px',''))) + 'px';
                          document.getElementById('ifcountries').style.height='' + eval(2 * eval('' + document.getElementById('ifcountries').style.height.replace('px',''))) + 'px';
                       }
                       document.getElementById('ifcountries').src='//www.rjmprogramming.com.au/HTMLCSS/countries.html?zoom=' + Math.max(lastiizoom,1) + '&refresh=' + Math.floor(Math.random() * 198767564);
              } else {
              //alert('There');
              //document.getElementById('more').style.left='' + eval(eval(360 * lastiizoom / 2) + eval('' + document.getElementById('more').style.left.replace('px',''))) + 'px';
            var arstart=[], iars=0, iiars=0, kkfound=false;
            var ars=zaconto.getElementsByTagName('area');
              //alert('' + ars.length + ' ' + sofararealist);
            for (iars=0; iars<ars.length; iars++) {
               while (sofararealist.indexOf('|' + ('' + ars[iars].getAttribute('data-iso2')) + '|') != -1) {
                 if (ars[iars].outerHTML.indexOf(' onclick=\"') != -1) {
                    if (9 == 9) {
                      arstart.push(('' + ars[iars].coords).substring(0,Math.min(100,('' + ars[iars].coords).length)));
                      ars[iars].oncontextmenu=function(event){  event.stopPropagation();  event.preventDefault();  return parent.geojsonrightclick(event,iizoom,isdouble);   };
                    } 
                 }
                 iars++;
                 //itwo='';
               }
               //if (sparear) { itwo='';  }
            }

            if (arstart.length > 0) {
            ars=zaconto.getElementsByTagName('div');
              //alert('' + ars.length + ' ' + sofararealist);
            for (iiars=0; iiars<arstart.length; iiars++) {
            kkfound=false;
            for (iars=0; iars<ars.length; iars++) {
               if (!kkfound) {
               if (('' + ars[iars].title).indexOf(arstart[iiars]) == 0) {
                  ars[iars].innerHTML=ars[iars].innerHTML.replace('lime','orange');
                  kkfound=true;
               }
               }
            }
            }
            
            }


            }
            }
    } else {
    zifcheck(document.getElementById('ifcountries'));
    }
    return true;
  }

function great_circle_bearing(talis, gnolis, latis, longis) {
    // Let ‘R’ be the radius of Earth,
    // ‘L’ be the longitude,
    // ‘θ’ be latitude,
    // ‘β‘ be Bearing.

 // Bearing from point A to B, can be calculated as,
 // β = atan2(X,Y),
 // where, X and Y are two quantities and can be calculated as:
 // X = cos θb * sin ∆L
 // Y = cos θa * sin θb – sin θa * cos θb * cos ∆L

       var ourbrg=eval(eval(360.0 + eval(eval(eval(180.0 / Math.PI) * Math.atan2(
       eval(eval('' + Math.cos(eval(Math.PI / 180.0) * eval('' + latis))) *
       eval('' + Math.sin(eval(Math.PI / 180.0) * eval(eval('' + longis) - eval('' + gnolis))))),
       eval(eval('' + Math.cos(eval(Math.PI / 180.0) * eval('' + talis))) *
       eval('' + Math.sin(eval(Math.PI / 180.0) * eval('' + latis)))) -
       eval(eval('' + Math.sin(eval(Math.PI / 180.0) * eval('' + talis))) *
       eval('' + Math.cos(eval(Math.PI / 180.0) * eval('' + latis))) *
       eval('' + Math.cos(eval(Math.PI / 180.0) * eval(eval('' + longis) - eval('' + gnolis)))))
       )))) % 360.0);

       return '' + ourbrg;
}

function great_circle_distance(talis, gnolis, latis, longis) {
  var ourdist=0.0;
  var rgnol=eval((gnolis) * Math.PI / 180.0);
  var rtal=eval((talis) * Math.PI / 180.0);
  var rlong=eval((longis) * Math.PI / 180.0);
  var rlat=eval((latis) * Math.PI / 180.0);
  var deltalong = Math.abs(eval(((gnolis)-(longis)) * Math.PI / 180.0));
  var acof = eval(Math.sin(rtal) * Math.sin(rlat)) + (Math.cos(rtal) * Math.cos(rlat) * Math.cos(deltalong)); // via //en.wikipedia.org/wiki/Great-circle_distance ... thanks
  ourdist = eval(Math.round((Math.acos(acof) * 6371000.0) + 0.00001) * 100) / 100;
  return '' + ourdist;
}

  function isdf() {
    console.log('nolineplease=' + nolineplease + ' and isdouble=' + isdouble);
    isdouble=0;
    blk='visible';
    nolineplease=false;
  }

  function storeaway(thisspano) {
    var lastspanoid=null;
    if (lastspano) { lastspanoid='' + lastspano.id;  }
    if (('' + thisspano.id).indexOf('sspan') == 0) { thisspano=document.getElementById(('' + thisspano.id).replace('sspan','span'));  }
    if (('' + lastspanoid) != ('' + thisspano.id) && ('' + thisspano.id).indexOf('span') == 0) {
       spanos.push(thisspano);
       lastspano=thisspano;
       thisspano.style.color='green';
       if (thisspano.title.indexOf('Right click ') != -1) {
       thisspano.innerHTML='&#128308;';
       } else {
       thisspano.innerHTML='&#10060;';
       }
       if (eval('' + spanos.length) > 1 && !nolineplease) {
         setTimeout(function(){ drawlinebetween(spanos[eval(-2 + spanos.length)], spanos[eval(-1 + spanos.length)]); }, 5000);
       }
    }
  }
  
  function drawlinebetween(spanoone, spanotwo) {
        var xneeds=[], yneeds=[], classbit='';
        if (nolineplease) { isdouble=0; nolineplease=false; return false; }
        if (('' + spanoone.id).indexOf('sspan') == 0) { spanoone=document.getElementById(('' + spanoone.id).replace('sspan','span'));  }
        if (('' + spanotwo.id).indexOf('sspan') == 0) { spanotwo=document.getElementById(('' + spanotwo.id).replace('sspan','span'));  }
        if (('' + spanoone.id).indexOf('span') == 0 && ('' + spanotwo.id).indexOf('span') == 0) {
        xneeds.push(eval('' + ('' + spanoone.style.left).replace('px','')));
        yneeds.push(eval('' + ('' + spanoone.style.top).replace('px','')));
        xneeds.push(eval('' + ('' + spanotwo.style.left).replace('px','')));
        yneeds.push(eval('' + ('' + spanotwo.style.top).replace('px','')));
        var divih='';
        if (Math.min(xneeds[0],xneeds[1]) == xneeds[0] && Math.min(yneeds[0],yneeds[1]) == yneeds[1]) { // thanks to https://stackoverflow.com/questions/18012420/draw-diagonal-lines-in-div-background-with-css
        classbit=' class=\"crossedtotl\" ';
        } else if (Math.min(xneeds[0],xneeds[1]) == xneeds[1] && Math.min(yneeds[0],yneeds[1]) == yneeds[0]) { // thanks to https://stackoverflow.com/questions/18012420/draw-diagonal-lines-in-div-background-with-css
        classbit=' class=\"crossedtotl\" ';
        } else {
        classbit=' class=\"crossedtotr\" ';
        }
        if (classbit == ' class=\"crossedtotl\" ') {
          divih=\"<svg width='100%' height='100%' viewBox='0 0 100 100' preserveAspectRatio='none'><line x1='100' y1='0' x2='0' y2='100' vector-effect='non-scaling-stroke' stroke='black' /></svg>\";
          classbit='';
        }
       var fcl='';
       var tcl='';
       if (spanoone.title.indexOf('Right click ') != -1) {
        spanoone.innerHTML='&#128308;';
        fcl=' from your right click ';
       } else {
        spanoone.innerHTML='&#10060;';
        fcl=' from ' + spanoone.title + ' ';
       }
       if (spanotwo.title.indexOf('Right click ') != -1) {
        spanotwo.innerHTML='&#128308;';
        tcl=' to your right click ';
        lastwo=\"//www.google.com/maps/dir/\" + spanoone.getAttribute('data-geo') + \"/\" + spanotwo.getAttribute('data-geo') + \"' + '#' + '\" + 'Leg' + fcl + tcl + ' heads off at ' + great_circle_bearing(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1]) + ' degrees for ' + eval(eval('' + great_circle_distance(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1])) / 1000.0) + ' kilometers';
        //document.getElementById('plots').innerHTML+='<div onclick=\"setTimeout(function(event){ if (event.target.title == event.target.title.trim()) { window.open(lastwo,' + \"'_blank','left=20,top=20,width=1200,height=800'\" + '); }  event.target.title=event.target.title.trim(); }, 2000);  \" title=\"Leg' + fcl + tcl + ' heads off at ' + great_circle_bearing(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1]) + ' degrees for ' + eval(eval('' + great_circle_distance(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1])) / 1000.0) + ' kilometers ... click for Google Directions ... double click to toggle visibility\" ondblclick=\" this.title+=String.fromCharCode(32); event.stopPropagation(); event.preventDefault(); this.style.visibility=this.style.visibility.replace(' + \"'visible','HIDDEN'\" + ').replace(' + \"'hidden','visible'\" + ').replace(' + \"'HIDDEN','hidden'\" + '); \" id=line_' + spanoone.id.split('span')[1] + '_' + spanotwo.id.split('span')[1] + ' ' + classbit + ' style=\"z-index:2134;margin:0 0 0 0;visibility:' + blk + ';padding:0 0 0 0;position:fixed;left:' + Math.min(xneeds[0],xneeds[1]) + 'px;top:' + Math.min(yneeds[0],yneeds[1]) + 'px;width:' + Math.abs(xneeds[0] - xneeds[1]) + 'px;height:' + Math.abs(yneeds[0] - yneeds[1]) + 'px;\">' + divih + '</div>';
        document.getElementById('plots').innerHTML+='<div onclick=\"owindowopen(' + \"this,'//www.google.com/maps/dir/\" + spanoone.getAttribute('data-geo') + \"/\" + spanotwo.getAttribute('data-geo') + \"' + '#' + '\" + 'Leg' + fcl + tcl + ' heads off at ' + great_circle_bearing(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1]) + ' degrees for ' + eval(eval('' + great_circle_distance(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1])) / 1000.0) + ' kilometers' + \"','_blank','left=20,top=20,width=1200,height=800'\" + ');\" title=\"Leg' + fcl + tcl + ' heads off at ' + great_circle_bearing(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1]) + ' degrees for ' + eval(eval('' + great_circle_distance(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1])) / 1000.0) + ' kilometers ... click for Google Directions\" ondblclick=\" this.title+=String.fromCharCode(32); event.stopPropagation(); event.preventDefault(); this.style.visibility=this.style.visibility.replace(' + \"'visible','HIDDEN'\" + ').replace(' + \"'hidden','visible'\" + ').replace(' + \"'HIDDEN','hidden'\" + '); \" id=line_' + spanoone.id.split('span')[1] + '_' + spanotwo.id.split('span')[1] + ' ' + classbit + ' style=\"z-index:2134;margin:0 0 0 0;padding:0 0 0 0;position:fixed;left:' + Math.min(xneeds[0],xneeds[1]) + 'px;top:' + Math.min(yneeds[0],yneeds[1]) + 'px;width:' + Math.abs(xneeds[0] - xneeds[1]) + 'px;height:' + Math.abs(yneeds[0] - yneeds[1]) + 'px;\">' + divih + '</div>';
       } else {
        spanotwo.innerHTML='&#10060;';
        tcl=' to ' + spanotwo.title + ' ';
        lastwo=\"//www.google.com/maps/dir/\" + spanoone.getAttribute('data-geo') + \"/\" + spanotwo.getAttribute('data-geo') + \"' + '#' + '\" + 'Leg ' + fcl + tcl + ' heads off at ' + great_circle_bearing(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1]) + ' degrees for ' + eval(eval('' + great_circle_distance(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1])) / 1000.0) + ' kilometers';
        //document.getElementById('plots').innerHTML+='<div onclick=\"setTimeout(function(event){ if (event.target.title == event.target.title.trim()) {  window.open(lastwo,' + \"'_blank','left=20,top=20,width=1200,height=800'\" + '); }  event.target.title=event.target.title.trim(); }, 2000);  \" title=\"Leg ' + fcl + tcl + ' heads off at ' + great_circle_bearing(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1]) + ' degrees for ' + eval(eval('' + great_circle_distance(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1])) / 1000.0) + ' kilometers ... click for Google Directions ... double click to toggle visibility\" ondblclick=\" this.title+=String.fromCharCode(32); event.stopPropagation(); event.preventDefault(); this.style.visibility=this.style.visibility.replace(' + \"'visible','HIDDEN'\" + ').replace(' + \"'hidden','visible'\" + ').replace(' + \"'HIDDEN','hidden'\" + '); \" id=line_' + spanoone.id.split('span')[1] + '_' + spanotwo.id.split('span')[1] + ' ' + classbit + ' style=\"z-index:2134;margin:0 0 0 0;visibility:' + blk + ';padding:0 0 0 0;position:fixed;left:' + Math.min(xneeds[0],xneeds[1]) + 'px;top:' + Math.min(yneeds[0],yneeds[1]) + 'px;width:' + Math.abs(xneeds[0] - xneeds[1]) + 'px;height:' + Math.abs(yneeds[0] - yneeds[1]) + 'px;\">' + divih + '</div>';
        document.getElementById('plots').innerHTML+='<div onclick=\"owindowopen(' + \"this,'//www.google.com/maps/dir/\" + spanoone.getAttribute('data-geo') + \"/\" + spanotwo.getAttribute('data-geo') + \"' + '#' + '\" + 'Leg ' + fcl + tcl + ' heads off at ' + great_circle_bearing(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1]) + ' degrees for ' + eval(eval('' + great_circle_distance(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1])) / 1000.0) + ' kilometers' + \"','_blank','left=20,top=20,width=1200,height=800'\" + ');\" title=\"Leg ' + fcl + tcl + ' heads off at ' + great_circle_bearing(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1]) + ' degrees for ' + eval(eval('' + great_circle_distance(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1])) / 1000.0) + ' kilometers ... click for Google Directions\" ondblclick=\" this.title+=String.fromCharCode(32); event.stopPropagation(); event.preventDefault(); this.style.visibility=this.style.visibility.replace(' + \"'visible','HIDDEN'\" + ').replace(' + \"'hidden','visible'\" + ').replace(' + \"'HIDDEN','hidden'\" + '); \" id=line_' + spanoone.id.split('span')[1] + '_' + spanotwo.id.split('span')[1] + ' ' + classbit + ' style=\"z-index:2134;margin:0 0 0 0;padding:0 0 0 0;position:fixed;left:' + Math.min(xneeds[0],xneeds[1]) + 'px;top:' + Math.min(yneeds[0],yneeds[1]) + 'px;width:' + Math.abs(xneeds[0] - xneeds[1]) + 'px;height:' + Math.abs(yneeds[0] - yneeds[1]) + 'px;\">' + divih + '</div>';
        }
        }
        return true;
  }
  
  function winopit() {
    if (('' + document.getElementById(gdivid).title) == ('' + document.getElementById(gdivid).title).trim()) {
      window.open(gw1,gw2,gw3);
    }
    document.getElementById(gdivid).title=('' + document.getElementById(gdivid).title).trim();
  }
  
  function owindowopen(odiv,w1,w2,w3) {
     if (lastgdivid == '' + odiv.id) {
       document.getElementById(gdivid).title+=String.fromCharCode(32);
       document.getElementById(gdivid).style.visibility='hidden';
     } else {
       gdivid='' + odiv.id;
       lastgdivid=gdivid;
       gw1=w1;
       gw2=w2;
       gw3=w3; 
       setTimeout(winopit, 3000);
     }
  }
  
  function zifcheck(zwiois) {
       var waszoom=1;
       var sparear=null;
       var xif=-999, yif=-999, xxif=-999, yyif=-999;
       var xlatdeg=0, xlongdeg=0;
       var zawconto = (zwiois.contentWindow || zwiois.contentDocument);
       if (!zawconto && zaconto) {
         zawconto=zaconto;
       }
   //alert(11);
       var zzawconto=zawconto;
       if (zawconto != null) {
   //alert('111 ' + zwiois.src);
       if (zawconto.document) { zawconto = zawconto.document; }
    //alert('1111 ' + zawconto.body.innerHTML);
       if (zawconto.body.innerHTML.indexOf('>') != -1) {
          var iiizoom=eval(eval('' + ('' + zawconto.getElementById('myimg').style.width).replace('px','')) / 360); //eval('' + zawconto.getzoom());
          //alert('' + iiizoom);
          //alert(eval('' + zawconto.getzoom()));
          //alert(zawconto.getElementById('myimg').getBoundingClientRect().width);
            if (lastiizoom != iiizoom) {
              var isp=0;
              var huhrect=document.getElementById('ifcountries').getBoundingClientRect();
              var ospancount=spancount;
              newone=eval(1 + spancount);
              while (document.getElementById('span' + isp)) {
                if (isp < ospancount) {
                waszoom=document.getElementById('span' + isp).getAttribute('data-zoom');
                if (waszoom != iiizoom) {
                  xlatdeg=eval('' + document.getElementById('span' + isp).getAttribute('data-geo').split(',')[0]);
                  xlongdeg=eval('' + document.getElementById('span' + isp).getAttribute('data-geo').split(',')[1]);
                  xxif=eval(iiizoom * eval(180 + eval('' + xlongdeg)));
                  yyif=eval(iiizoom * eval(90 - eval('' + xlatdeg)));
                  if (1 == 1) {
            document.getElementById('plots').innerHTML+='<span id=sspan' + spancount + '><span oncontextmenu=\"event.stopPropagation(); event.preventDefault(); if (isdouble == 0) { storeaway(this); }\" data-zoom=\"' + iiizoom + '\" data-iframepos=\"' + huhrect.left + ',' + huhrect.top + '\" data-geo=\"' + xlatdeg + ',' + xlongdeg + '\" title=\"' + decodeURIComponent(document.getElementById('span' + isp).title) + '\" id=span' + spancount + ' style=\"font-style:bold;text-shadow:-1px 1px 1px #ff2d95;font-size:6px;margin:0 0 0 0;padding:0 0 0 0;z-index:2134;position:fixed;top:' + eval(eval('' + huhrect.top) + yyif) + 'px;left:' + eval(eval('' + huhrect.left) + xxif) + 'px;\">x</span></span>';
            nodiv(isp, spancount);
            spancount++;
            document.getElementById('span' + isp).style.display='none';
                  } else {
                  document.getElementById('span' + isp).style.top='' + eval(eval('' + huhrect.top) + yyif) + 'px';
                  document.getElementById('span' + isp).style.left='' + eval(eval('' + huhrect.left) + xxif) + 'px';
                  document.getElementById('span' + isp).setAttribute('data-zoom', '' + iiizoom);
                  document.getElementById('span' + isp).setAttribute('data-iframepos', '' + huhrect.left + ',' + huhrect.top);
                  document.getElementById('sspan' + isp).innerHTML=document.getElementById('span' + isp).outerHTML;
                  }
                }
                }
                isp++;
              }
              lastiizoom=iiizoom;
            }
       }
       }
  }
  
  function geojsonrightclick(ev,iiz,isd) {
       pos3=-999;
       pos4=-999;
       if (ev.touches) {
       if (ev.touches[0].pageX) {
       pos3 = ev.touches[0].pageX;
       pos4 = ev.touches[0].pageY;
       } else {
       pos3 = ev.touches[0].clientX;
       pos4 = ev.touches[0].clientY;
       }
       console.log('pos3 = ' + pos3 + ',pos4 = ' + pos4);
       } else if (ev.clientX || ev.clientY) {
        pos3 = ev.clientX;
        pos4 = ev.clientY;
       console.log('pos3 = ' + pos3 + ' ,pos4 = ' + pos4);
       } else {
        pos3 = ev.pageX;
        pos4 = ev.pageY;
       console.log('pos3 = ' + pos3 + ', pos4 = ' + pos4);
       }
          if (pos3 >= 0 && pos4 >= 0) {
          if (iiz < lastiizoom) { iiz=lastiizoom; }
          xlatdeg=eval(90 - eval(eval('' + pos4) / iiz));
          xlongdeg=eval(-180 + eval(eval('' + pos3) / iiz));
            var huhrect=document.getElementById('ifcountries').getBoundingClientRect();
     //alert(' ... second yay! ' + lastiizoom + ' vs ' + iiz + ' ' + ev.clientX + ',' + ev.clientY);
            if (isdouble == 0) {
            document.getElementById('plots').innerHTML+='<span id=sspan' + spancount + '><span oncontextmenu=\"event.stopPropagation(); event.preventDefault(); if (isdouble == 0) { storeaway(this); }\" data-zoom=\"' + iiz + '\" data-iframepos=\"' + huhrect.left + ',' + huhrect.top + '\" data-geo=\"' + xlatdeg + ',' + xlongdeg + '\" title=\"Right Click at ' + xlatdeg + ',' + xlongdeg + '\" id=span' + spancount + ' style=\"font-style:bold;text-shadow:-1px 1px 1px #ff2d95;font-size:6px;margin:0 0 0 0;padding:0 0 0 0;z-index:2134;position:fixed;top:' + eval(eval('' + huhrect.top) + pos4) + 'px;left:' + eval(eval('' + huhrect.left) + pos3) + 'px;\">&#10067;</span></span>';
            storeaway(document.getElementById('span' + spancount));
            spancount++;
            setTimeout(nospan, 30000);
            isdouble=1;
            //nolineplease=true;
            blk='hidden';
            setTimeout(isdf, 3000);
            //alert('Nolineplease');
            } else {
            blk='hidden';
            nolineplease=true;
            //alert('nolineplease');
            }
          }
     return false; //' ... second yay! ' + lastiizoom + ' vs ' + iiz + ' ' + e.clientX + ',' + e.clientY;
  }
  
  function thisonl() {
   //alert(21);
   elem = document.getElementById('mycanvas');
   //alert(211);
   context = elem.getContext('2d');
   //alert(2111);
   setTimeout(canvasize, 5000);
   //alert(21111);
  }
 
  function ifcheck(ziois) {
       var ourm=mobaccum;
       var waszoom=1;
       var sparear=null, gsparear=null;
       var xif=-999, yif=-999, xxif=-999, yyif=-999;
       var zioissrc=ziois.src.split('#')[0];
       if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i) && zaconto != null && locationhash != '') {
       zaconto=zaconto;
       zioissrc=ziois.src.split('#')[0] + ('#' + locationhash + '#' + location.hash).replace('##','&').replace('##','&').replace('#','&').replace('#','&');
       } else {
       zaconto = (ziois.contentWindow || ziois.contentDocument);
   //alert(11);
       }
       zzaconto=zaconto;
       if (zaconto != null) {
   //alert('111 ' + xiois.src);
       try {
       if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i) && locationhash != '') {
       zaconto=zaconto;
       } else {
       if (zaconto.document) { zaconto = zaconto.document;        zzaconto=zaconto; }
       }
    //alert('1111 ' + zaconto.body.innerHTML);
//if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i) && locationhash != '') {
//   alert(111);
//}
       if (zaconto.body.innerHTML.indexOf('>') != -1) {
          zoomdone=false;
          lastiizoom=(zioissrc.indexOf('zoom=') != -1 ? eval(zioissrc.split('zoom=')[1].split('&')[0].split('#')[0]) : lastiizoom);
          var itwo='';
          if (document.getElementById('myp')) {
          itwo=('' + document.getElementById('myp').getAttribute('data-fc')).replace(/^null/g,'').replace(/^undefined/g,'').trim().toUpperCase();
          }
          if (itwo == '' && lastcode != '') { itwo=lastcode;  }
//if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i) && locationhash != '') {
//   alert(itwo);
//}
          if (eval('' + itwo.length) == 2 || (document.getElementById('placegeo').title + document.getElementById('placegeo').value).trim() != '') {
          var xlatdeg=0, xlongdeg=0;
          if ((document.getElementById('placegeo').title + document.getElementById('placegeo').value).indexOf(',') != -1) {
          xlatdeg=eval('' + (document.getElementById('placegeo').title + document.getElementById('placegeo').value).split(',')[0]);
          xlongdeg=eval('' + (document.getElementById('placegeo').title + document.getElementById('placegeo').value).split(',')[1]);
          }
          if (zioissrc.indexOf('refresh=') != -1 && zioissrc.indexOf('zoom=') != -1) {
          iizoom=lastiizoom;
if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i) && locationhash != '') {
          zaconto=zaconto;
//   alert('99');
} else if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i)) {
          zaconto.getElementById('mg').style.visibility='hidden'; //zaconto.getElementById('mg').setAttribute('readonly', true);
          zaconto.getElementById('mg').style.display='none';
} else {
          zaconto.getElementById('mg').onmousedown=function(){ lastiizoom=eval(2 * lastiizoom); setTimeout(parent.rifcheck, 3000); return true; };
          zaconto.getElementById('mg').ontouchdown=function(){ lastiizoom=eval(2 * lastiizoom); setTimeout(parent.rifcheck, 3000); return true; };
          document.body.ontouchend=function(){ alert('heRe'); return true; };
}
          setTimeout(rifcheck, 2000);
          //alert('Where');
          jjans=jjans.replace(/\ \ \ \ \ $/g,'');
          if (locationhash == '' && !navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i)) { return true; }
          } else {
          iizoom=eval(eval('' + ('' + zaconto.getElementById('myimg').style.width).replace('px','')) / 360); //eval('' + zaconto.getzoom());
          }
          xif=eval(iizoom * eval(180 + eval('' + xlongdeg)));
          yif=eval(iizoom * eval(90 - eval('' + xlatdeg)));
    //alert('' + xif + ',' + yif);
    //alert(itwo);
//if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i)) {
//   alert(4987);
//}
          var isp=0;
          var jsp=0;
          if (eval('' + itwo.length) == 2) {
//if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i) && locationhash != '') {
//  alert(2);
//}
            if (xif >= -180 && yif >= -90) {
//if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i) && locationhash != '') {
//  alert(zioissrc);
//}
            if (lastiizoom != iizoom || zioissrc.indexOf('refresh=') != -1) {
//if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i) && locationhash != '') {
//  alert(222);
//}
              var huhrect=document.getElementById('ifcountries').getBoundingClientRect();
              //alert('5:' + document.getElementById('ifcountries').offsetLeft + ',' + document.getElementById('ifcountries').offsetTop);
              var ospancount=spancount;
              newone=eval(1 + spancount);
              while (document.getElementById('span' + isp)) {
                if (isp < ospancount) {
                waszoom=document.getElementById('span' + isp).getAttribute('data-zoom');
                if (waszoom != iizoom) {
                  xlatdeg=eval('' + document.getElementById('span' + isp).getAttribute('data-geo').split(',')[0]);
                  xlongdeg=eval('' + document.getElementById('span' + isp).getAttribute('data-geo').split(',')[1]);
                  xxif=eval(iizoom * eval(180 + eval('' + xlongdeg)));
                  yyif=eval(iizoom * eval(90 - eval('' + xlatdeg)));
                  if (1 == 1) {
                  if (4 == 5) { alert(5786); }
            document.getElementById('plots').innerHTML+='<span id=sspan' + spancount + '><span oncontextmenu=\"event.stopPropagation(); event.preventDefault(); if (isdouble == 0) { storeaway(this); }\" data-zoom=\"' + iiizoom + '\" data-iframepos=\"' + huhrect.left + ',' + huhrect.top + '\" data-geo=\"' + xlatdeg + ',' + xlongdeg + '\" title=\"' + decodeURIComponent(document.getElementById('span' + isp).title) + '\" id=span' + spancount + ' style=\"font-style:bold;text-shadow:-1px 1px 1px #ff2d95;font-size:6px;margin:0 0 0 0;padding:0 0 0 0;z-index:2134;position:fixed;top:' + eval(eval('' + huhrect.top) + yyif) + 'px;left:' + eval(eval('' + huhrect.left) + xxif) + 'px;\">x</span></span>';
            nodiv(isp, spancount);
            spancount++;
            jsp++;
            document.getElementById('span' + isp).style.display='none';
                  } else {
                  document.getElementById('span' + isp).style.top='' + eval(eval('' + huhrect.top) + yyif) + 'px';
                  document.getElementById('span' + isp).style.left='' + eval(eval('' + huhrect.left) + xxif) + 'px';
                  document.getElementById('span' + isp).setAttribute('data-zoom', '' + iizoom);
                  document.getElementById('span' + isp).setAttribute('data-iframepos', '' + huhrect.left + ',' + huhrect.top);
                  document.getElementById('sspan' + isp).innerHTML=document.getElementById('span' + isp).outerHTML;
                  }
                }
                }
                isp++;
              }
            }
            spancount=eval(isp + jsp);
            var dars=null, kkkfound=false, idars=0;
//if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i)) {
//   alert('|' + jjans + '|vs|' + jjans.replace(/\ \ \ \ \ $/g,'') + '|');
//}
            if (jjans == jjans.replace(/\ \ \ \ \ $/g,'')) {
//if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i)) {
//   alert('huhyes|' + jjans + '|');
//}
//if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i)) {
//   alert(14987);
//}
if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i)) {
            //document.getElementById('plots').innerHTML+='<span id=sspan' + spancount + '><span ondblclick=\"event.stopPropagation(); event.preventDefault(); if (isdouble == 0) { storeaway(this); }\" data-zoom=\"' + iizoom + '\" data-iframepos=\"' + huhrect.left + ',' + huhrect.top + '\" data-geo=\"' + xlatdeg + ',' + xlongdeg + '\" title=\"' + decodeURIComponent(lastr) + '\" id=span' + spancount + ' style=\"font-style:bold;text-shadow:-1px 1px 1px #ff2d95;font-size:6px;margin:0 0 0 0;padding:0 0 0 0;z-index:2134;position:fixed;top:' + eval(eval('' + huhrect.top) + yif) + 'px;left:' + eval(eval('' + huhrect.left) + xif) + 'px;\">x</span></span>';
            mobaccum+='<span id=sspan' + spancount + '><span ondblclick=\"event.stopPropagation(); event.preventDefault(); if (isdouble == 0) { storeaway(this); }\" data-zoom=\"' + iizoom + '\" data-iframepos=\"' + huhrect.left + ',' + huhrect.top + '\" data-geo=\"' + xlatdeg + ',' + xlongdeg + '\" title=\"' + decodeURIComponent(lastr) + '\" id=span' + spancount + ' style=\"text-shadow:-1px 1px 1px #ff2d95;margin:0 0 0 0;padding:0 0 0 0;z-index:2135;position:fixed;font-size:6px;top:' + eval(eval('' + huhrect.top) * 0 + yif) + 'px;left:' + eval(eval('' + huhrect.left) * 0 + xif) + 'px;\">&#10060;</span></span>';
            zaconto.body.innerHTML+=ourm + '<span id=sspan' + spancount + '><span ondblclick=\"event.stopPropagation(); event.preventDefault(); if (isdouble == 0) { storeaway(this); }\" data-zoom=\"' + iizoom + '\" data-iframepos=\"' + huhrect.left + ',' + huhrect.top + '\" data-geo=\"' + xlatdeg + ',' + xlongdeg + '\" title=\"' + decodeURIComponent(lastr) + '\" id=span' + spancount + ' style=\"text-shadow:-1px 1px 1px #ff2d95;margin:0 0 0 0;padding:0 0 0 0;z-index:2135;position:fixed;font-size:6px;top:' + eval(eval('' + huhrect.top) * 0 + yif) + 'px;left:' + eval(eval('' + huhrect.left) * 0 + xif) + 'px;\">&#10060;</span></span>';
            ourm='';
} else {
                  if (4 == 5) { alert(6786); }
            document.getElementById('plots').innerHTML+='<span id=sspan' + spancount + '><span oncontextmenu=\"event.stopPropagation(); event.preventDefault(); if (isdouble == 0) { storeaway(this); }\" data-zoom=\"' + iizoom + '\" data-iframepos=\"' + huhrect.left + ',' + huhrect.top + '\" data-geo=\"' + xlatdeg + ',' + xlongdeg + '\" title=\"' + decodeURIComponent(lastr) + '\" id=span' + spancount + ' style=\"font-style:bold;text-shadow:-1px 1px 1px #ff2d95;font-size:6px;margin:0 0 0 0;padding:0 0 0 0;z-index:2134;position:fixed;top:' + eval(eval('' + huhrect.top) + yif) + 'px;left:' + eval(eval('' + huhrect.left) + xif) + 'px;\">x</span></span>';
}
            spancount++;
//if (!navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i)) {
            setTimeout(nospan, 30000);
//}
            }
            }
            sofararealist+=itwo + '|';
            var ars=zaconto.getElementsByTagName('area');
            for (var iars=0; iars<ars.length; iars++) {
               kkkfound=false;
               while (('' + ars[iars].getAttribute('data-iso2')) == itwo || sofararealist.indexOf('|' + ('' + ars[iars].getAttribute('data-iso2')) + '|') != -1) {
            //document.title='' + iars + ' ... ' + ('' + ars[iars].getAttribute('data-iso2'));
//if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i)) {
//   alert(zaconto.body.innerHTML.split('<table')[1].substring(0,200));
//}
                 zaconto.getElementsByTagName('table')[0].style.top='385px';
                 zaconto.getElementsByTagName('table')[0].style.left='0px';
//if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i)) {
//   alert(1987);
//}
                 if (ars[iars].outerHTML.indexOf(' onclick=\"') != -1) {
                    //itwo=' ';
                    if (('' + ars[iars].getAttribute('data-iso2')) == itwo) {
                    sparear=ars[iars];
                    //document.title+=' ' + 'zzaconto.' + ars[iars].outerHTML.split(' onclick=\"')[1].split('\"')[0].trim().substring(0,220);
                    if (9 == 9) {
                    //alert(11);
if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i)) {
//   alert(sparear.outerHTML);
            dars=zaconto.getElementsByTagName('div');
            kkkfound=false;
              //alert('' + ars.length + ' ' + sofararealist);
            for (idars=0; idars<dars.length; idars++) {
               if (!kkkfound) {
               if (('' + dars[idars].title).indexOf(sparear.coords.substring(0,100)) == 0) {
                  dars[idars].innerHTML=dars[idars].innerHTML.replace('lime','orange');
//if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i)) {
//   alert(dars[idars].innerHTML);
//}
          zaconto.getElementById('mg').style.visibility='hidden'; //zaconto.getElementById('mg').setAttribute('readonly', true);
          zaconto.getElementById('mg').style.display='none';
                  kkkfound=true;
               }
               }
            }
            //}

//} else {
//   alert(sparear.outerHTML);
}
                      sparear.click();
                    if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i)) {
                     //alert(sparear.outerHTML);
                     sparear.ondblclick=function(event){  event.stopPropagation();  event.preventDefault();    return parent.geojsonrightclick(event,iizoom,isdouble);   };
                     //alert(sparear.outerHTML);
                    } else {
                      sparear.oncontextmenu=function(event){  event.stopPropagation();  event.preventDefault();    return parent.geojsonrightclick(event,iizoom,isdouble);   };
                    }
                    //alert(111);
                      eval('zzaconto.' + ars[iars].outerHTML.split(' onclick=\"')[1].split('\"')[0].trim().replace(/this\./g,'sparear.').replace(/this\,/g,'sparear,'));
                    } else {
                      eval('zzaconto.' + ars[iars].outerHTML.split(' onclick=\"')[1].split('\"')[0].trim().replace(/this\./g,'sparear.').replace(/this\,/g,'sparear,'));
                    }
                    } else {
                    gsparear=ars[iars];
                    //document.title+=' ' + 'zzaconto.' + ars[iars].outerHTML.split(' onclick=\"')[1].split('\"')[0].trim().substring(0,220);
                    if (9 == 9) {
                    //alert(911);
//if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i)) {
//   alert(gsparear.outerHTML);
//}
if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i)) {
//   alert(sparear.outerHTML);
            dars=zaconto.getElementsByTagName('div');
            kkkfound=false;
              //alert('' + ars.length + ' ' + sofararealist);
            for (idars=0; idars<dars.length; idars++) {
               if (!kkkfound) {
               if (('' + dars[idars].title).indexOf(gsparear.coords.substring(0,100)) == 0) {
                  dars[idars].innerHTML=dars[idars].innerHTML.replace('lime','orange');
//if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i)) {
//   alert(dars[idars].innerHTML);
//}
          zaconto.getElementById('mg').style.visibility='hidden'; //zaconto.getElementById('mg').setAttribute('readonly', true);
          zaconto.getElementById('mg').style.display='none';
                  kkkfound=true;
               }
               }
            }
            //}

}
                      gsparear.click();
                    //alert(91);
                    if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i)) {
                      gsparear.ondblclick=function(event){  event.stopPropagation();  event.preventDefault();    return parent.geojsonrightclick(event,iizoom,isdouble);   };
                    } else {
                      gsparear.oncontextmenu=function(event){  event.stopPropagation();  event.preventDefault();    return parent.geojsonrightclick(event,iizoom,isdouble);   };
                    }
                    //alert(9111);
                      eval('zzaconto.' + ars[iars].outerHTML.split(' onclick=\"')[1].split('\"')[0].trim().replace(/this\./g,'gsparear.').replace(/this\,/g,'gsparear,'));
                    } else {
                      eval('zzaconto.' + ars[iars].outerHTML.split(' onclick=\"')[1].split('\"')[0].trim().replace(/this\./g,'gsparear.').replace(/this\,/g,'gsparear,'));
                    }
                    }
                 }
                 iars++;
                 //itwo='';
               }
               if (sparear) { itwo='';  }
            }
          }
          jjans=jjans.replace(/\ \ \ \ \ $/g,'');
          if (!zoomdone) {
          lastiizoom=iizoom;
          zaconto.getElementById('mg').onmousedown=function(){ setTimeout(parent.rifcheck, 3000); return true; };
          zaconto.getElementById('mg').ontouchdown=function(){ setTimeout(parent.rifcheck, 3000); return true; };
          //document.body.ontouchend=function(){ alert('hERe'); return true; };
          } else {
          if (zioissrc.indexOf('refresh=') != -1) {
          lastiizoom=iizoom;
          zaconto.getElementById('mg').onmousedown=function(){ setTimeout(parent.rifcheck, 3000); return true; };
          zaconto.getElementById('mg').ontouchdown=function(){ setTimeout(parent.rifcheck, 3000); return true; };
          //document.body.ontouchend=function(){ alert('heRE'); return true; };
          }
          lastiizoom=sein(iizoom);
          }
          if (itwo == '') {
 zaconto.getElementsByTagName('canvas')[0].dispatchEvent(new Event(\"click\", {
  bubbles: true, // only bubbles and cancelable
  cancelable: true, // work in the Event constructor
  clientX: xif,
  clientY: yif
 }));
if (1 == 2) {
if (zaconto.elementsFromPoint) {
  var elements = zaconto.elementsFromPoint(xif, yif);
  elements.forEach((elt, i) => {
    if (i < elements.length - 1) {
 zaconto.body.dispatchEvent(new Event(\"click\", {
  bubbles: true, // only bubbles and cancelable
  cancelable: true, // work in the Event constructor
  clientX: xif,
  clientY: yif
 }));
    }
  });
} else {
          zaconto.elementFromPoint(xif, yif).click();
}
}
       }
          }
       }
       } catch(hgjgs) {  }
       }
       jjans=jjans.replace(/\ \ \ \ \ $/g,'');
       return true;
  }
  
 
  function nonmifcheck(ziois) {
       var waszoom=1;
       var sparear=null, gsparear=null;
       var xif=-999, yif=-999, xxif=-999, yyif=-999;
       zaconto = (ziois.contentWindow || ziois.contentDocument);
   //alert(11);
       zzaconto=zaconto;
       if (zaconto != null) {
   //alert('111 ' + xiois.src);
       try {
       if (zaconto.document) { zaconto = zaconto.document; }
    //alert('1111 ' + zaconto.body.innerHTML);
       if (zaconto.body.innerHTML.indexOf('>') != -1) {
          zoomdone=false;
          lastiizoom=(ziois.src.indexOf('zoom=') != -1 ? eval(ziois.src.split('zoom=')[1].split('&')[0].split('#')[0]) : lastiizoom);
          var itwo='';
          if (twomw != '') {
          itwo=('' + twomw);
          }
          if (itwo == '' && lastcode != '') { itwo=lastcode;  }
    //alert(ziois.src + ' 11111 ' + itwo + ':' + (document.getElementById('placegeo').title + document.getElementById('placegeo').value).trim());
          if (eval('' + itwo.length) == 2 || (document.getElementById('placegeo').title + document.getElementById('placegeo').value).trim() != '') {
          var xlatdeg=0, xlongdeg=0;
          if ((document.getElementById('placegeo').title + document.getElementById('placegeo').value).indexOf(',') != -1) {
          xlatdeg=eval('' + (document.getElementById('placegeo').title + document.getElementById('placegeo').value).split(',')[0]);
          xlongdeg=eval('' + (document.getElementById('placegeo').title + document.getElementById('placegeo').value).split(',')[1]);
          }
          if (ziois.src.indexOf('refresh=') != -1 && ziois.src.indexOf('zoom=') != -1) {
          iizoom=lastiizoom;
          zaconto.getElementById('mg').onmousedown=function(){ lastiizoom=eval(2 * lastiizoom); setTimeout(parent.rifcheck, 3000); return true; };
          zaconto.getElementById('mg').ontouchdown=function(){ lastiizoom=eval(2 * lastiizoom); setTimeout(parent.rifcheck, 3000); return true; };
          setTimeout(rifcheck, 2000);
          //alert('Where');
          return true;
          } else {
          //alert('2 ' +  + ('' + zaconto.getElementById('myimg').width).replace('px',''));
          iizoom=eval(eval('' + ('' + zaconto.getElementById('myimg').width).replace('px','')) / 360); //eval('' + zaconto.getzoom());
          //alert('' + iizoom);
          }
          xif=eval(iizoom * eval(180 + eval('' + xlongdeg)));
          yif=eval(iizoom * eval(90 - eval('' + xlatdeg)));
    //alert('' + xif + ',' + yif);
    //alert(itwo + ' ' + jjans + '?');
          var isp=0;
          var jsp=0;
          if (eval('' + itwo.length) == 2) {
            if (xif >= -180 && yif >= -90) {
            if (lastiizoom != iizoom || ziois.src.indexOf('refresh=') != -1) {
              var huhrect=document.getElementById('ifcountries').getBoundingClientRect();
              var ospancount=spancount;
              newone=eval(1 + spancount);
              while (document.getElementById('span' + isp)) {
                if (isp < ospancount) {
                waszoom=document.getElementById('span' + isp).getAttribute('data-zoom');
                if (waszoom != iizoom) {
                  xlatdeg=eval('' + document.getElementById('span' + isp).getAttribute('data-geo').split(',')[0]);
                  xlongdeg=eval('' + document.getElementById('span' + isp).getAttribute('data-geo').split(',')[1]);
                  xxif=eval(iizoom * eval(180 + eval('' + xlongdeg)));
                  yyif=eval(iizoom * eval(90 - eval('' + xlatdeg)));
                  if (1 == 1) {
    //alert(786);
            document.getElementById('plots').innerHTML+='<span id=sspan' + spancount + '><span oncontextmenu=\"event.stopPropagation(); event.preventDefault(); if (isdouble == 0) { storeaway(this); }\" data-zoom=\"' + iiizoom + '\" data-iframepos=\"' + huhrect.left + ',' + huhrect.top + '\" data-geo=\"' + xlatdeg + ',' + xlongdeg + '\" title=\"' + decodeURIComponent(document.getElementById('span' + isp).title) + '\" id=span' + spancount + ' style=\"font-style:bold;text-shadow:-1px 1px 1px #ff2d95;font-size:6px;margin:0 0 0 0;padding:0 0 0 0;z-index:2134;position:fixed;top:' + eval(eval('' + huhrect.top) + yyif) + 'px;left:' + eval(eval('' + huhrect.left) + xxif) + 'px;\">x</span></span>';
            nodiv(isp, spancount);
            spancount++;
            jsp++;
            document.getElementById('span' + isp).style.display='none';
                  } else {
                  document.getElementById('span' + isp).style.top='' + eval(eval('' + huhrect.top) + yyif) + 'px';
                  document.getElementById('span' + isp).style.left='' + eval(eval('' + huhrect.left) + xxif) + 'px';
                  document.getElementById('span' + isp).setAttribute('data-zoom', '' + iizoom);
                  document.getElementById('span' + isp).setAttribute('data-iframepos', '' + huhrect.left + ',' + huhrect.top);
                  document.getElementById('sspan' + isp).innerHTML=document.getElementById('span' + isp).outerHTML;
                  }
                }
                }
                isp++;
              }
            }
            spancount=eval(isp + jsp);
    //alert(jjans + '?');
            if (jjans == jjans.replace(/\ \ \ \ \ $/g,'')) {
    //alert(2786);
            document.getElementById('plots').innerHTML+='<span id=sspan' + spancount + '><span oncontextmenu=\"event.stopPropagation(); event.preventDefault(); if (isdouble == 0) { storeaway(this); }\" data-zoom=\"' + iizoom + '\" data-iframepos=\"' + huhrect.left + ',' + huhrect.top + '\" data-geo=\"' + xlatdeg + ',' + xlongdeg + '\" title=\"' + decodeURIComponent(lastr) + '\" id=span' + spancount + ' style=\"font-style:bold;text-shadow:-1px 1px 1px #ff2d95;font-size:6px;margin:0 0 0 0;padding:0 0 0 0;z-index:2134;position:fixed;top:' + eval(eval('' + huhrect.top) + yif) + 'px;left:' + eval(eval('' + huhrect.left) + xif) + 'px;\">x</span></span>';
            spancount++;
            setTimeout(nospan, 30000);
            }
            }
            sofararealist+=itwo + '|';
            var ars=zaconto.getElementsByTagName('area');
            for (var iars=0; iars<ars.length; iars++) {
               while (('' + ars[iars].getAttribute('data-iso2')) == itwo || sofararealist.indexOf('|' + ('' + ars[iars].getAttribute('data-iso2')) + '|') != -1) {
            //document.title='' + iars + ' ... ' + ('' + ars[iars].getAttribute('data-iso2'));
                 zaconto.getElementsByTagName('table')[0].style.top='385px';
                 zaconto.getElementsByTagName('table')[0].style.left='0px';
                 if (ars[iars].outerHTML.indexOf(' onclick=\"') != -1) {
                    //itwo=' ';
                    if (('' + ars[iars].getAttribute('data-iso2')) == itwo) {
                    sparear=ars[iars];
                    if (9 == 9) {
                      sparear.click();
                      sparear.oncontextmenu=function(event){  event.stopPropagation();  event.preventDefault();    return parent.geojsonrightclick(event,iizoom,isdouble);   };
                      eval('zzaconto.' + ars[iars].outerHTML.split(' onclick=\"')[1].split('\"')[0].trim().replace(/this\./g,'sparear.').replace(/this\,/g,'sparear,'));
                    } else {
                      eval('zzaconto.' + ars[iars].outerHTML.split(' onclick=\"')[1].split('\"')[0].trim().replace(/this\./g,'sparear.').replace(/this\,/g,'sparear,'));
                    }
                    } else {
                    gsparear=ars[iars];
                    if (9 == 9) {
                      gsparear.click();
                      gsparear.oncontextmenu=function(event){  event.stopPropagation();  event.preventDefault();    return parent.geojsonrightclick(event,iizoom,isdouble);   };
                      eval('zzaconto.' + ars[iars].outerHTML.split(' onclick=\"')[1].split('\"')[0].trim().replace(/this\./g,'gsparear.').replace(/this\,/g,'gsparear,'));
                    } else {
                      eval('zzaconto.' + ars[iars].outerHTML.split(' onclick=\"')[1].split('\"')[0].trim().replace(/this\./g,'gsparear.').replace(/this\,/g,'gsparear,'));
                    }
                    }
                 }
                 iars++;
                 //itwo='';
               }
               if (sparear) { itwo='';  }
            }
          }
          jjans=jjans.replace(/\ \ \ \ \ $/g,'');
          if (!zoomdone) {
          lastiizoom=iizoom;
          zaconto.getElementById('mg').onmousedown=function(){ setTimeout(parent.rifcheck, 3000); return true; };
          zaconto.getElementById('mg').ontouchdown=function(){ setTimeout(parent.rifcheck, 3000); return true; };
          } else {
          if (ziois.src.indexOf('refresh=') != -1) {
          lastiizoom=iizoom;
          zaconto.getElementById('mg').onmousedown=function(){ setTimeout(parent.rifcheck, 3000); return true; };
          zaconto.getElementById('mg').ontouchdown=function(){ setTimeout(parent.rifcheck, 3000); return true; };
          }
          lastiizoom=sein(iizoom);
          }
          if (itwo == '') {
 zaconto.getElementsByTagName('canvas')[0].dispatchEvent(new Event(\"click\", {
  bubbles: true, // only bubbles and cancelable
  cancelable: true, // work in the Event constructor
  clientX: xif,
  clientY: yif
 }));
if (1 == 2) {
if (zaconto.elementsFromPoint) {
  var elements = zaconto.elementsFromPoint(xif, yif);
  elements.forEach((elt, i) => {
    if (i < elements.length - 1) {
 zaconto.body.dispatchEvent(new Event(\"click\", {
  bubbles: true, // only bubbles and cancelable
  cancelable: true, // work in the Event constructor
  clientX: xif,
  clientY: yif
 }));
    }
  });
} else {
          zaconto.elementFromPoint(xif, yif).click();
}
}
       }
          }
       }
       } catch(hgjgs) {  }
       }
       jjans=jjans.replace(/\ \ \ \ \ $/g,'');
       return true;
  }
  
  function nodiv(wasid, newid) {
      var divsoarr=document.getElementsByTagName('div');
      for (var idivs=0; idivs<divsoarr.length; idivs++) {
        if (('' + divsoarr[idivs].id).indexOf('line_' + wasid + '_') == 0) {
           divsoarr[idivs].style.display='none';
           spanos.push(document.getElementById('span' + newid));
        //alert('here ' + wasid + ' ' + spanos.length + ' ' + newone);
           if (eval('' + spanos.length) > newone) {
        //alert('here2');
             setTimeout(function(){ drawlinebetween(spanos[eval(-2 + spanos.length)], spanos[eval(-1 + spanos.length)]); }, 5000);
           }
        } else if (('' + divsoarr[idivs].id).indexOf('line_') == 0 && ('' + divsoarr[idivs].id + '~').indexOf('_' + wasid + '~') != -1) {
           divsoarr[idivs].style.display='none';
           spanos.push(document.getElementById('span' + newid));
        //alert('there ' + wasid + ' ' + spanos.length + ' ' + newone);
           if (eval('' + spanos.length) > newone) {
        //alert('there2');
             setTimeout(function(){ drawlinebetween(spanos[eval(-2 + spanos.length)], spanos[eval(-1 + spanos.length)]); }, 5000);
           }
        }
      }
  }
  
  function getxynow(e) {
       e = e || window.event;
       e.preventDefault();
       if (e.touches) {
       if (e.touches[0].pageX) {
       xinxy.push(eval(e.touches[0].pageX + document.body.scrollLeft) * browserZoomLevel);
       yinxy.push(eval(e.touches[0].pageY + document.body.scrollTop) * browserZoomLevel);
       } else {
       xinxy.push(eval(e.touches[0].clientX + document.body.scrollLeft) * browserZoomLevel);
       yinxy.push(eval(e.touches[0].clientY + document.body.scrollTop) * browserZoomLevel);
       }
       } else if (e.clientX || e.clientY) {
        xinxy.push(e.clientX + document.body.scrollLeft);
        yinxy.push(e.clientY + document.body.scrollTop);
       } else {
        xinxy.push(e.pageX + document.body.scrollLeft);
        yinxy.push(e.pageY + document.body.scrollTop);
       }
    //alert('' + xinxy.length);
       filloutform(e,0); 
  }
  
  function dotwor() {
     if (oneoftwo == 1) {
       defzoom++;
     } else {
       defzoom=2;
     }
     oneoftwo=1;
  }
  
  function dotwoc() {
     if (oneoftwo == -1) {
       defzoom++;
     } else {
       defzoom=2;
     }
     oneoftwo=-1;
  }
  
  function alternatevisibility() {
     var igh=1;
     while (document.getElementById('iciov' + igh)) {
       if (igh == 1 && document.getElementById('iciov' + igh).outerHTML.indexOf('visibility:') == -1) {
         nextv='hidden';
       } else if (igh == 1 && document.getElementById('iciov' + igh).outerHTML.split('visibility:')[1].split(';')[0].split('>')[0].toLowerCase().indexOf('visible') != -1) {
         nextv='hidden';
       } else if (igh == 1) {
         nextv='visible';
       }
       document.getElementById('iciov' + igh).style.visibility='' + nextv;
       igh++;
     }
  }
  
  function overlayit(ootis) {
     var prerest='', zb='';
     if (ootis == 0) {
       if (eval('' + xinxy.length) == 2) {
         if (ovnum == 1) { // thanks to https://stackoverflow.com/questions/69491728/how-to-zoom-an-image-on-mouse-hover-using-css
              prerest=' .zoom-img { width: ' + document.getElementById('ici').width + 'px;  height: ' + document.getElementById('ici').height + 'px; overflow: hidden; }  .zoom-img:hover { transform: scale(2.0); } ';
         }  
         if (defzoom != 2) {
           zb=' #iciov' + ovnum + ':hover {  z-index:1789;  transform: scale(' + defzoom + '.0); } ';
         }
         if (oneoftwo < 0) { // circle
            document.getElementById('ici').style.opacity='1.0';
            document.getElementById('imgmore').innerHTML+=document.getElementById('ici').outerHTML.replace('ici','iciov' + ovnum).replace('25;','35;position:absolute;background-color:transparent;top:0px;left:0px;').replace(/\\\"\\ on/g, '\" data-on').replace('<img ','<img class=zoom-img '); //.replace(' src=',' src=/HTMLCSS/HYP_50M_SR_W.jpg width=360 height=180 data-src=');
            opis='' + eval(-0.1 + eval('' + opis));
            document.getElementById('ici').style.opacity='' + opis;
            document.getElementById('dvstyle').innerHTML+='<style> ' + prerest + zb + ' #iciov' + ovnum + ' { -webkit-filter: brightness(150%); filter: brightness(150%); transform-origin: ' + xinxy[0] + 'px ' + yinxy[0] + 'px; clip-path: circle(' + Math.sqrt(eval(xinxy[0] - xinxy[1]) * eval(xinxy[0] - xinxy[1]) + eval(yinxy[0] - yinxy[1]) * eval(yinxy[0] - yinxy[1])) + 'px at ' + xinxy[0] + 'px ' + yinxy[0] + 'px);  } </style>';         
         } else {  // rectangle
            document.getElementById('ici').style.opacity='1.0';
            document.getElementById('imgmore').innerHTML+=document.getElementById('ici').outerHTML.replace('ici','iciov' + ovnum).replace('25;','35;position:absolute;background-color:transparent;top:0px;left:0px;').replace(/\\\"\\ on/g, '\" data-on').replace('<img ','<img class=zoom-img ');
            opis='' + eval(-0.1 + eval('' + opis));
            document.getElementById('ici').style.opacity='' + opis;
            document.getElementById('dvstyle').innerHTML+='<style> ' + prerest + zb + ' #iciov' + ovnum + '  { -webkit-filter: brightness(150%); filter: brightness(150%); transform-origin: ' + eval(eval(xinxy[0] + xinxy[1]) / 2) + 'px ' + eval(eval(yinxy[0] + yinxy[1]) / 2) + 'px;  clip-path: polygon(' + Math.min(eval(xinxy[0]),eval(xinxy[1])) + 'px ' + Math.min(eval(yinxy[0]),eval(yinxy[1])) + 'px,' + Math.min(eval(xinxy[0]),eval(xinxy[1])) + 'px ' + Math.max(eval(yinxy[0]),eval(yinxy[1])) + 'px,' + Math.max(eval(xinxy[0]),eval(xinxy[1])) + 'px ' + Math.max(eval(yinxy[0]),eval(yinxy[1])) + 'px,' + Math.max(eval(xinxy[0]),eval(xinxy[1])) + 'px ' + Math.min(eval(yinxy[0]),eval(yinxy[1])) + 'px,' + Math.min(eval(xinxy[0]),eval(xinxy[1])) + 'px ' + Math.min(eval(yinxy[0]),eval(yinxy[1])) + 'px' + ');  } </style>';       
         }   
         if (ovnum == 1) {  setInterval(alternatevisibility, 15000);  }
         ovnum++;
       }
       oneoftwo=ootis;
       defzoom=2;
       xinxy=[];
       yinxy=[];          
     }
  }
 
  </scr" . "ipt>
  </head>
  <body onkeydown=\"return okd(event);\" style=\"width:600px;height:600px;\" onclick=\" if (oneoftwo == 0) {  document.getElementById('lastcol').value='';  isclear=false; document.getElementById('imode').value='click'; filloutform(event,1); } else if (Math.abs(oneoftwo) == 1) { getxynow(event); if (oneoftwo < 0) { oneoftwo--; } else { oneoftwo++; }  } else if (Math.abs(oneoftwo) == 2) {  getxynow(event); overlayit(0);  }\" onload=\" setTimeout(thisonl,2000); if (window.opener) {  document.getElementById('premyp').innerHTML=lfdfn(window.opener.document.getElementById('myp').outerHTML);  document.getElementById('patparent').value=window.opener.document.getElementById('myp').innerHTML; document.getElementById('mopatparent').value=window.opener.document.getElementById('myp').innerHTML; } else if (window.parent) {  document.getElementById('premyp').innerHTML=lfdfn(parent.document.getElementById('myp').outerHTML);  document.getElementById('patparent').value=parent.document.getElementById('myp').innerHTML; document.getElementById('mopatparent').value=parent.document.getElementById('myp').innerHTML; }  \">
  <img style=\"z-index:25;\" onload=\"  return true; \" id=ici  data-onmouseout=\"this.title=origtitle;\" onmousemove=\" if (isclear || 1 == 1) { document.getElementById('moimode').value='mouseover'; filloutform(event,0); }\"  src=\"" . $imgurl . "\" title=\"Optionally click in relevant region for menu\"></img>
  <input title='' id=lastcol value='' type=hidden></input>
  <form id=myform onsubmit=\"  return true;\" style=display:none; target=iflastcol method=POST action=./image_chart.php>
  <input name=returnxytoparent id=returnxytoparent value='" . $imgurl . "' type=hidden></input>
  <input name=ix id=ix value='0' type=hidden></input>
  <input name=iy id=iy value='0' type=hidden></input>
  <input name=imode id=imode value='mouseover' type=hidden></input>
  <input name=patparent id=patparent value='' type=hidden></input>
  <input type=submit style=display:none; id=blastcol></input>
  </form>
  <form id=myformmo onsubmit=\"  return true;\" style=display:none; target=iflastcolmo method=POST action=./image_chart.php>
  <input name=returnxytoparent id=moreturnxytoparent value='" . $imgurl . "' type=hidden></input>
  <input name=ix id=moix value='0' type=hidden></input>
  <input name=iy id=moiy value='0' type=hidden></input>
  <input name=imode id=moimode value='mouseover' type=hidden></input>
  <input name=patparent id=mopatparent value='' type=hidden></input>
  <input type=submit style=display:none; id=moblastcol></input>
  </form>
  <iframe name=iflastcol id=iflastcol style=display:none; src=./image_chart.php></iframe>
  <iframe name=iflastcolmo id=iflastcolmo style=display:none; src=./image_chart.php></iframe>
  <canvas id=mycanvas width=455 height=350 style='display:none;width:455px;height:350px;'></canvas>
  <div id=premyp style=display:none;><p id=myp style=display:none;></p></div>
  <iframe onload=coordit(this); id=wif style=display:none; src='//wikipedia.org/wiki/Saint_George,_Antigua_and_Barbuda'></iframe>
  <input type=hidden id=placegeo value=''></input>
<iframe onload='if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i)) { ifcheck(this); } else { nonmifcheck(this); }' name=ifcountries id=ifcountries style='border-top:5px solid transparent;border-left:5px solid transparent;display:none;width:900px;height:900px;z-index:987;margin:0 0 0 0;padding:0 0 0 0;' src=''></iframe>
<span id='plots'></span>
  <br><br>&nbsp;<button title='One click uses hover 2x zoom afterwards ... more for larger zoom ... right click for no zoom' oncontextmenu=' event.stopPropagation(); defzoom=1; ' style=background-color:yellow; id=twoc onclick='event.stopPropagation(); dotwoc();'>Circle of Interest via Next 2 Clicks</button><br><br>&nbsp;<button title='One click uses hover 2x zoom afterwards ... more for larger zoom ... right click for no zoom' oncontextmenu=' event.stopPropagation();  defzoom=1; ' style=background-color:magenta; id=twoc onclick='event.stopPropagation(); dotwor();'>Rectangle via 2 Clicks</button>
  <div id=dvstyle></div>
  <div id=imgmore></div>
  </body>
  </html>";
  exit;
} else if (isset($_POST['returnxytoparent']) && isset($_POST['ix']) && isset($_POST['iy'])) {
  $alp="0123456789ABCDEF"; //=map&chs=600x450&
   //echo "<html><body onload=\" alert('" . str_replace('+',' ',urldecode($_POST['returnxytoparent'])) . "'); \"></body></html>";
   //exit;  
  if (strpos(urldecode($_POST['returnxytoparent']), 'data:') !== false) {
   //echo '<html><body onload=" alert(4); "></body></html>';
   //exit;  
  $im = imagecreatefromstring(base64_decode(explode(";base64,", str_replace(' ','+',urldecode($_POST['returnxytoparent']))  )[1]));
  } else {
  $imgurl='http://chart.googleapis.com/chart?' . str_replace('=map&chld=', '=map&chs=455x350&chld=', explode('?', str_replace('+',' ',urldecode($_POST['returnxytoparent'])))[1]);
   //echo "<html><body onload=\" alert('" . $imgurl . "'); \"></body></html>";
   //exit;  
  $im = imagecreatefromstring(file_get_contents($imgurl));
  }
  $tlrgb = imagecolorat($im, $_POST['ix'], $_POST['iy']);
  $topclick='';
  if ($tlrgb) {
   //echo '<html><body onload=" alert(4); "></body></html>';
   //exit;  
   $tlr = ($tlrgb >> 16) & 0xFF;
   $tlg = ($tlrgb >> 8) & 0xFF;
   $tlb = $tlrgb & 0xFF;   
   $blchex=substr(substr($alp,($tlr / 16)),0,1) . substr(substr($alp,($tlr % 16)),0,1) . substr(substr($alp,($tlg / 16)),0,1) . substr(substr($alp,($tlg % 16)),0,1) . substr(substr($alp,($tlb / 16)),0,1) . substr(substr($alp,($tlb % 16)),0,1);
   $isclick=false;
   if (strtoupper($blchex) == 'D0D0D0' || strtoupper($blchex) == 'FFFFFF' || strtoupper($blchex) == 'B3BCC0' || strtoupper($blchex) == 'BCBCBC') { exit; }
   if ($_POST['imode'] == 'mouseover') {
     if (strpos(strtoupper($_POST['imode']), strtoupper($blchex)) === false && 1 == 1) { exit;   }
   }
   if (isset($_POST['patparent']) && isset($_POST['imode'])) {
     $pat=str_replace('+',' ',urldecode($_POST['patparent']));
     if ($_POST['imode'] == 'click') {
        if (strpos(str_replace('+',' ',urldecode($_POST['patparent'])), '#' . strtoupper($blchex)) !== false) {
          $topclick=" parent.document.getElementById('" . explode('"', explode(' id="', explode('#' . strtoupper($blchex), $pat)[0])[-1 + sizeof(explode(' id="', explode('#' . strtoupper($blchex), $pat)[0]))] )[0]   . "').click(); ";
        } else if (strpos(str_replace('+',' ',urldecode($_POST['patparent'])), '#' . strtolower($blchex)) !== false) {
          $topclick=" parent.document.getElementById('" . explode('"', explode(' id="', explode('#' . strtolower($blchex), $pat)[0])[-1 + sizeof(explode(' id="', explode('#' . strtolower($blchex), $pat)[0]))] )[0]   . "').click(); ";
        }
     } else {
        $topclick=" parent.document.getElementById('ici').title=parent.document.getElementById('" . explode('"', explode(' id="', explode('#' . strtolower($blchex), $pat)[0])[-1 + sizeof(explode(' id="', explode('#' . strtolower($blchex), $pat)[0]))] )[0]   . "').title;  ";  
   //echo "<html><body onload=\" alert('" . $blchex . " vs " . str_replace("'","",str_replace('"','',$topclick)) . ' ... ' . str_replace("'","",str_replace('"','',$pat)) . "'); \"></body></html>";
   //exit;  
     }
   }
   echo '<html><body onload=" parent.document.getElementById(' . "'lastcol'" . ').title=' . "'" . $_POST['imode'] . "'" . ';  parent.document.getElementById(' . "'lastcol'" . ').value=' . "'" . $blchex . "'" . '; ' . $topclick . ' "></body></html>';
  } //else {
   //echo '<html><body onload=" alert(234); "></body></html>';
   //exit;  
  //}
  imagedestroy($im);
  exit;
}

$setrange='';
$redplace=-1;
$redname='';
$thingos='';

if (isset($_GET['match'])) {
               if (!isset($_GET['ccode'])) {
                 $_GET['ccode']=explode('-',explode(urlencode('-'), $_GET['match'])[0])[0];
                 if ($_GET['ccode'] == $_GET['match']) {
               for ($ihuh=0; $ihuh<sizeof($iso_country_codes); $ihuh+=2) {
                 if (strtoupper(explode('-', $_GET['ccode'])[0]) == strtoupper($iso_country_codes[$ihuh])) {
                  echo $iso_country_codes[1 + $ihuh];
                  exit;
                 }
               }
                 }
               }
} else if (isset($_POST['match'])) {
               if (!isset($_POST['ccode'])) {
                 $_POST['ccode']=explode('-',explode(urlencode('-'), $_POST['match'])[0])[0];
                 if ($_POST['ccode'] == $_POST['match']) {
               for ($ihuh=0; $ihuh<sizeof($iso_country_codes); $ihuh+=2) {
                 if (strtoupper(explode('-', $_POST['ccode'])[0]) == strtoupper($iso_country_codes[$ihuh])) {
                  echo $iso_country_codes[1 + $ihuh];
                  exit;
                 }
               }
                 }
               }
}

if ((isset($_GET['ccode']) || isset($_POST['ccode'])) && isset($_GET['geojson']) || isset($_POST['geojson'])) {
  if (isset($_GET['geojson'])) {
    header('Location: ./rangegeo.php' . str_replace('??','?',('?' . $_SERVER['QUERY_STRING'])) . '&justthat=+containidisifrepos' . '#' . str_replace('?','',('' . $_SERVER['QUERY_STRING'])) );
  } else if (1 == 5) {
    header('Location: ./rangegeo.php?ccode=' . $_POST['ccode'] . '&geojson=' . $_POST['geojson'] . '&justthat=+containidisifrepos' . '#' . $_POST['ccode']);
  } else {
    echo "<html<head><title>GeoJson World Countries via Google Chart Image Chart Map Chart - RJM Programming - November, 2023</title></head><body onload=\"document.getElementById('myfsub').click();\">
    <form style=display:none; method='POST' action='./rangegeo.php' target='_self'>
    <input name=ccode value='" . str_replace('+',' ',urldecode($_POST['ccode'])) . "' type=hidden></input>
    <input name=geojson value='y' type=hidden></input>
    <input name=justthat value=' containidisifrepos' type=hidden></input>
    <input id=myfsub type=submit style=display:none; value=Submit></input>
    </form></body></html>";
  }
  exit;
} else if (isset($_GET['ccode']) || isset($_POST['ccode'])) {
  $mlls=[false,false,false,false];
            $nextdone=false;
            $nexttwodone=false;
            $nextthreedone=false;
            $nextfourdone=false;
  $minlat=-90.0;
  $minlong=-180.0;
  $maxlat=90.0;
  $maxlong=180.0;
  $rucc='';
  $ucc='';
  $ruccs=[];
  $thish='';
  $hasv='';
  if (isset($_GET['ccode'])) {
    $hashv='#' . $_GET['ccode'];
    $ucc=trim(str_replace('+',' ',urldecode($_GET['ccode'])));
    $rucc=$ucc;
  } else if (isset($_POST['ccode'])) {
    $hashv='#' . $_POST['ccode'];
    $ucc=trim(str_replace('+',' ',urldecode($_POST['ccode'])));
    $rucc=$ucc;
  } 
  if (strpos($ucc, ',') === false) {
    $hashv='';
    $ruccs=[$rucc];
  }
  if (strpos($ucc, ',') !== false) {
    $uccs=explode(',', $ucc);
    $ruccs=explode(',', $rucc);
    $thish="<html><head><title>GeoJson World Countries via Google Chart Image Chart Map Chart - RJM Programming - November, 2023</title><script type='text/javascript'>
 
 var thingos=\"" . $thingos . "\"; 
 
     
function jfonl(inidea) {
  location.hash='#' + inidea;
  //alert(inidea + ' vs ' + location.hash);
  ifonl(inidea.replace('#','').split(',')[0]);
}
    
   
function ifonl(inidea) {
  var outidea=inidea;
  var gcsuff='%20[~' + inidea + '~,2]';
  if (decodeURIComponent('' + location.hash).indexOf(',') != -1) {
  var prefix=top.document.getElementById('kfrepos').src.split('&iso=')[0] + '&iso=';
  var jprefix=(top.document.getElementById('jfrepos').src.split('&data=')[0]).replace('Greenwich%20London%20Places', 'My%20World%20Countries') + '&data=';
  if (jprefix.indexOf(';My') != -1) {
     jprefix=jprefix.replace(jprefix.split('title=')[1].split(';')[0] + ';', '').replace(/\&are/g,'&arJUNKe').replace('peninfo=','penJUNKinfo=');
  }
  var moref=decodeURIComponent('' + location.hash).split(',');
  for (var im=1; im<moref.length; im++) {
    outidea+='&iso' + eval(1 + im) + '=' + moref[im];
    gcsuff+='%20,%20[~' + moref[im] + '~,2]';
  } 
  //alert(jprefix);
  //alert(gcsuff);
  if (window.top != window) {
    if (top.document.getElementById('kfrepos').src.indexOf(outidea) == -1) {
    top.document.getElementById('kfrepos').src=prefix + outidea;
    top.document.getElementById('jfrepos').src=jprefix + '&data=' + gcsuff;
    }
  } else {
  //alert('967 ' + outidea);
    if (document.getElementById('kfrepos').src.indexOf(outidea) == -1) {
  //alert('1967 ' + outidea);
    document.getElementById('kfrepos').src=prefix + outidea;
    document.getElementById('jfrepos').src=jprefix + '&data=' + gcsuff;
    }
  }
  }
  return outidea;
}
    
    
    </script></head><body onload=jfonl('" . $ucc . "');><input type=hidden id=placegeo title='' value=''></input>
<iframe onload='if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i)) { ifcheck(this); } else { nonmifcheck(this); }' name=ifcountries id=ifcountries style='border-top:5px solid transparent;border-left:5px solid transparent;display:none;width:900px;height:900px;z-index:987;margin:0 0 0 0;padding:0 0 0 0;' src=''></iframe>
<span id='plots'></span>
</body></html>";
    for ($iw=0; $iw<sizeof($uccs); $iw++) {
      $thish=str_replace("</body>","<iframe id=iwif" . strtolower(explode(',',$ucc)[$iw]) . " onload=ifonl('" . explode(',',$ucc)[0] . "'); style=width:100%;height:800px; src='./image_chart.php?ccode=" . $ruccs[$iw] . $hashv . "'></iframe></body>", $thish);
    }
  }
  $succ='';
  if (isset($_GET['clang']) || isset($_POST['clang'])) {
   if (isset($_GET['clang'])) {
    $thish=str_replace('?', '?clang=' . $_GET['clang'] . '&', $thish);
    $succ=strtolower(trim(str_replace('+',' ',urldecode($_GET['clang'])))) . '.';
   } else if (isset($_POST['ccode'])) {
    $thish=str_replace('?', '?clang=' . $_POST['clang'] . '&', $thish);
    $succ=strtolower(trim(str_replace('+',' ',urldecode($_POST['clang'])))) . '.';
   } 
   if (strlen($succ) != 3) {
    $succ='';
   }
  }
  if ($thish != '') {
    if (isset($_GET['world']) || isset($_POST['world'])) {
          $thish=str_replace('?', '?world=y&', $thish);
    }
    if (isset($_GET['redregionquiz']) || isset($_POST['redregionquiz'])) {
          $thish=str_replace('?', '?redregionquiz=y&', $thish);
    }
    echo $thish;
    exit;
  }
  if (strlen($ucc) == 2) {
     if (strpos($ourtzlist, ',' . $ucc . ',') !== false) {
       $preohbit=explode(',' . $ucc . ',', $ourtzlist)[0];
       $ohbit=explode('<', $preohbit)[-1 + sizeof(explode('<', $preohbit))];
       if (strpos($ohbit, ' title="') !== false) {
         $tbitis=explode('"', explode(' title="', $ohbit)[1])[0];
         if (sizeof(explode(',', $tbitis)) == 4) {
           $setrange=$tbitis;
         }
       }
     }
     if (strtoupper($ucc) == 'RU' || strtoupper($ucc) == 'SI') { $b='r'; }
     $beworried=true;
     $nine=9;
     $seven=7;
     $isbig=1;
     for ($jk=0; $jk<sizeof($iso_country_codes); $jk+=2) {
       if (strtoupper($ucc) == strtoupper($iso_country_codes[$jk])) {
         if ((substr(strtoupper($ucc),0,1) . substr(strtolower($ucc),1)) == $iso_country_codes[$jk] || (substr(strtoupper($ucc),0,1) . substr(strtolower($ucc),1)) == $ucc) {
           $isbig=0;
         } else if ((substr(strtolower($ucc),0,1) . substr(strtoupper($ucc),1)) == $iso_country_codes[$jk] || (substr(strtolower($ucc),0,1) . substr(strtoupper($ucc),1)) == $ucc) {
           $isbig=-9;
         }  else if (strtolower($ucc) == $iso_country_codes[$jk]) {
           $isbig=-1;
         } else if ((substr(strtolower($ucc),0,1) . substr(strtoupper($ucc),1)) == $iso_country_codes[$jk] || (substr(strtolower($ucc),0,1) . substr(strtoupper($ucc),1)) == $ucc) {
           $isbig=-9;
         } 
       }
     }
     if (strtoupper($ucc) == 'AD') {
       $nine=1.2;
       $seven=1.2;
       $beworried=false;
     } else if (strtoupper($ucc) == 'MC' || $isbig == -1) {
       $nine=0.05;
       $seven=0.05;
       $beworried=false;
     } else if (strtoupper($ucc) == 'LV' || $isbig == 0) {
       $nine=2.2;
       $seven=2.2;
            $nextdone=true;
            $nexttwodone=true;
            //$nextthreedone=true;
     } else if (strtoupper($ucc) == 'LV' || $isbig < -2) {
       $nine=9.2;
       $seven=10.2;
            $nextdone=true;
            $nexttwodone=true;
            //$nextthreedone=true;
     }
     $tza="0";
     $statecount=0;
     $tbit='chtt=Regions&';
     $iccs=file_get_contents('http://' . $succ . 'wikipedia.org/wiki/ISO_3166-2:' . strtoupper($ucc));
     if (strpos($iccs, '"ISO 3166",') !== false) {
       $thistb=explode('"', explode('"ISO 3166",', $iccs)[1])[1];
       if ($thingos == '') {
         $thingos=$thistb;
       } else {
         $thingos.='|' . $thistb;
       }
       $tbit='chtt=' . urlencode($thistb) . '&';
       $thish=str_replace(' id=iwif' . strtolower($ucc) . ' ', ' title="' . $thistb . '" id=iwif' . strtolower($ucc) . ' ', $thish);
     }
     if (strpos($iccs, '<tbody') !== false && strpos($iccs, strtoupper($ucc) . '-') !== false) {
       if (!isset($_GET['world']) && !isset($_POST['world'])) {
       $placesa=explode(',' . strtoupper($ucc) . ',', $ourtzlist);
       if (sizeof($placesa) > 1) {
        $kkk=0;
        for ($kk=0; $kk<sizeof($placesa); $kk++) {
          $thislong=explode(',', $placesa[$kk])[-2 + sizeof(explode(',', $placesa[$kk]))];
          $thislat=explode('"', explode(',', $placesa[$kk])[-3 + sizeof(explode(',', $placesa[$kk]))])[-1 + sizeof(explode('"', explode(',', $placesa[$kk])[-3 + sizeof(explode(',', $placesa[$kk]))]))];
          if ($thislong != 0 || $thislat != 0) {
          if ($kkk == 0) {
            $minlong=max(-180.0,(-$nine + $thislong));
            $maxlong=min(180.0,($nine + $thislong));
            $minlat=max(-90.0,(-$seven + $thislat));
            $maxlat=min(90.0,($seven + $thislat));
            $kkk=1;
            $tza=explode('"', $placesa[1 + $kk])[0];
            //echo $thislong . ' ' . $maxlong;
            //exit;
          } else {
            $beworried=false;
            if ($thislong < $minlong) { $minlong=max(-180.0,(-$nine + $thislong)); }
            if ($thislong > $maxlong) { $maxlong=min(180.0,($nine + $thislong)); }
            if ($thislat < $minlat) { $minlat=max(-90.0,(-$seven + $thislat)); }
            if ($thislat > $maxlat) { $maxlat=min(90.0,($seven + $thislat)); }
           // echo ' ... ' . $thislong . ' ' . $maxlong;
          }
          }
        }
          if ($beworried && $nine == 9 && $seven == 7) {
            $minlong=max(-180.0,(-9 + $minlong));
            $maxlong=min(180.0,(9 + $maxlong));
            $minlat=max(-90.0,(-7 + $minlat));
            $maxlat=min(90.0,(7 + $maxlat));
            $ptwo=explode(' data-geo="', $ourtzlist);
            for ($kkk=1; $kkk<sizeof($ptwo); $kkk++) {
            if (explode(',', $ptwo[$kkk])[3] != strtoupper($ucc) && explode('"', explode(',', $ptwo[$kkk])[4])[0] == $tza) {
            $complong=explode(',', $ptwo[$kkk])[1];
            $complat=explode(',', $ptwo[$kkk])[0];
            
            if ($complong < $minlong || $complong > $maxlong || $complat < $minlat || $complat > $maxlat) {
            //if (abs($complong - $minlong) < 7 || abs($complong - $maxlong) < 7 || abs($complat - $minlat) < 7 || abs($complat - $maxlat) < 7) {
            if (abs($complat - $minlat) < 7 || abs($complat - $maxlat) < 7) {

              if ($complong < $minlong) { $mlls[0]=true;  }
              if ($complong > $maxlong) { $mlls[1]=true;  }
              if ($complat < $minlat) { $mlls[2]=true;  }
              if ($complat > $maxlat) { $mlls[3]=true;  }
              if (!$nextdone) {
            if ($complong < $minlong) { $minlong=max(-180.0,(-1 + $complong)); }
            if ($complong > $maxlong) { $maxlong=min(180.0,(1 + $complong)); }
            if ($complat < $minlat) { $minlat=max(-90.0,(-1 + $complat)); }
            if ($complat > $maxlat) { $maxlat=min(90.0,(1 + $complat)); }
                $nextdone=true;
              } else if (!$nexttwodone) {
            if ($complong < $minlong) { $minlong=max(-180.0,(-1 + $complong)); }
            if ($complong > $maxlong) { $maxlong=min(180.0,(1 + $complong)); }
            if ($complat < $minlat) { $minlat=max(-90.0,(-1 + $complat)); }
            if ($complat > $maxlat) { $maxlat=min(90.0,(1 + $complat)); }
                $nexttwodone=true;
              } else if (!$nextthreedone) {
            if ($complong < $minlong) { $minlong=max(-180.0,(-1 + $complong)); }
            if ($complong > $maxlong) { $maxlong=min(180.0,(1 + $complong)); }
            if ($complat < $minlat) { $minlat=max(-90.0,(-1 + $complat)); }
            if ($complat > $maxlat) { $maxlat=min(90.0,(1 + $complat)); }
                $nextthreedone=true;
               } else if (!$nextfourdone) {
            if ($complong < $minlong) { $minlong=max(-180.0,(-1 + $complong)); }
            if ($complong > $maxlong) { $maxlong=min(180.0,(1 + $complong)); }
            if ($complat < $minlat) { $minlat=max(-90.0,(-1 + $complat)); }
            if ($complat > $maxlat) { $maxlat=min(90.0,(1 + $complat)); }
                if ($mlls[0] && $mlls[1] && $mlls[2] && $mlls[3]) {
                $nextfourdone=true;
                }
             }
            }
            
            }
            }
            }
            
          }
        }
       }
       if ($setrange != '' && !isset($_GET['world']) && !isset($_POST['world'])) {
       $url='http://chart.googleapis.com/chart?cht=map:fixed=' . $setrange . '&chs=600x350&chld=&chco=&chdl=';
       } else {
       $url='http://chart.googleapis.com/chart?cht=map:fixed=' . $minlat . ',' . $minlong . ',' . $maxlat . ',' . $maxlong . '&chs=600x350&chld=&chco=&chdl=';
       }
       $zero=explode(strtoupper($ucc) . '-', $iccs)[0];
       $subi=explode('</tbody>', substr($iccs, (-3 + strlen($zero))))[0]; //$subi=explode('</tbody>', explode('<tbody', $iccs)[1])[0];
       $rowsd=explode('</tr>', $subi);
       $ru=-1;
       $rl=-1;
       if (isset($_GET['redregionquiz']) || isset($_POST['redregionquiz']) || strpos(('' . $_SERVER['QUERY_STRING']), 'redregionquiz') !== false) {
       for ($ir=0; $ir<sizeof($rowsd); $ir++) {
         if (strpos($rowsd[$ir], strtoupper($ucc) . '-') !== false) {
           if ($rl < 0) {
             $rl=$ir;
             $ru=$ir;
           } else {
             $ru=$ir;
           }
         }
       }
       if ($rl >= 0 && $ru >= 1) {
         $redplace=max(1,rand($rl, $ru));
       }
       }
       $sr=-1;
       for ($ir=0; $ir<sizeof($rowsd); $ir++) {
         if (strpos($rowsd[$ir], strtoupper($ucc) . '-') !== false) {
           
           $thiscode=str_replace('*','',strtoupper($ucc) . '-' . explode('<', explode(strtoupper($ucc) . '-', $rowsd[$ir])[1])[0]);
           $zbit=explode($thiscode, $rowsd[$ir])[0] . $thiscode;
           $therest=str_replace('&nbsp;','',substr($rowsd[$ir], strlen($zbit)));
           $therestbits=explode('</a>', $therest);
           $thisstate='';
           //echo $therest;
           //exit;
           for ($jr=0; $jr<sizeof($therestbits); $jr++) {
             $thistext=trim(str_replace('&nbsp;','',explode('>', $therestbits[$jr])[(-1 + sizeof(explode('>', $therestbits[$jr])))]));
             //if ($thistext != '') {
             //echo $thiscode . $therest . ' ThistexT=' . $thistext;
             //exit;
             //}
             if ($thisstate == '' && $thistext != $thiscode && trim(str_replace('&nbsp;','',$thistext)) != '' && substr(substr(($thistext . '   '),2),0,1) != '-') {
             //if ($thistext != '') {
             //echo 'Thistext=' . $thistext;
             //exit;
             //}
               $thisstate=str_replace('&nbsp;','',$thistext);
             }
           if (isset($_GET['match'])) {
             if ($thiscode == urldecode($_GET['match']) && $thisstate != '') {
               for ($ihuh=0; $ihuh<sizeof($iso_country_codes); $ihuh+=2) {
                 if (strtoupper(explode('-', $thiscode)[0]) == strtoupper($iso_country_codes[$ihuh])) {
                  echo $thisstate . ' (' . $iso_country_codes[1 + $ihuh] . ')';
                  exit;
                 }
               }
               echo $thisstate;
               exit;
             } //else {
               //echo '*' . $thiscode . '*';
               //exit;
             //}
           } else if (isset($_POST['match'])) {
             if ($thiscode == urldecode($_POST['match']) && $thisstate != '') {
               for ($ihuh=0; $ihuh<sizeof($iso_country_codes); $ihuh+=2) {
                 if (strtoupper(explode('-', $thiscode)[0]) == strtoupper($iso_country_codes[$ihuh])) {
                  echo $thisstate . ' (' . $iso_country_codes[1 + $ihuh] . ')';
                  exit;
                 }
               }
               echo $thisstate;
               exit;
             } //else {
               //echo '*' . $thiscode . '*';
               //exit;
             //}
           }
           }
           if ($thisstate != '') {
             $sr++;
                  //echo $thisstate;
       //exit;
             if (strtolower($ucc) == 'pJUNKl' && sizeof($rowsd) < 20 && $beworried) {
             $relurl=explode('"', explode(' href="', explode($thisstate . '</a>', $iccs)[0])[-1 + sizeof(explode(' href="', explode($thisstate . '</a>', $iccs)[0]))])[0];
             $interimurl='http://' . $succ . 'wikipedia.org' . $relurl;
             $geostuff=file_get_contents($interimurl);
             //file_put_contents('x.x', $interimurl . "\n" . $geostuff);
             if (strpos($geostuff, ' class="latitude">') !== false) {
               $xxlat=explode('<', explode(' class="latitude">', $geostuff)[1])[0];
               //echo " lat is " . $xxlat;
               if (strpos($xxlat, 'S') !== false) {
                 $thislat=(-1.0 * explode("°", $xxlat)[0]);
               } else {
                 $thislat=(1.0 * explode("°", $xxlat)[0]);
               }
               //echo " Lat is " . $thislat;
               $xxlong=explode('<', explode(' class="longitude">', $geostuff)[1])[0];
               //echo " long is " . $xxlong;
               if (strpos($xxlong, 'E') !== false) {
                 $thislong=(-1.0 * explode("°", $xxlong)[0]);
               } else {
                 $thislong=(1.0 * explode("°", $xxlong)[0]);
               }
               //echo " Long is " . $thislong;
               //exit;
            if ($thislong < $minlong) { $minlong=max(-180.0,(-1 + $thislong)); }
            if ($thislong > $maxlong) { $maxlong=min(180.0,(1 + $thislong)); }
            if ($thislat < $minlat) { $minlat=max(-90.0,(-1 + $thislat)); }
            if ($thislat > $maxlat) { $maxlat=min(90.0,(1 + $thislat)); }
               //echo " minLong is " . $minlong;
               //echo " minLat is " . $minlat;
               //echo " maxLong is " . $maxlong;
               //echo " maxLat is " . $maxlat;
               
             //echo substr(explode(' class="latitude">', $geostuff)[1],0,40);
             //exit;
             }
             }
             $sixrand=$sixrs[rand(0, (-1 + sizeof($sixrs)))];
             for ($kr=1; $kr<6; $kr++) {
               $sixrand.=$sixrs[rand(0, (-1 + sizeof($sixrs)))];
             }
             
             if ($statecount != 0 && ($ir >= (-1 + $redplace))) { // || $sr >= (-1 + $redplace)) && $statecount != 0) { 
               if ($redname == '') {
               $redname=$thisstate; 
               $sixrand='ff0000'; 
               } else if ($sixrand == 'ff0000' && $redplace >= 0) { 
               $sixrand='ff7712';  
               } else if (substr($sixrand,0,1) == 'f' && $redplace >= 0) {
               $sixrand='e' . substr($sixrand,1);
               }
             } else if ($sixrand == 'ff0000' && $redplace >= 0) { 
               $sixrand='ff7712';  
             } else if (substr($sixrand,0,1) == 'f' && $redplace >= 0) {
               $sixrand='e' . substr($sixrand,1);
             } else {
       //echo $sixrand;
       //exit;
             $sixrand=str_replace('00ff00','22ff22',str_replace('ff0000','ff2222',str_replace('0000ff','2222ff',$sixrand)));
             while (strpos($url, $sixrand) !== false) {
             $sixrand=$sixrs[rand(0, (-1 + sizeof($sixrs)))];
             for ($kr=1; $kr<6; $kr++) {
               $sixrand.=$sixrs[rand(0, (-1 + sizeof($sixrs)))];
             }
             $sixrand=str_replace('00ff00','22ff22',str_replace('ff0000','ff2222',str_replace('0000ff','2222ff',$sixrand)));
             }
             }
             if ($statecount == 0) {
       if (!isset($_GET['world']) && !isset($_POST['world'])) {
          if ($rucc != strtoupper($ucc) && $rucc != strtolower($ucc)) {
              if (strpos($ourtzlist, ',' . strtoupper(substr($thiscode,0,2)) . ',') !== false) {
                 $contbit=explode('/', explode('>', explode(',' . strtoupper(substr($thiscode,0,2)) . ',', $ourtzlist)[1])[1])[0];
                 if (strpos($continfo, ';' . $contbit . ';') === false) {
                    $contbit='';
                 }
              }
          }
       }
              if ($maxlat > 70.0) { $maxlat=80.0; }
                     if ($setrange != '' && !isset($_GET['world']) && !isset($_POST['world'])) {
              $url='http://chart.googleapis.com/chart?' . $tbit . 'cht=map:fixed=' . $setrange . '&chdlp=' . $b . '&chs=600x450&chld=' . $thiscode . '&chco=' . '00ff00' . '|' . $sixrand . '&chdls=' . '00ff00' . '|' . $sixrand . ',6&chdl=' . urlencode($thisstate);
                     } else {
              $url='http://chart.googleapis.com/chart?' . $tbit . 'cht=map:fixed=' . $minlat . ',' . $minlong . ',' . $maxlat . ',' . $maxlong . '&chdlp=' . $b . '&chs=600x450&chld=' . $thiscode . '&chco=' . '00ff00' . '|' . $sixrand . '&chdls=' . '00ff00' . '|' . $sixrand . ',6&chdl=' . urlencode($thisstate);
					 }
       //echo $url;
       //exit;
             } else {
              if ($contbit != '') {
              if (strpos($ourtzlist, ',' . strtoupper(substr($thiscode,0,2)) . ',') !== false) {
                 if ($contbit != explode('/', explode('>', explode(',' . strtoupper(substr($thiscode,0,2)) . ',', $ourtzlist)[1])[1])[0]) {
                   $contbit='';
                 }
              }
              }
           if (isset($_GET['match'])) {
             if ($thiscode == urldecode($_GET['match']) && $thisstate != '') {
               for ($ihuh=0; $ihuh<sizeof($iso_country_codes); $ihuh+=2) {
                 if (strtoupper(explode('-', $thiscode)[0]) == strtoupper($iso_country_codes[$ihuh])) {
                  echo $thisstate . ' (' . $iso_country_codes[1 + $ihuh] . ')';
                  exit;
                 }
               }
               echo $thisstate;
               exit;
             } //else {
               //echo '*' . $thiscode . '*';
               //exit;
             //}
           } else if (isset($_POST['match'])) {
             if ($thiscode == urldecode($_POST['match']) && $thisstate != '') {
               for ($ihuh=0; $ihuh<sizeof($iso_country_codes); $ihuh+=2) {
                 if (strtoupper(explode('-', $thiscode)[0]) == strtoupper($iso_country_codes[$ihuh])) {
                  echo $thisstate . ' (' . $iso_country_codes[1 + $ihuh] . ')';
                  exit;
                 }
               }
               echo $thisstate;
               exit;
             } //else {
               //echo '*' . $thiscode . '*';
               //exit;
             //}
           }
           
           if (isset($_GET['chco'])) {
              if (strlen(str_replace('+',' ',urldecode($_GET['chco']))) >= 6) {
                 if (substr($_GET['chco'],0,1) == '|') {
                   $_GET['chco']=substr($_GET['chco'],1);
                 } else if (substr($_GET['chco'],0,3) == urlencode('|')) {
                   $_GET['chco']=substr($_GET['chco'],3);
                 }
                 $sixrand=substr($_GET['chco'],0,6);
                 $_GET['chco']=substr($_GET['chco'],6);
              }
           }
           
              $url.='|' . urlencode($thisstate);
              $url=str_replace('&chco=', '|' . $thiscode . '&chco=', $url);
              $url=str_replace('&chdls=', '|' . $sixrand . '&chdls=', $url);
              $url=str_replace('&chdl=', '|' . $sixrand . ',6&chdl=', $url);
       //echo $url;
       //exit;
             }
             $statecount++;
           } //else {
             //echo "oops";
             //exit;
           //}
         }
       }

              $url=str_replace('&chco=', '|' . explode('-', $thiscode)[0] . '&chco=', $url);
              $url=str_replace('&chdls=', '|' . '0000ff' . '&chdls=', $url);
              $url=str_replace('&chdl=', '|' . '0000ff' . ',6&chdl=', $url);


       if (isset($_GET['redregionquiz']) || isset($_POST['redregionquiz']) || strpos(('' . $_SERVER['QUERY_STRING']), 'redregionquiz') !== false) {
        //if ($redname != '' && 
        //   (isset($_GET['cellnumber']) || isset($_POST['cellnumber']) && 
        //   (isset($_GET['chosencell']) || isset($_POST['chosencell'])) {
        if ($redname != '' && strpos($url, 'chco=') !== false && strpos($url, 'chdl=') !== false && strpos($url, 'ff0000') !== false) {
           $cols=explode('|', explode('&', explode('chco=', $url)[1])[0]);
           $regs=explode('|', explode('&', explode('chdl=', $url)[1])[0]);
           
    // http://chart.googleapis.com/chart?chtt=States+and+territories+of+Australia
    //&cht=map:fixed=-61.5,106.85,-5.46667,162.03333&chdlp=b&chs=600x450
    //&chld=AU-NSW|AU-QLD|AU-SA|AU-TAS|AU-VIC|AU-WA|AU-ACT|AU-NT
    //&chco=74e311|3076e2|ff0000|e73dff|00c34f|02e46b|533845|d62b4a
    //&chdls=74e311,6|3076e2,6|ff0000,6|e73dff,6|00c34f,6|02e46b,6|533845,6|d62b4a,6
    //&chdl=New+South+Wales|Queensland|South+Australia|Tasmania|Victoria|Western+Australia|Australian+Capital+Territory|Northern+Territory       
           
           for ($icols=0; $icols<sizeof($cols); $icols++) {
             if ($cols[$icols] == 'ff0000') {
               if (str_replace('+',' ',urldecode($regs[ ((-1 + $icols) % sizeof($regs)) ])) != $redname) {
                 $redname=str_replace('+',' ',urldecode($regs[ ((-1 + $icols) % sizeof($regs)) ]));
               }
             }
           }
        }
        if (1 == 9) {
         $redname=$redname;
        } else if ($redname != '' && isset($_POST['countryname'])) {
         file_put_contents('lasturlis.html', '<html><body onload="var ans=' . "'" . $redname .  "'" . '; if (document.URL.toLowerCase().indexOf(encodeURIComponent(' . "('" . str_replace('+',' ',urldecode($_POST['countryname'])) . "').toLowerCase()" . ')) != -1) { if (window.parent) { if (parent.document.getElementById(' . "'done'" . ')) { parent.document.getElementById(' . "'done'" . ').value=String.fromCharCode(65); }  }  var yans=prompt(' . "'Which region of " . str_replace('+',' ',urldecode($_POST['countryname'])) . " is red?',''" . '); if (!yans) { alert(' . "'Answer was ' + ans" . ');  } else if (yans.toUpperCase().trim() == ans.toUpperCase().trim()) {  alert(' . "'Yay!!'" . '); } else {  alert(' . "'Sorry, answer was ' + ans" . '); } } "></body></html>');
        } else if ($redname != '' && isset($_GET['countryname'])) {
         file_put_contents('lasturlis.html', '<html><body onload="var ans=' . "'" . $redname .  "'" . '; if (document.URL.toLowerCase().indexOf(encodeURIComponent(' . "('" . str_replace('+',' ',urldecode($_GET['countryname'])) . "').toLowerCase()" . ')) != -1) { if (window.parent) { if (parent.document.getElementById(' . "'done'" . ')) { parent.document.getElementById(' . "'done'" . ').value=String.fromCharCode(65); }  }  var yans=prompt(' . "'Which region of " . str_replace('+',' ',urldecode($_GET['countryname'])) . " is red?',''" . '); if (!yans) { alert(' . "'Answer was ' + ans" . ');  } else if (yans.toUpperCase().trim() == ans.toUpperCase().trim()) {  alert(' . "'Yay!!'" . '); } else {  alert(' . "'Sorry, answer was ' + ans" . '); } } "></body></html>');
        } else if ($redname != '' && 1 == 5) {
         file_put_contents('lasturlis.html', '<html><body onload="var ans=' . "'" . $redname .  "'" . '; var yans=prompt(' . "'Which region is red?',''" . '); if (!yans) { alert(' . "'Answer was ' + ans" . ');  } else if (yans.toUpperCase().trim() == ans.toUpperCase().trim()) {  alert(' . "'Yay!!'" . '); } else {  alert(' . "'Sorry, answer was ' + ans" . ');  } "></body></html>');
        }
        if (1 == 1) {
         $wasurl=$url;
         $bas=explode('&', $url);
         for ($ibas=1; $ibas<sizeof($bas); $ibas++) {
          if (substr($bas[$ibas],0,4) == 'chdl') {
           $wasurl=str_replace('&chdl' . substr($bas[$ibas],4), '', $wasurl);
          }
         }
         $url=$wasurl;
        } else {
         $url=explode('&chdl', $url)[0];
        }
       }
       if (!isset($_GET['world']) && !isset($_POST['world'])) {
          if ($rucc != strtoupper($ucc) && $rucc != strtolower($ucc)) {
           //echo $contbit;
           //exit;
           //$contbit='IS|CY|'; // -44,113.65,-10.26667,161.28333
           if ($contbit != '') {
              $hashbit='#;' . $contbit . ';' . explode(';', explode(';' . $contbit . ';', $continfo)[1])[0];
              if (strpos($url, 'map:') !== false) { //} && $contbit != 'Australia') {
                if (str_replace('Europe','Australia',str_replace('America','Australia',str_replace('Africa','Australia',$contbit))) == 'Australia' && sizeof(explode(':', $hashbit)) > 1) {
                $url=str_replace('map:' . explode('&chs=', explode('map:', $url)[1])[0], 'map:fixed=' . explode(':', $hashbit)[1], $url);
                } else {
                $url=str_replace('map:' . explode('&chs=', explode('map:', $url)[1])[0], 'map', $url);
                }
              }
              $contbit=explode(':', explode('#;' . $contbit . ';', $hashbit)[1])[0];
              //$url=str_replace('&chco=', '&chco=b1bbc1|b1bbc1|', explode('&chdls=', $url)[0]);
              $chcobit='|00ff00|00ff00';

// http://chart.googleapis.com/chart?chtt=States+and+territories+of+Australia&cht=map:fixed=-61.5,106.85,-5.46667,162.03333&chdlp=b&chs=600x450&chld=AU-NSW|AU-QLD|AU-SA|AU-TAS|AU-VIC|AU-WA|AU-ACT|AU-NT|AU&chco=00ff00|af4269|ff0000|18c26d|e471ae|336c99|24c49c|ebceb5|3e0122|0000ff&chdls=00ff00|af4269,6|ff0000,6|18c26d,6|e471ae,6|336c99,6|24c49c,6|ebceb5,6|3e0122,6|0000ff,6&chdl=New+South+Wales|Queensland|South+Australia|Tasmania|Victoria|Western+Australia|Australian+Capital+Territory|Northern+Territory
              if (strpos($url, '&chld=') !== false) {
              $newcontbit='';
              $newchcobit='';
              $newcs=explode('|', $contbit);
              for ($inewcs=0; $inewcs<sizeof($newcs); $inewcs++) {
                 if ($newcs[$inewcs] != '' && strpos(explode('&', explode('&chld=', $url)[1])[0], $newcs[$inewcs] . '|') === false && strpos(explode('&', explode('&chld=', $url)[1])[0], $newcs[$inewcs] . '&') === false && strpos(explode('&', explode('&chld=', $url)[1])[0], $newcs[$inewcs] . '-') === false) {
                   $newcontbit.='|' . $newcs[$inewcs] . '';
                   $newchcobit.='|00ff00' . '';
                 }
              }
              $contbit=$newcontbit;
              $chcobit=$newchcobit;
              }
              //$url=str_replace('&chco=', '&chco=' . $chcobit, explode('&chdJUNKls=', $url)[0]);
              //$url=str_replace('&chld=', '&chld=' . $contbit, $url);


//  www.rjmprogramming.com.au/ITblog/600/450/?chtt=Lists+of+subdivisions+of+the+United+Kingdom&cht=map:fixed=35.16666,-27.6,67.0,33.36666&chs=600x450&chld=GB-ENG|GB-NIR|GB-SCT|GB-WLS|GB|IS|CY&chco=00ff00|1373cf|ff0000|212ad8|b350eb|0000ff#|00ff00|00ff00&chdls=IS|CY|00ff00|1373cf,6|ff0000,6|212ad8,6|b350eb,6|0000ff,6&chdl=England|Northern+Ireland|Scotland|Wales#;Europe;IS|CY|:35.16666,-27.6,67.0,33.36666:468,450:422,560,890,140


              $url=str_replace('&chco=', $contbit . '&chco=', explode('&chdJUNKls=', $url)[0]);
              $url=str_replace('&chdls=', $chcobit . '&chdls=', $url);
              $url=str_replace('#','',$url);
              $url=str_replace('&chdls=', '#&chdls=', $url);

              if (strpos($url, '#') !== false) {
              $url.=str_replace('#','',$hashbit);
              } else {
              $url.=$hashbit;
              } 
              
              
           }
          }
       }


              if (isset($_GET['chco'])) {
                  if ($origchco != '' && $origchdls != '') {
                    $waschco=explode('&', explode('chco=', $url)[1])[0];
                    $waschdls=explode('&', explode('chdls=', $url)[1])[0];
                    $url=str_replace($waschco, $origchco, str_replace($waschdls, $origchdls, $url));
                  }
              }

           if (isset($_GET['match'])) {
               echo '';
               exit;
           } else if (isset($_POST['match'])) {
               echo '';
               exit;
           }
       if (isset($_GET['justfishing']) || isset($_POST['justfishing'])) {
       file_put_contents('lasturlisjf.txt', $url);
       } else {
       file_put_contents('lasturlis.txt', $url);
       }
       if (strpos($_SERVER['SERVER_NAME'], 'rjmprogramming-com-au') !== false || isset($_GET['gtover']) || isset($_POST['gtover'])) {
         echo "<html><body onload=\" top.location.href='" . $url .  "'; \"></body></html>";
         exit;
       }
       //$url=str_replace('http://chart.googleapis.com/chart', 'http://www.rjmprogramming.com.au/ITblog/600/350/', $url);
       //echo $url;
       
       //exit;
     }
  }
}

if (isset($_GET['justfishing']) || isset($_POST['justfishing'])) {
 echo '<html><body>' . $url . '</body></html>';
 exit;
}
if ($url != '') {
 header('Content-Type: image/png');
 echo file_get_contents($url);
 exit;
} else if (1 == 1) {
 echo "<html>
<head>
<meta charset='UTF-8'>
<title>Interfacer to Google Charts Image Chart Map Chart for Regional Country Colour Coding - RJM Programming - November, 2023</title>
<style>
 .crossedtotl { 
      background:
          linear-gradient(to top left,
              rgba(127,127,127,0) 0%,
              rgba(127,127,127,0) calc(50% - 0.8px),
              rgba(127,127,127,1) 50%,
              rgba(127,127,127,0) calc(50% + 0.8px),
              rgba(127,127,127,0) 100%);
 }
 
 .crossedtotr {
      background:
          linear-gradient(to top right,
              rgba(0,0,0,0) 0%,
              rgba(0,0,0,0) calc(50% - 0.8px),
              rgba(0,0,0,1) 50%,
              rgba(0,0,0,0) calc(50% + 0.8px),
              rgba(0,0,0,0) 100%);
 }
</style>
<script type='text/javascript'>

var luilook=true;
var thingos=\"" . $thingos . "\"; 
var tzlist='" . $ourtzlist . "';

// If you modify this array, also update default language / dialect below ... thanks to Google https://www.google.com/intl/en/chrome/demos/speech.html
var langs =
[['Afrikaans',       ['af-ZA']],
 ['አማርኛ',           ['am-ET']],
 ['Azərbaycanca',    ['az-AZ']],
 ['বাংলা',            ['bn-BD', 'বাংলাদেশ'],
                     ['bn-IN', 'ভারত']],
 ['Bahasa Indonesia',['id-ID']],
 ['Bahasa Melayu',   ['ms-MY']],
 ['Català',          ['ca-ES']],
 ['Čeština',         ['cs-CZ']],
 ['Dansk',           ['da-DK']],
 ['Deutsch',         ['de-DE']],
 ['English',         ['en-AU', 'Australia'],
                     ['en-CA', 'Canada'],
                     ['en-IN', 'India'],
                     ['en-KE', 'Kenya'],
                     ['en-TZ', 'Tanzania'],
                     ['en-GH', 'Ghana'],
                     ['en-NZ', 'New Zealand'],
                     ['en-NG', 'Nigeria'],
                     ['en-ZA', 'South Africa'],
                     ['en-PH', 'Philippines'],
                     ['en-GB', 'United Kingdom'],
                     ['en-US', 'United States']],
 ['Español',         ['es-AR', 'Argentina'],
                     ['es-BO', 'Bolivia'],
                     ['es-CL', 'Chile'],
                     ['es-CO', 'Colombia'],
                     ['es-CR', 'Costa Rica'],
                     ['es-EC', 'Ecuador'],
                     ['es-SV', 'El Salvador'],
                     ['es-ES', 'España'],
                     ['es-US', 'Estados Unidos'],
                     ['es-GT', 'Guatemala'],
                     ['es-HN', 'Honduras'],
                     ['es-MX', 'México'],
                     ['es-NI', 'Nicaragua'],
                     ['es-PA', 'Panamá'],
                     ['es-PY', 'Paraguay'],
                     ['es-PE', 'Perú'],
                     ['es-PR', 'Puerto Rico'],
                     ['es-DO', 'República Dominicana'],
                     ['es-UY', 'Uruguay'],
                     ['es-VE', 'Venezuela']],
 ['Euskara',         ['eu-ES']],
 ['Filipino',        ['fil-PH']],
 ['Français',        ['fr-FR']],
 ['Basa Jawa',       ['jv-ID']],
 ['Galego',          ['gl-ES']],
 ['ગુજરાતી',           ['gu-IN']],
 ['Hrvatski',        ['hr-HR']],
 ['IsiZulu',         ['zu-ZA']],
 ['Íslenska',        ['is-IS']],
 ['Italiano',        ['it-IT', 'Italia'],
                     ['it-CH', 'Svizzera']],
 ['ಕನ್ನಡ',             ['kn-IN']],
 ['ភាសាខ្មែរ',          ['km-KH']],
 ['Latviešu',        ['lv-LV']],
 ['Lietuvių',        ['lt-LT']],
 ['മലയാളം',          ['ml-IN']],
 ['मराठी',             ['mr-IN']],
 ['Magyar',          ['hu-HU']],
 ['ລາວ',              ['lo-LA']],
 ['Nederlands',      ['nl-NL']],
 ['नेपाली भाषा',        ['ne-NP']],
 ['Norsk bokmål',    ['nb-NO']],
 ['Polski',          ['pl-PL']],
 ['Português',       ['pt-BR', 'Brasil'],
                     ['pt-PT', 'Portugal']],
 ['Română',          ['ro-RO']],
 ['සිංහල',          ['si-LK']],
 ['Slovenščina',     ['sl-SI']],
 ['Basa Sunda',      ['su-ID']],
 ['Slovenčina',      ['sk-SK']],
 ['Suomi',           ['fi-FI']],
 ['Svenska',         ['sv-SE']],
 ['Kiswahili',       ['sw-TZ', 'Tanzania'],
                     ['sw-KE', 'Kenya']],
 ['ქართული',       ['ka-GE']],
 ['Հայերեն',          ['hy-AM']],
 ['தமிழ்',            ['ta-IN', 'இந்தியா'],
                     ['ta-SG', 'சிங்கப்பூர்'],
                     ['ta-LK', 'இலங்கை'],
                     ['ta-MY', 'மலேசியா']],
 ['తెలుగు',           ['te-IN']],
 ['Tiếng Việt',      ['vi-VN']],
 ['Türkçe',          ['tr-TR']],
 ['اُردُو',            ['ur-PK', 'پاکستان'],
                     ['ur-IN', 'بھارت']],
 ['Ελληνικά',         ['el-GR']],
 ['български',         ['bg-BG']],
 ['Pусский',          ['ru-RU']],
 ['Српски',           ['sr-RS']],
 ['Українська',        ['uk-UA']],
 ['한국어',            ['ko-KR']],
 ['中文',             ['cmn-Hans-CN', '普通话 (中国大陆)'],
                     ['cmn-Hans-HK', '普通话 (香港)'],
                     ['cmn-Hant-TW', '中文 (台灣)'],
                     ['yue-Hant-HK', '粵語 (香港)']],
 ['日本語',           ['ja-JP']],
 ['हिन्दी',             ['hi-IN']],
 ['ภาษาไทย',         ['th-TH']]];

 
 var noway=true, gcstr='', mcstr='', mode='single', lastinid='';
 var setr='" . $setrange . "';
 var thingos=\"" . $thingos . "\"; 
 
var blurbone=', where if you click on orange country more functionality available ', zaconto=null, zzaconto=null;
var blurbtwo=', where if you click on orange country more functionality available (change value from No Trip Planning to retain red x placement elements which you can right click to form trip legs, where double click on legs can simulate pen ups)';
var lastgdivid=' ', gdivid='', gw1='', gw2='', gw3=''; 
var pos3=-999, pos4=-999, blk='hidden';
var isdouble=0, nolineplease=false;
var sofararealist='|';
var lastspano=null, spanos=[], newone=99999999;
var lastr='';
var refreshword='rand';
var zoomword='zorro';
var iizoom=1, lastiizoom=0, zoomdone=false;
var spancount=0, jjans='No Trip Planning';
var dbwo=null, woit=false, woito=null, isfixed='', twomw='', lastcode='';
   var x=0, y=0, isclear=true;
   var xs=10, ys=10, lastsuff='';
   var storedsuffs='|';
   var screenheight=('" . $screenheight . "' == '0' ? eval('' + screen.height) : eval('' + '" . $screenheight . "'));
   var elem=null, context=null;
   var origtitle='Optionally click in relevant region for menu';
   var ourccd='" . $ourccd . "';
   var lastcode='" . $lastcode . "';
   var lastplace='" . $lastplace . "';
   var lastcountry='" . $lastcountry . "';
   var lastcountrycode='" . $lastcountrycode . "';
   var gextras='', grcodeis='', gerdescis='', grdescis='';
   var myxhr=null;
   

if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i) || 9 == 19) {
  blurbone='';
  blurbtwo='';
}
   
  function nospan() {
     if (('' + jjans).trim() == 'No Trip Planning') {
     document.getElementById('plots').innerHTML='';
     spancount=0;
     }
  }
  
  function sein(iz) {
    if (!zoomdone) {
      zoomdone=true;
      setInterval(rifcheck, 15000);
    }
    return iz;
  }
   
  function rifcheck() {
       var waszoom=1;
       var xif=-999, yif=-999, xxif=-999, yyif=-999;
       var xlatdeg=0, xlongdeg=0;
    if (9 == 9) {
          var iiizoom=lastiizoom;
          if (document.getElementById('ifcountries').src.indexOf('zoom=') == -1 && document.getElementById('ifcountries').src.indexOf('refresh=') == -1) {
          iiizoom=eval(2 * lastiizoom); //eval('' + zawconto.getzoom());
          }
          //alert('' + iiizoom + ' ' + lastiizoom + ' ' + document.getElementById('ifcountries').src);
          //alert('' + iiizoom);
            if (lastiizoom != iiizoom || (document.getElementById('ifcountries').src.indexOf('zoom=') != -1 && document.getElementById('ifcountries').src.indexOf('refresh=') != -1)) {
              var isp=0;
              var huhrect=document.getElementById('ifcountries').getBoundingClientRect();
              var ospancount=spancount;
              newone=eval(1 + spancount);
              while (document.getElementById('span' + isp)) {
                if (isp < ospancount) {
                waszoom=document.getElementById('span' + isp).getAttribute('data-zoom');
                if (waszoom != iiizoom) {
                //alert(67);
                  xlatdeg=eval('' + document.getElementById('span' + isp).getAttribute('data-geo').split(',')[0]);
                  xlongdeg=eval('' + document.getElementById('span' + isp).getAttribute('data-geo').split(',')[1]);
                //alert(167);
                  xxif=eval(iiizoom * eval(180 + eval('' + xlongdeg)));
                  yyif=eval(iiizoom * eval(90 - eval('' + xlatdeg)));
                //alert(1167);
                  if (1 == 1) {
            document.getElementById('plots').innerHTML+='<span id=sspan' + spancount + '><span oncontextmenu=\"event.stopPropagation(); event.preventDefault(); if (isdouble == 0) { storeaway(this); }\" data-zoom=\"' + iiizoom + '\" data-iframepos=\"' + huhrect.left + ',' + huhrect.top + '\" data-geo=\"' + xlatdeg + ',' + xlongdeg + '\" title=\"' + decodeURIComponent(document.getElementById('span' + isp).title) + '\" id=span' + spancount + ' style=\"font-style:bold;text-shadow:-1px 1px 1px #ff2d95;font-size:6px;margin:0 0 0 0;padding:0 0 0 0;z-index:2134;position:fixed;top:' + eval(eval('' + huhrect.top) + yyif) + 'px;left:' + eval(eval('' + huhrect.left) + xxif) + 'px;\">x</span></span>';
            nodiv(isp, spancount);
            spancount++;
            document.getElementById('span' + isp).style.display='none';
                  } else {
                  document.getElementById('span' + isp).style.top='' + eval(eval('' + huhrect.top) + yyif) + 'px';
                  document.getElementById('span' + isp).style.left='' + eval(eval('' + huhrect.left) + xxif) + 'px';
                  document.getElementById('span' + isp).setAttribute('data-zoom', '' + iiizoom);
                  document.getElementById('span' + isp).setAttribute('data-iframepos', '' + huhrect.left + ',' + huhrect.top);
                  document.getElementById('sspan' + isp).innerHTML=document.getElementById('span' + isp).outerHTML;
                //alert(document.getElementById('sspan' + isp).innerHTML);
                  }
                }
                }
                isp++;
              }

              lastiizoom=iiizoom;
              if (document.getElementById('ifcountries').src.indexOf('zoom=') == -1 && document.getElementById('ifcountries').src.indexOf('refresh=') == -1) {
                       zoomword='zoom';
                       refreshword='refresh';
                       if (document.getElementById('ifcountries')) {
                          document.getElementById('ifcountries').style.width='' + eval(2 * eval('' + document.getElementById('ifcountries').style.width.replace('px',''))) + 'px';
                          document.getElementById('ifcountries').style.height='' + eval(2 * eval('' + document.getElementById('ifcountries').style.height.replace('px',''))) + 'px';
                       }
                       document.getElementById('ifcountries').src='//www.rjmprogramming.com.au/HTMLCSS/countries.html?zoom=' + Math.max(lastiizoom,1) + '&refresh=' + Math.floor(Math.random() * 198767564);
              } else {
              //alert('There');
              //document.getElementById('more').style.left='' + eval(eval(360 * lastiizoom / 2) + eval('' + document.getElementById('more').style.left.replace('px',''))) + 'px';
            var arstart=[], iars=0, iiars=0, kkfound=false;
            var ars=zaconto.getElementsByTagName('area');
              //alert('' + ars.length + ' ' + sofararealist);
            for (iars=0; iars<ars.length; iars++) {
               while (sofararealist.indexOf('|' + ('' + ars[iars].getAttribute('data-iso2')) + '|') != -1) {
                 if (ars[iars].outerHTML.indexOf(' onclick=\"') != -1) {
                    if (9 == 9) {
                      arstart.push(('' + ars[iars].coords).substring(0,Math.min(100,('' + ars[iars].coords).length)));
                      ars[iars].oncontextmenu=function(event){  event.stopPropagation();  event.preventDefault();  return parent.geojsonrightclick(event,iizoom,isdouble);   };
                    } 
                 }
                 iars++;
                 //itwo='';
               }
               //if (sparear) { itwo='';  }
            }

            if (arstart.length > 0) {
            ars=zaconto.getElementsByTagName('div');
              //alert('' + ars.length + ' ' + sofararealist);
            for (iiars=0; iiars<arstart.length; iiars++) {
            kkfound=false;
            for (iars=0; iars<ars.length; iars++) {
               if (!kkfound) {
               if (('' + ars[iars].title).indexOf(arstart[iiars]) == 0) {
                  ars[iars].innerHTML=ars[iars].innerHTML.replace('lime','orange');
                  kkfound=true;
               }
               }
            }
            }
            
            }


            }
            }
    } else {
    zifcheck(document.getElementById('ifcountries'));
    }
    return true;
  }

function great_circle_bearing(talis, gnolis, latis, longis) {
    // Let ‘R’ be the radius of Earth,
    // ‘L’ be the longitude,
    // ‘θ’ be latitude,
    // ‘β‘ be Bearing.

 // Bearing from point A to B, can be calculated as,
 // β = atan2(X,Y),
 // where, X and Y are two quantities and can be calculated as:
 // X = cos θb * sin ∆L
 // Y = cos θa * sin θb – sin θa * cos θb * cos ∆L

       var ourbrg=eval(eval(360.0 + eval(eval(eval(180.0 / Math.PI) * Math.atan2(
       eval(eval('' + Math.cos(eval(Math.PI / 180.0) * eval('' + latis))) *
       eval('' + Math.sin(eval(Math.PI / 180.0) * eval(eval('' + longis) - eval('' + gnolis))))),
       eval(eval('' + Math.cos(eval(Math.PI / 180.0) * eval('' + talis))) *
       eval('' + Math.sin(eval(Math.PI / 180.0) * eval('' + latis)))) -
       eval(eval('' + Math.sin(eval(Math.PI / 180.0) * eval('' + talis))) *
       eval('' + Math.cos(eval(Math.PI / 180.0) * eval('' + latis))) *
       eval('' + Math.cos(eval(Math.PI / 180.0) * eval(eval('' + longis) - eval('' + gnolis)))))
       )))) % 360.0);

       return '' + ourbrg;
}

function great_circle_distance(talis, gnolis, latis, longis) {
  var ourdist=0.0;
  var rgnol=eval((gnolis) * Math.PI / 180.0);
  var rtal=eval((talis) * Math.PI / 180.0);
  var rlong=eval((longis) * Math.PI / 180.0);
  var rlat=eval((latis) * Math.PI / 180.0);
  var deltalong = Math.abs(eval(((gnolis)-(longis)) * Math.PI / 180.0));
  var acof = eval(Math.sin(rtal) * Math.sin(rlat)) + (Math.cos(rtal) * Math.cos(rlat) * Math.cos(deltalong)); // via //en.wikipedia.org/wiki/Great-circle_distance ... thanks
  ourdist = eval(Math.round((Math.acos(acof) * 6371000.0) + 0.00001) * 100) / 100;
  return '' + ourdist;
}

  function isdf() {
    console.log('nolineplease=' + nolineplease + ' and isdouble=' + isdouble);
    isdouble=0;
    blk='visible';
    nolineplease=false;
  }

  function storeaway(thisspano) {
    var lastspanoid=null;
    if (lastspano) { lastspanoid='' + lastspano.id;  }
    if (('' + thisspano.id).indexOf('sspan') == 0) { thisspano=document.getElementById(('' + thisspano.id).replace('sspan','span'));  }
    if (('' + lastspanoid) != ('' + thisspano.id) && ('' + thisspano.id).indexOf('span') == 0) {
       spanos.push(thisspano);
       lastspano=thisspano;
       thisspano.style.color='green';
       if (thisspano.title.indexOf('Right click ') != -1) {
       thisspano.innerHTML='&#128308;';
       } else {
       thisspano.innerHTML='&#10060;';
       }
       if (eval('' + spanos.length) > 1 && !nolineplease) {
         setTimeout(function(){ drawlinebetween(spanos[eval(-2 + spanos.length)], spanos[eval(-1 + spanos.length)]); }, 5000);
       }
    }
  }
  
  function drawlinebetween(spanoone, spanotwo) {
        var xneeds=[], yneeds=[], classbit='';
        if (nolineplease) { isdouble=0; nolineplease=false; return false; }
        if (('' + spanoone.id).indexOf('sspan') == 0) { spanoone=document.getElementById(('' + spanoone.id).replace('sspan','span'));  }
        if (('' + spanotwo.id).indexOf('sspan') == 0) { spanotwo=document.getElementById(('' + spanotwo.id).replace('sspan','span'));  }
        if (('' + spanoone.id).indexOf('span') == 0 && ('' + spanotwo.id).indexOf('span') == 0) {
        xneeds.push(eval('' + ('' + spanoone.style.left).replace('px','')));
        yneeds.push(eval('' + ('' + spanoone.style.top).replace('px','')));
        xneeds.push(eval('' + ('' + spanotwo.style.left).replace('px','')));
        yneeds.push(eval('' + ('' + spanotwo.style.top).replace('px','')));
        var divih='';
        if (Math.min(xneeds[0],xneeds[1]) == xneeds[0] && Math.min(yneeds[0],yneeds[1]) == yneeds[1]) { // thanks to https://stackoverflow.com/questions/18012420/draw-diagonal-lines-in-div-background-with-css
        classbit=' class=\"crossedtotl\" ';
        } else if (Math.min(xneeds[0],xneeds[1]) == xneeds[1] && Math.min(yneeds[0],yneeds[1]) == yneeds[0]) { // thanks to https://stackoverflow.com/questions/18012420/draw-diagonal-lines-in-div-background-with-css
        classbit=' class=\"crossedtotl\" ';
        } else {
        classbit=' class=\"crossedtotr\" ';
        }
        if (classbit == ' class=\"crossedtotl\" ') {
          divih=\"<svg width='100%' height='100%' viewBox='0 0 100 100' preserveAspectRatio='none'><line x1='100' y1='0' x2='0' y2='100' vector-effect='non-scaling-stroke' stroke='black' /></svg>\";
          classbit='';
        }
       var fcl='';
       var tcl='';
       if (spanoone.title.indexOf('Right click ') != -1) {
        spanoone.innerHTML='&#128308;';
        fcl=' from your right click ';
       } else {
        spanoone.innerHTML='&#10060;';
        fcl=' from ' + spanoone.title + ' ';
       }
       if (spanotwo.title.indexOf('Right click ') != -1) {
        spanotwo.innerHTML='&#128308;';
        tcl=' to your right click ';
        lastwo=\"//www.google.com/maps/dir/\" + spanoone.getAttribute('data-geo') + \"/\" + spanotwo.getAttribute('data-geo') + \"' + '#' + '\" + 'Leg' + fcl + tcl + ' heads off at ' + great_circle_bearing(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1]) + ' degrees for ' + eval(eval('' + great_circle_distance(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1])) / 1000.0) + ' kilometers';
        //document.getElementById('plots').innerHTML+='<div onclick=\"setTimeout(function(event){ if (event.target.title == event.target.title.trim()) { window.open(lastwo,' + \"'_blank','left=20,top=20,width=1200,height=800'\" + '); }  event.target.title=event.target.title.trim(); }, 2000);  \" title=\"Leg' + fcl + tcl + ' heads off at ' + great_circle_bearing(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1]) + ' degrees for ' + eval(eval('' + great_circle_distance(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1])) / 1000.0) + ' kilometers ... click for Google Directions ... double click to toggle visibility\" ondblclick=\" this.title+=String.fromCharCode(32); event.stopPropagation(); event.preventDefault(); this.style.visibility=this.style.visibility.replace(' + \"'visible','HIDDEN'\" + ').replace(' + \"'hidden','visible'\" + ').replace(' + \"'HIDDEN','hidden'\" + '); \" id=line_' + spanoone.id.split('span')[1] + '_' + spanotwo.id.split('span')[1] + ' ' + classbit + ' style=\"z-index:2134;margin:0 0 0 0;visibility:' + blk + ';padding:0 0 0 0;position:fixed;left:' + Math.min(xneeds[0],xneeds[1]) + 'px;top:' + Math.min(yneeds[0],yneeds[1]) + 'px;width:' + Math.abs(xneeds[0] - xneeds[1]) + 'px;height:' + Math.abs(yneeds[0] - yneeds[1]) + 'px;\">' + divih + '</div>';
        document.getElementById('plots').innerHTML+='<div onclick=\"owindowopen(' + \"this,'//www.google.com/maps/dir/\" + spanoone.getAttribute('data-geo') + \"/\" + spanotwo.getAttribute('data-geo') + \"' + '#' + '\" + 'Leg' + fcl + tcl + ' heads off at ' + great_circle_bearing(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1]) + ' degrees for ' + eval(eval('' + great_circle_distance(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1])) / 1000.0) + ' kilometers' + \"','_blank','left=20,top=20,width=1200,height=800'\" + ');\" title=\"Leg' + fcl + tcl + ' heads off at ' + great_circle_bearing(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1]) + ' degrees for ' + eval(eval('' + great_circle_distance(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1])) / 1000.0) + ' kilometers ... click for Google Directions\" ondblclick=\" this.title+=String.fromCharCode(32); event.stopPropagation(); event.preventDefault(); this.style.visibility=this.style.visibility.replace(' + \"'visible','HIDDEN'\" + ').replace(' + \"'hidden','visible'\" + ').replace(' + \"'HIDDEN','hidden'\" + '); \" id=line_' + spanoone.id.split('span')[1] + '_' + spanotwo.id.split('span')[1] + ' ' + classbit + ' style=\"z-index:2134;margin:0 0 0 0;padding:0 0 0 0;position:fixed;left:' + Math.min(xneeds[0],xneeds[1]) + 'px;top:' + Math.min(yneeds[0],yneeds[1]) + 'px;width:' + Math.abs(xneeds[0] - xneeds[1]) + 'px;height:' + Math.abs(yneeds[0] - yneeds[1]) + 'px;\">' + divih + '</div>';
       } else {
        spanotwo.innerHTML='&#10060;';
        tcl=' to ' + spanotwo.title + ' ';
        lastwo=\"//www.google.com/maps/dir/\" + spanoone.getAttribute('data-geo') + \"/\" + spanotwo.getAttribute('data-geo') + \"' + '#' + '\" + 'Leg ' + fcl + tcl + ' heads off at ' + great_circle_bearing(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1]) + ' degrees for ' + eval(eval('' + great_circle_distance(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1])) / 1000.0) + ' kilometers';
        //document.getElementById('plots').innerHTML+='<div onclick=\"setTimeout(function(event){ if (event.target.title == event.target.title.trim()) {  window.open(lastwo,' + \"'_blank','left=20,top=20,width=1200,height=800'\" + '); }  event.target.title=event.target.title.trim(); }, 2000);  \" title=\"Leg ' + fcl + tcl + ' heads off at ' + great_circle_bearing(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1]) + ' degrees for ' + eval(eval('' + great_circle_distance(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1])) / 1000.0) + ' kilometers ... click for Google Directions ... double click to toggle visibility\" ondblclick=\" this.title+=String.fromCharCode(32); event.stopPropagation(); event.preventDefault(); this.style.visibility=this.style.visibility.replace(' + \"'visible','HIDDEN'\" + ').replace(' + \"'hidden','visible'\" + ').replace(' + \"'HIDDEN','hidden'\" + '); \" id=line_' + spanoone.id.split('span')[1] + '_' + spanotwo.id.split('span')[1] + ' ' + classbit + ' style=\"z-index:2134;margin:0 0 0 0;visibility:' + blk + ';padding:0 0 0 0;position:fixed;left:' + Math.min(xneeds[0],xneeds[1]) + 'px;top:' + Math.min(yneeds[0],yneeds[1]) + 'px;width:' + Math.abs(xneeds[0] - xneeds[1]) + 'px;height:' + Math.abs(yneeds[0] - yneeds[1]) + 'px;\">' + divih + '</div>';
        document.getElementById('plots').innerHTML+='<div onclick=\"owindowopen(' + \"this,'//www.google.com/maps/dir/\" + spanoone.getAttribute('data-geo') + \"/\" + spanotwo.getAttribute('data-geo') + \"' + '#' + '\" + 'Leg ' + fcl + tcl + ' heads off at ' + great_circle_bearing(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1]) + ' degrees for ' + eval(eval('' + great_circle_distance(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1])) / 1000.0) + ' kilometers' + \"','_blank','left=20,top=20,width=1200,height=800'\" + ');\" title=\"Leg ' + fcl + tcl + ' heads off at ' + great_circle_bearing(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1]) + ' degrees for ' + eval(eval('' + great_circle_distance(spanoone.getAttribute('data-geo').split(',')[0], spanoone.getAttribute('data-geo').split(',')[1], spanotwo.getAttribute('data-geo').split(',')[0], spanotwo.getAttribute('data-geo').split(',')[1])) / 1000.0) + ' kilometers ... click for Google Directions\" ondblclick=\" this.title+=String.fromCharCode(32); event.stopPropagation(); event.preventDefault(); this.style.visibility=this.style.visibility.replace(' + \"'visible','HIDDEN'\" + ').replace(' + \"'hidden','visible'\" + ').replace(' + \"'HIDDEN','hidden'\" + '); \" id=line_' + spanoone.id.split('span')[1] + '_' + spanotwo.id.split('span')[1] + ' ' + classbit + ' style=\"z-index:2134;margin:0 0 0 0;padding:0 0 0 0;position:fixed;left:' + Math.min(xneeds[0],xneeds[1]) + 'px;top:' + Math.min(yneeds[0],yneeds[1]) + 'px;width:' + Math.abs(xneeds[0] - xneeds[1]) + 'px;height:' + Math.abs(yneeds[0] - yneeds[1]) + 'px;\">' + divih + '</div>';
        }
        }
        return true;
  }
  
  function winopit() {
    if (('' + document.getElementById(gdivid).title) == ('' + document.getElementById(gdivid).title).trim()) {
      window.open(gw1,gw2,gw3);
    }
    document.getElementById(gdivid).title=('' + document.getElementById(gdivid).title).trim();
  }
  
  function owindowopen(odiv,w1,w2,w3) {
     if (lastgdivid == '' + odiv.id) {
       document.getElementById(gdivid).title+=String.fromCharCode(32);
       document.getElementById(gdivid).style.visibility='hidden';
     } else {
       gdivid='' + odiv.id;
       lastgdivid=gdivid;
       gw1=w1;
       gw2=w2;
       gw3=w3; 
       setTimeout(winopit, 3000);
     }
  }
  
  function zifcheck(zwiois) {
       var waszoom=1;
       var sparear=null;
       var xif=-999, yif=-999, xxif=-999, yyif=-999;
       var xlatdeg=0, xlongdeg=0;
       var zawconto = (zwiois.contentWindow || zwiois.contentDocument);
       if (!zawconto && zaconto) {
         zawconto=zaconto;
       }
   //alert(11);
       var zzawconto=zawconto;
       if (zawconto != null) {
   //alert('111 ' + zwiois.src);
       if (zawconto.document) { zawconto = zawconto.document; }
    //alert('1111 ' + zawconto.body.innerHTML);
       if (zawconto.body.innerHTML.indexOf('>') != -1) {
          var iiizoom=eval(eval('' + ('' + zawconto.getElementById('myimg').style.width).replace('px','')) / 360); //eval('' + zawconto.getzoom());
          //alert('' + iiizoom);
          //alert(eval('' + zawconto.getzoom()));
          //alert(zawconto.getElementById('myimg').getBoundingClientRect().width);
            if (lastiizoom != iiizoom) {
              var isp=0;
              var huhrect=document.getElementById('ifcountries').getBoundingClientRect();
              var ospancount=spancount;
              newone=eval(1 + spancount);
              while (document.getElementById('span' + isp)) {
                if (isp < ospancount) {
                waszoom=document.getElementById('span' + isp).getAttribute('data-zoom');
                if (waszoom != iiizoom) {
                  xlatdeg=eval('' + document.getElementById('span' + isp).getAttribute('data-geo').split(',')[0]);
                  xlongdeg=eval('' + document.getElementById('span' + isp).getAttribute('data-geo').split(',')[1]);
                  xxif=eval(iiizoom * eval(180 + eval('' + xlongdeg)));
                  yyif=eval(iiizoom * eval(90 - eval('' + xlatdeg)));
                  if (1 == 1) {
            document.getElementById('plots').innerHTML+='<span id=sspan' + spancount + '><span oncontextmenu=\"event.stopPropagation(); event.preventDefault(); if (isdouble == 0) { storeaway(this); }\" data-zoom=\"' + iiizoom + '\" data-iframepos=\"' + huhrect.left + ',' + huhrect.top + '\" data-geo=\"' + xlatdeg + ',' + xlongdeg + '\" title=\"' + decodeURIComponent(document.getElementById('span' + isp).title) + '\" id=span' + spancount + ' style=\"font-style:bold;text-shadow:-1px 1px 1px #ff2d95;font-size:6px;margin:0 0 0 0;padding:0 0 0 0;z-index:2134;position:fixed;top:' + eval(eval('' + huhrect.top) + yyif) + 'px;left:' + eval(eval('' + huhrect.left) + xxif) + 'px;\">x</span></span>';
            nodiv(isp, spancount);
            spancount++;
            document.getElementById('span' + isp).style.display='none';
                  } else {
                  document.getElementById('span' + isp).style.top='' + eval(eval('' + huhrect.top) + yyif) + 'px';
                  document.getElementById('span' + isp).style.left='' + eval(eval('' + huhrect.left) + xxif) + 'px';
                  document.getElementById('span' + isp).setAttribute('data-zoom', '' + iiizoom);
                  document.getElementById('span' + isp).setAttribute('data-iframepos', '' + huhrect.left + ',' + huhrect.top);
                  document.getElementById('sspan' + isp).innerHTML=document.getElementById('span' + isp).outerHTML;
                  }
                }
                }
                isp++;
              }
              lastiizoom=iiizoom;
            }
       }
       }
  }
  
  function geojsonrightclick(ev,iiz,isd) {
       pos3=-999;
       pos4=-999;
       if (ev.touches) {
       if (ev.touches[0].pageX) {
       pos3 = ev.touches[0].pageX;
       pos4 = ev.touches[0].pageY;
       } else {
       pos3 = ev.touches[0].clientX;
       pos4 = ev.touches[0].clientY;
       }
       console.log('pos3 = ' + pos3 + ',pos4 = ' + pos4);
       } else if (ev.clientX || ev.clientY) {
        pos3 = ev.clientX;
        pos4 = ev.clientY;
       console.log('pos3 = ' + pos3 + ' ,pos4 = ' + pos4);
       } else {
        pos3 = ev.pageX;
        pos4 = ev.pageY;
       console.log('pos3 = ' + pos3 + ', pos4 = ' + pos4);
       }
          if (pos3 >= 0 && pos4 >= 0) {
          if (iiz < lastiizoom) { iiz=lastiizoom; }
          xlatdeg=eval(90 - eval(eval('' + pos4) / iiz));
          xlongdeg=eval(-180 + eval(eval('' + pos3) / iiz));
            var huhrect=document.getElementById('ifcountries').getBoundingClientRect();
     //alert(' ... second yay! ' + lastiizoom + ' vs ' + iiz + ' ' + ev.clientX + ',' + ev.clientY);
            if (isdouble == 0) {
            document.getElementById('plots').innerHTML+='<span id=sspan' + spancount + '><span oncontextmenu=\"event.stopPropagation(); event.preventDefault(); if (isdouble == 0) { storeaway(this); }\" data-zoom=\"' + iiz + '\" data-iframepos=\"' + huhrect.left + ',' + huhrect.top + '\" data-geo=\"' + xlatdeg + ',' + xlongdeg + '\" title=\"Right Click at ' + xlatdeg + ',' + xlongdeg + '\" id=span' + spancount + ' style=\"font-style:bold;text-shadow:-1px 1px 1px #ff2d95;font-size:6px;margin:0 0 0 0;padding:0 0 0 0;z-index:2134;position:fixed;top:' + eval(eval('' + huhrect.top) + pos4) + 'px;left:' + eval(eval('' + huhrect.left) + pos3) + 'px;\">&#10067;</span></span>';
            storeaway(document.getElementById('span' + spancount));
            spancount++;
            setTimeout(nospan, 30000);
            isdouble=1;
            //nolineplease=true;
            blk='hidden';
            setTimeout(isdf, 3000);
            //alert('Nolineplease');
            } else {
            blk='hidden';
            nolineplease=true;
            //alert('nolineplease');
            }
          }
     return false; //' ... second yay! ' + lastiizoom + ' vs ' + iiz + ' ' + e.clientX + ',' + e.clientY;
  }
  
  function thisonl() {
   //alert(21);
   elem = document.getElementById('mycanvas');
   //alert(211);
   context = elem.getContext('2d');
   //alert(2111);
   setTimeout(canvasize, 5000);
   //alert(21111);
  }
 
  function ifcheck(ziois) {
       var waszoom=1;
       var sparear=null, gsparear=null;
       var xif=-999, yif=-999, xxif=-999, yyif=-999;
       zaconto = (ziois.contentWindow || ziois.contentDocument);
   //alert(11);
       zzaconto=zaconto;
       if (zaconto != null) {
   //alert('111 ' + xiois.src);
       try {
       if (zaconto.document) { zaconto = zaconto.document; }
    //alert('1111 ' + zaconto.body.innerHTML);
       if (zaconto.body.innerHTML.indexOf('>') != -1) {
          zoomdone=false;
          lastiizoom=(ziois.src.indexOf('zoom=') != -1 ? eval(ziois.src.split('zoom=')[1].split('&')[0].split('#')[0]) : lastiizoom);
          var itwo='';
          if (twomw) {
          itwo=('' + twomw);
          }
          if (itwo == '' && lastcode != '') { itwo=lastcode;  }
          if (eval('' + itwo.length) == 2 || (document.getElementById('placegeo').title + document.getElementById('placegeo').value).trim() != '') {
          var xlatdeg=0, xlongdeg=0;
          if ((document.getElementById('placegeo').title + document.getElementById('placegeo').value).indexOf(',') != -1) {
          xlatdeg=eval('' + (document.getElementById('placegeo').title + document.getElementById('placegeo').value).split(',')[0]);
          xlongdeg=eval('' + (document.getElementById('placegeo').title + document.getElementById('placegeo').value).split(',')[1]);
          }
          if (ziois.src.indexOf('refresh=') != -1 && ziois.src.indexOf('zoom=') != -1) {
          iizoom=lastiizoom;
          zaconto.getElementById('mg').onmousedown=function(){ lastiizoom=eval(2 * lastiizoom); setTimeout(parent.rifcheck, 3000); return true; };
          zaconto.getElementById('mg').ontouchdown=function(){ lastiizoom=eval(2 * lastiizoom); setTimeout(parent.rifcheck, 3000); return true; };
          setTimeout(rifcheck, 2000);
          //alert('Where');
          return true;
          } else {
          iizoom=eval(eval('' + ('' + zaconto.getElementById('myimg').style.width).replace('px','')) / 360); //eval('' + zaconto.getzoom());
          }
          xif=eval(iizoom * eval(180 + eval('' + xlongdeg)));
          yif=eval(iizoom * eval(90 - eval('' + xlatdeg)));
    //alert('' + xif + ',' + yif);
    //alert(itwo);
          var isp=0;
          var jsp=0;
          if (eval('' + itwo.length) == 2) {
            if (xif >= -180 && yif >= -90) {
            if (lastiizoom != iizoom || ziois.src.indexOf('refresh=') != -1) {
              var huhrect=document.getElementById('ifcountries').getBoundingClientRect();
              var ospancount=spancount;
              newone=eval(1 + spancount);
              while (document.getElementById('span' + isp)) {
                if (isp < ospancount) {
                waszoom=document.getElementById('span' + isp).getAttribute('data-zoom');
                if (waszoom != iizoom) {
                  xlatdeg=eval('' + document.getElementById('span' + isp).getAttribute('data-geo').split(',')[0]);
                  xlongdeg=eval('' + document.getElementById('span' + isp).getAttribute('data-geo').split(',')[1]);
                  xxif=eval(iizoom * eval(180 + eval('' + xlongdeg)));
                  yyif=eval(iizoom * eval(90 - eval('' + xlatdeg)));
                  if (1 == 1) {
            document.getElementById('plots').innerHTML+='<span id=sspan' + spancount + '><span oncontextmenu=\"event.stopPropagation(); event.preventDefault(); if (isdouble == 0) { storeaway(this); }\" data-zoom=\"' + iiizoom + '\" data-iframepos=\"' + huhrect.left + ',' + huhrect.top + '\" data-geo=\"' + xlatdeg + ',' + xlongdeg + '\" title=\"' + decodeURIComponent(document.getElementById('span' + isp).title) + '\" id=span' + spancount + ' style=\"font-style:bold;text-shadow:-1px 1px 1px #ff2d95;font-size:6px;margin:0 0 0 0;padding:0 0 0 0;z-index:2134;position:fixed;top:' + eval(eval('' + huhrect.top) + yyif) + 'px;left:' + eval(eval('' + huhrect.left) + xxif) + 'px;\">x</span></span>';
            nodiv(isp, spancount);
            spancount++;
            jsp++;
            document.getElementById('span' + isp).style.display='none';
                  } else {
                  document.getElementById('span' + isp).style.top='' + eval(eval('' + huhrect.top) + yyif) + 'px';
                  document.getElementById('span' + isp).style.left='' + eval(eval('' + huhrect.left) + xxif) + 'px';
                  document.getElementById('span' + isp).setAttribute('data-zoom', '' + iizoom);
                  document.getElementById('span' + isp).setAttribute('data-iframepos', '' + huhrect.left + ',' + huhrect.top);
                  document.getElementById('sspan' + isp).innerHTML=document.getElementById('span' + isp).outerHTML;
                  }
                }
                }
                isp++;
              }
            }
            spancount=eval(isp + jsp);
            if (jjans == jjans.replace(/\ \ \ \ \ $/g,'')) {
            document.getElementById('plots').innerHTML+='<span id=sspan' + spancount + '><span oncontextmenu=\"event.stopPropagation(); event.preventDefault(); if (isdouble == 0) { storeaway(this); }\" data-zoom=\"' + iizoom + '\" data-iframepos=\"' + huhrect.left + ',' + huhrect.top + '\" data-geo=\"' + xlatdeg + ',' + xlongdeg + '\" title=\"' + decodeURIComponent(lastr) + '\" id=span' + spancount + ' style=\"font-style:bold;text-shadow:-1px 1px 1px #ff2d95;font-size:6px;margin:0 0 0 0;padding:0 0 0 0;z-index:2134;position:fixed;top:' + eval(eval('' + huhrect.top) + yif) + 'px;left:' + eval(eval('' + huhrect.left) + xif) + 'px;\">x</span></span>';
            spancount++;
            setTimeout(nospan, 30000);
            }
            }
            sofararealist+=itwo + '|';
            var ars=zaconto.getElementsByTagName('area');
            for (var iars=0; iars<ars.length; iars++) {
               while (('' + ars[iars].getAttribute('data-iso2')) == itwo || sofararealist.indexOf('|' + ('' + ars[iars].getAttribute('data-iso2')) + '|') != -1) {
            //document.title='' + iars + ' ... ' + ('' + ars[iars].getAttribute('data-iso2'));
                 zaconto.getElementsByTagName('table')[0].style.top='385px';
                 zaconto.getElementsByTagName('table')[0].style.left='0px';
                 if (ars[iars].outerHTML.indexOf(' onclick=\"') != -1) {
                    //itwo=' ';
                    if (('' + ars[iars].getAttribute('data-iso2')) == itwo) {
                    sparear=ars[iars];
                    if (9 == 9) {
                      sparear.click();
                      sparear.oncontextmenu=function(event){  event.stopPropagation();  event.preventDefault();    return parent.geojsonrightclick(event,iizoom,isdouble);   };
                      eval('zzaconto.' + ars[iars].outerHTML.split(' onclick=\"')[1].split('\"')[0].trim().replace(/this\./g,'sparear.').replace(/this\,/g,'sparear,'));
                    } else {
                      eval('zzaconto.' + ars[iars].outerHTML.split(' onclick=\"')[1].split('\"')[0].trim().replace(/this\./g,'sparear.').replace(/this\,/g,'sparear,'));
                    }
                    } else {
                    gsparear=ars[iars];
                    if (9 == 9) {
                      gsparear.click();
                      gsparear.oncontextmenu=function(event){  event.stopPropagation();  event.preventDefault();    return parent.geojsonrightclick(event,iizoom,isdouble);   };
                      eval('zzaconto.' + ars[iars].outerHTML.split(' onclick=\"')[1].split('\"')[0].trim().replace(/this\./g,'gsparear.').replace(/this\,/g,'gsparear,'));
                    } else {
                      eval('zzaconto.' + ars[iars].outerHTML.split(' onclick=\"')[1].split('\"')[0].trim().replace(/this\./g,'gsparear.').replace(/this\,/g,'gsparear,'));
                    }
                    }
                 }
                 iars++;
                 //itwo='';
               }
               if (sparear) { itwo='';  }
            }
          }
          jjans=jjans.replace(/\ \ \ \ \ $/g,'');
          if (!zoomdone) {
          lastiizoom=iizoom;
          zaconto.getElementById('mg').onmousedown=function(){ setTimeout(parent.rifcheck, 3000); return true; };
          zaconto.getElementById('mg').ontouchdown=function(){ setTimeout(parent.rifcheck, 3000); return true; };
          } else {
          if (ziois.src.indexOf('refresh=') != -1) {
          lastiizoom=iizoom;
          zaconto.getElementById('mg').onmousedown=function(){ setTimeout(parent.rifcheck, 3000); return true; };
          zaconto.getElementById('mg').ontouchdown=function(){ setTimeout(parent.rifcheck, 3000); return true; };
          }
          lastiizoom=sein(iizoom);
          }
          if (itwo == '') {
 zaconto.getElementsByTagName('canvas')[0].dispatchEvent(new Event(\"click\", {
  bubbles: true, // only bubbles and cancelable
  cancelable: true, // work in the Event constructor
  clientX: xif,
  clientY: yif
 }));
if (1 == 2) {
if (zaconto.elementsFromPoint) {
  var elements = zaconto.elementsFromPoint(xif, yif);
  elements.forEach((elt, i) => {
    if (i < elements.length - 1) {
 zaconto.body.dispatchEvent(new Event(\"click\", {
  bubbles: true, // only bubbles and cancelable
  cancelable: true, // work in the Event constructor
  clientX: xif,
  clientY: yif
 }));
    }
  });
} else {
          zaconto.elementFromPoint(xif, yif).click();
}
}
       }
          }
       }
       } catch(hgjgs) {  }
       }
       jjans=jjans.replace(/\ \ \ \ \ $/g,'');
       return true;
  }
  
  function nodiv(wasid, newid) {
      var divsoarr=document.getElementsByTagName('div');
      for (var idivs=0; idivs<divsoarr.length; idivs++) {
        if (('' + divsoarr[idivs].id).indexOf('line_' + wasid + '_') == 0) {
           divsoarr[idivs].style.display='none';
           spanos.push(document.getElementById('span' + newid));
        //alert('here ' + wasid + ' ' + spanos.length + ' ' + newone);
           if (eval('' + spanos.length) > newone) {
        //alert('here2');
             setTimeout(function(){ drawlinebetween(spanos[eval(-2 + spanos.length)], spanos[eval(-1 + spanos.length)]); }, 5000);
           }
        } else if (('' + divsoarr[idivs].id).indexOf('line_') == 0 && ('' + divsoarr[idivs].id + '~').indexOf('_' + wasid + '~') != -1) {
           divsoarr[idivs].style.display='none';
           spanos.push(document.getElementById('span' + newid));
        //alert('there ' + wasid + ' ' + spanos.length + ' ' + newone);
           if (eval('' + spanos.length) > newone) {
        //alert('there2');
             setTimeout(function(){ drawlinebetween(spanos[eval(-2 + spanos.length)], spanos[eval(-1 + spanos.length)]); }, 5000);
           }
        }
      }
  }
 

  function wasifcheck(ziois) {
        var mw=(location.search.split('iso=')[1] ? (decodeURIComponent(location.search.split('iso=')[1].split('&')[0]) + ';') : '');
      if (eval('' + mw.length) != 3) { mw=(location.search.split('title=')[1] ? (decodeURIComponent(location.search.split('title=')[1].split('&')[0]).split(';')[0] + ';').replace(/^\;/g,'') : (location.search.split('iso=')[1] ? (decodeURIComponent(location.search.split('iso=')[1].split('&')[0]) + ';') : '')); }
      if (eval('' + mw.length) != 3) { mw=''; } else { mw=mw.substring(0,2); }
       var sparear=null;
       var zaconto = (ziois.contentWindow || ziois.contentDocument);
   //alert(11);
       var zzaconto=zaconto;
       if (zaconto != null) {
   //alert('111 ' + xiois.src);
       try {
       if (zaconto.document) { zaconto = zaconto.document; }
    //alert('1111 ' + zaconto.body.innerHTML);
       if (zaconto.body.innerHTML.indexOf('>') != -1) {
          //if ((document.getElementById('placegeo').title + document.getElementById('placegeo').value).trim() != '') {
          //var xlatdeg=eval('' + (document.getElementById('placegeo').title + document.getElementById('placegeo').value).split(',')[0]);
          //var xlongdeg=eval('' + (document.getElementById('placegeo').title + document.getElementById('placegeo').value).split(',')[1]);
          //var xif=eval(180 + xlongdeg);
          //var yif=eval(90 + xlatdeg);
          //alert('' + xif + ',' + yif);
          var itwo=mw;
          if (eval('' + itwo.length) == 2) {
            var ars=zaconto.getElementsByTagName('area');
            for (var iars=0; iars<ars.length; iars++) {
               while (('' + ars[iars].getAttribute('data-iso2')) == itwo) {
            //document.title='' + iars + ' ... ' + ('' + ars[iars].getAttribute('data-iso2'));
                 zaconto.getElementsByTagName('table')[0].style.top='385px';
                 zaconto.getElementsByTagName('table')[0].style.left='0px';
                 if (ars[iars].outerHTML.indexOf(' onclick=\"') != -1) {
                    //itwo=' ';
                    sparear=ars[iars];
                    document.title+=' ' + 'zzaconto.' + ars[iars].outerHTML.split(' onclick=\"')[1].split('\"')[0].trim().substring(0,220);
                    if (9 == 9) {
                      sparear.click();
                      eval('zzaconto.' + ars[iars].outerHTML.split(' onclick=\"')[1].split('\"')[0].trim().replace(/this\./g,'sparear.').replace(/this\,/g,'sparear,'));
                    } else {
                      eval('zzaconto.' + ars[iars].outerHTML.split(' onclick=\"')[1].split('\"')[0].trim().replace(/this\./g,'sparear.').replace(/this\,/g,'sparear,'));
                    }
                 }
                 iars++;
                 //itwo='';
               }
               if (sparear) { itwo='';  }
            }
          
          }
       }
       } catch(hgjgs) {  }
       }
       return true;
  }
 
 function ouronl() {
 //alert(document.URL);
 //if (document.URL.indexOf('rjmprogramming') != -1) { document.getElementById('rrq').style.display='none'; }
 gcstr=document.getElementById('jfrepos').src;
 mcstr=document.getElementById('kfrepos').src;
 if (document.URL.indexOf('?') != -1) {
  if (9 == 9) { document.getElementById('ifrepos').src+='?' + document.URL.split('?')[1];  document.getElementById('ifrepos').style.display='block';  }

 }
 if (document.URL.indexOf('rjmprogramming-com-au') == -1) {
 //alert(4);
  document.getElementsByTagName('h1')[0].innerHTML=\"<a target=_blank href='https://developers.google.com/chart/interactive/docs/index' title='Google Chart Tools provide a perfect way to visualize data on your website. From simple line charts to complex hierarchical tree maps, the chart galley provides a large number of well-designed chart types. Populating your data is easy using the provided client- and server-side tools.'>Google Charts</a> <a target=_blank title='Google Charts Image Chart' href='https://developers.google.com/chart/image/docs/gallery/chart_gall'>Image Chart</a> Map Chart Interfacer\";
  if (78 == 78) { document.getElementById('select_language').style.display='inline-block'; }
 } else {
 //alert(45);
  document.getElementById('select_language').style.display='none';
  document.getElementById('rrq').style.display='none';
 }

for (var i = 0; i < langs.length; i++) {
  select_language.options[i] = new Option(langs[i][0], i);
}
// Set default language / dialect ... thanks to Google https://www.google.com/intl/en/chrome/demos/speech.html
select_language.selectedIndex = 10;
updateCountry();
noway=false;
select_dialect.selectedIndex = 11;
showInfo('info_start');
         if (document.URL.indexOf('rjmprogramming-com-au.translate.goog') != -1) {
           document.getElementById('select_language').style.display='none';
         }
         setTimeout(function() { document.body.style.background=''; }, 15000); 
}

function showInfo(s) { // thanks to Google https://www.google.com/intl/en/chrome/demos/speech.html
  if (s) {
    for (var child = info.firstChild; child; child = child.nextSibling) {
      if (child.style) {
        child.style.display = child.id == s ? 'inline' : 'none';
      }
    }
    //info.style.visibility = 'visible';
  } else {
    info.style.visibility = 'hidden';
  }
}

function updateCountry() { // thanks to Google https://www.google.com/intl/en/chrome/demos/speech.html
  for (var i = select_dialect.options.length - 1; i >= 0; i--) {
    select_dialect.remove(i);
  }
  var list = langs[select_language.selectedIndex];
  for (var i = 1; i < list.length; i++) {
    select_dialect.options.add(new Option(list[i][1], list[i][0]));
  }
  select_dialect.style.visibility = list[1].length == 1 ? 'hidden' : 'hidden';
  if (!noway) {
    // https://www-rjmprogramming-com-au.translate.goog/HTMLCSS/emoji_object_game.php?_x_tr_sch=http&_x_tr_sl=en&_x_tr_tl=de&_x_tr_hl=en
    //alert(select_dialect.value);
         if (document.URL.indexOf('rjmprogramming-com-au.translate.goog') == -1 && document.URL.indexOf('//') != -1) {
           //location.href='//www-rjmprogramming-com-au.translate.goog/HTMLCSS/emoji_object_game.php?_x_tr_sch=http&_x_tr_sl=en&_x_tr_tl=' + select_dialect.value.split('-')[0] + '&_x_tr_hl=en';
           //alert('https://www-rjmprogramming-com-au.translate.goog' + document.URL.split('//')[1].split('?')[0].split('#')[0].replace(document.URL.split('//')[1].split('/')[0],'').replace('http:','https:') + '?titlequiz=My%20World%20Quiz&_x_tr_sch=http&_x_tr_sl=en&_x_tr_tl=' + select_dialect.value.split('-')[0] + '&_x_tr_hl=en');
           if (window.parent != window) {
           //if (document.getElementById('flags').checked) {
           //top.window.open('https://www-rjmprogramming-com-au.translate.goog' + document.URL.split('//')[1].split('?')[0].split('#')[0].replace(document.URL.split('//')[1].split('/')[0],'').replace('http:','https:')); // + '?titlequiz=My%20World%20Quiz&_x_tr_sch=http&_x_tr_sl=en&_x_tr_tl=' + select_dialect.value.split('-')[0] + '&_x_tr_hl=en&wqperspective=' + lastanswer.toUpperCase() + '&flags=y&score=' + score + '&goes=' + goes, '_blank', 'top=100,left=100,width=900,height=900');
           //} else {
           top.window.open('https://www-rjmprogramming-com-au.translate.goog' + document.URL.split('//')[1].split('?')[0].split('#')[0].replace(document.URL.split('//')[1].split('/')[0],'').replace('http:','https:').replace('image_chJUNKart.php','imagechart.html') + '?_x_tr_sch=https&_x_tr_sl=en&_x_tr_tl=' + select_dialect.value.split('-')[0] + '&_x_tr_hl=en'); // + '?titlequiz=My%20World%20Quiz&_x_tr_sch=http&_x_tr_sl=en&_x_tr_tl=' + select_dialect.value.split('-')[0] + '&_x_tr_hl=en&wqperspective=' + lastanswer.toUpperCase() + '&score=' + score + '&goes=' + goes, '_blank', 'top=100,left=100,width=900,height=900');
           //}

           } else {
           //if (document.getElementById('flags').checked) {
           //location.href='https://www-rjmprogramming-com-au.translate.goog' + document.URL.split('//')[1].split('?')[0].split('#')[0].replace(document.URL.split('//')[1].split('/')[0],'').replace('http:','https:'); // + '?titlequiz=My%20World%20Quiz&_x_tr_sch=http&_x_tr_sl=en&_x_tr_tl=' + select_dialect.value.split('-')[0] + '&_x_tr_hl=en&wqperspective=' + lastanswer.toUpperCase() + '&flags=y&score=' + score + '&goes=' + goes;
           //} else {
           location.href='https://www-rjmprogramming-com-au.translate.goog' + document.URL.split('//')[1].split('?')[0].split('#')[0].replace(document.URL.split('//')[1].split('/')[0],'').replace('http:','https:').replace('image_chJUNKart.php','imagechart.html') + '?_x_tr_sch=https&_x_tr_sl=en&_x_tr_tl=' + select_dialect.value.split('-')[0] + '&_x_tr_hl=en'; // + '?titlequiz=My%20World%20Quiz&_x_tr_sch=http&_x_tr_sl=en&_x_tr_tl=' + select_dialect.value.split('-')[0] + '&_x_tr_hl=en&wqperspective=' + lastanswer.toUpperCase() + '&score=' + score + '&goes=' + goes;
           //}

           }
         }
  }
}

function plushashmaybe(inidea) {
  var outidea=inidea;
  var prefix=document.getElementById('kfrepos').src.split('&iso=')[0] + '&iso=';
  if (decodeURIComponent('' + location.hash).indexOf(',') != -1) {
  var moref=decodeURIComponent('' + location.hash).split(',');
  for (var im=1; im<moref.length; im++) {
    outidea+='&iso' + eval(1 + im) + '=' + moref[im];
  } 
  if (window.top != window) {
    if (top.document.getElementById('kfrepos').src.indexOf(outidea) == -1) {
    top.document.getElementById('kfrepos').src=prefix + outidea;
    }
  } else {
  //alert('987 ' + outidea);
    if (document.getElementById('kfrepos').src.indexOf(outidea) == -1) {
  //alert('2987 ' + outidea);
    document.getElementById('kfrepos').src=prefix + outidea;
    }
  }
  }
  return outidea;
}

function nomcstr() {
  if (mcstr != '') {
    document.getElementById('kfrepos').src=mcstr;
  } else {
    setTimeout(nomcstr, 3000);
  }
}

function gcdo(icode) {
 document.getElementById('jfrepos').src=gcstr;
  //alert('5987 ' + mcstr + ' vs ' + gcstr);
 if (mcstr == '') {
 setTimeout(nomcstr, 3000);
 } else {
 document.getElementById('kfrepos').src=mcstr;
 }
  var incode=icode.toUpperCase().trim();
  var delm='\"';
  var thispis='';
    var placelist=tzlist.split(',' + incode.split(',')[0] + ',');
    //if (document.getElementById('selceqwq').innerHTML.indexOf(' value=' + delm + incode.split(',')[0] + delm + '>') == -1) {
    //   alert(' value=' + delm + incode.split(',')[0] + delm + '>');
    //}
    var sofaru='//www.rjmprogramming.com.au/PHP/GeoChart/geo_chart.php?title=' + incode.split(',')[0] + ';' + encodeURIComponent(document.getElementById('selceqwq').innerHTML.split(' value=' + delm + incode.split(',')[0] + delm + '>')[1].split('<')[0]) + '%20Timezone%20Places&aregexographicals=y&aregeographicals=http.' + thispis + '&width=834&height=520&country=Places&popularity=&data='; // + thisll;
    sofaru='./geo_chart.php?title=' + incode.split(',')[0] + ';' + encodeURIComponent(document.getElementById('selceqwq').innerHTML.split(' value=' + delm + incode.split(',')[0] + delm + '>')[1].split('<')[0]) + '%20Timezone%20Places&aregexographicals=y&aregeographicals=http.' + thispis + '&width=834&height=520&country=Places&popularity=&data='; // + thisll;
    var sofarm='/PHP/tz_places.php?tzname=%2B11&iam=1&iso=' + incode.split(',')[0];
    if (placelist.length > 1) {
      thispis=encodeURIComponent((placelist[1].split('>')[1].split('<')[0].replace(placelist[1].split('>')[1].split('<')[0].split('/')[0] + '/','')).replace(/\ /g,'_'));
      sofaru='//www.rjmprogramming.com.au/PHP/GeoChart/geo_chart.php?title=' + incode.split(',')[0] + ';' + encodeURIComponent(document.getElementById('selceqwq').innerHTML.split(' value=' + delm + incode.split(',')[0] + delm + '>')[1].split('<')[0]) + '%20Timezone%20Places&aregexographicals=y&aregeographicals=http.' + thispis + '&width=834&height=520&country=Places&popularity=&data='; // + thisll;
      sofaru='./geo_chart.php?title=' + incode.split(',')[0] + ';' + encodeURIComponent(document.getElementById('selceqwq').innerHTML.split(' value=' + delm + incode.split(',')[0] + delm + '>')[1].split('<')[0]) + '%20Timezone%20Places&aregexographicals=y&aregeographicals=http.' + thispis + '&width=834&height=520&country=Places&popularity=&data='; // + thisll;
    }
     if (incode.length == 2) {
    //alert(tzlist);
    if (document.getElementById('kfrepos').src.indexOf('iso2=') == -1) {
    //alert(5647);
    document.getElementById('kfrepos').src=mcstr.replace('=AU', '=' + plushashmaybe(incode)); 
    } else {
    //alert(15647);
    document.getElementById('kfrepos').src=mcstr.replace(document.getElementById('kfrepos').src.split('&data')[1], '=' + plushashmaybe(incode)); 
    }
    if (document.getElementById('selceqwq').innerHTML.split(' value=' + delm) == -1) { delm=\"'\"; }
    if (placelist.length > 1) {
     // //www.rjmprogramming.com.au/PHP/GeoChart/geo_chart.php?title=GB;Greenwich%20London%20Places&aregexographicals=y&aregeographicals=&width=834&height=520&country=Places&popularity=&data=%20[51.4769|-0.0005|~From~,2]%20,%20[51.4769|-0.0005|~To~,2]%20,%20[51.4769|-0.0005|~Greenwich~,2]
     // data-geo=\"52.36666,4.9,CEST,NL,+1\">Europe/Amsterdam</option><
     //alert(placelist[1]);
     thispis=encodeURIComponent((placelist[1].split('>')[1].split('<')[0].replace(placelist[1].split('>')[1].split('<')[0].split('/')[0] + '/','')).replace(/\ /g,'_'));
     //alert(thispis);
     var thisll='%20[' + placelist[0].split(' data-geo=\"')[eval(-1 + placelist[0].split(' data-geo=\"').length)].split(',')[0] + '|' + placelist[0].split(' data-geo=\"')[eval(-1 + placelist[0].split(' data-geo=\"').length)].split(',')[1] + '|~' + thispis + '~,2]%20';  
     sofaru+=thisll;
     document.getElementById('gtitle').value=incode + ';' + document.getElementById('selceqwq').innerHTML.split(' value=' + delm + incode + delm + '>')[1].split('<')[0] + ' Timezone Places';
     document.getElementById('garegeographicals').value='http.' + thispis;
     document.getElementById('gdata').value=thisll.replace(/\%20/g, ' ');
     for (var ibv=1; ibv<eval(-1 + placelist.length); ibv++) {
      thispis=encodeURIComponent((placelist[eval(1 + ibv)].split('>')[1].split('<')[0].replace(placelist[eval(1 + ibv)].split('>')[1].split('<')[0].split('/')[0] + '/','')).replace(/\ /g,'_'));
      thisll='%20[' + placelist[ibv].split(' data-geo=\"')[eval(-1 + placelist[ibv].split(' data-geo=\"').length)].split(',')[0] + '|' + placelist[ibv].split(' data-geo=\"')[eval(-1 + placelist[ibv].split(' data-geo=\"').length)].split(',')[1] + '|~' + thispis + '~,2]%20';  
      sofaru=(sofaru + ',' + thisll).replace('&width=', '%2Chttp.' + thispis + '&width=');
      document.getElementById('garegeographicals').value+='|http.' + thispis;
      document.getElementById('gdata').value+=',' + thisll.replace(/\%20/g, ' ');
     }
  //alert(sofaru);
     if (eval('' + sofarm.length) < 800) {
     document.getElementById('kfrepos').src=sofarm;
     }
     if (eval('' + sofaru.length) < 800) {
     //alert(sofaru);
     document.getElementById('jfrepos').src=sofaru;
     } else {
     //document.getElementById('gtitle').value+=' ' + sofaru.length;
     document.getElementById('sgeoif').click();
     }
    }
  }
}

function posththree() {
  if (document.getElementById('cname')) {
   document.getElementById('redregionquiz').name='redregionquiz';
   document.getElementById('cname').value=document.getElementById('selceqwq').innerHTML.split(' value=\"' + document.getElementById('selceqwq').value + '\">')[1].split('<')[0];
  }
}

function hthree() {
  if (document.getElementById('dword').innerHTML.indexOf('redregionquiz') == -1) { 
   document.getElementById('dword').innerHTML+='<input type=hidden id=redregionquiz name=redregionquiz value=y></input><input id=cname name=countryname type=hidden value=\"' + document.getElementById('selceqwq').innerHTML.split(' value=\"' + document.getElementById('selceqwq').value + '\">')[1].split('<')[0] + '\"></input>'; 
   setInterval(lookforlui, 15000); 
  } else if (document.getElementById('cname')) {
   document.getElementById('redregionquiz').name='redregionquiz';
   document.getElementById('cname').value=document.getElementById('selceqwq').innerHTML.split(' value=\"' + document.getElementById('selceqwq').value + '\">')[1].split('<')[0];
  }
}

function lookforlui() {
  if (luilook) {
     if (document.getElementById('done').value == '') {
       document.getElementById('iflui').src='./lasturlis.html?cname=' + encodeURIComponent(document.getElementById('selceqwq').innerHTML.split(' value=\"' + document.getElementById('selceqwq').value + '\">')[1].split('<')[0]) + '&rand=' + Math.floor(Math.random() * 1987675643);
     } else {
       luilook=false;
     }
  }
}

function thatcouldbe(atrue) {
  if (document.getElementById('redregionquiz')) {
  if (('' + document.getElementById('redregionquiz').name) == 'redregionquiz') {
  setTimeout(function() { document.getElementById('redregionquiz').name='redregion';  }, 5000);
  }
  }
  if (document.URL.indexOf('rjmprogramming-com-au') != -1) {
   if (lastinid == 'rrq') { return true; }
   if (('' + document.getElementById('myform').method).toUpperCase() != 'POST') {
     var topurl=top.document.URL;
     var argdelim='?';
     var ourbits='';
     var formih=document.getElementById('myform').innerHTML;
     var namearr=formih.split(' name=\"');
     var gtbitsare='&' + topurl.replace(topurl.split('_x')[0],'').split('#')[0];
     //alert('9876 ' + topurl);
     if (lastinid == 'bsfour') {
       topurl=topurl.replace('image_chart.php','rangegeo.php');
     } else {
       topurl=topurl.replace('rangegeo.php','image_chart.php');
     }
     //alert('19876 ' + topurl);
     for (var iname=1; iname<namearr.length; iname++) {
       //alert('next field ' + namearr[iname].split('\"')[0]  + ' is ... ' + namearr[iname]);
       if (namearr[iname].split('\"')[0].toLowerCase() == 'countryname') {
       //alert('countryname');
       //alert(document.getElementById('ccode').value.split(',')[0]);
       //alert(document.getElementById('selceqwq').innerHTML);
       ourbits+=argdelim + namearr[iname].split('\"')[0].toLowerCase() + '=' + encodeURIComponent(document.getElementById('selceqwq').innerHTML.split(' value=\"' + document.getElementById('ccode').value.split(',')[0] + '\">')[1].split('</')[0].split('>')[eval(-1 +        document.getElementById('selceqwq').innerHTML.split(' value=\"' + document.getElementById('ccode').value.split(',')[0] + '\">')[1].split('</')[0].split('>').length)]);
      argdelim='&';
       } else if (namearr[iname].indexOf('submit') != -1 && namearr[iname].indexOf('<select ') == -1) {
       if (namearr[iname].indexOf(lastinid) != -1) {
       //alert('Next field ' + namearr[iname].split('\"')[0]  + ' is ... ' + namearr[iname]);
        ourbits+=argdelim + namearr[iname].split('\"')[0].toLowerCase() + '=' + encodeURIComponent(namearr[iname].split(' value=\"')[1].split('\"')[0]);
      argdelim='&';
       }
       } else if (namearr[iname].split(' value=\"')[1].split('\"')[0] == '' && document.getElementById(namearr[iname].split('\"')[0])) {
       ourbits+=argdelim + namearr[iname].split('\"')[0].toLowerCase() + '=' + encodeURIComponent(document.getElementById(namearr[iname].split('\"')[0]).value);
      argdelim='&';
       } else {
       ourbits+=argdelim + namearr[iname].split('\"')[0].toLowerCase() + '=' + encodeURIComponent(namearr[iname].split(' value=\"')[1].split('\"')[0]);
      argdelim='&';
       }
      //alert('9872 ' + ourbits);
      //argdelim='&';
     }
     //alert(topurl.split('?')[0] + ourbits + gtbitsare);
     //  
     if (lastinid == 'bsfour') {
     topurl=topurl.replace('www-rjmprogramming-com-au.translate.goog/','www.rjmprogramming.com.au/');
     }
     if (1 == 1) {
     top.window.open(topurl.split('?')[0] + ourbits + gtbitsare,'_blank','top=50,left=50,width=1000,height=900');
     } else {
     top.location.href=topurl.split('?')[0] + ourbits + gtbitsare; //top.document.URL;
     }
     return false;
   }
  }
  return atrue;
}

function restare(inid, ay) {
  lastinid=inid;
  if (inid == 'rrq') {
    document.getElementById('bsone').style.backgroundColor='orange';
    document.getElementById('bstwo').style.backgroundColor='orange';
    document.getElementById('bsfour').style.backgroundColor='orange';
  } else if (inid == 'bsone') {
    document.getElementById('bstwo').style.backgroundColor='orange';
    document.getElementById('rrq').style.backgroundColor='orange';
    document.getElementById('bsfour').style.backgroundColor='orange';
  } else if (inid == 'bstwo') {
    document.getElementById('bsone').style.backgroundColor='orange';
    document.getElementById('rrq').style.backgroundColor='orange';
    document.getElementById('bsfour').style.backgroundColor='orange';
  } else if (inid == 'bsfour') {
    document.getElementById('bsone').style.backgroundColor='orange';
    document.getElementById('rrq').style.backgroundColor='orange';
    document.getElementById('bstwo').style.backgroundColor='orange';
  }
  return ay;
}

function selit(osel) {
  osel.setAttribute('data-singleval', osel.value);
  if (('' + document.getElementById('selceqwq').getAttribute('data-multival')).replace(/^null$/g, '').replace(/^undefined$/g, '') == '') {
      mode='single';
      document.getElementById('ccode').value='' + document.getElementById('selceqwq').getAttribute('data-singleval');
  //} else {
   //   alert('oops');
  }
}

function selitchange(selv, osel) {
  //alert('here at preemoji');
  mode='single';
  var optoit='', optdel='';
  for (var i=0; i<osel.options.length; i++) {
    if (osel.options[i].selected) { 
      optoit+=optdel + osel.options[i].value;
      optdel=','; 
    }
  }
  osel.setAttribute('data-singleval', selv);
  if (optoit.indexOf(',') != -1) {
    osel.setAttribute('data-multival', optoit);
    if (mode != 'multi') { setTimeout(togglemode, 5000); }
    mode='multi';
    return optoit;
  } else {
    osel.setAttribute('data-multival', '');
  }
  return selv;
}

function togglemode() {
  if (('' + document.getElementById('selceqwq').getAttribute('data-multival')).replace(/^null$/g, '').replace(/^undefined$/g, '') != '') {
    if (mode == 'single') {
      document.getElementById('ccode').value='' + document.getElementById('selceqwq').getAttribute('data-multival');
      if (mode != 'multi') { setTimeout(togglemode, 5000); }
      mode='multi';
    } else {
      document.getElementById('ccode').value='' + document.getElementById('selceqwq').getAttribute('data-singleval');
      mode='single';
    }
  } else {
    document.getElementById('ccode').value='' + document.getElementById('selceqwq').getAttribute('data-singleval');
  }
}
 

 
  function nonmifcheck(ziois) {
       var waszoom=1;
       var sparear=null, gsparear=null;
       var xif=-999, yif=-999, xxif=-999, yyif=-999;
       zaconto = (ziois.contentWindow || ziois.contentDocument);
   //alert(11);
       zzaconto=zaconto;
       if (zaconto != null) {
   //alert('111 ' + xiois.src);
       try {
       if (zaconto.document) { zaconto = zaconto.document; }
    //alert('1111 ' + zaconto.body.innerHTML);
       if (zaconto.body.innerHTML.indexOf('>') != -1) {
          zoomdone=false;
          lastiizoom=(ziois.src.indexOf('zoom=') != -1 ? eval(ziois.src.split('zoom=')[1].split('&')[0].split('#')[0]) : lastiizoom);
          var itwo='';
          if (twomw != '') {
          itwo=('' + twomw);
          }
          if (itwo == '' && lastcode != '') { itwo=lastcode;  }
    //alert(ziois.src + ' 11111 ' + itwo + ':' + (document.getElementById('placegeo').title + document.getElementById('placegeo').value).trim());
          if (eval('' + itwo.length) == 2 || (document.getElementById('placegeo').title + document.getElementById('placegeo').value).trim() != '') {
          var xlatdeg=0, xlongdeg=0;
          if ((document.getElementById('placegeo').title + document.getElementById('placegeo').value).indexOf(',') != -1) {
          xlatdeg=eval('' + (document.getElementById('placegeo').title + document.getElementById('placegeo').value).split(',')[0]);
          xlongdeg=eval('' + (document.getElementById('placegeo').title + document.getElementById('placegeo').value).split(',')[1]);
          }
          if (ziois.src.indexOf('refresh=') != -1 && ziois.src.indexOf('zoom=') != -1) {
          iizoom=lastiizoom;
          zaconto.getElementById('mg').onmousedown=function(){ lastiizoom=eval(2 * lastiizoom); setTimeout(parent.rifcheck, 3000); return true; };
          zaconto.getElementById('mg').ontouchdown=function(){ lastiizoom=eval(2 * lastiizoom); setTimeout(parent.rifcheck, 3000); return true; };
          setTimeout(rifcheck, 2000);
          //alert('Where');
          return true;
          } else {
          //alert('2 ' +  + ('' + zaconto.getElementById('myimg').width).replace('px',''));
          iizoom=eval(eval('' + ('' + zaconto.getElementById('myimg').width).replace('px','')) / 360); //eval('' + zaconto.getzoom());
          //alert('' + iizoom);
          }
          xif=eval(iizoom * eval(180 + eval('' + xlongdeg)));
          yif=eval(iizoom * eval(90 - eval('' + xlatdeg)));
    //alert('' + xif + ',' + yif);
    //alert(itwo + ' ' + jjans + '?');
          var isp=0;
          var jsp=0;
          if (eval('' + itwo.length) == 2) {
            if (xif >= -180 && yif >= -90) {
            if (lastiizoom != iizoom || ziois.src.indexOf('refresh=') != -1) {
              var huhrect=document.getElementById('ifcountries').getBoundingClientRect();
              var ospancount=spancount;
              newone=eval(1 + spancount);
              while (document.getElementById('span' + isp)) {
                if (isp < ospancount) {
                waszoom=document.getElementById('span' + isp).getAttribute('data-zoom');
                if (waszoom != iizoom) {
                  xlatdeg=eval('' + document.getElementById('span' + isp).getAttribute('data-geo').split(',')[0]);
                  xlongdeg=eval('' + document.getElementById('span' + isp).getAttribute('data-geo').split(',')[1]);
                  xxif=eval(iizoom * eval(180 + eval('' + xlongdeg)));
                  yyif=eval(iizoom * eval(90 - eval('' + xlatdeg)));
                  if (1 == 1) {
    //alert(786);
            document.getElementById('plots').innerHTML+='<span id=sspan' + spancount + '><span oncontextmenu=\"event.stopPropagation(); event.preventDefault(); if (isdouble == 0) { storeaway(this); }\" data-zoom=\"' + iiizoom + '\" data-iframepos=\"' + huhrect.left + ',' + huhrect.top + '\" data-geo=\"' + xlatdeg + ',' + xlongdeg + '\" title=\"' + decodeURIComponent(document.getElementById('span' + isp).title) + '\" id=span' + spancount + ' style=\"font-style:bold;text-shadow:-1px 1px 1px #ff2d95;font-size:6px;margin:0 0 0 0;padding:0 0 0 0;z-index:2134;position:fixed;top:' + eval(eval('' + huhrect.top) + yyif) + 'px;left:' + eval(eval('' + huhrect.left) + xxif) + 'px;\">x</span></span>';
            nodiv(isp, spancount);
            spancount++;
            jsp++;
            document.getElementById('span' + isp).style.display='none';
                  } else {
                  document.getElementById('span' + isp).style.top='' + eval(eval('' + huhrect.top) + yyif) + 'px';
                  document.getElementById('span' + isp).style.left='' + eval(eval('' + huhrect.left) + xxif) + 'px';
                  document.getElementById('span' + isp).setAttribute('data-zoom', '' + iizoom);
                  document.getElementById('span' + isp).setAttribute('data-iframepos', '' + huhrect.left + ',' + huhrect.top);
                  document.getElementById('sspan' + isp).innerHTML=document.getElementById('span' + isp).outerHTML;
                  }
                }
                }
                isp++;
              }
            }
            spancount=eval(isp + jsp);
    //alert(jjans + '?');
            if (jjans == jjans.replace(/\ \ \ \ \ $/g,'')) {
    //alert(2786);
            document.getElementById('plots').innerHTML+='<span id=sspan' + spancount + '><span oncontextmenu=\"event.stopPropagation(); event.preventDefault(); if (isdouble == 0) { storeaway(this); }\" data-zoom=\"' + iizoom + '\" data-iframepos=\"' + huhrect.left + ',' + huhrect.top + '\" data-geo=\"' + xlatdeg + ',' + xlongdeg + '\" title=\"' + decodeURIComponent(lastr) + '\" id=span' + spancount + ' style=\"font-style:bold;text-shadow:-1px 1px 1px #ff2d95;font-size:6px;margin:0 0 0 0;padding:0 0 0 0;z-index:2134;position:fixed;top:' + eval(eval('' + huhrect.top) + yif) + 'px;left:' + eval(eval('' + huhrect.left) + xif) + 'px;\">x</span></span>';
            spancount++;
            setTimeout(nospan, 30000);
            }
            }
            sofararealist+=itwo + '|';
            var ars=zaconto.getElementsByTagName('area');
            for (var iars=0; iars<ars.length; iars++) {
               while (('' + ars[iars].getAttribute('data-iso2')) == itwo || sofararealist.indexOf('|' + ('' + ars[iars].getAttribute('data-iso2')) + '|') != -1) {
            //document.title='' + iars + ' ... ' + ('' + ars[iars].getAttribute('data-iso2'));
                 zaconto.getElementsByTagName('table')[0].style.top='385px';
                 zaconto.getElementsByTagName('table')[0].style.left='0px';
                 if (ars[iars].outerHTML.indexOf(' onclick=\"') != -1) {
                    //itwo=' ';
                    if (('' + ars[iars].getAttribute('data-iso2')) == itwo) {
                    sparear=ars[iars];
                    if (9 == 9) {
                      sparear.click();
                      sparear.oncontextmenu=function(event){  event.stopPropagation();  event.preventDefault();    return parent.geojsonrightclick(event,iizoom,isdouble);   };
                      eval('zzaconto.' + ars[iars].outerHTML.split(' onclick=\"')[1].split('\"')[0].trim().replace(/this\./g,'sparear.').replace(/this\,/g,'sparear,'));
                    } else {
                      eval('zzaconto.' + ars[iars].outerHTML.split(' onclick=\"')[1].split('\"')[0].trim().replace(/this\./g,'sparear.').replace(/this\,/g,'sparear,'));
                    }
                    } else {
                    gsparear=ars[iars];
                    if (9 == 9) {
                      gsparear.click();
                      gsparear.oncontextmenu=function(event){  event.stopPropagation();  event.preventDefault();    return parent.geojsonrightclick(event,iizoom,isdouble);   };
                      eval('zzaconto.' + ars[iars].outerHTML.split(' onclick=\"')[1].split('\"')[0].trim().replace(/this\./g,'gsparear.').replace(/this\,/g,'gsparear,'));
                    } else {
                      eval('zzaconto.' + ars[iars].outerHTML.split(' onclick=\"')[1].split('\"')[0].trim().replace(/this\./g,'gsparear.').replace(/this\,/g,'gsparear,'));
                    }
                    }
                 }
                 iars++;
                 //itwo='';
               }
               if (sparear) { itwo='';  }
            }
          }
          jjans=jjans.replace(/\ \ \ \ \ $/g,'');
          if (!zoomdone) {
          lastiizoom=iizoom;
          zaconto.getElementById('mg').onmousedown=function(){ setTimeout(parent.rifcheck, 3000); return true; };
          zaconto.getElementById('mg').ontouchdown=function(){ setTimeout(parent.rifcheck, 3000); return true; };
          } else {
          if (ziois.src.indexOf('refresh=') != -1) {
          lastiizoom=iizoom;
          zaconto.getElementById('mg').onmousedown=function(){ setTimeout(parent.rifcheck, 3000); return true; };
          zaconto.getElementById('mg').ontouchdown=function(){ setTimeout(parent.rifcheck, 3000); return true; };
          }
          lastiizoom=sein(iizoom);
          }
          if (itwo == '') {
 zaconto.getElementsByTagName('canvas')[0].dispatchEvent(new Event(\"click\", {
  bubbles: true, // only bubbles and cancelable
  cancelable: true, // work in the Event constructor
  clientX: xif,
  clientY: yif
 }));
if (1 == 2) {
if (zaconto.elementsFromPoint) {
  var elements = zaconto.elementsFromPoint(xif, yif);
  elements.forEach((elt, i) => {
    if (i < elements.length - 1) {
 zaconto.body.dispatchEvent(new Event(\"click\", {
  bubbles: true, // only bubbles and cancelable
  cancelable: true, // work in the Event constructor
  clientX: xif,
  clientY: yif
 }));
    }
  });
} else {
          zaconto.elementFromPoint(xif, yif).click();
}
}
       }
          }
       }
       } catch(hgjgs) {  }
       }
       jjans=jjans.replace(/\ \ \ \ \ $/g,'');
       return true;
  }
  

 
</script>
</head>
<body onload=\" ouronl(); if (document.URL.indexOf('rjmprogramming-com-au') != -1) {  document.getElementById('dword').innerHTML='<input name=gtover type=hidden value=y></input>'; }\" style=\"width:99%;height:700px;background:linear-gradient(rgba(255,255,255,0.7),rgba(255,255,255,0.7)),URL('//www.rjmprogramming.com.au/ITblog/600/450/?chtt=States+and+territories+of+Australia&cht=map:fixed=-61.5,106.85,-5.46667,162.03333&chdlp=b&chs=600x450&chld=AU-NSW|AU-QLD|AU-SA|AU-TAS|AU-VIC|AU-WA|AU-ACT|AU-NT&chco=7ecb2b|3c64c0|bc8123|a08a67|3f7903|77a5cf|7d8e9f|e26d5b&chdls=7ecb2b,6|3c64c0,6|bc8123,6|a08a67,6|3f7903,6|77a5cf,6|7d8e9f,6|e26d5b,6&chdl=New+South+Wales|Queensland|South+Australia|Tasmania|Victoria|Western+Australia|Australian+Capital+Territory|Northern+Territory');background-repeat:no-repeat;background-size:contain;\"> 
<h1>Google Charts Image Chart Map Chart Interfacer</h1> 
<h3 id=myh3 data-onclick=hthree();>RJM Programming - November, 2023</h3>
<form id=myform title=\"Regarding the country dropdown, please select a country, or more, and the textbox to the left will toggle modes of use for the correct timing of your relevant button click below.\" onsubmit=\" var ssv=document.getElementById('ccode').value;  if (eval('' + encodeURIComponent(ssv).length) > 700) { this.method='POST'; if (lastinid == 'bsfour') { this.action=this.action.replace('image_chart.php','rangegeo.php'); document.getElementById('justthat').name='justthat';  } else { this.action=this.action.replace('rangegeo.php','image_chart.php'); document.getElementById('justthat').name='x'; } } else { this.action=this.action.replace('rangegeo.php','image_chart.php'); this.method='GET';   if (document.getElementById('justthat').outerHTML.indexOf(' name=') != -1) { document.getElementById('justthat').name='x'; } } document.getElementById('jfrepos').style.display='block'; document.getElementById('kfrepos').style.display='block'; document.getElementById('ifrepos').style.display='block';  document.getElementById('geochart').style.display='block'; document.getElementById('mapchart').style.display='block';  gcdo(ssv.toUpperCase()); document.getElementById('ccode').value=ssv; return thatcouldbe(true);\" target=ifrepos method=GET action=./image_chart.php>
<input type=hidden name=randis value=" . rand(0,564534) . "></input>
<div id=dword style=display:none;></div>
<input onblur=\"  if (this.value.length == 2) { document.getElementById('selceqwq').value=this.value.toUpperCase(); } \" id=ccode name=ccode title='Sometimes swapping country code case combinations can help with a different map view.' placeholder='Please enter your 2 letter country code.' value='' style=width:50%;></input> or <br><select onclick=selit(this); title='" . $setrange . "' style=font-size:10px;display:inline-block; class=glow data-multival=\"\" data-singleval=\"\" onchange=\"document.getElementById('ccode').value=selitchange(this.value,this); posththree();\" size=7 id='selceqwq' multiple>
<option value=''>?</option>
<option data-continent='Asia' value='AF'>Afghanistan</option>
<option value='AX'>Aland Islands</option>
<option data-continent='Europe' value='AL'>Albania</option>
<option data-continent='Africa' value='DZ'>Algeria</option>
<option data-continent='North and Central America' value='AS'>American Samoa</option>
<option data-continent='Europe' value='AD'>Andorra</option>
<option data-continent='Africa' value='AO'>Angola</option>
<option data-continent='North and Central America' value='AI'>Anguilla</option>
<option data-continent='North and Central America' value='AG'>Antigua and Barbuda</option>
<option data-continent='South America' value='AR'>Argentina</option>
<option data-continent='Asia' value='AM'>Armenia</option>
<option data-continent='North and Central America' value='AW'>Aruba</option>
<option data-continent='South East Asia and Oceania' value='AU'>Australia</option>
<option data-continent='Europe' value='AT'>Austria</option>
<option data-continent='Asia' value='AZ'>Azerbaijan</option>
<option data-continent='North and Central America' value='BS'>Bahamas the</option>
<option data-continent='Asia' value='BH'>Bahrain</option>
<option data-alt-continent='Asia' data-continent='South East Asia and Oceania' value='BD'>Bangladesh</option>
<option data-continent='North and Central America' value='BB'>Barbados</option>
<option data-continent='Europe' value='BY'>Belarus</option>
<option data-continent='Europe' value='BE'>Belgium</option>
<option data-continent='North and Central America' value='BZ'>Belize</option>
<option data-continent='Africa' value='BJ'>Benin</option>
<option data-continent='North and Central America' value='BM'>Bermuda</option>
<option data-continent='Asia' value='BT'>Bhutan</option>
<option data-continent='South America' value='BO'>Bolivia</option>
<option data-continent='Europe' value='BA'>Bosnia and Herzegovina</option>
<option data-continent='Africa' value='BW'>Botswana</option>
<option value='BV'>Bouvet Island (Bouvetoya)</option>
<option data-continent='South America' value='BR'>Brazil</option>
<option value='IO'>British Indian Ocean Territory (Chagos Archipelago)</option>
<option value='VG'>British Virgin Islands</option>
<option data-alt-continent='Asia' data-continent='South East Asia and Oceania' value='BN'>Brunei Darussalam</option>
<option data-continent='Europe' value='BG'>Bulgaria</option>
<option data-continent='Africa' value='BF'>Burkina Faso</option>
<option data-continent='Africa' value='BI'>Burundi</option>
<option data-alt-continent='Asia' data-continent='South East Asia and Oceania' value='KH'>Cambodia</option>
<option data-continent='Africa' value='CM'>Cameroon</option>
<option data-continent='North and Central America' value='CA'>Canada</option>
<option data-continent='Africa' value='CV'>Cape Verde</option>
<option value='KY'>Cayman Islands</option>
<option data-continent='Africa' value='CF'>Central African Republic</option>
<option data-continent='Africa' value='TD'>Chad</option>
<option data-continent='South America' value='CL'>Chile</option>
<option data-alt-continent='Asia' data-continent='South East Asia and Oceania' value='CN'>China</option>
<option data-continent='South East Asia and Oceania' value='CX'>Christmas Island</option>
<option data-continent='South East Asia and Oceania' value='CC'>Cocos (Keeling) Islands</option>
<option data-continent='South America' value='CO'>Colombia</option>
<option value='KM'>Comoros the</option>
<option data-continent='Africa' value='CD'>Democratic Republic of the Congo</option>
<option data-continent='Africa' value='CG'>Congo (the)</option>
<option data-continent='South East Asia and Oceania' value='CK'>Cook Islands</option>
<option data-continent='North and Central America' value='CR'>Costa Rica</option>
<option data-continent='Africa' value='CI'>Cote d'Ivoire</option>
<option data-continent='Europe' value='HR'>Croatia</option>
<option data-continent='North and Central America' value='CU'>Cuba</option>
<option data-continent='Europe' value='CY'>Cyprus</option>
<option data-continent='Europe' value='CZ'>Czech Republic</option>
<option data-continent='Europe' value='DK'>Denmark</option>
<option data-continent='Africa' value='DJ'>Djibouti</option>
<option data-continent='North and Central America' value='DM'>Dominica</option>
<option data-continent='North and Central America' value='DO'>Dominican Republic</option>
<option data-continent='South America' value='EC'>Ecuador</option>
<option data-continent='Africa' value='EG'>Egypt</option>
<option data-continent='North and Central America' value='SV'>El Salvador</option>
<option data-continent='Africa' value='GQ'>Equatorial Guinea</option>
<option data-continent='Africa' value='ER'>Eritrea</option>
<option data-continent='Europe' value='EE'>Estonia</option>
<option data-continent='Africa' value='ET'>Ethiopia</option>
<option data-continent='North and Central America' value='FO'>Faroe Islands</option>
<option data-continent='South America' value='FK'>Falkland Islands (Malvinas)</option>
<option data-continent='South East Asia and Oceania' value='FJ'>Fiji</option>
<option data-continent='Europe' value='FI'>Finland</option>
<option data-continent='Europe' value='FR'>France, French Republic</option>
<option data-continent='South America' value='GF'>French Guiana</option>
<option data-continent='South East Asia and Oceania' value='PF'>French Polynesia</option>
<option value='TF'>French Southern Territories</option>
<option data-continent='Africa' value='GA'>Gabon</option>
<option data-continent='Africa' value='GM'>Gambia the</option>
<option data-continent='Asia' value='GE'>Georgia</option>
<option data-continent='Europe' value='DE'>Germany</option>
<option data-continent='Africa' value='GH'>Ghana</option>
<option data-continent='Europe' value='GI'>Gibraltar</option>
<option data-continent='Europe' value='GR'>Greece</option>
<option data-continent='North and Central America' value='GL'>Greenland</option>
<option data-continent='North and Central America' value='GD'>Grenada</option>
<option data-continent='North and Central America' value='GP'>Guadeloupe</option>
<option data-continent='South East Asia and Oceania' value='GU'>Guam</option>
<option data-continent='North and Central America' value='GT'>Guatemala</option>
<option data-continent='Europe' value='GG'>Guernsey</option>
<option data-continent='Africa' value='GN'>Guinea</option>
<option data-continent='Africa' value='GW'>Guinea-Bissau</option>
<option data-continent='South America' value='GY'>Guyana</option>
<option data-continent='North and Central America' value='HT'>Haiti</option>
<option data-continent='South East Asia and Oceania' value='HM'>Heard Island and McDonald Islands</option>
<option data-continent='Europe' value='VA'>Vatican City (Holy See)</option>
<option data-continent='North and Central America' value='HN'>Honduras</option>
<option data-alt-continent='Asia' data-continent='South East Asia and Oceania' value='HK'>Hong Kong</option>
<option data-continent='Europe' value='HU'>Hungary</option>
<option data-continent='North and Central America' value='IS'>Iceland</option>
<option data-alt-continent='Asia' data-continent='South East Asia and Oceania' value='IN'>India</option>
<option data-continent='South East Asia and Oceania' value='ID'>Indonesia</option>
<option data-continent='Asia' value='IR'>Iran</option>
<option data-continent='Asia' value='IQ'>Iraq</option>
<option data-continent='Europe' value='IE'>Ireland</option>
<option data-continent='Europe' value='IM'>Isle of Man</option>
<option data-continent='Asia' value='IL'>Israel</option>
<option data-continent='Europe' value='IT'>Italy</option>
<option data-continent='North and Central America' value='JM'>Jamaica</option>
<option data-continent='Asia' value='JP'>Japan</option>
<option data-continent='Europe' value='JE'>Jersey</option>
<option data-continent='Asia' value='JO'>Jordan</option>
<option data-continent='Asia' value='KZ'>Kazakhstan</option>
<option data-continent='Africa' value='KE'>Kenya</option>
<option data-continent='South East Asia and Oceania' value='KI'>Kiribati</option>
<option data-continent='Europe' value='XK'>Kosovo</option>
<option data-continent='Asia' value='KR'>South Korea</option>
<option data-continent='Asia' value='KP'>North Korea</option>
<option data-continent='Asia' value='KW'>Kuwait</option>
<option data-continent='Asia' value='KG'>Kyrgyzstan</option>
<option data-alt-continent='Asia' data-continent='South East Asia and Oceania' value='LA'>Laos</option>
<option data-continent='Europe' value='LV'>Latvia</option>
<option data-continent='Asia' value='LB'>Lebanon</option>
<option data-continent='Africa' value='LS'>Lesotho</option>
<option data-continent='Africa' value='LR'>Liberia</option>
<option data-continent='Africa' value='LY'>Libyan Arab Jamahiriya</option>
<option data-continent='Europe' value='LI'>Liechtenstein</option>
<option data-continent='Europe' value='LT'>Lithuania</option>
<option data-continent='Europe' value='LU'>Luxembourg</option>
<option data-alt-continent='Asia' data-continent='South East Asia and Oceania' value='MO'>Macao</option>
<option data-continent='Europe' value='MK'>North Macedonia</option>
<option value='Mk'>Macedonia</option>
<option data-continent='Africa' value='MG'>Madagascar</option>
<option data-continent='Africa' value='MW'>Malawi</option>
<option data-alt-continent='Asia' data-continent='South East Asia and Oceania' value='MY'>Malaysia</option>
<option data-continent='Asia' value='MV'>Maldives</option>
<option data-continent='Africa' value='ML'>Mali</option>
<option data-continent='Europe' value='MT'>Malta</option>
<option data-continent='South East Asia and Oceania' value='MH'>Marshall Islands</option>
<option data-continent='North and Central America' value='MQ'>Martinique</option>
<option data-continent='Africa' value='MR'>Mauritania</option>
<option data-continent='Asia' value='MU'>Mauritius</option>
<option data-continent='Asia' value='YT'>Mayotte</option>
<option data-continent='North and Central America' value='MX'>Mexico</option>
<option data-continent='South East Asia and Oceania' value='FM'>Micronesia</option>
<option data-continent='Europe' value='MD'>Moldova</option>
<option data-continent='Europe' value='MC'>Monaco</option>
<option data-continent='Asia' value='MN'>Mongolia</option>
<option data-continent='Europe' value='ME'>Montenegro</option>
<option data-continent='North and Central America' value='MS'>Montserrat</option>
<option data-continent='Africa' value='MA'>Morocco</option>
<option data-continent='Africa' value='MZ'>Mozambique</option>
<option data-alt-continent='Asia' data-continent='South East Asia and Oceania' value='MM'>Myanmar (Burma)</option>
<option data-continent='Africa' value='NA'>Namibia</option>
<option data-continent='South East Asia and OceaniA' value='NR'>Nauru</option>
<option data-alt-continent='Asia' data-continent='South East Asia and Oceania' value='NP'>Nepal</option>
<option value='AN'>Netherlands Antilles</option>
<option data-continent='Europe' value='NL'>Netherlands the</option>
<option data-continent='South East Asia and Oceania' value='NC'>New Caledonia</option>
<option data-continent='South East Asia and Oceania' value='NZ'>New Zealand</option>
<option data-continent='North and Central America' value='NI'>Nicaragua</option>
<option data-continent='Africa' value='NE'>Niger</option>
<option data-continent='Africa' value='NG'>Nigeria</option>
<option data-continent='South East Asia and Oceania' value='NU'>Niue</option>
<option data-continent='South East Asia and Oceania' value='NF'>Norfolk Island</option>
<option data-continent='South East Asia and Oceania' value='MP'>Northern Mariana Islands</option>
<option data-continent='Europe' value='NO'>Norway</option>
<option data-continent='Asia' value='OM'>Oman</option>
<option data-alt-continent='Asia' data-continent='South East Asia and OceaniA' value='PK'>Pakistan</option>
<option value='PW'>Palau</option>
<option data-continent='Asia' value='PS'>Palestine</option>
<option data-continent='North and Central America' value='PA'>Panama</option>
<option data-continent='South East Asia and Oceania' value='PG'>Papua New Guinea</option>
<option data-continent='South America' value='PY'>Paraguay</option>
<option data-continent='South America' value='PE'>Peru</option>
<option data-alt-continent='Asia' data-continent='South East Asia and Oceania' value='PH'>Philippines</option>
<option data-continent='South East Asia and Oceania' value='PN'>Pitcairn Islands</option>
<option data-continent='Europe' value='PL'>Poland</option>
<option data-continent='Europe' value='PT'>Portugal, Portuguese Republic</option>
<option data-continent='North and Central America' value='PR'>Puerto Rico</option>
<option data-continent='Asia' value='QA'>Qatar</option>
<option data-alt-continent='Asia' data-continent='South East Asia and Oceania' value='RE'>Reunion</option>
<option data-continent='Europe' value='RO'>Romania</option>
<option data-continent='Europe' value='RU'>Russia</option>
<option data-continent='Africa' value='RW'>Rwanda</option>
<option value='BL'>Saint Barthelemy</option>
<option value='SH'>Saint Helena</option>
<option value='KN'>Saint Kitts and Nevis</option>
<option value='LC'>Saint Lucia</option>
<option value='MF'>Saint Martin</option>
<option value='PM'>Saint Pierre and Miquelon</option>
<option value='VC'>Saint Vincent and the Grenadines</option>
<option value='WS'>Samoa</option>
<option data-continent='Europe' value='SM'>San Marino</option>
<option value='ST'>Sao Tome and Principe</option>
<option data-continent='Asia' value='SA'>Saudi Arabia</option>
<option data-continent='Africa' value='SN'>Senegal</option>
<option data-continent='Europe' value='RS'>Serbia</option>
<option data-continent='Asia' value='SC'>Seychelles</option>
<option data-continent='Africa' value='SL'>Sierra Leone</option>
<option data-alt-continent='Asia' data-continent='South East Asia and Oceania' value='SG'>Singapore</option>
<option data-continent='Europe' value='SK'>Slovakia (Slovak Republic)</option>
<option data-continent='Europe' value='SI'>Slovenia</option>
<option data-continent='South East Asia and Oceania' value='SB'>Solomon Islands</option>
<option data-continent='Africa' value='SO'>Somalia, Somali Republic</option>
<option data-continent='Africa' value='ZA'>South Africa</option>
<option data-continent='South America' value='GS'>South Georgia and the South Sandwich Islands</option>
<option data-continent='Africa' value='SS'>South Sudan</option>
<option data-continent='Europe' value='ES'>Spain</option>
<option data-alt-continent='Asia' data-continent='South East Asia and Oceania' value='LK'>Sri Lanka</option>
<option data-continent='Africa' value='SD'>Sudan</option>
<option data-continent='South America' value='SR'>Suriname</option>
<option data-continent='North and Central America' value='SJ'>Svalbard & Jan Mayen Islands</option>
<option data-continent='Africa' value='SZ'>Swaziland</option>
<option data-continent='Europe' value='SE'>Sweden</option>
<option data-continent='Europe' value='CH'>Switzerland, Swiss Confederation</option>
<option data-continent='Asia' value='SY'>Syrian Arab Republic</option>
<option data-alt-continent='Asia' data-continent='South East Asia and Oceania' value='TW'>Taiwan</option>
<option data-continent='Asia' value='TJ'>Tajikistan</option>
<option data-continent='Africa' value='TZ'>Tanzania</option>
<option data-alt-continent='Asia' data-continent='South East Asia and Oceania' value='TH'>Thailand</option>
<option data-continent='South East Asia and Oceania' value='TL'>Timor-Leste</option>
<option value='TL'>East Timor</option>
<option data-continent='Africa' value='TG'>Togo</option>
<option data-continent='South East Asia and Oceania' value='TK'>Tokelau</option>
<option data-continent='South East Asia and Oceania' value='TO'>Tonga</option>
<option data-continent='North and Central America' value='TT'>Trinidad and Tobago</option>
<option data-continent='Africa' value='TN'>Tunisia</option>
<option data-continent='Europe' value='TR'>Turkey</option>
<option data-continent='Asia' value='TM'>Turkmenistan</option>
<option value='TC'>Turks and Caicos Islands</option>
<option data-continent='South East Asia and Oceania' value='TV'>Tuvalu</option>
<option data-continent='Africa' value='UG'>Uganda</option>
<option data-continent='Europe' value='UA'>Ukraine</option>
<option data-continent='Asia' value='AE'>United Arab Emirates</option>
<option data-continent='Europe' value='GB'>United Kingdom</option>
<option data-continent='North and Central America' value='US'>United States of America</option>
<option data-continent='North and Central America' value='UM'>United States Minor Outlying Islands</option>
<option data-continent='North and Central America' value='VI'>United States Virgin Islands</option>
<option data-continent='South America' value='UY'>Uruguay, Eastern Republic of</option>
<option data-continent='Asia' value='UZ'>Uzbekistan</option>
<option data-continent='South East Asia and Oceania' value='VU'>Vanuatu</option>
<option data-continent='South America' value='VE'>Venezuela</option>
<option data-continent='South East Asia and Oceania' value='VN'>Vietnam</option>
<option data-continent='South East Asia and Oceania' value='WF'>Wallis and Futuna</option>
<option data-continent='Africa' value='EH'>Western Sahara</option>
<option data-continent='Asia' value='YE'>Yemen</option>
<option data-continent='Africa' value='ZM'>Zambia</option>
<option data-continent='Africa' value='ZW'>Zimbabwe</option>
</select>&nbsp;<select id='select_language' onchange='updateCountry();' style=display:none;><option value=0>Afrikaans</option><option value=1>አማርኛ</option><option value=2>Azərbaycanca</option><option value=3>বাংলা</option><option value=4>Bahasa Indonesia</option><option value=5>Bahasa Melayu</option><option value=6>Català</option><option value=7>Čeština</option><option value=8>Dansk</option><option value=9>Deutsch</option><option value=10>English</option><option value=11>Español</option><option value=12>Euskara</option><option value=13>Filipino</option><option value=14>Français</option><option value=15>Basa Jawa</option><option value=16>Galego</option><option value=17>ગુજરાતી</option><option value=18>Hrvatski</option><option value=19>IsiZulu</option><option value=20>Íslenska</option><option value=21>Italiano</option><option value=22>ಕನ್ನಡ</option><option value=23>ភាសាខ្មែរ</option><option value=24>Latviešu</option><option value=25>Lietuvių</option><option value=26>മലയാളം</option><option value=27>मराठी</option><option value=28>Magyar</option><option value=29>ລາວ</option><option value=30>Nederlands</option><option value=31>नेपाली भाषा</option><option value=32>Norsk bokmål</option><option value=33>Polski</option><option value=34>Português</option><option value=35>Română</option><option value=36>සිංහල</option><option value=37>Slovenščina</option><option value=38>Basa Sunda</option><option value=39>Slovenčina</option><option value=40>Suomi</option><option value=41>Svenska</option><option value=42>Kiswahili</option><option value=43>ქართული</option><option value=44>Հայերեն</option><option value=45>தமிழ்</option><option value=46>తెలుగు</option><option value=47>Tiếng Việt</option><option value=48>Türkçe</option><option value=49>اُردُو</option><option value=50>Ελληνικά</option><option value=51>български</option><option value=52>Pусский</option><option value=53>Српски</option><option value=54>Українська</option><option value=55>한국어</option><option value=56>中文</option><option value=57>日本語</option><option value=58>हिन्दी</option><option value=59>ภาษาไทย</option></select>
<br><br><input id=bsone style=background-color:orange;width:20%; onclick=\"this.style.backgroundColor=restare(this.id,'green');\" type=submit value='Display'></input>&nbsp;<input style=background-color:orange;width:20%; onclick=\"this.style.backgroundColor=restare(this.id,'green');\" name='world' type=submit id=bstwo value='World'></input>&nbsp;<input onclick=\"luilook=true; document.getElementById('done').value=''; hthree(); this.style.backgroundColor=restare(this.id,'green');\" style=background-color:orange;width:20%; name='redregionquiz' type=submit id=rrq value='Quiz'></input>&nbsp;<input style=background-color:orange;width:20%; onclick=\"this.style.backgroundColor=restare(this.id,'green');\" name=geojson id=bsfour type=submit value='GeoJson'></input>
<input type=hidden id=justthat value=' containidisifrepos'></input></form><input type=hidden id=done value=''></input><iframe style=display:none; id=iflui src=./image_chart.php?nothing=y></iframe>
<br><br>
<iframe name=ifrepos id=ifrepos style='display:none;width:99%;height:900px;' src=./image_chart.php?nothing=y></iframe>
<br>
<div id=geochart style=display:none;>
<details style=width:100%;><summary>Geo Chart ... no regions but whole country</summary>
<iframe name=jfrepos id=jfrepos style='display:BLOCK;width:100%;height:900px;' src=\"/PHP/GeoChart/geo_chart.php?title=GB;Greenwich%20London%20Places&aregexographicals=y&aregeographicals=&width=834&height=520&country=Places&popularity=&data=%20[51.4769|-0.0005|~From~,2]%20,%20[51.4769|-0.0005|~To~,2]%20,%20[51.4769|-0.0005|~Greenwich~,2]\"></iframe>
<form target=\"jfrepos\" action=\"/PHP/GeoChart/geo_chart.php\" method=\"POST\"><input id=\"gtitle\" type=\"hidden\" value=\"TimeZone Places\" name=\"title\"></input><input type=hidden name=\"aregexographicals\" value=\"y\"></input><input type=\"hidden\" value=\"834\" name=\"width\"></input><input type=\"hidden\" value=\"520\" name=\"height\"></input><input type=\"hidden\" value=\"['Lat',\" name=\"label\"></input><input type=\"hidden\" value=\"'Lon','Name']\" name=\"value\"></input><input type='hidden' name='wouldlikeyoutoseekpermission' id='wouldlikeyoutoseekpermission' value=''></input><input id=\"garegeographicals\" type=\"hidden\" value=\"\" name=\"aregeographicals\"></input><input type=\"hidden\" value=\"\" name=\"popularity\"></input><input type=\"hidden\" value=\"Places\" name=\"country\"></input><input id=\"gdata\" type=\"hidden\" value=\"\" name=\"data\"></input><input type=\"hidden\" value=\"y\" name=\"onclick\"></input><input id=\"sgeoif\" type=\"submit\" value=\"Show\" style=\"display:none;\"></input></form>
</details>
</div>
<br>
<div id=mapchart style=display:none;>
<details style=width:100%;><summary>Map Chart ... timezone places</summary>
<iframe name=kfrepos id=kfrepos style='display:BLOCK;width:100%;height:900px;' src='/PHP/tz_places.php?tzname=%2B11&iam=1&iso=AU'></iframe>
</details>
</div>
" . '
<select id="select_dialect" style="visibility: hidden;display:NONE;"><option value="en-AU">Australia</option><option value="en-CA">Canada</option><option value="en-IN">India</option><option value="en-KE">Kenya</option><option value="en-TZ">Tanzania</option><option value="en-GH">Ghana</option><option value="en-NZ">New Zealand</option><option value="en-NG">Nigeria</option><option value="en-ZA">South Africa</option><option value="en-PH">Philippines</option><option value="en-GB">United Kingdom</option><option value="en-US">United States</option></select>
<div id="info" style="visibility: HIDDEN;">
          <p id="info_start" style="display: NONE;">
            Click on the microphone icon and begin speaking for as long as you like.
          </p>
          <p id="info_speak_now" style="display:none">
            Speak now.
          </p>
          <p id="info_no_speech" style="display:none">
            No speech was detected. You may need to adjust your <a data-href="//support.google.com/chrome/bin/answer.py?hl=en&amp;answer=1407892">microphone
            settings</a>.
          </p>
          <p id="info_no_microphone" style="display:none">
            No microphone was found. Ensure that a microphone is installed and that
            <a data-href="//support.google.com/chrome/bin/answer.py?hl=en&amp;answer=1407892">
            microphone settings</a> are configured correctly.
          </p>
          <p id="info_allow" style="display:none">
            Click the "Allow" button above to enable your microphone.
          </p>
          <p id="info_denied" style="display:none">
            Permission to use microphone was denied.
          </p>
          <p id="info_blocked" style="display:none">
            Permission to use microphone is blocked. To change, go to
            chrome://settings/contentExceptions#media-stream
          </p>
          <p id="info_upgrade" style="display:none">
            Web Speech API is not supported by this browser. Upgrade to <a href="//www.google.com/chrome">Chrome</a> version 25 or later.
          </p>
        </div>
<table width="100%" cellpadding="4" cellspacing="0" border="1" id=mylangt style=display:none; title="Thanks to https://www.loc.gov/standards/iso639-2/php/code_list.php">
	<tbody><tr valign="top" bgcolor="#ffffee"> 
	<th scope="col" width="15%">ISO 639-2 Code</th>
	<th scope="col" width="15%">ISO 639-1 Code</th>
	<th scope="col" width="20%">English name of Language</th>
	<th scope="col" width="25%">French name of Language</th>
	<th scope="col" width="25%">German name of Language</th>
	</tr><tr valign="top">
		<td scope="row">aar</td>
		<td>aa</td>
		<td>Afar</td>
		<td>afar</td>
		<td>Danakil-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">abk</td>
		<td>ab</td>
		<td>Abkhazian</td>
		<td>abkhaze</td>
		<td>Abchasisch</td>
		</tr><tr valign="top">
		<td scope="row">ace</td>
		<td>&nbsp;</td>
		<td>Achinese</td>
		<td>aceh</td>
		<td>Aceh-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">ach</td>
		<td>&nbsp;</td>
		<td>Acoli</td>
		<td>acoli</td>
		<td>Acholi-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">ada</td>
		<td>&nbsp;</td>
		<td>Adangme</td>
		<td>adangme</td>
		<td>Adangme-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">ady</td>
		<td>&nbsp;</td>
		<td>Adyghe; Adygei</td>
		<td>adyghÃ©</td>
		<td>Adygisch</td>
		</tr><tr valign="top">
		<td scope="row">afa</td>
		<td>&nbsp;</td>
		<td>Afro-Asiatic languages</td>
		<td>afro-asiatiques, langues</td>
		<td>Hamitosemitische Sprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">afh</td>
		<td>&nbsp;</td>
		<td>Afrihili</td>
		<td>afrihili</td>
		<td>Afrihili</td>
		</tr><tr valign="top">
		<td scope="row">afr</td>
		<td>af</td>
		<td>Afrikaans</td>
		<td>afrikaans</td>
		<td>Afrikaans</td>
		</tr><tr valign="top">
		<td scope="row">ain</td>
		<td>&nbsp;</td>
		<td>Ainu</td>
		<td>aÃ¯nou</td>
		<td>Ainu-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">aka</td>
		<td>ak</td>
		<td>Akan</td>
		<td>akan</td>
		<td>Akan-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">akk</td>
		<td>&nbsp;</td>
		<td>Akkadian</td>
		<td>akkadien</td>
		<td>Akkadisch</td>
		</tr><tr valign="top">
		<td scope="row">alb (B)<br>sqi (T)</td>
		<td>sq</td>
		<td>Albanian</td>
		<td>albanais</td>
		<td>Albanisch</td>
		</tr><tr valign="top">
		<td scope="row">ale</td>
		<td>&nbsp;</td>
		<td>Aleut</td>
		<td>alÃ©oute</td>
		<td>Aleutisch</td>
		</tr><tr valign="top">
		<td scope="row">alg</td>
		<td>&nbsp;</td>
		<td>Algonquian languages</td>
		<td>algonquines, langues</td>
		<td>Algonkin-Sprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">alt</td>
		<td>&nbsp;</td>
		<td>Southern Altai</td>
		<td>altai du Sud</td>
		<td>Altaisch</td>
		</tr><tr valign="top">
		<td scope="row">amh</td>
		<td>am</td>
		<td>Amharic</td>
		<td>amharique</td>
		<td>Amharisch</td>
		</tr><tr valign="top">
		<td scope="row">ang</td>
		<td>&nbsp;</td>
		<td>English, Old (ca.450-1100)</td>
		<td>anglo-saxon (ca.450-1100)</td>
		<td>Altenglisch</td>
		</tr><tr valign="top">
		<td scope="row">anp</td>
		<td>&nbsp;</td>
		<td>Angika</td>
		<td>angika</td>
		<td>Anga-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">apa</td>
		<td>&nbsp;</td>
		<td>Apache languages</td>
		<td>apaches, langues</td>
		<td>Apachen-Sprachen</td>
		</tr><tr valign="top">
		<td scope="row">ara</td>
		<td>ar</td>
		<td>Arabic</td>
		<td>arabe</td>
		<td>Arabisch</td>
		</tr><tr valign="top">
		<td scope="row">arc</td>
		<td>&nbsp;</td>
		<td>Official Aramaic (700-300 BCE); Imperial Aramaic (700-300 BCE)</td>
		<td>aramÃ©en d' . "'" . 'empire (700-300 BCE)</td>
		<td>AramÃ¤isch</td>
		</tr><tr valign="top">
		<td scope="row">arg</td>
		<td>an</td>
		<td>Aragonese</td>
		<td>aragonais</td>
		<td>Aragonesisch</td>
		</tr><tr valign="top">
		<td scope="row">arm (B)<br>hye (T)</td>
		<td>hy</td>
		<td>Armenian</td>
		<td>armÃ©nien</td>
		<td>Armenisch</td>
		</tr><tr valign="top">
		<td scope="row">arn</td>
		<td>&nbsp;</td>
		<td>Mapudungun; Mapuche</td>
		<td>mapudungun; mapuche; mapuce</td>
		<td>Arauka-Sprachen</td>
		</tr><tr valign="top">
		<td scope="row">arp</td>
		<td>&nbsp;</td>
		<td>Arapaho</td>
		<td>arapaho</td>
		<td>Arapaho-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">art</td>
		<td>&nbsp;</td>
		<td>Artificial languages</td>
		<td>artificielles, langues</td>
		<td>Kunstsprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">arw</td>
		<td>&nbsp;</td>
		<td>Arawak</td>
		<td>arawak</td>
		<td>Arawak-Sprachen</td>
		</tr><tr valign="top">
		<td scope="row">asm</td>
		<td>as</td>
		<td>Assamese</td>
		<td>assamais</td>
		<td>Assamesisch</td>
		</tr><tr valign="top">
		<td scope="row">ast</td>
		<td>&nbsp;</td>
		<td>Asturian; Bable; Leonese; Asturleonese</td>
		<td>asturien; bable; lÃ©onais; asturolÃ©onais</td>
		<td>Asturisch</td>
		</tr><tr valign="top">
		<td scope="row">ath</td>
		<td>&nbsp;</td>
		<td>Athapascan languages</td>
		<td>athapascanes, langues</td>
		<td>Athapaskische Sprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">aus</td>
		<td>&nbsp;</td>
		<td>Australian languages</td>
		<td>australiennes, langues</td>
		<td>Australische Sprachen</td>
		</tr><tr valign="top">
		<td scope="row">ava</td>
		<td>av</td>
		<td>Avaric</td>
		<td>avar</td>
		<td>Awarisch</td>
		</tr><tr valign="top">
		<td scope="row">ave</td>
		<td>ae</td>
		<td>Avestan</td>
		<td>avestique</td>
		<td>Avestisch</td>
		</tr><tr valign="top">
		<td scope="row">awa</td>
		<td>&nbsp;</td>
		<td>Awadhi</td>
		<td>awadhi</td>
		<td>Awadhi</td>
		</tr><tr valign="top">
		<td scope="row">aym</td>
		<td>ay</td>
		<td>Aymara</td>
		<td>aymara</td>
		<td>AymarÃ¡-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">aze</td>
		<td>az</td>
		<td>Azerbaijani</td>
		<td>azÃ©ri</td>
		<td>Aserbeidschanisch</td>
		</tr><tr valign="top">
		<td scope="row">bad</td>
		<td>&nbsp;</td>
		<td>Banda languages</td>
		<td>banda, langues</td>
		<td>Banda-Sprachen (Ubangi-Sprachen)</td>
		</tr><tr valign="top">
		<td scope="row">bai</td>
		<td>&nbsp;</td>
		<td>Bamileke languages</td>
		<td>bamilÃ©kÃ©, langues</td>
		<td>Bamileke-Sprachen</td>
		</tr><tr valign="top">
		<td scope="row">bak</td>
		<td>ba</td>
		<td>Bashkir</td>
		<td>bachkir</td>
		<td>Baschkirisch</td>
		</tr><tr valign="top">
		<td scope="row">bal</td>
		<td>&nbsp;</td>
		<td>Baluchi</td>
		<td>baloutchi</td>
		<td>Belutschisch</td>
		</tr><tr valign="top">
		<td scope="row">bam</td>
		<td>bm</td>
		<td>Bambara</td>
		<td>bambara</td>
		<td>Bambara-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">ban</td>
		<td>&nbsp;</td>
		<td>Balinese</td>
		<td>balinais</td>
		<td>Balinesisch</td>
		</tr><tr valign="top">
		<td scope="row">baq (B)<br>eus (T)</td>
		<td>eu</td>
		<td>Basque</td>
		<td>basque</td>
		<td>Baskisch</td>
		</tr><tr valign="top">
		<td scope="row">bas</td>
		<td>&nbsp;</td>
		<td>Basa</td>
		<td>basa</td>
		<td>Basaa-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">bat</td>
		<td>&nbsp;</td>
		<td>Baltic languages</td>
		<td>baltes, langues</td>
		<td>Baltische Sprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">bej</td>
		<td>&nbsp;</td>
		<td>Beja; Bedawiyet</td>
		<td>bedja</td>
		<td>Bedauye</td>
		</tr><tr valign="top">
		<td scope="row">bel</td>
		<td>be</td>
		<td>Belarusian</td>
		<td>biÃ©lorusse</td>
		<td>WeiÃŸrussisch</td>
		</tr><tr valign="top">
		<td scope="row">bem</td>
		<td>&nbsp;</td>
		<td>Bemba</td>
		<td>bemba</td>
		<td>Bemba-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">ben</td>
		<td>bn</td>
		<td>Bengali</td>
		<td>bengali</td>
		<td>Bengali</td>
		</tr><tr valign="top">
		<td scope="row">ber</td>
		<td>&nbsp;</td>
		<td>Berber languages</td>
		<td>berbÃ¨res, langues</td>
		<td>Berbersprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">bho</td>
		<td>&nbsp;</td>
		<td>Bhojpuri</td>
		<td>bhojpuri</td>
		<td>Bhojpuri</td>
		</tr><tr valign="top">
		<td scope="row">bih</td>
		<td>bh</td>
		<td>Bihari languages</td>
		<td>langues biharis</td>
		<td>Bihari (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">bik</td>
		<td>&nbsp;</td>
		<td>Bikol</td>
		<td>bikol</td>
		<td>Bikol-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">bin</td>
		<td>&nbsp;</td>
		<td>Bini; Edo</td>
		<td>bini; edo</td>
		<td>Edo-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">bis</td>
		<td>bi</td>
		<td>Bislama</td>
		<td>bichlamar</td>
		<td>Beach-la-mar</td>
		</tr><tr valign="top">
		<td scope="row">bla</td>
		<td>&nbsp;</td>
		<td>Siksika</td>
		<td>blackfoot</td>
		<td>Blackfoot-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">bnt</td>
		<td>&nbsp;</td>
		<td>Bantu languages</td>
		<td>bantou, langues</td>
		<td>Bantusprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">tib (B)<br>bod (T)</td>
		<td>bo</td>
		<td>Tibetan</td>
		<td>tibÃ©tain</td>
		<td>Tibetisch</td>
		</tr><tr valign="top">
		<td scope="row">bos</td>
		<td>bs</td>
		<td>Bosnian</td>
		<td>bosniaque</td>
		<td>Bosnisch</td>
		</tr><tr valign="top">
		<td scope="row">bra</td>
		<td>&nbsp;</td>
		<td>Braj</td>
		<td>braj</td>
		<td>Braj-Bhakha</td>
		</tr><tr valign="top">
		<td scope="row">bre</td>
		<td>br</td>
		<td>Breton</td>
		<td>breton</td>
		<td>Bretonisch</td>
		</tr><tr valign="top">
		<td scope="row">btk</td>
		<td>&nbsp;</td>
		<td>Batak languages</td>
		<td>batak, langues</td>
		<td>Batak-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">bua</td>
		<td>&nbsp;</td>
		<td>Buriat</td>
		<td>bouriate</td>
		<td>Burjatisch</td>
		</tr><tr valign="top">
		<td scope="row">bug</td>
		<td>&nbsp;</td>
		<td>Buginese</td>
		<td>bugi</td>
		<td>Bugi-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">bul</td>
		<td>bg</td>
		<td>Bulgarian</td>
		<td>bulgare</td>
		<td>Bulgarisch</td>
		</tr><tr valign="top">
		<td scope="row">bur (B)<br>mya (T)</td>
		<td>my</td>
		<td>Burmese</td>
		<td>birman</td>
		<td>Birmanisch</td>
		</tr><tr valign="top">
		<td scope="row">byn</td>
		<td>&nbsp;</td>
		<td>Blin; Bilin</td>
		<td>blin; bilen</td>
		<td>Bilin-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">cad</td>
		<td>&nbsp;</td>
		<td>Caddo</td>
		<td>caddo</td>
		<td>Caddo-Sprachen</td>
		</tr><tr valign="top">
		<td scope="row">cai</td>
		<td>&nbsp;</td>
		<td>Central American Indian languages</td>
		<td>amÃ©rindiennes de l' . "'" . 'AmÃ©rique centrale,  langues</td>
		<td>Indianersprachen, Zentralamerika (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">car</td>
		<td>&nbsp;</td>
		<td>Galibi Carib</td>
		<td>karib; galibi; carib</td>
		<td>Karibische Sprachen</td>
		</tr><tr valign="top">
		<td scope="row">cat</td>
		<td>ca</td>
		<td>Catalan; Valencian</td>
		<td>catalan; valencien</td>
		<td>Katalanisch</td>
		</tr><tr valign="top">
		<td scope="row">cau</td>
		<td>&nbsp;</td>
		<td>Caucasian languages</td>
		<td>caucasiennes, langues</td>
		<td>Kaukasische Sprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">ceb</td>
		<td>&nbsp;</td>
		<td>Cebuano</td>
		<td>cebuano</td>
		<td>Cebuano</td>
		</tr><tr valign="top">
		<td scope="row">cel</td>
		<td>&nbsp;</td>
		<td>Celtic languages</td>
		<td>celtiques, langues; celtes, langues</td>
		<td>Keltische Sprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">cze (B)<br>ces (T)</td>
		<td>cs</td>
		<td>Czech</td>
		<td>tchÃ¨que</td>
		<td>Tschechisch</td>
		</tr><tr valign="top">
		<td scope="row">cha</td>
		<td>ch</td>
		<td>Chamorro</td>
		<td>chamorro</td>
		<td>Chamorro-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">chb</td>
		<td>&nbsp;</td>
		<td>Chibcha</td>
		<td>chibcha</td>
		<td>Chibcha-Sprachen</td>
		</tr><tr valign="top">
		<td scope="row">che</td>
		<td>ce</td>
		<td>Chechen</td>
		<td>tchÃ©tchÃ¨ne</td>
		<td>Tschetschenisch</td>
		</tr><tr valign="top">
		<td scope="row">chg</td>
		<td>&nbsp;</td>
		<td>Chagatai</td>
		<td>djaghataÃ¯</td>
		<td>Tschagataisch</td>
		</tr><tr valign="top">
		<td scope="row">chi (B)<br>zho (T)</td>
		<td>zh</td>
		<td>Chinese</td>
		<td>chinois</td>
		<td>Chinesisch</td>
		</tr><tr valign="top">
		<td scope="row">chk</td>
		<td>&nbsp;</td>
		<td>Chuukese</td>
		<td>chuuk</td>
		<td>Trukesisch</td>
		</tr><tr valign="top">
		<td scope="row">chm</td>
		<td>&nbsp;</td>
		<td>Mari</td>
		<td>mari</td>
		<td>Tscheremissisch</td>
		</tr><tr valign="top">
		<td scope="row">chn</td>
		<td>&nbsp;</td>
		<td>Chinook jargon</td>
		<td>chinook, jargon</td>
		<td>Chinook-Jargon</td>
		</tr><tr valign="top">
		<td scope="row">cho</td>
		<td>&nbsp;</td>
		<td>Choctaw</td>
		<td>choctaw</td>
		<td>Choctaw-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">chp</td>
		<td>&nbsp;</td>
		<td>Chipewyan; Dene Suline</td>
		<td>chipewyan</td>
		<td>Chipewyan-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">chr</td>
		<td>&nbsp;</td>
		<td>Cherokee</td>
		<td>cherokee</td>
		<td>Cherokee-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">chu</td>
		<td>cu</td>
		<td>Church Slavic; Old Slavonic; Church Slavonic; Old Bulgarian; Old Church Slavonic</td>
		<td>slavon d' . "'" . 'Ã©glise; vieux slave; slavon liturgique; vieux bulgare</td>
		<td>Kirchenslawisch</td>
		</tr><tr valign="top">
		<td scope="row">chv</td>
		<td>cv</td>
		<td>Chuvash</td>
		<td>tchouvache</td>
		<td>Tschuwaschisch</td>
		</tr><tr valign="top">
		<td scope="row">chy</td>
		<td>&nbsp;</td>
		<td>Cheyenne</td>
		<td>cheyenne</td>
		<td>Cheyenne-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">cmc</td>
		<td>&nbsp;</td>
		<td>Chamic languages</td>
		<td>chames, langues</td>
		<td>Cham-Sprachen</td>
		</tr><tr valign="top">
		<td scope="row">cnr</td>
		<td>&nbsp;</td>
		<td>Montenegrin</td>
		<td>montÃ©nÃ©grin</td>
		<td>Montenegrinisch</td>
		</tr><tr valign="top">
		<td scope="row">cop</td>
		<td>&nbsp;</td>
		<td>Coptic</td>
		<td>copte</td>
		<td>Koptisch</td>
		</tr><tr valign="top">
		<td scope="row">cor</td>
		<td>kw</td>
		<td>Cornish</td>
		<td>cornique</td>
		<td>Kornisch</td>
		</tr><tr valign="top">
		<td scope="row">cos</td>
		<td>co</td>
		<td>Corsican</td>
		<td>corse</td>
		<td>Korsisch</td>
		</tr><tr valign="top">
		<td scope="row">cpe</td>
		<td>&nbsp;</td>
		<td>Creoles and pidgins, English based</td>
		<td>crÃ©oles et pidgins basÃ©s sur l' . "'" . 'anglais</td>
		<td>Kreolisch-Englisch (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">cpf</td>
		<td>&nbsp;</td>
		<td>Creoles and pidgins, French-based</td>
		<td>crÃ©oles et pidgins basÃ©s sur le franÃ§ais</td>
		<td>Kreolisch-FranzÃ¶sisch (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">cpp</td>
		<td>&nbsp;</td>
		<td>Creoles and pidgins, Portuguese-based</td>
		<td>crÃ©oles et pidgins basÃ©s sur le portugais</td>
		<td>Kreolisch-Portugiesisch (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">cre</td>
		<td>cr</td>
		<td>Cree</td>
		<td>cree</td>
		<td>Cree-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">crh</td>
		<td>&nbsp;</td>
		<td>Crimean Tatar; Crimean Turkish</td>
		<td>tatar de CrimÃ©</td>
		<td>Krimtatarisch</td>
		</tr><tr valign="top">
		<td scope="row">crp</td>
		<td>&nbsp;</td>
		<td>Creoles and pidgins</td>
		<td>crÃ©oles et pidgins</td>
		<td>Kreolische Sprachen; Pidginsprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">csb</td>
		<td>&nbsp;</td>
		<td>Kashubian</td>
		<td>kachoube</td>
		<td>Kaschubisch</td>
		</tr><tr valign="top">
		<td scope="row">cus</td>
		<td>&nbsp;</td>
		<td>Cushitic languages</td>
		<td>couchitiques,  langues</td>
		<td>Kuschitische Sprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">wel (B)<br>cym (T)</td>
		<td>cy</td>
		<td>Welsh</td>
		<td>gallois</td>
		<td>Kymrisch</td>
		</tr><tr valign="top">
		<td scope="row">cze (B)<br>ces (T)</td>
		<td>cs</td>
		<td>Czech</td>
		<td>tchÃ¨que</td>
		<td>Tschechisch</td>
		</tr><tr valign="top">
		<td scope="row">dak</td>
		<td>&nbsp;</td>
		<td>Dakota</td>
		<td>dakota</td>
		<td>Dakota-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">dan</td>
		<td>da</td>
		<td>Danish</td>
		<td>danois</td>
		<td>DÃ¤nisch</td>
		</tr><tr valign="top">
		<td scope="row">dar</td>
		<td>&nbsp;</td>
		<td>Dargwa</td>
		<td>dargwa</td>
		<td>Darginisch</td>
		</tr><tr valign="top">
		<td scope="row">day</td>
		<td>&nbsp;</td>
		<td>Land Dayak languages</td>
		<td>dayak, langues</td>
		<td>Dajakisch</td>
		</tr><tr valign="top">
		<td scope="row">del</td>
		<td>&nbsp;</td>
		<td>Delaware</td>
		<td>delaware</td>
		<td>Delaware-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">den</td>
		<td>&nbsp;</td>
		<td>Slave (Athapascan)</td>
		<td>esclave (athapascan)</td>
		<td>Slave-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">ger (B)<br>deu (T)</td>
		<td>de</td>
		<td>German</td>
		<td>allemand</td>
		<td>Deutsch</td>
		</tr><tr valign="top">
		<td scope="row">dgr</td>
		<td>&nbsp;</td>
		<td>Dogrib</td>
		<td>dogrib</td>
		<td>Dogrib-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">din</td>
		<td>&nbsp;</td>
		<td>Dinka</td>
		<td>dinka</td>
		<td>Dinka-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">div</td>
		<td>dv</td>
		<td>Divehi; Dhivehi; Maldivian</td>
		<td>maldivien</td>
		<td>Maledivisch</td>
		</tr><tr valign="top">
		<td scope="row">doi</td>
		<td>&nbsp;</td>
		<td>Dogri</td>
		<td>dogri</td>
		<td>Dogri</td>
		</tr><tr valign="top">
		<td scope="row">dra</td>
		<td>&nbsp;</td>
		<td>Dravidian languages</td>
		<td>dravidiennes,  langues</td>
		<td>Drawidische Sprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">dsb</td>
		<td>&nbsp;</td>
		<td>Lower Sorbian</td>
		<td>bas-sorabe</td>
		<td>Niedersorbisch</td>
		</tr><tr valign="top">
		<td scope="row">dua</td>
		<td>&nbsp;</td>
		<td>Duala</td>
		<td>douala</td>
		<td>Duala-Sprachen</td>
		</tr><tr valign="top">
		<td scope="row">dum</td>
		<td>&nbsp;</td>
		<td>Dutch, Middle (ca.1050-1350)</td>
		<td>nÃ©erlandais moyen (ca. 1050-1350)</td>
		<td>MittelniederlÃ¤ndisch</td>
		</tr><tr valign="top">
		<td scope="row">dut (B)<br>nld (T)</td>
		<td>nl</td>
		<td>Dutch; Flemish</td>
		<td>nÃ©erlandais; flamand</td>
		<td>NiederlÃ¤ndisch</td>
		</tr><tr valign="top">
		<td scope="row">dyu</td>
		<td>&nbsp;</td>
		<td>Dyula</td>
		<td>dioula</td>
		<td>Dyula-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">dzo</td>
		<td>dz</td>
		<td>Dzongkha</td>
		<td>dzongkha</td>
		<td>Dzongkha</td>
		</tr><tr valign="top">
		<td scope="row">efi</td>
		<td>&nbsp;</td>
		<td>Efik</td>
		<td>efik</td>
		<td>Efik</td>
		</tr><tr valign="top">
		<td scope="row">egy</td>
		<td>&nbsp;</td>
		<td>Egyptian (Ancient)</td>
		<td>Ã©gyptien</td>
		<td>Ã„gyptisch</td>
		</tr><tr valign="top">
		<td scope="row">eka</td>
		<td>&nbsp;</td>
		<td>Ekajuk</td>
		<td>ekajuk</td>
		<td>Ekajuk</td>
		</tr><tr valign="top">
		<td scope="row">gre (B)<br>ell (T)</td>
		<td>el</td>
		<td>Greek, Modern (1453-)</td>
		<td>grec moderne (aprÃ¨s 1453)</td>
		<td>Neugriechisch</td>
		</tr><tr valign="top">
		<td scope="row">elx</td>
		<td>&nbsp;</td>
		<td>Elamite</td>
		<td>Ã©lamite</td>
		<td>Elamisch</td>
		</tr><tr valign="top">
		<td scope="row">eng</td>
		<td>en</td>
		<td>English</td>
		<td>anglais</td>
		<td>Englisch</td>
		</tr><tr valign="top">
		<td scope="row">enm</td>
		<td>&nbsp;</td>
		<td>English, Middle (1100-1500)</td>
		<td>anglais moyen (1100-1500)</td>
		<td>Mittelenglisch</td>
		</tr><tr valign="top">
		<td scope="row">epo</td>
		<td>eo</td>
		<td>Esperanto</td>
		<td>espÃ©ranto</td>
		<td>Esperanto</td>
		</tr><tr valign="top">
		<td scope="row">est</td>
		<td>et</td>
		<td>Estonian</td>
		<td>estonien</td>
		<td>Estnisch</td>
		</tr><tr valign="top">
		<td scope="row">baq (B)<br>eus (T)</td>
		<td>eu</td>
		<td>Basque</td>
		<td>basque</td>
		<td>Baskisch</td>
		</tr><tr valign="top">
		<td scope="row">ewe</td>
		<td>ee</td>
		<td>Ewe</td>
		<td>Ã©wÃ©</td>
		<td>Ewe-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">ewo</td>
		<td>&nbsp;</td>
		<td>Ewondo</td>
		<td>Ã©wondo</td>
		<td>Ewondo</td>
		</tr><tr valign="top">
		<td scope="row">fan</td>
		<td>&nbsp;</td>
		<td>Fang</td>
		<td>fang</td>
		<td>Pangwe-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">fao</td>
		<td>fo</td>
		<td>Faroese</td>
		<td>fÃ©roÃ¯en</td>
		<td>FÃ¤rÃ¶isch</td>
		</tr><tr valign="top">
		<td scope="row">per (B)<br>fas (T)</td>
		<td>fa</td>
		<td>Persian</td>
		<td>persan</td>
		<td>Persisch</td>
		</tr><tr valign="top">
		<td scope="row">fat</td>
		<td>&nbsp;</td>
		<td>Fanti</td>
		<td>fanti</td>
		<td>Fante-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">fij</td>
		<td>fj</td>
		<td>Fijian</td>
		<td>fidjien</td>
		<td>Fidschi-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">fil</td>
		<td>&nbsp;</td>
		<td>Filipino; Pilipino</td>
		<td>filipino; pilipino</td>
		<td>Pilipino</td>
		</tr><tr valign="top">
		<td scope="row">fin</td>
		<td>fi</td>
		<td>Finnish</td>
		<td>finnois</td>
		<td>Finnisch</td>
		</tr><tr valign="top">
		<td scope="row">fiu</td>
		<td>&nbsp;</td>
		<td>Finno-Ugrian languages</td>
		<td>finno-ougriennes,  langues</td>
		<td>Finnougrische Sprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">fon</td>
		<td>&nbsp;</td>
		<td>Fon</td>
		<td>fon</td>
		<td>Fon-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">fre (B)<br>fra (T)</td>
		<td>fr</td>
		<td>French</td>
		<td>franÃ§ais</td>
		<td>FranzÃ¶sisch</td>
		</tr><tr valign="top">
		<td scope="row">fre (B)<br>fra (T)</td>
		<td>fr</td>
		<td>French</td>
		<td>franÃ§ais</td>
		<td>FranzÃ¶sisch</td>
		</tr><tr valign="top">
		<td scope="row">frm</td>
		<td>&nbsp;</td>
		<td>French, Middle (ca.1400-1600)</td>
		<td>franÃ§ais moyen (1400-1600)</td>
		<td>MittelfranzÃ¶sisch</td>
		</tr><tr valign="top">
		<td scope="row">fro</td>
		<td>&nbsp;</td>
		<td>French, Old (842-ca.1400)</td>
		<td>franÃ§ais ancien (842-ca.1400)</td>
		<td>AltfranzÃ¶sisch</td>
		</tr><tr valign="top">
		<td scope="row">frr</td>
		<td>&nbsp;</td>
		<td>Northern Frisian</td>
		<td>frison septentrional</td>
		<td>Nordfriesisch</td>
		</tr><tr valign="top">
		<td scope="row">frs</td>
		<td>&nbsp;</td>
		<td>Eastern Frisian</td>
		<td>frison oriental</td>
		<td>Ostfriesisch</td>
		</tr><tr valign="top">
		<td scope="row">fry</td>
		<td>fy</td>
		<td>Western Frisian</td>
		<td>frison occidental</td>
		<td>Friesisch</td>
		</tr><tr valign="top">
		<td scope="row">ful</td>
		<td>ff</td>
		<td>Fulah</td>
		<td>peul</td>
		<td>Ful</td>
		</tr><tr valign="top">
		<td scope="row">fur</td>
		<td>&nbsp;</td>
		<td>Friulian</td>
		<td>frioulan</td>
		<td>Friulisch</td>
		</tr><tr valign="top">
		<td scope="row">gaa</td>
		<td>&nbsp;</td>
		<td>Ga</td>
		<td>ga</td>
		<td>Ga-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">gay</td>
		<td>&nbsp;</td>
		<td>Gayo</td>
		<td>gayo</td>
		<td>Gayo-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">gba</td>
		<td>&nbsp;</td>
		<td>Gbaya</td>
		<td>gbaya</td>
		<td>Gbaya-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">gem</td>
		<td>&nbsp;</td>
		<td>Germanic languages</td>
		<td>germaniques, langues</td>
		<td>Germanische Sprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">geo (B)<br>kat (T)</td>
		<td>ka</td>
		<td>Georgian</td>
		<td>gÃ©orgien</td>
		<td>Georgisch</td>
		</tr><tr valign="top">
		<td scope="row">ger (B)<br>deu (T)</td>
		<td>de</td>
		<td>German</td>
		<td>allemand</td>
		<td>Deutsch</td>
		</tr><tr valign="top">
		<td scope="row">gez</td>
		<td>&nbsp;</td>
		<td>Geez</td>
		<td>guÃ¨ze</td>
		<td>AltÃ¤thiopisch</td>
		</tr><tr valign="top">
		<td scope="row">gil</td>
		<td>&nbsp;</td>
		<td>Gilbertese</td>
		<td>kiribati</td>
		<td>Gilbertesisch</td>
		</tr><tr valign="top">
		<td scope="row">gla</td>
		<td>gd</td>
		<td>Gaelic; Scottish Gaelic</td>
		<td>gaÃ©lique; gaÃ©lique Ã©cossais</td>
		<td>GÃ¤lisch-Schottisch</td>
		</tr><tr valign="top">
		<td scope="row">gle</td>
		<td>ga</td>
		<td>Irish</td>
		<td>irlandais</td>
		<td>Irisch</td>
		</tr><tr valign="top">
		<td scope="row">glg</td>
		<td>gl</td>
		<td>Galician</td>
		<td>galicien</td>
		<td>Galicisch</td>
		</tr><tr valign="top">
		<td scope="row">glv</td>
		<td>gv</td>
		<td>Manx</td>
		<td>manx; mannois</td>
		<td>Manx</td>
		</tr><tr valign="top">
		<td scope="row">gmh</td>
		<td>&nbsp;</td>
		<td>German, Middle High (ca.1050-1500)</td>
		<td>allemand, moyen haut (ca. 1050-1500)</td>
		<td>Mittelhochdeutsch</td>
		</tr><tr valign="top">
		<td scope="row">goh</td>
		<td>&nbsp;</td>
		<td>German, Old High (ca.750-1050)</td>
		<td>allemand, vieux haut (ca. 750-1050)</td>
		<td>Althochdeutsch</td>
		</tr><tr valign="top">
		<td scope="row">gon</td>
		<td>&nbsp;</td>
		<td>Gondi</td>
		<td>gond</td>
		<td>Gondi-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">gor</td>
		<td>&nbsp;</td>
		<td>Gorontalo</td>
		<td>gorontalo</td>
		<td>Gorontalesisch</td>
		</tr><tr valign="top">
		<td scope="row">got</td>
		<td>&nbsp;</td>
		<td>Gothic</td>
		<td>gothique</td>
		<td>Gotisch</td>
		</tr><tr valign="top">
		<td scope="row">grb</td>
		<td>&nbsp;</td>
		<td>Grebo</td>
		<td>grebo</td>
		<td>Grebo-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">grc</td>
		<td>&nbsp;</td>
		<td>Greek, Ancient (to 1453)</td>
		<td>grec ancien (jusqu' . "'" . 'Ã  1453)</td>
		<td>Griechisch</td>
		</tr><tr valign="top">
		<td scope="row">gre (B)<br>ell (T)</td>
		<td>el</td>
		<td>Greek, Modern (1453-)</td>
		<td>grec moderne (aprÃ¨s 1453)</td>
		<td>Neugriechisch</td>
		</tr><tr valign="top">
		<td scope="row">grn</td>
		<td>gn</td>
		<td>Guarani</td>
		<td>guarani</td>
		<td>GuaranÃ­-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">gsw</td>
		<td>&nbsp;</td>
		<td>Swiss German; Alemannic; Alsatian</td>
		<td>suisse alÃ©manique; alÃ©manique; alsacien</td>
		<td>Schweizerdeutsch</td>
		</tr><tr valign="top">
		<td scope="row">guj</td>
		<td>gu</td>
		<td>Gujarati</td>
		<td>goudjrati</td>
		<td>Gujarati-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">gwi</td>
		<td>&nbsp;</td>
		<td>Gwich' . "'" . 'in</td>
		<td>gwich' . "'" . 'in</td>
		<td>Kutchin-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">hai</td>
		<td>&nbsp;</td>
		<td>Haida</td>
		<td>haida</td>
		<td>Haida-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">hat</td>
		<td>ht</td>
		<td>Haitian; Haitian Creole</td>
		<td>haÃ¯tien; crÃ©ole haÃ¯tien</td>
		<td>HaÃ¯tien (Haiti-Kreolisch)</td>
		</tr><tr valign="top">
		<td scope="row">hau</td>
		<td>ha</td>
		<td>Hausa</td>
		<td>haoussa</td>
		<td>Haussa-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">haw</td>
		<td>&nbsp;</td>
		<td>Hawaiian</td>
		<td>hawaÃ¯en</td>
		<td>Hawaiisch</td>
		</tr><tr valign="top">
		<td scope="row">heb</td>
		<td>he</td>
		<td>Hebrew</td>
		<td>hÃ©breu</td>
		<td>HebrÃ¤isch</td>
		</tr><tr valign="top">
		<td scope="row">her</td>
		<td>hz</td>
		<td>Herero</td>
		<td>herero</td>
		<td>Herero-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">hil</td>
		<td>&nbsp;</td>
		<td>Hiligaynon</td>
		<td>hiligaynon</td>
		<td>Hiligaynon-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">him</td>
		<td>&nbsp;</td>
		<td>Himachali languages; Western Pahari languages</td>
		<td>langues himachalis; langues paharis occidentales</td>
		<td>Himachali</td>
		</tr><tr valign="top">
		<td scope="row">hin</td>
		<td>hi</td>
		<td>Hindi</td>
		<td>hindi</td>
		<td>Hindi</td>
		</tr><tr valign="top">
		<td scope="row">hit</td>
		<td>&nbsp;</td>
		<td>Hittite</td>
		<td>hittite</td>
		<td>Hethitisch</td>
		</tr><tr valign="top">
		<td scope="row">hmn</td>
		<td>&nbsp;</td>
		<td>Hmong; Mong</td>
		<td>hmong</td>
		<td>Miao-Sprachen</td>
		</tr><tr valign="top">
		<td scope="row">hmo</td>
		<td>ho</td>
		<td>Hiri Motu</td>
		<td>hiri motu</td>
		<td>Hiri-Motu</td>
		</tr><tr valign="top">
		<td scope="row">hrv</td>
		<td>hr</td>
		<td>Croatian</td>
		<td>croate</td>
		<td>Kroatisch </td>
		</tr><tr valign="top">
		<td scope="row">hsb</td>
		<td>&nbsp;</td>
		<td>Upper Sorbian</td>
		<td>haut-sorabe</td>
		<td>Obersorbisch</td>
		</tr><tr valign="top">
		<td scope="row">hun</td>
		<td>hu</td>
		<td>Hungarian</td>
		<td>hongrois</td>
		<td>Ungarisch</td>
		</tr><tr valign="top">
		<td scope="row">hup</td>
		<td>&nbsp;</td>
		<td>Hupa</td>
		<td>hupa</td>
		<td>Hupa-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">arm (B)<br>hye (T)</td>
		<td>hy</td>
		<td>Armenian</td>
		<td>armÃ©nien</td>
		<td>Armenisch</td>
		</tr><tr valign="top">
		<td scope="row">iba</td>
		<td>&nbsp;</td>
		<td>Iban</td>
		<td>iban</td>
		<td>Iban-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">ibo</td>
		<td>ig</td>
		<td>Igbo</td>
		<td>igbo</td>
		<td>Ibo-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">ice (B)<br>isl (T)</td>
		<td>is</td>
		<td>Icelandic</td>
		<td>islandais</td>
		<td>IslÃ¤ndisch</td>
		</tr><tr valign="top">
		<td scope="row">ido</td>
		<td>io</td>
		<td>Ido</td>
		<td>ido</td>
		<td>Ido</td>
		</tr><tr valign="top">
		<td scope="row">iii</td>
		<td>ii</td>
		<td>Sichuan Yi; Nuosu</td>
		<td>yi de Sichuan</td>
		<td>Lalo-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">ijo</td>
		<td>&nbsp;</td>
		<td>Ijo languages</td>
		<td>ijo, langues</td>
		<td>Ijo-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">iku</td>
		<td>iu</td>
		<td>Inuktitut</td>
		<td>inuktitut</td>
		<td>Inuktitut</td>
		</tr><tr valign="top">
		<td scope="row">ile</td>
		<td>ie</td>
		<td>Interlingue; Occidental</td>
		<td>interlingue</td>
		<td>Interlingue</td>
		</tr><tr valign="top">
		<td scope="row">ilo</td>
		<td>&nbsp;</td>
		<td>Iloko</td>
		<td>ilocano</td>
		<td>Ilokano-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">ina</td>
		<td>ia</td>
		<td>Interlingua (International Auxiliary Language Association)</td>
		<td>interlingua (langue auxiliaire internationale)</td>
		<td>Interlingua</td>
		</tr><tr valign="top">
		<td scope="row">inc</td>
		<td>&nbsp;</td>
		<td>Indic languages</td>
		<td>indo-aryennes, langues</td>
		<td>Indoarische Sprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">ind</td>
		<td>id</td>
		<td>Indonesian</td>
		<td>indonÃ©sien</td>
		<td>Bahasa Indonesia</td>
		</tr><tr valign="top">
		<td scope="row">ine</td>
		<td>&nbsp;</td>
		<td>Indo-European languages</td>
		<td>indo-europÃ©ennes, langues</td>
		<td>Indogermanische Sprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">inh</td>
		<td>&nbsp;</td>
		<td>Ingush</td>
		<td>ingouche</td>
		<td>Inguschisch</td>
		</tr><tr valign="top">
		<td scope="row">ipk</td>
		<td>ik</td>
		<td>Inupiaq</td>
		<td>inupiaq</td>
		<td>Inupik</td>
		</tr><tr valign="top">
		<td scope="row">ira</td>
		<td>&nbsp;</td>
		<td>Iranian languages</td>
		<td>iraniennes, langues</td>
		<td>Iranische Sprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">iro</td>
		<td>&nbsp;</td>
		<td>Iroquoian languages</td>
		<td>iroquoises, langues</td>
		<td>Irokesische Sprachen</td>
		</tr><tr valign="top">
		<td scope="row">ice (B)<br>isl (T)</td>
		<td>is</td>
		<td>Icelandic</td>
		<td>islandais</td>
		<td>IslÃ¤ndisch</td>
		</tr><tr valign="top">
		<td scope="row">ita</td>
		<td>it</td>
		<td>Italian</td>
		<td>italien</td>
		<td>Italienisch</td>
		</tr><tr valign="top">
		<td scope="row">jav</td>
		<td>jv</td>
		<td>Javanese</td>
		<td>javanais</td>
		<td>Javanisch</td>
		</tr><tr valign="top">
		<td scope="row">jbo</td>
		<td>&nbsp;</td>
		<td>Lojban</td>
		<td>lojban</td>
		<td>Lojban</td>
		</tr><tr valign="top">
		<td scope="row">jpn</td>
		<td>ja</td>
		<td>Japanese</td>
		<td>japonais</td>
		<td>Japanisch</td>
		</tr><tr valign="top">
		<td scope="row">jpr</td>
		<td>&nbsp;</td>
		<td>Judeo-Persian</td>
		<td>judÃ©o-persan</td>
		<td>JÃ¼disch-Persisch</td>
		</tr><tr valign="top">
		<td scope="row">jrb</td>
		<td>&nbsp;</td>
		<td>Judeo-Arabic</td>
		<td>judÃ©o-arabe</td>
		<td>JÃ¼disch-Arabisch</td>
		</tr><tr valign="top">
		<td scope="row">kaa</td>
		<td>&nbsp;</td>
		<td>Kara-Kalpak</td>
		<td>karakalpak</td>
		<td>Karakalpakisch</td>
		</tr><tr valign="top">
		<td scope="row">kab</td>
		<td>&nbsp;</td>
		<td>Kabyle</td>
		<td>kabyle</td>
		<td>Kabylisch</td>
		</tr><tr valign="top">
		<td scope="row">kac</td>
		<td>&nbsp;</td>
		<td>Kachin; Jingpho</td>
		<td>kachin; jingpho</td>
		<td>Kachin-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">kal</td>
		<td>kl</td>
		<td>Kalaallisut; Greenlandic</td>
		<td>groenlandais</td>
		<td>GrÃ¶nlÃ¤ndisch</td>
		</tr><tr valign="top">
		<td scope="row">kam</td>
		<td>&nbsp;</td>
		<td>Kamba</td>
		<td>kamba</td>
		<td>Kamba-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">kan</td>
		<td>kn</td>
		<td>Kannada</td>
		<td>kannada</td>
		<td>Kannada</td>
		</tr><tr valign="top">
		<td scope="row">kar</td>
		<td>&nbsp;</td>
		<td>Karen languages</td>
		<td>karen, langues</td>
		<td>Karenisch</td>
		</tr><tr valign="top">
		<td scope="row">kas</td>
		<td>ks</td>
		<td>Kashmiri</td>
		<td>kashmiri</td>
		<td>Kaschmiri</td>
		</tr><tr valign="top">
		<td scope="row">geo (B)<br>kat (T)</td>
		<td>ka</td>
		<td>Georgian</td>
		<td>gÃ©orgien</td>
		<td>Georgisch</td>
		</tr><tr valign="top">
		<td scope="row">kau</td>
		<td>kr</td>
		<td>Kanuri</td>
		<td>kanouri</td>
		<td>Kanuri-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">kaw</td>
		<td>&nbsp;</td>
		<td>Kawi</td>
		<td>kawi</td>
		<td>Kawi</td>
		</tr><tr valign="top">
		<td scope="row">kaz</td>
		<td>kk</td>
		<td>Kazakh</td>
		<td>kazakh</td>
		<td>Kasachisch</td>
		</tr><tr valign="top">
		<td scope="row">kbd</td>
		<td>&nbsp;</td>
		<td>Kabardian</td>
		<td>kabardien</td>
		<td>Kabardinisch</td>
		</tr><tr valign="top">
		<td scope="row">kha</td>
		<td>&nbsp;</td>
		<td>Khasi</td>
		<td>khasi</td>
		<td>Khasi-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">khi</td>
		<td>&nbsp;</td>
		<td>Khoisan languages</td>
		<td>khoÃ¯san, langues</td>
		<td>Khoisan-Sprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">khm</td>
		<td>km</td>
		<td>Central Khmer</td>
		<td>khmer central</td>
		<td>Kambodschanisch</td>
		</tr><tr valign="top">
		<td scope="row">kho</td>
		<td>&nbsp;</td>
		<td>Khotanese; Sakan</td>
		<td>khotanais; sakan</td>
		<td>Sakisch</td>
		</tr><tr valign="top">
		<td scope="row">kik</td>
		<td>ki</td>
		<td>Kikuyu; Gikuyu</td>
		<td>kikuyu</td>
		<td>Kikuyu-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">kin</td>
		<td>rw</td>
		<td>Kinyarwanda</td>
		<td>rwanda</td>
		<td>Rwanda-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">kir</td>
		<td>ky</td>
		<td>Kirghiz; Kyrgyz</td>
		<td>kirghiz</td>
		<td>Kirgisisch</td>
		</tr><tr valign="top">
		<td scope="row">kmb</td>
		<td>&nbsp;</td>
		<td>Kimbundu</td>
		<td>kimbundu</td>
		<td>Kimbundu-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">kok</td>
		<td>&nbsp;</td>
		<td>Konkani</td>
		<td>konkani</td>
		<td>Konkani</td>
		</tr><tr valign="top">
		<td scope="row">kom</td>
		<td>kv</td>
		<td>Komi</td>
		<td>kom</td>
		<td>Komi-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">kon</td>
		<td>kg</td>
		<td>Kongo</td>
		<td>kongo</td>
		<td>Kongo-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">kor</td>
		<td>ko</td>
		<td>Korean</td>
		<td>corÃ©en</td>
		<td>Koreanisch</td>
		</tr><tr valign="top">
		<td scope="row">kos</td>
		<td>&nbsp;</td>
		<td>Kosraean</td>
		<td>kosrae</td>
		<td>Kosraeanisch</td>
		</tr><tr valign="top">
		<td scope="row">kpe</td>
		<td>&nbsp;</td>
		<td>Kpelle</td>
		<td>kpellÃ©</td>
		<td>Kpelle-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">krc</td>
		<td>&nbsp;</td>
		<td>Karachay-Balkar</td>
		<td>karatchai balkar</td>
		<td>Karatschaiisch-Balkarisch</td>
		</tr><tr valign="top">
		<td scope="row">krl</td>
		<td>&nbsp;</td>
		<td>Karelian</td>
		<td>carÃ©lien</td>
		<td>Karelisch</td>
		</tr><tr valign="top">
		<td scope="row">kro</td>
		<td>&nbsp;</td>
		<td>Kru languages</td>
		<td>krou, langues</td>
		<td>Kru-Sprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">kru</td>
		<td>&nbsp;</td>
		<td>Kurukh</td>
		<td>kurukh</td>
		<td>Oraon-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">kua</td>
		<td>kj</td>
		<td>Kuanyama; Kwanyama</td>
		<td>kuanyama; kwanyama</td>
		<td>Kwanyama-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">kum</td>
		<td>&nbsp;</td>
		<td>Kumyk</td>
		<td>koumyk</td>
		<td>KumÃ¼kisch</td>
		</tr><tr valign="top">
		<td scope="row">kur</td>
		<td>ku</td>
		<td>Kurdish</td>
		<td>kurde</td>
		<td>Kurdisch</td>
		</tr><tr valign="top">
		<td scope="row">kut</td>
		<td>&nbsp;</td>
		<td>Kutenai</td>
		<td>kutenai</td>
		<td>Kutenai-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">lad</td>
		<td>&nbsp;</td>
		<td>Ladino</td>
		<td>judÃ©o-espagnol</td>
		<td>Judenspanisch</td>
		</tr><tr valign="top">
		<td scope="row">lah</td>
		<td>&nbsp;</td>
		<td>Lahnda</td>
		<td>lahnda</td>
		<td>Lahnda</td>
		</tr><tr valign="top">
		<td scope="row">lam</td>
		<td>&nbsp;</td>
		<td>Lamba</td>
		<td>lamba</td>
		<td>Lamba-Sprache (Bantusprache)</td>
		</tr><tr valign="top">
		<td scope="row">lao</td>
		<td>lo</td>
		<td>Lao</td>
		<td>lao</td>
		<td>Laotisch</td>
		</tr><tr valign="top">
		<td scope="row">lat</td>
		<td>la</td>
		<td>Latin</td>
		<td>latin</td>
		<td>Latein</td>
		</tr><tr valign="top">
		<td scope="row">lav</td>
		<td>lv</td>
		<td>Latvian</td>
		<td>letton</td>
		<td>Lettisch</td>
		</tr><tr valign="top">
		<td scope="row">lez</td>
		<td>&nbsp;</td>
		<td>Lezghian</td>
		<td>lezghien</td>
		<td>Lesgisch</td>
		</tr><tr valign="top">
		<td scope="row">lim</td>
		<td>li</td>
		<td>Limburgan; Limburger; Limburgish</td>
		<td>limbourgeois</td>
		<td>Limburgisch</td>
		</tr><tr valign="top">
		<td scope="row">lin</td>
		<td>ln</td>
		<td>Lingala</td>
		<td>lingala</td>
		<td>Lingala</td>
		</tr><tr valign="top">
		<td scope="row">lit</td>
		<td>lt</td>
		<td>Lithuanian</td>
		<td>lituanien</td>
		<td>Litauisch</td>
		</tr><tr valign="top">
		<td scope="row">lol</td>
		<td>&nbsp;</td>
		<td>Mongo</td>
		<td>mongo</td>
		<td>Mongo-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">loz</td>
		<td>&nbsp;</td>
		<td>Lozi</td>
		<td>lozi</td>
		<td>Rotse-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">ltz</td>
		<td>lb</td>
		<td>Luxembourgish; Letzeburgesch</td>
		<td>luxembourgeois</td>
		<td>Luxemburgisch</td>
		</tr><tr valign="top">
		<td scope="row">lua</td>
		<td>&nbsp;</td>
		<td>Luba-Lulua</td>
		<td>luba-lulua</td>
		<td>Lulua-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">lub</td>
		<td>lu</td>
		<td>Luba-Katanga</td>
		<td>luba-katanga</td>
		<td>Luba-Katanga-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">lug</td>
		<td>lg</td>
		<td>Ganda</td>
		<td>ganda</td>
		<td>Ganda-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">lui</td>
		<td>&nbsp;</td>
		<td>Luiseno</td>
		<td>luiseno</td>
		<td>LuiseÃ±o-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">lun</td>
		<td>&nbsp;</td>
		<td>Lunda</td>
		<td>lunda</td>
		<td>Lunda-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">luo</td>
		<td>&nbsp;</td>
		<td>Luo (Kenya and Tanzania)</td>
		<td>luo (Kenya et Tanzanie)</td>
		<td>Luo-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">lus</td>
		<td>&nbsp;</td>
		<td>Lushai</td>
		<td>lushai</td>
		<td>Lushai-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">mac (B)<br>mkd (T)</td>
		<td>mk</td>
		<td>Macedonian</td>
		<td>macÃ©donien</td>
		<td>Makedonisch</td>
		</tr><tr valign="top">
		<td scope="row">mad</td>
		<td>&nbsp;</td>
		<td>Madurese</td>
		<td>madourais</td>
		<td>Maduresisch</td>
		</tr><tr valign="top">
		<td scope="row">mag</td>
		<td>&nbsp;</td>
		<td>Magahi</td>
		<td>magahi</td>
		<td>Khotta</td>
		</tr><tr valign="top">
		<td scope="row">mah</td>
		<td>mh</td>
		<td>Marshallese</td>
		<td>marshall</td>
		<td>Marschallesisch</td>
		</tr><tr valign="top">
		<td scope="row">mai</td>
		<td>&nbsp;</td>
		<td>Maithili</td>
		<td>maithili</td>
		<td>Maithili</td>
		</tr><tr valign="top">
		<td scope="row">mak</td>
		<td>&nbsp;</td>
		<td>Makasar</td>
		<td>makassar</td>
		<td>Makassarisch</td>
		</tr><tr valign="top">
		<td scope="row">mal</td>
		<td>ml</td>
		<td>Malayalam</td>
		<td>malayalam</td>
		<td>Malayalam</td>
		</tr><tr valign="top">
		<td scope="row">man</td>
		<td>&nbsp;</td>
		<td>Mandingo</td>
		<td>mandingue</td>
		<td>Malinke-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">mao (B)<br>mri (T)</td>
		<td>mi</td>
		<td>Maori</td>
		<td>maori</td>
		<td>Maori-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">map</td>
		<td>&nbsp;</td>
		<td>Austronesian languages</td>
		<td>austronÃ©siennes, langues</td>
		<td>Austronesische Sprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">mar</td>
		<td>mr</td>
		<td>Marathi</td>
		<td>marathe</td>
		<td>Marathi</td>
		</tr><tr valign="top">
		<td scope="row">mas</td>
		<td>&nbsp;</td>
		<td>Masai</td>
		<td>massaÃ¯</td>
		<td>Massai-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">may (B)<br>msa (T)</td>
		<td>ms</td>
		<td>Malay</td>
		<td>malais</td>
		<td>Malaiisch</td>
		</tr><tr valign="top">
		<td scope="row">mdf</td>
		<td>&nbsp;</td>
		<td>Moksha</td>
		<td>moksa</td>
		<td>Mokscha-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">mdr</td>
		<td>&nbsp;</td>
		<td>Mandar</td>
		<td>mandar</td>
		<td>Mandaresisch</td>
		</tr><tr valign="top">
		<td scope="row">men</td>
		<td>&nbsp;</td>
		<td>Mende</td>
		<td>mendÃ©</td>
		<td>Mende-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">mga</td>
		<td>&nbsp;</td>
		<td>Irish, Middle (900-1200)</td>
		<td>irlandais moyen (900-1200)</td>
		<td>Mittelirisch</td>
		</tr><tr valign="top">
		<td scope="row">mic</td>
		<td>&nbsp;</td>
		<td>Mi' . "'" . 'kmaq; Micmac</td>
		<td>mi' . "'" . 'kmaq; micmac</td>
		<td>Micmac-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">min</td>
		<td>&nbsp;</td>
		<td>Minangkabau</td>
		<td>minangkabau</td>
		<td>Minangkabau-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">mis</td>
		<td>&nbsp;</td>
		<td>Uncoded languages</td>
		<td>langues non codÃ©es</td>
		<td>Einzelne andere Sprachen</td>
		</tr><tr valign="top">
		<td scope="row">mac (B)<br>mkd (T)</td>
		<td>mk</td>
		<td>Macedonian</td>
		<td>macÃ©donien</td>
		<td>Makedonisch</td>
		</tr><tr valign="top">
		<td scope="row">mkh</td>
		<td>&nbsp;</td>
		<td>Mon-Khmer languages</td>
		<td>mÃ´n-khmer, langues</td>
		<td>Mon-Khmer-Sprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">mlg</td>
		<td>mg</td>
		<td>Malagasy</td>
		<td>malgache</td>
		<td>Malagassi-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">mlt</td>
		<td>mt</td>
		<td>Maltese</td>
		<td>maltais</td>
		<td>Maltesisch</td>
		</tr><tr valign="top">
		<td scope="row">mnc</td>
		<td>&nbsp;</td>
		<td>Manchu</td>
		<td>mandchou</td>
		<td>Mandschurisch</td>
		</tr><tr valign="top">
		<td scope="row">mni</td>
		<td>&nbsp;</td>
		<td>Manipuri</td>
		<td>manipuri</td>
		<td>Meithei-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">mno</td>
		<td>&nbsp;</td>
		<td>Manobo languages</td>
		<td>manobo, langues</td>
		<td>Manobo-Sprachen</td>
		</tr><tr valign="top">
		<td scope="row">moh</td>
		<td>&nbsp;</td>
		<td>Mohawk</td>
		<td>mohawk</td>
		<td>Mohawk-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">mon</td>
		<td>mn</td>
		<td>Mongolian</td>
		<td>mongol</td>
		<td>Mongolisch</td>
		</tr><tr valign="top">
		<td scope="row">mos</td>
		<td>&nbsp;</td>
		<td>Mossi</td>
		<td>morÃ©</td>
		<td>Mossi-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">mao (B)<br>mri (T)</td>
		<td>mi</td>
		<td>Maori</td>
		<td>maori</td>
		<td>Maori-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">may (B)<br>msa (T)</td>
		<td>ms</td>
		<td>Malay</td>
		<td>malais</td>
		<td>Malaiisch</td>
		</tr><tr valign="top">
		<td scope="row">mul</td>
		<td>&nbsp;</td>
		<td>Multiple languages</td>
		<td>multilingue</td>
		<td>Mehrere Sprachen</td>
		</tr><tr valign="top">
		<td scope="row">mun</td>
		<td>&nbsp;</td>
		<td>Munda languages</td>
		<td>mounda, langues</td>
		<td>Mundasprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">mus</td>
		<td>&nbsp;</td>
		<td>Creek</td>
		<td>muskogee</td>
		<td>Muskogisch</td>
		</tr><tr valign="top">
		<td scope="row">mwl</td>
		<td>&nbsp;</td>
		<td>Mirandese</td>
		<td>mirandais</td>
		<td>Mirandesisch</td>
		</tr><tr valign="top">
		<td scope="row">mwr</td>
		<td>&nbsp;</td>
		<td>Marwari</td>
		<td>marvari</td>
		<td>Marwari</td>
		</tr><tr valign="top">
		<td scope="row">bur (B)<br>mya (T)</td>
		<td>my</td>
		<td>Burmese</td>
		<td>birman</td>
		<td>Birmanisch</td>
		</tr><tr valign="top">
		<td scope="row">myn</td>
		<td>&nbsp;</td>
		<td>Mayan languages</td>
		<td>maya, langues</td>
		<td>Maya-Sprachen</td>
		</tr><tr valign="top">
		<td scope="row">myv</td>
		<td>&nbsp;</td>
		<td>Erzya</td>
		<td>erza</td>
		<td>Erza-Mordwinisch</td>
		</tr><tr valign="top">
		<td scope="row">nah</td>
		<td>&nbsp;</td>
		<td>Nahuatl languages</td>
		<td>nahuatl, langues</td>
		<td>Nahuatl</td>
		</tr><tr valign="top">
		<td scope="row">nai</td>
		<td>&nbsp;</td>
		<td>North American Indian languages</td>
		<td>nord-amÃ©rindiennes, langues</td>
		<td>Indianersprachen, Nordamerika (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">nap</td>
		<td>&nbsp;</td>
		<td>Neapolitan</td>
		<td>napolitain</td>
		<td>Neapel / Mundart</td>
		</tr><tr valign="top">
		<td scope="row">nau</td>
		<td>na</td>
		<td>Nauru</td>
		<td>nauruan</td>
		<td>Nauruanisch</td>
		</tr><tr valign="top">
		<td scope="row">nav</td>
		<td>nv</td>
		<td>Navajo; Navaho</td>
		<td>navaho</td>
		<td>Navajo-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">nbl</td>
		<td>nr</td>
		<td>Ndebele, South; South Ndebele</td>
		<td>ndÃ©bÃ©lÃ© du Sud</td>
		<td>Ndebele-Sprache (Transvaal)</td>
		</tr><tr valign="top">
		<td scope="row">nde</td>
		<td>nd</td>
		<td>Ndebele, North; North Ndebele</td>
		<td>ndÃ©bÃ©lÃ© du Nord</td>
		<td>Ndebele-Sprache (Simbabwe)</td>
		</tr><tr valign="top">
		<td scope="row">ndo</td>
		<td>ng</td>
		<td>Ndonga</td>
		<td>ndonga</td>
		<td>Ndonga</td>
		</tr><tr valign="top">
		<td scope="row">nds</td>
		<td>&nbsp;</td>
		<td>Low German; Low Saxon; German, Low; Saxon, Low</td>
		<td>bas allemand; bas saxon; allemand, bas; saxon, bas</td>
		<td>Niederdeutsch</td>
		</tr><tr valign="top">
		<td scope="row">nep</td>
		<td>ne</td>
		<td>Nepali</td>
		<td>nÃ©palais</td>
		<td>Nepali</td>
		</tr><tr valign="top">
		<td scope="row">new</td>
		<td>&nbsp;</td>
		<td>Nepal Bhasa; Newari</td>
		<td>nepal bhasa; newari</td>
		<td>Newari</td>
		</tr><tr valign="top">
		<td scope="row">nia</td>
		<td>&nbsp;</td>
		<td>Nias</td>
		<td>nias</td>
		<td>Nias-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">nic</td>
		<td>&nbsp;</td>
		<td>Niger-Kordofanian languages</td>
		<td>nigÃ©ro-kordofaniennes, langues</td>
		<td>Nigerkordofanische Sprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">niu</td>
		<td>&nbsp;</td>
		<td>Niuean</td>
		<td>niuÃ©</td>
		<td>Niue-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">dut (B)<br>nld (T)</td>
		<td>nl</td>
		<td>Dutch; Flemish</td>
		<td>nÃ©erlandais; flamand</td>
		<td>NiederlÃ¤ndisch</td>
		</tr><tr valign="top">
		<td scope="row">nno</td>
		<td>nn</td>
		<td>Norwegian Nynorsk; Nynorsk, Norwegian</td>
		<td>norvÃ©gien nynorsk; nynorsk, norvÃ©gien</td>
		<td>Nynorsk</td>
		</tr><tr valign="top">
		<td scope="row">nob</td>
		<td>nb</td>
		<td>BokmÃ¥l, Norwegian; Norwegian BokmÃ¥l</td>
		<td>norvÃ©gien bokmÃ¥l</td>
		<td>BokmÃ¥l</td>
		</tr><tr valign="top">
		<td scope="row">nog</td>
		<td>&nbsp;</td>
		<td>Nogai</td>
		<td>nogaÃ¯; nogay</td>
		<td>Nogaisch</td>
		</tr><tr valign="top">
		<td scope="row">non</td>
		<td>&nbsp;</td>
		<td>Norse, Old</td>
		<td>norrois, vieux</td>
		<td>Altnorwegisch</td>
		</tr><tr valign="top">
		<td scope="row">nor</td>
		<td>no</td>
		<td>Norwegian</td>
		<td>norvÃ©gien</td>
		<td>Norwegisch</td>
		</tr><tr valign="top">
		<td scope="row">nqo</td>
		<td>&nbsp;</td>
		<td>N' . "'" . 'Ko</td>
		<td>n' . "'" . 'ko</td>
		<td>N' . "'" . 'Ko</td>
		</tr><tr valign="top">
		<td scope="row">nso</td>
		<td>&nbsp;</td>
		<td>Pedi; Sepedi; Northern Sotho</td>
		<td>pedi; sepedi; sotho du Nord</td>
		<td>Pedi-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">nub</td>
		<td>&nbsp;</td>
		<td>Nubian languages</td>
		<td>nubiennes, langues</td>
		<td>Nubische Sprachen</td>
		</tr><tr valign="top">
		<td scope="row">nwc</td>
		<td>&nbsp;</td>
		<td>Classical Newari; Old Newari; Classical Nepal Bhasa</td>
		<td>newari classique</td>
		<td>Alt-Newari</td>
		</tr><tr valign="top">
		<td scope="row">nya</td>
		<td>ny</td>
		<td>Chichewa; Chewa; Nyanja</td>
		<td>chichewa; chewa; nyanja</td>
		<td>Nyanja-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">nym</td>
		<td>&nbsp;</td>
		<td>Nyamwezi</td>
		<td>nyamwezi</td>
		<td>Nyamwezi-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">nyn</td>
		<td>&nbsp;</td>
		<td>Nyankole</td>
		<td>nyankolÃ©</td>
		<td>Nkole-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">nyo</td>
		<td>&nbsp;</td>
		<td>Nyoro</td>
		<td>nyoro</td>
		<td>Nyoro-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">nzi</td>
		<td>&nbsp;</td>
		<td>Nzima</td>
		<td>nzema</td>
		<td>Nzima-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">oci</td>
		<td>oc</td>
		<td>Occitan (post 1500)</td>
		<td>occitan (aprÃ¨s 1500)</td>
		<td>Okzitanisch</td>
		</tr><tr valign="top">
		<td scope="row">oji</td>
		<td>oj</td>
		<td>Ojibwa</td>
		<td>ojibwa</td>
		<td>Ojibwa-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">ori</td>
		<td>or</td>
		<td>Oriya</td>
		<td>oriya</td>
		<td>Oriya-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">orm</td>
		<td>om</td>
		<td>Oromo</td>
		<td>galla</td>
		<td>Galla-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">osa</td>
		<td>&nbsp;</td>
		<td>Osage</td>
		<td>osage</td>
		<td>Osage-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">oss</td>
		<td>os</td>
		<td>Ossetian; Ossetic</td>
		<td>ossÃ¨te</td>
		<td>Ossetisch</td>
		</tr><tr valign="top">
		<td scope="row">ota</td>
		<td>&nbsp;</td>
		<td>Turkish, Ottoman (1500-1928)</td>
		<td>turc ottoman (1500-1928)</td>
		<td>Osmanisch</td>
		</tr><tr valign="top">
		<td scope="row">oto</td>
		<td>&nbsp;</td>
		<td>Otomian languages</td>
		<td>otomi, langues</td>
		<td>Otomangue-Sprachen</td>
		</tr><tr valign="top">
		<td scope="row">paa</td>
		<td>&nbsp;</td>
		<td>Papuan languages</td>
		<td>papoues, langues</td>
		<td>Papuasprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">pag</td>
		<td>&nbsp;</td>
		<td>Pangasinan</td>
		<td>pangasinan</td>
		<td>Pangasinan-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">pal</td>
		<td>&nbsp;</td>
		<td>Pahlavi</td>
		<td>pahlavi</td>
		<td>Mittelpersisch</td>
		</tr><tr valign="top">
		<td scope="row">pam</td>
		<td>&nbsp;</td>
		<td>Pampanga; Kapampangan</td>
		<td>pampangan</td>
		<td>Pampanggan-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">pan</td>
		<td>pa</td>
		<td>Panjabi; Punjabi</td>
		<td>pendjabi</td>
		<td>Pandschabi-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">pap</td>
		<td>&nbsp;</td>
		<td>Papiamento</td>
		<td>papiamento</td>
		<td>Papiamento</td>
		</tr><tr valign="top">
		<td scope="row">pau</td>
		<td>&nbsp;</td>
		<td>Palauan</td>
		<td>palau</td>
		<td>Palau-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">peo</td>
		<td>&nbsp;</td>
		<td>Persian, Old (ca.600-400 B.C.)</td>
		<td>perse, vieux (ca. 600-400 av. J.-C.)</td>
		<td>Altpersisch</td>
		</tr><tr valign="top">
		<td scope="row">per (B)<br>fas (T)</td>
		<td>fa</td>
		<td>Persian</td>
		<td>persan</td>
		<td>Persisch</td>
		</tr><tr valign="top">
		<td scope="row">phi</td>
		<td>&nbsp;</td>
		<td>Philippine languages</td>
		<td>philippines, langues</td>
		<td>Philippinisch-Austronesisch (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">phn</td>
		<td>&nbsp;</td>
		<td>Phoenician</td>
		<td>phÃ©nicien</td>
		<td>PhÃ¶nikisch</td>
		</tr><tr valign="top">
		<td scope="row">pli</td>
		<td>pi</td>
		<td>Pali</td>
		<td>pali</td>
		<td>Pali</td>
		</tr><tr valign="top">
		<td scope="row">pol</td>
		<td>pl</td>
		<td>Polish</td>
		<td>polonais</td>
		<td>Polnisch</td>
		</tr><tr valign="top">
		<td scope="row">pon</td>
		<td>&nbsp;</td>
		<td>Pohnpeian</td>
		<td>pohnpei</td>
		<td>Ponapeanisch</td>
		</tr><tr valign="top">
		<td scope="row">por</td>
		<td>pt</td>
		<td>Portuguese</td>
		<td>portugais</td>
		<td>Portugiesisch</td>
		</tr><tr valign="top">
		<td scope="row">pra</td>
		<td>&nbsp;</td>
		<td>Prakrit languages</td>
		<td>prÃ¢krit, langues</td>
		<td>Prakrit</td>
		</tr><tr valign="top">
		<td scope="row">pro</td>
		<td>&nbsp;</td>
		<td>ProvenÃ§al, Old (to 1500);Occitan, Old (to 1500)</td>
		<td>provenÃ§al ancien (jusqu' . "'" . 'Ã  1500); occitan ancien (jusqu' . "'" . 'Ã  1500)</td>
		<td>Altokzitanisch</td>
		</tr><tr valign="top">
		<td scope="row">pus</td>
		<td>ps</td>
		<td>Pushto; Pashto</td>
		<td>pachto</td>
		<td>Paschtu</td>
		</tr><tr valign="top">
		<td scope="row">qaa-qtz</td>
		<td>&nbsp;</td>
		<td>Reserved for local use</td>
		<td>rÃ©servÃ©e Ã  l' . "'" . 'usage local</td>
		<td>Reserviert fÃ¼r lokale Verwendung</td>
		</tr><tr valign="top">
		<td scope="row">que</td>
		<td>qu</td>
		<td>Quechua</td>
		<td>quechua</td>
		<td>Quechua-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">raj</td>
		<td>&nbsp;</td>
		<td>Rajasthani</td>
		<td>rajasthani</td>
		<td>Rajasthani</td>
		</tr><tr valign="top">
		<td scope="row">rap</td>
		<td>&nbsp;</td>
		<td>Rapanui</td>
		<td>rapanui</td>
		<td>Osterinsel-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">rar</td>
		<td>&nbsp;</td>
		<td>Rarotongan; Cook Islands Maori</td>
		<td>rarotonga; maori des Ã®les Cook</td>
		<td>Rarotonganisch</td>
		</tr><tr valign="top">
		<td scope="row">roa</td>
		<td>&nbsp;</td>
		<td>Romance languages</td>
		<td>romanes, langues</td>
		<td>Romanische Sprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">roh</td>
		<td>rm</td>
		<td>Romansh</td>
		<td>romanche</td>
		<td>RÃ¤toromanisch</td>
		</tr><tr valign="top">
		<td scope="row">rom</td>
		<td>&nbsp;</td>
		<td>Romany</td>
		<td>tsigane</td>
		<td>Romani (Sprache)</td>
		</tr><tr valign="top">
		<td scope="row">rum (B)<br>ron (T)</td>
		<td>ro</td>
		<td>Romanian; Moldavian; Moldovan</td>
		<td>roumain; moldave</td>
		<td>RumÃ¤nisch</td>
		</tr><tr valign="top">
		<td scope="row">rum (B)<br>ron (T)</td>
		<td>ro</td>
		<td>Romanian; Moldavian; Moldovan</td>
		<td>roumain; moldave</td>
		<td>RumÃ¤nisch</td>
		</tr><tr valign="top">
		<td scope="row">run</td>
		<td>rn</td>
		<td>Rundi</td>
		<td>rundi</td>
		<td>Rundi-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">rup</td>
		<td>&nbsp;</td>
		<td>Aromanian; Arumanian; Macedo-Romanian</td>
		<td>aroumain; macÃ©do-roumain</td>
		<td>Aromunisch</td>
		</tr><tr valign="top">
		<td scope="row">rus</td>
		<td>ru</td>
		<td>Russian</td>
		<td>russe</td>
		<td>Russisch</td>
		</tr><tr valign="top">
		<td scope="row">sad</td>
		<td>&nbsp;</td>
		<td>Sandawe</td>
		<td>sandawe</td>
		<td>Sandawe-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">sag</td>
		<td>sg</td>
		<td>Sango</td>
		<td>sango</td>
		<td>Sango-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">sah</td>
		<td>&nbsp;</td>
		<td>Yakut</td>
		<td>iakoute</td>
		<td>Jakutisch</td>
		</tr><tr valign="top">
		<td scope="row">sai</td>
		<td>&nbsp;</td>
		<td>South American Indian languages</td>
		<td>sud-amÃ©rindiennes, langues</td>
		<td>Indianersprachen, SÃ¼damerika (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">sal</td>
		<td>&nbsp;</td>
		<td>Salishan languages</td>
		<td>salishennes, langues</td>
		<td>Salish-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">sam</td>
		<td>&nbsp;</td>
		<td>Samaritan Aramaic</td>
		<td>samaritain</td>
		<td>Samaritanisch</td>
		</tr><tr valign="top">
		<td scope="row">san</td>
		<td>sa</td>
		<td>Sanskrit</td>
		<td>sanskrit</td>
		<td>Sanskrit</td>
		</tr><tr valign="top">
		<td scope="row">sas</td>
		<td>&nbsp;</td>
		<td>Sasak</td>
		<td>sasak</td>
		<td>Sasak</td>
		</tr><tr valign="top">
		<td scope="row">sat</td>
		<td>&nbsp;</td>
		<td>Santali</td>
		<td>santal</td>
		<td>Santali</td>
		</tr><tr valign="top">
		<td scope="row">scn</td>
		<td>&nbsp;</td>
		<td>Sicilian</td>
		<td>sicilien</td>
		<td>Sizilianisch</td>
		</tr><tr valign="top">
		<td scope="row">sco</td>
		<td>&nbsp;</td>
		<td>Scots</td>
		<td>Ã©cossais</td>
		<td>Schottisch</td>
		</tr><tr valign="top">
		<td scope="row">sel</td>
		<td>&nbsp;</td>
		<td>Selkup</td>
		<td>selkoupe</td>
		<td>Selkupisch</td>
		</tr><tr valign="top">
		<td scope="row">sem</td>
		<td>&nbsp;</td>
		<td>Semitic languages</td>
		<td>sÃ©mitiques, langues</td>
		<td>Semitische Sprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">sga</td>
		<td>&nbsp;</td>
		<td>Irish, Old (to 900)</td>
		<td>irlandais ancien (jusqu' . "'" . 'Ã  900)</td>
		<td>Altirisch</td>
		</tr><tr valign="top">
		<td scope="row">sgn</td>
		<td>&nbsp;</td>
		<td>Sign Languages</td>
		<td>langues des signes</td>
		<td>Zeichensprachen</td>
		</tr><tr valign="top">
		<td scope="row">shn</td>
		<td>&nbsp;</td>
		<td>Shan</td>
		<td>chan</td>
		<td>Schan-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">sid</td>
		<td>&nbsp;</td>
		<td>Sidamo</td>
		<td>sidamo</td>
		<td>Sidamo-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">sin</td>
		<td>si</td>
		<td>Sinhala; Sinhalese</td>
		<td>singhalais</td>
		<td>Singhalesisch</td>
		</tr><tr valign="top">
		<td scope="row">sio</td>
		<td>&nbsp;</td>
		<td>Siouan languages</td>
		<td>sioux, langues</td>
		<td>Sioux-Sprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">sit</td>
		<td>&nbsp;</td>
		<td>Sino-Tibetan languages</td>
		<td>sino-tibÃ©taines, langues</td>
		<td>Sinotibetische Sprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">sla</td>
		<td>&nbsp;</td>
		<td>Slavic languages</td>
		<td>slaves, langues</td>
		<td>Slawische Sprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">slo (B)<br>slk (T)</td>
		<td>sk</td>
		<td>Slovak</td>
		<td>slovaque</td>
		<td>Slowakisch</td>
		</tr><tr valign="top">
		<td scope="row">slo (B)<br>slk (T)</td>
		<td>sk</td>
		<td>Slovak</td>
		<td>slovaque</td>
		<td>Slowakisch</td>
		</tr><tr valign="top">
		<td scope="row">slv</td>
		<td>sl</td>
		<td>Slovenian</td>
		<td>slovÃ¨ne</td>
		<td>Slowenisch</td>
		</tr><tr valign="top">
		<td scope="row">sma</td>
		<td>&nbsp;</td>
		<td>Southern Sami</td>
		<td>sami du Sud</td>
		<td>SÃ¼dsaamisch</td>
		</tr><tr valign="top">
		<td scope="row">sme</td>
		<td>se</td>
		<td>Northern Sami</td>
		<td>sami du Nord</td>
		<td>Nordsaamisch</td>
		</tr><tr valign="top">
		<td scope="row">smi</td>
		<td>&nbsp;</td>
		<td>Sami languages</td>
		<td>sames, langues</td>
		<td>Saamisch</td>
		</tr><tr valign="top">
		<td scope="row">smj</td>
		<td>&nbsp;</td>
		<td>Lule Sami</td>
		<td>sami de Lule</td>
		<td>Lulesaamisch</td>
		</tr><tr valign="top">
		<td scope="row">smn</td>
		<td>&nbsp;</td>
		<td>Inari Sami</td>
		<td>sami d' . "'" . 'Inari</td>
		<td>Inarisaamisch</td>
		</tr><tr valign="top">
		<td scope="row">smo</td>
		<td>sm</td>
		<td>Samoan</td>
		<td>samoan</td>
		<td>Samoanisch</td>
		</tr><tr valign="top">
		<td scope="row">sms</td>
		<td>&nbsp;</td>
		<td>Skolt Sami</td>
		<td>sami skolt</td>
		<td>Skoltsaamisch</td>
		</tr><tr valign="top">
		<td scope="row">sna</td>
		<td>sn</td>
		<td>Shona</td>
		<td>shona</td>
		<td>Schona-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">snd</td>
		<td>sd</td>
		<td>Sindhi</td>
		<td>sindhi</td>
		<td>Sindhi-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">snk</td>
		<td>&nbsp;</td>
		<td>Soninke</td>
		<td>soninkÃ©</td>
		<td>Soninke-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">sog</td>
		<td>&nbsp;</td>
		<td>Sogdian</td>
		<td>sogdien</td>
		<td>Sogdisch</td>
		</tr><tr valign="top">
		<td scope="row">som</td>
		<td>so</td>
		<td>Somali</td>
		<td>somali</td>
		<td>Somali</td>
		</tr><tr valign="top">
		<td scope="row">son</td>
		<td>&nbsp;</td>
		<td>Songhai languages</td>
		<td>songhai, langues</td>
		<td>Songhai-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">sot</td>
		<td>st</td>
		<td>Sotho, Southern</td>
		<td>sotho du Sud</td>
		<td>SÃ¼d-Sotho-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">spa</td>
		<td>es</td>
		<td>Spanish; Castilian</td>
		<td>espagnol; castillan</td>
		<td>Spanisch</td>
		</tr><tr valign="top">
		<td scope="row">alb (B)<br>sqi (T)</td>
		<td>sq</td>
		<td>Albanian</td>
		<td>albanais</td>
		<td>Albanisch</td>
		</tr><tr valign="top">
		<td scope="row">srd</td>
		<td>sc</td>
		<td>Sardinian</td>
		<td>sarde</td>
		<td>Sardisch</td>
		</tr><tr valign="top">
		<td scope="row">srn</td>
		<td>&nbsp;</td>
		<td>Sranan Tongo</td>
		<td>sranan tongo</td>
		<td>Sranantongo</td>
		</tr><tr valign="top">
		<td scope="row">srp</td>
		<td>sr</td>
		<td>Serbian</td>
		<td>serbe</td>
		<td>Serbisch </td>
		</tr><tr valign="top">
		<td scope="row">srr</td>
		<td>&nbsp;</td>
		<td>Serer</td>
		<td>sÃ©rÃ¨re</td>
		<td>Serer-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">ssa</td>
		<td>&nbsp;</td>
		<td>Nilo-Saharan languages</td>
		<td>nilo-sahariennes, langues</td>
		<td>Nilosaharanische Sprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">ssw</td>
		<td>ss</td>
		<td>Swati</td>
		<td>swati</td>
		<td>Swasi-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">suk</td>
		<td>&nbsp;</td>
		<td>Sukuma</td>
		<td>sukuma</td>
		<td>Sukuma-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">sun</td>
		<td>su</td>
		<td>Sundanese</td>
		<td>soundanais</td>
		<td>Sundanesisch</td>
		</tr><tr valign="top">
		<td scope="row">sus</td>
		<td>&nbsp;</td>
		<td>Susu</td>
		<td>soussou</td>
		<td>Susu</td>
		</tr><tr valign="top">
		<td scope="row">sux</td>
		<td>&nbsp;</td>
		<td>Sumerian</td>
		<td>sumÃ©rien</td>
		<td>Sumerisch</td>
		</tr><tr valign="top">
		<td scope="row">swa</td>
		<td>sw</td>
		<td>Swahili</td>
		<td>swahili</td>
		<td>Swahili</td>
		</tr><tr valign="top">
		<td scope="row">swe</td>
		<td>sv</td>
		<td>Swedish</td>
		<td>suÃ©dois</td>
		<td>Schwedisch</td>
		</tr><tr valign="top">
		<td scope="row">syc</td>
		<td>&nbsp;</td>
		<td>Classical Syriac</td>
		<td>syriaque classique</td>
		<td>Syrisch</td>
		</tr><tr valign="top">
		<td scope="row">syr</td>
		<td>&nbsp;</td>
		<td>Syriac</td>
		<td>syriaque</td>
		<td>NeuostaramÃ¤isch</td>
		</tr><tr valign="top">
		<td scope="row">tah</td>
		<td>ty</td>
		<td>Tahitian</td>
		<td>tahitien</td>
		<td>Tahitisch</td>
		</tr><tr valign="top">
		<td scope="row">tai</td>
		<td>&nbsp;</td>
		<td>Tai languages</td>
		<td>tai, langues</td>
		<td>Thaisprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">tam</td>
		<td>ta</td>
		<td>Tamil</td>
		<td>tamoul</td>
		<td>Tamil</td>
		</tr><tr valign="top">
		<td scope="row">tat</td>
		<td>tt</td>
		<td>Tatar</td>
		<td>tatar</td>
		<td>Tatarisch</td>
		</tr><tr valign="top">
		<td scope="row">tel</td>
		<td>te</td>
		<td>Telugu</td>
		<td>tÃ©lougou</td>
		<td>Telugu-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">tem</td>
		<td>&nbsp;</td>
		<td>Timne</td>
		<td>temne</td>
		<td>Temne-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">ter</td>
		<td>&nbsp;</td>
		<td>Tereno</td>
		<td>tereno</td>
		<td>Tereno-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">tet</td>
		<td>&nbsp;</td>
		<td>Tetum</td>
		<td>tetum</td>
		<td>Tetum-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">tgk</td>
		<td>tg</td>
		<td>Tajik</td>
		<td>tadjik</td>
		<td>Tadschikisch</td>
		</tr><tr valign="top">
		<td scope="row">tgl</td>
		<td>tl</td>
		<td>Tagalog</td>
		<td>tagalog</td>
		<td>Tagalog</td>
		</tr><tr valign="top">
		<td scope="row">tha</td>
		<td>th</td>
		<td>Thai</td>
		<td>thaÃ¯</td>
		<td>ThailÃ¤ndisch</td>
		</tr><tr valign="top">
		<td scope="row">tib (B)<br>bod (T)</td>
		<td>bo</td>
		<td>Tibetan</td>
		<td>tibÃ©tain</td>
		<td>Tibetisch</td>
		</tr><tr valign="top">
		<td scope="row">tig</td>
		<td>&nbsp;</td>
		<td>Tigre</td>
		<td>tigrÃ©</td>
		<td>Tigre-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">tir</td>
		<td>ti</td>
		<td>Tigrinya</td>
		<td>tigrigna</td>
		<td>Tigrinja-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">tiv</td>
		<td>&nbsp;</td>
		<td>Tiv</td>
		<td>tiv</td>
		<td>Tiv-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">tkl</td>
		<td>&nbsp;</td>
		<td>Tokelau</td>
		<td>tokelau</td>
		<td>Tokelauanisch</td>
		</tr><tr valign="top">
		<td scope="row">tlh</td>
		<td>&nbsp;</td>
		<td>Klingon; tlhIngan-Hol</td>
		<td>klingon</td>
		<td>Klingonisch</td>
		</tr><tr valign="top">
		<td scope="row">tli</td>
		<td>&nbsp;</td>
		<td>Tlingit</td>
		<td>tlingit</td>
		<td>Tlingit-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">tmh</td>
		<td>&nbsp;</td>
		<td>Tamashek</td>
		<td>tamacheq</td>
		<td>TamaÅ¡eq</td>
		</tr><tr valign="top">
		<td scope="row">tog</td>
		<td>&nbsp;</td>
		<td>Tonga (Nyasa)</td>
		<td>tonga (Nyasa)</td>
		<td>Tonga (Bantusprache, Sambia)</td>
		</tr><tr valign="top">
		<td scope="row">ton</td>
		<td>to</td>
		<td>Tonga (Tonga Islands)</td>
		<td>tongan (ÃŽles Tonga)</td>
		<td>Tongaisch</td>
		</tr><tr valign="top">
		<td scope="row">tpi</td>
		<td>&nbsp;</td>
		<td>Tok Pisin</td>
		<td>tok pisin</td>
		<td>Neumelanesisch</td>
		</tr><tr valign="top">
		<td scope="row">tsi</td>
		<td>&nbsp;</td>
		<td>Tsimshian</td>
		<td>tsimshian</td>
		<td>Tsimshian-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">tsn</td>
		<td>tn</td>
		<td>Tswana</td>
		<td>tswana</td>
		<td>Tswana-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">tso</td>
		<td>ts</td>
		<td>Tsonga</td>
		<td>tsonga</td>
		<td>Tsonga-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">tuk</td>
		<td>tk</td>
		<td>Turkmen</td>
		<td>turkmÃ¨ne</td>
		<td>Turkmenisch</td>
		</tr><tr valign="top">
		<td scope="row">tum</td>
		<td>&nbsp;</td>
		<td>Tumbuka</td>
		<td>tumbuka</td>
		<td>Tumbuka-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">tup</td>
		<td>&nbsp;</td>
		<td>Tupi languages</td>
		<td>tupi, langues</td>
		<td>Tupi-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">tur</td>
		<td>tr</td>
		<td>Turkish</td>
		<td>turc</td>
		<td>TÃ¼rkisch</td>
		</tr><tr valign="top">
		<td scope="row">tut</td>
		<td>&nbsp;</td>
		<td>Altaic languages</td>
		<td>altaÃ¯ques, langues</td>
		<td>Altaische Sprachen (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">tvl</td>
		<td>&nbsp;</td>
		<td>Tuvalu</td>
		<td>tuvalu</td>
		<td>Elliceanisch</td>
		</tr><tr valign="top">
		<td scope="row">twi</td>
		<td>tw</td>
		<td>Twi</td>
		<td>twi</td>
		<td>Twi-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">tyv</td>
		<td>&nbsp;</td>
		<td>Tuvinian</td>
		<td>touva</td>
		<td>Tuwinisch</td>
		</tr><tr valign="top">
		<td scope="row">udm</td>
		<td>&nbsp;</td>
		<td>Udmurt</td>
		<td>oudmourte</td>
		<td>Udmurtisch</td>
		</tr><tr valign="top">
		<td scope="row">uga</td>
		<td>&nbsp;</td>
		<td>Ugaritic</td>
		<td>ougaritique</td>
		<td>Ugaritisch</td>
		</tr><tr valign="top">
		<td scope="row">uig</td>
		<td>ug</td>
		<td>Uighur; Uyghur</td>
		<td>ouÃ¯gour</td>
		<td>Uigurisch</td>
		</tr><tr valign="top">
		<td scope="row">ukr</td>
		<td>uk</td>
		<td>Ukrainian</td>
		<td>ukrainien</td>
		<td>Ukrainisch</td>
		</tr><tr valign="top">
		<td scope="row">umb</td>
		<td>&nbsp;</td>
		<td>Umbundu</td>
		<td>umbundu</td>
		<td>Mbundu-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">und</td>
		<td>&nbsp;</td>
		<td>Undetermined</td>
		<td>indÃ©terminÃ©e</td>
		<td>Nicht zu entscheiden</td>
		</tr><tr valign="top">
		<td scope="row">urd</td>
		<td>ur</td>
		<td>Urdu</td>
		<td>ourdou</td>
		<td>Urdu</td>
		</tr><tr valign="top">
		<td scope="row">uzb</td>
		<td>uz</td>
		<td>Uzbek</td>
		<td>ouszbek</td>
		<td>Usbekisch</td>
		</tr><tr valign="top">
		<td scope="row">vai</td>
		<td>&nbsp;</td>
		<td>Vai</td>
		<td>vaÃ¯</td>
		<td>Vai-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">ven</td>
		<td>ve</td>
		<td>Venda</td>
		<td>venda</td>
		<td>Venda-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">vie</td>
		<td>vi</td>
		<td>Vietnamese</td>
		<td>vietnamien</td>
		<td>Vietnamesisch</td>
		</tr><tr valign="top">
		<td scope="row">vol</td>
		<td>vo</td>
		<td>VolapÃ¼k</td>
		<td>volapÃ¼k</td>
		<td>VolapÃ¼k</td>
		</tr><tr valign="top">
		<td scope="row">vot</td>
		<td>&nbsp;</td>
		<td>Votic</td>
		<td>vote</td>
		<td>Wotisch</td>
		</tr><tr valign="top">
		<td scope="row">wak</td>
		<td>&nbsp;</td>
		<td>Wakashan languages</td>
		<td>wakashanes, langues</td>
		<td>Wakash-Sprachen</td>
		</tr><tr valign="top">
		<td scope="row">wal</td>
		<td>&nbsp;</td>
		<td>Wolaitta; Wolaytta</td>
		<td>wolaitta; wolaytta</td>
		<td>Walamo-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">war</td>
		<td>&nbsp;</td>
		<td>Waray</td>
		<td>waray</td>
		<td>Waray</td>
		</tr><tr valign="top">
		<td scope="row">was</td>
		<td>&nbsp;</td>
		<td>Washo</td>
		<td>washo</td>
		<td>Washo-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">wel (B)<br>cym (T)</td>
		<td>cy</td>
		<td>Welsh</td>
		<td>gallois</td>
		<td>Kymrisch</td>
		</tr><tr valign="top">
		<td scope="row">wen</td>
		<td>&nbsp;</td>
		<td>Sorbian languages</td>
		<td>sorabes, langues</td>
		<td>Sorbisch (Andere)</td>
		</tr><tr valign="top">
		<td scope="row">wln</td>
		<td>wa</td>
		<td>Walloon</td>
		<td>wallon</td>
		<td>Wallonisch</td>
		</tr><tr valign="top">
		<td scope="row">wol</td>
		<td>wo</td>
		<td>Wolof</td>
		<td>wolof</td>
		<td>Wolof-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">xal</td>
		<td>&nbsp;</td>
		<td>Kalmyk; Oirat</td>
		<td>kalmouk; oÃ¯rat</td>
		<td>KalmÃ¼ckisch</td>
		</tr><tr valign="top">
		<td scope="row">xho</td>
		<td>xh</td>
		<td>Xhosa</td>
		<td>xhosa</td>
		<td>Xhosa-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">yao</td>
		<td>&nbsp;</td>
		<td>Yao</td>
		<td>yao</td>
		<td>Yao-Sprache (Bantusprache)</td>
		</tr><tr valign="top">
		<td scope="row">yap</td>
		<td>&nbsp;</td>
		<td>Yapese</td>
		<td>yapois</td>
		<td>Yapesisch</td>
		</tr><tr valign="top">
		<td scope="row">yid</td>
		<td>yi</td>
		<td>Yiddish</td>
		<td>yiddish</td>
		<td>Jiddisch</td>
		</tr><tr valign="top">
		<td scope="row">yor</td>
		<td>yo</td>
		<td>Yoruba</td>
		<td>yoruba</td>
		<td>Yoruba-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">ypk</td>
		<td>&nbsp;</td>
		<td>Yupik languages</td>
		<td>yupik, langues</td>
		<td>Ypik-Sprachen</td>
		</tr><tr valign="top">
		<td scope="row">zap</td>
		<td>&nbsp;</td>
		<td>Zapotec</td>
		<td>zapotÃ¨que</td>
		<td>Zapotekisch</td>
		</tr><tr valign="top">
		<td scope="row">zbl</td>
		<td>&nbsp;</td>
		<td>Blissymbols; Blissymbolics; Bliss</td>
		<td>symboles Bliss; Bliss</td>
		<td>Bliss-Symbol</td>
		</tr><tr valign="top">
		<td scope="row">zen</td>
		<td>&nbsp;</td>
		<td>Zenaga</td>
		<td>zenaga</td>
		<td>Zenaga</td>
		</tr><tr valign="top">
		<td scope="row">zgh</td>
		<td>&nbsp;</td>
		<td>Standard Moroccan Tamazight</td>
		<td>amazighe standard marocain</td>
		<td></td>
		</tr><tr valign="top">
		<td scope="row">zha</td>
		<td>za</td>
		<td>Zhuang; Chuang</td>
		<td>zhuang; chuang</td>
		<td>Zhuang</td>
		</tr><tr valign="top">
		<td scope="row">chi (B)<br>zho (T)</td>
		<td>zh</td>
		<td>Chinese</td>
		<td>chinois</td>
		<td>Chinesisch</td>
		</tr><tr valign="top">
		<td scope="row">znd</td>
		<td>&nbsp;</td>
		<td>Zande languages</td>
		<td>zandÃ©, langues</td>
		<td>Zande-Sprachen</td>
		</tr><tr valign="top">
		<td scope="row">zul</td>
		<td>zu</td>
		<td>Zulu</td>
		<td>zoulou</td>
		<td>Zulu-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">zun</td>
		<td>&nbsp;</td>
		<td>Zuni</td>
		<td>zuni</td>
		<td>ZuÃ±i-Sprache</td>
		</tr><tr valign="top">
		<td scope="row">zxx</td>
		<td>&nbsp;</td>
		<td>No linguistic content; Not applicable</td>
		<td>pas de contenu linguistique; non applicable</td>
		<td>Kein linguistischer Inhalt</td>
		</tr><tr valign="top">
		<td scope="row">zza</td>
		<td>&nbsp;</td>
		<td>Zaza; Dimili; Dimli; Kirdki; Kirmanjki; Zazaki</td>
		<td>zaza; dimili; dimli; kirdki; kirmanjki; zazaki</td>
		<td>Zazaki</td>
		</tr></tbody></table>
<input type=hidden id=placegeo title="" value=""></input>
<iframe onload="if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i)) { ifcheck(this); } else { nonmifcheck(this); }" name=ifcountries id=ifcountries style="border-top:5px solid transparent;border-left:5px solid transparent;display:none;width:900px;height:900px;z-index:987;margin:0 0 0 0;padding:0 0 0 0;" src=""></iframe>
<span id="plots"></span>
</body>
</html>
 ';
} else {
 header('Content-Type: image/png');
 echo file_get_contents('http://chart.googleapis.com/chart?cht=map:fixed=-60,0,80,-35&chs=600x350&chld=CA-BC|CN|IT|GR|US-UT&chdl=Vancouver|Beijing|Torino|Athens|Salt+Lake+City&chco=B3BCC0|5781AE|FF0000|FFC726|885E80|518274&chtt=Last+Five+Olympic+Hosts&chm=f2010+Winter,000000,0,0,10f2008+Summer,000000,0,1,10f2008+Winter,000000,0,2,10,1,:-5:10f2004+Summer,000000,0,3,10f2004+Summer,000000,0,4,10&chma=0,110,0,0');
}
exit;
?>