#!/usr/bin/python3
#encoding:utf-8

from sitepackage.thissql import sqlr

import os
import traceback
import sys
import datetime
import json
import random

#need to install
import bcrypt


def get_lang_text():
  data = sqlr("SELECT page, key, value FROM texts", [])
  lang_text = {}
  for page, key, value in data:
    if page not in lang_text:
      lang_text[page] = {}
    lang_text[page][key] = value
  return lang_text


def get_settings():
  settings = dict(sqlr("SELECT key, value FROM settings", []))
  return settings


def generate(length, number=False):
  if number:
    data =list("2345679")
  else:
    data =list("2345679qwertyuiopasdfghjkzxcvbnmQWRTYUPASFGHJKLZXCVNM")
  some_string = ''.join([random.choice(data) for index in range(length)])
  return some_string


def passhash(mypass, mysalt):
  return str(bcrypt.kdf(password=mypass.encode('utf-8'),salt=mysalt.encode('utf-8'),desired_key_bytes=128,rounds=100))


def save_format_json(filename, obj_dict):
  json_text = json.dumps(obj_dict)
  json_text = json_text.replace('": [', '": [\n')
  json_text = json_text.replace('": {', '": {\n')
  json_text = json_text.replace('], "', '],\n"')
  json_text = json_text.replace('}, "', '},\n"')
  json_text = json_text.replace('], [', '\n],[')
  json_text = json_text.replace('}, {', '\n},{')
  json_text = json_text.replace('], {', '\n],{')
  json_text = json_text.replace('}, [', '\n},[')
  json_text = json_text.replace('", "', '",\n"')
  json_text = json_text.replace('{"', '{\n"')
  json_text = json_text.replace('["', '[\n"')
  json_text = json_text.replace('"]', '"\n]')
  json_text = json_text.replace('"}', '"\n}')
  json_text = json_text.replace(']]', ']\n]')
  json_text = json_text.replace('}'+'}', '}\n}')
  json_text = json_text.replace(']}', ']\n}')
  json_text = json_text.replace('}]', '}\n]')
  typesetting = 0
  with open(filename, 'w', encoding="utf-8") as outfile:
    for line in json_text.split("\n"):
      opening_bracket = 0
      opening_bracket += line.count('{')
      opening_bracket += line.count('[')
      closing_bracket = 0
      closing_bracket += line.count('}')
      closing_bracket += line.count(']')
      new_typesetting = typesetting + opening_bracket - closing_bracket
      if opening_bracket == closing_bracket == 1:
        outfile.write('  '*(typesetting-1)+line+"\n")
      elif opening_bracket > 0:
        outfile.write('  '*typesetting+line+"\n")
        typesetting = new_typesetting
      else:
        typesetting = new_typesetting
        outfile.write('  '*typesetting+line+"\n")


def read_settings(filename):
  with open(filename, "r", encoding="utf-8") as read_file:
    data = json.load(read_file)
  return data


