<?php
// clairvoyance_game.php
// RJM Programming - May, 2026
// Helping out clairvoyance_game.html for two players


$zener_cards=['/circle_yellow.jpg#circle_yellow','/cross_red.jpg#cross_red','/waves_blue.jpg#waves_blue','/square_black.jpg#square_black','/star_green.jpg#star_green'];

$lochelper="// 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']]];
";

//$capbits=@file_get_contents("https://www.countries-ofthe-world.com/capitals-of-the-world.html");
$capbits="
<thead><tr><th>Country</th><th>Capital city</th></tr></thead><tbody>
<tr><td colspan='2' class='letter'>A</td></tr>
<tr class='grey'><td>Afghanistan</td><td>Kabul</td></tr>
<tr class='grey'><td>Albania</td><td>Tirana</td></tr>
<tr class='grey'><td>Algeria</td><td>Algiers</td></tr>
<tr class='grey'><td>Andorra</td><td>Andorra la Vella</td></tr>
<tr class='grey'><td>Angola</td><td>Luanda</td></tr>
<tr class='grey'><td>Antigua and Barbuda</td><td>Saint John's</td></tr>
<tr class='grey'><td>Argentina</td><td>Buenos Aires</td></tr>
<tr class='grey'><td>Armenia</td><td>Yerevan</td></tr>
<tr class='grey'><td>Australia</td><td>Canberra</td></tr>
<tr class='grey'><td>Austria</td><td>Vienna</td></tr>
<tr class='grey'><td>Azerbaijan</td><td>Baku</td></tr>
<tr><td colspan='2' class='letter'>B</td></tr>
<tr class='grey'><td>Bahamas</td><td>Nassau</td></tr>
<tr class='grey'><td>Bahrain</td><td>Manama</td></tr>
<tr class='grey'><td>Bangladesh</td><td>Dhaka</td></tr>
<tr class='grey'><td>Barbados</td><td>Bridgetown</td></tr>
<tr class='grey'><td>Belarus</td><td>Minsk</td></tr>
<tr class='grey'><td>Belgium</td><td>Brussels</td></tr>
<tr class='grey'><td>Belize</td><td>Belmopan</td></tr>
<tr class='grey'><td>Benin</td><td>Porto-Novo</td></tr>
<tr class='grey'><td>Bhutan</td><td>Thimphu</td></tr>
<tr class='grey'><td>Bolivia</td><td>La Paz (administrative), Sucre (judicial)</td></tr>
<tr class='grey'><td>Bosnia and Herzegovina</td><td>Sarajevo</td></tr>
<tr class='grey'><td>Botswana</td><td>Gaborone</td></tr>
<tr class='grey'><td>Brazil</td><td>Brasilia</td></tr>
<tr class='grey'><td>Brunei</td><td>Bandar Seri Begawan</td></tr>
<tr class='grey'><td>Bulgaria</td><td>Sofia</td></tr>
<tr class='grey'><td>Burkina Faso</td><td>Ouagadougou</td></tr>
<tr class='grey'><td>Burundi</td><td>Bujumbura</td></tr>
<tr><td colspan='2' class='letter'>C</td></tr>
<tr class='grey'><td>Cabo Verde</td><td>Praia</td></tr>
<tr class='grey'><td>Cambodia</td><td>Phnom Penh</td></tr>
<tr class='grey'><td>Cameroon</td><td>Yaounde</td></tr>
<tr class='grey'><td>Canada</td><td>Ottawa</td></tr>
<tr class='grey'><td>Central African Republic</td><td>Bangui</td></tr>
<tr class='grey'><td>Chad</td><td>N'Djamena</td></tr>
<tr class='grey'><td>Chile</td><td>Santiago</td></tr>
<tr class='grey'><td>China</td><td>Beijing</td></tr>
<tr class='grey'><td>Colombia</td><td>Bogotá</td></tr>
<tr class='grey'><td>Comoros</td><td>Moroni</td></tr>
<tr class='grey'><td><span>Democratic Republic of the</span> Congo</td><td>Kinshasa</td></tr>
<tr class='grey'><td><span>Republic of the</span> Congo</td><td>Brazzaville</tr>
<tr class='grey'><td>Costa Rica</td><td>San Jose</td></tr>
<tr class='grey'><td>Cote d'Ivoire</td><td>Yamoussoukro</td></tr>
<tr class='grey'><td>Croatia</td><td>Zagreb</td></tr>
<tr class='grey'><td>Cuba</td><td>Havana</td></tr>
<tr class='grey'><td>Cyprus</td><td>Nicosia</td></tr>
<tr class='grey'><td>Czech Republic</td><td>Prague</td></tr>
<tr><td colspan='2' class='letter'>D</td></tr>
<tr class='grey'><td>Denmark</td><td>Copenhagen</td></tr>
<tr class='grey'><td>Djibouti</td><td>Djibouti (city)</td></tr>
<tr class='grey'><td>Dominica</td><td>Roseau</td></tr>
<tr class='grey'><td>Dominican Republic</td><td>Santo Domingo</td></tr>
<tr><td colspan='2' class='letter'>E</td></tr>
<tr class='grey'><td>Ecuador</td><td>Quito</td></tr>
<tr class='grey'><td>Egypt</td><td>Cairo</td></tr>
<tr class='grey'><td>El Salvador</td><td>San Salvador</td></tr>
<tr class='grey'><td>Equatorial Guinea</td><td>Malabo</td></tr>
<tr class='grey'><td>Eritrea</td><td>Asmara</td></tr>
<tr class='grey'><td>Estonia</td><td>Tallinn</td></tr>
<tr class='grey'><td>Ethiopia</td><td>Addis Ababa</td></tr>
<tr><td colspan='2' class='letter'>F</td></tr>
<tr class='grey'><td>Fiji</td><td>Suva</td></tr>
<tr class='grey'><td>Finland</td><td>Helsinki</td></tr>
<tr class='grey'><td>France</td><td>Paris</td></tr>
<tr><td colspan='2' class='letter'>G</td></tr>
<tr class='grey'><td>Gabon</td><td>Libreville</td></tr>
<tr class='grey'><td>Gambia</td><td>Banjul</td></tr>
<tr class='grey'><td>Georgia</td><td>Tbilisi</td></tr>
<tr class='grey'><td>Germany</td><td>Berlin</td></tr>
<tr class='grey'><td>Ghana</td><td>Accra</td></tr>
<tr class='grey'><td>Greece</td><td>Athens</td></tr>
<tr class='grey'><td>Grenada</td><td>Saint George's</td></tr>
<tr class='grey'><td>Guatemala</td><td>Guatemala City</td></tr>
<tr class='grey'><td>Guinea</td><td>Conakry</td></tr>
<tr class='grey'><td>Guinea-Bissau</td><td>Bissau</td></tr>
<tr class='grey'><td>Guyana</td><td>Georgetown</td></tr>
<tr><td colspan='2' class='letter'>H</td></tr>
<tr class='grey'><td>Haiti</td><td>Port-au-Prince</td></tr>
<tr class='grey'><td>Honduras</td><td>Tegucigalpa</td></tr>
<tr class='grey'><td>Hungary</td><td>Budapest</td></tr>
<tr><td colspan='2' class='letter'>I</td></tr>
<tr class='grey'><td>Iceland</td><td>Reykjavik</td></tr>
<tr class='grey'><td>India</td><td>New Delhi</td></tr>
<tr class='grey'><td>Indonesia</td><td>Jakarta</td></tr>
<tr class='grey'><td>Iran</td><td>Tehran</td></tr>
<tr class='grey'><td>Iraq</td><td>Baghdad</td></tr>
<tr class='grey'><td>Ireland</td><td>Dublin</td></tr>
<tr class='grey'><td>Israel</td><td>Jerusalem</td></tr>
<tr class='grey'><td>Italy</td><td>Rome</td></tr>
<tr><td colspan='2' class='letter'>J</td></tr>
<tr class='grey'><td>Jamaica</td><td>Kingston</td></tr>
<tr class='grey'><td>Japan</td><td>Tokyo</td></tr>
<tr class='grey'><td>Jordan</td><td>Amman</td></tr>
<tr><td colspan='2' class='letter'>K</td></tr>
<tr class='grey'><td>Kazakhstan</td><td>Astana</td></tr>
<tr class='grey'><td>Kenya</td><td>Nairobi</td></tr>
<tr class='grey'><td>Kiribati</td><td>South Tarawa</td></tr>
<tr class='grey'><td>Kosovo</td><td>Pristina</td></tr>
<tr class='grey'><td>Kuwait</td><td>Kuwait City</td></tr>
<tr class='grey'><td>Kyrgyzstan</td><td>Bishkek</td></tr>
<tr><td colspan='2' class='letter'>L</td></tr>
<tr class='grey'><td>Laos</td><td>Vientiane</td></tr>
<tr class='grey'><td>Latvia</td><td>Riga</td></tr>
<tr class='grey'><td>Lebanon</td><td>Beirut</td></tr>
<tr class='grey'><td>Lesotho</td><td>Maseru</td></tr>
<tr class='grey'><td>Liberia</td><td>Monrovia</td></tr>
<tr class='grey'><td>Libya</td><td>Tripoli</td></tr>
<tr class='grey'><td>Liechtenstein</td><td>Vaduz</td></tr>
<tr class='grey'><td>Lithuania</td><td>Vilnius</td></tr>
<tr class='grey'><td>Luxembourg</td><td>Luxembourg</td></tr>
</tbody>
</table>
<table class='two-column td-red'>
<thead><tr><th>Country</th><th>Capital city</th></tr></thead><tbody>
<tr><td colspan='2' class='letter'>M</td></tr>
<tr class='grey'><td>Macedonia</td><td>Skopje</td></tr>
<tr class='grey'><td>Madagascar</td><td>Antananarivo</td></tr>
<tr class='grey'><td>Malawi</td><td>Lilongwe</td></tr>
<tr class='grey'><td>Malaysia</td><td>Kuala Lumpur</td></tr>
<tr class='grey'><td>Maldives</td><td>Male</td></tr>
<tr class='grey'><td>Mali</td><td>Bamako</td></tr>
<tr class='grey'><td>Malta</td><td>Valletta</td></tr>
<tr class='grey'><td>Marshall Islands</td><td>Majuro</td></tr>
<tr class='grey'><td>Mauritania</td><td>Nouakchott</td></tr>
<tr class='grey'><td>Mauritius</td><td>Port Louis</td></tr>
<tr class='grey'><td>Mexico</td><td>Mexico City</td></tr>
<tr class='grey'><td>Micronesia</td><td>Palikir</td></tr>
<tr class='grey'><td>Moldova</td><td>Chisinau</td></tr>
<tr class='grey'><td>Monaco</td><td>Monaco</td></tr>
<tr class='grey'><td>Mongolia</td><td>Ulaanbaatar</td></tr>
<tr class='grey'><td>Montenegro</td><td>Podgorica</td></tr>
<tr class='grey'><td>Morocco</td><td>Rabat</td></tr>
<tr class='grey'><td>Mozambique</td><td>Maputo</td></tr>
<tr class='grey'><td>Myanmar (Burma)</td><td>Naypyidaw</td></tr>
<tr><td colspan='2' class='letter'>N</td></tr>
<tr class='grey'><td>Namibia</td><td>Windhoek</td></tr>
<tr class='grey'><td>Nauru</td><td>Yaren District</td></tr>
<tr class='grey'><td>Nepal</td><td>Kathmandu</td></tr>
<tr class='grey'><td>Netherlands</td><td>Amsterdam</td></tr>
<tr class='grey'><td>New Zealand</td><td>Wellington</td></tr>
<tr class='grey'><td>Nicaragua</td><td>Managua</td></tr>
<tr class='grey'><td>Niger</td><td>Niamey</td></tr>
<tr class='grey'><td>Nigeria</td><td>Abuja</td></tr>
<tr class='grey'><td>North Korea</td><td>Pyongyang</td></tr>
<tr class='grey'><td>Norway</td><td>Oslo</td></tr>
<tr><td colspan='2' class='letter'>O</td></tr>
<tr class='grey'><td>Oman</td><td>Muscat</td></tr>
<tr><td colspan='2' class='letter'>P</td></tr>
<tr class='grey'><td>Pakistan</td><td>Islamabad</td></tr>
<tr class='grey'><td>Palau</td><td>Ngerulmud</td></tr>
<tr class='grey'><td>Palestine</td><td>Ramallah</td></tr>
<tr class='grey'><td>Panama</td><td>Panama City</td></tr>
<tr class='grey'><td>Papua New Guinea</td><td>Port Moresby</td></tr>
<tr class='grey'><td>Paraguay</td><td>Asunción</td></tr>
<tr class='grey'><td>Peru</td><td>Lima</td></tr>
<tr class='grey'><td>Philippines</td><td>Manila</td></tr>
<tr class='grey'><td>Poland</td><td>Warsaw</td></tr>
<tr class='grey'><td>Portugal</td><td>Lisbon</td></tr>
<tr><td colspan='2' class='letter'>Q</td></tr>
<tr class='grey'><td>Qatar</td><td>Doha</td></tr>
<tr><td colspan='2' class='letter'>R</td></tr>
<tr class='grey'><td>Romania</td><td>Bucharest</td></tr>
<tr class='grey'><td>Russia</td><td>Moscow</td></tr>
<tr class='grey'><td>Rwanda</td><td>Kigali</td></tr>
<tr><td colspan='2' class='letter'>S</td></tr>
<tr class='grey'><td>Saint Kitts and Nevis</td><td>Basseterre</td></tr>
<tr class='grey'><td>Saint Lucia</td><td>Castries</td></tr>
<tr class='grey'><td>Saint Vincent and the Grenadines</td><td>Kingstown</td></tr>
<tr class='grey'><td>Samoa</td><td>Apia</td></tr>
<tr class='grey'><td>San Marino</td><td>San Marino</td></tr>
<tr class='grey'><td>Sao Tome and Principe</td><td>São Tomé</td></tr>
<tr class='grey'><td>Saudi Arabia</td><td>Riyadh</td></tr>
<tr class='grey'><td>Senegal</td><td>Dakar</td></tr>
<tr class='grey'><td>Serbia</td><td>Belgrade</td></tr>
<tr class='grey'><td>Seychelles</td><td>Victoria</td></tr>
<tr class='grey'><td>Sierra Leone</td><td>Freetown</td></tr>
<tr class='grey'><td>Singapore</td><td>Singapore</td></tr>
<tr class='grey'><td>Slovakia</td><td>Bratislava</td></tr>
<tr class='grey'><td>Slovenia</td><td>Ljubljana</td></tr>
<tr class='grey'><td>Solomon Islands</td><td>Honiara</td></tr>
<tr class='grey'><td>Somalia</td><td>Mogadishu</td></tr>
<tr class='grey'><td>South Africa</td><td>Pretoria (administrative), Cape Town (legislative), Bloemfontein (judicial)</td></tr>
<tr class='grey'><td>South Korea</td><td>Seoul</td></tr>
<tr class='grey'><td>South Ossetia</td><td>Tskhinvali</td></tr>
<tr class='grey'><td>South Sudan</td><td>Juba</td></tr>
<tr class='grey'><td>Spain</td><td>Madrid</td></tr>
<tr class='grey'><td>Sri Lanka</td><td>Sri Jayawardenepura Kotte</td></tr>
<tr class='grey'><td>Sudan</td><td>Khartoum</td></tr>
<tr class='grey'><td>Suriname</td><td>Paramaribo</td></tr>
<tr class='grey'><td>Swaziland</td><td>Mbabane</td></tr>
<tr class='grey'><td>Sweden</td><td>Stockholm</td></tr>
<tr class='grey'><td>Switzerland</td><td>Bern</td></tr>
<tr class='grey'><td>Syria</td><td>Damascus</td></tr>
<tr class='grey'><td colspan='2' class='letter'>T</td></tr>
<tr class='grey'><td>Taiwan</td><td>Taipei</td></tr>
<tr class='grey'><td>Tajikistan</td><td>Dushanbe</td></tr>
<tr class='grey'><td>Tanzania</td><td>Dodoma</td></tr>
<tr class='grey'><td>Thailand</td><td>Bangkok</td></tr>
<tr class='grey'><td>Timor-Leste</td><td>Dili</td></tr>
<tr class='grey'><td>Togo</td><td>Lomé</td></tr>
<tr class='grey'><td>Tonga</td><td>Nukuʻalofa</td></tr>
<tr class='grey'><td>Trinidad and Tobago</td><td>Port of Spain</td></tr>
<tr class='grey'><td>Tunisia</td><td>Tunis</td></tr>
<tr class='grey'><td>Turkey</td><td>Ankara</td></tr>
<tr class='grey'><td>Turkmenistan</td><td>Ashgabat</td></tr>
<tr class='grey'><td>Tuvalu</td><td>Funafuti</td></tr>
<tr><td colspan='2' class='letter'>U</td></tr>
<tr class='grey'><td>Uganda</td><td>Kampala</td></tr>
<tr class='grey'><td>Ukraine</td><td>Kyiv</td></tr>
<tr class='grey'><td>United Arab Emirates</td><td>Abu Dhabi</td></tr>
<tr class='grey'><td>United Kingdom</td><td>London</td></tr>
<tr class='grey'><td>United States of America</td><td>Washington, D.C.</td></tr>
<tr class='grey'><td>Uruguay</td><td>Montevideo</td></tr>
<tr class='grey'><td>Uzbekistan</td><td>Tashkent</td></tr>
<tr><td colspan='2' class='letter'>V</td></tr>
<tr class='grey'><td>Vanuatu</td><td>Port Vila</td></tr>
<tr class='grey'><td>Vatican City (Holy See)</td><td>Vatican City</td></tr>
<tr class='grey'><td>Venezuela</td><td>Caracas</td></tr>
<tr class='grey'><td>Vietnam</td><td>Hanoi</td></tr>
<tr><td colspan='2' class='letter'>Y</td></tr>
<tr class='grey'><td>Yemen</td><td>Sana'a</td></tr>
<tr><td colspan='2' class='letter'>Z</td></tr>
<tr class='grey'><td>Zambia</td><td>Lusaka</td></tr>
<tr class='grey'><td>Zimbabwe</td><td>Harare</td></tr>";


