piri 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 Jesse Winton
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,96 @@
1
+ # piri
2
+
3
+ A lightweight utility to create beautiful, SVG maps, with a bring your own styles mentality. Heavily based on the [Dotted Map](https://github.com/NTag/dotted-map/tree/main) library, with more customization.
4
+
5
+ ---
6
+
7
+ ## Installation
8
+
9
+ First, install `piri`.
10
+
11
+ ```bash
12
+ pnpm install piri
13
+ ```
14
+
15
+ Then, import it into your app:
16
+
17
+ ```tsx
18
+ import { createMap } from "piri";
19
+ ```
20
+
21
+ ## Usage
22
+
23
+ Create a map using the `createMap` function.
24
+
25
+ ```typescript
26
+ const { points, addMarkers } = createMap({
27
+ width: 150,
28
+ height: 75,
29
+ mapSamples: 4500,
30
+ });
31
+ ```
32
+
33
+ `createMap` returns the `points`, which are cached coordinates of the basic points, and an `addMarkers` function that you pass your markers into.
34
+
35
+ ```typescript
36
+ const markers = addMarkers(
37
+ [
38
+ {
39
+ lat: 40.7128,
40
+ lng: -74.006,
41
+ size: 8,
42
+ }, // New York
43
+ {
44
+
45
+ lat: 34.0522,
46
+ lng: -118.2437,
47
+ }, // Los Angeles
48
+ {
49
+ lat: 51.5074,
50
+ lng: -0.1278,
51
+ }, // London
52
+ {
53
+ lat: -33.8688,
54
+ lng: 151.2093,
55
+ }, // Sydney
56
+ ]
57
+ );
58
+ ```
59
+
60
+ After creating a map, render it as an SVG, with whatever customizations you'd like. This example uses React:
61
+
62
+ ```tsx
63
+ export const DottedMap = () => {
64
+ return (
65
+ <svg viewBox={`0 0 150 75`} style={{ width: '100%', height: '100%' }}>
66
+ {points.map((point) => {
67
+ return (
68
+ <circle
69
+ cx={point.x}
70
+ cy={point.y}
71
+ r={0.25}
72
+ fill="#ccc"
73
+ key={point.x}
74
+ />
75
+ );
76
+ })}
77
+ {markers.map((marker) => {
78
+ return (
79
+ <circle
80
+ cx={marker.x}
81
+ cy={marker.y}
82
+ r={marker.size ?? 0.25}
83
+ fill="#000"
84
+ key={marker.x}
85
+ />
86
+ );
87
+ })}
88
+ </svg>
89
+ );
90
+ };
91
+ ```
92
+
93
+ ## Example
94
+
95
+ ![a dotted map on an abstract background](https://raw.githubusercontent.com/thejessewinton/piri/refs/heads/main/image.jpeg "SVG Dotted Map")
96
+
@@ -0,0 +1,44 @@
1
+ import { R as Region } from './types-A0Zs0HXR.mjs';
2
+
3
+ type RGB = [number, number, number];
4
+ interface FlatMapMarker {
5
+ location: [number, number];
6
+ size: number;
7
+ color?: RGB;
8
+ }
9
+ interface FlatMapState {
10
+ dotColor: RGB;
11
+ dotRadius: number;
12
+ dark: number;
13
+ mapBrightness: number;
14
+ markerColor: RGB;
15
+ glowColor: RGB;
16
+ markers: FlatMapMarker[];
17
+ offset: [number, number];
18
+ scale: number;
19
+ }
20
+ interface FlatMapOptions {
21
+ devicePixelRatio?: number;
22
+ width: number;
23
+ height: number;
24
+ mapSamples?: number;
25
+ countries?: string[];
26
+ region?: Region;
27
+ dotRadius?: number;
28
+ dotColor?: RGB;
29
+ dark?: number;
30
+ mapBrightness?: number;
31
+ markerColor?: RGB;
32
+ glowColor?: RGB;
33
+ markers?: FlatMapMarker[];
34
+ offset?: [number, number];
35
+ scale?: number;
36
+ onRender?: (state: FlatMapState) => void;
37
+ }
38
+ interface FlatMapInstance {
39
+ destroy: () => void;
40
+ toggle: () => void;
41
+ }
42
+ declare const createFlatMap: (canvas: HTMLCanvasElement, options: FlatMapOptions) => FlatMapInstance;
43
+
44
+ export { type FlatMapInstance, type FlatMapMarker, type FlatMapOptions, type FlatMapState, createFlatMap as default };
@@ -0,0 +1,44 @@
1
+ import { R as Region } from './types-A0Zs0HXR.js';
2
+
3
+ type RGB = [number, number, number];
4
+ interface FlatMapMarker {
5
+ location: [number, number];
6
+ size: number;
7
+ color?: RGB;
8
+ }
9
+ interface FlatMapState {
10
+ dotColor: RGB;
11
+ dotRadius: number;
12
+ dark: number;
13
+ mapBrightness: number;
14
+ markerColor: RGB;
15
+ glowColor: RGB;
16
+ markers: FlatMapMarker[];
17
+ offset: [number, number];
18
+ scale: number;
19
+ }
20
+ interface FlatMapOptions {
21
+ devicePixelRatio?: number;
22
+ width: number;
23
+ height: number;
24
+ mapSamples?: number;
25
+ countries?: string[];
26
+ region?: Region;
27
+ dotRadius?: number;
28
+ dotColor?: RGB;
29
+ dark?: number;
30
+ mapBrightness?: number;
31
+ markerColor?: RGB;
32
+ glowColor?: RGB;
33
+ markers?: FlatMapMarker[];
34
+ offset?: [number, number];
35
+ scale?: number;
36
+ onRender?: (state: FlatMapState) => void;
37
+ }
38
+ interface FlatMapInstance {
39
+ destroy: () => void;
40
+ toggle: () => void;
41
+ }
42
+ declare const createFlatMap: (canvas: HTMLCanvasElement, options: FlatMapOptions) => FlatMapInstance;
43
+
44
+ export { type FlatMapInstance, type FlatMapMarker, type FlatMapOptions, type FlatMapState, createFlatMap as default };
package/dist/canvas.js ADDED
@@ -0,0 +1,2 @@
1
+ "use strict";var z=Object.defineProperty;var f1=Object.getOwnPropertyDescriptor;var I1=Object.getOwnPropertyNames;var N1=Object.prototype.hasOwnProperty;var R1=(t,e)=>{for(var o in e)z(t,o,{get:e[o],enumerable:!0})},b1=(t,e,o,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of I1(e))!N1.call(t,n)&&n!==o&&z(t,n,{get:()=>e[n],enumerable:!(r=f1(e,n))||r.enumerable});return t};var S1=t=>b1(z({},"__esModule",{value:!0}),t);var E1={};R1(E1,{default:()=>B1});module.exports=S1(E1);var m1=null,v=null,Z={get(t){return t===m1&&v?v:void 0},set(t,e){m1=t,v=e}};var W={type:"FeatureCollection",features:[{type:"Feature",id:"AFG",properties:{name:"Afghanistan"},geometry:{type:"Polygon",coordinates:[[[61.21,35.65],[60.53,33.68],[60.87,29.83],[66.35,29.89],[68.93,31.62],[71.85,36.51],[75.16,37.13],[74.98,37.42],[71.54,37.91],[67.83,37.15],[66.52,37.36],[61.21,35.65]]]}},{type:"Feature",id:"AGO",properties:{name:"Angola"},geometry:{type:"MultiPolygon",coordinates:[[[[23.91,-10.93],[22.16,-11.08],[21.73,-7.29],[17.47,-8.07],[16.33,-5.88],[12.32,-6.1],[13.63,-12.04],[11.73,-17.3],[18.26,-17.31],[23.22,-17.52],[21.89,-16.08],[21.93,-12.9],[23.91,-10.93]]],[[[12.18,-5.79],[13,-4.78],[11.92,-5.04],[12.18,-5.79]]]]}},{type:"Feature",id:"ALB",properties:{name:"Albania"},geometry:{type:"Polygon",coordinates:[[[21.02,40.84],[20.52,42.22],[20.07,42.59],[19.74,42.69],[20.15,39.63],[21.02,40.84]]]}},{type:"Feature",id:"ARE",properties:{name:"United Arab Emirates"},geometry:{type:"Polygon",coordinates:[[[51.58,24.25],[52,23],[55.21,22.71],[56.4,24.93],[56.26,25.72],[56.07,26.06],[54.01,24.12],[51.58,24.25]]]}},{type:"Feature",id:"ARG",properties:{name:"Argentina"},geometry:{type:"Polygon",coordinates:[[[-62.68,-22.25],[-66.27,-21.83],[-67.11,-22.74],[-68.42,-24.52],[-68.3,-26.9],[-70.53,-31.36],[-69.82,-34.19],[-71.12,-36.66],[-72.15,-42.25],[-71.55,-45.56],[-73.33,-50.38],[-68.57,-52.3],[-69.14,-50.73],[-65.64,-47.24],[-64.38,-42.87],[-62.15,-40.68],[-56.79,-36.9],[-58.43,-33.91],[-57.62,-30.22],[-53.65,-26.92],[-54.62,-25.74],[-56.49,-27.55],[-57.78,-25.16],[-62.68,-22.25]]]}},{type:"Feature",id:"ARM",properties:{name:"Armenia"},geometry:{type:"Polygon",coordinates:[[[43.58,41.09],[44.79,39.71],[46.14,38.74],[46.51,38.77],[44.97,41.25],[43.58,41.09]]]}},{type:"Feature",id:"ATA",properties:{name:"Antarctica"},geometry:{type:"Polygon",coordinates:[[[-58.61,-64.15],[-63,-64.64],[-67.74,-67.33],[-68.94,-73.01],[-76.22,-73.97],[-88.42,-73.01],[-96.34,-73.62],[-100.65,-75.3],[-116.22,-74.24],[-135.21,-74.3],[-144.32,-75.54],[-151.33,-77.4],[-147.22,-80.67],[-152.86,-82.04],[-148.53,-85.61],[-179.94,-84.72],[180,-84.71],[159.79,-80.94],[166.1,-74.38],[171.21,-71.7],[154.29,-68.56],[145.49,-66.92],[135.87,-66.03],[120.87,-67.19],[113.61,-65.88],[99.72,-67.25],[87.48,-66.88],[82.78,-67.21],[77.65,-69.46],[67.81,-70.31],[68.89,-67.93],[52.61,-66.05],[40.02,-69.11],[32.75,-69.38],[27.09,-70.46],[19.26,-69.89],[9.53,-70.01],[-7.42,-71.7],[-15.45,-73.15],[-15.7,-74.5],[-28.88,-76.67],[-35.78,-78.34],[-28.55,-80.34],[-63.26,-81.75],[-77.93,-78.38],[-61.96,-74.44],[-61.51,-71.09],[-65.51,-67.58],[-62.51,-65.09],[-58.61,-64.15]]]}},{type:"Feature",id:"ATF",properties:{name:"French Southern and Antarctic Lands"},geometry:{type:"Polygon",coordinates:[[[68.94,-48.62],[68.75,-49.77],[70.28,-49.71],[70.53,-49.06],[68.94,-48.62]]]}},{type:"Feature",id:"AUS",properties:{name:"Australia"},geometry:{type:"Polygon",coordinates:[[[143.56,-13.76],[139.26,-17.37],[135.43,-14.71],[136.95,-12.35],[133.55,-11.79],[130.62,-12.54],[129.41,-14.42],[125.69,-14.23],[122.31,-17.25],[120.86,-19.68],[114.65,-21.83],[113.39,-24.38],[115.8,-32.2],[115.03,-34.2],[118.03,-35.06],[119.89,-33.98],[123.66,-33.89],[126.15,-32.22],[131.33,-31.5],[134.27,-32.62],[140.64,-38.02],[146.32,-39.04],[150.07,-36.42],[152.89,-31.64],[153.57,-28.11],[152.85,-25.27],[149.68,-22.34],[148.85,-20.39],[146.39,-18.96],[145.38,-14.98],[143.56,-13.76]]]}},{type:"Feature",id:"AUT",properties:{name:"Austria"},geometry:{type:"Polygon",coordinates:[[[16.98,48.12],[16.96,48.6],[13.6,48.88],[9.59,47.53],[10.44,46.89],[13.81,46.51],[16.2,46.85],[16.98,48.12]]]}},{type:"Feature",id:"AZE",properties:{name:"Azerbaijan"},geometry:{type:"Polygon",coordinates:[[[47.99,41.41],[46.41,41.86],[44.97,41.25],[46.51,38.77],[48.88,38.32],[47.99,41.41]]]}},{type:"Feature",id:"BDI",properties:{name:"Burundi"},geometry:{type:"Polygon",coordinates:[[[29.34,-4.5],[29.75,-4.45],[30.47,-2.41],[29.03,-2.84],[29.34,-4.5]]]}},{type:"Feature",id:"BEL",properties:{name:"Belgium"},geometry:{type:"Polygon",coordinates:[[[4.05,51.27],[2.51,51.15],[5.67,49.53],[6.04,50.13],[6.16,50.8],[4.05,51.27]]]}},{type:"Feature",id:"BEN",properties:{name:"Benin"},geometry:{type:"Polygon",coordinates:[[[2.69,6.26],[3.61,11.66],[2.15,11.94],[.9,11],[1.87,6.14],[2.69,6.26]]]}},{type:"Feature",id:"BFA",properties:{name:"Burkina Faso"},geometry:{type:"Polygon",coordinates:[[[-2.83,9.64],[.02,11.02],[.9,11],[2.15,11.94],[.38,14.93],[-2,14.56],[-5.22,11.71],[-5.4,10.37],[-2.83,9.64]]]}},{type:"Feature",id:"BGD",properties:{name:"Bangladesh"},geometry:{type:"Polygon",coordinates:[[[92.67,22.04],[91.92,24.13],[89.92,25.27],[88.08,24.5],[89.03,22.06],[91.42,22.77],[92.37,20.67],[92.67,22.04]]]}},{type:"Feature",id:"BGR",properties:{name:"Bulgaria"},geometry:{type:"Polygon",coordinates:[[[22.66,44.24],[22.38,42.32],[22.95,41.34],[26.12,41.83],[28,42.01],[28.56,43.71],[22.66,44.24]]]}},{type:"Feature",id:"BHS",properties:{name:"The Bahamas"},geometry:{type:"Polygon",coordinates:[[[-77.53,23.76],[-77.89,25.17],[-78.41,24.58],[-77.53,23.76]]]}},{type:"Feature",id:"BIH",properties:{name:"Bosnia and Herzegovina"},geometry:{type:"Polygon",coordinates:[[[19.01,44.86],[18.56,42.65],[19.22,43.52],[19.37,44.86],[19.01,44.86]]]}},{type:"Feature",id:"BLR",properties:{name:"Belarus"},geometry:{type:"Polygon",coordinates:[[[23.48,53.91],[23.53,51.58],[29.26,51.37],[31.79,52.1],[31.54,52.74],[31.31,53.07],[32.31,53.13],[30.87,55.55],[28.18,56.17],[26.49,55.62],[23.48,53.91]]]}},{type:"Feature",id:"BLZ",properties:{name:"Belize"},geometry:{type:"Polygon",coordinates:[[[-89.14,17.81],[-88.93,15.89],[-88.3,18.5],[-89.14,17.81]]]}},{type:"Feature",id:"BMU",properties:{name:"Bermuda"},geometry:{type:"Polygon",coordinates:[[[-64.78,32.31],[-64.78,32.31],[-64.78,32.31],[-64.78,32.31]]]}},{type:"Feature",id:"BOL",properties:{name:"Bolivia"},geometry:{type:"Polygon",coordinates:[[[-67.11,-22.74],[-66.27,-21.83],[-62.68,-22.25],[-61.79,-19.63],[-58.17,-20.18],[-58.24,-16.3],[-60.16,-16.26],[-60.5,-13.78],[-65.4,-11.57],[-65.34,-9.76],[-69.53,-10.95],[-68.67,-12.56],[-69.59,-17.58],[-67.11,-22.74]]]}},{type:"Feature",id:"BRA",properties:{name:"Brazil"},geometry:{type:"Polygon",coordinates:[[[-57.62,-30.22],[-53.79,-32.05],[-53.37,-33.77],[-48.89,-28.67],[-48.49,-25.88],[-46.47,-24.09],[-41.99,-22.97],[-39.76,-19.6],[-38.95,-13.79],[-35.13,-9],[-35.23,-5.46],[-39.98,-2.87],[-41.47,-2.91],[-48.62,-.23],[-51.66,4.16],[-52.94,2.13],[-54.52,2.31],[-56.54,1.9],[-59.03,1.32],[-60.73,5.2],[-64.37,3.8],[-64.2,1.49],[-66.88,1.25],[-69.82,1.72],[-69.89,-4.3],[-72.89,-5.27],[-73.99,-7.52],[-72.18,-10.05],[-69.53,-10.95],[-65.34,-9.76],[-65.4,-11.57],[-60.5,-13.78],[-60.16,-16.26],[-58.24,-16.3],[-58.17,-20.18],[-57.94,-22.09],[-55.61,-22.66],[-54.62,-25.74],[-53.65,-26.92],[-57.62,-30.22]]]}},{type:"Feature",id:"BRN",properties:{name:"Brunei"},geometry:{type:"Polygon",coordinates:[[[114.2,4.53],[115.35,4.32],[115.45,5.45],[114.2,4.53]]]}},{type:"Feature",id:"BTN",properties:{name:"Bhutan"},geometry:{type:"Polygon",coordinates:[[[91.7,27.77],[90.02,28.3],[88.81,27.3],[91.7,27.77]]]}},{type:"Feature",id:"BWA",properties:{name:"Botswana"},geometry:{type:"Polygon",coordinates:[[[29.43,-22.09],[28.02,-21.49],[25.26,-17.74],[25.08,-17.66],[20.91,-18.25],[20.88,-21.81],[19.9,-24.77],[21.61,-26.73],[23.31,-25.27],[25.67,-25.49],[29.43,-22.09]]]}},{type:"Feature",id:"CAF",properties:{name:"Central African Republic"},geometry:{type:"Polygon",coordinates:[[[15.28,7.42],[14.48,4.73],[16.01,2.27],[18.45,3.5],[19.47,5.03],[22.41,4.03],[24.41,5.11],[27.37,5.23],[24.57,8.23],[23.81,8.67],[22.86,11.14],[17.97,7.89],[15.28,7.42]]]}},{type:"Feature",id:"CAN",properties:{name:"Canada"},geometry:{type:"MultiPolygon",coordinates:[[[[-56.13,50.69],[-59.27,47.6],[-53.07,46.66],[-53.48,49.25],[-56.13,50.69]]],[[[-67.14,45.14],[-64.47,46.24],[-65.06,49.23],[-60.03,50.24],[-55.68,52.15],[-59.57,55.2],[-64.58,60.34],[-73.84,62.44],[-78.11,62.32],[-78.52,58.81],[-76.54,56.53],[-81.4,52.16],[-82.27,55.15],[-85.01,55.3],[-90.9,57.29],[-94.63,60.11],[-93.16,62.03],[-81.39,67.11],[-88.02,68.61],[-95.21,71.92],[-98.44,67.78],[-109.95,67.98],[-127.45,70.38],[-136.5,68.9],[-140.99,69.71],[-141,60.31],[-138.34,59.56],[-134.27,58.86],[-132.73,57.69],[-130.01,55.92],[-130.51,54.29],[-127.44,50.83],[-122.84,49],[-95.16,49],[-88.38,48.3],[-82.55,45.35],[-82.44,41.68],[-76.82,43.63],[-74.87,45],[-71.5,45.01],[-69.24,47.45],[-67.14,45.14]]],[[[-114.17,73.12],[-119.4,71.56],[-113.31,68.54],[-105.96,69.18],[-105.4,72.67],[-114.17,73.12]]],[[[-86.56,73.16],[-89.51,70.76],[-77.29,69.77],[-72.65,67.29],[-77.9,65.31],[-71.02,62.91],[-66.17,61.93],[-62.16,66.16],[-71.2,70.92],[-82.32,73.75],[-86.56,73.16]]],[[[-68.5,83.11],[-91.59,81.89],[-85.09,79.35],[-89.49,76.47],[-80.56,76.18],[-61.89,82.36],[-68.5,83.11]]]]}},{type:"Feature",id:"CHE",properties:{name:"Switzerland"},geometry:{type:"Polygon",coordinates:[[[9.59,47.53],[7.47,47.62],[6.84,45.99],[10.44,46.89],[9.59,47.53]]]}},{type:"Feature",id:"CHL",properties:{name:"Chile"},geometry:{type:"Polygon",coordinates:[[[-67.11,-22.74],[-69.59,-17.58],[-70.37,-18.35],[-70.09,-21.39],[-70.9,-27.64],[-71.44,-32.42],[-73.17,-37.12],[-74.69,-45.76],[-75.64,-46.65],[-74.95,-52.26],[-72.56,-53.53],[-68.57,-52.3],[-73.33,-50.38],[-71.55,-45.56],[-72.15,-42.25],[-71.12,-36.66],[-69.82,-34.19],[-70.53,-31.36],[-68.3,-26.9],[-68.42,-24.52],[-67.11,-22.74]]]}},{type:"Feature",id:"CHN",properties:{name:"China"},geometry:{type:"Polygon",coordinates:[[[116.68,49.89],[117.42,46.67],[109.24,42.52],[104.97,41.6],[101.83,42.52],[96.35,42.73],[95.31,44.24],[90.95,45.29],[90.97,46.89],[87.75,49.3],[87.36,49.22],[85.16,47],[79.97,44.92],[80.26,42.35],[73.68,39.43],[74.98,37.42],[75.16,37.13],[77.84,35.49],[78.74,31.52],[81.11,30.18],[85.82,28.2],[88.12,27.88],[88.81,27.3],[90.02,28.3],[91.7,27.77],[94.57,29.28],[97.33,28.26],[98.68,27.51],[99.24,22.12],[101.18,21.44],[102.17,22.47],[105.33,23.35],[108.05,21.55],[111.84,21.55],[115.89,22.78],[118.66,24.55],[122.09,29.83],[121.91,31.69],[119.15,34.91],[119.7,37.16],[117.53,38.74],[124.27,39.93],[126.87,41.82],[130.64,42.4],[130.63,42.9],[131.29,44.11],[131.88,45.32],[133.77,46.12],[135.03,48.48],[133.37,48.18],[130.58,48.73],[129.4,49.44],[127.29,50.74],[125.07,53.16],[122.25,53.43],[120.73,52.52],[119.29,50.14],[116.68,49.89]]]}},{type:"Feature",id:"CIV",properties:{name:"Ivory Coast"},geometry:{type:"Polygon",coordinates:[[[-2.86,4.99],[-2.83,9.64],[-5.4,10.37],[-8.03,10.21],[-8.44,7.69],[-7.71,4.37],[-2.86,4.99]]]}},{type:"Feature",id:"CMR",properties:{name:"Cameroon"},geometry:{type:"Polygon",coordinates:[[[13.08,2.27],[16.01,2.27],[14.48,4.73],[15.28,7.42],[14.96,11.56],[14.5,12.86],[14.18,12.48],[11.75,6.98],[9.23,6.44],[8.5,4.77],[9.65,2.28],[11.28,2.26],[13.08,2.27]]]}},{type:"Feature",id:"COD",properties:{name:"Democratic Republic of the Congo"},geometry:{type:"Polygon",coordinates:[[[31.17,2.2],[29.72,4.6],[27.37,5.23],[24.41,5.11],[22.41,4.03],[19.47,5.03],[18.45,3.5],[17.52,-.74],[14.58,-4.97],[13,-4.78],[12.18,-5.79],[12.32,-6.1],[16.33,-5.88],[17.47,-8.07],[21.73,-7.29],[22.16,-11.08],[23.91,-10.93],[28.16,-12.27],[28.74,-8.53],[30.74,-8.34],[29.42,-5.94],[29.34,-4.5],[29.03,-2.84],[29.58,-1.34],[29.59,-.59],[29.88,.6],[31.17,2.2]]]}},{type:"Feature",id:"COG",properties:{name:"Republic of the Congo"},geometry:{type:"Polygon",coordinates:[[[13,-4.78],[14.58,-4.97],[17.52,-.74],[18.45,3.5],[16.01,2.27],[13.08,2.27],[14.43,-1.33],[11.09,-3.98],[11.92,-5.04],[13,-4.78]]]}},{type:"Feature",id:"COL",properties:{name:"Colombia"},geometry:{type:"Polygon",coordinates:[[[-75.37,-.15],[-73.07,-2.31],[-70.81,-2.26],[-69.89,-4.3],[-69.82,1.72],[-66.88,1.25],[-67.82,4.5],[-71.96,6.99],[-72.9,10.45],[-71.33,11.78],[-75.48,10.62],[-77.35,8.67],[-77.88,7.22],[-77.13,3.85],[-78.85,1.38],[-75.37,-.15]]]}},{type:"Feature",id:"CRI",properties:{name:"Costa Rica"},geometry:{type:"Polygon",coordinates:[[[-82.97,8.23],[-82.55,9.57],[-83.66,10.94],[-85.71,11.09],[-82.97,8.23]]]}},{type:"Feature",id:"CUB",properties:{name:"Cuba"},geometry:{type:"Polygon",coordinates:[[[-82.27,23.19],[-81.82,22.19],[-78.72,21.6],[-77.75,19.86],[-76.52,21.21],[-78.35,22.51],[-82.27,23.19]]]}},{type:"Feature",id:"-99",properties:{name:"Northern yprus"},geometry:{type:"Polygon",coordinates:[[[32.73,35.14],[33.97,35.06],[33.67,35.37],[32.73,35.14]]]}},{type:"Feature",id:"yP",properties:{name:"yprus"},geometry:{type:"Polygon",coordinates:[[[33.97,35.06],[32.73,35.14],[32.98,34.57],[33.97,35.06]]]}},{type:"Feature",id:"CZE",properties:{name:"Czech Republic"},geometry:{type:"Polygon",coordinates:[[[16.96,48.6],[18.85,49.5],[15.02,51.11],[13.6,48.88],[16.96,48.6]]]}},{type:"Feature",id:"DEU",properties:{name:"Germany"},geometry:{type:"Polygon",coordinates:[[[9.92,54.98],[8.53,54.96],[6.91,53.48],[6.16,50.8],[6.04,50.13],[6.19,49.46],[7.47,47.62],[9.59,47.53],[13.6,48.88],[15.02,51.11],[14.12,53.76],[9.92,54.98]]]}},{type:"Feature",id:"DJI",properties:{name:"Djibouti"},geometry:{type:"Polygon",coordinates:[[[43.08,12.7],[42.35,12.54],[42.78,10.93],[43.15,11.46],[43.08,12.7]]]}},{type:"Feature",id:"DNK",properties:{name:"Denmark"},geometry:{type:"Polygon",coordinates:[[[9.92,54.98],[10.25,56.89],[8.09,56.54],[8.53,54.96],[9.92,54.98]]]}},{type:"Feature",id:"DOM",properties:{name:"Dominican Republic"},geometry:{type:"Polygon",coordinates:[[[-71.71,19.71],[-71.71,18.05],[-68.32,18.61],[-70.81,19.88],[-71.71,19.71]]]}},{type:"Feature",id:"DZA",properties:{name:"Algeria"},geometry:{type:"Polygon",coordinates:[[[12,23.47],[10.3,24.38],[9.48,30.31],[7.61,33.34],[8.42,36.95],[1.47,36.61],[-2.17,35.17],[-1.31,32.26],[-5.24,30],[-8.67,28.84],[-8.67,27.66],[-8.68,27.4],[-4.92,24.98],[4.27,19.16],[5.68,19.6],[12,23.47]]]}},{type:"Feature",id:"ECU",properties:{name:"Ecuador"},geometry:{type:"Polygon",coordinates:[[[-80.3,-3.4],[-77.84,-3],[-75.37,-.15],[-78.85,1.38],[-80.93,-1.06],[-80.3,-3.4]]]}},{type:"Feature",id:"EGY",properties:{name:"Egypt"},geometry:{type:"Polygon",coordinates:[[[36.87,22],[34.1,26.14],[34.92,29.5],[34.27,31.22],[28.91,30.87],[25.17,31.57],[25,22],[36.87,22]]]}},{type:"Feature",id:"ERI",properties:{name:"Eritrea"},geometry:{type:"Polygon",coordinates:[[[42.35,12.54],[43.08,12.7],[39.27,15.92],[38.41,18],[36.85,16.96],[36.43,14.42],[39.34,14.53],[40.9,14.12],[41.6,13.45],[42.35,12.54]]]}},{type:"Feature",id:"ESP",properties:{name:"Spain"},geometry:{type:"Polygon",coordinates:[[[-9.03,41.88],[-6.67,41.88],[-7.45,37.1],[-5.38,35.95],[-.68,37.64],[.81,41.02],[2.99,42.47],[-1.9,43.42],[-7.98,43.75],[-9.03,41.88]]]}},{type:"Feature",id:"EST",properties:{name:"Estonia"},geometry:{type:"Polygon",coordinates:[[[24.31,57.79],[27.29,57.48],[27.72,57.79],[28.13,59.3],[24.31,57.79]]]}},{type:"Feature",id:"ETH",properties:{name:"Ethiopia"},geometry:{type:"Polygon",coordinates:[[[36.43,14.42],[33.96,9.58],[33.98,8.69],[35.3,5.51],[39.56,3.42],[41.86,3.92],[44.96,5],[47.79,8],[43.68,9.18],[42.93,10.02],[42.78,10.93],[42.35,12.54],[41.6,13.45],[40.9,14.12],[39.34,14.53],[36.43,14.42]]]}},{type:"Feature",id:"FIN",properties:{name:"Finland"},geometry:{type:"Polygon",coordinates:[[[28.59,69.07],[20.65,69.11],[23.9,66.01],[21.06,62.61],[22.87,59.85],[30.21,61.78],[29.98,67.7],[28.59,69.07]]]}},{type:"Feature",id:"FJI",properties:{name:"Fiji"},geometry:{type:"Polygon",coordinates:[[[178.37,-17.34],[177.67,-17.38],[177.38,-18.16],[178.55,-18.15],[178.37,-17.34]]]}},{type:"Feature",id:"FLK",properties:{name:"Falkland Islands"},geometry:{type:"Polygon",coordinates:[[[-61.2,-51.85],[-60.7,-52.3],[-58.05,-51.9],[-60,-51.25],[-61.2,-51.85]]]}},{type:"Feature",id:"FRA",properties:{name:"France"},geometry:{type:"Polygon",coordinates:[[[5.67,49.53],[2.51,51.15],[-2.96,47.57],[-1.19,46.02],[-1.9,43.42],[2.99,42.47],[7.44,43.69],[6.84,45.99],[7.47,47.62],[6.19,49.46],[5.67,49.53]]]}},{type:"Feature",id:"GAB",properties:{name:"Gabon"},geometry:{type:"Polygon",coordinates:[[[11.09,-3.98],[14.43,-1.33],[13.08,2.27],[11.28,2.26],[9.49,1.01],[8.8,-1.11],[11.09,-3.98]]]}},{type:"Feature",id:"GBR",properties:{name:"United Kingdom"},geometry:{type:"Polygon",coordinates:[[[-3,58.64],[-6.15,56.79],[-3.63,54.62],[-5.27,51.99],[-3.62,50.23],[.55,50.77],[.47,52.93],[-2.08,55.91],[-3,58.64]]]}},{type:"Feature",id:"GEO",properties:{name:"Georgia"},geometry:{type:"Polygon",coordinates:[[[41.55,41.54],[43.58,41.09],[44.97,41.25],[46.41,41.86],[45.47,42.5],[44.54,42.71],[40.08,43.55],[39.96,43.44],[41.55,41.54]]]}},{type:"Feature",id:"GHA",properties:{name:"Ghana"},geometry:{type:"Polygon",coordinates:[[[1.06,5.93],[.02,11.02],[-2.83,9.64],[-2.86,4.99],[1.06,5.93]]]}},{type:"Feature",id:"GIN",properties:{name:"Guinea"},geometry:{type:"Polygon",coordinates:[[[-8.44,7.69],[-8.03,10.21],[-9.13,12.31],[-11.51,12.44],[-13.7,12.59],[-15.13,11.04],[-13.25,8.9],[-11.12,10.05],[-10.23,8.41],[-8.44,7.69]]]}},{type:"Feature",id:"GMB",properties:{name:"Gambia"},geometry:{type:"Polygon",coordinates:[[[-16.84,13.15],[-15.93,13.13],[-15.62,13.62],[-16.71,13.6],[-16.84,13.15]]]}},{type:"Feature",id:"GNB",properties:{name:"Guinea Bissau"},geometry:{type:"Polygon",coordinates:[[[-15.13,11.04],[-13.7,12.59],[-16.68,12.39],[-15.13,11.04]]]}},{type:"Feature",id:"GNQ",properties:{name:"Equatorial Guinea"},geometry:{type:"Polygon",coordinates:[[[9.49,1.01],[11.28,2.26],[9.65,2.28],[9.49,1.01]]]}},{type:"Feature",id:"GRC",properties:{name:"Greece"},geometry:{type:"Polygon",coordinates:[[[26.06,40.82],[26.12,41.83],[22.95,41.34],[21.02,40.84],[20.15,39.63],[26.06,40.82]]]}},{type:"Feature",id:"GRL",properties:{name:"Greenland"},geometry:{type:"Polygon",coordinates:[[[-46.76,82.63],[-62.65,81.77],[-73.16,78.43],[-68.5,76.06],[-58.58,75.52],[-54,71.55],[-53.97,67.19],[-51.63,63.63],[-48.26,60.86],[-43.38,60.1],[-39.81,65.46],[-27.75,68.47],[-22.35,70.13],[-23.44,72.08],[-19.37,74.3],[-19.7,78.75],[-12.21,81.29],[-27.1,83.52],[-46.76,82.63]]]}},{type:"Feature",id:"GTM",properties:{name:"Guatemala"},geometry:{type:"Polygon",coordinates:[[[-90.1,13.74],[-89.35,14.42],[-88.22,15.73],[-88.93,15.89],[-89.14,17.81],[-91,17.82],[-92.23,14.54],[-90.1,13.74]]]}},{type:"Feature",id:"GUF",properties:{name:"French Guiana"},geometry:{type:"Polygon",coordinates:[[[-54.52,2.31],[-52.94,2.13],[-51.66,4.16],[-53.96,5.76],[-54.4,4.21],[-54.52,2.31]]]}},{type:"Feature",id:"GUY",properties:{name:"Guyana"},geometry:{type:"Polygon",coordinates:[[[-59.76,8.37],[-60.73,5.2],[-59.03,1.32],[-56.54,1.9],[-58.04,4.06],[-57.15,5.97],[-59.76,8.37]]]}},{type:"Feature",id:"HND",properties:{name:"Honduras"},geometry:{type:"Polygon",coordinates:[[[-87.32,12.99],[-83.15,15],[-84.37,15.84],[-88.22,15.73],[-89.35,14.42],[-87.79,13.38],[-87.32,12.99]]]}},{type:"Feature",id:"HRV",properties:{name:"Croatia"},geometry:{type:"Polygon",coordinates:[[[18.83,45.91],[16.57,46.5],[13.72,45.5],[18.56,42.65],[19.01,44.86],[19.39,45.24],[19.07,45.52],[18.83,45.91]]]}},{type:"Feature",id:"HTI",properties:{name:"Haiti"},geometry:{type:"Polygon",coordinates:[[[-71.71,19.71],[-72.69,18.45],[-71.71,18.05],[-71.71,19.71]]]}},{type:"Feature",id:"HUN",properties:{name:"Hungary"},geometry:{type:"Polygon",coordinates:[[[16.2,46.85],[16.57,46.5],[18.83,45.91],[19.6,46.17],[20.22,46.13],[22.71,47.88],[22.09,48.42],[16.98,48.12],[16.2,46.85]]]}},{type:"Feature",id:"IDN",properties:{name:"Indonesia"},geometry:{type:"MultiPolygon",coordinates:[[[[141,-2.6],[138.33,-1.7],[134.42,-2.77],[137.93,-5.39],[138.67,-7.32],[141.03,-9.12],[141,-2.6]]],[[[125.24,1.42],[120.89,1.31],[118.77,-2.8],[120.31,-2.93],[120.18,.24],[124.44,.43],[125.24,1.42]]],[[[109.66,2.01],[109.09,-.46],[110.22,-2.93],[116,-3.66],[117.52,-.8],[117.88,4.14],[115.87,4.31],[114.62,1.43],[110.51,.77],[109.66,2.01]]],[[[105.82,-5.85],[106.11,-3.06],[103.44,-.71],[97.49,5.25],[98.6,1.82],[102.58,-4.22],[105.82,-5.85]]]]}},{type:"Feature",id:"IND",properties:{name:"India"},geometry:{type:"Polygon",coordinates:[[[77.84,35.49],[74.24,34.75],[74.42,30.98],[70.17,26.49],[71.04,24.36],[68.18,23.69],[70.47,20.88],[72.63,21.36],[73.53,15.99],[76.59,8.9],[79.86,10.36],[80.33,15.9],[89.03,22.06],[88.08,24.5],[89.92,25.27],[91.92,24.13],[92.67,22.04],[95.13,26.57],[97.33,28.26],[94.57,29.28],[91.7,27.77],[88.81,27.3],[88.12,27.88],[85.25,26.73],[80.09,28.79],[81.11,30.18],[78.74,31.52],[77.84,35.49]]]}},{type:"Feature",id:"IRL",properties:{name:"Ireland"},geometry:{type:"Polygon",coordinates:[[[-6.2,53.87],[-7.57,55.13],[-9.69,53.88],[-8.56,51.67],[-6.2,53.87]]]}},{type:"Feature",id:"IRN",properties:{name:"Iran"},geometry:{type:"Polygon",coordinates:[[[53.92,37.2],[52.26,36.7],[48.88,38.32],[46.51,38.77],[46.14,38.74],[44.79,39.71],[44.23,37.97],[45.42,35.98],[45.42,33.97],[48.57,29.93],[51.52,27.87],[57.4,25.74],[61.5,25.08],[63.32,26.76],[60.87,29.83],[60.53,33.68],[61.21,35.65],[59.24,37.41],[53.92,37.2]]]}},{type:"Feature",id:"IRQ",properties:{name:"Iraq"},geometry:{type:"Polygon",coordinates:[[[45.42,35.98],[44.77,37.17],[42.35,37.23],[41.01,34.42],[38.79,33.38],[39.2,32.16],[44.71,29.18],[46.57,29.1],[47.98,29.98],[48.57,29.93],[45.42,33.97],[45.42,35.98]]]}},{type:"Feature",id:"ISL",properties:{name:"Iceland"},geometry:{type:"Polygon",coordinates:[[[-14.51,66.46],[-20.58,65.73],[-18.66,63.5],[-13.61,65.13],[-14.51,66.46]]]}},{type:"Feature",id:"ISR",properties:{name:"Israel"},geometry:{type:"Polygon",coordinates:[[[35.72,32.71],[35.82,33.28],[35.13,33.09],[34.92,29.5],[35.4,31.49],[34.93,31.35],[35.18,32.53],[35.55,32.39],[35.72,32.71]]]}},{type:"Feature",id:"ITA",properties:{name:"Italy"},geometry:{type:"Polygon",coordinates:[[[13.81,46.51],[10.44,46.89],[6.84,45.99],[7.44,43.69],[8.89,44.37],[12.11,41.71],[13.94,45.59],[13.81,46.51]]]}},{type:"Feature",id:"JAM",properties:{name:"Jamaica"},geometry:{type:"Polygon",coordinates:[[[-77.57,18.49],[-77.21,17.7],[-76.36,18.16],[-77.57,18.49]]]}},{type:"Feature",id:"JOR",properties:{name:"Jordan"},geometry:{type:"Polygon",coordinates:[[[35.55,32.39],[35.4,31.49],[34.92,29.5],[34.96,29.36],[38,30.51],[39.2,32.16],[38.79,33.38],[35.72,32.71],[35.55,32.39]]]}},{type:"Feature",id:"JPN",properties:{name:"Japan"},geometry:{type:"Polygon",coordinates:[[[140.98,37.14],[139.43,38.22],[135.68,35.53],[132.62,35.43],[132.16,33.91],[140.25,35.14],[140.98,37.14]]]}},{type:"Feature",id:"KAZ",properties:{name:"Kazakhstan"},geometry:{type:"Polygon",coordinates:[[[70.96,42.27],[74.21,43.3],[80.26,42.35],[79.97,44.92],[85.16,47],[87.36,49.22],[83.38,51.07],[80.04,50.87],[76.89,54.49],[73.43,53.49],[68.17,54.97],[65.18,54.35],[60.98,53.67],[59.64,50.55],[54.53,51.03],[50.77,51.69],[47.55,50.46],[46.47,48.39],[48.7,47.08],[49.1,46.4],[52.5,41.78],[55.97,41.31],[55.93,45],[58.5,45.59],[62.01,43.5],[64.9,43.73],[66.71,41.17],[70.96,42.27]]]}},{type:"Feature",id:"KEN",properties:{name:"Kenya"},geometry:{type:"Polygon",coordinates:[[[41.59,-1.68],[40.98,2.79],[41.86,3.92],[39.56,3.42],[35.3,5.51],[34.01,4.25],[35.04,1.91],[33.9,-.95],[37.7,-3.1],[39.2,-4.68],[41.59,-1.68]]]}},{type:"Feature",id:"KGZ",properties:{name:"Kyrgyzstan"},geometry:{type:"Polygon",coordinates:[[[70.96,42.27],[71.01,40.24],[73.68,39.43],[80.26,42.35],[74.21,43.3],[70.96,42.27]]]}},{type:"Feature",id:"KHM",properties:{name:"Cambodia"},geometry:{type:"Polygon",coordinates:[[[102.59,12.19],[104.33,10.49],[107.49,12.34],[107.38,14.2],[105.22,14.27],[102.99,14.23],[102.59,12.19]]]}},{type:"Feature",id:"KOR",properties:{name:"South Korea"},geometry:{type:"Polygon",coordinates:[[[128.35,38.61],[126.18,37.75],[126.49,34.39],[129.09,35.08],[128.35,38.61]]]}},{type:"Feature",id:"CS-KM",properties:{name:"Kosovo"},geometry:{type:"Polygon",coordinates:[[[20.59,41.86],[21.58,42.25],[20.26,42.81],[20.07,42.59],[20.52,42.22],[20.59,41.86]]]}},{type:"Feature",id:"KWT",properties:{name:"Kuwait"},geometry:{type:"Polygon",coordinates:[[[47.98,29.98],[46.57,29.1],[48.42,28.55],[47.98,29.98]]]}},{type:"Feature",id:"LAO",properties:{name:"Laos"},geometry:{type:"Polygon",coordinates:[[[105.22,14.27],[107.38,14.2],[107.57,15.2],[105.1,18.67],[104.44,20.76],[102.17,22.47],[101.18,21.44],[100.12,20.42],[102.11,18.11],[103.96,18.24],[105.22,14.27]]]}},{type:"Feature",id:"LBN",properties:{name:"Lebanon"},geometry:{type:"Polygon",coordinates:[[[35.82,33.28],[36,34.65],[35.13,33.09],[35.82,33.28]]]}},{type:"Feature",id:"LBR",properties:{name:"Liberia"},geometry:{type:"Polygon",coordinates:[[[-7.71,4.37],[-8.44,7.69],[-10.23,8.41],[-11.44,6.79],[-7.71,4.37]]]}},{type:"Feature",id:"LBY",properties:{name:"Libya"},geometry:{type:"Polygon",coordinates:[[[14.85,22.86],[15.86,23.41],[23.84,19.58],[25,22],[25.17,31.57],[20.86,32.71],[19.09,30.27],[15.25,32.27],[11.49,33.14],[9.48,30.31],[10.3,24.38],[12,23.47],[14.85,22.86]]]}},{type:"Feature",id:"LKA",properties:{name:"Sri Lanka"},geometry:{type:"Polygon",coordinates:[[[81.79,7.52],[79.69,8.2],[80.35,5.97],[81.79,7.52]]]}},{type:"Feature",id:"LSO",properties:{name:"Lesotho"},geometry:{type:"Polygon",coordinates:[[[28.98,-28.96],[27,-29.88],[27.75,-30.64],[28.85,-30.07],[28.98,-28.96]]]}},{type:"Feature",id:"LTU",properties:{name:"Lithuania"},geometry:{type:"Polygon",coordinates:[[[22.73,54.33],[23.48,53.91],[26.49,55.62],[21.06,56.03],[21.27,55.19],[22.73,54.33]]]}},{type:"Feature",id:"LUX",properties:{name:"Luxembourg"},geometry:{type:"Polygon",coordinates:[[[6.04,50.13],[5.67,49.53],[6.19,49.46],[6.04,50.13]]]}},{type:"Feature",id:"LVA",properties:{name:"Latvia"},geometry:{type:"Polygon",coordinates:[[[21.06,56.03],[26.49,55.62],[28.18,56.17],[27.29,57.48],[24.31,57.79],[21.06,56.03]]]}},{type:"Feature",id:"MAR",properties:{name:"Morocco"},geometry:{type:"Polygon",coordinates:[[[-2.17,35.17],[-5.93,35.76],[-8.66,33.24],[-9.56,29.93],[-14.44,26.25],[-17.02,21.42],[-14.75,21.5],[-11.39,26.88],[-8.82,27.66],[-8.67,27.66],[-8.67,28.84],[-5.24,30],[-1.31,32.26],[-2.17,35.17]]]}},{type:"Feature",id:"MDA",properties:{name:"Moldova"},geometry:{type:"Polygon",coordinates:[[[26.62,48.22],[28.23,45.49],[29.12,47.85],[26.62,48.22]]]}},{type:"Feature",id:"MDG",properties:{name:"Madagascar"},geometry:{type:"Polygon",coordinates:[[[49.54,-12.47],[43.96,-17.41],[44.37,-20.07],[43.25,-22.06],[44.04,-24.99],[47.1,-24.94],[49.5,-17.11],[50.48,-15.23],[49.54,-12.47]]]}},{type:"Feature",id:"MEX",properties:{name:"Mexico"},geometry:{type:"Polygon",coordinates:[[[-88.3,18.5],[-87.05,21.54],[-90.28,21],[-90.77,19.28],[-94.43,18.14],[-95.9,18.83],[-97.87,22.44],[-97.53,25.84],[-99.02,26.37],[-100.96,29.38],[-104.46,29.57],[-106.51,31.76],[-111.02,31.34],[-117.13,32.53],[-114.47,27.14],[-109.29,26.44],[-106.03,22.77],[-104.99,19.32],[-100.83,17.17],[-96.56,15.65],[-94.69,16.2],[-92.23,14.54],[-91,17.82],[-89.14,17.81],[-88.3,18.5]]]}},{type:"Feature",id:"MKD",properties:{name:"Macedonia"},geometry:{type:"Polygon",coordinates:[[[20.59,41.86],[21.02,40.84],[22.95,41.34],[22.38,42.32],[21.58,42.25],[20.59,41.86]]]}},{type:"Feature",id:"MLI",properties:{name:"Mali"},geometry:{type:"Polygon",coordinates:[[[-12.17,14.62],[-11.51,12.44],[-9.13,12.31],[-8.03,10.21],[-5.4,10.37],[-5.22,11.71],[-2,14.56],[.38,14.93],[3.64,15.57],[4.27,19.16],[-4.92,24.98],[-6.45,24.96],[-5.54,15.5],[-11.67,15.39],[-12.17,14.62]]]}},{type:"Feature",id:"MLT",properties:{name:"Malta"},geometry:{type:"Polygon",coordinates:[[[14.57,35.85],[14.45,35.96],[14.35,35.87],[14.57,35.85]]]}},{type:"Feature",id:"MMR",properties:{name:"Myanmar"},geometry:{type:"Polygon",coordinates:[[[98.55,9.93],[99.59,11.89],[97.86,17.57],[98.25,19.71],[100.12,20.42],[101.18,21.44],[99.24,22.12],[98.68,27.51],[97.33,28.26],[95.13,26.57],[92.67,22.04],[92.37,20.67],[94.33,18.21],[94.19,16.04],[97.17,16.93],[98.77,11.44],[98.55,9.93]]]}},{type:"Feature",id:"MNE",properties:{name:"Montenegro"},geometry:{type:"Polygon",coordinates:[[[19.74,42.69],[20.07,42.59],[20.26,42.81],[19.22,43.52],[18.56,42.65],[19.74,42.69]]]}},{type:"Feature",id:"MNG",properties:{name:"Mongolia"},geometry:{type:"Polygon",coordinates:[[[87.75,49.3],[90.97,46.89],[90.95,45.29],[95.31,44.24],[96.35,42.73],[101.83,42.52],[104.97,41.6],[109.24,42.52],[117.42,46.67],[116.68,49.89],[110.66,49.13],[105.89,50.41],[103.68,50.09],[100.89,51.52],[98.23,50.42],[94.82,50.01],[94.15,50.48],[92.24,50.8],[87.75,49.3]]]}},{type:"Feature",id:"MOZ",properties:{name:"Mozambique"},geometry:{type:"Polygon",coordinates:[[[34.56,-11.52],[33.21,-13.97],[30.27,-15.51],[32.85,-16.71],[32.77,-19.72],[31.19,-22.25],[31.84,-25.84],[32.07,-26.73],[32.83,-26.74],[35.46,-24.12],[34.79,-19.78],[39.45,-16.72],[40.78,-14.69],[40.48,-10.76],[38.43,-11.28],[36.78,-11.59],[34.56,-11.52]]]}},{type:"Feature",id:"MRT",properties:{name:"Mauritania"},geometry:{type:"Polygon",coordinates:[[[-12.17,14.62],[-11.67,15.39],[-5.54,15.5],[-6.45,24.96],[-4.92,24.98],[-8.68,27.4],[-11.97,25.93],[-12.93,21.33],[-17.06,21],[-16.28,20.09],[-16.46,16.14],[-14.58,16.6],[-12.17,14.62]]]}},{type:"Feature",id:"MWI",properties:{name:"Malawi"},geometry:{type:"Polygon",coordinates:[[[34.56,-11.52],[33.94,-9.69],[32.76,-9.23],[33.49,-10.53],[33.21,-13.97],[34.56,-11.52]]]}},{type:"Feature",id:"MYS",properties:{name:"Malaysia"},geometry:{type:"MultiPolygon",coordinates:[[[[102.14,6.22],[100.09,6.46],[101.39,2.76],[103.38,4.86],[102.14,6.22]]],[[[117.88,4.14],[115.45,5.45],[115.35,4.32],[114.2,4.53],[113,3.1],[109.66,2.01],[110.51,.77],[114.62,1.43],[115.87,4.31],[117.88,4.14]]]]}},{type:"Feature",id:"NAM",properties:{name:"Namibia"},geometry:{type:"Polygon",coordinates:[[[16.35,-28.58],[19.9,-28.46],[19.9,-24.77],[20.88,-21.81],[20.91,-18.25],[25.08,-17.66],[23.22,-17.52],[18.26,-17.31],[11.73,-17.3],[14.26,-22.11],[15.21,-27.09],[16.35,-28.58]]]}},{type:"Feature",id:"NCL",properties:{name:"New Caledonia"},geometry:{type:"Polygon",coordinates:[[[165.78,-21.08],[164.46,-20.12],[164.17,-20.44],[165.47,-21.68],[165.78,-21.08]]]}},{type:"Feature",id:"NER",properties:{name:"Niger"},geometry:{type:"Polygon",coordinates:[[[2.15,11.94],[3.61,11.66],[4.37,13.75],[9.02,12.83],[14.18,12.48],[14.5,12.86],[13.54,14.37],[15.25,16.63],[15.49,20.73],[15.1,21.31],[14.85,22.86],[12,23.47],[5.68,19.6],[4.27,19.16],[3.64,15.57],[.38,14.93],[2.15,11.94]]]}},{type:"Feature",id:"NGA",properties:{name:"Nigeria"},geometry:{type:"Polygon",coordinates:[[[8.5,4.77],[9.23,6.44],[11.75,6.98],[14.18,12.48],[9.02,12.83],[4.37,13.75],[3.61,11.66],[2.69,6.26],[4.33,6.27],[5.9,4.26],[8.5,4.77]]]}},{type:"Feature",id:"NIC",properties:{name:"Nicaragua"},geometry:{type:"Polygon",coordinates:[[[-85.71,11.09],[-83.66,10.94],[-83.15,15],[-87.32,12.99],[-85.71,11.09]]]}},{type:"Feature",id:"NLD",properties:{name:"Netherlands"},geometry:{type:"Polygon",coordinates:[[[6.91,53.48],[4.05,51.27],[6.16,50.8],[6.91,53.48]]]}},{type:"Feature",id:"NOR",properties:{name:"Norway"},geometry:{type:"Polygon",coordinates:[[[28.59,69.07],[28.17,71.19],[19.18,69.82],[10.53,64.49],[4.99,61.97],[5.67,58.59],[11.03,58.86],[11.93,63.13],[16.77,68.01],[20.65,69.11],[28.59,69.07]]]}},{type:"Feature",id:"NPL",properties:{name:"Nepal"},geometry:{type:"Polygon",coordinates:[[[88.12,27.88],[85.82,28.2],[81.11,30.18],[80.09,28.79],[85.25,26.73],[88.12,27.88]]]}},{type:"Feature",id:"NZL",properties:{name:"New Zealand"},geometry:{type:"MultiPolygon",coordinates:[[[[173.02,-40.92],[167.05,-45.11],[169.33,-46.64],[174.25,-41.77],[173.02,-40.92]]],[[[174.61,-36.16],[173.82,-39.51],[176.01,-41.29],[177.97,-39.17],[174.61,-36.16]]]]}},{type:"Feature",id:"OMN",properties:{name:"Oman"},geometry:{type:"Polygon",coordinates:[[[53.11,16.65],[57.79,19.07],[59.81,22.31],[56.4,24.93],[55.21,22.71],[55,20],[52,19],[53.11,16.65]]]}},{type:"Feature",id:"PAK",properties:{name:"Pakistan"},geometry:{type:"Polygon",coordinates:[[[75.16,37.13],[71.85,36.51],[68.93,31.62],[66.35,29.89],[60.87,29.83],[63.32,26.76],[61.5,25.08],[66.37,25.43],[68.18,23.69],[71.04,24.36],[70.17,26.49],[74.42,30.98],[74.24,34.75],[77.84,35.49],[75.16,37.13]]]}},{type:"Feature",id:"PAN",properties:{name:"Panama"},geometry:{type:"Polygon",coordinates:[[[-77.88,7.22],[-77.35,8.67],[-79.57,9.61],[-82.55,9.57],[-82.97,8.23],[-77.88,7.22]]]}},{type:"Feature",id:"PER",properties:{name:"Peru"},geometry:{type:"Polygon",coordinates:[[[-69.59,-17.58],[-68.67,-12.56],[-69.53,-10.95],[-72.18,-10.05],[-73.99,-7.52],[-72.89,-5.27],[-69.89,-4.3],[-70.81,-2.26],[-73.07,-2.31],[-75.37,-.15],[-77.84,-3],[-80.3,-3.4],[-81.25,-6.14],[-79.76,-7.19],[-76.01,-14.65],[-70.37,-18.35],[-69.59,-17.58]]]}},{type:"Feature",id:"PHL",properties:{name:"Philippines"},geometry:{type:"MultiPolygon",coordinates:[[[[126.38,8.41],[123.49,8.69],[124.22,6.16],[126.38,8.41]]],[[[121.32,18.5],[120.39,17.6],[120.07,14.97],[122.52,17.09],[121.32,18.5]]]]}},{type:"Feature",id:"PNG",properties:{name:"Papua New Guinea"},geometry:{type:"Polygon",coordinates:[[[141.03,-9.12],[142.63,-9.33],[144.74,-7.63],[147.91,-10.13],[149.78,-10.39],[144.58,-3.86],[141,-2.6],[141.03,-9.12]]]}},{type:"Feature",id:"POL",properties:{name:"Poland"},geometry:{type:"Polygon",coordinates:[[[15.02,51.11],[18.85,49.5],[22.56,49.09],[23.53,51.58],[23.48,53.91],[22.73,54.33],[19.66,54.43],[14.12,53.76],[15.02,51.11]]]}},{type:"Feature",id:"PRI",properties:{name:"Puerto Rico"},geometry:{type:"Polygon",coordinates:[[[-66.28,18.52],[-67.1,18.52],[-67.18,17.95],[-65.85,17.98],[-66.28,18.52]]]}},{type:"Feature",id:"PRK",properties:{name:"North Korea"},geometry:{type:"Polygon",coordinates:[[[130.64,42.4],[126.87,41.82],[124.27,39.93],[126.18,37.75],[128.35,38.61],[130.64,42.4]]]}},{type:"Feature",id:"PRT",properties:{name:"Portugal"},geometry:{type:"Polygon",coordinates:[[[-9.03,41.88],[-9.53,38.74],[-7.45,37.1],[-6.67,41.88],[-9.03,41.88]]]}},{type:"Feature",id:"PRY",properties:{name:"Paraguay"},geometry:{type:"Polygon",coordinates:[[[-62.68,-22.25],[-57.78,-25.16],[-56.49,-27.55],[-54.62,-25.74],[-55.61,-22.66],[-57.94,-22.09],[-58.17,-20.18],[-61.79,-19.63],[-62.68,-22.25]]]}},{type:"Feature",id:"QAT",properties:{name:"Qatar"},geometry:{type:"Polygon",coordinates:[[[50.81,24.76],[51.39,24.63],[51.59,25.8],[51.01,26.01],[50.81,24.76]]]}},{type:"Feature",id:"ROU",properties:{name:"Romania"},geometry:{type:"Polygon",coordinates:[[[22.71,47.88],[20.22,46.13],[22.66,44.24],[28.56,43.71],[29.6,45.29],[28.23,45.49],[26.62,48.22],[22.71,47.88]]]}},{type:"Feature",id:"RUS",properties:{name:"Russia"},geometry:{type:"MultiPolygon",coordinates:[[[[22.73,54.33],[21.27,55.19],[19.66,54.43],[22.73,54.33]]],[[[130.63,42.9],[134.87,43.4],[140.06,48.45],[141.35,53.09],[135.13,54.73],[142.2,59.04],[151.27,58.78],[156.72,61.43],[160.12,60.54],[155.43,55.38],[156.79,51.01],[162.12,54.86],[163.54,59.87],[170.7,60.34],[179.37,62.98],[180,64.98],[180,68.96],[175.72,69.88],[160.94,69.44],[157.01,71.03],[140.47,72.85],[139.87,71.49],[128.46,71.98],[126.98,73.57],[113.97,73.6],[111.08,76.71],[98.92,76.45],[80.51,73.65],[69.94,73.04],[63.5,69.55],[53.72,68.86],[43.95,66.07],[32.13,69.91],[28.59,69.07],[29.98,67.7],[30.21,61.78],[28.13,59.3],[27.72,57.79],[27.29,57.48],[28.18,56.17],[30.87,55.55],[32.31,53.13],[31.31,53.07],[31.54,52.74],[32.41,52.29],[35.02,51.21],[35.36,50.58],[38.6,49.93],[40.08,49.31],[39.74,47.9],[38.26,47.55],[38.22,47.1],[37.54,44.66],[39.96,43.44],[40.08,43.55],[44.54,42.71],[45.47,42.5],[46.41,41.86],[47.99,41.41],[46.68,44.61],[49.1,46.4],[48.7,47.08],[46.47,48.39],[47.55,50.46],[50.77,51.69],[54.53,51.03],[59.64,50.55],[60.98,53.67],[65.18,54.35],[68.17,54.97],[73.43,53.49],[76.89,54.49],[80.04,50.87],[83.38,51.07],[87.36,49.22],[87.75,49.3],[92.24,50.8],[94.15,50.48],[94.82,50.01],[98.23,50.42],[100.89,51.52],[103.68,50.09],[105.89,50.41],[110.66,49.13],[116.68,49.89],[119.29,50.14],[120.73,52.52],[122.25,53.43],[125.07,53.16],[127.29,50.74],[129.4,49.44],[130.58,48.73],[133.37,48.18],[135.03,48.48],[133.77,46.12],[131.88,45.32],[131.29,44.11],[130.63,42.9]]]]}},{type:"Feature",id:"RWA",properties:{name:"Rwanda"},geometry:{type:"Polygon",coordinates:[[[30.42,-1.13],[29.58,-1.34],[29.03,-2.84],[30.47,-2.41],[30.76,-2.29],[30.42,-1.13]]]}},{type:"Feature",id:"ESH",properties:{name:"Western Sahara"},geometry:{type:"Polygon",coordinates:[[[-17.02,21.42],[-17.06,21],[-12.93,21.33],[-11.97,25.93],[-8.68,27.4],[-8.67,27.66],[-8.82,27.66],[-11.39,26.88],[-14.75,21.5],[-17.02,21.42]]]}},{type:"Feature",id:"SAU",properties:{name:"Saudi Arabia"},geometry:{type:"Polygon",coordinates:[[[42.78,16.35],[43.38,17.58],[47,16.95],[49.12,18.62],[52,19],[55,20],[55.21,22.71],[52,23],[51.58,24.25],[51.39,24.63],[50.81,24.76],[48.42,28.55],[46.57,29.1],[44.71,29.18],[39.2,32.16],[38,30.51],[34.96,29.36],[35.13,28.06],[38.49,23.69],[39.14,21.29],[42.78,16.35]]]}},{type:"Feature",id:"SDN",properties:{name:"Sudan"},geometry:{type:"Polygon",coordinates:[[[33.96,9.46],[33.96,9.58],[36.43,14.42],[36.85,16.96],[38.41,18],[36.87,22],[25,22],[23.84,19.58],[23.89,15.61],[22.04,12.96],[22.86,11.14],[23.81,8.67],[23.89,8.62],[25.07,10.27],[28.97,9.4],[33.21,10.72],[33.96,9.46]]]}},{type:"Feature",id:"SSD",properties:{name:"South Sudan"},geometry:{type:"Polygon",coordinates:[[[33.96,9.46],[33.21,10.72],[28.97,9.4],[25.07,10.27],[23.89,8.62],[24.57,8.23],[27.37,5.23],[29.72,4.6],[30.83,3.51],[34.01,4.25],[35.3,5.51],[33.98,8.69],[33.96,9.46]]]}},{type:"Feature",id:"SEN",properties:{name:"Senegal"},geometry:{type:"Polygon",coordinates:[[[-16.71,13.6],[-15.62,13.62],[-15.93,13.13],[-16.84,13.15],[-16.68,12.39],[-13.7,12.59],[-11.51,12.44],[-12.17,14.62],[-14.58,16.6],[-16.46,16.14],[-16.71,13.6]]]}},{type:"Feature",id:"SLB",properties:{name:"Solomon Islands"},geometry:{type:"Polygon",coordinates:[[[159.88,-8.34],[159.64,-8.02],[158.36,-7.32],[158.59,-7.75],[159.13,-8.11],[159.88,-8.34]]]}},{type:"Feature",id:"SLE",properties:{name:"Sierra Leone"},geometry:{type:"Polygon",coordinates:[[[-11.44,6.79],[-10.23,8.41],[-11.12,10.05],[-13.25,8.9],[-11.44,6.79]]]}},{type:"Feature",id:"SLV",properties:{name:"El Salvador"},geometry:{type:"Polygon",coordinates:[[[-87.79,13.38],[-89.35,14.42],[-90.1,13.74],[-87.79,13.38]]]}},{type:"Feature",id:"-99",properties:{name:"Somaliland"},geometry:{type:"Polygon",coordinates:[[[47.79,8],[48.94,11.39],[44.12,10.45],[43.15,11.46],[42.78,10.93],[42.93,10.02],[43.68,9.18],[47.79,8]]]}},{type:"Feature",id:"SOM",properties:{name:"Somalia"},geometry:{type:"Polygon",coordinates:[[[41.59,-1.68],[43.14,.29],[46.57,2.86],[49.45,6.81],[51.05,10.64],[48.94,11.39],[47.79,8],[44.96,5],[41.86,3.92],[40.98,2.79],[41.59,-1.68]]]}},{type:"Feature",id:"SRB",properties:{name:"Republic of Serbia"},geometry:{type:"Polygon",coordinates:[[[22.66,44.24],[20.22,46.13],[19.6,46.17],[19.07,45.52],[19.39,45.24],[19.37,44.86],[19.22,43.52],[20.26,42.81],[21.58,42.25],[22.38,42.32],[22.66,44.24]]]}},{type:"Feature",id:"SUR",properties:{name:"Suriname"},geometry:{type:"Polygon",coordinates:[[[-57.15,5.97],[-58.04,4.06],[-56.54,1.9],[-54.52,2.31],[-54.4,4.21],[-53.96,5.76],[-57.15,5.97]]]}},{type:"Feature",id:"SVK",properties:{name:"Slovakia"},geometry:{type:"Polygon",coordinates:[[[18.85,49.5],[16.96,48.6],[16.98,48.12],[22.09,48.42],[22.56,49.09],[18.85,49.5]]]}},{type:"Feature",id:"SVN",properties:{name:"Slovenia"},geometry:{type:"Polygon",coordinates:[[[13.81,46.51],[13.94,45.59],[13.72,45.5],[16.57,46.5],[16.2,46.85],[13.81,46.51]]]}},{type:"Feature",id:"SWE",properties:{name:"Sweden"},geometry:{type:"Polygon",coordinates:[[[11.03,58.86],[12.94,55.36],[15.88,56.1],[18.79,60.08],[17.85,62.75],[23.9,66.01],[20.65,69.11],[16.77,68.01],[11.93,63.13],[11.03,58.86]]]}},{type:"Feature",id:"SWZ",properties:{name:"Swaziland"},geometry:{type:"Polygon",coordinates:[[[32.07,-26.73],[31.84,-25.84],[31.04,-25.73],[30.69,-26.74],[32.07,-26.73]]]}},{type:"Feature",id:"SYR",properties:{name:"Syria"},geometry:{type:"Polygon",coordinates:[[[38.79,33.38],[41.01,34.42],[42.35,37.23],[36.15,35.82],[36,34.65],[35.82,33.28],[35.72,32.71],[38.79,33.38]]]}},{type:"Feature",id:"TCD",properties:{name:"Chad"},geometry:{type:"Polygon",coordinates:[[[14.5,12.86],[14.96,11.56],[15.28,7.42],[17.97,7.89],[22.86,11.14],[22.04,12.96],[23.89,15.61],[23.84,19.58],[15.86,23.41],[14.85,22.86],[15.1,21.31],[15.49,20.73],[15.25,16.63],[13.54,14.37],[14.5,12.86]]]}},{type:"Feature",id:"TGO",properties:{name:"Togo"},geometry:{type:"Polygon",coordinates:[[[1.87,6.14],[.9,11],[.02,11.02],[1.06,5.93],[1.87,6.14]]]}},{type:"Feature",id:"THA",properties:{name:"Thailand"},geometry:{type:"Polygon",coordinates:[[[102.59,12.19],[102.99,14.23],[105.22,14.27],[103.96,18.24],[102.11,18.11],[100.12,20.42],[98.25,19.71],[97.86,17.57],[99.59,11.89],[98.55,9.93],[100.09,6.46],[102.14,6.22],[99.15,9.96],[100.98,13.41],[102.59,12.19]]]}},{type:"Feature",id:"TJK",properties:{name:"Tajikistan"},geometry:{type:"Polygon",coordinates:[[[71.01,40.24],[69.33,40.73],[67.83,37.15],[71.54,37.91],[74.98,37.42],[73.68,39.43],[71.01,40.24]]]}},{type:"Feature",id:"TKM",properties:{name:"Turkmenistan"},geometry:{type:"Polygon",coordinates:[[[61.21,35.65],[66.52,37.36],[60.08,41.43],[55.97,41.31],[52.5,41.78],[53.92,37.2],[59.24,37.41],[61.21,35.65]]]}},{type:"Feature",id:"TLS",properties:{name:"East Timor"},geometry:{type:"Polygon",coordinates:[[[124.97,-8.89],[125.09,-9.39],[126.97,-8.67],[126.65,-8.4],[124.97,-8.89]]]}},{type:"Feature",id:"TTO",properties:{name:"Trinidad and Tobago"},geometry:{type:"Polygon",coordinates:[[[-61.68,10.76],[-61.77,10],[-60.93,10.11],[-60.89,10.86],[-61.68,10.76]]]}},{type:"Feature",id:"TUN",properties:{name:"Tunisia"},geometry:{type:"Polygon",coordinates:[[[9.48,30.31],[11.49,33.14],[10.94,35.7],[8.42,36.95],[7.61,33.34],[9.48,30.31]]]}},{type:"Feature",id:"TUR",properties:{name:"Turkey"},geometry:{type:"MultiPolygon",coordinates:[[[[41.55,41.54],[38.35,40.95],[35.17,42.04],[29.24,41.22],[26.17,39.46],[27.64,36.66],[36.15,35.82],[42.35,37.23],[44.77,37.17],[44.23,37.97],[44.79,39.71],[43.58,41.09],[41.55,41.54]]],[[[26.06,40.82],[28,42.01],[26.12,41.83],[26.06,40.82]]]]}},{type:"Feature",id:"TWN",properties:{name:"Taiwan"},geometry:{type:"Polygon",coordinates:[[[121.78,24.39],[120.11,23.56],[120.75,21.97],[121.78,24.39]]]}},{type:"Feature",id:"TZA",properties:{name:"United Republic of Tanzania"},geometry:{type:"Polygon",coordinates:[[[33.9,-.95],[30.42,-1.13],[30.76,-2.29],[29.75,-4.45],[29.34,-4.5],[29.42,-5.94],[31.16,-8.6],[32.76,-9.23],[33.94,-9.69],[34.56,-11.52],[36.78,-11.59],[38.43,-11.28],[39.19,-8.49],[39.2,-4.68],[37.7,-3.1],[33.9,-.95]]]}},{type:"Feature",id:"UGA",properties:{name:"Uganda"},geometry:{type:"Polygon",coordinates:[[[30.42,-1.13],[33.9,-.95],[35.04,1.91],[34.01,4.25],[30.83,3.51],[31.17,2.2],[29.88,.6],[29.59,-.59],[29.58,-1.34],[30.42,-1.13]]]}},{type:"Feature",id:"UKR",properties:{name:"Ukraine"},geometry:{type:"Polygon",coordinates:[[[31.79,52.1],[29.26,51.37],[23.53,51.58],[22.56,49.09],[22.09,48.42],[22.71,47.88],[26.62,48.22],[29.12,47.85],[28.23,45.49],[29.6,45.29],[38.22,47.1],[38.26,47.55],[39.74,47.9],[40.08,49.31],[38.6,49.93],[35.36,50.58],[35.02,51.21],[32.41,52.29],[31.79,52.1]]]}},{type:"Feature",id:"URY",properties:{name:"Uruguay"},geometry:{type:"Polygon",coordinates:[[[-57.62,-30.22],[-58.43,-33.91],[-54.94,-34.95],[-53.37,-33.77],[-53.79,-32.05],[-57.62,-30.22]]]}},{type:"Feature",id:"USA",properties:{name:"United States of America"},geometry:{type:"MultiPolygon",coordinates:[[[[-67.14,45.14],[-69.24,47.45],[-71.5,45.01],[-74.87,45],[-76.82,43.63],[-82.44,41.68],[-82.55,45.35],[-88.38,48.3],[-95.16,49],[-122.84,49],[-124.69,48.18],[-123.9,45.52],[-124.53,42.77],[-123.73,38.95],[-120.37,34.45],[-117.13,32.53],[-111.02,31.34],[-106.51,31.76],[-104.46,29.57],[-100.96,29.38],[-99.02,26.37],[-97.53,25.84],[-97.37,27.38],[-94.69,29.48],[-89.18,30.32],[-83.71,29.94],[-81.17,25.2],[-80.06,26.88],[-81.49,30.73],[-78.55,33.86],[-75.73,35.55],[-75.72,37.94],[-73.98,40.63],[-70.64,41.48],[-70.12,43.68],[-67.14,45.14]]],[[[-140.99,69.71],[-161.91,70.33],[-168.11,65.67],[-164.56,63.15],[-166.12,61.5],[-157.72,57.57],[-148.02,59.98],[-139.87,59.54],[-134.08,58.12],[-130.01,55.92],[-132.73,57.69],[-134.27,58.86],[-138.34,59.56],[-141,60.31],[-140.99,69.71]]]]}},{type:"Feature",id:"UZB",properties:{name:"Uzbekistan"},geometry:{type:"Polygon",coordinates:[[[66.52,37.36],[67.83,37.15],[69.33,40.73],[71.01,40.24],[70.96,42.27],[66.71,41.17],[64.9,43.73],[62.01,43.5],[58.5,45.59],[55.93,45],[55.97,41.31],[60.08,41.43],[66.52,37.36]]]}},{type:"Feature",id:"VEN",properties:{name:"Venezuela"},geometry:{type:"Polygon",coordinates:[[[-71.33,11.78],[-72.9,10.45],[-71.96,6.99],[-67.82,4.5],[-66.88,1.25],[-64.2,1.49],[-64.37,3.8],[-60.73,5.2],[-59.76,8.37],[-62.73,10.42],[-68.19,10.56],[-71.33,11.78]]]}},{type:"Feature",id:"VNM",properties:{name:"Vietnam"},geometry:{type:"Polygon",coordinates:[[[108.05,21.55],[105.33,23.35],[102.17,22.47],[104.44,20.76],[105.1,18.67],[107.57,15.2],[107.38,14.2],[107.49,12.34],[104.33,10.49],[105.16,8.6],[109.2,11.67],[108.88,15.28],[105.66,19.06],[108.05,21.55]]]}},{type:"Feature",id:"VUT",properties:{name:"Vanuatu"},geometry:{type:"Polygon",coordinates:[[[167.11,-14.93],[166.79,-15.67],[167.27,-15.74],[167.11,-14.93]]]}},{type:"Feature",id:"PSE",properties:{name:"West Bank"},geometry:{type:"Polygon",coordinates:[[[35.55,32.39],[35.18,32.53],[34.93,31.35],[35.4,31.49],[35.55,32.39]]]}},{type:"Feature",id:"YEM",properties:{name:"Yemen"},geometry:{type:"Polygon",coordinates:[[[53.11,16.65],[52,19],[49.12,18.62],[47,16.95],[43.38,17.58],[42.78,16.35],[43.48,12.64],[48.68,14],[53.11,16.65]]]}},{type:"Feature",id:"ZAF",properties:{name:"South Africa"},geometry:{type:"Polygon",coordinates:[[[16.35,-28.58],[19.62,-34.82],[22.57,-33.86],[25.78,-33.94],[28.22,-32.77],[32.46,-28.3],[32.83,-26.74],[32.07,-26.73],[30.69,-26.74],[31.04,-25.73],[31.84,-25.84],[31.19,-22.25],[29.43,-22.09],[25.67,-25.49],[23.31,-25.27],[21.61,-26.73],[19.9,-24.77],[19.9,-28.46],[16.35,-28.58]],[[28.98,-28.96],[28.85,-30.07],[27.75,-30.64],[27,-29.88],[28.98,-28.96]]]}},{type:"Feature",id:"ZMB",properties:{name:"Zambia"},geometry:{type:"Polygon",coordinates:[[[32.76,-9.23],[31.16,-8.6],[30.74,-8.34],[28.74,-8.53],[28.16,-12.27],[23.91,-10.93],[21.93,-12.9],[21.89,-16.08],[23.22,-17.52],[25.08,-17.66],[25.26,-17.74],[27.04,-17.94],[30.27,-15.51],[33.21,-13.97],[33.49,-10.53],[32.76,-9.23]]]}},{type:"Feature",id:"ZWE",properties:{name:"Zimbabwe"},geometry:{type:"Polygon",coordinates:[[[31.19,-22.25],[32.77,-19.72],[32.85,-16.71],[30.27,-15.51],[27.04,-17.94],[25.26,-17.74],[28.02,-21.49],[29.43,-22.09],[31.19,-22.25]]]}}]};var G1={lat:{min:-56,max:71},lng:{min:-179,max:179}},R=(t,e)=>{let o=t*2003750834e-2/180,r=Math.log(Math.tan((90+e)*Math.PI/360))/(Math.PI/180);return r=r*2003750834e-2/180,[o,r]},$=t=>{if("type"in t){if(t.type==="FeatureCollection"){let e=t.features.map($);return{lat:{min:Math.min(...e.map(o=>o.lat.min)),max:Math.max(...e.map(o=>o.lat.max))},lng:{min:Math.min(...e.map(o=>o.lng.min)),max:Math.max(...e.map(o=>o.lng.max))}}}if(t.type==="Feature")return $(t.geometry);if(t.type==="Polygon"){let e=Number.POSITIVE_INFINITY,o=-Number.POSITIVE_INFINITY,r=Number.POSITIVE_INFINITY,n=-Number.POSITIVE_INFINITY;for(let p of t.coordinates)for(let[y,i]of p)i<e&&(e=i),i>o&&(o=i),y<r&&(r=y),y>n&&(n=y);return{lat:{min:e,max:o},lng:{min:r,max:n}}}if(t.type==="MultiPolygon"){let e=Number.POSITIVE_INFINITY,o=-Number.POSITIVE_INFINITY,r=Number.POSITIVE_INFINITY,n=-Number.POSITIVE_INFINITY;for(let p of t.coordinates)for(let y of p)for(let[i,d]of y)d<e&&(e=d),d>o&&(o=d),i<r&&(r=i),i>n&&(n=i);return{lat:{min:e,max:o},lng:{min:r,max:n}}}}throw new Error("Unknown or unsupported geojson structure")},q=new WeakMap,T1=(t=W)=>{if(!q.has(t)){let e=t.features.reduce((o,r)=>(o[r.id]=r,o),{});q.set(t,e)}return q.get(t)},d1=t=>{let e=new Float64Array(t.length*2),o=Number.POSITIVE_INFINITY,r=Number.POSITIVE_INFINITY,n=-Number.POSITIVE_INFINITY,p=-Number.POSITIVE_INFINITY;for(let y=0;y<t.length;y++){let[i,d]=t[y],[a,s]=R(i,d);e[y*2]=a,e[y*2+1]=s,a<o&&(o=a),a>n&&(n=a),s<r&&(r=s),s>p&&(p=s)}return{coords:e,length:t.length,minX:o,minY:r,maxX:n,maxY:p}},A1=t=>{let e=Number.POSITIVE_INFINITY,o=Number.POSITIVE_INFINITY,r=-Number.POSITIVE_INFINITY,n=-Number.POSITIVE_INFINITY,p=[];for(let y of t.features){let i=y.geometry,d=i.type==="Polygon"?[i.coordinates]:i.coordinates;for(let a of d){let s=a[0];if(!s)continue;let m=d1(s),c=[];for(let l=1;l<a.length;l++)a[l]&&c.push(d1(a[l]));m.minX<e&&(e=m.minX),m.minY<o&&(o=m.minY),m.maxX>r&&(r=m.maxX),m.maxY>n&&(n=m.maxY),p.push({outer:m,holes:c})}}return{polygons:p,minX:e,minY:o,maxX:r,maxY:n}},g1=(t,e,o)=>{if(t<o.minX||t>o.maxX||e<o.minY||e>o.maxY)return!1;let{coords:r,length:n}=o,p=!1;for(let y=0,i=n-1;y<n;i=y++){let d=r[y*2],a=r[y*2+1],s=r[i*2],m=r[i*2+1];a>e!=m>e&&t<(s-d)*(e-a)/(m-a)+d&&(p=!p)}return p},C1=(t,e,o)=>{if(t<o.minX||t>o.maxX||e<o.minY||e>o.maxY)return!1;for(let r of o.polygons){if(!g1(t,e,r.outer))continue;let n=!1;for(let p of r.holes)if(g1(t,e,p)){n=!0;break}if(!n)return!0}return!1},l1=({height:t=0,width:e=0,countries:o=[],rows:r,columns:n,region:p,radius:y=.3})=>{let i=W;if(o.length>0){let I=T1(i);i={type:"FeatureCollection",features:o.map(u=>I[u]).filter(u=>u!==void 0)},p||(p=$(i))}else p||(p=G1);let d={lat:{min:Math.max(p.lat.min,-85),max:Math.min(p.lat.max,85)},lng:p.lng},a=A1(i),[s]=R(d.lng.min,d.lat.min),[m,c]=R(d.lng.max,d.lat.max),[,l]=R(d.lng.min,d.lat.min),P=m-s,F=c-l;e<=0?e=Math.round(t*P/F):t<=0&&(t=Math.round(e*F/P));let b={},M=y*1.25,k=e-2*M,U=t-2*M;for(let I=0;I<r;I++)for(let u=0;u<n;u++){let G=M+u/(n-1)*k,T=M+I/(r-1)*U,N=G/e*P+s,w=c-T/t*F;C1(N,w,a)&&(b[`${u};${I}`]={x:G,y:T})}return{points:b,X_MIN:s,Y_MAX:c,X_RANGE:P,Y_RANGE:F,height:t,width:e}};var h=(t,e=1)=>`rgba(${Math.round(t[0]*255)},${Math.round(t[1]*255)},${Math.round(t[2]*255)},${e})`,x1=(t,e)=>{var j,e1,t1,o1,r1,a1,n1,i1,p1;let{devicePixelRatio:o=1,width:r,height:n,mapSamples:p=6e3,countries:y,region:i,onRender:d}=e;t.width=r*o,t.height=n*o;let a=t.getContext("2d");if(!a)throw new Error("Could not get canvas 2d context");let s=r,m=n,c=s/m,l=Math.round(Math.sqrt(p/c)),P=Math.round(l*c),F=.35,b=JSON.stringify({height:m,width:s,countries:y,region:i,rows:l,columns:P,radius:F}),M=Z.get(b);M||(M=l1({height:m,width:s,countries:y,region:i,rows:l,columns:P,radius:F}),Z.set(b,M));let{points:k,X_MIN:U,Y_MAX:I,X_RANGE:u,Y_RANGE:G}=M,T=Object.values(k),N=F*1.25,w=s-2*N,u1=m-2*N,c1=(V,A)=>{let[C,_]=R(A,V),K=(C-U)/u,x=(I-_)/G,D=K*(P-1),B=x*(l-1),E=N+D/(P-1)*w,J=N+B/(l-1)*u1;return{x:E,y:J}},Q={dotColor:(j=e.dotColor)!=null?j:[.5,.5,.5],dotRadius:(e1=e.dotRadius)!=null?e1:F,dark:(t1=e.dark)!=null?t1:1,mapBrightness:(o1=e.mapBrightness)!=null?o1:1,markerColor:(r1=e.markerColor)!=null?r1:[1,.5,0],glowColor:(a1=e.glowColor)!=null?a1:[1,1,1],markers:(n1=e.markers)!=null?n1:[],offset:(i1=e.offset)!=null?i1:[0,0],scale:(p1=e.scale)!=null?p1:1},S=!0,f=null,X=()=>{var y1,s1;if(!S)return;d==null||d(Q);let{dotColor:V,dotRadius:A,dark:C,mapBrightness:_,markerColor:K,glowColor:x,markers:D,offset:B,scale:E}=Q;if(a.setTransform(o,0,0,o,0,0),C<1){let g=1-C;a.fillStyle=h([g,g,g]),a.fillRect(0,0,s,m)}else a.clearRect(0,0,s,m);let J=s/2+B[0],P1=m/2+B[1];a.translate(J,P1),a.scale(E,E),a.translate(-s/2,-m/2);let F1=Math.min(1,Math.max(0,_));a.fillStyle=h(V,F1),a.beginPath();for(let g of T)a.moveTo(g.x+A,g.y),a.arc(g.x,g.y,A,0,Math.PI*2);a.fill();for(let g of D){let{x:L,y:O}=c1(g.location[0],g.location[1]),M1=(y1=g.color)!=null?y1:K,Y=((s1=g.size)!=null?s1:.04)*Math.min(s,m),H=a.createRadialGradient(L,O,Y*.5,L,O,Y*3);H.addColorStop(0,h(x,.3)),H.addColorStop(1,h(x,0)),a.fillStyle=H,a.beginPath(),a.arc(L,O,Y*3,0,Math.PI*2),a.fill(),a.fillStyle=h(M1),a.beginPath(),a.arc(L,O,Y,0,Math.PI*2),a.fill()}f=requestAnimationFrame(X)};return f=requestAnimationFrame(X),{destroy:()=>{S=!1,f!==null&&(cancelAnimationFrame(f),f=null)},toggle:()=>{S=!S,S?f=requestAnimationFrame(X):f!==null&&(cancelAnimationFrame(f),f=null)}}},B1=x1;
2
+ //# sourceMappingURL=canvas.js.map