ISO3166_eng ={
  4:"Afghanistan",
  8:"Albania",
  12:"Algeria",
  16:"American Samoa",
  20:"Andorra",
  24:"Angola",
  660:"Anguilla",
  10:"Antarctica",
  28:"Antigua and Barbuda",
  32:"Argentina",
  51:"Armenia",
  533:"Aruba",
  36:"Australia",
  40:"Austria",
  31:"Azerbaijan",
  44:"Bahamas",
  48:"Bahrain",
  50:"Bangladesh",
  52:"Barbados",
  112:"Belarus",
  56:"Belgium",
  84:"Belize",
  204:"Benin",
  60:"Bermuda",
  64:"Bhutan",
  68:"Bolivia (Plurinational State of)",
  535:"Bonaire, Sint Eustatius and Saba",
  70:"Bosnia and Herzegovina",
  72:"Botswana",
  74:"Bouvet Island",
  76:"Brazil",
  86:"British Indian Ocean Territory",
  96:"Brunei Darussalam",
  100:"Bulgaria",
  854:"Burkina Faso",
  108:"Burundi",
  132:"Cabo Verde",
  116:"Cambodia",
  120:"Cameroon",
  124:"Canada",
  136:"Cayman Islands",
  140:"Central African Republic",
  148:"Chad",
  152:"Chile",
  156:"China",
  162:"Christmas Island",
  166:"Cocos (Keeling) Islands",
  170:"Colombia",
  174:"Comoros",
  180:"Congo (the Democratic Republic of the)",
  178:"Congo",
  184:"Cook Islands",
  188:"Costa Rica",
  191:"Croatia",
  192:"Cuba",
  531:"Curaçao",
  196:"Cyprus",
  203:"Czechia",
  384:"Côte d'Ivoire",
  208:"Denmark",
  262:"Djibouti",
  212:"Dominica",
  214:"Dominican Republic",
  218:"Ecuador",
  818:"Egypt",
  222:"El Salvador",
  226:"Equatorial Guinea",
  232:"Eritrea",
  233:"Estonia",
  748:"Eswatini",
  231:"Ethiopia",
  238:"Falkland Islands [Malvinas]",
  234:"Faroe Islands",
  242:"Fiji",
  246:"Finland",
  250:"France",
  254:"French Guiana",
  258:"French Polynesia",
  260:"French Southern Territories",
  266:"Gabon",
  270:"Gambia",
  268:"Georgia",
  276:"Germany",
  288:"Ghana",
  292:"Gibraltar",
  300:"Greece",
  304:"Greenland",
  308:"Grenada",
  312:"Guadeloupe",
  316:"Guam",
  320:"Guatemala",
  831:"Guernsey",
  324:"Guinea",
  624:"Guinea-Bissau",
  328:"Guyana",
  332:"Haiti",
  334:"Heard Island and McDonald Islands",
  336:"Holy See",
  340:"Honduras",
  344:"Hong Kong",
  348:"Hungary",
  352:"Iceland",
  356:"India",
  360:"Indonesia",
  364:"Iran (Islamic Republic of)",
  368:"Iraq",
  372:"Ireland",
  833:"Isle of Man",
  376:"Israel",
  380:"Italy",
  388:"Jamaica",
  392:"Japan",
  832:"Jersey",
  400:"Jordan",
  398:"Kazakhstan",
  404:"Kenya",
  296:"Kiribati",
  408:"Korea (the Democratic People's Republic of)",
  410:"Korea (the Republic of)",
  414:"Kuwait",
  417:"Kyrgyzstan",
  418:"Lao People's Democratic Republic",
  428:"Latvia",
  422:"Lebanon",
  426:"Lesotho",
  430:"Liberia",
  434:"Libya",
  438:"Liechtenstein",
  440:"Lithuania",
  442:"Luxembourg",
  446:"Macao",
  450:"Madagascar",
  454:"Malawi",
  458:"Malaysia",
  462:"Maldives",
  466:"Mali",
  470:"Malta",
  584:"Marshall Islands",
  474:"Martinique",
  478:"Mauritania",
  480:"Mauritius",
  175:"Mayotte",
  484:"Mexico",
  583:"Micronesia (Federated States of)",
  498:"Moldova (the Republic of)",
  492:"Monaco",
  496:"Mongolia",
  499:"Montenegro",
  500:"Montserrat",
  504:"Morocco",
  508:"Mozambique",
  104:"Myanmar",
  516:"Namibia",
  520:"Nauru",
  524:"Nepal",
  528:"Netherlands",
  540:"New Caledonia",
  554:"New Zealand",
  558:"Nicaragua",
  562:"Niger",
  566:"Nigeria",
  570:"Niue",
  574:"Norfolk Island",
  580:"Northern Mariana Islands",
  578:"Norway",
  512:"Oman",
  586:"Pakistan",
  585:"Palau",
  275:"Palestine, State of",
  591:"Panama",
  598:"Papua New Guinea",
  600:"Paraguay",
  604:"Peru",
  608:"Philippines",
  612:"Pitcairn",
  616:"Poland",
  620:"Portugal",
  630:"Puerto Rico",
  634:"Qatar",
  807:"Republic of North Macedonia",
  642:"Romania",
  643:"Russian Federation",
  646:"Rwanda",
  638:"Réunion",
  652:"Saint Barthélemy",
  654:"Saint Helena, Ascension and Tristan da Cunha",
  659:"Saint Kitts and Nevis",
  662:"Saint Lucia",
  663:"Saint Martin (French part)",
  666:"Saint Pierre and Miquelon",
  670:"Saint Vincent and the Grenadines",
  882:"Samoa",
  674:"San Marino",
  678:"Sao Tome and Principe",
  682:"Saudi Arabia",
  686:"Senegal",
  688:"Serbia",
  690:"Seychelles",
  694:"Sierra Leone",
  702:"Singapore",
  534:"Sint Maarten (Dutch part)",
  703:"Slovakia",
  705:"Slovenia",
  90:"Solomon Islands",
  706:"Somalia",
  710:"South Africa",
  239:"South Georgia and the South Sandwich Islands",
  728:"South Sudan",
  724:"Spain",
  144:"Sri Lanka",
  729:"Sudan",
  740:"Suriname",
  744:"Svalbard and Jan Mayen",
  752:"Sweden",
  756:"Switzerland",
  760:"Syrian Arab Republic",
  158:"Taiwan (Province of China)",
  762:"Tajikistan",
  834:"Tanzania, United Republic of",
  764:"Thailand",
  626:"Timor-Leste",
  768:"Togo",
  772:"Tokelau",
  776:"Tonga",
  780:"Trinidad and Tobago",
  788:"Tunisia",
  792:"Turkey",
  795:"Turkmenistan",
  796:"Turks and Caicos Islands",
  798:"Tuvalu",
  800:"Uganda",
  804:"Ukraine",
  784:"United Arab Emirates",
  826:"United Kingdom of Great Britain and Northern Ireland",
  581:"United States Minor Outlying Islands",
  840:"United States of America",
  858:"Uruguay",
  860:"Uzbekistan",
  548:"Vanuatu",
  862:"Venezuela (Bolivarian Republic of)",
  704:"Viet Nam",
  92:"Virgin Islands (British)",
  850:"Virgin Islands (U.S.)",
  876:"Wallis and Futuna",
  732:"Western Sahara",
  887:"Yemen",
  894:"Zambia",
  716:"Zimbabwe",
  248:"Åland Islands"
}