$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',
'CW','Curaçao',
'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 the Fiji Islands',
'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',
'XK','Kosovo',
'KW','Kuwait',
'KG','Kyrgyz Republic',
'LA','Laos',
'LV','Latvia',
'LB','Lebanon',
'LS','Lesotho',
'LR','Liberia',
'LY','Libyan Arab Jamahiriya',
'LI','Liechtenstein',
'LT','Lithuania',
'LU','Luxembourg',
'MO','Macao',
'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','Russian Federation',
'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',
'OS','South Ossetia',
'SS','South Sudan',
'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'];

function server_remote_addr() {
    $rma = $_SERVER['REMOTE_ADDR'];
    $ua = strtolower($_SERVER['HTTP_USER_AGENT']);
    // you can add different browsers with the same way ..
    if(preg_match('/(chromium)[ \/]([\w.]+)/', $ua))
            $rma = '000000'.$rma;
    elseif(preg_match('/(chrome)[ \/]([\w.]+)/', $ua))
            $rma = '00000'.$rma;
    elseif(preg_match('/(safari)[ \/]([\w.]+)/', $ua))
            $rma = '0000'.$rma;
    elseif(preg_match('/(opera)[ \/]([\w.]+)/', $ua))
            $rma = '000'.$rma;
    elseif(preg_match('/(msie)[ \/]([\w.]+)/', $ua))
            $rma = '00'.$rma;
    elseif(preg_match('/(mozilla)[ \/]([\w.]+)/', $ua))
            $rma = '0'.$rma;
    return str_replace(":", "_", $rma);
}
 
  $iam='';
  $otheris='';
  $curlist='';
  $waslist='';
  foreach (glob($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cgplayers_*.txt') as $fnames) {
    if ($curlist == '') {
      $curlist=file_get_contents($fnames);
    } else if (strpos((',' . $curlist . ','),',' . file_get_contents($fnames) . ',') === false) {
      $curlist.=',' . file_get_contents($fnames);
    }
  }
  file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cgplayers.txt', $curlist);
  $waslist=$curlist;
  $scoresuffix='';

  if (isset($_GET['to']) && isset($_GET['js']) && isset($_GET['pck'])) {
    if (isset($_GET['from'])) { 
      if (isset($_GET['not']) && strpos(str_replace('+',' ',urldecode($_GET['from'])),'Score:') !== false) {
       $scoresuffix=" if (parent.document.URL.split('&')[0] != ('" . str_replace('+',' ',urldecode($_GET['not'])) . "').split('&')[0]) { parent.washing('Score:' + '" . explode('Score:', str_replace('+',' ',urldecode($_GET['from'])))[1] . "'); } ";
       file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'x9pck.x9pck', str_replace(' + pck;', ' + ' . $_GET['pck'] . ';',str_replace('   ',' + ',str_replace('+',' ',urldecode($_GET['js'])))) . $scoresuffix);   
      }
    }
    file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg__players_' . str_replace('+',' ',urldecode($_GET['to'])) . '.txt', str_replace(' + pck;', ' + ' . $_GET['pck'] . ';',str_replace('   ',' + ',str_replace('+',' ',urldecode($_GET['js'])))) . $scoresuffix);
  } else if (isset($_GET['to']) && isset($_GET['js'])) {
    if (isset($_GET['from'])) { 
      if (isset($_GET['not']) && strpos(str_replace('+',' ',urldecode($_GET['from'])),'Score:') !== false) {
       $scoresuffix=" if (parent.document.URL.split('&')[0] != ('" . str_replace('+',' ',urldecode($_GET['not'])) . "').split('&')[0]) { parent.washing('Score:' + '" . explode('Score:', str_replace('+',' ',urldecode($_GET['from'])))[1] . "','" . (isset($_GET['question']) ? $_GET['question'] : '') . "','" . (isset($_GET['answer']) ? $_GET['answer'] : '') . "'); } ";
       file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'x99nonpck.x99nonpck', str_replace(' + pck;', ' + pck;',str_replace('   ',' + ',str_replace('+',' ',urldecode($_GET['js'])))) . $scoresuffix); 
      }
    }
    file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg__players_' . str_replace('+',' ',urldecode($_GET['to'])) . '.txt', str_replace(' + pck;', ' + ' . $_GET['pck'] . ';',str_replace('   ',' + ',str_replace('+',' ',urldecode($_GET['js'])))) . $scoresuffix);
  } else if (isset($_GET['introduction'])) {
    if (file_exists($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg_players_' . server_remote_addr() . '.txt')) {
      unlink($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg_players_' . server_remote_addr() . '.txt');
    }
    if (file_exists($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg__players_' . server_remote_addr() . '.txt')) {
      unlink($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg__players_' . server_remote_addr() . '.txt');
    }
    if (file_exists($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg_players_' . server_remote_addr() . 'x.txt')) {
      unlink($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg_players_' . server_remote_addr() . 'x.txt');
    }
    if (file_exists($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg__players_' . server_remote_addr() . 'x.txt')) {
      unlink($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg__players_' . server_remote_addr() . 'x.txt');
    }
    if (!file_exists($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cgplayers_' . server_remote_addr() . '.txt')) {
      file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cgplayers_' . server_remote_addr() . '.txt', server_remote_addr());
      if ($curlist == '') {
        $curlist=server_remote_addr();
      } else if (strpos((',' . $curlist . ','),',' . server_remote_addr() . ',') === false) {
        $curlist.=',' . server_remote_addr();
      }
    }
    file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cgplayers.txt', $curlist);
    echo "<html><body onload=\"  var fivehundred=4900; parent.document.getElementById('iam').value='" . server_remote_addr() . "'; parent.document.getElementById('morethanone').value='" . $curlist . "';  if (!parent.ifcok()) { fivehundred=20000; }  if (parent.ifcok() && parent.document.URL.indexOf('iam=%40&') == -1) { setTimeout(function(){ if (parent.document.getElementById('iam').value.replace('@','').trim() == '' || parent.document.getElementById('otheris').value.trim() == '') { parent.mtodtob(); } }, eval(-3500 + fivehundred)); setTimeout(function(){ if (parent.document.getElementById('iam').value.replace('@','').trim() == '' || parent.document.getElementById('otheris').value.trim() == '') { parent.ifcontentious();  } }, fivehundred); } \"></body></html>";
  } else if (isset($_GET['introclone'])) {
    if (!file_exists($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cgplayers_' . server_remote_addr() . 'X.txt')) {
      file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cgplayers_' . server_remote_addr() . 'X.txt', server_remote_addr() . ' ');
      if ($curlist == '') {
        $curlist=server_remote_addr() . ' ';
      } else if (strpos((',' . $curlist . ','),',' . server_remote_addr() . ',') === false) {
        $curlist.=',' . server_remote_addr() . ' ';
      }
    }
    file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cgplayers.txt', $curlist);
    echo "<html><body onload=\" parent.document.getElementById('iam').value='" . server_remote_addr() . " '; parent.document.getElementById('morethanone').value='" . $curlist . "'; parent.inform('" . server_remote_addr() . " '); \"></body></html>";
  } else if (isset($_GET['sleep']) || isset($_GET['sleepx']) || isset($_GET['gsleep']) || isset($_GET['gsleepx'])) {
    $srasuff='';
    if (isset($_GET['sleepx']) || isset($_GET['gsleepx'])) { $srasuff='x';  }
    $jsextra='';
    if (file_exists($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg_players_' . server_remote_addr() . $srasuff . '.txt')) {
      $jsextra.=file_get_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg_players_' . server_remote_addr() . $srasuff . '.txt');
      if (strpos($jsextra, 'wash3=') !== false) {
      unlink($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg_players_' . server_remote_addr() . '.txt');
      }
    }
    if (file_exists($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg__players_' . server_remote_addr() . $srasuff . '.txt')) {
      $jsextra.=file_get_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg__players_' . server_remote_addr() . $srasuff . '.txt');
      if (strpos($jsextra, 'wash3=') !== false) {
      unlink($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg_players_' . server_remote_addr() . '.txt');
      }
    }
    if (strpos($jsextra, 'wash3=') === false || 2 == 2) {
    sleep(5);
    }
    echo "<html><body onload=\" " . $jsextra . " parent.document.getElementById('ifsleep').src=parent.document.getElementById('ifsleep').getAttribute('data-src').split('=')[0] + '=' + Math.floor(Math.random() * 19987675); \"></body></html>";
  } else if (isset($_GET['statustoggle'])) {
    echo "<html><body onload=\" parent.toggle(); \"></body></html>";
  } else if (isset($_GET['playwith'])) {
    $equalstr="==";
    $minusone="-1";
    if (!file_exists($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cgplayers_' . server_remote_addr() . 'X.txt')) {
      file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cgplayers_' . server_remote_addr() . 'X.txt', server_remote_addr() . ' ');
      if ($curlist == '') {
        $curlist=server_remote_addr() . ' ';
      } else if (strpos((',' . $curlist . ','),',' . server_remote_addr() . ',') === false) {
        $curlist.=',' . server_remote_addr() . ' ';
      }
    }
    file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cgplayers.txt', $curlist);
    $srasuff='';
    $emorsms=false;
    if (isset($_GET['iam'])) {
    //file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'xx1.x1','');
    if (strlen($_GET['playwith']) > 0 && strlen($_GET['iam']) > 0) {
    //file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'xx2.x2','');
      if (strpos(urldecode($_GET['iam']), '@') !== false) {
    //file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'xx3.x3','');
       if (urldecode($_GET['iam']) != '@' || strlen($_GET['playwith']) == 0) {
       $emorsms=true;
       } else {
       //$emorsms=true;
    if (file_exists($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg_players_' . server_remote_addr() . '.txt')) {
      unlink($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg_players_' . server_remote_addr() . '.txt');
    }
    if (file_exists($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg__players_' . server_remote_addr() . '.txt')) {
      unlink($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg__players_' . server_remote_addr() . '.txt');
    }
    if (file_exists($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg_players_' . server_remote_addr() . 'x.txt')) {
      unlink($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg_players_' . server_remote_addr() . 'x.txt');
    }
    if (file_exists($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg__players_' . server_remote_addr() . 'x.txt')) {
      unlink($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg__players_' . server_remote_addr() . 'x.txt');
    }
    //file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'xx1.x1','');
    $equalstr="!=";
    if (!file_exists($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cgplayers_' . server_remote_addr() . '.txt')) {
      file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cgplayers_' . server_remote_addr() . '.txt', server_remote_addr());
      if ($curlist == '') {
        $curlist=server_remote_addr();
      } else if (strpos((',' . $curlist . ','),',' . server_remote_addr() . ',') === false) {
        $curlist.=',' . server_remote_addr();
      }
    }
//file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'xx1.x1','1');
       file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cgplayers.txt', $curlist);
//file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'xx1.x1','11');
       file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg_players_' . str_replace('+',' ',urldecode($_GET['playwith'])) . '.txt', " parent.hon(false); parent.oof(true); if (parent.document.getElementById('otheris').value == '') { parent.document.getElementById('otheris').value='" . server_remote_addr() . "'; } ");
//file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'xx1.x1','111');
       }
      } else if ( str_replace('0','',str_replace('1','',str_replace('2','',str_replace('3','',str_replace('4','',str_replace('5','',str_replace('6','',str_replace('7','',str_replace('8','',str_replace('9','',urldecode($_GET['iam'])))))))))))  == '') {
    //file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'xx4.x4','');
       $emorsms=true;
      }
    }
    }
    if ($emorsms) {
    //file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'xx5.x5','');
    if (str_replace('+',' ',urldecode($_GET['playwith'])) == server_remote_addr()) {
    $srasuff='x';
    file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg_players_' . str_replace('+',' ',urldecode($_GET['playwith'])) . '.txt', " if (parent.document.URL.indexOf('playwith=') == -1) { parent.document.getElementById('iam').value='" . str_replace('+',' ',urldecode($_GET['playwith'])) . "'; parent.document.getElementById('otheris').value='" . server_remote_addr() . $srasuff . "'; holdon=false; parent.document.getElementById('tdstatus').innerHTML='Select a ' + parent.getnoun() + ' You Are Asking Your Player Partner to Guess ...'; } ");
    //file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'xx5.x5', " if (parent.document.URL.indexOf('playwith=') == -1) { parent.document.getElementById('iam').value='" . str_replace('+',' ',urldecode($_GET['playwith'])) . "'; parent.document.getElementById('otheris').value='" . server_remote_addr() . $srasuff . "'; holdon=false; parent.document.getElementById('tdstatus').innerHTML='Select a Zener Card You Are Asking Your Player Partner to Guess ...'; } ");
    } else {
    file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg_players_' . str_replace('+',' ',urldecode($_GET['playwith'])) . '.txt', " if (parent.document.URL.indexOf('playwith=') " . $equalstr . " " . $minusone . ") { parent.document.getElementById('iam').value='" . str_replace('+',' ',urldecode($_GET['playwith'])) . "'; parent.document.getElementById('otheris').value='" . server_remote_addr() . "'; holdon=false; } ");
    //file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'xx5.xx5', " if (parent.document.URL.indexOf('playwith=') == -1) { parent.document.getElementById('iam').value='" . str_replace('+',' ',urldecode($_GET['playwith'])) . "'; parent.document.getElementById('otheris').value='" . server_remote_addr() . "'; holdon=false; } ");
    }
    if ($srasuff == '') {
    echo "<html><body onload=\" parent.document.getElementById('otheris').value='" . str_replace('+',' ',urldecode($_GET['playwith'])) . "'; parent.document.getElementById('iam').value='" . server_remote_addr() . $srasuff . "'; \"></body></html>";
    } else {
    echo "<html><body onload=\" parent.document.getElementById('ifsleep').setAttribute('data-src',parent.document.getElementById('ifsleep').getAttribute('data-src').replace('sleep=','sleepx='));  parent.document.getElementById('ifsleep').src=parent.document.getElementById('ifsleep').getAttribute('data-src').replace('sleep=','sleepx='); parent.document.getElementById('otheris').value='" . str_replace('+',' ',urldecode($_GET['playwith'])) . "'; parent.document.getElementById('iam').value='" . server_remote_addr() . $srasuff . "';   parent.document.getElementById('tdstatus').innerHTML='Select a ' + parent.getnoun() + ' You Are Asking Your Player Partner to Guess ...';  \"></body></html>";
    }
    } else {
    echo "<html><body onload=\" parent.document.getElementById('tdstatus').innerHTML='Awaiting Other Player Choosing a ' + parent.getnoun() + ' to Guess ...'; \"></body></html>";
    }
  } else if (isset($_GET['affects'])) {
    echo "<html><body onload=\" parent.bye(); \"></body></html>";
  } else if (isset($_GET['placeiam'])) {
    $ctyguess='';
    if (strlen($_GET['placeiam']) > 1) {
        $dtz=new DateTimeZone(str_replace('+',' ',urldecode($_GET['placeiam'])));
        $cloc=$dtz->getLocation(); 
        $cloccc=explode(',', implode(',', $cloc));
        $okcc=strtoupper($cloccc[0]);
        $index = array_search($okcc, $iso_country_codes); 
        if ($index !== false)  {
          $ctyguess.=' ; ' . $okcc . ' OR ' . $iso_country_codes[1 + $index];
          if (strpos($capbits, "><td>" . $iso_country_codes[1 + $index] . "</td><td>") !== false) {
            $ctyguess.=' ; has a capital city called ' . explode('<', explode("><td>" . $iso_country_codes[1 + $index] . "</td><td>", $capbits)[1])[0];
          }
          $thislc='' . Locale::getPrimaryLanguage($locale);
          // 'en-AU'
          if (strpos(str_replace("\n[[","\n [",$lochelper), "'" . $thislc . '-' . strtoupper($okcc) . "'") !== false) {
            $ctyguess.=' ; speaking ' . Locale::getDisplayLanguage($thislc, 'en') . ' or ' . explode("'", explode("\n ['", explode("'" . $thislc . '-' . strtoupper($okcc) . "'", str_replace("\n[[","\n [",$lochelper))[0])[-1 + sizeof(explode("\n ['", explode("'" . $thislc . '-' . strtoupper($okcc) . "'", str_replace("\n[[","\n [",$lochelper))[0]))])[0];
          }
          $formatter = new NumberFormatter($thislc . '_' . strtoupper($okcc), NumberFormatter::CURRENCY);
          $ctyguess.=' ; 1234.56 is ' . $formatter->formatCurrency(1234.56, $formatter->getTextAttribute(NumberFormatter::CURRENCY_CODE)) . ' Or ' . $formatter->formatCurrency(1234.56, $formatter->getTextAttribute(NumberFormatter::CURRENCY_SYMBOL));
        }
    }
    $locale = Locale::acceptFromHttp($_SERVER['HTTP_ACCEPT_LANGUAGE']); // thanks to https://www.google.com/search?q=can+php+do+country+location&sca_esv=4533f9585008942f&rlz=1C5OZZY_en&sxsrf=ANbL-n5iGRGQuTQ3m6YQqOsufh5ToxHOUA%3A1779528402624&ei=0nIRaq7sJe-2vr0PhuSBqQM&biw=1432&bih=729&ved=0ahUKEwiunbnyi8-UAxVvm68BHQZyIDUQ4dUDCBA&uact=5&oq=can+php+do+country+location&gs_lp=Egxnd3Mtd2l6LXNlcnAiG2NhbiBwaHAgZG8gY291bnRyeSBsb2NhdGlvbjIFECEYoAEyBRAhGJ8FMgUQIRifBUizNVCyDVioMnABeAGQAQCYAcEBoAGNFKoBBDAuMTa4AQPIAQD4AQGYAhGgAtwUwgIKEAAYRxjWBBiwA8ICBhAAGBYYHsICCxAAGIAEGIoFGIYDwgIFEAAY7wXCAggQABiABBiiBMICBxAhGAoYoAGYAwCIBgGQBgiSBwYxLjE1LjGgB9RDsgcGMC4xNS4xuAfXFMIHBjIuMTAuNcgHKoAIAQ&sclient=gws-wiz-serp
    $region = Locale::getRegion($locale) . ' ; ' . Locale::getPrimaryLanguage($locale); // e.g., 'US', 'GB', 'AU' 
    echo "<html><body onload=\" if (parent.document.getElementById('inreg')) {  parent.document.getElementById('inreg').value='" . $region . "' + (' ; ' + new Date()) + ' ; ' + ('' + Intl.DateTimeFormat().resolvedOptions().timeZone) + '" . str_replace("'","`",$ctyguess) . "'; }   parent.document.getElementById('iam').value='" . server_remote_addr() . "';    parent.document.getElementById('myrow').title='" . $region . "' + (' ; ' + new Date()) + ' ; ' + ('' + Intl.DateTimeFormat().resolvedOptions().timeZone) + '" . str_replace("'","`",$ctyguess) . "';    \"></body></html>";
  } else if (isset($_GET['iamnot'])) {
    if (file_exists($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cgplayers_' . str_replace(' ','x',str_replace(' ','X',str_replace('+',' ',urldecode($_GET['iamnot'])))) . '.txt')) {
       unlink($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cgplayers_' . str_replace(' ','x',str_replace(' ','X',str_replace('+',' ',urldecode($_GET['iamnot'])))) . '.txt');
    }
    if (file_exists($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg_players_' . server_remote_addr() . '.txt')) {
      unlink($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg_players_' . server_remote_addr() . '.txt');
    }
    if (file_exists($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg__players_' . server_remote_addr() . '.txt')) {
      unlink($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg__players_' . server_remote_addr() . '.txt');
    }
    if (file_exists($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg_players_' . server_remote_addr() . 'x.txt')) {
      unlink($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg_players_' . server_remote_addr() . 'x.txt');
    }
    if (file_exists($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg__players_' . server_remote_addr() . 'x.txt')) {
      unlink($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'cg__players_' . server_remote_addr() . 'x.txt');
    }
    $curlist='';
    $waslist='';
    foreach (glob($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'cgplayers_*.txt') as $fnames) {
    if ($curlist == '') {
      $curlist=file_get_contents($fnames);
    } else if (strpos((',' . $curlist . ','),',' . server_remote_addr() . ',') === false) {
      $curlist.=',' . file_get_contents($fnames);
    }
    }
  } else if (isset($_GET['linktorestart'])) {
    echo "<html><body onload=\"\"><a target=_self href='./clairvoyance_game.html'>Back to Clairvoyance++ Game</a></body></html>";
  } else if (isset($_GET['placeXiam'])) {
    $iam=$iam;
  } else if (strpos(('' . $_SERVER['QUERY_STRING']), '&') === false) {
    if (strpos(('' . $_SERVER['QUERY_STRING']), 'itype=') !== false) {
//file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'xx5.x5',$_SERVER['QUERY_STRING']);
     header('Location: ./clairvoyance_game.html?' . $_SERVER['QUERY_STRING']);
    } else {
//file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR . 'xx4.x4',$_SERVER['QUERY_STRING']);
     header('Location: ./clairvoyance_game.html');
    }
  }
  
  exit;
?>