From ef7d1b29f4bd3a8beee3d877baa8e408e4ff651d Mon Sep 17 00:00:00 2001 From: yukkop Date: Mon, 13 Jul 2026 23:37:14 +0000 Subject: [PATCH] feat: +njalla module --- nixos/module/hectic/hardware/njalla.nix | 134 ++ package/default.nix | 1 + package/which-country-rs/Cargo.lock | 1939 +++++++++++++++++ package/which-country-rs/Cargo.toml | 19 + package/which-country-rs/LICENSE | 21 + package/which-country-rs/README.md | 83 + .../which-country-rs/data/countries.geojson | 1 + package/which-country-rs/default.nix | 25 + package/which-country-rs/src/geo.rs | 275 +++ package/which-country-rs/src/geoip.rs | 44 + package/which-country-rs/src/main.rs | 99 + package/which-country-rs/src/render.rs | 184 ++ 12 files changed, 2825 insertions(+) create mode 100644 nixos/module/hectic/hardware/njalla.nix create mode 100644 package/which-country-rs/Cargo.lock create mode 100644 package/which-country-rs/Cargo.toml create mode 100644 package/which-country-rs/LICENSE create mode 100644 package/which-country-rs/README.md create mode 100644 package/which-country-rs/data/countries.geojson create mode 100644 package/which-country-rs/default.nix create mode 100644 package/which-country-rs/src/geo.rs create mode 100644 package/which-country-rs/src/geoip.rs create mode 100644 package/which-country-rs/src/main.rs create mode 100644 package/which-country-rs/src/render.rs diff --git a/nixos/module/hectic/hardware/njalla.nix b/nixos/module/hectic/hardware/njalla.nix new file mode 100644 index 00000000..70a5dafb --- /dev/null +++ b/nixos/module/hectic/hardware/njalla.nix @@ -0,0 +1,134 @@ +{ ... }: +{ + lib, + config, + ... +}: let + cfg = config.hectic.hardware.njalla; +in { + options.hectic.hardware.njalla = { + enable = lib.mkEnableOption "Enable njalla hardware configurations"; + ipv4 = lib.mkOption { + type = lib.types.strMatching "^([0-9]{1,3}\\.){3}[0-9]{1,3}$"; + example = "185.193.126.103"; + description = '' + Njalla IPv4 address assigned to the host. + ''; + }; + ipv4PrefixLength = lib.mkOption { + type = lib.types.int; + default = 24; + example = 24; + description = '' + Njalla IPv4 prefix length. + ''; + }; + ipv4Gateway = lib.mkOption { + type = lib.types.strMatching "^([0-9]{1,3}\\.){3}[0-9]{1,3}$"; + default = "185.193.126.1"; + example = "185.193.126.1"; + description = '' + Njalla IPv4 gateway. + ''; + }; + ipv6 = lib.mkOption { + type = lib.types.strMatching "^([0-9a-fA-F]{0,4}:){2,7}[0-9a-fA-F]{0,4}$"; + example = "2a0a:3840:1337:126:0:b9c1:7e67:1337"; + description = '' + Njalla IPv6 address assigned to the host. + ''; + }; + ipv6PrefixLength = lib.mkOption { + type = lib.types.int; + default = 64; + example = 64; + description = '' + Njalla IPv6 prefix length. + ''; + }; + ipv6Gateway = lib.mkOption { + type = lib.types.strMatching "^([0-9a-fA-F]{0,4}:){2,7}[0-9a-fA-F]{0,4}$"; + default = "2a0a:3840:1337:126::1"; + example = "2a0a:3840:1337:126::1"; + description = '' + Njalla IPv6 gateway. + ''; + }; + networkMatchConfigName = lib.mkOption { + type = lib.types.str; + default = "eth0"; + example = "eth0"; + description = '' + Njalla container network interface name. + ''; + }; + device = lib.mkOption { + type = lib.types.str; + default = "/dev/vda"; + example = "/dev/disk/by-id/virtio-root"; + description = '' + Njalla installation disk for disko/nixos-anywhere. + + `/dev/vda` is the default block device visible on the inspected Njalla + host. Prefer a stable `/dev/disk/by-id/...` path when available. + ''; + }; + enableDisko = lib.mkOption { + type = lib.types.bool; + default = true; + description = '' + Whether to provide a disko layout for nixos-anywhere installs. + ''; + }; + }; + + config = lib.mkIf cfg.enable (lib.mkMerge [ + { + boot.isContainer = true; + + networking.useDHCP = false; + networking.useNetworkd = true; + systemd.network.enable = true; + systemd.network.networks."30-wan" = { + matchConfig.Name = cfg.networkMatchConfigName; + networkConfig.DHCP = "no"; + address = [ + "${cfg.ipv4}/${toString cfg.ipv4PrefixLength}" + "${cfg.ipv6}/${toString cfg.ipv6PrefixLength}" + ]; + routes = [ + { Gateway = cfg.ipv4Gateway; } + { Gateway = cfg.ipv6Gateway; } + ]; + }; + + networking.nameservers = [ "1.1.1.1" "8.8.8.8" ]; + } + (lib.mkIf cfg.enableDisko { + boot.loader.grub.device = cfg.device; + + disko.devices.disk.main = { + type = "disk"; + device = cfg.device; + content = { + type = "gpt"; + partitions = { + boot = { + size = "1M"; + type = "EF02"; + priority = 1; + }; + root = { + size = "100%"; + content = { + type = "filesystem"; + format = "ext4"; + mountpoint = "/"; + }; + }; + }; + }; + }; + }) + ]); +} diff --git a/package/default.nix b/package/default.nix index b012728b..9b6d23ef 100644 --- a/package/default.nix +++ b/package/default.nix @@ -149,6 +149,7 @@ in { deploy = pkgs.callPackage ./deploy { inherit inputs; }; element-web = pkgs.callPackage ./element-web {}; shellplot = pkgs.callPackage ./shellplot {}; + which-country-rs = pkgs.callPackage ./which-country-rs {}; onlinepubs2man = pkgs.callPackage ./onlinepubs2man {}; migrator = pkgs.callPackage ./migrator { inherit self; }; "parse-uri" = pkgs.callPackage ./parse-uri {}; diff --git a/package/which-country-rs/Cargo.lock b/package/which-country-rs/Cargo.lock new file mode 100644 index 00000000..4bdd7458 --- /dev/null +++ b/package/which-country-rs/Cargo.lock @@ -0,0 +1,1939 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 4 + +[[package]] +name = "anstream" +version = "0.6.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43d5b281e737544384e969a5ccad3f1cdd24b48086a0fc1b2a5262a26b8f4f4a" +dependencies = [ + "anstyle", + "anstyle-parse", + "anstyle-query", + "anstyle-wincon", + "colorchoice", + "is_terminal_polyfill", + "utf8parse", +] + +[[package]] +name = "anstyle" +version = "1.0.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5192cca8006f1fd4f7237516f40fa183bb07f8fbdfedaa0036de5ea9b0b45e78" + +[[package]] +name = "anstyle-parse" +version = "0.2.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4e7644824f0aa2c7b9384579234ef10eb7efb6a0deb83f9630a49594dd9c15c2" +dependencies = [ + "utf8parse", +] + +[[package]] +name = "anstyle-query" +version = "1.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "40c48f72fd53cd289104fc64099abca73db4166ad86ea0b4341abe65af83dadc" +dependencies = [ + "windows-sys 0.61.2", +] + +[[package]] +name = "anstyle-wincon" +version = "3.0.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "291e6a250ff86cd4a820112fb8898808a366d8f9f58ce16d1f538353ad55747d" +dependencies = [ + "anstyle", + "once_cell_polyfill", + "windows-sys 0.61.2", +] + +[[package]] +name = "atomic-waker" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" + +[[package]] +name = "aws-lc-rs" +version = "1.15.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b7b6141e96a8c160799cc2d5adecd5cbbe5054cb8c7c4af53da0f83bb7ad256" +dependencies = [ + "aws-lc-sys", + "zeroize", +] + +[[package]] +name = "aws-lc-sys" +version = "0.37.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b092fe214090261288111db7a2b2c2118e5a7f30dc2569f1732c4069a6840549" +dependencies = [ + "cc", + "cmake", + "dunce", + "fs_extra", +] + +[[package]] +name = "base64" +version = "0.22.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" + +[[package]] +name = "bitflags" +version = "2.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "843867be96c8daad0d758b57df9392b6d8d271134fce549de6ce169ff98a92af" + +[[package]] +name = "bumpalo" +version = "3.19.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5dd9dc738b7a8311c7ade152424974d8115f2cdad61e8dab8dac9f2362298510" + +[[package]] +name = "bytes" +version = "1.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e748733b7cbc798e1434b6ac524f0c1ff2ab456fe201501e6497c8417a4fc33" + +[[package]] +name = "cc" +version = "1.2.56" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aebf35691d1bfb0ac386a69bac2fde4dd276fb618cf8bf4f5318fe285e821bb2" +dependencies = [ + "find-msvc-tools", + "jobserver", + "libc", + "shlex", +] + +[[package]] +name = "cesu8" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" + +[[package]] +name = "cfg-if" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" + +[[package]] +name = "cfg_aliases" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" + +[[package]] +name = "clap" +version = "4.5.58" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "63be97961acde393029492ce0be7a1af7e323e6bae9511ebfac33751be5e6806" +dependencies = [ + "clap_builder", + "clap_derive", +] + +[[package]] +name = "clap_builder" +version = "4.5.58" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f13174bda5dfd69d7e947827e5af4b0f2f94a4a3ee92912fba07a66150f21e2" +dependencies = [ + "anstream", + "anstyle", + "clap_lex", + "strsim", +] + +[[package]] +name = "clap_derive" +version = "4.5.55" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a92793da1a46a5f2a02a6f4c46c6496b28c43638adea8306fcb0caa1634f24e5" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "clap_lex" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a822ea5bc7590f9d40f1ba12c0dc3c2760f3482c6984db1573ad11031420831" + +[[package]] +name = "cmake" +version = "0.1.57" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75443c44cd6b379beb8c5b45d85d0773baf31cce901fe7bb252f4eff3008ef7d" +dependencies = [ + "cc", +] + +[[package]] +name = "colorchoice" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b05b61dc5112cbb17e4b6cd61790d9845d13888356391624cbe7e41efeac1e75" + +[[package]] +name = "combine" +version = "4.6.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" +dependencies = [ + "bytes", + "memchr", +] + +[[package]] +name = "core-foundation" +version = "0.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "core-foundation" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2a6cd9ae233e7f62ba4e9353e81a88df7fc8a5987b8d445b4d90c879bd156f6" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "core-foundation-sys" +version = "0.8.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" + +[[package]] +name = "displaydoc" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "dunce" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" + +[[package]] +name = "encoding_rs" +version = "0.8.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75030f3c4f45dafd7586dd6780965a8c7e8e285a5ecb86713e63a79c5b2766f3" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "equivalent" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" + +[[package]] +name = "find-msvc-tools" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582" + +[[package]] +name = "fnv" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" + +[[package]] +name = "form_urlencoded" +version = "1.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb4cb245038516f5f85277875cdaa4f7d2c9a0fa0468de06ed190163b1581fcf" +dependencies = [ + "percent-encoding", +] + +[[package]] +name = "fs_extra" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42703706b716c37f96a77aea830392ad231f44c9e9a67872fa5548707e11b11c" + +[[package]] +name = "futures-channel" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10" +dependencies = [ + "futures-core", + "futures-sink", +] + +[[package]] +name = "futures-core" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e" + +[[package]] +name = "futures-io" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6" + +[[package]] +name = "futures-sink" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e575fab7d1e0dcb8d0c7bcf9a63ee213816ab51902e6d244a95819acacf1d4f7" + +[[package]] +name = "futures-task" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f90f7dce0722e95104fcb095585910c0977252f286e354b5e3bd38902cd99988" + +[[package]] +name = "futures-util" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81" +dependencies = [ + "futures-core", + "futures-io", + "futures-sink", + "futures-task", + "memchr", + "pin-project-lite", + "pin-utils", + "slab", +] + +[[package]] +name = "getrandom" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff2abc00be7fca6ebc474524697ae276ad847ad0a6b3faa4bcb027e9a4614ad0" +dependencies = [ + "cfg-if", + "js-sys", + "libc", + "wasi", + "wasm-bindgen", +] + +[[package]] +name = "getrandom" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd" +dependencies = [ + "cfg-if", + "js-sys", + "libc", + "r-efi", + "wasip2", + "wasm-bindgen", +] + +[[package]] +name = "h2" +version = "0.4.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2f44da3a8150a6703ed5d34e164b875fd14c2cdab9af1252a9a1020bde2bdc54" +dependencies = [ + "atomic-waker", + "bytes", + "fnv", + "futures-core", + "futures-sink", + "http", + "indexmap", + "slab", + "tokio", + "tokio-util", + "tracing", +] + +[[package]] +name = "hashbrown" +version = "0.16.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100" + +[[package]] +name = "heck" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" + +[[package]] +name = "http" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3ba2a386d7f85a81f119ad7498ebe444d2e22c2af0b86b069416ace48b3311a" +dependencies = [ + "bytes", + "itoa", +] + +[[package]] +name = "http-body" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" +dependencies = [ + "bytes", + "http", +] + +[[package]] +name = "http-body-util" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b021d93e26becf5dc7e1b75b1bed1fd93124b374ceb73f43d4d4eafec896a64a" +dependencies = [ + "bytes", + "futures-core", + "http", + "http-body", + "pin-project-lite", +] + +[[package]] +name = "httparse" +version = "1.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6dbf3de79e51f3d586ab4cb9d5c3e2c14aa28ed23d180cf89b4df0454a69cc87" + +[[package]] +name = "hyper" +version = "1.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2ab2d4f250c3d7b1c9fcdff1cece94ea4e2dfbec68614f7b87cb205f24ca9d11" +dependencies = [ + "atomic-waker", + "bytes", + "futures-channel", + "futures-core", + "h2", + "http", + "http-body", + "httparse", + "itoa", + "pin-project-lite", + "pin-utils", + "smallvec", + "tokio", + "want", +] + +[[package]] +name = "hyper-rustls" +version = "0.27.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3c93eb611681b207e1fe55d5a71ecf91572ec8a6705cdb6857f7d8d5242cf58" +dependencies = [ + "http", + "hyper", + "hyper-util", + "rustls", + "rustls-pki-types", + "tokio", + "tokio-rustls", + "tower-service", +] + +[[package]] +name = "hyper-util" +version = "0.1.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96547c2556ec9d12fb1578c4eaf448b04993e7fb79cbaad930a656880a6bdfa0" +dependencies = [ + "base64", + "bytes", + "futures-channel", + "futures-util", + "http", + "http-body", + "hyper", + "ipnet", + "libc", + "percent-encoding", + "pin-project-lite", + "socket2", + "system-configuration", + "tokio", + "tower-service", + "tracing", + "windows-registry", +] + +[[package]] +name = "icu_collections" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c6b649701667bbe825c3b7e6388cb521c23d88644678e83c0c4d0a621a34b43" +dependencies = [ + "displaydoc", + "potential_utf", + "yoke", + "zerofrom", + "zerovec", +] + +[[package]] +name = "icu_locale_core" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "edba7861004dd3714265b4db54a3c390e880ab658fec5f7db895fae2046b5bb6" +dependencies = [ + "displaydoc", + "litemap", + "tinystr", + "writeable", + "zerovec", +] + +[[package]] +name = "icu_normalizer" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f6c8828b67bf8908d82127b2054ea1b4427ff0230ee9141c54251934ab1b599" +dependencies = [ + "icu_collections", + "icu_normalizer_data", + "icu_properties", + "icu_provider", + "smallvec", + "zerovec", +] + +[[package]] +name = "icu_normalizer_data" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7aedcccd01fc5fe81e6b489c15b247b8b0690feb23304303a9e560f37efc560a" + +[[package]] +name = "icu_properties" +version = "2.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "020bfc02fe870ec3a66d93e677ccca0562506e5872c650f893269e08615d74ec" +dependencies = [ + "icu_collections", + "icu_locale_core", + "icu_properties_data", + "icu_provider", + "zerotrie", + "zerovec", +] + +[[package]] +name = "icu_properties_data" +version = "2.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "616c294cf8d725c6afcd8f55abc17c56464ef6211f9ed59cccffe534129c77af" + +[[package]] +name = "icu_provider" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85962cf0ce02e1e0a629cc34e7ca3e373ce20dda4c4d7294bbd0bf1fdb59e614" +dependencies = [ + "displaydoc", + "icu_locale_core", + "writeable", + "yoke", + "zerofrom", + "zerotrie", + "zerovec", +] + +[[package]] +name = "idna" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b0875f23caa03898994f6ddc501886a45c7d3d62d04d2d90788d47be1b1e4de" +dependencies = [ + "idna_adapter", + "smallvec", + "utf8_iter", +] + +[[package]] +name = "idna_adapter" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3acae9609540aa318d1bc588455225fb2085b9ed0c4f6bd0d9d5bcd86f1a0344" +dependencies = [ + "icu_normalizer", + "icu_properties", +] + +[[package]] +name = "indexmap" +version = "2.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7714e70437a7dc3ac8eb7e6f8df75fd8eb422675fc7678aff7364301092b1017" +dependencies = [ + "equivalent", + "hashbrown", +] + +[[package]] +name = "ipnet" +version = "2.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130" + +[[package]] +name = "iri-string" +version = "0.7.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c91338f0783edbd6195decb37bae672fd3b165faffb89bf7b9e6942f8b1a731a" +dependencies = [ + "memchr", + "serde", +] + +[[package]] +name = "is_terminal_polyfill" +version = "1.70.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a6cb138bb79a146c1bd460005623e142ef0181e3d0219cb493e02f7d08a35695" + +[[package]] +name = "itoa" +version = "1.0.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92ecc6618181def0457392ccd0ee51198e065e016d1d527a7ac1b6dc7c1f09d2" + +[[package]] +name = "jni" +version = "0.21.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97" +dependencies = [ + "cesu8", + "cfg-if", + "combine", + "jni-sys", + "log", + "thiserror 1.0.69", + "walkdir", + "windows-sys 0.45.0", +] + +[[package]] +name = "jni-sys" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" + +[[package]] +name = "jobserver" +version = "0.1.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9afb3de4395d6b3e67a780b6de64b51c978ecf11cb9a462c66be7d4ca9039d33" +dependencies = [ + "getrandom 0.3.4", + "libc", +] + +[[package]] +name = "js-sys" +version = "0.3.85" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c942ebf8e95485ca0d52d97da7c5a2c387d0e7f0ba4c35e93bfcaee045955b3" +dependencies = [ + "once_cell", + "wasm-bindgen", +] + +[[package]] +name = "libc" +version = "0.2.182" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6800badb6cb2082ffd7b6a67e6125bb39f18782f793520caee8cb8846be06112" + +[[package]] +name = "litemap" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6373607a59f0be73a39b6fe456b8192fcc3585f602af20751600e974dd455e77" + +[[package]] +name = "log" +version = "0.4.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e5032e24019045c762d3c0f28f5b6b8bbf38563a65908389bf7978758920897" + +[[package]] +name = "lru-slab" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "112b39cec0b298b6c1999fee3e31427f74f676e4cb9879ed1a121b43661a4154" + +[[package]] +name = "memchr" +version = "2.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8ca58f447f06ed17d5fc4043ce1b10dd205e060fb3ce5b979b8ed8e59ff3f79" + +[[package]] +name = "mime" +version = "0.3.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" + +[[package]] +name = "mio" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a69bcab0ad47271a0234d9422b131806bf3968021e5dc9328caf2d4cd58557fc" +dependencies = [ + "libc", + "wasi", + "windows-sys 0.61.2", +] + +[[package]] +name = "once_cell" +version = "1.21.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" + +[[package]] +name = "once_cell_polyfill" +version = "1.70.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe" + +[[package]] +name = "openssl-probe" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c87def4c32ab89d880effc9e097653c8da5d6ef28e6b539d313baaacfbafcbe" + +[[package]] +name = "percent-encoding" +version = "2.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220" + +[[package]] +name = "pin-project-lite" +version = "0.2.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b" + +[[package]] +name = "pin-utils" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" + +[[package]] +name = "potential_utf" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b73949432f5e2a09657003c25bca5e19a0e9c84f8058ca374f49e0ebe605af77" +dependencies = [ + "zerovec", +] + +[[package]] +name = "ppv-lite86" +version = "0.2.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9" +dependencies = [ + "zerocopy", +] + +[[package]] +name = "proc-macro2" +version = "1.0.106" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "quinn" +version = "0.11.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9e20a958963c291dc322d98411f541009df2ced7b5a4f2bd52337638cfccf20" +dependencies = [ + "bytes", + "cfg_aliases", + "pin-project-lite", + "quinn-proto", + "quinn-udp", + "rustc-hash", + "rustls", + "socket2", + "thiserror 2.0.18", + "tokio", + "tracing", + "web-time", +] + +[[package]] +name = "quinn-proto" +version = "0.11.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1906b49b0c3bc04b5fe5d86a77925ae6524a19b816ae38ce1e426255f1d8a31" +dependencies = [ + "aws-lc-rs", + "bytes", + "getrandom 0.3.4", + "lru-slab", + "rand", + "ring", + "rustc-hash", + "rustls", + "rustls-pki-types", + "slab", + "thiserror 2.0.18", + "tinyvec", + "tracing", + "web-time", +] + +[[package]] +name = "quinn-udp" +version = "0.5.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "addec6a0dcad8a8d96a771f815f0eaf55f9d1805756410b39f5fa81332574cbd" +dependencies = [ + "cfg_aliases", + "libc", + "once_cell", + "socket2", + "tracing", + "windows-sys 0.60.2", +] + +[[package]] +name = "quote" +version = "1.0.44" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "21b2ebcf727b7760c461f091f9f0f539b77b8e87f2fd88131e7f1b433b3cece4" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "r-efi" +version = "5.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f" + +[[package]] +name = "rand" +version = "0.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6db2770f06117d490610c7488547d543617b21bfa07796d7a12f6f1bd53850d1" +dependencies = [ + "rand_chacha", + "rand_core", +] + +[[package]] +name = "rand_chacha" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb" +dependencies = [ + "ppv-lite86", + "rand_core", +] + +[[package]] +name = "rand_core" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76afc826de14238e6e8c374ddcc1fa19e374fd8dd986b0d2af0d02377261d83c" +dependencies = [ + "getrandom 0.3.4", +] + +[[package]] +name = "reqwest" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ab3f43e3283ab1488b624b44b0e988d0acea0b3214e694730a055cb6b2efa801" +dependencies = [ + "base64", + "bytes", + "encoding_rs", + "futures-channel", + "futures-core", + "futures-util", + "h2", + "http", + "http-body", + "http-body-util", + "hyper", + "hyper-rustls", + "hyper-util", + "js-sys", + "log", + "mime", + "percent-encoding", + "pin-project-lite", + "quinn", + "rustls", + "rustls-pki-types", + "rustls-platform-verifier", + "serde", + "serde_json", + "sync_wrapper", + "tokio", + "tokio-rustls", + "tower", + "tower-http", + "tower-service", + "url", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] + +[[package]] +name = "ring" +version = "0.17.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4689e6c2294d81e88dc6261c768b63bc4fcdb852be6d1352498b114f61383b7" +dependencies = [ + "cc", + "cfg-if", + "getrandom 0.2.17", + "libc", + "untrusted", + "windows-sys 0.52.0", +] + +[[package]] +name = "rustc-hash" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d" + +[[package]] +name = "rustls" +version = "0.23.36" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c665f33d38cea657d9614f766881e4d510e0eda4239891eea56b4cadcf01801b" +dependencies = [ + "aws-lc-rs", + "once_cell", + "rustls-pki-types", + "rustls-webpki", + "subtle", + "zeroize", +] + +[[package]] +name = "rustls-native-certs" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "612460d5f7bea540c490b2b6395d8e34a953e52b491accd6c86c8164c5932a63" +dependencies = [ + "openssl-probe", + "rustls-pki-types", + "schannel", + "security-framework", +] + +[[package]] +name = "rustls-pki-types" +version = "1.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be040f8b0a225e40375822a563fa9524378b9d63112f53e19ffff34df5d33fdd" +dependencies = [ + "web-time", + "zeroize", +] + +[[package]] +name = "rustls-platform-verifier" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d99feebc72bae7ab76ba994bb5e121b8d83d910ca40b36e0921f53becc41784" +dependencies = [ + "core-foundation 0.10.1", + "core-foundation-sys", + "jni", + "log", + "once_cell", + "rustls", + "rustls-native-certs", + "rustls-platform-verifier-android", + "rustls-webpki", + "security-framework", + "security-framework-sys", + "webpki-root-certs", + "windows-sys 0.61.2", +] + +[[package]] +name = "rustls-platform-verifier-android" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f87165f0995f63a9fbeea62b64d10b4d9d8e78ec6d7d51fb2125fda7bb36788f" + +[[package]] +name = "rustls-webpki" +version = "0.103.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d7df23109aa6c1567d1c575b9952556388da57401e4ace1d15f79eedad0d8f53" +dependencies = [ + "aws-lc-rs", + "ring", + "rustls-pki-types", + "untrusted", +] + +[[package]] +name = "rustversion" +version = "1.0.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" + +[[package]] +name = "same-file" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "schannel" +version = "0.1.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "891d81b926048e76efe18581bf793546b4c0eaf8448d72be8de2bbee5fd166e1" +dependencies = [ + "windows-sys 0.61.2", +] + +[[package]] +name = "security-framework" +version = "3.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d17b898a6d6948c3a8ee4372c17cb384f90d2e6e912ef00895b14fd7ab54ec38" +dependencies = [ + "bitflags", + "core-foundation 0.10.1", + "core-foundation-sys", + "libc", + "security-framework-sys", +] + +[[package]] +name = "security-framework-sys" +version = "2.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "321c8673b092a9a42605034a9879d73cb79101ed5fd117bc9a597b89b4e9e61a" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "serde" +version = "1.0.228" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" +dependencies = [ + "serde_core", + "serde_derive", +] + +[[package]] +name = "serde_core" +version = "1.0.228" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_derive" +version = "1.0.228" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "serde_json" +version = "1.0.149" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "83fc039473c5595ace860d8c4fafa220ff474b3fc6bfdb4293327f1a37e94d86" +dependencies = [ + "itoa", + "memchr", + "serde", + "serde_core", + "zmij", +] + +[[package]] +name = "shlex" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" + +[[package]] +name = "slab" +version = "0.4.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c790de23124f9ab44544d7ac05d60440adc586479ce501c1d6d7da3cd8c9cf5" + +[[package]] +name = "smallvec" +version = "1.15.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03" + +[[package]] +name = "socket2" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86f4aa3ad99f2088c990dfa82d367e19cb29268ed67c574d10d0a4bfe71f07e0" +dependencies = [ + "libc", + "windows-sys 0.60.2", +] + +[[package]] +name = "stable_deref_trait" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596" + +[[package]] +name = "strsim" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" + +[[package]] +name = "subtle" +version = "2.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" + +[[package]] +name = "syn" +version = "2.0.115" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e614ed320ac28113fa64972c4262d5dbc89deacdfd00c34a3e4cea073243c12" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "sync_wrapper" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0bf256ce5efdfa370213c1dabab5935a12e49f2c58d15e9eac2870d3b4f27263" +dependencies = [ + "futures-core", +] + +[[package]] +name = "synstructure" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "system-configuration" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a13f3d0daba03132c0aa9767f98351b3488edc2c100cda2d2ec2b04f3d8d3c8b" +dependencies = [ + "bitflags", + "core-foundation 0.9.4", + "system-configuration-sys", +] + +[[package]] +name = "system-configuration-sys" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e1d1b10ced5ca923a1fcb8d03e96b8d3268065d724548c0211415ff6ac6bac4" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "thiserror" +version = "1.0.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52" +dependencies = [ + "thiserror-impl 1.0.69", +] + +[[package]] +name = "thiserror" +version = "2.0.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4288b5bcbc7920c07a1149a35cf9590a2aa808e0bc1eafaade0b80947865fbc4" +dependencies = [ + "thiserror-impl 2.0.18", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "thiserror-impl" +version = "2.0.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ebc4ee7f67670e9b64d05fa4253e753e016c6c95ff35b89b7941d6b856dec1d5" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "tinystr" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42d3e9c45c09de15d06dd8acf5f4e0e399e85927b7f00711024eb7ae10fa4869" +dependencies = [ + "displaydoc", + "zerovec", +] + +[[package]] +name = "tinyvec" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfa5fdc3bce6191a1dbc8c02d5c8bffcf557bafa17c124c5264a458f1b0613fa" +dependencies = [ + "tinyvec_macros", +] + +[[package]] +name = "tinyvec_macros" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" + +[[package]] +name = "tokio" +version = "1.49.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72a2903cd7736441aac9df9d7688bd0ce48edccaadf181c3b90be801e81d3d86" +dependencies = [ + "bytes", + "libc", + "mio", + "pin-project-lite", + "socket2", + "windows-sys 0.61.2", +] + +[[package]] +name = "tokio-rustls" +version = "0.26.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1729aa945f29d91ba541258c8df89027d5792d85a8841fb65e8bf0f4ede4ef61" +dependencies = [ + "rustls", + "tokio", +] + +[[package]] +name = "tokio-util" +version = "0.7.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ae9cec805b01e8fc3fd2fe289f89149a9b66dd16786abd8b19cfa7b48cb0098" +dependencies = [ + "bytes", + "futures-core", + "futures-sink", + "pin-project-lite", + "tokio", +] + +[[package]] +name = "tower" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ebe5ef63511595f1344e2d5cfa636d973292adc0eec1f0ad45fae9f0851ab1d4" +dependencies = [ + "futures-core", + "futures-util", + "pin-project-lite", + "sync_wrapper", + "tokio", + "tower-layer", + "tower-service", +] + +[[package]] +name = "tower-http" +version = "0.6.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d4e6559d53cc268e5031cd8429d05415bc4cb4aefc4aa5d6cc35fbf5b924a1f8" +dependencies = [ + "bitflags", + "bytes", + "futures-util", + "http", + "http-body", + "iri-string", + "pin-project-lite", + "tower", + "tower-layer", + "tower-service", +] + +[[package]] +name = "tower-layer" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "121c2a6cda46980bb0fcd1647ffaf6cd3fc79a013de288782836f6df9c48780e" + +[[package]] +name = "tower-service" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" + +[[package]] +name = "tracing" +version = "0.1.44" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "63e71662fa4b2a2c3a26f570f037eb95bb1f85397f3cd8076caed2f026a6d100" +dependencies = [ + "pin-project-lite", + "tracing-core", +] + +[[package]] +name = "tracing-core" +version = "0.1.36" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db97caf9d906fbde555dd62fa95ddba9eecfd14cb388e4f491a66d74cd5fb79a" +dependencies = [ + "once_cell", +] + +[[package]] +name = "try-lock" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" + +[[package]] +name = "unicode-ident" +version = "1.0.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "537dd038a89878be9b64dd4bd1b260315c1bb94f4d784956b81e27a088d9a09e" + +[[package]] +name = "untrusted" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" + +[[package]] +name = "url" +version = "2.5.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff67a8a4397373c3ef660812acab3268222035010ab8680ec4215f38ba3d0eed" +dependencies = [ + "form_urlencoded", + "idna", + "percent-encoding", + "serde", +] + +[[package]] +name = "utf8_iter" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" + +[[package]] +name = "utf8parse" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" + +[[package]] +name = "walkdir" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" +dependencies = [ + "same-file", + "winapi-util", +] + +[[package]] +name = "want" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" +dependencies = [ + "try-lock", +] + +[[package]] +name = "wasi" +version = "0.11.1+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" + +[[package]] +name = "wasip2" +version = "1.0.2+wasi-0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9517f9239f02c069db75e65f174b3da828fe5f5b945c4dd26bd25d89c03ebcf5" +dependencies = [ + "wit-bindgen", +] + +[[package]] +name = "wasm-bindgen" +version = "0.2.108" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "64024a30ec1e37399cf85a7ffefebdb72205ca1c972291c51512360d90bd8566" +dependencies = [ + "cfg-if", + "once_cell", + "rustversion", + "wasm-bindgen-macro", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-futures" +version = "0.4.58" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70a6e77fd0ae8029c9ea0063f87c46fde723e7d887703d74ad2616d792e51e6f" +dependencies = [ + "cfg-if", + "futures-util", + "js-sys", + "once_cell", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "wasm-bindgen-macro" +version = "0.2.108" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "008b239d9c740232e71bd39e8ef6429d27097518b6b30bdf9086833bd5b6d608" +dependencies = [ + "quote", + "wasm-bindgen-macro-support", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.108" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5256bae2d58f54820e6490f9839c49780dff84c65aeab9e772f15d5f0e913a55" +dependencies = [ + "bumpalo", + "proc-macro2", + "quote", + "syn", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.108" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f01b580c9ac74c8d8f0c0e4afb04eeef2acf145458e52c03845ee9cd23e3d12" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "web-sys" +version = "0.3.85" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "312e32e551d92129218ea9a2452120f4aabc03529ef03e4d0d82fb2780608598" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "web-time" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "webpki-root-certs" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "804f18a4ac2676ffb4e8b5b5fa9ae38af06df08162314f96a68d2a363e21a8ca" +dependencies = [ + "rustls-pki-types", +] + +[[package]] +name = "which-country-rs" +version = "1.0.0" +dependencies = [ + "clap", + "reqwest", + "serde", + "serde_json", +] + +[[package]] +name = "winapi-util" +version = "0.1.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" +dependencies = [ + "windows-sys 0.61.2", +] + +[[package]] +name = "windows-link" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" + +[[package]] +name = "windows-registry" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "02752bf7fbdcce7f2a27a742f798510f3e5ad88dbe84871e5168e2120c3d5720" +dependencies = [ + "windows-link", + "windows-result", + "windows-strings", +] + +[[package]] +name = "windows-result" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7781fa89eaf60850ac3d2da7af8e5242a5ea78d1a11c49bf2910bb5a73853eb5" +dependencies = [ + "windows-link", +] + +[[package]] +name = "windows-strings" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7837d08f69c77cf6b07689544538e017c1bfcf57e34b4c0ff58e6c2cd3b37091" +dependencies = [ + "windows-link", +] + +[[package]] +name = "windows-sys" +version = "0.45.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" +dependencies = [ + "windows-targets 0.42.2", +] + +[[package]] +name = "windows-sys" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-sys" +version = "0.60.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" +dependencies = [ + "windows-targets 0.53.5", +] + +[[package]] +name = "windows-sys" +version = "0.61.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc" +dependencies = [ + "windows-link", +] + +[[package]] +name = "windows-targets" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" +dependencies = [ + "windows_aarch64_gnullvm 0.42.2", + "windows_aarch64_msvc 0.42.2", + "windows_i686_gnu 0.42.2", + "windows_i686_msvc 0.42.2", + "windows_x86_64_gnu 0.42.2", + "windows_x86_64_gnullvm 0.42.2", + "windows_x86_64_msvc 0.42.2", +] + +[[package]] +name = "windows-targets" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" +dependencies = [ + "windows_aarch64_gnullvm 0.52.6", + "windows_aarch64_msvc 0.52.6", + "windows_i686_gnu 0.52.6", + "windows_i686_gnullvm 0.52.6", + "windows_i686_msvc 0.52.6", + "windows_x86_64_gnu 0.52.6", + "windows_x86_64_gnullvm 0.52.6", + "windows_x86_64_msvc 0.52.6", +] + +[[package]] +name = "windows-targets" +version = "0.53.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4945f9f551b88e0d65f3db0bc25c33b8acea4d9e41163edf90dcd0b19f9069f3" +dependencies = [ + "windows-link", + "windows_aarch64_gnullvm 0.53.1", + "windows_aarch64_msvc 0.53.1", + "windows_i686_gnu 0.53.1", + "windows_i686_gnullvm 0.53.1", + "windows_i686_msvc 0.53.1", + "windows_x86_64_gnu 0.53.1", + "windows_x86_64_gnullvm 0.53.1", + "windows_x86_64_msvc 0.53.1", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a9d8416fa8b42f5c947f8482c43e7d89e73a173cead56d044f6a56104a6d1b53" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9d782e804c2f632e395708e99a94275910eb9100b2114651e04744e9b125006" + +[[package]] +name = "windows_i686_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" + +[[package]] +name = "windows_i686_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" + +[[package]] +name = "windows_i686_gnu" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "960e6da069d81e09becb0ca57a65220ddff016ff2d6af6a223cf372a506593a3" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa7359d10048f68ab8b09fa71c3daccfb0e9b559aed648a8f95469c27057180c" + +[[package]] +name = "windows_i686_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" + +[[package]] +name = "windows_i686_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" + +[[package]] +name = "windows_i686_msvc" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e7ac75179f18232fe9c285163565a57ef8d3c89254a30685b57d83a38d326c2" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c3842cdd74a865a8066ab39c8a7a473c0778a3f29370b5fd6b4b9aa7df4a499" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ffa179e2d07eee8ad8f57493436566c7cc30ac536a3379fdf008f47f6bb7ae1" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6bbff5f0aada427a1e5a6da5f1f98158182f26556f345ac9e04d36d0ebed650" + +[[package]] +name = "wit-bindgen" +version = "0.51.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d7249219f66ced02969388cf2bb044a09756a083d0fab1e566056b04d9fbcaa5" + +[[package]] +name = "writeable" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9edde0db4769d2dc68579893f2306b26c6ecfbe0ef499b013d731b7b9247e0b9" + +[[package]] +name = "yoke" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72d6e5c6afb84d73944e5cedb052c4680d5657337201555f9f2a16b7406d4954" +dependencies = [ + "stable_deref_trait", + "yoke-derive", + "zerofrom", +] + +[[package]] +name = "yoke-derive" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b659052874eb698efe5b9e8cf382204678a0086ebf46982b79d6ca3182927e5d" +dependencies = [ + "proc-macro2", + "quote", + "syn", + "synstructure", +] + +[[package]] +name = "zerocopy" +version = "0.8.39" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db6d35d663eadb6c932438e763b262fe1a70987f9ae936e60158176d710cae4a" +dependencies = [ + "zerocopy-derive", +] + +[[package]] +name = "zerocopy-derive" +version = "0.8.39" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4122cd3169e94605190e77839c9a40d40ed048d305bfdc146e7df40ab0f3e517" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "zerofrom" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "50cc42e0333e05660c3587f3bf9d0478688e15d870fab3346451ce7f8c9fbea5" +dependencies = [ + "zerofrom-derive", +] + +[[package]] +name = "zerofrom-derive" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502" +dependencies = [ + "proc-macro2", + "quote", + "syn", + "synstructure", +] + +[[package]] +name = "zeroize" +version = "1.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b97154e67e32c85465826e8bcc1c59429aaaf107c1e4a9e53c8d8ccd5eff88d0" + +[[package]] +name = "zerotrie" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2a59c17a5562d507e4b54960e8569ebee33bee890c70aa3fe7b97e85a9fd7851" +dependencies = [ + "displaydoc", + "yoke", + "zerofrom", +] + +[[package]] +name = "zerovec" +version = "0.11.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c28719294829477f525be0186d13efa9a3c602f7ec202ca9e353d310fb9a002" +dependencies = [ + "yoke", + "zerofrom", + "zerovec-derive", +] + +[[package]] +name = "zerovec-derive" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eadce39539ca5cb3985590102671f2567e659fca9666581ad3411d59207951f3" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "zmij" +version = "1.0.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa" diff --git a/package/which-country-rs/Cargo.toml b/package/which-country-rs/Cargo.toml new file mode 100644 index 00000000..a8e376de --- /dev/null +++ b/package/which-country-rs/Cargo.toml @@ -0,0 +1,19 @@ +[package] +name = "which-country-rs" +version = "1.0.0" +edition = "2024" +description = "CLI tool that detects your country by IP and renders an ASCII map" +license = "MIT" +repository = "https://github.com/krisfur/which-country-rs" +keywords = ["cli", "geolocation", "ascii", "map"] +categories = ["command-line-utilities"] + +[features] +default = ["geoip"] +geoip = ["reqwest"] + +[dependencies] +clap = { version = "4", features = ["derive"] } +reqwest = { version = "0.13", features = ["blocking", "json"], optional = true } +serde = { version = "1", features = ["derive"] } +serde_json = "1" diff --git a/package/which-country-rs/LICENSE b/package/which-country-rs/LICENSE new file mode 100644 index 00000000..eca2c466 --- /dev/null +++ b/package/which-country-rs/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2026 Krzysztof Furman + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/package/which-country-rs/README.md b/package/which-country-rs/README.md new file mode 100644 index 00000000..bde3521c --- /dev/null +++ b/package/which-country-rs/README.md @@ -0,0 +1,83 @@ +# which-country-rs + +A CLI tool that detects your country from your IP address and renders an ASCII map zoomed into it, showing neighbouring borders and country codes. + +## Example output + +```bash +which-country-rs -c DE +``` + +``` +You appear to be in: Germany (DE) + + ·········· ·· ······ · · + · NO · ·· · ··· + · · ···· ··· ··········· + · ····· ·· ············ + ····· ········ · ·· ···EE · + · ······ ······ ·· · LV····· ····· + ·· ··· ·DK ·· ··· ···· ··········· ··· + ···· ··· ··· · · ··· ···· ··· LT ···· ··· +· ····· ···· ··· ############ ··················· ··· +IE ·· ····GB · ·····##### ## ## ···· BY +· ·· ·· ··· ·NL # ## ·· +··· ····· ·· ····· ## # PL ············· + ····················BE ··# DE #######····· ···· + · ······· ···L## ### CZ ····· ······ + ······· #### ###·········SK ······· ·· + ····· ·###### ###### AT ········ ··············· + ·· FR ··· CH ··#·············· HU ·· MD·· + · · ····· · ····SI··· ········· RO ···· + · · · ···HR········ RS···· ··· +········ ·· · ········ IT ··· ·····BA ·· ·············· +· ·· ········· ·········· ·· · · ···ME··XK···· ·· +····· ··· · ·· · ··· ···· ·· ··MK·· ·BG ····· +· ·· ····· ··· ····· ···· ·AL············ ······ +· ·· ES · · · ·· ····· ···· ···· ······ + +Coordinates: 51.15°N, 10.55°E +``` + +## Usage + +``` +# Auto-detect from IP +which-country-rs + +# Specify a country code +which-country-rs -c JP + +# Specify coordinates (supports negative values for south/west) +which-country-rs --lat 40 --lon -74 + +# Custom map size +which-country-rs -W 120 -H 40 +``` + +### Options + +| Flag | Description | Default | +|------|-------------|---------| +| `-W, --width` | Map width in characters | 80 | +| `-H, --height` | Map height in characters | 24 | +| `-c, --country` | ISO 3166-1 alpha-2 country code (skips IP lookup) | | +| `--lat` | Latitude (requires `--lon`) | | +| `--lon` | Longitude (requires `--lat`) | | +| `-V, --version` | Print version | | + +## Building + +``` +cargo build --release +``` + +To build without IP geolocation support (drops the `reqwest` dependency): + +``` +cargo build --release --no-default-features +``` + +## Map data + +Country borders from [Natural Earth](https://www.naturalearthdata.com/) 110m admin-0 countries (public domain). diff --git a/package/which-country-rs/data/countries.geojson b/package/which-country-rs/data/countries.geojson new file mode 100644 index 00000000..dde6e419 --- /dev/null +++ b/package/which-country-rs/data/countries.geojson @@ -0,0 +1 @@ +{"type":"FeatureCollection","features":[{"type":"Feature","properties":{"ISO_A2_EH":"FJ","NAME":"Fiji"},"geometry":{"type":"MultiPolygon","coordinates":[[[[180,-16.1],[180,-16.6],[179.4,-16.8],[178.7,-17.0],[178.6,-16.6],[179.1,-16.4],[179.4,-16.4],[180,-16.1]]],[[[178.1,-17.5],[178.4,-17.3],[178.7,-17.6],[178.6,-18.2],[177.9,-18.3],[177.4,-18.2],[177.3,-17.7],[177.7,-17.4],[178.1,-17.5]]],[[[-179.8,-16.0],[-179.9,-16.5],[-180,-16.6],[-180,-16.1],[-179.8,-16.0]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"TZ","NAME":"Tanzania"},"geometry":{"type":"Polygon","coordinates":[[[33.9,-0.9],[34.1,-1.1],[37.7,-3.1],[37.8,-3.7],[39.2,-4.7],[38.7,-5.9],[38.8,-6.5],[39.4,-6.8],[39.5,-7.1],[39.2,-7.7],[39.3,-8.0],[39.2,-8.5],[39.5,-9.1],[39.9,-10.1],[40.3,-10.3],[40.3,-10.3],[39.5,-10.9],[38.4,-11.3],[37.8,-11.3],[37.5,-11.6],[36.8,-11.6],[36.5,-11.7],[35.3,-11.4],[34.6,-11.5],[34.3,-10.2],[33.9,-9.7],[33.7,-9.4],[32.8,-9.2],[32.2,-8.9],[31.6,-8.8],[31.2,-8.6],[30.7,-8.3],[30.7,-8.3],[30.2,-7.1],[29.6,-6.5],[29.4,-5.9],[29.5,-5.4],[29.3,-4.5],[29.8,-4.5],[30.1,-4.1],[30.5,-3.6],[30.8,-3.4],[30.7,-3.0],[30.5,-2.8],[30.5,-2.4],[30.5,-2.4],[30.8,-2.3],[30.8,-1.7],[30.4,-1.1],[30.8,-1.0],[31.9,-1.0],[33.9,-0.9]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"EH","NAME":"W. Sahara"},"geometry":{"type":"Polygon","coordinates":[[[-8.7,27.7],[-8.7,27.6],[-8.7,27.4],[-8.7,25.9],[-12.0,25.9],[-11.9,23.4],[-12.9,23.3],[-13.1,22.8],[-12.9,21.3],[-16.8,21.3],[-17.1,21.0],[-17.0,21.4],[-17.0,21.4],[-14.8,21.5],[-14.6,21.9],[-14.2,22.3],[-13.9,23.7],[-12.5,24.8],[-12.0,26.0],[-11.7,26.1],[-11.4,26.9],[-10.6,27.0],[-10.2,26.9],[-9.7,26.9],[-9.4,27.1],[-8.8,27.1],[-8.8,27.7],[-8.7,27.7]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"CA","NAME":"Canada"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-122.8,49],[-123.0,49.0],[-124.9,50.0],[-125.6,50.4],[-127.4,50.8],[-128.0,51.7],[-127.9,52.3],[-129.1,52.8],[-129.3,53.6],[-130.5,54.3],[-130.5,54.8],[-130.5,54.8],[-130.0,55.3],[-130.0,55.9],[-131.7,56.6],[-132.7,57.7],[-133.4,58.4],[-134.3,58.9],[-134.9,59.3],[-135.5,59.8],[-136.5,59.5],[-137.5,58.9],[-138.3,59.6],[-139.0,60],[-140.0,60.3],[-141.0,60.3],[-141.0,66.0],[-141.0,69.7],[-141.0,69.7],[-139.1,69.5],[-137.5,69.0],[-136.5,68.9],[-135.6,69.3],[-134.4,69.6],[-132.9,69.5],[-131.4,69.9],[-129.8,70.2],[-129.1,69.8],[-128.4,70.0],[-128.1,70.5],[-127.4,70.4],[-125.8,69.5],[-124.4,70.2],[-124.3,69.4],[-123.1,69.6],[-122.7,69.9],[-121.5,69.8],[-119.9,69.4],[-117.6,69.0],[-116.2,68.8],[-115.2,68.9],[-113.9,68.4],[-115.3,67.9],[-113.5,67.7],[-110.8,67.8],[-109.9,68.0],[-108.9,67.4],[-107.8,67.9],[-108.8,68.3],[-108.2,68.7],[-107.0,68.7],[-106.2,68.8],[-105.3,68.6],[-104.3,68.0],[-103.2,68.1],[-101.5,67.6],[-99.9,67.8],[-98.4,67.8],[-98.6,68.4],[-97.7,68.6],[-96.1,68.2],[-96.1,67.3],[-95.5,68.1],[-94.7,68.1],[-94.2,69.1],[-95.3,69.7],[-96.5,70.1],[-96.4,71.2],[-95.2,71.9],[-93.9,71.8],[-92.9,71.3],[-91.5,70.2],[-92.4,69.7],[-90.5,69.5],[-90.6,68.5],[-89.2,69.3],[-88.0,68.6],[-88.3,67.9],[-87.4,67.2],[-86.3,67.9],[-85.6,68.8],[-85.5,69.9],[-84.1,69.8],[-82.6,69.7],[-81.3,69.2],[-81.2,68.7],[-82.0,68.1],[-81.3,67.6],[-81.4,67.1],[-83.3,66.4],[-84.7,66.3],[-85.8,66.6],[-86.1,66.1],[-87.0,65.2],[-87.3,64.8],[-88.5,64.1],[-89.9,64.0],[-90.7,63.6],[-90.8,63.0],[-91.9,62.8],[-93.2,62.0],[-94.2,60.9],[-94.6,60.1],[-94.7,58.9],[-93.2,58.8],[-92.8,57.8],[-92.3,57.1],[-90.9,57.3],[-89.0,56.9],[-88.0,56.5],[-87.3,56.0],[-86.1,55.7],[-85.0,55.3],[-83.4,55.2],[-82.3,55.1],[-82.4,54.3],[-82.1,53.3],[-81.4,52.2],[-79.9,51.2],[-79.1,51.5],[-78.6,52.6],[-79.1,54.1],[-79.8,54.7],[-78.2,55.1],[-77.1,55.8],[-76.5,56.5],[-76.6,57.2],[-77.3,58.1],[-78.5,58.8],[-77.3,59.9],[-77.8,60.8],[-78.1,62.3],[-77.4,62.6],[-75.7,62.3],[-74.7,62.2],[-73.8,62.4],[-72.9,62.1],[-71.7,61.5],[-71.4,61.1],[-69.6,61.1],[-69.6,60.2],[-69.3,59.0],[-68.4,58.8],[-67.6,58.2],[-66.2,58.8],[-65.2,59.9],[-64.6,60.3],[-63.8,59.4],[-62.5,58.2],[-61.4,57.0],[-61.8,56.3],[-60.5,55.8],[-59.6,55.2],[-58.0,54.9],[-57.3,54.6],[-56.9,53.8],[-56.2,53.6],[-55.8,53.3],[-55.7,52.1],[-56.4,51.8],[-57.1,51.4],[-58.8,51.1],[-60.0,50.2],[-61.7,50.1],[-63.9,50.3],[-65.4,50.3],[-66.4,50.2],[-67.2,49.5],[-68.5,49.1],[-70.0,47.7],[-71.1,46.8],[-70.3,47.0],[-68.7,48.3],[-66.6,49.1],[-65.1,49.2],[-64.2,48.7],[-65.1,48.1],[-64.8,47.0],[-64.5,46.2],[-63.2,45.7],[-61.5,45.9],[-60.5,47.0],[-60.4,46.3],[-59.8,45.9],[-61.0,45.3],[-63.3,44.7],[-64.2,44.3],[-65.4,43.5],[-66.1,43.6],[-66.2,44.5],[-64.4,45.3],[-66.0,45.3],[-67.1,45.1],[-67.8,45.7],[-67.8,47.1],[-68.2,47.4],[-68.9,47.2],[-69.2,47.4],[-70.0,46.7],[-70.3,45.9],[-70.7,45.5],[-71.1,45.3],[-71.4,45.3],[-71.5,45.0],[-73.3,45.0],[-74.9,45.0],[-75.3,44.8],[-76.4,44.1],[-76.5,44.0],[-76.8,43.6],[-77.7,43.6],[-78.7,43.6],[-79.2,43.5],[-79.0,43.3],[-78.9,43.0],[-78.9,42.9],[-80.2,42.4],[-81.3,42.2],[-82.4,41.7],[-82.7,41.7],[-83.0,41.8],[-83.1,42.0],[-83.1,42.1],[-82.9,42.4],[-82.4,43.0],[-82.1,43.6],[-82.3,44.4],[-82.6,45.3],[-83.6,45.8],[-83.5,46.0],[-83.6,46.1],[-83.9,46.1],[-84.1,46.3],[-84.1,46.5],[-84.3,46.4],[-84.6,46.4],[-84.5,46.5],[-84.8,46.6],[-84.9,46.9],[-85.7,47.2],[-86.5,47.6],[-87.4,47.9],[-88.4,48.3],[-89.3,48.0],[-89.6,48.0],[-90.8,48.3],[-91.6,48.1],[-92.6,48.5],[-93.6,48.6],[-94.3,48.7],[-94.6,48.8],[-94.8,49.4],[-95.2,49.4],[-95.2,49],[-97.2,49.0],[-100.7,49],[-104.0,49.0],[-107.0,49],[-110.0,49],[-113,49],[-116.0,49],[-117.0,49],[-120,49],[-122.8,49]]],[[[-84.0,62.5],[-83.3,62.9],[-81.9,62.9],[-81.9,62.7],[-83.1,62.2],[-83.8,62.2],[-84.0,62.5]]],[[[-79.8,72.8],[-80.9,73.3],[-80.8,73.7],[-80.4,73.8],[-78.1,73.7],[-76.3,73.1],[-76.3,72.8],[-77.3,72.9],[-78.4,72.9],[-79.5,72.7],[-79.8,72.8]]],[[[-80.3,62.1],[-79.9,62.4],[-79.5,62.4],[-79.3,62.2],[-79.7,61.6],[-80.1,61.7],[-80.4,62.0],[-80.3,62.1]]],[[[-93.6,75.0],[-94.2,74.6],[-95.6,74.7],[-96.8,74.9],[-96.3,75.4],[-94.9,75.6],[-94.0,75.3],[-93.6,75.0]]],[[[-93.8,77.5],[-94.3,77.5],[-96.2,77.6],[-96.4,77.8],[-94.4,77.8],[-93.7,77.6],[-93.8,77.5]]],[[[-96.8,78.8],[-95.6,78.4],[-95.8,78.1],[-97.3,77.9],[-98.1,78.1],[-98.6,78.5],[-98.6,78.9],[-97.3,78.8],[-96.8,78.8]]],[[[-88.2,74.4],[-89.8,74.5],[-92.4,74.8],[-92.8,75.4],[-92.9,75.9],[-93.9,76.3],[-96.0,76.4],[-97.1,76.8],[-96.7,77.2],[-94.7,77.1],[-93.6,76.8],[-91.6,76.8],[-90.7,76.4],[-91.0,76.1],[-89.8,75.8],[-89.2,75.6],[-87.8,75.6],[-86.4,75.5],[-84.8,75.7],[-82.8,75.8],[-81.1,75.7],[-80.1,75.3],[-79.8,74.9],[-80.5,74.7],[-81.9,74.4],[-83.2,74.6],[-86.1,74.4],[-88.2,74.4]]],[[[-111.3,78.2],[-109.9,78.0],[-110.2,77.7],[-112.1,77.4],[-113.5,77.7],[-112.7,78.1],[-111.3,78.2]]],[[[-111.0,78.8],[-109.7,78.6],[-110.9,78.4],[-112.5,78.4],[-112.5,78.6],[-111.5,78.8],[-111.0,78.8]]],[[[-55.6,51.3],[-56.1,50.7],[-56.8,49.8],[-56.1,50.2],[-55.5,49.9],[-55.8,49.6],[-54.9,49.3],[-54.5,49.6],[-53.5,49.2],[-53.8,48.5],[-53.1,48.7],[-53.0,48.2],[-52.6,47.5],[-53.1,46.7],[-53.5,46.6],[-54.2,46.8],[-54.0,47.6],[-54.2,47.8],[-55.4,46.9],[-56.0,46.9],[-55.3,47.4],[-56.3,47.6],[-57.3,47.6],[-59.3,47.6],[-59.4,47.9],[-58.8,48.3],[-59.2,48.5],[-58.4,49.1],[-57.4,50.7],[-56.7,51.3],[-55.9,51.6],[-55.4,51.6],[-55.6,51.3]]],[[[-83.9,65.1],[-82.8,64.8],[-81.6,64.5],[-81.6,64.0],[-80.8,64.1],[-80.1,63.7],[-81.0,63.4],[-82.5,63.7],[-83.1,64.1],[-84.1,63.6],[-85.5,63.1],[-85.9,63.6],[-87.2,63.5],[-86.4,64.0],[-86.2,64.8],[-85.9,65.7],[-85.2,65.7],[-85.0,65.2],[-84.5,65.4],[-83.9,65.1]]],[[[-78.8,72.4],[-77.8,72.7],[-75.6,72.2],[-74.2,71.8],[-74.1,71.3],[-72.2,71.6],[-71.2,70.9],[-68.8,70.5],[-67.9,70.1],[-67.0,69.2],[-68.8,68.7],[-66.4,68.1],[-64.9,67.8],[-63.4,66.9],[-61.9,66.9],[-62.2,66.2],[-63.9,65.0],[-65.1,65.4],[-66.7,66.4],[-68.0,66.3],[-68.1,65.7],[-67.1,65.1],[-65.7,64.6],[-65.3,64.4],[-64.7,63.4],[-65.0,62.7],[-66.3,62.9],[-68.8,63.7],[-67.4,62.9],[-66.3,62.3],[-66.2,61.9],[-68.9,62.3],[-71.0,62.9],[-72.2,63.4],[-71.9,63.7],[-73.4,64.2],[-74.8,64.7],[-74.8,64.4],[-77.7,64.2],[-78.6,64.6],[-77.9,65.3],[-76.0,65.3],[-74.0,65.5],[-74.3,65.8],[-73.9,66.3],[-72.7,67.3],[-72.9,67.7],[-73.3,68.1],[-74.8,68.6],[-76.9,68.9],[-76.2,69.1],[-77.3,69.8],[-78.2,69.8],[-79.0,70.2],[-79.5,69.9],[-81.3,69.7],[-84.9,70.0],[-87.1,70.3],[-88.7,70.4],[-89.5,70.8],[-88.5,71.2],[-89.9,71.2],[-90.2,72.2],[-89.4,73.1],[-88.4,73.5],[-85.8,73.8],[-86.6,73.2],[-85.8,72.5],[-84.9,73.3],[-82.3,73.8],[-80.6,72.7],[-80.7,72.1],[-78.8,72.4]]],[[[-94.5,74.1],[-92.4,74.1],[-90.5,73.9],[-92.0,73.0],[-93.2,72.8],[-94.3,72.0],[-95.4,72.1],[-96.0,72.9],[-96.0,73.4],[-95.5,73.9],[-94.5,74.1]]],[[[-122.9,76.1],[-122.9,76.1],[-121.2,76.9],[-119.1,77.5],[-117.6,77.5],[-116.2,77.6],[-116.3,76.9],[-117.1,76.5],[-118.0,76.5],[-119.9,76.1],[-121.5,75.9],[-122.9,76.1]]],[[[-132.7,54.0],[-131.7,54.1],[-132.0,53.0],[-131.2,52.2],[-131.6,52.2],[-132.2,52.6],[-132.5,53.1],[-133.1,53.4],[-133.2,53.9],[-133.2,54.2],[-132.7,54.0]]],[[[-105.5,79.3],[-103.5,79.2],[-100.8,78.8],[-100.1,78.3],[-99.7,77.9],[-101.3,78.0],[-102.9,78.3],[-105.2,78.4],[-104.2,78.7],[-105.4,78.9],[-105.5,79.3]]],[[[-123.5,48.5],[-124.0,48.4],[-125.7,48.8],[-126.0,49.2],[-126.9,49.5],[-127.0,49.8],[-128.1,50.0],[-128.4,50.5],[-128.4,50.8],[-127.3,50.6],[-126.7,50.4],[-125.8,50.3],[-125.4,50.0],[-124.9,49.5],[-123.9,49.1],[-123.5,48.5]]],[[[-121.5,74.4],[-120.1,74.2],[-117.6,74.2],[-116.6,73.9],[-115.5,73.5],[-116.8,73.2],[-119.2,72.5],[-120.5,71.8],[-120.5,71.4],[-123.1,70.9],[-123.6,71.3],[-125.9,71.9],[-125.5,72.3],[-124.8,73.0],[-123.9,73.7],[-124.9,74.3],[-121.5,74.4]]],[[[-107.8,75.8],[-106.9,76.0],[-105.9,76.0],[-105.7,75.5],[-106.3,75.0],[-109.7,74.8],[-112.2,74.4],[-113.7,74.4],[-113.9,74.7],[-111.8,75.2],[-116.3,75.0],[-117.7,75.2],[-116.3,76.2],[-115.4,76.5],[-112.6,76.1],[-110.8,75.5],[-109.1,75.5],[-110.5,76.4],[-109.6,76.8],[-108.5,76.7],[-108.2,76.2],[-107.8,75.8]]],[[[-106.5,73.1],[-105.4,72.7],[-104.8,71.7],[-104.5,71.0],[-102.8,70.5],[-101.0,70.0],[-101.1,69.6],[-102.7,69.5],[-102.1,69.1],[-102.4,68.8],[-104.2,68.9],[-106.0,69.2],[-107.1,69.1],[-109,68.8],[-111.5,68.6],[-113.3,68.5],[-113.9,69.0],[-115.2,69.3],[-116.1,69.2],[-117.3,70.0],[-116.7,70.1],[-115.1,70.2],[-113.7,70.2],[-112.4,70.4],[-114.3,70.6],[-116.5,70.5],[-117.9,70.5],[-118.4,70.9],[-116.1,71.3],[-117.7,71.3],[-119.4,71.6],[-118.6,72.3],[-117.9,72.7],[-115.2,73.3],[-114.2,73.1],[-114.7,72.7],[-112.4,73.0],[-111.1,72.5],[-109.9,73.0],[-109.0,72.6],[-108.2,71.7],[-107.7,72.1],[-108.4,73.1],[-107.5,73.2],[-106.5,73.1]]],[[[-100.4,72.7],[-101.5,73.4],[-100.4,73.8],[-99.2,73.6],[-97.4,73.8],[-97.1,73.5],[-98.1,73.0],[-96.5,72.6],[-96.7,71.7],[-98.4,71.3],[-99.3,71.4],[-100.0,71.7],[-102.5,72.5],[-102.5,72.8],[-100.4,72.7]]],[[[-106.6,73.6],[-105.3,73.6],[-104.5,73.4],[-105.4,72.8],[-106.9,73.5],[-106.6,73.6]]],[[[-98.5,76.7],[-97.7,76.3],[-97.7,75.7],[-98.2,75],[-99.8,74.9],[-100.9,75.1],[-100.9,75.6],[-102.5,75.6],[-102.6,76.3],[-101.5,76.3],[-100.0,76.6],[-98.6,76.6],[-98.5,76.7]]],[[[-96.0,80.6],[-95.3,80.9],[-94.3,81.0],[-94.7,81.2],[-92.4,81.3],[-91.1,80.7],[-89.5,80.5],[-87.8,80.3],[-87.0,79.7],[-85.8,79.3],[-87.2,79.0],[-89.0,78.3],[-90.8,78.2],[-92.9,78.3],[-94.0,78.8],[-93.9,79.1],[-93.1,79.4],[-95.0,79.4],[-96.1,79.7],[-96.7,80.2],[-96.0,80.6]]],[[[-91.6,81.9],[-90.1,82.1],[-88.9,82.1],[-87.0,82.3],[-85.5,82.7],[-84.3,82.6],[-83.2,82.3],[-82.4,82.9],[-81.1,83.0],[-79.3,83.1],[-76.2,83.2],[-75.7,83.1],[-72.8,83.2],[-70.7,83.2],[-68.5,83.1],[-65.8,83.0],[-63.7,82.9],[-61.9,82.6],[-61.9,82.4],[-64.3,81.9],[-66.8,81.7],[-67.7,81.5],[-65.5,81.5],[-67.8,80.9],[-69.5,80.6],[-71.2,79.8],[-73.2,79.6],[-73.9,79.4],[-76.9,79.3],[-75.5,79.2],[-76.2,79.0],[-75.4,78.5],[-76.3,78.2],[-77.9,77.9],[-78.4,77.5],[-79.8,77.2],[-79.6,77.0],[-77.9,77.0],[-77.9,76.8],[-80.6,76.2],[-83.2,76.5],[-86.1,76.3],[-87.6,76.4],[-89.5,76.5],[-89.6,77.0],[-87.8,77.2],[-88.3,77.9],[-87.7,78.0],[-85.0,77.5],[-86.3,78.2],[-88.0,78.4],[-87.2,78.8],[-85.4,79.0],[-85.1,79.3],[-86.5,79.7],[-86.9,80.3],[-84.2,80.2],[-83.4,80.1],[-81.8,80.5],[-84.1,80.6],[-87.6,80.5],[-89.4,80.9],[-90.2,81.3],[-91.4,81.6],[-91.6,81.9]]],[[[-75.2,67.4],[-75.9,67.1],[-77.0,67.1],[-77.2,67.6],[-76.8,68.1],[-75.9,68.3],[-75.1,68.0],[-75.1,67.6],[-75.2,67.4]]],[[[-96.3,69.5],[-95.6,69.1],[-96.3,68.8],[-97.6,69.1],[-98.4,69.0],[-99.8,69.4],[-98.9,69.7],[-98.2,70.1],[-97.2,69.9],[-96.6,69.7],[-96.3,69.5]]],[[[-64.5,49.9],[-64.2,50.0],[-62.9,49.7],[-61.8,49.3],[-61.8,49.1],[-62.3,49.1],[-63.6,49.4],[-64.5,49.9]]],[[[-64.0,47.0],[-63.7,46.6],[-62.9,46.4],[-62.0,46.4],[-62.5,46.0],[-62.9,46.0],[-64.1,46.4],[-64.4,46.7],[-64.0,47.0]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"US","NAME":"United States of America"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-122.8,49],[-120,49],[-117.0,49],[-116.0,49],[-113,49],[-110.0,49],[-107.0,49],[-104.0,49.0],[-100.7,49],[-97.2,49.0],[-95.2,49],[-95.2,49.4],[-94.8,49.4],[-94.6,48.8],[-94.3,48.7],[-93.6,48.6],[-92.6,48.5],[-91.6,48.1],[-90.8,48.3],[-89.6,48.0],[-89.3,48.0],[-88.4,48.3],[-87.4,47.9],[-86.5,47.6],[-85.7,47.2],[-84.9,46.9],[-84.8,46.6],[-84.5,46.5],[-84.6,46.4],[-84.3,46.4],[-84.1,46.5],[-84.1,46.3],[-83.9,46.1],[-83.6,46.1],[-83.5,46.0],[-83.6,45.8],[-82.6,45.3],[-82.3,44.4],[-82.1,43.6],[-82.4,43.0],[-82.9,42.4],[-83.1,42.1],[-83.1,42.0],[-83.0,41.8],[-82.7,41.7],[-82.4,41.7],[-81.3,42.2],[-80.2,42.4],[-78.9,42.9],[-78.9,43.0],[-79.0,43.3],[-79.2,43.5],[-78.7,43.6],[-77.7,43.6],[-76.8,43.6],[-76.5,44.0],[-76.4,44.1],[-75.3,44.8],[-74.9,45.0],[-73.3,45.0],[-71.5,45.0],[-71.4,45.3],[-71.1,45.3],[-70.7,45.5],[-70.3,45.9],[-70.0,46.7],[-69.2,47.4],[-68.9,47.2],[-68.2,47.4],[-67.8,47.1],[-67.8,45.7],[-67.1,45.1],[-67.0,44.8],[-68.0,44.3],[-69.1,44.0],[-70.1,43.7],[-70.6,43.1],[-70.8,42.9],[-70.8,42.3],[-70.5,41.8],[-70.1,41.8],[-70.2,42.1],[-69.9,41.9],[-70.0,41.6],[-70.6,41.5],[-71.1,41.5],[-71.9,41.3],[-72.3,41.3],[-72.9,41.2],[-73.7,40.9],[-72.2,41.1],[-71.9,40.9],[-73.3,40.6],[-74.0,40.6],[-74.0,40.8],[-74.3,40.5],[-74.0,40.4],[-74.2,39.7],[-74.9,38.9],[-75.0,39.2],[-75.2,39.2],[-75.5,39.5],[-75.3,39.0],[-75.1,38.8],[-75.1,38.4],[-75.4,38.0],[-75.9,37.2],[-76.0,37.3],[-75.7,37.9],[-76.2,38.3],[-76.3,39.1],[-76.5,38.7],[-76.3,38.1],[-77.0,38.2],[-76.3,37.9],[-76.3,37.0],[-76.0,36.9],[-75.9,36.6],[-75.7,35.6],[-76.4,34.8],[-77.4,34.5],[-78.1,33.9],[-78.6,33.9],[-79.1,33.5],[-79.2,33.2],[-80.3,32.5],[-80.9,32.0],[-81.3,31.4],[-81.5,30.7],[-81.3,30.0],[-81.0,29.2],[-80.5,28.5],[-80.5,28.0],[-80.1,26.9],[-80.1,26.2],[-80.1,25.8],[-80.4,25.2],[-80.7,25.1],[-81.2,25.2],[-81.3,25.6],[-81.7,25.9],[-82.2,26.7],[-82.7,27.5],[-82.9,27.9],[-82.7,28.6],[-82.9,29.1],[-83.7,29.9],[-84.1,30.1],[-85.1,29.6],[-85.3,29.7],[-85.8,30.2],[-86.4,30.4],[-87.5,30.3],[-88.4,30.4],[-89.2,30.3],[-89.6,30.2],[-89.4,29.9],[-89.4,29.5],[-89.2,29.3],[-89.4,29.2],[-89.8,29.3],[-90.2,29.1],[-90.9,29.1],[-91.6,29.7],[-92.5,29.6],[-93.2,29.8],[-93.8,29.7],[-94.7,29.5],[-95.6,28.7],[-96.6,28.3],[-97.1,27.8],[-97.4,27.4],[-97.4,26.7],[-97.3,26.2],[-97.1,25.9],[-97.5,25.8],[-98.2,26.1],[-99.0,26.4],[-99.3,26.8],[-99.5,27.5],[-100.1,28.1],[-100.5,28.7],[-101.0,29.4],[-101.7,29.8],[-102.5,29.8],[-103.1,29.0],[-103.9,29.3],[-104.5,29.6],[-104.7,30.1],[-105.0,30.6],[-105.6,31.1],[-106.1,31.4],[-106.5,31.8],[-108.2,31.8],[-108.2,31.3],[-109.0,31.3],[-111.0,31.3],[-113.3,32.0],[-114.8,32.5],[-114.7,32.7],[-116.0,32.6],[-117.1,32.5],[-117.3,33.0],[-117.9,33.6],[-118.4,33.7],[-118.5,34.0],[-119.1,34.1],[-119.4,34.3],[-120.4,34.4],[-120.6,34.6],[-120.7,35.2],[-121.7,36.2],[-122.5,37.6],[-122.5,37.8],[-123.0,38.1],[-123.7,39.0],[-123.9,39.8],[-124.4,40.3],[-124.2,41.1],[-124.2,42.0],[-124.5,42.8],[-124.1,43.7],[-124.0,44.6],[-123.9,45.5],[-124.1,46.9],[-124.4,47.7],[-124.7,48.2],[-124.6,48.4],[-123.1,48.0],[-122.6,47.1],[-122.3,47.4],[-122.5,48.2],[-122.8,49]]],[[[-155.4,20.1],[-155.2,20.0],[-155.1,19.9],[-154.8,19.5],[-154.8,19.5],[-155.2,19.2],[-155.5,19.1],[-155.7,18.9],[-155.9,19.1],[-155.9,19.3],[-156.1,19.7],[-156.0,19.8],[-155.9,20.0],[-155.9,20.2],[-155.9,20.3],[-155.8,20.2],[-155.4,20.1]]],[[[-156.0,20.8],[-156.1,20.6],[-156.4,20.6],[-156.6,20.8],[-156.7,20.9],[-156.7,20.9],[-156.6,21.0],[-156.3,20.9],[-156.0,20.8]]],[[[-156.8,21.2],[-156.8,21.1],[-157.3,21.1],[-157.3,21.2],[-156.8,21.2]]],[[[-158.0,21.7],[-157.9,21.7],[-157.7,21.3],[-157.7,21.3],[-157.8,21.3],[-158.1,21.3],[-158.3,21.5],[-158.3,21.6],[-158.0,21.7]]],[[[-159.4,22.2],[-159.3,22.0],[-159.5,21.9],[-159.8,22.1],[-159.7,22.1],[-159.6,22.2],[-159.4,22.2]]],[[[-166.5,60.4],[-165.7,60.3],[-165.6,59.9],[-166.2,59.8],[-166.8,59.9],[-167.5,60.2],[-166.5,60.4]]],[[[-153.2,58.0],[-152.6,57.9],[-152.1,57.6],[-153.0,57.1],[-154.0,56.7],[-154.5,57.0],[-154.7,57.5],[-153.8,57.8],[-153.2,58.0]]],[[[-141.0,69.7],[-141.0,69.7],[-141.0,66.0],[-141.0,60.3],[-140.0,60.3],[-139.0,60],[-138.3,59.6],[-137.5,58.9],[-136.5,59.5],[-135.5,59.8],[-134.9,59.3],[-134.3,58.9],[-133.4,58.4],[-132.7,57.7],[-131.7,56.6],[-130.0,55.9],[-130.0,55.3],[-130.5,54.8],[-130.5,54.8],[-130.5,54.8],[-131.1,55.2],[-132.0,55.5],[-132.3,56.4],[-133.5,57.2],[-134.1,58.1],[-135.0,58.2],[-136.6,58.2],[-137.8,58.5],[-139.9,59.5],[-140.8,59.7],[-142.6,60.1],[-144.0,60.0],[-145.9,60.5],[-147.1,60.9],[-148.2,60.7],[-148.0,60.0],[-148.6,59.9],[-149.7,59.7],[-150.6,59.4],[-151.7,59.2],[-151.9,59.7],[-151.4,60.7],[-150.3,61.0],[-150.6,61.3],[-151.9,60.7],[-152.6,60.1],[-154.0,59.4],[-153.3,58.9],[-154.2,58.1],[-155.3,57.7],[-156.3,57.4],[-156.6,57.0],[-158.1,56.5],[-158.4,56.0],[-159.6,55.6],[-160.3,55.6],[-161.2,55.4],[-162.2,55.0],[-163.1,54.7],[-164.8,54.4],[-164.9,54.6],[-163.8,55.0],[-162.9,55.3],[-161.8,55.9],[-160.6,56.0],[-160.1,56.4],[-158.7,57.0],[-158.5,57.2],[-157.7,57.6],[-157.6,58.3],[-157.0,58.9],[-158.2,58.6],[-158.5,58.8],[-159.1,58.4],[-159.7,58.9],[-160.0,58.6],[-160.4,59.1],[-161.4,58.7],[-162.0,58.7],[-162.1,59.3],[-161.9,59.6],[-162.5,60.0],[-163.8,59.8],[-164.7,60.3],[-165.3,60.5],[-165.4,61.1],[-166.1,61.5],[-165.7,62.1],[-164.9,62.6],[-164.6,63.1],[-163.8,63.2],[-163.1,63.1],[-162.3,63.5],[-161.5,63.5],[-160.8,63.8],[-161.0,64.2],[-161.5,64.4],[-160.8,64.8],[-161.4,64.8],[-162.5,64.6],[-162.8,64.3],[-163.5,64.6],[-165.0,64.4],[-166.4,64.7],[-166.8,65.1],[-168.1,65.7],[-166.7,66.1],[-164.5,66.6],[-163.7,66.6],[-163.8,66.1],[-161.7,66.1],[-162.5,66.7],[-163.7,67.1],[-164.4,67.6],[-165.4,68.0],[-166.8,68.4],[-166.2,68.9],[-164.4,68.9],[-163.2,69.4],[-162.9,69.9],[-161.9,70.3],[-160.9,70.4],[-159.0,70.9],[-158.1,70.8],[-156.6,71.4],[-155.1,71.1],[-154.3,70.7],[-153.9,70.9],[-152.2,70.8],[-152.3,70.6],[-150.7,70.4],[-149.7,70.5],[-147.6,70.2],[-145.7,70.1],[-144.9,70.0],[-143.6,70.2],[-142.1,69.9],[-141.0,69.7],[-141.0,69.7]]],[[[-171.7,63.8],[-171.1,63.6],[-170.5,63.7],[-169.7,63.4],[-168.7,63.3],[-168.8,63.2],[-169.5,63.0],[-170.3,63.2],[-170.7,63.4],[-171.6,63.3],[-171.8,63.4],[-171.7,63.8]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"KZ","NAME":"Kazakhstan"},"geometry":{"type":"Polygon","coordinates":[[[87.4,49.2],[86.6,48.5],[85.8,48.5],[85.7,47.5],[85.2,47.0],[83.2,47.3],[82.5,45.5],[81.9,45.3],[80.0,44.9],[80.9,43.2],[80.2,42.9],[80.3,42.3],[79.6,42.5],[79.1,42.9],[77.7,43.0],[76.0,43.0],[75.6,42.9],[74.2,43.3],[73.6,43.1],[73.5,42.5],[71.8,42.8],[71.2,42.7],[71.0,42.3],[70.4,42.1],[69.1,41.4],[68.6,40.7],[68.3,40.7],[68.0,41.1],[66.7,41.2],[66.5,42.0],[66.0,42.0],[66.1,43.0],[64.9,43.7],[63.2,43.7],[62.0,43.5],[61.1,44.4],[60.2,44.8],[58.7,45.5],[58.5,45.6],[55.9,45.0],[56.0,41.3],[55.5,41.3],[54.8,42.0],[54.1,42.3],[52.9,42.1],[52.5,41.8],[52.4,42.0],[52.7,42.4],[52.5,42.8],[51.3,43.1],[50.9,44.0],[50.3,44.3],[50.3,44.6],[51.3,44.5],[51.3,45.2],[52.2,45.4],[53.0,45.3],[53.2,46.2],[53.0,46.9],[52.0,46.8],[51.2,47.0],[50.0,46.6],[49.1,46.4],[48.6,46.6],[48.7,47.1],[48.1,47.7],[47.3,47.7],[46.5,48.4],[47.0,49.2],[46.8,49.4],[47.5,50.5],[48.6,49.9],[48.7,50.6],[50.8,51.7],[52.3,51.7],[54.5,51.0],[55.7,50.6],[56.8,51.0],[58.4,51.1],[59.6,50.5],[59.9,50.8],[61.3,50.8],[61.6,51.3],[60.0,52.0],[60.9,52.4],[60.7,52.7],[61.7,53.0],[61.0,53.7],[61.4,54.0],[65.2,54.4],[65.7,54.6],[68.2,55.0],[69.1,55.4],[70.9,55.2],[71.2,54.1],[72.2,54.4],[73.5,54.0],[73.4,53.5],[74.4,53.5],[76.9,54.5],[76.5,54.2],[77.8,53.4],[80.0,50.9],[80.6,51.4],[81.9,50.8],[83.4,51.1],[83.9,50.9],[84.4,50.3],[85.1,50.1],[85.5,49.7],[86.8,49.8],[87.4,49.2]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"UZ","NAME":"Uzbekistan"},"geometry":{"type":"Polygon","coordinates":[[[56.0,41.3],[55.9,45.0],[58.5,45.6],[58.7,45.5],[60.2,44.8],[61.1,44.4],[62.0,43.5],[63.2,43.7],[64.9,43.7],[66.1,43.0],[66.0,42.0],[66.5,42.0],[66.7,41.2],[68.0,41.1],[68.3,40.7],[68.6,40.7],[69.1,41.4],[70.4,42.1],[71.0,42.3],[71.3,42.2],[70.4,41.5],[71.2,41.1],[71.9,41.4],[73.1,40.9],[71.8,40.1],[71.0,40.2],[70.6,40.2],[70.5,40.5],[70.7,41.0],[69.3,40.7],[69.0,40.1],[68.5,39.5],[67.7,39.6],[67.4,39.1],[68.2,38.9],[68.4,38.2],[67.8,37.1],[67.1,37.4],[66.5,37.4],[66.5,38.0],[65.2,38.4],[64.2,38.9],[63.5,39.4],[62.4,40.1],[61.9,41.1],[61.5,41.3],[60.5,41.2],[60.1,41.4],[60.0,42.2],[58.6,42.8],[57.8,42.2],[56.9,41.8],[57.1,41.3],[56.0,41.3]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"PG","NAME":"Papua New Guinea"},"geometry":{"type":"MultiPolygon","coordinates":[[[[141.0,-2.6],[142.7,-3.3],[144.6,-3.9],[145.3,-4.4],[145.8,-4.9],[146.0,-5.5],[147.6,-6.1],[147.9,-6.6],[147.0,-6.7],[147.2,-7.4],[148.1,-8.0],[148.7,-9.1],[149.3,-9.1],[149.3,-9.5],[150.0,-9.7],[149.7,-9.9],[150.8,-10.3],[150.7,-10.6],[150.0,-10.7],[149.8,-10.4],[148.9,-10.3],[147.9,-10.1],[147.1,-9.5],[146.6,-8.9],[146.0,-8.1],[144.7,-7.6],[143.9,-7.9],[143.3,-8.2],[143.4,-9.0],[142.6,-9.3],[142.1,-9.2],[141.0,-9.1],[141.0,-5.9],[141.0,-2.6]]],[[[152.6,-3.7],[153.0,-4.0],[153.1,-4.5],[152.8,-4.8],[152.6,-4.2],[152.4,-3.8],[152.0,-3.5],[151.4,-3.0],[150.7,-2.7],[150.9,-2.5],[151.5,-2.8],[151.8,-3.0],[152.2,-3.2],[152.6,-3.7]]],[[[151.3,-5.8],[150.8,-6.1],[150.2,-6.3],[149.7,-6.3],[148.9,-6.0],[148.3,-5.7],[148.4,-5.4],[149.3,-5.6],[149.8,-5.5],[150.0,-5.0],[150.1,-5.0],[150.2,-5.5],[150.8,-5.5],[151.1,-5.1],[151.6,-4.8],[151.5,-4.2],[152.1,-4.1],[152.3,-4.3],[152.3,-4.9],[152.0,-5.5],[151.5,-5.6],[151.3,-5.8]]],[[[154.8,-5.3],[155.1,-5.6],[155.5,-6.2],[156.0,-6.5],[155.9,-6.8],[155.6,-6.9],[155.2,-6.5],[154.7,-5.9],[154.5,-5.1],[154.7,-5.0],[154.8,-5.3]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"ID","NAME":"Indonesia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[141.0,-2.6],[141.0,-5.9],[141.0,-9.1],[140.1,-8.3],[139.1,-8.1],[138.9,-8.4],[137.6,-8.4],[138.0,-7.6],[138.7,-7.3],[138.4,-6.2],[137.9,-5.4],[136.0,-4.5],[135.2,-4.5],[133.7,-3.5],[133.4,-4.0],[133.0,-4.1],[132.8,-3.7],[132.8,-3.3],[132.0,-2.8],[133.1,-2.5],[133.8,-2.5],[133.7,-2.2],[132.2,-2.2],[131.8,-1.6],[130.9,-1.4],[130.5,-0.9],[131.9,-0.7],[132.4,-0.4],[134.0,-0.8],[134.1,-1.2],[134.4,-2.8],[135.5,-3.4],[136.3,-2.3],[137.4,-1.7],[138.3,-1.7],[139.2,-2.1],[139.9,-2.4],[141.0,-2.6]]],[[[125.0,-8.9],[125.1,-9.1],[125.1,-9.4],[124.4,-10.1],[123.6,-10.4],[123.5,-10.2],[123.6,-9.9],[124.0,-9.3],[125.0,-8.9]]],[[[134.2,-6.9],[134.1,-6.1],[134.3,-5.8],[134.5,-5.4],[134.7,-5.7],[134.7,-6.2],[134.2,-6.9]]],[[[117.9,4.1],[117.3,3.2],[118.0,2.3],[117.9,1.8],[119.0,0.9],[117.8,0.8],[117.5,0.1],[117.5,-0.8],[116.6,-1.5],[116.5,-2.5],[116.1,-4.0],[116.0,-3.7],[114.9,-4.1],[114.5,-3.5],[113.8,-3.4],[113.3,-3.1],[112.1,-3.5],[111.7,-3.0],[111.0,-3.0],[110.2,-2.9],[110.1,-1.6],[109.6,-1.3],[109.1,-0.5],[109.0,0.4],[109.1,1.3],[109.7,2.0],[109.8,1.3],[110.5,0.8],[111.2,1.0],[111.8,0.9],[112.4,1.4],[112.9,1.5],[113.8,1.2],[114.6,1.4],[115.1,2.8],[115.5,3.2],[115.9,4.3],[117.0,4.3],[117.9,4.1]]],[[[129.4,-2.8],[130.5,-3.1],[130.8,-3.9],[130.0,-3.4],[129.2,-3.4],[128.6,-3.4],[127.9,-3.4],[128.1,-2.8],[129.4,-2.8]]],[[[126.9,-3.8],[126.2,-3.6],[126.0,-3.2],[127.0,-3.1],[127.2,-3.5],[126.9,-3.8]]],[[[127.9,2.2],[128.0,1.6],[128.6,1.5],[128.7,1.1],[128.6,0.3],[128.1,0.4],[128.0,-0.3],[128.4,-0.8],[128.1,-0.9],[127.7,-0.3],[127.4,1.0],[127.6,1.8],[127.9,2.2]]],[[[122.9,0.9],[124.1,0.9],[125.1,1.6],[125.2,1.4],[124.4,0.4],[123.7,0.2],[122.7,0.4],[121.1,0.4],[120.2,0.2],[120.0,-0.5],[120.9,-1.4],[121.5,-1.0],[123.3,-0.6],[123.3,-1.1],[122.8,-0.9],[122.4,-1.5],[121.5,-1.9],[122.5,-3.2],[122.3,-3.5],[123.2,-4.7],[123.2,-5.3],[122.6,-5.6],[122.2,-5.3],[122.7,-4.5],[121.7,-4.9],[121.5,-4.6],[121.6,-4.2],[120.9,-3.6],[121.0,-2.6],[120.3,-2.9],[120.4,-4.1],[120.4,-5.5],[119.8,-5.7],[119.4,-5.4],[119.7,-4.5],[119.5,-3.5],[119.1,-3.5],[118.8,-2.8],[119.2,-2.1],[119.3,-1.4],[119.8,0.2],[120.0,0.6],[120.9,1.3],[121.7,1.0],[122.9,0.9]]],[[[120.3,-10.3],[119.0,-9.6],[119.9,-9.4],[120.4,-9.7],[120.8,-10.0],[120.7,-10.2],[120.3,-10.3]]],[[[121.3,-8.5],[122.0,-8.5],[122.9,-8.1],[122.8,-8.6],[121.3,-8.9],[119.9,-8.8],[119.9,-8.4],[120.7,-8.2],[121.3,-8.5]]],[[[118.3,-8.4],[118.9,-8.3],[119.1,-8.7],[118.0,-8.9],[117.3,-9.0],[116.7,-9.0],[117.1,-8.5],[117.6,-8.4],[117.9,-8.1],[118.3,-8.4]]],[[[108.5,-6.4],[108.6,-6.8],[110.5,-6.9],[110.8,-6.5],[112.6,-6.9],[113.0,-7.6],[114.5,-7.8],[115.7,-8.4],[114.6,-8.8],[113.5,-8.3],[112.6,-8.4],[111.5,-8.3],[110.6,-8.1],[109.4,-7.7],[108.7,-7.6],[108.3,-7.8],[106.5,-7.4],[106.3,-6.9],[105.4,-6.9],[106.1,-5.9],[107.3,-6.0],[108.1,-6.3],[108.5,-6.4]]],[[[104.4,-1.1],[104.5,-1.8],[104.9,-2.3],[105.6,-2.4],[106.1,-3.1],[105.9,-4.3],[105.8,-5.9],[104.7,-5.9],[103.9,-5.0],[102.6,-4.2],[102.2,-3.6],[101.4,-2.8],[100.9,-2.1],[100.1,-0.7],[99.3,0.2],[99.0,1.0],[98.6,1.8],[97.7,2.5],[97.2,3.3],[96.4,3.9],[95.4,5.0],[95.3,5.5],[95.9,5.4],[97.5,5.2],[98.4,4.3],[99.1,3.6],[99.7,3.2],[100.6,2.1],[101.7,2.1],[102.5,1.4],[103.1,0.6],[103.8,0.1],[103.4,-0.7],[104.0,-1.1],[104.4,-1.1]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"AR","NAME":"Argentina"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-68.6,-52.6],[-68.2,-53.1],[-67.8,-53.9],[-66.5,-54.5],[-65.0,-54.7],[-65.5,-55.2],[-66.5,-55.2],[-67.0,-54.9],[-67.6,-54.9],[-68.6,-54.9],[-68.6,-52.6]]],[[[-57.6,-30.2],[-57.9,-31.0],[-58.1,-32.0],[-58.1,-33.0],[-58.3,-33.3],[-58.4,-33.9],[-58.5,-34.4],[-57.2,-35.3],[-57.4,-36.0],[-56.7,-36.4],[-56.8,-36.9],[-57.7,-38.2],[-59.2,-38.7],[-61.2,-38.9],[-62.3,-38.8],[-62.1,-39.4],[-62.3,-40.2],[-62.1,-40.7],[-62.7,-41.0],[-63.8,-41.2],[-64.7,-40.8],[-65.1,-41.1],[-65.0,-42.1],[-64.3,-42.4],[-63.8,-42.0],[-63.5,-42.6],[-64.4,-42.9],[-65.2,-43.5],[-65.3,-44.5],[-65.6,-45.0],[-66.5,-45.0],[-67.3,-45.6],[-67.6,-46.3],[-66.6,-47.0],[-65.6,-47.2],[-66.0,-48.1],[-67.2,-48.7],[-67.8,-49.9],[-68.7,-50.3],[-69.1,-50.7],[-68.8,-51.8],[-68.1,-52.3],[-68.6,-52.3],[-69.5,-52.1],[-71.9,-52.0],[-72.3,-51.4],[-72.3,-50.7],[-73.0,-50.7],[-73.3,-50.4],[-73.4,-49.3],[-72.6,-48.9],[-72.3,-48.2],[-72.4,-47.7],[-71.9,-46.9],[-71.6,-45.6],[-71.7,-45.0],[-71.2,-44.8],[-71.3,-44.4],[-71.8,-44.2],[-71.5,-43.8],[-71.9,-43.4],[-72.1,-42.3],[-71.7,-42.1],[-71.9,-40.8],[-71.7,-39.8],[-71.4,-38.9],[-70.8,-38.6],[-71.1,-37.6],[-71.1,-36.7],[-70.4,-36.0],[-70.4,-35.2],[-69.8,-34.2],[-69.8,-33.3],[-70.1,-33.1],[-70.5,-31.4],[-69.9,-30.3],[-70.0,-29.4],[-69.7,-28.5],[-69.0,-27.5],[-68.3,-26.9],[-68.6,-26.5],[-68.4,-26.2],[-68.4,-24.5],[-67.3,-24.0],[-67.0,-23.0],[-67.1,-22.7],[-66.3,-21.8],[-65.0,-22.1],[-64.4,-22.8],[-64.0,-22.0],[-62.8,-22.0],[-62.7,-22.2],[-60.8,-23.9],[-60.0,-24.0],[-58.8,-24.8],[-57.8,-25.2],[-57.6,-25.6],[-58.6,-27.1],[-57.6,-27.4],[-56.5,-27.5],[-55.7,-27.4],[-54.8,-26.6],[-54.6,-25.7],[-54.1,-25.5],[-53.6,-26.1],[-53.6,-26.9],[-54.5,-27.5],[-55.2,-27.9],[-56.3,-28.9],[-57.6,-30.2]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"CL","NAME":"Chile"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-68.6,-52.6],[-68.6,-54.9],[-67.6,-54.9],[-67.0,-54.9],[-67.3,-55.3],[-68.1,-55.6],[-68.6,-55.6],[-69.2,-55.5],[-70.0,-55.2],[-71.0,-55.1],[-72.3,-54.5],[-73.3,-54.0],[-74.7,-52.8],[-73.8,-53.0],[-72.4,-53.7],[-71.1,-54.1],[-70.6,-53.6],[-70.3,-52.9],[-69.3,-52.5],[-68.6,-52.6]]],[[[-69.6,-17.6],[-69.1,-18.3],[-69.0,-19.0],[-68.4,-19.4],[-68.8,-20.4],[-68.2,-21.5],[-67.8,-22.9],[-67.1,-22.7],[-67.0,-23.0],[-67.3,-24.0],[-68.4,-24.5],[-68.4,-26.2],[-68.6,-26.5],[-68.3,-26.9],[-69.0,-27.5],[-69.7,-28.5],[-70.0,-29.4],[-69.9,-30.3],[-70.5,-31.4],[-70.1,-33.1],[-69.8,-33.3],[-69.8,-34.2],[-70.4,-35.2],[-70.4,-36.0],[-71.1,-36.7],[-71.1,-37.6],[-70.8,-38.6],[-71.4,-38.9],[-71.7,-39.8],[-71.9,-40.8],[-71.7,-42.1],[-72.1,-42.3],[-71.9,-43.4],[-71.5,-43.8],[-71.8,-44.2],[-71.3,-44.4],[-71.2,-44.8],[-71.7,-45.0],[-71.6,-45.6],[-71.9,-46.9],[-72.4,-47.7],[-72.3,-48.2],[-72.6,-48.9],[-73.4,-49.3],[-73.3,-50.4],[-73.0,-50.7],[-72.3,-50.7],[-72.3,-51.4],[-71.9,-52.0],[-69.5,-52.1],[-68.6,-52.3],[-69.5,-52.3],[-69.9,-52.5],[-70.8,-52.9],[-71.0,-53.8],[-71.4,-53.9],[-72.6,-53.5],[-73.7,-52.8],[-73.7,-52.8],[-74.9,-52.3],[-75.3,-51.6],[-75.0,-51.0],[-75.5,-50.4],[-75.6,-48.7],[-75.2,-47.7],[-74.1,-46.9],[-75.6,-46.6],[-74.7,-45.8],[-74.4,-44.1],[-73.2,-44.5],[-72.7,-42.4],[-73.4,-42.1],[-73.7,-43.4],[-74.3,-43.2],[-74.0,-41.8],[-73.7,-39.9],[-73.2,-39.3],[-73.5,-38.3],[-73.6,-37.2],[-73.2,-37.1],[-72.6,-35.5],[-71.9,-33.9],[-71.4,-32.4],[-71.7,-30.9],[-71.4,-30.1],[-71.5,-28.9],[-70.9,-27.6],[-70.7,-25.7],[-70.4,-23.6],[-70.1,-21.4],[-70.2,-19.8],[-70.4,-18.3],[-69.9,-18.1],[-69.6,-17.6]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"CD","NAME":"Dem. Rep. Congo"},"geometry":{"type":"Polygon","coordinates":[[[29.3,-4.5],[29.5,-5.4],[29.4,-5.9],[29.6,-6.5],[30.2,-7.1],[30.7,-8.3],[30.7,-8.3],[30.3,-8.2],[29.0,-8.4],[28.7,-8.5],[28.4,-9.2],[28.7,-9.6],[28.5,-10.8],[28.4,-11.8],[28.6,-12.0],[29.3,-12.4],[29.6,-12.2],[29.7,-13.3],[28.9,-13.2],[28.5,-12.7],[28.2,-12.3],[27.4,-12.1],[27.2,-11.6],[26.6,-11.9],[25.8,-11.8],[25.4,-11.3],[24.8,-11.2],[24.3,-11.3],[24.3,-11.0],[23.9,-10.9],[23.5,-10.9],[22.8,-11.0],[22.4,-11.0],[22.2,-11.1],[22.2,-9.9],[21.9,-9.5],[21.8,-8.9],[21.9,-8.3],[21.7,-7.9],[21.7,-7.3],[20.5,-7.3],[20.6,-6.9],[20.1,-6.9],[20.0,-7.1],[19.4,-7.2],[19.2,-7.7],[19.0,-8.0],[18.5,-7.8],[18.1,-8.0],[17.5,-8.1],[17.1,-7.5],[16.9,-7.2],[16.6,-6.6],[16.3,-5.9],[13.4,-5.9],[13.0,-6.0],[12.7,-6.0],[12.3,-6.1],[12.2,-5.8],[12.4,-5.7],[12.5,-5.2],[12.6,-5.0],[13.0,-4.8],[13.3,-4.9],[13.6,-4.5],[14.1,-4.5],[14.2,-4.8],[14.6,-5.0],[15.2,-4.3],[15.8,-3.9],[16.0,-3.5],[16.0,-2.7],[16.4,-1.7],[16.9,-1.2],[17.5,-0.7],[17.6,-0.4],[17.7,-0.1],[17.8,0.3],[17.8,0.9],[17.9,1.7],[18.1,2.4],[18.4,2.9],[18.5,3.5],[18.5,4.2],[18.9,4.7],[19.5,5.0],[20.3,4.7],[20.9,4.3],[21.7,4.2],[22.4,4.0],[22.7,4.6],[22.8,4.7],[23.3,4.6],[24.4,5.1],[24.8,4.9],[25.1,4.9],[25.3,5.2],[25.7,5.3],[26.4,5.2],[27.0,5.1],[27.4,5.2],[28.0,4.4],[28.4,4.3],[28.7,4.5],[29.2,4.4],[29.7,4.6],[30.0,4.2],[30.8,3.5],[30.8,3.5],[30.8,2.3],[31.2,2.2],[30.9,1.8],[30.5,1.6],[30.1,1.1],[29.9,0.6],[29.8,-0.2],[29.6,-0.6],[29.6,-1.3],[29.3,-1.6],[29.3,-2.2],[29.1,-2.3],[29.0,-2.8],[29.3,-3.3],[29.3,-4.5]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"SO","NAME":"Somalia"},"geometry":{"type":"Polygon","coordinates":[[[41.6,-1.7],[41.0,-0.9],[41.0,2.8],[41.9,3.9],[42.1,4.2],[42.8,4.3],[43.7,5.0],[45.0,5.0],[47.8,8.0],[48.5,8.8],[48.9,9.5],[48.9,10.0],[48.9,11.0],[48.9,11.4],[48.9,11.4],[48.9,11.4],[49.3,11.4],[49.7,11.6],[50.3,11.7],[50.7,12.0],[51.1,12.0],[51.1,11.7],[51.0,11.2],[51.0,10.6],[50.8,10.3],[50.6,9.2],[50.1,8.1],[49.5,6.8],[48.6,5.3],[47.7,4.2],[46.6,2.9],[45.6,2.0],[44.1,1.1],[43.1,0.3],[42.0,-0.9],[41.8,-1.4],[41.6,-1.7]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"KE","NAME":"Kenya"},"geometry":{"type":"Polygon","coordinates":[[[39.2,-4.7],[37.8,-3.7],[37.7,-3.1],[34.1,-1.1],[33.9,-0.9],[33.9,0.1],[34.2,0.5],[34.7,1.2],[35.0,1.9],[34.6,3.1],[34.5,3.6],[34.0,4.2],[34.6,4.8],[35.3,5.5],[35.8,5.3],[35.8,4.8],[36.2,4.4],[36.9,4.4],[38.1,3.6],[38.4,3.6],[38.7,3.6],[38.9,3.5],[39.6,3.4],[39.9,3.8],[40.8,4.3],[41.2,3.9],[41.9,3.9],[41.0,2.8],[41.0,-0.9],[41.6,-1.7],[40.9,-2.1],[40.6,-2.5],[40.3,-2.6],[40.1,-3.3],[39.8,-3.7],[39.6,-4.3],[39.2,-4.7]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"SD","NAME":"Sudan"},"geometry":{"type":"Polygon","coordinates":[[[24.6,8.2],[23.8,8.7],[23.5,9.0],[23.4,9.3],[23.6,9.7],[23.6,10.1],[23.0,10.7],[22.9,11.1],[22.9,11.4],[22.5,11.7],[22.5,12.3],[22.3,12.6],[21.9,12.6],[22.0,13.0],[22.3,13.4],[22.2,13.8],[22.5,14.1],[22.3,14.3],[22.6,14.9],[23.0,15.7],[23.9,15.6],[23.8,19.6],[23.9,20],[25,20.0],[25,22],[29.0,22],[32.9,22],[36.9,22],[37.2,21.0],[37.0,20.8],[37.1,19.8],[37.5,18.6],[37.9,18.4],[38.4,18.0],[37.9,17.4],[37.2,17.3],[36.9,17.0],[36.8,16.3],[36.3,14.8],[36.4,14.4],[36.3,13.6],[35.9,12.6],[35.3,12.1],[34.8,11.3],[34.7,10.9],[34.3,10.6],[34.0,9.6],[34.0,8.7],[34.0,9.5],[33.8,9.5],[33.8,10.0],[33.7,10.3],[33.2,10.7],[33.1,11.4],[33.2,12.2],[32.7,12.2],[32.7,12.0],[32.1,12.0],[32.3,11.7],[32.4,11.1],[31.9,10.5],[31.4,9.8],[30.8,9.7],[30.0,10.3],[29.6,10.1],[29.5,9.8],[29.0,9.6],[29.0,9.4],[28.0,9.4],[27.8,9.6],[27.1,9.6],[26.8,9.5],[26.5,9.6],[26.0,10.1],[25.8,10.4],[25.1,10.3],[24.8,9.8],[24.5,8.9],[24.2,8.7],[23.9,8.6],[24.6,8.2]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"TD","NAME":"Chad"},"geometry":{"type":"Polygon","coordinates":[[[23.8,19.6],[23.9,15.6],[23.0,15.7],[22.6,14.9],[22.3,14.3],[22.5,14.1],[22.2,13.8],[22.3,13.4],[22.0,13.0],[21.9,12.6],[22.3,12.6],[22.5,12.3],[22.5,11.7],[22.9,11.4],[22.9,11.1],[22.2,11.0],[21.7,10.6],[21.0,9.5],[20.1,9.0],[19.1,9.1],[18.8,9.0],[18.9,8.6],[18.4,8.3],[18.0,7.9],[16.7,7.5],[16.5,7.7],[16.3,7.8],[16.1,7.5],[15.3,7.4],[15.4,7.7],[15.1,8.4],[15.0,8.8],[14.5,9.0],[14.0,9.5],[14.2,10.0],[14.6,9.9],[14.9,10.0],[15.5,10.0],[14.9,10.9],[15.0,11.6],[14.9,12.2],[14.5,12.9],[14.6,13.3],[14.0,13.4],[14.0,14.0],[13.5,14.4],[14.0,15.7],[15.2,16.6],[15.3,17.9],[15.7,20.0],[15.9,20.4],[15.5,20.7],[15.5,21.0],[15.1,21.3],[14.9,22.9],[15.9,23.4],[19.8,21.5],[23.8,19.6]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"HT","NAME":"Haiti"},"geometry":{"type":"Polygon","coordinates":[[[-71.7,19.7],[-71.6,19.2],[-71.7,18.8],[-71.9,18.6],[-71.7,18.3],[-71.7,18.0],[-72.4,18.2],[-72.8,18.1],[-73.5,18.2],[-73.9,18.0],[-74.5,18.3],[-74.4,18.7],[-73.4,18.5],[-72.7,18.4],[-72.3,18.7],[-72.8,19.1],[-72.8,19.5],[-73.4,19.6],[-73.2,19.9],[-72.6,19.9],[-71.7,19.7]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"DO","NAME":"Dominican Rep."},"geometry":{"type":"Polygon","coordinates":[[[-71.7,18.0],[-71.7,18.3],[-71.9,18.6],[-71.7,18.8],[-71.6,19.2],[-71.7,19.7],[-71.6,19.9],[-70.8,19.9],[-70.2,19.6],[-70.0,19.6],[-69.8,19.3],[-69.2,19.3],[-69.3,19.0],[-68.8,19.0],[-68.3,18.6],[-68.7,18.2],[-69.2,18.4],[-69.6,18.4],[-70.0,18.4],[-70.1,18.2],[-70.5,18.2],[-70.7,18.4],[-71.0,18.3],[-71.4,17.6],[-71.7,17.8],[-71.7,18.0]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"RU","NAME":"Russia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[178.7,71.1],[180,71.5],[180,70.8],[178.9,70.8],[178.7,71.1]]],[[[49.1,46.4],[48.6,45.8],[47.7,45.6],[46.7,44.6],[47.6,43.7],[47.5,43.0],[48.6,41.8],[48.6,41.8],[48.0,41.4],[47.8,41.2],[47.4,41.2],[46.7,41.8],[46.4,41.9],[45.8,42.1],[45.5,42.5],[44.5,42.7],[43.9,42.6],[43.8,42.7],[42.4,43.2],[40.9,43.4],[40.1,43.6],[40.0,43.4],[38.7,44.3],[37.5,44.7],[36.7,45.2],[37.4,45.4],[38.2,46.2],[37.7,46.6],[39.1,47.0],[39.1,47.3],[38.2,47.1],[38.3,47.5],[38.8,47.8],[39.7,47.9],[39.9,48.2],[39.7,48.8],[40.1,49.3],[40.1,49.6],[38.6,49.9],[38.0,49.9],[37.4,50.4],[36.6,50.2],[35.4,50.6],[35.4,50.8],[35.0,51.2],[34.2,51.3],[34.1,51.6],[34.4,51.8],[33.8,52.3],[32.7,52.2],[32.4,52.3],[32.2,52.1],[31.8,52.1],[31.8,52.1],[31.5,52.7],[31.3,53.1],[31.5,53.2],[32.3,53.1],[32.7,53.4],[32.4,53.6],[31.7,53.8],[31.8,54.0],[31.4,54.2],[30.8,54.8],[31.0,55.1],[30.9,55.6],[29.9,55.8],[29.4,55.7],[29.2,55.9],[28.2,56.2],[27.9,56.8],[27.8,57.2],[27.3,57.5],[27.7,57.8],[27.4,58.7],[28.1,59.3],[28.0,59.5],[28.0,59.5],[29.1,60.0],[28.1,60.5],[28.1,60.5],[30.2,61.8],[31.1,62.4],[31.5,62.9],[30.0,63.6],[30.4,64.2],[29.5,64.9],[30.2,65.8],[29.1,66.9],[30.0,67.7],[28.4,68.4],[28.6,69.1],[29.4,69.2],[31.1,69.6],[31.1,69.6],[32.1,69.9],[33.8,69.3],[36.5,69.1],[40.3,67.9],[41.1,67.5],[41.1,66.8],[40.0,66.3],[38.4,66.0],[33.9,66.8],[33.2,66.6],[34.8,65.9],[34.9,65.4],[34.9,64.4],[36.2,64.1],[37.0,63.8],[37.1,64.3],[36.5,64.8],[37.2,65.1],[39.6,64.5],[40.4,64.8],[39.8,65.5],[42.1,66.5],[43.0,66.4],[43.9,66.1],[44.5,66.8],[43.7,67.4],[44.2,68.0],[43.5,68.6],[46.2,68.2],[46.8,67.7],[45.6,67.6],[45.6,67.0],[46.3,66.7],[47.9,66.9],[48.1,67.5],[50.2,68.0],[53.7,68.9],[54.5,68.8],[53.5,68.2],[54.7,68.1],[55.4,68.4],[57.3,68.5],[58.8,68.9],[59.9,68.3],[61.1,68.9],[60.0,69.5],[60.5,69.8],[63.5,69.5],[64.9,69.2],[68.5,68.1],[69.2,68.6],[68.2,69.1],[68.1,69.4],[66.9,69.5],[67.3,69.9],[66.7,70.7],[66.7,71.0],[68.5,71.9],[69.2,72.8],[69.9,73.0],[72.6,72.8],[72.8,72.2],[71.8,71.4],[72.5,71.1],[72.8,70.4],[72.6,69.0],[73.7,68.4],[73.2,67.7],[71.3,66.3],[72.4,66.2],[72.8,66.5],[73.9,66.8],[74.2,67.3],[75.1,67.8],[74.5,68.3],[74.9,69.0],[73.8,69.1],[73.6,69.6],[74.4,70.6],[73.1,71.4],[74.9,72.1],[74.7,72.8],[75.2,72.9],[75.7,72.3],[75.3,71.3],[76.4,71.2],[75.9,71.9],[77.6,72.3],[79.7,72.3],[81.5,71.8],[80.6,72.6],[80.5,73.6],[82.2,73.8],[84.7,73.8],[86.8,73.9],[86.0,74.5],[87.2,75.1],[88.3,75.1],[90.3,75.6],[92.9,75.8],[93.2,76.0],[95.9,76.1],[96.7,75.9],[98.9,76.4],[100.8,76.4],[101.0,76.9],[102.0,77.3],[104.4,77.7],[106.1,77.4],[104.7,77.1],[107.0,77.0],[107.2,76.5],[108.2,76.7],[111.1,76.7],[113.3,76.2],[114.1,75.8],[113.9,75.3],[112.8,75.0],[110.2,74.5],[109.4,74.2],[110.6,74.0],[112.1,73.8],[113.0,74.0],[113.5,73.3],[114.0,73.6],[115.6,73.8],[118.8,73.6],[119.0,73.1],[123.2,73.0],[123.3,73.7],[125.4,73.6],[127.0,73.6],[128.6,73.0],[129.1,72.4],[128.5,72.0],[129.7,71.2],[131.3,70.8],[132.3,71.8],[133.9,71.4],[135.6,71.7],[137.5,71.3],[138.2,71.6],[139.9,71.5],[139.1,72.4],[140.5,72.8],[149.5,72.2],[150.4,71.6],[153.0,70.8],[157.0,71.0],[159.0,70.9],[159.8,70.5],[159.7,69.7],[160.9,69.4],[162.3,69.6],[164.1,69.7],[165.9,69.5],[167.8,69.6],[169.6,68.7],[170.8,69.0],[170.0,69.7],[170.5,70.1],[173.6,69.8],[175.7,69.9],[178.6,69.4],[180,69.0],[180,65.0],[180.0,65.0],[178.7,64.5],[177.4,64.6],[178.3,64.1],[178.9,63.3],[179.4,63.0],[179.5,62.6],[179.2,62.3],[177.4,62.5],[174.6,61.8],[173.7,61.7],[172.2,61.0],[170.7,60.3],[170.3,59.9],[168.9,60.6],[166.3,59.8],[165.8,60.2],[164.9,59.7],[163.5,59.9],[163.2,59.2],[162.0,58.2],[162.1,57.8],[163.2,57.6],[163.1,56.2],[162.1,56.1],[161.7,55.3],[162.1,54.9],[160.4,54.3],[160.0,53.2],[158.5,53.0],[158.2,51.9],[156.8,51.0],[156.4,51.7],[156.0,53.2],[155.4,55.4],[155.9,56.8],[156.8,57.4],[156.8,57.8],[158.4,58.1],[160.2,59.3],[161.9,60.3],[163.7,61.1],[164.5,62.6],[163.3,62.5],[162.7,61.6],[160.1,60.5],[159.3,61.8],[156.7,61.4],[154.2,59.8],[155.0,59.1],[152.8,58.9],[151.3,58.8],[151.3,59.5],[149.8,59.7],[148.5,59.2],[145.5,59.3],[142.2,59.0],[139.0,57.1],[135.1,54.7],[136.7,54.6],[137.2,54.0],[138.2,53.8],[138.8,54.3],[139.9,54.2],[141.3,53.1],[141.4,52.2],[140.6,51.2],[140.5,50.0],[140.1,48.4],[138.6,47.0],[138.2,46.3],[136.9,45.1],[135.5,44.0],[134.9,43.4],[133.5,42.8],[132.9,42.8],[132.3,43.3],[130.9,42.6],[130.8,42.2],[130.8,42.2],[130.8,42.2],[130.8,42.2],[130.6,42.4],[130.6,42.4],[130.6,42.9],[131.1,42.9],[131.3,44.1],[131.0,45.0],[131.9,45.3],[133.1,45.1],[133.8,46.1],[134.1,47.2],[134.5,47.6],[135.0,48.5],[133.4,48.2],[132.5,47.8],[131.0,47.8],[130.6,48.7],[129.4,49.4],[127.7,49.8],[127.3,50.7],[126.9,51.4],[126.6,51.8],[125.9,52.8],[125.1,53.2],[123.6,53.5],[122.2,53.4],[121.0,53.3],[120.2,52.8],[120.7,52.5],[120.7,52.0],[120.2,51.6],[119.3,50.6],[119.3,50.1],[117.9,49.5],[116.7,49.9],[115.5,49.8],[115.0,50.1],[114.4,50.2],[112.9,49.5],[111.6,49.4],[110.7,49.1],[109.4,49.3],[108.5,49.3],[107.9,49.8],[106.9,50.3],[105.9,50.4],[104.6,50.3],[103.7,50.1],[102.3,50.5],[102.1,51.3],[100.9,51.5],[100.0,51.6],[98.9,52.0],[97.8,51.0],[98.2,50.4],[97.3,49.7],[95.8,50.0],[94.8,50.0],[94.1,50.5],[93.1,50.5],[92.2,50.8],[90.7,50.3],[88.8,49.5],[87.8,49.3],[87.4,49.2],[86.8,49.8],[85.5,49.7],[85.1,50.1],[84.4,50.3],[83.9,50.9],[83.4,51.1],[81.9,50.8],[80.6,51.4],[80.0,50.9],[77.8,53.4],[76.5,54.2],[76.9,54.5],[74.4,53.5],[73.4,53.5],[73.5,54.0],[72.2,54.4],[71.2,54.1],[70.9,55.2],[69.1,55.4],[68.2,55.0],[65.7,54.6],[65.2,54.4],[61.4,54.0],[61.0,53.7],[61.7,53.0],[60.7,52.7],[60.9,52.4],[60.0,52.0],[61.6,51.3],[61.3,50.8],[59.9,50.8],[59.6,50.5],[58.4,51.1],[56.8,51.0],[55.7,50.6],[54.5,51.0],[52.3,51.7],[50.8,51.7],[48.7,50.6],[48.6,49.9],[47.5,50.5],[46.8,49.4],[47.0,49.2],[46.5,48.4],[47.3,47.7],[48.1,47.7],[48.7,47.1],[48.6,46.6],[49.1,46.4]]],[[[93.8,81.0],[95.9,81.3],[97.9,80.7],[100.2,79.8],[99.9,78.9],[97.8,78.8],[95.0,79.0],[93.3,79.4],[92.5,80.1],[91.2,80.3],[93.8,81.0]]],[[[102.8,79.3],[105.4,78.7],[105.1,78.3],[99.4,77.9],[101.3,79.2],[102.1,79.3],[102.8,79.3]]],[[[138.8,76.1],[141.5,76.1],[145.1,75.6],[144.3,74.8],[140.6,74.8],[139.0,74.6],[137.0,75.3],[137.5,75.9],[138.8,76.1]]],[[[148.2,75.3],[150.7,75.1],[149.6,74.7],[148.0,74.8],[146.1,75.2],[146.4,75.5],[148.2,75.3]]],[[[139.9,73.4],[140.8,73.8],[142.1,73.9],[143.5,73.5],[143.6,73.2],[142.1,73.2],[140.0,73.3],[139.9,73.4]]],[[[44.8,80.6],[46.8,80.8],[48.3,80.8],[48.5,80.5],[49.1,80.8],[50.0,80.9],[51.5,80.7],[51.1,80.5],[49.8,80.4],[48.9,80.3],[48.8,80.2],[47.6,80.0],[46.5,80.2],[47.1,80.6],[44.8,80.6]]],[[[22.7,54.3],[20.9,54.3],[19.7,54.4],[19.9,54.9],[21.3,55.2],[22.3,55.0],[22.8,54.9],[22.7,54.6],[22.7,54.3]]],[[[53.5,73.7],[55.9,74.6],[55.6,75.1],[57.9,75.6],[61.2,76.3],[64.5,76.4],[66.2,76.8],[68.2,76.9],[68.9,76.5],[68.2,76.2],[64.6,75.7],[61.6,75.3],[58.5,74.3],[57.0,73.3],[55.4,72.4],[55.6,71.5],[57.5,70.7],[56.9,70.6],[53.7,70.8],[53.4,71.2],[51.6,71.5],[51.5,72.0],[52.5,72.2],[52.4,72.8],[54.4,73.6],[53.5,73.7]]],[[[142.9,53.7],[143.3,52.7],[143.2,51.8],[143.6,50.7],[144.7,49.0],[143.2,49.3],[142.6,47.9],[143.5,46.8],[143.5,46.1],[142.7,46.7],[142.1,46.0],[141.9,46.8],[142.0,47.8],[141.9,48.9],[142.1,49.6],[142.2,51.0],[141.6,51.9],[141.7,53.3],[142.6,53.8],[142.2,54.2],[142.7,54.4],[142.9,53.7]]],[[[-174.9,67.2],[-175.0,66.6],[-174.3,66.3],[-174.6,67.1],[-171.9,66.9],[-169.9,66.0],[-170.9,65.5],[-172.5,65.4],[-172.6,64.5],[-173.0,64.3],[-173.9,64.3],[-174.7,64.6],[-176.0,64.9],[-176.2,65.4],[-177.2,65.5],[-178.4,65.4],[-178.9,65.7],[-178.7,66.1],[-179.9,65.9],[-179.4,65.4],[-180,65.0],[-180,69.0],[-177.6,68.2],[-174.9,67.2]]],[[[-178.7,70.9],[-180,70.8],[-180,71.5],[-179.9,71.6],[-179.0,71.6],[-177.6,71.3],[-177.7,71.1],[-178.7,70.9]]],[[[33.4,46.0],[33.7,46.2],[34.4,46.0],[34.7,46.0],[34.9,45.8],[35.0,45.7],[35.0,45.7],[35.5,45.4],[36.5,45.5],[36.3,45.1],[35.2,44.9],[33.9,44.4],[33.3,44.6],[33.5,45.0],[32.5,45.3],[32.6,45.5],[33.6,45.9],[33.4,46.0]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"BS","NAME":"Bahamas"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-79.0,26.8],[-78.5,26.9],[-77.8,26.8],[-77.8,26.6],[-78.9,26.4],[-79.0,26.8]]],[[[-77.8,27.0],[-77,26.6],[-77.2,25.9],[-77.4,26.0],[-77.3,26.5],[-77.8,26.9],[-77.8,27.0]]],[[[-78.2,25.2],[-77.9,25.2],[-77.5,24.3],[-77.5,23.8],[-77.8,23.7],[-78.0,24.3],[-78.4,24.6],[-78.2,25.2]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"FK","NAME":"Falkland Is."},"geometry":{"type":"Polygon","coordinates":[[[-61.2,-51.9],[-60,-51.2],[-59.1,-51.5],[-58.5,-51.1],[-57.8,-51.5],[-58.0,-51.9],[-59.4,-52.2],[-59.9,-51.9],[-60.7,-52.3],[-61.2,-51.9]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"NO","NAME":"Norway"},"geometry":{"type":"MultiPolygon","coordinates":[[[[15.1,79.7],[15.5,80.0],[17.0,80.1],[18.3,79.7],[21.5,79.0],[19.0,78.6],[18.5,77.8],[17.6,77.6],[17.1,76.8],[15.9,76.8],[13.8,77.4],[14.7,77.7],[13.2,78.0],[11.2,78.9],[10.4,79.7],[13.2,80.0],[13.7,79.7],[15.1,79.7]]],[[[31.1,69.6],[29.4,69.2],[28.6,69.1],[29.0,69.8],[27.7,70.2],[26.2,69.8],[25.7,69.1],[24.7,68.6],[23.7,68.9],[22.4,68.8],[21.2,69.4],[20.6,69.1],[20.0,69.1],[19.9,68.4],[18.0,68.6],[17.7,68.0],[16.8,68.0],[16.1,67.3],[15.1,66.2],[13.6,64.8],[13.9,64.4],[13.6,64.0],[12.6,64.1],[11.9,63.1],[12.0,61.8],[12.6,61.3],[12.3,60.1],[11.5,59.4],[11.0,58.9],[10.4,59.5],[8.4,58.3],[7.0,58.1],[5.7,58.6],[5.3,59.7],[5.0,62.0],[5.9,62.6],[8.6,63.5],[10.5,64.5],[12.4,65.9],[14.8,67.8],[16.4,68.6],[19.2,69.8],[21.4,70.3],[23.0,70.2],[24.5,71.0],[26.4,71.0],[28.2,71.2],[31.3,70.5],[30.0,70.2],[31.1,69.6]]],[[[27.4,80.1],[25.9,79.5],[23.0,79.4],[20.1,79.6],[19.9,79.8],[18.5,79.9],[17.4,80.3],[20.5,80.6],[21.9,80.4],[22.9,80.7],[25.4,80.4],[27.4,80.1]]],[[[24.7,77.9],[22.5,77.4],[20.7,77.7],[21.4,77.9],[20.8,78.3],[22.9,78.5],[23.3,78.1],[24.7,77.9]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"GL","NAME":"Greenland"},"geometry":{"type":"Polygon","coordinates":[[[-46.8,82.6],[-43.4,83.2],[-39.9,83.2],[-38.6,83.5],[-35.1,83.6],[-27.1,83.5],[-20.8,82.7],[-22.7,82.3],[-26.5,82.3],[-31.9,82.2],[-31.4,82.0],[-27.9,82.1],[-24.8,81.8],[-22.9,82.1],[-22.1,81.7],[-23.2,81.2],[-20.6,81.5],[-15.8,81.9],[-12.8,81.7],[-12.2,81.3],[-16.3,80.6],[-16.9,80.3],[-20.0,80.2],[-17.7,80.1],[-18.9,79.4],[-19.7,78.8],[-19.7,77.6],[-18.5,77.0],[-20.0,76.9],[-21.7,76.6],[-19.8,76.1],[-19.6,75.2],[-20.7,75.2],[-19.4,74.3],[-21.6,74.2],[-20.4,73.8],[-20.8,73.5],[-22.2,73.3],[-23.6,73.3],[-22.3,72.6],[-22.3,72.2],[-24.3,72.6],[-24.8,72.3],[-23.4,72.1],[-22.1,71.5],[-21.8,70.7],[-23.5,70.5],[-24.3,70.9],[-25.5,71.4],[-25.2,70.8],[-26.4,70.2],[-23.7,70.2],[-22.3,70.1],[-25.0,69.3],[-27.7,68.5],[-30.7,68.1],[-31.8,68.1],[-32.8,67.7],[-34.2,66.7],[-36.4,66.0],[-37.0,65.9],[-38.4,65.7],[-39.8,65.5],[-40.7,64.8],[-40.7,64.1],[-41.2,63.5],[-42.8,62.7],[-42.4,61.9],[-42.9,61.1],[-43.4,60.1],[-44.8,60.0],[-46.3,60.9],[-48.3,60.9],[-49.2,61.4],[-49.9,62.4],[-51.6,63.6],[-52.1,64.3],[-52.3,65.2],[-53.7,66.1],[-53.3,66.8],[-54.0,67.2],[-53.0,68.4],[-51.5,68.7],[-51.1,69.1],[-50.9,69.9],[-52.0,69.6],[-52.6,69.4],[-53.5,69.3],[-54.7,69.6],[-54.8,70.3],[-54.4,70.8],[-53.4,70.8],[-51.4,70.6],[-53.1,71.2],[-54.0,71.5],[-55,71.4],[-55.8,71.7],[-54.7,72.6],[-55.3,73.0],[-56.1,73.6],[-57.3,74.7],[-58.6,75.1],[-58.6,75.5],[-61.3,76.1],[-63.4,76.2],[-66.1,76.1],[-68.5,76.1],[-69.7,76.4],[-71.4,77.0],[-68.8,77.3],[-66.8,77.4],[-71.0,77.6],[-73.3,78.0],[-73.2,78.4],[-69.4,78.9],[-65.7,79.4],[-65.3,79.8],[-68.0,80.1],[-67.2,80.5],[-63.7,81.2],[-62.2,81.3],[-62.7,81.8],[-60.3,82.0],[-57.2,82.2],[-54.1,82.2],[-53.0,81.9],[-50.4,82.4],[-48.0,82.1],[-46.6,82.0],[-44.5,81.7],[-46.9,82.2],[-46.8,82.6]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"TF","NAME":"Fr. S. Antarctic Lands"},"geometry":{"type":"Polygon","coordinates":[[[68.9,-48.6],[69.6,-48.9],[70.5,-49.1],[70.6,-49.3],[70.3,-49.7],[68.7,-49.8],[68.7,-49.2],[68.9,-48.8],[68.9,-48.6]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"TL","NAME":"Timor-Leste"},"geometry":{"type":"Polygon","coordinates":[[[125.0,-8.9],[125.1,-8.7],[125.9,-8.4],[126.6,-8.4],[127.0,-8.3],[127.3,-8.4],[127.0,-8.7],[125.9,-9.1],[125.1,-9.4],[125.1,-9.1],[125.0,-8.9]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"ZA","NAME":"South Africa"},"geometry":{"type":"Polygon","coordinates":[[[16.3,-28.6],[16.8,-28.1],[17.2,-28.4],[17.4,-28.8],[17.8,-28.9],[18.5,-29.0],[19.0,-29.0],[19.9,-28.5],[19.9,-24.8],[20.2,-24.9],[20.8,-25.9],[20.7,-26.5],[20.9,-26.8],[21.6,-26.7],[22.1,-26.3],[22.6,-26.0],[22.8,-25.5],[23.3,-25.3],[23.7,-25.4],[24.2,-25.7],[25.0,-25.7],[25.7,-25.5],[25.8,-25.2],[25.9,-24.7],[26.5,-24.6],[26.8,-24.2],[27.1,-23.6],[28.0,-22.8],[29.4,-22.1],[29.8,-22.1],[30.3,-22.3],[30.7,-22.2],[31.2,-22.3],[31.7,-23.7],[31.9,-24.4],[31.8,-25.5],[31.8,-25.8],[31.3,-25.7],[31.0,-25.7],[30.9,-26.0],[30.7,-26.4],[30.7,-26.7],[31.3,-27.3],[31.9,-27.2],[32.1,-26.7],[32.8,-26.7],[32.6,-27.5],[32.5,-28.3],[32.2,-28.8],[31.5,-29.3],[31.3,-29.4],[30.9,-29.9],[30.6,-30.4],[30.1,-31.1],[28.9,-32.2],[28.2,-32.8],[27.5,-33.2],[26.4,-33.6],[25.9,-33.7],[25.8,-33.9],[25.2,-33.8],[24.7,-34.0],[23.6,-33.8],[23.0,-33.9],[22.6,-33.9],[21.5,-34.3],[20.7,-34.4],[20.1,-34.8],[19.6,-34.8],[19.2,-34.5],[18.9,-34.4],[18.4,-34.0],[18.4,-34.1],[18.2,-33.9],[18.3,-33.3],[17.9,-32.6],[18.2,-32.4],[18.2,-31.7],[17.6,-30.7],[17.1,-29.9],[17.1,-29.9],[16.3,-28.6]],[[29.0,-29.0],[28.5,-28.6],[28.1,-28.9],[27.5,-29.2],[27.0,-29.9],[27.7,-30.6],[28.1,-30.5],[28.3,-30.2],[28.8,-30.1],[29.0,-29.7],[29.3,-29.3],[29.0,-29.0]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"LS","NAME":"Lesotho"},"geometry":{"type":"Polygon","coordinates":[[[29.0,-29.0],[29.3,-29.3],[29.0,-29.7],[28.8,-30.1],[28.3,-30.2],[28.1,-30.5],[27.7,-30.6],[27.0,-29.9],[27.5,-29.2],[28.1,-28.9],[28.5,-28.6],[29.0,-29.0]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"MX","NAME":"Mexico"},"geometry":{"type":"Polygon","coordinates":[[[-117.1,32.5],[-116.0,32.6],[-114.7,32.7],[-114.8,32.5],[-113.3,32.0],[-111.0,31.3],[-109.0,31.3],[-108.2,31.3],[-108.2,31.8],[-106.5,31.8],[-106.1,31.4],[-105.6,31.1],[-105.0,30.6],[-104.7,30.1],[-104.5,29.6],[-103.9,29.3],[-103.1,29.0],[-102.5,29.8],[-101.7,29.8],[-101.0,29.4],[-100.5,28.7],[-100.1,28.1],[-99.5,27.5],[-99.3,26.8],[-99.0,26.4],[-98.2,26.1],[-97.5,25.8],[-97.1,25.9],[-97.5,25.0],[-97.7,24.3],[-97.8,22.9],[-97.9,22.4],[-97.7,21.9],[-97.4,21.4],[-97.2,20.6],[-96.5,19.9],[-96.3,19.3],[-95.9,18.8],[-94.8,18.6],[-94.4,18.1],[-93.5,18.4],[-92.8,18.5],[-92.0,18.7],[-91.4,18.9],[-90.8,19.3],[-90.5,19.9],[-90.5,20.7],[-90.3,21.0],[-89.6,21.3],[-88.5,21.5],[-87.7,21.5],[-87.1,21.5],[-86.8,21.3],[-86.8,20.8],[-87.4,20.3],[-87.6,19.6],[-87.4,19.5],[-87.6,19.0],[-87.8,18.3],[-88.1,18.5],[-88.3,18.5],[-88.5,18.5],[-88.8,17.9],[-89.0,18.0],[-89.2,18.0],[-89.1,17.8],[-90.1,17.8],[-91.0,17.8],[-91.0,17.3],[-91.5,17.3],[-91.1,16.9],[-90.7,16.7],[-90.6,16.5],[-90.4,16.4],[-90.5,16.1],[-91.7,16.1],[-92.2,15.3],[-92.1,15.1],[-92.2,14.8],[-92.2,14.5],[-93.4,15.6],[-93.9,15.9],[-94.7,16.2],[-95.3,16.1],[-96.1,15.8],[-96.6,15.7],[-97.3,15.9],[-98.0,16.1],[-98.9,16.6],[-99.7,16.7],[-100.8,17.2],[-101.7,17.6],[-101.9,17.9],[-102.5,18.0],[-103.5,18.3],[-103.9,18.7],[-105.0,19.3],[-105.5,19.9],[-105.7,20.4],[-105.4,20.5],[-105.5,20.8],[-105.3,21.1],[-105.3,21.4],[-105.6,21.9],[-105.7,22.3],[-106.0,22.8],[-106.9,23.8],[-107.9,24.5],[-108.4,25.2],[-109.3,25.6],[-109.4,25.8],[-109.3,26.4],[-109.8,26.7],[-110.4,27.2],[-110.6,27.9],[-111.2,27.9],[-111.8,28.5],[-112.2,29.0],[-112.3,29.3],[-112.8,30.0],[-113.2,30.8],[-113.1,31.2],[-113.9,31.6],[-114.2,31.5],[-114.8,31.8],[-114.9,31.4],[-114.8,30.9],[-114.7,30.2],[-114.3,29.8],[-113.6,29.1],[-113.4,28.8],[-113.3,28.8],[-113.1,28.4],[-113.0,28.4],[-112.8,27.8],[-112.5,27.5],[-112.2,27.2],[-111.6,26.7],[-111.3,25.7],[-111.0,25.3],[-110.7,24.8],[-110.7,24.3],[-110.2,24.3],[-109.8,23.8],[-109.4,23.4],[-109.4,23.2],[-109.9,22.8],[-110.0,22.8],[-110.3,23.4],[-110.9,24.0],[-111.7,24.5],[-112.2,24.7],[-112.1,25.5],[-112.3,26.0],[-112.8,26.3],[-113.5,26.8],[-113.6,26.6],[-113.8,26.9],[-114.5,27.1],[-115.1,27.7],[-115.0,27.8],[-114.6,27.7],[-114.2,28.1],[-114.2,28.6],[-114.9,29.3],[-115.5,29.6],[-115.9,30.2],[-116.3,30.8],[-116.7,31.6],[-117.1,32.5]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"UY","NAME":"Uruguay"},"geometry":{"type":"Polygon","coordinates":[[[-57.6,-30.2],[-57.0,-30.1],[-56.0,-30.9],[-55.6,-30.9],[-54.6,-31.5],[-53.8,-32.0],[-53.2,-32.7],[-53.7,-33.2],[-53.4,-33.8],[-53.8,-34.4],[-54.9,-35.0],[-55.7,-34.8],[-56.2,-34.9],[-57.1,-34.4],[-57.8,-34.5],[-58.4,-33.9],[-58.3,-33.3],[-58.1,-33.0],[-58.1,-32.0],[-57.9,-31.0],[-57.6,-30.2]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"BR","NAME":"Brazil"},"geometry":{"type":"Polygon","coordinates":[[[-53.4,-33.8],[-53.7,-33.2],[-53.2,-32.7],[-53.8,-32.0],[-54.6,-31.5],[-55.6,-30.9],[-56.0,-30.9],[-57.0,-30.1],[-57.6,-30.2],[-56.3,-28.9],[-55.2,-27.9],[-54.5,-27.5],[-53.6,-26.9],[-53.6,-26.1],[-54.1,-25.5],[-54.6,-25.7],[-54.4,-25.2],[-54.3,-24.6],[-54.3,-24.0],[-54.7,-23.8],[-55.0,-24.0],[-55.4,-24.0],[-55.5,-23.6],[-55.6,-22.7],[-55.8,-22.4],[-56.5,-22.1],[-56.9,-22.3],[-57.9,-22.1],[-57.9,-20.7],[-58.2,-20.2],[-57.9,-20.0],[-57.9,-19.4],[-57.7,-19.0],[-57.5,-18.2],[-57.7,-17.6],[-58.3,-17.3],[-58.4,-16.9],[-58.2,-16.3],[-60.2,-16.3],[-60.5,-15.1],[-60.3,-15.1],[-60.3,-14.6],[-60.5,-14.4],[-60.5,-13.8],[-61.1,-13.5],[-61.7,-13.5],[-62.1,-13.2],[-62.8,-13.0],[-63.2,-12.6],[-64.3,-12.5],[-65.4,-11.6],[-65.3,-10.9],[-65.4,-10.5],[-65.3,-9.8],[-66.6,-9.9],[-67.2,-10.3],[-68.0,-10.7],[-68.3,-11.0],[-68.8,-11.0],[-69.5,-11.0],[-70.1,-11.1],[-70.5,-11.0],[-70.5,-9.5],[-71.3,-10.1],[-72.2,-10.1],[-72.6,-9.5],[-73.2,-9.5],[-73.0,-9.0],[-73.6,-8.4],[-74.0,-7.5],[-73.7,-7.3],[-73.7,-6.9],[-73.1,-6.6],[-73.2,-6.1],[-73.0,-5.7],[-72.9,-5.3],[-71.7,-4.6],[-70.9,-4.4],[-70.8,-4.3],[-69.9,-4.3],[-69.4,-1.6],[-69.4,-1.1],[-69.6,-0.5],[-70.0,-0.2],[-70.0,0.5],[-69.5,0.7],[-69.3,0.6],[-69.2,1.0],[-69.8,1.1],[-69.8,1.7],[-67.9,1.7],[-67.5,2.0],[-67.3,1.7],[-67.1,1.1],[-66.9,1.3],[-66.3,0.7],[-65.5,0.8],[-65.4,1.1],[-64.6,1.3],[-64.2,1.5],[-64.1,1.9],[-63.4,2.2],[-63.4,2.4],[-64.3,2.5],[-64.4,3.1],[-64.4,3.8],[-64.8,4.1],[-64.6,4.1],[-63.9,4.0],[-63.1,3.8],[-62.8,4.0],[-62.1,4.2],[-61.0,4.5],[-60.6,4.9],[-60.7,5.2],[-60.2,5.2],[-60.0,5.0],[-60.1,4.6],[-59.8,4.4],[-59.5,4.0],[-59.8,3.6],[-60.0,2.8],[-59.7,2.2],[-59.6,1.8],[-59.0,1.3],[-58.5,1.3],[-58.4,1.5],[-58.1,1.5],[-57.7,1.7],[-57.3,1.9],[-56.8,1.9],[-56.5,1.9],[-56.0,1.8],[-55.9,2.0],[-56.1,2.2],[-56.0,2.5],[-55.6,2.4],[-55.1,2.5],[-54.5,2.3],[-54.1,2.1],[-53.8,2.4],[-53.6,2.3],[-53.4,2.1],[-52.9,2.1],[-52.6,2.5],[-52.2,3.2],[-51.7,4.2],[-51.3,4.2],[-51.1,3.7],[-50.5,1.9],[-50.0,1.7],[-49.9,1.0],[-50.7,0.2],[-50.4,-0.1],[-48.6,-0.2],[-48.6,-1.2],[-47.8,-0.6],[-46.6,-0.9],[-44.9,-1.6],[-44.4,-2.1],[-44.6,-2.7],[-43.4,-2.4],[-41.5,-2.9],[-40.0,-2.9],[-38.5,-3.7],[-37.2,-4.8],[-36.5,-5.1],[-35.6,-5.1],[-35.2,-5.5],[-34.9,-6.7],[-34.7,-7.3],[-35.1,-9.0],[-35.6,-9.6],[-37.0,-11.0],[-37.7,-12.2],[-38.4,-13.0],[-38.7,-13.1],[-39.0,-13.8],[-38.9,-15.7],[-39.2,-17.2],[-39.3,-17.9],[-39.6,-18.3],[-39.8,-19.6],[-40.8,-20.9],[-40.9,-21.9],[-41.8,-22.4],[-42.0,-23.0],[-43.1,-23.0],[-44.6,-23.4],[-45.4,-23.8],[-46.5,-24.1],[-47.6,-24.9],[-48.5,-25.9],[-48.6,-26.6],[-48.5,-27.2],[-48.7,-28.2],[-48.9,-28.7],[-49.6,-29.2],[-50.7,-31.0],[-51.6,-31.8],[-52.3,-32.2],[-52.7,-33.2],[-53.4,-33.8]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"BO","NAME":"Bolivia"},"geometry":{"type":"Polygon","coordinates":[[[-69.5,-11.0],[-68.8,-11.0],[-68.3,-11.0],[-68.0,-10.7],[-67.2,-10.3],[-66.6,-9.9],[-65.3,-9.8],[-65.4,-10.5],[-65.3,-10.9],[-65.4,-11.6],[-64.3,-12.5],[-63.2,-12.6],[-62.8,-13.0],[-62.1,-13.2],[-61.7,-13.5],[-61.1,-13.5],[-60.5,-13.8],[-60.5,-14.4],[-60.3,-14.6],[-60.3,-15.1],[-60.5,-15.1],[-60.2,-16.3],[-58.2,-16.3],[-58.4,-16.9],[-58.3,-17.3],[-57.7,-17.6],[-57.5,-18.2],[-57.7,-19.0],[-57.9,-19.4],[-57.9,-20.0],[-58.2,-20.2],[-58.2,-19.9],[-59.1,-19.4],[-60.0,-19.3],[-61.8,-19.6],[-62.3,-20.5],[-62.3,-21.1],[-62.7,-22.2],[-62.8,-22.0],[-64.0,-22.0],[-64.4,-22.8],[-65.0,-22.1],[-66.3,-21.8],[-67.1,-22.7],[-67.8,-22.9],[-68.2,-21.5],[-68.8,-20.4],[-68.4,-19.4],[-69.0,-19.0],[-69.1,-18.3],[-69.6,-17.6],[-69.0,-16.5],[-69.4,-15.7],[-69.2,-15.3],[-69.3,-15.0],[-68.9,-14.5],[-68.9,-13.6],[-68.9,-12.9],[-68.7,-12.6],[-69.5,-11.0]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"PE","NAME":"Peru"},"geometry":{"type":"Polygon","coordinates":[[[-69.9,-4.3],[-70.8,-4.3],[-70.9,-4.4],[-71.7,-4.6],[-72.9,-5.3],[-73.0,-5.7],[-73.2,-6.1],[-73.1,-6.6],[-73.7,-6.9],[-73.7,-7.3],[-74.0,-7.5],[-73.6,-8.4],[-73.0,-9.0],[-73.2,-9.5],[-72.6,-9.5],[-72.2,-10.1],[-71.3,-10.1],[-70.5,-9.5],[-70.5,-11.0],[-70.1,-11.1],[-69.5,-11.0],[-68.7,-12.6],[-68.9,-12.9],[-68.9,-13.6],[-68.9,-14.5],[-69.3,-15.0],[-69.2,-15.3],[-69.4,-15.7],[-69.0,-16.5],[-69.6,-17.6],[-69.9,-18.1],[-70.4,-18.3],[-71.4,-17.8],[-71.5,-17.4],[-73.4,-16.4],[-75.2,-15.3],[-76.0,-14.6],[-76.4,-13.8],[-76.3,-13.5],[-77.1,-12.2],[-78.1,-10.4],[-79.0,-8.4],[-79.4,-7.9],[-79.8,-7.2],[-80.5,-6.5],[-81.2,-6.1],[-80.9,-5.7],[-81.4,-4.7],[-81.1,-4.0],[-80.3,-3.4],[-80.2,-3.8],[-80.5,-4.1],[-80.4,-4.4],[-80.0,-4.3],[-79.6,-4.5],[-79.2,-5.0],[-78.6,-4.5],[-78.5,-3.9],[-77.8,-3.0],[-76.6,-2.6],[-75.5,-1.6],[-75.2,-0.9],[-75.4,-0.2],[-75.1,-0.1],[-74.4,-0.5],[-74.1,-1.0],[-73.7,-1.3],[-73.1,-2.3],[-72.3,-2.4],[-71.8,-2.2],[-71.4,-2.3],[-70.8,-2.3],[-70.0,-2.7],[-70.7,-3.7],[-70.4,-3.8],[-69.9,-4.3]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"CO","NAME":"Colombia"},"geometry":{"type":"Polygon","coordinates":[[[-66.9,1.3],[-67.1,1.1],[-67.3,1.7],[-67.5,2.0],[-67.9,1.7],[-69.8,1.7],[-69.8,1.1],[-69.2,1.0],[-69.3,0.6],[-69.5,0.7],[-70.0,0.5],[-70.0,-0.2],[-69.6,-0.5],[-69.4,-1.1],[-69.4,-1.6],[-69.9,-4.3],[-70.4,-3.8],[-70.7,-3.7],[-70.0,-2.7],[-70.8,-2.3],[-71.4,-2.3],[-71.8,-2.2],[-72.3,-2.4],[-73.1,-2.3],[-73.7,-1.3],[-74.1,-1.0],[-74.4,-0.5],[-75.1,-0.1],[-75.4,-0.2],[-75.8,0.1],[-76.3,0.4],[-76.6,0.3],[-77.4,0.4],[-77.7,0.8],[-77.9,0.8],[-78.9,1.4],[-79.0,1.7],[-78.6,1.8],[-78.7,2.3],[-78.4,2.6],[-77.9,2.7],[-77.5,3.3],[-77.1,3.8],[-77.5,4.1],[-77.3,4.7],[-77.5,5.6],[-77.3,5.8],[-77.5,6.7],[-77.9,7.2],[-77.8,7.7],[-77.4,7.6],[-77.2,7.9],[-77.5,8.5],[-77.4,8.7],[-76.8,8.6],[-76.1,9.3],[-75.7,9.4],[-75.7,9.8],[-75.5,10.6],[-74.9,11.1],[-74.3,11.1],[-74.2,11.3],[-73.4,11.2],[-72.6,11.7],[-72.2,12.0],[-71.8,12.4],[-71.4,12.4],[-71.1,12.1],[-71.3,11.8],[-72.0,11.6],[-72.2,11.1],[-72.6,10.8],[-72.9,10.5],[-73.0,9.7],[-73.3,9.2],[-72.8,9.1],[-72.7,8.6],[-72.4,8.4],[-72.4,8.0],[-72.5,7.6],[-72.4,7.4],[-72.2,7.3],[-72.0,7.0],[-70.7,7.1],[-70.1,7.0],[-69.4,6.1],[-69.0,6.2],[-68.3,6.2],[-67.7,6.3],[-67.3,6.1],[-67.5,5.6],[-67.7,5.2],[-67.8,4.5],[-67.6,3.8],[-67.3,3.5],[-67.3,3.3],[-67.8,2.8],[-67.4,2.6],[-67.2,2.3],[-66.9,1.3]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"PA","NAME":"Panama"},"geometry":{"type":"Polygon","coordinates":[[[-77.4,8.7],[-77.5,8.5],[-77.2,7.9],[-77.4,7.6],[-77.8,7.7],[-77.9,7.2],[-78.2,7.5],[-78.4,8.1],[-78.2,8.3],[-78.4,8.4],[-78.6,8.7],[-79.1,9.0],[-79.6,8.9],[-79.8,8.6],[-80.2,8.3],[-80.4,8.3],[-80.5,8.1],[-80.0,7.5],[-80.3,7.4],[-80.4,7.3],[-80.9,7.2],[-81.1,7.8],[-81.2,7.6],[-81.5,7.7],[-81.7,8.1],[-82.1,8.2],[-82.4,8.3],[-82.8,8.3],[-82.9,8.1],[-83.0,8.2],[-82.9,8.4],[-82.8,8.6],[-82.9,8.8],[-82.7,8.9],[-82.9,9.1],[-82.9,9.5],[-82.5,9.6],[-82.2,9.2],[-82.2,9.0],[-81.8,9.0],[-81.7,9.0],[-81.4,8.8],[-80.9,8.9],[-80.5,9.1],[-79.9,9.3],[-79.6,9.6],[-79.0,9.6],[-79.1,9.5],[-78.5,9.4],[-78.1,9.2],[-77.7,8.9],[-77.4,8.7]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"CR","NAME":"Costa Rica"},"geometry":{"type":"Polygon","coordinates":[[[-82.5,9.6],[-82.9,9.5],[-82.9,9.1],[-82.7,8.9],[-82.9,8.8],[-82.8,8.6],[-82.9,8.4],[-83.0,8.2],[-83.5,8.4],[-83.7,8.7],[-83.6,8.8],[-83.6,9.1],[-83.9,9.3],[-84.3,9.5],[-84.6,9.6],[-84.7,9.9],[-85.0,10.1],[-84.9,9.8],[-85.1,9.6],[-85.3,9.8],[-85.7,9.9],[-85.8,10.1],[-85.8,10.4],[-85.7,10.8],[-85.9,10.9],[-85.7,11.1],[-85.6,11.2],[-84.9,11.0],[-84.7,11.1],[-84.4,11.0],[-84.2,10.8],[-83.9,10.7],[-83.7,10.9],[-83.4,10.4],[-83.0,10.0],[-82.5,9.6]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"NI","NAME":"Nicaragua"},"geometry":{"type":"Polygon","coordinates":[[[-83.7,10.9],[-83.9,10.7],[-84.2,10.8],[-84.4,11.0],[-84.7,11.1],[-84.9,11.0],[-85.6,11.2],[-85.7,11.1],[-86.1,11.4],[-86.5,11.8],[-86.7,12.1],[-87.2,12.5],[-87.7,12.9],[-87.6,13.1],[-87.4,12.9],[-87.3,13.0],[-87.0,13.0],[-86.9,13.3],[-86.7,13.3],[-86.8,13.8],[-86.5,13.8],[-86.3,13.8],[-86.1,14.0],[-85.8,13.8],[-85.7,14.0],[-85.5,14.1],[-85.2,14.4],[-85.1,14.6],[-85.1,14.6],[-84.9,14.8],[-84.8,14.8],[-84.6,14.7],[-84.4,14.6],[-84.2,14.7],[-84.0,14.7],[-83.6,14.9],[-83.5,15.0],[-83.1,15.0],[-83.2,14.9],[-83.3,14.7],[-83.2,14.3],[-83.4,14.0],[-83.5,13.6],[-83.6,13.1],[-83.5,12.9],[-83.5,12.4],[-83.6,12.3],[-83.7,11.9],[-83.7,11.6],[-83.9,11.4],[-83.8,11.1],[-83.7,10.9]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"HN","NAME":"Honduras"},"geometry":{"type":"Polygon","coordinates":[[[-83.1,15.0],[-83.5,15.0],[-83.6,14.9],[-84.0,14.7],[-84.2,14.7],[-84.4,14.6],[-84.6,14.7],[-84.8,14.8],[-84.9,14.8],[-85.1,14.6],[-85.1,14.6],[-85.2,14.4],[-85.5,14.1],[-85.7,14.0],[-85.8,13.8],[-86.1,14.0],[-86.3,13.8],[-86.5,13.8],[-86.8,13.8],[-86.7,13.3],[-86.9,13.3],[-87.0,13.0],[-87.3,13.0],[-87.5,13.3],[-87.8,13.4],[-87.7,13.8],[-87.9,13.9],[-88.1,14.0],[-88.5,13.8],[-88.5,14.0],[-88.8,14.1],[-89.1,14.3],[-89.4,14.4],[-89.1,14.7],[-89.2,14.9],[-89.2,15.1],[-88.7,15.3],[-88.2,15.7],[-88.1,15.7],[-87.9,15.9],[-87.6,15.9],[-87.5,15.8],[-87.4,15.8],[-86.9,15.8],[-86.4,15.8],[-86.1,15.9],[-86.0,16.0],[-85.7,16.0],[-85.4,15.9],[-85.2,15.9],[-85.0,16.0],[-84.5,15.9],[-84.4,15.8],[-84.1,15.6],[-83.8,15.4],[-83.4,15.3],[-83.1,15.0]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"SV","NAME":"El Salvador"},"geometry":{"type":"Polygon","coordinates":[[[-89.4,14.4],[-89.1,14.3],[-88.8,14.1],[-88.5,14.0],[-88.5,13.8],[-88.1,14.0],[-87.9,13.9],[-87.7,13.8],[-87.8,13.4],[-87.9,13.1],[-88.5,13.2],[-88.8,13.3],[-89.3,13.5],[-89.8,13.5],[-90.1,13.7],[-90.1,13.9],[-89.7,14.1],[-89.5,14.2],[-89.6,14.4],[-89.4,14.4]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"GT","NAME":"Guatemala"},"geometry":{"type":"Polygon","coordinates":[[[-92.2,14.5],[-92.2,14.8],[-92.1,15.1],[-92.2,15.3],[-91.7,16.1],[-90.5,16.1],[-90.4,16.4],[-90.6,16.5],[-90.7,16.7],[-91.1,16.9],[-91.5,17.3],[-91.0,17.3],[-91.0,17.8],[-90.1,17.8],[-89.1,17.8],[-89.2,17.0],[-89.2,15.9],[-88.9,15.9],[-88.6,15.7],[-88.5,15.9],[-88.2,15.7],[-88.7,15.3],[-89.2,15.1],[-89.2,14.9],[-89.1,14.7],[-89.4,14.4],[-89.6,14.4],[-89.5,14.2],[-89.7,14.1],[-90.1,13.9],[-90.1,13.7],[-90.6,13.9],[-91.2,13.9],[-91.7,14.1],[-92.2,14.5]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"BZ","NAME":"Belize"},"geometry":{"type":"Polygon","coordinates":[[[-89.1,17.8],[-89.2,18.0],[-89.0,18.0],[-88.8,17.9],[-88.5,18.5],[-88.3,18.5],[-88.3,18.4],[-88.1,18.3],[-88.1,18.1],[-88.3,17.6],[-88.2,17.5],[-88.3,17.1],[-88.2,17.0],[-88.4,16.5],[-88.6,16.3],[-88.7,16.2],[-88.9,15.9],[-89.2,15.9],[-89.2,17.0],[-89.1,17.8]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"VE","NAME":"Venezuela"},"geometry":{"type":"Polygon","coordinates":[[[-60.7,5.2],[-60.6,4.9],[-61.0,4.5],[-62.1,4.2],[-62.8,4.0],[-63.1,3.8],[-63.9,4.0],[-64.6,4.1],[-64.8,4.1],[-64.4,3.8],[-64.4,3.1],[-64.3,2.5],[-63.4,2.4],[-63.4,2.2],[-64.1,1.9],[-64.2,1.5],[-64.6,1.3],[-65.4,1.1],[-65.5,0.8],[-66.3,0.7],[-66.9,1.3],[-67.2,2.3],[-67.4,2.6],[-67.8,2.8],[-67.3,3.3],[-67.3,3.5],[-67.6,3.8],[-67.8,4.5],[-67.7,5.2],[-67.5,5.6],[-67.3,6.1],[-67.7,6.3],[-68.3,6.2],[-69.0,6.2],[-69.4,6.1],[-70.1,7.0],[-70.7,7.1],[-72.0,7.0],[-72.2,7.3],[-72.4,7.4],[-72.5,7.6],[-72.4,8.0],[-72.4,8.4],[-72.7,8.6],[-72.8,9.1],[-73.3,9.2],[-73.0,9.7],[-72.9,10.5],[-72.6,10.8],[-72.2,11.1],[-72.0,11.6],[-71.3,11.8],[-71.4,11.5],[-71.9,11.4],[-71.6,11.0],[-71.6,10.4],[-72.1,9.9],[-71.7,9.1],[-71.3,9.1],[-71.0,9.9],[-71.4,10.2],[-71.4,11.0],[-70.2,11.4],[-70.3,11.8],[-69.9,12.2],[-69.6,11.5],[-68.9,11.4],[-68.2,10.9],[-68.2,10.6],[-67.3,10.5],[-66.2,10.6],[-65.7,10.2],[-64.9,10.1],[-64.3,10.4],[-64.3,10.6],[-63.1,10.7],[-61.9,10.7],[-62.7,10.4],[-62.4,9.9],[-61.6,9.9],[-60.8,9.4],[-60.7,8.6],[-60.2,8.6],[-59.8,8.4],[-60.6,7.8],[-60.6,7.4],[-60.3,7.0],[-60.5,6.9],[-61.2,6.7],[-61.1,6.2],[-61.4,6.0],[-60.7,5.2]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"GY","NAME":"Guyana"},"geometry":{"type":"Polygon","coordinates":[[[-56.5,1.9],[-56.8,1.9],[-57.3,1.9],[-57.7,1.7],[-58.1,1.5],[-58.4,1.5],[-58.5,1.3],[-59.0,1.3],[-59.6,1.8],[-59.7,2.2],[-60.0,2.8],[-59.8,3.6],[-59.5,4.0],[-59.8,4.4],[-60.1,4.6],[-60.0,5.0],[-60.2,5.2],[-60.7,5.2],[-61.4,6.0],[-61.1,6.2],[-61.2,6.7],[-60.5,6.9],[-60.3,7.0],[-60.6,7.4],[-60.6,7.8],[-59.8,8.4],[-59.1,8.0],[-58.5,7.3],[-58.5,6.8],[-58.1,6.8],[-57.5,6.3],[-57.1,6.0],[-57.3,5.1],[-57.9,4.8],[-57.9,4.6],[-58.0,4.1],[-57.6,3.3],[-57.3,3.3],[-57.2,2.8],[-56.5,1.9]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"SR","NAME":"Suriname"},"geometry":{"type":"Polygon","coordinates":[[[-54.5,2.3],[-55.1,2.5],[-55.6,2.4],[-56.0,2.5],[-56.1,2.2],[-55.9,2.0],[-56.0,1.8],[-56.5,1.9],[-57.2,2.8],[-57.3,3.3],[-57.6,3.3],[-58.0,4.1],[-57.9,4.6],[-57.9,4.8],[-57.3,5.1],[-57.1,6.0],[-55.9,5.8],[-55.8,6.0],[-55.0,6.0],[-54.0,5.8],[-54.5,4.9],[-54.4,4.2],[-54.0,3.6],[-54.2,3.2],[-54.3,2.7],[-54.5,2.3]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"FR","NAME":"France"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-51.7,4.2],[-52.2,3.2],[-52.6,2.5],[-52.9,2.1],[-53.4,2.1],[-53.6,2.3],[-53.8,2.4],[-54.1,2.1],[-54.5,2.3],[-54.3,2.7],[-54.2,3.2],[-54.0,3.6],[-54.4,4.2],[-54.5,4.9],[-54.0,5.8],[-53.6,5.6],[-52.9,5.4],[-51.8,4.6],[-51.7,4.2]]],[[[6.2,49.5],[6.7,49.2],[8.1,49.0],[7.6,48.3],[7.5,47.6],[7.2,47.4],[6.7,47.5],[6.8,47.3],[6.0,46.7],[6.0,46.3],[6.5,46.4],[6.8,46.0],[6.8,45.7],[7.1,45.3],[6.7,45.0],[7.0,44.3],[7.5,44.1],[7.4,43.7],[6.5,43.1],[4.6,43.4],[3.1,43.1],[3.0,42.5],[1.8,42.3],[0.7,42.8],[0.3,42.6],[-1.5,43.0],[-1.9,43.4],[-1.4,44.0],[-1.2,46.0],[-2.2,47.1],[-3.0,47.6],[-4.5,48.0],[-4.6,48.7],[-3.3,48.9],[-1.6,48.6],[-1.9,49.8],[-1.0,49.3],[1.3,50.1],[1.6,50.9],[2.5,51.1],[2.7,50.8],[3.1,50.8],[3.6,50.4],[4.3,49.9],[4.8,50.0],[5.7,49.5],[5.9,49.4],[6.2,49.5]]],[[[8.7,42.6],[9.4,43.0],[9.6,42.2],[9.2,41.4],[8.8,41.6],[8.5,42.3],[8.7,42.6]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"EC","NAME":"Ecuador"},"geometry":{"type":"Polygon","coordinates":[[[-75.4,-0.2],[-75.2,-0.9],[-75.5,-1.6],[-76.6,-2.6],[-77.8,-3.0],[-78.5,-3.9],[-78.6,-4.5],[-79.2,-5.0],[-79.6,-4.5],[-80.0,-4.3],[-80.4,-4.4],[-80.5,-4.1],[-80.2,-3.8],[-80.3,-3.4],[-79.8,-2.7],[-80.0,-2.2],[-80.4,-2.7],[-81.0,-2.2],[-80.8,-2.0],[-80.9,-1.1],[-80.6,-0.9],[-80.4,-0.3],[-80.0,0.4],[-80.1,0.8],[-79.5,1.0],[-78.9,1.4],[-77.9,0.8],[-77.7,0.8],[-77.4,0.4],[-76.6,0.3],[-76.3,0.4],[-75.8,0.1],[-75.4,-0.2]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"PR","NAME":"Puerto Rico"},"geometry":{"type":"Polygon","coordinates":[[[-66.3,18.5],[-65.8,18.4],[-65.6,18.2],[-65.8,18.0],[-66.6,18.0],[-67.2,17.9],[-67.2,18.4],[-67.1,18.5],[-66.3,18.5]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"JM","NAME":"Jamaica"},"geometry":{"type":"Polygon","coordinates":[[[-77.6,18.5],[-76.9,18.4],[-76.4,18.2],[-76.2,17.9],[-76.9,17.9],[-77.2,17.7],[-77.8,17.9],[-78.3,18.2],[-78.2,18.5],[-77.8,18.5],[-77.6,18.5]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"CU","NAME":"Cuba"},"geometry":{"type":"Polygon","coordinates":[[[-82.3,23.2],[-81.4,23.1],[-80.6,23.1],[-79.7,22.8],[-79.3,22.4],[-78.3,22.5],[-78.0,22.3],[-77.1,21.7],[-76.5,21.2],[-76.2,21.2],[-75.6,21.0],[-75.7,20.7],[-74.9,20.7],[-74.2,20.3],[-74.3,20.1],[-75.0,19.9],[-75.6,19.9],[-76.3,20.0],[-77.8,19.9],[-77.1,20.4],[-77.5,20.7],[-78.1,20.7],[-78.5,21.0],[-78.7,21.6],[-79.3,21.6],[-80.2,21.8],[-80.5,22.0],[-81.8,22.2],[-82.2,22.4],[-81.8,22.6],[-82.8,22.7],[-83.5,22.2],[-83.9,22.2],[-84.1,21.9],[-84.5,21.8],[-85.0,21.9],[-84.4,22.2],[-84.2,22.6],[-83.8,22.8],[-83.3,23.0],[-82.5,23.1],[-82.3,23.2]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"ZW","NAME":"Zimbabwe"},"geometry":{"type":"Polygon","coordinates":[[[31.2,-22.3],[30.7,-22.2],[30.3,-22.3],[29.8,-22.1],[29.4,-22.1],[28.8,-21.6],[28.0,-21.5],[27.7,-20.9],[27.7,-20.5],[27.3,-20.4],[26.2,-19.3],[25.9,-18.7],[25.6,-18.5],[25.3,-17.7],[26.4,-17.8],[26.7,-18.0],[27.0,-17.9],[27.6,-17.3],[28.5,-16.5],[28.8,-16.4],[28.9,-16.0],[29.5,-15.6],[30.3,-15.5],[30.3,-15.9],[31.2,-15.9],[31.6,-16.1],[31.9,-16.3],[32.3,-16.4],[32.8,-16.7],[32.8,-18.0],[32.7,-18.7],[32.6,-19.4],[32.8,-19.7],[32.7,-20.3],[32.5,-20.4],[32.2,-21.1],[31.2,-22.3]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"BW","NAME":"Botswana"},"geometry":{"type":"Polygon","coordinates":[[[29.4,-22.1],[28.0,-22.8],[27.1,-23.6],[26.8,-24.2],[26.5,-24.6],[25.9,-24.7],[25.8,-25.2],[25.7,-25.5],[25.0,-25.7],[24.2,-25.7],[23.7,-25.4],[23.3,-25.3],[22.8,-25.5],[22.6,-26.0],[22.1,-26.3],[21.6,-26.7],[20.9,-26.8],[20.7,-26.5],[20.8,-25.9],[20.2,-24.9],[19.9,-24.8],[19.9,-21.8],[20.9,-21.8],[20.9,-18.3],[21.7,-18.2],[23.2,-17.9],[23.6,-18.3],[24.2,-17.9],[24.5,-17.9],[25.1,-17.7],[25.3,-17.7],[25.6,-18.5],[25.9,-18.7],[26.2,-19.3],[27.3,-20.4],[27.7,-20.5],[27.7,-20.9],[28.0,-21.5],[28.8,-21.6],[29.4,-22.1]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"NA","NAME":"Namibia"},"geometry":{"type":"Polygon","coordinates":[[[19.9,-24.8],[19.9,-28.5],[19.0,-29.0],[18.5,-29.0],[17.8,-28.9],[17.4,-28.8],[17.2,-28.4],[16.8,-28.1],[16.3,-28.6],[15.6,-27.8],[15.2,-27.1],[15.0,-26.1],[14.7,-25.4],[14.4,-23.9],[14.4,-22.7],[14.3,-22.1],[13.9,-21.7],[13.4,-20.9],[12.8,-19.7],[12.6,-19.0],[11.8,-18.1],[11.7,-17.3],[12.2,-17.1],[12.8,-16.9],[13.5,-17.0],[14.1,-17.4],[14.2,-17.4],[18.3,-17.3],[19.0,-17.8],[21.4,-17.9],[23.2,-17.5],[24.0,-17.3],[24.7,-17.4],[25.1,-17.6],[25.1,-17.7],[24.5,-17.9],[24.2,-17.9],[23.6,-18.3],[23.2,-17.9],[21.7,-18.2],[20.9,-18.3],[20.9,-21.8],[19.9,-21.8],[19.9,-24.8]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"SN","NAME":"Senegal"},"geometry":{"type":"Polygon","coordinates":[[[-16.7,13.6],[-17.1,14.4],[-17.6,14.7],[-17.2,14.9],[-16.7,15.6],[-16.5,16.1],[-16.1,16.5],[-15.6,16.4],[-15.1,16.6],[-14.6,16.6],[-14.1,16.3],[-13.4,16.0],[-12.8,15.3],[-12.2,14.6],[-12.1,14.0],[-11.9,13.4],[-11.6,13.1],[-11.5,12.8],[-11.5,12.4],[-11.7,12.4],[-12.2,12.5],[-12.3,12.4],[-12.5,12.3],[-13.2,12.6],[-13.7,12.6],[-15.5,12.6],[-15.8,12.5],[-16.1,12.5],[-16.7,12.4],[-16.8,13.2],[-15.9,13.1],[-15.7,13.3],[-15.5,13.3],[-15.1,13.5],[-14.7,13.3],[-14.3,13.3],[-13.8,13.5],[-14.0,13.8],[-14.4,13.6],[-14.7,13.6],[-15.1,13.9],[-15.4,13.9],[-15.6,13.6],[-16.7,13.6]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"ML","NAME":"Mali"},"geometry":{"type":"Polygon","coordinates":[[[-11.5,12.4],[-11.5,12.8],[-11.6,13.1],[-11.9,13.4],[-12.1,14.0],[-12.2,14.6],[-11.8,14.8],[-11.7,15.4],[-11.3,15.4],[-10.7,15.1],[-10.1,15.3],[-9.7,15.3],[-9.6,15.5],[-5.5,15.5],[-5.3,16.2],[-5.5,16.3],[-6.0,20.6],[-6.5,25.0],[-4.9,25.0],[-1.6,22.8],[1.8,20.6],[2.1,20.1],[2.7,19.9],[3.1,19.7],[3.2,19.1],[4.3,19.2],[4.3,16.9],[3.7,16.2],[3.6,15.6],[2.7,15.4],[1.4,15.3],[1.0,15.0],[0.4,14.9],[-0.3,14.9],[-0.5,15.1],[-1.1,15.0],[-2.0,14.6],[-2.2,14.2],[-3.0,13.8],[-3.1,13.5],[-3.5,13.3],[-4.0,13.5],[-4.3,13.2],[-4.4,12.5],[-5.2,11.7],[-5.2,11.4],[-5.5,11.0],[-5.4,10.4],[-5.8,10.2],[-6.1,10.1],[-6.2,10.5],[-6.5,10.4],[-6.7,10.4],[-6.9,10.1],[-7.6,10.1],[-7.9,10.3],[-8.0,10.2],[-8.3,10.5],[-8.3,10.8],[-8.4,10.9],[-8.6,10.8],[-8.6,11.1],[-8.4,11.4],[-8.8,11.8],[-8.9,12.1],[-9.1,12.3],[-9.3,12.3],[-9.6,12.2],[-9.9,12.1],[-10.2,11.8],[-10.6,11.9],[-10.9,12.2],[-11.0,12.2],[-11.3,12.1],[-11.5,12.1],[-11.5,12.4]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"MR","NAME":"Mauritania"},"geometry":{"type":"Polygon","coordinates":[[[-17.1,21.0],[-16.8,21.3],[-12.9,21.3],[-13.1,22.8],[-12.9,23.3],[-11.9,23.4],[-12.0,25.9],[-8.7,25.9],[-8.7,27.4],[-4.9,25.0],[-6.5,25.0],[-6.0,20.6],[-5.5,16.3],[-5.3,16.2],[-5.5,15.5],[-9.6,15.5],[-9.7,15.3],[-10.1,15.3],[-10.7,15.1],[-11.3,15.4],[-11.7,15.4],[-11.8,14.8],[-12.2,14.6],[-12.8,15.3],[-13.4,16.0],[-14.1,16.3],[-14.6,16.6],[-15.1,16.6],[-15.6,16.4],[-16.1,16.5],[-16.5,16.1],[-16.5,16.7],[-16.3,17.2],[-16.1,18.1],[-16.3,19.1],[-16.4,19.6],[-16.3,20.1],[-16.5,20.6],[-17.1,21.0]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"BJ","NAME":"Benin"},"geometry":{"type":"Polygon","coordinates":[[[2.7,6.3],[1.9,6.1],[1.6,6.8],[1.7,9.1],[1.5,9.3],[1.4,9.8],[1.1,10.2],[0.8,10.5],[0.9,11.0],[1.2,11.1],[1.4,11.5],[1.9,11.6],[2.2,11.9],[2.5,12.2],[2.8,12.2],[3.6,11.7],[3.6,11.3],[3.8,10.7],[3.6,10.3],[3.7,10.1],[3.2,9.4],[2.9,9.1],[2.7,8.5],[2.7,7.9],[2.7,6.3]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"NE","NAME":"Niger"},"geometry":{"type":"Polygon","coordinates":[[[14.9,22.9],[15.1,21.3],[15.5,21.0],[15.5,20.7],[15.9,20.4],[15.7,20.0],[15.3,17.9],[15.2,16.6],[14.0,15.7],[13.5,14.4],[14.0,14.0],[14.0,13.4],[14.6,13.3],[14.5,12.9],[14.2,12.8],[14.2,12.5],[14.0,12.5],[13.3,13.6],[13.1,13.6],[12.3,13.0],[11.5,13.3],[11.0,13.4],[10.7,13.2],[10.1,13.3],[9.5,12.9],[9.0,12.8],[7.8,13.3],[7.3,13.1],[6.8,13.1],[6.4,13.5],[5.4,13.9],[4.4,13.7],[4.1,13.5],[4.0,13.0],[3.7,12.6],[3.6,11.7],[2.8,12.2],[2.5,12.2],[2.2,11.9],[2.2,12.6],[1.0,12.9],[1.0,13.3],[0.4,14.0],[0.3,14.4],[0.4,14.9],[1.0,15.0],[1.4,15.3],[2.7,15.4],[3.6,15.6],[3.7,16.2],[4.3,16.9],[4.3,19.2],[5.7,19.6],[8.6,21.6],[12.0,23.5],[13.6,23.0],[14.1,22.5],[14.9,22.9]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"NG","NAME":"Nigeria"},"geometry":{"type":"Polygon","coordinates":[[[2.7,6.3],[2.7,7.9],[2.7,8.5],[2.9,9.1],[3.2,9.4],[3.7,10.1],[3.6,10.3],[3.8,10.7],[3.6,11.3],[3.6,11.7],[3.7,12.6],[4.0,13.0],[4.1,13.5],[4.4,13.7],[5.4,13.9],[6.4,13.5],[6.8,13.1],[7.3,13.1],[7.8,13.3],[9.0,12.8],[9.5,12.9],[10.1,13.3],[10.7,13.2],[11.0,13.4],[11.5,13.3],[12.3,13.0],[13.1,13.6],[13.3,13.6],[14.0,12.5],[14.2,12.5],[14.6,12.1],[14.5,11.9],[14.4,11.6],[13.6,10.8],[13.3,10.2],[13.2,9.6],[13.0,9.4],[12.8,8.7],[12.2,8.3],[12.1,7.8],[11.8,7.4],[11.7,7.0],[11.1,6.6],[10.5,7.1],[10.1,7.0],[9.5,6.5],[9.2,6.4],[8.8,5.5],[8.5,4.8],[7.5,4.4],[7.1,4.5],[6.7,4.2],[5.9,4.3],[5.4,4.9],[5.0,5.6],[4.3,6.3],[3.6,6.3],[2.7,6.3]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"CM","NAME":"Cameroon"},"geometry":{"type":"Polygon","coordinates":[[[14.5,12.9],[14.9,12.2],[15.0,11.6],[14.9,10.9],[15.5,10.0],[14.9,10.0],[14.6,9.9],[14.2,10.0],[14.0,9.5],[14.5,9.0],[15.0,8.8],[15.1,8.4],[15.4,7.7],[15.3,7.4],[14.8,6.4],[14.5,6.2],[14.5,5.5],[14.6,5.0],[14.5,4.7],[15.0,4.2],[15.0,3.9],[15.4,3.3],[15.9,3.0],[15.9,2.6],[16.0,2.3],[15.9,1.7],[15.1,2.0],[14.3,2.2],[13.1,2.3],[13.0,2.3],[12.4,2.2],[11.8,2.3],[11.3,2.3],[9.6,2.3],[9.8,3.1],[9.4,3.7],[8.9,3.9],[8.7,4.4],[8.5,4.5],[8.5,4.8],[8.8,5.5],[9.2,6.4],[9.5,6.5],[10.1,7.0],[10.5,7.1],[11.1,6.6],[11.7,7.0],[11.8,7.4],[12.1,7.8],[12.2,8.3],[12.8,8.7],[13.0,9.4],[13.2,9.6],[13.3,10.2],[13.6,10.8],[14.4,11.6],[14.5,11.9],[14.6,12.1],[14.2,12.5],[14.2,12.8],[14.5,12.9]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"TG","NAME":"Togo"},"geometry":{"type":"Polygon","coordinates":[[[0.9,11.0],[0.8,10.5],[1.1,10.2],[1.4,9.8],[1.5,9.3],[1.7,9.1],[1.6,6.8],[1.9,6.1],[1.1,5.9],[0.8,6.3],[0.6,6.9],[0.5,7.4],[0.7,8.3],[0.5,8.7],[0.4,9.5],[0.4,10.2],[-0.0,10.7],[0.0,11.0],[0.9,11.0]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"GH","NAME":"Ghana"},"geometry":{"type":"Polygon","coordinates":[[[0.0,11.0],[-0.0,10.7],[0.4,10.2],[0.4,9.5],[0.5,8.7],[0.7,8.3],[0.5,7.4],[0.6,6.9],[0.8,6.3],[1.1,5.9],[-0.5,5.3],[-1.1,5.0],[-2.0,4.7],[-2.9,5.0],[-2.8,5.4],[-3.2,6.3],[-3.0,7.4],[-2.6,8.2],[-2.8,9.6],[-3.0,10.4],[-2.9,11.0],[-1.2,11.0],[-0.8,10.9],[-0.4,11.1],[0.0,11.0]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"CI","NAME":"C\u00f4te d'Ivoire"},"geometry":{"type":"Polygon","coordinates":[[[-8.0,10.2],[-7.9,10.3],[-7.6,10.1],[-6.9,10.1],[-6.7,10.4],[-6.5,10.4],[-6.2,10.5],[-6.1,10.1],[-5.8,10.2],[-5.4,10.4],[-5.0,10.2],[-4.8,9.8],[-4.3,9.6],[-4.0,9.9],[-3.5,9.9],[-2.8,9.6],[-2.6,8.2],[-3.0,7.4],[-3.2,6.3],[-2.8,5.4],[-2.9,5.0],[-3.3,5.0],[-4.0,5.2],[-4.6,5.2],[-5.8,5.0],[-6.5,4.7],[-7.5,4.3],[-7.7,4.4],[-7.6,5.2],[-7.5,5.3],[-7.6,5.7],[-8.0,6.1],[-8.3,6.2],[-8.6,6.5],[-8.4,6.9],[-8.5,7.4],[-8.4,7.7],[-8.3,7.7],[-8.2,8.1],[-8.3,8.3],[-8.2,8.5],[-7.8,8.6],[-8.1,9.4],[-8.3,9.8],[-8.2,10.1],[-8.0,10.2]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"GN","NAME":"Guinea"},"geometry":{"type":"Polygon","coordinates":[[[-13.7,12.6],[-13.2,12.6],[-12.5,12.3],[-12.3,12.4],[-12.2,12.5],[-11.7,12.4],[-11.5,12.4],[-11.5,12.1],[-11.3,12.1],[-11.0,12.2],[-10.9,12.2],[-10.6,11.9],[-10.2,11.8],[-9.9,12.1],[-9.6,12.2],[-9.3,12.3],[-9.1,12.3],[-8.9,12.1],[-8.8,11.8],[-8.4,11.4],[-8.6,11.1],[-8.6,10.8],[-8.4,10.9],[-8.3,10.8],[-8.3,10.5],[-8.0,10.2],[-8.2,10.1],[-8.3,9.8],[-8.1,9.4],[-7.8,8.6],[-8.2,8.5],[-8.3,8.3],[-8.2,8.1],[-8.3,7.7],[-8.4,7.7],[-8.7,7.7],[-8.9,7.3],[-9.2,7.3],[-9.4,7.5],[-9.3,7.9],[-9.8,8.5],[-10.0,8.4],[-10.2,8.4],[-10.5,8.3],[-10.5,8.7],[-10.7,9.0],[-10.6,9.3],[-10.8,9.7],[-11.1,10.0],[-11.9,10.0],[-12.2,9.9],[-12.4,9.8],[-12.6,9.6],[-12.7,9.3],[-13.2,8.9],[-13.7,9.5],[-14.1,9.9],[-14.3,10.0],[-14.6,10.2],[-14.7,10.7],[-14.8,10.9],[-15.1,11.0],[-14.7,11.5],[-14.4,11.5],[-14.1,11.7],[-13.9,11.7],[-13.7,11.8],[-13.8,12.1],[-13.7,12.2],[-13.7,12.6]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"GW","NAME":"Guinea-Bissau"},"geometry":{"type":"Polygon","coordinates":[[[-16.7,12.4],[-16.1,12.5],[-15.8,12.5],[-15.5,12.6],[-13.7,12.6],[-13.7,12.2],[-13.8,12.1],[-13.7,11.8],[-13.9,11.7],[-14.1,11.7],[-14.4,11.5],[-14.7,11.5],[-15.1,11.0],[-15.7,11.5],[-16.1,11.5],[-16.3,11.8],[-16.3,12.0],[-16.6,12.2],[-16.7,12.4]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"LR","NAME":"Liberia"},"geometry":{"type":"Polygon","coordinates":[[[-8.4,7.7],[-8.5,7.4],[-8.4,6.9],[-8.6,6.5],[-8.3,6.2],[-8.0,6.1],[-7.6,5.7],[-7.5,5.3],[-7.6,5.2],[-7.7,4.4],[-8.0,4.4],[-9.0,4.8],[-9.9,5.6],[-10.8,6.1],[-11.4,6.8],[-11.2,7.1],[-11.1,7.4],[-10.7,7.9],[-10.2,8.4],[-10.0,8.4],[-9.8,8.5],[-9.3,7.9],[-9.4,7.5],[-9.2,7.3],[-8.9,7.3],[-8.7,7.7],[-8.4,7.7]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"SL","NAME":"Sierra Leone"},"geometry":{"type":"Polygon","coordinates":[[[-13.2,8.9],[-12.7,9.3],[-12.6,9.6],[-12.4,9.8],[-12.2,9.9],[-11.9,10.0],[-11.1,10.0],[-10.8,9.7],[-10.6,9.3],[-10.7,9.0],[-10.5,8.7],[-10.5,8.3],[-10.2,8.4],[-10.7,7.9],[-11.1,7.4],[-11.2,7.1],[-11.4,6.8],[-11.7,6.9],[-12.4,7.3],[-12.9,7.8],[-13.1,8.2],[-13.2,8.9]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"BF","NAME":"Burkina Faso"},"geometry":{"type":"Polygon","coordinates":[[[-5.4,10.4],[-5.5,11.0],[-5.2,11.4],[-5.2,11.7],[-4.4,12.5],[-4.3,13.2],[-4.0,13.5],[-3.5,13.3],[-3.1,13.5],[-3.0,13.8],[-2.2,14.2],[-2.0,14.6],[-1.1,15.0],[-0.5,15.1],[-0.3,14.9],[0.4,14.9],[0.3,14.4],[0.4,14.0],[1.0,13.3],[1.0,12.9],[2.2,12.6],[2.2,11.9],[1.9,11.6],[1.4,11.5],[1.2,11.1],[0.9,11.0],[0.0,11.0],[-0.4,11.1],[-0.8,10.9],[-1.2,11.0],[-2.9,11.0],[-3.0,10.4],[-2.8,9.6],[-3.5,9.9],[-4.0,9.9],[-4.3,9.6],[-4.8,9.8],[-5.0,10.2],[-5.4,10.4]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"CF","NAME":"Central African Rep."},"geometry":{"type":"Polygon","coordinates":[[[27.4,5.2],[27.0,5.1],[26.4,5.2],[25.7,5.3],[25.3,5.2],[25.1,4.9],[24.8,4.9],[24.4,5.1],[23.3,4.6],[22.8,4.7],[22.7,4.6],[22.4,4.0],[21.7,4.2],[20.9,4.3],[20.3,4.7],[19.5,5.0],[18.9,4.7],[18.5,4.2],[18.5,3.5],[17.8,3.6],[17.1,3.7],[16.5,3.2],[16.0,2.3],[15.9,2.6],[15.9,3.0],[15.4,3.3],[15.0,3.9],[15.0,4.2],[14.5,4.7],[14.6,5.0],[14.5,5.5],[14.5,6.2],[14.8,6.4],[15.3,7.4],[16.1,7.5],[16.3,7.8],[16.5,7.7],[16.7,7.5],[18.0,7.9],[18.4,8.3],[18.9,8.6],[18.8,9.0],[19.1,9.1],[20.1,9.0],[21.0,9.5],[21.7,10.6],[22.2,11.0],[22.9,11.1],[23.0,10.7],[23.6,10.1],[23.6,9.7],[23.4,9.3],[23.5,9.0],[23.8,8.7],[24.6,8.2],[25.1,7.8],[25.1,7.5],[25.8,7.0],[26.2,6.5],[26.5,5.9],[27.2,5.6],[27.4,5.2]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"CG","NAME":"Congo"},"geometry":{"type":"Polygon","coordinates":[[[18.5,3.5],[18.4,2.9],[18.1,2.4],[17.9,1.7],[17.8,0.9],[17.8,0.3],[17.7,-0.1],[17.6,-0.4],[17.5,-0.7],[16.9,-1.2],[16.4,-1.7],[16.0,-2.7],[16.0,-3.5],[15.8,-3.9],[15.2,-4.3],[14.6,-5.0],[14.2,-4.8],[14.1,-4.5],[13.6,-4.5],[13.3,-4.9],[13.0,-4.8],[12.6,-4.4],[12.3,-4.6],[11.9,-5.0],[11.1,-4.0],[11.9,-3.4],[11.5,-2.8],[11.8,-2.5],[12.5,-2.4],[12.6,-1.9],[13.1,-2.4],[14.0,-2.5],[14.3,-2.0],[14.4,-1.3],[14.3,-0.6],[13.8,0.0],[14.3,1.2],[14.0,1.4],[13.3,1.3],[13.0,1.8],[13.1,2.3],[14.3,2.2],[15.1,2.0],[15.9,1.7],[16.0,2.3],[16.5,3.2],[17.1,3.7],[17.8,3.6],[18.5,3.5]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"GA","NAME":"Gabon"},"geometry":{"type":"Polygon","coordinates":[[[11.3,2.3],[11.8,2.3],[12.4,2.2],[13.0,2.3],[13.1,2.3],[13.0,1.8],[13.3,1.3],[14.0,1.4],[14.3,1.2],[13.8,0.0],[14.3,-0.6],[14.4,-1.3],[14.3,-2.0],[14.0,-2.5],[13.1,-2.4],[12.6,-1.9],[12.5,-2.4],[11.8,-2.5],[11.5,-2.8],[11.9,-3.4],[11.1,-4.0],[10.1,-3.0],[9.4,-2.1],[8.8,-1.1],[8.8,-0.8],[9.0,-0.5],[9.3,0.3],[9.5,1.0],[9.8,1.1],[11.3,1.1],[11.3,2.3]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"GQ","NAME":"Eq. Guinea"},"geometry":{"type":"Polygon","coordinates":[[[9.6,2.3],[11.3,2.3],[11.3,1.1],[9.8,1.1],[9.5,1.0],[9.3,1.2],[9.6,2.3]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"ZM","NAME":"Zambia"},"geometry":{"type":"Polygon","coordinates":[[[30.7,-8.3],[31.2,-8.6],[31.6,-8.8],[32.2,-8.9],[32.8,-9.2],[33.2,-9.7],[33.5,-10.5],[33.3,-10.8],[33.1,-11.6],[33.3,-12.4],[33.0,-12.8],[32.7,-13.7],[33.2,-14.0],[30.2,-14.8],[30.3,-15.5],[29.5,-15.6],[28.9,-16.0],[28.8,-16.4],[28.5,-16.5],[27.6,-17.3],[27.0,-17.9],[26.7,-18.0],[26.4,-17.8],[25.3,-17.7],[25.1,-17.7],[25.1,-17.6],[24.7,-17.4],[24.0,-17.3],[23.2,-17.5],[22.6,-16.9],[21.9,-16.1],[21.9,-12.9],[24.0,-12.9],[23.9,-12.6],[24.1,-12.2],[23.9,-11.7],[24.0,-11.2],[23.9,-10.9],[24.3,-11.0],[24.3,-11.3],[24.8,-11.2],[25.4,-11.3],[25.8,-11.8],[26.6,-11.9],[27.2,-11.6],[27.4,-12.1],[28.2,-12.3],[28.5,-12.7],[28.9,-13.2],[29.7,-13.3],[29.6,-12.2],[29.3,-12.4],[28.6,-12.0],[28.4,-11.8],[28.5,-10.8],[28.7,-9.6],[28.4,-9.2],[28.7,-8.5],[29.0,-8.4],[30.3,-8.2],[30.7,-8.3]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"MW","NAME":"Malawi"},"geometry":{"type":"Polygon","coordinates":[[[32.8,-9.2],[33.7,-9.4],[33.9,-9.7],[34.3,-10.2],[34.6,-11.5],[34.3,-12.3],[34.6,-13.6],[34.9,-13.6],[35.3,-13.9],[35.7,-14.6],[35.8,-15.9],[35.3,-16.1],[35.0,-16.8],[34.4,-16.2],[34.3,-15.5],[34.5,-15.0],[34.5,-14.6],[34.1,-14.4],[33.8,-14.5],[33.2,-14.0],[32.7,-13.7],[33.0,-12.8],[33.3,-12.4],[33.1,-11.6],[33.3,-10.8],[33.5,-10.5],[33.2,-9.7],[32.8,-9.2]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"MZ","NAME":"Mozambique"},"geometry":{"type":"Polygon","coordinates":[[[34.6,-11.5],[35.3,-11.4],[36.5,-11.7],[36.8,-11.6],[37.5,-11.6],[37.8,-11.3],[38.4,-11.3],[39.5,-10.9],[40.3,-10.3],[40.3,-10.3],[40.3,-10.3],[40.5,-10.8],[40.4,-11.8],[40.6,-12.6],[40.6,-14.2],[40.8,-14.7],[40.5,-15.4],[40.1,-16.1],[39.5,-16.7],[38.5,-17.1],[37.4,-17.6],[36.3,-18.7],[35.9,-18.8],[35.2,-19.6],[34.8,-19.8],[34.7,-20.5],[35.2,-21.3],[35.4,-21.8],[35.4,-22.1],[35.6,-22.1],[35.5,-23.1],[35.4,-23.5],[35.6,-23.7],[35.5,-24.1],[35.0,-24.5],[34.2,-24.8],[33.0,-25.4],[32.6,-25.7],[32.7,-26.1],[32.9,-26.2],[32.8,-26.7],[32.1,-26.7],[32.0,-26.3],[31.8,-25.8],[31.8,-25.5],[31.9,-24.4],[31.7,-23.7],[31.2,-22.3],[32.2,-21.1],[32.5,-20.4],[32.7,-20.3],[32.8,-19.7],[32.6,-19.4],[32.7,-18.7],[32.8,-18.0],[32.8,-16.7],[32.3,-16.4],[31.9,-16.3],[31.6,-16.1],[31.2,-15.9],[30.3,-15.9],[30.3,-15.5],[30.2,-14.8],[33.2,-14.0],[33.8,-14.5],[34.1,-14.4],[34.5,-14.6],[34.5,-15.0],[34.3,-15.5],[34.4,-16.2],[35.0,-16.8],[35.3,-16.1],[35.8,-15.9],[35.7,-14.6],[35.3,-13.9],[34.9,-13.6],[34.6,-13.6],[34.3,-12.3],[34.6,-11.5]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"SZ","NAME":"eSwatini"},"geometry":{"type":"Polygon","coordinates":[[[32.1,-26.7],[31.9,-27.2],[31.3,-27.3],[30.7,-26.7],[30.7,-26.4],[30.9,-26.0],[31.0,-25.7],[31.3,-25.7],[31.8,-25.8],[32.0,-26.3],[32.1,-26.7]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"AO","NAME":"Angola"},"geometry":{"type":"MultiPolygon","coordinates":[[[[13.0,-4.8],[12.6,-5.0],[12.5,-5.2],[12.4,-5.7],[12.2,-5.8],[11.9,-5.0],[12.3,-4.6],[12.6,-4.4],[13.0,-4.8]]],[[[12.3,-6.1],[12.7,-6.0],[13.0,-6.0],[13.4,-5.9],[16.3,-5.9],[16.6,-6.6],[16.9,-7.2],[17.1,-7.5],[17.5,-8.1],[18.1,-8.0],[18.5,-7.8],[19.0,-8.0],[19.2,-7.7],[19.4,-7.2],[20.0,-7.1],[20.1,-6.9],[20.6,-6.9],[20.5,-7.3],[21.7,-7.3],[21.7,-7.9],[21.9,-8.3],[21.8,-8.9],[21.9,-9.5],[22.2,-9.9],[22.2,-11.1],[22.4,-11.0],[22.8,-11.0],[23.5,-10.9],[23.9,-10.9],[24.0,-11.2],[23.9,-11.7],[24.1,-12.2],[23.9,-12.6],[24.0,-12.9],[21.9,-12.9],[21.9,-16.1],[22.6,-16.9],[23.2,-17.5],[21.4,-17.9],[19.0,-17.8],[18.3,-17.3],[14.2,-17.4],[14.1,-17.4],[13.5,-17.0],[12.8,-16.9],[12.2,-17.1],[11.7,-17.3],[11.6,-16.7],[11.8,-15.8],[12.1,-14.9],[12.2,-14.4],[12.5,-13.5],[12.7,-13.1],[13.3,-12.5],[13.6,-12.0],[13.7,-11.3],[13.7,-10.7],[13.4,-10.4],[13.1,-9.8],[12.9,-9.2],[12.9,-9.0],[13.2,-8.6],[12.9,-7.6],[12.7,-6.9],[12.2,-6.3],[12.3,-6.1]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"BI","NAME":"Burundi"},"geometry":{"type":"Polygon","coordinates":[[[30.5,-2.4],[30.5,-2.8],[30.7,-3.0],[30.8,-3.4],[30.5,-3.6],[30.1,-4.1],[29.8,-4.5],[29.3,-4.5],[29.3,-3.3],[29.0,-2.8],[29.6,-2.9],[29.9,-2.3],[30.5,-2.4]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"IL","NAME":"Israel"},"geometry":{"type":"Polygon","coordinates":[[[35.7,32.7],[35.5,32.4],[35.2,32.5],[35.0,31.9],[35.2,31.8],[35.0,31.6],[34.9,31.4],[35.4,31.5],[35.4,31.1],[34.9,29.5],[34.8,29.8],[34.3,31.2],[34.3,31.2],[34.3,31.2],[34.6,31.5],[34.5,31.6],[34.8,32.1],[35.0,32.8],[35.1,33.1],[35.1,33.1],[35.5,33.1],[35.6,33.3],[35.8,33.3],[35.8,32.9],[35.7,32.7],[35.7,32.7]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"LB","NAME":"Lebanon"},"geometry":{"type":"Polygon","coordinates":[[[35.8,33.3],[35.6,33.3],[35.5,33.1],[35.1,33.1],[35.5,33.9],[36.0,34.6],[36.0,34.6],[36.4,34.6],[36.6,34.2],[36.1,33.8],[35.8,33.3]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"MG","NAME":"Madagascar"},"geometry":{"type":"Polygon","coordinates":[[[49.5,-12.5],[49.8,-12.9],[50.1,-13.6],[50.2,-14.8],[50.5,-15.2],[50.4,-15.7],[50.2,-16.0],[49.9,-15.4],[49.7,-15.7],[49.9,-16.5],[49.8,-16.9],[49.5,-17.1],[49.4,-18.0],[49.0,-19.1],[48.5,-20.5],[47.9,-22.4],[47.5,-23.8],[47.1,-24.9],[46.3,-25.2],[45.4,-25.6],[44.8,-25.3],[44.0,-25.0],[43.8,-24.5],[43.7,-23.6],[43.3,-22.8],[43.3,-22.1],[43.4,-21.3],[43.9,-21.2],[43.9,-20.8],[44.4,-20.1],[44.5,-19.4],[44.2,-19.0],[44.0,-18.3],[44.0,-17.4],[44.3,-16.9],[44.4,-16.2],[44.9,-16.2],[45.5,-16.0],[45.9,-15.8],[46.3,-15.8],[46.9,-15.2],[47.7,-14.6],[48.0,-14.1],[47.9,-13.7],[48.3,-13.8],[48.8,-13.1],[48.9,-12.5],[49.2,-12.0],[49.5,-12.5]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"PS","NAME":"Palestine"},"geometry":{"type":"Polygon","coordinates":[[[35.4,31.5],[34.9,31.4],[35.0,31.6],[35.2,31.8],[35.0,31.9],[35.2,32.5],[35.5,32.4],[35.5,31.8],[35.4,31.5]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"GM","NAME":"Gambia"},"geometry":{"type":"Polygon","coordinates":[[[-16.7,13.6],[-15.6,13.6],[-15.4,13.9],[-15.1,13.9],[-14.7,13.6],[-14.4,13.6],[-14.0,13.8],[-13.8,13.5],[-14.3,13.3],[-14.7,13.3],[-15.1,13.5],[-15.5,13.3],[-15.7,13.3],[-15.9,13.1],[-16.8,13.2],[-16.7,13.6]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"TN","NAME":"Tunisia"},"geometry":{"type":"Polygon","coordinates":[[[9.5,30.3],[9.1,32.1],[8.4,32.5],[8.4,32.7],[7.6,33.3],[7.5,34.1],[8.1,34.7],[8.4,35.5],[8.2,36.4],[8.4,36.9],[9.5,37.3],[10.2,37.2],[10.2,36.7],[11.0,37.1],[11.1,36.9],[10.6,36.4],[10.6,35.9],[10.9,35.7],[10.8,34.8],[10.1,34.3],[10.3,33.8],[10.9,33.8],[11.1,33.3],[11.5,33.1],[11.4,32.4],[10.9,32.1],[10.6,31.8],[10.0,31.4],[10.1,31.0],[10.0,30.5],[9.5,30.3]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"DZ","NAME":"Algeria"},"geometry":{"type":"Polygon","coordinates":[[[-8.7,27.4],[-8.7,27.6],[-8.7,27.7],[-8.7,28.8],[-7.1,29.6],[-6.1,29.7],[-5.2,30.0],[-4.9,30.5],[-3.7,30.9],[-3.6,31.6],[-3.1,31.7],[-2.6,32.1],[-1.3,32.3],[-1.1,32.7],[-1.4,32.9],[-1.7,33.9],[-1.8,34.5],[-2.2,35.2],[-1.2,35.7],[-0.1,35.9],[0.5,36.3],[1.5,36.6],[3.2,36.8],[4.8,36.9],[5.3,36.7],[6.3,37.1],[7.3,37.1],[7.7,36.9],[8.4,36.9],[8.2,36.4],[8.4,35.5],[8.1,34.7],[7.5,34.1],[7.6,33.3],[8.4,32.7],[8.4,32.5],[9.1,32.1],[9.5,30.3],[9.8,29.4],[9.9,29.0],[9.7,28.1],[9.8,27.7],[9.6,27.1],[9.7,26.5],[9.3,26.1],[9.9,25.4],[9.9,24.9],[10.3,24.4],[10.8,24.6],[11.6,24.1],[12.0,23.5],[8.6,21.6],[5.7,19.6],[4.3,19.2],[3.2,19.1],[3.1,19.7],[2.7,19.9],[2.1,20.1],[1.8,20.6],[-1.6,22.8],[-4.9,25.0],[-8.7,27.4]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"JO","NAME":"Jordan"},"geometry":{"type":"Polygon","coordinates":[[[35.5,32.4],[35.7,32.7],[36.8,32.3],[38.8,33.4],[39.2,32.2],[39.0,32.0],[37.0,31.5],[38.0,30.5],[37.7,30.3],[37.5,30.0],[36.7,29.9],[36.5,29.5],[36.1,29.2],[35.0,29.4],[34.9,29.5],[35.4,31.1],[35.4,31.5],[35.5,31.8],[35.5,32.4]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"AE","NAME":"United Arab Emirates"},"geometry":{"type":"Polygon","coordinates":[[[51.6,24.2],[51.8,24.3],[51.8,24.0],[52.6,24.2],[53.4,24.2],[54.0,24.1],[54.7,24.8],[55.4,25.4],[56.1,26.1],[56.3,25.7],[56.4,24.9],[55.9,24.9],[55.8,24.3],[56.0,24.1],[55.5,23.9],[55.5,23.5],[55.2,23.1],[55.2,22.7],[55.0,22.5],[52.0,23.0],[51.6,24.0],[51.6,24.2]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"QA","NAME":"Qatar"},"geometry":{"type":"Polygon","coordinates":[[[50.8,24.8],[50.7,25.5],[51.0,26.0],[51.3,26.1],[51.6,25.8],[51.6,25.2],[51.4,24.6],[51.1,24.6],[50.8,24.8]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"KW","NAME":"Kuwait"},"geometry":{"type":"Polygon","coordinates":[[[48.0,30.0],[48.2,29.5],[48.1,29.3],[48.4,28.6],[47.7,28.5],[47.5,29.0],[46.6,29.1],[47.3,30.1],[48.0,30.0]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"IQ","NAME":"Iraq"},"geometry":{"type":"Polygon","coordinates":[[[39.2,32.2],[38.8,33.4],[41.0,34.4],[41.4,35.6],[41.3,36.4],[41.8,36.6],[42.3,37.2],[42.8,37.4],[43.9,37.3],[44.3,37.0],[44.8,37.2],[45.4,36.0],[46.1,35.7],[46.2,35.1],[45.6,34.7],[45.4,34.0],[46.1,33.0],[47.3,32.5],[47.8,31.7],[47.7,31.0],[48.0,31.0],[48.0,30.5],[48.6,29.9],[48.0,30.0],[47.3,30.1],[46.6,29.1],[44.7,29.2],[41.9,31.2],[40.4,31.9],[39.2,32.2]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"OM","NAME":"Oman"},"geometry":{"type":"MultiPolygon","coordinates":[[[[55.2,22.7],[55.2,23.1],[55.5,23.5],[55.5,23.9],[56.0,24.1],[55.8,24.3],[55.9,24.9],[56.4,24.9],[56.8,24.2],[57.4,23.9],[58.1,23.7],[58.7,23.6],[59.2,23.0],[59.5,22.7],[59.8,22.5],[59.8,22.3],[59.4,21.7],[59.3,21.4],[58.9,21.1],[58.5,20.4],[58.0,20.5],[57.8,20.2],[57.7,19.7],[57.8,19.1],[57.7,18.9],[57.2,18.9],[56.6,18.6],[56.5,18.1],[56.3,17.9],[55.7,17.9],[55.3,17.6],[55.3,17.2],[54.8,17.0],[54.2,17.0],[53.6,16.7],[53.1,16.7],[52.8,17.3],[52.0,19.0],[55.0,20.0],[55.7,22.0],[55.2,22.7]]],[[[56.3,25.7],[56.1,26.1],[56.4,26.4],[56.5,26.3],[56.4,25.9],[56.3,25.7]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"VU","NAME":"Vanuatu"},"geometry":{"type":"MultiPolygon","coordinates":[[[[167.2,-15.9],[167.8,-16.5],[167.5,-16.6],[167.2,-16.2],[167.2,-15.9]]],[[[166.8,-15.7],[166.6,-15.4],[166.6,-14.6],[167.1,-14.9],[167.3,-15.7],[167.0,-15.6],[166.8,-15.7]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"KH","NAME":"Cambodia"},"geometry":{"type":"Polygon","coordinates":[[[102.6,12.2],[102.3,13.4],[103.0,14.2],[104.3,14.4],[105.2,14.3],[106.0,13.9],[106.5,14.6],[107.4,14.2],[107.6,13.5],[107.5,12.3],[105.8,11.6],[106.2,11.0],[105.2,10.9],[104.3,10.5],[103.5,10.6],[103.1,11.2],[102.6,12.2]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"TH","NAME":"Thailand"},"geometry":{"type":"Polygon","coordinates":[[[105.2,14.3],[104.3,14.4],[103.0,14.2],[102.3,13.4],[102.6,12.2],[101.7,12.6],[100.8,12.6],[101.0,13.4],[100.1,13.4],[100.0,12.3],[99.5,10.8],[99.2,10.0],[99.2,9.2],[99.9,9.2],[100.3,8.3],[100.5,7.4],[101.0,6.9],[101.6,6.7],[102.1,6.2],[101.8,5.8],[101.2,5.7],[101.1,6.2],[100.3,6.6],[100.1,6.5],[99.7,6.8],[99.5,7.3],[99.0,7.9],[98.5,8.4],[98.3,7.8],[98.2,8.4],[98.3,9.0],[98.6,9.9],[99.0,11.0],[99.6,11.9],[99.2,12.8],[99.2,13.3],[99.1,13.8],[98.4,14.6],[98.2,15.1],[98.5,15.3],[98.9,16.2],[98.5,16.8],[97.9,17.6],[97.4,18.4],[97.8,18.6],[98.3,19.7],[99.0,19.8],[99.5,20.2],[100.1,20.4],[100.5,20.1],[100.6,19.5],[101.3,19.5],[101.0,18.4],[101.1,17.5],[102.1,18.1],[102.4,17.9],[103.0,18.0],[103.2,18.3],[104.0,18.2],[104.7,17.4],[104.8,16.4],[105.6,15.6],[105.5,14.7],[105.2,14.3]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"LA","NAME":"Laos"},"geometry":{"type":"Polygon","coordinates":[[[107.4,14.2],[106.5,14.6],[106.0,13.9],[105.2,14.3],[105.5,14.7],[105.6,15.6],[104.8,16.4],[104.7,17.4],[104.0,18.2],[103.2,18.3],[103.0,18.0],[102.4,17.9],[102.1,18.1],[101.1,17.5],[101.0,18.4],[101.3,19.5],[100.6,19.5],[100.5,20.1],[100.1,20.4],[100.3,20.8],[101.2,21.4],[101.3,21.2],[101.8,21.2],[101.7,22.3],[102.2,22.5],[102.8,21.7],[103.2,20.8],[104.4,20.8],[104.8,19.9],[104.2,19.6],[103.9,19.3],[105.1,18.7],[105.9,17.5],[106.6,16.6],[107.3,15.9],[107.6,15.2],[107.4,14.2]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"MM","NAME":"Myanmar"},"geometry":{"type":"Polygon","coordinates":[[[100.1,20.4],[99.5,20.2],[99.0,19.8],[98.3,19.7],[97.8,18.6],[97.4,18.4],[97.9,17.6],[98.5,16.8],[98.9,16.2],[98.5,15.3],[98.2,15.1],[98.4,14.6],[99.1,13.8],[99.2,13.3],[99.2,12.8],[99.6,11.9],[99.0,11.0],[98.6,9.9],[98.5,10.7],[98.8,11.4],[98.4,12.0],[98.5,13.1],[98.1,13.6],[97.8,14.8],[97.6,16.1],[97.2,16.9],[96.5,16.4],[95.4,15.7],[94.8,15.8],[94.2,16.0],[94.5,17.3],[94.3,18.2],[93.5,19.4],[93.7,19.7],[93.1,19.9],[92.4,20.7],[92.3,21.5],[92.7,21.3],[92.7,22.0],[93.2,22.3],[93.1,22.7],[93.3,23.0],[93.3,24.1],[94.1,23.9],[94.6,24.7],[94.6,25.2],[95.2,26.0],[95.1,26.6],[96.4,27.3],[97.1,27.1],[97.1,27.7],[97.4,27.9],[97.3,28.3],[97.9,28.3],[98.2,27.7],[98.7,27.5],[98.7,26.7],[98.7,25.9],[97.7,25.1],[97.6,23.9],[98.7,24.1],[98.9,23.1],[99.5,22.9],[99.2,22.1],[100.0,21.7],[100.4,21.6],[101.2,21.8],[101.2,21.4],[100.3,20.8],[100.1,20.4]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"VN","NAME":"Vietnam"},"geometry":{"type":"Polygon","coordinates":[[[104.3,10.5],[105.2,10.9],[106.2,11.0],[105.8,11.6],[107.5,12.3],[107.6,13.5],[107.4,14.2],[107.6,15.2],[107.3,15.9],[106.6,16.6],[105.9,17.5],[105.1,18.7],[103.9,19.3],[104.2,19.6],[104.8,19.9],[104.4,20.8],[103.2,20.8],[102.8,21.7],[102.2,22.5],[102.7,22.7],[103.5,22.7],[104.5,22.8],[105.3,23.4],[105.8,23.0],[106.7,22.8],[106.6,22.2],[107.0,21.8],[108.1,21.6],[106.7,20.7],[105.9,19.8],[105.7,19.1],[106.4,18.0],[107.4,16.7],[108.3,16.1],[108.9,15.3],[109.3,13.4],[109.2,11.7],[108.4,11.0],[107.2,10.4],[106.4,9.5],[105.2,8.6],[104.8,9.2],[105.1,9.9],[104.3,10.5]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"KP","NAME":"North Korea"},"geometry":{"type":"MultiPolygon","coordinates":[[[[130.8,42.2],[130.8,42.2],[130.8,42.2],[130.8,42.2]]],[[[130.6,42.4],[130.6,42.4],[130.8,42.2],[130.4,42.3],[130.0,41.9],[129.7,41.6],[129.7,40.9],[129.2,40.7],[129.0,40.5],[128.6,40.2],[128.0,40.0],[127.5,39.8],[127.5,39.3],[127.4,39.2],[127.8,39.1],[128.3,38.6],[128.2,38.4],[127.8,38.3],[127.1,38.3],[126.7,37.8],[126.2,37.8],[126.2,37.7],[125.7,37.9],[125.6,37.8],[125.3,37.7],[125.2,37.9],[125.0,37.9],[124.7,38.1],[125.0,38.5],[125.2,38.7],[125.1,38.8],[125.4,39.4],[125.3,39.6],[124.7,39.7],[124.3,39.9],[125.1,40.6],[126.2,41.1],[126.9,41.8],[127.3,41.5],[128.2,41.5],[128.1,42.0],[129.6,42.4],[130.0,43.0],[130.6,42.4]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"KR","NAME":"South Korea"},"geometry":{"type":"Polygon","coordinates":[[[126.2,37.7],[126.2,37.8],[126.7,37.8],[127.1,38.3],[127.8,38.3],[128.2,38.4],[128.3,38.6],[129.2,37.4],[129.5,36.8],[129.5,35.6],[129.1,35.1],[128.2,34.9],[127.4,34.5],[126.5,34.4],[126.4,34.9],[126.6,35.7],[126.1,36.7],[126.9,36.9],[126.2,37.7]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"MN","NAME":"Mongolia"},"geometry":{"type":"Polygon","coordinates":[[[87.8,49.3],[88.8,49.5],[90.7,50.3],[92.2,50.8],[93.1,50.5],[94.1,50.5],[94.8,50.0],[95.8,50.0],[97.3,49.7],[98.2,50.4],[97.8,51.0],[98.9,52.0],[100.0,51.6],[100.9,51.5],[102.1,51.3],[102.3,50.5],[103.7,50.1],[104.6,50.3],[105.9,50.4],[106.9,50.3],[107.9,49.8],[108.5,49.3],[109.4,49.3],[110.7,49.1],[111.6,49.4],[112.9,49.5],[114.4,50.2],[115.0,50.1],[115.5,49.8],[116.7,49.9],[116.2,49.1],[115.5,48.1],[115.7,47.7],[116.3,47.9],[117.3,47.7],[118.1,48.1],[118.9,47.7],[119.8,47.0],[119.7,46.7],[118.9,46.8],[117.4,46.7],[116.7,46.4],[116.0,45.7],[114.5,45.3],[113.5,44.8],[112.4,45.0],[111.9,45.1],[111.3,44.5],[111.7,44.1],[111.8,43.7],[111.1,43.4],[110.4,42.9],[109.2,42.5],[107.7,42.5],[106.1,42.1],[105.0,41.6],[104.5,41.9],[103.3,41.9],[101.8,42.5],[100.8,42.7],[99.5,42.5],[97.5,42.7],[96.3,42.7],[95.8,43.3],[95.3,44.2],[94.7,44.4],[93.5,45.0],[92.1,45.1],[90.9,45.3],[90.6,45.7],[91.0,46.9],[90.3,47.7],[88.9,48.1],[88.0,48.6],[87.8,49.3]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"IN","NAME":"India"},"geometry":{"type":"Polygon","coordinates":[[[97.3,28.3],[97.4,27.9],[97.1,27.7],[97.1,27.1],[96.4,27.3],[95.1,26.6],[95.2,26.0],[94.6,25.2],[94.6,24.7],[94.1,23.9],[93.3,24.1],[93.3,23.0],[93.1,22.7],[93.2,22.3],[92.7,22.0],[92.1,23.6],[91.9,23.6],[91.7,23.0],[91.2,23.5],[91.5,24.1],[91.9,24.1],[92.4,25.0],[91.8,25.1],[90.9,25.1],[89.9,25.3],[89.8,26.0],[89.4,26.0],[88.6,26.4],[88.2,25.8],[88.9,25.2],[88.3,24.9],[88.1,24.5],[88.7,24.2],[88.5,23.6],[88.9,22.9],[89.0,22.1],[88.9,21.7],[88.2,21.7],[87.0,21.5],[87.0,20.7],[86.5,20.2],[85.1,19.5],[83.9,18.3],[83.2,17.7],[82.2,17.0],[82.2,16.6],[81.7,16.3],[80.8,16.0],[80.3,15.9],[80.0,15.1],[80.2,13.8],[80.3,13.0],[79.9,12.1],[79.9,10.4],[79.3,10.3],[78.9,9.5],[79.2,9.2],[78.3,8.9],[77.9,8.3],[77.5,8.0],[76.6,8.9],[76.1,10.3],[75.7,11.3],[75.4,11.8],[74.9,12.7],[74.6,14.0],[74.4,14.6],[73.5,16.0],[73.1,17.9],[72.8,19.2],[72.8,20.4],[72.6,21.4],[71.2,20.8],[70.5,20.9],[69.2,22.1],[69.6,22.5],[69.3,22.8],[68.2,23.7],[68.8,24.4],[71.0,24.4],[70.8,25.2],[70.3,25.7],[70.2,26.5],[69.5,26.9],[70.6,28.0],[71.8,27.9],[72.8,29.0],[73.5,30.0],[74.4,31.0],[74.4,31.7],[75.3,32.3],[74.5,32.8],[74.1,33.4],[73.7,34.3],[74.2,34.7],[75.8,34.5],[76.9,34.7],[77.8,35.5],[78.9,34.3],[78.8,33.5],[79.2,33.0],[79.2,32.5],[78.5,32.6],[78.7,31.5],[79.7,30.9],[81.1,30.2],[80.5,29.7],[80.1,28.8],[81.1,28.4],[82.0,27.9],[83.3,27.4],[84.7,27.2],[85.3,26.7],[86.0,26.6],[87.2,26.4],[88.1,26.4],[88.2,26.8],[88.0,27.4],[88.1,27.9],[88.7,28.1],[88.8,27.3],[88.8,27.1],[89.7,26.7],[90.4,26.9],[91.2,26.8],[92.0,26.8],[92.1,27.5],[91.7,27.8],[92.5,27.9],[93.4,28.6],[94.6,29.3],[95.4,29.0],[96.1,29.5],[96.6,28.8],[96.2,28.4],[97.3,28.3]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"BD","NAME":"Bangladesh"},"geometry":{"type":"Polygon","coordinates":[[[92.7,22.0],[92.7,21.3],[92.3,21.5],[92.4,20.7],[92.1,21.2],[92.0,21.7],[91.8,22.2],[91.4,22.8],[90.5,22.8],[90.6,22.4],[90.3,21.8],[89.8,22.0],[89.7,21.9],[89.4,22.0],[89.0,22.1],[88.9,22.9],[88.5,23.6],[88.7,24.2],[88.1,24.5],[88.3,24.9],[88.9,25.2],[88.2,25.8],[88.6,26.4],[89.4,26.0],[89.8,26.0],[89.9,25.3],[90.9,25.1],[91.8,25.1],[92.4,25.0],[91.9,24.1],[91.5,24.1],[91.2,23.5],[91.7,23.0],[91.9,23.6],[92.1,23.6],[92.7,22.0]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"BT","NAME":"Bhutan"},"geometry":{"type":"Polygon","coordinates":[[[91.7,27.8],[92.1,27.5],[92.0,26.8],[91.2,26.8],[90.4,26.9],[89.7,26.7],[88.8,27.1],[88.8,27.3],[89.5,28.0],[90.0,28.3],[90.7,28.1],[91.3,28.0],[91.7,27.8]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"NP","NAME":"Nepal"},"geometry":{"type":"Polygon","coordinates":[[[88.1,27.9],[88.0,27.4],[88.2,26.8],[88.1,26.4],[87.2,26.4],[86.0,26.6],[85.3,26.7],[84.7,27.2],[83.3,27.4],[82.0,27.9],[81.1,28.4],[80.1,28.8],[80.5,29.7],[81.1,30.2],[81.5,30.4],[82.3,30.1],[83.3,29.5],[83.9,29.3],[84.2,28.8],[85.0,28.6],[85.8,28.2],[87.0,28.0],[88.1,27.9]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"PK","NAME":"Pakistan"},"geometry":{"type":"Polygon","coordinates":[[[77.8,35.5],[76.9,34.7],[75.8,34.5],[74.2,34.7],[73.7,34.3],[74.1,33.4],[74.5,32.8],[75.3,32.3],[74.4,31.7],[74.4,31.0],[73.5,30.0],[72.8,29.0],[71.8,27.9],[70.6,28.0],[69.5,26.9],[70.2,26.5],[70.3,25.7],[70.8,25.2],[71.0,24.4],[68.8,24.4],[68.2,23.7],[67.4,23.9],[67.1,24.7],[66.4,25.4],[64.5,25.2],[62.9,25.2],[61.5,25.1],[61.9,26.2],[63.3,26.8],[63.2,27.2],[62.8,27.4],[62.7,28.3],[61.8,28.7],[61.4,29.3],[60.9,29.8],[62.5,29.3],[63.6,29.5],[64.1,29.3],[64.4,29.6],[65.0,29.5],[66.3,29.9],[66.4,30.7],[66.9,31.3],[67.7,31.3],[67.8,31.6],[68.6,31.7],[68.9,31.6],[69.3,31.9],[69.3,32.5],[69.7,33.1],[70.3,33.4],[69.9,34.0],[70.9,34.0],[71.2,34.3],[71.1,34.7],[71.6,35.2],[71.5,35.7],[71.3,36.1],[71.8,36.5],[72.9,36.7],[74.1,36.8],[74.6,37.0],[75.2,37.1],[75.9,36.7],[76.2,35.9],[77.8,35.5]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"AF","NAME":"Afghanistan"},"geometry":{"type":"Polygon","coordinates":[[[66.5,37.4],[67.1,37.4],[67.8,37.1],[68.1,37.0],[68.9,37.3],[69.2,37.2],[69.5,37.6],[70.1,37.6],[70.3,37.7],[70.4,38.1],[70.8,38.5],[71.3,38.3],[71.2,38.0],[71.5,37.9],[71.4,37.1],[71.8,36.7],[72.2,36.9],[72.6,37.0],[73.3,37.5],[73.9,37.4],[75.0,37.4],[75.2,37.1],[74.6,37.0],[74.1,36.8],[72.9,36.7],[71.8,36.5],[71.3,36.1],[71.5,35.7],[71.6,35.2],[71.1,34.7],[71.2,34.3],[70.9,34.0],[69.9,34.0],[70.3,33.4],[69.7,33.1],[69.3,32.5],[69.3,31.9],[68.9,31.6],[68.6,31.7],[67.8,31.6],[67.7,31.3],[66.9,31.3],[66.4,30.7],[66.3,29.9],[65.0,29.5],[64.4,29.6],[64.1,29.3],[63.6,29.5],[62.5,29.3],[60.9,29.8],[61.8,30.7],[61.7,31.4],[60.9,31.5],[60.9,32.2],[60.5,33.0],[61.0,33.5],[60.5,33.7],[60.8,34.4],[61.2,35.7],[62.2,35.3],[63.0,35.4],[63.2,35.9],[64.0,36.0],[64.5,36.3],[64.7,37.1],[65.6,37.3],[65.7,37.7],[66.2,37.4],[66.5,37.4]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"TJ","NAME":"Tajikistan"},"geometry":{"type":"Polygon","coordinates":[[[67.8,37.1],[68.4,38.2],[68.2,38.9],[67.4,39.1],[67.7,39.6],[68.5,39.5],[69.0,40.1],[69.3,40.7],[70.7,41.0],[70.5,40.5],[70.6,40.2],[71.0,40.2],[70.6,39.9],[69.6,40.1],[69.5,39.5],[70.5,39.6],[71.8,39.3],[73.7,39.4],[73.9,38.5],[74.3,38.6],[74.9,38.4],[74.8,38.0],[75.0,37.4],[73.9,37.4],[73.3,37.5],[72.6,37.0],[72.2,36.9],[71.8,36.7],[71.4,37.1],[71.5,37.9],[71.2,38.0],[71.3,38.3],[70.8,38.5],[70.4,38.1],[70.3,37.7],[70.1,37.6],[69.5,37.6],[69.2,37.2],[68.9,37.3],[68.1,37.0],[67.8,37.1]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"KG","NAME":"Kyrgyzstan"},"geometry":{"type":"Polygon","coordinates":[[[71.0,42.3],[71.2,42.7],[71.8,42.8],[73.5,42.5],[73.6,43.1],[74.2,43.3],[75.6,42.9],[76.0,43.0],[77.7,43.0],[79.1,42.9],[79.6,42.5],[80.3,42.3],[80.1,42.1],[78.5,41.6],[78.2,41.2],[76.9,41.1],[76.5,40.4],[75.5,40.6],[74.8,40.4],[73.8,39.9],[74.0,39.7],[73.7,39.4],[71.8,39.3],[70.5,39.6],[69.5,39.5],[69.6,40.1],[70.6,39.9],[71.0,40.2],[71.8,40.1],[73.1,40.9],[71.9,41.4],[71.2,41.1],[70.4,41.5],[71.3,42.2],[71.0,42.3]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"TM","NAME":"Turkmenistan"},"geometry":{"type":"Polygon","coordinates":[[[52.5,41.8],[52.9,42.1],[54.1,42.3],[54.8,42.0],[55.5,41.3],[56.0,41.3],[57.1,41.3],[56.9,41.8],[57.8,42.2],[58.6,42.8],[60.0,42.2],[60.1,41.4],[60.5,41.2],[61.5,41.3],[61.9,41.1],[62.4,40.1],[63.5,39.4],[64.2,38.9],[65.2,38.4],[66.5,38.0],[66.5,37.4],[66.2,37.4],[65.7,37.7],[65.6,37.3],[64.7,37.1],[64.5,36.3],[64.0,36.0],[63.2,35.9],[63.0,35.4],[62.2,35.3],[61.2,35.7],[61.1,36.5],[60.4,36.5],[59.2,37.4],[58.4,37.5],[57.3,38.0],[56.6,38.1],[56.2,37.9],[55.5,38.0],[54.8,37.4],[53.9,37.2],[53.7,37.9],[53.9,39.0],[53.1,39.3],[53.4,40.0],[52.7,40.0],[52.9,40.9],[53.9,40.6],[54.7,41.0],[54.0,41.6],[53.7,42.1],[52.9,41.9],[52.8,41.1],[52.5,41.8]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"IR","NAME":"Iran"},"geometry":{"type":"Polygon","coordinates":[[[48.6,29.9],[48.0,30.5],[48.0,31.0],[47.7,31.0],[47.8,31.7],[47.3,32.5],[46.1,33.0],[45.4,34.0],[45.6,34.7],[46.2,35.1],[46.1,35.7],[45.4,36.0],[44.8,37.2],[44.8,37.2],[44.2,38.0],[44.4,38.3],[44.1,39.4],[44.8,39.7],[45.0,39.3],[45.5,38.9],[46.1,38.7],[46.5,38.8],[47.7,39.5],[48.1,39.6],[48.4,39.3],[48.0,38.8],[48.6,38.3],[48.9,38.3],[49.2,37.6],[50.1,37.4],[50.8,36.9],[52.3,36.7],[53.8,37.0],[53.9,37.2],[54.8,37.4],[55.5,38.0],[56.2,37.9],[56.6,38.1],[57.3,38.0],[58.4,37.5],[59.2,37.4],[60.4,36.5],[61.1,36.5],[61.2,35.7],[60.8,34.4],[60.5,33.7],[61.0,33.5],[60.5,33.0],[60.9,32.2],[60.9,31.5],[61.7,31.4],[61.8,30.7],[60.9,29.8],[61.4,29.3],[61.8,28.7],[62.7,28.3],[62.8,27.4],[63.2,27.2],[63.3,26.8],[61.9,26.2],[61.5,25.1],[59.6,25.4],[58.5,25.6],[57.4,25.7],[57.0,27.0],[56.5,27.1],[55.7,27.0],[54.7,26.5],[53.5,26.8],[52.5,27.6],[51.5,27.9],[50.9,28.8],[50.1,30.1],[49.6,30.0],[48.9,30.3],[48.6,29.9]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"SY","NAME":"Syria"},"geometry":{"type":"Polygon","coordinates":[[[35.7,32.7],[35.7,32.7],[35.8,32.9],[35.8,33.3],[36.1,33.8],[36.6,34.2],[36.4,34.6],[36.0,34.6],[35.9,35.4],[36.1,35.8],[36.4,36.0],[36.7,36.3],[36.7,36.8],[37.1,36.6],[38.2,36.9],[38.7,36.7],[39.5,36.7],[40.7,37.1],[41.2,37.1],[42.3,37.2],[41.8,36.6],[41.3,36.4],[41.4,35.6],[41.0,34.4],[38.8,33.4],[36.8,32.3],[35.7,32.7]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"AM","NAME":"Armenia"},"geometry":{"type":"Polygon","coordinates":[[[46.5,38.8],[46.1,38.7],[45.7,39.3],[45.7,39.5],[45.3,39.5],[45.0,39.7],[44.8,39.7],[44.4,40.0],[43.7,40.3],[43.8,40.7],[43.6,41.1],[45.0,41.2],[45.2,41.0],[45.6,40.8],[45.4,40.6],[45.9,40.2],[45.6,39.9],[46.0,39.6],[46.5,39.5],[46.5,38.8]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"SE","NAME":"Sweden"},"geometry":{"type":"Polygon","coordinates":[[[11.0,58.9],[11.5,59.4],[12.3,60.1],[12.6,61.3],[12.0,61.8],[11.9,63.1],[12.6,64.1],[13.6,64.0],[13.9,64.4],[13.6,64.8],[15.1,66.2],[16.1,67.3],[16.8,68.0],[17.7,68.0],[18.0,68.6],[19.9,68.4],[20.0,69.1],[20.6,69.1],[22.0,68.6],[23.5,67.9],[23.6,66.4],[23.9,66.0],[22.2,65.7],[21.2,65.0],[21.4,64.4],[19.8,63.6],[17.8,62.7],[17.1,61.3],[17.8,60.6],[18.8,60.1],[17.9,59.0],[16.8,58.7],[16.4,57.0],[15.9,56.1],[14.7,56.2],[14.1,55.4],[12.9,55.4],[12.6,56.3],[11.8,57.4],[11.0,58.9]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"BY","NAME":"Belarus"},"geometry":{"type":"Polygon","coordinates":[[[28.2,56.2],[29.2,55.9],[29.4,55.7],[29.9,55.8],[30.9,55.6],[31.0,55.1],[30.8,54.8],[31.4,54.2],[31.8,54.0],[31.7,53.8],[32.4,53.6],[32.7,53.4],[32.3,53.1],[31.5,53.2],[31.3,53.1],[31.5,52.7],[31.8,52.1],[31.8,52.1],[30.9,52.0],[30.6,51.8],[30.6,51.3],[30.2,51.4],[29.3,51.4],[29.0,51.6],[28.6,51.4],[28.2,51.6],[27.5,51.6],[26.3,51.8],[25.3,51.9],[24.6,51.9],[24.0,51.6],[23.5,51.6],[23.5,52.0],[23.2,52.5],[23.8,52.7],[23.8,53.1],[23.5,53.5],[23.5,53.9],[24.5,53.9],[25.5,54.3],[25.8,54.8],[26.6,55.2],[26.5,55.6],[27.1,55.8],[28.2,56.2]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"UA","NAME":"Ukraine"},"geometry":{"type":"Polygon","coordinates":[[[31.8,52.1],[32.2,52.1],[32.4,52.3],[32.7,52.2],[33.8,52.3],[34.4,51.8],[34.1,51.6],[34.2,51.3],[35.0,51.2],[35.4,50.8],[35.4,50.6],[36.6,50.2],[37.4,50.4],[38.0,49.9],[38.6,49.9],[40.1,49.6],[40.1,49.3],[39.7,48.8],[39.9,48.2],[39.7,47.9],[38.8,47.8],[38.3,47.5],[38.2,47.1],[37.4,47.0],[36.8,46.7],[35.8,46.6],[35.0,46.3],[35.0,45.7],[34.9,45.8],[34.7,46.0],[34.4,46.0],[33.7,46.2],[33.4,46.0],[33.3,46.1],[31.7,46.3],[31.7,46.7],[30.7,46.6],[30.4,46.0],[29.6,45.3],[29.1,45.5],[28.7,45.3],[28.2,45.5],[28.5,45.6],[28.7,45.9],[28.9,46.3],[28.9,46.4],[29.1,46.5],[29.2,46.4],[29.8,46.3],[30.0,46.4],[29.8,46.5],[29.9,46.7],[29.6,46.9],[29.4,47.3],[29.1,47.5],[29.1,47.8],[28.7,48.1],[28.3,48.2],[27.5,48.5],[26.9,48.4],[26.6,48.2],[26.2,48.2],[25.9,48.0],[25.2,47.9],[24.9,47.7],[24.4,48.0],[23.8,48.0],[23.1,48.1],[22.7,47.9],[22.6,48.2],[22.1,48.4],[22.3,48.8],[22.6,49.1],[22.8,49.0],[22.5,49.5],[23.4,50.3],[23.9,50.4],[24.0,50.7],[23.5,51.6],[24.0,51.6],[24.6,51.9],[25.3,51.9],[26.3,51.8],[27.5,51.6],[28.2,51.6],[28.6,51.4],[29.0,51.6],[29.3,51.4],[30.2,51.4],[30.6,51.3],[30.6,51.8],[30.9,52.0],[31.8,52.1]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"PL","NAME":"Poland"},"geometry":{"type":"Polygon","coordinates":[[[23.5,53.9],[23.5,53.5],[23.8,53.1],[23.8,52.7],[23.2,52.5],[23.5,52.0],[23.5,51.6],[24.0,50.7],[23.9,50.4],[23.4,50.3],[22.5,49.5],[22.8,49.0],[22.6,49.1],[21.6,49.5],[20.9,49.3],[20.4,49.4],[19.8,49.2],[19.3,49.6],[18.9,49.4],[18.9,49.5],[18.4,50.0],[17.6,50.0],[17.6,50.4],[16.9,50.5],[16.7,50.2],[16.2,50.4],[16.2,50.7],[15.5,50.8],[15.0,51.1],[14.6,51.7],[14.7,52.1],[14.4,52.6],[14.1,53.0],[14.4,53.2],[14.1,53.8],[14.8,54.1],[16.4,54.5],[17.6,54.9],[18.6,54.7],[18.7,54.4],[19.7,54.4],[20.9,54.3],[22.7,54.3],[23.2,54.2],[23.5,53.9]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"AT","NAME":"Austria"},"geometry":{"type":"Polygon","coordinates":[[[17.0,48.1],[16.9,47.7],[16.3,47.7],[16.5,47.5],[16.2,46.9],[16.0,46.7],[15.1,46.7],[14.6,46.4],[13.8,46.5],[12.4,46.8],[12.2,47.1],[11.2,46.9],[11.0,46.8],[10.4,46.9],[9.9,46.9],[9.5,47.1],[9.6,47.3],[9.6,47.5],[9.9,47.6],[10.4,47.3],[10.5,47.6],[11.4,47.5],[12.1,47.7],[12.6,47.7],[12.9,47.5],[13.0,47.6],[12.9,48.3],[13.2,48.4],[13.6,48.9],[14.3,48.6],[14.9,49.0],[15.3,49.0],[16.0,48.7],[16.5,48.8],[17.0,48.6],[16.9,48.5],[17.0,48.1]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"HU","NAME":"Hungary"},"geometry":{"type":"Polygon","coordinates":[[[22.1,48.4],[22.6,48.2],[22.7,47.9],[22.1,47.7],[21.6,47.0],[21.0,46.3],[20.2,46.1],[19.6,46.2],[18.8,45.9],[18.8,45.9],[18.5,45.8],[17.6,46.0],[16.9,46.4],[16.6,46.5],[16.4,46.8],[16.2,46.9],[16.5,47.5],[16.3,47.7],[16.9,47.7],[17.0,48.1],[17.5,47.9],[17.9,47.8],[18.7,47.9],[18.8,48.1],[19.2,48.1],[19.7,48.3],[19.8,48.2],[20.2,48.3],[20.5,48.6],[20.8,48.6],[21.9,48.3],[22.1,48.4]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"MD","NAME":"Moldova"},"geometry":{"type":"Polygon","coordinates":[[[26.6,48.2],[26.9,48.4],[27.5,48.5],[28.3,48.2],[28.7,48.1],[29.1,47.8],[29.1,47.5],[29.4,47.3],[29.6,46.9],[29.9,46.7],[29.8,46.5],[30.0,46.4],[29.8,46.3],[29.2,46.4],[29.1,46.5],[28.9,46.4],[28.9,46.3],[28.7,45.9],[28.5,45.6],[28.2,45.5],[28.1,45.9],[28.2,46.4],[28.1,46.8],[27.6,47.4],[27.2,47.8],[26.9,48.1],[26.6,48.2]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"RO","NAME":"Romania"},"geometry":{"type":"Polygon","coordinates":[[[28.2,45.5],[28.7,45.3],[29.1,45.5],[29.6,45.3],[29.6,45.0],[29.1,44.8],[28.8,44.9],[28.6,43.7],[28.0,43.8],[27.2,44.2],[26.1,43.9],[25.6,43.7],[24.1,43.7],[23.3,43.9],[22.9,43.8],[22.7,44.2],[22.5,44.4],[22.7,44.6],[22.5,44.7],[22.1,44.5],[21.6,44.8],[21.5,45.2],[20.9,45.4],[20.8,45.7],[20.2,46.1],[21.0,46.3],[21.6,47.0],[22.1,47.7],[22.7,47.9],[23.1,48.1],[23.8,48.0],[24.4,48.0],[24.9,47.7],[25.2,47.9],[25.9,48.0],[26.2,48.2],[26.6,48.2],[26.9,48.1],[27.2,47.8],[27.6,47.4],[28.1,46.8],[28.2,46.4],[28.1,45.9],[28.2,45.5]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"LT","NAME":"Lithuania"},"geometry":{"type":"Polygon","coordinates":[[[26.5,55.6],[26.6,55.2],[25.8,54.8],[25.5,54.3],[24.5,53.9],[23.5,53.9],[23.2,54.2],[22.7,54.3],[22.7,54.6],[22.8,54.9],[22.3,55.0],[21.3,55.2],[21.1,56.0],[22.2,56.3],[23.9,56.3],[24.9,56.4],[25.0,56.2],[25.5,56.1],[26.5,55.6]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"LV","NAME":"Latvia"},"geometry":{"type":"Polygon","coordinates":[[[27.3,57.5],[27.8,57.2],[27.9,56.8],[28.2,56.2],[27.1,55.8],[26.5,55.6],[25.5,56.1],[25.0,56.2],[24.9,56.4],[23.9,56.3],[22.2,56.3],[21.1,56.0],[21.1,56.8],[21.6,57.4],[22.5,57.8],[23.3,57.0],[24.1,57.0],[24.3,57.8],[25.2,58.0],[25.6,57.8],[26.5,57.5],[27.3,57.5]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"EE","NAME":"Estonia"},"geometry":{"type":"Polygon","coordinates":[[[28.0,59.5],[28.0,59.5],[28.1,59.3],[27.4,58.7],[27.7,57.8],[27.3,57.5],[26.5,57.5],[25.6,57.8],[25.2,58.0],[24.3,57.8],[24.4,58.4],[24.1,58.3],[23.4,58.6],[23.3,59.2],[24.6,59.5],[25.9,59.6],[26.9,59.4],[28.0,59.5],[28.0,59.5]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"DE","NAME":"Germany"},"geometry":{"type":"Polygon","coordinates":[[[14.1,53.8],[14.4,53.2],[14.1,53.0],[14.4,52.6],[14.7,52.1],[14.6,51.7],[15.0,51.1],[14.6,51.0],[14.3,51.1],[14.1,50.9],[13.3,50.7],[13.0,50.5],[12.2,50.3],[12.4,50.0],[12.5,49.5],[13.0,49.3],[13.6,48.9],[13.2,48.4],[12.9,48.3],[13.0,47.6],[12.9,47.5],[12.6,47.7],[12.1,47.7],[11.4,47.5],[10.5,47.6],[10.4,47.3],[9.9,47.6],[9.6,47.5],[8.5,47.8],[8.3,47.6],[7.5,47.6],[7.6,48.3],[8.1,49.0],[6.7,49.2],[6.2,49.5],[6.2,49.9],[6.0,50.1],[6.2,50.8],[6.0,51.9],[6.6,51.9],[6.8,52.2],[7.1,53.1],[6.9,53.5],[7.1,53.7],[7.9,53.7],[8.1,53.5],[8.8,54.0],[8.6,54.4],[8.5,55.0],[9.3,54.8],[9.9,55.0],[9.9,54.6],[11.0,54.4],[10.9,54.0],[12.0,54.2],[12.5,54.5],[13.6,54.1],[14.1,53.8]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"BG","NAME":"Bulgaria"},"geometry":{"type":"Polygon","coordinates":[[[22.7,44.2],[22.9,43.8],[23.3,43.9],[24.1,43.7],[25.6,43.7],[26.1,43.9],[27.2,44.2],[28.0,43.8],[28.6,43.7],[28.0,43.3],[27.7,42.6],[28.0,42.0],[27.1,42.1],[26.1,41.8],[26.1,41.3],[25.2,41.2],[24.5,41.6],[23.7,41.3],[23.0,41.3],[22.9,42.0],[22.4,42.3],[22.5,42.5],[22.4,42.6],[22.6,42.9],[23.0,43.2],[22.5,43.6],[22.4,44.0],[22.7,44.2]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"GR","NAME":"Greece"},"geometry":{"type":"MultiPolygon","coordinates":[[[[26.3,35.3],[26.2,35.0],[24.7,34.9],[24.7,35.1],[23.5,35.3],[23.7,35.7],[24.2,35.4],[25.0,35.4],[25.8,35.4],[25.7,35.2],[26.3,35.3]]],[[[23.0,41.3],[23.7,41.3],[24.5,41.6],[25.2,41.2],[26.1,41.3],[26.1,41.8],[26.6,41.6],[26.3,40.9],[26.1,40.8],[25.4,40.9],[24.9,40.9],[23.7,40.7],[24.4,40.1],[23.9,40.0],[23.3,40.0],[22.8,40.5],[22.6,40.3],[22.8,39.7],[23.4,39.2],[23.0,39.0],[23.5,38.5],[24.0,38.2],[24.0,37.7],[23.1,37.9],[23.4,37.4],[22.8,37.3],[23.2,36.4],[22.5,36.4],[21.7,36.8],[21.3,37.6],[21.1,38.3],[20.7,38.8],[20.2,39.3],[20.2,39.6],[20.6,40.1],[20.7,40.4],[21.0,40.6],[21.0,40.8],[21.7,40.9],[22.1,41.1],[22.6,41.1],[22.8,41.3],[23.0,41.3]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"TR","NAME":"Turkey"},"geometry":{"type":"MultiPolygon","coordinates":[[[[44.8,37.2],[44.3,37.0],[43.9,37.3],[42.8,37.4],[42.3,37.2],[41.2,37.1],[40.7,37.1],[39.5,36.7],[38.7,36.7],[38.2,36.9],[37.1,36.6],[36.7,36.8],[36.7,36.3],[36.4,36.0],[36.1,35.8],[35.8,36.3],[36.2,36.7],[35.6,36.6],[34.7,36.8],[34.0,36.2],[32.5,36.1],[31.7,36.6],[30.6,36.7],[30.4,36.3],[29.7,36.1],[28.7,36.7],[27.6,36.7],[27.0,37.7],[26.3,38.2],[26.8,39.0],[26.2,39.5],[27.3,40.4],[28.8,40.5],[29.2,41.2],[31.1,41.1],[32.3,41.7],[33.5,42.0],[35.2,42.0],[36.9,41.3],[38.3,40.9],[39.5,41.1],[40.4,41.0],[41.6,41.5],[42.6,41.6],[43.6,41.1],[43.8,40.7],[43.7,40.3],[44.4,40.0],[44.8,39.7],[44.1,39.4],[44.4,38.3],[44.2,38.0],[44.8,37.2],[44.8,37.2]]],[[[26.1,41.8],[27.1,42.1],[28.0,42.0],[28.1,41.6],[29.0,41.3],[28.8,41.1],[27.6,41.0],[27.2,40.7],[26.4,40.2],[26.0,40.6],[26.1,40.8],[26.3,40.9],[26.6,41.6],[26.1,41.8]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"AL","NAME":"Albania"},"geometry":{"type":"Polygon","coordinates":[[[21.0,40.8],[21.0,40.6],[20.7,40.4],[20.6,40.1],[20.2,39.6],[20.0,39.7],[20.0,39.9],[19.4,40.3],[19.3,40.7],[19.4,41.4],[19.5,41.7],[19.4,41.9],[19.4,41.9],[19.3,42.2],[19.7,42.7],[19.8,42.5],[20.1,42.6],[20.3,42.3],[20.5,42.2],[20.6,41.9],[20.6,41.9],[20.5,41.5],[20.6,41.1],[21.0,40.8]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"HR","NAME":"Croatia"},"geometry":{"type":"Polygon","coordinates":[[[16.6,46.5],[16.9,46.4],[17.6,46.0],[18.5,45.8],[18.8,45.9],[19.1,45.5],[19.4,45.2],[19.0,44.9],[18.6,45.1],[17.9,45.1],[17.0,45.2],[16.5,45.2],[16.3,45.0],[16.0,45.2],[15.8,44.8],[16.2,44.4],[16.5,44.0],[16.9,43.7],[17.3,43.4],[17.7,43.0],[18.6,42.6],[18.5,42.5],[18.5,42.5],[17.5,42.8],[16.9,43.2],[16.0,43.5],[15.2,44.2],[15.4,44.3],[14.9,44.7],[14.9,45.1],[14.3,45.2],[14.0,44.8],[13.7,45.1],[13.7,45.5],[13.7,45.5],[14.4,45.5],[14.6,45.6],[14.9,45.5],[15.3,45.5],[15.3,45.7],[15.7,45.8],[15.8,46.2],[16.6,46.5]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"CH","NAME":"Switzerland"},"geometry":{"type":"Polygon","coordinates":[[[9.6,47.5],[9.6,47.3],[9.5,47.1],[9.9,46.9],[10.4,46.9],[10.4,46.5],[9.9,46.3],[9.2,46.4],[9.0,46.0],[8.5,46.0],[8.3,46.2],[7.8,45.8],[7.3,45.8],[6.8,46.0],[6.5,46.4],[6.0,46.3],[6.0,46.7],[6.8,47.3],[6.7,47.5],[7.2,47.4],[7.5,47.6],[8.3,47.6],[8.5,47.8],[9.6,47.5]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"LU","NAME":"Luxembourg"},"geometry":{"type":"Polygon","coordinates":[[[6.0,50.1],[6.2,49.9],[6.2,49.5],[5.9,49.4],[5.7,49.5],[5.8,50.1],[6.0,50.1]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"BE","NAME":"Belgium"},"geometry":{"type":"Polygon","coordinates":[[[6.2,50.8],[6.0,50.1],[5.8,50.1],[5.7,49.5],[4.8,50.0],[4.3,49.9],[3.6,50.4],[3.1,50.8],[2.7,50.8],[2.5,51.1],[3.3,51.3],[3.3,51.3],[3.3,51.3],[4.0,51.3],[5.0,51.5],[5.6,51.0],[6.2,50.8]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"NL","NAME":"Netherlands"},"geometry":{"type":"Polygon","coordinates":[[[6.9,53.5],[7.1,53.1],[6.8,52.2],[6.6,51.9],[6.0,51.9],[6.2,50.8],[5.6,51.0],[5.0,51.5],[4.0,51.3],[3.3,51.3],[3.3,51.3],[3.8,51.6],[4.7,53.1],[6.1,53.5],[6.9,53.5]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"PT","NAME":"Portugal"},"geometry":{"type":"Polygon","coordinates":[[[-9.0,41.9],[-8.7,42.1],[-8.3,42.3],[-8.0,41.8],[-7.4,41.8],[-7.3,41.9],[-6.7,41.9],[-6.4,41.4],[-6.9,41.1],[-6.9,40.3],[-7.0,40.2],[-7.1,39.7],[-7.5,39.6],[-7.1,39.0],[-7.4,38.4],[-7.0,38.1],[-7.2,37.8],[-7.5,37.4],[-7.5,37.1],[-7.9,36.8],[-8.4,37.0],[-8.9,36.9],[-8.7,37.7],[-8.8,38.3],[-9.3,38.4],[-9.5,38.7],[-9.4,39.4],[-9.0,39.8],[-9.0,40.2],[-8.8,40.8],[-8.8,41.2],[-9.0,41.5],[-9.0,41.9]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"ES","NAME":"Spain"},"geometry":{"type":"Polygon","coordinates":[[[-7.5,37.1],[-7.5,37.4],[-7.2,37.8],[-7.0,38.1],[-7.4,38.4],[-7.1,39.0],[-7.5,39.6],[-7.1,39.7],[-7.0,40.2],[-6.9,40.3],[-6.9,41.1],[-6.4,41.4],[-6.7,41.9],[-7.3,41.9],[-7.4,41.8],[-8.0,41.8],[-8.3,42.3],[-8.7,42.1],[-9.0,41.9],[-9.0,42.6],[-9.4,43.0],[-8.0,43.7],[-6.8,43.6],[-5.4,43.6],[-4.3,43.4],[-3.5,43.5],[-1.9,43.4],[-1.5,43.0],[0.3,42.6],[0.7,42.8],[1.8,42.3],[3.0,42.5],[3.0,41.9],[2.1,41.2],[0.8,41.0],[0.7,40.7],[0.1,40.1],[-0.3,39.3],[0.1,38.7],[-0.5,38.3],[-0.7,37.6],[-1.4,37.4],[-2.1,36.7],[-3.4,36.7],[-4.4,36.7],[-5.0,36.3],[-5.4,35.9],[-5.9,36.0],[-6.2,36.4],[-6.5,36.9],[-7.5,37.1]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"IE","NAME":"Ireland"},"geometry":{"type":"Polygon","coordinates":[[[-6.2,53.9],[-6.0,53.2],[-6.8,52.3],[-8.6,51.7],[-10.0,51.8],[-9.2,52.9],[-9.7,53.9],[-8.3,54.7],[-7.6,55.1],[-7.4,54.6],[-7.6,54.1],[-7.0,54.1],[-6.2,53.9]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"NC","NAME":"New Caledonia"},"geometry":{"type":"Polygon","coordinates":[[[165.8,-21.1],[166.6,-21.7],[167.1,-22.2],[166.7,-22.4],[166.2,-22.1],[165.5,-21.7],[164.8,-21.1],[164.2,-20.4],[164.0,-20.1],[164.5,-20.1],[165.0,-20.5],[165.5,-20.8],[165.8,-21.1]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"SB","NAME":"Solomon Is."},"geometry":{"type":"MultiPolygon","coordinates":[[[[162.1,-10.5],[162.4,-10.8],[161.7,-10.8],[161.3,-10.2],[161.9,-10.4],[162.1,-10.5]]],[[[161.7,-9.6],[161.5,-9.8],[160.8,-8.9],[160.6,-8.3],[160.9,-8.3],[161.3,-9.1],[161.7,-9.6]]],[[[160.9,-9.9],[160.5,-9.9],[159.8,-9.8],[159.6,-9.6],[159.7,-9.2],[160.4,-9.4],[160.7,-9.6],[160.9,-9.9]]],[[[159.6,-8.0],[159.9,-8.3],[159.9,-8.5],[159.1,-8.1],[158.6,-7.8],[158.2,-7.4],[158.4,-7.3],[158.8,-7.6],[159.6,-8.0]]],[[[157.1,-7.0],[157.5,-7.3],[157.3,-7.4],[156.9,-7.2],[156.5,-6.8],[156.5,-6.6],[157.1,-7.0]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"NZ","NAME":"New Zealand"},"geometry":{"type":"MultiPolygon","coordinates":[[[[176.9,-40.1],[176.5,-40.6],[176.0,-41.3],[175.2,-41.7],[175.1,-41.4],[174.7,-41.3],[175.2,-40.5],[174.9,-39.9],[173.8,-39.5],[173.9,-39.1],[174.6,-38.8],[174.7,-38.0],[174.7,-37.4],[174.3,-36.7],[174.3,-36.5],[173.8,-36.1],[173.1,-35.2],[172.6,-34.5],[173.0,-34.5],[173.6,-35.0],[174.3,-35.3],[174.6,-36.2],[175.3,-37.2],[175.4,-36.5],[175.8,-36.8],[176.0,-37.6],[176.8,-37.9],[177.4,-38.0],[178.0,-37.6],[178.5,-37.7],[178.3,-38.6],[178.0,-39.2],[177.2,-39.1],[176.9,-39.4],[177.0,-39.9],[176.9,-40.1]]],[[[169.7,-43.6],[170.5,-43.0],[171.1,-42.5],[171.6,-41.8],[171.9,-41.5],[172.1,-41.0],[172.8,-40.5],[173.0,-40.9],[173.2,-41.3],[174.0,-40.9],[174.2,-41.3],[174.2,-41.8],[173.9,-42.2],[173.2,-43.0],[172.7,-43.4],[173.1,-43.9],[172.3,-43.9],[171.5,-44.2],[171.2,-44.9],[170.6,-45.9],[169.8,-46.4],[169.3,-46.6],[168.4,-46.6],[167.8,-46.3],[166.7,-46.2],[166.5,-45.9],[167.0,-45.1],[168.3,-44.1],[168.9,-43.9],[169.7,-43.6]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"AU","NAME":"Australia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[147.7,-40.8],[148.3,-40.9],[148.4,-42.1],[148.0,-42.4],[147.9,-43.2],[147.6,-42.9],[146.9,-43.6],[146.7,-43.6],[146.0,-43.5],[145.4,-42.7],[145.3,-42.0],[144.7,-41.2],[144.7,-40.7],[145.4,-40.8],[146.4,-41.1],[146.9,-41.0],[147.7,-40.8]]],[[[126.1,-32.2],[125.1,-32.7],[124.2,-33.0],[124.0,-33.5],[123.7,-33.9],[122.8,-33.9],[122.2,-34.0],[121.3,-33.8],[120.6,-33.9],[119.9,-34.0],[119.3,-34.5],[119.0,-34.5],[118.5,-34.7],[118.0,-35.1],[117.3,-35.0],[116.6,-35.0],[115.6,-34.4],[115.0,-34.2],[115.0,-33.6],[115.5,-33.5],[115.7,-33.3],[115.7,-32.9],[115.8,-32.2],[115.7,-31.6],[115.2,-30.6],[115.0,-30.0],[115.0,-29.5],[114.6,-28.8],[114.6,-28.5],[114.2,-28.1],[114.0,-27.3],[113.5,-26.5],[113.3,-26.1],[113.8,-26.5],[113.4,-25.6],[113.9,-25.9],[114.2,-26.3],[114.2,-25.8],[113.7,-25.0],[113.6,-24.7],[113.4,-24.4],[113.5,-23.8],[113.7,-23.6],[113.8,-23.1],[113.7,-22.5],[114.1,-21.8],[114.2,-22.5],[114.6,-21.8],[115.5,-21.5],[115.9,-21.1],[116.7,-20.7],[117.2,-20.6],[117.4,-20.7],[118.2,-20.4],[118.8,-20.3],[119.0,-20.0],[119.3,-20.0],[119.8,-20.0],[120.9,-19.7],[121.4,-19.2],[121.7,-18.7],[122.2,-18.2],[122.3,-17.8],[122.3,-17.3],[123.0,-16.4],[123.4,-17.3],[123.9,-17.1],[123.5,-16.6],[123.8,-16.1],[124.3,-16.3],[124.4,-15.6],[124.9,-15.1],[125.2,-14.7],[125.7,-14.5],[125.7,-14.2],[126.1,-14.3],[126.1,-14.1],[126.6,-14.0],[127.1,-13.8],[127.8,-14.3],[128.4,-14.9],[129.0,-14.9],[129.6,-15.0],[129.4,-14.4],[129.9,-13.6],[130.3,-13.4],[130.2,-13.1],[130.6,-12.5],[131.2,-12.2],[131.7,-12.3],[132.6,-12.1],[132.6,-11.6],[131.8,-11.3],[132.4,-11.1],[133.0,-11.4],[133.6,-11.8],[134.4,-12.0],[134.7,-11.9],[135.3,-12.2],[135.9,-12.0],[136.3,-12.0],[136.5,-11.9],[137.0,-12.4],[136.7,-12.9],[136.3,-13.3],[136.0,-13.3],[136.1,-13.7],[135.8,-14.2],[135.4,-14.7],[135.5,-15.0],[136.3,-15.6],[137.1,-15.9],[137.6,-16.2],[138.3,-16.8],[138.6,-16.8],[139.1,-17.1],[139.3,-17.4],[140.2,-17.7],[140.9,-17.4],[141.1,-16.8],[141.3,-16.4],[141.4,-15.8],[141.7,-15.0],[141.6,-14.6],[141.6,-14.3],[141.5,-13.7],[141.7,-12.9],[141.8,-12.7],[141.7,-12.4],[141.9,-11.9],[142.1,-11.3],[142.1,-11.0],[142.5,-10.7],[142.8,-11.2],[142.9,-11.8],[143.1,-11.9],[143.2,-12.3],[143.5,-12.8],[143.6,-13.4],[143.6,-13.8],[143.9,-14.5],[144.6,-14.2],[144.9,-14.6],[145.4,-15.0],[145.3,-15.4],[145.5,-16.3],[145.6,-16.8],[145.9,-16.9],[146.2,-17.8],[146.1,-18.3],[146.4,-19.0],[147.5,-19.5],[148.2,-20.0],[148.8,-20.4],[148.7,-20.6],[149.3,-21.3],[149.7,-22.3],[150.1,-22.1],[150.5,-22.6],[150.7,-22.4],[150.9,-23.5],[151.6,-24.1],[152.1,-24.5],[152.9,-25.3],[153.1,-26.1],[153.2,-26.6],[153.1,-27.3],[153.6,-28.1],[153.5,-29.0],[153.3,-29.5],[153.1,-30.4],[153.1,-30.9],[152.9,-31.6],[152.5,-32.6],[151.7,-33.0],[151.3,-33.8],[151.0,-34.3],[150.7,-35.2],[150.3,-35.7],[150.1,-36.4],[149.9,-37.1],[150.0,-37.4],[149.4,-37.8],[148.3,-37.8],[147.4,-38.2],[146.9,-38.6],[146.3,-39.0],[145.5,-38.6],[144.9,-38.4],[145.0,-37.9],[144.5,-38.1],[143.6,-38.8],[142.7,-38.5],[142.2,-38.4],[141.6,-38.3],[140.6,-38.0],[140.0,-37.4],[139.8,-36.6],[139.6,-36.1],[139.1,-35.7],[138.1,-35.6],[138.4,-35.1],[138.2,-34.4],[137.7,-35.1],[136.8,-35.3],[137.4,-34.7],[137.5,-34.1],[137.9,-33.6],[137.8,-32.9],[137.0,-33.8],[136.4,-34.1],[136.0,-34.9],[135.2,-34.5],[135.2,-33.9],[134.6,-33.2],[134.1,-32.8],[134.3,-32.6],[133.0,-32.0],[132.3,-32.0],[131.3,-31.5],[129.5,-31.6],[128.2,-31.9],[127.1,-32.3],[126.1,-32.2]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"LK","NAME":"Sri Lanka"},"geometry":{"type":"Polygon","coordinates":[[[81.8,7.5],[81.6,6.5],[81.2,6.2],[80.3,6.0],[79.9,6.8],[79.7,8.2],[80.1,9.8],[80.8,9.3],[81.3,8.6],[81.8,7.5]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"CN","NAME":"China"},"geometry":{"type":"MultiPolygon","coordinates":[[[[109.5,18.2],[108.7,18.5],[108.6,19.4],[109.1,19.8],[110.2,20.1],[110.8,20.1],[111.0,19.7],[110.6,19.3],[110.3,18.7],[109.5,18.2]]],[[[80.3,42.3],[80.2,42.9],[80.9,43.2],[80.0,44.9],[81.9,45.3],[82.5,45.5],[83.2,47.3],[85.2,47.0],[85.7,47.5],[85.8,48.5],[86.6,48.5],[87.4,49.2],[87.8,49.3],[88.0,48.6],[88.9,48.1],[90.3,47.7],[91.0,46.9],[90.6,45.7],[90.9,45.3],[92.1,45.1],[93.5,45.0],[94.7,44.4],[95.3,44.2],[95.8,43.3],[96.3,42.7],[97.5,42.7],[99.5,42.5],[100.8,42.7],[101.8,42.5],[103.3,41.9],[104.5,41.9],[105.0,41.6],[106.1,42.1],[107.7,42.5],[109.2,42.5],[110.4,42.9],[111.1,43.4],[111.8,43.7],[111.7,44.1],[111.3,44.5],[111.9,45.1],[112.4,45.0],[113.5,44.8],[114.5,45.3],[116.0,45.7],[116.7,46.4],[117.4,46.7],[118.9,46.8],[119.7,46.7],[119.8,47.0],[118.9,47.7],[118.1,48.1],[117.3,47.7],[116.3,47.9],[115.7,47.7],[115.5,48.1],[116.2,49.1],[116.7,49.9],[117.9,49.5],[119.3,50.1],[119.3,50.6],[120.2,51.6],[120.7,52.0],[120.7,52.5],[120.2,52.8],[121.0,53.3],[122.2,53.4],[123.6,53.5],[125.1,53.2],[125.9,52.8],[126.6,51.8],[126.9,51.4],[127.3,50.7],[127.7,49.8],[129.4,49.4],[130.6,48.7],[131.0,47.8],[132.5,47.8],[133.4,48.2],[135.0,48.5],[134.5,47.6],[134.1,47.2],[133.8,46.1],[133.1,45.1],[131.9,45.3],[131.0,45.0],[131.3,44.1],[131.1,42.9],[130.6,42.9],[130.6,42.4],[130.0,43.0],[129.6,42.4],[128.1,42.0],[128.2,41.5],[127.3,41.5],[126.9,41.8],[126.2,41.1],[125.1,40.6],[124.3,39.9],[122.9,39.6],[122.1,39.2],[121.1,38.9],[121.6,39.4],[121.4,39.8],[122.2,40.4],[121.6,40.9],[120.8,40.6],[119.6,39.9],[119.0,39.3],[118.0,39.2],[117.5,38.7],[118.1,38.1],[118.9,37.9],[118.9,37.4],[119.7,37.2],[120.8,37.9],[121.7,37.5],[122.4,37.5],[122.5,36.9],[121.1,36.7],[120.6,36.1],[119.7,35.6],[119.2,34.9],[120.2,34.4],[120.6,33.4],[121.2,32.5],[121.9,31.7],[121.9,30.9],[121.3,30.7],[121.5,30.1],[122.1,29.8],[121.9,29.0],[121.7,28.2],[121.1,28.1],[120.4,27.1],[119.6,25.7],[118.7,24.5],[117.3,23.6],[115.9,22.8],[114.8,22.7],[114.2,22.2],[113.8,22.5],[113.2,22.1],[111.8,21.6],[110.8,21.4],[110.4,20.3],[109.9,20.3],[109.6,21.0],[109.9,21.4],[108.5,21.7],[108.1,21.6],[107.0,21.8],[106.6,22.2],[106.7,22.8],[105.8,23.0],[105.3,23.4],[104.5,22.8],[103.5,22.7],[102.7,22.7],[102.2,22.5],[101.7,22.3],[101.8,21.2],[101.3,21.2],[101.2,21.4],[101.2,21.8],[100.4,21.6],[100.0,21.7],[99.2,22.1],[99.5,22.9],[98.9,23.1],[98.7,24.1],[97.6,23.9],[97.7,25.1],[98.7,25.9],[98.7,26.7],[98.7,27.5],[98.2,27.7],[97.9,28.3],[97.3,28.3],[96.2,28.4],[96.6,28.8],[96.1,29.5],[95.4,29.0],[94.6,29.3],[93.4,28.6],[92.5,27.9],[91.7,27.8],[91.3,28.0],[90.7,28.1],[90.0,28.3],[89.5,28.0],[88.8,27.3],[88.7,28.1],[88.1,27.9],[87.0,28.0],[85.8,28.2],[85.0,28.6],[84.2,28.8],[83.9,29.3],[83.3,29.5],[82.3,30.1],[81.5,30.4],[81.1,30.2],[79.7,30.9],[78.7,31.5],[78.5,32.6],[79.2,32.5],[79.2,33.0],[78.8,33.5],[78.9,34.3],[77.8,35.5],[76.2,35.9],[75.9,36.7],[75.2,37.1],[75.0,37.4],[74.8,38.0],[74.9,38.4],[74.3,38.6],[73.9,38.5],[73.7,39.4],[74.0,39.7],[73.8,39.9],[74.8,40.4],[75.5,40.6],[76.5,40.4],[76.9,41.1],[78.2,41.2],[78.5,41.6],[80.1,42.1],[80.3,42.3]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"TW","NAME":"Taiwan"},"geometry":{"type":"Polygon","coordinates":[[[121.8,24.4],[121.2,22.8],[120.7,22.0],[120.2,22.8],[120.1,23.6],[120.7,24.5],[121.5,25.3],[122.0,25.0],[121.8,24.4]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"IT","NAME":"Italy"},"geometry":{"type":"MultiPolygon","coordinates":[[[[10.4,46.9],[11.0,46.8],[11.2,46.9],[12.2,47.1],[12.4,46.8],[13.8,46.5],[13.7,46.0],[13.9,45.6],[13.1,45.7],[12.3,45.4],[12.4,44.9],[12.3,44.6],[12.6,44.1],[13.5,43.6],[14.0,42.8],[15.1,42.0],[15.9,42.0],[16.2,41.7],[15.9,41.5],[16.8,41.2],[17.5,40.9],[18.4,40.4],[18.5,40.2],[18.3,39.8],[17.7,40.3],[16.9,40.4],[16.4,39.8],[17.2,39.4],[17.1,38.9],[16.6,38.8],[16.1,38.0],[15.7,37.9],[15.7,38.2],[15.9,38.8],[16.1,39.0],[15.7,39.5],[15.4,40.0],[15.0,40.2],[14.7,40.6],[14.1,40.8],[13.6,41.2],[12.9,41.3],[12.1,41.7],[11.2,42.4],[10.5,42.9],[10.2,43.9],[9.7,44.0],[8.9,44.4],[8.4,44.2],[7.9,43.8],[7.4,43.7],[7.5,44.1],[7.0,44.3],[6.7,45.0],[7.1,45.3],[6.8,45.7],[6.8,46.0],[7.3,45.8],[7.8,45.8],[8.3,46.2],[8.5,46.0],[9.0,46.0],[9.2,46.4],[9.9,46.3],[10.4,46.5],[10.4,46.9]]],[[[14.8,38.1],[15.5,38.2],[15.2,37.4],[15.3,37.1],[15.1,36.6],[14.3,37.0],[13.8,37.1],[12.4,37.6],[12.6,38.1],[13.7,38.0],[14.8,38.1]]],[[[8.7,40.9],[9.2,41.2],[9.8,40.5],[9.7,39.2],[9.2,39.2],[8.8,38.9],[8.4,39.2],[8.4,40.4],[8.2,41.0],[8.7,40.9]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"DK","NAME":"Denmark"},"geometry":{"type":"MultiPolygon","coordinates":[[[[9.9,55.0],[9.3,54.8],[8.5,55.0],[8.1,55.5],[8.1,56.5],[8.3,56.8],[8.5,57.1],[9.4,57.2],[9.8,57.4],[10.6,57.7],[10.5,57.2],[10.2,56.9],[10.4,56.6],[10.9,56.5],[10.7,56.1],[10.4,56.2],[9.6,55.5],[9.9,55.0]]],[[[12.4,56.1],[12.7,55.6],[12.1,54.8],[11.0,55.4],[10.9,55.8],[12.4,56.1]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"GB","NAME":"United Kingdom"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-6.2,53.9],[-7.0,54.1],[-7.6,54.1],[-7.4,54.6],[-7.6,55.1],[-6.7,55.2],[-5.7,54.6],[-6.2,53.9]]],[[[-3.1,53.4],[-3.1,53.4],[-2.9,54.0],[-3.6,54.6],[-3.6,54.6],[-4.8,54.8],[-5.1,55.1],[-4.7,55.5],[-5.0,55.8],[-5.6,55.3],[-5.6,56.3],[-6.1,56.8],[-5.8,57.8],[-5.0,58.6],[-4.2,58.6],[-3.0,58.6],[-4.1,57.6],[-3.1,57.7],[-2.0,57.7],[-2.2,56.9],[-3.1,56.0],[-2.1,55.9],[-2.0,55.8],[-1.1,54.6],[-0.4,54.5],[0.2,53.3],[0.5,52.9],[1.7,52.7],[1.6,52.1],[1.1,51.8],[1.4,51.3],[0.6,50.8],[-0.8,50.8],[-2.5,50.5],[-3.0,50.7],[-3.6,50.2],[-4.5,50.3],[-5.2,50.0],[-5.8,50.2],[-4.3,51.2],[-3.4,51.4],[-3.4,51.4],[-5.0,51.6],[-5.3,52.0],[-4.2,52.3],[-4.8,52.8],[-4.6,53.5],[-3.1,53.4]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"IS","NAME":"Iceland"},"geometry":{"type":"Polygon","coordinates":[[[-14.5,66.5],[-14.7,65.8],[-13.6,65.1],[-14.9,64.4],[-17.8,63.7],[-18.7,63.5],[-20.0,63.6],[-22.8,64.0],[-21.8,64.4],[-24.0,64.9],[-22.2,65.1],[-22.2,65.4],[-24.3,65.6],[-23.7,66.3],[-22.1,66.4],[-20.6,65.7],[-19.1,66.3],[-17.8,66.0],[-16.2,66.5],[-14.5,66.5]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"AZ","NAME":"Azerbaijan"},"geometry":{"type":"MultiPolygon","coordinates":[[[[46.4,41.9],[46.7,41.8],[47.4,41.2],[47.8,41.2],[48.0,41.4],[48.6,41.8],[49.1,41.3],[49.6,40.6],[50.1,40.5],[50.4,40.3],[49.6,40.2],[49.4,39.4],[49.2,39.0],[48.9,38.8],[48.9,38.3],[48.6,38.3],[48.0,38.8],[48.4,39.3],[48.1,39.6],[47.7,39.5],[46.5,38.8],[46.5,39.5],[46.0,39.6],[45.6,39.9],[45.9,40.2],[45.4,40.6],[45.6,40.8],[45.2,41.0],[45.0,41.2],[45.2,41.4],[46.0,41.1],[46.5,41.1],[46.6,41.2],[46.1,41.7],[46.4,41.9]]],[[[46.1,38.7],[45.5,38.9],[45.0,39.3],[44.8,39.7],[45.0,39.7],[45.3,39.5],[45.7,39.5],[45.7,39.3],[46.1,38.7]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"GE","NAME":"Georgia"},"geometry":{"type":"Polygon","coordinates":[[[40.0,43.4],[40.1,43.6],[40.9,43.4],[42.4,43.2],[43.8,42.7],[43.9,42.6],[44.5,42.7],[45.5,42.5],[45.8,42.1],[46.4,41.9],[46.1,41.7],[46.6,41.2],[46.5,41.1],[46.0,41.1],[45.2,41.4],[45.0,41.2],[43.6,41.1],[42.6,41.6],[41.6,41.5],[41.7,42.0],[41.5,42.6],[40.9,43.0],[40.3,43.1],[40.0,43.4]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"PH","NAME":"Philippines"},"geometry":{"type":"MultiPolygon","coordinates":[[[[120.8,12.7],[120.3,13.5],[121.2,13.4],[121.5,13.1],[121.3,12.2],[120.8,12.7]]],[[[122.6,10.0],[122.8,10.3],[122.9,10.9],[123.5,10.9],[123.3,10.3],[124.1,11.2],[124.0,10.3],[123.6,10.0],[123.3,9.3],[123.0,9.0],[122.4,9.7],[122.6,10.0]]],[[[126.4,8.4],[126.5,7.8],[126.5,7.2],[126.2,6.3],[125.8,7.3],[125.4,6.8],[125.7,6.0],[125.4,5.6],[124.2,6.2],[123.9,6.9],[124.2,7.4],[123.6,7.8],[123.3,7.4],[122.8,7.5],[122.1,6.9],[121.9,7.2],[122.3,8.0],[122.9,8.3],[123.5,8.7],[123.8,8.2],[124.6,8.5],[124.8,9.0],[125.5,9.0],[125.4,9.8],[126.2,9.3],[126.3,8.8],[126.4,8.4]]],[[[118.5,9.3],[117.2,8.4],[117.7,9.1],[118.4,9.7],[119.0,10.4],[119.5,11.4],[119.7,10.6],[119.0,10.0],[118.5,9.3]]],[[[122.3,18.2],[122.2,17.8],[122.5,17.1],[122.3,16.3],[121.7,15.9],[121.5,15.1],[121.7,14.3],[122.3,14.2],[122.7,14.3],[124.0,13.8],[123.9,13.2],[124.2,13.0],[124.1,12.5],[123.3,13.0],[122.9,13.6],[122.7,13.2],[122.0,13.8],[121.1,13.6],[120.6,13.9],[120.7,14.3],[121.0,14.5],[120.7,14.8],[120.6,14.4],[120.1,15.0],[119.9,15.4],[119.9,16.4],[120.3,16.0],[120.4,17.6],[120.7,18.5],[121.3,18.5],[121.9,18.2],[122.2,18.5],[122.3,18.2]]],[[[122.0,11.4],[121.9,11.9],[122.5,11.6],[123.1,11.6],[123.1,11.2],[122.6,10.7],[122.0,10.4],[122.0,10.9],[122.0,11.4]]],[[[125.5,12.2],[125.8,11.0],[125.0,11.3],[125.0,11.0],[125.3,10.4],[124.8,10.1],[124.8,10.8],[124.5,10.9],[124.3,11.5],[124.9,11.4],[124.9,11.8],[124.3,12.6],[125.2,12.5],[125.5,12.2]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"MY","NAME":"Malaysia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[100.1,6.5],[100.3,6.6],[101.1,6.2],[101.2,5.7],[101.8,5.8],[102.1,6.2],[102.4,6.1],[103.0,5.5],[103.4,4.9],[103.4,4.2],[103.3,3.7],[103.4,3.4],[103.5,2.8],[103.9,2.5],[104.2,1.6],[104.2,1.3],[103.5,1.2],[102.6,2.0],[101.4,2.8],[101.3,3.3],[100.7,3.9],[100.6,4.8],[100.2,5.3],[100.3,6.0],[100.1,6.5]]],[[[117.9,4.1],[117.0,4.3],[115.9,4.3],[115.5,3.2],[115.1,2.8],[114.6,1.4],[113.8,1.2],[112.9,1.5],[112.4,1.4],[111.8,0.9],[111.2,1.0],[110.5,0.8],[109.8,1.3],[109.7,2.0],[110.4,1.7],[111.2,1.9],[111.4,2.7],[111.8,2.9],[113.0,3.1],[113.7,3.9],[114.2,4.5],[114.7,4.0],[114.9,4.3],[115.3,4.3],[115.4,5.0],[115.5,5.4],[116.2,6.1],[116.7,6.9],[117.1,6.9],[117.6,6.4],[117.7,6.0],[118.3,5.7],[119.2,5.4],[119.1,5.0],[118.4,5.0],[118.6,4.5],[117.9,4.1]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"BN","NAME":"Brunei"},"geometry":{"type":"Polygon","coordinates":[[[115.5,5.4],[115.4,5.0],[115.3,4.3],[114.9,4.3],[114.7,4.0],[114.2,4.5],[114.6,4.9],[115.5,5.4]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"SI","NAME":"Slovenia"},"geometry":{"type":"Polygon","coordinates":[[[13.8,46.5],[14.6,46.4],[15.1,46.7],[16.0,46.7],[16.2,46.9],[16.4,46.8],[16.6,46.5],[15.8,46.2],[15.7,45.8],[15.3,45.7],[15.3,45.5],[14.9,45.5],[14.6,45.6],[14.4,45.5],[13.7,45.5],[13.9,45.6],[13.7,46.0],[13.8,46.5]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"FI","NAME":"Finland"},"geometry":{"type":"Polygon","coordinates":[[[28.6,69.1],[28.4,68.4],[30.0,67.7],[29.1,66.9],[30.2,65.8],[29.5,64.9],[30.4,64.2],[30.0,63.6],[31.5,62.9],[31.1,62.4],[30.2,61.8],[28.1,60.5],[28.1,60.5],[28.1,60.5],[26.3,60.4],[24.5,60.1],[22.9,59.8],[22.3,60.4],[21.3,60.7],[21.5,61.7],[21.1,62.6],[21.5,63.2],[22.4,63.8],[24.7,64.9],[25.4,65.1],[25.3,65.5],[23.9,66.0],[23.6,66.4],[23.5,67.9],[22.0,68.6],[20.6,69.1],[21.2,69.4],[22.4,68.8],[23.7,68.9],[24.7,68.6],[25.7,69.1],[26.2,69.8],[27.7,70.2],[29.0,69.8],[28.6,69.1]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"SK","NAME":"Slovakia"},"geometry":{"type":"Polygon","coordinates":[[[22.6,49.1],[22.3,48.8],[22.1,48.4],[21.9,48.3],[20.8,48.6],[20.5,48.6],[20.2,48.3],[19.8,48.2],[19.7,48.3],[19.2,48.1],[18.8,48.1],[18.7,47.9],[17.9,47.8],[17.5,47.9],[17.0,48.1],[16.9,48.5],[17.0,48.6],[17.1,48.8],[17.5,48.8],[17.9,48.9],[17.9,49.0],[18.1,49.0],[18.2,49.3],[18.4,49.3],[18.6,49.5],[18.9,49.5],[18.9,49.4],[19.3,49.6],[19.8,49.2],[20.4,49.4],[20.9,49.3],[21.6,49.5],[22.6,49.1]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"CZ","NAME":"Czechia"},"geometry":{"type":"Polygon","coordinates":[[[15.0,51.1],[15.5,50.8],[16.2,50.7],[16.2,50.4],[16.7,50.2],[16.9,50.5],[17.6,50.4],[17.6,50.0],[18.4,50.0],[18.9,49.5],[18.6,49.5],[18.4,49.3],[18.2,49.3],[18.1,49.0],[17.9,49.0],[17.9,48.9],[17.5,48.8],[17.1,48.8],[17.0,48.6],[16.5,48.8],[16.0,48.7],[15.3,49.0],[14.9,49.0],[14.3,48.6],[13.6,48.9],[13.0,49.3],[12.5,49.5],[12.4,50.0],[12.2,50.3],[13.0,50.5],[13.3,50.7],[14.1,50.9],[14.3,51.1],[14.6,51.0],[15.0,51.1]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"ER","NAME":"Eritrea"},"geometry":{"type":"Polygon","coordinates":[[[36.4,14.4],[36.3,14.8],[36.8,16.3],[36.9,17.0],[37.2,17.3],[37.9,17.4],[38.4,18.0],[39.0,16.8],[39.3,15.9],[39.8,15.4],[41.2,14.5],[41.7,13.9],[42.3,13.3],[42.6,13.0],[43.1,12.7],[42.8,12.5],[42.4,12.5],[42.0,12.9],[41.6,13.5],[41.2,13.8],[40.9,14.1],[40.0,14.5],[39.3,14.5],[39.1,14.7],[38.5,14.5],[37.9,15.0],[37.6,14.2],[36.4,14.4]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"JP","NAME":"Japan"},"geometry":{"type":"MultiPolygon","coordinates":[[[[141.9,39.2],[141.0,38.2],[141.0,37.1],[140.6,36.3],[140.8,35.8],[140.3,35.1],[139.0,34.7],[137.2,34.6],[135.8,33.5],[135.1,33.8],[135.1,34.6],[133.3,34.4],[132.2,33.9],[131.0,33.9],[132.0,33.1],[131.3,31.5],[130.7,31.0],[130.2,31.4],[130.4,32.3],[129.8,32.6],[129.4,33.3],[130.4,33.6],[130.9,34.2],[131.9,34.7],[132.6,35.4],[134.6,35.7],[135.7,35.5],[136.7,37.3],[137.4,36.8],[138.9,37.8],[139.4,38.2],[140.1,39.4],[139.9,40.6],[140.3,41.2],[141.4,41.4],[141.9,40.0],[141.9,39.2]]],[[[144.6,44.0],[145.3,44.4],[145.5,43.3],[144.1,43.0],[143.2,42.0],[141.6,42.7],[141.1,41.6],[140.0,41.6],[139.8,42.6],[140.3,43.3],[141.4,43.4],[141.7,44.8],[142.0,45.6],[143.1,44.5],[143.9,44.2],[144.6,44.0]]],[[[132.4,33.5],[132.9,34.1],[133.5,33.9],[133.9,34.4],[134.6,34.1],[134.8,33.8],[134.2,33.2],[133.8,33.5],[133.3,33.3],[133.0,32.7],[132.4,33.0],[132.4,33.5]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"PY","NAME":"Paraguay"},"geometry":{"type":"Polygon","coordinates":[[[-58.2,-20.2],[-57.9,-20.7],[-57.9,-22.1],[-56.9,-22.3],[-56.5,-22.1],[-55.8,-22.4],[-55.6,-22.7],[-55.5,-23.6],[-55.4,-24.0],[-55.0,-24.0],[-54.7,-23.8],[-54.3,-24.0],[-54.3,-24.6],[-54.4,-25.2],[-54.6,-25.7],[-54.8,-26.6],[-55.7,-27.4],[-56.5,-27.5],[-57.6,-27.4],[-58.6,-27.1],[-57.6,-25.6],[-57.8,-25.2],[-58.8,-24.8],[-60.0,-24.0],[-60.8,-23.9],[-62.7,-22.2],[-62.3,-21.1],[-62.3,-20.5],[-61.8,-19.6],[-60.0,-19.3],[-59.1,-19.4],[-58.2,-19.9],[-58.2,-20.2]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"YE","NAME":"Yemen"},"geometry":{"type":"Polygon","coordinates":[[[52.0,19.0],[52.8,17.3],[53.1,16.7],[52.4,16.4],[52.2,15.9],[52.2,15.6],[51.2,15.2],[49.6,14.7],[48.7,14.0],[48.2,13.9],[47.9,14.0],[47.4,13.6],[46.7,13.4],[45.9,13.3],[45.6,13.3],[45.4,13.0],[45.1,13.0],[45.0,12.7],[44.5,12.7],[44.2,12.6],[43.5,12.6],[43.2,13.2],[43.3,13.8],[43.1,14.1],[42.9,14.8],[42.6,15.2],[42.8,15.3],[42.7,15.7],[42.8,15.9],[42.8,16.3],[43.2,16.7],[43.1,17.1],[43.4,17.6],[43.8,17.3],[44.1,17.4],[45.2,17.4],[45.4,17.3],[46.4,17.2],[46.7,17.3],[47.0,16.9],[47.5,17.1],[48.2,18.2],[49.1,18.6],[52.0,19.0]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"SA","NAME":"Saudi Arabia"},"geometry":{"type":"Polygon","coordinates":[[[35.0,29.4],[36.1,29.2],[36.5,29.5],[36.7,29.9],[37.5,30.0],[37.7,30.3],[38.0,30.5],[37.0,31.5],[39.0,32.0],[39.2,32.2],[40.4,31.9],[41.9,31.2],[44.7,29.2],[46.6,29.1],[47.5,29.0],[47.7,28.5],[48.4,28.6],[48.8,27.7],[49.3,27.5],[49.5,27.1],[50.2,26.7],[50.2,26.3],[50.1,25.9],[50.2,25.6],[50.5,25.3],[50.7,25.0],[50.8,24.8],[51.1,24.6],[51.4,24.6],[51.6,24.2],[51.6,24.0],[52.0,23.0],[55.0,22.5],[55.2,22.7],[55.7,22.0],[55.0,20.0],[52.0,19.0],[49.1,18.6],[48.2,18.2],[47.5,17.1],[47.0,16.9],[46.7,17.3],[46.4,17.2],[45.4,17.3],[45.2,17.4],[44.1,17.4],[43.8,17.3],[43.4,17.6],[43.1,17.1],[43.2,16.7],[42.8,16.3],[42.6,16.8],[42.3,17.1],[42.3,17.5],[41.8,17.8],[41.2,18.7],[40.9,19.5],[40.2,20.2],[39.8,20.3],[39.1,21.3],[39.0,22.0],[39.1,22.6],[38.5,23.7],[38.0,24.1],[37.5,24.3],[37.2,24.9],[37.2,25.1],[36.9,25.6],[36.6,25.8],[36.2,26.6],[35.6,27.4],[35.1,28.1],[34.6,28.1],[34.8,28.6],[34.8,29.0],[35.0,29.4]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"AQ","NAME":"Antarctica"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-48.7,-78.0],[-48.2,-78.0],[-46.7,-77.8],[-45.2,-78.0],[-43.9,-78.5],[-43.5,-79.1],[-43.4,-79.5],[-43.3,-80.0],[-44.9,-80.3],[-46.5,-80.6],[-48.4,-80.8],[-50.5,-81.0],[-52.9,-81.0],[-54.2,-80.6],[-54.0,-80.2],[-51.9,-79.9],[-51.0,-79.6],[-50.4,-79.2],[-49.9,-78.8],[-49.3,-78.5],[-48.7,-78.0],[-48.7,-78.0]]],[[[-66.3,-80.3],[-64.0,-80.3],[-61.9,-80.4],[-61.1,-80.0],[-60.6,-79.6],[-59.6,-80.0],[-59.9,-80.5],[-60.2,-81.0],[-62.3,-80.9],[-64.5,-80.9],[-65.7,-80.6],[-65.7,-80.5],[-66.3,-80.3]]],[[[-73.9,-71.3],[-73.9,-71.3],[-73.2,-71.2],[-72.1,-71.2],[-71.8,-70.7],[-71.7,-70.3],[-71.7,-69.5],[-71.2,-69.0],[-70.3,-68.9],[-69.7,-69.3],[-69.5,-69.6],[-69.1,-70.1],[-68.7,-70.5],[-68.5,-71.0],[-68.3,-71.4],[-68.5,-71.8],[-68.8,-72.2],[-70.0,-72.3],[-71.1,-72.5],[-72.4,-72.5],[-71.9,-72.1],[-73.1,-72.2],[-74.2,-72.4],[-75.0,-72.1],[-75.0,-71.7],[-73.9,-71.3]]],[[[-102.3,-71.9],[-102.3,-71.9],[-101.7,-71.7],[-100.4,-71.9],[-99.0,-71.9],[-97.9,-72.1],[-96.8,-72.0],[-96.2,-72.5],[-97.0,-72.4],[-98.2,-72.5],[-99.4,-72.4],[-100.8,-72.5],[-101.8,-72.3],[-102.3,-71.9]]],[[[-122.6,-73.7],[-122.6,-73.7],[-122.4,-73.3],[-121.2,-73.5],[-119.9,-73.7],[-118.7,-73.5],[-119.3,-73.8],[-120.2,-74.1],[-121.6,-74.0],[-122.6,-73.7]]],[[[-127.3,-73.5],[-127.3,-73.5],[-126.6,-73.2],[-125.6,-73.5],[-124.0,-73.9],[-124.6,-73.8],[-125.9,-73.7],[-127.3,-73.5]]],[[[-163.7,-78.6],[-163.7,-78.6],[-163.1,-78.2],[-161.2,-78.4],[-160.2,-78.7],[-159.5,-79.0],[-159.2,-79.5],[-161.1,-79.6],[-162.4,-79.3],[-163.0,-78.9],[-163.1,-78.9],[-163.7,-78.6]]],[[[180,-84.7],[180,-90],[-180,-90],[-180,-84.7],[-179.9,-84.7],[-179.1,-84.1],[-177.3,-84.5],[-177.1,-84.4],[-176.1,-84.1],[-175.9,-84.1],[-175.8,-84.1],[-174.4,-84.5],[-173.1,-84.1],[-172.9,-84.1],[-170.0,-83.9],[-169.0,-84.1],[-168.5,-84.2],[-167.0,-84.6],[-164.2,-84.8],[-161.9,-85.1],[-158.1,-85.4],[-155.2,-85.1],[-150.9,-85.3],[-148.5,-85.6],[-145.9,-85.3],[-143.1,-85.0],[-142.9,-84.6],[-146.8,-84.5],[-150.1,-84.3],[-150.9,-83.9],[-153.6,-83.7],[-153.4,-83.2],[-153.0,-82.8],[-152.7,-82.5],[-152.9,-82.0],[-154.5,-81.8],[-155.3,-81.4],[-156.8,-81.1],[-154.4,-81.2],[-152.1,-81.0],[-150.6,-81.3],[-148.9,-81.0],[-147.2,-80.7],[-146.4,-80.3],[-146.8,-79.9],[-148.1,-79.7],[-149.5,-79.4],[-151.6,-79.3],[-153.4,-79.2],[-155.3,-79.1],[-156.0,-78.7],[-157.3,-78.4],[-158.1,-78.0],[-158.4,-76.9],[-157.9,-77.0],[-157.0,-77.3],[-155.3,-77.2],[-153.7,-77.1],[-152.9,-77.5],[-151.3,-77.4],[-150.0,-77.2],[-148.7,-76.9],[-147.6,-76.6],[-146.1,-76.5],[-146.1,-76.1],[-146.5,-75.7],[-146.2,-75.4],[-144.9,-75.2],[-144.3,-75.5],[-142.8,-75.3],[-141.6,-75.1],[-140.2,-75.1],[-138.9,-75.0],[-137.5,-74.7],[-136.4,-74.5],[-135.2,-74.3],[-134.4,-74.4],[-133.7,-74.4],[-132.3,-74.3],[-130.9,-74.5],[-129.6,-74.5],[-128.2,-74.3],[-126.9,-74.4],[-125.4,-74.5],[-124.0,-74.5],[-122.6,-74.5],[-121.1,-74.5],[-119.7,-74.5],[-118.7,-74.2],[-117.5,-74.0],[-116.2,-74.2],[-115.0,-74.1],[-113.9,-73.7],[-113.3,-74.0],[-112.9,-74.4],[-112.3,-74.7],[-111.3,-74.4],[-110.1,-74.8],[-108.7,-74.9],[-107.6,-75.2],[-106.1,-75.1],[-104.9,-74.9],[-103.4,-75.0],[-102.0,-75.1],[-100.6,-75.3],[-100.1,-74.9],[-100.8,-74.5],[-101.3,-74.2],[-102.5,-74.1],[-103.1,-73.7],[-103.3,-73.4],[-103.7,-72.6],[-102.9,-72.8],[-101.6,-72.8],[-100.3,-72.8],[-99.1,-72.9],[-98.1,-73.2],[-97.7,-73.6],[-96.3,-73.6],[-95.0,-73.5],[-93.7,-73.3],[-92.4,-73.2],[-91.4,-73.4],[-90.1,-73.3],[-89.2,-72.6],[-88.4,-73.0],[-87.3,-73.2],[-86.0,-73.1],[-85.2,-73.5],[-83.9,-73.5],[-82.7,-73.6],[-81.5,-73.9],[-80.7,-73.5],[-80.3,-73.1],[-79.3,-73.5],[-77.9,-73.4],[-76.9,-73.6],[-76.2,-74.0],[-74.9,-73.9],[-73.9,-73.7],[-72.8,-73.4],[-71.6,-73.3],[-70.2,-73.1],[-68.9,-73.0],[-68.0,-72.8],[-67.4,-72.5],[-67.1,-72.0],[-67.3,-71.6],[-67.6,-71.2],[-67.9,-70.9],[-68.2,-70.5],[-68.5,-70.1],[-68.5,-69.7],[-68.4,-69.3],[-68.0,-69.0],[-67.6,-68.5],[-67.4,-68.1],[-67.6,-67.7],[-67.7,-67.3],[-67.3,-66.9],[-66.7,-66.6],[-66.1,-66.2],[-65.4,-65.9],[-64.6,-65.6],[-64.2,-65.2],[-63.6,-64.9],[-63.0,-64.6],[-62.0,-64.6],[-61.4,-64.3],[-60.7,-64.1],[-59.9,-64.0],[-59.2,-63.7],[-58.6,-63.4],[-57.8,-63.3],[-57.2,-63.5],[-57.6,-63.9],[-58.6,-64.2],[-59.0,-64.4],[-59.8,-64.2],[-60.6,-64.3],[-61.3,-64.5],[-62.0,-64.8],[-62.5,-65.1],[-62.6,-65.5],[-62.6,-65.9],[-62.1,-66.2],[-62.8,-66.4],[-63.7,-66.5],[-64.3,-66.8],[-64.9,-67.2],[-65.5,-67.6],[-65.7,-68.0],[-65.3,-68.4],[-64.8,-68.7],[-64.0,-68.9],[-63.2,-69.2],[-62.8,-69.6],[-62.6,-70.0],[-62.3,-70.4],[-61.8,-70.7],[-61.5,-71.1],[-61.4,-72.0],[-61.1,-72.4],[-61.0,-72.8],[-60.7,-73.2],[-60.8,-73.7],[-61.4,-74.1],[-62.0,-74.4],[-63.3,-74.6],[-63.7,-74.9],[-64.4,-75.3],[-65.9,-75.6],[-67.2,-75.8],[-68.4,-76.0],[-69.8,-76.2],[-70.6,-76.6],[-72.2,-76.7],[-74.0,-76.6],[-75.6,-76.7],[-77.2,-76.7],[-76.9,-77.1],[-75.4,-77.3],[-74.3,-77.6],[-73.7,-77.9],[-74.8,-78.2],[-76.5,-78.1],[-77.9,-78.4],[-78.0,-78.8],[-78.0,-79.2],[-76.8,-79.5],[-76.6,-79.9],[-75.4,-80.3],[-73.2,-80.4],[-71.4,-80.7],[-70.0,-81.0],[-68.2,-81.3],[-65.7,-81.5],[-63.3,-81.7],[-61.6,-82.0],[-59.7,-82.4],[-58.7,-82.8],[-58.2,-83.2],[-57.0,-82.9],[-55.4,-82.6],[-53.6,-82.3],[-51.5,-82.0],[-49.8,-81.7],[-47.3,-81.7],[-44.8,-81.8],[-42.8,-82.1],[-42.2,-81.7],[-40.8,-81.4],[-38.2,-81.3],[-36.3,-81.1],[-34.4,-80.9],[-32.3,-80.8],[-30.1,-80.6],[-28.5,-80.3],[-29.3,-80.0],[-29.7,-79.6],[-29.7,-79.3],[-31.6,-79.3],[-33.7,-79.5],[-35.6,-79.5],[-35.9,-79.1],[-35.8,-78.3],[-35.3,-78.1],[-33.9,-77.9],[-32.2,-77.7],[-31.0,-77.4],[-29.8,-77.1],[-28.9,-76.7],[-27.5,-76.5],[-26.2,-76.4],[-25.5,-76.3],[-23.9,-76.2],[-22.5,-76.1],[-21.2,-75.9],[-20.0,-75.7],[-18.9,-75.4],[-17.5,-75.1],[-16.6,-74.8],[-15.7,-74.5],[-15.4,-74.1],[-16.5,-73.9],[-16.1,-73.5],[-15.4,-73.1],[-14.4,-73.0],[-13.3,-72.7],[-12.3,-72.4],[-11.5,-72.0],[-11.0,-71.5],[-10.3,-71.3],[-9.1,-71.3],[-8.6,-71.7],[-7.4,-71.7],[-7.4,-71.3],[-6.9,-70.9],[-5.8,-71.0],[-5.5,-71.4],[-4.3,-71.5],[-3.0,-71.3],[-1.8,-71.2],[-0.7,-71.2],[-0.2,-71.6],[0.9,-71.3],[1.9,-71.1],[3.0,-71.0],[4.1,-70.9],[5.2,-70.6],[6.3,-70.5],[7.1,-70.2],[7.7,-69.9],[8.5,-70.1],[9.5,-70.0],[10.2,-70.5],[10.8,-70.8],[12.0,-70.6],[12.4,-70.2],[13.4,-70.0],[14.7,-70.0],[15.1,-70.4],[15.9,-70.0],[17.0,-69.9],[18.2,-69.9],[19.3,-69.9],[20.4,-70.0],[21.5,-70.1],[21.9,-70.4],[22.6,-70.7],[23.7,-70.5],[24.8,-70.5],[26.0,-70.5],[27.1,-70.5],[28.1,-70.3],[29.2,-70.2],[30.0,-69.9],[31.0,-69.8],[32.0,-69.7],[32.8,-69.4],[33.3,-68.8],[33.9,-68.5],[34.9,-68.7],[35.3,-69.0],[36.2,-69.2],[37.2,-69.2],[37.9,-69.5],[38.6,-69.8],[39.7,-69.5],[40.0,-69.1],[40.9,-68.9],[42.0,-68.6],[42.9,-68.5],[44.1,-68.3],[44.9,-68.1],[45.7,-67.8],[46.5,-67.6],[47.4,-67.7],[48.3,-67.4],[49.0,-67.1],[49.9,-67.1],[50.8,-66.9],[50.9,-66.5],[51.8,-66.2],[52.6,-66.1],[53.6,-65.9],[54.5,-65.8],[55.4,-65.9],[56.4,-66.0],[57.2,-66.2],[57.3,-66.7],[58.1,-67.0],[58.7,-67.3],[59.9,-67.4],[60.6,-67.7],[61.4,-68.0],[62.4,-68.0],[63.2,-67.8],[64.1,-67.4],[65.0,-67.6],[66.0,-67.7],[66.9,-67.9],[67.9,-67.9],[68.9,-67.9],[69.7,-69.0],[69.7,-69.2],[69.6,-69.7],[68.6,-69.9],[67.8,-70.3],[67.9,-70.7],[69.1,-70.7],[68.9,-71.1],[68.4,-71.4],[67.9,-71.9],[68.7,-72.2],[69.9,-72.3],[71.0,-72.1],[71.6,-71.7],[71.9,-71.3],[72.5,-71.0],[73.1,-70.7],[73.3,-70.4],[73.9,-69.9],[74.5,-69.8],[75.6,-69.7],[76.6,-69.6],[77.6,-69.5],[78.1,-69.1],[78.4,-68.7],[79.1,-68.3],[80.1,-68.1],[80.9,-67.9],[81.5,-67.5],[82.1,-67.4],[82.8,-67.2],[83.8,-67.3],[84.7,-67.2],[85.7,-67.1],[86.8,-67.2],[87.5,-66.9],[88.0,-66.2],[88.4,-66.5],[88.8,-67.0],[89.7,-67.2],[90.6,-67.2],[91.6,-67.1],[92.6,-67.2],[93.5,-67.2],[94.2,-67.1],[95.0,-67.2],[95.8,-67.4],[96.7,-67.2],[97.8,-67.2],[98.7,-67.1],[99.7,-67.2],[100.4,-66.9],[100.9,-66.6],[101.6,-66.3],[102.8,-65.6],[103.5,-65.7],[104.2,-66.0],[104.9,-66.3],[106.2,-66.9],[107.2,-67.0],[108.1,-67.0],[109.2,-66.8],[110.2,-66.7],[111.1,-66.4],[111.7,-66.1],[112.9,-66.1],[113.6,-65.9],[114.4,-66.1],[114.9,-66.4],[115.6,-66.7],[116.7,-66.7],[117.4,-66.9],[118.6,-67.2],[119.8,-67.3],[120.9,-67.2],[121.7,-66.9],[122.3,-66.6],[123.2,-66.5],[124.1,-66.6],[125.2,-66.7],[126.1,-66.6],[127.0,-66.6],[127.9,-66.7],[128.8,-66.8],[129.7,-66.6],[130.8,-66.4],[131.8,-66.4],[132.9,-66.4],[133.9,-66.3],[134.8,-66.2],[135.0,-65.7],[135.1,-65.3],[135.7,-65.6],[135.9,-66.0],[136.2,-66.4],[136.6,-66.8],[137.5,-67.0],[138.6,-66.9],[139.9,-66.9],[140.8,-66.8],[142.1,-66.8],[143.1,-66.8],[144.4,-66.8],[145.5,-66.9],[146.2,-67.2],[146.0,-67.6],[146.6,-67.9],[147.7,-68.1],[148.8,-68.4],[150.1,-68.6],[151.5,-68.7],[152.5,-68.9],[153.6,-68.9],[154.3,-68.6],[155.2,-68.8],[155.9,-69.1],[156.8,-69.4],[158.0,-69.5],[159.2,-69.6],[159.7,-70.0],[160.8,-70.2],[161.6,-70.6],[162.7,-70.7],[163.8,-70.7],[164.9,-70.8],[166.1,-70.8],[167.3,-70.8],[168.4,-71.0],[169.5,-71.2],[170.5,-71.4],[171.2,-71.7],[171.1,-72.1],[170.6,-72.4],[170.1,-72.9],[169.8,-73.2],[169.3,-73.7],[168.0,-73.8],[167.4,-74.2],[166.1,-74.4],[165.6,-74.8],[165.0,-75.1],[164.2,-75.5],[163.8,-75.9],[163.6,-76.2],[163.5,-76.7],[163.5,-77.1],[164.1,-77.5],[164.3,-77.8],[164.7,-78.2],[166.6,-78.3],[167.0,-78.8],[165.2,-78.9],[163.7,-79.1],[161.8,-79.2],[160.9,-79.7],[160.7,-80.2],[160.3,-80.6],[159.8,-80.9],[161.1,-81.3],[161.6,-81.7],[162.5,-82.1],[163.7,-82.4],[165.1,-82.7],[166.6,-83.0],[168.9,-83.3],[169.4,-83.8],[172.3,-84.0],[172.5,-84.1],[173.2,-84.4],[176.0,-84.2],[178.3,-84.5],[180,-84.7]]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"-99","NAME":"N. Cyprus"},"geometry":{"type":"Polygon","coordinates":[[[32.7,35.1],[32.8,35.1],[32.9,35.4],[33.7,35.4],[34.6,35.7],[33.9,35.2],[34.0,35.1],[33.9,35.1],[33.7,35.0],[33.5,35.0],[33.5,35.0],[33.5,35.1],[33.4,35.2],[33.2,35.2],[32.9,35.1],[32.7,35.1]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"CY","NAME":"Cyprus"},"geometry":{"type":"Polygon","coordinates":[[[32.7,35.1],[32.9,35.1],[33.2,35.2],[33.4,35.2],[33.5,35.1],[33.5,35.0],[33.5,35.0],[33.7,35.0],[33.9,35.1],[34.0,35.1],[34.0,35.0],[33.0,34.6],[32.5,34.7],[32.3,35.1],[32.7,35.1]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"MA","NAME":"Morocco"},"geometry":{"type":"Polygon","coordinates":[[[-2.2,35.2],[-1.8,34.5],[-1.7,33.9],[-1.4,32.9],[-1.1,32.7],[-1.3,32.3],[-2.6,32.1],[-3.1,31.7],[-3.6,31.6],[-3.7,30.9],[-4.9,30.5],[-5.2,30.0],[-6.1,29.7],[-7.1,29.6],[-8.7,28.8],[-8.7,27.7],[-8.8,27.7],[-8.8,27.1],[-9.4,27.1],[-9.7,26.9],[-10.2,26.9],[-10.6,27.0],[-11.4,26.9],[-11.7,26.1],[-12.0,26.0],[-12.5,24.8],[-13.9,23.7],[-14.2,22.3],[-14.6,21.9],[-14.8,21.5],[-17.0,21.4],[-17.0,21.4],[-17.0,21.9],[-16.6,22.2],[-16.3,22.7],[-16.3,23.0],[-16.0,23.7],[-15.4,24.4],[-15.1,24.5],[-14.8,25.1],[-14.8,25.6],[-14.4,26.3],[-13.8,26.6],[-13.1,27.6],[-13.1,27.7],[-12.6,28.0],[-11.7,28.1],[-10.9,28.8],[-10.4,29.1],[-9.6,29.9],[-9.8,31.2],[-9.4,32.0],[-9.3,32.6],[-8.7,33.2],[-7.7,33.7],[-6.9,34.1],[-6.2,35.1],[-5.9,35.8],[-5.2,35.8],[-4.6,35.3],[-3.6,35.4],[-2.6,35.2],[-2.2,35.2]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"EG","NAME":"Egypt"},"geometry":{"type":"Polygon","coordinates":[[[36.9,22],[32.9,22],[29.0,22],[25,22],[25,25.7],[25,29.2],[24.7,30.0],[25.0,30.7],[24.8,31.1],[25.2,31.6],[26.5,31.6],[27.5,31.3],[28.5,31.0],[28.9,30.9],[29.7,31.2],[30.1,31.5],[31.0,31.6],[31.7,31.4],[32.0,30.9],[32.2,31.3],[33.0,31.0],[33.8,31.0],[34.3,31.2],[34.3,31.2],[34.8,29.8],[34.9,29.5],[34.6,29.1],[34.4,28.3],[34.2,27.8],[33.9,27.6],[33.6,28.0],[33.1,28.4],[32.4,29.9],[32.3,29.8],[32.7,28.7],[33.3,27.7],[34.1,26.1],[34.5,25.6],[34.8,25.0],[35.7,23.9],[35.5,23.8],[35.5,23.1],[36.7,22.2],[36.9,22]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"LY","NAME":"Libya"},"geometry":{"type":"Polygon","coordinates":[[[25,22],[25,20.0],[23.9,20],[23.8,19.6],[19.8,21.5],[15.9,23.4],[14.9,22.9],[14.1,22.5],[13.6,23.0],[12.0,23.5],[11.6,24.1],[10.8,24.6],[10.3,24.4],[9.9,24.9],[9.9,25.4],[9.3,26.1],[9.7,26.5],[9.6,27.1],[9.8,27.7],[9.7,28.1],[9.9,29.0],[9.8,29.4],[9.5,30.3],[10.0,30.5],[10.1,31.0],[10.0,31.4],[10.6,31.8],[10.9,32.1],[11.4,32.4],[11.5,33.1],[12.7,32.8],[13.1,32.9],[13.9,32.7],[15.2,32.3],[15.7,31.4],[16.6,31.2],[18.0,30.8],[19.1,30.3],[19.6,30.5],[20.1,31.0],[19.8,31.8],[20.1,32.2],[20.9,32.7],[21.5,32.8],[22.9,32.6],[23.2,32.2],[23.6,32.2],[23.9,32.0],[24.9,31.9],[25.2,31.6],[24.8,31.1],[25.0,30.7],[24.7,30.0],[25,29.2],[25,25.7],[25,22]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"ET","NAME":"Ethiopia"},"geometry":{"type":"Polygon","coordinates":[[[47.8,8.0],[45.0,5.0],[43.7,5.0],[42.8,4.3],[42.1,4.2],[41.9,3.9],[41.2,3.9],[40.8,4.3],[39.9,3.8],[39.6,3.4],[38.9,3.5],[38.7,3.6],[38.4,3.6],[38.1,3.6],[36.9,4.4],[36.2,4.4],[35.8,4.8],[35.8,5.3],[35.3,5.5],[34.7,6.6],[34.3,6.8],[34.1,7.2],[33.6,7.7],[33.0,7.8],[33.3,8.4],[33.8,8.4],[34.0,8.7],[34.0,9.6],[34.3,10.6],[34.7,10.9],[34.8,11.3],[35.3,12.1],[35.9,12.6],[36.3,13.6],[36.4,14.4],[37.6,14.2],[37.9,15.0],[38.5,14.5],[39.1,14.7],[39.3,14.5],[40.0,14.5],[40.9,14.1],[41.2,13.8],[41.6,13.5],[42.0,12.9],[42.4,12.5],[42,12.1],[41.7,11.6],[41.7,11.4],[41.8,11.1],[42.3,11.0],[42.6,11.1],[42.8,10.9],[42.6,10.6],[42.9,10.0],[43.3,9.5],[43.7,9.2],[46.9,8.0],[47.8,8.0]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"DJ","NAME":"Djibouti"},"geometry":{"type":"Polygon","coordinates":[[[42.4,12.5],[42.8,12.5],[43.1,12.7],[43.3,12.4],[43.3,12.0],[42.7,11.7],[43.1,11.5],[42.8,10.9],[42.6,11.1],[42.3,11.0],[41.8,11.1],[41.7,11.4],[41.7,11.6],[42,12.1],[42.4,12.5]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"-99","NAME":"Somaliland"},"geometry":{"type":"Polygon","coordinates":[[[48.9,11.4],[48.9,11.4],[48.9,11.4],[48.9,11.0],[48.9,10.0],[48.9,9.5],[48.5,8.8],[47.8,8.0],[46.9,8.0],[43.7,9.2],[43.3,9.5],[42.9,10.0],[42.6,10.6],[42.8,10.9],[43.1,11.5],[43.5,11.3],[43.7,10.9],[44.1,10.4],[44.6,10.4],[45.6,10.7],[46.6,10.8],[47.5,11.1],[48.0,11.2],[48.4,11.4],[48.9,11.4],[48.9,11.4]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"UG","NAME":"Uganda"},"geometry":{"type":"Polygon","coordinates":[[[33.9,-0.9],[31.9,-1.0],[30.8,-1.0],[30.4,-1.1],[29.8,-1.4],[29.6,-1.3],[29.6,-0.6],[29.8,-0.2],[29.9,0.6],[30.1,1.1],[30.5,1.6],[30.9,1.8],[31.2,2.2],[30.8,2.3],[30.8,3.5],[30.8,3.5],[31.2,3.8],[31.9,3.6],[32.7,3.8],[33.4,3.8],[34.0,4.2],[34.5,3.6],[34.6,3.1],[35.0,1.9],[34.7,1.2],[34.2,0.5],[33.9,0.1],[33.9,-0.9]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"RW","NAME":"Rwanda"},"geometry":{"type":"Polygon","coordinates":[[[30.4,-1.1],[30.8,-1.7],[30.8,-2.3],[30.5,-2.4],[30.5,-2.4],[29.9,-2.3],[29.6,-2.9],[29.0,-2.8],[29.1,-2.3],[29.3,-2.2],[29.3,-1.6],[29.6,-1.3],[29.8,-1.4],[30.4,-1.1]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"BA","NAME":"Bosnia and Herz."},"geometry":{"type":"Polygon","coordinates":[[[18.6,42.6],[17.7,43.0],[17.3,43.4],[16.9,43.7],[16.5,44.0],[16.2,44.4],[15.8,44.8],[16.0,45.2],[16.3,45.0],[16.5,45.2],[17.0,45.2],[17.9,45.1],[18.6,45.1],[19.0,44.9],[19.0,44.9],[19.4,44.9],[19.1,44.4],[19.6,44.0],[19.5,43.6],[19.2,43.5],[19.0,43.4],[18.7,43.2],[18.6,42.6]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"MK","NAME":"North Macedonia"},"geometry":{"type":"Polygon","coordinates":[[[22.4,42.3],[22.9,42.0],[23.0,41.3],[22.8,41.3],[22.6,41.1],[22.1,41.1],[21.7,40.9],[21.0,40.8],[20.6,41.1],[20.5,41.5],[20.6,41.9],[20.6,41.9],[20.7,41.8],[20.8,42.1],[21.4,42.2],[21.6,42.2],[21.9,42.3],[22.4,42.3]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"RS","NAME":"Serbia"},"geometry":{"type":"Polygon","coordinates":[[[18.8,45.9],[18.8,45.9],[19.6,46.2],[20.2,46.1],[20.8,45.7],[20.9,45.4],[21.5,45.2],[21.6,44.8],[22.1,44.5],[22.5,44.7],[22.7,44.6],[22.5,44.4],[22.7,44.2],[22.4,44.0],[22.5,43.6],[23.0,43.2],[22.6,42.9],[22.4,42.6],[22.5,42.5],[22.4,42.3],[21.9,42.3],[21.6,42.2],[21.5,42.3],[21.7,42.4],[21.8,42.7],[21.6,42.7],[21.4,42.9],[21.3,42.9],[21.1,43.1],[21.0,43.1],[20.8,43.3],[20.6,43.2],[20.5,42.9],[20.3,42.8],[20.3,42.9],[20.0,43.1],[19.6,43.2],[19.5,43.4],[19.2,43.5],[19.5,43.6],[19.6,44.0],[19.1,44.4],[19.4,44.9],[19.0,44.9],[19.0,44.9],[19.4,45.2],[19.1,45.5],[18.8,45.9]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"ME","NAME":"Montenegro"},"geometry":{"type":"Polygon","coordinates":[[[20.1,42.6],[19.8,42.5],[19.7,42.7],[19.3,42.2],[19.4,41.9],[19.2,42.0],[18.9,42.3],[18.5,42.5],[18.6,42.6],[18.7,43.2],[19.0,43.4],[19.2,43.5],[19.5,43.4],[19.6,43.2],[20.0,43.1],[20.3,42.9],[20.3,42.8],[20.1,42.6]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"XK","NAME":"Kosovo"},"geometry":{"type":"Polygon","coordinates":[[[20.6,41.9],[20.5,42.2],[20.3,42.3],[20.1,42.6],[20.3,42.8],[20.5,42.9],[20.6,43.2],[20.8,43.3],[21.0,43.1],[21.1,43.1],[21.3,42.9],[21.4,42.9],[21.6,42.7],[21.8,42.7],[21.7,42.4],[21.5,42.3],[21.6,42.2],[21.4,42.2],[20.8,42.1],[20.7,41.8],[20.6,41.9]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"TT","NAME":"Trinidad and Tobago"},"geometry":{"type":"Polygon","coordinates":[[[-61.7,10.8],[-61.1,10.9],[-60.9,10.9],[-60.9,10.1],[-61.8,10],[-62.0,10.1],[-61.7,10.4],[-61.7,10.8]]]}},{"type":"Feature","properties":{"ISO_A2_EH":"SS","NAME":"S. Sudan"},"geometry":{"type":"Polygon","coordinates":[[[30.8,3.5],[30.0,4.2],[29.7,4.6],[29.2,4.4],[28.7,4.5],[28.4,4.3],[28.0,4.4],[27.4,5.2],[27.2,5.6],[26.5,5.9],[26.2,6.5],[25.8,7.0],[25.1,7.5],[25.1,7.8],[24.6,8.2],[23.9,8.6],[24.2,8.7],[24.5,8.9],[24.8,9.8],[25.1,10.3],[25.8,10.4],[26.0,10.1],[26.5,9.6],[26.8,9.5],[27.1,9.6],[27.8,9.6],[28.0,9.4],[29.0,9.4],[29.0,9.6],[29.5,9.8],[29.6,10.1],[30.0,10.3],[30.8,9.7],[31.4,9.8],[31.9,10.5],[32.4,11.1],[32.3,11.7],[32.1,12.0],[32.7,12.0],[32.7,12.2],[33.2,12.2],[33.1,11.4],[33.2,10.7],[33.7,10.3],[33.8,10.0],[33.8,9.5],[34.0,9.5],[34.0,8.7],[33.8,8.4],[33.3,8.4],[33.0,7.8],[33.6,7.7],[34.1,7.2],[34.3,6.8],[34.7,6.6],[35.3,5.5],[34.6,4.8],[34.0,4.2],[33.4,3.8],[32.7,3.8],[31.9,3.6],[31.2,3.8],[30.8,3.5]]]}}]} \ No newline at end of file diff --git a/package/which-country-rs/default.nix b/package/which-country-rs/default.nix new file mode 100644 index 00000000..09409ae2 --- /dev/null +++ b/package/which-country-rs/default.nix @@ -0,0 +1,25 @@ +{ lib, pkgs, ... }: let + src = ./.; +in + pkgs.rustPlatform.buildRustPackage { + pname = "which-country-rs"; + version = "1.0.0"; + + inherit src; + + cargoLock.lockFile = ./Cargo.lock; + + # NOTE(yukkop): upstream uses edition 2024, so do not pass the repo's + # Rust 1.81 commonArgs here. + # NOTE(yukkop): keep the Nix package offline-by-default; upstream's + # default geoip feature calls a plaintext HTTP endpoint. + cargoBuildFlags = ["--no-default-features"]; + cargoTestFlags = ["--no-default-features"]; + + meta = { + description = "CLI tool that tells you which country contains coordinates"; + homepage = "https://github.com/krisfur/which-country-rs"; + license = lib.licenses.mit; + mainProgram = "which-country-rs"; + }; + } diff --git a/package/which-country-rs/src/geo.rs b/package/which-country-rs/src/geo.rs new file mode 100644 index 00000000..cecd4bf7 --- /dev/null +++ b/package/which-country-rs/src/geo.rs @@ -0,0 +1,275 @@ +use serde::Deserialize; + +#[derive(Debug, Deserialize)] +struct FeatureCollection { + features: Vec, +} + +#[derive(Debug, Deserialize)] +struct Feature { + properties: Properties, + geometry: Geometry, +} + +#[derive(Debug, Deserialize)] +struct Properties { + #[serde(rename = "ISO_A2_EH")] + iso_a2: String, + #[serde(rename = "NAME")] + name: String, +} + +#[derive(Debug, Deserialize)] +#[serde(tag = "type")] +enum Geometry { + Polygon { + coordinates: Vec>, + }, + MultiPolygon { + coordinates: Vec>>, + }, +} + +#[allow(dead_code)] +pub struct Country { + pub iso_a2: String, + pub name: String, + /// Each polygon is a list of rings; ring 0 = outer, rest = holes + pub polygons: Vec>>, + pub bbox: (f64, f64, f64, f64), // (min_lon, min_lat, max_lon, max_lat) + pub label_pos: (f64, f64), // (lon, lat) — centroid of largest polygon +} + +/// Signed area of a ring (positive = CCW). +fn ring_signed_area(ring: &[[f64; 2]]) -> f64 { + let n = ring.len(); + if n < 3 { + return 0.0; + } + let mut area = 0.0; + let mut j = n - 1; + for i in 0..n { + area += (ring[j][0] - ring[i][0]) * (ring[j][1] + ring[i][1]); + j = i; + } + area / 2.0 +} + +/// Ray-casting point-in-ring test. +fn point_in_ring(lon: f64, lat: f64, ring: &[[f64; 2]]) -> bool { + let mut inside = false; + let n = ring.len(); + if n < 3 { + return false; + } + let mut j = n - 1; + for i in 0..n { + let xi = ring[i][0]; + let yi = ring[i][1]; + let xj = ring[j][0]; + let yj = ring[j][1]; + if ((yi > lat) != (yj > lat)) && (lon < (xj - xi) * (lat - yi) / (yj - yi) + xi) { + inside = !inside; + } + j = i; + } + inside +} + +/// Find horizontal interior spans at a given latitude. +/// Returns sorted pairs of (enter_lon, exit_lon). +fn horizontal_spans(lat: f64, ring: &[[f64; 2]]) -> Vec<(f64, f64)> { + let n = ring.len(); + if n < 3 { + return Vec::new(); + } + let mut crossings = Vec::new(); + let mut j = n - 1; + for i in 0..n { + let yi = ring[i][1]; + let yj = ring[j][1]; + if (yi > lat) != (yj > lat) { + let xi = ring[i][0]; + let xj = ring[j][0]; + crossings.push((xj - xi) * (lat - yi) / (yj - yi) + xi); + } + j = i; + } + crossings.sort_by(|a, b| a.partial_cmp(b).unwrap()); + crossings.chunks_exact(2).map(|p| (p[0], p[1])).collect() +} + +/// Find vertical interior spans at a given longitude. +/// Returns sorted pairs of (enter_lat, exit_lat). +fn vertical_spans(lon: f64, ring: &[[f64; 2]]) -> Vec<(f64, f64)> { + let n = ring.len(); + if n < 3 { + return Vec::new(); + } + let mut crossings = Vec::new(); + let mut j = n - 1; + for i in 0..n { + let xi = ring[i][0]; + let xj = ring[j][0]; + if (xi > lon) != (xj > lon) { + let yi = ring[i][1]; + let yj = ring[j][1]; + crossings.push((yj - yi) * (lon - xi) / (xj - xi) + yi); + } + j = i; + } + crossings.sort_by(|a, b| a.partial_cmp(b).unwrap()); + crossings.chunks_exact(2).map(|p| (p[0], p[1])).collect() +} + +/// Find a good interior label point for a ring. +/// Scans a grid of candidate points and picks the one that maximizes +/// min(half_width, half_height) — the "most interior" point. +fn ring_label_point(ring: &[[f64; 2]]) -> (f64, f64) { + let min_lon = ring.iter().map(|c| c[0]).fold(f64::MAX, f64::min); + let max_lon = ring.iter().map(|c| c[0]).fold(f64::MIN, f64::max); + let min_lat = ring.iter().map(|c| c[1]).fold(f64::MAX, f64::min); + let max_lat = ring.iter().map(|c| c[1]).fold(f64::MIN, f64::max); + + let steps = 24; + let mut best = ((min_lon + max_lon) / 2.0, (min_lat + max_lat) / 2.0); + let mut best_score = 0.0f64; + + for row in 1..steps { + let lat = min_lat + (max_lat - min_lat) * row as f64 / steps as f64; + let h_spans = horizontal_spans(lat, ring); + + for &(span_left, span_right) in &h_spans { + let mid_lon = (span_left + span_right) / 2.0; + let half_w = (span_right - span_left) / 2.0; + + // Measure vertical extent at this longitude + let v_spans = vertical_spans(mid_lon, ring); + for &(span_bot, span_top) in &v_spans { + if lat >= span_bot && lat <= span_top { + let half_h = ((lat - span_bot).min(span_top - lat)).min(half_w); + let score = half_w.min(half_h); + if score > best_score { + best_score = score; + best = (mid_lon, lat); + } + break; + } + } + } + } + + best +} + +pub fn load_countries(geojson: &str) -> Vec { + let fc: FeatureCollection = serde_json::from_str(geojson).expect("Failed to parse GeoJSON"); + + fc.features + .into_iter() + .map(|f| { + let polygons = match f.geometry { + Geometry::Polygon { coordinates } => vec![coordinates], + Geometry::MultiPolygon { coordinates } => coordinates, + }; + + let mut min_lon = f64::MAX; + let mut min_lat = f64::MAX; + let mut max_lon = f64::MIN; + let mut max_lat = f64::MIN; + + for poly in &polygons { + for ring in poly { + for coord in ring { + let lon = coord[0]; + let lat = coord[1]; + if lon < min_lon { + min_lon = lon; + } + if lon > max_lon { + max_lon = lon; + } + if lat < min_lat { + min_lat = lat; + } + if lat > max_lat { + max_lat = lat; + } + } + } + } + + // Label inside the largest polygon + let label_pos = polygons + .iter() + .filter(|p| !p.is_empty() && p[0].len() >= 3) + .max_by(|a, b| { + ring_signed_area(&a[0]) + .abs() + .partial_cmp(&ring_signed_area(&b[0]).abs()) + .unwrap() + }) + .map(|p| ring_label_point(&p[0])) + .unwrap_or(((min_lon + max_lon) / 2.0, (min_lat + max_lat) / 2.0)); + + Country { + iso_a2: f.properties.iso_a2, + name: f.properties.name, + polygons, + bbox: (min_lon, min_lat, max_lon, max_lat), + label_pos, + } + }) + .collect() +} + +/// Check if a point is inside a polygon (outer ring minus holes). +fn point_in_polygon(lon: f64, lat: f64, rings: &[Vec<[f64; 2]>]) -> bool { + if rings.is_empty() || !point_in_ring(lon, lat, &rings[0]) { + return false; + } + // Must be outside all holes + !rings[1..].iter().any(|hole| point_in_ring(lon, lat, hole)) +} + +/// Check if a point falls inside a country. +pub fn point_in_country(lon: f64, lat: f64, country: &Country) -> bool { + let (min_lon, min_lat, max_lon, max_lat) = country.bbox; + if lon < min_lon || lon > max_lon || lat < min_lat || lat > max_lat { + return false; + } + country + .polygons + .iter() + .any(|poly| point_in_polygon(lon, lat, poly)) +} + +/// Find which country contains the given point, with a nearest-country +/// fallback for when low-res coastlines cause a near miss. +pub fn find_country(lon: f64, lat: f64, countries: &[Country]) -> Option { + // Exact hit + if let Some(idx) = countries.iter().position(|c| point_in_country(lon, lat, c)) { + return Some(idx); + } + // Search in expanding rings up to ~1 degree + for &offset in &[0.25, 0.5, 1.0] { + for &(dlon, dlat) in &[ + (offset, 0.0), + (-offset, 0.0), + (0.0, offset), + (0.0, -offset), + (offset, offset), + (offset, -offset), + (-offset, offset), + (-offset, -offset), + ] { + if let Some(idx) = countries + .iter() + .position(|c| point_in_country(lon + dlon, lat + dlat, c)) + { + return Some(idx); + } + } + } + None +} diff --git a/package/which-country-rs/src/geoip.rs b/package/which-country-rs/src/geoip.rs new file mode 100644 index 00000000..4618e00f --- /dev/null +++ b/package/which-country-rs/src/geoip.rs @@ -0,0 +1,44 @@ +use serde::Deserialize; + +#[derive(Debug, Deserialize)] +#[serde(tag = "status")] +pub enum GeoIpResponse { + #[serde(rename = "success")] + Success { + country: String, + #[serde(rename = "countryCode")] + country_code: String, + lat: f64, + lon: f64, + }, + #[serde(rename = "fail")] + Fail { message: String }, +} + +pub struct GeoIpResult { + pub country: String, + pub country_code: String, + pub lat: f64, + pub lon: f64, +} + +pub fn lookup() -> Result { + let url = "http://ip-api.com/json/?fields=status,message,countryCode,country,lat,lon"; + let resp = reqwest::blocking::get(url).map_err(|e| format!("HTTP request failed: {e}"))?; + let data: GeoIpResponse = resp.json().map_err(|e| format!("Failed to parse response: {e}"))?; + + match data { + GeoIpResponse::Success { + country, + country_code, + lat, + lon, + } => Ok(GeoIpResult { + country, + country_code, + lat, + lon, + }), + GeoIpResponse::Fail { message } => Err(format!("GeoIP lookup failed: {message}")), + } +} diff --git a/package/which-country-rs/src/main.rs b/package/which-country-rs/src/main.rs new file mode 100644 index 00000000..41bf208e --- /dev/null +++ b/package/which-country-rs/src/main.rs @@ -0,0 +1,99 @@ +mod geo; +#[cfg(feature = "geoip")] +mod geoip; +mod render; + +use clap::Parser; + +#[derive(Parser)] +#[command(name = "which-country-rs", version, about = "Detect your country by IP and render an ASCII world map")] +struct Args { + /// Map width in characters + #[arg(short = 'W', long, default_value_t = 80)] + width: usize, + + /// Map height in characters + #[arg(short = 'H', long, default_value_t = 24)] + height: usize, + + /// Country code to display (e.g. "US", "FR", "JP") — skips IP lookup + #[arg(short, long)] + country: Option, + + /// Latitude (requires --lon too) — skips IP lookup, derives country from coordinates + #[arg(long, requires = "lon", allow_hyphen_values = true)] + lat: Option, + + /// Longitude (requires --lat too) + #[arg(long, requires = "lat", allow_hyphen_values = true)] + lon: Option, +} + +static GEOJSON: &str = include_str!("../data/countries.geojson"); + +fn main() { + let args = Args::parse(); + let countries = geo::load_countries(GEOJSON); + + let (country_name, country_code, lat, lon) = if let Some(code) = &args.country { + // Direct country code — find it in the data + let code_upper = code.to_uppercase(); + let c = countries + .iter() + .find(|c| c.iso_a2 == code_upper) + .unwrap_or_else(|| { + eprintln!("Unknown country code: {code_upper}"); + std::process::exit(1); + }); + let (label_lon, label_lat) = c.label_pos; + (c.name.clone(), code_upper, label_lat, label_lon) + } else if let (Some(lat), Some(lon)) = (args.lat, args.lon) { + // Coordinates provided — find which country contains the point + let idx = geo::find_country(lon, lat, &countries) + .unwrap_or_else(|| { + eprintln!("No country found at {lat}, {lon} (ocean?)"); + std::process::exit(1); + }); + ( + countries[idx].name.clone(), + countries[idx].iso_a2.clone(), + lat, + lon, + ) + } else { + // IP geolocation + #[cfg(feature = "geoip")] + { + eprint!("Looking up your location... "); + match geoip::lookup() { + Ok(loc) => { + eprintln!("done."); + (loc.country, loc.country_code, loc.lat, loc.lon) + } + Err(e) => { + eprintln!("error: {e}"); + std::process::exit(1); + } + } + } + #[cfg(not(feature = "geoip"))] + { + eprintln!("IP geolocation requires the 'geoip' feature. Use --country or --lat/--lon instead."); + std::process::exit(1); + } + }; + + let map = render::render_map(&countries, &country_code, args.width, args.height); + + println!("You appear to be in: {country_name} ({country_code})"); + println!(); + println!("{map}"); + println!(); + println!( + "Coordinates: {:.2}\u{00b0}{}, {:.2}\u{00b0}{}", + lat.abs(), + if lat >= 0.0 { "N" } else { "S" }, + lon.abs(), + if lon >= 0.0 { "E" } else { "W" }, + ); +} diff --git a/package/which-country-rs/src/render.rs b/package/which-country-rs/src/render.rs new file mode 100644 index 00000000..1bfe4aef --- /dev/null +++ b/package/which-country-rs/src/render.rs @@ -0,0 +1,184 @@ +use crate::geo::Country; + +/// Render a zoomed-in ASCII map centered on the target country, showing borders and labels. +pub fn render_map( + countries: &[Country], + target_code: &str, + width: usize, + height: usize, +) -> String { + // Find the target country and compute its bbox + let target_idx = countries + .iter() + .position(|c| c.iso_a2 == target_code) + .expect("Target country not found in GeoJSON"); + + let (min_lon, min_lat, max_lon, max_lat) = countries[target_idx].bbox; + + // Add generous padding so the surrounding continent is visible + let lon_span = (max_lon - min_lon).max(4.0); + let lat_span = (max_lat - min_lat).max(4.0); + let pad_lon = lon_span * 1.0; + let pad_lat = lat_span * 1.0; + + let view_min_lon = (min_lon - pad_lon).max(-180.0); + let view_max_lon = (max_lon + pad_lon).min(180.0); + let view_min_lat = (min_lat - pad_lat).max(-90.0); + let view_max_lat = (max_lat + pad_lat).min(90.0); + + // Adjust aspect ratio: terminal chars are ~2x taller than wide + let lon_range = view_max_lon - view_min_lon; + let lat_range = view_max_lat - view_min_lat; + let char_aspect = 2.0; + + let (final_lon_range, final_lat_range); + let desired_lon = lat_range * (width as f64) / (height as f64) / char_aspect; + let desired_lat = lon_range * (height as f64) / (width as f64) * char_aspect; + + if desired_lon > lon_range { + final_lon_range = desired_lon; + final_lat_range = lat_range; + } else { + final_lon_range = lon_range; + final_lat_range = desired_lat; + } + + let center_lon = (view_min_lon + view_max_lon) / 2.0; + let center_lat = (view_min_lat + view_max_lat) / 2.0; + + let vp_min_lon = (center_lon - final_lon_range / 2.0).max(-180.0); + let vp_max_lat = (center_lat + final_lat_range / 2.0).min(90.0); + + let lon_per_col = final_lon_range / width as f64; + let lat_per_row = final_lat_range / height as f64; + + // Grid of characters + let mut grid = vec![vec![' '; width]; height]; + + // Rasterize polygon edges onto the grid + for (i, country) in countries.iter().enumerate() { + let (c_min_lon, c_min_lat, c_max_lon, c_max_lat) = country.bbox; + if c_max_lon < vp_min_lon + || c_min_lon > vp_min_lon + final_lon_range + || c_max_lat < vp_max_lat - final_lat_range + || c_min_lat > vp_max_lat + { + continue; + } + + let border_ch = if i == target_idx { '#' } else { '\u{00b7}' }; + + for poly in &country.polygons { + for ring in poly { + if ring.len() < 2 { + continue; + } + for edge in ring.windows(2) { + rasterize_edge( + edge[0][0], + edge[0][1], + edge[1][0], + edge[1][1], + vp_min_lon, + vp_max_lat, + lon_per_col, + lat_per_row, + width, + height, + border_ch, + i == target_idx, + &mut grid, + ); + } + } + } + } + + // Place country code labels at bbox center + for (i, country) in countries.iter().enumerate() { + if country.iso_a2 == "-99" { + continue; + } + + let (label_lon, label_lat) = country.label_pos; + + let col = ((label_lon - vp_min_lon) / lon_per_col) as isize; + let row = ((vp_max_lat - label_lat) / lat_per_row) as isize; + + let label = &country.iso_a2; + let start_col = col - (label.len() as isize / 2); + + for (j, ch) in label.chars().enumerate() { + let c = start_col + j as isize; + if c >= 0 && (c as usize) < width && row >= 0 && (row as usize) < height { + let r = row as usize; + let c = c as usize; + let existing = grid[r][c]; + // Target label always writes; neighbor labels only on empty or neighbor border + if i == target_idx || existing == ' ' || existing == '\u{00b7}' { + grid[r][c] = ch; + } + } + } + } + + // Render grid to string + grid.iter() + .map(|row| row.iter().collect::()) + .collect::>() + .join("\n") +} + +/// Rasterize a line segment onto the grid using Bresenham's algorithm. +fn rasterize_edge( + lon0: f64, + lat0: f64, + lon1: f64, + lat1: f64, + vp_min_lon: f64, + vp_max_lat: f64, + lon_per_col: f64, + lat_per_row: f64, + width: usize, + height: usize, + ch: char, + is_target: bool, + grid: &mut [Vec], +) { + let c0 = ((lon0 - vp_min_lon) / lon_per_col) as i32; + let r0 = ((vp_max_lat - lat0) / lat_per_row) as i32; + let c1 = ((lon1 - vp_min_lon) / lon_per_col) as i32; + let r1 = ((vp_max_lat - lat1) / lat_per_row) as i32; + + let mut x = c0; + let mut y = r0; + let dx = (c1 - c0).abs(); + let dy = -(r1 - r0).abs(); + let sx = if c0 < c1 { 1 } else { -1 }; + let sy = if r0 < r1 { 1 } else { -1 }; + let mut err = dx + dy; + + loop { + if x >= 0 && (x as usize) < width && y >= 0 && (y as usize) < height { + let cell = &mut grid[y as usize][x as usize]; + // Target borders overwrite neighbor borders; neighbor borders only on empty + if is_target || *cell == ' ' { + *cell = ch; + } + } + + if x == c1 && y == r1 { + break; + } + + let e2 = 2 * err; + if e2 >= dy { + err += dy; + x += sx; + } + if e2 <= dx { + err += dx; + y += sy; + } + } +}