ISO3166_rus ={
  36:"Австралия",
  40:"Австрия",
  31:"Азербайджан",
  248:"Аландские острова",
  8:"Албания",
  12:"Алжир",
  850:"Виргинские Острова (США)",
  16:"Американское Самоа",
  660:"Ангилья",
  24:"Ангола",
  20:"Андорра",
  10:"Антарктика",
  28:"Антигуа и Барбуда",
  32:"Аргентина",
  51:"Армения",
  533:"Аруба",
  4:"Афганистан",
  44:"Багамские Острова",
  50:"Бангладеш",
  52:"Барбадос",
  48:"Бахрейн",
  84:"Белиз",
  112:"Белоруссия",
  56:"Бельгия",
  204:"Бенин",
  60:"Бермуды",
  100:"Болгария",
  68:"Боливия",
  535:"Бонайре, Синт-Эстатиус и Саба",
  70:"Босния и Герцеговина",
  72:"Ботсвана",
  76:"Бразилия",
  86:"Британская Территория в Индийском Океане",
  92:"Виргинские Острова (Великобритания)",
  96:"Бруней",
  854:"Буркина-Фасо",
  108:"Бурунди",
  64:"Бутан",
  548:"Вануату",
  336:"Ватикан",
  826:"Великобритания",
  348:"Венгрия",
  862:"Венесуэла",
  581:"Внешние малые острова США",
  626:"Восточный Тимор",
  704:"Вьетнам",
  266:"Габон",
  332:"Гаити",
  328:"Гайана",
  270:"Гамбия",
  288:"Гана",
  312:"Гваделупа",
  320:"Гватемала",
  254:"Гвиана",
  324:"Гвинея",
  624:"Гвинея-Бисау",
  276:"Германия",
  831:"Гернси",
  292:"Гибралтар",
  340:"Гондурас",
  344:"Гонконг",
  308:"Гренада",
  304:"Гренландия",
  300:"Греция",
  268:"Грузия",
  316:"Гуам",
  208:"Дания",
  832:"Джерси",
  262:"Джибути",
  212:"Доминика",
  214:"Доминиканская Республика",
  180:"ДР Конго",
  818:"Египет",
  894:"Замбия",
  732:"САДР",
  716:"Зимбабве",
  376:"Израиль",
  356:"Индия",
  360:"Индонезия",
  400:"Иордания",
  368:"Ирак",
  364:"Иран",
  372:"Ирландия",
  352:"Исландия",
  724:"Испания",
  380:"Италия",
  887:"Йемен",
  132:"Кабо-Верде",
  398:"Казахстан",
  136:"Острова Кайман",
  116:"Камбоджа",
  120:"Камерун",
  124:"Канада",
  634:"Катар",
  404:"Кения",
  196:"Кипр",
  417:"Киргизия",
  296:"Кирибати",
  158:"Китайская Республика",
  408:"КНДР (Корейская Народно-Демократическая Республика)",
  156:"Китай (Китайская Народная Республика)",
  166:"Кокосовые острова",
  170:"Колумбия",
  174:"Коморы",
  188:"Коста-Рика",
  384:"Кот-д’Ивуар",
  192:"Куба",
  414:"Кувейт",
  531:"Кюрасао",
  418:"Лаос",
  428:"Латвия",
  426:"Лесото",
  430:"Либерия",
  422:"Ливан",
  434:"Ливия",
  440:"Литва",
  438:"Лихтенштейн",
  442:"Люксембург",
  480:"Маврикий",
  478:"Мавритания",
  450:"Мадагаскар",
  175:"Майотта",
  446:"Макао",
  807:"Северная Македония",
  454:"Малави",
  458:"Малайзия",
  466:"Мали",
  462:"Мальдивы",
  470:"Мальта",
  504:"Марокко",
  474:"Мартиника",
  584:"Маршалловы Острова",
  484:"Мексика",
  583:"Микронезия",
  508:"Мозамбик",
  498:"Молдавия",
  492:"Монако",
  496:"Монголия",
  500:"Монтсеррат",
  104:"Мьянма",
  516:"Намибия",
  520:"Науру",
  524:"Непал",
  562:"Нигер",
  566:"Нигерия",
  528:"Нидерланды",
  558:"Никарагуа",
  570:"Ниуэ",
  554:"Новая Зеландия",
  540:"Новая Каледония",
  578:"Норвегия",
  784:"ОАЭ",
  512:"Оман",
  74:"Остров Буве",
  833:"Остров Мэн",
  184:"Острова Кука",
  574:"Остров Норфолк",
  162:"Остров Рождества",
  612:"Острова Питкэрн",
  654:"Остров Святой Елены",
  586:"Пакистан",
  585:"Палау",
  275:"Государство Палестина",
  591:"Панама",
  598:"Папуа — Новая Гвинея",
  600:"Парагвай",
  604:"Перу",
  616:"Польша",
  620:"Португалия",
  630:"Пуэрто-Рико",
  178:"Республика Конго",
  410:"Республика Корея",
  638:"Реюньон",
  643:"Россия",
  646:"Руанда",
  642:"Румыния",
  222:"Сальвадор",
  882:"Самоа",
  674:"Сан-Марино",
  678:"Сан-Томе и Принсипи",
  682:"Саудовская Аравия",
  748:"Эсватини",
  580:"Северные Марианские Острова",
  690:"Сейшельские Острова",
  652:"Сен-Бартелеми",
  663:"Сен-Мартен",
  666:"Сен-Пьер и Микелон",
  686:"Сенегал",
  670:"Сент-Винсент и Гренадины",
  659:"Сент-Китс и Невис",
  662:"Сент-Люсия",
  688:"Сербия",
  702:"Сингапур",
  534:"Синт-Мартен",
  760:"Сирия",
  703:"Словакия",
  705:"Словения",
  90:"Соломоновы Острова",
  706:"Сомали",
  729:"Судан",
  740:"Суринам",
  840:"США",
  694:"Сьерра-Леоне",
  762:"Таджикистан",
  764:"Таиланд",
  834:"Танзания",
  796:"Теркс и Кайкос",
  768:"Того",
  772:"Токелау",
  776:"Тонга",
  780:"Тринидад и Тобаго",
  798:"Тувалу",
  788:"Тунис",
  795:"Туркменистан",
  792:"Турция",
  800:"Уганда",
  860:"Узбекистан",
  804:"Украина",
  876:"Уоллис и Футуна",
  858:"Уругвай",
  234:"Фарерские острова",
  242:"Фиджи",
  608:"Филиппины",
  246:"Финляндия",
  238:"Фолклендские острова",
  250:"Франция",
  258:"Французская Полинезия",
  260:"Французские Южные и Антарктические территории",
  334:"Херд и Макдональд",
  191:"Хорватия",
  140:"ЦАР",
  148:"Чад",
  499:"Черногория",
  203:"Чехия",
  152:"Чили",
  756:"Швейцария",
  752:"Швеция",
  744:"Шпицберген и Ян-Майен",
  144:"Шри-Ланка",
  218:"Эквадор",
  226:"Экваториальная Гвинея",
  232:"Эритрея",
  233:"Эстония",
  231:"Эфиопия",
  710:"ЮАР",
  239:"Южная Георгия и Южные Сандвичевы Острова",
  728:"Южный Судан",
  388:"Ямайка",
  392:"Япония"
}

ISO3166_ndr ={
  4: 'Afghanistan',
  248: 'Åland',
  8: 'Albanië',
  12: 'Algerije',
  850: 'Amerikaanse Maagdeneilanden',
  16: 'Amerikaans-Samoa',
  20: 'Andorra',
  24: 'Angola',
  660: 'Anguilla',
  10: 'Antarctica',
  28: 'Antigua en Barbuda',
  32: 'Argentinië',
  51: 'Armenië',
  533: 'Aruba',
  36: 'Australië',
  31: 'Azerbeidzjan',
  44: "Bahama's", 48: 'Bahrein',
  50: 'Bangladesh',
  52: 'Barbados',
  56: 'België',
  84: 'Belize',
  204: 'Benin',
  60: 'Bermuda',
  64: 'Bhutan',
  68: 'Bolivia',
  70: 'Bosnië en Herzegovina',
  72: 'Botswana',
  74: 'Bouvet',
  76: 'Brazilië',
  92: 'Britse Maagdeneilanden',
  86: 'Brits Indische Oceaanterritorium',
  96: 'Brunei',
  100: 'Bulgarije',
  854: 'Burkina Faso',
  108: 'Burundi',
  116: 'Cambodja',
  124: 'Canada',
  535: 'Caribisch Nederland',
  140: 'Centraal-Afrikaanse Republiek',
  152: 'Chili',
  156: 'China',
  162: 'Christmaseiland',
  166: 'Cocoseilanden',
  170: 'Colombia',
  174: 'Comoren',
  178: 'Congo-Brazzaville',
  180: 'Congo-Kinshasa',
  184: 'Cookeilanden',
  188: 'Costa Rica',
  192: 'Cuba',
  531: 'Curaçao',
  196: 'Cyprus',
  208: 'Denemarken',
  262: 'Djibouti',
  212: 'Dominica',
  214: 'Dominicaanse Republiek',
  276: 'Duitsland',
  218: 'Ecuador',
  818: 'Egypte',
  222: 'El Salvador',
  226: 'Equatoriaal-Guinea',
  232: 'Eritrea',
  233: 'Estland',
  231: 'Ethiopië',
  234: 'Faeröer',
  238: 'Falklandeilanden',
  242: 'Fiji',
  608: 'Filipijnen',
  246: 'Finland',
  250: 'Frankrijk',
  260: 'Franse Zuidelijke Gebieden',
  254: 'Frans-Guyana',
  258: 'Frans-Polynesië',
  266: 'Gabon',
  270: 'Gambia',
  268: 'Georgië',
  288: 'Ghana',
  292: 'Gibraltar',
  308: 'Grenada',
  300: 'Griekenland',
  304: 'Groenland',
  312: 'Guadeloupe',
  316: 'Guam',
  320: 'Guatemala',
  831: 'Guernsey',
  324: 'Guinee',
  624: 'Guinee-Bissau',
  328: 'Guyana',
  332: 'Haïti',
  334: 'Heard en McDonaldeilanden',
  340: 'Honduras',
  348: 'Hongarije',
  344: 'Hongkong',
  372: 'Ierland',
  352: 'IJsland',
  356: 'India',
  360: 'Indonesië',
  368: 'Irak',
  364: 'Iran',
  376: 'Israël',
  380: 'Italië',
  384: 'Ivoorkust',
  388: 'Jamaica',
  392: 'Japan',
  887: 'Jemen',
  832: 'Jersey',
  400: 'Jordanië',
  136: 'Kaaimaneilanden',
  132: 'Kaapverdië',
  120: 'Kameroen',
  398: 'Kazachstan',
  404: 'Kenia',
  417: 'Kirgizië',
  296: 'Kiribati',
  581: 'Kleine afgelegen eilanden van de Verenigde Staten',
  414: 'Koeweit',
  191: 'Kroatië',
  418: 'Laos',
  426: 'Lesotho',
  428: 'Letland',
  422: 'Libanon',
  430: 'Liberia',
  434: 'Libië',
  438: 'Liechtenstein',
  440: 'Litouwen',
  442: 'Luxemburg',
  446: 'Macau',
  450: 'Madagaskar',
  454: 'Malawi',
  462: 'Malediven',
  458: 'Maleisië',
  466: 'Mali',
  470: 'Malta',
  833: 'Man',
  504: 'Marokko',
  584: 'Marshalleilanden',
  474: 'Martinique',
  478: 'Mauritanië',
  480: 'Mauritius',
  175: 'Mayotte',
  484: 'Mexico',
  583: 'Micronesië',
  498: 'Moldavië',
  492: 'Monaco',
  496: 'Mongolië',
  499: 'Montenegro',
  500: 'Montserrat',
  508: 'Mozambique',
  104: 'Myanmar',
  516: 'Namibië',
  520: 'Nauru',
  528: 'Nederland',
  524: '  Nepal',
  558: 'Nicaragua',
  540: 'Nieuw-Caledonië',
  554: 'Nieuw-Zeeland',
  562: 'Niger',
  566: 'Nigeria',
  570: 'Niue',
  580: 'Noordelijke Marianen',
  408: 'Noord-Korea',
  807: 'Noord-Macedonië',
  578: 'Noorwegen',
  574: 'Norfolk',
  800: 'Oeganda',
  804: 'Oekraïne',
  860: 'Oezbekistan',
  512: 'Oman',
  40: 'Oostenrijk',
  626: 'Oost-Timor',
  586: 'Pakistan',
  585: 'Palau',
  275: 'Palestina',
  591: 'Panama',
  598: 'Papoea-Nieuw-Guinea',
  600: 'Paraguay',
  604: 'Peru',
  612: 'Pitcairneilanden',
  616: 'Polen',
  620: 'Portugal',
  630: 'Puerto Rico',
  634: 'Qatar',
  638: 'Réunion',
  642: 'Roemenië',
  643: 'Rusland',
  646: 'Rwanda',
  652: 'Saint-Barthélemy',
  659: 'Saint Kitts en Nevis',
  662: 'Saint Lucia',
  666: 'Saint-Pierre en Miquelon',
  670: 'Saint Vincent en de Grenadines',
  90: 'Salomonseilanden',
  882: 'Samoa',
  674: 'San Marino',
  682: 'Saoedi-Arabië',
  678: 'Sao Tomé en Principe',
  686: 'Senegal',
  688: 'Servië',
  690: 'Seychellen',
  694: 'Sierra Leone',
  702: 'Singapore',
  654: 'Sint-Helena, Ascension en Tristan da Cunha',
  663: 'Saint-Martin',
  534: 'Sint Maarten',
  705: 'Slovenië',
  703: 'Slowakije',
  729: 'Soedan',
  706: 'Somalië',
  724: 'Spanje',
  744: 'Spitsbergen en Jan Mayen',
  144: 'Sri Lanka',
  740: 'Suriname',
  748: 'Swaziland',
  760: 'Syrië',
  762: 'Tadzjikistan',
  158: 'Taiwan',
  834: 'Tanzania',
  764: 'Thailand',
  768: 'Togo',
  772: 'Tokelau',
  776: 'Tonga',
  780: 'Trinidad en Tobago',
  148: 'Tsjaad',
  203: 'Tsjechië',
  788: 'Tunesië',
  792: 'Turkije',
  795: 'Turkmenistan',
  796: 'Turks- en Caicoseilanden',
  798: 'Tuvalu',
  858: 'Uruguay',
  548: 'Vanuatu',
  336: 'Vaticaanstad',
  862: 'Venezuela',
  784: 'Verenigde Arabische Emiraten',
  840: 'Verenigde Staten',
  826: 'Verenigd Koninkrijk',
  704: 'Vietnam',
  876: 'Wallis en Futuna',
  732: 'Westelijke Sahara/SADR',
  112: 'Wit-Rusland',
  894: 'Zambia',
  716: 'Zimbabwe',
  710: 'Zuid-Afrika',
  239: 'Zuid-Georgia en de Zuidelijke Sandwicheilanden',
  410: 'Zuid-Korea',
  728: 'Zuid-Soedan',
  752: 'Zweden',
  756: 'Zwitserland'
}
