commit 79bf8d3f6b8536e7d0f53a114a2929558eaa9165 Author: juyung Date: Tue Oct 29 03:00:35 2024 -0700 Upload diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..533e9e5 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +.venv/ +node_modules/ diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 0000000..e69de29 diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 0000000..9d49c23 --- /dev/null +++ b/.prettierrc @@ -0,0 +1,11 @@ +{ + "editor.formatOnSave": true, + "tabWidth": 2, + "useTabs": false, + "prettier.ignorePath": ".prettierignore", + "prettier.singleQuote": true, + "prettier.semi": false, + "prettier.trailingComma": "none", + "prettier.printWidth": 80, + "prettier.proseWrap": "preserve" +} diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..65a1965 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "editor.defaultFormatter": "esbenp.prettier-vscode" +} diff --git a/app.py b/app.py new file mode 100644 index 0000000..ca538fa --- /dev/null +++ b/app.py @@ -0,0 +1,11 @@ +from flask import Flask, render_template, send_from_directory + +app = Flask(__name__) + +@app.route('/') +@app.route('/index') +def index(): + return render_template('index.html', title='Home') + +if __name__ == '__main__': + app.run(debug=True) diff --git a/cors.json b/cors.json new file mode 100644 index 0000000..5c210fe --- /dev/null +++ b/cors.json @@ -0,0 +1,9 @@ +{ + "CORSRules": [ + { + "AllowedOrigins": ["https://www.geolens.app"], + "AllowedHeaders": ["*"], + "AllowedMethods": ["GET", "HEAD"] + } + ] +} diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..b847f93 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,6361 @@ +{ + "name": "geolens", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "dependencies": { + "bootstrap": "^5.3.3", + "flowbite": "^2.3.0", + "jquery": "^3.7.1", + "maplibre-gl": "^4.7.1", + "pmtiles": "^3.2.0" + }, + "devDependencies": { + "@types/bootstrap": "*", + "@types/jquery": "*", + "@types/node": "*", + "concurrently": "^7.2.1", + "sass": "^1.71.1", + "tailwindcss": "^3.4.1", + "ts-loader": "^9.3.0", + "typescript": "^4.7.2", + "webpack": "^5.72.1", + "webpack-cli": "^4.9.2" + } + }, + "node_modules/@alloc/quick-lru": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", + "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@babel/runtime": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.26.0.tgz", + "integrity": "sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw==", + "dev": true, + "dependencies": { + "regenerator-runtime": "^0.14.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@discoveryjs/json-ext": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", + "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", + "dev": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz", + "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@mapbox/geojson-rewind": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/@mapbox/geojson-rewind/-/geojson-rewind-0.5.2.tgz", + "integrity": "sha512-tJaT+RbYGJYStt7wI3cq4Nl4SXxG8W7JDG5DMJu97V25RnbNg3QtQtf+KD+VLjNpWKYsRvXDNmNrBgEETr1ifA==", + "dependencies": { + "get-stream": "^6.0.1", + "minimist": "^1.2.6" + }, + "bin": { + "geojson-rewind": "geojson-rewind" + } + }, + "node_modules/@mapbox/jsonlint-lines-primitives": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@mapbox/jsonlint-lines-primitives/-/jsonlint-lines-primitives-2.0.2.tgz", + "integrity": "sha512-rY0o9A5ECsTQRVhv7tL/OyDpGAoUB4tTvLiW1DSzQGq4bvTPhNw1VpSNjDJc5GFZ2XuyOtSWSVN05qOtcD71qQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/@mapbox/point-geometry": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@mapbox/point-geometry/-/point-geometry-0.1.0.tgz", + "integrity": "sha512-6j56HdLTwWGO0fJPlrZtdU/B13q8Uwmo18Ck2GnGgN9PCFyKTZ3UbXeEdRFh18i9XQ92eH2VdtpJHpBD3aripQ==" + }, + "node_modules/@mapbox/tiny-sdf": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@mapbox/tiny-sdf/-/tiny-sdf-2.0.6.tgz", + "integrity": "sha512-qMqa27TLw+ZQz5Jk+RcwZGH7BQf5G/TrutJhspsca/3SHwmgKQ1iq+d3Jxz5oysPVYTGP6aXxCo5Lk9Er6YBAA==" + }, + "node_modules/@mapbox/unitbezier": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/@mapbox/unitbezier/-/unitbezier-0.0.1.tgz", + "integrity": "sha512-nMkuDXFv60aBr9soUG5q+GvZYL+2KZHVvsqFCzqnkGEf46U2fvmytHaEVc1/YZbiLn8X+eR3QzX1+dwDO1lxlw==" + }, + "node_modules/@mapbox/vector-tile": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@mapbox/vector-tile/-/vector-tile-1.3.1.tgz", + "integrity": "sha512-MCEddb8u44/xfQ3oD+Srl/tNcQoqTw3goGk2oLsrFxOTc3dUp+kAnby3PvAeeBYSMSjSPD1nd1AJA6W49WnoUw==", + "dependencies": { + "@mapbox/point-geometry": "~0.1.0" + } + }, + "node_modules/@mapbox/whoots-js": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@mapbox/whoots-js/-/whoots-js-3.1.0.tgz", + "integrity": "sha512-Es6WcD0nO5l+2BOQS4uLfNPYQaNDfbot3X1XUoloz+x0mPDS3eeORZJl06HXjwBG1fOGwCRnzK88LMdxKRrd6Q==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@maplibre/maplibre-gl-style-spec": { + "version": "20.4.0", + "resolved": "https://registry.npmjs.org/@maplibre/maplibre-gl-style-spec/-/maplibre-gl-style-spec-20.4.0.tgz", + "integrity": "sha512-AzBy3095fTFPjDjmWpR2w6HVRAZJ6hQZUCwk5Plz6EyfnfuQW1odeW5i2Ai47Y6TBA2hQnC+azscjBSALpaWgw==", + "dependencies": { + "@mapbox/jsonlint-lines-primitives": "~2.0.2", + "@mapbox/unitbezier": "^0.0.1", + "json-stringify-pretty-compact": "^4.0.0", + "minimist": "^1.2.8", + "quickselect": "^2.0.0", + "rw": "^1.3.3", + "tinyqueue": "^3.0.0" + }, + "bin": { + "gl-style-format": "dist/gl-style-format.mjs", + "gl-style-migrate": "dist/gl-style-migrate.mjs", + "gl-style-validate": "dist/gl-style-validate.mjs" + } + }, + "node_modules/@maplibre/maplibre-gl-style-spec/node_modules/quickselect": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-2.0.0.tgz", + "integrity": "sha512-RKJ22hX8mHe3Y6wH/N3wCM6BWtjaxIyyUIkpHOvfFnxdI4yD4tBXEBKSbriGujF6jnSVkJrffuo6vxACiSSxIw==" + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@parcel/watcher": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.4.1.tgz", + "integrity": "sha512-HNjmfLQEVRZmHRET336f20H/8kOozUGwk7yajvsonjNxbj2wBTK1WsQuHkD5yYh9RxFGL2EyDHryOihOwUoKDA==", + "dev": true, + "dependencies": { + "detect-libc": "^1.0.3", + "is-glob": "^4.0.3", + "micromatch": "^4.0.5", + "node-addon-api": "^7.0.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "@parcel/watcher-android-arm64": "2.4.1", + "@parcel/watcher-darwin-arm64": "2.4.1", + "@parcel/watcher-darwin-x64": "2.4.1", + "@parcel/watcher-freebsd-x64": "2.4.1", + "@parcel/watcher-linux-arm-glibc": "2.4.1", + "@parcel/watcher-linux-arm64-glibc": "2.4.1", + "@parcel/watcher-linux-arm64-musl": "2.4.1", + "@parcel/watcher-linux-x64-glibc": "2.4.1", + "@parcel/watcher-linux-x64-musl": "2.4.1", + "@parcel/watcher-win32-arm64": "2.4.1", + "@parcel/watcher-win32-ia32": "2.4.1", + "@parcel/watcher-win32-x64": "2.4.1" + } + }, + "node_modules/@parcel/watcher-android-arm64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.4.1.tgz", + "integrity": "sha512-LOi/WTbbh3aTn2RYddrO8pnapixAziFl6SMxHM69r3tvdSm94JtCenaKgk1GRg5FJ5wpMCpHeW+7yqPlvZv7kg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-arm64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.4.1.tgz", + "integrity": "sha512-ln41eihm5YXIY043vBrrHfn94SIBlqOWmoROhsMVTSXGh0QahKGy77tfEywQ7v3NywyxBBkGIfrWRHm0hsKtzA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-x64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.4.1.tgz", + "integrity": "sha512-yrw81BRLjjtHyDu7J61oPuSoeYWR3lDElcPGJyOvIXmor6DEo7/G2u1o7I38cwlcoBHQFULqF6nesIX3tsEXMg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-freebsd-x64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.4.1.tgz", + "integrity": "sha512-TJa3Pex/gX3CWIx/Co8k+ykNdDCLx+TuZj3f3h7eOjgpdKM+Mnix37RYsYU4LHhiYJz3DK5nFCCra81p6g050w==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-glibc": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.4.1.tgz", + "integrity": "sha512-4rVYDlsMEYfa537BRXxJ5UF4ddNwnr2/1O4MHM5PjI9cvV2qymvhwZSFgXqbS8YoTk5i/JR0L0JDs69BUn45YA==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-glibc": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.4.1.tgz", + "integrity": "sha512-BJ7mH985OADVLpbrzCLgrJ3TOpiZggE9FMblfO65PlOCdG++xJpKUJ0Aol74ZUIYfb8WsRlUdgrZxKkz3zXWYA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-musl": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.4.1.tgz", + "integrity": "sha512-p4Xb7JGq3MLgAfYhslU2SjoV9G0kI0Xry0kuxeG/41UfpjHGOhv7UoUDAz/jb1u2elbhazy4rRBL8PegPJFBhA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-glibc": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.4.1.tgz", + "integrity": "sha512-s9O3fByZ/2pyYDPoLM6zt92yu6P4E39a03zvO0qCHOTjxmt3GHRMLuRZEWhWLASTMSrrnVNWdVI/+pUElJBBBg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-musl": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.4.1.tgz", + "integrity": "sha512-L2nZTYR1myLNST0O632g0Dx9LyMNHrn6TOt76sYxWLdff3cB22/GZX2UPtJnaqQPdCRoszoY5rcOj4oMTtp5fQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-arm64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.4.1.tgz", + "integrity": "sha512-Uq2BPp5GWhrq/lcuItCHoqxjULU1QYEcyjSO5jqqOK8RNFDBQnenMMx4gAl3v8GiWa59E9+uDM7yZ6LxwUIfRg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-ia32": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.4.1.tgz", + "integrity": "sha512-maNRit5QQV2kgHFSYwftmPBxiuK5u4DXjbXx7q6eKjq5dsLXZ4FJiVvlcw35QXzk0KrUecJmuVFbj4uV9oYrcw==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-x64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.4.1.tgz", + "integrity": "sha512-+DvS92F9ezicfswqrvIRM2njcYJbd5mb9CUgtrHCHmvn7pPPa+nMDRu1o1bYYz/l5IB2NVGNJWiH7h1E58IF2A==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@popperjs/core": { + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", + "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, + "node_modules/@rollup/plugin-node-resolve": { + "version": "15.3.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-15.3.0.tgz", + "integrity": "sha512-9eO5McEICxMzJpDW9OnMYSv4Sta3hmt7VtBFz5zR9273suNOydOyq/FrGeGy+KsTRFm8w0SLVhzig2ILFT63Ag==", + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "@types/resolve": "1.20.2", + "deepmerge": "^4.2.2", + "is-module": "^1.0.0", + "resolve": "^1.22.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^2.78.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/pluginutils": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.3.tgz", + "integrity": "sha512-Pnsb6f32CD2W3uCaLZIzDmeFyQ2b8UWMFI7xtwUezpcGBDVDW6y9XgAWIlARiGAo6eNF5FK5aQTr0LFyNyqq5A==", + "dependencies": { + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@types/bootstrap": { + "version": "5.2.10", + "resolved": "https://registry.npmjs.org/@types/bootstrap/-/bootstrap-5.2.10.tgz", + "integrity": "sha512-F2X+cd6551tep0MvVZ6nM8v7XgGN/twpdNDjqS1TUM7YFNEtQYWk+dKAnH+T1gr6QgCoGMPl487xw/9hXooa2g==", + "dev": true, + "dependencies": { + "@popperjs/core": "^2.9.2" + } + }, + "node_modules/@types/estree": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==" + }, + "node_modules/@types/geojson": { + "version": "7946.0.14", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.14.tgz", + "integrity": "sha512-WCfD5Ht3ZesJUsONdhvm84dmzWOiOzOAqOncN0++w0lBw1o8OuDNJF2McvvCef/yBqb/HYRahp1BYtODFQ8bRg==" + }, + "node_modules/@types/geojson-vt": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/@types/geojson-vt/-/geojson-vt-3.2.5.tgz", + "integrity": "sha512-qDO7wqtprzlpe8FfQ//ClPV9xiuoh2nkIgiouIptON9w5jvD/fA4szvP9GBlDVdJ5dldAl0kX/sy3URbWwLx0g==", + "dependencies": { + "@types/geojson": "*" + } + }, + "node_modules/@types/jquery": { + "version": "3.5.32", + "resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-3.5.32.tgz", + "integrity": "sha512-b9Xbf4CkMqS02YH8zACqN1xzdxc3cO735Qe5AbSUFmyOiaWAbcpqh9Wna+Uk0vgACvoQHpWDg2rGdHkYPLmCiQ==", + "dev": true, + "dependencies": { + "@types/sizzle": "*" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true + }, + "node_modules/@types/leaflet": { + "version": "1.9.14", + "resolved": "https://registry.npmjs.org/@types/leaflet/-/leaflet-1.9.14.tgz", + "integrity": "sha512-sx2q6MDJaajwhKeVgPSvqXd8rhNJSTA3tMidQGduZn9S6WBYxDkCpSpV5xXEmSg7Cgdk/5vJGhVF1kMYLzauBg==", + "dependencies": { + "@types/geojson": "*" + } + }, + "node_modules/@types/mapbox__point-geometry": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/@types/mapbox__point-geometry/-/mapbox__point-geometry-0.1.4.tgz", + "integrity": "sha512-mUWlSxAmYLfwnRBmgYV86tgYmMIICX4kza8YnE/eIlywGe2XoOxlpVnXWwir92xRLjwyarqwpu2EJKD2pk0IUA==" + }, + "node_modules/@types/mapbox__vector-tile": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/@types/mapbox__vector-tile/-/mapbox__vector-tile-1.3.4.tgz", + "integrity": "sha512-bpd8dRn9pr6xKvuEBQup8pwQfD4VUyqO/2deGjfpe6AwC8YRlyEipvefyRJUSiCJTZuCb8Pl1ciVV5ekqJ96Bg==", + "dependencies": { + "@types/geojson": "*", + "@types/mapbox__point-geometry": "*", + "@types/pbf": "*" + } + }, + "node_modules/@types/node": { + "version": "22.8.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.8.2.tgz", + "integrity": "sha512-NzaRNFV+FZkvK/KLCsNdTvID0SThyrs5SHB6tsD/lajr22FGC73N2QeDPM2wHtVde8mgcXuSsHQkH5cX1pbPLw==", + "dev": true, + "dependencies": { + "undici-types": "~6.19.8" + } + }, + "node_modules/@types/pbf": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@types/pbf/-/pbf-3.0.5.tgz", + "integrity": "sha512-j3pOPiEcWZ34R6a6mN07mUkM4o4Lwf6hPNt8eilOeZhTFbxFXmKhvXl9Y28jotFPaI1bpPDJsbCprUoNke6OrA==" + }, + "node_modules/@types/resolve": { + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.20.2.tgz", + "integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==" + }, + "node_modules/@types/sizzle": { + "version": "2.3.9", + "resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.9.tgz", + "integrity": "sha512-xzLEyKB50yqCUPUJkIsrVvoWNfFUbIZI+RspLWt8u+tIW/BetMBZtgV2LY/2o+tYH8dRvQ+eoPf3NdhQCcLE2w==", + "dev": true + }, + "node_modules/@types/supercluster": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/@types/supercluster/-/supercluster-7.1.3.tgz", + "integrity": "sha512-Z0pOY34GDFl3Q6hUFYf3HkTwKEE02e7QgtJppBt+beEAxnyOpJua+voGFvxINBHa06GwLFFym7gRPY2SiKIfIA==", + "dependencies": { + "@types/geojson": "*" + } + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz", + "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==", + "dev": true, + "dependencies": { + "@webassemblyjs/helper-numbers": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6" + } + }, + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", + "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", + "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz", + "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", + "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", + "dev": true, + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.11.6", + "@webassemblyjs/helper-api-error": "1.11.6", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", + "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz", + "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/wasm-gen": "1.12.1" + } + }, + "node_modules/@webassemblyjs/ieee754": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", + "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", + "dev": true, + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@webassemblyjs/leb128": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", + "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", + "dev": true, + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/utf8": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", + "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", + "dev": true + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz", + "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/helper-wasm-section": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-opt": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1", + "@webassemblyjs/wast-printer": "1.12.1" + } + }, + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz", + "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" + } + }, + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz", + "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz", + "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-api-error": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz", + "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webpack-cli/configtest": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.2.0.tgz", + "integrity": "sha512-4FB8Tj6xyVkyqjj1OaTqCjXYULB9FMkqQ8yGrZjRDrYh0nOE+7Lhs45WioWQQMV+ceFlE368Ukhe6xdvJM9Egg==", + "dev": true, + "peerDependencies": { + "webpack": "4.x.x || 5.x.x", + "webpack-cli": "4.x.x" + } + }, + "node_modules/@webpack-cli/info": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.5.0.tgz", + "integrity": "sha512-e8tSXZpw2hPl2uMJY6fsMswaok5FdlGNRTktvFk2sD8RjH0hE2+XistawJx1vmKteh4NmGmNUrp+Tb2w+udPcQ==", + "dev": true, + "dependencies": { + "envinfo": "^7.7.3" + }, + "peerDependencies": { + "webpack-cli": "4.x.x" + } + }, + "node_modules/@webpack-cli/serve": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.7.0.tgz", + "integrity": "sha512-oxnCNGj88fL+xzV+dacXs44HcDwf1ovs3AuEzvP7mqXw7fQntqIhQ1BRmynh4qEKQSSSRSWVyXRjmTbZIX9V2Q==", + "dev": true, + "peerDependencies": { + "webpack-cli": "4.x.x" + }, + "peerDependenciesMeta": { + "webpack-dev-server": { + "optional": true + } + } + }, + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true + }, + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true + }, + "node_modules/acorn": { + "version": "8.14.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", + "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-import-attributes": { + "version": "1.9.5", + "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz", + "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==", + "dev": true, + "peerDependencies": { + "acorn": "^8" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/ansi-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", + "dev": true + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/anymatch/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", + "dev": true + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/bootstrap": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.3.tgz", + "integrity": "sha512-8HLCdWgyoMguSO9o+aH+iuZ+aht+mzW0u3HIMzVu7Srrpv7EBBxTnrFlSCskwdY1+EOFQSm7uMJhNQHkdPcmjg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/twbs" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/bootstrap" + } + ], + "peerDependencies": { + "@popperjs/core": "^2.11.8" + } + }, + "node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.24.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.2.tgz", + "integrity": "sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001669", + "electron-to-chromium": "^1.5.41", + "node-releases": "^2.0.18", + "update-browserslist-db": "^1.1.1" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001674", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001674.tgz", + "integrity": "sha512-jOsKlZVRnzfhLojb+Ykb+gyUSp9Xb57So+fAiFlLzzTKpqg8xxSav0e40c8/4F/v9N8QSvrRRaLeVzQbLqomYw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chalk/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/chokidar": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.1.tgz", + "integrity": "sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==", + "dev": true, + "dependencies": { + "readdirp": "^4.0.1" + }, + "engines": { + "node": ">= 14.16.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/chrome-trace-event": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz", + "integrity": "sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==", + "dev": true, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/cliui/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/cliui/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui/node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "dev": true + }, + "node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/concurrently": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/concurrently/-/concurrently-7.6.0.tgz", + "integrity": "sha512-BKtRgvcJGeZ4XttiDiNcFiRlxoAeZOseqUvyYRUp/Vtd+9p1ULmeoSqGsDA+2ivdeDFpqrJvGvmI+StKfKl5hw==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "date-fns": "^2.29.1", + "lodash": "^4.17.21", + "rxjs": "^7.0.0", + "shell-quote": "^1.7.3", + "spawn-command": "^0.0.2-1", + "supports-color": "^8.1.0", + "tree-kill": "^1.2.2", + "yargs": "^17.3.1" + }, + "bin": { + "conc": "dist/bin/concurrently.js", + "concurrently": "dist/bin/concurrently.js" + }, + "engines": { + "node": "^12.20.0 || ^14.13.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/open-cli-tools/concurrently?sponsor=1" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/date-fns": { + "version": "2.30.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.30.0.tgz", + "integrity": "sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.21.0" + }, + "engines": { + "node": ">=0.11" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/date-fns" + } + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", + "dev": true, + "bin": { + "detect-libc": "bin/detect-libc.js" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/didyoumean": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", + "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", + "dev": true + }, + "node_modules/dlv": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", + "dev": true + }, + "node_modules/earcut": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/earcut/-/earcut-3.0.0.tgz", + "integrity": "sha512-41Fs7Q/PLq1SDbqjsgcY7GA42T0jvaCNGXgGtsNdvg+Yv8eIu06bxv4/PoREkZ9nMDNwnUSG9OFB9+yv8eKhDg==" + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true + }, + "node_modules/electron-to-chromium": { + "version": "1.5.49", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.49.tgz", + "integrity": "sha512-ZXfs1Of8fDb6z7WEYZjXpgIRF6MEu8JdeGA0A40aZq6OQbS+eJpnnV49epZRna2DU/YsEjSQuGtQPPtvt6J65A==", + "dev": true + }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "node_modules/enhanced-resolve": { + "version": "5.17.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz", + "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/envinfo": { + "version": "7.14.0", + "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.14.0.tgz", + "integrity": "sha512-CO40UI41xDQzhLB1hWyqUKgFhs250pNcGbyGKe1l/e4FSaI/+YE4IMG76GDt0In67WLPACIITC+sOi08x4wIvg==", + "dev": true, + "bin": { + "envinfo": "dist/cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/es-module-lexer": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.4.tgz", + "integrity": "sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==", + "dev": true + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true, + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fastest-levenshtein": { + "version": "1.0.16", + "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz", + "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==", + "dev": true, + "engines": { + "node": ">= 4.9.1" + } + }, + "node_modules/fastq": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fflate": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.8.2.tgz", + "integrity": "sha512-cPJU47OaAoCbg0pBvzsgpTPhmhqI5eJjh/JIu8tPj5q+T7iLvW/JAYUqmE7KOB4R1ZyEhzBaIQpQpardBF5z8A==" + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "dev": true, + "bin": { + "flat": "cli.js" + } + }, + "node_modules/flowbite": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/flowbite/-/flowbite-2.5.2.tgz", + "integrity": "sha512-kwFD3n8/YW4EG8GlY3Od9IoKND97kitO+/ejISHSqpn3vw2i5K/+ZI8Jm2V+KC4fGdnfi0XZ+TzYqQb4Q1LshA==", + "dependencies": { + "@popperjs/core": "^2.9.3", + "flowbite-datepicker": "^1.3.0", + "mini-svg-data-uri": "^1.4.3" + } + }, + "node_modules/flowbite-datepicker": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/flowbite-datepicker/-/flowbite-datepicker-1.3.0.tgz", + "integrity": "sha512-CLVqzuoE2vkUvWYK/lJ6GzT0be5dlTbH3uuhVwyB67+PjqJWABm2wv68xhBf5BqjpBxvTSQ3mrmLHpPJ2tvrSQ==", + "dependencies": { + "@rollup/plugin-node-resolve": "^15.2.3", + "flowbite": "^2.0.0" + } + }, + "node_modules/foreground-child": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz", + "integrity": "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/geojson-vt": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/geojson-vt/-/geojson-vt-4.0.2.tgz", + "integrity": "sha512-AV9ROqlNqoZEIJGfm1ncNjEXfkz2hdFlZf0qkVfmkwdKa8vj7H16YUOT81rJw1rdFhyEDlN2Tds91p/glzbl5A==" + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gl-matrix": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/gl-matrix/-/gl-matrix-3.4.3.tgz", + "integrity": "sha512-wcCp8vu8FT22BnvKVPjXa/ICBWRq/zjFfdofZy1WSpQZpphblv12/bOQLBC1rMM7SGOFS9ltVmKOHil5+Ml7gA==" + }, + "node_modules/glob": { + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "dev": true + }, + "node_modules/global-prefix": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-4.0.0.tgz", + "integrity": "sha512-w0Uf9Y9/nyHinEk5vMJKRie+wa4kR5hmDbEhGGds/kG1PwGLLHKRoNMeJOyCQjjBkANlnScqgzcFwGHgmgLkVA==", + "dependencies": { + "ini": "^4.1.3", + "kind-of": "^6.0.3", + "which": "^4.0.0" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/global-prefix/node_modules/isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", + "engines": { + "node": ">=16" + } + }, + "node_modules/global-prefix/node_modules/which": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", + "dependencies": { + "isexe": "^3.1.1" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^16.13.0 || >=18.0.0" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/immutable": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.7.tgz", + "integrity": "sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==", + "dev": true + }, + "node_modules/import-local": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.2.0.tgz", + "integrity": "sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==", + "dev": true, + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ini": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.3.tgz", + "integrity": "sha512-X7rqawQBvfdjS10YU1y1YVreA3SsLrW9dX2CewP2EbBJM4ypVNLDkO5y04gejPwKIY9lR+7r9gn3rFPt/kmWFg==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/interpret": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz", + "integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-core-module": { + "version": "2.15.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", + "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", + "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==" + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jackspeak": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", + "dev": true, + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jiti": { + "version": "1.21.6", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.6.tgz", + "integrity": "sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==", + "dev": true, + "bin": { + "jiti": "bin/jiti.js" + } + }, + "node_modules/jquery": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz", + "integrity": "sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg==" + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/json-stringify-pretty-compact": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/json-stringify-pretty-compact/-/json-stringify-pretty-compact-4.0.0.tgz", + "integrity": "sha512-3CNZ2DnrpByG9Nqj6Xo8vqbjT4F6N+tb4Gb28ESAZjYZ5yqvmc56J+/kuIwkaAMOyblTQhUW7PxMkUb8Q36N3Q==" + }, + "node_modules/kdbush": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/kdbush/-/kdbush-4.0.2.tgz", + "integrity": "sha512-WbCVYJ27Sz8zi9Q7Q0xHC+05iwkm3Znipc2XTlrnJbsHMYktW4hPhXUE8Ys1engBrvffoSCqbil1JQAa7clRpA==" + }, + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lilconfig": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", + "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true + }, + "node_modules/loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "dev": true, + "engines": { + "node": ">=6.11.5" + } + }, + "node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "dev": true + }, + "node_modules/maplibre-gl": { + "version": "4.7.1", + "resolved": "https://registry.npmjs.org/maplibre-gl/-/maplibre-gl-4.7.1.tgz", + "integrity": "sha512-lgL7XpIwsgICiL82ITplfS7IGwrB1OJIw/pCvprDp2dhmSSEBgmPzYRvwYYYvJGJD7fxUv1Tvpih4nZ6VrLuaA==", + "dependencies": { + "@mapbox/geojson-rewind": "^0.5.2", + "@mapbox/jsonlint-lines-primitives": "^2.0.2", + "@mapbox/point-geometry": "^0.1.0", + "@mapbox/tiny-sdf": "^2.0.6", + "@mapbox/unitbezier": "^0.0.1", + "@mapbox/vector-tile": "^1.3.1", + "@mapbox/whoots-js": "^3.1.0", + "@maplibre/maplibre-gl-style-spec": "^20.3.1", + "@types/geojson": "^7946.0.14", + "@types/geojson-vt": "3.2.5", + "@types/mapbox__point-geometry": "^0.1.4", + "@types/mapbox__vector-tile": "^1.3.4", + "@types/pbf": "^3.0.5", + "@types/supercluster": "^7.1.3", + "earcut": "^3.0.0", + "geojson-vt": "^4.0.2", + "gl-matrix": "^3.4.3", + "global-prefix": "^4.0.0", + "kdbush": "^4.0.2", + "murmurhash-js": "^1.0.0", + "pbf": "^3.3.0", + "potpack": "^2.0.0", + "quickselect": "^3.0.0", + "supercluster": "^8.0.1", + "tinyqueue": "^3.0.0", + "vt-pbf": "^3.1.3" + }, + "engines": { + "node": ">=16.14.0", + "npm": ">=8.1.0" + }, + "funding": { + "url": "https://github.com/maplibre/maplibre-gl-js?sponsor=1" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/micromatch/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dev": true, + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mini-svg-data-uri": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/mini-svg-data-uri/-/mini-svg-data-uri-1.4.4.tgz", + "integrity": "sha512-r9deDe9p5FJUPZAk3A59wGH7Ii9YrjjWw0jmw/liSbHl2CHiyXj6FcDXDu2K3TjVAXqiJdaw3xxwlZZr9E6nHg==", + "bin": { + "mini-svg-data-uri": "cli.js" + } + }, + "node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/murmurhash-js": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/murmurhash-js/-/murmurhash-js-1.0.0.tgz", + "integrity": "sha512-TvmkNhkv8yct0SVBSy+o8wYzXjE4Zz3PCesbfs8HiCXXdcTuocApFv11UWlNFWKYsP2okqrhb7JNlSm9InBhIw==" + }, + "node_modules/mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "dev": true, + "dependencies": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, + "node_modules/nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true + }, + "node_modules/node-addon-api": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", + "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", + "dev": true + }, + "node_modules/node-releases": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", + "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", + "dev": true + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-hash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", + "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", + "dev": true + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "node_modules/path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "dev": true, + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/pbf": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/pbf/-/pbf-3.3.0.tgz", + "integrity": "sha512-XDF38WCH3z5OV/OVa8GKUNtLAyneuzbCisx7QUCF8Q6Nutx0WnJrQe5O+kOtBlLfRNUws98Y58Lblp+NJG5T4Q==", + "dependencies": { + "ieee754": "^1.1.12", + "resolve-protobuf-schema": "^2.1.0" + }, + "bin": { + "pbf": "bin/pbf" + } + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true + }, + "node_modules/picomatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", + "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pmtiles": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/pmtiles/-/pmtiles-3.2.0.tgz", + "integrity": "sha512-4v3Nw5xeMxaUReLZQTz3PyM4VM/Lx/Xp/rc2GGEWMl0nqAmcb+gjyi+eOTwfPu8LnB0ash36hz0dV76uYvih5A==", + "dependencies": { + "@types/leaflet": "^1.9.8", + "fflate": "^0.8.0" + } + }, + "node_modules/postcss": { + "version": "8.4.47", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.47.tgz", + "integrity": "sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.7", + "picocolors": "^1.1.0", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-import": { + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz", + "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-js": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz", + "integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==", + "dev": true, + "dependencies": { + "camelcase-css": "^2.0.1" + }, + "engines": { + "node": "^12 || ^14 || >= 16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.4.21" + } + }, + "node_modules/postcss-load-config": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.2.tgz", + "integrity": "sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "lilconfig": "^3.0.0", + "yaml": "^2.3.4" + }, + "engines": { + "node": ">= 14" + }, + "peerDependencies": { + "postcss": ">=8.0.9", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "postcss": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/postcss-load-config/node_modules/lilconfig": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.2.tgz", + "integrity": "sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antonk52" + } + }, + "node_modules/postcss-nested": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.2.0.tgz", + "integrity": "sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "postcss-selector-parser": "^6.1.1" + }, + "engines": { + "node": ">=12.0" + }, + "peerDependencies": { + "postcss": "^8.2.14" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dev": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true + }, + "node_modules/potpack": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/potpack/-/potpack-2.0.0.tgz", + "integrity": "sha512-Q+/tYsFU9r7xoOJ+y/ZTtdVQwTWfzjbiXBDMM/JKUux3+QPP02iUuIoeBQ+Ot6oEDlC+/PGjB/5A3K7KKb7hcw==" + }, + "node_modules/protocol-buffers-schema": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/protocol-buffers-schema/-/protocol-buffers-schema-3.6.0.tgz", + "integrity": "sha512-TdDRD+/QNdrCGCE7v8340QyuXd4kIWIgapsE2+n/SaGiSSbomYl4TjHlvIoCWRpE7wFt02EpB35VVA2ImcBVqw==" + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/quickselect": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-3.0.0.tgz", + "integrity": "sha512-XdjUArbK4Bm5fLLvlm5KpTFOiOThgfWWI4axAZDWg4E/0mKdZyI9tNEfds27qCi1ze/vwTR16kvmmGhRra3c2g==" + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", + "dev": true, + "dependencies": { + "pify": "^2.3.0" + } + }, + "node_modules/readdirp": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.0.2.tgz", + "integrity": "sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==", + "dev": true, + "engines": { + "node": ">= 14.16.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/rechoir": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz", + "integrity": "sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==", + "dev": true, + "dependencies": { + "resolve": "^1.9.0" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==", + "dev": true + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-protobuf-schema": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/resolve-protobuf-schema/-/resolve-protobuf-schema-2.1.0.tgz", + "integrity": "sha512-kI5ffTiZWmJaS/huM8wZfEMer1eRd7oJQhDuxeCLe3t7N7mX3z94CN0xPxBQxFYQTSNz9T0i+v6inKqSdK8xrQ==", + "dependencies": { + "protocol-buffers-schema": "^3.3.1" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/rw": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/rw/-/rw-1.3.3.tgz", + "integrity": "sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ==" + }, + "node_modules/rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "dev": true, + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/sass": { + "version": "1.80.4", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.80.4.tgz", + "integrity": "sha512-rhMQ2tSF5CsuuspvC94nPM9rToiAFw2h3JTrLlgmNw1MH79v8Cr3DH6KF6o6r+8oofY3iYVPUf66KzC8yuVN1w==", + "dev": true, + "dependencies": { + "@parcel/watcher": "^2.4.1", + "chokidar": "^4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/serialize-javascript": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", + "dev": true, + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/shallow-clone": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/shell-quote": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", + "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/source-map-support/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/spawn-command": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/spawn-command/-/spawn-command-0.0.2.tgz", + "integrity": "sha512-zC8zGoGkmc8J9ndvml8Xksr1Amk9qBujgbF0JAIWO7kXr43w0h/0GJNM/Vustixu+YE8N/MTrQ7N31FvHUACxQ==", + "dev": true + }, + "node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/string-width-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/sucrase": { + "version": "3.35.0", + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", + "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.2", + "commander": "^4.0.0", + "glob": "^10.3.10", + "lines-and-columns": "^1.1.6", + "mz": "^2.7.0", + "pirates": "^4.0.1", + "ts-interface-checker": "^0.1.9" + }, + "bin": { + "sucrase": "bin/sucrase", + "sucrase-node": "bin/sucrase-node" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/supercluster": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/supercluster/-/supercluster-8.0.1.tgz", + "integrity": "sha512-IiOea5kJ9iqzD2t7QJq/cREyLHTtSmUT6gQsweojg9WH2sYJqZK9SswTu6jrscO6D1G5v5vYZ9ru/eq85lXeZQ==", + "dependencies": { + "kdbush": "^4.0.2" + } + }, + "node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/tailwindcss": { + "version": "3.4.14", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.14.tgz", + "integrity": "sha512-IcSvOcTRcUtQQ7ILQL5quRDg7Xs93PdJEk1ZLbhhvJc7uj/OAhYOnruEiwnGgBvUtaUAJ8/mhSw1o8L2jCiENA==", + "dev": true, + "dependencies": { + "@alloc/quick-lru": "^5.2.0", + "arg": "^5.0.2", + "chokidar": "^3.5.3", + "didyoumean": "^1.2.2", + "dlv": "^1.1.3", + "fast-glob": "^3.3.0", + "glob-parent": "^6.0.2", + "is-glob": "^4.0.3", + "jiti": "^1.21.0", + "lilconfig": "^2.1.0", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "object-hash": "^3.0.0", + "picocolors": "^1.0.0", + "postcss": "^8.4.23", + "postcss-import": "^15.1.0", + "postcss-js": "^4.0.1", + "postcss-load-config": "^4.0.1", + "postcss-nested": "^6.0.1", + "postcss-selector-parser": "^6.0.11", + "resolve": "^1.22.2", + "sucrase": "^3.32.0" + }, + "bin": { + "tailwind": "lib/cli.js", + "tailwindcss": "lib/cli.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/tailwindcss/node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dev": true, + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/tailwindcss/node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/tailwindcss/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/tailwindcss/node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/terser": { + "version": "5.36.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.36.0.tgz", + "integrity": "sha512-IYV9eNMuFAV4THUspIRXkLakHnV6XO7FEdtKjf/mDyrnqUg9LnlOn6/RwRvM9SZjR4GUq8Nk8zj67FzVARr74w==", + "dev": true, + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser-webpack-plugin": { + "version": "5.3.10", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz", + "integrity": "sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.20", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.1", + "terser": "^5.26.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "uglify-js": { + "optional": true + } + } + }, + "node_modules/terser/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "node_modules/thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "dev": true, + "dependencies": { + "any-promise": "^1.0.0" + } + }, + "node_modules/thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", + "dev": true, + "dependencies": { + "thenify": ">= 3.1.0 < 4" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/tinyqueue": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/tinyqueue/-/tinyqueue-3.0.0.tgz", + "integrity": "sha512-gRa9gwYU3ECmQYv3lslts5hxuIa90veaEcxDYuu3QGOIAEM2mOZkVHp48ANJuu1CURtRdHKUBY5Lm1tHV+sD4g==" + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/tree-kill": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", + "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", + "dev": true, + "bin": { + "tree-kill": "cli.js" + } + }, + "node_modules/ts-interface-checker": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", + "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", + "dev": true + }, + "node_modules/ts-loader": { + "version": "9.5.1", + "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.5.1.tgz", + "integrity": "sha512-rNH3sK9kGZcH9dYzC7CewQm4NtxJTjSEVRJ2DyBZR7f8/wcta+iV44UPCXc5+nzDzivKtlzV6c9P4e+oFhDLYg==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "enhanced-resolve": "^5.0.0", + "micromatch": "^4.0.0", + "semver": "^7.3.4", + "source-map": "^0.7.4" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "typescript": "*", + "webpack": "^5.0.0" + } + }, + "node_modules/tslib": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.0.tgz", + "integrity": "sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA==", + "dev": true + }, + "node_modules/typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/undici-types": { + "version": "6.19.8", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", + "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", + "dev": true + }, + "node_modules/update-browserslist-db": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz", + "integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.0" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "node_modules/vt-pbf": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/vt-pbf/-/vt-pbf-3.1.3.tgz", + "integrity": "sha512-2LzDFzt0mZKZ9IpVF2r69G9bXaP2Q2sArJCmcCgvfTdCCZzSyz4aCLoQyUilu37Ll56tCblIZrXFIjNUpGIlmA==", + "dependencies": { + "@mapbox/point-geometry": "0.1.0", + "@mapbox/vector-tile": "^1.3.1", + "pbf": "^3.2.1" + } + }, + "node_modules/watchpack": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz", + "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==", + "dev": true, + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpack": { + "version": "5.95.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.95.0.tgz", + "integrity": "sha512-2t3XstrKULz41MNMBF+cJ97TyHdyQ8HCt//pqErqDvNjU9YQBnZxIHa11VXsi7F3mb5/aO2tuDxdeTPdU7xu9Q==", + "dev": true, + "dependencies": { + "@types/estree": "^1.0.5", + "@webassemblyjs/ast": "^1.12.1", + "@webassemblyjs/wasm-edit": "^1.12.1", + "@webassemblyjs/wasm-parser": "^1.12.1", + "acorn": "^8.7.1", + "acorn-import-attributes": "^1.9.5", + "browserslist": "^4.21.10", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.17.1", + "es-module-lexer": "^1.2.1", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.11", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.2.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.3.10", + "watchpack": "^2.4.1", + "webpack-sources": "^3.2.3" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-cli": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.10.0.tgz", + "integrity": "sha512-NLhDfH/h4O6UOy+0LSso42xvYypClINuMNBVVzX4vX98TmTaTUxwRbXdhucbFMd2qLaCTcLq/PdYrvi8onw90w==", + "dev": true, + "dependencies": { + "@discoveryjs/json-ext": "^0.5.0", + "@webpack-cli/configtest": "^1.2.0", + "@webpack-cli/info": "^1.5.0", + "@webpack-cli/serve": "^1.7.0", + "colorette": "^2.0.14", + "commander": "^7.0.0", + "cross-spawn": "^7.0.3", + "fastest-levenshtein": "^1.0.12", + "import-local": "^3.0.2", + "interpret": "^2.2.0", + "rechoir": "^0.7.0", + "webpack-merge": "^5.7.3" + }, + "bin": { + "webpack-cli": "bin/cli.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "4.x.x || 5.x.x" + }, + "peerDependenciesMeta": { + "@webpack-cli/generators": { + "optional": true + }, + "@webpack-cli/migrate": { + "optional": true + }, + "webpack-bundle-analyzer": { + "optional": true + }, + "webpack-dev-server": { + "optional": true + } + } + }, + "node_modules/webpack-cli/node_modules/commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/webpack-merge": { + "version": "5.10.0", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.10.0.tgz", + "integrity": "sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA==", + "dev": true, + "dependencies": { + "clone-deep": "^4.0.1", + "flat": "^5.0.2", + "wildcard": "^2.0.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "dev": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/wildcard": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.1.tgz", + "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==", + "dev": true + }, + "node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/wrap-ansi-cjs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yaml": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.6.0.tgz", + "integrity": "sha512-a6ae//JvKDEra2kdi1qzCyrJW/WZCgFi8ydDV+eXExl95t+5R+ijnqHJbz9tmMh8FUjx3iv2fCQ4dclAQlO2UQ==", + "dev": true, + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/yargs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + } + }, + "dependencies": { + "@alloc/quick-lru": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", + "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==", + "dev": true + }, + "@babel/runtime": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.26.0.tgz", + "integrity": "sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw==", + "dev": true, + "requires": { + "regenerator-runtime": "^0.14.0" + } + }, + "@discoveryjs/json-ext": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", + "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", + "dev": true + }, + "@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, + "requires": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + } + }, + "@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true + }, + "@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "dev": true + }, + "@jridgewell/source-map": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz", + "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", + "dev": true, + "requires": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" + } + }, + "@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", + "dev": true + }, + "@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "@mapbox/geojson-rewind": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/@mapbox/geojson-rewind/-/geojson-rewind-0.5.2.tgz", + "integrity": "sha512-tJaT+RbYGJYStt7wI3cq4Nl4SXxG8W7JDG5DMJu97V25RnbNg3QtQtf+KD+VLjNpWKYsRvXDNmNrBgEETr1ifA==", + "requires": { + "get-stream": "^6.0.1", + "minimist": "^1.2.6" + } + }, + "@mapbox/jsonlint-lines-primitives": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@mapbox/jsonlint-lines-primitives/-/jsonlint-lines-primitives-2.0.2.tgz", + "integrity": "sha512-rY0o9A5ECsTQRVhv7tL/OyDpGAoUB4tTvLiW1DSzQGq4bvTPhNw1VpSNjDJc5GFZ2XuyOtSWSVN05qOtcD71qQ==" + }, + "@mapbox/point-geometry": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@mapbox/point-geometry/-/point-geometry-0.1.0.tgz", + "integrity": "sha512-6j56HdLTwWGO0fJPlrZtdU/B13q8Uwmo18Ck2GnGgN9PCFyKTZ3UbXeEdRFh18i9XQ92eH2VdtpJHpBD3aripQ==" + }, + "@mapbox/tiny-sdf": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@mapbox/tiny-sdf/-/tiny-sdf-2.0.6.tgz", + "integrity": "sha512-qMqa27TLw+ZQz5Jk+RcwZGH7BQf5G/TrutJhspsca/3SHwmgKQ1iq+d3Jxz5oysPVYTGP6aXxCo5Lk9Er6YBAA==" + }, + "@mapbox/unitbezier": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/@mapbox/unitbezier/-/unitbezier-0.0.1.tgz", + "integrity": "sha512-nMkuDXFv60aBr9soUG5q+GvZYL+2KZHVvsqFCzqnkGEf46U2fvmytHaEVc1/YZbiLn8X+eR3QzX1+dwDO1lxlw==" + }, + "@mapbox/vector-tile": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@mapbox/vector-tile/-/vector-tile-1.3.1.tgz", + "integrity": "sha512-MCEddb8u44/xfQ3oD+Srl/tNcQoqTw3goGk2oLsrFxOTc3dUp+kAnby3PvAeeBYSMSjSPD1nd1AJA6W49WnoUw==", + "requires": { + "@mapbox/point-geometry": "~0.1.0" + } + }, + "@mapbox/whoots-js": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@mapbox/whoots-js/-/whoots-js-3.1.0.tgz", + "integrity": "sha512-Es6WcD0nO5l+2BOQS4uLfNPYQaNDfbot3X1XUoloz+x0mPDS3eeORZJl06HXjwBG1fOGwCRnzK88LMdxKRrd6Q==" + }, + "@maplibre/maplibre-gl-style-spec": { + "version": "20.4.0", + "resolved": "https://registry.npmjs.org/@maplibre/maplibre-gl-style-spec/-/maplibre-gl-style-spec-20.4.0.tgz", + "integrity": "sha512-AzBy3095fTFPjDjmWpR2w6HVRAZJ6hQZUCwk5Plz6EyfnfuQW1odeW5i2Ai47Y6TBA2hQnC+azscjBSALpaWgw==", + "requires": { + "@mapbox/jsonlint-lines-primitives": "~2.0.2", + "@mapbox/unitbezier": "^0.0.1", + "json-stringify-pretty-compact": "^4.0.0", + "minimist": "^1.2.8", + "quickselect": "^2.0.0", + "rw": "^1.3.3", + "tinyqueue": "^3.0.0" + }, + "dependencies": { + "quickselect": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-2.0.0.tgz", + "integrity": "sha512-RKJ22hX8mHe3Y6wH/N3wCM6BWtjaxIyyUIkpHOvfFnxdI4yD4tBXEBKSbriGujF6jnSVkJrffuo6vxACiSSxIw==" + } + } + }, + "@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + } + }, + "@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true + }, + "@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "requires": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + } + }, + "@parcel/watcher": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.4.1.tgz", + "integrity": "sha512-HNjmfLQEVRZmHRET336f20H/8kOozUGwk7yajvsonjNxbj2wBTK1WsQuHkD5yYh9RxFGL2EyDHryOihOwUoKDA==", + "dev": true, + "requires": { + "@parcel/watcher-android-arm64": "2.4.1", + "@parcel/watcher-darwin-arm64": "2.4.1", + "@parcel/watcher-darwin-x64": "2.4.1", + "@parcel/watcher-freebsd-x64": "2.4.1", + "@parcel/watcher-linux-arm-glibc": "2.4.1", + "@parcel/watcher-linux-arm64-glibc": "2.4.1", + "@parcel/watcher-linux-arm64-musl": "2.4.1", + "@parcel/watcher-linux-x64-glibc": "2.4.1", + "@parcel/watcher-linux-x64-musl": "2.4.1", + "@parcel/watcher-win32-arm64": "2.4.1", + "@parcel/watcher-win32-ia32": "2.4.1", + "@parcel/watcher-win32-x64": "2.4.1", + "detect-libc": "^1.0.3", + "is-glob": "^4.0.3", + "micromatch": "^4.0.5", + "node-addon-api": "^7.0.0" + } + }, + "@parcel/watcher-android-arm64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.4.1.tgz", + "integrity": "sha512-LOi/WTbbh3aTn2RYddrO8pnapixAziFl6SMxHM69r3tvdSm94JtCenaKgk1GRg5FJ5wpMCpHeW+7yqPlvZv7kg==", + "dev": true, + "optional": true + }, + "@parcel/watcher-darwin-arm64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.4.1.tgz", + "integrity": "sha512-ln41eihm5YXIY043vBrrHfn94SIBlqOWmoROhsMVTSXGh0QahKGy77tfEywQ7v3NywyxBBkGIfrWRHm0hsKtzA==", + "dev": true, + "optional": true + }, + "@parcel/watcher-darwin-x64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.4.1.tgz", + "integrity": "sha512-yrw81BRLjjtHyDu7J61oPuSoeYWR3lDElcPGJyOvIXmor6DEo7/G2u1o7I38cwlcoBHQFULqF6nesIX3tsEXMg==", + "dev": true, + "optional": true + }, + "@parcel/watcher-freebsd-x64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.4.1.tgz", + "integrity": "sha512-TJa3Pex/gX3CWIx/Co8k+ykNdDCLx+TuZj3f3h7eOjgpdKM+Mnix37RYsYU4LHhiYJz3DK5nFCCra81p6g050w==", + "dev": true, + "optional": true + }, + "@parcel/watcher-linux-arm-glibc": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.4.1.tgz", + "integrity": "sha512-4rVYDlsMEYfa537BRXxJ5UF4ddNwnr2/1O4MHM5PjI9cvV2qymvhwZSFgXqbS8YoTk5i/JR0L0JDs69BUn45YA==", + "dev": true, + "optional": true + }, + "@parcel/watcher-linux-arm64-glibc": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.4.1.tgz", + "integrity": "sha512-BJ7mH985OADVLpbrzCLgrJ3TOpiZggE9FMblfO65PlOCdG++xJpKUJ0Aol74ZUIYfb8WsRlUdgrZxKkz3zXWYA==", + "dev": true, + "optional": true + }, + "@parcel/watcher-linux-arm64-musl": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.4.1.tgz", + "integrity": "sha512-p4Xb7JGq3MLgAfYhslU2SjoV9G0kI0Xry0kuxeG/41UfpjHGOhv7UoUDAz/jb1u2elbhazy4rRBL8PegPJFBhA==", + "dev": true, + "optional": true + }, + "@parcel/watcher-linux-x64-glibc": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.4.1.tgz", + "integrity": "sha512-s9O3fByZ/2pyYDPoLM6zt92yu6P4E39a03zvO0qCHOTjxmt3GHRMLuRZEWhWLASTMSrrnVNWdVI/+pUElJBBBg==", + "dev": true, + "optional": true + }, + "@parcel/watcher-linux-x64-musl": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.4.1.tgz", + "integrity": "sha512-L2nZTYR1myLNST0O632g0Dx9LyMNHrn6TOt76sYxWLdff3cB22/GZX2UPtJnaqQPdCRoszoY5rcOj4oMTtp5fQ==", + "dev": true, + "optional": true + }, + "@parcel/watcher-win32-arm64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.4.1.tgz", + "integrity": "sha512-Uq2BPp5GWhrq/lcuItCHoqxjULU1QYEcyjSO5jqqOK8RNFDBQnenMMx4gAl3v8GiWa59E9+uDM7yZ6LxwUIfRg==", + "dev": true, + "optional": true + }, + "@parcel/watcher-win32-ia32": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.4.1.tgz", + "integrity": "sha512-maNRit5QQV2kgHFSYwftmPBxiuK5u4DXjbXx7q6eKjq5dsLXZ4FJiVvlcw35QXzk0KrUecJmuVFbj4uV9oYrcw==", + "dev": true, + "optional": true + }, + "@parcel/watcher-win32-x64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.4.1.tgz", + "integrity": "sha512-+DvS92F9ezicfswqrvIRM2njcYJbd5mb9CUgtrHCHmvn7pPPa+nMDRu1o1bYYz/l5IB2NVGNJWiH7h1E58IF2A==", + "dev": true, + "optional": true + }, + "@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, + "optional": true + }, + "@popperjs/core": { + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", + "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==" + }, + "@rollup/plugin-node-resolve": { + "version": "15.3.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-15.3.0.tgz", + "integrity": "sha512-9eO5McEICxMzJpDW9OnMYSv4Sta3hmt7VtBFz5zR9273suNOydOyq/FrGeGy+KsTRFm8w0SLVhzig2ILFT63Ag==", + "requires": { + "@rollup/pluginutils": "^5.0.1", + "@types/resolve": "1.20.2", + "deepmerge": "^4.2.2", + "is-module": "^1.0.0", + "resolve": "^1.22.1" + } + }, + "@rollup/pluginutils": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.3.tgz", + "integrity": "sha512-Pnsb6f32CD2W3uCaLZIzDmeFyQ2b8UWMFI7xtwUezpcGBDVDW6y9XgAWIlARiGAo6eNF5FK5aQTr0LFyNyqq5A==", + "requires": { + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^4.0.2" + } + }, + "@types/bootstrap": { + "version": "5.2.10", + "resolved": "https://registry.npmjs.org/@types/bootstrap/-/bootstrap-5.2.10.tgz", + "integrity": "sha512-F2X+cd6551tep0MvVZ6nM8v7XgGN/twpdNDjqS1TUM7YFNEtQYWk+dKAnH+T1gr6QgCoGMPl487xw/9hXooa2g==", + "dev": true, + "requires": { + "@popperjs/core": "^2.9.2" + } + }, + "@types/estree": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==" + }, + "@types/geojson": { + "version": "7946.0.14", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.14.tgz", + "integrity": "sha512-WCfD5Ht3ZesJUsONdhvm84dmzWOiOzOAqOncN0++w0lBw1o8OuDNJF2McvvCef/yBqb/HYRahp1BYtODFQ8bRg==" + }, + "@types/geojson-vt": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/@types/geojson-vt/-/geojson-vt-3.2.5.tgz", + "integrity": "sha512-qDO7wqtprzlpe8FfQ//ClPV9xiuoh2nkIgiouIptON9w5jvD/fA4szvP9GBlDVdJ5dldAl0kX/sy3URbWwLx0g==", + "requires": { + "@types/geojson": "*" + } + }, + "@types/jquery": { + "version": "3.5.32", + "resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-3.5.32.tgz", + "integrity": "sha512-b9Xbf4CkMqS02YH8zACqN1xzdxc3cO735Qe5AbSUFmyOiaWAbcpqh9Wna+Uk0vgACvoQHpWDg2rGdHkYPLmCiQ==", + "dev": true, + "requires": { + "@types/sizzle": "*" + } + }, + "@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true + }, + "@types/leaflet": { + "version": "1.9.14", + "resolved": "https://registry.npmjs.org/@types/leaflet/-/leaflet-1.9.14.tgz", + "integrity": "sha512-sx2q6MDJaajwhKeVgPSvqXd8rhNJSTA3tMidQGduZn9S6WBYxDkCpSpV5xXEmSg7Cgdk/5vJGhVF1kMYLzauBg==", + "requires": { + "@types/geojson": "*" + } + }, + "@types/mapbox__point-geometry": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/@types/mapbox__point-geometry/-/mapbox__point-geometry-0.1.4.tgz", + "integrity": "sha512-mUWlSxAmYLfwnRBmgYV86tgYmMIICX4kza8YnE/eIlywGe2XoOxlpVnXWwir92xRLjwyarqwpu2EJKD2pk0IUA==" + }, + "@types/mapbox__vector-tile": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/@types/mapbox__vector-tile/-/mapbox__vector-tile-1.3.4.tgz", + "integrity": "sha512-bpd8dRn9pr6xKvuEBQup8pwQfD4VUyqO/2deGjfpe6AwC8YRlyEipvefyRJUSiCJTZuCb8Pl1ciVV5ekqJ96Bg==", + "requires": { + "@types/geojson": "*", + "@types/mapbox__point-geometry": "*", + "@types/pbf": "*" + } + }, + "@types/node": { + "version": "22.8.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.8.2.tgz", + "integrity": "sha512-NzaRNFV+FZkvK/KLCsNdTvID0SThyrs5SHB6tsD/lajr22FGC73N2QeDPM2wHtVde8mgcXuSsHQkH5cX1pbPLw==", + "dev": true, + "requires": { + "undici-types": "~6.19.8" + } + }, + "@types/pbf": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@types/pbf/-/pbf-3.0.5.tgz", + "integrity": "sha512-j3pOPiEcWZ34R6a6mN07mUkM4o4Lwf6hPNt8eilOeZhTFbxFXmKhvXl9Y28jotFPaI1bpPDJsbCprUoNke6OrA==" + }, + "@types/resolve": { + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.20.2.tgz", + "integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==" + }, + "@types/sizzle": { + "version": "2.3.9", + "resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.9.tgz", + "integrity": "sha512-xzLEyKB50yqCUPUJkIsrVvoWNfFUbIZI+RspLWt8u+tIW/BetMBZtgV2LY/2o+tYH8dRvQ+eoPf3NdhQCcLE2w==", + "dev": true + }, + "@types/supercluster": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/@types/supercluster/-/supercluster-7.1.3.tgz", + "integrity": "sha512-Z0pOY34GDFl3Q6hUFYf3HkTwKEE02e7QgtJppBt+beEAxnyOpJua+voGFvxINBHa06GwLFFym7gRPY2SiKIfIA==", + "requires": { + "@types/geojson": "*" + } + }, + "@webassemblyjs/ast": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz", + "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==", + "dev": true, + "requires": { + "@webassemblyjs/helper-numbers": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6" + } + }, + "@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", + "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==", + "dev": true + }, + "@webassemblyjs/helper-api-error": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", + "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==", + "dev": true + }, + "@webassemblyjs/helper-buffer": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz", + "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==", + "dev": true + }, + "@webassemblyjs/helper-numbers": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", + "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", + "dev": true, + "requires": { + "@webassemblyjs/floating-point-hex-parser": "1.11.6", + "@webassemblyjs/helper-api-error": "1.11.6", + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", + "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==", + "dev": true + }, + "@webassemblyjs/helper-wasm-section": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz", + "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/wasm-gen": "1.12.1" + } + }, + "@webassemblyjs/ieee754": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", + "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", + "dev": true, + "requires": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "@webassemblyjs/leb128": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", + "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", + "dev": true, + "requires": { + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/utf8": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", + "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", + "dev": true + }, + "@webassemblyjs/wasm-edit": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz", + "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/helper-wasm-section": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-opt": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1", + "@webassemblyjs/wast-printer": "1.12.1" + } + }, + "@webassemblyjs/wasm-gen": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz", + "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" + } + }, + "@webassemblyjs/wasm-opt": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz", + "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1" + } + }, + "@webassemblyjs/wasm-parser": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz", + "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-api-error": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" + } + }, + "@webassemblyjs/wast-printer": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz", + "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.12.1", + "@xtuc/long": "4.2.2" + } + }, + "@webpack-cli/configtest": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.2.0.tgz", + "integrity": "sha512-4FB8Tj6xyVkyqjj1OaTqCjXYULB9FMkqQ8yGrZjRDrYh0nOE+7Lhs45WioWQQMV+ceFlE368Ukhe6xdvJM9Egg==", + "dev": true, + "requires": {} + }, + "@webpack-cli/info": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.5.0.tgz", + "integrity": "sha512-e8tSXZpw2hPl2uMJY6fsMswaok5FdlGNRTktvFk2sD8RjH0hE2+XistawJx1vmKteh4NmGmNUrp+Tb2w+udPcQ==", + "dev": true, + "requires": { + "envinfo": "^7.7.3" + } + }, + "@webpack-cli/serve": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.7.0.tgz", + "integrity": "sha512-oxnCNGj88fL+xzV+dacXs44HcDwf1ovs3AuEzvP7mqXw7fQntqIhQ1BRmynh4qEKQSSSRSWVyXRjmTbZIX9V2Q==", + "dev": true, + "requires": {} + }, + "@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true + }, + "@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true + }, + "acorn": { + "version": "8.14.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", + "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", + "dev": true + }, + "acorn-import-attributes": { + "version": "1.9.5", + "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz", + "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==", + "dev": true, + "requires": {} + }, + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "requires": {} + }, + "ansi-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "dev": true + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", + "dev": true + }, + "anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "dependencies": { + "picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true + } + } + }, + "arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", + "dev": true + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "dev": true + }, + "bootstrap": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.3.tgz", + "integrity": "sha512-8HLCdWgyoMguSO9o+aH+iuZ+aht+mzW0u3HIMzVu7Srrpv7EBBxTnrFlSCskwdY1+EOFQSm7uMJhNQHkdPcmjg==", + "requires": {} + }, + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0" + } + }, + "braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "requires": { + "fill-range": "^7.1.1" + } + }, + "browserslist": { + "version": "4.24.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.2.tgz", + "integrity": "sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001669", + "electron-to-chromium": "^1.5.41", + "node-releases": "^2.0.18", + "update-browserslist-db": "^1.1.1" + } + }, + "buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "dev": true + }, + "caniuse-lite": { + "version": "1.0.30001674", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001674.tgz", + "integrity": "sha512-jOsKlZVRnzfhLojb+Ykb+gyUSp9Xb57So+fAiFlLzzTKpqg8xxSav0e40c8/4F/v9N8QSvrRRaLeVzQbLqomYw==", + "dev": true + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "dependencies": { + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "chokidar": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.1.tgz", + "integrity": "sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==", + "dev": true, + "requires": { + "readdirp": "^4.0.1" + } + }, + "chrome-trace-event": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz", + "integrity": "sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==", + "dev": true + }, + "cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + } + } + }, + "clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "dev": true + }, + "commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true + }, + "concurrently": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/concurrently/-/concurrently-7.6.0.tgz", + "integrity": "sha512-BKtRgvcJGeZ4XttiDiNcFiRlxoAeZOseqUvyYRUp/Vtd+9p1ULmeoSqGsDA+2ivdeDFpqrJvGvmI+StKfKl5hw==", + "dev": true, + "requires": { + "chalk": "^4.1.0", + "date-fns": "^2.29.1", + "lodash": "^4.17.21", + "rxjs": "^7.0.0", + "shell-quote": "^1.7.3", + "spawn-command": "^0.0.2-1", + "supports-color": "^8.1.0", + "tree-kill": "^1.2.2", + "yargs": "^17.3.1" + } + }, + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true + }, + "date-fns": { + "version": "2.30.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.30.0.tgz", + "integrity": "sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==", + "dev": true, + "requires": { + "@babel/runtime": "^7.21.0" + } + }, + "deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==" + }, + "detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", + "dev": true + }, + "didyoumean": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", + "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", + "dev": true + }, + "dlv": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", + "dev": true + }, + "earcut": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/earcut/-/earcut-3.0.0.tgz", + "integrity": "sha512-41Fs7Q/PLq1SDbqjsgcY7GA42T0jvaCNGXgGtsNdvg+Yv8eIu06bxv4/PoREkZ9nMDNwnUSG9OFB9+yv8eKhDg==" + }, + "eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true + }, + "electron-to-chromium": { + "version": "1.5.49", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.49.tgz", + "integrity": "sha512-ZXfs1Of8fDb6z7WEYZjXpgIRF6MEu8JdeGA0A40aZq6OQbS+eJpnnV49epZRna2DU/YsEjSQuGtQPPtvt6J65A==", + "dev": true + }, + "emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "enhanced-resolve": { + "version": "5.17.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz", + "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + } + }, + "envinfo": { + "version": "7.14.0", + "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.14.0.tgz", + "integrity": "sha512-CO40UI41xDQzhLB1hWyqUKgFhs250pNcGbyGKe1l/e4FSaI/+YE4IMG76GDt0In67WLPACIITC+sOi08x4wIvg==", + "dev": true + }, + "es-module-lexer": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.4.tgz", + "integrity": "sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==", + "dev": true + }, + "escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true + }, + "eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + } + }, + "esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "requires": { + "estraverse": "^5.2.0" + }, + "dependencies": { + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + } + } + }, + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true + }, + "estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" + }, + "events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true + }, + "fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "fast-glob": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "dependencies": { + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + } + } + }, + "fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "fastest-levenshtein": { + "version": "1.0.16", + "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz", + "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==", + "dev": true + }, + "fastq": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "dev": true, + "requires": { + "reusify": "^1.0.4" + } + }, + "fflate": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.8.2.tgz", + "integrity": "sha512-cPJU47OaAoCbg0pBvzsgpTPhmhqI5eJjh/JIu8tPj5q+T7iLvW/JAYUqmE7KOB4R1ZyEhzBaIQpQpardBF5z8A==" + }, + "fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "dev": true + }, + "flowbite": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/flowbite/-/flowbite-2.5.2.tgz", + "integrity": "sha512-kwFD3n8/YW4EG8GlY3Od9IoKND97kitO+/ejISHSqpn3vw2i5K/+ZI8Jm2V+KC4fGdnfi0XZ+TzYqQb4Q1LshA==", + "requires": { + "@popperjs/core": "^2.9.3", + "flowbite-datepicker": "^1.3.0", + "mini-svg-data-uri": "^1.4.3" + } + }, + "flowbite-datepicker": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/flowbite-datepicker/-/flowbite-datepicker-1.3.0.tgz", + "integrity": "sha512-CLVqzuoE2vkUvWYK/lJ6GzT0be5dlTbH3uuhVwyB67+PjqJWABm2wv68xhBf5BqjpBxvTSQ3mrmLHpPJ2tvrSQ==", + "requires": { + "@rollup/plugin-node-resolve": "^15.2.3", + "flowbite": "^2.0.0" + } + }, + "foreground-child": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz", + "integrity": "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==", + "dev": true, + "requires": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + } + }, + "fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "optional": true + }, + "function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==" + }, + "geojson-vt": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/geojson-vt/-/geojson-vt-4.0.2.tgz", + "integrity": "sha512-AV9ROqlNqoZEIJGfm1ncNjEXfkz2hdFlZf0qkVfmkwdKa8vj7H16YUOT81rJw1rdFhyEDlN2Tds91p/glzbl5A==" + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==" + }, + "gl-matrix": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/gl-matrix/-/gl-matrix-3.4.3.tgz", + "integrity": "sha512-wcCp8vu8FT22BnvKVPjXa/ICBWRq/zjFfdofZy1WSpQZpphblv12/bOQLBC1rMM7SGOFS9ltVmKOHil5+Ml7gA==" + }, + "glob": { + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "dev": true, + "requires": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + } + }, + "glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "requires": { + "is-glob": "^4.0.3" + } + }, + "glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "dev": true + }, + "global-prefix": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-4.0.0.tgz", + "integrity": "sha512-w0Uf9Y9/nyHinEk5vMJKRie+wa4kR5hmDbEhGGds/kG1PwGLLHKRoNMeJOyCQjjBkANlnScqgzcFwGHgmgLkVA==", + "requires": { + "ini": "^4.1.3", + "kind-of": "^6.0.3", + "which": "^4.0.0" + }, + "dependencies": { + "isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==" + }, + "which": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", + "requires": { + "isexe": "^3.1.1" + } + } + } + }, + "graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "requires": { + "function-bind": "^1.1.2" + } + }, + "ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" + }, + "immutable": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.7.tgz", + "integrity": "sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==", + "dev": true + }, + "import-local": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.2.0.tgz", + "integrity": "sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==", + "dev": true, + "requires": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + } + }, + "ini": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.3.tgz", + "integrity": "sha512-X7rqawQBvfdjS10YU1y1YVreA3SsLrW9dX2CewP2EbBJM4ypVNLDkO5y04gejPwKIY9lR+7r9gn3rFPt/kmWFg==" + }, + "interpret": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz", + "integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==", + "dev": true + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-core-module": { + "version": "2.15.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", + "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", + "requires": { + "hasown": "^2.0.2" + } + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", + "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==" + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true + }, + "jackspeak": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", + "dev": true, + "requires": { + "@isaacs/cliui": "^8.0.2", + "@pkgjs/parseargs": "^0.11.0" + } + }, + "jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + } + }, + "jiti": { + "version": "1.21.6", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.6.tgz", + "integrity": "sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==", + "dev": true + }, + "jquery": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz", + "integrity": "sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg==" + }, + "json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "json-stringify-pretty-compact": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/json-stringify-pretty-compact/-/json-stringify-pretty-compact-4.0.0.tgz", + "integrity": "sha512-3CNZ2DnrpByG9Nqj6Xo8vqbjT4F6N+tb4Gb28ESAZjYZ5yqvmc56J+/kuIwkaAMOyblTQhUW7PxMkUb8Q36N3Q==" + }, + "kdbush": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/kdbush/-/kdbush-4.0.2.tgz", + "integrity": "sha512-WbCVYJ27Sz8zi9Q7Q0xHC+05iwkm3Znipc2XTlrnJbsHMYktW4hPhXUE8Ys1engBrvffoSCqbil1JQAa7clRpA==" + }, + "kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==" + }, + "lilconfig": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", + "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", + "dev": true + }, + "lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true + }, + "loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "dev": true + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "dev": true + }, + "maplibre-gl": { + "version": "4.7.1", + "resolved": "https://registry.npmjs.org/maplibre-gl/-/maplibre-gl-4.7.1.tgz", + "integrity": "sha512-lgL7XpIwsgICiL82ITplfS7IGwrB1OJIw/pCvprDp2dhmSSEBgmPzYRvwYYYvJGJD7fxUv1Tvpih4nZ6VrLuaA==", + "requires": { + "@mapbox/geojson-rewind": "^0.5.2", + "@mapbox/jsonlint-lines-primitives": "^2.0.2", + "@mapbox/point-geometry": "^0.1.0", + "@mapbox/tiny-sdf": "^2.0.6", + "@mapbox/unitbezier": "^0.0.1", + "@mapbox/vector-tile": "^1.3.1", + "@mapbox/whoots-js": "^3.1.0", + "@maplibre/maplibre-gl-style-spec": "^20.3.1", + "@types/geojson": "^7946.0.14", + "@types/geojson-vt": "3.2.5", + "@types/mapbox__point-geometry": "^0.1.4", + "@types/mapbox__vector-tile": "^1.3.4", + "@types/pbf": "^3.0.5", + "@types/supercluster": "^7.1.3", + "earcut": "^3.0.0", + "geojson-vt": "^4.0.2", + "gl-matrix": "^3.4.3", + "global-prefix": "^4.0.0", + "kdbush": "^4.0.2", + "murmurhash-js": "^1.0.0", + "pbf": "^3.3.0", + "potpack": "^2.0.0", + "quickselect": "^3.0.0", + "supercluster": "^8.0.1", + "tinyqueue": "^3.0.0", + "vt-pbf": "^3.1.3" + } + }, + "merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true + }, + "micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, + "requires": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "dependencies": { + "picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true + } + } + }, + "mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true + }, + "mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dev": true, + "requires": { + "mime-db": "1.52.0" + } + }, + "mini-svg-data-uri": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/mini-svg-data-uri/-/mini-svg-data-uri-1.4.4.tgz", + "integrity": "sha512-r9deDe9p5FJUPZAk3A59wGH7Ii9YrjjWw0jmw/liSbHl2CHiyXj6FcDXDu2K3TjVAXqiJdaw3xxwlZZr9E6nHg==" + }, + "minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "requires": { + "brace-expansion": "^2.0.1" + } + }, + "minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==" + }, + "minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "dev": true + }, + "murmurhash-js": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/murmurhash-js/-/murmurhash-js-1.0.0.tgz", + "integrity": "sha512-TvmkNhkv8yct0SVBSy+o8wYzXjE4Zz3PCesbfs8HiCXXdcTuocApFv11UWlNFWKYsP2okqrhb7JNlSm9InBhIw==" + }, + "mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "dev": true, + "requires": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, + "nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "dev": true + }, + "neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true + }, + "node-addon-api": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", + "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", + "dev": true + }, + "node-releases": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", + "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", + "dev": true + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "dev": true + }, + "object-hash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", + "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", + "dev": true + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", + "dev": true + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true + }, + "path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "dev": true, + "requires": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + } + }, + "pbf": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/pbf/-/pbf-3.3.0.tgz", + "integrity": "sha512-XDF38WCH3z5OV/OVa8GKUNtLAyneuzbCisx7QUCF8Q6Nutx0WnJrQe5O+kOtBlLfRNUws98Y58Lblp+NJG5T4Q==", + "requires": { + "ieee754": "^1.1.12", + "resolve-protobuf-schema": "^2.1.0" + } + }, + "picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true + }, + "picomatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", + "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==" + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "dev": true + }, + "pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "dev": true + }, + "pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "requires": { + "find-up": "^4.0.0" + } + }, + "pmtiles": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/pmtiles/-/pmtiles-3.2.0.tgz", + "integrity": "sha512-4v3Nw5xeMxaUReLZQTz3PyM4VM/Lx/Xp/rc2GGEWMl0nqAmcb+gjyi+eOTwfPu8LnB0ash36hz0dV76uYvih5A==", + "requires": { + "@types/leaflet": "^1.9.8", + "fflate": "^0.8.0" + } + }, + "postcss": { + "version": "8.4.47", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.47.tgz", + "integrity": "sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==", + "dev": true, + "requires": { + "nanoid": "^3.3.7", + "picocolors": "^1.1.0", + "source-map-js": "^1.2.1" + } + }, + "postcss-import": { + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz", + "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + } + }, + "postcss-js": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz", + "integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==", + "dev": true, + "requires": { + "camelcase-css": "^2.0.1" + } + }, + "postcss-load-config": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.2.tgz", + "integrity": "sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==", + "dev": true, + "requires": { + "lilconfig": "^3.0.0", + "yaml": "^2.3.4" + }, + "dependencies": { + "lilconfig": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.2.tgz", + "integrity": "sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==", + "dev": true + } + } + }, + "postcss-nested": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.2.0.tgz", + "integrity": "sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.1.1" + } + }, + "postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dev": true, + "requires": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + } + }, + "postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true + }, + "potpack": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/potpack/-/potpack-2.0.0.tgz", + "integrity": "sha512-Q+/tYsFU9r7xoOJ+y/ZTtdVQwTWfzjbiXBDMM/JKUux3+QPP02iUuIoeBQ+Ot6oEDlC+/PGjB/5A3K7KKb7hcw==" + }, + "protocol-buffers-schema": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/protocol-buffers-schema/-/protocol-buffers-schema-3.6.0.tgz", + "integrity": "sha512-TdDRD+/QNdrCGCE7v8340QyuXd4kIWIgapsE2+n/SaGiSSbomYl4TjHlvIoCWRpE7wFt02EpB35VVA2ImcBVqw==" + }, + "punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true + }, + "queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true + }, + "quickselect": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-3.0.0.tgz", + "integrity": "sha512-XdjUArbK4Bm5fLLvlm5KpTFOiOThgfWWI4axAZDWg4E/0mKdZyI9tNEfds27qCi1ze/vwTR16kvmmGhRra3c2g==" + }, + "randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.0" + } + }, + "read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", + "dev": true, + "requires": { + "pify": "^2.3.0" + } + }, + "readdirp": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.0.2.tgz", + "integrity": "sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==", + "dev": true + }, + "rechoir": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz", + "integrity": "sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==", + "dev": true, + "requires": { + "resolve": "^1.9.0" + } + }, + "regenerator-runtime": { + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==", + "dev": true + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true + }, + "resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "requires": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + }, + "resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "requires": { + "resolve-from": "^5.0.0" + } + }, + "resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true + }, + "resolve-protobuf-schema": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/resolve-protobuf-schema/-/resolve-protobuf-schema-2.1.0.tgz", + "integrity": "sha512-kI5ffTiZWmJaS/huM8wZfEMer1eRd7oJQhDuxeCLe3t7N7mX3z94CN0xPxBQxFYQTSNz9T0i+v6inKqSdK8xrQ==", + "requires": { + "protocol-buffers-schema": "^3.3.1" + } + }, + "reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true + }, + "run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "requires": { + "queue-microtask": "^1.2.2" + } + }, + "rw": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/rw/-/rw-1.3.3.tgz", + "integrity": "sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ==" + }, + "rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "dev": true, + "requires": { + "tslib": "^2.1.0" + } + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + }, + "sass": { + "version": "1.80.4", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.80.4.tgz", + "integrity": "sha512-rhMQ2tSF5CsuuspvC94nPM9rToiAFw2h3JTrLlgmNw1MH79v8Cr3DH6KF6o6r+8oofY3iYVPUf66KzC8yuVN1w==", + "dev": true, + "requires": { + "@parcel/watcher": "^2.4.1", + "chokidar": "^4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + } + }, + "schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + }, + "semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true + }, + "serialize-javascript": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", + "dev": true, + "requires": { + "randombytes": "^2.1.0" + } + }, + "shallow-clone": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "dev": true, + "requires": { + "kind-of": "^6.0.2" + } + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true + }, + "shell-quote": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", + "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", + "dev": true + }, + "signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true + }, + "source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true + }, + "source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "dev": true + }, + "source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "spawn-command": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/spawn-command/-/spawn-command-0.0.2.tgz", + "integrity": "sha512-zC8zGoGkmc8J9ndvml8Xksr1Amk9qBujgbF0JAIWO7kXr43w0h/0GJNM/Vustixu+YE8N/MTrQ7N31FvHUACxQ==", + "dev": true + }, + "string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "requires": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + } + }, + "string-width-cjs": { + "version": "npm:string-width@4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + } + } + }, + "strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "requires": { + "ansi-regex": "^6.0.1" + } + }, + "strip-ansi-cjs": { + "version": "npm:strip-ansi@6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + } + } + }, + "sucrase": { + "version": "3.35.0", + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", + "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==", + "dev": true, + "requires": { + "@jridgewell/gen-mapping": "^0.3.2", + "commander": "^4.0.0", + "glob": "^10.3.10", + "lines-and-columns": "^1.1.6", + "mz": "^2.7.0", + "pirates": "^4.0.1", + "ts-interface-checker": "^0.1.9" + } + }, + "supercluster": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/supercluster/-/supercluster-8.0.1.tgz", + "integrity": "sha512-IiOea5kJ9iqzD2t7QJq/cREyLHTtSmUT6gQsweojg9WH2sYJqZK9SswTu6jrscO6D1G5v5vYZ9ru/eq85lXeZQ==", + "requires": { + "kdbush": "^4.0.2" + } + }, + "supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" + }, + "tailwindcss": { + "version": "3.4.14", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.14.tgz", + "integrity": "sha512-IcSvOcTRcUtQQ7ILQL5quRDg7Xs93PdJEk1ZLbhhvJc7uj/OAhYOnruEiwnGgBvUtaUAJ8/mhSw1o8L2jCiENA==", + "dev": true, + "requires": { + "@alloc/quick-lru": "^5.2.0", + "arg": "^5.0.2", + "chokidar": "^3.5.3", + "didyoumean": "^1.2.2", + "dlv": "^1.1.3", + "fast-glob": "^3.3.0", + "glob-parent": "^6.0.2", + "is-glob": "^4.0.3", + "jiti": "^1.21.0", + "lilconfig": "^2.1.0", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "object-hash": "^3.0.0", + "picocolors": "^1.0.0", + "postcss": "^8.4.23", + "postcss-import": "^15.1.0", + "postcss-js": "^4.0.1", + "postcss-load-config": "^4.0.1", + "postcss-nested": "^6.0.1", + "postcss-selector-parser": "^6.0.11", + "resolve": "^1.22.2", + "sucrase": "^3.32.0" + }, + "dependencies": { + "chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dev": true, + "requires": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "dependencies": { + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + } + } + }, + "picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true + }, + "readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "requires": { + "picomatch": "^2.2.1" + } + } + } + }, + "tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true + }, + "terser": { + "version": "5.36.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.36.0.tgz", + "integrity": "sha512-IYV9eNMuFAV4THUspIRXkLakHnV6XO7FEdtKjf/mDyrnqUg9LnlOn6/RwRvM9SZjR4GUq8Nk8zj67FzVARr74w==", + "dev": true, + "requires": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "dependencies": { + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + } + } + }, + "terser-webpack-plugin": { + "version": "5.3.10", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz", + "integrity": "sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==", + "dev": true, + "requires": { + "@jridgewell/trace-mapping": "^0.3.20", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.1", + "terser": "^5.26.0" + } + }, + "thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "dev": true, + "requires": { + "any-promise": "^1.0.0" + } + }, + "thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", + "dev": true, + "requires": { + "thenify": ">= 3.1.0 < 4" + } + }, + "tinyqueue": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/tinyqueue/-/tinyqueue-3.0.0.tgz", + "integrity": "sha512-gRa9gwYU3ECmQYv3lslts5hxuIa90veaEcxDYuu3QGOIAEM2mOZkVHp48ANJuu1CURtRdHKUBY5Lm1tHV+sD4g==" + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + }, + "tree-kill": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", + "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", + "dev": true + }, + "ts-interface-checker": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", + "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", + "dev": true + }, + "ts-loader": { + "version": "9.5.1", + "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.5.1.tgz", + "integrity": "sha512-rNH3sK9kGZcH9dYzC7CewQm4NtxJTjSEVRJ2DyBZR7f8/wcta+iV44UPCXc5+nzDzivKtlzV6c9P4e+oFhDLYg==", + "dev": true, + "requires": { + "chalk": "^4.1.0", + "enhanced-resolve": "^5.0.0", + "micromatch": "^4.0.0", + "semver": "^7.3.4", + "source-map": "^0.7.4" + } + }, + "tslib": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.0.tgz", + "integrity": "sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA==", + "dev": true + }, + "typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "dev": true + }, + "undici-types": { + "version": "6.19.8", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", + "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", + "dev": true + }, + "update-browserslist-db": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz", + "integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==", + "dev": true, + "requires": { + "escalade": "^3.2.0", + "picocolors": "^1.1.0" + } + }, + "uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "vt-pbf": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/vt-pbf/-/vt-pbf-3.1.3.tgz", + "integrity": "sha512-2LzDFzt0mZKZ9IpVF2r69G9bXaP2Q2sArJCmcCgvfTdCCZzSyz4aCLoQyUilu37Ll56tCblIZrXFIjNUpGIlmA==", + "requires": { + "@mapbox/point-geometry": "0.1.0", + "@mapbox/vector-tile": "^1.3.1", + "pbf": "^3.2.1" + } + }, + "watchpack": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz", + "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==", + "dev": true, + "requires": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + } + }, + "webpack": { + "version": "5.95.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.95.0.tgz", + "integrity": "sha512-2t3XstrKULz41MNMBF+cJ97TyHdyQ8HCt//pqErqDvNjU9YQBnZxIHa11VXsi7F3mb5/aO2tuDxdeTPdU7xu9Q==", + "dev": true, + "requires": { + "@types/estree": "^1.0.5", + "@webassemblyjs/ast": "^1.12.1", + "@webassemblyjs/wasm-edit": "^1.12.1", + "@webassemblyjs/wasm-parser": "^1.12.1", + "acorn": "^8.7.1", + "acorn-import-attributes": "^1.9.5", + "browserslist": "^4.21.10", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.17.1", + "es-module-lexer": "^1.2.1", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.11", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.2.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.3.10", + "watchpack": "^2.4.1", + "webpack-sources": "^3.2.3" + } + }, + "webpack-cli": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.10.0.tgz", + "integrity": "sha512-NLhDfH/h4O6UOy+0LSso42xvYypClINuMNBVVzX4vX98TmTaTUxwRbXdhucbFMd2qLaCTcLq/PdYrvi8onw90w==", + "dev": true, + "requires": { + "@discoveryjs/json-ext": "^0.5.0", + "@webpack-cli/configtest": "^1.2.0", + "@webpack-cli/info": "^1.5.0", + "@webpack-cli/serve": "^1.7.0", + "colorette": "^2.0.14", + "commander": "^7.0.0", + "cross-spawn": "^7.0.3", + "fastest-levenshtein": "^1.0.12", + "import-local": "^3.0.2", + "interpret": "^2.2.0", + "rechoir": "^0.7.0", + "webpack-merge": "^5.7.3" + }, + "dependencies": { + "commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "dev": true + } + } + }, + "webpack-merge": { + "version": "5.10.0", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.10.0.tgz", + "integrity": "sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA==", + "dev": true, + "requires": { + "clone-deep": "^4.0.1", + "flat": "^5.0.2", + "wildcard": "^2.0.0" + } + }, + "webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "dev": true + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "wildcard": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.1.tgz", + "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==", + "dev": true + }, + "wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dev": true, + "requires": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true + } + } + }, + "wrap-ansi-cjs": { + "version": "npm:wrap-ansi@7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + } + } + }, + "y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true + }, + "yaml": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.6.0.tgz", + "integrity": "sha512-a6ae//JvKDEra2kdi1qzCyrJW/WZCgFi8ydDV+eXExl95t+5R+ijnqHJbz9tmMh8FUjx3iv2fCQ4dclAQlO2UQ==", + "dev": true + }, + "yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "requires": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + } + } + }, + "yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..49b1a80 --- /dev/null +++ b/package.json @@ -0,0 +1,34 @@ +{ + "devDependencies": { + "@types/bootstrap": "*", + "@types/jquery": "*", + "@types/node": "*", + "concurrently": "^7.2.1", + "sass": "^1.71.1", + "tailwindcss": "^3.4.1", + "ts-loader": "^9.3.0", + "typescript": "^4.7.2", + "webpack": "^5.72.1", + "webpack-cli": "^4.9.2" + }, + "dependencies": { + "bootstrap": "^5.3.3", + "flowbite": "^2.3.0", + "jquery": "^3.7.1", + "maplibre-gl": "^4.7.1", + "pmtiles": "^3.2.0" + }, + "scripts": { + "develop": "concurrently 'npm:develop:*'", + "develop:server": ". .venv/bin/activate && python app.py", + "develop:sass": "npm run build:sass -- --watch", + "develop:twcss": "npm run build:twcss -- --watch", + "develop:ts": "webpack --mode development --watch", + "build": "concurrently 'npm:build:*'", + "build:server": "", + "build:sass": "sass --style compressed src/scss/app.scss:static/css/app.css", + "build:twcss": "npx tailwindcss -i ./src/css/tailwind.css -o ./static/css/tailwind.css --minify", + "build:ts": "webpack --mode production", + "test": "echo 'test not implemented'" + } +} diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..6fa2ec7 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,9 @@ +blinker==1.8.2 +click==8.1.7 +Flask==3.0.3 +importlib_metadata==8.5.0 +itsdangerous==2.2.0 +Jinja2==3.1.4 +MarkupSafe==3.0.2 +Werkzeug==3.0.6 +zipp==3.20.2 diff --git a/src/css/tailwind.css b/src/css/tailwind.css new file mode 100644 index 0000000..032008c --- /dev/null +++ b/src/css/tailwind.css @@ -0,0 +1,4 @@ +/** npx tailwindcss -i ./src/css/tailwind.css -o ./static/css/tailwind.css --minify **/ +@tailwind base; +@tailwind components; +@tailwind utilities; diff --git a/src/scss/app.scss b/src/scss/app.scss new file mode 100644 index 0000000..48ef108 --- /dev/null +++ b/src/scss/app.scss @@ -0,0 +1,10 @@ +@import "../css/tailwind.css"; +@import "index"; + +#map { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; +} diff --git a/src/scss/index.scss b/src/scss/index.scss new file mode 100644 index 0000000..e69de29 diff --git a/src/ts/Main.ts b/src/ts/Main.ts new file mode 100644 index 0000000..1338a16 --- /dev/null +++ b/src/ts/Main.ts @@ -0,0 +1 @@ +import "./Map"; diff --git a/src/ts/Map.ts b/src/ts/Map.ts new file mode 100644 index 0000000..305f708 --- /dev/null +++ b/src/ts/Map.ts @@ -0,0 +1,38 @@ +import * as pmtiles from "pmtiles"; +import * as maplibregl from "maplibre-gl"; +import { layerSpecification } from "./modules/MapLayerSpecificationModule"; +import { addCountryBorder } from "./modules/AddCountryBorderModule"; + +// read https://maplibre.org/maplibre-gl-js/docs/examples/pmtiles/ +// add pmtiles protocol +let protocol = new pmtiles.Protocol(); +maplibregl.addProtocol("pmtiles", protocol.tile); + +// create map tiles +const map = new maplibregl.Map({ + container: "map", + zoom: 1, + minZoom: 2, + maxZoom: 6, + center: [0, 0], + style: { + version: 8, + sources: { + tiles: { + type: "vector", + // read https://maplibre.org/maplibre-style-spec/sources/#vector + url: "pmtiles://https://nbg1.your-objectstorage.com/maps/map.pmtiles", + }, + }, + // + layers: layerSpecification, + }, +}); + +// debug +//map.showTileBoundaries = true; + +// add zoom and rotation controls +map.addControl(new maplibregl.NavigationControl()); + +addCountryBorder(map); diff --git a/src/ts/modules/AddCountryBorderModule.ts b/src/ts/modules/AddCountryBorderModule.ts new file mode 100644 index 0000000..26c0065 --- /dev/null +++ b/src/ts/modules/AddCountryBorderModule.ts @@ -0,0 +1,79 @@ +let hoveredStateId = null; + +export const addCountryBorder = (map: maplibregl.Map) => { + map.on("load", () => { + map.addSource("states", { + type: "geojson", + data: "/static/src/earth.geojson", + promoteId: "iso_n3", // use this field as the unique identifier for each country + }); + + // The feature-state dependent fill-opacity expression will render the hover effect + // when a feature's hover state is set to true. + map.addLayer({ + id: "state-fills", + type: "fill", + source: "states", + layout: {}, + paint: { + "fill-color": "#627BC1", + "fill-opacity": [ + "case", + ["boolean", ["feature-state", "hover"], false], + 0.2, + 0, + ], + }, + }); + + map.addLayer({ + id: "state-borders", + type: "line", + source: "states", + layout: { + "line-join": "round", + "line-cap": "round", + }, + paint: { + "line-color": "#4b4b4b", // Border color + "line-width": [ + "case", + ["boolean", ["feature-state", "hover"], false], // Check if hovered + 1, // Thicker border on hover + 0.5, // Regular border width + ], + "line-opacity": 1, // Full opacity for borders + }, + }); + + // When the user moves their mouse over the state-fill layer, we'll update the + // feature state for the feature under the mouse. + map.on("mousemove", "state-fills", (e) => { + if (e.features.length > 0) { + if (hoveredStateId) { + map.setFeatureState( + { source: "states", id: hoveredStateId }, + { hover: false } + ); + } + hoveredStateId = e.features[0].id; + map.setFeatureState( + { source: "states", id: hoveredStateId }, + { hover: true } + ); + } + }); + + // When the mouse leaves the state-fill layer, update the feature state of the + // previously hovered feature. + map.on("mouseleave", "state-fills", () => { + if (hoveredStateId) { + map.setFeatureState( + { source: "states", id: hoveredStateId }, + { hover: false } + ); + } + hoveredStateId = null; + }); + }); +}; diff --git a/src/ts/modules/MapLayerSpecificationModule.ts b/src/ts/modules/MapLayerSpecificationModule.ts new file mode 100644 index 0000000..c826e85 --- /dev/null +++ b/src/ts/modules/MapLayerSpecificationModule.ts @@ -0,0 +1,41 @@ +import { LayerSpecification } from "maplibre-gl"; + +export const layerSpecification: LayerSpecification[] = [ + { + id: "forest", + source: "tiles", + "source-layer": "forest", + type: "fill", + paint: { + "fill-color": "#90ee90", + }, + }, + { + id: "water", + source: "tiles", + "source-layer": "water", + filter: ["==", ["geometry-type"], "Polygon"], + type: "fill", + paint: { + "fill-color": "#add8e6", + }, + }, + { + id: "buildings", + source: "tiles", + "source-layer": "buildings", + type: "fill", + paint: { + "fill-color": "#ffffc5", + }, + }, + { + id: "roads", + source: "tiles", + "source-layer": "roads", + type: "line", + paint: { + "line-color": "#d3d3d3", + }, + }, +]; diff --git a/static/css/app.css b/static/css/app.css new file mode 100644 index 0000000..c44a921 --- /dev/null +++ b/static/css/app.css @@ -0,0 +1 @@ +@import"../css/tailwind.css";#map{position:absolute;top:0;left:0;width:100%;height:100%}/*# sourceMappingURL=app.css.map */ diff --git a/static/css/app.css.map b/static/css/app.css.map new file mode 100644 index 0000000..c451926 --- /dev/null +++ b/static/css/app.css.map @@ -0,0 +1 @@ +{"version":3,"sourceRoot":"","sources":["../../src/scss/app.scss"],"names":[],"mappings":"AAAQ,6BAGR,KACE,kBACA,MACA,OACA,WACA","file":"app.css"} \ No newline at end of file diff --git a/static/css/tailwind.css b/static/css/tailwind.css new file mode 100644 index 0000000..e7f855a --- /dev/null +++ b/static/css/tailwind.css @@ -0,0 +1,2 @@ +*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(63,131,248,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(63,131,248,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: } +/*! tailwindcss v3.4.14 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Source Sans\ 3,Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}[data-popper-arrow],[data-popper-arrow]:before{position:absolute;width:8px;height:8px;background:inherit}[data-popper-arrow]{visibility:hidden}[data-popper-arrow]:after,[data-popper-arrow]:before{content:"";visibility:visible;transform:rotate(45deg)}[data-popper-arrow]:after{position:absolute;width:9px;height:9px;background:inherit}[role=tooltip]>[data-popper-arrow]:after,[role=tooltip]>[data-popper-arrow]:before{border-style:solid;border-color:#e5e7eb}[data-popover][role=tooltip][data-popper-placement^=top]>[data-popper-arrow]:after,[data-popover][role=tooltip][data-popper-placement^=top]>[data-popper-arrow]:before{border-bottom-width:1px;border-right-width:1px}[data-popover][role=tooltip][data-popper-placement^=right]>[data-popper-arrow]:after,[data-popover][role=tooltip][data-popper-placement^=right]>[data-popper-arrow]:before{border-bottom-width:1px;border-left-width:1px}[data-popover][role=tooltip][data-popper-placement^=bottom]>[data-popper-arrow]:after,[data-popover][role=tooltip][data-popper-placement^=bottom]>[data-popper-arrow]:before{border-top-width:1px;border-left-width:1px}[data-popover][role=tooltip][data-popper-placement^=left]>[data-popper-arrow]:after,[data-popover][role=tooltip][data-popper-placement^=left]>[data-popper-arrow]:before{border-top-width:1px;border-right-width:1px}[data-popover][role=tooltip][data-popper-placement^=top]>[data-popper-arrow]{bottom:-5px}[data-popover][role=tooltip][data-popper-placement^=bottom]>[data-popper-arrow]{top:-5px}[data-popover][role=tooltip][data-popper-placement^=left]>[data-popper-arrow]{right:-5px}[data-popover][role=tooltip][data-popper-placement^=right]>[data-popper-arrow]{left:-5px}[multiple],[type=date],[type=datetime-local],[type=email],[type=month],[type=number],[type=password],[type=search],[type=tel],[type=text],[type=time],[type=url],[type=week],select,textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:#6b7280;border-width:1px;border-radius:0;padding:.5rem .75rem;font-size:1rem;line-height:1.5rem;--tw-shadow:0 0 #0000}[multiple]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=email]:focus,[type=month]:focus,[type=number]:focus,[type=password]:focus,[type=search]:focus,[type=tel]:focus,[type=text]:focus,[type=time]:focus,[type=url]:focus,[type=week]:focus,select:focus,textarea:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#1c64f2;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);border-color:#1c64f2}input::-moz-placeholder,textarea::-moz-placeholder{color:#6b7280;opacity:1}input::placeholder,textarea::placeholder{color:#6b7280;opacity:1}::-webkit-datetime-edit-fields-wrapper{padding:0}input[type=time]::-webkit-calendar-picker-indicator{background:none}select:not([size]){background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' aria-hidden='true' viewBox='0 0 10 6'%3E%3Cpath stroke='%236B7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m1 1 4 4 4-4'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;background-size:.75em .75em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}:is([dir=rtl]) select:not([size]){background-position:left .75rem center;padding-right:.75rem;padding-left:0}[multiple]{background-image:none;background-position:0 0;background-repeat:unset;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:unset;print-color-adjust:unset}[type=checkbox],[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;-webkit-print-color-adjust:exact;print-color-adjust:exact;display:inline-block;vertical-align:middle;background-origin:border-box;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0;height:1rem;width:1rem;color:#1c64f2;background-color:#fff;border-color:#6b7280;border-width:1px;--tw-shadow:0 0 #0000}[type=checkbox]{border-radius:0}[type=radio]{border-radius:100%}[type=checkbox]:focus,[type=radio]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:2px;--tw-ring-offset-color:#fff;--tw-ring-color:#1c64f2;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.dark [type=checkbox]:checked,.dark [type=radio]:checked,[type=checkbox]:checked,[type=radio]:checked{border-color:transparent;background-color:currentColor;background-size:.55em .55em;background-position:50%;background-repeat:no-repeat}[type=checkbox]:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' aria-hidden='true' viewBox='0 0 16 12'%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M1 5.917 5.724 10.5 15 1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:.55em .55em;-webkit-print-color-adjust:exact;print-color-adjust:exact}[type=radio]:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='3'/%3E%3C/svg%3E");background-size:1em 1em}[type=checkbox]:indeterminate{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' aria-hidden='true' viewBox='0 0 16 12'%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M.5 6h14'/%3E%3C/svg%3E");background-color:currentColor;border-color:transparent;background-position:50%;background-repeat:no-repeat;background-size:.55em .55em;-webkit-print-color-adjust:exact;print-color-adjust:exact}[type=checkbox]:indeterminate:focus,[type=checkbox]:indeterminate:hover{border-color:transparent;background-color:currentColor}[type=file]{background:unset;border-color:inherit;border-width:0;border-radius:0;padding:0;font-size:unset;line-height:inherit}[type=file]:focus{outline:1px auto inherit}input[type=file]::file-selector-button{color:#fff;background:#1f2937;border:0;font-weight:500;font-size:.875rem;cursor:pointer;padding:.625rem 1rem .625rem 2rem;margin-inline-start:-1rem;margin-inline-end:1rem}input[type=file]::file-selector-button:hover{background:#374151}:is([dir=rtl]) input[type=file]::file-selector-button{padding-right:2rem;padding-left:1rem}input[type=range]::-webkit-slider-thumb{height:1.25rem;width:1.25rem;background:#1c64f2;border-radius:9999px;border:0;appearance:none;-moz-appearance:none;-webkit-appearance:none;cursor:pointer}input[type=range]:disabled::-webkit-slider-thumb{background:#9ca3af}input[type=range]:focus::-webkit-slider-thumb{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-opacity:1px;--tw-ring-color:rgb(164 202 254/var(--tw-ring-opacity))}input[type=range]::-moz-range-thumb{height:1.25rem;width:1.25rem;background:#1c64f2;border-radius:9999px;border:0;appearance:none;-moz-appearance:none;-webkit-appearance:none;cursor:pointer}input[type=range]:disabled::-moz-range-thumb{background:#9ca3af}input[type=range]::-moz-range-progress{background:#3f83f8}input[type=range]::-ms-fill-lower{background:#3f83f8}.static{position:static}.z-40{z-index:40}.block{display:block}.h-6{height:1.5rem}.h-9{height:2.25rem}.w-1\/2{width:50%}.w-64{width:16rem}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.rounded-e-lg{border-start-end-radius:.5rem;border-end-end-radius:.5rem}.rounded-l-lg{border-top-left-radius:.5rem;border-bottom-left-radius:.5rem}.rounded-r-lg{border-top-right-radius:.5rem;border-bottom-right-radius:.5rem}.rounded-s-lg{border-start-start-radius:.5rem;border-end-start-radius:.5rem}.\!bg-gray-50{--tw-bg-opacity:1!important;background-color:rgb(249 250 251/var(--tw-bg-opacity))!important}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.leading-6{line-height:1.5rem}.leading-9{line-height:2.25rem}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.dark\:\!bg-gray-700:is(.dark *){--tw-bg-opacity:1!important;background-color:rgb(55 65 81/var(--tw-bg-opacity))!important}.dark\:bg-gray-900:is(.dark *){--tw-bg-opacity:1;background-color:rgb(17 24 39/var(--tw-bg-opacity))} \ No newline at end of file diff --git a/static/js/bundle.js b/static/js/bundle.js new file mode 100644 index 0000000..61e18d3 --- /dev/null +++ b/static/js/bundle.js @@ -0,0 +1,2052 @@ +/******/ (() => { // webpackBootstrap +/******/ var __webpack_modules__ = ({ + +/***/ "./src/ts/Map.ts": +/*!***********************!*\ + !*** ./src/ts/Map.ts ***! + \***********************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var pmtiles__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! pmtiles */ "./node_modules/pmtiles/dist/index.js"); +/* harmony import */ var maplibre_gl__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! maplibre-gl */ "./node_modules/maplibre-gl/dist/maplibre-gl.js"); +/* harmony import */ var maplibre_gl__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(maplibre_gl__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _modules_MapLayerSpecificationModule__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./modules/MapLayerSpecificationModule */ "./src/ts/modules/MapLayerSpecificationModule.ts"); +/* harmony import */ var _modules_AddCountryBorderModule__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./modules/AddCountryBorderModule */ "./src/ts/modules/AddCountryBorderModule.ts"); + + + + +var protocol = new pmtiles__WEBPACK_IMPORTED_MODULE_0__.Protocol(); +maplibre_gl__WEBPACK_IMPORTED_MODULE_1__.addProtocol("pmtiles", protocol.tile); +var map = new maplibre_gl__WEBPACK_IMPORTED_MODULE_1__.Map({ + container: "map", + zoom: 1, + minZoom: 2, + maxZoom: 6, + center: [0, 0], + style: { + version: 8, + sources: { + tiles: { + type: "vector", + url: "pmtiles://https://nbg1.your-objectstorage.com/maps/map.pmtiles", + }, + }, + layers: _modules_MapLayerSpecificationModule__WEBPACK_IMPORTED_MODULE_2__.layerSpecification, + }, +}); +map.addControl(new maplibre_gl__WEBPACK_IMPORTED_MODULE_1__.NavigationControl()); +(0,_modules_AddCountryBorderModule__WEBPACK_IMPORTED_MODULE_3__.addCountryBorder)(map); + + +/***/ }), + +/***/ "./src/ts/modules/AddCountryBorderModule.ts": +/*!**************************************************!*\ + !*** ./src/ts/modules/AddCountryBorderModule.ts ***! + \**************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ addCountryBorder: () => (/* binding */ addCountryBorder) +/* harmony export */ }); +var hoveredStateId = null; +var addCountryBorder = function (map) { + map.on("load", function () { + map.addSource("states", { + type: "geojson", + data: "/static/src/earth.geojson", + promoteId: "iso_n3", + }); + map.addLayer({ + id: "state-fills", + type: "fill", + source: "states", + layout: {}, + paint: { + "fill-color": "#627BC1", + "fill-opacity": [ + "case", + ["boolean", ["feature-state", "hover"], false], + 0.2, + 0, + ], + }, + }); + map.addLayer({ + id: "state-borders", + type: "line", + source: "states", + layout: { + "line-join": "round", + "line-cap": "round", + }, + paint: { + "line-color": "#4b4b4b", + "line-width": [ + "case", + ["boolean", ["feature-state", "hover"], false], + 1, + 0.5, + ], + "line-opacity": 1, + }, + }); + map.on("mousemove", "state-fills", function (e) { + if (e.features.length > 0) { + if (hoveredStateId) { + map.setFeatureState({ source: "states", id: hoveredStateId }, { hover: false }); + } + hoveredStateId = e.features[0].id; + map.setFeatureState({ source: "states", id: hoveredStateId }, { hover: true }); + } + }); + map.on("mouseleave", "state-fills", function () { + if (hoveredStateId) { + map.setFeatureState({ source: "states", id: hoveredStateId }, { hover: false }); + } + hoveredStateId = null; + }); + }); +}; + + +/***/ }), + +/***/ "./src/ts/modules/MapLayerSpecificationModule.ts": +/*!*******************************************************!*\ + !*** ./src/ts/modules/MapLayerSpecificationModule.ts ***! + \*******************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ layerSpecification: () => (/* binding */ layerSpecification) +/* harmony export */ }); +var layerSpecification = [ + { + id: "forest", + source: "tiles", + "source-layer": "forest", + type: "fill", + paint: { + "fill-color": "#90ee90", + }, + }, + { + id: "water", + source: "tiles", + "source-layer": "water", + filter: ["==", ["geometry-type"], "Polygon"], + type: "fill", + paint: { + "fill-color": "#add8e6", + }, + }, + { + id: "buildings", + source: "tiles", + "source-layer": "buildings", + type: "fill", + paint: { + "fill-color": "#ffffc5", + }, + }, + { + id: "roads", + source: "tiles", + "source-layer": "roads", + type: "line", + paint: { + "line-color": "#d3d3d3", + }, + }, +]; + + +/***/ }), + +/***/ "./node_modules/maplibre-gl/dist/maplibre-gl.js": +/*!******************************************************!*\ + !*** ./node_modules/maplibre-gl/dist/maplibre-gl.js ***! + \******************************************************/ +/***/ (function(module) { + +/** + * MapLibre GL JS + * @license 3-Clause BSD. Full text of license: https://github.com/maplibre/maplibre-gl-js/blob/v4.7.1/LICENSE.txt + */ +(function (global, factory) { + true ? module.exports = factory() : +0; +})(this, (function () { 'use strict'; + +/* eslint-disable */ + +var maplibregl = {}; +var modules = {}; +function define(moduleName, _dependencies, moduleFactory) { + modules[moduleName] = moduleFactory; + + // to get the list of modules see generated dist/maplibre-gl-dev.js file (look for `define(` calls) + if (moduleName !== 'index') { + return; + } + + // we assume that when an index module is initializing then other modules are loaded already + var workerBundleString = 'var sharedModule = {}; (' + modules.shared + ')(sharedModule); (' + modules.worker + ')(sharedModule);' + + var sharedModule = {}; + // the order of arguments of a module factory depends on rollup (it decides who is whose dependency) + // to check the correct order, see dist/maplibre-gl-dev.js file (look for `define(` calls) + // we assume that for our 3 chunks it will generate 3 modules and their order is predefined like the following + modules.shared(sharedModule); + modules.index(maplibregl, sharedModule); + + if (typeof window !== 'undefined') { + maplibregl.setWorkerUrl(window.URL.createObjectURL(new Blob([workerBundleString], { type: 'text/javascript' }))); + } + + return maplibregl; +}; + + + +define("shared",["exports"],(function(t){"use strict";function e(t,e,r,n){return new(r||(r=Promise))((function(i,s){function a(t){try{l(n.next(t));}catch(t){s(t);}}function o(t){try{l(n.throw(t));}catch(t){s(t);}}function l(t){var e;t.done?i(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e);}))).then(a,o);}l((n=n.apply(t,e||[])).next());}))}function r(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}"function"==typeof SuppressedError&&SuppressedError;var n=i;function i(t,e){this.x=t,this.y=e;}i.prototype={clone:function(){return new i(this.x,this.y)},add:function(t){return this.clone()._add(t)},sub:function(t){return this.clone()._sub(t)},multByPoint:function(t){return this.clone()._multByPoint(t)},divByPoint:function(t){return this.clone()._divByPoint(t)},mult:function(t){return this.clone()._mult(t)},div:function(t){return this.clone()._div(t)},rotate:function(t){return this.clone()._rotate(t)},rotateAround:function(t,e){return this.clone()._rotateAround(t,e)},matMult:function(t){return this.clone()._matMult(t)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(t){return this.x===t.x&&this.y===t.y},dist:function(t){return Math.sqrt(this.distSqr(t))},distSqr:function(t){var e=t.x-this.x,r=t.y-this.y;return e*e+r*r},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(t){return Math.atan2(this.y-t.y,this.x-t.x)},angleWith:function(t){return this.angleWithSep(t.x,t.y)},angleWithSep:function(t,e){return Math.atan2(this.x*e-this.y*t,this.x*t+this.y*e)},_matMult:function(t){var e=t[2]*this.x+t[3]*this.y;return this.x=t[0]*this.x+t[1]*this.y,this.y=e,this},_add:function(t){return this.x+=t.x,this.y+=t.y,this},_sub:function(t){return this.x-=t.x,this.y-=t.y,this},_mult:function(t){return this.x*=t,this.y*=t,this},_div:function(t){return this.x/=t,this.y/=t,this},_multByPoint:function(t){return this.x*=t.x,this.y*=t.y,this},_divByPoint:function(t){return this.x/=t.x,this.y/=t.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var t=this.y;return this.y=this.x,this.x=-t,this},_rotate:function(t){var e=Math.cos(t),r=Math.sin(t),n=r*this.x+e*this.y;return this.x=e*this.x-r*this.y,this.y=n,this},_rotateAround:function(t,e){var r=Math.cos(t),n=Math.sin(t),i=e.y+n*(this.x-e.x)+r*(this.y-e.y);return this.x=e.x+r*(this.x-e.x)-n*(this.y-e.y),this.y=i,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},i.convert=function(t){return t instanceof i?t:Array.isArray(t)?new i(t[0],t[1]):t};var s=r(n),a=o;function o(t,e,r,n){this.cx=3*t,this.bx=3*(r-t)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*e,this.by=3*(n-e)-this.cy,this.ay=1-this.cy-this.by,this.p1x=t,this.p1y=e,this.p2x=r,this.p2y=n;}o.prototype={sampleCurveX:function(t){return ((this.ax*t+this.bx)*t+this.cx)*t},sampleCurveY:function(t){return ((this.ay*t+this.by)*t+this.cy)*t},sampleCurveDerivativeX:function(t){return (3*this.ax*t+2*this.bx)*t+this.cx},solveCurveX:function(t,e){if(void 0===e&&(e=1e-6),t<0)return 0;if(t>1)return 1;for(var r=t,n=0;n<8;n++){var i=this.sampleCurveX(r)-t;if(Math.abs(i)i?a=r:o=r,r=.5*(o-a)+a;return r},solve:function(t,e){return this.sampleCurveY(this.solveCurveX(t,e))}};var l=r(a);let u,c;function h(){return null==u&&(u="undefined"!=typeof OffscreenCanvas&&new OffscreenCanvas(1,1).getContext("2d")&&"function"==typeof createImageBitmap),u}function p(){if(null==c&&(c=!1,h())){const t=5,e=new OffscreenCanvas(t,t).getContext("2d",{willReadFrequently:!0});if(e){for(let r=0;ri.solve(t)}const d=f(.25,.1,.25,1);function y(t,e,r){return Math.min(r,Math.max(e,t))}function m(t,e,r){const n=r-e,i=((t-e)%n+n)%n+e;return i===e?r:i}function g(t,...e){for(const r of e)for(const e in r)t[e]=r[e];return t}let x=1;function v(t,e,r){const n={};for(const r in t)n[r]=e.call(this,t[r],r,t);return n}function b(t,e,r){const n={};for(const r in t)e.call(this,t[r],r,t)&&(n[r]=t[r]);return n}function w(t){return Array.isArray(t)?t.map(w):"object"==typeof t&&t?v(t,w):t}const _={};function A(t){_[t]||("undefined"!=typeof console&&console.warn(t),_[t]=!0);}function S(t,e,r){return (r.y-t.y)*(e.x-t.x)>(e.y-t.y)*(r.x-t.x)}function k(t){return "undefined"!=typeof WorkerGlobalScope&&void 0!==t&&t instanceof WorkerGlobalScope}let M=null;function I(t){return "undefined"!=typeof ImageBitmap&&t instanceof ImageBitmap}const z="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function P(t,r,n,i,s){return e(this,void 0,void 0,(function*(){if("undefined"==typeof VideoFrame)throw new Error("VideoFrame not supported");const e=new VideoFrame(t,{timestamp:0});try{const a=null==e?void 0:e.format;if(!a||!a.startsWith("BGR")&&!a.startsWith("RGB"))throw new Error(`Unrecognized format ${a}`);const o=a.startsWith("BGR"),l=new Uint8ClampedArray(i*s*4);if(yield e.copyTo(l,function(t,e,r,n,i){const s=4*Math.max(-e,0),a=(Math.max(0,r)-r)*n*4+s,o=4*n,l=Math.max(0,e),u=Math.max(0,r);return {rect:{x:l,y:u,width:Math.min(t.width,e+n)-l,height:Math.min(t.height,r+i)-u},layout:[{offset:a,stride:o}]}}(t,r,n,i,s)),o)for(let t=0;tk(self)?self.worker&&self.worker.referrer:("blob:"===window.location.protocol?window.parent:window).location.href,O=function(t,r){if(/:\/\//.test(t.url)&&!/^https?:|^file:/.test(t.url)){const e=T(t.url);if(e)return e(t,r);if(k(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:t,targetMapId:$},r)}if(!(/^file:/.test(n=t.url)||/^file:/.test(D())&&!/^\w+:/.test(n))){if(fetch&&Request&&AbortController&&Object.prototype.hasOwnProperty.call(Request.prototype,"signal"))return function(t,r){return e(this,void 0,void 0,(function*(){const e=new Request(t.url,{method:t.method||"GET",body:t.body,credentials:t.credentials,headers:t.headers,cache:t.cache,referrer:D(),signal:r.signal});"json"!==t.type||e.headers.has("Accept")||e.headers.set("Accept","application/json");const n=yield fetch(e);if(!n.ok){const e=yield n.blob();throw new L(n.status,n.statusText,t.url,e)}let i;i="arrayBuffer"===t.type||"image"===t.type?n.arrayBuffer():"json"===t.type?n.json():n.text();const s=yield i;if(r.signal.aborted)throw E();return {data:s,cacheControl:n.headers.get("Cache-Control"),expires:n.headers.get("Expires")}}))}(t,r);if(k(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:t,mustQueue:!0,targetMapId:$},r)}var n;return function(t,e){return new Promise(((r,n)=>{var i;const s=new XMLHttpRequest;s.open(t.method||"GET",t.url,!0),"arrayBuffer"!==t.type&&"image"!==t.type||(s.responseType="arraybuffer");for(const e in t.headers)s.setRequestHeader(e,t.headers[e]);"json"===t.type&&(s.responseType="text",(null===(i=t.headers)||void 0===i?void 0:i.Accept)||s.setRequestHeader("Accept","application/json")),s.withCredentials="include"===t.credentials,s.onerror=()=>{n(new Error(s.statusText));},s.onload=()=>{if(!e.signal.aborted)if((s.status>=200&&s.status<300||0===s.status)&&null!==s.response){let e=s.response;if("json"===t.type)try{e=JSON.parse(s.response);}catch(t){return void n(t)}r({data:e,cacheControl:s.getResponseHeader("Cache-Control"),expires:s.getResponseHeader("Expires")});}else {const e=new Blob([s.response],{type:s.getResponseHeader("Content-Type")});n(new L(s.status,s.statusText,t.url,e));}},e.signal.addEventListener("abort",(()=>{s.abort(),n(E());})),s.send(t.body);}))}(t,r)};function j(t){if(!t||t.indexOf("://")<=0||0===t.indexOf("data:image/")||0===t.indexOf("blob:"))return !0;const e=new URL(t),r=window.location;return e.protocol===r.protocol&&e.host===r.host}function R(t,e,r){r[t]&&-1!==r[t].indexOf(e)||(r[t]=r[t]||[],r[t].push(e));}function U(t,e,r){if(r&&r[t]){const n=r[t].indexOf(e);-1!==n&&r[t].splice(n,1);}}class q{constructor(t,e={}){g(this,e),this.type=t;}}class N extends q{constructor(t,e={}){super("error",g({error:t},e));}}class Z{on(t,e){return this._listeners=this._listeners||{},R(t,e,this._listeners),this}off(t,e){return U(t,e,this._listeners),U(t,e,this._oneTimeListeners),this}once(t,e){return e?(this._oneTimeListeners=this._oneTimeListeners||{},R(t,e,this._oneTimeListeners),this):new Promise((e=>this.once(t,e)))}fire(t,e){"string"==typeof t&&(t=new q(t,e||{}));const r=t.type;if(this.listens(r)){t.target=this;const e=this._listeners&&this._listeners[r]?this._listeners[r].slice():[];for(const r of e)r.call(this,t);const n=this._oneTimeListeners&&this._oneTimeListeners[r]?this._oneTimeListeners[r].slice():[];for(const e of n)U(r,e,this._oneTimeListeners),e.call(this,t);const i=this._eventedParent;i&&(g(t,"function"==typeof this._eventedParentData?this._eventedParentData():this._eventedParentData),i.fire(t));}else t instanceof N&&console.error(t.error);return this}listens(t){return this._listeners&&this._listeners[t]&&this._listeners[t].length>0||this._oneTimeListeners&&this._oneTimeListeners[t]&&this._oneTimeListeners[t].length>0||this._eventedParent&&this._eventedParent.listens(t)}setEventedParent(t,e){return this._eventedParent=t,this._eventedParentData=e,this}}var G={$version:8,$root:{version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sky:{type:"sky"},projection:{type:"projection"},terrain:{type:"terrain"},sources:{required:!0,type:"sources"},sprite:{type:"sprite"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},sources:{"*":{type:"source"}},source:["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],source_vector:{type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster:{type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster_dem:{type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{},custom:{}},default:"mapbox"},redFactor:{type:"number",default:1},blueFactor:{type:"number",default:1},greenFactor:{type:"number",default:1},baseShift:{type:"number",default:0},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_geojson:{type:{required:!0,type:"enum",values:{geojson:{}}},data:{required:!0,type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},source_video:{type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},source_image:{type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},layer:{id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},layout:["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],layout_background:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_fill:{"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_circle:{"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_heatmap:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:{"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_symbol:{"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image",{"!":"icon-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"padding",default:[2],units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},"viewport-glyph":{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-variable-anchor-offset":{type:"variableAnchorOffsetCollection",requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field",{"!":"text-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_raster:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_hillshade:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},filter:{type:"array",value:"*"},filter_operator:{type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{}}},geometry_type:{type:"enum",values:{Point:{},LineString:{},Polygon:{}}},function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:{type:"array",minimum:0,maximum:24,value:["number","color"],length:2},expression:{type:"array",value:"*",minimum:1},light:{anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},sky:{"sky-color":{type:"color","property-type":"data-constant",default:"#88C6FC",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-ground-blend":{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-fog-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"sky-horizon-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"atmosphere-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},terrain:{source:{type:"string",required:!0},exaggeration:{type:"number",minimum:0,default:1}},projection:{type:{type:"enum",default:"mercator",values:{mercator:{},globe:{}}}},paint:["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],paint_fill:{"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:{"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},paint_circle:{"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},paint_heatmap:{"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_symbol:{"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_raster:{"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_hillshade:{"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_background:{"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},transition:{duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:{"*":{type:"string"}}};const K=["type","source","source-layer","minzoom","maxzoom","filter","layout"];function X(t,e){const r={};for(const e in t)"ref"!==e&&(r[e]=t[e]);return K.forEach((t=>{t in e&&(r[t]=e[t]);})),r}function H(t,e){if(Array.isArray(t)){if(!Array.isArray(e)||t.length!==e.length)return !1;for(let r=0;r`:"value"===t.itemType.kind?"array":`array<${e}>`}return t.kind}const _t=[lt,ut,ct,ht,pt,mt,ft,bt(dt),gt,xt,vt];function At(t,e){if("error"===e.kind)return null;if("array"===t.kind){if("array"===e.kind&&(0===e.N&&"value"===e.itemType.kind||!At(t.itemType,e.itemType))&&("number"!=typeof t.N||t.N===e.N))return null}else {if(t.kind===e.kind)return null;if("value"===t.kind)for(const t of _t)if(!At(t,e))return null}return `Expected ${wt(t)} but found ${wt(e)} instead.`}function St(t,e){return e.some((e=>e.kind===t.kind))}function kt(t,e){return e.some((e=>"null"===e?null===t:"array"===e?Array.isArray(t):"object"===e?t&&!Array.isArray(t)&&"object"==typeof t:e===typeof t))}function Mt(t,e){return "array"===t.kind&&"array"===e.kind?t.itemType.kind===e.itemType.kind&&"number"==typeof t.N:t.kind===e.kind}const It=.96422,zt=.82521,Pt=4/29,Ct=6/29,Bt=3*Ct*Ct,Vt=Ct*Ct*Ct,Et=Math.PI/180,Ft=180/Math.PI;function Tt(t){return (t%=360)<0&&(t+=360),t}function $t([t,e,r,n]){let i,s;const a=Dt((.2225045*(t=Lt(t))+.7168786*(e=Lt(e))+.0606169*(r=Lt(r)))/1);t===e&&e===r?i=s=a:(i=Dt((.4360747*t+.3850649*e+.1430804*r)/It),s=Dt((.0139322*t+.0971045*e+.7141733*r)/zt));const o=116*a-16;return [o<0?0:o,500*(i-a),200*(a-s),n]}function Lt(t){return t<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function Dt(t){return t>Vt?Math.pow(t,1/3):t/Bt+Pt}function Ot([t,e,r,n]){let i=(t+16)/116,s=isNaN(e)?i:i+e/500,a=isNaN(r)?i:i-r/200;return i=1*Rt(i),s=It*Rt(s),a=zt*Rt(a),[jt(3.1338561*s-1.6168667*i-.4906146*a),jt(-.9787684*s+1.9161415*i+.033454*a),jt(.0719453*s-.2289914*i+1.4052427*a),n]}function jt(t){return (t=t<=.00304?12.92*t:1.055*Math.pow(t,1/2.4)-.055)<0?0:t>1?1:t}function Rt(t){return t>Ct?t*t*t:Bt*(t-Pt)}function Ut(t){return parseInt(t.padEnd(2,t),16)/255}function qt(t,e){return Nt(e?t/100:t,0,1)}function Nt(t,e,r){return Math.min(Math.max(e,t),r)}function Zt(t){return !t.some(Number.isNaN)}const Gt={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};class Kt{constructor(t,e,r,n=1,i=!0){this.r=t,this.g=e,this.b=r,this.a=n,i||(this.r*=n,this.g*=n,this.b*=n,n||this.overwriteGetter("rgb",[t,e,r,n]));}static parse(t){if(t instanceof Kt)return t;if("string"!=typeof t)return;const e=function(t){if("transparent"===(t=t.toLowerCase().trim()))return [0,0,0,0];const e=Gt[t];if(e){const[t,r,n]=e;return [t/255,r/255,n/255,1]}if(t.startsWith("#")&&/^#(?:[0-9a-f]{3,4}|[0-9a-f]{6}|[0-9a-f]{8})$/.test(t)){const e=t.length<6?1:2;let r=1;return [Ut(t.slice(r,r+=e)),Ut(t.slice(r,r+=e)),Ut(t.slice(r,r+=e)),Ut(t.slice(r,r+e)||"ff")]}if(t.startsWith("rgb")){const e=t.match(/^rgba?\(\s*([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);if(e){const[t,r,n,i,s,a,o,l,u,c,h,p]=e,f=[i||" ",o||" ",c].join("");if(" "===f||" /"===f||",,"===f||",,,"===f){const t=[n,a,u].join(""),e="%%%"===t?100:""===t?255:0;if(e){const t=[Nt(+r/e,0,1),Nt(+s/e,0,1),Nt(+l/e,0,1),h?qt(+h,p):1];if(Zt(t))return t}}return}}const r=t.match(/^hsla?\(\s*([\de.+-]+)(?:deg)?(?:\s+|\s*(,)\s*)([\de.+-]+)%(?:\s+|\s*(,)\s*)([\de.+-]+)%(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);if(r){const[t,e,n,i,s,a,o,l,u]=r,c=[n||" ",s||" ",o].join("");if(" "===c||" /"===c||",,"===c||",,,"===c){const t=[+e,Nt(+i,0,100),Nt(+a,0,100),l?qt(+l,u):1];if(Zt(t))return function([t,e,r,n]){function i(n){const i=(n+t/30)%12,s=e*Math.min(r,1-r);return r-s*Math.max(-1,Math.min(i-3,9-i,1))}return t=Tt(t),e/=100,r/=100,[i(0),i(8),i(4),n]}(t)}}}(t);return e?new Kt(...e,!1):void 0}get rgb(){const{r:t,g:e,b:r,a:n}=this,i=n||1/0;return this.overwriteGetter("rgb",[t/i,e/i,r/i,n])}get hcl(){return this.overwriteGetter("hcl",function(t){const[e,r,n,i]=$t(t),s=Math.sqrt(r*r+n*n);return [Math.round(1e4*s)?Tt(Math.atan2(n,r)*Ft):NaN,s,e,i]}(this.rgb))}get lab(){return this.overwriteGetter("lab",$t(this.rgb))}overwriteGetter(t,e){return Object.defineProperty(this,t,{value:e}),e}toString(){const[t,e,r,n]=this.rgb;return `rgba(${[t,e,r].map((t=>Math.round(255*t))).join(",")},${n})`}}Kt.black=new Kt(0,0,0,1),Kt.white=new Kt(1,1,1,1),Kt.transparent=new Kt(0,0,0,0),Kt.red=new Kt(1,0,0,1);class Xt{constructor(t,e,r){this.sensitivity=t?e?"variant":"case":e?"accent":"base",this.locale=r,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"});}compare(t,e){return this.collator.compare(t,e)}resolvedLocale(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale}}class Ht{constructor(t,e,r,n,i){this.text=t,this.image=e,this.scale=r,this.fontStack=n,this.textColor=i;}}class Yt{constructor(t){this.sections=t;}static fromString(t){return new Yt([new Ht(t,null,null,null,null)])}isEmpty(){return 0===this.sections.length||!this.sections.some((t=>0!==t.text.length||t.image&&0!==t.image.name.length))}static factory(t){return t instanceof Yt?t:Yt.fromString(t)}toString(){return 0===this.sections.length?"":this.sections.map((t=>t.text)).join("")}}class Jt{constructor(t){this.values=t.slice();}static parse(t){if(t instanceof Jt)return t;if("number"==typeof t)return new Jt([t,t,t,t]);if(Array.isArray(t)&&!(t.length<1||t.length>4)){for(const e of t)if("number"!=typeof e)return;switch(t.length){case 1:t=[t[0],t[0],t[0],t[0]];break;case 2:t=[t[0],t[1],t[0],t[1]];break;case 3:t=[t[0],t[1],t[2],t[1]];}return new Jt(t)}}toString(){return JSON.stringify(this.values)}}const Wt=new Set(["center","left","right","top","bottom","top-left","top-right","bottom-left","bottom-right"]);class Qt{constructor(t){this.values=t.slice();}static parse(t){if(t instanceof Qt)return t;if(Array.isArray(t)&&!(t.length<1)&&t.length%2==0){for(let e=0;e=0&&t<=255&&"number"==typeof e&&e>=0&&e<=255&&"number"==typeof r&&r>=0&&r<=255?void 0===n||"number"==typeof n&&n>=0&&n<=1?null:`Invalid rgba value [${[t,e,r,n].join(", ")}]: 'a' must be between 0 and 1.`:`Invalid rgba value [${("number"==typeof n?[t,e,r,n]:[t,e,r]).join(", ")}]: 'r', 'g', and 'b' must be between 0 and 255.`}function re(t){if(null===t||"string"==typeof t||"boolean"==typeof t||"number"==typeof t||t instanceof Kt||t instanceof Xt||t instanceof Yt||t instanceof Jt||t instanceof Qt||t instanceof te)return !0;if(Array.isArray(t)){for(const e of t)if(!re(e))return !1;return !0}if("object"==typeof t){for(const e in t)if(!re(t[e]))return !1;return !0}return !1}function ne(t){if(null===t)return lt;if("string"==typeof t)return ct;if("boolean"==typeof t)return ht;if("number"==typeof t)return ut;if(t instanceof Kt)return pt;if(t instanceof Xt)return yt;if(t instanceof Yt)return mt;if(t instanceof Jt)return gt;if(t instanceof Qt)return vt;if(t instanceof te)return xt;if(Array.isArray(t)){const e=t.length;let r;for(const e of t){const t=ne(e);if(r){if(r===t)continue;r=dt;break}r=t;}return bt(r||dt,e)}return ft}function ie(t){const e=typeof t;return null===t?"":"string"===e||"number"===e||"boolean"===e?String(t):t instanceof Kt||t instanceof Yt||t instanceof Jt||t instanceof Qt||t instanceof te?t.toString():JSON.stringify(t)}class se{constructor(t,e){this.type=t,this.value=e;}static parse(t,e){if(2!==t.length)return e.error(`'literal' expression requires exactly one argument, but found ${t.length-1} instead.`);if(!re(t[1]))return e.error("invalid value");const r=t[1];let n=ne(r);const i=e.expectedType;return "array"!==n.kind||0!==n.N||!i||"array"!==i.kind||"number"==typeof i.N&&0!==i.N||(n=i),new se(n,r)}evaluate(){return this.value}eachChild(){}outputDefined(){return !0}}class ae{constructor(t){this.name="ExpressionEvaluationError",this.message=t;}toJSON(){return this.message}}const oe={string:ct,number:ut,boolean:ht,object:ft};class le{constructor(t,e){this.type=t,this.args=e;}static parse(t,e){if(t.length<2)return e.error("Expected at least one argument.");let r,n=1;const i=t[0];if("array"===i){let i,s;if(t.length>2){const r=t[1];if("string"!=typeof r||!(r in oe)||"object"===r)return e.error('The item type argument of "array" must be one of string, number, boolean',1);i=oe[r],n++;}else i=dt;if(t.length>3){if(null!==t[2]&&("number"!=typeof t[2]||t[2]<0||t[2]!==Math.floor(t[2])))return e.error('The length argument to "array" must be a positive integer literal',2);s=t[2],n++;}r=bt(i,s);}else {if(!oe[i])throw new Error(`Types doesn't contain name = ${i}`);r=oe[i];}const s=[];for(;nt.outputDefined()))}}const ue={"to-boolean":ht,"to-color":pt,"to-number":ut,"to-string":ct};class ce{constructor(t,e){this.type=t,this.args=e;}static parse(t,e){if(t.length<2)return e.error("Expected at least one argument.");const r=t[0];if(!ue[r])throw new Error(`Can't parse ${r} as it is not part of the known types`);if(("to-boolean"===r||"to-string"===r)&&2!==t.length)return e.error("Expected one argument.");const n=ue[r],i=[];for(let r=1;r4?`Invalid rbga value ${JSON.stringify(e)}: expected an array containing either three or four numeric values.`:ee(e[0],e[1],e[2],e[3]),!r))return new Kt(e[0]/255,e[1]/255,e[2]/255,e[3])}throw new ae(r||`Could not parse color from value '${"string"==typeof e?e:JSON.stringify(e)}'`)}case"padding":{let e;for(const r of this.args){e=r.evaluate(t);const n=Jt.parse(e);if(n)return n}throw new ae(`Could not parse padding from value '${"string"==typeof e?e:JSON.stringify(e)}'`)}case"variableAnchorOffsetCollection":{let e;for(const r of this.args){e=r.evaluate(t);const n=Qt.parse(e);if(n)return n}throw new ae(`Could not parse variableAnchorOffsetCollection from value '${"string"==typeof e?e:JSON.stringify(e)}'`)}case"number":{let e=null;for(const r of this.args){if(e=r.evaluate(t),null===e)return 0;const n=Number(e);if(!isNaN(n))return n}throw new ae(`Could not convert ${JSON.stringify(e)} to number.`)}case"formatted":return Yt.fromString(ie(this.args[0].evaluate(t)));case"resolvedImage":return te.fromString(ie(this.args[0].evaluate(t)));default:return ie(this.args[0].evaluate(t))}}eachChild(t){this.args.forEach(t);}outputDefined(){return this.args.every((t=>t.outputDefined()))}}const he=["Unknown","Point","LineString","Polygon"];class pe{constructor(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null;}id(){return this.feature&&"id"in this.feature?this.feature.id:null}geometryType(){return this.feature?"number"==typeof this.feature.type?he[this.feature.type]:this.feature.type:null}geometry(){return this.feature&&"geometry"in this.feature?this.feature.geometry:null}canonicalID(){return this.canonical}properties(){return this.feature&&this.feature.properties||{}}parseColor(t){let e=this._parseColorCache[t];return e||(e=this._parseColorCache[t]=Kt.parse(t)),e}}class fe{constructor(t,e,r=[],n,i=new ot,s=[]){this.registry=t,this.path=r,this.key=r.map((t=>`[${t}]`)).join(""),this.scope=i,this.errors=s,this.expectedType=n,this._isConstant=e;}parse(t,e,r,n,i={}){return e?this.concat(e,r,n)._parse(t,i):this._parse(t,i)}_parse(t,e){function r(t,e,r){return "assert"===r?new le(e,[t]):"coerce"===r?new ce(e,[t]):t}if(null!==t&&"string"!=typeof t&&"boolean"!=typeof t&&"number"!=typeof t||(t=["literal",t]),Array.isArray(t)){if(0===t.length)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');const n=t[0];if("string"!=typeof n)return this.error(`Expression name must be a string, but found ${typeof n} instead. If you wanted a literal array, use ["literal", [...]].`,0),null;const i=this.registry[n];if(i){let n=i.parse(t,this);if(!n)return null;if(this.expectedType){const t=this.expectedType,i=n.type;if("string"!==t.kind&&"number"!==t.kind&&"boolean"!==t.kind&&"object"!==t.kind&&"array"!==t.kind||"value"!==i.kind)if("color"!==t.kind&&"formatted"!==t.kind&&"resolvedImage"!==t.kind||"value"!==i.kind&&"string"!==i.kind)if("padding"!==t.kind||"value"!==i.kind&&"number"!==i.kind&&"array"!==i.kind)if("variableAnchorOffsetCollection"!==t.kind||"value"!==i.kind&&"array"!==i.kind){if(this.checkSubtype(t,i))return null}else n=r(n,t,e.typeAnnotation||"coerce");else n=r(n,t,e.typeAnnotation||"coerce");else n=r(n,t,e.typeAnnotation||"coerce");else n=r(n,t,e.typeAnnotation||"assert");}if(!(n instanceof se)&&"resolvedImage"!==n.type.kind&&this._isConstant(n)){const t=new pe;try{n=new se(n.type,n.evaluate(t));}catch(t){return this.error(t.message),null}}return n}return this.error(`Unknown expression "${n}". If you wanted a literal array, use ["literal", [...]].`,0)}return this.error(void 0===t?"'undefined' value invalid. Use null instead.":"object"==typeof t?'Bare objects invalid. Use ["literal", {...}] instead.':`Expected an array, but found ${typeof t} instead.`)}concat(t,e,r){const n="number"==typeof t?this.path.concat(t):this.path,i=r?this.scope.concat(r):this.scope;return new fe(this.registry,this._isConstant,n,e||null,i,this.errors)}error(t,...e){const r=`${this.key}${e.map((t=>`[${t}]`)).join("")}`;this.errors.push(new at(r,t));}checkSubtype(t,e){const r=At(t,e);return r&&this.error(r),r}}class de{constructor(t,e){this.type=e.type,this.bindings=[].concat(t),this.result=e;}evaluate(t){return this.result.evaluate(t)}eachChild(t){for(const e of this.bindings)t(e[1]);t(this.result);}static parse(t,e){if(t.length<4)return e.error(`Expected at least 3 arguments, but found ${t.length-1} instead.`);const r=[];for(let n=1;n=r.length)throw new ae(`Array index out of bounds: ${e} > ${r.length-1}.`);if(e!==Math.floor(e))throw new ae(`Array index must be an integer, but found ${e} instead.`);return r[e]}eachChild(t){t(this.index),t(this.input);}outputDefined(){return !1}}class ge{constructor(t,e){this.type=ht,this.needle=t,this.haystack=e;}static parse(t,e){if(3!==t.length)return e.error(`Expected 2 arguments, but found ${t.length-1} instead.`);const r=e.parse(t[1],1,dt),n=e.parse(t[2],2,dt);return r&&n?St(r.type,[ht,ct,ut,lt,dt])?new ge(r,n):e.error(`Expected first argument to be of type boolean, string, number or null, but found ${wt(r.type)} instead`):null}evaluate(t){const e=this.needle.evaluate(t),r=this.haystack.evaluate(t);if(!r)return !1;if(!kt(e,["boolean","string","number","null"]))throw new ae(`Expected first argument to be of type boolean, string, number or null, but found ${wt(ne(e))} instead.`);if(!kt(r,["string","array"]))throw new ae(`Expected second argument to be of type array or string, but found ${wt(ne(r))} instead.`);return r.indexOf(e)>=0}eachChild(t){t(this.needle),t(this.haystack);}outputDefined(){return !0}}class xe{constructor(t,e,r){this.type=ut,this.needle=t,this.haystack=e,this.fromIndex=r;}static parse(t,e){if(t.length<=2||t.length>=5)return e.error(`Expected 3 or 4 arguments, but found ${t.length-1} instead.`);const r=e.parse(t[1],1,dt),n=e.parse(t[2],2,dt);if(!r||!n)return null;if(!St(r.type,[ht,ct,ut,lt,dt]))return e.error(`Expected first argument to be of type boolean, string, number or null, but found ${wt(r.type)} instead`);if(4===t.length){const i=e.parse(t[3],3,ut);return i?new xe(r,n,i):null}return new xe(r,n)}evaluate(t){const e=this.needle.evaluate(t),r=this.haystack.evaluate(t);if(!kt(e,["boolean","string","number","null"]))throw new ae(`Expected first argument to be of type boolean, string, number or null, but found ${wt(ne(e))} instead.`);let n;if(this.fromIndex&&(n=this.fromIndex.evaluate(t)),kt(r,["string"])){const t=r.indexOf(e,n);return -1===t?-1:[...r.slice(0,t)].length}if(kt(r,["array"]))return r.indexOf(e,n);throw new ae(`Expected second argument to be of type array or string, but found ${wt(ne(r))} instead.`)}eachChild(t){t(this.needle),t(this.haystack),this.fromIndex&&t(this.fromIndex);}outputDefined(){return !1}}class ve{constructor(t,e,r,n,i,s){this.inputType=t,this.type=e,this.input=r,this.cases=n,this.outputs=i,this.otherwise=s;}static parse(t,e){if(t.length<5)return e.error(`Expected at least 4 arguments, but found only ${t.length-1}.`);if(t.length%2!=1)return e.error("Expected an even number of arguments.");let r,n;e.expectedType&&"value"!==e.expectedType.kind&&(n=e.expectedType);const i={},s=[];for(let a=2;aNumber.MAX_SAFE_INTEGER)return u.error(`Branch labels must be integers no larger than ${Number.MAX_SAFE_INTEGER}.`);if("number"==typeof t&&Math.floor(t)!==t)return u.error("Numeric branch labels must be integer values.");if(r){if(u.checkSubtype(r,ne(t)))return null}else r=ne(t);if(void 0!==i[String(t)])return u.error("Branch labels must be unique.");i[String(t)]=s.length;}const c=e.parse(l,a,n);if(!c)return null;n=n||c.type,s.push(c);}const a=e.parse(t[1],1,dt);if(!a)return null;const o=e.parse(t[t.length-1],t.length-1,n);return o?"value"!==a.type.kind&&e.concat(1).checkSubtype(r,a.type)?null:new ve(r,n,a,i,s,o):null}evaluate(t){const e=this.input.evaluate(t);return (ne(e)===this.inputType&&this.outputs[this.cases[e]]||this.otherwise).evaluate(t)}eachChild(t){t(this.input),this.outputs.forEach(t),t(this.otherwise);}outputDefined(){return this.outputs.every((t=>t.outputDefined()))&&this.otherwise.outputDefined()}}class be{constructor(t,e,r){this.type=t,this.branches=e,this.otherwise=r;}static parse(t,e){if(t.length<4)return e.error(`Expected at least 3 arguments, but found only ${t.length-1}.`);if(t.length%2!=0)return e.error("Expected an odd number of arguments.");let r;e.expectedType&&"value"!==e.expectedType.kind&&(r=e.expectedType);const n=[];for(let i=1;ie.outputDefined()))&&this.otherwise.outputDefined()}}class we{constructor(t,e,r,n){this.type=t,this.input=e,this.beginIndex=r,this.endIndex=n;}static parse(t,e){if(t.length<=2||t.length>=5)return e.error(`Expected 3 or 4 arguments, but found ${t.length-1} instead.`);const r=e.parse(t[1],1,dt),n=e.parse(t[2],2,ut);if(!r||!n)return null;if(!St(r.type,[bt(dt),ct,dt]))return e.error(`Expected first argument to be of type array or string, but found ${wt(r.type)} instead`);if(4===t.length){const i=e.parse(t[3],3,ut);return i?new we(r.type,r,n,i):null}return new we(r.type,r,n)}evaluate(t){const e=this.input.evaluate(t),r=this.beginIndex.evaluate(t);let n;if(this.endIndex&&(n=this.endIndex.evaluate(t)),kt(e,["string"]))return [...e].slice(r,n).join("");if(kt(e,["array"]))return e.slice(r,n);throw new ae(`Expected first argument to be of type array or string, but found ${wt(ne(e))} instead.`)}eachChild(t){t(this.input),t(this.beginIndex),this.endIndex&&t(this.endIndex);}outputDefined(){return !1}}function _e(t,e){const r=t.length-1;let n,i,s=0,a=r,o=0;for(;s<=a;)if(o=Math.floor((s+a)/2),n=t[o],i=t[o+1],n<=e){if(o===r||ee))throw new ae("Input is not a number.");a=o-1;}return 0}class Ae{constructor(t,e,r){this.type=t,this.input=e,this.labels=[],this.outputs=[];for(const[t,e]of r)this.labels.push(t),this.outputs.push(e);}static parse(t,e){if(t.length-1<4)return e.error(`Expected at least 4 arguments, but found only ${t.length-1}.`);if((t.length-1)%2!=0)return e.error("Expected an even number of arguments.");const r=e.parse(t[1],1,ut);if(!r)return null;const n=[];let i=null;e.expectedType&&"value"!==e.expectedType.kind&&(i=e.expectedType);for(let r=1;r=s)return e.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',o);const u=e.parse(a,l,i);if(!u)return null;i=i||u.type,n.push([s,u]);}return new Ae(i,r,n)}evaluate(t){const e=this.labels,r=this.outputs;if(1===e.length)return r[0].evaluate(t);const n=this.input.evaluate(t);if(n<=e[0])return r[0].evaluate(t);const i=e.length;return n>=e[i-1]?r[i-1].evaluate(t):r[_e(e,n)].evaluate(t)}eachChild(t){t(this.input);for(const e of this.outputs)t(e);}outputDefined(){return this.outputs.every((t=>t.outputDefined()))}}function Se(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var ke=Me;function Me(t,e,r,n){this.cx=3*t,this.bx=3*(r-t)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*e,this.by=3*(n-e)-this.cy,this.ay=1-this.cy-this.by,this.p1x=t,this.p1y=e,this.p2x=r,this.p2y=n;}Me.prototype={sampleCurveX:function(t){return ((this.ax*t+this.bx)*t+this.cx)*t},sampleCurveY:function(t){return ((this.ay*t+this.by)*t+this.cy)*t},sampleCurveDerivativeX:function(t){return (3*this.ax*t+2*this.bx)*t+this.cx},solveCurveX:function(t,e){if(void 0===e&&(e=1e-6),t<0)return 0;if(t>1)return 1;for(var r=t,n=0;n<8;n++){var i=this.sampleCurveX(r)-t;if(Math.abs(i)i?a=r:o=r,r=.5*(o-a)+a;return r},solve:function(t,e){return this.sampleCurveY(this.solveCurveX(t,e))}};var Ie=Se(ke);function ze(t,e,r){return t+r*(e-t)}function Pe(t,e,r){return t.map(((t,n)=>ze(t,e[n],r)))}const Ce={number:ze,color:function(t,e,r,n="rgb"){switch(n){case"rgb":{const[n,i,s,a]=Pe(t.rgb,e.rgb,r);return new Kt(n,i,s,a,!1)}case"hcl":{const[n,i,s,a]=t.hcl,[o,l,u,c]=e.hcl;let h,p;if(isNaN(n)||isNaN(o))isNaN(n)?isNaN(o)?h=NaN:(h=o,1!==s&&0!==s||(p=l)):(h=n,1!==u&&0!==u||(p=i));else {let t=o-n;o>n&&t>180?t-=360:o180&&(t+=360),h=n+r*t;}const[f,d,y,m]=function([t,e,r,n]){return t=isNaN(t)?0:t*Et,Ot([r,Math.cos(t)*e,Math.sin(t)*e,n])}([h,null!=p?p:ze(i,l,r),ze(s,u,r),ze(a,c,r)]);return new Kt(f,d,y,m,!1)}case"lab":{const[n,i,s,a]=Ot(Pe(t.lab,e.lab,r));return new Kt(n,i,s,a,!1)}}},array:Pe,padding:function(t,e,r){return new Jt(Pe(t.values,e.values,r))},variableAnchorOffsetCollection:function(t,e,r){const n=t.values,i=e.values;if(n.length!==i.length)throw new ae(`Cannot interpolate values of different length. from: ${t.toString()}, to: ${e.toString()}`);const s=[];for(let t=0;t"number"!=typeof t||t<0||t>1)))return e.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);n={name:"cubic-bezier",controlPoints:t};}}if(t.length-1<4)return e.error(`Expected at least 4 arguments, but found only ${t.length-1}.`);if((t.length-1)%2!=0)return e.error("Expected an even number of arguments.");if(i=e.parse(i,2,ut),!i)return null;const a=[];let o=null;"interpolate-hcl"===r||"interpolate-lab"===r?o=pt:e.expectedType&&"value"!==e.expectedType.kind&&(o=e.expectedType);for(let t=0;t=r)return e.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',i);const u=e.parse(n,l,o);if(!u)return null;o=o||u.type,a.push([r,u]);}return Mt(o,ut)||Mt(o,pt)||Mt(o,gt)||Mt(o,vt)||Mt(o,bt(ut))?new Be(o,r,n,i,a):e.error(`Type ${wt(o)} is not interpolatable.`)}evaluate(t){const e=this.labels,r=this.outputs;if(1===e.length)return r[0].evaluate(t);const n=this.input.evaluate(t);if(n<=e[0])return r[0].evaluate(t);const i=e.length;if(n>=e[i-1])return r[i-1].evaluate(t);const s=_e(e,n),a=Be.interpolationFactor(this.interpolation,n,e[s],e[s+1]),o=r[s].evaluate(t),l=r[s+1].evaluate(t);switch(this.operator){case"interpolate":return Ce[this.type.kind](o,l,a);case"interpolate-hcl":return Ce.color(o,l,a,"hcl");case"interpolate-lab":return Ce.color(o,l,a,"lab")}}eachChild(t){t(this.input);for(const e of this.outputs)t(e);}outputDefined(){return this.outputs.every((t=>t.outputDefined()))}}function Ve(t,e,r,n){const i=n-r,s=t-r;return 0===i?0:1===e?s/i:(Math.pow(e,s)-1)/(Math.pow(e,i)-1)}class Ee{constructor(t,e){this.type=t,this.args=e;}static parse(t,e){if(t.length<2)return e.error("Expectected at least one argument.");let r=null;const n=e.expectedType;n&&"value"!==n.kind&&(r=n);const i=[];for(const n of t.slice(1)){const t=e.parse(n,1+i.length,r,void 0,{typeAnnotation:"omit"});if(!t)return null;r=r||t.type,i.push(t);}if(!r)throw new Error("No output type");const s=n&&i.some((t=>At(n,t.type)));return new Ee(s?dt:r,i)}evaluate(t){let e,r=null,n=0;for(const i of this.args)if(n++,r=i.evaluate(t),r&&r instanceof te&&!r.available&&(e||(e=r.name),r=null,n===this.args.length&&(r=e)),null!==r)break;return r}eachChild(t){this.args.forEach(t);}outputDefined(){return this.args.every((t=>t.outputDefined()))}}function Fe(t,e){return "=="===t||"!="===t?"boolean"===e.kind||"string"===e.kind||"number"===e.kind||"null"===e.kind||"value"===e.kind:"string"===e.kind||"number"===e.kind||"value"===e.kind}function Te(t,e,r,n){return 0===n.compare(e,r)}function $e(t,e,r){const n="=="!==t&&"!="!==t;return class i{constructor(t,e,r){this.type=ht,this.lhs=t,this.rhs=e,this.collator=r,this.hasUntypedArgument="value"===t.type.kind||"value"===e.type.kind;}static parse(t,e){if(3!==t.length&&4!==t.length)return e.error("Expected two or three arguments.");const r=t[0];let s=e.parse(t[1],1,dt);if(!s)return null;if(!Fe(r,s.type))return e.concat(1).error(`"${r}" comparisons are not supported for type '${wt(s.type)}'.`);let a=e.parse(t[2],2,dt);if(!a)return null;if(!Fe(r,a.type))return e.concat(2).error(`"${r}" comparisons are not supported for type '${wt(a.type)}'.`);if(s.type.kind!==a.type.kind&&"value"!==s.type.kind&&"value"!==a.type.kind)return e.error(`Cannot compare types '${wt(s.type)}' and '${wt(a.type)}'.`);n&&("value"===s.type.kind&&"value"!==a.type.kind?s=new le(a.type,[s]):"value"!==s.type.kind&&"value"===a.type.kind&&(a=new le(s.type,[a])));let o=null;if(4===t.length){if("string"!==s.type.kind&&"string"!==a.type.kind&&"value"!==s.type.kind&&"value"!==a.type.kind)return e.error("Cannot use collator to compare non-string types.");if(o=e.parse(t[3],3,yt),!o)return null}return new i(s,a,o)}evaluate(i){const s=this.lhs.evaluate(i),a=this.rhs.evaluate(i);if(n&&this.hasUntypedArgument){const e=ne(s),r=ne(a);if(e.kind!==r.kind||"string"!==e.kind&&"number"!==e.kind)throw new ae(`Expected arguments for "${t}" to be (string, string) or (number, number), but found (${e.kind}, ${r.kind}) instead.`)}if(this.collator&&!n&&this.hasUntypedArgument){const t=ne(s),r=ne(a);if("string"!==t.kind||"string"!==r.kind)return e(i,s,a)}return this.collator?r(i,s,a,this.collator.evaluate(i)):e(i,s,a)}eachChild(t){t(this.lhs),t(this.rhs),this.collator&&t(this.collator);}outputDefined(){return !0}}}const Le=$e("==",(function(t,e,r){return e===r}),Te),De=$e("!=",(function(t,e,r){return e!==r}),(function(t,e,r,n){return !Te(0,e,r,n)})),Oe=$e("<",(function(t,e,r){return e",(function(t,e,r){return e>r}),(function(t,e,r,n){return n.compare(e,r)>0})),Re=$e("<=",(function(t,e,r){return e<=r}),(function(t,e,r,n){return n.compare(e,r)<=0})),Ue=$e(">=",(function(t,e,r){return e>=r}),(function(t,e,r,n){return n.compare(e,r)>=0}));class qe{constructor(t,e,r){this.type=yt,this.locale=r,this.caseSensitive=t,this.diacriticSensitive=e;}static parse(t,e){if(2!==t.length)return e.error("Expected one argument.");const r=t[1];if("object"!=typeof r||Array.isArray(r))return e.error("Collator options argument must be an object.");const n=e.parse(void 0!==r["case-sensitive"]&&r["case-sensitive"],1,ht);if(!n)return null;const i=e.parse(void 0!==r["diacritic-sensitive"]&&r["diacritic-sensitive"],1,ht);if(!i)return null;let s=null;return r.locale&&(s=e.parse(r.locale,1,ct),!s)?null:new qe(n,i,s)}evaluate(t){return new Xt(this.caseSensitive.evaluate(t),this.diacriticSensitive.evaluate(t),this.locale?this.locale.evaluate(t):null)}eachChild(t){t(this.caseSensitive),t(this.diacriticSensitive),this.locale&&t(this.locale);}outputDefined(){return !1}}class Ne{constructor(t,e,r,n,i){this.type=ct,this.number=t,this.locale=e,this.currency=r,this.minFractionDigits=n,this.maxFractionDigits=i;}static parse(t,e){if(3!==t.length)return e.error("Expected two arguments.");const r=e.parse(t[1],1,ut);if(!r)return null;const n=t[2];if("object"!=typeof n||Array.isArray(n))return e.error("NumberFormat options argument must be an object.");let i=null;if(n.locale&&(i=e.parse(n.locale,1,ct),!i))return null;let s=null;if(n.currency&&(s=e.parse(n.currency,1,ct),!s))return null;let a=null;if(n["min-fraction-digits"]&&(a=e.parse(n["min-fraction-digits"],1,ut),!a))return null;let o=null;return n["max-fraction-digits"]&&(o=e.parse(n["max-fraction-digits"],1,ut),!o)?null:new Ne(r,i,s,a,o)}evaluate(t){return new Intl.NumberFormat(this.locale?this.locale.evaluate(t):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(t):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(t):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(t):void 0}).format(this.number.evaluate(t))}eachChild(t){t(this.number),this.locale&&t(this.locale),this.currency&&t(this.currency),this.minFractionDigits&&t(this.minFractionDigits),this.maxFractionDigits&&t(this.maxFractionDigits);}outputDefined(){return !1}}class Ze{constructor(t){this.type=mt,this.sections=t;}static parse(t,e){if(t.length<2)return e.error("Expected at least one argument.");const r=t[1];if(!Array.isArray(r)&&"object"==typeof r)return e.error("First argument must be an image or text section.");const n=[];let i=!1;for(let r=1;r<=t.length-1;++r){const s=t[r];if(i&&"object"==typeof s&&!Array.isArray(s)){i=!1;let t=null;if(s["font-scale"]&&(t=e.parse(s["font-scale"],1,ut),!t))return null;let r=null;if(s["text-font"]&&(r=e.parse(s["text-font"],1,bt(ct)),!r))return null;let a=null;if(s["text-color"]&&(a=e.parse(s["text-color"],1,pt),!a))return null;const o=n[n.length-1];o.scale=t,o.font=r,o.textColor=a;}else {const s=e.parse(t[r],1,dt);if(!s)return null;const a=s.type.kind;if("string"!==a&&"value"!==a&&"null"!==a&&"resolvedImage"!==a)return e.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");i=!0,n.push({content:s,scale:null,font:null,textColor:null});}}return new Ze(n)}evaluate(t){return new Yt(this.sections.map((e=>{const r=e.content.evaluate(t);return ne(r)===xt?new Ht("",r,null,null,null):new Ht(ie(r),null,e.scale?e.scale.evaluate(t):null,e.font?e.font.evaluate(t).join(","):null,e.textColor?e.textColor.evaluate(t):null)})))}eachChild(t){for(const e of this.sections)t(e.content),e.scale&&t(e.scale),e.font&&t(e.font),e.textColor&&t(e.textColor);}outputDefined(){return !1}}class Ge{constructor(t){this.type=xt,this.input=t;}static parse(t,e){if(2!==t.length)return e.error("Expected two arguments.");const r=e.parse(t[1],1,ct);return r?new Ge(r):e.error("No image name provided.")}evaluate(t){const e=this.input.evaluate(t),r=te.fromString(e);return r&&t.availableImages&&(r.available=t.availableImages.indexOf(e)>-1),r}eachChild(t){t(this.input);}outputDefined(){return !1}}class Ke{constructor(t){this.type=ut,this.input=t;}static parse(t,e){if(2!==t.length)return e.error(`Expected 1 argument, but found ${t.length-1} instead.`);const r=e.parse(t[1],1);return r?"array"!==r.type.kind&&"string"!==r.type.kind&&"value"!==r.type.kind?e.error(`Expected argument of type string or array, but found ${wt(r.type)} instead.`):new Ke(r):null}evaluate(t){const e=this.input.evaluate(t);if("string"==typeof e)return [...e].length;if(Array.isArray(e))return e.length;throw new ae(`Expected value to be of type string or array, but found ${wt(ne(e))} instead.`)}eachChild(t){t(this.input);}outputDefined(){return !1}}const Xe=8192;function He(t,e){const r=(180+t[0])/360,n=(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+t[1]*Math.PI/360)))/360,i=Math.pow(2,e.z);return [Math.round(r*i*Xe),Math.round(n*i*Xe)]}function Ye(t,e){const r=Math.pow(2,e.z);return [(i=(t[0]/Xe+e.x)/r,360*i-180),(n=(t[1]/Xe+e.y)/r,360/Math.PI*Math.atan(Math.exp((180-360*n)*Math.PI/180))-90)];var n,i;}function Je(t,e){t[0]=Math.min(t[0],e[0]),t[1]=Math.min(t[1],e[1]),t[2]=Math.max(t[2],e[0]),t[3]=Math.max(t[3],e[1]);}function We(t,e){return !(t[0]<=e[0]||t[2]>=e[2]||t[1]<=e[1]||t[3]>=e[3])}function Qe(t,e,r){const n=t[0]-e[0],i=t[1]-e[1],s=t[0]-r[0],a=t[1]-r[1];return n*a-s*i==0&&n*s<=0&&i*a<=0}function tr(t,e,r,n){return 0!=(i=[n[0]-r[0],n[1]-r[1]])[0]*(s=[e[0]-t[0],e[1]-t[1]])[1]-i[1]*s[0]&&!(!ar(t,e,r,n)||!ar(r,n,t,e));var i,s;}function er(t,e,r){for(const n of r)for(let r=0;r(i=t)[1]!=(a=o[e+1])[1]>i[1]&&i[0]<(a[0]-s[0])*(i[1]-s[1])/(a[1]-s[1])+s[0]&&(n=!n);}var i,s,a;return n}function nr(t,e){for(const r of e)if(rr(t,r))return !0;return !1}function ir(t,e){for(const r of t)if(!rr(r,e))return !1;for(let r=0;r0&&o<0||a<0&&o>0}function or(t,e,r){const n=[];for(let i=0;ir[2]){const e=.5*n;let i=t[0]-r[0]>e?-n:r[0]-t[0]>e?n:0;0===i&&(i=t[0]-r[2]>e?-n:r[2]-t[0]>e?n:0),t[0]+=i;}Je(e,t);}function cr(t,e,r,n){const i=Math.pow(2,n.z)*Xe,s=[n.x*Xe,n.y*Xe],a=[];for(const n of t)for(const t of n){const n=[t.x+s[0],t.y+s[1]];ur(n,e,r,i),a.push(n);}return a}function hr(t,e,r,n){const i=Math.pow(2,n.z)*Xe,s=[n.x*Xe,n.y*Xe],a=[];for(const r of t){const t=[];for(const n of r){const r=[n.x+s[0],n.y+s[1]];Je(e,r),t.push(r);}a.push(t);}if(e[2]-e[0]<=i/2){(o=e)[0]=o[1]=1/0,o[2]=o[3]=-1/0;for(const t of a)for(const n of t)ur(n,e,r,i);}var o;return a}class pr{constructor(t,e){this.type=ht,this.geojson=t,this.geometries=e;}static parse(t,e){if(2!==t.length)return e.error(`'within' expression requires exactly one argument, but found ${t.length-1} instead.`);if(re(t[1])){const e=t[1];if("FeatureCollection"===e.type){const t=[];for(const r of e.features){const{type:e,coordinates:n}=r.geometry;"Polygon"===e&&t.push(n),"MultiPolygon"===e&&t.push(...n);}if(t.length)return new pr(e,{type:"MultiPolygon",coordinates:t})}else if("Feature"===e.type){const t=e.geometry.type;if("Polygon"===t||"MultiPolygon"===t)return new pr(e,e.geometry)}else if("Polygon"===e.type||"MultiPolygon"===e.type)return new pr(e,e)}return e.error("'within' expression requires valid geojson object that contains polygon geometry type.")}evaluate(t){if(null!=t.geometry()&&null!=t.canonicalID()){if("Point"===t.geometryType())return function(t,e){const r=[1/0,1/0,-1/0,-1/0],n=[1/0,1/0,-1/0,-1/0],i=t.canonicalID();if("Polygon"===e.type){const s=or(e.coordinates,n,i),a=cr(t.geometry(),r,n,i);if(!We(r,n))return !1;for(const t of a)if(!rr(t,s))return !1}if("MultiPolygon"===e.type){const s=lr(e.coordinates,n,i),a=cr(t.geometry(),r,n,i);if(!We(r,n))return !1;for(const t of a)if(!nr(t,s))return !1}return !0}(t,this.geometries);if("LineString"===t.geometryType())return function(t,e){const r=[1/0,1/0,-1/0,-1/0],n=[1/0,1/0,-1/0,-1/0],i=t.canonicalID();if("Polygon"===e.type){const s=or(e.coordinates,n,i),a=hr(t.geometry(),r,n,i);if(!We(r,n))return !1;for(const t of a)if(!ir(t,s))return !1}if("MultiPolygon"===e.type){const s=lr(e.coordinates,n,i),a=hr(t.geometry(),r,n,i);if(!We(r,n))return !1;for(const t of a)if(!sr(t,s))return !1}return !0}(t,this.geometries)}return !1}eachChild(){}outputDefined(){return !0}}let fr=class{constructor(t=[],e=((t,e)=>te?1:0)){if(this.data=t,this.length=this.data.length,this.compare=e,this.length>0)for(let t=(this.length>>1)-1;t>=0;t--)this._down(t);}push(t){this.data.push(t),this._up(this.length++);}pop(){if(0===this.length)return;const t=this.data[0],e=this.data.pop();return --this.length>0&&(this.data[0]=e,this._down(0)),t}peek(){return this.data[0]}_up(t){const{data:e,compare:r}=this,n=e[t];for(;t>0;){const i=t-1>>1,s=e[i];if(r(n,s)>=0)break;e[t]=s,t=i;}e[t]=n;}_down(t){const{data:e,compare:r}=this,n=this.length>>1,i=e[t];for(;t=0)break;e[t]=e[n],t=n;}e[t]=i;}};function dr(t,e,r,n,i){yr(t,e,r,n||t.length-1,i||gr);}function yr(t,e,r,n,i){for(;n>r;){if(n-r>600){var s=n-r+1,a=e-r+1,o=Math.log(s),l=.5*Math.exp(2*o/3),u=.5*Math.sqrt(o*l*(s-l)/s)*(a-s/2<0?-1:1);yr(t,e,Math.max(r,Math.floor(e-a*l/s+u)),Math.min(n,Math.floor(e+(s-a)*l/s+u)),i);}var c=t[e],h=r,p=n;for(mr(t,r,e),i(t[n],c)>0&&mr(t,r,n);h0;)p--;}0===i(t[r],c)?mr(t,r,p):mr(t,++p,n),p<=e&&(r=p+1),e<=p&&(n=p-1);}}function mr(t,e,r){var n=t[e];t[e]=t[r],t[r]=n;}function gr(t,e){return te?1:0}function xr(t,e){if(t.length<=1)return [t];const r=[];let n,i;for(const e of t){const t=br(e);0!==t&&(e.area=Math.abs(t),void 0===i&&(i=t<0),i===t<0?(n&&r.push(n),n=[e]):n.push(e));}if(n&&r.push(n),e>1)for(let t=0;t1?(l=t[o+1][0],u=t[o+1][1]):p>0&&(l+=c/this.kx*p,u+=h/this.ky*p)),c=this.wrap(e[0]-l)*this.kx,h=(e[1]-u)*this.ky;const f=c*c+h*h;f180;)t-=360;return t}}function kr(t,e){return e[0]-t[0]}function Mr(t){return t[1]-t[0]+1}function Ir(t,e){return t[1]>=t[0]&&t[1]t[1])return [null,null];const r=Mr(t);if(e){if(2===r)return [t,null];const e=Math.floor(r/2);return [[t[0],t[0]+e],[t[0]+e,t[1]]]}if(1===r)return [t,null];const n=Math.floor(r/2)-1;return [[t[0],t[0]+n],[t[0]+n+1,t[1]]]}function Pr(t,e){if(!Ir(e,t.length))return [1/0,1/0,-1/0,-1/0];const r=[1/0,1/0,-1/0,-1/0];for(let n=e[0];n<=e[1];++n)Je(r,t[n]);return r}function Cr(t){const e=[1/0,1/0,-1/0,-1/0];for(const r of t)for(const t of r)Je(e,t);return e}function Br(t){return t[0]!==-1/0&&t[1]!==-1/0&&t[2]!==1/0&&t[3]!==1/0}function Vr(t,e,r){if(!Br(t)||!Br(e))return NaN;let n=0,i=0;return t[2]e[2]&&(n=t[0]-e[2]),t[1]>e[3]&&(i=t[1]-e[3]),t[3]=n)return n;if(We(i,s)){if(Or(t,e))return 0}else if(Or(e,t))return 0;let a=1/0;for(const n of t)for(let t=0,i=n.length,s=i-1;t0;){const i=a.pop();if(i[0]>=s)continue;const l=i[1],u=e?50:100;if(Mr(l)<=u){if(!Ir(l,t.length))return NaN;if(e){const e=Dr(t,l,r,n);if(isNaN(e)||0===e)return e;s=Math.min(s,e);}else for(let e=l[0];e<=l[1];++e){const i=Lr(t[e],r,n);if(s=Math.min(s,i),0===s)return 0}}else {const r=zr(l,e);Rr(a,s,n,t,o,r[0]),Rr(a,s,n,t,o,r[1]);}}return s}function Nr(t,e,r,n,i,s=1/0){let a=Math.min(s,i.distance(t[0],r[0]));if(0===a)return a;const o=new fr([[0,[0,t.length-1],[0,r.length-1]]],kr);for(;o.length>0;){const s=o.pop();if(s[0]>=a)continue;const l=s[1],u=s[2],c=e?50:100,h=n?50:100;if(Mr(l)<=c&&Mr(u)<=h){if(!Ir(l,t.length)&&Ir(u,r.length))return NaN;let s;if(e&&n)s=Tr(t,l,r,u,i),a=Math.min(a,s);else if(e&&!n){const e=t.slice(l[0],l[1]+1);for(let t=u[0];t<=u[1];++t)if(s=Er(r[t],e,i),a=Math.min(a,s),0===a)return a}else if(!e&&n){const e=r.slice(u[0],u[1]+1);for(let r=l[0];r<=l[1];++r)if(s=Er(t[r],e,i),a=Math.min(a,s),0===a)return a}else s=$r(t,l,r,u,i),a=Math.min(a,s);}else {const s=zr(l,e),c=zr(u,n);Ur(o,a,i,t,r,s[0],c[0]),Ur(o,a,i,t,r,s[0],c[1]),Ur(o,a,i,t,r,s[1],c[0]),Ur(o,a,i,t,r,s[1],c[1]);}}return a}function Zr(t){return "MultiPolygon"===t.type?t.coordinates.map((t=>({type:"Polygon",coordinates:t}))):"MultiLineString"===t.type?t.coordinates.map((t=>({type:"LineString",coordinates:t}))):"MultiPoint"===t.type?t.coordinates.map((t=>({type:"Point",coordinates:t}))):[t]}class Gr{constructor(t,e){this.type=ut,this.geojson=t,this.geometries=e;}static parse(t,e){if(2!==t.length)return e.error(`'distance' expression requires exactly one argument, but found ${t.length-1} instead.`);if(re(t[1])){const e=t[1];if("FeatureCollection"===e.type)return new Gr(e,e.features.map((t=>Zr(t.geometry))).flat());if("Feature"===e.type)return new Gr(e,Zr(e.geometry));if("type"in e&&"coordinates"in e)return new Gr(e,Zr(e))}return e.error("'distance' expression requires valid geojson object that contains polygon geometry type.")}evaluate(t){if(null!=t.geometry()&&null!=t.canonicalID()){if("Point"===t.geometryType())return function(t,e){const r=t.geometry(),n=r.flat().map((e=>Ye([e.x,e.y],t.canonical)));if(0===r.length)return NaN;const i=new Sr(n[0][1]);let s=1/0;for(const t of e){switch(t.type){case"Point":s=Math.min(s,Nr(n,!1,[t.coordinates],!1,i,s));break;case"LineString":s=Math.min(s,Nr(n,!1,t.coordinates,!0,i,s));break;case"Polygon":s=Math.min(s,qr(n,!1,t.coordinates,i,s));}if(0===s)return s}return s}(t,this.geometries);if("LineString"===t.geometryType())return function(t,e){const r=t.geometry(),n=r.flat().map((e=>Ye([e.x,e.y],t.canonical)));if(0===r.length)return NaN;const i=new Sr(n[0][1]);let s=1/0;for(const t of e){switch(t.type){case"Point":s=Math.min(s,Nr(n,!0,[t.coordinates],!1,i,s));break;case"LineString":s=Math.min(s,Nr(n,!0,t.coordinates,!0,i,s));break;case"Polygon":s=Math.min(s,qr(n,!0,t.coordinates,i,s));}if(0===s)return s}return s}(t,this.geometries);if("Polygon"===t.geometryType())return function(t,e){const r=t.geometry();if(0===r.length||0===r[0].length)return NaN;const n=xr(r,0).map((e=>e.map((e=>e.map((e=>Ye([e.x,e.y],t.canonical))))))),i=new Sr(n[0][0][0][1]);let s=1/0;for(const t of e)for(const e of n){switch(t.type){case"Point":s=Math.min(s,qr([t.coordinates],!1,e,i,s));break;case"LineString":s=Math.min(s,qr(t.coordinates,!0,e,i,s));break;case"Polygon":s=Math.min(s,jr(e,t.coordinates,i,s));}if(0===s)return s}return s}(t,this.geometries)}return NaN}eachChild(){}outputDefined(){return !0}}const Kr={"==":Le,"!=":De,">":je,"<":Oe,">=":Ue,"<=":Re,array:le,at:me,boolean:le,case:be,coalesce:Ee,collator:qe,format:Ze,image:Ge,in:ge,"index-of":xe,interpolate:Be,"interpolate-hcl":Be,"interpolate-lab":Be,length:Ke,let:de,literal:se,match:ve,number:le,"number-format":Ne,object:le,slice:we,step:Ae,string:le,"to-boolean":ce,"to-color":ce,"to-number":ce,"to-string":ce,var:ye,within:pr,distance:Gr};class Xr{constructor(t,e,r,n){this.name=t,this.type=e,this._evaluate=r,this.args=n;}evaluate(t){return this._evaluate(t,this.args)}eachChild(t){this.args.forEach(t);}outputDefined(){return !1}static parse(t,e){const r=t[0],n=Xr.definitions[r];if(!n)return e.error(`Unknown expression "${r}". If you wanted a literal array, use ["literal", [...]].`,0);const i=Array.isArray(n)?n[0]:n.type,s=Array.isArray(n)?[[n[1],n[2]]]:n.overloads,a=s.filter((([e])=>!Array.isArray(e)||e.length===t.length-1));let o=null;for(const[n,s]of a){o=new fe(e.registry,Qr,e.path,null,e.scope);const a=[];let l=!1;for(let e=1;e{return e=t,Array.isArray(e)?`(${e.map(wt).join(", ")})`:`(${wt(e.type)}...)`;var e;})).join(" | "),n=[];for(let r=1;r{r=e?r&&Qr(t):r&&t instanceof se;})),!!r&&tn(t)&&rn(t,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"])}function tn(t){if(t instanceof Xr){if("get"===t.name&&1===t.args.length)return !1;if("feature-state"===t.name)return !1;if("has"===t.name&&1===t.args.length)return !1;if("properties"===t.name||"geometry-type"===t.name||"id"===t.name)return !1;if(/^filter-/.test(t.name))return !1}if(t instanceof pr)return !1;if(t instanceof Gr)return !1;let e=!0;return t.eachChild((t=>{e&&!tn(t)&&(e=!1);})),e}function en(t){if(t instanceof Xr&&"feature-state"===t.name)return !1;let e=!0;return t.eachChild((t=>{e&&!en(t)&&(e=!1);})),e}function rn(t,e){if(t instanceof Xr&&e.indexOf(t.name)>=0)return !1;let r=!0;return t.eachChild((t=>{r&&!rn(t,e)&&(r=!1);})),r}function nn(t){return {result:"success",value:t}}function sn(t){return {result:"error",value:t}}function an(t){return "data-driven"===t["property-type"]||"cross-faded-data-driven"===t["property-type"]}function on(t){return !!t.expression&&t.expression.parameters.indexOf("zoom")>-1}function ln(t){return !!t.expression&&t.expression.interpolated}function un(t){return t instanceof Number?"number":t instanceof String?"string":t instanceof Boolean?"boolean":Array.isArray(t)?"array":null===t?"null":typeof t}function cn(t){return "object"==typeof t&&null!==t&&!Array.isArray(t)}function hn(t){return t}function pn(t,e){const r="color"===e.type,n=t.stops&&"object"==typeof t.stops[0][0],i=n||!(n||void 0!==t.property),s=t.type||(ln(e)?"exponential":"interval");if(r||"padding"===e.type){const n=r?Kt.parse:Jt.parse;(t=st({},t)).stops&&(t.stops=t.stops.map((t=>[t[0],n(t[1])]))),t.default=n(t.default?t.default:e.default);}if(t.colorSpace&&"rgb"!==(a=t.colorSpace)&&"hcl"!==a&&"lab"!==a)throw new Error(`Unknown color space: "${t.colorSpace}"`);var a;let o,l,u;if("exponential"===s)o=mn;else if("interval"===s)o=yn;else if("categorical"===s){o=dn,l=Object.create(null);for(const e of t.stops)l[e[0]]=e[1];u=typeof t.stops[0][0];}else {if("identity"!==s)throw new Error(`Unknown function type "${s}"`);o=gn;}if(n){const r={},n=[];for(let e=0;et[0])),evaluate:({zoom:r},n)=>mn({stops:i,base:t.base},e,r).evaluate(r,n)}}if(i){const r="exponential"===s?{name:"exponential",base:void 0!==t.base?t.base:1}:null;return {kind:"camera",interpolationType:r,interpolationFactor:Be.interpolationFactor.bind(void 0,r),zoomStops:t.stops.map((t=>t[0])),evaluate:({zoom:r})=>o(t,e,r,l,u)}}return {kind:"source",evaluate(r,n){const i=n&&n.properties?n.properties[t.property]:void 0;return void 0===i?fn(t.default,e.default):o(t,e,i,l,u)}}}function fn(t,e,r){return void 0!==t?t:void 0!==e?e:void 0!==r?r:void 0}function dn(t,e,r,n,i){return fn(typeof r===i?n[r]:void 0,t.default,e.default)}function yn(t,e,r){if("number"!==un(r))return fn(t.default,e.default);const n=t.stops.length;if(1===n)return t.stops[0][1];if(r<=t.stops[0][0])return t.stops[0][1];if(r>=t.stops[n-1][0])return t.stops[n-1][1];const i=_e(t.stops.map((t=>t[0])),r);return t.stops[i][1]}function mn(t,e,r){const n=void 0!==t.base?t.base:1;if("number"!==un(r))return fn(t.default,e.default);const i=t.stops.length;if(1===i)return t.stops[0][1];if(r<=t.stops[0][0])return t.stops[0][1];if(r>=t.stops[i-1][0])return t.stops[i-1][1];const s=_e(t.stops.map((t=>t[0])),r),a=function(t,e,r,n){const i=n-r,s=t-r;return 0===i?0:1===e?s/i:(Math.pow(e,s)-1)/(Math.pow(e,i)-1)}(r,n,t.stops[s][0],t.stops[s+1][0]),o=t.stops[s][1],l=t.stops[s+1][1],u=Ce[e.type]||hn;return "function"==typeof o.evaluate?{evaluate(...e){const r=o.evaluate.apply(void 0,e),n=l.evaluate.apply(void 0,e);if(void 0!==r&&void 0!==n)return u(r,n,a,t.colorSpace)}}:u(o,l,a,t.colorSpace)}function gn(t,e,r){switch(e.type){case"color":r=Kt.parse(r);break;case"formatted":r=Yt.fromString(r.toString());break;case"resolvedImage":r=te.fromString(r.toString());break;case"padding":r=Jt.parse(r);break;default:un(r)===e.type||"enum"===e.type&&e.values[r]||(r=void 0);}return fn(r,t.default,e.default)}Xr.register(Kr,{error:[{kind:"error"},[ct],(t,[e])=>{throw new ae(e.evaluate(t))}],typeof:[ct,[dt],(t,[e])=>wt(ne(e.evaluate(t)))],"to-rgba":[bt(ut,4),[pt],(t,[e])=>{const[r,n,i,s]=e.evaluate(t).rgb;return [255*r,255*n,255*i,s]}],rgb:[pt,[ut,ut,ut],Hr],rgba:[pt,[ut,ut,ut,ut],Hr],has:{type:ht,overloads:[[[ct],(t,[e])=>Yr(e.evaluate(t),t.properties())],[[ct,ft],(t,[e,r])=>Yr(e.evaluate(t),r.evaluate(t))]]},get:{type:dt,overloads:[[[ct],(t,[e])=>Jr(e.evaluate(t),t.properties())],[[ct,ft],(t,[e,r])=>Jr(e.evaluate(t),r.evaluate(t))]]},"feature-state":[dt,[ct],(t,[e])=>Jr(e.evaluate(t),t.featureState||{})],properties:[ft,[],t=>t.properties()],"geometry-type":[ct,[],t=>t.geometryType()],id:[dt,[],t=>t.id()],zoom:[ut,[],t=>t.globals.zoom],"heatmap-density":[ut,[],t=>t.globals.heatmapDensity||0],"line-progress":[ut,[],t=>t.globals.lineProgress||0],accumulated:[dt,[],t=>void 0===t.globals.accumulated?null:t.globals.accumulated],"+":[ut,Wr(ut),(t,e)=>{let r=0;for(const n of e)r+=n.evaluate(t);return r}],"*":[ut,Wr(ut),(t,e)=>{let r=1;for(const n of e)r*=n.evaluate(t);return r}],"-":{type:ut,overloads:[[[ut,ut],(t,[e,r])=>e.evaluate(t)-r.evaluate(t)],[[ut],(t,[e])=>-e.evaluate(t)]]},"/":[ut,[ut,ut],(t,[e,r])=>e.evaluate(t)/r.evaluate(t)],"%":[ut,[ut,ut],(t,[e,r])=>e.evaluate(t)%r.evaluate(t)],ln2:[ut,[],()=>Math.LN2],pi:[ut,[],()=>Math.PI],e:[ut,[],()=>Math.E],"^":[ut,[ut,ut],(t,[e,r])=>Math.pow(e.evaluate(t),r.evaluate(t))],sqrt:[ut,[ut],(t,[e])=>Math.sqrt(e.evaluate(t))],log10:[ut,[ut],(t,[e])=>Math.log(e.evaluate(t))/Math.LN10],ln:[ut,[ut],(t,[e])=>Math.log(e.evaluate(t))],log2:[ut,[ut],(t,[e])=>Math.log(e.evaluate(t))/Math.LN2],sin:[ut,[ut],(t,[e])=>Math.sin(e.evaluate(t))],cos:[ut,[ut],(t,[e])=>Math.cos(e.evaluate(t))],tan:[ut,[ut],(t,[e])=>Math.tan(e.evaluate(t))],asin:[ut,[ut],(t,[e])=>Math.asin(e.evaluate(t))],acos:[ut,[ut],(t,[e])=>Math.acos(e.evaluate(t))],atan:[ut,[ut],(t,[e])=>Math.atan(e.evaluate(t))],min:[ut,Wr(ut),(t,e)=>Math.min(...e.map((e=>e.evaluate(t))))],max:[ut,Wr(ut),(t,e)=>Math.max(...e.map((e=>e.evaluate(t))))],abs:[ut,[ut],(t,[e])=>Math.abs(e.evaluate(t))],round:[ut,[ut],(t,[e])=>{const r=e.evaluate(t);return r<0?-Math.round(-r):Math.round(r)}],floor:[ut,[ut],(t,[e])=>Math.floor(e.evaluate(t))],ceil:[ut,[ut],(t,[e])=>Math.ceil(e.evaluate(t))],"filter-==":[ht,[ct,dt],(t,[e,r])=>t.properties()[e.value]===r.value],"filter-id-==":[ht,[dt],(t,[e])=>t.id()===e.value],"filter-type-==":[ht,[ct],(t,[e])=>t.geometryType()===e.value],"filter-<":[ht,[ct,dt],(t,[e,r])=>{const n=t.properties()[e.value],i=r.value;return typeof n==typeof i&&n{const r=t.id(),n=e.value;return typeof r==typeof n&&r":[ht,[ct,dt],(t,[e,r])=>{const n=t.properties()[e.value],i=r.value;return typeof n==typeof i&&n>i}],"filter-id->":[ht,[dt],(t,[e])=>{const r=t.id(),n=e.value;return typeof r==typeof n&&r>n}],"filter-<=":[ht,[ct,dt],(t,[e,r])=>{const n=t.properties()[e.value],i=r.value;return typeof n==typeof i&&n<=i}],"filter-id-<=":[ht,[dt],(t,[e])=>{const r=t.id(),n=e.value;return typeof r==typeof n&&r<=n}],"filter->=":[ht,[ct,dt],(t,[e,r])=>{const n=t.properties()[e.value],i=r.value;return typeof n==typeof i&&n>=i}],"filter-id->=":[ht,[dt],(t,[e])=>{const r=t.id(),n=e.value;return typeof r==typeof n&&r>=n}],"filter-has":[ht,[dt],(t,[e])=>e.value in t.properties()],"filter-has-id":[ht,[],t=>null!==t.id()&&void 0!==t.id()],"filter-type-in":[ht,[bt(ct)],(t,[e])=>e.value.indexOf(t.geometryType())>=0],"filter-id-in":[ht,[bt(dt)],(t,[e])=>e.value.indexOf(t.id())>=0],"filter-in-small":[ht,[ct,bt(dt)],(t,[e,r])=>r.value.indexOf(t.properties()[e.value])>=0],"filter-in-large":[ht,[ct,bt(dt)],(t,[e,r])=>function(t,e,r,n){for(;r<=n;){const i=r+n>>1;if(e[i]===t)return !0;e[i]>t?n=i-1:r=i+1;}return !1}(t.properties()[e.value],r.value,0,r.value.length-1)],all:{type:ht,overloads:[[[ht,ht],(t,[e,r])=>e.evaluate(t)&&r.evaluate(t)],[Wr(ht),(t,e)=>{for(const r of e)if(!r.evaluate(t))return !1;return !0}]]},any:{type:ht,overloads:[[[ht,ht],(t,[e,r])=>e.evaluate(t)||r.evaluate(t)],[Wr(ht),(t,e)=>{for(const r of e)if(r.evaluate(t))return !0;return !1}]]},"!":[ht,[ht],(t,[e])=>!e.evaluate(t)],"is-supported-script":[ht,[ct],(t,[e])=>{const r=t.globals&&t.globals.isSupportedScript;return !r||r(e.evaluate(t))}],upcase:[ct,[ct],(t,[e])=>e.evaluate(t).toUpperCase()],downcase:[ct,[ct],(t,[e])=>e.evaluate(t).toLowerCase()],concat:[ct,Wr(dt),(t,e)=>e.map((e=>ie(e.evaluate(t)))).join("")],"resolved-locale":[ct,[yt],(t,[e])=>e.evaluate(t).resolvedLocale()]});class xn{constructor(t,e){var r;this.expression=t,this._warningHistory={},this._evaluator=new pe,this._defaultValue=e?"color"===(r=e).type&&cn(r.default)?new Kt(0,0,0,0):"color"===r.type?Kt.parse(r.default)||null:"padding"===r.type?Jt.parse(r.default)||null:"variableAnchorOffsetCollection"===r.type?Qt.parse(r.default)||null:void 0===r.default?null:r.default:null,this._enumValues=e&&"enum"===e.type?e.values:null;}evaluateWithoutErrorHandling(t,e,r,n,i,s){return this._evaluator.globals=t,this._evaluator.feature=e,this._evaluator.featureState=r,this._evaluator.canonical=n,this._evaluator.availableImages=i||null,this._evaluator.formattedSection=s,this.expression.evaluate(this._evaluator)}evaluate(t,e,r,n,i,s){this._evaluator.globals=t,this._evaluator.feature=e||null,this._evaluator.featureState=r||null,this._evaluator.canonical=n,this._evaluator.availableImages=i||null,this._evaluator.formattedSection=s||null;try{const t=this.expression.evaluate(this._evaluator);if(null==t||"number"==typeof t&&t!=t)return this._defaultValue;if(this._enumValues&&!(t in this._enumValues))throw new ae(`Expected value to be one of ${Object.keys(this._enumValues).map((t=>JSON.stringify(t))).join(", ")}, but found ${JSON.stringify(t)} instead.`);return t}catch(t){return this._warningHistory[t.message]||(this._warningHistory[t.message]=!0,"undefined"!=typeof console&&console.warn(t.message)),this._defaultValue}}}function vn(t){return Array.isArray(t)&&t.length>0&&"string"==typeof t[0]&&t[0]in Kr}function bn(t,e){const r=new fe(Kr,Qr,[],e?function(t){const e={color:pt,string:ct,number:ut,enum:ct,boolean:ht,formatted:mt,padding:gt,resolvedImage:xt,variableAnchorOffsetCollection:vt};return "array"===t.type?bt(e[t.value]||dt,t.length):e[t.type]}(e):void 0),n=r.parse(t,void 0,void 0,void 0,e&&"string"===e.type?{typeAnnotation:"coerce"}:void 0);return n?nn(new xn(n,e)):sn(r.errors)}class wn{constructor(t,e){this.kind=t,this._styleExpression=e,this.isStateDependent="constant"!==t&&!en(e.expression);}evaluateWithoutErrorHandling(t,e,r,n,i,s){return this._styleExpression.evaluateWithoutErrorHandling(t,e,r,n,i,s)}evaluate(t,e,r,n,i,s){return this._styleExpression.evaluate(t,e,r,n,i,s)}}class _n{constructor(t,e,r,n){this.kind=t,this.zoomStops=r,this._styleExpression=e,this.isStateDependent="camera"!==t&&!en(e.expression),this.interpolationType=n;}evaluateWithoutErrorHandling(t,e,r,n,i,s){return this._styleExpression.evaluateWithoutErrorHandling(t,e,r,n,i,s)}evaluate(t,e,r,n,i,s){return this._styleExpression.evaluate(t,e,r,n,i,s)}interpolationFactor(t,e,r){return this.interpolationType?Be.interpolationFactor(this.interpolationType,t,e,r):0}}function An(t,e){const r=bn(t,e);if("error"===r.result)return r;const n=r.value.expression,i=tn(n);if(!i&&!an(e))return sn([new at("","data expressions not supported")]);const s=rn(n,["zoom"]);if(!s&&!on(e))return sn([new at("","zoom expressions not supported")]);const a=kn(n);return a||s?a instanceof at?sn([a]):a instanceof Be&&!ln(e)?sn([new at("",'"interpolate" expressions cannot be used with this property')]):nn(a?new _n(i?"camera":"composite",r.value,a.labels,a instanceof Be?a.interpolation:void 0):new wn(i?"constant":"source",r.value)):sn([new at("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')])}class Sn{constructor(t,e){this._parameters=t,this._specification=e,st(this,pn(this._parameters,this._specification));}static deserialize(t){return new Sn(t._parameters,t._specification)}static serialize(t){return {_parameters:t._parameters,_specification:t._specification}}}function kn(t){let e=null;if(t instanceof de)e=kn(t.result);else if(t instanceof Ee){for(const r of t.args)if(e=kn(r),e)break}else (t instanceof Ae||t instanceof Be)&&t.input instanceof Xr&&"zoom"===t.input.name&&(e=t);return e instanceof at||t.eachChild((t=>{const r=kn(t);r instanceof at?e=r:!e&&r?e=new at("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.'):e&&r&&e!==r&&(e=new at("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'));})),e}function Mn(t){if(!0===t||!1===t)return !0;if(!Array.isArray(t)||0===t.length)return !1;switch(t[0]){case"has":return t.length>=2&&"$id"!==t[1]&&"$type"!==t[1];case"in":return t.length>=3&&("string"!=typeof t[1]||Array.isArray(t[2]));case"!in":case"!has":case"none":return !1;case"==":case"!=":case">":case">=":case"<":case"<=":return 3!==t.length||Array.isArray(t[1])||Array.isArray(t[2]);case"any":case"all":for(const e of t.slice(1))if(!Mn(e)&&"boolean"!=typeof e)return !1;return !0;default:return !0}}const In={type:"boolean",default:!1,transition:!1,"property-type":"data-driven",expression:{interpolated:!1,parameters:["zoom","feature"]}};function zn(t){if(null==t)return {filter:()=>!0,needGeometry:!1};Mn(t)||(t=Bn(t));const e=bn(t,In);if("error"===e.result)throw new Error(e.value.map((t=>`${t.key}: ${t.message}`)).join(", "));return {filter:(t,r,n)=>e.value.evaluate(t,r,{},n),needGeometry:Cn(t)}}function Pn(t,e){return te?1:0}function Cn(t){if(!Array.isArray(t))return !1;if("within"===t[0]||"distance"===t[0])return !0;for(let e=1;e"===e||"<="===e||">="===e?Vn(t[1],t[2],e):"any"===e?(r=t.slice(1),["any"].concat(r.map(Bn))):"all"===e?["all"].concat(t.slice(1).map(Bn)):"none"===e?["all"].concat(t.slice(1).map(Bn).map(Tn)):"in"===e?En(t[1],t.slice(2)):"!in"===e?Tn(En(t[1],t.slice(2))):"has"===e?Fn(t[1]):"!has"!==e||Tn(Fn(t[1]));var r;}function Vn(t,e,r){switch(t){case"$type":return [`filter-type-${r}`,e];case"$id":return [`filter-id-${r}`,e];default:return [`filter-${r}`,t,e]}}function En(t,e){if(0===e.length)return !1;switch(t){case"$type":return ["filter-type-in",["literal",e]];case"$id":return ["filter-id-in",["literal",e]];default:return e.length>200&&!e.some((t=>typeof t!=typeof e[0]))?["filter-in-large",t,["literal",e.sort(Pn)]]:["filter-in-small",t,["literal",e]]}}function Fn(t){switch(t){case"$type":return !0;case"$id":return ["filter-has-id"];default:return ["filter-has",t]}}function Tn(t){return ["!",t]}function $n(t){const e=typeof t;if("number"===e||"boolean"===e||"string"===e||null==t)return JSON.stringify(t);if(Array.isArray(t)){let e="[";for(const r of t)e+=`${$n(r)},`;return `${e}]`}const r=Object.keys(t).sort();let n="{";for(let e=0;en.maximum?[new it(e,r,`${r} is greater than the maximum value ${n.maximum}`)]:[]}function Nn(t){const e=t.valueSpec,r=On(t.value.type);let n,i,s,a={};const o="categorical"!==r&&void 0===t.value.property,l=!o,u="array"===un(t.value.stops)&&"array"===un(t.value.stops[0])&&"object"===un(t.value.stops[0][0]),c=Rn({key:t.key,value:t.value,valueSpec:t.styleSpec.function,validateSpec:t.validateSpec,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{stops:function(t){if("identity"===r)return [new it(t.key,t.value,'identity function may not have a "stops" property')];let e=[];const n=t.value;return e=e.concat(Un({key:t.key,value:n,valueSpec:t.valueSpec,validateSpec:t.validateSpec,style:t.style,styleSpec:t.styleSpec,arrayElementValidator:h})),"array"===un(n)&&0===n.length&&e.push(new it(t.key,n,"array must have at least one stop")),e},default:function(t){return t.validateSpec({key:t.key,value:t.value,valueSpec:e,validateSpec:t.validateSpec,style:t.style,styleSpec:t.styleSpec})}}});return "identity"===r&&o&&c.push(new it(t.key,t.value,'missing required property "property"')),"identity"===r||t.value.stops||c.push(new it(t.key,t.value,'missing required property "stops"')),"exponential"===r&&t.valueSpec.expression&&!ln(t.valueSpec)&&c.push(new it(t.key,t.value,"exponential functions not supported")),t.styleSpec.$version>=8&&(l&&!an(t.valueSpec)?c.push(new it(t.key,t.value,"property functions not supported")):o&&!on(t.valueSpec)&&c.push(new it(t.key,t.value,"zoom functions not supported"))),"categorical"!==r&&!u||void 0!==t.value.property||c.push(new it(t.key,t.value,'"property" property is required')),c;function h(t){let r=[];const n=t.value,o=t.key;if("array"!==un(n))return [new it(o,n,`array expected, ${un(n)} found`)];if(2!==n.length)return [new it(o,n,`array length 2 expected, length ${n.length} found`)];if(u){if("object"!==un(n[0]))return [new it(o,n,`object expected, ${un(n[0])} found`)];if(void 0===n[0].zoom)return [new it(o,n,"object stop key must have zoom")];if(void 0===n[0].value)return [new it(o,n,"object stop key must have value")];if(s&&s>On(n[0].zoom))return [new it(o,n[0].zoom,"stop zoom values must appear in ascending order")];On(n[0].zoom)!==s&&(s=On(n[0].zoom),i=void 0,a={}),r=r.concat(Rn({key:`${o}[0]`,value:n[0],valueSpec:{zoom:{}},validateSpec:t.validateSpec,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{zoom:qn,value:p}}));}else r=r.concat(p({key:`${o}[0]`,value:n[0],valueSpec:{},validateSpec:t.validateSpec,style:t.style,styleSpec:t.styleSpec},n));return vn(jn(n[1]))?r.concat([new it(`${o}[1]`,n[1],"expressions are not allowed in function stops.")]):r.concat(t.validateSpec({key:`${o}[1]`,value:n[1],valueSpec:e,validateSpec:t.validateSpec,style:t.style,styleSpec:t.styleSpec}))}function p(t,s){const o=un(t.value),l=On(t.value),u=null!==t.value?t.value:s;if(n){if(o!==n)return [new it(t.key,u,`${o} stop domain type must match previous stop domain type ${n}`)]}else n=o;if("number"!==o&&"string"!==o&&"boolean"!==o)return [new it(t.key,u,"stop domain value must be a number, string, or boolean")];if("number"!==o&&"categorical"!==r){let n=`number expected, ${o} found`;return an(e)&&void 0===r&&(n+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new it(t.key,u,n)]}return "categorical"!==r||"number"!==o||isFinite(l)&&Math.floor(l)===l?"categorical"!==r&&"number"===o&&void 0!==i&&lnew it(`${t.key}${e.key}`,t.value,e.message)));const r=e.value.expression||e.value._styleExpression.expression;if("property"===t.expressionContext&&"text-font"===t.propertyKey&&!r.outputDefined())return [new it(t.key,t.value,`Invalid data expression for "${t.propertyKey}". Output values must be contained as literals within the expression.`)];if("property"===t.expressionContext&&"layout"===t.propertyType&&!en(r))return [new it(t.key,t.value,'"feature-state" data expressions are not supported with layout properties.')];if("filter"===t.expressionContext&&!en(r))return [new it(t.key,t.value,'"feature-state" data expressions are not supported with filters.')];if(t.expressionContext&&0===t.expressionContext.indexOf("cluster")){if(!rn(r,["zoom","feature-state"]))return [new it(t.key,t.value,'"zoom" and "feature-state" expressions are not supported with cluster properties.')];if("cluster-initial"===t.expressionContext&&!tn(r))return [new it(t.key,t.value,"Feature data expressions are not supported with initial expression part of cluster properties.")]}return []}function Gn(t){const e=t.key,r=t.value,n=t.valueSpec,i=[];return Array.isArray(n.values)?-1===n.values.indexOf(On(r))&&i.push(new it(e,r,`expected one of [${n.values.join(", ")}], ${JSON.stringify(r)} found`)):-1===Object.keys(n.values).indexOf(On(r))&&i.push(new it(e,r,`expected one of [${Object.keys(n.values).join(", ")}], ${JSON.stringify(r)} found`)),i}function Kn(t){return Mn(jn(t.value))?Zn(st({},t,{expressionContext:"filter",valueSpec:{value:"boolean"}})):Xn(t)}function Xn(t){const e=t.value,r=t.key;if("array"!==un(e))return [new it(r,e,`array expected, ${un(e)} found`)];const n=t.styleSpec;let i,s=[];if(e.length<1)return [new it(r,e,"filter array must have at least 1 element")];switch(s=s.concat(Gn({key:`${r}[0]`,value:e[0],valueSpec:n.filter_operator,style:t.style,styleSpec:t.styleSpec})),On(e[0])){case"<":case"<=":case">":case">=":e.length>=2&&"$type"===On(e[1])&&s.push(new it(r,e,`"$type" cannot be use with operator "${e[0]}"`));case"==":case"!=":3!==e.length&&s.push(new it(r,e,`filter array for operator "${e[0]}" must have 3 elements`));case"in":case"!in":e.length>=2&&(i=un(e[1]),"string"!==i&&s.push(new it(`${r}[1]`,e[1],`string expected, ${i} found`)));for(let a=2;a{t in r&&e.push(new it(n,r[t],`"${t}" is prohibited for ref layers`));})),i.layers.forEach((e=>{On(e.id)===o&&(t=e);})),t?t.ref?e.push(new it(n,r.ref,"ref cannot reference another ref layer")):a=On(t.type):e.push(new it(n,r.ref,`ref layer "${o}" not found`));}else if("background"!==a)if(r.source){const t=i.sources&&i.sources[r.source],s=t&&On(t.type);t?"vector"===s&&"raster"===a?e.push(new it(n,r.source,`layer "${r.id}" requires a raster source`)):"raster-dem"!==s&&"hillshade"===a?e.push(new it(n,r.source,`layer "${r.id}" requires a raster-dem source`)):"raster"===s&&"raster"!==a?e.push(new it(n,r.source,`layer "${r.id}" requires a vector source`)):"vector"!==s||r["source-layer"]?"raster-dem"===s&&"hillshade"!==a?e.push(new it(n,r.source,"raster-dem source can only be used with layer type 'hillshade'.")):"line"!==a||!r.paint||!r.paint["line-gradient"]||"geojson"===s&&t.lineMetrics||e.push(new it(n,r,`layer "${r.id}" specifies a line-gradient, which requires a GeoJSON source with \`lineMetrics\` enabled.`)):e.push(new it(n,r,`layer "${r.id}" must specify a "source-layer"`)):e.push(new it(n,r.source,`source "${r.source}" not found`));}else e.push(new it(n,r,'missing required property "source"'));return e=e.concat(Rn({key:n,value:r,valueSpec:s.layer,style:t.style,styleSpec:t.styleSpec,validateSpec:t.validateSpec,objectElementValidators:{"*":()=>[],type:()=>t.validateSpec({key:`${n}.type`,value:r.type,valueSpec:s.layer.type,style:t.style,styleSpec:t.styleSpec,validateSpec:t.validateSpec,object:r,objectKey:"type"}),filter:Kn,layout:t=>Rn({layer:r,key:t.key,value:t.value,style:t.style,styleSpec:t.styleSpec,validateSpec:t.validateSpec,objectElementValidators:{"*":t=>Jn(st({layerType:a},t))}}),paint:t=>Rn({layer:r,key:t.key,value:t.value,style:t.style,styleSpec:t.styleSpec,validateSpec:t.validateSpec,objectElementValidators:{"*":t=>Yn(st({layerType:a},t))}})}})),e}function Qn(t){const e=t.value,r=t.key,n=un(e);return "string"!==n?[new it(r,e,`string expected, ${n} found`)]:[]}const ti={promoteId:function({key:t,value:e}){if("string"===un(e))return Qn({key:t,value:e});{const r=[];for(const n in e)r.push(...Qn({key:`${t}.${n}`,value:e[n]}));return r}}};function ei(t){const e=t.value,r=t.key,n=t.styleSpec,i=t.style,s=t.validateSpec;if(!e.type)return [new it(r,e,'"type" is required')];const a=On(e.type);let o;switch(a){case"vector":case"raster":return o=Rn({key:r,value:e,valueSpec:n[`source_${a.replace("-","_")}`],style:t.style,styleSpec:n,objectElementValidators:ti,validateSpec:s}),o;case"raster-dem":return o=function(t){var e;const r=null!==(e=t.sourceName)&&void 0!==e?e:"",n=t.value,i=t.styleSpec,s=i.source_raster_dem,a=t.style;let o=[];const l=un(n);if(void 0===n)return o;if("object"!==l)return o.push(new it("source_raster_dem",n,`object expected, ${l} found`)),o;const u="custom"===On(n.encoding),c=["redFactor","greenFactor","blueFactor","baseShift"],h=t.value.encoding?`"${t.value.encoding}"`:"Default";for(const e in n)!u&&c.includes(e)?o.push(new it(e,n[e],`In "${r}": "${e}" is only valid when "encoding" is set to "custom". ${h} encoding found`)):s[e]?o=o.concat(t.validateSpec({key:e,value:n[e],valueSpec:s[e],validateSpec:t.validateSpec,style:a,styleSpec:i})):o.push(new it(e,n[e],`unknown property "${e}"`));return o}({sourceName:r,value:e,style:t.style,styleSpec:n,validateSpec:s}),o;case"geojson":if(o=Rn({key:r,value:e,valueSpec:n.source_geojson,style:i,styleSpec:n,validateSpec:s,objectElementValidators:ti}),e.cluster)for(const t in e.clusterProperties){const[n,i]=e.clusterProperties[t],a="string"==typeof n?[n,["accumulated"],["get",t]]:n;o.push(...Zn({key:`${r}.${t}.map`,value:i,validateSpec:s,expressionContext:"cluster-map"})),o.push(...Zn({key:`${r}.${t}.reduce`,value:a,validateSpec:s,expressionContext:"cluster-reduce"}));}return o;case"video":return Rn({key:r,value:e,valueSpec:n.source_video,style:i,validateSpec:s,styleSpec:n});case"image":return Rn({key:r,value:e,valueSpec:n.source_image,style:i,validateSpec:s,styleSpec:n});case"canvas":return [new it(r,null,"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.","source.canvas")];default:return Gn({key:`${r}.type`,value:e.type,valueSpec:{values:["vector","raster","raster-dem","geojson","video","image"]},style:i,validateSpec:s,styleSpec:n})}}function ri(t){const e=t.value,r=t.styleSpec,n=r.light,i=t.style;let s=[];const a=un(e);if(void 0===e)return s;if("object"!==a)return s=s.concat([new it("light",e,`object expected, ${a} found`)]),s;for(const a in e){const o=a.match(/^(.*)-transition$/);s=s.concat(o&&n[o[1]]&&n[o[1]].transition?t.validateSpec({key:a,value:e[a],valueSpec:r.transition,validateSpec:t.validateSpec,style:i,styleSpec:r}):n[a]?t.validateSpec({key:a,value:e[a],valueSpec:n[a],validateSpec:t.validateSpec,style:i,styleSpec:r}):[new it(a,e[a],`unknown property "${a}"`)]);}return s}function ni(t){const e=t.value,r=t.styleSpec,n=r.sky,i=t.style,s=un(e);if(void 0===e)return [];if("object"!==s)return [new it("sky",e,`object expected, ${s} found`)];let a=[];for(const s in e)a=a.concat(n[s]?t.validateSpec({key:s,value:e[s],valueSpec:n[s],style:i,styleSpec:r}):[new it(s,e[s],`unknown property "${s}"`)]);return a}function ii(t){const e=t.value,r=t.styleSpec,n=r.terrain,i=t.style;let s=[];const a=un(e);if(void 0===e)return s;if("object"!==a)return s=s.concat([new it("terrain",e,`object expected, ${a} found`)]),s;for(const a in e)s=s.concat(n[a]?t.validateSpec({key:a,value:e[a],valueSpec:n[a],validateSpec:t.validateSpec,style:i,styleSpec:r}):[new it(a,e[a],`unknown property "${a}"`)]);return s}function si(t){let e=[];const r=t.value,n=t.key;if(Array.isArray(r)){const i=[],s=[];for(const a in r)r[a].id&&i.includes(r[a].id)&&e.push(new it(n,r,`all the sprites' ids must be unique, but ${r[a].id} is duplicated`)),i.push(r[a].id),r[a].url&&s.includes(r[a].url)&&e.push(new it(n,r,`all the sprites' URLs must be unique, but ${r[a].url} is duplicated`)),s.push(r[a].url),e=e.concat(Rn({key:`${n}[${a}]`,value:r[a],valueSpec:{id:{type:"string",required:!0},url:{type:"string",required:!0}},validateSpec:t.validateSpec}));return e}return Qn({key:n,value:r})}const ai={"*":()=>[],array:Un,boolean:function(t){const e=t.value,r=t.key,n=un(e);return "boolean"!==n?[new it(r,e,`boolean expected, ${n} found`)]:[]},number:qn,color:function(t){const e=t.key,r=t.value,n=un(r);return "string"!==n?[new it(e,r,`color expected, ${n} found`)]:Kt.parse(String(r))?[]:[new it(e,r,`color expected, "${r}" found`)]},constants:Dn,enum:Gn,filter:Kn,function:Nn,layer:Wn,object:Rn,source:ei,light:ri,sky:ni,terrain:ii,projection:function(t){const e=t.value,r=t.styleSpec,n=r.projection,i=t.style,s=un(e);if(void 0===e)return [];if("object"!==s)return [new it("projection",e,`object expected, ${s} found`)];let a=[];for(const s in e)a=a.concat(n[s]?t.validateSpec({key:s,value:e[s],valueSpec:n[s],style:i,styleSpec:r}):[new it(s,e[s],`unknown property "${s}"`)]);return a},string:Qn,formatted:function(t){return 0===Qn(t).length?[]:Zn(t)},resolvedImage:function(t){return 0===Qn(t).length?[]:Zn(t)},padding:function(t){const e=t.key,r=t.value;if("array"===un(r)){if(r.length<1||r.length>4)return [new it(e,r,`padding requires 1 to 4 values; ${r.length} values found`)];const n={type:"number"};let i=[];for(let s=0;s[]}})),t.constants&&(r=r.concat(Dn({key:"constants",value:t.constants,style:t,styleSpec:e,validateSpec:oi}))),hi(r)}function ci(t){return function(e){return t({...e,validateSpec:oi})}}function hi(t){return [].concat(t).sort(((t,e)=>t.line-e.line))}function pi(t){return function(...e){return hi(t.apply(this,e))}}ui.source=pi(ci(ei)),ui.sprite=pi(ci(si)),ui.glyphs=pi(ci(li)),ui.light=pi(ci(ri)),ui.sky=pi(ci(ni)),ui.terrain=pi(ci(ii)),ui.layer=pi(ci(Wn)),ui.filter=pi(ci(Kn)),ui.paintProperty=pi(ci(Yn)),ui.layoutProperty=pi(ci(Jn));const fi=ui,di=fi.light,yi=fi.sky,mi=fi.paintProperty,gi=fi.layoutProperty;function xi(t,e){let r=!1;if(e&&e.length)for(const n of e)t.fire(new N(new Error(n.message))),r=!0;return r}class vi{constructor(t,e,r){const n=this.cells=[];if(t instanceof ArrayBuffer){this.arrayBuffer=t;const i=new Int32Array(this.arrayBuffer);t=i[0],this.d=(e=i[1])+2*(r=i[2]);for(let t=0;t=u[l+0]&&n>=u[l+1])?(a[h]=!0,s.push(i[h])):a[h]=!1;}}}}_forEachCell(t,e,r,n,i,s,a,o){const l=this._convertToCellCoord(t),u=this._convertToCellCoord(e),c=this._convertToCellCoord(r),h=this._convertToCellCoord(n);for(let p=l;p<=c;p++)for(let l=u;l<=h;l++){const u=this.d*l+p;if((!o||o(this._convertFromCellCoord(p),this._convertFromCellCoord(l),this._convertFromCellCoord(p+1),this._convertFromCellCoord(l+1)))&&i.call(this,t,e,r,n,u,s,a,o))return}}_convertFromCellCoord(t){return (t-this.padding)/this.scale}_convertToCellCoord(t){return Math.max(0,Math.min(this.d-1,Math.floor(t*this.scale)+this.padding))}toArrayBuffer(){if(this.arrayBuffer)return this.arrayBuffer;const t=this.cells,e=3+this.cells.length+1+1;let r=0;for(let t=0;t=0)continue;const s=t[n];i[n]=bi[r].shallow.indexOf(n)>=0?s:ki(s,e);}t instanceof Error&&(i.message=t.message);}if(i.$name)throw new Error("$name property is reserved for worker serialization logic.");return "Object"!==r&&(i.$name=r),i}function Mi(t){if(Si(t))return t;if(Array.isArray(t))return t.map(Mi);if("object"!=typeof t)throw new Error("can't deserialize object of type "+typeof t);const e=Ai(t)||"Object";if(!bi[e])throw new Error(`can't deserialize unregistered class ${e}`);const{klass:r}=bi[e];if(!r)throw new Error(`can't deserialize unregistered class ${e}`);if(r.deserialize)return r.deserialize(t);const n=Object.create(r.prototype);for(const r of Object.keys(t)){if("$name"===r)continue;const i=t[r];n[r]=bi[e].shallow.indexOf(r)>=0?i:Mi(i);}return n}class Ii{constructor(){this.first=!0;}update(t,e){const r=Math.floor(t);return this.first?(this.first=!1,this.lastIntegerZoom=r,this.lastIntegerZoomTime=0,this.lastZoom=t,this.lastFloorZoom=r,!0):(this.lastFloorZoom>r?(this.lastIntegerZoom=r+1,this.lastIntegerZoomTime=e):this.lastFloorZoomt>=128&&t<=255,"Hangul Jamo":t=>t>=4352&&t<=4607,Khmer:t=>t>=6016&&t<=6143,"General Punctuation":t=>t>=8192&&t<=8303,"Letterlike Symbols":t=>t>=8448&&t<=8527,"Number Forms":t=>t>=8528&&t<=8591,"Miscellaneous Technical":t=>t>=8960&&t<=9215,"Control Pictures":t=>t>=9216&&t<=9279,"Optical Character Recognition":t=>t>=9280&&t<=9311,"Enclosed Alphanumerics":t=>t>=9312&&t<=9471,"Geometric Shapes":t=>t>=9632&&t<=9727,"Miscellaneous Symbols":t=>t>=9728&&t<=9983,"Miscellaneous Symbols and Arrows":t=>t>=11008&&t<=11263,"Ideographic Description Characters":t=>t>=12272&&t<=12287,"CJK Symbols and Punctuation":t=>t>=12288&&t<=12351,Katakana:t=>t>=12448&&t<=12543,Kanbun:t=>t>=12688&&t<=12703,"CJK Strokes":t=>t>=12736&&t<=12783,"Enclosed CJK Letters and Months":t=>t>=12800&&t<=13055,"CJK Compatibility":t=>t>=13056&&t<=13311,"Yijing Hexagram Symbols":t=>t>=19904&&t<=19967,"Private Use Area":t=>t>=57344&&t<=63743,"Vertical Forms":t=>t>=65040&&t<=65055,"CJK Compatibility Forms":t=>t>=65072&&t<=65103,"Small Form Variants":t=>t>=65104&&t<=65135,"Halfwidth and Fullwidth Forms":t=>t>=65280&&t<=65519};function Pi(t){for(const e of t)if(Ti(e.charCodeAt(0)))return !0;return !1}function Ci(t){for(const e of t)if(!Ei(e.charCodeAt(0)))return !1;return !0}function Bi(t){const e=t.map((t=>{try{return new RegExp(`\\p{sc=${t}}`,"u").source}catch(t){return null}})).filter((t=>t));return new RegExp(e.join("|"),"u")}const Vi=Bi(["Arab","Dupl","Mong","Ougr","Syrc"]);function Ei(t){return !Vi.test(String.fromCodePoint(t))}const Fi=Bi(["Bopo","Hani","Hira","Kana","Kits","Nshu","Tang","Yiii"]);function Ti(t){return !(746!==t&&747!==t&&(t<4352||!(zi["CJK Compatibility Forms"](t)&&!(t>=65097&&t<=65103)||zi["CJK Compatibility"](t)||zi["CJK Strokes"](t)||!(!zi["CJK Symbols and Punctuation"](t)||t>=12296&&t<=12305||t>=12308&&t<=12319||12336===t)||zi["Enclosed CJK Letters and Months"](t)||zi["Ideographic Description Characters"](t)||zi.Kanbun(t)||zi.Katakana(t)&&12540!==t||!(!zi["Halfwidth and Fullwidth Forms"](t)||65288===t||65289===t||65293===t||t>=65306&&t<=65310||65339===t||65341===t||65343===t||t>=65371&&t<=65503||65507===t||t>=65512&&t<=65519)||!(!zi["Small Form Variants"](t)||t>=65112&&t<=65118||t>=65123&&t<=65126)||zi["Vertical Forms"](t)||zi["Yijing Hexagram Symbols"](t)||/\p{sc=Cans}/u.test(String.fromCodePoint(t))||/\p{sc=Hang}/u.test(String.fromCodePoint(t))||Fi.test(String.fromCodePoint(t)))))}function $i(t){return !(Ti(t)||function(t){return !!(zi["Latin-1 Supplement"](t)&&(167===t||169===t||174===t||177===t||188===t||189===t||190===t||215===t||247===t)||zi["General Punctuation"](t)&&(8214===t||8224===t||8225===t||8240===t||8241===t||8251===t||8252===t||8258===t||8263===t||8264===t||8265===t||8273===t)||zi["Letterlike Symbols"](t)||zi["Number Forms"](t)||zi["Miscellaneous Technical"](t)&&(t>=8960&&t<=8967||t>=8972&&t<=8991||t>=8996&&t<=9e3||9003===t||t>=9085&&t<=9114||t>=9150&&t<=9165||9167===t||t>=9169&&t<=9179||t>=9186&&t<=9215)||zi["Control Pictures"](t)&&9251!==t||zi["Optical Character Recognition"](t)||zi["Enclosed Alphanumerics"](t)||zi["Geometric Shapes"](t)||zi["Miscellaneous Symbols"](t)&&!(t>=9754&&t<=9759)||zi["Miscellaneous Symbols and Arrows"](t)&&(t>=11026&&t<=11055||t>=11088&&t<=11097||t>=11192&&t<=11243)||zi["CJK Symbols and Punctuation"](t)||zi.Katakana(t)||zi["Private Use Area"](t)||zi["CJK Compatibility Forms"](t)||zi["Small Form Variants"](t)||zi["Halfwidth and Fullwidth Forms"](t)||8734===t||8756===t||8757===t||t>=9984&&t<=10087||t>=10102&&t<=10131||65532===t||65533===t)}(t))}const Li=Bi(["Adlm","Arab","Armi","Avst","Chrs","Cprt","Egyp","Elym","Gara","Hatr","Hebr","Hung","Khar","Lydi","Mand","Mani","Mend","Merc","Mero","Narb","Nbat","Nkoo","Orkh","Palm","Phli","Phlp","Phnx","Prti","Rohg","Samr","Sarb","Sogo","Syrc","Thaa","Todr","Yezi"]);function Di(t){return Li.test(String.fromCodePoint(t))}function Oi(t,e){return !(!e&&Di(t)||t>=2304&&t<=3583||t>=3840&&t<=4255||zi.Khmer(t))}function ji(t){for(const e of t)if(Di(e.charCodeAt(0)))return !0;return !1}const Ri=new class{constructor(){this.applyArabicShaping=null,this.processBidirectionalText=null,this.processStyledBidirectionalText=null,this.pluginStatus="unavailable",this.pluginURL=null;}setState(t){this.pluginStatus=t.pluginStatus,this.pluginURL=t.pluginURL;}getState(){return {pluginStatus:this.pluginStatus,pluginURL:this.pluginURL}}setMethods(t){this.applyArabicShaping=t.applyArabicShaping,this.processBidirectionalText=t.processBidirectionalText,this.processStyledBidirectionalText=t.processStyledBidirectionalText;}isParsed(){return null!=this.applyArabicShaping&&null!=this.processBidirectionalText&&null!=this.processStyledBidirectionalText}getPluginURL(){return this.pluginURL}getRTLTextPluginStatus(){return this.pluginStatus}};class Ui{constructor(t,e){this.zoom=t,e?(this.now=e.now,this.fadeDuration=e.fadeDuration,this.zoomHistory=e.zoomHistory,this.transition=e.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new Ii,this.transition={});}isSupportedScript(t){return function(t,e){for(const r of t)if(!Oi(r.charCodeAt(0),e))return !1;return !0}(t,"loaded"===Ri.getRTLTextPluginStatus())}crossFadingFactor(){return 0===this.fadeDuration?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)}getCrossfadeParameters(){const t=this.zoom,e=t-Math.floor(t),r=this.crossFadingFactor();return t>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:e+(1-e)*r}:{fromScale:.5,toScale:1,t:1-(1-r)*e}}}class qi{constructor(t,e){this.property=t,this.value=e,this.expression=function(t,e){if(cn(t))return new Sn(t,e);if(vn(t)){const r=An(t,e);if("error"===r.result)throw new Error(r.value.map((t=>`${t.key}: ${t.message}`)).join(", "));return r.value}{let r=t;return "color"===e.type&&"string"==typeof t?r=Kt.parse(t):"padding"!==e.type||"number"!=typeof t&&!Array.isArray(t)?"variableAnchorOffsetCollection"===e.type&&Array.isArray(t)&&(r=Qt.parse(t)):r=Jt.parse(t),{kind:"constant",evaluate:()=>r}}}(void 0===e?t.specification.default:e,t.specification);}isDataDriven(){return "source"===this.expression.kind||"composite"===this.expression.kind}possiblyEvaluate(t,e,r){return this.property.possiblyEvaluate(this,t,e,r)}}class Ni{constructor(t){this.property=t,this.value=new qi(t,void 0);}transitioned(t,e){return new Gi(this.property,this.value,e,g({},t.transition,this.transition),t.now)}untransitioned(){return new Gi(this.property,this.value,null,{},0)}}class Zi{constructor(t){this._properties=t,this._values=Object.create(t.defaultTransitionablePropertyValues);}getValue(t){return w(this._values[t].value.value)}setValue(t,e){Object.prototype.hasOwnProperty.call(this._values,t)||(this._values[t]=new Ni(this._values[t].property)),this._values[t].value=new qi(this._values[t].property,null===e?void 0:w(e));}getTransition(t){return w(this._values[t].transition)}setTransition(t,e){Object.prototype.hasOwnProperty.call(this._values,t)||(this._values[t]=new Ni(this._values[t].property)),this._values[t].transition=w(e)||void 0;}serialize(){const t={};for(const e of Object.keys(this._values)){const r=this.getValue(e);void 0!==r&&(t[e]=r);const n=this.getTransition(e);void 0!==n&&(t[`${e}-transition`]=n);}return t}transitioned(t,e){const r=new Ki(this._properties);for(const n of Object.keys(this._values))r._values[n]=this._values[n].transitioned(t,e._values[n]);return r}untransitioned(){const t=new Ki(this._properties);for(const e of Object.keys(this._values))t._values[e]=this._values[e].untransitioned();return t}}class Gi{constructor(t,e,r,n,i){this.property=t,this.value=e,this.begin=i+n.delay||0,this.end=this.begin+n.duration||0,t.specification.transition&&(n.delay||n.duration)&&(this.prior=r);}possiblyEvaluate(t,e,r){const n=t.now||0,i=this.value.possiblyEvaluate(t,e,r),s=this.prior;if(s){if(n>this.end)return this.prior=null,i;if(this.value.isDataDriven())return this.prior=null,i;if(n=1)return 1;const e=t*t,r=e*t;return 4*(t<.5?r:3*(t-e)+r-.75)}(a))}}return i}}class Ki{constructor(t){this._properties=t,this._values=Object.create(t.defaultTransitioningPropertyValues);}possiblyEvaluate(t,e,r){const n=new Yi(this._properties);for(const i of Object.keys(this._values))n._values[i]=this._values[i].possiblyEvaluate(t,e,r);return n}hasTransition(){for(const t of Object.keys(this._values))if(this._values[t].prior)return !0;return !1}}class Xi{constructor(t){this._properties=t,this._values=Object.create(t.defaultPropertyValues);}hasValue(t){return void 0!==this._values[t].value}getValue(t){return w(this._values[t].value)}setValue(t,e){this._values[t]=new qi(this._values[t].property,null===e?void 0:w(e));}serialize(){const t={};for(const e of Object.keys(this._values)){const r=this.getValue(e);void 0!==r&&(t[e]=r);}return t}possiblyEvaluate(t,e,r){const n=new Yi(this._properties);for(const i of Object.keys(this._values))n._values[i]=this._values[i].possiblyEvaluate(t,e,r);return n}}class Hi{constructor(t,e,r){this.property=t,this.value=e,this.parameters=r;}isConstant(){return "constant"===this.value.kind}constantOr(t){return "constant"===this.value.kind?this.value.value:t}evaluate(t,e,r,n){return this.property.evaluate(this.value,this.parameters,t,e,r,n)}}class Yi{constructor(t){this._properties=t,this._values=Object.create(t.defaultPossiblyEvaluatedValues);}get(t){return this._values[t]}}class Ji{constructor(t){this.specification=t;}possiblyEvaluate(t,e){if(t.isDataDriven())throw new Error("Value should not be data driven");return t.expression.evaluate(e)}interpolate(t,e,r){const n=Ce[this.specification.type];return n?n(t,e,r):t}}class Wi{constructor(t,e){this.specification=t,this.overrides=e;}possiblyEvaluate(t,e,r,n){return new Hi(this,"constant"===t.expression.kind||"camera"===t.expression.kind?{kind:"constant",value:t.expression.evaluate(e,null,{},r,n)}:t.expression,e)}interpolate(t,e,r){if("constant"!==t.value.kind||"constant"!==e.value.kind)return t;if(void 0===t.value.value||void 0===e.value.value)return new Hi(this,{kind:"constant",value:void 0},t.parameters);const n=Ce[this.specification.type];if(n){const i=n(t.value.value,e.value.value,r);return new Hi(this,{kind:"constant",value:i},t.parameters)}return t}evaluate(t,e,r,n,i,s){return "constant"===t.kind?t.value:t.evaluate(e,r,n,i,s)}}class Qi extends Wi{possiblyEvaluate(t,e,r,n){if(void 0===t.value)return new Hi(this,{kind:"constant",value:void 0},e);if("constant"===t.expression.kind){const i=t.expression.evaluate(e,null,{},r,n),s="resolvedImage"===t.property.specification.type&&"string"!=typeof i?i.name:i,a=this._calculate(s,s,s,e);return new Hi(this,{kind:"constant",value:a},e)}if("camera"===t.expression.kind){const r=this._calculate(t.expression.evaluate({zoom:e.zoom-1}),t.expression.evaluate({zoom:e.zoom}),t.expression.evaluate({zoom:e.zoom+1}),e);return new Hi(this,{kind:"constant",value:r},e)}return new Hi(this,t.expression,e)}evaluate(t,e,r,n,i,s){if("source"===t.kind){const a=t.evaluate(e,r,n,i,s);return this._calculate(a,a,a,e)}return "composite"===t.kind?this._calculate(t.evaluate({zoom:Math.floor(e.zoom)-1},r,n),t.evaluate({zoom:Math.floor(e.zoom)},r,n),t.evaluate({zoom:Math.floor(e.zoom)+1},r,n),e):t.value}_calculate(t,e,r,n){return n.zoom>n.zoomHistory.lastIntegerZoom?{from:t,to:e}:{from:r,to:e}}interpolate(t){return t}}class ts{constructor(t){this.specification=t;}possiblyEvaluate(t,e,r,n){if(void 0!==t.value){if("constant"===t.expression.kind){const i=t.expression.evaluate(e,null,{},r,n);return this._calculate(i,i,i,e)}return this._calculate(t.expression.evaluate(new Ui(Math.floor(e.zoom-1),e)),t.expression.evaluate(new Ui(Math.floor(e.zoom),e)),t.expression.evaluate(new Ui(Math.floor(e.zoom+1),e)),e)}}_calculate(t,e,r,n){return n.zoom>n.zoomHistory.lastIntegerZoom?{from:t,to:e}:{from:r,to:e}}interpolate(t){return t}}class es{constructor(t){this.specification=t;}possiblyEvaluate(t,e,r,n){return !!t.expression.evaluate(e,null,{},r,n)}interpolate(){return !1}}class rs{constructor(t){this.properties=t,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(const e in t){const r=t[e];r.specification.overridable&&this.overridableProperties.push(e);const n=this.defaultPropertyValues[e]=new qi(r,void 0),i=this.defaultTransitionablePropertyValues[e]=new Ni(r);this.defaultTransitioningPropertyValues[e]=i.untransitioned(),this.defaultPossiblyEvaluatedValues[e]=n.possiblyEvaluate({});}}}wi("DataDrivenProperty",Wi),wi("DataConstantProperty",Ji),wi("CrossFadedDataDrivenProperty",Qi),wi("CrossFadedProperty",ts),wi("ColorRampProperty",es);const ns="-transition";class is extends Z{constructor(t,e){if(super(),this.id=t.id,this.type=t.type,this._featureFilter={filter:()=>!0,needGeometry:!1},"custom"!==t.type&&(this.metadata=t.metadata,this.minzoom=t.minzoom,this.maxzoom=t.maxzoom,"background"!==t.type&&(this.source=t.source,this.sourceLayer=t["source-layer"],this.filter=t.filter),e.layout&&(this._unevaluatedLayout=new Xi(e.layout)),e.paint)){this._transitionablePaint=new Zi(e.paint);for(const e in t.paint)this.setPaintProperty(e,t.paint[e],{validate:!1});for(const e in t.layout)this.setLayoutProperty(e,t.layout[e],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new Yi(e.paint);}}getCrossfadeParameters(){return this._crossfadeParameters}getLayoutProperty(t){return "visibility"===t?this.visibility:this._unevaluatedLayout.getValue(t)}setLayoutProperty(t,e,r={}){null!=e&&this._validate(gi,`layers.${this.id}.layout.${t}`,t,e,r)||("visibility"!==t?this._unevaluatedLayout.setValue(t,e):this.visibility=e);}getPaintProperty(t){return t.endsWith(ns)?this._transitionablePaint.getTransition(t.slice(0,-11)):this._transitionablePaint.getValue(t)}setPaintProperty(t,e,r={}){if(null!=e&&this._validate(mi,`layers.${this.id}.paint.${t}`,t,e,r))return !1;if(t.endsWith(ns))return this._transitionablePaint.setTransition(t.slice(0,-11),e||void 0),!1;{const r=this._transitionablePaint._values[t],n="cross-faded-data-driven"===r.property.specification["property-type"],i=r.value.isDataDriven(),s=r.value;this._transitionablePaint.setValue(t,e),this._handleSpecialPaintPropertyUpdate(t);const a=this._transitionablePaint._values[t].value;return a.isDataDriven()||i||n||this._handleOverridablePaintPropertyUpdate(t,s,a)}}_handleSpecialPaintPropertyUpdate(t){}_handleOverridablePaintPropertyUpdate(t,e,r){return !1}isHidden(t){return !!(this.minzoom&&t=this.maxzoom)||"none"===this.visibility}updateTransitions(t){this._transitioningPaint=this._transitionablePaint.transitioned(t,this._transitioningPaint);}hasTransition(){return this._transitioningPaint.hasTransition()}recalculate(t,e){t.getCrossfadeParameters&&(this._crossfadeParameters=t.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(t,void 0,e)),this.paint=this._transitioningPaint.possiblyEvaluate(t,void 0,e);}serialize(){const t={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(t.layout=t.layout||{},t.layout.visibility=this.visibility),b(t,((t,e)=>!(void 0===t||"layout"===e&&!Object.keys(t).length||"paint"===e&&!Object.keys(t).length)))}_validate(t,e,r,n,i={}){return (!i||!1!==i.validate)&&xi(this,t.call(fi,{key:e,layerType:this.type,objectKey:r,value:n,styleSpec:G,style:{glyphs:!0,sprite:!0}}))}is3D(){return !1}isTileClipped(){return !1}hasOffscreenPass(){return !1}resize(){}isStateDependent(){for(const t in this.paint._values){const e=this.paint.get(t);if(e instanceof Hi&&an(e.property.specification)&&("source"===e.value.kind||"composite"===e.value.kind)&&e.value.isStateDependent)return !0}return !1}}const ss={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array};class as{constructor(t,e){this._structArray=t,this._pos1=e*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8;}}class os{constructor(){this.isTransferred=!1,this.capacity=-1,this.resize(0);}static serialize(t,e){return t._trim(),e&&(t.isTransferred=!0,e.push(t.arrayBuffer)),{length:t.length,arrayBuffer:t.arrayBuffer}}static deserialize(t){const e=Object.create(this.prototype);return e.arrayBuffer=t.arrayBuffer,e.length=t.length,e.capacity=t.arrayBuffer.byteLength/e.bytesPerElement,e._refreshViews(),e}_trim(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews());}clear(){this.length=0;}resize(t){this.reserve(t),this.length=t;}reserve(t){if(t>this.capacity){this.capacity=Math.max(t,Math.floor(5*this.capacity),128),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);const e=this.uint8;this._refreshViews(),e&&this.uint8.set(e);}}_refreshViews(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")}}function ls(t,e=1){let r=0,n=0;return {members:t.map((t=>{const i=ss[t.type].BYTES_PER_ELEMENT,s=r=us(r,Math.max(e,i)),a=t.components||1;return n=Math.max(n,i),r+=i*a,{name:t.name,type:t.type,components:a,offset:s}})),size:us(r,Math.max(n,e)),alignment:e}}function us(t,e){return Math.ceil(t/e)*e}class cs extends os{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(t,e){const r=this.length;return this.resize(r+1),this.emplace(r,t,e)}emplace(t,e,r){const n=2*t;return this.int16[n+0]=e,this.int16[n+1]=r,t}}cs.prototype.bytesPerElement=4,wi("StructArrayLayout2i4",cs);class hs extends os{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(t,e,r){const n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)}emplace(t,e,r,n){const i=3*t;return this.int16[i+0]=e,this.int16[i+1]=r,this.int16[i+2]=n,t}}hs.prototype.bytesPerElement=6,wi("StructArrayLayout3i6",hs);class ps extends os{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(t,e,r,n){const i=this.length;return this.resize(i+1),this.emplace(i,t,e,r,n)}emplace(t,e,r,n,i){const s=4*t;return this.int16[s+0]=e,this.int16[s+1]=r,this.int16[s+2]=n,this.int16[s+3]=i,t}}ps.prototype.bytesPerElement=8,wi("StructArrayLayout4i8",ps);class fs extends os{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(t,e,r,n,i,s){const a=this.length;return this.resize(a+1),this.emplace(a,t,e,r,n,i,s)}emplace(t,e,r,n,i,s,a){const o=6*t;return this.int16[o+0]=e,this.int16[o+1]=r,this.int16[o+2]=n,this.int16[o+3]=i,this.int16[o+4]=s,this.int16[o+5]=a,t}}fs.prototype.bytesPerElement=12,wi("StructArrayLayout2i4i12",fs);class ds extends os{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(t,e,r,n,i,s){const a=this.length;return this.resize(a+1),this.emplace(a,t,e,r,n,i,s)}emplace(t,e,r,n,i,s,a){const o=4*t,l=8*t;return this.int16[o+0]=e,this.int16[o+1]=r,this.uint8[l+4]=n,this.uint8[l+5]=i,this.uint8[l+6]=s,this.uint8[l+7]=a,t}}ds.prototype.bytesPerElement=8,wi("StructArrayLayout2i4ub8",ds);class ys extends os{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(t,e){const r=this.length;return this.resize(r+1),this.emplace(r,t,e)}emplace(t,e,r){const n=2*t;return this.float32[n+0]=e,this.float32[n+1]=r,t}}ys.prototype.bytesPerElement=8,wi("StructArrayLayout2f8",ys);class ms extends os{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer);}emplaceBack(t,e,r,n,i,s,a,o,l,u){const c=this.length;return this.resize(c+1),this.emplace(c,t,e,r,n,i,s,a,o,l,u)}emplace(t,e,r,n,i,s,a,o,l,u,c){const h=10*t;return this.uint16[h+0]=e,this.uint16[h+1]=r,this.uint16[h+2]=n,this.uint16[h+3]=i,this.uint16[h+4]=s,this.uint16[h+5]=a,this.uint16[h+6]=o,this.uint16[h+7]=l,this.uint16[h+8]=u,this.uint16[h+9]=c,t}}ms.prototype.bytesPerElement=20,wi("StructArrayLayout10ui20",ms);class gs extends os{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer);}emplaceBack(t,e,r,n,i,s,a,o,l,u,c,h){const p=this.length;return this.resize(p+1),this.emplace(p,t,e,r,n,i,s,a,o,l,u,c,h)}emplace(t,e,r,n,i,s,a,o,l,u,c,h,p){const f=12*t;return this.int16[f+0]=e,this.int16[f+1]=r,this.int16[f+2]=n,this.int16[f+3]=i,this.uint16[f+4]=s,this.uint16[f+5]=a,this.uint16[f+6]=o,this.uint16[f+7]=l,this.int16[f+8]=u,this.int16[f+9]=c,this.int16[f+10]=h,this.int16[f+11]=p,t}}gs.prototype.bytesPerElement=24,wi("StructArrayLayout4i4ui4i24",gs);class xs extends os{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(t,e,r){const n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)}emplace(t,e,r,n){const i=3*t;return this.float32[i+0]=e,this.float32[i+1]=r,this.float32[i+2]=n,t}}xs.prototype.bytesPerElement=12,wi("StructArrayLayout3f12",xs);class vs extends os{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer);}emplaceBack(t){const e=this.length;return this.resize(e+1),this.emplace(e,t)}emplace(t,e){return this.uint32[1*t+0]=e,t}}vs.prototype.bytesPerElement=4,wi("StructArrayLayout1ul4",vs);class bs extends os{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer);}emplaceBack(t,e,r,n,i,s,a,o,l){const u=this.length;return this.resize(u+1),this.emplace(u,t,e,r,n,i,s,a,o,l)}emplace(t,e,r,n,i,s,a,o,l,u){const c=10*t,h=5*t;return this.int16[c+0]=e,this.int16[c+1]=r,this.int16[c+2]=n,this.int16[c+3]=i,this.int16[c+4]=s,this.int16[c+5]=a,this.uint32[h+3]=o,this.uint16[c+8]=l,this.uint16[c+9]=u,t}}bs.prototype.bytesPerElement=20,wi("StructArrayLayout6i1ul2ui20",bs);class ws extends os{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(t,e,r,n,i,s){const a=this.length;return this.resize(a+1),this.emplace(a,t,e,r,n,i,s)}emplace(t,e,r,n,i,s,a){const o=6*t;return this.int16[o+0]=e,this.int16[o+1]=r,this.int16[o+2]=n,this.int16[o+3]=i,this.int16[o+4]=s,this.int16[o+5]=a,t}}ws.prototype.bytesPerElement=12,wi("StructArrayLayout2i2i2i12",ws);class _s extends os{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(t,e,r,n,i){const s=this.length;return this.resize(s+1),this.emplace(s,t,e,r,n,i)}emplace(t,e,r,n,i,s){const a=4*t,o=8*t;return this.float32[a+0]=e,this.float32[a+1]=r,this.float32[a+2]=n,this.int16[o+6]=i,this.int16[o+7]=s,t}}_s.prototype.bytesPerElement=16,wi("StructArrayLayout2f1f2i16",_s);class As extends os{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(t,e,r,n,i,s){const a=this.length;return this.resize(a+1),this.emplace(a,t,e,r,n,i,s)}emplace(t,e,r,n,i,s,a){const o=16*t,l=4*t,u=8*t;return this.uint8[o+0]=e,this.uint8[o+1]=r,this.float32[l+1]=n,this.float32[l+2]=i,this.int16[u+6]=s,this.int16[u+7]=a,t}}As.prototype.bytesPerElement=16,wi("StructArrayLayout2ub2f2i16",As);class Ss extends os{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer);}emplaceBack(t,e,r){const n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)}emplace(t,e,r,n){const i=3*t;return this.uint16[i+0]=e,this.uint16[i+1]=r,this.uint16[i+2]=n,t}}Ss.prototype.bytesPerElement=6,wi("StructArrayLayout3ui6",Ss);class ks extends os{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(t,e,r,n,i,s,a,o,l,u,c,h,p,f,d,y,m){const g=this.length;return this.resize(g+1),this.emplace(g,t,e,r,n,i,s,a,o,l,u,c,h,p,f,d,y,m)}emplace(t,e,r,n,i,s,a,o,l,u,c,h,p,f,d,y,m,g){const x=24*t,v=12*t,b=48*t;return this.int16[x+0]=e,this.int16[x+1]=r,this.uint16[x+2]=n,this.uint16[x+3]=i,this.uint32[v+2]=s,this.uint32[v+3]=a,this.uint32[v+4]=o,this.uint16[x+10]=l,this.uint16[x+11]=u,this.uint16[x+12]=c,this.float32[v+7]=h,this.float32[v+8]=p,this.uint8[b+36]=f,this.uint8[b+37]=d,this.uint8[b+38]=y,this.uint32[v+10]=m,this.int16[x+22]=g,t}}ks.prototype.bytesPerElement=48,wi("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",ks);class Ms extends os{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(t,e,r,n,i,s,a,o,l,u,c,h,p,f,d,y,m,g,x,v,b,w,_,A,S,k,M,I){const z=this.length;return this.resize(z+1),this.emplace(z,t,e,r,n,i,s,a,o,l,u,c,h,p,f,d,y,m,g,x,v,b,w,_,A,S,k,M,I)}emplace(t,e,r,n,i,s,a,o,l,u,c,h,p,f,d,y,m,g,x,v,b,w,_,A,S,k,M,I,z){const P=32*t,C=16*t;return this.int16[P+0]=e,this.int16[P+1]=r,this.int16[P+2]=n,this.int16[P+3]=i,this.int16[P+4]=s,this.int16[P+5]=a,this.int16[P+6]=o,this.int16[P+7]=l,this.uint16[P+8]=u,this.uint16[P+9]=c,this.uint16[P+10]=h,this.uint16[P+11]=p,this.uint16[P+12]=f,this.uint16[P+13]=d,this.uint16[P+14]=y,this.uint16[P+15]=m,this.uint16[P+16]=g,this.uint16[P+17]=x,this.uint16[P+18]=v,this.uint16[P+19]=b,this.uint16[P+20]=w,this.uint16[P+21]=_,this.uint16[P+22]=A,this.uint32[C+12]=S,this.float32[C+13]=k,this.float32[C+14]=M,this.uint16[P+30]=I,this.uint16[P+31]=z,t}}Ms.prototype.bytesPerElement=64,wi("StructArrayLayout8i15ui1ul2f2ui64",Ms);class Is extends os{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(t){const e=this.length;return this.resize(e+1),this.emplace(e,t)}emplace(t,e){return this.float32[1*t+0]=e,t}}Is.prototype.bytesPerElement=4,wi("StructArrayLayout1f4",Is);class zs extends os{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(t,e,r){const n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)}emplace(t,e,r,n){const i=3*t;return this.uint16[6*t+0]=e,this.float32[i+1]=r,this.float32[i+2]=n,t}}zs.prototype.bytesPerElement=12,wi("StructArrayLayout1ui2f12",zs);class Ps extends os{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer);}emplaceBack(t,e,r){const n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)}emplace(t,e,r,n){const i=4*t;return this.uint32[2*t+0]=e,this.uint16[i+2]=r,this.uint16[i+3]=n,t}}Ps.prototype.bytesPerElement=8,wi("StructArrayLayout1ul2ui8",Ps);class Cs extends os{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer);}emplaceBack(t,e){const r=this.length;return this.resize(r+1),this.emplace(r,t,e)}emplace(t,e,r){const n=2*t;return this.uint16[n+0]=e,this.uint16[n+1]=r,t}}Cs.prototype.bytesPerElement=4,wi("StructArrayLayout2ui4",Cs);class Bs extends os{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer);}emplaceBack(t){const e=this.length;return this.resize(e+1),this.emplace(e,t)}emplace(t,e){return this.uint16[1*t+0]=e,t}}Bs.prototype.bytesPerElement=2,wi("StructArrayLayout1ui2",Bs);class Vs extends os{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(t,e,r,n){const i=this.length;return this.resize(i+1),this.emplace(i,t,e,r,n)}emplace(t,e,r,n,i){const s=4*t;return this.float32[s+0]=e,this.float32[s+1]=r,this.float32[s+2]=n,this.float32[s+3]=i,t}}Vs.prototype.bytesPerElement=16,wi("StructArrayLayout4f16",Vs);class Es extends as{get anchorPointX(){return this._structArray.int16[this._pos2+0]}get anchorPointY(){return this._structArray.int16[this._pos2+1]}get x1(){return this._structArray.int16[this._pos2+2]}get y1(){return this._structArray.int16[this._pos2+3]}get x2(){return this._structArray.int16[this._pos2+4]}get y2(){return this._structArray.int16[this._pos2+5]}get featureIndex(){return this._structArray.uint32[this._pos4+3]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+8]}get bucketIndex(){return this._structArray.uint16[this._pos2+9]}get anchorPoint(){return new s(this.anchorPointX,this.anchorPointY)}}Es.prototype.size=20;class Fs extends bs{get(t){return new Es(this,t)}}wi("CollisionBoxArray",Fs);class Ts extends as{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get glyphStartIndex(){return this._structArray.uint16[this._pos2+2]}get numGlyphs(){return this._structArray.uint16[this._pos2+3]}get vertexStartIndex(){return this._structArray.uint32[this._pos4+2]}get lineStartIndex(){return this._structArray.uint32[this._pos4+3]}get lineLength(){return this._structArray.uint32[this._pos4+4]}get segment(){return this._structArray.uint16[this._pos2+10]}get lowerSize(){return this._structArray.uint16[this._pos2+11]}get upperSize(){return this._structArray.uint16[this._pos2+12]}get lineOffsetX(){return this._structArray.float32[this._pos4+7]}get lineOffsetY(){return this._structArray.float32[this._pos4+8]}get writingMode(){return this._structArray.uint8[this._pos1+36]}get placedOrientation(){return this._structArray.uint8[this._pos1+37]}set placedOrientation(t){this._structArray.uint8[this._pos1+37]=t;}get hidden(){return this._structArray.uint8[this._pos1+38]}set hidden(t){this._structArray.uint8[this._pos1+38]=t;}get crossTileID(){return this._structArray.uint32[this._pos4+10]}set crossTileID(t){this._structArray.uint32[this._pos4+10]=t;}get associatedIconIndex(){return this._structArray.int16[this._pos2+22]}}Ts.prototype.size=48;class $s extends ks{get(t){return new Ts(this,t)}}wi("PlacedSymbolArray",$s);class Ls extends as{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get rightJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+2]}get centerJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+3]}get leftJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+4]}get verticalPlacedTextSymbolIndex(){return this._structArray.int16[this._pos2+5]}get placedIconSymbolIndex(){return this._structArray.int16[this._pos2+6]}get verticalPlacedIconSymbolIndex(){return this._structArray.int16[this._pos2+7]}get key(){return this._structArray.uint16[this._pos2+8]}get textBoxStartIndex(){return this._structArray.uint16[this._pos2+9]}get textBoxEndIndex(){return this._structArray.uint16[this._pos2+10]}get verticalTextBoxStartIndex(){return this._structArray.uint16[this._pos2+11]}get verticalTextBoxEndIndex(){return this._structArray.uint16[this._pos2+12]}get iconBoxStartIndex(){return this._structArray.uint16[this._pos2+13]}get iconBoxEndIndex(){return this._structArray.uint16[this._pos2+14]}get verticalIconBoxStartIndex(){return this._structArray.uint16[this._pos2+15]}get verticalIconBoxEndIndex(){return this._structArray.uint16[this._pos2+16]}get featureIndex(){return this._structArray.uint16[this._pos2+17]}get numHorizontalGlyphVertices(){return this._structArray.uint16[this._pos2+18]}get numVerticalGlyphVertices(){return this._structArray.uint16[this._pos2+19]}get numIconVertices(){return this._structArray.uint16[this._pos2+20]}get numVerticalIconVertices(){return this._structArray.uint16[this._pos2+21]}get useRuntimeCollisionCircles(){return this._structArray.uint16[this._pos2+22]}get crossTileID(){return this._structArray.uint32[this._pos4+12]}set crossTileID(t){this._structArray.uint32[this._pos4+12]=t;}get textBoxScale(){return this._structArray.float32[this._pos4+13]}get collisionCircleDiameter(){return this._structArray.float32[this._pos4+14]}get textAnchorOffsetStartIndex(){return this._structArray.uint16[this._pos2+30]}get textAnchorOffsetEndIndex(){return this._structArray.uint16[this._pos2+31]}}Ls.prototype.size=64;class Ds extends Ms{get(t){return new Ls(this,t)}}wi("SymbolInstanceArray",Ds);class Os extends Is{getoffsetX(t){return this.float32[1*t+0]}}wi("GlyphOffsetArray",Os);class js extends hs{getx(t){return this.int16[3*t+0]}gety(t){return this.int16[3*t+1]}gettileUnitDistanceFromAnchor(t){return this.int16[3*t+2]}}wi("SymbolLineVertexArray",js);class Rs extends as{get textAnchor(){return this._structArray.uint16[this._pos2+0]}get textOffset0(){return this._structArray.float32[this._pos4+1]}get textOffset1(){return this._structArray.float32[this._pos4+2]}}Rs.prototype.size=12;class Us extends zs{get(t){return new Rs(this,t)}}wi("TextAnchorOffsetArray",Us);class qs extends as{get featureIndex(){return this._structArray.uint32[this._pos4+0]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+2]}get bucketIndex(){return this._structArray.uint16[this._pos2+3]}}qs.prototype.size=8;class Ns extends Ps{get(t){return new qs(this,t)}}wi("FeatureIndexArray",Ns);class Zs extends cs{}class Gs extends cs{}class Ks extends cs{}class Xs extends fs{}class Hs extends ds{}class Ys extends ys{}class Js extends ms{}class Ws extends gs{}class Qs extends xs{}class ta extends vs{}class ea extends ws{}class ra extends As{}class na extends Ss{}class ia extends Cs{}const sa=ls([{name:"a_pos",components:2,type:"Int16"}],4),{members:aa}=sa;class oa{constructor(t=[]){this.segments=t;}prepareSegment(t,e,r,n){let i=this.segments[this.segments.length-1];return t>oa.MAX_VERTEX_ARRAY_LENGTH&&A(`Max vertices per segment is ${oa.MAX_VERTEX_ARRAY_LENGTH}: bucket requested ${t}`),(!i||i.vertexLength+t>oa.MAX_VERTEX_ARRAY_LENGTH||i.sortKey!==n)&&(i={vertexOffset:e.length,primitiveOffset:r.length,vertexLength:0,primitiveLength:0},void 0!==n&&(i.sortKey=n),this.segments.push(i)),i}get(){return this.segments}destroy(){for(const t of this.segments)for(const e in t.vaos)t.vaos[e].destroy();}static simpleSegment(t,e,r,n){return new oa([{vertexOffset:t,primitiveOffset:e,vertexLength:r,primitiveLength:n,vaos:{},sortKey:0}])}}function la(t,e){return 256*(t=y(Math.floor(t),0,255))+y(Math.floor(e),0,255)}oa.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,wi("SegmentVector",oa);const ua=ls([{name:"a_pattern_from",components:4,type:"Uint16"},{name:"a_pattern_to",components:4,type:"Uint16"},{name:"a_pixel_ratio_from",components:1,type:"Uint16"},{name:"a_pixel_ratio_to",components:1,type:"Uint16"}]);var ca={exports:{}},ha={exports:{}};ha.exports=function(t,e){var r,n,i,s,a,o,l,u;for(n=t.length-(r=3&t.length),i=e,a=3432918353,o=461845907,u=0;u>>16)*a&65535)<<16)&4294967295)<<15|l>>>17))*o+(((l>>>16)*o&65535)<<16)&4294967295)<<13|i>>>19))+((5*(i>>>16)&65535)<<16)&4294967295))+((58964+(s>>>16)&65535)<<16);switch(l=0,r){case 3:l^=(255&t.charCodeAt(u+2))<<16;case 2:l^=(255&t.charCodeAt(u+1))<<8;case 1:i^=l=(65535&(l=(l=(65535&(l^=255&t.charCodeAt(u)))*a+(((l>>>16)*a&65535)<<16)&4294967295)<<15|l>>>17))*o+(((l>>>16)*o&65535)<<16)&4294967295;}return i^=t.length,i=2246822507*(65535&(i^=i>>>16))+((2246822507*(i>>>16)&65535)<<16)&4294967295,i=3266489909*(65535&(i^=i>>>13))+((3266489909*(i>>>16)&65535)<<16)&4294967295,(i^=i>>>16)>>>0};var pa=ha.exports,fa={exports:{}};fa.exports=function(t,e){for(var r,n=t.length,i=e^n,s=0;n>=4;)r=1540483477*(65535&(r=255&t.charCodeAt(s)|(255&t.charCodeAt(++s))<<8|(255&t.charCodeAt(++s))<<16|(255&t.charCodeAt(++s))<<24))+((1540483477*(r>>>16)&65535)<<16),i=1540483477*(65535&i)+((1540483477*(i>>>16)&65535)<<16)^(r=1540483477*(65535&(r^=r>>>24))+((1540483477*(r>>>16)&65535)<<16)),n-=4,++s;switch(n){case 3:i^=(255&t.charCodeAt(s+2))<<16;case 2:i^=(255&t.charCodeAt(s+1))<<8;case 1:i=1540483477*(65535&(i^=255&t.charCodeAt(s)))+((1540483477*(i>>>16)&65535)<<16);}return i=1540483477*(65535&(i^=i>>>13))+((1540483477*(i>>>16)&65535)<<16),(i^=i>>>15)>>>0};var da=pa,ya=fa.exports;ca.exports=da,ca.exports.murmur3=da,ca.exports.murmur2=ya;var ma=r(ca.exports);class ga{constructor(){this.ids=[],this.positions=[],this.indexed=!1;}add(t,e,r,n){this.ids.push(xa(t)),this.positions.push(e,r,n);}getPositions(t){if(!this.indexed)throw new Error("Trying to get index, but feature positions are not indexed");const e=xa(t);let r=0,n=this.ids.length-1;for(;r>1;this.ids[t]>=e?n=t:r=t+1;}const i=[];for(;this.ids[r]===e;)i.push({index:this.positions[3*r],start:this.positions[3*r+1],end:this.positions[3*r+2]}),r++;return i}static serialize(t,e){const r=new Float64Array(t.ids),n=new Uint32Array(t.positions);return va(r,n,0,r.length-1),e&&e.push(r.buffer,n.buffer),{ids:r,positions:n}}static deserialize(t){const e=new ga;return e.ids=t.ids,e.positions=t.positions,e.indexed=!0,e}}function xa(t){const e=+t;return !isNaN(e)&&e<=Number.MAX_SAFE_INTEGER?e:ma(String(t))}function va(t,e,r,n){for(;r>1];let s=r-1,a=n+1;for(;;){do{s++;}while(t[s]i);if(s>=a)break;ba(t,s,a),ba(e,3*s,3*a),ba(e,3*s+1,3*a+1),ba(e,3*s+2,3*a+2);}a-r`u_${t}`)),this.type=r;}setUniform(t,e,r){t.set(r.constantOr(this.value));}getBinding(t,e,r){return "color"===this.type?new Sa(t,e):new _a(t,e)}}class za{constructor(t,e){this.uniformNames=e.map((t=>`u_${t}`)),this.patternFrom=null,this.patternTo=null,this.pixelRatioFrom=1,this.pixelRatioTo=1;}setConstantPatternPositions(t,e){this.pixelRatioFrom=e.pixelRatio,this.pixelRatioTo=t.pixelRatio,this.patternFrom=e.tlbr,this.patternTo=t.tlbr;}setUniform(t,e,r,n){const i="u_pattern_to"===n?this.patternTo:"u_pattern_from"===n?this.patternFrom:"u_pixel_ratio_to"===n?this.pixelRatioTo:"u_pixel_ratio_from"===n?this.pixelRatioFrom:null;i&&t.set(i);}getBinding(t,e,r){return "u_pattern"===r.substr(0,9)?new Aa(t,e):new _a(t,e)}}class Pa{constructor(t,e,r,n){this.expression=t,this.type=r,this.maxValue=0,this.paintVertexAttributes=e.map((t=>({name:`a_${t}`,type:"Float32",components:"color"===r?2:1,offset:0}))),this.paintVertexArray=new n;}populatePaintArray(t,e,r,n,i){const s=this.paintVertexArray.length,a=this.expression.evaluate(new Ui(0),e,{},n,[],i);this.paintVertexArray.resize(t),this._setPaintValue(s,t,a);}updatePaintArray(t,e,r,n){const i=this.expression.evaluate({zoom:0},r,n);this._setPaintValue(t,e,i);}_setPaintValue(t,e,r){if("color"===this.type){const n=Ma(r);for(let r=t;r`u_${t}_t`)),this.type=r,this.useIntegerZoom=n,this.zoom=i,this.maxValue=0,this.paintVertexAttributes=e.map((t=>({name:`a_${t}`,type:"Float32",components:"color"===r?4:2,offset:0}))),this.paintVertexArray=new s;}populatePaintArray(t,e,r,n,i){const s=this.expression.evaluate(new Ui(this.zoom),e,{},n,[],i),a=this.expression.evaluate(new Ui(this.zoom+1),e,{},n,[],i),o=this.paintVertexArray.length;this.paintVertexArray.resize(t),this._setPaintValue(o,t,s,a);}updatePaintArray(t,e,r,n){const i=this.expression.evaluate({zoom:this.zoom},r,n),s=this.expression.evaluate({zoom:this.zoom+1},r,n);this._setPaintValue(t,e,i,s);}_setPaintValue(t,e,r,n){if("color"===this.type){const i=Ma(r),s=Ma(n);for(let r=t;r`#define HAS_UNIFORM_${t}`)));}return t}getBinderAttributes(){const t=[];for(const e in this.binders){const r=this.binders[e];if(r instanceof Pa||r instanceof Ca)for(let e=0;e!0)){this.programConfigurations={};for(const n of t)this.programConfigurations[n.id]=new Va(n,e,r);this.needsUpload=!1,this._featureMap=new ga,this._bufferOffset=0;}populatePaintArrays(t,e,r,n,i,s){for(const r in this.programConfigurations)this.programConfigurations[r].populatePaintArrays(t,e,n,i,s);void 0!==e.id&&this._featureMap.add(e.id,r,this._bufferOffset,t),this._bufferOffset=t,this.needsUpload=!0;}updatePaintArrays(t,e,r,n){for(const i of r)this.needsUpload=this.programConfigurations[i.id].updatePaintArrays(t,this._featureMap,e,i,n)||this.needsUpload;}get(t){return this.programConfigurations[t]}upload(t){if(this.needsUpload){for(const e in this.programConfigurations)this.programConfigurations[e].upload(t);this.needsUpload=!1;}}destroy(){for(const t in this.programConfigurations)this.programConfigurations[t].destroy();}}function Fa(t,e){return {"text-opacity":["opacity"],"icon-opacity":["opacity"],"text-color":["fill_color"],"icon-color":["fill_color"],"text-halo-color":["halo_color"],"icon-halo-color":["halo_color"],"text-halo-blur":["halo_blur"],"icon-halo-blur":["halo_blur"],"text-halo-width":["halo_width"],"icon-halo-width":["halo_width"],"line-gap-width":["gapwidth"],"line-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-extrusion-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"]}[t]||[t.replace(`${e}-`,"").replace(/-/g,"_")]}function Ta(t,e,r){const n={color:{source:ys,composite:Vs},number:{source:Is,composite:ys}},i=function(t){return {"line-pattern":{source:Js,composite:Js},"fill-pattern":{source:Js,composite:Js},"fill-extrusion-pattern":{source:Js,composite:Js}}[t]}(t);return i&&i[r]||n[e][r]}wi("ConstantBinder",Ia),wi("CrossFadedConstantBinder",za),wi("SourceExpressionBinder",Pa),wi("CrossFadedCompositeBinder",Ba),wi("CompositeExpressionBinder",Ca),wi("ProgramConfiguration",Va,{omit:["_buffers"]}),wi("ProgramConfigurationSet",Ea);const $a=8192,La=Math.pow(2,14)-1,Da=-La-1;function Oa(t){const e=$a/t.extent,r=t.loadGeometry();for(let t=0;tr.x+1||sr.y+1)&&A("Geometry exceeds allowed extent, reduce your vector tile buffer size");}}return r}function ja(t,e){return {type:t.type,id:t.id,properties:t.properties,geometry:e?Oa(t):[]}}function Ra(t,e,r,n,i){t.emplaceBack(2*e+(n+1)/2,2*r+(i+1)/2);}class Ua{constructor(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((t=>t.id)),this.index=t.index,this.hasPattern=!1,this.layoutVertexArray=new Gs,this.indexArray=new na,this.segments=new oa,this.programConfigurations=new Ea(t.layers,t.zoom),this.stateDependentLayerIds=this.layers.filter((t=>t.isStateDependent())).map((t=>t.id));}populate(t,e,r){const n=this.layers[0],i=[];let s=null,a=!1;"circle"===n.type&&(s=n.layout.get("circle-sort-key"),a=!s.isConstant());for(const{feature:e,id:n,index:o,sourceLayerIndex:l}of t){const t=this.layers[0]._featureFilter.needGeometry,u=ja(e,t);if(!this.layers[0]._featureFilter.filter(new Ui(this.zoom),u,r))continue;const c=a?s.evaluate(u,{},r):void 0,h={id:n,properties:e.properties,type:e.type,sourceLayerIndex:l,index:o,geometry:t?u.geometry:Oa(e),patterns:{},sortKey:c};i.push(h);}a&&i.sort(((t,e)=>t.sortKey-e.sortKey));for(const n of i){const{geometry:i,index:s,sourceLayerIndex:a}=n,o=t[s].feature;this.addFeature(n,i,s,r),e.featureIndex.insert(o,i,s,a,this.index);}}update(t,e,r){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,r);}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return !this.uploaded||this.programConfigurations.needsUpload}upload(t){this.uploaded||(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,aa),this.indexBuffer=t.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(t),this.uploaded=!0;}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy());}addFeature(t,e,r,n){for(const r of e)for(const e of r){const r=e.x,n=e.y;if(r<0||r>=$a||n<0||n>=$a)continue;const i=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,t.sortKey),s=i.vertexLength;Ra(this.layoutVertexArray,r,n,-1,-1),Ra(this.layoutVertexArray,r,n,1,-1),Ra(this.layoutVertexArray,r,n,1,1),Ra(this.layoutVertexArray,r,n,-1,1),this.indexArray.emplaceBack(s,s+1,s+2),this.indexArray.emplaceBack(s,s+3,s+2),i.vertexLength+=4,i.primitiveLength+=2;}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,r,{},n);}}function qa(t,e){for(let r=0;r1){if(Ka(t,e))return !0;for(let n=0;n1?r:r.sub(e)._mult(i)._add(e))}function Ja(t,e){let r,n,i,s=!1;for(let a=0;ae.y!=i.y>e.y&&e.x<(i.x-n.x)*(e.y-n.y)/(i.y-n.y)+n.x&&(s=!s);}return s}function Wa(t,e){let r=!1;for(let n=0,i=t.length-1;ne.y!=a.y>e.y&&e.x<(a.x-s.x)*(e.y-s.y)/(a.y-s.y)+s.x&&(r=!r);}return r}function Qa(t,e,r){const n=r[0],i=r[2];if(t.xi.x&&e.x>i.x||t.yi.y&&e.y>i.y)return !1;const s=S(t,e,r[0]);return s!==S(t,e,r[1])||s!==S(t,e,r[2])||s!==S(t,e,r[3])}function to(t,e,r){const n=e.paint.get(t).value;return "constant"===n.kind?n.value:r.programConfigurations.get(e.id).getMaxValue(t)}function eo(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1])}function ro(t,e,r,n,i){if(!e[0]&&!e[1])return t;const a=s.convert(e)._mult(i);"viewport"===r&&a._rotate(-n);const o=[];for(let e=0;eyo(t,e)))}(l,o),p=c?u*a:u;for(const t of n)for(const e of t){const t=c?e:yo(e,o);let r=p;const n=po([],[e.x,e.y,0,1],o);if("viewport"===this.paint.get("circle-pitch-scale")&&"map"===this.paint.get("circle-pitch-alignment")?r*=n[3]/s.cameraToCenterDistance:"map"===this.paint.get("circle-pitch-scale")&&"viewport"===this.paint.get("circle-pitch-alignment")&&(r*=s.cameraToCenterDistance/n[3]),Na(h,t,r))return !0}return !1}}function yo(t,e){const r=po([],[t.x,t.y,0,1],e);return new s(r[0]/r[3],r[1]/r[3])}class mo extends Ua{}let go;wi("HeatmapBucket",mo,{omit:["layers"]});var xo={get paint(){return go=go||new rs({"heatmap-radius":new Wi(G.paint_heatmap["heatmap-radius"]),"heatmap-weight":new Wi(G.paint_heatmap["heatmap-weight"]),"heatmap-intensity":new Ji(G.paint_heatmap["heatmap-intensity"]),"heatmap-color":new es(G.paint_heatmap["heatmap-color"]),"heatmap-opacity":new Ji(G.paint_heatmap["heatmap-opacity"])})}};function vo(t,{width:e,height:r},n,i){if(i){if(i instanceof Uint8ClampedArray)i=new Uint8Array(i.buffer);else if(i.length!==e*r*n)throw new RangeError(`mismatched image size. expected: ${i.length} but got: ${e*r*n}`)}else i=new Uint8Array(e*r*n);return t.width=e,t.height=r,t.data=i,t}function bo(t,{width:e,height:r},n){if(e===t.width&&r===t.height)return;const i=vo({},{width:e,height:r},n);wo(t,i,{x:0,y:0},{x:0,y:0},{width:Math.min(t.width,e),height:Math.min(t.height,r)},n),t.width=e,t.height=r,t.data=i.data;}function wo(t,e,r,n,i,s){if(0===i.width||0===i.height)return e;if(i.width>t.width||i.height>t.height||r.x>t.width-i.width||r.y>t.height-i.height)throw new RangeError("out of range source coordinates for image copy");if(i.width>e.width||i.height>e.height||n.x>e.width-i.width||n.y>e.height-i.height)throw new RangeError("out of range destination coordinates for image copy");const a=t.data,o=e.data;if(a===o)throw new Error("srcData equals dstData, so image is already copied");for(let l=0;l{e[t.evaluationKey]=s;const a=t.expression.evaluate(e);i.data[r+n+0]=Math.floor(255*a.r/a.a),i.data[r+n+1]=Math.floor(255*a.g/a.a),i.data[r+n+2]=Math.floor(255*a.b/a.a),i.data[r+n+3]=Math.floor(255*a.a);};if(t.clips)for(let e=0,i=0;e80*r){o=1/0,l=1/0;let e=-1/0,n=-1/0;for(let s=r;se&&(e=r),i>n&&(n=i);}u=Math.max(e-o,n-l),u=0!==u?32767/u:0;}return To(s,a,r,o,l,u,0),a}function Eo(t,e,r,n,i){let s;if(i===function(t,e,r,n){let i=0;for(let s=e,a=r-n;s0)for(let i=e;i=e;i-=n)s=tl(i/n|0,t[i],t[i+1],s);return s&&Xo(s,s.next)&&(el(s),s=s.next),s}function Fo(t,e){if(!t)return t;e||(e=t);let r,n=t;do{if(r=!1,n.steiner||!Xo(n,n.next)&&0!==Ko(n.prev,n,n.next))n=n.next;else {if(el(n),n=e=n.prev,n===n.next)break;r=!0;}}while(r||n!==e);return e}function To(t,e,r,n,i,s,a){if(!t)return;!a&&s&&function(t,e,r,n){let i=t;do{0===i.z&&(i.z=qo(i.x,i.y,e,r,n)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next;}while(i!==t);i.prevZ.nextZ=null,i.prevZ=null,function(t){let e,r=1;do{let n,i=t;t=null;let s=null;for(e=0;i;){e++;let a=i,o=0;for(let t=0;t0||l>0&&a;)0!==o&&(0===l||!a||i.z<=a.z)?(n=i,i=i.nextZ,o--):(n=a,a=a.nextZ,l--),s?s.nextZ=n:t=n,n.prevZ=s,s=n;i=a;}s.nextZ=null,r*=2;}while(e>1)}(i);}(t,n,i,s);let o=t;for(;t.prev!==t.next;){const l=t.prev,u=t.next;if(s?Lo(t,n,i,s):$o(t))e.push(l.i,t.i,u.i),el(t),t=u.next,o=u.next;else if((t=u)===o){a?1===a?To(t=Do(Fo(t),e),e,r,n,i,s,2):2===a&&Oo(t,e,r,n,i,s):To(Fo(t),e,r,n,i,s,1);break}}}function $o(t){const e=t.prev,r=t,n=t.next;if(Ko(e,r,n)>=0)return !1;const i=e.x,s=r.x,a=n.x,o=e.y,l=r.y,u=n.y,c=is?i>a?i:a:s>a?s:a,f=o>l?o>u?o:u:l>u?l:u;let d=n.next;for(;d!==e;){if(d.x>=c&&d.x<=p&&d.y>=h&&d.y<=f&&Zo(i,o,s,l,a,u,d.x,d.y)&&Ko(d.prev,d,d.next)>=0)return !1;d=d.next;}return !0}function Lo(t,e,r,n){const i=t.prev,s=t,a=t.next;if(Ko(i,s,a)>=0)return !1;const o=i.x,l=s.x,u=a.x,c=i.y,h=s.y,p=a.y,f=ol?o>u?o:u:l>u?l:u,m=c>h?c>p?c:p:h>p?h:p,g=qo(f,d,e,r,n),x=qo(y,m,e,r,n);let v=t.prevZ,b=t.nextZ;for(;v&&v.z>=g&&b&&b.z<=x;){if(v.x>=f&&v.x<=y&&v.y>=d&&v.y<=m&&v!==i&&v!==a&&Zo(o,c,l,h,u,p,v.x,v.y)&&Ko(v.prev,v,v.next)>=0)return !1;if(v=v.prevZ,b.x>=f&&b.x<=y&&b.y>=d&&b.y<=m&&b!==i&&b!==a&&Zo(o,c,l,h,u,p,b.x,b.y)&&Ko(b.prev,b,b.next)>=0)return !1;b=b.nextZ;}for(;v&&v.z>=g;){if(v.x>=f&&v.x<=y&&v.y>=d&&v.y<=m&&v!==i&&v!==a&&Zo(o,c,l,h,u,p,v.x,v.y)&&Ko(v.prev,v,v.next)>=0)return !1;v=v.prevZ;}for(;b&&b.z<=x;){if(b.x>=f&&b.x<=y&&b.y>=d&&b.y<=m&&b!==i&&b!==a&&Zo(o,c,l,h,u,p,b.x,b.y)&&Ko(b.prev,b,b.next)>=0)return !1;b=b.nextZ;}return !0}function Do(t,e){let r=t;do{const n=r.prev,i=r.next.next;!Xo(n,i)&&Ho(n,r,r.next,i)&&Wo(n,i)&&Wo(i,n)&&(e.push(n.i,r.i,i.i),el(r),el(r.next),r=t=i),r=r.next;}while(r!==t);return Fo(r)}function Oo(t,e,r,n,i,s){let a=t;do{let t=a.next.next;for(;t!==a.prev;){if(a.i!==t.i&&Go(a,t)){let o=Qo(a,t);return a=Fo(a,a.next),o=Fo(o,o.next),To(a,e,r,n,i,s,0),void To(o,e,r,n,i,s,0)}t=t.next;}a=a.next;}while(a!==t)}function jo(t,e){return t.x-e.x}function Ro(t,e){const r=function(t,e){let r=e;const n=t.x,i=t.y;let s,a=-1/0;do{if(i<=r.y&&i>=r.next.y&&r.next.y!==r.y){const t=r.x+(i-r.y)*(r.next.x-r.x)/(r.next.y-r.y);if(t<=n&&t>a&&(a=t,s=r.x=r.x&&r.x>=l&&n!==r.x&&Zo(is.x||r.x===s.x&&Uo(s,r)))&&(s=r,c=e);}r=r.next;}while(r!==o);return s}(t,e);if(!r)return e;const n=Qo(r,t);return Fo(n,n.next),Fo(r,r.next)}function Uo(t,e){return Ko(t.prev,t,e.prev)<0&&Ko(e.next,t,t.next)<0}function qo(t,e,r,n,i){return (t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=(t-r)*i|0)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=(e-n)*i|0)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function No(t){let e=t,r=t;do{(e.x=(t-a)*(s-o)&&(t-a)*(n-o)>=(r-a)*(e-o)&&(r-a)*(s-o)>=(i-a)*(n-o)}function Go(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!function(t,e){let r=t;do{if(r.i!==t.i&&r.next.i!==t.i&&r.i!==e.i&&r.next.i!==e.i&&Ho(r,r.next,t,e))return !0;r=r.next;}while(r!==t);return !1}(t,e)&&(Wo(t,e)&&Wo(e,t)&&function(t,e){let r=t,n=!1;const i=(t.x+e.x)/2,s=(t.y+e.y)/2;do{r.y>s!=r.next.y>s&&r.next.y!==r.y&&i<(r.next.x-r.x)*(s-r.y)/(r.next.y-r.y)+r.x&&(n=!n),r=r.next;}while(r!==t);return n}(t,e)&&(Ko(t.prev,t,e.prev)||Ko(t,e.prev,e))||Xo(t,e)&&Ko(t.prev,t,t.next)>0&&Ko(e.prev,e,e.next)>0)}function Ko(t,e,r){return (e.y-t.y)*(r.x-e.x)-(e.x-t.x)*(r.y-e.y)}function Xo(t,e){return t.x===e.x&&t.y===e.y}function Ho(t,e,r,n){const i=Jo(Ko(t,e,r)),s=Jo(Ko(t,e,n)),a=Jo(Ko(r,n,t)),o=Jo(Ko(r,n,e));return i!==s&&a!==o||!(0!==i||!Yo(t,r,e))||!(0!==s||!Yo(t,n,e))||!(0!==a||!Yo(r,t,n))||!(0!==o||!Yo(r,e,n))}function Yo(t,e,r){return e.x<=Math.max(t.x,r.x)&&e.x>=Math.min(t.x,r.x)&&e.y<=Math.max(t.y,r.y)&&e.y>=Math.min(t.y,r.y)}function Jo(t){return t>0?1:t<0?-1:0}function Wo(t,e){return Ko(t.prev,t,t.next)<0?Ko(t,e,t.next)>=0&&Ko(t,t.prev,e)>=0:Ko(t,e,t.prev)<0||Ko(t,t.next,e)<0}function Qo(t,e){const r=rl(t.i,t.x,t.y),n=rl(e.i,e.x,e.y),i=t.next,s=e.prev;return t.next=e,e.prev=t,r.next=i,i.prev=r,n.next=r,r.prev=n,s.next=n,n.prev=s,n}function tl(t,e,r,n){const i=rl(t,e,r);return n?(i.next=n.next,i.prev=n,n.next.prev=i,n.next=i):(i.prev=i,i.next=i),i}function el(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ);}function rl(t,e,r){return {i:t,x:e,y:r,prev:null,next:null,z:0,prevZ:null,nextZ:null,steiner:!1}}function nl(t,e,r){const n=r.patternDependencies;let i=!1;for(const r of e){const e=r.paint.get(`${t}-pattern`);e.isConstant()||(i=!0);const s=e.constantOr(null);s&&(i=!0,n[s.to]=!0,n[s.from]=!0);}return i}function il(t,e,r,n,i){const s=i.patternDependencies;for(const a of e){const e=a.paint.get(`${t}-pattern`).value;if("constant"!==e.kind){let t=e.evaluate({zoom:n-1},r,{},i.availableImages),o=e.evaluate({zoom:n},r,{},i.availableImages),l=e.evaluate({zoom:n+1},r,{},i.availableImages);t=t&&t.name?t.name:t,o=o&&o.name?o.name:o,l=l&&l.name?l.name:l,s[t]=!0,s[o]=!0,s[l]=!0,r.patterns[a.id]={min:t,mid:o,max:l};}}return r}class sl{constructor(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((t=>t.id)),this.index=t.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new Ks,this.indexArray=new na,this.indexArray2=new ia,this.programConfigurations=new Ea(t.layers,t.zoom),this.segments=new oa,this.segments2=new oa,this.stateDependentLayerIds=this.layers.filter((t=>t.isStateDependent())).map((t=>t.id));}populate(t,e,r){this.hasPattern=nl("fill",this.layers,e);const n=this.layers[0].layout.get("fill-sort-key"),i=!n.isConstant(),s=[];for(const{feature:a,id:o,index:l,sourceLayerIndex:u}of t){const t=this.layers[0]._featureFilter.needGeometry,c=ja(a,t);if(!this.layers[0]._featureFilter.filter(new Ui(this.zoom),c,r))continue;const h=i?n.evaluate(c,{},r,e.availableImages):void 0,p={id:o,properties:a.properties,type:a.type,sourceLayerIndex:u,index:l,geometry:t?c.geometry:Oa(a),patterns:{},sortKey:h};s.push(p);}i&&s.sort(((t,e)=>t.sortKey-e.sortKey));for(const n of s){const{geometry:i,index:s,sourceLayerIndex:a}=n;if(this.hasPattern){const t=il("fill",this.layers,n,this.zoom,e);this.patternFeatures.push(t);}else this.addFeature(n,i,s,r,{});e.featureIndex.insert(t[s].feature,i,s,a,this.index);}}update(t,e,r){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,r);}addFeatures(t,e,r){for(const t of this.patternFeatures)this.addFeature(t,t.geometry,t.index,e,r);}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return !this.uploaded||this.programConfigurations.needsUpload}upload(t){this.uploaded||(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,Bo),this.indexBuffer=t.createIndexBuffer(this.indexArray),this.indexBuffer2=t.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(t),this.uploaded=!0;}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy());}addFeature(t,e,r,n,i){for(const t of xr(e,500)){let e=0;for(const r of t)e+=r.length;const r=this.segments.prepareSegment(e,this.layoutVertexArray,this.indexArray),n=r.vertexLength,i=[],s=[];for(const e of t){if(0===e.length)continue;e!==t[0]&&s.push(i.length/2);const r=this.segments2.prepareSegment(e.length,this.layoutVertexArray,this.indexArray2),n=r.vertexLength;this.layoutVertexArray.emplaceBack(e[0].x,e[0].y),this.indexArray2.emplaceBack(n+e.length-1,n),i.push(e[0].x),i.push(e[0].y);for(let t=1;t>3;}if(i--,1===n||2===n)s+=t.readSVarint(),a+=t.readSVarint(),1===n&&(e&&o.push(e),e=[]),e.push(new dl(s,a));else {if(7!==n)throw new Error("unknown command "+n);e&&e.push(e[0].clone());}}return e&&o.push(e),o},ml.prototype.bbox=function(){var t=this._pbf;t.pos=this._geometry;for(var e=t.readVarint()+t.pos,r=1,n=0,i=0,s=0,a=1/0,o=-1/0,l=1/0,u=-1/0;t.pos>3;}if(n--,1===r||2===r)(i+=t.readSVarint())o&&(o=i),(s+=t.readSVarint())u&&(u=s);else if(7!==r)throw new Error("unknown command "+r)}return [a,l,o,u]},ml.prototype.toGeoJSON=function(t,e,r){var n,i,s=this.extent*Math.pow(2,r),a=this.extent*t,o=this.extent*e,l=this.loadGeometry(),u=ml.types[this.type];function c(t){for(var e=0;e>3;e=1===n?t.readString():2===n?t.readFloat():3===n?t.readDouble():4===n?t.readVarint64():5===n?t.readVarint():6===n?t.readSVarint():7===n?t.readBoolean():null;}return e}(r));}wl.prototype.feature=function(t){if(t<0||t>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[t];var e=this._pbf.readVarint()+this._pbf.pos;return new vl(this._pbf,e,this.extent,this._keys,this._values)};var Al=bl;function Sl(t,e,r){if(3===t){var n=new Al(r,r.readVarint()+r.pos);n.length&&(e[n.name]=n);}}fl.VectorTile=function(t,e){this.layers=t.readFields(Sl,{},e);},fl.VectorTileFeature=yl,fl.VectorTileLayer=bl;const kl=fl.VectorTileFeature.types,Ml=Math.pow(2,13);function Il(t,e,r,n,i,s,a,o){t.emplaceBack(e,r,2*Math.floor(n*Ml)+a,i*Ml*2,s*Ml*2,Math.round(o));}class zl{constructor(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((t=>t.id)),this.index=t.index,this.hasPattern=!1,this.layoutVertexArray=new Xs,this.centroidVertexArray=new Zs,this.indexArray=new na,this.programConfigurations=new Ea(t.layers,t.zoom),this.segments=new oa,this.stateDependentLayerIds=this.layers.filter((t=>t.isStateDependent())).map((t=>t.id));}populate(t,e,r){this.features=[],this.hasPattern=nl("fill-extrusion",this.layers,e);for(const{feature:n,id:i,index:s,sourceLayerIndex:a}of t){const t=this.layers[0]._featureFilter.needGeometry,o=ja(n,t);if(!this.layers[0]._featureFilter.filter(new Ui(this.zoom),o,r))continue;const l={id:i,sourceLayerIndex:a,index:s,geometry:t?o.geometry:Oa(n),properties:n.properties,type:n.type,patterns:{}};this.hasPattern?this.features.push(il("fill-extrusion",this.layers,l,this.zoom,e)):this.addFeature(l,l.geometry,s,r,{}),e.featureIndex.insert(n,l.geometry,s,a,this.index,!0);}}addFeatures(t,e,r){for(const t of this.features){const{geometry:n}=t;this.addFeature(t,n,t.index,e,r);}}update(t,e,r){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,r);}isEmpty(){return 0===this.layoutVertexArray.length&&0===this.centroidVertexArray.length}uploadPending(){return !this.uploaded||this.programConfigurations.needsUpload}upload(t){this.uploaded||(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,pl),this.centroidVertexBuffer=t.createVertexBuffer(this.centroidVertexArray,hl.members,!0),this.indexBuffer=t.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(t),this.uploaded=!0;}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.centroidVertexBuffer.destroy());}addFeature(t,e,r,n,i){for(const r of xr(e,500)){const e={x:0,y:0,vertexCount:0};let n=0;for(const t of r)n+=t.length;let i=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray);for(const t of r){if(0===t.length)continue;if(Cl(t))continue;let r=0;for(let n=0;n=1){const a=t[n-1];if(!Pl(s,a)){i.vertexLength+4>oa.MAX_VERTEX_ARRAY_LENGTH&&(i=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));const t=s.sub(a)._perp()._unit(),n=a.dist(s);r+n>32768&&(r=0),Il(this.layoutVertexArray,s.x,s.y,t.x,t.y,0,0,r),Il(this.layoutVertexArray,s.x,s.y,t.x,t.y,0,1,r),e.x+=2*s.x,e.y+=2*s.y,e.vertexCount+=2,r+=n,Il(this.layoutVertexArray,a.x,a.y,t.x,t.y,0,0,r),Il(this.layoutVertexArray,a.x,a.y,t.x,t.y,0,1,r),e.x+=2*a.x,e.y+=2*a.y,e.vertexCount+=2;const o=i.vertexLength;this.indexArray.emplaceBack(o,o+2,o+1),this.indexArray.emplaceBack(o+1,o+2,o+3),i.vertexLength+=4,i.primitiveLength+=2;}}}}if(i.vertexLength+n>oa.MAX_VERTEX_ARRAY_LENGTH&&(i=this.segments.prepareSegment(n,this.layoutVertexArray,this.indexArray)),"Polygon"!==kl[t.type])continue;const s=[],a=[],o=i.vertexLength;for(const t of r)if(0!==t.length){t!==r[0]&&a.push(s.length/2);for(let r=0;r$a)||t.y===e.y&&(t.y<0||t.y>$a)}function Cl(t){return t.every((t=>t.x<0))||t.every((t=>t.x>$a))||t.every((t=>t.y<0))||t.every((t=>t.y>$a))}let Bl;wi("FillExtrusionBucket",zl,{omit:["layers","features"]});var Vl={get paint(){return Bl=Bl||new rs({"fill-extrusion-opacity":new Ji(G["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new Wi(G["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new Ji(G["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new Ji(G["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new Qi(G["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new Wi(G["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new Wi(G["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new Ji(G["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])})}};class El extends is{constructor(t){super(t,Vl);}createBucket(t){return new zl(t)}queryRadius(){return eo(this.paint.get("fill-extrusion-translate"))}is3D(){return !0}queryIntersectsFeature(t,e,r,n,i,a,o,l){const u=ro(t,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),a.angle,o),c=this.paint.get("fill-extrusion-height").evaluate(e,r),h=this.paint.get("fill-extrusion-base").evaluate(e,r),p=function(t,e,r,n){const i=[];for(const r of t){const t=[r.x,r.y,0,1];po(t,t,e),i.push(new s(t[0]/t[3],t[1]/t[3]));}return i}(u,l),f=function(t,e,r,n){const i=[],a=[],o=n[8]*e,l=n[9]*e,u=n[10]*e,c=n[11]*e,h=n[8]*r,p=n[9]*r,f=n[10]*r,d=n[11]*r;for(const e of t){const t=[],r=[];for(const i of e){const e=i.x,a=i.y,y=n[0]*e+n[4]*a+n[12],m=n[1]*e+n[5]*a+n[13],g=n[2]*e+n[6]*a+n[14],x=n[3]*e+n[7]*a+n[15],v=g+u,b=x+c,w=y+h,_=m+p,A=g+f,S=x+d,k=new s((y+o)/b,(m+l)/b);k.z=v/b,t.push(k);const M=new s(w/S,_/S);M.z=A/S,r.push(M);}i.push(t),a.push(r);}return [i,a]}(n,h,c,l);return function(t,e,r){let n=1/0;Za(r,e)&&(n=Tl(r,e[0]));for(let i=0;it.id)),this.index=t.index,this.hasPattern=!1,this.patternFeatures=[],this.lineClipsArray=[],this.gradients={},this.layers.forEach((t=>{this.gradients[t.id]={};})),this.layoutVertexArray=new Hs,this.layoutVertexArray2=new Ys,this.indexArray=new na,this.programConfigurations=new Ea(t.layers,t.zoom),this.segments=new oa,this.maxLineLength=0,this.stateDependentLayerIds=this.layers.filter((t=>t.isStateDependent())).map((t=>t.id));}populate(t,e,r){this.hasPattern=nl("line",this.layers,e);const n=this.layers[0].layout.get("line-sort-key"),i=!n.isConstant(),s=[];for(const{feature:e,id:a,index:o,sourceLayerIndex:l}of t){const t=this.layers[0]._featureFilter.needGeometry,u=ja(e,t);if(!this.layers[0]._featureFilter.filter(new Ui(this.zoom),u,r))continue;const c=i?n.evaluate(u,{},r):void 0,h={id:a,properties:e.properties,type:e.type,sourceLayerIndex:l,index:o,geometry:t?u.geometry:Oa(e),patterns:{},sortKey:c};s.push(h);}i&&s.sort(((t,e)=>t.sortKey-e.sortKey));for(const n of s){const{geometry:i,index:s,sourceLayerIndex:a}=n;if(this.hasPattern){const t=il("line",this.layers,n,this.zoom,e);this.patternFeatures.push(t);}else this.addFeature(n,i,s,r,{});e.featureIndex.insert(t[s].feature,i,s,a,this.index);}}update(t,e,r){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,r);}addFeatures(t,e,r){for(const t of this.patternFeatures)this.addFeature(t,t.geometry,t.index,e,r);}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return !this.uploaded||this.programConfigurations.needsUpload}upload(t){this.uploaded||(0!==this.layoutVertexArray2.length&&(this.layoutVertexBuffer2=t.createVertexBuffer(this.layoutVertexArray2,Ol)),this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,Ll),this.indexBuffer=t.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(t),this.uploaded=!0;}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy());}lineFeatureClips(t){if(t.properties&&Object.prototype.hasOwnProperty.call(t.properties,"mapbox_clip_start")&&Object.prototype.hasOwnProperty.call(t.properties,"mapbox_clip_end"))return {start:+t.properties.mapbox_clip_start,end:+t.properties.mapbox_clip_end}}addFeature(t,e,r,n,i){const s=this.layers[0].layout,a=s.get("line-join").evaluate(t,{}),o=s.get("line-cap"),l=s.get("line-miter-limit"),u=s.get("line-round-limit");this.lineClips=this.lineFeatureClips(t);for(const r of e)this.addLine(r,t,a,o,l,u);this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,r,i,n);}addLine(t,e,r,n,i,s){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,this.lineClips){this.lineClipsArray.push(this.lineClips);for(let e=0;e=2&&t[o-1].equals(t[o-2]);)o--;let l=0;for(;l0;if(w&&e>l){const t=h.dist(p);if(t>2*u){const e=h.sub(h.sub(p)._mult(u/t)._round());this.updateDistance(p,e),this.addCurrentVertex(e,d,0,0,c),p=e;}}const A=p&&f;let S=A?r:a?"butt":n;if(A&&"round"===S&&(vi&&(S="bevel"),"bevel"===S&&(v>2&&(S="flipbevel"),v100)m=y.mult(-1);else {const t=v*d.add(y).mag()/d.sub(y).mag();m._perp()._mult(t*(_?-1:1));}this.addCurrentVertex(h,m,0,0,c),this.addCurrentVertex(h,m.mult(-1),0,0,c);}else if("bevel"===S||"fakeround"===S){const t=-Math.sqrt(v*v-1),e=_?t:0,r=_?0:t;if(p&&this.addCurrentVertex(h,d,e,r,c),"fakeround"===S){const t=Math.round(180*b/Math.PI/20);for(let e=1;e2*u){const e=h.add(f.sub(h)._mult(u/t)._round());this.updateDistance(h,e),this.addCurrentVertex(e,y,0,0,c),h=e;}}}}addCurrentVertex(t,e,r,n,i,s=!1){const a=e.y*n-e.x,o=-e.y-e.x*n;this.addHalfVertex(t,e.x+e.y*r,e.y-e.x*r,s,!1,r,i),this.addHalfVertex(t,a,o,s,!0,-n,i),this.distance>Ul/2&&0===this.totalDistance&&(this.distance=0,this.updateScaledDistance(),this.addCurrentVertex(t,e,r,n,i,s));}addHalfVertex({x:t,y:e},r,n,i,s,a,o){const l=.5*(this.lineClips?this.scaledDistance*(Ul-1):this.scaledDistance);this.layoutVertexArray.emplaceBack((t<<1)+(i?1:0),(e<<1)+(s?1:0),Math.round(63*r)+128,Math.round(63*n)+128,1+(0===a?0:a<0?-1:1)|(63&l)<<2,l>>6),this.lineClips&&this.layoutVertexArray2.emplaceBack((this.scaledDistance-this.lineClips.start)/(this.lineClips.end-this.lineClips.start),this.lineClipsArray.length);const u=o.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,u),o.primitiveLength++),s?this.e2=u:this.e1=u;}updateScaledDistance(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance;}updateDistance(t,e){this.distance+=t.dist(e),this.updateScaledDistance();}}let Nl,Zl;wi("LineBucket",ql,{omit:["layers","patternFeatures"]});var Gl={get paint(){return Zl=Zl||new rs({"line-opacity":new Wi(G.paint_line["line-opacity"]),"line-color":new Wi(G.paint_line["line-color"]),"line-translate":new Ji(G.paint_line["line-translate"]),"line-translate-anchor":new Ji(G.paint_line["line-translate-anchor"]),"line-width":new Wi(G.paint_line["line-width"]),"line-gap-width":new Wi(G.paint_line["line-gap-width"]),"line-offset":new Wi(G.paint_line["line-offset"]),"line-blur":new Wi(G.paint_line["line-blur"]),"line-dasharray":new ts(G.paint_line["line-dasharray"]),"line-pattern":new Qi(G.paint_line["line-pattern"]),"line-gradient":new es(G.paint_line["line-gradient"])})},get layout(){return Nl=Nl||new rs({"line-cap":new Ji(G.layout_line["line-cap"]),"line-join":new Wi(G.layout_line["line-join"]),"line-miter-limit":new Ji(G.layout_line["line-miter-limit"]),"line-round-limit":new Ji(G.layout_line["line-round-limit"]),"line-sort-key":new Wi(G.layout_line["line-sort-key"])})}};class Kl extends Wi{possiblyEvaluate(t,e){return e=new Ui(Math.floor(e.zoom),{now:e.now,fadeDuration:e.fadeDuration,zoomHistory:e.zoomHistory,transition:e.transition}),super.possiblyEvaluate(t,e)}evaluate(t,e,r,n){return e=g({},e,{zoom:Math.floor(e.zoom)}),super.evaluate(t,e,r,n)}}let Xl;class Hl extends is{constructor(t){super(t,Gl),this.gradientVersion=0,Xl||(Xl=new Kl(Gl.paint.properties["line-width"].specification),Xl.useIntegerZoom=!0);}_handleSpecialPaintPropertyUpdate(t){if("line-gradient"===t){const t=this.gradientExpression();this.stepInterpolant=!!function(t){return void 0!==t._styleExpression}(t)&&t._styleExpression.expression instanceof Ae,this.gradientVersion=(this.gradientVersion+1)%Number.MAX_SAFE_INTEGER;}}gradientExpression(){return this._transitionablePaint._values["line-gradient"].value.expression}recalculate(t,e){super.recalculate(t,e),this.paint._values["line-floorwidth"]=Xl.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,t);}createBucket(t){return new ql(t)}queryRadius(t){const e=t,r=Yl(to("line-width",this,e),to("line-gap-width",this,e)),n=to("line-offset",this,e);return r/2+Math.abs(n)+eo(this.paint.get("line-translate"))}queryIntersectsFeature(t,e,r,n,i,a,o){const l=ro(t,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),a.angle,o),u=o/2*Yl(this.paint.get("line-width").evaluate(e,r),this.paint.get("line-gap-width").evaluate(e,r)),c=this.paint.get("line-offset").evaluate(e,r);return c&&(n=function(t,e){const r=[];for(let n=0;n=3)for(let e=0;e0?e+2*t:t}const Jl=ls([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint16"},{name:"a_pixeloffset",components:4,type:"Int16"}],4),Wl=ls([{name:"a_projected_pos",components:3,type:"Float32"}],4);ls([{name:"a_fade_opacity",components:1,type:"Uint32"}],4);const Ql=ls([{name:"a_placed",components:2,type:"Uint8"},{name:"a_shift",components:2,type:"Float32"},{name:"a_box_real",components:2,type:"Int16"}]);ls([{type:"Int16",name:"anchorPointX"},{type:"Int16",name:"anchorPointY"},{type:"Int16",name:"x1"},{type:"Int16",name:"y1"},{type:"Int16",name:"x2"},{type:"Int16",name:"y2"},{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"}]);const tu=ls([{name:"a_pos",components:2,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"}],4),eu=ls([{name:"a_pos",components:2,type:"Float32"},{name:"a_radius",components:1,type:"Float32"},{name:"a_flags",components:2,type:"Int16"}],4);function ru(t,e,r){return t.sections.forEach((t=>{t.text=function(t,e,r){const n=e.layout.get("text-transform").evaluate(r,{});return "uppercase"===n?t=t.toLocaleUpperCase():"lowercase"===n&&(t=t.toLocaleLowerCase()),Ri.applyArabicShaping&&(t=Ri.applyArabicShaping(t)),t}(t.text,e,r);})),t}ls([{name:"triangle",components:3,type:"Uint16"}]),ls([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Uint16",name:"glyphStartIndex"},{type:"Uint16",name:"numGlyphs"},{type:"Uint32",name:"vertexStartIndex"},{type:"Uint32",name:"lineStartIndex"},{type:"Uint32",name:"lineLength"},{type:"Uint16",name:"segment"},{type:"Uint16",name:"lowerSize"},{type:"Uint16",name:"upperSize"},{type:"Float32",name:"lineOffsetX"},{type:"Float32",name:"lineOffsetY"},{type:"Uint8",name:"writingMode"},{type:"Uint8",name:"placedOrientation"},{type:"Uint8",name:"hidden"},{type:"Uint32",name:"crossTileID"},{type:"Int16",name:"associatedIconIndex"}]),ls([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Int16",name:"rightJustifiedTextSymbolIndex"},{type:"Int16",name:"centerJustifiedTextSymbolIndex"},{type:"Int16",name:"leftJustifiedTextSymbolIndex"},{type:"Int16",name:"verticalPlacedTextSymbolIndex"},{type:"Int16",name:"placedIconSymbolIndex"},{type:"Int16",name:"verticalPlacedIconSymbolIndex"},{type:"Uint16",name:"key"},{type:"Uint16",name:"textBoxStartIndex"},{type:"Uint16",name:"textBoxEndIndex"},{type:"Uint16",name:"verticalTextBoxStartIndex"},{type:"Uint16",name:"verticalTextBoxEndIndex"},{type:"Uint16",name:"iconBoxStartIndex"},{type:"Uint16",name:"iconBoxEndIndex"},{type:"Uint16",name:"verticalIconBoxStartIndex"},{type:"Uint16",name:"verticalIconBoxEndIndex"},{type:"Uint16",name:"featureIndex"},{type:"Uint16",name:"numHorizontalGlyphVertices"},{type:"Uint16",name:"numVerticalGlyphVertices"},{type:"Uint16",name:"numIconVertices"},{type:"Uint16",name:"numVerticalIconVertices"},{type:"Uint16",name:"useRuntimeCollisionCircles"},{type:"Uint32",name:"crossTileID"},{type:"Float32",name:"textBoxScale"},{type:"Float32",name:"collisionCircleDiameter"},{type:"Uint16",name:"textAnchorOffsetStartIndex"},{type:"Uint16",name:"textAnchorOffsetEndIndex"}]),ls([{type:"Float32",name:"offsetX"}]),ls([{type:"Int16",name:"x"},{type:"Int16",name:"y"},{type:"Int16",name:"tileUnitDistanceFromAnchor"}]),ls([{type:"Uint16",name:"textAnchor"},{type:"Float32",components:2,name:"textOffset"}]);const nu={"!":"︕","#":"#",$:"$","%":"%","&":"&","(":"︵",")":"︶","*":"*","+":"+",",":"︐","-":"︲",".":"・","/":"/",":":"︓",";":"︔","<":"︿","=":"=",">":"﹀","?":"︖","@":"@","[":"﹇","\\":"\","]":"﹈","^":"^",_:"︳","`":"`","{":"︷","|":"―","}":"︸","~":"~","¢":"¢","£":"£","¥":"¥","¦":"¦","¬":"¬","¯":" ̄","–":"︲","—":"︱","‘":"﹃","’":"﹄","“":"﹁","”":"﹂","…":"︙","‧":"・","₩":"₩","、":"︑","。":"︒","〈":"︿","〉":"﹀","《":"︽","》":"︾","「":"﹁","」":"﹂","『":"﹃","』":"﹄","【":"︻","】":"︼","〔":"︹","〕":"︺","〖":"︗","〗":"︘","!":"︕","(":"︵",")":"︶",",":"︐","-":"︲",".":"・",":":"︓",";":"︔","<":"︿",">":"﹀","?":"︖","[":"﹇","]":"﹈","_":"︳","{":"︷","|":"―","}":"︸","⦅":"︵","⦆":"︶","。":"︒","「":"﹁","」":"﹂"};var iu=24,su=lu,au=function(t,e,r,n,i){var s,a,o=8*i-n-1,l=(1<>1,c=-7,h=r?i-1:0,p=r?-1:1,f=t[e+h];for(h+=p,s=f&(1<<-c)-1,f>>=-c,c+=o;c>0;s=256*s+t[e+h],h+=p,c-=8);for(a=s&(1<<-c)-1,s>>=-c,c+=n;c>0;a=256*a+t[e+h],h+=p,c-=8);if(0===s)s=1-u;else {if(s===l)return a?NaN:1/0*(f?-1:1);a+=Math.pow(2,n),s-=u;}return (f?-1:1)*a*Math.pow(2,s-n)},ou=function(t,e,r,n,i,s){var a,o,l,u=8*s-i-1,c=(1<>1,p=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,f=n?0:s-1,d=n?1:-1,y=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(o=isNaN(e)?1:0,a=c):(a=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-a))<1&&(a--,l*=2),(e+=a+h>=1?p/l:p*Math.pow(2,1-h))*l>=2&&(a++,l/=2),a+h>=c?(o=0,a=c):a+h>=1?(o=(e*l-1)*Math.pow(2,i),a+=h):(o=e*Math.pow(2,h-1)*Math.pow(2,i),a=0));i>=8;t[r+f]=255&o,f+=d,o/=256,i-=8);for(a=a<0;t[r+f]=255&a,f+=d,a/=256,u-=8);t[r+f-d]|=128*y;};function lu(t){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(t)?t:new Uint8Array(t||0),this.pos=0,this.type=0,this.length=this.buf.length;}lu.Varint=0,lu.Fixed64=1,lu.Bytes=2,lu.Fixed32=5;var uu=4294967296,cu=1/uu,hu="undefined"==typeof TextDecoder?null:new TextDecoder("utf-8");function pu(t){return t.type===lu.Bytes?t.readVarint()+t.pos:t.pos+1}function fu(t,e,r){return r?4294967296*e+(t>>>0):4294967296*(e>>>0)+(t>>>0)}function du(t,e,r){var n=e<=16383?1:e<=2097151?2:e<=268435455?3:Math.floor(Math.log(e)/(7*Math.LN2));r.realloc(n);for(var i=r.pos-1;i>=t;i--)r.buf[i+n]=r.buf[i];}function yu(t,e){for(var r=0;r>>8,t[r+2]=e>>>16,t[r+3]=e>>>24;}function Mu(t,e){return (t[e]|t[e+1]<<8|t[e+2]<<16)+(t[e+3]<<24)}lu.prototype={destroy:function(){this.buf=null;},readFields:function(t,e,r){for(r=r||this.length;this.pos>3,s=this.pos;this.type=7&n,t(i,e,this),this.pos===s&&this.skip(n);}return e},readMessage:function(t,e){return this.readFields(t,e,this.readVarint()+this.pos)},readFixed32:function(){var t=Su(this.buf,this.pos);return this.pos+=4,t},readSFixed32:function(){var t=Mu(this.buf,this.pos);return this.pos+=4,t},readFixed64:function(){var t=Su(this.buf,this.pos)+Su(this.buf,this.pos+4)*uu;return this.pos+=8,t},readSFixed64:function(){var t=Su(this.buf,this.pos)+Mu(this.buf,this.pos+4)*uu;return this.pos+=8,t},readFloat:function(){var t=au(this.buf,this.pos,!0,23,4);return this.pos+=4,t},readDouble:function(){var t=au(this.buf,this.pos,!0,52,8);return this.pos+=8,t},readVarint:function(t){var e,r,n=this.buf;return e=127&(r=n[this.pos++]),r<128?e:(e|=(127&(r=n[this.pos++]))<<7,r<128?e:(e|=(127&(r=n[this.pos++]))<<14,r<128?e:(e|=(127&(r=n[this.pos++]))<<21,r<128?e:function(t,e,r){var n,i,s=r.buf;if(n=(112&(i=s[r.pos++]))>>4,i<128)return fu(t,n,e);if(n|=(127&(i=s[r.pos++]))<<3,i<128)return fu(t,n,e);if(n|=(127&(i=s[r.pos++]))<<10,i<128)return fu(t,n,e);if(n|=(127&(i=s[r.pos++]))<<17,i<128)return fu(t,n,e);if(n|=(127&(i=s[r.pos++]))<<24,i<128)return fu(t,n,e);if(n|=(1&(i=s[r.pos++]))<<31,i<128)return fu(t,n,e);throw new Error("Expected varint not more than 10 bytes")}(e|=(15&(r=n[this.pos]))<<28,t,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var t=this.readVarint();return t%2==1?(t+1)/-2:t/2},readBoolean:function(){return Boolean(this.readVarint())},readString:function(){var t=this.readVarint()+this.pos,e=this.pos;return this.pos=t,t-e>=12&&hu?function(t,e,r){return hu.decode(t.subarray(e,r))}(this.buf,e,t):function(t,e,r){for(var n="",i=e;i239?4:l>223?3:l>191?2:1;if(i+c>r)break;1===c?l<128&&(u=l):2===c?128==(192&(s=t[i+1]))&&(u=(31&l)<<6|63&s)<=127&&(u=null):3===c?(a=t[i+2],128==(192&(s=t[i+1]))&&128==(192&a)&&((u=(15&l)<<12|(63&s)<<6|63&a)<=2047||u>=55296&&u<=57343)&&(u=null)):4===c&&(a=t[i+2],o=t[i+3],128==(192&(s=t[i+1]))&&128==(192&a)&&128==(192&o)&&((u=(15&l)<<18|(63&s)<<12|(63&a)<<6|63&o)<=65535||u>=1114112)&&(u=null)),null===u?(u=65533,c=1):u>65535&&(u-=65536,n+=String.fromCharCode(u>>>10&1023|55296),u=56320|1023&u),n+=String.fromCharCode(u),i+=c;}return n}(this.buf,e,t)},readBytes:function(){var t=this.readVarint()+this.pos,e=this.buf.subarray(this.pos,t);return this.pos=t,e},readPackedVarint:function(t,e){if(this.type!==lu.Bytes)return t.push(this.readVarint(e));var r=pu(this);for(t=t||[];this.pos127;);else if(e===lu.Bytes)this.pos=this.readVarint()+this.pos;else if(e===lu.Fixed32)this.pos+=4;else {if(e!==lu.Fixed64)throw new Error("Unimplemented type: "+e);this.pos+=8;}},writeTag:function(t,e){this.writeVarint(t<<3|e);},realloc:function(t){for(var e=this.length||16;e268435455||t<0?function(t,e){var r,n;if(t>=0?(r=t%4294967296|0,n=t/4294967296|0):(n=~(-t/4294967296),4294967295^(r=~(-t%4294967296))?r=r+1|0:(r=0,n=n+1|0)),t>=0x10000000000000000||t<-0x10000000000000000)throw new Error("Given varint doesn't fit into 10 bytes");e.realloc(10),function(t,e,r){r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,r.buf[r.pos]=127&(t>>>=7);}(r,0,e),function(t,e){var r=(7&t)<<4;e.buf[e.pos++]|=r|((t>>>=3)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t)))));}(n,e);}(t,this):(this.realloc(4),this.buf[this.pos++]=127&t|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=t>>>7&127))));},writeSVarint:function(t){this.writeVarint(t<0?2*-t-1:2*t);},writeBoolean:function(t){this.writeVarint(Boolean(t));},writeString:function(t){t=String(t),this.realloc(4*t.length),this.pos++;var e=this.pos;this.pos=function(t,e,r){for(var n,i,s=0;s55295&&n<57344){if(!i){n>56319||s+1===e.length?(t[r++]=239,t[r++]=191,t[r++]=189):i=n;continue}if(n<56320){t[r++]=239,t[r++]=191,t[r++]=189,i=n;continue}n=i-55296<<10|n-56320|65536,i=null;}else i&&(t[r++]=239,t[r++]=191,t[r++]=189,i=null);n<128?t[r++]=n:(n<2048?t[r++]=n>>6|192:(n<65536?t[r++]=n>>12|224:(t[r++]=n>>18|240,t[r++]=n>>12&63|128),t[r++]=n>>6&63|128),t[r++]=63&n|128);}return r}(this.buf,t,this.pos);var r=this.pos-e;r>=128&&du(e,r,this),this.pos=e-1,this.writeVarint(r),this.pos+=r;},writeFloat:function(t){this.realloc(4),ou(this.buf,t,this.pos,!0,23,4),this.pos+=4;},writeDouble:function(t){this.realloc(8),ou(this.buf,t,this.pos,!0,52,8),this.pos+=8;},writeBytes:function(t){var e=t.length;this.writeVarint(e),this.realloc(e);for(var r=0;r=128&&du(r,n,this),this.pos=r-1,this.writeVarint(n),this.pos+=n;},writeMessage:function(t,e,r){this.writeTag(t,lu.Bytes),this.writeRawMessage(e,r);},writePackedVarint:function(t,e){e.length&&this.writeMessage(t,yu,e);},writePackedSVarint:function(t,e){e.length&&this.writeMessage(t,mu,e);},writePackedBoolean:function(t,e){e.length&&this.writeMessage(t,vu,e);},writePackedFloat:function(t,e){e.length&&this.writeMessage(t,gu,e);},writePackedDouble:function(t,e){e.length&&this.writeMessage(t,xu,e);},writePackedFixed32:function(t,e){e.length&&this.writeMessage(t,bu,e);},writePackedSFixed32:function(t,e){e.length&&this.writeMessage(t,wu,e);},writePackedFixed64:function(t,e){e.length&&this.writeMessage(t,_u,e);},writePackedSFixed64:function(t,e){e.length&&this.writeMessage(t,Au,e);},writeBytesField:function(t,e){this.writeTag(t,lu.Bytes),this.writeBytes(e);},writeFixed32Field:function(t,e){this.writeTag(t,lu.Fixed32),this.writeFixed32(e);},writeSFixed32Field:function(t,e){this.writeTag(t,lu.Fixed32),this.writeSFixed32(e);},writeFixed64Field:function(t,e){this.writeTag(t,lu.Fixed64),this.writeFixed64(e);},writeSFixed64Field:function(t,e){this.writeTag(t,lu.Fixed64),this.writeSFixed64(e);},writeVarintField:function(t,e){this.writeTag(t,lu.Varint),this.writeVarint(e);},writeSVarintField:function(t,e){this.writeTag(t,lu.Varint),this.writeSVarint(e);},writeStringField:function(t,e){this.writeTag(t,lu.Bytes),this.writeString(e);},writeFloatField:function(t,e){this.writeTag(t,lu.Fixed32),this.writeFloat(e);},writeDoubleField:function(t,e){this.writeTag(t,lu.Fixed64),this.writeDouble(e);},writeBooleanField:function(t,e){this.writeVarintField(t,Boolean(e));}};var Iu=r(su);const zu=3;function Pu(t,e,r){1===t&&r.readMessage(Cu,e);}function Cu(t,e,r){if(3===t){const{id:t,bitmap:n,width:i,height:s,left:a,top:o,advance:l}=r.readMessage(Bu,{});e.push({id:t,bitmap:new _o({width:i+2*zu,height:s+2*zu},n),metrics:{width:i,height:s,left:a,top:o,advance:l}});}}function Bu(t,e,r){1===t?e.id=r.readVarint():2===t?e.bitmap=r.readBytes():3===t?e.width=r.readVarint():4===t?e.height=r.readVarint():5===t?e.left=r.readSVarint():6===t?e.top=r.readSVarint():7===t&&(e.advance=r.readVarint());}const Vu=zu;function Eu(t){let e=0,r=0;for(const n of t)e+=n.w*n.h,r=Math.max(r,n.w);t.sort(((t,e)=>e.h-t.h));const n=[{x:0,y:0,w:Math.max(Math.ceil(Math.sqrt(e/.95)),r),h:1/0}];let i=0,s=0;for(const e of t)for(let t=n.length-1;t>=0;t--){const r=n[t];if(!(e.w>r.w||e.h>r.h)){if(e.x=r.x,e.y=r.y,s=Math.max(s,e.y+e.h),i=Math.max(i,e.x+e.w),e.w===r.w&&e.h===r.h){const e=n.pop();t=0&&r>=t&&Uu[this.text.charCodeAt(r)];r--)e--;this.text=this.text.substring(t,e),this.sectionIndex=this.sectionIndex.slice(t,e);}substring(t,e){const r=new ju;return r.text=this.text.substring(t,e),r.sectionIndex=this.sectionIndex.slice(t,e),r.sections=this.sections,r}toString(){return this.text}getMaxScale(){return this.sectionIndex.reduce(((t,e)=>Math.max(t,this.sections[e].scale)),0)}addTextSection(t,e){this.text+=t.text,this.sections.push(Ou.forText(t.scale,t.fontStack||e));const r=this.sections.length-1;for(let e=0;e=63743?null:++this.imageSectionID:(this.imageSectionID=57344,this.imageSectionID)}}function Ru(e,r,n,i,s,a,o,l,u,c,h,p,f,d,y){const m=ju.fromFeature(e,s);let g;p===t.ah.vertical&&m.verticalizePunctuation();const{processBidirectionalText:x,processStyledBidirectionalText:v}=Ri;if(x&&1===m.sections.length){g=[];const t=x(m.toString(),Yu(m,c,a,r,i,d));for(const e of t){const t=new ju;t.text=e,t.sections=m.sections;for(let r=0;r0&&n>_&&(_=n);}else {const t=n[y.fontStack],e=t&&t[g];if(e&&e.rect)A=e.rect,b=e.metrics;else {const t=r[y.fontStack],e=t&&t[g];if(!e)continue;b=e.metrics;}x=(s-y.scale)*iu;}M?(e.verticalizable=!0,w.push({glyph:g,imageName:S,x:f,y:d+x,vertical:M,scale:y.scale,fontStack:y.fontStack,sectionIndex:m,metrics:b,rect:A}),f+=k*y.scale+c):(w.push({glyph:g,imageName:S,x:f,y:d+x,vertical:M,scale:y.scale,fontStack:y.fontStack,sectionIndex:m,metrics:b,rect:A}),f+=b.advance*y.scale+c);}0!==w.length&&(y=Math.max(f-c,y),Wu(w,0,w.length-1,g,_)),f=0;const A=a*s+_;b.lineOffset=Math.max(_,l),d+=A,m=Math.max(A,m),++x;}var v;const b=d-Du,{horizontalAlign:w,verticalAlign:_}=Ju(o);((function(t,e,r,n,i,s,a,o,l){const u=(e-r)*i;let c=0;c=s!==a?-o*n-Du:(-n*l+.5)*a;for(const e of t)for(const t of e.positionedGlyphs)t.x+=u,t.y+=c;}))(e.positionedLines,g,w,_,y,m,a,b,s.length),e.top+=-_*b,e.bottom=e.top+b,e.left+=-w*y,e.right=e.left+y;}(w,r,n,i,g,o,l,u,p,c,f,y),!function(t){for(const e of t)if(0!==e.positionedGlyphs.length)return !1;return !0}(b)&&w}const Uu={9:!0,10:!0,11:!0,12:!0,13:!0,32:!0},qu={10:!0,32:!0,38:!0,41:!0,43:!0,45:!0,47:!0,173:!0,183:!0,8203:!0,8208:!0,8211:!0,8231:!0},Nu={40:!0};function Zu(t,e,r,n,i,s){if(e.imageName){const t=n[e.imageName];return t?t.displaySize[0]*e.scale*iu/s+i:0}{const n=r[e.fontStack],s=n&&n[t];return s?s.metrics.advance*e.scale+i:0}}function Gu(t,e,r,n){const i=Math.pow(t-e,2);return n?t=0;let u=0;for(let r=0;ru){const t=Math.ceil(s/u);i*=t/a,a=t;}return {x1:n,y1:i,x2:n+s,y2:i+a}}function ec(t,e,r,n,i,s){const a=t.image;let o;if(a.content){const t=a.content,e=a.pixelRatio||1;o=[t[0]/e,t[1]/e,a.displaySize[0]-t[2]/e,a.displaySize[1]-t[3]/e];}const l=e.left*s,u=e.right*s;let c,h,p,f;"width"===r||"both"===r?(f=i[0]+l-n[3],h=i[0]+u+n[1]):(f=i[0]+(l+u-a.displaySize[0])/2,h=f+a.displaySize[0]);const d=e.top*s,y=e.bottom*s;return "height"===r||"both"===r?(c=i[1]+d-n[0],p=i[1]+y+n[2]):(c=i[1]+(d+y-a.displaySize[1])/2,p=c+a.displaySize[1]),{image:a,top:c,right:h,bottom:p,left:f,collisionPadding:o}}const rc=255,nc=128,ic=rc*nc;function sc(t,e){const{expression:r}=e;if("constant"===r.kind)return {kind:"constant",layoutSize:r.evaluate(new Ui(t+1))};if("source"===r.kind)return {kind:"source"};{const{zoomStops:e,interpolationType:n}=r;let i=0;for(;it.id)),this.index=e.index,this.pixelRatio=e.pixelRatio,this.sourceLayerIndex=e.sourceLayerIndex,this.hasPattern=!1,this.hasRTLText=!1,this.sortKeyRanges=[],this.collisionCircleArray=[],this.placementInvProjMatrix=lo([]),this.placementViewportMatrix=lo([]);const r=this.layers[0]._unevaluatedLayout._values;this.textSizeData=sc(this.zoom,r["text-size"]),this.iconSizeData=sc(this.zoom,r["icon-size"]);const n=this.layers[0].layout,i=n.get("symbol-sort-key"),s=n.get("symbol-z-order");this.canOverlap="never"!==ac(n,"text-overlap","text-allow-overlap")||"never"!==ac(n,"icon-overlap","icon-allow-overlap")||n.get("text-ignore-placement")||n.get("icon-ignore-placement"),this.sortFeaturesByKey="viewport-y"!==s&&!i.isConstant(),this.sortFeaturesByY=("viewport-y"===s||"auto"===s&&!this.sortFeaturesByKey)&&this.canOverlap,"point"===n.get("symbol-placement")&&(this.writingModes=n.get("text-writing-mode").map((e=>t.ah[e]))),this.stateDependentLayerIds=this.layers.filter((t=>t.isStateDependent())).map((t=>t.id)),this.sourceID=e.sourceID;}createArrays(){this.text=new pc(new Ea(this.layers,this.zoom,(t=>/^text/.test(t)))),this.icon=new pc(new Ea(this.layers,this.zoom,(t=>/^icon/.test(t)))),this.glyphOffsetArray=new Os,this.lineVertexArray=new js,this.symbolInstances=new Ds,this.textAnchorOffsets=new Us;}calculateGlyphDependencies(t,e,r,n,i){for(let s=0;s0)&&("constant"!==a.value.kind||a.value.value.length>0),c="constant"!==l.value.kind||!!l.value.value||Object.keys(l.parameters).length>0,h=s.get("symbol-sort-key");if(this.features=[],!u&&!c)return;const p=r.iconDependencies,f=r.glyphDependencies,d=r.availableImages,y=new Ui(this.zoom);for(const{feature:r,id:o,index:l,sourceLayerIndex:m}of e){const e=i._featureFilter.needGeometry,g=ja(r,e);if(!i._featureFilter.filter(y,g,n))continue;let x,v;if(e||(g.geometry=Oa(r)),u){const t=i.getValueAndResolveTokens("text-field",g,n,d),e=Yt.factory(t),r=this.hasRTLText=this.hasRTLText||hc(e);(!r||"unavailable"===Ri.getRTLTextPluginStatus()||r&&Ri.isParsed())&&(x=ru(e,i,g));}if(c){const t=i.getValueAndResolveTokens("icon-image",g,n,d);v=t instanceof te?t:te.fromString(t);}if(!x&&!v)continue;const b=this.sortFeaturesByKey?h.evaluate(g,{},n):void 0;if(this.features.push({id:o,text:x,icon:v,index:l,sourceLayerIndex:m,geometry:g.geometry,properties:r.properties,type:oc[r.type],sortKey:b}),v&&(p[v.name]=!0),x){const e=a.evaluate(g,{},n).join(","),r="viewport"!==s.get("text-rotation-alignment")&&"point"!==s.get("symbol-placement");this.allowVerticalPlacement=this.writingModes&&this.writingModes.indexOf(t.ah.vertical)>=0;for(const t of x.sections)if(t.image)p[t.image.name]=!0;else {const n=Pi(x.toString()),i=t.fontStack||e,s=f[i]=f[i]||{};this.calculateGlyphDependencies(t.text,s,r,this.allowVerticalPlacement,n);}}}"line"===s.get("symbol-placement")&&(this.features=function(t){const e={},r={},n=[];let i=0;function s(e){n.push(t[e]),i++;}function a(t,e,i){const s=r[t];return delete r[t],r[e]=s,n[s].geometry[0].pop(),n[s].geometry[0]=n[s].geometry[0].concat(i[0]),s}function o(t,r,i){const s=e[r];return delete e[r],e[t]=s,n[s].geometry[0].shift(),n[s].geometry[0]=i[0].concat(n[s].geometry[0]),s}function l(t,e,r){const n=r?e[0][e[0].length-1]:e[0][0];return `${t}:${n.x}:${n.y}`}for(let u=0;ut.geometry))}(this.features)),this.sortFeaturesByKey&&this.features.sort(((t,e)=>t.sortKey-e.sortKey));}update(t,e,r){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(t,e,this.layers,r),this.icon.programConfigurations.updatePaintArrays(t,e,this.layers,r));}isEmpty(){return 0===this.symbolInstances.length&&!this.hasRTLText}uploadPending(){return !this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload}upload(t){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(t),this.iconCollisionBox.upload(t)),this.text.upload(t,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload),this.icon.upload(t,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload),this.uploaded=!0;}destroyDebugData(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy();}destroy(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData();}addToLineVertexArray(t,e){const r=this.lineVertexArray.length;if(void 0!==t.segment){let r=t.dist(e[t.segment+1]),n=t.dist(e[t.segment]);const i={};for(let n=t.segment+1;n=0;r--)i[r]={x:e[r].x,y:e[r].y,tileUnitDistanceFromAnchor:n},r>0&&(n+=e[r-1].dist(e[r]));for(let t=0;t0}hasIconData(){return this.icon.segments.get().length>0}hasDebugData(){return this.textCollisionBox&&this.iconCollisionBox}hasTextCollisionBoxData(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0}hasIconCollisionBoxData(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0}addIndicesForPlacedSymbol(t,e){const r=t.placedSymbolArray.get(e),n=r.vertexStartIndex+4*r.numGlyphs;for(let e=r.vertexStartIndex;en[t]-n[e]||i[e]-i[t])),s}addToSortKeyRanges(t,e){const r=this.sortKeyRanges[this.sortKeyRanges.length-1];r&&r.sortKey===e?r.symbolInstanceEnd=t+1:this.sortKeyRanges.push({sortKey:e,symbolInstanceStart:t,symbolInstanceEnd:t+1});}sortFeatures(t){if(this.sortFeaturesByY&&this.sortedAngle!==t&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(t),this.sortedAngle=t,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(const t of this.symbolInstanceIndexes){const e=this.symbolInstances.get(t);this.featureSortOrder.push(e.featureIndex),[e.rightJustifiedTextSymbolIndex,e.centerJustifiedTextSymbolIndex,e.leftJustifiedTextSymbolIndex].forEach(((t,e,r)=>{t>=0&&r.indexOf(t)===e&&this.addIndicesForPlacedSymbol(this.text,t);})),e.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,e.verticalPlacedTextSymbolIndex),e.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,e.placedIconSymbolIndex),e.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,e.verticalPlacedIconSymbolIndex);}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray);}}}let yc,mc;wi("SymbolBucket",dc,{omit:["layers","collisionBoxArray","features","compareText"]}),dc.MAX_GLYPHS=65535,dc.addDynamicAttributes=cc;var gc={get paint(){return mc=mc||new rs({"icon-opacity":new Wi(G.paint_symbol["icon-opacity"]),"icon-color":new Wi(G.paint_symbol["icon-color"]),"icon-halo-color":new Wi(G.paint_symbol["icon-halo-color"]),"icon-halo-width":new Wi(G.paint_symbol["icon-halo-width"]),"icon-halo-blur":new Wi(G.paint_symbol["icon-halo-blur"]),"icon-translate":new Ji(G.paint_symbol["icon-translate"]),"icon-translate-anchor":new Ji(G.paint_symbol["icon-translate-anchor"]),"text-opacity":new Wi(G.paint_symbol["text-opacity"]),"text-color":new Wi(G.paint_symbol["text-color"],{runtimeType:pt,getOverride:t=>t.textColor,hasOverride:t=>!!t.textColor}),"text-halo-color":new Wi(G.paint_symbol["text-halo-color"]),"text-halo-width":new Wi(G.paint_symbol["text-halo-width"]),"text-halo-blur":new Wi(G.paint_symbol["text-halo-blur"]),"text-translate":new Ji(G.paint_symbol["text-translate"]),"text-translate-anchor":new Ji(G.paint_symbol["text-translate-anchor"])})},get layout(){return yc=yc||new rs({"symbol-placement":new Ji(G.layout_symbol["symbol-placement"]),"symbol-spacing":new Ji(G.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new Ji(G.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new Wi(G.layout_symbol["symbol-sort-key"]),"symbol-z-order":new Ji(G.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new Ji(G.layout_symbol["icon-allow-overlap"]),"icon-overlap":new Ji(G.layout_symbol["icon-overlap"]),"icon-ignore-placement":new Ji(G.layout_symbol["icon-ignore-placement"]),"icon-optional":new Ji(G.layout_symbol["icon-optional"]),"icon-rotation-alignment":new Ji(G.layout_symbol["icon-rotation-alignment"]),"icon-size":new Wi(G.layout_symbol["icon-size"]),"icon-text-fit":new Ji(G.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new Ji(G.layout_symbol["icon-text-fit-padding"]),"icon-image":new Wi(G.layout_symbol["icon-image"]),"icon-rotate":new Wi(G.layout_symbol["icon-rotate"]),"icon-padding":new Wi(G.layout_symbol["icon-padding"]),"icon-keep-upright":new Ji(G.layout_symbol["icon-keep-upright"]),"icon-offset":new Wi(G.layout_symbol["icon-offset"]),"icon-anchor":new Wi(G.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new Ji(G.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new Ji(G.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new Ji(G.layout_symbol["text-rotation-alignment"]),"text-field":new Wi(G.layout_symbol["text-field"]),"text-font":new Wi(G.layout_symbol["text-font"]),"text-size":new Wi(G.layout_symbol["text-size"]),"text-max-width":new Wi(G.layout_symbol["text-max-width"]),"text-line-height":new Ji(G.layout_symbol["text-line-height"]),"text-letter-spacing":new Wi(G.layout_symbol["text-letter-spacing"]),"text-justify":new Wi(G.layout_symbol["text-justify"]),"text-radial-offset":new Wi(G.layout_symbol["text-radial-offset"]),"text-variable-anchor":new Ji(G.layout_symbol["text-variable-anchor"]),"text-variable-anchor-offset":new Wi(G.layout_symbol["text-variable-anchor-offset"]),"text-anchor":new Wi(G.layout_symbol["text-anchor"]),"text-max-angle":new Ji(G.layout_symbol["text-max-angle"]),"text-writing-mode":new Ji(G.layout_symbol["text-writing-mode"]),"text-rotate":new Wi(G.layout_symbol["text-rotate"]),"text-padding":new Ji(G.layout_symbol["text-padding"]),"text-keep-upright":new Ji(G.layout_symbol["text-keep-upright"]),"text-transform":new Wi(G.layout_symbol["text-transform"]),"text-offset":new Wi(G.layout_symbol["text-offset"]),"text-allow-overlap":new Ji(G.layout_symbol["text-allow-overlap"]),"text-overlap":new Ji(G.layout_symbol["text-overlap"]),"text-ignore-placement":new Ji(G.layout_symbol["text-ignore-placement"]),"text-optional":new Ji(G.layout_symbol["text-optional"])})}};class xc{constructor(t){if(void 0===t.property.overrides)throw new Error("overrides must be provided to instantiate FormatSectionOverride class");this.type=t.property.overrides?t.property.overrides.runtimeType:lt,this.defaultValue=t;}evaluate(t){if(t.formattedSection){const e=this.defaultValue.property.overrides;if(e&&e.hasOverride(t.formattedSection))return e.getOverride(t.formattedSection)}return t.feature&&t.featureState?this.defaultValue.evaluate(t.feature,t.featureState):this.defaultValue.property.specification.default}eachChild(t){this.defaultValue.isConstant()||t(this.defaultValue.value._styleExpression.expression);}outputDefined(){return !1}serialize(){return null}}wi("FormatSectionOverride",xc,{omit:["defaultValue"]});class vc extends is{constructor(t){super(t,gc);}recalculate(t,e){if(super.recalculate(t,e),"auto"===this.layout.get("icon-rotation-alignment")&&(this.layout._values["icon-rotation-alignment"]="point"!==this.layout.get("symbol-placement")?"map":"viewport"),"auto"===this.layout.get("text-rotation-alignment")&&(this.layout._values["text-rotation-alignment"]="point"!==this.layout.get("symbol-placement")?"map":"viewport"),"auto"===this.layout.get("text-pitch-alignment")&&(this.layout._values["text-pitch-alignment"]="map"===this.layout.get("text-rotation-alignment")?"map":"viewport"),"auto"===this.layout.get("icon-pitch-alignment")&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),"point"===this.layout.get("symbol-placement")){const t=this.layout.get("text-writing-mode");if(t){const e=[];for(const r of t)e.indexOf(r)<0&&e.push(r);this.layout._values["text-writing-mode"]=e;}else this.layout._values["text-writing-mode"]=["horizontal"];}this._setPaintOverrides();}getValueAndResolveTokens(t,e,r,n){const i=this.layout.get(t).evaluate(e,{},r,n),s=this._unevaluatedLayout._values[t];return s.isDataDriven()||vn(s.value)||!i?i:function(t,e){return e.replace(/{([^{}]+)}/g,((e,r)=>t&&r in t?String(t[r]):""))}(e.properties,i)}createBucket(t){return new dc(t)}queryRadius(){return 0}queryIntersectsFeature(){throw new Error("Should take a different path in FeatureIndex")}_setPaintOverrides(){for(const t of gc.paint.overridableProperties){if(!vc.hasPaintOverride(this.layout,t))continue;const e=this.paint.get(t),r=new xc(e),n=new xn(r,e.property.specification);let i=null;i="constant"===e.value.kind||"source"===e.value.kind?new wn("source",n):new _n("composite",n,e.value.zoomStops),this.paint._values[t]=new Hi(e.property,i,e.parameters);}}_handleOverridablePaintPropertyUpdate(t,e,r){return !(!this.layout||e.isDataDriven()||r.isDataDriven())&&vc.hasPaintOverride(this.layout,t)}static hasPaintOverride(t,e){const r=t.get("text-field"),n=gc.paint.properties[e];let i=!1;const s=t=>{for(const e of t)if(n.overrides&&n.overrides.hasOverride(e))return void(i=!0)};if("constant"===r.value.kind&&r.value.value instanceof Yt)s(r.value.value.sections);else if("source"===r.value.kind){const t=e=>{i||(e instanceof se&&ne(e.value)===mt?s(e.value.sections):e instanceof Ze?s(e.sections):e.eachChild(t));},e=r.value;e._styleExpression&&t(e._styleExpression.expression);}return i}}let bc;var wc={get paint(){return bc=bc||new rs({"background-color":new Ji(G.paint_background["background-color"]),"background-pattern":new ts(G.paint_background["background-pattern"]),"background-opacity":new Ji(G.paint_background["background-opacity"])})}};class _c extends is{constructor(t){super(t,wc);}}let Ac;var Sc={get paint(){return Ac=Ac||new rs({"raster-opacity":new Ji(G.paint_raster["raster-opacity"]),"raster-hue-rotate":new Ji(G.paint_raster["raster-hue-rotate"]),"raster-brightness-min":new Ji(G.paint_raster["raster-brightness-min"]),"raster-brightness-max":new Ji(G.paint_raster["raster-brightness-max"]),"raster-saturation":new Ji(G.paint_raster["raster-saturation"]),"raster-contrast":new Ji(G.paint_raster["raster-contrast"]),"raster-resampling":new Ji(G.paint_raster["raster-resampling"]),"raster-fade-duration":new Ji(G.paint_raster["raster-fade-duration"])})}};class kc extends is{constructor(t){super(t,Sc);}}class Mc extends is{constructor(t){super(t,{}),this.onAdd=t=>{this.implementation.onAdd&&this.implementation.onAdd(t,t.painter.context.gl);},this.onRemove=t=>{this.implementation.onRemove&&this.implementation.onRemove(t,t.painter.context.gl);},this.implementation=t;}is3D(){return "3d"===this.implementation.renderingMode}hasOffscreenPass(){return void 0!==this.implementation.prerender}recalculate(){}updateTransitions(){}hasTransition(){return !1}serialize(){throw new Error("Custom layers cannot be serialized")}}class Ic{constructor(t){this._methodToThrottle=t,this._triggered=!1,"undefined"!=typeof MessageChannel&&(this._channel=new MessageChannel,this._channel.port2.onmessage=()=>{this._triggered=!1,this._methodToThrottle();});}trigger(){this._triggered||(this._triggered=!0,this._channel?this._channel.port1.postMessage(!0):setTimeout((()=>{this._triggered=!1,this._methodToThrottle();}),0));}remove(){delete this._channel,this._methodToThrottle=()=>{};}}const zc=6371008.8;class Pc{constructor(t,e){if(isNaN(t)||isNaN(e))throw new Error(`Invalid LngLat object: (${t}, ${e})`);if(this.lng=+t,this.lat=+e,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")}wrap(){return new Pc(m(this.lng,-180,180),this.lat)}toArray(){return [this.lng,this.lat]}toString(){return `LngLat(${this.lng}, ${this.lat})`}distanceTo(t){const e=Math.PI/180,r=this.lat*e,n=t.lat*e,i=Math.sin(r)*Math.sin(n)+Math.cos(r)*Math.cos(n)*Math.cos((t.lng-this.lng)*e);return zc*Math.acos(Math.min(i,1))}static convert(t){if(t instanceof Pc)return t;if(Array.isArray(t)&&(2===t.length||3===t.length))return new Pc(Number(t[0]),Number(t[1]));if(!Array.isArray(t)&&"object"==typeof t&&null!==t)return new Pc(Number("lng"in t?t.lng:t.lon),Number(t.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, an object {lon: , lat: }, or an array of [, ]")}}const Cc=2*Math.PI*zc;function Bc(t){return Cc*Math.cos(t*Math.PI/180)}function Vc(t){return (180+t)/360}function Ec(t){return (180-180/Math.PI*Math.log(Math.tan(Math.PI/4+t*Math.PI/360)))/360}function Fc(t,e){return t/Bc(e)}function Tc(t){return 360/Math.PI*Math.atan(Math.exp((180-360*t)*Math.PI/180))-90}class $c{constructor(t,e,r=0){this.x=+t,this.y=+e,this.z=+r;}static fromLngLat(t,e=0){const r=Pc.convert(t);return new $c(Vc(r.lng),Ec(r.lat),Fc(e,r.lat))}toLngLat(){return new Pc(360*this.x-180,Tc(this.y))}toAltitude(){return this.z*Bc(Tc(this.y))}meterInMercatorCoordinateUnits(){return 1/Cc*(t=Tc(this.y),1/Math.cos(t*Math.PI/180));var t;}}function Lc(t,e,r){var n=2*Math.PI*6378137/256/Math.pow(2,r);return [t*n-2*Math.PI*6378137/2,e*n-2*Math.PI*6378137/2]}class Dc{constructor(t,e,r){if(!function(t,e,r){return !(t<0||t>25||r<0||r>=Math.pow(2,t)||e<0||e>=Math.pow(2,t))}(t,e,r))throw new Error(`x=${e}, y=${r}, z=${t} outside of bounds. 0<=x<${Math.pow(2,t)}, 0<=y<${Math.pow(2,t)} 0<=z<=25 `);this.z=t,this.x=e,this.y=r,this.key=Rc(0,t,t,e,r);}equals(t){return this.z===t.z&&this.x===t.x&&this.y===t.y}url(t,e,r){const n=(s=this.y,a=this.z,o=Lc(256*(i=this.x),256*(s=Math.pow(2,a)-s-1),a),l=Lc(256*(i+1),256*(s+1),a),o[0]+","+o[1]+","+l[0]+","+l[1]);var i,s,a,o,l;const u=function(t,e,r){let n,i="";for(let s=t;s>0;s--)n=1<1?"@2x":"").replace(/{quadkey}/g,u).replace(/{bbox-epsg-3857}/g,n)}isChildOf(t){const e=this.z-t.z;return e>0&&t.x===this.x>>e&&t.y===this.y>>e}getTilePoint(t){const e=Math.pow(2,this.z);return new s((t.x*e-this.x)*$a,(t.y*e-this.y)*$a)}toString(){return `${this.z}/${this.x}/${this.y}`}}class Oc{constructor(t,e){this.wrap=t,this.canonical=e,this.key=Rc(t,e.z,e.z,e.x,e.y);}}class jc{constructor(t,e,r,n,i){if(t= z; overscaledZ = ${t}; z = ${r}`);this.overscaledZ=t,this.wrap=e,this.canonical=new Dc(r,+n,+i),this.key=Rc(e,t,r,n,i);}clone(){return new jc(this.overscaledZ,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)}equals(t){return this.overscaledZ===t.overscaledZ&&this.wrap===t.wrap&&this.canonical.equals(t.canonical)}scaledTo(t){if(t>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${t}; overscaledZ = ${this.overscaledZ}`);const e=this.canonical.z-t;return t>this.canonical.z?new jc(t,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new jc(t,this.wrap,t,this.canonical.x>>e,this.canonical.y>>e)}calculateScaledKey(t,e){if(t>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${t}; overscaledZ = ${this.overscaledZ}`);const r=this.canonical.z-t;return t>this.canonical.z?Rc(this.wrap*+e,t,this.canonical.z,this.canonical.x,this.canonical.y):Rc(this.wrap*+e,t,t,this.canonical.x>>r,this.canonical.y>>r)}isChildOf(t){if(t.wrap!==this.wrap)return !1;const e=this.canonical.z-t.canonical.z;return 0===t.overscaledZ||t.overscaledZ>e&&t.canonical.y===this.canonical.y>>e}children(t){if(this.overscaledZ>=t)return [new jc(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];const e=this.canonical.z+1,r=2*this.canonical.x,n=2*this.canonical.y;return [new jc(e,this.wrap,e,r,n),new jc(e,this.wrap,e,r+1,n),new jc(e,this.wrap,e,r,n+1),new jc(e,this.wrap,e,r+1,n+1)]}isLessThan(t){return this.wrapt.wrap)&&(this.overscaledZt.overscaledZ)&&(this.canonical.xt.canonical.x)&&this.canonical.ythis.max&&(this.max=r),r=this.dim+1||e<-1||e>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return (e+1)*this.stride+(t+1)}unpack(t,e,r){return t*this.redFactor+e*this.greenFactor+r*this.blueFactor-this.baseShift}getPixels(){return new Ao({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))}backfillBorder(t,e,r){if(this.dim!==t.dim)throw new Error("dem dimension mismatch");let n=e*this.dim,i=e*this.dim+this.dim,s=r*this.dim,a=r*this.dim+this.dim;switch(e){case-1:n=i-1;break;case 1:i=n+1;}switch(r){case-1:s=a-1;break;case 1:a=s+1;}const o=-e*this.dim,l=-r*this.dim;for(let e=s;e=this._numberToString.length)throw new Error(`Out of bounds. Index requested n=${t} can't be >= this._numberToString.length ${this._numberToString.length}`);return this._numberToString[t]}}class Nc{constructor(t,e,r,n,i){this.type="Feature",this._vectorTileFeature=t,t._z=e,t._x=r,t._y=n,this.properties=t.properties,this.id=i;}get geometry(){return void 0===this._geometry&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry}set geometry(t){this._geometry=t;}toJSON(){const t={geometry:this.geometry};for(const e in this)"_geometry"!==e&&"_vectorTileFeature"!==e&&(t[e]=this[e]);return t}}class Zc{constructor(t,e){this.tileID=t,this.x=t.canonical.x,this.y=t.canonical.y,this.z=t.canonical.z,this.grid=new vi($a,16,0),this.grid3D=new vi($a,16,0),this.featureIndexArray=new Ns,this.promoteId=e;}insert(t,e,r,n,i,s){const a=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(r,n,i);const o=s?this.grid3D:this.grid;for(let t=0;t=0&&n[3]>=0&&o.insert(a,n[0],n[1],n[2],n[3]);}}loadVTLayers(){return this.vtLayers||(this.vtLayers=new fl.VectorTile(new Iu(this.rawTileData)).layers,this.sourceLayerCoder=new qc(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers}query(t,e,r,n){this.loadVTLayers();const i=t.params||{},a=$a/t.tileSize/t.scale,o=zn(i.filter),l=t.queryGeometry,u=t.queryPadding*a,c=Kc(l),h=this.grid.query(c.minX-u,c.minY-u,c.maxX+u,c.maxY+u),p=Kc(t.cameraQueryGeometry),f=this.grid3D.query(p.minX-u,p.minY-u,p.maxX+u,p.maxY+u,((e,r,n,i)=>function(t,e,r,n,i){for(const s of t)if(e<=s.x&&r<=s.y&&n>=s.x&&i>=s.y)return !0;const a=[new s(e,r),new s(e,i),new s(n,i),new s(n,r)];if(t.length>2)for(const e of a)if(Wa(t,e))return !0;for(let e=0;e(p||(p=Oa(e)),r.queryIntersectsFeature(l,e,n,p,this.z,t.transform,a,t.pixelPosMatrix))));}return d}loadMatchingFeature(t,e,r,n,i,s,a,o,l,u,c){const h=this.bucketLayerIDs[e];if(s&&!function(t,e){for(let r=0;r=0)return !0;return !1}(s,h))return;const p=this.sourceLayerCoder.decode(r),f=this.vtLayers[p].feature(n);if(i.needGeometry){const t=ja(f,!0);if(!i.filter(new Ui(this.tileID.overscaledZ),t,this.tileID.canonical))return}else if(!i.filter(new Ui(this.tileID.overscaledZ),f))return;const d=this.getId(f,p);for(let e=0;e{const a=e instanceof Yi?e.get(s):null;return a&&a.evaluate?a.evaluate(r,n,i):a}))}function Kc(t){let e=1/0,r=1/0,n=-1/0,i=-1/0;for(const s of t)e=Math.min(e,s.x),r=Math.min(r,s.y),n=Math.max(n,s.x),i=Math.max(i,s.y);return {minX:e,minY:r,maxX:n,maxY:i}}function Xc(t,e){return e-t}function Hc(t,e,r,n,i){const a=[];for(let o=0;o=n&&c.x>=n||(o.x>=n?o=new s(n,o.y+(n-o.x)/(c.x-o.x)*(c.y-o.y))._round():c.x>=n&&(c=new s(n,o.y+(n-o.x)/(c.x-o.x)*(c.y-o.y))._round()),o.y>=i&&c.y>=i||(o.y>=i?o=new s(o.x+(i-o.y)/(c.y-o.y)*(c.x-o.x),i)._round():c.y>=i&&(c=new s(o.x+(i-o.y)/(c.y-o.y)*(c.x-o.x),i)._round()),u&&o.equals(u[u.length-1])||(u=[o],a.push(u)),u.push(c)))));}}return a}wi("FeatureIndex",Zc,{omit:["rawTileData","sourceLayerCoder"]});class Yc extends s{constructor(t,e,r,n){super(t,e),this.angle=r,void 0!==n&&(this.segment=n);}clone(){return new Yc(this.x,this.y,this.angle,this.segment)}}function Jc(t,e,r,n,i){if(void 0===e.segment||0===r)return !0;let s=e,a=e.segment+1,o=0;for(;o>-r/2;){if(a--,a<0)return !1;o-=t[a].dist(s),s=t[a];}o+=t[a].dist(t[a+1]),a++;const l=[];let u=0;for(;on;)u-=l.shift().angleDelta;if(u>i)return !1;a++,o+=e.dist(r);}return !0}function Wc(t){let e=0;for(let r=0;ru){const c=(u-l)/s,h=Ce.number(n.x,i.x,c),p=Ce.number(n.y,i.y,c),f=new Yc(h,p,i.angleTo(n),r);return f._round(),!a||Jc(t,f,o,a,e)?f:void 0}l+=s;}}function rh(t,e,r,n,i,s,a,o,l){const u=Qc(n,s,a),c=th(n,i),h=c*a,p=0===t[0].x||t[0].x===l||0===t[0].y||t[0].y===l;return e-h=0&&g=0&&x=0&&p+u<=c){const r=new Yc(g,x,y,e);r._round(),n&&!Jc(t,r,s,n,i)||f.push(r);}}h+=d;}return o||f.length||a||(f=nh(t,h/2,r,n,i,s,a,!0,l)),f}wi("Anchor",Yc);const ih=Fu;function sh(t,e,r,n){const i=[],a=t.image,o=a.pixelRatio,l=a.paddedRect.w-2*ih,u=a.paddedRect.h-2*ih;let c={x1:t.left,y1:t.top,x2:t.right,y2:t.bottom};const h=a.stretchX||[[0,l]],p=a.stretchY||[[0,u]],f=(t,e)=>t+e[1]-e[0],d=h.reduce(f,0),y=p.reduce(f,0),m=l-d,g=u-y;let x=0,v=d,b=0,w=y,_=0,A=m,S=0,k=g;if(a.content&&n){const e=a.content,r=e[2]-e[0],n=e[3]-e[1];(a.textFitWidth||a.textFitHeight)&&(c=tc(t)),x=ah(h,0,e[0]),b=ah(p,0,e[1]),v=ah(h,e[0],e[2]),w=ah(p,e[1],e[3]),_=e[0]-x,S=e[1]-b,A=r-v,k=n-w;}const M=c.x1,I=c.y1,z=c.x2-M,P=c.y2-I,C=(t,n,i,l)=>{const u=lh(t.stretch-x,v,z,M),c=uh(t.fixed-_,A,t.stretch,d),h=lh(n.stretch-b,w,P,I),p=uh(n.fixed-S,k,n.stretch,y),f=lh(i.stretch-x,v,z,M),m=uh(i.fixed-_,A,i.stretch,d),g=lh(l.stretch-b,w,P,I),C=uh(l.fixed-S,k,l.stretch,y),B=new s(u,h),V=new s(f,h),E=new s(f,g),F=new s(u,g),T=new s(c/o,p/o),$=new s(m/o,C/o),L=e*Math.PI/180;if(L){const t=Math.sin(L),e=Math.cos(L),r=[e,-t,t,e];B._matMult(r),V._matMult(r),F._matMult(r),E._matMult(r);}const D=t.stretch+t.fixed,O=n.stretch+n.fixed;return {tl:B,tr:V,bl:F,br:E,tex:{x:a.paddedRect.x+ih+D,y:a.paddedRect.y+ih+O,w:i.stretch+i.fixed-D,h:l.stretch+l.fixed-O},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:T,pixelOffsetBR:$,minFontScaleX:A/o/z,minFontScaleY:k/o/P,isSDF:r}};if(n&&(a.stretchX||a.stretchY)){const t=oh(h,m,d),e=oh(p,g,y);for(let r=0;r0&&(n=Math.max(10,n),this.circleDiameter=n);}else {const u=(null===(h=a.image)||void 0===h?void 0:h.content)&&(a.image.textFitWidth||a.image.textFitHeight)?tc(a):{x1:a.left,y1:a.top,x2:a.right,y2:a.bottom};u.y1=u.y1*o-l[0],u.y2=u.y2*o+l[2],u.x1=u.x1*o-l[3],u.x2=u.x2*o+l[1];const p=a.collisionPadding;if(p&&(u.x1-=p[0]*o,u.y1-=p[1]*o,u.x2+=p[2]*o,u.y2+=p[3]*o),c){const t=new s(u.x1,u.y1),e=new s(u.x2,u.y1),r=new s(u.x1,u.y2),n=new s(u.x2,u.y2),i=c*Math.PI/180;t._rotate(i),e._rotate(i),r._rotate(i),n._rotate(i),u.x1=Math.min(t.x,e.x,r.x,n.x),u.x2=Math.max(t.x,e.x,r.x,n.x),u.y1=Math.min(t.y,e.y,r.y,n.y),u.y2=Math.max(t.y,e.y,r.y,n.y);}t.emplaceBack(e.x,e.y,u.x1,u.y1,u.x2,u.y2,r,n,i);}this.boxEndIndex=t.length;}}class hh{constructor(t=[],e=((t,e)=>te?1:0)){if(this.data=t,this.length=this.data.length,this.compare=e,this.length>0)for(let t=(this.length>>1)-1;t>=0;t--)this._down(t);}push(t){this.data.push(t),this._up(this.length++);}pop(){if(0===this.length)return;const t=this.data[0],e=this.data.pop();return --this.length>0&&(this.data[0]=e,this._down(0)),t}peek(){return this.data[0]}_up(t){const{data:e,compare:r}=this,n=e[t];for(;t>0;){const i=t-1>>1,s=e[i];if(r(n,s)>=0)break;e[t]=s,t=i;}e[t]=n;}_down(t){const{data:e,compare:r}=this,n=this.length>>1,i=e[t];for(;t=0)break;e[t]=e[n],t=n;}e[t]=i;}}function ph(t,e=1,r=!1){let n=1/0,i=1/0,a=-1/0,o=-1/0;const l=t[0];for(let t=0;ta)&&(a=e.x),(!t||e.y>o)&&(o=e.y);}const u=Math.min(a-n,o-i);let c=u/2;const h=new hh([],fh);if(0===u)return new s(n,i);for(let e=n;ep.d||!p.d)&&(p=n,r&&console.log("found best %d after %d probes",Math.round(1e4*n.d)/1e4,f)),n.max-p.d<=e||(c=n.h/2,h.push(new dh(n.p.x-c,n.p.y-c,c,t)),h.push(new dh(n.p.x+c,n.p.y-c,c,t)),h.push(new dh(n.p.x-c,n.p.y+c,c,t)),h.push(new dh(n.p.x+c,n.p.y+c,c,t)),f+=4);}return r&&(console.log(`num probes: ${f}`),console.log(`best distance: ${p.d}`)),p.p}function fh(t,e){return e.max-t.max}function dh(t,e,r,n){this.p=new s(t,e),this.h=r,this.d=function(t,e){let r=!1,n=1/0;for(let i=0;it.y!=o.y>t.y&&t.x<(o.x-i.x)*(t.y-i.y)/(o.y-i.y)+i.x&&(r=!r),n=Math.min(n,Ya(t,i,o));}}return (r?1:-1)*Math.sqrt(n)}(this.p,n),this.max=this.d+this.h*Math.SQRT2;}var yh;t.aq=void 0,(yh=t.aq||(t.aq={}))[yh.center=1]="center",yh[yh.left=2]="left",yh[yh.right=3]="right",yh[yh.top=4]="top",yh[yh.bottom=5]="bottom",yh[yh["top-left"]=6]="top-left",yh[yh["top-right"]=7]="top-right",yh[yh["bottom-left"]=8]="bottom-left",yh[yh["bottom-right"]=9]="bottom-right";const mh=7,gh=Number.POSITIVE_INFINITY;function xh(t,e){return e[1]!==gh?function(t,e,r){let n=0,i=0;switch(e=Math.abs(e),r=Math.abs(r),t){case"top-right":case"top-left":case"top":i=r-mh;break;case"bottom-right":case"bottom-left":case"bottom":i=-r+mh;}switch(t){case"top-right":case"bottom-right":case"right":n=-e;break;case"top-left":case"bottom-left":case"left":n=e;}return [n,i]}(t,e[0],e[1]):function(t,e){let r=0,n=0;e<0&&(e=0);const i=e/Math.SQRT2;switch(t){case"top-right":case"top-left":n=i-mh;break;case"bottom-right":case"bottom-left":n=-i+mh;break;case"bottom":n=-e+mh;break;case"top":n=e-mh;}switch(t){case"top-right":case"bottom-right":r=-i;break;case"top-left":case"bottom-left":r=i;break;case"left":r=e;break;case"right":r=-e;}return [r,n]}(t,e[0])}function vh(t,e,r){var n;const i=t.layout,s=null===(n=i.get("text-variable-anchor-offset"))||void 0===n?void 0:n.evaluate(e,{},r);if(s){const t=s.values,e=[];for(let r=0;rt*iu));n.startsWith("top")?i[1]-=mh:n.startsWith("bottom")&&(i[1]+=mh),e[r+1]=i;}return new Qt(e)}const a=i.get("text-variable-anchor");if(a){let n;n=void 0!==t._unevaluatedLayout.getValue("text-radial-offset")?[i.get("text-radial-offset").evaluate(e,{},r)*iu,gh]:i.get("text-offset").evaluate(e,{},r).map((t=>t*iu));const s=[];for(const t of a)s.push(t,xh(t,n));return new Qt(s)}return null}function bh(t){switch(t){case"right":case"top-right":case"bottom-right":return "right";case"left":case"top-left":case"bottom-left":return "left"}return "center"}function wh(e,r,n,i,s,a,o,l,u,c,h){let p=a.textMaxSize.evaluate(r,{});void 0===p&&(p=o);const f=e.layers[0].layout,d=f.get("icon-offset").evaluate(r,{},h),y=Ah(n.horizontal),m=o/24,g=e.tilePixelRatio*m,x=e.tilePixelRatio*p/24,v=e.tilePixelRatio*l,b=e.tilePixelRatio*f.get("symbol-spacing"),w=f.get("text-padding")*e.tilePixelRatio,_=function(t,e,r,n=1){const i=t.get("icon-padding").evaluate(e,{},r),s=i&&i.values;return [s[0]*n,s[1]*n,s[2]*n,s[3]*n]}(f,r,h,e.tilePixelRatio),S=f.get("text-max-angle")/180*Math.PI,k="viewport"!==f.get("text-rotation-alignment")&&"point"!==f.get("symbol-placement"),M="map"===f.get("icon-rotation-alignment")&&"point"!==f.get("symbol-placement"),I=f.get("symbol-placement"),z=b/2,P=f.get("icon-text-fit");let C;i&&"none"!==P&&(e.allowVerticalPlacement&&n.vertical&&(C=ec(i,n.vertical,P,f.get("icon-text-fit-padding"),d,m)),y&&(i=ec(i,y,P,f.get("icon-text-fit-padding"),d,m)));const B=(l,p)=>{p.x<0||p.x>=$a||p.y<0||p.y>=$a||function(e,r,n,i,s,a,o,l,u,c,h,p,f,d,y,m,g,x,v,b,w,_,S,k,M){const I=e.addToLineVertexArray(r,n);let z,P,C,B,V=0,E=0,F=0,T=0,$=-1,L=-1;const D={};let O=ma("");if(e.allowVerticalPlacement&&i.vertical){const t=l.layout.get("text-rotate").evaluate(w,{},k)+90;C=new ch(u,r,c,h,p,i.vertical,f,d,y,t),o&&(B=new ch(u,r,c,h,p,o,g,x,y,t));}if(s){const n=l.layout.get("icon-rotate").evaluate(w,{}),i="none"!==l.layout.get("icon-text-fit"),a=sh(s,n,S,i),f=o?sh(o,n,S,i):void 0;P=new ch(u,r,c,h,p,s,g,x,!1,n),V=4*a.length;const d=e.iconSizeData;let y=null;"source"===d.kind?(y=[nc*l.layout.get("icon-size").evaluate(w,{})],y[0]>ic&&A(`${e.layerIds[0]}: Value for "icon-size" is >= ${rc}. Reduce your "icon-size".`)):"composite"===d.kind&&(y=[nc*_.compositeIconSizes[0].evaluate(w,{},k),nc*_.compositeIconSizes[1].evaluate(w,{},k)],(y[0]>ic||y[1]>ic)&&A(`${e.layerIds[0]}: Value for "icon-size" is >= ${rc}. Reduce your "icon-size".`)),e.addSymbols(e.icon,a,y,b,v,w,t.ah.none,r,I.lineStartIndex,I.lineLength,-1,k),$=e.icon.placedSymbolArray.length-1,f&&(E=4*f.length,e.addSymbols(e.icon,f,y,b,v,w,t.ah.vertical,r,I.lineStartIndex,I.lineLength,-1,k),L=e.icon.placedSymbolArray.length-1);}const j=Object.keys(i.horizontal);for(const n of j){const s=i.horizontal[n];if(!z){O=ma(s.text);const t=l.layout.get("text-rotate").evaluate(w,{},k);z=new ch(u,r,c,h,p,s,f,d,y,t);}const o=1===s.positionedLines.length;if(F+=_h(e,r,s,a,l,y,w,m,I,i.vertical?t.ah.horizontal:t.ah.horizontalOnly,o?j:[n],D,$,_,k),o)break}i.vertical&&(T+=_h(e,r,i.vertical,a,l,y,w,m,I,t.ah.vertical,["vertical"],D,L,_,k));const R=z?z.boxStartIndex:e.collisionBoxArray.length,U=z?z.boxEndIndex:e.collisionBoxArray.length,q=C?C.boxStartIndex:e.collisionBoxArray.length,N=C?C.boxEndIndex:e.collisionBoxArray.length,Z=P?P.boxStartIndex:e.collisionBoxArray.length,G=P?P.boxEndIndex:e.collisionBoxArray.length,K=B?B.boxStartIndex:e.collisionBoxArray.length,X=B?B.boxEndIndex:e.collisionBoxArray.length;let H=-1;const Y=(t,e)=>t&&t.circleDiameter?Math.max(t.circleDiameter,e):e;H=Y(z,H),H=Y(C,H),H=Y(P,H),H=Y(B,H);const J=H>-1?1:0;J&&(H*=M/iu),e.glyphOffsetArray.length>=dc.MAX_GLYPHS&&A("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),void 0!==w.sortKey&&e.addToSortKeyRanges(e.symbolInstances.length,w.sortKey);const W=vh(l,w,k),[Q,tt]=function(e,r){const n=e.length,i=null==r?void 0:r.values;if((null==i?void 0:i.length)>0)for(let r=0;r=0?D.right:-1,D.center>=0?D.center:-1,D.left>=0?D.left:-1,D.vertical||-1,$,L,O,R,U,q,N,Z,G,K,X,c,F,T,V,E,J,0,f,H,Q,tt);}(e,p,l,n,i,s,C,e.layers[0],e.collisionBoxArray,r.index,r.sourceLayerIndex,e.index,g,[w,w,w,w],k,u,v,_,M,d,r,a,c,h,o);};if("line"===I)for(const t of Hc(r.geometry,0,0,$a,$a)){const r=rh(t,b,S,n.vertical||y,i,24,x,e.overscaling,$a);for(const n of r)y&&Sh(e,y.text,z,n)||B(t,n);}else if("line-center"===I){for(const t of r.geometry)if(t.length>1){const e=eh(t,S,n.vertical||y,i,24,x);e&&B(t,e);}}else if("Polygon"===r.type)for(const t of xr(r.geometry,0)){const e=ph(t,16);B(t[0],new Yc(e.x,e.y,0));}else if("LineString"===r.type)for(const t of r.geometry)B(t,new Yc(t[0].x,t[0].y,0));else if("Point"===r.type)for(const t of r.geometry)for(const e of t)B([e],new Yc(e.x,e.y,0));}function _h(t,e,r,n,i,a,o,l,u,c,h,p,f,d,y){const m=function(t,e,r,n,i,a,o,l){const u=n.layout.get("text-rotate").evaluate(a,{})*Math.PI/180,c=[];for(const t of e.positionedLines)for(const n of t.positionedGlyphs){if(!n.rect)continue;const a=n.rect||{};let h=Vu+1,p=!0,f=1,d=0;const y=(i||l)&&n.vertical,m=n.metrics.advance*n.scale/2;if(l&&e.verticalizable&&(d=t.lineOffset/2-(n.imageName?-(iu-n.metrics.width*n.scale)/2:(n.scale-1)*iu)),n.imageName){const t=o[n.imageName];p=t.sdf,f=t.pixelRatio,h=Fu/f;}const g=i?[n.x+m,n.y]:[0,0];let x=i?[0,0]:[n.x+m+r[0],n.y+r[1]-d],v=[0,0];y&&(v=x,x=[0,0]);const b=n.metrics.isDoubleResolution?2:1,w=(n.metrics.left-h)*n.scale-m+x[0],_=(-n.metrics.top-h)*n.scale+x[1],A=w+a.w/b*n.scale/f,S=_+a.h/b*n.scale/f,k=new s(w,_),M=new s(A,_),I=new s(w,S),z=new s(A,S);if(y){const t=new s(-m,m-Du),e=-Math.PI/2,r=iu/2-m,i=new s(5-Du-r,-(n.imageName?r:0)),a=new s(...v);k._rotateAround(e,t)._add(i)._add(a),M._rotateAround(e,t)._add(i)._add(a),I._rotateAround(e,t)._add(i)._add(a),z._rotateAround(e,t)._add(i)._add(a);}if(u){const t=Math.sin(u),e=Math.cos(u),r=[e,-t,t,e];k._matMult(r),M._matMult(r),I._matMult(r),z._matMult(r);}const P=new s(0,0),C=new s(0,0);c.push({tl:k,tr:M,bl:I,br:z,tex:a,writingMode:e.writingMode,glyphOffset:g,sectionIndex:n.sectionIndex,isSDF:p,pixelOffsetTL:P,pixelOffsetBR:C,minFontScaleX:0,minFontScaleY:0});}return c}(0,r,l,i,a,o,n,t.allowVerticalPlacement),g=t.textSizeData;let x=null;"source"===g.kind?(x=[nc*i.layout.get("text-size").evaluate(o,{})],x[0]>ic&&A(`${t.layerIds[0]}: Value for "text-size" is >= ${rc}. Reduce your "text-size".`)):"composite"===g.kind&&(x=[nc*d.compositeTextSizes[0].evaluate(o,{},y),nc*d.compositeTextSizes[1].evaluate(o,{},y)],(x[0]>ic||x[1]>ic)&&A(`${t.layerIds[0]}: Value for "text-size" is >= ${rc}. Reduce your "text-size".`)),t.addSymbols(t.text,m,x,l,a,o,c,e,u.lineStartIndex,u.lineLength,f,y);for(const e of h)p[e]=t.text.placedSymbolArray.length-1;return 4*m.length}function Ah(t){for(const e in t)return t[e];return null}function Sh(t,e,r,n){const i=t.compareText;if(e in i){const t=i[e];for(let e=t.length-1;e>=0;e--)if(n.dist(t[e])>4;if(1!==n)throw new Error(`Got v${n} data when expected v1.`);const i=kh[15&r];if(!i)throw new Error("Unrecognized array type.");const[s]=new Uint16Array(t,2,1),[a]=new Uint32Array(t,4,1);return new Mh(a,s,i,t)}constructor(t,e=64,r=Float64Array,n){if(isNaN(t)||t<0)throw new Error(`Unpexpected numItems value: ${t}.`);this.numItems=+t,this.nodeSize=Math.min(Math.max(+e,2),65535),this.ArrayType=r,this.IndexArrayType=t<65536?Uint16Array:Uint32Array;const i=kh.indexOf(this.ArrayType),s=2*t*this.ArrayType.BYTES_PER_ELEMENT,a=t*this.IndexArrayType.BYTES_PER_ELEMENT,o=(8-a%8)%8;if(i<0)throw new Error(`Unexpected typed array class: ${r}.`);n&&n instanceof ArrayBuffer?(this.data=n,this.ids=new this.IndexArrayType(this.data,8,t),this.coords=new this.ArrayType(this.data,8+a+o,2*t),this._pos=2*t,this._finished=!0):(this.data=new ArrayBuffer(8+s+a+o),this.ids=new this.IndexArrayType(this.data,8,t),this.coords=new this.ArrayType(this.data,8+a+o,2*t),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,16+i]),new Uint16Array(this.data,2,1)[0]=e,new Uint32Array(this.data,4,1)[0]=t);}add(t,e){const r=this._pos>>1;return this.ids[r]=r,this.coords[this._pos++]=t,this.coords[this._pos++]=e,r}finish(){const t=this._pos>>1;if(t!==this.numItems)throw new Error(`Added ${t} items when expected ${this.numItems}.`);return Ih(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(t,e,r,n){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");const{ids:i,coords:s,nodeSize:a}=this,o=[0,i.length-1,0],l=[];for(;o.length;){const u=o.pop()||0,c=o.pop()||0,h=o.pop()||0;if(c-h<=a){for(let a=h;a<=c;a++){const o=s[2*a],u=s[2*a+1];o>=t&&o<=r&&u>=e&&u<=n&&l.push(i[a]);}continue}const p=h+c>>1,f=s[2*p],d=s[2*p+1];f>=t&&f<=r&&d>=e&&d<=n&&l.push(i[p]),(0===u?t<=f:e<=d)&&(o.push(h),o.push(p-1),o.push(1-u)),(0===u?r>=f:n>=d)&&(o.push(p+1),o.push(c),o.push(1-u));}return l}within(t,e,r){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");const{ids:n,coords:i,nodeSize:s}=this,a=[0,n.length-1,0],o=[],l=r*r;for(;a.length;){const u=a.pop()||0,c=a.pop()||0,h=a.pop()||0;if(c-h<=s){for(let r=h;r<=c;r++)Bh(i[2*r],i[2*r+1],t,e)<=l&&o.push(n[r]);continue}const p=h+c>>1,f=i[2*p],d=i[2*p+1];Bh(f,d,t,e)<=l&&o.push(n[p]),(0===u?t-r<=f:e-r<=d)&&(a.push(h),a.push(p-1),a.push(1-u)),(0===u?t+r>=f:e+r>=d)&&(a.push(p+1),a.push(c),a.push(1-u));}return o}}function Ih(t,e,r,n,i,s){if(i-n<=r)return;const a=n+i>>1;zh(t,e,a,n,i,s),Ih(t,e,r,n,a-1,1-s),Ih(t,e,r,a+1,i,1-s);}function zh(t,e,r,n,i,s){for(;i>n;){if(i-n>600){const a=i-n+1,o=r-n+1,l=Math.log(a),u=.5*Math.exp(2*l/3),c=.5*Math.sqrt(l*u*(a-u)/a)*(o-a/2<0?-1:1);zh(t,e,r,Math.max(n,Math.floor(r-o*u/a+c)),Math.min(i,Math.floor(r+(a-o)*u/a+c)),s);}const a=e[2*r+s];let o=n,l=i;for(Ph(t,e,n,r),e[2*i+s]>a&&Ph(t,e,n,i);oa;)l--;}e[2*n+s]===a?Ph(t,e,n,l):(l++,Ph(t,e,l,i)),l<=r&&(n=l+1),r<=l&&(i=l-1);}}function Ph(t,e,r,n){Ch(t,r,n),Ch(e,2*r,2*n),Ch(e,2*r+1,2*n+1);}function Ch(t,e,r){const n=t[e];t[e]=t[r],t[r]=n;}function Bh(t,e,r,n){const i=t-r,s=e-n;return i*i+s*s}var Vh;t.bg=void 0,(Vh=t.bg||(t.bg={})).create="create",Vh.load="load",Vh.fullLoad="fullLoad";let Eh=null,Fh=[];const Th=1e3/60,$h="loadTime",Lh="fullLoadTime",Dh={mark(t){performance.mark(t);},frame(t){const e=t;null!=Eh&&Fh.push(e-Eh),Eh=e;},clearMetrics(){Eh=null,Fh=[],performance.clearMeasures($h),performance.clearMeasures(Lh);for(const e in t.bg)performance.clearMarks(t.bg[e]);},getPerformanceMetrics(){performance.measure($h,t.bg.create,t.bg.load),performance.measure(Lh,t.bg.create,t.bg.fullLoad);const e=performance.getEntriesByName($h)[0].duration,r=performance.getEntriesByName(Lh)[0].duration,n=Fh.length,i=1/(Fh.reduce(((t,e)=>t+e),0)/n/1e3),s=Fh.filter((t=>t>Th)).reduce(((t,e)=>t+(e-Th)/Th),0);return {loadTime:e,fullLoadTime:r,fps:i,percentDroppedFrames:s/(n+s)*100,totalFrames:n}}};t.$=class extends ps{},t.A=oo,t.B=yi,t.C=function(t){if(null==M){const e=t.navigator?t.navigator.userAgent:null;M=!!t.safari||!(!e||!(/\b(iPad|iPhone|iPod)\b/.test(e)||e.match("Safari")&&!e.match("Chrome")));}return M},t.D=Ji,t.E=Z,t.F=class{constructor(t,e){this.target=t,this.mapId=e,this.resolveRejects={},this.tasks={},this.taskQueue=[],this.abortControllers={},this.messageHandlers={},this.invoker=new Ic((()=>this.process())),this.subscription=function(t,e,r,n){return t.addEventListener(e,r,!1),{unsubscribe:()=>{t.removeEventListener(e,r,!1);}}}(this.target,"message",(t=>this.receive(t))),this.globalScope=k(self)?t:window;}registerMessageHandler(t,e){this.messageHandlers[t]=e;}sendAsync(t,e){return new Promise(((r,n)=>{const i=Math.round(1e18*Math.random()).toString(36).substring(0,10);this.resolveRejects[i]={resolve:r,reject:n},e&&e.signal.addEventListener("abort",(()=>{delete this.resolveRejects[i];const e={id:i,type:"",origin:location.origin,targetMapId:t.targetMapId,sourceMapId:this.mapId};this.target.postMessage(e);}),{once:!0});const s=[],a=Object.assign(Object.assign({},t),{id:i,sourceMapId:this.mapId,origin:location.origin,data:ki(t.data,s)});this.target.postMessage(a,{transfer:s});}))}receive(t){const e=t.data,r=e.id;if(!("file://"!==e.origin&&"file://"!==location.origin&&"resource://android"!==e.origin&&"resource://android"!==location.origin&&e.origin!==location.origin||e.targetMapId&&this.mapId!==e.targetMapId)){if(""===e.type){delete this.tasks[r];const t=this.abortControllers[r];return delete this.abortControllers[r],void(t&&t.abort())}if(k(self)||e.mustQueue)return this.tasks[r]=e,this.taskQueue.push(r),void this.invoker.trigger();this.processTask(r,e);}}process(){if(0===this.taskQueue.length)return;const t=this.taskQueue.shift(),e=this.tasks[t];delete this.tasks[t],this.taskQueue.length>0&&this.invoker.trigger(),e&&this.processTask(t,e);}processTask(t,r){return e(this,void 0,void 0,(function*(){if(""===r.type){const e=this.resolveRejects[t];if(delete this.resolveRejects[t],!e)return;return void(r.error?e.reject(Mi(r.error)):e.resolve(Mi(r.data)))}if(!this.messageHandlers[r.type])return void this.completeTask(t,new Error(`Could not find a registered handler for ${r.type}, map ID: ${this.mapId}, available handlers: ${Object.keys(this.messageHandlers).join(", ")}`));const e=Mi(r.data),n=new AbortController;this.abortControllers[t]=n;try{const i=yield this.messageHandlers[r.type](r.sourceMapId,e,n);this.completeTask(t,null,i);}catch(e){this.completeTask(t,e);}}))}completeTask(t,e,r){const n=[];delete this.abortControllers[t];const i={id:t,type:"",sourceMapId:this.mapId,origin:location.origin,error:e?ki(e):null,data:ki(r,n)};this.target.postMessage(i,{transfer:n});}remove(){this.invoker.remove(),this.subscription.unsubscribe();}},t.G=$,t.H=function(){var t=new oo(16);return oo!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0),t[0]=1,t[5]=1,t[10]=1,t[15]=1,t},t.I=Tu,t.J=function(t,e,r){var n,i,s,a,o,l,u,c,h,p,f,d,y=r[0],m=r[1],g=r[2];return e===t?(t[12]=e[0]*y+e[4]*m+e[8]*g+e[12],t[13]=e[1]*y+e[5]*m+e[9]*g+e[13],t[14]=e[2]*y+e[6]*m+e[10]*g+e[14],t[15]=e[3]*y+e[7]*m+e[11]*g+e[15]):(i=e[1],s=e[2],a=e[3],o=e[4],l=e[5],u=e[6],c=e[7],h=e[8],p=e[9],f=e[10],d=e[11],t[0]=n=e[0],t[1]=i,t[2]=s,t[3]=a,t[4]=o,t[5]=l,t[6]=u,t[7]=c,t[8]=h,t[9]=p,t[10]=f,t[11]=d,t[12]=n*y+o*m+h*g+e[12],t[13]=i*y+l*m+p*g+e[13],t[14]=s*y+u*m+f*g+e[14],t[15]=a*y+c*m+d*g+e[15]),t},t.K=function(t,e,r){var n=r[0],i=r[1],s=r[2];return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t[3]=e[3]*n,t[4]=e[4]*i,t[5]=e[5]*i,t[6]=e[6]*i,t[7]=e[7]*i,t[8]=e[8]*s,t[9]=e[9]*s,t[10]=e[10]*s,t[11]=e[11]*s,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t},t.L=uo,t.M=function(t,e){const r={};for(let n=0;n{const e=window.document.createElement("video");return e.muted=!0,new Promise((r=>{e.onloadstart=()=>{r(e);};for(const r of t){const t=window.document.createElement("source");j(r)||(e.crossOrigin="Anonymous"),t.src=r,e.appendChild(t);}}))},t.a4=function(){return x++},t.a5=Fs,t.a6=dc,t.a7=zn,t.a8=ja,t.a9=Nc,t.aA=function(t){if("custom"===t.type)return new Mc(t);switch(t.type){case"background":return new _c(t);case"circle":return new fo(t);case"fill":return new ul(t);case"fill-extrusion":return new El(t);case"heatmap":return new Mo(t);case"hillshade":return new Po(t);case"line":return new Hl(t);case"raster":return new kc(t);case"symbol":return new vc(t)}},t.aB=w,t.aC=function(t,e){if(!t)return [{command:"setStyle",args:[e]}];let r=[];try{if(!H(t.version,e.version))return [{command:"setStyle",args:[e]}];H(t.center,e.center)||r.push({command:"setCenter",args:[e.center]}),H(t.zoom,e.zoom)||r.push({command:"setZoom",args:[e.zoom]}),H(t.bearing,e.bearing)||r.push({command:"setBearing",args:[e.bearing]}),H(t.pitch,e.pitch)||r.push({command:"setPitch",args:[e.pitch]}),H(t.sprite,e.sprite)||r.push({command:"setSprite",args:[e.sprite]}),H(t.glyphs,e.glyphs)||r.push({command:"setGlyphs",args:[e.glyphs]}),H(t.transition,e.transition)||r.push({command:"setTransition",args:[e.transition]}),H(t.light,e.light)||r.push({command:"setLight",args:[e.light]}),H(t.terrain,e.terrain)||r.push({command:"setTerrain",args:[e.terrain]}),H(t.sky,e.sky)||r.push({command:"setSky",args:[e.sky]}),H(t.projection,e.projection)||r.push({command:"setProjection",args:[e.projection]});const n={},i=[];!function(t,e,r,n){let i;for(i in e=e||{},t=t||{})Object.prototype.hasOwnProperty.call(t,i)&&(Object.prototype.hasOwnProperty.call(e,i)||W(i,r,n));for(i in e)Object.prototype.hasOwnProperty.call(e,i)&&(Object.prototype.hasOwnProperty.call(t,i)?H(t[i],e[i])||("geojson"===t[i].type&&"geojson"===e[i].type&&tt(t,e,i)?Y(r,{command:"setGeoJSONSourceData",args:[i,e[i].data]}):Q(i,e,r,n)):J(i,e,r));}(t.sources,e.sources,i,n);const s=[];t.layers&&t.layers.forEach((t=>{"source"in t&&n[t.source]?r.push({command:"removeLayer",args:[t.id]}):s.push(t);})),r=r.concat(i),function(t,e,r){e=e||[];const n=(t=t||[]).map(rt),i=e.map(rt),s=t.reduce(nt,{}),a=e.reduce(nt,{}),o=n.slice(),l=Object.create(null);let u,c,h,p,f;for(let t=0,e=0;t@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,((t,r,n,i)=>{const s=n||i;return e[r]=!s||s.toLowerCase(),""})),e["max-age"]){const t=parseInt(e["max-age"],10);isNaN(t)?delete e["max-age"]:e["max-age"]=t;}return e},t.ab=function(t,e){const r=[];for(const n in t)n in e||r.push(n);return r},t.ac=y,t.ad=function(t,e,r){var n=Math.sin(r),i=Math.cos(r),s=e[0],a=e[1],o=e[2],l=e[3],u=e[4],c=e[5],h=e[6],p=e[7];return e!==t&&(t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=s*i+u*n,t[1]=a*i+c*n,t[2]=o*i+h*n,t[3]=l*i+p*n,t[4]=u*i-s*n,t[5]=c*i-a*n,t[6]=h*i-o*n,t[7]=p*i-l*n,t},t.ae=function(t){var e=new oo(16);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e},t.af=po,t.ag=function(t,e){let r=0,n=0;if("constant"===t.kind)n=t.layoutSize;else if("source"!==t.kind){const{interpolationType:i,minZoom:s,maxZoom:a}=t,o=i?y(Be.interpolationFactor(i,e,s,a),0,1):0;"camera"===t.kind?n=Ce.number(t.minSize,t.maxSize,o):r=o;}return {uSizeT:r,uSize:n}},t.ai=function(t,{uSize:e,uSizeT:r},{lowerSize:n,upperSize:i}){return "source"===t.kind?n/nc:"composite"===t.kind?Ce.number(n/nc,i/nc,r):e},t.aj=cc,t.ak=function(t,e,r,n){const i=e.y-t.y,a=e.x-t.x,o=n.y-r.y,l=n.x-r.x,u=o*a-l*i;if(0===u)return null;const c=(l*(t.y-r.y)-o*(t.x-r.x))/u;return new s(t.x+c*a,t.y+c*i)},t.al=Hc,t.am=qa,t.an=lo,t.ao=function(t){let e=1/0,r=1/0,n=-1/0,i=-1/0;for(const s of t)e=Math.min(e,s.x),r=Math.min(r,s.y),n=Math.max(n,s.x),i=Math.max(i,s.y);return [e,r,n,i]},t.ap=iu,t.ar=ac,t.as=function(t,e){var r=e[0],n=e[1],i=e[2],s=e[3],a=e[4],o=e[5],l=e[6],u=e[7],c=e[8],h=e[9],p=e[10],f=e[11],d=e[12],y=e[13],m=e[14],g=e[15],x=r*o-n*a,v=r*l-i*a,b=r*u-s*a,w=n*l-i*o,_=n*u-s*o,A=i*u-s*l,S=c*y-h*d,k=c*m-p*d,M=c*g-f*d,I=h*m-p*y,z=h*g-f*y,P=p*g-f*m,C=x*P-v*z+b*I+w*M-_*k+A*S;return C?(t[0]=(o*P-l*z+u*I)*(C=1/C),t[1]=(i*z-n*P-s*I)*C,t[2]=(y*A-m*_+g*w)*C,t[3]=(p*_-h*A-f*w)*C,t[4]=(l*M-a*P-u*k)*C,t[5]=(r*P-i*M+s*k)*C,t[6]=(m*b-d*A-g*v)*C,t[7]=(c*A-p*b+f*v)*C,t[8]=(a*z-o*M+u*S)*C,t[9]=(n*M-r*z-s*S)*C,t[10]=(d*_-y*b+g*x)*C,t[11]=(h*b-c*_-f*x)*C,t[12]=(o*k-a*I-l*S)*C,t[13]=(r*I-n*k+i*S)*C,t[14]=(y*v-d*w-m*x)*C,t[15]=(c*w-h*v+p*x)*C,t):null},t.at=bh,t.au=Ju,t.av=Mh,t.aw=function(){const t={},e=G.$version;for(const r in G.$root){const n=G.$root[r];if(n.required){let i=null;i="version"===r?e:"array"===n.type?[]:{},null!=i&&(t[r]=i);}}return t},t.ax=Ii,t.ay=D,t.az=function(t){t=t.slice();const e=Object.create(null);for(let r=0;r25||n<0||n>=1||r<0||r>=1)},t.bc=function(t,e){return t[0]=e[0],t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=e[1],t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=e[2],t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},t.bd=class extends hs{},t.be=zc,t.bf=Dh,t.bh=L,t.bi=function(t,e){F.REGISTERED_PROTOCOLS[t]=e;},t.bj=function(t){delete F.REGISTERED_PROTOCOLS[t];},t.bk=function(t,e){const r={};for(let n=0;nt*iu));}let v=o?"center":n.get("text-justify").evaluate(i,{},e.canonical);const b="point"===n.get("symbol-placement")?n.get("text-max-width").evaluate(i,{},e.canonical)*iu:1/0,w=()=>{e.bucket.allowVerticalPlacement&&Pi(s)&&(d.vertical=Ru(y,e.glyphMap,e.glyphPositions,e.imagePositions,c,b,a,m,"left",f,g,t.ah.vertical,!0,p,h));};if(!o&&x){const r=new Set;if("auto"===v)for(let t=0;te(void 0,void 0,void 0,(function*(){if(0===t.byteLength)return createImageBitmap(new ImageData(1,1));const e=new Blob([new Uint8Array(t)],{type:"image/png"});try{return createImageBitmap(e)}catch(t){throw new Error(`Could not load image because of ${t.message}. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.`)}})),t.e=g,t.f=t=>new Promise(((e,r)=>{const n=new Image;n.onload=()=>{e(n),URL.revokeObjectURL(n.src),n.onload=null,window.requestAnimationFrame((()=>{n.src=z;}));},n.onerror=()=>r(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."));const i=new Blob([new Uint8Array(t)],{type:"image/png"});n.src=t.byteLength?URL.createObjectURL(i):z;})),t.g=T,t.h=(t,e)=>O(g(t,{type:"json"}),e),t.i=k,t.j=N,t.k=q,t.l=(t,e)=>O(g(t,{type:"arrayBuffer"}),e),t.m=O,t.n=function(t){return new Iu(t).readFields(Pu,[])},t.o=_o,t.p=Eu,t.q=rs,t.r=di,t.s=j,t.t=xi,t.u=fi,t.v=G,t.w=A,t.x=function([t,e,r]){return e+=90,e*=Math.PI/180,r*=Math.PI/180,{x:t*Math.cos(e)*Math.sin(r),y:t*Math.sin(e)*Math.sin(r),z:t*Math.cos(r)}},t.y=Ce,t.z=Ui;})); + +define("worker",["./shared"],(function(e){"use strict";class t{constructor(e){this.keyCache={},e&&this.replace(e);}replace(e){this._layerConfigs={},this._layers={},this.update(e,[]);}update(t,o){for(const o of t){this._layerConfigs[o.id]=o;const t=this._layers[o.id]=e.aA(o);t._featureFilter=e.a7(t.filter),this.keyCache[o.id]&&delete this.keyCache[o.id];}for(const e of o)delete this.keyCache[e],delete this._layerConfigs[e],delete this._layers[e];this.familiesBySource={};const i=e.bk(Object.values(this._layerConfigs),this.keyCache);for(const e of i){const t=e.map((e=>this._layers[e.id])),o=t[0];if("none"===o.visibility)continue;const i=o.source||"";let s=this.familiesBySource[i];s||(s=this.familiesBySource[i]={});const r=o.sourceLayer||"_geojsonTileLayer";let n=s[r];n||(n=s[r]=[]),n.push(t);}}}class o{constructor(t){const o={},i=[];for(const e in t){const s=t[e],r=o[e]={};for(const e in s){const t=s[+e];if(!t||0===t.bitmap.width||0===t.bitmap.height)continue;const o={x:0,y:0,w:t.bitmap.width+2,h:t.bitmap.height+2};i.push(o),r[e]={rect:o,metrics:t.metrics};}}const{w:s,h:r}=e.p(i),n=new e.o({width:s||1,height:r||1});for(const i in t){const s=t[i];for(const t in s){const r=s[+t];if(!r||0===r.bitmap.width||0===r.bitmap.height)continue;const a=o[i][t].rect;e.o.copy(r.bitmap,n,{x:0,y:0},{x:a.x+1,y:a.y+1},r.bitmap);}}this.image=n,this.positions=o;}}e.bl("GlyphAtlas",o);class i{constructor(t){this.tileID=new e.S(t.tileID.overscaledZ,t.tileID.wrap,t.tileID.canonical.z,t.tileID.canonical.x,t.tileID.canonical.y),this.uid=t.uid,this.zoom=t.zoom,this.pixelRatio=t.pixelRatio,this.tileSize=t.tileSize,this.source=t.source,this.overscaling=this.tileID.overscaleFactor(),this.showCollisionBoxes=t.showCollisionBoxes,this.collectResourceTiming=!!t.collectResourceTiming,this.returnDependencies=!!t.returnDependencies,this.promoteId=t.promoteId,this.inFlightDependencies=[];}parse(t,i,r,n){return e._(this,void 0,void 0,(function*(){this.status="parsing",this.data=t,this.collisionBoxArray=new e.a5;const a=new e.bm(Object.keys(t.layers).sort()),l=new e.bn(this.tileID,this.promoteId);l.bucketLayerIDs=[];const c={},u={featureIndex:l,iconDependencies:{},patternDependencies:{},glyphDependencies:{},availableImages:r},h=i.familiesBySource[this.source];for(const o in h){const i=t.layers[o];if(!i)continue;1===i.version&&e.w(`Vector tile source "${this.source}" layer "${o}" does not use vector tile spec v2 and therefore may have some rendering errors.`);const n=a.encode(o),d=[];for(let e=0;e=o.maxzoom||"none"!==o.visibility&&(s(t,this.zoom,r),(c[o.id]=o.createBucket({index:l.bucketLayerIDs.length,layers:t,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:n,sourceID:this.source})).populate(d,u,this.tileID.canonical),l.bucketLayerIDs.push(t.map((e=>e.id))));}}const d=e.aF(u.glyphDependencies,(e=>Object.keys(e).map(Number)));this.inFlightDependencies.forEach((e=>null==e?void 0:e.abort())),this.inFlightDependencies=[];let f=Promise.resolve({});if(Object.keys(d).length){const e=new AbortController;this.inFlightDependencies.push(e),f=n.sendAsync({type:"GG",data:{stacks:d,source:this.source,tileID:this.tileID,type:"glyphs"}},e);}const g=Object.keys(u.iconDependencies);let p=Promise.resolve({});if(g.length){const e=new AbortController;this.inFlightDependencies.push(e),p=n.sendAsync({type:"GI",data:{icons:g,source:this.source,tileID:this.tileID,type:"icons"}},e);}const m=Object.keys(u.patternDependencies);let y=Promise.resolve({});if(m.length){const e=new AbortController;this.inFlightDependencies.push(e),y=n.sendAsync({type:"GI",data:{icons:m,source:this.source,tileID:this.tileID,type:"patterns"}},e);}const[v,w,x]=yield Promise.all([f,p,y]),b=new o(v),S=new e.bo(w,x);for(const t in c){const o=c[t];o instanceof e.a6?(s(o.layers,this.zoom,r),e.bp({bucket:o,glyphMap:v,glyphPositions:b.positions,imageMap:w,imagePositions:S.iconPositions,showCollisionBoxes:this.showCollisionBoxes,canonical:this.tileID.canonical})):o.hasPattern&&(o instanceof e.bq||o instanceof e.br||o instanceof e.bs)&&(s(o.layers,this.zoom,r),o.addFeatures(u,this.tileID.canonical,S.patternPositions));}return this.status="done",{buckets:Object.values(c).filter((e=>!e.isEmpty())),featureIndex:l,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:b.image,imageAtlas:S,glyphMap:this.returnDependencies?v:null,iconMap:this.returnDependencies?w:null,glyphPositions:this.returnDependencies?b.positions:null}}))}}function s(t,o,i){const s=new e.z(o);for(const e of t)e.recalculate(s,i);}class r{constructor(e,t,o){this.actor=e,this.layerIndex=t,this.availableImages=o,this.fetching={},this.loading={},this.loaded={};}loadVectorTile(t,o){return e._(this,void 0,void 0,(function*(){const i=yield e.l(t.request,o);try{return {vectorTile:new e.bt.VectorTile(new e.bu(i.data)),rawData:i.data,cacheControl:i.cacheControl,expires:i.expires}}catch(e){const o=new Uint8Array(i.data);let s=`Unable to parse the tile at ${t.request.url}, `;throw s+=31===o[0]&&139===o[1]?"please make sure the data is not gzipped and that you have configured the relevant header in the server":`got error: ${e.message}`,new Error(s)}}))}loadTile(t){return e._(this,void 0,void 0,(function*(){const o=t.uid,s=!!(t&&t.request&&t.request.collectResourceTiming)&&new e.bv(t.request),r=new i(t);this.loading[o]=r;const n=new AbortController;r.abort=n;try{const i=yield this.loadVectorTile(t,n);if(delete this.loading[o],!i)return null;const a=i.rawData,l={};i.expires&&(l.expires=i.expires),i.cacheControl&&(l.cacheControl=i.cacheControl);const c={};if(s){const e=s.finish();e&&(c.resourceTiming=JSON.parse(JSON.stringify(e)));}r.vectorTile=i.vectorTile;const u=r.parse(i.vectorTile,this.layerIndex,this.availableImages,this.actor);this.loaded[o]=r,this.fetching[o]={rawTileData:a,cacheControl:l,resourceTiming:c};try{const t=yield u;return e.e({rawTileData:a.slice(0)},t,l,c)}finally{delete this.fetching[o];}}catch(e){throw delete this.loading[o],r.status="done",this.loaded[o]=r,e}}))}reloadTile(t){return e._(this,void 0,void 0,(function*(){const o=t.uid;if(!this.loaded||!this.loaded[o])throw new Error("Should not be trying to reload a tile that was never loaded or has been removed");const i=this.loaded[o];if(i.showCollisionBoxes=t.showCollisionBoxes,"parsing"===i.status){const t=yield i.parse(i.vectorTile,this.layerIndex,this.availableImages,this.actor);let s;if(this.fetching[o]){const{rawTileData:i,cacheControl:r,resourceTiming:n}=this.fetching[o];delete this.fetching[o],s=e.e({rawTileData:i.slice(0)},t,r,n);}else s=t;return s}if("done"===i.status&&i.vectorTile)return i.parse(i.vectorTile,this.layerIndex,this.availableImages,this.actor)}))}abortTile(t){return e._(this,void 0,void 0,(function*(){const e=this.loading,o=t.uid;e&&e[o]&&e[o].abort&&(e[o].abort.abort(),delete e[o]);}))}removeTile(t){return e._(this,void 0,void 0,(function*(){this.loaded&&this.loaded[t.uid]&&delete this.loaded[t.uid];}))}}class n{constructor(){this.loaded={};}loadTile(t){return e._(this,void 0,void 0,(function*(){const{uid:o,encoding:i,rawImageData:s,redFactor:r,greenFactor:n,blueFactor:a,baseShift:l}=t,c=s.width+2,u=s.height+2,h=e.b(s)?new e.R({width:c,height:u},yield e.bw(s,-1,-1,c,u)):s,d=new e.bx(o,h,i,r,n,a,l);return this.loaded=this.loaded||{},this.loaded[o]=d,d}))}removeTile(e){const t=this.loaded,o=e.uid;t&&t[o]&&delete t[o];}}function a(e,t){if(0!==e.length){l(e[0],t);for(var o=1;o=Math.abs(a)?o-l+a:a-l+o,o=l;}o+i>=0!=!!t&&e.reverse();}var c=e.by((function e(t,o){var i,s=t&&t.type;if("FeatureCollection"===s)for(i=0;i>31}function I(e,t){for(var o=e.loadGeometry(),i=e.type,s=0,r=0,n=o.length,a=0;ae},D=Math.fround||(C=new Float32Array(1),e=>(C[0]=+e,C[0]));var C;const L=3,O=5,F=6;class z{constructor(e){this.options=Object.assign(Object.create(T),e),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[];}load(e){const{log:t,minZoom:o,maxZoom:i}=this.options;t&&console.time("total time");const s=`prepare ${e.length} points`;t&&console.time(s),this.points=e;const r=[];for(let t=0;t=o;e--){const o=+Date.now();n=this.trees[e]=this._createTree(this._cluster(n,e)),t&&console.log("z%d: %d clusters in %dms",e,n.numItems,+Date.now()-o);}return t&&console.timeEnd("total time"),this}getClusters(e,t){let o=((e[0]+180)%360+360)%360-180;const i=Math.max(-90,Math.min(90,e[1]));let s=180===e[2]?180:((e[2]+180)%360+360)%360-180;const r=Math.max(-90,Math.min(90,e[3]));if(e[2]-e[0]>=360)o=-180,s=180;else if(o>s){const e=this.getClusters([o,i,180,r],t),n=this.getClusters([-180,i,s,r],t);return e.concat(n)}const n=this.trees[this._limitZoom(t)],a=n.range(G(o),j(r),G(s),j(i)),l=n.data,c=[];for(const e of a){const t=this.stride*e;c.push(l[t+O]>1?A(l,t,this.clusterProps):this.points[l[t+L]]);}return c}getChildren(e){const t=this._getOriginId(e),o=this._getOriginZoom(e),i="No cluster with the specified id.",s=this.trees[o];if(!s)throw new Error(i);const r=s.data;if(t*this.stride>=r.length)throw new Error(i);const n=this.options.radius/(this.options.extent*Math.pow(2,o-1)),a=s.within(r[t*this.stride],r[t*this.stride+1],n),l=[];for(const t of a){const o=t*this.stride;r[o+4]===e&&l.push(r[o+O]>1?A(r,o,this.clusterProps):this.points[r[o+L]]);}if(0===l.length)throw new Error(i);return l}getLeaves(e,t,o){const i=[];return this._appendLeaves(i,e,t=t||10,o=o||0,0),i}getTile(e,t,o){const i=this.trees[this._limitZoom(e)],s=Math.pow(2,e),{extent:r,radius:n}=this.options,a=n/r,l=(o-a)/s,c=(o+1+a)/s,u={features:[]};return this._addTileFeatures(i.range((t-a)/s,l,(t+1+a)/s,c),i.data,t,o,s,u),0===t&&this._addTileFeatures(i.range(1-a/s,l,1,c),i.data,s,o,s,u),t===s-1&&this._addTileFeatures(i.range(0,l,a/s,c),i.data,-1,o,s,u),u.features.length?u:null}getClusterExpansionZoom(e){let t=this._getOriginZoom(e)-1;for(;t<=this.options.maxZoom;){const o=this.getChildren(e);if(t++,1!==o.length)break;e=o[0].properties.cluster_id;}return t}_appendLeaves(e,t,o,i,s){const r=this.getChildren(t);for(const t of r){const r=t.properties;if(r&&r.cluster?s+r.point_count<=i?s+=r.point_count:s=this._appendLeaves(e,r.cluster_id,o,i,s):s1;let l,c,u;if(a)l=E(t,e,this.clusterProps),c=t[e],u=t[e+1];else {const o=this.points[t[e+L]];l=o.properties;const[i,s]=o.geometry.coordinates;c=G(i),u=j(s);}const h={type:1,geometry:[[Math.round(this.options.extent*(c*s-o)),Math.round(this.options.extent*(u*s-i))]],tags:l};let d;d=a||this.options.generateId?t[e+L]:this.points[t[e+L]].id,void 0!==d&&(h.id=d),r.features.push(h);}}_limitZoom(e){return Math.max(this.options.minZoom,Math.min(Math.floor(+e),this.options.maxZoom+1))}_cluster(e,t){const{radius:o,extent:i,reduce:s,minPoints:r}=this.options,n=o/(i*Math.pow(2,t)),a=e.data,l=[],c=this.stride;for(let o=0;ot&&(f+=a[o+O]);}if(f>d&&f>=r){let e,r=i*d,n=u*d,g=-1;const p=((o/c|0)<<5)+(t+1)+this.points.length;for(const i of h){const l=i*c;if(a[l+2]<=t)continue;a[l+2]=t;const u=a[l+O];r+=a[l]*u,n+=a[l+1]*u,a[l+4]=p,s&&(e||(e=this._map(a,o,!0),g=this.clusterProps.length,this.clusterProps.push(e)),s(e,this._map(a,l)));}a[o+4]=p,l.push(r/f,n/f,1/0,p,-1,f),s&&l.push(g);}else {for(let e=0;e1)for(const e of h){const o=e*c;if(!(a[o+2]<=t)){a[o+2]=t;for(let e=0;e>5}_getOriginZoom(e){return (e-this.points.length)%32}_map(e,t,o){if(e[t+O]>1){const i=this.clusterProps[e[t+F]];return o?Object.assign({},i):i}const i=this.points[e[t+L]].properties,s=this.options.map(i);return o&&s===i?Object.assign({},s):s}}function A(e,t,o){return {type:"Feature",id:e[t+L],properties:E(e,t,o),geometry:{type:"Point",coordinates:[(i=e[t],360*(i-.5)),R(e[t+1])]}};var i;}function E(e,t,o){const i=e[t+O],s=i>=1e4?`${Math.round(i/1e3)}k`:i>=1e3?Math.round(i/100)/10+"k":i,r=e[t+F],n=-1===r?{}:Object.assign({},o[r]);return Object.assign(n,{cluster:!0,cluster_id:e[t+L],point_count:i,point_count_abbreviated:s})}function G(e){return e/360+.5}function j(e){const t=Math.sin(e*Math.PI/180),o=.5-.25*Math.log((1+t)/(1-t))/Math.PI;return o<0?0:o>1?1:o}function R(e){const t=(180-360*e)*Math.PI/180;return 360*Math.atan(Math.exp(t))/Math.PI-90}function Z(e,t,o,i){let s=i;const r=t+(o-t>>1);let n,a=o-t;const l=e[t],c=e[t+1],u=e[o],h=e[o+1];for(let i=t+3;is)n=i,s=t;else if(t===s){const e=Math.abs(i-r);ei&&(n-t>3&&Z(e,t,n,i),e[n+2]=s,o-n>3&&Z(e,n,o,i));}function N(e,t,o,i,s,r){let n=s-o,a=r-i;if(0!==n||0!==a){const l=((e-o)*n+(t-i)*a)/(n*n+a*a);l>1?(o=s,i=r):l>0&&(o+=n*l,i+=a*l);}return n=e-o,a=t-i,n*n+a*a}function J(e,t,o,i){const s={id:null==e?null:e,type:t,geometry:o,tags:i,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};if("Point"===t||"MultiPoint"===t||"LineString"===t)W(s,o);else if("Polygon"===t)W(s,o[0]);else if("MultiLineString"===t)for(const e of o)W(s,e);else if("MultiPolygon"===t)for(const e of o)W(s,e[0]);return s}function W(e,t){for(let o=0;o0&&(n+=i?(s*l-a*r)/2:Math.sqrt(Math.pow(a-s,2)+Math.pow(l-r,2))),s=a,r=l;}const a=t.length-3;t[2]=1,Z(t,0,a,o),t[a+2]=1,t.size=Math.abs(n),t.start=0,t.end=t.size;}function q(e,t,o,i){for(let s=0;s1?1:o}function U(e,t,o,i,s,r,n,a){if(i/=t,r>=(o/=t)&&n=i)return null;const l=[];for(const t of e){const e=t.geometry;let r=t.type;const n=0===s?t.minX:t.minY,c=0===s?t.maxX:t.maxY;if(n>=o&&c=i)continue;let u=[];if("Point"===r||"MultiPoint"===r)$(e,u,o,i,s);else if("LineString"===r)K(e,u,o,i,s,!1,a.lineMetrics);else if("MultiLineString"===r)ee(e,u,o,i,s,!1);else if("Polygon"===r)ee(e,u,o,i,s,!0);else if("MultiPolygon"===r)for(const t of e){const e=[];ee(t,e,o,i,s,!0),e.length&&u.push(e);}if(u.length){if(a.lineMetrics&&"LineString"===r){for(const e of u)l.push(J(t.id,r,e,t.tags));continue}"LineString"!==r&&"MultiLineString"!==r||(1===u.length?(r="LineString",u=u[0]):r="MultiLineString"),"Point"!==r&&"MultiPoint"!==r||(r=3===u.length?"Point":"MultiPoint"),l.push(J(t.id,r,u,t.tags));}}return l.length?l:null}function $(e,t,o,i,s){for(let r=0;r=o&&n<=i&&te(t,e[r],e[r+1],e[r+2]);}}function K(e,t,o,i,s,r,n){let a=Q(e);const l=0===s?oe:ie;let c,u,h=e.start;for(let d=0;do&&(u=l(a,f,g,m,y,o),n&&(a.start=h+c*u)):v>i?w=o&&(u=l(a,f,g,m,y,o),x=!0),w>i&&v<=i&&(u=l(a,f,g,m,y,i),x=!0),!r&&x&&(n&&(a.end=h+c*u),t.push(a),a=Q(e)),n&&(h+=c);}let d=e.length-3;const f=e[d],g=e[d+1],p=0===s?f:g;p>=o&&p<=i&&te(a,f,g,e[d+2]),d=a.length-3,r&&d>=3&&(a[d]!==a[0]||a[d+1]!==a[1])&&te(a,a[0],a[1],a[2]),a.length&&t.push(a);}function Q(e){const t=[];return t.size=e.size,t.start=e.start,t.end=e.end,t}function ee(e,t,o,i,s,r){for(const n of e)K(n,t,o,i,s,r,!1);}function te(e,t,o,i){e.push(t,o,i);}function oe(e,t,o,i,s,r){const n=(r-t)/(i-t);return te(e,r,o+(s-o)*n,1),n}function ie(e,t,o,i,s,r){const n=(r-o)/(s-o);return te(e,t+(i-t)*n,r,1),n}function se(e,t){const o=[];for(let i=0;i0&&t.size<(s?n:i))return void(o.numPoints+=t.length/3);const a=[];for(let e=0;en)&&(o.numSimplified++,a.push(t[e],t[e+1])),o.numPoints++;s&&function(e,t){let o=0;for(let t=0,i=e.length,s=i-2;t0===t)for(let t=0,o=e.length;t24)throw new Error("maxZoom should be in the 0-24 range");if(t.promoteId&&t.generateId)throw new Error("promoteId and generateId cannot be used together.");let i=function(e,t){const o=[];if("FeatureCollection"===e.type)for(let i=0;i1&&console.time("creation"),d=this.tiles[h]=le(e,t,o,i,l),this.tileCoords.push({z:t,x:o,y:i}),c)){c>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",t,o,i,d.numFeatures,d.numPoints,d.numSimplified),console.timeEnd("creation"));const e=`z${t}`;this.stats[e]=(this.stats[e]||0)+1,this.total++;}if(d.source=e,null==s){if(t===l.indexMaxZoom||d.numPoints<=l.indexMaxPoints)continue}else {if(t===l.maxZoom||t===s)continue;if(null!=s){const e=s-t;if(o!==r>>e||i!==n>>e)continue}}if(d.source=null,0===e.length)continue;c>1&&console.time("clipping");const f=.5*l.buffer/l.extent,g=.5-f,p=.5+f,m=1+f;let y=null,v=null,w=null,x=null,b=U(e,u,o-f,o+p,0,d.minX,d.maxX,l),S=U(e,u,o+g,o+m,0,d.minX,d.maxX,l);e=null,b&&(y=U(b,u,i-f,i+p,1,d.minY,d.maxY,l),v=U(b,u,i+g,i+m,1,d.minY,d.maxY,l),b=null),S&&(w=U(S,u,i-f,i+p,1,d.minY,d.maxY,l),x=U(S,u,i+g,i+m,1,d.minY,d.maxY,l),S=null),c>1&&console.timeEnd("clipping"),a.push(y||[],t+1,2*o,2*i),a.push(v||[],t+1,2*o,2*i+1),a.push(w||[],t+1,2*o+1,2*i),a.push(x||[],t+1,2*o+1,2*i+1);}}getTile(e,t,o){e=+e,t=+t,o=+o;const i=this.options,{extent:s,debug:r}=i;if(e<0||e>24)return null;const n=1<1&&console.log("drilling down to z%d-%d-%d",e,t,o);let l,c=e,u=t,h=o;for(;!l&&c>0;)c--,u>>=1,h>>=1,l=this.tiles[fe(c,u,h)];return l&&l.source?(r>1&&(console.log("found parent tile z%d-%d-%d",c,u,h),console.time("drilling down")),this.splitTile(l.source,c,u,h,e,t,o),r>1&&console.timeEnd("drilling down"),this.tiles[a]?ne(this.tiles[a],s):null):null}}function fe(e,t,o){return 32*((1<{n.properties=e;const t={};for(const e of a)t[e]=i[e].evaluate(r,n);return t},t.reduce=(e,t)=>{n.properties=t;for(const t of a)r.accumulated=e[t],e[t]=s[t].evaluate(r,n);},t}(t)).load((yield this._pendingData).features):(s=yield this._pendingData,new de(s,t.geojsonVtOptions)),this.loaded={};const o={};if(i){const e=i.finish();e&&(o.resourceTiming={},o.resourceTiming[t.source]=JSON.parse(JSON.stringify(e)));}return o}catch(t){if(delete this._pendingRequest,e.bB(t))return {abandoned:!0};throw t}var s;}))}getData(){return e._(this,void 0,void 0,(function*(){return this._pendingData}))}reloadTile(e){const t=this.loaded;return t&&t[e.uid]?super.reloadTile(e):this.loadTile(e)}loadAndProcessGeoJSON(t,o){return e._(this,void 0,void 0,(function*(){let i=yield this.loadGeoJSON(t,o);if(delete this._pendingRequest,"object"!=typeof i)throw new Error(`Input data given to '${t.source}' is not a valid GeoJSON object.`);if(c(i,!0),t.filter){const o=e.bC(t.filter,{type:"boolean","property-type":"data-driven",overridable:!1,transition:!1});if("error"===o.result)throw new Error(o.value.map((e=>`${e.key}: ${e.message}`)).join(", "));const s=i.features.filter((e=>o.value.evaluate({zoom:0},e)));i={type:"FeatureCollection",features:s};}return i}))}loadGeoJSON(t,o){return e._(this,void 0,void 0,(function*(){const{promoteId:i}=t;if(t.request){const s=yield e.h(t.request,o);return this._dataUpdateable=pe(s.data,i)?me(s.data,i):void 0,s.data}if("string"==typeof t.data)try{const e=JSON.parse(t.data);return this._dataUpdateable=pe(e,i)?me(e,i):void 0,e}catch(e){throw new Error(`Input data given to '${t.source}' is not a valid GeoJSON object.`)}if(!t.dataDiff)throw new Error(`Input data given to '${t.source}' is not a valid GeoJSON object.`);if(!this._dataUpdateable)throw new Error(`Cannot update existing geojson data in ${t.source}`);return function(e,t,o){var i,s,r,n;if(t.removeAll&&e.clear(),t.remove)for(const o of t.remove)e.delete(o);if(t.add)for(const i of t.add){const t=ge(i,o);null!=t&&e.set(t,i);}if(t.update)for(const o of t.update){let t=e.get(o.id);if(null==t)continue;const a=!o.removeAllProperties&&((null===(i=o.removeProperties)||void 0===i?void 0:i.length)>0||(null===(s=o.addOrUpdateProperties)||void 0===s?void 0:s.length)>0);if((o.newGeometry||o.removeAllProperties||a)&&(t=Object.assign({},t),e.set(o.id,t),a&&(t.properties=Object.assign({},t.properties))),o.newGeometry&&(t.geometry=o.newGeometry),o.removeAllProperties)t.properties={};else if((null===(r=o.removeProperties)||void 0===r?void 0:r.length)>0)for(const e of o.removeProperties)Object.prototype.hasOwnProperty.call(t.properties,e)&&delete t.properties[e];if((null===(n=o.addOrUpdateProperties)||void 0===n?void 0:n.length)>0)for(const{key:e,value:i}of o.addOrUpdateProperties)t.properties[e]=i;}}(this._dataUpdateable,t.dataDiff,i),{type:"FeatureCollection",features:Array.from(this._dataUpdateable.values())}}))}removeSource(t){return e._(this,void 0,void 0,(function*(){this._pendingRequest&&this._pendingRequest.abort();}))}getClusterExpansionZoom(e){return this._geoJSONIndex.getClusterExpansionZoom(e.clusterId)}getClusterChildren(e){return this._geoJSONIndex.getChildren(e.clusterId)}getClusterLeaves(e){return this._geoJSONIndex.getLeaves(e.clusterId,e.limit,e.offset)}}class ve{constructor(t){this.self=t,this.actor=new e.F(t),this.layerIndexes={},this.availableImages={},this.workerSources={},this.demWorkerSources={},this.externalWorkerSourceTypes={},this.self.registerWorkerSource=(e,t)=>{if(this.externalWorkerSourceTypes[e])throw new Error(`Worker source with name "${e}" already registered.`);this.externalWorkerSourceTypes[e]=t;},this.self.addProtocol=e.bi,this.self.removeProtocol=e.bj,this.self.registerRTLTextPlugin=t=>{if(e.bD.isParsed())throw new Error("RTL text plugin already registered.");e.bD.setMethods(t);},this.actor.registerMessageHandler("LDT",((e,t)=>this._getDEMWorkerSource(e,t.source).loadTile(t))),this.actor.registerMessageHandler("RDT",((t,o)=>e._(this,void 0,void 0,(function*(){this._getDEMWorkerSource(t,o.source).removeTile(o);})))),this.actor.registerMessageHandler("GCEZ",((t,o)=>e._(this,void 0,void 0,(function*(){return this._getWorkerSource(t,o.type,o.source).getClusterExpansionZoom(o)})))),this.actor.registerMessageHandler("GCC",((t,o)=>e._(this,void 0,void 0,(function*(){return this._getWorkerSource(t,o.type,o.source).getClusterChildren(o)})))),this.actor.registerMessageHandler("GCL",((t,o)=>e._(this,void 0,void 0,(function*(){return this._getWorkerSource(t,o.type,o.source).getClusterLeaves(o)})))),this.actor.registerMessageHandler("LD",((e,t)=>this._getWorkerSource(e,t.type,t.source).loadData(t))),this.actor.registerMessageHandler("GD",((e,t)=>this._getWorkerSource(e,t.type,t.source).getData())),this.actor.registerMessageHandler("LT",((e,t)=>this._getWorkerSource(e,t.type,t.source).loadTile(t))),this.actor.registerMessageHandler("RT",((e,t)=>this._getWorkerSource(e,t.type,t.source).reloadTile(t))),this.actor.registerMessageHandler("AT",((e,t)=>this._getWorkerSource(e,t.type,t.source).abortTile(t))),this.actor.registerMessageHandler("RMT",((e,t)=>this._getWorkerSource(e,t.type,t.source).removeTile(t))),this.actor.registerMessageHandler("RS",((t,o)=>e._(this,void 0,void 0,(function*(){if(!this.workerSources[t]||!this.workerSources[t][o.type]||!this.workerSources[t][o.type][o.source])return;const e=this.workerSources[t][o.type][o.source];delete this.workerSources[t][o.type][o.source],void 0!==e.removeSource&&e.removeSource(o);})))),this.actor.registerMessageHandler("RM",(t=>e._(this,void 0,void 0,(function*(){delete this.layerIndexes[t],delete this.availableImages[t],delete this.workerSources[t],delete this.demWorkerSources[t];})))),this.actor.registerMessageHandler("SR",((t,o)=>e._(this,void 0,void 0,(function*(){this.referrer=o;})))),this.actor.registerMessageHandler("SRPS",((e,t)=>this._syncRTLPluginState(e,t))),this.actor.registerMessageHandler("IS",((t,o)=>e._(this,void 0,void 0,(function*(){this.self.importScripts(o);})))),this.actor.registerMessageHandler("SI",((e,t)=>this._setImages(e,t))),this.actor.registerMessageHandler("UL",((t,o)=>e._(this,void 0,void 0,(function*(){this._getLayerIndex(t).update(o.layers,o.removedIds);})))),this.actor.registerMessageHandler("SL",((t,o)=>e._(this,void 0,void 0,(function*(){this._getLayerIndex(t).replace(o);}))));}_setImages(t,o){return e._(this,void 0,void 0,(function*(){this.availableImages[t]=o;for(const e in this.workerSources[t]){const i=this.workerSources[t][e];for(const e in i)i[e].availableImages=o;}}))}_syncRTLPluginState(t,o){return e._(this,void 0,void 0,(function*(){if(e.bD.isParsed())return e.bD.getState();if("loading"!==o.pluginStatus)return e.bD.setState(o),o;const t=o.pluginURL;if(this.self.importScripts(t),e.bD.isParsed()){const o={pluginStatus:"loaded",pluginURL:t};return e.bD.setState(o),o}throw e.bD.setState({pluginStatus:"error",pluginURL:""}),new Error(`RTL Text Plugin failed to import scripts from ${t}`)}))}_getAvailableImages(e){let t=this.availableImages[e];return t||(t=[]),t}_getLayerIndex(e){let o=this.layerIndexes[e];return o||(o=this.layerIndexes[e]=new t),o}_getWorkerSource(e,t,o){if(this.workerSources[e]||(this.workerSources[e]={}),this.workerSources[e][t]||(this.workerSources[e][t]={}),!this.workerSources[e][t][o]){const i={sendAsync:(t,o)=>(t.targetMapId=e,this.actor.sendAsync(t,o))};switch(t){case"vector":this.workerSources[e][t][o]=new r(i,this._getLayerIndex(e),this._getAvailableImages(e));break;case"geojson":this.workerSources[e][t][o]=new ye(i,this._getLayerIndex(e),this._getAvailableImages(e));break;default:this.workerSources[e][t][o]=new this.externalWorkerSourceTypes[t](i,this._getLayerIndex(e),this._getAvailableImages(e));}}return this.workerSources[e][t][o]}_getDEMWorkerSource(e,t){return this.demWorkerSources[e]||(this.demWorkerSources[e]={}),this.demWorkerSources[e][t]||(this.demWorkerSources[e][t]=new n),this.demWorkerSources[e][t]}}return e.i(self)&&(self.worker=new ve(self)),ve})); + +define("index",["exports","./shared"],(function(t,e){"use strict";var i="4.7.1";let a,s;const o={now:"undefined"!=typeof performance&&performance&&performance.now?performance.now.bind(performance):Date.now.bind(Date),frameAsync:t=>new Promise(((i,a)=>{const s=requestAnimationFrame(i);t.signal.addEventListener("abort",(()=>{cancelAnimationFrame(s),a(e.c());}));})),getImageData(t,e=0){return this.getImageCanvasContext(t).getImageData(-e,-e,t.width+2*e,t.height+2*e)},getImageCanvasContext(t){const e=window.document.createElement("canvas"),i=e.getContext("2d",{willReadFrequently:!0});if(!i)throw new Error("failed to create canvas 2d context");return e.width=t.width,e.height=t.height,i.drawImage(t,0,0,t.width,t.height),i},resolveURL:t=>(a||(a=document.createElement("a")),a.href=t,a.href),hardwareConcurrency:"undefined"!=typeof navigator&&navigator.hardwareConcurrency||4,get prefersReducedMotion(){return !!matchMedia&&(null==s&&(s=matchMedia("(prefers-reduced-motion: reduce)")),s.matches)}};class r{static testProp(t){if(!r.docStyle)return t[0];for(let e=0;e{window.removeEventListener("click",r.suppressClickInternal,!0);}),0);}static getScale(t){const e=t.getBoundingClientRect();return {x:e.width/t.offsetWidth||1,y:e.height/t.offsetHeight||1,boundingClientRect:e}}static getPoint(t,i,a){const s=i.boundingClientRect;return new e.P((a.clientX-s.left)/i.x-t.clientLeft,(a.clientY-s.top)/i.y-t.clientTop)}static mousePos(t,e){const i=r.getScale(t);return r.getPoint(t,i,e)}static touchPos(t,e){const i=[],a=r.getScale(t);for(let s=0;s{l&&d(l),l=null,u=!0;},h.onerror=()=>{c=!0,l=null;},h.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA="),function(t){let i,a,s,o;t.resetRequestQueue=()=>{i=[],a=0,s=0,o={};},t.addThrottleControl=t=>{const e=s++;return o[e]=t,e},t.removeThrottleControl=t=>{delete o[t],l();},t.getImage=(t,a,s=!0)=>new Promise(((o,r)=>{n.supported&&(t.headers||(t.headers={}),t.headers.accept="image/webp,*/*"),e.e(t,{type:"image"}),i.push({abortController:a,requestParameters:t,supportImageRefresh:s,state:"queued",onError:t=>{r(t);},onSuccess:t=>{o(t);}}),l();}));const r=t=>e._(this,void 0,void 0,(function*(){t.state="running";const{requestParameters:i,supportImageRefresh:s,onError:o,onSuccess:r,abortController:n}=t,c=!1===s&&!e.i(self)&&!e.g(i.url)&&(!i.headers||Object.keys(i.headers).reduce(((t,e)=>t&&"accept"===e),!0));a++;const u=c?h(i,n):e.m(i,n);try{const i=yield u;delete t.abortController,t.state="completed",i.data instanceof HTMLImageElement||e.b(i.data)?r(i):i.data&&r({data:yield(d=i.data,"function"==typeof createImageBitmap?e.d(d):e.f(d)),cacheControl:i.cacheControl,expires:i.expires});}catch(e){delete t.abortController,o(e);}finally{a--,l();}var d;})),l=()=>{const t=(()=>{for(const t of Object.keys(o))if(o[t]())return !0;return !1})()?e.a.MAX_PARALLEL_IMAGE_REQUESTS_PER_FRAME:e.a.MAX_PARALLEL_IMAGE_REQUESTS;for(let e=a;e0;e++){const t=i.shift();t.abortController.signal.aborted?e--:r(t);}},h=(t,i)=>new Promise(((a,s)=>{const o=new Image,r=t.url,n=t.credentials;n&&"include"===n?o.crossOrigin="use-credentials":(n&&"same-origin"===n||!e.s(r))&&(o.crossOrigin="anonymous"),i.signal.addEventListener("abort",(()=>{o.src="",s(e.c());})),o.fetchPriority="high",o.onload=()=>{o.onerror=o.onload=null,a({data:o});},o.onerror=()=>{o.onerror=o.onload=null,i.signal.aborted||s(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."));},o.src=r;}));}(_||(_={})),_.resetRequestQueue();class p{constructor(t){this._transformRequestFn=t;}transformRequest(t,e){return this._transformRequestFn&&this._transformRequestFn(t,e)||{url:t}}setTransformRequest(t){this._transformRequestFn=t;}}function m(t){var i=new e.A(3);return i[0]=t[0],i[1]=t[1],i[2]=t[2],i}var f,g=function(t,e,i){return t[0]=e[0]-i[0],t[1]=e[1]-i[1],t[2]=e[2]-i[2],t};f=new e.A(3),e.A!=Float32Array&&(f[0]=0,f[1]=0,f[2]=0);var v=function(t){var e=t[0],i=t[1];return e*e+i*i};function x(t){const e=[];if("string"==typeof t)e.push({id:"default",url:t});else if(t&&t.length>0){const i=[];for(const{id:a,url:s}of t){const t=`${a}${s}`;-1===i.indexOf(t)&&(i.push(t),e.push({id:a,url:s}));}}return e}function y(t,e,i){const a=t.split("?");return a[0]+=`${e}${i}`,a.join("?")}!function(){var t=new e.A(2);e.A!=Float32Array&&(t[0]=0,t[1]=0);}();class b{constructor(t,e,i,a){this.context=t,this.format=i,this.texture=t.gl.createTexture(),this.update(e,a);}update(t,i,a){const{width:s,height:o}=t,r=!(this.size&&this.size[0]===s&&this.size[1]===o||a),{context:n}=this,{gl:l}=n;if(this.useMipmap=Boolean(i&&i.useMipmap),l.bindTexture(l.TEXTURE_2D,this.texture),n.pixelStoreUnpackFlipY.set(!1),n.pixelStoreUnpack.set(1),n.pixelStoreUnpackPremultiplyAlpha.set(this.format===l.RGBA&&(!i||!1!==i.premultiply)),r)this.size=[s,o],t instanceof HTMLImageElement||t instanceof HTMLCanvasElement||t instanceof HTMLVideoElement||t instanceof ImageData||e.b(t)?l.texImage2D(l.TEXTURE_2D,0,this.format,this.format,l.UNSIGNED_BYTE,t):l.texImage2D(l.TEXTURE_2D,0,this.format,s,o,0,this.format,l.UNSIGNED_BYTE,t.data);else {const{x:i,y:r}=a||{x:0,y:0};t instanceof HTMLImageElement||t instanceof HTMLCanvasElement||t instanceof HTMLVideoElement||t instanceof ImageData||e.b(t)?l.texSubImage2D(l.TEXTURE_2D,0,i,r,l.RGBA,l.UNSIGNED_BYTE,t):l.texSubImage2D(l.TEXTURE_2D,0,i,r,s,o,l.RGBA,l.UNSIGNED_BYTE,t.data);}this.useMipmap&&this.isSizePowerOfTwo()&&l.generateMipmap(l.TEXTURE_2D);}bind(t,e,i){const{context:a}=this,{gl:s}=a;s.bindTexture(s.TEXTURE_2D,this.texture),i!==s.LINEAR_MIPMAP_NEAREST||this.isSizePowerOfTwo()||(i=s.LINEAR),t!==this.filter&&(s.texParameteri(s.TEXTURE_2D,s.TEXTURE_MAG_FILTER,t),s.texParameteri(s.TEXTURE_2D,s.TEXTURE_MIN_FILTER,i||t),this.filter=t),e!==this.wrap&&(s.texParameteri(s.TEXTURE_2D,s.TEXTURE_WRAP_S,e),s.texParameteri(s.TEXTURE_2D,s.TEXTURE_WRAP_T,e),this.wrap=e);}isSizePowerOfTwo(){return this.size[0]===this.size[1]&&Math.log(this.size[0])/Math.LN2%1==0}destroy(){const{gl:t}=this.context;t.deleteTexture(this.texture),this.texture=null;}}function w(t){const{userImage:e}=t;return !!(e&&e.render&&e.render())&&(t.data.replace(new Uint8Array(e.data.buffer)),!0)}class T extends e.E{constructor(){super(),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new e.R({width:1,height:1}),this.dirty=!0;}isLoaded(){return this.loaded}setLoaded(t){if(this.loaded!==t&&(this.loaded=t,t)){for(const{ids:t,promiseResolve:e}of this.requestors)e(this._getImagesForIds(t));this.requestors=[];}}getImage(t){const i=this.images[t];if(i&&!i.data&&i.spriteData){const t=i.spriteData;i.data=new e.R({width:t.width,height:t.height},t.context.getImageData(t.x,t.y,t.width,t.height).data),i.spriteData=null;}return i}addImage(t,e){if(this.images[t])throw new Error(`Image id ${t} already exist, use updateImage instead`);this._validate(t,e)&&(this.images[t]=e);}_validate(t,i){let a=!0;const s=i.data||i.spriteData;return this._validateStretch(i.stretchX,s&&s.width)||(this.fire(new e.j(new Error(`Image "${t}" has invalid "stretchX" value`))),a=!1),this._validateStretch(i.stretchY,s&&s.height)||(this.fire(new e.j(new Error(`Image "${t}" has invalid "stretchY" value`))),a=!1),this._validateContent(i.content,i)||(this.fire(new e.j(new Error(`Image "${t}" has invalid "content" value`))),a=!1),a}_validateStretch(t,e){if(!t)return !0;let i=0;for(const a of t){if(a[0]{let a=!0;if(!this.isLoaded())for(const e of t)this.images[e]||(a=!1);this.isLoaded()||a?e(this._getImagesForIds(t)):this.requestors.push({ids:t,promiseResolve:e});}))}_getImagesForIds(t){const i={};for(const a of t){let t=this.getImage(a);t||(this.fire(new e.k("styleimagemissing",{id:a})),t=this.getImage(a)),t?i[a]={data:t.data.clone(),pixelRatio:t.pixelRatio,sdf:t.sdf,version:t.version,stretchX:t.stretchX,stretchY:t.stretchY,content:t.content,textFitWidth:t.textFitWidth,textFitHeight:t.textFitHeight,hasRenderCallback:Boolean(t.userImage&&t.userImage.render)}:e.w(`Image "${a}" could not be loaded. Please make sure you have added the image with map.addImage() or a "sprite" property in your style. You can provide missing images by listening for the "styleimagemissing" map event.`);}return i}getPixelSize(){const{width:t,height:e}=this.atlasImage;return {width:t,height:e}}getPattern(t){const i=this.patterns[t],a=this.getImage(t);if(!a)return null;if(i&&i.position.version===a.version)return i.position;if(i)i.position.version=a.version;else {const i={w:a.data.width+2,h:a.data.height+2,x:0,y:0},s=new e.I(i,a);this.patterns[t]={bin:i,position:s};}return this._updatePatternAtlas(),this.patterns[t].position}bind(t){const e=t.gl;this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new b(t,this.atlasImage,e.RGBA),this.atlasTexture.bind(e.LINEAR,e.CLAMP_TO_EDGE);}_updatePatternAtlas(){const t=[];for(const e in this.patterns)t.push(this.patterns[e].bin);const{w:i,h:a}=e.p(t),s=this.atlasImage;s.resize({width:i||1,height:a||1});for(const t in this.patterns){const{bin:i}=this.patterns[t],a=i.x+1,o=i.y+1,r=this.getImage(t).data,n=r.width,l=r.height;e.R.copy(r,s,{x:0,y:0},{x:a,y:o},{width:n,height:l}),e.R.copy(r,s,{x:0,y:l-1},{x:a,y:o-1},{width:n,height:1}),e.R.copy(r,s,{x:0,y:0},{x:a,y:o+l},{width:n,height:1}),e.R.copy(r,s,{x:n-1,y:0},{x:a-1,y:o},{width:1,height:l}),e.R.copy(r,s,{x:0,y:0},{x:a+n,y:o},{width:1,height:l});}this.dirty=!0;}beginFrame(){this.callbackDispatchedThisFrame={};}dispatchRenderCallbacks(t){for(const i of t){if(this.callbackDispatchedThisFrame[i])continue;this.callbackDispatchedThisFrame[i]=!0;const t=this.getImage(i);t||e.w(`Image with ID: "${i}" was not found`),w(t)&&this.updateImage(i,t);}}}const I=1e20;function E(t,e,i,a,s,o,r,n,l){for(let h=e;h-1);l++,o[l]=n,r[l]=h,r[l+1]=I;}for(let n=0,l=0;n65535)throw new Error("glyphs > 65535 not supported");if(e.ranges[s])return {stack:t,id:i,glyph:a};if(!this.url)throw new Error("glyphsUrl is not set");if(!e.requests[s]){const i=C.loadGlyphRange(t,s,this.url,this.requestManager);e.requests[s]=i;}const o=yield e.requests[s];for(const t in o)this._doesCharSupportLocalGlyph(+t)||(e.glyphs[+t]=o[+t]);return e.ranges[s]=!0,{stack:t,id:i,glyph:o[i]||null}}))}_doesCharSupportLocalGlyph(t){return !!this.localIdeographFontFamily&&/\p{Ideo}|\p{sc=Hang}|\p{sc=Hira}|\p{sc=Kana}/u.test(String.fromCodePoint(t))}_tinySDF(t,i,a){const s=this.localIdeographFontFamily;if(!s)return;if(!this._doesCharSupportLocalGlyph(a))return;let o=t.tinySDF;if(!o){let e="400";/bold/i.test(i)?e="900":/medium/i.test(i)?e="500":/light/i.test(i)&&(e="200"),o=t.tinySDF=new C.TinySDF({fontSize:48,buffer:6,radius:16,cutoff:.25,fontFamily:s,fontWeight:e});}const r=o.draw(String.fromCharCode(a));return {id:a,bitmap:new e.o({width:r.width||60,height:r.height||60},r.data),metrics:{width:r.glyphWidth/2||24,height:r.glyphHeight/2||24,left:r.glyphLeft/2+.5||0,top:r.glyphTop/2-27.5||-8,advance:r.glyphAdvance/2||24,isDoubleResolution:!0}}}}C.loadGlyphRange=function(t,i,a,s){return e._(this,void 0,void 0,(function*(){const o=256*i,r=o+255,n=s.transformRequest(a.replace("{fontstack}",t).replace("{range}",`${o}-${r}`),"Glyphs"),l=yield e.l(n,new AbortController);if(!l||!l.data)throw new Error(`Could not load glyph range. range: ${i}, ${o}-${r}`);const h={};for(const t of e.n(l.data))h[t.id]=t;return h}))},C.TinySDF=class{constructor({fontSize:t=24,buffer:e=3,radius:i=8,cutoff:a=.25,fontFamily:s="sans-serif",fontWeight:o="normal",fontStyle:r="normal"}={}){this.buffer=e,this.cutoff=a,this.radius=i;const n=this.size=t+4*e,l=this._createCanvas(n),h=this.ctx=l.getContext("2d",{willReadFrequently:!0});h.font=`${r} ${o} ${t}px ${s}`,h.textBaseline="alphabetic",h.textAlign="left",h.fillStyle="black",this.gridOuter=new Float64Array(n*n),this.gridInner=new Float64Array(n*n),this.f=new Float64Array(n),this.z=new Float64Array(n+1),this.v=new Uint16Array(n);}_createCanvas(t){const e=document.createElement("canvas");return e.width=e.height=t,e}draw(t){const{width:e,actualBoundingBoxAscent:i,actualBoundingBoxDescent:a,actualBoundingBoxLeft:s,actualBoundingBoxRight:o}=this.ctx.measureText(t),r=Math.ceil(i),n=Math.max(0,Math.min(this.size-this.buffer,Math.ceil(o-s))),l=Math.min(this.size-this.buffer,r+Math.ceil(a)),h=n+2*this.buffer,c=l+2*this.buffer,u=Math.max(h*c,0),d=new Uint8ClampedArray(u),_={data:d,width:h,height:c,glyphWidth:n,glyphHeight:l,glyphTop:r,glyphLeft:0,glyphAdvance:e};if(0===n||0===l)return _;const{ctx:p,buffer:m,gridInner:f,gridOuter:g}=this;p.clearRect(m,m,n,l),p.fillText(t,m,m+r);const v=p.getImageData(m,m,n,l);g.fill(I,0,u),f.fill(0,0,u);for(let t=0;t0?t*t:0,f[a]=t<0?t*t:0;}}E(g,0,0,h,c,h,this.f,this.v,this.z),E(f,m,m,n,l,h,this.f,this.v,this.z);for(let t=0;t1&&(r=t[++o]);const l=Math.abs(n-r.left),h=Math.abs(n-r.right),c=Math.min(l,h);let u;const d=e/i*(a+1);if(r.isDash){const t=a-Math.abs(d);u=Math.sqrt(c*c+t*t);}else u=a-Math.sqrt(c*c+d*d);this.data[s+n]=Math.max(0,Math.min(255,u+128));}}}addRegularDash(t){for(let e=t.length-1;e>=0;--e){const i=t[e],a=t[e+1];i.zeroLength?t.splice(e,1):a&&a.isDash===i.isDash&&(a.left=i.left,t.splice(e,1));}const e=t[0],i=t[t.length-1];e.isDash===i.isDash&&(e.left=i.left-this.width,i.right=e.right+this.width);const a=this.width*this.nextRow;let s=0,o=t[s];for(let e=0;e1&&(o=t[++s]);const i=Math.abs(e-o.left),r=Math.abs(e-o.right),n=Math.min(i,r);this.data[a+e]=Math.max(0,Math.min(255,(o.isDash?n:-n)+128));}}addDash(t,i){const a=i?7:0,s=2*a+1;if(this.nextRow+s>this.height)return e.w("LineAtlas out of space"),null;let o=0;for(let e=0;e{t.terminate();})),this.workers=null);}isPreloaded(){return !!this.active[k]}numActive(){return Object.keys(this.active).length}}const F=Math.floor(o.hardwareConcurrency/2);let B,O;function N(){return B||(B=new L),B}L.workerCount=e.C(globalThis)?Math.max(Math.min(F,3),1):1;class U{constructor(t,i){this.workerPool=t,this.actors=[],this.currentActor=0,this.id=i;const a=this.workerPool.acquire(i);for(let t=0;t{t.remove();})),this.actors=[],t&&this.workerPool.release(this.id);}registerMessageHandler(t,e){for(const i of this.actors)i.registerMessageHandler(t,e);}}function j(){return O||(O=new U(N(),e.G),O.registerMessageHandler("GR",((t,i,a)=>e.m(i,a)))),O}function Z(t,i){const a=e.H();return e.J(a,a,[1,1,0]),e.K(a,a,[.5*t.width,.5*t.height,1]),e.L(a,a,t.calculatePosMatrix(i.toUnwrapped()))}function q(t,e,i,a,s,o){const r=function(t,e,i){if(t)for(const a of t){const t=e[a];if(t&&t.source===i&&"fill-extrusion"===t.type)return !0}else for(const t in e){const a=e[t];if(a.source===i&&"fill-extrusion"===a.type)return !0}return !1}(s&&s.layers,e,t.id),n=o.maxPitchScaleFactor(),l=t.tilesIn(a,n,r);l.sort(V);const h=[];for(const a of l)h.push({wrappedTileID:a.tileID.wrapped().key,queryResults:a.tile.queryRenderedFeatures(e,i,t._state,a.queryGeometry,a.cameraQueryGeometry,a.scale,s,o,n,Z(t.transform,a.tileID))});const c=function(t){const e={},i={};for(const a of t){const t=a.queryResults,s=a.wrappedTileID,o=i[s]=i[s]||{};for(const i in t){const a=t[i],s=o[i]=o[i]||{},r=e[i]=e[i]||[];for(const t of a)s[t.featureIndex]||(s[t.featureIndex]=!0,r.push(t));}}return e}(h);for(const e in c)c[e].forEach((e=>{const i=e.feature,a=t.getFeatureState(i.layer["source-layer"],i.id);i.source=i.layer.source,i.layer["source-layer"]&&(i.sourceLayer=i.layer["source-layer"]),i.state=a;}));return c}function V(t,e){const i=t.tileID,a=e.tileID;return i.overscaledZ-a.overscaledZ||i.canonical.y-a.canonical.y||i.wrap-a.wrap||i.canonical.x-a.canonical.x}function G(t,i,a){return e._(this,void 0,void 0,(function*(){let s=t;if(t.url?s=(yield e.h(i.transformRequest(t.url,"Source"),a)).data:yield o.frameAsync(a),!s)return null;const r=e.M(e.e(s,t),["tiles","minzoom","maxzoom","attribution","bounds","scheme","tileSize","encoding"]);return "vector_layers"in s&&s.vector_layers&&(r.vectorLayerIds=s.vector_layers.map((t=>t.id))),r}))}class H{constructor(t,e){t&&(e?this.setSouthWest(t).setNorthEast(e):Array.isArray(t)&&(4===t.length?this.setSouthWest([t[0],t[1]]).setNorthEast([t[2],t[3]]):this.setSouthWest(t[0]).setNorthEast(t[1])));}setNorthEast(t){return this._ne=t instanceof e.N?new e.N(t.lng,t.lat):e.N.convert(t),this}setSouthWest(t){return this._sw=t instanceof e.N?new e.N(t.lng,t.lat):e.N.convert(t),this}extend(t){const i=this._sw,a=this._ne;let s,o;if(t instanceof e.N)s=t,o=t;else {if(!(t instanceof H))return Array.isArray(t)?4===t.length||t.every(Array.isArray)?this.extend(H.convert(t)):this.extend(e.N.convert(t)):t&&("lng"in t||"lon"in t)&&"lat"in t?this.extend(e.N.convert(t)):this;if(s=t._sw,o=t._ne,!s||!o)return this}return i||a?(i.lng=Math.min(s.lng,i.lng),i.lat=Math.min(s.lat,i.lat),a.lng=Math.max(o.lng,a.lng),a.lat=Math.max(o.lat,a.lat)):(this._sw=new e.N(s.lng,s.lat),this._ne=new e.N(o.lng,o.lat)),this}getCenter(){return new e.N((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)}getSouthWest(){return this._sw}getNorthEast(){return this._ne}getNorthWest(){return new e.N(this.getWest(),this.getNorth())}getSouthEast(){return new e.N(this.getEast(),this.getSouth())}getWest(){return this._sw.lng}getSouth(){return this._sw.lat}getEast(){return this._ne.lng}getNorth(){return this._ne.lat}toArray(){return [this._sw.toArray(),this._ne.toArray()]}toString(){return `LngLatBounds(${this._sw.toString()}, ${this._ne.toString()})`}isEmpty(){return !(this._sw&&this._ne)}contains(t){const{lng:i,lat:a}=e.N.convert(t);let s=this._sw.lng<=i&&i<=this._ne.lng;return this._sw.lng>this._ne.lng&&(s=this._sw.lng>=i&&i>=this._ne.lng),this._sw.lat<=a&&a<=this._ne.lat&&s}static convert(t){return t instanceof H?t:t?new H(t):t}static fromLngLat(t,i=0){const a=360*i/40075017,s=a/Math.cos(Math.PI/180*t.lat);return new H(new e.N(t.lng-s,t.lat-a),new e.N(t.lng+s,t.lat+a))}adjustAntiMeridian(){const t=new e.N(this._sw.lng,this._sw.lat),i=new e.N(this._ne.lng,this._ne.lat);return new H(t,t.lng>i.lng?new e.N(i.lng+360,i.lat):i)}}class W{constructor(t,e,i){this.bounds=H.convert(this.validateBounds(t)),this.minzoom=e||0,this.maxzoom=i||24;}validateBounds(t){return Array.isArray(t)&&4===t.length?[Math.max(-180,t[0]),Math.max(-90,t[1]),Math.min(180,t[2]),Math.min(90,t[3])]:[-180,-90,180,90]}contains(t){const i=Math.pow(2,t.z),a=Math.floor(e.O(this.bounds.getWest())*i),s=Math.floor(e.Q(this.bounds.getNorth())*i),o=Math.ceil(e.O(this.bounds.getEast())*i),r=Math.ceil(e.Q(this.bounds.getSouth())*i);return t.x>=a&&t.x=s&&t.y{this._options.tiles=t;})),this}setUrl(t){return this.setSourceProperty((()=>{this.url=t,this._options.url=t;})),this}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null);}serialize(){return e.e({},this._options)}loadTile(t){return e._(this,void 0,void 0,(function*(){const e=t.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),i={request:this.map._requestManager.transformRequest(e,"Tile"),uid:t.uid,tileID:t.tileID,zoom:t.tileID.overscaledZ,tileSize:this.tileSize*t.tileID.overscaleFactor(),type:this.type,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};i.request.collectResourceTiming=this._collectResourceTiming;let a="RT";if(t.actor&&"expired"!==t.state){if("loading"===t.state)return new Promise(((e,i)=>{t.reloadPromise={resolve:e,reject:i};}))}else t.actor=this.dispatcher.getActor(),a="LT";t.abortController=new AbortController;try{const e=yield t.actor.sendAsync({type:a,data:i},t.abortController);if(delete t.abortController,t.aborted)return;this._afterTileLoadWorkerResponse(t,e);}catch(e){if(delete t.abortController,t.aborted)return;if(e&&404!==e.status)throw e;this._afterTileLoadWorkerResponse(t,null);}}))}_afterTileLoadWorkerResponse(t,e){if(e&&e.resourceTiming&&(t.resourceTiming=e.resourceTiming),e&&this.map._refreshExpiredTiles&&t.setExpiryData(e),t.loadVectorData(e,this.map.painter),t.reloadPromise){const e=t.reloadPromise;t.reloadPromise=null,this.loadTile(t).then(e.resolve).catch(e.reject);}}abortTile(t){return e._(this,void 0,void 0,(function*(){t.abortController&&(t.abortController.abort(),delete t.abortController),t.actor&&(yield t.actor.sendAsync({type:"AT",data:{uid:t.uid,type:this.type,source:this.id}}));}))}unloadTile(t){return e._(this,void 0,void 0,(function*(){t.unloadVectorData(),t.actor&&(yield t.actor.sendAsync({type:"RMT",data:{uid:t.uid,type:this.type,source:this.id}}));}))}hasTransition(){return !1}}class X extends e.E{constructor(t,i,a,s){super(),this.id=t,this.dispatcher=a,this.setEventedParent(s),this.type="raster",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme="xyz",this.tileSize=512,this._loaded=!1,this._options=e.e({type:"raster"},i),e.e(this,e.M(i,["url","scheme","tileSize"]));}load(){return e._(this,void 0,void 0,(function*(){this._loaded=!1,this.fire(new e.k("dataloading",{dataType:"source"})),this._tileJSONRequest=new AbortController;try{const t=yield G(this._options,this.map._requestManager,this._tileJSONRequest);this._tileJSONRequest=null,this._loaded=!0,t&&(e.e(this,t),t.bounds&&(this.tileBounds=new W(t.bounds,this.minzoom,this.maxzoom)),this.fire(new e.k("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new e.k("data",{dataType:"source",sourceDataType:"content"})));}catch(t){this._tileJSONRequest=null,this.fire(new e.j(t));}}))}loaded(){return this._loaded}onAdd(t){this.map=t,this.load();}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null);}setSourceProperty(t){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null),t(),this.load();}setTiles(t){return this.setSourceProperty((()=>{this._options.tiles=t;})),this}setUrl(t){return this.setSourceProperty((()=>{this.url=t,this._options.url=t;})),this}serialize(){return e.e({},this._options)}hasTile(t){return !this.tileBounds||this.tileBounds.contains(t.canonical)}loadTile(t){return e._(this,void 0,void 0,(function*(){const e=t.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme);t.abortController=new AbortController;try{const i=yield _.getImage(this.map._requestManager.transformRequest(e,"Tile"),t.abortController,this.map._refreshExpiredTiles);if(delete t.abortController,t.aborted)return void(t.state="unloaded");if(i&&i.data){this.map._refreshExpiredTiles&&i.cacheControl&&i.expires&&t.setExpiryData({cacheControl:i.cacheControl,expires:i.expires});const e=this.map.painter.context,a=e.gl,s=i.data;t.texture=this.map.painter.getTileTexture(s.width),t.texture?t.texture.update(s,{useMipmap:!0}):(t.texture=new b(e,s,a.RGBA,{useMipmap:!0}),t.texture.bind(a.LINEAR,a.CLAMP_TO_EDGE,a.LINEAR_MIPMAP_NEAREST)),t.state="loaded";}}catch(e){if(delete t.abortController,t.aborted)t.state="unloaded";else if(e)throw t.state="errored",e}}))}abortTile(t){return e._(this,void 0,void 0,(function*(){t.abortController&&(t.abortController.abort(),delete t.abortController);}))}unloadTile(t){return e._(this,void 0,void 0,(function*(){t.texture&&this.map.painter.saveTileTexture(t.texture);}))}hasTransition(){return !1}}class K extends X{constructor(t,i,a,s){super(t,i,a,s),this.type="raster-dem",this.maxzoom=22,this._options=e.e({type:"raster-dem"},i),this.encoding=i.encoding||"mapbox",this.redFactor=i.redFactor,this.greenFactor=i.greenFactor,this.blueFactor=i.blueFactor,this.baseShift=i.baseShift;}loadTile(t){return e._(this,void 0,void 0,(function*(){const i=t.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),a=this.map._requestManager.transformRequest(i,"Tile");t.neighboringTiles=this._getNeighboringTiles(t.tileID),t.abortController=new AbortController;try{const i=yield _.getImage(a,t.abortController,this.map._refreshExpiredTiles);if(delete t.abortController,t.aborted)return void(t.state="unloaded");if(i&&i.data){const a=i.data;this.map._refreshExpiredTiles&&i.cacheControl&&i.expires&&t.setExpiryData({cacheControl:i.cacheControl,expires:i.expires});const s=e.b(a)&&e.U()?a:yield this.readImageNow(a),o={type:this.type,uid:t.uid,source:this.id,rawImageData:s,encoding:this.encoding,redFactor:this.redFactor,greenFactor:this.greenFactor,blueFactor:this.blueFactor,baseShift:this.baseShift};if(!t.actor||"expired"===t.state){t.actor=this.dispatcher.getActor();const e=yield t.actor.sendAsync({type:"LDT",data:o});t.dem=e,t.needsHillshadePrepare=!0,t.needsTerrainPrepare=!0,t.state="loaded";}}}catch(e){if(delete t.abortController,t.aborted)t.state="unloaded";else if(e)throw t.state="errored",e}}))}readImageNow(t){return e._(this,void 0,void 0,(function*(){if("undefined"!=typeof VideoFrame&&e.V()){const i=t.width+2,a=t.height+2;try{return new e.R({width:i,height:a},yield e.W(t,-1,-1,i,a))}catch(t){}}return o.getImageData(t,1)}))}_getNeighboringTiles(t){const i=t.canonical,a=Math.pow(2,i.z),s=(i.x-1+a)%a,o=0===i.x?t.wrap-1:t.wrap,r=(i.x+1+a)%a,n=i.x+1===a?t.wrap+1:t.wrap,l={};return l[new e.S(t.overscaledZ,o,i.z,s,i.y).key]={backfilled:!1},l[new e.S(t.overscaledZ,n,i.z,r,i.y).key]={backfilled:!1},i.y>0&&(l[new e.S(t.overscaledZ,o,i.z,s,i.y-1).key]={backfilled:!1},l[new e.S(t.overscaledZ,t.wrap,i.z,i.x,i.y-1).key]={backfilled:!1},l[new e.S(t.overscaledZ,n,i.z,r,i.y-1).key]={backfilled:!1}),i.y+10&&e.e(s,{resourceTiming:a}),this.fire(new e.k("data",Object.assign(Object.assign({},s),{sourceDataType:"metadata"}))),this.fire(new e.k("data",Object.assign(Object.assign({},s),{sourceDataType:"content"})));}catch(t){if(this._pendingLoads--,this._removed)return void this.fire(new e.k("dataabort",{dataType:"source"}));this.fire(new e.j(t));}}))}loaded(){return 0===this._pendingLoads}loadTile(t){return e._(this,void 0,void 0,(function*(){const e=t.actor?"RT":"LT";t.actor=this.actor;const i={type:this.type,uid:t.uid,tileID:t.tileID,zoom:t.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};t.abortController=new AbortController;const a=yield this.actor.sendAsync({type:e,data:i},t.abortController);delete t.abortController,t.unloadVectorData(),t.aborted||t.loadVectorData(a,this.map.painter,"RT"===e);}))}abortTile(t){return e._(this,void 0,void 0,(function*(){t.abortController&&(t.abortController.abort(),delete t.abortController),t.aborted=!0;}))}unloadTile(t){return e._(this,void 0,void 0,(function*(){t.unloadVectorData(),yield this.actor.sendAsync({type:"RMT",data:{uid:t.uid,type:this.type,source:this.id}});}))}onRemove(){this._removed=!0,this.actor.sendAsync({type:"RS",data:{type:this.type,source:this.id}});}serialize(){return e.e({},this._options,{type:this.type,data:this._data})}hasTransition(){return !1}}var Y=e.Y([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]);class Q extends e.E{constructor(t,e,i,a){super(),this.id=t,this.dispatcher=i,this.coordinates=e.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(a),this.options=e;}load(t){return e._(this,void 0,void 0,(function*(){this._loaded=!1,this.fire(new e.k("dataloading",{dataType:"source"})),this.url=this.options.url,this._request=new AbortController;try{const e=yield _.getImage(this.map._requestManager.transformRequest(this.url,"Image"),this._request);this._request=null,this._loaded=!0,e&&e.data&&(this.image=e.data,t&&(this.coordinates=t),this._finishLoading());}catch(t){this._request=null,this._loaded=!0,this.fire(new e.j(t));}}))}loaded(){return this._loaded}updateImage(t){return t.url?(this._request&&(this._request.abort(),this._request=null),this.options.url=t.url,this.load(t.coordinates).finally((()=>{this.texture=null;})),this):this}_finishLoading(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new e.k("data",{dataType:"source",sourceDataType:"metadata"})));}onAdd(t){this.map=t,this.load();}onRemove(){this._request&&(this._request.abort(),this._request=null);}setCoordinates(t){this.coordinates=t;const i=t.map(e.Z.fromLngLat);this.tileID=function(t){let i=1/0,a=1/0,s=-1/0,o=-1/0;for(const e of t)i=Math.min(i,e.x),a=Math.min(a,e.y),s=Math.max(s,e.x),o=Math.max(o,e.y);const r=Math.max(s-i,o-a),n=Math.max(0,Math.floor(-Math.log(r)/Math.LN2)),l=Math.pow(2,n);return new e.a1(n,Math.floor((i+s)/2*l),Math.floor((a+o)/2*l))}(i),this.minzoom=this.maxzoom=this.tileID.z;const a=i.map((t=>this.tileID.getTilePoint(t)._round()));return this._boundsArray=new e.$,this._boundsArray.emplaceBack(a[0].x,a[0].y,0,0),this._boundsArray.emplaceBack(a[1].x,a[1].y,e.X,0),this._boundsArray.emplaceBack(a[3].x,a[3].y,0,e.X),this._boundsArray.emplaceBack(a[2].x,a[2].y,e.X,e.X),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new e.k("data",{dataType:"source",sourceDataType:"content"})),this}prepare(){if(0===Object.keys(this.tiles).length||!this.image)return;const t=this.map.painter.context,i=t.gl;this.boundsBuffer||(this.boundsBuffer=t.createVertexBuffer(this._boundsArray,Y.members)),this.boundsSegments||(this.boundsSegments=e.a0.simpleSegment(0,0,4,2)),this.texture||(this.texture=new b(t,this.image,i.RGBA),this.texture.bind(i.LINEAR,i.CLAMP_TO_EDGE));let a=!1;for(const t in this.tiles){const e=this.tiles[t];"loaded"!==e.state&&(e.state="loaded",e.texture=this.texture,a=!0);}a&&this.fire(new e.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}));}loadTile(t){return e._(this,void 0,void 0,(function*(){this.tileID&&this.tileID.equals(t.tileID.canonical)?(this.tiles[String(t.tileID.wrap)]=t,t.buckets={}):t.state="errored";}))}serialize(){return {type:"image",url:this.options.url,coordinates:this.coordinates}}hasTransition(){return !1}}class tt extends Q{constructor(t,e,i,a){super(t,e,i,a),this.roundZoom=!0,this.type="video",this.options=e;}load(){return e._(this,void 0,void 0,(function*(){this._loaded=!1;const t=this.options;this.urls=[];for(const e of t.urls)this.urls.push(this.map._requestManager.transformRequest(e,"Source").url);try{const t=yield e.a3(this.urls);if(this._loaded=!0,!t)return;this.video=t,this.video.loop=!0,this.video.addEventListener("playing",(()=>{this.map.triggerRepaint();})),this.map&&this.video.play(),this._finishLoading();}catch(t){this.fire(new e.j(t));}}))}pause(){this.video&&this.video.pause();}play(){this.video&&this.video.play();}seek(t){if(this.video){const i=this.video.seekable;ti.end(0)?this.fire(new e.j(new e.a2(`sources.${this.id}`,null,`Playback for this video can be set only between the ${i.start(0)} and ${i.end(0)}-second mark.`))):this.video.currentTime=t;}}getVideo(){return this.video}onAdd(t){this.map||(this.map=t,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)));}prepare(){if(0===Object.keys(this.tiles).length||this.video.readyState<2)return;const t=this.map.painter.context,i=t.gl;this.boundsBuffer||(this.boundsBuffer=t.createVertexBuffer(this._boundsArray,Y.members)),this.boundsSegments||(this.boundsSegments=e.a0.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(i.LINEAR,i.CLAMP_TO_EDGE),i.texSubImage2D(i.TEXTURE_2D,0,0,0,i.RGBA,i.UNSIGNED_BYTE,this.video)):(this.texture=new b(t,this.video,i.RGBA),this.texture.bind(i.LINEAR,i.CLAMP_TO_EDGE));let a=!1;for(const t in this.tiles){const e=this.tiles[t];"loaded"!==e.state&&(e.state="loaded",e.texture=this.texture,a=!0);}a&&this.fire(new e.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}));}serialize(){return {type:"video",urls:this.urls,coordinates:this.coordinates}}hasTransition(){return this.video&&!this.video.paused}}class et extends Q{constructor(t,i,a,s){super(t,i,a,s),i.coordinates?Array.isArray(i.coordinates)&&4===i.coordinates.length&&!i.coordinates.some((t=>!Array.isArray(t)||2!==t.length||t.some((t=>"number"!=typeof t))))||this.fire(new e.j(new e.a2(`sources.${t}`,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new e.j(new e.a2(`sources.${t}`,null,'missing required property "coordinates"'))),i.animate&&"boolean"!=typeof i.animate&&this.fire(new e.j(new e.a2(`sources.${t}`,null,'optional "animate" property must be a boolean value'))),i.canvas?"string"==typeof i.canvas||i.canvas instanceof HTMLCanvasElement||this.fire(new e.j(new e.a2(`sources.${t}`,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new e.j(new e.a2(`sources.${t}`,null,'missing required property "canvas"'))),this.options=i,this.animate=void 0===i.animate||i.animate;}load(){return e._(this,void 0,void 0,(function*(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof HTMLCanvasElement?this.options.canvas:document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new e.j(new Error("Canvas dimensions cannot be less than or equal to zero."))):(this.play=function(){this._playing=!0,this.map.triggerRepaint();},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1);},this._finishLoading());}))}getCanvas(){return this.canvas}onAdd(t){this.map=t,this.load(),this.canvas&&this.animate&&this.play();}onRemove(){this.pause();}prepare(){let t=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,t=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,t=!0),this._hasInvalidDimensions())return;if(0===Object.keys(this.tiles).length)return;const i=this.map.painter.context,a=i.gl;this.boundsBuffer||(this.boundsBuffer=i.createVertexBuffer(this._boundsArray,Y.members)),this.boundsSegments||(this.boundsSegments=e.a0.simpleSegment(0,0,4,2)),this.texture?(t||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new b(i,this.canvas,a.RGBA,{premultiply:!0});let s=!1;for(const t in this.tiles){const e=this.tiles[t];"loaded"!==e.state&&(e.state="loaded",e.texture=this.texture,s=!0);}s&&this.fire(new e.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}));}serialize(){return {type:"canvas",coordinates:this.coordinates}}hasTransition(){return this._playing}_hasInvalidDimensions(){for(const t of [this.canvas.width,this.canvas.height])if(isNaN(t)||t<=0)return !0;return !1}}const it={},at=t=>{switch(t){case"geojson":return J;case"image":return Q;case"raster":return X;case"raster-dem":return K;case"vector":return $;case"video":return tt;case"canvas":return et}return it[t]},st="RTLPluginLoaded";class ot extends e.E{constructor(){super(...arguments),this.status="unavailable",this.url=null,this.dispatcher=j();}_syncState(t){return this.status=t,this.dispatcher.broadcast("SRPS",{pluginStatus:t,pluginURL:this.url}).catch((t=>{throw this.status="error",t}))}getRTLTextPluginStatus(){return this.status}clearRTLTextPlugin(){this.status="unavailable",this.url=null;}setRTLTextPlugin(t){return e._(this,arguments,void 0,(function*(t,e=!1){if(this.url)throw new Error("setRTLTextPlugin cannot be called multiple times.");if(this.url=o.resolveURL(t),!this.url)throw new Error(`requested url ${t} is invalid`);if("unavailable"===this.status){if(!e)return this._requestImport();this.status="deferred",this._syncState(this.status);}else if("requested"===this.status)return this._requestImport()}))}_requestImport(){return e._(this,void 0,void 0,(function*(){yield this._syncState("loading"),this.status="loaded",this.fire(new e.k(st));}))}lazyLoad(){"unavailable"===this.status?this.status="requested":"deferred"===this.status&&this._requestImport();}}let rt=null;function nt(){return rt||(rt=new ot),rt}class lt{constructor(t,i){this.timeAdded=0,this.fadeEndTime=0,this.tileID=t,this.uid=e.a4(),this.uses=0,this.tileSize=i,this.buckets={},this.expirationTime=null,this.queryPadding=0,this.hasSymbolBuckets=!1,this.hasRTLText=!1,this.dependencies={},this.rtt=[],this.rttCoords={},this.expiredRequestCount=0,this.state="loading";}registerFadeDuration(t){const e=t+this.timeAdded;ee.getLayer(t))).filter(Boolean);if(0!==t.length){a.layers=t,a.stateDependentLayerIds&&(a.stateDependentLayers=a.stateDependentLayerIds.map((e=>t.filter((t=>t.id===e))[0])));for(const e of t)i[e.id]=a;}}return i}(t.buckets,i.style),this.hasSymbolBuckets=!1;for(const t in this.buckets){const i=this.buckets[t];if(i instanceof e.a6){if(this.hasSymbolBuckets=!0,!a)break;i.justReloaded=!0;}}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(const t in this.buckets){const i=this.buckets[t];if(i instanceof e.a6&&i.hasRTLText){this.hasRTLText=!0,nt().lazyLoad();break}}this.queryPadding=0;for(const t in this.buckets){const e=this.buckets[t];this.queryPadding=Math.max(this.queryPadding,i.style.getLayer(t).queryRadius(e));}t.imageAtlas&&(this.imageAtlas=t.imageAtlas),t.glyphAtlasImage&&(this.glyphAtlasImage=t.glyphAtlasImage);}else this.collisionBoxArray=new e.a5;}unloadVectorData(){for(const t in this.buckets)this.buckets[t].destroy();this.buckets={},this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.imageAtlas&&(this.imageAtlas=null),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.latestFeatureIndex=null,this.state="unloaded";}getBucket(t){return this.buckets[t.id]}upload(t){for(const e in this.buckets){const i=this.buckets[e];i.uploadPending()&&i.upload(t);}const e=t.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new b(t,this.imageAtlas.image,e.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new b(t,this.glyphAtlasImage,e.ALPHA),this.glyphAtlasImage=null);}prepare(t){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(t,this.imageAtlasTexture);}queryRenderedFeatures(t,e,i,a,s,o,r,n,l,h){return this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData?this.latestFeatureIndex.query({queryGeometry:a,cameraQueryGeometry:s,scale:o,tileSize:this.tileSize,pixelPosMatrix:h,transform:n,params:r,queryPadding:this.queryPadding*l},t,e,i):{}}querySourceFeatures(t,i){const a=this.latestFeatureIndex;if(!a||!a.rawTileData)return;const s=a.loadVTLayers(),o=i&&i.sourceLayer?i.sourceLayer:"",r=s._geojsonTileLayer||s[o];if(!r)return;const n=e.a7(i&&i.filter),{z:l,x:h,y:c}=this.tileID.canonical,u={z:l,x:h,y:c};for(let i=0;it)e=!1;else if(i)if(this.expirationTime{this.remove(t,s);}),i)),this.data[a].push(s),this.order.push(a),this.order.length>this.max){const t=this._getAndRemoveByKey(this.order[0]);t&&this.onRemove(t);}return this}has(t){return t.wrapped().key in this.data}getAndRemove(t){return this.has(t)?this._getAndRemoveByKey(t.wrapped().key):null}_getAndRemoveByKey(t){const e=this.data[t].shift();return e.timeout&&clearTimeout(e.timeout),0===this.data[t].length&&delete this.data[t],this.order.splice(this.order.indexOf(t),1),e.value}getByKey(t){const e=this.data[t];return e?e[0].value:null}get(t){return this.has(t)?this.data[t.wrapped().key][0].value:null}remove(t,e){if(!this.has(t))return this;const i=t.wrapped().key,a=void 0===e?0:this.data[i].indexOf(e),s=this.data[i][a];return this.data[i].splice(a,1),s.timeout&&clearTimeout(s.timeout),0===this.data[i].length&&delete this.data[i],this.onRemove(s.value),this.order.splice(this.order.indexOf(i),1),this}setMaxSize(t){for(this.max=t;this.order.length>this.max;){const t=this._getAndRemoveByKey(this.order[0]);t&&this.onRemove(t);}return this}filter(t){const e=[];for(const i in this.data)for(const a of this.data[i])t(a.value)||e.push(a);for(const t of e)this.remove(t.value.tileID,t);}}class ct{constructor(){this.state={},this.stateChanges={},this.deletedStates={};}updateState(t,i,a){const s=String(i);if(this.stateChanges[t]=this.stateChanges[t]||{},this.stateChanges[t][s]=this.stateChanges[t][s]||{},e.e(this.stateChanges[t][s],a),null===this.deletedStates[t]){this.deletedStates[t]={};for(const e in this.state[t])e!==s&&(this.deletedStates[t][e]=null);}else if(this.deletedStates[t]&&null===this.deletedStates[t][s]){this.deletedStates[t][s]={};for(const e in this.state[t][s])a[e]||(this.deletedStates[t][s][e]=null);}else for(const e in a)this.deletedStates[t]&&this.deletedStates[t][s]&&null===this.deletedStates[t][s][e]&&delete this.deletedStates[t][s][e];}removeFeatureState(t,e,i){if(null===this.deletedStates[t])return;const a=String(e);if(this.deletedStates[t]=this.deletedStates[t]||{},i&&void 0!==e)null!==this.deletedStates[t][a]&&(this.deletedStates[t][a]=this.deletedStates[t][a]||{},this.deletedStates[t][a][i]=null);else if(void 0!==e)if(this.stateChanges[t]&&this.stateChanges[t][a])for(i in this.deletedStates[t][a]={},this.stateChanges[t][a])this.deletedStates[t][a][i]=null;else this.deletedStates[t][a]=null;else this.deletedStates[t]=null;}getState(t,i){const a=String(i),s=e.e({},(this.state[t]||{})[a],(this.stateChanges[t]||{})[a]);if(null===this.deletedStates[t])return {};if(this.deletedStates[t]){const e=this.deletedStates[t][i];if(null===e)return {};for(const t in e)delete s[t];}return s}initializeTileState(t,e){t.setFeatureState(this.state,e);}coalesceChanges(t,i){const a={};for(const t in this.stateChanges){this.state[t]=this.state[t]||{};const i={};for(const a in this.stateChanges[t])this.state[t][a]||(this.state[t][a]={}),e.e(this.state[t][a],this.stateChanges[t][a]),i[a]=this.state[t][a];a[t]=i;}for(const t in this.deletedStates){this.state[t]=this.state[t]||{};const i={};if(null===this.deletedStates[t])for(const e in this.state[t])i[e]={},this.state[t][e]={};else for(const e in this.deletedStates[t]){if(null===this.deletedStates[t][e])this.state[t][e]={};else for(const i of Object.keys(this.deletedStates[t][e]))delete this.state[t][e][i];i[e]=this.state[t][e];}a[t]=a[t]||{},e.e(a[t],i);}if(this.stateChanges={},this.deletedStates={},0!==Object.keys(a).length)for(const e in t)t[e].setFeatureState(a,i);}}class ut extends e.E{constructor(t,e,i){super(),this.id=t,this.dispatcher=i,this.on("data",(t=>this._dataHandler(t))),this.on("dataloading",(()=>{this._sourceErrored=!1;})),this.on("error",(()=>{this._sourceErrored=this._source.loaded();})),this._source=((t,e,i,a)=>{const s=new(at(e.type))(t,e,i,a);if(s.id!==t)throw new Error(`Expected Source id to be ${t} instead of ${s.id}`);return s})(t,e,i,this),this._tiles={},this._cache=new ht(0,(t=>this._unloadTile(t))),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._maxTileCacheZoomLevels=null,this._loadedParentTiles={},this._coveredTiles={},this._state=new ct,this._didEmitContent=!1,this._updated=!1;}onAdd(t){this.map=t,this._maxTileCacheSize=t?t._maxTileCacheSize:null,this._maxTileCacheZoomLevels=t?t._maxTileCacheZoomLevels:null,this._source&&this._source.onAdd&&this._source.onAdd(t);}onRemove(t){this.clearTiles(),this._source&&this._source.onRemove&&this._source.onRemove(t);}loaded(){if(this._sourceErrored)return !0;if(!this._sourceLoaded)return !1;if(!this._source.loaded())return !1;if(!(void 0===this.used&&void 0===this.usedForTerrain||this.used||this.usedForTerrain))return !0;if(!this._updated)return !1;for(const t in this._tiles){const e=this._tiles[t];if("loaded"!==e.state&&"errored"!==e.state)return !1}return !0}getSource(){return this._source}pause(){this._paused=!0;}resume(){if(!this._paused)return;const t=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,t&&this.reload(),this.transform&&this.update(this.transform,this.terrain);}_loadTile(t,i,a){return e._(this,void 0,void 0,(function*(){try{yield this._source.loadTile(t),this._tileLoaded(t,i,a);}catch(i){t.state="errored",404!==i.status?this._source.fire(new e.j(i,{tile:t})):this.update(this.transform,this.terrain);}}))}_unloadTile(t){this._source.unloadTile&&this._source.unloadTile(t);}_abortTile(t){this._source.abortTile&&this._source.abortTile(t),this._source.fire(new e.k("dataabort",{tile:t,coord:t.tileID,dataType:"source"}));}serialize(){return this._source.serialize()}prepare(t){this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null);for(const e in this._tiles){const i=this._tiles[e];i.upload(t),i.prepare(this.map.style.imageManager);}}getIds(){return Object.values(this._tiles).map((t=>t.tileID)).sort(dt).map((t=>t.key))}getRenderableIds(t){const i=[];for(const e in this._tiles)this._isIdRenderable(e,t)&&i.push(this._tiles[e]);return t?i.sort(((t,i)=>{const a=t.tileID,s=i.tileID,o=new e.P(a.canonical.x,a.canonical.y)._rotate(this.transform.angle),r=new e.P(s.canonical.x,s.canonical.y)._rotate(this.transform.angle);return a.overscaledZ-s.overscaledZ||r.y-o.y||r.x-o.x})).map((t=>t.tileID.key)):i.map((t=>t.tileID)).sort(dt).map((t=>t.key))}hasRenderableParent(t){const e=this.findLoadedParent(t,0);return !!e&&this._isIdRenderable(e.tileID.key)}_isIdRenderable(t,e){return this._tiles[t]&&this._tiles[t].hasData()&&!this._coveredTiles[t]&&(e||!this._tiles[t].holdingForFade())}reload(){if(this._paused)this._shouldReloadOnResume=!0;else {this._cache.reset();for(const t in this._tiles)"errored"!==this._tiles[t].state&&this._reloadTile(t,"reloading");}}_reloadTile(t,i){return e._(this,void 0,void 0,(function*(){const e=this._tiles[t];e&&("loading"!==e.state&&(e.state=i),yield this._loadTile(e,t,i));}))}_tileLoaded(t,i,a){t.timeAdded=o.now(),"expired"===a&&(t.refreshedUponExpiration=!0),this._setTileReloadTimer(i,t),"raster-dem"===this.getSource().type&&t.dem&&this._backfillDEM(t),this._state.initializeTileState(t,this.map?this.map.painter:null),t.aborted||this._source.fire(new e.k("data",{dataType:"source",tile:t,coord:t.tileID}));}_backfillDEM(t){const e=this.getRenderableIds();for(let a=0;a1||(Math.abs(i)>1&&(1===Math.abs(i+s)?i+=s:1===Math.abs(i-s)&&(i-=s)),e.dem&&t.dem&&(t.dem.backfillBorder(e.dem,i,a),t.neighboringTiles&&t.neighboringTiles[o]&&(t.neighboringTiles[o].backfilled=!0)));}}getTile(t){return this.getTileByID(t.key)}getTileByID(t){return this._tiles[t]}_retainLoadedChildren(t,e,i,a){for(const s in this._tiles){let o=this._tiles[s];if(a[s]||!o.hasData()||o.tileID.overscaledZ<=e||o.tileID.overscaledZ>i)continue;let r=o.tileID;for(;o&&o.tileID.overscaledZ>e+1;){const t=o.tileID.scaledTo(o.tileID.overscaledZ-1);o=this._tiles[t.key],o&&o.hasData()&&(r=t);}let n=r;for(;n.overscaledZ>e;)if(n=n.scaledTo(n.overscaledZ-1),t[n.key]){a[r.key]=r;break}}}findLoadedParent(t,e){if(t.key in this._loadedParentTiles){const i=this._loadedParentTiles[t.key];return i&&i.tileID.overscaledZ>=e?i:null}for(let i=t.overscaledZ-1;i>=e;i--){const e=t.scaledTo(i),a=this._getLoadedTile(e);if(a)return a}}findLoadedSibling(t){return this._getLoadedTile(t)}_getLoadedTile(t){const e=this._tiles[t.key];return e&&e.hasData()?e:this._cache.getByKey(t.wrapped().key)}updateCacheSize(t){const i=Math.ceil(t.width/this._source.tileSize)+1,a=Math.ceil(t.height/this._source.tileSize)+1,s=Math.floor(i*a*(null===this._maxTileCacheZoomLevels?e.a.MAX_TILE_CACHE_ZOOM_LEVELS:this._maxTileCacheZoomLevels)),o="number"==typeof this._maxTileCacheSize?Math.min(this._maxTileCacheSize,s):s;this._cache.setMaxSize(o);}handleWrapJump(t){const e=Math.round((t-(void 0===this._prevLng?t:this._prevLng))/360);if(this._prevLng=t,e){const t={};for(const i in this._tiles){const a=this._tiles[i];a.tileID=a.tileID.unwrapTo(a.tileID.wrap+e),t[a.tileID.key]=a;}this._tiles=t;for(const t in this._timers)clearTimeout(this._timers[t]),delete this._timers[t];for(const t in this._tiles)this._setTileReloadTimer(t,this._tiles[t]);}}_updateCoveredAndRetainedTiles(t,e,i,a,s,r){const n={},l={},h=Object.keys(t),c=o.now();for(const i of h){const a=t[i],s=this._tiles[i];if(!s||0!==s.fadeEndTime&&s.fadeEndTime<=c)continue;const o=this.findLoadedParent(a,e),r=this.findLoadedSibling(a),h=o||r||null;h&&(this._addTile(h.tileID),n[h.tileID.key]=h.tileID),l[i]=a;}this._retainLoadedChildren(l,a,i,t);for(const e in n)t[e]||(this._coveredTiles[e]=!0,t[e]=n[e]);if(r){const e={},i={};for(const t of s)this._tiles[t.key].hasData()?e[t.key]=t:i[t.key]=t;for(const a in i){const s=i[a].children(this._source.maxzoom);this._tiles[s[0].key]&&this._tiles[s[1].key]&&this._tiles[s[2].key]&&this._tiles[s[3].key]&&(e[s[0].key]=t[s[0].key]=s[0],e[s[1].key]=t[s[1].key]=s[1],e[s[2].key]=t[s[2].key]=s[2],e[s[3].key]=t[s[3].key]=s[3],delete i[a]);}for(const a in i){const s=i[a],o=this.findLoadedParent(s,this._source.minzoom),r=this.findLoadedSibling(s),n=o||r||null;if(n){e[n.tileID.key]=t[n.tileID.key]=n.tileID;for(const t in e)e[t].isChildOf(n.tileID)&&delete e[t];}}for(const t in this._tiles)e[t]||(this._coveredTiles[t]=!0);}}update(t,i){if(!this._sourceLoaded||this._paused)return;let a;this.transform=t,this.terrain=i,this.updateCacheSize(t),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={},this.used||this.usedForTerrain?this._source.tileID?a=t.getVisibleUnwrappedCoordinates(this._source.tileID).map((t=>new e.S(t.canonical.z,t.wrap,t.canonical.z,t.canonical.x,t.canonical.y))):(a=t.coveringTiles({tileSize:this.usedForTerrain?this.tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:!this.usedForTerrain&&this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled,terrain:i}),this._source.hasTile&&(a=a.filter((t=>this._source.hasTile(t))))):a=[];const s=t.coveringZoomLevel(this._source),o=Math.max(s-ut.maxOverzooming,this._source.minzoom),r=Math.max(s+ut.maxUnderzooming,this._source.minzoom);if(this.usedForTerrain){const t={};for(const e of a)if(e.canonical.z>this._source.minzoom){const i=e.scaledTo(e.canonical.z-1);t[i.key]=i;const a=e.scaledTo(Math.max(this._source.minzoom,Math.min(e.canonical.z,5)));t[a.key]=a;}a=a.concat(Object.values(t));}const n=0===a.length&&!this._updated&&this._didEmitContent;this._updated=!0,n&&this.fire(new e.k("data",{sourceDataType:"idle",dataType:"source",sourceId:this.id}));const l=this._updateRetainedTiles(a,s);_t(this._source.type)&&this._updateCoveredAndRetainedTiles(l,o,r,s,a,i);for(const t in l)this._tiles[t].clearFadeHold();const h=e.ab(this._tiles,l);for(const t of h){const e=this._tiles[t];e.hasSymbolBuckets&&!e.holdingForFade()?e.setHoldDuration(this.map._fadeDuration):e.hasSymbolBuckets&&!e.symbolFadeFinished()||this._removeTile(t);}this._updateLoadedParentTileCache(),this._updateLoadedSiblingTileCache();}releaseSymbolFadeTiles(){for(const t in this._tiles)this._tiles[t].holdingForFade()&&this._removeTile(t);}_updateRetainedTiles(t,e){var i;const a={},s={},o=Math.max(e-ut.maxOverzooming,this._source.minzoom),r=Math.max(e+ut.maxUnderzooming,this._source.minzoom),n={};for(const i of t){const t=this._addTile(i);a[i.key]=i,t.hasData()||ethis._source.maxzoom){const t=r.children(this._source.maxzoom)[0],e=this.getTile(t);if(e&&e.hasData()){a[t.key]=t;continue}}else {const t=r.children(this._source.maxzoom);if(a[t[0].key]&&a[t[1].key]&&a[t[2].key]&&a[t[3].key])continue}let n=t.wasRequested();for(let e=r.overscaledZ-1;e>=o;--e){const o=r.scaledTo(e);if(s[o.key])break;if(s[o.key]=!0,t=this.getTile(o),!t&&n&&(t=this._addTile(o)),t){const e=t.hasData();if((e||!(null===(i=this.map)||void 0===i?void 0:i.cancelPendingTileRequestsWhileZooming)||n)&&(a[o.key]=o),n=t.wasRequested(),e)break}}}return a}_updateLoadedParentTileCache(){this._loadedParentTiles={};for(const t in this._tiles){const e=[];let i,a=this._tiles[t].tileID;for(;a.overscaledZ>0;){if(a.key in this._loadedParentTiles){i=this._loadedParentTiles[a.key];break}e.push(a.key);const t=a.scaledTo(a.overscaledZ-1);if(i=this._getLoadedTile(t),i)break;a=t;}for(const t of e)this._loadedParentTiles[t]=i;}}_updateLoadedSiblingTileCache(){this._loadedSiblingTiles={};for(const t in this._tiles){const e=this._tiles[t].tileID,i=this._getLoadedTile(e);this._loadedSiblingTiles[e.key]=i;}}_addTile(t){let i=this._tiles[t.key];if(i)return i;i=this._cache.getAndRemove(t),i&&(this._setTileReloadTimer(t.key,i),i.tileID=t,this._state.initializeTileState(i,this.map?this.map.painter:null),this._cacheTimers[t.key]&&(clearTimeout(this._cacheTimers[t.key]),delete this._cacheTimers[t.key],this._setTileReloadTimer(t.key,i)));const a=i;return i||(i=new lt(t,this._source.tileSize*t.overscaleFactor()),this._loadTile(i,t.key,i.state)),i.uses++,this._tiles[t.key]=i,a||this._source.fire(new e.k("dataloading",{tile:i,coord:i.tileID,dataType:"source"})),i}_setTileReloadTimer(t,e){t in this._timers&&(clearTimeout(this._timers[t]),delete this._timers[t]);const i=e.getExpiryTimeout();i&&(this._timers[t]=setTimeout((()=>{this._reloadTile(t,"expired"),delete this._timers[t];}),i));}_removeTile(t){const e=this._tiles[t];e&&(e.uses--,delete this._tiles[t],this._timers[t]&&(clearTimeout(this._timers[t]),delete this._timers[t]),e.uses>0||(e.hasData()&&"reloading"!==e.state?this._cache.add(e.tileID,e,e.getExpiryTimeout()):(e.aborted=!0,this._abortTile(e),this._unloadTile(e))));}_dataHandler(t){const e=t.sourceDataType;"source"===t.dataType&&"metadata"===e&&(this._sourceLoaded=!0),this._sourceLoaded&&!this._paused&&"source"===t.dataType&&"content"===e&&(this.reload(),this.transform&&this.update(this.transform,this.terrain),this._didEmitContent=!0);}clearTiles(){this._shouldReloadOnResume=!1,this._paused=!1;for(const t in this._tiles)this._removeTile(t);this._cache.reset();}tilesIn(t,i,a){const s=[],o=this.transform;if(!o)return s;const r=a?o.getCameraQueryGeometry(t):t,n=t.map((t=>o.pointCoordinate(t,this.terrain))),l=r.map((t=>o.pointCoordinate(t,this.terrain))),h=this.getIds();let c=1/0,u=1/0,d=-1/0,_=-1/0;for(const t of l)c=Math.min(c,t.x),u=Math.min(u,t.y),d=Math.max(d,t.x),_=Math.max(_,t.y);for(let t=0;t=0&&f[1].y+m>=0){const t=n.map((t=>r.getTilePoint(t))),e=l.map((t=>r.getTilePoint(t)));s.push({tile:a,tileID:r,queryGeometry:t,cameraQueryGeometry:e,scale:p});}}return s}getVisibleCoordinates(t){const e=this.getRenderableIds(t).map((t=>this._tiles[t].tileID));for(const t of e)t.posMatrix=this.transform.calculatePosMatrix(t.toUnwrapped());return e}hasTransition(){if(this._source.hasTransition())return !0;if(_t(this._source.type)){const t=o.now();for(const e in this._tiles)if(this._tiles[e].fadeEndTime>=t)return !0}return !1}setFeatureState(t,e,i){this._state.updateState(t=t||"_geojsonTileLayer",e,i);}removeFeatureState(t,e,i){this._state.removeFeatureState(t=t||"_geojsonTileLayer",e,i);}getFeatureState(t,e){return this._state.getState(t=t||"_geojsonTileLayer",e)}setDependencies(t,e,i){const a=this._tiles[t];a&&a.setDependencies(e,i);}reloadTilesForDependencies(t,e){for(const i in this._tiles)this._tiles[i].hasDependency(t,e)&&this._reloadTile(i,"reloading");this._cache.filter((i=>!i.hasDependency(t,e)));}}function dt(t,e){const i=Math.abs(2*t.wrap)-+(t.wrap<0),a=Math.abs(2*e.wrap)-+(e.wrap<0);return t.overscaledZ-e.overscaledZ||a-i||e.canonical.y-t.canonical.y||e.canonical.x-t.canonical.x}function _t(t){return "raster"===t||"image"===t||"video"===t}ut.maxOverzooming=10,ut.maxUnderzooming=3;class pt{constructor(t,e){this.reset(t,e);}reset(t,e){this.points=t||[],this._distances=[0];for(let t=1;t0?(s-r)/n:0;return this.points[o].mult(1-l).add(this.points[i].mult(l))}}function mt(t,e){let i=!0;return "always"===t||"never"!==t&&"never"!==e||(i=!1),i}class ft{constructor(t,e,i){const a=this.boxCells=[],s=this.circleCells=[];this.xCellCount=Math.ceil(t/i),this.yCellCount=Math.ceil(e/i);for(let t=0;tthis.width||a<0||e>this.height)return [];const n=[];if(t<=0&&e<=0&&this.width<=i&&this.height<=a){if(s)return [{key:null,x1:t,y1:e,x2:i,y2:a}];for(let t=0;t0}hitTestCircle(t,e,i,a,s){const o=t-i,r=t+i,n=e-i,l=e+i;if(r<0||o>this.width||l<0||n>this.height)return !1;const h=[];return this._forEachCell(o,n,r,l,this._queryCellCircle,h,{hitTest:!0,overlapMode:a,circle:{x:t,y:e,radius:i},seenUids:{box:{},circle:{}}},s),h.length>0}_queryCell(t,e,i,a,s,o,r,n){const{seenUids:l,hitTest:h,overlapMode:c}=r,u=this.boxCells[s];if(null!==u){const s=this.bboxes;for(const r of u)if(!l.box[r]){l.box[r]=!0;const u=4*r,d=this.boxKeys[r];if(t<=s[u+2]&&e<=s[u+3]&&i>=s[u+0]&&a>=s[u+1]&&(!n||n(d))&&(!h||!mt(c,d.overlapMode))&&(o.push({key:d,x1:s[u],y1:s[u+1],x2:s[u+2],y2:s[u+3]}),h))return !0}}const d=this.circleCells[s];if(null!==d){const s=this.circles;for(const r of d)if(!l.circle[r]){l.circle[r]=!0;const u=3*r,d=this.circleKeys[r];if(this._circleAndRectCollide(s[u],s[u+1],s[u+2],t,e,i,a)&&(!n||n(d))&&(!h||!mt(c,d.overlapMode))){const t=s[u],e=s[u+1],i=s[u+2];if(o.push({key:d,x1:t-i,y1:e-i,x2:t+i,y2:e+i}),h)return !0}}}return !1}_queryCellCircle(t,e,i,a,s,o,r,n){const{circle:l,seenUids:h,overlapMode:c}=r,u=this.boxCells[s];if(null!==u){const t=this.bboxes;for(const e of u)if(!h.box[e]){h.box[e]=!0;const i=4*e,a=this.boxKeys[e];if(this._circleAndRectCollide(l.x,l.y,l.radius,t[i+0],t[i+1],t[i+2],t[i+3])&&(!n||n(a))&&!mt(c,a.overlapMode))return o.push(!0),!0}}const d=this.circleCells[s];if(null!==d){const t=this.circles;for(const e of d)if(!h.circle[e]){h.circle[e]=!0;const i=3*e,a=this.circleKeys[e];if(this._circlesCollide(t[i],t[i+1],t[i+2],l.x,l.y,l.radius)&&(!n||n(a))&&!mt(c,a.overlapMode))return o.push(!0),!0}}}_forEachCell(t,e,i,a,s,o,r,n){const l=this._convertToXCellCoord(t),h=this._convertToYCellCoord(e),c=this._convertToXCellCoord(i),u=this._convertToYCellCoord(a);for(let d=l;d<=c;d++)for(let l=h;l<=u;l++)if(s.call(this,t,e,i,a,this.xCellCount*l+d,o,r,n))return}_convertToXCellCoord(t){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(t*this.xScale)))}_convertToYCellCoord(t){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(t*this.yScale)))}_circlesCollide(t,e,i,a,s,o){const r=a-t,n=s-e,l=i+o;return l*l>r*r+n*n}_circleAndRectCollide(t,e,i,a,s,o,r){const n=(o-a)/2,l=Math.abs(t-(a+n));if(l>n+i)return !1;const h=(r-s)/2,c=Math.abs(e-(s+h));if(c>h+i)return !1;if(l<=n||c<=h)return !0;const u=l-n,d=c-h;return u*u+d*d<=i*i}}function gt(t,i,a,s,o){const r=e.H();return i?(e.K(r,r,[1/o,1/o,1]),a||e.ad(r,r,s.angle)):e.L(r,s.labelPlaneMatrix,t),r}function vt(t,i,a,s,o){if(i){const i=e.ae(t);return e.K(i,i,[o,o,1]),a||e.ad(i,i,-s.angle),i}return s.glCoordMatrix}function xt(t,i,a,s){let o;s?(o=[t,i,s(t,i),1],e.af(o,o,a)):(o=[t,i,0,1],kt(o,o,a));const r=o[3];return {point:new e.P(o[0]/r,o[1]/r),signedDistanceFromCamera:r,isOccluded:!1}}function yt(t,e){return .5+t/e*.5}function bt(t,e){return t.x>=-e[0]&&t.x<=e[0]&&t.y>=-e[1]&&t.y<=e[1]}function wt(t,i,a,s,o,r,n,l,h,c,u,d,_,p,m){const f=s?t.textSizeData:t.iconSizeData,g=e.ag(f,a.transform.zoom),v=[256/a.width*2+1,256/a.height*2+1],x=s?t.text.dynamicLayoutVertexArray:t.icon.dynamicLayoutVertexArray;x.clear();const y=t.lineVertexArray,b=s?t.text.placedSymbolArray:t.icon.placedSymbolArray,w=a.transform.width/a.transform.height;let T=!1;for(let s=0;sMath.abs(a.x-i.x)*s?{useVertical:!0}:(t===e.ah.vertical?i.ya.x)?{needsFlipping:!0}:null}function Et(t,i,a,s,o,r,n,l,h,c,u){const d=a/24,_=i.lineOffsetX*d,p=i.lineOffsetY*d;let m;if(i.numGlyphs>1){const e=i.glyphStartIndex+i.numGlyphs,a=i.lineStartIndex,r=i.lineStartIndex+i.lineLength,h=Tt(d,l,_,p,s,i,u,t);if(!h)return {notEnoughRoom:!0};const f=xt(h.first.point.x,h.first.point.y,n,t.getElevation).point,g=xt(h.last.point.x,h.last.point.y,n,t.getElevation).point;if(o&&!s){const t=It(i.writingMode,f,g,c);if(t)return t}m=[h.first];for(let o=i.glyphStartIndex+1;o0?n.point:function(t,e,i,a,s,o){return Pt(t,e,i,1,s,o)}(t.tileAnchorPoint,o,a,0,r,t),h=It(i.writingMode,a,l,c);if(h)return h}const a=Mt(d*l.getoffsetX(i.glyphStartIndex),_,p,s,i.segment,i.lineStartIndex,i.lineStartIndex+i.lineLength,t,u);if(!a||t.projectionCache.anyProjectionOccluded)return {notEnoughRoom:!0};m=[a];}for(const t of m)e.aj(h,t.point,t.angle);return {}}function Pt(t,e,i,a,s,o){const r=t.add(t.sub(e)._unit()),n=void 0!==s?xt(r.x,r.y,s,o.getElevation).point:St(r.x,r.y,o).point,l=i.sub(n);return i.add(l._mult(a/l.mag()))}function Ct(t,i,a){const s=i.projectionCache;if(s.projections[t])return s.projections[t];const o=new e.P(i.lineVertexArray.getx(t),i.lineVertexArray.gety(t)),r=St(o.x,o.y,i);if(r.signedDistanceFromCamera>0)return s.projections[t]=r.point,s.anyProjectionOccluded=s.anyProjectionOccluded||r.isOccluded,r.point;const n=t-a.direction;return function(t,e,i,a,s){return Pt(t,e,i,a,void 0,s)}(0===a.distanceFromAnchor?i.tileAnchorPoint:new e.P(i.lineVertexArray.getx(n),i.lineVertexArray.gety(n)),o,a.previousVertex,a.absOffsetX-a.distanceFromAnchor+1,i)}function St(t,e,i){const a=t+i.translation[0],s=e+i.translation[1];let o;return !i.pitchWithMap&&i.projection.useSpecialProjectionForSymbols?(o=i.projection.projectTileCoordinates(a,s,i.unwrappedTileID,i.getElevation),o.point.x=(.5*o.point.x+.5)*i.width,o.point.y=(.5*-o.point.y+.5)*i.height):(o=xt(a,s,i.labelPlaneMatrix,i.getElevation),o.isOccluded=!1),o}function zt(t,e,i){return t._unit()._perp()._mult(e*i)}function Dt(t,i,a,s,o,r,n,l,h){if(l.projectionCache.offsets[t])return l.projectionCache.offsets[t];const c=a.add(i);if(t+h.direction=o)return l.projectionCache.offsets[t]=c,c;const u=Ct(t+h.direction,l,h),d=zt(u.sub(a),n,h.direction),_=a.add(d),p=u.add(d);return l.projectionCache.offsets[t]=e.ak(r,c,_,p)||c,l.projectionCache.offsets[t]}function Mt(t,e,i,a,s,o,r,n,l){const h=a?t-e:t+e;let c=h>0?1:-1,u=0;a&&(c*=-1,u=Math.PI),c<0&&(u+=Math.PI);let d,_=c>0?o+s:o+s+1;n.projectionCache.cachedAnchorPoint?d=n.projectionCache.cachedAnchorPoint:(d=St(n.tileAnchorPoint.x,n.tileAnchorPoint.y,n).point,n.projectionCache.cachedAnchorPoint=d);let p,m,f=d,g=d,v=0,x=0;const y=Math.abs(h),b=[];let w;for(;v+x<=y;){if(_+=c,_=r)return null;v+=x,g=f,m=p;const t={absOffsetX:y,direction:c,distanceFromAnchor:v,previousVertex:g};if(f=Ct(_,n,t),0===i)b.push(g),w=f.sub(g);else {let e;const a=f.sub(g);e=0===a.mag()?zt(Ct(_+c,n,t).sub(f),i,c):zt(a,i,c),m||(m=g.add(e)),p=Dt(_,e,f,o,r,m,i,n,t),b.push(m),w=p.sub(m);}x=w.mag();}const T=w._mult((y-v)/x)._add(m||g),I=u+Math.atan2(f.y-g.y,f.x-g.x);return b.push(T),{point:T,angle:l?I:0,path:b}}const At=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function Rt(t,e){for(let i=0;i=1;t--)l.push(r.path[t]);for(let t=1;tt.signedDistanceFromCamera<=0))?[]:t.map((t=>t.point));}let m=[];if(l.length>0){const t=l[0].clone(),i=l[0].clone();for(let e=1;e=a.x&&i.x<=s.x&&t.y>=a.y&&i.y<=s.y?[l]:i.xs.x||i.ys.y?[]:e.al([l],a.x,a.y,s.x,s.y);}for(const e of m){o.reset(e,.25*i);let a=0;a=o.length<=.5*i?1:Math.ceil(o.paddedLength/u)+1;for(let e=0;ext(t.x,t.y,i,e.getElevation)))}queryRenderedSymbols(t){if(0===t.length||0===this.grid.keysLength()&&0===this.ignoredGrid.keysLength())return {};const i=[];let a=1/0,s=1/0,o=-1/0,r=-1/0;for(const n of t){const t=new e.P(n.x+Lt,n.y+Lt);a=Math.min(a,t.x),s=Math.min(s,t.y),o=Math.max(o,t.x),r=Math.max(r,t.y),i.push(t);}const n=this.grid.query(a,s,o,r).concat(this.ignoredGrid.query(a,s,o,r)),l={},h={};for(const t of n){const a=t.key;if(void 0===l[a.bucketInstanceId]&&(l[a.bucketInstanceId]={}),l[a.bucketInstanceId][a.featureIndex])continue;const s=[new e.P(t.x1,t.y1),new e.P(t.x2,t.y1),new e.P(t.x2,t.y2),new e.P(t.x1,t.y2)];e.am(i,s)&&(l[a.bucketInstanceId][a.featureIndex]=!0,void 0===h[a.bucketInstanceId]&&(h[a.bucketInstanceId]=[]),h[a.bucketInstanceId].push(a.featureIndex));}return h}insertCollisionBox(t,e,i,a,s,o){(i?this.ignoredGrid:this.grid).insert({bucketInstanceId:a,featureIndex:s,collisionGroupID:o,overlapMode:e},t[0],t[1],t[2],t[3]);}insertCollisionCircles(t,e,i,a,s,o){const r=i?this.ignoredGrid:this.grid,n={bucketInstanceId:a,featureIndex:s,collisionGroupID:o,overlapMode:e};for(let e=0;e=this.screenRightBoundary||athis.screenBottomBoundary}isInsideGrid(t,e,i,a){return i>=0&&t=0&&ethis.projectAndGetPerspectiveRatio(a,t.x,t.y,s,h)));I=t.some((t=>!t.isOccluded)),T=t.map((t=>t.point));}else I=!0;return {box:e.ao(T),allPointsOccluded:!I}}}function Bt(t,i,a){return i*(e.X/(t.tileSize*Math.pow(2,a-t.tileID.overscaledZ)))}class Ot{constructor(t,e,i,a){this.opacity=t?Math.max(0,Math.min(1,t.opacity+(t.placed?e:-e))):a&&i?1:0,this.placed=i;}isHidden(){return 0===this.opacity&&!this.placed}}class Nt{constructor(t,e,i,a,s){this.text=new Ot(t?t.text:null,e,i,s),this.icon=new Ot(t?t.icon:null,e,a,s);}isHidden(){return this.text.isHidden()&&this.icon.isHidden()}}class Ut{constructor(t,e,i){this.text=t,this.icon=e,this.skipFade=i;}}class jt{constructor(){this.invProjMatrix=e.H(),this.viewportMatrix=e.H(),this.circles=[];}}class Zt{constructor(t,e,i,a,s){this.bucketInstanceId=t,this.featureIndex=e,this.sourceLayerIndex=i,this.bucketIndex=a,this.tileID=s;}}class qt{constructor(t){this.crossSourceCollisions=t,this.maxGroupID=0,this.collisionGroups={};}get(t){if(this.crossSourceCollisions)return {ID:0,predicate:null};if(!this.collisionGroups[t]){const e=++this.maxGroupID;this.collisionGroups[t]={ID:e,predicate:t=>t.collisionGroupID===e};}return this.collisionGroups[t]}}function Vt(t,i,a,s,o){const{horizontalAlign:r,verticalAlign:n}=e.au(t);return new e.P(-(r-.5)*i+s[0]*o,-(n-.5)*a+s[1]*o)}class Gt{constructor(t,e,i,a,s,o){this.transform=t.clone(),this.terrain=i,this.collisionIndex=new Ft(this.transform,e),this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=a,this.retainedQueryData={},this.collisionGroups=new qt(s),this.collisionCircleArrays={},this.collisionBoxArrays=new Map,this.prevPlacement=o,o&&(o.prevPlacement=void 0),this.placedOrientations={};}_getTerrainElevationFunc(t){const e=this.terrain;return e?(i,a)=>e.getElevation(t,i,a):null}getBucketParts(t,i,a,s){const o=a.getBucket(i),r=a.latestFeatureIndex;if(!o||!r||i.id!==o.layerIds[0])return;const n=a.collisionBoxArray,l=o.layers[0].layout,h=o.layers[0].paint,c=Math.pow(2,this.transform.zoom-a.tileID.overscaledZ),u=a.tileSize/e.X,d=a.tileID.toUnwrapped(),_=this.transform.calculatePosMatrix(d),p="map"===l.get("text-pitch-alignment"),m="map"===l.get("text-rotation-alignment"),f=Bt(a,1,this.transform.zoom),g=this.collisionIndex.mapProjection.translatePosition(this.transform,a,h.get("text-translate"),h.get("text-translate-anchor")),v=this.collisionIndex.mapProjection.translatePosition(this.transform,a,h.get("icon-translate"),h.get("icon-translate-anchor")),x=gt(_,p,m,this.transform,f);let y=null;if(p){const t=vt(_,p,m,this.transform,f);y=e.L([],this.transform.labelPlaneMatrix,t);}this.retainedQueryData[o.bucketInstanceId]=new Zt(o.bucketInstanceId,r,o.sourceLayerIndex,o.index,a.tileID);const b={bucket:o,layout:l,translationText:g,translationIcon:v,posMatrix:_,unwrappedTileID:d,textLabelPlaneMatrix:x,labelToScreenMatrix:y,scale:c,textPixelRatio:u,holdingForFade:a.holdingForFade(),collisionBoxArray:n,partiallyEvaluatedTextSize:e.ag(o.textSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(o.sourceID)};if(s)for(const e of o.sortKeyRanges){const{sortKey:i,symbolInstanceStart:a,symbolInstanceEnd:s}=e;t.push({sortKey:i,symbolInstanceStart:a,symbolInstanceEnd:s,parameters:b});}else t.push({symbolInstanceStart:0,symbolInstanceEnd:o.symbolInstances.length,parameters:b});}attemptAnchorPlacement(t,i,a,s,o,r,n,l,h,c,u,d,_,p,m,f,g,v,x){const y=e.aq[t.textAnchor],b=[t.textOffset0,t.textOffset1],w=Vt(y,a,s,b,o),T=this.collisionIndex.placeCollisionBox(i,d,l,h,c,n,r,f,u.predicate,x,w);if((!v||this.collisionIndex.placeCollisionBox(v,d,l,h,c,n,r,g,u.predicate,x,w).placeable)&&T.placeable){let t;if(this.prevPlacement&&this.prevPlacement.variableOffsets[_.crossTileID]&&this.prevPlacement.placements[_.crossTileID]&&this.prevPlacement.placements[_.crossTileID].text&&(t=this.prevPlacement.variableOffsets[_.crossTileID].anchor),0===_.crossTileID)throw new Error("symbolInstance.crossTileID can't be 0");return this.variableOffsets[_.crossTileID]={textOffset:b,width:a,height:s,anchor:y,textBoxScale:o,prevAnchor:t},this.markUsedJustification(p,y,_,m),p.allowVerticalPlacement&&(this.markUsedOrientation(p,m,_),this.placedOrientations[_.crossTileID]=m),{shift:w,placedGlyphBoxes:T}}}placeLayerBucketPart(t,i,a){const{bucket:s,layout:o,translationText:r,translationIcon:n,posMatrix:l,unwrappedTileID:h,textLabelPlaneMatrix:c,labelToScreenMatrix:u,textPixelRatio:d,holdingForFade:_,collisionBoxArray:p,partiallyEvaluatedTextSize:m,collisionGroup:f}=t.parameters,g=o.get("text-optional"),v=o.get("icon-optional"),x=e.ar(o,"text-overlap","text-allow-overlap"),y="always"===x,b=e.ar(o,"icon-overlap","icon-allow-overlap"),w="always"===b,T="map"===o.get("text-rotation-alignment"),I="map"===o.get("text-pitch-alignment"),E="none"!==o.get("icon-text-fit"),P="viewport-y"===o.get("symbol-z-order"),C=y&&(w||!s.hasIconData()||v),S=w&&(y||!s.hasTextData()||g);!s.collisionArrays&&p&&s.deserializeCollisionBoxes(p);const z=this._getTerrainElevationFunc(this.retainedQueryData[s.bucketInstanceId].tileID),D=(t,p,w)=>{var P,D;if(i[t.crossTileID])return;if(_)return void(this.placements[t.crossTileID]=new Ut(!1,!1,!1));let M=!1,A=!1,R=!0,k=null,L={box:null,placeable:!1,offscreen:null},F={box:null,placeable:!1,offscreen:null},B=null,O=null,N=null,U=0,j=0,Z=0;p.textFeatureIndex?U=p.textFeatureIndex:t.useRuntimeCollisionCircles&&(U=t.featureIndex),p.verticalTextFeatureIndex&&(j=p.verticalTextFeatureIndex);const q=p.textBox;if(q){const i=i=>{let a=e.ah.horizontal;if(s.allowVerticalPlacement&&!i&&this.prevPlacement){const e=this.prevPlacement.placedOrientations[t.crossTileID];e&&(this.placedOrientations[t.crossTileID]=e,a=e,this.markUsedOrientation(s,a,t));}return a},o=(i,a)=>{if(s.allowVerticalPlacement&&t.numVerticalGlyphVertices>0&&p.verticalTextBox){for(const t of s.writingModes)if(t===e.ah.vertical?(L=a(),F=L):L=i(),L&&L.placeable)break}else L=i();},c=t.textAnchorOffsetStartIndex,u=t.textAnchorOffsetEndIndex;if(u===c){const a=(e,i)=>{const a=this.collisionIndex.placeCollisionBox(e,x,d,l,h,I,T,r,f.predicate,z);return a&&a.placeable&&(this.markUsedOrientation(s,i,t),this.placedOrientations[t.crossTileID]=i),a};o((()=>a(q,e.ah.horizontal)),(()=>{const i=p.verticalTextBox;return s.allowVerticalPlacement&&t.numVerticalGlyphVertices>0&&i?a(i,e.ah.vertical):{box:null,offscreen:null}})),i(L&&L.placeable);}else {let _=e.aq[null===(D=null===(P=this.prevPlacement)||void 0===P?void 0:P.variableOffsets[t.crossTileID])||void 0===D?void 0:D.anchor];const m=(i,o,p)=>{const m=i.x2-i.x1,g=i.y2-i.y1,v=t.textBoxScale,y=E&&"never"===b?o:null;let w=null,P="never"===x?1:2,C="never";_&&P++;for(let e=0;em(q,p.iconBox,e.ah.horizontal)),(()=>{const i=p.verticalTextBox;return s.allowVerticalPlacement&&(!L||!L.placeable)&&t.numVerticalGlyphVertices>0&&i?m(i,p.verticalIconBox,e.ah.vertical):{box:null,occluded:!0,offscreen:null}})),L&&(M=L.placeable,R=L.offscreen);const g=i(L&&L.placeable);if(!M&&this.prevPlacement){const e=this.prevPlacement.variableOffsets[t.crossTileID];e&&(this.variableOffsets[t.crossTileID]=e,this.markUsedJustification(s,e.anchor,t,g));}}}if(B=L,M=B&&B.placeable,R=B&&B.offscreen,t.useRuntimeCollisionCircles){const i=s.text.placedSymbolArray.get(t.centerJustifiedTextSymbolIndex),n=e.ai(s.textSizeData,m,i),d=o.get("text-padding");O=this.collisionIndex.placeCollisionCircles(x,i,s.lineVertexArray,s.glyphOffsetArray,n,l,h,c,u,a,I,f.predicate,t.collisionCircleDiameter,d,r,z),O.circles.length&&O.collisionDetected&&!a&&e.w("Collisions detected, but collision boxes are not shown"),M=y||O.circles.length>0&&!O.collisionDetected,R=R&&O.offscreen;}if(p.iconFeatureIndex&&(Z=p.iconFeatureIndex),p.iconBox){const t=t=>this.collisionIndex.placeCollisionBox(t,b,d,l,h,I,T,n,f.predicate,z,E&&k?k:void 0);F&&F.placeable&&p.verticalIconBox?(N=t(p.verticalIconBox),A=N.placeable):(N=t(p.iconBox),A=N.placeable),R=R&&N.offscreen;}const V=g||0===t.numHorizontalGlyphVertices&&0===t.numVerticalGlyphVertices,G=v||0===t.numIconVertices;V||G?G?V||(A=A&&M):M=A&&M:A=M=A&&M;const H=A&&N.placeable;if(M&&B.placeable&&this.collisionIndex.insertCollisionBox(B.box,x,o.get("text-ignore-placement"),s.bucketInstanceId,F&&F.placeable&&j?j:U,f.ID),H&&this.collisionIndex.insertCollisionBox(N.box,b,o.get("icon-ignore-placement"),s.bucketInstanceId,Z,f.ID),O&&M&&this.collisionIndex.insertCollisionCircles(O.circles,x,o.get("text-ignore-placement"),s.bucketInstanceId,U,f.ID),a&&this.storeCollisionData(s.bucketInstanceId,w,p,B,N,O),0===t.crossTileID)throw new Error("symbolInstance.crossTileID can't be 0");if(0===s.bucketInstanceId)throw new Error("bucket.bucketInstanceId can't be 0");this.placements[t.crossTileID]=new Ut(M||C,A||S,R||s.justReloaded),i[t.crossTileID]=!0;};if(P){if(0!==t.symbolInstanceStart)throw new Error("bucket.bucketInstanceId should be 0");const e=s.getSortedSymbolIndexes(this.transform.angle);for(let t=e.length-1;t>=0;--t){const i=e[t];D(s.symbolInstances.get(i),s.collisionArrays[i],i);}}else for(let e=t.symbolInstanceStart;e=0&&(t.text.placedSymbolArray.get(e).crossTileID=o>=0&&e!==o?0:a.crossTileID);}markUsedOrientation(t,i,a){const s=i===e.ah.horizontal||i===e.ah.horizontalOnly?i:0,o=i===e.ah.vertical?i:0,r=[a.leftJustifiedTextSymbolIndex,a.centerJustifiedTextSymbolIndex,a.rightJustifiedTextSymbolIndex];for(const e of r)t.text.placedSymbolArray.get(e).placedOrientation=s;a.verticalPlacedTextSymbolIndex&&(t.text.placedSymbolArray.get(a.verticalPlacedTextSymbolIndex).placedOrientation=o);}commit(t){this.commitTime=t,this.zoomAtLastRecencyCheck=this.transform.zoom;const e=this.prevPlacement;let i=!1;this.prevZoomAdjustment=e?e.zoomAdjustment(this.transform.zoom):0;const a=e?e.symbolFadeChange(t):1,s=e?e.opacities:{},o=e?e.variableOffsets:{},r=e?e.placedOrientations:{};for(const t in this.placements){const e=this.placements[t],o=s[t];o?(this.opacities[t]=new Nt(o,a,e.text,e.icon),i=i||e.text!==o.text.placed||e.icon!==o.icon.placed):(this.opacities[t]=new Nt(null,a,e.text,e.icon,e.skipFade),i=i||e.text||e.icon);}for(const t in s){const e=s[t];if(!this.opacities[t]){const s=new Nt(e,a,!1,!1);s.isHidden()||(this.opacities[t]=s,i=i||e.text.placed||e.icon.placed);}}for(const t in o)this.variableOffsets[t]||!this.opacities[t]||this.opacities[t].isHidden()||(this.variableOffsets[t]=o[t]);for(const t in r)this.placedOrientations[t]||!this.opacities[t]||this.opacities[t].isHidden()||(this.placedOrientations[t]=r[t]);if(e&&void 0===e.lastPlacementChangeTime)throw new Error("Last placement time for previous placement is not defined");i?this.lastPlacementChangeTime=t:"number"!=typeof this.lastPlacementChangeTime&&(this.lastPlacementChangeTime=e?e.lastPlacementChangeTime:t);}updateLayerOpacities(t,e){const i={};for(const a of e){const e=a.getBucket(t);e&&a.latestFeatureIndex&&t.id===e.layerIds[0]&&this.updateBucketOpacities(e,a.tileID,i,a.collisionBoxArray);}}updateBucketOpacities(t,i,a,s){t.hasTextData()&&(t.text.opacityVertexArray.clear(),t.text.hasVisibleVertices=!1),t.hasIconData()&&(t.icon.opacityVertexArray.clear(),t.icon.hasVisibleVertices=!1),t.hasIconCollisionBoxData()&&t.iconCollisionBox.collisionVertexArray.clear(),t.hasTextCollisionBoxData()&&t.textCollisionBox.collisionVertexArray.clear();const o=t.layers[0],r=o.layout,n=new Nt(null,0,!1,!1,!0),l=r.get("text-allow-overlap"),h=r.get("icon-allow-overlap"),c=o._unevaluatedLayout.hasValue("text-variable-anchor")||o._unevaluatedLayout.hasValue("text-variable-anchor-offset"),u="map"===r.get("text-rotation-alignment"),d="map"===r.get("text-pitch-alignment"),_="none"!==r.get("icon-text-fit"),p=new Nt(null,0,l&&(h||!t.hasIconData()||r.get("icon-optional")),h&&(l||!t.hasTextData()||r.get("text-optional")),!0);!t.collisionArrays&&s&&(t.hasIconCollisionBoxData()||t.hasTextCollisionBoxData())&&t.deserializeCollisionBoxes(s);const m=(t,e,i)=>{for(let a=0;a0,v=this.placedOrientations[s.crossTileID],x=v===e.ah.vertical,y=v===e.ah.horizontal||v===e.ah.horizontalOnly;if(o>0||r>0){const e=te(h.text);m(t.text,o,x?ee:e),m(t.text,r,y?ee:e);const i=h.text.isHidden();[s.rightJustifiedTextSymbolIndex,s.centerJustifiedTextSymbolIndex,s.leftJustifiedTextSymbolIndex].forEach((e=>{e>=0&&(t.text.placedSymbolArray.get(e).hidden=i||x?1:0);})),s.verticalPlacedTextSymbolIndex>=0&&(t.text.placedSymbolArray.get(s.verticalPlacedTextSymbolIndex).hidden=i||y?1:0);const a=this.variableOffsets[s.crossTileID];a&&this.markUsedJustification(t,a.anchor,s,v);const n=this.placedOrientations[s.crossTileID];n&&(this.markUsedJustification(t,"left",s,n),this.markUsedOrientation(t,n,s));}if(g){const e=te(h.icon),i=!(_&&s.verticalPlacedIconSymbolIndex&&x);s.placedIconSymbolIndex>=0&&(m(t.icon,s.numIconVertices,i?e:ee),t.icon.placedSymbolArray.get(s.placedIconSymbolIndex).hidden=h.icon.isHidden()),s.verticalPlacedIconSymbolIndex>=0&&(m(t.icon,s.numVerticalIconVertices,i?ee:e),t.icon.placedSymbolArray.get(s.verticalPlacedIconSymbolIndex).hidden=h.icon.isHidden());}const b=f&&f.has(i)?f.get(i):{text:null,icon:null};if(t.hasIconCollisionBoxData()||t.hasTextCollisionBoxData()){const a=t.collisionArrays[i];if(a){let i=new e.P(0,0);if(a.textBox||a.verticalTextBox){let e=!0;if(c){const t=this.variableOffsets[l];t?(i=Vt(t.anchor,t.width,t.height,t.textOffset,t.textBoxScale),u&&i._rotate(d?this.transform.angle:-this.transform.angle)):e=!1;}if(a.textBox||a.verticalTextBox){let s;a.textBox&&(s=x),a.verticalTextBox&&(s=y),Ht(t.textCollisionBox.collisionVertexArray,h.text.placed,!e||s,b.text,i.x,i.y);}}if(a.iconBox||a.verticalIconBox){const e=Boolean(!y&&a.verticalIconBox);let s;a.iconBox&&(s=e),a.verticalIconBox&&(s=!e),Ht(t.iconCollisionBox.collisionVertexArray,h.icon.placed,s,b.icon,_?i.x:0,_?i.y:0);}}}}if(t.sortFeatures(this.transform.angle),this.retainedQueryData[t.bucketInstanceId]&&(this.retainedQueryData[t.bucketInstanceId].featureSortOrder=t.featureSortOrder),t.hasTextData()&&t.text.opacityVertexBuffer&&t.text.opacityVertexBuffer.updateData(t.text.opacityVertexArray),t.hasIconData()&&t.icon.opacityVertexBuffer&&t.icon.opacityVertexBuffer.updateData(t.icon.opacityVertexArray),t.hasIconCollisionBoxData()&&t.iconCollisionBox.collisionVertexBuffer&&t.iconCollisionBox.collisionVertexBuffer.updateData(t.iconCollisionBox.collisionVertexArray),t.hasTextCollisionBoxData()&&t.textCollisionBox.collisionVertexBuffer&&t.textCollisionBox.collisionVertexBuffer.updateData(t.textCollisionBox.collisionVertexArray),t.text.opacityVertexArray.length!==t.text.layoutVertexArray.length/4)throw new Error(`bucket.text.opacityVertexArray.length (= ${t.text.opacityVertexArray.length}) !== bucket.text.layoutVertexArray.length (= ${t.text.layoutVertexArray.length}) / 4`);if(t.icon.opacityVertexArray.length!==t.icon.layoutVertexArray.length/4)throw new Error(`bucket.icon.opacityVertexArray.length (= ${t.icon.opacityVertexArray.length}) !== bucket.icon.layoutVertexArray.length (= ${t.icon.layoutVertexArray.length}) / 4`);if(t.bucketInstanceId in this.collisionCircleArrays){const e=this.collisionCircleArrays[t.bucketInstanceId];t.placementInvProjMatrix=e.invProjMatrix,t.placementViewportMatrix=e.viewportMatrix,t.collisionCircleArray=e.circles,delete this.collisionCircleArrays[t.bucketInstanceId];}}symbolFadeChange(t){return 0===this.fadeDuration?1:(t-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment}zoomAdjustment(t){return Math.max(0,(this.transform.zoom-t)/1.5)}hasTransitions(t){return this.stale||t-this.lastPlacementChangeTimet}setStale(){this.stale=!0;}}function Ht(t,e,i,a,s,o){a&&0!==a.length||(a=[0,0,0,0]);const r=a[0]-Lt,n=a[1]-Lt,l=a[2]-Lt,h=a[3]-Lt;t.emplaceBack(e?1:0,i?1:0,s||0,o||0,r,n),t.emplaceBack(e?1:0,i?1:0,s||0,o||0,l,n),t.emplaceBack(e?1:0,i?1:0,s||0,o||0,l,h),t.emplaceBack(e?1:0,i?1:0,s||0,o||0,r,h);}const Wt=Math.pow(2,25),$t=Math.pow(2,24),Xt=Math.pow(2,17),Kt=Math.pow(2,16),Jt=Math.pow(2,9),Yt=Math.pow(2,8),Qt=Math.pow(2,1);function te(t){if(0===t.opacity&&!t.placed)return 0;if(1===t.opacity&&t.placed)return 4294967295;const e=t.placed?1:0,i=Math.floor(127*t.opacity);return i*Wt+e*$t+i*Xt+e*Kt+i*Jt+e*Yt+i*Qt+e}const ee=0;function ie(){return {isOccluded:(t,e,i)=>!1,getPitchedTextCorrection:(t,e,i)=>1,get useSpecialProjectionForSymbols(){return !1},projectTileCoordinates(t,e,i,a){throw new Error("Not implemented.")},translatePosition:(t,e,i,a)=>function(t,e,i,a,s=!1){if(!i[0]&&!i[1])return [0,0];const o=s?"map"===a?t.angle:0:"viewport"===a?-t.angle:0;if(o){const t=Math.sin(o),e=Math.cos(o);i=[i[0]*e-i[1]*t,i[0]*t+i[1]*e];}return [s?i[0]:Bt(e,i[0],t.zoom),s?i[1]:Bt(e,i[1],t.zoom)]}(t,e,i,a),getCircleRadiusCorrection:t=>1}}class ae{constructor(t){this._sortAcrossTiles="viewport-y"!==t.layout.get("symbol-z-order")&&!t.layout.get("symbol-sort-key").isConstant(),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[];}continuePlacement(t,e,i,a,s){const o=this._bucketParts;for(;this._currentTileIndext.sortKey-e.sortKey)));this._currentPartIndex!this._forceFullPlacement&&o.now()-a>2;for(;this._currentPlacementIndex>=0;){const a=e[t[this._currentPlacementIndex]],o=this.placement.collisionIndex.transform.zoom;if("symbol"===a.type&&(!a.minzoom||a.minzoom<=o)&&(!a.maxzoom||a.maxzoom>o)){if(this._inProgressLayer||(this._inProgressLayer=new ae(a)),this._inProgressLayer.continuePlacement(i[a.source],this.placement,this._showCollisionBoxes,a,s))return;delete this._inProgressLayer;}this._currentPlacementIndex--;}this._done=!0;}commit(t){return this.placement.commit(t),this.placement}}const oe=512/e.X/2;class re{constructor(t,i,a){this.tileID=t,this.bucketInstanceId=a,this._symbolsByKey={};const s=new Map;for(let t=0;t({x:Math.floor(t.anchorX*oe),y:Math.floor(t.anchorY*oe)}))),crossTileIDs:i.map((t=>t.crossTileID))};if(a.positions.length>128){const t=new e.av(a.positions.length,16,Uint16Array);for(const{x:e,y:i}of a.positions)t.add(e,i);t.finish(),delete a.positions,a.index=t;}this._symbolsByKey[t]=a;}}getScaledCoordinates(t,i){const{x:a,y:s,z:o}=this.tileID.canonical,{x:r,y:n,z:l}=i.canonical,h=oe/Math.pow(2,l-o),c=(n*e.X+t.anchorY)*h,u=s*e.X*oe;return {x:Math.floor((r*e.X+t.anchorX)*h-a*e.X*oe),y:Math.floor(c-u)}}findMatches(t,e,i){const a=this.tileID.canonical.zt))}}class ne{constructor(){this.maxCrossTileID=0;}generate(){return ++this.maxCrossTileID}}class le{constructor(){this.indexes={},this.usedCrossTileIDs={},this.lng=0;}handleWrapJump(t){const e=Math.round((t-this.lng)/360);if(0!==e)for(const t in this.indexes){const i=this.indexes[t],a={};for(const t in i){const s=i[t];s.tileID=s.tileID.unwrapTo(s.tileID.wrap+e),a[s.tileID.key]=s;}this.indexes[t]=a;}this.lng=t;}addBucket(t,e,i){if(this.indexes[t.overscaledZ]&&this.indexes[t.overscaledZ][t.key]){if(this.indexes[t.overscaledZ][t.key].bucketInstanceId===e.bucketInstanceId)return !1;this.removeBucketCrossTileIDs(t.overscaledZ,this.indexes[t.overscaledZ][t.key]);}for(let t=0;tt.overscaledZ)for(const i in s){const o=s[i];o.tileID.isChildOf(t)&&o.findMatches(e.symbolInstances,t,a);}else {const o=s[t.scaledTo(Number(i)).key];o&&o.findMatches(e.symbolInstances,t,a);}}for(let t=0;t{e[t]=!0;}));for(const t in this.layerIndexes)e[t]||delete this.layerIndexes[t];}}const ce=(t,i)=>e.t(t,i&&i.filter((t=>"source.canvas"!==t.identifier))),ue=e.aw();class de extends e.E{constructor(t,i={}){super(),this._rtlPluginLoaded=()=>{for(const t in this.sourceCaches){const e=this.sourceCaches[t].getSource().type;"vector"!==e&&"geojson"!==e||this.sourceCaches[t].reload();}},this.map=t,this.dispatcher=new U(N(),t._getMapId()),this.dispatcher.registerMessageHandler("GG",((t,e)=>this.getGlyphs(t,e))),this.dispatcher.registerMessageHandler("GI",((t,e)=>this.getImages(t,e))),this.imageManager=new T,this.imageManager.setEventedParent(this),this.glyphManager=new C(t._requestManager,i.localIdeographFontFamily),this.lineAtlas=new R(256,512),this.crossTileSymbolIndex=new he,this._spritesImagesIds={},this._layers={},this._order=[],this.sourceCaches={},this.zoomHistory=new e.ax,this._loaded=!1,this._availableImages=[],this._resetUpdates(),this.dispatcher.broadcast("SR",e.ay()),nt().on(st,this._rtlPluginLoaded),this.on("data",(t=>{if("source"!==t.dataType||"metadata"!==t.sourceDataType)return;const e=this.sourceCaches[t.sourceId];if(!e)return;const i=e.getSource();if(i&&i.vectorLayerIds)for(const t in this._layers){const e=this._layers[t];e.source===i.id&&this._validateLayer(e);}}));}loadURL(t,i={},a){this.fire(new e.k("dataloading",{dataType:"style"})),i.validate="boolean"!=typeof i.validate||i.validate;const s=this.map._requestManager.transformRequest(t,"Style");this._loadStyleRequest=new AbortController;const o=this._loadStyleRequest;e.h(s,this._loadStyleRequest).then((t=>{this._loadStyleRequest=null,this._load(t.data,i,a);})).catch((t=>{this._loadStyleRequest=null,t&&!o.signal.aborted&&this.fire(new e.j(t));}));}loadJSON(t,i={},a){this.fire(new e.k("dataloading",{dataType:"style"})),this._frameRequest=new AbortController,o.frameAsync(this._frameRequest).then((()=>{this._frameRequest=null,i.validate=!1!==i.validate,this._load(t,i,a);})).catch((()=>{}));}loadEmpty(){this.fire(new e.k("dataloading",{dataType:"style"})),this._load(ue,{validate:!1});}_load(t,i,a){var s;const o=i.transformStyle?i.transformStyle(a,t):t;if(!i.validate||!ce(this,e.u(o))){this._loaded=!0,this.stylesheet=o;for(const t in o.sources)this.addSource(t,o.sources[t],{validate:!1});o.sprite?this._loadSprite(o.sprite):this.imageManager.setLoaded(!0),this.glyphManager.setURL(o.glyphs),this._createLayers(),this.light=new D(this.stylesheet.light),this.sky=new A(this.stylesheet.sky),this.map.setTerrain(null!==(s=this.stylesheet.terrain)&&void 0!==s?s:null),this.fire(new e.k("data",{dataType:"style"})),this.fire(new e.k("style.load"));}}_createLayers(){const t=e.az(this.stylesheet.layers);this.dispatcher.broadcast("SL",t),this._order=t.map((t=>t.id)),this._layers={},this._serializedLayers=null;for(const i of t){const t=e.aA(i);t.setEventedParent(this,{layer:{id:i.id}}),this._layers[i.id]=t;}}_loadSprite(t,i=!1,a=void 0){let s;this.imageManager.setLoaded(!1),this._spriteRequest=new AbortController,function(t,i,a,s){return e._(this,void 0,void 0,(function*(){const r=x(t),n=a>1?"@2x":"",l={},h={};for(const{id:t,url:a}of r){const o=i.transformRequest(y(a,n,".json"),"SpriteJSON");l[t]=e.h(o,s);const r=i.transformRequest(y(a,n,".png"),"SpriteImage");h[t]=_.getImage(r,s);}return yield Promise.all([...Object.values(l),...Object.values(h)]),function(t,i){return e._(this,void 0,void 0,(function*(){const e={};for(const a in t){e[a]={};const s=o.getImageCanvasContext((yield i[a]).data),r=(yield t[a]).data;for(const t in r){const{width:i,height:o,x:n,y:l,sdf:h,pixelRatio:c,stretchX:u,stretchY:d,content:_,textFitWidth:p,textFitHeight:m}=r[t];e[a][t]={data:null,pixelRatio:c,sdf:h,stretchX:u,stretchY:d,content:_,textFitWidth:p,textFitHeight:m,spriteData:{width:i,height:o,x:n,y:l,context:s}};}}return e}))}(l,h)}))}(t,this.map._requestManager,this.map.getPixelRatio(),this._spriteRequest).then((t=>{if(this._spriteRequest=null,t)for(const e in t){this._spritesImagesIds[e]=[];const a=this._spritesImagesIds[e]?this._spritesImagesIds[e].filter((e=>!(e in t))):[];for(const t of a)this.imageManager.removeImage(t),this._changedImages[t]=!0;for(const a in t[e]){const s="default"===e?a:`${e}:${a}`;this._spritesImagesIds[e].push(s),s in this.imageManager.images?this.imageManager.updateImage(s,t[e][a],!1):this.imageManager.addImage(s,t[e][a]),i&&(this._changedImages[s]=!0);}}})).catch((t=>{this._spriteRequest=null,s=t,this.fire(new e.j(s));})).finally((()=>{this.imageManager.setLoaded(!0),this._availableImages=this.imageManager.listImages(),i&&(this._changed=!0),this.dispatcher.broadcast("SI",this._availableImages),this.fire(new e.k("data",{dataType:"style"})),a&&a(s);}));}_unloadSprite(){for(const t of Object.values(this._spritesImagesIds).flat())this.imageManager.removeImage(t),this._changedImages[t]=!0;this._spritesImagesIds={},this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new e.k("data",{dataType:"style"}));}_validateLayer(t){const i=this.sourceCaches[t.source];if(!i)return;const a=t.sourceLayer;if(!a)return;const s=i.getSource();("geojson"===s.type||s.vectorLayerIds&&-1===s.vectorLayerIds.indexOf(a))&&this.fire(new e.j(new Error(`Source layer "${a}" does not exist on source "${s.id}" as specified by style layer "${t.id}".`)));}loaded(){if(!this._loaded)return !1;if(Object.keys(this._updatedSources).length)return !1;for(const t in this.sourceCaches)if(!this.sourceCaches[t].loaded())return !1;return !!this.imageManager.isLoaded()}_serializeByIds(t,i=!1){const a=this._serializedAllLayers();if(!t||0===t.length)return Object.values(i?e.aB(a):a);const s=[];for(const o of t)if(a[o]){const t=i?e.aB(a[o]):a[o];s.push(t);}return s}_serializedAllLayers(){let t=this._serializedLayers;if(t)return t;t=this._serializedLayers={};const e=Object.keys(this._layers);for(const i of e){const e=this._layers[i];"custom"!==e.type&&(t[i]=e.serialize());}return t}hasTransitions(){if(this.light&&this.light.hasTransition())return !0;if(this.sky&&this.sky.hasTransition())return !0;for(const t in this.sourceCaches)if(this.sourceCaches[t].hasTransition())return !0;for(const t in this._layers)if(this._layers[t].hasTransition())return !0;return !1}_checkLoaded(){if(!this._loaded)throw new Error("Style is not done loading.")}update(t){if(!this._loaded)return;const i=this._changed;if(i){const e=Object.keys(this._updatedLayers),i=Object.keys(this._removedLayers);(e.length||i.length)&&this._updateWorkerLayers(e,i);for(const t in this._updatedSources){const e=this._updatedSources[t];if("reload"===e)this._reloadSource(t);else {if("clear"!==e)throw new Error(`Invalid action ${e}`);this._clearSource(t);}}this._updateTilesForChangedImages(),this._updateTilesForChangedGlyphs();for(const e in this._updatedPaintProps)this._layers[e].updateTransitions(t);this.light.updateTransitions(t),this.sky.updateTransitions(t),this._resetUpdates();}const a={};for(const t in this.sourceCaches){const e=this.sourceCaches[t];a[t]=e.used,e.used=!1;}for(const e of this._order){const i=this._layers[e];i.recalculate(t,this._availableImages),!i.isHidden(t.zoom)&&i.source&&(this.sourceCaches[i.source].used=!0);}for(const t in a){const i=this.sourceCaches[t];!!a[t]!=!!i.used&&i.fire(new e.k("data",{sourceDataType:"visibility",dataType:"source",sourceId:t}));}this.light.recalculate(t),this.sky.recalculate(t),this.z=t.zoom,i&&this.fire(new e.k("data",{dataType:"style"}));}_updateTilesForChangedImages(){const t=Object.keys(this._changedImages);if(t.length){for(const e in this.sourceCaches)this.sourceCaches[e].reloadTilesForDependencies(["icons","patterns"],t);this._changedImages={};}}_updateTilesForChangedGlyphs(){if(this._glyphsDidChange){for(const t in this.sourceCaches)this.sourceCaches[t].reloadTilesForDependencies(["glyphs"],[""]);this._glyphsDidChange=!1;}}_updateWorkerLayers(t,e){this.dispatcher.broadcast("UL",{layers:this._serializeByIds(t,!1),removedIds:e});}_resetUpdates(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSources={},this._updatedPaintProps={},this._changedImages={},this._glyphsDidChange=!1;}setState(t,i={}){var a;this._checkLoaded();const s=this.serialize();if(t=i.transformStyle?i.transformStyle(s,t):t,(null===(a=i.validate)||void 0===a||a)&&ce(this,e.u(t)))return !1;(t=e.aB(t)).layers=e.az(t.layers);const o=e.aC(s,t),r=this._getOperationsToPerform(o);if(r.unimplemented.length>0)throw new Error(`Unimplemented: ${r.unimplemented.join(", ")}.`);if(0===r.operations.length)return !1;for(const t of r.operations)t();return this.stylesheet=t,this._serializedLayers=null,!0}_getOperationsToPerform(t){const e=[],i=[];for(const a of t)switch(a.command){case"setCenter":case"setZoom":case"setBearing":case"setPitch":continue;case"addLayer":e.push((()=>this.addLayer.apply(this,a.args)));break;case"removeLayer":e.push((()=>this.removeLayer.apply(this,a.args)));break;case"setPaintProperty":e.push((()=>this.setPaintProperty.apply(this,a.args)));break;case"setLayoutProperty":e.push((()=>this.setLayoutProperty.apply(this,a.args)));break;case"setFilter":e.push((()=>this.setFilter.apply(this,a.args)));break;case"addSource":e.push((()=>this.addSource.apply(this,a.args)));break;case"removeSource":e.push((()=>this.removeSource.apply(this,a.args)));break;case"setLayerZoomRange":e.push((()=>this.setLayerZoomRange.apply(this,a.args)));break;case"setLight":e.push((()=>this.setLight.apply(this,a.args)));break;case"setGeoJSONSourceData":e.push((()=>this.setGeoJSONSourceData.apply(this,a.args)));break;case"setGlyphs":e.push((()=>this.setGlyphs.apply(this,a.args)));break;case"setSprite":e.push((()=>this.setSprite.apply(this,a.args)));break;case"setSky":e.push((()=>this.setSky.apply(this,a.args)));break;case"setTerrain":e.push((()=>this.map.setTerrain.apply(this,a.args)));break;case"setTransition":e.push((()=>{}));break;default:i.push(a.command);}return {operations:e,unimplemented:i}}addImage(t,i){if(this.getImage(t))return this.fire(new e.j(new Error(`An image named "${t}" already exists.`)));this.imageManager.addImage(t,i),this._afterImageUpdated(t);}updateImage(t,e){this.imageManager.updateImage(t,e);}getImage(t){return this.imageManager.getImage(t)}removeImage(t){if(!this.getImage(t))return this.fire(new e.j(new Error(`An image named "${t}" does not exist.`)));this.imageManager.removeImage(t),this._afterImageUpdated(t);}_afterImageUpdated(t){this._availableImages=this.imageManager.listImages(),this._changedImages[t]=!0,this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new e.k("data",{dataType:"style"}));}listImages(){return this._checkLoaded(),this.imageManager.listImages()}addSource(t,i,a={}){if(this._checkLoaded(),void 0!==this.sourceCaches[t])throw new Error(`Source "${t}" already exists.`);if(!i.type)throw new Error(`The type property must be defined, but only the following properties were given: ${Object.keys(i).join(", ")}.`);if(["vector","raster","geojson","video","image"].indexOf(i.type)>=0&&this._validate(e.u.source,`sources.${t}`,i,null,a))return;this.map&&this.map._collectResourceTiming&&(i.collectResourceTiming=!0);const s=this.sourceCaches[t]=new ut(t,i,this.dispatcher);s.style=this,s.setEventedParent(this,(()=>({isSourceLoaded:s.loaded(),source:s.serialize(),sourceId:t}))),s.onAdd(this.map),this._changed=!0;}removeSource(t){if(this._checkLoaded(),void 0===this.sourceCaches[t])throw new Error("There is no source with this ID");for(const i in this._layers)if(this._layers[i].source===t)return this.fire(new e.j(new Error(`Source "${t}" cannot be removed while layer "${i}" is using it.`)));const i=this.sourceCaches[t];delete this.sourceCaches[t],delete this._updatedSources[t],i.fire(new e.k("data",{sourceDataType:"metadata",dataType:"source",sourceId:t})),i.setEventedParent(null),i.onRemove(this.map),this._changed=!0;}setGeoJSONSourceData(t,e){if(this._checkLoaded(),void 0===this.sourceCaches[t])throw new Error(`There is no source with this ID=${t}`);const i=this.sourceCaches[t].getSource();if("geojson"!==i.type)throw new Error(`geojsonSource.type is ${i.type}, which is !== 'geojson`);i.setData(e),this._changed=!0;}getSource(t){return this.sourceCaches[t]&&this.sourceCaches[t].getSource()}addLayer(t,i,a={}){this._checkLoaded();const s=t.id;if(this.getLayer(s))return void this.fire(new e.j(new Error(`Layer "${s}" already exists on this map.`)));let o;if("custom"===t.type){if(ce(this,e.aD(t)))return;o=e.aA(t);}else {if("source"in t&&"object"==typeof t.source&&(this.addSource(s,t.source),t=e.aB(t),t=e.e(t,{source:s})),this._validate(e.u.layer,`layers.${s}`,t,{arrayIndex:-1},a))return;o=e.aA(t),this._validateLayer(o),o.setEventedParent(this,{layer:{id:s}});}const r=i?this._order.indexOf(i):this._order.length;if(i&&-1===r)this.fire(new e.j(new Error(`Cannot add layer "${s}" before non-existing layer "${i}".`)));else {if(this._order.splice(r,0,s),this._layerOrderChanged=!0,this._layers[s]=o,this._removedLayers[s]&&o.source&&"custom"!==o.type){const t=this._removedLayers[s];delete this._removedLayers[s],t.type!==o.type?this._updatedSources[o.source]="clear":(this._updatedSources[o.source]="reload",this.sourceCaches[o.source].pause());}this._updateLayer(o),o.onAdd&&o.onAdd(this.map);}}moveLayer(t,i){if(this._checkLoaded(),this._changed=!0,!this._layers[t])return void this.fire(new e.j(new Error(`The layer '${t}' does not exist in the map's style and cannot be moved.`)));if(t===i)return;const a=this._order.indexOf(t);this._order.splice(a,1);const s=i?this._order.indexOf(i):this._order.length;i&&-1===s?this.fire(new e.j(new Error(`Cannot move layer "${t}" before non-existing layer "${i}".`))):(this._order.splice(s,0,t),this._layerOrderChanged=!0);}removeLayer(t){this._checkLoaded();const i=this._layers[t];if(!i)return void this.fire(new e.j(new Error(`Cannot remove non-existing layer "${t}".`)));i.setEventedParent(null);const a=this._order.indexOf(t);this._order.splice(a,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[t]=i,delete this._layers[t],this._serializedLayers&&delete this._serializedLayers[t],delete this._updatedLayers[t],delete this._updatedPaintProps[t],i.onRemove&&i.onRemove(this.map);}getLayer(t){return this._layers[t]}getLayersOrder(){return [...this._order]}hasLayer(t){return t in this._layers}setLayerZoomRange(t,i,a){this._checkLoaded();const s=this.getLayer(t);s?s.minzoom===i&&s.maxzoom===a||(null!=i&&(s.minzoom=i),null!=a&&(s.maxzoom=a),this._updateLayer(s)):this.fire(new e.j(new Error(`Cannot set the zoom range of non-existing layer "${t}".`)));}setFilter(t,i,a={}){this._checkLoaded();const s=this.getLayer(t);if(s){if(!e.aE(s.filter,i))return null==i?(s.filter=void 0,void this._updateLayer(s)):void(this._validate(e.u.filter,`layers.${s.id}.filter`,i,null,a)||(s.filter=e.aB(i),this._updateLayer(s)))}else this.fire(new e.j(new Error(`Cannot filter non-existing layer "${t}".`)));}getFilter(t){return e.aB(this.getLayer(t).filter)}setLayoutProperty(t,i,a,s={}){this._checkLoaded();const o=this.getLayer(t);o?e.aE(o.getLayoutProperty(i),a)||(o.setLayoutProperty(i,a,s),this._updateLayer(o)):this.fire(new e.j(new Error(`Cannot style non-existing layer "${t}".`)));}getLayoutProperty(t,i){const a=this.getLayer(t);if(a)return a.getLayoutProperty(i);this.fire(new e.j(new Error(`Cannot get style of non-existing layer "${t}".`)));}setPaintProperty(t,i,a,s={}){this._checkLoaded();const o=this.getLayer(t);o?e.aE(o.getPaintProperty(i),a)||(o.setPaintProperty(i,a,s)&&this._updateLayer(o),this._changed=!0,this._updatedPaintProps[t]=!0,this._serializedLayers=null):this.fire(new e.j(new Error(`Cannot style non-existing layer "${t}".`)));}getPaintProperty(t,e){return this.getLayer(t).getPaintProperty(e)}setFeatureState(t,i){this._checkLoaded();const a=t.source,s=t.sourceLayer,o=this.sourceCaches[a];if(void 0===o)return void this.fire(new e.j(new Error(`The source '${a}' does not exist in the map's style.`)));const r=o.getSource().type;"geojson"===r&&s?this.fire(new e.j(new Error("GeoJSON sources cannot have a sourceLayer parameter."))):"vector"!==r||s?(void 0===t.id&&this.fire(new e.j(new Error("The feature id parameter must be provided."))),o.setFeatureState(s,t.id,i)):this.fire(new e.j(new Error("The sourceLayer parameter must be provided for vector source types.")));}removeFeatureState(t,i){this._checkLoaded();const a=t.source,s=this.sourceCaches[a];if(void 0===s)return void this.fire(new e.j(new Error(`The source '${a}' does not exist in the map's style.`)));const o=s.getSource().type,r="vector"===o?t.sourceLayer:void 0;"vector"!==o||r?i&&"string"!=typeof t.id&&"number"!=typeof t.id?this.fire(new e.j(new Error("A feature id is required to remove its specific state property."))):s.removeFeatureState(r,t.id,i):this.fire(new e.j(new Error("The sourceLayer parameter must be provided for vector source types.")));}getFeatureState(t){this._checkLoaded();const i=t.source,a=t.sourceLayer,s=this.sourceCaches[i];if(void 0!==s)return "vector"!==s.getSource().type||a?(void 0===t.id&&this.fire(new e.j(new Error("The feature id parameter must be provided."))),s.getFeatureState(a,t.id)):void this.fire(new e.j(new Error("The sourceLayer parameter must be provided for vector source types.")));this.fire(new e.j(new Error(`The source '${i}' does not exist in the map's style.`)));}getTransition(){return e.e({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)}serialize(){if(!this._loaded)return;const t=e.aF(this.sourceCaches,(t=>t.serialize())),i=this._serializeByIds(this._order,!0),a=this.map.getTerrain()||void 0,s=this.stylesheet;return e.aG({version:s.version,name:s.name,metadata:s.metadata,light:s.light,sky:s.sky,center:s.center,zoom:s.zoom,bearing:s.bearing,pitch:s.pitch,sprite:s.sprite,glyphs:s.glyphs,transition:s.transition,sources:t,layers:i,terrain:a},(t=>void 0!==t))}_updateLayer(t){this._updatedLayers[t.id]=!0,t.source&&!this._updatedSources[t.source]&&"raster"!==this.sourceCaches[t.source].getSource().type&&(this._updatedSources[t.source]="reload",this.sourceCaches[t.source].pause()),this._serializedLayers=null,this._changed=!0;}_flattenAndSortRenderedFeatures(t){const e=t=>"fill-extrusion"===this._layers[t].type,i={},a=[];for(let s=this._order.length-1;s>=0;s--){const o=this._order[s];if(e(o)){i[o]=s;for(const e of t){const t=e[o];if(t)for(const e of t)a.push(e);}}}a.sort(((t,e)=>e.intersectionZ-t.intersectionZ));const s=[];for(let o=this._order.length-1;o>=0;o--){const r=this._order[o];if(e(r))for(let t=a.length-1;t>=0;t--){const e=a[t].feature;if(i[e.layer.id]{const a=i.featureSortOrder;if(a){const i=a.indexOf(t.featureIndex);return a.indexOf(e.featureIndex)-i}return e.featureIndex-t.featureIndex}));for(const t of s)e.push(t);}}for(const e in n)n[e].forEach((a=>{const s=a.feature,o=i[t[e].source].getFeatureState(s.layer["source-layer"],s.id);s.source=s.layer.source,s.layer["source-layer"]&&(s.sourceLayer=s.layer["source-layer"]),s.state=o;}));return n}(this._layers,r,this.sourceCaches,t,i,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(o)}querySourceFeatures(t,i){i&&i.filter&&this._validate(e.u.filter,"querySourceFeatures.filter",i.filter,null,i);const a=this.sourceCaches[t];return a?function(t,e){const i=t.getRenderableIds().map((e=>t.getTileByID(e))),a=[],s={};for(let t=0;tt.getTileByID(e))).sort(((t,e)=>e.tileID.overscaledZ-t.tileID.overscaledZ||(t.tileID.isLessThan(e.tileID)?-1:1)));}const a=this.crossTileSymbolIndex.addLayer(i,l[i.source],t.center.lng);r=r||a;}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),((s=s||this._layerOrderChanged||0===i)||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(o.now(),t.zoom))&&(this.pauseablePlacement=new se(t,this.map.terrain,this._order,s,e,i,a,this.placement),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,l),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(o.now()),n=!0),r&&this.pauseablePlacement.placement.setStale()),n||r)for(const t of this._order){const e=this._layers[t];"symbol"===e.type&&this.placement.updateLayerOpacities(e,l[e.source]);}return !this.pauseablePlacement.isDone()||this.placement.hasTransitions(o.now())}_releaseSymbolFadeTiles(){for(const t in this.sourceCaches)this.sourceCaches[t].releaseSymbolFadeTiles();}getImages(t,i){return e._(this,void 0,void 0,(function*(){const t=yield this.imageManager.getImages(i.icons);this._updateTilesForChangedImages();const e=this.sourceCaches[i.source];return e&&e.setDependencies(i.tileID.key,i.type,i.icons),t}))}getGlyphs(t,i){return e._(this,void 0,void 0,(function*(){const t=yield this.glyphManager.getGlyphs(i.stacks),e=this.sourceCaches[i.source];return e&&e.setDependencies(i.tileID.key,i.type,[""]),t}))}getGlyphsUrl(){return this.stylesheet.glyphs||null}setGlyphs(t,i={}){this._checkLoaded(),t&&this._validate(e.u.glyphs,"glyphs",t,null,i)||(this._glyphsDidChange=!0,this.stylesheet.glyphs=t,this.glyphManager.entries={},this.glyphManager.setURL(t));}addSprite(t,i,a={},s){this._checkLoaded();const o=[{id:t,url:i}],r=[...x(this.stylesheet.sprite),...o];this._validate(e.u.sprite,"sprite",r,null,a)||(this.stylesheet.sprite=r,this._loadSprite(o,!0,s));}removeSprite(t){this._checkLoaded();const i=x(this.stylesheet.sprite);if(i.find((e=>e.id===t))){if(this._spritesImagesIds[t])for(const e of this._spritesImagesIds[t])this.imageManager.removeImage(e),this._changedImages[e]=!0;i.splice(i.findIndex((e=>e.id===t)),1),this.stylesheet.sprite=i.length>0?i:void 0,delete this._spritesImagesIds[t],this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new e.k("data",{dataType:"style"}));}else this.fire(new e.j(new Error(`Sprite "${t}" doesn't exists on this map.`)));}getSprite(){return x(this.stylesheet.sprite)}setSprite(t,i={},a){this._checkLoaded(),t&&this._validate(e.u.sprite,"sprite",t,null,i)||(this.stylesheet.sprite=t,t?this._loadSprite(t,!0,a):(this._unloadSprite(),a&&a(null)));}}var _e=e.Y([{name:"a_pos",type:"Int16",components:2}]);const pe={prelude:me("#ifdef GL_ES\nprecision mediump float;\n#else\n#if !defined(lowp)\n#define lowp\n#endif\n#if !defined(mediump)\n#define mediump\n#endif\n#if !defined(highp)\n#define highp\n#endif\n#endif\n","#ifdef GL_ES\nprecision highp float;\n#else\n#if !defined(lowp)\n#define lowp\n#endif\n#if !defined(mediump)\n#define mediump\n#endif\n#if !defined(highp)\n#define highp\n#endif\n#endif\nvec2 unpack_float(const float packedValue) {int packedIntValue=int(packedValue);int v0=packedIntValue/256;return vec2(v0,packedIntValue-v0*256);}vec2 unpack_opacity(const float packedOpacity) {int intOpacity=int(packedOpacity)/2;return vec2(float(intOpacity)/127.0,mod(packedOpacity,2.0));}vec4 decode_color(const vec2 encodedColor) {return vec4(unpack_float(encodedColor[0])/255.0,unpack_float(encodedColor[1])/255.0\n);}float unpack_mix_vec2(const vec2 packedValue,const float t) {return mix(packedValue[0],packedValue[1],t);}vec4 unpack_mix_color(const vec4 packedColors,const float t) {vec4 minColor=decode_color(vec2(packedColors[0],packedColors[1]));vec4 maxColor=decode_color(vec2(packedColors[2],packedColors[3]));return mix(minColor,maxColor,t);}vec2 get_pattern_pos(const vec2 pixel_coord_upper,const vec2 pixel_coord_lower,const vec2 pattern_size,const float tile_units_to_pixels,const vec2 pos) {vec2 offset=mod(mod(mod(pixel_coord_upper,pattern_size)*256.0,pattern_size)*256.0+pixel_coord_lower,pattern_size);return (tile_units_to_pixels*pos+offset)/pattern_size;}\n#ifdef TERRAIN3D\nuniform sampler2D u_terrain;uniform float u_terrain_dim;uniform mat4 u_terrain_matrix;uniform vec4 u_terrain_unpack;uniform float u_terrain_exaggeration;uniform highp sampler2D u_depth;\n#endif\nconst highp vec4 bitSh=vec4(256.*256.*256.,256.*256.,256.,1.);const highp vec4 bitShifts=vec4(1.)/bitSh;highp float unpack(highp vec4 color) {return dot(color,bitShifts);}highp float depthOpacity(vec3 frag) {\n#ifdef TERRAIN3D\nhighp float d=unpack(texture2D(u_depth,frag.xy*0.5+0.5))+0.0001-frag.z;return 1.0-max(0.0,min(1.0,-d*500.0));\n#else\nreturn 1.0;\n#endif\n}float calculate_visibility(vec4 pos) {\n#ifdef TERRAIN3D\nvec3 frag=pos.xyz/pos.w;highp float d=depthOpacity(frag);if (d > 0.95) return 1.0;return (d+depthOpacity(frag+vec3(0.0,0.01,0.0)))/2.0;\n#else\nreturn 1.0;\n#endif\n}float ele(vec2 pos) {\n#ifdef TERRAIN3D\nvec4 rgb=(texture2D(u_terrain,pos)*255.0)*u_terrain_unpack;return rgb.r+rgb.g+rgb.b-u_terrain_unpack.a;\n#else\nreturn 0.0;\n#endif\n}float get_elevation(vec2 pos) {\n#ifdef TERRAIN3D\nvec2 coord=(u_terrain_matrix*vec4(pos,0.0,1.0)).xy*u_terrain_dim+1.0;vec2 f=fract(coord);vec2 c=(floor(coord)+0.5)/(u_terrain_dim+2.0);float d=1.0/(u_terrain_dim+2.0);float tl=ele(c);float tr=ele(c+vec2(d,0.0));float bl=ele(c+vec2(0.0,d));float br=ele(c+vec2(d,d));float elevation=mix(mix(tl,tr,f.x),mix(bl,br,f.x),f.y);return elevation*u_terrain_exaggeration;\n#else\nreturn 0.0;\n#endif\n}"),background:me("uniform vec4 u_color;uniform float u_opacity;void main() {gl_FragColor=u_color*u_opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}"),backgroundPattern:me("uniform vec2 u_pattern_tl_a;uniform vec2 u_pattern_br_a;uniform vec2 u_pattern_tl_b;uniform vec2 u_pattern_br_b;uniform vec2 u_texsize;uniform float u_mix;uniform float u_opacity;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(u_pattern_tl_a/u_texsize,u_pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(u_pattern_tl_b/u_texsize,u_pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);gl_FragColor=mix(color1,color2,u_mix)*u_opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_pattern_size_a;uniform vec2 u_pattern_size_b;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_scale_a;uniform float u_scale_b;uniform float u_tile_units_to_pixels;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_a*u_pattern_size_a,u_tile_units_to_pixels,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_b*u_pattern_size_b,u_tile_units_to_pixels,a_pos);}"),circle:me("varying vec3 v_data;varying float v_visibility;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define mediump float radius\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define highp vec4 stroke_color\n#pragma mapbox: define mediump float stroke_width\n#pragma mapbox: define lowp float stroke_opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize mediump float radius\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize highp vec4 stroke_color\n#pragma mapbox: initialize mediump float stroke_width\n#pragma mapbox: initialize lowp float stroke_opacity\nvec2 extrude=v_data.xy;float extrude_length=length(extrude);float antialiased_blur=v_data.z;float opacity_t=smoothstep(0.0,antialiased_blur,extrude_length-1.0);float color_t=stroke_width < 0.01 ? 0.0 : smoothstep(antialiased_blur,0.0,extrude_length-radius/(radius+stroke_width));gl_FragColor=v_visibility*opacity_t*mix(color*opacity,stroke_color*stroke_opacity,color_t);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform bool u_scale_with_map;uniform bool u_pitch_with_map;uniform vec2 u_extrude_scale;uniform lowp float u_device_pixel_ratio;uniform highp float u_camera_to_center_distance;attribute vec2 a_pos;varying vec3 v_data;varying float v_visibility;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define mediump float radius\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define highp vec4 stroke_color\n#pragma mapbox: define mediump float stroke_width\n#pragma mapbox: define lowp float stroke_opacity\nvoid main(void) {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize mediump float radius\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize highp vec4 stroke_color\n#pragma mapbox: initialize mediump float stroke_width\n#pragma mapbox: initialize lowp float stroke_opacity\nvec2 extrude=vec2(mod(a_pos,2.0)*2.0-1.0);vec2 circle_center=floor(a_pos*0.5);float ele=get_elevation(circle_center);v_visibility=calculate_visibility(u_matrix*vec4(circle_center,ele,1.0));if (u_pitch_with_map) {vec2 corner_position=circle_center;if (u_scale_with_map) {corner_position+=extrude*(radius+stroke_width)*u_extrude_scale;} else {vec4 projected_center=u_matrix*vec4(circle_center,0,1);corner_position+=extrude*(radius+stroke_width)*u_extrude_scale*(projected_center.w/u_camera_to_center_distance);}gl_Position=u_matrix*vec4(corner_position,ele,1);} else {gl_Position=u_matrix*vec4(circle_center,ele,1);if (u_scale_with_map) {gl_Position.xy+=extrude*(radius+stroke_width)*u_extrude_scale*u_camera_to_center_distance;} else {gl_Position.xy+=extrude*(radius+stroke_width)*u_extrude_scale*gl_Position.w;}}float antialiasblur=-max(1.0/u_device_pixel_ratio/(radius+stroke_width),blur);v_data=vec3(extrude.x,extrude.y,antialiasblur);}"),clippingMask:me("void main() {gl_FragColor=vec4(1.0);}","attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}"),heatmap:me("uniform highp float u_intensity;varying vec2 v_extrude;\n#pragma mapbox: define highp float weight\n#define GAUSS_COEF 0.3989422804014327\nvoid main() {\n#pragma mapbox: initialize highp float weight\nfloat d=-0.5*3.0*3.0*dot(v_extrude,v_extrude);float val=weight*u_intensity*GAUSS_COEF*exp(d);gl_FragColor=vec4(val,1.0,1.0,1.0);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform float u_extrude_scale;uniform float u_opacity;uniform float u_intensity;attribute vec2 a_pos;varying vec2 v_extrude;\n#pragma mapbox: define highp float weight\n#pragma mapbox: define mediump float radius\nconst highp float ZERO=1.0/255.0/16.0;\n#define GAUSS_COEF 0.3989422804014327\nvoid main(void) {\n#pragma mapbox: initialize highp float weight\n#pragma mapbox: initialize mediump float radius\nvec2 unscaled_extrude=vec2(mod(a_pos,2.0)*2.0-1.0);float S=sqrt(-2.0*log(ZERO/weight/u_intensity/GAUSS_COEF))/3.0;v_extrude=S*unscaled_extrude;vec2 extrude=v_extrude*radius*u_extrude_scale;vec4 pos=vec4(floor(a_pos*0.5)+extrude,get_elevation(floor(a_pos*0.5)),1);gl_Position=u_matrix*pos;}"),heatmapTexture:me("uniform sampler2D u_image;uniform sampler2D u_color_ramp;uniform float u_opacity;varying vec2 v_pos;void main() {float t=texture2D(u_image,v_pos).r;vec4 color=texture2D(u_color_ramp,vec2(t,0.5));gl_FragColor=color*u_opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(0.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_world;attribute vec2 a_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos*u_world,0,1);v_pos.x=a_pos.x;v_pos.y=1.0-a_pos.y;}"),collisionBox:me("varying float v_placed;varying float v_notUsed;void main() {float alpha=0.5;gl_FragColor=vec4(1.0,0.0,0.0,1.0)*alpha;if (v_placed > 0.5) {gl_FragColor=vec4(0.0,0.0,1.0,0.5)*alpha;}if (v_notUsed > 0.5) {gl_FragColor*=.1;}}","attribute vec2 a_anchor_pos;attribute vec2 a_placed;attribute vec2 a_box_real;uniform mat4 u_matrix;uniform vec2 u_pixel_extrude_scale;varying float v_placed;varying float v_notUsed;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}void main() {gl_Position=projectTileWithElevation(a_anchor_pos,get_elevation(a_anchor_pos));gl_Position.xy=((a_box_real+0.5)*u_pixel_extrude_scale*2.0-1.0)*vec2(1.0,-1.0)*gl_Position.w;if (gl_Position.z/gl_Position.w < 1.1) {gl_Position.z=0.5;}v_placed=a_placed.x;v_notUsed=a_placed.y;}"),collisionCircle:me("varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;void main() {float alpha=0.5*min(v_perspective_ratio,1.0);float stroke_radius=0.9*max(v_perspective_ratio,1.0);float distance_to_center=length(v_extrude);float distance_to_edge=abs(distance_to_center-v_radius);float opacity_t=smoothstep(-stroke_radius,0.0,-distance_to_edge);vec4 color=mix(vec4(0.0,0.0,1.0,0.5),vec4(1.0,0.0,0.0,1.0),v_collision);gl_FragColor=color*alpha*opacity_t;}","attribute vec2 a_pos;attribute float a_radius;attribute vec2 a_flags;uniform mat4 u_matrix;uniform mat4 u_inv_matrix;uniform vec2 u_viewport_size;uniform float u_camera_to_center_distance;varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;vec3 toTilePosition(vec2 screenPos) {vec4 rayStart=u_inv_matrix*vec4(screenPos,-1.0,1.0);vec4 rayEnd =u_inv_matrix*vec4(screenPos, 1.0,1.0);rayStart.xyz/=rayStart.w;rayEnd.xyz /=rayEnd.w;highp float t=(0.0-rayStart.z)/(rayEnd.z-rayStart.z);return mix(rayStart.xyz,rayEnd.xyz,t);}void main() {vec2 quadCenterPos=a_pos;float radius=a_radius;float collision=a_flags.x;float vertexIdx=a_flags.y;vec2 quadVertexOffset=vec2(mix(-1.0,1.0,float(vertexIdx >=2.0)),mix(-1.0,1.0,float(vertexIdx >=1.0 && vertexIdx <=2.0)));vec2 quadVertexExtent=quadVertexOffset*radius;vec3 tilePos=toTilePosition(quadCenterPos);vec4 clipPos=u_matrix*vec4(tilePos,1.0);highp float camera_to_anchor_distance=clipPos.w;highp float collision_perspective_ratio=clamp(0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,4.0);float padding_factor=1.2;v_radius=radius;v_extrude=quadVertexExtent*padding_factor;v_perspective_ratio=collision_perspective_ratio;v_collision=collision;gl_Position=vec4(clipPos.xyz/clipPos.w,1.0)+vec4(quadVertexExtent*padding_factor/u_viewport_size*2.0,0.0,0.0);}"),debug:me("uniform highp vec4 u_color;uniform sampler2D u_overlay;varying vec2 v_uv;void main() {vec4 overlay_color=texture2D(u_overlay,v_uv);gl_FragColor=mix(u_color,overlay_color,overlay_color.a);}","attribute vec2 a_pos;varying vec2 v_uv;uniform mat4 u_matrix;uniform float u_overlay_scale;void main() {v_uv=a_pos/8192.0;gl_Position=u_matrix*vec4(a_pos*u_overlay_scale,get_elevation(a_pos),1);}"),fill:me("#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float opacity\ngl_FragColor=color*opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec2 a_pos;uniform mat4 u_matrix;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float opacity\ngl_Position=u_matrix*vec4(a_pos,0,1);}"),fillOutline:me("varying vec2 v_pos;\n#pragma mapbox: define highp vec4 outline_color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 outline_color\n#pragma mapbox: initialize lowp float opacity\nfloat dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=outline_color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec2 a_pos;uniform mat4 u_matrix;uniform vec2 u_world;varying vec2 v_pos;\n#pragma mapbox: define highp vec4 outline_color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 outline_color\n#pragma mapbox: initialize lowp float opacity\ngl_Position=u_matrix*vec4(a_pos,0,1);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}"),fillOutlinePattern:me("uniform vec2 u_texsize;uniform sampler2D u_image;uniform float u_fade;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec2 v_pos;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);float dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=mix(color1,color2,u_fade)*alpha*opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_world;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform vec3 u_scale;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec2 v_pos;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;gl_Position=u_matrix*vec4(a_pos,0,1);vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,a_pos);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}"),fillPattern:me("#ifdef GL_ES\nprecision highp float;\n#endif\nuniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);gl_FragColor=mix(color1,color2,u_fade)*opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform vec3 u_scale;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileZoomRatio,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileZoomRatio,a_pos);}"),fillExtrusion:me("varying vec4 v_color;void main() {gl_FragColor=v_color;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;uniform float u_vertical_gradient;uniform lowp float u_opacity;attribute vec2 a_pos;attribute vec4 a_normal_ed;\n#ifdef TERRAIN3D\nattribute vec2 a_centroid;\n#endif\nvarying vec4 v_color;\n#pragma mapbox: define highp float base\n#pragma mapbox: define highp float height\n#pragma mapbox: define highp vec4 color\nvoid main() {\n#pragma mapbox: initialize highp float base\n#pragma mapbox: initialize highp float height\n#pragma mapbox: initialize highp vec4 color\nvec3 normal=a_normal_ed.xyz;\n#ifdef TERRAIN3D\nfloat height_terrain3d_offset=get_elevation(a_centroid);float base_terrain3d_offset=height_terrain3d_offset-(base > 0.0 ? 0.0 : 10.0);\n#else\nfloat height_terrain3d_offset=0.0;float base_terrain3d_offset=0.0;\n#endif\nbase=max(0.0,base)+base_terrain3d_offset;height=max(0.0,height)+height_terrain3d_offset;float t=mod(normal.x,2.0);gl_Position=u_matrix*vec4(a_pos,t > 0.0 ? height : base,1);float colorvalue=color.r*0.2126+color.g*0.7152+color.b*0.0722;v_color=vec4(0.0,0.0,0.0,1.0);vec4 ambientlight=vec4(0.03,0.03,0.03,1.0);color+=ambientlight;float directional=clamp(dot(normal/16384.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((1.0-colorvalue+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_color.r+=clamp(color.r*directional*u_lightcolor.r,mix(0.0,0.3,1.0-u_lightcolor.r),1.0);v_color.g+=clamp(color.g*directional*u_lightcolor.g,mix(0.0,0.3,1.0-u_lightcolor.g),1.0);v_color.b+=clamp(color.b*directional*u_lightcolor.b,mix(0.0,0.3,1.0-u_lightcolor.b),1.0);v_color*=u_opacity;}"),fillExtrusionPattern:me("uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting;\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float base\n#pragma mapbox: initialize lowp float height\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);vec4 mixedColor=mix(color1,color2,u_fade);gl_FragColor=mixedColor*v_lighting;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_height_factor;uniform vec3 u_scale;uniform float u_vertical_gradient;uniform lowp float u_opacity;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;attribute vec2 a_pos;attribute vec4 a_normal_ed;\n#ifdef TERRAIN3D\nattribute vec2 a_centroid;\n#endif\nvarying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting;\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float base\n#pragma mapbox: initialize lowp float height\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec3 normal=a_normal_ed.xyz;float edgedistance=a_normal_ed.w;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;\n#ifdef TERRAIN3D\nfloat height_terrain3d_offset=get_elevation(a_centroid);float base_terrain3d_offset=height_terrain3d_offset-(base > 0.0 ? 0.0 : 10.0);\n#else\nfloat height_terrain3d_offset=0.0;float base_terrain3d_offset=0.0;\n#endif\nbase=max(0.0,base)+base_terrain3d_offset;height=max(0.0,height)+height_terrain3d_offset;float t=mod(normal.x,2.0);float z=t > 0.0 ? height : base;gl_Position=u_matrix*vec4(a_pos,z,1);vec2 pos=normal.x==1.0 && normal.y==0.0 && normal.z==16384.0\n? a_pos\n: vec2(edgedistance,z*u_height_factor);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,pos);v_lighting=vec4(0.0,0.0,0.0,1.0);float directional=clamp(dot(normal/16383.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((0.5+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_lighting.rgb+=clamp(directional*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));v_lighting*=u_opacity;}"),hillshadePrepare:me("#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_dimension;uniform float u_zoom;uniform vec4 u_unpack;float getElevation(vec2 coord,float bias) {vec4 data=texture2D(u_image,coord)*255.0;data.a=-1.0;return dot(data,u_unpack)/4.0;}void main() {vec2 epsilon=1.0/u_dimension;float a=getElevation(v_pos+vec2(-epsilon.x,-epsilon.y),0.0);float b=getElevation(v_pos+vec2(0,-epsilon.y),0.0);float c=getElevation(v_pos+vec2(epsilon.x,-epsilon.y),0.0);float d=getElevation(v_pos+vec2(-epsilon.x,0),0.0);float e=getElevation(v_pos,0.0);float f=getElevation(v_pos+vec2(epsilon.x,0),0.0);float g=getElevation(v_pos+vec2(-epsilon.x,epsilon.y),0.0);float h=getElevation(v_pos+vec2(0,epsilon.y),0.0);float i=getElevation(v_pos+vec2(epsilon.x,epsilon.y),0.0);float exaggerationFactor=u_zoom < 2.0 ? 0.4 : u_zoom < 4.5 ? 0.35 : 0.3;float exaggeration=u_zoom < 15.0 ? (u_zoom-15.0)*exaggerationFactor : 0.0;vec2 deriv=vec2((c+f+f+i)-(a+d+d+g),(g+h+h+i)-(a+b+b+c))/pow(2.0,exaggeration+(19.2562-u_zoom));gl_FragColor=clamp(vec4(deriv.x/2.0+0.5,deriv.y/2.0+0.5,1.0,1.0),0.0,1.0);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_dimension;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);highp vec2 epsilon=1.0/u_dimension;float scale=(u_dimension.x-2.0)/u_dimension.x;v_pos=(a_texture_pos/8192.0)*scale+epsilon;}"),hillshade:me("uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_latrange;uniform vec2 u_light;uniform vec4 u_shadow;uniform vec4 u_highlight;uniform vec4 u_accent;\n#define PI 3.141592653589793\nvoid main() {vec4 pixel=texture2D(u_image,v_pos);vec2 deriv=((pixel.rg*2.0)-1.0);float scaleFactor=cos(radians((u_latrange[0]-u_latrange[1])*(1.0-v_pos.y)+u_latrange[1]));float slope=atan(1.25*length(deriv)/scaleFactor);float aspect=deriv.x !=0.0 ? atan(deriv.y,-deriv.x) : PI/2.0*(deriv.y > 0.0 ? 1.0 :-1.0);float intensity=u_light.x;float azimuth=u_light.y+PI;float base=1.875-intensity*1.75;float maxValue=0.5*PI;float scaledSlope=intensity !=0.5 ? ((pow(base,slope)-1.0)/(pow(base,maxValue)-1.0))*maxValue : slope;float accent=cos(scaledSlope);vec4 accent_color=(1.0-accent)*u_accent*clamp(intensity*2.0,0.0,1.0);float shade=abs(mod((aspect+azimuth)/PI+0.5,2.0)-1.0);vec4 shade_color=mix(u_shadow,u_highlight,shade)*sin(scaledSlope)*clamp(intensity*2.0,0.0,1.0);gl_FragColor=accent_color*(1.0-shade_color.a)+shade_color;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=a_texture_pos/8192.0;}"),line:me("uniform lowp float u_device_pixel_ratio;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\nfloat dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);gl_FragColor=color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","\n#define scale 0.015873016\nattribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform vec2 u_units_to_pixels;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp float v_linesofar;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float width\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float width\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;v_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*2.0;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;\n#ifdef TERRAIN3D\nv_gamma_scale=1.0;\n#else\nfloat extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;\n#endif\nv_width2=vec2(outset,inset);}"),lineGradient:me("uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;varying highp vec2 v_uv;\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\nfloat dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);vec4 color=texture2D(u_image,v_uv);gl_FragColor=color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","\n#define scale 0.015873016\nattribute vec2 a_pos_normal;attribute vec4 a_data;attribute float a_uv_x;attribute float a_split_index;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_units_to_pixels;uniform float u_image_height;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp vec2 v_uv;\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float width\nvoid main() {\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float width\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;highp float texel_height=1.0/u_image_height;highp float half_texel_height=0.5*texel_height;v_uv=vec2(a_uv_x,a_split_index*texel_height-half_texel_height);vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;\n#ifdef TERRAIN3D\nv_gamma_scale=1.0;\n#else\nfloat extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;\n#endif\nv_width2=vec2(outset,inset);}"),linePattern:me("#ifdef GL_ES\nprecision highp float;\n#endif\nuniform lowp float u_device_pixel_ratio;uniform vec2 u_texsize;uniform float u_fade;uniform mediump vec3 u_scale;uniform sampler2D u_image;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width;\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;vec2 pattern_size_a=vec2(display_size_a.x*fromScale/tileZoomRatio,display_size_a.y);vec2 pattern_size_b=vec2(display_size_b.x*toScale/tileZoomRatio,display_size_b.y);float aspect_a=display_size_a.y/v_width;float aspect_b=display_size_b.y/v_width;float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float x_a=mod(v_linesofar/pattern_size_a.x*aspect_a,1.0);float x_b=mod(v_linesofar/pattern_size_b.x*aspect_b,1.0);float y=0.5*v_normal.y+0.5;vec2 texel_size=1.0/u_texsize;vec2 pos_a=mix(pattern_tl_a*texel_size-texel_size,pattern_br_a*texel_size+texel_size,vec2(x_a,y));vec2 pos_b=mix(pattern_tl_b*texel_size-texel_size,pattern_br_b*texel_size+texel_size,vec2(x_b,y));vec4 color=mix(texture2D(u_image,pos_a),texture2D(u_image,pos_b),u_fade);gl_FragColor=color*alpha*opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","\n#define scale 0.015873016\n#define LINE_DISTANCE_SCALE 2.0\nattribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform vec2 u_units_to_pixels;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width;\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize mediump float width\n#pragma mapbox: initialize lowp float floorwidth\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;\n#ifdef TERRAIN3D\nv_gamma_scale=1.0;\n#else\nfloat extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;\n#endif\nv_linesofar=a_linesofar;v_width2=vec2(outset,inset);v_width=floorwidth;}"),lineSDF:me("uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;uniform float u_sdfgamma;uniform float u_mix;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float width\n#pragma mapbox: initialize lowp float floorwidth\nfloat dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float sdfdist_a=texture2D(u_image,v_tex_a).a;float sdfdist_b=texture2D(u_image,v_tex_b).a;float sdfdist=mix(sdfdist_a,sdfdist_b,u_mix);alpha*=smoothstep(0.5-u_sdfgamma/floorwidth,0.5+u_sdfgamma/floorwidth,sdfdist);gl_FragColor=color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","\n#define scale 0.015873016\n#define LINE_DISTANCE_SCALE 2.0\nattribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_patternscale_a;uniform float u_tex_y_a;uniform vec2 u_patternscale_b;uniform float u_tex_y_b;uniform vec2 u_units_to_pixels;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float width\n#pragma mapbox: initialize lowp float floorwidth\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;\n#ifdef TERRAIN3D\nv_gamma_scale=1.0;\n#else\nfloat extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;\n#endif\nv_tex_a=vec2(a_linesofar*u_patternscale_a.x/floorwidth,normal.y*u_patternscale_a.y+u_tex_y_a);v_tex_b=vec2(a_linesofar*u_patternscale_b.x/floorwidth,normal.y*u_patternscale_b.y+u_tex_y_b);v_width2=vec2(outset,inset);}"),raster:me("uniform float u_fade_t;uniform float u_opacity;uniform sampler2D u_image0;uniform sampler2D u_image1;varying vec2 v_pos0;varying vec2 v_pos1;uniform float u_brightness_low;uniform float u_brightness_high;uniform float u_saturation_factor;uniform float u_contrast_factor;uniform vec3 u_spin_weights;void main() {vec4 color0=texture2D(u_image0,v_pos0);vec4 color1=texture2D(u_image1,v_pos1);if (color0.a > 0.0) {color0.rgb=color0.rgb/color0.a;}if (color1.a > 0.0) {color1.rgb=color1.rgb/color1.a;}vec4 color=mix(color0,color1,u_fade_t);color.a*=u_opacity;vec3 rgb=color.rgb;rgb=vec3(dot(rgb,u_spin_weights.xyz),dot(rgb,u_spin_weights.zxy),dot(rgb,u_spin_weights.yzx));float average=(color.r+color.g+color.b)/3.0;rgb+=(average-rgb)*u_saturation_factor;rgb=(rgb-0.5)*u_contrast_factor+0.5;vec3 u_high_vec=vec3(u_brightness_low,u_brightness_low,u_brightness_low);vec3 u_low_vec=vec3(u_brightness_high,u_brightness_high,u_brightness_high);gl_FragColor=vec4(mix(u_high_vec,u_low_vec,rgb)*color.a,color.a);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_tl_parent;uniform float u_scale_parent;uniform float u_buffer_scale;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos0;varying vec2 v_pos1;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos0=(((a_texture_pos/8192.0)-0.5)/u_buffer_scale )+0.5;v_pos1=(v_pos0*u_scale_parent)+u_tl_parent;}"),symbolIcon:me("uniform sampler2D u_texture;varying vec2 v_tex;varying float v_fade_opacity;\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\nlowp float alpha=opacity*v_fade_opacity;gl_FragColor=texture2D(u_texture,v_tex)*alpha;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform highp float u_camera_to_center_distance;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform float u_fade_change;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform vec2 u_texsize;uniform bool u_is_along_line;uniform bool u_is_variable_anchor;uniform vec2 u_translation;uniform float u_pitched_scale;varying vec2 v_tex;varying float v_fade_opacity;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;vec2 a_minFontScale=a_pixeloffset.zw/256.0;float ele=get_elevation(a_pos);highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 translated_a_pos=a_pos+u_translation;vec4 projectedPoint=projectTileWithElevation(translated_a_pos,ele);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=projectTileWithElevation(translated_a_pos+vec2(1,0),ele);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos;if (u_is_along_line || u_is_variable_anchor) {projected_pos=vec4(a_projected_pos.xy,ele,1.0);} else if (u_pitch_with_map) {projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy+u_translation,ele,1.0);} else {projected_pos=u_label_plane_matrix*projectTileWithElevation(a_projected_pos.xy+u_translation,ele);}float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;float projectionScaling=1.0;vec4 finalPos=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*max(a_minFontScale,fontScale)+a_pxoffset/16.0)*projectionScaling,z,1.0);if(u_pitch_with_map) {finalPos=projectTileWithElevation(finalPos.xy,finalPos.z);}gl_Position=finalPos;v_tex=a_tex/u_texsize;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float visibility=calculate_visibility(projectedPoint);v_fade_opacity=max(0.0,min(visibility,fade_opacity[0]+fade_change));}"),symbolSDF:me("#define SDF_PX 8.0\nuniform bool u_is_halo;uniform sampler2D u_texture;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;uniform bool u_is_text;varying vec2 v_data0;varying vec3 v_data1;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nfloat EDGE_GAMMA=0.105/u_device_pixel_ratio;vec2 tex=v_data0.xy;float gamma_scale=v_data1.x;float size=v_data1.y;float fade_opacity=v_data1[2];float fontScale=u_is_text ? size/24.0 : size;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float inner_edge=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);inner_edge=inner_edge+gamma*gamma_scale;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(inner_edge-gamma_scaled,inner_edge+gamma_scaled,dist);if (u_is_halo) {lowp float halo_edge=(6.0-halo_width/fontScale)/SDF_PX;alpha=min(smoothstep(halo_edge-gamma_scaled,halo_edge+gamma_scaled,dist),1.0-alpha);}gl_FragColor=color*(alpha*opacity*fade_opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform bool u_is_along_line;uniform bool u_is_variable_anchor;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec2 u_translation;uniform float u_pitched_scale;varying vec2 v_data0;varying vec3 v_data1;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;float ele=get_elevation(a_pos);highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 translated_a_pos=a_pos+u_translation;vec4 projectedPoint=projectTileWithElevation(translated_a_pos,ele);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=projectTileWithElevation(translated_a_pos+vec2(1,0),ele);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos;if (u_is_along_line || u_is_variable_anchor) {projected_pos=vec4(a_projected_pos.xy,ele,1.0);} else if (u_pitch_with_map) {projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy+u_translation,ele,1.0);} else {projected_pos=u_label_plane_matrix*projectTileWithElevation(a_projected_pos.xy+u_translation,ele);}float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;float projectionScaling=1.0;vec4 finalPos=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale+a_pxoffset)*projectionScaling,z,1.0);if(u_pitch_with_map) {finalPos=projectTileWithElevation(finalPos.xy,finalPos.z);}float gamma_scale=finalPos.w;gl_Position=finalPos;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float visibility=calculate_visibility(projectedPoint);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(visibility,fade_opacity[0]+fade_change));v_data0=a_tex/u_texsize;v_data1=vec3(gamma_scale,size,interpolated_fade_opacity);}"),symbolTextAndIcon:me("#define SDF_PX 8.0\n#define SDF 1.0\n#define ICON 0.0\nuniform bool u_is_halo;uniform sampler2D u_texture;uniform sampler2D u_texture_icon;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;varying vec4 v_data0;varying vec4 v_data1;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nfloat fade_opacity=v_data1[2];if (v_data1.w==ICON) {vec2 tex_icon=v_data0.zw;lowp float alpha=opacity*fade_opacity;gl_FragColor=texture2D(u_texture_icon,tex_icon)*alpha;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\nreturn;}vec2 tex=v_data0.xy;float EDGE_GAMMA=0.105/u_device_pixel_ratio;float gamma_scale=v_data1.x;float size=v_data1.y;float fontScale=size/24.0;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec2 u_texsize_icon;uniform bool u_is_along_line;uniform bool u_is_variable_anchor;uniform vec2 u_translation;uniform float u_pitched_scale;varying vec4 v_data0;varying vec4 v_data1;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);float is_sdf=a_size[0]-2.0*a_size_min;float ele=get_elevation(a_pos);highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 translated_a_pos=a_pos+u_translation;vec4 projectedPoint=projectTileWithElevation(translated_a_pos,ele);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=size/24.0;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=projectTileWithElevation(translated_a_pos+vec2(1,0),ele);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos;if (u_is_along_line || u_is_variable_anchor) {projected_pos=vec4(a_projected_pos.xy,ele,1.0);} else if (u_pitch_with_map) {projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy+u_translation,ele,1.0);} else {projected_pos=u_label_plane_matrix*projectTileWithElevation(a_projected_pos.xy+u_translation,ele);}float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;float projectionScaling=1.0;vec4 finalPos=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale)*projectionScaling,z,1.0);if(u_pitch_with_map) {finalPos=projectTileWithElevation(finalPos.xy,finalPos.z);}float gamma_scale=finalPos.w;gl_Position=finalPos;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float visibility=calculate_visibility(projectedPoint);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(visibility,fade_opacity[0]+fade_change));v_data0.xy=a_tex/u_texsize;v_data0.zw=a_tex/u_texsize_icon;v_data1=vec4(gamma_scale,size,interpolated_fade_opacity,is_sdf);}"),terrain:me("uniform sampler2D u_texture;uniform vec4 u_fog_color;uniform vec4 u_horizon_color;uniform float u_fog_ground_blend;uniform float u_fog_ground_blend_opacity;uniform float u_horizon_fog_blend;varying vec2 v_texture_pos;varying float v_fog_depth;const float gamma=2.2;vec4 gammaToLinear(vec4 color) {return pow(color,vec4(gamma));}vec4 linearToGamma(vec4 color) {return pow(color,vec4(1.0/gamma));}void main() {vec4 surface_color=texture2D(u_texture,v_texture_pos);if (v_fog_depth > u_fog_ground_blend) {vec4 surface_color_linear=gammaToLinear(surface_color);float blend_color=smoothstep(0.0,1.0,max((v_fog_depth-u_horizon_fog_blend)/(1.0-u_horizon_fog_blend),0.0));vec4 fog_horizon_color_linear=mix(gammaToLinear(u_fog_color),gammaToLinear(u_horizon_color),blend_color);float factor_fog=max(v_fog_depth-u_fog_ground_blend,0.0)/(1.0-u_fog_ground_blend);gl_FragColor=linearToGamma(mix(surface_color_linear,fog_horizon_color_linear,pow(factor_fog,2.0)*u_fog_ground_blend_opacity));} else {gl_FragColor=surface_color;}}","attribute vec3 a_pos3d;uniform mat4 u_matrix;uniform mat4 u_fog_matrix;uniform float u_ele_delta;varying vec2 v_texture_pos;varying float v_fog_depth;void main() {float ele=get_elevation(a_pos3d.xy);float ele_delta=a_pos3d.z==1.0 ? u_ele_delta : 0.0;v_texture_pos=a_pos3d.xy/8192.0;gl_Position=u_matrix*vec4(a_pos3d.xy,ele-ele_delta,1.0);vec4 pos=u_fog_matrix*vec4(a_pos3d.xy,ele,1.0);v_fog_depth=pos.z/pos.w*0.5+0.5;}"),terrainDepth:me("varying float v_depth;const highp vec4 bitSh=vec4(256.*256.*256.,256.*256.,256.,1.);const highp vec4 bitMsk=vec4(0.,vec3(1./256.0));highp vec4 pack(highp float value) {highp vec4 comp=fract(value*bitSh);comp-=comp.xxyz*bitMsk;return comp;}void main() {gl_FragColor=pack(v_depth);}","attribute vec3 a_pos3d;uniform mat4 u_matrix;uniform float u_ele_delta;varying float v_depth;void main() {float ele=get_elevation(a_pos3d.xy);float ele_delta=a_pos3d.z==1.0 ? u_ele_delta : 0.0;gl_Position=u_matrix*vec4(a_pos3d.xy,ele-ele_delta,1.0);v_depth=gl_Position.z/gl_Position.w;}"),terrainCoords:me("precision mediump float;uniform sampler2D u_texture;uniform float u_terrain_coords_id;varying vec2 v_texture_pos;void main() {vec4 rgba=texture2D(u_texture,v_texture_pos);gl_FragColor=vec4(rgba.r,rgba.g,rgba.b,u_terrain_coords_id);}","attribute vec3 a_pos3d;uniform mat4 u_matrix;uniform float u_ele_delta;varying vec2 v_texture_pos;void main() {float ele=get_elevation(a_pos3d.xy);float ele_delta=a_pos3d.z==1.0 ? u_ele_delta : 0.0;v_texture_pos=a_pos3d.xy/8192.0;gl_Position=u_matrix*vec4(a_pos3d.xy,ele-ele_delta,1.0);}"),sky:me("uniform vec4 u_sky_color;uniform vec4 u_horizon_color;uniform float u_horizon;uniform float u_sky_horizon_blend;void main() {float y=gl_FragCoord.y;if (y > u_horizon) {float blend=y-u_horizon;if (blend < u_sky_horizon_blend) {gl_FragColor=mix(u_sky_color,u_horizon_color,pow(1.0-blend/u_sky_horizon_blend,2.0));} else {gl_FragColor=u_sky_color;}}}","attribute vec2 a_pos;void main() {gl_Position=vec4(a_pos,1.0,1.0);}")};function me(t,e){const i=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,a=e.match(/attribute ([\w]+) ([\w]+)/g),s=t.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),o=e.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),r=o?o.concat(s):s,n={};return {fragmentSource:t=t.replace(i,((t,e,i,a,s)=>(n[s]=!0,"define"===e?`\n#ifndef HAS_UNIFORM_u_${s}\nvarying ${i} ${a} ${s};\n#else\nuniform ${i} ${a} u_${s};\n#endif\n`:`\n#ifdef HAS_UNIFORM_u_${s}\n ${i} ${a} ${s} = u_${s};\n#endif\n`))),vertexSource:e=e.replace(i,((t,e,i,a,s)=>{const o="float"===a?"vec2":"vec4",r=s.match(/color/)?"color":o;return n[s]?"define"===e?`\n#ifndef HAS_UNIFORM_u_${s}\nuniform lowp float u_${s}_t;\nattribute ${i} ${o} a_${s};\nvarying ${i} ${a} ${s};\n#else\nuniform ${i} ${a} u_${s};\n#endif\n`:"vec4"===r?`\n#ifndef HAS_UNIFORM_u_${s}\n ${s} = a_${s};\n#else\n ${i} ${a} ${s} = u_${s};\n#endif\n`:`\n#ifndef HAS_UNIFORM_u_${s}\n ${s} = unpack_mix_${r}(a_${s}, u_${s}_t);\n#else\n ${i} ${a} ${s} = u_${s};\n#endif\n`:"define"===e?`\n#ifndef HAS_UNIFORM_u_${s}\nuniform lowp float u_${s}_t;\nattribute ${i} ${o} a_${s};\n#else\nuniform ${i} ${a} u_${s};\n#endif\n`:"vec4"===r?`\n#ifndef HAS_UNIFORM_u_${s}\n ${i} ${a} ${s} = a_${s};\n#else\n ${i} ${a} ${s} = u_${s};\n#endif\n`:`\n#ifndef HAS_UNIFORM_u_${s}\n ${i} ${a} ${s} = unpack_mix_${r}(a_${s}, u_${s}_t);\n#else\n ${i} ${a} ${s} = u_${s};\n#endif\n`})),staticAttributes:a,staticUniforms:r}}class fe{constructor(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null;}bind(t,e,i,a,s,o,r,n,l){this.context=t;let h=this.boundPaintVertexBuffers.length!==a.length;for(let t=0;!h&&t({u_matrix:t,u_texture:0,u_ele_delta:i,u_fog_matrix:a,u_fog_color:s?s.properties.get("fog-color"):e.aM.white,u_fog_ground_blend:s?s.properties.get("fog-ground-blend"):1,u_fog_ground_blend_opacity:s?s.calculateFogBlendOpacity(o):0,u_horizon_color:s?s.properties.get("horizon-color"):e.aM.white,u_horizon_fog_blend:s?s.properties.get("horizon-fog-blend"):1});function ve(t){const e=[];for(let i=0;i({u_depth:new e.aH(t,i.u_depth),u_terrain:new e.aH(t,i.u_terrain),u_terrain_dim:new e.aI(t,i.u_terrain_dim),u_terrain_matrix:new e.aJ(t,i.u_terrain_matrix),u_terrain_unpack:new e.aK(t,i.u_terrain_unpack),u_terrain_exaggeration:new e.aI(t,i.u_terrain_exaggeration)}))(t,b),this.binderUniforms=a?a.getUniforms(t,b):[];}draw(t,e,i,a,s,o,r,n,l,h,c,u,d,_,p,m,f,g){const v=t.gl;if(this.failedToCreate)return;if(t.program.set(this.program),t.setDepthMode(i),t.setStencilMode(a),t.setColorMode(s),t.setCullFace(o),n){t.activeTexture.set(v.TEXTURE2),v.bindTexture(v.TEXTURE_2D,n.depthTexture),t.activeTexture.set(v.TEXTURE3),v.bindTexture(v.TEXTURE_2D,n.texture);for(const t in this.terrainUniforms)this.terrainUniforms[t].set(n[t]);}for(const t in this.fixedUniforms)this.fixedUniforms[t].set(r[t]);p&&p.setUniforms(t,this.binderUniforms,d,{zoom:_});let x=0;switch(e){case v.LINES:x=2;break;case v.TRIANGLES:x=3;break;case v.LINE_STRIP:x=1;}for(const i of u.get()){const a=i.vaos||(i.vaos={});(a[l]||(a[l]=new fe)).bind(t,this,h,p?p.getPaintVertexBuffers():[],c,i.vertexOffset,m,f,g),v.drawElements(e,i.primitiveLength*x,v.UNSIGNED_SHORT,i.primitiveOffset*x*2);}}}function ye(t,e,i){const a=1/Bt(i,1,e.transform.tileZoom),s=Math.pow(2,i.tileID.overscaledZ),o=i.tileSize*Math.pow(2,e.transform.tileZoom)/s,r=o*(i.tileID.canonical.x+i.tileID.wrap*s),n=o*i.tileID.canonical.y;return {u_image:0,u_texsize:i.imageAtlasTexture.size,u_scale:[a,t.fromScale,t.toScale],u_fade:t.t,u_pixel_coord_upper:[r>>16,n>>16],u_pixel_coord_lower:[65535&r,65535&n]}}const be=(t,i,a,s)=>{const o=i.style.light,r=o.properties.get("position"),n=[r.x,r.y,r.z],l=function(){var t=new e.A(9);return e.A!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[5]=0,t[6]=0,t[7]=0),t[0]=1,t[4]=1,t[8]=1,t}();"viewport"===o.properties.get("anchor")&&function(t,e){var i=Math.sin(e),a=Math.cos(e);t[0]=a,t[1]=i,t[2]=0,t[3]=-i,t[4]=a,t[5]=0,t[6]=0,t[7]=0,t[8]=1;}(l,-i.transform.angle),function(t,e,i){var a=e[0],s=e[1],o=e[2];t[0]=a*i[0]+s*i[3]+o*i[6],t[1]=a*i[1]+s*i[4]+o*i[7],t[2]=a*i[2]+s*i[5]+o*i[8];}(n,n,l);const h=o.properties.get("color");return {u_matrix:t,u_lightpos:n,u_lightintensity:o.properties.get("intensity"),u_lightcolor:[h.r,h.g,h.b],u_vertical_gradient:+a,u_opacity:s}},we=(t,i,a,s,o,r,n)=>e.e(be(t,i,a,s),ye(r,i,n),{u_height_factor:-Math.pow(2,o.overscaledZ)/n.tileSize/8}),Te=t=>({u_matrix:t}),Ie=(t,i,a,s)=>e.e(Te(t),ye(a,i,s)),Ee=(t,e)=>({u_matrix:t,u_world:e}),Pe=(t,i,a,s,o)=>e.e(Ie(t,i,a,s),{u_world:o}),Ce=(t,e,i,a)=>{const s=t.transform;let o,r;if("map"===a.paint.get("circle-pitch-alignment")){const t=Bt(i,1,s.zoom);o=!0,r=[t,t];}else o=!1,r=s.pixelsToGLUnits;return {u_camera_to_center_distance:s.cameraToCenterDistance,u_scale_with_map:+("map"===a.paint.get("circle-pitch-scale")),u_matrix:t.translatePosMatrix(e.posMatrix,i,a.paint.get("circle-translate"),a.paint.get("circle-translate-anchor")),u_pitch_with_map:+o,u_device_pixel_ratio:t.pixelRatio,u_extrude_scale:r}},Se=(t,e,i)=>({u_matrix:t,u_inv_matrix:e,u_camera_to_center_distance:i.cameraToCenterDistance,u_viewport_size:[i.width,i.height]}),ze=(t,e,i=1)=>({u_matrix:t,u_color:e,u_overlay:0,u_overlay_scale:i}),De=t=>({u_matrix:t}),Me=(t,e,i,a)=>({u_matrix:t,u_extrude_scale:Bt(e,1,i),u_intensity:a}),Ae=(t,i,a,s)=>{const o=e.H();e.aP(o,0,t.width,t.height,0,0,1);const r=t.context.gl;return {u_matrix:o,u_world:[r.drawingBufferWidth,r.drawingBufferHeight],u_image:a,u_color_ramp:s,u_opacity:i.paint.get("heatmap-opacity")}};function Re(t,i){const a=Math.pow(2,i.canonical.z),s=i.canonical.y;return [new e.Z(0,s/a).toLngLat().lat,new e.Z(0,(s+1)/a).toLngLat().lat]}const ke=(t,e,i,a)=>{const s=t.transform;return {u_matrix:Ne(t,e,i,a),u_ratio:1/Bt(e,1,s.zoom),u_device_pixel_ratio:t.pixelRatio,u_units_to_pixels:[1/s.pixelsToGLUnits[0],1/s.pixelsToGLUnits[1]]}},Le=(t,i,a,s,o)=>e.e(ke(t,i,a,o),{u_image:0,u_image_height:s}),Fe=(t,e,i,a,s)=>{const o=t.transform,r=Oe(e,o);return {u_matrix:Ne(t,e,i,s),u_texsize:e.imageAtlasTexture.size,u_ratio:1/Bt(e,1,o.zoom),u_device_pixel_ratio:t.pixelRatio,u_image:0,u_scale:[r,a.fromScale,a.toScale],u_fade:a.t,u_units_to_pixels:[1/o.pixelsToGLUnits[0],1/o.pixelsToGLUnits[1]]}},Be=(t,i,a,s,o,r)=>{const n=t.lineAtlas,l=Oe(i,t.transform),h="round"===a.layout.get("line-cap"),c=n.getDash(s.from,h),u=n.getDash(s.to,h),d=c.width*o.fromScale,_=u.width*o.toScale;return e.e(ke(t,i,a,r),{u_patternscale_a:[l/d,-c.height/2],u_patternscale_b:[l/_,-u.height/2],u_sdfgamma:n.width/(256*Math.min(d,_)*t.pixelRatio)/2,u_image:0,u_tex_y_a:c.y,u_tex_y_b:u.y,u_mix:o.t})};function Oe(t,e){return 1/Bt(t,1,e.tileZoom)}function Ne(t,e,i,a){return t.translatePosMatrix(a?a.posMatrix:e.tileID.posMatrix,e,i.paint.get("line-translate"),i.paint.get("line-translate-anchor"))}const Ue=(t,e,i,a,s)=>{return {u_matrix:t,u_tl_parent:e,u_scale_parent:i,u_buffer_scale:1,u_fade_t:a.mix,u_opacity:a.opacity*s.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:s.paint.get("raster-brightness-min"),u_brightness_high:s.paint.get("raster-brightness-max"),u_saturation_factor:(r=s.paint.get("raster-saturation"),r>0?1-1/(1.001-r):-r),u_contrast_factor:(o=s.paint.get("raster-contrast"),o>0?1/(1-o):1+o),u_spin_weights:je(s.paint.get("raster-hue-rotate"))};var o,r;};function je(t){t*=Math.PI/180;const e=Math.sin(t),i=Math.cos(t);return [(2*i+1)/3,(-Math.sqrt(3)*e-i+1)/3,(Math.sqrt(3)*e-i+1)/3]}const Ze=(t,e,i,a,s,o,r,n,l,h,c,u,d,_)=>{const p=r.transform;return {u_is_size_zoom_constant:+("constant"===t||"source"===t),u_is_size_feature_constant:+("constant"===t||"camera"===t),u_size_t:e?e.uSizeT:0,u_size:e?e.uSize:0,u_camera_to_center_distance:p.cameraToCenterDistance,u_pitch:p.pitch/360*2*Math.PI,u_rotate_symbol:+i,u_aspect_ratio:p.width/p.height,u_fade_change:r.options.fadeDuration?r.symbolFadeChange:1,u_matrix:n,u_label_plane_matrix:l,u_coord_matrix:h,u_is_text:+u,u_pitch_with_map:+a,u_is_along_line:s,u_is_variable_anchor:o,u_texsize:d,u_texture:0,u_translation:c,u_pitched_scale:_}},qe=(t,i,a,s,o,r,n,l,h,c,u,d,_,p,m)=>{const f=n.transform;return e.e(Ze(t,i,a,s,o,r,n,l,h,c,u,d,_,m),{u_gamma_scale:s?Math.cos(f._pitch)*f.cameraToCenterDistance:1,u_device_pixel_ratio:n.pixelRatio,u_is_halo:+p})},Ve=(t,i,a,s,o,r,n,l,h,c,u,d,_,p)=>e.e(qe(t,i,a,s,o,r,n,l,h,c,u,!0,d,!0,p),{u_texsize_icon:_,u_texture_icon:1}),Ge=(t,e,i)=>({u_matrix:t,u_opacity:e,u_color:i}),He=(t,i,a,s,o,r)=>e.e(function(t,e,i,a){const s=i.imageManager.getPattern(t.from.toString()),o=i.imageManager.getPattern(t.to.toString()),{width:r,height:n}=i.imageManager.getPixelSize(),l=Math.pow(2,a.tileID.overscaledZ),h=a.tileSize*Math.pow(2,i.transform.tileZoom)/l,c=h*(a.tileID.canonical.x+a.tileID.wrap*l),u=h*a.tileID.canonical.y;return {u_image:0,u_pattern_tl_a:s.tl,u_pattern_br_a:s.br,u_pattern_tl_b:o.tl,u_pattern_br_b:o.br,u_texsize:[r,n],u_mix:e.t,u_pattern_size_a:s.displaySize,u_pattern_size_b:o.displaySize,u_scale_a:e.fromScale,u_scale_b:e.toScale,u_tile_units_to_pixels:1/Bt(a,1,i.transform.tileZoom),u_pixel_coord_upper:[c>>16,u>>16],u_pixel_coord_lower:[65535&c,65535&u]}}(s,r,a,o),{u_matrix:t,u_opacity:i}),We={fillExtrusion:(t,i)=>({u_matrix:new e.aJ(t,i.u_matrix),u_lightpos:new e.aN(t,i.u_lightpos),u_lightintensity:new e.aI(t,i.u_lightintensity),u_lightcolor:new e.aN(t,i.u_lightcolor),u_vertical_gradient:new e.aI(t,i.u_vertical_gradient),u_opacity:new e.aI(t,i.u_opacity)}),fillExtrusionPattern:(t,i)=>({u_matrix:new e.aJ(t,i.u_matrix),u_lightpos:new e.aN(t,i.u_lightpos),u_lightintensity:new e.aI(t,i.u_lightintensity),u_lightcolor:new e.aN(t,i.u_lightcolor),u_vertical_gradient:new e.aI(t,i.u_vertical_gradient),u_height_factor:new e.aI(t,i.u_height_factor),u_image:new e.aH(t,i.u_image),u_texsize:new e.aO(t,i.u_texsize),u_pixel_coord_upper:new e.aO(t,i.u_pixel_coord_upper),u_pixel_coord_lower:new e.aO(t,i.u_pixel_coord_lower),u_scale:new e.aN(t,i.u_scale),u_fade:new e.aI(t,i.u_fade),u_opacity:new e.aI(t,i.u_opacity)}),fill:(t,i)=>({u_matrix:new e.aJ(t,i.u_matrix)}),fillPattern:(t,i)=>({u_matrix:new e.aJ(t,i.u_matrix),u_image:new e.aH(t,i.u_image),u_texsize:new e.aO(t,i.u_texsize),u_pixel_coord_upper:new e.aO(t,i.u_pixel_coord_upper),u_pixel_coord_lower:new e.aO(t,i.u_pixel_coord_lower),u_scale:new e.aN(t,i.u_scale),u_fade:new e.aI(t,i.u_fade)}),fillOutline:(t,i)=>({u_matrix:new e.aJ(t,i.u_matrix),u_world:new e.aO(t,i.u_world)}),fillOutlinePattern:(t,i)=>({u_matrix:new e.aJ(t,i.u_matrix),u_world:new e.aO(t,i.u_world),u_image:new e.aH(t,i.u_image),u_texsize:new e.aO(t,i.u_texsize),u_pixel_coord_upper:new e.aO(t,i.u_pixel_coord_upper),u_pixel_coord_lower:new e.aO(t,i.u_pixel_coord_lower),u_scale:new e.aN(t,i.u_scale),u_fade:new e.aI(t,i.u_fade)}),circle:(t,i)=>({u_camera_to_center_distance:new e.aI(t,i.u_camera_to_center_distance),u_scale_with_map:new e.aH(t,i.u_scale_with_map),u_pitch_with_map:new e.aH(t,i.u_pitch_with_map),u_extrude_scale:new e.aO(t,i.u_extrude_scale),u_device_pixel_ratio:new e.aI(t,i.u_device_pixel_ratio),u_matrix:new e.aJ(t,i.u_matrix)}),collisionBox:(t,i)=>({u_matrix:new e.aJ(t,i.u_matrix),u_pixel_extrude_scale:new e.aO(t,i.u_pixel_extrude_scale)}),collisionCircle:(t,i)=>({u_matrix:new e.aJ(t,i.u_matrix),u_inv_matrix:new e.aJ(t,i.u_inv_matrix),u_camera_to_center_distance:new e.aI(t,i.u_camera_to_center_distance),u_viewport_size:new e.aO(t,i.u_viewport_size)}),debug:(t,i)=>({u_color:new e.aL(t,i.u_color),u_matrix:new e.aJ(t,i.u_matrix),u_overlay:new e.aH(t,i.u_overlay),u_overlay_scale:new e.aI(t,i.u_overlay_scale)}),clippingMask:(t,i)=>({u_matrix:new e.aJ(t,i.u_matrix)}),heatmap:(t,i)=>({u_extrude_scale:new e.aI(t,i.u_extrude_scale),u_intensity:new e.aI(t,i.u_intensity),u_matrix:new e.aJ(t,i.u_matrix)}),heatmapTexture:(t,i)=>({u_matrix:new e.aJ(t,i.u_matrix),u_world:new e.aO(t,i.u_world),u_image:new e.aH(t,i.u_image),u_color_ramp:new e.aH(t,i.u_color_ramp),u_opacity:new e.aI(t,i.u_opacity)}),hillshade:(t,i)=>({u_matrix:new e.aJ(t,i.u_matrix),u_image:new e.aH(t,i.u_image),u_latrange:new e.aO(t,i.u_latrange),u_light:new e.aO(t,i.u_light),u_shadow:new e.aL(t,i.u_shadow),u_highlight:new e.aL(t,i.u_highlight),u_accent:new e.aL(t,i.u_accent)}),hillshadePrepare:(t,i)=>({u_matrix:new e.aJ(t,i.u_matrix),u_image:new e.aH(t,i.u_image),u_dimension:new e.aO(t,i.u_dimension),u_zoom:new e.aI(t,i.u_zoom),u_unpack:new e.aK(t,i.u_unpack)}),line:(t,i)=>({u_matrix:new e.aJ(t,i.u_matrix),u_ratio:new e.aI(t,i.u_ratio),u_device_pixel_ratio:new e.aI(t,i.u_device_pixel_ratio),u_units_to_pixels:new e.aO(t,i.u_units_to_pixels)}),lineGradient:(t,i)=>({u_matrix:new e.aJ(t,i.u_matrix),u_ratio:new e.aI(t,i.u_ratio),u_device_pixel_ratio:new e.aI(t,i.u_device_pixel_ratio),u_units_to_pixels:new e.aO(t,i.u_units_to_pixels),u_image:new e.aH(t,i.u_image),u_image_height:new e.aI(t,i.u_image_height)}),linePattern:(t,i)=>({u_matrix:new e.aJ(t,i.u_matrix),u_texsize:new e.aO(t,i.u_texsize),u_ratio:new e.aI(t,i.u_ratio),u_device_pixel_ratio:new e.aI(t,i.u_device_pixel_ratio),u_image:new e.aH(t,i.u_image),u_units_to_pixels:new e.aO(t,i.u_units_to_pixels),u_scale:new e.aN(t,i.u_scale),u_fade:new e.aI(t,i.u_fade)}),lineSDF:(t,i)=>({u_matrix:new e.aJ(t,i.u_matrix),u_ratio:new e.aI(t,i.u_ratio),u_device_pixel_ratio:new e.aI(t,i.u_device_pixel_ratio),u_units_to_pixels:new e.aO(t,i.u_units_to_pixels),u_patternscale_a:new e.aO(t,i.u_patternscale_a),u_patternscale_b:new e.aO(t,i.u_patternscale_b),u_sdfgamma:new e.aI(t,i.u_sdfgamma),u_image:new e.aH(t,i.u_image),u_tex_y_a:new e.aI(t,i.u_tex_y_a),u_tex_y_b:new e.aI(t,i.u_tex_y_b),u_mix:new e.aI(t,i.u_mix)}),raster:(t,i)=>({u_matrix:new e.aJ(t,i.u_matrix),u_tl_parent:new e.aO(t,i.u_tl_parent),u_scale_parent:new e.aI(t,i.u_scale_parent),u_buffer_scale:new e.aI(t,i.u_buffer_scale),u_fade_t:new e.aI(t,i.u_fade_t),u_opacity:new e.aI(t,i.u_opacity),u_image0:new e.aH(t,i.u_image0),u_image1:new e.aH(t,i.u_image1),u_brightness_low:new e.aI(t,i.u_brightness_low),u_brightness_high:new e.aI(t,i.u_brightness_high),u_saturation_factor:new e.aI(t,i.u_saturation_factor),u_contrast_factor:new e.aI(t,i.u_contrast_factor),u_spin_weights:new e.aN(t,i.u_spin_weights)}),symbolIcon:(t,i)=>({u_is_size_zoom_constant:new e.aH(t,i.u_is_size_zoom_constant),u_is_size_feature_constant:new e.aH(t,i.u_is_size_feature_constant),u_size_t:new e.aI(t,i.u_size_t),u_size:new e.aI(t,i.u_size),u_camera_to_center_distance:new e.aI(t,i.u_camera_to_center_distance),u_pitch:new e.aI(t,i.u_pitch),u_rotate_symbol:new e.aH(t,i.u_rotate_symbol),u_aspect_ratio:new e.aI(t,i.u_aspect_ratio),u_fade_change:new e.aI(t,i.u_fade_change),u_matrix:new e.aJ(t,i.u_matrix),u_label_plane_matrix:new e.aJ(t,i.u_label_plane_matrix),u_coord_matrix:new e.aJ(t,i.u_coord_matrix),u_is_text:new e.aH(t,i.u_is_text),u_pitch_with_map:new e.aH(t,i.u_pitch_with_map),u_is_along_line:new e.aH(t,i.u_is_along_line),u_is_variable_anchor:new e.aH(t,i.u_is_variable_anchor),u_texsize:new e.aO(t,i.u_texsize),u_texture:new e.aH(t,i.u_texture),u_translation:new e.aO(t,i.u_translation),u_pitched_scale:new e.aI(t,i.u_pitched_scale)}),symbolSDF:(t,i)=>({u_is_size_zoom_constant:new e.aH(t,i.u_is_size_zoom_constant),u_is_size_feature_constant:new e.aH(t,i.u_is_size_feature_constant),u_size_t:new e.aI(t,i.u_size_t),u_size:new e.aI(t,i.u_size),u_camera_to_center_distance:new e.aI(t,i.u_camera_to_center_distance),u_pitch:new e.aI(t,i.u_pitch),u_rotate_symbol:new e.aH(t,i.u_rotate_symbol),u_aspect_ratio:new e.aI(t,i.u_aspect_ratio),u_fade_change:new e.aI(t,i.u_fade_change),u_matrix:new e.aJ(t,i.u_matrix),u_label_plane_matrix:new e.aJ(t,i.u_label_plane_matrix),u_coord_matrix:new e.aJ(t,i.u_coord_matrix),u_is_text:new e.aH(t,i.u_is_text),u_pitch_with_map:new e.aH(t,i.u_pitch_with_map),u_is_along_line:new e.aH(t,i.u_is_along_line),u_is_variable_anchor:new e.aH(t,i.u_is_variable_anchor),u_texsize:new e.aO(t,i.u_texsize),u_texture:new e.aH(t,i.u_texture),u_gamma_scale:new e.aI(t,i.u_gamma_scale),u_device_pixel_ratio:new e.aI(t,i.u_device_pixel_ratio),u_is_halo:new e.aH(t,i.u_is_halo),u_translation:new e.aO(t,i.u_translation),u_pitched_scale:new e.aI(t,i.u_pitched_scale)}),symbolTextAndIcon:(t,i)=>({u_is_size_zoom_constant:new e.aH(t,i.u_is_size_zoom_constant),u_is_size_feature_constant:new e.aH(t,i.u_is_size_feature_constant),u_size_t:new e.aI(t,i.u_size_t),u_size:new e.aI(t,i.u_size),u_camera_to_center_distance:new e.aI(t,i.u_camera_to_center_distance),u_pitch:new e.aI(t,i.u_pitch),u_rotate_symbol:new e.aH(t,i.u_rotate_symbol),u_aspect_ratio:new e.aI(t,i.u_aspect_ratio),u_fade_change:new e.aI(t,i.u_fade_change),u_matrix:new e.aJ(t,i.u_matrix),u_label_plane_matrix:new e.aJ(t,i.u_label_plane_matrix),u_coord_matrix:new e.aJ(t,i.u_coord_matrix),u_is_text:new e.aH(t,i.u_is_text),u_pitch_with_map:new e.aH(t,i.u_pitch_with_map),u_is_along_line:new e.aH(t,i.u_is_along_line),u_is_variable_anchor:new e.aH(t,i.u_is_variable_anchor),u_texsize:new e.aO(t,i.u_texsize),u_texsize_icon:new e.aO(t,i.u_texsize_icon),u_texture:new e.aH(t,i.u_texture),u_texture_icon:new e.aH(t,i.u_texture_icon),u_gamma_scale:new e.aI(t,i.u_gamma_scale),u_device_pixel_ratio:new e.aI(t,i.u_device_pixel_ratio),u_is_halo:new e.aH(t,i.u_is_halo),u_translation:new e.aO(t,i.u_translation),u_pitched_scale:new e.aI(t,i.u_pitched_scale)}),background:(t,i)=>({u_matrix:new e.aJ(t,i.u_matrix),u_opacity:new e.aI(t,i.u_opacity),u_color:new e.aL(t,i.u_color)}),backgroundPattern:(t,i)=>({u_matrix:new e.aJ(t,i.u_matrix),u_opacity:new e.aI(t,i.u_opacity),u_image:new e.aH(t,i.u_image),u_pattern_tl_a:new e.aO(t,i.u_pattern_tl_a),u_pattern_br_a:new e.aO(t,i.u_pattern_br_a),u_pattern_tl_b:new e.aO(t,i.u_pattern_tl_b),u_pattern_br_b:new e.aO(t,i.u_pattern_br_b),u_texsize:new e.aO(t,i.u_texsize),u_mix:new e.aI(t,i.u_mix),u_pattern_size_a:new e.aO(t,i.u_pattern_size_a),u_pattern_size_b:new e.aO(t,i.u_pattern_size_b),u_scale_a:new e.aI(t,i.u_scale_a),u_scale_b:new e.aI(t,i.u_scale_b),u_pixel_coord_upper:new e.aO(t,i.u_pixel_coord_upper),u_pixel_coord_lower:new e.aO(t,i.u_pixel_coord_lower),u_tile_units_to_pixels:new e.aI(t,i.u_tile_units_to_pixels)}),terrain:(t,i)=>({u_matrix:new e.aJ(t,i.u_matrix),u_texture:new e.aH(t,i.u_texture),u_ele_delta:new e.aI(t,i.u_ele_delta),u_fog_matrix:new e.aJ(t,i.u_fog_matrix),u_fog_color:new e.aL(t,i.u_fog_color),u_fog_ground_blend:new e.aI(t,i.u_fog_ground_blend),u_fog_ground_blend_opacity:new e.aI(t,i.u_fog_ground_blend_opacity),u_horizon_color:new e.aL(t,i.u_horizon_color),u_horizon_fog_blend:new e.aI(t,i.u_horizon_fog_blend)}),terrainDepth:(t,i)=>({u_matrix:new e.aJ(t,i.u_matrix),u_ele_delta:new e.aI(t,i.u_ele_delta)}),terrainCoords:(t,i)=>({u_matrix:new e.aJ(t,i.u_matrix),u_texture:new e.aH(t,i.u_texture),u_terrain_coords_id:new e.aI(t,i.u_terrain_coords_id),u_ele_delta:new e.aI(t,i.u_ele_delta)}),sky:(t,i)=>({u_sky_color:new e.aL(t,i.u_sky_color),u_horizon_color:new e.aL(t,i.u_horizon_color),u_horizon:new e.aI(t,i.u_horizon),u_sky_horizon_blend:new e.aI(t,i.u_sky_horizon_blend)})};class $e{constructor(t,e,i){this.context=t;const a=t.gl;this.buffer=a.createBuffer(),this.dynamicDraw=Boolean(i),this.context.unbindVAO(),t.bindElementBuffer.set(this.buffer),a.bufferData(a.ELEMENT_ARRAY_BUFFER,e.arrayBuffer,this.dynamicDraw?a.DYNAMIC_DRAW:a.STATIC_DRAW),this.dynamicDraw||delete e.arrayBuffer;}bind(){this.context.bindElementBuffer.set(this.buffer);}updateData(t){const e=this.context.gl;if(!this.dynamicDraw)throw new Error("Attempted to update data while not in dynamic mode.");this.context.unbindVAO(),this.bind(),e.bufferSubData(e.ELEMENT_ARRAY_BUFFER,0,t.arrayBuffer);}destroy(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer);}}const Xe={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"};class Ke{constructor(t,e,i,a){this.length=e.length,this.attributes=i,this.itemSize=e.bytesPerElement,this.dynamicDraw=a,this.context=t;const s=t.gl;this.buffer=s.createBuffer(),t.bindVertexBuffer.set(this.buffer),s.bufferData(s.ARRAY_BUFFER,e.arrayBuffer,this.dynamicDraw?s.DYNAMIC_DRAW:s.STATIC_DRAW),this.dynamicDraw||delete e.arrayBuffer;}bind(){this.context.bindVertexBuffer.set(this.buffer);}updateData(t){if(t.length!==this.length)throw new Error(`Length of new data is ${t.length}, which doesn't match current length of ${this.length}`);const e=this.context.gl;this.bind(),e.bufferSubData(e.ARRAY_BUFFER,0,t.arrayBuffer);}enableAttributes(t,e){for(let i=0;i0){const i=e.H();e.aQ(i,m.placementInvProjMatrix,t.transform.glCoordMatrix),e.aQ(i,i,m.placementViewportMatrix),h.push({circleArray:g,circleOffset:u,transform:p.posMatrix,invTransform:i,coord:p}),c+=g.length/4,u=c;}f&&l.draw(r,n.LINES,Oi.disabled,Ui.disabled,t.colorModeForRenderPass(),ji.disabled,{u_matrix:p.posMatrix,u_pixel_extrude_scale:[1/(d=t.transform).width,1/d.height]},t.style.map.terrain&&t.style.map.terrain.getTerrainData(p),a.id,f.layoutVertexBuffer,f.indexBuffer,f.segments,null,t.transform.zoom,null,null,f.collisionVertexBuffer);}var d;if(!o||!h.length)return;const _=t.useProgram("collisionCircle"),p=new e.aR;p.resize(4*c),p._trim();let m=0;for(const t of h)for(let e=0;e=0&&(v[x.associatedIconIndex]={shiftedAnchor:D,angle:M});}else Rt(x.numGlyphs,f);}if(c){g.clear();const i=t.icon.placedSymbolArray;for(let t=0;tt.style.map.terrain.getElevation(l,e,i):null,i="map"===a.layout.get("text-rotation-alignment");wt(h,l.posMatrix,t,o,U,Z,v,c,i,f,l.toUnwrapped(),m.width,m.height,q,e);}const H=l.posMatrix,W=o&&E||G,$=x||W?Vi:U,X=j,K=_&&0!==a.paint.get(o?"text-halo-width":"icon-halo-width").constantOr(1);let J;J=_?h.iconsInText?Ve(I.kind,D,y,v,x,W,t,H,$,X,q,A,F,C):qe(I.kind,D,y,v,x,W,t,H,$,X,q,o,A,!0,C):Ze(I.kind,D,y,v,x,W,t,H,$,X,q,o,A,C);const Y={program:z,buffers:u,uniformValues:J,atlasTexture:R,atlasTextureIcon:B,atlasInterpolation:k,atlasInterpolationIcon:L,isSDF:_,hasHalo:K};if(w&&h.canOverlap){T=!0;const t=u.segments.get();for(const i of t)P.push({segments:new e.a0([i]),sortKey:i.sortKey,state:Y,terrainData:M});}else P.push({segments:u.segments,sortKey:0,state:Y,terrainData:M});}T&&P.sort(((t,e)=>t.sortKey-e.sortKey));for(const e of P){const i=e.state;if(_.activeTexture.set(p.TEXTURE0),i.atlasTexture.bind(i.atlasInterpolation,p.CLAMP_TO_EDGE),i.atlasTextureIcon&&(_.activeTexture.set(p.TEXTURE1),i.atlasTextureIcon&&i.atlasTextureIcon.bind(i.atlasInterpolationIcon,p.CLAMP_TO_EDGE)),i.isSDF){const s=i.uniformValues;i.hasHalo&&(s.u_is_halo=1,Ki(i.buffers,e.segments,a,t,i.program,I,u,d,s,e.terrainData)),s.u_is_halo=0;}Ki(i.buffers,e.segments,a,t,i.program,I,u,d,i.uniformValues,e.terrainData);}}function Ki(t,e,i,a,s,o,r,n,l,h){const c=a.context;s.draw(c,c.gl.TRIANGLES,o,r,n,ji.disabled,l,h,i.id,t.layoutVertexBuffer,t.indexBuffer,e,i.paint,a.transform.zoom,t.programConfigurations.get(i.id),t.dynamicLayoutVertexBuffer,t.opacityVertexBuffer);}function Ji(t,i,a,s){const o=t.context,r=o.gl,n=Ui.disabled,l=new Fi([r.ONE,r.ONE],e.aM.transparent,[!0,!0,!0,!0]),h=i.getBucket(a);if(!h)return;const c=s.key;let u=a.heatmapFbos.get(c);u||(u=Qi(o,i.tileSize,i.tileSize),a.heatmapFbos.set(c,u)),o.bindFramebuffer.set(u.framebuffer),o.viewport.set([0,0,i.tileSize,i.tileSize]),o.clear({color:e.aM.transparent});const d=h.programConfigurations.get(a.id),_=t.useProgram("heatmap",d),p=t.style.map.terrain.getTerrainData(s);_.draw(o,r.TRIANGLES,Oi.disabled,n,l,ji.disabled,Me(s.posMatrix,i,t.transform.zoom,a.paint.get("heatmap-intensity")),p,a.id,h.layoutVertexBuffer,h.indexBuffer,h.segments,a.paint,t.transform.zoom,d);}function Yi(t,e,i){const a=t.context,s=a.gl;a.setColorMode(t.colorModeForRenderPass());const o=ta(a,e),r=i.key,n=e.heatmapFbos.get(r);n&&(a.activeTexture.set(s.TEXTURE0),s.bindTexture(s.TEXTURE_2D,n.colorAttachment.get()),a.activeTexture.set(s.TEXTURE1),o.bind(s.LINEAR,s.CLAMP_TO_EDGE),t.useProgram("heatmapTexture").draw(a,s.TRIANGLES,Oi.disabled,Ui.disabled,t.colorModeForRenderPass(),ji.disabled,Ae(t,e,0,1),null,e.id,t.rasterBoundsBuffer,t.quadTriangleIndexBuffer,t.rasterBoundsSegments,e.paint,t.transform.zoom),n.destroy(),e.heatmapFbos.delete(r));}function Qi(t,e,i){var a,s;const o=t.gl,r=o.createTexture();o.bindTexture(o.TEXTURE_2D,r),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_S,o.CLAMP_TO_EDGE),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_T,o.CLAMP_TO_EDGE),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_MIN_FILTER,o.LINEAR),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_MAG_FILTER,o.LINEAR);const n=null!==(a=t.HALF_FLOAT)&&void 0!==a?a:o.UNSIGNED_BYTE,l=null!==(s=t.RGBA16F)&&void 0!==s?s:o.RGBA;o.texImage2D(o.TEXTURE_2D,0,l,e,i,0,o.RGBA,n,null);const h=t.createFramebuffer(e,i,!1,!1);return h.colorAttachment.set(r),h}function ta(t,e){return e.colorRampTexture||(e.colorRampTexture=new b(t,e.colorRamp,t.gl.RGBA)),e.colorRampTexture}function ea(t,e,i,a,s){if(!i||!a||!a.imageAtlas)return;const o=a.imageAtlas.patternPositions;let r=o[i.to.toString()],n=o[i.from.toString()];if(!r&&n&&(r=n),!n&&r&&(n=r),!r||!n){const t=s.getPaintProperty(e);r=o[t],n=o[t];}r&&n&&t.setConstantPatternPositions(r,n);}function ia(t,e,i,a,s,o,r){const n=t.context.gl,l="fill-pattern",h=i.paint.get(l),c=h&&h.constantOr(1),u=i.getCrossfadeParameters();let d,_,p,m,f;r?(_=c&&!i.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline",d=n.LINES):(_=c?"fillPattern":"fill",d=n.TRIANGLES);const g=h.constantOr(null);for(const h of a){const a=e.getTile(h);if(c&&!a.patternsLoaded())continue;const v=a.getBucket(i);if(!v)continue;const x=v.programConfigurations.get(i.id),y=t.useProgram(_,x),b=t.style.map.terrain&&t.style.map.terrain.getTerrainData(h);c&&(t.context.activeTexture.set(n.TEXTURE0),a.imageAtlasTexture.bind(n.LINEAR,n.CLAMP_TO_EDGE),x.updatePaintBuffers(u)),ea(x,l,g,a,i);const w=b?h:null,T=t.translatePosMatrix(w?w.posMatrix:h.posMatrix,a,i.paint.get("fill-translate"),i.paint.get("fill-translate-anchor"));if(r){m=v.indexBuffer2,f=v.segments2;const e=[n.drawingBufferWidth,n.drawingBufferHeight];p="fillOutlinePattern"===_&&c?Pe(T,t,u,a,e):Ee(T,e);}else m=v.indexBuffer,f=v.segments,p=c?Ie(T,t,u,a):Te(T);y.draw(t.context,d,s,t.stencilModeForClipping(h),o,ji.disabled,p,b,i.id,v.layoutVertexBuffer,m,f,i.paint,t.transform.zoom,x);}}function aa(t,e,i,a,s,o,r){const n=t.context,l=n.gl,h="fill-extrusion-pattern",c=i.paint.get(h),u=c.constantOr(1),d=i.getCrossfadeParameters(),_=i.paint.get("fill-extrusion-opacity"),p=c.constantOr(null);for(const c of a){const a=e.getTile(c),m=a.getBucket(i);if(!m)continue;const f=t.style.map.terrain&&t.style.map.terrain.getTerrainData(c),g=m.programConfigurations.get(i.id),v=t.useProgram(u?"fillExtrusionPattern":"fillExtrusion",g);u&&(t.context.activeTexture.set(l.TEXTURE0),a.imageAtlasTexture.bind(l.LINEAR,l.CLAMP_TO_EDGE),g.updatePaintBuffers(d)),ea(g,h,p,a,i);const x=t.translatePosMatrix(c.posMatrix,a,i.paint.get("fill-extrusion-translate"),i.paint.get("fill-extrusion-translate-anchor")),y=i.paint.get("fill-extrusion-vertical-gradient"),b=u?we(x,t,y,_,c,d,a):be(x,t,y,_);v.draw(n,n.gl.TRIANGLES,s,o,r,ji.backCCW,b,f,i.id,m.layoutVertexBuffer,m.indexBuffer,m.segments,i.paint,t.transform.zoom,g,t.style.map.terrain&&m.centroidVertexBuffer);}}function sa(t,e,i,a,s,o,r){const n=t.context,l=n.gl,h=i.fbo;if(!h)return;const c=t.useProgram("hillshade"),u=t.style.map.terrain&&t.style.map.terrain.getTerrainData(e);n.activeTexture.set(l.TEXTURE0),l.bindTexture(l.TEXTURE_2D,h.colorAttachment.get()),c.draw(n,l.TRIANGLES,s,o,r,ji.disabled,((t,e,i,a)=>{const s=i.paint.get("hillshade-shadow-color"),o=i.paint.get("hillshade-highlight-color"),r=i.paint.get("hillshade-accent-color");let n=i.paint.get("hillshade-illumination-direction")*(Math.PI/180);"viewport"===i.paint.get("hillshade-illumination-anchor")&&(n-=t.transform.angle);const l=!t.options.moving;return {u_matrix:a?a.posMatrix:t.transform.calculatePosMatrix(e.tileID.toUnwrapped(),l),u_image:0,u_latrange:Re(0,e.tileID),u_light:[i.paint.get("hillshade-exaggeration"),n],u_shadow:s,u_highlight:o,u_accent:r}})(t,i,a,u?e:null),u,a.id,t.rasterBoundsBuffer,t.quadTriangleIndexBuffer,t.rasterBoundsSegments);}function oa(t,i,a,s,o,r){const n=t.context,l=n.gl,h=i.dem;if(h&&h.data){const c=h.dim,u=h.stride,d=h.getPixels();if(n.activeTexture.set(l.TEXTURE1),n.pixelStoreUnpackPremultiplyAlpha.set(!1),i.demTexture=i.demTexture||t.getTileTexture(u),i.demTexture){const t=i.demTexture;t.update(d,{premultiply:!1}),t.bind(l.NEAREST,l.CLAMP_TO_EDGE);}else i.demTexture=new b(n,d,l.RGBA,{premultiply:!1}),i.demTexture.bind(l.NEAREST,l.CLAMP_TO_EDGE);n.activeTexture.set(l.TEXTURE0);let _=i.fbo;if(!_){const t=new b(n,{width:c,height:c,data:null},l.RGBA);t.bind(l.LINEAR,l.CLAMP_TO_EDGE),_=i.fbo=n.createFramebuffer(c,c,!0,!1),_.colorAttachment.set(t.texture);}n.bindFramebuffer.set(_.framebuffer),n.viewport.set([0,0,c,c]),t.useProgram("hillshadePrepare").draw(n,l.TRIANGLES,s,o,r,ji.disabled,((t,i)=>{const a=i.stride,s=e.H();return e.aP(s,0,e.X,-e.X,0,0,1),e.J(s,s,[0,-e.X,0]),{u_matrix:s,u_image:1,u_dimension:[a,a],u_zoom:t.overscaledZ,u_unpack:i.getUnpackVector()}})(i.tileID,h),null,a.id,t.rasterBoundsBuffer,t.quadTriangleIndexBuffer,t.rasterBoundsSegments),i.needsHillshadePrepare=!1;}}function ra(t,i,a,s,r,n){const l=s.paint.get("raster-fade-duration");if(!n&&l>0){const s=o.now(),n=(s-t.timeAdded)/l,h=i?(s-i.timeAdded)/l:-1,c=a.getSource(),u=r.coveringZoomLevel({tileSize:c.tileSize,roundZoom:c.roundZoom}),d=!i||Math.abs(i.tileID.overscaledZ-u)>Math.abs(t.tileID.overscaledZ-u),_=d&&t.refreshedUponExpiration?1:e.ac(d?n:1-h,0,1);return t.refreshedUponExpiration&&n>=1&&(t.refreshedUponExpiration=!1),i?{opacity:1,mix:1-_}:{opacity:_,mix:0}}return {opacity:1,mix:0}}const na=new e.aM(1,0,0,1),la=new e.aM(0,1,0,1),ha=new e.aM(0,0,1,1),ca=new e.aM(1,0,1,1),ua=new e.aM(0,1,1,1);function da(t,e,i,a){pa(t,0,e+i/2,t.transform.width,i,a);}function _a(t,e,i,a){pa(t,e-i/2,0,i,t.transform.height,a);}function pa(t,e,i,a,s,o){const r=t.context,n=r.gl;n.enable(n.SCISSOR_TEST),n.scissor(e*t.pixelRatio,i*t.pixelRatio,a*t.pixelRatio,s*t.pixelRatio),r.clear({color:o}),n.disable(n.SCISSOR_TEST);}function ma(t,i,a){const s=t.context,o=s.gl,r=a.posMatrix,n=t.useProgram("debug"),l=Oi.disabled,h=Ui.disabled,c=t.colorModeForRenderPass(),u="$debug",d=t.style.map.terrain&&t.style.map.terrain.getTerrainData(a);s.activeTexture.set(o.TEXTURE0);const _=i.getTileByID(a.key).latestRawTileData,p=Math.floor((_&&_.byteLength||0)/1024),m=i.getTile(a).tileSize,f=512/Math.min(m,512)*(a.overscaledZ/t.transform.zoom)*.5;let g=a.canonical.toString();a.overscaledZ!==a.canonical.z&&(g+=` => ${a.overscaledZ}`),function(t,e){t.initDebugOverlayCanvas();const i=t.debugOverlayCanvas,a=t.context.gl,s=t.debugOverlayCanvas.getContext("2d");s.clearRect(0,0,i.width,i.height),s.shadowColor="white",s.shadowBlur=2,s.lineWidth=1.5,s.strokeStyle="white",s.textBaseline="top",s.font="bold 36px Open Sans, sans-serif",s.fillText(e,5,5),s.strokeText(e,5,5),t.debugOverlayTexture.update(i),t.debugOverlayTexture.bind(a.LINEAR,a.CLAMP_TO_EDGE);}(t,`${g} ${p}kB`),n.draw(s,o.TRIANGLES,l,h,Fi.alphaBlended,ji.disabled,ze(r,e.aM.transparent,f),null,u,t.debugBuffer,t.quadTriangleIndexBuffer,t.debugSegments),n.draw(s,o.LINE_STRIP,l,h,c,ji.disabled,ze(r,e.aM.red),d,u,t.debugBuffer,t.tileBorderIndexBuffer,t.debugSegments);}function fa(t,e,i){const a=t.context,s=a.gl,o=t.colorModeForRenderPass(),r=new Oi(s.LEQUAL,Oi.ReadWrite,t.depthRangeFor3D),n=t.useProgram("terrain"),l=e.getTerrainMesh();a.bindFramebuffer.set(null),a.viewport.set([0,0,t.width,t.height]);for(const h of i){const i=t.renderToTexture.getTexture(h),c=e.getTerrainData(h.tileID);a.activeTexture.set(s.TEXTURE0),s.bindTexture(s.TEXTURE_2D,i.texture);const u=t.transform.calculatePosMatrix(h.tileID.toUnwrapped()),d=e.getMeshFrameDelta(t.transform.zoom),_=t.transform.calculateFogMatrix(h.tileID.toUnwrapped()),p=ge(u,d,_,t.style.sky,t.transform.pitch);n.draw(a,s.TRIANGLES,r,Ui.disabled,o,ji.backCCW,p,c,"terrain",l.vertexBuffer,l.indexBuffer,l.segments);}}class ga{constructor(t,e,i){this.vertexBuffer=t,this.indexBuffer=e,this.segments=i;}destroy(){this.vertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.vertexBuffer=null,this.indexBuffer=null,this.segments=null;}}class va{constructor(t,i){this.context=new Bi(t),this.transform=i,this._tileTextures={},this.terrainFacilitator={dirty:!0,matrix:e.an(new Float64Array(16)),renderTime:0},this.setup(),this.numSublayers=ut.maxUnderzooming+ut.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new he;}resize(t,e,i){if(this.width=Math.floor(t*i),this.height=Math.floor(e*i),this.pixelRatio=i,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(const t of this.style._order)this.style._layers[t].resize();}setup(){const t=this.context,i=new e.aX;i.emplaceBack(0,0),i.emplaceBack(e.X,0),i.emplaceBack(0,e.X),i.emplaceBack(e.X,e.X),this.tileExtentBuffer=t.createVertexBuffer(i,_e.members),this.tileExtentSegments=e.a0.simpleSegment(0,0,4,2);const a=new e.aX;a.emplaceBack(0,0),a.emplaceBack(e.X,0),a.emplaceBack(0,e.X),a.emplaceBack(e.X,e.X),this.debugBuffer=t.createVertexBuffer(a,_e.members),this.debugSegments=e.a0.simpleSegment(0,0,4,5);const s=new e.$;s.emplaceBack(0,0,0,0),s.emplaceBack(e.X,0,e.X,0),s.emplaceBack(0,e.X,0,e.X),s.emplaceBack(e.X,e.X,e.X,e.X),this.rasterBoundsBuffer=t.createVertexBuffer(s,Y.members),this.rasterBoundsSegments=e.a0.simpleSegment(0,0,4,2);const o=new e.aX;o.emplaceBack(0,0),o.emplaceBack(1,0),o.emplaceBack(0,1),o.emplaceBack(1,1),this.viewportBuffer=t.createVertexBuffer(o,_e.members),this.viewportSegments=e.a0.simpleSegment(0,0,4,2);const r=new e.aZ;r.emplaceBack(0),r.emplaceBack(1),r.emplaceBack(3),r.emplaceBack(2),r.emplaceBack(0),this.tileBorderIndexBuffer=t.createIndexBuffer(r);const n=new e.aY;n.emplaceBack(0,1,2),n.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=t.createIndexBuffer(n);const l=this.context.gl;this.stencilClearMode=new Ui({func:l.ALWAYS,mask:0},0,255,l.ZERO,l.ZERO,l.ZERO);}clearStencil(){const t=this.context,i=t.gl;this.nextStencilID=1,this.currentStencilSource=void 0;const a=e.H();e.aP(a,0,this.width,this.height,0,0,1),e.K(a,a,[i.drawingBufferWidth,i.drawingBufferHeight,0]),this.useProgram("clippingMask").draw(t,i.TRIANGLES,Oi.disabled,this.stencilClearMode,Fi.disabled,ji.disabled,De(a),null,"$clipping",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments);}_renderTileClippingMasks(t,e){if(this.currentStencilSource===t.source||!t.isTileClipped()||!e||!e.length)return;this.currentStencilSource=t.source;const i=this.context,a=i.gl;this.nextStencilID+e.length>256&&this.clearStencil(),i.setColorMode(Fi.disabled),i.setDepthMode(Oi.disabled);const s=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(const t of e){const e=this._tileClippingMaskIDs[t.key]=this.nextStencilID++,o=this.style.map.terrain&&this.style.map.terrain.getTerrainData(t);s.draw(i,a.TRIANGLES,Oi.disabled,new Ui({func:a.ALWAYS,mask:0},e,255,a.KEEP,a.KEEP,a.REPLACE),Fi.disabled,ji.disabled,De(t.posMatrix),o,"$clipping",this.tileExtentBuffer,this.quadTriangleIndexBuffer,this.tileExtentSegments);}}stencilModeFor3D(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();const t=this.nextStencilID++,e=this.context.gl;return new Ui({func:e.NOTEQUAL,mask:255},t,255,e.KEEP,e.KEEP,e.REPLACE)}stencilModeForClipping(t){const e=this.context.gl;return new Ui({func:e.EQUAL,mask:255},this._tileClippingMaskIDs[t.key],0,e.KEEP,e.KEEP,e.REPLACE)}stencilConfigForOverlap(t){const e=this.context.gl,i=t.sort(((t,e)=>e.overscaledZ-t.overscaledZ)),a=i[i.length-1].overscaledZ,s=i[0].overscaledZ-a+1;if(s>1){this.currentStencilSource=void 0,this.nextStencilID+s>256&&this.clearStencil();const t={};for(let i=0;i({u_sky_color:t.properties.get("sky-color"),u_horizon_color:t.properties.get("horizon-color"),u_horizon:(e.height/2+e.getHorizon())*i,u_sky_horizon_blend:t.properties.get("sky-horizon-blend")*e.height/2*i}))(i,t.style.map.transform,t.pixelRatio),r=new Oi(s.LEQUAL,Oi.ReadWrite,[0,1]),n=Ui.disabled,l=t.colorModeForRenderPass(),h=t.useProgram("sky");if(!i.mesh){const t=new e.aX;t.emplaceBack(-1,-1),t.emplaceBack(1,-1),t.emplaceBack(1,1),t.emplaceBack(-1,1);const s=new e.aY;s.emplaceBack(0,1,2),s.emplaceBack(0,2,3),i.mesh=new ga(a.createVertexBuffer(t,_e.members),a.createIndexBuffer(s),e.a0.simpleSegment(0,0,t.length,s.length));}h.draw(a,s.TRIANGLES,r,n,l,ji.disabled,o,void 0,"sky",i.mesh.vertexBuffer,i.mesh.indexBuffer,i.mesh.segments);}(this,this.style.sky),this._showOverdrawInspector=i.showOverdrawInspector,this.depthRangeFor3D=[0,1-(t._order.length+2)*this.numSublayers*this.depthEpsilon],!this.renderToTexture)for(this.renderPass="opaque",this.currentLayer=a.length-1;this.currentLayer>=0;this.currentLayer--){const t=this.style._layers[a[this.currentLayer]],e=s[t.source],i=r[t.source];this._renderTileClippingMasks(t,i),this.renderLayer(this,e,t,i);}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayeri.source&&!i.isHidden(e)?[t.sourceCaches[i.source]]:[])),s=a.filter((t=>"vector"===t.getSource().type)),o=a.filter((t=>"vector"!==t.getSource().type)),r=t=>{(!i||i.getSource().maxzoomr(t))),i||o.forEach((t=>r(t))),i}(this.style,this.transform.zoom);t&&function(t,e,i){for(let a=0;a0),s&&(e.b0(i,a),this.terrainFacilitator.renderTime=Date.now(),this.terrainFacilitator.dirty=!1,function(t,i){const a=t.context,s=a.gl,o=Fi.unblended,r=new Oi(s.LEQUAL,Oi.ReadWrite,[0,1]),n=i.getTerrainMesh(),l=i.sourceCache.getRenderableTiles(),h=t.useProgram("terrainDepth");a.bindFramebuffer.set(i.getFramebuffer("depth").framebuffer),a.viewport.set([0,0,t.width/devicePixelRatio,t.height/devicePixelRatio]),a.clear({color:e.aM.transparent,depth:1});for(const e of l){const l=i.getTerrainData(e.tileID),c={u_matrix:t.transform.calculatePosMatrix(e.tileID.toUnwrapped()),u_ele_delta:i.getMeshFrameDelta(t.transform.zoom)};h.draw(a,s.TRIANGLES,r,Ui.disabled,o,ji.backCCW,c,l,"terrain",n.vertexBuffer,n.indexBuffer,n.segments);}a.bindFramebuffer.set(null),a.viewport.set([0,0,t.width,t.height]);}(this,this.style.map.terrain),function(t,i){const a=t.context,s=a.gl,o=Fi.unblended,r=new Oi(s.LEQUAL,Oi.ReadWrite,[0,1]),n=i.getTerrainMesh(),l=i.getCoordsTexture(),h=i.sourceCache.getRenderableTiles(),c=t.useProgram("terrainCoords");a.bindFramebuffer.set(i.getFramebuffer("coords").framebuffer),a.viewport.set([0,0,t.width/devicePixelRatio,t.height/devicePixelRatio]),a.clear({color:e.aM.transparent,depth:1}),i.coordsIndex=[];for(const e of h){const h=i.getTerrainData(e.tileID);a.activeTexture.set(s.TEXTURE0),s.bindTexture(s.TEXTURE_2D,l.texture);const u={u_matrix:t.transform.calculatePosMatrix(e.tileID.toUnwrapped()),u_terrain_coords_id:(255-i.coordsIndex.length)/255,u_texture:0,u_ele_delta:i.getMeshFrameDelta(t.transform.zoom)};c.draw(a,s.TRIANGLES,r,Ui.disabled,o,ji.backCCW,u,h,"terrain",n.vertexBuffer,n.indexBuffer,n.segments),i.coordsIndex.push(e.tileID.key);}a.bindFramebuffer.set(null),a.viewport.set([0,0,t.width,t.height]);}(this,this.style.map.terrain));}renderLayer(t,i,a,s){if(!a.isHidden(this.transform.zoom)&&("background"===a.type||"custom"===a.type||(s||[]).length))switch(this.id=a.id,a.type){case"symbol":!function(t,i,a,s,o){if("translucent"!==t.renderPass)return;const r=Ui.disabled,n=t.colorModeForRenderPass();(a._unevaluatedLayout.hasValue("text-variable-anchor")||a._unevaluatedLayout.hasValue("text-variable-anchor-offset"))&&function(t,i,a,s,o,r,n,l,h){const c=i.transform,u=ie(),d="map"===o,_="map"===r;for(const o of t){const t=s.getTile(o),r=t.getBucket(a);if(!r||!r.text||!r.text.segments.get().length)continue;const p=e.ag(r.textSizeData,c.zoom),m=Bt(t,1,i.transform.zoom),f=gt(o.posMatrix,_,d,i.transform,m),g="none"!==a.layout.get("icon-text-fit")&&r.hasIconData();if(p){const e=Math.pow(2,c.zoom-t.tileID.overscaledZ),a=i.style.map.terrain?(t,e)=>i.style.map.terrain.getElevation(o,t,e):null,s=u.translatePosition(c,t,n,l);Wi(r,d,_,h,c,f,o.posMatrix,e,p,g,u,s,o.toUnwrapped(),a);}}}(s,t,a,i,a.layout.get("text-rotation-alignment"),a.layout.get("text-pitch-alignment"),a.paint.get("text-translate"),a.paint.get("text-translate-anchor"),o),0!==a.paint.get("icon-opacity").constantOr(1)&&Xi(t,i,a,s,!1,a.paint.get("icon-translate"),a.paint.get("icon-translate-anchor"),a.layout.get("icon-rotation-alignment"),a.layout.get("icon-pitch-alignment"),a.layout.get("icon-keep-upright"),r,n),0!==a.paint.get("text-opacity").constantOr(1)&&Xi(t,i,a,s,!0,a.paint.get("text-translate"),a.paint.get("text-translate-anchor"),a.layout.get("text-rotation-alignment"),a.layout.get("text-pitch-alignment"),a.layout.get("text-keep-upright"),r,n),i.map.showCollisionBoxes&&(qi(t,i,a,s,!0),qi(t,i,a,s,!1));}(t,i,a,s,this.style.placement.variableOffsets);break;case"circle":!function(t,i,a,s){if("translucent"!==t.renderPass)return;const o=a.paint.get("circle-opacity"),r=a.paint.get("circle-stroke-width"),n=a.paint.get("circle-stroke-opacity"),l=!a.layout.get("circle-sort-key").isConstant();if(0===o.constantOr(1)&&(0===r.constantOr(1)||0===n.constantOr(1)))return;const h=t.context,c=h.gl,u=t.depthModeForSublayer(0,Oi.ReadOnly),d=Ui.disabled,_=t.colorModeForRenderPass(),p=[];for(let o=0;ot.sortKey-e.sortKey));for(const e of p){const{programConfiguration:i,program:s,layoutVertexBuffer:o,indexBuffer:r,uniformValues:n,terrainData:l}=e.state;s.draw(h,c.TRIANGLES,u,d,_,ji.disabled,n,l,a.id,o,r,e.segments,a.paint,t.transform.zoom,i);}}(t,i,a,s);break;case"heatmap":!function(t,i,a,s){if(0===a.paint.get("heatmap-opacity"))return;const o=t.context;if(t.style.map.terrain){for(const e of s){const s=i.getTile(e);i.hasRenderableParent(e)||("offscreen"===t.renderPass?Ji(t,s,a,e):"translucent"===t.renderPass&&Yi(t,a,e));}o.viewport.set([0,0,t.width,t.height]);}else "offscreen"===t.renderPass?function(t,i,a,s){const o=t.context,r=o.gl,n=Ui.disabled,l=new Fi([r.ONE,r.ONE],e.aM.transparent,[!0,!0,!0,!0]);((function(t,i,a){const s=t.gl;t.activeTexture.set(s.TEXTURE1),t.viewport.set([0,0,i.width/4,i.height/4]);let o=a.heatmapFbos.get(e.aU);o?(s.bindTexture(s.TEXTURE_2D,o.colorAttachment.get()),t.bindFramebuffer.set(o.framebuffer)):(o=Qi(t,i.width/4,i.height/4),a.heatmapFbos.set(e.aU,o));}))(o,t,a),o.clear({color:e.aM.transparent});for(let e=0;e20&&o.texParameterf(o.TEXTURE_2D,s.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,s.extTextureFilterAnisotropicMax);const y=t.style.map.terrain&&t.style.map.terrain.getTerrainData(a),b=y?a:null,w=b?b.posMatrix:t.transform.calculatePosMatrix(a.toUnwrapped(),d),T=Ue(w,v||[0,0],g||1,f,i);r instanceof Q?n.draw(s,o.TRIANGLES,c,Ui.disabled,l,ji.disabled,T,y,i.id,r.boundsBuffer,t.quadTriangleIndexBuffer,r.boundsSegments):n.draw(s,o.TRIANGLES,c,h[a.overscaledZ],l,ji.disabled,T,y,i.id,t.rasterBoundsBuffer,t.quadTriangleIndexBuffer,t.rasterBoundsSegments);}}(t,i,a,s);break;case"background":!function(t,e,i,a){const s=i.paint.get("background-color"),o=i.paint.get("background-opacity");if(0===o)return;const r=t.context,n=r.gl,l=t.transform,h=l.tileSize,c=i.paint.get("background-pattern");if(t.isPatternMissing(c))return;const u=!c&&1===s.a&&1===o&&t.opaquePassEnabledForLayer()?"opaque":"translucent";if(t.renderPass!==u)return;const d=Ui.disabled,_=t.depthModeForSublayer(0,"opaque"===u?Oi.ReadWrite:Oi.ReadOnly),p=t.colorModeForRenderPass(),m=t.useProgram(c?"backgroundPattern":"background"),f=a||l.coveringTiles({tileSize:h,terrain:t.style.map.terrain});c&&(r.activeTexture.set(n.TEXTURE0),t.imageManager.bind(t.context));const g=i.getCrossfadeParameters();for(const e of f){const l=a?e.posMatrix:t.transform.calculatePosMatrix(e.toUnwrapped()),u=c?He(l,o,t,c,{tileID:e,tileSize:h},g):Ge(l,o,s),f=t.style.map.terrain&&t.style.map.terrain.getTerrainData(e);m.draw(r,n.TRIANGLES,_,d,p,ji.disabled,u,f,i.id,t.tileExtentBuffer,t.quadTriangleIndexBuffer,t.tileExtentSegments);}}(t,0,a,s);break;case"custom":!function(t,e,i){const a=t.context,s=i.implementation;if("offscreen"===t.renderPass){const e=s.prerender;e&&(t.setCustomLayerDefaults(),a.setColorMode(t.colorModeForRenderPass()),e.call(s,a.gl,t.transform.customLayerMatrix()),a.setDirty(),t.setBaseState());}else if("translucent"===t.renderPass){t.setCustomLayerDefaults(),a.setColorMode(t.colorModeForRenderPass()),a.setStencilMode(Ui.disabled);const e="3d"===s.renderingMode?new Oi(t.context.gl.LEQUAL,Oi.ReadWrite,t.depthRangeFor3D):t.depthModeForSublayer(0,Oi.ReadOnly);a.setDepthMode(e),s.render(a.gl,t.transform.customLayerMatrix(),{farZ:t.transform.farZ,nearZ:t.transform.nearZ,fov:t.transform._fov,modelViewProjectionMatrix:t.transform.modelViewProjectionMatrix,projectionMatrix:t.transform.projectionMatrix}),a.setDirty(),t.setBaseState(),a.bindFramebuffer.set(null);}}(t,0,a);}}translatePosMatrix(t,i,a,s,o){if(!a[0]&&!a[1])return t;const r=o?"map"===s?this.transform.angle:0:"viewport"===s?-this.transform.angle:0;if(r){const t=Math.sin(r),e=Math.cos(r);a=[a[0]*e-a[1]*t,a[0]*t+a[1]*e];}const n=[o?a[0]:Bt(i,a[0],this.transform.zoom),o?a[1]:Bt(i,a[1],this.transform.zoom),0],l=new Float32Array(16);return e.J(l,t,n),l}saveTileTexture(t){const e=this._tileTextures[t.size[0]];e?e.push(t):this._tileTextures[t.size[0]]=[t];}getTileTexture(t){const e=this._tileTextures[t];return e&&e.length>0?e.pop():null}isPatternMissing(t){if(!t)return !1;if(!t.from||!t.to)return !0;const e=this.imageManager.getPattern(t.from.toString()),i=this.imageManager.getPattern(t.to.toString());return !e||!i}useProgram(t,e){this.cache=this.cache||{};const i=t+(e?e.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"")+(this.style.map.terrain?"/terrain":"");return this.cache[i]||(this.cache[i]=new xe(this.context,pe[t],e,We[t],this._showOverdrawInspector,this.style.map.terrain)),this.cache[i]}setCustomLayerDefaults(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault();}setBaseState(){const t=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(t.FUNC_ADD);}initDebugOverlayCanvas(){null==this.debugOverlayCanvas&&(this.debugOverlayCanvas=document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512,this.debugOverlayTexture=new b(this.context,this.debugOverlayCanvas,this.context.gl.RGBA));}destroy(){this.debugOverlayTexture&&this.debugOverlayTexture.destroy();}overLimit(){const{drawingBufferWidth:t,drawingBufferHeight:e}=this.context.gl;return this.width!==t||this.height!==e}}class xa{constructor(t,e){this.points=t,this.planes=e;}static fromInvProjectionMatrix(t,i,a){const s=Math.pow(2,a),o=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]].map((a=>{const o=1/(a=e.af([],a,t))[3]/i*s;return e.b1(a,a,[o,o,1/a[3],o])})),r=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map((t=>{const e=function(t,e){var i=e[0],a=e[1],s=e[2],o=i*i+a*a+s*s;return o>0&&(o=1/Math.sqrt(o)),t[0]=e[0]*o,t[1]=e[1]*o,t[2]=e[2]*o,t}([],function(t,e,i){var a=e[0],s=e[1],o=e[2],r=i[0],n=i[1],l=i[2];return t[0]=s*l-o*n,t[1]=o*r-a*l,t[2]=a*n-s*r,t}([],g([],o[t[0]],o[t[1]]),g([],o[t[2]],o[t[1]]))),i=-((a=e)[0]*(s=o[t[1]])[0]+a[1]*s[1]+a[2]*s[2]);var a,s;return e.concat(i)}));return new xa(o,r)}}class ya{constructor(t,e){this.min=t,this.max=e,this.center=function(t,e,i){return t[0]=.5*e[0],t[1]=.5*e[1],t[2]=.5*e[2],t}([],function(t,e,i){return t[0]=e[0]+i[0],t[1]=e[1]+i[1],t[2]=e[2]+i[2],t}([],this.min,this.max));}quadrant(t){const e=[t%2==0,t<2],i=m(this.min),a=m(this.max);for(let t=0;t=0&&r++;if(0===r)return 0;r!==i.length&&(a=!1);}if(a)return 2;for(let e=0;e<3;e++){let i=Number.MAX_VALUE,a=-Number.MAX_VALUE;for(let s=0;sthis.max[e]-this.min[e])return 0}return 1}}class ba{constructor(t=0,e=0,i=0,a=0){if(isNaN(t)||t<0||isNaN(e)||e<0||isNaN(i)||i<0||isNaN(a)||a<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=t,this.bottom=e,this.left=i,this.right=a;}interpolate(t,i,a){return null!=i.top&&null!=t.top&&(this.top=e.y.number(t.top,i.top,a)),null!=i.bottom&&null!=t.bottom&&(this.bottom=e.y.number(t.bottom,i.bottom,a)),null!=i.left&&null!=t.left&&(this.left=e.y.number(t.left,i.left,a)),null!=i.right&&null!=t.right&&(this.right=e.y.number(t.right,i.right,a)),this}getCenter(t,i){const a=e.ac((this.left+t-this.right)/2,0,t),s=e.ac((this.top+i-this.bottom)/2,0,i);return new e.P(a,s)}equals(t){return this.top===t.top&&this.bottom===t.bottom&&this.left===t.left&&this.right===t.right}clone(){return new ba(this.top,this.bottom,this.left,this.right)}toJSON(){return {top:this.top,bottom:this.bottom,left:this.left,right:this.right}}}const wa=85.051129;class Ta{constructor(t,i,a,s,o){this.tileSize=512,this._renderWorldCopies=void 0===o||!!o,this._minZoom=t||0,this._maxZoom=i||22,this._minPitch=null==a?0:a,this._maxPitch=null==s?60:s,this.setMaxBounds(),this.width=0,this.height=0,this._center=new e.N(0,0),this._elevation=0,this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new ba,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={},this.minElevationForCurrentTile=0;}clone(){const t=new Ta(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return t.apply(this),t}apply(t){this.tileSize=t.tileSize,this.latRange=t.latRange,this.lngRange=t.lngRange,this.width=t.width,this.height=t.height,this._center=t._center,this._elevation=t._elevation,this.minElevationForCurrentTile=t.minElevationForCurrentTile,this.zoom=t.zoom,this.angle=t.angle,this._fov=t._fov,this._pitch=t._pitch,this._unmodified=t._unmodified,this._edgeInsets=t._edgeInsets.clone(),this._calcMatrices();}get minZoom(){return this._minZoom}set minZoom(t){this._minZoom!==t&&(this._minZoom=t,this.zoom=Math.max(this.zoom,t));}get maxZoom(){return this._maxZoom}set maxZoom(t){this._maxZoom!==t&&(this._maxZoom=t,this.zoom=Math.min(this.zoom,t));}get minPitch(){return this._minPitch}set minPitch(t){this._minPitch!==t&&(this._minPitch=t,this.pitch=Math.max(this.pitch,t));}get maxPitch(){return this._maxPitch}set maxPitch(t){this._maxPitch!==t&&(this._maxPitch=t,this.pitch=Math.min(this.pitch,t));}get renderWorldCopies(){return this._renderWorldCopies}set renderWorldCopies(t){void 0===t?t=!0:null===t&&(t=!1),this._renderWorldCopies=t;}get worldSize(){return this.tileSize*this.scale}get centerOffset(){return this.centerPoint._sub(this.size._div(2))}get size(){return new e.P(this.width,this.height)}get bearing(){return -this.angle/Math.PI*180}set bearing(t){const i=-e.b3(t,-180,180)*Math.PI/180;this.angle!==i&&(this._unmodified=!1,this.angle=i,this._calcMatrices(),this.rotationMatrix=function(){var t=new e.A(4);return e.A!=Float32Array&&(t[1]=0,t[2]=0),t[0]=1,t[3]=1,t}(),function(t,e,i){var a=e[0],s=e[1],o=e[2],r=e[3],n=Math.sin(i),l=Math.cos(i);t[0]=a*l+o*n,t[1]=s*l+r*n,t[2]=a*-n+o*l,t[3]=s*-n+r*l;}(this.rotationMatrix,this.rotationMatrix,this.angle));}get pitch(){return this._pitch/Math.PI*180}set pitch(t){const i=e.ac(t,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==i&&(this._unmodified=!1,this._pitch=i,this._calcMatrices());}get fov(){return this._fov/Math.PI*180}set fov(t){t=Math.max(.01,Math.min(60,t)),this._fov!==t&&(this._unmodified=!1,this._fov=t/180*Math.PI,this._calcMatrices());}get zoom(){return this._zoom}set zoom(t){const e=Math.min(Math.max(t,this.minZoom),this.maxZoom);this._zoom!==e&&(this._unmodified=!1,this._zoom=e,this.tileZoom=Math.max(0,Math.floor(e)),this.scale=this.zoomScale(e),this._constrain(),this._calcMatrices());}get center(){return this._center}set center(t){t.lat===this._center.lat&&t.lng===this._center.lng||(this._unmodified=!1,this._center=t,this._constrain(),this._calcMatrices());}get elevation(){return this._elevation}set elevation(t){t!==this._elevation&&(this._elevation=t,this._constrain(),this._calcMatrices());}get padding(){return this._edgeInsets.toJSON()}set padding(t){this._edgeInsets.equals(t)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,t,1),this._calcMatrices());}get centerPoint(){return this._edgeInsets.getCenter(this.width,this.height)}isPaddingEqual(t){return this._edgeInsets.equals(t)}interpolatePadding(t,e,i){this._unmodified=!1,this._edgeInsets.interpolate(t,e,i),this._constrain(),this._calcMatrices();}coveringZoomLevel(t){const e=(t.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/t.tileSize));return Math.max(0,e)}getVisibleUnwrappedCoordinates(t){const i=[new e.b4(0,t)];if(this._renderWorldCopies){const a=this.pointCoordinate(new e.P(0,0)),s=this.pointCoordinate(new e.P(this.width,0)),o=this.pointCoordinate(new e.P(this.width,this.height)),r=this.pointCoordinate(new e.P(0,this.height)),n=Math.floor(Math.min(a.x,s.x,o.x,r.x)),l=Math.floor(Math.max(a.x,s.x,o.x,r.x)),h=1;for(let a=n-h;a<=l+h;a++)0!==a&&i.push(new e.b4(a,t));}return i}coveringTiles(t){var i,a;let s=this.coveringZoomLevel(t);const o=s;if(void 0!==t.minzoom&&st.maxzoom&&(s=t.maxzoom);const r=this.pointCoordinate(this.getCameraPoint()),n=e.Z.fromLngLat(this.center),l=Math.pow(2,s),h=[l*r.x,l*r.y,0],c=[l*n.x,l*n.y,0],u=xa.fromInvProjectionMatrix(this.invModelViewProjectionMatrix,this.worldSize,s);let d=t.minzoom||0;!t.terrain&&this.pitch<=60&&this._edgeInsets.top<.1&&(d=s);const _=t.terrain?2/Math.min(this.tileSize,t.tileSize)*this.tileSize:3,p=t=>({aabb:new ya([t*l,0,0],[(t+1)*l,l,0]),zoom:0,x:0,y:0,wrap:t,fullyVisible:!1}),m=[],f=[],g=s,x=t.reparseOverscaled?o:s;if(this._renderWorldCopies)for(let t=1;t<=3;t++)m.push(p(-t)),m.push(p(t));for(m.push(p(0));m.length>0;){const s=m.pop(),o=s.x,r=s.y;let n=s.fullyVisible;if(!n){const t=s.aabb.intersects(u);if(0===t)continue;n=2===t;}const l=t.terrain?h:c,p=s.aabb.distanceX(l),y=s.aabb.distanceY(l),b=Math.max(Math.abs(p),Math.abs(y));if(s.zoom===g||b>_+(1<=d){const t=g-s.zoom,i=h[0]-.5-(o<>1),u=s.zoom+1;let d=s.aabb.quadrant(l);if(t.terrain){const o=new e.S(u,s.wrap,u,h,c),r=t.terrain.getMinMaxElevation(o),n=null!==(i=r.minElevation)&&void 0!==i?i:this.elevation,l=null!==(a=r.maxElevation)&&void 0!==a?a:this.elevation;d=new ya([d.min[0],d.min[1],n],[d.max[0],d.max[1],l]);}m.push({aabb:d,zoom:u,x:h,y:c,wrap:s.wrap,fullyVisible:n});}}return f.sort(((t,e)=>t.distanceSq-e.distanceSq)).map((t=>t.tileID))}resize(t,e){this.width=t,this.height=e,this.pixelsToGLUnits=[2/t,-2/e],this._constrain(),this._calcMatrices();}get unmodified(){return this._unmodified}zoomScale(t){return Math.pow(2,t)}scaleZoom(t){return Math.log(t)/Math.LN2}project(t){const i=e.ac(t.lat,-85.051129,wa);return new e.P(e.O(t.lng)*this.worldSize,e.Q(i)*this.worldSize)}unproject(t){return new e.Z(t.x/this.worldSize,t.y/this.worldSize).toLngLat()}get point(){return this.project(this.center)}getCameraPosition(){return {lngLat:this.pointLocation(this.getCameraPoint()),altitude:Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter+this.elevation}}recalculateZoom(t){const i=this.elevation,a=Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter,s=this.pointLocation(this.centerPoint,t),o=t.getElevationForLngLatZoom(s,this.tileZoom);if(!(this.elevation-o))return;const r=a+i-o,n=Math.cos(this._pitch)*this.cameraToCenterDistance/r/e.b5(1,s.lat),l=this.scaleZoom(n/this.tileSize);this._elevation=o,this._center=s,this.zoom=l;}setLocationAtPoint(t,i){const a=this.pointCoordinate(i),s=this.pointCoordinate(this.centerPoint),o=this.locationCoordinate(t),r=new e.Z(o.x-(a.x-s.x),o.y-(a.y-s.y));this.center=this.coordinateLocation(r),this._renderWorldCopies&&(this.center=this.center.wrap());}locationPoint(t,e){return e?this.coordinatePoint(this.locationCoordinate(t),e.getElevationForLngLatZoom(t,this.tileZoom),this.pixelMatrix3D):this.coordinatePoint(this.locationCoordinate(t))}pointLocation(t,e){return this.coordinateLocation(this.pointCoordinate(t,e))}locationCoordinate(t){return e.Z.fromLngLat(t)}coordinateLocation(t){return t&&t.toLngLat()}pointCoordinate(t,i){if(i){const e=i.pointCoordinate(t);if(null!=e)return e}const a=[t.x,t.y,0,1],s=[t.x,t.y,1,1];e.af(a,a,this.pixelMatrixInverse),e.af(s,s,this.pixelMatrixInverse);const o=a[3],r=s[3],n=a[1]/o,l=s[1]/r,h=a[2]/o,c=s[2]/r,u=h===c?0:(0-h)/(c-h);return new e.Z(e.y.number(a[0]/o,s[0]/r,u)/this.worldSize,e.y.number(n,l,u)/this.worldSize)}coordinatePoint(t,i=0,a=this.pixelMatrix){const s=[t.x*this.worldSize,t.y*this.worldSize,i,1];return e.af(s,s,a),new e.P(s[0]/s[3],s[1]/s[3])}getBounds(){const t=Math.max(0,this.height/2-this.getHorizon());return (new H).extend(this.pointLocation(new e.P(0,t))).extend(this.pointLocation(new e.P(this.width,t))).extend(this.pointLocation(new e.P(this.width,this.height))).extend(this.pointLocation(new e.P(0,this.height)))}getMaxBounds(){return this.latRange&&2===this.latRange.length&&this.lngRange&&2===this.lngRange.length?new H([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]]):null}getHorizon(){return Math.tan(Math.PI/2-this._pitch)*this.cameraToCenterDistance*.85}setMaxBounds(t){t?(this.lngRange=[t.getWest(),t.getEast()],this.latRange=[t.getSouth(),t.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-85.051129,wa]);}calculateTileMatrix(t){const i=t.canonical,a=this.worldSize/this.zoomScale(i.z),s=i.x+Math.pow(2,i.z)*t.wrap,o=e.an(new Float64Array(16));return e.J(o,o,[s*a,i.y*a,0]),e.K(o,o,[a/e.X,a/e.X,1]),o}calculatePosMatrix(t,i=!1){const a=t.key,s=i?this._alignedPosMatrixCache:this._posMatrixCache;if(s[a])return s[a];const o=this.calculateTileMatrix(t);return e.L(o,i?this.alignedModelViewProjectionMatrix:this.modelViewProjectionMatrix,o),s[a]=new Float32Array(o),s[a]}calculateFogMatrix(t){const i=t.key,a=this._fogMatrixCache;if(a[i])return a[i];const s=this.calculateTileMatrix(t);return e.L(s,this.fogMatrix,s),a[i]=new Float32Array(s),a[i]}customLayerMatrix(){return this.mercatorMatrix.slice()}getConstrained(t,i){i=e.ac(+i,this.minZoom,this.maxZoom);const a={center:new e.N(t.lng,t.lat),zoom:i};let s=this.lngRange;if(!this._renderWorldCopies&&null===s){const t=180-1e-10;s=[-t,t];}const o=this.tileSize*this.zoomScale(a.zoom);let r=0,n=o,l=0,h=o,c=0,u=0;const{x:d,y:_}=this.size;if(this.latRange){const t=this.latRange;r=e.Q(t[1])*o,n=e.Q(t[0])*o,n-r<_&&(c=_/(n-r));}s&&(l=e.b3(e.O(s[0])*o,0,o),h=e.b3(e.O(s[1])*o,0,o),hn&&(g=n-t);}if(s){const t=(l+h)/2;let i=p;this._renderWorldCopies&&(i=e.b3(p,t-o/2,t+o/2));const a=d/2;i-ah&&(f=h-a);}if(void 0!==f||void 0!==g){const t=new e.P(null!=f?f:p,null!=g?g:m);a.center=this.unproject.call({worldSize:o},t).wrap();}return a}_constrain(){if(!this.center||!this.width||!this.height||this._constraining)return;this._constraining=!0;const t=this._unmodified,{center:e,zoom:i}=this.getConstrained(this.center,this.zoom);this.center=e,this.zoom=i,this._unmodified=t,this._constraining=!1;}_calcMatrices(){if(!this.height)return;const t=this.centerOffset,i=this.point.x,a=this.point.y;this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height,this._pixelPerMeter=e.b5(1,this.center.lat)*this.worldSize;let s=e.an(new Float64Array(16));e.K(s,s,[this.width/2,-this.height/2,1]),e.J(s,s,[1,-1,0]),this.labelPlaneMatrix=s,s=e.an(new Float64Array(16)),e.K(s,s,[1,-1,1]),e.J(s,s,[-1,-1,0]),e.K(s,s,[2/this.width,2/this.height,1]),this.glCoordMatrix=s;const o=this.cameraToCenterDistance+this._elevation*this._pixelPerMeter/Math.cos(this._pitch),r=Math.min(this.elevation,this.minElevationForCurrentTile),n=o-r*this._pixelPerMeter/Math.cos(this._pitch),l=r<0?n:o,h=Math.PI/2+this._pitch,c=this._fov*(.5+t.y/this.height),u=Math.sin(c)*l/Math.sin(e.ac(Math.PI-h-c,.01,Math.PI-.01)),d=this.getHorizon(),_=2*Math.atan(d/this.cameraToCenterDistance)*(.5+t.y/(2*d)),p=Math.sin(_)*l/Math.sin(e.ac(Math.PI-h-_,.01,Math.PI-.01)),m=Math.min(u,p);this.farZ=1.01*(Math.cos(Math.PI/2-this._pitch)*m+l),this.nearZ=this.height/50,s=new Float64Array(16),e.b6(s,this._fov,this.width/this.height,this.nearZ,this.farZ),s[8]=2*-t.x/this.width,s[9]=2*t.y/this.height,this.projectionMatrix=e.ae(s),e.K(s,s,[1,-1,1]),e.J(s,s,[0,0,-this.cameraToCenterDistance]),e.b7(s,s,this._pitch),e.ad(s,s,this.angle),e.J(s,s,[-i,-a,0]),this.mercatorMatrix=e.K([],s,[this.worldSize,this.worldSize,this.worldSize]),e.K(s,s,[1,1,this._pixelPerMeter]),this.pixelMatrix=e.L(new Float64Array(16),this.labelPlaneMatrix,s),e.J(s,s,[0,0,-this.elevation]),this.modelViewProjectionMatrix=s,this.invModelViewProjectionMatrix=e.as([],s),this.fogMatrix=new Float64Array(16),e.b6(this.fogMatrix,this._fov,this.width/this.height,o,this.farZ),this.fogMatrix[8]=2*-t.x/this.width,this.fogMatrix[9]=2*t.y/this.height,e.K(this.fogMatrix,this.fogMatrix,[1,-1,1]),e.J(this.fogMatrix,this.fogMatrix,[0,0,-this.cameraToCenterDistance]),e.b7(this.fogMatrix,this.fogMatrix,this._pitch),e.ad(this.fogMatrix,this.fogMatrix,this.angle),e.J(this.fogMatrix,this.fogMatrix,[-i,-a,0]),e.K(this.fogMatrix,this.fogMatrix,[1,1,this._pixelPerMeter]),e.J(this.fogMatrix,this.fogMatrix,[0,0,-this.elevation]),this.pixelMatrix3D=e.L(new Float64Array(16),this.labelPlaneMatrix,s);const f=this.width%2/2,g=this.height%2/2,v=Math.cos(this.angle),x=Math.sin(this.angle),y=i-Math.round(i)+v*f+x*g,b=a-Math.round(a)+v*g+x*f,w=new Float64Array(s);if(e.J(w,w,[y>.5?y-1:y,b>.5?b-1:b,0]),this.alignedModelViewProjectionMatrix=w,s=e.as(new Float64Array(16),this.pixelMatrix),!s)throw new Error("failed to invert matrix");this.pixelMatrixInverse=s,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={};}maxPitchScaleFactor(){if(!this.pixelMatrixInverse)return 1;const t=this.pointCoordinate(new e.P(0,0)),i=[t.x*this.worldSize,t.y*this.worldSize,0,1];return e.af(i,i,this.pixelMatrix)[3]/this.cameraToCenterDistance}getCameraPoint(){const t=Math.tan(this._pitch)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new e.P(0,t))}getCameraQueryGeometry(t){const i=this.getCameraPoint();if(1===t.length)return [t[0],i];{let a=i.x,s=i.y,o=i.x,r=i.y;for(const e of t)a=Math.min(a,e.x),s=Math.min(s,e.y),o=Math.max(o,e.x),r=Math.max(r,e.y);return [new e.P(a,s),new e.P(o,s),new e.P(o,r),new e.P(a,r),new e.P(a,s)]}}lngLatToCameraDepth(t,i){const a=this.locationCoordinate(t),s=[a.x*this.worldSize,a.y*this.worldSize,i,1];return e.af(s,s,this.modelViewProjectionMatrix),s[2]/s[3]}}function Ia(t,e){let i,a=!1,s=null,o=null;const r=()=>{s=null,a&&(t.apply(o,i),s=setTimeout(r,e),a=!1);};return (...t)=>(a=!0,o=this,i=t,s||r(),s)}class Ea{constructor(t){this._getCurrentHash=()=>{const t=window.location.hash.replace("#","");if(this._hashName){let e;return t.split("&").map((t=>t.split("="))).forEach((t=>{t[0]===this._hashName&&(e=t);})),(e&&e[1]||"").split("/")}return t.split("/")},this._onHashChange=()=>{const t=this._getCurrentHash();if(t.length>=3&&!t.some((t=>isNaN(t)))){const e=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(t[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+t[2],+t[1]],zoom:+t[0],bearing:e,pitch:+(t[4]||0)}),!0}return !1},this._updateHashUnthrottled=()=>{const t=window.location.href.replace(/(#.*)?$/,this.getHashString());window.history.replaceState(window.history.state,null,t);},this._removeHash=()=>{const t=this._getCurrentHash();if(0===t.length)return;const e=t.join("/");let i=e;i.split("&").length>0&&(i=i.split("&")[0]),this._hashName&&(i=`${this._hashName}=${e}`);let a=window.location.hash.replace(i,"");a.startsWith("#&")?a=a.slice(0,1)+a.slice(2):"#"===a&&(a="");let s=window.location.href.replace(/(#.+)?$/,a);s=s.replace("&&","&"),window.history.replaceState(window.history.state,null,s);},this._updateHash=Ia(this._updateHashUnthrottled,300),this._hashName=t&&encodeURIComponent(t);}addTo(t){return this._map=t,addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this}remove(){return removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),clearTimeout(this._updateHash()),this._removeHash(),delete this._map,this}getHashString(t){const e=this._map.getCenter(),i=Math.round(100*this._map.getZoom())/100,a=Math.ceil((i*Math.LN2+Math.log(512/360/.5))/Math.LN10),s=Math.pow(10,a),o=Math.round(e.lng*s)/s,r=Math.round(e.lat*s)/s,n=this._map.getBearing(),l=this._map.getPitch();let h="";if(h+=t?`/${o}/${r}/${i}`:`${i}/${r}/${o}`,(n||l)&&(h+="/"+Math.round(10*n)/10),l&&(h+=`/${Math.round(l)}`),this._hashName){const t=this._hashName;let e=!1;const i=window.location.hash.slice(1).split("&").map((i=>{const a=i.split("=")[0];return a===t?(e=!0,`${a}=${h}`):i})).filter((t=>t));return e||i.push(`${t}=${h}`),`#${i.join("&")}`}return `#${h}`}}const Pa={linearity:.3,easing:e.b8(0,0,.3,1)},Ca=e.e({deceleration:2500,maxSpeed:1400},Pa),Sa=e.e({deceleration:20,maxSpeed:1400},Pa),za=e.e({deceleration:1e3,maxSpeed:360},Pa),Da=e.e({deceleration:1e3,maxSpeed:90},Pa);class Ma{constructor(t){this._map=t,this.clear();}clear(){this._inertiaBuffer=[];}record(t){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:o.now(),settings:t});}_drainInertiaBuffer(){const t=this._inertiaBuffer,e=o.now();for(;t.length>0&&e-t[0].time>160;)t.shift();}_onMoveEnd(t){if(this._drainInertiaBuffer(),this._inertiaBuffer.length<2)return;const i={zoom:0,bearing:0,pitch:0,pan:new e.P(0,0),pinchAround:void 0,around:void 0};for(const{settings:t}of this._inertiaBuffer)i.zoom+=t.zoomDelta||0,i.bearing+=t.bearingDelta||0,i.pitch+=t.pitchDelta||0,t.panDelta&&i.pan._add(t.panDelta),t.around&&(i.around=t.around),t.pinchAround&&(i.pinchAround=t.pinchAround);const a=this._inertiaBuffer[this._inertiaBuffer.length-1].time-this._inertiaBuffer[0].time,s={};if(i.pan.mag()){const o=Ra(i.pan.mag(),a,e.e({},Ca,t||{}));s.offset=i.pan.mult(o.amount/i.pan.mag()),s.center=this._map.transform.center,Aa(s,o);}if(i.zoom){const t=Ra(i.zoom,a,Sa);s.zoom=this._map.transform.zoom+t.amount,Aa(s,t);}if(i.bearing){const t=Ra(i.bearing,a,za);s.bearing=this._map.transform.bearing+e.ac(t.amount,-179,179),Aa(s,t);}if(i.pitch){const t=Ra(i.pitch,a,Da);s.pitch=this._map.transform.pitch+t.amount,Aa(s,t);}if(s.zoom||s.bearing){const t=void 0===i.pinchAround?i.around:i.pinchAround;s.around=t?this._map.unproject(t):this._map.getCenter();}return this.clear(),e.e(s,{noMoveStart:!0})}}function Aa(t,e){(!t.duration||t.durationi.unproject(t))),l=o.reduce(((t,e,i,a)=>t.add(e.div(a.length))),new e.P(0,0));super(t,{points:o,point:l,lngLats:n,lngLat:i.unproject(l),originalEvent:a}),this._defaultPrevented=!1;}}class Fa extends e.k{preventDefault(){this._defaultPrevented=!0;}get defaultPrevented(){return this._defaultPrevented}constructor(t,e,i){super(t,{originalEvent:i}),this._defaultPrevented=!1;}}class Ba{constructor(t,e){this._map=t,this._clickTolerance=e.clickTolerance;}reset(){delete this._mousedownPos;}wheel(t){return this._firePreventable(new Fa(t.type,this._map,t))}mousedown(t,e){return this._mousedownPos=e,this._firePreventable(new ka(t.type,this._map,t))}mouseup(t){this._map.fire(new ka(t.type,this._map,t));}click(t,e){this._mousedownPos&&this._mousedownPos.dist(e)>=this._clickTolerance||this._map.fire(new ka(t.type,this._map,t));}dblclick(t){return this._firePreventable(new ka(t.type,this._map,t))}mouseover(t){this._map.fire(new ka(t.type,this._map,t));}mouseout(t){this._map.fire(new ka(t.type,this._map,t));}touchstart(t){return this._firePreventable(new La(t.type,this._map,t))}touchmove(t){this._map.fire(new La(t.type,this._map,t));}touchend(t){this._map.fire(new La(t.type,this._map,t));}touchcancel(t){this._map.fire(new La(t.type,this._map,t));}_firePreventable(t){if(this._map.fire(t),t.defaultPrevented)return {}}isEnabled(){return !0}isActive(){return !1}enable(){}disable(){}}class Oa{constructor(t){this._map=t;}reset(){this._delayContextMenu=!1,this._ignoreContextMenu=!0,delete this._contextMenuEvent;}mousemove(t){this._map.fire(new ka(t.type,this._map,t));}mousedown(){this._delayContextMenu=!0,this._ignoreContextMenu=!1;}mouseup(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new ka("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent);}contextmenu(t){this._delayContextMenu?this._contextMenuEvent=t:this._ignoreContextMenu||this._map.fire(new ka(t.type,this._map,t)),this._map.listens("contextmenu")&&t.preventDefault();}isEnabled(){return !0}isActive(){return !1}enable(){}disable(){}}class Na{constructor(t){this._map=t;}get transform(){return this._map._requestedCameraState||this._map.transform}get center(){return {lng:this.transform.center.lng,lat:this.transform.center.lat}}get zoom(){return this.transform.zoom}get pitch(){return this.transform.pitch}get bearing(){return this.transform.bearing}unproject(t){return this.transform.pointLocation(e.P.convert(t),this._map.terrain)}}class Ua{constructor(t,e){this._map=t,this._tr=new Na(t),this._el=t.getCanvasContainer(),this._container=t.getContainer(),this._clickTolerance=e.clickTolerance||1;}isEnabled(){return !!this._enabled}isActive(){return !!this._active}enable(){this.isEnabled()||(this._enabled=!0);}disable(){this.isEnabled()&&(this._enabled=!1);}mousedown(t,e){this.isEnabled()&&t.shiftKey&&0===t.button&&(r.disableDrag(),this._startPos=this._lastPos=e,this._active=!0);}mousemoveWindow(t,e){if(!this._active)return;const i=e;if(this._lastPos.equals(i)||!this._box&&i.dist(this._startPos)t.fitScreenCoordinates(a,s,this._tr.bearing,{linear:!0})};this._fireEvent("boxzoomcancel",t);}keydown(t){this._active&&27===t.keyCode&&(this.reset(),this._fireEvent("boxzoomcancel",t));}reset(){this._active=!1,this._container.classList.remove("maplibregl-crosshair"),this._box&&(r.remove(this._box),this._box=null),r.enableDrag(),delete this._startPos,delete this._lastPos;}_fireEvent(t,i){return this._map.fire(new e.k(t,{originalEvent:i}))}}function ja(t,e){if(t.length!==e.length)throw new Error(`The number of touches and points are not equal - touches ${t.length}, points ${e.length}`);const i={};for(let a=0;athis.numTouches)&&(this.aborted=!0),this.aborted||(void 0===this.startTime&&(this.startTime=t.timeStamp),a.length===this.numTouches&&(this.centroid=function(t){const i=new e.P(0,0);for(const e of t)i._add(e);return i.div(t.length)}(i),this.touches=ja(a,i)));}touchmove(t,e,i){if(this.aborted||!this.centroid)return;const a=ja(i,e);for(const t in this.touches){const e=a[t];(!e||e.dist(this.touches[t])>30)&&(this.aborted=!0);}}touchend(t,e,i){if((!this.centroid||t.timeStamp-this.startTime>500)&&(this.aborted=!0),0===i.length){const t=!this.aborted&&this.centroid;if(this.reset(),t)return t}}}class qa{constructor(t){this.singleTap=new Za(t),this.numTaps=t.numTaps,this.reset();}reset(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset();}touchstart(t,e,i){this.singleTap.touchstart(t,e,i);}touchmove(t,e,i){this.singleTap.touchmove(t,e,i);}touchend(t,e,i){const a=this.singleTap.touchend(t,e,i);if(a){const e=t.timeStamp-this.lastTime<500,i=!this.lastTap||this.lastTap.dist(a)<30;if(e&&i||this.reset(),this.count++,this.lastTime=t.timeStamp,this.lastTap=a,this.count===this.numTaps)return this.reset(),a}}}class Va{constructor(t){this._tr=new Na(t),this._zoomIn=new qa({numTouches:1,numTaps:2}),this._zoomOut=new qa({numTouches:2,numTaps:1}),this.reset();}reset(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset();}touchstart(t,e,i){this._zoomIn.touchstart(t,e,i),this._zoomOut.touchstart(t,e,i);}touchmove(t,e,i){this._zoomIn.touchmove(t,e,i),this._zoomOut.touchmove(t,e,i);}touchend(t,e,i){const a=this._zoomIn.touchend(t,e,i),s=this._zoomOut.touchend(t,e,i),o=this._tr;return a?(this._active=!0,t.preventDefault(),setTimeout((()=>this.reset()),0),{cameraAnimation:e=>e.easeTo({duration:300,zoom:o.zoom+1,around:o.unproject(a)},{originalEvent:t})}):s?(this._active=!0,t.preventDefault(),setTimeout((()=>this.reset()),0),{cameraAnimation:e=>e.easeTo({duration:300,zoom:o.zoom-1,around:o.unproject(s)},{originalEvent:t})}):void 0}touchcancel(){this.reset();}enable(){this._enabled=!0;}disable(){this._enabled=!1,this.reset();}isEnabled(){return this._enabled}isActive(){return this._active}}class Ga{constructor(t){this._enabled=!!t.enable,this._moveStateManager=t.moveStateManager,this._clickTolerance=t.clickTolerance||1,this._moveFunction=t.move,this._activateOnStart=!!t.activateOnStart,t.assignEvents(this),this.reset();}reset(t){this._active=!1,this._moved=!1,delete this._lastPoint,this._moveStateManager.endMove(t);}_move(...t){const e=this._moveFunction(...t);if(e.bearingDelta||e.pitchDelta||e.around||e.panDelta)return this._active=!0,e}dragStart(t,e){this.isEnabled()&&!this._lastPoint&&this._moveStateManager.isValidStartEvent(t)&&(this._moveStateManager.startMove(t),this._lastPoint=e.length?e[0]:e,this._activateOnStart&&this._lastPoint&&(this._active=!0));}dragMove(t,e){if(!this.isEnabled())return;const i=this._lastPoint;if(!i)return;if(t.preventDefault(),!this._moveStateManager.isValidMoveEvent(t))return void this.reset(t);const a=e.length?e[0]:e;return !this._moved&&a.dist(i){t.mousedown=t.dragStart,t.mousemoveWindow=t.dragMove,t.mouseup=t.dragEnd,t.contextmenu=t=>{t.preventDefault();};},Ka=({enable:t,clickTolerance:e,bearingDegreesPerPixelMoved:i=.8})=>{const a=new Wa({checkCorrectEvent:t=>0===r.mouseButton(t)&&t.ctrlKey||2===r.mouseButton(t)});return new Ga({clickTolerance:e,move:(t,e)=>({bearingDelta:(e.x-t.x)*i}),moveStateManager:a,enable:t,assignEvents:Xa})},Ja=({enable:t,clickTolerance:e,pitchDegreesPerPixelMoved:i=-.5})=>{const a=new Wa({checkCorrectEvent:t=>0===r.mouseButton(t)&&t.ctrlKey||2===r.mouseButton(t)});return new Ga({clickTolerance:e,move:(t,e)=>({pitchDelta:(e.y-t.y)*i}),moveStateManager:a,enable:t,assignEvents:Xa})};class Ya{constructor(t,e){this._clickTolerance=t.clickTolerance||1,this._map=e,this.reset();}reset(){this._active=!1,this._touches={},this._sum=new e.P(0,0);}_shouldBePrevented(t){return t<(this._map.cooperativeGestures.isEnabled()?2:1)}touchstart(t,e,i){return this._calculateTransform(t,e,i)}touchmove(t,e,i){if(this._active){if(!this._shouldBePrevented(i.length))return t.preventDefault(),this._calculateTransform(t,e,i);this._map.cooperativeGestures.notifyGestureBlocked("touch_pan",t);}}touchend(t,e,i){this._calculateTransform(t,e,i),this._active&&this._shouldBePrevented(i.length)&&this.reset();}touchcancel(){this.reset();}_calculateTransform(t,i,a){a.length>0&&(this._active=!0);const s=ja(a,i),o=new e.P(0,0),r=new e.P(0,0);let n=0;for(const t in s){const e=s[t],i=this._touches[t];i&&(o._add(e),r._add(e.sub(i)),n++,s[t]=e);}if(this._touches=s,this._shouldBePrevented(n)||!r.mag())return;const l=r.div(n);return this._sum._add(l),this._sum.mag()Math.abs(t.x)}class rs extends Qa{constructor(t){super(),this._currentTouchCount=0,this._map=t;}reset(){super.reset(),this._valid=void 0,delete this._firstMove,delete this._lastPoints;}touchstart(t,e,i){super.touchstart(t,e,i),this._currentTouchCount=i.length;}_start(t){this._lastPoints=t,os(t[0].sub(t[1]))&&(this._valid=!1);}_move(t,e,i){if(this._map.cooperativeGestures.isEnabled()&&this._currentTouchCount<3)return;const a=t[0].sub(this._lastPoints[0]),s=t[1].sub(this._lastPoints[1]);return this._valid=this.gestureBeginsVertically(a,s,i.timeStamp),this._valid?(this._lastPoints=t,this._active=!0,{pitchDelta:(a.y+s.y)/2*-.5}):void 0}gestureBeginsVertically(t,e,i){if(void 0!==this._valid)return this._valid;const a=t.mag()>=2,s=e.mag()>=2;if(!a&&!s)return;if(!a||!s)return void 0===this._firstMove&&(this._firstMove=i),i-this._firstMove<100&&void 0;const o=t.y>0==e.y>0;return os(t)&&os(e)&&o}}const ns={panStep:100,bearingStep:15,pitchStep:10};class ls{constructor(t){this._tr=new Na(t);const e=ns;this._panStep=e.panStep,this._bearingStep=e.bearingStep,this._pitchStep=e.pitchStep,this._rotationDisabled=!1;}reset(){this._active=!1;}keydown(t){if(t.altKey||t.ctrlKey||t.metaKey)return;let e=0,i=0,a=0,s=0,o=0;switch(t.keyCode){case 61:case 107:case 171:case 187:e=1;break;case 189:case 109:case 173:e=-1;break;case 37:t.shiftKey?i=-1:(t.preventDefault(),s=-1);break;case 39:t.shiftKey?i=1:(t.preventDefault(),s=1);break;case 38:t.shiftKey?a=1:(t.preventDefault(),o=-1);break;case 40:t.shiftKey?a=-1:(t.preventDefault(),o=1);break;default:return}return this._rotationDisabled&&(i=0,a=0),{cameraAnimation:r=>{const n=this._tr;r.easeTo({duration:300,easeId:"keyboardHandler",easing:hs,zoom:e?Math.round(n.zoom)+e*(t.shiftKey?2:1):n.zoom,bearing:n.bearing+i*this._bearingStep,pitch:n.pitch+a*this._pitchStep,offset:[-s*this._panStep,-o*this._panStep],center:n.center},{originalEvent:t});}}}enable(){this._enabled=!0;}disable(){this._enabled=!1,this.reset();}isEnabled(){return this._enabled}isActive(){return this._active}disableRotation(){this._rotationDisabled=!0;}enableRotation(){this._rotationDisabled=!1;}}function hs(t){return t*(2-t)}const cs=4.000244140625;class us{constructor(t,e){this._onTimeout=t=>{this._type="wheel",this._delta-=this._lastValue,this._active||this._start(t);},this._map=t,this._tr=new Na(t),this._triggerRenderFrame=e,this._delta=0,this._defaultZoomRate=.01,this._wheelZoomRate=.0022222222222222222;}setZoomRate(t){this._defaultZoomRate=t;}setWheelZoomRate(t){this._wheelZoomRate=t;}isEnabled(){return !!this._enabled}isActive(){return !!this._active||void 0!==this._finishTimeout}isZooming(){return !!this._zooming}enable(t){this.isEnabled()||(this._enabled=!0,this._aroundCenter=!!t&&"center"===t.around);}disable(){this.isEnabled()&&(this._enabled=!1);}_shouldBePrevented(t){return !!this._map.cooperativeGestures.isEnabled()&&!(t.ctrlKey||this._map.cooperativeGestures.isBypassed(t))}wheel(t){if(!this.isEnabled())return;if(this._shouldBePrevented(t))return void this._map.cooperativeGestures.notifyGestureBlocked("wheel_zoom",t);let e=t.deltaMode===WheelEvent.DOM_DELTA_LINE?40*t.deltaY:t.deltaY;const i=o.now(),a=i-(this._lastWheelEventTime||0);this._lastWheelEventTime=i,0!==e&&e%cs==0?this._type="wheel":0!==e&&Math.abs(e)<4?this._type="trackpad":a>400?(this._type=null,this._lastValue=e,this._timeout=setTimeout(this._onTimeout,40,t)):this._type||(this._type=Math.abs(a*e)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,e+=this._lastValue)),t.shiftKey&&e&&(e/=4),this._type&&(this._lastWheelEvent=t,this._delta-=e,this._active||this._start(t)),t.preventDefault();}_start(t){if(!this._delta)return;this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);const i=r.mousePos(this._map.getCanvas(),t),a=this._tr;this._around=i.y>a.transform.height/2-a.transform.getHorizon()?e.N.convert(this._aroundCenter?a.center:a.unproject(i)):e.N.convert(a.center),this._aroundPoint=a.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._triggerRenderFrame());}renderFrame(){if(!this._frameId)return;if(this._frameId=null,!this.isActive())return;const t=this._tr.transform;if(0!==this._delta){const e="wheel"===this._type&&Math.abs(this._delta)>cs?this._wheelZoomRate:this._defaultZoomRate;let i=2/(1+Math.exp(-Math.abs(this._delta*e)));this._delta<0&&0!==i&&(i=1/i);const a="number"==typeof this._targetZoom?t.zoomScale(this._targetZoom):t.scale;this._targetZoom=Math.min(t.maxZoom,Math.max(t.minZoom,t.scaleZoom(a*i))),"wheel"===this._type&&(this._startZoom=t.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0;}const i="number"==typeof this._targetZoom?this._targetZoom:t.zoom,a=this._startZoom,s=this._easing;let r,n=!1;const l=o.now()-this._lastWheelEventTime;if("wheel"===this._type&&a&&s&&l){const t=Math.min(l/200,1),o=s(t);r=e.y.number(a,i,o),t<1?this._frameId||(this._frameId=!0):n=!0;}else r=i,n=!0;return this._active=!0,n&&(this._active=!1,this._finishTimeout=setTimeout((()=>{this._zooming=!1,this._triggerRenderFrame(),delete this._targetZoom,delete this._finishTimeout;}),200)),{noInertia:!0,needsRenderFrame:!n,zoomDelta:r-t.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}_smoothOutEasing(t){let i=e.b9;if(this._prevEase){const t=this._prevEase,a=(o.now()-t.start)/t.duration,s=t.easing(a+.01)-t.easing(a),r=.27/Math.sqrt(s*s+1e-4)*.01,n=Math.sqrt(.0729-r*r);i=e.b8(r,n,.25,1);}return this._prevEase={start:o.now(),duration:t,easing:i},i}reset(){this._active=!1,this._zooming=!1,delete this._targetZoom,this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);}}class ds{constructor(t,e){this._clickZoom=t,this._tapZoom=e;}enable(){this._clickZoom.enable(),this._tapZoom.enable();}disable(){this._clickZoom.disable(),this._tapZoom.disable();}isEnabled(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()}isActive(){return this._clickZoom.isActive()||this._tapZoom.isActive()}}class _s{constructor(t){this._tr=new Na(t),this.reset();}reset(){this._active=!1;}dblclick(t,e){return t.preventDefault(),{cameraAnimation:i=>{i.easeTo({duration:300,zoom:this._tr.zoom+(t.shiftKey?-1:1),around:this._tr.unproject(e)},{originalEvent:t});}}}enable(){this._enabled=!0;}disable(){this._enabled=!1,this.reset();}isEnabled(){return this._enabled}isActive(){return this._active}}class ps{constructor(){this._tap=new qa({numTouches:1,numTaps:1}),this.reset();}reset(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,delete this._tapPoint,this._tap.reset();}touchstart(t,e,i){if(!this._swipePoint)if(this._tapTime){const a=e[0],s=t.timeStamp-this._tapTime<500,o=this._tapPoint.dist(a)<30;s&&o?i.length>0&&(this._swipePoint=a,this._swipeTouch=i[0].identifier):this.reset();}else this._tap.touchstart(t,e,i);}touchmove(t,e,i){if(this._tapTime){if(this._swipePoint){if(i[0].identifier!==this._swipeTouch)return;const a=e[0],s=a.y-this._swipePoint.y;return this._swipePoint=a,t.preventDefault(),this._active=!0,{zoomDelta:s/128}}}else this._tap.touchmove(t,e,i);}touchend(t,e,i){if(this._tapTime)this._swipePoint&&0===i.length&&this.reset();else {const a=this._tap.touchend(t,e,i);a&&(this._tapTime=t.timeStamp,this._tapPoint=a);}}touchcancel(){this.reset();}enable(){this._enabled=!0;}disable(){this._enabled=!1,this.reset();}isEnabled(){return this._enabled}isActive(){return this._active}}class ms{constructor(t,e,i){this._el=t,this._mousePan=e,this._touchPan=i;}enable(t){this._inertiaOptions=t||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("maplibregl-touch-drag-pan");}disable(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("maplibregl-touch-drag-pan");}isEnabled(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()}isActive(){return this._mousePan.isActive()||this._touchPan.isActive()}}class fs{constructor(t,e,i){this._pitchWithRotate=t.pitchWithRotate,this._mouseRotate=e,this._mousePitch=i;}enable(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable();}disable(){this._mouseRotate.disable(),this._mousePitch.disable();}isEnabled(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())}isActive(){return this._mouseRotate.isActive()||this._mousePitch.isActive()}}class gs{constructor(t,e,i,a){this._el=t,this._touchZoom=e,this._touchRotate=i,this._tapDragZoom=a,this._rotationDisabled=!1,this._enabled=!0;}enable(t){this._touchZoom.enable(t),this._rotationDisabled||this._touchRotate.enable(t),this._tapDragZoom.enable(),this._el.classList.add("maplibregl-touch-zoom-rotate");}disable(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("maplibregl-touch-zoom-rotate");}isEnabled(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()}isActive(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()}disableRotation(){this._rotationDisabled=!0,this._touchRotate.disable();}enableRotation(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable();}}class vs{constructor(t,e){this._bypassKey=-1!==navigator.userAgent.indexOf("Mac")?"metaKey":"ctrlKey",this._map=t,this._options=e,this._enabled=!1;}isActive(){return !1}reset(){}_setupUI(){if(this._container)return;const t=this._map.getCanvasContainer();t.classList.add("maplibregl-cooperative-gestures"),this._container=r.create("div","maplibregl-cooperative-gesture-screen",t);let e=this._map._getUIString("CooperativeGesturesHandler.WindowsHelpText");"metaKey"===this._bypassKey&&(e=this._map._getUIString("CooperativeGesturesHandler.MacHelpText"));const i=this._map._getUIString("CooperativeGesturesHandler.MobileHelpText"),a=document.createElement("div");a.className="maplibregl-desktop-message",a.textContent=e,this._container.appendChild(a);const s=document.createElement("div");s.className="maplibregl-mobile-message",s.textContent=i,this._container.appendChild(s),this._container.setAttribute("aria-hidden","true");}_destroyUI(){this._container&&(r.remove(this._container),this._map.getCanvasContainer().classList.remove("maplibregl-cooperative-gestures")),delete this._container;}enable(){this._setupUI(),this._enabled=!0;}disable(){this._enabled=!1,this._destroyUI();}isEnabled(){return this._enabled}isBypassed(t){return t[this._bypassKey]}notifyGestureBlocked(t,i){this._enabled&&(this._map.fire(new e.k("cooperativegestureprevented",{gestureType:t,originalEvent:i})),this._container.classList.add("maplibregl-show"),setTimeout((()=>{this._container.classList.remove("maplibregl-show");}),100));}}const xs=t=>t.zoom||t.drag||t.pitch||t.rotate;class ys extends e.k{}function bs(t){return t.panDelta&&t.panDelta.mag()||t.zoomDelta||t.bearingDelta||t.pitchDelta}class ws{constructor(t,e){this.handleWindowEvent=t=>{this.handleEvent(t,`${t.type}Window`);},this.handleEvent=(t,e)=>{if("blur"===t.type)return void this.stop(!0);this._updatingCamera=!0;const i="renderFrame"===t.type?void 0:t,a={needsRenderFrame:!1},s={},o={},n=t.touches,l=n?this._getMapTouches(n):void 0,h=l?r.touchPos(this._map.getCanvas(),l):r.mousePos(this._map.getCanvas(),t);for(const{handlerName:r,handler:n,allowed:c}of this._handlers){if(!n.isEnabled())continue;let u;this._blockedByActive(o,c,r)?n.reset():n[e||t.type]&&(u=n[e||t.type](t,h,l),this.mergeHandlerResult(a,s,u,r,i),u&&u.needsRenderFrame&&this._triggerRenderFrame()),(u||n.isActive())&&(o[r]=n);}const c={};for(const t in this._previousActiveHandlers)o[t]||(c[t]=i);this._previousActiveHandlers=o,(Object.keys(c).length||bs(a))&&(this._changes.push([a,s,c]),this._triggerRenderFrame()),(Object.keys(o).length||bs(a))&&this._map._stop(!0),this._updatingCamera=!1;const{cameraAnimation:u}=a;u&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],u(this._map));},this._map=t,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Ma(t),this._bearingSnap=e.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(e);const i=this._el;this._listeners=[[i,"touchstart",{passive:!0}],[i,"touchmove",{passive:!1}],[i,"touchend",void 0],[i,"touchcancel",void 0],[i,"mousedown",void 0],[i,"mousemove",void 0],[i,"mouseup",void 0],[document,"mousemove",{capture:!0}],[document,"mouseup",void 0],[i,"mouseover",void 0],[i,"mouseout",void 0],[i,"dblclick",void 0],[i,"click",void 0],[i,"keydown",{capture:!1}],[i,"keyup",void 0],[i,"wheel",{passive:!1}],[i,"contextmenu",void 0],[window,"blur",void 0]];for(const[t,e,i]of this._listeners)r.addEventListener(t,e,t===document?this.handleWindowEvent:this.handleEvent,i);}destroy(){for(const[t,e,i]of this._listeners)r.removeEventListener(t,e,t===document?this.handleWindowEvent:this.handleEvent,i);}_addDefaultHandlers(t){const e=this._map,i=e.getCanvasContainer();this._add("mapEvent",new Ba(e,t));const a=e.boxZoom=new Ua(e,t);this._add("boxZoom",a),t.interactive&&t.boxZoom&&a.enable();const s=e.cooperativeGestures=new vs(e,t.cooperativeGestures);this._add("cooperativeGestures",s),t.cooperativeGestures&&s.enable();const o=new Va(e),n=new _s(e);e.doubleClickZoom=new ds(n,o),this._add("tapZoom",o),this._add("clickZoom",n),t.interactive&&t.doubleClickZoom&&e.doubleClickZoom.enable();const l=new ps;this._add("tapDragZoom",l);const h=e.touchPitch=new rs(e);this._add("touchPitch",h),t.interactive&&t.touchPitch&&e.touchPitch.enable(t.touchPitch);const c=Ka(t),u=Ja(t);e.dragRotate=new fs(t,c,u),this._add("mouseRotate",c,["mousePitch"]),this._add("mousePitch",u,["mouseRotate"]),t.interactive&&t.dragRotate&&e.dragRotate.enable();const d=(({enable:t,clickTolerance:e})=>{const i=new Wa({checkCorrectEvent:t=>0===r.mouseButton(t)&&!t.ctrlKey});return new Ga({clickTolerance:e,move:(t,e)=>({around:e,panDelta:e.sub(t)}),activateOnStart:!0,moveStateManager:i,enable:t,assignEvents:Xa})})(t),_=new Ya(t,e);e.dragPan=new ms(i,d,_),this._add("mousePan",d),this._add("touchPan",_,["touchZoom","touchRotate"]),t.interactive&&t.dragPan&&e.dragPan.enable(t.dragPan);const p=new ss,m=new is;e.touchZoomRotate=new gs(i,m,p,l),this._add("touchRotate",p,["touchPan","touchZoom"]),this._add("touchZoom",m,["touchPan","touchRotate"]),t.interactive&&t.touchZoomRotate&&e.touchZoomRotate.enable(t.touchZoomRotate);const f=e.scrollZoom=new us(e,(()=>this._triggerRenderFrame()));this._add("scrollZoom",f,["mousePan"]),t.interactive&&t.scrollZoom&&e.scrollZoom.enable(t.scrollZoom);const g=e.keyboard=new ls(e);this._add("keyboard",g),t.interactive&&t.keyboard&&e.keyboard.enable(),this._add("blockableMapEvent",new Oa(e));}_add(t,e,i){this._handlers.push({handlerName:t,handler:e,allowed:i}),this._handlersById[t]=e;}stop(t){if(!this._updatingCamera){for(const{handler:t}of this._handlers)t.reset();this._inertia.clear(),this._fireEvents({},{},t),this._changes=[];}}isActive(){for(const{handler:t}of this._handlers)if(t.isActive())return !0;return !1}isZooming(){return !!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()}isRotating(){return !!this._eventsInProgress.rotate}isMoving(){return Boolean(xs(this._eventsInProgress))||this.isZooming()}_blockedByActive(t,e,i){for(const a in t)if(a!==i&&(!e||e.indexOf(a)<0))return !0;return !1}_getMapTouches(t){const e=[];for(const i of t)this._el.contains(i.target)&&e.push(i);return e}mergeHandlerResult(t,i,a,s,o){if(!a)return;e.e(t,a);const r={handlerName:s,originalEvent:a.originalEvent||o};void 0!==a.zoomDelta&&(i.zoom=r),void 0!==a.panDelta&&(i.drag=r),void 0!==a.pitchDelta&&(i.pitch=r),void 0!==a.bearingDelta&&(i.rotate=r);}_applyChanges(){const t={},i={},a={};for(const[s,o,r]of this._changes)s.panDelta&&(t.panDelta=(t.panDelta||new e.P(0,0))._add(s.panDelta)),s.zoomDelta&&(t.zoomDelta=(t.zoomDelta||0)+s.zoomDelta),s.bearingDelta&&(t.bearingDelta=(t.bearingDelta||0)+s.bearingDelta),s.pitchDelta&&(t.pitchDelta=(t.pitchDelta||0)+s.pitchDelta),void 0!==s.around&&(t.around=s.around),void 0!==s.pinchAround&&(t.pinchAround=s.pinchAround),s.noInertia&&(t.noInertia=s.noInertia),e.e(i,o),e.e(a,r);this._updateMapTransform(t,i,a),this._changes=[];}_updateMapTransform(t,e,i){const a=this._map,s=a._getTransformForUpdate(),o=a.terrain;if(!(bs(t)||o&&this._terrainMovement))return this._fireEvents(e,i,!0);let{panDelta:r,zoomDelta:n,bearingDelta:l,pitchDelta:h,around:c,pinchAround:u}=t;void 0!==u&&(c=u),a._stop(!0),c=c||a.transform.centerPoint;const d=s.pointLocation(r?c.sub(r):c);l&&(s.bearing+=l),h&&(s.pitch+=h),n&&(s.zoom+=n),o?this._terrainMovement||!e.drag&&!e.zoom?e.drag&&this._terrainMovement?s.center=s.pointLocation(s.centerPoint.sub(r)):s.setLocationAtPoint(d,c):(this._terrainMovement=!0,this._map._elevationFreeze=!0,s.setLocationAtPoint(d,c)):s.setLocationAtPoint(d,c),a._applyUpdatedTransform(s),this._map._update(),t.noInertia||this._inertia.record(t),this._fireEvents(e,i,!0);}_fireEvents(t,i,a){const s=xs(this._eventsInProgress),r=xs(t),n={};for(const e in t){const{originalEvent:i}=t[e];this._eventsInProgress[e]||(n[`${e}start`]=i),this._eventsInProgress[e]=t[e];}!s&&r&&this._fireEvent("movestart",r.originalEvent);for(const t in n)this._fireEvent(t,n[t]);r&&this._fireEvent("move",r.originalEvent);for(const e in t){const{originalEvent:i}=t[e];this._fireEvent(e,i);}const l={};let h;for(const t in this._eventsInProgress){const{handlerName:e,originalEvent:a}=this._eventsInProgress[t];this._handlersById[e].isActive()||(delete this._eventsInProgress[t],h=i[e]||a,l[`${t}end`]=h);}for(const t in l)this._fireEvent(t,l[t]);const c=xs(this._eventsInProgress),u=(s||r)&&!c;if(u&&this._terrainMovement){this._map._elevationFreeze=!1,this._terrainMovement=!1;const t=this._map._getTransformForUpdate();t.recalculateZoom(this._map.terrain),this._map._applyUpdatedTransform(t);}if(a&&u){this._updatingCamera=!0;const t=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),i=t=>0!==t&&-this._bearingSnap{delete this._frameId,this.handleEvent(new ys("renderFrame",{timeStamp:t})),this._applyChanges();}))}_triggerRenderFrame(){void 0===this._frameId&&(this._frameId=this._requestFrame());}}class Ts extends e.E{constructor(t,e){super(),this._renderFrameCallback=()=>{const t=Math.min((o.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(t)),t<1&&this._easeFrameId?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop();},this._moving=!1,this._zooming=!1,this.transform=t,this._bearingSnap=e.bearingSnap,this.on("moveend",(()=>{delete this._requestedCameraState;}));}getCenter(){return new e.N(this.transform.center.lng,this.transform.center.lat)}setCenter(t,e){return this.jumpTo({center:t},e)}panBy(t,i,a){return t=e.P.convert(t).mult(-1),this.panTo(this.transform.center,e.e({offset:t},i),a)}panTo(t,i,a){return this.easeTo(e.e({center:t},i),a)}getZoom(){return this.transform.zoom}setZoom(t,e){return this.jumpTo({zoom:t},e),this}zoomTo(t,i,a){return this.easeTo(e.e({zoom:t},i),a)}zoomIn(t,e){return this.zoomTo(this.getZoom()+1,t,e),this}zoomOut(t,e){return this.zoomTo(this.getZoom()-1,t,e),this}getBearing(){return this.transform.bearing}setBearing(t,e){return this.jumpTo({bearing:t},e),this}getPadding(){return this.transform.padding}setPadding(t,e){return this.jumpTo({padding:t},e),this}rotateTo(t,i,a){return this.easeTo(e.e({bearing:t},i),a)}resetNorth(t,i){return this.rotateTo(0,e.e({duration:1e3},t),i),this}resetNorthPitch(t,i){return this.easeTo(e.e({bearing:0,pitch:0,duration:1e3},t),i),this}snapToNorth(t,e){return Math.abs(this.getBearing()){if(this._zooming&&(s.zoom=e.y.number(r,g,a)),this._rotating&&(s.bearing=e.y.number(n,c,a)),this._pitching&&(s.pitch=e.y.number(l,u,a)),this._padding&&(s.interpolatePadding(h,d,a),p=s.centerPoint.add(_)),this.terrain&&!t.freezeElevation&&this._updateElevation(a),b)s.setLocationAtPoint(b,w);else {const t=s.zoomScale(s.zoom-r),e=g>r?Math.min(2,y):Math.max(.5,y),i=Math.pow(e,1-a),o=s.unproject(v.add(x.mult(a*i)).mult(t));s.setLocationAtPoint(s.renderWorldCopies?o.wrap():o,p);}this._applyUpdatedTransform(s),this._fireMoveEvents(i);}),(e=>{this.terrain&&t.freezeElevation&&this._finalizeElevation(),this._afterEase(i,e);}),t),this}_prepareEase(t,i,a={}){this._moving=!0,i||a.moving||this.fire(new e.k("movestart",t)),this._zooming&&!a.zooming&&this.fire(new e.k("zoomstart",t)),this._rotating&&!a.rotating&&this.fire(new e.k("rotatestart",t)),this._pitching&&!a.pitching&&this.fire(new e.k("pitchstart",t));}_prepareElevation(t){this._elevationCenter=t,this._elevationStart=this.transform.elevation,this._elevationTarget=this.terrain.getElevationForLngLatZoom(t,this.transform.tileZoom),this._elevationFreeze=!0;}_updateElevation(t){this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);const i=this.terrain.getElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);if(t<1&&i!==this._elevationTarget){const e=this._elevationTarget-this._elevationStart;this._elevationStart+=t*(e-(i-(e*t+this._elevationStart))/(1-t)),this._elevationTarget=i;}this.transform.elevation=e.y.number(this._elevationStart,this._elevationTarget,t);}_finalizeElevation(){this._elevationFreeze=!1,this.transform.recalculateZoom(this.terrain);}_getTransformForUpdate(){return this.transformCameraUpdate||this.terrain?(this._requestedCameraState||(this._requestedCameraState=this.transform.clone()),this._requestedCameraState):this.transform}_elevateCameraIfInsideTerrain(t){const e=t.getCameraPosition(),i=this.terrain.getElevationForLngLatZoom(e.lngLat,t.zoom);if(e.altitudethis._elevateCameraIfInsideTerrain(t))),this.transformCameraUpdate&&e.push((t=>this.transformCameraUpdate(t))),!e.length)return;const i=t.clone();for(const t of e){const e=i.clone(),{center:a,zoom:s,pitch:o,bearing:r,elevation:n}=t(e);a&&(e.center=a),void 0!==s&&(e.zoom=s),void 0!==o&&(e.pitch=o),void 0!==r&&(e.bearing=r),void 0!==n&&(e.elevation=n),i.apply(e);}this.transform.apply(i);}_fireMoveEvents(t){this.fire(new e.k("move",t)),this._zooming&&this.fire(new e.k("zoom",t)),this._rotating&&this.fire(new e.k("rotate",t)),this._pitching&&this.fire(new e.k("pitch",t));}_afterEase(t,i){if(this._easeId&&i&&this._easeId===i)return;delete this._easeId;const a=this._zooming,s=this._rotating,o=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,a&&this.fire(new e.k("zoomend",t)),s&&this.fire(new e.k("rotateend",t)),o&&this.fire(new e.k("pitchend",t)),this.fire(new e.k("moveend",t));}flyTo(t,i){var a;if(!t.essential&&o.prefersReducedMotion){const a=e.M(t,["center","zoom","bearing","pitch","around"]);return this.jumpTo(a,i)}this.stop(),t=e.e({offset:[0,0],speed:1.2,curve:1.42,easing:e.b9},t);const s=this._getTransformForUpdate(),r=s.zoom,n=s.bearing,l=s.pitch,h=s.padding,c="bearing"in t?this._normalizeBearing(t.bearing,n):n,u="pitch"in t?+t.pitch:l,d="padding"in t?t.padding:s.padding,_=e.P.convert(t.offset);let p=s.centerPoint.add(_);const m=s.pointLocation(p),{center:f,zoom:g}=s.getConstrained(e.N.convert(t.center||m),null!==(a=t.zoom)&&void 0!==a?a:r);this._normalizeCenter(f,s);const v=s.zoomScale(g-r),x=s.project(m),y=s.project(f).sub(x);let b=t.curve;const w=Math.max(s.width,s.height),T=w/v,I=y.mag();if("minZoom"in t){const i=e.ac(Math.min(t.minZoom,r,g),s.minZoom,s.maxZoom),a=w/s.zoomScale(i-r);b=Math.sqrt(a/I*2);}const E=b*b;function P(t){const e=(T*T-w*w+(t?-1:1)*E*E*I*I)/(2*(t?T:w)*E*I);return Math.log(Math.sqrt(e*e+1)-e)}function C(t){return (Math.exp(t)-Math.exp(-t))/2}function S(t){return (Math.exp(t)+Math.exp(-t))/2}const z=P(!1);let D=function(t){return S(z)/S(z+b*t)},M=function(t){return w*((S(z)*(C(e=z+b*t)/S(e))-C(z))/E)/I;var e;},A=(P(!0)-z)/b;if(Math.abs(I)<1e-6||!isFinite(A)){if(Math.abs(w-T)<1e-6)return this.easeTo(t,i);const e=T0,D=t=>Math.exp(e*b*t);}return t.duration="duration"in t?+t.duration:1e3*A/("screenSpeed"in t?+t.screenSpeed/b:+t.speed),t.maxDuration&&t.duration>t.maxDuration&&(t.duration=0),this._zooming=!0,this._rotating=n!==c,this._pitching=u!==l,this._padding=!s.isPaddingEqual(d),this._prepareEase(i,!1),this.terrain&&this._prepareElevation(f),this._ease((a=>{const o=a*A,m=1/D(o);s.zoom=1===a?g:r+s.scaleZoom(m),this._rotating&&(s.bearing=e.y.number(n,c,a)),this._pitching&&(s.pitch=e.y.number(l,u,a)),this._padding&&(s.interpolatePadding(h,d,a),p=s.centerPoint.add(_)),this.terrain&&!t.freezeElevation&&this._updateElevation(a);const v=1===a?f:s.unproject(x.add(y.mult(M(o))).mult(m));s.setLocationAtPoint(s.renderWorldCopies?v.wrap():v,p),this._applyUpdatedTransform(s),this._fireMoveEvents(i);}),(()=>{this.terrain&&t.freezeElevation&&this._finalizeElevation(),this._afterEase(i);}),t),this}isEasing(){return !!this._easeFrameId}stop(){return this._stop()}_stop(t,e){var i;if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){const t=this._onEaseEnd;delete this._onEaseEnd,t.call(this,e);}return t||null===(i=this.handlers)||void 0===i||i.stop(!1),this}_ease(t,e,i){!1===i.animate||0===i.duration?(t(1),e()):(this._easeStart=o.now(),this._easeOptions=i,this._onEaseFrame=t,this._onEaseEnd=e,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback));}_normalizeBearing(t,i){t=e.b3(t,-180,180);const a=Math.abs(t-i);return Math.abs(t-360-i)180?-360:i<-180?360:0;}queryTerrainElevation(t){return this.terrain?this.terrain.getElevationForLngLatZoom(e.N.convert(t),this.transform.tileZoom)-this.transform.elevation:null}}const Is={compact:!0,customAttribution:'MapLibre'};class Es{constructor(t=Is){this._toggleAttribution=()=>{this._container.classList.contains("maplibregl-compact")&&(this._container.classList.contains("maplibregl-compact-show")?(this._container.setAttribute("open",""),this._container.classList.remove("maplibregl-compact-show")):(this._container.classList.add("maplibregl-compact-show"),this._container.removeAttribute("open")));},this._updateData=t=>{!t||"metadata"!==t.sourceDataType&&"visibility"!==t.sourceDataType&&"style"!==t.dataType&&"terrain"!==t.type||this._updateAttributions();},this._updateCompact=()=>{this._map.getCanvasContainer().offsetWidth<=640||this._compact?!1===this._compact?this._container.setAttribute("open",""):this._container.classList.contains("maplibregl-compact")||this._container.classList.contains("maplibregl-attrib-empty")||(this._container.setAttribute("open",""),this._container.classList.add("maplibregl-compact","maplibregl-compact-show")):(this._container.setAttribute("open",""),this._container.classList.contains("maplibregl-compact")&&this._container.classList.remove("maplibregl-compact","maplibregl-compact-show"));},this._updateCompactMinimize=()=>{this._container.classList.contains("maplibregl-compact")&&this._container.classList.contains("maplibregl-compact-show")&&this._container.classList.remove("maplibregl-compact-show");},this.options=t;}getDefaultPosition(){return "bottom-right"}onAdd(t){return this._map=t,this._compact=this.options.compact,this._container=r.create("details","maplibregl-ctrl maplibregl-ctrl-attrib"),this._compactButton=r.create("summary","maplibregl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=r.create("div","maplibregl-ctrl-attrib-inner",this._container),this._updateAttributions(),this._updateCompact(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("terrain",this._updateData),this._map.on("resize",this._updateCompact),this._map.on("drag",this._updateCompactMinimize),this._container}onRemove(){r.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("terrain",this._updateData),this._map.off("resize",this._updateCompact),this._map.off("drag",this._updateCompactMinimize),this._map=void 0,this._compact=void 0,this._attribHTML=void 0;}_setElementTitle(t,e){const i=this._map._getUIString(`AttributionControl.${e}`);t.title=i,t.setAttribute("aria-label",i);}_updateAttributions(){if(!this._map.style)return;let t=[];if(this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?t=t.concat(this.options.customAttribution.map((t=>"string"!=typeof t?"":t))):"string"==typeof this.options.customAttribution&&t.push(this.options.customAttribution)),this._map.style.stylesheet){const t=this._map.style.stylesheet;this.styleOwner=t.owner,this.styleId=t.id;}const e=this._map.style.sourceCaches;for(const i in e){const a=e[i];if(a.used||a.usedForTerrain){const e=a.getSource();e.attribution&&t.indexOf(e.attribution)<0&&t.push(e.attribution);}}t=t.filter((t=>String(t).trim())),t.sort(((t,e)=>t.length-e.length)),t=t.filter(((e,i)=>{for(let a=i+1;a=0)return !1;return !0}));const i=t.join(" | ");i!==this._attribHTML&&(this._attribHTML=i,t.length?(this._innerContainer.innerHTML=i,this._container.classList.remove("maplibregl-attrib-empty")):this._container.classList.add("maplibregl-attrib-empty"),this._updateCompact(),this._editLink=null);}}class Ps{constructor(t={}){this._updateCompact=()=>{const t=this._container.children;if(t.length){const e=t[0];this._map.getCanvasContainer().offsetWidth<=640||this._compact?!1!==this._compact&&e.classList.add("maplibregl-compact"):e.classList.remove("maplibregl-compact");}},this.options=t;}getDefaultPosition(){return "bottom-left"}onAdd(t){this._map=t,this._compact=this.options&&this.options.compact,this._container=r.create("div","maplibregl-ctrl");const e=r.create("a","maplibregl-ctrl-logo");return e.target="_blank",e.rel="noopener nofollow",e.href="https://maplibre.org/",e.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),e.setAttribute("rel","noopener nofollow"),this._container.appendChild(e),this._container.style.display="block",this._map.on("resize",this._updateCompact),this._updateCompact(),this._container}onRemove(){r.remove(this._container),this._map.off("resize",this._updateCompact),this._map=void 0,this._compact=void 0;}}class Cs{constructor(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1;}add(t){const e=++this._id;return this._queue.push({callback:t,id:e,cancelled:!1}),e}remove(t){const e=this._currentlyRunning,i=e?this._queue.concat(e):this._queue;for(const e of i)if(e.id===t)return void(e.cancelled=!0)}run(t=0){if(this._currentlyRunning)throw new Error("Attempting to run(), but is already running.");const e=this._currentlyRunning=this._queue;this._queue=[];for(const i of e)if(!i.cancelled&&(i.callback(t),this._cleared))break;this._cleared=!1,this._currentlyRunning=!1;}clear(){this._currentlyRunning&&(this._cleared=!0),this._queue=[];}}var Ss=e.Y([{name:"a_pos3d",type:"Int16",components:3}]);class zs extends e.E{constructor(t){super(),this.sourceCache=t,this._tiles={},this._renderableTilesKeys=[],this._sourceTileCache={},this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.deltaZoom=1,t.usedForTerrain=!0,t.tileSize=this.tileSize*2**this.deltaZoom;}destruct(){this.sourceCache.usedForTerrain=!1,this.sourceCache.tileSize=null;}update(t,i){this.sourceCache.update(t,i),this._renderableTilesKeys=[];const a={};for(const s of t.coveringTiles({tileSize:this.tileSize,minzoom:this.minzoom,maxzoom:this.maxzoom,reparseOverscaled:!1,terrain:i}))a[s.key]=!0,this._renderableTilesKeys.push(s.key),this._tiles[s.key]||(s.posMatrix=new Float64Array(16),e.aP(s.posMatrix,0,e.X,0,e.X,0,1),this._tiles[s.key]=new lt(s,this.tileSize));for(const t in this._tiles)a[t]||delete this._tiles[t];}freeRtt(t){for(const e in this._tiles){const i=this._tiles[e];(!t||i.tileID.equals(t)||i.tileID.isChildOf(t)||t.isChildOf(i.tileID))&&(i.rtt=[]);}}getRenderableTiles(){return this._renderableTilesKeys.map((t=>this.getTileByID(t)))}getTileByID(t){return this._tiles[t]}getTerrainCoords(t){const i={};for(const a of this._renderableTilesKeys){const s=this._tiles[a].tileID;if(s.canonical.equals(t.canonical)){const s=t.clone();s.posMatrix=new Float64Array(16),e.aP(s.posMatrix,0,e.X,0,e.X,0,1),i[a]=s;}else if(s.canonical.isChildOf(t.canonical)){const o=t.clone();o.posMatrix=new Float64Array(16);const r=s.canonical.z-t.canonical.z,n=s.canonical.x-(s.canonical.x>>r<>r<>r;e.aP(o.posMatrix,0,h,0,h,0,1),e.J(o.posMatrix,o.posMatrix,[-n*h,-l*h,0]),i[a]=o;}else if(t.canonical.isChildOf(s.canonical)){const o=t.clone();o.posMatrix=new Float64Array(16);const r=t.canonical.z-s.canonical.z,n=t.canonical.x-(t.canonical.x>>r<>r<>r;e.aP(o.posMatrix,0,e.X,0,e.X,0,1),e.J(o.posMatrix,o.posMatrix,[n*h,l*h,0]),e.K(o.posMatrix,o.posMatrix,[1/2**r,1/2**r,0]),i[a]=o;}}return i}getSourceTile(t,e){const i=this.sourceCache._source;let a=t.overscaledZ-this.deltaZoom;if(a>i.maxzoom&&(a=i.maxzoom),a=i.minzoom&&(!s||!s.dem);)s=this.sourceCache.getTileByID(t.scaledTo(a--).key);return s}tilesAfterTime(t=Date.now()){return Object.values(this._tiles).filter((e=>e.timeAdded>=t))}}class Ds{constructor(t,e,i){this.painter=t,this.sourceCache=new zs(e),this.options=i,this.exaggeration="number"==typeof i.exaggeration?i.exaggeration:1,this.qualityFactor=2,this.meshSize=128,this._demMatrixCache={},this.coordsIndex=[],this._coordsTextureSize=1024;}getDEMElevation(t,i,a,s=e.X){var o;if(!(i>=0&&i=0&&at.canonical.z&&(t.canonical.z>=a?s=t.canonical.z-a:e.w("cannot calculate elevation if elevation maxzoom > source.maxzoom"));const o=t.canonical.x-(t.canonical.x>>s<>s<>8<<4|t>>8,i[e+3]=0;const a=new e.R({width:this._coordsTextureSize,height:this._coordsTextureSize},new Uint8Array(i.buffer)),s=new b(t,a,t.gl.RGBA,{premultiply:!1});return s.bind(t.gl.NEAREST,t.gl.CLAMP_TO_EDGE),this._coordsTexture=s,s}pointCoordinate(t){this.painter.maybeDrawDepthAndCoords(!0);const i=new Uint8Array(4),a=this.painter.context,s=a.gl,o=Math.round(t.x*this.painter.pixelRatio/devicePixelRatio),r=Math.round(t.y*this.painter.pixelRatio/devicePixelRatio),n=Math.round(this.painter.height/devicePixelRatio);a.bindFramebuffer.set(this.getFramebuffer("coords").framebuffer),s.readPixels(o,n-r-1,1,1,s.RGBA,s.UNSIGNED_BYTE,i),a.bindFramebuffer.set(null);const l=i[0]+(i[2]>>4<<8),h=i[1]+((15&i[2])<<8),c=this.coordsIndex[255-i[3]],u=c&&this.sourceCache.getTileByID(c);if(!u)return null;const d=this._coordsTextureSize,_=(1<t.id!==e)),this._recentlyUsed.push(t.id);}stampObject(t){t.stamp=++this._stamp;}getOrCreateFreeObject(){for(const t of this._recentlyUsed)if(!this._objects[t].inUse)return this._objects[t];if(this._objects.length>=this._size)throw new Error("No free RenderPool available, call freeAllObjects() required!");const t=this._createObject(this._objects.length);return this._objects.push(t),t}freeObject(t){t.inUse=!1;}freeAllObjects(){for(const t of this._objects)this.freeObject(t);}isFull(){return !(this._objects.length!t.inUse))}}const As={background:!0,fill:!0,line:!0,raster:!0,hillshade:!0};class Rs{constructor(t,e){this.painter=t,this.terrain=e,this.pool=new Ms(t.context,30,e.sourceCache.tileSize*e.qualityFactor);}destruct(){this.pool.destruct();}getTexture(t){return this.pool.getObjectForId(t.rtt[this._stacks.length-1].id).texture}prepareForRender(t,e){this._stacks=[],this._prevType=null,this._rttTiles=[],this._renderableTiles=this.terrain.sourceCache.getRenderableTiles(),this._renderableLayerIds=t._order.filter((i=>!t._layers[i].isHidden(e))),this._coordsDescendingInv={};for(const e in t.sourceCaches){this._coordsDescendingInv[e]={};const i=t.sourceCaches[e].getVisibleCoordinates();for(const t of i){const i=this.terrain.sourceCache.getTerrainCoords(t);for(const t in i)this._coordsDescendingInv[e][t]||(this._coordsDescendingInv[e][t]=[]),this._coordsDescendingInv[e][t].push(i[t]);}}this._coordsDescendingInvStr={};for(const e of t._order){const i=t._layers[e],a=i.source;if(As[i.type]&&!this._coordsDescendingInvStr[a]){this._coordsDescendingInvStr[a]={};for(const t in this._coordsDescendingInv[a])this._coordsDescendingInvStr[a][t]=this._coordsDescendingInv[a][t].map((t=>t.key)).sort().join();}}for(const t of this._renderableTiles)for(const e in this._coordsDescendingInvStr){const i=this._coordsDescendingInvStr[e][t.tileID.key];i&&i!==t.rttCoords[e]&&(t.rtt=[]);}}renderLayer(t){if(t.isHidden(this.painter.transform.zoom))return !1;const i=t.type,a=this.painter,s=this._renderableLayerIds[this._renderableLayerIds.length-1]===t.id;if(As[i]&&(this._prevType&&As[this._prevType]||this._stacks.push([]),this._prevType=i,this._stacks[this._stacks.length-1].push(t.id),!s))return !0;if(As[this._prevType]||As[i]&&s){this._prevType=i;const t=this._stacks.length-1,s=this._stacks[t]||[];for(const i of this._renderableTiles){if(this.pool.isFull()&&(fa(this.painter,this.terrain,this._rttTiles),this._rttTiles=[],this.pool.freeAllObjects()),this._rttTiles.push(i),i.rtt[t]){const e=this.pool.getObjectForId(i.rtt[t].id);if(e.stamp===i.rtt[t].stamp){this.pool.useObject(e);continue}}const o=this.pool.getOrCreateFreeObject();this.pool.useObject(o),this.pool.stampObject(o),i.rtt[t]={id:o.id,stamp:o.stamp},a.context.bindFramebuffer.set(o.fbo.framebuffer),a.context.clear({color:e.aM.transparent,stencil:0}),a.currentStencilSource=void 0;for(let t=0;t{t.touchstart=t.dragStart,t.touchmoveWindow=t.dragMove,t.touchend=t.dragEnd;},Os={showCompass:!0,showZoom:!0,visualizePitch:!1};class Ns{constructor(t,i,a=!1){this.mousedown=t=>{this.startMouse(e.e({},t,{ctrlKey:!0,preventDefault:()=>t.preventDefault()}),r.mousePos(this.element,t)),r.addEventListener(window,"mousemove",this.mousemove),r.addEventListener(window,"mouseup",this.mouseup);},this.mousemove=t=>{this.moveMouse(t,r.mousePos(this.element,t));},this.mouseup=t=>{this.mouseRotate.dragEnd(t),this.mousePitch&&this.mousePitch.dragEnd(t),this.offTemp();},this.touchstart=t=>{1!==t.targetTouches.length?this.reset():(this._startPos=this._lastPos=r.touchPos(this.element,t.targetTouches)[0],this.startTouch(t,this._startPos),r.addEventListener(window,"touchmove",this.touchmove,{passive:!1}),r.addEventListener(window,"touchend",this.touchend));},this.touchmove=t=>{1!==t.targetTouches.length?this.reset():(this._lastPos=r.touchPos(this.element,t.targetTouches)[0],this.moveTouch(t,this._lastPos));},this.touchend=t=>{0===t.targetTouches.length&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos){this.mouseRotate.reset(),this.mousePitch&&this.mousePitch.reset(),this.touchRotate.reset(),this.touchPitch&&this.touchPitch.reset(),delete this._startPos,delete this._lastPos,this.offTemp();},this._clickTolerance=10;const s=t.dragRotate._mouseRotate.getClickTolerance(),o=t.dragRotate._mousePitch.getClickTolerance();this.element=i,this.mouseRotate=Ka({clickTolerance:s,enable:!0}),this.touchRotate=(({enable:t,clickTolerance:e,bearingDegreesPerPixelMoved:i=.8})=>{const a=new $a;return new Ga({clickTolerance:e,move:(t,e)=>({bearingDelta:(e.x-t.x)*i}),moveStateManager:a,enable:t,assignEvents:Bs})})({clickTolerance:s,enable:!0}),this.map=t,a&&(this.mousePitch=Ja({clickTolerance:o,enable:!0}),this.touchPitch=(({enable:t,clickTolerance:e,pitchDegreesPerPixelMoved:i=-.5})=>{const a=new $a;return new Ga({clickTolerance:e,move:(t,e)=>({pitchDelta:(e.y-t.y)*i}),moveStateManager:a,enable:t,assignEvents:Bs})})({clickTolerance:o,enable:!0})),r.addEventListener(i,"mousedown",this.mousedown),r.addEventListener(i,"touchstart",this.touchstart,{passive:!1}),r.addEventListener(i,"touchcancel",this.reset);}startMouse(t,e){this.mouseRotate.dragStart(t,e),this.mousePitch&&this.mousePitch.dragStart(t,e),r.disableDrag();}startTouch(t,e){this.touchRotate.dragStart(t,e),this.touchPitch&&this.touchPitch.dragStart(t,e),r.disableDrag();}moveMouse(t,e){const i=this.map,{bearingDelta:a}=this.mouseRotate.dragMove(t,e)||{};if(a&&i.setBearing(i.getBearing()+a),this.mousePitch){const{pitchDelta:a}=this.mousePitch.dragMove(t,e)||{};a&&i.setPitch(i.getPitch()+a);}}moveTouch(t,e){const i=this.map,{bearingDelta:a}=this.touchRotate.dragMove(t,e)||{};if(a&&i.setBearing(i.getBearing()+a),this.touchPitch){const{pitchDelta:a}=this.touchPitch.dragMove(t,e)||{};a&&i.setPitch(i.getPitch()+a);}}off(){const t=this.element;r.removeEventListener(t,"mousedown",this.mousedown),r.removeEventListener(t,"touchstart",this.touchstart,{passive:!1}),r.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),r.removeEventListener(window,"touchend",this.touchend),r.removeEventListener(t,"touchcancel",this.reset),this.offTemp();}offTemp(){r.enableDrag(),r.removeEventListener(window,"mousemove",this.mousemove),r.removeEventListener(window,"mouseup",this.mouseup),r.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),r.removeEventListener(window,"touchend",this.touchend);}}let Us;function js(t,i,a){const s=new e.N(t.lng,t.lat);if(t=new e.N(t.lng,t.lat),i){const s=new e.N(t.lng-360,t.lat),o=new e.N(t.lng+360,t.lat),r=a.locationPoint(t).distSqr(i);a.locationPoint(s).distSqr(i)180;){const e=a.locationPoint(t);if(e.x>=0&&e.y>=0&&e.x<=a.width&&e.y<=a.height)break;t.lng>a.center.lng?t.lng-=360:t.lng+=360;}return t.lng!==s.lng&&a.locationPoint(t).y>a.height/2-a.getHorizon()?t:s}const Zs={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function qs(t,e,i){const a=t.classList;for(const t in Zs)a.remove(`maplibregl-${i}-anchor-${t}`);a.add(`maplibregl-${i}-anchor-${e}`);}class Vs extends e.E{constructor(t){if(super(),this._onKeyPress=t=>{const e=t.code,i=t.charCode||t.keyCode;"Space"!==e&&"Enter"!==e&&32!==i&&13!==i||this.togglePopup();},this._onMapClick=t=>{const e=t.originalEvent.target,i=this._element;this._popup&&(e===i||i.contains(e))&&this.togglePopup();},this._update=t=>{var e;if(!this._map)return;const i=this._map.loaded()&&!this._map.isMoving();("terrain"===(null==t?void 0:t.type)||"render"===(null==t?void 0:t.type)&&!i)&&this._map.once("render",this._update),this._lngLat=this._map.transform.renderWorldCopies?js(this._lngLat,this._flatPos,this._map.transform):null===(e=this._lngLat)||void 0===e?void 0:e.wrap(),this._flatPos=this._pos=this._map.project(this._lngLat)._add(this._offset),this._map.terrain&&(this._flatPos=this._map.transform.locationPoint(this._lngLat)._add(this._offset));let a="";"viewport"===this._rotationAlignment||"auto"===this._rotationAlignment?a=`rotateZ(${this._rotation}deg)`:"map"===this._rotationAlignment&&(a=`rotateZ(${this._rotation-this._map.getBearing()}deg)`);let s="";"viewport"===this._pitchAlignment||"auto"===this._pitchAlignment?s="rotateX(0deg)":"map"===this._pitchAlignment&&(s=`rotateX(${this._map.getPitch()}deg)`),this._subpixelPositioning||t&&"moveend"!==t.type||(this._pos=this._pos.round()),r.setTransform(this._element,`${Zs[this._anchor]} translate(${this._pos.x}px, ${this._pos.y}px) ${s} ${a}`),o.frameAsync(new AbortController).then((()=>{this._updateOpacity(t&&"moveend"===t.type);})).catch((()=>{}));},this._onMove=t=>{if(!this._isDragging){const e=this._clickTolerance||this._map._clickTolerance;this._isDragging=t.point.dist(this._pointerdownPos)>=e;}this._isDragging&&(this._pos=t.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none","pending"===this._state&&(this._state="active",this.fire(new e.k("dragstart"))),this.fire(new e.k("drag")));},this._onUp=()=>{this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),"active"===this._state&&this.fire(new e.k("dragend")),this._state="inactive";},this._addDragHandler=t=>{this._element.contains(t.originalEvent.target)&&(t.preventDefault(),this._positionDelta=t.point.sub(this._pos).add(this._offset),this._pointerdownPos=t.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp));},this._anchor=t&&t.anchor||"center",this._color=t&&t.color||"#3FB1CE",this._scale=t&&t.scale||1,this._draggable=t&&t.draggable||!1,this._clickTolerance=t&&t.clickTolerance||0,this._subpixelPositioning=t&&t.subpixelPositioning||!1,this._isDragging=!1,this._state="inactive",this._rotation=t&&t.rotation||0,this._rotationAlignment=t&&t.rotationAlignment||"auto",this._pitchAlignment=t&&t.pitchAlignment&&"auto"!==t.pitchAlignment?t.pitchAlignment:this._rotationAlignment,this.setOpacity(),this.setOpacity(null==t?void 0:t.opacity,null==t?void 0:t.opacityWhenCovered),t&&t.element)this._element=t.element,this._offset=e.P.convert(t&&t.offset||[0,0]);else {this._defaultMarker=!0,this._element=r.create("div");const i=r.createNS("http://www.w3.org/2000/svg","svg"),a=41,s=27;i.setAttributeNS(null,"display","block"),i.setAttributeNS(null,"height",`${a}px`),i.setAttributeNS(null,"width",`${s}px`),i.setAttributeNS(null,"viewBox",`0 0 ${s} ${a}`);const o=r.createNS("http://www.w3.org/2000/svg","g");o.setAttributeNS(null,"stroke","none"),o.setAttributeNS(null,"stroke-width","1"),o.setAttributeNS(null,"fill","none"),o.setAttributeNS(null,"fill-rule","evenodd");const n=r.createNS("http://www.w3.org/2000/svg","g");n.setAttributeNS(null,"fill-rule","nonzero");const l=r.createNS("http://www.w3.org/2000/svg","g");l.setAttributeNS(null,"transform","translate(3.0, 29.0)"),l.setAttributeNS(null,"fill","#000000");const h=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}];for(const t of h){const e=r.createNS("http://www.w3.org/2000/svg","ellipse");e.setAttributeNS(null,"opacity","0.04"),e.setAttributeNS(null,"cx","10.5"),e.setAttributeNS(null,"cy","5.80029008"),e.setAttributeNS(null,"rx",t.rx),e.setAttributeNS(null,"ry",t.ry),l.appendChild(e);}const c=r.createNS("http://www.w3.org/2000/svg","g");c.setAttributeNS(null,"fill",this._color);const u=r.createNS("http://www.w3.org/2000/svg","path");u.setAttributeNS(null,"d","M27,13.5 C27,19.074644 20.250001,27.000002 14.75,34.500002 C14.016665,35.500004 12.983335,35.500004 12.25,34.500002 C6.7499993,27.000002 0,19.222562 0,13.5 C0,6.0441559 6.0441559,0 13.5,0 C20.955844,0 27,6.0441559 27,13.5 Z"),c.appendChild(u);const d=r.createNS("http://www.w3.org/2000/svg","g");d.setAttributeNS(null,"opacity","0.25"),d.setAttributeNS(null,"fill","#000000");const _=r.createNS("http://www.w3.org/2000/svg","path");_.setAttributeNS(null,"d","M13.5,0 C6.0441559,0 0,6.0441559 0,13.5 C0,19.222562 6.7499993,27 12.25,34.5 C13,35.522727 14.016664,35.500004 14.75,34.5 C20.250001,27 27,19.074644 27,13.5 C27,6.0441559 20.955844,0 13.5,0 Z M13.5,1 C20.415404,1 26,6.584596 26,13.5 C26,15.898657 24.495584,19.181431 22.220703,22.738281 C19.945823,26.295132 16.705119,30.142167 13.943359,33.908203 C13.743445,34.180814 13.612715,34.322738 13.5,34.441406 C13.387285,34.322738 13.256555,34.180814 13.056641,33.908203 C10.284481,30.127985 7.4148684,26.314159 5.015625,22.773438 C2.6163816,19.232715 1,15.953538 1,13.5 C1,6.584596 6.584596,1 13.5,1 Z"),d.appendChild(_);const p=r.createNS("http://www.w3.org/2000/svg","g");p.setAttributeNS(null,"transform","translate(6.0, 7.0)"),p.setAttributeNS(null,"fill","#FFFFFF");const m=r.createNS("http://www.w3.org/2000/svg","g");m.setAttributeNS(null,"transform","translate(8.0, 8.0)");const f=r.createNS("http://www.w3.org/2000/svg","circle");f.setAttributeNS(null,"fill","#000000"),f.setAttributeNS(null,"opacity","0.25"),f.setAttributeNS(null,"cx","5.5"),f.setAttributeNS(null,"cy","5.5"),f.setAttributeNS(null,"r","5.4999962");const g=r.createNS("http://www.w3.org/2000/svg","circle");g.setAttributeNS(null,"fill","#FFFFFF"),g.setAttributeNS(null,"cx","5.5"),g.setAttributeNS(null,"cy","5.5"),g.setAttributeNS(null,"r","5.4999962"),m.appendChild(f),m.appendChild(g),n.appendChild(l),n.appendChild(c),n.appendChild(d),n.appendChild(p),n.appendChild(m),i.appendChild(n),i.setAttributeNS(null,"height",a*this._scale+"px"),i.setAttributeNS(null,"width",s*this._scale+"px"),this._element.appendChild(i),this._offset=e.P.convert(t&&t.offset||[0,-14]);}if(this._element.classList.add("maplibregl-marker"),this._element.addEventListener("dragstart",(t=>{t.preventDefault();})),this._element.addEventListener("mousedown",(t=>{t.preventDefault();})),qs(this._element,this._anchor,"marker"),t&&t.className)for(const e of t.className.split(" "))this._element.classList.add(e);this._popup=null;}addTo(t){return this.remove(),this._map=t,this._element.setAttribute("aria-label",t._getUIString("Marker.Title")),t.getCanvasContainer().appendChild(this._element),t.on("move",this._update),t.on("moveend",this._update),t.on("terrain",this._update),this.setDraggable(this._draggable),this._update(),this._map.on("click",this._onMapClick),this}remove(){return this._opacityTimeout&&(clearTimeout(this._opacityTimeout),delete this._opacityTimeout),this._map&&(this._map.off("click",this._onMapClick),this._map.off("move",this._update),this._map.off("moveend",this._update),this._map.off("terrain",this._update),this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler),this._map.off("mouseup",this._onUp),this._map.off("touchend",this._onUp),this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),delete this._map),r.remove(this._element),this._popup&&this._popup.remove(),this}getLngLat(){return this._lngLat}setLngLat(t){return this._lngLat=e.N.convert(t),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this}getElement(){return this._element}setPopup(t){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeEventListener("keypress",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute("tabindex")),t){if(!("offset"in t.options)){const e=38.1,i=13.5,a=Math.abs(i)/Math.SQRT2;t.options.offset=this._defaultMarker?{top:[0,0],"top-left":[0,0],"top-right":[0,0],bottom:[0,-e],"bottom-left":[a,-1*(e-i+a)],"bottom-right":[-a,-1*(e-i+a)],left:[i,-1*(e-i)],right:[-i,-1*(e-i)]}:this._offset;}this._popup=t,this._originalTabIndex=this._element.getAttribute("tabindex"),this._originalTabIndex||this._element.setAttribute("tabindex","0"),this._element.addEventListener("keypress",this._onKeyPress);}return this}setSubpixelPositioning(t){return this._subpixelPositioning=t,this}getPopup(){return this._popup}togglePopup(){const t=this._popup;return this._element.style.opacity===this._opacityWhenCovered?this:t?(t.isOpen()?t.remove():(t.setLngLat(this._lngLat),t.addTo(this._map)),this):this}_updateOpacity(t=!1){var i,a;if(!(null===(i=this._map)||void 0===i?void 0:i.terrain))return void(this._element.style.opacity!==this._opacity&&(this._element.style.opacity=this._opacity));if(t)this._opacityTimeout=null;else {if(this._opacityTimeout)return;this._opacityTimeout=setTimeout((()=>{this._opacityTimeout=null;}),100);}const s=this._map,o=s.terrain.depthAtPoint(this._pos),r=s.terrain.getElevationForLngLatZoom(this._lngLat,s.transform.tileZoom);if(s.transform.lngLatToCameraDepth(this._lngLat,r)-o<.006)return void(this._element.style.opacity=this._opacity);const n=-this._offset.y/s.transform._pixelPerMeter,l=Math.sin(s.getPitch()*Math.PI/180)*n,h=s.terrain.depthAtPoint(new e.P(this._pos.x,this._pos.y-this._offset.y)),c=s.transform.lngLatToCameraDepth(this._lngLat,r+l)-h>.006;(null===(a=this._popup)||void 0===a?void 0:a.isOpen())&&c&&this._popup.remove(),this._element.style.opacity=c?this._opacityWhenCovered:this._opacity;}getOffset(){return this._offset}setOffset(t){return this._offset=e.P.convert(t),this._update(),this}addClassName(t){this._element.classList.add(t);}removeClassName(t){this._element.classList.remove(t);}toggleClassName(t){return this._element.classList.toggle(t)}setDraggable(t){return this._draggable=!!t,this._map&&(t?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this}isDraggable(){return this._draggable}setRotation(t){return this._rotation=t||0,this._update(),this}getRotation(){return this._rotation}setRotationAlignment(t){return this._rotationAlignment=t||"auto",this._update(),this}getRotationAlignment(){return this._rotationAlignment}setPitchAlignment(t){return this._pitchAlignment=t&&"auto"!==t?t:this._rotationAlignment,this._update(),this}getPitchAlignment(){return this._pitchAlignment}setOpacity(t,e){return void 0===t&&void 0===e&&(this._opacity="1",this._opacityWhenCovered="0.2"),void 0!==t&&(this._opacity=t),void 0!==e&&(this._opacityWhenCovered=e),this._map&&this._updateOpacity(!0),this}}const Gs={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0};let Hs=0,Ws=!1;const $s={maxWidth:100,unit:"metric"};function Xs(t,e,i){const a=i&&i.maxWidth||100,s=t._container.clientHeight/2,o=t.unproject([0,s]),r=t.unproject([a,s]),n=o.distanceTo(r);if(i&&"imperial"===i.unit){const i=3.2808*n;i>5280?Ks(e,a,i/5280,t._getUIString("ScaleControl.Miles")):Ks(e,a,i,t._getUIString("ScaleControl.Feet"));}else i&&"nautical"===i.unit?Ks(e,a,n/1852,t._getUIString("ScaleControl.NauticalMiles")):n>=1e3?Ks(e,a,n/1e3,t._getUIString("ScaleControl.Kilometers")):Ks(e,a,n,t._getUIString("ScaleControl.Meters"));}function Ks(t,e,i,a){const s=function(t){const e=Math.pow(10,`${Math.floor(t)}`.length-1);let i=t/e;return i=i>=10?10:i>=5?5:i>=3?3:i>=2?2:i>=1?1:function(t){const e=Math.pow(10,Math.ceil(-Math.log(t)/Math.LN10));return Math.round(t*e)/e}(i),e*i}(i);t.style.width=e*(s/i)+"px",t.innerHTML=`${s} ${a}`;}const Js={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px",subpixelPositioning:!1},Ys=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", ");function Qs(t){if(t){if("number"==typeof t){const i=Math.round(Math.abs(t)/Math.SQRT2);return {center:new e.P(0,0),top:new e.P(0,t),"top-left":new e.P(i,i),"top-right":new e.P(-i,i),bottom:new e.P(0,-t),"bottom-left":new e.P(i,-i),"bottom-right":new e.P(-i,-i),left:new e.P(t,0),right:new e.P(-t,0)}}if(t instanceof e.P||Array.isArray(t)){const i=e.P.convert(t);return {center:i,top:i,"top-left":i,"top-right":i,bottom:i,"bottom-left":i,"bottom-right":i,left:i,right:i}}return {center:e.P.convert(t.center||[0,0]),top:e.P.convert(t.top||[0,0]),"top-left":e.P.convert(t["top-left"]||[0,0]),"top-right":e.P.convert(t["top-right"]||[0,0]),bottom:e.P.convert(t.bottom||[0,0]),"bottom-left":e.P.convert(t["bottom-left"]||[0,0]),"bottom-right":e.P.convert(t["bottom-right"]||[0,0]),left:e.P.convert(t.left||[0,0]),right:e.P.convert(t.right||[0,0])}}return Qs(new e.P(0,0))}const to=i;t.AJAXError=e.bh,t.Evented=e.E,t.LngLat=e.N,t.MercatorCoordinate=e.Z,t.Point=e.P,t.addProtocol=e.bi,t.config=e.a,t.removeProtocol=e.bj,t.AttributionControl=Es,t.BoxZoomHandler=Ua,t.CanvasSource=et,t.CooperativeGesturesHandler=vs,t.DoubleClickZoomHandler=ds,t.DragPanHandler=ms,t.DragRotateHandler=fs,t.EdgeInsets=ba,t.FullscreenControl=class extends e.E{constructor(t={}){super(),this._onFullscreenChange=()=>{var t;let e=window.document.fullscreenElement||window.document.mozFullScreenElement||window.document.webkitFullscreenElement||window.document.msFullscreenElement;for(;null===(t=null==e?void 0:e.shadowRoot)||void 0===t?void 0:t.fullscreenElement;)e=e.shadowRoot.fullscreenElement;e===this._container!==this._fullscreen&&this._handleFullscreenChange();},this._onClickFullscreen=()=>{this._isFullscreen()?this._exitFullscreen():this._requestFullscreen();},this._fullscreen=!1,t&&t.container&&(t.container instanceof HTMLElement?this._container=t.container:e.w("Full screen control 'container' must be a DOM element.")),"onfullscreenchange"in document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in document&&(this._fullscreenchange="MSFullscreenChange");}onAdd(t){return this._map=t,this._container||(this._container=this._map.getContainer()),this._controlContainer=r.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),this._controlContainer}onRemove(){r.remove(this._controlContainer),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._onFullscreenChange);}_setupUI(){const t=this._fullscreenButton=r.create("button","maplibregl-ctrl-fullscreen",this._controlContainer);r.create("span","maplibregl-ctrl-icon",t).setAttribute("aria-hidden","true"),t.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),window.document.addEventListener(this._fullscreenchange,this._onFullscreenChange);}_updateTitle(){const t=this._getTitle();this._fullscreenButton.setAttribute("aria-label",t),this._fullscreenButton.title=t;}_getTitle(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")}_isFullscreen(){return this._fullscreen}_handleFullscreenChange(){this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("maplibregl-ctrl-shrink"),this._fullscreenButton.classList.toggle("maplibregl-ctrl-fullscreen"),this._updateTitle(),this._fullscreen?(this.fire(new e.k("fullscreenstart")),this._prevCooperativeGesturesEnabled=this._map.cooperativeGestures.isEnabled(),this._map.cooperativeGestures.disable()):(this.fire(new e.k("fullscreenend")),this._prevCooperativeGesturesEnabled&&this._map.cooperativeGestures.enable());}_exitFullscreen(){window.document.exitFullscreen?window.document.exitFullscreen():window.document.mozCancelFullScreen?window.document.mozCancelFullScreen():window.document.msExitFullscreen?window.document.msExitFullscreen():window.document.webkitCancelFullScreen?window.document.webkitCancelFullScreen():this._togglePseudoFullScreen();}_requestFullscreen(){this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen?this._container.webkitRequestFullscreen():this._togglePseudoFullScreen();}_togglePseudoFullScreen(){this._container.classList.toggle("maplibregl-pseudo-fullscreen"),this._handleFullscreenChange(),this._map.resize();}},t.GeoJSONSource=J,t.GeolocateControl=class extends e.E{constructor(t){super(),this._onSuccess=t=>{if(this._map){if(this._isOutOfMapMaxBounds(t))return this._setErrorState(),this.fire(new e.k("outofmaxbounds",t)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=t,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background");break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}this.options.showUserLocation&&"OFF"!==this._watchState&&this._updateMarker(t),this.options.trackUserLocation&&"ACTIVE_LOCK"!==this._watchState||this._updateCamera(t),this.options.showUserLocation&&this._dotElement.classList.remove("maplibregl-user-location-dot-stale"),this.fire(new e.k("geolocate",t)),this._finish();}},this._updateCamera=t=>{const i=new e.N(t.coords.longitude,t.coords.latitude),a=t.coords.accuracy,s=this._map.getBearing(),o=e.e({bearing:s},this.options.fitBoundsOptions),r=H.fromLngLat(i,a);this._map.fitBounds(r,o,{geolocateSource:!0});},this._updateMarker=t=>{if(t){const i=new e.N(t.coords.longitude,t.coords.latitude);this._accuracyCircleMarker.setLngLat(i).addTo(this._map),this._userLocationDotMarker.setLngLat(i).addTo(this._map),this._accuracy=t.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius();}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove();},this._onZoom=()=>{this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius();},this._onError=t=>{if(this._map){if(this.options.trackUserLocation)if(1===t.code){this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;const t=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=t,this._geolocateButton.setAttribute("aria-label",t),void 0!==this._geolocationWatchID&&this._clearWatch();}else {if(3===t.code&&Ws)return;this._setErrorState();}"OFF"!==this._watchState&&this.options.showUserLocation&&this._dotElement.classList.add("maplibregl-user-location-dot-stale"),this.fire(new e.k("error",t)),this._finish();}},this._finish=()=>{this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0;},this._setupUI=()=>{this._map&&(this._container.addEventListener("contextmenu",(t=>t.preventDefault())),this._geolocateButton=r.create("button","maplibregl-ctrl-geolocate",this._container),r.create("span","maplibregl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden","true"),this._geolocateButton.type="button",this._geolocateButton.disabled=!0);},this._finishSetupUI=t=>{if(this._map){if(!1===t){e.w("Geolocation support is not available so the GeolocateControl will be disabled.");const t=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=t,this._geolocateButton.setAttribute("aria-label",t);}else {const t=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.disabled=!1,this._geolocateButton.title=t,this._geolocateButton.setAttribute("aria-label",t);}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=r.create("div","maplibregl-user-location-dot"),this._userLocationDotMarker=new Vs({element:this._dotElement}),this._circleElement=r.create("div","maplibregl-user-location-accuracy-circle"),this._accuracyCircleMarker=new Vs({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",(()=>this.trigger())),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",(t=>{t.geolocateSource||"ACTIVE_LOCK"!==this._watchState||t.originalEvent&&"resize"===t.originalEvent.type||(this._watchState="BACKGROUND",this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this.fire(new e.k("trackuserlocationend")),this.fire(new e.k("userlocationlostfocus")));}));}},this.options=e.e({},Gs,t);}onAdd(t){return this._map=t,this._container=r.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),function(){return e._(this,arguments,void 0,(function*(t=!1){if(void 0!==Us&&!t)return Us;if(void 0===window.navigator.permissions)return Us=!!window.navigator.geolocation,Us;try{const t=yield window.navigator.permissions.query({name:"geolocation"});Us="denied"!==t.state;}catch(t){Us=!!window.navigator.geolocation;}return Us}))}().then((t=>this._finishSetupUI(t))),this._container}onRemove(){void 0!==this._geolocationWatchID&&(window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),r.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,Hs=0,Ws=!1;}_isOutOfMapMaxBounds(t){const e=this._map.getMaxBounds(),i=t.coords;return e&&(i.longitudee.getEast()||i.latitudee.getNorth())}_setErrorState(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting");break;case"ACTIVE_ERROR":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}}_updateCircleRadius(){const t=this._map.getBounds(),e=t.getSouthEast(),i=t.getNorthEast(),a=e.distanceTo(i),s=Math.ceil(this._accuracy/(a/this._map._container.clientHeight)*2);this._circleElement.style.width=`${s}px`,this._circleElement.style.height=`${s}px`;}trigger(){if(!this._setup)return e.w("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new e.k("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":Hs--,Ws=!1,this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this.fire(new e.k("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new e.k("trackuserlocationstart")),this.fire(new e.k("userlocationfocus"));break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"OFF":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}if("OFF"===this._watchState&&void 0!==this._geolocationWatchID)this._clearWatch();else if(void 0===this._geolocationWatchID){let t;this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),Hs++,Hs>1?(t={maximumAge:6e5,timeout:0},Ws=!0):(t=this.options.positionOptions,Ws=!1),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,t);}}else window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return !0}_clearWatch(){window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null);}},t.Hash=Ea,t.ImageSource=Q,t.KeyboardHandler=ls,t.LngLatBounds=H,t.LogoControl=Ps,t.Map=class extends Ts{constructor(t){e.bf.mark(e.bg.create);const i=Object.assign(Object.assign({},Fs),t);if(null!=i.minZoom&&null!=i.maxZoom&&i.minZoom>i.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(null!=i.minPitch&&null!=i.maxPitch&&i.minPitch>i.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(null!=i.minPitch&&i.minPitch<0)throw new Error("minPitch must be greater than or equal to 0");if(null!=i.maxPitch&&i.maxPitch>85)throw new Error("maxPitch must be less than or equal to 85");if(super(new Ta(i.minZoom,i.maxZoom,i.minPitch,i.maxPitch,i.renderWorldCopies),{bearingSnap:i.bearingSnap}),this._idleTriggered=!1,this._crossFadingFactor=1,this._renderTaskQueue=new Cs,this._controls=[],this._mapId=e.a4(),this._contextLost=t=>{t.preventDefault(),this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this.fire(new e.k("webglcontextlost",{originalEvent:t}));},this._contextRestored=t=>{this._setupPainter(),this.resize(),this._update(),this.fire(new e.k("webglcontextrestored",{originalEvent:t}));},this._onMapScroll=t=>{if(t.target===this._container)return this._container.scrollTop=0,this._container.scrollLeft=0,!1},this._onWindowOnline=()=>{this._update();},this._interactive=i.interactive,this._maxTileCacheSize=i.maxTileCacheSize,this._maxTileCacheZoomLevels=i.maxTileCacheZoomLevels,this._failIfMajorPerformanceCaveat=!0===i.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=!0===i.preserveDrawingBuffer,this._antialias=!0===i.antialias,this._trackResize=!0===i.trackResize,this._bearingSnap=i.bearingSnap,this._refreshExpiredTiles=!0===i.refreshExpiredTiles,this._fadeDuration=i.fadeDuration,this._crossSourceCollisions=!0===i.crossSourceCollisions,this._collectResourceTiming=!0===i.collectResourceTiming,this._locale=Object.assign(Object.assign({},ks),i.locale),this._clickTolerance=i.clickTolerance,this._overridePixelRatio=i.pixelRatio,this._maxCanvasSize=i.maxCanvasSize,this.transformCameraUpdate=i.transformCameraUpdate,this.cancelPendingTileRequestsWhileZooming=!0===i.cancelPendingTileRequestsWhileZooming,this._imageQueueHandle=_.addThrottleControl((()=>this.isMoving())),this._requestManager=new p(i.transformRequest),"string"==typeof i.container){if(this._container=document.getElementById(i.container),!this._container)throw new Error(`Container '${i.container}' not found.`)}else {if(!(i.container instanceof HTMLElement))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=i.container;}if(i.maxBounds&&this.setMaxBounds(i.maxBounds),this._setupContainer(),this._setupPainter(),this.on("move",(()=>this._update(!1))).on("moveend",(()=>this._update(!1))).on("zoom",(()=>this._update(!0))).on("terrain",(()=>{this.painter.terrainFacilitator.dirty=!0,this._update(!0);})).once("idle",(()=>{this._idleTriggered=!0;})),"undefined"!=typeof window){addEventListener("online",this._onWindowOnline,!1);let t=!1;const e=Ia((t=>{this._trackResize&&!this._removed&&(this.resize(t),this.redraw());}),50);this._resizeObserver=new ResizeObserver((i=>{t?e(i):t=!0;})),this._resizeObserver.observe(this._container);}this.handlers=new ws(this,i),this._hash=i.hash&&new Ea("string"==typeof i.hash&&i.hash||void 0).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:i.center,zoom:i.zoom,bearing:i.bearing,pitch:i.pitch}),i.bounds&&(this.resize(),this.fitBounds(i.bounds,e.e({},i.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=i.localIdeographFontFamily,this._validateStyle=i.validateStyle,i.style&&this.setStyle(i.style,{localIdeographFontFamily:i.localIdeographFontFamily}),i.attributionControl&&this.addControl(new Es("boolean"==typeof i.attributionControl?void 0:i.attributionControl)),i.maplibreLogo&&this.addControl(new Ps,i.logoPosition),this.on("style.load",(()=>{this.transform.unmodified&&this.jumpTo(this.style.stylesheet);})),this.on("data",(t=>{this._update("style"===t.dataType),this.fire(new e.k(`${t.dataType}data`,t));})),this.on("dataloading",(t=>{this.fire(new e.k(`${t.dataType}dataloading`,t));})),this.on("dataabort",(t=>{this.fire(new e.k("sourcedataabort",t));}));}_getMapId(){return this._mapId}addControl(t,i){if(void 0===i&&(i=t.getDefaultPosition?t.getDefaultPosition():"top-right"),!t||!t.onAdd)return this.fire(new e.j(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));const a=t.onAdd(this);this._controls.push(t);const s=this._controlPositions[i];return -1!==i.indexOf("bottom")?s.insertBefore(a,s.firstChild):s.appendChild(a),this}removeControl(t){if(!t||!t.onRemove)return this.fire(new e.j(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));const i=this._controls.indexOf(t);return i>-1&&this._controls.splice(i,1),t.onRemove(this),this}hasControl(t){return this._controls.indexOf(t)>-1}calculateCameraOptionsFromTo(t,e,i,a){return null==a&&this.terrain&&(a=this.terrain.getElevationForLngLatZoom(i,this.transform.tileZoom)),super.calculateCameraOptionsFromTo(t,e,i,a)}resize(t){var i;const a=this._containerDimensions(),s=a[0],o=a[1],r=this._getClampedPixelRatio(s,o);if(this._resizeCanvas(s,o,r),this.painter.resize(s,o,r),this.painter.overLimit()){const t=this.painter.context.gl;this._maxCanvasSize=[t.drawingBufferWidth,t.drawingBufferHeight];const e=this._getClampedPixelRatio(s,o);this._resizeCanvas(s,o,e),this.painter.resize(s,o,e);}this.transform.resize(s,o),null===(i=this._requestedCameraState)||void 0===i||i.resize(s,o);const n=!this._moving;return n&&(this.stop(),this.fire(new e.k("movestart",t)).fire(new e.k("move",t))),this.fire(new e.k("resize",t)),n&&this.fire(new e.k("moveend",t)),this}_getClampedPixelRatio(t,e){const{0:i,1:a}=this._maxCanvasSize,s=this.getPixelRatio(),o=t*s,r=e*s;return Math.min(o>i?i/o:1,r>a?a/r:1)*s}getPixelRatio(){var t;return null!==(t=this._overridePixelRatio)&&void 0!==t?t:devicePixelRatio}setPixelRatio(t){this._overridePixelRatio=t,this.resize();}getBounds(){return this.transform.getBounds()}getMaxBounds(){return this.transform.getMaxBounds()}setMaxBounds(t){return this.transform.setMaxBounds(H.convert(t)),this._update()}setMinZoom(t){if((t=null==t?-2:t)>=-2&&t<=this.transform.maxZoom)return this.transform.minZoom=t,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=t,this._update(),this.getZoom()>t&&this.setZoom(t),this;throw new Error("maxZoom must be greater than the current minZoom")}getMaxZoom(){return this.transform.maxZoom}setMinPitch(t){if((t=null==t?0:t)<0)throw new Error("minPitch must be greater than or equal to 0");if(t>=0&&t<=this.transform.maxPitch)return this.transform.minPitch=t,this._update(),this.getPitch()85)throw new Error("maxPitch must be less than or equal to 85");if(t>=this.transform.minPitch)return this.transform.maxPitch=t,this._update(),this.getPitch()>t&&this.setPitch(t),this;throw new Error("maxPitch must be greater than the current minPitch")}getMaxPitch(){return this.transform.maxPitch}getRenderWorldCopies(){return this.transform.renderWorldCopies}setRenderWorldCopies(t){return this.transform.renderWorldCopies=t,this._update()}project(t){return this.transform.locationPoint(e.N.convert(t),this.style&&this.terrain)}unproject(t){return this.transform.pointLocation(e.P.convert(t),this.terrain)}isMoving(){var t;return this._moving||(null===(t=this.handlers)||void 0===t?void 0:t.isMoving())}isZooming(){var t;return this._zooming||(null===(t=this.handlers)||void 0===t?void 0:t.isZooming())}isRotating(){var t;return this._rotating||(null===(t=this.handlers)||void 0===t?void 0:t.isRotating())}_createDelegatedListener(t,e,i){if("mouseenter"===t||"mouseover"===t){let a=!1;const s=s=>{const o=e.filter((t=>this.getLayer(t))),r=0!==o.length?this.queryRenderedFeatures(s.point,{layers:o}):[];r.length?a||(a=!0,i.call(this,new ka(t,this,s.originalEvent,{features:r}))):a=!1;};return {layers:e,listener:i,delegates:{mousemove:s,mouseout:()=>{a=!1;}}}}if("mouseleave"===t||"mouseout"===t){let a=!1;const s=s=>{const o=e.filter((t=>this.getLayer(t)));(0!==o.length?this.queryRenderedFeatures(s.point,{layers:o}):[]).length?a=!0:a&&(a=!1,i.call(this,new ka(t,this,s.originalEvent)));},o=e=>{a&&(a=!1,i.call(this,new ka(t,this,e.originalEvent)));};return {layers:e,listener:i,delegates:{mousemove:s,mouseout:o}}}{const a=t=>{const a=e.filter((t=>this.getLayer(t))),s=0!==a.length?this.queryRenderedFeatures(t.point,{layers:a}):[];s.length&&(t.features=s,i.call(this,t),delete t.features);};return {layers:e,listener:i,delegates:{[t]:a}}}}_saveDelegatedListener(t,e){this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[t]=this._delegatedListeners[t]||[],this._delegatedListeners[t].push(e);}_removeDelegatedListener(t,e,i){if(!this._delegatedListeners||!this._delegatedListeners[t])return;const a=this._delegatedListeners[t];for(let t=0;te.includes(t)))){for(const t in s.delegates)this.off(t,s.delegates[t]);return void a.splice(t,1)}}}on(t,e,i){if(void 0===i)return super.on(t,e);const a=this._createDelegatedListener(t,"string"==typeof e?[e]:e,i);this._saveDelegatedListener(t,a);for(const t in a.delegates)this.on(t,a.delegates[t]);return this}once(t,e,i){if(void 0===i)return super.once(t,e);const a="string"==typeof e?[e]:e,s=this._createDelegatedListener(t,a,i);for(const e in s.delegates){const o=s.delegates[e];s.delegates[e]=(...e)=>{this._removeDelegatedListener(t,a,i),o(...e);};}this._saveDelegatedListener(t,s);for(const t in s.delegates)this.once(t,s.delegates[t]);return this}off(t,e,i){return void 0===i?super.off(t,e):(this._removeDelegatedListener(t,"string"==typeof e?[e]:e,i),this)}queryRenderedFeatures(t,i){if(!this.style)return [];let a;const s=t instanceof e.P||Array.isArray(t),o=s?t:[[0,0],[this.transform.width,this.transform.height]];if(i=i||(s?{}:t)||{},o instanceof e.P||"number"==typeof o[0])a=[e.P.convert(o)];else {const t=e.P.convert(o[0]),i=e.P.convert(o[1]);a=[t,new e.P(i.x,t.y),i,new e.P(t.x,i.y),t];}return this.style.queryRenderedFeatures(a,i,this.transform)}querySourceFeatures(t,e){return this.style.querySourceFeatures(t,e)}setStyle(t,i){return !1!==(i=e.e({},{localIdeographFontFamily:this._localIdeographFontFamily,validate:this._validateStyle},i)).diff&&i.localIdeographFontFamily===this._localIdeographFontFamily&&this.style&&t?(this._diffStyle(t,i),this):(this._localIdeographFontFamily=i.localIdeographFontFamily,this._updateStyle(t,i))}setTransformRequest(t){return this._requestManager.setTransformRequest(t),this}_getUIString(t){const e=this._locale[t];if(null==e)throw new Error(`Missing UI string '${t}'`);return e}_updateStyle(t,e){if(e.transformStyle&&this.style&&!this.style._loaded)return void this.style.once("style.load",(()=>this._updateStyle(t,e)));const i=this.style&&e.transformStyle?this.style.serialize():void 0;return this.style&&(this.style.setEventedParent(null),this.style._remove(!t)),t?(this.style=new de(this,e||{}),this.style.setEventedParent(this,{style:this.style}),"string"==typeof t?this.style.loadURL(t,e,i):this.style.loadJSON(t,e,i),this):(delete this.style,this)}_lazyInitEmptyStyle(){this.style||(this.style=new de(this,{}),this.style.setEventedParent(this,{style:this.style}),this.style.loadEmpty());}_diffStyle(t,i){if("string"==typeof t){const a=this._requestManager.transformRequest(t,"Style");e.h(a,new AbortController).then((t=>{this._updateDiff(t.data,i);})).catch((t=>{t&&this.fire(new e.j(t));}));}else "object"==typeof t&&this._updateDiff(t,i);}_updateDiff(t,i){try{this.style.setState(t,i)&&this._update(!0);}catch(a){e.w(`Unable to perform style diff: ${a.message||a.error||a}. Rebuilding the style from scratch.`),this._updateStyle(t,i);}}getStyle(){if(this.style)return this.style.serialize()}isStyleLoaded(){return this.style?this.style.loaded():e.w("There is no style added to the map.")}addSource(t,e){return this._lazyInitEmptyStyle(),this.style.addSource(t,e),this._update(!0)}isSourceLoaded(t){const i=this.style&&this.style.sourceCaches[t];if(void 0!==i)return i.loaded();this.fire(new e.j(new Error(`There is no source with ID '${t}'`)));}setTerrain(t){if(this.style._checkLoaded(),this._terrainDataCallback&&this.style.off("data",this._terrainDataCallback),t){const i=this.style.sourceCaches[t.source];if(!i)throw new Error(`cannot load terrain, because there exists no source with ID: ${t.source}`);null===this.terrain&&i.reload();for(const i in this.style._layers){const a=this.style._layers[i];"hillshade"===a.type&&a.source===t.source&&e.w("You are using the same source for a hillshade layer and for 3D terrain. Please consider using two separate sources to improve rendering quality.");}this.terrain=new Ds(this.painter,i,t),this.painter.renderToTexture=new Rs(this.painter,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._terrainDataCallback=e=>{"style"===e.dataType?this.terrain.sourceCache.freeRtt():"source"===e.dataType&&e.tile&&(e.sourceId!==t.source||this._elevationFreeze||(this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom)),this.terrain.sourceCache.freeRtt(e.tile.tileID));},this.style.on("data",this._terrainDataCallback);}else this.terrain&&this.terrain.sourceCache.destruct(),this.terrain=null,this.painter.renderToTexture&&this.painter.renderToTexture.destruct(),this.painter.renderToTexture=null,this.transform.minElevationForCurrentTile=0,this.transform.elevation=0;return this.fire(new e.k("terrain",{terrain:t})),this}getTerrain(){var t,e;return null!==(e=null===(t=this.terrain)||void 0===t?void 0:t.options)&&void 0!==e?e:null}areTilesLoaded(){const t=this.style&&this.style.sourceCaches;for(const e in t){const i=t[e]._tiles;for(const t in i){const e=i[t];if("loaded"!==e.state&&"errored"!==e.state)return !1}}return !0}removeSource(t){return this.style.removeSource(t),this._update(!0)}getSource(t){return this.style.getSource(t)}addImage(t,i,a={}){const{pixelRatio:s=1,sdf:r=!1,stretchX:n,stretchY:l,content:h,textFitWidth:c,textFitHeight:u}=a;if(this._lazyInitEmptyStyle(),!(i instanceof HTMLImageElement||e.b(i))){if(void 0===i.width||void 0===i.height)return this.fire(new e.j(new Error("Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));{const{width:a,height:o,data:d}=i,_=i;return this.style.addImage(t,{data:new e.R({width:a,height:o},new Uint8Array(d)),pixelRatio:s,stretchX:n,stretchY:l,content:h,textFitWidth:c,textFitHeight:u,sdf:r,version:0,userImage:_}),_.onAdd&&_.onAdd(this,t),this}}{const{width:a,height:d,data:_}=o.getImageData(i);this.style.addImage(t,{data:new e.R({width:a,height:d},_),pixelRatio:s,stretchX:n,stretchY:l,content:h,textFitWidth:c,textFitHeight:u,sdf:r,version:0});}}updateImage(t,i){const a=this.style.getImage(t);if(!a)return this.fire(new e.j(new Error("The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.")));const s=i instanceof HTMLImageElement||e.b(i)?o.getImageData(i):i,{width:r,height:n,data:l}=s;if(void 0===r||void 0===n)return this.fire(new e.j(new Error("Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));if(r!==a.data.width||n!==a.data.height)return this.fire(new e.j(new Error("The width and height of the updated image must be that same as the previous version of the image")));const h=!(i instanceof HTMLImageElement||e.b(i));return a.data.replace(l,h),this.style.updateImage(t,a),this}getImage(t){return this.style.getImage(t)}hasImage(t){return t?!!this.style.getImage(t):(this.fire(new e.j(new Error("Missing required image id"))),!1)}removeImage(t){this.style.removeImage(t);}loadImage(t){return _.getImage(this._requestManager.transformRequest(t,"Image"),new AbortController)}listImages(){return this.style.listImages()}addLayer(t,e){return this._lazyInitEmptyStyle(),this.style.addLayer(t,e),this._update(!0)}moveLayer(t,e){return this.style.moveLayer(t,e),this._update(!0)}removeLayer(t){return this.style.removeLayer(t),this._update(!0)}getLayer(t){return this.style.getLayer(t)}getLayersOrder(){return this.style.getLayersOrder()}setLayerZoomRange(t,e,i){return this.style.setLayerZoomRange(t,e,i),this._update(!0)}setFilter(t,e,i={}){return this.style.setFilter(t,e,i),this._update(!0)}getFilter(t){return this.style.getFilter(t)}setPaintProperty(t,e,i,a={}){return this.style.setPaintProperty(t,e,i,a),this._update(!0)}getPaintProperty(t,e){return this.style.getPaintProperty(t,e)}setLayoutProperty(t,e,i,a={}){return this.style.setLayoutProperty(t,e,i,a),this._update(!0)}getLayoutProperty(t,e){return this.style.getLayoutProperty(t,e)}setGlyphs(t,e={}){return this._lazyInitEmptyStyle(),this.style.setGlyphs(t,e),this._update(!0)}getGlyphs(){return this.style.getGlyphsUrl()}addSprite(t,e,i={}){return this._lazyInitEmptyStyle(),this.style.addSprite(t,e,i,(t=>{t||this._update(!0);})),this}removeSprite(t){return this._lazyInitEmptyStyle(),this.style.removeSprite(t),this._update(!0)}getSprite(){return this.style.getSprite()}setSprite(t,e={}){return this._lazyInitEmptyStyle(),this.style.setSprite(t,e,(t=>{t||this._update(!0);})),this}setLight(t,e={}){return this._lazyInitEmptyStyle(),this.style.setLight(t,e),this._update(!0)}getLight(){return this.style.getLight()}setSky(t){return this._lazyInitEmptyStyle(),this.style.setSky(t),this._update(!0)}getSky(){return this.style.getSky()}setFeatureState(t,e){return this.style.setFeatureState(t,e),this._update()}removeFeatureState(t,e){return this.style.removeFeatureState(t,e),this._update()}getFeatureState(t){return this.style.getFeatureState(t)}getContainer(){return this._container}getCanvasContainer(){return this._canvasContainer}getCanvas(){return this._canvas}_containerDimensions(){let t=0,e=0;return this._container&&(t=this._container.clientWidth||400,e=this._container.clientHeight||300),[t,e]}_setupContainer(){const t=this._container;t.classList.add("maplibregl-map");const e=this._canvasContainer=r.create("div","maplibregl-canvas-container",t);this._interactive&&e.classList.add("maplibregl-interactive"),this._canvas=r.create("canvas","maplibregl-canvas",e),this._canvas.addEventListener("webglcontextlost",this._contextLost,!1),this._canvas.addEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.setAttribute("tabindex",this._interactive?"0":"-1"),this._canvas.setAttribute("aria-label",this._getUIString("Map.Title")),this._canvas.setAttribute("role","region");const i=this._containerDimensions(),a=this._getClampedPixelRatio(i[0],i[1]);this._resizeCanvas(i[0],i[1],a);const s=this._controlContainer=r.create("div","maplibregl-control-container",t),o=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach((t=>{o[t]=r.create("div",`maplibregl-ctrl-${t} `,s);})),this._container.addEventListener("scroll",this._onMapScroll,!1);}_resizeCanvas(t,e,i){this._canvas.width=Math.floor(i*t),this._canvas.height=Math.floor(i*e),this._canvas.style.width=`${t}px`,this._canvas.style.height=`${e}px`;}_setupPainter(){const t={alpha:!0,stencil:!0,depth:!0,failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1};let e=null;this._canvas.addEventListener("webglcontextcreationerror",(i=>{e={requestedAttributes:t},i&&(e.statusMessage=i.statusMessage,e.type=i.type);}),{once:!0});const i=this._canvas.getContext("webgl2",t)||this._canvas.getContext("webgl",t);if(!i){const t="Failed to initialize WebGL";throw e?(e.message=t,new Error(JSON.stringify(e))):new Error(t)}this.painter=new va(i,this.transform),n.testSupport(i);}loaded(){return !this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()}_update(t){return this.style&&this.style._loaded?(this._styleDirty=this._styleDirty||t,this._sourcesDirty=!0,this.triggerRepaint(),this):this}_requestRenderFrame(t){return this._update(),this._renderTaskQueue.add(t)}_cancelRenderFrame(t){this._renderTaskQueue.remove(t);}_render(t){const i=this._idleTriggered?this._fadeDuration:0;if(this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run(t),this._removed)return;let a=!1;if(this.style&&this._styleDirty){this._styleDirty=!1;const t=this.transform.zoom,s=o.now();this.style.zoomHistory.update(t,s);const r=new e.z(t,{now:s,fadeDuration:i,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),n=r.crossFadingFactor();1===n&&n===this._crossFadingFactor||(a=!0,this._crossFadingFactor=n),this.style.update(r);}this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this.terrain?(this.terrain.sourceCache.update(this.transform,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._elevationFreeze||(this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom))):(this.transform.minElevationForCurrentTile=0,this.transform.elevation=0),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,i,this._crossSourceCollisions),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:i,showPadding:this.showPadding}),this.fire(new e.k("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,e.bf.mark(e.bg.load),this.fire(new e.k("load"))),this.style&&(this.style.hasTransitions()||a)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles();const s=this._sourcesDirty||this._styleDirty||this._placementDirty;return s||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&this.fire(new e.k("idle")),!this._loaded||this._fullyLoaded||s||(this._fullyLoaded=!0,e.bf.mark(e.bg.fullLoad)),this}redraw(){return this.style&&(this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._render(0)),this}remove(){var t;this._hash&&this._hash.remove();for(const t of this._controls)t.onRemove(this);this._controls=[],this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._renderTaskQueue.clear(),this.painter.destroy(),this.handlers.destroy(),delete this.handlers,this.setStyle(null),"undefined"!=typeof window&&removeEventListener("online",this._onWindowOnline,!1),_.removeThrottleControl(this._imageQueueHandle),null===(t=this._resizeObserver)||void 0===t||t.disconnect();const i=this.painter.context.gl.getExtension("WEBGL_lose_context");(null==i?void 0:i.loseContext)&&i.loseContext(),this._canvas.removeEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.removeEventListener("webglcontextlost",this._contextLost,!1),r.remove(this._canvasContainer),r.remove(this._controlContainer),this._container.classList.remove("maplibregl-map"),e.bf.clearMetrics(),this._removed=!0,this.fire(new e.k("remove"));}triggerRepaint(){this.style&&!this._frameRequest&&(this._frameRequest=new AbortController,o.frameAsync(this._frameRequest).then((t=>{e.bf.frame(t),this._frameRequest=null,this._render(t);})).catch((()=>{})));}get showTileBoundaries(){return !!this._showTileBoundaries}set showTileBoundaries(t){this._showTileBoundaries!==t&&(this._showTileBoundaries=t,this._update());}get showPadding(){return !!this._showPadding}set showPadding(t){this._showPadding!==t&&(this._showPadding=t,this._update());}get showCollisionBoxes(){return !!this._showCollisionBoxes}set showCollisionBoxes(t){this._showCollisionBoxes!==t&&(this._showCollisionBoxes=t,t?this.style._generateCollisionBoxes():this._update());}get showOverdrawInspector(){return !!this._showOverdrawInspector}set showOverdrawInspector(t){this._showOverdrawInspector!==t&&(this._showOverdrawInspector=t,this._update());}get repaint(){return !!this._repaint}set repaint(t){this._repaint!==t&&(this._repaint=t,this.triggerRepaint());}get vertices(){return !!this._vertices}set vertices(t){this._vertices=t,this._update();}get version(){return Ls}getCameraTargetElevation(){return this.transform.elevation}},t.MapMouseEvent=ka,t.MapTouchEvent=La,t.MapWheelEvent=Fa,t.Marker=Vs,t.NavigationControl=class{constructor(t){this._updateZoomButtons=()=>{const t=this._map.getZoom(),e=t===this._map.getMaxZoom(),i=t===this._map.getMinZoom();this._zoomInButton.disabled=e,this._zoomOutButton.disabled=i,this._zoomInButton.setAttribute("aria-disabled",e.toString()),this._zoomOutButton.setAttribute("aria-disabled",i.toString());},this._rotateCompassArrow=()=>{const t=this.options.visualizePitch?`scale(${1/Math.pow(Math.cos(this._map.transform.pitch*(Math.PI/180)),.5)}) rotateX(${this._map.transform.pitch}deg) rotateZ(${this._map.transform.angle*(180/Math.PI)}deg)`:`rotate(${this._map.transform.angle*(180/Math.PI)}deg)`;this._compassIcon.style.transform=t;},this._setButtonTitle=(t,e)=>{const i=this._map._getUIString(`NavigationControl.${e}`);t.title=i,t.setAttribute("aria-label",i);},this.options=e.e({},Os,t),this._container=r.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._container.addEventListener("contextmenu",(t=>t.preventDefault())),this.options.showZoom&&(this._zoomInButton=this._createButton("maplibregl-ctrl-zoom-in",(t=>this._map.zoomIn({},{originalEvent:t}))),r.create("span","maplibregl-ctrl-icon",this._zoomInButton).setAttribute("aria-hidden","true"),this._zoomOutButton=this._createButton("maplibregl-ctrl-zoom-out",(t=>this._map.zoomOut({},{originalEvent:t}))),r.create("span","maplibregl-ctrl-icon",this._zoomOutButton).setAttribute("aria-hidden","true")),this.options.showCompass&&(this._compass=this._createButton("maplibregl-ctrl-compass",(t=>{this.options.visualizePitch?this._map.resetNorthPitch({},{originalEvent:t}):this._map.resetNorth({},{originalEvent:t});})),this._compassIcon=r.create("span","maplibregl-ctrl-icon",this._compass),this._compassIcon.setAttribute("aria-hidden","true"));}onAdd(t){return this._map=t,this.options.showZoom&&(this._setButtonTitle(this._zoomInButton,"ZoomIn"),this._setButtonTitle(this._zoomOutButton,"ZoomOut"),this._map.on("zoom",this._updateZoomButtons),this._updateZoomButtons()),this.options.showCompass&&(this._setButtonTitle(this._compass,"ResetBearing"),this.options.visualizePitch&&this._map.on("pitch",this._rotateCompassArrow),this._map.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new Ns(this._map,this._compass,this.options.visualizePitch)),this._container}onRemove(){r.remove(this._container),this.options.showZoom&&this._map.off("zoom",this._updateZoomButtons),this.options.showCompass&&(this.options.visualizePitch&&this._map.off("pitch",this._rotateCompassArrow),this._map.off("rotate",this._rotateCompassArrow),this._handler.off(),delete this._handler),delete this._map;}_createButton(t,e){const i=r.create("button",t,this._container);return i.type="button",i.addEventListener("click",e),i}},t.Popup=class extends e.E{constructor(t){super(),this.remove=()=>(this._content&&r.remove(this._content),this._container&&(r.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),this._map._canvasContainer.classList.remove("maplibregl-track-pointer"),delete this._map,this.fire(new e.k("close"))),this),this._onMouseUp=t=>{this._update(t.point);},this._onMouseMove=t=>{this._update(t.point);},this._onDrag=t=>{this._update(t.point);},this._update=t=>{var e;if(!this._map||!this._lngLat&&!this._trackPointer||!this._content)return;if(!this._container){if(this._container=r.create("div","maplibregl-popup",this._map.getContainer()),this._tip=r.create("div","maplibregl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className)for(const t of this.options.className.split(" "))this._container.classList.add(t);this._closeButton&&this._closeButton.setAttribute("aria-label",this._map._getUIString("Popup.Close")),this._trackPointer&&this._container.classList.add("maplibregl-popup-track-pointer");}if(this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._lngLat=this._map.transform.renderWorldCopies&&!this._trackPointer?js(this._lngLat,this._flatPos,this._map.transform):null===(e=this._lngLat)||void 0===e?void 0:e.wrap(),this._trackPointer&&!t)return;const i=this._flatPos=this._pos=this._trackPointer&&t?t:this._map.project(this._lngLat);this._map.terrain&&(this._flatPos=this._trackPointer&&t?t:this._map.transform.locationPoint(this._lngLat));let a=this.options.anchor;const s=Qs(this.options.offset);if(!a){const t=this._container.offsetWidth,e=this._container.offsetHeight;let o;o=i.y+s.bottom.ythis._map.transform.height-e?["bottom"]:[],i.xthis._map.transform.width-t/2&&o.push("right"),a=0===o.length?"bottom":o.join("-");}let o=i.add(s[a]);this.options.subpixelPositioning||(o=o.round()),r.setTransform(this._container,`${Zs[a]} translate(${o.x}px,${o.y}px)`),qs(this._container,a,"popup");},this._onClose=()=>{this.remove();},this.options=e.e(Object.create(Js),t);}addTo(t){return this._map&&this.remove(),this._map=t,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")):this._map.on("move",this._update),this.fire(new e.k("open")),this}isOpen(){return !!this._map}getLngLat(){return this._lngLat}setLngLat(t){return this._lngLat=e.N.convert(t),this._pos=null,this._flatPos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.remove("maplibregl-track-pointer")),this}trackPointer(){return this._trackPointer=!0,this._pos=null,this._flatPos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")),this}getElement(){return this._container}setText(t){return this.setDOMContent(document.createTextNode(t))}setHTML(t){const e=document.createDocumentFragment(),i=document.createElement("body");let a;for(i.innerHTML=t;a=i.firstChild,a;)e.appendChild(a);return this.setDOMContent(e)}getMaxWidth(){var t;return null===(t=this._container)||void 0===t?void 0:t.style.maxWidth}setMaxWidth(t){return this.options.maxWidth=t,this._update(),this}setDOMContent(t){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=r.create("div","maplibregl-popup-content",this._container);return this._content.appendChild(t),this._createCloseButton(),this._update(),this._focusFirstElement(),this}addClassName(t){return this._container&&this._container.classList.add(t),this}removeClassName(t){return this._container&&this._container.classList.remove(t),this}setOffset(t){return this.options.offset=t,this._update(),this}toggleClassName(t){if(this._container)return this._container.classList.toggle(t)}setSubpixelPositioning(t){this.options.subpixelPositioning=t;}_createCloseButton(){this.options.closeButton&&(this._closeButton=r.create("button","maplibregl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.innerHTML="×",this._closeButton.addEventListener("click",this._onClose));}_focusFirstElement(){if(!this.options.focusAfterOpen||!this._container)return;const t=this._container.querySelector(Ys);t&&t.focus();}},t.RasterDEMTileSource=K,t.RasterTileSource=X,t.ScaleControl=class{constructor(t){this._onMove=()=>{Xs(this._map,this._container,this.options);},this.setUnit=t=>{this.options.unit=t,Xs(this._map,this._container,this.options);},this.options=Object.assign(Object.assign({},$s),t);}getDefaultPosition(){return "bottom-left"}onAdd(t){return this._map=t,this._container=r.create("div","maplibregl-ctrl maplibregl-ctrl-scale",t.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container}onRemove(){r.remove(this._container),this._map.off("move",this._onMove),this._map=void 0;}},t.ScrollZoomHandler=us,t.Style=de,t.TerrainControl=class{constructor(t){this._toggleTerrain=()=>{this._map.getTerrain()?this._map.setTerrain(null):this._map.setTerrain(this.options),this._updateTerrainIcon();},this._updateTerrainIcon=()=>{this._terrainButton.classList.remove("maplibregl-ctrl-terrain"),this._terrainButton.classList.remove("maplibregl-ctrl-terrain-enabled"),this._map.terrain?(this._terrainButton.classList.add("maplibregl-ctrl-terrain-enabled"),this._terrainButton.title=this._map._getUIString("TerrainControl.Disable")):(this._terrainButton.classList.add("maplibregl-ctrl-terrain"),this._terrainButton.title=this._map._getUIString("TerrainControl.Enable"));},this.options=t;}onAdd(t){return this._map=t,this._container=r.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._terrainButton=r.create("button","maplibregl-ctrl-terrain",this._container),r.create("span","maplibregl-ctrl-icon",this._terrainButton).setAttribute("aria-hidden","true"),this._terrainButton.type="button",this._terrainButton.addEventListener("click",this._toggleTerrain),this._updateTerrainIcon(),this._map.on("terrain",this._updateTerrainIcon),this._container}onRemove(){r.remove(this._container),this._map.off("terrain",this._updateTerrainIcon),this._map=void 0;}},t.TwoFingersTouchPitchHandler=rs,t.TwoFingersTouchRotateHandler=ss,t.TwoFingersTouchZoomHandler=is,t.TwoFingersTouchZoomRotateHandler=gs,t.VectorTileSource=$,t.VideoSource=tt,t.addSourceType=(t,i)=>e._(void 0,void 0,void 0,(function*(){if(at(t))throw new Error(`A source type called "${t}" already exists.`);((t,e)=>{it[t]=e;})(t,i);})),t.clearPrewarmedResources=function(){const t=B;t&&(t.isPreloaded()&&1===t.numActive()?(t.release(k),B=null):console.warn("Could not clear WebWorkers since there are active Map instances that still reference it. The pre-warmed WebWorker pool can only be cleared when all map instances have been removed with map.remove()"));},t.getMaxParallelImageRequests=function(){return e.a.MAX_PARALLEL_IMAGE_REQUESTS},t.getRTLTextPluginStatus=function(){return nt().getRTLTextPluginStatus()},t.getVersion=function(){return to},t.getWorkerCount=function(){return L.workerCount},t.getWorkerUrl=function(){return e.a.WORKER_URL},t.importScriptInWorkers=function(t){return j().broadcast("IS",t)},t.prewarm=function(){N().acquire(k);},t.setMaxParallelImageRequests=function(t){e.a.MAX_PARALLEL_IMAGE_REQUESTS=t;},t.setRTLTextPlugin=function(t,e){return nt().setRTLTextPlugin(t,e)},t.setWorkerCount=function(t){L.workerCount=t;},t.setWorkerUrl=function(t){e.a.WORKER_URL=t;};})); + +// +// Our custom intro provides a specialized "define()" function, called by the +// AMD modules below, that sets up the worker blob URL and then executes the +// main module, storing its exported value as 'maplibregl' + + +var maplibregl$1 = maplibregl; + +return maplibregl$1; + +})); +//# sourceMappingURL=maplibre-gl.js.map + + +/***/ }), + +/***/ "./node_modules/pmtiles/dist/index.js": +/*!********************************************!*\ + !*** ./node_modules/pmtiles/dist/index.js ***! + \********************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ Compression: () => (/* binding */ Compression), +/* harmony export */ EtagMismatch: () => (/* binding */ EtagMismatch), +/* harmony export */ FetchSource: () => (/* binding */ FetchSource), +/* harmony export */ FileSource: () => (/* binding */ FileSource), +/* harmony export */ PMTiles: () => (/* binding */ PMTiles), +/* harmony export */ Protocol: () => (/* binding */ Protocol), +/* harmony export */ ResolvedValueCache: () => (/* binding */ ResolvedValueCache), +/* harmony export */ SharedPromiseCache: () => (/* binding */ SharedPromiseCache), +/* harmony export */ TileType: () => (/* binding */ TileType), +/* harmony export */ bytesToHeader: () => (/* binding */ bytesToHeader), +/* harmony export */ findTile: () => (/* binding */ findTile), +/* harmony export */ getUint64: () => (/* binding */ getUint64), +/* harmony export */ leafletRasterLayer: () => (/* binding */ leafletRasterLayer), +/* harmony export */ readVarint: () => (/* binding */ readVarint), +/* harmony export */ tileIdToZxy: () => (/* binding */ tileIdToZxy), +/* harmony export */ tileTypeExt: () => (/* binding */ tileTypeExt), +/* harmony export */ zxyToTileId: () => (/* binding */ zxyToTileId) +/* harmony export */ }); +var __pow = Math.pow; +var __async = (__this, __arguments, generator) => { + return new Promise((resolve, reject) => { + var fulfilled = (value) => { + try { + step(generator.next(value)); + } catch (e) { + reject(e); + } + }; + var rejected = (value) => { + try { + step(generator.throw(value)); + } catch (e) { + reject(e); + } + }; + var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected); + step((generator = generator.apply(__this, __arguments)).next()); + }); +}; + +// node_modules/fflate/esm/browser.js +var u8 = Uint8Array; +var u16 = Uint16Array; +var i32 = Int32Array; +var fleb = new u8([ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 2, + 2, + 2, + 2, + 3, + 3, + 3, + 3, + 4, + 4, + 4, + 4, + 5, + 5, + 5, + 5, + 0, + /* unused */ + 0, + 0, + /* impossible */ + 0 +]); +var fdeb = new u8([ + 0, + 0, + 0, + 0, + 1, + 1, + 2, + 2, + 3, + 3, + 4, + 4, + 5, + 5, + 6, + 6, + 7, + 7, + 8, + 8, + 9, + 9, + 10, + 10, + 11, + 11, + 12, + 12, + 13, + 13, + /* unused */ + 0, + 0 +]); +var clim = new u8([16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15]); +var freb = function(eb, start) { + var b = new u16(31); + for (var i = 0; i < 31; ++i) { + b[i] = start += 1 << eb[i - 1]; + } + var r = new i32(b[30]); + for (var i = 1; i < 30; ++i) { + for (var j = b[i]; j < b[i + 1]; ++j) { + r[j] = j - b[i] << 5 | i; + } + } + return { b, r }; +}; +var _a = freb(fleb, 2); +var fl = _a.b; +var revfl = _a.r; +fl[28] = 258, revfl[258] = 28; +var _b = freb(fdeb, 0); +var fd = _b.b; +var revfd = _b.r; +var rev = new u16(32768); +for (i = 0; i < 32768; ++i) { + x = (i & 43690) >> 1 | (i & 21845) << 1; + x = (x & 52428) >> 2 | (x & 13107) << 2; + x = (x & 61680) >> 4 | (x & 3855) << 4; + rev[i] = ((x & 65280) >> 8 | (x & 255) << 8) >> 1; +} +var x; +var i; +var hMap = function(cd, mb, r) { + var s = cd.length; + var i = 0; + var l = new u16(mb); + for (; i < s; ++i) { + if (cd[i]) + ++l[cd[i] - 1]; + } + var le = new u16(mb); + for (i = 1; i < mb; ++i) { + le[i] = le[i - 1] + l[i - 1] << 1; + } + var co; + if (r) { + co = new u16(1 << mb); + var rvb = 15 - mb; + for (i = 0; i < s; ++i) { + if (cd[i]) { + var sv = i << 4 | cd[i]; + var r_1 = mb - cd[i]; + var v = le[cd[i] - 1]++ << r_1; + for (var m = v | (1 << r_1) - 1; v <= m; ++v) { + co[rev[v] >> rvb] = sv; + } + } + } + } else { + co = new u16(s); + for (i = 0; i < s; ++i) { + if (cd[i]) { + co[i] = rev[le[cd[i] - 1]++] >> 15 - cd[i]; + } + } + } + return co; +}; +var flt = new u8(288); +for (i = 0; i < 144; ++i) + flt[i] = 8; +var i; +for (i = 144; i < 256; ++i) + flt[i] = 9; +var i; +for (i = 256; i < 280; ++i) + flt[i] = 7; +var i; +for (i = 280; i < 288; ++i) + flt[i] = 8; +var i; +var fdt = new u8(32); +for (i = 0; i < 32; ++i) + fdt[i] = 5; +var i; +var flrm = /* @__PURE__ */ hMap(flt, 9, 1); +var fdrm = /* @__PURE__ */ hMap(fdt, 5, 1); +var max = function(a) { + var m = a[0]; + for (var i = 1; i < a.length; ++i) { + if (a[i] > m) + m = a[i]; + } + return m; +}; +var bits = function(d, p, m) { + var o = p / 8 | 0; + return (d[o] | d[o + 1] << 8) >> (p & 7) & m; +}; +var bits16 = function(d, p) { + var o = p / 8 | 0; + return (d[o] | d[o + 1] << 8 | d[o + 2] << 16) >> (p & 7); +}; +var shft = function(p) { + return (p + 7) / 8 | 0; +}; +var slc = function(v, s, e) { + if (s == null || s < 0) + s = 0; + if (e == null || e > v.length) + e = v.length; + var n = new u8(e - s); + n.set(v.subarray(s, e)); + return n; +}; +var ec = [ + "unexpected EOF", + "invalid block type", + "invalid length/literal", + "invalid distance", + "stream finished", + "no stream handler", + , + "no callback", + "invalid UTF-8 data", + "extra field too long", + "date not in range 1980-2099", + "filename too long", + "stream finishing", + "invalid zip data" + // determined by unknown compression method +]; +var err = function(ind, msg, nt) { + var e = new Error(msg || ec[ind]); + e.code = ind; + if (Error.captureStackTrace) + Error.captureStackTrace(e, err); + if (!nt) + throw e; + return e; +}; +var inflt = function(dat, st, buf, dict) { + var sl = dat.length, dl = dict ? dict.length : 0; + if (!sl || st.f && !st.l) + return buf || new u8(0); + var noBuf = !buf || st.i != 2; + var noSt = st.i; + if (!buf) + buf = new u8(sl * 3); + var cbuf = function(l2) { + var bl = buf.length; + if (l2 > bl) { + var nbuf = new u8(Math.max(bl * 2, l2)); + nbuf.set(buf); + buf = nbuf; + } + }; + var final = st.f || 0, pos = st.p || 0, bt = st.b || 0, lm = st.l, dm = st.d, lbt = st.m, dbt = st.n; + var tbts = sl * 8; + do { + if (!lm) { + final = bits(dat, pos, 1); + var type = bits(dat, pos + 1, 3); + pos += 3; + if (!type) { + var s = shft(pos) + 4, l = dat[s - 4] | dat[s - 3] << 8, t = s + l; + if (t > sl) { + if (noSt) + err(0); + break; + } + if (noBuf) + cbuf(bt + l); + buf.set(dat.subarray(s, t), bt); + st.b = bt += l, st.p = pos = t * 8, st.f = final; + continue; + } else if (type == 1) + lm = flrm, dm = fdrm, lbt = 9, dbt = 5; + else if (type == 2) { + var hLit = bits(dat, pos, 31) + 257, hcLen = bits(dat, pos + 10, 15) + 4; + var tl = hLit + bits(dat, pos + 5, 31) + 1; + pos += 14; + var ldt = new u8(tl); + var clt = new u8(19); + for (var i = 0; i < hcLen; ++i) { + clt[clim[i]] = bits(dat, pos + i * 3, 7); + } + pos += hcLen * 3; + var clb = max(clt), clbmsk = (1 << clb) - 1; + var clm = hMap(clt, clb, 1); + for (var i = 0; i < tl; ) { + var r = clm[bits(dat, pos, clbmsk)]; + pos += r & 15; + var s = r >> 4; + if (s < 16) { + ldt[i++] = s; + } else { + var c = 0, n = 0; + if (s == 16) + n = 3 + bits(dat, pos, 3), pos += 2, c = ldt[i - 1]; + else if (s == 17) + n = 3 + bits(dat, pos, 7), pos += 3; + else if (s == 18) + n = 11 + bits(dat, pos, 127), pos += 7; + while (n--) + ldt[i++] = c; + } + } + var lt = ldt.subarray(0, hLit), dt = ldt.subarray(hLit); + lbt = max(lt); + dbt = max(dt); + lm = hMap(lt, lbt, 1); + dm = hMap(dt, dbt, 1); + } else + err(1); + if (pos > tbts) { + if (noSt) + err(0); + break; + } + } + if (noBuf) + cbuf(bt + 131072); + var lms = (1 << lbt) - 1, dms = (1 << dbt) - 1; + var lpos = pos; + for (; ; lpos = pos) { + var c = lm[bits16(dat, pos) & lms], sym = c >> 4; + pos += c & 15; + if (pos > tbts) { + if (noSt) + err(0); + break; + } + if (!c) + err(2); + if (sym < 256) + buf[bt++] = sym; + else if (sym == 256) { + lpos = pos, lm = null; + break; + } else { + var add = sym - 254; + if (sym > 264) { + var i = sym - 257, b = fleb[i]; + add = bits(dat, pos, (1 << b) - 1) + fl[i]; + pos += b; + } + var d = dm[bits16(dat, pos) & dms], dsym = d >> 4; + if (!d) + err(3); + pos += d & 15; + var dt = fd[dsym]; + if (dsym > 3) { + var b = fdeb[dsym]; + dt += bits16(dat, pos) & (1 << b) - 1, pos += b; + } + if (pos > tbts) { + if (noSt) + err(0); + break; + } + if (noBuf) + cbuf(bt + 131072); + var end = bt + add; + if (bt < dt) { + var shift2 = dl - dt, dend = Math.min(dt, end); + if (shift2 + bt < 0) + err(3); + for (; bt < dend; ++bt) + buf[bt] = dict[shift2 + bt]; + } + for (; bt < end; bt += 4) { + buf[bt] = buf[bt - dt]; + buf[bt + 1] = buf[bt + 1 - dt]; + buf[bt + 2] = buf[bt + 2 - dt]; + buf[bt + 3] = buf[bt + 3 - dt]; + } + bt = end; + } + } + st.l = lm, st.p = lpos, st.b = bt, st.f = final; + if (lm) + final = 1, st.m = lbt, st.d = dm, st.n = dbt; + } while (!final); + return bt == buf.length ? buf : slc(buf, 0, bt); +}; +var et = /* @__PURE__ */ new u8(0); +var gzs = function(d) { + if (d[0] != 31 || d[1] != 139 || d[2] != 8) + err(6, "invalid gzip data"); + var flg = d[3]; + var st = 10; + if (flg & 4) + st += (d[10] | d[11] << 8) + 2; + for (var zs = (flg >> 3 & 1) + (flg >> 4 & 1); zs > 0; zs -= !d[st++]) + ; + return st + (flg & 2); +}; +var gzl = function(d) { + var l = d.length; + return (d[l - 4] | d[l - 3] << 8 | d[l - 2] << 16 | d[l - 1] << 24) >>> 0; +}; +var zls = function(d, dict) { + if ((d[0] & 15) != 8 || d[0] >> 4 > 7 || (d[0] << 8 | d[1]) % 31) + err(6, "invalid zlib data"); + if ((d[1] >> 5 & 1) == +!dict) + err(6, "invalid zlib data: " + (d[1] & 32 ? "need" : "unexpected") + " dictionary"); + return (d[1] >> 3 & 4) + 2; +}; +function inflateSync(data, opts) { + return inflt(data, { i: 2 }, opts && opts.out, opts && opts.dictionary); +} +function gunzipSync(data, opts) { + var st = gzs(data); + if (st + 8 > data.length) + err(6, "invalid gzip data"); + return inflt(data.subarray(st, -8), { i: 2 }, opts && opts.out || new u8(gzl(data)), opts && opts.dictionary); +} +function unzlibSync(data, opts) { + return inflt(data.subarray(zls(data, opts && opts.dictionary), -4), { i: 2 }, opts && opts.out, opts && opts.dictionary); +} +function decompressSync(data, opts) { + return data[0] == 31 && data[1] == 139 && data[2] == 8 ? gunzipSync(data, opts) : (data[0] & 15) != 8 || data[0] >> 4 > 7 || (data[0] << 8 | data[1]) % 31 ? inflateSync(data, opts) : unzlibSync(data, opts); +} +var td = typeof TextDecoder != "undefined" && /* @__PURE__ */ new TextDecoder(); +var tds = 0; +try { + td.decode(et, { stream: true }); + tds = 1; +} catch (e) { +} + +// v2.ts +var shift = (n, shift2) => { + return n * __pow(2, shift2); +}; +var unshift = (n, shift2) => { + return Math.floor(n / __pow(2, shift2)); +}; +var getUint24 = (view, pos) => { + return shift(view.getUint16(pos + 1, true), 8) + view.getUint8(pos); +}; +var getUint48 = (view, pos) => { + return shift(view.getUint32(pos + 2, true), 16) + view.getUint16(pos, true); +}; +var compare = (tz, tx, ty, view, i) => { + if (tz !== view.getUint8(i)) + return tz - view.getUint8(i); + const x = getUint24(view, i + 1); + if (tx !== x) + return tx - x; + const y = getUint24(view, i + 4); + if (ty !== y) + return ty - y; + return 0; +}; +var queryLeafdir = (view, z, x, y) => { + const offsetLen = queryView(view, z | 128, x, y); + if (offsetLen) { + return { + z, + x, + y, + offset: offsetLen[0], + length: offsetLen[1], + isDir: true + }; + } + return null; +}; +var queryTile = (view, z, x, y) => { + const offsetLen = queryView(view, z, x, y); + if (offsetLen) { + return { + z, + x, + y, + offset: offsetLen[0], + length: offsetLen[1], + isDir: false + }; + } + return null; +}; +var queryView = (view, z, x, y) => { + let m = 0; + let n = view.byteLength / 17 - 1; + while (m <= n) { + const k = n + m >> 1; + const cmp = compare(z, x, y, view, k * 17); + if (cmp > 0) { + m = k + 1; + } else if (cmp < 0) { + n = k - 1; + } else { + return [getUint48(view, k * 17 + 7), view.getUint32(k * 17 + 13, true)]; + } + } + return null; +}; +var entrySort = (a, b) => { + if (a.isDir && !b.isDir) { + return 1; + } + if (!a.isDir && b.isDir) { + return -1; + } + if (a.z !== b.z) { + return a.z - b.z; + } + if (a.x !== b.x) { + return a.x - b.x; + } + return a.y - b.y; +}; +var parseEntry = (dataview, i) => { + const zRaw = dataview.getUint8(i * 17); + const z = zRaw & 127; + return { + z, + x: getUint24(dataview, i * 17 + 1), + y: getUint24(dataview, i * 17 + 4), + offset: getUint48(dataview, i * 17 + 7), + length: dataview.getUint32(i * 17 + 13, true), + isDir: zRaw >> 7 === 1 + }; +}; +var sortDir = (a) => { + const entries = []; + const view = new DataView(a); + for (let i = 0; i < view.byteLength / 17; i++) { + entries.push(parseEntry(view, i)); + } + return createDirectory(entries); +}; +var createDirectory = (entries) => { + entries.sort(entrySort); + const buffer = new ArrayBuffer(17 * entries.length); + const arr = new Uint8Array(buffer); + for (let i = 0; i < entries.length; i++) { + const entry = entries[i]; + let z = entry.z; + if (entry.isDir) + z = z | 128; + arr[i * 17] = z; + arr[i * 17 + 1] = entry.x & 255; + arr[i * 17 + 2] = entry.x >> 8 & 255; + arr[i * 17 + 3] = entry.x >> 16 & 255; + arr[i * 17 + 4] = entry.y & 255; + arr[i * 17 + 5] = entry.y >> 8 & 255; + arr[i * 17 + 6] = entry.y >> 16 & 255; + arr[i * 17 + 7] = entry.offset & 255; + arr[i * 17 + 8] = unshift(entry.offset, 8) & 255; + arr[i * 17 + 9] = unshift(entry.offset, 16) & 255; + arr[i * 17 + 10] = unshift(entry.offset, 24) & 255; + arr[i * 17 + 11] = unshift(entry.offset, 32) & 255; + arr[i * 17 + 12] = unshift(entry.offset, 48) & 255; + arr[i * 17 + 13] = entry.length & 255; + arr[i * 17 + 14] = entry.length >> 8 & 255; + arr[i * 17 + 15] = entry.length >> 16 & 255; + arr[i * 17 + 16] = entry.length >> 24 & 255; + } + return buffer; +}; +var deriveLeaf = (view, tile) => { + if (view.byteLength < 17) + return null; + const numEntries = view.byteLength / 17; + const entry = parseEntry(view, numEntries - 1); + if (entry.isDir) { + const leafLevel = entry.z; + const levelDiff = tile.z - leafLevel; + const leafX = Math.trunc(tile.x / (1 << levelDiff)); + const leafY = Math.trunc(tile.y / (1 << levelDiff)); + return { z: leafLevel, x: leafX, y: leafY }; + } + return null; +}; +function getHeader(source) { + return __async(this, null, function* () { + const resp = yield source.getBytes(0, 512e3); + const dataview = new DataView(resp.data); + const jsonSize = dataview.getUint32(4, true); + const rootEntries = dataview.getUint16(8, true); + const dec = new TextDecoder("utf-8"); + const jsonMetadata = JSON.parse( + dec.decode(new DataView(resp.data, 10, jsonSize)) + ); + let tileCompression = 0 /* Unknown */; + if (jsonMetadata.compression === "gzip") { + tileCompression = 2 /* Gzip */; + } + let minzoom = 0; + if ("minzoom" in jsonMetadata) { + minzoom = +jsonMetadata.minzoom; + } + let maxzoom = 0; + if ("maxzoom" in jsonMetadata) { + maxzoom = +jsonMetadata.maxzoom; + } + let centerLon = 0; + let centerLat = 0; + let centerZoom = 0; + let minLon = -180; + let minLat = -85; + let maxLon = 180; + let maxLat = 85; + if (jsonMetadata.bounds) { + const split = jsonMetadata.bounds.split(","); + minLon = +split[0]; + minLat = +split[1]; + maxLon = +split[2]; + maxLat = +split[3]; + } + if (jsonMetadata.center) { + const split = jsonMetadata.center.split(","); + centerLon = +split[0]; + centerLat = +split[1]; + centerZoom = +split[2]; + } + const header = { + specVersion: dataview.getUint16(2, true), + rootDirectoryOffset: 10 + jsonSize, + rootDirectoryLength: rootEntries * 17, + jsonMetadataOffset: 10, + jsonMetadataLength: jsonSize, + leafDirectoryOffset: 0, + leafDirectoryLength: void 0, + tileDataOffset: 0, + tileDataLength: void 0, + numAddressedTiles: 0, + numTileEntries: 0, + numTileContents: 0, + clustered: false, + internalCompression: 1 /* None */, + tileCompression, + tileType: 1 /* Mvt */, + minZoom: minzoom, + maxZoom: maxzoom, + minLon, + minLat, + maxLon, + maxLat, + centerZoom, + centerLon, + centerLat, + etag: resp.etag + }; + return header; + }); +} +function getZxy(header, source, cache, z, x, y, signal) { + return __async(this, null, function* () { + let rootDir = yield cache.getArrayBuffer( + source, + header.rootDirectoryOffset, + header.rootDirectoryLength, + header + ); + if (header.specVersion === 1) { + rootDir = sortDir(rootDir); + } + const entry = queryTile(new DataView(rootDir), z, x, y); + if (entry) { + const resp = yield source.getBytes(entry.offset, entry.length, signal); + let tileData = resp.data; + const view = new DataView(tileData); + if (view.getUint8(0) === 31 && view.getUint8(1) === 139) { + tileData = decompressSync(new Uint8Array(tileData)); + } + return { + data: tileData + }; + } + const leafcoords = deriveLeaf(new DataView(rootDir), { z, x, y }); + if (leafcoords) { + const leafdirEntry = queryLeafdir( + new DataView(rootDir), + leafcoords.z, + leafcoords.x, + leafcoords.y + ); + if (leafdirEntry) { + let leafDir = yield cache.getArrayBuffer( + source, + leafdirEntry.offset, + leafdirEntry.length, + header + ); + if (header.specVersion === 1) { + leafDir = sortDir(leafDir); + } + const tileEntry = queryTile(new DataView(leafDir), z, x, y); + if (tileEntry) { + const resp = yield source.getBytes( + tileEntry.offset, + tileEntry.length, + signal + ); + let tileData = resp.data; + const view = new DataView(tileData); + if (view.getUint8(0) === 31 && view.getUint8(1) === 139) { + tileData = decompressSync(new Uint8Array(tileData)); + } + return { + data: tileData + }; + } + } + } + return void 0; + }); +} +var v2_default = { + getHeader, + getZxy +}; + +// adapters.ts +var leafletRasterLayer = (source, options) => { + let loaded = false; + let mimeType = ""; + const cls = L.GridLayer.extend({ + createTile: (coord, done) => { + const el = document.createElement("img"); + const controller = new AbortController(); + const signal = controller.signal; + el.cancel = () => { + controller.abort(); + }; + if (!loaded) { + source.getHeader().then((header) => { + if (header.tileType === 1 /* Mvt */) { + console.error( + "Error: archive contains MVT vector tiles, but leafletRasterLayer is for displaying raster tiles. See https://github.com/protomaps/PMTiles/tree/main/js for details." + ); + } else if (header.tileType === 2) { + mimeType = "image/png"; + } else if (header.tileType === 3) { + mimeType = "image/jpeg"; + } else if (header.tileType === 4) { + mimeType = "image/webp"; + } else if (header.tileType === 5) { + mimeType = "image/avif"; + } + }); + loaded = true; + } + source.getZxy(coord.z, coord.x, coord.y, signal).then((arr) => { + if (arr) { + const blob = new Blob([arr.data], { type: mimeType }); + const imageUrl = window.URL.createObjectURL(blob); + el.src = imageUrl; + el.cancel = void 0; + done(void 0, el); + } + }).catch((e) => { + if (e.name !== "AbortError") { + throw e; + } + }); + return el; + }, + _removeTile: function(key) { + const tile = this._tiles[key]; + if (!tile) { + return; + } + if (tile.el.cancel) + tile.el.cancel(); + tile.el.width = 0; + tile.el.height = 0; + tile.el.deleted = true; + L.DomUtil.remove(tile.el); + delete this._tiles[key]; + this.fire("tileunload", { + tile: tile.el, + coords: this._keyToTileCoords(key) + }); + } + }); + return new cls(options); +}; +var v3compat = (v4) => (requestParameters, arg2) => { + if (arg2 instanceof AbortController) { + return v4(requestParameters, arg2); + } + const abortController = new AbortController(); + v4(requestParameters, abortController).then( + (result) => { + return arg2( + void 0, + result.data, + result.cacheControl || "", + result.expires || "" + ); + }, + (err2) => { + return arg2(err2); + } + ).catch((e) => { + return arg2(e); + }); + return { cancel: () => abortController.abort() }; +}; +var Protocol = class { + /** + * Initialize the MapLibre PMTiles protocol. + * + * * metadata: also load the metadata section of the PMTiles. required for some "inspect" functionality + * and to automatically populate the map attribution. Requires an extra HTTP request. + */ + constructor(options) { + /** @hidden */ + this.tilev4 = (params, abortController) => __async(this, null, function* () { + if (params.type === "json") { + const pmtilesUrl2 = params.url.substr(10); + let instance2 = this.tiles.get(pmtilesUrl2); + if (!instance2) { + instance2 = new PMTiles(pmtilesUrl2); + this.tiles.set(pmtilesUrl2, instance2); + } + if (this.metadata) { + return { + data: yield instance2.getTileJson(params.url) + }; + } + const h = yield instance2.getHeader(); + return { + data: { + tiles: [`${params.url}/{z}/{x}/{y}`], + minzoom: h.minZoom, + maxzoom: h.maxZoom, + bounds: [h.minLon, h.minLat, h.maxLon, h.maxLat] + } + }; + } + const re = new RegExp(/pmtiles:\/\/(.+)\/(\d+)\/(\d+)\/(\d+)/); + const result = params.url.match(re); + if (!result) { + throw new Error("Invalid PMTiles protocol URL"); + } + const pmtilesUrl = result[1]; + let instance = this.tiles.get(pmtilesUrl); + if (!instance) { + instance = new PMTiles(pmtilesUrl); + this.tiles.set(pmtilesUrl, instance); + } + const z = result[2]; + const x = result[3]; + const y = result[4]; + const header = yield instance.getHeader(); + const resp = yield instance == null ? void 0 : instance.getZxy(+z, +x, +y, abortController.signal); + if (resp) { + return { + data: new Uint8Array(resp.data), + cacheControl: resp.cacheControl, + expires: resp.expires + }; + } + if (header.tileType === 1 /* Mvt */) { + return { data: new Uint8Array() }; + } + return { data: null }; + }); + this.tile = v3compat(this.tilev4); + this.tiles = /* @__PURE__ */ new Map(); + this.metadata = (options == null ? void 0 : options.metadata) || false; + } + /** + * Add a {@link PMTiles} instance to the global protocol instance. + * + * For remote fetch sources, references in MapLibre styles like pmtiles://http://... + * will resolve to the same instance if the URLs match. + */ + add(p) { + this.tiles.set(p.source.getKey(), p); + } + /** + * Fetch a {@link PMTiles} instance by URL, for remote PMTiles instances. + */ + get(url) { + return this.tiles.get(url); + } +}; + +// index.ts +function toNum(low, high) { + return (high >>> 0) * 4294967296 + (low >>> 0); +} +function readVarintRemainder(l, p) { + const buf = p.buf; + let b = buf[p.pos++]; + let h = (b & 112) >> 4; + if (b < 128) + return toNum(l, h); + b = buf[p.pos++]; + h |= (b & 127) << 3; + if (b < 128) + return toNum(l, h); + b = buf[p.pos++]; + h |= (b & 127) << 10; + if (b < 128) + return toNum(l, h); + b = buf[p.pos++]; + h |= (b & 127) << 17; + if (b < 128) + return toNum(l, h); + b = buf[p.pos++]; + h |= (b & 127) << 24; + if (b < 128) + return toNum(l, h); + b = buf[p.pos++]; + h |= (b & 1) << 31; + if (b < 128) + return toNum(l, h); + throw new Error("Expected varint not more than 10 bytes"); +} +function readVarint(p) { + const buf = p.buf; + let b = buf[p.pos++]; + let val = b & 127; + if (b < 128) + return val; + b = buf[p.pos++]; + val |= (b & 127) << 7; + if (b < 128) + return val; + b = buf[p.pos++]; + val |= (b & 127) << 14; + if (b < 128) + return val; + b = buf[p.pos++]; + val |= (b & 127) << 21; + if (b < 128) + return val; + b = buf[p.pos]; + val |= (b & 15) << 28; + return readVarintRemainder(val, p); +} +function rotate(n, xy, rx, ry) { + if (ry === 0) { + if (rx === 1) { + xy[0] = n - 1 - xy[0]; + xy[1] = n - 1 - xy[1]; + } + const t = xy[0]; + xy[0] = xy[1]; + xy[1] = t; + } +} +function idOnLevel(z, pos) { + const n = __pow(2, z); + let rx = pos; + let ry = pos; + let t = pos; + const xy = [0, 0]; + let s = 1; + while (s < n) { + rx = 1 & t / 2; + ry = 1 & (t ^ rx); + rotate(s, xy, rx, ry); + xy[0] += s * rx; + xy[1] += s * ry; + t = t / 4; + s *= 2; + } + return [z, xy[0], xy[1]]; +} +var tzValues = [ + 0, + 1, + 5, + 21, + 85, + 341, + 1365, + 5461, + 21845, + 87381, + 349525, + 1398101, + 5592405, + 22369621, + 89478485, + 357913941, + 1431655765, + 5726623061, + 22906492245, + 91625968981, + 366503875925, + 1466015503701, + 5864062014805, + 23456248059221, + 93824992236885, + 375299968947541, + 1501199875790165 +]; +function zxyToTileId(z, x, y) { + if (z > 26) { + throw Error("Tile zoom level exceeds max safe number limit (26)"); + } + if (x > __pow(2, z) - 1 || y > __pow(2, z) - 1) { + throw Error("tile x/y outside zoom level bounds"); + } + const acc = tzValues[z]; + const n = __pow(2, z); + let rx = 0; + let ry = 0; + let d = 0; + const xy = [x, y]; + let s = n / 2; + while (s > 0) { + rx = (xy[0] & s) > 0 ? 1 : 0; + ry = (xy[1] & s) > 0 ? 1 : 0; + d += s * s * (3 * rx ^ ry); + rotate(s, xy, rx, ry); + s = s / 2; + } + return acc + d; +} +function tileIdToZxy(i) { + let acc = 0; + const z = 0; + for (let z2 = 0; z2 < 27; z2++) { + const numTiles = (1 << z2) * (1 << z2); + if (acc + numTiles > i) { + return idOnLevel(z2, i - acc); + } + acc += numTiles; + } + throw Error("Tile zoom level exceeds max safe number limit (26)"); +} +var Compression = /* @__PURE__ */ ((Compression2) => { + Compression2[Compression2["Unknown"] = 0] = "Unknown"; + Compression2[Compression2["None"] = 1] = "None"; + Compression2[Compression2["Gzip"] = 2] = "Gzip"; + Compression2[Compression2["Brotli"] = 3] = "Brotli"; + Compression2[Compression2["Zstd"] = 4] = "Zstd"; + return Compression2; +})(Compression || {}); +function defaultDecompress(buf, compression) { + return __async(this, null, function* () { + if (compression === 1 /* None */ || compression === 0 /* Unknown */) { + return buf; + } + if (compression === 2 /* Gzip */) { + if (typeof globalThis.DecompressionStream === "undefined") { + return decompressSync(new Uint8Array(buf)); + } + const stream = new Response(buf).body; + if (!stream) { + throw Error("Failed to read response stream"); + } + const result = stream.pipeThrough( + // biome-ignore lint: needed to detect DecompressionStream in browser+node+cloudflare workers + new globalThis.DecompressionStream("gzip") + ); + return new Response(result).arrayBuffer(); + } + throw Error("Compression method not supported"); + }); +} +var TileType = /* @__PURE__ */ ((TileType2) => { + TileType2[TileType2["Unknown"] = 0] = "Unknown"; + TileType2[TileType2["Mvt"] = 1] = "Mvt"; + TileType2[TileType2["Png"] = 2] = "Png"; + TileType2[TileType2["Jpeg"] = 3] = "Jpeg"; + TileType2[TileType2["Webp"] = 4] = "Webp"; + TileType2[TileType2["Avif"] = 5] = "Avif"; + return TileType2; +})(TileType || {}); +function tileTypeExt(t) { + if (t === 1 /* Mvt */) + return ".mvt"; + if (t === 2 /* Png */) + return ".png"; + if (t === 3 /* Jpeg */) + return ".jpg"; + if (t === 4 /* Webp */) + return ".webp"; + if (t === 5 /* Avif */) + return ".avif"; + return ""; +} +var HEADER_SIZE_BYTES = 127; +function findTile(entries, tileId) { + let m = 0; + let n = entries.length - 1; + while (m <= n) { + const k = n + m >> 1; + const cmp = tileId - entries[k].tileId; + if (cmp > 0) { + m = k + 1; + } else if (cmp < 0) { + n = k - 1; + } else { + return entries[k]; + } + } + if (n >= 0) { + if (entries[n].runLength === 0) { + return entries[n]; + } + if (tileId - entries[n].tileId < entries[n].runLength) { + return entries[n]; + } + } + return null; +} +var FileSource = class { + constructor(file) { + this.file = file; + } + getKey() { + return this.file.name; + } + getBytes(offset, length) { + return __async(this, null, function* () { + const blob = this.file.slice(offset, offset + length); + const a = yield blob.arrayBuffer(); + return { data: a }; + }); + } +}; +var FetchSource = class { + constructor(url, customHeaders = new Headers()) { + this.url = url; + this.customHeaders = customHeaders; + this.mustReload = false; + let userAgent = ""; + if ("navigator" in globalThis) { + userAgent = globalThis.navigator.userAgent || ""; + } + const isWindows = userAgent.indexOf("Windows") > -1; + const isChromiumBased = /Chrome|Chromium|Edg|OPR|Brave/.test(userAgent); + this.chromeWindowsNoCache = false; + if (isWindows && isChromiumBased) { + this.chromeWindowsNoCache = true; + } + } + getKey() { + return this.url; + } + /** + * Mutate the custom [Headers](https://developer.mozilla.org/en-US/docs/Web/API/Headers) set for all requests to the remote archive. + */ + setHeaders(customHeaders) { + this.customHeaders = customHeaders; + } + getBytes(offset, length, passedSignal, etag) { + return __async(this, null, function* () { + let controller; + let signal; + if (passedSignal) { + signal = passedSignal; + } else { + controller = new AbortController(); + signal = controller.signal; + } + const requestHeaders = new Headers(this.customHeaders); + requestHeaders.set("range", `bytes=${offset}-${offset + length - 1}`); + let cache; + if (this.mustReload) { + cache = "reload"; + } else if (this.chromeWindowsNoCache) { + cache = "no-store"; + } + let resp = yield fetch(this.url, { + signal, + cache, + headers: requestHeaders + //biome-ignore lint: "cache" is incompatible between cloudflare workers and browser + }); + if (offset === 0 && resp.status === 416) { + const contentRange = resp.headers.get("Content-Range"); + if (!contentRange || !contentRange.startsWith("bytes */")) { + throw Error("Missing content-length on 416 response"); + } + const actualLength = +contentRange.substr(8); + resp = yield fetch(this.url, { + signal, + cache: "reload", + headers: { range: `bytes=0-${actualLength - 1}` } + //biome-ignore lint: "cache" is incompatible between cloudflare workers and browser + }); + } + let newEtag = resp.headers.get("Etag"); + if (newEtag == null ? void 0 : newEtag.startsWith("W/")) { + newEtag = null; + } + if (resp.status === 416 || etag && newEtag && newEtag !== etag) { + this.mustReload = true; + throw new EtagMismatch( + `Server returned non-matching ETag ${etag} after one retry. Check browser extensions and servers for issues that may affect correct ETag headers.` + ); + } + if (resp.status >= 300) { + throw Error(`Bad response code: ${resp.status}`); + } + const contentLength = resp.headers.get("Content-Length"); + if (resp.status === 200 && (!contentLength || +contentLength > length)) { + if (controller) + controller.abort(); + throw Error( + "Server returned no content-length header or content-length exceeding request. Check that your storage backend supports HTTP Byte Serving." + ); + } + const a = yield resp.arrayBuffer(); + return { + data: a, + etag: newEtag || void 0, + cacheControl: resp.headers.get("Cache-Control") || void 0, + expires: resp.headers.get("Expires") || void 0 + }; + }); + } +}; +function getUint64(v, offset) { + const wh = v.getUint32(offset + 4, true); + const wl = v.getUint32(offset + 0, true); + return wh * __pow(2, 32) + wl; +} +function bytesToHeader(bytes, etag) { + const v = new DataView(bytes); + const specVersion = v.getUint8(7); + if (specVersion > 3) { + throw Error( + `Archive is spec version ${specVersion} but this library supports up to spec version 3` + ); + } + return { + specVersion, + rootDirectoryOffset: getUint64(v, 8), + rootDirectoryLength: getUint64(v, 16), + jsonMetadataOffset: getUint64(v, 24), + jsonMetadataLength: getUint64(v, 32), + leafDirectoryOffset: getUint64(v, 40), + leafDirectoryLength: getUint64(v, 48), + tileDataOffset: getUint64(v, 56), + tileDataLength: getUint64(v, 64), + numAddressedTiles: getUint64(v, 72), + numTileEntries: getUint64(v, 80), + numTileContents: getUint64(v, 88), + clustered: v.getUint8(96) === 1, + internalCompression: v.getUint8(97), + tileCompression: v.getUint8(98), + tileType: v.getUint8(99), + minZoom: v.getUint8(100), + maxZoom: v.getUint8(101), + minLon: v.getInt32(102, true) / 1e7, + minLat: v.getInt32(106, true) / 1e7, + maxLon: v.getInt32(110, true) / 1e7, + maxLat: v.getInt32(114, true) / 1e7, + centerZoom: v.getUint8(118), + centerLon: v.getInt32(119, true) / 1e7, + centerLat: v.getInt32(123, true) / 1e7, + etag + }; +} +function deserializeIndex(buffer) { + const p = { buf: new Uint8Array(buffer), pos: 0 }; + const numEntries = readVarint(p); + const entries = []; + let lastId = 0; + for (let i = 0; i < numEntries; i++) { + const v = readVarint(p); + entries.push({ tileId: lastId + v, offset: 0, length: 0, runLength: 1 }); + lastId += v; + } + for (let i = 0; i < numEntries; i++) { + entries[i].runLength = readVarint(p); + } + for (let i = 0; i < numEntries; i++) { + entries[i].length = readVarint(p); + } + for (let i = 0; i < numEntries; i++) { + const v = readVarint(p); + if (v === 0 && i > 0) { + entries[i].offset = entries[i - 1].offset + entries[i - 1].length; + } else { + entries[i].offset = v - 1; + } + } + return entries; +} +function detectVersion(a) { + const v = new DataView(a); + if (v.getUint16(2, true) === 2) { + console.warn( + "PMTiles spec version 2 has been deprecated; please see github.com/protomaps/PMTiles for tools to upgrade" + ); + return 2; + } + if (v.getUint16(2, true) === 1) { + console.warn( + "PMTiles spec version 1 has been deprecated; please see github.com/protomaps/PMTiles for tools to upgrade" + ); + return 1; + } + return 3; +} +var EtagMismatch = class extends Error { +}; +function getHeaderAndRoot(source, decompress) { + return __async(this, null, function* () { + const resp = yield source.getBytes(0, 16384); + const v = new DataView(resp.data); + if (v.getUint16(0, true) !== 19792) { + throw new Error("Wrong magic number for PMTiles archive"); + } + if (detectVersion(resp.data) < 3) { + return [yield v2_default.getHeader(source)]; + } + const headerData = resp.data.slice(0, HEADER_SIZE_BYTES); + const header = bytesToHeader(headerData, resp.etag); + const rootDirData = resp.data.slice( + header.rootDirectoryOffset, + header.rootDirectoryOffset + header.rootDirectoryLength + ); + const dirKey = `${source.getKey()}|${header.etag || ""}|${header.rootDirectoryOffset}|${header.rootDirectoryLength}`; + const rootDir = deserializeIndex( + yield decompress(rootDirData, header.internalCompression) + ); + return [header, [dirKey, rootDir.length, rootDir]]; + }); +} +function getDirectory(source, decompress, offset, length, header) { + return __async(this, null, function* () { + const resp = yield source.getBytes(offset, length, void 0, header.etag); + const data = yield decompress(resp.data, header.internalCompression); + const directory = deserializeIndex(data); + if (directory.length === 0) { + throw new Error("Empty directory is invalid"); + } + return directory; + }); +} +var ResolvedValueCache = class { + constructor(maxCacheEntries = 100, prefetch = true, decompress = defaultDecompress) { + this.cache = /* @__PURE__ */ new Map(); + this.maxCacheEntries = maxCacheEntries; + this.counter = 1; + this.decompress = decompress; + } + getHeader(source) { + return __async(this, null, function* () { + const cacheKey = source.getKey(); + const cacheValue = this.cache.get(cacheKey); + if (cacheValue) { + cacheValue.lastUsed = this.counter++; + const data = cacheValue.data; + return data; + } + const res = yield getHeaderAndRoot(source, this.decompress); + if (res[1]) { + this.cache.set(res[1][0], { + lastUsed: this.counter++, + data: res[1][2] + }); + } + this.cache.set(cacheKey, { + lastUsed: this.counter++, + data: res[0] + }); + this.prune(); + return res[0]; + }); + } + getDirectory(source, offset, length, header) { + return __async(this, null, function* () { + const cacheKey = `${source.getKey()}|${header.etag || ""}|${offset}|${length}`; + const cacheValue = this.cache.get(cacheKey); + if (cacheValue) { + cacheValue.lastUsed = this.counter++; + const data = cacheValue.data; + return data; + } + const directory = yield getDirectory( + source, + this.decompress, + offset, + length, + header + ); + this.cache.set(cacheKey, { + lastUsed: this.counter++, + data: directory + }); + this.prune(); + return directory; + }); + } + // for v2 backwards compatibility + getArrayBuffer(source, offset, length, header) { + return __async(this, null, function* () { + const cacheKey = `${source.getKey()}|${header.etag || ""}|${offset}|${length}`; + const cacheValue = this.cache.get(cacheKey); + if (cacheValue) { + cacheValue.lastUsed = this.counter++; + const data = yield cacheValue.data; + return data; + } + const resp = yield source.getBytes(offset, length, void 0, header.etag); + this.cache.set(cacheKey, { + lastUsed: this.counter++, + data: resp.data + }); + this.prune(); + return resp.data; + }); + } + prune() { + if (this.cache.size > this.maxCacheEntries) { + let minUsed = Infinity; + let minKey = void 0; + this.cache.forEach((cacheValue, key) => { + if (cacheValue.lastUsed < minUsed) { + minUsed = cacheValue.lastUsed; + minKey = key; + } + }); + if (minKey) { + this.cache.delete(minKey); + } + } + } + invalidate(source) { + return __async(this, null, function* () { + this.cache.delete(source.getKey()); + }); + } +}; +var SharedPromiseCache = class { + constructor(maxCacheEntries = 100, prefetch = true, decompress = defaultDecompress) { + this.cache = /* @__PURE__ */ new Map(); + this.invalidations = /* @__PURE__ */ new Map(); + this.maxCacheEntries = maxCacheEntries; + this.counter = 1; + this.decompress = decompress; + } + getHeader(source) { + return __async(this, null, function* () { + const cacheKey = source.getKey(); + const cacheValue = this.cache.get(cacheKey); + if (cacheValue) { + cacheValue.lastUsed = this.counter++; + const data = yield cacheValue.data; + return data; + } + const p = new Promise((resolve, reject) => { + getHeaderAndRoot(source, this.decompress).then((res) => { + if (res[1]) { + this.cache.set(res[1][0], { + lastUsed: this.counter++, + data: Promise.resolve(res[1][2]) + }); + } + resolve(res[0]); + this.prune(); + }).catch((e) => { + reject(e); + }); + }); + this.cache.set(cacheKey, { lastUsed: this.counter++, data: p }); + return p; + }); + } + getDirectory(source, offset, length, header) { + return __async(this, null, function* () { + const cacheKey = `${source.getKey()}|${header.etag || ""}|${offset}|${length}`; + const cacheValue = this.cache.get(cacheKey); + if (cacheValue) { + cacheValue.lastUsed = this.counter++; + const data = yield cacheValue.data; + return data; + } + const p = new Promise((resolve, reject) => { + getDirectory(source, this.decompress, offset, length, header).then((directory) => { + resolve(directory); + this.prune(); + }).catch((e) => { + reject(e); + }); + }); + this.cache.set(cacheKey, { lastUsed: this.counter++, data: p }); + return p; + }); + } + // for v2 backwards compatibility + getArrayBuffer(source, offset, length, header) { + return __async(this, null, function* () { + const cacheKey = `${source.getKey()}|${header.etag || ""}|${offset}|${length}`; + const cacheValue = this.cache.get(cacheKey); + if (cacheValue) { + cacheValue.lastUsed = this.counter++; + const data = yield cacheValue.data; + return data; + } + const p = new Promise((resolve, reject) => { + source.getBytes(offset, length, void 0, header.etag).then((resp) => { + resolve(resp.data); + if (this.cache.has(cacheKey)) { + } + this.prune(); + }).catch((e) => { + reject(e); + }); + }); + this.cache.set(cacheKey, { lastUsed: this.counter++, data: p }); + return p; + }); + } + prune() { + if (this.cache.size >= this.maxCacheEntries) { + let minUsed = Infinity; + let minKey = void 0; + this.cache.forEach((cacheValue, key) => { + if (cacheValue.lastUsed < minUsed) { + minUsed = cacheValue.lastUsed; + minKey = key; + } + }); + if (minKey) { + this.cache.delete(minKey); + } + } + } + invalidate(source) { + return __async(this, null, function* () { + const key = source.getKey(); + if (this.invalidations.get(key)) { + return yield this.invalidations.get(key); + } + this.cache.delete(source.getKey()); + const p = new Promise((resolve, reject) => { + this.getHeader(source).then((h) => { + resolve(); + this.invalidations.delete(key); + }).catch((e) => { + reject(e); + }); + }); + this.invalidations.set(key, p); + }); + } +}; +var PMTiles = class { + constructor(source, cache, decompress) { + if (typeof source === "string") { + this.source = new FetchSource(source); + } else { + this.source = source; + } + if (decompress) { + this.decompress = decompress; + } else { + this.decompress = defaultDecompress; + } + if (cache) { + this.cache = cache; + } else { + this.cache = new SharedPromiseCache(); + } + } + /** + * Return the header of the archive, + * including information such as tile type, min/max zoom, bounds, and summary statistics. + */ + getHeader() { + return __async(this, null, function* () { + return yield this.cache.getHeader(this.source); + }); + } + /** @hidden */ + getZxyAttempt(z, x, y, signal) { + return __async(this, null, function* () { + const tileId = zxyToTileId(z, x, y); + const header = yield this.cache.getHeader(this.source); + if (header.specVersion < 3) { + return v2_default.getZxy(header, this.source, this.cache, z, x, y, signal); + } + if (z < header.minZoom || z > header.maxZoom) { + return void 0; + } + let dO = header.rootDirectoryOffset; + let dL = header.rootDirectoryLength; + for (let depth = 0; depth <= 3; depth++) { + const directory = yield this.cache.getDirectory( + this.source, + dO, + dL, + header + ); + const entry = findTile(directory, tileId); + if (entry) { + if (entry.runLength > 0) { + const resp = yield this.source.getBytes( + header.tileDataOffset + entry.offset, + entry.length, + signal, + header.etag + ); + return { + data: yield this.decompress(resp.data, header.tileCompression), + cacheControl: resp.cacheControl, + expires: resp.expires + }; + } + dO = header.leafDirectoryOffset + entry.offset; + dL = entry.length; + } else { + return void 0; + } + } + throw Error("Maximum directory depth exceeded"); + }); + } + /** + * Primary method to get a single tile's bytes from an archive. + * + * Returns undefined if the tile does not exist in the archive. + */ + getZxy(z, x, y, signal) { + return __async(this, null, function* () { + try { + return yield this.getZxyAttempt(z, x, y, signal); + } catch (e) { + if (e instanceof EtagMismatch) { + this.cache.invalidate(this.source); + return yield this.getZxyAttempt(z, x, y, signal); + } + throw e; + } + }); + } + /** @hidden */ + getMetadataAttempt() { + return __async(this, null, function* () { + const header = yield this.cache.getHeader(this.source); + const resp = yield this.source.getBytes( + header.jsonMetadataOffset, + header.jsonMetadataLength, + void 0, + header.etag + ); + const decompressed = yield this.decompress( + resp.data, + header.internalCompression + ); + const dec = new TextDecoder("utf-8"); + return JSON.parse(dec.decode(decompressed)); + }); + } + /** + * Return the arbitrary JSON metadata of the archive. + */ + getMetadata() { + return __async(this, null, function* () { + try { + return yield this.getMetadataAttempt(); + } catch (e) { + if (e instanceof EtagMismatch) { + this.cache.invalidate(this.source); + return yield this.getMetadataAttempt(); + } + throw e; + } + }); + } + /** + * Construct a [TileJSON](https://github.com/mapbox/tilejson-spec) object. + * + * baseTilesUrl is the desired tiles URL, excluding the suffix `/{z}/{x}/{y}.{ext}`. + * For example, if the desired URL is `http://example.com/tileset/{z}/{x}/{y}.mvt`, + * the baseTilesUrl should be `https://example.com/tileset`. + */ + getTileJson(baseTilesUrl) { + return __async(this, null, function* () { + const header = yield this.getHeader(); + const metadata = yield this.getMetadata(); + const ext = tileTypeExt(header.tileType); + return { + tilejson: "3.0.0", + scheme: "xyz", + tiles: [`${baseTilesUrl}/{z}/{x}/{y}${ext}`], + // biome-ignore lint: TileJSON spec + vector_layers: metadata.vector_layers, + attribution: metadata.attribution, + description: metadata.description, + name: metadata.name, + version: metadata.version, + bounds: [header.minLon, header.minLat, header.maxLon, header.maxLat], + center: [header.centerLon, header.centerLat, header.centerZoom], + minzoom: header.minZoom, + maxzoom: header.maxZoom + }; + }); + } +}; + + + +/***/ }) + +/******/ }); +/************************************************************************/ +/******/ // The module cache +/******/ var __webpack_module_cache__ = {}; +/******/ +/******/ // The require function +/******/ function __webpack_require__(moduleId) { +/******/ // Check if module is in cache +/******/ var cachedModule = __webpack_module_cache__[moduleId]; +/******/ if (cachedModule !== undefined) { +/******/ return cachedModule.exports; +/******/ } +/******/ // Create a new module (and put it into the cache) +/******/ var module = __webpack_module_cache__[moduleId] = { +/******/ // no module.id needed +/******/ // no module.loaded needed +/******/ exports: {} +/******/ }; +/******/ +/******/ // Execute the module function +/******/ __webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__); +/******/ +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } +/******/ +/************************************************************************/ +/******/ /* webpack/runtime/compat get default export */ +/******/ (() => { +/******/ // getDefaultExport function for compatibility with non-harmony modules +/******/ __webpack_require__.n = (module) => { +/******/ var getter = module && module.__esModule ? +/******/ () => (module['default']) : +/******/ () => (module); +/******/ __webpack_require__.d(getter, { a: getter }); +/******/ return getter; +/******/ }; +/******/ })(); +/******/ +/******/ /* webpack/runtime/define property getters */ +/******/ (() => { +/******/ // define getter functions for harmony exports +/******/ __webpack_require__.d = (exports, definition) => { +/******/ for(var key in definition) { +/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { +/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); +/******/ } +/******/ } +/******/ }; +/******/ })(); +/******/ +/******/ /* webpack/runtime/hasOwnProperty shorthand */ +/******/ (() => { +/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop)) +/******/ })(); +/******/ +/******/ /* webpack/runtime/make namespace object */ +/******/ (() => { +/******/ // define __esModule on exports +/******/ __webpack_require__.r = (exports) => { +/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { +/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); +/******/ } +/******/ Object.defineProperty(exports, '__esModule', { value: true }); +/******/ }; +/******/ })(); +/******/ +/************************************************************************/ +var __webpack_exports__ = {}; +// This entry need to be wrapped in an IIFE because it need to be in strict mode. +(() => { +"use strict"; +/*!************************!*\ + !*** ./src/ts/Main.ts ***! + \************************/ +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _Map__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Map */ "./src/ts/Map.ts"); + + +})(); + +/******/ })() +; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGljL2pzL2J1bmRsZS5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQW1DO0FBQ087QUFDaUM7QUFDUDtBQUlwRSxJQUFJLFFBQVEsR0FBRyxJQUFJLDZDQUFnQixFQUFFLENBQUM7QUFDdEMsb0RBQXNCLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUdqRCxJQUFNLEdBQUcsR0FBRyxJQUFJLDRDQUFjLENBQUM7SUFDN0IsU0FBUyxFQUFFLEtBQUs7SUFDaEIsSUFBSSxFQUFFLENBQUM7SUFDUCxPQUFPLEVBQUUsQ0FBQztJQUNWLE9BQU8sRUFBRSxDQUFDO0lBQ1YsTUFBTSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNkLEtBQUssRUFBRTtRQUNMLE9BQU8sRUFBRSxDQUFDO1FBQ1YsT0FBTyxFQUFFO1lBQ1AsS0FBSyxFQUFFO2dCQUNMLElBQUksRUFBRSxRQUFRO2dCQUVkLEdBQUcsRUFBRSxnRUFBZ0U7YUFDdEU7U0FDRjtRQUVELE1BQU0sRUFBRSxvRkFBa0I7S0FDM0I7Q0FDRixDQUFDLENBQUM7QUFNSCxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksMERBQTRCLEVBQUUsQ0FBQyxDQUFDO0FBRW5ELGlGQUFnQixDQUFDLEdBQUcsQ0FBQyxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7O0FDckN0QixJQUFJLGNBQWMsR0FBRyxJQUFJLENBQUM7QUFFbkIsSUFBTSxnQkFBZ0IsR0FBRyxVQUFDLEdBQW1CO0lBQ2xELEdBQUcsQ0FBQyxFQUFFLENBQUMsTUFBTSxFQUFFO1FBQ2IsR0FBRyxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUU7WUFDdEIsSUFBSSxFQUFFLFNBQVM7WUFDZixJQUFJLEVBQUUsMkJBQTJCO1lBQ2pDLFNBQVMsRUFBRSxRQUFRO1NBQ3BCLENBQUMsQ0FBQztRQUlILEdBQUcsQ0FBQyxRQUFRLENBQUM7WUFDWCxFQUFFLEVBQUUsYUFBYTtZQUNqQixJQUFJLEVBQUUsTUFBTTtZQUNaLE1BQU0sRUFBRSxRQUFRO1lBQ2hCLE1BQU0sRUFBRSxFQUFFO1lBQ1YsS0FBSyxFQUFFO2dCQUNMLFlBQVksRUFBRSxTQUFTO2dCQUN2QixjQUFjLEVBQUU7b0JBQ2QsTUFBTTtvQkFDTixDQUFDLFNBQVMsRUFBRSxDQUFDLGVBQWUsRUFBRSxPQUFPLENBQUMsRUFBRSxLQUFLLENBQUM7b0JBQzlDLEdBQUc7b0JBQ0gsQ0FBQztpQkFDRjthQUNGO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsR0FBRyxDQUFDLFFBQVEsQ0FBQztZQUNYLEVBQUUsRUFBRSxlQUFlO1lBQ25CLElBQUksRUFBRSxNQUFNO1lBQ1osTUFBTSxFQUFFLFFBQVE7WUFDaEIsTUFBTSxFQUFFO2dCQUNOLFdBQVcsRUFBRSxPQUFPO2dCQUNwQixVQUFVLEVBQUUsT0FBTzthQUNwQjtZQUNELEtBQUssRUFBRTtnQkFDTCxZQUFZLEVBQUUsU0FBUztnQkFDdkIsWUFBWSxFQUFFO29CQUNaLE1BQU07b0JBQ04sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxlQUFlLEVBQUUsT0FBTyxDQUFDLEVBQUUsS0FBSyxDQUFDO29CQUM5QyxDQUFDO29CQUNELEdBQUc7aUJBQ0o7Z0JBQ0QsY0FBYyxFQUFFLENBQUM7YUFDbEI7U0FDRixDQUFDLENBQUM7UUFJSCxHQUFHLENBQUMsRUFBRSxDQUFDLFdBQVcsRUFBRSxhQUFhLEVBQUUsVUFBQyxDQUFDO1lBQ25DLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUN6QixJQUFJLGNBQWMsRUFBRTtvQkFDbEIsR0FBRyxDQUFDLGVBQWUsQ0FDakIsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxjQUFjLEVBQUUsRUFDeEMsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQ2pCLENBQUM7aUJBQ0g7Z0JBQ0QsY0FBYyxHQUFHLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUNsQyxHQUFHLENBQUMsZUFBZSxDQUNqQixFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLGNBQWMsRUFBRSxFQUN4QyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FDaEIsQ0FBQzthQUNIO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFJSCxHQUFHLENBQUMsRUFBRSxDQUFDLFlBQVksRUFBRSxhQUFhLEVBQUU7WUFDbEMsSUFBSSxjQUFjLEVBQUU7Z0JBQ2xCLEdBQUcsQ0FBQyxlQUFlLENBQ2pCLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsY0FBYyxFQUFFLEVBQ3hDLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxDQUNqQixDQUFDO2FBQ0g7WUFDRCxjQUFjLEdBQUcsSUFBSSxDQUFDO1FBQ3hCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7QUM1RUssSUFBTSxrQkFBa0IsR0FBeUI7SUFDdEQ7UUFDRSxFQUFFLEVBQUUsUUFBUTtRQUNaLE1BQU0sRUFBRSxPQUFPO1FBQ2YsY0FBYyxFQUFFLFFBQVE7UUFDeEIsSUFBSSxFQUFFLE1BQU07UUFDWixLQUFLLEVBQUU7WUFDTCxZQUFZLEVBQUUsU0FBUztTQUN4QjtLQUNGO0lBQ0Q7UUFDRSxFQUFFLEVBQUUsT0FBTztRQUNYLE1BQU0sRUFBRSxPQUFPO1FBQ2YsY0FBYyxFQUFFLE9BQU87UUFDdkIsTUFBTSxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUMsZUFBZSxDQUFDLEVBQUUsU0FBUyxDQUFDO1FBQzVDLElBQUksRUFBRSxNQUFNO1FBQ1osS0FBSyxFQUFFO1lBQ0wsWUFBWSxFQUFFLFNBQVM7U0FDeEI7S0FDRjtJQUNEO1FBQ0UsRUFBRSxFQUFFLFdBQVc7UUFDZixNQUFNLEVBQUUsT0FBTztRQUNmLGNBQWMsRUFBRSxXQUFXO1FBQzNCLElBQUksRUFBRSxNQUFNO1FBQ1osS0FBSyxFQUFFO1lBQ0wsWUFBWSxFQUFFLFNBQVM7U0FDeEI7S0FDRjtJQUNEO1FBQ0UsRUFBRSxFQUFFLE9BQU87UUFDWCxNQUFNLEVBQUUsT0FBTztRQUNmLGNBQWMsRUFBRSxPQUFPO1FBQ3ZCLElBQUksRUFBRSxNQUFNO1FBQ1osS0FBSyxFQUFFO1lBQ0wsWUFBWSxFQUFFLFNBQVM7U0FDeEI7S0FDRjtDQUNGLENBQUM7Ozs7Ozs7Ozs7O0FDeENGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUE0RDtBQUM1RCxDQUN5RztBQUN6RyxDQUFDLHVCQUF1Qjs7QUFFeEI7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxxREFBcUQsd0NBQXdDLHVDQUF1Qzs7QUFFcEk7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsNEZBQTRGLHlCQUF5QjtBQUNySDs7QUFFQTtBQUNBOzs7O0FBSUEseUNBQXlDLGFBQWEsb0JBQW9CLDBDQUEwQyxjQUFjLElBQUksY0FBYyxTQUFTLE9BQU8sY0FBYyxJQUFJLGVBQWUsU0FBUyxPQUFPLGNBQWMsTUFBTSxpRUFBaUUsTUFBTSxlQUFlLGdDQUFnQyxHQUFHLGNBQWMsc0ZBQXNGLG9EQUFvRCxRQUFRLGdCQUFnQixtQkFBbUIsYUFBYSxpQkFBaUIsNEJBQTRCLGlCQUFpQiw0QkFBNEIsaUJBQWlCLDRCQUE0Qix5QkFBeUIsb0NBQW9DLHdCQUF3QixtQ0FBbUMsa0JBQWtCLDZCQUE2QixpQkFBaUIsNEJBQTRCLG9CQUFvQiwrQkFBK0IsNEJBQTRCLHVDQUF1QyxxQkFBcUIsZ0NBQWdDLGlCQUFpQiw0QkFBNEIsaUJBQWlCLDRCQUE0QixrQkFBa0IsNkJBQTZCLGdCQUFnQiw4Q0FBOEMsb0JBQW9CLGtDQUFrQyxrQkFBa0Isa0NBQWtDLHFCQUFxQiw4QkFBOEIsZUFBZSxrQkFBa0IsaUNBQWlDLHFCQUFxQix5Q0FBeUMsdUJBQXVCLGtDQUFrQyw0QkFBNEIsdURBQXVELHNCQUFzQiw4QkFBOEIsb0RBQW9ELGtCQUFrQixvQ0FBb0Msa0JBQWtCLG9DQUFvQyxtQkFBbUIsZ0NBQWdDLGtCQUFrQixnQ0FBZ0MsMEJBQTBCLG9DQUFvQyx5QkFBeUIsb0NBQW9DLGtCQUFrQixrQ0FBa0Msa0JBQWtCLGFBQWEsb0NBQW9DLHFCQUFxQixvREFBb0QsOENBQThDLDZCQUE2QixvRUFBb0UsOERBQThELG1CQUFtQixpRUFBaUUsdUJBQXVCLDZEQUE2RCxlQUFlLG9CQUFvQix5S0FBeUssYUFBYSx5QkFBeUIseUNBQXlDLDBCQUEwQix5Q0FBeUMsb0NBQW9DLHlDQUF5QywyQkFBMkIscUNBQXFDLGdCQUFnQixnQkFBZ0IsSUFBSSxLQUFLLDZCQUE2QiwwQkFBMEIscUNBQXFDLDBCQUEwQixRQUFRLFlBQVksWUFBWSxrREFBa0QsNkJBQTZCLFNBQVMscUJBQXFCLGtEQUFrRCxXQUFXLFFBQVEsYUFBYSwySUFBMkksYUFBYSx3QkFBd0Isc0RBQXNELHNCQUFzQixFQUFFLE1BQU0sWUFBWSxNQUFNLEtBQUssWUFBWSxtQkFBbUIsRUFBRSxHQUFHLElBQUksR0FBRyxJQUFJLHdDQUF3QyxxQ0FBcUMsWUFBWSxRQUFRLHlCQUF5QixLQUFLLFFBQVEsYUFBYSxvQkFBb0IsdUJBQXVCLHFCQUFxQix3QkFBd0Isa0JBQWtCLGlDQUFpQyxrQkFBa0IsOEJBQThCLGlCQUFpQixtQkFBbUIsNENBQTRDLFNBQVMsUUFBUSxrQkFBa0IsV0FBVyw0Q0FBNEMsU0FBUyxrQkFBa0IsV0FBVyxvREFBb0QsU0FBUyxjQUFjLGdFQUFnRSxXQUFXLGNBQWMsOERBQThELGtCQUFrQiwrQ0FBK0MsY0FBYyx5RkFBeUYsV0FBVyxjQUFjLGlFQUFpRSx3QkFBd0IscUdBQXFHLHNCQUFzQix5Q0FBeUMsOEVBQThFLDBCQUEwQixZQUFZLEVBQUUsSUFBSSxnQ0FBZ0MseUZBQXlGLEVBQUUsR0FBRywyREFBMkQsd0NBQXdDLHlGQUF5RixRQUFRLE1BQU0sc0VBQXNFLFVBQVUsa0JBQWtCLEdBQUcsMkJBQTJCLFdBQVcsTUFBTSxhQUFhLHNCQUFzQixTQUFTLFFBQVEsWUFBWSxHQUFHLFFBQVEscUJBQXFCLGFBQWEsb0JBQW9CLFNBQVMsMkhBQTJILGdCQUFnQixjQUFjLCtEQUErRCw0QkFBNEIsc0JBQXNCLHFCQUFxQixvQkFBb0IsR0FBRyxHQUFHLEVBQUUsS0FBSyxFQUFFLDREQUE0RCw4SUFBOEksd0RBQXdELGlCQUFpQixtQkFBbUIsK0VBQStFLCtCQUErQixJQUFJLG9FQUFvRSwwSEFBMEgseUNBQXlDLDJCQUEyQiwwSEFBMEgsRUFBRSxxRkFBcUYsdUJBQXVCLFVBQVUsdUJBQXVCLDJDQUEyQyxNQUFNLDZGQUE2RixnQkFBZ0IsOEJBQThCLFFBQVEscUZBQXFGLEdBQUcsTUFBTSwrRUFBK0UsNENBQTRDLElBQUksTUFBTSxxQkFBcUIsNEJBQTRCLE1BQU0sMkJBQTJCLDBHQUEwRyw0REFBNEQsd01BQXdNLDRCQUE0QixlQUFlLHdGQUF3RixpQkFBaUIsdUJBQXVCLDBCQUEwQixTQUFTLGlCQUFpQixHQUFHLGdHQUFnRyxHQUFHLE1BQU0sK0JBQStCLHlDQUF5QyxFQUFFLDBDQUEwQyx5Q0FBeUMsa0JBQWtCLG1CQUFtQixHQUFHLE9BQU8sY0FBYywyRkFBMkYscUNBQXFDLGdEQUFnRCxrQkFBa0IsMERBQTBELGtCQUFrQixZQUFZLHdCQUF3QiwyQkFBMkIsUUFBUSxrQkFBa0IsRUFBRSx3QkFBd0Isa0JBQWtCLGtCQUFrQixFQUFFLGlCQUFpQixRQUFRLE9BQU8sUUFBUSxRQUFRLDBDQUEwQyw2QkFBNkIsU0FBUyxpRUFBaUUsVUFBVSwyREFBMkQsc0VBQXNFLFVBQVUsb0NBQW9DLEdBQUcsZUFBZSxvQkFBb0IsY0FBYywwRUFBMEUsZ0NBQWdDLCtGQUErRiw4REFBOEQsNEJBQTRCLGtIQUFrSCw0Q0FBNEMsWUFBWSxXQUFXLG9OQUFvTixzQkFBc0IsNkRBQTZELE9BQU8sa0JBQWtCLFNBQVMsbUNBQW1DLE9BQU8sY0FBYyxXQUFXLFNBQVMsU0FBUyw0QkFBNEIsT0FBTyxjQUFjLFVBQVUsbURBQW1ELFFBQVEsd0NBQXdDLFFBQVEsYUFBYSxNQUFNLFdBQVcsYUFBYSxrQkFBa0IsVUFBVSxlQUFlLFVBQVUsMkJBQTJCLFNBQVMsY0FBYyxTQUFTLGNBQWMsYUFBYSxrQkFBa0IsU0FBUyx3Q0FBd0MsVUFBVSxLQUFLLGVBQWUsNEhBQTRILE1BQU0sZ0NBQWdDLFdBQVcsTUFBTSxjQUFjLFFBQVEsNEJBQTRCLFNBQVMsNkVBQTZFLFNBQVMsb0JBQW9CLE1BQU0sUUFBUSxlQUFlLFVBQVUsd0JBQXdCLFVBQVUseUJBQXlCLGNBQWMsY0FBYyxZQUFZLGlCQUFpQixXQUFXLDBCQUEwQixNQUFNLFVBQVUsZ0JBQWdCLE1BQU0sZ0NBQWdDLFdBQVcsTUFBTSxjQUFjLFFBQVEsNEJBQTRCLFNBQVMsNkVBQTZFLFVBQVUsd0JBQXdCLFVBQVUseUJBQXlCLFdBQVcseUNBQXlDLFNBQVMsb0JBQW9CLE1BQU0sUUFBUSxlQUFlLGNBQWMsY0FBYyxXQUFXLDBCQUEwQixNQUFNLFVBQVUsb0JBQW9CLE1BQU0sZ0NBQWdDLGlCQUFpQixNQUFNLGNBQWMsUUFBUSw0QkFBNEIsU0FBUyw2RUFBNkUsVUFBVSx3QkFBd0IsVUFBVSx5QkFBeUIsV0FBVyx5Q0FBeUMsY0FBYyxjQUFjLFdBQVcsb0JBQW9CLFlBQVksVUFBVSxXQUFXLGtCQUFrQixZQUFZLHdCQUF3QixhQUFhLHdCQUF3QixjQUFjLHdCQUF3QixZQUFZLHdCQUF3QixXQUFXLDBCQUEwQixNQUFNLFVBQVUsaUJBQWlCLE1BQU0sZ0NBQWdDLFlBQVksT0FBTyxxQkFBcUIsVUFBVSx5QkFBeUIsY0FBYyxjQUFjLFNBQVMsZ0RBQWdELFNBQVMsU0FBUyxZQUFZLDJCQUEyQixVQUFVLDBCQUEwQixnQkFBZ0IsbUNBQW1DLGlCQUFpQixjQUFjLG1CQUFtQixjQUFjLG9CQUFvQixTQUFTLGNBQWMsMEJBQTBCLGFBQWEsMEJBQTBCLFlBQVksa0JBQWtCLGVBQWUsTUFBTSxnQ0FBZ0MsVUFBVSxPQUFPLHdDQUF3QyxjQUFjLHlDQUF5Qyx1Q0FBdUMsZUFBZSxNQUFNLGdDQUFnQyxVQUFVLE1BQU0sMEJBQTBCLGNBQWMseUNBQXlDLHVDQUF1QyxRQUFRLElBQUksMEJBQTBCLE9BQU8sb0JBQW9CLE9BQU8sUUFBUSxVQUFVLFVBQVUsV0FBVyxvQkFBb0IsVUFBVSxhQUFhLGVBQWUsYUFBYSxXQUFXLFNBQVMsU0FBUyxjQUFjLGlCQUFpQixjQUFjLFVBQVUsbUNBQW1DLFVBQVUsbUNBQW1DLFNBQVMsY0FBYyxTQUFTLGNBQWMsUUFBUSxjQUFjLHlMQUF5TCxZQUFZLG9CQUFvQixVQUFVLFNBQVMsK0NBQStDLGNBQWMsaUJBQWlCLDBCQUEwQiw4Q0FBOEMsK0JBQStCLGFBQWEsb0JBQW9CLFVBQVUsU0FBUywrQ0FBK0MsZ0JBQWdCLG1CQUFtQiwwQkFBMEIsOENBQThDLCtCQUErQixhQUFhLG9CQUFvQixVQUFVLFNBQVMsK0NBQStDLGlCQUFpQixZQUFZLG9CQUFvQixVQUFVLFNBQVMsK0NBQStDLDBCQUEwQixZQUFZLG9CQUFvQixVQUFVLFNBQVMsK0NBQStDLGNBQWMsWUFBWSxvQkFBb0IsT0FBTyxTQUFTLFdBQVcsNEJBQTRCLG9DQUFvQyxpQ0FBaUMsY0FBYyxvQkFBb0IsUUFBUSxTQUFTLFVBQVUsNkJBQTZCLDhDQUE4QywrQkFBK0IscUJBQXFCLG1DQUFtQyxvQkFBb0IsY0FBYyxvQ0FBb0MsaUNBQWlDLHFCQUFxQixzQ0FBc0Msb0JBQW9CLGNBQWMsb0NBQW9DLGlDQUFpQyxrQkFBa0IsMEJBQTBCLDhDQUE4QywrQkFBK0IsYUFBYSxvQkFBb0IsVUFBVSxTQUFTLCtDQUErQyxnQkFBZ0Isb0JBQW9CLG9CQUFvQixRQUFRLFFBQVEsa0JBQWtCLDZCQUE2QixvQ0FBb0MsaUNBQWlDLG1CQUFtQiw4REFBOEQsMEJBQTBCLGNBQWMsb0NBQW9DLGlDQUFpQyx1QkFBdUIsc0NBQXNDLG9DQUFvQyxpQ0FBaUMsb0JBQW9CLDBCQUEwQiw4Q0FBOEMsK0JBQStCLG1CQUFtQixvQkFBb0IsT0FBTyxnQkFBZ0IsV0FBVyw0QkFBNEIsb0NBQW9DLGlDQUFpQyx1QkFBdUIsa0RBQWtELG1CQUFtQixjQUFjLG9DQUFvQyxpQ0FBaUMsaUJBQWlCLG9CQUFvQixRQUFRLFVBQVUsZ0JBQWdCLHFDQUFxQyxvQ0FBb0MsaUNBQWlDLDBCQUEwQiw4REFBOEQsb0NBQW9DLGlDQUFpQyxrQkFBa0IsMkVBQTJFLG9DQUFvQyxpQ0FBaUMsNEJBQTRCLG9CQUFvQixNQUFNLFlBQVksU0FBUyxvREFBb0Qsb0NBQW9DLGlDQUFpQyxjQUFjLCtHQUErRyw4Q0FBOEMsK0JBQStCLGtCQUFrQixvQkFBb0IsT0FBTyxTQUFTLFVBQVUsU0FBUyxpRUFBaUUsb0NBQW9DLGlDQUFpQywwQkFBMEIsMkdBQTJHLDBDQUEwQyxjQUFjLG9DQUFvQyxpQ0FBaUMsZUFBZSwyQ0FBMkMsOENBQThDLCtCQUErQixnQkFBZ0IsdUZBQXVGLDhDQUE4QywrQkFBK0IsaUJBQWlCLDhFQUE4RSw4Q0FBOEMsK0JBQStCLHNCQUFzQixrREFBa0QsZ0NBQWdDLEVBQUUsMENBQTBDLGNBQWMsb0NBQW9DLGlDQUFpQyxnQkFBZ0IsdUZBQXVGLDhDQUE4QywrQkFBK0IsZ0JBQWdCLG9CQUFvQixTQUFTLFFBQVEsU0FBUyxPQUFPLFVBQVUsY0FBYyxlQUFlLGlCQUFpQixtQkFBbUIsc0RBQXNELDhDQUE4QywrQkFBK0IseUJBQXlCLG9CQUFvQixNQUFNLFlBQVksU0FBUyxvREFBb0Qsb0NBQW9DLGlDQUFpQyx5QkFBeUIsb0JBQW9CLE1BQU0sWUFBWSxTQUFTLG9EQUFvRCxvQ0FBb0MsaUNBQWlDLDRCQUE0QixvQkFBb0IsTUFBTSxZQUFZLG9CQUFvQixTQUFTLG9EQUFvRCxvQ0FBb0MsaUNBQWlDLGVBQWUsa0RBQWtELDhDQUE4QywrQkFBK0IsY0FBYyx5SEFBeUgsOENBQThDLCtCQUErQixjQUFjLHNGQUFzRiw4Q0FBOEMsK0JBQStCLG1CQUFtQixtRkFBbUYsOENBQThDLCtCQUErQixxQkFBcUIsMEVBQTBFLG9DQUFvQyxpQ0FBaUMsd0JBQXdCLHdFQUF3RSw4Q0FBOEMsK0JBQStCLGlCQUFpQixvQkFBb0IsT0FBTyxRQUFRLFVBQVUsVUFBVSxzREFBc0QsOENBQThDLCtCQUErQix1QkFBdUIsc0dBQXNHLCtDQUErQyx5QkFBeUIsa0NBQWtDLFNBQVMsUUFBUSxTQUFTLE9BQU8sVUFBVSxjQUFjLGVBQWUsaUJBQWlCLG1CQUFtQix5QkFBeUIsNkJBQTZCLGNBQWMsb0NBQW9DLGlDQUFpQyxnQ0FBZ0MsOERBQThELDZCQUE2QixjQUFjLDhDQUE4QywrQkFBK0IsZ0JBQWdCLG9CQUFvQixTQUFTLFFBQVEsU0FBUyxPQUFPLFVBQVUsY0FBYyxlQUFlLGlCQUFpQixtQkFBbUIsMENBQTBDLDJCQUEyQixjQUFjLDhDQUE4QywrQkFBK0IsbUJBQW1CLGlFQUFpRSwwQ0FBMEMsY0FBYyxvQ0FBb0MsaUNBQWlDLHNCQUFzQixrQ0FBa0MsYUFBYSxhQUFhLHlCQUF5Qiw2QkFBNkIsY0FBYyxvQ0FBb0MsaUNBQWlDLGdCQUFnQix1RkFBdUYsOENBQThDLCtCQUErQixpQkFBaUIscUZBQXFGLG9DQUFvQyxpQ0FBaUMsc0JBQXNCLGtEQUFrRCxnQ0FBZ0MsRUFBRSwwQ0FBMEMsY0FBYyxvQ0FBb0MsaUNBQWlDLG1CQUFtQixvQkFBb0IsT0FBTyxhQUFhLGNBQWMsb0RBQW9ELDhDQUE4QywrQkFBK0IsZ0JBQWdCLHVGQUF1Rix5QkFBeUIsY0FBYyw4Q0FBOEMsK0JBQStCLHVCQUF1QixrREFBa0QsbUJBQW1CLGNBQWMsb0NBQW9DLGlDQUFpQyxpQkFBaUIsb0JBQW9CLFFBQVEsVUFBVSxnQkFBZ0IscUNBQXFDLG9DQUFvQyxpQ0FBaUMsMEJBQTBCLDhEQUE4RCxvQ0FBb0MsaUNBQWlDLGtCQUFrQiwyRUFBMkUsb0NBQW9DLGlDQUFpQyxhQUFhLG9CQUFvQixVQUFVLFNBQVMsK0NBQStDLGdCQUFnQixZQUFZLG9CQUFvQixVQUFVLFNBQVMsK0NBQStDLG1CQUFtQixZQUFZLG9CQUFvQixVQUFVLFNBQVMsK0NBQStDLFNBQVMsdUJBQXVCLGtCQUFrQixvQkFBb0IsT0FBTyxRQUFRLE9BQU8sUUFBUSxPQUFPLFFBQVEsTUFBTSxTQUFTLE9BQU8sT0FBTyxRQUFRLE9BQU8sWUFBWSxnQkFBZ0Isb0JBQW9CLFFBQVEsY0FBYyxhQUFhLFdBQVcsWUFBWSxrQkFBa0IsUUFBUSxtQ0FBbUMsT0FBTyxrQ0FBa0MsV0FBVyw4QkFBOEIsT0FBTyxvQkFBb0IsV0FBVyxlQUFlLFlBQVksZ0JBQWdCLHVCQUF1QixhQUFhLG9CQUFvQixNQUFNLE9BQU8sUUFBUSxlQUFlLFVBQVUsc0JBQXNCLGdCQUFnQixvRUFBb0UsYUFBYSxpQ0FBaUMsUUFBUSxRQUFRLHVDQUF1QyxNQUFNLGFBQWEsMkRBQTJELHFDQUFxQyxXQUFXLHFIQUFxSCxxQ0FBcUMsUUFBUSwyRUFBMkUsb0NBQW9DLGVBQWUsWUFBWSx5RkFBeUYsb0NBQW9DLGdCQUFnQixNQUFNLGFBQWEsMkVBQTJFLG9DQUFvQyxlQUFlLGtCQUFrQiwyRUFBMkUsb0NBQW9DLGVBQWUsY0FBYywyRUFBMkUsb0NBQW9DLGVBQWUscUJBQXFCLHlGQUF5RixvQ0FBb0MsZUFBZSxzQkFBc0IseUZBQXlGLG9DQUFvQyxlQUFlLHNCQUFzQix5RkFBeUYsb0NBQW9DLGVBQWUscUJBQXFCLHlGQUF5RixvQ0FBb0MsZ0JBQWdCLFVBQVUsUUFBUSwwQkFBMEIsZUFBZSxtQ0FBbUMsYUFBYSxNQUFNLHVDQUF1QyxXQUFXLFlBQVksd0tBQXdLLGtCQUFrQixzQ0FBc0Msb0NBQW9DLGlDQUFpQyxpQkFBaUIsc0VBQXNFLDhEQUE4RCwrQkFBK0IsZUFBZSx3REFBd0QsbUJBQW1CLGNBQWMsOERBQThELCtCQUErQix1QkFBdUIsc0NBQXNDLG1CQUFtQixFQUFFLG9CQUFvQixjQUFjLDhEQUE4RCwrQkFBK0IsbUJBQW1CLDRGQUE0RixvQ0FBb0MsaUNBQWlDLDBCQUEwQixvQkFBb0IsTUFBTSxhQUFhLHVEQUF1RCxvQ0FBb0MsaUNBQWlDLGlCQUFpQiwrQ0FBK0MsOENBQThDLDRDQUE0Qyx5QkFBeUIsMEJBQTBCLHNFQUFzRSxvQ0FBb0MsaUNBQWlDLHlCQUF5Qix3REFBd0QsNkJBQTZCLGNBQWMsOERBQThELCtCQUErQiw2QkFBNkIsNEZBQTRGLG9DQUFvQyxpQ0FBaUMsb0NBQW9DLG9CQUFvQixNQUFNLGFBQWEsaUVBQWlFLG9DQUFvQyxpQ0FBaUMsMkJBQTJCLCtDQUErQyw4Q0FBOEMsMkNBQTJDLDBCQUEwQiwyRUFBMkUsOERBQThELCtCQUErQix3QkFBd0IsOEdBQThHLDhEQUE4RCwrQkFBK0IscUNBQXFDLG9EQUFvRCxvQ0FBb0Msa0NBQWtDLGFBQWEsZ0JBQWdCLHNFQUFzRSw4REFBOEQsK0JBQStCLGVBQWUsd0RBQXdELG1CQUFtQixjQUFjLDhEQUE4RCwrQkFBK0IsbUJBQW1CLDRGQUE0RixvQ0FBb0MsaUNBQWlDLDBCQUEwQixvQkFBb0IsTUFBTSxhQUFhLHVEQUF1RCxvQ0FBb0MsaUNBQWlDLGVBQWUsMkVBQTJFLDhEQUE4RCwrQkFBK0IsbUJBQW1CLDJFQUEyRSw4REFBOEQsK0JBQStCLGdCQUFnQixpRUFBaUUsOERBQThELCtCQUErQixjQUFjLDJFQUEyRSw4REFBOEQsK0JBQStCLG1CQUFtQixtRkFBbUYsbUJBQW1CLGNBQWMsb0NBQW9DLCtCQUErQixpQkFBaUIsK0NBQStDLDhDQUE4QywyQ0FBMkMsa0JBQWtCLHNDQUFzQyxxQkFBcUIsRUFBRSxtQkFBbUIsRUFBRSxzQkFBc0IsZ0JBQWdCLGNBQWMsNkNBQTZDLCtCQUErQixlQUFlLGlCQUFpQiwyRUFBMkUsOERBQThELCtCQUErQixpQkFBaUIseURBQXlELDhEQUE4RCwrQkFBK0IsZ0JBQWdCLGtEQUFrRCw4REFBOEQsK0JBQStCLG1CQUFtQixzRUFBc0UsOERBQThELCtCQUErQixxQkFBcUIsNEZBQTRGLG9DQUFvQyxpQ0FBaUMsNEJBQTRCLG9CQUFvQixNQUFNLGFBQWEseURBQXlELG9DQUFvQyxpQ0FBaUMsdUJBQXVCLG9CQUFvQixNQUFNLGFBQWEsMkJBQTJCLG9DQUFvQyxpQ0FBaUMsMkJBQTJCLG9CQUFvQixNQUFNLGFBQWEsZ0NBQWdDLG9DQUFvQyxpQ0FBaUMsd0JBQXdCLDJFQUEyRSw4REFBOEQsK0JBQStCLHdCQUF3Qix5REFBeUQsOERBQThELCtCQUErQiwwQkFBMEIsc0VBQXNFLDhEQUE4RCxnQ0FBZ0MsZ0JBQWdCLGtCQUFrQiw0RUFBNEUsOERBQThELCtCQUErQixtQkFBbUIsNERBQTRELDhEQUE4RCwrQkFBK0Isc0JBQXNCLDREQUE0RCxvQ0FBb0MsaUNBQWlDLGtCQUFrQiw0S0FBNEssK0NBQStDLDhCQUE4QixvQkFBb0Isc0VBQXNFLG9DQUFvQyxrQ0FBa0MsZUFBZSxnQkFBZ0IsOEZBQThGLDhEQUE4RCwrQkFBK0IsZUFBZSxpRkFBaUYsOERBQThELCtCQUErQixvQkFBb0IsMEZBQTBGLDhEQUE4RCwrQkFBK0Isb0JBQW9CLG1HQUFtRyw4REFBOEQsK0JBQStCLG1CQUFtQixtR0FBbUcsOERBQThELCtCQUErQixtQkFBbUIsb0hBQW9ILG9DQUFvQyxpQ0FBaUMsMEJBQTBCLG9CQUFvQixNQUFNLGFBQWEsb0VBQW9FLG9DQUFvQyxpQ0FBaUMsaUJBQWlCLDhGQUE4Riw4REFBOEQsK0JBQStCLGVBQWUsZ0dBQWdHLDhEQUE4RCwrQkFBK0Isb0JBQW9CLDBGQUEwRiw4REFBOEQsK0JBQStCLG9CQUFvQixtR0FBbUcsOERBQThELCtCQUErQixtQkFBbUIsbUdBQW1HLDhEQUE4RCwrQkFBK0IsbUJBQW1CLG9IQUFvSCxvQ0FBb0MsaUNBQWlDLDBCQUEwQixvQkFBb0IsTUFBTSxhQUFhLG9FQUFvRSxvQ0FBb0Msa0NBQWtDLGVBQWUsa0JBQWtCLHNFQUFzRSxvQ0FBb0MsaUNBQWlDLHNCQUFzQiw2RUFBNkUsb0NBQW9DLGlDQUFpQywwQkFBMEIsc0VBQXNFLG9DQUFvQyxpQ0FBaUMsMEJBQTBCLHNFQUFzRSxvQ0FBb0MsaUNBQWlDLHNCQUFzQix1RUFBdUUsb0NBQW9DLGlDQUFpQyxvQkFBb0IsdUVBQXVFLG9DQUFvQyxpQ0FBaUMsc0JBQXNCLG9CQUFvQixTQUFTLFlBQVksOEJBQThCLG9DQUFvQyxpQ0FBaUMseUJBQXlCLG1GQUFtRixvQ0FBb0Msa0NBQWtDLGtCQUFrQixvQ0FBb0MsMEVBQTBFLG9DQUFvQyxpQ0FBaUMsa0NBQWtDLG9CQUFvQixNQUFNLGFBQWEsZ0NBQWdDLG9DQUFvQyxpQ0FBaUMsMkJBQTJCLHVFQUF1RSxvQ0FBb0MsaUNBQWlDLDJCQUEyQix5REFBeUQsb0NBQW9DLGlDQUFpQyw4QkFBOEIseURBQXlELG9DQUFvQyxpQ0FBaUMsMkJBQTJCLHlEQUF5RCxvQ0FBb0Msa0NBQWtDLG1CQUFtQixvQkFBb0Isd0RBQXdELHlCQUF5QixjQUFjLG9DQUFvQyxpQ0FBaUMsdUJBQXVCLCtDQUErQyxvQ0FBb0MsK0JBQStCLHVCQUF1QixzRUFBc0Usb0NBQW9DLGtDQUFrQyxhQUFhLFVBQVUseURBQXlELFFBQVEsd0RBQXdELGtCQUFrQixlQUFlLHFCQUFxQixnQkFBZ0IscUJBQXFCLDRCQUE0QixxQkFBcUIsZUFBZSxxQkFBcUIsa0JBQWtCLHFCQUFxQixXQUFXLHNCQUFzQixZQUFZLEtBQUssaUJBQWlCLCtFQUErRSxnQkFBZ0IsV0FBVyx3Q0FBd0Msc0JBQXNCLHFCQUFxQixLQUFLLGdCQUFnQixxQkFBcUIsb0RBQW9ELFlBQVksV0FBVywrQkFBK0IsVUFBVSwyQ0FBMkMsZ0NBQWdDLDJEQUEyRCw0Q0FBNEMsVUFBVSxhQUFhLGdCQUFnQixXQUFXLGtCQUFrQixLQUFLLGtDQUFrQyxHQUFHLGtCQUFrQixLQUFLLGdDQUFnQyxXQUFXLG9CQUFvQixtQkFBbUIsbUJBQW1CLE1BQU0seUdBQXlHLHlHQUF5RyxVQUFVLHlCQUF5QixPQUFPLFNBQVMsbUZBQW1GLDRCQUE0QixHQUFHLCtIQUErSCw0QkFBNEIsSUFBSSxlQUFlLFlBQVksaUJBQWlCLG1CQUFtQixTQUFTLHFCQUFxQixtQkFBbUIsRUFBRSwrRUFBK0Usb0JBQW9CLDRDQUE0QyxTQUFTLHVCQUF1QixpQkFBaUIscUNBQXFDLFNBQVMsb0JBQW9CLCtCQUErQix1Q0FBdUMsVUFBVSxzQkFBc0IsT0FBTyw0Q0FBNEMseUNBQXlDLG1CQUFtQixHQUFHLHNCQUFzQixPQUFPLDhEQUE4RCxVQUFVLFlBQVksS0FBSyxjQUFjLEtBQUssY0FBYyxLQUFLLGVBQWUsS0FBSyxhQUFhLEtBQUssY0FBYyxLQUFLLGFBQWEsS0FBSyxnQkFBZ0IsS0FBSyxpQkFBaUIsS0FBSyxlQUFlLEtBQUsscUJBQXFCLEtBQUssdUNBQXVDLGlCQUFpQixRQUFRLDZCQUE2QixlQUFlLHFCQUFxQix1QkFBdUIscUNBQXFDLEVBQUUsSUFBSSxJQUFJLDhDQUE4QyxFQUFFLEdBQUcsY0FBYyxnREFBZ0QsaUJBQWlCLGdDQUFnQyxxQkFBcUIscUlBQXFJLE1BQU0sK0JBQStCLDhEQUE4RCxtQkFBbUIsT0FBTyxZQUFZLE9BQU8sVUFBVSxpQkFBaUIsb0NBQW9DLGlCQUFpQix3SUFBd0ksaUJBQWlCLGtIQUFrSCwrRkFBK0YsZUFBZSw4QkFBOEIsdUJBQXVCLFFBQVEseUVBQXlFLDZHQUE2RyxpQkFBaUIsdUNBQXVDLGVBQWUsc0RBQXNELGVBQWUsb0NBQW9DLHVCQUF1QiwyREFBMkQsOEpBQThKLGVBQWUsc0VBQXNFLGVBQWUsNEJBQTRCLGVBQWUsc0NBQXNDLGlCQUFpQix5QkFBeUIsbUJBQW1CLGlDQUFpQyxlQUFlLDZCQUE2QixVQUFVLG0wR0FBbTBHLFNBQVMsNEJBQTRCLGlIQUFpSCxnQkFBZ0IsNEJBQTRCLDZCQUE2QixvQkFBb0IsK0RBQStELGNBQWMsTUFBTSxlQUFlLDZCQUE2QixxQ0FBcUMsSUFBSSxVQUFVLEVBQUUsVUFBVSxFQUFFLGFBQWEsdUJBQXVCLFFBQVEsOEZBQThGLHdCQUF3QixxSkFBcUosTUFBTSw4REFBOEQsNkNBQTZDLHNEQUFzRCxNQUFNLDhEQUE4RCxtQkFBbUIsUUFBUSxtSkFBbUosTUFBTSx3REFBd0QsNkNBQTZDLG9EQUFvRCxvQ0FBb0MsY0FBYyx3Q0FBd0MsNENBQTRDLGdEQUFnRCxNQUFNLElBQUksZ0NBQWdDLFVBQVUsTUFBTSxnQkFBZ0IsZUFBZSxtREFBbUQsVUFBVSw4Q0FBOEMsMENBQTBDLDREQUE0RCxZQUFZLFVBQVUsZ0RBQWdELHFCQUFxQixxQ0FBcUMsUUFBUSxJQUFJLFdBQVcsd0JBQXdCLGVBQWUsOENBQThDLEdBQUcsRUFBRSxJQUFJLHdHQUF3RyxTQUFTLG1CQUFtQixrSUFBa0ksNENBQTRDLEdBQUcsYUFBYSxrQ0FBa0MsaUJBQWlCLCtFQUErRSxTQUFTLHVCQUF1QiwwRUFBMEUsU0FBUyxlQUFlLGlCQUFpQixxQkFBcUIsK0NBQStDLFVBQVUsK0dBQStHLGtCQUFrQiwwQ0FBMEMsV0FBVyw0RUFBNEUsU0FBUyxlQUFlLHVCQUF1QixnQkFBZ0IsNEJBQTRCLCtDQUErQyxnREFBZ0QsOENBQThDLGlCQUFpQiwrQkFBK0IsTUFBTSwrQkFBK0IsTUFBTSxnQ0FBZ0Msa0JBQWtCLFdBQVcsb0NBQW9DLCtHQUErRyxTQUFTLGVBQWUsdUJBQXVCLGdCQUFnQiw0QkFBNEIsbURBQW1ELFlBQVksV0FBVyxNQUFNLHNCQUFzQix5Q0FBeUMsd0ZBQXdGLGtCQUFrQixXQUFXLG9DQUFvQyxTQUFTLGVBQWUsNkNBQTZDLFdBQVcsaUJBQWlCLHFCQUFxQixpQkFBaUIsb0JBQW9CLFFBQVEscUJBQXFCLG1MQUFtTCxxQkFBcUIsd0RBQXdELGtEQUFrRCxpREFBaUQsZUFBZSx5TEFBeUwscUJBQXFCLHFDQUFxQyxVQUFVLHVCQUF1Qix3Q0FBd0MsVUFBVSxVQUFVLGVBQWUsc0JBQXNCLGdDQUFnQyxpQ0FBaUMsZ0NBQWdDLDZCQUE2Qiw2QkFBNkIsNkJBQTZCLDZCQUE2Qiw2QkFBNkIsNkJBQTZCLHFCQUFxQixpQkFBaUIsTUFBTSxrQkFBa0IsY0FBYyxNQUFNLGtCQUFrQixLQUFLLE1BQU0sS0FBSyxtQkFBbUIsVUFBVSxlQUFlLGlCQUFpQiwwTEFBMEwsU0FBUyxpQkFBaUIsMEJBQTBCLGtCQUFrQixnR0FBZ0csWUFBWSxXQUFXLDZDQUE2QyxhQUFhLFlBQVksdUJBQXVCLHlHQUF5RyxXQUFXLGtCQUFrQixhQUFhLGdCQUFnQixXQUFXLFNBQVMsZUFBZSxzREFBc0QsU0FBUyxxQkFBcUIsVUFBVSwwQ0FBMEMsU0FBUyxpQkFBaUIseUJBQXlCLGtCQUFrQixnRUFBZ0UsVUFBVSxhQUFhLGdCQUFnQixRQUFRLGVBQWUsYUFBYSw2SUFBNkksYUFBYSxVQUFVLGVBQWUsK0pBQStKLFlBQVksV0FBVyxNQUFNLDBEQUEwRCxFQUFFLEdBQUcsU0FBUyxXQUFXLEtBQUssV0FBVyxLQUFLLDJCQUEyQixrQkFBa0IsV0FBVyxtQkFBbUIsWUFBWSxZQUFZLG1CQUFtQixLQUFLLGlDQUFpQyxpQ0FBaUMsdUVBQXVFLGNBQWMsY0FBYyxXQUFXLFdBQVcsZ0JBQWdCLGFBQWEsc0JBQXNCLGdCQUFnQixnREFBZ0QsVUFBVSw2REFBNkQsU0FBUyxpQkFBaUIseUJBQXlCLGtCQUFrQixnRUFBZ0UsYUFBYSx5Q0FBeUMsR0FBRyx1Q0FBdUMsOEZBQThGLG1CQUFtQixZQUFZLFdBQVcsS0FBSywyQkFBMkIsa0JBQWtCLFdBQVcsbUJBQW1CLFlBQVksdUJBQXVCLHVEQUF1RCxhQUFhLFFBQVEsMEJBQTBCLG1EQUFtRCx1QkFBdUIsd0JBQXdCLGNBQWMsMEVBQTBFLGtCQUFrQixnSkFBZ0oscURBQXFELHVDQUF1QyxJQUFJLGVBQWUsTUFBTSwwQkFBMEIsZ0JBQWdCLG9CQUFvQixjQUFjLG9EQUFvRCx1Q0FBdUMsSUFBSSxzQ0FBc0MsTUFBTSwwQkFBMEIsZ0JBQWdCLG9CQUFvQixjQUFjLDJFQUEyRSx1Q0FBdUMsSUFBSSxjQUFjLFdBQVcsMEJBQTBCLHFDQUFxQyxrQkFBa0Isc0JBQXNCLGtDQUFrQyxtQkFBbUIsYUFBYSxtRUFBbUUsdUVBQXVFLDZDQUE2QyxhQUFhLHNCQUFzQixnQkFBZ0IsZ0RBQWdELG9EQUFvRCxTQUFTLGNBQWMsOEdBQThHLGdEQUFnRCxLQUFLLDhEQUE4RCxlQUFlLG9HQUFvRyxXQUFXLDBFQUEwRSxjQUFjLHNCQUFzQixhQUFhLGlEQUFpRCxjQUFjLCtCQUErQixzREFBc0QsU0FBUyxzQ0FBc0MsbURBQW1ELEVBQUUsaUZBQWlGLGtCQUFrQixFQUFFLHlEQUF5RCxZQUFZLGtCQUFrQiwrREFBK0QsOEdBQThHLHNJQUFzSSxhQUFhLHVGQUF1RixVQUFVLHlFQUF5RSx5QkFBeUIsTUFBTSxzQkFBc0Isa0JBQWtCLHNCQUFzQixtQ0FBbUMsMlhBQTJYLHNDQUFzQyx5Q0FBeUMseUNBQXlDLHlDQUF5QywwQ0FBMEMsMkVBQTJFLGVBQWUsSUFBSSxnQ0FBZ0MsU0FBUyxtQ0FBbUMsU0FBUyx5Q0FBeUMsRUFBRSw4REFBOEQsdUlBQXVJLElBQUksNENBQTRDLFVBQVUsV0FBVyxjQUFjLDZGQUE2RixzRUFBc0UsY0FBYyxXQUFXLFNBQVMsRUFBRSxjQUFjLEVBQUUsY0FBYyxFQUFFLCtCQUErQixrQkFBa0IsZ0JBQWdCLDJCQUEyQixTQUFTLGlCQUFpQiwyREFBMkQsWUFBWSwrQkFBK0IsYUFBYSxxQ0FBcUMsZ0JBQWdCLGtCQUFrQix5RUFBeUUsWUFBWSxXQUFXLFdBQVcsWUFBWSxhQUFhLE1BQU0sYUFBYSxtRUFBbUUsVUFBVSxhQUFhLGdIQUFnSCw0QkFBNEIsa0JBQWtCLGVBQWUsMkRBQTJELDBCQUEwQixnQkFBZ0Isb0NBQW9DLFNBQVMsaUJBQWlCLHFEQUFxRCxrQkFBa0Isd0hBQXdILGFBQWEsNEVBQTRFLEVBQUUsZ0JBQWdCLEVBQUUsdUVBQXVFLFlBQVksd0NBQXdDLGFBQWEsZ0JBQWdCLFdBQVcsU0FBUyxtQkFBbUIsdUNBQXVDLGtCQUFrQixrRUFBa0UsWUFBWSxXQUFXLG9FQUFvRSw2Q0FBNkMsWUFBWSx3REFBd0Qsa0RBQWtELEdBQUcsT0FBTywwREFBMEQsR0FBRyxJQUFJLFdBQVcsSUFBSSwrRUFBK0UsR0FBRyxXQUFXLFlBQVksYUFBYSw2QkFBNkIsZ0JBQWdCLFdBQVcsU0FBUyxpQkFBaUIsNENBQTRDLGtCQUFrQixrRUFBa0UsWUFBWSxXQUFXLGdEQUFnRCxnSkFBZ0osWUFBWSxlQUFlLFlBQVksNERBQTRELGdCQUFnQixnSkFBZ0osV0FBVyxXQUFXLCtHQUErRyxXQUFXLFdBQVcsdUJBQXVCLGFBQWEsaUNBQWlDLGdCQUFnQixXQUFXLFNBQVMsbUJBQW1CLDZEQUE2RCxrQkFBa0IsbUZBQW1GLFlBQVksV0FBVyxnREFBZ0Qsc0JBQXNCLG1JQUFtSSxZQUFZLFVBQVUsaUJBQWlCLDJCQUEyQiw0QkFBNEIsbUJBQW1CLFlBQVksNERBQTRELGdKQUFnSixXQUFXLFdBQVcsTUFBTSxvRUFBb0UsdUJBQXVCLDBDQUEwQyx5Q0FBeUMsa0ZBQWtGLFdBQVcsV0FBVyxhQUFhLG1FQUFtRSxnQkFBZ0IsV0FBVyxTQUFTLHlCQUF5Qix3RkFBd0Ysa0JBQWtCLDhFQUE4RSxXQUFXLElBQUkseUVBQXlFLFFBQVEsa0VBQWtFLFVBQVUsTUFBTSxZQUFZLGFBQWEsTUFBTSxXQUFXLGVBQWUsMEJBQTBCLG9CQUFvQixzRUFBc0Usa0JBQWtCLHNHQUFzRywySEFBMkgsd0JBQXdCLElBQUkseUdBQXlHLE1BQU0sdUNBQXVDLGFBQWEseUVBQXlFLHVCQUF1Qix1QkFBdUIsa0JBQWtCLHVCQUF1QiwyQkFBMkIsa0JBQWtCLDRDQUE0QyxpR0FBaUcsWUFBWSwrQkFBK0IseUZBQXlGLGFBQWEseURBQXlELGdCQUFnQixtRkFBbUYsU0FBUyxtQkFBbUIsOENBQThDLGtCQUFrQiw4RUFBOEUsV0FBVyxJQUFJLHdFQUF3RSxNQUFNLGtFQUFrRSxXQUFXLFlBQVksYUFBYSxNQUFNLDJCQUEyQixrQkFBa0IsOEJBQThCLGtCQUFrQiwyQkFBMkIsNENBQTRDLGtCQUFrQixpREFBaUQscUJBQXFCLFlBQVkscUVBQXFFLGtDQUFrQyxhQUFhLHlDQUF5QyxtQkFBbUIsZ0JBQWdCLDBGQUEwRixTQUFTLHFCQUFxQiw0REFBNEQsa0JBQWtCLG1GQUFtRixZQUFZLFdBQVcsZ0RBQWdELHNCQUFzQixpSEFBaUgsWUFBWSxVQUFVLGlCQUFpQiwyQkFBMkIsbUNBQW1DLDBCQUEwQixZQUFZLDZEQUE2RCxNQUFNLG1HQUFtRyx1Q0FBdUMsaUZBQWlGLFdBQVcsV0FBVyxhQUFhLGtFQUFrRSxnQkFBZ0IsV0FBVyxpQkFBaUIsbUJBQW1CLG9CQUFvQixLQUFLLEtBQUssZ0RBQWdELHVCQUF1QixPQUFPLE1BQU0saURBQWlELE9BQU8sU0FBUyxTQUFTLG1CQUFtQix3REFBd0QsNkRBQTZELGtCQUFrQixnRkFBZ0YsV0FBVyxJQUFJLDZFQUE2RSwyQkFBMkIsa0JBQWtCLFdBQVcsV0FBVyxrRUFBa0UsWUFBWSxXQUFXLE1BQU0sMkNBQTJDLGtMQUFrTCwrSkFBK0osdUJBQXVCLGtCQUFrQiwyQkFBMkIscUJBQXFCLFlBQVksbUNBQW1DLHdDQUF3QywrQkFBK0IsbUNBQW1DLGlCQUFpQiwyREFBMkQsYUFBYSxjQUFjLGtDQUFrQyxnQkFBZ0IsbURBQW1ELGVBQWUsc0ZBQXNGLFVBQVUscUJBQXFCLHlLQUF5SyxjQUFjLHlCQUF5Qix5Q0FBeUMsMEJBQTBCLHlDQUF5QyxvQ0FBb0MseUNBQXlDLDJCQUEyQixxQ0FBcUMsZ0JBQWdCLGdCQUFnQixJQUFJLEtBQUssNkJBQTZCLDBCQUEwQixxQ0FBcUMsMEJBQTBCLFFBQVEsWUFBWSxZQUFZLGtEQUFrRCw2QkFBNkIsU0FBUyxxQkFBcUIsa0RBQWtELGNBQWMsbUJBQW1CLGlCQUFpQixtQkFBbUIsb0NBQW9DLFVBQVUsd0NBQXdDLFVBQVUsV0FBVyxpQ0FBaUMsMEJBQTBCLFdBQVcscUNBQXFDLFFBQVEsa0dBQWtHLE1BQU0sVUFBVSxrREFBa0QsbUNBQW1DLCtEQUErRCw4Q0FBOEMsMEJBQTBCLFdBQVcscUNBQXFDLDRCQUE0QixrQ0FBa0MsdUNBQXVDLGdEQUFnRCw0QkFBNEIsNEZBQTRGLGFBQWEsUUFBUSxhQUFhLEdBQUcsV0FBVyxZQUFZLFdBQVcsTUFBTSw2RkFBNkYsRUFBRSxLQUFLLEtBQUssT0FBTyxFQUFFLEtBQUssS0FBSyxHQUFHLGFBQWEsK0JBQStCLCtCQUErQixtQkFBbUIsU0FBUyx1QkFBdUIsNkZBQTZGLDZEQUE2RCxvQ0FBb0MsUUFBUSw2Q0FBNkMsd0NBQXdDLGlDQUFpQyx3QkFBd0Isa0RBQWtELFNBQVMsa0JBQWtCLGtCQUFrQixrR0FBa0csc0JBQXNCLGVBQWUsOEJBQThCLGFBQWEsK0ZBQStGLEdBQUcsNEJBQTRCLE1BQU0sc0VBQXNFLGFBQWEsUUFBUSxtQkFBbUIsdUtBQXVLLEdBQUcsdUNBQXVDLGdGQUFnRixXQUFXLElBQUksNkVBQTZFLG9DQUFvQyxXQUFXLFdBQVcsb0hBQW9ILFlBQVksV0FBVyxNQUFNLGtDQUFrQyx5TEFBeUwsc0tBQXNLLHVCQUF1QixrQkFBa0IsMkJBQTJCLDhGQUE4RixPQUFPLHlCQUF5QixZQUFZLG1DQUFtQyx3Q0FBd0MsK0JBQStCLG1DQUFtQyxpQkFBaUIsdUNBQXVDLG1IQUFtSCxzQkFBc0IsbURBQW1ELG1EQUFtRCxvREFBb0QsYUFBYSxjQUFjLGtDQUFrQyxnQkFBZ0IsbURBQW1ELHFCQUFxQixrQkFBa0IsNkRBQTZELFNBQVMsaUJBQWlCLHlCQUF5QixrQkFBa0IsbUVBQW1FLFdBQVcsdUJBQXVCLDJCQUEyQixXQUFXLDJCQUEyQix1Q0FBdUMsc0JBQXNCLEVBQUUsa0JBQWtCLHVCQUF1Qix3Q0FBd0MscUNBQXFDLHdCQUF3QixZQUFZLGlCQUFpQixvSkFBb0osU0FBUyxhQUFhLHNCQUFzQixnQkFBZ0IsZ0RBQWdELGlCQUFpQiw2S0FBNksscUJBQXFCLDBCQUEwQixtQkFBbUIsMkJBQTJCLGVBQWUsbUJBQW1CLHlIQUF5SCxrQkFBa0IsaUZBQWlGLGFBQWEseUJBQXlCLGtCQUFrQiw4Q0FBOEMsRUFBRSw0Q0FBNEMsV0FBVyxLQUFLLHlCQUF5QixrQkFBa0IsOENBQThDLEVBQUUsNENBQTRDLFdBQVcsS0FBSyxtSEFBbUgsV0FBVyxTQUFTLFdBQVcsS0FBSyw0SUFBNEksV0FBVyxpQkFBaUIsbUtBQW1LLHVDQUF1QyxvQkFBb0IsWUFBWSxvREFBb0QsK0JBQStCLHNCQUFzQixpR0FBaUcsRUFBRSwyREFBMkQsT0FBTyxJQUFJLE9BQU8sYUFBYSwrQ0FBK0Msc0JBQXNCLHdEQUF3RCxpRUFBaUUsYUFBYSx5REFBeUQsZ0JBQWdCLFlBQVksa0NBQWtDLGFBQWEsa0NBQWtDLGFBQWEscUJBQXFCLG9CQUFvQiw4QkFBOEIsV0FBVyxxQkFBcUIsd0JBQXdCLDhCQUE4QixXQUFXLHFCQUFxQix3QkFBd0IsK0JBQStCLFlBQVkscUJBQXFCLHlCQUF5QiwrQkFBK0IsWUFBWSxxQkFBcUIseUJBQXlCLEdBQUcsU0FBUyxtQkFBbUIsMkVBQTJFLGtCQUFrQix5REFBeUQsYUFBYSx1R0FBdUcsd0VBQXdFLGtCQUFrQixrRkFBa0Ysa0JBQWtCLFdBQVcsa0VBQWtFLFlBQVksMkhBQTJILGFBQWEsOEVBQThFLGdCQUFnQixXQUFXLFNBQVMsdUJBQXVCLDRHQUE0RyxrQkFBa0IsMERBQTBELDJCQUEyQixrQkFBa0IsYUFBYSwyR0FBMkcsV0FBVyx1REFBdUQsV0FBVywyREFBMkQsV0FBVyx1RkFBdUYsV0FBVyxzR0FBc0csWUFBWSxxRUFBcUUsK1FBQStRLGtDQUFrQyxhQUFhLGdMQUFnTCxnQkFBZ0IsV0FBVyxTQUFTLGVBQWUsOEJBQThCLGtCQUFrQixnRUFBZ0UsYUFBYSw0R0FBNEcsV0FBVyxTQUFTLFlBQVksY0FBYyxLQUFLLGFBQWEsNkNBQTZDLEtBQUssV0FBVyxxRUFBcUUsV0FBVyx1RUFBdUUsV0FBVyxxRUFBcUUsc0JBQXNCLGtDQUFrQyxNQUFNLDJCQUEyQixrQkFBa0Isb0JBQW9CLGtKQUFrSixhQUFhLDhDQUE4QyxJQUFJLGlCQUFpQixZQUFZLHFDQUFxQyw4QkFBOEIsb0xBQW9MLElBQUksYUFBYSw2R0FBNkcsZ0JBQWdCLFdBQVcsU0FBUyxlQUFlLDJCQUEyQixrQkFBa0IsMERBQTBELDJCQUEyQixzREFBc0QsWUFBWSxrREFBa0QsNkVBQTZFLGFBQWEsZUFBZSxnQkFBZ0IsV0FBVyxTQUFTLGVBQWUsMkJBQTJCLGtCQUFrQixpRUFBaUUsWUFBWSxXQUFXLHdCQUF3Qiw4SUFBOEksWUFBWSwwQkFBMEIsWUFBWSwrQkFBK0IsMkNBQTJDLG9DQUFvQyx3RUFBd0UsV0FBVyxXQUFXLGFBQWEsZUFBZSxnQkFBZ0IsV0FBVyxjQUFjLGlCQUFpQixnSEFBZ0gsK0NBQStDLGlCQUFpQix3QkFBd0IsdUhBQXVILFNBQVMsaUJBQWlCLHFHQUFxRyxpQkFBaUIseURBQXlELG1CQUFtQixzREFBc0Qsa0NBQWtDLHFCQUFxQiw2R0FBNkcsU0FBUyxtQkFBbUIsNkJBQTZCLGFBQWEscUNBQXFDLFVBQVUsc0JBQXNCLFNBQVMsNkJBQTZCLGFBQWEsS0FBSyw4QkFBOEIsaUdBQWlHLFVBQVUsU0FBUyxpQkFBaUIsc0NBQXNDLFVBQVUsaUJBQWlCLHVDQUF1QyxZQUFZLGFBQWEsbUNBQW1DLFVBQVUsaUJBQWlCLHNDQUFzQyxVQUFVLHFCQUFxQiwwRkFBMEYsMEJBQTBCLG1CQUFtQixXQUFXLFlBQVksV0FBVyxLQUFLLFdBQVcsWUFBWSxjQUFjLEtBQUssc0JBQXNCLG1CQUFtQixXQUFXLFNBQVMsbUJBQW1CLFdBQVcsWUFBWSxXQUFXLEtBQUsscUJBQXFCLFdBQVcsU0FBUyxxQkFBcUIseUJBQXlCLGFBQWEscUNBQXFDLG1EQUFtRCxTQUFTLHFCQUFxQixrREFBa0QsbUNBQW1DLDRCQUE0Qix1QkFBdUIsU0FBUyxxQkFBcUIsa0RBQWtELGtCQUFrQixXQUFXLGtCQUFrQiw0QkFBNEIsbUJBQW1CLFdBQVcsbUJBQW1CLGlDQUFpQywrQ0FBK0MsTUFBTSxTQUFTLFNBQVMsaUJBQWlCLCtDQUErQyxrQkFBa0IsK0ZBQStGLFlBQVksV0FBVyxhQUFhLGFBQWEsaUNBQWlDLFdBQVcsMkJBQTJCLE1BQU0scUJBQXFCLFlBQVksMkRBQTJELDZCQUE2QixrQ0FBa0MsRUFBRSw0QkFBNEIsd0JBQXdCLGlFQUFpRSx1RUFBdUUseUdBQXlHLFlBQVksOENBQThDLG1EQUFtRCxvRUFBb0UsdUJBQXVCLHVEQUF1RCxzQkFBc0IsdUNBQXVDLDRCQUE0Qix1REFBdUQsc0JBQXNCLHVDQUF1QyxVQUFVLG9CQUFvQix3REFBd0Qsb0VBQW9FLHVCQUF1Qix1REFBdUQsc0JBQXNCLHVDQUF1Qyw0QkFBNEIsdURBQXVELHNCQUFzQix1Q0FBdUMsVUFBVSxvQkFBb0IsVUFBVSxhQUFhLGdCQUFnQixXQUFXLGFBQWEsNENBQTRDLHNHQUFzRyxLQUFLLG1CQUFtQixRQUFRLDJDQUEyQyxNQUFNLDBCQUEwQix1Q0FBdUMseURBQXlELE9BQU8sb0JBQW9CLE9BQU8sTUFBTSxpQkFBaUIsYUFBYSxLQUFLLElBQUksRUFBRSxzQkFBc0IsbUJBQW1CLFlBQVksUUFBUSxTQUFTLE1BQU0saUJBQWlCLDhCQUE4QixLQUFLLElBQUksRUFBRSxlQUFlLFlBQVksMkRBQTJELGVBQWUsVUFBVSx1QkFBdUIsK0JBQStCLHVCQUF1QixLQUFLLElBQUksRUFBRSxZQUFZLGtHQUFrRyxtRkFBbUYsbUJBQW1CLHFDQUFxQyxJQUFJLEVBQUUsc0JBQXNCLFlBQVksS0FBSyxLQUFLLFlBQVksTUFBTSxrRUFBa0UsbUJBQW1CLFdBQVcsa0JBQWtCLGlCQUFpQixzQkFBc0IsaUJBQWlCLDBCQUEwQixXQUFXLFFBQVEsa0JBQWtCLGNBQWMsd0ZBQXdGLGdDQUFnQyxXQUFXLHlFQUF5RSxTQUFTLGlCQUFpQixxQkFBcUIsZUFBZSxRQUFRLGlDQUFpQyxJQUFJLDJDQUEyQyxTQUFTLHFEQUFxRCxTQUFTLGVBQWUsMkVBQTJFLG9DQUFvQyxjQUFjLDJEQUEyRCwwQkFBMEIsaUJBQWlCLGtCQUFrQixZQUFZLGFBQWEsS0FBSyxxRkFBcUYsK0xBQStMLGdCQUFnQiw0QkFBNEIsUUFBUSxpREFBaUQsUUFBUSxLQUFLLE9BQU8sUUFBUSxLQUFLLE1BQU0sUUFBUSxVQUFVLGlCQUFpQixpQkFBaUIsZUFBZSxtQkFBbUIsaUJBQWlCLDBCQUEwQixpQkFBaUIsZ0NBQWdDLGNBQWMsTUFBTSx5QkFBeUIsd0JBQXdCLHFDQUFxQyx5QkFBeUIsMEJBQTBCLHVDQUF1QyxpQkFBaUIsOENBQThDLDRCQUE0QixlQUFlLFFBQVEsZUFBZSxTQUFTLGVBQWUsNEJBQTRCLDBDQUEwQyxTQUFTLGVBQWUsd0RBQXdELG1CQUFtQiw2QkFBNkIsWUFBWSxtSUFBbUksbUJBQW1CLDJCQUEyQiw2QkFBNkIsdUJBQXVCLHNGQUFzRixxQkFBcUIsdUJBQXVCLCtDQUErQyxVQUFVLGVBQWUsT0FBTyxLQUFLLHNCQUFzQixlQUFlLE9BQU8sS0FBSyxzQkFBc0Isd0JBQXdCLDhCQUE4QixTQUFTLHVCQUF1QiwrQ0FBK0MsVUFBVSxlQUFlLFFBQVEsbUJBQW1CLFFBQVEsMERBQTBELFNBQVMsbUJBQW1CLHVCQUF1QixVQUFVLGtCQUFrQiw2QkFBNkIsdURBQXVELDJCQUEyQixzREFBc0QsU0FBUyxxQkFBcUIsOEJBQThCLGVBQWUsUUFBUSw4QkFBOEIsVUFBVSxlQUFlLE9BQU8sS0FBSyxzQkFBc0IsOENBQThDLElBQUksT0FBTyxvQkFBb0Isd0JBQXdCLDhCQUE4QixTQUFTLGlCQUFpQiwwREFBMEQsVUFBVSx5QkFBeUIsc0JBQXNCLGtDQUFrQyxZQUFZLG9CQUFvQix5QkFBeUIsVUFBVSw4Q0FBOEMsSUFBSSxPQUFPLG9CQUFvQiw4Q0FBOEMsSUFBSSxPQUFPLG9CQUFvQix3QkFBd0IsOEJBQThCLFNBQVMseUJBQXlCLGFBQWEsd0JBQXdCLDBCQUEwQiwyQkFBMkIsaUJBQWlCLDhCQUE4QixzQkFBc0IsMkJBQTJCLDJDQUEyQyxrQkFBa0Isc0RBQXNELEtBQUssV0FBVyxFQUFFLGdCQUFnQixvQkFBb0Isd0JBQXdCLGFBQWEsOEJBQThCLE1BQU0sb0JBQW9CLDRCQUE0QixpQkFBaUIsb0JBQW9CLFFBQVEsS0FBSyxxQkFBcUIsbUNBQW1DLE1BQU0sZ0JBQWdCLHdDQUF3QyxTQUFTLDZCQUE2Qix3Q0FBd0Msa0JBQWtCLHVEQUF1RCxLQUFLLFdBQVcsRUFBRSxnQkFBZ0Isb0JBQW9CLDBDQUEwQyx1QkFBdUIsOENBQThDLE1BQU0sd0NBQXdDLGVBQWUsNkJBQTZCLGVBQWUsUUFBUSxxREFBcUQsZUFBZSw2QkFBNkIsZUFBZSxRQUFRLHFEQUFxRCxzQ0FBc0MsTUFBTSwwQkFBMEIsa0dBQWtHLFNBQVMsZUFBZSx1REFBdUQsNkJBQTZCLHVEQUF1RCxnQ0FBZ0Msa0RBQWtELDJCQUEyQixRQUFRLFNBQVMsaUJBQWlCLCtDQUErQyxrQkFBa0IsaUdBQWlHLFlBQVksV0FBVyxhQUFhLGFBQWEsNEZBQTRGLHNEQUFzRCx3REFBd0QsMkdBQTJHLFlBQVksOENBQThDLG1EQUFtRCxvRUFBb0UsMkJBQTJCLHdCQUF3QixVQUFVLGtCQUFrQixlQUFlLDBEQUEwRCxNQUFNLDZEQUE2RCxNQUFNLHdEQUF3RCxrQkFBa0IsU0FBUyxvQkFBb0Isd0RBQXdELG9FQUFvRSwyQkFBMkIsd0JBQXdCLFVBQVUsa0JBQWtCLGVBQWUsMERBQTBELE1BQU0sNkRBQTZELE1BQU0sd0RBQXdELGtCQUFrQixTQUFTLG9CQUFvQixxREFBcUQscUJBQXFCLDRDQUE0QyxvR0FBb0csVUFBVSxtQ0FBbUMsZUFBZSx1REFBdUQsTUFBTSwwREFBMEQsTUFBTSxxREFBcUQsa0JBQWtCLFNBQVMsb0JBQW9CLFdBQVcsYUFBYSxnQkFBZ0IsV0FBVyxVQUFVLHlZQUF5WSxTQUFTLHFCQUFxQixzREFBc0QsWUFBWSxtQ0FBbUMsYUFBYSxzQkFBc0IsZ0JBQWdCLFVBQVUsa0JBQWtCLGlDQUFpQyw0Q0FBNEMsRUFBRSw4REFBOEQsZ0pBQWdKLFdBQVcsb0JBQW9CLDRDQUE0QyxXQUFXLFNBQVMsWUFBWSxXQUFXLEtBQUssd0VBQXdFLE9BQU8sS0FBSyxNQUFNLFdBQVcsbUVBQW1FLFVBQVUsdUJBQXVCLFVBQVUsV0FBVyxNQUFNLFlBQVksV0FBVyxLQUFLLDRDQUE0QyxzQ0FBc0MsK0NBQStDLDJDQUEyQyxNQUFNLG9DQUFvQyxnQ0FBZ0MscUJBQXFCLE9BQU8sV0FBVyxNQUFNLE9BQU8sb0JBQW9CLFlBQVksV0FBVyxLQUFLLGlDQUFpQyxrQkFBa0Isb0JBQW9CLHNDQUFzQyxFQUFFLGVBQWUsYUFBYSxjQUFjLFlBQVkscUJBQXFCLGlCQUFpQiwyQkFBMkIseUJBQXlCLGdEQUFnRCx3Q0FBd0MscUJBQXFCLHNDQUFzQyxpQkFBaUIsY0FBYyxpQkFBaUIsYUFBYSx5QkFBeUIsZUFBZSxRQUFRLFFBQVEsZUFBZSxnREFBZ0QsK0NBQStDLDZCQUE2Qiw2QkFBNkIsNkJBQTZCLHlDQUF5QyxTQUFTLHdCQUF3QixpQ0FBaUMsb0dBQW9HLGVBQWUsb0JBQW9CLCtDQUErQyxzQ0FBc0MsK0NBQStDLDRFQUE0RSxxQ0FBcUMsNkJBQTZCLDZCQUE2QixTQUFTLHdCQUF3QixtQkFBbUIsS0FBSyxlQUFlLHVEQUF1RCxTQUFTLHdCQUF3QixtQkFBbUIsS0FBSyxpQkFBaUIsbURBQW1ELFNBQVMsd0JBQXdCLHFCQUFxQixLQUFLLGVBQWUsUUFBUSwwQkFBMEIsZUFBZSxRQUFRLHdCQUF3QixlQUFlLDBGQUEwRixlQUFlLGtFQUFrRSxlQUFlLGlEQUFpRCxlQUFlLGtKQUFrSixlQUFlLHVEQUF1RCxlQUFlLFNBQVMsaUJBQWlCLDZJQUE2SSwwQkFBMEIsNEJBQTRCLFFBQVEsbUdBQW1HLHlHQUF5RyxhQUFhLElBQUksTUFBTSxVQUFVLDBCQUEwQiw0QkFBNEIsMkJBQTJCLDJCQUEyQixvQ0FBb0Msd0JBQXdCLE1BQU0sNERBQTRELEVBQUUsSUFBSSxNQUFNLE1BQU0sVUFBVSxNQUFNLFlBQVksaUJBQWlCLEtBQUssK0JBQStCLHNCQUFzQixrRUFBa0UsZ0RBQWdELFdBQVcsZ0RBQWdELFNBQVMsZUFBZSxRQUFRLHFJQUFxSSxPQUFPLFNBQVMsb0JBQW9CLHFCQUFxQixNQUFNLDJCQUEyQixpREFBaUQsTUFBTSxRQUFRLHdJQUF3SSxPQUFPLGlCQUFpQixRQUFRLDRCQUE0Qix3REFBd0QseURBQXlELG1CQUFtQixxREFBcUQsdUJBQXVCLHdEQUF3RCxtQkFBbUIsbURBQW1ELHVCQUF1Qiw4QkFBOEIseUNBQXlDLDZDQUE2QyxxQ0FBcUMscUJBQXFCLG1CQUFtQixpQ0FBaUMsbURBQW1ELHVCQUF1Qiw4QkFBOEIseUNBQXlDLDZDQUE2Qyx5REFBeUQsa0JBQWtCLDZEQUE2RCx1RkFBdUYsc0NBQXNDLGVBQWUsZ0VBQWdFLHdEQUF3RCx1QkFBdUIsbUJBQW1CLGVBQWUsMEJBQTBCLE1BQU0sOENBQThDLE1BQU0sa0RBQWtELE1BQU0sNEJBQTRCLE1BQU0sa0VBQWtFLGlDQUFpQyxnQkFBZ0IsUUFBUSxhQUFhLGdCQUFnQiw0QkFBNEIscUZBQXFGLGlDQUFpQyw2QkFBNkIseURBQXlELDBIQUEwSCxNQUFNLDBIQUEwSCxzRUFBc0UsOFZBQThWLFFBQVEsa0NBQWtDLFNBQVMseUJBQXlCLFFBQVEsa0NBQWtDLFNBQVMsT0FBTyxvR0FBb0csKzZCQUErNkIsc0JBQXNCLHlDQUF5QyxpVUFBaVUsMENBQTBDLCtCQUErQixtQ0FBbUMseUJBQXlCLCtCQUErQixxQ0FBcUMsMENBQTBDLCtCQUErQixtQ0FBbUMseUJBQXlCLCtCQUErQixzQ0FBc0MsMENBQTBDLGdDQUFnQyxvQ0FBb0MseUJBQXlCLGdDQUFnQyxzQ0FBc0MsMENBQTBDLGdDQUFnQyxvQ0FBb0MseUJBQXlCLGdDQUFnQyw2WkFBNlosS0FBSyxLQUFLLEVBQUUsZUFBZSxzQkFBc0Isb0JBQW9CLFVBQVUsMkRBQTJELHFGQUFxRiw2Q0FBNkMsVUFBVSxHQUFHLE1BQU0scUZBQXFGLDRDQUE0QyxVQUFVLEdBQUcsZ0ZBQWdGLCtDQUErQyw0QkFBNEIscVBBQXFQLEVBQUUsU0FBUyxpQkFBaUIsTUFBTSx5Q0FBeUMsdVZBQXVWLDBDQUEwQywyT0FBMk8sc0JBQXNCLDRNQUE0TSxJQUFJLGtEQUFrRCwrREFBK0QsMEZBQTBGLHFFQUFxRSxjQUFjLG1CQUFtQixXQUFXLFNBQVMsU0FBUyx1SkFBdUosZUFBZSxzRUFBc0UsaUJBQWlCLHNDQUFzQyxTQUFTLDRIQUE0SCw4REFBOEQsbUVBQW1FLHdCQUF3QixTQUFTLHNDQUFzQyxTQUFTLGlCQUFpQiw2RkFBNkYsMENBQTBDLHVFQUF1RSxzQkFBc0Isb0RBQW9ELFNBQVMscUJBQXFCLHFJQUFxSSwwQ0FBMEMsdUVBQXVFLHNCQUFzQixtREFBbUQsMkJBQTJCLHNGQUFzRixpQkFBaUIsZ0JBQWdCLCtCQUErQixtQ0FBbUMsdUVBQXVFLHVCQUF1Qix1RUFBdUUsY0FBYyxnWUFBZ1ksU0FBUyxpQkFBaUIsNEZBQTRGLHNCQUFzQiw4Q0FBOEMsb0JBQW9CLFFBQVEsNERBQTRELGVBQWUsV0FBVyxrQ0FBa0MseUJBQXlCLHlDQUF5Qyw2RkFBNkYseUNBQXlDLGNBQWMsK1BBQStQLEtBQUssZUFBZSw0QkFBNEIsNkNBQTZDLGFBQWEsMkRBQTJELDBFQUEwRSwwQ0FBMEMsa0hBQWtILHVGQUF1RixVQUFVLG1CQUFtQixVQUFVLGtGQUFrRixnREFBZ0QsZUFBZSxtQkFBbUIsK0JBQStCLGlCQUFpQixpQkFBaUIseURBQXlELE1BQU0sSUFBSSxVQUFVLGdCQUFnQixRQUFRLHVDQUF1Qyx3QkFBd0IsaUJBQWlCLHNCQUFzQixlQUFlLCtCQUErQixnREFBZ0QsWUFBWSxXQUFXLDBCQUEwQixVQUFVLGVBQWUsZ0JBQWdCLGFBQWEsK1lBQStZLE9BQU8sbUJBQW1CLFVBQVUsbUNBQW1DLEVBQUUsS0FBSywrQkFBK0IsRUFBRSxLQUFLLDBCQUEwQixFQUFFLFFBQVEsaUJBQWlCLDBCQUEwQixVQUFVLG9EQUFvRCxnREFBZ0QsbUpBQW1KLGVBQWUsVUFBVSxzQkFBc0IsbUNBQW1DLGlDQUFpQyxlQUFlLGVBQWUsZUFBZSxpQkFBaUIsK0VBQStFLHFCQUFxQixVQUFVLHVCQUF1QixNQUFNLEdBQUcsVUFBVSxFQUFFLEdBQUcsOEJBQThCLFFBQVEsRUFBRSxZQUFZLFdBQVcsVUFBVSxxQkFBcUIsR0FBRyxZQUFZLEdBQUcsVUFBVSxHQUFHLEVBQUUsZUFBZSxTQUFTLHdCQUF3QixTQUFTLEVBQUUsU0FBUyxlQUFlLGdCQUFnQix3RUFBd0UsZUFBZSxvRkFBb0YsZUFBZSxxQ0FBcUMsMkZBQTJGLFdBQVcsK0JBQStCLFNBQVMsYUFBYSxlQUFlLHlDQUF5QyxnQ0FBZ0MsMENBQTBDLFNBQVMsY0FBYyx1REFBdUQsR0FBRyxTQUFTLGtCQUFrQix1Q0FBdUMsTUFBTSxlQUFlLGlCQUFpQix3QkFBd0IsTUFBTSxZQUFZLDBDQUEwQyxFQUFFLEtBQUssU0FBUyxLQUFLLGNBQWMsVUFBVSxFQUFFLHVGQUF1RixNQUFNLDRIQUE0SCxFQUFFLEtBQUssU0FBUyxlQUFlLHdHQUF3Ryx5REFBeUQsT0FBTyxTQUFTLG9FQUFvRSxVQUFVLG1CQUFtQixVQUFVLFNBQVMseUZBQXlGLGlCQUFpQixtQkFBbUIsVUFBVSxTQUFTLE9BQU8sOEJBQThCLDBFQUEwRSxTQUFTLFlBQVksV0FBVyxrQkFBa0IsbUdBQW1HLEVBQUUsR0FBRyxFQUFFLEdBQUcsR0FBRyxTQUFTLGVBQWUsc0NBQXNDLFlBQVksa0ZBQWtGLEdBQUcsbURBQW1ELEdBQUcsaUNBQWlDLFVBQVUsOENBQThDLEdBQUcsb0NBQW9DLFVBQVUsT0FBTyxlQUFlLHVDQUF1QyxlQUFlLGtLQUFrSyxnSkFBZ0osa0JBQWtCLHFHQUFxRyxTQUFTLGdCQUFnQixzQkFBc0IsZ0lBQWdJLGdHQUFnRyxxQkFBcUIsdUJBQXVCLG9HQUFvRyxJQUFJLEVBQUUsdW5CQUF1bkIsY0FBYyxTQUFTLHdCQUF3Qix5REFBeUQsT0FBTyxTQUFTLHNFQUFzRSxVQUFVLFNBQVMsTUFBTSw4REFBOEQsVUFBVSxTQUFTLDRFQUE0RSw4RUFBOEUscUdBQXFHLGlEQUFpRCxpQkFBaUIsT0FBTyxFQUFFLDJCQUEyQixRQUFRLDBGQUEwRixpQkFBaUIsSUFBSSxtQkFBbUIsT0FBTyxFQUFFLDRCQUE0QixpRUFBaUUsS0FBSyx3Q0FBd0MsRUFBRSx1RkFBdUYsT0FBTyxFQUFFLDRGQUE0RixHQUFHLGdCQUFnQiw2REFBNkQsTUFBTSxtQ0FBbUMsR0FBRyx3REFBd0QsRUFBRSxJQUFJLFNBQVMsK0hBQStILG9DQUFvQywwQkFBMEIsR0FBRyxPQUFPLHVJQUF1SSw0VUFBNFUsRUFBRSxLQUFLLGVBQWUsMEVBQTBFLHVEQUF1RCxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsZ0VBQWdFLGtKQUFrSixjQUFjLHlFQUF5RSxtTEFBbUwsNElBQTRJLG9FQUFvRSxzSkFBc0osbUxBQW1MLFVBQVUsZUFBZSwyQ0FBMkMsbUdBQW1HLG9CQUFvQixLQUFLLG1CQUFtQiwwRkFBMEYsaUNBQWlDLEtBQUssbUJBQW1CLFdBQVcsZUFBZSwrQkFBK0IsSUFBSSxzQ0FBc0MsaUJBQWlCLFNBQVMsZUFBZSx3QkFBd0IseURBQXlELE9BQU8sU0FBUyxvQkFBb0IsV0FBVywrRUFBK0Usc0JBQXNCLE9BQU8sRUFBRSxnRkFBZ0YsYUFBYSw2SEFBNkgsS0FBSyxLQUFLLGdGQUFnRixLQUFLLDBCQUEwQiwyRUFBMkUsRUFBRSw4QkFBOEIsR0FBRyxVQUFVLFlBQVksV0FBVyxpREFBaUQsT0FBTyxFQUFFLEdBQUcsRUFBRSw0RUFBNEUsK0RBQStELEVBQUUsR0FBRyxFQUFFLGdEQUFnRCxHQUFHLFNBQVMsTUFBTSwyQ0FBMkMsV0FBVyxtQkFBbUIsT0FBTyxFQUFFLEdBQUcsRUFBRSxrREFBa0QsR0FBRyxNQUFNLG9GQUFvRixLQUFLLGtFQUFrRSxFQUFFLDhCQUE4QixHQUFHLFVBQVUsU0FBUyxpQkFBaUIsc0ZBQXNGLEVBQUUsR0FBRyxZQUFZLEdBQUcsZ0JBQWdCLHFDQUFxQyx5REFBeUQseURBQXlELEVBQUUsMEJBQTBCLDhDQUE4QyxFQUFFLEtBQUssTUFBTSw2Q0FBNkMsSUFBSSxJQUFJLG1DQUFtQyxFQUFFLHdGQUF3RixrQ0FBa0MsdUJBQXVCLE9BQU8sV0FBVyxxUkFBcVIsNEdBQTRHLEdBQUcsZUFBZSxxQkFBcUIsZUFBZSxzQkFBc0IsZUFBZSxTQUFTLGdEQUFnRCx3RUFBd0UsaUJBQWlCLGtCQUFrQixTQUFTLGlCQUFpQixZQUFZLGVBQWUsS0FBSyxvQkFBb0IsMERBQTBELEtBQUssNkJBQTZCLGNBQWMsTUFBTSxjQUFjLE1BQU0sZ0VBQWdFLGlDQUFpQyxFQUFFLG1DQUFtQyx5QkFBeUIscUJBQXFCLDZIQUE2SCxFQUFFLGdCQUFnQixzQ0FBc0MsdURBQXVELGdFQUFnRSxLQUFLLG1HQUFtRyxLQUFLLGdHQUFnRyxLQUFLLHdTQUF3UyxLQUFLLDBIQUEwSCxLQUFLLHVFQUF1RSxTQUFTLGdCQUFnQiw4REFBOEQsc0JBQXNCLHlIQUF5SCxvQ0FBb0MsT0FBTyxFQUFFLHFJQUFxSSwwQkFBMEIseUhBQXlILGNBQWMsWUFBWSxNQUFNLGVBQWUseUhBQXlILGNBQWMsWUFBWSxNQUFNLEdBQUcsS0FBSyxlQUFlLGdDQUFnQyxvREFBb0QsR0FBRyxZQUFZLFVBQVUsb0JBQW9CLGNBQWMsRUFBRSwrQkFBK0IsY0FBYyxHQUFHLFdBQVcsK0JBQStCLE9BQU8sRUFBRSxHQUFHLEVBQUUsYUFBYSxHQUFHLFlBQVksZUFBZSxpRUFBaUUscURBQXFELG1CQUFtQixNQUFNLFVBQVUsdUNBQXVDLG9DQUFvQyxtQkFBbUIsdUVBQXVFLElBQUksc0NBQXNDLE1BQU0seUdBQXlHLFNBQVMsY0FBYyx1QkFBdUIsK0VBQStFLEdBQUcsV0FBVyxnSEFBZ0gsaUJBQWlCLGFBQWEsK0RBQStELEVBQUUsTUFBTSxFQUFFLHNEQUFzRCxHQUFHLGtEQUFrRCxnRkFBZ0YsNkNBQTZDLEVBQUUsS0FBSyxTQUFTLEVBQUUsOERBQThELElBQUksdUJBQXVCLHVHQUF1RyxnREFBZ0QsdUZBQXVGLGNBQWMsT0FBTyxFQUFFLEdBQUcsRUFBRSw2REFBNkQsaUJBQWlCLE9BQU8sRUFBRSxHQUFHLEVBQUUsbUVBQW1FLElBQUksU0FBUyx1QkFBdUIsMEVBQTBFLEVBQUUsdUJBQXVCLDBFQUEwRSxFQUFFLGlKQUFpSixtQkFBbUIsT0FBTyxFQUFFLCtCQUErQixrRUFBa0Usb0NBQW9DLEdBQUcsZUFBZSxrREFBa0QsU0FBUyxjQUFjLHVCQUF1Qix3RUFBd0UsR0FBRyxZQUFZLGtCQUFrQixxQ0FBcUMsMERBQTBELHdGQUF3Rix1QkFBdUIsZ0ZBQWdGLHNDQUFzQyxFQUFFLE9BQU8sU0FBUyxlQUFlLHdEQUF3RCx3QkFBd0IsMkRBQTJELEdBQUcsU0FBUyxTQUFTLGlEQUFpRCxvREFBb0Qsc0NBQXNDLEVBQUUsTUFBTSxTQUFTLGVBQWUsb0RBQW9ELFNBQVMsY0FBYyx1QkFBdUIsMEVBQTBFLEdBQUcsWUFBWSxpREFBaUQsZ0ZBQWdGLHNDQUFzQyxFQUFFLE1BQU0sU0FBUyxlQUFlLFNBQVMsd0JBQXdCLHFCQUFxQixnQkFBZ0IsNkdBQTZHLFNBQVMsZ0lBQWdJLFVBQVUsaURBQWlELE9BQU8sRUFBRSxHQUFHLEVBQUUseUJBQXlCLElBQUksMEJBQTBCLE1BQU0sMkJBQTJCLDZCQUE2QixHQUFHLFNBQVMsV0FBVyxjQUFjLEVBQUUsVUFBVSx3Q0FBd0MsZ0NBQWdDLHNEQUFzRCxHQUFHLFlBQVksNkJBQTZCLGdDQUFnQyxtREFBbUQsR0FBRyxnRUFBZ0UsRUFBRSxXQUFXLDJIQUEySCwrREFBK0Qsd0JBQXdCLGtFQUFrRSxHQUFHLFNBQVMsU0FBUyxpREFBaUQsb0RBQW9ELHNDQUFzQyxFQUFFLE1BQU0sU0FBUyxpQ0FBaUMsaUNBQWlDLDJCQUEyQixpQ0FBaUMscUJBQXFCLHdCQUF3QixvQkFBb0IsOEVBQThFLEVBQUUsVUFBVSxnQkFBZ0IsU0FBUyxlQUFlLFNBQVMsWUFBWSxXQUFXLCtCQUErQixPQUFPLEVBQUUsR0FBRyxFQUFFLHNEQUFzRCxHQUFHLFNBQVMsV0FBVywyQkFBMkIsRUFBRSw0Q0FBNEMsOENBQThDLDBJQUEwSSxTQUFTLFlBQVksV0FBVyxvQkFBb0IsT0FBTyxFQUFFLEdBQUcsRUFBRSx1REFBdUQsa0JBQWtCLE9BQU8sRUFBRSxHQUFHLElBQUksMkJBQTJCLHdCQUF3Qix1REFBdUQsR0FBRyxTQUFTLFlBQVksZUFBZSw0Q0FBNEMsOEhBQThILElBQUksNkJBQTZCLEdBQUcsZUFBZSxnQ0FBZ0MsbUNBQW1DLFVBQVUscURBQXFELFVBQVUsNEJBQTRCLE1BQU0scURBQXFELE1BQU0sY0FBYyxtQkFBbUIsU0FBUyxzQkFBc0IsOEZBQThGLHNCQUFzQixnQ0FBZ0Msc0VBQXNFLFVBQVUsZUFBZSxtQkFBbUIsVUFBVSxxQkFBcUIsR0FBRyxlQUFlLGlEQUFpRCxlQUFlLHNCQUFzQiw0QkFBNEIsNk5BQTZOLDJFQUEyRSxpQkFBaUIsU0FBUyx5RUFBeUUsU0FBUyxTQUFTLG1CQUFtQixzQkFBc0IsNkJBQTZCLG1CQUFtQix5Q0FBeUMsa0NBQWtDLFlBQVksZ0JBQWdCLEtBQUssMEJBQTBCLG9DQUFvQyx3QkFBd0Isa0dBQWtHLE1BQU0sYUFBYSxZQUFZLGdCQUFnQixlQUFlLDZCQUE2QixnRUFBZ0UsY0FBYywwQkFBMEIsa0JBQWtCLHdLQUF3SyxrQkFBa0IsK0VBQStFLHlCQUF5Qix1QkFBdUIsaUJBQWlCLDRCQUE0Qiw0RUFBNEUsV0FBVyxxREFBcUQsT0FBTyw0QkFBNEIsc0JBQXNCLGFBQWEsZ0NBQWdDLFlBQVksV0FBVyxLQUFLLGFBQWEsa0JBQWtCLFlBQVksaUhBQWlILDhCQUE4Qiw4SEFBOEgsWUFBWSxLQUFLLGdCQUFnQixLQUFLLEtBQUssbUJBQW1CLDhLQUE4Syx5QkFBeUIsbUNBQW1DLHVCQUF1Qiw0RUFBNEUsZ0JBQWdCLDRDQUE0Qyw2Q0FBNkMsUUFBUSxZQUFZLG9CQUFvQiw0QkFBNEIsZ0VBQWdFLCtDQUErQyxRQUFRLFlBQVksV0FBVyxLQUFLLGFBQWEsaUNBQWlDLG9JQUFvSSxzQkFBc0IsMEJBQTBCLHFCQUFxQixVQUFVLHNCQUFzQix5QkFBeUIsWUFBWSxvQkFBb0IsRUFBRSw0QkFBNEIsR0FBRyx5QkFBeUIsNkNBQTZDLHFCQUFxQixTQUFTLGdEQUFnRCxxTEFBcUwsb0JBQW9CLCtGQUErRixtQkFBbUIsRUFBRSw0REFBNEQsRUFBRSxTQUFTLGVBQWUseUhBQXlILGVBQWUsZ0RBQWdELGVBQWUsb0JBQW9CLDBDQUEwQyxjQUFjLDJCQUEyQix1UkFBdVIsaUJBQWlCLDBJQUEwSSxxQkFBcUIsV0FBVyxpQ0FBaUMsU0FBUyxrRkFBa0YsY0FBYyxzRUFBc0UsbUJBQW1CLEdBQUcsNkJBQTZCLEdBQUcscUJBQXFCLE1BQU0sUUFBUSx5Q0FBeUMsZ0JBQWdCLGlIQUFpSCxNQUFNLGtCQUFrQixpQ0FBaUMscUNBQXFDLGFBQWEsNENBQTRDLDJDQUEyQyx5RkFBeUYsbUNBQW1DLGVBQWUsa0JBQWtCLHFDQUFxQyxvRkFBb0Ysd0JBQXdCLGtFQUFrRSxFQUFFLEdBQUcsTUFBTSxRQUFRLE9BQU8sOERBQThELEVBQUUsR0FBRyx5Q0FBeUMsbUNBQW1DLCtCQUErQix3QkFBd0IsYUFBYSwwQ0FBMEMsU0FBUyxTQUFTLGNBQWMsZUFBZSxZQUFZLHNCQUFzQixpVkFBaVYsVUFBVSwrbENBQStsQyxlQUFlLGtEQUFrRCxVQUFVLGVBQWUsbURBQW1ELFVBQVUsZUFBZSxtQkFBbUIsSUFBSSx1QkFBdUIsS0FBSyxHQUFHLGNBQWMsU0FBUyxhQUFhLGtCQUFrQixtQ0FBbUMsa0RBQWtELGVBQWUseUNBQXlDLHVFQUF1RSxlQUFlLDRxQkFBNHFCLFFBQVEsc0NBQXNDLFFBQVEsc0VBQXNFLGVBQWUsNEJBQTRCLHNqQ0FBc2pDLEtBQUssMlFBQTJRLGVBQWUsd0NBQXdDLGlCQUFpQixxRUFBcUUsZUFBZSxrREFBa0QsVUFBVSxtQkFBbUIsY0FBYyw4SkFBOEosWUFBWSw2REFBNkQsV0FBVyxRQUFRLHlEQUF5RCxjQUFjLDRLQUE0SyxXQUFXLHFIQUFxSCxlQUFlLHNCQUFzQix5QkFBeUIsMkJBQTJCLFNBQVMsaUJBQWlCLHNNQUFzTSxHQUFHLHFCQUFxQixxQkFBcUIscURBQXFELFVBQVUsMkNBQTJDLG9CQUFvQiw2R0FBNkcseUJBQXlCLCtEQUErRCwyQ0FBMkMsa0NBQWtDLEVBQUUscUNBQXFDLFNBQVMsaUJBQWlCLDJEQUEyRCw0QkFBNEIsVUFBVSxnQkFBZ0IseURBQXlELE1BQU0sSUFBSSxVQUFVLGdCQUFnQixnQkFBZ0IsUUFBUSxnTkFBZ04saUNBQWlDLHdEQUF3RCxlQUFlLDJFQUEyRSx3QkFBd0IsbURBQW1ELFNBQVMsZUFBZSw2Q0FBNkMsa0JBQWtCLDZDQUE2QyxzQ0FBc0MsaUJBQWlCLDhDQUE4QyxLQUFLLFNBQVMsZUFBZSxzRkFBc0YsWUFBWSxzQ0FBc0MsY0FBYyxzTEFBc0wsaUJBQWlCLHFDQUFxQyxtQkFBbUIsa0pBQWtKLFlBQVksV0FBVywwQ0FBMEMseUJBQXlCLHFCQUFxQiw4QkFBOEIsa0JBQWtCLEVBQUUsa0JBQWtCLFNBQVMsa0JBQWtCLGlDQUFpQyxtR0FBbUcsU0FBUyxpQkFBaUIsaUNBQWlDLHVGQUF1RixVQUFVLFNBQVMsdUJBQXVCLDBKQUEwSix3QkFBd0IsbUVBQW1FLE1BQU0sdUNBQXVDLHNEQUFzRCxrREFBa0QsNkNBQTZDLHlFQUF5RSxpQkFBaUIsaUJBQWlCLGtCQUFrQixnQ0FBZ0MsTUFBTSxVQUFVLFNBQVMsZUFBZSxxRkFBcUYsd0JBQXdCLGlDQUFpQyw4RkFBOEYsU0FBUyxnQkFBZ0IsNEVBQTRFLFdBQVcsU0FBUyxlQUFlLHdFQUF3RSxZQUFZLHNDQUFzQyxZQUFZLGdDQUFnQyxjQUFjLHVFQUF1RSxZQUFZLFdBQVcsMENBQTBDLHlCQUF5QixzQkFBc0IsU0FBUyx3QkFBd0IsaUNBQWlDLDhGQUE4RixVQUFVLFNBQVMsbUJBQW1CLGdEQUFnRCxhQUFhLG9DQUFvQyxjQUFjLHVEQUF1RCxrQkFBa0IsbUVBQW1FLFNBQVMsZUFBZSxpRkFBaUYsT0FBTyx3QkFBd0IsU0FBUyxlQUFlLHNCQUFzQixzQkFBc0IsdUVBQXVFLGdDQUFnQyxtQkFBbUIsb0NBQW9DLHFCQUFxQixTQUFTLGlCQUFpQix1Q0FBdUMsMEJBQTBCLGlGQUFpRixxREFBcUQsTUFBTSxpQkFBaUIsbUJBQW1CLGlFQUFpRSxzRUFBc0UsNkJBQTZCLGVBQWUsb0NBQW9DLE1BQU0seUNBQXlDLG9CQUFvQix3QkFBd0IsZUFBZSxTQUFTLHNCQUFzQiwwREFBMEQsb0JBQW9CLDBCQUEwQix3Q0FBd0MsNkJBQTZCLElBQUksbUNBQW1DLHVDQUF1QyxnSEFBZ0gsb0JBQW9CLHdCQUF3QixJQUFJLGlDQUFpQywrQ0FBK0MsY0FBYyx5QkFBeUIsWUFBWSx5QkFBeUIsY0FBYyxLQUFLLG9CQUFvQix3QkFBd0IsSUFBSSxtQ0FBbUMsc0JBQXNCLHNCQUFzQiw4QkFBOEIsZ0NBQWdDLHdEQUF3RCwwQkFBMEIsa0JBQWtCLHdCQUF3QixrQkFBa0IsMEJBQTBCLGlCQUFpQixvQkFBb0IsNkNBQTZDLFlBQVksRUFBRSxhQUFhLGVBQWUsVUFBVSxTQUFTLGVBQWUsc0JBQXNCLDBCQUEwQixxQkFBcUIsbUNBQW1DLHVDQUF1QyxNQUFNLGdDQUFnQywyTEFBMkwsb0JBQW9CLDZDQUE2QyxZQUFZLEVBQUUsYUFBYSxlQUFlLFVBQVUsU0FBUyxlQUFlLHNCQUFzQiwwQkFBMEIsd0NBQXdDLE1BQU0sY0FBYyxXQUFXLFNBQVMsZUFBZSwrQ0FBK0MsNENBQTRDLDJDQUEyQyx1Q0FBdUMsK0JBQStCLGtCQUFrQixhQUFhLGdFQUFnRSwrR0FBK0csMEhBQTBILEtBQUssdUpBQXVKLHVCQUF1QixtQkFBbUIsaUJBQWlCLDhEQUE4RCw4QkFBOEIsaVFBQWlRLDBDQUEwQywyREFBMkQsWUFBWSxFQUFFLDhEQUE4RCxZQUFZLEVBQUUsaUdBQWlHLHlCQUF5QixpQ0FBaUMscUJBQXFCLDRFQUE0RSwwQkFBMEIsRUFBRSxxQ0FBcUMsUUFBUSxVQUFVLEVBQUUsc0ZBQXNGLG9CQUFvQixvSEFBb0gseUJBQXlCLEVBQUUsd0NBQXdDLFFBQVEsU0FBUyxFQUFFLG1CQUFtQiwrRkFBK0Ysd0pBQXdKLGtGQUFrRixtREFBbUQsa0ZBQWtGLHNDQUFzQyw2Q0FBNkMsVUFBVSxZQUFZLHFHQUFxRyxxQkFBcUIsNkZBQTZGLGdCQUFnQixnREFBZ0QsaUJBQWlCLCtPQUErTyxZQUFZLFNBQVMsNlNBQTZTLDhDQUE4Qyw2SUFBNkksc0JBQXNCLEVBQUUsaURBQWlELGlFQUFpRSxxQkFBcUIsR0FBRyxPQUFPLFVBQVUsZ0JBQWdCLFVBQVUsbUJBQW1CLFVBQVUsVUFBVSxtQkFBbUIsbUNBQW1DLDBCQUEwQiw0SUFBNEksV0FBVyxVQUFVLDhIQUE4SCxTQUFTLGlCQUFpQixxSEFBcUgsU0FBUyxjQUFjLHVEQUF1RCxzQkFBc0IsZ0VBQWdFLDJDQUEyQyxzQkFBc0Isc0NBQXNDLCtIQUErSCxRQUFRLDJKQUEySixRQUFRLGVBQWUsVUFBVSwrQkFBK0IsV0FBVyxvQkFBb0IsK0hBQStILG1CQUFtQiw0Q0FBNEMsZ0JBQWdCLDRGQUE0RixtQkFBbUIsWUFBWSxRQUFRLG1CQUFtQiwrRUFBK0UsK0JBQStCLCtDQUErQyx5Q0FBeUMsaUJBQWlCLHdCQUF3QixvQkFBb0IsZ0JBQWdCLHlGQUF5RixpQkFBaUIsb0JBQW9CLDRDQUE0QyxlQUFlLFlBQVksOENBQThDLDZEQUE2RCxvQkFBb0IsZ0JBQWdCLHlGQUF5RixtQkFBbUIsb0JBQW9CLDhDQUE4QyxpQkFBaUIsWUFBWSxnRUFBZ0UsNkRBQTZELG9CQUFvQixnQkFBZ0IseUZBQXlGLHFCQUFxQixvQkFBb0IsZ0RBQWdELG1CQUFtQixZQUFZLGtGQUFrRiw2REFBNkQsb0JBQW9CLGdCQUFnQix5RkFBeUYseUJBQXlCLG9CQUFvQixvREFBb0QsdUJBQXVCLFlBQVksc0hBQXNILGlFQUFpRSxvQkFBb0IsZ0JBQWdCLHlGQUF5Rix5QkFBeUIsb0JBQW9CLG9EQUFvRCx1QkFBdUIsa0JBQWtCLHNIQUFzSCxnRUFBZ0Usb0JBQW9CLGdCQUFnQiw2RkFBNkYsaUJBQWlCLG9CQUFvQiw0Q0FBNEMsZUFBZSxZQUFZLGtEQUFrRCw2REFBNkQsb0JBQW9CLGdCQUFnQiwyRkFBMkYsaUNBQWlDLG9CQUFvQiw0REFBNEQsK0JBQStCLGFBQWEsd01BQXdNLGlFQUFpRSxvQkFBb0IsZ0JBQWdCLHVJQUF1SSxxQ0FBcUMsb0JBQW9CLGdFQUFnRSxtQ0FBbUMsYUFBYSx3T0FBd08sb0VBQW9FLG9CQUFvQixnQkFBZ0IsNkZBQTZGLG1CQUFtQixvQkFBb0IsOENBQThDLGlCQUFpQixZQUFZLHNFQUFzRSwrREFBK0Qsb0JBQW9CLGdCQUFnQiwyRkFBMkYsZUFBZSxvQkFBb0IsMENBQTBDLGFBQWEsK0JBQStCLDhEQUE4RCxvQkFBb0IsZ0JBQWdCLHFMQUFxTCwrQkFBK0Isb0JBQW9CLDBEQUEwRCw2QkFBNkIsbUJBQW1CLCtLQUErSyxxRUFBcUUsb0JBQW9CLGdCQUFnQix5RkFBeUYseUJBQXlCLG9CQUFvQixvREFBb0QsdUJBQXVCLFlBQVksc0hBQXNILG1FQUFtRSxvQkFBb0IsZ0JBQWdCLHlJQUF5SSx1QkFBdUIsb0JBQW9CLGtEQUFrRCxxQkFBcUIsa0JBQWtCLDBHQUEwRyxtRUFBbUUsb0JBQW9CLGdCQUFnQix5SUFBeUkseUJBQXlCLG9CQUFvQixvREFBb0QsdUJBQXVCLHlCQUF5QiwwSEFBMEgsb0VBQW9FLG9CQUFvQixnQkFBZ0IsMkZBQTJGLG1CQUFtQixvQkFBb0IsOENBQThDLGlCQUFpQixZQUFZLG1FQUFtRSw4REFBOEQsb0JBQW9CLGdCQUFnQixxT0FBcU8sK0NBQStDLG9CQUFvQiwwRUFBMEUsNkNBQTZDLDJCQUEyQixpVkFBaVYsa0ZBQWtGLG9CQUFvQixnQkFBZ0IscU9BQXFPLHFFQUFxRSxvQkFBb0IsZ0dBQWdHLG1FQUFtRSxvQkFBb0IsMGlCQUEwaUIsMkVBQTJFLG9CQUFvQixnQkFBZ0IsNkZBQTZGLGVBQWUsb0JBQW9CLDBDQUEwQyxhQUFhLGdDQUFnQyw2REFBNkQsb0JBQW9CLGdCQUFnQiwySUFBMkksbUJBQW1CLG9CQUFvQiw4Q0FBOEMsaUJBQWlCLFlBQVksdUVBQXVFLGtFQUFrRSxvQkFBb0IsZ0JBQWdCLHlJQUF5SSxtQkFBbUIsb0JBQW9CLDhDQUE4QyxpQkFBaUIsWUFBWSxxRUFBcUUsaUVBQWlFLG9CQUFvQixnQkFBZ0IsMkZBQTJGLGlCQUFpQixvQkFBb0IsNENBQTRDLGVBQWUsWUFBWSxnREFBZ0QsOERBQThELG9CQUFvQixnQkFBZ0IsMkZBQTJGLGVBQWUsb0JBQW9CLDBDQUEwQyxhQUFhLCtCQUErQiw4REFBOEQsb0JBQW9CLGdCQUFnQiw2RkFBNkYscUJBQXFCLG9CQUFvQixnREFBZ0QsbUJBQW1CLFlBQVksMEZBQTBGLCtEQUErRCxvQkFBb0IsbUJBQW1CLDZDQUE2QyxtQkFBbUIsNkNBQTZDLFNBQVMsNkNBQTZDLFNBQVMsNkNBQTZDLFNBQVMsNkNBQTZDLFNBQVMsNkNBQTZDLG1CQUFtQiw4Q0FBOEMsdUJBQXVCLDhDQUE4QyxrQkFBa0IsOENBQThDLGtCQUFrQixtREFBbUQscUJBQXFCLG9CQUFvQixPQUFPLHVCQUF1QiwyQkFBMkIsb0JBQW9CLGNBQWMsNkNBQTZDLGNBQWMsNkNBQTZDLHNCQUFzQiw4Q0FBOEMsZ0JBQWdCLDhDQUE4Qyx1QkFBdUIsOENBQThDLHFCQUFxQiw4Q0FBOEMsaUJBQWlCLDhDQUE4QyxjQUFjLCtDQUErQyxnQkFBZ0IsK0NBQStDLGdCQUFnQiwrQ0FBK0Msa0JBQWtCLCtDQUErQyxrQkFBa0IsK0NBQStDLGtCQUFrQiw4Q0FBOEMsd0JBQXdCLDhDQUE4Qyx5QkFBeUIsMENBQTBDLGFBQWEsOENBQThDLGNBQWMsMENBQTBDLGtCQUFrQiwrQ0FBK0MsbUJBQW1CLDJDQUEyQywwQkFBMEIsK0NBQStDLHFCQUFxQixvQkFBb0IsT0FBTyx1QkFBdUIsMkJBQTJCLG9CQUFvQixjQUFjLDZDQUE2QyxjQUFjLDZDQUE2QyxvQ0FBb0MsNkNBQTZDLHFDQUFxQyw2Q0FBNkMsbUNBQW1DLDZDQUE2QyxvQ0FBb0MsNkNBQTZDLDRCQUE0Qiw2Q0FBNkMsb0NBQW9DLDZDQUE2QyxVQUFVLDhDQUE4Qyx3QkFBd0IsOENBQThDLHNCQUFzQiwrQ0FBK0MsZ0NBQWdDLCtDQUErQyw4QkFBOEIsK0NBQStDLHdCQUF3QiwrQ0FBK0Msc0JBQXNCLCtDQUErQyxnQ0FBZ0MsK0NBQStDLDhCQUE4QiwrQ0FBK0MsbUJBQW1CLCtDQUErQyxpQ0FBaUMsK0NBQStDLCtCQUErQiwrQ0FBK0Msc0JBQXNCLCtDQUErQyw4QkFBOEIsK0NBQStDLGlDQUFpQywrQ0FBK0Msa0JBQWtCLCtDQUErQyxtQkFBbUIsMkNBQTJDLG1CQUFtQixnREFBZ0QsOEJBQThCLGdEQUFnRCxpQ0FBaUMsK0NBQStDLCtCQUErQixnREFBZ0QscUJBQXFCLG9CQUFvQixPQUFPLHVCQUF1Qiw2QkFBNkIsb0JBQW9CLGNBQWMsNEJBQTRCLDBCQUEwQixvQkFBb0IsUUFBUSx5QkFBeUIsUUFBUSx5QkFBeUIsaUNBQWlDLDBCQUEwQiwrQkFBK0Isb0JBQW9CLGlCQUFpQiw4Q0FBOEMsa0JBQWtCLCtDQUErQyxrQkFBa0IsZ0RBQWdELHFCQUFxQixvQkFBb0IsT0FBTyx1QkFBdUIsK0JBQStCLG9CQUFvQixtQkFBbUIsOENBQThDLHVCQUF1Qiw4Q0FBOEMsa0JBQWtCLCtDQUErQyxvQkFBb0Isb0JBQW9CLE9BQU8sdUJBQXVCLDJCQUEyQixxQkFBcUIscUJBQXFCLHFCQUFxQixxQkFBcUIscUJBQXFCLHFCQUFxQixxQkFBcUIscUJBQXFCLHFCQUFxQixxQkFBcUIscUJBQXFCLHFCQUFxQixxQkFBcUIscUJBQXFCLGNBQWMsdUNBQXVDLE1BQU0sV0FBVyxJQUFJLFNBQVMsa0JBQWtCLGlCQUFpQix3QkFBd0IsNENBQTRDLHNFQUFzRSwyQkFBMkIscUJBQXFCLEVBQUUseUVBQXlFLGdGQUFnRixvREFBb0QsTUFBTSxxQkFBcUIsVUFBVSx3RUFBd0UsOEJBQThCLGdCQUFnQix5RUFBeUUsV0FBVyxJQUFJLGlCQUFpQiw2REFBNkQsbUVBQW1FLGNBQWMsaURBQWlELEVBQUUsK0NBQStDLEVBQUUscURBQXFELEVBQUUsbURBQW1ELEdBQUcsUUFBUSxXQUFXLEtBQUssWUFBWSx5QkFBeUIsb0JBQW9CLCtEQUErRCxJQUFJLG9WQUFvVixjQUFjLHNDQUFzQyxxQ0FBcUMscUpBQXFKLGdNQUFnTSxzQkFBc0IsWUFBWSx5QkFBeUIsK0JBQStCLEtBQUssMFNBQTBTLFVBQVUsc0NBQXNDLHFDQUFxQyx3RkFBd0YsMkZBQTJGLHdCQUF3QiwwREFBMEQscUJBQXFCLFNBQVMsY0FBYywrQ0FBK0MsYUFBYSxpREFBaUQsZ0JBQWdCLCtGQUErRixjQUFjLDRCQUE0QixLQUFLLElBQUksRUFBRSxlQUFlLDBCQUEwQixXQUFXLEtBQUssZ0JBQWdCLFNBQVMsZ0ZBQWdGLE1BQU0sU0FBUyxzQkFBc0IsK0RBQStELDBEQUEwRCxtQkFBbUIsc0JBQXNCLGVBQWUsMkRBQTJELGVBQWUsV0FBVyw2REFBNkQscUJBQXFCLEtBQUssSUFBSSxFQUFFLGtCQUFrQixnQkFBZ0IsTUFBTSxFQUFFLEdBQUcsS0FBSyxjQUFjLEdBQUcsS0FBSyxjQUFjLGNBQWMsNkRBQTZELGtEQUFrRCxtQkFBbUIsYUFBYSxrQkFBa0IsNEJBQTRCLFNBQVMsaUJBQWlCLCtCQUErQixvQkFBb0IsaUJBQWlCLDJCQUEyQixPQUFPLHdFQUF3RSxvQkFBb0IsaUJBQWlCLG1DQUFtQyxPQUFPLHdLQUF3SyxvQkFBb0IsaUJBQWlCLHdDQUF3QyxPQUFPLDRKQUE0Siw4QkFBOEIsZUFBZSxpREFBaUQsU0FBUyxtQkFBbUIsOENBQThDLEVBQUUsaUJBQWlCLGtCQUFrQixpQ0FBaUMsa0JBQWtCLG9EQUFvRCxTQUFTLGlCQUFpQixpQ0FBaUMsRUFBRSx5RkFBeUYsaUNBQWlDLCtHQUErRyxvQkFBb0IsMktBQTJLLGFBQWEsa0JBQWtCLDREQUE0RCxTQUFTLHFCQUFxQixxRkFBcUYsVUFBVSxFQUFFLHFEQUFxRCxpQ0FBaUMsOEJBQThCLDhFQUE4RSxTQUFTLDREQUE0RCwwQkFBMEIsa0NBQWtDLE9BQU8sTUFBTSw0QkFBNEIsc0JBQXNCLHdCQUF3QixjQUFjLFlBQVksSUFBSSxnREFBZ0QsTUFBTSxZQUFZLElBQUksdUNBQXVDLG9EQUFvRCxVQUFVLDJTQUEyUyxVQUFVLDJEQUEyRCxTQUFTLHlCQUF5QixtREFBbUQsRUFBRSwyR0FBMkcsVUFBVSxFQUFFLHFEQUFxRCxpQ0FBaUMsOEJBQThCLHVEQUF1RCw0REFBNEQsd0NBQXdDLDhEQUE4RCwwQkFBMEIsa0NBQWtDLGVBQWUsa0NBQWtDLGlCQUFpQixNQUFNLDhCQUE4Qix3QkFBd0Isd0JBQXdCLHNCQUFzQixZQUFZLElBQUksMERBQTBELE1BQU0sWUFBWSxJQUFJLHlDQUF5QyxnRUFBZ0UsVUFBVSwyU0FBMlMsVUFBVSwwREFBMEQsZ0JBQWdCLDRIQUE0SCxVQUFVLGtCQUFrQixvQkFBb0IsU0FBUyx5QkFBeUIscUpBQXFKLDBCQUEwQiwyQ0FBMkMsK0lBQStJLDRCQUE0QixrRUFBa0UseUJBQXlCLGlCQUFpQixNQUFNLGtCQUFrQix3QkFBd0IsdUJBQXVCLElBQUksd1FBQXdRLFVBQVUseVlBQXlZLFVBQVUsOElBQThJLFNBQVMsbUJBQW1CLGVBQWUsa0JBQWtCLFdBQVcsZ0NBQWdDLGtCQUFrQix1QkFBdUIsNkRBQTZELDBMQUEwTCw0RkFBNEYsRUFBRSxHQUFHLDhCQUE4Qix5QkFBeUIsc0VBQXNFLEVBQUUsSUFBSSxNQUFNLDRCQUE0QixpREFBaUQsRUFBRSxLQUFLLGlDQUFpQyxlQUFlLHdCQUF3QixxREFBcUQsK0JBQStCLDZCQUE2Qix3QkFBd0IsdUZBQXVGLGlDQUFpQyw2QkFBNkIsd0JBQXdCLHNEQUFzRCw2QkFBNkIsU0FBUyxrQkFBa0IsMEJBQTBCLGtCQUFrQiwyQkFBMkIsNkJBQTZCLHdCQUF3Qiw0RkFBNEYsdUJBQXVCLHlFQUF5RSxTQUFTLFVBQVUsV0FBVyw2QkFBNkIsd0JBQXdCLDRGQUE0RixFQUFFLE1BQU0sU0FBUyxzQkFBc0IsV0FBVyw2QkFBNkIsd0JBQXdCLGdEQUFnRCxpQ0FBaUMsNENBQTRDLG9DQUFvQyxvQkFBb0IsZ0NBQWdDLFNBQVMsb0JBQW9CLFdBQVcsNkJBQTZCLHdCQUF3Qiw4RkFBOEYsU0FBUyx3QkFBd0IscUJBQXFCLGlCQUFpQixXQUFXLDZCQUE2Qix3QkFBd0IsNEZBQTRGLCtCQUErQixRQUFRLDRCQUE0QixJQUFJLFNBQVMscUJBQXFCLFVBQVUsNEJBQTRCLGlEQUFpRCxzQkFBc0IsaUJBQWlCLDZCQUE2Qix3QkFBd0IsdUJBQXVCLDZFQUE2RSwwQkFBMEIsd0dBQXdHLFVBQVUsNkJBQTZCLHdCQUF3QixrRUFBa0UsMkJBQTJCLFVBQVUsNkJBQTZCLHdCQUF3QixvRUFBb0UsU0FBUyw0QkFBNEIsOEJBQThCLGdFQUFnRSxrRUFBa0UsaUNBQWlDLHVHQUF1RywyR0FBMkcsMkJBQTJCLGtJQUFrSSxPQUFPLHFDQUFxQyxVQUFVLHFCQUFxQixrRkFBa0Ysc0JBQXNCLFVBQVUsb0ZBQW9GLGlCQUFpQixRQUFRLDJrQkFBMmtCLG1CQUFtQixFQUFFLDBCQUEwQixtQkFBbUIsU0FBUyxPQUFPLHVCQUF1QixTQUFTLHdCQUF3QixlQUFlLFFBQVEsZ0JBQWdCLHVCQUF1QixpQkFBaUIsdUJBQXVCLDJCQUEyQix3QkFBd0IsSUFBSSxJQUFJLHdCQUF3Qiw4TEFBOEwsa0JBQWtCLG1DQUFtQywyQ0FBMkMsZUFBZSx1Q0FBdUMsWUFBWSxXQUFXLEtBQUssYUFBYSxZQUFZLFdBQVcsS0FBSyxxREFBcUQsNElBQTRJLFNBQVMsaUJBQWlCLFFBQVEsaUVBQWlFLHVCQUF1Qix3Q0FBd0MsU0FBUyxlQUFlLDJXQUEyVyxnQkFBZ0IsNEJBQTRCLGdCQUFnQix5RUFBeUUsVUFBVSwwQ0FBMEMsTUFBTSw2REFBNkQseUVBQXlFLHlCQUF5QixjQUFjLDJHQUEyRyxZQUFZLFdBQVcsd0NBQXdDLGtCQUFrQixNQUFNLHNDQUFzQyxrQkFBa0IscUVBQXFFLGNBQWMsaUhBQWlILFVBQVUseUNBQXlDLGdCQUFnQiw4REFBOEQsVUFBVSxzTUFBc00sVUFBVSxzSkFBc0osb0JBQW9CLG1DQUFtQyxrQkFBa0IsbUNBQW1DLDBHQUEwRyxzUUFBc1EsbUZBQW1GLE1BQU0saUJBQWlCLFlBQVksV0FBVyw0QkFBNEIsWUFBWSxXQUFXLDRCQUE0QixpQkFBaUIsbUJBQW1CLDhCQUE4QixpQkFBaUIsa0NBQWtDLFlBQVksV0FBVyxLQUFLLGFBQWEsWUFBWSxXQUFXLDRCQUE0QixZQUFZLFdBQVcsNEJBQTRCLFlBQVksV0FBVyw0QkFBNEIsVUFBVSxtQkFBbUIsZUFBZSxxQkFBcUIsWUFBWSxXQUFXLDhCQUE4QixZQUFZLFdBQVcsOEJBQThCLFVBQVUsaUJBQWlCLHdDQUF3QyxZQUFZLGFBQWEsS0FBSyxzQkFBc0IsWUFBWSxhQUFhLHFDQUFxQyxVQUFVLHFCQUFxQixnREFBZ0QsbUJBQW1CLFlBQVkseUNBQXlDLFlBQVksV0FBVyxxQ0FBcUMsVUFBVSxtQkFBbUIscUJBQXFCLDZCQUE2QixvREFBb0Qsd0RBQXdELGlCQUFpQixlQUFlLFlBQVksV0FBVyxLQUFLLE9BQU8seUJBQXlCLFdBQVcscUZBQXFGLFNBQVMsaUJBQWlCLFNBQVMseUJBQXlCLFdBQVcsT0FBTyxvQkFBb0IsaUVBQWlFLFNBQVMsbUJBQW1CLG9CQUFvQixvRkFBb0Ysb0JBQW9CLHlEQUF5RCxtQkFBbUIsNkJBQTZCLG9GQUFvRixlQUFlLHNDQUFzQyx1QkFBdUIseUJBQXlCLDhCQUE4Qiw4QkFBOEIsV0FBVyxZQUFZLFdBQVcsd0JBQXdCLFNBQVMsVUFBVSxzQkFBc0IsZ0JBQWdCLEVBQUUsUUFBUSxZQUFZLHNCQUFzQixrc0JBQWtzQixFQUFFLGNBQWMsc0JBQXNCLDZEQUE2RCxHQUFHLGdFQUFnRSxlQUFlLCtIQUErSCxtQkFBbUIsc0pBQXNKLHliQUF5YixtQ0FBbUMsK0JBQStCLElBQUksOEJBQThCLG9CQUFvQixFQUFFLGFBQWEsbUJBQW1CLGdDQUFnQyxtSkFBbUosaUVBQWlFLG9CQUFvQixlQUFlLGFBQWEsZ0JBQWdCLGlCQUFpQixlQUFlLFVBQVUsMEdBQTBHLHdDQUF3QyxnUkFBZ1IsMkJBQTJCLGdCQUFnQixtQ0FBbUMsb0JBQW9CLFFBQVEsK0JBQStCLG9TQUFvUyxXQUFXLGlCQUFpQiwrQkFBK0Isa0NBQWtDLHFCQUFxQixPQUFPLHVCQUF1QixnQkFBZ0IsRUFBRSxRQUFRLFlBQVksc0JBQXNCLDZTQUE2UyxJQUFJLGVBQWUsaUJBQWlCLE1BQU0sTUFBTSw2REFBNkQsa0ZBQWtGLFVBQVUsV0FBVyxNQUFNLEdBQUcsNkJBQTZCLHVDQUF1QyxlQUFlLGlCQUFpQixJQUFJLG9DQUFvQyxhQUFhLEVBQUUsaUJBQWlCLElBQUksUUFBUSxRQUFRLEVBQUUsUUFBUSxFQUFFLHNEQUFzRCx3Q0FBd0MseUJBQXlCLHNDQUFzQyx5SkFBeUosOEpBQThKLHdCQUF3QiwrRUFBK0UsWUFBWSxXQUFXLEtBQUssMERBQTBELFlBQVksWUFBWSxtQkFBbUIsU0FBUyxTQUFTLGlCQUFpQixnQkFBZ0IsVUFBVSxjQUFjLFFBQVEsZUFBZSxvQ0FBb0MsNEJBQTRCLHVCQUF1QixrQkFBa0IsU0FBUyxpQkFBaUIsZ0JBQWdCLFVBQVUsY0FBYyxhQUFhLHdGQUF3RixRQUFRLGVBQWUsb0NBQW9DLDRCQUE0Qix1QkFBdUIsa0JBQWtCLGVBQWUsVUFBVSxtRUFBbUUsaUJBQWlCLEVBQUUsNEVBQTRFLEVBQUUsR0FBRyxrQkFBa0IscUJBQXFCLGlDQUFpQyxzSkFBc0osMkJBQTJCLElBQUksMkJBQTJCLElBQUksVUFBVSxpQkFBaUIsY0FBYyxZQUFZLG9CQUFvQixxQkFBcUIsSUFBSSx3QkFBd0IsU0FBUyx1Q0FBdUMsa0JBQWtCLG9CQUFvQixnQkFBZ0IsaUJBQWlCLGVBQWUsOERBQThELHFDQUFxQyw4Q0FBOEMsbUJBQW1CLG1CQUFtQixtSUFBbUksOEJBQThCLFNBQVMsdURBQXVELGNBQWMsU0FBUyx5QkFBeUIsVUFBVSxtQkFBbUIsd0VBQXdFLE9BQU8sUUFBUSxZQUFZLHNCQUFzQixzZkFBc2YsSUFBSSxvQkFBb0IsZUFBZSxhQUFhLG1CQUFtQiwrRUFBK0UsY0FBYyx1Q0FBdUMsTUFBTSxXQUFXLElBQUkscUJBQXFCLHdDQUF3QyxxQkFBcUIsV0FBVyxnQ0FBZ0MsVUFBVSwyQkFBMkIsV0FBVyx1QkFBdUIsSUFBSSxLQUFLLGtEQUFrRCwwQ0FBMEMsV0FBVyxZQUFZLFdBQVcsaUJBQWlCLFNBQVMsMEJBQTBCLFlBQVksa0JBQWtCLFlBQVksSUFBSSxNQUFNLHNCQUFzQiw2Q0FBNkMsdUNBQXVDLDJCQUEyQix1QkFBdUIsTUFBTSx5QkFBeUIsUUFBUSxrQkFBa0IsSUFBSSx3Q0FBd0MsU0FBUyx3QkFBd0IsSUFBSSwrQkFBK0IsbUJBQW1CLEtBQUssK0JBQStCLDJDQUEyQyxpQkFBaUIsZUFBZSxTQUFTLFVBQVUsR0FBRyxtRUFBbUUsTUFBTSxxQ0FBcUMsT0FBTyxnQkFBZ0IsU0FBUywyQkFBMkIsYUFBYSx5QkFBeUIsUUFBUSxHQUFHLHlFQUF5RSxhQUFhLDRDQUE0QyxVQUFVLEdBQUcsVUFBVSxPQUFPLFdBQVcsUUFBUSxFQUFFLEVBQUUsSUFBSSxZQUFZLFlBQVksdUJBQXVCLEtBQUssUUFBUSxLQUFLLFlBQVksb0dBQW9HLEtBQUssbUJBQW1CLFdBQVcsS0FBSyxVQUFVLFFBQVEsS0FBSyxnQkFBZ0IsRUFBRSx3QkFBd0IsbUVBQW1FLG1CQUFtQixtRkFBbUYsUUFBUSxlQUFlLDRCQUE0QiwwQkFBMEIsa0lBQWtJLGFBQWEsS0FBSyxNQUFNLEVBQUUsNkZBQTZGLFVBQVUsVUFBVSxxQkFBcUIsNEJBQTRCLDBCQUEwQixrS0FBa0ssd0JBQXdCLEtBQUsscUJBQXFCLEVBQUUsMkdBQTJHLHFIQUFxSCxXQUFXLEtBQUssVUFBVSxFQUFFLDJHQUEyRyxXQUFXLEtBQUssVUFBVSxFQUFFLDJHQUEyRyxXQUFXLFVBQVUsaUJBQWlCLFFBQVEsR0FBRyw2QkFBNkIscUdBQXFHLGFBQWEsYUFBYSx5QkFBeUIsUUFBUSxHQUFHLGtCQUFrQixLQUFLLFdBQVcsRUFBRSx1QkFBdUIsY0FBYyw4RUFBOEUsVUFBVSxVQUFVLGFBQWEsaUJBQWlCLGVBQWUsaUJBQWlCLHNCQUFzQixRQUFRLGtCQUFrQixhQUFhLEdBQUcsd0NBQXdDLGtEQUFrRCwyREFBMkQsVUFBVSxhQUFhLGtCQUFrQixzQkFBc0IsVUFBVSxJQUFJLEdBQUcsaUVBQWlFLGdDQUFnQyxpRUFBaUUsVUFBVSxhQUFhLFNBQVMsTUFBTSxlQUFlLGdCQUFnQixpQ0FBaUMsaUJBQWlCLG9EQUFvRCx1QkFBdUIsOE1BQThNLGVBQWUsWUFBWSxHQUFHLCtDQUErQyxhQUFhLFNBQVMsNkJBQTZCLG9GQUFvRixpQkFBaUIsc0RBQXNELFFBQVEsR0FBRyxvRkFBb0YsVUFBVSxhQUFhLFVBQVUsd0NBQXdDLGFBQWEsa0NBQWtDLEdBQUcsaUdBQWlHLGFBQWEsU0FBUyxxR0FBcUcsbUJBQW1CLCtDQUErQyxpQkFBaUIsNEJBQTRCLHFCQUFxQixzRUFBc0UsNEdBQTRHLG1CQUFtQixzR0FBc0csZUFBZSxzQkFBc0IsaUJBQWlCLHFHQUFxRyxpQkFBaUIsNERBQTRELGlGQUFpRixxQkFBcUIsa0JBQWtCLCtFQUErRSxlQUFlLHlHQUF5RyxtQkFBbUIsUUFBUSxzRUFBc0UsbUJBQW1CLDhCQUE4QixTQUFTLGtCQUFrQix1QkFBdUIsRUFBRSxXQUFXLHVCQUF1QiwyQkFBMkIsbUNBQW1DLFNBQVMsdUJBQXVCLDhCQUE4QixrQkFBa0IsdUJBQXVCLEVBQUUsaUJBQWlCLHdCQUF3QixrQkFBa0IsU0FBUyxLQUFLLGtDQUFrQyxPQUFPLEtBQUssa0NBQWtDLFNBQVMsS0FBSyxvQkFBb0IseUdBQXlHLHFCQUFxQixTQUFTLFNBQVMsZUFBZSxpYkFBaWIsZ0JBQWdCLHlDQUF5QywwRUFBMEUsVUFBVSwwQ0FBMEMsTUFBTSw2REFBNkQseUVBQXlFLHlCQUF5QixnQ0FBZ0MsMkdBQTJHLFlBQVksV0FBVyx3Q0FBd0Msa0JBQWtCLE1BQU0sc0NBQXNDLEdBQUcsb0JBQW9CLDZDQUE2Qyw4QkFBOEIsK0JBQStCLEVBQUUsdURBQXVELGNBQWMsaUhBQWlILG1CQUFtQiwrRUFBK0UsVUFBVSx5Q0FBeUMsZ0JBQWdCLDhEQUE4RCxVQUFVLDhQQUE4UCxVQUFVLDJNQUEyTSxzQkFBc0IsMEJBQTBCLFFBQVEsNkJBQTZCLDBHQUEwRyxrQkFBa0IseUJBQXlCLDZCQUE2Qix5R0FBeUcsNkhBQTZILFlBQVksV0FBVyw0SEFBNEgsc0RBQXNELGdCQUFnQixZQUFZLFdBQVcsMkRBQTJELGlEQUFpRCx3RkFBd0YsVUFBVSxvQkFBb0Isa0NBQWtDLEVBQUUsUUFBUSxZQUFZLHNCQUFzQiw4WUFBOFksRUFBRSxjQUFjLHNCQUFzQix1REFBdUQsSUFBSSxvQkFBb0IsZUFBZSxhQUFhLGlCQUFpQix1QkFBdUIsaURBQWlELGdJQUFnSSxnQkFBZ0IsaUJBQWlCLGNBQWMsNENBQTRDLHNDQUFzQyxzR0FBc0csZ0JBQWdCLFdBQVcsY0FBYyx1Q0FBdUMsRUFBRSw2Q0FBNkMsYUFBYSw0Q0FBNEMsTUFBTSxXQUFXLElBQUksU0FBUyxZQUFZLHVCQUF1QixrQkFBa0IsOEdBQThHLG1CQUFtQiw0Q0FBNEMsK0JBQStCLFFBQVEsRUFBRSwwREFBMEQsb0JBQW9CLDREQUE0RCxlQUFlLHFDQUFxQyxJQUFJLDJDQUEyQyxTQUFTLHlGQUF5RixnQkFBZ0IscUJBQXFCLHNEQUFzRCxRQUFRLEVBQUUsU0FBUyxxQkFBcUIsY0FBYyx5R0FBeUcsTUFBTSwrQ0FBK0MsMEJBQTBCLHNCQUFzQiw4QkFBOEIsZ0JBQWdCLHFCQUFxQix5RUFBeUUsUUFBUSxFQUFFLFNBQVMscUJBQXFCLGNBQWMsc0dBQXNHLG9EQUFvRCxpQkFBaUIsd0NBQXdDLGdIQUFnSCxjQUFjLFlBQVksV0FBVyxLQUFLLFdBQVcsK0ZBQStGLGtCQUFrQixnQkFBZ0IsUUFBUSxXQUFXLGlCQUFpQixPQUFPLE1BQU0sZUFBZSxXQUFXLFlBQVksTUFBTSx5QkFBeUIsZUFBZSxtQkFBbUIscUJBQXFCLElBQUksS0FBSyxlQUFlLDJFQUEyRSxzQkFBc0IsUUFBUSxXQUFXLFlBQVksY0FBYyxnQkFBZ0IsZ0NBQWdDLE9BQU8seUJBQXlCLHFCQUFxQiw2QkFBNkIsc0NBQXNDLGdCQUFnQixpQkFBaUIsb0xBQW9MLG1CQUFtQiw2TEFBNkwsc0NBQXNDLFFBQVEsRUFBRSx3QkFBd0IsOEpBQThKLFNBQVMsTUFBTSxpQ0FBaUMsZ0ZBQWdGLGdDQUFnQywyQ0FBMkMsZ0VBQWdFLFVBQVUsbUJBQW1CLFVBQVUscUNBQXFDLDBCQUEwQiw0QkFBNEIsOEJBQThCLEtBQUssK0NBQStDLHNEQUFzRCw2QkFBNkIscUVBQXFFLFNBQVMsZUFBZSwyWUFBMlksZ0JBQWdCLG9FQUFvRSxVQUFVLDBDQUEwQyxNQUFNLDZEQUE2RCx5RUFBeUUsU0FBUyw2R0FBNkcsc0hBQXNILDBEQUEwRCxtQkFBbUIsOEJBQThCLE1BQU0sV0FBVyxHQUFHLG1DQUFtQyxjQUFjLGlIQUFpSCxVQUFVLDhFQUE4RSxnQkFBZ0IsOERBQThELFVBQVUsNlJBQTZSLFVBQVUsMExBQTBMLHNCQUFzQiwwQkFBMEIsU0FBUyx1QkFBdUIsUUFBUSw2QkFBNkIsNkVBQTZFLGtCQUFrQix5QkFBeUIsa0JBQWtCLFFBQVEsWUFBWSxXQUFXLEtBQUssYUFBYSxTQUFTLGVBQWUsYUFBYSx3SEFBd0gsNkNBQTZDLHdTQUF3Uyx1QkFBdUIsMkhBQTJILDJKQUEySixpQ0FBaUMsa0NBQWtDLDZCQUE2QixZQUFZLFdBQVcsS0FBSyxhQUFhLDBHQUEwRyxnQkFBZ0IsWUFBWSxXQUFXLDJEQUEyRCxnREFBZ0QsWUFBWSxnQkFBZ0IsS0FBSyxzRUFBc0UsNENBQTRDLHdGQUF3RixpQkFBaUIsOERBQThELGVBQWUsNEZBQTRGLE9BQU8sNkJBQTZCLDJCQUEyQixFQUFFLFFBQVEsWUFBWSxzQkFBc0Isc3NCQUFzc0IsSUFBSSxvQkFBb0IsZUFBZSxhQUFhLGdCQUFnQixpQkFBaUIsY0FBYyxzREFBc0QsT0FBTyxVQUFVLHdDQUF3Qyx1UEFBdVAsV0FBVyxrQkFBa0Isc0JBQXNCLDhDQUE4QyxTQUFTLDBCQUEwQiw0RkFBNEYsa0JBQWtCLGdCQUFnQixrQkFBa0IsdUtBQXVLLGtCQUFrQix1QkFBdUIsbUJBQW1CLHFCQUFxQixhQUFhLFVBQVUsdUJBQXVCLFVBQVUsd0JBQXdCLFlBQVksV0FBVyxLQUFLLG9CQUFvQixZQUFZLGFBQWEsS0FBSyx3Q0FBd0MsbUNBQW1DLGtCQUFrQixlQUFlLGlCQUFpQix1QkFBdUIsaUJBQWlCLGlCQUFpQixRQUFRLGVBQWUsTUFBTSxLQUFLLGdCQUFnQiwyQkFBMkIsS0FBSyxXQUFXLEtBQUssdUtBQXVLLHdCQUF3QixZQUFZLFVBQVUsbUNBQW1DLFVBQVUsY0FBYyw4Q0FBOEMsRUFBRSx3Q0FBd0MsTUFBTSxXQUFXLFlBQVksMENBQTBDLEVBQUUsaURBQWlELElBQUksV0FBVyxxRkFBcUYsU0FBUyxlQUFlLG9OQUFvTiwwQkFBMEIseUJBQXlCLDhRQUE4USxnQkFBZ0IseUNBQXlDLDBFQUEwRSxVQUFVLDBDQUEwQyxNQUFNLDZEQUE2RCx5RUFBeUUseUJBQXlCLGNBQWMsMkdBQTJHLFlBQVksV0FBVyx3Q0FBd0Msa0JBQWtCLE1BQU0sc0NBQXNDLEdBQUcsb0JBQW9CLDZDQUE2Qyw4QkFBOEIsK0JBQStCLEVBQUUsdURBQXVELGNBQWMsaUhBQWlILG1CQUFtQiwrRUFBK0UsVUFBVSx5Q0FBeUMsZ0JBQWdCLDhEQUE4RCxVQUFVLHNUQUFzVCxVQUFVLHNKQUFzSixvQkFBb0Isc0tBQXNLLHlFQUF5RSxzQkFBc0IsZ0VBQWdFLDhFQUE4RSx3Q0FBd0MsMkNBQTJDLHVGQUF1RixxQkFBcUIsOEVBQThFLHlDQUF5QyxZQUFZLGFBQWEsMENBQTBDLGdHQUFnRywrQkFBK0IsZUFBZSxLQUFLLDRCQUE0QixLQUFLLFFBQVEsS0FBSywyQkFBMkIsS0FBSyxvQkFBb0Isc0JBQXNCLHdJQUF3SSxjQUFjLCtEQUErRCxZQUFZLElBQUksS0FBSywrREFBK0QsK0RBQStELGVBQWUsNEJBQTRCLGdIQUFnSCxXQUFXLGtCQUFrQixVQUFVLDRDQUE0QyxnRUFBZ0UsYUFBYSxxQkFBcUIsZ09BQWdPLHlCQUF5QixzQkFBc0IsTUFBTSx3Q0FBd0MsNkJBQTZCLDRFQUE0RSxzQ0FBc0MsMENBQTBDLHdEQUF3RCxxQ0FBcUMsWUFBWSxJQUFJLEtBQUssVUFBVSxXQUFXLGFBQWEsOEZBQThGLHdEQUF3RCx5Q0FBeUMsdUNBQXVDLG9EQUFvRCxzQkFBc0IsZUFBZSxrQ0FBa0MsMEtBQTBLLGFBQWEsa0JBQWtCLFVBQVUsNENBQTRDLGtFQUFrRSxpQ0FBaUMsK0JBQStCLHFOQUFxTixlQUFlLFFBQVEsY0FBYywyRUFBMkUscVRBQXFULHlCQUF5QixvSEFBb0gsdUJBQXVCLGtKQUFrSixvQkFBb0IsdURBQXVELFVBQVUsb0JBQW9CLGtDQUFrQyxFQUFFLFFBQVEsWUFBWSxzQkFBc0IsNGtCQUE0a0IsRUFBRSxjQUFjLHNCQUFzQiw2UUFBNlEsSUFBSSxvQkFBb0Isc0JBQXNCLG9DQUFvQyx3RkFBd0YsOEJBQThCLGtCQUFrQixhQUFhLElBQUksd0JBQXdCLDJCQUEyQixPQUFPLG9CQUFvQixlQUFlLDBIQUEwSCxxQ0FBcUMsd0JBQXdCLGtDQUFrQyxtQ0FBbUMsbUNBQW1DLHlIQUF5SCxxQkFBcUIsMkVBQTJFLGlCQUFpQiwwSUFBMEksZ0JBQWdCLGlCQUFpQixlQUFlLCtGQUErRiw0REFBNEQsc0NBQXNDLG1QQUFtUCwyQkFBMkIsV0FBVyxZQUFZLFdBQVcsS0FBSyxrQkFBa0IsWUFBWSxXQUFXLEtBQUssc0tBQXNLLGdEQUFnRCxXQUFXLFNBQVMseUJBQXlCLFlBQVksV0FBVyxLQUFLLGFBQWEsMkJBQTJCLFdBQVcsNEJBQTRCLHVCQUF1QixVQUFVLFFBQVEsZ0JBQWdCLFdBQVcsaUJBQWlCLG1CQUFtQixjQUFjLDhDQUE4QyxFQUFFLHlDQUF5QyxFQUFFLCtDQUErQyxhQUFhLG1EQUFtRCxLQUFLLEtBQUssaURBQWlELEtBQUssY0FBYywwQ0FBMEMsRUFBRSwyQ0FBMkMsRUFBRSw0Q0FBNEMsR0FBRyxLQUFLLGlDQUFpQyxFQUFFLGlDQUFpQyxFQUFFLHVCQUF1QixFQUFFLHVCQUF1QixFQUFFLHVCQUF1QixFQUFFLHVCQUF1QixFQUFFLGtDQUFrQyxFQUFFLHNDQUFzQyxFQUFFLGlDQUFpQyxHQUFHLGNBQWMsdUNBQXVDLEVBQUUsOENBQThDLEVBQUUsMkNBQTJDLGFBQWEseUNBQXlDLEVBQUUsNENBQTRDLEVBQUUseUNBQXlDLEtBQUssbUJBQW1CLCtCQUErQix1QkFBdUIsb0RBQW9ELEVBQUUsZ0pBQWdKLGNBQWMsS0FBSyxLQUFLLDJDQUEyQyxRQUFRLDRCQUE0QixFQUFFLDRCQUE0QixFQUFFLHFDQUFxQyxFQUFFLCtCQUErQixFQUFFLHNDQUFzQyxFQUFFLG9DQUFvQyxFQUFFLGdDQUFnQyxFQUFFLDZCQUE2QixFQUFFLCtCQUErQixFQUFFLCtCQUErQixFQUFFLGtDQUFrQyxFQUFFLGtDQUFrQyxFQUFFLGdDQUFnQyxFQUFFLHNDQUFzQyxFQUFFLDJCQUEyQixFQUFFLGlDQUFpQyxFQUFFLHdDQUF3QyxRQUFRLDRCQUE0QixFQUFFLDRCQUE0QixFQUFFLGtEQUFrRCxFQUFFLG1EQUFtRCxFQUFFLGlEQUFpRCxFQUFFLGtEQUFrRCxFQUFFLDBDQUEwQyxFQUFFLGtEQUFrRCxFQUFFLHlCQUF5QixFQUFFLHVDQUF1QyxFQUFFLHFDQUFxQyxFQUFFLCtDQUErQyxFQUFFLDZDQUE2QyxFQUFFLHVDQUF1QyxFQUFFLHFDQUFxQyxFQUFFLCtDQUErQyxFQUFFLDZDQUE2QyxFQUFFLGtDQUFrQyxFQUFFLGdEQUFnRCxFQUFFLDhDQUE4QyxFQUFFLHFDQUFxQyxFQUFFLDZDQUE2QyxFQUFFLGdEQUFnRCxFQUFFLGlDQUFpQyxFQUFFLG1DQUFtQyxFQUFFLDhDQUE4QyxFQUFFLGdEQUFnRCxFQUFFLDhDQUE4QyxRQUFRLDhCQUE4QixRQUFRLHNCQUFzQixFQUFFLHNCQUFzQixFQUFFLCtDQUErQyxRQUFRLGdDQUFnQyxFQUFFLDhDQUE4QyxHQUFHLFVBQVUsZ0hBQWdILCtGQUErRixnQkFBZ0IsdWJBQXViLHVDQUF1QyxxRUFBcUUsbUNBQW1DLElBQUksMEJBQTBCLDhCQUE4QixJQUFJLDBCQUEwQixlQUFlLE1BQU0sbUNBQW1DLHVCQUF1QixrQ0FBa0MsMEJBQTBCLDRIQUE0SCxtUkFBbVIsS0FBSywrQkFBK0Isa0JBQWtCLElBQUksK0JBQStCLGtCQUFrQixlQUFlLDhIQUE4SCxpREFBaUQsMkZBQTJGLGVBQWUsc0RBQXNELG1CQUFtQix5REFBeUQsbUJBQW1CLGtGQUFrRixhQUFhLGtCQUFrQixLQUFLLHlCQUF5QixpQkFBaUIsWUFBWSxXQUFXLHlCQUF5QixpQkFBaUIsWUFBWSxXQUFXLDBCQUEwQixpQkFBaUIsWUFBWSxXQUFXLHdCQUF3QixpQkFBaUIsWUFBWSxXQUFXLHlCQUF5QixpQkFBaUIsWUFBWSxXQUFXLDBCQUEwQixpQkFBaUIsWUFBWSxXQUFXLDBCQUEwQixpQkFBaUIsWUFBWSxXQUFXLDJCQUEyQixpQkFBaUIsWUFBWSxXQUFXLDBCQUEwQixpQkFBaUIsWUFBWSxXQUFXLDJCQUEyQixpQkFBaUIsbURBQW1ELG1CQUFtQixpREFBaUQsaUJBQWlCLGdEQUFnRCxjQUFjLG1CQUFtQixlQUFlLDRCQUE0QixxQkFBcUIsV0FBVyxFQUFFLDBDQUEwQyxzREFBc0QsU0FBUywyQkFBMkIsdURBQXVELHdCQUF3Qiw0QkFBNEIscUJBQXFCLHlCQUF5Qiw0QkFBNEIscUJBQXFCLHdCQUF3Qix1REFBdUQscUJBQXFCLHlCQUF5Qix1REFBdUQscUJBQXFCLHNCQUFzQixvQ0FBb0MscUJBQXFCLHVCQUF1QixvQ0FBb0MscUJBQXFCLHdCQUF3QixtQkFBbUIsOEtBQThLLGdCQUFnQixvREFBb0QscURBQXFELHNEQUFzRCxzREFBc0Qsc0RBQXNELG9EQUFvRCwwREFBMEQsd0NBQXdDLHlCQUF5QiwyQkFBMkIsd0JBQXdCLHdCQUF3QiwyQkFBMkIsd0JBQXdCLGtDQUFrQyx1QkFBdUIsNENBQTRDLDhDQUE4QyxrQ0FBa0MsK0JBQStCLGlCQUFpQixJQUFJLEVBQUUsb0RBQW9ELGVBQWUsc2VBQXNlLFNBQVMsZUFBZSxzQkFBc0IsaUVBQWlFLG9CQUFvQixnQ0FBZ0MsMERBQTBELGVBQWUsWUFBWSxXQUFXLDRCQUE0QixTQUFTLCtCQUErQiwwREFBMEQsZUFBZSxZQUFZLFdBQVcsNEJBQTRCLFNBQVMsK0JBQStCLDBEQUEwRCxlQUFlLFlBQVksV0FBVyw0QkFBNEIsU0FBUyw2QkFBNkIsd0RBQXdELGVBQWUsWUFBWSxXQUFXLDBCQUEwQixTQUFTLDhCQUE4Qix5REFBeUQsZUFBZSxZQUFZLFdBQVcsMkJBQTJCLFNBQVMsK0JBQStCLDBEQUEwRCxlQUFlLFlBQVksV0FBVyw0QkFBNEIsU0FBUyxnQ0FBZ0MsMkRBQTJELGVBQWUsWUFBWSxXQUFXLDZCQUE2QixTQUFTLCtCQUErQiwwREFBMEQsZUFBZSxZQUFZLFdBQVcsNEJBQTRCLFNBQVMsZ0NBQWdDLDJEQUEyRCxlQUFlLFlBQVksV0FBVyw2QkFBNkIsU0FBUyxrQkFBa0IsVUFBVSxzQkFBc0IseUJBQXlCLEVBQUUseURBQXlELG1DQUFtQyxNQUFNLDREQUE0RCxjQUFjLHdCQUF3QiwwQkFBMEIscUJBQXFCLDBCQUEwQixhQUFhLE1BQU0sb0JBQW9CLHdCQUF3QiwyQ0FBMkMsbUJBQW1CLHdFQUF3RSwwQkFBMEIscURBQXFELDJCQUEyQixxREFBcUQsMEJBQTBCLGlHQUFpRywyQkFBMkIsaUdBQWlHLHlCQUF5Qix1Q0FBdUMsUUFBUSxnT0FBZ08sOEJBQThCLG9KQUFvSixzQkFBc0IsZUFBZSwwT0FBME8sT0FBTyxrT0FBa08sMEJBQTBCLGtDQUFrQywwQkFBMEIsOEJBQThCLHlCQUF5QixnREFBZ0QsZUFBZSx5QkFBeUIsZ0JBQWdCLFdBQVcsS0FBSyx1Q0FBdUMsT0FBTywrREFBK0QsU0FBUyxZQUFZLHFDQUFxQyxTQUFTLG9DQUFvQyxrREFBa0QsOElBQThJLFNBQVMsc0JBQXNCLGlCQUFpQixtRUFBbUUsd0JBQXdCLDZEQUE2RCx5QkFBeUIsNkRBQTZELHdCQUF3QixlQUFlLG9DQUFvQyxZQUFZLElBQUksK0JBQStCLCtCQUErQixXQUFXLGVBQWUsVUFBVSxpQkFBaUIsbUVBQW1FLDhCQUE4QixxREFBcUQsaUNBQWlDLHFDQUFxQyxrQ0FBa0MscUNBQXFDLGtDQUFrQyxxQ0FBcUMsZ0NBQWdDLHFDQUFxQyxpQ0FBaUMscUNBQXFDLGtDQUFrQyxxQ0FBcUMsbUNBQW1DLHFDQUFxQyxrQ0FBa0MscUNBQXFDLG1DQUFtQyxxQ0FBcUMsK0JBQStCLDhDQUE4QyxpQ0FBaUMsa0RBQWtELGtDQUFrQyxtREFBbUQsaUNBQWlDLGtEQUFrRCxrQ0FBa0MsbURBQW1ELGdDQUFnQyxnREFBZ0QsaUNBQWlDLGlEQUFpRCxnQ0FBZ0MsK0NBQStDLCtCQUErQixnREFBZ0QsZ0NBQWdDLGlEQUFpRCxpQ0FBaUMsdUNBQXVDLGFBQWEsV0FBVyxtQkFBbUIsNEJBQTRCLG1CQUFtQixVQUFVLE1BQU0sc0RBQXNELG9CQUFvQixFQUFFLFFBQVEsb0JBQW9CLDJCQUEyQixhQUFhLHlDQUF5QyxJQUFJLG1CQUFtQiw4TUFBOE0sWUFBWSxlQUFlLFlBQVksOENBQThDLHlCQUF5QixVQUFVLHdEQUF3RCxFQUFFLFlBQVksc0NBQXNDLEtBQUssS0FBSyxhQUFhLHdCQUF3QixxRkFBcUYsZ0JBQWdCLHNCQUFzQiwwRUFBMEUsZ0NBQWdDLHFCQUFxQixPQUFPLFFBQVEseUJBQXlCLFdBQVcsU0FBUyxlQUFlLHNGQUFzRixFQUFFLDRJQUE0SSxTQUFTLG1EQUFtRCxTQUFTLHVGQUF1RixXQUFXLCtCQUErQixrQkFBa0IsNEZBQTRGLFNBQVMsaUJBQWlCLFVBQVUsTUFBTSw0QkFBNEIsV0FBVyw0Q0FBNEMsTUFBTSxRQUFRLGlCQUFpQix1QkFBdUIsRUFBRSxrQkFBa0IsK0JBQStCLGtCQUFrQixRQUFRLEVBQUUsa0JBQWtCLFVBQVUsa0JBQWtCLGdGQUFnRixrQkFBa0IsUUFBUSxFQUFFLFFBQVEsMkJBQTJCLFVBQVUsRUFBRSxVQUFVLEVBQUUsaUJBQWlCLG9CQUFvQixRQUFRLEVBQUUsVUFBVSxFQUFFLGlCQUFpQixvQkFBb0IsVUFBVSxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsb0JBQW9CLFFBQVEsRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEdBQUcsMkRBQTJELGlCQUFpQixrQkFBa0IsZ0JBQWdCLGtEQUFrRCxtRkFBbUYsd0JBQXdCLG9EQUFvRCwrSkFBK0oseUJBQXlCLGlCQUFpQixnQ0FBZ0Msb0JBQW9CLGdCQUFnQix3QkFBd0IsUUFBUSxJQUFJLE9BQU8seUVBQXlFLDRIQUE0SCxhQUFhLFNBQVMsY0FBYyxvREFBb0Qsb0JBQW9CLGVBQWUsb0NBQW9DLG1CQUFtQixlQUFlLHdCQUF3QixTQUFTLGNBQWMsNkVBQTZFLHdCQUF3QixlQUFlLFlBQVksb0JBQW9CLEtBQUssc0JBQXNCLG9EQUFvRCxTQUFTLFNBQVMsd0JBQXdCLGNBQWMsMkNBQTJDLG1CQUFtQiw0QkFBNEIsZUFBZSwrQkFBK0IseUJBQXlCLHNCQUFzQixTQUFTLFlBQVksV0FBVyxLQUFLLDBEQUEwRCwwRUFBMEUsU0FBUyxhQUFhLE9BQU8sUUFBUSxZQUFZLGdEQUFnRCxRQUFRLHVCQUF1Qiw2QkFBNkIsd0NBQXdDLFFBQVEsbUZBQW1GLGVBQWUsZUFBZSw4R0FBOEcsV0FBVyxpQkFBaUIsY0FBYywrRUFBK0Usb0JBQW9CLHlFQUF5RSwrQkFBK0IsWUFBWSxnQkFBZ0IsK0JBQStCLG1CQUFtQixnQ0FBZ0MsaUZBQWlGLDJDQUEyQyxvS0FBb0ssOEJBQThCLGtJQUFrSSwyQ0FBMkMsNEJBQTRCLE1BQU0sOENBQThDLE1BQU0sNERBQTRELElBQUksNkJBQTZCLEtBQUssd0NBQXdDLGtCQUFrQixlQUFlLCtCQUErQixZQUFZLFdBQVcsMkJBQTJCLFlBQVksV0FBVyxLQUFLLGlEQUFpRCxrQkFBa0IsZUFBZSxrRUFBa0UscUJBQXFCLG9CQUFvQixRQUFRLDhDQUE4QyxxREFBcUQsb0JBQW9CLGNBQWMsOEhBQThILHlDQUF5QyxxQkFBcUIsc0NBQXNDLFFBQVEsa0JBQWtCLFNBQVMsc0NBQXNDLGtDQUFrQyx1QkFBdUIsMkJBQTJCLFFBQVEsZ0JBQWdCLFNBQVMsU0FBUyxZQUFZLGFBQWEsS0FBSyxrRUFBa0Usa0NBQWtDLCtEQUErRCxRQUFRLG9DQUFvQyxnQkFBZ0IsdUJBQXVCLGVBQWUsNkRBQTZELHNCQUFzQix3QkFBd0IsMkRBQTJELG1DQUFtQyw4Q0FBOEMsaUJBQWlCLE1BQU0saUNBQWlDLGtDQUFrQyxNQUFNLGlDQUFpQyxlQUFlLGFBQWEsa0JBQWtCLCtCQUErQiw2R0FBNkcsMkJBQTJCLDZHQUE2RywyQkFBMkIsNkRBQTZELGNBQWMscURBQXFELE1BQU0sY0FBYyxrQ0FBa0MsT0FBTyw4QkFBOEIsZ0JBQWdCLFFBQVEsNEJBQTRCLGtFQUFrRSx5R0FBeUcsdUNBQXVDLDREQUE0RCxVQUFVLE9BQU8sVUFBVSxtQ0FBbUMsS0FBSyx3RkFBd0YsS0FBSyxPQUFPLHlCQUF5QixnQkFBZ0IsdUJBQXVCLDRDQUE0QyxpQ0FBaUMsd0NBQXdDLHFCQUFxQix3QkFBd0IscUNBQXFDLG1CQUFtQixRQUFRLDRGQUE0Rix5QkFBeUIseUJBQXlCLGtCQUFrQixrQ0FBa0MsaUJBQWlCLFFBQVEsb0NBQW9DLGVBQWUsNkNBQTZDLHlCQUF5QixnQkFBZ0IsbUNBQW1DLFFBQVEsWUFBWSxhQUFhLEtBQUssd0JBQXdCLG1DQUFtQyxvQ0FBb0MsdUNBQXVDLFFBQVEsWUFBWSxhQUFhLEtBQUssMkNBQTJDLCtDQUErQyw2VkFBNlYsNEhBQTRILE1BQU0scUNBQXFDLGVBQWUsY0FBYyxVQUFVLG1EQUFtRCxNQUFNLGlEQUFpRCxVQUFVLHNEQUFzRCxNQUFNLDhDQUE4QyxRQUFRLG1DQUFtQyx1QkFBdUIsaUJBQWlCLG9EQUFvRCxZQUFZLEtBQUsseUJBQXlCLG1CQUFtQixNQUFNLGtDQUFrQywyREFBMkQsUUFBUSx5RUFBeUUsZUFBZSxRQUFRLDhDQUE4Qyw2TkFBNk4sdUJBQXVCLGlEQUFpRCx1QkFBdUIsYUFBYSw2REFBNkQsdUJBQXVCLFlBQVksUUFBUSx5QkFBeUIseUJBQXlCLGdCQUFnQixNQUFNLGNBQWMsb0NBQW9DLG1FQUFtRSw2QkFBNkIsWUFBWSw2R0FBNkcsNkJBQTZCLHNIQUFzSCwwREFBMEQsNkJBQTZCLGlCQUFpQixNQUFNLGFBQWEsR0FBRywrQkFBK0Isb0RBQW9ELDZCQUE2QixnQkFBZ0IsTUFBTSxnQ0FBZ0MsR0FBRyxRQUFRLEtBQUssb0JBQW9CLEtBQUssa0JBQWtCLFFBQVEsS0FBSyxxQkFBcUIsS0FBSyx5QkFBeUIsb0JBQW9CLDZCQUE2Qix5REFBeUQsRUFBRSxvSEFBb0gsbUJBQW1CLGNBQWMsaUJBQWlCLHNDQUFzQyx5Q0FBeUMseURBQXlELEVBQUUsdUNBQXVDLDhFQUE4RSxpR0FBaUcsbUJBQW1CLHFHQUFxRyxlQUFlLGtEQUFrRCxVQUFVLFNBQVMsZUFBZSxxT0FBcU8sVUFBVSxtSkFBbUosZ0JBQWdCLCtaQUErWixVQUFVLG1PQUFtTyx1QkFBdUIsU0FBUyxtQkFBbUIsa0lBQWtJLFVBQVUsMk9BQTJPLFVBQVUsdUpBQXVKLDBCQUEwQixTQUFTLGVBQWUsa1pBQWtaLGtEQUFrRCw4RkFBOEYsbUZBQW1GLHlpQkFBeWlCLGVBQWUsOFBBQThQLHNDQUFzQyxZQUFZLFdBQVcsd0NBQXdDLHdCQUF3Qiw2QkFBNkIsZ0JBQWdCLDRYQUE0WCxrQ0FBa0MseUZBQXlGLFVBQVUsMENBQTBDLE1BQU0sZ0RBQWdELDRDQUE0QyxRQUFRLDRCQUE0QixnSEFBZ0gsb0ZBQW9GLE1BQU0sdURBQXVELHNDQUFzQyxtQkFBbUIsOENBQThDLFdBQVcsdUJBQXVCLG9IQUFvSCx1QkFBdUIsdUJBQXVCLG1HQUFtRywyRkFBMkYsd0RBQXdELE1BQU0sMERBQTBELDZFQUE2RSwrREFBK0QsVUFBVSxLQUFLLE1BQU0sUUFBUSxjQUFjLGtCQUFrQixrQkFBa0IsYUFBYSxrR0FBa0csa0JBQWtCLGFBQWEsb0dBQW9HLGtCQUFrQixzQ0FBc0MsVUFBVSxFQUFFLEdBQUcsSUFBSSxHQUFHLElBQUksRUFBRSxZQUFZLFdBQVcsS0FBSywwREFBMEQsT0FBTyxLQUFLLFNBQVMsMkJBQTJCLGdDQUFnQyx3Q0FBd0MsdUVBQXVFLCtEQUErRCxpQ0FBaUMsMkZBQTJGLGNBQWMsK0tBQStLLFVBQVUseURBQXlELGdCQUFnQixnSEFBZ0gsVUFBVSxpVUFBaVUsbUJBQW1CLGlFQUFpRSxVQUFVLHNGQUFzRiwwQkFBMEIsb0NBQW9DLHVCQUF1QixvREFBb0QsV0FBVyxzQkFBc0IsV0FBVyxVQUFVLCtDQUErQyxzQ0FBc0MsdUJBQXVCLEtBQUssVUFBVSwrQ0FBK0MsNkJBQTZCLFlBQVksV0FBVyxLQUFLLGFBQWEseUVBQXlFLFFBQVEsMkRBQTJELG9DQUFvQywrUEFBK1AsWUFBWSxXQUFXLEtBQUssTUFBTSwrSEFBK0gsOEJBQThCLGdlQUFnZSxhQUFhLGtJQUFrSSxzQ0FBc0MscUZBQXFGLHlDQUF5Qyw4SkFBOEosa09BQWtPLHFCQUFxQiw4R0FBOEcsZ0NBQWdDLFlBQVksSUFBSSxLQUFLLHNDQUFzQyxvSEFBb0gsZ0NBQWdDLDJJQUEySSxZQUFZLDhCQUE4QixLQUFLLG9DQUFvQyxrVUFBa1UsdURBQXVELFdBQVcsWUFBWSxJQUFJLEtBQUssaUJBQWlCLFdBQVcsd0ZBQXdGLG1DQUFtQyxNQUFNLFlBQVksSUFBSSxLQUFLLGlCQUFpQixtQkFBbUIsd0ZBQXdGLDJDQUEyQyxNQUFNLFlBQVksSUFBSSxLQUFLLGlCQUFpQixXQUFXLHdGQUF3RixtQ0FBbUMsTUFBTSxZQUFZLElBQUksS0FBSyxpQkFBaUIsbUJBQW1CLHdGQUF3RiwyQ0FBMkMsTUFBTSxTQUFTLDZCQUE2Qix3QkFBd0IsWUFBWSw4QkFBOEIsS0FBSyxvQ0FBb0MsaVFBQWlRLGNBQWMseUNBQXlDLGNBQWMseUNBQXlDLGVBQWUsb0RBQW9ELDBCQUEwQiwwRUFBMEUsMEJBQTBCLDBFQUEwRSwrQkFBK0Isc0VBQXNFLDZCQUE2QixJQUFJLGdGQUFnRiwwQkFBMEIsK0ZBQStGLGlEQUFpRCxZQUFZLDhCQUE4QixLQUFLLFVBQVUsb0NBQW9DLHNFQUFzRSwrQ0FBK0Msd0JBQXdCLHdEQUF3RCxrRUFBa0Usc0RBQXNELEdBQUcsZ0JBQWdCLHdIQUF3SCxnS0FBZ0ssMkNBQTJDLG9DQUFvQyxnS0FBZ0sscUVBQXFFLDhUQUE4VCwrSkFBK0osVUFBVSxzQkFBc0IsNkRBQTZELGlEQUFpRCxRQUFRLFlBQVksc0JBQXNCLG9nQkFBb2dCLHVFQUF1RSxzVEFBc1QsRUFBRSxjQUFjLHNCQUFzQiwwb0ZBQTBvRixJQUFJLFNBQVMsZUFBZSwwSEFBMEgsd0ZBQXdGLFlBQVksdUJBQXVCLDZDQUE2QyxpRkFBaUYsdUlBQXVJLGFBQWEsd0ZBQXdGLGdCQUFnQixVQUFVLFlBQVksYUFBYSwrQkFBK0Isc0JBQXNCLEVBQUUsb0JBQW9CLGVBQWUsYUFBYSxpQkFBaUIsa3NCQUFrc0IsNkNBQTZDLE1BQU0sV0FBVywyQ0FBMkMsNENBQTRDLDhEQUE4RCwyQkFBMkIsa0NBQWtDLHdDQUF3QywyQ0FBMkMseURBQXlELG1CQUFtQixLQUFLLElBQUksdUNBQXVDLGlCQUFpQixnQkFBZ0IsaUJBQWlCLGNBQWMsU0FBUyx5QkFBeUIsZ0VBQWdFLHFCQUFxQiwrQ0FBK0MsZ0RBQWdELDJFQUEyRSxXQUFXLDBLQUEwSyw2Q0FBNkMsK0ZBQStGLDZCQUE2QixxREFBcUQsU0FBUyxZQUFZLCtFQUErRSxvRkFBb0YsaUNBQWlDLFlBQVkseUdBQXlHLFdBQVcsc0RBQXNELFVBQVUsT0FBTyxRQUFRLFlBQVksc0JBQXNCLDhNQUE4TSxJQUFJLG9CQUFvQixlQUFlLGNBQWMsT0FBTyxRQUFRLFlBQVksc0JBQXNCLDRnQkFBNGdCLElBQUksb0JBQW9CLGVBQWUsY0FBYyxvQkFBb0IsZUFBZSxVQUFVLGlCQUFpQiw4RUFBOEUsbUJBQW1CLG9GQUFvRix3QkFBd0IsT0FBTyxnREFBZ0QsbUJBQW1CLDhDQUE4QyxlQUFlLHFCQUFxQixnQkFBZ0IsVUFBVSxZQUFZLHVEQUF1RCxTQUFTLGVBQWUscUpBQXFKLDZDQUE2QyxHQUFHLFVBQVUsd0dBQXdHLDZDQUE2QyxPQUFPLFNBQVMscURBQXFELG1CQUFtQixTQUFTLGlCQUFpQixpRUFBaUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxrSUFBa0ksT0FBTyw2Q0FBNkMsVUFBVSwyQkFBMkIsV0FBVyxpQkFBaUIsU0FBUyxJQUFJLFNBQVMsR0FBRyxjQUFjLDBIQUEwSCxtQ0FBbUMsa0JBQWtCLDRCQUE0QiwyRkFBMkYsOEdBQThHLDBGQUEwRix1QkFBdUIsYUFBYSx1QkFBdUIsbUNBQW1DLHNCQUFzQixlQUFlLGtDQUFrQyxlQUFlLG1CQUFtQixlQUFlLHlFQUF5RSxpQkFBaUIsZUFBZSxlQUFlLG1FQUFtRSxTQUFTLHFCQUFxQiwrQkFBK0IseUJBQXlCLHNCQUFzQiwrQ0FBK0MsV0FBVyx5Q0FBeUMsYUFBYSw2QkFBNkIsaUNBQWlDLHFEQUFxRCxRQUFRLG1CQUFtQiwwQ0FBMEMseURBQXlELFNBQVMsbUJBQW1CLG9CQUFvQixrRUFBa0UsNkJBQTZCLEVBQUUsTUFBTSxFQUFFLE1BQU0sR0FBRywwQkFBMEIsY0FBYyxTQUFTLGVBQWUsWUFBWSxtREFBbUQsVUFBVSxnREFBZ0QsV0FBVyx5SUFBeUksY0FBYyx3QkFBd0IsV0FBVyxZQUFZLElBQUksb0NBQW9DLFNBQVMsdUJBQXVCLDZDQUE2QyxPQUFPLGdFQUFnRSxFQUFFLDZCQUE2QixFQUFFLDZCQUE2QixFQUFFLG1FQUFtRSxNQUFNLDJCQUEyQixRQUFRLGdCQUFnQixlQUFlLE1BQU0sYUFBYSxtQkFBbUIsNkNBQTZDLGdCQUFnQiwyQkFBMkIsa0RBQWtELFdBQVcsVUFBVSxPQUFPLEdBQUcsT0FBTyxHQUFHLE9BQU8sR0FBRyxTQUFTLGlCQUFpQiw4REFBOEQsU0FBUyx1QkFBdUIsb0RBQW9ELGdCQUFnQixJQUFJLE1BQU0sRUFBRSxHQUFHLHNGQUFzRixRQUFRLDZGQUE2RixVQUFVLGdHQUFnRyxZQUFZLG1FQUFtRSxZQUFZLElBQUksZ0JBQWdCLGlCQUFpQixHQUFHLDJCQUEyQiwrSkFBK0osd0JBQXdCLG1FQUFtRSxZQUFZLElBQUksZ0JBQWdCLGlCQUFpQixHQUFHLDJCQUEyQiw2SkFBNkosYUFBYSxnQ0FBZ0MsdUNBQXVDLG1JQUFtSSxZQUFZLHdIQUF3SCxxRUFBcUUseUhBQXlILGNBQWMsdU5BQXVOLFVBQVUscUZBQXFGLFlBQVkscUZBQXFGLGtCQUFrQixxREFBcUQsY0FBYyx3Q0FBd0MsV0FBVyxVQUFVLGlCQUFpQixHQUFHLGlCQUFpQixHQUFHLGlCQUFpQixFQUFFLGdCQUFnQiwrREFBK0QsdUJBQXVCLHFCQUFxQixhQUFhLGdFQUFnRSxtREFBbUQsbUJBQW1CLEVBQUUsU0FBUyxtQ0FBbUMsa0ZBQWtGLHFFQUFxRSxFQUFFLDBGQUEwRixxQkFBcUIsNEJBQTRCLG1EQUFtRCxpR0FBaUcsTUFBTSxvRkFBb0YsTUFBTSwyRkFBMkYsWUFBWSxJQUFJLDBOQUEwTiw4UkFBOFIsWUFBWSxJQUFJLGdCQUFnQixJQUFJLEtBQUssc0JBQXNCLG9EQUFvRCxTQUFTLDREQUE0RCx1Q0FBdUMsa0JBQWtCLHdFQUF3RSxVQUFVLGlIQUFpSCwrQkFBK0IsY0FBYyw0RUFBNEUsWUFBWSxlQUFlLHFDQUFxQyxtQ0FBbUMsc0JBQXNCLDhEQUE4RCwwRUFBMEUsVUFBVSxhQUFhLE1BQU0sY0FBYyxVQUFVLGFBQWEsTUFBTSxjQUFjLGtDQUFrQyxZQUFZLElBQUksZ0JBQWdCLElBQUksMkRBQTJELGlCQUFpQixTQUFTLGVBQWUsdUJBQXVCLHlCQUF5QixZQUFZLFdBQVcsS0FBSyxhQUFhLHNEQUFzRCxVQUFVLCtCQUErQixVQUFVLHNGQUFzRixHQUFHLDBDQUEwQyw0QkFBNEIsR0FBRyxnQ0FBZ0MsU0FBUyx1QkFBdUIsMkdBQTJHLGVBQWUsNkxBQTZMLGdCQUFnQixrQkFBa0IsU0FBUyxTQUFTLHdCQUF3Qiw4RUFBOEUsVUFBVSxTQUFTLGlCQUFpQixtTEFBbUwsb0JBQW9CLHNDQUFzQywwQ0FBMEMsZ0NBQWdDLFlBQVksV0FBVyxLQUFLLG1DQUFtQyxZQUFZLFdBQVcsS0FBSyxhQUFhLGlHQUFpRyxzRUFBc0UsZUFBZSwyTUFBMk0sZUFBZSxvQkFBb0Isb0JBQW9CLGdRQUFnUSw2REFBNkQsc0RBQXNELG9EQUFvRCxZQUFZLGFBQWEsbUNBQW1DLFVBQVUsMENBQTBDLDJCQUEyQixXQUFXLFdBQVcsTUFBTSxZQUFZLFdBQVcsS0FBSyxhQUFhLGtCQUFrQixJQUFJLHNDQUFzQyxXQUFXLGtOQUFrTixTQUFTLDJDQUEyQywrQkFBK0IscUJBQXFCLFlBQVksV0FBVyxvQ0FBb0MsVUFBVSxhQUFhLHNFQUFzRSxtQkFBbUIsaUJBQWlCLDZFQUE2RSw0REFBNEQsd0JBQXdCLFlBQVksV0FBVyxLQUFLLGFBQWEsOEJBQThCLGFBQWEsZUFBZSxTQUFTLDJEQUEyRCxZQUFZLE9BQU8sdUVBQXVFLHFCQUFxQixlQUFlLHlDQUF5QyxVQUFVLFdBQVcsZ0NBQWdDLHlDQUF5QyxJQUFJLHNDQUFzQyxXQUFXLG9CQUFvQixjQUFjLDZEQUE2RCxTQUFTLFlBQVksdUVBQXVFLFVBQVUsV0FBVyxXQUFXLGdKQUFnSix1QkFBdUIsb0JBQW9CLHNDQUFzQyx5Q0FBeUMsR0FBRyxlQUFlLDhCQUE4Qix5RkFBeUYsUUFBUSw2QkFBNkIsaUJBQWlCLFdBQVcsdUJBQXVCLFdBQVcsWUFBWSxXQUFXLEtBQUssYUFBYSxNQUFNLFlBQVksYUFBYSxLQUFLLG9CQUFvQiw4bEJBQThsQixTQUFTLHNCQUFzQix3Q0FBd0MsRUFBRSxtQkFBbUIscUJBQXFCLHNEQUFzRCxRQUFRLHNEQUFzRCx1QkFBdUIsdUNBQXVDLDBCQUEwQixLQUFLLE9BQU8sRUFBRSxxQkFBcUIsd0JBQXdCLHlCQUF5QixXQUFXLFFBQVEsS0FBSyxNQUFNLEVBQUUsc0JBQXNCLGdCQUFnQixxQ0FBcUMsMERBQTBELHdCQUF3QixPQUFPLGtCQUFrQix5QkFBeUIsaUJBQWlCLGtCQUFrQixVQUFVLGVBQWUsUUFBUSxZQUFZLGFBQWEseUJBQXlCLFNBQVMsbUJBQW1CLGtCQUFrQixpQkFBaUIsdURBQXVELHlCQUF5Qiw4QkFBOEIsUUFBUSxnQkFBZ0IsWUFBWSxhQUFhLEtBQUssa0NBQWtDLFVBQVUsMkZBQTJGLDZDQUE2QyxPQUFPLCtCQUErQixtRkFBbUYseUVBQXlFLCtCQUErQixvQkFBb0IsbUJBQW1CLFlBQVksYUFBYSxLQUFLLGlEQUFpRCxLQUFLLFFBQVEsRUFBRSxLQUFLLDhEQUE4RCx5Q0FBeUMsd0JBQXdCLDBDQUEwQyxNQUFNLHNEQUFzRCxnQkFBZ0IsWUFBWSxxQkFBcUIsZ0ZBQWdGLE9BQU8sMkNBQTJDLG1IQUFtSCxvQ0FBb0MsaUJBQWlCLDBDQUEwQyw4SUFBOEksb0RBQW9ELG9VQUFvVSxNQUFNLCtDQUErQyx5REFBeUQsOENBQThDLFFBQVEseUJBQXlCLHdGQUF3Rix1SUFBdUksZ0NBQWdDLDhCQUE4QixZQUFZLGFBQWEsS0FBSyxzQkFBc0IsWUFBWSxhQUFhLGlDQUFpQyxlQUFlLG1CQUFtQixFQUFFLG1CQUFtQixFQUFFLG9CQUFvQixFQUFFLG9CQUFvQixHQUFHLFNBQVMsbUJBQW1CLFFBQVEsOEVBQThFLFNBQVMsbUJBQW1CLFVBQVUsb0JBQW9CLEVBQUUsb0JBQW9CLHNCQUFzQixRQUFRLG9DQUFvQyxVQUFVLDBDQUEwQyxHQUFHLGVBQWUscUJBQXFCLElBQUkscUJBQXFCLGVBQWUscUJBQXFCLGVBQWUsU0FBUyxpQ0FBaUMsTUFBTSxrQ0FBa0MsdUJBQXVCLDJCQUEyQixxQkFBcUIsVUFBVSwrQ0FBK0MsTUFBTSxnSEFBZ0gsMkNBQTJDLG9FQUFvRSwyQkFBMkIsK0RBQStELGtHQUFrRyxpTEFBaUwsa0RBQWtELDRCQUE0QixTQUFTLDRDQUE0QyxzR0FBc0csS0FBSyxtQkFBbUIsUUFBUSwyQ0FBMkMsTUFBTSwwQkFBMEIsdUNBQXVDLHlEQUF5RCxPQUFPLG9CQUFvQixPQUFPLE1BQU0saUJBQWlCLGFBQWEsS0FBSyxJQUFJLEVBQUUsc0JBQXNCLG1CQUFtQixZQUFZLFFBQVEsU0FBUyxNQUFNLGlCQUFpQiw4QkFBOEIsS0FBSyxJQUFJLEVBQUUsZUFBZSxZQUFZLDJEQUEyRCxlQUFlLFNBQVMsd0JBQXdCLDhCQUE4QixhQUFhLFlBQVksV0FBVyxLQUFLLGFBQWEscUZBQXFGLDBCQUEwQixVQUFVLHNCQUFzQiwyQkFBMkIsWUFBWSxJQUFJLGlCQUFpQixJQUFJLGlDQUFpQyxrQkFBa0IsZ0JBQWdCLGFBQWEsNkJBQTZCLElBQUksT0FBTyxzQ0FBc0Msc0NBQXNDLDJCQUEyQixlQUFlLEtBQUssU0FBUyxFQUFFLGdCQUFnQiwrUUFBK1Esc0NBQXNDLEVBQUUsaUNBQWlDLElBQUksUUFBUSxpQkFBaUIsbUJBQW1CLHFCQUFxQixnREFBZ0QsZUFBZSxZQUFZLFdBQVcsS0FBSyxhQUFhLDZCQUE2QixJQUFJLE9BQU8sb0JBQW9CLDBGQUEwRiw2QkFBNkIsOENBQThDLE9BQU8sOEJBQThCLGlRQUFpUSx1Q0FBdUMsaUJBQWlCLGlDQUFpQyxZQUFZLHNDQUFzQyxnREFBZ0QsTUFBTSwyREFBMkQsVUFBVSxvREFBb0QsTUFBTSxpREFBaUQsYUFBYSw0QkFBNEIsWUFBWSxXQUFXLHFCQUFxQixVQUFVLHNDQUFzQyxNQUFNLDZDQUE2QyxNQUFNLHFCQUFxQixNQUFNLGtCQUFrQixVQUFVLHdDQUF3QyxNQUFNLHFDQUFxQyxNQUFNLGVBQWUsTUFBTSxrQkFBa0IsYUFBYSxTQUFTLG1CQUFtQixNQUFNLHFHQUFxRyxJQUFJLE1BQU0sc0JBQXNCLFlBQVksV0FBVyxNQUFNLDBDQUEwQywwRUFBMEUsaUJBQWlCLHNDQUFzQyxNQUFNLE1BQU0seUdBQXlHLDZDQUE2QyxtQkFBbUIsV0FBVyxtQ0FBbUMsaUJBQWlCLFlBQVksZUFBZSxVQUFVLDhEQUE4RCwwREFBMEQsZ0JBQWdCLG1DQUFtQyxpQ0FBaUMsRUFBRSxrQkFBa0IsK0RBQStELDBNQUEwTSwyQ0FBMkMsa0JBQWtCLHFDQUFxQywrUkFBK1IsTUFBTSxxS0FBcUssZ0JBQWdCLDRGQUE0RixvQ0FBb0Msc0NBQXNDLFdBQVcsYUFBYSx5Q0FBeUMsaURBQWlELE9BQU8sMkVBQTJFLE1BQU0saURBQWlELGdGQUFnRiw0Q0FBNEMsdUJBQXVCLFdBQVcsZ0VBQWdFLGlCQUFpQixjQUFjLGdDQUFnQyxHQUFHLGdHQUFnRyw0Q0FBNEMsOEJBQThCLGNBQWMsZ0NBQWdDLEdBQUcseVJBQXlSLGtDQUFrQyxrQkFBa0Isd0JBQXdCLE9BQU8sYUFBYSxpREFBaUQsSUFBSSwrQkFBK0IscUNBQXFDLG1HQUFtRyxtRkFBbUYsc1hBQXNYLFNBQVMsa0VBQWtFLG9DQUFvQyxpQkFBaUIsME9BQTBPLHVDQUF1QywyQ0FBMkMsMkNBQTJDLFdBQVcsTUFBTSxlQUFlLHFDQUFxQyxvQkFBb0Isd0JBQXdCLHNLQUFzSyx1SEFBdUgsdURBQXVELHdEQUF3RCw4Q0FBOEMsMkJBQTJCLHlDQUF5QyxxQ0FBcUMsWUFBWSw0REFBNEQsaUJBQWlCLDJCQUEyQixxRkFBcUYsOEZBQThGLDJDQUEyQyxrQ0FBa0MsaURBQWlELG1CQUFtQixvRUFBb0Usb0JBQW9CLG1CQUFtQix3QkFBd0IseURBQXlELHFIQUFxSCx1QkFBdUIsK0JBQStCLDRCQUE0Qiw4Q0FBOEMsaUJBQWlCLDJNQUEyTSxNQUFNLDhGQUE4RixxSkFBcUosTUFBTSwrQ0FBK0MseURBQXlELGdDQUFnQyxRQUFRLHNLQUFzSyxHQUFHLFNBQVMsMERBQTBELFdBQVcsZ0VBQWdFLGlCQUFpQixjQUFjLGdDQUFnQyxHQUFHLGdHQUFnRyw0Q0FBNEMsOEJBQThCLGNBQWMsZ0NBQWdDLEdBQUcsbUdBQW1HLHdEQUF3RCxrQkFBa0IsZUFBZSw2QkFBNkIsWUFBWSxxQkFBcUIsc0JBQXNCLFdBQVcsYUFBYSxxQkFBcUIsS0FBSyxnQ0FBZ0MsYUFBYSx1QkFBdUIsMEhBQTBILFNBQVMsZUFBZSwyRkFBMkYsaUNBQWlDLDZFQUE2RSxhQUFhLGlDQUFpQyxHQUFHLHlCQUF5QixpQkFBaUIsa0RBQWtELDJEQUEyRCx1QkFBdUIscUNBQXFDLGdFQUFnRSxFQUFFLElBQUksbUlBQW1JLGdJQUFnSSx3REFBd0QsRUFBRSxJQUFJLDRjQUE0YyxTQUFTLHFCQUFxQiw2RUFBNkUsU0FBUyxxQkFBcUIsOENBQThDLEdBQUcsc0JBQXNCLGNBQWMsSUFBSSx5RkFBeUYsZUFBZSxrRkFBa0YsTUFBTSwwQkFBMEIsOEJBQThCLEtBQUssU0FBUyxFQUFFLDZDQUE2QyxXQUFXLFlBQVksS0FBSyxLQUFLLDBCQUEwQixzQ0FBc0MsU0FBUyxtQ0FBbUMsb0pBQW9KLFNBQVMsY0FBYyxrRkFBa0YsTUFBTSwwQkFBMEIsb0NBQW9DLEtBQUssU0FBUyxFQUFFLDZDQUE2QyxXQUFXLFlBQVksS0FBSyw2Q0FBNkMsU0FBUyxtQ0FBbUMsb0pBQW9KLFVBQVUseUJBQXlCLGlCQUFpQixlQUFlLHlEQUF5RCx5QkFBeUIsS0FBSyxJQUFJLEVBQUUsWUFBWSxvR0FBb0cscUZBQXFGLGlCQUFpQixZQUFZLHdDQUF3QyxJQUFJLEVBQUUsd0JBQXdCLFdBQVcsS0FBSyxLQUFLLFdBQVcsTUFBTSx5RUFBeUUscUJBQXFCLDJDQUEyQyxtQkFBbUIsYUFBYSxrQkFBa0IscUJBQXFCLGtCQUFrQixlQUFlLE9BQU8sOEJBQThCLHlEQUF5RCxrQkFBa0Isb0RBQW9ELFFBQVEscUJBQXFCLFVBQVUsVUFBVSw4QkFBOEIsZ0JBQWdCLDBFQUEwRSxxREFBcUQseUJBQXlCLGdHQUFnRyw0TUFBNE0sUUFBUSxrRkFBa0Ysc0JBQXNCLCtCQUErQixZQUFZLCtDQUErQyxpR0FBaUcsU0FBUyx3QkFBd0IsaUJBQWlCLGlEQUFpRCxjQUFjLDJDQUEyQyx3QkFBd0IsK0VBQStFLG1DQUFtQyxpQkFBaUIsaUNBQWlDLGdGQUFnRiw0QkFBNEIsMkJBQTJCLGVBQWUsNEJBQTRCLG9FQUFvRSx3QkFBd0IsbUJBQW1CLDRDQUE0Qyw4QkFBOEIsU0FBUyw4RkFBOEYsNEJBQTRCLEdBQUcsUUFBUSxFQUFFLDJDQUEyQyxLQUFLLHFFQUFxRSxFQUFFLDJCQUEyQixXQUFXLEdBQUcsR0FBRyxXQUFXLHNCQUFzQix5TUFBeU0sd0JBQXdCLHFCQUFxQixpQ0FBaUMsMERBQTBELGtHQUFrRyx3QkFBd0IsVUFBVSxvQ0FBb0MsK0NBQStDLCtGQUErRixpQkFBaUIseUNBQXlDLDBCQUEwQiwrQkFBK0IsMkNBQTJDLGlFQUFpRSxzSEFBc0gsT0FBTyxZQUFZLFdBQVcsd0JBQXdCLDZDQUE2QyxJQUFJLHlDQUF5QywyQkFBMkIsSUFBSSw4REFBOEQsNkJBQTZCLFNBQVMseUJBQXlCLEdBQUcsb0JBQW9CLFdBQVcsZ0NBQWdDLFNBQVMsc0dBQXNHLDJCQUEyQixXQUFXLEdBQUcsU0FBUyx3REFBd0Qsc0JBQXNCLGlCQUFpQixtSkFBbUosNEJBQTRCLGlEQUFpRCxtYUFBbWEscUJBQXFCLHlCQUF5Qiw2TUFBNk0sMEJBQTBCLFdBQVcsWUFBWSxXQUFXLEtBQUssYUFBYSxxQkFBcUIsU0FBUyx1SEFBdUgsZ1BBQWdQLHMzQkFBczNCLGtDQUFrQywrQ0FBK0MsbUNBQW1DLG1CQUFtQixPQUFPLGtCQUFrQixnREFBZ0QsNkRBQTZELEdBQUcsaUJBQWlCLFdBQVcsMERBQTBELHNDQUFzQyxlQUFlLGtDQUFrQyw4QkFBOEIsNEJBQTRCLHNDQUFzQywrQkFBK0IsaUNBQWlDLDRCQUE0Qiw4QkFBOEIsK0JBQStCLDJCQUEyQixlQUFlLDRCQUE0QixFQUFFLFNBQVMsSUFBSSxvQ0FBb0MsNEJBQTRCLEVBQUUsOEJBQThCLG9DQUFvQyw0QkFBNEIsZ0NBQWdDLGtDQUFrQyxzQ0FBc0MsOEJBQThCLGtDQUFrQyxnQ0FBZ0Msb0NBQW9DLGdDQUFnQyxvQ0FBb0Msd0NBQXdDLDRDQUE0Qyw4QkFBOEIsa0NBQWtDLGtDQUFrQyxzQ0FBc0MsMEJBQTBCLDhCQUE4Qix3Q0FBd0MsNENBQTRDLEVBQUUsVUFBVSxNQUFNLG1CQUFtQixNQUFNLGdCQUFnQixRQUFRLGtHQUFrRyw2S0FBNkssa0RBQWtELHlCQUF5QiwwQkFBMEIsV0FBVyxnQ0FBZ0Msa0NBQWtDLGtDQUFrQyxhQUFhLGlDQUFpQyxRQUFRLHNEQUFzRCxrQkFBa0Isb0NBQW9DLGNBQWMsZ0JBQWdCLFdBQVcsK0RBQStELCtCQUErQiw4QkFBOEIsZ0JBQWdCLFdBQVcsNEZBQTRGLCtCQUErQixvRUFBb0UsaUNBQWlDLG9DQUFvQyxZQUFZLFdBQVcsOEhBQThILHVJQUF1SSxzQ0FBc0MsdURBQXVELHlEQUF5RCxrT0FBa08sMkNBQTJDLEdBQUcscVJBQXFSLDJDQUEyQyxJQUFJLFVBQVUsK0JBQStCLCtCQUErQiw4QkFBOEIsR0FBRyxnQkFBZ0IsU0FBUyxvREFBb0QsNEJBQTRCLEdBQUcsU0FBUyxrQkFBa0Isa0JBQWtCLDJCQUEyQixrQkFBa0IsRUFBRSxrQ0FBa0MsNkJBQTZCLGtCQUFrQixFQUFFLG9DQUFvQywyRUFBMkUsa0JBQWtCLEVBQUUsd0RBQXdELElBQUksc0JBQXNCLHFCQUFxQixvREFBb0QsWUFBWSxXQUFXLCtCQUErQixVQUFVLDJDQUEyQyxnQ0FBZ0MsMkRBQTJELDRDQUE0QyxVQUFVLGFBQWEscUNBQXFDLGlCQUFpQiwyQkFBMkIsT0FBTyx3RUFBd0UsK0JBQStCLGlCQUFpQiw0QkFBNEIsT0FBTyw0SEFBNEgsWUFBWSxLQUFLLCtCQUErQiw0REFBNEQsUUFBUSwrQ0FBK0MsaUJBQWlCLGlDQUFpQyxPQUFPLDJJQUEySSx1QkFBdUIsaUJBQWlCLCtCQUErQixPQUFPLDhHQUE4Ryw4QkFBOEIsa0NBQWtDLHlKQUF5SixnQ0FBZ0MsZ0NBQWdDLDBCQUEwQiwwREFBMEQsZ0RBQWdELG9CQUFvQixrT0FBa08sa0JBQWtCLFdBQVcsc0RBQXNELGlCQUFpQixFQUFFLHFDQUFxQyxpQkFBaUIsRUFBRSxvREFBb0QsYUFBYSxtQ0FBbUMsaUJBQWlCLGtDQUFrQyw2Q0FBNkMsU0FBUyxvQkFBb0IsV0FBVyxtQ0FBbUMsU0FBUyw2QkFBNkIsd0ZBQXdGLHNOQUFzTixrQkFBa0IsaUJBQWlCLHFMQUFxTCw0QkFBNEIsWUFBWSxzQ0FBc0MsMkJBQTJCLE1BQU0sd0NBQXdDLGdEQUFnRCwwREFBMEQsUUFBUSxrQkFBa0Isa0JBQWtCLGlCQUFpQixFQUFFLHdCQUF3QixFQUFFLDRFQUE0RSxnQ0FBZ0Msd0RBQXdELHFCQUFxQixvQ0FBb0MsOEJBQThCLDBDQUEwQyw4QkFBOEIseUZBQXlGLGlCQUFpQixvQ0FBb0MsNFFBQTRRLDhXQUE4Vyx5Q0FBeUMsVUFBVSxjQUFjLHdCQUF3QixtQkFBbUIsZUFBZSxXQUFXLHdDQUF3QyxxQkFBcUIsU0FBUyxpQ0FBaUMsWUFBWSw0QkFBNEIsWUFBWSxXQUFXLG9CQUFvQixZQUFZLFdBQVcsNkNBQTZDLFNBQVMsMEJBQTBCLHFMQUFxTCxzQkFBc0IscUVBQXFFLG9CQUFvQiwrQ0FBK0MsaURBQWlELHdCQUF3QixpTUFBaU0sc0JBQXNCLDBGQUEwRixvTkFBb04sd0NBQXdDLHFCQUFxQixrQ0FBa0MscUJBQXFCLG9CQUFvQixNQUFNLFFBQVEsa0JBQWtCLDBDQUEwQyxvQkFBb0Isd0lBQXdJLHdCQUF3QiwyQ0FBMkMsNkJBQTZCLGtCQUFrQixrQ0FBa0Msb0JBQW9CLFdBQVcsWUFBWSxXQUFXLEtBQUssZ0NBQWdDLGtCQUFrQixXQUFXLDZCQUE2QixXQUFXLDhCQUE4QixTQUFTLGtEQUFrRCxxR0FBcUcsNkJBQTZCLHdFQUF3RSxpT0FBaU8sNkNBQTZDLE1BQU0sb0JBQW9CLHVCQUF1QixzSUFBc0ksNkNBQTZDLE1BQU0sb0JBQW9CLHVCQUF1QixzSUFBc0ksNEtBQTRLLGtDQUFrQyx3Q0FBd0MseUNBQXlDLDhDQUE4Qyw4Q0FBOEMsaUJBQWlCLGFBQWEsaUJBQWlCLFVBQVUsY0FBYyxNQUFNLGlFQUFpRSxpRUFBaUUsb0NBQW9DLE9BQU8saURBQWlELGNBQWMsc0RBQXNELDhCQUE4QixvREFBb0QsY0FBYyxpRkFBaUYsNEJBQTRCLGtKQUFrSixVQUFVLGdCQUFnQiwwQkFBMEIsa0JBQWtCLDRCQUE0QixjQUFjLFNBQVMsMEVBQTBFLE1BQU0sdUdBQXVHLHVEQUF1RCxLQUFLLE1BQU0sc0JBQXNCLGdHQUFnRyw2SUFBNkksU0FBUyx3QkFBd0IsZ0NBQWdDLHlFQUF5RSxnREFBZ0Qsc1JBQXNSLHFDQUFxQyxxR0FBcUcsZ0VBQWdFLG9EQUFvRCxlQUFlLGFBQWEscUZBQXFGLHNDQUFzQyxTQUFTLGtDQUFrQyx3REFBd0QsMFJBQTBSLDBCQUEwQix5Q0FBeUMsV0FBVywwQkFBMEIsVUFBVSwyQkFBMkIsMkJBQTJCLHVEQUF1RCxzQkFBc0IsK0NBQStDLGdDQUFnQyxtQ0FBbUMsWUFBWSxHQUFHLHdFQUF3RSxpRUFBaUUsc0NBQXNDLGlCQUFpQixFQUFFLElBQUksNEJBQTRCLFNBQVMsbURBQW1ELFVBQVUsMkdBQTJHLHFDQUFxQyxrQkFBa0IsY0FBYyxpRkFBaUYsU0FBUyxJQUFJLDJKQUEySixzQ0FBc0MsaUJBQWlCLEVBQUUsNkNBQTZDLDJCQUEyQixZQUFZLHlDQUF5QyxtQkFBbUIsMkJBQTJCLG1DQUFtQyxtRkFBbUYsNENBQTRDLHlFQUF5RSxnQkFBZ0I7O0FBRXJpc1UsMENBQTBDLGFBQWEsUUFBUSxlQUFlLGdCQUFnQixxQkFBcUIsV0FBVyxxQkFBcUIsZ0JBQWdCLG9CQUFvQixZQUFZLGtCQUFrQiwyQkFBMkIsbUNBQW1DLGlGQUFpRiw2RkFBNkYseUJBQXlCLDhEQUE4RCxrQkFBa0IsOENBQThDLGtDQUFrQyxxQkFBcUIsK0JBQStCLGlDQUFpQyxFQUFFLDJDQUEyQyxXQUFXLDRCQUE0QixRQUFRLGVBQWUsVUFBVSxNQUFNLGtCQUFrQix1QkFBdUIsa0JBQWtCLGNBQWMsd0RBQXdELFNBQVMsZ0RBQWdELGdCQUFnQiw0QkFBNEIsTUFBTSxRQUFRLG1CQUFtQix1QkFBdUIsRUFBRSxrQkFBa0IsYUFBYSxrQkFBa0IsY0FBYyx3REFBd0QscUJBQXFCLHFCQUFxQixRQUFRLEVBQUUsZ0JBQWdCLGFBQWEsZ0NBQWdDLHFCQUFxQixRQUFRLGVBQWUsMmRBQTJkLGVBQWUsMkNBQTJDLGtFQUFrRSxzRkFBc0Ysb0JBQW9CLFVBQVUsSUFBSSxrQ0FBa0MsdUJBQXVCLHFCQUFxQixtQkFBbUIsbUNBQW1DLGtCQUFrQixvQkFBb0IsZUFBZSwwQ0FBMEMsWUFBWSxXQUFXLEVBQUUsbUZBQW1GLHlCQUF5QixZQUFZLFdBQVcsS0FBSyxvQ0FBb0MsUUFBUSwwQ0FBMEMsR0FBRyxxQkFBcUIsYUFBYSw4Q0FBOEMsVUFBVSwrQkFBK0IsWUFBWSxrSkFBa0osK0xBQStMLGtGQUFrRixrRUFBa0UsOEZBQThGLHdCQUF3QixFQUFFLDBCQUEwQiw0QkFBNEIsaURBQWlELGdCQUFnQiw4REFBOEQsS0FBSyx3Q0FBd0Msd0JBQXdCLEVBQUUsYUFBYSw0QkFBNEIsaURBQWlELGdCQUFnQiw0REFBNEQsS0FBSywyQ0FBMkMsd0JBQXdCLEVBQUUsYUFBYSw0QkFBNEIsaURBQWlELGdCQUFnQiwrREFBK0QsS0FBSyxtRUFBbUUsa0JBQWtCLGFBQWEsaURBQWlELG9LQUFvSyxpS0FBaUssMkJBQTJCLHdSQUF3UixJQUFJLGtCQUFrQixtQkFBbUIscUNBQXFDLFFBQVEsbUJBQW1CLHNFQUFzRSxnQkFBZ0IsaUJBQWlCLG9CQUFvQiwyQ0FBMkMsK0JBQStCLElBQUksUUFBUSwrR0FBK0csU0FBUywrQkFBK0IscUNBQXFDLGNBQWMsSUFBSSx1SkFBdUosVUFBVSxnQkFBZ0IsR0FBRyxZQUFZLDJDQUEyQyxrR0FBa0csa0JBQWtCLDRCQUE0QixVQUFVLElBQUksdUNBQXVDLHlDQUF5Qyx1QkFBdUIsaUZBQWlGLFdBQVcsTUFBTSxtQkFBbUIscURBQXFELDBCQUEwQiw4RUFBOEUsbUNBQW1DLCtDQUErQyxJQUFJLGdCQUFnQixZQUFZLHVCQUF1QixRQUFRLFFBQVEsMEJBQTBCLFNBQVMsaUVBQWlFLEdBQUcsY0FBYywyQ0FBMkMsY0FBYyxvSUFBb0ksdUJBQXVCLG1FQUFtRSxvRkFBb0YsTUFBTSxxQkFBcUIsTUFBTSw4Q0FBOEMsa0JBQWtCLCtCQUErQix1QkFBdUIsU0FBUyxTQUFTLFNBQVMsZ0hBQWdILEdBQUcsYUFBYSwyQ0FBMkMsNkJBQTZCLHVEQUF1RCxHQUFHLGNBQWMsMkNBQTJDLDREQUE0RCxJQUFJLFFBQVEsY0FBYyxnQkFBZ0IsWUFBWSwyQ0FBMkMsTUFBTSxtRkFBbUYsOENBQThDLGlCQUFpQixzREFBc0Qsa0NBQWtDLG9CQUFvQixHQUFHLGNBQWMsNEJBQTRCLHVCQUF1QixnQkFBZ0IsaUJBQWlCLFVBQVUsWUFBWSxXQUFXLGlCQUFpQixnQkFBZ0IscUNBQXFDLElBQUksT0FBTyxnREFBZ0QsNkNBQTZDLDBCQUEwQiw0QkFBNEIsa0JBQWtCLG1DQUFtQyxvQkFBb0IsdUJBQXVCLHlDQUF5QyxzQkFBc0IseUJBQXlCLHNDQUFzQyx5Q0FBeUMsbUNBQW1DLHVCQUF1QiwwQkFBMEIsU0FBUyxHQUFHLG1EQUFtRCxPQUFPLFdBQVcscUNBQXFDLGdCQUFnQixrQkFBa0IsdUNBQXVDLGdCQUFnQiwySkFBMkosZ0NBQWdDLG1EQUFtRCxxQ0FBcUMsdUJBQXVCLGlCQUFpQixZQUFZLFdBQVcsS0FBSyx3QkFBd0IsV0FBVyxtQ0FBbUMsdUJBQXVCLHFCQUFxQiw2QkFBNkIsbUNBQW1DLHNEQUFzRCxXQUFXLHVCQUF1QixXQUFXLEtBQUssV0FBVyx5RUFBeUUsaUJBQWlCLDZDQUE2QyxlQUFlLGNBQWMsWUFBWSxxQkFBcUIsdURBQXVELGlCQUFpQixnQkFBZ0IsTUFBTSwwR0FBMEcsT0FBTyw2QkFBNkIsZ0JBQWdCLFFBQVEsV0FBVyxpREFBaUQsYUFBYSxRQUFRLFdBQVcsK0JBQStCLGVBQWUsUUFBUSxXQUFXLDhCQUE4QixnQkFBZ0IsZ0JBQWdCLG9IQUFvSCxnQkFBZ0IsZ0VBQWdFLDJCQUEyQiw2QkFBNkIsYUFBYSwyREFBMkQsZUFBZSxpRUFBaUUscUJBQXFCLDhEQUE4RCxnQkFBZ0Isb0JBQW9CLGNBQWMsa0JBQWtCLGdCQUFnQiwyREFBMkQsSUFBSSxLQUFLLGVBQWUsMENBQTBDLHdDQUF3QyxJQUFJLEtBQUssc0NBQXNDLDBCQUEwQixtREFBbUQsK0JBQStCLGdCQUFnQixlQUFlLGlMQUFpTCwrRUFBK0UsUUFBUSxTQUFTLG1HQUFtRyxVQUFVLFNBQVMsRUFBRSw0QkFBNEIsc0JBQXNCLFNBQVMsNEdBQTRHLDBEQUEwRCxNQUFNLGtCQUFrQixRQUFRLGVBQWUsc0pBQXNKLFFBQVEsTUFBTSwwQkFBMEIsY0FBYyw4QkFBOEIsbUJBQW1CLFVBQVUsUUFBUSxpQ0FBaUMsV0FBVyxZQUFZLFdBQVcsS0FBSyxhQUFhLHdCQUF3QixzREFBc0QsdURBQXVELDBDQUEwQyxzQkFBc0IsWUFBWSxLQUFLLEtBQUssb0JBQW9CLDRIQUE0SCw2Q0FBNkMsaUJBQWlCLG1DQUFtQyx3Q0FBd0Msa0RBQWtELHdDQUF3QywrQkFBK0IsYUFBYSwyRUFBMkUsbUJBQW1CLG9GQUFvRixrQkFBa0Isc0JBQXNCLCtEQUErRCxTQUFTLGVBQWUsNEdBQTRHLHlCQUF5QixlQUFlLDhDQUE4Qyx5SEFBeUgsa0JBQWtCLHNCQUFzQiwyRUFBMkUsbUNBQW1DLFNBQVMsaUJBQWlCLFdBQVcsa0RBQWtELGVBQWUsd0RBQXdELGtCQUFrQiw2Q0FBNkMsYUFBYSwwT0FBME8sMkJBQTJCLCtCQUErQixLQUFLLHdCQUF3QixFQUFFLDRCQUE0QiwwQkFBMEIsOEJBQThCLFNBQVMseUJBQXlCLDRCQUE0QixrQkFBa0IscUJBQXFCLG9JQUFvSSxTQUFTLGVBQWUsNEVBQTRFLFlBQVksV0FBVyxrQ0FBa0MsNkJBQTZCLDhCQUE4QixrQkFBa0IsaUNBQWlDLFVBQVUsZ0RBQWdELE1BQU0sNEJBQTRCLGVBQWUsa0NBQWtDLGVBQWUsU0FBUyw0R0FBNEcsTUFBTSxxR0FBcUcsY0FBYyxzRkFBc0YsY0FBYyxNQUFNLHVDQUF1QyxnRUFBZ0UsWUFBWSxXQUFXLE1BQU0sc0JBQXNCLFNBQVMseURBQXlELFFBQVEsa0JBQWtCLFlBQVksdUJBQXVCLGNBQWMsdUJBQXVCLDhDQUE4QyxrQkFBa0IsWUFBWSxzQkFBc0IsU0FBUyxlQUFlLHVJQUF1SSxrREFBa0QsTUFBTSxZQUFZLElBQUksbUJBQW1CLHlCQUF5QixZQUFZLGlCQUFpQixTQUFTLFlBQVksSUFBSSx1QkFBdUIsU0FBUyxnQkFBZ0IsK0JBQStCLGtCQUFrQixpQ0FBaUMsWUFBWSxhQUFhLGtDQUFrQyx5QkFBeUIsTUFBTSw2REFBNkQsZ0NBQWdDLE9BQU8sa0JBQWtCLFFBQVEsdURBQXVELDJEQUEyRCxPQUFPLGtCQUFrQiwyQkFBMkIsa0JBQWtCLHlEQUF5RCxpQkFBaUIsT0FBTyx3QkFBd0IscUVBQXFFLEVBQUUsY0FBYyxnQkFBZ0IsY0FBYyx1RUFBdUUscUJBQXFCLGNBQWMsZ0NBQWdDLDZDQUE2QyxvQkFBb0IsUUFBUSxtQkFBbUIsWUFBWSxzQ0FBc0MsY0FBYyxJQUFJLE1BQU0sK0JBQStCLGVBQWUsZUFBZSxzQkFBc0IsaUJBQWlCLHFEQUFxRCx3QkFBd0IsZ0JBQWdCLGlCQUFpQixvQ0FBb0Msb0NBQW9DLDJCQUEyQixvQkFBb0IsU0FBUyxrRkFBa0YsMERBQTBELGdDQUFnQyxzREFBc0Qsc0RBQXNELFNBQVMsZ0JBQWdCLFlBQVksV0FBVyw4SEFBOEgsb0JBQW9CLHNCQUFzQiwrQkFBK0IsMEJBQTBCLDRFQUE0RSxnQkFBZ0IscUZBQXFGLGlEQUFpRCxxQ0FBcUMsK0JBQStCLGtCQUFrQiwyRUFBMkUsT0FBTyxhQUFhLGtDQUFrQyxNQUFNLHVCQUF1Qiw2QkFBNkIsMENBQTBDLHdDQUF3QyxNQUFNLE9BQU8sNkRBQTZELGtCQUFrQixXQUFXLHdCQUF3QiwrQkFBK0IsZ0JBQWdCLDJCQUEyQixvQkFBb0IsWUFBWSxZQUFZLFdBQVcsS0FBSyxnQ0FBZ0MsMEZBQTBGLG1CQUFtQixzRUFBc0Usb0JBQW9CLFlBQVksV0FBVyxLQUFLLFdBQVcsMEJBQTBCLGNBQWMsZ0JBQWdCLGNBQWMsdUVBQXVFLHFCQUFxQiw0QkFBNEIsZ0NBQWdDLHlCQUF5QixXQUFXLGtCQUFrQixtQkFBbUIsYUFBYSxrREFBa0QsY0FBYyxVQUFVLFNBQVMsc0JBQXNCLFNBQVMsOENBQThDLHVEQUF1RCwrQ0FBK0MsdUNBQXVDLDZDQUE2QyxXQUFXLHNDQUFzQyxhQUFhLG9DQUFvQyw0Q0FBNEMsU0FBUyxzTUFBc00sdUJBQXVCLHNCQUFzQixZQUFZLFdBQVcsTUFBTSxlQUFlLHVDQUF1QywwQkFBMEIsV0FBVyxvQkFBb0Isa0JBQWtCLFlBQVksYUFBYSxNQUFNLHlFQUF5RSxTQUFTLHdSQUF3UixpQkFBaUIsa0NBQWtDLDJIQUEySCxjQUFjLFdBQVcsbURBQW1ELHlCQUF5QixvQ0FBb0MscUJBQXFCLGVBQWUseUJBQXlCLG9CQUFvQiw2QkFBNkIseUJBQXlCLG9CQUFvQiw2QkFBNkIsaUJBQWlCLFdBQVcsWUFBWSxXQUFXLEtBQUssc0JBQXNCLE1BQU0sc0VBQXNFLDhDQUE4QyxLQUFLLDJDQUEyQyw0QkFBNEIsS0FBSywyQkFBMkIsV0FBVyxpQ0FBaUMsWUFBWSw0QkFBNEIsU0FBUyxpQkFBaUIsV0FBVyw4REFBOEQsWUFBWSxXQUFXLGtDQUFrQyxTQUFTLGlCQUFpQiwwQkFBMEIsMkJBQTJCLDJCQUEyQiw0QkFBNEIsbUNBQW1DLFdBQVcsOENBQThDLGlCQUFpQixXQUFXLEtBQUssV0FBVyxZQUFZLGNBQWMsMkNBQTJDLHFCQUFxQiwwQkFBMEIseUJBQXlCLHFEQUFxRCx1QkFBdUIseURBQXlELGtJQUFrSSw2QkFBNkIsU0FBUyxxQkFBcUIsaUNBQWlDLHlLQUF5SyxXQUFXLHlEQUF5RCwyQ0FBMkMseURBQXlELFdBQVcsdUNBQXVDLHVDQUF1QyxXQUFXLEtBQUssYUFBYSxZQUFZLFdBQVcsNkJBQTZCLGFBQWEsbUJBQW1CLG9DQUFvQyxLQUFLLHFDQUFxQyxtRUFBbUUsU0FBUyx3R0FBd0csOENBQThDLHlCQUF5QixZQUFZLDREQUE0RCxXQUFXLFlBQVksV0FBVyw4RUFBOEUsaUJBQWlCLFFBQVEsNkJBQTZCLElBQUksd0NBQXdDLGtDQUFrQyxNQUFNLE1BQU0sc0JBQXNCLHNEQUFzRCxpQkFBaUIsVUFBVSxvSUFBb0ksU0FBUyxpQkFBaUIsc0NBQXNDLDJCQUEyQixTQUFTLDZCQUE2Qix1SEFBdUgsa0dBQWtHLG9CQUFvQixXQUFXLDRDQUE0QyxvQkFBb0IsMkJBQTJCLCtCQUErQixXQUFXLElBQUksU0FBUyxNQUFNLGFBQWEsd0xBQXdMLCtCQUErQiwwQkFBMEIsUUFBUSx5REFBeUQsbUdBQW1HLDBQQUEwUCx5QkFBeUIsMkNBQTJDLEtBQUssU0FBUyxFQUFFLHdDQUF3Qyx5QkFBeUIsb0JBQW9CLDBGQUEwRixZQUFZLE1BQU0sNEpBQTRKLFlBQVksRUFBRSxFQUFFLGlEQUFpRCx1QkFBdUIsOERBQThELE1BQU0saUNBQWlDLFlBQVksWUFBWSxnQ0FBZ0MsdUNBQXVDLDhCQUE4QixpREFBaUQsc0dBQXNHLDhUQUE4VCxlQUFlLGVBQWUsc0JBQXNCLGlCQUFpQixHQUFHLHlCQUF5QixpQ0FBaUMsNENBQTRDLHFEQUFxRCxrQkFBa0IsS0FBSyxRQUFRLHlDQUF5QyxtT0FBbU8sbUJBQW1CLHlCQUF5QixpQkFBaUIsOEJBQThCLGlCQUFpQixxQkFBcUIsMkNBQTJDLGlDQUFpQyxnQkFBZ0IsMkJBQTJCLGdCQUFnQixxQkFBcUIsc0JBQXNCLFVBQVUsVUFBVSxVQUFVLGlCQUFpQixnQkFBZ0IsWUFBWSw0Q0FBNEMsZ0RBQWdELFNBQVMsbUJBQW1CLGNBQWMsa0RBQWtELG9CQUFvQiwyQ0FBMkMsMkJBQTJCLDZGQUE2RixnREFBZ0Qsa0JBQWtCLGtCQUFrQixlQUFlLGFBQWEsdUJBQXVCLHNGQUFzRixXQUFXLGlCQUFpQixlQUFlLDZIQUE2SCxlQUFlLDJCQUEyQixXQUFXLG1FQUFtRSxVQUFVLFdBQVcsdUNBQXVDLFdBQVcsNENBQTRDLFdBQVcsVUFBVSxpQkFBaUIsMkJBQTJCLHFCQUFxQixhQUFhLFdBQVcsb0ZBQW9GLCtCQUErQixHQUFHLFlBQVksMkNBQTJDLE1BQU0sdURBQXVELCtFQUErRSx5Q0FBeUMsSUFBSSxrSEFBa0gsMENBQTBDLEVBQUUsbUJBQW1CLFVBQVUsS0FBSyxJQUFJLHdCQUF3QixJQUFJLGdCQUFnQixrQkFBa0Isa0JBQWtCLHFGQUFxRiwyQkFBMkIsaUJBQWlCLGVBQWUsV0FBVyx5Q0FBeUMsU0FBUyxrQkFBa0IsZUFBZSw2REFBNkQsR0FBRyxzSEFBc0gsV0FBVyxNQUFNLG1CQUFtQix1QkFBdUIsNERBQTRELFNBQVMsU0FBUywrQ0FBK0MsY0FBYyxRQUFRLE9BQU8sR0FBRyxVQUFVLDJDQUEyQyx5QkFBeUIsR0FBRyxjQUFjLG9CQUFvQix3REFBd0QsMkJBQTJCLDJDQUEyQyxrQ0FBa0MsMEZBQTBGLFNBQVMsbUNBQW1DLHFCQUFxQix1QkFBdUIsMEVBQTBFLEVBQUUseURBQXlELE1BQU0sSUFBSSxVQUFVLGdCQUFnQixnREFBZ0QsT0FBTyxNQUFNLEdBQUcsc0NBQXNDLFNBQVMsR0FBRyxpQkFBaUIsMkNBQTJDLE1BQU0sWUFBWSxHQUFHLGNBQWMsK0JBQStCLG9FQUFvRSwrQkFBK0IsMkJBQTJCLHFEQUFxRCxTQUFTLHdDQUF3QyxTQUFTLG1DQUFtQyx1REFBdUQsU0FBUyxtQ0FBbUMsbUZBQW1GLFNBQVMsR0FBRyx1QkFBdUIsWUFBWSx1RUFBdUUsK0JBQStCLGdCQUFnQixxQkFBcUIscUNBQXFDLGtCQUFrQixvQkFBb0Isb0tBQW9LLGlFQUFpRSxtREFBbUQsaUdBQWlHLHFMQUFxTCxnRkFBZ0YsY0FBYywrQ0FBK0MscUNBQXFDLDZFQUE2RSxHQUFHLGdCQUFnQiwyQ0FBMkMsb0RBQW9ELEdBQUcsMkJBQTJCLCtEQUErRCxzQkFBc0IsbURBQW1ELG9CQUFvQixtRUFBbUUsU0FBUyxlQUFlLHNEQUFzRCx3QkFBd0Isc0JBQXNCLHlCQUF5QixrQ0FBa0Msd0NBQXdDLGlGQUFpRixFQUFFLHdCQUF3QixxQ0FBcUMsOEZBQThGLDBFQUEwRSxvQkFBb0Isd0xBQXdMLG9EQUFvRCwwRkFBMEYsMkVBQTJFLHlGQUF5RixzRUFBc0UseUZBQXlGLG9FQUFvRSxnc0JBQWdzQiwyR0FBMkcsZ0RBQWdELDJGQUEyRixvRkFBb0YseUhBQXlILHdGQUF3RixpQkFBaUIseUtBQXlLLDRCQUE0Qiw4SkFBOEosc0RBQXNELHdGQUF3RixtQ0FBbUMsTUFBTSxnQkFBZ0IsMkNBQTJDLDBCQUEwQixzQ0FBc0MsaUNBQWlDLDBDQUEwQyxHQUFHLHlCQUF5QiwyQ0FBMkMsMENBQTBDLHdEQUF3RCxvQkFBb0IsK0NBQStDLFNBQVMsbUNBQW1DLDBCQUEwQixxQkFBcUIsa0NBQWtDLDZEQUE2RCxFQUFFLEdBQUcsR0FBRyx1QkFBdUIsOEJBQThCLG1CQUFtQixrQkFBa0IsMkJBQTJCLDJDQUEyQyx3QkFBd0IsbURBQW1ELHdEQUF3RCxnQ0FBZ0MsU0FBUyw4REFBOEQsVUFBVSxxR0FBcUcsTUFBTSx1R0FBdUcsTUFBTSxrSUFBa0ksbUNBQW1DLHlCQUF5Qiw2REFBNkQsZ0dBQWdHLGdEQUFnRDs7QUFFN3huQyxxREFBcUQsYUFBYSxjQUFjLFFBQVEsU0FBUywySkFBMkosaUNBQWlDLHdDQUF3QyxrQ0FBa0MsSUFBSSx1QkFBdUIsa0ZBQWtGLDBCQUEwQixxRUFBcUUsc0JBQXNCLEVBQUUsNERBQTRELCtFQUErRSxtTEFBbUwsK0ZBQStGLFFBQVEsbUJBQW1CLDJCQUEyQixZQUFZLFdBQVcscUNBQXFDLFlBQVkscUJBQXFCLHlDQUF5Qyx5REFBeUQscUJBQXFCLDRDQUE0QyxxQkFBcUIsbUdBQW1HLG9CQUFvQixtRUFBbUUseUJBQXlCLDRCQUE0QixrQ0FBa0MsRUFBRSxtREFBbUQscUNBQXFDLEVBQUUsc0RBQXNELGdDQUFnQyx1R0FBdUcsdUJBQXVCLG9GQUFvRixnRUFBZ0UsTUFBTSxtQkFBbUIsa0NBQWtDLFFBQVEsOEVBQThFLHVCQUF1Qiw2QkFBNkIsc0ZBQXNGLHFCQUFxQixzQkFBc0IseUJBQXlCLHFCQUFxQiwyQkFBMkIsWUFBWSxXQUFXLGlDQUFpQyxTQUFTLHNCQUFzQixnQkFBZ0IsaUJBQWlCLDRDQUE0QyxvUEFBb1AsU0FBUyxxQ0FBcUMsdUJBQXVCLGtCQUFrQixjQUFjLDBCQUEwQiw4QkFBOEIsSUFBSSx5RkFBeUYsZ0JBQWdCLFVBQVUseUJBQXlCLE1BQU0sNkVBQTZFLHFCQUFxQixnQkFBZ0IsYUFBYSx3QkFBd0IsMEVBQTBFLFlBQVkseUJBQXlCLG1CQUFtQiwwQkFBMEIsWUFBWSxnQkFBZ0IsNkJBQTZCLGlCQUFpQiw2Q0FBNkMsc0NBQXNDLDRDQUE0QyxhQUFhLFVBQVUsdUZBQXVGLE1BQU0sZUFBZSxPQUFPLE9BQU8sR0FBRywrQ0FBK0Msa0JBQWtCLE1BQU0sa0ZBQWtGLCtHQUErRyxJQUFJLDBCQUEwQixJQUFJLGdCQUFnQiw2R0FBNkcsc0hBQXNILEdBQUcsU0FBUywrQkFBK0IsUUFBUSxTQUFTLE9BQU8sVUFBVSxjQUFjLGtEQUFrRCxVQUFVLDhFQUE4RSxZQUFZLGdCQUFnQixLQUFLLGtCQUFrQiw0Q0FBNEMsK0JBQStCLDBDQUEwQyxzSkFBc0osbUJBQW1CLHdDQUF3QywyQkFBMkIsT0FBTyxHQUFHLGdCQUFnQix1TEFBdUwsVUFBVSxJQUFJLFNBQVMseUJBQXlCLFFBQVEsZUFBZSw0QkFBNEIsc0JBQXNCLGlFQUFpRSxPQUFPLHVCQUF1Qiw2QkFBNkIsY0FBYyxpQkFBaUIsdUNBQXVDLHdCQUF3Qix1REFBdUQsdURBQXVELGtCQUFrQixrQkFBa0IsZ0JBQWdCLGNBQWMsV0FBVyw4QkFBOEIsbUJBQW1CLEVBQUUsdUJBQXVCLFdBQVcsVUFBVSxXQUFXLE1BQU0sV0FBVyxFQUFFLEVBQUUsRUFBRSxFQUFFLHNDQUFzQyxXQUFXLEtBQUssU0FBUyxrQkFBa0IscUJBQXFCLGdCQUFnQixFQUFFLEVBQUUsRUFBRSxjQUFjLFlBQVksaUJBQWlCLG9DQUFvQyxHQUFHLFFBQVEscUJBQXFCLGlGQUFpRixjQUFjLE1BQU0saUJBQWlCLDBEQUEwRCxVQUFVLE9BQU8sS0FBSyxHQUFHLDRnQkFBNGdCLE1BQU0sTUFBTSxRQUFRLEtBQUssU0FBUyxpUUFBaVEseUVBQXlFLFlBQVksTUFBTSxVQUFVLE9BQU8sS0FBSyxHQUFHLDBYQUEwWCxtQkFBbUIseUVBQXlFLFVBQVUsTUFBTSxLQUFLLGNBQWMsa0RBQWtELGNBQWMsTUFBTSxZQUFZLEdBQUcsdUZBQXVGLG9CQUFvQixjQUFjLHNCQUFzQixzQkFBc0Isb0NBQW9DLG1EQUFtRCwwQkFBMEIsaUJBQWlCLGlCQUFpQixXQUFXLG1CQUFtQixhQUFhLHVDQUF1QyxVQUFVLHVCQUF1QiwrQ0FBK0MscUJBQXFCLFlBQVksdUJBQXVCLDZCQUE2QixxQkFBcUIsZ0JBQWdCLDhCQUE4QiwyRUFBMkUsU0FBUyxjQUFjLDhDQUE4QyxHQUFHLHlDQUF5Qyx5Q0FBeUMsZUFBZSxTQUFTLDZCQUE2Qiw0RkFBNEYsRUFBRSwrSEFBK0gsRUFBRSxvSEFBb0gsRUFBRSwwQ0FBMEMsc0JBQXNCLGdCQUFnQixRQUFRLGtCQUFrQix1Q0FBdUMsUUFBUSxVQUFVLHNCQUFzQixnQkFBZ0IsMEJBQTBCLDZFQUE2RSwrRkFBK0Ysc0JBQXNCLHlCQUF5Qix1SEFBdUgsYUFBYSxHQUFHLGNBQWMsbUJBQW1CLGFBQWEsR0FBRyxjQUFjLEtBQUssaUVBQWlFLGVBQWUsdUJBQXVCLHlHQUF5RyxhQUFhLGdDQUFnQyxhQUFhLDRCQUE0QixTQUFTLDREQUE0RCxxRUFBcUUsdUJBQXVCLEdBQUcsR0FBRyxvQkFBb0IsV0FBVyxrQkFBa0IsdUJBQXVCLDJDQUEyQyxLQUFLLCtCQUErQix1UEFBdVAsZUFBZSxFQUFFLGlOQUFpTixTQUFTLGVBQWUsTUFBTSxpQkFBaUIsaUJBQWlCLFFBQVEsa0JBQWtCLGNBQWMsNENBQTRDLGtCQUFrQix1REFBdUQsa0NBQWtDLE1BQU0sU0FBUywyQ0FBMkMsZ0JBQWdCLGtCQUFrQixtQkFBbUIsNERBQTRELFFBQVEsYUFBYSw0TEFBNEwsc0JBQXNCLFdBQVcsMERBQTBELE1BQU0sUUFBUSwwQkFBMEIsVUFBVSx1QkFBdUIsRUFBRSw4QkFBOEIsTUFBTSxNQUFNLCtFQUErRSxjQUFjLFFBQVEsRUFBRSxRQUFRLEVBQUUsaUJBQWlCLGdCQUFnQixVQUFVLEVBQUUsVUFBVSxFQUFFLGlCQUFpQixnQkFBZ0IsUUFBUSxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsZ0JBQWdCLFVBQVUsRUFBRSxVQUFVLEVBQUUsaUJBQWlCLGdCQUFnQixRQUFRLEVBQUUsVUFBVSxFQUFFLGlCQUFpQixHQUFHLGVBQWUsYUFBYSxxQ0FBcUMsMkJBQTJCLGtCQUFrQixnREFBZ0QsdUNBQXVDLHlCQUF5QiwwQkFBMEIsRUFBRSxpREFBaUQsYUFBYSw4QkFBOEIsWUFBWSxNQUFNLHlCQUF5QixZQUFZLE1BQU0sMEJBQTBCLDBCQUEwQixnQ0FBZ0Msb0JBQW9CLElBQUksS0FBSyxjQUFjLFlBQVksR0FBRyxhQUFhLDZCQUE2Qix1QkFBdUIsNEJBQTRCLGdCQUFnQixJQUFJLEtBQUssS0FBSyxTQUFTLEtBQUssbUJBQW1CLG9CQUFvQixRQUFRLGlCQUFpQix1RUFBdUUsVUFBVSxZQUFZLGFBQWEsMkNBQTJDLFdBQVcsaUZBQWlGLGtDQUFrQyxVQUFVLHFCQUFxQixtQkFBbUIsY0FBYyxtREFBbUQsU0FBUyxHQUFHLCtCQUErQiwyQ0FBMkMsc0JBQXNCLHVCQUF1QixTQUFTLFlBQVksV0FBVyxFQUFFLGtCQUFrQixzQkFBc0Isc0JBQXNCLGtEQUFrRCxzQkFBc0IsMEJBQTBCLCtEQUErRCx1QkFBdUIsc0JBQXNCLHFEQUFxRCxtQkFBbUIsMkRBQTJELGlCQUFpQiw0QkFBNEIsMkVBQTJFLHVCQUF1QiwrQkFBK0IsR0FBRyw4QkFBOEIsNENBQTRDLEtBQUssSUFBSSxRQUFRLElBQUksUUFBUSxJQUFJLFFBQVEsaUNBQWlDLGdCQUFnQixzQ0FBc0MsYUFBYSw4Q0FBOEMsZ0JBQWdCLE9BQU8sWUFBWSx5R0FBeUcsb0VBQW9FLEdBQUcsdUNBQXVDLFFBQVEscUJBQXFCLHNDQUFzQyxrQkFBa0IsNkpBQTZKLG1DQUFtQywyQ0FBMkMsdURBQXVELFVBQVUsZUFBZSxNQUFNLEtBQUssRUFBRSxHQUFHLEVBQUUsZ0RBQWdELHFFQUFxRSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsR0FBRyxXQUFXLHFDQUFxQyxTQUFTLEdBQUcsaUJBQWlCLGFBQWEsc0hBQXNILEdBQUcsRUFBRSwwQ0FBMEMsOEVBQThFLHNCQUFzQixFQUFFLFVBQVUsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFLEtBQUssRUFBRSxrT0FBa08saUJBQWlCLHlDQUF5Qyw0QkFBNEIsUUFBUSxNQUFNLDhHQUE4RywwT0FBME8sMEZBQTBGLHlCQUF5QixNQUFNLHVDQUF1QyxNQUFNLHlDQUF5QyxnQ0FBZ0MsNEJBQTRCLFlBQVksSUFBSSxnQkFBZ0IsSUFBSSxLQUFLLGdDQUFnQyxrQkFBa0Isb0JBQW9CLHVCQUF1QixNQUFNLGFBQWEsZ0NBQWdDLHdFQUF3RSxZQUFZLElBQUksS0FBSyx3Q0FBd0Msc0RBQXNELFdBQVcsUUFBUSxjQUFjLHVDQUF1QyxzQkFBc0IscUNBQXFDLG1CQUFtQixRQUFRLDBFQUEwRSxNQUFNLG9CQUFvQixlQUFlLHNCQUFzQixzSEFBc0gsOEdBQThHLFdBQVcsd0NBQXdDLGVBQWUsRUFBRSw4Q0FBOEMsYUFBYSxvSEFBb0gscUJBQXFCLDhFQUE4RSxnQkFBZ0IsMkNBQTJDLGVBQWUseURBQXlELGlCQUFpQixtREFBbUQsZUFBZSxvQkFBb0IsZUFBZSxJQUFJLGlCQUFpQiwwV0FBMFcsRUFBRSxvQkFBb0IsZUFBZSwrSUFBK0ksYUFBYSxFQUFFLDZCQUE2QixPQUFPLDRIQUE0SCxFQUFFLGtCQUFrQixhQUFhLHFIQUFxSCxTQUFTLHdDQUF3QyxxQkFBcUIsOEVBQThFLGdCQUFnQiwyQ0FBMkMsZUFBZSx5REFBeUQsa0JBQWtCLEVBQUUsa0VBQWtFLGVBQWUsb0JBQW9CLGVBQWUsSUFBSSw0QkFBNEIsZ0NBQWdDLFFBQVEsaUJBQWlCLDhHQUE4RyxhQUFhLDhCQUE4QixrRkFBa0YscUJBQXFCLFdBQVcscURBQXFELFFBQVEsNENBQTRDLEVBQUUsV0FBVyxZQUFZLFdBQVcsS0FBSyxLQUFLLGFBQWEseUJBQXlCLHlDQUF5QyxHQUFHLFNBQVMsb0JBQW9CLFlBQVksYUFBYSxLQUFLLEtBQUssc0NBQXNDLGVBQWUsWUFBWSxhQUFhLEtBQUssd0JBQXdCLGlFQUFpRSxNQUFNLGtCQUFrQixhQUFhLHNCQUFzQixzQkFBc0IsNEJBQTRCLGtEQUFrRCxrQkFBa0IscUJBQXFCLEtBQUssS0FBSyxzQkFBc0Isa0ZBQWtGLDZCQUE2QiwyRUFBMkUsZ0NBQWdDLGVBQWUsWUFBWSxhQUFhLEtBQUssd0JBQXdCLGlFQUFpRSwrREFBK0QsYUFBYSxzQkFBc0Isd0VBQXdFLFFBQVEsWUFBWSxXQUFXLFlBQVksVUFBVSwwREFBMEQsbURBQW1ELFNBQVMsa0VBQWtFLHVDQUF1QyxRQUFRLGFBQWEscWtCQUFxa0IseUNBQXlDLFFBQVEsY0FBYyxnQkFBZ0IsV0FBVyxxQ0FBcUMsa0NBQWtDLCtDQUErQyw4Q0FBOEMsV0FBVyx1RUFBdUUsZUFBZSx1QkFBdUIsY0FBYyx3QkFBd0IsWUFBWSx3Q0FBd0MsNENBQTRDLFFBQVEsYUFBYSxzQkFBc0IsMERBQTBELFFBQVEsaUJBQWlCLCtEQUErRCxtQ0FBbUMsWUFBWSxXQUFXLEtBQUssd0JBQXdCLGlCQUFpQixFQUFFLHVCQUF1QiwwREFBMEQsZUFBZSxXQUFXLCtDQUErQyxjQUFjLEdBQUcsc0JBQXNCLFdBQVcsaUdBQWlHLGFBQWEseUJBQXlCLFlBQVksdURBQXVELDRCQUE0QiwyREFBMkQsYUFBYSxrRkFBa0YsZ0JBQWdCLGNBQWMsMkdBQTJHLHdCQUF3Qix3QkFBd0IsdUJBQXVCLGFBQWEsd0RBQXdELHVCQUF1QixhQUFhLHFEQUFxRCxVQUFVLGtFQUFrRSxVQUFVLFdBQVcseUJBQXlCLHlLQUF5SyxFQUFFLG9CQUFvQixVQUFVLE1BQU0sa0JBQWtCLHlEQUF5RCxrQkFBa0IsNEJBQTRCLGlCQUFpQix1RUFBdUUsU0FBUyxJQUFJLG1DQUFtQyxvRUFBb0Usb0dBQW9HLEdBQUcsU0FBUyxnQkFBZ0IsNEJBQTRCLDRHQUE0RyxrQkFBa0IsMkNBQTJDLFFBQVEsdUdBQXVHLDBHQUEwRyxpR0FBaUcsR0FBRyxRQUFRLGlCQUFpQixrTEFBa0wsZ0JBQWdCLDBFQUEwRSxnQkFBZ0IsMEVBQTBFLFVBQVUsNEJBQTRCLFFBQVEsNEJBQTRCLE1BQU0sOE1BQThNLHNDQUFzQyxpTUFBaU0sWUFBWSw0RUFBNEUsZUFBZSxnQkFBZ0IsZUFBZSxnQkFBZ0IsZUFBZSwrQ0FBK0MsZUFBZSwrQ0FBK0MsVUFBVSxvQkFBb0IsV0FBVyxvQkFBb0IsVUFBVSxvQkFBb0IsV0FBVyxvQkFBb0IsVUFBVSwrQ0FBK0MsV0FBVyx1QkFBdUIsb0JBQW9CLElBQUksb0JBQW9CLEdBQUcsVUFBVSw2QkFBNkIsWUFBWSxNQUFNLFlBQVksZ0JBQWdCLHVDQUF1QywyR0FBMkcsa0JBQWtCLHFDQUFxQyx5QkFBeUIsdURBQXVELGdFQUFnRSxxQkFBcUIsZ0ZBQWdGLHdEQUF3RCxRQUFRLG1CQUFtQixvRkFBb0Ysa0JBQWtCLHNJQUFzSSxZQUFZLG9NQUFvTSxxQ0FBcUMsb0JBQW9CLHFCQUFxQix5UUFBeVEsY0FBYywrSUFBK0ksMEJBQTBCLE9BQU8sMkNBQTJDLGlEQUFpRCxrQkFBa0IsNkNBQTZDLElBQUksOEVBQThFLDZNQUE2TSw0Q0FBNEMsNkJBQTZCLDJDQUEyQyxLQUFLLFNBQVMsbURBQW1ELEdBQUcsU0FBUyxvQkFBb0IsV0FBVywrREFBK0QsU0FBUyx3QkFBd0IscUJBQXFCLHNFQUFzRSxZQUFZLG9DQUFvQyx1QkFBdUIsUUFBUSxVQUFVLG9DQUFvQyxnQ0FBZ0MsUUFBUSxXQUFXLG1GQUFtRixZQUFZLGFBQWEsZ0JBQWdCLFlBQVksMkNBQTJDLG1GQUFtRiw2U0FBNlMsNERBQTRELFdBQVcsaUNBQWlDLG1EQUFtRCxpQkFBaUIscUJBQXFCLEdBQUcsK0NBQStDLHNDQUFzQyxJQUFJLGlDQUFpQyxjQUFjLG9CQUFvQiw2Q0FBNkMsd0NBQXdDLFNBQVMsNkNBQTZDLDZCQUE2Qiw0Q0FBNEMsR0FBRyxrQ0FBa0MsdUtBQXVLLHdCQUF3Qix3RUFBd0UsYUFBYSwyQ0FBMkMsMkdBQTJHLGdCQUFnQix5Q0FBeUMsSUFBSSxHQUFHLGNBQWMsMkNBQTJDLHdEQUF3RCxpQkFBaUIseUNBQXlDLElBQUksR0FBRyxnQkFBZ0IsV0FBVyxvQkFBb0IscUJBQXFCLHdNQUF3TSxjQUFjLGtEQUFrRCxPQUFPLDJDQUEyQyxpREFBaUQsa0JBQWtCLDZDQUE2QyxJQUFJLDhFQUE4RSwySkFBMkosNENBQTRDLDZCQUE2QiwyQ0FBMkMsS0FBSyxTQUFTLG1EQUFtRCxHQUFHLFNBQVMsb0JBQW9CLFNBQVMsd0JBQXdCLFdBQVcsbUZBQW1GLHFCQUFxQixtR0FBbUcsWUFBWSxvQ0FBb0MsdUJBQXVCLFFBQVEsVUFBVSxvQ0FBb0MsZ0NBQWdDLFFBQVEsWUFBWSxhQUFhLGdCQUFnQixXQUFXLCtEQUErRCxZQUFZLDJDQUEyQyxnRkFBZ0Ysc0NBQXNDLElBQUksOEhBQThILHNFQUFzRSxjQUFjLDJFQUEyRSw4Q0FBOEMsRUFBRSxpREFBaUQsaUZBQWlGLGFBQWEsK0JBQStCLGFBQWEsdUZBQXVGLFNBQVMseURBQXlELHFDQUFxQyxHQUFHLGFBQWEsMkNBQTJDLHlFQUF5RSxHQUFHLGNBQWMsMkNBQTJDLHdEQUF3RCxHQUFHLGdCQUFnQixXQUFXLGtCQUFrQixxQkFBcUIseUVBQXlFLGtCQUFrQiwwSkFBMEosWUFBWSwyQ0FBMkMsc0lBQXNJLDZGQUE2RixJQUFJLDRFQUE0RSxzRUFBc0UsY0FBYyxlQUFlLDJFQUEyRSw4Q0FBOEMsRUFBRSxzREFBc0QseUxBQXlMLGtDQUFrQyxtQ0FBbUMsaUNBQWlDLGtCQUFrQixFQUFFLGdGQUFnRixTQUFTLHlEQUF5RCxxQ0FBcUMsR0FBRyxnQkFBZ0IsMkNBQTJDLDBDQUEwQywrQkFBK0IsSUFBSSxnQkFBZ0IsaUJBQWlCLHlCQUF5QixXQUFXLDJCQUEyQixHQUFHLHdCQUF3Qiw2SEFBNkgsa0RBQWtELGNBQWMsNENBQTRDLGNBQWMsc0RBQXNELGNBQWMscURBQXFELGNBQWMsOENBQThDLGNBQWMseURBQXlELGNBQWMscURBQXFELGNBQWMsOENBQThDLGNBQWMsSUFBSSxjQUFjLDJDQUEyQyx1TUFBdU0saUJBQWlCLHlDQUF5QyxJQUFJLElBQUksb0JBQW9CLHFCQUFxQixvUUFBb1EsMk1BQTJNLDBCQUEwQixxRkFBcUYsYUFBYSw2REFBNkQsaUJBQWlCLDZCQUE2Qix1REFBdUQsd0xBQXdMLHNCQUFzQiwyTEFBMkwsdURBQXVELGtHQUFrRyxPQUFPLDJDQUEyQyxnQ0FBZ0MsR0FBRyxTQUFTLHdCQUF3QixXQUFXLGtEQUFrRCxjQUFjLHNDQUFzQyxVQUFVLDJDQUEyQyxhQUFhLGVBQWUscUJBQXFCLDZCQUE2QixpQkFBaUIsRUFBRSxHQUFHLHFCQUFxQixzUUFBc1EsMkJBQTJCLDZCQUE2QixrQkFBa0IsMkNBQTJDLEVBQUUsc0JBQXNCLDZCQUE2QixpQkFBaUIsMkNBQTJDLEVBQUUsd0JBQXdCLDZCQUE2QixpQkFBaUIsNERBQTRELEVBQUUscUJBQXFCLDJDQUEyQyxhQUFhLGVBQWUscUJBQXFCLHdSQUF3UixrQkFBa0IsR0FBRyxJQUFJLG9DQUFvQyxpQkFBaUIsRUFBRSw4RkFBOEYsa0JBQWtCLEdBQUcsV0FBVyxvRkFBb0YsU0FBUyxtQkFBbUIsbURBQW1ELGlCQUFpQix5REFBeUQsS0FBSywwQkFBMEIsMkRBQTJELEtBQUsseUJBQXlCLEtBQUssU0FBUyxpRkFBaUYsa0JBQWtCLEdBQUcsd0JBQXdCLEdBQUcsU0FBUyw4QkFBOEIsWUFBWSwyQ0FBMkMsMEJBQTBCLG1CQUFtQixTQUFTLDJPQUEyTyxzQ0FBc0Msb0NBQW9DLGNBQWMsb0JBQW9CLHdHQUF3RyxHQUFHLGFBQWEsMkNBQTJDLHNGQUFzRixHQUFHLGNBQWMsMkNBQTJDLGlEQUFpRCxpQkFBaUIseUNBQXlDLEdBQUcsR0FBRyxXQUFXLHVDQUF1QyxnQkFBZ0IsK0JBQStCLEdBQUcsWUFBWSxhQUFhLGdCQUFnQiwrQkFBK0IsRUFBRSxnQkFBZ0IsV0FBVyxZQUFZLHVDQUF1QyxFQUFFLCtDQUErQyxHQUFHLG9CQUFvQixxQkFBcUIsbUpBQW1KLDBEQUEwRCxRQUFRLDJDQUEyQyxpREFBaUQsa0JBQWtCLCtEQUErRCxJQUFJLG9HQUFvRyxpSEFBaUgsU0FBUywyREFBMkQsR0FBRyxTQUFTLG9CQUFvQixlQUFlLHNJQUFzSSxtQkFBbUIsY0FBYyxpQkFBaUIsMkVBQTJFLDRDQUE0QyxLQUFLLFNBQVMsd0JBQXdCLFdBQVcsMkRBQTJELGtCQUFrQixtQkFBbUIsOEJBQThCLHdCQUF3Qiw4QkFBOEIseUZBQXlGLDBGQUEwRiwrREFBK0QsNENBQTRDLHlEQUF5RCxpVkFBaVYsMkNBQTJDLFFBQVEsVUFBVSwwREFBMEQsd0NBQXdDLG9RQUFvUSxTQUFTLDJCQUEyQixzQkFBc0Isb0VBQW9FLDZCQUE2Qix5REFBeUQsSUFBSSxZQUFZLDJDQUEyQyxxR0FBcUcscUJBQXFCLEdBQUcsWUFBWSxRQUFRLGdFQUFnRSxnQkFBZ0IsV0FBVyxtQkFBbUIscUJBQXFCLG1FQUFtRSxPQUFPLDJDQUEyQyxnQkFBZ0IscUJBQXFCLGFBQWEsZ0dBQWdHLElBQUksOEJBQThCLDZCQUE2Qiw0RUFBNEUsMkJBQTJCLHNEQUFzRCxTQUFTLHdCQUF3QixHQUFHLFFBQVEsZ0NBQWdDLE9BQU8sK0JBQStCLFFBQVEsZUFBZSw0QkFBNEIsK0RBQStELFFBQVEsOERBQThELFlBQVksTUFBTSxTQUFTLDZDQUE2QyxXQUFXLGtCQUFrQixTQUFTLDBHQUEwRyxVQUFVLHNFQUFzRSx3Q0FBd0MsMFlBQTBZLFNBQVMsMkJBQTJCLHNCQUFzQixvRUFBb0UsNkJBQTZCLHlEQUF5RCxJQUFJLFlBQVksUUFBUSwwREFBMEQsZ0JBQWdCLHVDQUF1QyxtQkFBbUIscUJBQXFCLHVOQUF1TixFQUFFLDhIQUE4SCxFQUFFLGtJQUFrSSxFQUFFLGlMQUFpTCxFQUFFLGtMQUFrTCxFQUFFLDBHQUEwRyxPQUFPLDJDQUEyQyxxV0FBcVcsNENBQTRDLHVCQUF1QixrREFBa0QseUJBQXlCLEdBQUcsWUFBWSxtQkFBbUIsU0FBUywrREFBK0QsV0FBVyxjQUFjLFVBQVUsU0FBUyxtTEFBbUwsNkNBQTZDLHdDQUF3QyxrT0FBa08sZUFBZSwyQ0FBMkMsZUFBZSxFQUFFLFNBQVMsMkJBQTJCLHNCQUFzQixvRUFBb0UsNkJBQTZCLHlEQUF5RCxJQUFJLFlBQVksUUFBUSw0Q0FBNEMsZ0JBQWdCLHFCQUFxQix3QkFBd0Isa0ZBQWtGLFdBQVcsV0FBVyxRQUFRLFVBQVUsdUJBQXVCLHFCQUFxQixzQkFBc0IsMEJBQTBCLHNCQUFzQixzQkFBc0IsdUJBQXVCLGFBQWEsc0JBQXNCLHFCQUFxQixjQUFjLGlGQUFpRixjQUFjLHVEQUF1RCxrQ0FBa0MsYUFBYSw0QkFBNEIsR0FBRyx5QkFBeUIsbUJBQW1CLHFCQUFxQix5Q0FBeUMsb0JBQW9CLG9EQUFvRCxpRkFBaUYsdUVBQXVFLEdBQUcsYUFBYSxnQ0FBZ0MsbUNBQW1DLHFEQUFxRCwrREFBK0QsR0FBRyxpQkFBaUIsMkNBQTJDLDhFQUE4RSxHQUFHLFdBQVcsc0dBQXNHLFlBQVksY0FBYywwQkFBMEIsU0FBUyxpQkFBaUIsNkdBQTZHLDhHQUE4Ryw4QkFBOEIsa0RBQWtELHdCQUF3Qix5QkFBeUIsMENBQTBDLGVBQWUsK0VBQStFLGlCQUFpQiwwRUFBMEUsc0JBQXNCLGtFQUFrRSwyVEFBMlQsV0FBVyxlQUFlLGtCQUFrQiwyREFBMkQsaUJBQWlCLDRIQUE0SCw2QkFBNkIsU0FBUyw2Q0FBNkMsNkJBQTZCLHdCQUF3QixzQkFBc0IscUNBQXFDLG9CQUFvQix5RUFBeUUsd0JBQXdCLG9DQUFvQyxtQ0FBbUMsT0FBTyxvQkFBb0IsNkJBQTZCLHdCQUF3QixrRkFBa0YsMEdBQTBHLHNDQUFzQyxtQkFBbUIsc0RBQXNELGVBQWUsK01BQStNLGFBQWEsMEJBQTBCLFVBQVUsNkJBQTZCLHdCQUF3QixnQ0FBZ0MsYUFBYSx1UEFBdVAsV0FBVywrRUFBK0UsMkNBQTJDLG1HQUFtRyw0SUFBNEksV0FBVyx5QkFBeUIsZ0NBQWdDLDZCQUE2Qix5RkFBeUYsYUFBYSwyQkFBMkIsWUFBWSwwQkFBMEIsYUFBYSxZQUFZLFdBQVcsS0FBSyxxQkFBcUIsbUJBQW1CLG1CQUFtQixnRkFBZ0YsK0RBQStELDJDQUEyQyxxQkFBcUIsVUFBVSwrRUFBK0UsaUJBQWlCLCtFQUErRSxpQkFBaUIsNEJBQTRCLG1CQUFtQiw2QkFBNkIsaUVBQWlFLG9FQUFvRSx3QkFBd0IsbUJBQW1CLFNBQVMsOEJBQThCLHdDQUF3QyxNQUFNLDhCQUE4Qiw4Q0FBOEMsVUFBVSxpRkFBaUYsbUJBQW1CLDRLQUE0SyxxQkFBcUIsb0dBQW9HLCtDQUErQyw2QkFBNkIsaUNBQWlDLHFGQUFxRiw4Q0FBOEMsa0VBQWtFLEVBQUUsd0NBQXdDLHNFQUFzRSxpQkFBaUIseUNBQXlDLHFCQUFxQixtRUFBbUUsZ0JBQWdCLGlDQUFpQyxtQkFBbUIsb0NBQW9DLHFCQUFxQixXQUFXLHlCQUF5Qix3QkFBd0IsbUJBQW1CLGtCQUFrQiw2QkFBNkIsd0NBQXdDLFdBQVcsU0FBUyxpQkFBaUIseUNBQXlDLFFBQVEsK0dBQStHLG1CQUFtQixvQkFBb0IsV0FBVyx3QkFBd0IseUNBQXlDLFNBQVMsd0JBQXdCLDJDQUEyQyxrQkFBa0IsMEVBQTBFLCtDQUErQyxxQkFBcUIsWUFBWSxPQUFPLG9DQUFvQyxnQkFBZ0IsaUVBQWlFLHNCQUFzQiw2QkFBNkIsMElBQTBJLFlBQVkscUJBQXFCLHlCQUF5QixPQUFPLDREQUE0RCxZQUFZLDRCQUE0QixpRkFBaUYsdUxBQXVMLGNBQWMsZUFBZSwyQkFBMkIsRUFBRSwrQ0FBK0MscUJBQXFCLFlBQVksVUFBVSxXQUFXLDJFQUEyRSxpREFBaUQsU0FBUyxjQUFjLGFBQWEscUJBQXFCLHdCQUF3QixtQkFBbUIsa0JBQWtCLGdEQUFnRCxvREFBb0QsOERBQThELHlCQUF5QixxRUFBcUUsZ0VBQWdFLDRCQUE0QiwwRUFBMEUsK0lBQStJLDBCQUEwQix1Q0FBdUMsa0JBQWtCLGtEQUFrRCxzR0FBc0csbUNBQW1DLHdHQUF3RywwREFBMEQsbUNBQW1DLGlDQUFpQyxjQUFjLDBCQUEwQixtQkFBbUIsOEJBQThCLE1BQU0sMENBQTBDLDBCQUEwQixpQ0FBaUMsc0JBQXNCLDhCQUE4QixTQUFTLHlCQUF5QixpQ0FBaUMscUJBQXFCLFdBQVcsa0NBQWtDLGdDQUFnQyxXQUFXLDBFQUEwRSxzRUFBc0UsUUFBUSxtQ0FBbUMsZ0NBQWdDLFdBQVcsb0VBQW9FLHFCQUFxQiwyQ0FBMkMsdURBQXVELHFGQUFxRix1QkFBdUIsYUFBYSxjQUFjLHVCQUF1QixzQkFBc0Isd0VBQXdFLHFCQUFxQixtQkFBbUIsMEdBQTBHLHdCQUF3Qix5QkFBeUIsMkNBQTJDLDZCQUE2QixpQ0FBaUMsd0RBQXdELEdBQUcsYUFBYSxLQUFLLEdBQUcsU0FBUyw0QkFBNEIsK0RBQStELHFCQUFxQix5RkFBeUYsc0JBQXNCLDhEQUE4RCxTQUFTLG9MQUFvTCxZQUFZLGlGQUFpRixTQUFTLGlDQUFpQyxpQ0FBaUMsb0NBQW9DLGlHQUFpRyw0QkFBNEIsNEJBQTRCLHVCQUF1QixxREFBcUQsVUFBVSxZQUFZLG9CQUFvQixRQUFRLGlCQUFpQixTQUFTLHdCQUF3QixtQ0FBbUMseUhBQXlILGlCQUFpQiwyQ0FBMkMsSUFBSSx3REFBd0QsU0FBUyw4REFBOEQsT0FBTyw4Q0FBOEMsR0FBRyxlQUFlLHFEQUFxRCxjQUFjLHlGQUF5Rix3Q0FBd0MsSUFBSSxZQUFZLGdDQUFnQyxXQUFXLHFIQUFxSCw0QkFBNEIsdUJBQXVCLHFEQUFxRCxTQUFTLDhFQUE4RSxvQkFBb0IsV0FBVyw2RUFBNkUseUJBQXlCLHNLQUFzSyxxREFBcUQsd0VBQXdFLHVCQUF1QixtQ0FBbUMsK0NBQStDLHFCQUFxQiwrR0FBK0csU0FBUyw4Q0FBOEMsTUFBTSxvQkFBb0IsK0ZBQStGLGlCQUFpQiwyQ0FBMkMsdUJBQXVCLG1FQUFtRSxHQUFHLG1CQUFtQixpUkFBaVIsd0NBQXdDLElBQUksZ0JBQWdCLGdDQUFnQyxZQUFZLFdBQVcsS0FBSyxhQUFhLDhDQUE4Qyw0QkFBNEIsZ0JBQWdCLGdCQUFnQixvREFBb0QsZ0RBQWdELG9HQUFvRyxvT0FBb08sV0FBVywrQkFBK0IsZUFBZSxzQkFBc0IsK0JBQStCLDRCQUE0QixxQkFBcUIsZ0ZBQWdGLGVBQWUsS0FBSyw0QkFBNEIsRUFBRSxrREFBa0QsNENBQTRDLFFBQVEsS0FBSyxnQkFBZ0IsNENBQTRDLFdBQVcsUUFBUSxzQkFBc0IscUNBQXFDLHVDQUF1Qyx5Q0FBeUMsMEJBQTBCLEtBQUssS0FBSywrQ0FBK0MsZUFBZSxxQkFBcUIsOEJBQThCLGtCQUFrQiwyQkFBMkIsOERBQThELG1CQUFtQixvU0FBb1MsMkJBQTJCLGtCQUFrQixxRUFBcUUsc0JBQXNCLFdBQVcsNEJBQTRCLHVCQUF1QiwrREFBK0QsY0FBYyxpRkFBaUYsd0VBQXdFLDRDQUE0QyxVQUFVLEtBQUssNEJBQTRCLGtCQUFrQiw4QkFBOEIsb0RBQW9ELDRFQUE0RSw4REFBOEQsb0NBQW9DLDREQUE0RCxNQUFNLFVBQVUsTUFBTSxvRUFBb0Usa0JBQWtCLDRDQUE0QywrTkFBK04sa0JBQWtCLHNHQUFzRyxNQUFNLHlDQUF5Qyx5REFBeUQsOERBQThELFlBQVksNENBQTRDLE1BQU0sNEhBQTRILGtOQUFrTiw2T0FBNk8seUVBQXlFLHFKQUFxSix3QkFBd0IsV0FBVyx3REFBd0Qsb0NBQW9DLFdBQVcsNkVBQTZFLFlBQVksOEJBQThCLDJEQUEyRCw4Q0FBOEMseURBQXlELEdBQUcsdUNBQXVDLHdFQUF3RSxnREFBZ0QsNEJBQTRCLGtCQUFrQix1QkFBdUIsb0pBQW9KLDBFQUEwRSx5QkFBeUIsaUZBQWlGLDBCQUEwQixNQUFNLFVBQVUsS0FBSyxpSEFBaUgsa0JBQWtCLHlCQUF5Qiw4REFBOEQsb0NBQW9DLGtCQUFrQix5QkFBeUIsd0JBQXdCLDZCQUE2Qiw4REFBOEQsbUJBQW1CLFdBQVcsVUFBVSxNQUFNLHlDQUF5QywrREFBK0QsdUJBQXVCLDBCQUEwQixLQUFLLEtBQUssc0JBQXNCLGtCQUFrQixnRUFBZ0Usb0JBQW9CLHdJQUF3SSxTQUFTLCtCQUErQiwyQkFBMkIsNEJBQTRCLFdBQVcsOEJBQThCLEtBQUssZ0JBQWdCLEVBQUUscUNBQXFDLGlDQUFpQyxNQUFNLGNBQWMsb0NBQW9DLG9DQUFvQyxLQUFLLGdEQUFnRCxnQ0FBZ0MsNEJBQTRCLDRCQUE0Qix1REFBdUQsb0NBQW9DLFlBQVkseUJBQXlCLGNBQWMsdVJBQXVSLFVBQVUsNEtBQTRLLHdDQUF3QyxLQUFLLHlCQUF5QiwwRUFBMEUsNkJBQTZCLHFDQUFxQyxzREFBc0QsT0FBTyxlQUFlLHVCQUF1QixtUUFBbVEsZ0JBQWdCLHlCQUF5QiwwT0FBME8sYUFBYSw4Q0FBOEMsK0NBQStDLHFCQUFxQixlQUFlLDRCQUE0QixlQUFlLHdKQUF3Siw4QkFBOEIseUZBQXlGLFlBQVksV0FBVyxLQUFLLDBCQUEwQiwrQkFBK0IsNkpBQTZKLHlEQUF5RCxzRUFBc0UsUUFBUSw4REFBOEQsSUFBSSxTQUFTLHlCQUF5QixpRUFBaUUsZ0ZBQWdGLFNBQVMsZ0JBQWdCLDBDQUEwQywwQkFBMEIsZ0JBQWdCLHNFQUFzRSxVQUFVLHVCQUF1Qix1REFBdUQsMEJBQTBCLDhEQUE4RCxxQkFBcUIsd0RBQXdELHVCQUF1Qix1QkFBdUIsMkJBQTJCLGdDQUFnQyw4RkFBOEYsaURBQWlELGlCQUFpQix3RUFBd0Usa0dBQWtHLGVBQWUsOENBQThDLDBDQUEwQyxTQUFTLGlCQUFpQixpQkFBaUIsV0FBVyxzQ0FBc0MsWUFBWSxxQkFBcUIsa0ZBQWtGLCtJQUErSSxRQUFRLGdEQUFnRCxjQUFjLDZCQUE2Qix5Q0FBeUMsS0FBSyw4QkFBOEIsd0JBQXdCLHVEQUF1RCw2REFBNkQsaUJBQWlCLFNBQVMsd0RBQXdELFNBQVMsbUJBQW1CLCtDQUErQyw4REFBOEQsWUFBWSxrQ0FBa0MsMEJBQTBCLHlMQUF5TCxhQUFhLGtEQUFrRCxrQkFBa0IsbUtBQW1LLHNCQUFzQixtS0FBbUssNEJBQTRCLDBCQUEwQiwrQkFBK0IsNkJBQTZCLHNCQUFzQixtREFBbUQsV0FBVyw4Q0FBOEMsY0FBYyw2QkFBNkIsRUFBRSxZQUFZLHNCQUFzQixZQUFZLDBHQUEwRyxFQUFFLFlBQVkseUJBQXlCLEtBQUssc0VBQXNFLFFBQVEsbURBQW1ELElBQUksa0RBQWtELGtDQUFrQyxNQUFNLFlBQVksSUFBSSxTQUFTLGVBQWUsb0NBQW9DLHFCQUFxQiw0Q0FBNEMseUJBQXlCLDhCQUE4QixtREFBbUQsV0FBVywwREFBMEQsaUNBQWlDLGlCQUFpQixXQUFXLE1BQU0sWUFBWSxlQUFlLDRCQUE0QixNQUFNLG1DQUFtQyxzQkFBc0IsYUFBYSxvQkFBb0IsK0JBQStCLFlBQVksOEJBQThCLGdHQUFnRyw0Q0FBNEMsZ0JBQWdCLDRCQUE0QixhQUFhLHFCQUFxQixrQ0FBa0MsZUFBZSxpQ0FBaUMsbUdBQW1HLCtCQUErQixXQUFXLGtDQUFrQyxnQkFBZ0IsVUFBVSxrQ0FBa0MsTUFBTSxrQ0FBa0Msc0JBQXNCLGFBQWEsb0JBQW9CLCtCQUErQixZQUFZLDhCQUE4QixvSUFBb0ksNEJBQTRCLGFBQWEscUJBQXFCLGtDQUFrQyxlQUFlLGlDQUFpQyxzSEFBc0gsOEJBQThCLGtJQUFrSSxZQUFZLEtBQUssZ0JBQWdCLEtBQUssNkRBQTZELHdCQUF3Qix5RUFBeUUsd0JBQXdCLHlFQUF5RSw2QkFBNkIsd0JBQXdCLG1CQUFtQixxQ0FBcUMsb0NBQW9DLG1CQUFtQixvQ0FBb0MsbUJBQW1CLHdCQUF3QixrQkFBa0IscUJBQXFCLHVCQUF1QixjQUFjLG1GQUFtRix1QkFBdUIsTUFBTSxnQkFBZ0IsZ0RBQWdELHVCQUF1QixxQkFBcUIsTUFBTSx5REFBeUQsYUFBYSxRQUFRLHVFQUF1RSxpQkFBaUIsaUJBQWlCLGlCQUFpQixvREFBb0QsMkNBQTJDLDRLQUE0SyxVQUFVLHVIQUF1SCxTQUFTLFlBQVksV0FBVyxLQUFLLGlCQUFpQixnREFBZ0Qsa0JBQWtCLFNBQVMsS0FBSyxvQ0FBb0MsbUJBQW1CLGtCQUFrQixTQUFTLHVHQUF1RyxvRkFBb0YsY0FBYyxXQUFXLG1EQUFtRCw0R0FBNEcsK0NBQStDLHFJQUFxSSxpR0FBaUcsNkJBQTZCLGlMQUFpTCxrQkFBa0Isd0NBQXdDLHVEQUF1RCxlQUFlLE1BQU0scUJBQXFCLG1FQUFtRSxlQUFlLHNDQUFzQyxpQkFBaUIsTUFBTSxtQ0FBbUMsaURBQWlELE1BQU0sa0JBQWtCLCtHQUErRyxjQUFjLGtCQUFrQiw4SEFBOEgsVUFBVSxnQ0FBZ0MsY0FBYyxZQUFZLDhCQUE4QixNQUFNLDBEQUEwRCxnQkFBZ0IsTUFBTSxVQUFVLHFRQUFxUSx1QkFBdUIsd0RBQXdELGNBQWMsaUhBQWlILHVEQUF1RCxrQkFBa0IsT0FBTyx5Q0FBeUMsVUFBVSx5QkFBeUIsK0dBQStHLGlDQUFpQyxtQkFBbUIsMEJBQTBCLDRDQUE0QyxxRkFBcUYsc0lBQXNJLHNCQUFzQiwyQkFBMkIsNEJBQTRCLG1LQUFtSyxtQkFBbUIsZ0RBQWdELE1BQU0sNFJBQTRSLG1CQUFtQixvQ0FBb0MsK0JBQStCLG9FQUFvRSxpQkFBaUIsNkVBQTZFLGlGQUFpRixrRkFBa0YsK0JBQStCLGtCQUFrQixtQkFBbUIsdUNBQXVDLHNCQUFzQix3S0FBd0ssd0JBQXdCLHlCQUF5QixNQUFNLEtBQUssT0FBTyxFQUFFLDhCQUE4QixhQUFhLFNBQVMsZ0VBQWdFLDBDQUEwQyxNQUFNLE1BQU0saUJBQWlCLGlIQUFpSCxXQUFXLG9FQUFvRSxrQkFBa0IsNEJBQTRCLDZFQUE2RSxpQkFBaUIsWUFBWSxJQUFJLEtBQUssaUJBQWlCLHNDQUFzQyxtQkFBbUIsb0JBQW9CLG9GQUFvRixhQUFhLFNBQVMsNkZBQTZGLG9UQUFvVCx5Q0FBeUMseUhBQXlILE1BQU0seURBQXlELE1BQU0sc0RBQXNELEdBQUcsaUVBQWlFLHFCQUFxQixtUEFBbVAsd0NBQXdDLEVBQUUsZ0VBQWdFLHVEQUF1RCwwR0FBMEcsb0ZBQW9GLGNBQWMsV0FBVyxtREFBbUQseUlBQXlJLHFEQUFxRCxtQkFBbUIsTUFBTSxnSUFBZ0ksU0FBUywwQkFBMEIsS0FBSyxzQkFBc0IsWUFBWSxnQkFBZ0Isc0JBQXNCLGNBQWMsTUFBTSw2Q0FBNkMscUVBQXFFLFNBQVMsZUFBZSxvQ0FBb0MsWUFBWSxXQUFXLHdHQUF3Ryw4R0FBOEcsa0JBQWtCLGlCQUFpQixRQUFRLGlEQUFpRCxZQUFZLElBQUksS0FBSyx3REFBd0QsZ0JBQWdCLDhCQUE4QixzSUFBc0ksK0NBQStDLFFBQVEsdUZBQXVGLGdDQUFnQyxnREFBZ0Qsd0JBQXdCLHlGQUF5RixXQUFXLDhCQUE4QixrQkFBa0IsK0JBQStCLG1GQUFtRiw2RUFBNkUsTUFBTSxrQkFBa0IsY0FBYyw0REFBNEQsaURBQWlELHNGQUFzRiw2SkFBNkosU0FBUyxnQ0FBZ0MsdUNBQXVDLG1FQUFtRSx1QkFBdUIsb0NBQW9DLHdDQUF3QyxvRUFBb0UsWUFBWSxXQUFXLDJDQUEyQyx5Q0FBeUMsTUFBTSx5REFBeUQsYUFBYSxRQUFRLG9NQUFvTSwrQkFBK0IseUhBQXlILDhFQUE4RSxxQkFBcUIsNEVBQTRFLHNCQUFzQix1RUFBdUUsb0JBQW9CLGlCQUFpQixnQ0FBZ0MsMENBQTBDLGtDQUFrQyx5REFBeUQsVUFBVSx5SkFBeUosZ0NBQWdDLGVBQWUsMERBQTBELGdDQUFnQyxrQkFBa0IsTUFBTSxJQUFJLDREQUE0RCw4S0FBOEssK0NBQStDLGtFQUFrRSxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxTQUFTLFVBQVUsb0JBQW9CLHNEQUFzRCxTQUFTLE1BQU0sc0VBQXNFLG9EQUFvRCxVQUFVLFFBQVEsbUNBQW1DLG1CQUFtQiwrREFBK0QsU0FBUyxxQkFBcUIseUZBQXlGLFdBQVcsdUNBQXVDLFNBQVMsdUJBQXVCLDZFQUE2RSxXQUFXLG1EQUFtRCxTQUFTLG1CQUFtQiwwQ0FBMEMsU0FBUyxjQUFjLHFFQUFxRSxTQUFTLHVCQUF1Qix1R0FBdUcsU0FBUyxlQUFlLHdFQUF3RSxPQUFPLHNDQUFzQyxxQkFBcUIsNkJBQTZCLDBCQUEwQix5QkFBeUIsMkNBQTJDLGdDQUFnQyx1QkFBdUIsTUFBTSxrQ0FBa0MsU0FBUyxrREFBa0QsU0FBUyx5QkFBeUIsdUdBQXVHLGtCQUFrQix3QkFBd0IsOEVBQThFLDZEQUE2RCw4R0FBOEcsNEJBQTRCLHFCQUFxQiwyQ0FBMkMsd0JBQXdCLDhDQUE4Qyx1Q0FBdUMseWxCQUF5bEIsV0FBVyxNQUFNLG1DQUFtQyw2Q0FBNkMsNEdBQTRHLFNBQVMseVVBQXlVLHFDQUFxQyxNQUFNLG9EQUFvRCxHQUFHLFFBQVEsaUVBQWlFLEdBQUcsYUFBYSw4RUFBOEUsR0FBRyw4REFBOEQsb0pBQW9KLHdHQUF3RyxNQUFNLG1UQUFtVCw0Q0FBNEMsbUVBQW1FLDJJQUEySSw2QkFBNkIsNEJBQTRCLE1BQU0scU9BQXFPLG9aQUFvWixzREFBc0QscUdBQXFHLFFBQVEsMkJBQTJCLGtFQUFrRSw2QkFBNkIscUNBQXFDLElBQUkscUNBQXFDLGtDQUFrQyxvSkFBb0osa0JBQWtCLE1BQU0sWUFBWSxzQkFBc0IscURBQXFELDZEQUE2RCxtRkFBbUYsU0FBUyxXQUFXLDhFQUE4RSwwRkFBMEYsWUFBWSw2REFBNkQsVUFBVSxnQkFBZ0IsNkVBQTZFLHFHQUFxRyxtQ0FBbUMsMEJBQTBCLHFGQUFxRix5QkFBeUIsc0JBQXNCLE1BQU0scUlBQXFJLGtCQUFrQix1RUFBdUUsdUNBQXVDLE9BQU8sWUFBWSxJQUFJLEtBQUssWUFBWSxJQUFJLEtBQUssbUNBQW1DLGdDQUFnQywyRUFBMkUsb0VBQW9FLGNBQWMsa0JBQWtCLDJIQUEySCxLQUFLLDZDQUE2QywwQkFBMEIsMkhBQTJILHFDQUFxQyxvQ0FBb0MsMEJBQTBCLDJCQUEyQiwwREFBMEQseUZBQXlGLHVFQUF1RSwwSEFBMEgseVRBQXlULHlEQUF5RCw4RkFBOEYsMEhBQTBILHVHQUF1RyxtQ0FBbUMsdUJBQXVCLHVmQUF1ZixnRkFBZ0YseUZBQXlGLE1BQU0sb0ZBQW9GLHVEQUF1RCxxQkFBcUIsS0FBSyxLQUFLLGFBQWEscURBQXFELHFDQUFxQyxzQkFBc0IsdURBQXVELHdEQUF3RCx1REFBdUQsa0ZBQWtGLG1CQUFtQixnQ0FBZ0MseUJBQXlCLFFBQVEscUlBQXFJLG9CQUFvQixrRUFBa0UsTUFBTSxvQ0FBb0MscURBQXFELFlBQVksbUJBQW1CLDRJQUE0SSwrQkFBK0IsTUFBTSxxREFBcUQsa0hBQWtILFVBQVUsMElBQTBJLGtHQUFrRywyQkFBMkIscUxBQXFMLHFFQUFxRSxzSEFBc0gsVUFBVSxrRUFBa0UsMkJBQTJCLFNBQVMsa0VBQWtFLG9EQUFvRCx5QkFBeUIsNkJBQTZCLGdDQUFnQyxrQ0FBa0MscUxBQXFMLGtCQUFrQixhQUFhLHVCQUF1QiwwQkFBMEIsd0VBQXdFLDJIQUEySCxpSUFBaUksc0hBQXNILDhJQUE4SSwwQkFBMEIsV0FBVyxrQkFBa0IsdUJBQXVCLDhHQUE4RywrQkFBK0IsOFRBQThULHNkQUFzZCxrSEFBa0gsa0JBQWtCLFlBQVksTUFBTSx3Q0FBd0MsbURBQW1ELG1EQUFtRCxZQUFZLDJCQUEyQixLQUFLLGtDQUFrQyxzRUFBc0UsR0FBRyx3QkFBd0IsOENBQThDLHdJQUF3SSxhQUFhLG1CQUFtQixzQ0FBc0MsMEJBQTBCLCtHQUErRyx5REFBeUQsdUhBQXVILDRDQUE0Qyw4Q0FBOEMsK0NBQStDLCtFQUErRSxNQUFNLDhEQUE4RCx5VEFBeVQsOEJBQThCLHFCQUFxQiw2REFBNkQsNkJBQTZCLE1BQU0sbUJBQW1CLGlDQUFpQyxTQUFTLE1BQU0sZ0NBQWdDLGlJQUFpSSxpQ0FBaUMsTUFBTSwySEFBMkgsaUNBQWlDLHVDQUF1QyxNQUFNLGtJQUFrSSwwMEJBQTAwQixpQ0FBaUMsZ0RBQWdELGdDQUFnQyxRQUFRLG9JQUFvSSxpQ0FBaUMsZ0RBQWdELGdDQUFnQyxRQUFRLHFEQUFxRCx1REFBdUQsNktBQTZLLG9CQUFvQiw2RkFBNkYsa0JBQWtCLCtDQUErQyxrQkFBa0Isb0VBQW9FLGlCQUFpQixtRUFBbUUsMkVBQTJFLFdBQVcsZ0JBQWdCLHlCQUF5QiwrQkFBK0IsOENBQThDLHFLQUFxSyxpSUFBaUksZUFBZSxxQ0FBcUMsNkNBQTZDLGlEQUFpRCw0Q0FBNEMsV0FBVyxjQUFjLFFBQVEsZ0dBQWdHLFVBQVUsaUNBQWlDLG9DQUFvQyxxREFBcUQsNkJBQTZCLHdEQUF3RCxNQUFNLGtDQUFrQyxpQ0FBaUMsMkRBQTJELDBDQUEwQyxTQUFTLGVBQWUsOExBQThMLHVCQUF1Qiw2QkFBNkIsMEJBQTBCLEtBQUssZ0NBQWdDLGlIQUFpSCwyRkFBMkYsZ0NBQWdDLHNIQUFzSCxXQUFXLFNBQVMsNkJBQTZCLGtKQUFrSixTQUFTLGtCQUFrQix5QkFBeUIsNkRBQTZELEtBQUssK0JBQStCLEVBQUUseUZBQXlGLDZFQUE2RSxvS0FBb0ssOEJBQThCLCtCQUErQixlQUFlLFVBQVUsZ0RBQWdELG1CQUFtQixTQUFTLG1CQUFtQiw0REFBNEQsZ0JBQWdCLFlBQVksV0FBVyxLQUFLLG9DQUFvQywwQkFBMEIsb0JBQW9CLFNBQVMsc0JBQXNCLHNEQUFzRCw0Q0FBNEMsMkJBQTJCLG9EQUFvRCxVQUFVLFFBQVEsMEJBQTBCLHlDQUF5QywwQkFBMEIsMEJBQTBCLE1BQU0sWUFBWSx3QkFBd0IsWUFBWSxtRUFBbUUsUUFBUSw4REFBOEQsbUJBQW1CLGtHQUFrRyxZQUFZLFdBQVcsS0FBSyxpQkFBaUIsMEJBQTBCLGtDQUFrQyxlQUFlLHVDQUF1QyxZQUFZLHNEQUFzRCxrQkFBa0IsMEJBQTBCLFVBQVUsd0JBQXdCLFFBQVEsZ0NBQWdDLHFCQUFxQixLQUFLLDJDQUEyQyxzREFBc0Qsd0JBQXdCLFNBQVMsdUJBQXVCLGdEQUFnRCxlQUFlLFFBQVEsU0FBUyxjQUFjLHVCQUF1QixXQUFXLDhCQUE4QixTQUFTLGNBQWMsZUFBZSx5QkFBeUIsYUFBYSxrQkFBa0IscUNBQXFDLHNDQUFzQyw2QkFBNkIsa0JBQWtCLGFBQWEsK0RBQStELG1CQUFtQixZQUFZLGlCQUFpQixvRUFBb0Usc0ZBQXNGLGlGQUFpRixZQUFZLDJCQUEyQiwyQ0FBMkMsOEVBQThFLEVBQUUsNkNBQTZDLDZCQUE2Qix3QkFBd0IsNkNBQTZDLGFBQWEsNkRBQTZELE1BQU0scUNBQXFDLDBDQUEwQyxZQUFZLDJCQUEyQixLQUFLLGlDQUFpQyxpRUFBaUUsNEVBQTRFLHVGQUF1Riw4QkFBOEIsNkZBQTZGLHNCQUFzQixTQUFTLDZCQUE2Qix3QkFBd0IscUdBQXFHLFVBQVUsU0FBUyxjQUFjLG9CQUFvQix3RkFBd0YsZ0JBQWdCLDhCQUE4QiwrQ0FBK0MsU0FBUyxXQUFXLG9CQUFvQixrQkFBa0IsdUJBQXVCLDJLQUEySyx5Q0FBeUMscUJBQXFCLFdBQVcsZUFBZSxTQUFTLEdBQUcscUVBQXFFLGtGQUFrRixxQkFBcUIsa0JBQWtCLEVBQUUsbUNBQW1DLGtDQUFrQyw4Q0FBOEMsNkRBQTZELHdhQUF3YSxnQkFBZ0Isb0NBQW9DLHNMQUFzTCwrREFBK0Qsc0NBQXNDLGFBQWEsc0JBQXNCLG9EQUFvRCx3QkFBd0IsMENBQTBDLElBQUksY0FBYyxJQUFJLGlDQUFpQyxpQkFBaUIsdURBQXVELDZEQUE2RCwyQ0FBMkMsK0JBQStCLHdDQUF3QyxvREFBb0QsY0FBYyx5RUFBeUUsSUFBSSxlQUFlLElBQUksaUNBQWlDLGlCQUFpQixzRkFBc0Ysc0VBQXNFLGdCQUFnQixJQUFJLFlBQVksaUNBQWlDLGlCQUFpQixrQkFBa0IsWUFBWSxHQUFHLGFBQWEsTUFBTSxpREFBaUQsa0NBQWtDLGtDQUFrQyx3REFBd0QsWUFBWSxFQUFFLDZTQUE2UyxpQkFBaUIsc0NBQXNDLGdCQUFnQixxQ0FBcUMsOEVBQThFLDZCQUE2QixrQkFBa0IsZ0JBQWdCLHlCQUF5QixPQUFPLFNBQVMseUJBQXlCLDZCQUE2QixNQUFNLDBGQUEwRiwyQ0FBMkMsZ0NBQWdDLE1BQU0sVUFBVSxXQUFXLE1BQU0sd0RBQXdELGNBQWMsd0RBQXdELHNCQUFzQixrRkFBa0YsMkNBQTJDLFdBQVcsa0JBQWtCLFFBQVEsdUVBQXVFLGtCQUFrQixNQUFNLDJHQUEyRyxNQUFNLFNBQVMsd0dBQXdHLHVDQUF1QyxTQUFTLEdBQUcsTUFBTSxHQUFHLG9GQUFvRixnREFBZ0QsNkJBQTZCLHNGQUFzRiw0RUFBNEUscUJBQXFCLDJCQUEyQixFQUFFLEdBQUcsRUFBRSxFQUFFLG9MQUFvTCxjQUFjLG9EQUFvRCxpQkFBaUIsMkxBQTJMLGlCQUFpQixZQUFZLElBQUksZ0JBQWdCLHVIQUF1SCx5QkFBeUIsdUpBQXVKLGlCQUFpQixJQUFJLGtCQUFrQixvQ0FBb0MsYUFBYSxzQkFBc0IsYUFBYSxzQkFBc0IsdUhBQXVILEVBQUUsOEJBQThCLEtBQUssaUNBQWlDLEtBQUssUUFBUSxTQUFTLDJCQUEyQixzREFBc0QsNkVBQTZFLHNDQUFzQyx3QkFBd0Isb0NBQW9DLHNEQUFzRCxXQUFXLDBCQUEwQiwwQkFBMEIsV0FBVyxTQUFTLHVCQUF1Qiw2QkFBNkIsY0FBYyw0QkFBNEIsa0NBQWtDLGtCQUFrQix3QkFBd0IseUNBQXlDLFNBQVMsaUJBQWlCLG9EQUFvRCxnREFBZ0QsbUZBQW1GLHlFQUF5RSxVQUFVLGVBQWUsK0RBQStELFVBQVUsd0JBQXdCLHNCQUFzQixNQUFNLDRFQUE0RSxvREFBb0QscUNBQXFDLGdDQUFnQyxzQ0FBc0MsTUFBTSxpREFBaUQsRUFBRSxHQUFHLHVCQUF1Qix3RUFBd0UsNEVBQTRFLG9GQUFvRixXQUFXLGtDQUFrQyw2QkFBNkIsdUJBQXVCLDRCQUE0Qix3QkFBd0IsNkdBQTZHLGtCQUFrQiw2QkFBNkIseUNBQXlDLHlEQUF5RCxJQUFJLDZGQUE2RixpQkFBaUIsSUFBSSwrQkFBK0IseUNBQXlDLGFBQWEseUdBQXlHLHlCQUF5QiwrQkFBK0IsMEJBQTBCLGtHQUFrRywyQkFBMkIseUJBQXlCLGdDQUFnQywrQ0FBK0MsR0FBRyxnQkFBZ0IsdUNBQXVDLHVCQUF1Qix3QkFBd0IsMkJBQTJCLHVCQUF1QiwyQkFBMkIsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLHlCQUF5QixnSEFBZ0gsa0NBQWtDLG9EQUFvRCw4REFBOEQsMkJBQTJCLElBQUkscUNBQXFDLGdDQUFnQyx3REFBd0QsMkJBQTJCLGdCQUFnQixtQ0FBbUMsdUVBQXVFLDhEQUE4RCxNQUFNLG9FQUFvRSxNQUFNLDhFQUE4RSxNQUFNLGdGQUFnRixNQUFNLGdFQUFnRSxNQUFNLGdFQUFnRSxNQUFNLHNFQUFzRSxNQUFNLGdGQUFnRixNQUFNLDhEQUE4RCxNQUFNLHNGQUFzRixNQUFNLGdFQUFnRSxNQUFNLGdFQUFnRSxNQUFNLDBEQUEwRCxNQUFNLHNFQUFzRSxNQUFNLGtDQUFrQyxHQUFHLE1BQU0sMkJBQTJCLFFBQVEsOEJBQThCLGNBQWMsMEVBQTBFLEVBQUUsc0JBQXNCLDREQUE0RCxpQkFBaUIsb0NBQW9DLFlBQVkscUNBQXFDLGVBQWUsMkVBQTJFLEVBQUUsc0JBQXNCLDZEQUE2RCxzQkFBc0IsZ0xBQWdMLGlCQUFpQixJQUFJLGFBQWEsMERBQTBELGtCQUFrQixFQUFFLGdGQUFnRixFQUFFLG9CQUFvQiwrR0FBK0csMEJBQTBCLElBQUksMEdBQTBHLEVBQUUsbUJBQW1CLHdFQUF3RSx5REFBeUQsNENBQTRDLDBEQUEwRCx3Q0FBd0MsZ0JBQWdCLHdHQUF3Ryx3R0FBd0csRUFBRSxtQ0FBbUMsRUFBRSxtQkFBbUIsNkJBQTZCLGtGQUFrRix1REFBdUQsbUVBQW1FLDBCQUEwQix3R0FBd0csRUFBRSxHQUFHLHlDQUF5QywrREFBK0QsT0FBTywwQkFBMEIsK0JBQStCLGFBQWEsOERBQThELGlCQUFpQixFQUFFLG9CQUFvQixhQUFhLHNFQUFzRSxFQUFFLGtDQUFrQyxNQUFNLHNCQUFzQiwyQkFBMkIsV0FBVyxNQUFNLDJGQUEyRixTQUFTLHNDQUFzQyxFQUFFLEtBQUssY0FBYyxXQUFXLDBEQUEwRCxPQUFPLE1BQU0sR0FBRyxvREFBb0QsOERBQThELEVBQUUsK0JBQStCLEVBQUUsT0FBTyxNQUFNLCtIQUErSCwrQkFBK0Isb0tBQW9LLGtEQUFrRCxlQUFlLCtHQUErRyxFQUFFLDZEQUE2RCxnQkFBZ0IsK0JBQStCLHdCQUF3QixvREFBb0QsNERBQTRELEVBQUUsK0JBQStCLEVBQUUsK0RBQStELGVBQWUsb0JBQW9CLHdCQUF3QixtRkFBbUYsRUFBRSxPQUFPLHlCQUF5QiwrQkFBK0IsK1FBQStRLFlBQVksdUJBQXVCLGlCQUFpQix3QkFBd0IsWUFBWSx5QkFBeUIseUJBQXlCLG9CQUFvQix5QkFBeUIscUxBQXFMLEVBQUUsUUFBUSxrQkFBa0IsRUFBRSxvQkFBb0IseUJBQXlCLE1BQU0seUhBQXlILEtBQUssNkRBQTZELHNFQUFzRSxFQUFFLFFBQVEsYUFBYSxxQ0FBcUMsNEJBQTRCLEVBQUUsb0JBQW9CLHlCQUF5QixvSkFBb0osRUFBRSxRQUFRLHVCQUF1Qix5QkFBeUIsbUNBQW1DLHVFQUF1RSxFQUFFLFFBQVEsMkJBQTJCLEVBQUUsb0JBQW9CLHlCQUF5Qiw4TkFBOE4sRUFBRSxRQUFRLHNCQUFzQiw0Q0FBNEMscUJBQXFCLG9CQUFvQix3REFBd0QscUVBQXFFLEVBQUUseUNBQXlDLDJCQUEyQixzVkFBc1Ysd0JBQXdCLG9CQUFvQix3Q0FBd0MscUVBQXFFLEVBQUUseUNBQXlDLCtEQUErRCxzU0FBc1MsbUJBQW1CLG9CQUFvQix3REFBd0QsdVJBQXVSLDJDQUEyQyxFQUFFLDBDQUEwQyxnQkFBZ0IsWUFBWSxxQkFBcUIsOENBQThDLFlBQVksd0JBQXdCLDRJQUE0SSxhQUFhLDJOQUEyTixrQkFBa0IsZ0JBQWdCLDZQQUE2UCxtQ0FBbUMsdURBQXVELE1BQU0sK0JBQStCLEtBQUssS0FBSyx1QkFBdUIsU0FBUyxPQUFPLGtCQUFrQixhQUFhLG1DQUFtQyxpREFBaUQsV0FBVywrQkFBK0IsS0FBSyxLQUFLLHVCQUF1Qiw2QkFBNkIsS0FBSyxLQUFLLHFCQUFxQix5QkFBeUIsbUJBQW1CLHVCQUF1QixhQUFhLDBDQUEwQyxTQUFTLDZCQUE2Qix1RkFBdUYsV0FBVyxnQkFBZ0IsMkdBQTJHLHlCQUF5Qix3QkFBd0IsdURBQXVELEVBQUUsK0VBQStFLGlCQUFpQixXQUFXLHdDQUF3QyxvQ0FBb0MsdUdBQXVHLHNEQUFzRCxVQUFVLGtDQUFrQyx1REFBdUQsVUFBVSxrQkFBa0IsNElBQTRJLGtCQUFrQiw2QkFBNkIsZ0JBQWdCLDJCQUEyQixNQUFNLGtDQUFrQyxtQ0FBbUMscUNBQXFDLEdBQUcsNkJBQTZCLG1DQUFtQyxpRkFBaUYsb0dBQW9HLEdBQUcsU0FBUywrSUFBK0kseUJBQXlCLHFGQUFxRiw2QkFBNkIsdUJBQXVCLGtFQUFrRSxZQUFZLFdBQVcsS0FBSyxzQ0FBc0MsNENBQTRDLFNBQVMsU0FBUyxXQUFXLDZCQUE2QixlQUFlLEVBQUUsb0JBQW9CLDhCQUE4QixTQUFTLHNDQUFzQyxLQUFLLE1BQU0sYUFBYSxTQUFTLDRCQUE0QixxQkFBcUIsOEJBQThCLDBEQUEwRCxTQUFTLE1BQU0sMkRBQTJELGFBQWEsRUFBRSxzQkFBc0IsU0FBUyxpQkFBaUIsY0FBYyxtQkFBbUIsMkNBQTJDLEtBQUssTUFBTSxhQUFhLFNBQVMsNEJBQTRCLHFCQUFxQiw4QkFBOEIsMEVBQTBFLHNCQUFzQixFQUFFLHNEQUFzRCxtREFBbUQsTUFBTSxjQUFjLDZRQUE2USxtRUFBbUUsa0NBQWtDLDZCQUE2QiwrQ0FBK0MsMElBQTBJLGdCQUFnQixtQ0FBbUMsaUJBQWlCLDZEQUE2RCxrQkFBa0Isa0ZBQWtGLDBCQUEwQix3REFBd0QsK0JBQStCLGNBQWMsV0FBVyw0QkFBNEIsd0JBQXdCLDhCQUE4QixpQkFBaUIsb0NBQW9DLDhKQUE4Six1RUFBdUUsUUFBUSxxbkJBQXFuQix3QkFBd0IsdUVBQXVFLGlGQUFpRiwwQkFBMEIsZ0ZBQWdGLGVBQWUsMkNBQTJDLG1EQUFtRCxvQ0FBb0Msb0NBQW9DLDJEQUEyRCxHQUFHLGVBQWUsMkNBQTJDLGtGQUFrRix3REFBd0QsR0FBRyxlQUFlLG9DQUFvQyxnQkFBZ0IsRUFBRSxvSkFBb0osK0JBQStCLGtCQUFrQixJQUFJLG9CQUFvQixVQUFVLFdBQVcsd0NBQXdDLG1HQUFtRyxnQkFBZ0Isb0JBQW9CLGtDQUFrQywwQkFBMEIsaUlBQWlJLHlRQUF5USxpQkFBaUIsSUFBSSw0Q0FBNEMsRUFBRSxtQ0FBbUMsWUFBWSxpQ0FBaUMsZ0JBQWdCLElBQUksK0pBQStKLGFBQWEsdUNBQXVDLEdBQUcsVUFBVSxrREFBa0QsOExBQThMLG1NQUFtTSxvQ0FBb0MsMEJBQTBCLHVDQUF1QyxnREFBZ0Qsb0NBQW9DLDZEQUE2RCw0Q0FBNEMsd0ZBQXdGLDZEQUE2RCw2Q0FBNkMsOERBQThELGtFQUFrRSxrRUFBa0UsaUNBQWlDLHlKQUF5SixrSEFBa0gsdURBQXVELGdEQUFnRCw0QkFBNEIsOEJBQThCLDhCQUE4QixxQ0FBcUMsZ0NBQWdDLHdFQUF3RSwwQ0FBMEMsc0NBQXNDLDZCQUE2QixxQ0FBcUMsMkZBQTJGLHNDQUFzQyxvQkFBb0IsV0FBVyxzQ0FBc0MsNENBQTRDLGlDQUFpQyx5QkFBeUIscURBQXFELG9CQUFvQixXQUFXLHFCQUFxQiwrRUFBK0UsNENBQTRDLG9CQUFvQixXQUFXLCtCQUErQix5RkFBeUYsb0JBQW9CLDhDQUE4QyxnQ0FBZ0MsZ0JBQWdCLDRCQUE0Qiw0QkFBNEIsMEJBQTBCLHVEQUF1RCx3Q0FBd0Msb0JBQW9CLFdBQVcsdUNBQXVDLHdCQUF3QixhQUFhLCtCQUErQixvREFBb0QsV0FBVyx3QkFBd0Isc0JBQXNCLGFBQWEsc0NBQXNDLHFEQUFxRCw0QkFBNEIsNEJBQTRCLDRCQUE0Qix1QkFBdUIsb0JBQW9CLHdCQUF3QiwwQkFBMEIscUJBQXFCLHFCQUFxQixhQUFhLGlDQUFpQywyRUFBMkUsbUNBQW1DLG1DQUFtQyw4RUFBOEUsb0NBQW9DLGdEQUFnRCxvREFBb0QsV0FBVyx5QkFBeUIsOEJBQThCLDhCQUE4QixpQ0FBaUMsaUNBQWlDLHdCQUF3Qix3QkFBd0IscUNBQXFDLHFCQUFxQixxQkFBcUIscUJBQXFCLGFBQWEscUNBQXFDLHlIQUF5SCwwSEFBMEgsa0NBQWtDLDJCQUEyQiw2VUFBNlUsbVhBQW1YLHFDQUFxQyxnQ0FBZ0Msb0VBQW9FLHVIQUF1SCwyRkFBMkYsb0RBQW9ELFdBQVcseUJBQXlCLDhCQUE4Qiw4QkFBOEIsNkJBQTZCLHdDQUF3QyxnREFBZ0QscUJBQXFCLG9CQUFvQiwyQkFBMkIsaVZBQWlWLHNZQUFzWSxvQ0FBb0MsdUNBQXVDLHdFQUF3RSx1QkFBdUIsbUNBQW1DLHVCQUF1QixpRUFBaUUsTUFBTSx1REFBdUQsaUhBQWlILG1EQUFtRCxNQUFNLCtDQUErQyx1QkFBdUIsNEZBQTRGLE1BQU0sOEVBQThFLDhFQUE4RSxnREFBZ0QsaUNBQWlDLHdCQUF3Qix3QkFBd0Isc0JBQXNCLGFBQWEsc0NBQXNDLCtDQUErQyx1QkFBdUIsaUdBQWlHLCtGQUErRiwrQ0FBK0MsbUNBQW1DLG9EQUFvRCxXQUFXLHlCQUF5Qiw4QkFBOEIsd0JBQXdCLDBCQUEwQixxQkFBcUIsdUJBQXVCLGdJQUFnSSwwREFBMEQscUpBQXFKLCtEQUErRCw2QkFBNkIsOENBQThDLDBFQUEwRSwwQkFBMEIsZ0RBQWdELCtCQUErQix3QkFBd0IsbUJBQW1CLGFBQWEsbUNBQW1DLCtDQUErQyw2QkFBNkIsb0RBQW9ELFdBQVcseUJBQXlCLHFCQUFxQixxQkFBcUIsbUJBQW1CLGFBQWEsNkNBQTZDLGdCQUFnQixxQkFBcUIsMkNBQTJDLHdCQUF3QixhQUFhLGdCQUFnQix5Q0FBeUMscUJBQXFCLDBDQUEwQyxzQkFBc0IsbUJBQW1CLCtCQUErQix3QkFBd0IsMEJBQTBCLHNCQUFzQixtQ0FBbUMsdUJBQXVCLHdCQUF3QiwrREFBK0QsK0NBQStDLGFBQWEsK0VBQStFLDZGQUE2Rix3Q0FBd0MsbUJBQW1CLG9CQUFvQixzQkFBc0IsOENBQThDLHVCQUF1QixrQ0FBa0MsMEJBQTBCLGFBQWEsNkNBQTZDLHFEQUFxRCwyQ0FBMkMsd0RBQXdELGlFQUFpRSx3RUFBd0Usb0NBQW9DLHdCQUF3Qix5QkFBeUIsdUJBQXVCLHNCQUFzQiwwQkFBMEIsNkJBQTZCLDBDQUEwQyx1QkFBdUIsdUJBQXVCLGtDQUFrQywwQkFBMEIscUNBQXFDLG9EQUFvRCxvREFBb0QseUJBQXlCLHVCQUF1QixxREFBcUQsdUNBQXVDLGFBQWEseUJBQXlCLHNCQUFzQiwwQkFBMEIsMEJBQTBCLHlIQUF5SCw4Q0FBOEMsMkNBQTJDLHdDQUF3QyxnREFBZ0QsdUhBQXVILHlCQUF5QixnQkFBZ0IsMENBQTBDLGdEQUFnRCxzQkFBc0IsK0dBQStHLHdDQUF3Qyw0QkFBNEIsa0JBQWtCLGFBQWEsNkNBQTZDLHlEQUF5RCx3QkFBd0Isa0JBQWtCLHNCQUFzQiw4QkFBOEIsYUFBYSxrQkFBa0IseUVBQXlFLDZHQUE2Ryx5SEFBeUgsb0RBQW9ELFdBQVcsd0JBQXdCLHNCQUFzQixtR0FBbUcsb0lBQW9JLHNDQUFzQywyR0FBMkcsK0lBQStJLHlDQUF5QywyQ0FBMkMsb0RBQW9ELFdBQVcsd0JBQXdCLHNCQUFzQixxQkFBcUIsbUJBQW1CLDJHQUEyRywySUFBMkksc0RBQXNELGlEQUFpRCwwQkFBMEIscUJBQXFCLHFCQUFxQixxQkFBcUIsbUJBQW1CLHNKQUFzSiw2TEFBNkwsa0NBQWtDLGdDQUFnQyxnQ0FBZ0MsaUNBQWlDLHVFQUF1RSxtQ0FBbUMsbUNBQW1DLDBFQUEwRSxvQ0FBb0MseUNBQXlDLHlDQUF5QyxxREFBcUQsb0RBQW9ELFdBQVcseUJBQXlCLHFCQUFxQixpQ0FBaUMsaUNBQWlDLHFCQUFxQixxQkFBcUIscUJBQXFCLHFCQUFxQixtQkFBbUIsNFBBQTRQLDJTQUEyUyxrQ0FBa0MsZ0NBQWdDLGdDQUFnQywwQkFBMEIsMEJBQTBCLHdCQUF3QixxQ0FBcUMsaUVBQWlFLCtEQUErRCwwR0FBMEcsd0dBQXdHLHNEQUFzRCx1REFBdUQsaUNBQWlDLHFCQUFxQiwwQkFBMEIscUJBQXFCLHFCQUFxQixzSkFBc0osNkxBQTZMLGtDQUFrQyxnQ0FBZ0MsZ0NBQWdDLGlDQUFpQyx1RUFBdUUsbUNBQW1DLG1DQUFtQywwRUFBMEUsb0NBQW9DLCtDQUErQyxvREFBb0QsV0FBVyx5QkFBeUIsaUNBQWlDLGlDQUFpQyxxQkFBcUIscUJBQXFCLHFCQUFxQixxQkFBcUIsNFBBQTRQLDJTQUEyUyxrQ0FBa0MsZ0NBQWdDLGdDQUFnQyw4QkFBOEIsMEJBQTBCLHdCQUF3QixpRUFBaUUsK0RBQStELHFDQUFxQyw4R0FBOEcsNkdBQTZHLDBDQUEwQyxhQUFhLHFCQUFxQixvREFBb0QsV0FBVyx5QkFBeUIsMEJBQTBCLDZCQUE2QixvQ0FBb0Msa0NBQWtDLDZCQUE2QixxQkFBcUIsMkJBQTJCLDhDQUE4QywrQkFBK0IsNElBQTRJLHVLQUF1Syw0RUFBNEUsOEVBQThFLDJDQUEyQyxnQ0FBZ0MsbURBQW1ELCtDQUErQywwQkFBMEIsMkRBQTJELDhEQUE4RCw4QkFBOEIsMkNBQTJDLG9CQUFvQixnRUFBZ0UsK0ZBQStGLHFCQUFxQiw2SUFBNkkseUZBQXlGLHlGQUF5Rix5RkFBeUYsb0JBQW9CLG1EQUFtRCxxQkFBcUIsMEJBQTBCLHFCQUFxQixxQkFBcUIsd0JBQXdCLG1TQUFtUyxzVkFBc1Ysa0NBQWtDLGdDQUFnQyxnQ0FBZ0MsaUNBQWlDLHVFQUF1RSxtQ0FBbUMsbUNBQW1DLDBFQUEwRSxvQ0FBb0MsMENBQTBDLG1DQUFtQyxvREFBb0QsV0FBVyx5QkFBeUIsaUNBQWlDLGlDQUFpQyw4QkFBOEIscUJBQXFCLGtDQUFrQyw2QkFBNkIsMEJBQTBCLDZCQUE2QixvQ0FBb0MscUJBQXFCLDJCQUEyQiw4Q0FBOEMsK0JBQStCLHFCQUFxQix3QkFBd0IsbVNBQW1TLHNWQUFzVixrQ0FBa0MsZ0NBQWdDLGdDQUFnQywwQkFBMEIsMEJBQTBCLHdCQUF3Qiw0QkFBNEIsaUNBQWlDLGlFQUFpRSwrREFBK0QsNEVBQTRFLDhFQUE4RSwyQ0FBMkMsZ0NBQWdDLG1EQUFtRCwrQ0FBK0MsMEJBQTBCLGdDQUFnQyxxQ0FBcUMsOEdBQThHLHdHQUF3RyxzR0FBc0csaUNBQWlDLGdFQUFnRSxvRkFBb0YscUJBQXFCLDZJQUE2SSxvR0FBb0csdUJBQXVCLDREQUE0RCxvQ0FBb0MsbUJBQW1CLHlCQUF5QixxQkFBcUIsc0JBQXNCLDJDQUEyQyx5Q0FBeUMsWUFBWSwrQkFBK0IsYUFBYSw2QkFBNkIsNERBQTRELG1EQUFtRCwyREFBMkQsbURBQW1ELGdDQUFnQyxrREFBa0QsMkRBQTJELGtEQUFrRCwwREFBMEQsd0VBQXdFLDBFQUEwRSxnR0FBZ0csMEVBQTBFLG9EQUFvRCxXQUFXLHlCQUF5Qix5QkFBeUIscUJBQXFCLDZCQUE2QixtQkFBbUIsYUFBYSxxQ0FBcUMsbUNBQW1DLDhDQUE4Qyw0Q0FBNEMsMkNBQTJDLG1CQUFtQix3QkFBd0IscUJBQXFCLHNCQUFzQix5QkFBeUIsc0JBQXNCLDZDQUE2QyxvQ0FBb0MsZ0NBQWdDLDBGQUEwRixpREFBaUQseUZBQXlGLDBCQUEwQiwyQkFBMkIsZ0NBQWdDLHNCQUFzQixzR0FBc0csOEJBQThCLHFFQUFxRSxzREFBc0QsK0ZBQStGLDBEQUEwRCxvREFBb0QsV0FBVyx5QkFBeUIscUJBQXFCLDZCQUE2QixtQkFBbUIsYUFBYSxxQ0FBcUMsNEJBQTRCLG9EQUFvRCxzQkFBc0Isc0JBQXNCLDRCQUE0QiwySUFBMkksaUxBQWlMLDBEQUEwRCw4RUFBOEUsbUNBQW1DLG9EQUFvRCxXQUFXLDREQUE0RCxzQkFBc0Isc0JBQXNCLDhCQUE4QiwrQkFBK0Isd0NBQXdDLHNCQUFzQixzQkFBc0IsNEJBQTRCLGdDQUFnQyxnUkFBZ1IsMlVBQTJVLCtCQUErQix3Q0FBd0Msb0RBQW9ELGlDQUFpQyx5Q0FBeUMsMEJBQTBCLGdCQUFnQixzQkFBc0IsMEJBQTBCLG1CQUFtQiwyREFBMkQsbUdBQW1HLHlDQUF5QyxnQ0FBZ0MsMkJBQTJCLG9FQUFvRSwyREFBMkQseUVBQXlFLHNDQUFzQywrREFBK0QsbUdBQW1HLGlGQUFpRix1Q0FBdUMsNERBQTRELDBCQUEwQixzQkFBc0Isc0JBQXNCLDRCQUE0Qix3QkFBd0Isa0dBQWtHLG9JQUFvSSwwREFBMEQsOEVBQThFLG1DQUFtQyxtQ0FBbUMsb0RBQW9ELFdBQVcsNERBQTRELHNCQUFzQix1QkFBdUIsOEJBQThCLHNCQUFzQiw4QkFBOEIsd0NBQXdDLCtCQUErQiw2QkFBNkIsc0JBQXNCLHNCQUFzQiw0QkFBNEIsd0JBQXdCLHVPQUF1Tyw4UkFBOFIsK0JBQStCLHdDQUF3Qyw0Q0FBNEMsK0NBQStDLCtEQUErRCxpQ0FBaUMseUNBQXlDLDBCQUEwQixnQkFBZ0Isc0JBQXNCLDBCQUEwQixtQkFBbUIsMkRBQTJELG1HQUFtRyx5Q0FBeUMsZ0NBQWdDLDJCQUEyQixvRUFBb0UsMkRBQTJELHlFQUF5RSxzQ0FBc0MsK0RBQStELG1HQUFtRyxpRkFBaUYsdUNBQXVDLHVEQUF1RCxrREFBa0QsdUJBQXVCLHFCQUFxQiw2QkFBNkIsMEJBQTBCLHNCQUFzQixzQkFBc0IsMEJBQTBCLDRCQUE0QixzQkFBc0Isb1NBQW9TLHVWQUF1VixrQ0FBa0MsZ0NBQWdDLGdDQUFnQyw4QkFBOEIsMEJBQTBCLHdCQUF3QixpRUFBaUUsK0RBQStELG9GQUFvRixrRkFBa0Ysd0NBQXdDLHdDQUF3Qyx1Q0FBdUMsMERBQTBELDhFQUE4RSx5REFBeUQseURBQXlELDJCQUEyQiw4QkFBOEIsa0dBQWtHLGtHQUFrRyx5RUFBeUUsaUNBQWlDLG9EQUFvRCxXQUFXLDZGQUE2RixzQkFBc0Isc0JBQXNCLCtCQUErQiw4QkFBOEIsd0NBQXdDLHNCQUFzQixzQkFBc0IsMEJBQTBCLDRCQUE0QixzQkFBc0IsdWRBQXVkLHdpQkFBd2lCLCtCQUErQix3Q0FBd0MsMEVBQTBFLGlDQUFpQyx5Q0FBeUMsMEJBQTBCLGdCQUFnQixzQkFBc0IsMEJBQTBCLG1CQUFtQiwyREFBMkQsbUdBQW1HLHlDQUF5QyxnQ0FBZ0MsMkJBQTJCLG9FQUFvRSwyREFBMkQseUVBQXlFLHNDQUFzQywrREFBK0QsbUdBQW1HLGlGQUFpRixrQ0FBa0MsNEJBQTRCLG9CQUFvQix1REFBdUQsMEJBQTBCLHlCQUF5QixvQkFBb0Isc0JBQXNCLHNCQUFzQixxQkFBcUIscUJBQXFCLDRCQUE0QixxT0FBcU8sbVJBQW1SLDBEQUEwRCw4RUFBOEUsNkNBQTZDLDZDQUE2Qyw2Q0FBNkMsK0VBQStFLG1DQUFtQyxvREFBb0QsV0FBVyw2RkFBNkYsc0JBQXNCLHNCQUFzQiw4QkFBOEIsd0NBQXdDLDhCQUE4Qix3QkFBd0IsOEJBQThCLHdCQUF3QiwrQkFBK0Isc0JBQXNCLHNCQUFzQixxQkFBcUIscUJBQXFCLDRCQUE0Qiw4VEFBOFQsNlhBQTZYLCtCQUErQix3Q0FBd0MsMEVBQTBFLGlDQUFpQyx5Q0FBeUMsMEJBQTBCLGdCQUFnQixzQkFBc0IsMEJBQTBCLG1CQUFtQiwyREFBMkQsbUdBQW1HLHlDQUF5QyxnQ0FBZ0MsMkJBQTJCLG9FQUFvRSwyREFBMkQseUVBQXlFLHNDQUFzQywrREFBK0QsbUdBQW1HLGlGQUFpRix3R0FBd0csOEZBQThGLDZCQUE2QixxQ0FBcUMsd0JBQXdCLDJCQUEyQiwyQkFBMkIsb0JBQW9CLG9CQUFvQiwrQkFBK0IsZ0NBQWdDLGtDQUFrQyxnQ0FBZ0MsNEJBQTRCLGFBQWEsdUNBQXVDLHVDQUF1QyxxQkFBcUIsZ0NBQWdDLHFCQUFxQixnQ0FBZ0MsdUNBQXVDLG1CQUFtQixtQkFBbUIsOEZBQThGLDRDQUE0Qyx1Q0FBdUMsb0NBQW9DLHlFQUF5RSwyRUFBMkUsaUVBQWlFLG9EQUFvRCxXQUFXLHlCQUF5Qix5QkFBeUIsNkJBQTZCLDZCQUE2QixxQkFBcUIsNkJBQTZCLG9CQUFvQixvQkFBb0IsYUFBYSxxQ0FBcUMsMERBQTBELDRDQUE0Qyw4Q0FBOEMsbUJBQW1CLDZCQUE2QiwwREFBMEQseUZBQXlGLDhDQUE4QyxvREFBb0QsV0FBVywrQkFBK0Isc0JBQXNCLDZCQUE2QiwrQkFBK0IsK0JBQStCLHFDQUFxQyx3Q0FBd0MsNkJBQTZCLDJCQUEyQixnREFBZ0QsNEJBQTRCLDZCQUE2QixtQ0FBbUMsNEJBQTRCLHNCQUFzQixrQ0FBa0MsNEJBQTRCLHVCQUF1Qiw4QkFBOEIsdUJBQXVCLDZCQUE2QixrQ0FBa0MsMkJBQTJCLDhCQUE4QixtQkFBbUIsNkJBQTZCLCtEQUErRCwrQ0FBK0MsMERBQTBELDRFQUE0RSw4QkFBOEIscUJBQXFCLHNCQUFzQixzQ0FBc0MsaUNBQWlDLDJDQUEyQywrQkFBK0IsOENBQThDLFdBQVcsOERBQThELGdEQUFnRCxrRUFBa0Usd0JBQXdCLE1BQU0sYUFBYSwwQ0FBMEMsbUVBQW1FLHVEQUF1RCw4SkFBOEosb0VBQW9FLHdCQUF3Qiw2Q0FBNkMsZ0NBQWdDLHNCQUFzQixtRkFBbUYsMENBQTBDLHNEQUFzRCx3REFBd0QseURBQXlELHlEQUF5RCx3RUFBd0UsbUJBQW1CLDhDQUE4QyxpREFBaUQsNEJBQTRCLG9GQUFvRixNQUFNLG1HQUFtRyxnRUFBZ0UsNEJBQTRCLDBLQUEwSyxzQkFBc0IsMkRBQTJELHFCQUFxQixzQkFBc0IsaURBQWlELHdFQUF3RSxzREFBc0QscUVBQXFFLDREQUE0RCw0QkFBNEIsa0NBQWtDLHdDQUF3Qyx1QkFBdUIscUJBQXFCLHFCQUFxQixpUEFBaVAsb1NBQW9TLG9CQUFvQiw0QkFBNEIscUJBQXFCLDhCQUE4Qiw2Q0FBNkMsMkJBQTJCLHVEQUF1RCx5Q0FBeUMsZ0JBQWdCLGlCQUFpQixtRUFBbUUseUNBQXlDLDJDQUEyQywyQ0FBMkMsbUZBQW1GLGdCQUFnQix1REFBdUQscUZBQXFGLGdEQUFnRCxvREFBb0QsV0FBVywrQkFBK0Isc0JBQXNCLDZCQUE2QiwrQkFBK0IsK0JBQStCLHFDQUFxQyx3Q0FBd0MsNkJBQTZCLDJCQUEyQixzQkFBc0Isa0NBQWtDLDRCQUE0Qix1QkFBdUIsOEJBQThCLDZCQUE2QixrQ0FBa0MsNEJBQTRCLDZCQUE2QixtQ0FBbUMsZ0RBQWdELDRCQUE0Qix1QkFBdUIsMkJBQTJCLDhCQUE4QixxQkFBcUIscUJBQXFCLCtEQUErRCwrQ0FBK0MsaVBBQWlQLG1SQUFtUiw4QkFBOEIscUJBQXFCLHNCQUFzQixzQ0FBc0MsaUNBQWlDLCtCQUErQiw4Q0FBOEMsV0FBVyw4REFBOEQsZ0RBQWdELGtFQUFrRSx3QkFBd0IsTUFBTSxhQUFhLDBDQUEwQyxtRUFBbUUsdURBQXVELDhKQUE4SixvRUFBb0Usd0JBQXdCLDZDQUE2QyxnQ0FBZ0Msc0JBQXNCLG1GQUFtRiwwQ0FBMEMsc0RBQXNELHdEQUF3RCx5REFBeUQseURBQXlELHdFQUF3RSxtQkFBbUIsOENBQThDLGlEQUFpRCw0QkFBNEIsb0ZBQW9GLE1BQU0sbUdBQW1HLGdFQUFnRSw0QkFBNEIsaUpBQWlKLHNCQUFzQiwyREFBMkQsNkJBQTZCLHFCQUFxQixpREFBaUQsc0RBQXNELHdFQUF3RSxxRkFBcUYsd0JBQXdCLDBEQUEwRCx1R0FBdUcsNEJBQTRCLGlDQUFpQyxrQ0FBa0Msd0NBQXdDLHFCQUFxQixxQkFBcUIsaVBBQWlQLHNSQUFzUixzQkFBc0IseUJBQXlCLHNDQUFzQyxzREFBc0Qsb0RBQW9ELGtCQUFrQixvQkFBb0IsNENBQTRDLDRCQUE0QixxQkFBcUIsMEJBQTBCLDJCQUEyQix1REFBdUQsbUNBQW1DLGdCQUFnQixpQkFBaUIsbUVBQW1FLHdDQUF3QywyQ0FBMkMsMkNBQTJDLHVFQUF1RSxnREFBZ0Qsb0RBQW9ELFdBQVcsK0JBQStCLHNCQUFzQiwrQkFBK0IsK0JBQStCLHFDQUFxQyx3Q0FBd0MsNkJBQTZCLDJCQUEyQixzQkFBc0Isa0NBQWtDLDRCQUE0Qix1QkFBdUIsOEJBQThCLDRCQUE0Qiw2QkFBNkIsbUNBQW1DLGdEQUFnRCw0QkFBNEIsdUJBQXVCLDRCQUE0Qiw2QkFBNkIsa0NBQWtDLDJCQUEyQiw4QkFBOEIscUJBQXFCLHFCQUFxQiwrREFBK0QsK0NBQStDLGlQQUFpUCxtUkFBbVIsOEJBQThCLHFCQUFxQixzQkFBc0Isc0NBQXNDLHNDQUFzQywrQkFBK0IsOENBQThDLFdBQVcsOERBQThELGdEQUFnRCxrRUFBa0Usd0JBQXdCLE1BQU0sYUFBYSwwQ0FBMEMsbUVBQW1FLHVEQUF1RCw4SkFBOEosb0VBQW9FLHdCQUF3QiwwQkFBMEIsZ0NBQWdDLHNCQUFzQixtRkFBbUYsMENBQTBDLHNEQUFzRCx3REFBd0QseURBQXlELHlEQUF5RCx3RUFBd0UsbUJBQW1CLDhDQUE4QyxpREFBaUQsNEJBQTRCLG9GQUFvRixNQUFNLG1HQUFtRyxnRUFBZ0UsNEJBQTRCLHNJQUFzSSxzQkFBc0IsMkRBQTJELDZCQUE2QixxQkFBcUIsaURBQWlELHNEQUFzRCx3RUFBd0UscUZBQXFGLDJCQUEyQixnQ0FBZ0MsaUVBQWlFLDJDQUEyQyx5QkFBeUIsNkJBQTZCLGlDQUFpQyx5Q0FBeUMsa0NBQWtDLDJCQUEyQiwwQkFBMEIsc0JBQXNCLGdDQUFnQywrQkFBK0IsZ0NBQWdDLG1DQUFtQyxhQUFhLHNEQUFzRCx1Q0FBdUMsdURBQXVELDJHQUEyRyx5R0FBeUcsa0ZBQWtGLGdJQUFnSSxNQUFNLDZCQUE2QiwwQkFBMEIsc0JBQXNCLDBCQUEwQiwwQkFBMEIsMkJBQTJCLDBCQUEwQixhQUFhLG9DQUFvQyxtREFBbUQsZ0NBQWdDLHdEQUF3RCwrQ0FBK0MsaUNBQWlDLDBDQUEwQyw4REFBOEQsZ0RBQWdELG9DQUFvQyxtQ0FBbUMsdUJBQXVCLGFBQWEsYUFBYSw0QkFBNEIsMEJBQTBCLHNCQUFzQiwwQkFBMEIsc0JBQXNCLGFBQWEsb0NBQW9DLG1EQUFtRCx3REFBd0QscUNBQXFDLDZDQUE2Qyw0QkFBNEIsa0NBQWtDLDJCQUEyQixhQUFhLDZDQUE2Qyw2REFBNkQsMEJBQTBCLHNCQUFzQiwwQkFBMEIsMkJBQTJCLGFBQWEsb0NBQW9DLG1EQUFtRCxnQ0FBZ0MseURBQXlELG9DQUFvQyw2QkFBNkIsd0JBQXdCLGtDQUFrQyxhQUFhLHVCQUF1QixvQkFBb0Isd0JBQXdCLGtDQUFrQyx1RkFBdUYsTUFBTSw0QkFBNEIsd0JBQXdCLGFBQWEsaUNBQWlDLElBQUksaUJBQWlCLGtPQUFrTyxRQUFRLDRGQUE0RixFQUFFLFlBQVksR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLG1CQUFtQixHQUFHLEVBQUUsR0FBRyxJQUFJLEdBQUcsc0NBQXNDLEVBQUUsUUFBUSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsTUFBTSxHQUFHLHlEQUF5RCwrREFBK0Qsb0RBQW9ELEVBQUUseUJBQXlCLEVBQUUsR0FBRyxjQUFjLEdBQUcsRUFBRSxHQUFHLElBQUksR0FBRyxZQUFZLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxtQkFBbUIsR0FBRyxFQUFFLEdBQUcsSUFBSSxHQUFHLGtEQUFrRCxFQUFFLFFBQVEsR0FBRyxNQUFNLEdBQUcsZUFBZSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsTUFBTSxHQUFHLHVDQUF1QyxFQUFFLFFBQVEsR0FBRyxlQUFlLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxJQUFJLGVBQWUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLE1BQU0sR0FBRyxvREFBb0QsRUFBRSx5QkFBeUIsRUFBRSxHQUFHLGNBQWMsR0FBRyxFQUFFLEdBQUcsSUFBSSxHQUFHLG1CQUFtQixHQUFHLEVBQUUsR0FBRyxJQUFJLEdBQUcsa0RBQWtELEVBQUUsUUFBUSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsTUFBTSxHQUFHLGVBQWUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLE1BQU0sR0FBRyx1Q0FBdUMsRUFBRSxRQUFRLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxlQUFlLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxJQUFJLGVBQWUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLE1BQU0sR0FBRyxZQUFZLHdDQUF3QyxTQUFTLGNBQWMsa01BQWtNLHdCQUF3QixlQUFlLHFEQUFxRCxZQUFZLGVBQWUsbURBQW1ELDBXQUEwVywyQkFBMkIsOENBQThDLHFWQUFxVix5Q0FBeUMsMkhBQTJILDJEQUEyRCxtTEFBbUwsVUFBVSxxRUFBcUUsd0JBQXdCLGlXQUFpVyxFQUFFLGVBQWUsV0FBVyxZQUFZLFdBQVcsS0FBSyx3QkFBd0Isd0JBQXdCLGlCQUFpQixTQUFTLFNBQVMseUJBQXlCLGFBQWEsK0JBQStCLDhPQUE4TywyQ0FBMkMseUJBQXlCLHNDQUFzQyxnQ0FBZ0MsR0FBRywwS0FBMEsseURBQXlELDBJQUEwSSxzQkFBc0IsR0FBRywrQkFBK0Isd0NBQXdDLHlEQUF5RCx3SUFBd0ksc0JBQXNCLEdBQUcsa0RBQWtELFdBQVcsNEJBQTRCLFlBQVkscUJBQXFCLDhFQUE4RSw2SEFBNkgsa0NBQWtDLEdBQUcsb0NBQW9DLFlBQVksV0FBVyxLQUFLLGFBQWEsYUFBYSw2Q0FBNkMsY0FBYyx5REFBeUQsc1FBQXNRLHFEQUFxRCwwQ0FBMEMsYUFBYSw4QkFBOEIsMkdBQTJHLGlKQUFpSix1RUFBdUUsa0VBQWtFLDBDQUEwQyxPQUFPLEVBQUUsUUFBUSxVQUFVLGlCQUFpQixNQUFNLHFCQUFxQixNQUFNLHVCQUF1Qix3QkFBd0IsMEJBQTBCLEVBQUUsMktBQTJLLG1CQUFtQiw4TEFBOEwsUUFBUSxtS0FBbUsscUJBQXFCLGtGQUFrRixpQkFBaUIsNkZBQTZGLEdBQUcsdURBQXVELGdDQUFnQyxpRUFBaUUsdUNBQXVDLHlCQUF5QiwrRUFBK0UsUUFBUSxrQ0FBa0MsUUFBUSxzSUFBc0ksZ0RBQWdELHdEQUF3RCxVQUFVLFdBQVcsaURBQWlELHFCQUFxQixtQ0FBbUMsVUFBVSxpQkFBaUIsb0JBQW9CLFFBQVEsa0RBQWtELHVCQUF1QixjQUFjLDhCQUE4QixRQUFRLGdUQUFnVCxlQUFlLGtIQUFrSCxrQkFBa0IsbURBQW1ELFVBQVUsV0FBVyxrQkFBa0IsbURBQW1ELGlCQUFpQixjQUFjLGlDQUFpQyxxQkFBcUIsUUFBUSxvSUFBb0ksaUJBQWlCLGtEQUFrRCx5RUFBeUUscUJBQXFCLG9CQUFvQixRQUFRLG1KQUFtSixrQ0FBa0MsMkJBQTJCLG1CQUFtQiw4QkFBOEIsUUFBUSw2T0FBNk8sb0JBQW9CLGlLQUFpSyx3QkFBd0IsNEtBQTRLLEdBQUcsaUJBQWlCLDRCQUE0QixxQkFBcUIsbUlBQW1JLHVCQUF1QixRQUFRLHVjQUF1YyxVQUFVLGVBQWUsZUFBZSxrQ0FBa0Msa0VBQWtFLHlDQUF5QyxvQkFBb0IsUUFBUSxvaEJBQW9oQixzQ0FBc0Msb0JBQW9CLDRDQUE0Qyw2R0FBNkcsRUFBRSw0RUFBNEUsa0NBQWtDLGdCQUFnQixpQ0FBaUMsMENBQTBDLG1HQUFtRyxpQkFBaUIsc0xBQXNMLFFBQVEsMlZBQTJWLFdBQVcsdUJBQXVCLE1BQU0sdUJBQXVCLG9QQUFvUCxnQ0FBZ0Msd2dCQUF3Z0IsZ0JBQWdCLGdDQUFnQyx1QkFBdUIsc1FBQXNRLHVCQUF1Qiw4REFBOEQsOEJBQThCLG9TQUFvUyxrQkFBa0IsNFNBQTRTLHdCQUF3QiwwRkFBMEYsMkJBQTJCLDRMQUE0TCxpQkFBaUIsOElBQThJLHdCQUF3QixnQ0FBZ0MsbUJBQW1CLG9IQUFvSCwwQkFBMEIsc0tBQXNLLHFCQUFxQixzT0FBc08sNEJBQTRCLGdLQUFnSyxnQkFBZ0Isd0tBQXdLLHdCQUF3QixrUEFBa1AsdUJBQXVCLGtTQUFrUyxtQkFBbUIsd2FBQXdhLGtCQUFrQixzaEJBQXNoQixzQkFBc0IsODNCQUE4M0IscUJBQXFCLGtnQ0FBa2dDLDZCQUE2QiwwbENBQTBsQyxzQkFBc0IsZ0dBQWdHLDZCQUE2Qix3cEJBQXdwQixtQkFBbUIsa1pBQWtaLHdCQUF3QixzRUFBc0UseUJBQXlCLDhKQUE4SixlQUFlLDRLQUE0SyxHQUFHLFNBQVMsbUJBQW1CLGVBQWUsYUFBYSxnUUFBZ1EsT0FBTyxpREFBaUQsY0FBYyx3QkFBd0IsNEZBQTRGLDhGQUE4RixVQUFVLDhFQUE4RSxVQUFVLDJIQUEySCxTQUFTLHFCQUFxQix5R0FBeUcsYUFBYSxrTUFBa00sT0FBTyxnREFBZ0QsY0FBYyxtRUFBbUUsU0FBUywwQ0FBMEMsWUFBWSxHQUFHLHdCQUF3Qiw2REFBNkQsc0JBQXNCLFlBQVkseUJBQXlCLEtBQUssOENBQThDLDJDQUEyQywrQkFBK0IsWUFBWSx5QkFBeUIsS0FBSyxrREFBa0QsaUhBQWlILFVBQVUsOEVBQThFLHFCQUFxQixlQUFlLE1BQU0sK0JBQStCLDBGQUEwRixzQkFBc0IsU0FBUyxlQUFlLHFGQUFxRixNQUFNLG9CQUFvQixRQUFRLGFBQWEsb0JBQW9CLGFBQWEseUJBQXlCLG9CQUFvQixhQUFhLHdCQUF3QixPQUFPLHFCQUFxQiwrSEFBK0gsb0JBQW9CLGFBQWEsU0FBUyxPQUFPLHVGQUF1RixvQkFBb0IsYUFBYSxTQUFTLE9BQU8seUZBQXlGLG9CQUFvQixhQUFhLHFCQUFxQixPQUFPLHFCQUFxQiwwSUFBMEksb0JBQW9CLGFBQWEsVUFBVSxPQUFPLHNGQUFzRixvQkFBb0IsYUFBYSxXQUFXLE9BQU8sd0ZBQXdGLG9CQUFvQixhQUFhLFFBQVEsb0NBQW9DLE9BQU8scUJBQXFCLHlJQUF5SSxvQkFBb0IsYUFBYSxnQkFBZ0IsOEJBQThCLE9BQU8scUJBQXFCLHdIQUF3SCxvQkFBb0IsYUFBYSxVQUFVLE9BQU8sd0NBQXdDLGdCQUFnQixvRkFBb0Ysb0JBQW9CLGFBQWEsYUFBYSxPQUFPLHFCQUFxQix1R0FBdUcsb0JBQW9CLGFBQWEsVUFBVSxPQUFPLHdDQUF3QyxnQkFBZ0IsZ0ZBQWdGLG9CQUFvQixhQUFhLG9CQUFvQixPQUFPLHNGQUFzRixvQkFBb0IsYUFBYSxVQUFVLE9BQU8sd0NBQXdDLGdCQUFnQixzRUFBc0Usb0JBQW9CLGFBQWEsZ0JBQWdCLHNCQUFzQixPQUFPLHFCQUFxQixzR0FBc0csb0JBQW9CLGFBQWEsd0JBQXdCLE9BQU8scUJBQXFCLCtIQUErSCxvQkFBb0IsYUFBYSx3QkFBd0IsT0FBTywwRkFBMEYsb0JBQW9CLGFBQWEsVUFBVSxPQUFPLHdDQUF3QyxnQkFBZ0IsOEVBQThFLG9CQUFvQixhQUFhLG9CQUFvQixPQUFPLHFGQUFxRixvQkFBb0IsYUFBYSxtQkFBbUIsT0FBTyxzRkFBc0Ysb0JBQW9CLGFBQWEsWUFBWSxPQUFPLHVGQUF1RixvQkFBb0IsYUFBYSx3QkFBd0IsT0FBTywwRkFBMEYsb0JBQW9CLGFBQWEsZ0JBQWdCLHdEQUF3RCxPQUFPLHFCQUFxQix5SUFBeUksb0JBQW9CLGFBQWEsWUFBWSxPQUFPLHdDQUF3QyxnQkFBZ0Isa0VBQWtFLG9CQUFvQixhQUFhLFlBQVksT0FBTyx3Q0FBd0MsZ0JBQWdCLG9FQUFvRSxvQkFBb0IsYUFBYSxZQUFZLE9BQU8sd0NBQXdDLGdCQUFnQiw2REFBNkQsb0JBQW9CLGFBQWEsWUFBWSxPQUFPLHdDQUF3QyxnQkFBZ0IsOERBQThELG9CQUFvQixhQUFhLFlBQVksT0FBTyxnQkFBZ0Isc0VBQXNFLG9CQUFvQixhQUFhLFlBQVksT0FBTyxNQUFNLHdDQUF3QyxnQkFBZ0Isb0pBQW9KLG9CQUFvQixhQUFhLFNBQVMsT0FBTyx3Q0FBd0MsZ0JBQWdCLG1FQUFtRSxvQkFBb0IsYUFBYSxVQUFVLE9BQU8sd0NBQXdDLGdCQUFnQixpRkFBaUYsb0JBQW9CLGFBQWEsVUFBVSxPQUFPLHdDQUF3QyxnQkFBZ0Isc0VBQXNFLG9CQUFvQixpQkFBaUIsdUNBQXVDLGFBQWEsYUFBYSxvQkFBb0IsV0FBVyxlQUFlLE9BQU8sd0NBQXdDLDhDQUE4QyxnQkFBZ0IsMEdBQTBHLG9CQUFvQixPQUFPLHdDQUF3Qyw4Q0FBOEMsZ0JBQWdCLDRHQUE0RyxvQkFBb0IsT0FBTyx3Q0FBd0MsOENBQThDLGdCQUFnQixvSEFBb0gsU0FBUyx1QkFBdUIsMENBQTBDLHNEQUFzRCxxRkFBcUYsaUVBQWlFLG1IQUFtSCxVQUFVLHFEQUFxRCwrQ0FBK0MsbUNBQW1DLDRCQUE0Qix3Q0FBd0MsU0FBUyxtQkFBbUIscURBQXFELDZNQUE2TSxTQUFTLGVBQWUsUUFBUSxzMkNBQXMyQyw2QkFBNkIsc0RBQXNELGlNQUFpTSxNQUFNLDhGQUE4RixpREFBaUQsa0RBQWtELGFBQWEsK3dCQUErd0IsV0FBVyx1MEJBQXUwQix1QkFBdUIsd0JBQXdCLDBCQUEwQiwwQkFBMEIsMEJBQTBCLHlDQUF5QyxrSEFBa0gsMkJBQTJCLDRCQUE0QixPQUFPLDBCQUEwQixFQUFFLGdCQUFnQixRQUFRLHNTQUFzUyxlQUFlLDJIQUEySCxnQkFBZ0Isb0tBQW9LLGtCQUFrQixrS0FBa0ssNENBQTRDLDZCQUE2QixnQkFBZ0IsMktBQTJLLG9CQUFvQixNQUFNLHNKQUFzSixxQkFBcUIsTUFBTSx3SkFBd0osWUFBWSxpQ0FBaUMsU0FBUyxtQkFBbUIsdUNBQXVDLHlFQUF5RSxjQUFjLFNBQVMseUJBQXlCLDhFQUE4RSxvQkFBb0IsZ0JBQWdCLGVBQWUsU0FBUyxtQkFBbUIsNkNBQTZDLE9BQU8sdUJBQXVCLDZEQUE2RCxZQUFZLFlBQVksV0FBVyxLQUFLLHlDQUF5QyxlQUFlLHlFQUF5RSxlQUFlLGNBQWMsdUdBQXVHLDBFQUEwRSxxQkFBcUIsb0ZBQW9GLGdGQUFnRix5S0FBeUssTUFBTSx3QkFBd0IsbURBQW1ELHdCQUF3QixRQUFRLDZCQUE2Qix5QkFBeUIsS0FBSyxnR0FBZ0cscUdBQXFHLHNDQUFzQyx1QkFBdUIsc0JBQXNCLFlBQVksSUFBSSxLQUFLLFlBQVkseUhBQXlILFNBQVMsS0FBSyw2RUFBNkUsa0JBQWtCLG1EQUFtRCwwUkFBMFIseUJBQXlCLGlFQUFpRSxvQ0FBb0MseUJBQXlCLE1BQU0sa0NBQWtDLFNBQVMsMERBQTBELHlCQUF5QiwwRUFBMEUsbUJBQW1CLGdCQUFnQixvQkFBb0IsaUJBQWlCLDJEQUEyRCxNQUFNLDRHQUE0RywwQkFBMEIsZ0JBQWdCLHlDQUF5QywwR0FBMEcsVUFBVSxZQUFZLFdBQVcsS0FBSyxrSEFBa0gsTUFBTSx3Q0FBd0Msd0xBQXdMLDZGQUE2RixzQ0FBc0MsMkJBQTJCLE1BQU0sc0RBQXNELDJMQUEyTCxZQUFZLGNBQWMsZ0JBQWdCLHdEQUF3RCx3QkFBd0IsR0FBRyx3QkFBd0IsTUFBTSxVQUFVLGlDQUFpQyxZQUFZLFdBQVcsS0FBSyxpQkFBaUIsOEJBQThCLE1BQU0sYUFBYSxpQkFBaUIsY0FBYyxvQ0FBb0MseUJBQXlCLGdEQUFnRCxnREFBZ0QsbUJBQW1CLHVFQUF1RSxxQ0FBcUMsdU1BQXVNLFNBQVMsME1BQTBNLGtCQUFrQixzQ0FBc0MsZUFBZSx3QkFBd0IsZ0VBQWdFLHVOQUF1TiwyQkFBMkIsME9BQTBPLE1BQU0sdUVBQXVFLHNIQUFzSCx1UUFBdVEsTUFBTSxrSUFBa0ksd0VBQXdFLHdIQUF3SCxNQUFNLG9JQUFvSSxTQUFTLHVJQUF1SSxvQkFBb0IsS0FBSyx5QkFBeUIseUJBQXlCLCtEQUErRCxHQUFHLGFBQWEsb0RBQW9ELEdBQUcsd0NBQXdDLGtCQUFrQixnQkFBZ0Isa1BBQWtQLHdCQUF3Qix1R0FBdUcsNkVBQTZFLGlDQUFpQyxrQkFBa0IsdU1BQXVNLHFCQUFxQiwrR0FBK0csYUFBYSxjQUFjLDJCQUEyQixvSkFBb0osdUJBQXVCLEVBQUUsOEdBQThHLHVNQUF1TSxtQkFBbUIseUJBQXlCLDJDQUEyQywrQ0FBK0Msc2FBQXNhLG1CQUFtQixRQUFRLGlDQUFpQyxvUkFBb1IsMEdBQTBHLG1EQUFtRCx1Q0FBdUMsa0NBQWtDLGlCQUFpQixrR0FBa0csdUJBQXVCLGdDQUFnQyxzQ0FBc0MsZ0RBQWdELHFDQUFxQyw4QkFBOEIsZUFBZSwwQ0FBMEMsMkJBQTJCLHlHQUF5RyxjQUFjLHlJQUF5SSwyQkFBMkIsa0JBQWtCLHFCQUFxQixtQ0FBbUMsdUJBQXVCLGVBQWUsMkhBQTJILHNJQUFzSSx3SUFBd0ksTUFBTSwrQkFBK0IscURBQXFELHFEQUFxRCx3REFBd0QsK0hBQStILDJCQUEyQixpTEFBaUwsa0JBQWtCLHNDQUFzQyxlQUFlLGtLQUFrSyxzSUFBc0ksdU5BQXVOLDBLQUEwSywyQkFBMkIsaUNBQWlDLGFBQWEsK0ZBQStGLHdJQUF3SSxpSUFBaUksb0VBQW9FLGtGQUFrRiwwQkFBMEIsUUFBUSwyTUFBMk0saUdBQWlHLHlCQUF5QixpQ0FBaUMsY0FBYyx5Q0FBeUMsMklBQTJJLHFCQUFxQixZQUFZLGVBQWUscUNBQXFDLG9DQUFvQyxlQUFlLCtDQUErQyxnQ0FBZ0MsWUFBWSxPQUFPLGlCQUFpQiwyQkFBMkIsU0FBUywwR0FBMEcsOElBQThJLHlCQUF5QixxREFBcUQsMEZBQTBGLDRIQUE0SCx5QkFBeUIsNENBQTRDLFlBQVksb0dBQW9HLDBDQUEwQyw2SEFBNkgsMEVBQTBFLGtCQUFrQixFQUFFLGlCQUFpQixRQUFRLGlCQUFpQiwrR0FBK0cscUJBQXFCLHFDQUFxQyxxQkFBcUIsc0NBQXNDLHlCQUF5Qix5QkFBeUIseUdBQXlHLFFBQVEsNkJBQTZCLG1CQUFtQixnTUFBZ00sZ0NBQWdDLHlLQUF5Syw2QkFBNkIsMENBQTBDLGNBQWMsaUJBQWlCLDJCQUEyQixvRkFBb0YsdVNBQXVTLE1BQU0sR0FBRyxFQUFFLEVBQUUsc1FBQXNRLG1CQUFtQix1SkFBdUosbUVBQW1FLGtCQUFrQixxRUFBcUUsc0VBQXNFLDBNQUEwTSx5R0FBeUcsU0FBUyxtQkFBbUIsd0RBQXdELFVBQVUsaUpBQWlKLFNBQVMsaUJBQWlCLDZEQUE2RCwwQkFBMEIsd0RBQXdELDRJQUE0SSxjQUFjLGdOQUFnTixRQUFRLGdDQUFnQyxpTUFBaU0saUJBQWlCLHVMQUF1TCxnQkFBZ0IsNE5BQTROLGlCQUFpQixxTEFBcUwsaUJBQWlCLHVJQUF1SSxpQkFBaUIsOEZBQThGLHdCQUF3Qiw4QkFBOEIscUJBQXFCLDhCQUE4QixlQUFlLDRCQUE0QixzREFBc0QsY0FBYyw0U0FBNFMsOEJBQThCLGtGQUFrRixtQ0FBbUMsNEJBQTRCLDZHQUE2Ryx3Q0FBd0MsNkJBQTZCLGtCQUFrQixpSUFBaUkseUNBQXlDLHFCQUFxQixvS0FBb0ssbUJBQW1CLCtFQUErRSwrQ0FBK0MsZUFBZSx5QkFBeUIsZ0NBQWdDLDBCQUEwQix3QkFBd0IsZUFBZSxzQkFBc0IsNkRBQTZELDJCQUEyQiwwSEFBMEgsUUFBUSwrRUFBK0UsV0FBVyxZQUFZLElBQUksbUJBQW1CLHVCQUF1QixtREFBbUQsbUNBQW1DLFNBQVMsZ0JBQWdCLElBQUkseUJBQXlCLHdCQUF3QixnQ0FBZ0MsWUFBWSx3RUFBd0UsK0RBQStELDRCQUE0Qix3REFBd0Qsd0VBQXdFLGlEQUFpRCw0QkFBNEIsK0NBQStDLFlBQVksb05BQW9OLHdEQUF3RCxLQUFLLE1BQU0sa0JBQWtCLGFBQWEsdUlBQXVJLDBCQUEwQixZQUFZLFdBQVcsd0NBQXdDLHdCQUF3QixNQUFNLG1MQUFtTCxrQkFBa0IsOEJBQThCLG1FQUFtRSxvQkFBb0IsdUVBQXVFLDhEQUE4RCxrRUFBa0Usb0RBQW9ELHVDQUF1QywyTUFBMk0sZ0pBQWdKLFlBQVksaUJBQWlCLGdGQUFnRixpQkFBaUIsOEpBQThKLCtHQUErRyw2T0FBNk8scUJBQXFCLHFCQUFxQiw2RUFBNkUsaUVBQWlFLHNEQUFzRCwyQkFBMkIscUJBQXFCLCtEQUErRCxzRUFBc0UsMENBQTBDLDJFQUEyRSxvQ0FBb0Msc0JBQXNCLFdBQVcsME1BQTBNLDJEQUEyRCxzREFBc0QsaUNBQWlDLG1CQUFtQixZQUFZLFdBQVcsa0JBQWtCLG9DQUFvQyxzQ0FBc0MsNEJBQTRCLCtIQUErSCxnQ0FBZ0MsbUJBQW1CLDZDQUE2QyxtQ0FBbUMsa0NBQWtDLDJCQUEyQixnRUFBZ0Usa0ZBQWtGLG9DQUFvQyxnUEFBZ1AsdUtBQXVLLCtJQUErSSwrQkFBK0IsRUFBRSxrQkFBa0Isc0NBQXNDLG1IQUFtSCx3R0FBd0csb0VBQW9FLDRDQUE0QywrTEFBK0wsZ0pBQWdKLCtCQUErQixtQkFBbUIsa0JBQWtCLG1DQUFtQyxzRUFBc0UsU0FBUyxrTEFBa0wseUlBQXlJLG9FQUFvRSxnQ0FBZ0MscUJBQXFCLDRIQUE0SCxrQ0FBa0MsdUNBQXVDLGlEQUFpRCxtSkFBbUosbURBQW1ELGtCQUFrQixzQ0FBc0MsdURBQXVELDZKQUE2SixNQUFNLHlKQUF5SiwyREFBMkQsK3JCQUErckIsK0NBQStDLE1BQU0sZ0NBQWdDLHVDQUF1QyxrS0FBa0ssMEVBQTBFLGlIQUFpSCxZQUFZLFdBQVcsS0FBSyw2Q0FBNkMsZUFBZSw0S0FBNEssNkdBQTZHLE1BQU0seUJBQXlCLHlCQUF5QixpREFBaUQsR0FBRyxhQUFhLHNDQUFzQyxHQUFHLHdDQUF3QyxrQkFBa0IsTUFBTSxrR0FBa0csU0FBUyw2RkFBNkYsVUFBVSxNQUFNLGlDQUFpQyw2Q0FBNkMsa0JBQWtCLHdCQUF3QixrQkFBa0IscUJBQXFCLDRHQUE0Ryx3Q0FBd0Msa0RBQWtELDhGQUE4RixrQkFBa0IsYUFBYSwyRUFBMkUsOEJBQThCLHVKQUF1SixtQkFBbUIsdUJBQXVCLEVBQUUsWUFBWSxXQUFXLEtBQUssYUFBYSxxQ0FBcUMsc0NBQXNDLGVBQWUsdUVBQXVFLE9BQU8sYUFBYSwyTEFBMkwsd0NBQXdDLHNEQUFzRCx5QkFBeUIsMkNBQTJDLGdDQUFnQyxnWUFBZ1ksT0FBTyxVQUFVLE1BQU0sOEJBQThCLHVDQUF1QyxnRUFBZ0UsbURBQW1ELGdTQUFnUyxTQUFTLGtCQUFrQixxQkFBcUIsbUNBQW1DLHVCQUF1QixlQUFlLDZMQUE2TCxvQkFBb0IsbUdBQW1HLDBDQUEwQyx1R0FBdUcsZ0hBQWdILHNGQUFzRixXQUFXLDBCQUEwQixnQkFBZ0Isa0NBQWtDLFVBQVUsc0JBQXNCLG9HQUFvRywrREFBK0QsaUJBQWlCLDRIQUE0SCx1SEFBdUgsOEZBQThGLGlMQUFpTCxVQUFVLE1BQU0sOEJBQThCLGdFQUFnRSw4QkFBOEIscU1BQXFNLHFCQUFxQixtRkFBbUYsb0JBQW9CLGdFQUFnRSx5RkFBeUYscUJBQXFCLFVBQVUsTUFBTSx3Q0FBd0MsOENBQThDLHdDQUF3QyxtRUFBbUUsa0tBQWtLLE1BQU0sbUNBQW1DLCtCQUErQixVQUFVLE1BQU0sbUNBQW1DLG1FQUFtRSwwSkFBMEosSUFBSSxrQkFBa0IscUJBQXFCLGdMQUFnTCx3Q0FBd0MsVUFBVSxNQUFNLGdDQUFnQyx1Q0FBdUMsNENBQTRDLG9CQUFvQix1SEFBdUgsaUZBQWlGLGtCQUFrQixpSUFBaUksNERBQTRELGdIQUFnSCxRQUFRLHdFQUF3RSxraUJBQWtpQiwwS0FBMEssNFFBQTRRLFVBQVUsTUFBTSxvQ0FBb0MsNEVBQTRFLGdCQUFnQix3RkFBd0YsZ0NBQWdDLGlGQUFpRiwyQkFBMkIsNExBQTRMLHVDQUF1QyxFQUFFLG9FQUFvRSxtQ0FBbUMsa0JBQWtCLHNGQUFzRixvQkFBb0IsMkVBQTJFLHFIQUFxSCxVQUFVLE1BQU0sOEJBQThCLHFDQUFxQywrQkFBK0Isb0JBQW9CLHlKQUF5SixzQ0FBc0Msb0dBQW9HLGdJQUFnSSxpRUFBaUUsaUxBQWlMLDhEQUE4RCxVQUFVLDhCQUE4Qix5QkFBeUIsa0ZBQWtGLE1BQU0sa0NBQWtDLGlDQUFpQywrR0FBK0csb0JBQW9CLG1CQUFtQixzQ0FBc0MsK0NBQStDLGtCQUFrQiw4QkFBOEIsa0NBQWtDLG9CQUFvQixnQkFBZ0IsNEJBQTRCLHdHQUF3RyxjQUFjLGdCQUFnQiwwQkFBMEIsZ0hBQWdILDBJQUEwSSx5QkFBeUIsMlBBQTJQLGVBQWUsd0JBQXdCLGtJQUFrSSx5QkFBeUIsMFBBQTBQLFVBQVUsOERBQThELFlBQVksTUFBTSwyQ0FBMkMsaUJBQWlCLHdDQUF3QyxTQUFTLGlCQUFpQiw2QkFBNkIsc0NBQXNDLCtIQUErSCxrQ0FBa0MsZ0NBQWdDLGdFQUFnRSxzQkFBc0IsdUNBQXVDLHFFQUFxRSxvQkFBb0IsOENBQThDLGdEQUFnRCxtR0FBbUcsUUFBUSxtQkFBbUIsR0FBRyxvQkFBb0IsU0FBUyxpQkFBaUIsa0RBQWtELGdEQUFnRCxvQkFBb0Isc0RBQXNELHlCQUF5QixZQUFZLGlEQUFpRCxZQUFZLFdBQVcsOEVBQThFLG9DQUFvQyxhQUFhLDZEQUE2RCxhQUFhLDZEQUE2RCxjQUFjLDBVQUEwVSxTQUFTLFlBQVksa0JBQWtCLEtBQUssb0JBQW9CLFFBQVEsWUFBWSxXQUFXLHlCQUF5QixrQkFBa0Isc0JBQXNCLGNBQWMsWUFBWSxJQUFJLEtBQUssMkNBQTJDLFlBQVksa0JBQWtCLEtBQUssbUNBQW1DLGlDQUFpQywyQ0FBMkMsVUFBVSxTQUFTLDZCQUE2QixnS0FBZ0ssbURBQW1ELG1CQUFtQixzU0FBc1MsZUFBZSxvRkFBb0Ysb0JBQW9CLFVBQVUsMEZBQTBGLFFBQVEseURBQXlELFNBQVMsUUFBUSxrRUFBa0UsbUJBQW1CLFNBQVMsdUJBQXVCLHlYQUF5WCwrQkFBK0Isd0JBQXdCLG9DQUFvQyxRQUFRLGlHQUFpRyx1QkFBdUIsU0FBUywwWUFBMFksY0FBYyxxQkFBcUIsZUFBZSxzRUFBc0UsY0FBYyxxQkFBcUIsZUFBZSxzRUFBc0UsZUFBZSxzQkFBc0IsZ0JBQWdCLDBFQUEwRSxlQUFlLHNCQUFzQixnQkFBZ0IsMEVBQTBFLHdCQUF3QiwrQkFBK0IseUJBQXlCLDREQUE0RCxnQkFBZ0IsZ0NBQWdDLG1CQUFtQixnREFBZ0QsV0FBVyx1Q0FBdUMsY0FBYywrQkFBK0IsZUFBZSxzQ0FBc0Msc0dBQXNHLGlCQUFpQiwwREFBMEQsbUJBQW1CLDREQUE0RCx1REFBdUQsdURBQXVELFlBQVksK0JBQStCLGFBQWEsd0RBQXdELDJFQUEyRSxVQUFVLDZCQUE2QixXQUFXLGtIQUFrSCxXQUFXLGtCQUFrQixZQUFZLHdEQUF3RCxnS0FBZ0ssYUFBYSxvQkFBb0IsY0FBYyxpSUFBaUksZ0JBQWdCLHVCQUF1QixpQkFBaUIsaUZBQWlGLGNBQWMsaUNBQWlDLGVBQWUsMkhBQTJILGtCQUFrQiwwREFBMEQsa0JBQWtCLGtDQUFrQywwQkFBMEIsZ0dBQWdHLHFCQUFxQixnR0FBZ0cscUJBQXFCLGtDQUFrQyx3QkFBd0IsNEJBQTRCLG9SQUFvUixjQUFjLE9BQU8sa0NBQWtDLFNBQVMsaUJBQWlCLFFBQVEsZ0NBQWdDLFVBQVUsNkNBQTZDLCtDQUErQyx1TkFBdU4sbUJBQW1CLDJEQUEyRCw4RUFBOEUsMkVBQTJFLDBDQUEwQyx1Q0FBdUMsS0FBSywrQkFBK0IsaUJBQWlCLFdBQVcsRUFBRSw0QkFBNEIscUJBQXFCLE9BQU8sNkJBQTZCLGtCQUFrQixTQUFTLHNHQUFzRywrQ0FBK0MsbURBQW1ELFFBQVEsa0lBQWtJLEdBQUcsaUJBQWlCLElBQUksS0FBSyw4Q0FBOEMseUJBQXlCLGNBQWMsb0xBQW9MLHVEQUF1RCxRQUFRLGlEQUFpRCxJQUFJLHFFQUFxRSxZQUFZLG1HQUFtRyxpQkFBaUIsd0JBQXdCLGFBQWEscUJBQXFCLGFBQWEsNEJBQTRCLFdBQVcsa0NBQWtDLGdFQUFnRSxhQUFhLGlFQUFpRSxZQUFZLGlDQUFpQyxvQkFBb0IsUUFBUSxnSkFBZ0osbUJBQW1CLHVMQUF1TCw4QkFBOEIsb0hBQW9ILDhDQUE4Qyx3QkFBd0IsNklBQTZJLGtHQUFrRyxtQkFBbUIsMktBQTJLLG1CQUFtQiwwREFBMEQsc0JBQXNCLHlCQUF5QixzQkFBc0IsdUJBQXVCLHFCQUFxQixNQUFNLDZCQUE2QixvQkFBb0Isc0NBQXNDLG9FQUFvRSw4RUFBOEUsNEZBQTRGLDBDQUEwQyxvREFBb0QsZ0RBQWdELFlBQVksb0RBQW9ELHlOQUF5TixlQUFlLDRLQUE0SyxhQUFhLHVFQUF1RSxnQkFBZ0IsNEpBQTRKLHVCQUF1QixtSEFBbUgseURBQXlELDJCQUEyQixtRUFBbUUsb0JBQW9CLG9DQUFvQyxxSEFBcUgsc0JBQXNCLHFDQUFxQyxvQkFBb0Isb0NBQW9DLDZEQUE2RCxvQkFBb0IsbUNBQW1DLG9CQUFvQixxQ0FBcUMsU0FBUyxvQ0FBb0Msb0JBQW9CLHVDQUF1QyxrQkFBa0IsVUFBVSw2Q0FBNkMsNEJBQTRCLE1BQU0sUUFBUSxXQUFXLGtCQUFrQixzQkFBc0IsZ0RBQWdELG9GQUFvRixNQUFNLFFBQVEsb0JBQW9CLFlBQVksSUFBSSxRQUFRLDRCQUE0QixNQUFNLHlDQUF5QyxxQ0FBcUMsWUFBWSx1Q0FBdUMsa0JBQWtCLFlBQVksK0JBQStCLE1BQU0sZ0JBQWdCLFFBQVEsaURBQWlELFlBQVksK0JBQStCLDJCQUEyQix5Q0FBeUMsOEJBQThCLFlBQVksWUFBWSxTQUFTLGFBQWEsc0VBQXNFLHNCQUFzQiwwQkFBMEIsZ0JBQWdCLDRDQUE0QyxvRUFBb0UsZ0JBQWdCLHVCQUF1Qix3REFBd0QsNEhBQTRILGlDQUFpQyxrTkFBa04sb2VBQW9lLG12Q0FBbXZDLGlLQUFpSywwS0FBMEssaURBQWlELCtCQUErQiwwQkFBMEIsc0JBQXNCLHFDQUFxQyx5RkFBeUYsaUVBQWlFLGlCQUFpQiwrREFBK0QsMENBQTBDLDBCQUEwQiw4QkFBOEIsaUNBQWlDLDRCQUE0Qix5RkFBeUYsMkVBQTJFLHlCQUF5QixpRkFBaUYsMkRBQTJELGlCQUFpQix5QkFBeUIsYUFBYSxrREFBa0QsMENBQTBDLFNBQVMsZUFBZSwwQkFBMEIsNkNBQTZDLG1CQUFtQixNQUFNLHdEQUF3RCw4QkFBOEIsNEJBQTRCLG9CQUFvQix5QkFBeUIsK0JBQStCLHdDQUF3QyxrSEFBa0gseUJBQXlCLDJEQUEyRCxLQUFLLFVBQVUsa0NBQWtDLHFFQUFxRSwwREFBMEQsdUJBQXVCLCtCQUErQix1QkFBdUIsb0JBQW9CLFFBQVEsaUVBQWlFLGVBQWUsR0FBRyxFQUFFLEdBQUcseUNBQXlDLDZEQUE2RCxnREFBZ0QsZ0ZBQWdGLCtGQUErRixTQUFTLHNIQUFzSCxTQUFTLG1MQUFtTCxpQkFBaUIsa1BBQWtQLFNBQVMsWUFBWSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsa0RBQWtELGNBQWMsbUJBQW1CLHVCQUF1QixTQUFTLDBEQUEwRCx3QkFBd0Isc0JBQXNCLEVBQUUsR0FBRyxFQUFFLEtBQUssa0JBQWtCLG9CQUFvQixFQUFFLEdBQUcsRUFBRSxPQUFPLFlBQVksRUFBRSxXQUFXLEVBQUUsR0FBRyxVQUFVLG1DQUFtQyxTQUFTLGdDQUFnQyxhQUFhLDhCQUE4QixhQUFhLDhCQUE4QixhQUFhLDZCQUE2QixLQUFLLFNBQVMsZUFBZSwwQkFBMEIsUUFBUSx3QkFBd0IsVUFBVSxxREFBcUQsd0JBQXdCLEdBQUcsc0JBQXNCLHNDQUFzQyxLQUFLLDRCQUE0QixZQUFZLGNBQWMsa0VBQWtFLFNBQVMsNEVBQTRFLFVBQVUsV0FBVyxrTkFBa04sZ0dBQWdHLGdCQUFnQiwrQkFBK0IsU0FBUyxHQUFHLHVGQUF1RixXQUFXLHdCQUF3QixrREFBa0QsY0FBYywyQkFBMkIsdUVBQXVFLFlBQVkseUJBQXlCLG9EQUFvRCxzQkFBc0Isc0RBQXNELHlEQUF5RCwyQkFBMkIsZUFBZSxHQUFHLGlCQUFpQixpRkFBaUYsbUJBQW1CLE1BQU0sc0NBQXNDLGdEQUFnRCxRQUFRLCtDQUErQyxxQkFBcUIsaUJBQWlCLDJCQUEyQix1QkFBdUIsOEJBQThCLHNCQUFzQixFQUFFLHFEQUFxRCxhQUFhLGlDQUFpQywrQ0FBK0MscUJBQXFCLGlCQUFpQiwyQkFBMkIsdUJBQXVCLDhCQUE4QixtQkFBbUIsbUxBQW1MLFNBQVMsaUVBQWlFLDhCQUE4QixxQkFBcUIsaUJBQWlCLDJCQUEyQix1QkFBdUIsOEJBQThCLG1CQUFtQixTQUFTLGdCQUFnQiw4QkFBOEIsU0FBUyxpQkFBaUIsbURBQW1ELFFBQVEsMkJBQTJCLFNBQVMseURBQXlELGVBQWUsOEVBQThFLFdBQVcsNENBQTRDLFdBQVcsa0hBQWtILFlBQVkseURBQXlELGFBQWEsNENBQTRDLFlBQVksNENBQTRDLGNBQWMseURBQXlELGFBQWEsNENBQTRDLFlBQVksNENBQTRDLGVBQWUsNENBQTRDLG9CQUFvQixrREFBa0QsWUFBWSxVQUFVLFdBQVcsVUFBVSxVQUFVLFlBQVksU0FBUyxlQUFlLGFBQWEsUUFBUSxvRkFBb0YsYUFBYSw0Q0FBNEMsWUFBWSxzREFBc0QsVUFBVSwwSkFBMEosZUFBZSwwS0FBMEssWUFBWSxVQUFVLFdBQVcsVUFBVSxVQUFVLFlBQVksU0FBUyxlQUFlLGFBQWEsZ0JBQWdCLDREQUE0RCxhQUFhLFFBQVEsNkRBQTZELFdBQVcsMkJBQTJCLFlBQVksNEJBQTRCLGNBQWMsOEJBQThCLGFBQWEsdUVBQXVFLFNBQVMsaUJBQWlCLDBJQUEwSSxZQUFZLHVCQUF1QixXQUFXLHNCQUFzQixTQUFTLHNDQUFzQyxVQUFVLHNDQUFzQyxlQUFlLDhHQUE4RyxxQkFBcUIsd0JBQXdCLFVBQVUsMkZBQTJGLHVCQUF1QixvTEFBb0wsc0ZBQXNGLHNDQUFzQyxFQUFFLEtBQUssRUFBRSxzRUFBc0UsbUJBQW1CLHdCQUF3Qix1QkFBdUIsMkJBQTJCLG1HQUFtRyxnQkFBZ0IsSUFBSSxnRUFBZ0UsVUFBVSxHQUFHLG9DQUFvQyxXQUFXLGlGQUFpRixRQUFRLG9MQUFvTCxnQkFBZ0IsaUNBQWlDLGdCQUFnQixJQUFJLGlCQUFpQixtR0FBbUcsU0FBUyxXQUFXLFNBQVMsR0FBRyxXQUFXLFlBQVksV0FBVyw0QkFBNEIsU0FBUyxTQUFTLGVBQWUsMkNBQTJDLFFBQVEsZ0ZBQWdGLGtCQUFrQix5TEFBeUwscUJBQXFCLDJCQUEyQix1QkFBdUIsNEJBQTRCLGlCQUFpQix1Q0FBdUMsZ0JBQWdCLDZCQUE2QixhQUFhLHNEQUFzRCxnQkFBZ0IscUZBQXFGLHFDQUFxQyw2QkFBNkIsU0FBUyxlQUFlLDhEQUE4RCxRQUFRLDJFQUEyRSxrQkFBa0Isa0NBQWtDLGlCQUFpQixpQ0FBaUMsZ0JBQWdCLHVDQUF1QyxNQUFNLCtFQUErRSw4SEFBOEgsU0FBUyxlQUFlLHdDQUF3Qyx1QkFBdUIsd0JBQXdCLHVCQUF1QixnQkFBZ0IsUUFBUSw0REFBNEQsa0JBQWtCLGdFQUFnRSxpQkFBaUIsOERBQThELGdCQUFnQixnRkFBZ0YsK0VBQStFLDZCQUE2QixpREFBaUQsRUFBRSxnQkFBZ0IsRUFBRSwwRUFBMEUsNkJBQTZCLGlEQUFpRCxFQUFFLGdCQUFnQixFQUFFLFNBQVMsY0FBYyxjQUFjLFNBQVMsa0JBQWtCLFVBQVUsK0JBQStCLFlBQVkscUJBQXFCLFdBQVcscUJBQXFCLFNBQVMsZUFBZSxtTkFBbU4sU0FBUyx5RkFBeUYsWUFBWSxpQ0FBaUMsK0VBQStFLGVBQWUsa05BQWtOLGNBQWMsNEJBQTRCLHdCQUF3QixhQUFhLDRGQUE0Rix3QkFBd0IsOEdBQThHLFdBQVcsOEhBQThILFNBQVMsa0JBQWtCLFVBQVUsK0JBQStCLFlBQVkscUJBQXFCLFdBQVcsb0JBQW9CLG9CQUFvQiw2QkFBNkIsVUFBVSxTQUFTLFNBQVMsZUFBZSx3Q0FBd0MsYUFBYSx5QkFBeUIscUJBQXFCLFdBQVcsMEJBQTBCLHFCQUFxQiw2QkFBNkIsb0JBQW9CLHNCQUFzQixjQUFjLDZDQUE2QyxzQkFBc0IsbUJBQW1CLDZDQUE2QyxTQUFTLGNBQWMseUJBQXlCLHFCQUFxQixrQ0FBa0MscUJBQXFCLHdEQUF3RCxhQUFhLGdEQUFnRCxXQUFXLHlCQUF5QixxQkFBcUIsaUNBQWlDLG9CQUFvQiw0REFBNEQsbUJBQW1CLDZEQUE2RCxhQUFhLDJGQUEyRixzQkFBc0IsTUFBTSwyREFBMkQsSUFBSSxnQkFBZ0IsMkVBQTJFLEVBQUUsZUFBZSwrQkFBK0IseUJBQXlCLDhDQUE4QyxFQUFFLE1BQU0sMERBQTBELElBQUksZ0JBQWdCLDJFQUEyRSxFQUFFLGVBQWUsK0JBQStCLHVCQUF1Qiw4Q0FBOEMsR0FBRyxTQUFTLGlCQUFpQixtRUFBbUUsUUFBUSxnQ0FBZ0MseUJBQXlCLHNCQUFzQix5REFBeUQsa0JBQWtCLHVDQUF1QyxpQkFBaUIsaUJBQWlCLGdHQUFnRyxvRUFBb0UsZ0JBQWdCLCtGQUErRixjQUFjLGNBQWMsMkJBQTJCLDhCQUE4Qiw4Q0FBOEMsUUFBUSxrQkFBa0IsZ0NBQWdDLDRDQUE0QywrREFBK0QsaUJBQWlCLHNFQUFzRSw0QkFBNEIsU0FBUyxrQkFBa0IsVUFBVSwrQkFBK0IsWUFBWSxxQkFBcUIsV0FBVyxxQkFBcUIsU0FBUyxjQUFjLGNBQWMsUUFBUSw4Q0FBOEMsa0JBQWtCLHVIQUF1SCxpQkFBaUIsaUNBQWlDLG1CQUFtQix5REFBeUQsaUJBQWlCLGdEQUFnRCw2QkFBNkIsZ0JBQWdCLGlDQUFpQyx5REFBeUQsc0RBQXNELGNBQWMsY0FBYyxVQUFVLDhEQUE4RCxVQUFVLCtCQUErQixZQUFZLHVCQUF1QixXQUFXLHVCQUF1QixtQkFBbUIsWUFBWSxXQUFXLHVDQUF1QyxpQkFBaUIsOEJBQThCLG9CQUFvQixRQUFRLGdFQUFnRSxVQUFVLG9EQUFvRCxXQUFXLHVCQUF1QiwrSEFBK0gsK0NBQStDLGlCQUFpQixrQ0FBa0Msb0JBQW9CLFFBQVEscUZBQXFGLFVBQVUsaUZBQWlGLGFBQWEscUJBQXFCLDJHQUEyRywrQ0FBK0MscUJBQXFCLHNEQUFzRCxxRUFBcUUsc0JBQXNCLGVBQWUsbUNBQW1DLG9CQUFvQixlQUFlLCtDQUErQyxRQUFRLGlGQUFpRixrQkFBa0IsMERBQTBELFVBQVUseURBQXlELGFBQWEsK0VBQStFLHNFQUFzRSxrSEFBa0gsMkJBQTJCLFNBQVMsK0JBQStCLDJDQUEyQyxnQ0FBZ0MsaUJBQWlCLDZGQUE2RixxQkFBcUIsd0JBQXdCLFVBQVUseUNBQXlDLFNBQVMsZUFBZSxtQkFBbUIsV0FBVywrR0FBK0csUUFBUSxpQkFBaUIsV0FBVyx5Q0FBeUMsd0JBQXdCLGtCQUFrQix1Q0FBdUMsTUFBTSxnQ0FBZ0MsTUFBTSxrREFBa0QsTUFBTSxnREFBZ0QsTUFBTSxpREFBaUQsTUFBTSxpREFBaUQsTUFBTSxlQUFlLDBDQUEwQyxvQkFBb0IsaUJBQWlCLFVBQVUscU9BQXFPLEVBQUUsZ0JBQWdCLEtBQUssU0FBUyxrQkFBa0IsVUFBVSwrQkFBK0IsWUFBWSxxQkFBcUIsV0FBVyxvQkFBb0Isa0JBQWtCLDJCQUEyQixpQkFBaUIsNEJBQTRCLGVBQWUsZUFBZSx3QkFBd0IsU0FBUyxpQkFBaUIsb0JBQW9CLDhFQUE4RSw2SUFBNkksZUFBZSx5QkFBeUIsb0JBQW9CLHVCQUF1QixZQUFZLHVCQUF1QixXQUFXLG9EQUFvRCxZQUFZLHVCQUF1QixVQUFVLGtGQUFrRixVQUFVLHNDQUFzQyxzQkFBc0IsOEdBQThHLFNBQVMsNEJBQTRCLDZHQUE2RyxtRUFBbUUsa0RBQWtELDZjQUE2YyxVQUFVLHVCQUF1Qiw2S0FBNkssdURBQXVELHFRQUFxUSxjQUFjLHlCQUF5Qiw4Q0FBOEMsMkJBQTJCLG9CQUFvQixpR0FBaUcsK0NBQStDLDhCQUE4QixnRkFBZ0YsZ0xBQWdMLG1HQUFtRyxXQUFXLHlDQUF5QyxrQ0FBa0MsaUNBQWlDLGdFQUFnRSxjQUFjLGdGQUFnRixnR0FBZ0csU0FBUyxpSEFBaUgsb0JBQW9CLFdBQVcsbUJBQW1CLHlJQUF5SSxtQkFBbUIsdUJBQXVCLGtDQUFrQyxHQUFHLFFBQVEsK0lBQStJLFNBQVMsaUJBQWlCLG1DQUFtQyxTQUFTLGlEQUFpRCxVQUFVLG1EQUFtRCxZQUFZLDhEQUE4RCxXQUFXLDZEQUE2RCxTQUFTLGVBQWUsaUNBQWlDLFFBQVEsaUJBQWlCLGNBQWMsMkJBQTJCLG9CQUFvQixVQUFVLCtFQUErRSxFQUFFLGdCQUFnQixLQUFLLFNBQVMsa0JBQWtCLFVBQVUsK0JBQStCLFlBQVkscUJBQXFCLFdBQVcscUJBQXFCLFNBQVMsY0FBYyxrQkFBa0IsdUJBQXVCLGdCQUFnQixRQUFRLDhIQUE4SCxrQkFBa0IsdUNBQXVDLHlFQUF5RSxxRkFBcUYsa0NBQWtDLGlCQUFpQixrQkFBa0IscUJBQXFCLDZDQUE2QyxzQ0FBc0MsOERBQThELGtCQUFrQixpQ0FBaUMsZ0JBQWdCLDhEQUE4RCxNQUFNLGtDQUFrQyxrREFBa0QsY0FBYyxjQUFjLFNBQVMsa0JBQWtCLFVBQVUsK0JBQStCLFlBQVkscUJBQXFCLFdBQVcscUJBQXFCLFNBQVMsbUJBQW1CLDhDQUE4QyxVQUFVLDBCQUEwQixzR0FBc0csVUFBVSwwR0FBMEcsWUFBWSw4REFBOEQsV0FBVyw2REFBNkQsU0FBUyxtQkFBbUIsZ0ZBQWdGLFNBQVMsNkVBQTZFLFVBQVUsd0RBQXdELFlBQVksNkZBQTZGLFdBQVcsa0VBQWtFLFNBQVMscUJBQXFCLGlIQUFpSCxVQUFVLGlLQUFpSyxVQUFVLDZJQUE2SSxZQUFZLDJIQUEySCxXQUFXLDhGQUE4RixrQkFBa0IsdURBQXVELGlCQUFpQixvRkFBb0YsU0FBUyxpQkFBaUIsMEhBQTBILFdBQVcsVUFBVSxTQUFTLFdBQVcsMEJBQTBCLHVDQUF1Qyw2SEFBNkgsMkVBQTJFLGtHQUFrRyw0R0FBNEcsd0ZBQXdGLHNDQUFzQywySUFBMkksYUFBYSx3SkFBd0osU0FBUyxrQ0FBa0MsVUFBVSxvQ0FBb0MsWUFBWSxxQkFBcUIsY0FBYywwQkFBMEIsMEJBQTBCLHNFQUFzRSw4QkFBOEIscUVBQXFFLHFEQUFxRCxVQUFVLDhDQUE4QyxzQkFBc0IsZUFBZSwrRUFBK0UsU0FBUyxpQkFBaUIsMkJBQTJCLHNCQUFzQixPQUFPLFVBQVUsMEJBQTBCLDZDQUE2Qyx3QkFBd0IsMkNBQTJDLG9CQUFvQixLQUFLLEtBQUssMkhBQTJILFVBQVUsa0NBQWtDLG1CQUFtQiwyQkFBMkIsTUFBTSwrTEFBK0wsV0FBVywyREFBMkQsb01BQW9NLE1BQU0sa0JBQWtCLEdBQUcsNkNBQTZDLEdBQUcscUNBQXFDLDRGQUE0Rix5R0FBeUcsMEJBQTBCLDZCQUE2QixpQkFBaUIsa0NBQWtDLFdBQVcsa0JBQWtCLFdBQVcsMklBQTJJLFdBQVcsa0lBQWtJLFdBQVcsaUNBQWlDLFdBQVcsbURBQW1ELG1IQUFtSCxVQUFVLHNIQUFzSCx1QkFBdUIsMkNBQTJDLGtDQUFrQyw4QkFBOEIsNERBQTRELDhEQUE4RCxxRUFBcUUsOEJBQThCLDJJQUEySSxlQUFlLDJCQUEyQiwrQkFBK0IseUZBQXlGLHNCQUFzQixrS0FBa0ssV0FBVywwQkFBMEIsSUFBSSxnQkFBZ0Isc0RBQXNELEVBQUUsZUFBZSwrQkFBK0IsMkJBQTJCLGlFQUFpRSxFQUFFLG1CQUFtQiwwSkFBMEosd0JBQXdCLHdOQUF3TixnRUFBZ0Usc0dBQXNHLDZCQUE2QixpSEFBaUgsWUFBWSxxQkFBcUIsa0NBQWtDLDJCQUEyQixRQUFRLDBCQUEwQixVQUFVLFVBQVUsNEJBQTRCLHlDQUF5QyxHQUFHLHVCQUF1QixXQUFXLFVBQVUsVUFBVSw0Q0FBNEMsVUFBVSxZQUFZLHVFQUF1RSxhQUFhLHVDQUF1QyxXQUFXLDZEQUE2RCx3QkFBd0IsMERBQTBELFVBQVUsa0JBQWtCLFdBQVcsd0RBQXdELFNBQVMsOEJBQThCLGFBQWEsU0FBUyxTQUFTLGdEQUFnRCwySUFBMkksZ0JBQWdCLFVBQVUsS0FBSyxNQUFNLG9iQUFvYixrREFBa0QsMkJBQTJCLDJEQUEyRCxzRUFBc0UsSUFBSSwwRUFBMEUsR0FBRywyREFBMkQsc0NBQXNDLDhaQUE4WixtQkFBbUIsZ0RBQWdELGtCQUFrQixNQUFNLGdCQUFnQixNQUFNLGlDQUFpQyxFQUFFLDJDQUEyQyxvREFBb0QseUNBQXlDLDJDQUEyQyxrQkFBa0IsTUFBTSxnQkFBZ0IsTUFBTSxzQkFBc0IsV0FBVyxNQUFNLHVDQUF1QyxNQUFNLDhCQUE4QiwyQkFBMkIsbUZBQW1GLEVBQUUsVUFBVSx5Q0FBeUMsZ0RBQWdELDZCQUE2Qix1REFBdUQsMkNBQTJDLDBFQUEwRSxTQUFTLHdCQUF3QiwwSEFBMEgsNEVBQTRFLGdCQUFnQixvSkFBb0osZ0JBQWdCLDZCQUE2QixnQkFBZ0IsNEJBQTRCLGdCQUFnQixHQUFHLElBQUksZ0JBQWdCLHNFQUFzRSw0REFBNEQsWUFBWSx5QkFBeUIsR0FBRyxzQkFBc0IsK0RBQStELHFCQUFxQixpQkFBaUIsdUNBQXVDLHlFQUF5RSx5SkFBeUosMkdBQTJHLG1DQUFtQyxJQUFJLFlBQVksb0VBQW9FLGVBQWUsb0JBQW9CLFNBQVMsSUFBSSxhQUFhLHVFQUF1RSxTQUFTLE9BQU8sYUFBYSx3QkFBd0IsU0FBUyxPQUFPLFVBQVUsMkJBQTJCLGFBQWEsb0JBQW9CLE9BQU8sU0FBUyxjQUFjLHdCQUF3QixPQUFPLE9BQU8sWUFBWSw4Q0FBOEMsYUFBYSw4Q0FBOEMsYUFBYSw4QkFBOEIsZ0JBQWdCLG9CQUFvQixVQUFVLFNBQVMsYUFBYSw4QkFBOEIsZ0JBQWdCLG9CQUFvQixVQUFVLFNBQVMsZ0JBQWdCLHdCQUF3QixVQUFVLE9BQU8sZ0JBQWdCLDRCQUE0QixhQUFhLFlBQVkscUJBQXFCLHdCQUF3QiwrQkFBK0IsWUFBWSxpQkFBaUIsK0VBQStFLFdBQVcsNEJBQTRCLGNBQWMsb0JBQW9CLFFBQVEsU0FBUyxxQkFBcUIsb0NBQW9DLHdCQUF3QiwyRUFBMkUsaUNBQWlDLFNBQVMsK0JBQStCLDJCQUEyQixzREFBc0QsY0FBYyxrQkFBa0IsV0FBVyxnQ0FBZ0MsMkJBQTJCLHFmQUFxZiwyR0FBMkcsZ09BQWdPLFFBQVEsNkRBQTZELGlCQUFpQix3REFBd0QsZ0NBQWdDLDBKQUEwSixvQkFBb0IscUZBQXFGLFlBQVksWUFBWSxzQ0FBc0MsbUJBQW1CLHlyQkFBeXJCLHdDQUF3QyxvR0FBb0csaUZBQWlGLG1KQUFtSixpQ0FBaUMsd0JBQXdCLDhDQUE4QyxZQUFZLE1BQU0sc0NBQXNDLHNDQUFzQyxvRUFBb0UsNE5BQTROLDJCQUEyQiw0QkFBNEIsZ0JBQWdCLDhFQUE4RSwyQkFBMkIsOERBQThELFFBQVEseURBQXlELFNBQVMsMkZBQTJGLDBRQUEwUSxrU0FBa1MsTUFBTSw2SEFBNkgsd0RBQXdELHdEQUF3RCxPQUFPLGlGQUFpRixVQUFVLHFCQUFxQixFQUFFLDhQQUE4UCxxQkFBcUIsd0xBQXdMLG9CQUFvQix1SUFBdUksOEZBQThGLG1DQUFtQyxtREFBbUQsMEZBQTBGLG1GQUFtRixxQkFBcUIsdUVBQXVFLHlCQUF5Qiw0S0FBNEssaUNBQWlDLHdGQUF3RixpQkFBaUIsMkVBQTJFLFFBQVEsMkJBQTJCLFVBQVUsMEJBQTBCLFdBQVcsNEpBQTRKLGtCQUFrQixrQkFBa0IsbUJBQW1CLDhDQUE4QyxNQUFNLGlJQUFpSSx5QkFBeUIsbUJBQW1CLHVLQUF1SyxnQkFBZ0IsNENBQTRDLG9CQUFvQix3REFBd0QsbU9BQW1PLFdBQVcsTUFBTSx5Q0FBeUMsNERBQTRELHdCQUF3QixtQkFBbUIsOENBQThDLElBQUksNE5BQTROLDJCQUEyQiw0QkFBNEIsZ0JBQWdCLDhFQUE4RSwyQkFBMkIsOERBQThELGNBQWMsbURBQW1ELGtCQUFrQiwrRUFBK0Usb0JBQW9CLFlBQVksY0FBYyxtREFBbUQsb0NBQW9DLGNBQWMsb0NBQW9DLGNBQWMsb0NBQW9DLGNBQWMsa0JBQWtCLHFCQUFxQixlQUFlLDZDQUE2QyxPQUFPLGVBQWUsbUNBQW1DLDhDQUE4QyxpQkFBaUIsMERBQTBELHVVQUF1VSxxQkFBcUIseVBBQXlQLHlEQUF5RCwrR0FBK0csUUFBUSwrRUFBK0UsVUFBVSxXQUFXLDJCQUEyQixPQUFPLG9CQUFvQixXQUFXLE1BQU0sc0lBQXNJLHdCQUF3Qix1Q0FBdUMsZ0VBQWdFLGFBQWEscU1BQXFNLHVCQUF1QixtQkFBbUIsc0JBQXNCLHFFQUFxRSxzQkFBc0IsMkNBQTJDLDJCQUEyQixnQ0FBZ0MseUJBQXlCLGtJQUFrSSxVQUFVLDZGQUE2RixTQUFTLGtCQUFrQiw2QkFBNkIsb1VBQW9VLHNCQUFzQiwwSUFBMEksMEJBQTBCLGlpQkFBaWlCLGtDQUFrQyxzTEFBc0wsaUJBQWlCLHFCQUFxQixzQkFBc0IsU0FBUyxpdEJBQWl0QixXQUFXLDBUQUEwVCxzQkFBc0IscURBQXFELEVBQUUsR0FBRywwQ0FBMEMsc0JBQXNCLDJCQUEyQixTQUFTLG9SQUFvUixtQ0FBbUMsMkNBQTJDLHFDQUFxQyxrQkFBa0IsYUFBYSw2QkFBNkIsc0JBQXNCLG1FQUFtRSx5RkFBeUYsY0FBYyxXQUFXLG9DQUFvQyxVQUFVLEdBQUcsc0JBQXNCLHdQQUF3UCxTQUFTLGdCQUFnQixFQUFFLHlCQUF5QixpQ0FBaUMsYUFBYSxhQUFhLG9LQUFvSyxpQkFBaUIscUJBQXFCLHFCQUFxQixTQUFTLCtHQUErRyw2Q0FBNkMsMlZBQTJWLFdBQVcsOEdBQThHLFNBQVMsY0FBYyxzRUFBc0UsT0FBTyxtQkFBbUIseUJBQXlCLDZCQUE2QixJQUFJLFVBQVUscUVBQXFFLHlEQUF5RCxTQUFTLDBGQUEwRiwyQ0FBMkMsZUFBZSxzRUFBc0UsNENBQTRDLFFBQVEsNERBQTRELGFBQWEseUNBQXlDLEdBQUcscUJBQXFCLGVBQWUseUNBQXlDLHNEQUFzRCxtSUFBbUksV0FBVyxtRUFBbUUsWUFBWSwwREFBMEQsV0FBVyxnQ0FBZ0MsZ0dBQWdHLHdMQUF3TCx3REFBd0QsV0FBVyw0QkFBNEIsdUJBQXVCLHFGQUFxRixxQkFBcUIsK0RBQStELGVBQWUsc0JBQXNCLG9CQUFvQixXQUFXLDBDQUEwQyw4QkFBOEIsb0NBQW9DLGtCQUFrQiwyRUFBMkUsNENBQTRDLGtCQUFrQixpQ0FBaUMseUhBQXlILGlGQUFpRiw0Q0FBNEMsa0JBQWtCLGlDQUFpQyx5SEFBeUgsbUlBQW1JLFNBQVMsbUJBQW1CLGlDQUFpQyxtQ0FBbUMsc0RBQXNELCtFQUErRSxpRUFBaUUsd0JBQXdCLDJCQUEyQixxREFBcUQsU0FBUyw2QkFBNkIsK0RBQStELFNBQVMsbUJBQW1CLDBMQUEwTCxtREFBbUQsNkJBQTZCLE1BQU0sb0NBQW9DLDRFQUE0RSxlQUFlLHdCQUF3QixrQkFBa0IsMkRBQTJELDRIQUE0SCwyRkFBMkYsK0JBQStCLDhCQUE4QixNQUFNLGlDQUFpQyw4Q0FBOEMsNENBQTRDLDBCQUEwQix1REFBdUQsa0JBQWtCLDJCQUEyQix3Q0FBd0MsaUJBQWlCLG9CQUFvQiw2Q0FBNkMsZUFBZSx3RUFBd0UsaUJBQWlCLGFBQWEsZUFBZSw2RkFBNkYsNkNBQTZDLHFEQUFxRCw2QkFBNkIsMkdBQTJHLGVBQWUsb0RBQW9ELGVBQWUsK0VBQStFLGdDQUFnQyxnQ0FBZ0MscURBQXFELHlDQUF5QywwSUFBMEkseUlBQXlJLHNEQUFzRCxtQkFBbUIsUUFBUSwrWEFBK1gsa0JBQWtCLDRFQUE0RSxrU0FBa1MsMkJBQTJCLG9CQUFvQixlQUFlLCtJQUErSSwyQkFBMkIsb0JBQW9CLGVBQWUsZ1dBQWdXLG1CQUFtQiw2QkFBNkIsa0RBQWtELDBFQUEwRSxnQkFBZ0IsMEJBQTBCLGdCQUFnQiwwQkFBMEIsZ0VBQWdFLGlCQUFpQiw2REFBNkQsa0RBQWtELGVBQWUsRUFBRSx1RUFBdUUsbUJBQW1CLHlDQUF5QyxpT0FBaU8sZ0pBQWdKLGtIQUFrSCxrQkFBa0IsOERBQThELDBIQUEwSCxnQkFBZ0Isd0RBQXdELDBPQUEwTyxpQkFBaUIsZ0NBQWdDLGlGQUFpRixZQUFZLEtBQUssZ0JBQWdCLEtBQUssNkJBQTZCLFlBQVksSUFBSSxtQkFBbUIsSUFBSSx3RUFBd0UsNkJBQTZCLGlDQUFpQyxLQUFLLG9EQUFvRCxZQUFZLE1BQU0saUlBQWlJLDZCQUE2QixpQ0FBaUMsS0FBSyxvREFBb0QsWUFBWSxNQUFNLGlJQUFpSSx5SUFBeUkscUJBQXFCLHNDQUFzQyxzQ0FBc0MsTUFBTSxNQUFNLFNBQVMsOENBQThDLDBFQUEwRSxzQkFBc0IsdUNBQXVDLHFDQUFxQywyR0FBMkcsd0NBQXdDLHNHQUFzRyxRQUFRLG9EQUFvRCxTQUFTLG1CQUFtQixvR0FBb0csV0FBVyxrRUFBa0UsaUJBQWlCLG9HQUFvRyxxREFBcUQsd0JBQXdCLDhOQUE4Tix3Q0FBd0Msa0JBQWtCLHdCQUF3QixhQUFhLHNHQUFzRyxlQUFlLHVCQUF1Qix3QkFBd0IscUZBQXFGLHFIQUFxSCxpREFBaUQsK0JBQStCLGNBQWMsWUFBWSxpQkFBaUIsaURBQWlELFNBQVMsbUZBQW1GLFVBQVUsc0RBQXNELFNBQVMsaUJBQWlCLHFHQUFxRyxXQUFXLHNCQUFzQixjQUFjLHlFQUF5RSxzQkFBc0IsZ09BQWdPLCtCQUErQixnQ0FBZ0Msa0RBQWtELGtCQUFrQixxREFBcUQsb0lBQW9JLGdDQUFnQyx5QkFBeUIsZ0NBQWdDLGlEQUFpRCxtQ0FBbUMsK0lBQStJLGtGQUFrRixzREFBc0Qsb0NBQW9DLGVBQWUscURBQXFELG1HQUFtRyxtSkFBbUosaUNBQWlDLGlCQUFpQixvREFBb0Qsc0NBQXNDLG9KQUFvSiw4Q0FBOEMsNkJBQTZCLHVCQUF1QixVQUFVLDBDQUEwQywwREFBMEQsc0JBQXNCLG1FQUFtRSxpQ0FBaUMsZ0NBQWdDLFlBQVksV0FBVyxLQUFLLHNHQUFzRyxvT0FBb08sdUdBQXVHLFdBQVcsVUFBVSx5L0JBQXkvQixVQUFVLGd1QkFBZ3VCLFFBQVEsNEVBQTRFLEtBQUssOENBQThDLFNBQVMsc0JBQXNCLG1CQUFtQixzQkFBc0IsSUFBSSxpREFBaUQsdUlBQXVJLG9CQUFvQiw4Q0FBOEMsa0JBQWtCLHdGQUF3RixxQkFBcUIsME1BQTBNLFdBQVcsd0RBQXdELG9CQUFvQixxSUFBcUksbUJBQW1CLG9NQUFvTSxpQkFBaUIsK0xBQStMLHlCQUF5QixxR0FBcUcsb0NBQW9DLDJCQUEyQixzQkFBc0IsMkRBQTJELElBQUksZUFBZSxlQUFlLCtCQUErQix5QkFBeUIsOENBQThDLEVBQUUsR0FBRywyQkFBMkIscUNBQXFDLDJCQUEyQixxQkFBcUIsMERBQTBELElBQUksZUFBZSxlQUFlLCtCQUErQix1QkFBdUIsOENBQThDLEVBQUUsR0FBRywyQkFBMkIsdUdBQXVHLFdBQVcsa0RBQWtELGdCQUFnQixpR0FBaUcsZ0JBQWdCLGlHQUFpRyxlQUFlLGtCQUFrQixlQUFlLG9DQUFvQyxzREFBc0QsTUFBTSxhQUFhLG1DQUFtQyxnQ0FBZ0MsZUFBZSxrQkFBa0IsZUFBZSxvQ0FBb0Msc0RBQXNELE1BQU0sYUFBYSxtQ0FBbUMsZ0NBQWdDLE1BQU0scUJBQXFCLDBHQUEwRyxXQUFXLDJEQUEyRCxXQUFXLDJIQUEySCxVQUFVLHNMQUFzTCxXQUFXLDJEQUEyRCxPQUFPLG1CQUFtQiw2QkFBNkIsNkJBQTZCLDRGQUE0Riw0RUFBNEUsS0FBSyxpQ0FBaUMsRUFBRSwyQkFBMkIscURBQXFELDBDQUEwQyx5RUFBeUUsVUFBVSxxUkFBcVIsbUJBQW1CLG9CQUFvQix5Q0FBeUMsRUFBRSxVQUFVLEVBQUUsR0FBRyxvQkFBb0IsRUFBRSxVQUFVLEVBQUUsSUFBSSxxQkFBcUIsZUFBZSxnQ0FBZ0MsdUNBQXVDLDhEQUE4RCxzQkFBc0IsK0NBQStDLHlEQUF5RCxrQkFBa0IsTUFBTSxxQkFBcUIsa0RBQWtELGdjQUFnYyxTQUFTLG9GQUFvRixlQUFlLHFEQUFxRCxzQ0FBc0MsT0FBTyxTQUFTLCtIQUErSCxxQkFBcUIsdUhBQXVILGtCQUFrQixZQUFZLFlBQVksTUFBTSxZQUFZLE1BQU0sR0FBRyxFQUFFLEVBQUUsZ0RBQWdELDRDQUE0QyxnQkFBZ0IsSUFBSSxrQkFBa0Isc0JBQXNCLHdEQUF3RCx3REFBd0QsNlJBQTZSLGlCQUFpQiw4UUFBOFEsMEJBQTBCLCtVQUErVSx1b0JBQXVvQixNQUFNLHFEQUFxRCxpRUFBaUUsMkVBQTJFLEVBQUUsc0NBQXNDLEVBQUUsNENBQTRDLEdBQUcsRUFBRSxFQUFFLEdBQUcscURBQXFELG1LQUFtSyxxREFBcUQsNkNBQTZDLHFEQUFxRCxrR0FBa0csVUFBVSwwQkFBMEIsRUFBRSwwQkFBMEIsRUFBRSx5QkFBeUIsRUFBRSx5QkFBeUIsRUFBRSx5QkFBeUIsRUFBRSx5QkFBeUIsRUFBRSx5QkFBeUIsRUFBRSx5QkFBeUIsRUFBRSxrQkFBa0IsMkRBQTJELHdNQUF3TSxxREFBcUQsMENBQTBDLHdEQUF3RCw4UUFBOFEscURBQXFELGdGQUFnRix3REFBd0QsbW9CQUFtb0IscURBQXFELGlHQUFpRyxxREFBcUQseURBQXlELDBEQUEwRCwyTEFBMkwsMERBQTBELDZjQUE2YyxvR0FBb0csb0JBQW9CLG1EQUFtRCxvQkFBb0IsK0hBQStILGtCQUFrQixTQUFTLDZVQUE2VSxTQUFTLDRrQkFBNGtCLFlBQVksb0JBQW9CLGFBQWEsdUhBQXVILGFBQWEscUJBQXFCLFlBQVksNExBQTRMLDRCQUE0Qiw2Q0FBNkMsc0NBQXNDLDZKQUE2SixlQUFlLDRNQUE0TSxZQUFZLDBCQUEwQix3Q0FBd0MsV0FBVyxtQkFBbUIsY0FBYyxvQkFBb0Isc0pBQXNKLHFCQUFxQixRQUFRLDhKQUE4SiwrQkFBK0IsTUFBTSwrQkFBK0Isc0NBQXNDLDJCQUEyQixRQUFRLCtIQUErSCxpSEFBaUgsK05BQStOLHNKQUFzSixZQUFZLG9CQUFvQixhQUFhLHVEQUF1RCxnQkFBZ0IsZ0NBQWdDLG1CQUFtQixtQ0FBbUMsbUJBQW1CLHlDQUF5QyxnQkFBZ0IsbVBBQW1QLGNBQWMsdUJBQXVCLGVBQWUsK0NBQStDLGNBQWMsc0JBQXNCLHdCQUF3Qiw2REFBNkQsdUJBQXVCLCtCQUErQixxQkFBcUIsd0ZBQXdGLG9CQUFvQiw0QkFBNEIsZ0JBQWdCLGtNQUFrTSxVQUFVLGlCQUFpQiwrQ0FBK0MsbUJBQW1CLFdBQVcsaUVBQWlFLGVBQWUsVUFBVSw0QkFBNEIsbUJBQW1CLHFIQUFxSCwyQkFBMkIsaUJBQWlCLDBHQUEwRyx3TUFBd00scUJBQXFCLG9CQUFvQix1QkFBdUIsY0FBYyxZQUFZLFVBQVUsMERBQTBELHVEQUF1RCx5QkFBeUIsUUFBUSxJQUFJLDBDQUEwQyxFQUFFLE1BQU0sRUFBRSxFQUFFLEdBQUcsVUFBVSxzR0FBc0cscU5BQXFOLGVBQWUsTUFBTSx1QkFBdUIsMkNBQTJDLFFBQVEsNk1BQTZNLHVDQUF1Qyx1QkFBdUIsUUFBUSxvR0FBb0csUUFBUSw2V0FBNlcsd0JBQXdCLFdBQVcsa1dBQWtXLGdCQUFnQixFQUFFLHNDQUFzQyxNQUFNLDRKQUE0SixLQUFLLDhFQUE4RSxrQ0FBa0Msd0VBQXdFLDhCQUE4Qix1RUFBdUUsc2VBQXNlLFNBQVMscU1BQXFNLFdBQVcsc0lBQXNJLFdBQVcsc0dBQXNHLDZRQUE2USxlQUFlLHlCQUF5QixvRkFBb0YsWUFBWSx1R0FBdUcsZ0JBQWdCLHdCQUF3QiwwQkFBMEIsbWVBQW1lLGtCQUFrQiw4VEFBOFQscUJBQXFCLDhVQUE4VSwwQkFBMEIscUhBQXFILHdEQUF3RCxlQUFlLDRCQUE0QixjQUFjLDZJQUE2SSxxRkFBcUYsOFRBQThULE1BQU0sbVRBQW1ULE1BQU0saURBQWlELGlCQUFpQixHQUFHLGlVQUFpVSx3QkFBd0IsMEdBQTBHLFVBQVUsb0RBQW9ELHlCQUF5QixtQkFBbUIsR0FBRyx3QkFBd0IsTUFBTSxzREFBc0QsZ1BBQWdQLCtFQUErRSxtQkFBbUIsNEZBQTRGLG1CQUFtQixjQUFjLGlEQUFpRCxxY0FBcWMsd0VBQXdFLHdJQUF3SSxNQUFNLHlCQUF5Qix1QkFBdUIsNktBQTZLLG1CQUFtQix1RUFBdUUsb0JBQW9CLGtWQUFrVix5QkFBeUIsY0FBYyxXQUFXLHNGQUFzRix3RUFBd0Usb0hBQW9ILE1BQU0sa0VBQWtFLG9IQUFvSCx3UEFBd1AseUJBQXlCLG9IQUFvSCxpREFBaUQsZ1BBQWdQLHNYQUFzWCxLQUFLLG9CQUFvQixRQUFRLFNBQVMsc0hBQXNILGtEQUFrRCw2QkFBNkIscUZBQXFGLElBQUksa0RBQWtELG1CQUFtQixFQUFFLHVCQUF1QixTQUFTLG1DQUFtQyxVQUFVLEdBQUcscURBQXFELFdBQVcsbWFBQW1hLHdCQUF3Qiw0Q0FBNEMsK0dBQStHLGlCQUFpQix5QkFBeUIsOE1BQThNLE1BQU0sb1JBQW9SLE1BQU0sK1JBQStSLE1BQU0seUJBQXlCLGlEQUFpRCxpQkFBaUIsSUFBSSxzQkFBc0IsMEpBQTBKLG1DQUFtQyxFQUFFLHdDQUF3QyxFQUFFLEtBQUssVUFBVSxtRkFBbUYsbUNBQW1DLHlCQUF5Qix5RkFBeUYsTUFBTSwwaUJBQTBpQixNQUFNLHlSQUF5UixNQUFNLGlEQUFpRCxpQkFBaUIsR0FBRyx5QkFBeUIsc0tBQXNLLE1BQU0sMEZBQTBGLE1BQU0sZ0JBQWdCLGlEQUFpRCxpQkFBaUIsR0FBRyxrRkFBa0YsMkNBQTJDLE1BQU0saUpBQWlKLHlCQUF5QixzSkFBc0osOEpBQThKLFVBQVUsY0FBYyxtU0FBbVMseUdBQXlHLGVBQWUsdUJBQXVCLHNDQUFzQyxRQUFRLDZIQUE2SCxtSUFBbUksaUdBQWlHLGdHQUFnRyxnRkFBZ0YsMEJBQTBCLDJJQUEySSxrSUFBa0ksZ0JBQWdCLElBQUksMkJBQTJCLDRGQUE0RixnQkFBZ0IsSUFBSSx1QkFBdUIsaUdBQWlHLDJCQUEyQixnQkFBZ0IsMmxCQUEybEIsMFpBQTBaLHVHQUF1RyxZQUFZLGVBQWUsTUFBTSx1SEFBdUgsNkJBQTZCLDROQUE0TiwyREFBMkQscUJBQXFCLHdCQUF3QiwrQkFBK0IsbURBQW1ELFNBQVMsZ0JBQWdCLG1FQUFtRSxNQUFNLDZDQUE2QyxhQUFhLGtEQUFrRCxrS0FBa0ssNERBQTRELHlEQUF5RCxxQkFBcUIsV0FBVyxpSkFBaUosb0RBQW9ELHNNQUFzTSwrREFBK0QsdUJBQXVCLHdEQUF3RCxXQUFXLFdBQVcsOEJBQThCLHFCQUFxQixXQUFXLGtCQUFrQiw0QkFBNEIseUNBQXlDLElBQUksWUFBWSxtQkFBbUIsZ0JBQWdCLGtPQUFrTyxzQkFBc0IsdUJBQXVCLGtDQUFrQyxxRkFBcUYsaUJBQWlCLGdLQUFnSyxrQ0FBa0MsOERBQThELGNBQWMsb0NBQW9DLHNDQUFzQyxnSkFBZ0osVUFBVSxNQUFNLG9GQUFvRixrRkFBa0YsZ0NBQWdDLGlFQUFpRSx3Q0FBd0Msc0RBQXNELDRGQUE0RixzQkFBc0IseUpBQXlKLDJCQUEyQixNQUFNLFFBQVEsd0RBQXdELHVDQUF1QyxnQkFBZ0IsTUFBTSwwRUFBMEUsaUJBQWlCLDBDQUEwQyxZQUFZLGtDQUFrQyxlQUFlLHFDQUFxQyxnQkFBZ0IsZ0VBQWdFLGNBQWMseUlBQXlJLGlGQUFpRixhQUFhLDhCQUE4QixjQUFjLGtJQUFrSSxvRUFBb0UsYUFBYSw4QkFBOEIsZUFBZSxvRkFBb0YsNkhBQTZILGtGQUFrRixjQUFjLCtCQUErQixlQUFlLG9GQUFvRix1SEFBdUgsc0VBQXNFLGNBQWMsK0JBQStCLHVCQUF1Qix3Q0FBd0Msd0JBQXdCLHlEQUF5RCxXQUFXLDZFQUE2RSxhQUFhLGlFQUFpRSxXQUFXLE1BQU0sZ0ZBQWdGLFlBQVksTUFBTSxrRkFBa0YsYUFBYSxNQUFNLG9GQUFvRixnQ0FBZ0Msc0NBQXNDLFNBQVMsWUFBWSwyRkFBMkYsU0FBUyxLQUFLLDZEQUE2RCxXQUFXLFdBQVcsUUFBUSwrQkFBK0IsMEJBQTBCLFNBQVMscUNBQXFDLFNBQVMsWUFBWSx3Q0FBd0Msa0RBQWtELFNBQVMseUVBQXlFLE9BQU8sd0RBQXdELFFBQVEsK0JBQStCLDBCQUEwQixZQUFZLDJGQUEyRixTQUFTLEtBQUssNERBQTRELFFBQVEsK0JBQStCLFNBQVMsNEJBQTRCLHFEQUFxRCxrR0FBa0csZ0NBQWdDLGtFQUFrRSxvQ0FBb0MsWUFBWSxXQUFXLEtBQUssYUFBYSxtRkFBbUYsc0RBQXNELDRCQUE0QixVQUFVLG1DQUFtQyxvRUFBb0UsaUNBQWlDLHFEQUFxRCxZQUFZLFlBQVkscUNBQXFDLHdFQUF3RSw0QkFBNEIsdUJBQXVCLHdCQUF3QixnREFBZ0QsaUNBQWlDLHVEQUF1RCxZQUFZLFdBQVcsb0dBQW9HLDJCQUEyQix5QkFBeUIsTUFBTSxzR0FBc0csYUFBYSxPQUFPLDREQUE0RCxNQUFNLDhDQUE4Qyw2Q0FBNkMsNERBQTRELHlCQUF5QiwyQ0FBMkMsY0FBYyxxQkFBcUIsRUFBRSxxRkFBcUYscU1BQXFNLHVCQUF1Qix3REFBd0QsZ0JBQWdCLHdCQUF3QixpREFBaUQsRUFBRSxJQUFJLFNBQVMsa0JBQWtCLDRIQUE0SCxtRUFBbUUsNkdBQTZHLG9DQUFvQyxpQkFBaUIseUdBQXlHLHNCQUFzQixzQ0FBc0Msb0NBQW9DLGlCQUFpQiwyQkFBMkIsZ0JBQWdCLHVCQUF1Qix5REFBeUQscUNBQXFDLDRCQUE0QixjQUFjLDBCQUEwQixJQUFJLGdEQUFnRCxpQkFBaUIsSUFBSSw0Q0FBNEMsU0FBUyxxQ0FBcUMsc0JBQXNCLGlFQUFpRSxXQUFXLDRDQUE0QyxnQkFBZ0IsaUZBQWlGLGVBQWUsNkVBQTZFLGtCQUFrQiwrQ0FBK0MsZ0NBQWdDLDJEQUEyRCxFQUFFLE9BQU8sY0FBYyw0R0FBNEcsMENBQTBDLHNGQUFzRixTQUFTLEdBQUcsZ0NBQWdDLG1DQUFtQyw4QkFBOEIsb01BQW9NLHlYQUF5WCxnYkFBZ2Isa0RBQWtELHdQQUF3UCxvQ0FBb0MsVUFBVSxRQUFRLGFBQWEsUUFBUSwwRkFBMEYsaUJBQWlCLDRDQUE0QyxrQkFBa0Isb0JBQW9CLGtCQUFrQixhQUFhLHNEQUFzRCxVQUFVLGdCQUFnQixtREFBbUQsYUFBYSwrQkFBK0IsaUJBQWlCLEVBQUUsTUFBTSx1RkFBdUYsR0FBRyx3RUFBd0UsZ1NBQWdTLE1BQU0sd0JBQXdCLE9BQU8sOEJBQThCLGNBQWMsaUJBQWlCLDRIQUE0SCxrQ0FBa0MsTUFBTSx3QkFBd0IsbUJBQW1CLHVCQUF1QixjQUFjLGlCQUFpQixnR0FBZ0csSUFBSSxpQkFBaUIsK0JBQStCLGdKQUFnSixtRUFBbUUsd0JBQXdCLEdBQUcscVJBQXFSLGdMQUFnTCxpREFBaUQsNERBQTRELFlBQVksOEJBQThCLFlBQVksa0dBQWtHLGVBQWUsMkJBQTJCLGFBQWEsd0ZBQXdGLGFBQWEsK0JBQStCLGNBQWMsNEVBQTRFLGVBQWUsa0RBQWtELGVBQWUsa0RBQWtELFlBQVksOEJBQThCLGlCQUFpQixtQ0FBbUMseUJBQXlCLDREQUE0RCxrQkFBa0IsRUFBRSxvREFBb0QsYUFBYSwrQkFBK0IsMkJBQTJCLEVBQUUsNkRBQTZELHNCQUFzQix3Q0FBd0MsNEJBQTRCLEVBQUUsOERBQThELHVCQUF1Qix5Q0FBeUMsZ0JBQWdCLEVBQUUsNkVBQTZFLFlBQVksaUNBQWlDLGtCQUFrQixFQUFFLGtFQUFrRSxxQkFBcUIsUUFBUSxnQkFBZ0IsOEVBQThFLFlBQVksOEJBQThCLGdCQUFnQixFQUFFLGdFQUFnRSxxQkFBcUIsUUFBUSxlQUFlLEVBQUUsNEVBQTRFLFdBQVcsNkJBQTZCLFVBQVUsd0VBQXdFLFNBQVMsMkJBQTJCLHFCQUFxQixzREFBc0Qsd0JBQXdCLHlEQUF5RCxtQkFBbUIscUNBQXFDLGVBQWUsdUJBQXVCLHFCQUFxQiw2QkFBNkIsWUFBWSxvQkFBb0IsdUJBQXVCLFlBQVksdUdBQXVHLGtCQUFrQix3QkFBd0Isa0NBQWtDLDhFQUE4RSw0YkFBNGIsNEVBQTRFLGdDQUFnQyw0R0FBNEcsbUVBQW1FLHVDQUF1QyxHQUFHLE1BQU0sb0VBQW9FLHFCQUFxQixtR0FBbUcsRUFBRSxpQ0FBaUMsRUFBRSxLQUFLLGdCQUFnQixTQUFTLDhLQUE4SyxXQUFXLCtEQUErRCxHQUFHLHNCQUFzQixxREFBcUQsR0FBRyxRQUFRLEVBQUUsZ0ZBQWdGLE9BQU8scUNBQXFDLGdFQUFnRSx3REFBd0QsU0FBUyxpRkFBaUYsV0FBVyxtSUFBbUksdUJBQXVCLG1EQUFtRCxzQkFBc0IsaUNBQWlDLFdBQVcsaURBQWlELGlIQUFpSCxTQUFTLGlDQUFpQyxvQkFBb0Isc0NBQXNDLG1DQUFtQyxtQkFBbUIsOEZBQThGLDBCQUEwQiwyRkFBMkYsaXJCQUFpckIsb05BQW9OLDJRQUEyUSxtRUFBbUUsb01BQW9NLFNBQVMsbUhBQW1ILFNBQVMsTUFBTSxnQ0FBZ0MsK0NBQStDLCtZQUErWSxtRUFBbUUsbVlBQW1ZLGlCQUFpQixvSEFBb0gsdURBQXVELGdCQUFnQixLQUFLLHlCQUF5QixrQ0FBa0MsMEJBQTBCLDJFQUEyRSxrQkFBa0IsMkJBQTJCLG1CQUFtQiw2REFBNkQseUJBQXlCLGtDQUFrQywwQkFBMEIsa0hBQWtILDRCQUE0QixxQ0FBcUMsNkJBQTZCLGlGQUFpRixjQUFjLHVCQUF1QixlQUFlLDREQUE0RCxlQUFlLHdCQUF3QixnQkFBZ0IsaUNBQWlDLGNBQWMsVUFBVSwyQkFBMkIsaUNBQWlDLGdHQUFnRyxlQUFlLDZCQUE2QixzRkFBc0YsMkxBQTJMLCtCQUErQiw2Q0FBNkMsaUVBQWlFLFlBQVksMEJBQTBCLGVBQWUsd0NBQXdDLGdCQUFnQix3Q0FBd0MsTUFBTSxxQ0FBcUMsOEJBQThCLG9EQUFvRCxFQUFFLEdBQUcsMENBQTBDLG9CQUFvQixzUUFBc1EsRUFBRSxnQkFBZ0IsNExBQTRMLEVBQUUsZ0JBQWdCLCtMQUErTCx3REFBd0QsRUFBRSxnQkFBZ0IseUJBQXlCLEVBQUUsZ0JBQWdCLEdBQUcsa0lBQWtJLFNBQVMseWhCQUF5aEIsV0FBVyxvVEFBb1QsbUJBQW1CLDZDQUE2Qyx3REFBd0QsMkJBQTJCLGVBQWUseWlCQUF5aUIsdUJBQXVCLHVCQUF1Qix1QkFBdUIsa0JBQWtCLHVCQUF1QixrQkFBa0IsTUFBTSx5RUFBeUUscUJBQXFCLG9TQUFvUywyTEFBMkwsc1ZBQXNWLHdGQUF3RiwyR0FBMkcsMEJBQTBCLGdDQUFnQyxPQUFPLG1FQUFtRSxNQUFNLHlMQUF5TCxrQkFBa0Isa0ZBQWtGLE9BQU8sWUFBWSxJQUFJLEtBQUssSUFBSSxxQ0FBcUMsb0JBQW9CLGVBQWUsd0NBQXdDLFNBQVMscWpCQUFxakIsU0FBUyxtQkFBbUIsWUFBWSxvQkFBb0IsYUFBYSx1V0FBdVcsZUFBZSx1V0FBdVcsYUFBYSx1QkFBdUIsV0FBVyxzREFBc0QsV0FBVywyRUFBMkUsTUFBTSxrQkFBa0IsaUJBQWlCLGtCQUFrQiw2QkFBNkIsY0FBYyxNQUFNLHNFQUFzRSxlQUFlLG1EQUFtRCxpQkFBaUIsc0JBQXNCLDhCQUE4QiwrRUFBK0UsOEVBQThFLDRHQUE0RyxnQkFBZ0IsOERBQThELG1CQUFtQixpRUFBaUUsYUFBYSxpREFBaUQsbUJBQW1CLDhEQUE4RCwwQkFBMEIsb0NBQW9DLHFCQUFxQixpTEFBaUwsOERBQThELHFCQUFxQix5REFBeUQsMENBQTBDLGVBQWUsbUVBQW1FLGVBQWUsa0JBQWtCLDRDQUE0QyxrQkFBa0IsZ0VBQWdFLDRDQUE0QyxTQUFTLHFCQUFxQixxQkFBcUIsU0FBUyw2S0FBNkssV0FBVyxnRkFBZ0YsMERBQTBELGVBQWUseUJBQXlCLGdIQUFnSCw4QkFBOEIsc2JBQXNiLGlCQUFpQixTQUFTLHljQUF5YyxXQUFXLDhGQUE4Riw2T0FBNk8sa0RBQWtELEVBQUUsb0JBQW9CLFNBQVMsU0FBUyxRQUFRLHdDQUF3QyxVQUFVLHFSQUFxUiwwQ0FBMEMsdUNBQXVDLHFDQUFxQyxxQ0FBcUMseUJBQXlCLFVBQVUsNkJBQTZCLHFCQUFxQiwyQkFBMkIsc0JBQXNCLHFDQUFxQyw2QkFBNkIsc0JBQXNCLGdCQUFnQiwyQ0FBMkMsbUNBQW1DLGtDQUFrQyxrQ0FBa0MsOEJBQThCLGlCQUFpQiw0QkFBNEIsb0JBQW9COztBQUVod29hO0FBQ0E7QUFDQTtBQUNBOzs7QUFHQTs7QUFFQTs7QUFFQSxDQUFDO0FBQ0Q7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDMURBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQkFBa0IsUUFBUTtBQUMxQjtBQUNBO0FBQ0E7QUFDQSxrQkFBa0IsUUFBUTtBQUMxQix1QkFBdUIsY0FBYztBQUNyQztBQUNBO0FBQ0E7QUFDQSxXQUFXO0FBQ1g7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxXQUFXO0FBQ3ZCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTLE9BQU87QUFDaEI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjLFFBQVE7QUFDdEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLE9BQU87QUFDdkI7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5Q0FBeUMsUUFBUTtBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBLGdCQUFnQixPQUFPO0FBQ3ZCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFNBQVM7QUFDckI7QUFDQTtBQUNBLGNBQWMsU0FBUztBQUN2QjtBQUNBO0FBQ0EsY0FBYyxTQUFTO0FBQ3ZCO0FBQ0E7QUFDQSxjQUFjLFNBQVM7QUFDdkI7QUFDQTtBQUNBO0FBQ0EsWUFBWSxRQUFRO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQixjQUFjO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsV0FBVztBQUNuQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLFFBQVE7QUFDaEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVk7QUFDWjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCLFdBQVc7QUFDNUI7QUFDQTtBQUNBLGVBQWUsVUFBVTtBQUN6QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaURBQWlELFFBQVE7QUFDekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCLE1BQU07QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdDQUF3QyxNQUFNO0FBQzlDO0FBQ0E7QUFDQSx3RUFBd0UsTUFBTTtBQUM5RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQixjQUFjO0FBQ2hDO0FBQ0EsRUFBRTtBQUNGOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLDBCQUEwQjtBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLG9CQUFvQjtBQUN0QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDJEQUEyRCxTQUFTO0FBQ3BFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVk7QUFDWjtBQUNBLFlBQVk7QUFDWjtBQUNBLFlBQVk7QUFDWjtBQUNBLFlBQVk7QUFDWjtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOENBQThDLGdCQUFnQjtBQUM5RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0gsV0FBVztBQUNYO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsV0FBVyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRTtBQUM5QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQSxlQUFlO0FBQ2YsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLGVBQWU7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGNBQWMsZUFBZTtBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1CQUFtQixTQUFTO0FBQzVCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUMsbUJBQW1CO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQyxnQkFBZ0I7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFBZTtBQUNmLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQTtBQUNBO0FBQ0E7QUFDQSwyQ0FBMkMsT0FBTyxHQUFHLG9CQUFvQjtBQUN6RTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLGtCQUFrQixpQkFBaUI7QUFDeEQ7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtDQUErQyxNQUFNO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBLDBDQUEwQyxZQUFZO0FBQ3REO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlDQUFpQyxhQUFhO0FBQzlDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjO0FBQ2Q7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLGdCQUFnQjtBQUNsQztBQUNBLG1CQUFtQix3REFBd0Q7QUFDM0U7QUFDQTtBQUNBLGtCQUFrQixnQkFBZ0I7QUFDbEM7QUFDQTtBQUNBLGtCQUFrQixnQkFBZ0I7QUFDbEM7QUFDQTtBQUNBLGtCQUFrQixnQkFBZ0I7QUFDbEM7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1EQUFtRDtBQUNuRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbURBQW1EO0FBQ25EO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0IsZ0JBQWdCLEdBQUcsa0JBQWtCLEdBQUcsMkJBQTJCLEdBQUcsMkJBQTJCO0FBQ3ZIO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCLGdCQUFnQixHQUFHLGtCQUFrQixHQUFHLE9BQU8sR0FBRyxPQUFPO0FBQ25GO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQkFBMEIsZ0JBQWdCLEdBQUcsa0JBQWtCLEdBQUcsT0FBTyxHQUFHLE9BQU87QUFDbkY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLFNBQVM7QUFDVCxPQUFPO0FBQ1AsaUNBQWlDLG1DQUFtQztBQUNwRTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQSwwQkFBMEIsZ0JBQWdCLEdBQUcsa0JBQWtCLEdBQUcsT0FBTyxHQUFHLE9BQU87QUFDbkY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQSxTQUFTO0FBQ1QsT0FBTztBQUNQLGlDQUFpQyxtQ0FBbUM7QUFDcEU7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQkFBMEIsZ0JBQWdCLEdBQUcsa0JBQWtCLEdBQUcsT0FBTyxHQUFHLE9BQU87QUFDbkY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0EsU0FBUztBQUNULE9BQU87QUFDUCxpQ0FBaUMsbUNBQW1DO0FBQ3BFO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0EsU0FBUztBQUNULE9BQU87QUFDUDtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBCQUEwQixZQUFZO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxVQUFVO0FBQ1Y7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvRUFBb0UsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsSUFBSTtBQUNwRixxRUFBcUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFO0FBQy9FO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CLGFBQWEsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxJQUFJO0FBQ2xEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQW1CRTs7Ozs7OztVQ2pyREY7VUFDQTs7VUFFQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7VUFDQTs7VUFFQTtVQUNBOztVQUVBO1VBQ0E7VUFDQTs7Ozs7V0N0QkE7V0FDQTtXQUNBO1dBQ0E7V0FDQTtXQUNBLGlDQUFpQyxXQUFXO1dBQzVDO1dBQ0E7Ozs7O1dDUEE7V0FDQTtXQUNBO1dBQ0E7V0FDQSx5Q0FBeUMsd0NBQXdDO1dBQ2pGO1dBQ0E7V0FDQTs7Ozs7V0NQQTs7Ozs7V0NBQTtXQUNBO1dBQ0E7V0FDQSx1REFBdUQsaUJBQWlCO1dBQ3hFO1dBQ0EsZ0RBQWdELGFBQWE7V0FDN0Q7Ozs7Ozs7Ozs7Ozs7QUNOZSIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy90cy9NYXAudHMiLCJ3ZWJwYWNrOi8vLy4vc3JjL3RzL21vZHVsZXMvQWRkQ291bnRyeUJvcmRlck1vZHVsZS50cyIsIndlYnBhY2s6Ly8vLi9zcmMvdHMvbW9kdWxlcy9NYXBMYXllclNwZWNpZmljYXRpb25Nb2R1bGUudHMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL21hcGxpYnJlLWdsL2Rpc3QvbWFwbGlicmUtZ2wuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3BtdGlsZXMvZGlzdC9pbmRleC5qcyIsIndlYnBhY2s6Ly8vd2VicGFjay9ib290c3RyYXAiLCJ3ZWJwYWNrOi8vL3dlYnBhY2svcnVudGltZS9jb21wYXQgZ2V0IGRlZmF1bHQgZXhwb3J0Iiwid2VicGFjazovLy93ZWJwYWNrL3J1bnRpbWUvZGVmaW5lIHByb3BlcnR5IGdldHRlcnMiLCJ3ZWJwYWNrOi8vL3dlYnBhY2svcnVudGltZS9oYXNPd25Qcm9wZXJ0eSBzaG9ydGhhbmQiLCJ3ZWJwYWNrOi8vL3dlYnBhY2svcnVudGltZS9tYWtlIG5hbWVzcGFjZSBvYmplY3QiLCJ3ZWJwYWNrOi8vLy4vc3JjL3RzL01haW4udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgcG10aWxlcyBmcm9tIFwicG10aWxlc1wiO1xuaW1wb3J0ICogYXMgbWFwbGlicmVnbCBmcm9tIFwibWFwbGlicmUtZ2xcIjtcbmltcG9ydCB7IGxheWVyU3BlY2lmaWNhdGlvbiB9IGZyb20gXCIuL21vZHVsZXMvTWFwTGF5ZXJTcGVjaWZpY2F0aW9uTW9kdWxlXCI7XG5pbXBvcnQgeyBhZGRDb3VudHJ5Qm9yZGVyIH0gZnJvbSBcIi4vbW9kdWxlcy9BZGRDb3VudHJ5Qm9yZGVyTW9kdWxlXCI7XG5cbi8vIHJlYWQgaHR0cHM6Ly9tYXBsaWJyZS5vcmcvbWFwbGlicmUtZ2wtanMvZG9jcy9leGFtcGxlcy9wbXRpbGVzL1xuLy8gYWRkIHBtdGlsZXMgcHJvdG9jb2xcbmxldCBwcm90b2NvbCA9IG5ldyBwbXRpbGVzLlByb3RvY29sKCk7XG5tYXBsaWJyZWdsLmFkZFByb3RvY29sKFwicG10aWxlc1wiLCBwcm90b2NvbC50aWxlKTtcblxuLy8gY3JlYXRlIG1hcCB0aWxlc1xuY29uc3QgbWFwID0gbmV3IG1hcGxpYnJlZ2wuTWFwKHtcbiAgY29udGFpbmVyOiBcIm1hcFwiLFxuICB6b29tOiAxLFxuICBtaW5ab29tOiAyLFxuICBtYXhab29tOiA2LFxuICBjZW50ZXI6IFswLCAwXSxcbiAgc3R5bGU6IHtcbiAgICB2ZXJzaW9uOiA4LFxuICAgIHNvdXJjZXM6IHtcbiAgICAgIHRpbGVzOiB7XG4gICAgICAgIHR5cGU6IFwidmVjdG9yXCIsXG4gICAgICAgIC8vIHJlYWQgaHR0cHM6Ly9tYXBsaWJyZS5vcmcvbWFwbGlicmUtc3R5bGUtc3BlYy9zb3VyY2VzLyN2ZWN0b3JcbiAgICAgICAgdXJsOiBcInBtdGlsZXM6Ly9odHRwczovL25iZzEueW91ci1vYmplY3RzdG9yYWdlLmNvbS9tYXBzL21hcC5wbXRpbGVzXCIsXG4gICAgICB9LFxuICAgIH0sXG4gICAgLy9cbiAgICBsYXllcnM6IGxheWVyU3BlY2lmaWNhdGlvbixcbiAgfSxcbn0pO1xuXG4vLyBkZWJ1Z1xuLy9tYXAuc2hvd1RpbGVCb3VuZGFyaWVzID0gdHJ1ZTtcblxuLy8gYWRkIHpvb20gYW5kIHJvdGF0aW9uIGNvbnRyb2xzXG5tYXAuYWRkQ29udHJvbChuZXcgbWFwbGlicmVnbC5OYXZpZ2F0aW9uQ29udHJvbCgpKTtcblxuYWRkQ291bnRyeUJvcmRlcihtYXApO1xuIiwibGV0IGhvdmVyZWRTdGF0ZUlkID0gbnVsbDtcblxuZXhwb3J0IGNvbnN0IGFkZENvdW50cnlCb3JkZXIgPSAobWFwOiBtYXBsaWJyZWdsLk1hcCkgPT4ge1xuICBtYXAub24oXCJsb2FkXCIsICgpID0+IHtcbiAgICBtYXAuYWRkU291cmNlKFwic3RhdGVzXCIsIHtcbiAgICAgIHR5cGU6IFwiZ2VvanNvblwiLFxuICAgICAgZGF0YTogXCIvc3RhdGljL3NyYy9lYXJ0aC5nZW9qc29uXCIsXG4gICAgICBwcm9tb3RlSWQ6IFwiaXNvX24zXCIsIC8vIHVzZSB0aGlzIGZpZWxkIGFzIHRoZSB1bmlxdWUgaWRlbnRpZmllciBmb3IgZWFjaCBjb3VudHJ5XG4gICAgfSk7XG5cbiAgICAvLyBUaGUgZmVhdHVyZS1zdGF0ZSBkZXBlbmRlbnQgZmlsbC1vcGFjaXR5IGV4cHJlc3Npb24gd2lsbCByZW5kZXIgdGhlIGhvdmVyIGVmZmVjdFxuICAgIC8vIHdoZW4gYSBmZWF0dXJlJ3MgaG92ZXIgc3RhdGUgaXMgc2V0IHRvIHRydWUuXG4gICAgbWFwLmFkZExheWVyKHtcbiAgICAgIGlkOiBcInN0YXRlLWZpbGxzXCIsXG4gICAgICB0eXBlOiBcImZpbGxcIixcbiAgICAgIHNvdXJjZTogXCJzdGF0ZXNcIixcbiAgICAgIGxheW91dDoge30sXG4gICAgICBwYWludDoge1xuICAgICAgICBcImZpbGwtY29sb3JcIjogXCIjNjI3QkMxXCIsXG4gICAgICAgIFwiZmlsbC1vcGFjaXR5XCI6IFtcbiAgICAgICAgICBcImNhc2VcIixcbiAgICAgICAgICBbXCJib29sZWFuXCIsIFtcImZlYXR1cmUtc3RhdGVcIiwgXCJob3ZlclwiXSwgZmFsc2VdLFxuICAgICAgICAgIDAuMixcbiAgICAgICAgICAwLFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIG1hcC5hZGRMYXllcih7XG4gICAgICBpZDogXCJzdGF0ZS1ib3JkZXJzXCIsXG4gICAgICB0eXBlOiBcImxpbmVcIixcbiAgICAgIHNvdXJjZTogXCJzdGF0ZXNcIixcbiAgICAgIGxheW91dDoge1xuICAgICAgICBcImxpbmUtam9pblwiOiBcInJvdW5kXCIsXG4gICAgICAgIFwibGluZS1jYXBcIjogXCJyb3VuZFwiLFxuICAgICAgfSxcbiAgICAgIHBhaW50OiB7XG4gICAgICAgIFwibGluZS1jb2xvclwiOiBcIiM0YjRiNGJcIiwgLy8gQm9yZGVyIGNvbG9yXG4gICAgICAgIFwibGluZS13aWR0aFwiOiBbXG4gICAgICAgICAgXCJjYXNlXCIsXG4gICAgICAgICAgW1wiYm9vbGVhblwiLCBbXCJmZWF0dXJlLXN0YXRlXCIsIFwiaG92ZXJcIl0sIGZhbHNlXSwgLy8gQ2hlY2sgaWYgaG92ZXJlZFxuICAgICAgICAgIDEsIC8vIFRoaWNrZXIgYm9yZGVyIG9uIGhvdmVyXG4gICAgICAgICAgMC41LCAvLyBSZWd1bGFyIGJvcmRlciB3aWR0aFxuICAgICAgICBdLFxuICAgICAgICBcImxpbmUtb3BhY2l0eVwiOiAxLCAvLyBGdWxsIG9wYWNpdHkgZm9yIGJvcmRlcnNcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICAvLyBXaGVuIHRoZSB1c2VyIG1vdmVzIHRoZWlyIG1vdXNlIG92ZXIgdGhlIHN0YXRlLWZpbGwgbGF5ZXIsIHdlJ2xsIHVwZGF0ZSB0aGVcbiAgICAvLyBmZWF0dXJlIHN0YXRlIGZvciB0aGUgZmVhdHVyZSB1bmRlciB0aGUgbW91c2UuXG4gICAgbWFwLm9uKFwibW91c2Vtb3ZlXCIsIFwic3RhdGUtZmlsbHNcIiwgKGUpID0+IHtcbiAgICAgIGlmIChlLmZlYXR1cmVzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgaWYgKGhvdmVyZWRTdGF0ZUlkKSB7XG4gICAgICAgICAgbWFwLnNldEZlYXR1cmVTdGF0ZShcbiAgICAgICAgICAgIHsgc291cmNlOiBcInN0YXRlc1wiLCBpZDogaG92ZXJlZFN0YXRlSWQgfSxcbiAgICAgICAgICAgIHsgaG92ZXI6IGZhbHNlIH1cbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIGhvdmVyZWRTdGF0ZUlkID0gZS5mZWF0dXJlc1swXS5pZDtcbiAgICAgICAgbWFwLnNldEZlYXR1cmVTdGF0ZShcbiAgICAgICAgICB7IHNvdXJjZTogXCJzdGF0ZXNcIiwgaWQ6IGhvdmVyZWRTdGF0ZUlkIH0sXG4gICAgICAgICAgeyBob3ZlcjogdHJ1ZSB9XG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICAvLyBXaGVuIHRoZSBtb3VzZSBsZWF2ZXMgdGhlIHN0YXRlLWZpbGwgbGF5ZXIsIHVwZGF0ZSB0aGUgZmVhdHVyZSBzdGF0ZSBvZiB0aGVcbiAgICAvLyBwcmV2aW91c2x5IGhvdmVyZWQgZmVhdHVyZS5cbiAgICBtYXAub24oXCJtb3VzZWxlYXZlXCIsIFwic3RhdGUtZmlsbHNcIiwgKCkgPT4ge1xuICAgICAgaWYgKGhvdmVyZWRTdGF0ZUlkKSB7XG4gICAgICAgIG1hcC5zZXRGZWF0dXJlU3RhdGUoXG4gICAgICAgICAgeyBzb3VyY2U6IFwic3RhdGVzXCIsIGlkOiBob3ZlcmVkU3RhdGVJZCB9LFxuICAgICAgICAgIHsgaG92ZXI6IGZhbHNlIH1cbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIGhvdmVyZWRTdGF0ZUlkID0gbnVsbDtcbiAgICB9KTtcbiAgfSk7XG59O1xuIiwiaW1wb3J0IHsgTGF5ZXJTcGVjaWZpY2F0aW9uIH0gZnJvbSBcIm1hcGxpYnJlLWdsXCI7XG5cbmV4cG9ydCBjb25zdCBsYXllclNwZWNpZmljYXRpb246IExheWVyU3BlY2lmaWNhdGlvbltdID0gW1xuICB7XG4gICAgaWQ6IFwiZm9yZXN0XCIsXG4gICAgc291cmNlOiBcInRpbGVzXCIsXG4gICAgXCJzb3VyY2UtbGF5ZXJcIjogXCJmb3Jlc3RcIixcbiAgICB0eXBlOiBcImZpbGxcIixcbiAgICBwYWludDoge1xuICAgICAgXCJmaWxsLWNvbG9yXCI6IFwiIzkwZWU5MFwiLFxuICAgIH0sXG4gIH0sXG4gIHtcbiAgICBpZDogXCJ3YXRlclwiLFxuICAgIHNvdXJjZTogXCJ0aWxlc1wiLFxuICAgIFwic291cmNlLWxheWVyXCI6IFwid2F0ZXJcIixcbiAgICBmaWx0ZXI6IFtcIj09XCIsIFtcImdlb21ldHJ5LXR5cGVcIl0sIFwiUG9seWdvblwiXSxcbiAgICB0eXBlOiBcImZpbGxcIixcbiAgICBwYWludDoge1xuICAgICAgXCJmaWxsLWNvbG9yXCI6IFwiI2FkZDhlNlwiLFxuICAgIH0sXG4gIH0sXG4gIHtcbiAgICBpZDogXCJidWlsZGluZ3NcIixcbiAgICBzb3VyY2U6IFwidGlsZXNcIixcbiAgICBcInNvdXJjZS1sYXllclwiOiBcImJ1aWxkaW5nc1wiLFxuICAgIHR5cGU6IFwiZmlsbFwiLFxuICAgIHBhaW50OiB7XG4gICAgICBcImZpbGwtY29sb3JcIjogXCIjZmZmZmM1XCIsXG4gICAgfSxcbiAgfSxcbiAge1xuICAgIGlkOiBcInJvYWRzXCIsXG4gICAgc291cmNlOiBcInRpbGVzXCIsXG4gICAgXCJzb3VyY2UtbGF5ZXJcIjogXCJyb2Fkc1wiLFxuICAgIHR5cGU6IFwibGluZVwiLFxuICAgIHBhaW50OiB7XG4gICAgICBcImxpbmUtY29sb3JcIjogXCIjZDNkM2QzXCIsXG4gICAgfSxcbiAgfSxcbl07XG4iLCIvKipcbiAqIE1hcExpYnJlIEdMIEpTXG4gKiBAbGljZW5zZSAzLUNsYXVzZSBCU0QuIEZ1bGwgdGV4dCBvZiBsaWNlbnNlOiBodHRwczovL2dpdGh1Yi5jb20vbWFwbGlicmUvbWFwbGlicmUtZ2wtanMvYmxvYi92NC43LjEvTElDRU5TRS50eHRcbiAqL1xuKGZ1bmN0aW9uIChnbG9iYWwsIGZhY3RvcnkpIHtcbnR5cGVvZiBleHBvcnRzID09PSAnb2JqZWN0JyAmJiB0eXBlb2YgbW9kdWxlICE9PSAndW5kZWZpbmVkJyA/IG1vZHVsZS5leHBvcnRzID0gZmFjdG9yeSgpIDpcbnR5cGVvZiBkZWZpbmUgPT09ICdmdW5jdGlvbicgJiYgZGVmaW5lLmFtZCA/IGRlZmluZShmYWN0b3J5KSA6XG4oZ2xvYmFsID0gdHlwZW9mIGdsb2JhbFRoaXMgIT09ICd1bmRlZmluZWQnID8gZ2xvYmFsVGhpcyA6IGdsb2JhbCB8fCBzZWxmLCBnbG9iYWwubWFwbGlicmVnbCA9IGZhY3RvcnkoKSk7XG59KSh0aGlzLCAoZnVuY3Rpb24gKCkgeyAndXNlIHN0cmljdCc7XG5cbi8qIGVzbGludC1kaXNhYmxlICovXG5cbnZhciBtYXBsaWJyZWdsID0ge307XG52YXIgbW9kdWxlcyA9IHt9O1xuZnVuY3Rpb24gZGVmaW5lKG1vZHVsZU5hbWUsIF9kZXBlbmRlbmNpZXMsIG1vZHVsZUZhY3RvcnkpIHtcbiAgICBtb2R1bGVzW21vZHVsZU5hbWVdID0gbW9kdWxlRmFjdG9yeTtcblxuICAgIC8vIHRvIGdldCB0aGUgbGlzdCBvZiBtb2R1bGVzIHNlZSBnZW5lcmF0ZWQgZGlzdC9tYXBsaWJyZS1nbC1kZXYuanMgZmlsZSAobG9vayBmb3IgYGRlZmluZShgIGNhbGxzKVxuICAgIGlmIChtb2R1bGVOYW1lICE9PSAnaW5kZXgnKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyB3ZSBhc3N1bWUgdGhhdCB3aGVuIGFuIGluZGV4IG1vZHVsZSBpcyBpbml0aWFsaXppbmcgdGhlbiBvdGhlciBtb2R1bGVzIGFyZSBsb2FkZWQgYWxyZWFkeVxuICAgIHZhciB3b3JrZXJCdW5kbGVTdHJpbmcgPSAndmFyIHNoYXJlZE1vZHVsZSA9IHt9OyAoJyArIG1vZHVsZXMuc2hhcmVkICsgJykoc2hhcmVkTW9kdWxlKTsgKCcgKyBtb2R1bGVzLndvcmtlciArICcpKHNoYXJlZE1vZHVsZSk7J1xuXG4gICAgdmFyIHNoYXJlZE1vZHVsZSA9IHt9O1xuICAgIC8vIHRoZSBvcmRlciBvZiBhcmd1bWVudHMgb2YgYSBtb2R1bGUgZmFjdG9yeSBkZXBlbmRzIG9uIHJvbGx1cCAoaXQgZGVjaWRlcyB3aG8gaXMgd2hvc2UgZGVwZW5kZW5jeSlcbiAgICAvLyB0byBjaGVjayB0aGUgY29ycmVjdCBvcmRlciwgc2VlIGRpc3QvbWFwbGlicmUtZ2wtZGV2LmpzIGZpbGUgKGxvb2sgZm9yIGBkZWZpbmUoYCBjYWxscylcbiAgICAvLyB3ZSBhc3N1bWUgdGhhdCBmb3Igb3VyIDMgY2h1bmtzIGl0IHdpbGwgZ2VuZXJhdGUgMyBtb2R1bGVzIGFuZCB0aGVpciBvcmRlciBpcyBwcmVkZWZpbmVkIGxpa2UgdGhlIGZvbGxvd2luZ1xuICAgIG1vZHVsZXMuc2hhcmVkKHNoYXJlZE1vZHVsZSk7XG4gICAgbW9kdWxlcy5pbmRleChtYXBsaWJyZWdsLCBzaGFyZWRNb2R1bGUpO1xuXG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIG1hcGxpYnJlZ2wuc2V0V29ya2VyVXJsKHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKG5ldyBCbG9iKFt3b3JrZXJCdW5kbGVTdHJpbmddLCB7IHR5cGU6ICd0ZXh0L2phdmFzY3JpcHQnIH0pKSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG1hcGxpYnJlZ2w7XG59O1xuXG5cblxuZGVmaW5lKFwic2hhcmVkXCIsW1wiZXhwb3J0c1wiXSwoZnVuY3Rpb24odCl7XCJ1c2Ugc3RyaWN0XCI7ZnVuY3Rpb24gZSh0LGUscixuKXtyZXR1cm4gbmV3KHJ8fChyPVByb21pc2UpKSgoZnVuY3Rpb24oaSxzKXtmdW5jdGlvbiBhKHQpe3RyeXtsKG4ubmV4dCh0KSk7fWNhdGNoKHQpe3ModCk7fX1mdW5jdGlvbiBvKHQpe3RyeXtsKG4udGhyb3codCkpO31jYXRjaCh0KXtzKHQpO319ZnVuY3Rpb24gbCh0KXt2YXIgZTt0LmRvbmU/aSh0LnZhbHVlKTooZT10LnZhbHVlLGUgaW5zdGFuY2VvZiByP2U6bmV3IHIoKGZ1bmN0aW9uKHQpe3QoZSk7fSkpKS50aGVuKGEsbyk7fWwoKG49bi5hcHBseSh0LGV8fFtdKSkubmV4dCgpKTt9KSl9ZnVuY3Rpb24gcih0KXtyZXR1cm4gdCYmdC5fX2VzTW9kdWxlJiZPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodCxcImRlZmF1bHRcIik/dC5kZWZhdWx0OnR9XCJmdW5jdGlvblwiPT10eXBlb2YgU3VwcHJlc3NlZEVycm9yJiZTdXBwcmVzc2VkRXJyb3I7dmFyIG49aTtmdW5jdGlvbiBpKHQsZSl7dGhpcy54PXQsdGhpcy55PWU7fWkucHJvdG90eXBlPXtjbG9uZTpmdW5jdGlvbigpe3JldHVybiBuZXcgaSh0aGlzLngsdGhpcy55KX0sYWRkOmZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLmNsb25lKCkuX2FkZCh0KX0sc3ViOmZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLmNsb25lKCkuX3N1Yih0KX0sbXVsdEJ5UG9pbnQ6ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuY2xvbmUoKS5fbXVsdEJ5UG9pbnQodCl9LGRpdkJ5UG9pbnQ6ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuY2xvbmUoKS5fZGl2QnlQb2ludCh0KX0sbXVsdDpmdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5jbG9uZSgpLl9tdWx0KHQpfSxkaXY6ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuY2xvbmUoKS5fZGl2KHQpfSxyb3RhdGU6ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuY2xvbmUoKS5fcm90YXRlKHQpfSxyb3RhdGVBcm91bmQ6ZnVuY3Rpb24odCxlKXtyZXR1cm4gdGhpcy5jbG9uZSgpLl9yb3RhdGVBcm91bmQodCxlKX0sbWF0TXVsdDpmdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5jbG9uZSgpLl9tYXRNdWx0KHQpfSx1bml0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuY2xvbmUoKS5fdW5pdCgpfSxwZXJwOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuY2xvbmUoKS5fcGVycCgpfSxyb3VuZDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmNsb25lKCkuX3JvdW5kKCl9LG1hZzpmdW5jdGlvbigpe3JldHVybiBNYXRoLnNxcnQodGhpcy54KnRoaXMueCt0aGlzLnkqdGhpcy55KX0sZXF1YWxzOmZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLng9PT10LngmJnRoaXMueT09PXQueX0sZGlzdDpmdW5jdGlvbih0KXtyZXR1cm4gTWF0aC5zcXJ0KHRoaXMuZGlzdFNxcih0KSl9LGRpc3RTcXI6ZnVuY3Rpb24odCl7dmFyIGU9dC54LXRoaXMueCxyPXQueS10aGlzLnk7cmV0dXJuIGUqZStyKnJ9LGFuZ2xlOmZ1bmN0aW9uKCl7cmV0dXJuIE1hdGguYXRhbjIodGhpcy55LHRoaXMueCl9LGFuZ2xlVG86ZnVuY3Rpb24odCl7cmV0dXJuIE1hdGguYXRhbjIodGhpcy55LXQueSx0aGlzLngtdC54KX0sYW5nbGVXaXRoOmZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLmFuZ2xlV2l0aFNlcCh0LngsdC55KX0sYW5nbGVXaXRoU2VwOmZ1bmN0aW9uKHQsZSl7cmV0dXJuIE1hdGguYXRhbjIodGhpcy54KmUtdGhpcy55KnQsdGhpcy54KnQrdGhpcy55KmUpfSxfbWF0TXVsdDpmdW5jdGlvbih0KXt2YXIgZT10WzJdKnRoaXMueCt0WzNdKnRoaXMueTtyZXR1cm4gdGhpcy54PXRbMF0qdGhpcy54K3RbMV0qdGhpcy55LHRoaXMueT1lLHRoaXN9LF9hZGQ6ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMueCs9dC54LHRoaXMueSs9dC55LHRoaXN9LF9zdWI6ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMueC09dC54LHRoaXMueS09dC55LHRoaXN9LF9tdWx0OmZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLngqPXQsdGhpcy55Kj10LHRoaXN9LF9kaXY6ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMueC89dCx0aGlzLnkvPXQsdGhpc30sX211bHRCeVBvaW50OmZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLngqPXQueCx0aGlzLnkqPXQueSx0aGlzfSxfZGl2QnlQb2ludDpmdW5jdGlvbih0KXtyZXR1cm4gdGhpcy54Lz10LngsdGhpcy55Lz10LnksdGhpc30sX3VuaXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fZGl2KHRoaXMubWFnKCkpLHRoaXN9LF9wZXJwOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy55O3JldHVybiB0aGlzLnk9dGhpcy54LHRoaXMueD0tdCx0aGlzfSxfcm90YXRlOmZ1bmN0aW9uKHQpe3ZhciBlPU1hdGguY29zKHQpLHI9TWF0aC5zaW4odCksbj1yKnRoaXMueCtlKnRoaXMueTtyZXR1cm4gdGhpcy54PWUqdGhpcy54LXIqdGhpcy55LHRoaXMueT1uLHRoaXN9LF9yb3RhdGVBcm91bmQ6ZnVuY3Rpb24odCxlKXt2YXIgcj1NYXRoLmNvcyh0KSxuPU1hdGguc2luKHQpLGk9ZS55K24qKHRoaXMueC1lLngpK3IqKHRoaXMueS1lLnkpO3JldHVybiB0aGlzLng9ZS54K3IqKHRoaXMueC1lLngpLW4qKHRoaXMueS1lLnkpLHRoaXMueT1pLHRoaXN9LF9yb3VuZDpmdW5jdGlvbigpe3JldHVybiB0aGlzLng9TWF0aC5yb3VuZCh0aGlzLngpLHRoaXMueT1NYXRoLnJvdW5kKHRoaXMueSksdGhpc319LGkuY29udmVydD1mdW5jdGlvbih0KXtyZXR1cm4gdCBpbnN0YW5jZW9mIGk/dDpBcnJheS5pc0FycmF5KHQpP25ldyBpKHRbMF0sdFsxXSk6dH07dmFyIHM9cihuKSxhPW87ZnVuY3Rpb24gbyh0LGUscixuKXt0aGlzLmN4PTMqdCx0aGlzLmJ4PTMqKHItdCktdGhpcy5jeCx0aGlzLmF4PTEtdGhpcy5jeC10aGlzLmJ4LHRoaXMuY3k9MyplLHRoaXMuYnk9Myoobi1lKS10aGlzLmN5LHRoaXMuYXk9MS10aGlzLmN5LXRoaXMuYnksdGhpcy5wMXg9dCx0aGlzLnAxeT1lLHRoaXMucDJ4PXIsdGhpcy5wMnk9bjt9by5wcm90b3R5cGU9e3NhbXBsZUN1cnZlWDpmdW5jdGlvbih0KXtyZXR1cm4gKCh0aGlzLmF4KnQrdGhpcy5ieCkqdCt0aGlzLmN4KSp0fSxzYW1wbGVDdXJ2ZVk6ZnVuY3Rpb24odCl7cmV0dXJuICgodGhpcy5heSp0K3RoaXMuYnkpKnQrdGhpcy5jeSkqdH0sc2FtcGxlQ3VydmVEZXJpdmF0aXZlWDpmdW5jdGlvbih0KXtyZXR1cm4gKDMqdGhpcy5heCp0KzIqdGhpcy5ieCkqdCt0aGlzLmN4fSxzb2x2ZUN1cnZlWDpmdW5jdGlvbih0LGUpe2lmKHZvaWQgMD09PWUmJihlPTFlLTYpLHQ8MClyZXR1cm4gMDtpZih0PjEpcmV0dXJuIDE7Zm9yKHZhciByPXQsbj0wO248ODtuKyspe3ZhciBpPXRoaXMuc2FtcGxlQ3VydmVYKHIpLXQ7aWYoTWF0aC5hYnMoaSk8ZSlyZXR1cm4gcjt2YXIgcz10aGlzLnNhbXBsZUN1cnZlRGVyaXZhdGl2ZVgocik7aWYoTWF0aC5hYnMocyk8MWUtNilicmVhaztyLT1pL3M7fXZhciBhPTAsbz0xO2ZvcihyPXQsbj0wO248MjAmJihpPXRoaXMuc2FtcGxlQ3VydmVYKHIpLCEoTWF0aC5hYnMoaS10KTxlKSk7bisrKXQ+aT9hPXI6bz1yLHI9LjUqKG8tYSkrYTtyZXR1cm4gcn0sc29sdmU6ZnVuY3Rpb24odCxlKXtyZXR1cm4gdGhpcy5zYW1wbGVDdXJ2ZVkodGhpcy5zb2x2ZUN1cnZlWCh0LGUpKX19O3ZhciBsPXIoYSk7bGV0IHUsYztmdW5jdGlvbiBoKCl7cmV0dXJuIG51bGw9PXUmJih1PVwidW5kZWZpbmVkXCIhPXR5cGVvZiBPZmZzY3JlZW5DYW52YXMmJm5ldyBPZmZzY3JlZW5DYW52YXMoMSwxKS5nZXRDb250ZXh0KFwiMmRcIikmJlwiZnVuY3Rpb25cIj09dHlwZW9mIGNyZWF0ZUltYWdlQml0bWFwKSx1fWZ1bmN0aW9uIHAoKXtpZihudWxsPT1jJiYoYz0hMSxoKCkpKXtjb25zdCB0PTUsZT1uZXcgT2Zmc2NyZWVuQ2FudmFzKHQsdCkuZ2V0Q29udGV4dChcIjJkXCIse3dpbGxSZWFkRnJlcXVlbnRseTohMH0pO2lmKGUpe2ZvcihsZXQgcj0wO3I8dCp0O3IrKyl7Y29uc3Qgbj00KnI7ZS5maWxsU3R5bGU9YHJnYigke259LCR7bisxfSwke24rMn0pYCxlLmZpbGxSZWN0KHIldCxNYXRoLmZsb29yKHIvdCksMSwxKTt9Y29uc3Qgcj1lLmdldEltYWdlRGF0YSgwLDAsdCx0KS5kYXRhO2ZvcihsZXQgZT0wO2U8dCp0KjQ7ZSsrKWlmKGUlNCE9MyYmcltlXSE9PWUpe2M9ITA7YnJlYWt9fX1yZXR1cm4gY3x8ITF9ZnVuY3Rpb24gZih0LGUscixuKXtjb25zdCBpPW5ldyBsKHQsZSxyLG4pO3JldHVybiB0PT5pLnNvbHZlKHQpfWNvbnN0IGQ9ZiguMjUsLjEsLjI1LDEpO2Z1bmN0aW9uIHkodCxlLHIpe3JldHVybiBNYXRoLm1pbihyLE1hdGgubWF4KGUsdCkpfWZ1bmN0aW9uIG0odCxlLHIpe2NvbnN0IG49ci1lLGk9KCh0LWUpJW4rbiklbitlO3JldHVybiBpPT09ZT9yOml9ZnVuY3Rpb24gZyh0LC4uLmUpe2Zvcihjb25zdCByIG9mIGUpZm9yKGNvbnN0IGUgaW4gcil0W2VdPXJbZV07cmV0dXJuIHR9bGV0IHg9MTtmdW5jdGlvbiB2KHQsZSxyKXtjb25zdCBuPXt9O2Zvcihjb25zdCByIGluIHQpbltyXT1lLmNhbGwodGhpcyx0W3JdLHIsdCk7cmV0dXJuIG59ZnVuY3Rpb24gYih0LGUscil7Y29uc3Qgbj17fTtmb3IoY29uc3QgciBpbiB0KWUuY2FsbCh0aGlzLHRbcl0scix0KSYmKG5bcl09dFtyXSk7cmV0dXJuIG59ZnVuY3Rpb24gdyh0KXtyZXR1cm4gQXJyYXkuaXNBcnJheSh0KT90Lm1hcCh3KTpcIm9iamVjdFwiPT10eXBlb2YgdCYmdD92KHQsdyk6dH1jb25zdCBfPXt9O2Z1bmN0aW9uIEEodCl7X1t0XXx8KFwidW5kZWZpbmVkXCIhPXR5cGVvZiBjb25zb2xlJiZjb25zb2xlLndhcm4odCksX1t0XT0hMCk7fWZ1bmN0aW9uIFModCxlLHIpe3JldHVybiAoci55LXQueSkqKGUueC10LngpPihlLnktdC55KSooci54LXQueCl9ZnVuY3Rpb24gayh0KXtyZXR1cm4gXCJ1bmRlZmluZWRcIiE9dHlwZW9mIFdvcmtlckdsb2JhbFNjb3BlJiZ2b2lkIDAhPT10JiZ0IGluc3RhbmNlb2YgV29ya2VyR2xvYmFsU2NvcGV9bGV0IE09bnVsbDtmdW5jdGlvbiBJKHQpe3JldHVybiBcInVuZGVmaW5lZFwiIT10eXBlb2YgSW1hZ2VCaXRtYXAmJnQgaW5zdGFuY2VvZiBJbWFnZUJpdG1hcH1jb25zdCB6PVwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFBRUFBQUFCQ0FZQUFBQWZGY1NKQUFBQUMwbEVRVlFZVjJOZ0FBSUFBQVVBQWFyVnlGRUFBQUFBU1VWT1JLNUNZSUk9XCI7ZnVuY3Rpb24gUCh0LHIsbixpLHMpe3JldHVybiBlKHRoaXMsdm9pZCAwLHZvaWQgMCwoZnVuY3Rpb24qKCl7aWYoXCJ1bmRlZmluZWRcIj09dHlwZW9mIFZpZGVvRnJhbWUpdGhyb3cgbmV3IEVycm9yKFwiVmlkZW9GcmFtZSBub3Qgc3VwcG9ydGVkXCIpO2NvbnN0IGU9bmV3IFZpZGVvRnJhbWUodCx7dGltZXN0YW1wOjB9KTt0cnl7Y29uc3QgYT1udWxsPT1lP3ZvaWQgMDplLmZvcm1hdDtpZighYXx8IWEuc3RhcnRzV2l0aChcIkJHUlwiKSYmIWEuc3RhcnRzV2l0aChcIlJHQlwiKSl0aHJvdyBuZXcgRXJyb3IoYFVucmVjb2duaXplZCBmb3JtYXQgJHthfWApO2NvbnN0IG89YS5zdGFydHNXaXRoKFwiQkdSXCIpLGw9bmV3IFVpbnQ4Q2xhbXBlZEFycmF5KGkqcyo0KTtpZih5aWVsZCBlLmNvcHlUbyhsLGZ1bmN0aW9uKHQsZSxyLG4saSl7Y29uc3Qgcz00Kk1hdGgubWF4KC1lLDApLGE9KE1hdGgubWF4KDAsciktcikqbio0K3Msbz00Km4sbD1NYXRoLm1heCgwLGUpLHU9TWF0aC5tYXgoMCxyKTtyZXR1cm4ge3JlY3Q6e3g6bCx5OnUsd2lkdGg6TWF0aC5taW4odC53aWR0aCxlK24pLWwsaGVpZ2h0Ok1hdGgubWluKHQuaGVpZ2h0LHIraSktdX0sbGF5b3V0Olt7b2Zmc2V0OmEsc3RyaWRlOm99XX19KHQscixuLGkscykpLG8pZm9yKGxldCB0PTA7dDxsLmxlbmd0aDt0Kz00KXtjb25zdCBlPWxbdF07bFt0XT1sW3QrMl0sbFt0KzJdPWU7fXJldHVybiBsfWZpbmFsbHl7ZS5jbG9zZSgpO319KSl9bGV0IEMsQjtjb25zdCBWPVwiQWJvcnRFcnJvclwiO2Z1bmN0aW9uIEUoKXtyZXR1cm4gbmV3IEVycm9yKFYpfWNvbnN0IEY9e01BWF9QQVJBTExFTF9JTUFHRV9SRVFVRVNUUzoxNixNQVhfUEFSQUxMRUxfSU1BR0VfUkVRVUVTVFNfUEVSX0ZSQU1FOjgsTUFYX1RJTEVfQ0FDSEVfWk9PTV9MRVZFTFM6NSxSRUdJU1RFUkVEX1BST1RPQ09MUzp7fSxXT1JLRVJfVVJMOlwiXCJ9O2Z1bmN0aW9uIFQodCl7cmV0dXJuIEYuUkVHSVNURVJFRF9QUk9UT0NPTFNbdC5zdWJzdHJpbmcoMCx0LmluZGV4T2YoXCI6Ly9cIikpXX1jb25zdCAkPVwiZ2xvYmFsLWRpc3BhdGNoZXJcIjtjbGFzcyBMIGV4dGVuZHMgRXJyb3J7Y29uc3RydWN0b3IodCxlLHIsbil7c3VwZXIoYEFKQVhFcnJvcjogJHtlfSAoJHt0fSk6ICR7cn1gKSx0aGlzLnN0YXR1cz10LHRoaXMuc3RhdHVzVGV4dD1lLHRoaXMudXJsPXIsdGhpcy5ib2R5PW47fX1jb25zdCBEPSgpPT5rKHNlbGYpP3NlbGYud29ya2VyJiZzZWxmLndvcmtlci5yZWZlcnJlcjooXCJibG9iOlwiPT09d2luZG93LmxvY2F0aW9uLnByb3RvY29sP3dpbmRvdy5wYXJlbnQ6d2luZG93KS5sb2NhdGlvbi5ocmVmLE89ZnVuY3Rpb24odCxyKXtpZigvOlxcL1xcLy8udGVzdCh0LnVybCkmJiEvXmh0dHBzPzp8XmZpbGU6Ly50ZXN0KHQudXJsKSl7Y29uc3QgZT1UKHQudXJsKTtpZihlKXJldHVybiBlKHQscik7aWYoayhzZWxmKSYmc2VsZi53b3JrZXImJnNlbGYud29ya2VyLmFjdG9yKXJldHVybiBzZWxmLndvcmtlci5hY3Rvci5zZW5kQXN5bmMoe3R5cGU6XCJHUlwiLGRhdGE6dCx0YXJnZXRNYXBJZDokfSxyKX1pZighKC9eZmlsZTovLnRlc3Qobj10LnVybCl8fC9eZmlsZTovLnRlc3QoRCgpKSYmIS9eXFx3KzovLnRlc3QobikpKXtpZihmZXRjaCYmUmVxdWVzdCYmQWJvcnRDb250cm9sbGVyJiZPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoUmVxdWVzdC5wcm90b3R5cGUsXCJzaWduYWxcIikpcmV0dXJuIGZ1bmN0aW9uKHQscil7cmV0dXJuIGUodGhpcyx2b2lkIDAsdm9pZCAwLChmdW5jdGlvbiooKXtjb25zdCBlPW5ldyBSZXF1ZXN0KHQudXJsLHttZXRob2Q6dC5tZXRob2R8fFwiR0VUXCIsYm9keTp0LmJvZHksY3JlZGVudGlhbHM6dC5jcmVkZW50aWFscyxoZWFkZXJzOnQuaGVhZGVycyxjYWNoZTp0LmNhY2hlLHJlZmVycmVyOkQoKSxzaWduYWw6ci5zaWduYWx9KTtcImpzb25cIiE9PXQudHlwZXx8ZS5oZWFkZXJzLmhhcyhcIkFjY2VwdFwiKXx8ZS5oZWFkZXJzLnNldChcIkFjY2VwdFwiLFwiYXBwbGljYXRpb24vanNvblwiKTtjb25zdCBuPXlpZWxkIGZldGNoKGUpO2lmKCFuLm9rKXtjb25zdCBlPXlpZWxkIG4uYmxvYigpO3Rocm93IG5ldyBMKG4uc3RhdHVzLG4uc3RhdHVzVGV4dCx0LnVybCxlKX1sZXQgaTtpPVwiYXJyYXlCdWZmZXJcIj09PXQudHlwZXx8XCJpbWFnZVwiPT09dC50eXBlP24uYXJyYXlCdWZmZXIoKTpcImpzb25cIj09PXQudHlwZT9uLmpzb24oKTpuLnRleHQoKTtjb25zdCBzPXlpZWxkIGk7aWYoci5zaWduYWwuYWJvcnRlZCl0aHJvdyBFKCk7cmV0dXJuIHtkYXRhOnMsY2FjaGVDb250cm9sOm4uaGVhZGVycy5nZXQoXCJDYWNoZS1Db250cm9sXCIpLGV4cGlyZXM6bi5oZWFkZXJzLmdldChcIkV4cGlyZXNcIil9fSkpfSh0LHIpO2lmKGsoc2VsZikmJnNlbGYud29ya2VyJiZzZWxmLndvcmtlci5hY3RvcilyZXR1cm4gc2VsZi53b3JrZXIuYWN0b3Iuc2VuZEFzeW5jKHt0eXBlOlwiR1JcIixkYXRhOnQsbXVzdFF1ZXVlOiEwLHRhcmdldE1hcElkOiR9LHIpfXZhciBuO3JldHVybiBmdW5jdGlvbih0LGUpe3JldHVybiBuZXcgUHJvbWlzZSgoKHIsbik9Pnt2YXIgaTtjb25zdCBzPW5ldyBYTUxIdHRwUmVxdWVzdDtzLm9wZW4odC5tZXRob2R8fFwiR0VUXCIsdC51cmwsITApLFwiYXJyYXlCdWZmZXJcIiE9PXQudHlwZSYmXCJpbWFnZVwiIT09dC50eXBlfHwocy5yZXNwb25zZVR5cGU9XCJhcnJheWJ1ZmZlclwiKTtmb3IoY29uc3QgZSBpbiB0LmhlYWRlcnMpcy5zZXRSZXF1ZXN0SGVhZGVyKGUsdC5oZWFkZXJzW2VdKTtcImpzb25cIj09PXQudHlwZSYmKHMucmVzcG9uc2VUeXBlPVwidGV4dFwiLChudWxsPT09KGk9dC5oZWFkZXJzKXx8dm9pZCAwPT09aT92b2lkIDA6aS5BY2NlcHQpfHxzLnNldFJlcXVlc3RIZWFkZXIoXCJBY2NlcHRcIixcImFwcGxpY2F0aW9uL2pzb25cIikpLHMud2l0aENyZWRlbnRpYWxzPVwiaW5jbHVkZVwiPT09dC5jcmVkZW50aWFscyxzLm9uZXJyb3I9KCk9PntuKG5ldyBFcnJvcihzLnN0YXR1c1RleHQpKTt9LHMub25sb2FkPSgpPT57aWYoIWUuc2lnbmFsLmFib3J0ZWQpaWYoKHMuc3RhdHVzPj0yMDAmJnMuc3RhdHVzPDMwMHx8MD09PXMuc3RhdHVzKSYmbnVsbCE9PXMucmVzcG9uc2Upe2xldCBlPXMucmVzcG9uc2U7aWYoXCJqc29uXCI9PT10LnR5cGUpdHJ5e2U9SlNPTi5wYXJzZShzLnJlc3BvbnNlKTt9Y2F0Y2godCl7cmV0dXJuIHZvaWQgbih0KX1yKHtkYXRhOmUsY2FjaGVDb250cm9sOnMuZ2V0UmVzcG9uc2VIZWFkZXIoXCJDYWNoZS1Db250cm9sXCIpLGV4cGlyZXM6cy5nZXRSZXNwb25zZUhlYWRlcihcIkV4cGlyZXNcIil9KTt9ZWxzZSB7Y29uc3QgZT1uZXcgQmxvYihbcy5yZXNwb25zZV0se3R5cGU6cy5nZXRSZXNwb25zZUhlYWRlcihcIkNvbnRlbnQtVHlwZVwiKX0pO24obmV3IEwocy5zdGF0dXMscy5zdGF0dXNUZXh0LHQudXJsLGUpKTt9fSxlLnNpZ25hbC5hZGRFdmVudExpc3RlbmVyKFwiYWJvcnRcIiwoKCk9PntzLmFib3J0KCksbihFKCkpO30pKSxzLnNlbmQodC5ib2R5KTt9KSl9KHQscil9O2Z1bmN0aW9uIGoodCl7aWYoIXR8fHQuaW5kZXhPZihcIjovL1wiKTw9MHx8MD09PXQuaW5kZXhPZihcImRhdGE6aW1hZ2UvXCIpfHwwPT09dC5pbmRleE9mKFwiYmxvYjpcIikpcmV0dXJuICEwO2NvbnN0IGU9bmV3IFVSTCh0KSxyPXdpbmRvdy5sb2NhdGlvbjtyZXR1cm4gZS5wcm90b2NvbD09PXIucHJvdG9jb2wmJmUuaG9zdD09PXIuaG9zdH1mdW5jdGlvbiBSKHQsZSxyKXtyW3RdJiYtMSE9PXJbdF0uaW5kZXhPZihlKXx8KHJbdF09clt0XXx8W10sclt0XS5wdXNoKGUpKTt9ZnVuY3Rpb24gVSh0LGUscil7aWYociYmclt0XSl7Y29uc3Qgbj1yW3RdLmluZGV4T2YoZSk7LTEhPT1uJiZyW3RdLnNwbGljZShuLDEpO319Y2xhc3MgcXtjb25zdHJ1Y3Rvcih0LGU9e30pe2codGhpcyxlKSx0aGlzLnR5cGU9dDt9fWNsYXNzIE4gZXh0ZW5kcyBxe2NvbnN0cnVjdG9yKHQsZT17fSl7c3VwZXIoXCJlcnJvclwiLGcoe2Vycm9yOnR9LGUpKTt9fWNsYXNzIFp7b24odCxlKXtyZXR1cm4gdGhpcy5fbGlzdGVuZXJzPXRoaXMuX2xpc3RlbmVyc3x8e30sUih0LGUsdGhpcy5fbGlzdGVuZXJzKSx0aGlzfW9mZih0LGUpe3JldHVybiBVKHQsZSx0aGlzLl9saXN0ZW5lcnMpLFUodCxlLHRoaXMuX29uZVRpbWVMaXN0ZW5lcnMpLHRoaXN9b25jZSh0LGUpe3JldHVybiBlPyh0aGlzLl9vbmVUaW1lTGlzdGVuZXJzPXRoaXMuX29uZVRpbWVMaXN0ZW5lcnN8fHt9LFIodCxlLHRoaXMuX29uZVRpbWVMaXN0ZW5lcnMpLHRoaXMpOm5ldyBQcm9taXNlKChlPT50aGlzLm9uY2UodCxlKSkpfWZpcmUodCxlKXtcInN0cmluZ1wiPT10eXBlb2YgdCYmKHQ9bmV3IHEodCxlfHx7fSkpO2NvbnN0IHI9dC50eXBlO2lmKHRoaXMubGlzdGVucyhyKSl7dC50YXJnZXQ9dGhpcztjb25zdCBlPXRoaXMuX2xpc3RlbmVycyYmdGhpcy5fbGlzdGVuZXJzW3JdP3RoaXMuX2xpc3RlbmVyc1tyXS5zbGljZSgpOltdO2Zvcihjb25zdCByIG9mIGUpci5jYWxsKHRoaXMsdCk7Y29uc3Qgbj10aGlzLl9vbmVUaW1lTGlzdGVuZXJzJiZ0aGlzLl9vbmVUaW1lTGlzdGVuZXJzW3JdP3RoaXMuX29uZVRpbWVMaXN0ZW5lcnNbcl0uc2xpY2UoKTpbXTtmb3IoY29uc3QgZSBvZiBuKVUocixlLHRoaXMuX29uZVRpbWVMaXN0ZW5lcnMpLGUuY2FsbCh0aGlzLHQpO2NvbnN0IGk9dGhpcy5fZXZlbnRlZFBhcmVudDtpJiYoZyh0LFwiZnVuY3Rpb25cIj09dHlwZW9mIHRoaXMuX2V2ZW50ZWRQYXJlbnREYXRhP3RoaXMuX2V2ZW50ZWRQYXJlbnREYXRhKCk6dGhpcy5fZXZlbnRlZFBhcmVudERhdGEpLGkuZmlyZSh0KSk7fWVsc2UgdCBpbnN0YW5jZW9mIE4mJmNvbnNvbGUuZXJyb3IodC5lcnJvcik7cmV0dXJuIHRoaXN9bGlzdGVucyh0KXtyZXR1cm4gdGhpcy5fbGlzdGVuZXJzJiZ0aGlzLl9saXN0ZW5lcnNbdF0mJnRoaXMuX2xpc3RlbmVyc1t0XS5sZW5ndGg+MHx8dGhpcy5fb25lVGltZUxpc3RlbmVycyYmdGhpcy5fb25lVGltZUxpc3RlbmVyc1t0XSYmdGhpcy5fb25lVGltZUxpc3RlbmVyc1t0XS5sZW5ndGg+MHx8dGhpcy5fZXZlbnRlZFBhcmVudCYmdGhpcy5fZXZlbnRlZFBhcmVudC5saXN0ZW5zKHQpfXNldEV2ZW50ZWRQYXJlbnQodCxlKXtyZXR1cm4gdGhpcy5fZXZlbnRlZFBhcmVudD10LHRoaXMuX2V2ZW50ZWRQYXJlbnREYXRhPWUsdGhpc319dmFyIEc9eyR2ZXJzaW9uOjgsJHJvb3Q6e3ZlcnNpb246e3JlcXVpcmVkOiEwLHR5cGU6XCJlbnVtXCIsdmFsdWVzOls4XX0sbmFtZTp7dHlwZTpcInN0cmluZ1wifSxtZXRhZGF0YTp7dHlwZTpcIipcIn0sY2VudGVyOnt0eXBlOlwiYXJyYXlcIix2YWx1ZTpcIm51bWJlclwifSx6b29tOnt0eXBlOlwibnVtYmVyXCJ9LGJlYXJpbmc6e3R5cGU6XCJudW1iZXJcIixkZWZhdWx0OjAscGVyaW9kOjM2MCx1bml0czpcImRlZ3JlZXNcIn0scGl0Y2g6e3R5cGU6XCJudW1iZXJcIixkZWZhdWx0OjAsdW5pdHM6XCJkZWdyZWVzXCJ9LGxpZ2h0Ont0eXBlOlwibGlnaHRcIn0sc2t5Ont0eXBlOlwic2t5XCJ9LHByb2plY3Rpb246e3R5cGU6XCJwcm9qZWN0aW9uXCJ9LHRlcnJhaW46e3R5cGU6XCJ0ZXJyYWluXCJ9LHNvdXJjZXM6e3JlcXVpcmVkOiEwLHR5cGU6XCJzb3VyY2VzXCJ9LHNwcml0ZTp7dHlwZTpcInNwcml0ZVwifSxnbHlwaHM6e3R5cGU6XCJzdHJpbmdcIn0sdHJhbnNpdGlvbjp7dHlwZTpcInRyYW5zaXRpb25cIn0sbGF5ZXJzOntyZXF1aXJlZDohMCx0eXBlOlwiYXJyYXlcIix2YWx1ZTpcImxheWVyXCJ9fSxzb3VyY2VzOntcIipcIjp7dHlwZTpcInNvdXJjZVwifX0sc291cmNlOltcInNvdXJjZV92ZWN0b3JcIixcInNvdXJjZV9yYXN0ZXJcIixcInNvdXJjZV9yYXN0ZXJfZGVtXCIsXCJzb3VyY2VfZ2VvanNvblwiLFwic291cmNlX3ZpZGVvXCIsXCJzb3VyY2VfaW1hZ2VcIl0sc291cmNlX3ZlY3Rvcjp7dHlwZTp7cmVxdWlyZWQ6ITAsdHlwZTpcImVudW1cIix2YWx1ZXM6e3ZlY3Rvcjp7fX19LHVybDp7dHlwZTpcInN0cmluZ1wifSx0aWxlczp7dHlwZTpcImFycmF5XCIsdmFsdWU6XCJzdHJpbmdcIn0sYm91bmRzOnt0eXBlOlwiYXJyYXlcIix2YWx1ZTpcIm51bWJlclwiLGxlbmd0aDo0LGRlZmF1bHQ6Wy0xODAsLTg1LjA1MTEyOSwxODAsODUuMDUxMTI5XX0sc2NoZW1lOnt0eXBlOlwiZW51bVwiLHZhbHVlczp7eHl6Ont9LHRtczp7fX0sZGVmYXVsdDpcInh5elwifSxtaW56b29tOnt0eXBlOlwibnVtYmVyXCIsZGVmYXVsdDowfSxtYXh6b29tOnt0eXBlOlwibnVtYmVyXCIsZGVmYXVsdDoyMn0sYXR0cmlidXRpb246e3R5cGU6XCJzdHJpbmdcIn0scHJvbW90ZUlkOnt0eXBlOlwicHJvbW90ZUlkXCJ9LHZvbGF0aWxlOnt0eXBlOlwiYm9vbGVhblwiLGRlZmF1bHQ6ITF9LFwiKlwiOnt0eXBlOlwiKlwifX0sc291cmNlX3Jhc3Rlcjp7dHlwZTp7cmVxdWlyZWQ6ITAsdHlwZTpcImVudW1cIix2YWx1ZXM6e3Jhc3Rlcjp7fX19LHVybDp7dHlwZTpcInN0cmluZ1wifSx0aWxlczp7dHlwZTpcImFycmF5XCIsdmFsdWU6XCJzdHJpbmdcIn0sYm91bmRzOnt0eXBlOlwiYXJyYXlcIix2YWx1ZTpcIm51bWJlclwiLGxlbmd0aDo0LGRlZmF1bHQ6Wy0xODAsLTg1LjA1MTEyOSwxODAsODUuMDUxMTI5XX0sbWluem9vbTp7dHlwZTpcIm51bWJlclwiLGRlZmF1bHQ6MH0sbWF4em9vbTp7dHlwZTpcIm51bWJlclwiLGRlZmF1bHQ6MjJ9LHRpbGVTaXplOnt0eXBlOlwibnVtYmVyXCIsZGVmYXVsdDo1MTIsdW5pdHM6XCJwaXhlbHNcIn0sc2NoZW1lOnt0eXBlOlwiZW51bVwiLHZhbHVlczp7eHl6Ont9LHRtczp7fX0sZGVmYXVsdDpcInh5elwifSxhdHRyaWJ1dGlvbjp7dHlwZTpcInN0cmluZ1wifSx2b2xhdGlsZTp7dHlwZTpcImJvb2xlYW5cIixkZWZhdWx0OiExfSxcIipcIjp7dHlwZTpcIipcIn19LHNvdXJjZV9yYXN0ZXJfZGVtOnt0eXBlOntyZXF1aXJlZDohMCx0eXBlOlwiZW51bVwiLHZhbHVlczp7XCJyYXN0ZXItZGVtXCI6e319fSx1cmw6e3R5cGU6XCJzdHJpbmdcIn0sdGlsZXM6e3R5cGU6XCJhcnJheVwiLHZhbHVlOlwic3RyaW5nXCJ9LGJvdW5kczp7dHlwZTpcImFycmF5XCIsdmFsdWU6XCJudW1iZXJcIixsZW5ndGg6NCxkZWZhdWx0OlstMTgwLC04NS4wNTExMjksMTgwLDg1LjA1MTEyOV19LG1pbnpvb206e3R5cGU6XCJudW1iZXJcIixkZWZhdWx0OjB9LG1heHpvb206e3R5cGU6XCJudW1iZXJcIixkZWZhdWx0OjIyfSx0aWxlU2l6ZTp7dHlwZTpcIm51bWJlclwiLGRlZmF1bHQ6NTEyLHVuaXRzOlwicGl4ZWxzXCJ9LGF0dHJpYnV0aW9uOnt0eXBlOlwic3RyaW5nXCJ9LGVuY29kaW5nOnt0eXBlOlwiZW51bVwiLHZhbHVlczp7dGVycmFyaXVtOnt9LG1hcGJveDp7fSxjdXN0b206e319LGRlZmF1bHQ6XCJtYXBib3hcIn0scmVkRmFjdG9yOnt0eXBlOlwibnVtYmVyXCIsZGVmYXVsdDoxfSxibHVlRmFjdG9yOnt0eXBlOlwibnVtYmVyXCIsZGVmYXVsdDoxfSxncmVlbkZhY3Rvcjp7dHlwZTpcIm51bWJlclwiLGRlZmF1bHQ6MX0sYmFzZVNoaWZ0Ont0eXBlOlwibnVtYmVyXCIsZGVmYXVsdDowfSx2b2xhdGlsZTp7dHlwZTpcImJvb2xlYW5cIixkZWZhdWx0OiExfSxcIipcIjp7dHlwZTpcIipcIn19LHNvdXJjZV9nZW9qc29uOnt0eXBlOntyZXF1aXJlZDohMCx0eXBlOlwiZW51bVwiLHZhbHVlczp7Z2VvanNvbjp7fX19LGRhdGE6e3JlcXVpcmVkOiEwLHR5cGU6XCIqXCJ9LG1heHpvb206e3R5cGU6XCJudW1iZXJcIixkZWZhdWx0OjE4fSxhdHRyaWJ1dGlvbjp7dHlwZTpcInN0cmluZ1wifSxidWZmZXI6e3R5cGU6XCJudW1iZXJcIixkZWZhdWx0OjEyOCxtYXhpbXVtOjUxMixtaW5pbXVtOjB9LGZpbHRlcjp7dHlwZTpcIipcIn0sdG9sZXJhbmNlOnt0eXBlOlwibnVtYmVyXCIsZGVmYXVsdDouMzc1fSxjbHVzdGVyOnt0eXBlOlwiYm9vbGVhblwiLGRlZmF1bHQ6ITF9LGNsdXN0ZXJSYWRpdXM6e3R5cGU6XCJudW1iZXJcIixkZWZhdWx0OjUwLG1pbmltdW06MH0sY2x1c3Rlck1heFpvb206e3R5cGU6XCJudW1iZXJcIn0sY2x1c3Rlck1pblBvaW50czp7dHlwZTpcIm51bWJlclwifSxjbHVzdGVyUHJvcGVydGllczp7dHlwZTpcIipcIn0sbGluZU1ldHJpY3M6e3R5cGU6XCJib29sZWFuXCIsZGVmYXVsdDohMX0sZ2VuZXJhdGVJZDp7dHlwZTpcImJvb2xlYW5cIixkZWZhdWx0OiExfSxwcm9tb3RlSWQ6e3R5cGU6XCJwcm9tb3RlSWRcIn19LHNvdXJjZV92aWRlbzp7dHlwZTp7cmVxdWlyZWQ6ITAsdHlwZTpcImVudW1cIix2YWx1ZXM6e3ZpZGVvOnt9fX0sdXJsczp7cmVxdWlyZWQ6ITAsdHlwZTpcImFycmF5XCIsdmFsdWU6XCJzdHJpbmdcIn0sY29vcmRpbmF0ZXM6e3JlcXVpcmVkOiEwLHR5cGU6XCJhcnJheVwiLGxlbmd0aDo0LHZhbHVlOnt0eXBlOlwiYXJyYXlcIixsZW5ndGg6Mix2YWx1ZTpcIm51bWJlclwifX19LHNvdXJjZV9pbWFnZTp7dHlwZTp7cmVxdWlyZWQ6ITAsdHlwZTpcImVudW1cIix2YWx1ZXM6e2ltYWdlOnt9fX0sdXJsOntyZXF1aXJlZDohMCx0eXBlOlwic3RyaW5nXCJ9LGNvb3JkaW5hdGVzOntyZXF1aXJlZDohMCx0eXBlOlwiYXJyYXlcIixsZW5ndGg6NCx2YWx1ZTp7dHlwZTpcImFycmF5XCIsbGVuZ3RoOjIsdmFsdWU6XCJudW1iZXJcIn19fSxsYXllcjp7aWQ6e3R5cGU6XCJzdHJpbmdcIixyZXF1aXJlZDohMH0sdHlwZTp7dHlwZTpcImVudW1cIix2YWx1ZXM6e2ZpbGw6e30sbGluZTp7fSxzeW1ib2w6e30sY2lyY2xlOnt9LGhlYXRtYXA6e30sXCJmaWxsLWV4dHJ1c2lvblwiOnt9LHJhc3Rlcjp7fSxoaWxsc2hhZGU6e30sYmFja2dyb3VuZDp7fX0scmVxdWlyZWQ6ITB9LG1ldGFkYXRhOnt0eXBlOlwiKlwifSxzb3VyY2U6e3R5cGU6XCJzdHJpbmdcIn0sXCJzb3VyY2UtbGF5ZXJcIjp7dHlwZTpcInN0cmluZ1wifSxtaW56b29tOnt0eXBlOlwibnVtYmVyXCIsbWluaW11bTowLG1heGltdW06MjR9LG1heHpvb206e3R5cGU6XCJudW1iZXJcIixtaW5pbXVtOjAsbWF4aW11bToyNH0sZmlsdGVyOnt0eXBlOlwiZmlsdGVyXCJ9LGxheW91dDp7dHlwZTpcImxheW91dFwifSxwYWludDp7dHlwZTpcInBhaW50XCJ9fSxsYXlvdXQ6W1wibGF5b3V0X2ZpbGxcIixcImxheW91dF9saW5lXCIsXCJsYXlvdXRfY2lyY2xlXCIsXCJsYXlvdXRfaGVhdG1hcFwiLFwibGF5b3V0X2ZpbGwtZXh0cnVzaW9uXCIsXCJsYXlvdXRfc3ltYm9sXCIsXCJsYXlvdXRfcmFzdGVyXCIsXCJsYXlvdXRfaGlsbHNoYWRlXCIsXCJsYXlvdXRfYmFja2dyb3VuZFwiXSxsYXlvdXRfYmFja2dyb3VuZDp7dmlzaWJpbGl0eTp7dHlwZTpcImVudW1cIix2YWx1ZXM6e3Zpc2libGU6e30sbm9uZTp7fX0sZGVmYXVsdDpcInZpc2libGVcIixcInByb3BlcnR5LXR5cGVcIjpcImNvbnN0YW50XCJ9fSxsYXlvdXRfZmlsbDp7XCJmaWxsLXNvcnQta2V5XCI6e3R5cGU6XCJudW1iZXJcIixleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITEscGFyYW1ldGVyczpbXCJ6b29tXCIsXCJmZWF0dXJlXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtZHJpdmVuXCJ9LHZpc2liaWxpdHk6e3R5cGU6XCJlbnVtXCIsdmFsdWVzOnt2aXNpYmxlOnt9LG5vbmU6e319LGRlZmF1bHQ6XCJ2aXNpYmxlXCIsXCJwcm9wZXJ0eS10eXBlXCI6XCJjb25zdGFudFwifX0sbGF5b3V0X2NpcmNsZTp7XCJjaXJjbGUtc29ydC1rZXlcIjp7dHlwZTpcIm51bWJlclwiLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMSxwYXJhbWV0ZXJzOltcInpvb21cIixcImZlYXR1cmVcIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1kcml2ZW5cIn0sdmlzaWJpbGl0eTp7dHlwZTpcImVudW1cIix2YWx1ZXM6e3Zpc2libGU6e30sbm9uZTp7fX0sZGVmYXVsdDpcInZpc2libGVcIixcInByb3BlcnR5LXR5cGVcIjpcImNvbnN0YW50XCJ9fSxsYXlvdXRfaGVhdG1hcDp7dmlzaWJpbGl0eTp7dHlwZTpcImVudW1cIix2YWx1ZXM6e3Zpc2libGU6e30sbm9uZTp7fX0sZGVmYXVsdDpcInZpc2libGVcIixcInByb3BlcnR5LXR5cGVcIjpcImNvbnN0YW50XCJ9fSxcImxheW91dF9maWxsLWV4dHJ1c2lvblwiOnt2aXNpYmlsaXR5Ont0eXBlOlwiZW51bVwiLHZhbHVlczp7dmlzaWJsZTp7fSxub25lOnt9fSxkZWZhdWx0OlwidmlzaWJsZVwiLFwicHJvcGVydHktdHlwZVwiOlwiY29uc3RhbnRcIn19LGxheW91dF9saW5lOntcImxpbmUtY2FwXCI6e3R5cGU6XCJlbnVtXCIsdmFsdWVzOntidXR0Ont9LHJvdW5kOnt9LHNxdWFyZTp7fX0sZGVmYXVsdDpcImJ1dHRcIixleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITEscGFyYW1ldGVyczpbXCJ6b29tXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtY29uc3RhbnRcIn0sXCJsaW5lLWpvaW5cIjp7dHlwZTpcImVudW1cIix2YWx1ZXM6e2JldmVsOnt9LHJvdW5kOnt9LG1pdGVyOnt9fSxkZWZhdWx0OlwibWl0ZXJcIixleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITEscGFyYW1ldGVyczpbXCJ6b29tXCIsXCJmZWF0dXJlXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtZHJpdmVuXCJ9LFwibGluZS1taXRlci1saW1pdFwiOnt0eXBlOlwibnVtYmVyXCIsZGVmYXVsdDoyLHJlcXVpcmVzOlt7XCJsaW5lLWpvaW5cIjpcIm1pdGVyXCJ9XSxleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITAscGFyYW1ldGVyczpbXCJ6b29tXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtY29uc3RhbnRcIn0sXCJsaW5lLXJvdW5kLWxpbWl0XCI6e3R5cGU6XCJudW1iZXJcIixkZWZhdWx0OjEuMDUscmVxdWlyZXM6W3tcImxpbmUtam9pblwiOlwicm91bmRcIn1dLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMCxwYXJhbWV0ZXJzOltcInpvb21cIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1jb25zdGFudFwifSxcImxpbmUtc29ydC1rZXlcIjp7dHlwZTpcIm51bWJlclwiLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMSxwYXJhbWV0ZXJzOltcInpvb21cIixcImZlYXR1cmVcIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1kcml2ZW5cIn0sdmlzaWJpbGl0eTp7dHlwZTpcImVudW1cIix2YWx1ZXM6e3Zpc2libGU6e30sbm9uZTp7fX0sZGVmYXVsdDpcInZpc2libGVcIixcInByb3BlcnR5LXR5cGVcIjpcImNvbnN0YW50XCJ9fSxsYXlvdXRfc3ltYm9sOntcInN5bWJvbC1wbGFjZW1lbnRcIjp7dHlwZTpcImVudW1cIix2YWx1ZXM6e3BvaW50Ont9LGxpbmU6e30sXCJsaW5lLWNlbnRlclwiOnt9fSxkZWZhdWx0OlwicG9pbnRcIixleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITEscGFyYW1ldGVyczpbXCJ6b29tXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtY29uc3RhbnRcIn0sXCJzeW1ib2wtc3BhY2luZ1wiOnt0eXBlOlwibnVtYmVyXCIsZGVmYXVsdDoyNTAsbWluaW11bToxLHVuaXRzOlwicGl4ZWxzXCIscmVxdWlyZXM6W3tcInN5bWJvbC1wbGFjZW1lbnRcIjpcImxpbmVcIn1dLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMCxwYXJhbWV0ZXJzOltcInpvb21cIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1jb25zdGFudFwifSxcInN5bWJvbC1hdm9pZC1lZGdlc1wiOnt0eXBlOlwiYm9vbGVhblwiLGRlZmF1bHQ6ITEsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiExLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWNvbnN0YW50XCJ9LFwic3ltYm9sLXNvcnQta2V5XCI6e3R5cGU6XCJudW1iZXJcIixleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITEscGFyYW1ldGVyczpbXCJ6b29tXCIsXCJmZWF0dXJlXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtZHJpdmVuXCJ9LFwic3ltYm9sLXotb3JkZXJcIjp7dHlwZTpcImVudW1cIix2YWx1ZXM6e2F1dG86e30sXCJ2aWV3cG9ydC15XCI6e30sc291cmNlOnt9fSxkZWZhdWx0OlwiYXV0b1wiLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMSxwYXJhbWV0ZXJzOltcInpvb21cIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1jb25zdGFudFwifSxcImljb24tYWxsb3ctb3ZlcmxhcFwiOnt0eXBlOlwiYm9vbGVhblwiLGRlZmF1bHQ6ITEscmVxdWlyZXM6W1wiaWNvbi1pbWFnZVwiLHtcIiFcIjpcImljb24tb3ZlcmxhcFwifV0sZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiExLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWNvbnN0YW50XCJ9LFwiaWNvbi1vdmVybGFwXCI6e3R5cGU6XCJlbnVtXCIsdmFsdWVzOntuZXZlcjp7fSxhbHdheXM6e30sY29vcGVyYXRpdmU6e319LHJlcXVpcmVzOltcImljb24taW1hZ2VcIl0sZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiExLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWNvbnN0YW50XCJ9LFwiaWNvbi1pZ25vcmUtcGxhY2VtZW50XCI6e3R5cGU6XCJib29sZWFuXCIsZGVmYXVsdDohMSxyZXF1aXJlczpbXCJpY29uLWltYWdlXCJdLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMSxwYXJhbWV0ZXJzOltcInpvb21cIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1jb25zdGFudFwifSxcImljb24tb3B0aW9uYWxcIjp7dHlwZTpcImJvb2xlYW5cIixkZWZhdWx0OiExLHJlcXVpcmVzOltcImljb24taW1hZ2VcIixcInRleHQtZmllbGRcIl0sZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiExLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWNvbnN0YW50XCJ9LFwiaWNvbi1yb3RhdGlvbi1hbGlnbm1lbnRcIjp7dHlwZTpcImVudW1cIix2YWx1ZXM6e21hcDp7fSx2aWV3cG9ydDp7fSxhdXRvOnt9fSxkZWZhdWx0OlwiYXV0b1wiLHJlcXVpcmVzOltcImljb24taW1hZ2VcIl0sZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiExLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWNvbnN0YW50XCJ9LFwiaWNvbi1zaXplXCI6e3R5cGU6XCJudW1iZXJcIixkZWZhdWx0OjEsbWluaW11bTowLHVuaXRzOlwiZmFjdG9yIG9mIHRoZSBvcmlnaW5hbCBpY29uIHNpemVcIixyZXF1aXJlczpbXCJpY29uLWltYWdlXCJdLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMCxwYXJhbWV0ZXJzOltcInpvb21cIixcImZlYXR1cmVcIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1kcml2ZW5cIn0sXCJpY29uLXRleHQtZml0XCI6e3R5cGU6XCJlbnVtXCIsdmFsdWVzOntub25lOnt9LHdpZHRoOnt9LGhlaWdodDp7fSxib3RoOnt9fSxkZWZhdWx0Olwibm9uZVwiLHJlcXVpcmVzOltcImljb24taW1hZ2VcIixcInRleHQtZmllbGRcIl0sZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiExLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWNvbnN0YW50XCJ9LFwiaWNvbi10ZXh0LWZpdC1wYWRkaW5nXCI6e3R5cGU6XCJhcnJheVwiLHZhbHVlOlwibnVtYmVyXCIsbGVuZ3RoOjQsZGVmYXVsdDpbMCwwLDAsMF0sdW5pdHM6XCJwaXhlbHNcIixyZXF1aXJlczpbXCJpY29uLWltYWdlXCIsXCJ0ZXh0LWZpZWxkXCIse1wiaWNvbi10ZXh0LWZpdFwiOltcImJvdGhcIixcIndpZHRoXCIsXCJoZWlnaHRcIl19XSxleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITAscGFyYW1ldGVyczpbXCJ6b29tXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtY29uc3RhbnRcIn0sXCJpY29uLWltYWdlXCI6e3R5cGU6XCJyZXNvbHZlZEltYWdlXCIsdG9rZW5zOiEwLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMSxwYXJhbWV0ZXJzOltcInpvb21cIixcImZlYXR1cmVcIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1kcml2ZW5cIn0sXCJpY29uLXJvdGF0ZVwiOnt0eXBlOlwibnVtYmVyXCIsZGVmYXVsdDowLHBlcmlvZDozNjAsdW5pdHM6XCJkZWdyZWVzXCIscmVxdWlyZXM6W1wiaWNvbi1pbWFnZVwiXSxleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITAscGFyYW1ldGVyczpbXCJ6b29tXCIsXCJmZWF0dXJlXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtZHJpdmVuXCJ9LFwiaWNvbi1wYWRkaW5nXCI6e3R5cGU6XCJwYWRkaW5nXCIsZGVmYXVsdDpbMl0sdW5pdHM6XCJwaXhlbHNcIixyZXF1aXJlczpbXCJpY29uLWltYWdlXCJdLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMCxwYXJhbWV0ZXJzOltcInpvb21cIixcImZlYXR1cmVcIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1kcml2ZW5cIn0sXCJpY29uLWtlZXAtdXByaWdodFwiOnt0eXBlOlwiYm9vbGVhblwiLGRlZmF1bHQ6ITEscmVxdWlyZXM6W1wiaWNvbi1pbWFnZVwiLHtcImljb24tcm90YXRpb24tYWxpZ25tZW50XCI6XCJtYXBcIn0se1wic3ltYm9sLXBsYWNlbWVudFwiOltcImxpbmVcIixcImxpbmUtY2VudGVyXCJdfV0sZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiExLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWNvbnN0YW50XCJ9LFwiaWNvbi1vZmZzZXRcIjp7dHlwZTpcImFycmF5XCIsdmFsdWU6XCJudW1iZXJcIixsZW5ndGg6MixkZWZhdWx0OlswLDBdLHJlcXVpcmVzOltcImljb24taW1hZ2VcIl0sZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiLFwiZmVhdHVyZVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWRyaXZlblwifSxcImljb24tYW5jaG9yXCI6e3R5cGU6XCJlbnVtXCIsdmFsdWVzOntjZW50ZXI6e30sbGVmdDp7fSxyaWdodDp7fSx0b3A6e30sYm90dG9tOnt9LFwidG9wLWxlZnRcIjp7fSxcInRvcC1yaWdodFwiOnt9LFwiYm90dG9tLWxlZnRcIjp7fSxcImJvdHRvbS1yaWdodFwiOnt9fSxkZWZhdWx0OlwiY2VudGVyXCIscmVxdWlyZXM6W1wiaWNvbi1pbWFnZVwiXSxleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITEscGFyYW1ldGVyczpbXCJ6b29tXCIsXCJmZWF0dXJlXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtZHJpdmVuXCJ9LFwiaWNvbi1waXRjaC1hbGlnbm1lbnRcIjp7dHlwZTpcImVudW1cIix2YWx1ZXM6e21hcDp7fSx2aWV3cG9ydDp7fSxhdXRvOnt9fSxkZWZhdWx0OlwiYXV0b1wiLHJlcXVpcmVzOltcImljb24taW1hZ2VcIl0sZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiExLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWNvbnN0YW50XCJ9LFwidGV4dC1waXRjaC1hbGlnbm1lbnRcIjp7dHlwZTpcImVudW1cIix2YWx1ZXM6e21hcDp7fSx2aWV3cG9ydDp7fSxhdXRvOnt9fSxkZWZhdWx0OlwiYXV0b1wiLHJlcXVpcmVzOltcInRleHQtZmllbGRcIl0sZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiExLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWNvbnN0YW50XCJ9LFwidGV4dC1yb3RhdGlvbi1hbGlnbm1lbnRcIjp7dHlwZTpcImVudW1cIix2YWx1ZXM6e21hcDp7fSx2aWV3cG9ydDp7fSxcInZpZXdwb3J0LWdseXBoXCI6e30sYXV0bzp7fX0sZGVmYXVsdDpcImF1dG9cIixyZXF1aXJlczpbXCJ0ZXh0LWZpZWxkXCJdLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMSxwYXJhbWV0ZXJzOltcInpvb21cIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1jb25zdGFudFwifSxcInRleHQtZmllbGRcIjp7dHlwZTpcImZvcm1hdHRlZFwiLGRlZmF1bHQ6XCJcIix0b2tlbnM6ITAsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiExLHBhcmFtZXRlcnM6W1wiem9vbVwiLFwiZmVhdHVyZVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWRyaXZlblwifSxcInRleHQtZm9udFwiOnt0eXBlOlwiYXJyYXlcIix2YWx1ZTpcInN0cmluZ1wiLGRlZmF1bHQ6W1wiT3BlbiBTYW5zIFJlZ3VsYXJcIixcIkFyaWFsIFVuaWNvZGUgTVMgUmVndWxhclwiXSxyZXF1aXJlczpbXCJ0ZXh0LWZpZWxkXCJdLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMSxwYXJhbWV0ZXJzOltcInpvb21cIixcImZlYXR1cmVcIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1kcml2ZW5cIn0sXCJ0ZXh0LXNpemVcIjp7dHlwZTpcIm51bWJlclwiLGRlZmF1bHQ6MTYsbWluaW11bTowLHVuaXRzOlwicGl4ZWxzXCIscmVxdWlyZXM6W1widGV4dC1maWVsZFwiXSxleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITAscGFyYW1ldGVyczpbXCJ6b29tXCIsXCJmZWF0dXJlXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtZHJpdmVuXCJ9LFwidGV4dC1tYXgtd2lkdGhcIjp7dHlwZTpcIm51bWJlclwiLGRlZmF1bHQ6MTAsbWluaW11bTowLHVuaXRzOlwiZW1zXCIscmVxdWlyZXM6W1widGV4dC1maWVsZFwiXSxleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITAscGFyYW1ldGVyczpbXCJ6b29tXCIsXCJmZWF0dXJlXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtZHJpdmVuXCJ9LFwidGV4dC1saW5lLWhlaWdodFwiOnt0eXBlOlwibnVtYmVyXCIsZGVmYXVsdDoxLjIsdW5pdHM6XCJlbXNcIixyZXF1aXJlczpbXCJ0ZXh0LWZpZWxkXCJdLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMCxwYXJhbWV0ZXJzOltcInpvb21cIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1jb25zdGFudFwifSxcInRleHQtbGV0dGVyLXNwYWNpbmdcIjp7dHlwZTpcIm51bWJlclwiLGRlZmF1bHQ6MCx1bml0czpcImVtc1wiLHJlcXVpcmVzOltcInRleHQtZmllbGRcIl0sZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiLFwiZmVhdHVyZVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWRyaXZlblwifSxcInRleHQtanVzdGlmeVwiOnt0eXBlOlwiZW51bVwiLHZhbHVlczp7YXV0bzp7fSxsZWZ0Ont9LGNlbnRlcjp7fSxyaWdodDp7fX0sZGVmYXVsdDpcImNlbnRlclwiLHJlcXVpcmVzOltcInRleHQtZmllbGRcIl0sZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiExLHBhcmFtZXRlcnM6W1wiem9vbVwiLFwiZmVhdHVyZVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWRyaXZlblwifSxcInRleHQtcmFkaWFsLW9mZnNldFwiOnt0eXBlOlwibnVtYmVyXCIsdW5pdHM6XCJlbXNcIixkZWZhdWx0OjAscmVxdWlyZXM6W1widGV4dC1maWVsZFwiXSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtZHJpdmVuXCIsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiLFwiZmVhdHVyZVwiXX19LFwidGV4dC12YXJpYWJsZS1hbmNob3JcIjp7dHlwZTpcImFycmF5XCIsdmFsdWU6XCJlbnVtXCIsdmFsdWVzOntjZW50ZXI6e30sbGVmdDp7fSxyaWdodDp7fSx0b3A6e30sYm90dG9tOnt9LFwidG9wLWxlZnRcIjp7fSxcInRvcC1yaWdodFwiOnt9LFwiYm90dG9tLWxlZnRcIjp7fSxcImJvdHRvbS1yaWdodFwiOnt9fSxyZXF1aXJlczpbXCJ0ZXh0LWZpZWxkXCIse1wic3ltYm9sLXBsYWNlbWVudFwiOltcInBvaW50XCJdfV0sZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiExLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWNvbnN0YW50XCJ9LFwidGV4dC12YXJpYWJsZS1hbmNob3Itb2Zmc2V0XCI6e3R5cGU6XCJ2YXJpYWJsZUFuY2hvck9mZnNldENvbGxlY3Rpb25cIixyZXF1aXJlczpbXCJ0ZXh0LWZpZWxkXCIse1wic3ltYm9sLXBsYWNlbWVudFwiOltcInBvaW50XCJdfV0sZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiLFwiZmVhdHVyZVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWRyaXZlblwifSxcInRleHQtYW5jaG9yXCI6e3R5cGU6XCJlbnVtXCIsdmFsdWVzOntjZW50ZXI6e30sbGVmdDp7fSxyaWdodDp7fSx0b3A6e30sYm90dG9tOnt9LFwidG9wLWxlZnRcIjp7fSxcInRvcC1yaWdodFwiOnt9LFwiYm90dG9tLWxlZnRcIjp7fSxcImJvdHRvbS1yaWdodFwiOnt9fSxkZWZhdWx0OlwiY2VudGVyXCIscmVxdWlyZXM6W1widGV4dC1maWVsZFwiLHtcIiFcIjpcInRleHQtdmFyaWFibGUtYW5jaG9yXCJ9XSxleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITEscGFyYW1ldGVyczpbXCJ6b29tXCIsXCJmZWF0dXJlXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtZHJpdmVuXCJ9LFwidGV4dC1tYXgtYW5nbGVcIjp7dHlwZTpcIm51bWJlclwiLGRlZmF1bHQ6NDUsdW5pdHM6XCJkZWdyZWVzXCIscmVxdWlyZXM6W1widGV4dC1maWVsZFwiLHtcInN5bWJvbC1wbGFjZW1lbnRcIjpbXCJsaW5lXCIsXCJsaW5lLWNlbnRlclwiXX1dLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMCxwYXJhbWV0ZXJzOltcInpvb21cIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1jb25zdGFudFwifSxcInRleHQtd3JpdGluZy1tb2RlXCI6e3R5cGU6XCJhcnJheVwiLHZhbHVlOlwiZW51bVwiLHZhbHVlczp7aG9yaXpvbnRhbDp7fSx2ZXJ0aWNhbDp7fX0scmVxdWlyZXM6W1widGV4dC1maWVsZFwiLHtcInN5bWJvbC1wbGFjZW1lbnRcIjpbXCJwb2ludFwiXX1dLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMSxwYXJhbWV0ZXJzOltcInpvb21cIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1jb25zdGFudFwifSxcInRleHQtcm90YXRlXCI6e3R5cGU6XCJudW1iZXJcIixkZWZhdWx0OjAscGVyaW9kOjM2MCx1bml0czpcImRlZ3JlZXNcIixyZXF1aXJlczpbXCJ0ZXh0LWZpZWxkXCJdLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMCxwYXJhbWV0ZXJzOltcInpvb21cIixcImZlYXR1cmVcIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1kcml2ZW5cIn0sXCJ0ZXh0LXBhZGRpbmdcIjp7dHlwZTpcIm51bWJlclwiLGRlZmF1bHQ6MixtaW5pbXVtOjAsdW5pdHM6XCJwaXhlbHNcIixyZXF1aXJlczpbXCJ0ZXh0LWZpZWxkXCJdLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMCxwYXJhbWV0ZXJzOltcInpvb21cIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1jb25zdGFudFwifSxcInRleHQta2VlcC11cHJpZ2h0XCI6e3R5cGU6XCJib29sZWFuXCIsZGVmYXVsdDohMCxyZXF1aXJlczpbXCJ0ZXh0LWZpZWxkXCIse1widGV4dC1yb3RhdGlvbi1hbGlnbm1lbnRcIjpcIm1hcFwifSx7XCJzeW1ib2wtcGxhY2VtZW50XCI6W1wibGluZVwiLFwibGluZS1jZW50ZXJcIl19XSxleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITEscGFyYW1ldGVyczpbXCJ6b29tXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtY29uc3RhbnRcIn0sXCJ0ZXh0LXRyYW5zZm9ybVwiOnt0eXBlOlwiZW51bVwiLHZhbHVlczp7bm9uZTp7fSx1cHBlcmNhc2U6e30sbG93ZXJjYXNlOnt9fSxkZWZhdWx0Olwibm9uZVwiLHJlcXVpcmVzOltcInRleHQtZmllbGRcIl0sZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiExLHBhcmFtZXRlcnM6W1wiem9vbVwiLFwiZmVhdHVyZVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWRyaXZlblwifSxcInRleHQtb2Zmc2V0XCI6e3R5cGU6XCJhcnJheVwiLHZhbHVlOlwibnVtYmVyXCIsdW5pdHM6XCJlbXNcIixsZW5ndGg6MixkZWZhdWx0OlswLDBdLHJlcXVpcmVzOltcInRleHQtZmllbGRcIix7XCIhXCI6XCJ0ZXh0LXJhZGlhbC1vZmZzZXRcIn1dLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMCxwYXJhbWV0ZXJzOltcInpvb21cIixcImZlYXR1cmVcIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1kcml2ZW5cIn0sXCJ0ZXh0LWFsbG93LW92ZXJsYXBcIjp7dHlwZTpcImJvb2xlYW5cIixkZWZhdWx0OiExLHJlcXVpcmVzOltcInRleHQtZmllbGRcIix7XCIhXCI6XCJ0ZXh0LW92ZXJsYXBcIn1dLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMSxwYXJhbWV0ZXJzOltcInpvb21cIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1jb25zdGFudFwifSxcInRleHQtb3ZlcmxhcFwiOnt0eXBlOlwiZW51bVwiLHZhbHVlczp7bmV2ZXI6e30sYWx3YXlzOnt9LGNvb3BlcmF0aXZlOnt9fSxyZXF1aXJlczpbXCJ0ZXh0LWZpZWxkXCJdLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMSxwYXJhbWV0ZXJzOltcInpvb21cIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1jb25zdGFudFwifSxcInRleHQtaWdub3JlLXBsYWNlbWVudFwiOnt0eXBlOlwiYm9vbGVhblwiLGRlZmF1bHQ6ITEscmVxdWlyZXM6W1widGV4dC1maWVsZFwiXSxleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITEscGFyYW1ldGVyczpbXCJ6b29tXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtY29uc3RhbnRcIn0sXCJ0ZXh0LW9wdGlvbmFsXCI6e3R5cGU6XCJib29sZWFuXCIsZGVmYXVsdDohMSxyZXF1aXJlczpbXCJ0ZXh0LWZpZWxkXCIsXCJpY29uLWltYWdlXCJdLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMSxwYXJhbWV0ZXJzOltcInpvb21cIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1jb25zdGFudFwifSx2aXNpYmlsaXR5Ont0eXBlOlwiZW51bVwiLHZhbHVlczp7dmlzaWJsZTp7fSxub25lOnt9fSxkZWZhdWx0OlwidmlzaWJsZVwiLFwicHJvcGVydHktdHlwZVwiOlwiY29uc3RhbnRcIn19LGxheW91dF9yYXN0ZXI6e3Zpc2liaWxpdHk6e3R5cGU6XCJlbnVtXCIsdmFsdWVzOnt2aXNpYmxlOnt9LG5vbmU6e319LGRlZmF1bHQ6XCJ2aXNpYmxlXCIsXCJwcm9wZXJ0eS10eXBlXCI6XCJjb25zdGFudFwifX0sbGF5b3V0X2hpbGxzaGFkZTp7dmlzaWJpbGl0eTp7dHlwZTpcImVudW1cIix2YWx1ZXM6e3Zpc2libGU6e30sbm9uZTp7fX0sZGVmYXVsdDpcInZpc2libGVcIixcInByb3BlcnR5LXR5cGVcIjpcImNvbnN0YW50XCJ9fSxmaWx0ZXI6e3R5cGU6XCJhcnJheVwiLHZhbHVlOlwiKlwifSxmaWx0ZXJfb3BlcmF0b3I6e3R5cGU6XCJlbnVtXCIsdmFsdWVzOntcIj09XCI6e30sXCIhPVwiOnt9LFwiPlwiOnt9LFwiPj1cIjp7fSxcIjxcIjp7fSxcIjw9XCI6e30saW46e30sXCIhaW5cIjp7fSxhbGw6e30sYW55Ont9LG5vbmU6e30saGFzOnt9LFwiIWhhc1wiOnt9fX0sZ2VvbWV0cnlfdHlwZTp7dHlwZTpcImVudW1cIix2YWx1ZXM6e1BvaW50Ont9LExpbmVTdHJpbmc6e30sUG9seWdvbjp7fX19LGZ1bmN0aW9uOntleHByZXNzaW9uOnt0eXBlOlwiZXhwcmVzc2lvblwifSxzdG9wczp7dHlwZTpcImFycmF5XCIsdmFsdWU6XCJmdW5jdGlvbl9zdG9wXCJ9LGJhc2U6e3R5cGU6XCJudW1iZXJcIixkZWZhdWx0OjEsbWluaW11bTowfSxwcm9wZXJ0eTp7dHlwZTpcInN0cmluZ1wiLGRlZmF1bHQ6XCIkem9vbVwifSx0eXBlOnt0eXBlOlwiZW51bVwiLHZhbHVlczp7aWRlbnRpdHk6e30sZXhwb25lbnRpYWw6e30saW50ZXJ2YWw6e30sY2F0ZWdvcmljYWw6e319LGRlZmF1bHQ6XCJleHBvbmVudGlhbFwifSxjb2xvclNwYWNlOnt0eXBlOlwiZW51bVwiLHZhbHVlczp7cmdiOnt9LGxhYjp7fSxoY2w6e319LGRlZmF1bHQ6XCJyZ2JcIn0sZGVmYXVsdDp7dHlwZTpcIipcIixyZXF1aXJlZDohMX19LGZ1bmN0aW9uX3N0b3A6e3R5cGU6XCJhcnJheVwiLG1pbmltdW06MCxtYXhpbXVtOjI0LHZhbHVlOltcIm51bWJlclwiLFwiY29sb3JcIl0sbGVuZ3RoOjJ9LGV4cHJlc3Npb246e3R5cGU6XCJhcnJheVwiLHZhbHVlOlwiKlwiLG1pbmltdW06MX0sbGlnaHQ6e2FuY2hvcjp7dHlwZTpcImVudW1cIixkZWZhdWx0Olwidmlld3BvcnRcIix2YWx1ZXM6e21hcDp7fSx2aWV3cG9ydDp7fX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWNvbnN0YW50XCIsdHJhbnNpdGlvbjohMSxleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITEscGFyYW1ldGVyczpbXCJ6b29tXCJdfX0scG9zaXRpb246e3R5cGU6XCJhcnJheVwiLGRlZmF1bHQ6WzEuMTUsMjEwLDMwXSxsZW5ndGg6Myx2YWx1ZTpcIm51bWJlclwiLFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1jb25zdGFudFwiLHRyYW5zaXRpb246ITAsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiXX19LGNvbG9yOnt0eXBlOlwiY29sb3JcIixcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtY29uc3RhbnRcIixkZWZhdWx0OlwiI2ZmZmZmZlwiLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMCxwYXJhbWV0ZXJzOltcInpvb21cIl19LHRyYW5zaXRpb246ITB9LGludGVuc2l0eTp7dHlwZTpcIm51bWJlclwiLFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1jb25zdGFudFwiLGRlZmF1bHQ6LjUsbWluaW11bTowLG1heGltdW06MSxleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITAscGFyYW1ldGVyczpbXCJ6b29tXCJdfSx0cmFuc2l0aW9uOiEwfX0sc2t5OntcInNreS1jb2xvclwiOnt0eXBlOlwiY29sb3JcIixcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtY29uc3RhbnRcIixkZWZhdWx0OlwiIzg4QzZGQ1wiLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMCxwYXJhbWV0ZXJzOltcInpvb21cIl19LHRyYW5zaXRpb246ITB9LFwiaG9yaXpvbi1jb2xvclwiOnt0eXBlOlwiY29sb3JcIixcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtY29uc3RhbnRcIixkZWZhdWx0OlwiI2ZmZmZmZlwiLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMCxwYXJhbWV0ZXJzOltcInpvb21cIl19LHRyYW5zaXRpb246ITB9LFwiZm9nLWNvbG9yXCI6e3R5cGU6XCJjb2xvclwiLFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1jb25zdGFudFwiLGRlZmF1bHQ6XCIjZmZmZmZmXCIsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sdHJhbnNpdGlvbjohMH0sXCJmb2ctZ3JvdW5kLWJsZW5kXCI6e3R5cGU6XCJudW1iZXJcIixcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtY29uc3RhbnRcIixkZWZhdWx0Oi41LG1pbmltdW06MCxtYXhpbXVtOjEsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sdHJhbnNpdGlvbjohMH0sXCJob3Jpem9uLWZvZy1ibGVuZFwiOnt0eXBlOlwibnVtYmVyXCIsXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWNvbnN0YW50XCIsZGVmYXVsdDouOCxtaW5pbXVtOjAsbWF4aW11bToxLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMCxwYXJhbWV0ZXJzOltcInpvb21cIl19LHRyYW5zaXRpb246ITB9LFwic2t5LWhvcml6b24tYmxlbmRcIjp7dHlwZTpcIm51bWJlclwiLFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1jb25zdGFudFwiLGRlZmF1bHQ6LjgsbWluaW11bTowLG1heGltdW06MSxleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITAscGFyYW1ldGVyczpbXCJ6b29tXCJdfSx0cmFuc2l0aW9uOiEwfSxcImF0bW9zcGhlcmUtYmxlbmRcIjp7dHlwZTpcIm51bWJlclwiLFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1jb25zdGFudFwiLGRlZmF1bHQ6LjgsbWluaW11bTowLG1heGltdW06MSxleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITAscGFyYW1ldGVyczpbXCJ6b29tXCJdfSx0cmFuc2l0aW9uOiEwfX0sdGVycmFpbjp7c291cmNlOnt0eXBlOlwic3RyaW5nXCIscmVxdWlyZWQ6ITB9LGV4YWdnZXJhdGlvbjp7dHlwZTpcIm51bWJlclwiLG1pbmltdW06MCxkZWZhdWx0OjF9fSxwcm9qZWN0aW9uOnt0eXBlOnt0eXBlOlwiZW51bVwiLGRlZmF1bHQ6XCJtZXJjYXRvclwiLHZhbHVlczp7bWVyY2F0b3I6e30sZ2xvYmU6e319fX0scGFpbnQ6W1wicGFpbnRfZmlsbFwiLFwicGFpbnRfbGluZVwiLFwicGFpbnRfY2lyY2xlXCIsXCJwYWludF9oZWF0bWFwXCIsXCJwYWludF9maWxsLWV4dHJ1c2lvblwiLFwicGFpbnRfc3ltYm9sXCIsXCJwYWludF9yYXN0ZXJcIixcInBhaW50X2hpbGxzaGFkZVwiLFwicGFpbnRfYmFja2dyb3VuZFwiXSxwYWludF9maWxsOntcImZpbGwtYW50aWFsaWFzXCI6e3R5cGU6XCJib29sZWFuXCIsZGVmYXVsdDohMCxleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITEscGFyYW1ldGVyczpbXCJ6b29tXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtY29uc3RhbnRcIn0sXCJmaWxsLW9wYWNpdHlcIjp7dHlwZTpcIm51bWJlclwiLGRlZmF1bHQ6MSxtaW5pbXVtOjAsbWF4aW11bToxLHRyYW5zaXRpb246ITAsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiLFwiZmVhdHVyZVwiLFwiZmVhdHVyZS1zdGF0ZVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWRyaXZlblwifSxcImZpbGwtY29sb3JcIjp7dHlwZTpcImNvbG9yXCIsZGVmYXVsdDpcIiMwMDAwMDBcIix0cmFuc2l0aW9uOiEwLHJlcXVpcmVzOlt7XCIhXCI6XCJmaWxsLXBhdHRlcm5cIn1dLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMCxwYXJhbWV0ZXJzOltcInpvb21cIixcImZlYXR1cmVcIixcImZlYXR1cmUtc3RhdGVcIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1kcml2ZW5cIn0sXCJmaWxsLW91dGxpbmUtY29sb3JcIjp7dHlwZTpcImNvbG9yXCIsdHJhbnNpdGlvbjohMCxyZXF1aXJlczpbe1wiIVwiOlwiZmlsbC1wYXR0ZXJuXCJ9LHtcImZpbGwtYW50aWFsaWFzXCI6ITB9XSxleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITAscGFyYW1ldGVyczpbXCJ6b29tXCIsXCJmZWF0dXJlXCIsXCJmZWF0dXJlLXN0YXRlXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtZHJpdmVuXCJ9LFwiZmlsbC10cmFuc2xhdGVcIjp7dHlwZTpcImFycmF5XCIsdmFsdWU6XCJudW1iZXJcIixsZW5ndGg6MixkZWZhdWx0OlswLDBdLHRyYW5zaXRpb246ITAsdW5pdHM6XCJwaXhlbHNcIixleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITAscGFyYW1ldGVyczpbXCJ6b29tXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtY29uc3RhbnRcIn0sXCJmaWxsLXRyYW5zbGF0ZS1hbmNob3JcIjp7dHlwZTpcImVudW1cIix2YWx1ZXM6e21hcDp7fSx2aWV3cG9ydDp7fX0sZGVmYXVsdDpcIm1hcFwiLHJlcXVpcmVzOltcImZpbGwtdHJhbnNsYXRlXCJdLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMSxwYXJhbWV0ZXJzOltcInpvb21cIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1jb25zdGFudFwifSxcImZpbGwtcGF0dGVyblwiOnt0eXBlOlwicmVzb2x2ZWRJbWFnZVwiLHRyYW5zaXRpb246ITAsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiExLHBhcmFtZXRlcnM6W1wiem9vbVwiLFwiZmVhdHVyZVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJjcm9zcy1mYWRlZC1kYXRhLWRyaXZlblwifX0sXCJwYWludF9maWxsLWV4dHJ1c2lvblwiOntcImZpbGwtZXh0cnVzaW9uLW9wYWNpdHlcIjp7dHlwZTpcIm51bWJlclwiLGRlZmF1bHQ6MSxtaW5pbXVtOjAsbWF4aW11bToxLHRyYW5zaXRpb246ITAsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWNvbnN0YW50XCJ9LFwiZmlsbC1leHRydXNpb24tY29sb3JcIjp7dHlwZTpcImNvbG9yXCIsZGVmYXVsdDpcIiMwMDAwMDBcIix0cmFuc2l0aW9uOiEwLHJlcXVpcmVzOlt7XCIhXCI6XCJmaWxsLWV4dHJ1c2lvbi1wYXR0ZXJuXCJ9XSxleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITAscGFyYW1ldGVyczpbXCJ6b29tXCIsXCJmZWF0dXJlXCIsXCJmZWF0dXJlLXN0YXRlXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtZHJpdmVuXCJ9LFwiZmlsbC1leHRydXNpb24tdHJhbnNsYXRlXCI6e3R5cGU6XCJhcnJheVwiLHZhbHVlOlwibnVtYmVyXCIsbGVuZ3RoOjIsZGVmYXVsdDpbMCwwXSx0cmFuc2l0aW9uOiEwLHVuaXRzOlwicGl4ZWxzXCIsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWNvbnN0YW50XCJ9LFwiZmlsbC1leHRydXNpb24tdHJhbnNsYXRlLWFuY2hvclwiOnt0eXBlOlwiZW51bVwiLHZhbHVlczp7bWFwOnt9LHZpZXdwb3J0Ont9fSxkZWZhdWx0OlwibWFwXCIscmVxdWlyZXM6W1wiZmlsbC1leHRydXNpb24tdHJhbnNsYXRlXCJdLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMSxwYXJhbWV0ZXJzOltcInpvb21cIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1jb25zdGFudFwifSxcImZpbGwtZXh0cnVzaW9uLXBhdHRlcm5cIjp7dHlwZTpcInJlc29sdmVkSW1hZ2VcIix0cmFuc2l0aW9uOiEwLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMSxwYXJhbWV0ZXJzOltcInpvb21cIixcImZlYXR1cmVcIl19LFwicHJvcGVydHktdHlwZVwiOlwiY3Jvc3MtZmFkZWQtZGF0YS1kcml2ZW5cIn0sXCJmaWxsLWV4dHJ1c2lvbi1oZWlnaHRcIjp7dHlwZTpcIm51bWJlclwiLGRlZmF1bHQ6MCxtaW5pbXVtOjAsdW5pdHM6XCJtZXRlcnNcIix0cmFuc2l0aW9uOiEwLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMCxwYXJhbWV0ZXJzOltcInpvb21cIixcImZlYXR1cmVcIixcImZlYXR1cmUtc3RhdGVcIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1kcml2ZW5cIn0sXCJmaWxsLWV4dHJ1c2lvbi1iYXNlXCI6e3R5cGU6XCJudW1iZXJcIixkZWZhdWx0OjAsbWluaW11bTowLHVuaXRzOlwibWV0ZXJzXCIsdHJhbnNpdGlvbjohMCxyZXF1aXJlczpbXCJmaWxsLWV4dHJ1c2lvbi1oZWlnaHRcIl0sZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiLFwiZmVhdHVyZVwiLFwiZmVhdHVyZS1zdGF0ZVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWRyaXZlblwifSxcImZpbGwtZXh0cnVzaW9uLXZlcnRpY2FsLWdyYWRpZW50XCI6e3R5cGU6XCJib29sZWFuXCIsZGVmYXVsdDohMCx0cmFuc2l0aW9uOiExLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMSxwYXJhbWV0ZXJzOltcInpvb21cIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1jb25zdGFudFwifX0scGFpbnRfbGluZTp7XCJsaW5lLW9wYWNpdHlcIjp7dHlwZTpcIm51bWJlclwiLGRlZmF1bHQ6MSxtaW5pbXVtOjAsbWF4aW11bToxLHRyYW5zaXRpb246ITAsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiLFwiZmVhdHVyZVwiLFwiZmVhdHVyZS1zdGF0ZVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWRyaXZlblwifSxcImxpbmUtY29sb3JcIjp7dHlwZTpcImNvbG9yXCIsZGVmYXVsdDpcIiMwMDAwMDBcIix0cmFuc2l0aW9uOiEwLHJlcXVpcmVzOlt7XCIhXCI6XCJsaW5lLXBhdHRlcm5cIn1dLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMCxwYXJhbWV0ZXJzOltcInpvb21cIixcImZlYXR1cmVcIixcImZlYXR1cmUtc3RhdGVcIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1kcml2ZW5cIn0sXCJsaW5lLXRyYW5zbGF0ZVwiOnt0eXBlOlwiYXJyYXlcIix2YWx1ZTpcIm51bWJlclwiLGxlbmd0aDoyLGRlZmF1bHQ6WzAsMF0sdHJhbnNpdGlvbjohMCx1bml0czpcInBpeGVsc1wiLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMCxwYXJhbWV0ZXJzOltcInpvb21cIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1jb25zdGFudFwifSxcImxpbmUtdHJhbnNsYXRlLWFuY2hvclwiOnt0eXBlOlwiZW51bVwiLHZhbHVlczp7bWFwOnt9LHZpZXdwb3J0Ont9fSxkZWZhdWx0OlwibWFwXCIscmVxdWlyZXM6W1wibGluZS10cmFuc2xhdGVcIl0sZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiExLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWNvbnN0YW50XCJ9LFwibGluZS13aWR0aFwiOnt0eXBlOlwibnVtYmVyXCIsZGVmYXVsdDoxLG1pbmltdW06MCx0cmFuc2l0aW9uOiEwLHVuaXRzOlwicGl4ZWxzXCIsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiLFwiZmVhdHVyZVwiLFwiZmVhdHVyZS1zdGF0ZVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWRyaXZlblwifSxcImxpbmUtZ2FwLXdpZHRoXCI6e3R5cGU6XCJudW1iZXJcIixkZWZhdWx0OjAsbWluaW11bTowLHRyYW5zaXRpb246ITAsdW5pdHM6XCJwaXhlbHNcIixleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITAscGFyYW1ldGVyczpbXCJ6b29tXCIsXCJmZWF0dXJlXCIsXCJmZWF0dXJlLXN0YXRlXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtZHJpdmVuXCJ9LFwibGluZS1vZmZzZXRcIjp7dHlwZTpcIm51bWJlclwiLGRlZmF1bHQ6MCx0cmFuc2l0aW9uOiEwLHVuaXRzOlwicGl4ZWxzXCIsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiLFwiZmVhdHVyZVwiLFwiZmVhdHVyZS1zdGF0ZVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWRyaXZlblwifSxcImxpbmUtYmx1clwiOnt0eXBlOlwibnVtYmVyXCIsZGVmYXVsdDowLG1pbmltdW06MCx0cmFuc2l0aW9uOiEwLHVuaXRzOlwicGl4ZWxzXCIsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiLFwiZmVhdHVyZVwiLFwiZmVhdHVyZS1zdGF0ZVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWRyaXZlblwifSxcImxpbmUtZGFzaGFycmF5XCI6e3R5cGU6XCJhcnJheVwiLHZhbHVlOlwibnVtYmVyXCIsbWluaW11bTowLHRyYW5zaXRpb246ITAsdW5pdHM6XCJsaW5lIHdpZHRoc1wiLHJlcXVpcmVzOlt7XCIhXCI6XCJsaW5lLXBhdHRlcm5cIn1dLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMSxwYXJhbWV0ZXJzOltcInpvb21cIl19LFwicHJvcGVydHktdHlwZVwiOlwiY3Jvc3MtZmFkZWRcIn0sXCJsaW5lLXBhdHRlcm5cIjp7dHlwZTpcInJlc29sdmVkSW1hZ2VcIix0cmFuc2l0aW9uOiEwLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMSxwYXJhbWV0ZXJzOltcInpvb21cIixcImZlYXR1cmVcIl19LFwicHJvcGVydHktdHlwZVwiOlwiY3Jvc3MtZmFkZWQtZGF0YS1kcml2ZW5cIn0sXCJsaW5lLWdyYWRpZW50XCI6e3R5cGU6XCJjb2xvclwiLHRyYW5zaXRpb246ITEscmVxdWlyZXM6W3tcIiFcIjpcImxpbmUtZGFzaGFycmF5XCJ9LHtcIiFcIjpcImxpbmUtcGF0dGVyblwifSx7c291cmNlOlwiZ2VvanNvblwiLGhhczp7bGluZU1ldHJpY3M6ITB9fV0sZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wibGluZS1wcm9ncmVzc1wiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJjb2xvci1yYW1wXCJ9fSxwYWludF9jaXJjbGU6e1wiY2lyY2xlLXJhZGl1c1wiOnt0eXBlOlwibnVtYmVyXCIsZGVmYXVsdDo1LG1pbmltdW06MCx0cmFuc2l0aW9uOiEwLHVuaXRzOlwicGl4ZWxzXCIsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiLFwiZmVhdHVyZVwiLFwiZmVhdHVyZS1zdGF0ZVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWRyaXZlblwifSxcImNpcmNsZS1jb2xvclwiOnt0eXBlOlwiY29sb3JcIixkZWZhdWx0OlwiIzAwMDAwMFwiLHRyYW5zaXRpb246ITAsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiLFwiZmVhdHVyZVwiLFwiZmVhdHVyZS1zdGF0ZVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWRyaXZlblwifSxcImNpcmNsZS1ibHVyXCI6e3R5cGU6XCJudW1iZXJcIixkZWZhdWx0OjAsdHJhbnNpdGlvbjohMCxleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITAscGFyYW1ldGVyczpbXCJ6b29tXCIsXCJmZWF0dXJlXCIsXCJmZWF0dXJlLXN0YXRlXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtZHJpdmVuXCJ9LFwiY2lyY2xlLW9wYWNpdHlcIjp7dHlwZTpcIm51bWJlclwiLGRlZmF1bHQ6MSxtaW5pbXVtOjAsbWF4aW11bToxLHRyYW5zaXRpb246ITAsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiLFwiZmVhdHVyZVwiLFwiZmVhdHVyZS1zdGF0ZVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWRyaXZlblwifSxcImNpcmNsZS10cmFuc2xhdGVcIjp7dHlwZTpcImFycmF5XCIsdmFsdWU6XCJudW1iZXJcIixsZW5ndGg6MixkZWZhdWx0OlswLDBdLHRyYW5zaXRpb246ITAsdW5pdHM6XCJwaXhlbHNcIixleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITAscGFyYW1ldGVyczpbXCJ6b29tXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtY29uc3RhbnRcIn0sXCJjaXJjbGUtdHJhbnNsYXRlLWFuY2hvclwiOnt0eXBlOlwiZW51bVwiLHZhbHVlczp7bWFwOnt9LHZpZXdwb3J0Ont9fSxkZWZhdWx0OlwibWFwXCIscmVxdWlyZXM6W1wiY2lyY2xlLXRyYW5zbGF0ZVwiXSxleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITEscGFyYW1ldGVyczpbXCJ6b29tXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtY29uc3RhbnRcIn0sXCJjaXJjbGUtcGl0Y2gtc2NhbGVcIjp7dHlwZTpcImVudW1cIix2YWx1ZXM6e21hcDp7fSx2aWV3cG9ydDp7fX0sZGVmYXVsdDpcIm1hcFwiLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMSxwYXJhbWV0ZXJzOltcInpvb21cIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1jb25zdGFudFwifSxcImNpcmNsZS1waXRjaC1hbGlnbm1lbnRcIjp7dHlwZTpcImVudW1cIix2YWx1ZXM6e21hcDp7fSx2aWV3cG9ydDp7fX0sZGVmYXVsdDpcInZpZXdwb3J0XCIsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiExLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWNvbnN0YW50XCJ9LFwiY2lyY2xlLXN0cm9rZS13aWR0aFwiOnt0eXBlOlwibnVtYmVyXCIsZGVmYXVsdDowLG1pbmltdW06MCx0cmFuc2l0aW9uOiEwLHVuaXRzOlwicGl4ZWxzXCIsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiLFwiZmVhdHVyZVwiLFwiZmVhdHVyZS1zdGF0ZVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWRyaXZlblwifSxcImNpcmNsZS1zdHJva2UtY29sb3JcIjp7dHlwZTpcImNvbG9yXCIsZGVmYXVsdDpcIiMwMDAwMDBcIix0cmFuc2l0aW9uOiEwLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMCxwYXJhbWV0ZXJzOltcInpvb21cIixcImZlYXR1cmVcIixcImZlYXR1cmUtc3RhdGVcIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1kcml2ZW5cIn0sXCJjaXJjbGUtc3Ryb2tlLW9wYWNpdHlcIjp7dHlwZTpcIm51bWJlclwiLGRlZmF1bHQ6MSxtaW5pbXVtOjAsbWF4aW11bToxLHRyYW5zaXRpb246ITAsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiLFwiZmVhdHVyZVwiLFwiZmVhdHVyZS1zdGF0ZVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWRyaXZlblwifX0scGFpbnRfaGVhdG1hcDp7XCJoZWF0bWFwLXJhZGl1c1wiOnt0eXBlOlwibnVtYmVyXCIsZGVmYXVsdDozMCxtaW5pbXVtOjEsdHJhbnNpdGlvbjohMCx1bml0czpcInBpeGVsc1wiLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMCxwYXJhbWV0ZXJzOltcInpvb21cIixcImZlYXR1cmVcIixcImZlYXR1cmUtc3RhdGVcIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1kcml2ZW5cIn0sXCJoZWF0bWFwLXdlaWdodFwiOnt0eXBlOlwibnVtYmVyXCIsZGVmYXVsdDoxLG1pbmltdW06MCx0cmFuc2l0aW9uOiExLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMCxwYXJhbWV0ZXJzOltcInpvb21cIixcImZlYXR1cmVcIixcImZlYXR1cmUtc3RhdGVcIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1kcml2ZW5cIn0sXCJoZWF0bWFwLWludGVuc2l0eVwiOnt0eXBlOlwibnVtYmVyXCIsZGVmYXVsdDoxLG1pbmltdW06MCx0cmFuc2l0aW9uOiEwLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMCxwYXJhbWV0ZXJzOltcInpvb21cIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1jb25zdGFudFwifSxcImhlYXRtYXAtY29sb3JcIjp7dHlwZTpcImNvbG9yXCIsZGVmYXVsdDpbXCJpbnRlcnBvbGF0ZVwiLFtcImxpbmVhclwiXSxbXCJoZWF0bWFwLWRlbnNpdHlcIl0sMCxcInJnYmEoMCwgMCwgMjU1LCAwKVwiLC4xLFwicm95YWxibHVlXCIsLjMsXCJjeWFuXCIsLjUsXCJsaW1lXCIsLjcsXCJ5ZWxsb3dcIiwxLFwicmVkXCJdLHRyYW5zaXRpb246ITEsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiaGVhdG1hcC1kZW5zaXR5XCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImNvbG9yLXJhbXBcIn0sXCJoZWF0bWFwLW9wYWNpdHlcIjp7dHlwZTpcIm51bWJlclwiLGRlZmF1bHQ6MSxtaW5pbXVtOjAsbWF4aW11bToxLHRyYW5zaXRpb246ITAsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWNvbnN0YW50XCJ9fSxwYWludF9zeW1ib2w6e1wiaWNvbi1vcGFjaXR5XCI6e3R5cGU6XCJudW1iZXJcIixkZWZhdWx0OjEsbWluaW11bTowLG1heGltdW06MSx0cmFuc2l0aW9uOiEwLHJlcXVpcmVzOltcImljb24taW1hZ2VcIl0sZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiLFwiZmVhdHVyZVwiLFwiZmVhdHVyZS1zdGF0ZVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWRyaXZlblwifSxcImljb24tY29sb3JcIjp7dHlwZTpcImNvbG9yXCIsZGVmYXVsdDpcIiMwMDAwMDBcIix0cmFuc2l0aW9uOiEwLHJlcXVpcmVzOltcImljb24taW1hZ2VcIl0sZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiLFwiZmVhdHVyZVwiLFwiZmVhdHVyZS1zdGF0ZVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWRyaXZlblwifSxcImljb24taGFsby1jb2xvclwiOnt0eXBlOlwiY29sb3JcIixkZWZhdWx0OlwicmdiYSgwLCAwLCAwLCAwKVwiLHRyYW5zaXRpb246ITAscmVxdWlyZXM6W1wiaWNvbi1pbWFnZVwiXSxleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITAscGFyYW1ldGVyczpbXCJ6b29tXCIsXCJmZWF0dXJlXCIsXCJmZWF0dXJlLXN0YXRlXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtZHJpdmVuXCJ9LFwiaWNvbi1oYWxvLXdpZHRoXCI6e3R5cGU6XCJudW1iZXJcIixkZWZhdWx0OjAsbWluaW11bTowLHRyYW5zaXRpb246ITAsdW5pdHM6XCJwaXhlbHNcIixyZXF1aXJlczpbXCJpY29uLWltYWdlXCJdLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMCxwYXJhbWV0ZXJzOltcInpvb21cIixcImZlYXR1cmVcIixcImZlYXR1cmUtc3RhdGVcIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1kcml2ZW5cIn0sXCJpY29uLWhhbG8tYmx1clwiOnt0eXBlOlwibnVtYmVyXCIsZGVmYXVsdDowLG1pbmltdW06MCx0cmFuc2l0aW9uOiEwLHVuaXRzOlwicGl4ZWxzXCIscmVxdWlyZXM6W1wiaWNvbi1pbWFnZVwiXSxleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITAscGFyYW1ldGVyczpbXCJ6b29tXCIsXCJmZWF0dXJlXCIsXCJmZWF0dXJlLXN0YXRlXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtZHJpdmVuXCJ9LFwiaWNvbi10cmFuc2xhdGVcIjp7dHlwZTpcImFycmF5XCIsdmFsdWU6XCJudW1iZXJcIixsZW5ndGg6MixkZWZhdWx0OlswLDBdLHRyYW5zaXRpb246ITAsdW5pdHM6XCJwaXhlbHNcIixyZXF1aXJlczpbXCJpY29uLWltYWdlXCJdLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMCxwYXJhbWV0ZXJzOltcInpvb21cIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1jb25zdGFudFwifSxcImljb24tdHJhbnNsYXRlLWFuY2hvclwiOnt0eXBlOlwiZW51bVwiLHZhbHVlczp7bWFwOnt9LHZpZXdwb3J0Ont9fSxkZWZhdWx0OlwibWFwXCIscmVxdWlyZXM6W1wiaWNvbi1pbWFnZVwiLFwiaWNvbi10cmFuc2xhdGVcIl0sZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiExLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWNvbnN0YW50XCJ9LFwidGV4dC1vcGFjaXR5XCI6e3R5cGU6XCJudW1iZXJcIixkZWZhdWx0OjEsbWluaW11bTowLG1heGltdW06MSx0cmFuc2l0aW9uOiEwLHJlcXVpcmVzOltcInRleHQtZmllbGRcIl0sZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiLFwiZmVhdHVyZVwiLFwiZmVhdHVyZS1zdGF0ZVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWRyaXZlblwifSxcInRleHQtY29sb3JcIjp7dHlwZTpcImNvbG9yXCIsZGVmYXVsdDpcIiMwMDAwMDBcIix0cmFuc2l0aW9uOiEwLG92ZXJyaWRhYmxlOiEwLHJlcXVpcmVzOltcInRleHQtZmllbGRcIl0sZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiLFwiZmVhdHVyZVwiLFwiZmVhdHVyZS1zdGF0ZVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWRyaXZlblwifSxcInRleHQtaGFsby1jb2xvclwiOnt0eXBlOlwiY29sb3JcIixkZWZhdWx0OlwicmdiYSgwLCAwLCAwLCAwKVwiLHRyYW5zaXRpb246ITAscmVxdWlyZXM6W1widGV4dC1maWVsZFwiXSxleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITAscGFyYW1ldGVyczpbXCJ6b29tXCIsXCJmZWF0dXJlXCIsXCJmZWF0dXJlLXN0YXRlXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtZHJpdmVuXCJ9LFwidGV4dC1oYWxvLXdpZHRoXCI6e3R5cGU6XCJudW1iZXJcIixkZWZhdWx0OjAsbWluaW11bTowLHRyYW5zaXRpb246ITAsdW5pdHM6XCJwaXhlbHNcIixyZXF1aXJlczpbXCJ0ZXh0LWZpZWxkXCJdLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMCxwYXJhbWV0ZXJzOltcInpvb21cIixcImZlYXR1cmVcIixcImZlYXR1cmUtc3RhdGVcIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1kcml2ZW5cIn0sXCJ0ZXh0LWhhbG8tYmx1clwiOnt0eXBlOlwibnVtYmVyXCIsZGVmYXVsdDowLG1pbmltdW06MCx0cmFuc2l0aW9uOiEwLHVuaXRzOlwicGl4ZWxzXCIscmVxdWlyZXM6W1widGV4dC1maWVsZFwiXSxleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITAscGFyYW1ldGVyczpbXCJ6b29tXCIsXCJmZWF0dXJlXCIsXCJmZWF0dXJlLXN0YXRlXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtZHJpdmVuXCJ9LFwidGV4dC10cmFuc2xhdGVcIjp7dHlwZTpcImFycmF5XCIsdmFsdWU6XCJudW1iZXJcIixsZW5ndGg6MixkZWZhdWx0OlswLDBdLHRyYW5zaXRpb246ITAsdW5pdHM6XCJwaXhlbHNcIixyZXF1aXJlczpbXCJ0ZXh0LWZpZWxkXCJdLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMCxwYXJhbWV0ZXJzOltcInpvb21cIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1jb25zdGFudFwifSxcInRleHQtdHJhbnNsYXRlLWFuY2hvclwiOnt0eXBlOlwiZW51bVwiLHZhbHVlczp7bWFwOnt9LHZpZXdwb3J0Ont9fSxkZWZhdWx0OlwibWFwXCIscmVxdWlyZXM6W1widGV4dC1maWVsZFwiLFwidGV4dC10cmFuc2xhdGVcIl0sZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiExLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWNvbnN0YW50XCJ9fSxwYWludF9yYXN0ZXI6e1wicmFzdGVyLW9wYWNpdHlcIjp7dHlwZTpcIm51bWJlclwiLGRlZmF1bHQ6MSxtaW5pbXVtOjAsbWF4aW11bToxLHRyYW5zaXRpb246ITAsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWNvbnN0YW50XCJ9LFwicmFzdGVyLWh1ZS1yb3RhdGVcIjp7dHlwZTpcIm51bWJlclwiLGRlZmF1bHQ6MCxwZXJpb2Q6MzYwLHRyYW5zaXRpb246ITAsdW5pdHM6XCJkZWdyZWVzXCIsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWNvbnN0YW50XCJ9LFwicmFzdGVyLWJyaWdodG5lc3MtbWluXCI6e3R5cGU6XCJudW1iZXJcIixkZWZhdWx0OjAsbWluaW11bTowLG1heGltdW06MSx0cmFuc2l0aW9uOiEwLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMCxwYXJhbWV0ZXJzOltcInpvb21cIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1jb25zdGFudFwifSxcInJhc3Rlci1icmlnaHRuZXNzLW1heFwiOnt0eXBlOlwibnVtYmVyXCIsZGVmYXVsdDoxLG1pbmltdW06MCxtYXhpbXVtOjEsdHJhbnNpdGlvbjohMCxleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITAscGFyYW1ldGVyczpbXCJ6b29tXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtY29uc3RhbnRcIn0sXCJyYXN0ZXItc2F0dXJhdGlvblwiOnt0eXBlOlwibnVtYmVyXCIsZGVmYXVsdDowLG1pbmltdW06LTEsbWF4aW11bToxLHRyYW5zaXRpb246ITAsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWNvbnN0YW50XCJ9LFwicmFzdGVyLWNvbnRyYXN0XCI6e3R5cGU6XCJudW1iZXJcIixkZWZhdWx0OjAsbWluaW11bTotMSxtYXhpbXVtOjEsdHJhbnNpdGlvbjohMCxleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITAscGFyYW1ldGVyczpbXCJ6b29tXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtY29uc3RhbnRcIn0sXCJyYXN0ZXItcmVzYW1wbGluZ1wiOnt0eXBlOlwiZW51bVwiLHZhbHVlczp7bGluZWFyOnt9LG5lYXJlc3Q6e319LGRlZmF1bHQ6XCJsaW5lYXJcIixleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITEscGFyYW1ldGVyczpbXCJ6b29tXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtY29uc3RhbnRcIn0sXCJyYXN0ZXItZmFkZS1kdXJhdGlvblwiOnt0eXBlOlwibnVtYmVyXCIsZGVmYXVsdDozMDAsbWluaW11bTowLHRyYW5zaXRpb246ITEsdW5pdHM6XCJtaWxsaXNlY29uZHNcIixleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITAscGFyYW1ldGVyczpbXCJ6b29tXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtY29uc3RhbnRcIn19LHBhaW50X2hpbGxzaGFkZTp7XCJoaWxsc2hhZGUtaWxsdW1pbmF0aW9uLWRpcmVjdGlvblwiOnt0eXBlOlwibnVtYmVyXCIsZGVmYXVsdDozMzUsbWluaW11bTowLG1heGltdW06MzU5LHRyYW5zaXRpb246ITEsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWNvbnN0YW50XCJ9LFwiaGlsbHNoYWRlLWlsbHVtaW5hdGlvbi1hbmNob3JcIjp7dHlwZTpcImVudW1cIix2YWx1ZXM6e21hcDp7fSx2aWV3cG9ydDp7fX0sZGVmYXVsdDpcInZpZXdwb3J0XCIsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiExLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWNvbnN0YW50XCJ9LFwiaGlsbHNoYWRlLWV4YWdnZXJhdGlvblwiOnt0eXBlOlwibnVtYmVyXCIsZGVmYXVsdDouNSxtaW5pbXVtOjAsbWF4aW11bToxLHRyYW5zaXRpb246ITAsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWNvbnN0YW50XCJ9LFwiaGlsbHNoYWRlLXNoYWRvdy1jb2xvclwiOnt0eXBlOlwiY29sb3JcIixkZWZhdWx0OlwiIzAwMDAwMFwiLHRyYW5zaXRpb246ITAsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWNvbnN0YW50XCJ9LFwiaGlsbHNoYWRlLWhpZ2hsaWdodC1jb2xvclwiOnt0eXBlOlwiY29sb3JcIixkZWZhdWx0OlwiI0ZGRkZGRlwiLHRyYW5zaXRpb246ITAsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWNvbnN0YW50XCJ9LFwiaGlsbHNoYWRlLWFjY2VudC1jb2xvclwiOnt0eXBlOlwiY29sb3JcIixkZWZhdWx0OlwiIzAwMDAwMFwiLHRyYW5zaXRpb246ITAsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiEwLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWNvbnN0YW50XCJ9fSxwYWludF9iYWNrZ3JvdW5kOntcImJhY2tncm91bmQtY29sb3JcIjp7dHlwZTpcImNvbG9yXCIsZGVmYXVsdDpcIiMwMDAwMDBcIix0cmFuc2l0aW9uOiEwLHJlcXVpcmVzOlt7XCIhXCI6XCJiYWNrZ3JvdW5kLXBhdHRlcm5cIn1dLGV4cHJlc3Npb246e2ludGVycG9sYXRlZDohMCxwYXJhbWV0ZXJzOltcInpvb21cIl19LFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1jb25zdGFudFwifSxcImJhY2tncm91bmQtcGF0dGVyblwiOnt0eXBlOlwicmVzb2x2ZWRJbWFnZVwiLHRyYW5zaXRpb246ITAsZXhwcmVzc2lvbjp7aW50ZXJwb2xhdGVkOiExLHBhcmFtZXRlcnM6W1wiem9vbVwiXX0sXCJwcm9wZXJ0eS10eXBlXCI6XCJjcm9zcy1mYWRlZFwifSxcImJhY2tncm91bmQtb3BhY2l0eVwiOnt0eXBlOlwibnVtYmVyXCIsZGVmYXVsdDoxLG1pbmltdW06MCxtYXhpbXVtOjEsdHJhbnNpdGlvbjohMCxleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITAscGFyYW1ldGVyczpbXCJ6b29tXCJdfSxcInByb3BlcnR5LXR5cGVcIjpcImRhdGEtY29uc3RhbnRcIn19LHRyYW5zaXRpb246e2R1cmF0aW9uOnt0eXBlOlwibnVtYmVyXCIsZGVmYXVsdDozMDAsbWluaW11bTowLHVuaXRzOlwibWlsbGlzZWNvbmRzXCJ9LGRlbGF5Ont0eXBlOlwibnVtYmVyXCIsZGVmYXVsdDowLG1pbmltdW06MCx1bml0czpcIm1pbGxpc2Vjb25kc1wifX0sXCJwcm9wZXJ0eS10eXBlXCI6e1wiZGF0YS1kcml2ZW5cIjp7dHlwZTpcInByb3BlcnR5LXR5cGVcIn0sXCJjcm9zcy1mYWRlZFwiOnt0eXBlOlwicHJvcGVydHktdHlwZVwifSxcImNyb3NzLWZhZGVkLWRhdGEtZHJpdmVuXCI6e3R5cGU6XCJwcm9wZXJ0eS10eXBlXCJ9LFwiY29sb3ItcmFtcFwiOnt0eXBlOlwicHJvcGVydHktdHlwZVwifSxcImRhdGEtY29uc3RhbnRcIjp7dHlwZTpcInByb3BlcnR5LXR5cGVcIn0sY29uc3RhbnQ6e3R5cGU6XCJwcm9wZXJ0eS10eXBlXCJ9fSxwcm9tb3RlSWQ6e1wiKlwiOnt0eXBlOlwic3RyaW5nXCJ9fX07Y29uc3QgSz1bXCJ0eXBlXCIsXCJzb3VyY2VcIixcInNvdXJjZS1sYXllclwiLFwibWluem9vbVwiLFwibWF4em9vbVwiLFwiZmlsdGVyXCIsXCJsYXlvdXRcIl07ZnVuY3Rpb24gWCh0LGUpe2NvbnN0IHI9e307Zm9yKGNvbnN0IGUgaW4gdClcInJlZlwiIT09ZSYmKHJbZV09dFtlXSk7cmV0dXJuIEsuZm9yRWFjaCgodD0+e3QgaW4gZSYmKHJbdF09ZVt0XSk7fSkpLHJ9ZnVuY3Rpb24gSCh0LGUpe2lmKEFycmF5LmlzQXJyYXkodCkpe2lmKCFBcnJheS5pc0FycmF5KGUpfHx0Lmxlbmd0aCE9PWUubGVuZ3RoKXJldHVybiAhMTtmb3IobGV0IHI9MDtyPHQubGVuZ3RoO3IrKylpZighSCh0W3JdLGVbcl0pKXJldHVybiAhMTtyZXR1cm4gITB9aWYoXCJvYmplY3RcIj09dHlwZW9mIHQmJm51bGwhPT10JiZudWxsIT09ZSl7aWYoXCJvYmplY3RcIiE9dHlwZW9mIGUpcmV0dXJuICExO2lmKE9iamVjdC5rZXlzKHQpLmxlbmd0aCE9PU9iamVjdC5rZXlzKGUpLmxlbmd0aClyZXR1cm4gITE7Zm9yKGNvbnN0IHIgaW4gdClpZighSCh0W3JdLGVbcl0pKXJldHVybiAhMTtyZXR1cm4gITB9cmV0dXJuIHQ9PT1lfWZ1bmN0aW9uIFkodCxlKXt0LnB1c2goZSk7fWZ1bmN0aW9uIEoodCxlLHIpe1kocix7Y29tbWFuZDpcImFkZFNvdXJjZVwiLGFyZ3M6W3QsZVt0XV19KTt9ZnVuY3Rpb24gVyh0LGUscil7WShlLHtjb21tYW5kOlwicmVtb3ZlU291cmNlXCIsYXJnczpbdF19KSxyW3RdPSEwO31mdW5jdGlvbiBRKHQsZSxyLG4pe1codCxyLG4pLEoodCxlLHIpO31mdW5jdGlvbiB0dCh0LGUscil7bGV0IG47Zm9yKG4gaW4gdFtyXSlpZihPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodFtyXSxuKSYmXCJkYXRhXCIhPT1uJiYhSCh0W3JdW25dLGVbcl1bbl0pKXJldHVybiAhMTtmb3IobiBpbiBlW3JdKWlmKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlW3JdLG4pJiZcImRhdGFcIiE9PW4mJiFIKHRbcl1bbl0sZVtyXVtuXSkpcmV0dXJuICExO3JldHVybiAhMH1mdW5jdGlvbiBldCh0LGUscixuLGkscyl7dD10fHx7fSxlPWV8fHt9O2Zvcihjb25zdCBhIGluIHQpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQsYSkmJihIKHRbYV0sZVthXSl8fHIucHVzaCh7Y29tbWFuZDpzLGFyZ3M6W24sYSxlW2FdLGldfSkpO2Zvcihjb25zdCBhIGluIGUpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsYSkmJiFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodCxhKSYmKEgodFthXSxlW2FdKXx8ci5wdXNoKHtjb21tYW5kOnMsYXJnczpbbixhLGVbYV0saV19KSk7fWZ1bmN0aW9uIHJ0KHQpe3JldHVybiB0LmlkfWZ1bmN0aW9uIG50KHQsZSl7cmV0dXJuIHRbZS5pZF09ZSx0fWNsYXNzIGl0e2NvbnN0cnVjdG9yKHQsZSxyLG4pe3RoaXMubWVzc2FnZT0odD9gJHt0fTogYDpcIlwiKStyLG4mJih0aGlzLmlkZW50aWZpZXI9biksbnVsbCE9ZSYmZS5fX2xpbmVfXyYmKHRoaXMubGluZT1lLl9fbGluZV9fKTt9fWZ1bmN0aW9uIHN0KHQsLi4uZSl7Zm9yKGNvbnN0IHIgb2YgZSlmb3IoY29uc3QgZSBpbiByKXRbZV09cltlXTtyZXR1cm4gdH1jbGFzcyBhdCBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKHQsZSl7c3VwZXIoZSksdGhpcy5tZXNzYWdlPWUsdGhpcy5rZXk9dDt9fWNsYXNzIG90e2NvbnN0cnVjdG9yKHQsZT1bXSl7dGhpcy5wYXJlbnQ9dCx0aGlzLmJpbmRpbmdzPXt9O2Zvcihjb25zdFt0LHJdb2YgZSl0aGlzLmJpbmRpbmdzW3RdPXI7fWNvbmNhdCh0KXtyZXR1cm4gbmV3IG90KHRoaXMsdCl9Z2V0KHQpe2lmKHRoaXMuYmluZGluZ3NbdF0pcmV0dXJuIHRoaXMuYmluZGluZ3NbdF07aWYodGhpcy5wYXJlbnQpcmV0dXJuIHRoaXMucGFyZW50LmdldCh0KTt0aHJvdyBuZXcgRXJyb3IoYCR7dH0gbm90IGZvdW5kIGluIHNjb3BlLmApfWhhcyh0KXtyZXR1cm4gISF0aGlzLmJpbmRpbmdzW3RdfHwhIXRoaXMucGFyZW50JiZ0aGlzLnBhcmVudC5oYXModCl9fWNvbnN0IGx0PXtraW5kOlwibnVsbFwifSx1dD17a2luZDpcIm51bWJlclwifSxjdD17a2luZDpcInN0cmluZ1wifSxodD17a2luZDpcImJvb2xlYW5cIn0scHQ9e2tpbmQ6XCJjb2xvclwifSxmdD17a2luZDpcIm9iamVjdFwifSxkdD17a2luZDpcInZhbHVlXCJ9LHl0PXtraW5kOlwiY29sbGF0b3JcIn0sbXQ9e2tpbmQ6XCJmb3JtYXR0ZWRcIn0sZ3Q9e2tpbmQ6XCJwYWRkaW5nXCJ9LHh0PXtraW5kOlwicmVzb2x2ZWRJbWFnZVwifSx2dD17a2luZDpcInZhcmlhYmxlQW5jaG9yT2Zmc2V0Q29sbGVjdGlvblwifTtmdW5jdGlvbiBidCh0LGUpe3JldHVybiB7a2luZDpcImFycmF5XCIsaXRlbVR5cGU6dCxOOmV9fWZ1bmN0aW9uIHd0KHQpe2lmKFwiYXJyYXlcIj09PXQua2luZCl7Y29uc3QgZT13dCh0Lml0ZW1UeXBlKTtyZXR1cm4gXCJudW1iZXJcIj09dHlwZW9mIHQuTj9gYXJyYXk8JHtlfSwgJHt0Lk59PmA6XCJ2YWx1ZVwiPT09dC5pdGVtVHlwZS5raW5kP1wiYXJyYXlcIjpgYXJyYXk8JHtlfT5gfXJldHVybiB0LmtpbmR9Y29uc3QgX3Q9W2x0LHV0LGN0LGh0LHB0LG10LGZ0LGJ0KGR0KSxndCx4dCx2dF07ZnVuY3Rpb24gQXQodCxlKXtpZihcImVycm9yXCI9PT1lLmtpbmQpcmV0dXJuIG51bGw7aWYoXCJhcnJheVwiPT09dC5raW5kKXtpZihcImFycmF5XCI9PT1lLmtpbmQmJigwPT09ZS5OJiZcInZhbHVlXCI9PT1lLml0ZW1UeXBlLmtpbmR8fCFBdCh0Lml0ZW1UeXBlLGUuaXRlbVR5cGUpKSYmKFwibnVtYmVyXCIhPXR5cGVvZiB0Lk58fHQuTj09PWUuTikpcmV0dXJuIG51bGx9ZWxzZSB7aWYodC5raW5kPT09ZS5raW5kKXJldHVybiBudWxsO2lmKFwidmFsdWVcIj09PXQua2luZClmb3IoY29uc3QgdCBvZiBfdClpZighQXQodCxlKSlyZXR1cm4gbnVsbH1yZXR1cm4gYEV4cGVjdGVkICR7d3QodCl9IGJ1dCBmb3VuZCAke3d0KGUpfSBpbnN0ZWFkLmB9ZnVuY3Rpb24gU3QodCxlKXtyZXR1cm4gZS5zb21lKChlPT5lLmtpbmQ9PT10LmtpbmQpKX1mdW5jdGlvbiBrdCh0LGUpe3JldHVybiBlLnNvbWUoKGU9PlwibnVsbFwiPT09ZT9udWxsPT09dDpcImFycmF5XCI9PT1lP0FycmF5LmlzQXJyYXkodCk6XCJvYmplY3RcIj09PWU/dCYmIUFycmF5LmlzQXJyYXkodCkmJlwib2JqZWN0XCI9PXR5cGVvZiB0OmU9PT10eXBlb2YgdCkpfWZ1bmN0aW9uIE10KHQsZSl7cmV0dXJuIFwiYXJyYXlcIj09PXQua2luZCYmXCJhcnJheVwiPT09ZS5raW5kP3QuaXRlbVR5cGUua2luZD09PWUuaXRlbVR5cGUua2luZCYmXCJudW1iZXJcIj09dHlwZW9mIHQuTjp0LmtpbmQ9PT1lLmtpbmR9Y29uc3QgSXQ9Ljk2NDIyLHp0PS44MjUyMSxQdD00LzI5LEN0PTYvMjksQnQ9MypDdCpDdCxWdD1DdCpDdCpDdCxFdD1NYXRoLlBJLzE4MCxGdD0xODAvTWF0aC5QSTtmdW5jdGlvbiBUdCh0KXtyZXR1cm4gKHQlPTM2MCk8MCYmKHQrPTM2MCksdH1mdW5jdGlvbiAkdChbdCxlLHIsbl0pe2xldCBpLHM7Y29uc3QgYT1EdCgoLjIyMjUwNDUqKHQ9THQodCkpKy43MTY4Nzg2KihlPUx0KGUpKSsuMDYwNjE2OSoocj1MdChyKSkpLzEpO3Q9PT1lJiZlPT09cj9pPXM9YTooaT1EdCgoLjQzNjA3NDcqdCsuMzg1MDY0OSplKy4xNDMwODA0KnIpL0l0KSxzPUR0KCguMDEzOTMyMip0Ky4wOTcxMDQ1KmUrLjcxNDE3MzMqcikvenQpKTtjb25zdCBvPTExNiphLTE2O3JldHVybiBbbzwwPzA6byw1MDAqKGktYSksMjAwKihhLXMpLG5dfWZ1bmN0aW9uIEx0KHQpe3JldHVybiB0PD0uMDQwNDU/dC8xMi45MjpNYXRoLnBvdygodCsuMDU1KS8xLjA1NSwyLjQpfWZ1bmN0aW9uIER0KHQpe3JldHVybiB0PlZ0P01hdGgucG93KHQsMS8zKTp0L0J0K1B0fWZ1bmN0aW9uIE90KFt0LGUscixuXSl7bGV0IGk9KHQrMTYpLzExNixzPWlzTmFOKGUpP2k6aStlLzUwMCxhPWlzTmFOKHIpP2k6aS1yLzIwMDtyZXR1cm4gaT0xKlJ0KGkpLHM9SXQqUnQocyksYT16dCpSdChhKSxbanQoMy4xMzM4NTYxKnMtMS42MTY4NjY3KmktLjQ5MDYxNDYqYSksanQoLS45Nzg3Njg0KnMrMS45MTYxNDE1KmkrLjAzMzQ1NCphKSxqdCguMDcxOTQ1MypzLS4yMjg5OTE0KmkrMS40MDUyNDI3KmEpLG5dfWZ1bmN0aW9uIGp0KHQpe3JldHVybiAodD10PD0uMDAzMDQ/MTIuOTIqdDoxLjA1NSpNYXRoLnBvdyh0LDEvMi40KS0uMDU1KTwwPzA6dD4xPzE6dH1mdW5jdGlvbiBSdCh0KXtyZXR1cm4gdD5DdD90KnQqdDpCdCoodC1QdCl9ZnVuY3Rpb24gVXQodCl7cmV0dXJuIHBhcnNlSW50KHQucGFkRW5kKDIsdCksMTYpLzI1NX1mdW5jdGlvbiBxdCh0LGUpe3JldHVybiBOdChlP3QvMTAwOnQsMCwxKX1mdW5jdGlvbiBOdCh0LGUscil7cmV0dXJuIE1hdGgubWluKE1hdGgubWF4KGUsdCkscil9ZnVuY3Rpb24gWnQodCl7cmV0dXJuICF0LnNvbWUoTnVtYmVyLmlzTmFOKX1jb25zdCBHdD17YWxpY2VibHVlOlsyNDAsMjQ4LDI1NV0sYW50aXF1ZXdoaXRlOlsyNTAsMjM1LDIxNV0sYXF1YTpbMCwyNTUsMjU1XSxhcXVhbWFyaW5lOlsxMjcsMjU1LDIxMl0sYXp1cmU6WzI0MCwyNTUsMjU1XSxiZWlnZTpbMjQ1LDI0NSwyMjBdLGJpc3F1ZTpbMjU1LDIyOCwxOTZdLGJsYWNrOlswLDAsMF0sYmxhbmNoZWRhbG1vbmQ6WzI1NSwyMzUsMjA1XSxibHVlOlswLDAsMjU1XSxibHVldmlvbGV0OlsxMzgsNDMsMjI2XSxicm93bjpbMTY1LDQyLDQyXSxidXJseXdvb2Q6WzIyMiwxODQsMTM1XSxjYWRldGJsdWU6Wzk1LDE1OCwxNjBdLGNoYXJ0cmV1c2U6WzEyNywyNTUsMF0sY2hvY29sYXRlOlsyMTAsMTA1LDMwXSxjb3JhbDpbMjU1LDEyNyw4MF0sY29ybmZsb3dlcmJsdWU6WzEwMCwxNDksMjM3XSxjb3Juc2lsazpbMjU1LDI0OCwyMjBdLGNyaW1zb246WzIyMCwyMCw2MF0sY3lhbjpbMCwyNTUsMjU1XSxkYXJrYmx1ZTpbMCwwLDEzOV0sZGFya2N5YW46WzAsMTM5LDEzOV0sZGFya2dvbGRlbnJvZDpbMTg0LDEzNCwxMV0sZGFya2dyYXk6WzE2OSwxNjksMTY5XSxkYXJrZ3JlZW46WzAsMTAwLDBdLGRhcmtncmV5OlsxNjksMTY5LDE2OV0sZGFya2toYWtpOlsxODksMTgzLDEwN10sZGFya21hZ2VudGE6WzEzOSwwLDEzOV0sZGFya29saXZlZ3JlZW46Wzg1LDEwNyw0N10sZGFya29yYW5nZTpbMjU1LDE0MCwwXSxkYXJrb3JjaGlkOlsxNTMsNTAsMjA0XSxkYXJrcmVkOlsxMzksMCwwXSxkYXJrc2FsbW9uOlsyMzMsMTUwLDEyMl0sZGFya3NlYWdyZWVuOlsxNDMsMTg4LDE0M10sZGFya3NsYXRlYmx1ZTpbNzIsNjEsMTM5XSxkYXJrc2xhdGVncmF5Ols0Nyw3OSw3OV0sZGFya3NsYXRlZ3JleTpbNDcsNzksNzldLGRhcmt0dXJxdW9pc2U6WzAsMjA2LDIwOV0sZGFya3Zpb2xldDpbMTQ4LDAsMjExXSxkZWVwcGluazpbMjU1LDIwLDE0N10sZGVlcHNreWJsdWU6WzAsMTkxLDI1NV0sZGltZ3JheTpbMTA1LDEwNSwxMDVdLGRpbWdyZXk6WzEwNSwxMDUsMTA1XSxkb2RnZXJibHVlOlszMCwxNDQsMjU1XSxmaXJlYnJpY2s6WzE3OCwzNCwzNF0sZmxvcmFsd2hpdGU6WzI1NSwyNTAsMjQwXSxmb3Jlc3RncmVlbjpbMzQsMTM5LDM0XSxmdWNoc2lhOlsyNTUsMCwyNTVdLGdhaW5zYm9ybzpbMjIwLDIyMCwyMjBdLGdob3N0d2hpdGU6WzI0OCwyNDgsMjU1XSxnb2xkOlsyNTUsMjE1LDBdLGdvbGRlbnJvZDpbMjE4LDE2NSwzMl0sZ3JheTpbMTI4LDEyOCwxMjhdLGdyZWVuOlswLDEyOCwwXSxncmVlbnllbGxvdzpbMTczLDI1NSw0N10sZ3JleTpbMTI4LDEyOCwxMjhdLGhvbmV5ZGV3OlsyNDAsMjU1LDI0MF0saG90cGluazpbMjU1LDEwNSwxODBdLGluZGlhbnJlZDpbMjA1LDkyLDkyXSxpbmRpZ286Wzc1LDAsMTMwXSxpdm9yeTpbMjU1LDI1NSwyNDBdLGtoYWtpOlsyNDAsMjMwLDE0MF0sbGF2ZW5kZXI6WzIzMCwyMzAsMjUwXSxsYXZlbmRlcmJsdXNoOlsyNTUsMjQwLDI0NV0sbGF3bmdyZWVuOlsxMjQsMjUyLDBdLGxlbW9uY2hpZmZvbjpbMjU1LDI1MCwyMDVdLGxpZ2h0Ymx1ZTpbMTczLDIxNiwyMzBdLGxpZ2h0Y29yYWw6WzI0MCwxMjgsMTI4XSxsaWdodGN5YW46WzIyNCwyNTUsMjU1XSxsaWdodGdvbGRlbnJvZHllbGxvdzpbMjUwLDI1MCwyMTBdLGxpZ2h0Z3JheTpbMjExLDIxMSwyMTFdLGxpZ2h0Z3JlZW46WzE0NCwyMzgsMTQ0XSxsaWdodGdyZXk6WzIxMSwyMTEsMjExXSxsaWdodHBpbms6WzI1NSwxODIsMTkzXSxsaWdodHNhbG1vbjpbMjU1LDE2MCwxMjJdLGxpZ2h0c2VhZ3JlZW46WzMyLDE3OCwxNzBdLGxpZ2h0c2t5Ymx1ZTpbMTM1LDIwNiwyNTBdLGxpZ2h0c2xhdGVncmF5OlsxMTksMTM2LDE1M10sbGlnaHRzbGF0ZWdyZXk6WzExOSwxMzYsMTUzXSxsaWdodHN0ZWVsYmx1ZTpbMTc2LDE5NiwyMjJdLGxpZ2h0eWVsbG93OlsyNTUsMjU1LDIyNF0sbGltZTpbMCwyNTUsMF0sbGltZWdyZWVuOls1MCwyMDUsNTBdLGxpbmVuOlsyNTAsMjQwLDIzMF0sbWFnZW50YTpbMjU1LDAsMjU1XSxtYXJvb246WzEyOCwwLDBdLG1lZGl1bWFxdWFtYXJpbmU6WzEwMiwyMDUsMTcwXSxtZWRpdW1ibHVlOlswLDAsMjA1XSxtZWRpdW1vcmNoaWQ6WzE4Niw4NSwyMTFdLG1lZGl1bXB1cnBsZTpbMTQ3LDExMiwyMTldLG1lZGl1bXNlYWdyZWVuOls2MCwxNzksMTEzXSxtZWRpdW1zbGF0ZWJsdWU6WzEyMywxMDQsMjM4XSxtZWRpdW1zcHJpbmdncmVlbjpbMCwyNTAsMTU0XSxtZWRpdW10dXJxdW9pc2U6WzcyLDIwOSwyMDRdLG1lZGl1bXZpb2xldHJlZDpbMTk5LDIxLDEzM10sbWlkbmlnaHRibHVlOlsyNSwyNSwxMTJdLG1pbnRjcmVhbTpbMjQ1LDI1NSwyNTBdLG1pc3R5cm9zZTpbMjU1LDIyOCwyMjVdLG1vY2Nhc2luOlsyNTUsMjI4LDE4MV0sbmF2YWpvd2hpdGU6WzI1NSwyMjIsMTczXSxuYXZ5OlswLDAsMTI4XSxvbGRsYWNlOlsyNTMsMjQ1LDIzMF0sb2xpdmU6WzEyOCwxMjgsMF0sb2xpdmVkcmFiOlsxMDcsMTQyLDM1XSxvcmFuZ2U6WzI1NSwxNjUsMF0sb3JhbmdlcmVkOlsyNTUsNjksMF0sb3JjaGlkOlsyMTgsMTEyLDIxNF0scGFsZWdvbGRlbnJvZDpbMjM4LDIzMiwxNzBdLHBhbGVncmVlbjpbMTUyLDI1MSwxNTJdLHBhbGV0dXJxdW9pc2U6WzE3NSwyMzgsMjM4XSxwYWxldmlvbGV0cmVkOlsyMTksMTEyLDE0N10scGFwYXlhd2hpcDpbMjU1LDIzOSwyMTNdLHBlYWNocHVmZjpbMjU1LDIxOCwxODVdLHBlcnU6WzIwNSwxMzMsNjNdLHBpbms6WzI1NSwxOTIsMjAzXSxwbHVtOlsyMjEsMTYwLDIyMV0scG93ZGVyYmx1ZTpbMTc2LDIyNCwyMzBdLHB1cnBsZTpbMTI4LDAsMTI4XSxyZWJlY2NhcHVycGxlOlsxMDIsNTEsMTUzXSxyZWQ6WzI1NSwwLDBdLHJvc3licm93bjpbMTg4LDE0MywxNDNdLHJveWFsYmx1ZTpbNjUsMTA1LDIyNV0sc2FkZGxlYnJvd246WzEzOSw2OSwxOV0sc2FsbW9uOlsyNTAsMTI4LDExNF0sc2FuZHlicm93bjpbMjQ0LDE2NCw5Nl0sc2VhZ3JlZW46WzQ2LDEzOSw4N10sc2Vhc2hlbGw6WzI1NSwyNDUsMjM4XSxzaWVubmE6WzE2MCw4Miw0NV0sc2lsdmVyOlsxOTIsMTkyLDE5Ml0sc2t5Ymx1ZTpbMTM1LDIwNiwyMzVdLHNsYXRlYmx1ZTpbMTA2LDkwLDIwNV0sc2xhdGVncmF5OlsxMTIsMTI4LDE0NF0sc2xhdGVncmV5OlsxMTIsMTI4LDE0NF0sc25vdzpbMjU1LDI1MCwyNTBdLHNwcmluZ2dyZWVuOlswLDI1NSwxMjddLHN0ZWVsYmx1ZTpbNzAsMTMwLDE4MF0sdGFuOlsyMTAsMTgwLDE0MF0sdGVhbDpbMCwxMjgsMTI4XSx0aGlzdGxlOlsyMTYsMTkxLDIxNl0sdG9tYXRvOlsyNTUsOTksNzFdLHR1cnF1b2lzZTpbNjQsMjI0LDIwOF0sdmlvbGV0OlsyMzgsMTMwLDIzOF0sd2hlYXQ6WzI0NSwyMjIsMTc5XSx3aGl0ZTpbMjU1LDI1NSwyNTVdLHdoaXRlc21va2U6WzI0NSwyNDUsMjQ1XSx5ZWxsb3c6WzI1NSwyNTUsMF0seWVsbG93Z3JlZW46WzE1NCwyMDUsNTBdfTtjbGFzcyBLdHtjb25zdHJ1Y3Rvcih0LGUscixuPTEsaT0hMCl7dGhpcy5yPXQsdGhpcy5nPWUsdGhpcy5iPXIsdGhpcy5hPW4saXx8KHRoaXMucio9bix0aGlzLmcqPW4sdGhpcy5iKj1uLG58fHRoaXMub3ZlcndyaXRlR2V0dGVyKFwicmdiXCIsW3QsZSxyLG5dKSk7fXN0YXRpYyBwYXJzZSh0KXtpZih0IGluc3RhbmNlb2YgS3QpcmV0dXJuIHQ7aWYoXCJzdHJpbmdcIiE9dHlwZW9mIHQpcmV0dXJuO2NvbnN0IGU9ZnVuY3Rpb24odCl7aWYoXCJ0cmFuc3BhcmVudFwiPT09KHQ9dC50b0xvd2VyQ2FzZSgpLnRyaW0oKSkpcmV0dXJuIFswLDAsMCwwXTtjb25zdCBlPUd0W3RdO2lmKGUpe2NvbnN0W3QscixuXT1lO3JldHVybiBbdC8yNTUsci8yNTUsbi8yNTUsMV19aWYodC5zdGFydHNXaXRoKFwiI1wiKSYmL14jKD86WzAtOWEtZl17Myw0fXxbMC05YS1mXXs2fXxbMC05YS1mXXs4fSkkLy50ZXN0KHQpKXtjb25zdCBlPXQubGVuZ3RoPDY/MToyO2xldCByPTE7cmV0dXJuIFtVdCh0LnNsaWNlKHIscis9ZSkpLFV0KHQuc2xpY2UocixyKz1lKSksVXQodC5zbGljZShyLHIrPWUpKSxVdCh0LnNsaWNlKHIscitlKXx8XCJmZlwiKV19aWYodC5zdGFydHNXaXRoKFwicmdiXCIpKXtjb25zdCBlPXQubWF0Y2goL15yZ2JhP1xcKFxccyooW1xcZGUuKy1dKykoJSk/KD86XFxzK3xcXHMqKCwpXFxzKikoW1xcZGUuKy1dKykoJSk/KD86XFxzK3xcXHMqKCwpXFxzKikoW1xcZGUuKy1dKykoJSk/KD86XFxzKihbLFxcL10pXFxzKihbXFxkZS4rLV0rKSglKT8pP1xccypcXCkkLyk7aWYoZSl7Y29uc3RbdCxyLG4saSxzLGEsbyxsLHUsYyxoLHBdPWUsZj1baXx8XCIgXCIsb3x8XCIgXCIsY10uam9pbihcIlwiKTtpZihcIiAgXCI9PT1mfHxcIiAgL1wiPT09Znx8XCIsLFwiPT09Znx8XCIsLCxcIj09PWYpe2NvbnN0IHQ9W24sYSx1XS5qb2luKFwiXCIpLGU9XCIlJSVcIj09PXQ/MTAwOlwiXCI9PT10PzI1NTowO2lmKGUpe2NvbnN0IHQ9W050KCtyL2UsMCwxKSxOdCgrcy9lLDAsMSksTnQoK2wvZSwwLDEpLGg/cXQoK2gscCk6MV07aWYoWnQodCkpcmV0dXJuIHR9fXJldHVybn19Y29uc3Qgcj10Lm1hdGNoKC9eaHNsYT9cXChcXHMqKFtcXGRlListXSspKD86ZGVnKT8oPzpcXHMrfFxccyooLClcXHMqKShbXFxkZS4rLV0rKSUoPzpcXHMrfFxccyooLClcXHMqKShbXFxkZS4rLV0rKSUoPzpcXHMqKFssXFwvXSlcXHMqKFtcXGRlListXSspKCUpPyk/XFxzKlxcKSQvKTtpZihyKXtjb25zdFt0LGUsbixpLHMsYSxvLGwsdV09cixjPVtufHxcIiBcIixzfHxcIiBcIixvXS5qb2luKFwiXCIpO2lmKFwiICBcIj09PWN8fFwiICAvXCI9PT1jfHxcIiwsXCI9PT1jfHxcIiwsLFwiPT09Yyl7Y29uc3QgdD1bK2UsTnQoK2ksMCwxMDApLE50KCthLDAsMTAwKSxsP3F0KCtsLHUpOjFdO2lmKFp0KHQpKXJldHVybiBmdW5jdGlvbihbdCxlLHIsbl0pe2Z1bmN0aW9uIGkobil7Y29uc3QgaT0obit0LzMwKSUxMixzPWUqTWF0aC5taW4ociwxLXIpO3JldHVybiByLXMqTWF0aC5tYXgoLTEsTWF0aC5taW4oaS0zLDktaSwxKSl9cmV0dXJuIHQ9VHQodCksZS89MTAwLHIvPTEwMCxbaSgwKSxpKDgpLGkoNCksbl19KHQpfX19KHQpO3JldHVybiBlP25ldyBLdCguLi5lLCExKTp2b2lkIDB9Z2V0IHJnYigpe2NvbnN0e3I6dCxnOmUsYjpyLGE6bn09dGhpcyxpPW58fDEvMDtyZXR1cm4gdGhpcy5vdmVyd3JpdGVHZXR0ZXIoXCJyZ2JcIixbdC9pLGUvaSxyL2ksbl0pfWdldCBoY2woKXtyZXR1cm4gdGhpcy5vdmVyd3JpdGVHZXR0ZXIoXCJoY2xcIixmdW5jdGlvbih0KXtjb25zdFtlLHIsbixpXT0kdCh0KSxzPU1hdGguc3FydChyKnIrbipuKTtyZXR1cm4gW01hdGgucm91bmQoMWU0KnMpP1R0KE1hdGguYXRhbjIobixyKSpGdCk6TmFOLHMsZSxpXX0odGhpcy5yZ2IpKX1nZXQgbGFiKCl7cmV0dXJuIHRoaXMub3ZlcndyaXRlR2V0dGVyKFwibGFiXCIsJHQodGhpcy5yZ2IpKX1vdmVyd3JpdGVHZXR0ZXIodCxlKXtyZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsdCx7dmFsdWU6ZX0pLGV9dG9TdHJpbmcoKXtjb25zdFt0LGUscixuXT10aGlzLnJnYjtyZXR1cm4gYHJnYmEoJHtbdCxlLHJdLm1hcCgodD0+TWF0aC5yb3VuZCgyNTUqdCkpKS5qb2luKFwiLFwiKX0sJHtufSlgfX1LdC5ibGFjaz1uZXcgS3QoMCwwLDAsMSksS3Qud2hpdGU9bmV3IEt0KDEsMSwxLDEpLEt0LnRyYW5zcGFyZW50PW5ldyBLdCgwLDAsMCwwKSxLdC5yZWQ9bmV3IEt0KDEsMCwwLDEpO2NsYXNzIFh0e2NvbnN0cnVjdG9yKHQsZSxyKXt0aGlzLnNlbnNpdGl2aXR5PXQ/ZT9cInZhcmlhbnRcIjpcImNhc2VcIjplP1wiYWNjZW50XCI6XCJiYXNlXCIsdGhpcy5sb2NhbGU9cix0aGlzLmNvbGxhdG9yPW5ldyBJbnRsLkNvbGxhdG9yKHRoaXMubG9jYWxlP3RoaXMubG9jYWxlOltdLHtzZW5zaXRpdml0eTp0aGlzLnNlbnNpdGl2aXR5LHVzYWdlOlwic2VhcmNoXCJ9KTt9Y29tcGFyZSh0LGUpe3JldHVybiB0aGlzLmNvbGxhdG9yLmNvbXBhcmUodCxlKX1yZXNvbHZlZExvY2FsZSgpe3JldHVybiBuZXcgSW50bC5Db2xsYXRvcih0aGlzLmxvY2FsZT90aGlzLmxvY2FsZTpbXSkucmVzb2x2ZWRPcHRpb25zKCkubG9jYWxlfX1jbGFzcyBIdHtjb25zdHJ1Y3Rvcih0LGUscixuLGkpe3RoaXMudGV4dD10LHRoaXMuaW1hZ2U9ZSx0aGlzLnNjYWxlPXIsdGhpcy5mb250U3RhY2s9bix0aGlzLnRleHRDb2xvcj1pO319Y2xhc3MgWXR7Y29uc3RydWN0b3IodCl7dGhpcy5zZWN0aW9ucz10O31zdGF0aWMgZnJvbVN0cmluZyh0KXtyZXR1cm4gbmV3IFl0KFtuZXcgSHQodCxudWxsLG51bGwsbnVsbCxudWxsKV0pfWlzRW1wdHkoKXtyZXR1cm4gMD09PXRoaXMuc2VjdGlvbnMubGVuZ3RofHwhdGhpcy5zZWN0aW9ucy5zb21lKCh0PT4wIT09dC50ZXh0Lmxlbmd0aHx8dC5pbWFnZSYmMCE9PXQuaW1hZ2UubmFtZS5sZW5ndGgpKX1zdGF0aWMgZmFjdG9yeSh0KXtyZXR1cm4gdCBpbnN0YW5jZW9mIFl0P3Q6WXQuZnJvbVN0cmluZyh0KX10b1N0cmluZygpe3JldHVybiAwPT09dGhpcy5zZWN0aW9ucy5sZW5ndGg/XCJcIjp0aGlzLnNlY3Rpb25zLm1hcCgodD0+dC50ZXh0KSkuam9pbihcIlwiKX19Y2xhc3MgSnR7Y29uc3RydWN0b3IodCl7dGhpcy52YWx1ZXM9dC5zbGljZSgpO31zdGF0aWMgcGFyc2UodCl7aWYodCBpbnN0YW5jZW9mIEp0KXJldHVybiB0O2lmKFwibnVtYmVyXCI9PXR5cGVvZiB0KXJldHVybiBuZXcgSnQoW3QsdCx0LHRdKTtpZihBcnJheS5pc0FycmF5KHQpJiYhKHQubGVuZ3RoPDF8fHQubGVuZ3RoPjQpKXtmb3IoY29uc3QgZSBvZiB0KWlmKFwibnVtYmVyXCIhPXR5cGVvZiBlKXJldHVybjtzd2l0Y2godC5sZW5ndGgpe2Nhc2UgMTp0PVt0WzBdLHRbMF0sdFswXSx0WzBdXTticmVhaztjYXNlIDI6dD1bdFswXSx0WzFdLHRbMF0sdFsxXV07YnJlYWs7Y2FzZSAzOnQ9W3RbMF0sdFsxXSx0WzJdLHRbMV1dO31yZXR1cm4gbmV3IEp0KHQpfX10b1N0cmluZygpe3JldHVybiBKU09OLnN0cmluZ2lmeSh0aGlzLnZhbHVlcyl9fWNvbnN0IFd0PW5ldyBTZXQoW1wiY2VudGVyXCIsXCJsZWZ0XCIsXCJyaWdodFwiLFwidG9wXCIsXCJib3R0b21cIixcInRvcC1sZWZ0XCIsXCJ0b3AtcmlnaHRcIixcImJvdHRvbS1sZWZ0XCIsXCJib3R0b20tcmlnaHRcIl0pO2NsYXNzIFF0e2NvbnN0cnVjdG9yKHQpe3RoaXMudmFsdWVzPXQuc2xpY2UoKTt9c3RhdGljIHBhcnNlKHQpe2lmKHQgaW5zdGFuY2VvZiBRdClyZXR1cm4gdDtpZihBcnJheS5pc0FycmF5KHQpJiYhKHQubGVuZ3RoPDEpJiZ0Lmxlbmd0aCUyPT0wKXtmb3IobGV0IGU9MDtlPHQubGVuZ3RoO2UrPTIpe2NvbnN0IHI9dFtlXSxuPXRbZSsxXTtpZihcInN0cmluZ1wiIT10eXBlb2Ygcnx8IVd0LmhhcyhyKSlyZXR1cm47aWYoIUFycmF5LmlzQXJyYXkobil8fDIhPT1uLmxlbmd0aHx8XCJudW1iZXJcIiE9dHlwZW9mIG5bMF18fFwibnVtYmVyXCIhPXR5cGVvZiBuWzFdKXJldHVybn1yZXR1cm4gbmV3IFF0KHQpfX10b1N0cmluZygpe3JldHVybiBKU09OLnN0cmluZ2lmeSh0aGlzLnZhbHVlcyl9fWNsYXNzIHRle2NvbnN0cnVjdG9yKHQpe3RoaXMubmFtZT10Lm5hbWUsdGhpcy5hdmFpbGFibGU9dC5hdmFpbGFibGU7fXRvU3RyaW5nKCl7cmV0dXJuIHRoaXMubmFtZX1zdGF0aWMgZnJvbVN0cmluZyh0KXtyZXR1cm4gdD9uZXcgdGUoe25hbWU6dCxhdmFpbGFibGU6ITF9KTpudWxsfX1mdW5jdGlvbiBlZSh0LGUscixuKXtyZXR1cm4gXCJudW1iZXJcIj09dHlwZW9mIHQmJnQ+PTAmJnQ8PTI1NSYmXCJudW1iZXJcIj09dHlwZW9mIGUmJmU+PTAmJmU8PTI1NSYmXCJudW1iZXJcIj09dHlwZW9mIHImJnI+PTAmJnI8PTI1NT92b2lkIDA9PT1ufHxcIm51bWJlclwiPT10eXBlb2YgbiYmbj49MCYmbjw9MT9udWxsOmBJbnZhbGlkIHJnYmEgdmFsdWUgWyR7W3QsZSxyLG5dLmpvaW4oXCIsIFwiKX1dOiAnYScgbXVzdCBiZSBiZXR3ZWVuIDAgYW5kIDEuYDpgSW52YWxpZCByZ2JhIHZhbHVlIFskeyhcIm51bWJlclwiPT10eXBlb2Ygbj9bdCxlLHIsbl06W3QsZSxyXSkuam9pbihcIiwgXCIpfV06ICdyJywgJ2cnLCBhbmQgJ2InIG11c3QgYmUgYmV0d2VlbiAwIGFuZCAyNTUuYH1mdW5jdGlvbiByZSh0KXtpZihudWxsPT09dHx8XCJzdHJpbmdcIj09dHlwZW9mIHR8fFwiYm9vbGVhblwiPT10eXBlb2YgdHx8XCJudW1iZXJcIj09dHlwZW9mIHR8fHQgaW5zdGFuY2VvZiBLdHx8dCBpbnN0YW5jZW9mIFh0fHx0IGluc3RhbmNlb2YgWXR8fHQgaW5zdGFuY2VvZiBKdHx8dCBpbnN0YW5jZW9mIFF0fHx0IGluc3RhbmNlb2YgdGUpcmV0dXJuICEwO2lmKEFycmF5LmlzQXJyYXkodCkpe2Zvcihjb25zdCBlIG9mIHQpaWYoIXJlKGUpKXJldHVybiAhMTtyZXR1cm4gITB9aWYoXCJvYmplY3RcIj09dHlwZW9mIHQpe2Zvcihjb25zdCBlIGluIHQpaWYoIXJlKHRbZV0pKXJldHVybiAhMTtyZXR1cm4gITB9cmV0dXJuICExfWZ1bmN0aW9uIG5lKHQpe2lmKG51bGw9PT10KXJldHVybiBsdDtpZihcInN0cmluZ1wiPT10eXBlb2YgdClyZXR1cm4gY3Q7aWYoXCJib29sZWFuXCI9PXR5cGVvZiB0KXJldHVybiBodDtpZihcIm51bWJlclwiPT10eXBlb2YgdClyZXR1cm4gdXQ7aWYodCBpbnN0YW5jZW9mIEt0KXJldHVybiBwdDtpZih0IGluc3RhbmNlb2YgWHQpcmV0dXJuIHl0O2lmKHQgaW5zdGFuY2VvZiBZdClyZXR1cm4gbXQ7aWYodCBpbnN0YW5jZW9mIEp0KXJldHVybiBndDtpZih0IGluc3RhbmNlb2YgUXQpcmV0dXJuIHZ0O2lmKHQgaW5zdGFuY2VvZiB0ZSlyZXR1cm4geHQ7aWYoQXJyYXkuaXNBcnJheSh0KSl7Y29uc3QgZT10Lmxlbmd0aDtsZXQgcjtmb3IoY29uc3QgZSBvZiB0KXtjb25zdCB0PW5lKGUpO2lmKHIpe2lmKHI9PT10KWNvbnRpbnVlO3I9ZHQ7YnJlYWt9cj10O31yZXR1cm4gYnQocnx8ZHQsZSl9cmV0dXJuIGZ0fWZ1bmN0aW9uIGllKHQpe2NvbnN0IGU9dHlwZW9mIHQ7cmV0dXJuIG51bGw9PT10P1wiXCI6XCJzdHJpbmdcIj09PWV8fFwibnVtYmVyXCI9PT1lfHxcImJvb2xlYW5cIj09PWU/U3RyaW5nKHQpOnQgaW5zdGFuY2VvZiBLdHx8dCBpbnN0YW5jZW9mIFl0fHx0IGluc3RhbmNlb2YgSnR8fHQgaW5zdGFuY2VvZiBRdHx8dCBpbnN0YW5jZW9mIHRlP3QudG9TdHJpbmcoKTpKU09OLnN0cmluZ2lmeSh0KX1jbGFzcyBzZXtjb25zdHJ1Y3Rvcih0LGUpe3RoaXMudHlwZT10LHRoaXMudmFsdWU9ZTt9c3RhdGljIHBhcnNlKHQsZSl7aWYoMiE9PXQubGVuZ3RoKXJldHVybiBlLmVycm9yKGAnbGl0ZXJhbCcgZXhwcmVzc2lvbiByZXF1aXJlcyBleGFjdGx5IG9uZSBhcmd1bWVudCwgYnV0IGZvdW5kICR7dC5sZW5ndGgtMX0gaW5zdGVhZC5gKTtpZighcmUodFsxXSkpcmV0dXJuIGUuZXJyb3IoXCJpbnZhbGlkIHZhbHVlXCIpO2NvbnN0IHI9dFsxXTtsZXQgbj1uZShyKTtjb25zdCBpPWUuZXhwZWN0ZWRUeXBlO3JldHVybiBcImFycmF5XCIhPT1uLmtpbmR8fDAhPT1uLk58fCFpfHxcImFycmF5XCIhPT1pLmtpbmR8fFwibnVtYmVyXCI9PXR5cGVvZiBpLk4mJjAhPT1pLk58fChuPWkpLG5ldyBzZShuLHIpfWV2YWx1YXRlKCl7cmV0dXJuIHRoaXMudmFsdWV9ZWFjaENoaWxkKCl7fW91dHB1dERlZmluZWQoKXtyZXR1cm4gITB9fWNsYXNzIGFle2NvbnN0cnVjdG9yKHQpe3RoaXMubmFtZT1cIkV4cHJlc3Npb25FdmFsdWF0aW9uRXJyb3JcIix0aGlzLm1lc3NhZ2U9dDt9dG9KU09OKCl7cmV0dXJuIHRoaXMubWVzc2FnZX19Y29uc3Qgb2U9e3N0cmluZzpjdCxudW1iZXI6dXQsYm9vbGVhbjpodCxvYmplY3Q6ZnR9O2NsYXNzIGxle2NvbnN0cnVjdG9yKHQsZSl7dGhpcy50eXBlPXQsdGhpcy5hcmdzPWU7fXN0YXRpYyBwYXJzZSh0LGUpe2lmKHQubGVuZ3RoPDIpcmV0dXJuIGUuZXJyb3IoXCJFeHBlY3RlZCBhdCBsZWFzdCBvbmUgYXJndW1lbnQuXCIpO2xldCByLG49MTtjb25zdCBpPXRbMF07aWYoXCJhcnJheVwiPT09aSl7bGV0IGkscztpZih0Lmxlbmd0aD4yKXtjb25zdCByPXRbMV07aWYoXCJzdHJpbmdcIiE9dHlwZW9mIHJ8fCEociBpbiBvZSl8fFwib2JqZWN0XCI9PT1yKXJldHVybiBlLmVycm9yKCdUaGUgaXRlbSB0eXBlIGFyZ3VtZW50IG9mIFwiYXJyYXlcIiBtdXN0IGJlIG9uZSBvZiBzdHJpbmcsIG51bWJlciwgYm9vbGVhbicsMSk7aT1vZVtyXSxuKys7fWVsc2UgaT1kdDtpZih0Lmxlbmd0aD4zKXtpZihudWxsIT09dFsyXSYmKFwibnVtYmVyXCIhPXR5cGVvZiB0WzJdfHx0WzJdPDB8fHRbMl0hPT1NYXRoLmZsb29yKHRbMl0pKSlyZXR1cm4gZS5lcnJvcignVGhlIGxlbmd0aCBhcmd1bWVudCB0byBcImFycmF5XCIgbXVzdCBiZSBhIHBvc2l0aXZlIGludGVnZXIgbGl0ZXJhbCcsMik7cz10WzJdLG4rKzt9cj1idChpLHMpO31lbHNlIHtpZighb2VbaV0pdGhyb3cgbmV3IEVycm9yKGBUeXBlcyBkb2Vzbid0IGNvbnRhaW4gbmFtZSA9ICR7aX1gKTtyPW9lW2ldO31jb25zdCBzPVtdO2Zvcig7bjx0Lmxlbmd0aDtuKyspe2NvbnN0IHI9ZS5wYXJzZSh0W25dLG4sZHQpO2lmKCFyKXJldHVybiBudWxsO3MucHVzaChyKTt9cmV0dXJuIG5ldyBsZShyLHMpfWV2YWx1YXRlKHQpe2ZvcihsZXQgZT0wO2U8dGhpcy5hcmdzLmxlbmd0aDtlKyspe2NvbnN0IHI9dGhpcy5hcmdzW2VdLmV2YWx1YXRlKHQpO2lmKCFBdCh0aGlzLnR5cGUsbmUocikpKXJldHVybiByO2lmKGU9PT10aGlzLmFyZ3MubGVuZ3RoLTEpdGhyb3cgbmV3IGFlKGBFeHBlY3RlZCB2YWx1ZSB0byBiZSBvZiB0eXBlICR7d3QodGhpcy50eXBlKX0sIGJ1dCBmb3VuZCAke3d0KG5lKHIpKX0gaW5zdGVhZC5gKX10aHJvdyBuZXcgRXJyb3J9ZWFjaENoaWxkKHQpe3RoaXMuYXJncy5mb3JFYWNoKHQpO31vdXRwdXREZWZpbmVkKCl7cmV0dXJuIHRoaXMuYXJncy5ldmVyeSgodD0+dC5vdXRwdXREZWZpbmVkKCkpKX19Y29uc3QgdWU9e1widG8tYm9vbGVhblwiOmh0LFwidG8tY29sb3JcIjpwdCxcInRvLW51bWJlclwiOnV0LFwidG8tc3RyaW5nXCI6Y3R9O2NsYXNzIGNle2NvbnN0cnVjdG9yKHQsZSl7dGhpcy50eXBlPXQsdGhpcy5hcmdzPWU7fXN0YXRpYyBwYXJzZSh0LGUpe2lmKHQubGVuZ3RoPDIpcmV0dXJuIGUuZXJyb3IoXCJFeHBlY3RlZCBhdCBsZWFzdCBvbmUgYXJndW1lbnQuXCIpO2NvbnN0IHI9dFswXTtpZighdWVbcl0pdGhyb3cgbmV3IEVycm9yKGBDYW4ndCBwYXJzZSAke3J9IGFzIGl0IGlzIG5vdCBwYXJ0IG9mIHRoZSBrbm93biB0eXBlc2ApO2lmKChcInRvLWJvb2xlYW5cIj09PXJ8fFwidG8tc3RyaW5nXCI9PT1yKSYmMiE9PXQubGVuZ3RoKXJldHVybiBlLmVycm9yKFwiRXhwZWN0ZWQgb25lIGFyZ3VtZW50LlwiKTtjb25zdCBuPXVlW3JdLGk9W107Zm9yKGxldCByPTE7cjx0Lmxlbmd0aDtyKyspe2NvbnN0IG49ZS5wYXJzZSh0W3JdLHIsZHQpO2lmKCFuKXJldHVybiBudWxsO2kucHVzaChuKTt9cmV0dXJuIG5ldyBjZShuLGkpfWV2YWx1YXRlKHQpe3N3aXRjaCh0aGlzLnR5cGUua2luZCl7Y2FzZVwiYm9vbGVhblwiOnJldHVybiBCb29sZWFuKHRoaXMuYXJnc1swXS5ldmFsdWF0ZSh0KSk7Y2FzZVwiY29sb3JcIjp7bGV0IGUscjtmb3IoY29uc3QgbiBvZiB0aGlzLmFyZ3Mpe2lmKGU9bi5ldmFsdWF0ZSh0KSxyPW51bGwsZSBpbnN0YW5jZW9mIEt0KXJldHVybiBlO2lmKFwic3RyaW5nXCI9PXR5cGVvZiBlKXtjb25zdCByPXQucGFyc2VDb2xvcihlKTtpZihyKXJldHVybiByfWVsc2UgaWYoQXJyYXkuaXNBcnJheShlKSYmKHI9ZS5sZW5ndGg8M3x8ZS5sZW5ndGg+ND9gSW52YWxpZCByYmdhIHZhbHVlICR7SlNPTi5zdHJpbmdpZnkoZSl9OiBleHBlY3RlZCBhbiBhcnJheSBjb250YWluaW5nIGVpdGhlciB0aHJlZSBvciBmb3VyIG51bWVyaWMgdmFsdWVzLmA6ZWUoZVswXSxlWzFdLGVbMl0sZVszXSksIXIpKXJldHVybiBuZXcgS3QoZVswXS8yNTUsZVsxXS8yNTUsZVsyXS8yNTUsZVszXSl9dGhyb3cgbmV3IGFlKHJ8fGBDb3VsZCBub3QgcGFyc2UgY29sb3IgZnJvbSB2YWx1ZSAnJHtcInN0cmluZ1wiPT10eXBlb2YgZT9lOkpTT04uc3RyaW5naWZ5KGUpfSdgKX1jYXNlXCJwYWRkaW5nXCI6e2xldCBlO2Zvcihjb25zdCByIG9mIHRoaXMuYXJncyl7ZT1yLmV2YWx1YXRlKHQpO2NvbnN0IG49SnQucGFyc2UoZSk7aWYobilyZXR1cm4gbn10aHJvdyBuZXcgYWUoYENvdWxkIG5vdCBwYXJzZSBwYWRkaW5nIGZyb20gdmFsdWUgJyR7XCJzdHJpbmdcIj09dHlwZW9mIGU/ZTpKU09OLnN0cmluZ2lmeShlKX0nYCl9Y2FzZVwidmFyaWFibGVBbmNob3JPZmZzZXRDb2xsZWN0aW9uXCI6e2xldCBlO2Zvcihjb25zdCByIG9mIHRoaXMuYXJncyl7ZT1yLmV2YWx1YXRlKHQpO2NvbnN0IG49UXQucGFyc2UoZSk7aWYobilyZXR1cm4gbn10aHJvdyBuZXcgYWUoYENvdWxkIG5vdCBwYXJzZSB2YXJpYWJsZUFuY2hvck9mZnNldENvbGxlY3Rpb24gZnJvbSB2YWx1ZSAnJHtcInN0cmluZ1wiPT10eXBlb2YgZT9lOkpTT04uc3RyaW5naWZ5KGUpfSdgKX1jYXNlXCJudW1iZXJcIjp7bGV0IGU9bnVsbDtmb3IoY29uc3QgciBvZiB0aGlzLmFyZ3Mpe2lmKGU9ci5ldmFsdWF0ZSh0KSxudWxsPT09ZSlyZXR1cm4gMDtjb25zdCBuPU51bWJlcihlKTtpZighaXNOYU4obikpcmV0dXJuIG59dGhyb3cgbmV3IGFlKGBDb3VsZCBub3QgY29udmVydCAke0pTT04uc3RyaW5naWZ5KGUpfSB0byBudW1iZXIuYCl9Y2FzZVwiZm9ybWF0dGVkXCI6cmV0dXJuIFl0LmZyb21TdHJpbmcoaWUodGhpcy5hcmdzWzBdLmV2YWx1YXRlKHQpKSk7Y2FzZVwicmVzb2x2ZWRJbWFnZVwiOnJldHVybiB0ZS5mcm9tU3RyaW5nKGllKHRoaXMuYXJnc1swXS5ldmFsdWF0ZSh0KSkpO2RlZmF1bHQ6cmV0dXJuIGllKHRoaXMuYXJnc1swXS5ldmFsdWF0ZSh0KSl9fWVhY2hDaGlsZCh0KXt0aGlzLmFyZ3MuZm9yRWFjaCh0KTt9b3V0cHV0RGVmaW5lZCgpe3JldHVybiB0aGlzLmFyZ3MuZXZlcnkoKHQ9PnQub3V0cHV0RGVmaW5lZCgpKSl9fWNvbnN0IGhlPVtcIlVua25vd25cIixcIlBvaW50XCIsXCJMaW5lU3RyaW5nXCIsXCJQb2x5Z29uXCJdO2NsYXNzIHBle2NvbnN0cnVjdG9yKCl7dGhpcy5nbG9iYWxzPW51bGwsdGhpcy5mZWF0dXJlPW51bGwsdGhpcy5mZWF0dXJlU3RhdGU9bnVsbCx0aGlzLmZvcm1hdHRlZFNlY3Rpb249bnVsbCx0aGlzLl9wYXJzZUNvbG9yQ2FjaGU9e30sdGhpcy5hdmFpbGFibGVJbWFnZXM9bnVsbCx0aGlzLmNhbm9uaWNhbD1udWxsO31pZCgpe3JldHVybiB0aGlzLmZlYXR1cmUmJlwiaWRcImluIHRoaXMuZmVhdHVyZT90aGlzLmZlYXR1cmUuaWQ6bnVsbH1nZW9tZXRyeVR5cGUoKXtyZXR1cm4gdGhpcy5mZWF0dXJlP1wibnVtYmVyXCI9PXR5cGVvZiB0aGlzLmZlYXR1cmUudHlwZT9oZVt0aGlzLmZlYXR1cmUudHlwZV06dGhpcy5mZWF0dXJlLnR5cGU6bnVsbH1nZW9tZXRyeSgpe3JldHVybiB0aGlzLmZlYXR1cmUmJlwiZ2VvbWV0cnlcImluIHRoaXMuZmVhdHVyZT90aGlzLmZlYXR1cmUuZ2VvbWV0cnk6bnVsbH1jYW5vbmljYWxJRCgpe3JldHVybiB0aGlzLmNhbm9uaWNhbH1wcm9wZXJ0aWVzKCl7cmV0dXJuIHRoaXMuZmVhdHVyZSYmdGhpcy5mZWF0dXJlLnByb3BlcnRpZXN8fHt9fXBhcnNlQ29sb3IodCl7bGV0IGU9dGhpcy5fcGFyc2VDb2xvckNhY2hlW3RdO3JldHVybiBlfHwoZT10aGlzLl9wYXJzZUNvbG9yQ2FjaGVbdF09S3QucGFyc2UodCkpLGV9fWNsYXNzIGZle2NvbnN0cnVjdG9yKHQsZSxyPVtdLG4saT1uZXcgb3Qscz1bXSl7dGhpcy5yZWdpc3RyeT10LHRoaXMucGF0aD1yLHRoaXMua2V5PXIubWFwKCh0PT5gWyR7dH1dYCkpLmpvaW4oXCJcIiksdGhpcy5zY29wZT1pLHRoaXMuZXJyb3JzPXMsdGhpcy5leHBlY3RlZFR5cGU9bix0aGlzLl9pc0NvbnN0YW50PWU7fXBhcnNlKHQsZSxyLG4saT17fSl7cmV0dXJuIGU/dGhpcy5jb25jYXQoZSxyLG4pLl9wYXJzZSh0LGkpOnRoaXMuX3BhcnNlKHQsaSl9X3BhcnNlKHQsZSl7ZnVuY3Rpb24gcih0LGUscil7cmV0dXJuIFwiYXNzZXJ0XCI9PT1yP25ldyBsZShlLFt0XSk6XCJjb2VyY2VcIj09PXI/bmV3IGNlKGUsW3RdKTp0fWlmKG51bGwhPT10JiZcInN0cmluZ1wiIT10eXBlb2YgdCYmXCJib29sZWFuXCIhPXR5cGVvZiB0JiZcIm51bWJlclwiIT10eXBlb2YgdHx8KHQ9W1wibGl0ZXJhbFwiLHRdKSxBcnJheS5pc0FycmF5KHQpKXtpZigwPT09dC5sZW5ndGgpcmV0dXJuIHRoaXMuZXJyb3IoJ0V4cGVjdGVkIGFuIGFycmF5IHdpdGggYXQgbGVhc3Qgb25lIGVsZW1lbnQuIElmIHlvdSB3YW50ZWQgYSBsaXRlcmFsIGFycmF5LCB1c2UgW1wibGl0ZXJhbFwiLCBbXV0uJyk7Y29uc3Qgbj10WzBdO2lmKFwic3RyaW5nXCIhPXR5cGVvZiBuKXJldHVybiB0aGlzLmVycm9yKGBFeHByZXNzaW9uIG5hbWUgbXVzdCBiZSBhIHN0cmluZywgYnV0IGZvdW5kICR7dHlwZW9mIG59IGluc3RlYWQuIElmIHlvdSB3YW50ZWQgYSBsaXRlcmFsIGFycmF5LCB1c2UgW1wibGl0ZXJhbFwiLCBbLi4uXV0uYCwwKSxudWxsO2NvbnN0IGk9dGhpcy5yZWdpc3RyeVtuXTtpZihpKXtsZXQgbj1pLnBhcnNlKHQsdGhpcyk7aWYoIW4pcmV0dXJuIG51bGw7aWYodGhpcy5leHBlY3RlZFR5cGUpe2NvbnN0IHQ9dGhpcy5leHBlY3RlZFR5cGUsaT1uLnR5cGU7aWYoXCJzdHJpbmdcIiE9PXQua2luZCYmXCJudW1iZXJcIiE9PXQua2luZCYmXCJib29sZWFuXCIhPT10LmtpbmQmJlwib2JqZWN0XCIhPT10LmtpbmQmJlwiYXJyYXlcIiE9PXQua2luZHx8XCJ2YWx1ZVwiIT09aS5raW5kKWlmKFwiY29sb3JcIiE9PXQua2luZCYmXCJmb3JtYXR0ZWRcIiE9PXQua2luZCYmXCJyZXNvbHZlZEltYWdlXCIhPT10LmtpbmR8fFwidmFsdWVcIiE9PWkua2luZCYmXCJzdHJpbmdcIiE9PWkua2luZClpZihcInBhZGRpbmdcIiE9PXQua2luZHx8XCJ2YWx1ZVwiIT09aS5raW5kJiZcIm51bWJlclwiIT09aS5raW5kJiZcImFycmF5XCIhPT1pLmtpbmQpaWYoXCJ2YXJpYWJsZUFuY2hvck9mZnNldENvbGxlY3Rpb25cIiE9PXQua2luZHx8XCJ2YWx1ZVwiIT09aS5raW5kJiZcImFycmF5XCIhPT1pLmtpbmQpe2lmKHRoaXMuY2hlY2tTdWJ0eXBlKHQsaSkpcmV0dXJuIG51bGx9ZWxzZSBuPXIobix0LGUudHlwZUFubm90YXRpb258fFwiY29lcmNlXCIpO2Vsc2Ugbj1yKG4sdCxlLnR5cGVBbm5vdGF0aW9ufHxcImNvZXJjZVwiKTtlbHNlIG49cihuLHQsZS50eXBlQW5ub3RhdGlvbnx8XCJjb2VyY2VcIik7ZWxzZSBuPXIobix0LGUudHlwZUFubm90YXRpb258fFwiYXNzZXJ0XCIpO31pZighKG4gaW5zdGFuY2VvZiBzZSkmJlwicmVzb2x2ZWRJbWFnZVwiIT09bi50eXBlLmtpbmQmJnRoaXMuX2lzQ29uc3RhbnQobikpe2NvbnN0IHQ9bmV3IHBlO3RyeXtuPW5ldyBzZShuLnR5cGUsbi5ldmFsdWF0ZSh0KSk7fWNhdGNoKHQpe3JldHVybiB0aGlzLmVycm9yKHQubWVzc2FnZSksbnVsbH19cmV0dXJuIG59cmV0dXJuIHRoaXMuZXJyb3IoYFVua25vd24gZXhwcmVzc2lvbiBcIiR7bn1cIi4gSWYgeW91IHdhbnRlZCBhIGxpdGVyYWwgYXJyYXksIHVzZSBbXCJsaXRlcmFsXCIsIFsuLi5dXS5gLDApfXJldHVybiB0aGlzLmVycm9yKHZvaWQgMD09PXQ/XCIndW5kZWZpbmVkJyB2YWx1ZSBpbnZhbGlkLiBVc2UgbnVsbCBpbnN0ZWFkLlwiOlwib2JqZWN0XCI9PXR5cGVvZiB0PydCYXJlIG9iamVjdHMgaW52YWxpZC4gVXNlIFtcImxpdGVyYWxcIiwgey4uLn1dIGluc3RlYWQuJzpgRXhwZWN0ZWQgYW4gYXJyYXksIGJ1dCBmb3VuZCAke3R5cGVvZiB0fSBpbnN0ZWFkLmApfWNvbmNhdCh0LGUscil7Y29uc3Qgbj1cIm51bWJlclwiPT10eXBlb2YgdD90aGlzLnBhdGguY29uY2F0KHQpOnRoaXMucGF0aCxpPXI/dGhpcy5zY29wZS5jb25jYXQocik6dGhpcy5zY29wZTtyZXR1cm4gbmV3IGZlKHRoaXMucmVnaXN0cnksdGhpcy5faXNDb25zdGFudCxuLGV8fG51bGwsaSx0aGlzLmVycm9ycyl9ZXJyb3IodCwuLi5lKXtjb25zdCByPWAke3RoaXMua2V5fSR7ZS5tYXAoKHQ9PmBbJHt0fV1gKSkuam9pbihcIlwiKX1gO3RoaXMuZXJyb3JzLnB1c2gobmV3IGF0KHIsdCkpO31jaGVja1N1YnR5cGUodCxlKXtjb25zdCByPUF0KHQsZSk7cmV0dXJuIHImJnRoaXMuZXJyb3Iocikscn19Y2xhc3MgZGV7Y29uc3RydWN0b3IodCxlKXt0aGlzLnR5cGU9ZS50eXBlLHRoaXMuYmluZGluZ3M9W10uY29uY2F0KHQpLHRoaXMucmVzdWx0PWU7fWV2YWx1YXRlKHQpe3JldHVybiB0aGlzLnJlc3VsdC5ldmFsdWF0ZSh0KX1lYWNoQ2hpbGQodCl7Zm9yKGNvbnN0IGUgb2YgdGhpcy5iaW5kaW5ncyl0KGVbMV0pO3QodGhpcy5yZXN1bHQpO31zdGF0aWMgcGFyc2UodCxlKXtpZih0Lmxlbmd0aDw0KXJldHVybiBlLmVycm9yKGBFeHBlY3RlZCBhdCBsZWFzdCAzIGFyZ3VtZW50cywgYnV0IGZvdW5kICR7dC5sZW5ndGgtMX0gaW5zdGVhZC5gKTtjb25zdCByPVtdO2ZvcihsZXQgbj0xO248dC5sZW5ndGgtMTtuKz0yKXtjb25zdCBpPXRbbl07aWYoXCJzdHJpbmdcIiE9dHlwZW9mIGkpcmV0dXJuIGUuZXJyb3IoYEV4cGVjdGVkIHN0cmluZywgYnV0IGZvdW5kICR7dHlwZW9mIGl9IGluc3RlYWQuYCxuKTtpZigvW15hLXpBLVowLTlfXS8udGVzdChpKSlyZXR1cm4gZS5lcnJvcihcIlZhcmlhYmxlIG5hbWVzIG11c3QgY29udGFpbiBvbmx5IGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIG9yICdfJy5cIixuKTtjb25zdCBzPWUucGFyc2UodFtuKzFdLG4rMSk7aWYoIXMpcmV0dXJuIG51bGw7ci5wdXNoKFtpLHNdKTt9Y29uc3Qgbj1lLnBhcnNlKHRbdC5sZW5ndGgtMV0sdC5sZW5ndGgtMSxlLmV4cGVjdGVkVHlwZSxyKTtyZXR1cm4gbj9uZXcgZGUocixuKTpudWxsfW91dHB1dERlZmluZWQoKXtyZXR1cm4gdGhpcy5yZXN1bHQub3V0cHV0RGVmaW5lZCgpfX1jbGFzcyB5ZXtjb25zdHJ1Y3Rvcih0LGUpe3RoaXMudHlwZT1lLnR5cGUsdGhpcy5uYW1lPXQsdGhpcy5ib3VuZEV4cHJlc3Npb249ZTt9c3RhdGljIHBhcnNlKHQsZSl7aWYoMiE9PXQubGVuZ3RofHxcInN0cmluZ1wiIT10eXBlb2YgdFsxXSlyZXR1cm4gZS5lcnJvcihcIid2YXInIGV4cHJlc3Npb24gcmVxdWlyZXMgZXhhY3RseSBvbmUgc3RyaW5nIGxpdGVyYWwgYXJndW1lbnQuXCIpO2NvbnN0IHI9dFsxXTtyZXR1cm4gZS5zY29wZS5oYXMocik/bmV3IHllKHIsZS5zY29wZS5nZXQocikpOmUuZXJyb3IoYFVua25vd24gdmFyaWFibGUgXCIke3J9XCIuIE1ha2Ugc3VyZSBcIiR7cn1cIiBoYXMgYmVlbiBib3VuZCBpbiBhbiBlbmNsb3NpbmcgXCJsZXRcIiBleHByZXNzaW9uIGJlZm9yZSB1c2luZyBpdC5gLDEpfWV2YWx1YXRlKHQpe3JldHVybiB0aGlzLmJvdW5kRXhwcmVzc2lvbi5ldmFsdWF0ZSh0KX1lYWNoQ2hpbGQoKXt9b3V0cHV0RGVmaW5lZCgpe3JldHVybiAhMX19Y2xhc3MgbWV7Y29uc3RydWN0b3IodCxlLHIpe3RoaXMudHlwZT10LHRoaXMuaW5kZXg9ZSx0aGlzLmlucHV0PXI7fXN0YXRpYyBwYXJzZSh0LGUpe2lmKDMhPT10Lmxlbmd0aClyZXR1cm4gZS5lcnJvcihgRXhwZWN0ZWQgMiBhcmd1bWVudHMsIGJ1dCBmb3VuZCAke3QubGVuZ3RoLTF9IGluc3RlYWQuYCk7Y29uc3Qgcj1lLnBhcnNlKHRbMV0sMSx1dCksbj1lLnBhcnNlKHRbMl0sMixidChlLmV4cGVjdGVkVHlwZXx8ZHQpKTtyZXR1cm4gciYmbj9uZXcgbWUobi50eXBlLml0ZW1UeXBlLHIsbik6bnVsbH1ldmFsdWF0ZSh0KXtjb25zdCBlPXRoaXMuaW5kZXguZXZhbHVhdGUodCkscj10aGlzLmlucHV0LmV2YWx1YXRlKHQpO2lmKGU8MCl0aHJvdyBuZXcgYWUoYEFycmF5IGluZGV4IG91dCBvZiBib3VuZHM6ICR7ZX0gPCAwLmApO2lmKGU+PXIubGVuZ3RoKXRocm93IG5ldyBhZShgQXJyYXkgaW5kZXggb3V0IG9mIGJvdW5kczogJHtlfSA+ICR7ci5sZW5ndGgtMX0uYCk7aWYoZSE9PU1hdGguZmxvb3IoZSkpdGhyb3cgbmV3IGFlKGBBcnJheSBpbmRleCBtdXN0IGJlIGFuIGludGVnZXIsIGJ1dCBmb3VuZCAke2V9IGluc3RlYWQuYCk7cmV0dXJuIHJbZV19ZWFjaENoaWxkKHQpe3QodGhpcy5pbmRleCksdCh0aGlzLmlucHV0KTt9b3V0cHV0RGVmaW5lZCgpe3JldHVybiAhMX19Y2xhc3MgZ2V7Y29uc3RydWN0b3IodCxlKXt0aGlzLnR5cGU9aHQsdGhpcy5uZWVkbGU9dCx0aGlzLmhheXN0YWNrPWU7fXN0YXRpYyBwYXJzZSh0LGUpe2lmKDMhPT10Lmxlbmd0aClyZXR1cm4gZS5lcnJvcihgRXhwZWN0ZWQgMiBhcmd1bWVudHMsIGJ1dCBmb3VuZCAke3QubGVuZ3RoLTF9IGluc3RlYWQuYCk7Y29uc3Qgcj1lLnBhcnNlKHRbMV0sMSxkdCksbj1lLnBhcnNlKHRbMl0sMixkdCk7cmV0dXJuIHImJm4/U3Qoci50eXBlLFtodCxjdCx1dCxsdCxkdF0pP25ldyBnZShyLG4pOmUuZXJyb3IoYEV4cGVjdGVkIGZpcnN0IGFyZ3VtZW50IHRvIGJlIG9mIHR5cGUgYm9vbGVhbiwgc3RyaW5nLCBudW1iZXIgb3IgbnVsbCwgYnV0IGZvdW5kICR7d3Qoci50eXBlKX0gaW5zdGVhZGApOm51bGx9ZXZhbHVhdGUodCl7Y29uc3QgZT10aGlzLm5lZWRsZS5ldmFsdWF0ZSh0KSxyPXRoaXMuaGF5c3RhY2suZXZhbHVhdGUodCk7aWYoIXIpcmV0dXJuICExO2lmKCFrdChlLFtcImJvb2xlYW5cIixcInN0cmluZ1wiLFwibnVtYmVyXCIsXCJudWxsXCJdKSl0aHJvdyBuZXcgYWUoYEV4cGVjdGVkIGZpcnN0IGFyZ3VtZW50IHRvIGJlIG9mIHR5cGUgYm9vbGVhbiwgc3RyaW5nLCBudW1iZXIgb3IgbnVsbCwgYnV0IGZvdW5kICR7d3QobmUoZSkpfSBpbnN0ZWFkLmApO2lmKCFrdChyLFtcInN0cmluZ1wiLFwiYXJyYXlcIl0pKXRocm93IG5ldyBhZShgRXhwZWN0ZWQgc2Vjb25kIGFyZ3VtZW50IHRvIGJlIG9mIHR5cGUgYXJyYXkgb3Igc3RyaW5nLCBidXQgZm91bmQgJHt3dChuZShyKSl9IGluc3RlYWQuYCk7cmV0dXJuIHIuaW5kZXhPZihlKT49MH1lYWNoQ2hpbGQodCl7dCh0aGlzLm5lZWRsZSksdCh0aGlzLmhheXN0YWNrKTt9b3V0cHV0RGVmaW5lZCgpe3JldHVybiAhMH19Y2xhc3MgeGV7Y29uc3RydWN0b3IodCxlLHIpe3RoaXMudHlwZT11dCx0aGlzLm5lZWRsZT10LHRoaXMuaGF5c3RhY2s9ZSx0aGlzLmZyb21JbmRleD1yO31zdGF0aWMgcGFyc2UodCxlKXtpZih0Lmxlbmd0aDw9Mnx8dC5sZW5ndGg+PTUpcmV0dXJuIGUuZXJyb3IoYEV4cGVjdGVkIDMgb3IgNCBhcmd1bWVudHMsIGJ1dCBmb3VuZCAke3QubGVuZ3RoLTF9IGluc3RlYWQuYCk7Y29uc3Qgcj1lLnBhcnNlKHRbMV0sMSxkdCksbj1lLnBhcnNlKHRbMl0sMixkdCk7aWYoIXJ8fCFuKXJldHVybiBudWxsO2lmKCFTdChyLnR5cGUsW2h0LGN0LHV0LGx0LGR0XSkpcmV0dXJuIGUuZXJyb3IoYEV4cGVjdGVkIGZpcnN0IGFyZ3VtZW50IHRvIGJlIG9mIHR5cGUgYm9vbGVhbiwgc3RyaW5nLCBudW1iZXIgb3IgbnVsbCwgYnV0IGZvdW5kICR7d3Qoci50eXBlKX0gaW5zdGVhZGApO2lmKDQ9PT10Lmxlbmd0aCl7Y29uc3QgaT1lLnBhcnNlKHRbM10sMyx1dCk7cmV0dXJuIGk/bmV3IHhlKHIsbixpKTpudWxsfXJldHVybiBuZXcgeGUocixuKX1ldmFsdWF0ZSh0KXtjb25zdCBlPXRoaXMubmVlZGxlLmV2YWx1YXRlKHQpLHI9dGhpcy5oYXlzdGFjay5ldmFsdWF0ZSh0KTtpZigha3QoZSxbXCJib29sZWFuXCIsXCJzdHJpbmdcIixcIm51bWJlclwiLFwibnVsbFwiXSkpdGhyb3cgbmV3IGFlKGBFeHBlY3RlZCBmaXJzdCBhcmd1bWVudCB0byBiZSBvZiB0eXBlIGJvb2xlYW4sIHN0cmluZywgbnVtYmVyIG9yIG51bGwsIGJ1dCBmb3VuZCAke3d0KG5lKGUpKX0gaW5zdGVhZC5gKTtsZXQgbjtpZih0aGlzLmZyb21JbmRleCYmKG49dGhpcy5mcm9tSW5kZXguZXZhbHVhdGUodCkpLGt0KHIsW1wic3RyaW5nXCJdKSl7Y29uc3QgdD1yLmluZGV4T2YoZSxuKTtyZXR1cm4gLTE9PT10Py0xOlsuLi5yLnNsaWNlKDAsdCldLmxlbmd0aH1pZihrdChyLFtcImFycmF5XCJdKSlyZXR1cm4gci5pbmRleE9mKGUsbik7dGhyb3cgbmV3IGFlKGBFeHBlY3RlZCBzZWNvbmQgYXJndW1lbnQgdG8gYmUgb2YgdHlwZSBhcnJheSBvciBzdHJpbmcsIGJ1dCBmb3VuZCAke3d0KG5lKHIpKX0gaW5zdGVhZC5gKX1lYWNoQ2hpbGQodCl7dCh0aGlzLm5lZWRsZSksdCh0aGlzLmhheXN0YWNrKSx0aGlzLmZyb21JbmRleCYmdCh0aGlzLmZyb21JbmRleCk7fW91dHB1dERlZmluZWQoKXtyZXR1cm4gITF9fWNsYXNzIHZle2NvbnN0cnVjdG9yKHQsZSxyLG4saSxzKXt0aGlzLmlucHV0VHlwZT10LHRoaXMudHlwZT1lLHRoaXMuaW5wdXQ9cix0aGlzLmNhc2VzPW4sdGhpcy5vdXRwdXRzPWksdGhpcy5vdGhlcndpc2U9czt9c3RhdGljIHBhcnNlKHQsZSl7aWYodC5sZW5ndGg8NSlyZXR1cm4gZS5lcnJvcihgRXhwZWN0ZWQgYXQgbGVhc3QgNCBhcmd1bWVudHMsIGJ1dCBmb3VuZCBvbmx5ICR7dC5sZW5ndGgtMX0uYCk7aWYodC5sZW5ndGglMiE9MSlyZXR1cm4gZS5lcnJvcihcIkV4cGVjdGVkIGFuIGV2ZW4gbnVtYmVyIG9mIGFyZ3VtZW50cy5cIik7bGV0IHIsbjtlLmV4cGVjdGVkVHlwZSYmXCJ2YWx1ZVwiIT09ZS5leHBlY3RlZFR5cGUua2luZCYmKG49ZS5leHBlY3RlZFR5cGUpO2NvbnN0IGk9e30scz1bXTtmb3IobGV0IGE9MjthPHQubGVuZ3RoLTE7YSs9Mil7bGV0IG89dFthXTtjb25zdCBsPXRbYSsxXTtBcnJheS5pc0FycmF5KG8pfHwobz1bb10pO2NvbnN0IHU9ZS5jb25jYXQoYSk7aWYoMD09PW8ubGVuZ3RoKXJldHVybiB1LmVycm9yKFwiRXhwZWN0ZWQgYXQgbGVhc3Qgb25lIGJyYW5jaCBsYWJlbC5cIik7Zm9yKGNvbnN0IHQgb2Ygbyl7aWYoXCJudW1iZXJcIiE9dHlwZW9mIHQmJlwic3RyaW5nXCIhPXR5cGVvZiB0KXJldHVybiB1LmVycm9yKFwiQnJhbmNoIGxhYmVscyBtdXN0IGJlIG51bWJlcnMgb3Igc3RyaW5ncy5cIik7aWYoXCJudW1iZXJcIj09dHlwZW9mIHQmJk1hdGguYWJzKHQpPk51bWJlci5NQVhfU0FGRV9JTlRFR0VSKXJldHVybiB1LmVycm9yKGBCcmFuY2ggbGFiZWxzIG11c3QgYmUgaW50ZWdlcnMgbm8gbGFyZ2VyIHRoYW4gJHtOdW1iZXIuTUFYX1NBRkVfSU5URUdFUn0uYCk7aWYoXCJudW1iZXJcIj09dHlwZW9mIHQmJk1hdGguZmxvb3IodCkhPT10KXJldHVybiB1LmVycm9yKFwiTnVtZXJpYyBicmFuY2ggbGFiZWxzIG11c3QgYmUgaW50ZWdlciB2YWx1ZXMuXCIpO2lmKHIpe2lmKHUuY2hlY2tTdWJ0eXBlKHIsbmUodCkpKXJldHVybiBudWxsfWVsc2Ugcj1uZSh0KTtpZih2b2lkIDAhPT1pW1N0cmluZyh0KV0pcmV0dXJuIHUuZXJyb3IoXCJCcmFuY2ggbGFiZWxzIG11c3QgYmUgdW5pcXVlLlwiKTtpW1N0cmluZyh0KV09cy5sZW5ndGg7fWNvbnN0IGM9ZS5wYXJzZShsLGEsbik7aWYoIWMpcmV0dXJuIG51bGw7bj1ufHxjLnR5cGUscy5wdXNoKGMpO31jb25zdCBhPWUucGFyc2UodFsxXSwxLGR0KTtpZighYSlyZXR1cm4gbnVsbDtjb25zdCBvPWUucGFyc2UodFt0Lmxlbmd0aC0xXSx0Lmxlbmd0aC0xLG4pO3JldHVybiBvP1widmFsdWVcIiE9PWEudHlwZS5raW5kJiZlLmNvbmNhdCgxKS5jaGVja1N1YnR5cGUocixhLnR5cGUpP251bGw6bmV3IHZlKHIsbixhLGkscyxvKTpudWxsfWV2YWx1YXRlKHQpe2NvbnN0IGU9dGhpcy5pbnB1dC5ldmFsdWF0ZSh0KTtyZXR1cm4gKG5lKGUpPT09dGhpcy5pbnB1dFR5cGUmJnRoaXMub3V0cHV0c1t0aGlzLmNhc2VzW2VdXXx8dGhpcy5vdGhlcndpc2UpLmV2YWx1YXRlKHQpfWVhY2hDaGlsZCh0KXt0KHRoaXMuaW5wdXQpLHRoaXMub3V0cHV0cy5mb3JFYWNoKHQpLHQodGhpcy5vdGhlcndpc2UpO31vdXRwdXREZWZpbmVkKCl7cmV0dXJuIHRoaXMub3V0cHV0cy5ldmVyeSgodD0+dC5vdXRwdXREZWZpbmVkKCkpKSYmdGhpcy5vdGhlcndpc2Uub3V0cHV0RGVmaW5lZCgpfX1jbGFzcyBiZXtjb25zdHJ1Y3Rvcih0LGUscil7dGhpcy50eXBlPXQsdGhpcy5icmFuY2hlcz1lLHRoaXMub3RoZXJ3aXNlPXI7fXN0YXRpYyBwYXJzZSh0LGUpe2lmKHQubGVuZ3RoPDQpcmV0dXJuIGUuZXJyb3IoYEV4cGVjdGVkIGF0IGxlYXN0IDMgYXJndW1lbnRzLCBidXQgZm91bmQgb25seSAke3QubGVuZ3RoLTF9LmApO2lmKHQubGVuZ3RoJTIhPTApcmV0dXJuIGUuZXJyb3IoXCJFeHBlY3RlZCBhbiBvZGQgbnVtYmVyIG9mIGFyZ3VtZW50cy5cIik7bGV0IHI7ZS5leHBlY3RlZFR5cGUmJlwidmFsdWVcIiE9PWUuZXhwZWN0ZWRUeXBlLmtpbmQmJihyPWUuZXhwZWN0ZWRUeXBlKTtjb25zdCBuPVtdO2ZvcihsZXQgaT0xO2k8dC5sZW5ndGgtMTtpKz0yKXtjb25zdCBzPWUucGFyc2UodFtpXSxpLGh0KTtpZighcylyZXR1cm4gbnVsbDtjb25zdCBhPWUucGFyc2UodFtpKzFdLGkrMSxyKTtpZighYSlyZXR1cm4gbnVsbDtuLnB1c2goW3MsYV0pLHI9cnx8YS50eXBlO31jb25zdCBpPWUucGFyc2UodFt0Lmxlbmd0aC0xXSx0Lmxlbmd0aC0xLHIpO2lmKCFpKXJldHVybiBudWxsO2lmKCFyKXRocm93IG5ldyBFcnJvcihcIkNhbid0IGluZmVyIG91dHB1dCB0eXBlXCIpO3JldHVybiBuZXcgYmUocixuLGkpfWV2YWx1YXRlKHQpe2Zvcihjb25zdFtlLHJdb2YgdGhpcy5icmFuY2hlcylpZihlLmV2YWx1YXRlKHQpKXJldHVybiByLmV2YWx1YXRlKHQpO3JldHVybiB0aGlzLm90aGVyd2lzZS5ldmFsdWF0ZSh0KX1lYWNoQ2hpbGQodCl7Zm9yKGNvbnN0W2Uscl1vZiB0aGlzLmJyYW5jaGVzKXQoZSksdChyKTt0KHRoaXMub3RoZXJ3aXNlKTt9b3V0cHV0RGVmaW5lZCgpe3JldHVybiB0aGlzLmJyYW5jaGVzLmV2ZXJ5KCgoW3QsZV0pPT5lLm91dHB1dERlZmluZWQoKSkpJiZ0aGlzLm90aGVyd2lzZS5vdXRwdXREZWZpbmVkKCl9fWNsYXNzIHdle2NvbnN0cnVjdG9yKHQsZSxyLG4pe3RoaXMudHlwZT10LHRoaXMuaW5wdXQ9ZSx0aGlzLmJlZ2luSW5kZXg9cix0aGlzLmVuZEluZGV4PW47fXN0YXRpYyBwYXJzZSh0LGUpe2lmKHQubGVuZ3RoPD0yfHx0Lmxlbmd0aD49NSlyZXR1cm4gZS5lcnJvcihgRXhwZWN0ZWQgMyBvciA0IGFyZ3VtZW50cywgYnV0IGZvdW5kICR7dC5sZW5ndGgtMX0gaW5zdGVhZC5gKTtjb25zdCByPWUucGFyc2UodFsxXSwxLGR0KSxuPWUucGFyc2UodFsyXSwyLHV0KTtpZighcnx8IW4pcmV0dXJuIG51bGw7aWYoIVN0KHIudHlwZSxbYnQoZHQpLGN0LGR0XSkpcmV0dXJuIGUuZXJyb3IoYEV4cGVjdGVkIGZpcnN0IGFyZ3VtZW50IHRvIGJlIG9mIHR5cGUgYXJyYXkgb3Igc3RyaW5nLCBidXQgZm91bmQgJHt3dChyLnR5cGUpfSBpbnN0ZWFkYCk7aWYoND09PXQubGVuZ3RoKXtjb25zdCBpPWUucGFyc2UodFszXSwzLHV0KTtyZXR1cm4gaT9uZXcgd2Uoci50eXBlLHIsbixpKTpudWxsfXJldHVybiBuZXcgd2Uoci50eXBlLHIsbil9ZXZhbHVhdGUodCl7Y29uc3QgZT10aGlzLmlucHV0LmV2YWx1YXRlKHQpLHI9dGhpcy5iZWdpbkluZGV4LmV2YWx1YXRlKHQpO2xldCBuO2lmKHRoaXMuZW5kSW5kZXgmJihuPXRoaXMuZW5kSW5kZXguZXZhbHVhdGUodCkpLGt0KGUsW1wic3RyaW5nXCJdKSlyZXR1cm4gWy4uLmVdLnNsaWNlKHIsbikuam9pbihcIlwiKTtpZihrdChlLFtcImFycmF5XCJdKSlyZXR1cm4gZS5zbGljZShyLG4pO3Rocm93IG5ldyBhZShgRXhwZWN0ZWQgZmlyc3QgYXJndW1lbnQgdG8gYmUgb2YgdHlwZSBhcnJheSBvciBzdHJpbmcsIGJ1dCBmb3VuZCAke3d0KG5lKGUpKX0gaW5zdGVhZC5gKX1lYWNoQ2hpbGQodCl7dCh0aGlzLmlucHV0KSx0KHRoaXMuYmVnaW5JbmRleCksdGhpcy5lbmRJbmRleCYmdCh0aGlzLmVuZEluZGV4KTt9b3V0cHV0RGVmaW5lZCgpe3JldHVybiAhMX19ZnVuY3Rpb24gX2UodCxlKXtjb25zdCByPXQubGVuZ3RoLTE7bGV0IG4saSxzPTAsYT1yLG89MDtmb3IoO3M8PWE7KWlmKG89TWF0aC5mbG9vcigocythKS8yKSxuPXRbb10saT10W28rMV0sbjw9ZSl7aWYobz09PXJ8fGU8aSlyZXR1cm4gbztzPW8rMTt9ZWxzZSB7aWYoIShuPmUpKXRocm93IG5ldyBhZShcIklucHV0IGlzIG5vdCBhIG51bWJlci5cIik7YT1vLTE7fXJldHVybiAwfWNsYXNzIEFle2NvbnN0cnVjdG9yKHQsZSxyKXt0aGlzLnR5cGU9dCx0aGlzLmlucHV0PWUsdGhpcy5sYWJlbHM9W10sdGhpcy5vdXRwdXRzPVtdO2Zvcihjb25zdFt0LGVdb2Ygcil0aGlzLmxhYmVscy5wdXNoKHQpLHRoaXMub3V0cHV0cy5wdXNoKGUpO31zdGF0aWMgcGFyc2UodCxlKXtpZih0Lmxlbmd0aC0xPDQpcmV0dXJuIGUuZXJyb3IoYEV4cGVjdGVkIGF0IGxlYXN0IDQgYXJndW1lbnRzLCBidXQgZm91bmQgb25seSAke3QubGVuZ3RoLTF9LmApO2lmKCh0Lmxlbmd0aC0xKSUyIT0wKXJldHVybiBlLmVycm9yKFwiRXhwZWN0ZWQgYW4gZXZlbiBudW1iZXIgb2YgYXJndW1lbnRzLlwiKTtjb25zdCByPWUucGFyc2UodFsxXSwxLHV0KTtpZighcilyZXR1cm4gbnVsbDtjb25zdCBuPVtdO2xldCBpPW51bGw7ZS5leHBlY3RlZFR5cGUmJlwidmFsdWVcIiE9PWUuZXhwZWN0ZWRUeXBlLmtpbmQmJihpPWUuZXhwZWN0ZWRUeXBlKTtmb3IobGV0IHI9MTtyPHQubGVuZ3RoO3IrPTIpe2NvbnN0IHM9MT09PXI/LTEvMDp0W3JdLGE9dFtyKzFdLG89cixsPXIrMTtpZihcIm51bWJlclwiIT10eXBlb2YgcylyZXR1cm4gZS5lcnJvcignSW5wdXQvb3V0cHV0IHBhaXJzIGZvciBcInN0ZXBcIiBleHByZXNzaW9ucyBtdXN0IGJlIGRlZmluZWQgdXNpbmcgbGl0ZXJhbCBudW1lcmljIHZhbHVlcyAobm90IGNvbXB1dGVkIGV4cHJlc3Npb25zKSBmb3IgdGhlIGlucHV0IHZhbHVlcy4nLG8pO2lmKG4ubGVuZ3RoJiZuW24ubGVuZ3RoLTFdWzBdPj1zKXJldHVybiBlLmVycm9yKCdJbnB1dC9vdXRwdXQgcGFpcnMgZm9yIFwic3RlcFwiIGV4cHJlc3Npb25zIG11c3QgYmUgYXJyYW5nZWQgd2l0aCBpbnB1dCB2YWx1ZXMgaW4gc3RyaWN0bHkgYXNjZW5kaW5nIG9yZGVyLicsbyk7Y29uc3QgdT1lLnBhcnNlKGEsbCxpKTtpZighdSlyZXR1cm4gbnVsbDtpPWl8fHUudHlwZSxuLnB1c2goW3MsdV0pO31yZXR1cm4gbmV3IEFlKGkscixuKX1ldmFsdWF0ZSh0KXtjb25zdCBlPXRoaXMubGFiZWxzLHI9dGhpcy5vdXRwdXRzO2lmKDE9PT1lLmxlbmd0aClyZXR1cm4gclswXS5ldmFsdWF0ZSh0KTtjb25zdCBuPXRoaXMuaW5wdXQuZXZhbHVhdGUodCk7aWYobjw9ZVswXSlyZXR1cm4gclswXS5ldmFsdWF0ZSh0KTtjb25zdCBpPWUubGVuZ3RoO3JldHVybiBuPj1lW2ktMV0/cltpLTFdLmV2YWx1YXRlKHQpOnJbX2UoZSxuKV0uZXZhbHVhdGUodCl9ZWFjaENoaWxkKHQpe3QodGhpcy5pbnB1dCk7Zm9yKGNvbnN0IGUgb2YgdGhpcy5vdXRwdXRzKXQoZSk7fW91dHB1dERlZmluZWQoKXtyZXR1cm4gdGhpcy5vdXRwdXRzLmV2ZXJ5KCh0PT50Lm91dHB1dERlZmluZWQoKSkpfX1mdW5jdGlvbiBTZSh0KXtyZXR1cm4gdCYmdC5fX2VzTW9kdWxlJiZPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodCxcImRlZmF1bHRcIik/dC5kZWZhdWx0OnR9dmFyIGtlPU1lO2Z1bmN0aW9uIE1lKHQsZSxyLG4pe3RoaXMuY3g9Myp0LHRoaXMuYng9Myooci10KS10aGlzLmN4LHRoaXMuYXg9MS10aGlzLmN4LXRoaXMuYngsdGhpcy5jeT0zKmUsdGhpcy5ieT0zKihuLWUpLXRoaXMuY3ksdGhpcy5heT0xLXRoaXMuY3ktdGhpcy5ieSx0aGlzLnAxeD10LHRoaXMucDF5PWUsdGhpcy5wMng9cix0aGlzLnAyeT1uO31NZS5wcm90b3R5cGU9e3NhbXBsZUN1cnZlWDpmdW5jdGlvbih0KXtyZXR1cm4gKCh0aGlzLmF4KnQrdGhpcy5ieCkqdCt0aGlzLmN4KSp0fSxzYW1wbGVDdXJ2ZVk6ZnVuY3Rpb24odCl7cmV0dXJuICgodGhpcy5heSp0K3RoaXMuYnkpKnQrdGhpcy5jeSkqdH0sc2FtcGxlQ3VydmVEZXJpdmF0aXZlWDpmdW5jdGlvbih0KXtyZXR1cm4gKDMqdGhpcy5heCp0KzIqdGhpcy5ieCkqdCt0aGlzLmN4fSxzb2x2ZUN1cnZlWDpmdW5jdGlvbih0LGUpe2lmKHZvaWQgMD09PWUmJihlPTFlLTYpLHQ8MClyZXR1cm4gMDtpZih0PjEpcmV0dXJuIDE7Zm9yKHZhciByPXQsbj0wO248ODtuKyspe3ZhciBpPXRoaXMuc2FtcGxlQ3VydmVYKHIpLXQ7aWYoTWF0aC5hYnMoaSk8ZSlyZXR1cm4gcjt2YXIgcz10aGlzLnNhbXBsZUN1cnZlRGVyaXZhdGl2ZVgocik7aWYoTWF0aC5hYnMocyk8MWUtNilicmVhaztyLT1pL3M7fXZhciBhPTAsbz0xO2ZvcihyPXQsbj0wO248MjAmJihpPXRoaXMuc2FtcGxlQ3VydmVYKHIpLCEoTWF0aC5hYnMoaS10KTxlKSk7bisrKXQ+aT9hPXI6bz1yLHI9LjUqKG8tYSkrYTtyZXR1cm4gcn0sc29sdmU6ZnVuY3Rpb24odCxlKXtyZXR1cm4gdGhpcy5zYW1wbGVDdXJ2ZVkodGhpcy5zb2x2ZUN1cnZlWCh0LGUpKX19O3ZhciBJZT1TZShrZSk7ZnVuY3Rpb24gemUodCxlLHIpe3JldHVybiB0K3IqKGUtdCl9ZnVuY3Rpb24gUGUodCxlLHIpe3JldHVybiB0Lm1hcCgoKHQsbik9PnplKHQsZVtuXSxyKSkpfWNvbnN0IENlPXtudW1iZXI6emUsY29sb3I6ZnVuY3Rpb24odCxlLHIsbj1cInJnYlwiKXtzd2l0Y2gobil7Y2FzZVwicmdiXCI6e2NvbnN0W24saSxzLGFdPVBlKHQucmdiLGUucmdiLHIpO3JldHVybiBuZXcgS3QobixpLHMsYSwhMSl9Y2FzZVwiaGNsXCI6e2NvbnN0W24saSxzLGFdPXQuaGNsLFtvLGwsdSxjXT1lLmhjbDtsZXQgaCxwO2lmKGlzTmFOKG4pfHxpc05hTihvKSlpc05hTihuKT9pc05hTihvKT9oPU5hTjooaD1vLDEhPT1zJiYwIT09c3x8KHA9bCkpOihoPW4sMSE9PXUmJjAhPT11fHwocD1pKSk7ZWxzZSB7bGV0IHQ9by1uO28+biYmdD4xODA/dC09MzYwOm88biYmbi1vPjE4MCYmKHQrPTM2MCksaD1uK3IqdDt9Y29uc3RbZixkLHksbV09ZnVuY3Rpb24oW3QsZSxyLG5dKXtyZXR1cm4gdD1pc05hTih0KT8wOnQqRXQsT3QoW3IsTWF0aC5jb3ModCkqZSxNYXRoLnNpbih0KSplLG5dKX0oW2gsbnVsbCE9cD9wOnplKGksbCxyKSx6ZShzLHUsciksemUoYSxjLHIpXSk7cmV0dXJuIG5ldyBLdChmLGQseSxtLCExKX1jYXNlXCJsYWJcIjp7Y29uc3RbbixpLHMsYV09T3QoUGUodC5sYWIsZS5sYWIscikpO3JldHVybiBuZXcgS3QobixpLHMsYSwhMSl9fX0sYXJyYXk6UGUscGFkZGluZzpmdW5jdGlvbih0LGUscil7cmV0dXJuIG5ldyBKdChQZSh0LnZhbHVlcyxlLnZhbHVlcyxyKSl9LHZhcmlhYmxlQW5jaG9yT2Zmc2V0Q29sbGVjdGlvbjpmdW5jdGlvbih0LGUscil7Y29uc3Qgbj10LnZhbHVlcyxpPWUudmFsdWVzO2lmKG4ubGVuZ3RoIT09aS5sZW5ndGgpdGhyb3cgbmV3IGFlKGBDYW5ub3QgaW50ZXJwb2xhdGUgdmFsdWVzIG9mIGRpZmZlcmVudCBsZW5ndGguIGZyb206ICR7dC50b1N0cmluZygpfSwgdG86ICR7ZS50b1N0cmluZygpfWApO2NvbnN0IHM9W107Zm9yKGxldCB0PTA7dDxuLmxlbmd0aDt0Kz0yKXtpZihuW3RdIT09aVt0XSl0aHJvdyBuZXcgYWUoYENhbm5vdCBpbnRlcnBvbGF0ZSB2YWx1ZXMgY29udGFpbmluZyBtaXNtYXRjaGVkIGFuY2hvcnMuIGZyb21bJHt0fV06ICR7blt0XX0sIHRvWyR7dH1dOiAke2lbdF19YCk7cy5wdXNoKG5bdF0pO2NvbnN0W2UsYV09blt0KzFdLFtvLGxdPWlbdCsxXTtzLnB1c2goW3plKGUsbyxyKSx6ZShhLGwscildKTt9cmV0dXJuIG5ldyBRdChzKX19O2NsYXNzIEJle2NvbnN0cnVjdG9yKHQsZSxyLG4saSl7dGhpcy50eXBlPXQsdGhpcy5vcGVyYXRvcj1lLHRoaXMuaW50ZXJwb2xhdGlvbj1yLHRoaXMuaW5wdXQ9bix0aGlzLmxhYmVscz1bXSx0aGlzLm91dHB1dHM9W107Zm9yKGNvbnN0W3QsZV1vZiBpKXRoaXMubGFiZWxzLnB1c2godCksdGhpcy5vdXRwdXRzLnB1c2goZSk7fXN0YXRpYyBpbnRlcnBvbGF0aW9uRmFjdG9yKHQsZSxyLG4pe2xldCBpPTA7aWYoXCJleHBvbmVudGlhbFwiPT09dC5uYW1lKWk9VmUoZSx0LmJhc2UscixuKTtlbHNlIGlmKFwibGluZWFyXCI9PT10Lm5hbWUpaT1WZShlLDEscixuKTtlbHNlIGlmKFwiY3ViaWMtYmV6aWVyXCI9PT10Lm5hbWUpe2NvbnN0IHM9dC5jb250cm9sUG9pbnRzO2k9bmV3IEllKHNbMF0sc1sxXSxzWzJdLHNbM10pLnNvbHZlKFZlKGUsMSxyLG4pKTt9cmV0dXJuIGl9c3RhdGljIHBhcnNlKHQsZSl7bGV0W3IsbixpLC4uLnNdPXQ7aWYoIUFycmF5LmlzQXJyYXkobil8fDA9PT1uLmxlbmd0aClyZXR1cm4gZS5lcnJvcihcIkV4cGVjdGVkIGFuIGludGVycG9sYXRpb24gdHlwZSBleHByZXNzaW9uLlwiLDEpO2lmKFwibGluZWFyXCI9PT1uWzBdKW49e25hbWU6XCJsaW5lYXJcIn07ZWxzZSBpZihcImV4cG9uZW50aWFsXCI9PT1uWzBdKXtjb25zdCB0PW5bMV07aWYoXCJudW1iZXJcIiE9dHlwZW9mIHQpcmV0dXJuIGUuZXJyb3IoXCJFeHBvbmVudGlhbCBpbnRlcnBvbGF0aW9uIHJlcXVpcmVzIGEgbnVtZXJpYyBiYXNlLlwiLDEsMSk7bj17bmFtZTpcImV4cG9uZW50aWFsXCIsYmFzZTp0fTt9ZWxzZSB7aWYoXCJjdWJpYy1iZXppZXJcIiE9PW5bMF0pcmV0dXJuIGUuZXJyb3IoYFVua25vd24gaW50ZXJwb2xhdGlvbiB0eXBlICR7U3RyaW5nKG5bMF0pfWAsMSwwKTt7Y29uc3QgdD1uLnNsaWNlKDEpO2lmKDQhPT10Lmxlbmd0aHx8dC5zb21lKCh0PT5cIm51bWJlclwiIT10eXBlb2YgdHx8dDwwfHx0PjEpKSlyZXR1cm4gZS5lcnJvcihcIkN1YmljIGJlemllciBpbnRlcnBvbGF0aW9uIHJlcXVpcmVzIGZvdXIgbnVtZXJpYyBhcmd1bWVudHMgd2l0aCB2YWx1ZXMgYmV0d2VlbiAwIGFuZCAxLlwiLDEpO249e25hbWU6XCJjdWJpYy1iZXppZXJcIixjb250cm9sUG9pbnRzOnR9O319aWYodC5sZW5ndGgtMTw0KXJldHVybiBlLmVycm9yKGBFeHBlY3RlZCBhdCBsZWFzdCA0IGFyZ3VtZW50cywgYnV0IGZvdW5kIG9ubHkgJHt0Lmxlbmd0aC0xfS5gKTtpZigodC5sZW5ndGgtMSklMiE9MClyZXR1cm4gZS5lcnJvcihcIkV4cGVjdGVkIGFuIGV2ZW4gbnVtYmVyIG9mIGFyZ3VtZW50cy5cIik7aWYoaT1lLnBhcnNlKGksMix1dCksIWkpcmV0dXJuIG51bGw7Y29uc3QgYT1bXTtsZXQgbz1udWxsO1wiaW50ZXJwb2xhdGUtaGNsXCI9PT1yfHxcImludGVycG9sYXRlLWxhYlwiPT09cj9vPXB0OmUuZXhwZWN0ZWRUeXBlJiZcInZhbHVlXCIhPT1lLmV4cGVjdGVkVHlwZS5raW5kJiYobz1lLmV4cGVjdGVkVHlwZSk7Zm9yKGxldCB0PTA7dDxzLmxlbmd0aDt0Kz0yKXtjb25zdCByPXNbdF0sbj1zW3QrMV0saT10KzMsbD10KzQ7aWYoXCJudW1iZXJcIiE9dHlwZW9mIHIpcmV0dXJuIGUuZXJyb3IoJ0lucHV0L291dHB1dCBwYWlycyBmb3IgXCJpbnRlcnBvbGF0ZVwiIGV4cHJlc3Npb25zIG11c3QgYmUgZGVmaW5lZCB1c2luZyBsaXRlcmFsIG51bWVyaWMgdmFsdWVzIChub3QgY29tcHV0ZWQgZXhwcmVzc2lvbnMpIGZvciB0aGUgaW5wdXQgdmFsdWVzLicsaSk7aWYoYS5sZW5ndGgmJmFbYS5sZW5ndGgtMV1bMF0+PXIpcmV0dXJuIGUuZXJyb3IoJ0lucHV0L291dHB1dCBwYWlycyBmb3IgXCJpbnRlcnBvbGF0ZVwiIGV4cHJlc3Npb25zIG11c3QgYmUgYXJyYW5nZWQgd2l0aCBpbnB1dCB2YWx1ZXMgaW4gc3RyaWN0bHkgYXNjZW5kaW5nIG9yZGVyLicsaSk7Y29uc3QgdT1lLnBhcnNlKG4sbCxvKTtpZighdSlyZXR1cm4gbnVsbDtvPW98fHUudHlwZSxhLnB1c2goW3IsdV0pO31yZXR1cm4gTXQobyx1dCl8fE10KG8scHQpfHxNdChvLGd0KXx8TXQobyx2dCl8fE10KG8sYnQodXQpKT9uZXcgQmUobyxyLG4saSxhKTplLmVycm9yKGBUeXBlICR7d3Qobyl9IGlzIG5vdCBpbnRlcnBvbGF0YWJsZS5gKX1ldmFsdWF0ZSh0KXtjb25zdCBlPXRoaXMubGFiZWxzLHI9dGhpcy5vdXRwdXRzO2lmKDE9PT1lLmxlbmd0aClyZXR1cm4gclswXS5ldmFsdWF0ZSh0KTtjb25zdCBuPXRoaXMuaW5wdXQuZXZhbHVhdGUodCk7aWYobjw9ZVswXSlyZXR1cm4gclswXS5ldmFsdWF0ZSh0KTtjb25zdCBpPWUubGVuZ3RoO2lmKG4+PWVbaS0xXSlyZXR1cm4gcltpLTFdLmV2YWx1YXRlKHQpO2NvbnN0IHM9X2UoZSxuKSxhPUJlLmludGVycG9sYXRpb25GYWN0b3IodGhpcy5pbnRlcnBvbGF0aW9uLG4sZVtzXSxlW3MrMV0pLG89cltzXS5ldmFsdWF0ZSh0KSxsPXJbcysxXS5ldmFsdWF0ZSh0KTtzd2l0Y2godGhpcy5vcGVyYXRvcil7Y2FzZVwiaW50ZXJwb2xhdGVcIjpyZXR1cm4gQ2VbdGhpcy50eXBlLmtpbmRdKG8sbCxhKTtjYXNlXCJpbnRlcnBvbGF0ZS1oY2xcIjpyZXR1cm4gQ2UuY29sb3IobyxsLGEsXCJoY2xcIik7Y2FzZVwiaW50ZXJwb2xhdGUtbGFiXCI6cmV0dXJuIENlLmNvbG9yKG8sbCxhLFwibGFiXCIpfX1lYWNoQ2hpbGQodCl7dCh0aGlzLmlucHV0KTtmb3IoY29uc3QgZSBvZiB0aGlzLm91dHB1dHMpdChlKTt9b3V0cHV0RGVmaW5lZCgpe3JldHVybiB0aGlzLm91dHB1dHMuZXZlcnkoKHQ9PnQub3V0cHV0RGVmaW5lZCgpKSl9fWZ1bmN0aW9uIFZlKHQsZSxyLG4pe2NvbnN0IGk9bi1yLHM9dC1yO3JldHVybiAwPT09aT8wOjE9PT1lP3MvaTooTWF0aC5wb3coZSxzKS0xKS8oTWF0aC5wb3coZSxpKS0xKX1jbGFzcyBFZXtjb25zdHJ1Y3Rvcih0LGUpe3RoaXMudHlwZT10LHRoaXMuYXJncz1lO31zdGF0aWMgcGFyc2UodCxlKXtpZih0Lmxlbmd0aDwyKXJldHVybiBlLmVycm9yKFwiRXhwZWN0ZWN0ZWQgYXQgbGVhc3Qgb25lIGFyZ3VtZW50LlwiKTtsZXQgcj1udWxsO2NvbnN0IG49ZS5leHBlY3RlZFR5cGU7biYmXCJ2YWx1ZVwiIT09bi5raW5kJiYocj1uKTtjb25zdCBpPVtdO2Zvcihjb25zdCBuIG9mIHQuc2xpY2UoMSkpe2NvbnN0IHQ9ZS5wYXJzZShuLDEraS5sZW5ndGgscix2b2lkIDAse3R5cGVBbm5vdGF0aW9uOlwib21pdFwifSk7aWYoIXQpcmV0dXJuIG51bGw7cj1yfHx0LnR5cGUsaS5wdXNoKHQpO31pZighcil0aHJvdyBuZXcgRXJyb3IoXCJObyBvdXRwdXQgdHlwZVwiKTtjb25zdCBzPW4mJmkuc29tZSgodD0+QXQobix0LnR5cGUpKSk7cmV0dXJuIG5ldyBFZShzP2R0OnIsaSl9ZXZhbHVhdGUodCl7bGV0IGUscj1udWxsLG49MDtmb3IoY29uc3QgaSBvZiB0aGlzLmFyZ3MpaWYobisrLHI9aS5ldmFsdWF0ZSh0KSxyJiZyIGluc3RhbmNlb2YgdGUmJiFyLmF2YWlsYWJsZSYmKGV8fChlPXIubmFtZSkscj1udWxsLG49PT10aGlzLmFyZ3MubGVuZ3RoJiYocj1lKSksbnVsbCE9PXIpYnJlYWs7cmV0dXJuIHJ9ZWFjaENoaWxkKHQpe3RoaXMuYXJncy5mb3JFYWNoKHQpO31vdXRwdXREZWZpbmVkKCl7cmV0dXJuIHRoaXMuYXJncy5ldmVyeSgodD0+dC5vdXRwdXREZWZpbmVkKCkpKX19ZnVuY3Rpb24gRmUodCxlKXtyZXR1cm4gXCI9PVwiPT09dHx8XCIhPVwiPT09dD9cImJvb2xlYW5cIj09PWUua2luZHx8XCJzdHJpbmdcIj09PWUua2luZHx8XCJudW1iZXJcIj09PWUua2luZHx8XCJudWxsXCI9PT1lLmtpbmR8fFwidmFsdWVcIj09PWUua2luZDpcInN0cmluZ1wiPT09ZS5raW5kfHxcIm51bWJlclwiPT09ZS5raW5kfHxcInZhbHVlXCI9PT1lLmtpbmR9ZnVuY3Rpb24gVGUodCxlLHIsbil7cmV0dXJuIDA9PT1uLmNvbXBhcmUoZSxyKX1mdW5jdGlvbiAkZSh0LGUscil7Y29uc3Qgbj1cIj09XCIhPT10JiZcIiE9XCIhPT10O3JldHVybiBjbGFzcyBpe2NvbnN0cnVjdG9yKHQsZSxyKXt0aGlzLnR5cGU9aHQsdGhpcy5saHM9dCx0aGlzLnJocz1lLHRoaXMuY29sbGF0b3I9cix0aGlzLmhhc1VudHlwZWRBcmd1bWVudD1cInZhbHVlXCI9PT10LnR5cGUua2luZHx8XCJ2YWx1ZVwiPT09ZS50eXBlLmtpbmQ7fXN0YXRpYyBwYXJzZSh0LGUpe2lmKDMhPT10Lmxlbmd0aCYmNCE9PXQubGVuZ3RoKXJldHVybiBlLmVycm9yKFwiRXhwZWN0ZWQgdHdvIG9yIHRocmVlIGFyZ3VtZW50cy5cIik7Y29uc3Qgcj10WzBdO2xldCBzPWUucGFyc2UodFsxXSwxLGR0KTtpZighcylyZXR1cm4gbnVsbDtpZighRmUocixzLnR5cGUpKXJldHVybiBlLmNvbmNhdCgxKS5lcnJvcihgXCIke3J9XCIgY29tcGFyaXNvbnMgYXJlIG5vdCBzdXBwb3J0ZWQgZm9yIHR5cGUgJyR7d3Qocy50eXBlKX0nLmApO2xldCBhPWUucGFyc2UodFsyXSwyLGR0KTtpZighYSlyZXR1cm4gbnVsbDtpZighRmUocixhLnR5cGUpKXJldHVybiBlLmNvbmNhdCgyKS5lcnJvcihgXCIke3J9XCIgY29tcGFyaXNvbnMgYXJlIG5vdCBzdXBwb3J0ZWQgZm9yIHR5cGUgJyR7d3QoYS50eXBlKX0nLmApO2lmKHMudHlwZS5raW5kIT09YS50eXBlLmtpbmQmJlwidmFsdWVcIiE9PXMudHlwZS5raW5kJiZcInZhbHVlXCIhPT1hLnR5cGUua2luZClyZXR1cm4gZS5lcnJvcihgQ2Fubm90IGNvbXBhcmUgdHlwZXMgJyR7d3Qocy50eXBlKX0nIGFuZCAnJHt3dChhLnR5cGUpfScuYCk7biYmKFwidmFsdWVcIj09PXMudHlwZS5raW5kJiZcInZhbHVlXCIhPT1hLnR5cGUua2luZD9zPW5ldyBsZShhLnR5cGUsW3NdKTpcInZhbHVlXCIhPT1zLnR5cGUua2luZCYmXCJ2YWx1ZVwiPT09YS50eXBlLmtpbmQmJihhPW5ldyBsZShzLnR5cGUsW2FdKSkpO2xldCBvPW51bGw7aWYoND09PXQubGVuZ3RoKXtpZihcInN0cmluZ1wiIT09cy50eXBlLmtpbmQmJlwic3RyaW5nXCIhPT1hLnR5cGUua2luZCYmXCJ2YWx1ZVwiIT09cy50eXBlLmtpbmQmJlwidmFsdWVcIiE9PWEudHlwZS5raW5kKXJldHVybiBlLmVycm9yKFwiQ2Fubm90IHVzZSBjb2xsYXRvciB0byBjb21wYXJlIG5vbi1zdHJpbmcgdHlwZXMuXCIpO2lmKG89ZS5wYXJzZSh0WzNdLDMseXQpLCFvKXJldHVybiBudWxsfXJldHVybiBuZXcgaShzLGEsbyl9ZXZhbHVhdGUoaSl7Y29uc3Qgcz10aGlzLmxocy5ldmFsdWF0ZShpKSxhPXRoaXMucmhzLmV2YWx1YXRlKGkpO2lmKG4mJnRoaXMuaGFzVW50eXBlZEFyZ3VtZW50KXtjb25zdCBlPW5lKHMpLHI9bmUoYSk7aWYoZS5raW5kIT09ci5raW5kfHxcInN0cmluZ1wiIT09ZS5raW5kJiZcIm51bWJlclwiIT09ZS5raW5kKXRocm93IG5ldyBhZShgRXhwZWN0ZWQgYXJndW1lbnRzIGZvciBcIiR7dH1cIiB0byBiZSAoc3RyaW5nLCBzdHJpbmcpIG9yIChudW1iZXIsIG51bWJlciksIGJ1dCBmb3VuZCAoJHtlLmtpbmR9LCAke3Iua2luZH0pIGluc3RlYWQuYCl9aWYodGhpcy5jb2xsYXRvciYmIW4mJnRoaXMuaGFzVW50eXBlZEFyZ3VtZW50KXtjb25zdCB0PW5lKHMpLHI9bmUoYSk7aWYoXCJzdHJpbmdcIiE9PXQua2luZHx8XCJzdHJpbmdcIiE9PXIua2luZClyZXR1cm4gZShpLHMsYSl9cmV0dXJuIHRoaXMuY29sbGF0b3I/cihpLHMsYSx0aGlzLmNvbGxhdG9yLmV2YWx1YXRlKGkpKTplKGkscyxhKX1lYWNoQ2hpbGQodCl7dCh0aGlzLmxocyksdCh0aGlzLnJocyksdGhpcy5jb2xsYXRvciYmdCh0aGlzLmNvbGxhdG9yKTt9b3V0cHV0RGVmaW5lZCgpe3JldHVybiAhMH19fWNvbnN0IExlPSRlKFwiPT1cIiwoZnVuY3Rpb24odCxlLHIpe3JldHVybiBlPT09cn0pLFRlKSxEZT0kZShcIiE9XCIsKGZ1bmN0aW9uKHQsZSxyKXtyZXR1cm4gZSE9PXJ9KSwoZnVuY3Rpb24odCxlLHIsbil7cmV0dXJuICFUZSgwLGUscixuKX0pKSxPZT0kZShcIjxcIiwoZnVuY3Rpb24odCxlLHIpe3JldHVybiBlPHJ9KSwoZnVuY3Rpb24odCxlLHIsbil7cmV0dXJuIG4uY29tcGFyZShlLHIpPDB9KSksamU9JGUoXCI+XCIsKGZ1bmN0aW9uKHQsZSxyKXtyZXR1cm4gZT5yfSksKGZ1bmN0aW9uKHQsZSxyLG4pe3JldHVybiBuLmNvbXBhcmUoZSxyKT4wfSkpLFJlPSRlKFwiPD1cIiwoZnVuY3Rpb24odCxlLHIpe3JldHVybiBlPD1yfSksKGZ1bmN0aW9uKHQsZSxyLG4pe3JldHVybiBuLmNvbXBhcmUoZSxyKTw9MH0pKSxVZT0kZShcIj49XCIsKGZ1bmN0aW9uKHQsZSxyKXtyZXR1cm4gZT49cn0pLChmdW5jdGlvbih0LGUscixuKXtyZXR1cm4gbi5jb21wYXJlKGUscik+PTB9KSk7Y2xhc3MgcWV7Y29uc3RydWN0b3IodCxlLHIpe3RoaXMudHlwZT15dCx0aGlzLmxvY2FsZT1yLHRoaXMuY2FzZVNlbnNpdGl2ZT10LHRoaXMuZGlhY3JpdGljU2Vuc2l0aXZlPWU7fXN0YXRpYyBwYXJzZSh0LGUpe2lmKDIhPT10Lmxlbmd0aClyZXR1cm4gZS5lcnJvcihcIkV4cGVjdGVkIG9uZSBhcmd1bWVudC5cIik7Y29uc3Qgcj10WzFdO2lmKFwib2JqZWN0XCIhPXR5cGVvZiByfHxBcnJheS5pc0FycmF5KHIpKXJldHVybiBlLmVycm9yKFwiQ29sbGF0b3Igb3B0aW9ucyBhcmd1bWVudCBtdXN0IGJlIGFuIG9iamVjdC5cIik7Y29uc3Qgbj1lLnBhcnNlKHZvaWQgMCE9PXJbXCJjYXNlLXNlbnNpdGl2ZVwiXSYmcltcImNhc2Utc2Vuc2l0aXZlXCJdLDEsaHQpO2lmKCFuKXJldHVybiBudWxsO2NvbnN0IGk9ZS5wYXJzZSh2b2lkIDAhPT1yW1wiZGlhY3JpdGljLXNlbnNpdGl2ZVwiXSYmcltcImRpYWNyaXRpYy1zZW5zaXRpdmVcIl0sMSxodCk7aWYoIWkpcmV0dXJuIG51bGw7bGV0IHM9bnVsbDtyZXR1cm4gci5sb2NhbGUmJihzPWUucGFyc2Uoci5sb2NhbGUsMSxjdCksIXMpP251bGw6bmV3IHFlKG4saSxzKX1ldmFsdWF0ZSh0KXtyZXR1cm4gbmV3IFh0KHRoaXMuY2FzZVNlbnNpdGl2ZS5ldmFsdWF0ZSh0KSx0aGlzLmRpYWNyaXRpY1NlbnNpdGl2ZS5ldmFsdWF0ZSh0KSx0aGlzLmxvY2FsZT90aGlzLmxvY2FsZS5ldmFsdWF0ZSh0KTpudWxsKX1lYWNoQ2hpbGQodCl7dCh0aGlzLmNhc2VTZW5zaXRpdmUpLHQodGhpcy5kaWFjcml0aWNTZW5zaXRpdmUpLHRoaXMubG9jYWxlJiZ0KHRoaXMubG9jYWxlKTt9b3V0cHV0RGVmaW5lZCgpe3JldHVybiAhMX19Y2xhc3MgTmV7Y29uc3RydWN0b3IodCxlLHIsbixpKXt0aGlzLnR5cGU9Y3QsdGhpcy5udW1iZXI9dCx0aGlzLmxvY2FsZT1lLHRoaXMuY3VycmVuY3k9cix0aGlzLm1pbkZyYWN0aW9uRGlnaXRzPW4sdGhpcy5tYXhGcmFjdGlvbkRpZ2l0cz1pO31zdGF0aWMgcGFyc2UodCxlKXtpZigzIT09dC5sZW5ndGgpcmV0dXJuIGUuZXJyb3IoXCJFeHBlY3RlZCB0d28gYXJndW1lbnRzLlwiKTtjb25zdCByPWUucGFyc2UodFsxXSwxLHV0KTtpZighcilyZXR1cm4gbnVsbDtjb25zdCBuPXRbMl07aWYoXCJvYmplY3RcIiE9dHlwZW9mIG58fEFycmF5LmlzQXJyYXkobikpcmV0dXJuIGUuZXJyb3IoXCJOdW1iZXJGb3JtYXQgb3B0aW9ucyBhcmd1bWVudCBtdXN0IGJlIGFuIG9iamVjdC5cIik7bGV0IGk9bnVsbDtpZihuLmxvY2FsZSYmKGk9ZS5wYXJzZShuLmxvY2FsZSwxLGN0KSwhaSkpcmV0dXJuIG51bGw7bGV0IHM9bnVsbDtpZihuLmN1cnJlbmN5JiYocz1lLnBhcnNlKG4uY3VycmVuY3ksMSxjdCksIXMpKXJldHVybiBudWxsO2xldCBhPW51bGw7aWYobltcIm1pbi1mcmFjdGlvbi1kaWdpdHNcIl0mJihhPWUucGFyc2UobltcIm1pbi1mcmFjdGlvbi1kaWdpdHNcIl0sMSx1dCksIWEpKXJldHVybiBudWxsO2xldCBvPW51bGw7cmV0dXJuIG5bXCJtYXgtZnJhY3Rpb24tZGlnaXRzXCJdJiYobz1lLnBhcnNlKG5bXCJtYXgtZnJhY3Rpb24tZGlnaXRzXCJdLDEsdXQpLCFvKT9udWxsOm5ldyBOZShyLGkscyxhLG8pfWV2YWx1YXRlKHQpe3JldHVybiBuZXcgSW50bC5OdW1iZXJGb3JtYXQodGhpcy5sb2NhbGU/dGhpcy5sb2NhbGUuZXZhbHVhdGUodCk6W10se3N0eWxlOnRoaXMuY3VycmVuY3k/XCJjdXJyZW5jeVwiOlwiZGVjaW1hbFwiLGN1cnJlbmN5OnRoaXMuY3VycmVuY3k/dGhpcy5jdXJyZW5jeS5ldmFsdWF0ZSh0KTp2b2lkIDAsbWluaW11bUZyYWN0aW9uRGlnaXRzOnRoaXMubWluRnJhY3Rpb25EaWdpdHM/dGhpcy5taW5GcmFjdGlvbkRpZ2l0cy5ldmFsdWF0ZSh0KTp2b2lkIDAsbWF4aW11bUZyYWN0aW9uRGlnaXRzOnRoaXMubWF4RnJhY3Rpb25EaWdpdHM/dGhpcy5tYXhGcmFjdGlvbkRpZ2l0cy5ldmFsdWF0ZSh0KTp2b2lkIDB9KS5mb3JtYXQodGhpcy5udW1iZXIuZXZhbHVhdGUodCkpfWVhY2hDaGlsZCh0KXt0KHRoaXMubnVtYmVyKSx0aGlzLmxvY2FsZSYmdCh0aGlzLmxvY2FsZSksdGhpcy5jdXJyZW5jeSYmdCh0aGlzLmN1cnJlbmN5KSx0aGlzLm1pbkZyYWN0aW9uRGlnaXRzJiZ0KHRoaXMubWluRnJhY3Rpb25EaWdpdHMpLHRoaXMubWF4RnJhY3Rpb25EaWdpdHMmJnQodGhpcy5tYXhGcmFjdGlvbkRpZ2l0cyk7fW91dHB1dERlZmluZWQoKXtyZXR1cm4gITF9fWNsYXNzIFple2NvbnN0cnVjdG9yKHQpe3RoaXMudHlwZT1tdCx0aGlzLnNlY3Rpb25zPXQ7fXN0YXRpYyBwYXJzZSh0LGUpe2lmKHQubGVuZ3RoPDIpcmV0dXJuIGUuZXJyb3IoXCJFeHBlY3RlZCBhdCBsZWFzdCBvbmUgYXJndW1lbnQuXCIpO2NvbnN0IHI9dFsxXTtpZighQXJyYXkuaXNBcnJheShyKSYmXCJvYmplY3RcIj09dHlwZW9mIHIpcmV0dXJuIGUuZXJyb3IoXCJGaXJzdCBhcmd1bWVudCBtdXN0IGJlIGFuIGltYWdlIG9yIHRleHQgc2VjdGlvbi5cIik7Y29uc3Qgbj1bXTtsZXQgaT0hMTtmb3IobGV0IHI9MTtyPD10Lmxlbmd0aC0xOysrcil7Y29uc3Qgcz10W3JdO2lmKGkmJlwib2JqZWN0XCI9PXR5cGVvZiBzJiYhQXJyYXkuaXNBcnJheShzKSl7aT0hMTtsZXQgdD1udWxsO2lmKHNbXCJmb250LXNjYWxlXCJdJiYodD1lLnBhcnNlKHNbXCJmb250LXNjYWxlXCJdLDEsdXQpLCF0KSlyZXR1cm4gbnVsbDtsZXQgcj1udWxsO2lmKHNbXCJ0ZXh0LWZvbnRcIl0mJihyPWUucGFyc2Uoc1tcInRleHQtZm9udFwiXSwxLGJ0KGN0KSksIXIpKXJldHVybiBudWxsO2xldCBhPW51bGw7aWYoc1tcInRleHQtY29sb3JcIl0mJihhPWUucGFyc2Uoc1tcInRleHQtY29sb3JcIl0sMSxwdCksIWEpKXJldHVybiBudWxsO2NvbnN0IG89bltuLmxlbmd0aC0xXTtvLnNjYWxlPXQsby5mb250PXIsby50ZXh0Q29sb3I9YTt9ZWxzZSB7Y29uc3Qgcz1lLnBhcnNlKHRbcl0sMSxkdCk7aWYoIXMpcmV0dXJuIG51bGw7Y29uc3QgYT1zLnR5cGUua2luZDtpZihcInN0cmluZ1wiIT09YSYmXCJ2YWx1ZVwiIT09YSYmXCJudWxsXCIhPT1hJiZcInJlc29sdmVkSW1hZ2VcIiE9PWEpcmV0dXJuIGUuZXJyb3IoXCJGb3JtYXR0ZWQgdGV4dCB0eXBlIG11c3QgYmUgJ3N0cmluZycsICd2YWx1ZScsICdpbWFnZScgb3IgJ251bGwnLlwiKTtpPSEwLG4ucHVzaCh7Y29udGVudDpzLHNjYWxlOm51bGwsZm9udDpudWxsLHRleHRDb2xvcjpudWxsfSk7fX1yZXR1cm4gbmV3IFplKG4pfWV2YWx1YXRlKHQpe3JldHVybiBuZXcgWXQodGhpcy5zZWN0aW9ucy5tYXAoKGU9Pntjb25zdCByPWUuY29udGVudC5ldmFsdWF0ZSh0KTtyZXR1cm4gbmUocik9PT14dD9uZXcgSHQoXCJcIixyLG51bGwsbnVsbCxudWxsKTpuZXcgSHQoaWUociksbnVsbCxlLnNjYWxlP2Uuc2NhbGUuZXZhbHVhdGUodCk6bnVsbCxlLmZvbnQ/ZS5mb250LmV2YWx1YXRlKHQpLmpvaW4oXCIsXCIpOm51bGwsZS50ZXh0Q29sb3I/ZS50ZXh0Q29sb3IuZXZhbHVhdGUodCk6bnVsbCl9KSkpfWVhY2hDaGlsZCh0KXtmb3IoY29uc3QgZSBvZiB0aGlzLnNlY3Rpb25zKXQoZS5jb250ZW50KSxlLnNjYWxlJiZ0KGUuc2NhbGUpLGUuZm9udCYmdChlLmZvbnQpLGUudGV4dENvbG9yJiZ0KGUudGV4dENvbG9yKTt9b3V0cHV0RGVmaW5lZCgpe3JldHVybiAhMX19Y2xhc3MgR2V7Y29uc3RydWN0b3IodCl7dGhpcy50eXBlPXh0LHRoaXMuaW5wdXQ9dDt9c3RhdGljIHBhcnNlKHQsZSl7aWYoMiE9PXQubGVuZ3RoKXJldHVybiBlLmVycm9yKFwiRXhwZWN0ZWQgdHdvIGFyZ3VtZW50cy5cIik7Y29uc3Qgcj1lLnBhcnNlKHRbMV0sMSxjdCk7cmV0dXJuIHI/bmV3IEdlKHIpOmUuZXJyb3IoXCJObyBpbWFnZSBuYW1lIHByb3ZpZGVkLlwiKX1ldmFsdWF0ZSh0KXtjb25zdCBlPXRoaXMuaW5wdXQuZXZhbHVhdGUodCkscj10ZS5mcm9tU3RyaW5nKGUpO3JldHVybiByJiZ0LmF2YWlsYWJsZUltYWdlcyYmKHIuYXZhaWxhYmxlPXQuYXZhaWxhYmxlSW1hZ2VzLmluZGV4T2YoZSk+LTEpLHJ9ZWFjaENoaWxkKHQpe3QodGhpcy5pbnB1dCk7fW91dHB1dERlZmluZWQoKXtyZXR1cm4gITF9fWNsYXNzIEtle2NvbnN0cnVjdG9yKHQpe3RoaXMudHlwZT11dCx0aGlzLmlucHV0PXQ7fXN0YXRpYyBwYXJzZSh0LGUpe2lmKDIhPT10Lmxlbmd0aClyZXR1cm4gZS5lcnJvcihgRXhwZWN0ZWQgMSBhcmd1bWVudCwgYnV0IGZvdW5kICR7dC5sZW5ndGgtMX0gaW5zdGVhZC5gKTtjb25zdCByPWUucGFyc2UodFsxXSwxKTtyZXR1cm4gcj9cImFycmF5XCIhPT1yLnR5cGUua2luZCYmXCJzdHJpbmdcIiE9PXIudHlwZS5raW5kJiZcInZhbHVlXCIhPT1yLnR5cGUua2luZD9lLmVycm9yKGBFeHBlY3RlZCBhcmd1bWVudCBvZiB0eXBlIHN0cmluZyBvciBhcnJheSwgYnV0IGZvdW5kICR7d3Qoci50eXBlKX0gaW5zdGVhZC5gKTpuZXcgS2Uocik6bnVsbH1ldmFsdWF0ZSh0KXtjb25zdCBlPXRoaXMuaW5wdXQuZXZhbHVhdGUodCk7aWYoXCJzdHJpbmdcIj09dHlwZW9mIGUpcmV0dXJuIFsuLi5lXS5sZW5ndGg7aWYoQXJyYXkuaXNBcnJheShlKSlyZXR1cm4gZS5sZW5ndGg7dGhyb3cgbmV3IGFlKGBFeHBlY3RlZCB2YWx1ZSB0byBiZSBvZiB0eXBlIHN0cmluZyBvciBhcnJheSwgYnV0IGZvdW5kICR7d3QobmUoZSkpfSBpbnN0ZWFkLmApfWVhY2hDaGlsZCh0KXt0KHRoaXMuaW5wdXQpO31vdXRwdXREZWZpbmVkKCl7cmV0dXJuICExfX1jb25zdCBYZT04MTkyO2Z1bmN0aW9uIEhlKHQsZSl7Y29uc3Qgcj0oMTgwK3RbMF0pLzM2MCxuPSgxODAtMTgwL01hdGguUEkqTWF0aC5sb2coTWF0aC50YW4oTWF0aC5QSS80K3RbMV0qTWF0aC5QSS8zNjApKSkvMzYwLGk9TWF0aC5wb3coMixlLnopO3JldHVybiBbTWF0aC5yb3VuZChyKmkqWGUpLE1hdGgucm91bmQobippKlhlKV19ZnVuY3Rpb24gWWUodCxlKXtjb25zdCByPU1hdGgucG93KDIsZS56KTtyZXR1cm4gWyhpPSh0WzBdL1hlK2UueCkvciwzNjAqaS0xODApLChuPSh0WzFdL1hlK2UueSkvciwzNjAvTWF0aC5QSSpNYXRoLmF0YW4oTWF0aC5leHAoKDE4MC0zNjAqbikqTWF0aC5QSS8xODApKS05MCldO3ZhciBuLGk7fWZ1bmN0aW9uIEplKHQsZSl7dFswXT1NYXRoLm1pbih0WzBdLGVbMF0pLHRbMV09TWF0aC5taW4odFsxXSxlWzFdKSx0WzJdPU1hdGgubWF4KHRbMl0sZVswXSksdFszXT1NYXRoLm1heCh0WzNdLGVbMV0pO31mdW5jdGlvbiBXZSh0LGUpe3JldHVybiAhKHRbMF08PWVbMF18fHRbMl0+PWVbMl18fHRbMV08PWVbMV18fHRbM10+PWVbM10pfWZ1bmN0aW9uIFFlKHQsZSxyKXtjb25zdCBuPXRbMF0tZVswXSxpPXRbMV0tZVsxXSxzPXRbMF0tclswXSxhPXRbMV0tclsxXTtyZXR1cm4gbiphLXMqaT09MCYmbipzPD0wJiZpKmE8PTB9ZnVuY3Rpb24gdHIodCxlLHIsbil7cmV0dXJuIDAhPShpPVtuWzBdLXJbMF0sblsxXS1yWzFdXSlbMF0qKHM9W2VbMF0tdFswXSxlWzFdLXRbMV1dKVsxXS1pWzFdKnNbMF0mJiEoIWFyKHQsZSxyLG4pfHwhYXIocixuLHQsZSkpO3ZhciBpLHM7fWZ1bmN0aW9uIGVyKHQsZSxyKXtmb3IoY29uc3QgbiBvZiByKWZvcihsZXQgcj0wO3I8bi5sZW5ndGgtMTsrK3IpaWYodHIodCxlLG5bcl0sbltyKzFdKSlyZXR1cm4gITA7cmV0dXJuICExfWZ1bmN0aW9uIHJyKHQsZSxyPSExKXtsZXQgbj0hMTtmb3IoY29uc3QgbyBvZiBlKWZvcihsZXQgZT0wO2U8by5sZW5ndGgtMTtlKyspe2lmKFFlKHQsb1tlXSxvW2UrMV0pKXJldHVybiByOyhzPW9bZV0pWzFdPihpPXQpWzFdIT0oYT1vW2UrMV0pWzFdPmlbMV0mJmlbMF08KGFbMF0tc1swXSkqKGlbMV0tc1sxXSkvKGFbMV0tc1sxXSkrc1swXSYmKG49IW4pO312YXIgaSxzLGE7cmV0dXJuIG59ZnVuY3Rpb24gbnIodCxlKXtmb3IoY29uc3QgciBvZiBlKWlmKHJyKHQscikpcmV0dXJuICEwO3JldHVybiAhMX1mdW5jdGlvbiBpcih0LGUpe2Zvcihjb25zdCByIG9mIHQpaWYoIXJyKHIsZSkpcmV0dXJuICExO2ZvcihsZXQgcj0wO3I8dC5sZW5ndGgtMTsrK3IpaWYoZXIodFtyXSx0W3IrMV0sZSkpcmV0dXJuICExO3JldHVybiAhMH1mdW5jdGlvbiBzcih0LGUpe2Zvcihjb25zdCByIG9mIGUpaWYoaXIodCxyKSlyZXR1cm4gITA7cmV0dXJuICExfWZ1bmN0aW9uIGFyKHQsZSxyLG4pe2NvbnN0IGk9blswXS1yWzBdLHM9blsxXS1yWzFdLGE9KHRbMF0tclswXSkqcy1pKih0WzFdLXJbMV0pLG89KGVbMF0tclswXSkqcy1pKihlWzFdLXJbMV0pO3JldHVybiBhPjAmJm88MHx8YTwwJiZvPjB9ZnVuY3Rpb24gb3IodCxlLHIpe2NvbnN0IG49W107Zm9yKGxldCBpPTA7aTx0Lmxlbmd0aDtpKyspe2NvbnN0IHM9W107Zm9yKGxldCBuPTA7bjx0W2ldLmxlbmd0aDtuKyspe2NvbnN0IGE9SGUodFtpXVtuXSxyKTtKZShlLGEpLHMucHVzaChhKTt9bi5wdXNoKHMpO31yZXR1cm4gbn1mdW5jdGlvbiBscih0LGUscil7Y29uc3Qgbj1bXTtmb3IobGV0IGk9MDtpPHQubGVuZ3RoO2krKyl7Y29uc3Qgcz1vcih0W2ldLGUscik7bi5wdXNoKHMpO31yZXR1cm4gbn1mdW5jdGlvbiB1cih0LGUscixuKXtpZih0WzBdPHJbMF18fHRbMF0+clsyXSl7Y29uc3QgZT0uNSpuO2xldCBpPXRbMF0tclswXT5lPy1uOnJbMF0tdFswXT5lP246MDswPT09aSYmKGk9dFswXS1yWzJdPmU/LW46clsyXS10WzBdPmU/bjowKSx0WzBdKz1pO31KZShlLHQpO31mdW5jdGlvbiBjcih0LGUscixuKXtjb25zdCBpPU1hdGgucG93KDIsbi56KSpYZSxzPVtuLngqWGUsbi55KlhlXSxhPVtdO2Zvcihjb25zdCBuIG9mIHQpZm9yKGNvbnN0IHQgb2Ygbil7Y29uc3Qgbj1bdC54K3NbMF0sdC55K3NbMV1dO3VyKG4sZSxyLGkpLGEucHVzaChuKTt9cmV0dXJuIGF9ZnVuY3Rpb24gaHIodCxlLHIsbil7Y29uc3QgaT1NYXRoLnBvdygyLG4ueikqWGUscz1bbi54KlhlLG4ueSpYZV0sYT1bXTtmb3IoY29uc3QgciBvZiB0KXtjb25zdCB0PVtdO2Zvcihjb25zdCBuIG9mIHIpe2NvbnN0IHI9W24ueCtzWzBdLG4ueStzWzFdXTtKZShlLHIpLHQucHVzaChyKTt9YS5wdXNoKHQpO31pZihlWzJdLWVbMF08PWkvMil7KG89ZSlbMF09b1sxXT0xLzAsb1syXT1vWzNdPS0xLzA7Zm9yKGNvbnN0IHQgb2YgYSlmb3IoY29uc3QgbiBvZiB0KXVyKG4sZSxyLGkpO312YXIgbztyZXR1cm4gYX1jbGFzcyBwcntjb25zdHJ1Y3Rvcih0LGUpe3RoaXMudHlwZT1odCx0aGlzLmdlb2pzb249dCx0aGlzLmdlb21ldHJpZXM9ZTt9c3RhdGljIHBhcnNlKHQsZSl7aWYoMiE9PXQubGVuZ3RoKXJldHVybiBlLmVycm9yKGAnd2l0aGluJyBleHByZXNzaW9uIHJlcXVpcmVzIGV4YWN0bHkgb25lIGFyZ3VtZW50LCBidXQgZm91bmQgJHt0Lmxlbmd0aC0xfSBpbnN0ZWFkLmApO2lmKHJlKHRbMV0pKXtjb25zdCBlPXRbMV07aWYoXCJGZWF0dXJlQ29sbGVjdGlvblwiPT09ZS50eXBlKXtjb25zdCB0PVtdO2Zvcihjb25zdCByIG9mIGUuZmVhdHVyZXMpe2NvbnN0e3R5cGU6ZSxjb29yZGluYXRlczpufT1yLmdlb21ldHJ5O1wiUG9seWdvblwiPT09ZSYmdC5wdXNoKG4pLFwiTXVsdGlQb2x5Z29uXCI9PT1lJiZ0LnB1c2goLi4ubik7fWlmKHQubGVuZ3RoKXJldHVybiBuZXcgcHIoZSx7dHlwZTpcIk11bHRpUG9seWdvblwiLGNvb3JkaW5hdGVzOnR9KX1lbHNlIGlmKFwiRmVhdHVyZVwiPT09ZS50eXBlKXtjb25zdCB0PWUuZ2VvbWV0cnkudHlwZTtpZihcIlBvbHlnb25cIj09PXR8fFwiTXVsdGlQb2x5Z29uXCI9PT10KXJldHVybiBuZXcgcHIoZSxlLmdlb21ldHJ5KX1lbHNlIGlmKFwiUG9seWdvblwiPT09ZS50eXBlfHxcIk11bHRpUG9seWdvblwiPT09ZS50eXBlKXJldHVybiBuZXcgcHIoZSxlKX1yZXR1cm4gZS5lcnJvcihcIid3aXRoaW4nIGV4cHJlc3Npb24gcmVxdWlyZXMgdmFsaWQgZ2VvanNvbiBvYmplY3QgdGhhdCBjb250YWlucyBwb2x5Z29uIGdlb21ldHJ5IHR5cGUuXCIpfWV2YWx1YXRlKHQpe2lmKG51bGwhPXQuZ2VvbWV0cnkoKSYmbnVsbCE9dC5jYW5vbmljYWxJRCgpKXtpZihcIlBvaW50XCI9PT10Lmdlb21ldHJ5VHlwZSgpKXJldHVybiBmdW5jdGlvbih0LGUpe2NvbnN0IHI9WzEvMCwxLzAsLTEvMCwtMS8wXSxuPVsxLzAsMS8wLC0xLzAsLTEvMF0saT10LmNhbm9uaWNhbElEKCk7aWYoXCJQb2x5Z29uXCI9PT1lLnR5cGUpe2NvbnN0IHM9b3IoZS5jb29yZGluYXRlcyxuLGkpLGE9Y3IodC5nZW9tZXRyeSgpLHIsbixpKTtpZighV2UocixuKSlyZXR1cm4gITE7Zm9yKGNvbnN0IHQgb2YgYSlpZighcnIodCxzKSlyZXR1cm4gITF9aWYoXCJNdWx0aVBvbHlnb25cIj09PWUudHlwZSl7Y29uc3Qgcz1scihlLmNvb3JkaW5hdGVzLG4saSksYT1jcih0Lmdlb21ldHJ5KCkscixuLGkpO2lmKCFXZShyLG4pKXJldHVybiAhMTtmb3IoY29uc3QgdCBvZiBhKWlmKCFucih0LHMpKXJldHVybiAhMX1yZXR1cm4gITB9KHQsdGhpcy5nZW9tZXRyaWVzKTtpZihcIkxpbmVTdHJpbmdcIj09PXQuZ2VvbWV0cnlUeXBlKCkpcmV0dXJuIGZ1bmN0aW9uKHQsZSl7Y29uc3Qgcj1bMS8wLDEvMCwtMS8wLC0xLzBdLG49WzEvMCwxLzAsLTEvMCwtMS8wXSxpPXQuY2Fub25pY2FsSUQoKTtpZihcIlBvbHlnb25cIj09PWUudHlwZSl7Y29uc3Qgcz1vcihlLmNvb3JkaW5hdGVzLG4saSksYT1ocih0Lmdlb21ldHJ5KCkscixuLGkpO2lmKCFXZShyLG4pKXJldHVybiAhMTtmb3IoY29uc3QgdCBvZiBhKWlmKCFpcih0LHMpKXJldHVybiAhMX1pZihcIk11bHRpUG9seWdvblwiPT09ZS50eXBlKXtjb25zdCBzPWxyKGUuY29vcmRpbmF0ZXMsbixpKSxhPWhyKHQuZ2VvbWV0cnkoKSxyLG4saSk7aWYoIVdlKHIsbikpcmV0dXJuICExO2Zvcihjb25zdCB0IG9mIGEpaWYoIXNyKHQscykpcmV0dXJuICExfXJldHVybiAhMH0odCx0aGlzLmdlb21ldHJpZXMpfXJldHVybiAhMX1lYWNoQ2hpbGQoKXt9b3V0cHV0RGVmaW5lZCgpe3JldHVybiAhMH19bGV0IGZyPWNsYXNze2NvbnN0cnVjdG9yKHQ9W10sZT0oKHQsZSk9PnQ8ZT8tMTp0PmU/MTowKSl7aWYodGhpcy5kYXRhPXQsdGhpcy5sZW5ndGg9dGhpcy5kYXRhLmxlbmd0aCx0aGlzLmNvbXBhcmU9ZSx0aGlzLmxlbmd0aD4wKWZvcihsZXQgdD0odGhpcy5sZW5ndGg+PjEpLTE7dD49MDt0LS0pdGhpcy5fZG93bih0KTt9cHVzaCh0KXt0aGlzLmRhdGEucHVzaCh0KSx0aGlzLl91cCh0aGlzLmxlbmd0aCsrKTt9cG9wKCl7aWYoMD09PXRoaXMubGVuZ3RoKXJldHVybjtjb25zdCB0PXRoaXMuZGF0YVswXSxlPXRoaXMuZGF0YS5wb3AoKTtyZXR1cm4gLS10aGlzLmxlbmd0aD4wJiYodGhpcy5kYXRhWzBdPWUsdGhpcy5fZG93bigwKSksdH1wZWVrKCl7cmV0dXJuIHRoaXMuZGF0YVswXX1fdXAodCl7Y29uc3R7ZGF0YTplLGNvbXBhcmU6cn09dGhpcyxuPWVbdF07Zm9yKDt0PjA7KXtjb25zdCBpPXQtMT4+MSxzPWVbaV07aWYocihuLHMpPj0wKWJyZWFrO2VbdF09cyx0PWk7fWVbdF09bjt9X2Rvd24odCl7Y29uc3R7ZGF0YTplLGNvbXBhcmU6cn09dGhpcyxuPXRoaXMubGVuZ3RoPj4xLGk9ZVt0XTtmb3IoO3Q8bjspe2xldCBuPTErKHQ8PDEpO2NvbnN0IHM9bisxO2lmKHM8dGhpcy5sZW5ndGgmJnIoZVtzXSxlW25dKTwwJiYobj1zKSxyKGVbbl0saSk+PTApYnJlYWs7ZVt0XT1lW25dLHQ9bjt9ZVt0XT1pO319O2Z1bmN0aW9uIGRyKHQsZSxyLG4saSl7eXIodCxlLHIsbnx8dC5sZW5ndGgtMSxpfHxncik7fWZ1bmN0aW9uIHlyKHQsZSxyLG4saSl7Zm9yKDtuPnI7KXtpZihuLXI+NjAwKXt2YXIgcz1uLXIrMSxhPWUtcisxLG89TWF0aC5sb2cocyksbD0uNSpNYXRoLmV4cCgyKm8vMyksdT0uNSpNYXRoLnNxcnQobypsKihzLWwpL3MpKihhLXMvMjwwPy0xOjEpO3lyKHQsZSxNYXRoLm1heChyLE1hdGguZmxvb3IoZS1hKmwvcyt1KSksTWF0aC5taW4obixNYXRoLmZsb29yKGUrKHMtYSkqbC9zK3UpKSxpKTt9dmFyIGM9dFtlXSxoPXIscD1uO2Zvcihtcih0LHIsZSksaSh0W25dLGMpPjAmJm1yKHQscixuKTtoPHA7KXtmb3IobXIodCxoLHApLGgrKyxwLS07aSh0W2hdLGMpPDA7KWgrKztmb3IoO2kodFtwXSxjKT4wOylwLS07fTA9PT1pKHRbcl0sYyk/bXIodCxyLHApOm1yKHQsKytwLG4pLHA8PWUmJihyPXArMSksZTw9cCYmKG49cC0xKTt9fWZ1bmN0aW9uIG1yKHQsZSxyKXt2YXIgbj10W2VdO3RbZV09dFtyXSx0W3JdPW47fWZ1bmN0aW9uIGdyKHQsZSl7cmV0dXJuIHQ8ZT8tMTp0PmU/MTowfWZ1bmN0aW9uIHhyKHQsZSl7aWYodC5sZW5ndGg8PTEpcmV0dXJuIFt0XTtjb25zdCByPVtdO2xldCBuLGk7Zm9yKGNvbnN0IGUgb2YgdCl7Y29uc3QgdD1icihlKTswIT09dCYmKGUuYXJlYT1NYXRoLmFicyh0KSx2b2lkIDA9PT1pJiYoaT10PDApLGk9PT10PDA/KG4mJnIucHVzaChuKSxuPVtlXSk6bi5wdXNoKGUpKTt9aWYobiYmci5wdXNoKG4pLGU+MSlmb3IobGV0IHQ9MDt0PHIubGVuZ3RoO3QrKylyW3RdLmxlbmd0aDw9ZXx8KGRyKHJbdF0sZSwxLHJbdF0ubGVuZ3RoLTEsdnIpLHJbdF09clt0XS5zbGljZSgwLGUpKTtyZXR1cm4gcn1mdW5jdGlvbiB2cih0LGUpe3JldHVybiBlLmFyZWEtdC5hcmVhfWZ1bmN0aW9uIGJyKHQpe2xldCBlPTA7Zm9yKGxldCByLG4saT0wLHM9dC5sZW5ndGgsYT1zLTE7aTxzO2E9aSsrKXI9dFtpXSxuPXRbYV0sZSs9KG4ueC1yLngpKihyLnkrbi55KTtyZXR1cm4gZX1jb25zdCB3cj0xLzI5OC4yNTcyMjM1NjMsX3I9d3IqKDItd3IpLEFyPU1hdGguUEkvMTgwO2NsYXNzIFNye2NvbnN0cnVjdG9yKHQpe2NvbnN0IGU9NjM3OC4xMzcqQXIqMWUzLHI9TWF0aC5jb3ModCpBciksbj0xLygxLV9yKigxLXIqcikpLGk9TWF0aC5zcXJ0KG4pO3RoaXMua3g9ZSppKnIsdGhpcy5reT1lKmkqbiooMS1fcik7fWRpc3RhbmNlKHQsZSl7Y29uc3Qgcj10aGlzLndyYXAodFswXS1lWzBdKSp0aGlzLmt4LG49KHRbMV0tZVsxXSkqdGhpcy5reTtyZXR1cm4gTWF0aC5zcXJ0KHIqcituKm4pfXBvaW50T25MaW5lKHQsZSl7bGV0IHIsbixpLHMsYT0xLzA7Zm9yKGxldCBvPTA7bzx0Lmxlbmd0aC0xO28rKyl7bGV0IGw9dFtvXVswXSx1PXRbb11bMV0sYz10aGlzLndyYXAodFtvKzFdWzBdLWwpKnRoaXMua3gsaD0odFtvKzFdWzFdLXUpKnRoaXMua3kscD0wOzA9PT1jJiYwPT09aHx8KHA9KHRoaXMud3JhcChlWzBdLWwpKnRoaXMua3gqYysoZVsxXS11KSp0aGlzLmt5KmgpLyhjKmMraCpoKSxwPjE/KGw9dFtvKzFdWzBdLHU9dFtvKzFdWzFdKTpwPjAmJihsKz1jL3RoaXMua3gqcCx1Kz1oL3RoaXMua3kqcCkpLGM9dGhpcy53cmFwKGVbMF0tbCkqdGhpcy5reCxoPShlWzFdLXUpKnRoaXMua3k7Y29uc3QgZj1jKmMraCpoO2Y8YSYmKGE9ZixyPWwsbj11LGk9byxzPXApO31yZXR1cm4ge3BvaW50OltyLG5dLGluZGV4OmksdDpNYXRoLm1heCgwLE1hdGgubWluKDEscykpfX13cmFwKHQpe2Zvcig7dDwtMTgwOyl0Kz0zNjA7Zm9yKDt0PjE4MDspdC09MzYwO3JldHVybiB0fX1mdW5jdGlvbiBrcih0LGUpe3JldHVybiBlWzBdLXRbMF19ZnVuY3Rpb24gTXIodCl7cmV0dXJuIHRbMV0tdFswXSsxfWZ1bmN0aW9uIElyKHQsZSl7cmV0dXJuIHRbMV0+PXRbMF0mJnRbMV08ZX1mdW5jdGlvbiB6cih0LGUpe2lmKHRbMF0+dFsxXSlyZXR1cm4gW251bGwsbnVsbF07Y29uc3Qgcj1Ncih0KTtpZihlKXtpZigyPT09cilyZXR1cm4gW3QsbnVsbF07Y29uc3QgZT1NYXRoLmZsb29yKHIvMik7cmV0dXJuIFtbdFswXSx0WzBdK2VdLFt0WzBdK2UsdFsxXV1dfWlmKDE9PT1yKXJldHVybiBbdCxudWxsXTtjb25zdCBuPU1hdGguZmxvb3Ioci8yKS0xO3JldHVybiBbW3RbMF0sdFswXStuXSxbdFswXStuKzEsdFsxXV1dfWZ1bmN0aW9uIFByKHQsZSl7aWYoIUlyKGUsdC5sZW5ndGgpKXJldHVybiBbMS8wLDEvMCwtMS8wLC0xLzBdO2NvbnN0IHI9WzEvMCwxLzAsLTEvMCwtMS8wXTtmb3IobGV0IG49ZVswXTtuPD1lWzFdOysrbilKZShyLHRbbl0pO3JldHVybiByfWZ1bmN0aW9uIENyKHQpe2NvbnN0IGU9WzEvMCwxLzAsLTEvMCwtMS8wXTtmb3IoY29uc3QgciBvZiB0KWZvcihjb25zdCB0IG9mIHIpSmUoZSx0KTtyZXR1cm4gZX1mdW5jdGlvbiBCcih0KXtyZXR1cm4gdFswXSE9PS0xLzAmJnRbMV0hPT0tMS8wJiZ0WzJdIT09MS8wJiZ0WzNdIT09MS8wfWZ1bmN0aW9uIFZyKHQsZSxyKXtpZighQnIodCl8fCFCcihlKSlyZXR1cm4gTmFOO2xldCBuPTAsaT0wO3JldHVybiB0WzJdPGVbMF0mJihuPWVbMF0tdFsyXSksdFswXT5lWzJdJiYobj10WzBdLWVbMl0pLHRbMV0+ZVszXSYmKGk9dFsxXS1lWzNdKSx0WzNdPGVbMV0mJihpPWVbMV0tdFszXSksci5kaXN0YW5jZShbMCwwXSxbbixpXSl9ZnVuY3Rpb24gRXIodCxlLHIpe2NvbnN0IG49ci5wb2ludE9uTGluZShlLHQpO3JldHVybiByLmRpc3RhbmNlKHQsbi5wb2ludCl9ZnVuY3Rpb24gRnIodCxlLHIsbixpKXtjb25zdCBzPU1hdGgubWluKEVyKHQsW3Isbl0saSksRXIoZSxbcixuXSxpKSksYT1NYXRoLm1pbihFcihyLFt0LGVdLGkpLEVyKG4sW3QsZV0saSkpO3JldHVybiBNYXRoLm1pbihzLGEpfWZ1bmN0aW9uIFRyKHQsZSxyLG4saSl7aWYoIUlyKGUsdC5sZW5ndGgpfHwhSXIobixyLmxlbmd0aCkpcmV0dXJuIDEvMDtsZXQgcz0xLzA7Zm9yKGxldCBhPWVbMF07YTxlWzFdOysrYSl7Y29uc3QgZT10W2FdLG89dFthKzFdO2ZvcihsZXQgdD1uWzBdO3Q8blsxXTsrK3Qpe2NvbnN0IG49clt0XSxhPXJbdCsxXTtpZih0cihlLG8sbixhKSlyZXR1cm4gMDtzPU1hdGgubWluKHMsRnIoZSxvLG4sYSxpKSk7fX1yZXR1cm4gc31mdW5jdGlvbiAkcih0LGUscixuLGkpe2lmKCFJcihlLHQubGVuZ3RoKXx8IUlyKG4sci5sZW5ndGgpKXJldHVybiBOYU47bGV0IHM9MS8wO2ZvcihsZXQgYT1lWzBdO2E8PWVbMV07KythKWZvcihsZXQgZT1uWzBdO2U8PW5bMV07KytlKWlmKHM9TWF0aC5taW4ocyxpLmRpc3RhbmNlKHRbYV0scltlXSkpLDA9PT1zKXJldHVybiBzO3JldHVybiBzfWZ1bmN0aW9uIExyKHQsZSxyKXtpZihycih0LGUsITApKXJldHVybiAwO2xldCBuPTEvMDtmb3IoY29uc3QgaSBvZiBlKXtjb25zdCBlPWlbMF0scz1pW2kubGVuZ3RoLTFdO2lmKGUhPT1zJiYobj1NYXRoLm1pbihuLEVyKHQsW3MsZV0scikpLDA9PT1uKSlyZXR1cm4gbjtjb25zdCBhPXIucG9pbnRPbkxpbmUoaSx0KTtpZihuPU1hdGgubWluKG4sci5kaXN0YW5jZSh0LGEucG9pbnQpKSwwPT09bilyZXR1cm4gbn1yZXR1cm4gbn1mdW5jdGlvbiBEcih0LGUscixuKXtpZighSXIoZSx0Lmxlbmd0aCkpcmV0dXJuIE5hTjtmb3IobGV0IG49ZVswXTtuPD1lWzFdOysrbilpZihycih0W25dLHIsITApKXJldHVybiAwO2xldCBpPTEvMDtmb3IobGV0IHM9ZVswXTtzPGVbMV07KytzKXtjb25zdCBlPXRbc10sYT10W3MrMV07Zm9yKGNvbnN0IHQgb2Ygcilmb3IobGV0IHI9MCxzPXQubGVuZ3RoLG89cy0xO3I8cztvPXIrKyl7Y29uc3Qgcz10W29dLGw9dFtyXTtpZih0cihlLGEscyxsKSlyZXR1cm4gMDtpPU1hdGgubWluKGksRnIoZSxhLHMsbCxuKSk7fX1yZXR1cm4gaX1mdW5jdGlvbiBPcih0LGUpe2Zvcihjb25zdCByIG9mIHQpZm9yKGNvbnN0IHQgb2YgcilpZihycih0LGUsITApKXJldHVybiAhMDtyZXR1cm4gITF9ZnVuY3Rpb24ganIodCxlLHIsbj0xLzApe2NvbnN0IGk9Q3IodCkscz1DcihlKTtpZihuIT09MS8wJiZWcihpLHMscik+PW4pcmV0dXJuIG47aWYoV2UoaSxzKSl7aWYoT3IodCxlKSlyZXR1cm4gMH1lbHNlIGlmKE9yKGUsdCkpcmV0dXJuIDA7bGV0IGE9MS8wO2Zvcihjb25zdCBuIG9mIHQpZm9yKGxldCB0PTAsaT1uLmxlbmd0aCxzPWktMTt0PGk7cz10Kyspe2NvbnN0IGk9bltzXSxvPW5bdF07Zm9yKGNvbnN0IHQgb2YgZSlmb3IobGV0IGU9MCxuPXQubGVuZ3RoLHM9bi0xO2U8bjtzPWUrKyl7Y29uc3Qgbj10W3NdLGw9dFtlXTtpZih0cihpLG8sbixsKSlyZXR1cm4gMDthPU1hdGgubWluKGEsRnIoaSxvLG4sbCxyKSk7fX1yZXR1cm4gYX1mdW5jdGlvbiBScih0LGUscixuLGkscyl7aWYoIXMpcmV0dXJuO2NvbnN0IGE9VnIoUHIobixzKSxpLHIpO2E8ZSYmdC5wdXNoKFthLHMsWzAsMF1dKTt9ZnVuY3Rpb24gVXIodCxlLHIsbixpLHMsYSl7aWYoIXN8fCFhKXJldHVybjtjb25zdCBvPVZyKFByKG4scyksUHIoaSxhKSxyKTtvPGUmJnQucHVzaChbbyxzLGFdKTt9ZnVuY3Rpb24gcXIodCxlLHIsbixpPTEvMCl7bGV0IHM9TWF0aC5taW4obi5kaXN0YW5jZSh0WzBdLHJbMF1bMF0pLGkpO2lmKDA9PT1zKXJldHVybiBzO2NvbnN0IGE9bmV3IGZyKFtbMCxbMCx0Lmxlbmd0aC0xXSxbMCwwXV1dLGtyKSxvPUNyKHIpO2Zvcig7YS5sZW5ndGg+MDspe2NvbnN0IGk9YS5wb3AoKTtpZihpWzBdPj1zKWNvbnRpbnVlO2NvbnN0IGw9aVsxXSx1PWU/NTA6MTAwO2lmKE1yKGwpPD11KXtpZighSXIobCx0Lmxlbmd0aCkpcmV0dXJuIE5hTjtpZihlKXtjb25zdCBlPURyKHQsbCxyLG4pO2lmKGlzTmFOKGUpfHwwPT09ZSlyZXR1cm4gZTtzPU1hdGgubWluKHMsZSk7fWVsc2UgZm9yKGxldCBlPWxbMF07ZTw9bFsxXTsrK2Upe2NvbnN0IGk9THIodFtlXSxyLG4pO2lmKHM9TWF0aC5taW4ocyxpKSwwPT09cylyZXR1cm4gMH19ZWxzZSB7Y29uc3Qgcj16cihsLGUpO1JyKGEscyxuLHQsbyxyWzBdKSxScihhLHMsbix0LG8sclsxXSk7fX1yZXR1cm4gc31mdW5jdGlvbiBOcih0LGUscixuLGkscz0xLzApe2xldCBhPU1hdGgubWluKHMsaS5kaXN0YW5jZSh0WzBdLHJbMF0pKTtpZigwPT09YSlyZXR1cm4gYTtjb25zdCBvPW5ldyBmcihbWzAsWzAsdC5sZW5ndGgtMV0sWzAsci5sZW5ndGgtMV1dXSxrcik7Zm9yKDtvLmxlbmd0aD4wOyl7Y29uc3Qgcz1vLnBvcCgpO2lmKHNbMF0+PWEpY29udGludWU7Y29uc3QgbD1zWzFdLHU9c1syXSxjPWU/NTA6MTAwLGg9bj81MDoxMDA7aWYoTXIobCk8PWMmJk1yKHUpPD1oKXtpZighSXIobCx0Lmxlbmd0aCkmJklyKHUsci5sZW5ndGgpKXJldHVybiBOYU47bGV0IHM7aWYoZSYmbilzPVRyKHQsbCxyLHUsaSksYT1NYXRoLm1pbihhLHMpO2Vsc2UgaWYoZSYmIW4pe2NvbnN0IGU9dC5zbGljZShsWzBdLGxbMV0rMSk7Zm9yKGxldCB0PXVbMF07dDw9dVsxXTsrK3QpaWYocz1FcihyW3RdLGUsaSksYT1NYXRoLm1pbihhLHMpLDA9PT1hKXJldHVybiBhfWVsc2UgaWYoIWUmJm4pe2NvbnN0IGU9ci5zbGljZSh1WzBdLHVbMV0rMSk7Zm9yKGxldCByPWxbMF07cjw9bFsxXTsrK3IpaWYocz1Fcih0W3JdLGUsaSksYT1NYXRoLm1pbihhLHMpLDA9PT1hKXJldHVybiBhfWVsc2Ugcz0kcih0LGwscix1LGkpLGE9TWF0aC5taW4oYSxzKTt9ZWxzZSB7Y29uc3Qgcz16cihsLGUpLGM9enIodSxuKTtVcihvLGEsaSx0LHIsc1swXSxjWzBdKSxVcihvLGEsaSx0LHIsc1swXSxjWzFdKSxVcihvLGEsaSx0LHIsc1sxXSxjWzBdKSxVcihvLGEsaSx0LHIsc1sxXSxjWzFdKTt9fXJldHVybiBhfWZ1bmN0aW9uIFpyKHQpe3JldHVybiBcIk11bHRpUG9seWdvblwiPT09dC50eXBlP3QuY29vcmRpbmF0ZXMubWFwKCh0PT4oe3R5cGU6XCJQb2x5Z29uXCIsY29vcmRpbmF0ZXM6dH0pKSk6XCJNdWx0aUxpbmVTdHJpbmdcIj09PXQudHlwZT90LmNvb3JkaW5hdGVzLm1hcCgodD0+KHt0eXBlOlwiTGluZVN0cmluZ1wiLGNvb3JkaW5hdGVzOnR9KSkpOlwiTXVsdGlQb2ludFwiPT09dC50eXBlP3QuY29vcmRpbmF0ZXMubWFwKCh0PT4oe3R5cGU6XCJQb2ludFwiLGNvb3JkaW5hdGVzOnR9KSkpOlt0XX1jbGFzcyBHcntjb25zdHJ1Y3Rvcih0LGUpe3RoaXMudHlwZT11dCx0aGlzLmdlb2pzb249dCx0aGlzLmdlb21ldHJpZXM9ZTt9c3RhdGljIHBhcnNlKHQsZSl7aWYoMiE9PXQubGVuZ3RoKXJldHVybiBlLmVycm9yKGAnZGlzdGFuY2UnIGV4cHJlc3Npb24gcmVxdWlyZXMgZXhhY3RseSBvbmUgYXJndW1lbnQsIGJ1dCBmb3VuZCAke3QubGVuZ3RoLTF9IGluc3RlYWQuYCk7aWYocmUodFsxXSkpe2NvbnN0IGU9dFsxXTtpZihcIkZlYXR1cmVDb2xsZWN0aW9uXCI9PT1lLnR5cGUpcmV0dXJuIG5ldyBHcihlLGUuZmVhdHVyZXMubWFwKCh0PT5acih0Lmdlb21ldHJ5KSkpLmZsYXQoKSk7aWYoXCJGZWF0dXJlXCI9PT1lLnR5cGUpcmV0dXJuIG5ldyBHcihlLFpyKGUuZ2VvbWV0cnkpKTtpZihcInR5cGVcImluIGUmJlwiY29vcmRpbmF0ZXNcImluIGUpcmV0dXJuIG5ldyBHcihlLFpyKGUpKX1yZXR1cm4gZS5lcnJvcihcIidkaXN0YW5jZScgZXhwcmVzc2lvbiByZXF1aXJlcyB2YWxpZCBnZW9qc29uIG9iamVjdCB0aGF0IGNvbnRhaW5zIHBvbHlnb24gZ2VvbWV0cnkgdHlwZS5cIil9ZXZhbHVhdGUodCl7aWYobnVsbCE9dC5nZW9tZXRyeSgpJiZudWxsIT10LmNhbm9uaWNhbElEKCkpe2lmKFwiUG9pbnRcIj09PXQuZ2VvbWV0cnlUeXBlKCkpcmV0dXJuIGZ1bmN0aW9uKHQsZSl7Y29uc3Qgcj10Lmdlb21ldHJ5KCksbj1yLmZsYXQoKS5tYXAoKGU9PlllKFtlLngsZS55XSx0LmNhbm9uaWNhbCkpKTtpZigwPT09ci5sZW5ndGgpcmV0dXJuIE5hTjtjb25zdCBpPW5ldyBTcihuWzBdWzFdKTtsZXQgcz0xLzA7Zm9yKGNvbnN0IHQgb2YgZSl7c3dpdGNoKHQudHlwZSl7Y2FzZVwiUG9pbnRcIjpzPU1hdGgubWluKHMsTnIobiwhMSxbdC5jb29yZGluYXRlc10sITEsaSxzKSk7YnJlYWs7Y2FzZVwiTGluZVN0cmluZ1wiOnM9TWF0aC5taW4ocyxOcihuLCExLHQuY29vcmRpbmF0ZXMsITAsaSxzKSk7YnJlYWs7Y2FzZVwiUG9seWdvblwiOnM9TWF0aC5taW4ocyxxcihuLCExLHQuY29vcmRpbmF0ZXMsaSxzKSk7fWlmKDA9PT1zKXJldHVybiBzfXJldHVybiBzfSh0LHRoaXMuZ2VvbWV0cmllcyk7aWYoXCJMaW5lU3RyaW5nXCI9PT10Lmdlb21ldHJ5VHlwZSgpKXJldHVybiBmdW5jdGlvbih0LGUpe2NvbnN0IHI9dC5nZW9tZXRyeSgpLG49ci5mbGF0KCkubWFwKChlPT5ZZShbZS54LGUueV0sdC5jYW5vbmljYWwpKSk7aWYoMD09PXIubGVuZ3RoKXJldHVybiBOYU47Y29uc3QgaT1uZXcgU3IoblswXVsxXSk7bGV0IHM9MS8wO2Zvcihjb25zdCB0IG9mIGUpe3N3aXRjaCh0LnR5cGUpe2Nhc2VcIlBvaW50XCI6cz1NYXRoLm1pbihzLE5yKG4sITAsW3QuY29vcmRpbmF0ZXNdLCExLGkscykpO2JyZWFrO2Nhc2VcIkxpbmVTdHJpbmdcIjpzPU1hdGgubWluKHMsTnIobiwhMCx0LmNvb3JkaW5hdGVzLCEwLGkscykpO2JyZWFrO2Nhc2VcIlBvbHlnb25cIjpzPU1hdGgubWluKHMscXIobiwhMCx0LmNvb3JkaW5hdGVzLGkscykpO31pZigwPT09cylyZXR1cm4gc31yZXR1cm4gc30odCx0aGlzLmdlb21ldHJpZXMpO2lmKFwiUG9seWdvblwiPT09dC5nZW9tZXRyeVR5cGUoKSlyZXR1cm4gZnVuY3Rpb24odCxlKXtjb25zdCByPXQuZ2VvbWV0cnkoKTtpZigwPT09ci5sZW5ndGh8fDA9PT1yWzBdLmxlbmd0aClyZXR1cm4gTmFOO2NvbnN0IG49eHIociwwKS5tYXAoKGU9PmUubWFwKChlPT5lLm1hcCgoZT0+WWUoW2UueCxlLnldLHQuY2Fub25pY2FsKSkpKSkpKSxpPW5ldyBTcihuWzBdWzBdWzBdWzFdKTtsZXQgcz0xLzA7Zm9yKGNvbnN0IHQgb2YgZSlmb3IoY29uc3QgZSBvZiBuKXtzd2l0Y2godC50eXBlKXtjYXNlXCJQb2ludFwiOnM9TWF0aC5taW4ocyxxcihbdC5jb29yZGluYXRlc10sITEsZSxpLHMpKTticmVhaztjYXNlXCJMaW5lU3RyaW5nXCI6cz1NYXRoLm1pbihzLHFyKHQuY29vcmRpbmF0ZXMsITAsZSxpLHMpKTticmVhaztjYXNlXCJQb2x5Z29uXCI6cz1NYXRoLm1pbihzLGpyKGUsdC5jb29yZGluYXRlcyxpLHMpKTt9aWYoMD09PXMpcmV0dXJuIHN9cmV0dXJuIHN9KHQsdGhpcy5nZW9tZXRyaWVzKX1yZXR1cm4gTmFOfWVhY2hDaGlsZCgpe31vdXRwdXREZWZpbmVkKCl7cmV0dXJuICEwfX1jb25zdCBLcj17XCI9PVwiOkxlLFwiIT1cIjpEZSxcIj5cIjpqZSxcIjxcIjpPZSxcIj49XCI6VWUsXCI8PVwiOlJlLGFycmF5OmxlLGF0Om1lLGJvb2xlYW46bGUsY2FzZTpiZSxjb2FsZXNjZTpFZSxjb2xsYXRvcjpxZSxmb3JtYXQ6WmUsaW1hZ2U6R2UsaW46Z2UsXCJpbmRleC1vZlwiOnhlLGludGVycG9sYXRlOkJlLFwiaW50ZXJwb2xhdGUtaGNsXCI6QmUsXCJpbnRlcnBvbGF0ZS1sYWJcIjpCZSxsZW5ndGg6S2UsbGV0OmRlLGxpdGVyYWw6c2UsbWF0Y2g6dmUsbnVtYmVyOmxlLFwibnVtYmVyLWZvcm1hdFwiOk5lLG9iamVjdDpsZSxzbGljZTp3ZSxzdGVwOkFlLHN0cmluZzpsZSxcInRvLWJvb2xlYW5cIjpjZSxcInRvLWNvbG9yXCI6Y2UsXCJ0by1udW1iZXJcIjpjZSxcInRvLXN0cmluZ1wiOmNlLHZhcjp5ZSx3aXRoaW46cHIsZGlzdGFuY2U6R3J9O2NsYXNzIFhye2NvbnN0cnVjdG9yKHQsZSxyLG4pe3RoaXMubmFtZT10LHRoaXMudHlwZT1lLHRoaXMuX2V2YWx1YXRlPXIsdGhpcy5hcmdzPW47fWV2YWx1YXRlKHQpe3JldHVybiB0aGlzLl9ldmFsdWF0ZSh0LHRoaXMuYXJncyl9ZWFjaENoaWxkKHQpe3RoaXMuYXJncy5mb3JFYWNoKHQpO31vdXRwdXREZWZpbmVkKCl7cmV0dXJuICExfXN0YXRpYyBwYXJzZSh0LGUpe2NvbnN0IHI9dFswXSxuPVhyLmRlZmluaXRpb25zW3JdO2lmKCFuKXJldHVybiBlLmVycm9yKGBVbmtub3duIGV4cHJlc3Npb24gXCIke3J9XCIuIElmIHlvdSB3YW50ZWQgYSBsaXRlcmFsIGFycmF5LCB1c2UgW1wibGl0ZXJhbFwiLCBbLi4uXV0uYCwwKTtjb25zdCBpPUFycmF5LmlzQXJyYXkobik/blswXTpuLnR5cGUscz1BcnJheS5pc0FycmF5KG4pP1tbblsxXSxuWzJdXV06bi5vdmVybG9hZHMsYT1zLmZpbHRlcigoKFtlXSk9PiFBcnJheS5pc0FycmF5KGUpfHxlLmxlbmd0aD09PXQubGVuZ3RoLTEpKTtsZXQgbz1udWxsO2Zvcihjb25zdFtuLHNdb2YgYSl7bz1uZXcgZmUoZS5yZWdpc3RyeSxRcixlLnBhdGgsbnVsbCxlLnNjb3BlKTtjb25zdCBhPVtdO2xldCBsPSExO2ZvcihsZXQgZT0xO2U8dC5sZW5ndGg7ZSsrKXtjb25zdCByPXRbZV0saT1BcnJheS5pc0FycmF5KG4pP25bZS0xXTpuLnR5cGUscz1vLnBhcnNlKHIsMSthLmxlbmd0aCxpKTtpZighcyl7bD0hMDticmVha31hLnB1c2gocyk7fWlmKCFsKWlmKEFycmF5LmlzQXJyYXkobikmJm4ubGVuZ3RoIT09YS5sZW5ndGgpby5lcnJvcihgRXhwZWN0ZWQgJHtuLmxlbmd0aH0gYXJndW1lbnRzLCBidXQgZm91bmQgJHthLmxlbmd0aH0gaW5zdGVhZC5gKTtlbHNlIHtmb3IobGV0IHQ9MDt0PGEubGVuZ3RoO3QrKyl7Y29uc3QgZT1BcnJheS5pc0FycmF5KG4pP25bdF06bi50eXBlLHI9YVt0XTtvLmNvbmNhdCh0KzEpLmNoZWNrU3VidHlwZShlLHIudHlwZSk7fWlmKDA9PT1vLmVycm9ycy5sZW5ndGgpcmV0dXJuIG5ldyBYcihyLGkscyxhKX19aWYoMT09PWEubGVuZ3RoKWUuZXJyb3JzLnB1c2goLi4uby5lcnJvcnMpO2Vsc2Uge2NvbnN0IHI9KGEubGVuZ3RoP2E6cykubWFwKCgoW3RdKT0+e3JldHVybiBlPXQsQXJyYXkuaXNBcnJheShlKT9gKCR7ZS5tYXAod3QpLmpvaW4oXCIsIFwiKX0pYDpgKCR7d3QoZS50eXBlKX0uLi4pYDt2YXIgZTt9KSkuam9pbihcIiB8IFwiKSxuPVtdO2ZvcihsZXQgcj0xO3I8dC5sZW5ndGg7cisrKXtjb25zdCBpPWUucGFyc2UodFtyXSwxK24ubGVuZ3RoKTtpZighaSlyZXR1cm4gbnVsbDtuLnB1c2god3QoaS50eXBlKSk7fWUuZXJyb3IoYEV4cGVjdGVkIGFyZ3VtZW50cyBvZiB0eXBlICR7cn0sIGJ1dCBmb3VuZCAoJHtuLmpvaW4oXCIsIFwiKX0pIGluc3RlYWQuYCk7fXJldHVybiBudWxsfXN0YXRpYyByZWdpc3Rlcih0LGUpe1hyLmRlZmluaXRpb25zPWU7Zm9yKGNvbnN0IHIgaW4gZSl0W3JdPVhyO319ZnVuY3Rpb24gSHIodCxbZSxyLG4saV0pe2U9ZS5ldmFsdWF0ZSh0KSxyPXIuZXZhbHVhdGUodCksbj1uLmV2YWx1YXRlKHQpO2NvbnN0IHM9aT9pLmV2YWx1YXRlKHQpOjEsYT1lZShlLHIsbixzKTtpZihhKXRocm93IG5ldyBhZShhKTtyZXR1cm4gbmV3IEt0KGUvMjU1LHIvMjU1LG4vMjU1LHMsITEpfWZ1bmN0aW9uIFlyKHQsZSl7cmV0dXJuIHQgaW4gZX1mdW5jdGlvbiBKcih0LGUpe2NvbnN0IHI9ZVt0XTtyZXR1cm4gdm9pZCAwPT09cj9udWxsOnJ9ZnVuY3Rpb24gV3IodCl7cmV0dXJuIHt0eXBlOnR9fWZ1bmN0aW9uIFFyKHQpe2lmKHQgaW5zdGFuY2VvZiB5ZSlyZXR1cm4gUXIodC5ib3VuZEV4cHJlc3Npb24pO2lmKHQgaW5zdGFuY2VvZiBYciYmXCJlcnJvclwiPT09dC5uYW1lKXJldHVybiAhMTtpZih0IGluc3RhbmNlb2YgcWUpcmV0dXJuICExO2lmKHQgaW5zdGFuY2VvZiBwcilyZXR1cm4gITE7aWYodCBpbnN0YW5jZW9mIEdyKXJldHVybiAhMTtjb25zdCBlPXQgaW5zdGFuY2VvZiBjZXx8dCBpbnN0YW5jZW9mIGxlO2xldCByPSEwO3JldHVybiB0LmVhY2hDaGlsZCgodD0+e3I9ZT9yJiZRcih0KTpyJiZ0IGluc3RhbmNlb2Ygc2U7fSkpLCEhciYmdG4odCkmJnJuKHQsW1wiem9vbVwiLFwiaGVhdG1hcC1kZW5zaXR5XCIsXCJsaW5lLXByb2dyZXNzXCIsXCJhY2N1bXVsYXRlZFwiLFwiaXMtc3VwcG9ydGVkLXNjcmlwdFwiXSl9ZnVuY3Rpb24gdG4odCl7aWYodCBpbnN0YW5jZW9mIFhyKXtpZihcImdldFwiPT09dC5uYW1lJiYxPT09dC5hcmdzLmxlbmd0aClyZXR1cm4gITE7aWYoXCJmZWF0dXJlLXN0YXRlXCI9PT10Lm5hbWUpcmV0dXJuICExO2lmKFwiaGFzXCI9PT10Lm5hbWUmJjE9PT10LmFyZ3MubGVuZ3RoKXJldHVybiAhMTtpZihcInByb3BlcnRpZXNcIj09PXQubmFtZXx8XCJnZW9tZXRyeS10eXBlXCI9PT10Lm5hbWV8fFwiaWRcIj09PXQubmFtZSlyZXR1cm4gITE7aWYoL15maWx0ZXItLy50ZXN0KHQubmFtZSkpcmV0dXJuICExfWlmKHQgaW5zdGFuY2VvZiBwcilyZXR1cm4gITE7aWYodCBpbnN0YW5jZW9mIEdyKXJldHVybiAhMTtsZXQgZT0hMDtyZXR1cm4gdC5lYWNoQ2hpbGQoKHQ9PntlJiYhdG4odCkmJihlPSExKTt9KSksZX1mdW5jdGlvbiBlbih0KXtpZih0IGluc3RhbmNlb2YgWHImJlwiZmVhdHVyZS1zdGF0ZVwiPT09dC5uYW1lKXJldHVybiAhMTtsZXQgZT0hMDtyZXR1cm4gdC5lYWNoQ2hpbGQoKHQ9PntlJiYhZW4odCkmJihlPSExKTt9KSksZX1mdW5jdGlvbiBybih0LGUpe2lmKHQgaW5zdGFuY2VvZiBYciYmZS5pbmRleE9mKHQubmFtZSk+PTApcmV0dXJuICExO2xldCByPSEwO3JldHVybiB0LmVhY2hDaGlsZCgodD0+e3ImJiFybih0LGUpJiYocj0hMSk7fSkpLHJ9ZnVuY3Rpb24gbm4odCl7cmV0dXJuIHtyZXN1bHQ6XCJzdWNjZXNzXCIsdmFsdWU6dH19ZnVuY3Rpb24gc24odCl7cmV0dXJuIHtyZXN1bHQ6XCJlcnJvclwiLHZhbHVlOnR9fWZ1bmN0aW9uIGFuKHQpe3JldHVybiBcImRhdGEtZHJpdmVuXCI9PT10W1wicHJvcGVydHktdHlwZVwiXXx8XCJjcm9zcy1mYWRlZC1kYXRhLWRyaXZlblwiPT09dFtcInByb3BlcnR5LXR5cGVcIl19ZnVuY3Rpb24gb24odCl7cmV0dXJuICEhdC5leHByZXNzaW9uJiZ0LmV4cHJlc3Npb24ucGFyYW1ldGVycy5pbmRleE9mKFwiem9vbVwiKT4tMX1mdW5jdGlvbiBsbih0KXtyZXR1cm4gISF0LmV4cHJlc3Npb24mJnQuZXhwcmVzc2lvbi5pbnRlcnBvbGF0ZWR9ZnVuY3Rpb24gdW4odCl7cmV0dXJuIHQgaW5zdGFuY2VvZiBOdW1iZXI/XCJudW1iZXJcIjp0IGluc3RhbmNlb2YgU3RyaW5nP1wic3RyaW5nXCI6dCBpbnN0YW5jZW9mIEJvb2xlYW4/XCJib29sZWFuXCI6QXJyYXkuaXNBcnJheSh0KT9cImFycmF5XCI6bnVsbD09PXQ/XCJudWxsXCI6dHlwZW9mIHR9ZnVuY3Rpb24gY24odCl7cmV0dXJuIFwib2JqZWN0XCI9PXR5cGVvZiB0JiZudWxsIT09dCYmIUFycmF5LmlzQXJyYXkodCl9ZnVuY3Rpb24gaG4odCl7cmV0dXJuIHR9ZnVuY3Rpb24gcG4odCxlKXtjb25zdCByPVwiY29sb3JcIj09PWUudHlwZSxuPXQuc3RvcHMmJlwib2JqZWN0XCI9PXR5cGVvZiB0LnN0b3BzWzBdWzBdLGk9bnx8IShufHx2b2lkIDAhPT10LnByb3BlcnR5KSxzPXQudHlwZXx8KGxuKGUpP1wiZXhwb25lbnRpYWxcIjpcImludGVydmFsXCIpO2lmKHJ8fFwicGFkZGluZ1wiPT09ZS50eXBlKXtjb25zdCBuPXI/S3QucGFyc2U6SnQucGFyc2U7KHQ9c3Qoe30sdCkpLnN0b3BzJiYodC5zdG9wcz10LnN0b3BzLm1hcCgodD0+W3RbMF0sbih0WzFdKV0pKSksdC5kZWZhdWx0PW4odC5kZWZhdWx0P3QuZGVmYXVsdDplLmRlZmF1bHQpO31pZih0LmNvbG9yU3BhY2UmJlwicmdiXCIhPT0oYT10LmNvbG9yU3BhY2UpJiZcImhjbFwiIT09YSYmXCJsYWJcIiE9PWEpdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIGNvbG9yIHNwYWNlOiBcIiR7dC5jb2xvclNwYWNlfVwiYCk7dmFyIGE7bGV0IG8sbCx1O2lmKFwiZXhwb25lbnRpYWxcIj09PXMpbz1tbjtlbHNlIGlmKFwiaW50ZXJ2YWxcIj09PXMpbz15bjtlbHNlIGlmKFwiY2F0ZWdvcmljYWxcIj09PXMpe289ZG4sbD1PYmplY3QuY3JlYXRlKG51bGwpO2Zvcihjb25zdCBlIG9mIHQuc3RvcHMpbFtlWzBdXT1lWzFdO3U9dHlwZW9mIHQuc3RvcHNbMF1bMF07fWVsc2Uge2lmKFwiaWRlbnRpdHlcIiE9PXMpdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIGZ1bmN0aW9uIHR5cGUgXCIke3N9XCJgKTtvPWduO31pZihuKXtjb25zdCByPXt9LG49W107Zm9yKGxldCBlPTA7ZTx0LnN0b3BzLmxlbmd0aDtlKyspe2NvbnN0IGk9dC5zdG9wc1tlXSxzPWlbMF0uem9vbTt2b2lkIDA9PT1yW3NdJiYocltzXT17em9vbTpzLHR5cGU6dC50eXBlLHByb3BlcnR5OnQucHJvcGVydHksZGVmYXVsdDp0LmRlZmF1bHQsc3RvcHM6W119LG4ucHVzaChzKSkscltzXS5zdG9wcy5wdXNoKFtpWzBdLnZhbHVlLGlbMV1dKTt9Y29uc3QgaT1bXTtmb3IoY29uc3QgdCBvZiBuKWkucHVzaChbclt0XS56b29tLHBuKHJbdF0sZSldKTtjb25zdCBzPXtuYW1lOlwibGluZWFyXCJ9O3JldHVybiB7a2luZDpcImNvbXBvc2l0ZVwiLGludGVycG9sYXRpb25UeXBlOnMsaW50ZXJwb2xhdGlvbkZhY3RvcjpCZS5pbnRlcnBvbGF0aW9uRmFjdG9yLmJpbmQodm9pZCAwLHMpLHpvb21TdG9wczppLm1hcCgodD0+dFswXSkpLGV2YWx1YXRlOih7em9vbTpyfSxuKT0+bW4oe3N0b3BzOmksYmFzZTp0LmJhc2V9LGUscikuZXZhbHVhdGUocixuKX19aWYoaSl7Y29uc3Qgcj1cImV4cG9uZW50aWFsXCI9PT1zP3tuYW1lOlwiZXhwb25lbnRpYWxcIixiYXNlOnZvaWQgMCE9PXQuYmFzZT90LmJhc2U6MX06bnVsbDtyZXR1cm4ge2tpbmQ6XCJjYW1lcmFcIixpbnRlcnBvbGF0aW9uVHlwZTpyLGludGVycG9sYXRpb25GYWN0b3I6QmUuaW50ZXJwb2xhdGlvbkZhY3Rvci5iaW5kKHZvaWQgMCxyKSx6b29tU3RvcHM6dC5zdG9wcy5tYXAoKHQ9PnRbMF0pKSxldmFsdWF0ZTooe3pvb206cn0pPT5vKHQsZSxyLGwsdSl9fXJldHVybiB7a2luZDpcInNvdXJjZVwiLGV2YWx1YXRlKHIsbil7Y29uc3QgaT1uJiZuLnByb3BlcnRpZXM/bi5wcm9wZXJ0aWVzW3QucHJvcGVydHldOnZvaWQgMDtyZXR1cm4gdm9pZCAwPT09aT9mbih0LmRlZmF1bHQsZS5kZWZhdWx0KTpvKHQsZSxpLGwsdSl9fX1mdW5jdGlvbiBmbih0LGUscil7cmV0dXJuIHZvaWQgMCE9PXQ/dDp2b2lkIDAhPT1lP2U6dm9pZCAwIT09cj9yOnZvaWQgMH1mdW5jdGlvbiBkbih0LGUscixuLGkpe3JldHVybiBmbih0eXBlb2Ygcj09PWk/bltyXTp2b2lkIDAsdC5kZWZhdWx0LGUuZGVmYXVsdCl9ZnVuY3Rpb24geW4odCxlLHIpe2lmKFwibnVtYmVyXCIhPT11bihyKSlyZXR1cm4gZm4odC5kZWZhdWx0LGUuZGVmYXVsdCk7Y29uc3Qgbj10LnN0b3BzLmxlbmd0aDtpZigxPT09bilyZXR1cm4gdC5zdG9wc1swXVsxXTtpZihyPD10LnN0b3BzWzBdWzBdKXJldHVybiB0LnN0b3BzWzBdWzFdO2lmKHI+PXQuc3RvcHNbbi0xXVswXSlyZXR1cm4gdC5zdG9wc1tuLTFdWzFdO2NvbnN0IGk9X2UodC5zdG9wcy5tYXAoKHQ9PnRbMF0pKSxyKTtyZXR1cm4gdC5zdG9wc1tpXVsxXX1mdW5jdGlvbiBtbih0LGUscil7Y29uc3Qgbj12b2lkIDAhPT10LmJhc2U/dC5iYXNlOjE7aWYoXCJudW1iZXJcIiE9PXVuKHIpKXJldHVybiBmbih0LmRlZmF1bHQsZS5kZWZhdWx0KTtjb25zdCBpPXQuc3RvcHMubGVuZ3RoO2lmKDE9PT1pKXJldHVybiB0LnN0b3BzWzBdWzFdO2lmKHI8PXQuc3RvcHNbMF1bMF0pcmV0dXJuIHQuc3RvcHNbMF1bMV07aWYocj49dC5zdG9wc1tpLTFdWzBdKXJldHVybiB0LnN0b3BzW2ktMV1bMV07Y29uc3Qgcz1fZSh0LnN0b3BzLm1hcCgodD0+dFswXSkpLHIpLGE9ZnVuY3Rpb24odCxlLHIsbil7Y29uc3QgaT1uLXIscz10LXI7cmV0dXJuIDA9PT1pPzA6MT09PWU/cy9pOihNYXRoLnBvdyhlLHMpLTEpLyhNYXRoLnBvdyhlLGkpLTEpfShyLG4sdC5zdG9wc1tzXVswXSx0LnN0b3BzW3MrMV1bMF0pLG89dC5zdG9wc1tzXVsxXSxsPXQuc3RvcHNbcysxXVsxXSx1PUNlW2UudHlwZV18fGhuO3JldHVybiBcImZ1bmN0aW9uXCI9PXR5cGVvZiBvLmV2YWx1YXRlP3tldmFsdWF0ZSguLi5lKXtjb25zdCByPW8uZXZhbHVhdGUuYXBwbHkodm9pZCAwLGUpLG49bC5ldmFsdWF0ZS5hcHBseSh2b2lkIDAsZSk7aWYodm9pZCAwIT09ciYmdm9pZCAwIT09bilyZXR1cm4gdShyLG4sYSx0LmNvbG9yU3BhY2UpfX06dShvLGwsYSx0LmNvbG9yU3BhY2UpfWZ1bmN0aW9uIGduKHQsZSxyKXtzd2l0Y2goZS50eXBlKXtjYXNlXCJjb2xvclwiOnI9S3QucGFyc2Uocik7YnJlYWs7Y2FzZVwiZm9ybWF0dGVkXCI6cj1ZdC5mcm9tU3RyaW5nKHIudG9TdHJpbmcoKSk7YnJlYWs7Y2FzZVwicmVzb2x2ZWRJbWFnZVwiOnI9dGUuZnJvbVN0cmluZyhyLnRvU3RyaW5nKCkpO2JyZWFrO2Nhc2VcInBhZGRpbmdcIjpyPUp0LnBhcnNlKHIpO2JyZWFrO2RlZmF1bHQ6dW4ocik9PT1lLnR5cGV8fFwiZW51bVwiPT09ZS50eXBlJiZlLnZhbHVlc1tyXXx8KHI9dm9pZCAwKTt9cmV0dXJuIGZuKHIsdC5kZWZhdWx0LGUuZGVmYXVsdCl9WHIucmVnaXN0ZXIoS3Ise2Vycm9yOlt7a2luZDpcImVycm9yXCJ9LFtjdF0sKHQsW2VdKT0+e3Rocm93IG5ldyBhZShlLmV2YWx1YXRlKHQpKX1dLHR5cGVvZjpbY3QsW2R0XSwodCxbZV0pPT53dChuZShlLmV2YWx1YXRlKHQpKSldLFwidG8tcmdiYVwiOltidCh1dCw0KSxbcHRdLCh0LFtlXSk9Pntjb25zdFtyLG4saSxzXT1lLmV2YWx1YXRlKHQpLnJnYjtyZXR1cm4gWzI1NSpyLDI1NSpuLDI1NSppLHNdfV0scmdiOltwdCxbdXQsdXQsdXRdLEhyXSxyZ2JhOltwdCxbdXQsdXQsdXQsdXRdLEhyXSxoYXM6e3R5cGU6aHQsb3ZlcmxvYWRzOltbW2N0XSwodCxbZV0pPT5ZcihlLmV2YWx1YXRlKHQpLHQucHJvcGVydGllcygpKV0sW1tjdCxmdF0sKHQsW2Uscl0pPT5ZcihlLmV2YWx1YXRlKHQpLHIuZXZhbHVhdGUodCkpXV19LGdldDp7dHlwZTpkdCxvdmVybG9hZHM6W1tbY3RdLCh0LFtlXSk9PkpyKGUuZXZhbHVhdGUodCksdC5wcm9wZXJ0aWVzKCkpXSxbW2N0LGZ0XSwodCxbZSxyXSk9PkpyKGUuZXZhbHVhdGUodCksci5ldmFsdWF0ZSh0KSldXX0sXCJmZWF0dXJlLXN0YXRlXCI6W2R0LFtjdF0sKHQsW2VdKT0+SnIoZS5ldmFsdWF0ZSh0KSx0LmZlYXR1cmVTdGF0ZXx8e30pXSxwcm9wZXJ0aWVzOltmdCxbXSx0PT50LnByb3BlcnRpZXMoKV0sXCJnZW9tZXRyeS10eXBlXCI6W2N0LFtdLHQ9PnQuZ2VvbWV0cnlUeXBlKCldLGlkOltkdCxbXSx0PT50LmlkKCldLHpvb206W3V0LFtdLHQ9PnQuZ2xvYmFscy56b29tXSxcImhlYXRtYXAtZGVuc2l0eVwiOlt1dCxbXSx0PT50Lmdsb2JhbHMuaGVhdG1hcERlbnNpdHl8fDBdLFwibGluZS1wcm9ncmVzc1wiOlt1dCxbXSx0PT50Lmdsb2JhbHMubGluZVByb2dyZXNzfHwwXSxhY2N1bXVsYXRlZDpbZHQsW10sdD0+dm9pZCAwPT09dC5nbG9iYWxzLmFjY3VtdWxhdGVkP251bGw6dC5nbG9iYWxzLmFjY3VtdWxhdGVkXSxcIitcIjpbdXQsV3IodXQpLCh0LGUpPT57bGV0IHI9MDtmb3IoY29uc3QgbiBvZiBlKXIrPW4uZXZhbHVhdGUodCk7cmV0dXJuIHJ9XSxcIipcIjpbdXQsV3IodXQpLCh0LGUpPT57bGV0IHI9MTtmb3IoY29uc3QgbiBvZiBlKXIqPW4uZXZhbHVhdGUodCk7cmV0dXJuIHJ9XSxcIi1cIjp7dHlwZTp1dCxvdmVybG9hZHM6W1tbdXQsdXRdLCh0LFtlLHJdKT0+ZS5ldmFsdWF0ZSh0KS1yLmV2YWx1YXRlKHQpXSxbW3V0XSwodCxbZV0pPT4tZS5ldmFsdWF0ZSh0KV1dfSxcIi9cIjpbdXQsW3V0LHV0XSwodCxbZSxyXSk9PmUuZXZhbHVhdGUodCkvci5ldmFsdWF0ZSh0KV0sXCIlXCI6W3V0LFt1dCx1dF0sKHQsW2Uscl0pPT5lLmV2YWx1YXRlKHQpJXIuZXZhbHVhdGUodCldLGxuMjpbdXQsW10sKCk9Pk1hdGguTE4yXSxwaTpbdXQsW10sKCk9Pk1hdGguUEldLGU6W3V0LFtdLCgpPT5NYXRoLkVdLFwiXlwiOlt1dCxbdXQsdXRdLCh0LFtlLHJdKT0+TWF0aC5wb3coZS5ldmFsdWF0ZSh0KSxyLmV2YWx1YXRlKHQpKV0sc3FydDpbdXQsW3V0XSwodCxbZV0pPT5NYXRoLnNxcnQoZS5ldmFsdWF0ZSh0KSldLGxvZzEwOlt1dCxbdXRdLCh0LFtlXSk9Pk1hdGgubG9nKGUuZXZhbHVhdGUodCkpL01hdGguTE4xMF0sbG46W3V0LFt1dF0sKHQsW2VdKT0+TWF0aC5sb2coZS5ldmFsdWF0ZSh0KSldLGxvZzI6W3V0LFt1dF0sKHQsW2VdKT0+TWF0aC5sb2coZS5ldmFsdWF0ZSh0KSkvTWF0aC5MTjJdLHNpbjpbdXQsW3V0XSwodCxbZV0pPT5NYXRoLnNpbihlLmV2YWx1YXRlKHQpKV0sY29zOlt1dCxbdXRdLCh0LFtlXSk9Pk1hdGguY29zKGUuZXZhbHVhdGUodCkpXSx0YW46W3V0LFt1dF0sKHQsW2VdKT0+TWF0aC50YW4oZS5ldmFsdWF0ZSh0KSldLGFzaW46W3V0LFt1dF0sKHQsW2VdKT0+TWF0aC5hc2luKGUuZXZhbHVhdGUodCkpXSxhY29zOlt1dCxbdXRdLCh0LFtlXSk9Pk1hdGguYWNvcyhlLmV2YWx1YXRlKHQpKV0sYXRhbjpbdXQsW3V0XSwodCxbZV0pPT5NYXRoLmF0YW4oZS5ldmFsdWF0ZSh0KSldLG1pbjpbdXQsV3IodXQpLCh0LGUpPT5NYXRoLm1pbiguLi5lLm1hcCgoZT0+ZS5ldmFsdWF0ZSh0KSkpKV0sbWF4Olt1dCxXcih1dCksKHQsZSk9Pk1hdGgubWF4KC4uLmUubWFwKChlPT5lLmV2YWx1YXRlKHQpKSkpXSxhYnM6W3V0LFt1dF0sKHQsW2VdKT0+TWF0aC5hYnMoZS5ldmFsdWF0ZSh0KSldLHJvdW5kOlt1dCxbdXRdLCh0LFtlXSk9Pntjb25zdCByPWUuZXZhbHVhdGUodCk7cmV0dXJuIHI8MD8tTWF0aC5yb3VuZCgtcik6TWF0aC5yb3VuZChyKX1dLGZsb29yOlt1dCxbdXRdLCh0LFtlXSk9Pk1hdGguZmxvb3IoZS5ldmFsdWF0ZSh0KSldLGNlaWw6W3V0LFt1dF0sKHQsW2VdKT0+TWF0aC5jZWlsKGUuZXZhbHVhdGUodCkpXSxcImZpbHRlci09PVwiOltodCxbY3QsZHRdLCh0LFtlLHJdKT0+dC5wcm9wZXJ0aWVzKClbZS52YWx1ZV09PT1yLnZhbHVlXSxcImZpbHRlci1pZC09PVwiOltodCxbZHRdLCh0LFtlXSk9PnQuaWQoKT09PWUudmFsdWVdLFwiZmlsdGVyLXR5cGUtPT1cIjpbaHQsW2N0XSwodCxbZV0pPT50Lmdlb21ldHJ5VHlwZSgpPT09ZS52YWx1ZV0sXCJmaWx0ZXItPFwiOltodCxbY3QsZHRdLCh0LFtlLHJdKT0+e2NvbnN0IG49dC5wcm9wZXJ0aWVzKClbZS52YWx1ZV0saT1yLnZhbHVlO3JldHVybiB0eXBlb2Ygbj09dHlwZW9mIGkmJm48aX1dLFwiZmlsdGVyLWlkLTxcIjpbaHQsW2R0XSwodCxbZV0pPT57Y29uc3Qgcj10LmlkKCksbj1lLnZhbHVlO3JldHVybiB0eXBlb2Ygcj09dHlwZW9mIG4mJnI8bn1dLFwiZmlsdGVyLT5cIjpbaHQsW2N0LGR0XSwodCxbZSxyXSk9Pntjb25zdCBuPXQucHJvcGVydGllcygpW2UudmFsdWVdLGk9ci52YWx1ZTtyZXR1cm4gdHlwZW9mIG49PXR5cGVvZiBpJiZuPml9XSxcImZpbHRlci1pZC0+XCI6W2h0LFtkdF0sKHQsW2VdKT0+e2NvbnN0IHI9dC5pZCgpLG49ZS52YWx1ZTtyZXR1cm4gdHlwZW9mIHI9PXR5cGVvZiBuJiZyPm59XSxcImZpbHRlci08PVwiOltodCxbY3QsZHRdLCh0LFtlLHJdKT0+e2NvbnN0IG49dC5wcm9wZXJ0aWVzKClbZS52YWx1ZV0saT1yLnZhbHVlO3JldHVybiB0eXBlb2Ygbj09dHlwZW9mIGkmJm48PWl9XSxcImZpbHRlci1pZC08PVwiOltodCxbZHRdLCh0LFtlXSk9Pntjb25zdCByPXQuaWQoKSxuPWUudmFsdWU7cmV0dXJuIHR5cGVvZiByPT10eXBlb2YgbiYmcjw9bn1dLFwiZmlsdGVyLT49XCI6W2h0LFtjdCxkdF0sKHQsW2Uscl0pPT57Y29uc3Qgbj10LnByb3BlcnRpZXMoKVtlLnZhbHVlXSxpPXIudmFsdWU7cmV0dXJuIHR5cGVvZiBuPT10eXBlb2YgaSYmbj49aX1dLFwiZmlsdGVyLWlkLT49XCI6W2h0LFtkdF0sKHQsW2VdKT0+e2NvbnN0IHI9dC5pZCgpLG49ZS52YWx1ZTtyZXR1cm4gdHlwZW9mIHI9PXR5cGVvZiBuJiZyPj1ufV0sXCJmaWx0ZXItaGFzXCI6W2h0LFtkdF0sKHQsW2VdKT0+ZS52YWx1ZSBpbiB0LnByb3BlcnRpZXMoKV0sXCJmaWx0ZXItaGFzLWlkXCI6W2h0LFtdLHQ9Pm51bGwhPT10LmlkKCkmJnZvaWQgMCE9PXQuaWQoKV0sXCJmaWx0ZXItdHlwZS1pblwiOltodCxbYnQoY3QpXSwodCxbZV0pPT5lLnZhbHVlLmluZGV4T2YodC5nZW9tZXRyeVR5cGUoKSk+PTBdLFwiZmlsdGVyLWlkLWluXCI6W2h0LFtidChkdCldLCh0LFtlXSk9PmUudmFsdWUuaW5kZXhPZih0LmlkKCkpPj0wXSxcImZpbHRlci1pbi1zbWFsbFwiOltodCxbY3QsYnQoZHQpXSwodCxbZSxyXSk9PnIudmFsdWUuaW5kZXhPZih0LnByb3BlcnRpZXMoKVtlLnZhbHVlXSk+PTBdLFwiZmlsdGVyLWluLWxhcmdlXCI6W2h0LFtjdCxidChkdCldLCh0LFtlLHJdKT0+ZnVuY3Rpb24odCxlLHIsbil7Zm9yKDtyPD1uOyl7Y29uc3QgaT1yK24+PjE7aWYoZVtpXT09PXQpcmV0dXJuICEwO2VbaV0+dD9uPWktMTpyPWkrMTt9cmV0dXJuICExfSh0LnByb3BlcnRpZXMoKVtlLnZhbHVlXSxyLnZhbHVlLDAsci52YWx1ZS5sZW5ndGgtMSldLGFsbDp7dHlwZTpodCxvdmVybG9hZHM6W1tbaHQsaHRdLCh0LFtlLHJdKT0+ZS5ldmFsdWF0ZSh0KSYmci5ldmFsdWF0ZSh0KV0sW1dyKGh0KSwodCxlKT0+e2Zvcihjb25zdCByIG9mIGUpaWYoIXIuZXZhbHVhdGUodCkpcmV0dXJuICExO3JldHVybiAhMH1dXX0sYW55Ont0eXBlOmh0LG92ZXJsb2FkczpbW1todCxodF0sKHQsW2Uscl0pPT5lLmV2YWx1YXRlKHQpfHxyLmV2YWx1YXRlKHQpXSxbV3IoaHQpLCh0LGUpPT57Zm9yKGNvbnN0IHIgb2YgZSlpZihyLmV2YWx1YXRlKHQpKXJldHVybiAhMDtyZXR1cm4gITF9XV19LFwiIVwiOltodCxbaHRdLCh0LFtlXSk9PiFlLmV2YWx1YXRlKHQpXSxcImlzLXN1cHBvcnRlZC1zY3JpcHRcIjpbaHQsW2N0XSwodCxbZV0pPT57Y29uc3Qgcj10Lmdsb2JhbHMmJnQuZ2xvYmFscy5pc1N1cHBvcnRlZFNjcmlwdDtyZXR1cm4gIXJ8fHIoZS5ldmFsdWF0ZSh0KSl9XSx1cGNhc2U6W2N0LFtjdF0sKHQsW2VdKT0+ZS5ldmFsdWF0ZSh0KS50b1VwcGVyQ2FzZSgpXSxkb3duY2FzZTpbY3QsW2N0XSwodCxbZV0pPT5lLmV2YWx1YXRlKHQpLnRvTG93ZXJDYXNlKCldLGNvbmNhdDpbY3QsV3IoZHQpLCh0LGUpPT5lLm1hcCgoZT0+aWUoZS5ldmFsdWF0ZSh0KSkpKS5qb2luKFwiXCIpXSxcInJlc29sdmVkLWxvY2FsZVwiOltjdCxbeXRdLCh0LFtlXSk9PmUuZXZhbHVhdGUodCkucmVzb2x2ZWRMb2NhbGUoKV19KTtjbGFzcyB4bntjb25zdHJ1Y3Rvcih0LGUpe3ZhciByO3RoaXMuZXhwcmVzc2lvbj10LHRoaXMuX3dhcm5pbmdIaXN0b3J5PXt9LHRoaXMuX2V2YWx1YXRvcj1uZXcgcGUsdGhpcy5fZGVmYXVsdFZhbHVlPWU/XCJjb2xvclwiPT09KHI9ZSkudHlwZSYmY24oci5kZWZhdWx0KT9uZXcgS3QoMCwwLDAsMCk6XCJjb2xvclwiPT09ci50eXBlP0t0LnBhcnNlKHIuZGVmYXVsdCl8fG51bGw6XCJwYWRkaW5nXCI9PT1yLnR5cGU/SnQucGFyc2Uoci5kZWZhdWx0KXx8bnVsbDpcInZhcmlhYmxlQW5jaG9yT2Zmc2V0Q29sbGVjdGlvblwiPT09ci50eXBlP1F0LnBhcnNlKHIuZGVmYXVsdCl8fG51bGw6dm9pZCAwPT09ci5kZWZhdWx0P251bGw6ci5kZWZhdWx0Om51bGwsdGhpcy5fZW51bVZhbHVlcz1lJiZcImVudW1cIj09PWUudHlwZT9lLnZhbHVlczpudWxsO31ldmFsdWF0ZVdpdGhvdXRFcnJvckhhbmRsaW5nKHQsZSxyLG4saSxzKXtyZXR1cm4gdGhpcy5fZXZhbHVhdG9yLmdsb2JhbHM9dCx0aGlzLl9ldmFsdWF0b3IuZmVhdHVyZT1lLHRoaXMuX2V2YWx1YXRvci5mZWF0dXJlU3RhdGU9cix0aGlzLl9ldmFsdWF0b3IuY2Fub25pY2FsPW4sdGhpcy5fZXZhbHVhdG9yLmF2YWlsYWJsZUltYWdlcz1pfHxudWxsLHRoaXMuX2V2YWx1YXRvci5mb3JtYXR0ZWRTZWN0aW9uPXMsdGhpcy5leHByZXNzaW9uLmV2YWx1YXRlKHRoaXMuX2V2YWx1YXRvcil9ZXZhbHVhdGUodCxlLHIsbixpLHMpe3RoaXMuX2V2YWx1YXRvci5nbG9iYWxzPXQsdGhpcy5fZXZhbHVhdG9yLmZlYXR1cmU9ZXx8bnVsbCx0aGlzLl9ldmFsdWF0b3IuZmVhdHVyZVN0YXRlPXJ8fG51bGwsdGhpcy5fZXZhbHVhdG9yLmNhbm9uaWNhbD1uLHRoaXMuX2V2YWx1YXRvci5hdmFpbGFibGVJbWFnZXM9aXx8bnVsbCx0aGlzLl9ldmFsdWF0b3IuZm9ybWF0dGVkU2VjdGlvbj1zfHxudWxsO3RyeXtjb25zdCB0PXRoaXMuZXhwcmVzc2lvbi5ldmFsdWF0ZSh0aGlzLl9ldmFsdWF0b3IpO2lmKG51bGw9PXR8fFwibnVtYmVyXCI9PXR5cGVvZiB0JiZ0IT10KXJldHVybiB0aGlzLl9kZWZhdWx0VmFsdWU7aWYodGhpcy5fZW51bVZhbHVlcyYmISh0IGluIHRoaXMuX2VudW1WYWx1ZXMpKXRocm93IG5ldyBhZShgRXhwZWN0ZWQgdmFsdWUgdG8gYmUgb25lIG9mICR7T2JqZWN0LmtleXModGhpcy5fZW51bVZhbHVlcykubWFwKCh0PT5KU09OLnN0cmluZ2lmeSh0KSkpLmpvaW4oXCIsIFwiKX0sIGJ1dCBmb3VuZCAke0pTT04uc3RyaW5naWZ5KHQpfSBpbnN0ZWFkLmApO3JldHVybiB0fWNhdGNoKHQpe3JldHVybiB0aGlzLl93YXJuaW5nSGlzdG9yeVt0Lm1lc3NhZ2VdfHwodGhpcy5fd2FybmluZ0hpc3RvcnlbdC5tZXNzYWdlXT0hMCxcInVuZGVmaW5lZFwiIT10eXBlb2YgY29uc29sZSYmY29uc29sZS53YXJuKHQubWVzc2FnZSkpLHRoaXMuX2RlZmF1bHRWYWx1ZX19fWZ1bmN0aW9uIHZuKHQpe3JldHVybiBBcnJheS5pc0FycmF5KHQpJiZ0Lmxlbmd0aD4wJiZcInN0cmluZ1wiPT10eXBlb2YgdFswXSYmdFswXWluIEtyfWZ1bmN0aW9uIGJuKHQsZSl7Y29uc3Qgcj1uZXcgZmUoS3IsUXIsW10sZT9mdW5jdGlvbih0KXtjb25zdCBlPXtjb2xvcjpwdCxzdHJpbmc6Y3QsbnVtYmVyOnV0LGVudW06Y3QsYm9vbGVhbjpodCxmb3JtYXR0ZWQ6bXQscGFkZGluZzpndCxyZXNvbHZlZEltYWdlOnh0LHZhcmlhYmxlQW5jaG9yT2Zmc2V0Q29sbGVjdGlvbjp2dH07cmV0dXJuIFwiYXJyYXlcIj09PXQudHlwZT9idChlW3QudmFsdWVdfHxkdCx0Lmxlbmd0aCk6ZVt0LnR5cGVdfShlKTp2b2lkIDApLG49ci5wYXJzZSh0LHZvaWQgMCx2b2lkIDAsdm9pZCAwLGUmJlwic3RyaW5nXCI9PT1lLnR5cGU/e3R5cGVBbm5vdGF0aW9uOlwiY29lcmNlXCJ9OnZvaWQgMCk7cmV0dXJuIG4/bm4obmV3IHhuKG4sZSkpOnNuKHIuZXJyb3JzKX1jbGFzcyB3bntjb25zdHJ1Y3Rvcih0LGUpe3RoaXMua2luZD10LHRoaXMuX3N0eWxlRXhwcmVzc2lvbj1lLHRoaXMuaXNTdGF0ZURlcGVuZGVudD1cImNvbnN0YW50XCIhPT10JiYhZW4oZS5leHByZXNzaW9uKTt9ZXZhbHVhdGVXaXRob3V0RXJyb3JIYW5kbGluZyh0LGUscixuLGkscyl7cmV0dXJuIHRoaXMuX3N0eWxlRXhwcmVzc2lvbi5ldmFsdWF0ZVdpdGhvdXRFcnJvckhhbmRsaW5nKHQsZSxyLG4saSxzKX1ldmFsdWF0ZSh0LGUscixuLGkscyl7cmV0dXJuIHRoaXMuX3N0eWxlRXhwcmVzc2lvbi5ldmFsdWF0ZSh0LGUscixuLGkscyl9fWNsYXNzIF9ue2NvbnN0cnVjdG9yKHQsZSxyLG4pe3RoaXMua2luZD10LHRoaXMuem9vbVN0b3BzPXIsdGhpcy5fc3R5bGVFeHByZXNzaW9uPWUsdGhpcy5pc1N0YXRlRGVwZW5kZW50PVwiY2FtZXJhXCIhPT10JiYhZW4oZS5leHByZXNzaW9uKSx0aGlzLmludGVycG9sYXRpb25UeXBlPW47fWV2YWx1YXRlV2l0aG91dEVycm9ySGFuZGxpbmcodCxlLHIsbixpLHMpe3JldHVybiB0aGlzLl9zdHlsZUV4cHJlc3Npb24uZXZhbHVhdGVXaXRob3V0RXJyb3JIYW5kbGluZyh0LGUscixuLGkscyl9ZXZhbHVhdGUodCxlLHIsbixpLHMpe3JldHVybiB0aGlzLl9zdHlsZUV4cHJlc3Npb24uZXZhbHVhdGUodCxlLHIsbixpLHMpfWludGVycG9sYXRpb25GYWN0b3IodCxlLHIpe3JldHVybiB0aGlzLmludGVycG9sYXRpb25UeXBlP0JlLmludGVycG9sYXRpb25GYWN0b3IodGhpcy5pbnRlcnBvbGF0aW9uVHlwZSx0LGUscik6MH19ZnVuY3Rpb24gQW4odCxlKXtjb25zdCByPWJuKHQsZSk7aWYoXCJlcnJvclwiPT09ci5yZXN1bHQpcmV0dXJuIHI7Y29uc3Qgbj1yLnZhbHVlLmV4cHJlc3Npb24saT10bihuKTtpZighaSYmIWFuKGUpKXJldHVybiBzbihbbmV3IGF0KFwiXCIsXCJkYXRhIGV4cHJlc3Npb25zIG5vdCBzdXBwb3J0ZWRcIildKTtjb25zdCBzPXJuKG4sW1wiem9vbVwiXSk7aWYoIXMmJiFvbihlKSlyZXR1cm4gc24oW25ldyBhdChcIlwiLFwiem9vbSBleHByZXNzaW9ucyBub3Qgc3VwcG9ydGVkXCIpXSk7Y29uc3QgYT1rbihuKTtyZXR1cm4gYXx8cz9hIGluc3RhbmNlb2YgYXQ/c24oW2FdKTphIGluc3RhbmNlb2YgQmUmJiFsbihlKT9zbihbbmV3IGF0KFwiXCIsJ1wiaW50ZXJwb2xhdGVcIiBleHByZXNzaW9ucyBjYW5ub3QgYmUgdXNlZCB3aXRoIHRoaXMgcHJvcGVydHknKV0pOm5uKGE/bmV3IF9uKGk/XCJjYW1lcmFcIjpcImNvbXBvc2l0ZVwiLHIudmFsdWUsYS5sYWJlbHMsYSBpbnN0YW5jZW9mIEJlP2EuaW50ZXJwb2xhdGlvbjp2b2lkIDApOm5ldyB3bihpP1wiY29uc3RhbnRcIjpcInNvdXJjZVwiLHIudmFsdWUpKTpzbihbbmV3IGF0KFwiXCIsJ1wiem9vbVwiIGV4cHJlc3Npb24gbWF5IG9ubHkgYmUgdXNlZCBhcyBpbnB1dCB0byBhIHRvcC1sZXZlbCBcInN0ZXBcIiBvciBcImludGVycG9sYXRlXCIgZXhwcmVzc2lvbi4nKV0pfWNsYXNzIFNue2NvbnN0cnVjdG9yKHQsZSl7dGhpcy5fcGFyYW1ldGVycz10LHRoaXMuX3NwZWNpZmljYXRpb249ZSxzdCh0aGlzLHBuKHRoaXMuX3BhcmFtZXRlcnMsdGhpcy5fc3BlY2lmaWNhdGlvbikpO31zdGF0aWMgZGVzZXJpYWxpemUodCl7cmV0dXJuIG5ldyBTbih0Ll9wYXJhbWV0ZXJzLHQuX3NwZWNpZmljYXRpb24pfXN0YXRpYyBzZXJpYWxpemUodCl7cmV0dXJuIHtfcGFyYW1ldGVyczp0Ll9wYXJhbWV0ZXJzLF9zcGVjaWZpY2F0aW9uOnQuX3NwZWNpZmljYXRpb259fX1mdW5jdGlvbiBrbih0KXtsZXQgZT1udWxsO2lmKHQgaW5zdGFuY2VvZiBkZSllPWtuKHQucmVzdWx0KTtlbHNlIGlmKHQgaW5zdGFuY2VvZiBFZSl7Zm9yKGNvbnN0IHIgb2YgdC5hcmdzKWlmKGU9a24ociksZSlicmVha31lbHNlICh0IGluc3RhbmNlb2YgQWV8fHQgaW5zdGFuY2VvZiBCZSkmJnQuaW5wdXQgaW5zdGFuY2VvZiBYciYmXCJ6b29tXCI9PT10LmlucHV0Lm5hbWUmJihlPXQpO3JldHVybiBlIGluc3RhbmNlb2YgYXR8fHQuZWFjaENoaWxkKCh0PT57Y29uc3Qgcj1rbih0KTtyIGluc3RhbmNlb2YgYXQ/ZT1yOiFlJiZyP2U9bmV3IGF0KFwiXCIsJ1wiem9vbVwiIGV4cHJlc3Npb24gbWF5IG9ubHkgYmUgdXNlZCBhcyBpbnB1dCB0byBhIHRvcC1sZXZlbCBcInN0ZXBcIiBvciBcImludGVycG9sYXRlXCIgZXhwcmVzc2lvbi4nKTplJiZyJiZlIT09ciYmKGU9bmV3IGF0KFwiXCIsJ09ubHkgb25lIHpvb20tYmFzZWQgXCJzdGVwXCIgb3IgXCJpbnRlcnBvbGF0ZVwiIHN1YmV4cHJlc3Npb24gbWF5IGJlIHVzZWQgaW4gYW4gZXhwcmVzc2lvbi4nKSk7fSkpLGV9ZnVuY3Rpb24gTW4odCl7aWYoITA9PT10fHwhMT09PXQpcmV0dXJuICEwO2lmKCFBcnJheS5pc0FycmF5KHQpfHwwPT09dC5sZW5ndGgpcmV0dXJuICExO3N3aXRjaCh0WzBdKXtjYXNlXCJoYXNcIjpyZXR1cm4gdC5sZW5ndGg+PTImJlwiJGlkXCIhPT10WzFdJiZcIiR0eXBlXCIhPT10WzFdO2Nhc2VcImluXCI6cmV0dXJuIHQubGVuZ3RoPj0zJiYoXCJzdHJpbmdcIiE9dHlwZW9mIHRbMV18fEFycmF5LmlzQXJyYXkodFsyXSkpO2Nhc2VcIiFpblwiOmNhc2VcIiFoYXNcIjpjYXNlXCJub25lXCI6cmV0dXJuICExO2Nhc2VcIj09XCI6Y2FzZVwiIT1cIjpjYXNlXCI+XCI6Y2FzZVwiPj1cIjpjYXNlXCI8XCI6Y2FzZVwiPD1cIjpyZXR1cm4gMyE9PXQubGVuZ3RofHxBcnJheS5pc0FycmF5KHRbMV0pfHxBcnJheS5pc0FycmF5KHRbMl0pO2Nhc2VcImFueVwiOmNhc2VcImFsbFwiOmZvcihjb25zdCBlIG9mIHQuc2xpY2UoMSkpaWYoIU1uKGUpJiZcImJvb2xlYW5cIiE9dHlwZW9mIGUpcmV0dXJuICExO3JldHVybiAhMDtkZWZhdWx0OnJldHVybiAhMH19Y29uc3QgSW49e3R5cGU6XCJib29sZWFuXCIsZGVmYXVsdDohMSx0cmFuc2l0aW9uOiExLFwicHJvcGVydHktdHlwZVwiOlwiZGF0YS1kcml2ZW5cIixleHByZXNzaW9uOntpbnRlcnBvbGF0ZWQ6ITEscGFyYW1ldGVyczpbXCJ6b29tXCIsXCJmZWF0dXJlXCJdfX07ZnVuY3Rpb24gem4odCl7aWYobnVsbD09dClyZXR1cm4ge2ZpbHRlcjooKT0+ITAsbmVlZEdlb21ldHJ5OiExfTtNbih0KXx8KHQ9Qm4odCkpO2NvbnN0IGU9Ym4odCxJbik7aWYoXCJlcnJvclwiPT09ZS5yZXN1bHQpdGhyb3cgbmV3IEVycm9yKGUudmFsdWUubWFwKCh0PT5gJHt0LmtleX06ICR7dC5tZXNzYWdlfWApKS5qb2luKFwiLCBcIikpO3JldHVybiB7ZmlsdGVyOih0LHIsbik9PmUudmFsdWUuZXZhbHVhdGUodCxyLHt9LG4pLG5lZWRHZW9tZXRyeTpDbih0KX19ZnVuY3Rpb24gUG4odCxlKXtyZXR1cm4gdDxlPy0xOnQ+ZT8xOjB9ZnVuY3Rpb24gQ24odCl7aWYoIUFycmF5LmlzQXJyYXkodCkpcmV0dXJuICExO2lmKFwid2l0aGluXCI9PT10WzBdfHxcImRpc3RhbmNlXCI9PT10WzBdKXJldHVybiAhMDtmb3IobGV0IGU9MTtlPHQubGVuZ3RoO2UrKylpZihDbih0W2VdKSlyZXR1cm4gITA7cmV0dXJuICExfWZ1bmN0aW9uIEJuKHQpe2lmKCF0KXJldHVybiAhMDtjb25zdCBlPXRbMF07cmV0dXJuIHQubGVuZ3RoPD0xP1wiYW55XCIhPT1lOlwiPT1cIj09PWU/Vm4odFsxXSx0WzJdLFwiPT1cIik6XCIhPVwiPT09ZT9UbihWbih0WzFdLHRbMl0sXCI9PVwiKSk6XCI8XCI9PT1lfHxcIj5cIj09PWV8fFwiPD1cIj09PWV8fFwiPj1cIj09PWU/Vm4odFsxXSx0WzJdLGUpOlwiYW55XCI9PT1lPyhyPXQuc2xpY2UoMSksW1wiYW55XCJdLmNvbmNhdChyLm1hcChCbikpKTpcImFsbFwiPT09ZT9bXCJhbGxcIl0uY29uY2F0KHQuc2xpY2UoMSkubWFwKEJuKSk6XCJub25lXCI9PT1lP1tcImFsbFwiXS5jb25jYXQodC5zbGljZSgxKS5tYXAoQm4pLm1hcChUbikpOlwiaW5cIj09PWU/RW4odFsxXSx0LnNsaWNlKDIpKTpcIiFpblwiPT09ZT9UbihFbih0WzFdLHQuc2xpY2UoMikpKTpcImhhc1wiPT09ZT9Gbih0WzFdKTpcIiFoYXNcIiE9PWV8fFRuKEZuKHRbMV0pKTt2YXIgcjt9ZnVuY3Rpb24gVm4odCxlLHIpe3N3aXRjaCh0KXtjYXNlXCIkdHlwZVwiOnJldHVybiBbYGZpbHRlci10eXBlLSR7cn1gLGVdO2Nhc2VcIiRpZFwiOnJldHVybiBbYGZpbHRlci1pZC0ke3J9YCxlXTtkZWZhdWx0OnJldHVybiBbYGZpbHRlci0ke3J9YCx0LGVdfX1mdW5jdGlvbiBFbih0LGUpe2lmKDA9PT1lLmxlbmd0aClyZXR1cm4gITE7c3dpdGNoKHQpe2Nhc2VcIiR0eXBlXCI6cmV0dXJuIFtcImZpbHRlci10eXBlLWluXCIsW1wibGl0ZXJhbFwiLGVdXTtjYXNlXCIkaWRcIjpyZXR1cm4gW1wiZmlsdGVyLWlkLWluXCIsW1wibGl0ZXJhbFwiLGVdXTtkZWZhdWx0OnJldHVybiBlLmxlbmd0aD4yMDAmJiFlLnNvbWUoKHQ9PnR5cGVvZiB0IT10eXBlb2YgZVswXSkpP1tcImZpbHRlci1pbi1sYXJnZVwiLHQsW1wibGl0ZXJhbFwiLGUuc29ydChQbildXTpbXCJmaWx0ZXItaW4tc21hbGxcIix0LFtcImxpdGVyYWxcIixlXV19fWZ1bmN0aW9uIEZuKHQpe3N3aXRjaCh0KXtjYXNlXCIkdHlwZVwiOnJldHVybiAhMDtjYXNlXCIkaWRcIjpyZXR1cm4gW1wiZmlsdGVyLWhhcy1pZFwiXTtkZWZhdWx0OnJldHVybiBbXCJmaWx0ZXItaGFzXCIsdF19fWZ1bmN0aW9uIFRuKHQpe3JldHVybiBbXCIhXCIsdF19ZnVuY3Rpb24gJG4odCl7Y29uc3QgZT10eXBlb2YgdDtpZihcIm51bWJlclwiPT09ZXx8XCJib29sZWFuXCI9PT1lfHxcInN0cmluZ1wiPT09ZXx8bnVsbD09dClyZXR1cm4gSlNPTi5zdHJpbmdpZnkodCk7aWYoQXJyYXkuaXNBcnJheSh0KSl7bGV0IGU9XCJbXCI7Zm9yKGNvbnN0IHIgb2YgdCllKz1gJHskbihyKX0sYDtyZXR1cm4gYCR7ZX1dYH1jb25zdCByPU9iamVjdC5rZXlzKHQpLnNvcnQoKTtsZXQgbj1cIntcIjtmb3IobGV0IGU9MDtlPHIubGVuZ3RoO2UrKyluKz1gJHtKU09OLnN0cmluZ2lmeShyW2VdKX06JHskbih0W3JbZV1dKX0sYDtyZXR1cm4gYCR7bn19YH1mdW5jdGlvbiBMbih0KXtsZXQgZT1cIlwiO2Zvcihjb25zdCByIG9mIEspZSs9YC8keyRuKHRbcl0pfWA7cmV0dXJuIGV9ZnVuY3Rpb24gRG4odCl7Y29uc3QgZT10LnZhbHVlO3JldHVybiBlP1tuZXcgaXQodC5rZXksZSxcImNvbnN0YW50cyBoYXZlIGJlZW4gZGVwcmVjYXRlZCBhcyBvZiB2OFwiKV06W119ZnVuY3Rpb24gT24odCl7cmV0dXJuIHQgaW5zdGFuY2VvZiBOdW1iZXJ8fHQgaW5zdGFuY2VvZiBTdHJpbmd8fHQgaW5zdGFuY2VvZiBCb29sZWFuP3QudmFsdWVPZigpOnR9ZnVuY3Rpb24gam4odCl7aWYoQXJyYXkuaXNBcnJheSh0KSlyZXR1cm4gdC5tYXAoam4pO2lmKHQgaW5zdGFuY2VvZiBPYmplY3QmJiEodCBpbnN0YW5jZW9mIE51bWJlcnx8dCBpbnN0YW5jZW9mIFN0cmluZ3x8dCBpbnN0YW5jZW9mIEJvb2xlYW4pKXtjb25zdCBlPXt9O2Zvcihjb25zdCByIGluIHQpZVtyXT1qbih0W3JdKTtyZXR1cm4gZX1yZXR1cm4gT24odCl9ZnVuY3Rpb24gUm4odCl7Y29uc3QgZT10LmtleSxyPXQudmFsdWUsbj10LnZhbHVlU3BlY3x8e30saT10Lm9iamVjdEVsZW1lbnRWYWxpZGF0b3JzfHx7fSxzPXQuc3R5bGUsYT10LnN0eWxlU3BlYyxvPXQudmFsaWRhdGVTcGVjO2xldCBsPVtdO2NvbnN0IHU9dW4ocik7aWYoXCJvYmplY3RcIiE9PXUpcmV0dXJuIFtuZXcgaXQoZSxyLGBvYmplY3QgZXhwZWN0ZWQsICR7dX0gZm91bmRgKV07Zm9yKGNvbnN0IHQgaW4gcil7Y29uc3QgdT10LnNwbGl0KFwiLlwiKVswXSxjPW5bdV18fG5bXCIqXCJdO2xldCBoO2lmKGlbdV0paD1pW3VdO2Vsc2UgaWYoblt1XSloPW87ZWxzZSBpZihpW1wiKlwiXSloPWlbXCIqXCJdO2Vsc2Uge2lmKCFuW1wiKlwiXSl7bC5wdXNoKG5ldyBpdChlLHJbdF0sYHVua25vd24gcHJvcGVydHkgXCIke3R9XCJgKSk7Y29udGludWV9aD1vO31sPWwuY29uY2F0KGgoe2tleTooZT9gJHtlfS5gOmUpK3QsdmFsdWU6clt0XSx2YWx1ZVNwZWM6YyxzdHlsZTpzLHN0eWxlU3BlYzphLG9iamVjdDpyLG9iamVjdEtleTp0LHZhbGlkYXRlU3BlYzpvfSxyKSk7fWZvcihjb25zdCB0IGluIG4paVt0XXx8blt0XS5yZXF1aXJlZCYmdm9pZCAwPT09blt0XS5kZWZhdWx0JiZ2b2lkIDA9PT1yW3RdJiZsLnB1c2gobmV3IGl0KGUscixgbWlzc2luZyByZXF1aXJlZCBwcm9wZXJ0eSBcIiR7dH1cImApKTtyZXR1cm4gbH1mdW5jdGlvbiBVbih0KXtjb25zdCBlPXQudmFsdWUscj10LnZhbHVlU3BlYyxuPXQuc3R5bGUsaT10LnN0eWxlU3BlYyxzPXQua2V5LGE9dC5hcnJheUVsZW1lbnRWYWxpZGF0b3J8fHQudmFsaWRhdGVTcGVjO2lmKFwiYXJyYXlcIiE9PXVuKGUpKXJldHVybiBbbmV3IGl0KHMsZSxgYXJyYXkgZXhwZWN0ZWQsICR7dW4oZSl9IGZvdW5kYCldO2lmKHIubGVuZ3RoJiZlLmxlbmd0aCE9PXIubGVuZ3RoKXJldHVybiBbbmV3IGl0KHMsZSxgYXJyYXkgbGVuZ3RoICR7ci5sZW5ndGh9IGV4cGVjdGVkLCBsZW5ndGggJHtlLmxlbmd0aH0gZm91bmRgKV07aWYocltcIm1pbi1sZW5ndGhcIl0mJmUubGVuZ3RoPHJbXCJtaW4tbGVuZ3RoXCJdKXJldHVybiBbbmV3IGl0KHMsZSxgYXJyYXkgbGVuZ3RoIGF0IGxlYXN0ICR7cltcIm1pbi1sZW5ndGhcIl19IGV4cGVjdGVkLCBsZW5ndGggJHtlLmxlbmd0aH0gZm91bmRgKV07bGV0IG89e3R5cGU6ci52YWx1ZSx2YWx1ZXM6ci52YWx1ZXN9O2kuJHZlcnNpb248NyYmKG8uZnVuY3Rpb249ci5mdW5jdGlvbiksXCJvYmplY3RcIj09PXVuKHIudmFsdWUpJiYobz1yLnZhbHVlKTtsZXQgbD1bXTtmb3IobGV0IHI9MDtyPGUubGVuZ3RoO3IrKylsPWwuY29uY2F0KGEoe2FycmF5OmUsYXJyYXlJbmRleDpyLHZhbHVlOmVbcl0sdmFsdWVTcGVjOm8sdmFsaWRhdGVTcGVjOnQudmFsaWRhdGVTcGVjLHN0eWxlOm4sc3R5bGVTcGVjOmksa2V5OmAke3N9WyR7cn1dYH0pKTtyZXR1cm4gbH1mdW5jdGlvbiBxbih0KXtjb25zdCBlPXQua2V5LHI9dC52YWx1ZSxuPXQudmFsdWVTcGVjO2xldCBpPXVuKHIpO3JldHVybiBcIm51bWJlclwiPT09aSYmciE9ciYmKGk9XCJOYU5cIiksXCJudW1iZXJcIiE9PWk/W25ldyBpdChlLHIsYG51bWJlciBleHBlY3RlZCwgJHtpfSBmb3VuZGApXTpcIm1pbmltdW1cImluIG4mJnI8bi5taW5pbXVtP1tuZXcgaXQoZSxyLGAke3J9IGlzIGxlc3MgdGhhbiB0aGUgbWluaW11bSB2YWx1ZSAke24ubWluaW11bX1gKV06XCJtYXhpbXVtXCJpbiBuJiZyPm4ubWF4aW11bT9bbmV3IGl0KGUscixgJHtyfSBpcyBncmVhdGVyIHRoYW4gdGhlIG1heGltdW0gdmFsdWUgJHtuLm1heGltdW19YCldOltdfWZ1bmN0aW9uIE5uKHQpe2NvbnN0IGU9dC52YWx1ZVNwZWMscj1Pbih0LnZhbHVlLnR5cGUpO2xldCBuLGkscyxhPXt9O2NvbnN0IG89XCJjYXRlZ29yaWNhbFwiIT09ciYmdm9pZCAwPT09dC52YWx1ZS5wcm9wZXJ0eSxsPSFvLHU9XCJhcnJheVwiPT09dW4odC52YWx1ZS5zdG9wcykmJlwiYXJyYXlcIj09PXVuKHQudmFsdWUuc3RvcHNbMF0pJiZcIm9iamVjdFwiPT09dW4odC52YWx1ZS5zdG9wc1swXVswXSksYz1Sbih7a2V5OnQua2V5LHZhbHVlOnQudmFsdWUsdmFsdWVTcGVjOnQuc3R5bGVTcGVjLmZ1bmN0aW9uLHZhbGlkYXRlU3BlYzp0LnZhbGlkYXRlU3BlYyxzdHlsZTp0LnN0eWxlLHN0eWxlU3BlYzp0LnN0eWxlU3BlYyxvYmplY3RFbGVtZW50VmFsaWRhdG9yczp7c3RvcHM6ZnVuY3Rpb24odCl7aWYoXCJpZGVudGl0eVwiPT09cilyZXR1cm4gW25ldyBpdCh0LmtleSx0LnZhbHVlLCdpZGVudGl0eSBmdW5jdGlvbiBtYXkgbm90IGhhdmUgYSBcInN0b3BzXCIgcHJvcGVydHknKV07bGV0IGU9W107Y29uc3Qgbj10LnZhbHVlO3JldHVybiBlPWUuY29uY2F0KFVuKHtrZXk6dC5rZXksdmFsdWU6bix2YWx1ZVNwZWM6dC52YWx1ZVNwZWMsdmFsaWRhdGVTcGVjOnQudmFsaWRhdGVTcGVjLHN0eWxlOnQuc3R5bGUsc3R5bGVTcGVjOnQuc3R5bGVTcGVjLGFycmF5RWxlbWVudFZhbGlkYXRvcjpofSkpLFwiYXJyYXlcIj09PXVuKG4pJiYwPT09bi5sZW5ndGgmJmUucHVzaChuZXcgaXQodC5rZXksbixcImFycmF5IG11c3QgaGF2ZSBhdCBsZWFzdCBvbmUgc3RvcFwiKSksZX0sZGVmYXVsdDpmdW5jdGlvbih0KXtyZXR1cm4gdC52YWxpZGF0ZVNwZWMoe2tleTp0LmtleSx2YWx1ZTp0LnZhbHVlLHZhbHVlU3BlYzplLHZhbGlkYXRlU3BlYzp0LnZhbGlkYXRlU3BlYyxzdHlsZTp0LnN0eWxlLHN0eWxlU3BlYzp0LnN0eWxlU3BlY30pfX19KTtyZXR1cm4gXCJpZGVudGl0eVwiPT09ciYmbyYmYy5wdXNoKG5ldyBpdCh0LmtleSx0LnZhbHVlLCdtaXNzaW5nIHJlcXVpcmVkIHByb3BlcnR5IFwicHJvcGVydHlcIicpKSxcImlkZW50aXR5XCI9PT1yfHx0LnZhbHVlLnN0b3BzfHxjLnB1c2gobmV3IGl0KHQua2V5LHQudmFsdWUsJ21pc3NpbmcgcmVxdWlyZWQgcHJvcGVydHkgXCJzdG9wc1wiJykpLFwiZXhwb25lbnRpYWxcIj09PXImJnQudmFsdWVTcGVjLmV4cHJlc3Npb24mJiFsbih0LnZhbHVlU3BlYykmJmMucHVzaChuZXcgaXQodC5rZXksdC52YWx1ZSxcImV4cG9uZW50aWFsIGZ1bmN0aW9ucyBub3Qgc3VwcG9ydGVkXCIpKSx0LnN0eWxlU3BlYy4kdmVyc2lvbj49OCYmKGwmJiFhbih0LnZhbHVlU3BlYyk/Yy5wdXNoKG5ldyBpdCh0LmtleSx0LnZhbHVlLFwicHJvcGVydHkgZnVuY3Rpb25zIG5vdCBzdXBwb3J0ZWRcIikpOm8mJiFvbih0LnZhbHVlU3BlYykmJmMucHVzaChuZXcgaXQodC5rZXksdC52YWx1ZSxcInpvb20gZnVuY3Rpb25zIG5vdCBzdXBwb3J0ZWRcIikpKSxcImNhdGVnb3JpY2FsXCIhPT1yJiYhdXx8dm9pZCAwIT09dC52YWx1ZS5wcm9wZXJ0eXx8Yy5wdXNoKG5ldyBpdCh0LmtleSx0LnZhbHVlLCdcInByb3BlcnR5XCIgcHJvcGVydHkgaXMgcmVxdWlyZWQnKSksYztmdW5jdGlvbiBoKHQpe2xldCByPVtdO2NvbnN0IG49dC52YWx1ZSxvPXQua2V5O2lmKFwiYXJyYXlcIiE9PXVuKG4pKXJldHVybiBbbmV3IGl0KG8sbixgYXJyYXkgZXhwZWN0ZWQsICR7dW4obil9IGZvdW5kYCldO2lmKDIhPT1uLmxlbmd0aClyZXR1cm4gW25ldyBpdChvLG4sYGFycmF5IGxlbmd0aCAyIGV4cGVjdGVkLCBsZW5ndGggJHtuLmxlbmd0aH0gZm91bmRgKV07aWYodSl7aWYoXCJvYmplY3RcIiE9PXVuKG5bMF0pKXJldHVybiBbbmV3IGl0KG8sbixgb2JqZWN0IGV4cGVjdGVkLCAke3VuKG5bMF0pfSBmb3VuZGApXTtpZih2b2lkIDA9PT1uWzBdLnpvb20pcmV0dXJuIFtuZXcgaXQobyxuLFwib2JqZWN0IHN0b3Aga2V5IG11c3QgaGF2ZSB6b29tXCIpXTtpZih2b2lkIDA9PT1uWzBdLnZhbHVlKXJldHVybiBbbmV3IGl0KG8sbixcIm9iamVjdCBzdG9wIGtleSBtdXN0IGhhdmUgdmFsdWVcIildO2lmKHMmJnM+T24oblswXS56b29tKSlyZXR1cm4gW25ldyBpdChvLG5bMF0uem9vbSxcInN0b3Agem9vbSB2YWx1ZXMgbXVzdCBhcHBlYXIgaW4gYXNjZW5kaW5nIG9yZGVyXCIpXTtPbihuWzBdLnpvb20pIT09cyYmKHM9T24oblswXS56b29tKSxpPXZvaWQgMCxhPXt9KSxyPXIuY29uY2F0KFJuKHtrZXk6YCR7b31bMF1gLHZhbHVlOm5bMF0sdmFsdWVTcGVjOnt6b29tOnt9fSx2YWxpZGF0ZVNwZWM6dC52YWxpZGF0ZVNwZWMsc3R5bGU6dC5zdHlsZSxzdHlsZVNwZWM6dC5zdHlsZVNwZWMsb2JqZWN0RWxlbWVudFZhbGlkYXRvcnM6e3pvb206cW4sdmFsdWU6cH19KSk7fWVsc2Ugcj1yLmNvbmNhdChwKHtrZXk6YCR7b31bMF1gLHZhbHVlOm5bMF0sdmFsdWVTcGVjOnt9LHZhbGlkYXRlU3BlYzp0LnZhbGlkYXRlU3BlYyxzdHlsZTp0LnN0eWxlLHN0eWxlU3BlYzp0LnN0eWxlU3BlY30sbikpO3JldHVybiB2bihqbihuWzFdKSk/ci5jb25jYXQoW25ldyBpdChgJHtvfVsxXWAsblsxXSxcImV4cHJlc3Npb25zIGFyZSBub3QgYWxsb3dlZCBpbiBmdW5jdGlvbiBzdG9wcy5cIildKTpyLmNvbmNhdCh0LnZhbGlkYXRlU3BlYyh7a2V5OmAke299WzFdYCx2YWx1ZTpuWzFdLHZhbHVlU3BlYzplLHZhbGlkYXRlU3BlYzp0LnZhbGlkYXRlU3BlYyxzdHlsZTp0LnN0eWxlLHN0eWxlU3BlYzp0LnN0eWxlU3BlY30pKX1mdW5jdGlvbiBwKHQscyl7Y29uc3Qgbz11bih0LnZhbHVlKSxsPU9uKHQudmFsdWUpLHU9bnVsbCE9PXQudmFsdWU/dC52YWx1ZTpzO2lmKG4pe2lmKG8hPT1uKXJldHVybiBbbmV3IGl0KHQua2V5LHUsYCR7b30gc3RvcCBkb21haW4gdHlwZSBtdXN0IG1hdGNoIHByZXZpb3VzIHN0b3AgZG9tYWluIHR5cGUgJHtufWApXX1lbHNlIG49bztpZihcIm51bWJlclwiIT09byYmXCJzdHJpbmdcIiE9PW8mJlwiYm9vbGVhblwiIT09bylyZXR1cm4gW25ldyBpdCh0LmtleSx1LFwic3RvcCBkb21haW4gdmFsdWUgbXVzdCBiZSBhIG51bWJlciwgc3RyaW5nLCBvciBib29sZWFuXCIpXTtpZihcIm51bWJlclwiIT09byYmXCJjYXRlZ29yaWNhbFwiIT09cil7bGV0IG49YG51bWJlciBleHBlY3RlZCwgJHtvfSBmb3VuZGA7cmV0dXJuIGFuKGUpJiZ2b2lkIDA9PT1yJiYobis9J1xcbklmIHlvdSBpbnRlbmRlZCB0byB1c2UgYSBjYXRlZ29yaWNhbCBmdW5jdGlvbiwgc3BlY2lmeSBgXCJ0eXBlXCI6IFwiY2F0ZWdvcmljYWxcImAuJyksW25ldyBpdCh0LmtleSx1LG4pXX1yZXR1cm4gXCJjYXRlZ29yaWNhbFwiIT09cnx8XCJudW1iZXJcIiE9PW98fGlzRmluaXRlKGwpJiZNYXRoLmZsb29yKGwpPT09bD9cImNhdGVnb3JpY2FsXCIhPT1yJiZcIm51bWJlclwiPT09byYmdm9pZCAwIT09aSYmbDxpP1tuZXcgaXQodC5rZXksdSxcInN0b3AgZG9tYWluIHZhbHVlcyBtdXN0IGFwcGVhciBpbiBhc2NlbmRpbmcgb3JkZXJcIildOihpPWwsXCJjYXRlZ29yaWNhbFwiPT09ciYmbCBpbiBhP1tuZXcgaXQodC5rZXksdSxcInN0b3AgZG9tYWluIHZhbHVlcyBtdXN0IGJlIHVuaXF1ZVwiKV06KGFbbF09ITAsW10pKTpbbmV3IGl0KHQua2V5LHUsYGludGVnZXIgZXhwZWN0ZWQsIGZvdW5kICR7bH1gKV19fWZ1bmN0aW9uIFpuKHQpe2NvbnN0IGU9KFwicHJvcGVydHlcIj09PXQuZXhwcmVzc2lvbkNvbnRleHQ/QW46Ym4pKGpuKHQudmFsdWUpLHQudmFsdWVTcGVjKTtpZihcImVycm9yXCI9PT1lLnJlc3VsdClyZXR1cm4gZS52YWx1ZS5tYXAoKGU9Pm5ldyBpdChgJHt0LmtleX0ke2Uua2V5fWAsdC52YWx1ZSxlLm1lc3NhZ2UpKSk7Y29uc3Qgcj1lLnZhbHVlLmV4cHJlc3Npb258fGUudmFsdWUuX3N0eWxlRXhwcmVzc2lvbi5leHByZXNzaW9uO2lmKFwicHJvcGVydHlcIj09PXQuZXhwcmVzc2lvbkNvbnRleHQmJlwidGV4dC1mb250XCI9PT10LnByb3BlcnR5S2V5JiYhci5vdXRwdXREZWZpbmVkKCkpcmV0dXJuIFtuZXcgaXQodC5rZXksdC52YWx1ZSxgSW52YWxpZCBkYXRhIGV4cHJlc3Npb24gZm9yIFwiJHt0LnByb3BlcnR5S2V5fVwiLiBPdXRwdXQgdmFsdWVzIG11c3QgYmUgY29udGFpbmVkIGFzIGxpdGVyYWxzIHdpdGhpbiB0aGUgZXhwcmVzc2lvbi5gKV07aWYoXCJwcm9wZXJ0eVwiPT09dC5leHByZXNzaW9uQ29udGV4dCYmXCJsYXlvdXRcIj09PXQucHJvcGVydHlUeXBlJiYhZW4ocikpcmV0dXJuIFtuZXcgaXQodC5rZXksdC52YWx1ZSwnXCJmZWF0dXJlLXN0YXRlXCIgZGF0YSBleHByZXNzaW9ucyBhcmUgbm90IHN1cHBvcnRlZCB3aXRoIGxheW91dCBwcm9wZXJ0aWVzLicpXTtpZihcImZpbHRlclwiPT09dC5leHByZXNzaW9uQ29udGV4dCYmIWVuKHIpKXJldHVybiBbbmV3IGl0KHQua2V5LHQudmFsdWUsJ1wiZmVhdHVyZS1zdGF0ZVwiIGRhdGEgZXhwcmVzc2lvbnMgYXJlIG5vdCBzdXBwb3J0ZWQgd2l0aCBmaWx0ZXJzLicpXTtpZih0LmV4cHJlc3Npb25Db250ZXh0JiYwPT09dC5leHByZXNzaW9uQ29udGV4dC5pbmRleE9mKFwiY2x1c3RlclwiKSl7aWYoIXJuKHIsW1wiem9vbVwiLFwiZmVhdHVyZS1zdGF0ZVwiXSkpcmV0dXJuIFtuZXcgaXQodC5rZXksdC52YWx1ZSwnXCJ6b29tXCIgYW5kIFwiZmVhdHVyZS1zdGF0ZVwiIGV4cHJlc3Npb25zIGFyZSBub3Qgc3VwcG9ydGVkIHdpdGggY2x1c3RlciBwcm9wZXJ0aWVzLicpXTtpZihcImNsdXN0ZXItaW5pdGlhbFwiPT09dC5leHByZXNzaW9uQ29udGV4dCYmIXRuKHIpKXJldHVybiBbbmV3IGl0KHQua2V5LHQudmFsdWUsXCJGZWF0dXJlIGRhdGEgZXhwcmVzc2lvbnMgYXJlIG5vdCBzdXBwb3J0ZWQgd2l0aCBpbml0aWFsIGV4cHJlc3Npb24gcGFydCBvZiBjbHVzdGVyIHByb3BlcnRpZXMuXCIpXX1yZXR1cm4gW119ZnVuY3Rpb24gR24odCl7Y29uc3QgZT10LmtleSxyPXQudmFsdWUsbj10LnZhbHVlU3BlYyxpPVtdO3JldHVybiBBcnJheS5pc0FycmF5KG4udmFsdWVzKT8tMT09PW4udmFsdWVzLmluZGV4T2YoT24ocikpJiZpLnB1c2gobmV3IGl0KGUscixgZXhwZWN0ZWQgb25lIG9mIFske24udmFsdWVzLmpvaW4oXCIsIFwiKX1dLCAke0pTT04uc3RyaW5naWZ5KHIpfSBmb3VuZGApKTotMT09PU9iamVjdC5rZXlzKG4udmFsdWVzKS5pbmRleE9mKE9uKHIpKSYmaS5wdXNoKG5ldyBpdChlLHIsYGV4cGVjdGVkIG9uZSBvZiBbJHtPYmplY3Qua2V5cyhuLnZhbHVlcykuam9pbihcIiwgXCIpfV0sICR7SlNPTi5zdHJpbmdpZnkocil9IGZvdW5kYCkpLGl9ZnVuY3Rpb24gS24odCl7cmV0dXJuIE1uKGpuKHQudmFsdWUpKT9abihzdCh7fSx0LHtleHByZXNzaW9uQ29udGV4dDpcImZpbHRlclwiLHZhbHVlU3BlYzp7dmFsdWU6XCJib29sZWFuXCJ9fSkpOlhuKHQpfWZ1bmN0aW9uIFhuKHQpe2NvbnN0IGU9dC52YWx1ZSxyPXQua2V5O2lmKFwiYXJyYXlcIiE9PXVuKGUpKXJldHVybiBbbmV3IGl0KHIsZSxgYXJyYXkgZXhwZWN0ZWQsICR7dW4oZSl9IGZvdW5kYCldO2NvbnN0IG49dC5zdHlsZVNwZWM7bGV0IGkscz1bXTtpZihlLmxlbmd0aDwxKXJldHVybiBbbmV3IGl0KHIsZSxcImZpbHRlciBhcnJheSBtdXN0IGhhdmUgYXQgbGVhc3QgMSBlbGVtZW50XCIpXTtzd2l0Y2gocz1zLmNvbmNhdChHbih7a2V5OmAke3J9WzBdYCx2YWx1ZTplWzBdLHZhbHVlU3BlYzpuLmZpbHRlcl9vcGVyYXRvcixzdHlsZTp0LnN0eWxlLHN0eWxlU3BlYzp0LnN0eWxlU3BlY30pKSxPbihlWzBdKSl7Y2FzZVwiPFwiOmNhc2VcIjw9XCI6Y2FzZVwiPlwiOmNhc2VcIj49XCI6ZS5sZW5ndGg+PTImJlwiJHR5cGVcIj09PU9uKGVbMV0pJiZzLnB1c2gobmV3IGl0KHIsZSxgXCIkdHlwZVwiIGNhbm5vdCBiZSB1c2Ugd2l0aCBvcGVyYXRvciBcIiR7ZVswXX1cImApKTtjYXNlXCI9PVwiOmNhc2VcIiE9XCI6MyE9PWUubGVuZ3RoJiZzLnB1c2gobmV3IGl0KHIsZSxgZmlsdGVyIGFycmF5IGZvciBvcGVyYXRvciBcIiR7ZVswXX1cIiBtdXN0IGhhdmUgMyBlbGVtZW50c2ApKTtjYXNlXCJpblwiOmNhc2VcIiFpblwiOmUubGVuZ3RoPj0yJiYoaT11bihlWzFdKSxcInN0cmluZ1wiIT09aSYmcy5wdXNoKG5ldyBpdChgJHtyfVsxXWAsZVsxXSxgc3RyaW5nIGV4cGVjdGVkLCAke2l9IGZvdW5kYCkpKTtmb3IobGV0IGE9MjthPGUubGVuZ3RoO2ErKylpPXVuKGVbYV0pLFwiJHR5cGVcIj09PU9uKGVbMV0pP3M9cy5jb25jYXQoR24oe2tleTpgJHtyfVske2F9XWAsdmFsdWU6ZVthXSx2YWx1ZVNwZWM6bi5nZW9tZXRyeV90eXBlLHN0eWxlOnQuc3R5bGUsc3R5bGVTcGVjOnQuc3R5bGVTcGVjfSkpOlwic3RyaW5nXCIhPT1pJiZcIm51bWJlclwiIT09aSYmXCJib29sZWFuXCIhPT1pJiZzLnB1c2gobmV3IGl0KGAke3J9WyR7YX1dYCxlW2FdLGBzdHJpbmcsIG51bWJlciwgb3IgYm9vbGVhbiBleHBlY3RlZCwgJHtpfSBmb3VuZGApKTticmVhaztjYXNlXCJhbnlcIjpjYXNlXCJhbGxcIjpjYXNlXCJub25lXCI6Zm9yKGxldCBuPTE7bjxlLmxlbmd0aDtuKyspcz1zLmNvbmNhdChYbih7a2V5OmAke3J9WyR7bn1dYCx2YWx1ZTplW25dLHN0eWxlOnQuc3R5bGUsc3R5bGVTcGVjOnQuc3R5bGVTcGVjfSkpO2JyZWFrO2Nhc2VcImhhc1wiOmNhc2VcIiFoYXNcIjppPXVuKGVbMV0pLDIhPT1lLmxlbmd0aD9zLnB1c2gobmV3IGl0KHIsZSxgZmlsdGVyIGFycmF5IGZvciBcIiR7ZVswXX1cIiBvcGVyYXRvciBtdXN0IGhhdmUgMiBlbGVtZW50c2ApKTpcInN0cmluZ1wiIT09aSYmcy5wdXNoKG5ldyBpdChgJHtyfVsxXWAsZVsxXSxgc3RyaW5nIGV4cGVjdGVkLCAke2l9IGZvdW5kYCkpO31yZXR1cm4gc31mdW5jdGlvbiBIbih0LGUpe2NvbnN0IHI9dC5rZXksbj10LnZhbGlkYXRlU3BlYyxpPXQuc3R5bGUscz10LnN0eWxlU3BlYyxhPXQudmFsdWUsbz10Lm9iamVjdEtleSxsPXNbYCR7ZX1fJHt0LmxheWVyVHlwZX1gXTtpZighbClyZXR1cm4gW107Y29uc3QgdT1vLm1hdGNoKC9eKC4qKS10cmFuc2l0aW9uJC8pO2lmKFwicGFpbnRcIj09PWUmJnUmJmxbdVsxXV0mJmxbdVsxXV0udHJhbnNpdGlvbilyZXR1cm4gbih7a2V5OnIsdmFsdWU6YSx2YWx1ZVNwZWM6cy50cmFuc2l0aW9uLHN0eWxlOmksc3R5bGVTcGVjOnN9KTtjb25zdCBjPXQudmFsdWVTcGVjfHxsW29dO2lmKCFjKXJldHVybiBbbmV3IGl0KHIsYSxgdW5rbm93biBwcm9wZXJ0eSBcIiR7b31cImApXTtsZXQgaDtpZihcInN0cmluZ1wiPT09dW4oYSkmJmFuKGMpJiYhYy50b2tlbnMmJihoPS9eeyhbXn1dKyl9JC8uZXhlYyhhKSkpcmV0dXJuIFtuZXcgaXQocixhLGBcIiR7b31cIiBkb2VzIG5vdCBzdXBwb3J0IGludGVycG9sYXRpb24gc3ludGF4XFxuVXNlIGFuIGlkZW50aXR5IHByb3BlcnR5IGZ1bmN0aW9uIGluc3RlYWQ6IFxcYHsgXCJ0eXBlXCI6IFwiaWRlbnRpdHlcIiwgXCJwcm9wZXJ0eVwiOiAke0pTT04uc3RyaW5naWZ5KGhbMV0pfSB9XFxgLmApXTtjb25zdCBwPVtdO3JldHVybiBcInN5bWJvbFwiPT09dC5sYXllclR5cGUmJihcInRleHQtZmllbGRcIj09PW8mJmkmJiFpLmdseXBocyYmcC5wdXNoKG5ldyBpdChyLGEsJ3VzZSBvZiBcInRleHQtZmllbGRcIiByZXF1aXJlcyBhIHN0eWxlIFwiZ2x5cGhzXCIgcHJvcGVydHknKSksXCJ0ZXh0LWZvbnRcIj09PW8mJmNuKGpuKGEpKSYmXCJpZGVudGl0eVwiPT09T24oYS50eXBlKSYmcC5wdXNoKG5ldyBpdChyLGEsJ1widGV4dC1mb250XCIgZG9lcyBub3Qgc3VwcG9ydCBpZGVudGl0eSBmdW5jdGlvbnMnKSkpLHAuY29uY2F0KG4oe2tleTp0LmtleSx2YWx1ZTphLHZhbHVlU3BlYzpjLHN0eWxlOmksc3R5bGVTcGVjOnMsZXhwcmVzc2lvbkNvbnRleHQ6XCJwcm9wZXJ0eVwiLHByb3BlcnR5VHlwZTplLHByb3BlcnR5S2V5Om99KSl9ZnVuY3Rpb24gWW4odCl7cmV0dXJuIEhuKHQsXCJwYWludFwiKX1mdW5jdGlvbiBKbih0KXtyZXR1cm4gSG4odCxcImxheW91dFwiKX1mdW5jdGlvbiBXbih0KXtsZXQgZT1bXTtjb25zdCByPXQudmFsdWUsbj10LmtleSxpPXQuc3R5bGUscz10LnN0eWxlU3BlYztyLnR5cGV8fHIucmVmfHxlLnB1c2gobmV3IGl0KG4sciwnZWl0aGVyIFwidHlwZVwiIG9yIFwicmVmXCIgaXMgcmVxdWlyZWQnKSk7bGV0IGE9T24oci50eXBlKTtjb25zdCBvPU9uKHIucmVmKTtpZihyLmlkKXtjb25zdCBzPU9uKHIuaWQpO2ZvcihsZXQgYT0wO2E8dC5hcnJheUluZGV4O2ErKyl7Y29uc3QgdD1pLmxheWVyc1thXTtPbih0LmlkKT09PXMmJmUucHVzaChuZXcgaXQobixyLmlkLGBkdXBsaWNhdGUgbGF5ZXIgaWQgXCIke3IuaWR9XCIsIHByZXZpb3VzbHkgdXNlZCBhdCBsaW5lICR7dC5pZC5fX2xpbmVfX31gKSk7fX1pZihcInJlZlwiaW4gcil7bGV0IHQ7W1widHlwZVwiLFwic291cmNlXCIsXCJzb3VyY2UtbGF5ZXJcIixcImZpbHRlclwiLFwibGF5b3V0XCJdLmZvckVhY2goKHQ9Pnt0IGluIHImJmUucHVzaChuZXcgaXQobixyW3RdLGBcIiR7dH1cIiBpcyBwcm9oaWJpdGVkIGZvciByZWYgbGF5ZXJzYCkpO30pKSxpLmxheWVycy5mb3JFYWNoKChlPT57T24oZS5pZCk9PT1vJiYodD1lKTt9KSksdD90LnJlZj9lLnB1c2gobmV3IGl0KG4sci5yZWYsXCJyZWYgY2Fubm90IHJlZmVyZW5jZSBhbm90aGVyIHJlZiBsYXllclwiKSk6YT1Pbih0LnR5cGUpOmUucHVzaChuZXcgaXQobixyLnJlZixgcmVmIGxheWVyIFwiJHtvfVwiIG5vdCBmb3VuZGApKTt9ZWxzZSBpZihcImJhY2tncm91bmRcIiE9PWEpaWYoci5zb3VyY2Upe2NvbnN0IHQ9aS5zb3VyY2VzJiZpLnNvdXJjZXNbci5zb3VyY2VdLHM9dCYmT24odC50eXBlKTt0P1widmVjdG9yXCI9PT1zJiZcInJhc3RlclwiPT09YT9lLnB1c2gobmV3IGl0KG4sci5zb3VyY2UsYGxheWVyIFwiJHtyLmlkfVwiIHJlcXVpcmVzIGEgcmFzdGVyIHNvdXJjZWApKTpcInJhc3Rlci1kZW1cIiE9PXMmJlwiaGlsbHNoYWRlXCI9PT1hP2UucHVzaChuZXcgaXQobixyLnNvdXJjZSxgbGF5ZXIgXCIke3IuaWR9XCIgcmVxdWlyZXMgYSByYXN0ZXItZGVtIHNvdXJjZWApKTpcInJhc3RlclwiPT09cyYmXCJyYXN0ZXJcIiE9PWE/ZS5wdXNoKG5ldyBpdChuLHIuc291cmNlLGBsYXllciBcIiR7ci5pZH1cIiByZXF1aXJlcyBhIHZlY3RvciBzb3VyY2VgKSk6XCJ2ZWN0b3JcIiE9PXN8fHJbXCJzb3VyY2UtbGF5ZXJcIl0/XCJyYXN0ZXItZGVtXCI9PT1zJiZcImhpbGxzaGFkZVwiIT09YT9lLnB1c2gobmV3IGl0KG4sci5zb3VyY2UsXCJyYXN0ZXItZGVtIHNvdXJjZSBjYW4gb25seSBiZSB1c2VkIHdpdGggbGF5ZXIgdHlwZSAnaGlsbHNoYWRlJy5cIikpOlwibGluZVwiIT09YXx8IXIucGFpbnR8fCFyLnBhaW50W1wibGluZS1ncmFkaWVudFwiXXx8XCJnZW9qc29uXCI9PT1zJiZ0LmxpbmVNZXRyaWNzfHxlLnB1c2gobmV3IGl0KG4scixgbGF5ZXIgXCIke3IuaWR9XCIgc3BlY2lmaWVzIGEgbGluZS1ncmFkaWVudCwgd2hpY2ggcmVxdWlyZXMgYSBHZW9KU09OIHNvdXJjZSB3aXRoIFxcYGxpbmVNZXRyaWNzXFxgIGVuYWJsZWQuYCkpOmUucHVzaChuZXcgaXQobixyLGBsYXllciBcIiR7ci5pZH1cIiBtdXN0IHNwZWNpZnkgYSBcInNvdXJjZS1sYXllclwiYCkpOmUucHVzaChuZXcgaXQobixyLnNvdXJjZSxgc291cmNlIFwiJHtyLnNvdXJjZX1cIiBub3QgZm91bmRgKSk7fWVsc2UgZS5wdXNoKG5ldyBpdChuLHIsJ21pc3NpbmcgcmVxdWlyZWQgcHJvcGVydHkgXCJzb3VyY2VcIicpKTtyZXR1cm4gZT1lLmNvbmNhdChSbih7a2V5Om4sdmFsdWU6cix2YWx1ZVNwZWM6cy5sYXllcixzdHlsZTp0LnN0eWxlLHN0eWxlU3BlYzp0LnN0eWxlU3BlYyx2YWxpZGF0ZVNwZWM6dC52YWxpZGF0ZVNwZWMsb2JqZWN0RWxlbWVudFZhbGlkYXRvcnM6e1wiKlwiOigpPT5bXSx0eXBlOigpPT50LnZhbGlkYXRlU3BlYyh7a2V5OmAke259LnR5cGVgLHZhbHVlOnIudHlwZSx2YWx1ZVNwZWM6cy5sYXllci50eXBlLHN0eWxlOnQuc3R5bGUsc3R5bGVTcGVjOnQuc3R5bGVTcGVjLHZhbGlkYXRlU3BlYzp0LnZhbGlkYXRlU3BlYyxvYmplY3Q6cixvYmplY3RLZXk6XCJ0eXBlXCJ9KSxmaWx0ZXI6S24sbGF5b3V0OnQ9PlJuKHtsYXllcjpyLGtleTp0LmtleSx2YWx1ZTp0LnZhbHVlLHN0eWxlOnQuc3R5bGUsc3R5bGVTcGVjOnQuc3R5bGVTcGVjLHZhbGlkYXRlU3BlYzp0LnZhbGlkYXRlU3BlYyxvYmplY3RFbGVtZW50VmFsaWRhdG9yczp7XCIqXCI6dD0+Sm4oc3Qoe2xheWVyVHlwZTphfSx0KSl9fSkscGFpbnQ6dD0+Um4oe2xheWVyOnIsa2V5OnQua2V5LHZhbHVlOnQudmFsdWUsc3R5bGU6dC5zdHlsZSxzdHlsZVNwZWM6dC5zdHlsZVNwZWMsdmFsaWRhdGVTcGVjOnQudmFsaWRhdGVTcGVjLG9iamVjdEVsZW1lbnRWYWxpZGF0b3JzOntcIipcIjp0PT5ZbihzdCh7bGF5ZXJUeXBlOmF9LHQpKX19KX19KSksZX1mdW5jdGlvbiBRbih0KXtjb25zdCBlPXQudmFsdWUscj10LmtleSxuPXVuKGUpO3JldHVybiBcInN0cmluZ1wiIT09bj9bbmV3IGl0KHIsZSxgc3RyaW5nIGV4cGVjdGVkLCAke259IGZvdW5kYCldOltdfWNvbnN0IHRpPXtwcm9tb3RlSWQ6ZnVuY3Rpb24oe2tleTp0LHZhbHVlOmV9KXtpZihcInN0cmluZ1wiPT09dW4oZSkpcmV0dXJuIFFuKHtrZXk6dCx2YWx1ZTplfSk7e2NvbnN0IHI9W107Zm9yKGNvbnN0IG4gaW4gZSlyLnB1c2goLi4uUW4oe2tleTpgJHt0fS4ke259YCx2YWx1ZTplW25dfSkpO3JldHVybiByfX19O2Z1bmN0aW9uIGVpKHQpe2NvbnN0IGU9dC52YWx1ZSxyPXQua2V5LG49dC5zdHlsZVNwZWMsaT10LnN0eWxlLHM9dC52YWxpZGF0ZVNwZWM7aWYoIWUudHlwZSlyZXR1cm4gW25ldyBpdChyLGUsJ1widHlwZVwiIGlzIHJlcXVpcmVkJyldO2NvbnN0IGE9T24oZS50eXBlKTtsZXQgbztzd2l0Y2goYSl7Y2FzZVwidmVjdG9yXCI6Y2FzZVwicmFzdGVyXCI6cmV0dXJuIG89Um4oe2tleTpyLHZhbHVlOmUsdmFsdWVTcGVjOm5bYHNvdXJjZV8ke2EucmVwbGFjZShcIi1cIixcIl9cIil9YF0sc3R5bGU6dC5zdHlsZSxzdHlsZVNwZWM6bixvYmplY3RFbGVtZW50VmFsaWRhdG9yczp0aSx2YWxpZGF0ZVNwZWM6c30pLG87Y2FzZVwicmFzdGVyLWRlbVwiOnJldHVybiBvPWZ1bmN0aW9uKHQpe3ZhciBlO2NvbnN0IHI9bnVsbCE9PShlPXQuc291cmNlTmFtZSkmJnZvaWQgMCE9PWU/ZTpcIlwiLG49dC52YWx1ZSxpPXQuc3R5bGVTcGVjLHM9aS5zb3VyY2VfcmFzdGVyX2RlbSxhPXQuc3R5bGU7bGV0IG89W107Y29uc3QgbD11bihuKTtpZih2b2lkIDA9PT1uKXJldHVybiBvO2lmKFwib2JqZWN0XCIhPT1sKXJldHVybiBvLnB1c2gobmV3IGl0KFwic291cmNlX3Jhc3Rlcl9kZW1cIixuLGBvYmplY3QgZXhwZWN0ZWQsICR7bH0gZm91bmRgKSksbztjb25zdCB1PVwiY3VzdG9tXCI9PT1PbihuLmVuY29kaW5nKSxjPVtcInJlZEZhY3RvclwiLFwiZ3JlZW5GYWN0b3JcIixcImJsdWVGYWN0b3JcIixcImJhc2VTaGlmdFwiXSxoPXQudmFsdWUuZW5jb2Rpbmc/YFwiJHt0LnZhbHVlLmVuY29kaW5nfVwiYDpcIkRlZmF1bHRcIjtmb3IoY29uc3QgZSBpbiBuKSF1JiZjLmluY2x1ZGVzKGUpP28ucHVzaChuZXcgaXQoZSxuW2VdLGBJbiBcIiR7cn1cIjogXCIke2V9XCIgaXMgb25seSB2YWxpZCB3aGVuIFwiZW5jb2RpbmdcIiBpcyBzZXQgdG8gXCJjdXN0b21cIi4gJHtofSBlbmNvZGluZyBmb3VuZGApKTpzW2VdP289by5jb25jYXQodC52YWxpZGF0ZVNwZWMoe2tleTplLHZhbHVlOm5bZV0sdmFsdWVTcGVjOnNbZV0sdmFsaWRhdGVTcGVjOnQudmFsaWRhdGVTcGVjLHN0eWxlOmEsc3R5bGVTcGVjOml9KSk6by5wdXNoKG5ldyBpdChlLG5bZV0sYHVua25vd24gcHJvcGVydHkgXCIke2V9XCJgKSk7cmV0dXJuIG99KHtzb3VyY2VOYW1lOnIsdmFsdWU6ZSxzdHlsZTp0LnN0eWxlLHN0eWxlU3BlYzpuLHZhbGlkYXRlU3BlYzpzfSksbztjYXNlXCJnZW9qc29uXCI6aWYobz1Sbih7a2V5OnIsdmFsdWU6ZSx2YWx1ZVNwZWM6bi5zb3VyY2VfZ2VvanNvbixzdHlsZTppLHN0eWxlU3BlYzpuLHZhbGlkYXRlU3BlYzpzLG9iamVjdEVsZW1lbnRWYWxpZGF0b3JzOnRpfSksZS5jbHVzdGVyKWZvcihjb25zdCB0IGluIGUuY2x1c3RlclByb3BlcnRpZXMpe2NvbnN0W24saV09ZS5jbHVzdGVyUHJvcGVydGllc1t0XSxhPVwic3RyaW5nXCI9PXR5cGVvZiBuP1tuLFtcImFjY3VtdWxhdGVkXCJdLFtcImdldFwiLHRdXTpuO28ucHVzaCguLi5abih7a2V5OmAke3J9LiR7dH0ubWFwYCx2YWx1ZTppLHZhbGlkYXRlU3BlYzpzLGV4cHJlc3Npb25Db250ZXh0OlwiY2x1c3Rlci1tYXBcIn0pKSxvLnB1c2goLi4uWm4oe2tleTpgJHtyfS4ke3R9LnJlZHVjZWAsdmFsdWU6YSx2YWxpZGF0ZVNwZWM6cyxleHByZXNzaW9uQ29udGV4dDpcImNsdXN0ZXItcmVkdWNlXCJ9KSk7fXJldHVybiBvO2Nhc2VcInZpZGVvXCI6cmV0dXJuIFJuKHtrZXk6cix2YWx1ZTplLHZhbHVlU3BlYzpuLnNvdXJjZV92aWRlbyxzdHlsZTppLHZhbGlkYXRlU3BlYzpzLHN0eWxlU3BlYzpufSk7Y2FzZVwiaW1hZ2VcIjpyZXR1cm4gUm4oe2tleTpyLHZhbHVlOmUsdmFsdWVTcGVjOm4uc291cmNlX2ltYWdlLHN0eWxlOmksdmFsaWRhdGVTcGVjOnMsc3R5bGVTcGVjOm59KTtjYXNlXCJjYW52YXNcIjpyZXR1cm4gW25ldyBpdChyLG51bGwsXCJQbGVhc2UgdXNlIHJ1bnRpbWUgQVBJcyB0byBhZGQgY2FudmFzIHNvdXJjZXMsIHJhdGhlciB0aGFuIGluY2x1ZGluZyB0aGVtIGluIHN0eWxlc2hlZXRzLlwiLFwic291cmNlLmNhbnZhc1wiKV07ZGVmYXVsdDpyZXR1cm4gR24oe2tleTpgJHtyfS50eXBlYCx2YWx1ZTplLnR5cGUsdmFsdWVTcGVjOnt2YWx1ZXM6W1widmVjdG9yXCIsXCJyYXN0ZXJcIixcInJhc3Rlci1kZW1cIixcImdlb2pzb25cIixcInZpZGVvXCIsXCJpbWFnZVwiXX0sc3R5bGU6aSx2YWxpZGF0ZVNwZWM6cyxzdHlsZVNwZWM6bn0pfX1mdW5jdGlvbiByaSh0KXtjb25zdCBlPXQudmFsdWUscj10LnN0eWxlU3BlYyxuPXIubGlnaHQsaT10LnN0eWxlO2xldCBzPVtdO2NvbnN0IGE9dW4oZSk7aWYodm9pZCAwPT09ZSlyZXR1cm4gcztpZihcIm9iamVjdFwiIT09YSlyZXR1cm4gcz1zLmNvbmNhdChbbmV3IGl0KFwibGlnaHRcIixlLGBvYmplY3QgZXhwZWN0ZWQsICR7YX0gZm91bmRgKV0pLHM7Zm9yKGNvbnN0IGEgaW4gZSl7Y29uc3Qgbz1hLm1hdGNoKC9eKC4qKS10cmFuc2l0aW9uJC8pO3M9cy5jb25jYXQobyYmbltvWzFdXSYmbltvWzFdXS50cmFuc2l0aW9uP3QudmFsaWRhdGVTcGVjKHtrZXk6YSx2YWx1ZTplW2FdLHZhbHVlU3BlYzpyLnRyYW5zaXRpb24sdmFsaWRhdGVTcGVjOnQudmFsaWRhdGVTcGVjLHN0eWxlOmksc3R5bGVTcGVjOnJ9KTpuW2FdP3QudmFsaWRhdGVTcGVjKHtrZXk6YSx2YWx1ZTplW2FdLHZhbHVlU3BlYzpuW2FdLHZhbGlkYXRlU3BlYzp0LnZhbGlkYXRlU3BlYyxzdHlsZTppLHN0eWxlU3BlYzpyfSk6W25ldyBpdChhLGVbYV0sYHVua25vd24gcHJvcGVydHkgXCIke2F9XCJgKV0pO31yZXR1cm4gc31mdW5jdGlvbiBuaSh0KXtjb25zdCBlPXQudmFsdWUscj10LnN0eWxlU3BlYyxuPXIuc2t5LGk9dC5zdHlsZSxzPXVuKGUpO2lmKHZvaWQgMD09PWUpcmV0dXJuIFtdO2lmKFwib2JqZWN0XCIhPT1zKXJldHVybiBbbmV3IGl0KFwic2t5XCIsZSxgb2JqZWN0IGV4cGVjdGVkLCAke3N9IGZvdW5kYCldO2xldCBhPVtdO2Zvcihjb25zdCBzIGluIGUpYT1hLmNvbmNhdChuW3NdP3QudmFsaWRhdGVTcGVjKHtrZXk6cyx2YWx1ZTplW3NdLHZhbHVlU3BlYzpuW3NdLHN0eWxlOmksc3R5bGVTcGVjOnJ9KTpbbmV3IGl0KHMsZVtzXSxgdW5rbm93biBwcm9wZXJ0eSBcIiR7c31cImApXSk7cmV0dXJuIGF9ZnVuY3Rpb24gaWkodCl7Y29uc3QgZT10LnZhbHVlLHI9dC5zdHlsZVNwZWMsbj1yLnRlcnJhaW4saT10LnN0eWxlO2xldCBzPVtdO2NvbnN0IGE9dW4oZSk7aWYodm9pZCAwPT09ZSlyZXR1cm4gcztpZihcIm9iamVjdFwiIT09YSlyZXR1cm4gcz1zLmNvbmNhdChbbmV3IGl0KFwidGVycmFpblwiLGUsYG9iamVjdCBleHBlY3RlZCwgJHthfSBmb3VuZGApXSkscztmb3IoY29uc3QgYSBpbiBlKXM9cy5jb25jYXQoblthXT90LnZhbGlkYXRlU3BlYyh7a2V5OmEsdmFsdWU6ZVthXSx2YWx1ZVNwZWM6blthXSx2YWxpZGF0ZVNwZWM6dC52YWxpZGF0ZVNwZWMsc3R5bGU6aSxzdHlsZVNwZWM6cn0pOltuZXcgaXQoYSxlW2FdLGB1bmtub3duIHByb3BlcnR5IFwiJHthfVwiYCldKTtyZXR1cm4gc31mdW5jdGlvbiBzaSh0KXtsZXQgZT1bXTtjb25zdCByPXQudmFsdWUsbj10LmtleTtpZihBcnJheS5pc0FycmF5KHIpKXtjb25zdCBpPVtdLHM9W107Zm9yKGNvbnN0IGEgaW4gcilyW2FdLmlkJiZpLmluY2x1ZGVzKHJbYV0uaWQpJiZlLnB1c2gobmV3IGl0KG4scixgYWxsIHRoZSBzcHJpdGVzJyBpZHMgbXVzdCBiZSB1bmlxdWUsIGJ1dCAke3JbYV0uaWR9IGlzIGR1cGxpY2F0ZWRgKSksaS5wdXNoKHJbYV0uaWQpLHJbYV0udXJsJiZzLmluY2x1ZGVzKHJbYV0udXJsKSYmZS5wdXNoKG5ldyBpdChuLHIsYGFsbCB0aGUgc3ByaXRlcycgVVJMcyBtdXN0IGJlIHVuaXF1ZSwgYnV0ICR7clthXS51cmx9IGlzIGR1cGxpY2F0ZWRgKSkscy5wdXNoKHJbYV0udXJsKSxlPWUuY29uY2F0KFJuKHtrZXk6YCR7bn1bJHthfV1gLHZhbHVlOnJbYV0sdmFsdWVTcGVjOntpZDp7dHlwZTpcInN0cmluZ1wiLHJlcXVpcmVkOiEwfSx1cmw6e3R5cGU6XCJzdHJpbmdcIixyZXF1aXJlZDohMH19LHZhbGlkYXRlU3BlYzp0LnZhbGlkYXRlU3BlY30pKTtyZXR1cm4gZX1yZXR1cm4gUW4oe2tleTpuLHZhbHVlOnJ9KX1jb25zdCBhaT17XCIqXCI6KCk9PltdLGFycmF5OlVuLGJvb2xlYW46ZnVuY3Rpb24odCl7Y29uc3QgZT10LnZhbHVlLHI9dC5rZXksbj11bihlKTtyZXR1cm4gXCJib29sZWFuXCIhPT1uP1tuZXcgaXQocixlLGBib29sZWFuIGV4cGVjdGVkLCAke259IGZvdW5kYCldOltdfSxudW1iZXI6cW4sY29sb3I6ZnVuY3Rpb24odCl7Y29uc3QgZT10LmtleSxyPXQudmFsdWUsbj11bihyKTtyZXR1cm4gXCJzdHJpbmdcIiE9PW4/W25ldyBpdChlLHIsYGNvbG9yIGV4cGVjdGVkLCAke259IGZvdW5kYCldOkt0LnBhcnNlKFN0cmluZyhyKSk/W106W25ldyBpdChlLHIsYGNvbG9yIGV4cGVjdGVkLCBcIiR7cn1cIiBmb3VuZGApXX0sY29uc3RhbnRzOkRuLGVudW06R24sZmlsdGVyOktuLGZ1bmN0aW9uOk5uLGxheWVyOlduLG9iamVjdDpSbixzb3VyY2U6ZWksbGlnaHQ6cmksc2t5Om5pLHRlcnJhaW46aWkscHJvamVjdGlvbjpmdW5jdGlvbih0KXtjb25zdCBlPXQudmFsdWUscj10LnN0eWxlU3BlYyxuPXIucHJvamVjdGlvbixpPXQuc3R5bGUscz11bihlKTtpZih2b2lkIDA9PT1lKXJldHVybiBbXTtpZihcIm9iamVjdFwiIT09cylyZXR1cm4gW25ldyBpdChcInByb2plY3Rpb25cIixlLGBvYmplY3QgZXhwZWN0ZWQsICR7c30gZm91bmRgKV07bGV0IGE9W107Zm9yKGNvbnN0IHMgaW4gZSlhPWEuY29uY2F0KG5bc10/dC52YWxpZGF0ZVNwZWMoe2tleTpzLHZhbHVlOmVbc10sdmFsdWVTcGVjOm5bc10sc3R5bGU6aSxzdHlsZVNwZWM6cn0pOltuZXcgaXQocyxlW3NdLGB1bmtub3duIHByb3BlcnR5IFwiJHtzfVwiYCldKTtyZXR1cm4gYX0sc3RyaW5nOlFuLGZvcm1hdHRlZDpmdW5jdGlvbih0KXtyZXR1cm4gMD09PVFuKHQpLmxlbmd0aD9bXTpabih0KX0scmVzb2x2ZWRJbWFnZTpmdW5jdGlvbih0KXtyZXR1cm4gMD09PVFuKHQpLmxlbmd0aD9bXTpabih0KX0scGFkZGluZzpmdW5jdGlvbih0KXtjb25zdCBlPXQua2V5LHI9dC52YWx1ZTtpZihcImFycmF5XCI9PT11bihyKSl7aWYoci5sZW5ndGg8MXx8ci5sZW5ndGg+NClyZXR1cm4gW25ldyBpdChlLHIsYHBhZGRpbmcgcmVxdWlyZXMgMSB0byA0IHZhbHVlczsgJHtyLmxlbmd0aH0gdmFsdWVzIGZvdW5kYCldO2NvbnN0IG49e3R5cGU6XCJudW1iZXJcIn07bGV0IGk9W107Zm9yKGxldCBzPTA7czxyLmxlbmd0aDtzKyspaT1pLmNvbmNhdCh0LnZhbGlkYXRlU3BlYyh7a2V5OmAke2V9WyR7c31dYCx2YWx1ZTpyW3NdLHZhbGlkYXRlU3BlYzp0LnZhbGlkYXRlU3BlYyx2YWx1ZVNwZWM6bn0pKTtyZXR1cm4gaX1yZXR1cm4gcW4oe2tleTplLHZhbHVlOnIsdmFsdWVTcGVjOnt9fSl9LHZhcmlhYmxlQW5jaG9yT2Zmc2V0Q29sbGVjdGlvbjpmdW5jdGlvbih0KXtjb25zdCBlPXQua2V5LHI9dC52YWx1ZSxuPXVuKHIpLGk9dC5zdHlsZVNwZWM7aWYoXCJhcnJheVwiIT09bnx8ci5sZW5ndGg8MXx8ci5sZW5ndGglMiE9MClyZXR1cm4gW25ldyBpdChlLHIsXCJ2YXJpYWJsZUFuY2hvck9mZnNldENvbGxlY3Rpb24gcmVxdWlyZXMgYSBub24tZW1wdHkgYXJyYXkgb2YgZXZlbiBsZW5ndGhcIildO2xldCBzPVtdO2ZvcihsZXQgbj0wO248ci5sZW5ndGg7bis9MilzPXMuY29uY2F0KEduKHtrZXk6YCR7ZX1bJHtufV1gLHZhbHVlOnJbbl0sdmFsdWVTcGVjOmkubGF5b3V0X3N5bWJvbFtcInRleHQtYW5jaG9yXCJdfSkpLHM9cy5jb25jYXQoVW4oe2tleTpgJHtlfVske24rMX1dYCx2YWx1ZTpyW24rMV0sdmFsdWVTcGVjOntsZW5ndGg6Mix2YWx1ZTpcIm51bWJlclwifSx2YWxpZGF0ZVNwZWM6dC52YWxpZGF0ZVNwZWMsc3R5bGU6dC5zdHlsZSxzdHlsZVNwZWM6aX0pKTtyZXR1cm4gc30sc3ByaXRlOnNpfTtmdW5jdGlvbiBvaSh0KXtjb25zdCBlPXQudmFsdWUscj10LnZhbHVlU3BlYyxuPXQuc3R5bGVTcGVjO3JldHVybiB0LnZhbGlkYXRlU3BlYz1vaSxyLmV4cHJlc3Npb24mJmNuKE9uKGUpKT9Obih0KTpyLmV4cHJlc3Npb24mJnZuKGpuKGUpKT9abih0KTpyLnR5cGUmJmFpW3IudHlwZV0/YWlbci50eXBlXSh0KTpSbihzdCh7fSx0LHt2YWx1ZVNwZWM6ci50eXBlP25bci50eXBlXTpyfSkpfWZ1bmN0aW9uIGxpKHQpe2NvbnN0IGU9dC52YWx1ZSxyPXQua2V5LG49UW4odCk7cmV0dXJuIG4ubGVuZ3RofHwoLTE9PT1lLmluZGV4T2YoXCJ7Zm9udHN0YWNrfVwiKSYmbi5wdXNoKG5ldyBpdChyLGUsJ1wiZ2x5cGhzXCIgdXJsIG11c3QgaW5jbHVkZSBhIFwie2ZvbnRzdGFja31cIiB0b2tlbicpKSwtMT09PWUuaW5kZXhPZihcIntyYW5nZX1cIikmJm4ucHVzaChuZXcgaXQocixlLCdcImdseXBoc1wiIHVybCBtdXN0IGluY2x1ZGUgYSBcIntyYW5nZX1cIiB0b2tlbicpKSksbn1mdW5jdGlvbiB1aSh0LGU9Ryl7bGV0IHI9W107cmV0dXJuIHI9ci5jb25jYXQob2koe2tleTpcIlwiLHZhbHVlOnQsdmFsdWVTcGVjOmUuJHJvb3Qsc3R5bGVTcGVjOmUsc3R5bGU6dCx2YWxpZGF0ZVNwZWM6b2ksb2JqZWN0RWxlbWVudFZhbGlkYXRvcnM6e2dseXBoczpsaSxcIipcIjooKT0+W119fSkpLHQuY29uc3RhbnRzJiYocj1yLmNvbmNhdChEbih7a2V5OlwiY29uc3RhbnRzXCIsdmFsdWU6dC5jb25zdGFudHMsc3R5bGU6dCxzdHlsZVNwZWM6ZSx2YWxpZGF0ZVNwZWM6b2l9KSkpLGhpKHIpfWZ1bmN0aW9uIGNpKHQpe3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4gdCh7Li4uZSx2YWxpZGF0ZVNwZWM6b2l9KX19ZnVuY3Rpb24gaGkodCl7cmV0dXJuIFtdLmNvbmNhdCh0KS5zb3J0KCgodCxlKT0+dC5saW5lLWUubGluZSkpfWZ1bmN0aW9uIHBpKHQpe3JldHVybiBmdW5jdGlvbiguLi5lKXtyZXR1cm4gaGkodC5hcHBseSh0aGlzLGUpKX19dWkuc291cmNlPXBpKGNpKGVpKSksdWkuc3ByaXRlPXBpKGNpKHNpKSksdWkuZ2x5cGhzPXBpKGNpKGxpKSksdWkubGlnaHQ9cGkoY2kocmkpKSx1aS5za3k9cGkoY2kobmkpKSx1aS50ZXJyYWluPXBpKGNpKGlpKSksdWkubGF5ZXI9cGkoY2koV24pKSx1aS5maWx0ZXI9cGkoY2koS24pKSx1aS5wYWludFByb3BlcnR5PXBpKGNpKFluKSksdWkubGF5b3V0UHJvcGVydHk9cGkoY2koSm4pKTtjb25zdCBmaT11aSxkaT1maS5saWdodCx5aT1maS5za3ksbWk9ZmkucGFpbnRQcm9wZXJ0eSxnaT1maS5sYXlvdXRQcm9wZXJ0eTtmdW5jdGlvbiB4aSh0LGUpe2xldCByPSExO2lmKGUmJmUubGVuZ3RoKWZvcihjb25zdCBuIG9mIGUpdC5maXJlKG5ldyBOKG5ldyBFcnJvcihuLm1lc3NhZ2UpKSkscj0hMDtyZXR1cm4gcn1jbGFzcyB2aXtjb25zdHJ1Y3Rvcih0LGUscil7Y29uc3Qgbj10aGlzLmNlbGxzPVtdO2lmKHQgaW5zdGFuY2VvZiBBcnJheUJ1ZmZlcil7dGhpcy5hcnJheUJ1ZmZlcj10O2NvbnN0IGk9bmV3IEludDMyQXJyYXkodGhpcy5hcnJheUJ1ZmZlcik7dD1pWzBdLHRoaXMuZD0oZT1pWzFdKSsyKihyPWlbMl0pO2ZvcihsZXQgdD0wO3Q8dGhpcy5kKnRoaXMuZDt0Kyspe2NvbnN0IGU9aVszK3RdLHI9aVszK3QrMV07bi5wdXNoKGU9PT1yP251bGw6aS5zdWJhcnJheShlLHIpKTt9Y29uc3Qgcz1pWzMrbi5sZW5ndGgrMV07dGhpcy5rZXlzPWkuc3ViYXJyYXkoaVszK24ubGVuZ3RoXSxzKSx0aGlzLmJib3hlcz1pLnN1YmFycmF5KHMpLHRoaXMuaW5zZXJ0PXRoaXMuX2luc2VydFJlYWRvbmx5O31lbHNlIHt0aGlzLmQ9ZSsyKnI7Zm9yKGxldCB0PTA7dDx0aGlzLmQqdGhpcy5kO3QrKyluLnB1c2goW10pO3RoaXMua2V5cz1bXSx0aGlzLmJib3hlcz1bXTt9dGhpcy5uPWUsdGhpcy5leHRlbnQ9dCx0aGlzLnBhZGRpbmc9cix0aGlzLnNjYWxlPWUvdCx0aGlzLnVpZD0wO2NvbnN0IGk9ci9lKnQ7dGhpcy5taW49LWksdGhpcy5tYXg9dCtpO31pbnNlcnQodCxlLHIsbixpKXt0aGlzLl9mb3JFYWNoQ2VsbChlLHIsbixpLHRoaXMuX2luc2VydENlbGwsdGhpcy51aWQrKyx2b2lkIDAsdm9pZCAwKSx0aGlzLmtleXMucHVzaCh0KSx0aGlzLmJib3hlcy5wdXNoKGUpLHRoaXMuYmJveGVzLnB1c2gociksdGhpcy5iYm94ZXMucHVzaChuKSx0aGlzLmJib3hlcy5wdXNoKGkpO31faW5zZXJ0UmVhZG9ubHkoKXt0aHJvdyBuZXcgRXJyb3IoXCJDYW5ub3QgaW5zZXJ0IGludG8gYSBHcmlkSW5kZXggY3JlYXRlZCBmcm9tIGFuIEFycmF5QnVmZmVyLlwiKX1faW5zZXJ0Q2VsbCh0LGUscixuLGkscyl7dGhpcy5jZWxsc1tpXS5wdXNoKHMpO31xdWVyeSh0LGUscixuLGkpe2NvbnN0IHM9dGhpcy5taW4sYT10aGlzLm1heDtpZih0PD1zJiZlPD1zJiZhPD1yJiZhPD1uJiYhaSlyZXR1cm4gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwodGhpcy5rZXlzKTt7Y29uc3Qgcz1bXTtyZXR1cm4gdGhpcy5fZm9yRWFjaENlbGwodCxlLHIsbix0aGlzLl9xdWVyeUNlbGwscyx7fSxpKSxzfX1fcXVlcnlDZWxsKHQsZSxyLG4saSxzLGEsbyl7Y29uc3QgbD10aGlzLmNlbGxzW2ldO2lmKG51bGwhPT1sKXtjb25zdCBpPXRoaXMua2V5cyx1PXRoaXMuYmJveGVzO2ZvcihsZXQgYz0wO2M8bC5sZW5ndGg7YysrKXtjb25zdCBoPWxbY107aWYodm9pZCAwPT09YVtoXSl7Y29uc3QgbD00Kmg7KG8/byh1W2wrMF0sdVtsKzFdLHVbbCsyXSx1W2wrM10pOnQ8PXVbbCsyXSYmZTw9dVtsKzNdJiZyPj11W2wrMF0mJm4+PXVbbCsxXSk/KGFbaF09ITAscy5wdXNoKGlbaF0pKTphW2hdPSExO319fX1fZm9yRWFjaENlbGwodCxlLHIsbixpLHMsYSxvKXtjb25zdCBsPXRoaXMuX2NvbnZlcnRUb0NlbGxDb29yZCh0KSx1PXRoaXMuX2NvbnZlcnRUb0NlbGxDb29yZChlKSxjPXRoaXMuX2NvbnZlcnRUb0NlbGxDb29yZChyKSxoPXRoaXMuX2NvbnZlcnRUb0NlbGxDb29yZChuKTtmb3IobGV0IHA9bDtwPD1jO3ArKylmb3IobGV0IGw9dTtsPD1oO2wrKyl7Y29uc3QgdT10aGlzLmQqbCtwO2lmKCghb3x8byh0aGlzLl9jb252ZXJ0RnJvbUNlbGxDb29yZChwKSx0aGlzLl9jb252ZXJ0RnJvbUNlbGxDb29yZChsKSx0aGlzLl9jb252ZXJ0RnJvbUNlbGxDb29yZChwKzEpLHRoaXMuX2NvbnZlcnRGcm9tQ2VsbENvb3JkKGwrMSkpKSYmaS5jYWxsKHRoaXMsdCxlLHIsbix1LHMsYSxvKSlyZXR1cm59fV9jb252ZXJ0RnJvbUNlbGxDb29yZCh0KXtyZXR1cm4gKHQtdGhpcy5wYWRkaW5nKS90aGlzLnNjYWxlfV9jb252ZXJ0VG9DZWxsQ29vcmQodCl7cmV0dXJuIE1hdGgubWF4KDAsTWF0aC5taW4odGhpcy5kLTEsTWF0aC5mbG9vcih0KnRoaXMuc2NhbGUpK3RoaXMucGFkZGluZykpfXRvQXJyYXlCdWZmZXIoKXtpZih0aGlzLmFycmF5QnVmZmVyKXJldHVybiB0aGlzLmFycmF5QnVmZmVyO2NvbnN0IHQ9dGhpcy5jZWxscyxlPTMrdGhpcy5jZWxscy5sZW5ndGgrMSsxO2xldCByPTA7Zm9yKGxldCB0PTA7dDx0aGlzLmNlbGxzLmxlbmd0aDt0Kyspcis9dGhpcy5jZWxsc1t0XS5sZW5ndGg7Y29uc3Qgbj1uZXcgSW50MzJBcnJheShlK3IrdGhpcy5rZXlzLmxlbmd0aCt0aGlzLmJib3hlcy5sZW5ndGgpO25bMF09dGhpcy5leHRlbnQsblsxXT10aGlzLm4sblsyXT10aGlzLnBhZGRpbmc7bGV0IGk9ZTtmb3IobGV0IGU9MDtlPHQubGVuZ3RoO2UrKyl7Y29uc3Qgcj10W2VdO25bMytlXT1pLG4uc2V0KHIsaSksaSs9ci5sZW5ndGg7fXJldHVybiBuWzMrdC5sZW5ndGhdPWksbi5zZXQodGhpcy5rZXlzLGkpLGkrPXRoaXMua2V5cy5sZW5ndGgsblszK3QubGVuZ3RoKzFdPWksbi5zZXQodGhpcy5iYm94ZXMsaSksaSs9dGhpcy5iYm94ZXMubGVuZ3RoLG4uYnVmZmVyfXN0YXRpYyBzZXJpYWxpemUodCxlKXtjb25zdCByPXQudG9BcnJheUJ1ZmZlcigpO3JldHVybiBlJiZlLnB1c2gocikse2J1ZmZlcjpyfX1zdGF0aWMgZGVzZXJpYWxpemUodCl7cmV0dXJuIG5ldyB2aSh0LmJ1ZmZlcil9fWNvbnN0IGJpPXt9O2Z1bmN0aW9uIHdpKHQsZSxyPXt9KXtpZihiaVt0XSl0aHJvdyBuZXcgRXJyb3IoYCR7dH0gaXMgYWxyZWFkeSByZWdpc3RlcmVkLmApO09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLFwiX2NsYXNzUmVnaXN0cnlLZXlcIix7dmFsdWU6dCx3cml0ZWFibGU6ITF9KSxiaVt0XT17a2xhc3M6ZSxvbWl0OnIub21pdHx8W10sc2hhbGxvdzpyLnNoYWxsb3d8fFtdfTt9d2koXCJPYmplY3RcIixPYmplY3QpLHdpKFwiVHJhbnNmZXJhYmxlR3JpZEluZGV4XCIsdmkpLHdpKFwiQ29sb3JcIixLdCksd2koXCJFcnJvclwiLEVycm9yKSx3aShcIkFKQVhFcnJvclwiLEwpLHdpKFwiUmVzb2x2ZWRJbWFnZVwiLHRlKSx3aShcIlN0eWxlUHJvcGVydHlGdW5jdGlvblwiLFNuKSx3aShcIlN0eWxlRXhwcmVzc2lvblwiLHhuLHtvbWl0OltcIl9ldmFsdWF0b3JcIl19KSx3aShcIlpvb21EZXBlbmRlbnRFeHByZXNzaW9uXCIsX24pLHdpKFwiWm9vbUNvbnN0YW50RXhwcmVzc2lvblwiLHduKSx3aShcIkNvbXBvdW5kRXhwcmVzc2lvblwiLFhyLHtvbWl0OltcIl9ldmFsdWF0ZVwiXX0pO2Zvcihjb25zdCB0IGluIEtyKUtyW3RdLl9jbGFzc1JlZ2lzdHJ5S2V5fHx3aShgRXhwcmVzc2lvbl8ke3R9YCxLclt0XSk7ZnVuY3Rpb24gX2kodCl7cmV0dXJuIHQmJlwidW5kZWZpbmVkXCIhPXR5cGVvZiBBcnJheUJ1ZmZlciYmKHQgaW5zdGFuY2VvZiBBcnJheUJ1ZmZlcnx8dC5jb25zdHJ1Y3RvciYmXCJBcnJheUJ1ZmZlclwiPT09dC5jb25zdHJ1Y3Rvci5uYW1lKX1mdW5jdGlvbiBBaSh0KXtyZXR1cm4gdC4kbmFtZXx8dC5jb25zdHJ1Y3Rvci5fY2xhc3NSZWdpc3RyeUtleX1mdW5jdGlvbiBTaSh0KXtyZXR1cm4gIWZ1bmN0aW9uKHQpe2lmKG51bGw9PT10fHxcIm9iamVjdFwiIT10eXBlb2YgdClyZXR1cm4gITE7Y29uc3QgZT1BaSh0KTtyZXR1cm4gISghZXx8XCJPYmplY3RcIj09PWUpfSh0KSYmKG51bGw9PXR8fFwiYm9vbGVhblwiPT10eXBlb2YgdHx8XCJudW1iZXJcIj09dHlwZW9mIHR8fFwic3RyaW5nXCI9PXR5cGVvZiB0fHx0IGluc3RhbmNlb2YgQm9vbGVhbnx8dCBpbnN0YW5jZW9mIE51bWJlcnx8dCBpbnN0YW5jZW9mIFN0cmluZ3x8dCBpbnN0YW5jZW9mIERhdGV8fHQgaW5zdGFuY2VvZiBSZWdFeHB8fHQgaW5zdGFuY2VvZiBCbG9ifHx0IGluc3RhbmNlb2YgRXJyb3J8fF9pKHQpfHxJKHQpfHxBcnJheUJ1ZmZlci5pc1ZpZXcodCl8fHQgaW5zdGFuY2VvZiBJbWFnZURhdGEpfWZ1bmN0aW9uIGtpKHQsZSl7aWYoU2kodCkpcmV0dXJuIChfaSh0KXx8SSh0KSkmJmUmJmUucHVzaCh0KSxBcnJheUJ1ZmZlci5pc1ZpZXcodCkmJmUmJmUucHVzaCh0LmJ1ZmZlciksdCBpbnN0YW5jZW9mIEltYWdlRGF0YSYmZSYmZS5wdXNoKHQuZGF0YS5idWZmZXIpLHQ7aWYoQXJyYXkuaXNBcnJheSh0KSl7Y29uc3Qgcj1bXTtmb3IoY29uc3QgbiBvZiB0KXIucHVzaChraShuLGUpKTtyZXR1cm4gcn1pZihcIm9iamVjdFwiIT10eXBlb2YgdCl0aHJvdyBuZXcgRXJyb3IoXCJjYW4ndCBzZXJpYWxpemUgb2JqZWN0IG9mIHR5cGUgXCIrdHlwZW9mIHQpO2NvbnN0IHI9QWkodCk7aWYoIXIpdGhyb3cgbmV3IEVycm9yKGBjYW4ndCBzZXJpYWxpemUgb2JqZWN0IG9mIHVucmVnaXN0ZXJlZCBjbGFzcyAke3QuY29uc3RydWN0b3IubmFtZX1gKTtpZighYmlbcl0pdGhyb3cgbmV3IEVycm9yKGAke3J9IGlzIG5vdCByZWdpc3RlcmVkLmApO2NvbnN0e2tsYXNzOm59PWJpW3JdLGk9bi5zZXJpYWxpemU/bi5zZXJpYWxpemUodCxlKTp7fTtpZihuLnNlcmlhbGl6ZSl7aWYoZSYmaT09PWVbZS5sZW5ndGgtMV0pdGhyb3cgbmV3IEVycm9yKFwic3RhdGljYWxseSBzZXJpYWxpemVkIG9iamVjdCB3b24ndCBzdXJ2aXZlIHRyYW5zZmVyIG9mICRuYW1lIHByb3BlcnR5XCIpfWVsc2Uge2Zvcihjb25zdCBuIGluIHQpe2lmKCF0Lmhhc093blByb3BlcnR5KG4pKWNvbnRpbnVlO2lmKGJpW3JdLm9taXQuaW5kZXhPZihuKT49MCljb250aW51ZTtjb25zdCBzPXRbbl07aVtuXT1iaVtyXS5zaGFsbG93LmluZGV4T2Yobik+PTA/czpraShzLGUpO310IGluc3RhbmNlb2YgRXJyb3ImJihpLm1lc3NhZ2U9dC5tZXNzYWdlKTt9aWYoaS4kbmFtZSl0aHJvdyBuZXcgRXJyb3IoXCIkbmFtZSBwcm9wZXJ0eSBpcyByZXNlcnZlZCBmb3Igd29ya2VyIHNlcmlhbGl6YXRpb24gbG9naWMuXCIpO3JldHVybiBcIk9iamVjdFwiIT09ciYmKGkuJG5hbWU9ciksaX1mdW5jdGlvbiBNaSh0KXtpZihTaSh0KSlyZXR1cm4gdDtpZihBcnJheS5pc0FycmF5KHQpKXJldHVybiB0Lm1hcChNaSk7aWYoXCJvYmplY3RcIiE9dHlwZW9mIHQpdGhyb3cgbmV3IEVycm9yKFwiY2FuJ3QgZGVzZXJpYWxpemUgb2JqZWN0IG9mIHR5cGUgXCIrdHlwZW9mIHQpO2NvbnN0IGU9QWkodCl8fFwiT2JqZWN0XCI7aWYoIWJpW2VdKXRocm93IG5ldyBFcnJvcihgY2FuJ3QgZGVzZXJpYWxpemUgdW5yZWdpc3RlcmVkIGNsYXNzICR7ZX1gKTtjb25zdHtrbGFzczpyfT1iaVtlXTtpZighcil0aHJvdyBuZXcgRXJyb3IoYGNhbid0IGRlc2VyaWFsaXplIHVucmVnaXN0ZXJlZCBjbGFzcyAke2V9YCk7aWYoci5kZXNlcmlhbGl6ZSlyZXR1cm4gci5kZXNlcmlhbGl6ZSh0KTtjb25zdCBuPU9iamVjdC5jcmVhdGUoci5wcm90b3R5cGUpO2Zvcihjb25zdCByIG9mIE9iamVjdC5rZXlzKHQpKXtpZihcIiRuYW1lXCI9PT1yKWNvbnRpbnVlO2NvbnN0IGk9dFtyXTtuW3JdPWJpW2VdLnNoYWxsb3cuaW5kZXhPZihyKT49MD9pOk1pKGkpO31yZXR1cm4gbn1jbGFzcyBJaXtjb25zdHJ1Y3Rvcigpe3RoaXMuZmlyc3Q9ITA7fXVwZGF0ZSh0LGUpe2NvbnN0IHI9TWF0aC5mbG9vcih0KTtyZXR1cm4gdGhpcy5maXJzdD8odGhpcy5maXJzdD0hMSx0aGlzLmxhc3RJbnRlZ2VyWm9vbT1yLHRoaXMubGFzdEludGVnZXJab29tVGltZT0wLHRoaXMubGFzdFpvb209dCx0aGlzLmxhc3RGbG9vclpvb209ciwhMCk6KHRoaXMubGFzdEZsb29yWm9vbT5yPyh0aGlzLmxhc3RJbnRlZ2VyWm9vbT1yKzEsdGhpcy5sYXN0SW50ZWdlclpvb21UaW1lPWUpOnRoaXMubGFzdEZsb29yWm9vbTxyJiYodGhpcy5sYXN0SW50ZWdlclpvb209cix0aGlzLmxhc3RJbnRlZ2VyWm9vbVRpbWU9ZSksdCE9PXRoaXMubGFzdFpvb20mJih0aGlzLmxhc3Rab29tPXQsdGhpcy5sYXN0Rmxvb3Jab29tPXIsITApKX19Y29uc3Qgemk9e1wiTGF0aW4tMSBTdXBwbGVtZW50XCI6dD0+dD49MTI4JiZ0PD0yNTUsXCJIYW5ndWwgSmFtb1wiOnQ9PnQ+PTQzNTImJnQ8PTQ2MDcsS2htZXI6dD0+dD49NjAxNiYmdDw9NjE0MyxcIkdlbmVyYWwgUHVuY3R1YXRpb25cIjp0PT50Pj04MTkyJiZ0PD04MzAzLFwiTGV0dGVybGlrZSBTeW1ib2xzXCI6dD0+dD49ODQ0OCYmdDw9ODUyNyxcIk51bWJlciBGb3Jtc1wiOnQ9PnQ+PTg1MjgmJnQ8PTg1OTEsXCJNaXNjZWxsYW5lb3VzIFRlY2huaWNhbFwiOnQ9PnQ+PTg5NjAmJnQ8PTkyMTUsXCJDb250cm9sIFBpY3R1cmVzXCI6dD0+dD49OTIxNiYmdDw9OTI3OSxcIk9wdGljYWwgQ2hhcmFjdGVyIFJlY29nbml0aW9uXCI6dD0+dD49OTI4MCYmdDw9OTMxMSxcIkVuY2xvc2VkIEFscGhhbnVtZXJpY3NcIjp0PT50Pj05MzEyJiZ0PD05NDcxLFwiR2VvbWV0cmljIFNoYXBlc1wiOnQ9PnQ+PTk2MzImJnQ8PTk3MjcsXCJNaXNjZWxsYW5lb3VzIFN5bWJvbHNcIjp0PT50Pj05NzI4JiZ0PD05OTgzLFwiTWlzY2VsbGFuZW91cyBTeW1ib2xzIGFuZCBBcnJvd3NcIjp0PT50Pj0xMTAwOCYmdDw9MTEyNjMsXCJJZGVvZ3JhcGhpYyBEZXNjcmlwdGlvbiBDaGFyYWN0ZXJzXCI6dD0+dD49MTIyNzImJnQ8PTEyMjg3LFwiQ0pLIFN5bWJvbHMgYW5kIFB1bmN0dWF0aW9uXCI6dD0+dD49MTIyODgmJnQ8PTEyMzUxLEthdGFrYW5hOnQ9PnQ+PTEyNDQ4JiZ0PD0xMjU0MyxLYW5idW46dD0+dD49MTI2ODgmJnQ8PTEyNzAzLFwiQ0pLIFN0cm9rZXNcIjp0PT50Pj0xMjczNiYmdDw9MTI3ODMsXCJFbmNsb3NlZCBDSksgTGV0dGVycyBhbmQgTW9udGhzXCI6dD0+dD49MTI4MDAmJnQ8PTEzMDU1LFwiQ0pLIENvbXBhdGliaWxpdHlcIjp0PT50Pj0xMzA1NiYmdDw9MTMzMTEsXCJZaWppbmcgSGV4YWdyYW0gU3ltYm9sc1wiOnQ9PnQ+PTE5OTA0JiZ0PD0xOTk2NyxcIlByaXZhdGUgVXNlIEFyZWFcIjp0PT50Pj01NzM0NCYmdDw9NjM3NDMsXCJWZXJ0aWNhbCBGb3Jtc1wiOnQ9PnQ+PTY1MDQwJiZ0PD02NTA1NSxcIkNKSyBDb21wYXRpYmlsaXR5IEZvcm1zXCI6dD0+dD49NjUwNzImJnQ8PTY1MTAzLFwiU21hbGwgRm9ybSBWYXJpYW50c1wiOnQ9PnQ+PTY1MTA0JiZ0PD02NTEzNSxcIkhhbGZ3aWR0aCBhbmQgRnVsbHdpZHRoIEZvcm1zXCI6dD0+dD49NjUyODAmJnQ8PTY1NTE5fTtmdW5jdGlvbiBQaSh0KXtmb3IoY29uc3QgZSBvZiB0KWlmKFRpKGUuY2hhckNvZGVBdCgwKSkpcmV0dXJuICEwO3JldHVybiAhMX1mdW5jdGlvbiBDaSh0KXtmb3IoY29uc3QgZSBvZiB0KWlmKCFFaShlLmNoYXJDb2RlQXQoMCkpKXJldHVybiAhMTtyZXR1cm4gITB9ZnVuY3Rpb24gQmkodCl7Y29uc3QgZT10Lm1hcCgodD0+e3RyeXtyZXR1cm4gbmV3IFJlZ0V4cChgXFxcXHB7c2M9JHt0fX1gLFwidVwiKS5zb3VyY2V9Y2F0Y2godCl7cmV0dXJuIG51bGx9fSkpLmZpbHRlcigodD0+dCkpO3JldHVybiBuZXcgUmVnRXhwKGUuam9pbihcInxcIiksXCJ1XCIpfWNvbnN0IFZpPUJpKFtcIkFyYWJcIixcIkR1cGxcIixcIk1vbmdcIixcIk91Z3JcIixcIlN5cmNcIl0pO2Z1bmN0aW9uIEVpKHQpe3JldHVybiAhVmkudGVzdChTdHJpbmcuZnJvbUNvZGVQb2ludCh0KSl9Y29uc3QgRmk9QmkoW1wiQm9wb1wiLFwiSGFuaVwiLFwiSGlyYVwiLFwiS2FuYVwiLFwiS2l0c1wiLFwiTnNodVwiLFwiVGFuZ1wiLFwiWWlpaVwiXSk7ZnVuY3Rpb24gVGkodCl7cmV0dXJuICEoNzQ2IT09dCYmNzQ3IT09dCYmKHQ8NDM1Mnx8ISh6aVtcIkNKSyBDb21wYXRpYmlsaXR5IEZvcm1zXCJdKHQpJiYhKHQ+PTY1MDk3JiZ0PD02NTEwMyl8fHppW1wiQ0pLIENvbXBhdGliaWxpdHlcIl0odCl8fHppW1wiQ0pLIFN0cm9rZXNcIl0odCl8fCEoIXppW1wiQ0pLIFN5bWJvbHMgYW5kIFB1bmN0dWF0aW9uXCJdKHQpfHx0Pj0xMjI5NiYmdDw9MTIzMDV8fHQ+PTEyMzA4JiZ0PD0xMjMxOXx8MTIzMzY9PT10KXx8emlbXCJFbmNsb3NlZCBDSksgTGV0dGVycyBhbmQgTW9udGhzXCJdKHQpfHx6aVtcIklkZW9ncmFwaGljIERlc2NyaXB0aW9uIENoYXJhY3RlcnNcIl0odCl8fHppLkthbmJ1bih0KXx8emkuS2F0YWthbmEodCkmJjEyNTQwIT09dHx8ISghemlbXCJIYWxmd2lkdGggYW5kIEZ1bGx3aWR0aCBGb3Jtc1wiXSh0KXx8NjUyODg9PT10fHw2NTI4OT09PXR8fDY1MjkzPT09dHx8dD49NjUzMDYmJnQ8PTY1MzEwfHw2NTMzOT09PXR8fDY1MzQxPT09dHx8NjUzNDM9PT10fHx0Pj02NTM3MSYmdDw9NjU1MDN8fDY1NTA3PT09dHx8dD49NjU1MTImJnQ8PTY1NTE5KXx8ISghemlbXCJTbWFsbCBGb3JtIFZhcmlhbnRzXCJdKHQpfHx0Pj02NTExMiYmdDw9NjUxMTh8fHQ+PTY1MTIzJiZ0PD02NTEyNil8fHppW1wiVmVydGljYWwgRm9ybXNcIl0odCl8fHppW1wiWWlqaW5nIEhleGFncmFtIFN5bWJvbHNcIl0odCl8fC9cXHB7c2M9Q2Fuc30vdS50ZXN0KFN0cmluZy5mcm9tQ29kZVBvaW50KHQpKXx8L1xccHtzYz1IYW5nfS91LnRlc3QoU3RyaW5nLmZyb21Db2RlUG9pbnQodCkpfHxGaS50ZXN0KFN0cmluZy5mcm9tQ29kZVBvaW50KHQpKSkpKX1mdW5jdGlvbiAkaSh0KXtyZXR1cm4gIShUaSh0KXx8ZnVuY3Rpb24odCl7cmV0dXJuICEhKHppW1wiTGF0aW4tMSBTdXBwbGVtZW50XCJdKHQpJiYoMTY3PT09dHx8MTY5PT09dHx8MTc0PT09dHx8MTc3PT09dHx8MTg4PT09dHx8MTg5PT09dHx8MTkwPT09dHx8MjE1PT09dHx8MjQ3PT09dCl8fHppW1wiR2VuZXJhbCBQdW5jdHVhdGlvblwiXSh0KSYmKDgyMTQ9PT10fHw4MjI0PT09dHx8ODIyNT09PXR8fDgyNDA9PT10fHw4MjQxPT09dHx8ODI1MT09PXR8fDgyNTI9PT10fHw4MjU4PT09dHx8ODI2Mz09PXR8fDgyNjQ9PT10fHw4MjY1PT09dHx8ODI3Mz09PXQpfHx6aVtcIkxldHRlcmxpa2UgU3ltYm9sc1wiXSh0KXx8emlbXCJOdW1iZXIgRm9ybXNcIl0odCl8fHppW1wiTWlzY2VsbGFuZW91cyBUZWNobmljYWxcIl0odCkmJih0Pj04OTYwJiZ0PD04OTY3fHx0Pj04OTcyJiZ0PD04OTkxfHx0Pj04OTk2JiZ0PD05ZTN8fDkwMDM9PT10fHx0Pj05MDg1JiZ0PD05MTE0fHx0Pj05MTUwJiZ0PD05MTY1fHw5MTY3PT09dHx8dD49OTE2OSYmdDw9OTE3OXx8dD49OTE4NiYmdDw9OTIxNSl8fHppW1wiQ29udHJvbCBQaWN0dXJlc1wiXSh0KSYmOTI1MSE9PXR8fHppW1wiT3B0aWNhbCBDaGFyYWN0ZXIgUmVjb2duaXRpb25cIl0odCl8fHppW1wiRW5jbG9zZWQgQWxwaGFudW1lcmljc1wiXSh0KXx8emlbXCJHZW9tZXRyaWMgU2hhcGVzXCJdKHQpfHx6aVtcIk1pc2NlbGxhbmVvdXMgU3ltYm9sc1wiXSh0KSYmISh0Pj05NzU0JiZ0PD05NzU5KXx8emlbXCJNaXNjZWxsYW5lb3VzIFN5bWJvbHMgYW5kIEFycm93c1wiXSh0KSYmKHQ+PTExMDI2JiZ0PD0xMTA1NXx8dD49MTEwODgmJnQ8PTExMDk3fHx0Pj0xMTE5MiYmdDw9MTEyNDMpfHx6aVtcIkNKSyBTeW1ib2xzIGFuZCBQdW5jdHVhdGlvblwiXSh0KXx8emkuS2F0YWthbmEodCl8fHppW1wiUHJpdmF0ZSBVc2UgQXJlYVwiXSh0KXx8emlbXCJDSksgQ29tcGF0aWJpbGl0eSBGb3Jtc1wiXSh0KXx8emlbXCJTbWFsbCBGb3JtIFZhcmlhbnRzXCJdKHQpfHx6aVtcIkhhbGZ3aWR0aCBhbmQgRnVsbHdpZHRoIEZvcm1zXCJdKHQpfHw4NzM0PT09dHx8ODc1Nj09PXR8fDg3NTc9PT10fHx0Pj05OTg0JiZ0PD0xMDA4N3x8dD49MTAxMDImJnQ8PTEwMTMxfHw2NTUzMj09PXR8fDY1NTMzPT09dCl9KHQpKX1jb25zdCBMaT1CaShbXCJBZGxtXCIsXCJBcmFiXCIsXCJBcm1pXCIsXCJBdnN0XCIsXCJDaHJzXCIsXCJDcHJ0XCIsXCJFZ3lwXCIsXCJFbHltXCIsXCJHYXJhXCIsXCJIYXRyXCIsXCJIZWJyXCIsXCJIdW5nXCIsXCJLaGFyXCIsXCJMeWRpXCIsXCJNYW5kXCIsXCJNYW5pXCIsXCJNZW5kXCIsXCJNZXJjXCIsXCJNZXJvXCIsXCJOYXJiXCIsXCJOYmF0XCIsXCJOa29vXCIsXCJPcmtoXCIsXCJQYWxtXCIsXCJQaGxpXCIsXCJQaGxwXCIsXCJQaG54XCIsXCJQcnRpXCIsXCJSb2hnXCIsXCJTYW1yXCIsXCJTYXJiXCIsXCJTb2dvXCIsXCJTeXJjXCIsXCJUaGFhXCIsXCJUb2RyXCIsXCJZZXppXCJdKTtmdW5jdGlvbiBEaSh0KXtyZXR1cm4gTGkudGVzdChTdHJpbmcuZnJvbUNvZGVQb2ludCh0KSl9ZnVuY3Rpb24gT2kodCxlKXtyZXR1cm4gISghZSYmRGkodCl8fHQ+PTIzMDQmJnQ8PTM1ODN8fHQ+PTM4NDAmJnQ8PTQyNTV8fHppLktobWVyKHQpKX1mdW5jdGlvbiBqaSh0KXtmb3IoY29uc3QgZSBvZiB0KWlmKERpKGUuY2hhckNvZGVBdCgwKSkpcmV0dXJuICEwO3JldHVybiAhMX1jb25zdCBSaT1uZXcgY2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLmFwcGx5QXJhYmljU2hhcGluZz1udWxsLHRoaXMucHJvY2Vzc0JpZGlyZWN0aW9uYWxUZXh0PW51bGwsdGhpcy5wcm9jZXNzU3R5bGVkQmlkaXJlY3Rpb25hbFRleHQ9bnVsbCx0aGlzLnBsdWdpblN0YXR1cz1cInVuYXZhaWxhYmxlXCIsdGhpcy5wbHVnaW5VUkw9bnVsbDt9c2V0U3RhdGUodCl7dGhpcy5wbHVnaW5TdGF0dXM9dC5wbHVnaW5TdGF0dXMsdGhpcy5wbHVnaW5VUkw9dC5wbHVnaW5VUkw7fWdldFN0YXRlKCl7cmV0dXJuIHtwbHVnaW5TdGF0dXM6dGhpcy5wbHVnaW5TdGF0dXMscGx1Z2luVVJMOnRoaXMucGx1Z2luVVJMfX1zZXRNZXRob2RzKHQpe3RoaXMuYXBwbHlBcmFiaWNTaGFwaW5nPXQuYXBwbHlBcmFiaWNTaGFwaW5nLHRoaXMucHJvY2Vzc0JpZGlyZWN0aW9uYWxUZXh0PXQucHJvY2Vzc0JpZGlyZWN0aW9uYWxUZXh0LHRoaXMucHJvY2Vzc1N0eWxlZEJpZGlyZWN0aW9uYWxUZXh0PXQucHJvY2Vzc1N0eWxlZEJpZGlyZWN0aW9uYWxUZXh0O31pc1BhcnNlZCgpe3JldHVybiBudWxsIT10aGlzLmFwcGx5QXJhYmljU2hhcGluZyYmbnVsbCE9dGhpcy5wcm9jZXNzQmlkaXJlY3Rpb25hbFRleHQmJm51bGwhPXRoaXMucHJvY2Vzc1N0eWxlZEJpZGlyZWN0aW9uYWxUZXh0fWdldFBsdWdpblVSTCgpe3JldHVybiB0aGlzLnBsdWdpblVSTH1nZXRSVExUZXh0UGx1Z2luU3RhdHVzKCl7cmV0dXJuIHRoaXMucGx1Z2luU3RhdHVzfX07Y2xhc3MgVWl7Y29uc3RydWN0b3IodCxlKXt0aGlzLnpvb209dCxlPyh0aGlzLm5vdz1lLm5vdyx0aGlzLmZhZGVEdXJhdGlvbj1lLmZhZGVEdXJhdGlvbix0aGlzLnpvb21IaXN0b3J5PWUuem9vbUhpc3RvcnksdGhpcy50cmFuc2l0aW9uPWUudHJhbnNpdGlvbik6KHRoaXMubm93PTAsdGhpcy5mYWRlRHVyYXRpb249MCx0aGlzLnpvb21IaXN0b3J5PW5ldyBJaSx0aGlzLnRyYW5zaXRpb249e30pO31pc1N1cHBvcnRlZFNjcmlwdCh0KXtyZXR1cm4gZnVuY3Rpb24odCxlKXtmb3IoY29uc3QgciBvZiB0KWlmKCFPaShyLmNoYXJDb2RlQXQoMCksZSkpcmV0dXJuICExO3JldHVybiAhMH0odCxcImxvYWRlZFwiPT09UmkuZ2V0UlRMVGV4dFBsdWdpblN0YXR1cygpKX1jcm9zc0ZhZGluZ0ZhY3Rvcigpe3JldHVybiAwPT09dGhpcy5mYWRlRHVyYXRpb24/MTpNYXRoLm1pbigodGhpcy5ub3ctdGhpcy56b29tSGlzdG9yeS5sYXN0SW50ZWdlclpvb21UaW1lKS90aGlzLmZhZGVEdXJhdGlvbiwxKX1nZXRDcm9zc2ZhZGVQYXJhbWV0ZXJzKCl7Y29uc3QgdD10aGlzLnpvb20sZT10LU1hdGguZmxvb3IodCkscj10aGlzLmNyb3NzRmFkaW5nRmFjdG9yKCk7cmV0dXJuIHQ+dGhpcy56b29tSGlzdG9yeS5sYXN0SW50ZWdlclpvb20/e2Zyb21TY2FsZToyLHRvU2NhbGU6MSx0OmUrKDEtZSkqcn06e2Zyb21TY2FsZTouNSx0b1NjYWxlOjEsdDoxLSgxLXIpKmV9fX1jbGFzcyBxaXtjb25zdHJ1Y3Rvcih0LGUpe3RoaXMucHJvcGVydHk9dCx0aGlzLnZhbHVlPWUsdGhpcy5leHByZXNzaW9uPWZ1bmN0aW9uKHQsZSl7aWYoY24odCkpcmV0dXJuIG5ldyBTbih0LGUpO2lmKHZuKHQpKXtjb25zdCByPUFuKHQsZSk7aWYoXCJlcnJvclwiPT09ci5yZXN1bHQpdGhyb3cgbmV3IEVycm9yKHIudmFsdWUubWFwKCh0PT5gJHt0LmtleX06ICR7dC5tZXNzYWdlfWApKS5qb2luKFwiLCBcIikpO3JldHVybiByLnZhbHVlfXtsZXQgcj10O3JldHVybiBcImNvbG9yXCI9PT1lLnR5cGUmJlwic3RyaW5nXCI9PXR5cGVvZiB0P3I9S3QucGFyc2UodCk6XCJwYWRkaW5nXCIhPT1lLnR5cGV8fFwibnVtYmVyXCIhPXR5cGVvZiB0JiYhQXJyYXkuaXNBcnJheSh0KT9cInZhcmlhYmxlQW5jaG9yT2Zmc2V0Q29sbGVjdGlvblwiPT09ZS50eXBlJiZBcnJheS5pc0FycmF5KHQpJiYocj1RdC5wYXJzZSh0KSk6cj1KdC5wYXJzZSh0KSx7a2luZDpcImNvbnN0YW50XCIsZXZhbHVhdGU6KCk9PnJ9fX0odm9pZCAwPT09ZT90LnNwZWNpZmljYXRpb24uZGVmYXVsdDplLHQuc3BlY2lmaWNhdGlvbik7fWlzRGF0YURyaXZlbigpe3JldHVybiBcInNvdXJjZVwiPT09dGhpcy5leHByZXNzaW9uLmtpbmR8fFwiY29tcG9zaXRlXCI9PT10aGlzLmV4cHJlc3Npb24ua2luZH1wb3NzaWJseUV2YWx1YXRlKHQsZSxyKXtyZXR1cm4gdGhpcy5wcm9wZXJ0eS5wb3NzaWJseUV2YWx1YXRlKHRoaXMsdCxlLHIpfX1jbGFzcyBOaXtjb25zdHJ1Y3Rvcih0KXt0aGlzLnByb3BlcnR5PXQsdGhpcy52YWx1ZT1uZXcgcWkodCx2b2lkIDApO310cmFuc2l0aW9uZWQodCxlKXtyZXR1cm4gbmV3IEdpKHRoaXMucHJvcGVydHksdGhpcy52YWx1ZSxlLGcoe30sdC50cmFuc2l0aW9uLHRoaXMudHJhbnNpdGlvbiksdC5ub3cpfXVudHJhbnNpdGlvbmVkKCl7cmV0dXJuIG5ldyBHaSh0aGlzLnByb3BlcnR5LHRoaXMudmFsdWUsbnVsbCx7fSwwKX19Y2xhc3MgWml7Y29uc3RydWN0b3IodCl7dGhpcy5fcHJvcGVydGllcz10LHRoaXMuX3ZhbHVlcz1PYmplY3QuY3JlYXRlKHQuZGVmYXVsdFRyYW5zaXRpb25hYmxlUHJvcGVydHlWYWx1ZXMpO31nZXRWYWx1ZSh0KXtyZXR1cm4gdyh0aGlzLl92YWx1ZXNbdF0udmFsdWUudmFsdWUpfXNldFZhbHVlKHQsZSl7T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHRoaXMuX3ZhbHVlcyx0KXx8KHRoaXMuX3ZhbHVlc1t0XT1uZXcgTmkodGhpcy5fdmFsdWVzW3RdLnByb3BlcnR5KSksdGhpcy5fdmFsdWVzW3RdLnZhbHVlPW5ldyBxaSh0aGlzLl92YWx1ZXNbdF0ucHJvcGVydHksbnVsbD09PWU/dm9pZCAwOncoZSkpO31nZXRUcmFuc2l0aW9uKHQpe3JldHVybiB3KHRoaXMuX3ZhbHVlc1t0XS50cmFuc2l0aW9uKX1zZXRUcmFuc2l0aW9uKHQsZSl7T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHRoaXMuX3ZhbHVlcyx0KXx8KHRoaXMuX3ZhbHVlc1t0XT1uZXcgTmkodGhpcy5fdmFsdWVzW3RdLnByb3BlcnR5KSksdGhpcy5fdmFsdWVzW3RdLnRyYW5zaXRpb249dyhlKXx8dm9pZCAwO31zZXJpYWxpemUoKXtjb25zdCB0PXt9O2Zvcihjb25zdCBlIG9mIE9iamVjdC5rZXlzKHRoaXMuX3ZhbHVlcykpe2NvbnN0IHI9dGhpcy5nZXRWYWx1ZShlKTt2b2lkIDAhPT1yJiYodFtlXT1yKTtjb25zdCBuPXRoaXMuZ2V0VHJhbnNpdGlvbihlKTt2b2lkIDAhPT1uJiYodFtgJHtlfS10cmFuc2l0aW9uYF09bik7fXJldHVybiB0fXRyYW5zaXRpb25lZCh0LGUpe2NvbnN0IHI9bmV3IEtpKHRoaXMuX3Byb3BlcnRpZXMpO2Zvcihjb25zdCBuIG9mIE9iamVjdC5rZXlzKHRoaXMuX3ZhbHVlcykpci5fdmFsdWVzW25dPXRoaXMuX3ZhbHVlc1tuXS50cmFuc2l0aW9uZWQodCxlLl92YWx1ZXNbbl0pO3JldHVybiByfXVudHJhbnNpdGlvbmVkKCl7Y29uc3QgdD1uZXcgS2kodGhpcy5fcHJvcGVydGllcyk7Zm9yKGNvbnN0IGUgb2YgT2JqZWN0LmtleXModGhpcy5fdmFsdWVzKSl0Ll92YWx1ZXNbZV09dGhpcy5fdmFsdWVzW2VdLnVudHJhbnNpdGlvbmVkKCk7cmV0dXJuIHR9fWNsYXNzIEdpe2NvbnN0cnVjdG9yKHQsZSxyLG4saSl7dGhpcy5wcm9wZXJ0eT10LHRoaXMudmFsdWU9ZSx0aGlzLmJlZ2luPWkrbi5kZWxheXx8MCx0aGlzLmVuZD10aGlzLmJlZ2luK24uZHVyYXRpb258fDAsdC5zcGVjaWZpY2F0aW9uLnRyYW5zaXRpb24mJihuLmRlbGF5fHxuLmR1cmF0aW9uKSYmKHRoaXMucHJpb3I9cik7fXBvc3NpYmx5RXZhbHVhdGUodCxlLHIpe2NvbnN0IG49dC5ub3d8fDAsaT10aGlzLnZhbHVlLnBvc3NpYmx5RXZhbHVhdGUodCxlLHIpLHM9dGhpcy5wcmlvcjtpZihzKXtpZihuPnRoaXMuZW5kKXJldHVybiB0aGlzLnByaW9yPW51bGwsaTtpZih0aGlzLnZhbHVlLmlzRGF0YURyaXZlbigpKXJldHVybiB0aGlzLnByaW9yPW51bGwsaTtpZihuPHRoaXMuYmVnaW4pcmV0dXJuIHMucG9zc2libHlFdmFsdWF0ZSh0LGUscik7e2NvbnN0IGE9KG4tdGhpcy5iZWdpbikvKHRoaXMuZW5kLXRoaXMuYmVnaW4pO3JldHVybiB0aGlzLnByb3BlcnR5LmludGVycG9sYXRlKHMucG9zc2libHlFdmFsdWF0ZSh0LGUsciksaSxmdW5jdGlvbih0KXtpZih0PD0wKXJldHVybiAwO2lmKHQ+PTEpcmV0dXJuIDE7Y29uc3QgZT10KnQscj1lKnQ7cmV0dXJuIDQqKHQ8LjU/cjozKih0LWUpK3ItLjc1KX0oYSkpfX1yZXR1cm4gaX19Y2xhc3MgS2l7Y29uc3RydWN0b3IodCl7dGhpcy5fcHJvcGVydGllcz10LHRoaXMuX3ZhbHVlcz1PYmplY3QuY3JlYXRlKHQuZGVmYXVsdFRyYW5zaXRpb25pbmdQcm9wZXJ0eVZhbHVlcyk7fXBvc3NpYmx5RXZhbHVhdGUodCxlLHIpe2NvbnN0IG49bmV3IFlpKHRoaXMuX3Byb3BlcnRpZXMpO2Zvcihjb25zdCBpIG9mIE9iamVjdC5rZXlzKHRoaXMuX3ZhbHVlcykpbi5fdmFsdWVzW2ldPXRoaXMuX3ZhbHVlc1tpXS5wb3NzaWJseUV2YWx1YXRlKHQsZSxyKTtyZXR1cm4gbn1oYXNUcmFuc2l0aW9uKCl7Zm9yKGNvbnN0IHQgb2YgT2JqZWN0LmtleXModGhpcy5fdmFsdWVzKSlpZih0aGlzLl92YWx1ZXNbdF0ucHJpb3IpcmV0dXJuICEwO3JldHVybiAhMX19Y2xhc3MgWGl7Y29uc3RydWN0b3IodCl7dGhpcy5fcHJvcGVydGllcz10LHRoaXMuX3ZhbHVlcz1PYmplY3QuY3JlYXRlKHQuZGVmYXVsdFByb3BlcnR5VmFsdWVzKTt9aGFzVmFsdWUodCl7cmV0dXJuIHZvaWQgMCE9PXRoaXMuX3ZhbHVlc1t0XS52YWx1ZX1nZXRWYWx1ZSh0KXtyZXR1cm4gdyh0aGlzLl92YWx1ZXNbdF0udmFsdWUpfXNldFZhbHVlKHQsZSl7dGhpcy5fdmFsdWVzW3RdPW5ldyBxaSh0aGlzLl92YWx1ZXNbdF0ucHJvcGVydHksbnVsbD09PWU/dm9pZCAwOncoZSkpO31zZXJpYWxpemUoKXtjb25zdCB0PXt9O2Zvcihjb25zdCBlIG9mIE9iamVjdC5rZXlzKHRoaXMuX3ZhbHVlcykpe2NvbnN0IHI9dGhpcy5nZXRWYWx1ZShlKTt2b2lkIDAhPT1yJiYodFtlXT1yKTt9cmV0dXJuIHR9cG9zc2libHlFdmFsdWF0ZSh0LGUscil7Y29uc3Qgbj1uZXcgWWkodGhpcy5fcHJvcGVydGllcyk7Zm9yKGNvbnN0IGkgb2YgT2JqZWN0LmtleXModGhpcy5fdmFsdWVzKSluLl92YWx1ZXNbaV09dGhpcy5fdmFsdWVzW2ldLnBvc3NpYmx5RXZhbHVhdGUodCxlLHIpO3JldHVybiBufX1jbGFzcyBIaXtjb25zdHJ1Y3Rvcih0LGUscil7dGhpcy5wcm9wZXJ0eT10LHRoaXMudmFsdWU9ZSx0aGlzLnBhcmFtZXRlcnM9cjt9aXNDb25zdGFudCgpe3JldHVybiBcImNvbnN0YW50XCI9PT10aGlzLnZhbHVlLmtpbmR9Y29uc3RhbnRPcih0KXtyZXR1cm4gXCJjb25zdGFudFwiPT09dGhpcy52YWx1ZS5raW5kP3RoaXMudmFsdWUudmFsdWU6dH1ldmFsdWF0ZSh0LGUscixuKXtyZXR1cm4gdGhpcy5wcm9wZXJ0eS5ldmFsdWF0ZSh0aGlzLnZhbHVlLHRoaXMucGFyYW1ldGVycyx0LGUscixuKX19Y2xhc3MgWWl7Y29uc3RydWN0b3IodCl7dGhpcy5fcHJvcGVydGllcz10LHRoaXMuX3ZhbHVlcz1PYmplY3QuY3JlYXRlKHQuZGVmYXVsdFBvc3NpYmx5RXZhbHVhdGVkVmFsdWVzKTt9Z2V0KHQpe3JldHVybiB0aGlzLl92YWx1ZXNbdF19fWNsYXNzIEppe2NvbnN0cnVjdG9yKHQpe3RoaXMuc3BlY2lmaWNhdGlvbj10O31wb3NzaWJseUV2YWx1YXRlKHQsZSl7aWYodC5pc0RhdGFEcml2ZW4oKSl0aHJvdyBuZXcgRXJyb3IoXCJWYWx1ZSBzaG91bGQgbm90IGJlIGRhdGEgZHJpdmVuXCIpO3JldHVybiB0LmV4cHJlc3Npb24uZXZhbHVhdGUoZSl9aW50ZXJwb2xhdGUodCxlLHIpe2NvbnN0IG49Q2VbdGhpcy5zcGVjaWZpY2F0aW9uLnR5cGVdO3JldHVybiBuP24odCxlLHIpOnR9fWNsYXNzIFdpe2NvbnN0cnVjdG9yKHQsZSl7dGhpcy5zcGVjaWZpY2F0aW9uPXQsdGhpcy5vdmVycmlkZXM9ZTt9cG9zc2libHlFdmFsdWF0ZSh0LGUscixuKXtyZXR1cm4gbmV3IEhpKHRoaXMsXCJjb25zdGFudFwiPT09dC5leHByZXNzaW9uLmtpbmR8fFwiY2FtZXJhXCI9PT10LmV4cHJlc3Npb24ua2luZD97a2luZDpcImNvbnN0YW50XCIsdmFsdWU6dC5leHByZXNzaW9uLmV2YWx1YXRlKGUsbnVsbCx7fSxyLG4pfTp0LmV4cHJlc3Npb24sZSl9aW50ZXJwb2xhdGUodCxlLHIpe2lmKFwiY29uc3RhbnRcIiE9PXQudmFsdWUua2luZHx8XCJjb25zdGFudFwiIT09ZS52YWx1ZS5raW5kKXJldHVybiB0O2lmKHZvaWQgMD09PXQudmFsdWUudmFsdWV8fHZvaWQgMD09PWUudmFsdWUudmFsdWUpcmV0dXJuIG5ldyBIaSh0aGlzLHtraW5kOlwiY29uc3RhbnRcIix2YWx1ZTp2b2lkIDB9LHQucGFyYW1ldGVycyk7Y29uc3Qgbj1DZVt0aGlzLnNwZWNpZmljYXRpb24udHlwZV07aWYobil7Y29uc3QgaT1uKHQudmFsdWUudmFsdWUsZS52YWx1ZS52YWx1ZSxyKTtyZXR1cm4gbmV3IEhpKHRoaXMse2tpbmQ6XCJjb25zdGFudFwiLHZhbHVlOml9LHQucGFyYW1ldGVycyl9cmV0dXJuIHR9ZXZhbHVhdGUodCxlLHIsbixpLHMpe3JldHVybiBcImNvbnN0YW50XCI9PT10LmtpbmQ/dC52YWx1ZTp0LmV2YWx1YXRlKGUscixuLGkscyl9fWNsYXNzIFFpIGV4dGVuZHMgV2l7cG9zc2libHlFdmFsdWF0ZSh0LGUscixuKXtpZih2b2lkIDA9PT10LnZhbHVlKXJldHVybiBuZXcgSGkodGhpcyx7a2luZDpcImNvbnN0YW50XCIsdmFsdWU6dm9pZCAwfSxlKTtpZihcImNvbnN0YW50XCI9PT10LmV4cHJlc3Npb24ua2luZCl7Y29uc3QgaT10LmV4cHJlc3Npb24uZXZhbHVhdGUoZSxudWxsLHt9LHIsbikscz1cInJlc29sdmVkSW1hZ2VcIj09PXQucHJvcGVydHkuc3BlY2lmaWNhdGlvbi50eXBlJiZcInN0cmluZ1wiIT10eXBlb2YgaT9pLm5hbWU6aSxhPXRoaXMuX2NhbGN1bGF0ZShzLHMscyxlKTtyZXR1cm4gbmV3IEhpKHRoaXMse2tpbmQ6XCJjb25zdGFudFwiLHZhbHVlOmF9LGUpfWlmKFwiY2FtZXJhXCI9PT10LmV4cHJlc3Npb24ua2luZCl7Y29uc3Qgcj10aGlzLl9jYWxjdWxhdGUodC5leHByZXNzaW9uLmV2YWx1YXRlKHt6b29tOmUuem9vbS0xfSksdC5leHByZXNzaW9uLmV2YWx1YXRlKHt6b29tOmUuem9vbX0pLHQuZXhwcmVzc2lvbi5ldmFsdWF0ZSh7em9vbTplLnpvb20rMX0pLGUpO3JldHVybiBuZXcgSGkodGhpcyx7a2luZDpcImNvbnN0YW50XCIsdmFsdWU6cn0sZSl9cmV0dXJuIG5ldyBIaSh0aGlzLHQuZXhwcmVzc2lvbixlKX1ldmFsdWF0ZSh0LGUscixuLGkscyl7aWYoXCJzb3VyY2VcIj09PXQua2luZCl7Y29uc3QgYT10LmV2YWx1YXRlKGUscixuLGkscyk7cmV0dXJuIHRoaXMuX2NhbGN1bGF0ZShhLGEsYSxlKX1yZXR1cm4gXCJjb21wb3NpdGVcIj09PXQua2luZD90aGlzLl9jYWxjdWxhdGUodC5ldmFsdWF0ZSh7em9vbTpNYXRoLmZsb29yKGUuem9vbSktMX0scixuKSx0LmV2YWx1YXRlKHt6b29tOk1hdGguZmxvb3IoZS56b29tKX0scixuKSx0LmV2YWx1YXRlKHt6b29tOk1hdGguZmxvb3IoZS56b29tKSsxfSxyLG4pLGUpOnQudmFsdWV9X2NhbGN1bGF0ZSh0LGUscixuKXtyZXR1cm4gbi56b29tPm4uem9vbUhpc3RvcnkubGFzdEludGVnZXJab29tP3tmcm9tOnQsdG86ZX06e2Zyb206cix0bzplfX1pbnRlcnBvbGF0ZSh0KXtyZXR1cm4gdH19Y2xhc3MgdHN7Y29uc3RydWN0b3IodCl7dGhpcy5zcGVjaWZpY2F0aW9uPXQ7fXBvc3NpYmx5RXZhbHVhdGUodCxlLHIsbil7aWYodm9pZCAwIT09dC52YWx1ZSl7aWYoXCJjb25zdGFudFwiPT09dC5leHByZXNzaW9uLmtpbmQpe2NvbnN0IGk9dC5leHByZXNzaW9uLmV2YWx1YXRlKGUsbnVsbCx7fSxyLG4pO3JldHVybiB0aGlzLl9jYWxjdWxhdGUoaSxpLGksZSl9cmV0dXJuIHRoaXMuX2NhbGN1bGF0ZSh0LmV4cHJlc3Npb24uZXZhbHVhdGUobmV3IFVpKE1hdGguZmxvb3IoZS56b29tLTEpLGUpKSx0LmV4cHJlc3Npb24uZXZhbHVhdGUobmV3IFVpKE1hdGguZmxvb3IoZS56b29tKSxlKSksdC5leHByZXNzaW9uLmV2YWx1YXRlKG5ldyBVaShNYXRoLmZsb29yKGUuem9vbSsxKSxlKSksZSl9fV9jYWxjdWxhdGUodCxlLHIsbil7cmV0dXJuIG4uem9vbT5uLnpvb21IaXN0b3J5Lmxhc3RJbnRlZ2VyWm9vbT97ZnJvbTp0LHRvOmV9Ontmcm9tOnIsdG86ZX19aW50ZXJwb2xhdGUodCl7cmV0dXJuIHR9fWNsYXNzIGVze2NvbnN0cnVjdG9yKHQpe3RoaXMuc3BlY2lmaWNhdGlvbj10O31wb3NzaWJseUV2YWx1YXRlKHQsZSxyLG4pe3JldHVybiAhIXQuZXhwcmVzc2lvbi5ldmFsdWF0ZShlLG51bGwse30scixuKX1pbnRlcnBvbGF0ZSgpe3JldHVybiAhMX19Y2xhc3MgcnN7Y29uc3RydWN0b3IodCl7dGhpcy5wcm9wZXJ0aWVzPXQsdGhpcy5kZWZhdWx0UHJvcGVydHlWYWx1ZXM9e30sdGhpcy5kZWZhdWx0VHJhbnNpdGlvbmFibGVQcm9wZXJ0eVZhbHVlcz17fSx0aGlzLmRlZmF1bHRUcmFuc2l0aW9uaW5nUHJvcGVydHlWYWx1ZXM9e30sdGhpcy5kZWZhdWx0UG9zc2libHlFdmFsdWF0ZWRWYWx1ZXM9e30sdGhpcy5vdmVycmlkYWJsZVByb3BlcnRpZXM9W107Zm9yKGNvbnN0IGUgaW4gdCl7Y29uc3Qgcj10W2VdO3Iuc3BlY2lmaWNhdGlvbi5vdmVycmlkYWJsZSYmdGhpcy5vdmVycmlkYWJsZVByb3BlcnRpZXMucHVzaChlKTtjb25zdCBuPXRoaXMuZGVmYXVsdFByb3BlcnR5VmFsdWVzW2VdPW5ldyBxaShyLHZvaWQgMCksaT10aGlzLmRlZmF1bHRUcmFuc2l0aW9uYWJsZVByb3BlcnR5VmFsdWVzW2VdPW5ldyBOaShyKTt0aGlzLmRlZmF1bHRUcmFuc2l0aW9uaW5nUHJvcGVydHlWYWx1ZXNbZV09aS51bnRyYW5zaXRpb25lZCgpLHRoaXMuZGVmYXVsdFBvc3NpYmx5RXZhbHVhdGVkVmFsdWVzW2VdPW4ucG9zc2libHlFdmFsdWF0ZSh7fSk7fX19d2koXCJEYXRhRHJpdmVuUHJvcGVydHlcIixXaSksd2koXCJEYXRhQ29uc3RhbnRQcm9wZXJ0eVwiLEppKSx3aShcIkNyb3NzRmFkZWREYXRhRHJpdmVuUHJvcGVydHlcIixRaSksd2koXCJDcm9zc0ZhZGVkUHJvcGVydHlcIix0cyksd2koXCJDb2xvclJhbXBQcm9wZXJ0eVwiLGVzKTtjb25zdCBucz1cIi10cmFuc2l0aW9uXCI7Y2xhc3MgaXMgZXh0ZW5kcyBae2NvbnN0cnVjdG9yKHQsZSl7aWYoc3VwZXIoKSx0aGlzLmlkPXQuaWQsdGhpcy50eXBlPXQudHlwZSx0aGlzLl9mZWF0dXJlRmlsdGVyPXtmaWx0ZXI6KCk9PiEwLG5lZWRHZW9tZXRyeTohMX0sXCJjdXN0b21cIiE9PXQudHlwZSYmKHRoaXMubWV0YWRhdGE9dC5tZXRhZGF0YSx0aGlzLm1pbnpvb209dC5taW56b29tLHRoaXMubWF4em9vbT10Lm1heHpvb20sXCJiYWNrZ3JvdW5kXCIhPT10LnR5cGUmJih0aGlzLnNvdXJjZT10LnNvdXJjZSx0aGlzLnNvdXJjZUxheWVyPXRbXCJzb3VyY2UtbGF5ZXJcIl0sdGhpcy5maWx0ZXI9dC5maWx0ZXIpLGUubGF5b3V0JiYodGhpcy5fdW5ldmFsdWF0ZWRMYXlvdXQ9bmV3IFhpKGUubGF5b3V0KSksZS5wYWludCkpe3RoaXMuX3RyYW5zaXRpb25hYmxlUGFpbnQ9bmV3IFppKGUucGFpbnQpO2Zvcihjb25zdCBlIGluIHQucGFpbnQpdGhpcy5zZXRQYWludFByb3BlcnR5KGUsdC5wYWludFtlXSx7dmFsaWRhdGU6ITF9KTtmb3IoY29uc3QgZSBpbiB0LmxheW91dCl0aGlzLnNldExheW91dFByb3BlcnR5KGUsdC5sYXlvdXRbZV0se3ZhbGlkYXRlOiExfSk7dGhpcy5fdHJhbnNpdGlvbmluZ1BhaW50PXRoaXMuX3RyYW5zaXRpb25hYmxlUGFpbnQudW50cmFuc2l0aW9uZWQoKSx0aGlzLnBhaW50PW5ldyBZaShlLnBhaW50KTt9fWdldENyb3NzZmFkZVBhcmFtZXRlcnMoKXtyZXR1cm4gdGhpcy5fY3Jvc3NmYWRlUGFyYW1ldGVyc31nZXRMYXlvdXRQcm9wZXJ0eSh0KXtyZXR1cm4gXCJ2aXNpYmlsaXR5XCI9PT10P3RoaXMudmlzaWJpbGl0eTp0aGlzLl91bmV2YWx1YXRlZExheW91dC5nZXRWYWx1ZSh0KX1zZXRMYXlvdXRQcm9wZXJ0eSh0LGUscj17fSl7bnVsbCE9ZSYmdGhpcy5fdmFsaWRhdGUoZ2ksYGxheWVycy4ke3RoaXMuaWR9LmxheW91dC4ke3R9YCx0LGUscil8fChcInZpc2liaWxpdHlcIiE9PXQ/dGhpcy5fdW5ldmFsdWF0ZWRMYXlvdXQuc2V0VmFsdWUodCxlKTp0aGlzLnZpc2liaWxpdHk9ZSk7fWdldFBhaW50UHJvcGVydHkodCl7cmV0dXJuIHQuZW5kc1dpdGgobnMpP3RoaXMuX3RyYW5zaXRpb25hYmxlUGFpbnQuZ2V0VHJhbnNpdGlvbih0LnNsaWNlKDAsLTExKSk6dGhpcy5fdHJhbnNpdGlvbmFibGVQYWludC5nZXRWYWx1ZSh0KX1zZXRQYWludFByb3BlcnR5KHQsZSxyPXt9KXtpZihudWxsIT1lJiZ0aGlzLl92YWxpZGF0ZShtaSxgbGF5ZXJzLiR7dGhpcy5pZH0ucGFpbnQuJHt0fWAsdCxlLHIpKXJldHVybiAhMTtpZih0LmVuZHNXaXRoKG5zKSlyZXR1cm4gdGhpcy5fdHJhbnNpdGlvbmFibGVQYWludC5zZXRUcmFuc2l0aW9uKHQuc2xpY2UoMCwtMTEpLGV8fHZvaWQgMCksITE7e2NvbnN0IHI9dGhpcy5fdHJhbnNpdGlvbmFibGVQYWludC5fdmFsdWVzW3RdLG49XCJjcm9zcy1mYWRlZC1kYXRhLWRyaXZlblwiPT09ci5wcm9wZXJ0eS5zcGVjaWZpY2F0aW9uW1wicHJvcGVydHktdHlwZVwiXSxpPXIudmFsdWUuaXNEYXRhRHJpdmVuKCkscz1yLnZhbHVlO3RoaXMuX3RyYW5zaXRpb25hYmxlUGFpbnQuc2V0VmFsdWUodCxlKSx0aGlzLl9oYW5kbGVTcGVjaWFsUGFpbnRQcm9wZXJ0eVVwZGF0ZSh0KTtjb25zdCBhPXRoaXMuX3RyYW5zaXRpb25hYmxlUGFpbnQuX3ZhbHVlc1t0XS52YWx1ZTtyZXR1cm4gYS5pc0RhdGFEcml2ZW4oKXx8aXx8bnx8dGhpcy5faGFuZGxlT3ZlcnJpZGFibGVQYWludFByb3BlcnR5VXBkYXRlKHQscyxhKX19X2hhbmRsZVNwZWNpYWxQYWludFByb3BlcnR5VXBkYXRlKHQpe31faGFuZGxlT3ZlcnJpZGFibGVQYWludFByb3BlcnR5VXBkYXRlKHQsZSxyKXtyZXR1cm4gITF9aXNIaWRkZW4odCl7cmV0dXJuICEhKHRoaXMubWluem9vbSYmdDx0aGlzLm1pbnpvb20pfHwhISh0aGlzLm1heHpvb20mJnQ+PXRoaXMubWF4em9vbSl8fFwibm9uZVwiPT09dGhpcy52aXNpYmlsaXR5fXVwZGF0ZVRyYW5zaXRpb25zKHQpe3RoaXMuX3RyYW5zaXRpb25pbmdQYWludD10aGlzLl90cmFuc2l0aW9uYWJsZVBhaW50LnRyYW5zaXRpb25lZCh0LHRoaXMuX3RyYW5zaXRpb25pbmdQYWludCk7fWhhc1RyYW5zaXRpb24oKXtyZXR1cm4gdGhpcy5fdHJhbnNpdGlvbmluZ1BhaW50Lmhhc1RyYW5zaXRpb24oKX1yZWNhbGN1bGF0ZSh0LGUpe3QuZ2V0Q3Jvc3NmYWRlUGFyYW1ldGVycyYmKHRoaXMuX2Nyb3NzZmFkZVBhcmFtZXRlcnM9dC5nZXRDcm9zc2ZhZGVQYXJhbWV0ZXJzKCkpLHRoaXMuX3VuZXZhbHVhdGVkTGF5b3V0JiYodGhpcy5sYXlvdXQ9dGhpcy5fdW5ldmFsdWF0ZWRMYXlvdXQucG9zc2libHlFdmFsdWF0ZSh0LHZvaWQgMCxlKSksdGhpcy5wYWludD10aGlzLl90cmFuc2l0aW9uaW5nUGFpbnQucG9zc2libHlFdmFsdWF0ZSh0LHZvaWQgMCxlKTt9c2VyaWFsaXplKCl7Y29uc3QgdD17aWQ6dGhpcy5pZCx0eXBlOnRoaXMudHlwZSxzb3VyY2U6dGhpcy5zb3VyY2UsXCJzb3VyY2UtbGF5ZXJcIjp0aGlzLnNvdXJjZUxheWVyLG1ldGFkYXRhOnRoaXMubWV0YWRhdGEsbWluem9vbTp0aGlzLm1pbnpvb20sbWF4em9vbTp0aGlzLm1heHpvb20sZmlsdGVyOnRoaXMuZmlsdGVyLGxheW91dDp0aGlzLl91bmV2YWx1YXRlZExheW91dCYmdGhpcy5fdW5ldmFsdWF0ZWRMYXlvdXQuc2VyaWFsaXplKCkscGFpbnQ6dGhpcy5fdHJhbnNpdGlvbmFibGVQYWludCYmdGhpcy5fdHJhbnNpdGlvbmFibGVQYWludC5zZXJpYWxpemUoKX07cmV0dXJuIHRoaXMudmlzaWJpbGl0eSYmKHQubGF5b3V0PXQubGF5b3V0fHx7fSx0LmxheW91dC52aXNpYmlsaXR5PXRoaXMudmlzaWJpbGl0eSksYih0LCgodCxlKT0+ISh2b2lkIDA9PT10fHxcImxheW91dFwiPT09ZSYmIU9iamVjdC5rZXlzKHQpLmxlbmd0aHx8XCJwYWludFwiPT09ZSYmIU9iamVjdC5rZXlzKHQpLmxlbmd0aCkpKX1fdmFsaWRhdGUodCxlLHIsbixpPXt9KXtyZXR1cm4gKCFpfHwhMSE9PWkudmFsaWRhdGUpJiZ4aSh0aGlzLHQuY2FsbChmaSx7a2V5OmUsbGF5ZXJUeXBlOnRoaXMudHlwZSxvYmplY3RLZXk6cix2YWx1ZTpuLHN0eWxlU3BlYzpHLHN0eWxlOntnbHlwaHM6ITAsc3ByaXRlOiEwfX0pKX1pczNEKCl7cmV0dXJuICExfWlzVGlsZUNsaXBwZWQoKXtyZXR1cm4gITF9aGFzT2Zmc2NyZWVuUGFzcygpe3JldHVybiAhMX1yZXNpemUoKXt9aXNTdGF0ZURlcGVuZGVudCgpe2Zvcihjb25zdCB0IGluIHRoaXMucGFpbnQuX3ZhbHVlcyl7Y29uc3QgZT10aGlzLnBhaW50LmdldCh0KTtpZihlIGluc3RhbmNlb2YgSGkmJmFuKGUucHJvcGVydHkuc3BlY2lmaWNhdGlvbikmJihcInNvdXJjZVwiPT09ZS52YWx1ZS5raW5kfHxcImNvbXBvc2l0ZVwiPT09ZS52YWx1ZS5raW5kKSYmZS52YWx1ZS5pc1N0YXRlRGVwZW5kZW50KXJldHVybiAhMH1yZXR1cm4gITF9fWNvbnN0IHNzPXtJbnQ4OkludDhBcnJheSxVaW50ODpVaW50OEFycmF5LEludDE2OkludDE2QXJyYXksVWludDE2OlVpbnQxNkFycmF5LEludDMyOkludDMyQXJyYXksVWludDMyOlVpbnQzMkFycmF5LEZsb2F0MzI6RmxvYXQzMkFycmF5fTtjbGFzcyBhc3tjb25zdHJ1Y3Rvcih0LGUpe3RoaXMuX3N0cnVjdEFycmF5PXQsdGhpcy5fcG9zMT1lKnRoaXMuc2l6ZSx0aGlzLl9wb3MyPXRoaXMuX3BvczEvMix0aGlzLl9wb3M0PXRoaXMuX3BvczEvNCx0aGlzLl9wb3M4PXRoaXMuX3BvczEvODt9fWNsYXNzIG9ze2NvbnN0cnVjdG9yKCl7dGhpcy5pc1RyYW5zZmVycmVkPSExLHRoaXMuY2FwYWNpdHk9LTEsdGhpcy5yZXNpemUoMCk7fXN0YXRpYyBzZXJpYWxpemUodCxlKXtyZXR1cm4gdC5fdHJpbSgpLGUmJih0LmlzVHJhbnNmZXJyZWQ9ITAsZS5wdXNoKHQuYXJyYXlCdWZmZXIpKSx7bGVuZ3RoOnQubGVuZ3RoLGFycmF5QnVmZmVyOnQuYXJyYXlCdWZmZXJ9fXN0YXRpYyBkZXNlcmlhbGl6ZSh0KXtjb25zdCBlPU9iamVjdC5jcmVhdGUodGhpcy5wcm90b3R5cGUpO3JldHVybiBlLmFycmF5QnVmZmVyPXQuYXJyYXlCdWZmZXIsZS5sZW5ndGg9dC5sZW5ndGgsZS5jYXBhY2l0eT10LmFycmF5QnVmZmVyLmJ5dGVMZW5ndGgvZS5ieXRlc1BlckVsZW1lbnQsZS5fcmVmcmVzaFZpZXdzKCksZX1fdHJpbSgpe3RoaXMubGVuZ3RoIT09dGhpcy5jYXBhY2l0eSYmKHRoaXMuY2FwYWNpdHk9dGhpcy5sZW5ndGgsdGhpcy5hcnJheUJ1ZmZlcj10aGlzLmFycmF5QnVmZmVyLnNsaWNlKDAsdGhpcy5sZW5ndGgqdGhpcy5ieXRlc1BlckVsZW1lbnQpLHRoaXMuX3JlZnJlc2hWaWV3cygpKTt9Y2xlYXIoKXt0aGlzLmxlbmd0aD0wO31yZXNpemUodCl7dGhpcy5yZXNlcnZlKHQpLHRoaXMubGVuZ3RoPXQ7fXJlc2VydmUodCl7aWYodD50aGlzLmNhcGFjaXR5KXt0aGlzLmNhcGFjaXR5PU1hdGgubWF4KHQsTWF0aC5mbG9vcig1KnRoaXMuY2FwYWNpdHkpLDEyOCksdGhpcy5hcnJheUJ1ZmZlcj1uZXcgQXJyYXlCdWZmZXIodGhpcy5jYXBhY2l0eSp0aGlzLmJ5dGVzUGVyRWxlbWVudCk7Y29uc3QgZT10aGlzLnVpbnQ4O3RoaXMuX3JlZnJlc2hWaWV3cygpLGUmJnRoaXMudWludDguc2V0KGUpO319X3JlZnJlc2hWaWV3cygpe3Rocm93IG5ldyBFcnJvcihcIl9yZWZyZXNoVmlld3MoKSBtdXN0IGJlIGltcGxlbWVudGVkIGJ5IGVhY2ggY29uY3JldGUgU3RydWN0QXJyYXkgbGF5b3V0XCIpfX1mdW5jdGlvbiBscyh0LGU9MSl7bGV0IHI9MCxuPTA7cmV0dXJuIHttZW1iZXJzOnQubWFwKCh0PT57Y29uc3QgaT1zc1t0LnR5cGVdLkJZVEVTX1BFUl9FTEVNRU5ULHM9cj11cyhyLE1hdGgubWF4KGUsaSkpLGE9dC5jb21wb25lbnRzfHwxO3JldHVybiBuPU1hdGgubWF4KG4saSkscis9aSphLHtuYW1lOnQubmFtZSx0eXBlOnQudHlwZSxjb21wb25lbnRzOmEsb2Zmc2V0OnN9fSkpLHNpemU6dXMocixNYXRoLm1heChuLGUpKSxhbGlnbm1lbnQ6ZX19ZnVuY3Rpb24gdXModCxlKXtyZXR1cm4gTWF0aC5jZWlsKHQvZSkqZX1jbGFzcyBjcyBleHRlbmRzIG9ze19yZWZyZXNoVmlld3MoKXt0aGlzLnVpbnQ4PW5ldyBVaW50OEFycmF5KHRoaXMuYXJyYXlCdWZmZXIpLHRoaXMuaW50MTY9bmV3IEludDE2QXJyYXkodGhpcy5hcnJheUJ1ZmZlcik7fWVtcGxhY2VCYWNrKHQsZSl7Y29uc3Qgcj10aGlzLmxlbmd0aDtyZXR1cm4gdGhpcy5yZXNpemUocisxKSx0aGlzLmVtcGxhY2Uocix0LGUpfWVtcGxhY2UodCxlLHIpe2NvbnN0IG49Mip0O3JldHVybiB0aGlzLmludDE2W24rMF09ZSx0aGlzLmludDE2W24rMV09cix0fX1jcy5wcm90b3R5cGUuYnl0ZXNQZXJFbGVtZW50PTQsd2koXCJTdHJ1Y3RBcnJheUxheW91dDJpNFwiLGNzKTtjbGFzcyBocyBleHRlbmRzIG9ze19yZWZyZXNoVmlld3MoKXt0aGlzLnVpbnQ4PW5ldyBVaW50OEFycmF5KHRoaXMuYXJyYXlCdWZmZXIpLHRoaXMuaW50MTY9bmV3IEludDE2QXJyYXkodGhpcy5hcnJheUJ1ZmZlcik7fWVtcGxhY2VCYWNrKHQsZSxyKXtjb25zdCBuPXRoaXMubGVuZ3RoO3JldHVybiB0aGlzLnJlc2l6ZShuKzEpLHRoaXMuZW1wbGFjZShuLHQsZSxyKX1lbXBsYWNlKHQsZSxyLG4pe2NvbnN0IGk9Myp0O3JldHVybiB0aGlzLmludDE2W2krMF09ZSx0aGlzLmludDE2W2krMV09cix0aGlzLmludDE2W2krMl09bix0fX1ocy5wcm90b3R5cGUuYnl0ZXNQZXJFbGVtZW50PTYsd2koXCJTdHJ1Y3RBcnJheUxheW91dDNpNlwiLGhzKTtjbGFzcyBwcyBleHRlbmRzIG9ze19yZWZyZXNoVmlld3MoKXt0aGlzLnVpbnQ4PW5ldyBVaW50OEFycmF5KHRoaXMuYXJyYXlCdWZmZXIpLHRoaXMuaW50MTY9bmV3IEludDE2QXJyYXkodGhpcy5hcnJheUJ1ZmZlcik7fWVtcGxhY2VCYWNrKHQsZSxyLG4pe2NvbnN0IGk9dGhpcy5sZW5ndGg7cmV0dXJuIHRoaXMucmVzaXplKGkrMSksdGhpcy5lbXBsYWNlKGksdCxlLHIsbil9ZW1wbGFjZSh0LGUscixuLGkpe2NvbnN0IHM9NCp0O3JldHVybiB0aGlzLmludDE2W3MrMF09ZSx0aGlzLmludDE2W3MrMV09cix0aGlzLmludDE2W3MrMl09bix0aGlzLmludDE2W3MrM109aSx0fX1wcy5wcm90b3R5cGUuYnl0ZXNQZXJFbGVtZW50PTgsd2koXCJTdHJ1Y3RBcnJheUxheW91dDRpOFwiLHBzKTtjbGFzcyBmcyBleHRlbmRzIG9ze19yZWZyZXNoVmlld3MoKXt0aGlzLnVpbnQ4PW5ldyBVaW50OEFycmF5KHRoaXMuYXJyYXlCdWZmZXIpLHRoaXMuaW50MTY9bmV3IEludDE2QXJyYXkodGhpcy5hcnJheUJ1ZmZlcik7fWVtcGxhY2VCYWNrKHQsZSxyLG4saSxzKXtjb25zdCBhPXRoaXMubGVuZ3RoO3JldHVybiB0aGlzLnJlc2l6ZShhKzEpLHRoaXMuZW1wbGFjZShhLHQsZSxyLG4saSxzKX1lbXBsYWNlKHQsZSxyLG4saSxzLGEpe2NvbnN0IG89Nip0O3JldHVybiB0aGlzLmludDE2W28rMF09ZSx0aGlzLmludDE2W28rMV09cix0aGlzLmludDE2W28rMl09bix0aGlzLmludDE2W28rM109aSx0aGlzLmludDE2W28rNF09cyx0aGlzLmludDE2W28rNV09YSx0fX1mcy5wcm90b3R5cGUuYnl0ZXNQZXJFbGVtZW50PTEyLHdpKFwiU3RydWN0QXJyYXlMYXlvdXQyaTRpMTJcIixmcyk7Y2xhc3MgZHMgZXh0ZW5kcyBvc3tfcmVmcmVzaFZpZXdzKCl7dGhpcy51aW50OD1uZXcgVWludDhBcnJheSh0aGlzLmFycmF5QnVmZmVyKSx0aGlzLmludDE2PW5ldyBJbnQxNkFycmF5KHRoaXMuYXJyYXlCdWZmZXIpO31lbXBsYWNlQmFjayh0LGUscixuLGkscyl7Y29uc3QgYT10aGlzLmxlbmd0aDtyZXR1cm4gdGhpcy5yZXNpemUoYSsxKSx0aGlzLmVtcGxhY2UoYSx0LGUscixuLGkscyl9ZW1wbGFjZSh0LGUscixuLGkscyxhKXtjb25zdCBvPTQqdCxsPTgqdDtyZXR1cm4gdGhpcy5pbnQxNltvKzBdPWUsdGhpcy5pbnQxNltvKzFdPXIsdGhpcy51aW50OFtsKzRdPW4sdGhpcy51aW50OFtsKzVdPWksdGhpcy51aW50OFtsKzZdPXMsdGhpcy51aW50OFtsKzddPWEsdH19ZHMucHJvdG90eXBlLmJ5dGVzUGVyRWxlbWVudD04LHdpKFwiU3RydWN0QXJyYXlMYXlvdXQyaTR1YjhcIixkcyk7Y2xhc3MgeXMgZXh0ZW5kcyBvc3tfcmVmcmVzaFZpZXdzKCl7dGhpcy51aW50OD1uZXcgVWludDhBcnJheSh0aGlzLmFycmF5QnVmZmVyKSx0aGlzLmZsb2F0MzI9bmV3IEZsb2F0MzJBcnJheSh0aGlzLmFycmF5QnVmZmVyKTt9ZW1wbGFjZUJhY2sodCxlKXtjb25zdCByPXRoaXMubGVuZ3RoO3JldHVybiB0aGlzLnJlc2l6ZShyKzEpLHRoaXMuZW1wbGFjZShyLHQsZSl9ZW1wbGFjZSh0LGUscil7Y29uc3Qgbj0yKnQ7cmV0dXJuIHRoaXMuZmxvYXQzMltuKzBdPWUsdGhpcy5mbG9hdDMyW24rMV09cix0fX15cy5wcm90b3R5cGUuYnl0ZXNQZXJFbGVtZW50PTgsd2koXCJTdHJ1Y3RBcnJheUxheW91dDJmOFwiLHlzKTtjbGFzcyBtcyBleHRlbmRzIG9ze19yZWZyZXNoVmlld3MoKXt0aGlzLnVpbnQ4PW5ldyBVaW50OEFycmF5KHRoaXMuYXJyYXlCdWZmZXIpLHRoaXMudWludDE2PW5ldyBVaW50MTZBcnJheSh0aGlzLmFycmF5QnVmZmVyKTt9ZW1wbGFjZUJhY2sodCxlLHIsbixpLHMsYSxvLGwsdSl7Y29uc3QgYz10aGlzLmxlbmd0aDtyZXR1cm4gdGhpcy5yZXNpemUoYysxKSx0aGlzLmVtcGxhY2UoYyx0LGUscixuLGkscyxhLG8sbCx1KX1lbXBsYWNlKHQsZSxyLG4saSxzLGEsbyxsLHUsYyl7Y29uc3QgaD0xMCp0O3JldHVybiB0aGlzLnVpbnQxNltoKzBdPWUsdGhpcy51aW50MTZbaCsxXT1yLHRoaXMudWludDE2W2grMl09bix0aGlzLnVpbnQxNltoKzNdPWksdGhpcy51aW50MTZbaCs0XT1zLHRoaXMudWludDE2W2grNV09YSx0aGlzLnVpbnQxNltoKzZdPW8sdGhpcy51aW50MTZbaCs3XT1sLHRoaXMudWludDE2W2grOF09dSx0aGlzLnVpbnQxNltoKzldPWMsdH19bXMucHJvdG90eXBlLmJ5dGVzUGVyRWxlbWVudD0yMCx3aShcIlN0cnVjdEFycmF5TGF5b3V0MTB1aTIwXCIsbXMpO2NsYXNzIGdzIGV4dGVuZHMgb3N7X3JlZnJlc2hWaWV3cygpe3RoaXMudWludDg9bmV3IFVpbnQ4QXJyYXkodGhpcy5hcnJheUJ1ZmZlciksdGhpcy5pbnQxNj1uZXcgSW50MTZBcnJheSh0aGlzLmFycmF5QnVmZmVyKSx0aGlzLnVpbnQxNj1uZXcgVWludDE2QXJyYXkodGhpcy5hcnJheUJ1ZmZlcik7fWVtcGxhY2VCYWNrKHQsZSxyLG4saSxzLGEsbyxsLHUsYyxoKXtjb25zdCBwPXRoaXMubGVuZ3RoO3JldHVybiB0aGlzLnJlc2l6ZShwKzEpLHRoaXMuZW1wbGFjZShwLHQsZSxyLG4saSxzLGEsbyxsLHUsYyxoKX1lbXBsYWNlKHQsZSxyLG4saSxzLGEsbyxsLHUsYyxoLHApe2NvbnN0IGY9MTIqdDtyZXR1cm4gdGhpcy5pbnQxNltmKzBdPWUsdGhpcy5pbnQxNltmKzFdPXIsdGhpcy5pbnQxNltmKzJdPW4sdGhpcy5pbnQxNltmKzNdPWksdGhpcy51aW50MTZbZis0XT1zLHRoaXMudWludDE2W2YrNV09YSx0aGlzLnVpbnQxNltmKzZdPW8sdGhpcy51aW50MTZbZis3XT1sLHRoaXMuaW50MTZbZis4XT11LHRoaXMuaW50MTZbZis5XT1jLHRoaXMuaW50MTZbZisxMF09aCx0aGlzLmludDE2W2YrMTFdPXAsdH19Z3MucHJvdG90eXBlLmJ5dGVzUGVyRWxlbWVudD0yNCx3aShcIlN0cnVjdEFycmF5TGF5b3V0NGk0dWk0aTI0XCIsZ3MpO2NsYXNzIHhzIGV4dGVuZHMgb3N7X3JlZnJlc2hWaWV3cygpe3RoaXMudWludDg9bmV3IFVpbnQ4QXJyYXkodGhpcy5hcnJheUJ1ZmZlciksdGhpcy5mbG9hdDMyPW5ldyBGbG9hdDMyQXJyYXkodGhpcy5hcnJheUJ1ZmZlcik7fWVtcGxhY2VCYWNrKHQsZSxyKXtjb25zdCBuPXRoaXMubGVuZ3RoO3JldHVybiB0aGlzLnJlc2l6ZShuKzEpLHRoaXMuZW1wbGFjZShuLHQsZSxyKX1lbXBsYWNlKHQsZSxyLG4pe2NvbnN0IGk9Myp0O3JldHVybiB0aGlzLmZsb2F0MzJbaSswXT1lLHRoaXMuZmxvYXQzMltpKzFdPXIsdGhpcy5mbG9hdDMyW2krMl09bix0fX14cy5wcm90b3R5cGUuYnl0ZXNQZXJFbGVtZW50PTEyLHdpKFwiU3RydWN0QXJyYXlMYXlvdXQzZjEyXCIseHMpO2NsYXNzIHZzIGV4dGVuZHMgb3N7X3JlZnJlc2hWaWV3cygpe3RoaXMudWludDg9bmV3IFVpbnQ4QXJyYXkodGhpcy5hcnJheUJ1ZmZlciksdGhpcy51aW50MzI9bmV3IFVpbnQzMkFycmF5KHRoaXMuYXJyYXlCdWZmZXIpO31lbXBsYWNlQmFjayh0KXtjb25zdCBlPXRoaXMubGVuZ3RoO3JldHVybiB0aGlzLnJlc2l6ZShlKzEpLHRoaXMuZW1wbGFjZShlLHQpfWVtcGxhY2UodCxlKXtyZXR1cm4gdGhpcy51aW50MzJbMSp0KzBdPWUsdH19dnMucHJvdG90eXBlLmJ5dGVzUGVyRWxlbWVudD00LHdpKFwiU3RydWN0QXJyYXlMYXlvdXQxdWw0XCIsdnMpO2NsYXNzIGJzIGV4dGVuZHMgb3N7X3JlZnJlc2hWaWV3cygpe3RoaXMudWludDg9bmV3IFVpbnQ4QXJyYXkodGhpcy5hcnJheUJ1ZmZlciksdGhpcy5pbnQxNj1uZXcgSW50MTZBcnJheSh0aGlzLmFycmF5QnVmZmVyKSx0aGlzLnVpbnQzMj1uZXcgVWludDMyQXJyYXkodGhpcy5hcnJheUJ1ZmZlciksdGhpcy51aW50MTY9bmV3IFVpbnQxNkFycmF5KHRoaXMuYXJyYXlCdWZmZXIpO31lbXBsYWNlQmFjayh0LGUscixuLGkscyxhLG8sbCl7Y29uc3QgdT10aGlzLmxlbmd0aDtyZXR1cm4gdGhpcy5yZXNpemUodSsxKSx0aGlzLmVtcGxhY2UodSx0LGUscixuLGkscyxhLG8sbCl9ZW1wbGFjZSh0LGUscixuLGkscyxhLG8sbCx1KXtjb25zdCBjPTEwKnQsaD01KnQ7cmV0dXJuIHRoaXMuaW50MTZbYyswXT1lLHRoaXMuaW50MTZbYysxXT1yLHRoaXMuaW50MTZbYysyXT1uLHRoaXMuaW50MTZbYyszXT1pLHRoaXMuaW50MTZbYys0XT1zLHRoaXMuaW50MTZbYys1XT1hLHRoaXMudWludDMyW2grM109byx0aGlzLnVpbnQxNltjKzhdPWwsdGhpcy51aW50MTZbYys5XT11LHR9fWJzLnByb3RvdHlwZS5ieXRlc1BlckVsZW1lbnQ9MjAsd2koXCJTdHJ1Y3RBcnJheUxheW91dDZpMXVsMnVpMjBcIixicyk7Y2xhc3Mgd3MgZXh0ZW5kcyBvc3tfcmVmcmVzaFZpZXdzKCl7dGhpcy51aW50OD1uZXcgVWludDhBcnJheSh0aGlzLmFycmF5QnVmZmVyKSx0aGlzLmludDE2PW5ldyBJbnQxNkFycmF5KHRoaXMuYXJyYXlCdWZmZXIpO31lbXBsYWNlQmFjayh0LGUscixuLGkscyl7Y29uc3QgYT10aGlzLmxlbmd0aDtyZXR1cm4gdGhpcy5yZXNpemUoYSsxKSx0aGlzLmVtcGxhY2UoYSx0LGUscixuLGkscyl9ZW1wbGFjZSh0LGUscixuLGkscyxhKXtjb25zdCBvPTYqdDtyZXR1cm4gdGhpcy5pbnQxNltvKzBdPWUsdGhpcy5pbnQxNltvKzFdPXIsdGhpcy5pbnQxNltvKzJdPW4sdGhpcy5pbnQxNltvKzNdPWksdGhpcy5pbnQxNltvKzRdPXMsdGhpcy5pbnQxNltvKzVdPWEsdH19d3MucHJvdG90eXBlLmJ5dGVzUGVyRWxlbWVudD0xMix3aShcIlN0cnVjdEFycmF5TGF5b3V0MmkyaTJpMTJcIix3cyk7Y2xhc3MgX3MgZXh0ZW5kcyBvc3tfcmVmcmVzaFZpZXdzKCl7dGhpcy51aW50OD1uZXcgVWludDhBcnJheSh0aGlzLmFycmF5QnVmZmVyKSx0aGlzLmZsb2F0MzI9bmV3IEZsb2F0MzJBcnJheSh0aGlzLmFycmF5QnVmZmVyKSx0aGlzLmludDE2PW5ldyBJbnQxNkFycmF5KHRoaXMuYXJyYXlCdWZmZXIpO31lbXBsYWNlQmFjayh0LGUscixuLGkpe2NvbnN0IHM9dGhpcy5sZW5ndGg7cmV0dXJuIHRoaXMucmVzaXplKHMrMSksdGhpcy5lbXBsYWNlKHMsdCxlLHIsbixpKX1lbXBsYWNlKHQsZSxyLG4saSxzKXtjb25zdCBhPTQqdCxvPTgqdDtyZXR1cm4gdGhpcy5mbG9hdDMyW2ErMF09ZSx0aGlzLmZsb2F0MzJbYSsxXT1yLHRoaXMuZmxvYXQzMlthKzJdPW4sdGhpcy5pbnQxNltvKzZdPWksdGhpcy5pbnQxNltvKzddPXMsdH19X3MucHJvdG90eXBlLmJ5dGVzUGVyRWxlbWVudD0xNix3aShcIlN0cnVjdEFycmF5TGF5b3V0MmYxZjJpMTZcIixfcyk7Y2xhc3MgQXMgZXh0ZW5kcyBvc3tfcmVmcmVzaFZpZXdzKCl7dGhpcy51aW50OD1uZXcgVWludDhBcnJheSh0aGlzLmFycmF5QnVmZmVyKSx0aGlzLmZsb2F0MzI9bmV3IEZsb2F0MzJBcnJheSh0aGlzLmFycmF5QnVmZmVyKSx0aGlzLmludDE2PW5ldyBJbnQxNkFycmF5KHRoaXMuYXJyYXlCdWZmZXIpO31lbXBsYWNlQmFjayh0LGUscixuLGkscyl7Y29uc3QgYT10aGlzLmxlbmd0aDtyZXR1cm4gdGhpcy5yZXNpemUoYSsxKSx0aGlzLmVtcGxhY2UoYSx0LGUscixuLGkscyl9ZW1wbGFjZSh0LGUscixuLGkscyxhKXtjb25zdCBvPTE2KnQsbD00KnQsdT04KnQ7cmV0dXJuIHRoaXMudWludDhbbyswXT1lLHRoaXMudWludDhbbysxXT1yLHRoaXMuZmxvYXQzMltsKzFdPW4sdGhpcy5mbG9hdDMyW2wrMl09aSx0aGlzLmludDE2W3UrNl09cyx0aGlzLmludDE2W3UrN109YSx0fX1Bcy5wcm90b3R5cGUuYnl0ZXNQZXJFbGVtZW50PTE2LHdpKFwiU3RydWN0QXJyYXlMYXlvdXQydWIyZjJpMTZcIixBcyk7Y2xhc3MgU3MgZXh0ZW5kcyBvc3tfcmVmcmVzaFZpZXdzKCl7dGhpcy51aW50OD1uZXcgVWludDhBcnJheSh0aGlzLmFycmF5QnVmZmVyKSx0aGlzLnVpbnQxNj1uZXcgVWludDE2QXJyYXkodGhpcy5hcnJheUJ1ZmZlcik7fWVtcGxhY2VCYWNrKHQsZSxyKXtjb25zdCBuPXRoaXMubGVuZ3RoO3JldHVybiB0aGlzLnJlc2l6ZShuKzEpLHRoaXMuZW1wbGFjZShuLHQsZSxyKX1lbXBsYWNlKHQsZSxyLG4pe2NvbnN0IGk9Myp0O3JldHVybiB0aGlzLnVpbnQxNltpKzBdPWUsdGhpcy51aW50MTZbaSsxXT1yLHRoaXMudWludDE2W2krMl09bix0fX1Tcy5wcm90b3R5cGUuYnl0ZXNQZXJFbGVtZW50PTYsd2koXCJTdHJ1Y3RBcnJheUxheW91dDN1aTZcIixTcyk7Y2xhc3Mga3MgZXh0ZW5kcyBvc3tfcmVmcmVzaFZpZXdzKCl7dGhpcy51aW50OD1uZXcgVWludDhBcnJheSh0aGlzLmFycmF5QnVmZmVyKSx0aGlzLmludDE2PW5ldyBJbnQxNkFycmF5KHRoaXMuYXJyYXlCdWZmZXIpLHRoaXMudWludDE2PW5ldyBVaW50MTZBcnJheSh0aGlzLmFycmF5QnVmZmVyKSx0aGlzLnVpbnQzMj1uZXcgVWludDMyQXJyYXkodGhpcy5hcnJheUJ1ZmZlciksdGhpcy5mbG9hdDMyPW5ldyBGbG9hdDMyQXJyYXkodGhpcy5hcnJheUJ1ZmZlcik7fWVtcGxhY2VCYWNrKHQsZSxyLG4saSxzLGEsbyxsLHUsYyxoLHAsZixkLHksbSl7Y29uc3QgZz10aGlzLmxlbmd0aDtyZXR1cm4gdGhpcy5yZXNpemUoZysxKSx0aGlzLmVtcGxhY2UoZyx0LGUscixuLGkscyxhLG8sbCx1LGMsaCxwLGYsZCx5LG0pfWVtcGxhY2UodCxlLHIsbixpLHMsYSxvLGwsdSxjLGgscCxmLGQseSxtLGcpe2NvbnN0IHg9MjQqdCx2PTEyKnQsYj00OCp0O3JldHVybiB0aGlzLmludDE2W3grMF09ZSx0aGlzLmludDE2W3grMV09cix0aGlzLnVpbnQxNlt4KzJdPW4sdGhpcy51aW50MTZbeCszXT1pLHRoaXMudWludDMyW3YrMl09cyx0aGlzLnVpbnQzMlt2KzNdPWEsdGhpcy51aW50MzJbdis0XT1vLHRoaXMudWludDE2W3grMTBdPWwsdGhpcy51aW50MTZbeCsxMV09dSx0aGlzLnVpbnQxNlt4KzEyXT1jLHRoaXMuZmxvYXQzMlt2KzddPWgsdGhpcy5mbG9hdDMyW3YrOF09cCx0aGlzLnVpbnQ4W2IrMzZdPWYsdGhpcy51aW50OFtiKzM3XT1kLHRoaXMudWludDhbYiszOF09eSx0aGlzLnVpbnQzMlt2KzEwXT1tLHRoaXMuaW50MTZbeCsyMl09Zyx0fX1rcy5wcm90b3R5cGUuYnl0ZXNQZXJFbGVtZW50PTQ4LHdpKFwiU3RydWN0QXJyYXlMYXlvdXQyaTJ1aTN1bDN1aTJmM3ViMXVsMWk0OFwiLGtzKTtjbGFzcyBNcyBleHRlbmRzIG9ze19yZWZyZXNoVmlld3MoKXt0aGlzLnVpbnQ4PW5ldyBVaW50OEFycmF5KHRoaXMuYXJyYXlCdWZmZXIpLHRoaXMuaW50MTY9bmV3IEludDE2QXJyYXkodGhpcy5hcnJheUJ1ZmZlciksdGhpcy51aW50MTY9bmV3IFVpbnQxNkFycmF5KHRoaXMuYXJyYXlCdWZmZXIpLHRoaXMudWludDMyPW5ldyBVaW50MzJBcnJheSh0aGlzLmFycmF5QnVmZmVyKSx0aGlzLmZsb2F0MzI9bmV3IEZsb2F0MzJBcnJheSh0aGlzLmFycmF5QnVmZmVyKTt9ZW1wbGFjZUJhY2sodCxlLHIsbixpLHMsYSxvLGwsdSxjLGgscCxmLGQseSxtLGcseCx2LGIsdyxfLEEsUyxrLE0sSSl7Y29uc3Qgej10aGlzLmxlbmd0aDtyZXR1cm4gdGhpcy5yZXNpemUoeisxKSx0aGlzLmVtcGxhY2Uoeix0LGUscixuLGkscyxhLG8sbCx1LGMsaCxwLGYsZCx5LG0sZyx4LHYsYix3LF8sQSxTLGssTSxJKX1lbXBsYWNlKHQsZSxyLG4saSxzLGEsbyxsLHUsYyxoLHAsZixkLHksbSxnLHgsdixiLHcsXyxBLFMsayxNLEkseil7Y29uc3QgUD0zMip0LEM9MTYqdDtyZXR1cm4gdGhpcy5pbnQxNltQKzBdPWUsdGhpcy5pbnQxNltQKzFdPXIsdGhpcy5pbnQxNltQKzJdPW4sdGhpcy5pbnQxNltQKzNdPWksdGhpcy5pbnQxNltQKzRdPXMsdGhpcy5pbnQxNltQKzVdPWEsdGhpcy5pbnQxNltQKzZdPW8sdGhpcy5pbnQxNltQKzddPWwsdGhpcy51aW50MTZbUCs4XT11LHRoaXMudWludDE2W1ArOV09Yyx0aGlzLnVpbnQxNltQKzEwXT1oLHRoaXMudWludDE2W1ArMTFdPXAsdGhpcy51aW50MTZbUCsxMl09Zix0aGlzLnVpbnQxNltQKzEzXT1kLHRoaXMudWludDE2W1ArMTRdPXksdGhpcy51aW50MTZbUCsxNV09bSx0aGlzLnVpbnQxNltQKzE2XT1nLHRoaXMudWludDE2W1ArMTddPXgsdGhpcy51aW50MTZbUCsxOF09dix0aGlzLnVpbnQxNltQKzE5XT1iLHRoaXMudWludDE2W1ArMjBdPXcsdGhpcy51aW50MTZbUCsyMV09Xyx0aGlzLnVpbnQxNltQKzIyXT1BLHRoaXMudWludDMyW0MrMTJdPVMsdGhpcy5mbG9hdDMyW0MrMTNdPWssdGhpcy5mbG9hdDMyW0MrMTRdPU0sdGhpcy51aW50MTZbUCszMF09SSx0aGlzLnVpbnQxNltQKzMxXT16LHR9fU1zLnByb3RvdHlwZS5ieXRlc1BlckVsZW1lbnQ9NjQsd2koXCJTdHJ1Y3RBcnJheUxheW91dDhpMTV1aTF1bDJmMnVpNjRcIixNcyk7Y2xhc3MgSXMgZXh0ZW5kcyBvc3tfcmVmcmVzaFZpZXdzKCl7dGhpcy51aW50OD1uZXcgVWludDhBcnJheSh0aGlzLmFycmF5QnVmZmVyKSx0aGlzLmZsb2F0MzI9bmV3IEZsb2F0MzJBcnJheSh0aGlzLmFycmF5QnVmZmVyKTt9ZW1wbGFjZUJhY2sodCl7Y29uc3QgZT10aGlzLmxlbmd0aDtyZXR1cm4gdGhpcy5yZXNpemUoZSsxKSx0aGlzLmVtcGxhY2UoZSx0KX1lbXBsYWNlKHQsZSl7cmV0dXJuIHRoaXMuZmxvYXQzMlsxKnQrMF09ZSx0fX1Jcy5wcm90b3R5cGUuYnl0ZXNQZXJFbGVtZW50PTQsd2koXCJTdHJ1Y3RBcnJheUxheW91dDFmNFwiLElzKTtjbGFzcyB6cyBleHRlbmRzIG9ze19yZWZyZXNoVmlld3MoKXt0aGlzLnVpbnQ4PW5ldyBVaW50OEFycmF5KHRoaXMuYXJyYXlCdWZmZXIpLHRoaXMudWludDE2PW5ldyBVaW50MTZBcnJheSh0aGlzLmFycmF5QnVmZmVyKSx0aGlzLmZsb2F0MzI9bmV3IEZsb2F0MzJBcnJheSh0aGlzLmFycmF5QnVmZmVyKTt9ZW1wbGFjZUJhY2sodCxlLHIpe2NvbnN0IG49dGhpcy5sZW5ndGg7cmV0dXJuIHRoaXMucmVzaXplKG4rMSksdGhpcy5lbXBsYWNlKG4sdCxlLHIpfWVtcGxhY2UodCxlLHIsbil7Y29uc3QgaT0zKnQ7cmV0dXJuIHRoaXMudWludDE2WzYqdCswXT1lLHRoaXMuZmxvYXQzMltpKzFdPXIsdGhpcy5mbG9hdDMyW2krMl09bix0fX16cy5wcm90b3R5cGUuYnl0ZXNQZXJFbGVtZW50PTEyLHdpKFwiU3RydWN0QXJyYXlMYXlvdXQxdWkyZjEyXCIsenMpO2NsYXNzIFBzIGV4dGVuZHMgb3N7X3JlZnJlc2hWaWV3cygpe3RoaXMudWludDg9bmV3IFVpbnQ4QXJyYXkodGhpcy5hcnJheUJ1ZmZlciksdGhpcy51aW50MzI9bmV3IFVpbnQzMkFycmF5KHRoaXMuYXJyYXlCdWZmZXIpLHRoaXMudWludDE2PW5ldyBVaW50MTZBcnJheSh0aGlzLmFycmF5QnVmZmVyKTt9ZW1wbGFjZUJhY2sodCxlLHIpe2NvbnN0IG49dGhpcy5sZW5ndGg7cmV0dXJuIHRoaXMucmVzaXplKG4rMSksdGhpcy5lbXBsYWNlKG4sdCxlLHIpfWVtcGxhY2UodCxlLHIsbil7Y29uc3QgaT00KnQ7cmV0dXJuIHRoaXMudWludDMyWzIqdCswXT1lLHRoaXMudWludDE2W2krMl09cix0aGlzLnVpbnQxNltpKzNdPW4sdH19UHMucHJvdG90eXBlLmJ5dGVzUGVyRWxlbWVudD04LHdpKFwiU3RydWN0QXJyYXlMYXlvdXQxdWwydWk4XCIsUHMpO2NsYXNzIENzIGV4dGVuZHMgb3N7X3JlZnJlc2hWaWV3cygpe3RoaXMudWludDg9bmV3IFVpbnQ4QXJyYXkodGhpcy5hcnJheUJ1ZmZlciksdGhpcy51aW50MTY9bmV3IFVpbnQxNkFycmF5KHRoaXMuYXJyYXlCdWZmZXIpO31lbXBsYWNlQmFjayh0LGUpe2NvbnN0IHI9dGhpcy5sZW5ndGg7cmV0dXJuIHRoaXMucmVzaXplKHIrMSksdGhpcy5lbXBsYWNlKHIsdCxlKX1lbXBsYWNlKHQsZSxyKXtjb25zdCBuPTIqdDtyZXR1cm4gdGhpcy51aW50MTZbbiswXT1lLHRoaXMudWludDE2W24rMV09cix0fX1Dcy5wcm90b3R5cGUuYnl0ZXNQZXJFbGVtZW50PTQsd2koXCJTdHJ1Y3RBcnJheUxheW91dDJ1aTRcIixDcyk7Y2xhc3MgQnMgZXh0ZW5kcyBvc3tfcmVmcmVzaFZpZXdzKCl7dGhpcy51aW50OD1uZXcgVWludDhBcnJheSh0aGlzLmFycmF5QnVmZmVyKSx0aGlzLnVpbnQxNj1uZXcgVWludDE2QXJyYXkodGhpcy5hcnJheUJ1ZmZlcik7fWVtcGxhY2VCYWNrKHQpe2NvbnN0IGU9dGhpcy5sZW5ndGg7cmV0dXJuIHRoaXMucmVzaXplKGUrMSksdGhpcy5lbXBsYWNlKGUsdCl9ZW1wbGFjZSh0LGUpe3JldHVybiB0aGlzLnVpbnQxNlsxKnQrMF09ZSx0fX1Ccy5wcm90b3R5cGUuYnl0ZXNQZXJFbGVtZW50PTIsd2koXCJTdHJ1Y3RBcnJheUxheW91dDF1aTJcIixCcyk7Y2xhc3MgVnMgZXh0ZW5kcyBvc3tfcmVmcmVzaFZpZXdzKCl7dGhpcy51aW50OD1uZXcgVWludDhBcnJheSh0aGlzLmFycmF5QnVmZmVyKSx0aGlzLmZsb2F0MzI9bmV3IEZsb2F0MzJBcnJheSh0aGlzLmFycmF5QnVmZmVyKTt9ZW1wbGFjZUJhY2sodCxlLHIsbil7Y29uc3QgaT10aGlzLmxlbmd0aDtyZXR1cm4gdGhpcy5yZXNpemUoaSsxKSx0aGlzLmVtcGxhY2UoaSx0LGUscixuKX1lbXBsYWNlKHQsZSxyLG4saSl7Y29uc3Qgcz00KnQ7cmV0dXJuIHRoaXMuZmxvYXQzMltzKzBdPWUsdGhpcy5mbG9hdDMyW3MrMV09cix0aGlzLmZsb2F0MzJbcysyXT1uLHRoaXMuZmxvYXQzMltzKzNdPWksdH19VnMucHJvdG90eXBlLmJ5dGVzUGVyRWxlbWVudD0xNix3aShcIlN0cnVjdEFycmF5TGF5b3V0NGYxNlwiLFZzKTtjbGFzcyBFcyBleHRlbmRzIGFze2dldCBhbmNob3JQb2ludFgoKXtyZXR1cm4gdGhpcy5fc3RydWN0QXJyYXkuaW50MTZbdGhpcy5fcG9zMiswXX1nZXQgYW5jaG9yUG9pbnRZKCl7cmV0dXJuIHRoaXMuX3N0cnVjdEFycmF5LmludDE2W3RoaXMuX3BvczIrMV19Z2V0IHgxKCl7cmV0dXJuIHRoaXMuX3N0cnVjdEFycmF5LmludDE2W3RoaXMuX3BvczIrMl19Z2V0IHkxKCl7cmV0dXJuIHRoaXMuX3N0cnVjdEFycmF5LmludDE2W3RoaXMuX3BvczIrM119Z2V0IHgyKCl7cmV0dXJuIHRoaXMuX3N0cnVjdEFycmF5LmludDE2W3RoaXMuX3BvczIrNF19Z2V0IHkyKCl7cmV0dXJuIHRoaXMuX3N0cnVjdEFycmF5LmludDE2W3RoaXMuX3BvczIrNV19Z2V0IGZlYXR1cmVJbmRleCgpe3JldHVybiB0aGlzLl9zdHJ1Y3RBcnJheS51aW50MzJbdGhpcy5fcG9zNCszXX1nZXQgc291cmNlTGF5ZXJJbmRleCgpe3JldHVybiB0aGlzLl9zdHJ1Y3RBcnJheS51aW50MTZbdGhpcy5fcG9zMis4XX1nZXQgYnVja2V0SW5kZXgoKXtyZXR1cm4gdGhpcy5fc3RydWN0QXJyYXkudWludDE2W3RoaXMuX3BvczIrOV19Z2V0IGFuY2hvclBvaW50KCl7cmV0dXJuIG5ldyBzKHRoaXMuYW5jaG9yUG9pbnRYLHRoaXMuYW5jaG9yUG9pbnRZKX19RXMucHJvdG90eXBlLnNpemU9MjA7Y2xhc3MgRnMgZXh0ZW5kcyBic3tnZXQodCl7cmV0dXJuIG5ldyBFcyh0aGlzLHQpfX13aShcIkNvbGxpc2lvbkJveEFycmF5XCIsRnMpO2NsYXNzIFRzIGV4dGVuZHMgYXN7Z2V0IGFuY2hvclgoKXtyZXR1cm4gdGhpcy5fc3RydWN0QXJyYXkuaW50MTZbdGhpcy5fcG9zMiswXX1nZXQgYW5jaG9yWSgpe3JldHVybiB0aGlzLl9zdHJ1Y3RBcnJheS5pbnQxNlt0aGlzLl9wb3MyKzFdfWdldCBnbHlwaFN0YXJ0SW5kZXgoKXtyZXR1cm4gdGhpcy5fc3RydWN0QXJyYXkudWludDE2W3RoaXMuX3BvczIrMl19Z2V0IG51bUdseXBocygpe3JldHVybiB0aGlzLl9zdHJ1Y3RBcnJheS51aW50MTZbdGhpcy5fcG9zMiszXX1nZXQgdmVydGV4U3RhcnRJbmRleCgpe3JldHVybiB0aGlzLl9zdHJ1Y3RBcnJheS51aW50MzJbdGhpcy5fcG9zNCsyXX1nZXQgbGluZVN0YXJ0SW5kZXgoKXtyZXR1cm4gdGhpcy5fc3RydWN0QXJyYXkudWludDMyW3RoaXMuX3BvczQrM119Z2V0IGxpbmVMZW5ndGgoKXtyZXR1cm4gdGhpcy5fc3RydWN0QXJyYXkudWludDMyW3RoaXMuX3BvczQrNF19Z2V0IHNlZ21lbnQoKXtyZXR1cm4gdGhpcy5fc3RydWN0QXJyYXkudWludDE2W3RoaXMuX3BvczIrMTBdfWdldCBsb3dlclNpemUoKXtyZXR1cm4gdGhpcy5fc3RydWN0QXJyYXkudWludDE2W3RoaXMuX3BvczIrMTFdfWdldCB1cHBlclNpemUoKXtyZXR1cm4gdGhpcy5fc3RydWN0QXJyYXkudWludDE2W3RoaXMuX3BvczIrMTJdfWdldCBsaW5lT2Zmc2V0WCgpe3JldHVybiB0aGlzLl9zdHJ1Y3RBcnJheS5mbG9hdDMyW3RoaXMuX3BvczQrN119Z2V0IGxpbmVPZmZzZXRZKCl7cmV0dXJuIHRoaXMuX3N0cnVjdEFycmF5LmZsb2F0MzJbdGhpcy5fcG9zNCs4XX1nZXQgd3JpdGluZ01vZGUoKXtyZXR1cm4gdGhpcy5fc3RydWN0QXJyYXkudWludDhbdGhpcy5fcG9zMSszNl19Z2V0IHBsYWNlZE9yaWVudGF0aW9uKCl7cmV0dXJuIHRoaXMuX3N0cnVjdEFycmF5LnVpbnQ4W3RoaXMuX3BvczErMzddfXNldCBwbGFjZWRPcmllbnRhdGlvbih0KXt0aGlzLl9zdHJ1Y3RBcnJheS51aW50OFt0aGlzLl9wb3MxKzM3XT10O31nZXQgaGlkZGVuKCl7cmV0dXJuIHRoaXMuX3N0cnVjdEFycmF5LnVpbnQ4W3RoaXMuX3BvczErMzhdfXNldCBoaWRkZW4odCl7dGhpcy5fc3RydWN0QXJyYXkudWludDhbdGhpcy5fcG9zMSszOF09dDt9Z2V0IGNyb3NzVGlsZUlEKCl7cmV0dXJuIHRoaXMuX3N0cnVjdEFycmF5LnVpbnQzMlt0aGlzLl9wb3M0KzEwXX1zZXQgY3Jvc3NUaWxlSUQodCl7dGhpcy5fc3RydWN0QXJyYXkudWludDMyW3RoaXMuX3BvczQrMTBdPXQ7fWdldCBhc3NvY2lhdGVkSWNvbkluZGV4KCl7cmV0dXJuIHRoaXMuX3N0cnVjdEFycmF5LmludDE2W3RoaXMuX3BvczIrMjJdfX1Ucy5wcm90b3R5cGUuc2l6ZT00ODtjbGFzcyAkcyBleHRlbmRzIGtze2dldCh0KXtyZXR1cm4gbmV3IFRzKHRoaXMsdCl9fXdpKFwiUGxhY2VkU3ltYm9sQXJyYXlcIiwkcyk7Y2xhc3MgTHMgZXh0ZW5kcyBhc3tnZXQgYW5jaG9yWCgpe3JldHVybiB0aGlzLl9zdHJ1Y3RBcnJheS5pbnQxNlt0aGlzLl9wb3MyKzBdfWdldCBhbmNob3JZKCl7cmV0dXJuIHRoaXMuX3N0cnVjdEFycmF5LmludDE2W3RoaXMuX3BvczIrMV19Z2V0IHJpZ2h0SnVzdGlmaWVkVGV4dFN5bWJvbEluZGV4KCl7cmV0dXJuIHRoaXMuX3N0cnVjdEFycmF5LmludDE2W3RoaXMuX3BvczIrMl19Z2V0IGNlbnRlckp1c3RpZmllZFRleHRTeW1ib2xJbmRleCgpe3JldHVybiB0aGlzLl9zdHJ1Y3RBcnJheS5pbnQxNlt0aGlzLl9wb3MyKzNdfWdldCBsZWZ0SnVzdGlmaWVkVGV4dFN5bWJvbEluZGV4KCl7cmV0dXJuIHRoaXMuX3N0cnVjdEFycmF5LmludDE2W3RoaXMuX3BvczIrNF19Z2V0IHZlcnRpY2FsUGxhY2VkVGV4dFN5bWJvbEluZGV4KCl7cmV0dXJuIHRoaXMuX3N0cnVjdEFycmF5LmludDE2W3RoaXMuX3BvczIrNV19Z2V0IHBsYWNlZEljb25TeW1ib2xJbmRleCgpe3JldHVybiB0aGlzLl9zdHJ1Y3RBcnJheS5pbnQxNlt0aGlzLl9wb3MyKzZdfWdldCB2ZXJ0aWNhbFBsYWNlZEljb25TeW1ib2xJbmRleCgpe3JldHVybiB0aGlzLl9zdHJ1Y3RBcnJheS5pbnQxNlt0aGlzLl9wb3MyKzddfWdldCBrZXkoKXtyZXR1cm4gdGhpcy5fc3RydWN0QXJyYXkudWludDE2W3RoaXMuX3BvczIrOF19Z2V0IHRleHRCb3hTdGFydEluZGV4KCl7cmV0dXJuIHRoaXMuX3N0cnVjdEFycmF5LnVpbnQxNlt0aGlzLl9wb3MyKzldfWdldCB0ZXh0Qm94RW5kSW5kZXgoKXtyZXR1cm4gdGhpcy5fc3RydWN0QXJyYXkudWludDE2W3RoaXMuX3BvczIrMTBdfWdldCB2ZXJ0aWNhbFRleHRCb3hTdGFydEluZGV4KCl7cmV0dXJuIHRoaXMuX3N0cnVjdEFycmF5LnVpbnQxNlt0aGlzLl9wb3MyKzExXX1nZXQgdmVydGljYWxUZXh0Qm94RW5kSW5kZXgoKXtyZXR1cm4gdGhpcy5fc3RydWN0QXJyYXkudWludDE2W3RoaXMuX3BvczIrMTJdfWdldCBpY29uQm94U3RhcnRJbmRleCgpe3JldHVybiB0aGlzLl9zdHJ1Y3RBcnJheS51aW50MTZbdGhpcy5fcG9zMisxM119Z2V0IGljb25Cb3hFbmRJbmRleCgpe3JldHVybiB0aGlzLl9zdHJ1Y3RBcnJheS51aW50MTZbdGhpcy5fcG9zMisxNF19Z2V0IHZlcnRpY2FsSWNvbkJveFN0YXJ0SW5kZXgoKXtyZXR1cm4gdGhpcy5fc3RydWN0QXJyYXkudWludDE2W3RoaXMuX3BvczIrMTVdfWdldCB2ZXJ0aWNhbEljb25Cb3hFbmRJbmRleCgpe3JldHVybiB0aGlzLl9zdHJ1Y3RBcnJheS51aW50MTZbdGhpcy5fcG9zMisxNl19Z2V0IGZlYXR1cmVJbmRleCgpe3JldHVybiB0aGlzLl9zdHJ1Y3RBcnJheS51aW50MTZbdGhpcy5fcG9zMisxN119Z2V0IG51bUhvcml6b250YWxHbHlwaFZlcnRpY2VzKCl7cmV0dXJuIHRoaXMuX3N0cnVjdEFycmF5LnVpbnQxNlt0aGlzLl9wb3MyKzE4XX1nZXQgbnVtVmVydGljYWxHbHlwaFZlcnRpY2VzKCl7cmV0dXJuIHRoaXMuX3N0cnVjdEFycmF5LnVpbnQxNlt0aGlzLl9wb3MyKzE5XX1nZXQgbnVtSWNvblZlcnRpY2VzKCl7cmV0dXJuIHRoaXMuX3N0cnVjdEFycmF5LnVpbnQxNlt0aGlzLl9wb3MyKzIwXX1nZXQgbnVtVmVydGljYWxJY29uVmVydGljZXMoKXtyZXR1cm4gdGhpcy5fc3RydWN0QXJyYXkudWludDE2W3RoaXMuX3BvczIrMjFdfWdldCB1c2VSdW50aW1lQ29sbGlzaW9uQ2lyY2xlcygpe3JldHVybiB0aGlzLl9zdHJ1Y3RBcnJheS51aW50MTZbdGhpcy5fcG9zMisyMl19Z2V0IGNyb3NzVGlsZUlEKCl7cmV0dXJuIHRoaXMuX3N0cnVjdEFycmF5LnVpbnQzMlt0aGlzLl9wb3M0KzEyXX1zZXQgY3Jvc3NUaWxlSUQodCl7dGhpcy5fc3RydWN0QXJyYXkudWludDMyW3RoaXMuX3BvczQrMTJdPXQ7fWdldCB0ZXh0Qm94U2NhbGUoKXtyZXR1cm4gdGhpcy5fc3RydWN0QXJyYXkuZmxvYXQzMlt0aGlzLl9wb3M0KzEzXX1nZXQgY29sbGlzaW9uQ2lyY2xlRGlhbWV0ZXIoKXtyZXR1cm4gdGhpcy5fc3RydWN0QXJyYXkuZmxvYXQzMlt0aGlzLl9wb3M0KzE0XX1nZXQgdGV4dEFuY2hvck9mZnNldFN0YXJ0SW5kZXgoKXtyZXR1cm4gdGhpcy5fc3RydWN0QXJyYXkudWludDE2W3RoaXMuX3BvczIrMzBdfWdldCB0ZXh0QW5jaG9yT2Zmc2V0RW5kSW5kZXgoKXtyZXR1cm4gdGhpcy5fc3RydWN0QXJyYXkudWludDE2W3RoaXMuX3BvczIrMzFdfX1Mcy5wcm90b3R5cGUuc2l6ZT02NDtjbGFzcyBEcyBleHRlbmRzIE1ze2dldCh0KXtyZXR1cm4gbmV3IExzKHRoaXMsdCl9fXdpKFwiU3ltYm9sSW5zdGFuY2VBcnJheVwiLERzKTtjbGFzcyBPcyBleHRlbmRzIElze2dldG9mZnNldFgodCl7cmV0dXJuIHRoaXMuZmxvYXQzMlsxKnQrMF19fXdpKFwiR2x5cGhPZmZzZXRBcnJheVwiLE9zKTtjbGFzcyBqcyBleHRlbmRzIGhze2dldHgodCl7cmV0dXJuIHRoaXMuaW50MTZbMyp0KzBdfWdldHkodCl7cmV0dXJuIHRoaXMuaW50MTZbMyp0KzFdfWdldHRpbGVVbml0RGlzdGFuY2VGcm9tQW5jaG9yKHQpe3JldHVybiB0aGlzLmludDE2WzMqdCsyXX19d2koXCJTeW1ib2xMaW5lVmVydGV4QXJyYXlcIixqcyk7Y2xhc3MgUnMgZXh0ZW5kcyBhc3tnZXQgdGV4dEFuY2hvcigpe3JldHVybiB0aGlzLl9zdHJ1Y3RBcnJheS51aW50MTZbdGhpcy5fcG9zMiswXX1nZXQgdGV4dE9mZnNldDAoKXtyZXR1cm4gdGhpcy5fc3RydWN0QXJyYXkuZmxvYXQzMlt0aGlzLl9wb3M0KzFdfWdldCB0ZXh0T2Zmc2V0MSgpe3JldHVybiB0aGlzLl9zdHJ1Y3RBcnJheS5mbG9hdDMyW3RoaXMuX3BvczQrMl19fVJzLnByb3RvdHlwZS5zaXplPTEyO2NsYXNzIFVzIGV4dGVuZHMgenN7Z2V0KHQpe3JldHVybiBuZXcgUnModGhpcyx0KX19d2koXCJUZXh0QW5jaG9yT2Zmc2V0QXJyYXlcIixVcyk7Y2xhc3MgcXMgZXh0ZW5kcyBhc3tnZXQgZmVhdHVyZUluZGV4KCl7cmV0dXJuIHRoaXMuX3N0cnVjdEFycmF5LnVpbnQzMlt0aGlzLl9wb3M0KzBdfWdldCBzb3VyY2VMYXllckluZGV4KCl7cmV0dXJuIHRoaXMuX3N0cnVjdEFycmF5LnVpbnQxNlt0aGlzLl9wb3MyKzJdfWdldCBidWNrZXRJbmRleCgpe3JldHVybiB0aGlzLl9zdHJ1Y3RBcnJheS51aW50MTZbdGhpcy5fcG9zMiszXX19cXMucHJvdG90eXBlLnNpemU9ODtjbGFzcyBOcyBleHRlbmRzIFBze2dldCh0KXtyZXR1cm4gbmV3IHFzKHRoaXMsdCl9fXdpKFwiRmVhdHVyZUluZGV4QXJyYXlcIixOcyk7Y2xhc3MgWnMgZXh0ZW5kcyBjc3t9Y2xhc3MgR3MgZXh0ZW5kcyBjc3t9Y2xhc3MgS3MgZXh0ZW5kcyBjc3t9Y2xhc3MgWHMgZXh0ZW5kcyBmc3t9Y2xhc3MgSHMgZXh0ZW5kcyBkc3t9Y2xhc3MgWXMgZXh0ZW5kcyB5c3t9Y2xhc3MgSnMgZXh0ZW5kcyBtc3t9Y2xhc3MgV3MgZXh0ZW5kcyBnc3t9Y2xhc3MgUXMgZXh0ZW5kcyB4c3t9Y2xhc3MgdGEgZXh0ZW5kcyB2c3t9Y2xhc3MgZWEgZXh0ZW5kcyB3c3t9Y2xhc3MgcmEgZXh0ZW5kcyBBc3t9Y2xhc3MgbmEgZXh0ZW5kcyBTc3t9Y2xhc3MgaWEgZXh0ZW5kcyBDc3t9Y29uc3Qgc2E9bHMoW3tuYW1lOlwiYV9wb3NcIixjb21wb25lbnRzOjIsdHlwZTpcIkludDE2XCJ9XSw0KSx7bWVtYmVyczphYX09c2E7Y2xhc3Mgb2F7Y29uc3RydWN0b3IodD1bXSl7dGhpcy5zZWdtZW50cz10O31wcmVwYXJlU2VnbWVudCh0LGUscixuKXtsZXQgaT10aGlzLnNlZ21lbnRzW3RoaXMuc2VnbWVudHMubGVuZ3RoLTFdO3JldHVybiB0Pm9hLk1BWF9WRVJURVhfQVJSQVlfTEVOR1RIJiZBKGBNYXggdmVydGljZXMgcGVyIHNlZ21lbnQgaXMgJHtvYS5NQVhfVkVSVEVYX0FSUkFZX0xFTkdUSH06IGJ1Y2tldCByZXF1ZXN0ZWQgJHt0fWApLCghaXx8aS52ZXJ0ZXhMZW5ndGgrdD5vYS5NQVhfVkVSVEVYX0FSUkFZX0xFTkdUSHx8aS5zb3J0S2V5IT09bikmJihpPXt2ZXJ0ZXhPZmZzZXQ6ZS5sZW5ndGgscHJpbWl0aXZlT2Zmc2V0OnIubGVuZ3RoLHZlcnRleExlbmd0aDowLHByaW1pdGl2ZUxlbmd0aDowfSx2b2lkIDAhPT1uJiYoaS5zb3J0S2V5PW4pLHRoaXMuc2VnbWVudHMucHVzaChpKSksaX1nZXQoKXtyZXR1cm4gdGhpcy5zZWdtZW50c31kZXN0cm95KCl7Zm9yKGNvbnN0IHQgb2YgdGhpcy5zZWdtZW50cylmb3IoY29uc3QgZSBpbiB0LnZhb3MpdC52YW9zW2VdLmRlc3Ryb3koKTt9c3RhdGljIHNpbXBsZVNlZ21lbnQodCxlLHIsbil7cmV0dXJuIG5ldyBvYShbe3ZlcnRleE9mZnNldDp0LHByaW1pdGl2ZU9mZnNldDplLHZlcnRleExlbmd0aDpyLHByaW1pdGl2ZUxlbmd0aDpuLHZhb3M6e30sc29ydEtleTowfV0pfX1mdW5jdGlvbiBsYSh0LGUpe3JldHVybiAyNTYqKHQ9eShNYXRoLmZsb29yKHQpLDAsMjU1KSkreShNYXRoLmZsb29yKGUpLDAsMjU1KX1vYS5NQVhfVkVSVEVYX0FSUkFZX0xFTkdUSD1NYXRoLnBvdygyLDE2KS0xLHdpKFwiU2VnbWVudFZlY3RvclwiLG9hKTtjb25zdCB1YT1scyhbe25hbWU6XCJhX3BhdHRlcm5fZnJvbVwiLGNvbXBvbmVudHM6NCx0eXBlOlwiVWludDE2XCJ9LHtuYW1lOlwiYV9wYXR0ZXJuX3RvXCIsY29tcG9uZW50czo0LHR5cGU6XCJVaW50MTZcIn0se25hbWU6XCJhX3BpeGVsX3JhdGlvX2Zyb21cIixjb21wb25lbnRzOjEsdHlwZTpcIlVpbnQxNlwifSx7bmFtZTpcImFfcGl4ZWxfcmF0aW9fdG9cIixjb21wb25lbnRzOjEsdHlwZTpcIlVpbnQxNlwifV0pO3ZhciBjYT17ZXhwb3J0czp7fX0saGE9e2V4cG9ydHM6e319O2hhLmV4cG9ydHM9ZnVuY3Rpb24odCxlKXt2YXIgcixuLGkscyxhLG8sbCx1O2ZvcihuPXQubGVuZ3RoLShyPTMmdC5sZW5ndGgpLGk9ZSxhPTM0MzI5MTgzNTMsbz00NjE4NDU5MDcsdT0wO3U8bjspbD0yNTUmdC5jaGFyQ29kZUF0KHUpfCgyNTUmdC5jaGFyQ29kZUF0KCsrdSkpPDw4fCgyNTUmdC5jaGFyQ29kZUF0KCsrdSkpPDwxNnwoMjU1JnQuY2hhckNvZGVBdCgrK3UpKTw8MjQsKyt1LGk9Mjc0OTIrKDY1NTM1JihzPTUqKDY1NTM1JihpPShpXj1sPSg2NTUzNSYobD0obD0oNjU1MzUmbCkqYSsoKChsPj4+MTYpKmEmNjU1MzUpPDwxNikmNDI5NDk2NzI5NSk8PDE1fGw+Pj4xNykpKm8rKCgobD4+PjE2KSpvJjY1NTM1KTw8MTYpJjQyOTQ5NjcyOTUpPDwxM3xpPj4+MTkpKSsoKDUqKGk+Pj4xNikmNjU1MzUpPDwxNikmNDI5NDk2NzI5NSkpKygoNTg5NjQrKHM+Pj4xNikmNjU1MzUpPDwxNik7c3dpdGNoKGw9MCxyKXtjYXNlIDM6bF49KDI1NSZ0LmNoYXJDb2RlQXQodSsyKSk8PDE2O2Nhc2UgMjpsXj0oMjU1JnQuY2hhckNvZGVBdCh1KzEpKTw8ODtjYXNlIDE6aV49bD0oNjU1MzUmKGw9KGw9KDY1NTM1JihsXj0yNTUmdC5jaGFyQ29kZUF0KHUpKSkqYSsoKChsPj4+MTYpKmEmNjU1MzUpPDwxNikmNDI5NDk2NzI5NSk8PDE1fGw+Pj4xNykpKm8rKCgobD4+PjE2KSpvJjY1NTM1KTw8MTYpJjQyOTQ5NjcyOTU7fXJldHVybiBpXj10Lmxlbmd0aCxpPTIyNDY4MjI1MDcqKDY1NTM1JihpXj1pPj4+MTYpKSsoKDIyNDY4MjI1MDcqKGk+Pj4xNikmNjU1MzUpPDwxNikmNDI5NDk2NzI5NSxpPTMyNjY0ODk5MDkqKDY1NTM1JihpXj1pPj4+MTMpKSsoKDMyNjY0ODk5MDkqKGk+Pj4xNikmNjU1MzUpPDwxNikmNDI5NDk2NzI5NSwoaV49aT4+PjE2KT4+PjB9O3ZhciBwYT1oYS5leHBvcnRzLGZhPXtleHBvcnRzOnt9fTtmYS5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7Zm9yKHZhciByLG49dC5sZW5ndGgsaT1lXm4scz0wO24+PTQ7KXI9MTU0MDQ4MzQ3NyooNjU1MzUmKHI9MjU1JnQuY2hhckNvZGVBdChzKXwoMjU1JnQuY2hhckNvZGVBdCgrK3MpKTw8OHwoMjU1JnQuY2hhckNvZGVBdCgrK3MpKTw8MTZ8KDI1NSZ0LmNoYXJDb2RlQXQoKytzKSk8PDI0KSkrKCgxNTQwNDgzNDc3KihyPj4+MTYpJjY1NTM1KTw8MTYpLGk9MTU0MDQ4MzQ3NyooNjU1MzUmaSkrKCgxNTQwNDgzNDc3KihpPj4+MTYpJjY1NTM1KTw8MTYpXihyPTE1NDA0ODM0NzcqKDY1NTM1JihyXj1yPj4+MjQpKSsoKDE1NDA0ODM0NzcqKHI+Pj4xNikmNjU1MzUpPDwxNikpLG4tPTQsKytzO3N3aXRjaChuKXtjYXNlIDM6aV49KDI1NSZ0LmNoYXJDb2RlQXQocysyKSk8PDE2O2Nhc2UgMjppXj0oMjU1JnQuY2hhckNvZGVBdChzKzEpKTw8ODtjYXNlIDE6aT0xNTQwNDgzNDc3Kig2NTUzNSYoaV49MjU1JnQuY2hhckNvZGVBdChzKSkpKygoMTU0MDQ4MzQ3NyooaT4+PjE2KSY2NTUzNSk8PDE2KTt9cmV0dXJuIGk9MTU0MDQ4MzQ3NyooNjU1MzUmKGlePWk+Pj4xMykpKygoMTU0MDQ4MzQ3NyooaT4+PjE2KSY2NTUzNSk8PDE2KSwoaV49aT4+PjE1KT4+PjB9O3ZhciBkYT1wYSx5YT1mYS5leHBvcnRzO2NhLmV4cG9ydHM9ZGEsY2EuZXhwb3J0cy5tdXJtdXIzPWRhLGNhLmV4cG9ydHMubXVybXVyMj15YTt2YXIgbWE9cihjYS5leHBvcnRzKTtjbGFzcyBnYXtjb25zdHJ1Y3Rvcigpe3RoaXMuaWRzPVtdLHRoaXMucG9zaXRpb25zPVtdLHRoaXMuaW5kZXhlZD0hMTt9YWRkKHQsZSxyLG4pe3RoaXMuaWRzLnB1c2goeGEodCkpLHRoaXMucG9zaXRpb25zLnB1c2goZSxyLG4pO31nZXRQb3NpdGlvbnModCl7aWYoIXRoaXMuaW5kZXhlZCl0aHJvdyBuZXcgRXJyb3IoXCJUcnlpbmcgdG8gZ2V0IGluZGV4LCBidXQgZmVhdHVyZSBwb3NpdGlvbnMgYXJlIG5vdCBpbmRleGVkXCIpO2NvbnN0IGU9eGEodCk7bGV0IHI9MCxuPXRoaXMuaWRzLmxlbmd0aC0xO2Zvcig7cjxuOyl7Y29uc3QgdD1yK24+PjE7dGhpcy5pZHNbdF0+PWU/bj10OnI9dCsxO31jb25zdCBpPVtdO2Zvcig7dGhpcy5pZHNbcl09PT1lOylpLnB1c2goe2luZGV4OnRoaXMucG9zaXRpb25zWzMqcl0sc3RhcnQ6dGhpcy5wb3NpdGlvbnNbMypyKzFdLGVuZDp0aGlzLnBvc2l0aW9uc1szKnIrMl19KSxyKys7cmV0dXJuIGl9c3RhdGljIHNlcmlhbGl6ZSh0LGUpe2NvbnN0IHI9bmV3IEZsb2F0NjRBcnJheSh0Lmlkcyksbj1uZXcgVWludDMyQXJyYXkodC5wb3NpdGlvbnMpO3JldHVybiB2YShyLG4sMCxyLmxlbmd0aC0xKSxlJiZlLnB1c2goci5idWZmZXIsbi5idWZmZXIpLHtpZHM6cixwb3NpdGlvbnM6bn19c3RhdGljIGRlc2VyaWFsaXplKHQpe2NvbnN0IGU9bmV3IGdhO3JldHVybiBlLmlkcz10LmlkcyxlLnBvc2l0aW9ucz10LnBvc2l0aW9ucyxlLmluZGV4ZWQ9ITAsZX19ZnVuY3Rpb24geGEodCl7Y29uc3QgZT0rdDtyZXR1cm4gIWlzTmFOKGUpJiZlPD1OdW1iZXIuTUFYX1NBRkVfSU5URUdFUj9lOm1hKFN0cmluZyh0KSl9ZnVuY3Rpb24gdmEodCxlLHIsbil7Zm9yKDtyPG47KXtjb25zdCBpPXRbcituPj4xXTtsZXQgcz1yLTEsYT1uKzE7Zm9yKDs7KXtkb3tzKys7fXdoaWxlKHRbc108aSk7ZG97YS0tO313aGlsZSh0W2FdPmkpO2lmKHM+PWEpYnJlYWs7YmEodCxzLGEpLGJhKGUsMypzLDMqYSksYmEoZSwzKnMrMSwzKmErMSksYmEoZSwzKnMrMiwzKmErMik7fWEtcjxuLWE/KHZhKHQsZSxyLGEpLHI9YSsxKToodmEodCxlLGErMSxuKSxuPWEpO319ZnVuY3Rpb24gYmEodCxlLHIpe2NvbnN0IG49dFtlXTt0W2VdPXRbcl0sdFtyXT1uO313aShcIkZlYXR1cmVQb3NpdGlvbk1hcFwiLGdhKTtjbGFzcyB3YXtjb25zdHJ1Y3Rvcih0LGUpe3RoaXMuZ2w9dC5nbCx0aGlzLmxvY2F0aW9uPWU7fX1jbGFzcyBfYSBleHRlbmRzIHdhe2NvbnN0cnVjdG9yKHQsZSl7c3VwZXIodCxlKSx0aGlzLmN1cnJlbnQ9MDt9c2V0KHQpe3RoaXMuY3VycmVudCE9PXQmJih0aGlzLmN1cnJlbnQ9dCx0aGlzLmdsLnVuaWZvcm0xZih0aGlzLmxvY2F0aW9uLHQpKTt9fWNsYXNzIEFhIGV4dGVuZHMgd2F7Y29uc3RydWN0b3IodCxlKXtzdXBlcih0LGUpLHRoaXMuY3VycmVudD1bMCwwLDAsMF07fXNldCh0KXt0WzBdPT09dGhpcy5jdXJyZW50WzBdJiZ0WzFdPT09dGhpcy5jdXJyZW50WzFdJiZ0WzJdPT09dGhpcy5jdXJyZW50WzJdJiZ0WzNdPT09dGhpcy5jdXJyZW50WzNdfHwodGhpcy5jdXJyZW50PXQsdGhpcy5nbC51bmlmb3JtNGYodGhpcy5sb2NhdGlvbix0WzBdLHRbMV0sdFsyXSx0WzNdKSk7fX1jbGFzcyBTYSBleHRlbmRzIHdhe2NvbnN0cnVjdG9yKHQsZSl7c3VwZXIodCxlKSx0aGlzLmN1cnJlbnQ9S3QudHJhbnNwYXJlbnQ7fXNldCh0KXt0LnI9PT10aGlzLmN1cnJlbnQuciYmdC5nPT09dGhpcy5jdXJyZW50LmcmJnQuYj09PXRoaXMuY3VycmVudC5iJiZ0LmE9PT10aGlzLmN1cnJlbnQuYXx8KHRoaXMuY3VycmVudD10LHRoaXMuZ2wudW5pZm9ybTRmKHRoaXMubG9jYXRpb24sdC5yLHQuZyx0LmIsdC5hKSk7fX1jb25zdCBrYT1uZXcgRmxvYXQzMkFycmF5KDE2KTtmdW5jdGlvbiBNYSh0KXtyZXR1cm4gW2xhKDI1NSp0LnIsMjU1KnQuZyksbGEoMjU1KnQuYiwyNTUqdC5hKV19Y2xhc3MgSWF7Y29uc3RydWN0b3IodCxlLHIpe3RoaXMudmFsdWU9dCx0aGlzLnVuaWZvcm1OYW1lcz1lLm1hcCgodD0+YHVfJHt0fWApKSx0aGlzLnR5cGU9cjt9c2V0VW5pZm9ybSh0LGUscil7dC5zZXQoci5jb25zdGFudE9yKHRoaXMudmFsdWUpKTt9Z2V0QmluZGluZyh0LGUscil7cmV0dXJuIFwiY29sb3JcIj09PXRoaXMudHlwZT9uZXcgU2EodCxlKTpuZXcgX2EodCxlKX19Y2xhc3MgemF7Y29uc3RydWN0b3IodCxlKXt0aGlzLnVuaWZvcm1OYW1lcz1lLm1hcCgodD0+YHVfJHt0fWApKSx0aGlzLnBhdHRlcm5Gcm9tPW51bGwsdGhpcy5wYXR0ZXJuVG89bnVsbCx0aGlzLnBpeGVsUmF0aW9Gcm9tPTEsdGhpcy5waXhlbFJhdGlvVG89MTt9c2V0Q29uc3RhbnRQYXR0ZXJuUG9zaXRpb25zKHQsZSl7dGhpcy5waXhlbFJhdGlvRnJvbT1lLnBpeGVsUmF0aW8sdGhpcy5waXhlbFJhdGlvVG89dC5waXhlbFJhdGlvLHRoaXMucGF0dGVybkZyb209ZS50bGJyLHRoaXMucGF0dGVyblRvPXQudGxicjt9c2V0VW5pZm9ybSh0LGUscixuKXtjb25zdCBpPVwidV9wYXR0ZXJuX3RvXCI9PT1uP3RoaXMucGF0dGVyblRvOlwidV9wYXR0ZXJuX2Zyb21cIj09PW4/dGhpcy5wYXR0ZXJuRnJvbTpcInVfcGl4ZWxfcmF0aW9fdG9cIj09PW4/dGhpcy5waXhlbFJhdGlvVG86XCJ1X3BpeGVsX3JhdGlvX2Zyb21cIj09PW4/dGhpcy5waXhlbFJhdGlvRnJvbTpudWxsO2kmJnQuc2V0KGkpO31nZXRCaW5kaW5nKHQsZSxyKXtyZXR1cm4gXCJ1X3BhdHRlcm5cIj09PXIuc3Vic3RyKDAsOSk/bmV3IEFhKHQsZSk6bmV3IF9hKHQsZSl9fWNsYXNzIFBhe2NvbnN0cnVjdG9yKHQsZSxyLG4pe3RoaXMuZXhwcmVzc2lvbj10LHRoaXMudHlwZT1yLHRoaXMubWF4VmFsdWU9MCx0aGlzLnBhaW50VmVydGV4QXR0cmlidXRlcz1lLm1hcCgodD0+KHtuYW1lOmBhXyR7dH1gLHR5cGU6XCJGbG9hdDMyXCIsY29tcG9uZW50czpcImNvbG9yXCI9PT1yPzI6MSxvZmZzZXQ6MH0pKSksdGhpcy5wYWludFZlcnRleEFycmF5PW5ldyBuO31wb3B1bGF0ZVBhaW50QXJyYXkodCxlLHIsbixpKXtjb25zdCBzPXRoaXMucGFpbnRWZXJ0ZXhBcnJheS5sZW5ndGgsYT10aGlzLmV4cHJlc3Npb24uZXZhbHVhdGUobmV3IFVpKDApLGUse30sbixbXSxpKTt0aGlzLnBhaW50VmVydGV4QXJyYXkucmVzaXplKHQpLHRoaXMuX3NldFBhaW50VmFsdWUocyx0LGEpO311cGRhdGVQYWludEFycmF5KHQsZSxyLG4pe2NvbnN0IGk9dGhpcy5leHByZXNzaW9uLmV2YWx1YXRlKHt6b29tOjB9LHIsbik7dGhpcy5fc2V0UGFpbnRWYWx1ZSh0LGUsaSk7fV9zZXRQYWludFZhbHVlKHQsZSxyKXtpZihcImNvbG9yXCI9PT10aGlzLnR5cGUpe2NvbnN0IG49TWEocik7Zm9yKGxldCByPXQ7cjxlO3IrKyl0aGlzLnBhaW50VmVydGV4QXJyYXkuZW1wbGFjZShyLG5bMF0sblsxXSk7fWVsc2Uge2ZvcihsZXQgbj10O248ZTtuKyspdGhpcy5wYWludFZlcnRleEFycmF5LmVtcGxhY2UobixyKTt0aGlzLm1heFZhbHVlPU1hdGgubWF4KHRoaXMubWF4VmFsdWUsTWF0aC5hYnMocikpO319dXBsb2FkKHQpe3RoaXMucGFpbnRWZXJ0ZXhBcnJheSYmdGhpcy5wYWludFZlcnRleEFycmF5LmFycmF5QnVmZmVyJiYodGhpcy5wYWludFZlcnRleEJ1ZmZlciYmdGhpcy5wYWludFZlcnRleEJ1ZmZlci5idWZmZXI/dGhpcy5wYWludFZlcnRleEJ1ZmZlci51cGRhdGVEYXRhKHRoaXMucGFpbnRWZXJ0ZXhBcnJheSk6dGhpcy5wYWludFZlcnRleEJ1ZmZlcj10LmNyZWF0ZVZlcnRleEJ1ZmZlcih0aGlzLnBhaW50VmVydGV4QXJyYXksdGhpcy5wYWludFZlcnRleEF0dHJpYnV0ZXMsdGhpcy5leHByZXNzaW9uLmlzU3RhdGVEZXBlbmRlbnQpKTt9ZGVzdHJveSgpe3RoaXMucGFpbnRWZXJ0ZXhCdWZmZXImJnRoaXMucGFpbnRWZXJ0ZXhCdWZmZXIuZGVzdHJveSgpO319Y2xhc3MgQ2F7Y29uc3RydWN0b3IodCxlLHIsbixpLHMpe3RoaXMuZXhwcmVzc2lvbj10LHRoaXMudW5pZm9ybU5hbWVzPWUubWFwKCh0PT5gdV8ke3R9X3RgKSksdGhpcy50eXBlPXIsdGhpcy51c2VJbnRlZ2VyWm9vbT1uLHRoaXMuem9vbT1pLHRoaXMubWF4VmFsdWU9MCx0aGlzLnBhaW50VmVydGV4QXR0cmlidXRlcz1lLm1hcCgodD0+KHtuYW1lOmBhXyR7dH1gLHR5cGU6XCJGbG9hdDMyXCIsY29tcG9uZW50czpcImNvbG9yXCI9PT1yPzQ6MixvZmZzZXQ6MH0pKSksdGhpcy5wYWludFZlcnRleEFycmF5PW5ldyBzO31wb3B1bGF0ZVBhaW50QXJyYXkodCxlLHIsbixpKXtjb25zdCBzPXRoaXMuZXhwcmVzc2lvbi5ldmFsdWF0ZShuZXcgVWkodGhpcy56b29tKSxlLHt9LG4sW10saSksYT10aGlzLmV4cHJlc3Npb24uZXZhbHVhdGUobmV3IFVpKHRoaXMuem9vbSsxKSxlLHt9LG4sW10saSksbz10aGlzLnBhaW50VmVydGV4QXJyYXkubGVuZ3RoO3RoaXMucGFpbnRWZXJ0ZXhBcnJheS5yZXNpemUodCksdGhpcy5fc2V0UGFpbnRWYWx1ZShvLHQscyxhKTt9dXBkYXRlUGFpbnRBcnJheSh0LGUscixuKXtjb25zdCBpPXRoaXMuZXhwcmVzc2lvbi5ldmFsdWF0ZSh7em9vbTp0aGlzLnpvb219LHIsbikscz10aGlzLmV4cHJlc3Npb24uZXZhbHVhdGUoe3pvb206dGhpcy56b29tKzF9LHIsbik7dGhpcy5fc2V0UGFpbnRWYWx1ZSh0LGUsaSxzKTt9X3NldFBhaW50VmFsdWUodCxlLHIsbil7aWYoXCJjb2xvclwiPT09dGhpcy50eXBlKXtjb25zdCBpPU1hKHIpLHM9TWEobik7Zm9yKGxldCByPXQ7cjxlO3IrKyl0aGlzLnBhaW50VmVydGV4QXJyYXkuZW1wbGFjZShyLGlbMF0saVsxXSxzWzBdLHNbMV0pO31lbHNlIHtmb3IobGV0IGk9dDtpPGU7aSsrKXRoaXMucGFpbnRWZXJ0ZXhBcnJheS5lbXBsYWNlKGkscixuKTt0aGlzLm1heFZhbHVlPU1hdGgubWF4KHRoaXMubWF4VmFsdWUsTWF0aC5hYnMociksTWF0aC5hYnMobikpO319dXBsb2FkKHQpe3RoaXMucGFpbnRWZXJ0ZXhBcnJheSYmdGhpcy5wYWludFZlcnRleEFycmF5LmFycmF5QnVmZmVyJiYodGhpcy5wYWludFZlcnRleEJ1ZmZlciYmdGhpcy5wYWludFZlcnRleEJ1ZmZlci5idWZmZXI/dGhpcy5wYWludFZlcnRleEJ1ZmZlci51cGRhdGVEYXRhKHRoaXMucGFpbnRWZXJ0ZXhBcnJheSk6dGhpcy5wYWludFZlcnRleEJ1ZmZlcj10LmNyZWF0ZVZlcnRleEJ1ZmZlcih0aGlzLnBhaW50VmVydGV4QXJyYXksdGhpcy5wYWludFZlcnRleEF0dHJpYnV0ZXMsdGhpcy5leHByZXNzaW9uLmlzU3RhdGVEZXBlbmRlbnQpKTt9ZGVzdHJveSgpe3RoaXMucGFpbnRWZXJ0ZXhCdWZmZXImJnRoaXMucGFpbnRWZXJ0ZXhCdWZmZXIuZGVzdHJveSgpO31zZXRVbmlmb3JtKHQsZSl7Y29uc3Qgcj10aGlzLnVzZUludGVnZXJab29tP01hdGguZmxvb3IoZS56b29tKTplLnpvb20sbj15KHRoaXMuZXhwcmVzc2lvbi5pbnRlcnBvbGF0aW9uRmFjdG9yKHIsdGhpcy56b29tLHRoaXMuem9vbSsxKSwwLDEpO3Quc2V0KG4pO31nZXRCaW5kaW5nKHQsZSxyKXtyZXR1cm4gbmV3IF9hKHQsZSl9fWNsYXNzIEJhe2NvbnN0cnVjdG9yKHQsZSxyLG4saSxzKXt0aGlzLmV4cHJlc3Npb249dCx0aGlzLnR5cGU9ZSx0aGlzLnVzZUludGVnZXJab29tPXIsdGhpcy56b29tPW4sdGhpcy5sYXllcklkPXMsdGhpcy56b29tSW5QYWludFZlcnRleEFycmF5PW5ldyBpLHRoaXMuem9vbU91dFBhaW50VmVydGV4QXJyYXk9bmV3IGk7fXBvcHVsYXRlUGFpbnRBcnJheSh0LGUscil7Y29uc3Qgbj10aGlzLnpvb21JblBhaW50VmVydGV4QXJyYXkubGVuZ3RoO3RoaXMuem9vbUluUGFpbnRWZXJ0ZXhBcnJheS5yZXNpemUodCksdGhpcy56b29tT3V0UGFpbnRWZXJ0ZXhBcnJheS5yZXNpemUodCksdGhpcy5fc2V0UGFpbnRWYWx1ZXMobix0LGUucGF0dGVybnMmJmUucGF0dGVybnNbdGhpcy5sYXllcklkXSxyKTt9dXBkYXRlUGFpbnRBcnJheSh0LGUscixuLGkpe3RoaXMuX3NldFBhaW50VmFsdWVzKHQsZSxyLnBhdHRlcm5zJiZyLnBhdHRlcm5zW3RoaXMubGF5ZXJJZF0saSk7fV9zZXRQYWludFZhbHVlcyh0LGUscixuKXtpZighbnx8IXIpcmV0dXJuO2NvbnN0e21pbjppLG1pZDpzLG1heDphfT1yLG89bltpXSxsPW5bc10sdT1uW2FdO2lmKG8mJmwmJnUpZm9yKGxldCByPXQ7cjxlO3IrKyl0aGlzLnpvb21JblBhaW50VmVydGV4QXJyYXkuZW1wbGFjZShyLGwudGxbMF0sbC50bFsxXSxsLmJyWzBdLGwuYnJbMV0sby50bFswXSxvLnRsWzFdLG8uYnJbMF0sby5iclsxXSxsLnBpeGVsUmF0aW8sby5waXhlbFJhdGlvKSx0aGlzLnpvb21PdXRQYWludFZlcnRleEFycmF5LmVtcGxhY2UocixsLnRsWzBdLGwudGxbMV0sbC5iclswXSxsLmJyWzFdLHUudGxbMF0sdS50bFsxXSx1LmJyWzBdLHUuYnJbMV0sbC5waXhlbFJhdGlvLHUucGl4ZWxSYXRpbyk7fXVwbG9hZCh0KXt0aGlzLnpvb21JblBhaW50VmVydGV4QXJyYXkmJnRoaXMuem9vbUluUGFpbnRWZXJ0ZXhBcnJheS5hcnJheUJ1ZmZlciYmdGhpcy56b29tT3V0UGFpbnRWZXJ0ZXhBcnJheSYmdGhpcy56b29tT3V0UGFpbnRWZXJ0ZXhBcnJheS5hcnJheUJ1ZmZlciYmKHRoaXMuem9vbUluUGFpbnRWZXJ0ZXhCdWZmZXI9dC5jcmVhdGVWZXJ0ZXhCdWZmZXIodGhpcy56b29tSW5QYWludFZlcnRleEFycmF5LHVhLm1lbWJlcnMsdGhpcy5leHByZXNzaW9uLmlzU3RhdGVEZXBlbmRlbnQpLHRoaXMuem9vbU91dFBhaW50VmVydGV4QnVmZmVyPXQuY3JlYXRlVmVydGV4QnVmZmVyKHRoaXMuem9vbU91dFBhaW50VmVydGV4QXJyYXksdWEubWVtYmVycyx0aGlzLmV4cHJlc3Npb24uaXNTdGF0ZURlcGVuZGVudCkpO31kZXN0cm95KCl7dGhpcy56b29tT3V0UGFpbnRWZXJ0ZXhCdWZmZXImJnRoaXMuem9vbU91dFBhaW50VmVydGV4QnVmZmVyLmRlc3Ryb3koKSx0aGlzLnpvb21JblBhaW50VmVydGV4QnVmZmVyJiZ0aGlzLnpvb21JblBhaW50VmVydGV4QnVmZmVyLmRlc3Ryb3koKTt9fWNsYXNzIFZhe2NvbnN0cnVjdG9yKHQsZSxyKXt0aGlzLmJpbmRlcnM9e30sdGhpcy5fYnVmZmVycz1bXTtjb25zdCBuPVtdO2Zvcihjb25zdCBpIGluIHQucGFpbnQuX3ZhbHVlcyl7aWYoIXIoaSkpY29udGludWU7Y29uc3Qgcz10LnBhaW50LmdldChpKTtpZighKHMgaW5zdGFuY2VvZiBIaSYmYW4ocy5wcm9wZXJ0eS5zcGVjaWZpY2F0aW9uKSkpY29udGludWU7Y29uc3QgYT1GYShpLHQudHlwZSksbz1zLnZhbHVlLGw9cy5wcm9wZXJ0eS5zcGVjaWZpY2F0aW9uLnR5cGUsdT1zLnByb3BlcnR5LnVzZUludGVnZXJab29tLGM9cy5wcm9wZXJ0eS5zcGVjaWZpY2F0aW9uW1wicHJvcGVydHktdHlwZVwiXSxoPVwiY3Jvc3MtZmFkZWRcIj09PWN8fFwiY3Jvc3MtZmFkZWQtZGF0YS1kcml2ZW5cIj09PWM7aWYoXCJjb25zdGFudFwiPT09by5raW5kKXRoaXMuYmluZGVyc1tpXT1oP25ldyB6YShvLnZhbHVlLGEpOm5ldyBJYShvLnZhbHVlLGEsbCksbi5wdXNoKGAvdV8ke2l9YCk7ZWxzZSBpZihcInNvdXJjZVwiPT09by5raW5kfHxoKXtjb25zdCByPVRhKGksbCxcInNvdXJjZVwiKTt0aGlzLmJpbmRlcnNbaV09aD9uZXcgQmEobyxsLHUsZSxyLHQuaWQpOm5ldyBQYShvLGEsbCxyKSxuLnB1c2goYC9hXyR7aX1gKTt9ZWxzZSB7Y29uc3QgdD1UYShpLGwsXCJjb21wb3NpdGVcIik7dGhpcy5iaW5kZXJzW2ldPW5ldyBDYShvLGEsbCx1LGUsdCksbi5wdXNoKGAvel8ke2l9YCk7fX10aGlzLmNhY2hlS2V5PW4uc29ydCgpLmpvaW4oXCJcIik7fWdldE1heFZhbHVlKHQpe2NvbnN0IGU9dGhpcy5iaW5kZXJzW3RdO3JldHVybiBlIGluc3RhbmNlb2YgUGF8fGUgaW5zdGFuY2VvZiBDYT9lLm1heFZhbHVlOjB9cG9wdWxhdGVQYWludEFycmF5cyh0LGUscixuLGkpe2Zvcihjb25zdCBzIGluIHRoaXMuYmluZGVycyl7Y29uc3QgYT10aGlzLmJpbmRlcnNbc107KGEgaW5zdGFuY2VvZiBQYXx8YSBpbnN0YW5jZW9mIENhfHxhIGluc3RhbmNlb2YgQmEpJiZhLnBvcHVsYXRlUGFpbnRBcnJheSh0LGUscixuLGkpO319c2V0Q29uc3RhbnRQYXR0ZXJuUG9zaXRpb25zKHQsZSl7Zm9yKGNvbnN0IHIgaW4gdGhpcy5iaW5kZXJzKXtjb25zdCBuPXRoaXMuYmluZGVyc1tyXTtuIGluc3RhbmNlb2YgemEmJm4uc2V0Q29uc3RhbnRQYXR0ZXJuUG9zaXRpb25zKHQsZSk7fX11cGRhdGVQYWludEFycmF5cyh0LGUscixuLGkpe2xldCBzPSExO2Zvcihjb25zdCBhIGluIHQpe2NvbnN0IG89ZS5nZXRQb3NpdGlvbnMoYSk7Zm9yKGNvbnN0IGUgb2Ygbyl7Y29uc3Qgbz1yLmZlYXR1cmUoZS5pbmRleCk7Zm9yKGNvbnN0IHIgaW4gdGhpcy5iaW5kZXJzKXtjb25zdCBsPXRoaXMuYmluZGVyc1tyXTtpZigobCBpbnN0YW5jZW9mIFBhfHxsIGluc3RhbmNlb2YgQ2F8fGwgaW5zdGFuY2VvZiBCYSkmJiEwPT09bC5leHByZXNzaW9uLmlzU3RhdGVEZXBlbmRlbnQpe2NvbnN0IHU9bi5wYWludC5nZXQocik7bC5leHByZXNzaW9uPXUudmFsdWUsbC51cGRhdGVQYWludEFycmF5KGUuc3RhcnQsZS5lbmQsbyx0W2FdLGkpLHM9ITA7fX19fXJldHVybiBzfWRlZmluZXMoKXtjb25zdCB0PVtdO2Zvcihjb25zdCBlIGluIHRoaXMuYmluZGVycyl7Y29uc3Qgcj10aGlzLmJpbmRlcnNbZV07KHIgaW5zdGFuY2VvZiBJYXx8ciBpbnN0YW5jZW9mIHphKSYmdC5wdXNoKC4uLnIudW5pZm9ybU5hbWVzLm1hcCgodD0+YCNkZWZpbmUgSEFTX1VOSUZPUk1fJHt0fWApKSk7fXJldHVybiB0fWdldEJpbmRlckF0dHJpYnV0ZXMoKXtjb25zdCB0PVtdO2Zvcihjb25zdCBlIGluIHRoaXMuYmluZGVycyl7Y29uc3Qgcj10aGlzLmJpbmRlcnNbZV07aWYociBpbnN0YW5jZW9mIFBhfHxyIGluc3RhbmNlb2YgQ2EpZm9yKGxldCBlPTA7ZTxyLnBhaW50VmVydGV4QXR0cmlidXRlcy5sZW5ndGg7ZSsrKXQucHVzaChyLnBhaW50VmVydGV4QXR0cmlidXRlc1tlXS5uYW1lKTtlbHNlIGlmKHIgaW5zdGFuY2VvZiBCYSlmb3IobGV0IGU9MDtlPHVhLm1lbWJlcnMubGVuZ3RoO2UrKyl0LnB1c2godWEubWVtYmVyc1tlXS5uYW1lKTt9cmV0dXJuIHR9Z2V0QmluZGVyVW5pZm9ybXMoKXtjb25zdCB0PVtdO2Zvcihjb25zdCBlIGluIHRoaXMuYmluZGVycyl7Y29uc3Qgcj10aGlzLmJpbmRlcnNbZV07aWYociBpbnN0YW5jZW9mIElhfHxyIGluc3RhbmNlb2YgemF8fHIgaW5zdGFuY2VvZiBDYSlmb3IoY29uc3QgZSBvZiByLnVuaWZvcm1OYW1lcyl0LnB1c2goZSk7fXJldHVybiB0fWdldFBhaW50VmVydGV4QnVmZmVycygpe3JldHVybiB0aGlzLl9idWZmZXJzfWdldFVuaWZvcm1zKHQsZSl7Y29uc3Qgcj1bXTtmb3IoY29uc3QgbiBpbiB0aGlzLmJpbmRlcnMpe2NvbnN0IGk9dGhpcy5iaW5kZXJzW25dO2lmKGkgaW5zdGFuY2VvZiBJYXx8aSBpbnN0YW5jZW9mIHphfHxpIGluc3RhbmNlb2YgQ2EpZm9yKGNvbnN0IHMgb2YgaS51bmlmb3JtTmFtZXMpaWYoZVtzXSl7Y29uc3QgYT1pLmdldEJpbmRpbmcodCxlW3NdLHMpO3IucHVzaCh7bmFtZTpzLHByb3BlcnR5Om4sYmluZGluZzphfSk7fX1yZXR1cm4gcn1zZXRVbmlmb3Jtcyh0LGUscixuKXtmb3IoY29uc3R7bmFtZTp0LHByb3BlcnR5OmksYmluZGluZzpzfW9mIGUpdGhpcy5iaW5kZXJzW2ldLnNldFVuaWZvcm0ocyxuLHIuZ2V0KGkpLHQpO311cGRhdGVQYWludEJ1ZmZlcnModCl7dGhpcy5fYnVmZmVycz1bXTtmb3IoY29uc3QgZSBpbiB0aGlzLmJpbmRlcnMpe2NvbnN0IHI9dGhpcy5iaW5kZXJzW2VdO2lmKHQmJnIgaW5zdGFuY2VvZiBCYSl7Y29uc3QgZT0yPT09dC5mcm9tU2NhbGU/ci56b29tSW5QYWludFZlcnRleEJ1ZmZlcjpyLnpvb21PdXRQYWludFZlcnRleEJ1ZmZlcjtlJiZ0aGlzLl9idWZmZXJzLnB1c2goZSk7fWVsc2UgKHIgaW5zdGFuY2VvZiBQYXx8ciBpbnN0YW5jZW9mIENhKSYmci5wYWludFZlcnRleEJ1ZmZlciYmdGhpcy5fYnVmZmVycy5wdXNoKHIucGFpbnRWZXJ0ZXhCdWZmZXIpO319dXBsb2FkKHQpe2Zvcihjb25zdCBlIGluIHRoaXMuYmluZGVycyl7Y29uc3Qgcj10aGlzLmJpbmRlcnNbZV07KHIgaW5zdGFuY2VvZiBQYXx8ciBpbnN0YW5jZW9mIENhfHxyIGluc3RhbmNlb2YgQmEpJiZyLnVwbG9hZCh0KTt9dGhpcy51cGRhdGVQYWludEJ1ZmZlcnMoKTt9ZGVzdHJveSgpe2Zvcihjb25zdCB0IGluIHRoaXMuYmluZGVycyl7Y29uc3QgZT10aGlzLmJpbmRlcnNbdF07KGUgaW5zdGFuY2VvZiBQYXx8ZSBpbnN0YW5jZW9mIENhfHxlIGluc3RhbmNlb2YgQmEpJiZlLmRlc3Ryb3koKTt9fX1jbGFzcyBFYXtjb25zdHJ1Y3Rvcih0LGUscj0oKCk9PiEwKSl7dGhpcy5wcm9ncmFtQ29uZmlndXJhdGlvbnM9e307Zm9yKGNvbnN0IG4gb2YgdCl0aGlzLnByb2dyYW1Db25maWd1cmF0aW9uc1tuLmlkXT1uZXcgVmEobixlLHIpO3RoaXMubmVlZHNVcGxvYWQ9ITEsdGhpcy5fZmVhdHVyZU1hcD1uZXcgZ2EsdGhpcy5fYnVmZmVyT2Zmc2V0PTA7fXBvcHVsYXRlUGFpbnRBcnJheXModCxlLHIsbixpLHMpe2Zvcihjb25zdCByIGluIHRoaXMucHJvZ3JhbUNvbmZpZ3VyYXRpb25zKXRoaXMucHJvZ3JhbUNvbmZpZ3VyYXRpb25zW3JdLnBvcHVsYXRlUGFpbnRBcnJheXModCxlLG4saSxzKTt2b2lkIDAhPT1lLmlkJiZ0aGlzLl9mZWF0dXJlTWFwLmFkZChlLmlkLHIsdGhpcy5fYnVmZmVyT2Zmc2V0LHQpLHRoaXMuX2J1ZmZlck9mZnNldD10LHRoaXMubmVlZHNVcGxvYWQ9ITA7fXVwZGF0ZVBhaW50QXJyYXlzKHQsZSxyLG4pe2Zvcihjb25zdCBpIG9mIHIpdGhpcy5uZWVkc1VwbG9hZD10aGlzLnByb2dyYW1Db25maWd1cmF0aW9uc1tpLmlkXS51cGRhdGVQYWludEFycmF5cyh0LHRoaXMuX2ZlYXR1cmVNYXAsZSxpLG4pfHx0aGlzLm5lZWRzVXBsb2FkO31nZXQodCl7cmV0dXJuIHRoaXMucHJvZ3JhbUNvbmZpZ3VyYXRpb25zW3RdfXVwbG9hZCh0KXtpZih0aGlzLm5lZWRzVXBsb2FkKXtmb3IoY29uc3QgZSBpbiB0aGlzLnByb2dyYW1Db25maWd1cmF0aW9ucyl0aGlzLnByb2dyYW1Db25maWd1cmF0aW9uc1tlXS51cGxvYWQodCk7dGhpcy5uZWVkc1VwbG9hZD0hMTt9fWRlc3Ryb3koKXtmb3IoY29uc3QgdCBpbiB0aGlzLnByb2dyYW1Db25maWd1cmF0aW9ucyl0aGlzLnByb2dyYW1Db25maWd1cmF0aW9uc1t0XS5kZXN0cm95KCk7fX1mdW5jdGlvbiBGYSh0LGUpe3JldHVybiB7XCJ0ZXh0LW9wYWNpdHlcIjpbXCJvcGFjaXR5XCJdLFwiaWNvbi1vcGFjaXR5XCI6W1wib3BhY2l0eVwiXSxcInRleHQtY29sb3JcIjpbXCJmaWxsX2NvbG9yXCJdLFwiaWNvbi1jb2xvclwiOltcImZpbGxfY29sb3JcIl0sXCJ0ZXh0LWhhbG8tY29sb3JcIjpbXCJoYWxvX2NvbG9yXCJdLFwiaWNvbi1oYWxvLWNvbG9yXCI6W1wiaGFsb19jb2xvclwiXSxcInRleHQtaGFsby1ibHVyXCI6W1wiaGFsb19ibHVyXCJdLFwiaWNvbi1oYWxvLWJsdXJcIjpbXCJoYWxvX2JsdXJcIl0sXCJ0ZXh0LWhhbG8td2lkdGhcIjpbXCJoYWxvX3dpZHRoXCJdLFwiaWNvbi1oYWxvLXdpZHRoXCI6W1wiaGFsb193aWR0aFwiXSxcImxpbmUtZ2FwLXdpZHRoXCI6W1wiZ2Fwd2lkdGhcIl0sXCJsaW5lLXBhdHRlcm5cIjpbXCJwYXR0ZXJuX3RvXCIsXCJwYXR0ZXJuX2Zyb21cIixcInBpeGVsX3JhdGlvX3RvXCIsXCJwaXhlbF9yYXRpb19mcm9tXCJdLFwiZmlsbC1wYXR0ZXJuXCI6W1wicGF0dGVybl90b1wiLFwicGF0dGVybl9mcm9tXCIsXCJwaXhlbF9yYXRpb190b1wiLFwicGl4ZWxfcmF0aW9fZnJvbVwiXSxcImZpbGwtZXh0cnVzaW9uLXBhdHRlcm5cIjpbXCJwYXR0ZXJuX3RvXCIsXCJwYXR0ZXJuX2Zyb21cIixcInBpeGVsX3JhdGlvX3RvXCIsXCJwaXhlbF9yYXRpb19mcm9tXCJdfVt0XXx8W3QucmVwbGFjZShgJHtlfS1gLFwiXCIpLnJlcGxhY2UoLy0vZyxcIl9cIildfWZ1bmN0aW9uIFRhKHQsZSxyKXtjb25zdCBuPXtjb2xvcjp7c291cmNlOnlzLGNvbXBvc2l0ZTpWc30sbnVtYmVyOntzb3VyY2U6SXMsY29tcG9zaXRlOnlzfX0saT1mdW5jdGlvbih0KXtyZXR1cm4ge1wibGluZS1wYXR0ZXJuXCI6e3NvdXJjZTpKcyxjb21wb3NpdGU6SnN9LFwiZmlsbC1wYXR0ZXJuXCI6e3NvdXJjZTpKcyxjb21wb3NpdGU6SnN9LFwiZmlsbC1leHRydXNpb24tcGF0dGVyblwiOntzb3VyY2U6SnMsY29tcG9zaXRlOkpzfX1bdF19KHQpO3JldHVybiBpJiZpW3JdfHxuW2VdW3JdfXdpKFwiQ29uc3RhbnRCaW5kZXJcIixJYSksd2koXCJDcm9zc0ZhZGVkQ29uc3RhbnRCaW5kZXJcIix6YSksd2koXCJTb3VyY2VFeHByZXNzaW9uQmluZGVyXCIsUGEpLHdpKFwiQ3Jvc3NGYWRlZENvbXBvc2l0ZUJpbmRlclwiLEJhKSx3aShcIkNvbXBvc2l0ZUV4cHJlc3Npb25CaW5kZXJcIixDYSksd2koXCJQcm9ncmFtQ29uZmlndXJhdGlvblwiLFZhLHtvbWl0OltcIl9idWZmZXJzXCJdfSksd2koXCJQcm9ncmFtQ29uZmlndXJhdGlvblNldFwiLEVhKTtjb25zdCAkYT04MTkyLExhPU1hdGgucG93KDIsMTQpLTEsRGE9LUxhLTE7ZnVuY3Rpb24gT2EodCl7Y29uc3QgZT0kYS90LmV4dGVudCxyPXQubG9hZEdlb21ldHJ5KCk7Zm9yKGxldCB0PTA7dDxyLmxlbmd0aDt0Kyspe2NvbnN0IG49clt0XTtmb3IobGV0IHQ9MDt0PG4ubGVuZ3RoO3QrKyl7Y29uc3Qgcj1uW3RdLGk9TWF0aC5yb3VuZChyLngqZSkscz1NYXRoLnJvdW5kKHIueSplKTtyLng9eShpLERhLExhKSxyLnk9eShzLERhLExhKSwoaTxyLnh8fGk+ci54KzF8fHM8ci55fHxzPnIueSsxKSYmQShcIkdlb21ldHJ5IGV4Y2VlZHMgYWxsb3dlZCBleHRlbnQsIHJlZHVjZSB5b3VyIHZlY3RvciB0aWxlIGJ1ZmZlciBzaXplXCIpO319cmV0dXJuIHJ9ZnVuY3Rpb24gamEodCxlKXtyZXR1cm4ge3R5cGU6dC50eXBlLGlkOnQuaWQscHJvcGVydGllczp0LnByb3BlcnRpZXMsZ2VvbWV0cnk6ZT9PYSh0KTpbXX19ZnVuY3Rpb24gUmEodCxlLHIsbixpKXt0LmVtcGxhY2VCYWNrKDIqZSsobisxKS8yLDIqcisoaSsxKS8yKTt9Y2xhc3MgVWF7Y29uc3RydWN0b3IodCl7dGhpcy56b29tPXQuem9vbSx0aGlzLm92ZXJzY2FsaW5nPXQub3ZlcnNjYWxpbmcsdGhpcy5sYXllcnM9dC5sYXllcnMsdGhpcy5sYXllcklkcz10aGlzLmxheWVycy5tYXAoKHQ9PnQuaWQpKSx0aGlzLmluZGV4PXQuaW5kZXgsdGhpcy5oYXNQYXR0ZXJuPSExLHRoaXMubGF5b3V0VmVydGV4QXJyYXk9bmV3IEdzLHRoaXMuaW5kZXhBcnJheT1uZXcgbmEsdGhpcy5zZWdtZW50cz1uZXcgb2EsdGhpcy5wcm9ncmFtQ29uZmlndXJhdGlvbnM9bmV3IEVhKHQubGF5ZXJzLHQuem9vbSksdGhpcy5zdGF0ZURlcGVuZGVudExheWVySWRzPXRoaXMubGF5ZXJzLmZpbHRlcigodD0+dC5pc1N0YXRlRGVwZW5kZW50KCkpKS5tYXAoKHQ9PnQuaWQpKTt9cG9wdWxhdGUodCxlLHIpe2NvbnN0IG49dGhpcy5sYXllcnNbMF0saT1bXTtsZXQgcz1udWxsLGE9ITE7XCJjaXJjbGVcIj09PW4udHlwZSYmKHM9bi5sYXlvdXQuZ2V0KFwiY2lyY2xlLXNvcnQta2V5XCIpLGE9IXMuaXNDb25zdGFudCgpKTtmb3IoY29uc3R7ZmVhdHVyZTplLGlkOm4saW5kZXg6byxzb3VyY2VMYXllckluZGV4Omx9b2YgdCl7Y29uc3QgdD10aGlzLmxheWVyc1swXS5fZmVhdHVyZUZpbHRlci5uZWVkR2VvbWV0cnksdT1qYShlLHQpO2lmKCF0aGlzLmxheWVyc1swXS5fZmVhdHVyZUZpbHRlci5maWx0ZXIobmV3IFVpKHRoaXMuem9vbSksdSxyKSljb250aW51ZTtjb25zdCBjPWE/cy5ldmFsdWF0ZSh1LHt9LHIpOnZvaWQgMCxoPXtpZDpuLHByb3BlcnRpZXM6ZS5wcm9wZXJ0aWVzLHR5cGU6ZS50eXBlLHNvdXJjZUxheWVySW5kZXg6bCxpbmRleDpvLGdlb21ldHJ5OnQ/dS5nZW9tZXRyeTpPYShlKSxwYXR0ZXJuczp7fSxzb3J0S2V5OmN9O2kucHVzaChoKTt9YSYmaS5zb3J0KCgodCxlKT0+dC5zb3J0S2V5LWUuc29ydEtleSkpO2Zvcihjb25zdCBuIG9mIGkpe2NvbnN0e2dlb21ldHJ5OmksaW5kZXg6cyxzb3VyY2VMYXllckluZGV4OmF9PW4sbz10W3NdLmZlYXR1cmU7dGhpcy5hZGRGZWF0dXJlKG4saSxzLHIpLGUuZmVhdHVyZUluZGV4Lmluc2VydChvLGkscyxhLHRoaXMuaW5kZXgpO319dXBkYXRlKHQsZSxyKXt0aGlzLnN0YXRlRGVwZW5kZW50TGF5ZXJzLmxlbmd0aCYmdGhpcy5wcm9ncmFtQ29uZmlndXJhdGlvbnMudXBkYXRlUGFpbnRBcnJheXModCxlLHRoaXMuc3RhdGVEZXBlbmRlbnRMYXllcnMscik7fWlzRW1wdHkoKXtyZXR1cm4gMD09PXRoaXMubGF5b3V0VmVydGV4QXJyYXkubGVuZ3RofXVwbG9hZFBlbmRpbmcoKXtyZXR1cm4gIXRoaXMudXBsb2FkZWR8fHRoaXMucHJvZ3JhbUNvbmZpZ3VyYXRpb25zLm5lZWRzVXBsb2FkfXVwbG9hZCh0KXt0aGlzLnVwbG9hZGVkfHwodGhpcy5sYXlvdXRWZXJ0ZXhCdWZmZXI9dC5jcmVhdGVWZXJ0ZXhCdWZmZXIodGhpcy5sYXlvdXRWZXJ0ZXhBcnJheSxhYSksdGhpcy5pbmRleEJ1ZmZlcj10LmNyZWF0ZUluZGV4QnVmZmVyKHRoaXMuaW5kZXhBcnJheSkpLHRoaXMucHJvZ3JhbUNvbmZpZ3VyYXRpb25zLnVwbG9hZCh0KSx0aGlzLnVwbG9hZGVkPSEwO31kZXN0cm95KCl7dGhpcy5sYXlvdXRWZXJ0ZXhCdWZmZXImJih0aGlzLmxheW91dFZlcnRleEJ1ZmZlci5kZXN0cm95KCksdGhpcy5pbmRleEJ1ZmZlci5kZXN0cm95KCksdGhpcy5wcm9ncmFtQ29uZmlndXJhdGlvbnMuZGVzdHJveSgpLHRoaXMuc2VnbWVudHMuZGVzdHJveSgpKTt9YWRkRmVhdHVyZSh0LGUscixuKXtmb3IoY29uc3QgciBvZiBlKWZvcihjb25zdCBlIG9mIHIpe2NvbnN0IHI9ZS54LG49ZS55O2lmKHI8MHx8cj49JGF8fG48MHx8bj49JGEpY29udGludWU7Y29uc3QgaT10aGlzLnNlZ21lbnRzLnByZXBhcmVTZWdtZW50KDQsdGhpcy5sYXlvdXRWZXJ0ZXhBcnJheSx0aGlzLmluZGV4QXJyYXksdC5zb3J0S2V5KSxzPWkudmVydGV4TGVuZ3RoO1JhKHRoaXMubGF5b3V0VmVydGV4QXJyYXkscixuLC0xLC0xKSxSYSh0aGlzLmxheW91dFZlcnRleEFycmF5LHIsbiwxLC0xKSxSYSh0aGlzLmxheW91dFZlcnRleEFycmF5LHIsbiwxLDEpLFJhKHRoaXMubGF5b3V0VmVydGV4QXJyYXkscixuLC0xLDEpLHRoaXMuaW5kZXhBcnJheS5lbXBsYWNlQmFjayhzLHMrMSxzKzIpLHRoaXMuaW5kZXhBcnJheS5lbXBsYWNlQmFjayhzLHMrMyxzKzIpLGkudmVydGV4TGVuZ3RoKz00LGkucHJpbWl0aXZlTGVuZ3RoKz0yO310aGlzLnByb2dyYW1Db25maWd1cmF0aW9ucy5wb3B1bGF0ZVBhaW50QXJyYXlzKHRoaXMubGF5b3V0VmVydGV4QXJyYXkubGVuZ3RoLHQscix7fSxuKTt9fWZ1bmN0aW9uIHFhKHQsZSl7Zm9yKGxldCByPTA7cjx0Lmxlbmd0aDtyKyspaWYoV2EoZSx0W3JdKSlyZXR1cm4gITA7Zm9yKGxldCByPTA7cjxlLmxlbmd0aDtyKyspaWYoV2EodCxlW3JdKSlyZXR1cm4gITA7cmV0dXJuICEhS2EodCxlKX1mdW5jdGlvbiBOYSh0LGUscil7cmV0dXJuICEhV2EodCxlKXx8ISFIYShlLHQscil9ZnVuY3Rpb24gWmEodCxlKXtpZigxPT09dC5sZW5ndGgpcmV0dXJuIEphKGUsdFswXSk7Zm9yKGxldCByPTA7cjxlLmxlbmd0aDtyKyspe2NvbnN0IG49ZVtyXTtmb3IobGV0IGU9MDtlPG4ubGVuZ3RoO2UrKylpZihXYSh0LG5bZV0pKXJldHVybiAhMH1mb3IobGV0IHI9MDtyPHQubGVuZ3RoO3IrKylpZihKYShlLHRbcl0pKXJldHVybiAhMDtmb3IobGV0IHI9MDtyPGUubGVuZ3RoO3IrKylpZihLYSh0LGVbcl0pKXJldHVybiAhMDtyZXR1cm4gITF9ZnVuY3Rpb24gR2EodCxlLHIpe2lmKHQubGVuZ3RoPjEpe2lmKEthKHQsZSkpcmV0dXJuICEwO2ZvcihsZXQgbj0wO248ZS5sZW5ndGg7bisrKWlmKEhhKGVbbl0sdCxyKSlyZXR1cm4gITB9Zm9yKGxldCBuPTA7bjx0Lmxlbmd0aDtuKyspaWYoSGEodFtuXSxlLHIpKXJldHVybiAhMDtyZXR1cm4gITF9ZnVuY3Rpb24gS2EodCxlKXtpZigwPT09dC5sZW5ndGh8fDA9PT1lLmxlbmd0aClyZXR1cm4gITE7Zm9yKGxldCByPTA7cjx0Lmxlbmd0aC0xO3IrKyl7Y29uc3Qgbj10W3JdLGk9dFtyKzFdO2ZvcihsZXQgdD0wO3Q8ZS5sZW5ndGgtMTt0KyspaWYoWGEobixpLGVbdF0sZVt0KzFdKSlyZXR1cm4gITB9cmV0dXJuICExfWZ1bmN0aW9uIFhhKHQsZSxyLG4pe3JldHVybiBTKHQscixuKSE9PVMoZSxyLG4pJiZTKHQsZSxyKSE9PVModCxlLG4pfWZ1bmN0aW9uIEhhKHQsZSxyKXtjb25zdCBuPXIqcjtpZigxPT09ZS5sZW5ndGgpcmV0dXJuIHQuZGlzdFNxcihlWzBdKTxuO2ZvcihsZXQgcj0xO3I8ZS5sZW5ndGg7cisrKWlmKFlhKHQsZVtyLTFdLGVbcl0pPG4pcmV0dXJuICEwO3JldHVybiAhMX1mdW5jdGlvbiBZYSh0LGUscil7Y29uc3Qgbj1lLmRpc3RTcXIocik7aWYoMD09PW4pcmV0dXJuIHQuZGlzdFNxcihlKTtjb25zdCBpPSgodC54LWUueCkqKHIueC1lLngpKyh0LnktZS55KSooci55LWUueSkpL247cmV0dXJuIHQuZGlzdFNxcihpPDA/ZTppPjE/cjpyLnN1YihlKS5fbXVsdChpKS5fYWRkKGUpKX1mdW5jdGlvbiBKYSh0LGUpe2xldCByLG4saSxzPSExO2ZvcihsZXQgYT0wO2E8dC5sZW5ndGg7YSsrKXtyPXRbYV07Zm9yKGxldCB0PTAsYT1yLmxlbmd0aC0xO3Q8ci5sZW5ndGg7YT10Kyspbj1yW3RdLGk9clthXSxuLnk+ZS55IT1pLnk+ZS55JiZlLng8KGkueC1uLngpKihlLnktbi55KS8oaS55LW4ueSkrbi54JiYocz0hcyk7fXJldHVybiBzfWZ1bmN0aW9uIFdhKHQsZSl7bGV0IHI9ITE7Zm9yKGxldCBuPTAsaT10Lmxlbmd0aC0xO248dC5sZW5ndGg7aT1uKyspe2NvbnN0IHM9dFtuXSxhPXRbaV07cy55PmUueSE9YS55PmUueSYmZS54PChhLngtcy54KSooZS55LXMueSkvKGEueS1zLnkpK3MueCYmKHI9IXIpO31yZXR1cm4gcn1mdW5jdGlvbiBRYSh0LGUscil7Y29uc3Qgbj1yWzBdLGk9clsyXTtpZih0Lng8bi54JiZlLng8bi54fHx0Lng+aS54JiZlLng+aS54fHx0Lnk8bi55JiZlLnk8bi55fHx0Lnk+aS55JiZlLnk+aS55KXJldHVybiAhMTtjb25zdCBzPVModCxlLHJbMF0pO3JldHVybiBzIT09Uyh0LGUsclsxXSl8fHMhPT1TKHQsZSxyWzJdKXx8cyE9PVModCxlLHJbM10pfWZ1bmN0aW9uIHRvKHQsZSxyKXtjb25zdCBuPWUucGFpbnQuZ2V0KHQpLnZhbHVlO3JldHVybiBcImNvbnN0YW50XCI9PT1uLmtpbmQ/bi52YWx1ZTpyLnByb2dyYW1Db25maWd1cmF0aW9ucy5nZXQoZS5pZCkuZ2V0TWF4VmFsdWUodCl9ZnVuY3Rpb24gZW8odCl7cmV0dXJuIE1hdGguc3FydCh0WzBdKnRbMF0rdFsxXSp0WzFdKX1mdW5jdGlvbiBybyh0LGUscixuLGkpe2lmKCFlWzBdJiYhZVsxXSlyZXR1cm4gdDtjb25zdCBhPXMuY29udmVydChlKS5fbXVsdChpKTtcInZpZXdwb3J0XCI9PT1yJiZhLl9yb3RhdGUoLW4pO2NvbnN0IG89W107Zm9yKGxldCBlPTA7ZTx0Lmxlbmd0aDtlKyspby5wdXNoKHRbZV0uc3ViKGEpKTtyZXR1cm4gb31sZXQgbm8saW87d2koXCJDaXJjbGVCdWNrZXRcIixVYSx7b21pdDpbXCJsYXllcnNcIl19KTt2YXIgc289e2dldCBwYWludCgpe3JldHVybiBpbz1pb3x8bmV3IHJzKHtcImNpcmNsZS1yYWRpdXNcIjpuZXcgV2koRy5wYWludF9jaXJjbGVbXCJjaXJjbGUtcmFkaXVzXCJdKSxcImNpcmNsZS1jb2xvclwiOm5ldyBXaShHLnBhaW50X2NpcmNsZVtcImNpcmNsZS1jb2xvclwiXSksXCJjaXJjbGUtYmx1clwiOm5ldyBXaShHLnBhaW50X2NpcmNsZVtcImNpcmNsZS1ibHVyXCJdKSxcImNpcmNsZS1vcGFjaXR5XCI6bmV3IFdpKEcucGFpbnRfY2lyY2xlW1wiY2lyY2xlLW9wYWNpdHlcIl0pLFwiY2lyY2xlLXRyYW5zbGF0ZVwiOm5ldyBKaShHLnBhaW50X2NpcmNsZVtcImNpcmNsZS10cmFuc2xhdGVcIl0pLFwiY2lyY2xlLXRyYW5zbGF0ZS1hbmNob3JcIjpuZXcgSmkoRy5wYWludF9jaXJjbGVbXCJjaXJjbGUtdHJhbnNsYXRlLWFuY2hvclwiXSksXCJjaXJjbGUtcGl0Y2gtc2NhbGVcIjpuZXcgSmkoRy5wYWludF9jaXJjbGVbXCJjaXJjbGUtcGl0Y2gtc2NhbGVcIl0pLFwiY2lyY2xlLXBpdGNoLWFsaWdubWVudFwiOm5ldyBKaShHLnBhaW50X2NpcmNsZVtcImNpcmNsZS1waXRjaC1hbGlnbm1lbnRcIl0pLFwiY2lyY2xlLXN0cm9rZS13aWR0aFwiOm5ldyBXaShHLnBhaW50X2NpcmNsZVtcImNpcmNsZS1zdHJva2Utd2lkdGhcIl0pLFwiY2lyY2xlLXN0cm9rZS1jb2xvclwiOm5ldyBXaShHLnBhaW50X2NpcmNsZVtcImNpcmNsZS1zdHJva2UtY29sb3JcIl0pLFwiY2lyY2xlLXN0cm9rZS1vcGFjaXR5XCI6bmV3IFdpKEcucGFpbnRfY2lyY2xlW1wiY2lyY2xlLXN0cm9rZS1vcGFjaXR5XCJdKX0pfSxnZXQgbGF5b3V0KCl7cmV0dXJuIG5vPW5vfHxuZXcgcnMoe1wiY2lyY2xlLXNvcnQta2V5XCI6bmV3IFdpKEcubGF5b3V0X2NpcmNsZVtcImNpcmNsZS1zb3J0LWtleVwiXSl9KX19LGFvPTFlLTYsb289XCJ1bmRlZmluZWRcIiE9dHlwZW9mIEZsb2F0MzJBcnJheT9GbG9hdDMyQXJyYXk6QXJyYXk7ZnVuY3Rpb24gbG8odCl7cmV0dXJuIHRbMF09MSx0WzFdPTAsdFsyXT0wLHRbM109MCx0WzRdPTAsdFs1XT0xLHRbNl09MCx0WzddPTAsdFs4XT0wLHRbOV09MCx0WzEwXT0xLHRbMTFdPTAsdFsxMl09MCx0WzEzXT0wLHRbMTRdPTAsdFsxNV09MSx0fWZ1bmN0aW9uIHVvKHQsZSxyKXt2YXIgbj1lWzBdLGk9ZVsxXSxzPWVbMl0sYT1lWzNdLG89ZVs0XSxsPWVbNV0sdT1lWzZdLGM9ZVs3XSxoPWVbOF0scD1lWzldLGY9ZVsxMF0sZD1lWzExXSx5PWVbMTJdLG09ZVsxM10sZz1lWzE0XSx4PWVbMTVdLHY9clswXSxiPXJbMV0sdz1yWzJdLF89clszXTtyZXR1cm4gdFswXT12Km4rYipvK3cqaCtfKnksdFsxXT12KmkrYipsK3cqcCtfKm0sdFsyXT12KnMrYip1K3cqZitfKmcsdFszXT12KmErYipjK3cqZCtfKngsdFs0XT0odj1yWzRdKSpuKyhiPXJbNV0pKm8rKHc9cls2XSkqaCsoXz1yWzddKSp5LHRbNV09dippK2IqbCt3KnArXyptLHRbNl09dipzK2IqdSt3KmYrXypnLHRbN109diphK2IqYyt3KmQrXyp4LHRbOF09KHY9cls4XSkqbisoYj1yWzldKSpvKyh3PXJbMTBdKSpoKyhfPXJbMTFdKSp5LHRbOV09dippK2IqbCt3KnArXyptLHRbMTBdPXYqcytiKnUrdypmK18qZyx0WzExXT12KmErYipjK3cqZCtfKngsdFsxMl09KHY9clsxMl0pKm4rKGI9clsxM10pKm8rKHc9clsxNF0pKmgrKF89clsxNV0pKnksdFsxM109dippK2IqbCt3KnArXyptLHRbMTRdPXYqcytiKnUrdypmK18qZyx0WzE1XT12KmErYipjK3cqZCtfKngsdH1NYXRoLmh5cG90fHwoTWF0aC5oeXBvdD1mdW5jdGlvbigpe2Zvcih2YXIgdD0wLGU9YXJndW1lbnRzLmxlbmd0aDtlLS07KXQrPWFyZ3VtZW50c1tlXSphcmd1bWVudHNbZV07cmV0dXJuIE1hdGguc3FydCh0KX0pO3ZhciBjbyxobz11bztmdW5jdGlvbiBwbyh0LGUscil7dmFyIG49ZVswXSxpPWVbMV0scz1lWzJdLGE9ZVszXTtyZXR1cm4gdFswXT1yWzBdKm4rcls0XSppK3JbOF0qcytyWzEyXSphLHRbMV09clsxXSpuK3JbNV0qaStyWzldKnMrclsxM10qYSx0WzJdPXJbMl0qbityWzZdKmkrclsxMF0qcytyWzE0XSphLHRbM109clszXSpuK3JbN10qaStyWzExXSpzK3JbMTVdKmEsdH1jbz1uZXcgb28oNCksb28hPUZsb2F0MzJBcnJheSYmKGNvWzBdPTAsY29bMV09MCxjb1syXT0wLGNvWzNdPTApO2NsYXNzIGZvIGV4dGVuZHMgaXN7Y29uc3RydWN0b3IodCl7c3VwZXIodCxzbyk7fWNyZWF0ZUJ1Y2tldCh0KXtyZXR1cm4gbmV3IFVhKHQpfXF1ZXJ5UmFkaXVzKHQpe2NvbnN0IGU9dDtyZXR1cm4gdG8oXCJjaXJjbGUtcmFkaXVzXCIsdGhpcyxlKSt0byhcImNpcmNsZS1zdHJva2Utd2lkdGhcIix0aGlzLGUpK2VvKHRoaXMucGFpbnQuZ2V0KFwiY2lyY2xlLXRyYW5zbGF0ZVwiKSl9cXVlcnlJbnRlcnNlY3RzRmVhdHVyZSh0LGUscixuLGkscyxhLG8pe2NvbnN0IGw9cm8odCx0aGlzLnBhaW50LmdldChcImNpcmNsZS10cmFuc2xhdGVcIiksdGhpcy5wYWludC5nZXQoXCJjaXJjbGUtdHJhbnNsYXRlLWFuY2hvclwiKSxzLmFuZ2xlLGEpLHU9dGhpcy5wYWludC5nZXQoXCJjaXJjbGUtcmFkaXVzXCIpLmV2YWx1YXRlKGUscikrdGhpcy5wYWludC5nZXQoXCJjaXJjbGUtc3Ryb2tlLXdpZHRoXCIpLmV2YWx1YXRlKGUsciksYz1cIm1hcFwiPT09dGhpcy5wYWludC5nZXQoXCJjaXJjbGUtcGl0Y2gtYWxpZ25tZW50XCIpLGg9Yz9sOmZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQubWFwKCh0PT55byh0LGUpKSl9KGwsbykscD1jP3UqYTp1O2Zvcihjb25zdCB0IG9mIG4pZm9yKGNvbnN0IGUgb2YgdCl7Y29uc3QgdD1jP2U6eW8oZSxvKTtsZXQgcj1wO2NvbnN0IG49cG8oW10sW2UueCxlLnksMCwxXSxvKTtpZihcInZpZXdwb3J0XCI9PT10aGlzLnBhaW50LmdldChcImNpcmNsZS1waXRjaC1zY2FsZVwiKSYmXCJtYXBcIj09PXRoaXMucGFpbnQuZ2V0KFwiY2lyY2xlLXBpdGNoLWFsaWdubWVudFwiKT9yKj1uWzNdL3MuY2FtZXJhVG9DZW50ZXJEaXN0YW5jZTpcIm1hcFwiPT09dGhpcy5wYWludC5nZXQoXCJjaXJjbGUtcGl0Y2gtc2NhbGVcIikmJlwidmlld3BvcnRcIj09PXRoaXMucGFpbnQuZ2V0KFwiY2lyY2xlLXBpdGNoLWFsaWdubWVudFwiKSYmKHIqPXMuY2FtZXJhVG9DZW50ZXJEaXN0YW5jZS9uWzNdKSxOYShoLHQscikpcmV0dXJuICEwfXJldHVybiAhMX19ZnVuY3Rpb24geW8odCxlKXtjb25zdCByPXBvKFtdLFt0LngsdC55LDAsMV0sZSk7cmV0dXJuIG5ldyBzKHJbMF0vclszXSxyWzFdL3JbM10pfWNsYXNzIG1vIGV4dGVuZHMgVWF7fWxldCBnbzt3aShcIkhlYXRtYXBCdWNrZXRcIixtbyx7b21pdDpbXCJsYXllcnNcIl19KTt2YXIgeG89e2dldCBwYWludCgpe3JldHVybiBnbz1nb3x8bmV3IHJzKHtcImhlYXRtYXAtcmFkaXVzXCI6bmV3IFdpKEcucGFpbnRfaGVhdG1hcFtcImhlYXRtYXAtcmFkaXVzXCJdKSxcImhlYXRtYXAtd2VpZ2h0XCI6bmV3IFdpKEcucGFpbnRfaGVhdG1hcFtcImhlYXRtYXAtd2VpZ2h0XCJdKSxcImhlYXRtYXAtaW50ZW5zaXR5XCI6bmV3IEppKEcucGFpbnRfaGVhdG1hcFtcImhlYXRtYXAtaW50ZW5zaXR5XCJdKSxcImhlYXRtYXAtY29sb3JcIjpuZXcgZXMoRy5wYWludF9oZWF0bWFwW1wiaGVhdG1hcC1jb2xvclwiXSksXCJoZWF0bWFwLW9wYWNpdHlcIjpuZXcgSmkoRy5wYWludF9oZWF0bWFwW1wiaGVhdG1hcC1vcGFjaXR5XCJdKX0pfX07ZnVuY3Rpb24gdm8odCx7d2lkdGg6ZSxoZWlnaHQ6cn0sbixpKXtpZihpKXtpZihpIGluc3RhbmNlb2YgVWludDhDbGFtcGVkQXJyYXkpaT1uZXcgVWludDhBcnJheShpLmJ1ZmZlcik7ZWxzZSBpZihpLmxlbmd0aCE9PWUqcipuKXRocm93IG5ldyBSYW5nZUVycm9yKGBtaXNtYXRjaGVkIGltYWdlIHNpemUuIGV4cGVjdGVkOiAke2kubGVuZ3RofSBidXQgZ290OiAke2UqcipufWApfWVsc2UgaT1uZXcgVWludDhBcnJheShlKnIqbik7cmV0dXJuIHQud2lkdGg9ZSx0LmhlaWdodD1yLHQuZGF0YT1pLHR9ZnVuY3Rpb24gYm8odCx7d2lkdGg6ZSxoZWlnaHQ6cn0sbil7aWYoZT09PXQud2lkdGgmJnI9PT10LmhlaWdodClyZXR1cm47Y29uc3QgaT12byh7fSx7d2lkdGg6ZSxoZWlnaHQ6cn0sbik7d28odCxpLHt4OjAseTowfSx7eDowLHk6MH0se3dpZHRoOk1hdGgubWluKHQud2lkdGgsZSksaGVpZ2h0Ok1hdGgubWluKHQuaGVpZ2h0LHIpfSxuKSx0LndpZHRoPWUsdC5oZWlnaHQ9cix0LmRhdGE9aS5kYXRhO31mdW5jdGlvbiB3byh0LGUscixuLGkscyl7aWYoMD09PWkud2lkdGh8fDA9PT1pLmhlaWdodClyZXR1cm4gZTtpZihpLndpZHRoPnQud2lkdGh8fGkuaGVpZ2h0PnQuaGVpZ2h0fHxyLng+dC53aWR0aC1pLndpZHRofHxyLnk+dC5oZWlnaHQtaS5oZWlnaHQpdGhyb3cgbmV3IFJhbmdlRXJyb3IoXCJvdXQgb2YgcmFuZ2Ugc291cmNlIGNvb3JkaW5hdGVzIGZvciBpbWFnZSBjb3B5XCIpO2lmKGkud2lkdGg+ZS53aWR0aHx8aS5oZWlnaHQ+ZS5oZWlnaHR8fG4ueD5lLndpZHRoLWkud2lkdGh8fG4ueT5lLmhlaWdodC1pLmhlaWdodCl0aHJvdyBuZXcgUmFuZ2VFcnJvcihcIm91dCBvZiByYW5nZSBkZXN0aW5hdGlvbiBjb29yZGluYXRlcyBmb3IgaW1hZ2UgY29weVwiKTtjb25zdCBhPXQuZGF0YSxvPWUuZGF0YTtpZihhPT09byl0aHJvdyBuZXcgRXJyb3IoXCJzcmNEYXRhIGVxdWFscyBkc3REYXRhLCBzbyBpbWFnZSBpcyBhbHJlYWR5IGNvcGllZFwiKTtmb3IobGV0IGw9MDtsPGkuaGVpZ2h0O2wrKyl7Y29uc3QgdT0oKHIueStsKSp0LndpZHRoK3IueCkqcyxjPSgobi55K2wpKmUud2lkdGgrbi54KSpzO2ZvcihsZXQgdD0wO3Q8aS53aWR0aCpzO3QrKylvW2MrdF09YVt1K3RdO31yZXR1cm4gZX1jbGFzcyBfb3tjb25zdHJ1Y3Rvcih0LGUpe3ZvKHRoaXMsdCwxLGUpO31yZXNpemUodCl7Ym8odGhpcyx0LDEpO31jbG9uZSgpe3JldHVybiBuZXcgX28oe3dpZHRoOnRoaXMud2lkdGgsaGVpZ2h0OnRoaXMuaGVpZ2h0fSxuZXcgVWludDhBcnJheSh0aGlzLmRhdGEpKX1zdGF0aWMgY29weSh0LGUscixuLGkpe3dvKHQsZSxyLG4saSwxKTt9fWNsYXNzIEFve2NvbnN0cnVjdG9yKHQsZSl7dm8odGhpcyx0LDQsZSk7fXJlc2l6ZSh0KXtibyh0aGlzLHQsNCk7fXJlcGxhY2UodCxlKXtlP3RoaXMuZGF0YS5zZXQodCk6dGhpcy5kYXRhPXQgaW5zdGFuY2VvZiBVaW50OENsYW1wZWRBcnJheT9uZXcgVWludDhBcnJheSh0LmJ1ZmZlcik6dDt9Y2xvbmUoKXtyZXR1cm4gbmV3IEFvKHt3aWR0aDp0aGlzLndpZHRoLGhlaWdodDp0aGlzLmhlaWdodH0sbmV3IFVpbnQ4QXJyYXkodGhpcy5kYXRhKSl9c3RhdGljIGNvcHkodCxlLHIsbixpKXt3byh0LGUscixuLGksNCk7fX1mdW5jdGlvbiBTbyh0KXtjb25zdCBlPXt9LHI9dC5yZXNvbHV0aW9ufHwyNTYsbj10LmNsaXBzP3QuY2xpcHMubGVuZ3RoOjEsaT10LmltYWdlfHxuZXcgQW8oe3dpZHRoOnIsaGVpZ2h0Om59KTtpZihNYXRoLmxvZyhyKS9NYXRoLkxOMiUxIT0wKXRocm93IG5ldyBFcnJvcihgd2lkdGggaXMgbm90IGEgcG93ZXIgb2YgMiAtICR7cn1gKTtjb25zdCBzPShyLG4scyk9PntlW3QuZXZhbHVhdGlvbktleV09cztjb25zdCBhPXQuZXhwcmVzc2lvbi5ldmFsdWF0ZShlKTtpLmRhdGFbcituKzBdPU1hdGguZmxvb3IoMjU1KmEuci9hLmEpLGkuZGF0YVtyK24rMV09TWF0aC5mbG9vcigyNTUqYS5nL2EuYSksaS5kYXRhW3IrbisyXT1NYXRoLmZsb29yKDI1NSphLmIvYS5hKSxpLmRhdGFbcituKzNdPU1hdGguZmxvb3IoMjU1KmEuYSk7fTtpZih0LmNsaXBzKWZvcihsZXQgZT0wLGk9MDtlPG47KytlLGkrPTQqcilmb3IobGV0IG49MCxhPTA7bjxyO24rKyxhKz00KXtjb25zdCBvPW4vKHItMSkse3N0YXJ0OmwsZW5kOnV9PXQuY2xpcHNbZV07cyhpLGEsbCooMS1vKSt1Km8pO31lbHNlIGZvcihsZXQgdD0wLGU9MDt0PHI7dCsrLGUrPTQpcygwLGUsdC8oci0xKSk7cmV0dXJuIGl9d2koXCJBbHBoYUltYWdlXCIsX28pLHdpKFwiUkdCQUltYWdlXCIsQW8pO2NvbnN0IGtvPVwiYmlnLWZiXCI7Y2xhc3MgTW8gZXh0ZW5kcyBpc3tjcmVhdGVCdWNrZXQodCl7cmV0dXJuIG5ldyBtbyh0KX1jb25zdHJ1Y3Rvcih0KXtzdXBlcih0LHhvKSx0aGlzLmhlYXRtYXBGYm9zPW5ldyBNYXAsdGhpcy5fdXBkYXRlQ29sb3JSYW1wKCk7fV9oYW5kbGVTcGVjaWFsUGFpbnRQcm9wZXJ0eVVwZGF0ZSh0KXtcImhlYXRtYXAtY29sb3JcIj09PXQmJnRoaXMuX3VwZGF0ZUNvbG9yUmFtcCgpO31fdXBkYXRlQ29sb3JSYW1wKCl7dGhpcy5jb2xvclJhbXA9U28oe2V4cHJlc3Npb246dGhpcy5fdHJhbnNpdGlvbmFibGVQYWludC5fdmFsdWVzW1wiaGVhdG1hcC1jb2xvclwiXS52YWx1ZS5leHByZXNzaW9uLGV2YWx1YXRpb25LZXk6XCJoZWF0bWFwRGVuc2l0eVwiLGltYWdlOnRoaXMuY29sb3JSYW1wfSksdGhpcy5jb2xvclJhbXBUZXh0dXJlPW51bGw7fXJlc2l6ZSgpe3RoaXMuaGVhdG1hcEZib3MuaGFzKGtvKSYmdGhpcy5oZWF0bWFwRmJvcy5kZWxldGUoa28pO31xdWVyeVJhZGl1cygpe3JldHVybiAwfXF1ZXJ5SW50ZXJzZWN0c0ZlYXR1cmUoKXtyZXR1cm4gITF9aGFzT2Zmc2NyZWVuUGFzcygpe3JldHVybiAwIT09dGhpcy5wYWludC5nZXQoXCJoZWF0bWFwLW9wYWNpdHlcIikmJlwibm9uZVwiIT09dGhpcy52aXNpYmlsaXR5fX1sZXQgSW87dmFyIHpvPXtnZXQgcGFpbnQoKXtyZXR1cm4gSW89SW98fG5ldyBycyh7XCJoaWxsc2hhZGUtaWxsdW1pbmF0aW9uLWRpcmVjdGlvblwiOm5ldyBKaShHLnBhaW50X2hpbGxzaGFkZVtcImhpbGxzaGFkZS1pbGx1bWluYXRpb24tZGlyZWN0aW9uXCJdKSxcImhpbGxzaGFkZS1pbGx1bWluYXRpb24tYW5jaG9yXCI6bmV3IEppKEcucGFpbnRfaGlsbHNoYWRlW1wiaGlsbHNoYWRlLWlsbHVtaW5hdGlvbi1hbmNob3JcIl0pLFwiaGlsbHNoYWRlLWV4YWdnZXJhdGlvblwiOm5ldyBKaShHLnBhaW50X2hpbGxzaGFkZVtcImhpbGxzaGFkZS1leGFnZ2VyYXRpb25cIl0pLFwiaGlsbHNoYWRlLXNoYWRvdy1jb2xvclwiOm5ldyBKaShHLnBhaW50X2hpbGxzaGFkZVtcImhpbGxzaGFkZS1zaGFkb3ctY29sb3JcIl0pLFwiaGlsbHNoYWRlLWhpZ2hsaWdodC1jb2xvclwiOm5ldyBKaShHLnBhaW50X2hpbGxzaGFkZVtcImhpbGxzaGFkZS1oaWdobGlnaHQtY29sb3JcIl0pLFwiaGlsbHNoYWRlLWFjY2VudC1jb2xvclwiOm5ldyBKaShHLnBhaW50X2hpbGxzaGFkZVtcImhpbGxzaGFkZS1hY2NlbnQtY29sb3JcIl0pfSl9fTtjbGFzcyBQbyBleHRlbmRzIGlze2NvbnN0cnVjdG9yKHQpe3N1cGVyKHQsem8pO31oYXNPZmZzY3JlZW5QYXNzKCl7cmV0dXJuIDAhPT10aGlzLnBhaW50LmdldChcImhpbGxzaGFkZS1leGFnZ2VyYXRpb25cIikmJlwibm9uZVwiIT09dGhpcy52aXNpYmlsaXR5fX1jb25zdCBDbz1scyhbe25hbWU6XCJhX3Bvc1wiLGNvbXBvbmVudHM6Mix0eXBlOlwiSW50MTZcIn1dLDQpLHttZW1iZXJzOkJvfT1DbztmdW5jdGlvbiBWbyh0LGUscj0yKXtjb25zdCBuPWUmJmUubGVuZ3RoLGk9bj9lWzBdKnI6dC5sZW5ndGg7bGV0IHM9RW8odCwwLGksciwhMCk7Y29uc3QgYT1bXTtpZighc3x8cy5uZXh0PT09cy5wcmV2KXJldHVybiBhO2xldCBvLGwsdTtpZihuJiYocz1mdW5jdGlvbih0LGUscixuKXtjb25zdCBpPVtdO2ZvcihsZXQgcj0wLHM9ZS5sZW5ndGg7cjxzO3IrKyl7Y29uc3QgYT1Fbyh0LGVbcl0qbixyPHMtMT9lW3IrMV0qbjp0Lmxlbmd0aCxuLCExKTthPT09YS5uZXh0JiYoYS5zdGVpbmVyPSEwKSxpLnB1c2goTm8oYSkpO31pLnNvcnQoam8pO2ZvcihsZXQgdD0wO3Q8aS5sZW5ndGg7dCsrKXI9Um8oaVt0XSxyKTtyZXR1cm4gcn0odCxlLHMscikpLHQubGVuZ3RoPjgwKnIpe289MS8wLGw9MS8wO2xldCBlPS0xLzAsbj0tMS8wO2ZvcihsZXQgcz1yO3M8aTtzKz1yKXtjb25zdCByPXRbc10saT10W3MrMV07cjxvJiYobz1yKSxpPGwmJihsPWkpLHI+ZSYmKGU9ciksaT5uJiYobj1pKTt9dT1NYXRoLm1heChlLW8sbi1sKSx1PTAhPT11PzMyNzY3L3U6MDt9cmV0dXJuIFRvKHMsYSxyLG8sbCx1LDApLGF9ZnVuY3Rpb24gRW8odCxlLHIsbixpKXtsZXQgcztpZihpPT09ZnVuY3Rpb24odCxlLHIsbil7bGV0IGk9MDtmb3IobGV0IHM9ZSxhPXItbjtzPHI7cys9bilpKz0odFthXS10W3NdKSoodFtzKzFdK3RbYSsxXSksYT1zO3JldHVybiBpfSh0LGUscixuKT4wKWZvcihsZXQgaT1lO2k8cjtpKz1uKXM9dGwoaS9ufDAsdFtpXSx0W2krMV0scyk7ZWxzZSBmb3IobGV0IGk9ci1uO2k+PWU7aS09bilzPXRsKGkvbnwwLHRbaV0sdFtpKzFdLHMpO3JldHVybiBzJiZYbyhzLHMubmV4dCkmJihlbChzKSxzPXMubmV4dCksc31mdW5jdGlvbiBGbyh0LGUpe2lmKCF0KXJldHVybiB0O2V8fChlPXQpO2xldCByLG49dDtkb3tpZihyPSExLG4uc3RlaW5lcnx8IVhvKG4sbi5uZXh0KSYmMCE9PUtvKG4ucHJldixuLG4ubmV4dCkpbj1uLm5leHQ7ZWxzZSB7aWYoZWwobiksbj1lPW4ucHJldixuPT09bi5uZXh0KWJyZWFrO3I9ITA7fX13aGlsZShyfHxuIT09ZSk7cmV0dXJuIGV9ZnVuY3Rpb24gVG8odCxlLHIsbixpLHMsYSl7aWYoIXQpcmV0dXJuOyFhJiZzJiZmdW5jdGlvbih0LGUscixuKXtsZXQgaT10O2RvezA9PT1pLnomJihpLno9cW8oaS54LGkueSxlLHIsbikpLGkucHJldlo9aS5wcmV2LGkubmV4dFo9aS5uZXh0LGk9aS5uZXh0O313aGlsZShpIT09dCk7aS5wcmV2Wi5uZXh0Wj1udWxsLGkucHJldlo9bnVsbCxmdW5jdGlvbih0KXtsZXQgZSxyPTE7ZG97bGV0IG4saT10O3Q9bnVsbDtsZXQgcz1udWxsO2ZvcihlPTA7aTspe2UrKztsZXQgYT1pLG89MDtmb3IobGV0IHQ9MDt0PHImJihvKyssYT1hLm5leHRaLGEpO3QrKyk7bGV0IGw9cjtmb3IoO28+MHx8bD4wJiZhOykwIT09byYmKDA9PT1sfHwhYXx8aS56PD1hLnopPyhuPWksaT1pLm5leHRaLG8tLSk6KG49YSxhPWEubmV4dFosbC0tKSxzP3MubmV4dFo9bjp0PW4sbi5wcmV2Wj1zLHM9bjtpPWE7fXMubmV4dFo9bnVsbCxyKj0yO313aGlsZShlPjEpfShpKTt9KHQsbixpLHMpO2xldCBvPXQ7Zm9yKDt0LnByZXYhPT10Lm5leHQ7KXtjb25zdCBsPXQucHJldix1PXQubmV4dDtpZihzP0xvKHQsbixpLHMpOiRvKHQpKWUucHVzaChsLmksdC5pLHUuaSksZWwodCksdD11Lm5leHQsbz11Lm5leHQ7ZWxzZSBpZigodD11KT09PW8pe2E/MT09PWE/VG8odD1EbyhGbyh0KSxlKSxlLHIsbixpLHMsMik6Mj09PWEmJk9vKHQsZSxyLG4saSxzKTpUbyhGbyh0KSxlLHIsbixpLHMsMSk7YnJlYWt9fX1mdW5jdGlvbiAkbyh0KXtjb25zdCBlPXQucHJldixyPXQsbj10Lm5leHQ7aWYoS28oZSxyLG4pPj0wKXJldHVybiAhMTtjb25zdCBpPWUueCxzPXIueCxhPW4ueCxvPWUueSxsPXIueSx1PW4ueSxjPWk8cz9pPGE/aTphOnM8YT9zOmEsaD1vPGw/bzx1P286dTpsPHU/bDp1LHA9aT5zP2k+YT9pOmE6cz5hP3M6YSxmPW8+bD9vPnU/bzp1Omw+dT9sOnU7bGV0IGQ9bi5uZXh0O2Zvcig7ZCE9PWU7KXtpZihkLng+PWMmJmQueDw9cCYmZC55Pj1oJiZkLnk8PWYmJlpvKGksbyxzLGwsYSx1LGQueCxkLnkpJiZLbyhkLnByZXYsZCxkLm5leHQpPj0wKXJldHVybiAhMTtkPWQubmV4dDt9cmV0dXJuICEwfWZ1bmN0aW9uIExvKHQsZSxyLG4pe2NvbnN0IGk9dC5wcmV2LHM9dCxhPXQubmV4dDtpZihLbyhpLHMsYSk+PTApcmV0dXJuICExO2NvbnN0IG89aS54LGw9cy54LHU9YS54LGM9aS55LGg9cy55LHA9YS55LGY9bzxsP288dT9vOnU6bDx1P2w6dSxkPWM8aD9jPHA/YzpwOmg8cD9oOnAseT1vPmw/bz51P286dTpsPnU/bDp1LG09Yz5oP2M+cD9jOnA6aD5wP2g6cCxnPXFvKGYsZCxlLHIsbikseD1xbyh5LG0sZSxyLG4pO2xldCB2PXQucHJldlosYj10Lm5leHRaO2Zvcig7diYmdi56Pj1nJiZiJiZiLno8PXg7KXtpZih2Lng+PWYmJnYueDw9eSYmdi55Pj1kJiZ2Lnk8PW0mJnYhPT1pJiZ2IT09YSYmWm8obyxjLGwsaCx1LHAsdi54LHYueSkmJktvKHYucHJldix2LHYubmV4dCk+PTApcmV0dXJuICExO2lmKHY9di5wcmV2WixiLng+PWYmJmIueDw9eSYmYi55Pj1kJiZiLnk8PW0mJmIhPT1pJiZiIT09YSYmWm8obyxjLGwsaCx1LHAsYi54LGIueSkmJktvKGIucHJldixiLGIubmV4dCk+PTApcmV0dXJuICExO2I9Yi5uZXh0Wjt9Zm9yKDt2JiZ2Lno+PWc7KXtpZih2Lng+PWYmJnYueDw9eSYmdi55Pj1kJiZ2Lnk8PW0mJnYhPT1pJiZ2IT09YSYmWm8obyxjLGwsaCx1LHAsdi54LHYueSkmJktvKHYucHJldix2LHYubmV4dCk+PTApcmV0dXJuICExO3Y9di5wcmV2Wjt9Zm9yKDtiJiZiLno8PXg7KXtpZihiLng+PWYmJmIueDw9eSYmYi55Pj1kJiZiLnk8PW0mJmIhPT1pJiZiIT09YSYmWm8obyxjLGwsaCx1LHAsYi54LGIueSkmJktvKGIucHJldixiLGIubmV4dCk+PTApcmV0dXJuICExO2I9Yi5uZXh0Wjt9cmV0dXJuICEwfWZ1bmN0aW9uIERvKHQsZSl7bGV0IHI9dDtkb3tjb25zdCBuPXIucHJldixpPXIubmV4dC5uZXh0OyFYbyhuLGkpJiZIbyhuLHIsci5uZXh0LGkpJiZXbyhuLGkpJiZXbyhpLG4pJiYoZS5wdXNoKG4uaSxyLmksaS5pKSxlbChyKSxlbChyLm5leHQpLHI9dD1pKSxyPXIubmV4dDt9d2hpbGUociE9PXQpO3JldHVybiBGbyhyKX1mdW5jdGlvbiBPbyh0LGUscixuLGkscyl7bGV0IGE9dDtkb3tsZXQgdD1hLm5leHQubmV4dDtmb3IoO3QhPT1hLnByZXY7KXtpZihhLmkhPT10LmkmJkdvKGEsdCkpe2xldCBvPVFvKGEsdCk7cmV0dXJuIGE9Rm8oYSxhLm5leHQpLG89Rm8obyxvLm5leHQpLFRvKGEsZSxyLG4saSxzLDApLHZvaWQgVG8obyxlLHIsbixpLHMsMCl9dD10Lm5leHQ7fWE9YS5uZXh0O313aGlsZShhIT09dCl9ZnVuY3Rpb24gam8odCxlKXtyZXR1cm4gdC54LWUueH1mdW5jdGlvbiBSbyh0LGUpe2NvbnN0IHI9ZnVuY3Rpb24odCxlKXtsZXQgcj1lO2NvbnN0IG49dC54LGk9dC55O2xldCBzLGE9LTEvMDtkb3tpZihpPD1yLnkmJmk+PXIubmV4dC55JiZyLm5leHQueSE9PXIueSl7Y29uc3QgdD1yLngrKGktci55KSooci5uZXh0Lngtci54KS8oci5uZXh0Lnktci55KTtpZih0PD1uJiZ0PmEmJihhPXQscz1yLng8ci5uZXh0Lng/cjpyLm5leHQsdD09PW4pKXJldHVybiBzfXI9ci5uZXh0O313aGlsZShyIT09ZSk7aWYoIXMpcmV0dXJuIG51bGw7Y29uc3Qgbz1zLGw9cy54LHU9cy55O2xldCBjPTEvMDtyPXM7ZG97aWYobj49ci54JiZyLng+PWwmJm4hPT1yLngmJlpvKGk8dT9uOmEsaSxsLHUsaTx1P2E6bixpLHIueCxyLnkpKXtjb25zdCBlPU1hdGguYWJzKGktci55KS8obi1yLngpO1dvKHIsdCkmJihlPGN8fGU9PT1jJiYoci54PnMueHx8ci54PT09cy54JiZVbyhzLHIpKSkmJihzPXIsYz1lKTt9cj1yLm5leHQ7fXdoaWxlKHIhPT1vKTtyZXR1cm4gc30odCxlKTtpZighcilyZXR1cm4gZTtjb25zdCBuPVFvKHIsdCk7cmV0dXJuIEZvKG4sbi5uZXh0KSxGbyhyLHIubmV4dCl9ZnVuY3Rpb24gVW8odCxlKXtyZXR1cm4gS28odC5wcmV2LHQsZS5wcmV2KTwwJiZLbyhlLm5leHQsdCx0Lm5leHQpPDB9ZnVuY3Rpb24gcW8odCxlLHIsbixpKXtyZXR1cm4gKHQ9MTQzMTY1NTc2NSYoKHQ9ODU4OTkzNDU5JigodD0yNTI2NDUxMzUmKCh0PTE2NzExOTM1JigodD0odC1yKSppfDApfHQ8PDgpKXx0PDw0KSl8dDw8MikpfHQ8PDEpKXwoZT0xNDMxNjU1NzY1JigoZT04NTg5OTM0NTkmKChlPTI1MjY0NTEzNSYoKGU9MTY3MTE5MzUmKChlPShlLW4pKml8MCl8ZTw8OCkpfGU8PDQpKXxlPDwyKSl8ZTw8MSkpPDwxfWZ1bmN0aW9uIE5vKHQpe2xldCBlPXQscj10O2RveyhlLng8ci54fHxlLng9PT1yLngmJmUueTxyLnkpJiYocj1lKSxlPWUubmV4dDt9d2hpbGUoZSE9PXQpO3JldHVybiByfWZ1bmN0aW9uIFpvKHQsZSxyLG4saSxzLGEsbyl7cmV0dXJuIChpLWEpKihlLW8pPj0odC1hKSoocy1vKSYmKHQtYSkqKG4tbyk+PShyLWEpKihlLW8pJiYoci1hKSoocy1vKT49KGktYSkqKG4tbyl9ZnVuY3Rpb24gR28odCxlKXtyZXR1cm4gdC5uZXh0LmkhPT1lLmkmJnQucHJldi5pIT09ZS5pJiYhZnVuY3Rpb24odCxlKXtsZXQgcj10O2Rve2lmKHIuaSE9PXQuaSYmci5uZXh0LmkhPT10LmkmJnIuaSE9PWUuaSYmci5uZXh0LmkhPT1lLmkmJkhvKHIsci5uZXh0LHQsZSkpcmV0dXJuICEwO3I9ci5uZXh0O313aGlsZShyIT09dCk7cmV0dXJuICExfSh0LGUpJiYoV28odCxlKSYmV28oZSx0KSYmZnVuY3Rpb24odCxlKXtsZXQgcj10LG49ITE7Y29uc3QgaT0odC54K2UueCkvMixzPSh0LnkrZS55KS8yO2Rve3IueT5zIT1yLm5leHQueT5zJiZyLm5leHQueSE9PXIueSYmaTwoci5uZXh0Lngtci54KSoocy1yLnkpLyhyLm5leHQueS1yLnkpK3IueCYmKG49IW4pLHI9ci5uZXh0O313aGlsZShyIT09dCk7cmV0dXJuIG59KHQsZSkmJihLbyh0LnByZXYsdCxlLnByZXYpfHxLbyh0LGUucHJldixlKSl8fFhvKHQsZSkmJktvKHQucHJldix0LHQubmV4dCk+MCYmS28oZS5wcmV2LGUsZS5uZXh0KT4wKX1mdW5jdGlvbiBLbyh0LGUscil7cmV0dXJuIChlLnktdC55KSooci54LWUueCktKGUueC10LngpKihyLnktZS55KX1mdW5jdGlvbiBYbyh0LGUpe3JldHVybiB0Lng9PT1lLngmJnQueT09PWUueX1mdW5jdGlvbiBIbyh0LGUscixuKXtjb25zdCBpPUpvKEtvKHQsZSxyKSkscz1KbyhLbyh0LGUsbikpLGE9Sm8oS28ocixuLHQpKSxvPUpvKEtvKHIsbixlKSk7cmV0dXJuIGkhPT1zJiZhIT09b3x8ISgwIT09aXx8IVlvKHQscixlKSl8fCEoMCE9PXN8fCFZbyh0LG4sZSkpfHwhKDAhPT1hfHwhWW8ocix0LG4pKXx8ISgwIT09b3x8IVlvKHIsZSxuKSl9ZnVuY3Rpb24gWW8odCxlLHIpe3JldHVybiBlLng8PU1hdGgubWF4KHQueCxyLngpJiZlLng+PU1hdGgubWluKHQueCxyLngpJiZlLnk8PU1hdGgubWF4KHQueSxyLnkpJiZlLnk+PU1hdGgubWluKHQueSxyLnkpfWZ1bmN0aW9uIEpvKHQpe3JldHVybiB0PjA/MTp0PDA/LTE6MH1mdW5jdGlvbiBXbyh0LGUpe3JldHVybiBLbyh0LnByZXYsdCx0Lm5leHQpPDA/S28odCxlLHQubmV4dCk+PTAmJktvKHQsdC5wcmV2LGUpPj0wOktvKHQsZSx0LnByZXYpPDB8fEtvKHQsdC5uZXh0LGUpPDB9ZnVuY3Rpb24gUW8odCxlKXtjb25zdCByPXJsKHQuaSx0LngsdC55KSxuPXJsKGUuaSxlLngsZS55KSxpPXQubmV4dCxzPWUucHJldjtyZXR1cm4gdC5uZXh0PWUsZS5wcmV2PXQsci5uZXh0PWksaS5wcmV2PXIsbi5uZXh0PXIsci5wcmV2PW4scy5uZXh0PW4sbi5wcmV2PXMsbn1mdW5jdGlvbiB0bCh0LGUscixuKXtjb25zdCBpPXJsKHQsZSxyKTtyZXR1cm4gbj8oaS5uZXh0PW4ubmV4dCxpLnByZXY9bixuLm5leHQucHJldj1pLG4ubmV4dD1pKTooaS5wcmV2PWksaS5uZXh0PWkpLGl9ZnVuY3Rpb24gZWwodCl7dC5uZXh0LnByZXY9dC5wcmV2LHQucHJldi5uZXh0PXQubmV4dCx0LnByZXZaJiYodC5wcmV2Wi5uZXh0Wj10Lm5leHRaKSx0Lm5leHRaJiYodC5uZXh0Wi5wcmV2Wj10LnByZXZaKTt9ZnVuY3Rpb24gcmwodCxlLHIpe3JldHVybiB7aTp0LHg6ZSx5OnIscHJldjpudWxsLG5leHQ6bnVsbCx6OjAscHJldlo6bnVsbCxuZXh0WjpudWxsLHN0ZWluZXI6ITF9fWZ1bmN0aW9uIG5sKHQsZSxyKXtjb25zdCBuPXIucGF0dGVybkRlcGVuZGVuY2llcztsZXQgaT0hMTtmb3IoY29uc3QgciBvZiBlKXtjb25zdCBlPXIucGFpbnQuZ2V0KGAke3R9LXBhdHRlcm5gKTtlLmlzQ29uc3RhbnQoKXx8KGk9ITApO2NvbnN0IHM9ZS5jb25zdGFudE9yKG51bGwpO3MmJihpPSEwLG5bcy50b109ITAsbltzLmZyb21dPSEwKTt9cmV0dXJuIGl9ZnVuY3Rpb24gaWwodCxlLHIsbixpKXtjb25zdCBzPWkucGF0dGVybkRlcGVuZGVuY2llcztmb3IoY29uc3QgYSBvZiBlKXtjb25zdCBlPWEucGFpbnQuZ2V0KGAke3R9LXBhdHRlcm5gKS52YWx1ZTtpZihcImNvbnN0YW50XCIhPT1lLmtpbmQpe2xldCB0PWUuZXZhbHVhdGUoe3pvb206bi0xfSxyLHt9LGkuYXZhaWxhYmxlSW1hZ2VzKSxvPWUuZXZhbHVhdGUoe3pvb206bn0scix7fSxpLmF2YWlsYWJsZUltYWdlcyksbD1lLmV2YWx1YXRlKHt6b29tOm4rMX0scix7fSxpLmF2YWlsYWJsZUltYWdlcyk7dD10JiZ0Lm5hbWU/dC5uYW1lOnQsbz1vJiZvLm5hbWU/by5uYW1lOm8sbD1sJiZsLm5hbWU/bC5uYW1lOmwsc1t0XT0hMCxzW29dPSEwLHNbbF09ITAsci5wYXR0ZXJuc1thLmlkXT17bWluOnQsbWlkOm8sbWF4Omx9O319cmV0dXJuIHJ9Y2xhc3Mgc2x7Y29uc3RydWN0b3IodCl7dGhpcy56b29tPXQuem9vbSx0aGlzLm92ZXJzY2FsaW5nPXQub3ZlcnNjYWxpbmcsdGhpcy5sYXllcnM9dC5sYXllcnMsdGhpcy5sYXllcklkcz10aGlzLmxheWVycy5tYXAoKHQ9PnQuaWQpKSx0aGlzLmluZGV4PXQuaW5kZXgsdGhpcy5oYXNQYXR0ZXJuPSExLHRoaXMucGF0dGVybkZlYXR1cmVzPVtdLHRoaXMubGF5b3V0VmVydGV4QXJyYXk9bmV3IEtzLHRoaXMuaW5kZXhBcnJheT1uZXcgbmEsdGhpcy5pbmRleEFycmF5Mj1uZXcgaWEsdGhpcy5wcm9ncmFtQ29uZmlndXJhdGlvbnM9bmV3IEVhKHQubGF5ZXJzLHQuem9vbSksdGhpcy5zZWdtZW50cz1uZXcgb2EsdGhpcy5zZWdtZW50czI9bmV3IG9hLHRoaXMuc3RhdGVEZXBlbmRlbnRMYXllcklkcz10aGlzLmxheWVycy5maWx0ZXIoKHQ9PnQuaXNTdGF0ZURlcGVuZGVudCgpKSkubWFwKCh0PT50LmlkKSk7fXBvcHVsYXRlKHQsZSxyKXt0aGlzLmhhc1BhdHRlcm49bmwoXCJmaWxsXCIsdGhpcy5sYXllcnMsZSk7Y29uc3Qgbj10aGlzLmxheWVyc1swXS5sYXlvdXQuZ2V0KFwiZmlsbC1zb3J0LWtleVwiKSxpPSFuLmlzQ29uc3RhbnQoKSxzPVtdO2Zvcihjb25zdHtmZWF0dXJlOmEsaWQ6byxpbmRleDpsLHNvdXJjZUxheWVySW5kZXg6dX1vZiB0KXtjb25zdCB0PXRoaXMubGF5ZXJzWzBdLl9mZWF0dXJlRmlsdGVyLm5lZWRHZW9tZXRyeSxjPWphKGEsdCk7aWYoIXRoaXMubGF5ZXJzWzBdLl9mZWF0dXJlRmlsdGVyLmZpbHRlcihuZXcgVWkodGhpcy56b29tKSxjLHIpKWNvbnRpbnVlO2NvbnN0IGg9aT9uLmV2YWx1YXRlKGMse30scixlLmF2YWlsYWJsZUltYWdlcyk6dm9pZCAwLHA9e2lkOm8scHJvcGVydGllczphLnByb3BlcnRpZXMsdHlwZTphLnR5cGUsc291cmNlTGF5ZXJJbmRleDp1LGluZGV4OmwsZ2VvbWV0cnk6dD9jLmdlb21ldHJ5Ok9hKGEpLHBhdHRlcm5zOnt9LHNvcnRLZXk6aH07cy5wdXNoKHApO31pJiZzLnNvcnQoKCh0LGUpPT50LnNvcnRLZXktZS5zb3J0S2V5KSk7Zm9yKGNvbnN0IG4gb2Ygcyl7Y29uc3R7Z2VvbWV0cnk6aSxpbmRleDpzLHNvdXJjZUxheWVySW5kZXg6YX09bjtpZih0aGlzLmhhc1BhdHRlcm4pe2NvbnN0IHQ9aWwoXCJmaWxsXCIsdGhpcy5sYXllcnMsbix0aGlzLnpvb20sZSk7dGhpcy5wYXR0ZXJuRmVhdHVyZXMucHVzaCh0KTt9ZWxzZSB0aGlzLmFkZEZlYXR1cmUobixpLHMscix7fSk7ZS5mZWF0dXJlSW5kZXguaW5zZXJ0KHRbc10uZmVhdHVyZSxpLHMsYSx0aGlzLmluZGV4KTt9fXVwZGF0ZSh0LGUscil7dGhpcy5zdGF0ZURlcGVuZGVudExheWVycy5sZW5ndGgmJnRoaXMucHJvZ3JhbUNvbmZpZ3VyYXRpb25zLnVwZGF0ZVBhaW50QXJyYXlzKHQsZSx0aGlzLnN0YXRlRGVwZW5kZW50TGF5ZXJzLHIpO31hZGRGZWF0dXJlcyh0LGUscil7Zm9yKGNvbnN0IHQgb2YgdGhpcy5wYXR0ZXJuRmVhdHVyZXMpdGhpcy5hZGRGZWF0dXJlKHQsdC5nZW9tZXRyeSx0LmluZGV4LGUscik7fWlzRW1wdHkoKXtyZXR1cm4gMD09PXRoaXMubGF5b3V0VmVydGV4QXJyYXkubGVuZ3RofXVwbG9hZFBlbmRpbmcoKXtyZXR1cm4gIXRoaXMudXBsb2FkZWR8fHRoaXMucHJvZ3JhbUNvbmZpZ3VyYXRpb25zLm5lZWRzVXBsb2FkfXVwbG9hZCh0KXt0aGlzLnVwbG9hZGVkfHwodGhpcy5sYXlvdXRWZXJ0ZXhCdWZmZXI9dC5jcmVhdGVWZXJ0ZXhCdWZmZXIodGhpcy5sYXlvdXRWZXJ0ZXhBcnJheSxCbyksdGhpcy5pbmRleEJ1ZmZlcj10LmNyZWF0ZUluZGV4QnVmZmVyKHRoaXMuaW5kZXhBcnJheSksdGhpcy5pbmRleEJ1ZmZlcjI9dC5jcmVhdGVJbmRleEJ1ZmZlcih0aGlzLmluZGV4QXJyYXkyKSksdGhpcy5wcm9ncmFtQ29uZmlndXJhdGlvbnMudXBsb2FkKHQpLHRoaXMudXBsb2FkZWQ9ITA7fWRlc3Ryb3koKXt0aGlzLmxheW91dFZlcnRleEJ1ZmZlciYmKHRoaXMubGF5b3V0VmVydGV4QnVmZmVyLmRlc3Ryb3koKSx0aGlzLmluZGV4QnVmZmVyLmRlc3Ryb3koKSx0aGlzLmluZGV4QnVmZmVyMi5kZXN0cm95KCksdGhpcy5wcm9ncmFtQ29uZmlndXJhdGlvbnMuZGVzdHJveSgpLHRoaXMuc2VnbWVudHMuZGVzdHJveSgpLHRoaXMuc2VnbWVudHMyLmRlc3Ryb3koKSk7fWFkZEZlYXR1cmUodCxlLHIsbixpKXtmb3IoY29uc3QgdCBvZiB4cihlLDUwMCkpe2xldCBlPTA7Zm9yKGNvbnN0IHIgb2YgdCllKz1yLmxlbmd0aDtjb25zdCByPXRoaXMuc2VnbWVudHMucHJlcGFyZVNlZ21lbnQoZSx0aGlzLmxheW91dFZlcnRleEFycmF5LHRoaXMuaW5kZXhBcnJheSksbj1yLnZlcnRleExlbmd0aCxpPVtdLHM9W107Zm9yKGNvbnN0IGUgb2YgdCl7aWYoMD09PWUubGVuZ3RoKWNvbnRpbnVlO2UhPT10WzBdJiZzLnB1c2goaS5sZW5ndGgvMik7Y29uc3Qgcj10aGlzLnNlZ21lbnRzMi5wcmVwYXJlU2VnbWVudChlLmxlbmd0aCx0aGlzLmxheW91dFZlcnRleEFycmF5LHRoaXMuaW5kZXhBcnJheTIpLG49ci52ZXJ0ZXhMZW5ndGg7dGhpcy5sYXlvdXRWZXJ0ZXhBcnJheS5lbXBsYWNlQmFjayhlWzBdLngsZVswXS55KSx0aGlzLmluZGV4QXJyYXkyLmVtcGxhY2VCYWNrKG4rZS5sZW5ndGgtMSxuKSxpLnB1c2goZVswXS54KSxpLnB1c2goZVswXS55KTtmb3IobGV0IHQ9MTt0PGUubGVuZ3RoO3QrKyl0aGlzLmxheW91dFZlcnRleEFycmF5LmVtcGxhY2VCYWNrKGVbdF0ueCxlW3RdLnkpLHRoaXMuaW5kZXhBcnJheTIuZW1wbGFjZUJhY2sobit0LTEsbit0KSxpLnB1c2goZVt0XS54KSxpLnB1c2goZVt0XS55KTtyLnZlcnRleExlbmd0aCs9ZS5sZW5ndGgsci5wcmltaXRpdmVMZW5ndGgrPWUubGVuZ3RoO31jb25zdCBhPVZvKGkscyk7Zm9yKGxldCB0PTA7dDxhLmxlbmd0aDt0Kz0zKXRoaXMuaW5kZXhBcnJheS5lbXBsYWNlQmFjayhuK2FbdF0sbithW3QrMV0sbithW3QrMl0pO3IudmVydGV4TGVuZ3RoKz1lLHIucHJpbWl0aXZlTGVuZ3RoKz1hLmxlbmd0aC8zO310aGlzLnByb2dyYW1Db25maWd1cmF0aW9ucy5wb3B1bGF0ZVBhaW50QXJyYXlzKHRoaXMubGF5b3V0VmVydGV4QXJyYXkubGVuZ3RoLHQscixpLG4pO319bGV0IGFsLG9sO3dpKFwiRmlsbEJ1Y2tldFwiLHNsLHtvbWl0OltcImxheWVyc1wiLFwicGF0dGVybkZlYXR1cmVzXCJdfSk7dmFyIGxsPXtnZXQgcGFpbnQoKXtyZXR1cm4gb2w9b2x8fG5ldyBycyh7XCJmaWxsLWFudGlhbGlhc1wiOm5ldyBKaShHLnBhaW50X2ZpbGxbXCJmaWxsLWFudGlhbGlhc1wiXSksXCJmaWxsLW9wYWNpdHlcIjpuZXcgV2koRy5wYWludF9maWxsW1wiZmlsbC1vcGFjaXR5XCJdKSxcImZpbGwtY29sb3JcIjpuZXcgV2koRy5wYWludF9maWxsW1wiZmlsbC1jb2xvclwiXSksXCJmaWxsLW91dGxpbmUtY29sb3JcIjpuZXcgV2koRy5wYWludF9maWxsW1wiZmlsbC1vdXRsaW5lLWNvbG9yXCJdKSxcImZpbGwtdHJhbnNsYXRlXCI6bmV3IEppKEcucGFpbnRfZmlsbFtcImZpbGwtdHJhbnNsYXRlXCJdKSxcImZpbGwtdHJhbnNsYXRlLWFuY2hvclwiOm5ldyBKaShHLnBhaW50X2ZpbGxbXCJmaWxsLXRyYW5zbGF0ZS1hbmNob3JcIl0pLFwiZmlsbC1wYXR0ZXJuXCI6bmV3IFFpKEcucGFpbnRfZmlsbFtcImZpbGwtcGF0dGVyblwiXSl9KX0sZ2V0IGxheW91dCgpe3JldHVybiBhbD1hbHx8bmV3IHJzKHtcImZpbGwtc29ydC1rZXlcIjpuZXcgV2koRy5sYXlvdXRfZmlsbFtcImZpbGwtc29ydC1rZXlcIl0pfSl9fTtjbGFzcyB1bCBleHRlbmRzIGlze2NvbnN0cnVjdG9yKHQpe3N1cGVyKHQsbGwpO31yZWNhbGN1bGF0ZSh0LGUpe3N1cGVyLnJlY2FsY3VsYXRlKHQsZSk7Y29uc3Qgcj10aGlzLnBhaW50Ll92YWx1ZXNbXCJmaWxsLW91dGxpbmUtY29sb3JcIl07XCJjb25zdGFudFwiPT09ci52YWx1ZS5raW5kJiZ2b2lkIDA9PT1yLnZhbHVlLnZhbHVlJiYodGhpcy5wYWludC5fdmFsdWVzW1wiZmlsbC1vdXRsaW5lLWNvbG9yXCJdPXRoaXMucGFpbnQuX3ZhbHVlc1tcImZpbGwtY29sb3JcIl0pO31jcmVhdGVCdWNrZXQodCl7cmV0dXJuIG5ldyBzbCh0KX1xdWVyeVJhZGl1cygpe3JldHVybiBlbyh0aGlzLnBhaW50LmdldChcImZpbGwtdHJhbnNsYXRlXCIpKX1xdWVyeUludGVyc2VjdHNGZWF0dXJlKHQsZSxyLG4saSxzLGEpe3JldHVybiBaYShybyh0LHRoaXMucGFpbnQuZ2V0KFwiZmlsbC10cmFuc2xhdGVcIiksdGhpcy5wYWludC5nZXQoXCJmaWxsLXRyYW5zbGF0ZS1hbmNob3JcIikscy5hbmdsZSxhKSxuKX1pc1RpbGVDbGlwcGVkKCl7cmV0dXJuICEwfX1jb25zdCBjbD1scyhbe25hbWU6XCJhX3Bvc1wiLGNvbXBvbmVudHM6Mix0eXBlOlwiSW50MTZcIn0se25hbWU6XCJhX25vcm1hbF9lZFwiLGNvbXBvbmVudHM6NCx0eXBlOlwiSW50MTZcIn1dLDQpLGhsPWxzKFt7bmFtZTpcImFfY2VudHJvaWRcIixjb21wb25lbnRzOjIsdHlwZTpcIkludDE2XCJ9XSw0KSx7bWVtYmVyczpwbH09Y2w7dmFyIGZsPXt9LGRsPW4seWw9bWw7ZnVuY3Rpb24gbWwodCxlLHIsbixpKXt0aGlzLnByb3BlcnRpZXM9e30sdGhpcy5leHRlbnQ9cix0aGlzLnR5cGU9MCx0aGlzLl9wYmY9dCx0aGlzLl9nZW9tZXRyeT0tMSx0aGlzLl9rZXlzPW4sdGhpcy5fdmFsdWVzPWksdC5yZWFkRmllbGRzKGdsLHRoaXMsZSk7fWZ1bmN0aW9uIGdsKHQsZSxyKXsxPT10P2UuaWQ9ci5yZWFkVmFyaW50KCk6Mj09dD9mdW5jdGlvbih0LGUpe2Zvcih2YXIgcj10LnJlYWRWYXJpbnQoKSt0LnBvczt0LnBvczxyOyl7dmFyIG49ZS5fa2V5c1t0LnJlYWRWYXJpbnQoKV0saT1lLl92YWx1ZXNbdC5yZWFkVmFyaW50KCldO2UucHJvcGVydGllc1tuXT1pO319KHIsZSk6Mz09dD9lLnR5cGU9ci5yZWFkVmFyaW50KCk6ND09dCYmKGUuX2dlb21ldHJ5PXIucG9zKTt9ZnVuY3Rpb24geGwodCl7Zm9yKHZhciBlLHIsbj0wLGk9MCxzPXQubGVuZ3RoLGE9cy0xO2k8czthPWkrKyluKz0oKHI9dFthXSkueC0oZT10W2ldKS54KSooZS55K3IueSk7cmV0dXJuIG59bWwudHlwZXM9W1wiVW5rbm93blwiLFwiUG9pbnRcIixcIkxpbmVTdHJpbmdcIixcIlBvbHlnb25cIl0sbWwucHJvdG90eXBlLmxvYWRHZW9tZXRyeT1mdW5jdGlvbigpe3ZhciB0PXRoaXMuX3BiZjt0LnBvcz10aGlzLl9nZW9tZXRyeTtmb3IodmFyIGUscj10LnJlYWRWYXJpbnQoKSt0LnBvcyxuPTEsaT0wLHM9MCxhPTAsbz1bXTt0LnBvczxyOyl7aWYoaTw9MCl7dmFyIGw9dC5yZWFkVmFyaW50KCk7bj03JmwsaT1sPj4zO31pZihpLS0sMT09PW58fDI9PT1uKXMrPXQucmVhZFNWYXJpbnQoKSxhKz10LnJlYWRTVmFyaW50KCksMT09PW4mJihlJiZvLnB1c2goZSksZT1bXSksZS5wdXNoKG5ldyBkbChzLGEpKTtlbHNlIHtpZig3IT09bil0aHJvdyBuZXcgRXJyb3IoXCJ1bmtub3duIGNvbW1hbmQgXCIrbik7ZSYmZS5wdXNoKGVbMF0uY2xvbmUoKSk7fX1yZXR1cm4gZSYmby5wdXNoKGUpLG99LG1sLnByb3RvdHlwZS5iYm94PWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5fcGJmO3QucG9zPXRoaXMuX2dlb21ldHJ5O2Zvcih2YXIgZT10LnJlYWRWYXJpbnQoKSt0LnBvcyxyPTEsbj0wLGk9MCxzPTAsYT0xLzAsbz0tMS8wLGw9MS8wLHU9LTEvMDt0LnBvczxlOyl7aWYobjw9MCl7dmFyIGM9dC5yZWFkVmFyaW50KCk7cj03JmMsbj1jPj4zO31pZihuLS0sMT09PXJ8fDI9PT1yKShpKz10LnJlYWRTVmFyaW50KCkpPGEmJihhPWkpLGk+byYmKG89aSksKHMrPXQucmVhZFNWYXJpbnQoKSk8bCYmKGw9cykscz51JiYodT1zKTtlbHNlIGlmKDchPT1yKXRocm93IG5ldyBFcnJvcihcInVua25vd24gY29tbWFuZCBcIityKX1yZXR1cm4gW2EsbCxvLHVdfSxtbC5wcm90b3R5cGUudG9HZW9KU09OPWZ1bmN0aW9uKHQsZSxyKXt2YXIgbixpLHM9dGhpcy5leHRlbnQqTWF0aC5wb3coMixyKSxhPXRoaXMuZXh0ZW50KnQsbz10aGlzLmV4dGVudCplLGw9dGhpcy5sb2FkR2VvbWV0cnkoKSx1PW1sLnR5cGVzW3RoaXMudHlwZV07ZnVuY3Rpb24gYyh0KXtmb3IodmFyIGU9MDtlPHQubGVuZ3RoO2UrKyl7dmFyIHI9dFtlXTt0W2VdPVszNjAqKHIueCthKS9zLTE4MCwzNjAvTWF0aC5QSSpNYXRoLmF0YW4oTWF0aC5leHAoKDE4MC0zNjAqKHIueStvKS9zKSpNYXRoLlBJLzE4MCkpLTkwXTt9fXN3aXRjaCh0aGlzLnR5cGUpe2Nhc2UgMTp2YXIgaD1bXTtmb3Iobj0wO248bC5sZW5ndGg7bisrKWhbbl09bFtuXVswXTtjKGw9aCk7YnJlYWs7Y2FzZSAyOmZvcihuPTA7bjxsLmxlbmd0aDtuKyspYyhsW25dKTticmVhaztjYXNlIDM6Zm9yKGw9ZnVuY3Rpb24odCl7dmFyIGU9dC5sZW5ndGg7aWYoZTw9MSlyZXR1cm4gW3RdO2Zvcih2YXIgcixuLGk9W10scz0wO3M8ZTtzKyspe3ZhciBhPXhsKHRbc10pOzAhPT1hJiYodm9pZCAwPT09biYmKG49YTwwKSxuPT09YTwwPyhyJiZpLnB1c2gocikscj1bdFtzXV0pOnIucHVzaCh0W3NdKSk7fXJldHVybiByJiZpLnB1c2gociksaX0obCksbj0wO248bC5sZW5ndGg7bisrKWZvcihpPTA7aTxsW25dLmxlbmd0aDtpKyspYyhsW25dW2ldKTt9MT09PWwubGVuZ3RoP2w9bFswXTp1PVwiTXVsdGlcIit1O3ZhciBwPXt0eXBlOlwiRmVhdHVyZVwiLGdlb21ldHJ5Ont0eXBlOnUsY29vcmRpbmF0ZXM6bH0scHJvcGVydGllczp0aGlzLnByb3BlcnRpZXN9O3JldHVybiBcImlkXCJpbiB0aGlzJiYocC5pZD10aGlzLmlkKSxwfTt2YXIgdmw9eWwsYmw9d2w7ZnVuY3Rpb24gd2wodCxlKXt0aGlzLnZlcnNpb249MSx0aGlzLm5hbWU9bnVsbCx0aGlzLmV4dGVudD00MDk2LHRoaXMubGVuZ3RoPTAsdGhpcy5fcGJmPXQsdGhpcy5fa2V5cz1bXSx0aGlzLl92YWx1ZXM9W10sdGhpcy5fZmVhdHVyZXM9W10sdC5yZWFkRmllbGRzKF9sLHRoaXMsZSksdGhpcy5sZW5ndGg9dGhpcy5fZmVhdHVyZXMubGVuZ3RoO31mdW5jdGlvbiBfbCh0LGUscil7MTU9PT10P2UudmVyc2lvbj1yLnJlYWRWYXJpbnQoKToxPT09dD9lLm5hbWU9ci5yZWFkU3RyaW5nKCk6NT09PXQ/ZS5leHRlbnQ9ci5yZWFkVmFyaW50KCk6Mj09PXQ/ZS5fZmVhdHVyZXMucHVzaChyLnBvcyk6Mz09PXQ/ZS5fa2V5cy5wdXNoKHIucmVhZFN0cmluZygpKTo0PT09dCYmZS5fdmFsdWVzLnB1c2goZnVuY3Rpb24odCl7Zm9yKHZhciBlPW51bGwscj10LnJlYWRWYXJpbnQoKSt0LnBvczt0LnBvczxyOyl7dmFyIG49dC5yZWFkVmFyaW50KCk+PjM7ZT0xPT09bj90LnJlYWRTdHJpbmcoKToyPT09bj90LnJlYWRGbG9hdCgpOjM9PT1uP3QucmVhZERvdWJsZSgpOjQ9PT1uP3QucmVhZFZhcmludDY0KCk6NT09PW4/dC5yZWFkVmFyaW50KCk6Nj09PW4/dC5yZWFkU1ZhcmludCgpOjc9PT1uP3QucmVhZEJvb2xlYW4oKTpudWxsO31yZXR1cm4gZX0ocikpO313bC5wcm90b3R5cGUuZmVhdHVyZT1mdW5jdGlvbih0KXtpZih0PDB8fHQ+PXRoaXMuX2ZlYXR1cmVzLmxlbmd0aCl0aHJvdyBuZXcgRXJyb3IoXCJmZWF0dXJlIGluZGV4IG91dCBvZiBib3VuZHNcIik7dGhpcy5fcGJmLnBvcz10aGlzLl9mZWF0dXJlc1t0XTt2YXIgZT10aGlzLl9wYmYucmVhZFZhcmludCgpK3RoaXMuX3BiZi5wb3M7cmV0dXJuIG5ldyB2bCh0aGlzLl9wYmYsZSx0aGlzLmV4dGVudCx0aGlzLl9rZXlzLHRoaXMuX3ZhbHVlcyl9O3ZhciBBbD1ibDtmdW5jdGlvbiBTbCh0LGUscil7aWYoMz09PXQpe3ZhciBuPW5ldyBBbChyLHIucmVhZFZhcmludCgpK3IucG9zKTtuLmxlbmd0aCYmKGVbbi5uYW1lXT1uKTt9fWZsLlZlY3RvclRpbGU9ZnVuY3Rpb24odCxlKXt0aGlzLmxheWVycz10LnJlYWRGaWVsZHMoU2wse30sZSk7fSxmbC5WZWN0b3JUaWxlRmVhdHVyZT15bCxmbC5WZWN0b3JUaWxlTGF5ZXI9Ymw7Y29uc3Qga2w9ZmwuVmVjdG9yVGlsZUZlYXR1cmUudHlwZXMsTWw9TWF0aC5wb3coMiwxMyk7ZnVuY3Rpb24gSWwodCxlLHIsbixpLHMsYSxvKXt0LmVtcGxhY2VCYWNrKGUsciwyKk1hdGguZmxvb3IobipNbCkrYSxpKk1sKjIscypNbCoyLE1hdGgucm91bmQobykpO31jbGFzcyB6bHtjb25zdHJ1Y3Rvcih0KXt0aGlzLnpvb209dC56b29tLHRoaXMub3ZlcnNjYWxpbmc9dC5vdmVyc2NhbGluZyx0aGlzLmxheWVycz10LmxheWVycyx0aGlzLmxheWVySWRzPXRoaXMubGF5ZXJzLm1hcCgodD0+dC5pZCkpLHRoaXMuaW5kZXg9dC5pbmRleCx0aGlzLmhhc1BhdHRlcm49ITEsdGhpcy5sYXlvdXRWZXJ0ZXhBcnJheT1uZXcgWHMsdGhpcy5jZW50cm9pZFZlcnRleEFycmF5PW5ldyBacyx0aGlzLmluZGV4QXJyYXk9bmV3IG5hLHRoaXMucHJvZ3JhbUNvbmZpZ3VyYXRpb25zPW5ldyBFYSh0LmxheWVycyx0Lnpvb20pLHRoaXMuc2VnbWVudHM9bmV3IG9hLHRoaXMuc3RhdGVEZXBlbmRlbnRMYXllcklkcz10aGlzLmxheWVycy5maWx0ZXIoKHQ9PnQuaXNTdGF0ZURlcGVuZGVudCgpKSkubWFwKCh0PT50LmlkKSk7fXBvcHVsYXRlKHQsZSxyKXt0aGlzLmZlYXR1cmVzPVtdLHRoaXMuaGFzUGF0dGVybj1ubChcImZpbGwtZXh0cnVzaW9uXCIsdGhpcy5sYXllcnMsZSk7Zm9yKGNvbnN0e2ZlYXR1cmU6bixpZDppLGluZGV4OnMsc291cmNlTGF5ZXJJbmRleDphfW9mIHQpe2NvbnN0IHQ9dGhpcy5sYXllcnNbMF0uX2ZlYXR1cmVGaWx0ZXIubmVlZEdlb21ldHJ5LG89amEobix0KTtpZighdGhpcy5sYXllcnNbMF0uX2ZlYXR1cmVGaWx0ZXIuZmlsdGVyKG5ldyBVaSh0aGlzLnpvb20pLG8scikpY29udGludWU7Y29uc3QgbD17aWQ6aSxzb3VyY2VMYXllckluZGV4OmEsaW5kZXg6cyxnZW9tZXRyeTp0P28uZ2VvbWV0cnk6T2EobikscHJvcGVydGllczpuLnByb3BlcnRpZXMsdHlwZTpuLnR5cGUscGF0dGVybnM6e319O3RoaXMuaGFzUGF0dGVybj90aGlzLmZlYXR1cmVzLnB1c2goaWwoXCJmaWxsLWV4dHJ1c2lvblwiLHRoaXMubGF5ZXJzLGwsdGhpcy56b29tLGUpKTp0aGlzLmFkZEZlYXR1cmUobCxsLmdlb21ldHJ5LHMscix7fSksZS5mZWF0dXJlSW5kZXguaW5zZXJ0KG4sbC5nZW9tZXRyeSxzLGEsdGhpcy5pbmRleCwhMCk7fX1hZGRGZWF0dXJlcyh0LGUscil7Zm9yKGNvbnN0IHQgb2YgdGhpcy5mZWF0dXJlcyl7Y29uc3R7Z2VvbWV0cnk6bn09dDt0aGlzLmFkZEZlYXR1cmUodCxuLHQuaW5kZXgsZSxyKTt9fXVwZGF0ZSh0LGUscil7dGhpcy5zdGF0ZURlcGVuZGVudExheWVycy5sZW5ndGgmJnRoaXMucHJvZ3JhbUNvbmZpZ3VyYXRpb25zLnVwZGF0ZVBhaW50QXJyYXlzKHQsZSx0aGlzLnN0YXRlRGVwZW5kZW50TGF5ZXJzLHIpO31pc0VtcHR5KCl7cmV0dXJuIDA9PT10aGlzLmxheW91dFZlcnRleEFycmF5Lmxlbmd0aCYmMD09PXRoaXMuY2VudHJvaWRWZXJ0ZXhBcnJheS5sZW5ndGh9dXBsb2FkUGVuZGluZygpe3JldHVybiAhdGhpcy51cGxvYWRlZHx8dGhpcy5wcm9ncmFtQ29uZmlndXJhdGlvbnMubmVlZHNVcGxvYWR9dXBsb2FkKHQpe3RoaXMudXBsb2FkZWR8fCh0aGlzLmxheW91dFZlcnRleEJ1ZmZlcj10LmNyZWF0ZVZlcnRleEJ1ZmZlcih0aGlzLmxheW91dFZlcnRleEFycmF5LHBsKSx0aGlzLmNlbnRyb2lkVmVydGV4QnVmZmVyPXQuY3JlYXRlVmVydGV4QnVmZmVyKHRoaXMuY2VudHJvaWRWZXJ0ZXhBcnJheSxobC5tZW1iZXJzLCEwKSx0aGlzLmluZGV4QnVmZmVyPXQuY3JlYXRlSW5kZXhCdWZmZXIodGhpcy5pbmRleEFycmF5KSksdGhpcy5wcm9ncmFtQ29uZmlndXJhdGlvbnMudXBsb2FkKHQpLHRoaXMudXBsb2FkZWQ9ITA7fWRlc3Ryb3koKXt0aGlzLmxheW91dFZlcnRleEJ1ZmZlciYmKHRoaXMubGF5b3V0VmVydGV4QnVmZmVyLmRlc3Ryb3koKSx0aGlzLmluZGV4QnVmZmVyLmRlc3Ryb3koKSx0aGlzLnByb2dyYW1Db25maWd1cmF0aW9ucy5kZXN0cm95KCksdGhpcy5zZWdtZW50cy5kZXN0cm95KCksdGhpcy5jZW50cm9pZFZlcnRleEJ1ZmZlci5kZXN0cm95KCkpO31hZGRGZWF0dXJlKHQsZSxyLG4saSl7Zm9yKGNvbnN0IHIgb2YgeHIoZSw1MDApKXtjb25zdCBlPXt4OjAseTowLHZlcnRleENvdW50OjB9O2xldCBuPTA7Zm9yKGNvbnN0IHQgb2YgciluKz10Lmxlbmd0aDtsZXQgaT10aGlzLnNlZ21lbnRzLnByZXBhcmVTZWdtZW50KDQsdGhpcy5sYXlvdXRWZXJ0ZXhBcnJheSx0aGlzLmluZGV4QXJyYXkpO2Zvcihjb25zdCB0IG9mIHIpe2lmKDA9PT10Lmxlbmd0aCljb250aW51ZTtpZihDbCh0KSljb250aW51ZTtsZXQgcj0wO2ZvcihsZXQgbj0wO248dC5sZW5ndGg7bisrKXtjb25zdCBzPXRbbl07aWYobj49MSl7Y29uc3QgYT10W24tMV07aWYoIVBsKHMsYSkpe2kudmVydGV4TGVuZ3RoKzQ+b2EuTUFYX1ZFUlRFWF9BUlJBWV9MRU5HVEgmJihpPXRoaXMuc2VnbWVudHMucHJlcGFyZVNlZ21lbnQoNCx0aGlzLmxheW91dFZlcnRleEFycmF5LHRoaXMuaW5kZXhBcnJheSkpO2NvbnN0IHQ9cy5zdWIoYSkuX3BlcnAoKS5fdW5pdCgpLG49YS5kaXN0KHMpO3Irbj4zMjc2OCYmKHI9MCksSWwodGhpcy5sYXlvdXRWZXJ0ZXhBcnJheSxzLngscy55LHQueCx0LnksMCwwLHIpLElsKHRoaXMubGF5b3V0VmVydGV4QXJyYXkscy54LHMueSx0LngsdC55LDAsMSxyKSxlLngrPTIqcy54LGUueSs9MipzLnksZS52ZXJ0ZXhDb3VudCs9MixyKz1uLElsKHRoaXMubGF5b3V0VmVydGV4QXJyYXksYS54LGEueSx0LngsdC55LDAsMCxyKSxJbCh0aGlzLmxheW91dFZlcnRleEFycmF5LGEueCxhLnksdC54LHQueSwwLDEsciksZS54Kz0yKmEueCxlLnkrPTIqYS55LGUudmVydGV4Q291bnQrPTI7Y29uc3Qgbz1pLnZlcnRleExlbmd0aDt0aGlzLmluZGV4QXJyYXkuZW1wbGFjZUJhY2sobyxvKzIsbysxKSx0aGlzLmluZGV4QXJyYXkuZW1wbGFjZUJhY2sobysxLG8rMixvKzMpLGkudmVydGV4TGVuZ3RoKz00LGkucHJpbWl0aXZlTGVuZ3RoKz0yO319fX1pZihpLnZlcnRleExlbmd0aCtuPm9hLk1BWF9WRVJURVhfQVJSQVlfTEVOR1RIJiYoaT10aGlzLnNlZ21lbnRzLnByZXBhcmVTZWdtZW50KG4sdGhpcy5sYXlvdXRWZXJ0ZXhBcnJheSx0aGlzLmluZGV4QXJyYXkpKSxcIlBvbHlnb25cIiE9PWtsW3QudHlwZV0pY29udGludWU7Y29uc3Qgcz1bXSxhPVtdLG89aS52ZXJ0ZXhMZW5ndGg7Zm9yKGNvbnN0IHQgb2YgcilpZigwIT09dC5sZW5ndGgpe3QhPT1yWzBdJiZhLnB1c2gocy5sZW5ndGgvMik7Zm9yKGxldCByPTA7cjx0Lmxlbmd0aDtyKyspe2NvbnN0IG49dFtyXTtJbCh0aGlzLmxheW91dFZlcnRleEFycmF5LG4ueCxuLnksMCwwLDEsMSwwKSxlLngrPW4ueCxlLnkrPW4ueSxlLnZlcnRleENvdW50Kz0xLHMucHVzaChuLngpLHMucHVzaChuLnkpO319Y29uc3QgbD1WbyhzLGEpO2ZvcihsZXQgdD0wO3Q8bC5sZW5ndGg7dCs9Myl0aGlzLmluZGV4QXJyYXkuZW1wbGFjZUJhY2sobytsW3RdLG8rbFt0KzJdLG8rbFt0KzFdKTtpLnByaW1pdGl2ZUxlbmd0aCs9bC5sZW5ndGgvMyxpLnZlcnRleExlbmd0aCs9bjtmb3IobGV0IHQ9MDt0PGUudmVydGV4Q291bnQ7dCsrKXtjb25zdCB0PU1hdGguZmxvb3IoZS54L2UudmVydGV4Q291bnQpLHI9TWF0aC5mbG9vcihlLnkvZS52ZXJ0ZXhDb3VudCk7dGhpcy5jZW50cm9pZFZlcnRleEFycmF5LmVtcGxhY2VCYWNrKHQscik7fX10aGlzLnByb2dyYW1Db25maWd1cmF0aW9ucy5wb3B1bGF0ZVBhaW50QXJyYXlzKHRoaXMubGF5b3V0VmVydGV4QXJyYXkubGVuZ3RoLHQscixpLG4pO319ZnVuY3Rpb24gUGwodCxlKXtyZXR1cm4gdC54PT09ZS54JiYodC54PDB8fHQueD4kYSl8fHQueT09PWUueSYmKHQueTwwfHx0Lnk+JGEpfWZ1bmN0aW9uIENsKHQpe3JldHVybiB0LmV2ZXJ5KCh0PT50Lng8MCkpfHx0LmV2ZXJ5KCh0PT50Lng+JGEpKXx8dC5ldmVyeSgodD0+dC55PDApKXx8dC5ldmVyeSgodD0+dC55PiRhKSl9bGV0IEJsO3dpKFwiRmlsbEV4dHJ1c2lvbkJ1Y2tldFwiLHpsLHtvbWl0OltcImxheWVyc1wiLFwiZmVhdHVyZXNcIl19KTt2YXIgVmw9e2dldCBwYWludCgpe3JldHVybiBCbD1CbHx8bmV3IHJzKHtcImZpbGwtZXh0cnVzaW9uLW9wYWNpdHlcIjpuZXcgSmkoR1tcInBhaW50X2ZpbGwtZXh0cnVzaW9uXCJdW1wiZmlsbC1leHRydXNpb24tb3BhY2l0eVwiXSksXCJmaWxsLWV4dHJ1c2lvbi1jb2xvclwiOm5ldyBXaShHW1wicGFpbnRfZmlsbC1leHRydXNpb25cIl1bXCJmaWxsLWV4dHJ1c2lvbi1jb2xvclwiXSksXCJmaWxsLWV4dHJ1c2lvbi10cmFuc2xhdGVcIjpuZXcgSmkoR1tcInBhaW50X2ZpbGwtZXh0cnVzaW9uXCJdW1wiZmlsbC1leHRydXNpb24tdHJhbnNsYXRlXCJdKSxcImZpbGwtZXh0cnVzaW9uLXRyYW5zbGF0ZS1hbmNob3JcIjpuZXcgSmkoR1tcInBhaW50X2ZpbGwtZXh0cnVzaW9uXCJdW1wiZmlsbC1leHRydXNpb24tdHJhbnNsYXRlLWFuY2hvclwiXSksXCJmaWxsLWV4dHJ1c2lvbi1wYXR0ZXJuXCI6bmV3IFFpKEdbXCJwYWludF9maWxsLWV4dHJ1c2lvblwiXVtcImZpbGwtZXh0cnVzaW9uLXBhdHRlcm5cIl0pLFwiZmlsbC1leHRydXNpb24taGVpZ2h0XCI6bmV3IFdpKEdbXCJwYWludF9maWxsLWV4dHJ1c2lvblwiXVtcImZpbGwtZXh0cnVzaW9uLWhlaWdodFwiXSksXCJmaWxsLWV4dHJ1c2lvbi1iYXNlXCI6bmV3IFdpKEdbXCJwYWludF9maWxsLWV4dHJ1c2lvblwiXVtcImZpbGwtZXh0cnVzaW9uLWJhc2VcIl0pLFwiZmlsbC1leHRydXNpb24tdmVydGljYWwtZ3JhZGllbnRcIjpuZXcgSmkoR1tcInBhaW50X2ZpbGwtZXh0cnVzaW9uXCJdW1wiZmlsbC1leHRydXNpb24tdmVydGljYWwtZ3JhZGllbnRcIl0pfSl9fTtjbGFzcyBFbCBleHRlbmRzIGlze2NvbnN0cnVjdG9yKHQpe3N1cGVyKHQsVmwpO31jcmVhdGVCdWNrZXQodCl7cmV0dXJuIG5ldyB6bCh0KX1xdWVyeVJhZGl1cygpe3JldHVybiBlbyh0aGlzLnBhaW50LmdldChcImZpbGwtZXh0cnVzaW9uLXRyYW5zbGF0ZVwiKSl9aXMzRCgpe3JldHVybiAhMH1xdWVyeUludGVyc2VjdHNGZWF0dXJlKHQsZSxyLG4saSxhLG8sbCl7Y29uc3QgdT1ybyh0LHRoaXMucGFpbnQuZ2V0KFwiZmlsbC1leHRydXNpb24tdHJhbnNsYXRlXCIpLHRoaXMucGFpbnQuZ2V0KFwiZmlsbC1leHRydXNpb24tdHJhbnNsYXRlLWFuY2hvclwiKSxhLmFuZ2xlLG8pLGM9dGhpcy5wYWludC5nZXQoXCJmaWxsLWV4dHJ1c2lvbi1oZWlnaHRcIikuZXZhbHVhdGUoZSxyKSxoPXRoaXMucGFpbnQuZ2V0KFwiZmlsbC1leHRydXNpb24tYmFzZVwiKS5ldmFsdWF0ZShlLHIpLHA9ZnVuY3Rpb24odCxlLHIsbil7Y29uc3QgaT1bXTtmb3IoY29uc3QgciBvZiB0KXtjb25zdCB0PVtyLngsci55LDAsMV07cG8odCx0LGUpLGkucHVzaChuZXcgcyh0WzBdL3RbM10sdFsxXS90WzNdKSk7fXJldHVybiBpfSh1LGwpLGY9ZnVuY3Rpb24odCxlLHIsbil7Y29uc3QgaT1bXSxhPVtdLG89bls4XSplLGw9bls5XSplLHU9blsxMF0qZSxjPW5bMTFdKmUsaD1uWzhdKnIscD1uWzldKnIsZj1uWzEwXSpyLGQ9blsxMV0qcjtmb3IoY29uc3QgZSBvZiB0KXtjb25zdCB0PVtdLHI9W107Zm9yKGNvbnN0IGkgb2YgZSl7Y29uc3QgZT1pLngsYT1pLnkseT1uWzBdKmUrbls0XSphK25bMTJdLG09blsxXSplK25bNV0qYStuWzEzXSxnPW5bMl0qZStuWzZdKmErblsxNF0seD1uWzNdKmUrbls3XSphK25bMTVdLHY9Zyt1LGI9eCtjLHc9eStoLF89bStwLEE9ZytmLFM9eCtkLGs9bmV3IHMoKHkrbykvYiwobStsKS9iKTtrLno9di9iLHQucHVzaChrKTtjb25zdCBNPW5ldyBzKHcvUyxfL1MpO00uej1BL1Msci5wdXNoKE0pO31pLnB1c2godCksYS5wdXNoKHIpO31yZXR1cm4gW2ksYV19KG4saCxjLGwpO3JldHVybiBmdW5jdGlvbih0LGUscil7bGV0IG49MS8wO1phKHIsZSkmJihuPVRsKHIsZVswXSkpO2ZvcihsZXQgaT0wO2k8ZS5sZW5ndGg7aSsrKXtjb25zdCBzPWVbaV0sYT10W2ldO2ZvcihsZXQgdD0wO3Q8cy5sZW5ndGgtMTt0Kyspe2NvbnN0IGU9c1t0XSxpPVtlLHNbdCsxXSxhW3QrMV0sYVt0XSxlXTtxYShyLGkpJiYobj1NYXRoLm1pbihuLFRsKHIsaSkpKTt9fXJldHVybiBuIT09MS8wJiZufShmWzBdLGZbMV0scCl9fWZ1bmN0aW9uIEZsKHQsZSl7cmV0dXJuIHQueCplLngrdC55KmUueX1mdW5jdGlvbiBUbCh0LGUpe2lmKDE9PT10Lmxlbmd0aCl7bGV0IHI9MDtjb25zdCBuPWVbcisrXTtsZXQgaTtmb3IoOyFpfHxuLmVxdWFscyhpKTspaWYoaT1lW3IrK10sIWkpcmV0dXJuIDEvMDtmb3IoO3I8ZS5sZW5ndGg7cisrKXtjb25zdCBzPWVbcl0sYT10WzBdLG89aS5zdWIobiksbD1zLnN1YihuKSx1PWEuc3ViKG4pLGM9RmwobyxvKSxoPUZsKG8sbCkscD1GbChsLGwpLGY9RmwodSxvKSxkPUZsKHUsbCkseT1jKnAtaCpoLG09KHAqZi1oKmQpL3ksZz0oYypkLWgqZikveSx4PW4ueiooMS1tLWcpK2kueiptK3MueipnO2lmKGlzRmluaXRlKHgpKXJldHVybiB4fXJldHVybiAxLzB9e2xldCB0PTEvMDtmb3IoY29uc3QgciBvZiBlKXQ9TWF0aC5taW4odCxyLnopO3JldHVybiB0fX1jb25zdCAkbD1scyhbe25hbWU6XCJhX3Bvc19ub3JtYWxcIixjb21wb25lbnRzOjIsdHlwZTpcIkludDE2XCJ9LHtuYW1lOlwiYV9kYXRhXCIsY29tcG9uZW50czo0LHR5cGU6XCJVaW50OFwifV0sNCkse21lbWJlcnM6TGx9PSRsLERsPWxzKFt7bmFtZTpcImFfdXZfeFwiLGNvbXBvbmVudHM6MSx0eXBlOlwiRmxvYXQzMlwifSx7bmFtZTpcImFfc3BsaXRfaW5kZXhcIixjb21wb25lbnRzOjEsdHlwZTpcIkZsb2F0MzJcIn1dKSx7bWVtYmVyczpPbH09RGwsamw9ZmwuVmVjdG9yVGlsZUZlYXR1cmUudHlwZXMsUmw9TWF0aC5jb3MoTWF0aC5QSS8xODAqMzcuNSksVWw9TWF0aC5wb3coMiwxNCkvLjU7Y2xhc3MgcWx7Y29uc3RydWN0b3IodCl7dGhpcy56b29tPXQuem9vbSx0aGlzLm92ZXJzY2FsaW5nPXQub3ZlcnNjYWxpbmcsdGhpcy5sYXllcnM9dC5sYXllcnMsdGhpcy5sYXllcklkcz10aGlzLmxheWVycy5tYXAoKHQ9PnQuaWQpKSx0aGlzLmluZGV4PXQuaW5kZXgsdGhpcy5oYXNQYXR0ZXJuPSExLHRoaXMucGF0dGVybkZlYXR1cmVzPVtdLHRoaXMubGluZUNsaXBzQXJyYXk9W10sdGhpcy5ncmFkaWVudHM9e30sdGhpcy5sYXllcnMuZm9yRWFjaCgodD0+e3RoaXMuZ3JhZGllbnRzW3QuaWRdPXt9O30pKSx0aGlzLmxheW91dFZlcnRleEFycmF5PW5ldyBIcyx0aGlzLmxheW91dFZlcnRleEFycmF5Mj1uZXcgWXMsdGhpcy5pbmRleEFycmF5PW5ldyBuYSx0aGlzLnByb2dyYW1Db25maWd1cmF0aW9ucz1uZXcgRWEodC5sYXllcnMsdC56b29tKSx0aGlzLnNlZ21lbnRzPW5ldyBvYSx0aGlzLm1heExpbmVMZW5ndGg9MCx0aGlzLnN0YXRlRGVwZW5kZW50TGF5ZXJJZHM9dGhpcy5sYXllcnMuZmlsdGVyKCh0PT50LmlzU3RhdGVEZXBlbmRlbnQoKSkpLm1hcCgodD0+dC5pZCkpO31wb3B1bGF0ZSh0LGUscil7dGhpcy5oYXNQYXR0ZXJuPW5sKFwibGluZVwiLHRoaXMubGF5ZXJzLGUpO2NvbnN0IG49dGhpcy5sYXllcnNbMF0ubGF5b3V0LmdldChcImxpbmUtc29ydC1rZXlcIiksaT0hbi5pc0NvbnN0YW50KCkscz1bXTtmb3IoY29uc3R7ZmVhdHVyZTplLGlkOmEsaW5kZXg6byxzb3VyY2VMYXllckluZGV4Omx9b2YgdCl7Y29uc3QgdD10aGlzLmxheWVyc1swXS5fZmVhdHVyZUZpbHRlci5uZWVkR2VvbWV0cnksdT1qYShlLHQpO2lmKCF0aGlzLmxheWVyc1swXS5fZmVhdHVyZUZpbHRlci5maWx0ZXIobmV3IFVpKHRoaXMuem9vbSksdSxyKSljb250aW51ZTtjb25zdCBjPWk/bi5ldmFsdWF0ZSh1LHt9LHIpOnZvaWQgMCxoPXtpZDphLHByb3BlcnRpZXM6ZS5wcm9wZXJ0aWVzLHR5cGU6ZS50eXBlLHNvdXJjZUxheWVySW5kZXg6bCxpbmRleDpvLGdlb21ldHJ5OnQ/dS5nZW9tZXRyeTpPYShlKSxwYXR0ZXJuczp7fSxzb3J0S2V5OmN9O3MucHVzaChoKTt9aSYmcy5zb3J0KCgodCxlKT0+dC5zb3J0S2V5LWUuc29ydEtleSkpO2Zvcihjb25zdCBuIG9mIHMpe2NvbnN0e2dlb21ldHJ5OmksaW5kZXg6cyxzb3VyY2VMYXllckluZGV4OmF9PW47aWYodGhpcy5oYXNQYXR0ZXJuKXtjb25zdCB0PWlsKFwibGluZVwiLHRoaXMubGF5ZXJzLG4sdGhpcy56b29tLGUpO3RoaXMucGF0dGVybkZlYXR1cmVzLnB1c2godCk7fWVsc2UgdGhpcy5hZGRGZWF0dXJlKG4saSxzLHIse30pO2UuZmVhdHVyZUluZGV4Lmluc2VydCh0W3NdLmZlYXR1cmUsaSxzLGEsdGhpcy5pbmRleCk7fX11cGRhdGUodCxlLHIpe3RoaXMuc3RhdGVEZXBlbmRlbnRMYXllcnMubGVuZ3RoJiZ0aGlzLnByb2dyYW1Db25maWd1cmF0aW9ucy51cGRhdGVQYWludEFycmF5cyh0LGUsdGhpcy5zdGF0ZURlcGVuZGVudExheWVycyxyKTt9YWRkRmVhdHVyZXModCxlLHIpe2Zvcihjb25zdCB0IG9mIHRoaXMucGF0dGVybkZlYXR1cmVzKXRoaXMuYWRkRmVhdHVyZSh0LHQuZ2VvbWV0cnksdC5pbmRleCxlLHIpO31pc0VtcHR5KCl7cmV0dXJuIDA9PT10aGlzLmxheW91dFZlcnRleEFycmF5Lmxlbmd0aH11cGxvYWRQZW5kaW5nKCl7cmV0dXJuICF0aGlzLnVwbG9hZGVkfHx0aGlzLnByb2dyYW1Db25maWd1cmF0aW9ucy5uZWVkc1VwbG9hZH11cGxvYWQodCl7dGhpcy51cGxvYWRlZHx8KDAhPT10aGlzLmxheW91dFZlcnRleEFycmF5Mi5sZW5ndGgmJih0aGlzLmxheW91dFZlcnRleEJ1ZmZlcjI9dC5jcmVhdGVWZXJ0ZXhCdWZmZXIodGhpcy5sYXlvdXRWZXJ0ZXhBcnJheTIsT2wpKSx0aGlzLmxheW91dFZlcnRleEJ1ZmZlcj10LmNyZWF0ZVZlcnRleEJ1ZmZlcih0aGlzLmxheW91dFZlcnRleEFycmF5LExsKSx0aGlzLmluZGV4QnVmZmVyPXQuY3JlYXRlSW5kZXhCdWZmZXIodGhpcy5pbmRleEFycmF5KSksdGhpcy5wcm9ncmFtQ29uZmlndXJhdGlvbnMudXBsb2FkKHQpLHRoaXMudXBsb2FkZWQ9ITA7fWRlc3Ryb3koKXt0aGlzLmxheW91dFZlcnRleEJ1ZmZlciYmKHRoaXMubGF5b3V0VmVydGV4QnVmZmVyLmRlc3Ryb3koKSx0aGlzLmluZGV4QnVmZmVyLmRlc3Ryb3koKSx0aGlzLnByb2dyYW1Db25maWd1cmF0aW9ucy5kZXN0cm95KCksdGhpcy5zZWdtZW50cy5kZXN0cm95KCkpO31saW5lRmVhdHVyZUNsaXBzKHQpe2lmKHQucHJvcGVydGllcyYmT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQucHJvcGVydGllcyxcIm1hcGJveF9jbGlwX3N0YXJ0XCIpJiZPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodC5wcm9wZXJ0aWVzLFwibWFwYm94X2NsaXBfZW5kXCIpKXJldHVybiB7c3RhcnQ6K3QucHJvcGVydGllcy5tYXBib3hfY2xpcF9zdGFydCxlbmQ6K3QucHJvcGVydGllcy5tYXBib3hfY2xpcF9lbmR9fWFkZEZlYXR1cmUodCxlLHIsbixpKXtjb25zdCBzPXRoaXMubGF5ZXJzWzBdLmxheW91dCxhPXMuZ2V0KFwibGluZS1qb2luXCIpLmV2YWx1YXRlKHQse30pLG89cy5nZXQoXCJsaW5lLWNhcFwiKSxsPXMuZ2V0KFwibGluZS1taXRlci1saW1pdFwiKSx1PXMuZ2V0KFwibGluZS1yb3VuZC1saW1pdFwiKTt0aGlzLmxpbmVDbGlwcz10aGlzLmxpbmVGZWF0dXJlQ2xpcHModCk7Zm9yKGNvbnN0IHIgb2YgZSl0aGlzLmFkZExpbmUocix0LGEsbyxsLHUpO3RoaXMucHJvZ3JhbUNvbmZpZ3VyYXRpb25zLnBvcHVsYXRlUGFpbnRBcnJheXModGhpcy5sYXlvdXRWZXJ0ZXhBcnJheS5sZW5ndGgsdCxyLGksbik7fWFkZExpbmUodCxlLHIsbixpLHMpe2lmKHRoaXMuZGlzdGFuY2U9MCx0aGlzLnNjYWxlZERpc3RhbmNlPTAsdGhpcy50b3RhbERpc3RhbmNlPTAsdGhpcy5saW5lQ2xpcHMpe3RoaXMubGluZUNsaXBzQXJyYXkucHVzaCh0aGlzLmxpbmVDbGlwcyk7Zm9yKGxldCBlPTA7ZTx0Lmxlbmd0aC0xO2UrKyl0aGlzLnRvdGFsRGlzdGFuY2UrPXRbZV0uZGlzdCh0W2UrMV0pO3RoaXMudXBkYXRlU2NhbGVkRGlzdGFuY2UoKSx0aGlzLm1heExpbmVMZW5ndGg9TWF0aC5tYXgodGhpcy5tYXhMaW5lTGVuZ3RoLHRoaXMudG90YWxEaXN0YW5jZSk7fWNvbnN0IGE9XCJQb2x5Z29uXCI9PT1qbFtlLnR5cGVdO2xldCBvPXQubGVuZ3RoO2Zvcig7bz49MiYmdFtvLTFdLmVxdWFscyh0W28tMl0pOylvLS07bGV0IGw9MDtmb3IoO2w8by0xJiZ0W2xdLmVxdWFscyh0W2wrMV0pOylsKys7aWYobzwoYT8zOjIpKXJldHVybjtcImJldmVsXCI9PT1yJiYoaT0xLjA1KTtjb25zdCB1PXRoaXMub3ZlcnNjYWxpbmc8PTE2PzE1KiRhLyg1MTIqdGhpcy5vdmVyc2NhbGluZyk6MCxjPXRoaXMuc2VnbWVudHMucHJlcGFyZVNlZ21lbnQoMTAqbyx0aGlzLmxheW91dFZlcnRleEFycmF5LHRoaXMuaW5kZXhBcnJheSk7bGV0IGgscCxmLGQseTt0aGlzLmUxPXRoaXMuZTI9LTEsYSYmKGg9dFtvLTJdLHk9dFtsXS5zdWIoaCkuX3VuaXQoKS5fcGVycCgpKTtmb3IobGV0IGU9bDtlPG87ZSsrKXtpZihmPWU9PT1vLTE/YT90W2wrMV06dm9pZCAwOnRbZSsxXSxmJiZ0W2VdLmVxdWFscyhmKSljb250aW51ZTt5JiYoZD15KSxoJiYocD1oKSxoPXRbZV0seT1mP2Yuc3ViKGgpLl91bml0KCkuX3BlcnAoKTpkLGQ9ZHx8eTtsZXQgbT1kLmFkZCh5KTswPT09bS54JiYwPT09bS55fHxtLl91bml0KCk7Y29uc3QgZz1kLngqeS54K2QueSp5LnkseD1tLngqeS54K20ueSp5Lnksdj0wIT09eD8xL3g6MS8wLGI9MipNYXRoLnNxcnQoMi0yKngpLHc9eDxSbCYmcCYmZixfPWQueCp5LnktZC55KnkueD4wO2lmKHcmJmU+bCl7Y29uc3QgdD1oLmRpc3QocCk7aWYodD4yKnUpe2NvbnN0IGU9aC5zdWIoaC5zdWIocCkuX211bHQodS90KS5fcm91bmQoKSk7dGhpcy51cGRhdGVEaXN0YW5jZShwLGUpLHRoaXMuYWRkQ3VycmVudFZlcnRleChlLGQsMCwwLGMpLHA9ZTt9fWNvbnN0IEE9cCYmZjtsZXQgUz1BP3I6YT9cImJ1dHRcIjpuO2lmKEEmJlwicm91bmRcIj09PVMmJih2PHM/Uz1cIm1pdGVyXCI6djw9MiYmKFM9XCJmYWtlcm91bmRcIikpLFwibWl0ZXJcIj09PVMmJnY+aSYmKFM9XCJiZXZlbFwiKSxcImJldmVsXCI9PT1TJiYodj4yJiYoUz1cImZsaXBiZXZlbFwiKSx2PGkmJihTPVwibWl0ZXJcIikpLHAmJnRoaXMudXBkYXRlRGlzdGFuY2UocCxoKSxcIm1pdGVyXCI9PT1TKW0uX211bHQodiksdGhpcy5hZGRDdXJyZW50VmVydGV4KGgsbSwwLDAsYyk7ZWxzZSBpZihcImZsaXBiZXZlbFwiPT09Uyl7aWYodj4xMDApbT15Lm11bHQoLTEpO2Vsc2Uge2NvbnN0IHQ9dipkLmFkZCh5KS5tYWcoKS9kLnN1Yih5KS5tYWcoKTttLl9wZXJwKCkuX211bHQodCooXz8tMToxKSk7fXRoaXMuYWRkQ3VycmVudFZlcnRleChoLG0sMCwwLGMpLHRoaXMuYWRkQ3VycmVudFZlcnRleChoLG0ubXVsdCgtMSksMCwwLGMpO31lbHNlIGlmKFwiYmV2ZWxcIj09PVN8fFwiZmFrZXJvdW5kXCI9PT1TKXtjb25zdCB0PS1NYXRoLnNxcnQodip2LTEpLGU9Xz90OjAscj1fPzA6dDtpZihwJiZ0aGlzLmFkZEN1cnJlbnRWZXJ0ZXgoaCxkLGUscixjKSxcImZha2Vyb3VuZFwiPT09Uyl7Y29uc3QgdD1NYXRoLnJvdW5kKDE4MCpiL01hdGguUEkvMjApO2ZvcihsZXQgZT0xO2U8dDtlKyspe2xldCByPWUvdDtpZiguNSE9PXIpe2NvbnN0IHQ9ci0uNTtyKz1yKnQqKHItMSkqKCgxLjA5MDQrZyooZyooMy41NTY0NS0xLjQzNTE5KmcpLTMuMjQ1MikpKnQqdCsoLjg0ODAxMytnKiguMjE1NjM4KmctMS4wNjAyMSkpKTt9Y29uc3Qgbj15LnN1YihkKS5fbXVsdChyKS5fYWRkKGQpLl91bml0KCkuX211bHQoXz8tMToxKTt0aGlzLmFkZEhhbGZWZXJ0ZXgoaCxuLngsbi55LCExLF8sMCxjKTt9fWYmJnRoaXMuYWRkQ3VycmVudFZlcnRleChoLHksLWUsLXIsYyk7fWVsc2UgaWYoXCJidXR0XCI9PT1TKXRoaXMuYWRkQ3VycmVudFZlcnRleChoLG0sMCwwLGMpO2Vsc2UgaWYoXCJzcXVhcmVcIj09PVMpe2NvbnN0IHQ9cD8xOi0xO3RoaXMuYWRkQ3VycmVudFZlcnRleChoLG0sdCx0LGMpO31lbHNlIFwicm91bmRcIj09PVMmJihwJiYodGhpcy5hZGRDdXJyZW50VmVydGV4KGgsZCwwLDAsYyksdGhpcy5hZGRDdXJyZW50VmVydGV4KGgsZCwxLDEsYywhMCkpLGYmJih0aGlzLmFkZEN1cnJlbnRWZXJ0ZXgoaCx5LC0xLC0xLGMsITApLHRoaXMuYWRkQ3VycmVudFZlcnRleChoLHksMCwwLGMpKSk7aWYodyYmZTxvLTEpe2NvbnN0IHQ9aC5kaXN0KGYpO2lmKHQ+Mip1KXtjb25zdCBlPWguYWRkKGYuc3ViKGgpLl9tdWx0KHUvdCkuX3JvdW5kKCkpO3RoaXMudXBkYXRlRGlzdGFuY2UoaCxlKSx0aGlzLmFkZEN1cnJlbnRWZXJ0ZXgoZSx5LDAsMCxjKSxoPWU7fX19fWFkZEN1cnJlbnRWZXJ0ZXgodCxlLHIsbixpLHM9ITEpe2NvbnN0IGE9ZS55Km4tZS54LG89LWUueS1lLngqbjt0aGlzLmFkZEhhbGZWZXJ0ZXgodCxlLngrZS55KnIsZS55LWUueCpyLHMsITEscixpKSx0aGlzLmFkZEhhbGZWZXJ0ZXgodCxhLG8scywhMCwtbixpKSx0aGlzLmRpc3RhbmNlPlVsLzImJjA9PT10aGlzLnRvdGFsRGlzdGFuY2UmJih0aGlzLmRpc3RhbmNlPTAsdGhpcy51cGRhdGVTY2FsZWREaXN0YW5jZSgpLHRoaXMuYWRkQ3VycmVudFZlcnRleCh0LGUscixuLGkscykpO31hZGRIYWxmVmVydGV4KHt4OnQseTplfSxyLG4saSxzLGEsbyl7Y29uc3QgbD0uNSoodGhpcy5saW5lQ2xpcHM/dGhpcy5zY2FsZWREaXN0YW5jZSooVWwtMSk6dGhpcy5zY2FsZWREaXN0YW5jZSk7dGhpcy5sYXlvdXRWZXJ0ZXhBcnJheS5lbXBsYWNlQmFjaygodDw8MSkrKGk/MTowKSwoZTw8MSkrKHM/MTowKSxNYXRoLnJvdW5kKDYzKnIpKzEyOCxNYXRoLnJvdW5kKDYzKm4pKzEyOCwxKygwPT09YT8wOmE8MD8tMToxKXwoNjMmbCk8PDIsbD4+NiksdGhpcy5saW5lQ2xpcHMmJnRoaXMubGF5b3V0VmVydGV4QXJyYXkyLmVtcGxhY2VCYWNrKCh0aGlzLnNjYWxlZERpc3RhbmNlLXRoaXMubGluZUNsaXBzLnN0YXJ0KS8odGhpcy5saW5lQ2xpcHMuZW5kLXRoaXMubGluZUNsaXBzLnN0YXJ0KSx0aGlzLmxpbmVDbGlwc0FycmF5Lmxlbmd0aCk7Y29uc3QgdT1vLnZlcnRleExlbmd0aCsrO3RoaXMuZTE+PTAmJnRoaXMuZTI+PTAmJih0aGlzLmluZGV4QXJyYXkuZW1wbGFjZUJhY2sodGhpcy5lMSx0aGlzLmUyLHUpLG8ucHJpbWl0aXZlTGVuZ3RoKyspLHM/dGhpcy5lMj11OnRoaXMuZTE9dTt9dXBkYXRlU2NhbGVkRGlzdGFuY2UoKXt0aGlzLnNjYWxlZERpc3RhbmNlPXRoaXMubGluZUNsaXBzP3RoaXMubGluZUNsaXBzLnN0YXJ0Kyh0aGlzLmxpbmVDbGlwcy5lbmQtdGhpcy5saW5lQ2xpcHMuc3RhcnQpKnRoaXMuZGlzdGFuY2UvdGhpcy50b3RhbERpc3RhbmNlOnRoaXMuZGlzdGFuY2U7fXVwZGF0ZURpc3RhbmNlKHQsZSl7dGhpcy5kaXN0YW5jZSs9dC5kaXN0KGUpLHRoaXMudXBkYXRlU2NhbGVkRGlzdGFuY2UoKTt9fWxldCBObCxabDt3aShcIkxpbmVCdWNrZXRcIixxbCx7b21pdDpbXCJsYXllcnNcIixcInBhdHRlcm5GZWF0dXJlc1wiXX0pO3ZhciBHbD17Z2V0IHBhaW50KCl7cmV0dXJuIFpsPVpsfHxuZXcgcnMoe1wibGluZS1vcGFjaXR5XCI6bmV3IFdpKEcucGFpbnRfbGluZVtcImxpbmUtb3BhY2l0eVwiXSksXCJsaW5lLWNvbG9yXCI6bmV3IFdpKEcucGFpbnRfbGluZVtcImxpbmUtY29sb3JcIl0pLFwibGluZS10cmFuc2xhdGVcIjpuZXcgSmkoRy5wYWludF9saW5lW1wibGluZS10cmFuc2xhdGVcIl0pLFwibGluZS10cmFuc2xhdGUtYW5jaG9yXCI6bmV3IEppKEcucGFpbnRfbGluZVtcImxpbmUtdHJhbnNsYXRlLWFuY2hvclwiXSksXCJsaW5lLXdpZHRoXCI6bmV3IFdpKEcucGFpbnRfbGluZVtcImxpbmUtd2lkdGhcIl0pLFwibGluZS1nYXAtd2lkdGhcIjpuZXcgV2koRy5wYWludF9saW5lW1wibGluZS1nYXAtd2lkdGhcIl0pLFwibGluZS1vZmZzZXRcIjpuZXcgV2koRy5wYWludF9saW5lW1wibGluZS1vZmZzZXRcIl0pLFwibGluZS1ibHVyXCI6bmV3IFdpKEcucGFpbnRfbGluZVtcImxpbmUtYmx1clwiXSksXCJsaW5lLWRhc2hhcnJheVwiOm5ldyB0cyhHLnBhaW50X2xpbmVbXCJsaW5lLWRhc2hhcnJheVwiXSksXCJsaW5lLXBhdHRlcm5cIjpuZXcgUWkoRy5wYWludF9saW5lW1wibGluZS1wYXR0ZXJuXCJdKSxcImxpbmUtZ3JhZGllbnRcIjpuZXcgZXMoRy5wYWludF9saW5lW1wibGluZS1ncmFkaWVudFwiXSl9KX0sZ2V0IGxheW91dCgpe3JldHVybiBObD1ObHx8bmV3IHJzKHtcImxpbmUtY2FwXCI6bmV3IEppKEcubGF5b3V0X2xpbmVbXCJsaW5lLWNhcFwiXSksXCJsaW5lLWpvaW5cIjpuZXcgV2koRy5sYXlvdXRfbGluZVtcImxpbmUtam9pblwiXSksXCJsaW5lLW1pdGVyLWxpbWl0XCI6bmV3IEppKEcubGF5b3V0X2xpbmVbXCJsaW5lLW1pdGVyLWxpbWl0XCJdKSxcImxpbmUtcm91bmQtbGltaXRcIjpuZXcgSmkoRy5sYXlvdXRfbGluZVtcImxpbmUtcm91bmQtbGltaXRcIl0pLFwibGluZS1zb3J0LWtleVwiOm5ldyBXaShHLmxheW91dF9saW5lW1wibGluZS1zb3J0LWtleVwiXSl9KX19O2NsYXNzIEtsIGV4dGVuZHMgV2l7cG9zc2libHlFdmFsdWF0ZSh0LGUpe3JldHVybiBlPW5ldyBVaShNYXRoLmZsb29yKGUuem9vbSkse25vdzplLm5vdyxmYWRlRHVyYXRpb246ZS5mYWRlRHVyYXRpb24sem9vbUhpc3Rvcnk6ZS56b29tSGlzdG9yeSx0cmFuc2l0aW9uOmUudHJhbnNpdGlvbn0pLHN1cGVyLnBvc3NpYmx5RXZhbHVhdGUodCxlKX1ldmFsdWF0ZSh0LGUscixuKXtyZXR1cm4gZT1nKHt9LGUse3pvb206TWF0aC5mbG9vcihlLnpvb20pfSksc3VwZXIuZXZhbHVhdGUodCxlLHIsbil9fWxldCBYbDtjbGFzcyBIbCBleHRlbmRzIGlze2NvbnN0cnVjdG9yKHQpe3N1cGVyKHQsR2wpLHRoaXMuZ3JhZGllbnRWZXJzaW9uPTAsWGx8fChYbD1uZXcgS2woR2wucGFpbnQucHJvcGVydGllc1tcImxpbmUtd2lkdGhcIl0uc3BlY2lmaWNhdGlvbiksWGwudXNlSW50ZWdlclpvb209ITApO31faGFuZGxlU3BlY2lhbFBhaW50UHJvcGVydHlVcGRhdGUodCl7aWYoXCJsaW5lLWdyYWRpZW50XCI9PT10KXtjb25zdCB0PXRoaXMuZ3JhZGllbnRFeHByZXNzaW9uKCk7dGhpcy5zdGVwSW50ZXJwb2xhbnQ9ISFmdW5jdGlvbih0KXtyZXR1cm4gdm9pZCAwIT09dC5fc3R5bGVFeHByZXNzaW9ufSh0KSYmdC5fc3R5bGVFeHByZXNzaW9uLmV4cHJlc3Npb24gaW5zdGFuY2VvZiBBZSx0aGlzLmdyYWRpZW50VmVyc2lvbj0odGhpcy5ncmFkaWVudFZlcnNpb24rMSklTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVI7fX1ncmFkaWVudEV4cHJlc3Npb24oKXtyZXR1cm4gdGhpcy5fdHJhbnNpdGlvbmFibGVQYWludC5fdmFsdWVzW1wibGluZS1ncmFkaWVudFwiXS52YWx1ZS5leHByZXNzaW9ufXJlY2FsY3VsYXRlKHQsZSl7c3VwZXIucmVjYWxjdWxhdGUodCxlKSx0aGlzLnBhaW50Ll92YWx1ZXNbXCJsaW5lLWZsb29yd2lkdGhcIl09WGwucG9zc2libHlFdmFsdWF0ZSh0aGlzLl90cmFuc2l0aW9uaW5nUGFpbnQuX3ZhbHVlc1tcImxpbmUtd2lkdGhcIl0udmFsdWUsdCk7fWNyZWF0ZUJ1Y2tldCh0KXtyZXR1cm4gbmV3IHFsKHQpfXF1ZXJ5UmFkaXVzKHQpe2NvbnN0IGU9dCxyPVlsKHRvKFwibGluZS13aWR0aFwiLHRoaXMsZSksdG8oXCJsaW5lLWdhcC13aWR0aFwiLHRoaXMsZSkpLG49dG8oXCJsaW5lLW9mZnNldFwiLHRoaXMsZSk7cmV0dXJuIHIvMitNYXRoLmFicyhuKStlbyh0aGlzLnBhaW50LmdldChcImxpbmUtdHJhbnNsYXRlXCIpKX1xdWVyeUludGVyc2VjdHNGZWF0dXJlKHQsZSxyLG4saSxhLG8pe2NvbnN0IGw9cm8odCx0aGlzLnBhaW50LmdldChcImxpbmUtdHJhbnNsYXRlXCIpLHRoaXMucGFpbnQuZ2V0KFwibGluZS10cmFuc2xhdGUtYW5jaG9yXCIpLGEuYW5nbGUsbyksdT1vLzIqWWwodGhpcy5wYWludC5nZXQoXCJsaW5lLXdpZHRoXCIpLmV2YWx1YXRlKGUsciksdGhpcy5wYWludC5nZXQoXCJsaW5lLWdhcC13aWR0aFwiKS5ldmFsdWF0ZShlLHIpKSxjPXRoaXMucGFpbnQuZ2V0KFwibGluZS1vZmZzZXRcIikuZXZhbHVhdGUoZSxyKTtyZXR1cm4gYyYmKG49ZnVuY3Rpb24odCxlKXtjb25zdCByPVtdO2ZvcihsZXQgbj0wO248dC5sZW5ndGg7bisrKXtjb25zdCBpPXRbbl0sYT1bXTtmb3IobGV0IHQ9MDt0PGkubGVuZ3RoO3QrKyl7Y29uc3Qgcj1pW3QtMV0sbj1pW3RdLG89aVt0KzFdLGw9MD09PXQ/bmV3IHMoMCwwKTpuLnN1YihyKS5fdW5pdCgpLl9wZXJwKCksdT10PT09aS5sZW5ndGgtMT9uZXcgcygwLDApOm8uc3ViKG4pLl91bml0KCkuX3BlcnAoKSxjPWwuX2FkZCh1KS5fdW5pdCgpLGg9Yy54KnUueCtjLnkqdS55OzAhPT1oJiZjLl9tdWx0KDEvaCksYS5wdXNoKGMuX211bHQoZSkuX2FkZChuKSk7fXIucHVzaChhKTt9cmV0dXJuIHJ9KG4sYypvKSksZnVuY3Rpb24odCxlLHIpe2ZvcihsZXQgbj0wO248ZS5sZW5ndGg7bisrKXtjb25zdCBpPWVbbl07aWYodC5sZW5ndGg+PTMpZm9yKGxldCBlPTA7ZTxpLmxlbmd0aDtlKyspaWYoV2EodCxpW2VdKSlyZXR1cm4gITA7aWYoR2EodCxpLHIpKXJldHVybiAhMH1yZXR1cm4gITF9KGwsbix1KX1pc1RpbGVDbGlwcGVkKCl7cmV0dXJuICEwfX1mdW5jdGlvbiBZbCh0LGUpe3JldHVybiBlPjA/ZSsyKnQ6dH1jb25zdCBKbD1scyhbe25hbWU6XCJhX3Bvc19vZmZzZXRcIixjb21wb25lbnRzOjQsdHlwZTpcIkludDE2XCJ9LHtuYW1lOlwiYV9kYXRhXCIsY29tcG9uZW50czo0LHR5cGU6XCJVaW50MTZcIn0se25hbWU6XCJhX3BpeGVsb2Zmc2V0XCIsY29tcG9uZW50czo0LHR5cGU6XCJJbnQxNlwifV0sNCksV2w9bHMoW3tuYW1lOlwiYV9wcm9qZWN0ZWRfcG9zXCIsY29tcG9uZW50czozLHR5cGU6XCJGbG9hdDMyXCJ9XSw0KTtscyhbe25hbWU6XCJhX2ZhZGVfb3BhY2l0eVwiLGNvbXBvbmVudHM6MSx0eXBlOlwiVWludDMyXCJ9XSw0KTtjb25zdCBRbD1scyhbe25hbWU6XCJhX3BsYWNlZFwiLGNvbXBvbmVudHM6Mix0eXBlOlwiVWludDhcIn0se25hbWU6XCJhX3NoaWZ0XCIsY29tcG9uZW50czoyLHR5cGU6XCJGbG9hdDMyXCJ9LHtuYW1lOlwiYV9ib3hfcmVhbFwiLGNvbXBvbmVudHM6Mix0eXBlOlwiSW50MTZcIn1dKTtscyhbe3R5cGU6XCJJbnQxNlwiLG5hbWU6XCJhbmNob3JQb2ludFhcIn0se3R5cGU6XCJJbnQxNlwiLG5hbWU6XCJhbmNob3JQb2ludFlcIn0se3R5cGU6XCJJbnQxNlwiLG5hbWU6XCJ4MVwifSx7dHlwZTpcIkludDE2XCIsbmFtZTpcInkxXCJ9LHt0eXBlOlwiSW50MTZcIixuYW1lOlwieDJcIn0se3R5cGU6XCJJbnQxNlwiLG5hbWU6XCJ5MlwifSx7dHlwZTpcIlVpbnQzMlwiLG5hbWU6XCJmZWF0dXJlSW5kZXhcIn0se3R5cGU6XCJVaW50MTZcIixuYW1lOlwic291cmNlTGF5ZXJJbmRleFwifSx7dHlwZTpcIlVpbnQxNlwiLG5hbWU6XCJidWNrZXRJbmRleFwifV0pO2NvbnN0IHR1PWxzKFt7bmFtZTpcImFfcG9zXCIsY29tcG9uZW50czoyLHR5cGU6XCJJbnQxNlwifSx7bmFtZTpcImFfYW5jaG9yX3Bvc1wiLGNvbXBvbmVudHM6Mix0eXBlOlwiSW50MTZcIn0se25hbWU6XCJhX2V4dHJ1ZGVcIixjb21wb25lbnRzOjIsdHlwZTpcIkludDE2XCJ9XSw0KSxldT1scyhbe25hbWU6XCJhX3Bvc1wiLGNvbXBvbmVudHM6Mix0eXBlOlwiRmxvYXQzMlwifSx7bmFtZTpcImFfcmFkaXVzXCIsY29tcG9uZW50czoxLHR5cGU6XCJGbG9hdDMyXCJ9LHtuYW1lOlwiYV9mbGFnc1wiLGNvbXBvbmVudHM6Mix0eXBlOlwiSW50MTZcIn1dLDQpO2Z1bmN0aW9uIHJ1KHQsZSxyKXtyZXR1cm4gdC5zZWN0aW9ucy5mb3JFYWNoKCh0PT57dC50ZXh0PWZ1bmN0aW9uKHQsZSxyKXtjb25zdCBuPWUubGF5b3V0LmdldChcInRleHQtdHJhbnNmb3JtXCIpLmV2YWx1YXRlKHIse30pO3JldHVybiBcInVwcGVyY2FzZVwiPT09bj90PXQudG9Mb2NhbGVVcHBlckNhc2UoKTpcImxvd2VyY2FzZVwiPT09biYmKHQ9dC50b0xvY2FsZUxvd2VyQ2FzZSgpKSxSaS5hcHBseUFyYWJpY1NoYXBpbmcmJih0PVJpLmFwcGx5QXJhYmljU2hhcGluZyh0KSksdH0odC50ZXh0LGUscik7fSkpLHR9bHMoW3tuYW1lOlwidHJpYW5nbGVcIixjb21wb25lbnRzOjMsdHlwZTpcIlVpbnQxNlwifV0pLGxzKFt7dHlwZTpcIkludDE2XCIsbmFtZTpcImFuY2hvclhcIn0se3R5cGU6XCJJbnQxNlwiLG5hbWU6XCJhbmNob3JZXCJ9LHt0eXBlOlwiVWludDE2XCIsbmFtZTpcImdseXBoU3RhcnRJbmRleFwifSx7dHlwZTpcIlVpbnQxNlwiLG5hbWU6XCJudW1HbHlwaHNcIn0se3R5cGU6XCJVaW50MzJcIixuYW1lOlwidmVydGV4U3RhcnRJbmRleFwifSx7dHlwZTpcIlVpbnQzMlwiLG5hbWU6XCJsaW5lU3RhcnRJbmRleFwifSx7dHlwZTpcIlVpbnQzMlwiLG5hbWU6XCJsaW5lTGVuZ3RoXCJ9LHt0eXBlOlwiVWludDE2XCIsbmFtZTpcInNlZ21lbnRcIn0se3R5cGU6XCJVaW50MTZcIixuYW1lOlwibG93ZXJTaXplXCJ9LHt0eXBlOlwiVWludDE2XCIsbmFtZTpcInVwcGVyU2l6ZVwifSx7dHlwZTpcIkZsb2F0MzJcIixuYW1lOlwibGluZU9mZnNldFhcIn0se3R5cGU6XCJGbG9hdDMyXCIsbmFtZTpcImxpbmVPZmZzZXRZXCJ9LHt0eXBlOlwiVWludDhcIixuYW1lOlwid3JpdGluZ01vZGVcIn0se3R5cGU6XCJVaW50OFwiLG5hbWU6XCJwbGFjZWRPcmllbnRhdGlvblwifSx7dHlwZTpcIlVpbnQ4XCIsbmFtZTpcImhpZGRlblwifSx7dHlwZTpcIlVpbnQzMlwiLG5hbWU6XCJjcm9zc1RpbGVJRFwifSx7dHlwZTpcIkludDE2XCIsbmFtZTpcImFzc29jaWF0ZWRJY29uSW5kZXhcIn1dKSxscyhbe3R5cGU6XCJJbnQxNlwiLG5hbWU6XCJhbmNob3JYXCJ9LHt0eXBlOlwiSW50MTZcIixuYW1lOlwiYW5jaG9yWVwifSx7dHlwZTpcIkludDE2XCIsbmFtZTpcInJpZ2h0SnVzdGlmaWVkVGV4dFN5bWJvbEluZGV4XCJ9LHt0eXBlOlwiSW50MTZcIixuYW1lOlwiY2VudGVySnVzdGlmaWVkVGV4dFN5bWJvbEluZGV4XCJ9LHt0eXBlOlwiSW50MTZcIixuYW1lOlwibGVmdEp1c3RpZmllZFRleHRTeW1ib2xJbmRleFwifSx7dHlwZTpcIkludDE2XCIsbmFtZTpcInZlcnRpY2FsUGxhY2VkVGV4dFN5bWJvbEluZGV4XCJ9LHt0eXBlOlwiSW50MTZcIixuYW1lOlwicGxhY2VkSWNvblN5bWJvbEluZGV4XCJ9LHt0eXBlOlwiSW50MTZcIixuYW1lOlwidmVydGljYWxQbGFjZWRJY29uU3ltYm9sSW5kZXhcIn0se3R5cGU6XCJVaW50MTZcIixuYW1lOlwia2V5XCJ9LHt0eXBlOlwiVWludDE2XCIsbmFtZTpcInRleHRCb3hTdGFydEluZGV4XCJ9LHt0eXBlOlwiVWludDE2XCIsbmFtZTpcInRleHRCb3hFbmRJbmRleFwifSx7dHlwZTpcIlVpbnQxNlwiLG5hbWU6XCJ2ZXJ0aWNhbFRleHRCb3hTdGFydEluZGV4XCJ9LHt0eXBlOlwiVWludDE2XCIsbmFtZTpcInZlcnRpY2FsVGV4dEJveEVuZEluZGV4XCJ9LHt0eXBlOlwiVWludDE2XCIsbmFtZTpcImljb25Cb3hTdGFydEluZGV4XCJ9LHt0eXBlOlwiVWludDE2XCIsbmFtZTpcImljb25Cb3hFbmRJbmRleFwifSx7dHlwZTpcIlVpbnQxNlwiLG5hbWU6XCJ2ZXJ0aWNhbEljb25Cb3hTdGFydEluZGV4XCJ9LHt0eXBlOlwiVWludDE2XCIsbmFtZTpcInZlcnRpY2FsSWNvbkJveEVuZEluZGV4XCJ9LHt0eXBlOlwiVWludDE2XCIsbmFtZTpcImZlYXR1cmVJbmRleFwifSx7dHlwZTpcIlVpbnQxNlwiLG5hbWU6XCJudW1Ib3Jpem9udGFsR2x5cGhWZXJ0aWNlc1wifSx7dHlwZTpcIlVpbnQxNlwiLG5hbWU6XCJudW1WZXJ0aWNhbEdseXBoVmVydGljZXNcIn0se3R5cGU6XCJVaW50MTZcIixuYW1lOlwibnVtSWNvblZlcnRpY2VzXCJ9LHt0eXBlOlwiVWludDE2XCIsbmFtZTpcIm51bVZlcnRpY2FsSWNvblZlcnRpY2VzXCJ9LHt0eXBlOlwiVWludDE2XCIsbmFtZTpcInVzZVJ1bnRpbWVDb2xsaXNpb25DaXJjbGVzXCJ9LHt0eXBlOlwiVWludDMyXCIsbmFtZTpcImNyb3NzVGlsZUlEXCJ9LHt0eXBlOlwiRmxvYXQzMlwiLG5hbWU6XCJ0ZXh0Qm94U2NhbGVcIn0se3R5cGU6XCJGbG9hdDMyXCIsbmFtZTpcImNvbGxpc2lvbkNpcmNsZURpYW1ldGVyXCJ9LHt0eXBlOlwiVWludDE2XCIsbmFtZTpcInRleHRBbmNob3JPZmZzZXRTdGFydEluZGV4XCJ9LHt0eXBlOlwiVWludDE2XCIsbmFtZTpcInRleHRBbmNob3JPZmZzZXRFbmRJbmRleFwifV0pLGxzKFt7dHlwZTpcIkZsb2F0MzJcIixuYW1lOlwib2Zmc2V0WFwifV0pLGxzKFt7dHlwZTpcIkludDE2XCIsbmFtZTpcInhcIn0se3R5cGU6XCJJbnQxNlwiLG5hbWU6XCJ5XCJ9LHt0eXBlOlwiSW50MTZcIixuYW1lOlwidGlsZVVuaXREaXN0YW5jZUZyb21BbmNob3JcIn1dKSxscyhbe3R5cGU6XCJVaW50MTZcIixuYW1lOlwidGV4dEFuY2hvclwifSx7dHlwZTpcIkZsb2F0MzJcIixjb21wb25lbnRzOjIsbmFtZTpcInRleHRPZmZzZXRcIn1dKTtjb25zdCBudT17XCIhXCI6XCLvuJVcIixcIiNcIjpcIu+8g1wiLCQ6XCLvvIRcIixcIiVcIjpcIu+8hVwiLFwiJlwiOlwi77yGXCIsXCIoXCI6XCLvuLVcIixcIilcIjpcIu+4tlwiLFwiKlwiOlwi77yKXCIsXCIrXCI6XCLvvItcIixcIixcIjpcIu+4kFwiLFwiLVwiOlwi77iyXCIsXCIuXCI6XCLjg7tcIixcIi9cIjpcIu+8j1wiLFwiOlwiOlwi77iTXCIsXCI7XCI6XCLvuJRcIixcIjxcIjpcIu+4v1wiLFwiPVwiOlwi77ydXCIsXCI+XCI6XCLvuYBcIixcIj9cIjpcIu+4llwiLFwiQFwiOlwi77ygXCIsXCJbXCI6XCLvuYdcIixcIlxcXFxcIjpcIu+8vFwiLFwiXVwiOlwi77mIXCIsXCJeXCI6XCLvvL5cIixfOlwi77izXCIsXCJgXCI6XCLvvYBcIixcIntcIjpcIu+4t1wiLFwifFwiOlwi4oCVXCIsXCJ9XCI6XCLvuLhcIixcIn5cIjpcIu+9nlwiLFwiwqJcIjpcIu+/oFwiLFwiwqNcIjpcIu+/oVwiLFwiwqVcIjpcIu+/pVwiLFwiwqZcIjpcIu+/pFwiLFwiwqxcIjpcIu+/olwiLFwiwq9cIjpcIu+/o1wiLFwi4oCTXCI6XCLvuLJcIixcIuKAlFwiOlwi77ixXCIsXCLigJhcIjpcIu+5g1wiLFwi4oCZXCI6XCLvuYRcIixcIuKAnFwiOlwi77mBXCIsXCLigJ1cIjpcIu+5glwiLFwi4oCmXCI6XCLvuJlcIixcIuKAp1wiOlwi44O7XCIsXCLigqlcIjpcIu+/plwiLFwi44CBXCI6XCLvuJFcIixcIuOAglwiOlwi77iSXCIsXCLjgIhcIjpcIu+4v1wiLFwi44CJXCI6XCLvuYBcIixcIuOAilwiOlwi77i9XCIsXCLjgItcIjpcIu+4vlwiLFwi44CMXCI6XCLvuYFcIixcIuOAjVwiOlwi77mCXCIsXCLjgI5cIjpcIu+5g1wiLFwi44CPXCI6XCLvuYRcIixcIuOAkFwiOlwi77i7XCIsXCLjgJFcIjpcIu+4vFwiLFwi44CUXCI6XCLvuLlcIixcIuOAlVwiOlwi77i6XCIsXCLjgJZcIjpcIu+4l1wiLFwi44CXXCI6XCLvuJhcIixcIu+8gVwiOlwi77iVXCIsXCLvvIhcIjpcIu+4tVwiLFwi77yJXCI6XCLvuLZcIixcIu+8jFwiOlwi77iQXCIsXCLvvI1cIjpcIu+4slwiLFwi77yOXCI6XCLjg7tcIixcIu+8mlwiOlwi77iTXCIsXCLvvJtcIjpcIu+4lFwiLFwi77ycXCI6XCLvuL9cIixcIu+8nlwiOlwi77mAXCIsXCLvvJ9cIjpcIu+4llwiLFwi77y7XCI6XCLvuYdcIixcIu+8vVwiOlwi77mIXCIsXCLvvL9cIjpcIu+4s1wiLFwi772bXCI6XCLvuLdcIixcIu+9nFwiOlwi4oCVXCIsXCLvvZ1cIjpcIu+4uFwiLFwi772fXCI6XCLvuLVcIixcIu+9oFwiOlwi77i2XCIsXCLvvaFcIjpcIu+4klwiLFwi772iXCI6XCLvuYFcIixcIu+9o1wiOlwi77mCXCJ9O3ZhciBpdT0yNCxzdT1sdSxhdT1mdW5jdGlvbih0LGUscixuLGkpe3ZhciBzLGEsbz04Kmktbi0xLGw9KDE8PG8pLTEsdT1sPj4xLGM9LTcsaD1yP2ktMTowLHA9cj8tMToxLGY9dFtlK2hdO2ZvcihoKz1wLHM9ZiYoMTw8LWMpLTEsZj4+PS1jLGMrPW87Yz4wO3M9MjU2KnMrdFtlK2hdLGgrPXAsYy09OCk7Zm9yKGE9cyYoMTw8LWMpLTEscz4+PS1jLGMrPW47Yz4wO2E9MjU2KmErdFtlK2hdLGgrPXAsYy09OCk7aWYoMD09PXMpcz0xLXU7ZWxzZSB7aWYocz09PWwpcmV0dXJuIGE/TmFOOjEvMCooZj8tMToxKTthKz1NYXRoLnBvdygyLG4pLHMtPXU7fXJldHVybiAoZj8tMToxKSphKk1hdGgucG93KDIscy1uKX0sb3U9ZnVuY3Rpb24odCxlLHIsbixpLHMpe3ZhciBhLG8sbCx1PTgqcy1pLTEsYz0oMTw8dSktMSxoPWM+PjEscD0yMz09PWk/TWF0aC5wb3coMiwtMjQpLU1hdGgucG93KDIsLTc3KTowLGY9bj8wOnMtMSxkPW4/MTotMSx5PWU8MHx8MD09PWUmJjEvZTwwPzE6MDtmb3IoZT1NYXRoLmFicyhlKSxpc05hTihlKXx8ZT09PTEvMD8obz1pc05hTihlKT8xOjAsYT1jKTooYT1NYXRoLmZsb29yKE1hdGgubG9nKGUpL01hdGguTE4yKSxlKihsPU1hdGgucG93KDIsLWEpKTwxJiYoYS0tLGwqPTIpLChlKz1hK2g+PTE/cC9sOnAqTWF0aC5wb3coMiwxLWgpKSpsPj0yJiYoYSsrLGwvPTIpLGEraD49Yz8obz0wLGE9Yyk6YStoPj0xPyhvPShlKmwtMSkqTWF0aC5wb3coMixpKSxhKz1oKToobz1lKk1hdGgucG93KDIsaC0xKSpNYXRoLnBvdygyLGkpLGE9MCkpO2k+PTg7dFtyK2ZdPTI1NSZvLGYrPWQsby89MjU2LGktPTgpO2ZvcihhPWE8PGl8byx1Kz1pO3U+MDt0W3IrZl09MjU1JmEsZis9ZCxhLz0yNTYsdS09OCk7dFtyK2YtZF18PTEyOCp5O307ZnVuY3Rpb24gbHUodCl7dGhpcy5idWY9QXJyYXlCdWZmZXIuaXNWaWV3JiZBcnJheUJ1ZmZlci5pc1ZpZXcodCk/dDpuZXcgVWludDhBcnJheSh0fHwwKSx0aGlzLnBvcz0wLHRoaXMudHlwZT0wLHRoaXMubGVuZ3RoPXRoaXMuYnVmLmxlbmd0aDt9bHUuVmFyaW50PTAsbHUuRml4ZWQ2ND0xLGx1LkJ5dGVzPTIsbHUuRml4ZWQzMj01O3ZhciB1dT00Mjk0OTY3Mjk2LGN1PTEvdXUsaHU9XCJ1bmRlZmluZWRcIj09dHlwZW9mIFRleHREZWNvZGVyP251bGw6bmV3IFRleHREZWNvZGVyKFwidXRmLThcIik7ZnVuY3Rpb24gcHUodCl7cmV0dXJuIHQudHlwZT09PWx1LkJ5dGVzP3QucmVhZFZhcmludCgpK3QucG9zOnQucG9zKzF9ZnVuY3Rpb24gZnUodCxlLHIpe3JldHVybiByPzQyOTQ5NjcyOTYqZSsodD4+PjApOjQyOTQ5NjcyOTYqKGU+Pj4wKSsodD4+PjApfWZ1bmN0aW9uIGR1KHQsZSxyKXt2YXIgbj1lPD0xNjM4Mz8xOmU8PTIwOTcxNTE/MjplPD0yNjg0MzU0NTU/MzpNYXRoLmZsb29yKE1hdGgubG9nKGUpLyg3Kk1hdGguTE4yKSk7ci5yZWFsbG9jKG4pO2Zvcih2YXIgaT1yLnBvcy0xO2k+PXQ7aS0tKXIuYnVmW2krbl09ci5idWZbaV07fWZ1bmN0aW9uIHl1KHQsZSl7Zm9yKHZhciByPTA7cjx0Lmxlbmd0aDtyKyspZS53cml0ZVZhcmludCh0W3JdKTt9ZnVuY3Rpb24gbXUodCxlKXtmb3IodmFyIHI9MDtyPHQubGVuZ3RoO3IrKyllLndyaXRlU1ZhcmludCh0W3JdKTt9ZnVuY3Rpb24gZ3UodCxlKXtmb3IodmFyIHI9MDtyPHQubGVuZ3RoO3IrKyllLndyaXRlRmxvYXQodFtyXSk7fWZ1bmN0aW9uIHh1KHQsZSl7Zm9yKHZhciByPTA7cjx0Lmxlbmd0aDtyKyspZS53cml0ZURvdWJsZSh0W3JdKTt9ZnVuY3Rpb24gdnUodCxlKXtmb3IodmFyIHI9MDtyPHQubGVuZ3RoO3IrKyllLndyaXRlQm9vbGVhbih0W3JdKTt9ZnVuY3Rpb24gYnUodCxlKXtmb3IodmFyIHI9MDtyPHQubGVuZ3RoO3IrKyllLndyaXRlRml4ZWQzMih0W3JdKTt9ZnVuY3Rpb24gd3UodCxlKXtmb3IodmFyIHI9MDtyPHQubGVuZ3RoO3IrKyllLndyaXRlU0ZpeGVkMzIodFtyXSk7fWZ1bmN0aW9uIF91KHQsZSl7Zm9yKHZhciByPTA7cjx0Lmxlbmd0aDtyKyspZS53cml0ZUZpeGVkNjQodFtyXSk7fWZ1bmN0aW9uIEF1KHQsZSl7Zm9yKHZhciByPTA7cjx0Lmxlbmd0aDtyKyspZS53cml0ZVNGaXhlZDY0KHRbcl0pO31mdW5jdGlvbiBTdSh0LGUpe3JldHVybiAodFtlXXx0W2UrMV08PDh8dFtlKzJdPDwxNikrMTY3NzcyMTYqdFtlKzNdfWZ1bmN0aW9uIGt1KHQsZSxyKXt0W3JdPWUsdFtyKzFdPWU+Pj44LHRbcisyXT1lPj4+MTYsdFtyKzNdPWU+Pj4yNDt9ZnVuY3Rpb24gTXUodCxlKXtyZXR1cm4gKHRbZV18dFtlKzFdPDw4fHRbZSsyXTw8MTYpKyh0W2UrM108PDI0KX1sdS5wcm90b3R5cGU9e2Rlc3Ryb3k6ZnVuY3Rpb24oKXt0aGlzLmJ1Zj1udWxsO30scmVhZEZpZWxkczpmdW5jdGlvbih0LGUscil7Zm9yKHI9cnx8dGhpcy5sZW5ndGg7dGhpcy5wb3M8cjspe3ZhciBuPXRoaXMucmVhZFZhcmludCgpLGk9bj4+MyxzPXRoaXMucG9zO3RoaXMudHlwZT03Jm4sdChpLGUsdGhpcyksdGhpcy5wb3M9PT1zJiZ0aGlzLnNraXAobik7fXJldHVybiBlfSxyZWFkTWVzc2FnZTpmdW5jdGlvbih0LGUpe3JldHVybiB0aGlzLnJlYWRGaWVsZHModCxlLHRoaXMucmVhZFZhcmludCgpK3RoaXMucG9zKX0scmVhZEZpeGVkMzI6ZnVuY3Rpb24oKXt2YXIgdD1TdSh0aGlzLmJ1Zix0aGlzLnBvcyk7cmV0dXJuIHRoaXMucG9zKz00LHR9LHJlYWRTRml4ZWQzMjpmdW5jdGlvbigpe3ZhciB0PU11KHRoaXMuYnVmLHRoaXMucG9zKTtyZXR1cm4gdGhpcy5wb3MrPTQsdH0scmVhZEZpeGVkNjQ6ZnVuY3Rpb24oKXt2YXIgdD1TdSh0aGlzLmJ1Zix0aGlzLnBvcykrU3UodGhpcy5idWYsdGhpcy5wb3MrNCkqdXU7cmV0dXJuIHRoaXMucG9zKz04LHR9LHJlYWRTRml4ZWQ2NDpmdW5jdGlvbigpe3ZhciB0PVN1KHRoaXMuYnVmLHRoaXMucG9zKStNdSh0aGlzLmJ1Zix0aGlzLnBvcys0KSp1dTtyZXR1cm4gdGhpcy5wb3MrPTgsdH0scmVhZEZsb2F0OmZ1bmN0aW9uKCl7dmFyIHQ9YXUodGhpcy5idWYsdGhpcy5wb3MsITAsMjMsNCk7cmV0dXJuIHRoaXMucG9zKz00LHR9LHJlYWREb3VibGU6ZnVuY3Rpb24oKXt2YXIgdD1hdSh0aGlzLmJ1Zix0aGlzLnBvcywhMCw1Miw4KTtyZXR1cm4gdGhpcy5wb3MrPTgsdH0scmVhZFZhcmludDpmdW5jdGlvbih0KXt2YXIgZSxyLG49dGhpcy5idWY7cmV0dXJuIGU9MTI3JihyPW5bdGhpcy5wb3MrK10pLHI8MTI4P2U6KGV8PSgxMjcmKHI9blt0aGlzLnBvcysrXSkpPDw3LHI8MTI4P2U6KGV8PSgxMjcmKHI9blt0aGlzLnBvcysrXSkpPDwxNCxyPDEyOD9lOihlfD0oMTI3JihyPW5bdGhpcy5wb3MrK10pKTw8MjEscjwxMjg/ZTpmdW5jdGlvbih0LGUscil7dmFyIG4saSxzPXIuYnVmO2lmKG49KDExMiYoaT1zW3IucG9zKytdKSk+PjQsaTwxMjgpcmV0dXJuIGZ1KHQsbixlKTtpZihufD0oMTI3JihpPXNbci5wb3MrK10pKTw8MyxpPDEyOClyZXR1cm4gZnUodCxuLGUpO2lmKG58PSgxMjcmKGk9c1tyLnBvcysrXSkpPDwxMCxpPDEyOClyZXR1cm4gZnUodCxuLGUpO2lmKG58PSgxMjcmKGk9c1tyLnBvcysrXSkpPDwxNyxpPDEyOClyZXR1cm4gZnUodCxuLGUpO2lmKG58PSgxMjcmKGk9c1tyLnBvcysrXSkpPDwyNCxpPDEyOClyZXR1cm4gZnUodCxuLGUpO2lmKG58PSgxJihpPXNbci5wb3MrK10pKTw8MzEsaTwxMjgpcmV0dXJuIGZ1KHQsbixlKTt0aHJvdyBuZXcgRXJyb3IoXCJFeHBlY3RlZCB2YXJpbnQgbm90IG1vcmUgdGhhbiAxMCBieXRlc1wiKX0oZXw9KDE1JihyPW5bdGhpcy5wb3NdKSk8PDI4LHQsdGhpcykpKSl9LHJlYWRWYXJpbnQ2NDpmdW5jdGlvbigpe3JldHVybiB0aGlzLnJlYWRWYXJpbnQoITApfSxyZWFkU1ZhcmludDpmdW5jdGlvbigpe3ZhciB0PXRoaXMucmVhZFZhcmludCgpO3JldHVybiB0JTI9PTE/KHQrMSkvLTI6dC8yfSxyZWFkQm9vbGVhbjpmdW5jdGlvbigpe3JldHVybiBCb29sZWFuKHRoaXMucmVhZFZhcmludCgpKX0scmVhZFN0cmluZzpmdW5jdGlvbigpe3ZhciB0PXRoaXMucmVhZFZhcmludCgpK3RoaXMucG9zLGU9dGhpcy5wb3M7cmV0dXJuIHRoaXMucG9zPXQsdC1lPj0xMiYmaHU/ZnVuY3Rpb24odCxlLHIpe3JldHVybiBodS5kZWNvZGUodC5zdWJhcnJheShlLHIpKX0odGhpcy5idWYsZSx0KTpmdW5jdGlvbih0LGUscil7Zm9yKHZhciBuPVwiXCIsaT1lO2k8cjspe3ZhciBzLGEsbyxsPXRbaV0sdT1udWxsLGM9bD4yMzk/NDpsPjIyMz8zOmw+MTkxPzI6MTtpZihpK2M+cilicmVhazsxPT09Yz9sPDEyOCYmKHU9bCk6Mj09PWM/MTI4PT0oMTkyJihzPXRbaSsxXSkpJiYodT0oMzEmbCk8PDZ8NjMmcyk8PTEyNyYmKHU9bnVsbCk6Mz09PWM/KGE9dFtpKzJdLDEyOD09KDE5MiYocz10W2krMV0pKSYmMTI4PT0oMTkyJmEpJiYoKHU9KDE1JmwpPDwxMnwoNjMmcyk8PDZ8NjMmYSk8PTIwNDd8fHU+PTU1Mjk2JiZ1PD01NzM0MykmJih1PW51bGwpKTo0PT09YyYmKGE9dFtpKzJdLG89dFtpKzNdLDEyOD09KDE5MiYocz10W2krMV0pKSYmMTI4PT0oMTkyJmEpJiYxMjg9PSgxOTImbykmJigodT0oMTUmbCk8PDE4fCg2MyZzKTw8MTJ8KDYzJmEpPDw2fDYzJm8pPD02NTUzNXx8dT49MTExNDExMikmJih1PW51bGwpKSxudWxsPT09dT8odT02NTUzMyxjPTEpOnU+NjU1MzUmJih1LT02NTUzNixuKz1TdHJpbmcuZnJvbUNoYXJDb2RlKHU+Pj4xMCYxMDIzfDU1Mjk2KSx1PTU2MzIwfDEwMjMmdSksbis9U3RyaW5nLmZyb21DaGFyQ29kZSh1KSxpKz1jO31yZXR1cm4gbn0odGhpcy5idWYsZSx0KX0scmVhZEJ5dGVzOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5yZWFkVmFyaW50KCkrdGhpcy5wb3MsZT10aGlzLmJ1Zi5zdWJhcnJheSh0aGlzLnBvcyx0KTtyZXR1cm4gdGhpcy5wb3M9dCxlfSxyZWFkUGFja2VkVmFyaW50OmZ1bmN0aW9uKHQsZSl7aWYodGhpcy50eXBlIT09bHUuQnl0ZXMpcmV0dXJuIHQucHVzaCh0aGlzLnJlYWRWYXJpbnQoZSkpO3ZhciByPXB1KHRoaXMpO2Zvcih0PXR8fFtdO3RoaXMucG9zPHI7KXQucHVzaCh0aGlzLnJlYWRWYXJpbnQoZSkpO3JldHVybiB0fSxyZWFkUGFja2VkU1ZhcmludDpmdW5jdGlvbih0KXtpZih0aGlzLnR5cGUhPT1sdS5CeXRlcylyZXR1cm4gdC5wdXNoKHRoaXMucmVhZFNWYXJpbnQoKSk7dmFyIGU9cHUodGhpcyk7Zm9yKHQ9dHx8W107dGhpcy5wb3M8ZTspdC5wdXNoKHRoaXMucmVhZFNWYXJpbnQoKSk7cmV0dXJuIHR9LHJlYWRQYWNrZWRCb29sZWFuOmZ1bmN0aW9uKHQpe2lmKHRoaXMudHlwZSE9PWx1LkJ5dGVzKXJldHVybiB0LnB1c2godGhpcy5yZWFkQm9vbGVhbigpKTt2YXIgZT1wdSh0aGlzKTtmb3IodD10fHxbXTt0aGlzLnBvczxlOyl0LnB1c2godGhpcy5yZWFkQm9vbGVhbigpKTtyZXR1cm4gdH0scmVhZFBhY2tlZEZsb2F0OmZ1bmN0aW9uKHQpe2lmKHRoaXMudHlwZSE9PWx1LkJ5dGVzKXJldHVybiB0LnB1c2godGhpcy5yZWFkRmxvYXQoKSk7dmFyIGU9cHUodGhpcyk7Zm9yKHQ9dHx8W107dGhpcy5wb3M8ZTspdC5wdXNoKHRoaXMucmVhZEZsb2F0KCkpO3JldHVybiB0fSxyZWFkUGFja2VkRG91YmxlOmZ1bmN0aW9uKHQpe2lmKHRoaXMudHlwZSE9PWx1LkJ5dGVzKXJldHVybiB0LnB1c2godGhpcy5yZWFkRG91YmxlKCkpO3ZhciBlPXB1KHRoaXMpO2Zvcih0PXR8fFtdO3RoaXMucG9zPGU7KXQucHVzaCh0aGlzLnJlYWREb3VibGUoKSk7cmV0dXJuIHR9LHJlYWRQYWNrZWRGaXhlZDMyOmZ1bmN0aW9uKHQpe2lmKHRoaXMudHlwZSE9PWx1LkJ5dGVzKXJldHVybiB0LnB1c2godGhpcy5yZWFkRml4ZWQzMigpKTt2YXIgZT1wdSh0aGlzKTtmb3IodD10fHxbXTt0aGlzLnBvczxlOyl0LnB1c2godGhpcy5yZWFkRml4ZWQzMigpKTtyZXR1cm4gdH0scmVhZFBhY2tlZFNGaXhlZDMyOmZ1bmN0aW9uKHQpe2lmKHRoaXMudHlwZSE9PWx1LkJ5dGVzKXJldHVybiB0LnB1c2godGhpcy5yZWFkU0ZpeGVkMzIoKSk7dmFyIGU9cHUodGhpcyk7Zm9yKHQ9dHx8W107dGhpcy5wb3M8ZTspdC5wdXNoKHRoaXMucmVhZFNGaXhlZDMyKCkpO3JldHVybiB0fSxyZWFkUGFja2VkRml4ZWQ2NDpmdW5jdGlvbih0KXtpZih0aGlzLnR5cGUhPT1sdS5CeXRlcylyZXR1cm4gdC5wdXNoKHRoaXMucmVhZEZpeGVkNjQoKSk7dmFyIGU9cHUodGhpcyk7Zm9yKHQ9dHx8W107dGhpcy5wb3M8ZTspdC5wdXNoKHRoaXMucmVhZEZpeGVkNjQoKSk7cmV0dXJuIHR9LHJlYWRQYWNrZWRTRml4ZWQ2NDpmdW5jdGlvbih0KXtpZih0aGlzLnR5cGUhPT1sdS5CeXRlcylyZXR1cm4gdC5wdXNoKHRoaXMucmVhZFNGaXhlZDY0KCkpO3ZhciBlPXB1KHRoaXMpO2Zvcih0PXR8fFtdO3RoaXMucG9zPGU7KXQucHVzaCh0aGlzLnJlYWRTRml4ZWQ2NCgpKTtyZXR1cm4gdH0sc2tpcDpmdW5jdGlvbih0KXt2YXIgZT03JnQ7aWYoZT09PWx1LlZhcmludClmb3IoO3RoaXMuYnVmW3RoaXMucG9zKytdPjEyNzspO2Vsc2UgaWYoZT09PWx1LkJ5dGVzKXRoaXMucG9zPXRoaXMucmVhZFZhcmludCgpK3RoaXMucG9zO2Vsc2UgaWYoZT09PWx1LkZpeGVkMzIpdGhpcy5wb3MrPTQ7ZWxzZSB7aWYoZSE9PWx1LkZpeGVkNjQpdGhyb3cgbmV3IEVycm9yKFwiVW5pbXBsZW1lbnRlZCB0eXBlOiBcIitlKTt0aGlzLnBvcys9ODt9fSx3cml0ZVRhZzpmdW5jdGlvbih0LGUpe3RoaXMud3JpdGVWYXJpbnQodDw8M3xlKTt9LHJlYWxsb2M6ZnVuY3Rpb24odCl7Zm9yKHZhciBlPXRoaXMubGVuZ3RofHwxNjtlPHRoaXMucG9zK3Q7KWUqPTI7aWYoZSE9PXRoaXMubGVuZ3RoKXt2YXIgcj1uZXcgVWludDhBcnJheShlKTtyLnNldCh0aGlzLmJ1ZiksdGhpcy5idWY9cix0aGlzLmxlbmd0aD1lO319LGZpbmlzaDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmxlbmd0aD10aGlzLnBvcyx0aGlzLnBvcz0wLHRoaXMuYnVmLnN1YmFycmF5KDAsdGhpcy5sZW5ndGgpfSx3cml0ZUZpeGVkMzI6ZnVuY3Rpb24odCl7dGhpcy5yZWFsbG9jKDQpLGt1KHRoaXMuYnVmLHQsdGhpcy5wb3MpLHRoaXMucG9zKz00O30sd3JpdGVTRml4ZWQzMjpmdW5jdGlvbih0KXt0aGlzLnJlYWxsb2MoNCksa3UodGhpcy5idWYsdCx0aGlzLnBvcyksdGhpcy5wb3MrPTQ7fSx3cml0ZUZpeGVkNjQ6ZnVuY3Rpb24odCl7dGhpcy5yZWFsbG9jKDgpLGt1KHRoaXMuYnVmLC0xJnQsdGhpcy5wb3MpLGt1KHRoaXMuYnVmLE1hdGguZmxvb3IodCpjdSksdGhpcy5wb3MrNCksdGhpcy5wb3MrPTg7fSx3cml0ZVNGaXhlZDY0OmZ1bmN0aW9uKHQpe3RoaXMucmVhbGxvYyg4KSxrdSh0aGlzLmJ1ZiwtMSZ0LHRoaXMucG9zKSxrdSh0aGlzLmJ1ZixNYXRoLmZsb29yKHQqY3UpLHRoaXMucG9zKzQpLHRoaXMucG9zKz04O30sd3JpdGVWYXJpbnQ6ZnVuY3Rpb24odCl7KHQ9K3R8fDApPjI2ODQzNTQ1NXx8dDwwP2Z1bmN0aW9uKHQsZSl7dmFyIHIsbjtpZih0Pj0wPyhyPXQlNDI5NDk2NzI5NnwwLG49dC80Mjk0OTY3Mjk2fDApOihuPX4oLXQvNDI5NDk2NzI5NiksNDI5NDk2NzI5NV4ocj1+KC10JTQyOTQ5NjcyOTYpKT9yPXIrMXwwOihyPTAsbj1uKzF8MCkpLHQ+PTB4MTAwMDAwMDAwMDAwMDAwMDB8fHQ8LTB4MTAwMDAwMDAwMDAwMDAwMDApdGhyb3cgbmV3IEVycm9yKFwiR2l2ZW4gdmFyaW50IGRvZXNuJ3QgZml0IGludG8gMTAgYnl0ZXNcIik7ZS5yZWFsbG9jKDEwKSxmdW5jdGlvbih0LGUscil7ci5idWZbci5wb3MrK109MTI3JnR8MTI4LHQ+Pj49NyxyLmJ1ZltyLnBvcysrXT0xMjcmdHwxMjgsdD4+Pj03LHIuYnVmW3IucG9zKytdPTEyNyZ0fDEyOCx0Pj4+PTcsci5idWZbci5wb3MrK109MTI3JnR8MTI4LHIuYnVmW3IucG9zXT0xMjcmKHQ+Pj49Nyk7fShyLDAsZSksZnVuY3Rpb24odCxlKXt2YXIgcj0oNyZ0KTw8NDtlLmJ1ZltlLnBvcysrXXw9cnwoKHQ+Pj49Myk/MTI4OjApLHQmJihlLmJ1ZltlLnBvcysrXT0xMjcmdHwoKHQ+Pj49Nyk/MTI4OjApLHQmJihlLmJ1ZltlLnBvcysrXT0xMjcmdHwoKHQ+Pj49Nyk/MTI4OjApLHQmJihlLmJ1ZltlLnBvcysrXT0xMjcmdHwoKHQ+Pj49Nyk/MTI4OjApLHQmJihlLmJ1ZltlLnBvcysrXT0xMjcmdHwoKHQ+Pj49Nyk/MTI4OjApLHQmJihlLmJ1ZltlLnBvcysrXT0xMjcmdCkpKSkpO30obixlKTt9KHQsdGhpcyk6KHRoaXMucmVhbGxvYyg0KSx0aGlzLmJ1Zlt0aGlzLnBvcysrXT0xMjcmdHwodD4xMjc/MTI4OjApLHQ8PTEyN3x8KHRoaXMuYnVmW3RoaXMucG9zKytdPTEyNyYodD4+Pj03KXwodD4xMjc/MTI4OjApLHQ8PTEyN3x8KHRoaXMuYnVmW3RoaXMucG9zKytdPTEyNyYodD4+Pj03KXwodD4xMjc/MTI4OjApLHQ8PTEyN3x8KHRoaXMuYnVmW3RoaXMucG9zKytdPXQ+Pj43JjEyNykpKSk7fSx3cml0ZVNWYXJpbnQ6ZnVuY3Rpb24odCl7dGhpcy53cml0ZVZhcmludCh0PDA/MiotdC0xOjIqdCk7fSx3cml0ZUJvb2xlYW46ZnVuY3Rpb24odCl7dGhpcy53cml0ZVZhcmludChCb29sZWFuKHQpKTt9LHdyaXRlU3RyaW5nOmZ1bmN0aW9uKHQpe3Q9U3RyaW5nKHQpLHRoaXMucmVhbGxvYyg0KnQubGVuZ3RoKSx0aGlzLnBvcysrO3ZhciBlPXRoaXMucG9zO3RoaXMucG9zPWZ1bmN0aW9uKHQsZSxyKXtmb3IodmFyIG4saSxzPTA7czxlLmxlbmd0aDtzKyspe2lmKChuPWUuY2hhckNvZGVBdChzKSk+NTUyOTUmJm48NTczNDQpe2lmKCFpKXtuPjU2MzE5fHxzKzE9PT1lLmxlbmd0aD8odFtyKytdPTIzOSx0W3IrK109MTkxLHRbcisrXT0xODkpOmk9bjtjb250aW51ZX1pZihuPDU2MzIwKXt0W3IrK109MjM5LHRbcisrXT0xOTEsdFtyKytdPTE4OSxpPW47Y29udGludWV9bj1pLTU1Mjk2PDwxMHxuLTU2MzIwfDY1NTM2LGk9bnVsbDt9ZWxzZSBpJiYodFtyKytdPTIzOSx0W3IrK109MTkxLHRbcisrXT0xODksaT1udWxsKTtuPDEyOD90W3IrK109bjoobjwyMDQ4P3RbcisrXT1uPj42fDE5Mjoobjw2NTUzNj90W3IrK109bj4+MTJ8MjI0Oih0W3IrK109bj4+MTh8MjQwLHRbcisrXT1uPj4xMiY2M3wxMjgpLHRbcisrXT1uPj42JjYzfDEyOCksdFtyKytdPTYzJm58MTI4KTt9cmV0dXJuIHJ9KHRoaXMuYnVmLHQsdGhpcy5wb3MpO3ZhciByPXRoaXMucG9zLWU7cj49MTI4JiZkdShlLHIsdGhpcyksdGhpcy5wb3M9ZS0xLHRoaXMud3JpdGVWYXJpbnQociksdGhpcy5wb3MrPXI7fSx3cml0ZUZsb2F0OmZ1bmN0aW9uKHQpe3RoaXMucmVhbGxvYyg0KSxvdSh0aGlzLmJ1Zix0LHRoaXMucG9zLCEwLDIzLDQpLHRoaXMucG9zKz00O30sd3JpdGVEb3VibGU6ZnVuY3Rpb24odCl7dGhpcy5yZWFsbG9jKDgpLG91KHRoaXMuYnVmLHQsdGhpcy5wb3MsITAsNTIsOCksdGhpcy5wb3MrPTg7fSx3cml0ZUJ5dGVzOmZ1bmN0aW9uKHQpe3ZhciBlPXQubGVuZ3RoO3RoaXMud3JpdGVWYXJpbnQoZSksdGhpcy5yZWFsbG9jKGUpO2Zvcih2YXIgcj0wO3I8ZTtyKyspdGhpcy5idWZbdGhpcy5wb3MrK109dFtyXTt9LHdyaXRlUmF3TWVzc2FnZTpmdW5jdGlvbih0LGUpe3RoaXMucG9zKys7dmFyIHI9dGhpcy5wb3M7dChlLHRoaXMpO3ZhciBuPXRoaXMucG9zLXI7bj49MTI4JiZkdShyLG4sdGhpcyksdGhpcy5wb3M9ci0xLHRoaXMud3JpdGVWYXJpbnQobiksdGhpcy5wb3MrPW47fSx3cml0ZU1lc3NhZ2U6ZnVuY3Rpb24odCxlLHIpe3RoaXMud3JpdGVUYWcodCxsdS5CeXRlcyksdGhpcy53cml0ZVJhd01lc3NhZ2UoZSxyKTt9LHdyaXRlUGFja2VkVmFyaW50OmZ1bmN0aW9uKHQsZSl7ZS5sZW5ndGgmJnRoaXMud3JpdGVNZXNzYWdlKHQseXUsZSk7fSx3cml0ZVBhY2tlZFNWYXJpbnQ6ZnVuY3Rpb24odCxlKXtlLmxlbmd0aCYmdGhpcy53cml0ZU1lc3NhZ2UodCxtdSxlKTt9LHdyaXRlUGFja2VkQm9vbGVhbjpmdW5jdGlvbih0LGUpe2UubGVuZ3RoJiZ0aGlzLndyaXRlTWVzc2FnZSh0LHZ1LGUpO30sd3JpdGVQYWNrZWRGbG9hdDpmdW5jdGlvbih0LGUpe2UubGVuZ3RoJiZ0aGlzLndyaXRlTWVzc2FnZSh0LGd1LGUpO30sd3JpdGVQYWNrZWREb3VibGU6ZnVuY3Rpb24odCxlKXtlLmxlbmd0aCYmdGhpcy53cml0ZU1lc3NhZ2UodCx4dSxlKTt9LHdyaXRlUGFja2VkRml4ZWQzMjpmdW5jdGlvbih0LGUpe2UubGVuZ3RoJiZ0aGlzLndyaXRlTWVzc2FnZSh0LGJ1LGUpO30sd3JpdGVQYWNrZWRTRml4ZWQzMjpmdW5jdGlvbih0LGUpe2UubGVuZ3RoJiZ0aGlzLndyaXRlTWVzc2FnZSh0LHd1LGUpO30sd3JpdGVQYWNrZWRGaXhlZDY0OmZ1bmN0aW9uKHQsZSl7ZS5sZW5ndGgmJnRoaXMud3JpdGVNZXNzYWdlKHQsX3UsZSk7fSx3cml0ZVBhY2tlZFNGaXhlZDY0OmZ1bmN0aW9uKHQsZSl7ZS5sZW5ndGgmJnRoaXMud3JpdGVNZXNzYWdlKHQsQXUsZSk7fSx3cml0ZUJ5dGVzRmllbGQ6ZnVuY3Rpb24odCxlKXt0aGlzLndyaXRlVGFnKHQsbHUuQnl0ZXMpLHRoaXMud3JpdGVCeXRlcyhlKTt9LHdyaXRlRml4ZWQzMkZpZWxkOmZ1bmN0aW9uKHQsZSl7dGhpcy53cml0ZVRhZyh0LGx1LkZpeGVkMzIpLHRoaXMud3JpdGVGaXhlZDMyKGUpO30sd3JpdGVTRml4ZWQzMkZpZWxkOmZ1bmN0aW9uKHQsZSl7dGhpcy53cml0ZVRhZyh0LGx1LkZpeGVkMzIpLHRoaXMud3JpdGVTRml4ZWQzMihlKTt9LHdyaXRlRml4ZWQ2NEZpZWxkOmZ1bmN0aW9uKHQsZSl7dGhpcy53cml0ZVRhZyh0LGx1LkZpeGVkNjQpLHRoaXMud3JpdGVGaXhlZDY0KGUpO30sd3JpdGVTRml4ZWQ2NEZpZWxkOmZ1bmN0aW9uKHQsZSl7dGhpcy53cml0ZVRhZyh0LGx1LkZpeGVkNjQpLHRoaXMud3JpdGVTRml4ZWQ2NChlKTt9LHdyaXRlVmFyaW50RmllbGQ6ZnVuY3Rpb24odCxlKXt0aGlzLndyaXRlVGFnKHQsbHUuVmFyaW50KSx0aGlzLndyaXRlVmFyaW50KGUpO30sd3JpdGVTVmFyaW50RmllbGQ6ZnVuY3Rpb24odCxlKXt0aGlzLndyaXRlVGFnKHQsbHUuVmFyaW50KSx0aGlzLndyaXRlU1ZhcmludChlKTt9LHdyaXRlU3RyaW5nRmllbGQ6ZnVuY3Rpb24odCxlKXt0aGlzLndyaXRlVGFnKHQsbHUuQnl0ZXMpLHRoaXMud3JpdGVTdHJpbmcoZSk7fSx3cml0ZUZsb2F0RmllbGQ6ZnVuY3Rpb24odCxlKXt0aGlzLndyaXRlVGFnKHQsbHUuRml4ZWQzMiksdGhpcy53cml0ZUZsb2F0KGUpO30sd3JpdGVEb3VibGVGaWVsZDpmdW5jdGlvbih0LGUpe3RoaXMud3JpdGVUYWcodCxsdS5GaXhlZDY0KSx0aGlzLndyaXRlRG91YmxlKGUpO30sd3JpdGVCb29sZWFuRmllbGQ6ZnVuY3Rpb24odCxlKXt0aGlzLndyaXRlVmFyaW50RmllbGQodCxCb29sZWFuKGUpKTt9fTt2YXIgSXU9cihzdSk7Y29uc3QgenU9MztmdW5jdGlvbiBQdSh0LGUscil7MT09PXQmJnIucmVhZE1lc3NhZ2UoQ3UsZSk7fWZ1bmN0aW9uIEN1KHQsZSxyKXtpZigzPT09dCl7Y29uc3R7aWQ6dCxiaXRtYXA6bix3aWR0aDppLGhlaWdodDpzLGxlZnQ6YSx0b3A6byxhZHZhbmNlOmx9PXIucmVhZE1lc3NhZ2UoQnUse30pO2UucHVzaCh7aWQ6dCxiaXRtYXA6bmV3IF9vKHt3aWR0aDppKzIqenUsaGVpZ2h0OnMrMip6dX0sbiksbWV0cmljczp7d2lkdGg6aSxoZWlnaHQ6cyxsZWZ0OmEsdG9wOm8sYWR2YW5jZTpsfX0pO319ZnVuY3Rpb24gQnUodCxlLHIpezE9PT10P2UuaWQ9ci5yZWFkVmFyaW50KCk6Mj09PXQ/ZS5iaXRtYXA9ci5yZWFkQnl0ZXMoKTozPT09dD9lLndpZHRoPXIucmVhZFZhcmludCgpOjQ9PT10P2UuaGVpZ2h0PXIucmVhZFZhcmludCgpOjU9PT10P2UubGVmdD1yLnJlYWRTVmFyaW50KCk6Nj09PXQ/ZS50b3A9ci5yZWFkU1ZhcmludCgpOjc9PT10JiYoZS5hZHZhbmNlPXIucmVhZFZhcmludCgpKTt9Y29uc3QgVnU9enU7ZnVuY3Rpb24gRXUodCl7bGV0IGU9MCxyPTA7Zm9yKGNvbnN0IG4gb2YgdCllKz1uLncqbi5oLHI9TWF0aC5tYXgocixuLncpO3Quc29ydCgoKHQsZSk9PmUuaC10LmgpKTtjb25zdCBuPVt7eDowLHk6MCx3Ok1hdGgubWF4KE1hdGguY2VpbChNYXRoLnNxcnQoZS8uOTUpKSxyKSxoOjEvMH1dO2xldCBpPTAscz0wO2Zvcihjb25zdCBlIG9mIHQpZm9yKGxldCB0PW4ubGVuZ3RoLTE7dD49MDt0LS0pe2NvbnN0IHI9blt0XTtpZighKGUudz5yLnd8fGUuaD5yLmgpKXtpZihlLng9ci54LGUueT1yLnkscz1NYXRoLm1heChzLGUueStlLmgpLGk9TWF0aC5tYXgoaSxlLngrZS53KSxlLnc9PT1yLncmJmUuaD09PXIuaCl7Y29uc3QgZT1uLnBvcCgpO3Q8bi5sZW5ndGgmJihuW3RdPWUpO31lbHNlIGUuaD09PXIuaD8oci54Kz1lLncsci53LT1lLncpOmUudz09PXIudz8oci55Kz1lLmgsci5oLT1lLmgpOihuLnB1c2goe3g6ci54K2Uudyx5OnIueSx3OnIudy1lLncsaDplLmh9KSxyLnkrPWUuaCxyLmgtPWUuaCk7YnJlYWt9fXJldHVybiB7dzppLGg6cyxmaWxsOmUvKGkqcyl8fDB9fWNvbnN0IEZ1PTE7Y2xhc3MgVHV7Y29uc3RydWN0b3IodCx7cGl4ZWxSYXRpbzplLHZlcnNpb246cixzdHJldGNoWDpuLHN0cmV0Y2hZOmksY29udGVudDpzLHRleHRGaXRXaWR0aDphLHRleHRGaXRIZWlnaHQ6b30pe3RoaXMucGFkZGVkUmVjdD10LHRoaXMucGl4ZWxSYXRpbz1lLHRoaXMuc3RyZXRjaFg9bix0aGlzLnN0cmV0Y2hZPWksdGhpcy5jb250ZW50PXMsdGhpcy52ZXJzaW9uPXIsdGhpcy50ZXh0Rml0V2lkdGg9YSx0aGlzLnRleHRGaXRIZWlnaHQ9bzt9Z2V0IHRsKCl7cmV0dXJuIFt0aGlzLnBhZGRlZFJlY3QueCtGdSx0aGlzLnBhZGRlZFJlY3QueStGdV19Z2V0IGJyKCl7cmV0dXJuIFt0aGlzLnBhZGRlZFJlY3QueCt0aGlzLnBhZGRlZFJlY3Qudy1GdSx0aGlzLnBhZGRlZFJlY3QueSt0aGlzLnBhZGRlZFJlY3QuaC1GdV19Z2V0IHRsYnIoKXtyZXR1cm4gdGhpcy50bC5jb25jYXQodGhpcy5icil9Z2V0IGRpc3BsYXlTaXplKCl7cmV0dXJuIFsodGhpcy5wYWRkZWRSZWN0LnctMipGdSkvdGhpcy5waXhlbFJhdGlvLCh0aGlzLnBhZGRlZFJlY3QuaC0yKkZ1KS90aGlzLnBpeGVsUmF0aW9dfX1jbGFzcyAkdXtjb25zdHJ1Y3Rvcih0LGUpe2NvbnN0IHI9e30sbj17fTt0aGlzLmhhdmVSZW5kZXJDYWxsYmFja3M9W107Y29uc3QgaT1bXTt0aGlzLmFkZEltYWdlcyh0LHIsaSksdGhpcy5hZGRJbWFnZXMoZSxuLGkpO2NvbnN0e3c6cyxoOmF9PUV1KGkpLG89bmV3IEFvKHt3aWR0aDpzfHwxLGhlaWdodDphfHwxfSk7Zm9yKGNvbnN0IGUgaW4gdCl7Y29uc3Qgbj10W2VdLGk9cltlXS5wYWRkZWRSZWN0O0FvLmNvcHkobi5kYXRhLG8se3g6MCx5OjB9LHt4OmkueCtGdSx5OmkueStGdX0sbi5kYXRhKTt9Zm9yKGNvbnN0IHQgaW4gZSl7Y29uc3Qgcj1lW3RdLGk9blt0XS5wYWRkZWRSZWN0LHM9aS54K0Z1LGE9aS55K0Z1LGw9ci5kYXRhLndpZHRoLHU9ci5kYXRhLmhlaWdodDtBby5jb3B5KHIuZGF0YSxvLHt4OjAseTowfSx7eDpzLHk6YX0sci5kYXRhKSxBby5jb3B5KHIuZGF0YSxvLHt4OjAseTp1LTF9LHt4OnMseTphLTF9LHt3aWR0aDpsLGhlaWdodDoxfSksQW8uY29weShyLmRhdGEsbyx7eDowLHk6MH0se3g6cyx5OmErdX0se3dpZHRoOmwsaGVpZ2h0OjF9KSxBby5jb3B5KHIuZGF0YSxvLHt4OmwtMSx5OjB9LHt4OnMtMSx5OmF9LHt3aWR0aDoxLGhlaWdodDp1fSksQW8uY29weShyLmRhdGEsbyx7eDowLHk6MH0se3g6cytsLHk6YX0se3dpZHRoOjEsaGVpZ2h0OnV9KTt9dGhpcy5pbWFnZT1vLHRoaXMuaWNvblBvc2l0aW9ucz1yLHRoaXMucGF0dGVyblBvc2l0aW9ucz1uO31hZGRJbWFnZXModCxlLHIpe2Zvcihjb25zdCBuIGluIHQpe2NvbnN0IGk9dFtuXSxzPXt4OjAseTowLHc6aS5kYXRhLndpZHRoKzIqRnUsaDppLmRhdGEuaGVpZ2h0KzIqRnV9O3IucHVzaChzKSxlW25dPW5ldyBUdShzLGkpLGkuaGFzUmVuZGVyQ2FsbGJhY2smJnRoaXMuaGF2ZVJlbmRlckNhbGxiYWNrcy5wdXNoKG4pO319cGF0Y2hVcGRhdGVkSW1hZ2VzKHQsZSl7dC5kaXNwYXRjaFJlbmRlckNhbGxiYWNrcyh0aGlzLmhhdmVSZW5kZXJDYWxsYmFja3MpO2Zvcihjb25zdCByIGluIHQudXBkYXRlZEltYWdlcyl0aGlzLnBhdGNoVXBkYXRlZEltYWdlKHRoaXMuaWNvblBvc2l0aW9uc1tyXSx0LmdldEltYWdlKHIpLGUpLHRoaXMucGF0Y2hVcGRhdGVkSW1hZ2UodGhpcy5wYXR0ZXJuUG9zaXRpb25zW3JdLHQuZ2V0SW1hZ2UociksZSk7fXBhdGNoVXBkYXRlZEltYWdlKHQsZSxyKXtpZighdHx8IWUpcmV0dXJuO2lmKHQudmVyc2lvbj09PWUudmVyc2lvbilyZXR1cm47dC52ZXJzaW9uPWUudmVyc2lvbjtjb25zdFtuLGldPXQudGw7ci51cGRhdGUoZS5kYXRhLHZvaWQgMCx7eDpuLHk6aX0pO319dmFyIEx1O3dpKFwiSW1hZ2VQb3NpdGlvblwiLFR1KSx3aShcIkltYWdlQXRsYXNcIiwkdSksdC5haD12b2lkIDAsKEx1PXQuYWh8fCh0LmFoPXt9KSlbTHUubm9uZT0wXT1cIm5vbmVcIixMdVtMdS5ob3Jpem9udGFsPTFdPVwiaG9yaXpvbnRhbFwiLEx1W0x1LnZlcnRpY2FsPTJdPVwidmVydGljYWxcIixMdVtMdS5ob3Jpem9udGFsT25seT0zXT1cImhvcml6b250YWxPbmx5XCI7Y29uc3QgRHU9LTE3O2NsYXNzIE91e2NvbnN0cnVjdG9yKCl7dGhpcy5zY2FsZT0xLHRoaXMuZm9udFN0YWNrPVwiXCIsdGhpcy5pbWFnZU5hbWU9bnVsbDt9c3RhdGljIGZvclRleHQodCxlKXtjb25zdCByPW5ldyBPdTtyZXR1cm4gci5zY2FsZT10fHwxLHIuZm9udFN0YWNrPWUscn1zdGF0aWMgZm9ySW1hZ2UodCl7Y29uc3QgZT1uZXcgT3U7cmV0dXJuIGUuaW1hZ2VOYW1lPXQsZX19Y2xhc3MganV7Y29uc3RydWN0b3IoKXt0aGlzLnRleHQ9XCJcIix0aGlzLnNlY3Rpb25JbmRleD1bXSx0aGlzLnNlY3Rpb25zPVtdLHRoaXMuaW1hZ2VTZWN0aW9uSUQ9bnVsbDt9c3RhdGljIGZyb21GZWF0dXJlKHQsZSl7Y29uc3Qgcj1uZXcganU7Zm9yKGxldCBuPTA7bjx0LnNlY3Rpb25zLmxlbmd0aDtuKyspe2NvbnN0IGk9dC5zZWN0aW9uc1tuXTtpLmltYWdlP3IuYWRkSW1hZ2VTZWN0aW9uKGkpOnIuYWRkVGV4dFNlY3Rpb24oaSxlKTt9cmV0dXJuIHJ9bGVuZ3RoKCl7cmV0dXJuIHRoaXMudGV4dC5sZW5ndGh9Z2V0U2VjdGlvbih0KXtyZXR1cm4gdGhpcy5zZWN0aW9uc1t0aGlzLnNlY3Rpb25JbmRleFt0XV19Z2V0U2VjdGlvbkluZGV4KHQpe3JldHVybiB0aGlzLnNlY3Rpb25JbmRleFt0XX1nZXRDaGFyQ29kZSh0KXtyZXR1cm4gdGhpcy50ZXh0LmNoYXJDb2RlQXQodCl9dmVydGljYWxpemVQdW5jdHVhdGlvbigpe3RoaXMudGV4dD1mdW5jdGlvbih0KXtsZXQgZT1cIlwiO2ZvcihsZXQgcj0wO3I8dC5sZW5ndGg7cisrKXtjb25zdCBuPXQuY2hhckNvZGVBdChyKzEpfHxudWxsLGk9dC5jaGFyQ29kZUF0KHItMSl8fG51bGw7ZSs9biYmJGkobikmJiFudVt0W3IrMV1dfHxpJiYkaShpKSYmIW51W3Rbci0xXV18fCFudVt0W3JdXT90W3JdOm51W3Rbcl1dO31yZXR1cm4gZX0odGhpcy50ZXh0KTt9dHJpbSgpe2xldCB0PTA7Zm9yKGxldCBlPTA7ZTx0aGlzLnRleHQubGVuZ3RoJiZVdVt0aGlzLnRleHQuY2hhckNvZGVBdChlKV07ZSsrKXQrKztsZXQgZT10aGlzLnRleHQubGVuZ3RoO2ZvcihsZXQgcj10aGlzLnRleHQubGVuZ3RoLTE7cj49MCYmcj49dCYmVXVbdGhpcy50ZXh0LmNoYXJDb2RlQXQocildO3ItLSllLS07dGhpcy50ZXh0PXRoaXMudGV4dC5zdWJzdHJpbmcodCxlKSx0aGlzLnNlY3Rpb25JbmRleD10aGlzLnNlY3Rpb25JbmRleC5zbGljZSh0LGUpO31zdWJzdHJpbmcodCxlKXtjb25zdCByPW5ldyBqdTtyZXR1cm4gci50ZXh0PXRoaXMudGV4dC5zdWJzdHJpbmcodCxlKSxyLnNlY3Rpb25JbmRleD10aGlzLnNlY3Rpb25JbmRleC5zbGljZSh0LGUpLHIuc2VjdGlvbnM9dGhpcy5zZWN0aW9ucyxyfXRvU3RyaW5nKCl7cmV0dXJuIHRoaXMudGV4dH1nZXRNYXhTY2FsZSgpe3JldHVybiB0aGlzLnNlY3Rpb25JbmRleC5yZWR1Y2UoKCh0LGUpPT5NYXRoLm1heCh0LHRoaXMuc2VjdGlvbnNbZV0uc2NhbGUpKSwwKX1hZGRUZXh0U2VjdGlvbih0LGUpe3RoaXMudGV4dCs9dC50ZXh0LHRoaXMuc2VjdGlvbnMucHVzaChPdS5mb3JUZXh0KHQuc2NhbGUsdC5mb250U3RhY2t8fGUpKTtjb25zdCByPXRoaXMuc2VjdGlvbnMubGVuZ3RoLTE7Zm9yKGxldCBlPTA7ZTx0LnRleHQubGVuZ3RoOysrZSl0aGlzLnNlY3Rpb25JbmRleC5wdXNoKHIpO31hZGRJbWFnZVNlY3Rpb24odCl7Y29uc3QgZT10LmltYWdlP3QuaW1hZ2UubmFtZTpcIlwiO2lmKDA9PT1lLmxlbmd0aClyZXR1cm4gdm9pZCBBKFwiQ2FuJ3QgYWRkIEZvcm1hdHRlZFNlY3Rpb24gd2l0aCBhbiBlbXB0eSBpbWFnZS5cIik7Y29uc3Qgcj10aGlzLmdldE5leHRJbWFnZVNlY3Rpb25DaGFyQ29kZSgpO3I/KHRoaXMudGV4dCs9U3RyaW5nLmZyb21DaGFyQ29kZShyKSx0aGlzLnNlY3Rpb25zLnB1c2goT3UuZm9ySW1hZ2UoZSkpLHRoaXMuc2VjdGlvbkluZGV4LnB1c2godGhpcy5zZWN0aW9ucy5sZW5ndGgtMSkpOkEoXCJSZWFjaGVkIG1heGltdW0gbnVtYmVyIG9mIGltYWdlcyA2NDAxXCIpO31nZXROZXh0SW1hZ2VTZWN0aW9uQ2hhckNvZGUoKXtyZXR1cm4gdGhpcy5pbWFnZVNlY3Rpb25JRD90aGlzLmltYWdlU2VjdGlvbklEPj02Mzc0Mz9udWxsOisrdGhpcy5pbWFnZVNlY3Rpb25JRDoodGhpcy5pbWFnZVNlY3Rpb25JRD01NzM0NCx0aGlzLmltYWdlU2VjdGlvbklEKX19ZnVuY3Rpb24gUnUoZSxyLG4saSxzLGEsbyxsLHUsYyxoLHAsZixkLHkpe2NvbnN0IG09anUuZnJvbUZlYXR1cmUoZSxzKTtsZXQgZztwPT09dC5haC52ZXJ0aWNhbCYmbS52ZXJ0aWNhbGl6ZVB1bmN0dWF0aW9uKCk7Y29uc3R7cHJvY2Vzc0JpZGlyZWN0aW9uYWxUZXh0OngscHJvY2Vzc1N0eWxlZEJpZGlyZWN0aW9uYWxUZXh0OnZ9PVJpO2lmKHgmJjE9PT1tLnNlY3Rpb25zLmxlbmd0aCl7Zz1bXTtjb25zdCB0PXgobS50b1N0cmluZygpLFl1KG0sYyxhLHIsaSxkKSk7Zm9yKGNvbnN0IGUgb2YgdCl7Y29uc3QgdD1uZXcganU7dC50ZXh0PWUsdC5zZWN0aW9ucz1tLnNlY3Rpb25zO2ZvcihsZXQgcj0wO3I8ZS5sZW5ndGg7cisrKXQuc2VjdGlvbkluZGV4LnB1c2goMCk7Zy5wdXNoKHQpO319ZWxzZSBpZih2KXtnPVtdO2NvbnN0IHQ9dihtLnRleHQsbS5zZWN0aW9uSW5kZXgsWXUobSxjLGEscixpLGQpKTtmb3IoY29uc3QgZSBvZiB0KXtjb25zdCB0PW5ldyBqdTt0LnRleHQ9ZVswXSx0LnNlY3Rpb25JbmRleD1lWzFdLHQuc2VjdGlvbnM9bS5zZWN0aW9ucyxnLnB1c2godCk7fX1lbHNlIGc9ZnVuY3Rpb24odCxlKXtjb25zdCByPVtdLG49dC50ZXh0O2xldCBpPTA7Zm9yKGNvbnN0IG4gb2YgZSlyLnB1c2godC5zdWJzdHJpbmcoaSxuKSksaT1uO3JldHVybiBpPG4ubGVuZ3RoJiZyLnB1c2godC5zdWJzdHJpbmcoaSxuLmxlbmd0aCkpLHJ9KG0sWXUobSxjLGEscixpLGQpKTtjb25zdCBiPVtdLHc9e3Bvc2l0aW9uZWRMaW5lczpiLHRleHQ6bS50b1N0cmluZygpLHRvcDpoWzFdLGJvdHRvbTpoWzFdLGxlZnQ6aFswXSxyaWdodDpoWzBdLHdyaXRpbmdNb2RlOnAsaWNvbnNJblRleHQ6ITEsdmVydGljYWxpemFibGU6ITF9O3JldHVybiBmdW5jdGlvbihlLHIsbixpLHMsYSxvLGwsdSxjLGgscCl7bGV0IGY9MCxkPUR1LHk9MCxtPTA7Y29uc3QgZz1cInJpZ2h0XCI9PT1sPzE6XCJsZWZ0XCI9PT1sPzA6LjU7bGV0IHg9MDtmb3IoY29uc3QgbyBvZiBzKXtvLnRyaW0oKTtjb25zdCBzPW8uZ2V0TWF4U2NhbGUoKSxsPShzLTEpKml1LGI9e3Bvc2l0aW9uZWRHbHlwaHM6W10sbGluZU9mZnNldDowfTtlLnBvc2l0aW9uZWRMaW5lc1t4XT1iO2NvbnN0IHc9Yi5wb3NpdGlvbmVkR2x5cGhzO2xldCBfPTA7aWYoIW8ubGVuZ3RoKCkpe2QrPWEsKyt4O2NvbnRpbnVlfWZvcihsZXQgYT0wO2E8by5sZW5ndGgoKTthKyspe2NvbnN0IHk9by5nZXRTZWN0aW9uKGEpLG09by5nZXRTZWN0aW9uSW5kZXgoYSksZz1vLmdldENoYXJDb2RlKGEpO2xldCB4PTAsYj1udWxsLEE9bnVsbCxTPW51bGwsaz1pdTtjb25zdCBNPSEodT09PXQuYWguaG9yaXpvbnRhbHx8IWgmJiFUaShnKXx8aCYmKFV1W2ddfHwodj1nLC9cXHB7c2M9QXJhYn0vdS50ZXN0KFN0cmluZy5mcm9tQ29kZVBvaW50KHYpKSkpKTtpZih5LmltYWdlTmFtZSl7Y29uc3QgdD1pW3kuaW1hZ2VOYW1lXTtpZighdCljb250aW51ZTtTPXkuaW1hZ2VOYW1lLGUuaWNvbnNJblRleHQ9ZS5pY29uc0luVGV4dHx8ITAsQT10LnBhZGRlZFJlY3Q7Y29uc3Qgcj10LmRpc3BsYXlTaXplO3kuc2NhbGU9eS5zY2FsZSppdS9wLGI9e3dpZHRoOnJbMF0saGVpZ2h0OnJbMV0sbGVmdDpGdSx0b3A6LVZ1LGFkdmFuY2U6TT9yWzFdOnJbMF19LHg9bCsoaXUtclsxXSp5LnNjYWxlKSxrPWIuYWR2YW5jZTtjb25zdCBuPU0/clswXSp5LnNjYWxlLWl1KnM6clsxXSp5LnNjYWxlLWl1KnM7bj4wJiZuPl8mJihfPW4pO31lbHNlIHtjb25zdCB0PW5beS5mb250U3RhY2tdLGU9dCYmdFtnXTtpZihlJiZlLnJlY3QpQT1lLnJlY3QsYj1lLm1ldHJpY3M7ZWxzZSB7Y29uc3QgdD1yW3kuZm9udFN0YWNrXSxlPXQmJnRbZ107aWYoIWUpY29udGludWU7Yj1lLm1ldHJpY3M7fXg9KHMteS5zY2FsZSkqaXU7fU0/KGUudmVydGljYWxpemFibGU9ITAsdy5wdXNoKHtnbHlwaDpnLGltYWdlTmFtZTpTLHg6Zix5OmQreCx2ZXJ0aWNhbDpNLHNjYWxlOnkuc2NhbGUsZm9udFN0YWNrOnkuZm9udFN0YWNrLHNlY3Rpb25JbmRleDptLG1ldHJpY3M6YixyZWN0OkF9KSxmKz1rKnkuc2NhbGUrYyk6KHcucHVzaCh7Z2x5cGg6ZyxpbWFnZU5hbWU6Uyx4OmYseTpkK3gsdmVydGljYWw6TSxzY2FsZTp5LnNjYWxlLGZvbnRTdGFjazp5LmZvbnRTdGFjayxzZWN0aW9uSW5kZXg6bSxtZXRyaWNzOmIscmVjdDpBfSksZis9Yi5hZHZhbmNlKnkuc2NhbGUrYyk7fTAhPT13Lmxlbmd0aCYmKHk9TWF0aC5tYXgoZi1jLHkpLFd1KHcsMCx3Lmxlbmd0aC0xLGcsXykpLGY9MDtjb25zdCBBPWEqcytfO2IubGluZU9mZnNldD1NYXRoLm1heChfLGwpLGQrPUEsbT1NYXRoLm1heChBLG0pLCsreDt9dmFyIHY7Y29uc3QgYj1kLUR1LHtob3Jpem9udGFsQWxpZ246dyx2ZXJ0aWNhbEFsaWduOl99PUp1KG8pOygoZnVuY3Rpb24odCxlLHIsbixpLHMsYSxvLGwpe2NvbnN0IHU9KGUtcikqaTtsZXQgYz0wO2M9cyE9PWE/LW8qbi1EdTooLW4qbCsuNSkqYTtmb3IoY29uc3QgZSBvZiB0KWZvcihjb25zdCB0IG9mIGUucG9zaXRpb25lZEdseXBocyl0LngrPXUsdC55Kz1jO30pKShlLnBvc2l0aW9uZWRMaW5lcyxnLHcsXyx5LG0sYSxiLHMubGVuZ3RoKSxlLnRvcCs9LV8qYixlLmJvdHRvbT1lLnRvcCtiLGUubGVmdCs9LXcqeSxlLnJpZ2h0PWUubGVmdCt5O30odyxyLG4saSxnLG8sbCx1LHAsYyxmLHkpLCFmdW5jdGlvbih0KXtmb3IoY29uc3QgZSBvZiB0KWlmKDAhPT1lLnBvc2l0aW9uZWRHbHlwaHMubGVuZ3RoKXJldHVybiAhMTtyZXR1cm4gITB9KGIpJiZ3fWNvbnN0IFV1PXs5OiEwLDEwOiEwLDExOiEwLDEyOiEwLDEzOiEwLDMyOiEwfSxxdT17MTA6ITAsMzI6ITAsMzg6ITAsNDE6ITAsNDM6ITAsNDU6ITAsNDc6ITAsMTczOiEwLDE4MzohMCw4MjAzOiEwLDgyMDg6ITAsODIxMTohMCw4MjMxOiEwfSxOdT17NDA6ITB9O2Z1bmN0aW9uIFp1KHQsZSxyLG4saSxzKXtpZihlLmltYWdlTmFtZSl7Y29uc3QgdD1uW2UuaW1hZ2VOYW1lXTtyZXR1cm4gdD90LmRpc3BsYXlTaXplWzBdKmUuc2NhbGUqaXUvcytpOjB9e2NvbnN0IG49cltlLmZvbnRTdGFja10scz1uJiZuW3RdO3JldHVybiBzP3MubWV0cmljcy5hZHZhbmNlKmUuc2NhbGUraTowfX1mdW5jdGlvbiBHdSh0LGUscixuKXtjb25zdCBpPU1hdGgucG93KHQtZSwyKTtyZXR1cm4gbj90PGU/aS8yOjIqaTppK01hdGguYWJzKHIpKnJ9ZnVuY3Rpb24gS3UodCxlLHIpe2xldCBuPTA7cmV0dXJuIDEwPT09dCYmKG4tPTFlNCksciYmKG4rPTE1MCksNDAhPT10JiY2NTI4OCE9PXR8fChuKz01MCksNDEhPT1lJiY2NTI4OSE9PWV8fChuKz01MCksbn1mdW5jdGlvbiBYdSh0LGUscixuLGkscyl7bGV0IGE9bnVsbCxvPUd1KGUscixpLHMpO2Zvcihjb25zdCB0IG9mIG4pe2NvbnN0IG49R3UoZS10LngscixpLHMpK3QuYmFkbmVzcztuPD1vJiYoYT10LG89bik7fXJldHVybiB7aW5kZXg6dCx4OmUscHJpb3JCcmVhazphLGJhZG5lc3M6b319ZnVuY3Rpb24gSHUodCl7cmV0dXJuIHQ/SHUodC5wcmlvckJyZWFrKS5jb25jYXQodC5pbmRleCk6W119ZnVuY3Rpb24gWXUodCxlLHIsbixpLHMpe2lmKCF0KXJldHVybiBbXTtjb25zdCBhPVtdLG89ZnVuY3Rpb24odCxlLHIsbixpLHMpe2xldCBhPTA7Zm9yKGxldCByPTA7cjx0Lmxlbmd0aCgpO3IrKyl7Y29uc3Qgbz10LmdldFNlY3Rpb24ocik7YSs9WnUodC5nZXRDaGFyQ29kZShyKSxvLG4saSxlLHMpO31yZXR1cm4gYS9NYXRoLm1heCgxLE1hdGguY2VpbChhL3IpKX0odCxlLHIsbixpLHMpLGw9dC50ZXh0LmluZGV4T2YoXCLigItcIik+PTA7bGV0IHU9MDtmb3IobGV0IHI9MDtyPHQubGVuZ3RoKCk7cisrKXtjb25zdCBoPXQuZ2V0U2VjdGlvbihyKSxwPXQuZ2V0Q2hhckNvZGUocik7aWYoVXVbcF18fCh1Kz1adShwLGgsbixpLGUscykpLHI8dC5sZW5ndGgoKS0xKXtjb25zdCBlPSEoKGM9cCk8MTE5MDQpJiYoISF6aVtcIkNKSyBDb21wYXRpYmlsaXR5IEZvcm1zXCJdKGMpfHwhIXppW1wiQ0pLIENvbXBhdGliaWxpdHlcIl0oYyl8fCEhemlbXCJDSksgU3Ryb2tlc1wiXShjKXx8ISF6aVtcIkNKSyBTeW1ib2xzIGFuZCBQdW5jdHVhdGlvblwiXShjKXx8ISF6aVtcIkVuY2xvc2VkIENKSyBMZXR0ZXJzIGFuZCBNb250aHNcIl0oYyl8fCEhemlbXCJIYWxmd2lkdGggYW5kIEZ1bGx3aWR0aCBGb3Jtc1wiXShjKXx8ISF6aVtcIklkZW9ncmFwaGljIERlc2NyaXB0aW9uIENoYXJhY3RlcnNcIl0oYyl8fCEhemlbXCJWZXJ0aWNhbCBGb3Jtc1wiXShjKXx8RmkudGVzdChTdHJpbmcuZnJvbUNvZGVQb2ludChjKSkpOyhxdVtwXXx8ZXx8aC5pbWFnZU5hbWV8fHIhPT10Lmxlbmd0aCgpLTImJk51W3QuZ2V0Q2hhckNvZGUocisxKV0pJiZhLnB1c2goWHUocisxLHUsbyxhLEt1KHAsdC5nZXRDaGFyQ29kZShyKzEpLGUmJmwpLCExKSk7fX12YXIgYztyZXR1cm4gSHUoWHUodC5sZW5ndGgoKSx1LG8sYSwwLCEwKSl9ZnVuY3Rpb24gSnUodCl7bGV0IGU9LjUscj0uNTtzd2l0Y2godCl7Y2FzZVwicmlnaHRcIjpjYXNlXCJ0b3AtcmlnaHRcIjpjYXNlXCJib3R0b20tcmlnaHRcIjplPTE7YnJlYWs7Y2FzZVwibGVmdFwiOmNhc2VcInRvcC1sZWZ0XCI6Y2FzZVwiYm90dG9tLWxlZnRcIjplPTA7fXN3aXRjaCh0KXtjYXNlXCJib3R0b21cIjpjYXNlXCJib3R0b20tcmlnaHRcIjpjYXNlXCJib3R0b20tbGVmdFwiOnI9MTticmVhaztjYXNlXCJ0b3BcIjpjYXNlXCJ0b3AtcmlnaHRcIjpjYXNlXCJ0b3AtbGVmdFwiOnI9MDt9cmV0dXJuIHtob3Jpem9udGFsQWxpZ246ZSx2ZXJ0aWNhbEFsaWduOnJ9fWZ1bmN0aW9uIFd1KHQsZSxyLG4saSl7aWYoIW4mJiFpKXJldHVybjtjb25zdCBzPXRbcl0sYT0odFtyXS54K3MubWV0cmljcy5hZHZhbmNlKnMuc2NhbGUpKm47Zm9yKGxldCBuPWU7bjw9cjtuKyspdFtuXS54LT1hLHRbbl0ueSs9aTt9ZnVuY3Rpb24gUXUodCxlLHIpe2NvbnN0e2hvcml6b250YWxBbGlnbjpuLHZlcnRpY2FsQWxpZ246aX09SnUocikscz1lWzBdLXQuZGlzcGxheVNpemVbMF0qbixhPWVbMV0tdC5kaXNwbGF5U2l6ZVsxXSppO3JldHVybiB7aW1hZ2U6dCx0b3A6YSxib3R0b206YSt0LmRpc3BsYXlTaXplWzFdLGxlZnQ6cyxyaWdodDpzK3QuZGlzcGxheVNpemVbMF19fWZ1bmN0aW9uIHRjKHQpe3ZhciBlLHI7bGV0IG49dC5sZWZ0LGk9dC50b3Ascz10LnJpZ2h0LW4sYT10LmJvdHRvbS1pO2NvbnN0IG89bnVsbCE9PShlPXQuaW1hZ2UudGV4dEZpdFdpZHRoKSYmdm9pZCAwIT09ZT9lOlwic3RyZXRjaE9yU2hyaW5rXCIsbD1udWxsIT09KHI9dC5pbWFnZS50ZXh0Rml0SGVpZ2h0KSYmdm9pZCAwIT09cj9yOlwic3RyZXRjaE9yU2hyaW5rXCIsdT0odC5pbWFnZS5jb250ZW50WzJdLXQuaW1hZ2UuY29udGVudFswXSkvKHQuaW1hZ2UuY29udGVudFszXS10LmltYWdlLmNvbnRlbnRbMV0pO2lmKFwicHJvcG9ydGlvbmFsXCI9PT1sKXtpZihcInN0cmV0Y2hPbmx5XCI9PT1vJiZzL2E8dXx8XCJwcm9wb3J0aW9uYWxcIj09PW8pe2NvbnN0IHQ9TWF0aC5jZWlsKGEqdSk7bio9dC9zLHM9dDt9fWVsc2UgaWYoXCJwcm9wb3J0aW9uYWxcIj09PW8mJlwic3RyZXRjaE9ubHlcIj09PWwmJjAhPT11JiZzL2E+dSl7Y29uc3QgdD1NYXRoLmNlaWwocy91KTtpKj10L2EsYT10O31yZXR1cm4ge3gxOm4seTE6aSx4MjpuK3MseTI6aSthfX1mdW5jdGlvbiBlYyh0LGUscixuLGkscyl7Y29uc3QgYT10LmltYWdlO2xldCBvO2lmKGEuY29udGVudCl7Y29uc3QgdD1hLmNvbnRlbnQsZT1hLnBpeGVsUmF0aW98fDE7bz1bdFswXS9lLHRbMV0vZSxhLmRpc3BsYXlTaXplWzBdLXRbMl0vZSxhLmRpc3BsYXlTaXplWzFdLXRbM10vZV07fWNvbnN0IGw9ZS5sZWZ0KnMsdT1lLnJpZ2h0KnM7bGV0IGMsaCxwLGY7XCJ3aWR0aFwiPT09cnx8XCJib3RoXCI9PT1yPyhmPWlbMF0rbC1uWzNdLGg9aVswXSt1K25bMV0pOihmPWlbMF0rKGwrdS1hLmRpc3BsYXlTaXplWzBdKS8yLGg9ZithLmRpc3BsYXlTaXplWzBdKTtjb25zdCBkPWUudG9wKnMseT1lLmJvdHRvbSpzO3JldHVybiBcImhlaWdodFwiPT09cnx8XCJib3RoXCI9PT1yPyhjPWlbMV0rZC1uWzBdLHA9aVsxXSt5K25bMl0pOihjPWlbMV0rKGQreS1hLmRpc3BsYXlTaXplWzFdKS8yLHA9YythLmRpc3BsYXlTaXplWzFdKSx7aW1hZ2U6YSx0b3A6YyxyaWdodDpoLGJvdHRvbTpwLGxlZnQ6Zixjb2xsaXNpb25QYWRkaW5nOm99fWNvbnN0IHJjPTI1NSxuYz0xMjgsaWM9cmMqbmM7ZnVuY3Rpb24gc2ModCxlKXtjb25zdHtleHByZXNzaW9uOnJ9PWU7aWYoXCJjb25zdGFudFwiPT09ci5raW5kKXJldHVybiB7a2luZDpcImNvbnN0YW50XCIsbGF5b3V0U2l6ZTpyLmV2YWx1YXRlKG5ldyBVaSh0KzEpKX07aWYoXCJzb3VyY2VcIj09PXIua2luZClyZXR1cm4ge2tpbmQ6XCJzb3VyY2VcIn07e2NvbnN0e3pvb21TdG9wczplLGludGVycG9sYXRpb25UeXBlOm59PXI7bGV0IGk9MDtmb3IoO2k8ZS5sZW5ndGgmJmVbaV08PXQ7KWkrKztpPU1hdGgubWF4KDAsaS0xKTtsZXQgcz1pO2Zvcig7czxlLmxlbmd0aCYmZVtzXTx0KzE7KXMrKztzPU1hdGgubWluKGUubGVuZ3RoLTEscyk7Y29uc3QgYT1lW2ldLG89ZVtzXTtyZXR1cm4gXCJjb21wb3NpdGVcIj09PXIua2luZD97a2luZDpcImNvbXBvc2l0ZVwiLG1pblpvb206YSxtYXhab29tOm8saW50ZXJwb2xhdGlvblR5cGU6bn06e2tpbmQ6XCJjYW1lcmFcIixtaW5ab29tOmEsbWF4Wm9vbTpvLG1pblNpemU6ci5ldmFsdWF0ZShuZXcgVWkoYSkpLG1heFNpemU6ci5ldmFsdWF0ZShuZXcgVWkobykpLGludGVycG9sYXRpb25UeXBlOm59fX1mdW5jdGlvbiBhYyh0LGUscil7bGV0IG49XCJuZXZlclwiO2NvbnN0IGk9dC5nZXQoZSk7cmV0dXJuIGk/bj1pOnQuZ2V0KHIpJiYobj1cImFsd2F5c1wiKSxufWNvbnN0IG9jPWZsLlZlY3RvclRpbGVGZWF0dXJlLnR5cGVzLGxjPVt7bmFtZTpcImFfZmFkZV9vcGFjaXR5XCIsY29tcG9uZW50czoxLHR5cGU6XCJVaW50OFwiLG9mZnNldDowfV07ZnVuY3Rpb24gdWModCxlLHIsbixpLHMsYSxvLGwsdSxjLGgscCl7Y29uc3QgZj1vP01hdGgubWluKGljLE1hdGgucm91bmQob1swXSkpOjAsZD1vP01hdGgubWluKGljLE1hdGgucm91bmQob1sxXSkpOjA7dC5lbXBsYWNlQmFjayhlLHIsTWF0aC5yb3VuZCgzMipuKSxNYXRoLnJvdW5kKDMyKmkpLHMsYSwoZjw8MSkrKGw/MTowKSxkLDE2KnUsMTYqYywyNTYqaCwyNTYqcCk7fWZ1bmN0aW9uIGNjKHQsZSxyKXt0LmVtcGxhY2VCYWNrKGUueCxlLnksciksdC5lbXBsYWNlQmFjayhlLngsZS55LHIpLHQuZW1wbGFjZUJhY2soZS54LGUueSxyKSx0LmVtcGxhY2VCYWNrKGUueCxlLnkscik7fWZ1bmN0aW9uIGhjKHQpe2Zvcihjb25zdCBlIG9mIHQuc2VjdGlvbnMpaWYoamkoZS50ZXh0KSlyZXR1cm4gITA7cmV0dXJuICExfWNsYXNzIHBje2NvbnN0cnVjdG9yKHQpe3RoaXMubGF5b3V0VmVydGV4QXJyYXk9bmV3IFdzLHRoaXMuaW5kZXhBcnJheT1uZXcgbmEsdGhpcy5wcm9ncmFtQ29uZmlndXJhdGlvbnM9dCx0aGlzLnNlZ21lbnRzPW5ldyBvYSx0aGlzLmR5bmFtaWNMYXlvdXRWZXJ0ZXhBcnJheT1uZXcgUXMsdGhpcy5vcGFjaXR5VmVydGV4QXJyYXk9bmV3IHRhLHRoaXMuaGFzVmlzaWJsZVZlcnRpY2VzPSExLHRoaXMucGxhY2VkU3ltYm9sQXJyYXk9bmV3ICRzO31pc0VtcHR5KCl7cmV0dXJuIDA9PT10aGlzLmxheW91dFZlcnRleEFycmF5Lmxlbmd0aCYmMD09PXRoaXMuaW5kZXhBcnJheS5sZW5ndGgmJjA9PT10aGlzLmR5bmFtaWNMYXlvdXRWZXJ0ZXhBcnJheS5sZW5ndGgmJjA9PT10aGlzLm9wYWNpdHlWZXJ0ZXhBcnJheS5sZW5ndGh9dXBsb2FkKHQsZSxyLG4pe3RoaXMuaXNFbXB0eSgpfHwociYmKHRoaXMubGF5b3V0VmVydGV4QnVmZmVyPXQuY3JlYXRlVmVydGV4QnVmZmVyKHRoaXMubGF5b3V0VmVydGV4QXJyYXksSmwubWVtYmVycyksdGhpcy5pbmRleEJ1ZmZlcj10LmNyZWF0ZUluZGV4QnVmZmVyKHRoaXMuaW5kZXhBcnJheSxlKSx0aGlzLmR5bmFtaWNMYXlvdXRWZXJ0ZXhCdWZmZXI9dC5jcmVhdGVWZXJ0ZXhCdWZmZXIodGhpcy5keW5hbWljTGF5b3V0VmVydGV4QXJyYXksV2wubWVtYmVycywhMCksdGhpcy5vcGFjaXR5VmVydGV4QnVmZmVyPXQuY3JlYXRlVmVydGV4QnVmZmVyKHRoaXMub3BhY2l0eVZlcnRleEFycmF5LGxjLCEwKSx0aGlzLm9wYWNpdHlWZXJ0ZXhCdWZmZXIuaXRlbVNpemU9MSksKHJ8fG4pJiZ0aGlzLnByb2dyYW1Db25maWd1cmF0aW9ucy51cGxvYWQodCkpO31kZXN0cm95KCl7dGhpcy5sYXlvdXRWZXJ0ZXhCdWZmZXImJih0aGlzLmxheW91dFZlcnRleEJ1ZmZlci5kZXN0cm95KCksdGhpcy5pbmRleEJ1ZmZlci5kZXN0cm95KCksdGhpcy5wcm9ncmFtQ29uZmlndXJhdGlvbnMuZGVzdHJveSgpLHRoaXMuc2VnbWVudHMuZGVzdHJveSgpLHRoaXMuZHluYW1pY0xheW91dFZlcnRleEJ1ZmZlci5kZXN0cm95KCksdGhpcy5vcGFjaXR5VmVydGV4QnVmZmVyLmRlc3Ryb3koKSk7fX13aShcIlN5bWJvbEJ1ZmZlcnNcIixwYyk7Y2xhc3MgZmN7Y29uc3RydWN0b3IodCxlLHIpe3RoaXMubGF5b3V0VmVydGV4QXJyYXk9bmV3IHQsdGhpcy5sYXlvdXRBdHRyaWJ1dGVzPWUsdGhpcy5pbmRleEFycmF5PW5ldyByLHRoaXMuc2VnbWVudHM9bmV3IG9hLHRoaXMuY29sbGlzaW9uVmVydGV4QXJyYXk9bmV3IHJhO311cGxvYWQodCl7dGhpcy5sYXlvdXRWZXJ0ZXhCdWZmZXI9dC5jcmVhdGVWZXJ0ZXhCdWZmZXIodGhpcy5sYXlvdXRWZXJ0ZXhBcnJheSx0aGlzLmxheW91dEF0dHJpYnV0ZXMpLHRoaXMuaW5kZXhCdWZmZXI9dC5jcmVhdGVJbmRleEJ1ZmZlcih0aGlzLmluZGV4QXJyYXkpLHRoaXMuY29sbGlzaW9uVmVydGV4QnVmZmVyPXQuY3JlYXRlVmVydGV4QnVmZmVyKHRoaXMuY29sbGlzaW9uVmVydGV4QXJyYXksUWwubWVtYmVycywhMCk7fWRlc3Ryb3koKXt0aGlzLmxheW91dFZlcnRleEJ1ZmZlciYmKHRoaXMubGF5b3V0VmVydGV4QnVmZmVyLmRlc3Ryb3koKSx0aGlzLmluZGV4QnVmZmVyLmRlc3Ryb3koKSx0aGlzLnNlZ21lbnRzLmRlc3Ryb3koKSx0aGlzLmNvbGxpc2lvblZlcnRleEJ1ZmZlci5kZXN0cm95KCkpO319d2koXCJDb2xsaXNpb25CdWZmZXJzXCIsZmMpO2NsYXNzIGRje2NvbnN0cnVjdG9yKGUpe3RoaXMuY29sbGlzaW9uQm94QXJyYXk9ZS5jb2xsaXNpb25Cb3hBcnJheSx0aGlzLnpvb209ZS56b29tLHRoaXMub3ZlcnNjYWxpbmc9ZS5vdmVyc2NhbGluZyx0aGlzLmxheWVycz1lLmxheWVycyx0aGlzLmxheWVySWRzPXRoaXMubGF5ZXJzLm1hcCgodD0+dC5pZCkpLHRoaXMuaW5kZXg9ZS5pbmRleCx0aGlzLnBpeGVsUmF0aW89ZS5waXhlbFJhdGlvLHRoaXMuc291cmNlTGF5ZXJJbmRleD1lLnNvdXJjZUxheWVySW5kZXgsdGhpcy5oYXNQYXR0ZXJuPSExLHRoaXMuaGFzUlRMVGV4dD0hMSx0aGlzLnNvcnRLZXlSYW5nZXM9W10sdGhpcy5jb2xsaXNpb25DaXJjbGVBcnJheT1bXSx0aGlzLnBsYWNlbWVudEludlByb2pNYXRyaXg9bG8oW10pLHRoaXMucGxhY2VtZW50Vmlld3BvcnRNYXRyaXg9bG8oW10pO2NvbnN0IHI9dGhpcy5sYXllcnNbMF0uX3VuZXZhbHVhdGVkTGF5b3V0Ll92YWx1ZXM7dGhpcy50ZXh0U2l6ZURhdGE9c2ModGhpcy56b29tLHJbXCJ0ZXh0LXNpemVcIl0pLHRoaXMuaWNvblNpemVEYXRhPXNjKHRoaXMuem9vbSxyW1wiaWNvbi1zaXplXCJdKTtjb25zdCBuPXRoaXMubGF5ZXJzWzBdLmxheW91dCxpPW4uZ2V0KFwic3ltYm9sLXNvcnQta2V5XCIpLHM9bi5nZXQoXCJzeW1ib2wtei1vcmRlclwiKTt0aGlzLmNhbk92ZXJsYXA9XCJuZXZlclwiIT09YWMobixcInRleHQtb3ZlcmxhcFwiLFwidGV4dC1hbGxvdy1vdmVybGFwXCIpfHxcIm5ldmVyXCIhPT1hYyhuLFwiaWNvbi1vdmVybGFwXCIsXCJpY29uLWFsbG93LW92ZXJsYXBcIil8fG4uZ2V0KFwidGV4dC1pZ25vcmUtcGxhY2VtZW50XCIpfHxuLmdldChcImljb24taWdub3JlLXBsYWNlbWVudFwiKSx0aGlzLnNvcnRGZWF0dXJlc0J5S2V5PVwidmlld3BvcnQteVwiIT09cyYmIWkuaXNDb25zdGFudCgpLHRoaXMuc29ydEZlYXR1cmVzQnlZPShcInZpZXdwb3J0LXlcIj09PXN8fFwiYXV0b1wiPT09cyYmIXRoaXMuc29ydEZlYXR1cmVzQnlLZXkpJiZ0aGlzLmNhbk92ZXJsYXAsXCJwb2ludFwiPT09bi5nZXQoXCJzeW1ib2wtcGxhY2VtZW50XCIpJiYodGhpcy53cml0aW5nTW9kZXM9bi5nZXQoXCJ0ZXh0LXdyaXRpbmctbW9kZVwiKS5tYXAoKGU9PnQuYWhbZV0pKSksdGhpcy5zdGF0ZURlcGVuZGVudExheWVySWRzPXRoaXMubGF5ZXJzLmZpbHRlcigodD0+dC5pc1N0YXRlRGVwZW5kZW50KCkpKS5tYXAoKHQ9PnQuaWQpKSx0aGlzLnNvdXJjZUlEPWUuc291cmNlSUQ7fWNyZWF0ZUFycmF5cygpe3RoaXMudGV4dD1uZXcgcGMobmV3IEVhKHRoaXMubGF5ZXJzLHRoaXMuem9vbSwodD0+L150ZXh0Ly50ZXN0KHQpKSkpLHRoaXMuaWNvbj1uZXcgcGMobmV3IEVhKHRoaXMubGF5ZXJzLHRoaXMuem9vbSwodD0+L15pY29uLy50ZXN0KHQpKSkpLHRoaXMuZ2x5cGhPZmZzZXRBcnJheT1uZXcgT3MsdGhpcy5saW5lVmVydGV4QXJyYXk9bmV3IGpzLHRoaXMuc3ltYm9sSW5zdGFuY2VzPW5ldyBEcyx0aGlzLnRleHRBbmNob3JPZmZzZXRzPW5ldyBVczt9Y2FsY3VsYXRlR2x5cGhEZXBlbmRlbmNpZXModCxlLHIsbixpKXtmb3IobGV0IHM9MDtzPHQubGVuZ3RoO3MrKylpZihlW3QuY2hhckNvZGVBdChzKV09ITAsKHJ8fG4pJiZpKXtjb25zdCByPW51W3QuY2hhckF0KHMpXTtyJiYoZVtyLmNoYXJDb2RlQXQoMCldPSEwKTt9fXBvcHVsYXRlKGUscixuKXtjb25zdCBpPXRoaXMubGF5ZXJzWzBdLHM9aS5sYXlvdXQsYT1zLmdldChcInRleHQtZm9udFwiKSxvPXMuZ2V0KFwidGV4dC1maWVsZFwiKSxsPXMuZ2V0KFwiaWNvbi1pbWFnZVwiKSx1PShcImNvbnN0YW50XCIhPT1vLnZhbHVlLmtpbmR8fG8udmFsdWUudmFsdWUgaW5zdGFuY2VvZiBZdCYmIW8udmFsdWUudmFsdWUuaXNFbXB0eSgpfHxvLnZhbHVlLnZhbHVlLnRvU3RyaW5nKCkubGVuZ3RoPjApJiYoXCJjb25zdGFudFwiIT09YS52YWx1ZS5raW5kfHxhLnZhbHVlLnZhbHVlLmxlbmd0aD4wKSxjPVwiY29uc3RhbnRcIiE9PWwudmFsdWUua2luZHx8ISFsLnZhbHVlLnZhbHVlfHxPYmplY3Qua2V5cyhsLnBhcmFtZXRlcnMpLmxlbmd0aD4wLGg9cy5nZXQoXCJzeW1ib2wtc29ydC1rZXlcIik7aWYodGhpcy5mZWF0dXJlcz1bXSwhdSYmIWMpcmV0dXJuO2NvbnN0IHA9ci5pY29uRGVwZW5kZW5jaWVzLGY9ci5nbHlwaERlcGVuZGVuY2llcyxkPXIuYXZhaWxhYmxlSW1hZ2VzLHk9bmV3IFVpKHRoaXMuem9vbSk7Zm9yKGNvbnN0e2ZlYXR1cmU6cixpZDpvLGluZGV4Omwsc291cmNlTGF5ZXJJbmRleDptfW9mIGUpe2NvbnN0IGU9aS5fZmVhdHVyZUZpbHRlci5uZWVkR2VvbWV0cnksZz1qYShyLGUpO2lmKCFpLl9mZWF0dXJlRmlsdGVyLmZpbHRlcih5LGcsbikpY29udGludWU7bGV0IHgsdjtpZihlfHwoZy5nZW9tZXRyeT1PYShyKSksdSl7Y29uc3QgdD1pLmdldFZhbHVlQW5kUmVzb2x2ZVRva2VucyhcInRleHQtZmllbGRcIixnLG4sZCksZT1ZdC5mYWN0b3J5KHQpLHI9dGhpcy5oYXNSVExUZXh0PXRoaXMuaGFzUlRMVGV4dHx8aGMoZSk7KCFyfHxcInVuYXZhaWxhYmxlXCI9PT1SaS5nZXRSVExUZXh0UGx1Z2luU3RhdHVzKCl8fHImJlJpLmlzUGFyc2VkKCkpJiYoeD1ydShlLGksZykpO31pZihjKXtjb25zdCB0PWkuZ2V0VmFsdWVBbmRSZXNvbHZlVG9rZW5zKFwiaWNvbi1pbWFnZVwiLGcsbixkKTt2PXQgaW5zdGFuY2VvZiB0ZT90OnRlLmZyb21TdHJpbmcodCk7fWlmKCF4JiYhdiljb250aW51ZTtjb25zdCBiPXRoaXMuc29ydEZlYXR1cmVzQnlLZXk/aC5ldmFsdWF0ZShnLHt9LG4pOnZvaWQgMDtpZih0aGlzLmZlYXR1cmVzLnB1c2goe2lkOm8sdGV4dDp4LGljb246dixpbmRleDpsLHNvdXJjZUxheWVySW5kZXg6bSxnZW9tZXRyeTpnLmdlb21ldHJ5LHByb3BlcnRpZXM6ci5wcm9wZXJ0aWVzLHR5cGU6b2Nbci50eXBlXSxzb3J0S2V5OmJ9KSx2JiYocFt2Lm5hbWVdPSEwKSx4KXtjb25zdCBlPWEuZXZhbHVhdGUoZyx7fSxuKS5qb2luKFwiLFwiKSxyPVwidmlld3BvcnRcIiE9PXMuZ2V0KFwidGV4dC1yb3RhdGlvbi1hbGlnbm1lbnRcIikmJlwicG9pbnRcIiE9PXMuZ2V0KFwic3ltYm9sLXBsYWNlbWVudFwiKTt0aGlzLmFsbG93VmVydGljYWxQbGFjZW1lbnQ9dGhpcy53cml0aW5nTW9kZXMmJnRoaXMud3JpdGluZ01vZGVzLmluZGV4T2YodC5haC52ZXJ0aWNhbCk+PTA7Zm9yKGNvbnN0IHQgb2YgeC5zZWN0aW9ucylpZih0LmltYWdlKXBbdC5pbWFnZS5uYW1lXT0hMDtlbHNlIHtjb25zdCBuPVBpKHgudG9TdHJpbmcoKSksaT10LmZvbnRTdGFja3x8ZSxzPWZbaV09ZltpXXx8e307dGhpcy5jYWxjdWxhdGVHbHlwaERlcGVuZGVuY2llcyh0LnRleHQscyxyLHRoaXMuYWxsb3dWZXJ0aWNhbFBsYWNlbWVudCxuKTt9fX1cImxpbmVcIj09PXMuZ2V0KFwic3ltYm9sLXBsYWNlbWVudFwiKSYmKHRoaXMuZmVhdHVyZXM9ZnVuY3Rpb24odCl7Y29uc3QgZT17fSxyPXt9LG49W107bGV0IGk9MDtmdW5jdGlvbiBzKGUpe24ucHVzaCh0W2VdKSxpKys7fWZ1bmN0aW9uIGEodCxlLGkpe2NvbnN0IHM9clt0XTtyZXR1cm4gZGVsZXRlIHJbdF0scltlXT1zLG5bc10uZ2VvbWV0cnlbMF0ucG9wKCksbltzXS5nZW9tZXRyeVswXT1uW3NdLmdlb21ldHJ5WzBdLmNvbmNhdChpWzBdKSxzfWZ1bmN0aW9uIG8odCxyLGkpe2NvbnN0IHM9ZVtyXTtyZXR1cm4gZGVsZXRlIGVbcl0sZVt0XT1zLG5bc10uZ2VvbWV0cnlbMF0uc2hpZnQoKSxuW3NdLmdlb21ldHJ5WzBdPWlbMF0uY29uY2F0KG5bc10uZ2VvbWV0cnlbMF0pLHN9ZnVuY3Rpb24gbCh0LGUscil7Y29uc3Qgbj1yP2VbMF1bZVswXS5sZW5ndGgtMV06ZVswXVswXTtyZXR1cm4gYCR7dH06JHtuLnh9OiR7bi55fWB9Zm9yKGxldCB1PTA7dTx0Lmxlbmd0aDt1Kyspe2NvbnN0IGM9dFt1XSxoPWMuZ2VvbWV0cnkscD1jLnRleHQ/Yy50ZXh0LnRvU3RyaW5nKCk6bnVsbDtpZighcCl7cyh1KTtjb250aW51ZX1jb25zdCBmPWwocCxoKSxkPWwocCxoLCEwKTtpZihmIGluIHImJmQgaW4gZSYmcltmXSE9PWVbZF0pe2NvbnN0IHQ9byhmLGQsaCksaT1hKGYsZCxuW3RdLmdlb21ldHJ5KTtkZWxldGUgZVtmXSxkZWxldGUgcltkXSxyW2wocCxuW2ldLmdlb21ldHJ5LCEwKV09aSxuW3RdLmdlb21ldHJ5PW51bGw7fWVsc2UgZiBpbiByP2EoZixkLGgpOmQgaW4gZT9vKGYsZCxoKToocyh1KSxlW2ZdPWktMSxyW2RdPWktMSk7fXJldHVybiBuLmZpbHRlcigodD0+dC5nZW9tZXRyeSkpfSh0aGlzLmZlYXR1cmVzKSksdGhpcy5zb3J0RmVhdHVyZXNCeUtleSYmdGhpcy5mZWF0dXJlcy5zb3J0KCgodCxlKT0+dC5zb3J0S2V5LWUuc29ydEtleSkpO311cGRhdGUodCxlLHIpe3RoaXMuc3RhdGVEZXBlbmRlbnRMYXllcnMubGVuZ3RoJiYodGhpcy50ZXh0LnByb2dyYW1Db25maWd1cmF0aW9ucy51cGRhdGVQYWludEFycmF5cyh0LGUsdGhpcy5sYXllcnMsciksdGhpcy5pY29uLnByb2dyYW1Db25maWd1cmF0aW9ucy51cGRhdGVQYWludEFycmF5cyh0LGUsdGhpcy5sYXllcnMscikpO31pc0VtcHR5KCl7cmV0dXJuIDA9PT10aGlzLnN5bWJvbEluc3RhbmNlcy5sZW5ndGgmJiF0aGlzLmhhc1JUTFRleHR9dXBsb2FkUGVuZGluZygpe3JldHVybiAhdGhpcy51cGxvYWRlZHx8dGhpcy50ZXh0LnByb2dyYW1Db25maWd1cmF0aW9ucy5uZWVkc1VwbG9hZHx8dGhpcy5pY29uLnByb2dyYW1Db25maWd1cmF0aW9ucy5uZWVkc1VwbG9hZH11cGxvYWQodCl7IXRoaXMudXBsb2FkZWQmJnRoaXMuaGFzRGVidWdEYXRhKCkmJih0aGlzLnRleHRDb2xsaXNpb25Cb3gudXBsb2FkKHQpLHRoaXMuaWNvbkNvbGxpc2lvbkJveC51cGxvYWQodCkpLHRoaXMudGV4dC51cGxvYWQodCx0aGlzLnNvcnRGZWF0dXJlc0J5WSwhdGhpcy51cGxvYWRlZCx0aGlzLnRleHQucHJvZ3JhbUNvbmZpZ3VyYXRpb25zLm5lZWRzVXBsb2FkKSx0aGlzLmljb24udXBsb2FkKHQsdGhpcy5zb3J0RmVhdHVyZXNCeVksIXRoaXMudXBsb2FkZWQsdGhpcy5pY29uLnByb2dyYW1Db25maWd1cmF0aW9ucy5uZWVkc1VwbG9hZCksdGhpcy51cGxvYWRlZD0hMDt9ZGVzdHJveURlYnVnRGF0YSgpe3RoaXMudGV4dENvbGxpc2lvbkJveC5kZXN0cm95KCksdGhpcy5pY29uQ29sbGlzaW9uQm94LmRlc3Ryb3koKTt9ZGVzdHJveSgpe3RoaXMudGV4dC5kZXN0cm95KCksdGhpcy5pY29uLmRlc3Ryb3koKSx0aGlzLmhhc0RlYnVnRGF0YSgpJiZ0aGlzLmRlc3Ryb3lEZWJ1Z0RhdGEoKTt9YWRkVG9MaW5lVmVydGV4QXJyYXkodCxlKXtjb25zdCByPXRoaXMubGluZVZlcnRleEFycmF5Lmxlbmd0aDtpZih2b2lkIDAhPT10LnNlZ21lbnQpe2xldCByPXQuZGlzdChlW3Quc2VnbWVudCsxXSksbj10LmRpc3QoZVt0LnNlZ21lbnRdKTtjb25zdCBpPXt9O2ZvcihsZXQgbj10LnNlZ21lbnQrMTtuPGUubGVuZ3RoO24rKylpW25dPXt4OmVbbl0ueCx5OmVbbl0ueSx0aWxlVW5pdERpc3RhbmNlRnJvbUFuY2hvcjpyfSxuPGUubGVuZ3RoLTEmJihyKz1lW24rMV0uZGlzdChlW25dKSk7Zm9yKGxldCByPXQuc2VnbWVudHx8MDtyPj0wO3ItLSlpW3JdPXt4OmVbcl0ueCx5OmVbcl0ueSx0aWxlVW5pdERpc3RhbmNlRnJvbUFuY2hvcjpufSxyPjAmJihuKz1lW3ItMV0uZGlzdChlW3JdKSk7Zm9yKGxldCB0PTA7dDxlLmxlbmd0aDt0Kyspe2NvbnN0IGU9aVt0XTt0aGlzLmxpbmVWZXJ0ZXhBcnJheS5lbXBsYWNlQmFjayhlLngsZS55LGUudGlsZVVuaXREaXN0YW5jZUZyb21BbmNob3IpO319cmV0dXJuIHtsaW5lU3RhcnRJbmRleDpyLGxpbmVMZW5ndGg6dGhpcy5saW5lVmVydGV4QXJyYXkubGVuZ3RoLXJ9fWFkZFN5bWJvbHMoZSxyLG4saSxzLGEsbyxsLHUsYyxoLHApe2NvbnN0IGY9ZS5pbmRleEFycmF5LGQ9ZS5sYXlvdXRWZXJ0ZXhBcnJheSx5PWUuc2VnbWVudHMucHJlcGFyZVNlZ21lbnQoNCpyLmxlbmd0aCxkLGYsdGhpcy5jYW5PdmVybGFwP2Euc29ydEtleTp2b2lkIDApLG09dGhpcy5nbHlwaE9mZnNldEFycmF5Lmxlbmd0aCxnPXkudmVydGV4TGVuZ3RoLHg9dGhpcy5hbGxvd1ZlcnRpY2FsUGxhY2VtZW50JiZvPT09dC5haC52ZXJ0aWNhbD9NYXRoLlBJLzI6MCx2PWEudGV4dCYmYS50ZXh0LnNlY3Rpb25zO2ZvcihsZXQgdD0wO3Q8ci5sZW5ndGg7dCsrKXtjb25zdHt0bDppLHRyOnMsYmw6byxicjp1LHRleDpjLHBpeGVsT2Zmc2V0VEw6aCxwaXhlbE9mZnNldEJSOm0sbWluRm9udFNjYWxlWDpnLG1pbkZvbnRTY2FsZVk6YixnbHlwaE9mZnNldDp3LGlzU0RGOl8sc2VjdGlvbkluZGV4OkF9PXJbdF0sUz15LnZlcnRleExlbmd0aCxrPXdbMV07dWMoZCxsLngsbC55LGkueCxrK2kueSxjLngsYy55LG4sXyxoLngsaC55LGcsYiksdWMoZCxsLngsbC55LHMueCxrK3MueSxjLngrYy53LGMueSxuLF8sbS54LGgueSxnLGIpLHVjKGQsbC54LGwueSxvLngsaytvLnksYy54LGMueStjLmgsbixfLGgueCxtLnksZyxiKSx1YyhkLGwueCxsLnksdS54LGsrdS55LGMueCtjLncsYy55K2MuaCxuLF8sbS54LG0ueSxnLGIpLGNjKGUuZHluYW1pY0xheW91dFZlcnRleEFycmF5LGwseCksZi5lbXBsYWNlQmFjayhTLFMrMSxTKzIpLGYuZW1wbGFjZUJhY2soUysxLFMrMixTKzMpLHkudmVydGV4TGVuZ3RoKz00LHkucHJpbWl0aXZlTGVuZ3RoKz0yLHRoaXMuZ2x5cGhPZmZzZXRBcnJheS5lbXBsYWNlQmFjayh3WzBdKSx0IT09ci5sZW5ndGgtMSYmQT09PXJbdCsxXS5zZWN0aW9uSW5kZXh8fGUucHJvZ3JhbUNvbmZpZ3VyYXRpb25zLnBvcHVsYXRlUGFpbnRBcnJheXMoZC5sZW5ndGgsYSxhLmluZGV4LHt9LHAsdiYmdltBXSk7fWUucGxhY2VkU3ltYm9sQXJyYXkuZW1wbGFjZUJhY2sobC54LGwueSxtLHRoaXMuZ2x5cGhPZmZzZXRBcnJheS5sZW5ndGgtbSxnLHUsYyxsLnNlZ21lbnQsbj9uWzBdOjAsbj9uWzFdOjAsaVswXSxpWzFdLG8sMCwhMSwwLGgpO31fYWRkQ29sbGlzaW9uRGVidWdWZXJ0ZXgodCxlLHIsbixpLHMpe3JldHVybiBlLmVtcGxhY2VCYWNrKDAsMCksdC5lbXBsYWNlQmFjayhyLngsci55LG4saSxNYXRoLnJvdW5kKHMueCksTWF0aC5yb3VuZChzLnkpKX1hZGRDb2xsaXNpb25EZWJ1Z1ZlcnRpY2VzKHQsZSxyLG4saSxhLG8pe2NvbnN0IGw9aS5zZWdtZW50cy5wcmVwYXJlU2VnbWVudCg0LGkubGF5b3V0VmVydGV4QXJyYXksaS5pbmRleEFycmF5KSx1PWwudmVydGV4TGVuZ3RoLGM9aS5sYXlvdXRWZXJ0ZXhBcnJheSxoPWkuY29sbGlzaW9uVmVydGV4QXJyYXkscD1vLmFuY2hvclgsZj1vLmFuY2hvclk7dGhpcy5fYWRkQ29sbGlzaW9uRGVidWdWZXJ0ZXgoYyxoLGEscCxmLG5ldyBzKHQsZSkpLHRoaXMuX2FkZENvbGxpc2lvbkRlYnVnVmVydGV4KGMsaCxhLHAsZixuZXcgcyhyLGUpKSx0aGlzLl9hZGRDb2xsaXNpb25EZWJ1Z1ZlcnRleChjLGgsYSxwLGYsbmV3IHMocixuKSksdGhpcy5fYWRkQ29sbGlzaW9uRGVidWdWZXJ0ZXgoYyxoLGEscCxmLG5ldyBzKHQsbikpLGwudmVydGV4TGVuZ3RoKz00O2NvbnN0IGQ9aS5pbmRleEFycmF5O2QuZW1wbGFjZUJhY2sodSx1KzEpLGQuZW1wbGFjZUJhY2sodSsxLHUrMiksZC5lbXBsYWNlQmFjayh1KzIsdSszKSxkLmVtcGxhY2VCYWNrKHUrMyx1KSxsLnByaW1pdGl2ZUxlbmd0aCs9NDt9YWRkRGVidWdDb2xsaXNpb25Cb3hlcyh0LGUscixuKXtmb3IobGV0IGk9dDtpPGU7aSsrKXtjb25zdCB0PXRoaXMuY29sbGlzaW9uQm94QXJyYXkuZ2V0KGkpO3RoaXMuYWRkQ29sbGlzaW9uRGVidWdWZXJ0aWNlcyh0LngxLHQueTEsdC54Mix0LnkyLG4/dGhpcy50ZXh0Q29sbGlzaW9uQm94OnRoaXMuaWNvbkNvbGxpc2lvbkJveCx0LmFuY2hvclBvaW50LHIpO319Z2VuZXJhdGVDb2xsaXNpb25EZWJ1Z0J1ZmZlcnMoKXt0aGlzLmhhc0RlYnVnRGF0YSgpJiZ0aGlzLmRlc3Ryb3lEZWJ1Z0RhdGEoKSx0aGlzLnRleHRDb2xsaXNpb25Cb3g9bmV3IGZjKGVhLHR1Lm1lbWJlcnMsaWEpLHRoaXMuaWNvbkNvbGxpc2lvbkJveD1uZXcgZmMoZWEsdHUubWVtYmVycyxpYSk7Zm9yKGxldCB0PTA7dDx0aGlzLnN5bWJvbEluc3RhbmNlcy5sZW5ndGg7dCsrKXtjb25zdCBlPXRoaXMuc3ltYm9sSW5zdGFuY2VzLmdldCh0KTt0aGlzLmFkZERlYnVnQ29sbGlzaW9uQm94ZXMoZS50ZXh0Qm94U3RhcnRJbmRleCxlLnRleHRCb3hFbmRJbmRleCxlLCEwKSx0aGlzLmFkZERlYnVnQ29sbGlzaW9uQm94ZXMoZS52ZXJ0aWNhbFRleHRCb3hTdGFydEluZGV4LGUudmVydGljYWxUZXh0Qm94RW5kSW5kZXgsZSwhMCksdGhpcy5hZGREZWJ1Z0NvbGxpc2lvbkJveGVzKGUuaWNvbkJveFN0YXJ0SW5kZXgsZS5pY29uQm94RW5kSW5kZXgsZSwhMSksdGhpcy5hZGREZWJ1Z0NvbGxpc2lvbkJveGVzKGUudmVydGljYWxJY29uQm94U3RhcnRJbmRleCxlLnZlcnRpY2FsSWNvbkJveEVuZEluZGV4LGUsITEpO319X2Rlc2VyaWFsaXplQ29sbGlzaW9uQm94ZXNGb3JTeW1ib2wodCxlLHIsbixpLHMsYSxvLGwpe2NvbnN0IHU9e307Zm9yKGxldCBuPWU7bjxyO24rKyl7Y29uc3QgZT10LmdldChuKTt1LnRleHRCb3g9e3gxOmUueDEseTE6ZS55MSx4MjplLngyLHkyOmUueTIsYW5jaG9yUG9pbnRYOmUuYW5jaG9yUG9pbnRYLGFuY2hvclBvaW50WTplLmFuY2hvclBvaW50WX0sdS50ZXh0RmVhdHVyZUluZGV4PWUuZmVhdHVyZUluZGV4O2JyZWFrfWZvcihsZXQgZT1uO2U8aTtlKyspe2NvbnN0IHI9dC5nZXQoZSk7dS52ZXJ0aWNhbFRleHRCb3g9e3gxOnIueDEseTE6ci55MSx4MjpyLngyLHkyOnIueTIsYW5jaG9yUG9pbnRYOnIuYW5jaG9yUG9pbnRYLGFuY2hvclBvaW50WTpyLmFuY2hvclBvaW50WX0sdS52ZXJ0aWNhbFRleHRGZWF0dXJlSW5kZXg9ci5mZWF0dXJlSW5kZXg7YnJlYWt9Zm9yKGxldCBlPXM7ZTxhO2UrKyl7Y29uc3Qgcj10LmdldChlKTt1Lmljb25Cb3g9e3gxOnIueDEseTE6ci55MSx4MjpyLngyLHkyOnIueTIsYW5jaG9yUG9pbnRYOnIuYW5jaG9yUG9pbnRYLGFuY2hvclBvaW50WTpyLmFuY2hvclBvaW50WX0sdS5pY29uRmVhdHVyZUluZGV4PXIuZmVhdHVyZUluZGV4O2JyZWFrfWZvcihsZXQgZT1vO2U8bDtlKyspe2NvbnN0IHI9dC5nZXQoZSk7dS52ZXJ0aWNhbEljb25Cb3g9e3gxOnIueDEseTE6ci55MSx4MjpyLngyLHkyOnIueTIsYW5jaG9yUG9pbnRYOnIuYW5jaG9yUG9pbnRYLGFuY2hvclBvaW50WTpyLmFuY2hvclBvaW50WX0sdS52ZXJ0aWNhbEljb25GZWF0dXJlSW5kZXg9ci5mZWF0dXJlSW5kZXg7YnJlYWt9cmV0dXJuIHV9ZGVzZXJpYWxpemVDb2xsaXNpb25Cb3hlcyh0KXt0aGlzLmNvbGxpc2lvbkFycmF5cz1bXTtmb3IobGV0IGU9MDtlPHRoaXMuc3ltYm9sSW5zdGFuY2VzLmxlbmd0aDtlKyspe2NvbnN0IHI9dGhpcy5zeW1ib2xJbnN0YW5jZXMuZ2V0KGUpO3RoaXMuY29sbGlzaW9uQXJyYXlzLnB1c2godGhpcy5fZGVzZXJpYWxpemVDb2xsaXNpb25Cb3hlc0ZvclN5bWJvbCh0LHIudGV4dEJveFN0YXJ0SW5kZXgsci50ZXh0Qm94RW5kSW5kZXgsci52ZXJ0aWNhbFRleHRCb3hTdGFydEluZGV4LHIudmVydGljYWxUZXh0Qm94RW5kSW5kZXgsci5pY29uQm94U3RhcnRJbmRleCxyLmljb25Cb3hFbmRJbmRleCxyLnZlcnRpY2FsSWNvbkJveFN0YXJ0SW5kZXgsci52ZXJ0aWNhbEljb25Cb3hFbmRJbmRleCkpO319aGFzVGV4dERhdGEoKXtyZXR1cm4gdGhpcy50ZXh0LnNlZ21lbnRzLmdldCgpLmxlbmd0aD4wfWhhc0ljb25EYXRhKCl7cmV0dXJuIHRoaXMuaWNvbi5zZWdtZW50cy5nZXQoKS5sZW5ndGg+MH1oYXNEZWJ1Z0RhdGEoKXtyZXR1cm4gdGhpcy50ZXh0Q29sbGlzaW9uQm94JiZ0aGlzLmljb25Db2xsaXNpb25Cb3h9aGFzVGV4dENvbGxpc2lvbkJveERhdGEoKXtyZXR1cm4gdGhpcy5oYXNEZWJ1Z0RhdGEoKSYmdGhpcy50ZXh0Q29sbGlzaW9uQm94LnNlZ21lbnRzLmdldCgpLmxlbmd0aD4wfWhhc0ljb25Db2xsaXNpb25Cb3hEYXRhKCl7cmV0dXJuIHRoaXMuaGFzRGVidWdEYXRhKCkmJnRoaXMuaWNvbkNvbGxpc2lvbkJveC5zZWdtZW50cy5nZXQoKS5sZW5ndGg+MH1hZGRJbmRpY2VzRm9yUGxhY2VkU3ltYm9sKHQsZSl7Y29uc3Qgcj10LnBsYWNlZFN5bWJvbEFycmF5LmdldChlKSxuPXIudmVydGV4U3RhcnRJbmRleCs0KnIubnVtR2x5cGhzO2ZvcihsZXQgZT1yLnZlcnRleFN0YXJ0SW5kZXg7ZTxuO2UrPTQpdC5pbmRleEFycmF5LmVtcGxhY2VCYWNrKGUsZSsxLGUrMiksdC5pbmRleEFycmF5LmVtcGxhY2VCYWNrKGUrMSxlKzIsZSszKTt9Z2V0U29ydGVkU3ltYm9sSW5kZXhlcyh0KXtpZih0aGlzLnNvcnRlZEFuZ2xlPT09dCYmdm9pZCAwIT09dGhpcy5zeW1ib2xJbnN0YW5jZUluZGV4ZXMpcmV0dXJuIHRoaXMuc3ltYm9sSW5zdGFuY2VJbmRleGVzO2NvbnN0IGU9TWF0aC5zaW4odCkscj1NYXRoLmNvcyh0KSxuPVtdLGk9W10scz1bXTtmb3IobGV0IHQ9MDt0PHRoaXMuc3ltYm9sSW5zdGFuY2VzLmxlbmd0aDsrK3Qpe3MucHVzaCh0KTtjb25zdCBhPXRoaXMuc3ltYm9sSW5zdGFuY2VzLmdldCh0KTtuLnB1c2goMHxNYXRoLnJvdW5kKGUqYS5hbmNob3JYK3IqYS5hbmNob3JZKSksaS5wdXNoKGEuZmVhdHVyZUluZGV4KTt9cmV0dXJuIHMuc29ydCgoKHQsZSk9Pm5bdF0tbltlXXx8aVtlXS1pW3RdKSksc31hZGRUb1NvcnRLZXlSYW5nZXModCxlKXtjb25zdCByPXRoaXMuc29ydEtleVJhbmdlc1t0aGlzLnNvcnRLZXlSYW5nZXMubGVuZ3RoLTFdO3ImJnIuc29ydEtleT09PWU/ci5zeW1ib2xJbnN0YW5jZUVuZD10KzE6dGhpcy5zb3J0S2V5UmFuZ2VzLnB1c2goe3NvcnRLZXk6ZSxzeW1ib2xJbnN0YW5jZVN0YXJ0OnQsc3ltYm9sSW5zdGFuY2VFbmQ6dCsxfSk7fXNvcnRGZWF0dXJlcyh0KXtpZih0aGlzLnNvcnRGZWF0dXJlc0J5WSYmdGhpcy5zb3J0ZWRBbmdsZSE9PXQmJiEodGhpcy50ZXh0LnNlZ21lbnRzLmdldCgpLmxlbmd0aD4xfHx0aGlzLmljb24uc2VnbWVudHMuZ2V0KCkubGVuZ3RoPjEpKXt0aGlzLnN5bWJvbEluc3RhbmNlSW5kZXhlcz10aGlzLmdldFNvcnRlZFN5bWJvbEluZGV4ZXModCksdGhpcy5zb3J0ZWRBbmdsZT10LHRoaXMudGV4dC5pbmRleEFycmF5LmNsZWFyKCksdGhpcy5pY29uLmluZGV4QXJyYXkuY2xlYXIoKSx0aGlzLmZlYXR1cmVTb3J0T3JkZXI9W107Zm9yKGNvbnN0IHQgb2YgdGhpcy5zeW1ib2xJbnN0YW5jZUluZGV4ZXMpe2NvbnN0IGU9dGhpcy5zeW1ib2xJbnN0YW5jZXMuZ2V0KHQpO3RoaXMuZmVhdHVyZVNvcnRPcmRlci5wdXNoKGUuZmVhdHVyZUluZGV4KSxbZS5yaWdodEp1c3RpZmllZFRleHRTeW1ib2xJbmRleCxlLmNlbnRlckp1c3RpZmllZFRleHRTeW1ib2xJbmRleCxlLmxlZnRKdXN0aWZpZWRUZXh0U3ltYm9sSW5kZXhdLmZvckVhY2goKCh0LGUscik9Pnt0Pj0wJiZyLmluZGV4T2YodCk9PT1lJiZ0aGlzLmFkZEluZGljZXNGb3JQbGFjZWRTeW1ib2wodGhpcy50ZXh0LHQpO30pKSxlLnZlcnRpY2FsUGxhY2VkVGV4dFN5bWJvbEluZGV4Pj0wJiZ0aGlzLmFkZEluZGljZXNGb3JQbGFjZWRTeW1ib2wodGhpcy50ZXh0LGUudmVydGljYWxQbGFjZWRUZXh0U3ltYm9sSW5kZXgpLGUucGxhY2VkSWNvblN5bWJvbEluZGV4Pj0wJiZ0aGlzLmFkZEluZGljZXNGb3JQbGFjZWRTeW1ib2wodGhpcy5pY29uLGUucGxhY2VkSWNvblN5bWJvbEluZGV4KSxlLnZlcnRpY2FsUGxhY2VkSWNvblN5bWJvbEluZGV4Pj0wJiZ0aGlzLmFkZEluZGljZXNGb3JQbGFjZWRTeW1ib2wodGhpcy5pY29uLGUudmVydGljYWxQbGFjZWRJY29uU3ltYm9sSW5kZXgpO310aGlzLnRleHQuaW5kZXhCdWZmZXImJnRoaXMudGV4dC5pbmRleEJ1ZmZlci51cGRhdGVEYXRhKHRoaXMudGV4dC5pbmRleEFycmF5KSx0aGlzLmljb24uaW5kZXhCdWZmZXImJnRoaXMuaWNvbi5pbmRleEJ1ZmZlci51cGRhdGVEYXRhKHRoaXMuaWNvbi5pbmRleEFycmF5KTt9fX1sZXQgeWMsbWM7d2koXCJTeW1ib2xCdWNrZXRcIixkYyx7b21pdDpbXCJsYXllcnNcIixcImNvbGxpc2lvbkJveEFycmF5XCIsXCJmZWF0dXJlc1wiLFwiY29tcGFyZVRleHRcIl19KSxkYy5NQVhfR0xZUEhTPTY1NTM1LGRjLmFkZER5bmFtaWNBdHRyaWJ1dGVzPWNjO3ZhciBnYz17Z2V0IHBhaW50KCl7cmV0dXJuIG1jPW1jfHxuZXcgcnMoe1wiaWNvbi1vcGFjaXR5XCI6bmV3IFdpKEcucGFpbnRfc3ltYm9sW1wiaWNvbi1vcGFjaXR5XCJdKSxcImljb24tY29sb3JcIjpuZXcgV2koRy5wYWludF9zeW1ib2xbXCJpY29uLWNvbG9yXCJdKSxcImljb24taGFsby1jb2xvclwiOm5ldyBXaShHLnBhaW50X3N5bWJvbFtcImljb24taGFsby1jb2xvclwiXSksXCJpY29uLWhhbG8td2lkdGhcIjpuZXcgV2koRy5wYWludF9zeW1ib2xbXCJpY29uLWhhbG8td2lkdGhcIl0pLFwiaWNvbi1oYWxvLWJsdXJcIjpuZXcgV2koRy5wYWludF9zeW1ib2xbXCJpY29uLWhhbG8tYmx1clwiXSksXCJpY29uLXRyYW5zbGF0ZVwiOm5ldyBKaShHLnBhaW50X3N5bWJvbFtcImljb24tdHJhbnNsYXRlXCJdKSxcImljb24tdHJhbnNsYXRlLWFuY2hvclwiOm5ldyBKaShHLnBhaW50X3N5bWJvbFtcImljb24tdHJhbnNsYXRlLWFuY2hvclwiXSksXCJ0ZXh0LW9wYWNpdHlcIjpuZXcgV2koRy5wYWludF9zeW1ib2xbXCJ0ZXh0LW9wYWNpdHlcIl0pLFwidGV4dC1jb2xvclwiOm5ldyBXaShHLnBhaW50X3N5bWJvbFtcInRleHQtY29sb3JcIl0se3J1bnRpbWVUeXBlOnB0LGdldE92ZXJyaWRlOnQ9PnQudGV4dENvbG9yLGhhc092ZXJyaWRlOnQ9PiEhdC50ZXh0Q29sb3J9KSxcInRleHQtaGFsby1jb2xvclwiOm5ldyBXaShHLnBhaW50X3N5bWJvbFtcInRleHQtaGFsby1jb2xvclwiXSksXCJ0ZXh0LWhhbG8td2lkdGhcIjpuZXcgV2koRy5wYWludF9zeW1ib2xbXCJ0ZXh0LWhhbG8td2lkdGhcIl0pLFwidGV4dC1oYWxvLWJsdXJcIjpuZXcgV2koRy5wYWludF9zeW1ib2xbXCJ0ZXh0LWhhbG8tYmx1clwiXSksXCJ0ZXh0LXRyYW5zbGF0ZVwiOm5ldyBKaShHLnBhaW50X3N5bWJvbFtcInRleHQtdHJhbnNsYXRlXCJdKSxcInRleHQtdHJhbnNsYXRlLWFuY2hvclwiOm5ldyBKaShHLnBhaW50X3N5bWJvbFtcInRleHQtdHJhbnNsYXRlLWFuY2hvclwiXSl9KX0sZ2V0IGxheW91dCgpe3JldHVybiB5Yz15Y3x8bmV3IHJzKHtcInN5bWJvbC1wbGFjZW1lbnRcIjpuZXcgSmkoRy5sYXlvdXRfc3ltYm9sW1wic3ltYm9sLXBsYWNlbWVudFwiXSksXCJzeW1ib2wtc3BhY2luZ1wiOm5ldyBKaShHLmxheW91dF9zeW1ib2xbXCJzeW1ib2wtc3BhY2luZ1wiXSksXCJzeW1ib2wtYXZvaWQtZWRnZXNcIjpuZXcgSmkoRy5sYXlvdXRfc3ltYm9sW1wic3ltYm9sLWF2b2lkLWVkZ2VzXCJdKSxcInN5bWJvbC1zb3J0LWtleVwiOm5ldyBXaShHLmxheW91dF9zeW1ib2xbXCJzeW1ib2wtc29ydC1rZXlcIl0pLFwic3ltYm9sLXotb3JkZXJcIjpuZXcgSmkoRy5sYXlvdXRfc3ltYm9sW1wic3ltYm9sLXotb3JkZXJcIl0pLFwiaWNvbi1hbGxvdy1vdmVybGFwXCI6bmV3IEppKEcubGF5b3V0X3N5bWJvbFtcImljb24tYWxsb3ctb3ZlcmxhcFwiXSksXCJpY29uLW92ZXJsYXBcIjpuZXcgSmkoRy5sYXlvdXRfc3ltYm9sW1wiaWNvbi1vdmVybGFwXCJdKSxcImljb24taWdub3JlLXBsYWNlbWVudFwiOm5ldyBKaShHLmxheW91dF9zeW1ib2xbXCJpY29uLWlnbm9yZS1wbGFjZW1lbnRcIl0pLFwiaWNvbi1vcHRpb25hbFwiOm5ldyBKaShHLmxheW91dF9zeW1ib2xbXCJpY29uLW9wdGlvbmFsXCJdKSxcImljb24tcm90YXRpb24tYWxpZ25tZW50XCI6bmV3IEppKEcubGF5b3V0X3N5bWJvbFtcImljb24tcm90YXRpb24tYWxpZ25tZW50XCJdKSxcImljb24tc2l6ZVwiOm5ldyBXaShHLmxheW91dF9zeW1ib2xbXCJpY29uLXNpemVcIl0pLFwiaWNvbi10ZXh0LWZpdFwiOm5ldyBKaShHLmxheW91dF9zeW1ib2xbXCJpY29uLXRleHQtZml0XCJdKSxcImljb24tdGV4dC1maXQtcGFkZGluZ1wiOm5ldyBKaShHLmxheW91dF9zeW1ib2xbXCJpY29uLXRleHQtZml0LXBhZGRpbmdcIl0pLFwiaWNvbi1pbWFnZVwiOm5ldyBXaShHLmxheW91dF9zeW1ib2xbXCJpY29uLWltYWdlXCJdKSxcImljb24tcm90YXRlXCI6bmV3IFdpKEcubGF5b3V0X3N5bWJvbFtcImljb24tcm90YXRlXCJdKSxcImljb24tcGFkZGluZ1wiOm5ldyBXaShHLmxheW91dF9zeW1ib2xbXCJpY29uLXBhZGRpbmdcIl0pLFwiaWNvbi1rZWVwLXVwcmlnaHRcIjpuZXcgSmkoRy5sYXlvdXRfc3ltYm9sW1wiaWNvbi1rZWVwLXVwcmlnaHRcIl0pLFwiaWNvbi1vZmZzZXRcIjpuZXcgV2koRy5sYXlvdXRfc3ltYm9sW1wiaWNvbi1vZmZzZXRcIl0pLFwiaWNvbi1hbmNob3JcIjpuZXcgV2koRy5sYXlvdXRfc3ltYm9sW1wiaWNvbi1hbmNob3JcIl0pLFwiaWNvbi1waXRjaC1hbGlnbm1lbnRcIjpuZXcgSmkoRy5sYXlvdXRfc3ltYm9sW1wiaWNvbi1waXRjaC1hbGlnbm1lbnRcIl0pLFwidGV4dC1waXRjaC1hbGlnbm1lbnRcIjpuZXcgSmkoRy5sYXlvdXRfc3ltYm9sW1widGV4dC1waXRjaC1hbGlnbm1lbnRcIl0pLFwidGV4dC1yb3RhdGlvbi1hbGlnbm1lbnRcIjpuZXcgSmkoRy5sYXlvdXRfc3ltYm9sW1widGV4dC1yb3RhdGlvbi1hbGlnbm1lbnRcIl0pLFwidGV4dC1maWVsZFwiOm5ldyBXaShHLmxheW91dF9zeW1ib2xbXCJ0ZXh0LWZpZWxkXCJdKSxcInRleHQtZm9udFwiOm5ldyBXaShHLmxheW91dF9zeW1ib2xbXCJ0ZXh0LWZvbnRcIl0pLFwidGV4dC1zaXplXCI6bmV3IFdpKEcubGF5b3V0X3N5bWJvbFtcInRleHQtc2l6ZVwiXSksXCJ0ZXh0LW1heC13aWR0aFwiOm5ldyBXaShHLmxheW91dF9zeW1ib2xbXCJ0ZXh0LW1heC13aWR0aFwiXSksXCJ0ZXh0LWxpbmUtaGVpZ2h0XCI6bmV3IEppKEcubGF5b3V0X3N5bWJvbFtcInRleHQtbGluZS1oZWlnaHRcIl0pLFwidGV4dC1sZXR0ZXItc3BhY2luZ1wiOm5ldyBXaShHLmxheW91dF9zeW1ib2xbXCJ0ZXh0LWxldHRlci1zcGFjaW5nXCJdKSxcInRleHQtanVzdGlmeVwiOm5ldyBXaShHLmxheW91dF9zeW1ib2xbXCJ0ZXh0LWp1c3RpZnlcIl0pLFwidGV4dC1yYWRpYWwtb2Zmc2V0XCI6bmV3IFdpKEcubGF5b3V0X3N5bWJvbFtcInRleHQtcmFkaWFsLW9mZnNldFwiXSksXCJ0ZXh0LXZhcmlhYmxlLWFuY2hvclwiOm5ldyBKaShHLmxheW91dF9zeW1ib2xbXCJ0ZXh0LXZhcmlhYmxlLWFuY2hvclwiXSksXCJ0ZXh0LXZhcmlhYmxlLWFuY2hvci1vZmZzZXRcIjpuZXcgV2koRy5sYXlvdXRfc3ltYm9sW1widGV4dC12YXJpYWJsZS1hbmNob3Itb2Zmc2V0XCJdKSxcInRleHQtYW5jaG9yXCI6bmV3IFdpKEcubGF5b3V0X3N5bWJvbFtcInRleHQtYW5jaG9yXCJdKSxcInRleHQtbWF4LWFuZ2xlXCI6bmV3IEppKEcubGF5b3V0X3N5bWJvbFtcInRleHQtbWF4LWFuZ2xlXCJdKSxcInRleHQtd3JpdGluZy1tb2RlXCI6bmV3IEppKEcubGF5b3V0X3N5bWJvbFtcInRleHQtd3JpdGluZy1tb2RlXCJdKSxcInRleHQtcm90YXRlXCI6bmV3IFdpKEcubGF5b3V0X3N5bWJvbFtcInRleHQtcm90YXRlXCJdKSxcInRleHQtcGFkZGluZ1wiOm5ldyBKaShHLmxheW91dF9zeW1ib2xbXCJ0ZXh0LXBhZGRpbmdcIl0pLFwidGV4dC1rZWVwLXVwcmlnaHRcIjpuZXcgSmkoRy5sYXlvdXRfc3ltYm9sW1widGV4dC1rZWVwLXVwcmlnaHRcIl0pLFwidGV4dC10cmFuc2Zvcm1cIjpuZXcgV2koRy5sYXlvdXRfc3ltYm9sW1widGV4dC10cmFuc2Zvcm1cIl0pLFwidGV4dC1vZmZzZXRcIjpuZXcgV2koRy5sYXlvdXRfc3ltYm9sW1widGV4dC1vZmZzZXRcIl0pLFwidGV4dC1hbGxvdy1vdmVybGFwXCI6bmV3IEppKEcubGF5b3V0X3N5bWJvbFtcInRleHQtYWxsb3ctb3ZlcmxhcFwiXSksXCJ0ZXh0LW92ZXJsYXBcIjpuZXcgSmkoRy5sYXlvdXRfc3ltYm9sW1widGV4dC1vdmVybGFwXCJdKSxcInRleHQtaWdub3JlLXBsYWNlbWVudFwiOm5ldyBKaShHLmxheW91dF9zeW1ib2xbXCJ0ZXh0LWlnbm9yZS1wbGFjZW1lbnRcIl0pLFwidGV4dC1vcHRpb25hbFwiOm5ldyBKaShHLmxheW91dF9zeW1ib2xbXCJ0ZXh0LW9wdGlvbmFsXCJdKX0pfX07Y2xhc3MgeGN7Y29uc3RydWN0b3IodCl7aWYodm9pZCAwPT09dC5wcm9wZXJ0eS5vdmVycmlkZXMpdGhyb3cgbmV3IEVycm9yKFwib3ZlcnJpZGVzIG11c3QgYmUgcHJvdmlkZWQgdG8gaW5zdGFudGlhdGUgRm9ybWF0U2VjdGlvbk92ZXJyaWRlIGNsYXNzXCIpO3RoaXMudHlwZT10LnByb3BlcnR5Lm92ZXJyaWRlcz90LnByb3BlcnR5Lm92ZXJyaWRlcy5ydW50aW1lVHlwZTpsdCx0aGlzLmRlZmF1bHRWYWx1ZT10O31ldmFsdWF0ZSh0KXtpZih0LmZvcm1hdHRlZFNlY3Rpb24pe2NvbnN0IGU9dGhpcy5kZWZhdWx0VmFsdWUucHJvcGVydHkub3ZlcnJpZGVzO2lmKGUmJmUuaGFzT3ZlcnJpZGUodC5mb3JtYXR0ZWRTZWN0aW9uKSlyZXR1cm4gZS5nZXRPdmVycmlkZSh0LmZvcm1hdHRlZFNlY3Rpb24pfXJldHVybiB0LmZlYXR1cmUmJnQuZmVhdHVyZVN0YXRlP3RoaXMuZGVmYXVsdFZhbHVlLmV2YWx1YXRlKHQuZmVhdHVyZSx0LmZlYXR1cmVTdGF0ZSk6dGhpcy5kZWZhdWx0VmFsdWUucHJvcGVydHkuc3BlY2lmaWNhdGlvbi5kZWZhdWx0fWVhY2hDaGlsZCh0KXt0aGlzLmRlZmF1bHRWYWx1ZS5pc0NvbnN0YW50KCl8fHQodGhpcy5kZWZhdWx0VmFsdWUudmFsdWUuX3N0eWxlRXhwcmVzc2lvbi5leHByZXNzaW9uKTt9b3V0cHV0RGVmaW5lZCgpe3JldHVybiAhMX1zZXJpYWxpemUoKXtyZXR1cm4gbnVsbH19d2koXCJGb3JtYXRTZWN0aW9uT3ZlcnJpZGVcIix4Yyx7b21pdDpbXCJkZWZhdWx0VmFsdWVcIl19KTtjbGFzcyB2YyBleHRlbmRzIGlze2NvbnN0cnVjdG9yKHQpe3N1cGVyKHQsZ2MpO31yZWNhbGN1bGF0ZSh0LGUpe2lmKHN1cGVyLnJlY2FsY3VsYXRlKHQsZSksXCJhdXRvXCI9PT10aGlzLmxheW91dC5nZXQoXCJpY29uLXJvdGF0aW9uLWFsaWdubWVudFwiKSYmKHRoaXMubGF5b3V0Ll92YWx1ZXNbXCJpY29uLXJvdGF0aW9uLWFsaWdubWVudFwiXT1cInBvaW50XCIhPT10aGlzLmxheW91dC5nZXQoXCJzeW1ib2wtcGxhY2VtZW50XCIpP1wibWFwXCI6XCJ2aWV3cG9ydFwiKSxcImF1dG9cIj09PXRoaXMubGF5b3V0LmdldChcInRleHQtcm90YXRpb24tYWxpZ25tZW50XCIpJiYodGhpcy5sYXlvdXQuX3ZhbHVlc1tcInRleHQtcm90YXRpb24tYWxpZ25tZW50XCJdPVwicG9pbnRcIiE9PXRoaXMubGF5b3V0LmdldChcInN5bWJvbC1wbGFjZW1lbnRcIik/XCJtYXBcIjpcInZpZXdwb3J0XCIpLFwiYXV0b1wiPT09dGhpcy5sYXlvdXQuZ2V0KFwidGV4dC1waXRjaC1hbGlnbm1lbnRcIikmJih0aGlzLmxheW91dC5fdmFsdWVzW1widGV4dC1waXRjaC1hbGlnbm1lbnRcIl09XCJtYXBcIj09PXRoaXMubGF5b3V0LmdldChcInRleHQtcm90YXRpb24tYWxpZ25tZW50XCIpP1wibWFwXCI6XCJ2aWV3cG9ydFwiKSxcImF1dG9cIj09PXRoaXMubGF5b3V0LmdldChcImljb24tcGl0Y2gtYWxpZ25tZW50XCIpJiYodGhpcy5sYXlvdXQuX3ZhbHVlc1tcImljb24tcGl0Y2gtYWxpZ25tZW50XCJdPXRoaXMubGF5b3V0LmdldChcImljb24tcm90YXRpb24tYWxpZ25tZW50XCIpKSxcInBvaW50XCI9PT10aGlzLmxheW91dC5nZXQoXCJzeW1ib2wtcGxhY2VtZW50XCIpKXtjb25zdCB0PXRoaXMubGF5b3V0LmdldChcInRleHQtd3JpdGluZy1tb2RlXCIpO2lmKHQpe2NvbnN0IGU9W107Zm9yKGNvbnN0IHIgb2YgdCllLmluZGV4T2Yocik8MCYmZS5wdXNoKHIpO3RoaXMubGF5b3V0Ll92YWx1ZXNbXCJ0ZXh0LXdyaXRpbmctbW9kZVwiXT1lO31lbHNlIHRoaXMubGF5b3V0Ll92YWx1ZXNbXCJ0ZXh0LXdyaXRpbmctbW9kZVwiXT1bXCJob3Jpem9udGFsXCJdO310aGlzLl9zZXRQYWludE92ZXJyaWRlcygpO31nZXRWYWx1ZUFuZFJlc29sdmVUb2tlbnModCxlLHIsbil7Y29uc3QgaT10aGlzLmxheW91dC5nZXQodCkuZXZhbHVhdGUoZSx7fSxyLG4pLHM9dGhpcy5fdW5ldmFsdWF0ZWRMYXlvdXQuX3ZhbHVlc1t0XTtyZXR1cm4gcy5pc0RhdGFEcml2ZW4oKXx8dm4ocy52YWx1ZSl8fCFpP2k6ZnVuY3Rpb24odCxlKXtyZXR1cm4gZS5yZXBsYWNlKC97KFtee31dKyl9L2csKChlLHIpPT50JiZyIGluIHQ/U3RyaW5nKHRbcl0pOlwiXCIpKX0oZS5wcm9wZXJ0aWVzLGkpfWNyZWF0ZUJ1Y2tldCh0KXtyZXR1cm4gbmV3IGRjKHQpfXF1ZXJ5UmFkaXVzKCl7cmV0dXJuIDB9cXVlcnlJbnRlcnNlY3RzRmVhdHVyZSgpe3Rocm93IG5ldyBFcnJvcihcIlNob3VsZCB0YWtlIGEgZGlmZmVyZW50IHBhdGggaW4gRmVhdHVyZUluZGV4XCIpfV9zZXRQYWludE92ZXJyaWRlcygpe2Zvcihjb25zdCB0IG9mIGdjLnBhaW50Lm92ZXJyaWRhYmxlUHJvcGVydGllcyl7aWYoIXZjLmhhc1BhaW50T3ZlcnJpZGUodGhpcy5sYXlvdXQsdCkpY29udGludWU7Y29uc3QgZT10aGlzLnBhaW50LmdldCh0KSxyPW5ldyB4YyhlKSxuPW5ldyB4bihyLGUucHJvcGVydHkuc3BlY2lmaWNhdGlvbik7bGV0IGk9bnVsbDtpPVwiY29uc3RhbnRcIj09PWUudmFsdWUua2luZHx8XCJzb3VyY2VcIj09PWUudmFsdWUua2luZD9uZXcgd24oXCJzb3VyY2VcIixuKTpuZXcgX24oXCJjb21wb3NpdGVcIixuLGUudmFsdWUuem9vbVN0b3BzKSx0aGlzLnBhaW50Ll92YWx1ZXNbdF09bmV3IEhpKGUucHJvcGVydHksaSxlLnBhcmFtZXRlcnMpO319X2hhbmRsZU92ZXJyaWRhYmxlUGFpbnRQcm9wZXJ0eVVwZGF0ZSh0LGUscil7cmV0dXJuICEoIXRoaXMubGF5b3V0fHxlLmlzRGF0YURyaXZlbigpfHxyLmlzRGF0YURyaXZlbigpKSYmdmMuaGFzUGFpbnRPdmVycmlkZSh0aGlzLmxheW91dCx0KX1zdGF0aWMgaGFzUGFpbnRPdmVycmlkZSh0LGUpe2NvbnN0IHI9dC5nZXQoXCJ0ZXh0LWZpZWxkXCIpLG49Z2MucGFpbnQucHJvcGVydGllc1tlXTtsZXQgaT0hMTtjb25zdCBzPXQ9Pntmb3IoY29uc3QgZSBvZiB0KWlmKG4ub3ZlcnJpZGVzJiZuLm92ZXJyaWRlcy5oYXNPdmVycmlkZShlKSlyZXR1cm4gdm9pZChpPSEwKX07aWYoXCJjb25zdGFudFwiPT09ci52YWx1ZS5raW5kJiZyLnZhbHVlLnZhbHVlIGluc3RhbmNlb2YgWXQpcyhyLnZhbHVlLnZhbHVlLnNlY3Rpb25zKTtlbHNlIGlmKFwic291cmNlXCI9PT1yLnZhbHVlLmtpbmQpe2NvbnN0IHQ9ZT0+e2l8fChlIGluc3RhbmNlb2Ygc2UmJm5lKGUudmFsdWUpPT09bXQ/cyhlLnZhbHVlLnNlY3Rpb25zKTplIGluc3RhbmNlb2YgWmU/cyhlLnNlY3Rpb25zKTplLmVhY2hDaGlsZCh0KSk7fSxlPXIudmFsdWU7ZS5fc3R5bGVFeHByZXNzaW9uJiZ0KGUuX3N0eWxlRXhwcmVzc2lvbi5leHByZXNzaW9uKTt9cmV0dXJuIGl9fWxldCBiYzt2YXIgd2M9e2dldCBwYWludCgpe3JldHVybiBiYz1iY3x8bmV3IHJzKHtcImJhY2tncm91bmQtY29sb3JcIjpuZXcgSmkoRy5wYWludF9iYWNrZ3JvdW5kW1wiYmFja2dyb3VuZC1jb2xvclwiXSksXCJiYWNrZ3JvdW5kLXBhdHRlcm5cIjpuZXcgdHMoRy5wYWludF9iYWNrZ3JvdW5kW1wiYmFja2dyb3VuZC1wYXR0ZXJuXCJdKSxcImJhY2tncm91bmQtb3BhY2l0eVwiOm5ldyBKaShHLnBhaW50X2JhY2tncm91bmRbXCJiYWNrZ3JvdW5kLW9wYWNpdHlcIl0pfSl9fTtjbGFzcyBfYyBleHRlbmRzIGlze2NvbnN0cnVjdG9yKHQpe3N1cGVyKHQsd2MpO319bGV0IEFjO3ZhciBTYz17Z2V0IHBhaW50KCl7cmV0dXJuIEFjPUFjfHxuZXcgcnMoe1wicmFzdGVyLW9wYWNpdHlcIjpuZXcgSmkoRy5wYWludF9yYXN0ZXJbXCJyYXN0ZXItb3BhY2l0eVwiXSksXCJyYXN0ZXItaHVlLXJvdGF0ZVwiOm5ldyBKaShHLnBhaW50X3Jhc3RlcltcInJhc3Rlci1odWUtcm90YXRlXCJdKSxcInJhc3Rlci1icmlnaHRuZXNzLW1pblwiOm5ldyBKaShHLnBhaW50X3Jhc3RlcltcInJhc3Rlci1icmlnaHRuZXNzLW1pblwiXSksXCJyYXN0ZXItYnJpZ2h0bmVzcy1tYXhcIjpuZXcgSmkoRy5wYWludF9yYXN0ZXJbXCJyYXN0ZXItYnJpZ2h0bmVzcy1tYXhcIl0pLFwicmFzdGVyLXNhdHVyYXRpb25cIjpuZXcgSmkoRy5wYWludF9yYXN0ZXJbXCJyYXN0ZXItc2F0dXJhdGlvblwiXSksXCJyYXN0ZXItY29udHJhc3RcIjpuZXcgSmkoRy5wYWludF9yYXN0ZXJbXCJyYXN0ZXItY29udHJhc3RcIl0pLFwicmFzdGVyLXJlc2FtcGxpbmdcIjpuZXcgSmkoRy5wYWludF9yYXN0ZXJbXCJyYXN0ZXItcmVzYW1wbGluZ1wiXSksXCJyYXN0ZXItZmFkZS1kdXJhdGlvblwiOm5ldyBKaShHLnBhaW50X3Jhc3RlcltcInJhc3Rlci1mYWRlLWR1cmF0aW9uXCJdKX0pfX07Y2xhc3Mga2MgZXh0ZW5kcyBpc3tjb25zdHJ1Y3Rvcih0KXtzdXBlcih0LFNjKTt9fWNsYXNzIE1jIGV4dGVuZHMgaXN7Y29uc3RydWN0b3IodCl7c3VwZXIodCx7fSksdGhpcy5vbkFkZD10PT57dGhpcy5pbXBsZW1lbnRhdGlvbi5vbkFkZCYmdGhpcy5pbXBsZW1lbnRhdGlvbi5vbkFkZCh0LHQucGFpbnRlci5jb250ZXh0LmdsKTt9LHRoaXMub25SZW1vdmU9dD0+e3RoaXMuaW1wbGVtZW50YXRpb24ub25SZW1vdmUmJnRoaXMuaW1wbGVtZW50YXRpb24ub25SZW1vdmUodCx0LnBhaW50ZXIuY29udGV4dC5nbCk7fSx0aGlzLmltcGxlbWVudGF0aW9uPXQ7fWlzM0QoKXtyZXR1cm4gXCIzZFwiPT09dGhpcy5pbXBsZW1lbnRhdGlvbi5yZW5kZXJpbmdNb2RlfWhhc09mZnNjcmVlblBhc3MoKXtyZXR1cm4gdm9pZCAwIT09dGhpcy5pbXBsZW1lbnRhdGlvbi5wcmVyZW5kZXJ9cmVjYWxjdWxhdGUoKXt9dXBkYXRlVHJhbnNpdGlvbnMoKXt9aGFzVHJhbnNpdGlvbigpe3JldHVybiAhMX1zZXJpYWxpemUoKXt0aHJvdyBuZXcgRXJyb3IoXCJDdXN0b20gbGF5ZXJzIGNhbm5vdCBiZSBzZXJpYWxpemVkXCIpfX1jbGFzcyBJY3tjb25zdHJ1Y3Rvcih0KXt0aGlzLl9tZXRob2RUb1Rocm90dGxlPXQsdGhpcy5fdHJpZ2dlcmVkPSExLFwidW5kZWZpbmVkXCIhPXR5cGVvZiBNZXNzYWdlQ2hhbm5lbCYmKHRoaXMuX2NoYW5uZWw9bmV3IE1lc3NhZ2VDaGFubmVsLHRoaXMuX2NoYW5uZWwucG9ydDIub25tZXNzYWdlPSgpPT57dGhpcy5fdHJpZ2dlcmVkPSExLHRoaXMuX21ldGhvZFRvVGhyb3R0bGUoKTt9KTt9dHJpZ2dlcigpe3RoaXMuX3RyaWdnZXJlZHx8KHRoaXMuX3RyaWdnZXJlZD0hMCx0aGlzLl9jaGFubmVsP3RoaXMuX2NoYW5uZWwucG9ydDEucG9zdE1lc3NhZ2UoITApOnNldFRpbWVvdXQoKCgpPT57dGhpcy5fdHJpZ2dlcmVkPSExLHRoaXMuX21ldGhvZFRvVGhyb3R0bGUoKTt9KSwwKSk7fXJlbW92ZSgpe2RlbGV0ZSB0aGlzLl9jaGFubmVsLHRoaXMuX21ldGhvZFRvVGhyb3R0bGU9KCk9Pnt9O319Y29uc3QgemM9NjM3MTAwOC44O2NsYXNzIFBje2NvbnN0cnVjdG9yKHQsZSl7aWYoaXNOYU4odCl8fGlzTmFOKGUpKXRocm93IG5ldyBFcnJvcihgSW52YWxpZCBMbmdMYXQgb2JqZWN0OiAoJHt0fSwgJHtlfSlgKTtpZih0aGlzLmxuZz0rdCx0aGlzLmxhdD0rZSx0aGlzLmxhdD45MHx8dGhpcy5sYXQ8LTkwKXRocm93IG5ldyBFcnJvcihcIkludmFsaWQgTG5nTGF0IGxhdGl0dWRlIHZhbHVlOiBtdXN0IGJlIGJldHdlZW4gLTkwIGFuZCA5MFwiKX13cmFwKCl7cmV0dXJuIG5ldyBQYyhtKHRoaXMubG5nLC0xODAsMTgwKSx0aGlzLmxhdCl9dG9BcnJheSgpe3JldHVybiBbdGhpcy5sbmcsdGhpcy5sYXRdfXRvU3RyaW5nKCl7cmV0dXJuIGBMbmdMYXQoJHt0aGlzLmxuZ30sICR7dGhpcy5sYXR9KWB9ZGlzdGFuY2VUbyh0KXtjb25zdCBlPU1hdGguUEkvMTgwLHI9dGhpcy5sYXQqZSxuPXQubGF0KmUsaT1NYXRoLnNpbihyKSpNYXRoLnNpbihuKStNYXRoLmNvcyhyKSpNYXRoLmNvcyhuKSpNYXRoLmNvcygodC5sbmctdGhpcy5sbmcpKmUpO3JldHVybiB6YypNYXRoLmFjb3MoTWF0aC5taW4oaSwxKSl9c3RhdGljIGNvbnZlcnQodCl7aWYodCBpbnN0YW5jZW9mIFBjKXJldHVybiB0O2lmKEFycmF5LmlzQXJyYXkodCkmJigyPT09dC5sZW5ndGh8fDM9PT10Lmxlbmd0aCkpcmV0dXJuIG5ldyBQYyhOdW1iZXIodFswXSksTnVtYmVyKHRbMV0pKTtpZighQXJyYXkuaXNBcnJheSh0KSYmXCJvYmplY3RcIj09dHlwZW9mIHQmJm51bGwhPT10KXJldHVybiBuZXcgUGMoTnVtYmVyKFwibG5nXCJpbiB0P3QubG5nOnQubG9uKSxOdW1iZXIodC5sYXQpKTt0aHJvdyBuZXcgRXJyb3IoXCJgTG5nTGF0TGlrZWAgYXJndW1lbnQgbXVzdCBiZSBzcGVjaWZpZWQgYXMgYSBMbmdMYXQgaW5zdGFuY2UsIGFuIG9iamVjdCB7bG5nOiA8bG5nPiwgbGF0OiA8bGF0Pn0sIGFuIG9iamVjdCB7bG9uOiA8bG5nPiwgbGF0OiA8bGF0Pn0sIG9yIGFuIGFycmF5IG9mIFs8bG5nPiwgPGxhdD5dXCIpfX1jb25zdCBDYz0yKk1hdGguUEkqemM7ZnVuY3Rpb24gQmModCl7cmV0dXJuIENjKk1hdGguY29zKHQqTWF0aC5QSS8xODApfWZ1bmN0aW9uIFZjKHQpe3JldHVybiAoMTgwK3QpLzM2MH1mdW5jdGlvbiBFYyh0KXtyZXR1cm4gKDE4MC0xODAvTWF0aC5QSSpNYXRoLmxvZyhNYXRoLnRhbihNYXRoLlBJLzQrdCpNYXRoLlBJLzM2MCkpKS8zNjB9ZnVuY3Rpb24gRmModCxlKXtyZXR1cm4gdC9CYyhlKX1mdW5jdGlvbiBUYyh0KXtyZXR1cm4gMzYwL01hdGguUEkqTWF0aC5hdGFuKE1hdGguZXhwKCgxODAtMzYwKnQpKk1hdGguUEkvMTgwKSktOTB9Y2xhc3MgJGN7Y29uc3RydWN0b3IodCxlLHI9MCl7dGhpcy54PSt0LHRoaXMueT0rZSx0aGlzLno9K3I7fXN0YXRpYyBmcm9tTG5nTGF0KHQsZT0wKXtjb25zdCByPVBjLmNvbnZlcnQodCk7cmV0dXJuIG5ldyAkYyhWYyhyLmxuZyksRWMoci5sYXQpLEZjKGUsci5sYXQpKX10b0xuZ0xhdCgpe3JldHVybiBuZXcgUGMoMzYwKnRoaXMueC0xODAsVGModGhpcy55KSl9dG9BbHRpdHVkZSgpe3JldHVybiB0aGlzLnoqQmMoVGModGhpcy55KSl9bWV0ZXJJbk1lcmNhdG9yQ29vcmRpbmF0ZVVuaXRzKCl7cmV0dXJuIDEvQ2MqKHQ9VGModGhpcy55KSwxL01hdGguY29zKHQqTWF0aC5QSS8xODApKTt2YXIgdDt9fWZ1bmN0aW9uIExjKHQsZSxyKXt2YXIgbj0yKk1hdGguUEkqNjM3ODEzNy8yNTYvTWF0aC5wb3coMixyKTtyZXR1cm4gW3Qqbi0yKk1hdGguUEkqNjM3ODEzNy8yLGUqbi0yKk1hdGguUEkqNjM3ODEzNy8yXX1jbGFzcyBEY3tjb25zdHJ1Y3Rvcih0LGUscil7aWYoIWZ1bmN0aW9uKHQsZSxyKXtyZXR1cm4gISh0PDB8fHQ+MjV8fHI8MHx8cj49TWF0aC5wb3coMix0KXx8ZTwwfHxlPj1NYXRoLnBvdygyLHQpKX0odCxlLHIpKXRocm93IG5ldyBFcnJvcihgeD0ke2V9LCB5PSR7cn0sIHo9JHt0fSBvdXRzaWRlIG9mIGJvdW5kcy4gMDw9eDwke01hdGgucG93KDIsdCl9LCAwPD15PCR7TWF0aC5wb3coMix0KX0gMDw9ejw9MjUgYCk7dGhpcy56PXQsdGhpcy54PWUsdGhpcy55PXIsdGhpcy5rZXk9UmMoMCx0LHQsZSxyKTt9ZXF1YWxzKHQpe3JldHVybiB0aGlzLno9PT10LnomJnRoaXMueD09PXQueCYmdGhpcy55PT09dC55fXVybCh0LGUscil7Y29uc3Qgbj0ocz10aGlzLnksYT10aGlzLnosbz1MYygyNTYqKGk9dGhpcy54KSwyNTYqKHM9TWF0aC5wb3coMixhKS1zLTEpLGEpLGw9TGMoMjU2KihpKzEpLDI1NioocysxKSxhKSxvWzBdK1wiLFwiK29bMV0rXCIsXCIrbFswXStcIixcIitsWzFdKTt2YXIgaSxzLGEsbyxsO2NvbnN0IHU9ZnVuY3Rpb24odCxlLHIpe2xldCBuLGk9XCJcIjtmb3IobGV0IHM9dDtzPjA7cy0tKW49MTw8cy0xLGkrPShlJm4/MTowKSsociZuPzI6MCk7cmV0dXJuIGl9KHRoaXMueix0aGlzLngsdGhpcy55KTtyZXR1cm4gdFsodGhpcy54K3RoaXMueSkldC5sZW5ndGhdLnJlcGxhY2UoL3twcmVmaXh9L2csKHRoaXMueCUxNikudG9TdHJpbmcoMTYpKyh0aGlzLnklMTYpLnRvU3RyaW5nKDE2KSkucmVwbGFjZSgve3p9L2csU3RyaW5nKHRoaXMueikpLnJlcGxhY2UoL3t4fS9nLFN0cmluZyh0aGlzLngpKS5yZXBsYWNlKC97eX0vZyxTdHJpbmcoXCJ0bXNcIj09PXI/TWF0aC5wb3coMix0aGlzLnopLXRoaXMueS0xOnRoaXMueSkpLnJlcGxhY2UoL3tyYXRpb30vZyxlPjE/XCJAMnhcIjpcIlwiKS5yZXBsYWNlKC97cXVhZGtleX0vZyx1KS5yZXBsYWNlKC97YmJveC1lcHNnLTM4NTd9L2csbil9aXNDaGlsZE9mKHQpe2NvbnN0IGU9dGhpcy56LXQuejtyZXR1cm4gZT4wJiZ0Lng9PT10aGlzLng+PmUmJnQueT09PXRoaXMueT4+ZX1nZXRUaWxlUG9pbnQodCl7Y29uc3QgZT1NYXRoLnBvdygyLHRoaXMueik7cmV0dXJuIG5ldyBzKCh0LngqZS10aGlzLngpKiRhLCh0LnkqZS10aGlzLnkpKiRhKX10b1N0cmluZygpe3JldHVybiBgJHt0aGlzLnp9LyR7dGhpcy54fS8ke3RoaXMueX1gfX1jbGFzcyBPY3tjb25zdHJ1Y3Rvcih0LGUpe3RoaXMud3JhcD10LHRoaXMuY2Fub25pY2FsPWUsdGhpcy5rZXk9UmModCxlLnosZS56LGUueCxlLnkpO319Y2xhc3MgamN7Y29uc3RydWN0b3IodCxlLHIsbixpKXtpZih0PHIpdGhyb3cgbmV3IEVycm9yKGBvdmVyc2NhbGVkWiBzaG91bGQgYmUgPj0gejsgb3ZlcnNjYWxlZFogPSAke3R9OyB6ID0gJHtyfWApO3RoaXMub3ZlcnNjYWxlZFo9dCx0aGlzLndyYXA9ZSx0aGlzLmNhbm9uaWNhbD1uZXcgRGMociwrbiwraSksdGhpcy5rZXk9UmMoZSx0LHIsbixpKTt9Y2xvbmUoKXtyZXR1cm4gbmV3IGpjKHRoaXMub3ZlcnNjYWxlZFosdGhpcy53cmFwLHRoaXMuY2Fub25pY2FsLnosdGhpcy5jYW5vbmljYWwueCx0aGlzLmNhbm9uaWNhbC55KX1lcXVhbHModCl7cmV0dXJuIHRoaXMub3ZlcnNjYWxlZFo9PT10Lm92ZXJzY2FsZWRaJiZ0aGlzLndyYXA9PT10LndyYXAmJnRoaXMuY2Fub25pY2FsLmVxdWFscyh0LmNhbm9uaWNhbCl9c2NhbGVkVG8odCl7aWYodD50aGlzLm92ZXJzY2FsZWRaKXRocm93IG5ldyBFcnJvcihgdGFyZ2V0WiA+IHRoaXMub3ZlcnNjYWxlZFo7IHRhcmdldFogPSAke3R9OyBvdmVyc2NhbGVkWiA9ICR7dGhpcy5vdmVyc2NhbGVkWn1gKTtjb25zdCBlPXRoaXMuY2Fub25pY2FsLnotdDtyZXR1cm4gdD50aGlzLmNhbm9uaWNhbC56P25ldyBqYyh0LHRoaXMud3JhcCx0aGlzLmNhbm9uaWNhbC56LHRoaXMuY2Fub25pY2FsLngsdGhpcy5jYW5vbmljYWwueSk6bmV3IGpjKHQsdGhpcy53cmFwLHQsdGhpcy5jYW5vbmljYWwueD4+ZSx0aGlzLmNhbm9uaWNhbC55Pj5lKX1jYWxjdWxhdGVTY2FsZWRLZXkodCxlKXtpZih0PnRoaXMub3ZlcnNjYWxlZFopdGhyb3cgbmV3IEVycm9yKGB0YXJnZXRaID4gdGhpcy5vdmVyc2NhbGVkWjsgdGFyZ2V0WiA9ICR7dH07IG92ZXJzY2FsZWRaID0gJHt0aGlzLm92ZXJzY2FsZWRafWApO2NvbnN0IHI9dGhpcy5jYW5vbmljYWwuei10O3JldHVybiB0PnRoaXMuY2Fub25pY2FsLno/UmModGhpcy53cmFwKitlLHQsdGhpcy5jYW5vbmljYWwueix0aGlzLmNhbm9uaWNhbC54LHRoaXMuY2Fub25pY2FsLnkpOlJjKHRoaXMud3JhcCorZSx0LHQsdGhpcy5jYW5vbmljYWwueD4+cix0aGlzLmNhbm9uaWNhbC55Pj5yKX1pc0NoaWxkT2YodCl7aWYodC53cmFwIT09dGhpcy53cmFwKXJldHVybiAhMTtjb25zdCBlPXRoaXMuY2Fub25pY2FsLnotdC5jYW5vbmljYWwuejtyZXR1cm4gMD09PXQub3ZlcnNjYWxlZFp8fHQub3ZlcnNjYWxlZFo8dGhpcy5vdmVyc2NhbGVkWiYmdC5jYW5vbmljYWwueD09PXRoaXMuY2Fub25pY2FsLng+PmUmJnQuY2Fub25pY2FsLnk9PT10aGlzLmNhbm9uaWNhbC55Pj5lfWNoaWxkcmVuKHQpe2lmKHRoaXMub3ZlcnNjYWxlZFo+PXQpcmV0dXJuIFtuZXcgamModGhpcy5vdmVyc2NhbGVkWisxLHRoaXMud3JhcCx0aGlzLmNhbm9uaWNhbC56LHRoaXMuY2Fub25pY2FsLngsdGhpcy5jYW5vbmljYWwueSldO2NvbnN0IGU9dGhpcy5jYW5vbmljYWwueisxLHI9Mip0aGlzLmNhbm9uaWNhbC54LG49Mip0aGlzLmNhbm9uaWNhbC55O3JldHVybiBbbmV3IGpjKGUsdGhpcy53cmFwLGUscixuKSxuZXcgamMoZSx0aGlzLndyYXAsZSxyKzEsbiksbmV3IGpjKGUsdGhpcy53cmFwLGUscixuKzEpLG5ldyBqYyhlLHRoaXMud3JhcCxlLHIrMSxuKzEpXX1pc0xlc3NUaGFuKHQpe3JldHVybiB0aGlzLndyYXA8dC53cmFwfHwhKHRoaXMud3JhcD50LndyYXApJiYodGhpcy5vdmVyc2NhbGVkWjx0Lm92ZXJzY2FsZWRafHwhKHRoaXMub3ZlcnNjYWxlZFo+dC5vdmVyc2NhbGVkWikmJih0aGlzLmNhbm9uaWNhbC54PHQuY2Fub25pY2FsLnh8fCEodGhpcy5jYW5vbmljYWwueD50LmNhbm9uaWNhbC54KSYmdGhpcy5jYW5vbmljYWwueTx0LmNhbm9uaWNhbC55KSl9d3JhcHBlZCgpe3JldHVybiBuZXcgamModGhpcy5vdmVyc2NhbGVkWiwwLHRoaXMuY2Fub25pY2FsLnosdGhpcy5jYW5vbmljYWwueCx0aGlzLmNhbm9uaWNhbC55KX11bndyYXBUbyh0KXtyZXR1cm4gbmV3IGpjKHRoaXMub3ZlcnNjYWxlZFosdCx0aGlzLmNhbm9uaWNhbC56LHRoaXMuY2Fub25pY2FsLngsdGhpcy5jYW5vbmljYWwueSl9b3ZlcnNjYWxlRmFjdG9yKCl7cmV0dXJuIE1hdGgucG93KDIsdGhpcy5vdmVyc2NhbGVkWi10aGlzLmNhbm9uaWNhbC56KX10b1Vud3JhcHBlZCgpe3JldHVybiBuZXcgT2ModGhpcy53cmFwLHRoaXMuY2Fub25pY2FsKX10b1N0cmluZygpe3JldHVybiBgJHt0aGlzLm92ZXJzY2FsZWRafS8ke3RoaXMuY2Fub25pY2FsLnh9LyR7dGhpcy5jYW5vbmljYWwueX1gfWdldFRpbGVQb2ludCh0KXtyZXR1cm4gdGhpcy5jYW5vbmljYWwuZ2V0VGlsZVBvaW50KG5ldyAkYyh0LngtdGhpcy53cmFwLHQueSkpfX1mdW5jdGlvbiBSYyh0LGUscixuLGkpeyh0Kj0yKTwwJiYodD0tMSp0LTEpO2NvbnN0IHM9MTw8cjtyZXR1cm4gKHMqcyp0K3MqaStuKS50b1N0cmluZygzNikrci50b1N0cmluZygzNikrZS50b1N0cmluZygzNil9d2koXCJDYW5vbmljYWxUaWxlSURcIixEYyksd2koXCJPdmVyc2NhbGVkVGlsZUlEXCIsamMse29taXQ6W1wicG9zTWF0cml4XCJdfSk7Y2xhc3MgVWN7Y29uc3RydWN0b3IodCxlLHIsbj0xLGk9MSxzPTEsYT0wKXtpZih0aGlzLnVpZD10LGUuaGVpZ2h0IT09ZS53aWR0aCl0aHJvdyBuZXcgUmFuZ2VFcnJvcihcIkRFTSB0aWxlcyBtdXN0IGJlIHNxdWFyZVwiKTtpZihyJiYhW1wibWFwYm94XCIsXCJ0ZXJyYXJpdW1cIixcImN1c3RvbVwiXS5pbmNsdWRlcyhyKSlyZXR1cm4gdm9pZCBBKGBcIiR7cn1cIiBpcyBub3QgYSB2YWxpZCBlbmNvZGluZyB0eXBlLiBWYWxpZCB0eXBlcyBpbmNsdWRlIFwibWFwYm94XCIsIFwidGVycmFyaXVtXCIgYW5kIFwiY3VzdG9tXCIuYCk7dGhpcy5zdHJpZGU9ZS5oZWlnaHQ7Y29uc3Qgbz10aGlzLmRpbT1lLmhlaWdodC0yO3N3aXRjaCh0aGlzLmRhdGE9bmV3IFVpbnQzMkFycmF5KGUuZGF0YS5idWZmZXIpLHIpe2Nhc2VcInRlcnJhcml1bVwiOnRoaXMucmVkRmFjdG9yPTI1Nix0aGlzLmdyZWVuRmFjdG9yPTEsdGhpcy5ibHVlRmFjdG9yPTEvMjU2LHRoaXMuYmFzZVNoaWZ0PTMyNzY4O2JyZWFrO2Nhc2VcImN1c3RvbVwiOnRoaXMucmVkRmFjdG9yPW4sdGhpcy5ncmVlbkZhY3Rvcj1pLHRoaXMuYmx1ZUZhY3Rvcj1zLHRoaXMuYmFzZVNoaWZ0PWE7YnJlYWs7ZGVmYXVsdDp0aGlzLnJlZEZhY3Rvcj02NTUzLjYsdGhpcy5ncmVlbkZhY3Rvcj0yNS42LHRoaXMuYmx1ZUZhY3Rvcj0uMSx0aGlzLmJhc2VTaGlmdD0xZTQ7fWZvcihsZXQgdD0wO3Q8bzt0KyspdGhpcy5kYXRhW3RoaXMuX2lkeCgtMSx0KV09dGhpcy5kYXRhW3RoaXMuX2lkeCgwLHQpXSx0aGlzLmRhdGFbdGhpcy5faWR4KG8sdCldPXRoaXMuZGF0YVt0aGlzLl9pZHgoby0xLHQpXSx0aGlzLmRhdGFbdGhpcy5faWR4KHQsLTEpXT10aGlzLmRhdGFbdGhpcy5faWR4KHQsMCldLHRoaXMuZGF0YVt0aGlzLl9pZHgodCxvKV09dGhpcy5kYXRhW3RoaXMuX2lkeCh0LG8tMSldO3RoaXMuZGF0YVt0aGlzLl9pZHgoLTEsLTEpXT10aGlzLmRhdGFbdGhpcy5faWR4KDAsMCldLHRoaXMuZGF0YVt0aGlzLl9pZHgobywtMSldPXRoaXMuZGF0YVt0aGlzLl9pZHgoby0xLDApXSx0aGlzLmRhdGFbdGhpcy5faWR4KC0xLG8pXT10aGlzLmRhdGFbdGhpcy5faWR4KDAsby0xKV0sdGhpcy5kYXRhW3RoaXMuX2lkeChvLG8pXT10aGlzLmRhdGFbdGhpcy5faWR4KG8tMSxvLTEpXSx0aGlzLm1pbj1OdW1iZXIuTUFYX1NBRkVfSU5URUdFUix0aGlzLm1heD1OdW1iZXIuTUlOX1NBRkVfSU5URUdFUjtmb3IobGV0IHQ9MDt0PG87dCsrKWZvcihsZXQgZT0wO2U8bztlKyspe2NvbnN0IHI9dGhpcy5nZXQodCxlKTtyPnRoaXMubWF4JiYodGhpcy5tYXg9cikscjx0aGlzLm1pbiYmKHRoaXMubWluPXIpO319Z2V0KHQsZSl7Y29uc3Qgcj1uZXcgVWludDhBcnJheSh0aGlzLmRhdGEuYnVmZmVyKSxuPTQqdGhpcy5faWR4KHQsZSk7cmV0dXJuIHRoaXMudW5wYWNrKHJbbl0scltuKzFdLHJbbisyXSl9Z2V0VW5wYWNrVmVjdG9yKCl7cmV0dXJuIFt0aGlzLnJlZEZhY3Rvcix0aGlzLmdyZWVuRmFjdG9yLHRoaXMuYmx1ZUZhY3Rvcix0aGlzLmJhc2VTaGlmdF19X2lkeCh0LGUpe2lmKHQ8LTF8fHQ+PXRoaXMuZGltKzF8fGU8LTF8fGU+PXRoaXMuZGltKzEpdGhyb3cgbmV3IFJhbmdlRXJyb3IoXCJvdXQgb2YgcmFuZ2Ugc291cmNlIGNvb3JkaW5hdGVzIGZvciBERU0gZGF0YVwiKTtyZXR1cm4gKGUrMSkqdGhpcy5zdHJpZGUrKHQrMSl9dW5wYWNrKHQsZSxyKXtyZXR1cm4gdCp0aGlzLnJlZEZhY3RvcitlKnRoaXMuZ3JlZW5GYWN0b3Ircip0aGlzLmJsdWVGYWN0b3ItdGhpcy5iYXNlU2hpZnR9Z2V0UGl4ZWxzKCl7cmV0dXJuIG5ldyBBbyh7d2lkdGg6dGhpcy5zdHJpZGUsaGVpZ2h0OnRoaXMuc3RyaWRlfSxuZXcgVWludDhBcnJheSh0aGlzLmRhdGEuYnVmZmVyKSl9YmFja2ZpbGxCb3JkZXIodCxlLHIpe2lmKHRoaXMuZGltIT09dC5kaW0pdGhyb3cgbmV3IEVycm9yKFwiZGVtIGRpbWVuc2lvbiBtaXNtYXRjaFwiKTtsZXQgbj1lKnRoaXMuZGltLGk9ZSp0aGlzLmRpbSt0aGlzLmRpbSxzPXIqdGhpcy5kaW0sYT1yKnRoaXMuZGltK3RoaXMuZGltO3N3aXRjaChlKXtjYXNlLTE6bj1pLTE7YnJlYWs7Y2FzZSAxOmk9bisxO31zd2l0Y2gocil7Y2FzZS0xOnM9YS0xO2JyZWFrO2Nhc2UgMTphPXMrMTt9Y29uc3Qgbz0tZSp0aGlzLmRpbSxsPS1yKnRoaXMuZGltO2ZvcihsZXQgZT1zO2U8YTtlKyspZm9yKGxldCByPW47cjxpO3IrKyl0aGlzLmRhdGFbdGhpcy5faWR4KHIsZSldPXQuZGF0YVt0aGlzLl9pZHgocitvLGUrbCldO319d2koXCJERU1EYXRhXCIsVWMpO2NsYXNzIHFje2NvbnN0cnVjdG9yKHQpe3RoaXMuX3N0cmluZ1RvTnVtYmVyPXt9LHRoaXMuX251bWJlclRvU3RyaW5nPVtdO2ZvcihsZXQgZT0wO2U8dC5sZW5ndGg7ZSsrKXtjb25zdCByPXRbZV07dGhpcy5fc3RyaW5nVG9OdW1iZXJbcl09ZSx0aGlzLl9udW1iZXJUb1N0cmluZ1tlXT1yO319ZW5jb2RlKHQpe3JldHVybiB0aGlzLl9zdHJpbmdUb051bWJlclt0XX1kZWNvZGUodCl7aWYodD49dGhpcy5fbnVtYmVyVG9TdHJpbmcubGVuZ3RoKXRocm93IG5ldyBFcnJvcihgT3V0IG9mIGJvdW5kcy4gSW5kZXggcmVxdWVzdGVkIG49JHt0fSBjYW4ndCBiZSA+PSB0aGlzLl9udW1iZXJUb1N0cmluZy5sZW5ndGggJHt0aGlzLl9udW1iZXJUb1N0cmluZy5sZW5ndGh9YCk7cmV0dXJuIHRoaXMuX251bWJlclRvU3RyaW5nW3RdfX1jbGFzcyBOY3tjb25zdHJ1Y3Rvcih0LGUscixuLGkpe3RoaXMudHlwZT1cIkZlYXR1cmVcIix0aGlzLl92ZWN0b3JUaWxlRmVhdHVyZT10LHQuX3o9ZSx0Ll94PXIsdC5feT1uLHRoaXMucHJvcGVydGllcz10LnByb3BlcnRpZXMsdGhpcy5pZD1pO31nZXQgZ2VvbWV0cnkoKXtyZXR1cm4gdm9pZCAwPT09dGhpcy5fZ2VvbWV0cnkmJih0aGlzLl9nZW9tZXRyeT10aGlzLl92ZWN0b3JUaWxlRmVhdHVyZS50b0dlb0pTT04odGhpcy5fdmVjdG9yVGlsZUZlYXR1cmUuX3gsdGhpcy5fdmVjdG9yVGlsZUZlYXR1cmUuX3ksdGhpcy5fdmVjdG9yVGlsZUZlYXR1cmUuX3opLmdlb21ldHJ5KSx0aGlzLl9nZW9tZXRyeX1zZXQgZ2VvbWV0cnkodCl7dGhpcy5fZ2VvbWV0cnk9dDt9dG9KU09OKCl7Y29uc3QgdD17Z2VvbWV0cnk6dGhpcy5nZW9tZXRyeX07Zm9yKGNvbnN0IGUgaW4gdGhpcylcIl9nZW9tZXRyeVwiIT09ZSYmXCJfdmVjdG9yVGlsZUZlYXR1cmVcIiE9PWUmJih0W2VdPXRoaXNbZV0pO3JldHVybiB0fX1jbGFzcyBaY3tjb25zdHJ1Y3Rvcih0LGUpe3RoaXMudGlsZUlEPXQsdGhpcy54PXQuY2Fub25pY2FsLngsdGhpcy55PXQuY2Fub25pY2FsLnksdGhpcy56PXQuY2Fub25pY2FsLnosdGhpcy5ncmlkPW5ldyB2aSgkYSwxNiwwKSx0aGlzLmdyaWQzRD1uZXcgdmkoJGEsMTYsMCksdGhpcy5mZWF0dXJlSW5kZXhBcnJheT1uZXcgTnMsdGhpcy5wcm9tb3RlSWQ9ZTt9aW5zZXJ0KHQsZSxyLG4saSxzKXtjb25zdCBhPXRoaXMuZmVhdHVyZUluZGV4QXJyYXkubGVuZ3RoO3RoaXMuZmVhdHVyZUluZGV4QXJyYXkuZW1wbGFjZUJhY2socixuLGkpO2NvbnN0IG89cz90aGlzLmdyaWQzRDp0aGlzLmdyaWQ7Zm9yKGxldCB0PTA7dDxlLmxlbmd0aDt0Kyspe2NvbnN0IHI9ZVt0XSxuPVsxLzAsMS8wLC0xLzAsLTEvMF07Zm9yKGxldCB0PTA7dDxyLmxlbmd0aDt0Kyspe2NvbnN0IGU9clt0XTtuWzBdPU1hdGgubWluKG5bMF0sZS54KSxuWzFdPU1hdGgubWluKG5bMV0sZS55KSxuWzJdPU1hdGgubWF4KG5bMl0sZS54KSxuWzNdPU1hdGgubWF4KG5bM10sZS55KTt9blswXTwkYSYmblsxXTwkYSYmblsyXT49MCYmblszXT49MCYmby5pbnNlcnQoYSxuWzBdLG5bMV0sblsyXSxuWzNdKTt9fWxvYWRWVExheWVycygpe3JldHVybiB0aGlzLnZ0TGF5ZXJzfHwodGhpcy52dExheWVycz1uZXcgZmwuVmVjdG9yVGlsZShuZXcgSXUodGhpcy5yYXdUaWxlRGF0YSkpLmxheWVycyx0aGlzLnNvdXJjZUxheWVyQ29kZXI9bmV3IHFjKHRoaXMudnRMYXllcnM/T2JqZWN0LmtleXModGhpcy52dExheWVycykuc29ydCgpOltcIl9nZW9qc29uVGlsZUxheWVyXCJdKSksdGhpcy52dExheWVyc31xdWVyeSh0LGUscixuKXt0aGlzLmxvYWRWVExheWVycygpO2NvbnN0IGk9dC5wYXJhbXN8fHt9LGE9JGEvdC50aWxlU2l6ZS90LnNjYWxlLG89em4oaS5maWx0ZXIpLGw9dC5xdWVyeUdlb21ldHJ5LHU9dC5xdWVyeVBhZGRpbmcqYSxjPUtjKGwpLGg9dGhpcy5ncmlkLnF1ZXJ5KGMubWluWC11LGMubWluWS11LGMubWF4WCt1LGMubWF4WSt1KSxwPUtjKHQuY2FtZXJhUXVlcnlHZW9tZXRyeSksZj10aGlzLmdyaWQzRC5xdWVyeShwLm1pblgtdSxwLm1pblktdSxwLm1heFgrdSxwLm1heFkrdSwoKGUscixuLGkpPT5mdW5jdGlvbih0LGUscixuLGkpe2Zvcihjb25zdCBzIG9mIHQpaWYoZTw9cy54JiZyPD1zLnkmJm4+PXMueCYmaT49cy55KXJldHVybiAhMDtjb25zdCBhPVtuZXcgcyhlLHIpLG5ldyBzKGUsaSksbmV3IHMobixpKSxuZXcgcyhuLHIpXTtpZih0Lmxlbmd0aD4yKWZvcihjb25zdCBlIG9mIGEpaWYoV2EodCxlKSlyZXR1cm4gITA7Zm9yKGxldCBlPTA7ZTx0Lmxlbmd0aC0xO2UrKylpZihRYSh0W2VdLHRbZSsxXSxhKSlyZXR1cm4gITA7cmV0dXJuICExfSh0LmNhbWVyYVF1ZXJ5R2VvbWV0cnksZS11LHItdSxuK3UsaSt1KSkpO2Zvcihjb25zdCB0IG9mIGYpaC5wdXNoKHQpO2guc29ydChYYyk7Y29uc3QgZD17fTtsZXQgeTtmb3IobGV0IHM9MDtzPGgubGVuZ3RoO3MrKyl7Y29uc3QgdT1oW3NdO2lmKHU9PT15KWNvbnRpbnVlO3k9dTtjb25zdCBjPXRoaXMuZmVhdHVyZUluZGV4QXJyYXkuZ2V0KHUpO2xldCBwPW51bGw7dGhpcy5sb2FkTWF0Y2hpbmdGZWF0dXJlKGQsYy5idWNrZXRJbmRleCxjLnNvdXJjZUxheWVySW5kZXgsYy5mZWF0dXJlSW5kZXgsbyxpLmxheWVycyxpLmF2YWlsYWJsZUltYWdlcyxlLHIsbiwoKGUscixuKT0+KHB8fChwPU9hKGUpKSxyLnF1ZXJ5SW50ZXJzZWN0c0ZlYXR1cmUobCxlLG4scCx0aGlzLnosdC50cmFuc2Zvcm0sYSx0LnBpeGVsUG9zTWF0cml4KSkpKTt9cmV0dXJuIGR9bG9hZE1hdGNoaW5nRmVhdHVyZSh0LGUscixuLGkscyxhLG8sbCx1LGMpe2NvbnN0IGg9dGhpcy5idWNrZXRMYXllcklEc1tlXTtpZihzJiYhZnVuY3Rpb24odCxlKXtmb3IobGV0IHI9MDtyPHQubGVuZ3RoO3IrKylpZihlLmluZGV4T2YodFtyXSk+PTApcmV0dXJuICEwO3JldHVybiAhMX0ocyxoKSlyZXR1cm47Y29uc3QgcD10aGlzLnNvdXJjZUxheWVyQ29kZXIuZGVjb2RlKHIpLGY9dGhpcy52dExheWVyc1twXS5mZWF0dXJlKG4pO2lmKGkubmVlZEdlb21ldHJ5KXtjb25zdCB0PWphKGYsITApO2lmKCFpLmZpbHRlcihuZXcgVWkodGhpcy50aWxlSUQub3ZlcnNjYWxlZFopLHQsdGhpcy50aWxlSUQuY2Fub25pY2FsKSlyZXR1cm59ZWxzZSBpZighaS5maWx0ZXIobmV3IFVpKHRoaXMudGlsZUlELm92ZXJzY2FsZWRaKSxmKSlyZXR1cm47Y29uc3QgZD10aGlzLmdldElkKGYscCk7Zm9yKGxldCBlPTA7ZTxoLmxlbmd0aDtlKyspe2NvbnN0IHI9aFtlXTtpZihzJiZzLmluZGV4T2Yocik8MCljb250aW51ZTtjb25zdCBpPW9bcl07aWYoIWkpY29udGludWU7bGV0IHA9e307ZCYmdSYmKHA9dS5nZXRTdGF0ZShpLnNvdXJjZUxheWVyfHxcIl9nZW9qc29uVGlsZUxheWVyXCIsZCkpO2NvbnN0IHk9Zyh7fSxsW3JdKTt5LnBhaW50PUdjKHkucGFpbnQsaS5wYWludCxmLHAsYSkseS5sYXlvdXQ9R2MoeS5sYXlvdXQsaS5sYXlvdXQsZixwLGEpO2NvbnN0IG09IWN8fGMoZixpLHApO2lmKCFtKWNvbnRpbnVlO2NvbnN0IHg9bmV3IE5jKGYsdGhpcy56LHRoaXMueCx0aGlzLnksZCk7eC5sYXllcj15O2xldCB2PXRbcl07dm9pZCAwPT09diYmKHY9dFtyXT1bXSksdi5wdXNoKHtmZWF0dXJlSW5kZXg6bixmZWF0dXJlOngsaW50ZXJzZWN0aW9uWjptfSk7fX1sb29rdXBTeW1ib2xGZWF0dXJlcyh0LGUscixuLGkscyxhLG8pe2NvbnN0IGw9e307dGhpcy5sb2FkVlRMYXllcnMoKTtjb25zdCB1PXpuKGkpO2Zvcihjb25zdCBpIG9mIHQpdGhpcy5sb2FkTWF0Y2hpbmdGZWF0dXJlKGwscixuLGksdSxzLGEsbyxlKTtyZXR1cm4gbH1oYXNMYXllcih0KXtmb3IoY29uc3QgZSBvZiB0aGlzLmJ1Y2tldExheWVySURzKWZvcihjb25zdCByIG9mIGUpaWYodD09PXIpcmV0dXJuICEwO3JldHVybiAhMX1nZXRJZCh0LGUpe2xldCByPXQuaWQ7cmV0dXJuIHRoaXMucHJvbW90ZUlkJiYocj10LnByb3BlcnRpZXNbXCJzdHJpbmdcIj09dHlwZW9mIHRoaXMucHJvbW90ZUlkP3RoaXMucHJvbW90ZUlkOnRoaXMucHJvbW90ZUlkW2VdXSxcImJvb2xlYW5cIj09dHlwZW9mIHImJihyPU51bWJlcihyKSkpLHJ9fWZ1bmN0aW9uIEdjKHQsZSxyLG4saSl7cmV0dXJuIHYodCwoKHQscyk9Pntjb25zdCBhPWUgaW5zdGFuY2VvZiBZaT9lLmdldChzKTpudWxsO3JldHVybiBhJiZhLmV2YWx1YXRlP2EuZXZhbHVhdGUocixuLGkpOmF9KSl9ZnVuY3Rpb24gS2ModCl7bGV0IGU9MS8wLHI9MS8wLG49LTEvMCxpPS0xLzA7Zm9yKGNvbnN0IHMgb2YgdCllPU1hdGgubWluKGUscy54KSxyPU1hdGgubWluKHIscy55KSxuPU1hdGgubWF4KG4scy54KSxpPU1hdGgubWF4KGkscy55KTtyZXR1cm4ge21pblg6ZSxtaW5ZOnIsbWF4WDpuLG1heFk6aX19ZnVuY3Rpb24gWGModCxlKXtyZXR1cm4gZS10fWZ1bmN0aW9uIEhjKHQsZSxyLG4saSl7Y29uc3QgYT1bXTtmb3IobGV0IG89MDtvPHQubGVuZ3RoO28rKyl7Y29uc3QgbD10W29dO2xldCB1O2ZvcihsZXQgdD0wO3Q8bC5sZW5ndGgtMTt0Kyspe2xldCBvPWxbdF0sYz1sW3QrMV07by54PGUmJmMueDxlfHwoby54PGU/bz1uZXcgcyhlLG8ueSsoZS1vLngpLyhjLngtby54KSooYy55LW8ueSkpLl9yb3VuZCgpOmMueDxlJiYoYz1uZXcgcyhlLG8ueSsoZS1vLngpLyhjLngtby54KSooYy55LW8ueSkpLl9yb3VuZCgpKSxvLnk8ciYmYy55PHJ8fChvLnk8cj9vPW5ldyBzKG8ueCsoci1vLnkpLyhjLnktby55KSooYy54LW8ueCkscikuX3JvdW5kKCk6Yy55PHImJihjPW5ldyBzKG8ueCsoci1vLnkpLyhjLnktby55KSooYy54LW8ueCkscikuX3JvdW5kKCkpLG8ueD49biYmYy54Pj1ufHwoby54Pj1uP289bmV3IHMobixvLnkrKG4tby54KS8oYy54LW8ueCkqKGMueS1vLnkpKS5fcm91bmQoKTpjLng+PW4mJihjPW5ldyBzKG4sby55KyhuLW8ueCkvKGMueC1vLngpKihjLnktby55KSkuX3JvdW5kKCkpLG8ueT49aSYmYy55Pj1pfHwoby55Pj1pP289bmV3IHMoby54KyhpLW8ueSkvKGMueS1vLnkpKihjLngtby54KSxpKS5fcm91bmQoKTpjLnk+PWkmJihjPW5ldyBzKG8ueCsoaS1vLnkpLyhjLnktby55KSooYy54LW8ueCksaSkuX3JvdW5kKCkpLHUmJm8uZXF1YWxzKHVbdS5sZW5ndGgtMV0pfHwodT1bb10sYS5wdXNoKHUpKSx1LnB1c2goYykpKSkpO319cmV0dXJuIGF9d2koXCJGZWF0dXJlSW5kZXhcIixaYyx7b21pdDpbXCJyYXdUaWxlRGF0YVwiLFwic291cmNlTGF5ZXJDb2RlclwiXX0pO2NsYXNzIFljIGV4dGVuZHMgc3tjb25zdHJ1Y3Rvcih0LGUscixuKXtzdXBlcih0LGUpLHRoaXMuYW5nbGU9cix2b2lkIDAhPT1uJiYodGhpcy5zZWdtZW50PW4pO31jbG9uZSgpe3JldHVybiBuZXcgWWModGhpcy54LHRoaXMueSx0aGlzLmFuZ2xlLHRoaXMuc2VnbWVudCl9fWZ1bmN0aW9uIEpjKHQsZSxyLG4saSl7aWYodm9pZCAwPT09ZS5zZWdtZW50fHwwPT09cilyZXR1cm4gITA7bGV0IHM9ZSxhPWUuc2VnbWVudCsxLG89MDtmb3IoO28+LXIvMjspe2lmKGEtLSxhPDApcmV0dXJuICExO28tPXRbYV0uZGlzdChzKSxzPXRbYV07fW8rPXRbYV0uZGlzdCh0W2ErMV0pLGErKztjb25zdCBsPVtdO2xldCB1PTA7Zm9yKDtvPHIvMjspe2NvbnN0IGU9dFthXSxyPXRbYSsxXTtpZighcilyZXR1cm4gITE7bGV0IHM9dFthLTFdLmFuZ2xlVG8oZSktZS5hbmdsZVRvKHIpO2ZvcihzPU1hdGguYWJzKChzKzMqTWF0aC5QSSklKDIqTWF0aC5QSSktTWF0aC5QSSksbC5wdXNoKHtkaXN0YW5jZTpvLGFuZ2xlRGVsdGE6c30pLHUrPXM7by1sWzBdLmRpc3RhbmNlPm47KXUtPWwuc2hpZnQoKS5hbmdsZURlbHRhO2lmKHU+aSlyZXR1cm4gITE7YSsrLG8rPWUuZGlzdChyKTt9cmV0dXJuICEwfWZ1bmN0aW9uIFdjKHQpe2xldCBlPTA7Zm9yKGxldCByPTA7cjx0Lmxlbmd0aC0xO3IrKyllKz10W3JdLmRpc3QodFtyKzFdKTtyZXR1cm4gZX1mdW5jdGlvbiBRYyh0LGUscil7cmV0dXJuIHQ/LjYqZSpyOjB9ZnVuY3Rpb24gdGgodCxlKXtyZXR1cm4gTWF0aC5tYXgodD90LnJpZ2h0LXQubGVmdDowLGU/ZS5yaWdodC1lLmxlZnQ6MCl9ZnVuY3Rpb24gZWgodCxlLHIsbixpLHMpe2NvbnN0IGE9UWMocixpLHMpLG89dGgocixuKSpzO2xldCBsPTA7Y29uc3QgdT1XYyh0KS8yO2ZvcihsZXQgcj0wO3I8dC5sZW5ndGgtMTtyKyspe2NvbnN0IG49dFtyXSxpPXRbcisxXSxzPW4uZGlzdChpKTtpZihsK3M+dSl7Y29uc3QgYz0odS1sKS9zLGg9Q2UubnVtYmVyKG4ueCxpLngsYykscD1DZS5udW1iZXIobi55LGkueSxjKSxmPW5ldyBZYyhoLHAsaS5hbmdsZVRvKG4pLHIpO3JldHVybiBmLl9yb3VuZCgpLCFhfHxKYyh0LGYsbyxhLGUpP2Y6dm9pZCAwfWwrPXM7fX1mdW5jdGlvbiByaCh0LGUscixuLGkscyxhLG8sbCl7Y29uc3QgdT1RYyhuLHMsYSksYz10aChuLGkpLGg9YyphLHA9MD09PXRbMF0ueHx8dFswXS54PT09bHx8MD09PXRbMF0ueXx8dFswXS55PT09bDtyZXR1cm4gZS1oPGUvNCYmKGU9aCtlLzQpLG5oKHQscD9lLzIqbyVlOihjLzIrMipzKSphKm8lZSxlLHUscixoLHAsITEsbCl9ZnVuY3Rpb24gbmgodCxlLHIsbixpLHMsYSxvLGwpe2NvbnN0IHU9cy8yLGM9V2ModCk7bGV0IGg9MCxwPWUtcixmPVtdO2ZvcihsZXQgZT0wO2U8dC5sZW5ndGgtMTtlKyspe2NvbnN0IGE9dFtlXSxvPXRbZSsxXSxkPWEuZGlzdChvKSx5PW8uYW5nbGVUbyhhKTtmb3IoO3ArcjxoK2Q7KXtwKz1yO2NvbnN0IG09KHAtaCkvZCxnPUNlLm51bWJlcihhLngsby54LG0pLHg9Q2UubnVtYmVyKGEueSxvLnksbSk7aWYoZz49MCYmZzxsJiZ4Pj0wJiZ4PGwmJnAtdT49MCYmcCt1PD1jKXtjb25zdCByPW5ldyBZYyhnLHgseSxlKTtyLl9yb3VuZCgpLG4mJiFKYyh0LHIscyxuLGkpfHxmLnB1c2gocik7fX1oKz1kO31yZXR1cm4gb3x8Zi5sZW5ndGh8fGF8fChmPW5oKHQsaC8yLHIsbixpLHMsYSwhMCxsKSksZn13aShcIkFuY2hvclwiLFljKTtjb25zdCBpaD1GdTtmdW5jdGlvbiBzaCh0LGUscixuKXtjb25zdCBpPVtdLGE9dC5pbWFnZSxvPWEucGl4ZWxSYXRpbyxsPWEucGFkZGVkUmVjdC53LTIqaWgsdT1hLnBhZGRlZFJlY3QuaC0yKmloO2xldCBjPXt4MTp0LmxlZnQseTE6dC50b3AseDI6dC5yaWdodCx5Mjp0LmJvdHRvbX07Y29uc3QgaD1hLnN0cmV0Y2hYfHxbWzAsbF1dLHA9YS5zdHJldGNoWXx8W1swLHVdXSxmPSh0LGUpPT50K2VbMV0tZVswXSxkPWgucmVkdWNlKGYsMCkseT1wLnJlZHVjZShmLDApLG09bC1kLGc9dS15O2xldCB4PTAsdj1kLGI9MCx3PXksXz0wLEE9bSxTPTAsaz1nO2lmKGEuY29udGVudCYmbil7Y29uc3QgZT1hLmNvbnRlbnQscj1lWzJdLWVbMF0sbj1lWzNdLWVbMV07KGEudGV4dEZpdFdpZHRofHxhLnRleHRGaXRIZWlnaHQpJiYoYz10Yyh0KSkseD1haChoLDAsZVswXSksYj1haChwLDAsZVsxXSksdj1haChoLGVbMF0sZVsyXSksdz1haChwLGVbMV0sZVszXSksXz1lWzBdLXgsUz1lWzFdLWIsQT1yLXYsaz1uLXc7fWNvbnN0IE09Yy54MSxJPWMueTEsej1jLngyLU0sUD1jLnkyLUksQz0odCxuLGksbCk9Pntjb25zdCB1PWxoKHQuc3RyZXRjaC14LHYseixNKSxjPXVoKHQuZml4ZWQtXyxBLHQuc3RyZXRjaCxkKSxoPWxoKG4uc3RyZXRjaC1iLHcsUCxJKSxwPXVoKG4uZml4ZWQtUyxrLG4uc3RyZXRjaCx5KSxmPWxoKGkuc3RyZXRjaC14LHYseixNKSxtPXVoKGkuZml4ZWQtXyxBLGkuc3RyZXRjaCxkKSxnPWxoKGwuc3RyZXRjaC1iLHcsUCxJKSxDPXVoKGwuZml4ZWQtUyxrLGwuc3RyZXRjaCx5KSxCPW5ldyBzKHUsaCksVj1uZXcgcyhmLGgpLEU9bmV3IHMoZixnKSxGPW5ldyBzKHUsZyksVD1uZXcgcyhjL28scC9vKSwkPW5ldyBzKG0vbyxDL28pLEw9ZSpNYXRoLlBJLzE4MDtpZihMKXtjb25zdCB0PU1hdGguc2luKEwpLGU9TWF0aC5jb3MoTCkscj1bZSwtdCx0LGVdO0IuX21hdE11bHQociksVi5fbWF0TXVsdChyKSxGLl9tYXRNdWx0KHIpLEUuX21hdE11bHQocik7fWNvbnN0IEQ9dC5zdHJldGNoK3QuZml4ZWQsTz1uLnN0cmV0Y2grbi5maXhlZDtyZXR1cm4ge3RsOkIsdHI6VixibDpGLGJyOkUsdGV4Ont4OmEucGFkZGVkUmVjdC54K2loK0QseTphLnBhZGRlZFJlY3QueStpaCtPLHc6aS5zdHJldGNoK2kuZml4ZWQtRCxoOmwuc3RyZXRjaCtsLmZpeGVkLU99LHdyaXRpbmdNb2RlOnZvaWQgMCxnbHlwaE9mZnNldDpbMCwwXSxzZWN0aW9uSW5kZXg6MCxwaXhlbE9mZnNldFRMOlQscGl4ZWxPZmZzZXRCUjokLG1pbkZvbnRTY2FsZVg6QS9vL3osbWluRm9udFNjYWxlWTprL28vUCxpc1NERjpyfX07aWYobiYmKGEuc3RyZXRjaFh8fGEuc3RyZXRjaFkpKXtjb25zdCB0PW9oKGgsbSxkKSxlPW9oKHAsZyx5KTtmb3IobGV0IHI9MDtyPHQubGVuZ3RoLTE7cisrKXtjb25zdCBuPXRbcl0scz10W3IrMV07Zm9yKGxldCB0PTA7dDxlLmxlbmd0aC0xO3QrKylpLnB1c2goQyhuLGVbdF0scyxlW3QrMV0pKTt9fWVsc2UgaS5wdXNoKEMoe2ZpeGVkOjAsc3RyZXRjaDotMX0se2ZpeGVkOjAsc3RyZXRjaDotMX0se2ZpeGVkOjAsc3RyZXRjaDpsKzF9LHtmaXhlZDowLHN0cmV0Y2g6dSsxfSkpO3JldHVybiBpfWZ1bmN0aW9uIGFoKHQsZSxyKXtsZXQgbj0wO2Zvcihjb25zdCBpIG9mIHQpbis9TWF0aC5tYXgoZSxNYXRoLm1pbihyLGlbMV0pKS1NYXRoLm1heChlLE1hdGgubWluKHIsaVswXSkpO3JldHVybiBufWZ1bmN0aW9uIG9oKHQsZSxyKXtjb25zdCBuPVt7Zml4ZWQ6LWloLHN0cmV0Y2g6MH1dO2Zvcihjb25zdFtlLHJdb2YgdCl7Y29uc3QgdD1uW24ubGVuZ3RoLTFdO24ucHVzaCh7Zml4ZWQ6ZS10LnN0cmV0Y2gsc3RyZXRjaDp0LnN0cmV0Y2h9KSxuLnB1c2goe2ZpeGVkOmUtdC5zdHJldGNoLHN0cmV0Y2g6dC5zdHJldGNoKyhyLWUpfSk7fXJldHVybiBuLnB1c2goe2ZpeGVkOmUraWgsc3RyZXRjaDpyfSksbn1mdW5jdGlvbiBsaCh0LGUscixuKXtyZXR1cm4gdC9lKnIrbn1mdW5jdGlvbiB1aCh0LGUscixuKXtyZXR1cm4gdC1lKnIvbn1jbGFzcyBjaHtjb25zdHJ1Y3Rvcih0LGUscixuLGksYSxvLGwsdSxjKXt2YXIgaDtpZih0aGlzLmJveFN0YXJ0SW5kZXg9dC5sZW5ndGgsdSl7bGV0IHQ9YS50b3AsZT1hLmJvdHRvbTtjb25zdCByPWEuY29sbGlzaW9uUGFkZGluZztyJiYodC09clsxXSxlKz1yWzNdKTtsZXQgbj1lLXQ7bj4wJiYobj1NYXRoLm1heCgxMCxuKSx0aGlzLmNpcmNsZURpYW1ldGVyPW4pO31lbHNlIHtjb25zdCB1PShudWxsPT09KGg9YS5pbWFnZSl8fHZvaWQgMD09PWg/dm9pZCAwOmguY29udGVudCkmJihhLmltYWdlLnRleHRGaXRXaWR0aHx8YS5pbWFnZS50ZXh0Rml0SGVpZ2h0KT90YyhhKTp7eDE6YS5sZWZ0LHkxOmEudG9wLHgyOmEucmlnaHQseTI6YS5ib3R0b219O3UueTE9dS55MSpvLWxbMF0sdS55Mj11LnkyKm8rbFsyXSx1LngxPXUueDEqby1sWzNdLHUueDI9dS54MipvK2xbMV07Y29uc3QgcD1hLmNvbGxpc2lvblBhZGRpbmc7aWYocCYmKHUueDEtPXBbMF0qbyx1LnkxLT1wWzFdKm8sdS54Mis9cFsyXSpvLHUueTIrPXBbM10qbyksYyl7Y29uc3QgdD1uZXcgcyh1LngxLHUueTEpLGU9bmV3IHModS54Mix1LnkxKSxyPW5ldyBzKHUueDEsdS55Miksbj1uZXcgcyh1LngyLHUueTIpLGk9YypNYXRoLlBJLzE4MDt0Ll9yb3RhdGUoaSksZS5fcm90YXRlKGkpLHIuX3JvdGF0ZShpKSxuLl9yb3RhdGUoaSksdS54MT1NYXRoLm1pbih0LngsZS54LHIueCxuLngpLHUueDI9TWF0aC5tYXgodC54LGUueCxyLngsbi54KSx1LnkxPU1hdGgubWluKHQueSxlLnksci55LG4ueSksdS55Mj1NYXRoLm1heCh0LnksZS55LHIueSxuLnkpO310LmVtcGxhY2VCYWNrKGUueCxlLnksdS54MSx1LnkxLHUueDIsdS55MixyLG4saSk7fXRoaXMuYm94RW5kSW5kZXg9dC5sZW5ndGg7fX1jbGFzcyBoaHtjb25zdHJ1Y3Rvcih0PVtdLGU9KCh0LGUpPT50PGU/LTE6dD5lPzE6MCkpe2lmKHRoaXMuZGF0YT10LHRoaXMubGVuZ3RoPXRoaXMuZGF0YS5sZW5ndGgsdGhpcy5jb21wYXJlPWUsdGhpcy5sZW5ndGg+MClmb3IobGV0IHQ9KHRoaXMubGVuZ3RoPj4xKS0xO3Q+PTA7dC0tKXRoaXMuX2Rvd24odCk7fXB1c2godCl7dGhpcy5kYXRhLnB1c2godCksdGhpcy5fdXAodGhpcy5sZW5ndGgrKyk7fXBvcCgpe2lmKDA9PT10aGlzLmxlbmd0aClyZXR1cm47Y29uc3QgdD10aGlzLmRhdGFbMF0sZT10aGlzLmRhdGEucG9wKCk7cmV0dXJuIC0tdGhpcy5sZW5ndGg+MCYmKHRoaXMuZGF0YVswXT1lLHRoaXMuX2Rvd24oMCkpLHR9cGVlaygpe3JldHVybiB0aGlzLmRhdGFbMF19X3VwKHQpe2NvbnN0e2RhdGE6ZSxjb21wYXJlOnJ9PXRoaXMsbj1lW3RdO2Zvcig7dD4wOyl7Y29uc3QgaT10LTE+PjEscz1lW2ldO2lmKHIobixzKT49MClicmVhaztlW3RdPXMsdD1pO31lW3RdPW47fV9kb3duKHQpe2NvbnN0e2RhdGE6ZSxjb21wYXJlOnJ9PXRoaXMsbj10aGlzLmxlbmd0aD4+MSxpPWVbdF07Zm9yKDt0PG47KXtsZXQgbj0xKyh0PDwxKTtjb25zdCBzPW4rMTtpZihzPHRoaXMubGVuZ3RoJiZyKGVbc10sZVtuXSk8MCYmKG49cykscihlW25dLGkpPj0wKWJyZWFrO2VbdF09ZVtuXSx0PW47fWVbdF09aTt9fWZ1bmN0aW9uIHBoKHQsZT0xLHI9ITEpe2xldCBuPTEvMCxpPTEvMCxhPS0xLzAsbz0tMS8wO2NvbnN0IGw9dFswXTtmb3IobGV0IHQ9MDt0PGwubGVuZ3RoO3QrKyl7Y29uc3QgZT1sW3RdOyghdHx8ZS54PG4pJiYobj1lLngpLCghdHx8ZS55PGkpJiYoaT1lLnkpLCghdHx8ZS54PmEpJiYoYT1lLngpLCghdHx8ZS55Pm8pJiYobz1lLnkpO31jb25zdCB1PU1hdGgubWluKGEtbixvLWkpO2xldCBjPXUvMjtjb25zdCBoPW5ldyBoaChbXSxmaCk7aWYoMD09PXUpcmV0dXJuIG5ldyBzKG4saSk7Zm9yKGxldCBlPW47ZTxhO2UrPXUpZm9yKGxldCByPWk7cjxvO3IrPXUpaC5wdXNoKG5ldyBkaChlK2MscitjLGMsdCkpO2xldCBwPWZ1bmN0aW9uKHQpe2xldCBlPTAscj0wLG49MDtjb25zdCBpPXRbMF07Zm9yKGxldCB0PTAscz1pLmxlbmd0aCxhPXMtMTt0PHM7YT10Kyspe2NvbnN0IHM9aVt0XSxvPWlbYV0sbD1zLngqby55LW8ueCpzLnk7cis9KHMueCtvLngpKmwsbis9KHMueStvLnkpKmwsZSs9MypsO31yZXR1cm4gbmV3IGRoKHIvZSxuL2UsMCx0KX0odCksZj1oLmxlbmd0aDtmb3IoO2gubGVuZ3RoOyl7Y29uc3Qgbj1oLnBvcCgpOyhuLmQ+cC5kfHwhcC5kKSYmKHA9bixyJiZjb25zb2xlLmxvZyhcImZvdW5kIGJlc3QgJWQgYWZ0ZXIgJWQgcHJvYmVzXCIsTWF0aC5yb3VuZCgxZTQqbi5kKS8xZTQsZikpLG4ubWF4LXAuZDw9ZXx8KGM9bi5oLzIsaC5wdXNoKG5ldyBkaChuLnAueC1jLG4ucC55LWMsYyx0KSksaC5wdXNoKG5ldyBkaChuLnAueCtjLG4ucC55LWMsYyx0KSksaC5wdXNoKG5ldyBkaChuLnAueC1jLG4ucC55K2MsYyx0KSksaC5wdXNoKG5ldyBkaChuLnAueCtjLG4ucC55K2MsYyx0KSksZis9NCk7fXJldHVybiByJiYoY29uc29sZS5sb2coYG51bSBwcm9iZXM6ICR7Zn1gKSxjb25zb2xlLmxvZyhgYmVzdCBkaXN0YW5jZTogJHtwLmR9YCkpLHAucH1mdW5jdGlvbiBmaCh0LGUpe3JldHVybiBlLm1heC10Lm1heH1mdW5jdGlvbiBkaCh0LGUscixuKXt0aGlzLnA9bmV3IHModCxlKSx0aGlzLmg9cix0aGlzLmQ9ZnVuY3Rpb24odCxlKXtsZXQgcj0hMSxuPTEvMDtmb3IobGV0IGk9MDtpPGUubGVuZ3RoO2krKyl7Y29uc3Qgcz1lW2ldO2ZvcihsZXQgZT0wLGk9cy5sZW5ndGgsYT1pLTE7ZTxpO2E9ZSsrKXtjb25zdCBpPXNbZV0sbz1zW2FdO2kueT50LnkhPW8ueT50LnkmJnQueDwoby54LWkueCkqKHQueS1pLnkpLyhvLnktaS55KStpLngmJihyPSFyKSxuPU1hdGgubWluKG4sWWEodCxpLG8pKTt9fXJldHVybiAocj8xOi0xKSpNYXRoLnNxcnQobil9KHRoaXMucCxuKSx0aGlzLm1heD10aGlzLmQrdGhpcy5oKk1hdGguU1FSVDI7fXZhciB5aDt0LmFxPXZvaWQgMCwoeWg9dC5hcXx8KHQuYXE9e30pKVt5aC5jZW50ZXI9MV09XCJjZW50ZXJcIix5aFt5aC5sZWZ0PTJdPVwibGVmdFwiLHloW3loLnJpZ2h0PTNdPVwicmlnaHRcIix5aFt5aC50b3A9NF09XCJ0b3BcIix5aFt5aC5ib3R0b209NV09XCJib3R0b21cIix5aFt5aFtcInRvcC1sZWZ0XCJdPTZdPVwidG9wLWxlZnRcIix5aFt5aFtcInRvcC1yaWdodFwiXT03XT1cInRvcC1yaWdodFwiLHloW3loW1wiYm90dG9tLWxlZnRcIl09OF09XCJib3R0b20tbGVmdFwiLHloW3loW1wiYm90dG9tLXJpZ2h0XCJdPTldPVwiYm90dG9tLXJpZ2h0XCI7Y29uc3QgbWg9NyxnaD1OdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFk7ZnVuY3Rpb24geGgodCxlKXtyZXR1cm4gZVsxXSE9PWdoP2Z1bmN0aW9uKHQsZSxyKXtsZXQgbj0wLGk9MDtzd2l0Y2goZT1NYXRoLmFicyhlKSxyPU1hdGguYWJzKHIpLHQpe2Nhc2VcInRvcC1yaWdodFwiOmNhc2VcInRvcC1sZWZ0XCI6Y2FzZVwidG9wXCI6aT1yLW1oO2JyZWFrO2Nhc2VcImJvdHRvbS1yaWdodFwiOmNhc2VcImJvdHRvbS1sZWZ0XCI6Y2FzZVwiYm90dG9tXCI6aT0tcittaDt9c3dpdGNoKHQpe2Nhc2VcInRvcC1yaWdodFwiOmNhc2VcImJvdHRvbS1yaWdodFwiOmNhc2VcInJpZ2h0XCI6bj0tZTticmVhaztjYXNlXCJ0b3AtbGVmdFwiOmNhc2VcImJvdHRvbS1sZWZ0XCI6Y2FzZVwibGVmdFwiOm49ZTt9cmV0dXJuIFtuLGldfSh0LGVbMF0sZVsxXSk6ZnVuY3Rpb24odCxlKXtsZXQgcj0wLG49MDtlPDAmJihlPTApO2NvbnN0IGk9ZS9NYXRoLlNRUlQyO3N3aXRjaCh0KXtjYXNlXCJ0b3AtcmlnaHRcIjpjYXNlXCJ0b3AtbGVmdFwiOm49aS1taDticmVhaztjYXNlXCJib3R0b20tcmlnaHRcIjpjYXNlXCJib3R0b20tbGVmdFwiOm49LWkrbWg7YnJlYWs7Y2FzZVwiYm90dG9tXCI6bj0tZSttaDticmVhaztjYXNlXCJ0b3BcIjpuPWUtbWg7fXN3aXRjaCh0KXtjYXNlXCJ0b3AtcmlnaHRcIjpjYXNlXCJib3R0b20tcmlnaHRcIjpyPS1pO2JyZWFrO2Nhc2VcInRvcC1sZWZ0XCI6Y2FzZVwiYm90dG9tLWxlZnRcIjpyPWk7YnJlYWs7Y2FzZVwibGVmdFwiOnI9ZTticmVhaztjYXNlXCJyaWdodFwiOnI9LWU7fXJldHVybiBbcixuXX0odCxlWzBdKX1mdW5jdGlvbiB2aCh0LGUscil7dmFyIG47Y29uc3QgaT10LmxheW91dCxzPW51bGw9PT0obj1pLmdldChcInRleHQtdmFyaWFibGUtYW5jaG9yLW9mZnNldFwiKSl8fHZvaWQgMD09PW4/dm9pZCAwOm4uZXZhbHVhdGUoZSx7fSxyKTtpZihzKXtjb25zdCB0PXMudmFsdWVzLGU9W107Zm9yKGxldCByPTA7cjx0Lmxlbmd0aDtyKz0yKXtjb25zdCBuPWVbcl09dFtyXSxpPXRbcisxXS5tYXAoKHQ9PnQqaXUpKTtuLnN0YXJ0c1dpdGgoXCJ0b3BcIik/aVsxXS09bWg6bi5zdGFydHNXaXRoKFwiYm90dG9tXCIpJiYoaVsxXSs9bWgpLGVbcisxXT1pO31yZXR1cm4gbmV3IFF0KGUpfWNvbnN0IGE9aS5nZXQoXCJ0ZXh0LXZhcmlhYmxlLWFuY2hvclwiKTtpZihhKXtsZXQgbjtuPXZvaWQgMCE9PXQuX3VuZXZhbHVhdGVkTGF5b3V0LmdldFZhbHVlKFwidGV4dC1yYWRpYWwtb2Zmc2V0XCIpP1tpLmdldChcInRleHQtcmFkaWFsLW9mZnNldFwiKS5ldmFsdWF0ZShlLHt9LHIpKml1LGdoXTppLmdldChcInRleHQtb2Zmc2V0XCIpLmV2YWx1YXRlKGUse30scikubWFwKCh0PT50Kml1KSk7Y29uc3Qgcz1bXTtmb3IoY29uc3QgdCBvZiBhKXMucHVzaCh0LHhoKHQsbikpO3JldHVybiBuZXcgUXQocyl9cmV0dXJuIG51bGx9ZnVuY3Rpb24gYmgodCl7c3dpdGNoKHQpe2Nhc2VcInJpZ2h0XCI6Y2FzZVwidG9wLXJpZ2h0XCI6Y2FzZVwiYm90dG9tLXJpZ2h0XCI6cmV0dXJuIFwicmlnaHRcIjtjYXNlXCJsZWZ0XCI6Y2FzZVwidG9wLWxlZnRcIjpjYXNlXCJib3R0b20tbGVmdFwiOnJldHVybiBcImxlZnRcIn1yZXR1cm4gXCJjZW50ZXJcIn1mdW5jdGlvbiB3aChlLHIsbixpLHMsYSxvLGwsdSxjLGgpe2xldCBwPWEudGV4dE1heFNpemUuZXZhbHVhdGUocix7fSk7dm9pZCAwPT09cCYmKHA9byk7Y29uc3QgZj1lLmxheWVyc1swXS5sYXlvdXQsZD1mLmdldChcImljb24tb2Zmc2V0XCIpLmV2YWx1YXRlKHIse30saCkseT1BaChuLmhvcml6b250YWwpLG09by8yNCxnPWUudGlsZVBpeGVsUmF0aW8qbSx4PWUudGlsZVBpeGVsUmF0aW8qcC8yNCx2PWUudGlsZVBpeGVsUmF0aW8qbCxiPWUudGlsZVBpeGVsUmF0aW8qZi5nZXQoXCJzeW1ib2wtc3BhY2luZ1wiKSx3PWYuZ2V0KFwidGV4dC1wYWRkaW5nXCIpKmUudGlsZVBpeGVsUmF0aW8sXz1mdW5jdGlvbih0LGUscixuPTEpe2NvbnN0IGk9dC5nZXQoXCJpY29uLXBhZGRpbmdcIikuZXZhbHVhdGUoZSx7fSxyKSxzPWkmJmkudmFsdWVzO3JldHVybiBbc1swXSpuLHNbMV0qbixzWzJdKm4sc1szXSpuXX0oZixyLGgsZS50aWxlUGl4ZWxSYXRpbyksUz1mLmdldChcInRleHQtbWF4LWFuZ2xlXCIpLzE4MCpNYXRoLlBJLGs9XCJ2aWV3cG9ydFwiIT09Zi5nZXQoXCJ0ZXh0LXJvdGF0aW9uLWFsaWdubWVudFwiKSYmXCJwb2ludFwiIT09Zi5nZXQoXCJzeW1ib2wtcGxhY2VtZW50XCIpLE09XCJtYXBcIj09PWYuZ2V0KFwiaWNvbi1yb3RhdGlvbi1hbGlnbm1lbnRcIikmJlwicG9pbnRcIiE9PWYuZ2V0KFwic3ltYm9sLXBsYWNlbWVudFwiKSxJPWYuZ2V0KFwic3ltYm9sLXBsYWNlbWVudFwiKSx6PWIvMixQPWYuZ2V0KFwiaWNvbi10ZXh0LWZpdFwiKTtsZXQgQztpJiZcIm5vbmVcIiE9PVAmJihlLmFsbG93VmVydGljYWxQbGFjZW1lbnQmJm4udmVydGljYWwmJihDPWVjKGksbi52ZXJ0aWNhbCxQLGYuZ2V0KFwiaWNvbi10ZXh0LWZpdC1wYWRkaW5nXCIpLGQsbSkpLHkmJihpPWVjKGkseSxQLGYuZ2V0KFwiaWNvbi10ZXh0LWZpdC1wYWRkaW5nXCIpLGQsbSkpKTtjb25zdCBCPShsLHApPT57cC54PDB8fHAueD49JGF8fHAueTwwfHxwLnk+PSRhfHxmdW5jdGlvbihlLHIsbixpLHMsYSxvLGwsdSxjLGgscCxmLGQseSxtLGcseCx2LGIsdyxfLFMsayxNKXtjb25zdCBJPWUuYWRkVG9MaW5lVmVydGV4QXJyYXkocixuKTtsZXQgeixQLEMsQixWPTAsRT0wLEY9MCxUPTAsJD0tMSxMPS0xO2NvbnN0IEQ9e307bGV0IE89bWEoXCJcIik7aWYoZS5hbGxvd1ZlcnRpY2FsUGxhY2VtZW50JiZpLnZlcnRpY2FsKXtjb25zdCB0PWwubGF5b3V0LmdldChcInRleHQtcm90YXRlXCIpLmV2YWx1YXRlKHcse30saykrOTA7Qz1uZXcgY2godSxyLGMsaCxwLGkudmVydGljYWwsZixkLHksdCksbyYmKEI9bmV3IGNoKHUscixjLGgscCxvLGcseCx5LHQpKTt9aWYocyl7Y29uc3Qgbj1sLmxheW91dC5nZXQoXCJpY29uLXJvdGF0ZVwiKS5ldmFsdWF0ZSh3LHt9KSxpPVwibm9uZVwiIT09bC5sYXlvdXQuZ2V0KFwiaWNvbi10ZXh0LWZpdFwiKSxhPXNoKHMsbixTLGkpLGY9bz9zaChvLG4sUyxpKTp2b2lkIDA7UD1uZXcgY2godSxyLGMsaCxwLHMsZyx4LCExLG4pLFY9NCphLmxlbmd0aDtjb25zdCBkPWUuaWNvblNpemVEYXRhO2xldCB5PW51bGw7XCJzb3VyY2VcIj09PWQua2luZD8oeT1bbmMqbC5sYXlvdXQuZ2V0KFwiaWNvbi1zaXplXCIpLmV2YWx1YXRlKHcse30pXSx5WzBdPmljJiZBKGAke2UubGF5ZXJJZHNbMF19OiBWYWx1ZSBmb3IgXCJpY29uLXNpemVcIiBpcyA+PSAke3JjfS4gUmVkdWNlIHlvdXIgXCJpY29uLXNpemVcIi5gKSk6XCJjb21wb3NpdGVcIj09PWQua2luZCYmKHk9W25jKl8uY29tcG9zaXRlSWNvblNpemVzWzBdLmV2YWx1YXRlKHcse30sayksbmMqXy5jb21wb3NpdGVJY29uU2l6ZXNbMV0uZXZhbHVhdGUodyx7fSxrKV0sKHlbMF0+aWN8fHlbMV0+aWMpJiZBKGAke2UubGF5ZXJJZHNbMF19OiBWYWx1ZSBmb3IgXCJpY29uLXNpemVcIiBpcyA+PSAke3JjfS4gUmVkdWNlIHlvdXIgXCJpY29uLXNpemVcIi5gKSksZS5hZGRTeW1ib2xzKGUuaWNvbixhLHksYix2LHcsdC5haC5ub25lLHIsSS5saW5lU3RhcnRJbmRleCxJLmxpbmVMZW5ndGgsLTEsayksJD1lLmljb24ucGxhY2VkU3ltYm9sQXJyYXkubGVuZ3RoLTEsZiYmKEU9NCpmLmxlbmd0aCxlLmFkZFN5bWJvbHMoZS5pY29uLGYseSxiLHYsdyx0LmFoLnZlcnRpY2FsLHIsSS5saW5lU3RhcnRJbmRleCxJLmxpbmVMZW5ndGgsLTEsayksTD1lLmljb24ucGxhY2VkU3ltYm9sQXJyYXkubGVuZ3RoLTEpO31jb25zdCBqPU9iamVjdC5rZXlzKGkuaG9yaXpvbnRhbCk7Zm9yKGNvbnN0IG4gb2Ygail7Y29uc3Qgcz1pLmhvcml6b250YWxbbl07aWYoIXope089bWEocy50ZXh0KTtjb25zdCB0PWwubGF5b3V0LmdldChcInRleHQtcm90YXRlXCIpLmV2YWx1YXRlKHcse30sayk7ej1uZXcgY2godSxyLGMsaCxwLHMsZixkLHksdCk7fWNvbnN0IG89MT09PXMucG9zaXRpb25lZExpbmVzLmxlbmd0aDtpZihGKz1faChlLHIscyxhLGwseSx3LG0sSSxpLnZlcnRpY2FsP3QuYWguaG9yaXpvbnRhbDp0LmFoLmhvcml6b250YWxPbmx5LG8/ajpbbl0sRCwkLF8sayksbylicmVha31pLnZlcnRpY2FsJiYoVCs9X2goZSxyLGkudmVydGljYWwsYSxsLHksdyxtLEksdC5haC52ZXJ0aWNhbCxbXCJ2ZXJ0aWNhbFwiXSxELEwsXyxrKSk7Y29uc3QgUj16P3ouYm94U3RhcnRJbmRleDplLmNvbGxpc2lvbkJveEFycmF5Lmxlbmd0aCxVPXo/ei5ib3hFbmRJbmRleDplLmNvbGxpc2lvbkJveEFycmF5Lmxlbmd0aCxxPUM/Qy5ib3hTdGFydEluZGV4OmUuY29sbGlzaW9uQm94QXJyYXkubGVuZ3RoLE49Qz9DLmJveEVuZEluZGV4OmUuY29sbGlzaW9uQm94QXJyYXkubGVuZ3RoLFo9UD9QLmJveFN0YXJ0SW5kZXg6ZS5jb2xsaXNpb25Cb3hBcnJheS5sZW5ndGgsRz1QP1AuYm94RW5kSW5kZXg6ZS5jb2xsaXNpb25Cb3hBcnJheS5sZW5ndGgsSz1CP0IuYm94U3RhcnRJbmRleDplLmNvbGxpc2lvbkJveEFycmF5Lmxlbmd0aCxYPUI/Qi5ib3hFbmRJbmRleDplLmNvbGxpc2lvbkJveEFycmF5Lmxlbmd0aDtsZXQgSD0tMTtjb25zdCBZPSh0LGUpPT50JiZ0LmNpcmNsZURpYW1ldGVyP01hdGgubWF4KHQuY2lyY2xlRGlhbWV0ZXIsZSk6ZTtIPVkoeixIKSxIPVkoQyxIKSxIPVkoUCxIKSxIPVkoQixIKTtjb25zdCBKPUg+LTE/MTowO0omJihIKj1NL2l1KSxlLmdseXBoT2Zmc2V0QXJyYXkubGVuZ3RoPj1kYy5NQVhfR0xZUEhTJiZBKFwiVG9vIG1hbnkgZ2x5cGhzIGJlaW5nIHJlbmRlcmVkIGluIGEgdGlsZS4gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9tYXBib3gvbWFwYm94LWdsLWpzL2lzc3Vlcy8yOTA3XCIpLHZvaWQgMCE9PXcuc29ydEtleSYmZS5hZGRUb1NvcnRLZXlSYW5nZXMoZS5zeW1ib2xJbnN0YW5jZXMubGVuZ3RoLHcuc29ydEtleSk7Y29uc3QgVz12aChsLHcsayksW1EsdHRdPWZ1bmN0aW9uKGUscil7Y29uc3Qgbj1lLmxlbmd0aCxpPW51bGw9PXI/dm9pZCAwOnIudmFsdWVzO2lmKChudWxsPT1pP3ZvaWQgMDppLmxlbmd0aCk+MClmb3IobGV0IHI9MDtyPGkubGVuZ3RoO3IrPTIpe2NvbnN0IG49aVtyKzFdO2UuZW1wbGFjZUJhY2sodC5hcVtpW3JdXSxuWzBdLG5bMV0pO31yZXR1cm4gW24sZS5sZW5ndGhdfShlLnRleHRBbmNob3JPZmZzZXRzLFcpO2Uuc3ltYm9sSW5zdGFuY2VzLmVtcGxhY2VCYWNrKHIueCxyLnksRC5yaWdodD49MD9ELnJpZ2h0Oi0xLEQuY2VudGVyPj0wP0QuY2VudGVyOi0xLEQubGVmdD49MD9ELmxlZnQ6LTEsRC52ZXJ0aWNhbHx8LTEsJCxMLE8sUixVLHEsTixaLEcsSyxYLGMsRixULFYsRSxKLDAsZixILFEsdHQpO30oZSxwLGwsbixpLHMsQyxlLmxheWVyc1swXSxlLmNvbGxpc2lvbkJveEFycmF5LHIuaW5kZXgsci5zb3VyY2VMYXllckluZGV4LGUuaW5kZXgsZyxbdyx3LHcsd10sayx1LHYsXyxNLGQscixhLGMsaCxvKTt9O2lmKFwibGluZVwiPT09SSlmb3IoY29uc3QgdCBvZiBIYyhyLmdlb21ldHJ5LDAsMCwkYSwkYSkpe2NvbnN0IHI9cmgodCxiLFMsbi52ZXJ0aWNhbHx8eSxpLDI0LHgsZS5vdmVyc2NhbGluZywkYSk7Zm9yKGNvbnN0IG4gb2Ygcil5JiZTaChlLHkudGV4dCx6LG4pfHxCKHQsbik7fWVsc2UgaWYoXCJsaW5lLWNlbnRlclwiPT09SSl7Zm9yKGNvbnN0IHQgb2Ygci5nZW9tZXRyeSlpZih0Lmxlbmd0aD4xKXtjb25zdCBlPWVoKHQsUyxuLnZlcnRpY2FsfHx5LGksMjQseCk7ZSYmQih0LGUpO319ZWxzZSBpZihcIlBvbHlnb25cIj09PXIudHlwZSlmb3IoY29uc3QgdCBvZiB4cihyLmdlb21ldHJ5LDApKXtjb25zdCBlPXBoKHQsMTYpO0IodFswXSxuZXcgWWMoZS54LGUueSwwKSk7fWVsc2UgaWYoXCJMaW5lU3RyaW5nXCI9PT1yLnR5cGUpZm9yKGNvbnN0IHQgb2Ygci5nZW9tZXRyeSlCKHQsbmV3IFljKHRbMF0ueCx0WzBdLnksMCkpO2Vsc2UgaWYoXCJQb2ludFwiPT09ci50eXBlKWZvcihjb25zdCB0IG9mIHIuZ2VvbWV0cnkpZm9yKGNvbnN0IGUgb2YgdClCKFtlXSxuZXcgWWMoZS54LGUueSwwKSk7fWZ1bmN0aW9uIF9oKHQsZSxyLG4saSxhLG8sbCx1LGMsaCxwLGYsZCx5KXtjb25zdCBtPWZ1bmN0aW9uKHQsZSxyLG4saSxhLG8sbCl7Y29uc3QgdT1uLmxheW91dC5nZXQoXCJ0ZXh0LXJvdGF0ZVwiKS5ldmFsdWF0ZShhLHt9KSpNYXRoLlBJLzE4MCxjPVtdO2Zvcihjb25zdCB0IG9mIGUucG9zaXRpb25lZExpbmVzKWZvcihjb25zdCBuIG9mIHQucG9zaXRpb25lZEdseXBocyl7aWYoIW4ucmVjdCljb250aW51ZTtjb25zdCBhPW4ucmVjdHx8e307bGV0IGg9VnUrMSxwPSEwLGY9MSxkPTA7Y29uc3QgeT0oaXx8bCkmJm4udmVydGljYWwsbT1uLm1ldHJpY3MuYWR2YW5jZSpuLnNjYWxlLzI7aWYobCYmZS52ZXJ0aWNhbGl6YWJsZSYmKGQ9dC5saW5lT2Zmc2V0LzItKG4uaW1hZ2VOYW1lPy0oaXUtbi5tZXRyaWNzLndpZHRoKm4uc2NhbGUpLzI6KG4uc2NhbGUtMSkqaXUpKSxuLmltYWdlTmFtZSl7Y29uc3QgdD1vW24uaW1hZ2VOYW1lXTtwPXQuc2RmLGY9dC5waXhlbFJhdGlvLGg9RnUvZjt9Y29uc3QgZz1pP1tuLngrbSxuLnldOlswLDBdO2xldCB4PWk/WzAsMF06W24ueCttK3JbMF0sbi55K3JbMV0tZF0sdj1bMCwwXTt5JiYodj14LHg9WzAsMF0pO2NvbnN0IGI9bi5tZXRyaWNzLmlzRG91YmxlUmVzb2x1dGlvbj8yOjEsdz0obi5tZXRyaWNzLmxlZnQtaCkqbi5zY2FsZS1tK3hbMF0sXz0oLW4ubWV0cmljcy50b3AtaCkqbi5zY2FsZSt4WzFdLEE9dythLncvYipuLnNjYWxlL2YsUz1fK2EuaC9iKm4uc2NhbGUvZixrPW5ldyBzKHcsXyksTT1uZXcgcyhBLF8pLEk9bmV3IHModyxTKSx6PW5ldyBzKEEsUyk7aWYoeSl7Y29uc3QgdD1uZXcgcygtbSxtLUR1KSxlPS1NYXRoLlBJLzIscj1pdS8yLW0saT1uZXcgcyg1LUR1LXIsLShuLmltYWdlTmFtZT9yOjApKSxhPW5ldyBzKC4uLnYpO2suX3JvdGF0ZUFyb3VuZChlLHQpLl9hZGQoaSkuX2FkZChhKSxNLl9yb3RhdGVBcm91bmQoZSx0KS5fYWRkKGkpLl9hZGQoYSksSS5fcm90YXRlQXJvdW5kKGUsdCkuX2FkZChpKS5fYWRkKGEpLHouX3JvdGF0ZUFyb3VuZChlLHQpLl9hZGQoaSkuX2FkZChhKTt9aWYodSl7Y29uc3QgdD1NYXRoLnNpbih1KSxlPU1hdGguY29zKHUpLHI9W2UsLXQsdCxlXTtrLl9tYXRNdWx0KHIpLE0uX21hdE11bHQociksSS5fbWF0TXVsdChyKSx6Ll9tYXRNdWx0KHIpO31jb25zdCBQPW5ldyBzKDAsMCksQz1uZXcgcygwLDApO2MucHVzaCh7dGw6ayx0cjpNLGJsOkksYnI6eix0ZXg6YSx3cml0aW5nTW9kZTplLndyaXRpbmdNb2RlLGdseXBoT2Zmc2V0Omcsc2VjdGlvbkluZGV4Om4uc2VjdGlvbkluZGV4LGlzU0RGOnAscGl4ZWxPZmZzZXRUTDpQLHBpeGVsT2Zmc2V0QlI6QyxtaW5Gb250U2NhbGVYOjAsbWluRm9udFNjYWxlWTowfSk7fXJldHVybiBjfSgwLHIsbCxpLGEsbyxuLHQuYWxsb3dWZXJ0aWNhbFBsYWNlbWVudCksZz10LnRleHRTaXplRGF0YTtsZXQgeD1udWxsO1wic291cmNlXCI9PT1nLmtpbmQ/KHg9W25jKmkubGF5b3V0LmdldChcInRleHQtc2l6ZVwiKS5ldmFsdWF0ZShvLHt9KV0seFswXT5pYyYmQShgJHt0LmxheWVySWRzWzBdfTogVmFsdWUgZm9yIFwidGV4dC1zaXplXCIgaXMgPj0gJHtyY30uIFJlZHVjZSB5b3VyIFwidGV4dC1zaXplXCIuYCkpOlwiY29tcG9zaXRlXCI9PT1nLmtpbmQmJih4PVtuYypkLmNvbXBvc2l0ZVRleHRTaXplc1swXS5ldmFsdWF0ZShvLHt9LHkpLG5jKmQuY29tcG9zaXRlVGV4dFNpemVzWzFdLmV2YWx1YXRlKG8se30seSldLCh4WzBdPmljfHx4WzFdPmljKSYmQShgJHt0LmxheWVySWRzWzBdfTogVmFsdWUgZm9yIFwidGV4dC1zaXplXCIgaXMgPj0gJHtyY30uIFJlZHVjZSB5b3VyIFwidGV4dC1zaXplXCIuYCkpLHQuYWRkU3ltYm9scyh0LnRleHQsbSx4LGwsYSxvLGMsZSx1LmxpbmVTdGFydEluZGV4LHUubGluZUxlbmd0aCxmLHkpO2Zvcihjb25zdCBlIG9mIGgpcFtlXT10LnRleHQucGxhY2VkU3ltYm9sQXJyYXkubGVuZ3RoLTE7cmV0dXJuIDQqbS5sZW5ndGh9ZnVuY3Rpb24gQWgodCl7Zm9yKGNvbnN0IGUgaW4gdClyZXR1cm4gdFtlXTtyZXR1cm4gbnVsbH1mdW5jdGlvbiBTaCh0LGUscixuKXtjb25zdCBpPXQuY29tcGFyZVRleHQ7aWYoZSBpbiBpKXtjb25zdCB0PWlbZV07Zm9yKGxldCBlPXQubGVuZ3RoLTE7ZT49MDtlLS0paWYobi5kaXN0KHRbZV0pPHIpcmV0dXJuICEwfWVsc2UgaVtlXT1bXTtyZXR1cm4gaVtlXS5wdXNoKG4pLCExfWNvbnN0IGtoPVtJbnQ4QXJyYXksVWludDhBcnJheSxVaW50OENsYW1wZWRBcnJheSxJbnQxNkFycmF5LFVpbnQxNkFycmF5LEludDMyQXJyYXksVWludDMyQXJyYXksRmxvYXQzMkFycmF5LEZsb2F0NjRBcnJheV07Y2xhc3MgTWh7c3RhdGljIGZyb20odCl7aWYoISh0IGluc3RhbmNlb2YgQXJyYXlCdWZmZXIpKXRocm93IG5ldyBFcnJvcihcIkRhdGEgbXVzdCBiZSBhbiBpbnN0YW5jZSBvZiBBcnJheUJ1ZmZlci5cIik7Y29uc3RbZSxyXT1uZXcgVWludDhBcnJheSh0LDAsMik7aWYoMjE5IT09ZSl0aHJvdyBuZXcgRXJyb3IoXCJEYXRhIGRvZXMgbm90IGFwcGVhciB0byBiZSBpbiBhIEtEQnVzaCBmb3JtYXQuXCIpO2NvbnN0IG49cj4+NDtpZigxIT09bil0aHJvdyBuZXcgRXJyb3IoYEdvdCB2JHtufSBkYXRhIHdoZW4gZXhwZWN0ZWQgdjEuYCk7Y29uc3QgaT1raFsxNSZyXTtpZighaSl0aHJvdyBuZXcgRXJyb3IoXCJVbnJlY29nbml6ZWQgYXJyYXkgdHlwZS5cIik7Y29uc3Rbc109bmV3IFVpbnQxNkFycmF5KHQsMiwxKSxbYV09bmV3IFVpbnQzMkFycmF5KHQsNCwxKTtyZXR1cm4gbmV3IE1oKGEscyxpLHQpfWNvbnN0cnVjdG9yKHQsZT02NCxyPUZsb2F0NjRBcnJheSxuKXtpZihpc05hTih0KXx8dDwwKXRocm93IG5ldyBFcnJvcihgVW5wZXhwZWN0ZWQgbnVtSXRlbXMgdmFsdWU6ICR7dH0uYCk7dGhpcy5udW1JdGVtcz0rdCx0aGlzLm5vZGVTaXplPU1hdGgubWluKE1hdGgubWF4KCtlLDIpLDY1NTM1KSx0aGlzLkFycmF5VHlwZT1yLHRoaXMuSW5kZXhBcnJheVR5cGU9dDw2NTUzNj9VaW50MTZBcnJheTpVaW50MzJBcnJheTtjb25zdCBpPWtoLmluZGV4T2YodGhpcy5BcnJheVR5cGUpLHM9Mip0KnRoaXMuQXJyYXlUeXBlLkJZVEVTX1BFUl9FTEVNRU5ULGE9dCp0aGlzLkluZGV4QXJyYXlUeXBlLkJZVEVTX1BFUl9FTEVNRU5ULG89KDgtYSU4KSU4O2lmKGk8MCl0aHJvdyBuZXcgRXJyb3IoYFVuZXhwZWN0ZWQgdHlwZWQgYXJyYXkgY2xhc3M6ICR7cn0uYCk7biYmbiBpbnN0YW5jZW9mIEFycmF5QnVmZmVyPyh0aGlzLmRhdGE9bix0aGlzLmlkcz1uZXcgdGhpcy5JbmRleEFycmF5VHlwZSh0aGlzLmRhdGEsOCx0KSx0aGlzLmNvb3Jkcz1uZXcgdGhpcy5BcnJheVR5cGUodGhpcy5kYXRhLDgrYStvLDIqdCksdGhpcy5fcG9zPTIqdCx0aGlzLl9maW5pc2hlZD0hMCk6KHRoaXMuZGF0YT1uZXcgQXJyYXlCdWZmZXIoOCtzK2ErbyksdGhpcy5pZHM9bmV3IHRoaXMuSW5kZXhBcnJheVR5cGUodGhpcy5kYXRhLDgsdCksdGhpcy5jb29yZHM9bmV3IHRoaXMuQXJyYXlUeXBlKHRoaXMuZGF0YSw4K2ErbywyKnQpLHRoaXMuX3Bvcz0wLHRoaXMuX2ZpbmlzaGVkPSExLG5ldyBVaW50OEFycmF5KHRoaXMuZGF0YSwwLDIpLnNldChbMjE5LDE2K2ldKSxuZXcgVWludDE2QXJyYXkodGhpcy5kYXRhLDIsMSlbMF09ZSxuZXcgVWludDMyQXJyYXkodGhpcy5kYXRhLDQsMSlbMF09dCk7fWFkZCh0LGUpe2NvbnN0IHI9dGhpcy5fcG9zPj4xO3JldHVybiB0aGlzLmlkc1tyXT1yLHRoaXMuY29vcmRzW3RoaXMuX3BvcysrXT10LHRoaXMuY29vcmRzW3RoaXMuX3BvcysrXT1lLHJ9ZmluaXNoKCl7Y29uc3QgdD10aGlzLl9wb3M+PjE7aWYodCE9PXRoaXMubnVtSXRlbXMpdGhyb3cgbmV3IEVycm9yKGBBZGRlZCAke3R9IGl0ZW1zIHdoZW4gZXhwZWN0ZWQgJHt0aGlzLm51bUl0ZW1zfS5gKTtyZXR1cm4gSWgodGhpcy5pZHMsdGhpcy5jb29yZHMsdGhpcy5ub2RlU2l6ZSwwLHRoaXMubnVtSXRlbXMtMSwwKSx0aGlzLl9maW5pc2hlZD0hMCx0aGlzfXJhbmdlKHQsZSxyLG4pe2lmKCF0aGlzLl9maW5pc2hlZCl0aHJvdyBuZXcgRXJyb3IoXCJEYXRhIG5vdCB5ZXQgaW5kZXhlZCAtIGNhbGwgaW5kZXguZmluaXNoKCkuXCIpO2NvbnN0e2lkczppLGNvb3JkczpzLG5vZGVTaXplOmF9PXRoaXMsbz1bMCxpLmxlbmd0aC0xLDBdLGw9W107Zm9yKDtvLmxlbmd0aDspe2NvbnN0IHU9by5wb3AoKXx8MCxjPW8ucG9wKCl8fDAsaD1vLnBvcCgpfHwwO2lmKGMtaDw9YSl7Zm9yKGxldCBhPWg7YTw9YzthKyspe2NvbnN0IG89c1syKmFdLHU9c1syKmErMV07bz49dCYmbzw9ciYmdT49ZSYmdTw9biYmbC5wdXNoKGlbYV0pO31jb250aW51ZX1jb25zdCBwPWgrYz4+MSxmPXNbMipwXSxkPXNbMipwKzFdO2Y+PXQmJmY8PXImJmQ+PWUmJmQ8PW4mJmwucHVzaChpW3BdKSwoMD09PXU/dDw9ZjplPD1kKSYmKG8ucHVzaChoKSxvLnB1c2gocC0xKSxvLnB1c2goMS11KSksKDA9PT11P3I+PWY6bj49ZCkmJihvLnB1c2gocCsxKSxvLnB1c2goYyksby5wdXNoKDEtdSkpO31yZXR1cm4gbH13aXRoaW4odCxlLHIpe2lmKCF0aGlzLl9maW5pc2hlZCl0aHJvdyBuZXcgRXJyb3IoXCJEYXRhIG5vdCB5ZXQgaW5kZXhlZCAtIGNhbGwgaW5kZXguZmluaXNoKCkuXCIpO2NvbnN0e2lkczpuLGNvb3JkczppLG5vZGVTaXplOnN9PXRoaXMsYT1bMCxuLmxlbmd0aC0xLDBdLG89W10sbD1yKnI7Zm9yKDthLmxlbmd0aDspe2NvbnN0IHU9YS5wb3AoKXx8MCxjPWEucG9wKCl8fDAsaD1hLnBvcCgpfHwwO2lmKGMtaDw9cyl7Zm9yKGxldCByPWg7cjw9YztyKyspQmgoaVsyKnJdLGlbMipyKzFdLHQsZSk8PWwmJm8ucHVzaChuW3JdKTtjb250aW51ZX1jb25zdCBwPWgrYz4+MSxmPWlbMipwXSxkPWlbMipwKzFdO0JoKGYsZCx0LGUpPD1sJiZvLnB1c2gobltwXSksKDA9PT11P3Qtcjw9ZjplLXI8PWQpJiYoYS5wdXNoKGgpLGEucHVzaChwLTEpLGEucHVzaCgxLXUpKSwoMD09PXU/dCtyPj1mOmUrcj49ZCkmJihhLnB1c2gocCsxKSxhLnB1c2goYyksYS5wdXNoKDEtdSkpO31yZXR1cm4gb319ZnVuY3Rpb24gSWgodCxlLHIsbixpLHMpe2lmKGktbjw9cilyZXR1cm47Y29uc3QgYT1uK2k+PjE7emgodCxlLGEsbixpLHMpLEloKHQsZSxyLG4sYS0xLDEtcyksSWgodCxlLHIsYSsxLGksMS1zKTt9ZnVuY3Rpb24gemgodCxlLHIsbixpLHMpe2Zvcig7aT5uOyl7aWYoaS1uPjYwMCl7Y29uc3QgYT1pLW4rMSxvPXItbisxLGw9TWF0aC5sb2coYSksdT0uNSpNYXRoLmV4cCgyKmwvMyksYz0uNSpNYXRoLnNxcnQobCp1KihhLXUpL2EpKihvLWEvMjwwPy0xOjEpO3poKHQsZSxyLE1hdGgubWF4KG4sTWF0aC5mbG9vcihyLW8qdS9hK2MpKSxNYXRoLm1pbihpLE1hdGguZmxvb3IocisoYS1vKSp1L2ErYykpLHMpO31jb25zdCBhPWVbMipyK3NdO2xldCBvPW4sbD1pO2ZvcihQaCh0LGUsbixyKSxlWzIqaStzXT5hJiZQaCh0LGUsbixpKTtvPGw7KXtmb3IoUGgodCxlLG8sbCksbysrLGwtLTtlWzIqbytzXTxhOylvKys7Zm9yKDtlWzIqbCtzXT5hOylsLS07fWVbMipuK3NdPT09YT9QaCh0LGUsbixsKToobCsrLFBoKHQsZSxsLGkpKSxsPD1yJiYobj1sKzEpLHI8PWwmJihpPWwtMSk7fX1mdW5jdGlvbiBQaCh0LGUscixuKXtDaCh0LHIsbiksQ2goZSwyKnIsMipuKSxDaChlLDIqcisxLDIqbisxKTt9ZnVuY3Rpb24gQ2godCxlLHIpe2NvbnN0IG49dFtlXTt0W2VdPXRbcl0sdFtyXT1uO31mdW5jdGlvbiBCaCh0LGUscixuKXtjb25zdCBpPXQtcixzPWUtbjtyZXR1cm4gaSppK3Mqc312YXIgVmg7dC5iZz12b2lkIDAsKFZoPXQuYmd8fCh0LmJnPXt9KSkuY3JlYXRlPVwiY3JlYXRlXCIsVmgubG9hZD1cImxvYWRcIixWaC5mdWxsTG9hZD1cImZ1bGxMb2FkXCI7bGV0IEVoPW51bGwsRmg9W107Y29uc3QgVGg9MWUzLzYwLCRoPVwibG9hZFRpbWVcIixMaD1cImZ1bGxMb2FkVGltZVwiLERoPXttYXJrKHQpe3BlcmZvcm1hbmNlLm1hcmsodCk7fSxmcmFtZSh0KXtjb25zdCBlPXQ7bnVsbCE9RWgmJkZoLnB1c2goZS1FaCksRWg9ZTt9LGNsZWFyTWV0cmljcygpe0VoPW51bGwsRmg9W10scGVyZm9ybWFuY2UuY2xlYXJNZWFzdXJlcygkaCkscGVyZm9ybWFuY2UuY2xlYXJNZWFzdXJlcyhMaCk7Zm9yKGNvbnN0IGUgaW4gdC5iZylwZXJmb3JtYW5jZS5jbGVhck1hcmtzKHQuYmdbZV0pO30sZ2V0UGVyZm9ybWFuY2VNZXRyaWNzKCl7cGVyZm9ybWFuY2UubWVhc3VyZSgkaCx0LmJnLmNyZWF0ZSx0LmJnLmxvYWQpLHBlcmZvcm1hbmNlLm1lYXN1cmUoTGgsdC5iZy5jcmVhdGUsdC5iZy5mdWxsTG9hZCk7Y29uc3QgZT1wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1lKCRoKVswXS5kdXJhdGlvbixyPXBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoTGgpWzBdLmR1cmF0aW9uLG49RmgubGVuZ3RoLGk9MS8oRmgucmVkdWNlKCgodCxlKT0+dCtlKSwwKS9uLzFlMykscz1GaC5maWx0ZXIoKHQ9PnQ+VGgpKS5yZWR1Y2UoKCh0LGUpPT50KyhlLVRoKS9UaCksMCk7cmV0dXJuIHtsb2FkVGltZTplLGZ1bGxMb2FkVGltZTpyLGZwczppLHBlcmNlbnREcm9wcGVkRnJhbWVzOnMvKG4rcykqMTAwLHRvdGFsRnJhbWVzOm59fX07dC4kPWNsYXNzIGV4dGVuZHMgcHN7fSx0LkE9b28sdC5CPXlpLHQuQz1mdW5jdGlvbih0KXtpZihudWxsPT1NKXtjb25zdCBlPXQubmF2aWdhdG9yP3QubmF2aWdhdG9yLnVzZXJBZ2VudDpudWxsO009ISF0LnNhZmFyaXx8ISghZXx8ISgvXFxiKGlQYWR8aVBob25lfGlQb2QpXFxiLy50ZXN0KGUpfHxlLm1hdGNoKFwiU2FmYXJpXCIpJiYhZS5tYXRjaChcIkNocm9tZVwiKSkpO31yZXR1cm4gTX0sdC5EPUppLHQuRT1aLHQuRj1jbGFzc3tjb25zdHJ1Y3Rvcih0LGUpe3RoaXMudGFyZ2V0PXQsdGhpcy5tYXBJZD1lLHRoaXMucmVzb2x2ZVJlamVjdHM9e30sdGhpcy50YXNrcz17fSx0aGlzLnRhc2tRdWV1ZT1bXSx0aGlzLmFib3J0Q29udHJvbGxlcnM9e30sdGhpcy5tZXNzYWdlSGFuZGxlcnM9e30sdGhpcy5pbnZva2VyPW5ldyBJYygoKCk9PnRoaXMucHJvY2VzcygpKSksdGhpcy5zdWJzY3JpcHRpb249ZnVuY3Rpb24odCxlLHIsbil7cmV0dXJuIHQuYWRkRXZlbnRMaXN0ZW5lcihlLHIsITEpLHt1bnN1YnNjcmliZTooKT0+e3QucmVtb3ZlRXZlbnRMaXN0ZW5lcihlLHIsITEpO319fSh0aGlzLnRhcmdldCxcIm1lc3NhZ2VcIiwodD0+dGhpcy5yZWNlaXZlKHQpKSksdGhpcy5nbG9iYWxTY29wZT1rKHNlbGYpP3Q6d2luZG93O31yZWdpc3Rlck1lc3NhZ2VIYW5kbGVyKHQsZSl7dGhpcy5tZXNzYWdlSGFuZGxlcnNbdF09ZTt9c2VuZEFzeW5jKHQsZSl7cmV0dXJuIG5ldyBQcm9taXNlKCgocixuKT0+e2NvbnN0IGk9TWF0aC5yb3VuZCgxZTE4Kk1hdGgucmFuZG9tKCkpLnRvU3RyaW5nKDM2KS5zdWJzdHJpbmcoMCwxMCk7dGhpcy5yZXNvbHZlUmVqZWN0c1tpXT17cmVzb2x2ZTpyLHJlamVjdDpufSxlJiZlLnNpZ25hbC5hZGRFdmVudExpc3RlbmVyKFwiYWJvcnRcIiwoKCk9PntkZWxldGUgdGhpcy5yZXNvbHZlUmVqZWN0c1tpXTtjb25zdCBlPXtpZDppLHR5cGU6XCI8Y2FuY2VsPlwiLG9yaWdpbjpsb2NhdGlvbi5vcmlnaW4sdGFyZ2V0TWFwSWQ6dC50YXJnZXRNYXBJZCxzb3VyY2VNYXBJZDp0aGlzLm1hcElkfTt0aGlzLnRhcmdldC5wb3N0TWVzc2FnZShlKTt9KSx7b25jZTohMH0pO2NvbnN0IHM9W10sYT1PYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sdCkse2lkOmksc291cmNlTWFwSWQ6dGhpcy5tYXBJZCxvcmlnaW46bG9jYXRpb24ub3JpZ2luLGRhdGE6a2kodC5kYXRhLHMpfSk7dGhpcy50YXJnZXQucG9zdE1lc3NhZ2UoYSx7dHJhbnNmZXI6c30pO30pKX1yZWNlaXZlKHQpe2NvbnN0IGU9dC5kYXRhLHI9ZS5pZDtpZighKFwiZmlsZTovL1wiIT09ZS5vcmlnaW4mJlwiZmlsZTovL1wiIT09bG9jYXRpb24ub3JpZ2luJiZcInJlc291cmNlOi8vYW5kcm9pZFwiIT09ZS5vcmlnaW4mJlwicmVzb3VyY2U6Ly9hbmRyb2lkXCIhPT1sb2NhdGlvbi5vcmlnaW4mJmUub3JpZ2luIT09bG9jYXRpb24ub3JpZ2lufHxlLnRhcmdldE1hcElkJiZ0aGlzLm1hcElkIT09ZS50YXJnZXRNYXBJZCkpe2lmKFwiPGNhbmNlbD5cIj09PWUudHlwZSl7ZGVsZXRlIHRoaXMudGFza3Nbcl07Y29uc3QgdD10aGlzLmFib3J0Q29udHJvbGxlcnNbcl07cmV0dXJuIGRlbGV0ZSB0aGlzLmFib3J0Q29udHJvbGxlcnNbcl0sdm9pZCh0JiZ0LmFib3J0KCkpfWlmKGsoc2VsZil8fGUubXVzdFF1ZXVlKXJldHVybiB0aGlzLnRhc2tzW3JdPWUsdGhpcy50YXNrUXVldWUucHVzaChyKSx2b2lkIHRoaXMuaW52b2tlci50cmlnZ2VyKCk7dGhpcy5wcm9jZXNzVGFzayhyLGUpO319cHJvY2Vzcygpe2lmKDA9PT10aGlzLnRhc2tRdWV1ZS5sZW5ndGgpcmV0dXJuO2NvbnN0IHQ9dGhpcy50YXNrUXVldWUuc2hpZnQoKSxlPXRoaXMudGFza3NbdF07ZGVsZXRlIHRoaXMudGFza3NbdF0sdGhpcy50YXNrUXVldWUubGVuZ3RoPjAmJnRoaXMuaW52b2tlci50cmlnZ2VyKCksZSYmdGhpcy5wcm9jZXNzVGFzayh0LGUpO31wcm9jZXNzVGFzayh0LHIpe3JldHVybiBlKHRoaXMsdm9pZCAwLHZvaWQgMCwoZnVuY3Rpb24qKCl7aWYoXCI8cmVzcG9uc2U+XCI9PT1yLnR5cGUpe2NvbnN0IGU9dGhpcy5yZXNvbHZlUmVqZWN0c1t0XTtpZihkZWxldGUgdGhpcy5yZXNvbHZlUmVqZWN0c1t0XSwhZSlyZXR1cm47cmV0dXJuIHZvaWQoci5lcnJvcj9lLnJlamVjdChNaShyLmVycm9yKSk6ZS5yZXNvbHZlKE1pKHIuZGF0YSkpKX1pZighdGhpcy5tZXNzYWdlSGFuZGxlcnNbci50eXBlXSlyZXR1cm4gdm9pZCB0aGlzLmNvbXBsZXRlVGFzayh0LG5ldyBFcnJvcihgQ291bGQgbm90IGZpbmQgYSByZWdpc3RlcmVkIGhhbmRsZXIgZm9yICR7ci50eXBlfSwgbWFwIElEOiAke3RoaXMubWFwSWR9LCBhdmFpbGFibGUgaGFuZGxlcnM6ICR7T2JqZWN0LmtleXModGhpcy5tZXNzYWdlSGFuZGxlcnMpLmpvaW4oXCIsIFwiKX1gKSk7Y29uc3QgZT1NaShyLmRhdGEpLG49bmV3IEFib3J0Q29udHJvbGxlcjt0aGlzLmFib3J0Q29udHJvbGxlcnNbdF09bjt0cnl7Y29uc3QgaT15aWVsZCB0aGlzLm1lc3NhZ2VIYW5kbGVyc1tyLnR5cGVdKHIuc291cmNlTWFwSWQsZSxuKTt0aGlzLmNvbXBsZXRlVGFzayh0LG51bGwsaSk7fWNhdGNoKGUpe3RoaXMuY29tcGxldGVUYXNrKHQsZSk7fX0pKX1jb21wbGV0ZVRhc2sodCxlLHIpe2NvbnN0IG49W107ZGVsZXRlIHRoaXMuYWJvcnRDb250cm9sbGVyc1t0XTtjb25zdCBpPXtpZDp0LHR5cGU6XCI8cmVzcG9uc2U+XCIsc291cmNlTWFwSWQ6dGhpcy5tYXBJZCxvcmlnaW46bG9jYXRpb24ub3JpZ2luLGVycm9yOmU/a2koZSk6bnVsbCxkYXRhOmtpKHIsbil9O3RoaXMudGFyZ2V0LnBvc3RNZXNzYWdlKGkse3RyYW5zZmVyOm59KTt9cmVtb3ZlKCl7dGhpcy5pbnZva2VyLnJlbW92ZSgpLHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7fX0sdC5HPSQsdC5IPWZ1bmN0aW9uKCl7dmFyIHQ9bmV3IG9vKDE2KTtyZXR1cm4gb28hPUZsb2F0MzJBcnJheSYmKHRbMV09MCx0WzJdPTAsdFszXT0wLHRbNF09MCx0WzZdPTAsdFs3XT0wLHRbOF09MCx0WzldPTAsdFsxMV09MCx0WzEyXT0wLHRbMTNdPTAsdFsxNF09MCksdFswXT0xLHRbNV09MSx0WzEwXT0xLHRbMTVdPTEsdH0sdC5JPVR1LHQuSj1mdW5jdGlvbih0LGUscil7dmFyIG4saSxzLGEsbyxsLHUsYyxoLHAsZixkLHk9clswXSxtPXJbMV0sZz1yWzJdO3JldHVybiBlPT09dD8odFsxMl09ZVswXSp5K2VbNF0qbStlWzhdKmcrZVsxMl0sdFsxM109ZVsxXSp5K2VbNV0qbStlWzldKmcrZVsxM10sdFsxNF09ZVsyXSp5K2VbNl0qbStlWzEwXSpnK2VbMTRdLHRbMTVdPWVbM10qeStlWzddKm0rZVsxMV0qZytlWzE1XSk6KGk9ZVsxXSxzPWVbMl0sYT1lWzNdLG89ZVs0XSxsPWVbNV0sdT1lWzZdLGM9ZVs3XSxoPWVbOF0scD1lWzldLGY9ZVsxMF0sZD1lWzExXSx0WzBdPW49ZVswXSx0WzFdPWksdFsyXT1zLHRbM109YSx0WzRdPW8sdFs1XT1sLHRbNl09dSx0WzddPWMsdFs4XT1oLHRbOV09cCx0WzEwXT1mLHRbMTFdPWQsdFsxMl09bip5K28qbStoKmcrZVsxMl0sdFsxM109aSp5K2wqbStwKmcrZVsxM10sdFsxNF09cyp5K3UqbStmKmcrZVsxNF0sdFsxNV09YSp5K2MqbStkKmcrZVsxNV0pLHR9LHQuSz1mdW5jdGlvbih0LGUscil7dmFyIG49clswXSxpPXJbMV0scz1yWzJdO3JldHVybiB0WzBdPWVbMF0qbix0WzFdPWVbMV0qbix0WzJdPWVbMl0qbix0WzNdPWVbM10qbix0WzRdPWVbNF0qaSx0WzVdPWVbNV0qaSx0WzZdPWVbNl0qaSx0WzddPWVbN10qaSx0WzhdPWVbOF0qcyx0WzldPWVbOV0qcyx0WzEwXT1lWzEwXSpzLHRbMTFdPWVbMTFdKnMsdFsxMl09ZVsxMl0sdFsxM109ZVsxM10sdFsxNF09ZVsxNF0sdFsxNV09ZVsxNV0sdH0sdC5MPXVvLHQuTT1mdW5jdGlvbih0LGUpe2NvbnN0IHI9e307Zm9yKGxldCBuPTA7bjxlLmxlbmd0aDtuKyspe2NvbnN0IGk9ZVtuXTtpIGluIHQmJihyW2ldPXRbaV0pO31yZXR1cm4gcn0sdC5OPVBjLHQuTz1WYyx0LlA9cyx0LlE9RWMsdC5SPUFvLHQuUz1qYyx0LlQ9WmksdC5VPWgsdC5WPXAsdC5XPVAsdC5YPSRhLHQuWT1scyx0Llo9JGMsdC5fPWUsdC5hPUYsdC5hJD1mdW5jdGlvbih0LGUpe3ZhciByPXRbMF0sbj10WzFdLGk9dFsyXSxzPXRbM10sYT10WzRdLG89dFs1XSxsPXRbNl0sdT10WzddLGM9dFs4XSxoPXRbOV0scD10WzEwXSxmPXRbMTFdLGQ9dFsxMl0seT10WzEzXSxtPXRbMTRdLGc9dFsxNV0seD1lWzBdLHY9ZVsxXSxiPWVbMl0sdz1lWzNdLF89ZVs0XSxBPWVbNV0sUz1lWzZdLGs9ZVs3XSxNPWVbOF0sST1lWzldLHo9ZVsxMF0sUD1lWzExXSxDPWVbMTJdLEI9ZVsxM10sVj1lWzE0XSxFPWVbMTVdO3JldHVybiBNYXRoLmFicyhyLXgpPD1hbypNYXRoLm1heCgxLE1hdGguYWJzKHIpLE1hdGguYWJzKHgpKSYmTWF0aC5hYnMobi12KTw9YW8qTWF0aC5tYXgoMSxNYXRoLmFicyhuKSxNYXRoLmFicyh2KSkmJk1hdGguYWJzKGktYik8PWFvKk1hdGgubWF4KDEsTWF0aC5hYnMoaSksTWF0aC5hYnMoYikpJiZNYXRoLmFicyhzLXcpPD1hbypNYXRoLm1heCgxLE1hdGguYWJzKHMpLE1hdGguYWJzKHcpKSYmTWF0aC5hYnMoYS1fKTw9YW8qTWF0aC5tYXgoMSxNYXRoLmFicyhhKSxNYXRoLmFicyhfKSkmJk1hdGguYWJzKG8tQSk8PWFvKk1hdGgubWF4KDEsTWF0aC5hYnMobyksTWF0aC5hYnMoQSkpJiZNYXRoLmFicyhsLVMpPD1hbypNYXRoLm1heCgxLE1hdGguYWJzKGwpLE1hdGguYWJzKFMpKSYmTWF0aC5hYnModS1rKTw9YW8qTWF0aC5tYXgoMSxNYXRoLmFicyh1KSxNYXRoLmFicyhrKSkmJk1hdGguYWJzKGMtTSk8PWFvKk1hdGgubWF4KDEsTWF0aC5hYnMoYyksTWF0aC5hYnMoTSkpJiZNYXRoLmFicyhoLUkpPD1hbypNYXRoLm1heCgxLE1hdGguYWJzKGgpLE1hdGguYWJzKEkpKSYmTWF0aC5hYnMocC16KTw9YW8qTWF0aC5tYXgoMSxNYXRoLmFicyhwKSxNYXRoLmFicyh6KSkmJk1hdGguYWJzKGYtUCk8PWFvKk1hdGgubWF4KDEsTWF0aC5hYnMoZiksTWF0aC5hYnMoUCkpJiZNYXRoLmFicyhkLUMpPD1hbypNYXRoLm1heCgxLE1hdGguYWJzKGQpLE1hdGguYWJzKEMpKSYmTWF0aC5hYnMoeS1CKTw9YW8qTWF0aC5tYXgoMSxNYXRoLmFicyh5KSxNYXRoLmFicyhCKSkmJk1hdGguYWJzKG0tVik8PWFvKk1hdGgubWF4KDEsTWF0aC5hYnMobSksTWF0aC5hYnMoVikpJiZNYXRoLmFicyhnLUUpPD1hbypNYXRoLm1heCgxLE1hdGguYWJzKGcpLE1hdGguYWJzKEUpKX0sdC5hMD1vYSx0LmExPURjLHQuYTI9aXQsdC5hMz10PT57Y29uc3QgZT13aW5kb3cuZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcInZpZGVvXCIpO3JldHVybiBlLm11dGVkPSEwLG5ldyBQcm9taXNlKChyPT57ZS5vbmxvYWRzdGFydD0oKT0+e3IoZSk7fTtmb3IoY29uc3QgciBvZiB0KXtjb25zdCB0PXdpbmRvdy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KFwic291cmNlXCIpO2oocil8fChlLmNyb3NzT3JpZ2luPVwiQW5vbnltb3VzXCIpLHQuc3JjPXIsZS5hcHBlbmRDaGlsZCh0KTt9fSkpfSx0LmE0PWZ1bmN0aW9uKCl7cmV0dXJuIHgrK30sdC5hNT1Gcyx0LmE2PWRjLHQuYTc9em4sdC5hOD1qYSx0LmE5PU5jLHQuYUE9ZnVuY3Rpb24odCl7aWYoXCJjdXN0b21cIj09PXQudHlwZSlyZXR1cm4gbmV3IE1jKHQpO3N3aXRjaCh0LnR5cGUpe2Nhc2VcImJhY2tncm91bmRcIjpyZXR1cm4gbmV3IF9jKHQpO2Nhc2VcImNpcmNsZVwiOnJldHVybiBuZXcgZm8odCk7Y2FzZVwiZmlsbFwiOnJldHVybiBuZXcgdWwodCk7Y2FzZVwiZmlsbC1leHRydXNpb25cIjpyZXR1cm4gbmV3IEVsKHQpO2Nhc2VcImhlYXRtYXBcIjpyZXR1cm4gbmV3IE1vKHQpO2Nhc2VcImhpbGxzaGFkZVwiOnJldHVybiBuZXcgUG8odCk7Y2FzZVwibGluZVwiOnJldHVybiBuZXcgSGwodCk7Y2FzZVwicmFzdGVyXCI6cmV0dXJuIG5ldyBrYyh0KTtjYXNlXCJzeW1ib2xcIjpyZXR1cm4gbmV3IHZjKHQpfX0sdC5hQj13LHQuYUM9ZnVuY3Rpb24odCxlKXtpZighdClyZXR1cm4gW3tjb21tYW5kOlwic2V0U3R5bGVcIixhcmdzOltlXX1dO2xldCByPVtdO3RyeXtpZighSCh0LnZlcnNpb24sZS52ZXJzaW9uKSlyZXR1cm4gW3tjb21tYW5kOlwic2V0U3R5bGVcIixhcmdzOltlXX1dO0godC5jZW50ZXIsZS5jZW50ZXIpfHxyLnB1c2goe2NvbW1hbmQ6XCJzZXRDZW50ZXJcIixhcmdzOltlLmNlbnRlcl19KSxIKHQuem9vbSxlLnpvb20pfHxyLnB1c2goe2NvbW1hbmQ6XCJzZXRab29tXCIsYXJnczpbZS56b29tXX0pLEgodC5iZWFyaW5nLGUuYmVhcmluZyl8fHIucHVzaCh7Y29tbWFuZDpcInNldEJlYXJpbmdcIixhcmdzOltlLmJlYXJpbmddfSksSCh0LnBpdGNoLGUucGl0Y2gpfHxyLnB1c2goe2NvbW1hbmQ6XCJzZXRQaXRjaFwiLGFyZ3M6W2UucGl0Y2hdfSksSCh0LnNwcml0ZSxlLnNwcml0ZSl8fHIucHVzaCh7Y29tbWFuZDpcInNldFNwcml0ZVwiLGFyZ3M6W2Uuc3ByaXRlXX0pLEgodC5nbHlwaHMsZS5nbHlwaHMpfHxyLnB1c2goe2NvbW1hbmQ6XCJzZXRHbHlwaHNcIixhcmdzOltlLmdseXBoc119KSxIKHQudHJhbnNpdGlvbixlLnRyYW5zaXRpb24pfHxyLnB1c2goe2NvbW1hbmQ6XCJzZXRUcmFuc2l0aW9uXCIsYXJnczpbZS50cmFuc2l0aW9uXX0pLEgodC5saWdodCxlLmxpZ2h0KXx8ci5wdXNoKHtjb21tYW5kOlwic2V0TGlnaHRcIixhcmdzOltlLmxpZ2h0XX0pLEgodC50ZXJyYWluLGUudGVycmFpbil8fHIucHVzaCh7Y29tbWFuZDpcInNldFRlcnJhaW5cIixhcmdzOltlLnRlcnJhaW5dfSksSCh0LnNreSxlLnNreSl8fHIucHVzaCh7Y29tbWFuZDpcInNldFNreVwiLGFyZ3M6W2Uuc2t5XX0pLEgodC5wcm9qZWN0aW9uLGUucHJvamVjdGlvbil8fHIucHVzaCh7Y29tbWFuZDpcInNldFByb2plY3Rpb25cIixhcmdzOltlLnByb2plY3Rpb25dfSk7Y29uc3Qgbj17fSxpPVtdOyFmdW5jdGlvbih0LGUscixuKXtsZXQgaTtmb3IoaSBpbiBlPWV8fHt9LHQ9dHx8e30pT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQsaSkmJihPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSxpKXx8VyhpLHIsbikpO2ZvcihpIGluIGUpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsaSkmJihPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodCxpKT9IKHRbaV0sZVtpXSl8fChcImdlb2pzb25cIj09PXRbaV0udHlwZSYmXCJnZW9qc29uXCI9PT1lW2ldLnR5cGUmJnR0KHQsZSxpKT9ZKHIse2NvbW1hbmQ6XCJzZXRHZW9KU09OU291cmNlRGF0YVwiLGFyZ3M6W2ksZVtpXS5kYXRhXX0pOlEoaSxlLHIsbikpOkooaSxlLHIpKTt9KHQuc291cmNlcyxlLnNvdXJjZXMsaSxuKTtjb25zdCBzPVtdO3QubGF5ZXJzJiZ0LmxheWVycy5mb3JFYWNoKCh0PT57XCJzb3VyY2VcImluIHQmJm5bdC5zb3VyY2VdP3IucHVzaCh7Y29tbWFuZDpcInJlbW92ZUxheWVyXCIsYXJnczpbdC5pZF19KTpzLnB1c2godCk7fSkpLHI9ci5jb25jYXQoaSksZnVuY3Rpb24odCxlLHIpe2U9ZXx8W107Y29uc3Qgbj0odD10fHxbXSkubWFwKHJ0KSxpPWUubWFwKHJ0KSxzPXQucmVkdWNlKG50LHt9KSxhPWUucmVkdWNlKG50LHt9KSxvPW4uc2xpY2UoKSxsPU9iamVjdC5jcmVhdGUobnVsbCk7bGV0IHUsYyxoLHAsZjtmb3IobGV0IHQ9MCxlPTA7dDxuLmxlbmd0aDt0KyspdT1uW3RdLE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChhLHUpP2UrKzooWShyLHtjb21tYW5kOlwicmVtb3ZlTGF5ZXJcIixhcmdzOlt1XX0pLG8uc3BsaWNlKG8uaW5kZXhPZih1LGUpLDEpKTtmb3IobGV0IHQ9MCxlPTA7dDxpLmxlbmd0aDt0KyspdT1pW2kubGVuZ3RoLTEtdF0sb1tvLmxlbmd0aC0xLXRdIT09dSYmKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzLHUpPyhZKHIse2NvbW1hbmQ6XCJyZW1vdmVMYXllclwiLGFyZ3M6W3VdfSksby5zcGxpY2Uoby5sYXN0SW5kZXhPZih1LG8ubGVuZ3RoLWUpLDEpKTplKysscD1vW28ubGVuZ3RoLXRdLFkocix7Y29tbWFuZDpcImFkZExheWVyXCIsYXJnczpbYVt1XSxwXX0pLG8uc3BsaWNlKG8ubGVuZ3RoLXQsMCx1KSxsW3VdPSEwKTtmb3IobGV0IHQ9MDt0PGkubGVuZ3RoO3QrKylpZih1PWlbdF0sYz1zW3VdLGg9YVt1XSwhbFt1XSYmIUgoYyxoKSlpZihIKGMuc291cmNlLGguc291cmNlKSYmSChjW1wic291cmNlLWxheWVyXCJdLGhbXCJzb3VyY2UtbGF5ZXJcIl0pJiZIKGMudHlwZSxoLnR5cGUpKXtmb3IoZiBpbiBldChjLmxheW91dCxoLmxheW91dCxyLHUsbnVsbCxcInNldExheW91dFByb3BlcnR5XCIpLGV0KGMucGFpbnQsaC5wYWludCxyLHUsbnVsbCxcInNldFBhaW50UHJvcGVydHlcIiksSChjLmZpbHRlcixoLmZpbHRlcil8fFkocix7Y29tbWFuZDpcInNldEZpbHRlclwiLGFyZ3M6W3UsaC5maWx0ZXJdfSksSChjLm1pbnpvb20saC5taW56b29tKSYmSChjLm1heHpvb20saC5tYXh6b29tKXx8WShyLHtjb21tYW5kOlwic2V0TGF5ZXJab29tUmFuZ2VcIixhcmdzOlt1LGgubWluem9vbSxoLm1heHpvb21dfSksYylPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYyxmKSYmXCJsYXlvdXRcIiE9PWYmJlwicGFpbnRcIiE9PWYmJlwiZmlsdGVyXCIhPT1mJiZcIm1ldGFkYXRhXCIhPT1mJiZcIm1pbnpvb21cIiE9PWYmJlwibWF4em9vbVwiIT09ZiYmKDA9PT1mLmluZGV4T2YoXCJwYWludC5cIik/ZXQoY1tmXSxoW2ZdLHIsdSxmLnNsaWNlKDYpLFwic2V0UGFpbnRQcm9wZXJ0eVwiKTpIKGNbZl0saFtmXSl8fFkocix7Y29tbWFuZDpcInNldExheWVyUHJvcGVydHlcIixhcmdzOlt1LGYsaFtmXV19KSk7Zm9yKGYgaW4gaClPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoaCxmKSYmIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChjLGYpJiZcImxheW91dFwiIT09ZiYmXCJwYWludFwiIT09ZiYmXCJmaWx0ZXJcIiE9PWYmJlwibWV0YWRhdGFcIiE9PWYmJlwibWluem9vbVwiIT09ZiYmXCJtYXh6b29tXCIhPT1mJiYoMD09PWYuaW5kZXhPZihcInBhaW50LlwiKT9ldChjW2ZdLGhbZl0scix1LGYuc2xpY2UoNiksXCJzZXRQYWludFByb3BlcnR5XCIpOkgoY1tmXSxoW2ZdKXx8WShyLHtjb21tYW5kOlwic2V0TGF5ZXJQcm9wZXJ0eVwiLGFyZ3M6W3UsZixoW2ZdXX0pKTt9ZWxzZSBZKHIse2NvbW1hbmQ6XCJyZW1vdmVMYXllclwiLGFyZ3M6W3VdfSkscD1vW28ubGFzdEluZGV4T2YodSkrMV0sWShyLHtjb21tYW5kOlwiYWRkTGF5ZXJcIixhcmdzOltoLHBdfSk7fShzLGUubGF5ZXJzLHIpO31jYXRjaCh0KXtjb25zb2xlLndhcm4oXCJVbmFibGUgdG8gY29tcHV0ZSBzdHlsZSBkaWZmOlwiLHQpLHI9W3tjb21tYW5kOlwic2V0U3R5bGVcIixhcmdzOltlXX1dO31yZXR1cm4gcn0sdC5hRD1mdW5jdGlvbih0KXtjb25zdCBlPVtdLHI9dC5pZDtyZXR1cm4gdm9pZCAwPT09ciYmZS5wdXNoKHttZXNzYWdlOmBsYXllcnMuJHtyfTogbWlzc2luZyByZXF1aXJlZCBwcm9wZXJ0eSBcImlkXCJgfSksdm9pZCAwPT09dC5yZW5kZXImJmUucHVzaCh7bWVzc2FnZTpgbGF5ZXJzLiR7cn06IG1pc3NpbmcgcmVxdWlyZWQgbWV0aG9kIFwicmVuZGVyXCJgfSksdC5yZW5kZXJpbmdNb2RlJiZcIjJkXCIhPT10LnJlbmRlcmluZ01vZGUmJlwiM2RcIiE9PXQucmVuZGVyaW5nTW9kZSYmZS5wdXNoKHttZXNzYWdlOmBsYXllcnMuJHtyfTogcHJvcGVydHkgXCJyZW5kZXJpbmdNb2RlXCIgbXVzdCBiZSBlaXRoZXIgXCIyZFwiIG9yIFwiM2RcImB9KSxlfSx0LmFFPWZ1bmN0aW9uIHQoZSxyKXtpZihBcnJheS5pc0FycmF5KGUpKXtpZighQXJyYXkuaXNBcnJheShyKXx8ZS5sZW5ndGghPT1yLmxlbmd0aClyZXR1cm4gITE7Zm9yKGxldCBuPTA7bjxlLmxlbmd0aDtuKyspaWYoIXQoZVtuXSxyW25dKSlyZXR1cm4gITE7cmV0dXJuICEwfWlmKFwib2JqZWN0XCI9PXR5cGVvZiBlJiZudWxsIT09ZSYmbnVsbCE9PXIpe2lmKFwib2JqZWN0XCIhPXR5cGVvZiByKXJldHVybiAhMTtpZihPYmplY3Qua2V5cyhlKS5sZW5ndGghPT1PYmplY3Qua2V5cyhyKS5sZW5ndGgpcmV0dXJuICExO2Zvcihjb25zdCBuIGluIGUpaWYoIXQoZVtuXSxyW25dKSlyZXR1cm4gITE7cmV0dXJuICEwfXJldHVybiBlPT09cn0sdC5hRj12LHQuYUc9Yix0LmFIPWNsYXNzIGV4dGVuZHMgd2F7Y29uc3RydWN0b3IodCxlKXtzdXBlcih0LGUpLHRoaXMuY3VycmVudD0wO31zZXQodCl7dGhpcy5jdXJyZW50IT09dCYmKHRoaXMuY3VycmVudD10LHRoaXMuZ2wudW5pZm9ybTFpKHRoaXMubG9jYXRpb24sdCkpO319LHQuYUk9X2EsdC5hSj1jbGFzcyBleHRlbmRzIHdhe2NvbnN0cnVjdG9yKHQsZSl7c3VwZXIodCxlKSx0aGlzLmN1cnJlbnQ9a2E7fXNldCh0KXtpZih0WzEyXSE9PXRoaXMuY3VycmVudFsxMl18fHRbMF0hPT10aGlzLmN1cnJlbnRbMF0pcmV0dXJuIHRoaXMuY3VycmVudD10LHZvaWQgdGhpcy5nbC51bmlmb3JtTWF0cml4NGZ2KHRoaXMubG9jYXRpb24sITEsdCk7Zm9yKGxldCBlPTE7ZTwxNjtlKyspaWYodFtlXSE9PXRoaXMuY3VycmVudFtlXSl7dGhpcy5jdXJyZW50PXQsdGhpcy5nbC51bmlmb3JtTWF0cml4NGZ2KHRoaXMubG9jYXRpb24sITEsdCk7YnJlYWt9fX0sdC5hSz1BYSx0LmFMPVNhLHQuYU09S3QsdC5hTj1jbGFzcyBleHRlbmRzIHdhe2NvbnN0cnVjdG9yKHQsZSl7c3VwZXIodCxlKSx0aGlzLmN1cnJlbnQ9WzAsMCwwXTt9c2V0KHQpe3RbMF09PT10aGlzLmN1cnJlbnRbMF0mJnRbMV09PT10aGlzLmN1cnJlbnRbMV0mJnRbMl09PT10aGlzLmN1cnJlbnRbMl18fCh0aGlzLmN1cnJlbnQ9dCx0aGlzLmdsLnVuaWZvcm0zZih0aGlzLmxvY2F0aW9uLHRbMF0sdFsxXSx0WzJdKSk7fX0sdC5hTz1jbGFzcyBleHRlbmRzIHdhe2NvbnN0cnVjdG9yKHQsZSl7c3VwZXIodCxlKSx0aGlzLmN1cnJlbnQ9WzAsMF07fXNldCh0KXt0WzBdPT09dGhpcy5jdXJyZW50WzBdJiZ0WzFdPT09dGhpcy5jdXJyZW50WzFdfHwodGhpcy5jdXJyZW50PXQsdGhpcy5nbC51bmlmb3JtMmYodGhpcy5sb2NhdGlvbix0WzBdLHRbMV0pKTt9fSx0LmFQPWZ1bmN0aW9uKHQsZSxyLG4saSxzLGEpe3ZhciBvPTEvKGUtciksbD0xLyhuLWkpLHU9MS8ocy1hKTtyZXR1cm4gdFswXT0tMipvLHRbMV09MCx0WzJdPTAsdFszXT0wLHRbNF09MCx0WzVdPS0yKmwsdFs2XT0wLHRbN109MCx0WzhdPTAsdFs5XT0wLHRbMTBdPTIqdSx0WzExXT0wLHRbMTJdPShlK3IpKm8sdFsxM109KGkrbikqbCx0WzE0XT0oYStzKSp1LHRbMTVdPTEsdH0sdC5hUT1obyx0LmFSPWNsYXNzIGV4dGVuZHMgX3N7fSx0LmFTPWV1LHQuYVQ9Y2xhc3MgZXh0ZW5kcyBTc3t9LHQuYVU9a28sdC5hVj1mdW5jdGlvbih0KXtyZXR1cm4gdDw9MT8xOk1hdGgucG93KDIsTWF0aC5jZWlsKE1hdGgubG9nKHQpL01hdGguTE4yKSl9LHQuYVc9U28sdC5hWD1acyx0LmFZPW5hLHQuYVo9Y2xhc3MgZXh0ZW5kcyBCc3t9LHQuYV89ZnVuY3Rpb24odCxlKXtyZXR1cm4gdFswXT09PWVbMF0mJnRbMV09PT1lWzFdJiZ0WzJdPT09ZVsyXSYmdFszXT09PWVbM10mJnRbNF09PT1lWzRdJiZ0WzVdPT09ZVs1XSYmdFs2XT09PWVbNl0mJnRbN109PT1lWzddJiZ0WzhdPT09ZVs4XSYmdFs5XT09PWVbOV0mJnRbMTBdPT09ZVsxMF0mJnRbMTFdPT09ZVsxMV0mJnRbMTJdPT09ZVsxMl0mJnRbMTNdPT09ZVsxM10mJnRbMTRdPT09ZVsxNF0mJnRbMTVdPT09ZVsxNV19LHQuYWE9ZnVuY3Rpb24odCl7Y29uc3QgZT17fTtpZih0LnJlcGxhY2UoLyg/Ol58KD86XFxzKlxcLFxccyopKShbXlxceDAwLVxceDIwXFwoXFwpPD5AXFwsO1xcOlxcXFxcIlxcL1xcW1xcXVxcP1xcPVxce1xcfVxceDdGXSspKD86XFw9KD86KFteXFx4MDAtXFx4MjBcXChcXCk8PkBcXCw7XFw6XFxcXFwiXFwvXFxbXFxdXFw/XFw9XFx7XFx9XFx4N0ZdKyl8KD86XFxcIigoPzpbXlwiXFxcXF18XFxcXC4pKilcXFwiKSkpPy9nLCgodCxyLG4saSk9Pntjb25zdCBzPW58fGk7cmV0dXJuIGVbcl09IXN8fHMudG9Mb3dlckNhc2UoKSxcIlwifSkpLGVbXCJtYXgtYWdlXCJdKXtjb25zdCB0PXBhcnNlSW50KGVbXCJtYXgtYWdlXCJdLDEwKTtpc05hTih0KT9kZWxldGUgZVtcIm1heC1hZ2VcIl06ZVtcIm1heC1hZ2VcIl09dDt9cmV0dXJuIGV9LHQuYWI9ZnVuY3Rpb24odCxlKXtjb25zdCByPVtdO2Zvcihjb25zdCBuIGluIHQpbiBpbiBlfHxyLnB1c2gobik7cmV0dXJuIHJ9LHQuYWM9eSx0LmFkPWZ1bmN0aW9uKHQsZSxyKXt2YXIgbj1NYXRoLnNpbihyKSxpPU1hdGguY29zKHIpLHM9ZVswXSxhPWVbMV0sbz1lWzJdLGw9ZVszXSx1PWVbNF0sYz1lWzVdLGg9ZVs2XSxwPWVbN107cmV0dXJuIGUhPT10JiYodFs4XT1lWzhdLHRbOV09ZVs5XSx0WzEwXT1lWzEwXSx0WzExXT1lWzExXSx0WzEyXT1lWzEyXSx0WzEzXT1lWzEzXSx0WzE0XT1lWzE0XSx0WzE1XT1lWzE1XSksdFswXT1zKmkrdSpuLHRbMV09YSppK2Mqbix0WzJdPW8qaStoKm4sdFszXT1sKmkrcCpuLHRbNF09dSppLXMqbix0WzVdPWMqaS1hKm4sdFs2XT1oKmktbypuLHRbN109cCppLWwqbix0fSx0LmFlPWZ1bmN0aW9uKHQpe3ZhciBlPW5ldyBvbygxNik7cmV0dXJuIGVbMF09dFswXSxlWzFdPXRbMV0sZVsyXT10WzJdLGVbM109dFszXSxlWzRdPXRbNF0sZVs1XT10WzVdLGVbNl09dFs2XSxlWzddPXRbN10sZVs4XT10WzhdLGVbOV09dFs5XSxlWzEwXT10WzEwXSxlWzExXT10WzExXSxlWzEyXT10WzEyXSxlWzEzXT10WzEzXSxlWzE0XT10WzE0XSxlWzE1XT10WzE1XSxlfSx0LmFmPXBvLHQuYWc9ZnVuY3Rpb24odCxlKXtsZXQgcj0wLG49MDtpZihcImNvbnN0YW50XCI9PT10LmtpbmQpbj10LmxheW91dFNpemU7ZWxzZSBpZihcInNvdXJjZVwiIT09dC5raW5kKXtjb25zdHtpbnRlcnBvbGF0aW9uVHlwZTppLG1pblpvb206cyxtYXhab29tOmF9PXQsbz1pP3koQmUuaW50ZXJwb2xhdGlvbkZhY3RvcihpLGUscyxhKSwwLDEpOjA7XCJjYW1lcmFcIj09PXQua2luZD9uPUNlLm51bWJlcih0Lm1pblNpemUsdC5tYXhTaXplLG8pOnI9bzt9cmV0dXJuIHt1U2l6ZVQ6cix1U2l6ZTpufX0sdC5haT1mdW5jdGlvbih0LHt1U2l6ZTplLHVTaXplVDpyfSx7bG93ZXJTaXplOm4sdXBwZXJTaXplOml9KXtyZXR1cm4gXCJzb3VyY2VcIj09PXQua2luZD9uL25jOlwiY29tcG9zaXRlXCI9PT10LmtpbmQ/Q2UubnVtYmVyKG4vbmMsaS9uYyxyKTplfSx0LmFqPWNjLHQuYWs9ZnVuY3Rpb24odCxlLHIsbil7Y29uc3QgaT1lLnktdC55LGE9ZS54LXQueCxvPW4ueS1yLnksbD1uLngtci54LHU9byphLWwqaTtpZigwPT09dSlyZXR1cm4gbnVsbDtjb25zdCBjPShsKih0Lnktci55KS1vKih0Lngtci54KSkvdTtyZXR1cm4gbmV3IHModC54K2MqYSx0LnkrYyppKX0sdC5hbD1IYyx0LmFtPXFhLHQuYW49bG8sdC5hbz1mdW5jdGlvbih0KXtsZXQgZT0xLzAscj0xLzAsbj0tMS8wLGk9LTEvMDtmb3IoY29uc3QgcyBvZiB0KWU9TWF0aC5taW4oZSxzLngpLHI9TWF0aC5taW4ocixzLnkpLG49TWF0aC5tYXgobixzLngpLGk9TWF0aC5tYXgoaSxzLnkpO3JldHVybiBbZSxyLG4saV19LHQuYXA9aXUsdC5hcj1hYyx0LmFzPWZ1bmN0aW9uKHQsZSl7dmFyIHI9ZVswXSxuPWVbMV0saT1lWzJdLHM9ZVszXSxhPWVbNF0sbz1lWzVdLGw9ZVs2XSx1PWVbN10sYz1lWzhdLGg9ZVs5XSxwPWVbMTBdLGY9ZVsxMV0sZD1lWzEyXSx5PWVbMTNdLG09ZVsxNF0sZz1lWzE1XSx4PXIqby1uKmEsdj1yKmwtaSphLGI9cip1LXMqYSx3PW4qbC1pKm8sXz1uKnUtcypvLEE9aSp1LXMqbCxTPWMqeS1oKmQsaz1jKm0tcCpkLE09YypnLWYqZCxJPWgqbS1wKnksej1oKmctZip5LFA9cCpnLWYqbSxDPXgqUC12KnorYipJK3cqTS1fKmsrQSpTO3JldHVybiBDPyh0WzBdPShvKlAtbCp6K3UqSSkqKEM9MS9DKSx0WzFdPShpKnotbipQLXMqSSkqQyx0WzJdPSh5KkEtbSpfK2cqdykqQyx0WzNdPShwKl8taCpBLWYqdykqQyx0WzRdPShsKk0tYSpQLXUqaykqQyx0WzVdPShyKlAtaSpNK3MqaykqQyx0WzZdPShtKmItZCpBLWcqdikqQyx0WzddPShjKkEtcCpiK2YqdikqQyx0WzhdPShhKnotbypNK3UqUykqQyx0WzldPShuKk0tcip6LXMqUykqQyx0WzEwXT0oZCpfLXkqYitnKngpKkMsdFsxMV09KGgqYi1jKl8tZip4KSpDLHRbMTJdPShvKmstYSpJLWwqUykqQyx0WzEzXT0ocipJLW4qaytpKlMpKkMsdFsxNF09KHkqdi1kKnctbSp4KSpDLHRbMTVdPShjKnctaCp2K3AqeCkqQyx0KTpudWxsfSx0LmF0PWJoLHQuYXU9SnUsdC5hdj1NaCx0LmF3PWZ1bmN0aW9uKCl7Y29uc3QgdD17fSxlPUcuJHZlcnNpb247Zm9yKGNvbnN0IHIgaW4gRy4kcm9vdCl7Y29uc3Qgbj1HLiRyb290W3JdO2lmKG4ucmVxdWlyZWQpe2xldCBpPW51bGw7aT1cInZlcnNpb25cIj09PXI/ZTpcImFycmF5XCI9PT1uLnR5cGU/W106e30sbnVsbCE9aSYmKHRbcl09aSk7fX1yZXR1cm4gdH0sdC5heD1JaSx0LmF5PUQsdC5hej1mdW5jdGlvbih0KXt0PXQuc2xpY2UoKTtjb25zdCBlPU9iamVjdC5jcmVhdGUobnVsbCk7Zm9yKGxldCByPTA7cjx0Lmxlbmd0aDtyKyspZVt0W3JdLmlkXT10W3JdO2ZvcihsZXQgcj0wO3I8dC5sZW5ndGg7cisrKVwicmVmXCJpbiB0W3JdJiYodFtyXT1YKHRbcl0sZVt0W3JdLnJlZl0pKTtyZXR1cm4gdH0sdC5iPUksdC5iMD1mdW5jdGlvbih0LGUpe3JldHVybiB0WzBdPWVbMF0sdFsxXT1lWzFdLHRbMl09ZVsyXSx0WzNdPWVbM10sdFs0XT1lWzRdLHRbNV09ZVs1XSx0WzZdPWVbNl0sdFs3XT1lWzddLHRbOF09ZVs4XSx0WzldPWVbOV0sdFsxMF09ZVsxMF0sdFsxMV09ZVsxMV0sdFsxMl09ZVsxMl0sdFsxM109ZVsxM10sdFsxNF09ZVsxNF0sdFsxNV09ZVsxNV0sdH0sdC5iMT1mdW5jdGlvbih0LGUscil7cmV0dXJuIHRbMF09ZVswXSpyWzBdLHRbMV09ZVsxXSpyWzFdLHRbMl09ZVsyXSpyWzJdLHRbM109ZVszXSpyWzNdLHR9LHQuYjI9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdFswXSplWzBdK3RbMV0qZVsxXSt0WzJdKmVbMl0rdFszXSplWzNdfSx0LmIzPW0sdC5iND1PYyx0LmI1PUZjLHQuYjY9ZnVuY3Rpb24odCxlLHIsbixpKXt2YXIgcyxhPTEvTWF0aC50YW4oZS8yKTtyZXR1cm4gdFswXT1hL3IsdFsxXT0wLHRbMl09MCx0WzNdPTAsdFs0XT0wLHRbNV09YSx0WzZdPTAsdFs3XT0wLHRbOF09MCx0WzldPTAsdFsxMV09LTEsdFsxMl09MCx0WzEzXT0wLHRbMTVdPTAsbnVsbCE9aSYmaSE9PTEvMD8odFsxMF09KGkrbikqKHM9MS8obi1pKSksdFsxNF09MippKm4qcyk6KHRbMTBdPS0xLHRbMTRdPS0yKm4pLHR9LHQuYjc9ZnVuY3Rpb24odCxlLHIpe3ZhciBuPU1hdGguc2luKHIpLGk9TWF0aC5jb3Mocikscz1lWzRdLGE9ZVs1XSxvPWVbNl0sbD1lWzddLHU9ZVs4XSxjPWVbOV0saD1lWzEwXSxwPWVbMTFdO3JldHVybiBlIT09dCYmKHRbMF09ZVswXSx0WzFdPWVbMV0sdFsyXT1lWzJdLHRbM109ZVszXSx0WzEyXT1lWzEyXSx0WzEzXT1lWzEzXSx0WzE0XT1lWzE0XSx0WzE1XT1lWzE1XSksdFs0XT1zKmkrdSpuLHRbNV09YSppK2Mqbix0WzZdPW8qaStoKm4sdFs3XT1sKmkrcCpuLHRbOF09dSppLXMqbix0WzldPWMqaS1hKm4sdFsxMF09aCppLW8qbix0WzExXT1wKmktbCpuLHR9LHQuYjg9Zix0LmI5PWQsdC5iQT1zdSx0LmJCPWZ1bmN0aW9uKHQpe3JldHVybiB0Lm1lc3NhZ2U9PT1WfSx0LmJDPWJuLHQuYkQ9UmksdC5iYT1mdW5jdGlvbih0KXtyZXR1cm4gdCpNYXRoLlBJLzE4MH0sdC5iYj1mdW5jdGlvbih0LGUpe2NvbnN0e3g6cix5Om59PSRjLmZyb21MbmdMYXQoZSk7cmV0dXJuICEodDwwfHx0PjI1fHxuPDB8fG4+PTF8fHI8MHx8cj49MSl9LHQuYmM9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdFswXT1lWzBdLHRbMV09MCx0WzJdPTAsdFszXT0wLHRbNF09MCx0WzVdPWVbMV0sdFs2XT0wLHRbN109MCx0WzhdPTAsdFs5XT0wLHRbMTBdPWVbMl0sdFsxMV09MCx0WzEyXT0wLHRbMTNdPTAsdFsxNF09MCx0WzE1XT0xLHR9LHQuYmQ9Y2xhc3MgZXh0ZW5kcyBoc3t9LHQuYmU9emMsdC5iZj1EaCx0LmJoPUwsdC5iaT1mdW5jdGlvbih0LGUpe0YuUkVHSVNURVJFRF9QUk9UT0NPTFNbdF09ZTt9LHQuYmo9ZnVuY3Rpb24odCl7ZGVsZXRlIEYuUkVHSVNURVJFRF9QUk9UT0NPTFNbdF07fSx0LmJrPWZ1bmN0aW9uKHQsZSl7Y29uc3Qgcj17fTtmb3IobGV0IG49MDtuPHQubGVuZ3RoO24rKyl7Y29uc3QgaT1lJiZlW3Rbbl0uaWRdfHxMbih0W25dKTtlJiYoZVt0W25dLmlkXT1pKTtsZXQgcz1yW2ldO3N8fChzPXJbaV09W10pLHMucHVzaCh0W25dKTt9Y29uc3Qgbj1bXTtmb3IoY29uc3QgdCBpbiByKW4ucHVzaChyW3RdKTtyZXR1cm4gbn0sdC5ibD13aSx0LmJtPXFjLHQuYm49WmMsdC5ibz0kdSx0LmJwPWZ1bmN0aW9uKGUpe2UuYnVja2V0LmNyZWF0ZUFycmF5cygpLGUuYnVja2V0LnRpbGVQaXhlbFJhdGlvPSRhLyg1MTIqZS5idWNrZXQub3ZlcnNjYWxpbmcpLGUuYnVja2V0LmNvbXBhcmVUZXh0PXt9LGUuYnVja2V0Lmljb25zTmVlZExpbmVhcj0hMTtjb25zdCByPWUuYnVja2V0LmxheWVyc1swXSxuPXIubGF5b3V0LGk9ci5fdW5ldmFsdWF0ZWRMYXlvdXQuX3ZhbHVlcyxzPXtsYXlvdXRJY29uU2l6ZTppW1wiaWNvbi1zaXplXCJdLnBvc3NpYmx5RXZhbHVhdGUobmV3IFVpKGUuYnVja2V0Lnpvb20rMSksZS5jYW5vbmljYWwpLGxheW91dFRleHRTaXplOmlbXCJ0ZXh0LXNpemVcIl0ucG9zc2libHlFdmFsdWF0ZShuZXcgVWkoZS5idWNrZXQuem9vbSsxKSxlLmNhbm9uaWNhbCksdGV4dE1heFNpemU6aVtcInRleHQtc2l6ZVwiXS5wb3NzaWJseUV2YWx1YXRlKG5ldyBVaSgxOCkpfTtpZihcImNvbXBvc2l0ZVwiPT09ZS5idWNrZXQudGV4dFNpemVEYXRhLmtpbmQpe2NvbnN0e21pblpvb206dCxtYXhab29tOnJ9PWUuYnVja2V0LnRleHRTaXplRGF0YTtzLmNvbXBvc2l0ZVRleHRTaXplcz1baVtcInRleHQtc2l6ZVwiXS5wb3NzaWJseUV2YWx1YXRlKG5ldyBVaSh0KSxlLmNhbm9uaWNhbCksaVtcInRleHQtc2l6ZVwiXS5wb3NzaWJseUV2YWx1YXRlKG5ldyBVaShyKSxlLmNhbm9uaWNhbCldO31pZihcImNvbXBvc2l0ZVwiPT09ZS5idWNrZXQuaWNvblNpemVEYXRhLmtpbmQpe2NvbnN0e21pblpvb206dCxtYXhab29tOnJ9PWUuYnVja2V0Lmljb25TaXplRGF0YTtzLmNvbXBvc2l0ZUljb25TaXplcz1baVtcImljb24tc2l6ZVwiXS5wb3NzaWJseUV2YWx1YXRlKG5ldyBVaSh0KSxlLmNhbm9uaWNhbCksaVtcImljb24tc2l6ZVwiXS5wb3NzaWJseUV2YWx1YXRlKG5ldyBVaShyKSxlLmNhbm9uaWNhbCldO31jb25zdCBhPW4uZ2V0KFwidGV4dC1saW5lLWhlaWdodFwiKSppdSxvPVwidmlld3BvcnRcIiE9PW4uZ2V0KFwidGV4dC1yb3RhdGlvbi1hbGlnbm1lbnRcIikmJlwicG9pbnRcIiE9PW4uZ2V0KFwic3ltYm9sLXBsYWNlbWVudFwiKSxsPW4uZ2V0KFwidGV4dC1rZWVwLXVwcmlnaHRcIiksdT1uLmdldChcInRleHQtc2l6ZVwiKTtmb3IoY29uc3QgaSBvZiBlLmJ1Y2tldC5mZWF0dXJlcyl7Y29uc3QgYz1uLmdldChcInRleHQtZm9udFwiKS5ldmFsdWF0ZShpLHt9LGUuY2Fub25pY2FsKS5qb2luKFwiLFwiKSxoPXUuZXZhbHVhdGUoaSx7fSxlLmNhbm9uaWNhbCkscD1zLmxheW91dFRleHRTaXplLmV2YWx1YXRlKGkse30sZS5jYW5vbmljYWwpLGY9cy5sYXlvdXRJY29uU2l6ZS5ldmFsdWF0ZShpLHt9LGUuY2Fub25pY2FsKSxkPXtob3Jpem9udGFsOnt9LHZlcnRpY2FsOnZvaWQgMH0seT1pLnRleHQ7bGV0IG0sZz1bMCwwXTtpZih5KXtjb25zdCBzPXkudG9TdHJpbmcoKSx1PW4uZ2V0KFwidGV4dC1sZXR0ZXItc3BhY2luZ1wiKS5ldmFsdWF0ZShpLHt9LGUuY2Fub25pY2FsKSppdSxmPUNpKHMpP3U6MCxtPW4uZ2V0KFwidGV4dC1hbmNob3JcIikuZXZhbHVhdGUoaSx7fSxlLmNhbm9uaWNhbCkseD12aChyLGksZS5jYW5vbmljYWwpO2lmKCF4KXtjb25zdCB0PW4uZ2V0KFwidGV4dC1yYWRpYWwtb2Zmc2V0XCIpLmV2YWx1YXRlKGkse30sZS5jYW5vbmljYWwpO2c9dD94aChtLFt0Kml1LGdoXSk6bi5nZXQoXCJ0ZXh0LW9mZnNldFwiKS5ldmFsdWF0ZShpLHt9LGUuY2Fub25pY2FsKS5tYXAoKHQ9PnQqaXUpKTt9bGV0IHY9bz9cImNlbnRlclwiOm4uZ2V0KFwidGV4dC1qdXN0aWZ5XCIpLmV2YWx1YXRlKGkse30sZS5jYW5vbmljYWwpO2NvbnN0IGI9XCJwb2ludFwiPT09bi5nZXQoXCJzeW1ib2wtcGxhY2VtZW50XCIpP24uZ2V0KFwidGV4dC1tYXgtd2lkdGhcIikuZXZhbHVhdGUoaSx7fSxlLmNhbm9uaWNhbCkqaXU6MS8wLHc9KCk9PntlLmJ1Y2tldC5hbGxvd1ZlcnRpY2FsUGxhY2VtZW50JiZQaShzKSYmKGQudmVydGljYWw9UnUoeSxlLmdseXBoTWFwLGUuZ2x5cGhQb3NpdGlvbnMsZS5pbWFnZVBvc2l0aW9ucyxjLGIsYSxtLFwibGVmdFwiLGYsZyx0LmFoLnZlcnRpY2FsLCEwLHAsaCkpO307aWYoIW8mJngpe2NvbnN0IHI9bmV3IFNldDtpZihcImF1dG9cIj09PXYpZm9yKGxldCB0PTA7dDx4LnZhbHVlcy5sZW5ndGg7dCs9MilyLmFkZChiaCh4LnZhbHVlc1t0XSkpO2Vsc2Ugci5hZGQodik7bGV0IG49ITE7Zm9yKGNvbnN0IGkgb2YgcilpZighZC5ob3Jpem9udGFsW2ldKWlmKG4pZC5ob3Jpem9udGFsW2ldPWQuaG9yaXpvbnRhbFswXTtlbHNlIHtjb25zdCByPVJ1KHksZS5nbHlwaE1hcCxlLmdseXBoUG9zaXRpb25zLGUuaW1hZ2VQb3NpdGlvbnMsYyxiLGEsXCJjZW50ZXJcIixpLGYsZyx0LmFoLmhvcml6b250YWwsITEscCxoKTtyJiYoZC5ob3Jpem9udGFsW2ldPXIsbj0xPT09ci5wb3NpdGlvbmVkTGluZXMubGVuZ3RoKTt9dygpO31lbHNlIHtcImF1dG9cIj09PXYmJih2PWJoKG0pKTtjb25zdCByPVJ1KHksZS5nbHlwaE1hcCxlLmdseXBoUG9zaXRpb25zLGUuaW1hZ2VQb3NpdGlvbnMsYyxiLGEsbSx2LGYsZyx0LmFoLmhvcml6b250YWwsITEscCxoKTtyJiYoZC5ob3Jpem9udGFsW3ZdPXIpLHcoKSxQaShzKSYmbyYmbCYmKGQudmVydGljYWw9UnUoeSxlLmdseXBoTWFwLGUuZ2x5cGhQb3NpdGlvbnMsZS5pbWFnZVBvc2l0aW9ucyxjLGIsYSxtLHYsZixnLHQuYWgudmVydGljYWwsITEscCxoKSk7fX1sZXQgeD0hMTtpZihpLmljb24mJmkuaWNvbi5uYW1lKXtjb25zdCB0PWUuaW1hZ2VNYXBbaS5pY29uLm5hbWVdO3QmJihtPVF1KGUuaW1hZ2VQb3NpdGlvbnNbaS5pY29uLm5hbWVdLG4uZ2V0KFwiaWNvbi1vZmZzZXRcIikuZXZhbHVhdGUoaSx7fSxlLmNhbm9uaWNhbCksbi5nZXQoXCJpY29uLWFuY2hvclwiKS5ldmFsdWF0ZShpLHt9LGUuY2Fub25pY2FsKSkseD0hIXQuc2RmLHZvaWQgMD09PWUuYnVja2V0LnNkZkljb25zP2UuYnVja2V0LnNkZkljb25zPXg6ZS5idWNrZXQuc2RmSWNvbnMhPT14JiZBKFwiU3R5bGUgc2hlZXQgd2FybmluZzogQ2Fubm90IG1peCBTREYgYW5kIG5vbi1TREYgaWNvbnMgaW4gb25lIGJ1ZmZlclwiKSwodC5waXhlbFJhdGlvIT09ZS5idWNrZXQucGl4ZWxSYXRpb3x8MCE9PW4uZ2V0KFwiaWNvbi1yb3RhdGVcIikuY29uc3RhbnRPcigxKSkmJihlLmJ1Y2tldC5pY29uc05lZWRMaW5lYXI9ITApKTt9Y29uc3Qgdj1BaChkLmhvcml6b250YWwpfHxkLnZlcnRpY2FsO2UuYnVja2V0Lmljb25zSW5UZXh0PSEhdiYmdi5pY29uc0luVGV4dCwodnx8bSkmJndoKGUuYnVja2V0LGksZCxtLGUuaW1hZ2VNYXAscyxwLGYsZyx4LGUuY2Fub25pY2FsKTt9ZS5zaG93Q29sbGlzaW9uQm94ZXMmJmUuYnVja2V0LmdlbmVyYXRlQ29sbGlzaW9uRGVidWdCdWZmZXJzKCk7fSx0LmJxPXFsLHQuYnI9c2wsdC5icz16bCx0LmJ0PWZsLHQuYnU9SXUsdC5idj1jbGFzc3tjb25zdHJ1Y3Rvcih0KXt0aGlzLl9tYXJrcz17c3RhcnQ6W3QudXJsLFwic3RhcnRcIl0uam9pbihcIiNcIiksZW5kOlt0LnVybCxcImVuZFwiXS5qb2luKFwiI1wiKSxtZWFzdXJlOnQudXJsLnRvU3RyaW5nKCl9LHBlcmZvcm1hbmNlLm1hcmsodGhpcy5fbWFya3Muc3RhcnQpO31maW5pc2goKXtwZXJmb3JtYW5jZS5tYXJrKHRoaXMuX21hcmtzLmVuZCk7bGV0IHQ9cGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZSh0aGlzLl9tYXJrcy5tZWFzdXJlKTtyZXR1cm4gMD09PXQubGVuZ3RoJiYocGVyZm9ybWFuY2UubWVhc3VyZSh0aGlzLl9tYXJrcy5tZWFzdXJlLHRoaXMuX21hcmtzLnN0YXJ0LHRoaXMuX21hcmtzLmVuZCksdD1wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1lKHRoaXMuX21hcmtzLm1lYXN1cmUpLHBlcmZvcm1hbmNlLmNsZWFyTWFya3ModGhpcy5fbWFya3Muc3RhcnQpLHBlcmZvcm1hbmNlLmNsZWFyTWFya3ModGhpcy5fbWFya3MuZW5kKSxwZXJmb3JtYW5jZS5jbGVhck1lYXN1cmVzKHRoaXMuX21hcmtzLm1lYXN1cmUpKSx0fX0sdC5idz1mdW5jdGlvbih0LHIsbixpLHMpe3JldHVybiBlKHRoaXMsdm9pZCAwLHZvaWQgMCwoZnVuY3Rpb24qKCl7aWYocCgpKXRyeXtyZXR1cm4geWllbGQgUCh0LHIsbixpLHMpfWNhdGNoKHQpe31yZXR1cm4gZnVuY3Rpb24odCxlLHIsbixpKXtjb25zdCBzPXQud2lkdGgsYT10LmhlaWdodDtDJiZCfHwoQz1uZXcgT2Zmc2NyZWVuQ2FudmFzKHMsYSksQj1DLmdldENvbnRleHQoXCIyZFwiLHt3aWxsUmVhZEZyZXF1ZW50bHk6ITB9KSksQy53aWR0aD1zLEMuaGVpZ2h0PWEsQi5kcmF3SW1hZ2UodCwwLDAscyxhKTtjb25zdCBvPUIuZ2V0SW1hZ2VEYXRhKGUscixuLGkpO3JldHVybiBCLmNsZWFyUmVjdCgwLDAscyxhKSxvLmRhdGF9KHQscixuLGkscyl9KSl9LHQuYng9VWMsdC5ieT1yLHQuYno9bix0LmM9RSx0LmQ9dD0+ZSh2b2lkIDAsdm9pZCAwLHZvaWQgMCwoZnVuY3Rpb24qKCl7aWYoMD09PXQuYnl0ZUxlbmd0aClyZXR1cm4gY3JlYXRlSW1hZ2VCaXRtYXAobmV3IEltYWdlRGF0YSgxLDEpKTtjb25zdCBlPW5ldyBCbG9iKFtuZXcgVWludDhBcnJheSh0KV0se3R5cGU6XCJpbWFnZS9wbmdcIn0pO3RyeXtyZXR1cm4gY3JlYXRlSW1hZ2VCaXRtYXAoZSl9Y2F0Y2godCl7dGhyb3cgbmV3IEVycm9yKGBDb3VsZCBub3QgbG9hZCBpbWFnZSBiZWNhdXNlIG9mICR7dC5tZXNzYWdlfS4gUGxlYXNlIG1ha2Ugc3VyZSB0byB1c2UgYSBzdXBwb3J0ZWQgaW1hZ2UgdHlwZSBzdWNoIGFzIFBORyBvciBKUEVHLiBOb3RlIHRoYXQgU1ZHcyBhcmUgbm90IHN1cHBvcnRlZC5gKX19KSksdC5lPWcsdC5mPXQ9Pm5ldyBQcm9taXNlKCgoZSxyKT0+e2NvbnN0IG49bmV3IEltYWdlO24ub25sb2FkPSgpPT57ZShuKSxVUkwucmV2b2tlT2JqZWN0VVJMKG4uc3JjKSxuLm9ubG9hZD1udWxsLHdpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCgpPT57bi5zcmM9ejt9KSk7fSxuLm9uZXJyb3I9KCk9PnIobmV3IEVycm9yKFwiQ291bGQgbm90IGxvYWQgaW1hZ2UuIFBsZWFzZSBtYWtlIHN1cmUgdG8gdXNlIGEgc3VwcG9ydGVkIGltYWdlIHR5cGUgc3VjaCBhcyBQTkcgb3IgSlBFRy4gTm90ZSB0aGF0IFNWR3MgYXJlIG5vdCBzdXBwb3J0ZWQuXCIpKTtjb25zdCBpPW5ldyBCbG9iKFtuZXcgVWludDhBcnJheSh0KV0se3R5cGU6XCJpbWFnZS9wbmdcIn0pO24uc3JjPXQuYnl0ZUxlbmd0aD9VUkwuY3JlYXRlT2JqZWN0VVJMKGkpOno7fSkpLHQuZz1ULHQuaD0odCxlKT0+TyhnKHQse3R5cGU6XCJqc29uXCJ9KSxlKSx0Lmk9ayx0Lmo9Tix0Lms9cSx0Lmw9KHQsZSk9Pk8oZyh0LHt0eXBlOlwiYXJyYXlCdWZmZXJcIn0pLGUpLHQubT1PLHQubj1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IEl1KHQpLnJlYWRGaWVsZHMoUHUsW10pfSx0Lm89X28sdC5wPUV1LHQucT1ycyx0LnI9ZGksdC5zPWosdC50PXhpLHQudT1maSx0LnY9Ryx0Lnc9QSx0Lng9ZnVuY3Rpb24oW3QsZSxyXSl7cmV0dXJuIGUrPTkwLGUqPU1hdGguUEkvMTgwLHIqPU1hdGguUEkvMTgwLHt4OnQqTWF0aC5jb3MoZSkqTWF0aC5zaW4ocikseTp0Kk1hdGguc2luKGUpKk1hdGguc2luKHIpLHo6dCpNYXRoLmNvcyhyKX19LHQueT1DZSx0Lno9VWk7fSkpO1xuXG5kZWZpbmUoXCJ3b3JrZXJcIixbXCIuL3NoYXJlZFwiXSwoZnVuY3Rpb24oZSl7XCJ1c2Ugc3RyaWN0XCI7Y2xhc3MgdHtjb25zdHJ1Y3RvcihlKXt0aGlzLmtleUNhY2hlPXt9LGUmJnRoaXMucmVwbGFjZShlKTt9cmVwbGFjZShlKXt0aGlzLl9sYXllckNvbmZpZ3M9e30sdGhpcy5fbGF5ZXJzPXt9LHRoaXMudXBkYXRlKGUsW10pO311cGRhdGUodCxvKXtmb3IoY29uc3QgbyBvZiB0KXt0aGlzLl9sYXllckNvbmZpZ3Nbby5pZF09bztjb25zdCB0PXRoaXMuX2xheWVyc1tvLmlkXT1lLmFBKG8pO3QuX2ZlYXR1cmVGaWx0ZXI9ZS5hNyh0LmZpbHRlciksdGhpcy5rZXlDYWNoZVtvLmlkXSYmZGVsZXRlIHRoaXMua2V5Q2FjaGVbby5pZF07fWZvcihjb25zdCBlIG9mIG8pZGVsZXRlIHRoaXMua2V5Q2FjaGVbZV0sZGVsZXRlIHRoaXMuX2xheWVyQ29uZmlnc1tlXSxkZWxldGUgdGhpcy5fbGF5ZXJzW2VdO3RoaXMuZmFtaWxpZXNCeVNvdXJjZT17fTtjb25zdCBpPWUuYmsoT2JqZWN0LnZhbHVlcyh0aGlzLl9sYXllckNvbmZpZ3MpLHRoaXMua2V5Q2FjaGUpO2Zvcihjb25zdCBlIG9mIGkpe2NvbnN0IHQ9ZS5tYXAoKGU9PnRoaXMuX2xheWVyc1tlLmlkXSkpLG89dFswXTtpZihcIm5vbmVcIj09PW8udmlzaWJpbGl0eSljb250aW51ZTtjb25zdCBpPW8uc291cmNlfHxcIlwiO2xldCBzPXRoaXMuZmFtaWxpZXNCeVNvdXJjZVtpXTtzfHwocz10aGlzLmZhbWlsaWVzQnlTb3VyY2VbaV09e30pO2NvbnN0IHI9by5zb3VyY2VMYXllcnx8XCJfZ2VvanNvblRpbGVMYXllclwiO2xldCBuPXNbcl07bnx8KG49c1tyXT1bXSksbi5wdXNoKHQpO319fWNsYXNzIG97Y29uc3RydWN0b3IodCl7Y29uc3Qgbz17fSxpPVtdO2Zvcihjb25zdCBlIGluIHQpe2NvbnN0IHM9dFtlXSxyPW9bZV09e307Zm9yKGNvbnN0IGUgaW4gcyl7Y29uc3QgdD1zWytlXTtpZighdHx8MD09PXQuYml0bWFwLndpZHRofHwwPT09dC5iaXRtYXAuaGVpZ2h0KWNvbnRpbnVlO2NvbnN0IG89e3g6MCx5OjAsdzp0LmJpdG1hcC53aWR0aCsyLGg6dC5iaXRtYXAuaGVpZ2h0KzJ9O2kucHVzaChvKSxyW2VdPXtyZWN0Om8sbWV0cmljczp0Lm1ldHJpY3N9O319Y29uc3R7dzpzLGg6cn09ZS5wKGkpLG49bmV3IGUubyh7d2lkdGg6c3x8MSxoZWlnaHQ6cnx8MX0pO2Zvcihjb25zdCBpIGluIHQpe2NvbnN0IHM9dFtpXTtmb3IoY29uc3QgdCBpbiBzKXtjb25zdCByPXNbK3RdO2lmKCFyfHwwPT09ci5iaXRtYXAud2lkdGh8fDA9PT1yLmJpdG1hcC5oZWlnaHQpY29udGludWU7Y29uc3QgYT1vW2ldW3RdLnJlY3Q7ZS5vLmNvcHkoci5iaXRtYXAsbix7eDowLHk6MH0se3g6YS54KzEseTphLnkrMX0sci5iaXRtYXApO319dGhpcy5pbWFnZT1uLHRoaXMucG9zaXRpb25zPW87fX1lLmJsKFwiR2x5cGhBdGxhc1wiLG8pO2NsYXNzIGl7Y29uc3RydWN0b3IodCl7dGhpcy50aWxlSUQ9bmV3IGUuUyh0LnRpbGVJRC5vdmVyc2NhbGVkWix0LnRpbGVJRC53cmFwLHQudGlsZUlELmNhbm9uaWNhbC56LHQudGlsZUlELmNhbm9uaWNhbC54LHQudGlsZUlELmNhbm9uaWNhbC55KSx0aGlzLnVpZD10LnVpZCx0aGlzLnpvb209dC56b29tLHRoaXMucGl4ZWxSYXRpbz10LnBpeGVsUmF0aW8sdGhpcy50aWxlU2l6ZT10LnRpbGVTaXplLHRoaXMuc291cmNlPXQuc291cmNlLHRoaXMub3ZlcnNjYWxpbmc9dGhpcy50aWxlSUQub3ZlcnNjYWxlRmFjdG9yKCksdGhpcy5zaG93Q29sbGlzaW9uQm94ZXM9dC5zaG93Q29sbGlzaW9uQm94ZXMsdGhpcy5jb2xsZWN0UmVzb3VyY2VUaW1pbmc9ISF0LmNvbGxlY3RSZXNvdXJjZVRpbWluZyx0aGlzLnJldHVybkRlcGVuZGVuY2llcz0hIXQucmV0dXJuRGVwZW5kZW5jaWVzLHRoaXMucHJvbW90ZUlkPXQucHJvbW90ZUlkLHRoaXMuaW5GbGlnaHREZXBlbmRlbmNpZXM9W107fXBhcnNlKHQsaSxyLG4pe3JldHVybiBlLl8odGhpcyx2b2lkIDAsdm9pZCAwLChmdW5jdGlvbiooKXt0aGlzLnN0YXR1cz1cInBhcnNpbmdcIix0aGlzLmRhdGE9dCx0aGlzLmNvbGxpc2lvbkJveEFycmF5PW5ldyBlLmE1O2NvbnN0IGE9bmV3IGUuYm0oT2JqZWN0LmtleXModC5sYXllcnMpLnNvcnQoKSksbD1uZXcgZS5ibih0aGlzLnRpbGVJRCx0aGlzLnByb21vdGVJZCk7bC5idWNrZXRMYXllcklEcz1bXTtjb25zdCBjPXt9LHU9e2ZlYXR1cmVJbmRleDpsLGljb25EZXBlbmRlbmNpZXM6e30scGF0dGVybkRlcGVuZGVuY2llczp7fSxnbHlwaERlcGVuZGVuY2llczp7fSxhdmFpbGFibGVJbWFnZXM6cn0saD1pLmZhbWlsaWVzQnlTb3VyY2VbdGhpcy5zb3VyY2VdO2Zvcihjb25zdCBvIGluIGgpe2NvbnN0IGk9dC5sYXllcnNbb107aWYoIWkpY29udGludWU7MT09PWkudmVyc2lvbiYmZS53KGBWZWN0b3IgdGlsZSBzb3VyY2UgXCIke3RoaXMuc291cmNlfVwiIGxheWVyIFwiJHtvfVwiIGRvZXMgbm90IHVzZSB2ZWN0b3IgdGlsZSBzcGVjIHYyIGFuZCB0aGVyZWZvcmUgbWF5IGhhdmUgc29tZSByZW5kZXJpbmcgZXJyb3JzLmApO2NvbnN0IG49YS5lbmNvZGUobyksZD1bXTtmb3IobGV0IGU9MDtlPGkubGVuZ3RoO2UrKyl7Y29uc3QgdD1pLmZlYXR1cmUoZSkscz1sLmdldElkKHQsbyk7ZC5wdXNoKHtmZWF0dXJlOnQsaWQ6cyxpbmRleDplLHNvdXJjZUxheWVySW5kZXg6bn0pO31mb3IoY29uc3QgdCBvZiBoW29dKXtjb25zdCBvPXRbMF07by5zb3VyY2UhPT10aGlzLnNvdXJjZSYmZS53KGBsYXllci5zb3VyY2UgPSAke28uc291cmNlfSBkb2VzIG5vdCBlcXVhbCB0aGlzLnNvdXJjZSA9ICR7dGhpcy5zb3VyY2V9YCksby5taW56b29tJiZ0aGlzLnpvb208TWF0aC5mbG9vcihvLm1pbnpvb20pfHxvLm1heHpvb20mJnRoaXMuem9vbT49by5tYXh6b29tfHxcIm5vbmVcIiE9PW8udmlzaWJpbGl0eSYmKHModCx0aGlzLnpvb20sciksKGNbby5pZF09by5jcmVhdGVCdWNrZXQoe2luZGV4OmwuYnVja2V0TGF5ZXJJRHMubGVuZ3RoLGxheWVyczp0LHpvb206dGhpcy56b29tLHBpeGVsUmF0aW86dGhpcy5waXhlbFJhdGlvLG92ZXJzY2FsaW5nOnRoaXMub3ZlcnNjYWxpbmcsY29sbGlzaW9uQm94QXJyYXk6dGhpcy5jb2xsaXNpb25Cb3hBcnJheSxzb3VyY2VMYXllckluZGV4Om4sc291cmNlSUQ6dGhpcy5zb3VyY2V9KSkucG9wdWxhdGUoZCx1LHRoaXMudGlsZUlELmNhbm9uaWNhbCksbC5idWNrZXRMYXllcklEcy5wdXNoKHQubWFwKChlPT5lLmlkKSkpKTt9fWNvbnN0IGQ9ZS5hRih1LmdseXBoRGVwZW5kZW5jaWVzLChlPT5PYmplY3Qua2V5cyhlKS5tYXAoTnVtYmVyKSkpO3RoaXMuaW5GbGlnaHREZXBlbmRlbmNpZXMuZm9yRWFjaCgoZT0+bnVsbD09ZT92b2lkIDA6ZS5hYm9ydCgpKSksdGhpcy5pbkZsaWdodERlcGVuZGVuY2llcz1bXTtsZXQgZj1Qcm9taXNlLnJlc29sdmUoe30pO2lmKE9iamVjdC5rZXlzKGQpLmxlbmd0aCl7Y29uc3QgZT1uZXcgQWJvcnRDb250cm9sbGVyO3RoaXMuaW5GbGlnaHREZXBlbmRlbmNpZXMucHVzaChlKSxmPW4uc2VuZEFzeW5jKHt0eXBlOlwiR0dcIixkYXRhOntzdGFja3M6ZCxzb3VyY2U6dGhpcy5zb3VyY2UsdGlsZUlEOnRoaXMudGlsZUlELHR5cGU6XCJnbHlwaHNcIn19LGUpO31jb25zdCBnPU9iamVjdC5rZXlzKHUuaWNvbkRlcGVuZGVuY2llcyk7bGV0IHA9UHJvbWlzZS5yZXNvbHZlKHt9KTtpZihnLmxlbmd0aCl7Y29uc3QgZT1uZXcgQWJvcnRDb250cm9sbGVyO3RoaXMuaW5GbGlnaHREZXBlbmRlbmNpZXMucHVzaChlKSxwPW4uc2VuZEFzeW5jKHt0eXBlOlwiR0lcIixkYXRhOntpY29uczpnLHNvdXJjZTp0aGlzLnNvdXJjZSx0aWxlSUQ6dGhpcy50aWxlSUQsdHlwZTpcImljb25zXCJ9fSxlKTt9Y29uc3QgbT1PYmplY3Qua2V5cyh1LnBhdHRlcm5EZXBlbmRlbmNpZXMpO2xldCB5PVByb21pc2UucmVzb2x2ZSh7fSk7aWYobS5sZW5ndGgpe2NvbnN0IGU9bmV3IEFib3J0Q29udHJvbGxlcjt0aGlzLmluRmxpZ2h0RGVwZW5kZW5jaWVzLnB1c2goZSkseT1uLnNlbmRBc3luYyh7dHlwZTpcIkdJXCIsZGF0YTp7aWNvbnM6bSxzb3VyY2U6dGhpcy5zb3VyY2UsdGlsZUlEOnRoaXMudGlsZUlELHR5cGU6XCJwYXR0ZXJuc1wifX0sZSk7fWNvbnN0W3Ysdyx4XT15aWVsZCBQcm9taXNlLmFsbChbZixwLHldKSxiPW5ldyBvKHYpLFM9bmV3IGUuYm8odyx4KTtmb3IoY29uc3QgdCBpbiBjKXtjb25zdCBvPWNbdF07byBpbnN0YW5jZW9mIGUuYTY/KHMoby5sYXllcnMsdGhpcy56b29tLHIpLGUuYnAoe2J1Y2tldDpvLGdseXBoTWFwOnYsZ2x5cGhQb3NpdGlvbnM6Yi5wb3NpdGlvbnMsaW1hZ2VNYXA6dyxpbWFnZVBvc2l0aW9uczpTLmljb25Qb3NpdGlvbnMsc2hvd0NvbGxpc2lvbkJveGVzOnRoaXMuc2hvd0NvbGxpc2lvbkJveGVzLGNhbm9uaWNhbDp0aGlzLnRpbGVJRC5jYW5vbmljYWx9KSk6by5oYXNQYXR0ZXJuJiYobyBpbnN0YW5jZW9mIGUuYnF8fG8gaW5zdGFuY2VvZiBlLmJyfHxvIGluc3RhbmNlb2YgZS5icykmJihzKG8ubGF5ZXJzLHRoaXMuem9vbSxyKSxvLmFkZEZlYXR1cmVzKHUsdGhpcy50aWxlSUQuY2Fub25pY2FsLFMucGF0dGVyblBvc2l0aW9ucykpO31yZXR1cm4gdGhpcy5zdGF0dXM9XCJkb25lXCIse2J1Y2tldHM6T2JqZWN0LnZhbHVlcyhjKS5maWx0ZXIoKGU9PiFlLmlzRW1wdHkoKSkpLGZlYXR1cmVJbmRleDpsLGNvbGxpc2lvbkJveEFycmF5OnRoaXMuY29sbGlzaW9uQm94QXJyYXksZ2x5cGhBdGxhc0ltYWdlOmIuaW1hZ2UsaW1hZ2VBdGxhczpTLGdseXBoTWFwOnRoaXMucmV0dXJuRGVwZW5kZW5jaWVzP3Y6bnVsbCxpY29uTWFwOnRoaXMucmV0dXJuRGVwZW5kZW5jaWVzP3c6bnVsbCxnbHlwaFBvc2l0aW9uczp0aGlzLnJldHVybkRlcGVuZGVuY2llcz9iLnBvc2l0aW9uczpudWxsfX0pKX19ZnVuY3Rpb24gcyh0LG8saSl7Y29uc3Qgcz1uZXcgZS56KG8pO2Zvcihjb25zdCBlIG9mIHQpZS5yZWNhbGN1bGF0ZShzLGkpO31jbGFzcyBye2NvbnN0cnVjdG9yKGUsdCxvKXt0aGlzLmFjdG9yPWUsdGhpcy5sYXllckluZGV4PXQsdGhpcy5hdmFpbGFibGVJbWFnZXM9byx0aGlzLmZldGNoaW5nPXt9LHRoaXMubG9hZGluZz17fSx0aGlzLmxvYWRlZD17fTt9bG9hZFZlY3RvclRpbGUodCxvKXtyZXR1cm4gZS5fKHRoaXMsdm9pZCAwLHZvaWQgMCwoZnVuY3Rpb24qKCl7Y29uc3QgaT15aWVsZCBlLmwodC5yZXF1ZXN0LG8pO3RyeXtyZXR1cm4ge3ZlY3RvclRpbGU6bmV3IGUuYnQuVmVjdG9yVGlsZShuZXcgZS5idShpLmRhdGEpKSxyYXdEYXRhOmkuZGF0YSxjYWNoZUNvbnRyb2w6aS5jYWNoZUNvbnRyb2wsZXhwaXJlczppLmV4cGlyZXN9fWNhdGNoKGUpe2NvbnN0IG89bmV3IFVpbnQ4QXJyYXkoaS5kYXRhKTtsZXQgcz1gVW5hYmxlIHRvIHBhcnNlIHRoZSB0aWxlIGF0ICR7dC5yZXF1ZXN0LnVybH0sIGA7dGhyb3cgcys9MzE9PT1vWzBdJiYxMzk9PT1vWzFdP1wicGxlYXNlIG1ha2Ugc3VyZSB0aGUgZGF0YSBpcyBub3QgZ3ppcHBlZCBhbmQgdGhhdCB5b3UgaGF2ZSBjb25maWd1cmVkIHRoZSByZWxldmFudCBoZWFkZXIgaW4gdGhlIHNlcnZlclwiOmBnb3QgZXJyb3I6ICR7ZS5tZXNzYWdlfWAsbmV3IEVycm9yKHMpfX0pKX1sb2FkVGlsZSh0KXtyZXR1cm4gZS5fKHRoaXMsdm9pZCAwLHZvaWQgMCwoZnVuY3Rpb24qKCl7Y29uc3Qgbz10LnVpZCxzPSEhKHQmJnQucmVxdWVzdCYmdC5yZXF1ZXN0LmNvbGxlY3RSZXNvdXJjZVRpbWluZykmJm5ldyBlLmJ2KHQucmVxdWVzdCkscj1uZXcgaSh0KTt0aGlzLmxvYWRpbmdbb109cjtjb25zdCBuPW5ldyBBYm9ydENvbnRyb2xsZXI7ci5hYm9ydD1uO3RyeXtjb25zdCBpPXlpZWxkIHRoaXMubG9hZFZlY3RvclRpbGUodCxuKTtpZihkZWxldGUgdGhpcy5sb2FkaW5nW29dLCFpKXJldHVybiBudWxsO2NvbnN0IGE9aS5yYXdEYXRhLGw9e307aS5leHBpcmVzJiYobC5leHBpcmVzPWkuZXhwaXJlcyksaS5jYWNoZUNvbnRyb2wmJihsLmNhY2hlQ29udHJvbD1pLmNhY2hlQ29udHJvbCk7Y29uc3QgYz17fTtpZihzKXtjb25zdCBlPXMuZmluaXNoKCk7ZSYmKGMucmVzb3VyY2VUaW1pbmc9SlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShlKSkpO31yLnZlY3RvclRpbGU9aS52ZWN0b3JUaWxlO2NvbnN0IHU9ci5wYXJzZShpLnZlY3RvclRpbGUsdGhpcy5sYXllckluZGV4LHRoaXMuYXZhaWxhYmxlSW1hZ2VzLHRoaXMuYWN0b3IpO3RoaXMubG9hZGVkW29dPXIsdGhpcy5mZXRjaGluZ1tvXT17cmF3VGlsZURhdGE6YSxjYWNoZUNvbnRyb2w6bCxyZXNvdXJjZVRpbWluZzpjfTt0cnl7Y29uc3QgdD15aWVsZCB1O3JldHVybiBlLmUoe3Jhd1RpbGVEYXRhOmEuc2xpY2UoMCl9LHQsbCxjKX1maW5hbGx5e2RlbGV0ZSB0aGlzLmZldGNoaW5nW29dO319Y2F0Y2goZSl7dGhyb3cgZGVsZXRlIHRoaXMubG9hZGluZ1tvXSxyLnN0YXR1cz1cImRvbmVcIix0aGlzLmxvYWRlZFtvXT1yLGV9fSkpfXJlbG9hZFRpbGUodCl7cmV0dXJuIGUuXyh0aGlzLHZvaWQgMCx2b2lkIDAsKGZ1bmN0aW9uKigpe2NvbnN0IG89dC51aWQ7aWYoIXRoaXMubG9hZGVkfHwhdGhpcy5sb2FkZWRbb10pdGhyb3cgbmV3IEVycm9yKFwiU2hvdWxkIG5vdCBiZSB0cnlpbmcgdG8gcmVsb2FkIGEgdGlsZSB0aGF0IHdhcyBuZXZlciBsb2FkZWQgb3IgaGFzIGJlZW4gcmVtb3ZlZFwiKTtjb25zdCBpPXRoaXMubG9hZGVkW29dO2lmKGkuc2hvd0NvbGxpc2lvbkJveGVzPXQuc2hvd0NvbGxpc2lvbkJveGVzLFwicGFyc2luZ1wiPT09aS5zdGF0dXMpe2NvbnN0IHQ9eWllbGQgaS5wYXJzZShpLnZlY3RvclRpbGUsdGhpcy5sYXllckluZGV4LHRoaXMuYXZhaWxhYmxlSW1hZ2VzLHRoaXMuYWN0b3IpO2xldCBzO2lmKHRoaXMuZmV0Y2hpbmdbb10pe2NvbnN0e3Jhd1RpbGVEYXRhOmksY2FjaGVDb250cm9sOnIscmVzb3VyY2VUaW1pbmc6bn09dGhpcy5mZXRjaGluZ1tvXTtkZWxldGUgdGhpcy5mZXRjaGluZ1tvXSxzPWUuZSh7cmF3VGlsZURhdGE6aS5zbGljZSgwKX0sdCxyLG4pO31lbHNlIHM9dDtyZXR1cm4gc31pZihcImRvbmVcIj09PWkuc3RhdHVzJiZpLnZlY3RvclRpbGUpcmV0dXJuIGkucGFyc2UoaS52ZWN0b3JUaWxlLHRoaXMubGF5ZXJJbmRleCx0aGlzLmF2YWlsYWJsZUltYWdlcyx0aGlzLmFjdG9yKX0pKX1hYm9ydFRpbGUodCl7cmV0dXJuIGUuXyh0aGlzLHZvaWQgMCx2b2lkIDAsKGZ1bmN0aW9uKigpe2NvbnN0IGU9dGhpcy5sb2FkaW5nLG89dC51aWQ7ZSYmZVtvXSYmZVtvXS5hYm9ydCYmKGVbb10uYWJvcnQuYWJvcnQoKSxkZWxldGUgZVtvXSk7fSkpfXJlbW92ZVRpbGUodCl7cmV0dXJuIGUuXyh0aGlzLHZvaWQgMCx2b2lkIDAsKGZ1bmN0aW9uKigpe3RoaXMubG9hZGVkJiZ0aGlzLmxvYWRlZFt0LnVpZF0mJmRlbGV0ZSB0aGlzLmxvYWRlZFt0LnVpZF07fSkpfX1jbGFzcyBue2NvbnN0cnVjdG9yKCl7dGhpcy5sb2FkZWQ9e307fWxvYWRUaWxlKHQpe3JldHVybiBlLl8odGhpcyx2b2lkIDAsdm9pZCAwLChmdW5jdGlvbiooKXtjb25zdHt1aWQ6byxlbmNvZGluZzppLHJhd0ltYWdlRGF0YTpzLHJlZEZhY3RvcjpyLGdyZWVuRmFjdG9yOm4sYmx1ZUZhY3RvcjphLGJhc2VTaGlmdDpsfT10LGM9cy53aWR0aCsyLHU9cy5oZWlnaHQrMixoPWUuYihzKT9uZXcgZS5SKHt3aWR0aDpjLGhlaWdodDp1fSx5aWVsZCBlLmJ3KHMsLTEsLTEsYyx1KSk6cyxkPW5ldyBlLmJ4KG8saCxpLHIsbixhLGwpO3JldHVybiB0aGlzLmxvYWRlZD10aGlzLmxvYWRlZHx8e30sdGhpcy5sb2FkZWRbb109ZCxkfSkpfXJlbW92ZVRpbGUoZSl7Y29uc3QgdD10aGlzLmxvYWRlZCxvPWUudWlkO3QmJnRbb10mJmRlbGV0ZSB0W29dO319ZnVuY3Rpb24gYShlLHQpe2lmKDAhPT1lLmxlbmd0aCl7bChlWzBdLHQpO2Zvcih2YXIgbz0xO288ZS5sZW5ndGg7bysrKWwoZVtvXSwhdCk7fX1mdW5jdGlvbiBsKGUsdCl7Zm9yKHZhciBvPTAsaT0wLHM9MCxyPWUubGVuZ3RoLG49ci0xO3M8cjtuPXMrKyl7dmFyIGE9KGVbc11bMF0tZVtuXVswXSkqKGVbbl1bMV0rZVtzXVsxXSksbD1vK2E7aSs9TWF0aC5hYnMobyk+PU1hdGguYWJzKGEpP28tbCthOmEtbCtvLG89bDt9bytpPj0wIT0hIXQmJmUucmV2ZXJzZSgpO312YXIgYz1lLmJ5KChmdW5jdGlvbiBlKHQsbyl7dmFyIGkscz10JiZ0LnR5cGU7aWYoXCJGZWF0dXJlQ29sbGVjdGlvblwiPT09cylmb3IoaT0wO2k8dC5mZWF0dXJlcy5sZW5ndGg7aSsrKWUodC5mZWF0dXJlc1tpXSxvKTtlbHNlIGlmKFwiR2VvbWV0cnlDb2xsZWN0aW9uXCI9PT1zKWZvcihpPTA7aTx0Lmdlb21ldHJpZXMubGVuZ3RoO2krKyllKHQuZ2VvbWV0cmllc1tpXSxvKTtlbHNlIGlmKFwiRmVhdHVyZVwiPT09cyllKHQuZ2VvbWV0cnksbyk7ZWxzZSBpZihcIlBvbHlnb25cIj09PXMpYSh0LmNvb3JkaW5hdGVzLG8pO2Vsc2UgaWYoXCJNdWx0aVBvbHlnb25cIj09PXMpZm9yKGk9MDtpPHQuY29vcmRpbmF0ZXMubGVuZ3RoO2krKylhKHQuY29vcmRpbmF0ZXNbaV0sbyk7cmV0dXJuIHR9KSk7Y29uc3QgdT1lLmJ0LlZlY3RvclRpbGVGZWF0dXJlLnByb3RvdHlwZS50b0dlb0pTT047dmFyIGg9e2V4cG9ydHM6e319LGQ9ZS5ieixmPWUuYnQuVmVjdG9yVGlsZUZlYXR1cmUsZz1wO2Z1bmN0aW9uIHAoZSx0KXt0aGlzLm9wdGlvbnM9dHx8e30sdGhpcy5mZWF0dXJlcz1lLHRoaXMubGVuZ3RoPWUubGVuZ3RoO31mdW5jdGlvbiBtKGUsdCl7dGhpcy5pZD1cIm51bWJlclwiPT10eXBlb2YgZS5pZD9lLmlkOnZvaWQgMCx0aGlzLnR5cGU9ZS50eXBlLHRoaXMucmF3R2VvbWV0cnk9MT09PWUudHlwZT9bZS5nZW9tZXRyeV06ZS5nZW9tZXRyeSx0aGlzLnByb3BlcnRpZXM9ZS50YWdzLHRoaXMuZXh0ZW50PXR8fDQwOTY7fXAucHJvdG90eXBlLmZlYXR1cmU9ZnVuY3Rpb24oZSl7cmV0dXJuIG5ldyBtKHRoaXMuZmVhdHVyZXNbZV0sdGhpcy5vcHRpb25zLmV4dGVudCl9LG0ucHJvdG90eXBlLmxvYWRHZW9tZXRyeT1mdW5jdGlvbigpe3ZhciBlPXRoaXMucmF3R2VvbWV0cnk7dGhpcy5nZW9tZXRyeT1bXTtmb3IodmFyIHQ9MDt0PGUubGVuZ3RoO3QrKyl7Zm9yKHZhciBvPWVbdF0saT1bXSxzPTA7czxvLmxlbmd0aDtzKyspaS5wdXNoKG5ldyBkKG9bc11bMF0sb1tzXVsxXSkpO3RoaXMuZ2VvbWV0cnkucHVzaChpKTt9cmV0dXJuIHRoaXMuZ2VvbWV0cnl9LG0ucHJvdG90eXBlLmJib3g9ZnVuY3Rpb24oKXt0aGlzLmdlb21ldHJ5fHx0aGlzLmxvYWRHZW9tZXRyeSgpO2Zvcih2YXIgZT10aGlzLmdlb21ldHJ5LHQ9MS8wLG89LTEvMCxpPTEvMCxzPS0xLzAscj0wO3I8ZS5sZW5ndGg7cisrKWZvcih2YXIgbj1lW3JdLGE9MDthPG4ubGVuZ3RoO2ErKyl7dmFyIGw9blthXTt0PU1hdGgubWluKHQsbC54KSxvPU1hdGgubWF4KG8sbC54KSxpPU1hdGgubWluKGksbC55KSxzPU1hdGgubWF4KHMsbC55KTt9cmV0dXJuIFt0LGksbyxzXX0sbS5wcm90b3R5cGUudG9HZW9KU09OPWYucHJvdG90eXBlLnRvR2VvSlNPTjt2YXIgeT1lLmJBLHY9ZztmdW5jdGlvbiB3KGUpe3ZhciB0PW5ldyB5O3JldHVybiBmdW5jdGlvbihlLHQpe2Zvcih2YXIgbyBpbiBlLmxheWVycyl0LndyaXRlTWVzc2FnZSgzLHgsZS5sYXllcnNbb10pO30oZSx0KSx0LmZpbmlzaCgpfWZ1bmN0aW9uIHgoZSx0KXt2YXIgbzt0LndyaXRlVmFyaW50RmllbGQoMTUsZS52ZXJzaW9ufHwxKSx0LndyaXRlU3RyaW5nRmllbGQoMSxlLm5hbWV8fFwiXCIpLHQud3JpdGVWYXJpbnRGaWVsZCg1LGUuZXh0ZW50fHw0MDk2KTt2YXIgaT17a2V5czpbXSx2YWx1ZXM6W10sa2V5Y2FjaGU6e30sdmFsdWVjYWNoZTp7fX07Zm9yKG89MDtvPGUubGVuZ3RoO28rKylpLmZlYXR1cmU9ZS5mZWF0dXJlKG8pLHQud3JpdGVNZXNzYWdlKDIsYixpKTt2YXIgcz1pLmtleXM7Zm9yKG89MDtvPHMubGVuZ3RoO28rKyl0LndyaXRlU3RyaW5nRmllbGQoMyxzW29dKTt2YXIgcj1pLnZhbHVlcztmb3Iobz0wO288ci5sZW5ndGg7bysrKXQud3JpdGVNZXNzYWdlKDQsUCxyW29dKTt9ZnVuY3Rpb24gYihlLHQpe3ZhciBvPWUuZmVhdHVyZTt2b2lkIDAhPT1vLmlkJiZ0LndyaXRlVmFyaW50RmllbGQoMSxvLmlkKSx0LndyaXRlTWVzc2FnZSgyLFMsZSksdC53cml0ZVZhcmludEZpZWxkKDMsby50eXBlKSx0LndyaXRlTWVzc2FnZSg0LEksbyk7fWZ1bmN0aW9uIFMoZSx0KXt2YXIgbz1lLmZlYXR1cmUsaT1lLmtleXMscz1lLnZhbHVlcyxyPWUua2V5Y2FjaGUsbj1lLnZhbHVlY2FjaGU7Zm9yKHZhciBhIGluIG8ucHJvcGVydGllcyl7dmFyIGw9by5wcm9wZXJ0aWVzW2FdLGM9clthXTtpZihudWxsIT09bCl7dm9pZCAwPT09YyYmKGkucHVzaChhKSxyW2FdPWM9aS5sZW5ndGgtMSksdC53cml0ZVZhcmludChjKTt2YXIgdT10eXBlb2YgbDtcInN0cmluZ1wiIT09dSYmXCJib29sZWFuXCIhPT11JiZcIm51bWJlclwiIT09dSYmKGw9SlNPTi5zdHJpbmdpZnkobCkpO3ZhciBoPXUrXCI6XCIrbCxkPW5baF07dm9pZCAwPT09ZCYmKHMucHVzaChsKSxuW2hdPWQ9cy5sZW5ndGgtMSksdC53cml0ZVZhcmludChkKTt9fX1mdW5jdGlvbiBfKGUsdCl7cmV0dXJuICh0PDwzKSsoNyZlKX1mdW5jdGlvbiBNKGUpe3JldHVybiBlPDwxXmU+PjMxfWZ1bmN0aW9uIEkoZSx0KXtmb3IodmFyIG89ZS5sb2FkR2VvbWV0cnkoKSxpPWUudHlwZSxzPTAscj0wLG49by5sZW5ndGgsYT0wO2E8bjthKyspe3ZhciBsPW9bYV0sYz0xOzE9PT1pJiYoYz1sLmxlbmd0aCksdC53cml0ZVZhcmludChfKDEsYykpO2Zvcih2YXIgdT0zPT09aT9sLmxlbmd0aC0xOmwubGVuZ3RoLGg9MDtoPHU7aCsrKXsxPT09aCYmMSE9PWkmJnQud3JpdGVWYXJpbnQoXygyLHUtMSkpO3ZhciBkPWxbaF0ueC1zLGY9bFtoXS55LXI7dC53cml0ZVZhcmludChNKGQpKSx0LndyaXRlVmFyaW50KE0oZikpLHMrPWQscis9Zjt9Mz09PWkmJnQud3JpdGVWYXJpbnQoXyg3LDEpKTt9fWZ1bmN0aW9uIFAoZSx0KXt2YXIgbz10eXBlb2YgZTtcInN0cmluZ1wiPT09bz90LndyaXRlU3RyaW5nRmllbGQoMSxlKTpcImJvb2xlYW5cIj09PW8/dC53cml0ZUJvb2xlYW5GaWVsZCg3LGUpOlwibnVtYmVyXCI9PT1vJiYoZSUxIT0wP3Qud3JpdGVEb3VibGVGaWVsZCgzLGUpOmU8MD90LndyaXRlU1ZhcmludEZpZWxkKDYsZSk6dC53cml0ZVZhcmludEZpZWxkKDUsZSkpO31oLmV4cG9ydHM9dyxoLmV4cG9ydHMuZnJvbVZlY3RvclRpbGVKcz13LGguZXhwb3J0cy5mcm9tR2VvanNvblZ0PWZ1bmN0aW9uKGUsdCl7dD10fHx7fTt2YXIgbz17fTtmb3IodmFyIGkgaW4gZSlvW2ldPW5ldyB2KGVbaV0uZmVhdHVyZXMsdCksb1tpXS5uYW1lPWksb1tpXS52ZXJzaW9uPXQudmVyc2lvbixvW2ldLmV4dGVudD10LmV4dGVudDtyZXR1cm4gdyh7bGF5ZXJzOm99KX0saC5leHBvcnRzLkdlb0pTT05XcmFwcGVyPXY7dmFyIGs9ZS5ieShoLmV4cG9ydHMpO2NvbnN0IFQ9e21pblpvb206MCxtYXhab29tOjE2LG1pblBvaW50czoyLHJhZGl1czo0MCxleHRlbnQ6NTEyLG5vZGVTaXplOjY0LGxvZzohMSxnZW5lcmF0ZUlkOiExLHJlZHVjZTpudWxsLG1hcDplPT5lfSxEPU1hdGguZnJvdW5kfHwoQz1uZXcgRmxvYXQzMkFycmF5KDEpLGU9PihDWzBdPStlLENbMF0pKTt2YXIgQztjb25zdCBMPTMsTz01LEY9NjtjbGFzcyB6e2NvbnN0cnVjdG9yKGUpe3RoaXMub3B0aW9ucz1PYmplY3QuYXNzaWduKE9iamVjdC5jcmVhdGUoVCksZSksdGhpcy50cmVlcz1uZXcgQXJyYXkodGhpcy5vcHRpb25zLm1heFpvb20rMSksdGhpcy5zdHJpZGU9dGhpcy5vcHRpb25zLnJlZHVjZT83OjYsdGhpcy5jbHVzdGVyUHJvcHM9W107fWxvYWQoZSl7Y29uc3R7bG9nOnQsbWluWm9vbTpvLG1heFpvb206aX09dGhpcy5vcHRpb25zO3QmJmNvbnNvbGUudGltZShcInRvdGFsIHRpbWVcIik7Y29uc3Qgcz1gcHJlcGFyZSAke2UubGVuZ3RofSBwb2ludHNgO3QmJmNvbnNvbGUudGltZShzKSx0aGlzLnBvaW50cz1lO2NvbnN0IHI9W107Zm9yKGxldCB0PTA7dDxlLmxlbmd0aDt0Kyspe2NvbnN0IG89ZVt0XTtpZighby5nZW9tZXRyeSljb250aW51ZTtjb25zdFtpLHNdPW8uZ2VvbWV0cnkuY29vcmRpbmF0ZXMsbj1EKEcoaSkpLGE9RChqKHMpKTtyLnB1c2gobixhLDEvMCx0LC0xLDEpLHRoaXMub3B0aW9ucy5yZWR1Y2UmJnIucHVzaCgwKTt9bGV0IG49dGhpcy50cmVlc1tpKzFdPXRoaXMuX2NyZWF0ZVRyZWUocik7dCYmY29uc29sZS50aW1lRW5kKHMpO2ZvcihsZXQgZT1pO2U+PW87ZS0tKXtjb25zdCBvPStEYXRlLm5vdygpO249dGhpcy50cmVlc1tlXT10aGlzLl9jcmVhdGVUcmVlKHRoaXMuX2NsdXN0ZXIobixlKSksdCYmY29uc29sZS5sb2coXCJ6JWQ6ICVkIGNsdXN0ZXJzIGluICVkbXNcIixlLG4ubnVtSXRlbXMsK0RhdGUubm93KCktbyk7fXJldHVybiB0JiZjb25zb2xlLnRpbWVFbmQoXCJ0b3RhbCB0aW1lXCIpLHRoaXN9Z2V0Q2x1c3RlcnMoZSx0KXtsZXQgbz0oKGVbMF0rMTgwKSUzNjArMzYwKSUzNjAtMTgwO2NvbnN0IGk9TWF0aC5tYXgoLTkwLE1hdGgubWluKDkwLGVbMV0pKTtsZXQgcz0xODA9PT1lWzJdPzE4MDooKGVbMl0rMTgwKSUzNjArMzYwKSUzNjAtMTgwO2NvbnN0IHI9TWF0aC5tYXgoLTkwLE1hdGgubWluKDkwLGVbM10pKTtpZihlWzJdLWVbMF0+PTM2MClvPS0xODAscz0xODA7ZWxzZSBpZihvPnMpe2NvbnN0IGU9dGhpcy5nZXRDbHVzdGVycyhbbyxpLDE4MCxyXSx0KSxuPXRoaXMuZ2V0Q2x1c3RlcnMoWy0xODAsaSxzLHJdLHQpO3JldHVybiBlLmNvbmNhdChuKX1jb25zdCBuPXRoaXMudHJlZXNbdGhpcy5fbGltaXRab29tKHQpXSxhPW4ucmFuZ2UoRyhvKSxqKHIpLEcocyksaihpKSksbD1uLmRhdGEsYz1bXTtmb3IoY29uc3QgZSBvZiBhKXtjb25zdCB0PXRoaXMuc3RyaWRlKmU7Yy5wdXNoKGxbdCtPXT4xP0EobCx0LHRoaXMuY2x1c3RlclByb3BzKTp0aGlzLnBvaW50c1tsW3QrTF1dKTt9cmV0dXJuIGN9Z2V0Q2hpbGRyZW4oZSl7Y29uc3QgdD10aGlzLl9nZXRPcmlnaW5JZChlKSxvPXRoaXMuX2dldE9yaWdpblpvb20oZSksaT1cIk5vIGNsdXN0ZXIgd2l0aCB0aGUgc3BlY2lmaWVkIGlkLlwiLHM9dGhpcy50cmVlc1tvXTtpZighcyl0aHJvdyBuZXcgRXJyb3IoaSk7Y29uc3Qgcj1zLmRhdGE7aWYodCp0aGlzLnN0cmlkZT49ci5sZW5ndGgpdGhyb3cgbmV3IEVycm9yKGkpO2NvbnN0IG49dGhpcy5vcHRpb25zLnJhZGl1cy8odGhpcy5vcHRpb25zLmV4dGVudCpNYXRoLnBvdygyLG8tMSkpLGE9cy53aXRoaW4oclt0KnRoaXMuc3RyaWRlXSxyW3QqdGhpcy5zdHJpZGUrMV0sbiksbD1bXTtmb3IoY29uc3QgdCBvZiBhKXtjb25zdCBvPXQqdGhpcy5zdHJpZGU7cltvKzRdPT09ZSYmbC5wdXNoKHJbbytPXT4xP0EocixvLHRoaXMuY2x1c3RlclByb3BzKTp0aGlzLnBvaW50c1tyW28rTF1dKTt9aWYoMD09PWwubGVuZ3RoKXRocm93IG5ldyBFcnJvcihpKTtyZXR1cm4gbH1nZXRMZWF2ZXMoZSx0LG8pe2NvbnN0IGk9W107cmV0dXJuIHRoaXMuX2FwcGVuZExlYXZlcyhpLGUsdD10fHwxMCxvPW98fDAsMCksaX1nZXRUaWxlKGUsdCxvKXtjb25zdCBpPXRoaXMudHJlZXNbdGhpcy5fbGltaXRab29tKGUpXSxzPU1hdGgucG93KDIsZSkse2V4dGVudDpyLHJhZGl1czpufT10aGlzLm9wdGlvbnMsYT1uL3IsbD0oby1hKS9zLGM9KG8rMSthKS9zLHU9e2ZlYXR1cmVzOltdfTtyZXR1cm4gdGhpcy5fYWRkVGlsZUZlYXR1cmVzKGkucmFuZ2UoKHQtYSkvcyxsLCh0KzErYSkvcyxjKSxpLmRhdGEsdCxvLHMsdSksMD09PXQmJnRoaXMuX2FkZFRpbGVGZWF0dXJlcyhpLnJhbmdlKDEtYS9zLGwsMSxjKSxpLmRhdGEscyxvLHMsdSksdD09PXMtMSYmdGhpcy5fYWRkVGlsZUZlYXR1cmVzKGkucmFuZ2UoMCxsLGEvcyxjKSxpLmRhdGEsLTEsbyxzLHUpLHUuZmVhdHVyZXMubGVuZ3RoP3U6bnVsbH1nZXRDbHVzdGVyRXhwYW5zaW9uWm9vbShlKXtsZXQgdD10aGlzLl9nZXRPcmlnaW5ab29tKGUpLTE7Zm9yKDt0PD10aGlzLm9wdGlvbnMubWF4Wm9vbTspe2NvbnN0IG89dGhpcy5nZXRDaGlsZHJlbihlKTtpZih0KyssMSE9PW8ubGVuZ3RoKWJyZWFrO2U9b1swXS5wcm9wZXJ0aWVzLmNsdXN0ZXJfaWQ7fXJldHVybiB0fV9hcHBlbmRMZWF2ZXMoZSx0LG8saSxzKXtjb25zdCByPXRoaXMuZ2V0Q2hpbGRyZW4odCk7Zm9yKGNvbnN0IHQgb2Ygcil7Y29uc3Qgcj10LnByb3BlcnRpZXM7aWYociYmci5jbHVzdGVyP3Mrci5wb2ludF9jb3VudDw9aT9zKz1yLnBvaW50X2NvdW50OnM9dGhpcy5fYXBwZW5kTGVhdmVzKGUsci5jbHVzdGVyX2lkLG8saSxzKTpzPGk/cysrOmUucHVzaCh0KSxlLmxlbmd0aD09PW8pYnJlYWt9cmV0dXJuIHN9X2NyZWF0ZVRyZWUodCl7Y29uc3Qgbz1uZXcgZS5hdih0Lmxlbmd0aC90aGlzLnN0cmlkZXwwLHRoaXMub3B0aW9ucy5ub2RlU2l6ZSxGbG9hdDMyQXJyYXkpO2ZvcihsZXQgZT0wO2U8dC5sZW5ndGg7ZSs9dGhpcy5zdHJpZGUpby5hZGQodFtlXSx0W2UrMV0pO3JldHVybiBvLmZpbmlzaCgpLG8uZGF0YT10LG99X2FkZFRpbGVGZWF0dXJlcyhlLHQsbyxpLHMscil7Zm9yKGNvbnN0IG4gb2YgZSl7Y29uc3QgZT1uKnRoaXMuc3RyaWRlLGE9dFtlK09dPjE7bGV0IGwsYyx1O2lmKGEpbD1FKHQsZSx0aGlzLmNsdXN0ZXJQcm9wcyksYz10W2VdLHU9dFtlKzFdO2Vsc2Uge2NvbnN0IG89dGhpcy5wb2ludHNbdFtlK0xdXTtsPW8ucHJvcGVydGllcztjb25zdFtpLHNdPW8uZ2VvbWV0cnkuY29vcmRpbmF0ZXM7Yz1HKGkpLHU9aihzKTt9Y29uc3QgaD17dHlwZToxLGdlb21ldHJ5OltbTWF0aC5yb3VuZCh0aGlzLm9wdGlvbnMuZXh0ZW50KihjKnMtbykpLE1hdGgucm91bmQodGhpcy5vcHRpb25zLmV4dGVudCoodSpzLWkpKV1dLHRhZ3M6bH07bGV0IGQ7ZD1hfHx0aGlzLm9wdGlvbnMuZ2VuZXJhdGVJZD90W2UrTF06dGhpcy5wb2ludHNbdFtlK0xdXS5pZCx2b2lkIDAhPT1kJiYoaC5pZD1kKSxyLmZlYXR1cmVzLnB1c2goaCk7fX1fbGltaXRab29tKGUpe3JldHVybiBNYXRoLm1heCh0aGlzLm9wdGlvbnMubWluWm9vbSxNYXRoLm1pbihNYXRoLmZsb29yKCtlKSx0aGlzLm9wdGlvbnMubWF4Wm9vbSsxKSl9X2NsdXN0ZXIoZSx0KXtjb25zdHtyYWRpdXM6byxleHRlbnQ6aSxyZWR1Y2U6cyxtaW5Qb2ludHM6cn09dGhpcy5vcHRpb25zLG49by8oaSpNYXRoLnBvdygyLHQpKSxhPWUuZGF0YSxsPVtdLGM9dGhpcy5zdHJpZGU7Zm9yKGxldCBvPTA7bzxhLmxlbmd0aDtvKz1jKXtpZihhW28rMl08PXQpY29udGludWU7YVtvKzJdPXQ7Y29uc3QgaT1hW29dLHU9YVtvKzFdLGg9ZS53aXRoaW4oYVtvXSxhW28rMV0sbiksZD1hW28rT107bGV0IGY9ZDtmb3IoY29uc3QgZSBvZiBoKXtjb25zdCBvPWUqYzthW28rMl0+dCYmKGYrPWFbbytPXSk7fWlmKGY+ZCYmZj49cil7bGV0IGUscj1pKmQsbj11KmQsZz0tMTtjb25zdCBwPSgoby9jfDApPDw1KSsodCsxKSt0aGlzLnBvaW50cy5sZW5ndGg7Zm9yKGNvbnN0IGkgb2YgaCl7Y29uc3QgbD1pKmM7aWYoYVtsKzJdPD10KWNvbnRpbnVlO2FbbCsyXT10O2NvbnN0IHU9YVtsK09dO3IrPWFbbF0qdSxuKz1hW2wrMV0qdSxhW2wrNF09cCxzJiYoZXx8KGU9dGhpcy5fbWFwKGEsbywhMCksZz10aGlzLmNsdXN0ZXJQcm9wcy5sZW5ndGgsdGhpcy5jbHVzdGVyUHJvcHMucHVzaChlKSkscyhlLHRoaXMuX21hcChhLGwpKSk7fWFbbys0XT1wLGwucHVzaChyL2Ysbi9mLDEvMCxwLC0xLGYpLHMmJmwucHVzaChnKTt9ZWxzZSB7Zm9yKGxldCBlPTA7ZTxjO2UrKylsLnB1c2goYVtvK2VdKTtpZihmPjEpZm9yKGNvbnN0IGUgb2YgaCl7Y29uc3Qgbz1lKmM7aWYoIShhW28rMl08PXQpKXthW28rMl09dDtmb3IobGV0IGU9MDtlPGM7ZSsrKWwucHVzaChhW28rZV0pO319fX1yZXR1cm4gbH1fZ2V0T3JpZ2luSWQoZSl7cmV0dXJuIGUtdGhpcy5wb2ludHMubGVuZ3RoPj41fV9nZXRPcmlnaW5ab29tKGUpe3JldHVybiAoZS10aGlzLnBvaW50cy5sZW5ndGgpJTMyfV9tYXAoZSx0LG8pe2lmKGVbdCtPXT4xKXtjb25zdCBpPXRoaXMuY2x1c3RlclByb3BzW2VbdCtGXV07cmV0dXJuIG8/T2JqZWN0LmFzc2lnbih7fSxpKTppfWNvbnN0IGk9dGhpcy5wb2ludHNbZVt0K0xdXS5wcm9wZXJ0aWVzLHM9dGhpcy5vcHRpb25zLm1hcChpKTtyZXR1cm4gbyYmcz09PWk/T2JqZWN0LmFzc2lnbih7fSxzKTpzfX1mdW5jdGlvbiBBKGUsdCxvKXtyZXR1cm4ge3R5cGU6XCJGZWF0dXJlXCIsaWQ6ZVt0K0xdLHByb3BlcnRpZXM6RShlLHQsbyksZ2VvbWV0cnk6e3R5cGU6XCJQb2ludFwiLGNvb3JkaW5hdGVzOlsoaT1lW3RdLDM2MCooaS0uNSkpLFIoZVt0KzFdKV19fTt2YXIgaTt9ZnVuY3Rpb24gRShlLHQsbyl7Y29uc3QgaT1lW3QrT10scz1pPj0xZTQ/YCR7TWF0aC5yb3VuZChpLzFlMyl9a2A6aT49MWUzP01hdGgucm91bmQoaS8xMDApLzEwK1wia1wiOmkscj1lW3QrRl0sbj0tMT09PXI/e306T2JqZWN0LmFzc2lnbih7fSxvW3JdKTtyZXR1cm4gT2JqZWN0LmFzc2lnbihuLHtjbHVzdGVyOiEwLGNsdXN0ZXJfaWQ6ZVt0K0xdLHBvaW50X2NvdW50OmkscG9pbnRfY291bnRfYWJicmV2aWF0ZWQ6c30pfWZ1bmN0aW9uIEcoZSl7cmV0dXJuIGUvMzYwKy41fWZ1bmN0aW9uIGooZSl7Y29uc3QgdD1NYXRoLnNpbihlKk1hdGguUEkvMTgwKSxvPS41LS4yNSpNYXRoLmxvZygoMSt0KS8oMS10KSkvTWF0aC5QSTtyZXR1cm4gbzwwPzA6bz4xPzE6b31mdW5jdGlvbiBSKGUpe2NvbnN0IHQ9KDE4MC0zNjAqZSkqTWF0aC5QSS8xODA7cmV0dXJuIDM2MCpNYXRoLmF0YW4oTWF0aC5leHAodCkpL01hdGguUEktOTB9ZnVuY3Rpb24gWihlLHQsbyxpKXtsZXQgcz1pO2NvbnN0IHI9dCsoby10Pj4xKTtsZXQgbixhPW8tdDtjb25zdCBsPWVbdF0sYz1lW3QrMV0sdT1lW29dLGg9ZVtvKzFdO2ZvcihsZXQgaT10KzM7aTxvO2krPTMpe2NvbnN0IHQ9TihlW2ldLGVbaSsxXSxsLGMsdSxoKTtpZih0PnMpbj1pLHM9dDtlbHNlIGlmKHQ9PT1zKXtjb25zdCBlPU1hdGguYWJzKGktcik7ZTxhJiYobj1pLGE9ZSk7fX1zPmkmJihuLXQ+MyYmWihlLHQsbixpKSxlW24rMl09cyxvLW4+MyYmWihlLG4sbyxpKSk7fWZ1bmN0aW9uIE4oZSx0LG8saSxzLHIpe2xldCBuPXMtbyxhPXItaTtpZigwIT09bnx8MCE9PWEpe2NvbnN0IGw9KChlLW8pKm4rKHQtaSkqYSkvKG4qbithKmEpO2w+MT8obz1zLGk9cik6bD4wJiYobys9bipsLGkrPWEqbCk7fXJldHVybiBuPWUtbyxhPXQtaSxuKm4rYSphfWZ1bmN0aW9uIEooZSx0LG8saSl7Y29uc3Qgcz17aWQ6bnVsbD09ZT9udWxsOmUsdHlwZTp0LGdlb21ldHJ5Om8sdGFnczppLG1pblg6MS8wLG1pblk6MS8wLG1heFg6LTEvMCxtYXhZOi0xLzB9O2lmKFwiUG9pbnRcIj09PXR8fFwiTXVsdGlQb2ludFwiPT09dHx8XCJMaW5lU3RyaW5nXCI9PT10KVcocyxvKTtlbHNlIGlmKFwiUG9seWdvblwiPT09dClXKHMsb1swXSk7ZWxzZSBpZihcIk11bHRpTGluZVN0cmluZ1wiPT09dClmb3IoY29uc3QgZSBvZiBvKVcocyxlKTtlbHNlIGlmKFwiTXVsdGlQb2x5Z29uXCI9PT10KWZvcihjb25zdCBlIG9mIG8pVyhzLGVbMF0pO3JldHVybiBzfWZ1bmN0aW9uIFcoZSx0KXtmb3IobGV0IG89MDtvPHQubGVuZ3RoO28rPTMpZS5taW5YPU1hdGgubWluKGUubWluWCx0W29dKSxlLm1pblk9TWF0aC5taW4oZS5taW5ZLHRbbysxXSksZS5tYXhYPU1hdGgubWF4KGUubWF4WCx0W29dKSxlLm1heFk9TWF0aC5tYXgoZS5tYXhZLHRbbysxXSk7fWZ1bmN0aW9uIFkoZSx0LG8saSl7aWYoIXQuZ2VvbWV0cnkpcmV0dXJuO2NvbnN0IHM9dC5nZW9tZXRyeS5jb29yZGluYXRlcztpZihzJiYwPT09cy5sZW5ndGgpcmV0dXJuO2NvbnN0IHI9dC5nZW9tZXRyeS50eXBlLG49TWF0aC5wb3coby50b2xlcmFuY2UvKCgxPDxvLm1heFpvb20pKm8uZXh0ZW50KSwyKTtsZXQgYT1bXSxsPXQuaWQ7aWYoby5wcm9tb3RlSWQ/bD10LnByb3BlcnRpZXNbby5wcm9tb3RlSWRdOm8uZ2VuZXJhdGVJZCYmKGw9aXx8MCksXCJQb2ludFwiPT09cilWKHMsYSk7ZWxzZSBpZihcIk11bHRpUG9pbnRcIj09PXIpZm9yKGNvbnN0IGUgb2YgcylWKGUsYSk7ZWxzZSBpZihcIkxpbmVTdHJpbmdcIj09PXIpWChzLGEsbiwhMSk7ZWxzZSBpZihcIk11bHRpTGluZVN0cmluZ1wiPT09cil7aWYoby5saW5lTWV0cmljcyl7Zm9yKGNvbnN0IG8gb2YgcylhPVtdLFgobyxhLG4sITEpLGUucHVzaChKKGwsXCJMaW5lU3RyaW5nXCIsYSx0LnByb3BlcnRpZXMpKTtyZXR1cm59cShzLGEsbiwhMSk7fWVsc2UgaWYoXCJQb2x5Z29uXCI9PT1yKXEocyxhLG4sITApO2Vsc2Uge2lmKFwiTXVsdGlQb2x5Z29uXCIhPT1yKXtpZihcIkdlb21ldHJ5Q29sbGVjdGlvblwiPT09cil7Zm9yKGNvbnN0IHMgb2YgdC5nZW9tZXRyeS5nZW9tZXRyaWVzKVkoZSx7aWQ6bCxnZW9tZXRyeTpzLHByb3BlcnRpZXM6dC5wcm9wZXJ0aWVzfSxvLGkpO3JldHVybn10aHJvdyBuZXcgRXJyb3IoXCJJbnB1dCBkYXRhIGlzIG5vdCBhIHZhbGlkIEdlb0pTT04gb2JqZWN0LlwiKX1mb3IoY29uc3QgZSBvZiBzKXtjb25zdCB0PVtdO3EoZSx0LG4sITApLGEucHVzaCh0KTt9fWUucHVzaChKKGwscixhLHQucHJvcGVydGllcykpO31mdW5jdGlvbiBWKGUsdCl7dC5wdXNoKEgoZVswXSksQihlWzFdKSwwKTt9ZnVuY3Rpb24gWChlLHQsbyxpKXtsZXQgcyxyLG49MDtmb3IobGV0IG89MDtvPGUubGVuZ3RoO28rKyl7Y29uc3QgYT1IKGVbb11bMF0pLGw9QihlW29dWzFdKTt0LnB1c2goYSxsLDApLG8+MCYmKG4rPWk/KHMqbC1hKnIpLzI6TWF0aC5zcXJ0KE1hdGgucG93KGEtcywyKStNYXRoLnBvdyhsLXIsMikpKSxzPWEscj1sO31jb25zdCBhPXQubGVuZ3RoLTM7dFsyXT0xLFoodCwwLGEsbyksdFthKzJdPTEsdC5zaXplPU1hdGguYWJzKG4pLHQuc3RhcnQ9MCx0LmVuZD10LnNpemU7fWZ1bmN0aW9uIHEoZSx0LG8saSl7Zm9yKGxldCBzPTA7czxlLmxlbmd0aDtzKyspe2NvbnN0IHI9W107WChlW3NdLHIsbyxpKSx0LnB1c2gocik7fX1mdW5jdGlvbiBIKGUpe3JldHVybiBlLzM2MCsuNX1mdW5jdGlvbiBCKGUpe2NvbnN0IHQ9TWF0aC5zaW4oZSpNYXRoLlBJLzE4MCksbz0uNS0uMjUqTWF0aC5sb2coKDErdCkvKDEtdCkpL01hdGguUEk7cmV0dXJuIG88MD8wOm8+MT8xOm99ZnVuY3Rpb24gVShlLHQsbyxpLHMscixuLGEpe2lmKGkvPXQscj49KG8vPXQpJiZuPGkpcmV0dXJuIGU7aWYobjxvfHxyPj1pKXJldHVybiBudWxsO2NvbnN0IGw9W107Zm9yKGNvbnN0IHQgb2YgZSl7Y29uc3QgZT10Lmdlb21ldHJ5O2xldCByPXQudHlwZTtjb25zdCBuPTA9PT1zP3QubWluWDp0Lm1pblksYz0wPT09cz90Lm1heFg6dC5tYXhZO2lmKG4+PW8mJmM8aSl7bC5wdXNoKHQpO2NvbnRpbnVlfWlmKGM8b3x8bj49aSljb250aW51ZTtsZXQgdT1bXTtpZihcIlBvaW50XCI9PT1yfHxcIk11bHRpUG9pbnRcIj09PXIpJChlLHUsbyxpLHMpO2Vsc2UgaWYoXCJMaW5lU3RyaW5nXCI9PT1yKUsoZSx1LG8saSxzLCExLGEubGluZU1ldHJpY3MpO2Vsc2UgaWYoXCJNdWx0aUxpbmVTdHJpbmdcIj09PXIpZWUoZSx1LG8saSxzLCExKTtlbHNlIGlmKFwiUG9seWdvblwiPT09cillZShlLHUsbyxpLHMsITApO2Vsc2UgaWYoXCJNdWx0aVBvbHlnb25cIj09PXIpZm9yKGNvbnN0IHQgb2YgZSl7Y29uc3QgZT1bXTtlZSh0LGUsbyxpLHMsITApLGUubGVuZ3RoJiZ1LnB1c2goZSk7fWlmKHUubGVuZ3RoKXtpZihhLmxpbmVNZXRyaWNzJiZcIkxpbmVTdHJpbmdcIj09PXIpe2Zvcihjb25zdCBlIG9mIHUpbC5wdXNoKEoodC5pZCxyLGUsdC50YWdzKSk7Y29udGludWV9XCJMaW5lU3RyaW5nXCIhPT1yJiZcIk11bHRpTGluZVN0cmluZ1wiIT09cnx8KDE9PT11Lmxlbmd0aD8ocj1cIkxpbmVTdHJpbmdcIix1PXVbMF0pOnI9XCJNdWx0aUxpbmVTdHJpbmdcIiksXCJQb2ludFwiIT09ciYmXCJNdWx0aVBvaW50XCIhPT1yfHwocj0zPT09dS5sZW5ndGg/XCJQb2ludFwiOlwiTXVsdGlQb2ludFwiKSxsLnB1c2goSih0LmlkLHIsdSx0LnRhZ3MpKTt9fXJldHVybiBsLmxlbmd0aD9sOm51bGx9ZnVuY3Rpb24gJChlLHQsbyxpLHMpe2ZvcihsZXQgcj0wO3I8ZS5sZW5ndGg7cis9Myl7Y29uc3Qgbj1lW3Irc107bj49byYmbjw9aSYmdGUodCxlW3JdLGVbcisxXSxlW3IrMl0pO319ZnVuY3Rpb24gSyhlLHQsbyxpLHMscixuKXtsZXQgYT1RKGUpO2NvbnN0IGw9MD09PXM/b2U6aWU7bGV0IGMsdSxoPWUuc3RhcnQ7Zm9yKGxldCBkPTA7ZDxlLmxlbmd0aC0zO2QrPTMpe2NvbnN0IGY9ZVtkXSxnPWVbZCsxXSxwPWVbZCsyXSxtPWVbZCszXSx5PWVbZCs0XSx2PTA9PT1zP2Y6Zyx3PTA9PT1zP206eTtsZXQgeD0hMTtuJiYoYz1NYXRoLnNxcnQoTWF0aC5wb3coZi1tLDIpK01hdGgucG93KGcteSwyKSkpLHY8bz93Pm8mJih1PWwoYSxmLGcsbSx5LG8pLG4mJihhLnN0YXJ0PWgrYyp1KSk6dj5pP3c8aSYmKHU9bChhLGYsZyxtLHksaSksbiYmKGEuc3RhcnQ9aCtjKnUpKTp0ZShhLGYsZyxwKSx3PG8mJnY+PW8mJih1PWwoYSxmLGcsbSx5LG8pLHg9ITApLHc+aSYmdjw9aSYmKHU9bChhLGYsZyxtLHksaSkseD0hMCksIXImJngmJihuJiYoYS5lbmQ9aCtjKnUpLHQucHVzaChhKSxhPVEoZSkpLG4mJihoKz1jKTt9bGV0IGQ9ZS5sZW5ndGgtMztjb25zdCBmPWVbZF0sZz1lW2QrMV0scD0wPT09cz9mOmc7cD49byYmcDw9aSYmdGUoYSxmLGcsZVtkKzJdKSxkPWEubGVuZ3RoLTMsciYmZD49MyYmKGFbZF0hPT1hWzBdfHxhW2QrMV0hPT1hWzFdKSYmdGUoYSxhWzBdLGFbMV0sYVsyXSksYS5sZW5ndGgmJnQucHVzaChhKTt9ZnVuY3Rpb24gUShlKXtjb25zdCB0PVtdO3JldHVybiB0LnNpemU9ZS5zaXplLHQuc3RhcnQ9ZS5zdGFydCx0LmVuZD1lLmVuZCx0fWZ1bmN0aW9uIGVlKGUsdCxvLGkscyxyKXtmb3IoY29uc3QgbiBvZiBlKUsobix0LG8saSxzLHIsITEpO31mdW5jdGlvbiB0ZShlLHQsbyxpKXtlLnB1c2godCxvLGkpO31mdW5jdGlvbiBvZShlLHQsbyxpLHMscil7Y29uc3Qgbj0oci10KS8oaS10KTtyZXR1cm4gdGUoZSxyLG8rKHMtbykqbiwxKSxufWZ1bmN0aW9uIGllKGUsdCxvLGkscyxyKXtjb25zdCBuPShyLW8pLyhzLW8pO3JldHVybiB0ZShlLHQrKGktdCkqbixyLDEpLG59ZnVuY3Rpb24gc2UoZSx0KXtjb25zdCBvPVtdO2ZvcihsZXQgaT0wO2k8ZS5sZW5ndGg7aSsrKXtjb25zdCBzPWVbaV0scj1zLnR5cGU7bGV0IG47aWYoXCJQb2ludFwiPT09cnx8XCJNdWx0aVBvaW50XCI9PT1yfHxcIkxpbmVTdHJpbmdcIj09PXIpbj1yZShzLmdlb21ldHJ5LHQpO2Vsc2UgaWYoXCJNdWx0aUxpbmVTdHJpbmdcIj09PXJ8fFwiUG9seWdvblwiPT09cil7bj1bXTtmb3IoY29uc3QgZSBvZiBzLmdlb21ldHJ5KW4ucHVzaChyZShlLHQpKTt9ZWxzZSBpZihcIk11bHRpUG9seWdvblwiPT09cil7bj1bXTtmb3IoY29uc3QgZSBvZiBzLmdlb21ldHJ5KXtjb25zdCBvPVtdO2Zvcihjb25zdCBpIG9mIGUpby5wdXNoKHJlKGksdCkpO24ucHVzaChvKTt9fW8ucHVzaChKKHMuaWQscixuLHMudGFncykpO31yZXR1cm4gb31mdW5jdGlvbiByZShlLHQpe2NvbnN0IG89W107by5zaXplPWUuc2l6ZSx2b2lkIDAhPT1lLnN0YXJ0JiYoby5zdGFydD1lLnN0YXJ0LG8uZW5kPWUuZW5kKTtmb3IobGV0IGk9MDtpPGUubGVuZ3RoO2krPTMpby5wdXNoKGVbaV0rdCxlW2krMV0sZVtpKzJdKTtyZXR1cm4gb31mdW5jdGlvbiBuZShlLHQpe2lmKGUudHJhbnNmb3JtZWQpcmV0dXJuIGU7Y29uc3Qgbz0xPDxlLnosaT1lLngscz1lLnk7Zm9yKGNvbnN0IHIgb2YgZS5mZWF0dXJlcyl7Y29uc3QgZT1yLmdlb21ldHJ5LG49ci50eXBlO2lmKHIuZ2VvbWV0cnk9W10sMT09PW4pZm9yKGxldCBuPTA7bjxlLmxlbmd0aDtuKz0yKXIuZ2VvbWV0cnkucHVzaChhZShlW25dLGVbbisxXSx0LG8saSxzKSk7ZWxzZSBmb3IobGV0IG49MDtuPGUubGVuZ3RoO24rKyl7Y29uc3QgYT1bXTtmb3IobGV0IHI9MDtyPGVbbl0ubGVuZ3RoO3IrPTIpYS5wdXNoKGFlKGVbbl1bcl0sZVtuXVtyKzFdLHQsbyxpLHMpKTtyLmdlb21ldHJ5LnB1c2goYSk7fX1yZXR1cm4gZS50cmFuc2Zvcm1lZD0hMCxlfWZ1bmN0aW9uIGFlKGUsdCxvLGkscyxyKXtyZXR1cm4gW01hdGgucm91bmQobyooZSppLXMpKSxNYXRoLnJvdW5kKG8qKHQqaS1yKSldfWZ1bmN0aW9uIGxlKGUsdCxvLGkscyl7Y29uc3Qgcj10PT09cy5tYXhab29tPzA6cy50b2xlcmFuY2UvKCgxPDx0KSpzLmV4dGVudCksbj17ZmVhdHVyZXM6W10sbnVtUG9pbnRzOjAsbnVtU2ltcGxpZmllZDowLG51bUZlYXR1cmVzOmUubGVuZ3RoLHNvdXJjZTpudWxsLHg6byx5Omksejp0LHRyYW5zZm9ybWVkOiExLG1pblg6MixtaW5ZOjEsbWF4WDotMSxtYXhZOjB9O2Zvcihjb25zdCB0IG9mIGUpY2Uobix0LHIscyk7cmV0dXJuIG59ZnVuY3Rpb24gY2UoZSx0LG8saSl7Y29uc3Qgcz10Lmdlb21ldHJ5LHI9dC50eXBlLG49W107aWYoZS5taW5YPU1hdGgubWluKGUubWluWCx0Lm1pblgpLGUubWluWT1NYXRoLm1pbihlLm1pblksdC5taW5ZKSxlLm1heFg9TWF0aC5tYXgoZS5tYXhYLHQubWF4WCksZS5tYXhZPU1hdGgubWF4KGUubWF4WSx0Lm1heFkpLFwiUG9pbnRcIj09PXJ8fFwiTXVsdGlQb2ludFwiPT09cilmb3IobGV0IHQ9MDt0PHMubGVuZ3RoO3QrPTMpbi5wdXNoKHNbdF0sc1t0KzFdKSxlLm51bVBvaW50cysrLGUubnVtU2ltcGxpZmllZCsrO2Vsc2UgaWYoXCJMaW5lU3RyaW5nXCI9PT1yKXVlKG4scyxlLG8sITEsITEpO2Vsc2UgaWYoXCJNdWx0aUxpbmVTdHJpbmdcIj09PXJ8fFwiUG9seWdvblwiPT09cilmb3IobGV0IHQ9MDt0PHMubGVuZ3RoO3QrKyl1ZShuLHNbdF0sZSxvLFwiUG9seWdvblwiPT09ciwwPT09dCk7ZWxzZSBpZihcIk11bHRpUG9seWdvblwiPT09cilmb3IobGV0IHQ9MDt0PHMubGVuZ3RoO3QrKyl7Y29uc3QgaT1zW3RdO2ZvcihsZXQgdD0wO3Q8aS5sZW5ndGg7dCsrKXVlKG4saVt0XSxlLG8sITAsMD09PXQpO31pZihuLmxlbmd0aCl7bGV0IG89dC50YWdzfHxudWxsO2lmKFwiTGluZVN0cmluZ1wiPT09ciYmaS5saW5lTWV0cmljcyl7bz17fTtmb3IoY29uc3QgZSBpbiB0LnRhZ3Mpb1tlXT10LnRhZ3NbZV07by5tYXBib3hfY2xpcF9zdGFydD1zLnN0YXJ0L3Muc2l6ZSxvLm1hcGJveF9jbGlwX2VuZD1zLmVuZC9zLnNpemU7fWNvbnN0IGE9e2dlb21ldHJ5Om4sdHlwZTpcIlBvbHlnb25cIj09PXJ8fFwiTXVsdGlQb2x5Z29uXCI9PT1yPzM6XCJMaW5lU3RyaW5nXCI9PT1yfHxcIk11bHRpTGluZVN0cmluZ1wiPT09cj8yOjEsdGFnczpvfTtudWxsIT09dC5pZCYmKGEuaWQ9dC5pZCksZS5mZWF0dXJlcy5wdXNoKGEpO319ZnVuY3Rpb24gdWUoZSx0LG8saSxzLHIpe2NvbnN0IG49aSppO2lmKGk+MCYmdC5zaXplPChzP246aSkpcmV0dXJuIHZvaWQoby5udW1Qb2ludHMrPXQubGVuZ3RoLzMpO2NvbnN0IGE9W107Zm9yKGxldCBlPTA7ZTx0Lmxlbmd0aDtlKz0zKSgwPT09aXx8dFtlKzJdPm4pJiYoby5udW1TaW1wbGlmaWVkKyssYS5wdXNoKHRbZV0sdFtlKzFdKSksby5udW1Qb2ludHMrKztzJiZmdW5jdGlvbihlLHQpe2xldCBvPTA7Zm9yKGxldCB0PTAsaT1lLmxlbmd0aCxzPWktMjt0PGk7cz10LHQrPTIpbys9KGVbdF0tZVtzXSkqKGVbdCsxXStlW3MrMV0pO2lmKG8+MD09PXQpZm9yKGxldCB0PTAsbz1lLmxlbmd0aDt0PG8vMjt0Kz0yKXtjb25zdCBpPWVbdF0scz1lW3QrMV07ZVt0XT1lW28tMi10XSxlW3QrMV09ZVtvLTEtdF0sZVtvLTItdF09aSxlW28tMS10XT1zO319KGEsciksZS5wdXNoKGEpO31jb25zdCBoZT17bWF4Wm9vbToxNCxpbmRleE1heFpvb206NSxpbmRleE1heFBvaW50czoxZTUsdG9sZXJhbmNlOjMsZXh0ZW50OjQwOTYsYnVmZmVyOjY0LGxpbmVNZXRyaWNzOiExLHByb21vdGVJZDpudWxsLGdlbmVyYXRlSWQ6ITEsZGVidWc6MH07Y2xhc3MgZGV7Y29uc3RydWN0b3IoZSx0KXtjb25zdCBvPSh0PXRoaXMub3B0aW9ucz1mdW5jdGlvbihlLHQpe2Zvcihjb25zdCBvIGluIHQpZVtvXT10W29dO3JldHVybiBlfShPYmplY3QuY3JlYXRlKGhlKSx0KSkuZGVidWc7aWYobyYmY29uc29sZS50aW1lKFwicHJlcHJvY2VzcyBkYXRhXCIpLHQubWF4Wm9vbTwwfHx0Lm1heFpvb20+MjQpdGhyb3cgbmV3IEVycm9yKFwibWF4Wm9vbSBzaG91bGQgYmUgaW4gdGhlIDAtMjQgcmFuZ2VcIik7aWYodC5wcm9tb3RlSWQmJnQuZ2VuZXJhdGVJZCl0aHJvdyBuZXcgRXJyb3IoXCJwcm9tb3RlSWQgYW5kIGdlbmVyYXRlSWQgY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIuXCIpO2xldCBpPWZ1bmN0aW9uKGUsdCl7Y29uc3Qgbz1bXTtpZihcIkZlYXR1cmVDb2xsZWN0aW9uXCI9PT1lLnR5cGUpZm9yKGxldCBpPTA7aTxlLmZlYXR1cmVzLmxlbmd0aDtpKyspWShvLGUuZmVhdHVyZXNbaV0sdCxpKTtlbHNlIFkobyxcIkZlYXR1cmVcIj09PWUudHlwZT9lOntnZW9tZXRyeTplfSx0KTtyZXR1cm4gb30oZSx0KTt0aGlzLnRpbGVzPXt9LHRoaXMudGlsZUNvb3Jkcz1bXSxvJiYoY29uc29sZS50aW1lRW5kKFwicHJlcHJvY2VzcyBkYXRhXCIpLGNvbnNvbGUubG9nKFwiaW5kZXg6IG1heFpvb206ICVkLCBtYXhQb2ludHM6ICVkXCIsdC5pbmRleE1heFpvb20sdC5pbmRleE1heFBvaW50cyksY29uc29sZS50aW1lKFwiZ2VuZXJhdGUgdGlsZXNcIiksdGhpcy5zdGF0cz17fSx0aGlzLnRvdGFsPTApLGk9ZnVuY3Rpb24oZSx0KXtjb25zdCBvPXQuYnVmZmVyL3QuZXh0ZW50O2xldCBpPWU7Y29uc3Qgcz1VKGUsMSwtMS1vLG8sMCwtMSwyLHQpLHI9VShlLDEsMS1vLDIrbywwLC0xLDIsdCk7cmV0dXJuIChzfHxyKSYmKGk9VShlLDEsLW8sMStvLDAsLTEsMix0KXx8W10scyYmKGk9c2UocywxKS5jb25jYXQoaSkpLHImJihpPWkuY29uY2F0KHNlKHIsLTEpKSkpLGl9KGksdCksaS5sZW5ndGgmJnRoaXMuc3BsaXRUaWxlKGksMCwwLDApLG8mJihpLmxlbmd0aCYmY29uc29sZS5sb2coXCJmZWF0dXJlczogJWQsIHBvaW50czogJWRcIix0aGlzLnRpbGVzWzBdLm51bUZlYXR1cmVzLHRoaXMudGlsZXNbMF0ubnVtUG9pbnRzKSxjb25zb2xlLnRpbWVFbmQoXCJnZW5lcmF0ZSB0aWxlc1wiKSxjb25zb2xlLmxvZyhcInRpbGVzIGdlbmVyYXRlZDpcIix0aGlzLnRvdGFsLEpTT04uc3RyaW5naWZ5KHRoaXMuc3RhdHMpKSk7fXNwbGl0VGlsZShlLHQsbyxpLHMscixuKXtjb25zdCBhPVtlLHQsbyxpXSxsPXRoaXMub3B0aW9ucyxjPWwuZGVidWc7Zm9yKDthLmxlbmd0aDspe2k9YS5wb3AoKSxvPWEucG9wKCksdD1hLnBvcCgpLGU9YS5wb3AoKTtjb25zdCB1PTE8PHQsaD1mZSh0LG8saSk7bGV0IGQ9dGhpcy50aWxlc1toXTtpZighZCYmKGM+MSYmY29uc29sZS50aW1lKFwiY3JlYXRpb25cIiksZD10aGlzLnRpbGVzW2hdPWxlKGUsdCxvLGksbCksdGhpcy50aWxlQ29vcmRzLnB1c2goe3o6dCx4Om8seTppfSksYykpe2M+MSYmKGNvbnNvbGUubG9nKFwidGlsZSB6JWQtJWQtJWQgKGZlYXR1cmVzOiAlZCwgcG9pbnRzOiAlZCwgc2ltcGxpZmllZDogJWQpXCIsdCxvLGksZC5udW1GZWF0dXJlcyxkLm51bVBvaW50cyxkLm51bVNpbXBsaWZpZWQpLGNvbnNvbGUudGltZUVuZChcImNyZWF0aW9uXCIpKTtjb25zdCBlPWB6JHt0fWA7dGhpcy5zdGF0c1tlXT0odGhpcy5zdGF0c1tlXXx8MCkrMSx0aGlzLnRvdGFsKys7fWlmKGQuc291cmNlPWUsbnVsbD09cyl7aWYodD09PWwuaW5kZXhNYXhab29tfHxkLm51bVBvaW50czw9bC5pbmRleE1heFBvaW50cyljb250aW51ZX1lbHNlIHtpZih0PT09bC5tYXhab29tfHx0PT09cyljb250aW51ZTtpZihudWxsIT1zKXtjb25zdCBlPXMtdDtpZihvIT09cj4+ZXx8aSE9PW4+PmUpY29udGludWV9fWlmKGQuc291cmNlPW51bGwsMD09PWUubGVuZ3RoKWNvbnRpbnVlO2M+MSYmY29uc29sZS50aW1lKFwiY2xpcHBpbmdcIik7Y29uc3QgZj0uNSpsLmJ1ZmZlci9sLmV4dGVudCxnPS41LWYscD0uNStmLG09MStmO2xldCB5PW51bGwsdj1udWxsLHc9bnVsbCx4PW51bGwsYj1VKGUsdSxvLWYsbytwLDAsZC5taW5YLGQubWF4WCxsKSxTPVUoZSx1LG8rZyxvK20sMCxkLm1pblgsZC5tYXhYLGwpO2U9bnVsbCxiJiYoeT1VKGIsdSxpLWYsaStwLDEsZC5taW5ZLGQubWF4WSxsKSx2PVUoYix1LGkrZyxpK20sMSxkLm1pblksZC5tYXhZLGwpLGI9bnVsbCksUyYmKHc9VShTLHUsaS1mLGkrcCwxLGQubWluWSxkLm1heFksbCkseD1VKFMsdSxpK2csaSttLDEsZC5taW5ZLGQubWF4WSxsKSxTPW51bGwpLGM+MSYmY29uc29sZS50aW1lRW5kKFwiY2xpcHBpbmdcIiksYS5wdXNoKHl8fFtdLHQrMSwyKm8sMippKSxhLnB1c2godnx8W10sdCsxLDIqbywyKmkrMSksYS5wdXNoKHd8fFtdLHQrMSwyKm8rMSwyKmkpLGEucHVzaCh4fHxbXSx0KzEsMipvKzEsMippKzEpO319Z2V0VGlsZShlLHQsbyl7ZT0rZSx0PSt0LG89K287Y29uc3QgaT10aGlzLm9wdGlvbnMse2V4dGVudDpzLGRlYnVnOnJ9PWk7aWYoZTwwfHxlPjI0KXJldHVybiBudWxsO2NvbnN0IG49MTw8ZSxhPWZlKGUsdD10K24mbi0xLG8pO2lmKHRoaXMudGlsZXNbYV0pcmV0dXJuIG5lKHRoaXMudGlsZXNbYV0scyk7cj4xJiZjb25zb2xlLmxvZyhcImRyaWxsaW5nIGRvd24gdG8geiVkLSVkLSVkXCIsZSx0LG8pO2xldCBsLGM9ZSx1PXQsaD1vO2Zvcig7IWwmJmM+MDspYy0tLHU+Pj0xLGg+Pj0xLGw9dGhpcy50aWxlc1tmZShjLHUsaCldO3JldHVybiBsJiZsLnNvdXJjZT8ocj4xJiYoY29uc29sZS5sb2coXCJmb3VuZCBwYXJlbnQgdGlsZSB6JWQtJWQtJWRcIixjLHUsaCksY29uc29sZS50aW1lKFwiZHJpbGxpbmcgZG93blwiKSksdGhpcy5zcGxpdFRpbGUobC5zb3VyY2UsYyx1LGgsZSx0LG8pLHI+MSYmY29uc29sZS50aW1lRW5kKFwiZHJpbGxpbmcgZG93blwiKSx0aGlzLnRpbGVzW2FdP25lKHRoaXMudGlsZXNbYV0scyk6bnVsbCk6bnVsbH19ZnVuY3Rpb24gZmUoZSx0LG8pe3JldHVybiAzMiooKDE8PGUpKm8rdCkrZX1mdW5jdGlvbiBnZShlLHQpe3JldHVybiB0P2UucHJvcGVydGllc1t0XTplLmlkfWZ1bmN0aW9uIHBlKGUsdCl7aWYobnVsbD09ZSlyZXR1cm4gITA7aWYoXCJGZWF0dXJlXCI9PT1lLnR5cGUpcmV0dXJuIG51bGwhPWdlKGUsdCk7aWYoXCJGZWF0dXJlQ29sbGVjdGlvblwiPT09ZS50eXBlKXtjb25zdCBvPW5ldyBTZXQ7Zm9yKGNvbnN0IGkgb2YgZS5mZWF0dXJlcyl7Y29uc3QgZT1nZShpLHQpO2lmKG51bGw9PWUpcmV0dXJuICExO2lmKG8uaGFzKGUpKXJldHVybiAhMTtvLmFkZChlKTt9cmV0dXJuICEwfXJldHVybiAhMX1mdW5jdGlvbiBtZShlLHQpe2NvbnN0IG89bmV3IE1hcDtpZihudWxsPT1lKTtlbHNlIGlmKFwiRmVhdHVyZVwiPT09ZS50eXBlKW8uc2V0KGdlKGUsdCksZSk7ZWxzZSBmb3IoY29uc3QgaSBvZiBlLmZlYXR1cmVzKW8uc2V0KGdlKGksdCksaSk7cmV0dXJuIG99Y2xhc3MgeWUgZXh0ZW5kcyBye2NvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKSx0aGlzLl9kYXRhVXBkYXRlYWJsZT1uZXcgTWFwO31sb2FkVmVjdG9yVGlsZSh0LG8pe3JldHVybiBlLl8odGhpcyx2b2lkIDAsdm9pZCAwLChmdW5jdGlvbiooKXtjb25zdCBvPXQudGlsZUlELmNhbm9uaWNhbDtpZighdGhpcy5fZ2VvSlNPTkluZGV4KXRocm93IG5ldyBFcnJvcihcIlVuYWJsZSB0byBwYXJzZSB0aGUgZGF0YSBpbnRvIGEgY2x1c3RlciBvciBnZW9qc29uXCIpO2NvbnN0IGk9dGhpcy5fZ2VvSlNPTkluZGV4LmdldFRpbGUoby56LG8ueCxvLnkpO2lmKCFpKXJldHVybiBudWxsO2NvbnN0IHM9bmV3IGNsYXNze2NvbnN0cnVjdG9yKHQpe3RoaXMubGF5ZXJzPXtfZ2VvanNvblRpbGVMYXllcjp0aGlzfSx0aGlzLm5hbWU9XCJfZ2VvanNvblRpbGVMYXllclwiLHRoaXMuZXh0ZW50PWUuWCx0aGlzLmxlbmd0aD10Lmxlbmd0aCx0aGlzLl9mZWF0dXJlcz10O31mZWF0dXJlKHQpe3JldHVybiBuZXcgY2xhc3N7Y29uc3RydWN0b3IodCl7dGhpcy5fZmVhdHVyZT10LHRoaXMuZXh0ZW50PWUuWCx0aGlzLnR5cGU9dC50eXBlLHRoaXMucHJvcGVydGllcz10LnRhZ3MsXCJpZFwiaW4gdCYmIWlzTmFOKHQuaWQpJiYodGhpcy5pZD1wYXJzZUludCh0LmlkLDEwKSk7fWxvYWRHZW9tZXRyeSgpe2lmKDE9PT10aGlzLl9mZWF0dXJlLnR5cGUpe2NvbnN0IHQ9W107Zm9yKGNvbnN0IG8gb2YgdGhpcy5fZmVhdHVyZS5nZW9tZXRyeSl0LnB1c2goW25ldyBlLlAob1swXSxvWzFdKV0pO3JldHVybiB0fXtjb25zdCB0PVtdO2Zvcihjb25zdCBvIG9mIHRoaXMuX2ZlYXR1cmUuZ2VvbWV0cnkpe2NvbnN0IGk9W107Zm9yKGNvbnN0IHQgb2YgbylpLnB1c2gobmV3IGUuUCh0WzBdLHRbMV0pKTt0LnB1c2goaSk7fXJldHVybiB0fX10b0dlb0pTT04oZSx0LG8pe3JldHVybiB1LmNhbGwodGhpcyxlLHQsbyl9fSh0aGlzLl9mZWF0dXJlc1t0XSl9fShpLmZlYXR1cmVzKTtsZXQgcj1rKHMpO3JldHVybiAwPT09ci5ieXRlT2Zmc2V0JiZyLmJ5dGVMZW5ndGg9PT1yLmJ1ZmZlci5ieXRlTGVuZ3RofHwocj1uZXcgVWludDhBcnJheShyKSkse3ZlY3RvclRpbGU6cyxyYXdEYXRhOnIuYnVmZmVyfX0pKX1sb2FkRGF0YSh0KXtyZXR1cm4gZS5fKHRoaXMsdm9pZCAwLHZvaWQgMCwoZnVuY3Rpb24qKCl7dmFyIG87bnVsbD09PShvPXRoaXMuX3BlbmRpbmdSZXF1ZXN0KXx8dm9pZCAwPT09b3x8by5hYm9ydCgpO2NvbnN0IGk9ISEodCYmdC5yZXF1ZXN0JiZ0LnJlcXVlc3QuY29sbGVjdFJlc291cmNlVGltaW5nKSYmbmV3IGUuYnYodC5yZXF1ZXN0KTt0aGlzLl9wZW5kaW5nUmVxdWVzdD1uZXcgQWJvcnRDb250cm9sbGVyO3RyeXt0aGlzLl9wZW5kaW5nRGF0YT10aGlzLmxvYWRBbmRQcm9jZXNzR2VvSlNPTih0LHRoaXMuX3BlbmRpbmdSZXF1ZXN0KSx0aGlzLl9nZW9KU09OSW5kZXg9dC5jbHVzdGVyP25ldyB6KGZ1bmN0aW9uKHtzdXBlcmNsdXN0ZXJPcHRpb25zOnQsY2x1c3RlclByb3BlcnRpZXM6b30pe2lmKCFvfHwhdClyZXR1cm4gdDtjb25zdCBpPXt9LHM9e30scj17YWNjdW11bGF0ZWQ6bnVsbCx6b29tOjB9LG49e3Byb3BlcnRpZXM6bnVsbH0sYT1PYmplY3Qua2V5cyhvKTtmb3IoY29uc3QgdCBvZiBhKXtjb25zdFtyLG5dPW9bdF0sYT1lLmJDKG4pLGw9ZS5iQyhcInN0cmluZ1wiPT10eXBlb2Ygcj9bcixbXCJhY2N1bXVsYXRlZFwiXSxbXCJnZXRcIix0XV06cik7aVt0XT1hLnZhbHVlLHNbdF09bC52YWx1ZTt9cmV0dXJuIHQubWFwPWU9PntuLnByb3BlcnRpZXM9ZTtjb25zdCB0PXt9O2Zvcihjb25zdCBlIG9mIGEpdFtlXT1pW2VdLmV2YWx1YXRlKHIsbik7cmV0dXJuIHR9LHQucmVkdWNlPShlLHQpPT57bi5wcm9wZXJ0aWVzPXQ7Zm9yKGNvbnN0IHQgb2YgYSlyLmFjY3VtdWxhdGVkPWVbdF0sZVt0XT1zW3RdLmV2YWx1YXRlKHIsbik7fSx0fSh0KSkubG9hZCgoeWllbGQgdGhpcy5fcGVuZGluZ0RhdGEpLmZlYXR1cmVzKToocz15aWVsZCB0aGlzLl9wZW5kaW5nRGF0YSxuZXcgZGUocyx0Lmdlb2pzb25WdE9wdGlvbnMpKSx0aGlzLmxvYWRlZD17fTtjb25zdCBvPXt9O2lmKGkpe2NvbnN0IGU9aS5maW5pc2goKTtlJiYoby5yZXNvdXJjZVRpbWluZz17fSxvLnJlc291cmNlVGltaW5nW3Quc291cmNlXT1KU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KGUpKSk7fXJldHVybiBvfWNhdGNoKHQpe2lmKGRlbGV0ZSB0aGlzLl9wZW5kaW5nUmVxdWVzdCxlLmJCKHQpKXJldHVybiB7YWJhbmRvbmVkOiEwfTt0aHJvdyB0fXZhciBzO30pKX1nZXREYXRhKCl7cmV0dXJuIGUuXyh0aGlzLHZvaWQgMCx2b2lkIDAsKGZ1bmN0aW9uKigpe3JldHVybiB0aGlzLl9wZW5kaW5nRGF0YX0pKX1yZWxvYWRUaWxlKGUpe2NvbnN0IHQ9dGhpcy5sb2FkZWQ7cmV0dXJuIHQmJnRbZS51aWRdP3N1cGVyLnJlbG9hZFRpbGUoZSk6dGhpcy5sb2FkVGlsZShlKX1sb2FkQW5kUHJvY2Vzc0dlb0pTT04odCxvKXtyZXR1cm4gZS5fKHRoaXMsdm9pZCAwLHZvaWQgMCwoZnVuY3Rpb24qKCl7bGV0IGk9eWllbGQgdGhpcy5sb2FkR2VvSlNPTih0LG8pO2lmKGRlbGV0ZSB0aGlzLl9wZW5kaW5nUmVxdWVzdCxcIm9iamVjdFwiIT10eXBlb2YgaSl0aHJvdyBuZXcgRXJyb3IoYElucHV0IGRhdGEgZ2l2ZW4gdG8gJyR7dC5zb3VyY2V9JyBpcyBub3QgYSB2YWxpZCBHZW9KU09OIG9iamVjdC5gKTtpZihjKGksITApLHQuZmlsdGVyKXtjb25zdCBvPWUuYkModC5maWx0ZXIse3R5cGU6XCJib29sZWFuXCIsXCJwcm9wZXJ0eS10eXBlXCI6XCJkYXRhLWRyaXZlblwiLG92ZXJyaWRhYmxlOiExLHRyYW5zaXRpb246ITF9KTtpZihcImVycm9yXCI9PT1vLnJlc3VsdCl0aHJvdyBuZXcgRXJyb3Ioby52YWx1ZS5tYXAoKGU9PmAke2Uua2V5fTogJHtlLm1lc3NhZ2V9YCkpLmpvaW4oXCIsIFwiKSk7Y29uc3Qgcz1pLmZlYXR1cmVzLmZpbHRlcigoZT0+by52YWx1ZS5ldmFsdWF0ZSh7em9vbTowfSxlKSkpO2k9e3R5cGU6XCJGZWF0dXJlQ29sbGVjdGlvblwiLGZlYXR1cmVzOnN9O31yZXR1cm4gaX0pKX1sb2FkR2VvSlNPTih0LG8pe3JldHVybiBlLl8odGhpcyx2b2lkIDAsdm9pZCAwLChmdW5jdGlvbiooKXtjb25zdHtwcm9tb3RlSWQ6aX09dDtpZih0LnJlcXVlc3Qpe2NvbnN0IHM9eWllbGQgZS5oKHQucmVxdWVzdCxvKTtyZXR1cm4gdGhpcy5fZGF0YVVwZGF0ZWFibGU9cGUocy5kYXRhLGkpP21lKHMuZGF0YSxpKTp2b2lkIDAscy5kYXRhfWlmKFwic3RyaW5nXCI9PXR5cGVvZiB0LmRhdGEpdHJ5e2NvbnN0IGU9SlNPTi5wYXJzZSh0LmRhdGEpO3JldHVybiB0aGlzLl9kYXRhVXBkYXRlYWJsZT1wZShlLGkpP21lKGUsaSk6dm9pZCAwLGV9Y2F0Y2goZSl7dGhyb3cgbmV3IEVycm9yKGBJbnB1dCBkYXRhIGdpdmVuIHRvICcke3Quc291cmNlfScgaXMgbm90IGEgdmFsaWQgR2VvSlNPTiBvYmplY3QuYCl9aWYoIXQuZGF0YURpZmYpdGhyb3cgbmV3IEVycm9yKGBJbnB1dCBkYXRhIGdpdmVuIHRvICcke3Quc291cmNlfScgaXMgbm90IGEgdmFsaWQgR2VvSlNPTiBvYmplY3QuYCk7aWYoIXRoaXMuX2RhdGFVcGRhdGVhYmxlKXRocm93IG5ldyBFcnJvcihgQ2Fubm90IHVwZGF0ZSBleGlzdGluZyBnZW9qc29uIGRhdGEgaW4gJHt0LnNvdXJjZX1gKTtyZXR1cm4gZnVuY3Rpb24oZSx0LG8pe3ZhciBpLHMscixuO2lmKHQucmVtb3ZlQWxsJiZlLmNsZWFyKCksdC5yZW1vdmUpZm9yKGNvbnN0IG8gb2YgdC5yZW1vdmUpZS5kZWxldGUobyk7aWYodC5hZGQpZm9yKGNvbnN0IGkgb2YgdC5hZGQpe2NvbnN0IHQ9Z2UoaSxvKTtudWxsIT10JiZlLnNldCh0LGkpO31pZih0LnVwZGF0ZSlmb3IoY29uc3QgbyBvZiB0LnVwZGF0ZSl7bGV0IHQ9ZS5nZXQoby5pZCk7aWYobnVsbD09dCljb250aW51ZTtjb25zdCBhPSFvLnJlbW92ZUFsbFByb3BlcnRpZXMmJigobnVsbD09PShpPW8ucmVtb3ZlUHJvcGVydGllcyl8fHZvaWQgMD09PWk/dm9pZCAwOmkubGVuZ3RoKT4wfHwobnVsbD09PShzPW8uYWRkT3JVcGRhdGVQcm9wZXJ0aWVzKXx8dm9pZCAwPT09cz92b2lkIDA6cy5sZW5ndGgpPjApO2lmKChvLm5ld0dlb21ldHJ5fHxvLnJlbW92ZUFsbFByb3BlcnRpZXN8fGEpJiYodD1PYmplY3QuYXNzaWduKHt9LHQpLGUuc2V0KG8uaWQsdCksYSYmKHQucHJvcGVydGllcz1PYmplY3QuYXNzaWduKHt9LHQucHJvcGVydGllcykpKSxvLm5ld0dlb21ldHJ5JiYodC5nZW9tZXRyeT1vLm5ld0dlb21ldHJ5KSxvLnJlbW92ZUFsbFByb3BlcnRpZXMpdC5wcm9wZXJ0aWVzPXt9O2Vsc2UgaWYoKG51bGw9PT0ocj1vLnJlbW92ZVByb3BlcnRpZXMpfHx2b2lkIDA9PT1yP3ZvaWQgMDpyLmxlbmd0aCk+MClmb3IoY29uc3QgZSBvZiBvLnJlbW92ZVByb3BlcnRpZXMpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQucHJvcGVydGllcyxlKSYmZGVsZXRlIHQucHJvcGVydGllc1tlXTtpZigobnVsbD09PShuPW8uYWRkT3JVcGRhdGVQcm9wZXJ0aWVzKXx8dm9pZCAwPT09bj92b2lkIDA6bi5sZW5ndGgpPjApZm9yKGNvbnN0e2tleTplLHZhbHVlOml9b2Ygby5hZGRPclVwZGF0ZVByb3BlcnRpZXMpdC5wcm9wZXJ0aWVzW2VdPWk7fX0odGhpcy5fZGF0YVVwZGF0ZWFibGUsdC5kYXRhRGlmZixpKSx7dHlwZTpcIkZlYXR1cmVDb2xsZWN0aW9uXCIsZmVhdHVyZXM6QXJyYXkuZnJvbSh0aGlzLl9kYXRhVXBkYXRlYWJsZS52YWx1ZXMoKSl9fSkpfXJlbW92ZVNvdXJjZSh0KXtyZXR1cm4gZS5fKHRoaXMsdm9pZCAwLHZvaWQgMCwoZnVuY3Rpb24qKCl7dGhpcy5fcGVuZGluZ1JlcXVlc3QmJnRoaXMuX3BlbmRpbmdSZXF1ZXN0LmFib3J0KCk7fSkpfWdldENsdXN0ZXJFeHBhbnNpb25ab29tKGUpe3JldHVybiB0aGlzLl9nZW9KU09OSW5kZXguZ2V0Q2x1c3RlckV4cGFuc2lvblpvb20oZS5jbHVzdGVySWQpfWdldENsdXN0ZXJDaGlsZHJlbihlKXtyZXR1cm4gdGhpcy5fZ2VvSlNPTkluZGV4LmdldENoaWxkcmVuKGUuY2x1c3RlcklkKX1nZXRDbHVzdGVyTGVhdmVzKGUpe3JldHVybiB0aGlzLl9nZW9KU09OSW5kZXguZ2V0TGVhdmVzKGUuY2x1c3RlcklkLGUubGltaXQsZS5vZmZzZXQpfX1jbGFzcyB2ZXtjb25zdHJ1Y3Rvcih0KXt0aGlzLnNlbGY9dCx0aGlzLmFjdG9yPW5ldyBlLkYodCksdGhpcy5sYXllckluZGV4ZXM9e30sdGhpcy5hdmFpbGFibGVJbWFnZXM9e30sdGhpcy53b3JrZXJTb3VyY2VzPXt9LHRoaXMuZGVtV29ya2VyU291cmNlcz17fSx0aGlzLmV4dGVybmFsV29ya2VyU291cmNlVHlwZXM9e30sdGhpcy5zZWxmLnJlZ2lzdGVyV29ya2VyU291cmNlPShlLHQpPT57aWYodGhpcy5leHRlcm5hbFdvcmtlclNvdXJjZVR5cGVzW2VdKXRocm93IG5ldyBFcnJvcihgV29ya2VyIHNvdXJjZSB3aXRoIG5hbWUgXCIke2V9XCIgYWxyZWFkeSByZWdpc3RlcmVkLmApO3RoaXMuZXh0ZXJuYWxXb3JrZXJTb3VyY2VUeXBlc1tlXT10O30sdGhpcy5zZWxmLmFkZFByb3RvY29sPWUuYmksdGhpcy5zZWxmLnJlbW92ZVByb3RvY29sPWUuYmosdGhpcy5zZWxmLnJlZ2lzdGVyUlRMVGV4dFBsdWdpbj10PT57aWYoZS5iRC5pc1BhcnNlZCgpKXRocm93IG5ldyBFcnJvcihcIlJUTCB0ZXh0IHBsdWdpbiBhbHJlYWR5IHJlZ2lzdGVyZWQuXCIpO2UuYkQuc2V0TWV0aG9kcyh0KTt9LHRoaXMuYWN0b3IucmVnaXN0ZXJNZXNzYWdlSGFuZGxlcihcIkxEVFwiLCgoZSx0KT0+dGhpcy5fZ2V0REVNV29ya2VyU291cmNlKGUsdC5zb3VyY2UpLmxvYWRUaWxlKHQpKSksdGhpcy5hY3Rvci5yZWdpc3Rlck1lc3NhZ2VIYW5kbGVyKFwiUkRUXCIsKCh0LG8pPT5lLl8odGhpcyx2b2lkIDAsdm9pZCAwLChmdW5jdGlvbiooKXt0aGlzLl9nZXRERU1Xb3JrZXJTb3VyY2UodCxvLnNvdXJjZSkucmVtb3ZlVGlsZShvKTt9KSkpKSx0aGlzLmFjdG9yLnJlZ2lzdGVyTWVzc2FnZUhhbmRsZXIoXCJHQ0VaXCIsKCh0LG8pPT5lLl8odGhpcyx2b2lkIDAsdm9pZCAwLChmdW5jdGlvbiooKXtyZXR1cm4gdGhpcy5fZ2V0V29ya2VyU291cmNlKHQsby50eXBlLG8uc291cmNlKS5nZXRDbHVzdGVyRXhwYW5zaW9uWm9vbShvKX0pKSkpLHRoaXMuYWN0b3IucmVnaXN0ZXJNZXNzYWdlSGFuZGxlcihcIkdDQ1wiLCgodCxvKT0+ZS5fKHRoaXMsdm9pZCAwLHZvaWQgMCwoZnVuY3Rpb24qKCl7cmV0dXJuIHRoaXMuX2dldFdvcmtlclNvdXJjZSh0LG8udHlwZSxvLnNvdXJjZSkuZ2V0Q2x1c3RlckNoaWxkcmVuKG8pfSkpKSksdGhpcy5hY3Rvci5yZWdpc3Rlck1lc3NhZ2VIYW5kbGVyKFwiR0NMXCIsKCh0LG8pPT5lLl8odGhpcyx2b2lkIDAsdm9pZCAwLChmdW5jdGlvbiooKXtyZXR1cm4gdGhpcy5fZ2V0V29ya2VyU291cmNlKHQsby50eXBlLG8uc291cmNlKS5nZXRDbHVzdGVyTGVhdmVzKG8pfSkpKSksdGhpcy5hY3Rvci5yZWdpc3Rlck1lc3NhZ2VIYW5kbGVyKFwiTERcIiwoKGUsdCk9PnRoaXMuX2dldFdvcmtlclNvdXJjZShlLHQudHlwZSx0LnNvdXJjZSkubG9hZERhdGEodCkpKSx0aGlzLmFjdG9yLnJlZ2lzdGVyTWVzc2FnZUhhbmRsZXIoXCJHRFwiLCgoZSx0KT0+dGhpcy5fZ2V0V29ya2VyU291cmNlKGUsdC50eXBlLHQuc291cmNlKS5nZXREYXRhKCkpKSx0aGlzLmFjdG9yLnJlZ2lzdGVyTWVzc2FnZUhhbmRsZXIoXCJMVFwiLCgoZSx0KT0+dGhpcy5fZ2V0V29ya2VyU291cmNlKGUsdC50eXBlLHQuc291cmNlKS5sb2FkVGlsZSh0KSkpLHRoaXMuYWN0b3IucmVnaXN0ZXJNZXNzYWdlSGFuZGxlcihcIlJUXCIsKChlLHQpPT50aGlzLl9nZXRXb3JrZXJTb3VyY2UoZSx0LnR5cGUsdC5zb3VyY2UpLnJlbG9hZFRpbGUodCkpKSx0aGlzLmFjdG9yLnJlZ2lzdGVyTWVzc2FnZUhhbmRsZXIoXCJBVFwiLCgoZSx0KT0+dGhpcy5fZ2V0V29ya2VyU291cmNlKGUsdC50eXBlLHQuc291cmNlKS5hYm9ydFRpbGUodCkpKSx0aGlzLmFjdG9yLnJlZ2lzdGVyTWVzc2FnZUhhbmRsZXIoXCJSTVRcIiwoKGUsdCk9PnRoaXMuX2dldFdvcmtlclNvdXJjZShlLHQudHlwZSx0LnNvdXJjZSkucmVtb3ZlVGlsZSh0KSkpLHRoaXMuYWN0b3IucmVnaXN0ZXJNZXNzYWdlSGFuZGxlcihcIlJTXCIsKCh0LG8pPT5lLl8odGhpcyx2b2lkIDAsdm9pZCAwLChmdW5jdGlvbiooKXtpZighdGhpcy53b3JrZXJTb3VyY2VzW3RdfHwhdGhpcy53b3JrZXJTb3VyY2VzW3RdW28udHlwZV18fCF0aGlzLndvcmtlclNvdXJjZXNbdF1bby50eXBlXVtvLnNvdXJjZV0pcmV0dXJuO2NvbnN0IGU9dGhpcy53b3JrZXJTb3VyY2VzW3RdW28udHlwZV1bby5zb3VyY2VdO2RlbGV0ZSB0aGlzLndvcmtlclNvdXJjZXNbdF1bby50eXBlXVtvLnNvdXJjZV0sdm9pZCAwIT09ZS5yZW1vdmVTb3VyY2UmJmUucmVtb3ZlU291cmNlKG8pO30pKSkpLHRoaXMuYWN0b3IucmVnaXN0ZXJNZXNzYWdlSGFuZGxlcihcIlJNXCIsKHQ9PmUuXyh0aGlzLHZvaWQgMCx2b2lkIDAsKGZ1bmN0aW9uKigpe2RlbGV0ZSB0aGlzLmxheWVySW5kZXhlc1t0XSxkZWxldGUgdGhpcy5hdmFpbGFibGVJbWFnZXNbdF0sZGVsZXRlIHRoaXMud29ya2VyU291cmNlc1t0XSxkZWxldGUgdGhpcy5kZW1Xb3JrZXJTb3VyY2VzW3RdO30pKSkpLHRoaXMuYWN0b3IucmVnaXN0ZXJNZXNzYWdlSGFuZGxlcihcIlNSXCIsKCh0LG8pPT5lLl8odGhpcyx2b2lkIDAsdm9pZCAwLChmdW5jdGlvbiooKXt0aGlzLnJlZmVycmVyPW87fSkpKSksdGhpcy5hY3Rvci5yZWdpc3Rlck1lc3NhZ2VIYW5kbGVyKFwiU1JQU1wiLCgoZSx0KT0+dGhpcy5fc3luY1JUTFBsdWdpblN0YXRlKGUsdCkpKSx0aGlzLmFjdG9yLnJlZ2lzdGVyTWVzc2FnZUhhbmRsZXIoXCJJU1wiLCgodCxvKT0+ZS5fKHRoaXMsdm9pZCAwLHZvaWQgMCwoZnVuY3Rpb24qKCl7dGhpcy5zZWxmLmltcG9ydFNjcmlwdHMobyk7fSkpKSksdGhpcy5hY3Rvci5yZWdpc3Rlck1lc3NhZ2VIYW5kbGVyKFwiU0lcIiwoKGUsdCk9PnRoaXMuX3NldEltYWdlcyhlLHQpKSksdGhpcy5hY3Rvci5yZWdpc3Rlck1lc3NhZ2VIYW5kbGVyKFwiVUxcIiwoKHQsbyk9PmUuXyh0aGlzLHZvaWQgMCx2b2lkIDAsKGZ1bmN0aW9uKigpe3RoaXMuX2dldExheWVySW5kZXgodCkudXBkYXRlKG8ubGF5ZXJzLG8ucmVtb3ZlZElkcyk7fSkpKSksdGhpcy5hY3Rvci5yZWdpc3Rlck1lc3NhZ2VIYW5kbGVyKFwiU0xcIiwoKHQsbyk9PmUuXyh0aGlzLHZvaWQgMCx2b2lkIDAsKGZ1bmN0aW9uKigpe3RoaXMuX2dldExheWVySW5kZXgodCkucmVwbGFjZShvKTt9KSkpKTt9X3NldEltYWdlcyh0LG8pe3JldHVybiBlLl8odGhpcyx2b2lkIDAsdm9pZCAwLChmdW5jdGlvbiooKXt0aGlzLmF2YWlsYWJsZUltYWdlc1t0XT1vO2Zvcihjb25zdCBlIGluIHRoaXMud29ya2VyU291cmNlc1t0XSl7Y29uc3QgaT10aGlzLndvcmtlclNvdXJjZXNbdF1bZV07Zm9yKGNvbnN0IGUgaW4gaSlpW2VdLmF2YWlsYWJsZUltYWdlcz1vO319KSl9X3N5bmNSVExQbHVnaW5TdGF0ZSh0LG8pe3JldHVybiBlLl8odGhpcyx2b2lkIDAsdm9pZCAwLChmdW5jdGlvbiooKXtpZihlLmJELmlzUGFyc2VkKCkpcmV0dXJuIGUuYkQuZ2V0U3RhdGUoKTtpZihcImxvYWRpbmdcIiE9PW8ucGx1Z2luU3RhdHVzKXJldHVybiBlLmJELnNldFN0YXRlKG8pLG87Y29uc3QgdD1vLnBsdWdpblVSTDtpZih0aGlzLnNlbGYuaW1wb3J0U2NyaXB0cyh0KSxlLmJELmlzUGFyc2VkKCkpe2NvbnN0IG89e3BsdWdpblN0YXR1czpcImxvYWRlZFwiLHBsdWdpblVSTDp0fTtyZXR1cm4gZS5iRC5zZXRTdGF0ZShvKSxvfXRocm93IGUuYkQuc2V0U3RhdGUoe3BsdWdpblN0YXR1czpcImVycm9yXCIscGx1Z2luVVJMOlwiXCJ9KSxuZXcgRXJyb3IoYFJUTCBUZXh0IFBsdWdpbiBmYWlsZWQgdG8gaW1wb3J0IHNjcmlwdHMgZnJvbSAke3R9YCl9KSl9X2dldEF2YWlsYWJsZUltYWdlcyhlKXtsZXQgdD10aGlzLmF2YWlsYWJsZUltYWdlc1tlXTtyZXR1cm4gdHx8KHQ9W10pLHR9X2dldExheWVySW5kZXgoZSl7bGV0IG89dGhpcy5sYXllckluZGV4ZXNbZV07cmV0dXJuIG98fChvPXRoaXMubGF5ZXJJbmRleGVzW2VdPW5ldyB0KSxvfV9nZXRXb3JrZXJTb3VyY2UoZSx0LG8pe2lmKHRoaXMud29ya2VyU291cmNlc1tlXXx8KHRoaXMud29ya2VyU291cmNlc1tlXT17fSksdGhpcy53b3JrZXJTb3VyY2VzW2VdW3RdfHwodGhpcy53b3JrZXJTb3VyY2VzW2VdW3RdPXt9KSwhdGhpcy53b3JrZXJTb3VyY2VzW2VdW3RdW29dKXtjb25zdCBpPXtzZW5kQXN5bmM6KHQsbyk9Pih0LnRhcmdldE1hcElkPWUsdGhpcy5hY3Rvci5zZW5kQXN5bmModCxvKSl9O3N3aXRjaCh0KXtjYXNlXCJ2ZWN0b3JcIjp0aGlzLndvcmtlclNvdXJjZXNbZV1bdF1bb109bmV3IHIoaSx0aGlzLl9nZXRMYXllckluZGV4KGUpLHRoaXMuX2dldEF2YWlsYWJsZUltYWdlcyhlKSk7YnJlYWs7Y2FzZVwiZ2VvanNvblwiOnRoaXMud29ya2VyU291cmNlc1tlXVt0XVtvXT1uZXcgeWUoaSx0aGlzLl9nZXRMYXllckluZGV4KGUpLHRoaXMuX2dldEF2YWlsYWJsZUltYWdlcyhlKSk7YnJlYWs7ZGVmYXVsdDp0aGlzLndvcmtlclNvdXJjZXNbZV1bdF1bb109bmV3IHRoaXMuZXh0ZXJuYWxXb3JrZXJTb3VyY2VUeXBlc1t0XShpLHRoaXMuX2dldExheWVySW5kZXgoZSksdGhpcy5fZ2V0QXZhaWxhYmxlSW1hZ2VzKGUpKTt9fXJldHVybiB0aGlzLndvcmtlclNvdXJjZXNbZV1bdF1bb119X2dldERFTVdvcmtlclNvdXJjZShlLHQpe3JldHVybiB0aGlzLmRlbVdvcmtlclNvdXJjZXNbZV18fCh0aGlzLmRlbVdvcmtlclNvdXJjZXNbZV09e30pLHRoaXMuZGVtV29ya2VyU291cmNlc1tlXVt0XXx8KHRoaXMuZGVtV29ya2VyU291cmNlc1tlXVt0XT1uZXcgbiksdGhpcy5kZW1Xb3JrZXJTb3VyY2VzW2VdW3RdfX1yZXR1cm4gZS5pKHNlbGYpJiYoc2VsZi53b3JrZXI9bmV3IHZlKHNlbGYpKSx2ZX0pKTtcblxuZGVmaW5lKFwiaW5kZXhcIixbXCJleHBvcnRzXCIsXCIuL3NoYXJlZFwiXSwoZnVuY3Rpb24odCxlKXtcInVzZSBzdHJpY3RcIjt2YXIgaT1cIjQuNy4xXCI7bGV0IGEscztjb25zdCBvPXtub3c6XCJ1bmRlZmluZWRcIiE9dHlwZW9mIHBlcmZvcm1hbmNlJiZwZXJmb3JtYW5jZSYmcGVyZm9ybWFuY2Uubm93P3BlcmZvcm1hbmNlLm5vdy5iaW5kKHBlcmZvcm1hbmNlKTpEYXRlLm5vdy5iaW5kKERhdGUpLGZyYW1lQXN5bmM6dD0+bmV3IFByb21pc2UoKChpLGEpPT57Y29uc3Qgcz1yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoaSk7dC5zaWduYWwuYWRkRXZlbnRMaXN0ZW5lcihcImFib3J0XCIsKCgpPT57Y2FuY2VsQW5pbWF0aW9uRnJhbWUocyksYShlLmMoKSk7fSkpO30pKSxnZXRJbWFnZURhdGEodCxlPTApe3JldHVybiB0aGlzLmdldEltYWdlQ2FudmFzQ29udGV4dCh0KS5nZXRJbWFnZURhdGEoLWUsLWUsdC53aWR0aCsyKmUsdC5oZWlnaHQrMiplKX0sZ2V0SW1hZ2VDYW52YXNDb250ZXh0KHQpe2NvbnN0IGU9d2luZG93LmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJjYW52YXNcIiksaT1lLmdldENvbnRleHQoXCIyZFwiLHt3aWxsUmVhZEZyZXF1ZW50bHk6ITB9KTtpZighaSl0aHJvdyBuZXcgRXJyb3IoXCJmYWlsZWQgdG8gY3JlYXRlIGNhbnZhcyAyZCBjb250ZXh0XCIpO3JldHVybiBlLndpZHRoPXQud2lkdGgsZS5oZWlnaHQ9dC5oZWlnaHQsaS5kcmF3SW1hZ2UodCwwLDAsdC53aWR0aCx0LmhlaWdodCksaX0scmVzb2x2ZVVSTDp0PT4oYXx8KGE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcImFcIikpLGEuaHJlZj10LGEuaHJlZiksaGFyZHdhcmVDb25jdXJyZW5jeTpcInVuZGVmaW5lZFwiIT10eXBlb2YgbmF2aWdhdG9yJiZuYXZpZ2F0b3IuaGFyZHdhcmVDb25jdXJyZW5jeXx8NCxnZXQgcHJlZmVyc1JlZHVjZWRNb3Rpb24oKXtyZXR1cm4gISFtYXRjaE1lZGlhJiYobnVsbD09cyYmKHM9bWF0Y2hNZWRpYShcIihwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpXCIpKSxzLm1hdGNoZXMpfX07Y2xhc3MgcntzdGF0aWMgdGVzdFByb3AodCl7aWYoIXIuZG9jU3R5bGUpcmV0dXJuIHRbMF07Zm9yKGxldCBlPTA7ZTx0Lmxlbmd0aDtlKyspaWYodFtlXWluIHIuZG9jU3R5bGUpcmV0dXJuIHRbZV07cmV0dXJuIHRbMF19c3RhdGljIGNyZWF0ZSh0LGUsaSl7Y29uc3QgYT13aW5kb3cuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0KTtyZXR1cm4gdm9pZCAwIT09ZSYmKGEuY2xhc3NOYW1lPWUpLGkmJmkuYXBwZW5kQ2hpbGQoYSksYX1zdGF0aWMgY3JlYXRlTlModCxlKXtyZXR1cm4gd2luZG93LmRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUyh0LGUpfXN0YXRpYyBkaXNhYmxlRHJhZygpe3IuZG9jU3R5bGUmJnIuc2VsZWN0UHJvcCYmKHIudXNlclNlbGVjdD1yLmRvY1N0eWxlW3Iuc2VsZWN0UHJvcF0sci5kb2NTdHlsZVtyLnNlbGVjdFByb3BdPVwibm9uZVwiKTt9c3RhdGljIGVuYWJsZURyYWcoKXtyLmRvY1N0eWxlJiZyLnNlbGVjdFByb3AmJihyLmRvY1N0eWxlW3Iuc2VsZWN0UHJvcF09ci51c2VyU2VsZWN0KTt9c3RhdGljIHNldFRyYW5zZm9ybSh0LGUpe3Quc3R5bGVbci50cmFuc2Zvcm1Qcm9wXT1lO31zdGF0aWMgYWRkRXZlbnRMaXN0ZW5lcih0LGUsaSxhPXt9KXt0LmFkZEV2ZW50TGlzdGVuZXIoZSxpLFwicGFzc2l2ZVwiaW4gYT9hOmEuY2FwdHVyZSk7fXN0YXRpYyByZW1vdmVFdmVudExpc3RlbmVyKHQsZSxpLGE9e30pe3QucmVtb3ZlRXZlbnRMaXN0ZW5lcihlLGksXCJwYXNzaXZlXCJpbiBhP2E6YS5jYXB0dXJlKTt9c3RhdGljIHN1cHByZXNzQ2xpY2tJbnRlcm5hbCh0KXt0LnByZXZlbnREZWZhdWx0KCksdC5zdG9wUHJvcGFnYXRpb24oKSx3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsci5zdXBwcmVzc0NsaWNrSW50ZXJuYWwsITApO31zdGF0aWMgc3VwcHJlc3NDbGljaygpe3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKFwiY2xpY2tcIixyLnN1cHByZXNzQ2xpY2tJbnRlcm5hbCwhMCksd2luZG93LnNldFRpbWVvdXQoKCgpPT57d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJjbGlja1wiLHIuc3VwcHJlc3NDbGlja0ludGVybmFsLCEwKTt9KSwwKTt9c3RhdGljIGdldFNjYWxlKHQpe2NvbnN0IGU9dC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtyZXR1cm4ge3g6ZS53aWR0aC90Lm9mZnNldFdpZHRofHwxLHk6ZS5oZWlnaHQvdC5vZmZzZXRIZWlnaHR8fDEsYm91bmRpbmdDbGllbnRSZWN0OmV9fXN0YXRpYyBnZXRQb2ludCh0LGksYSl7Y29uc3Qgcz1pLmJvdW5kaW5nQ2xpZW50UmVjdDtyZXR1cm4gbmV3IGUuUCgoYS5jbGllbnRYLXMubGVmdCkvaS54LXQuY2xpZW50TGVmdCwoYS5jbGllbnRZLXMudG9wKS9pLnktdC5jbGllbnRUb3ApfXN0YXRpYyBtb3VzZVBvcyh0LGUpe2NvbnN0IGk9ci5nZXRTY2FsZSh0KTtyZXR1cm4gci5nZXRQb2ludCh0LGksZSl9c3RhdGljIHRvdWNoUG9zKHQsZSl7Y29uc3QgaT1bXSxhPXIuZ2V0U2NhbGUodCk7Zm9yKGxldCBzPTA7czxlLmxlbmd0aDtzKyspaS5wdXNoKHIuZ2V0UG9pbnQodCxhLGVbc10pKTtyZXR1cm4gaX1zdGF0aWMgbW91c2VCdXR0b24odCl7cmV0dXJuIHQuYnV0dG9ufXN0YXRpYyByZW1vdmUodCl7dC5wYXJlbnROb2RlJiZ0LnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodCk7fX1yLmRvY1N0eWxlPVwidW5kZWZpbmVkXCIhPXR5cGVvZiB3aW5kb3cmJndpbmRvdy5kb2N1bWVudCYmd2luZG93LmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZSxyLnNlbGVjdFByb3A9ci50ZXN0UHJvcChbXCJ1c2VyU2VsZWN0XCIsXCJNb3pVc2VyU2VsZWN0XCIsXCJXZWJraXRVc2VyU2VsZWN0XCIsXCJtc1VzZXJTZWxlY3RcIl0pLHIudHJhbnNmb3JtUHJvcD1yLnRlc3RQcm9wKFtcInRyYW5zZm9ybVwiLFwiV2Via2l0VHJhbnNmb3JtXCJdKTtjb25zdCBuPXtzdXBwb3J0ZWQ6ITEsdGVzdFN1cHBvcnQ6ZnVuY3Rpb24odCl7IWMmJmgmJih1P2QodCk6bD10KTt9fTtsZXQgbCxoLGM9ITEsdT0hMTtmdW5jdGlvbiBkKHQpe2NvbnN0IGU9dC5jcmVhdGVUZXh0dXJlKCk7dC5iaW5kVGV4dHVyZSh0LlRFWFRVUkVfMkQsZSk7dHJ5e2lmKHQudGV4SW1hZ2UyRCh0LlRFWFRVUkVfMkQsMCx0LlJHQkEsdC5SR0JBLHQuVU5TSUdORURfQllURSxoKSx0LmlzQ29udGV4dExvc3QoKSlyZXR1cm47bi5zdXBwb3J0ZWQ9ITA7fWNhdGNoKHQpe310LmRlbGV0ZVRleHR1cmUoZSksYz0hMDt9dmFyIF87XCJ1bmRlZmluZWRcIiE9dHlwZW9mIGRvY3VtZW50JiYoaD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiaW1nXCIpLGgub25sb2FkPSgpPT57bCYmZChsKSxsPW51bGwsdT0hMDt9LGgub25lcnJvcj0oKT0+e2M9ITAsbD1udWxsO30saC5zcmM9XCJkYXRhOmltYWdlL3dlYnA7YmFzZTY0LFVrbEdSaDRBQUFCWFJVSlFWbEE0VEJFQUFBQXZBUUFBQUFmUS8vNzN2LytCaU9oL0FBQT1cIiksZnVuY3Rpb24odCl7bGV0IGksYSxzLG87dC5yZXNldFJlcXVlc3RRdWV1ZT0oKT0+e2k9W10sYT0wLHM9MCxvPXt9O30sdC5hZGRUaHJvdHRsZUNvbnRyb2w9dD0+e2NvbnN0IGU9cysrO3JldHVybiBvW2VdPXQsZX0sdC5yZW1vdmVUaHJvdHRsZUNvbnRyb2w9dD0+e2RlbGV0ZSBvW3RdLGwoKTt9LHQuZ2V0SW1hZ2U9KHQsYSxzPSEwKT0+bmV3IFByb21pc2UoKChvLHIpPT57bi5zdXBwb3J0ZWQmJih0LmhlYWRlcnN8fCh0LmhlYWRlcnM9e30pLHQuaGVhZGVycy5hY2NlcHQ9XCJpbWFnZS93ZWJwLCovKlwiKSxlLmUodCx7dHlwZTpcImltYWdlXCJ9KSxpLnB1c2goe2Fib3J0Q29udHJvbGxlcjphLHJlcXVlc3RQYXJhbWV0ZXJzOnQsc3VwcG9ydEltYWdlUmVmcmVzaDpzLHN0YXRlOlwicXVldWVkXCIsb25FcnJvcjp0PT57cih0KTt9LG9uU3VjY2Vzczp0PT57byh0KTt9fSksbCgpO30pKTtjb25zdCByPXQ9PmUuXyh0aGlzLHZvaWQgMCx2b2lkIDAsKGZ1bmN0aW9uKigpe3Quc3RhdGU9XCJydW5uaW5nXCI7Y29uc3R7cmVxdWVzdFBhcmFtZXRlcnM6aSxzdXBwb3J0SW1hZ2VSZWZyZXNoOnMsb25FcnJvcjpvLG9uU3VjY2VzczpyLGFib3J0Q29udHJvbGxlcjpufT10LGM9ITE9PT1zJiYhZS5pKHNlbGYpJiYhZS5nKGkudXJsKSYmKCFpLmhlYWRlcnN8fE9iamVjdC5rZXlzKGkuaGVhZGVycykucmVkdWNlKCgodCxlKT0+dCYmXCJhY2NlcHRcIj09PWUpLCEwKSk7YSsrO2NvbnN0IHU9Yz9oKGksbik6ZS5tKGksbik7dHJ5e2NvbnN0IGk9eWllbGQgdTtkZWxldGUgdC5hYm9ydENvbnRyb2xsZXIsdC5zdGF0ZT1cImNvbXBsZXRlZFwiLGkuZGF0YSBpbnN0YW5jZW9mIEhUTUxJbWFnZUVsZW1lbnR8fGUuYihpLmRhdGEpP3IoaSk6aS5kYXRhJiZyKHtkYXRhOnlpZWxkKGQ9aS5kYXRhLFwiZnVuY3Rpb25cIj09dHlwZW9mIGNyZWF0ZUltYWdlQml0bWFwP2UuZChkKTplLmYoZCkpLGNhY2hlQ29udHJvbDppLmNhY2hlQ29udHJvbCxleHBpcmVzOmkuZXhwaXJlc30pO31jYXRjaChlKXtkZWxldGUgdC5hYm9ydENvbnRyb2xsZXIsbyhlKTt9ZmluYWxseXthLS0sbCgpO312YXIgZDt9KSksbD0oKT0+e2NvbnN0IHQ9KCgpPT57Zm9yKGNvbnN0IHQgb2YgT2JqZWN0LmtleXMobykpaWYob1t0XSgpKXJldHVybiAhMDtyZXR1cm4gITF9KSgpP2UuYS5NQVhfUEFSQUxMRUxfSU1BR0VfUkVRVUVTVFNfUEVSX0ZSQU1FOmUuYS5NQVhfUEFSQUxMRUxfSU1BR0VfUkVRVUVTVFM7Zm9yKGxldCBlPWE7ZTx0JiZpLmxlbmd0aD4wO2UrKyl7Y29uc3QgdD1pLnNoaWZ0KCk7dC5hYm9ydENvbnRyb2xsZXIuc2lnbmFsLmFib3J0ZWQ/ZS0tOnIodCk7fX0saD0odCxpKT0+bmV3IFByb21pc2UoKChhLHMpPT57Y29uc3Qgbz1uZXcgSW1hZ2Uscj10LnVybCxuPXQuY3JlZGVudGlhbHM7biYmXCJpbmNsdWRlXCI9PT1uP28uY3Jvc3NPcmlnaW49XCJ1c2UtY3JlZGVudGlhbHNcIjoobiYmXCJzYW1lLW9yaWdpblwiPT09bnx8IWUucyhyKSkmJihvLmNyb3NzT3JpZ2luPVwiYW5vbnltb3VzXCIpLGkuc2lnbmFsLmFkZEV2ZW50TGlzdGVuZXIoXCJhYm9ydFwiLCgoKT0+e28uc3JjPVwiXCIscyhlLmMoKSk7fSkpLG8uZmV0Y2hQcmlvcml0eT1cImhpZ2hcIixvLm9ubG9hZD0oKT0+e28ub25lcnJvcj1vLm9ubG9hZD1udWxsLGEoe2RhdGE6b30pO30sby5vbmVycm9yPSgpPT57by5vbmVycm9yPW8ub25sb2FkPW51bGwsaS5zaWduYWwuYWJvcnRlZHx8cyhuZXcgRXJyb3IoXCJDb3VsZCBub3QgbG9hZCBpbWFnZS4gUGxlYXNlIG1ha2Ugc3VyZSB0byB1c2UgYSBzdXBwb3J0ZWQgaW1hZ2UgdHlwZSBzdWNoIGFzIFBORyBvciBKUEVHLiBOb3RlIHRoYXQgU1ZHcyBhcmUgbm90IHN1cHBvcnRlZC5cIikpO30sby5zcmM9cjt9KSk7fShffHwoXz17fSkpLF8ucmVzZXRSZXF1ZXN0UXVldWUoKTtjbGFzcyBwe2NvbnN0cnVjdG9yKHQpe3RoaXMuX3RyYW5zZm9ybVJlcXVlc3RGbj10O310cmFuc2Zvcm1SZXF1ZXN0KHQsZSl7cmV0dXJuIHRoaXMuX3RyYW5zZm9ybVJlcXVlc3RGbiYmdGhpcy5fdHJhbnNmb3JtUmVxdWVzdEZuKHQsZSl8fHt1cmw6dH19c2V0VHJhbnNmb3JtUmVxdWVzdCh0KXt0aGlzLl90cmFuc2Zvcm1SZXF1ZXN0Rm49dDt9fWZ1bmN0aW9uIG0odCl7dmFyIGk9bmV3IGUuQSgzKTtyZXR1cm4gaVswXT10WzBdLGlbMV09dFsxXSxpWzJdPXRbMl0saX12YXIgZixnPWZ1bmN0aW9uKHQsZSxpKXtyZXR1cm4gdFswXT1lWzBdLWlbMF0sdFsxXT1lWzFdLWlbMV0sdFsyXT1lWzJdLWlbMl0sdH07Zj1uZXcgZS5BKDMpLGUuQSE9RmxvYXQzMkFycmF5JiYoZlswXT0wLGZbMV09MCxmWzJdPTApO3ZhciB2PWZ1bmN0aW9uKHQpe3ZhciBlPXRbMF0saT10WzFdO3JldHVybiBlKmUraSppfTtmdW5jdGlvbiB4KHQpe2NvbnN0IGU9W107aWYoXCJzdHJpbmdcIj09dHlwZW9mIHQpZS5wdXNoKHtpZDpcImRlZmF1bHRcIix1cmw6dH0pO2Vsc2UgaWYodCYmdC5sZW5ndGg+MCl7Y29uc3QgaT1bXTtmb3IoY29uc3R7aWQ6YSx1cmw6c31vZiB0KXtjb25zdCB0PWAke2F9JHtzfWA7LTE9PT1pLmluZGV4T2YodCkmJihpLnB1c2godCksZS5wdXNoKHtpZDphLHVybDpzfSkpO319cmV0dXJuIGV9ZnVuY3Rpb24geSh0LGUsaSl7Y29uc3QgYT10LnNwbGl0KFwiP1wiKTtyZXR1cm4gYVswXSs9YCR7ZX0ke2l9YCxhLmpvaW4oXCI/XCIpfSFmdW5jdGlvbigpe3ZhciB0PW5ldyBlLkEoMik7ZS5BIT1GbG9hdDMyQXJyYXkmJih0WzBdPTAsdFsxXT0wKTt9KCk7Y2xhc3MgYntjb25zdHJ1Y3Rvcih0LGUsaSxhKXt0aGlzLmNvbnRleHQ9dCx0aGlzLmZvcm1hdD1pLHRoaXMudGV4dHVyZT10LmdsLmNyZWF0ZVRleHR1cmUoKSx0aGlzLnVwZGF0ZShlLGEpO311cGRhdGUodCxpLGEpe2NvbnN0e3dpZHRoOnMsaGVpZ2h0Om99PXQscj0hKHRoaXMuc2l6ZSYmdGhpcy5zaXplWzBdPT09cyYmdGhpcy5zaXplWzFdPT09b3x8YSkse2NvbnRleHQ6bn09dGhpcyx7Z2w6bH09bjtpZih0aGlzLnVzZU1pcG1hcD1Cb29sZWFuKGkmJmkudXNlTWlwbWFwKSxsLmJpbmRUZXh0dXJlKGwuVEVYVFVSRV8yRCx0aGlzLnRleHR1cmUpLG4ucGl4ZWxTdG9yZVVucGFja0ZsaXBZLnNldCghMSksbi5waXhlbFN0b3JlVW5wYWNrLnNldCgxKSxuLnBpeGVsU3RvcmVVbnBhY2tQcmVtdWx0aXBseUFscGhhLnNldCh0aGlzLmZvcm1hdD09PWwuUkdCQSYmKCFpfHwhMSE9PWkucHJlbXVsdGlwbHkpKSxyKXRoaXMuc2l6ZT1bcyxvXSx0IGluc3RhbmNlb2YgSFRNTEltYWdlRWxlbWVudHx8dCBpbnN0YW5jZW9mIEhUTUxDYW52YXNFbGVtZW50fHx0IGluc3RhbmNlb2YgSFRNTFZpZGVvRWxlbWVudHx8dCBpbnN0YW5jZW9mIEltYWdlRGF0YXx8ZS5iKHQpP2wudGV4SW1hZ2UyRChsLlRFWFRVUkVfMkQsMCx0aGlzLmZvcm1hdCx0aGlzLmZvcm1hdCxsLlVOU0lHTkVEX0JZVEUsdCk6bC50ZXhJbWFnZTJEKGwuVEVYVFVSRV8yRCwwLHRoaXMuZm9ybWF0LHMsbywwLHRoaXMuZm9ybWF0LGwuVU5TSUdORURfQllURSx0LmRhdGEpO2Vsc2Uge2NvbnN0e3g6aSx5OnJ9PWF8fHt4OjAseTowfTt0IGluc3RhbmNlb2YgSFRNTEltYWdlRWxlbWVudHx8dCBpbnN0YW5jZW9mIEhUTUxDYW52YXNFbGVtZW50fHx0IGluc3RhbmNlb2YgSFRNTFZpZGVvRWxlbWVudHx8dCBpbnN0YW5jZW9mIEltYWdlRGF0YXx8ZS5iKHQpP2wudGV4U3ViSW1hZ2UyRChsLlRFWFRVUkVfMkQsMCxpLHIsbC5SR0JBLGwuVU5TSUdORURfQllURSx0KTpsLnRleFN1YkltYWdlMkQobC5URVhUVVJFXzJELDAsaSxyLHMsbyxsLlJHQkEsbC5VTlNJR05FRF9CWVRFLHQuZGF0YSk7fXRoaXMudXNlTWlwbWFwJiZ0aGlzLmlzU2l6ZVBvd2VyT2ZUd28oKSYmbC5nZW5lcmF0ZU1pcG1hcChsLlRFWFRVUkVfMkQpO31iaW5kKHQsZSxpKXtjb25zdHtjb250ZXh0OmF9PXRoaXMse2dsOnN9PWE7cy5iaW5kVGV4dHVyZShzLlRFWFRVUkVfMkQsdGhpcy50ZXh0dXJlKSxpIT09cy5MSU5FQVJfTUlQTUFQX05FQVJFU1R8fHRoaXMuaXNTaXplUG93ZXJPZlR3bygpfHwoaT1zLkxJTkVBUiksdCE9PXRoaXMuZmlsdGVyJiYocy50ZXhQYXJhbWV0ZXJpKHMuVEVYVFVSRV8yRCxzLlRFWFRVUkVfTUFHX0ZJTFRFUix0KSxzLnRleFBhcmFtZXRlcmkocy5URVhUVVJFXzJELHMuVEVYVFVSRV9NSU5fRklMVEVSLGl8fHQpLHRoaXMuZmlsdGVyPXQpLGUhPT10aGlzLndyYXAmJihzLnRleFBhcmFtZXRlcmkocy5URVhUVVJFXzJELHMuVEVYVFVSRV9XUkFQX1MsZSkscy50ZXhQYXJhbWV0ZXJpKHMuVEVYVFVSRV8yRCxzLlRFWFRVUkVfV1JBUF9ULGUpLHRoaXMud3JhcD1lKTt9aXNTaXplUG93ZXJPZlR3bygpe3JldHVybiB0aGlzLnNpemVbMF09PT10aGlzLnNpemVbMV0mJk1hdGgubG9nKHRoaXMuc2l6ZVswXSkvTWF0aC5MTjIlMT09MH1kZXN0cm95KCl7Y29uc3R7Z2w6dH09dGhpcy5jb250ZXh0O3QuZGVsZXRlVGV4dHVyZSh0aGlzLnRleHR1cmUpLHRoaXMudGV4dHVyZT1udWxsO319ZnVuY3Rpb24gdyh0KXtjb25zdHt1c2VySW1hZ2U6ZX09dDtyZXR1cm4gISEoZSYmZS5yZW5kZXImJmUucmVuZGVyKCkpJiYodC5kYXRhLnJlcGxhY2UobmV3IFVpbnQ4QXJyYXkoZS5kYXRhLmJ1ZmZlcikpLCEwKX1jbGFzcyBUIGV4dGVuZHMgZS5Fe2NvbnN0cnVjdG9yKCl7c3VwZXIoKSx0aGlzLmltYWdlcz17fSx0aGlzLnVwZGF0ZWRJbWFnZXM9e30sdGhpcy5jYWxsYmFja0Rpc3BhdGNoZWRUaGlzRnJhbWU9e30sdGhpcy5sb2FkZWQ9ITEsdGhpcy5yZXF1ZXN0b3JzPVtdLHRoaXMucGF0dGVybnM9e30sdGhpcy5hdGxhc0ltYWdlPW5ldyBlLlIoe3dpZHRoOjEsaGVpZ2h0OjF9KSx0aGlzLmRpcnR5PSEwO31pc0xvYWRlZCgpe3JldHVybiB0aGlzLmxvYWRlZH1zZXRMb2FkZWQodCl7aWYodGhpcy5sb2FkZWQhPT10JiYodGhpcy5sb2FkZWQ9dCx0KSl7Zm9yKGNvbnN0e2lkczp0LHByb21pc2VSZXNvbHZlOmV9b2YgdGhpcy5yZXF1ZXN0b3JzKWUodGhpcy5fZ2V0SW1hZ2VzRm9ySWRzKHQpKTt0aGlzLnJlcXVlc3RvcnM9W107fX1nZXRJbWFnZSh0KXtjb25zdCBpPXRoaXMuaW1hZ2VzW3RdO2lmKGkmJiFpLmRhdGEmJmkuc3ByaXRlRGF0YSl7Y29uc3QgdD1pLnNwcml0ZURhdGE7aS5kYXRhPW5ldyBlLlIoe3dpZHRoOnQud2lkdGgsaGVpZ2h0OnQuaGVpZ2h0fSx0LmNvbnRleHQuZ2V0SW1hZ2VEYXRhKHQueCx0LnksdC53aWR0aCx0LmhlaWdodCkuZGF0YSksaS5zcHJpdGVEYXRhPW51bGw7fXJldHVybiBpfWFkZEltYWdlKHQsZSl7aWYodGhpcy5pbWFnZXNbdF0pdGhyb3cgbmV3IEVycm9yKGBJbWFnZSBpZCAke3R9IGFscmVhZHkgZXhpc3QsIHVzZSB1cGRhdGVJbWFnZSBpbnN0ZWFkYCk7dGhpcy5fdmFsaWRhdGUodCxlKSYmKHRoaXMuaW1hZ2VzW3RdPWUpO31fdmFsaWRhdGUodCxpKXtsZXQgYT0hMDtjb25zdCBzPWkuZGF0YXx8aS5zcHJpdGVEYXRhO3JldHVybiB0aGlzLl92YWxpZGF0ZVN0cmV0Y2goaS5zdHJldGNoWCxzJiZzLndpZHRoKXx8KHRoaXMuZmlyZShuZXcgZS5qKG5ldyBFcnJvcihgSW1hZ2UgXCIke3R9XCIgaGFzIGludmFsaWQgXCJzdHJldGNoWFwiIHZhbHVlYCkpKSxhPSExKSx0aGlzLl92YWxpZGF0ZVN0cmV0Y2goaS5zdHJldGNoWSxzJiZzLmhlaWdodCl8fCh0aGlzLmZpcmUobmV3IGUuaihuZXcgRXJyb3IoYEltYWdlIFwiJHt0fVwiIGhhcyBpbnZhbGlkIFwic3RyZXRjaFlcIiB2YWx1ZWApKSksYT0hMSksdGhpcy5fdmFsaWRhdGVDb250ZW50KGkuY29udGVudCxpKXx8KHRoaXMuZmlyZShuZXcgZS5qKG5ldyBFcnJvcihgSW1hZ2UgXCIke3R9XCIgaGFzIGludmFsaWQgXCJjb250ZW50XCIgdmFsdWVgKSkpLGE9ITEpLGF9X3ZhbGlkYXRlU3RyZXRjaCh0LGUpe2lmKCF0KXJldHVybiAhMDtsZXQgaT0wO2Zvcihjb25zdCBhIG9mIHQpe2lmKGFbMF08aXx8YVsxXTxhWzBdfHxlPGFbMV0pcmV0dXJuICExO2k9YVsxXTt9cmV0dXJuICEwfV92YWxpZGF0ZUNvbnRlbnQodCxlKXtpZighdClyZXR1cm4gITA7aWYoNCE9PXQubGVuZ3RoKXJldHVybiAhMTtjb25zdCBpPWUuc3ByaXRlRGF0YSxhPWkmJmkud2lkdGh8fGUuZGF0YS53aWR0aCxzPWkmJmkuaGVpZ2h0fHxlLmRhdGEuaGVpZ2h0O3JldHVybiAhKHRbMF08MHx8YTx0WzBdfHx0WzFdPDB8fHM8dFsxXXx8dFsyXTwwfHxhPHRbMl18fHRbM108MHx8czx0WzNdfHx0WzJdPHRbMF18fHRbM108dFsxXSl9dXBkYXRlSW1hZ2UodCxlLGk9ITApe2NvbnN0IGE9dGhpcy5nZXRJbWFnZSh0KTtpZihpJiYoYS5kYXRhLndpZHRoIT09ZS5kYXRhLndpZHRofHxhLmRhdGEuaGVpZ2h0IT09ZS5kYXRhLmhlaWdodCkpdGhyb3cgbmV3IEVycm9yKGBzaXplIG1pc21hdGNoIGJldHdlZW4gb2xkIGltYWdlICgke2EuZGF0YS53aWR0aH14JHthLmRhdGEuaGVpZ2h0fSkgYW5kIG5ldyBpbWFnZSAoJHtlLmRhdGEud2lkdGh9eCR7ZS5kYXRhLmhlaWdodH0pLmApO2UudmVyc2lvbj1hLnZlcnNpb24rMSx0aGlzLmltYWdlc1t0XT1lLHRoaXMudXBkYXRlZEltYWdlc1t0XT0hMDt9cmVtb3ZlSW1hZ2UodCl7Y29uc3QgZT10aGlzLmltYWdlc1t0XTtkZWxldGUgdGhpcy5pbWFnZXNbdF0sZGVsZXRlIHRoaXMucGF0dGVybnNbdF0sZS51c2VySW1hZ2UmJmUudXNlckltYWdlLm9uUmVtb3ZlJiZlLnVzZXJJbWFnZS5vblJlbW92ZSgpO31saXN0SW1hZ2VzKCl7cmV0dXJuIE9iamVjdC5rZXlzKHRoaXMuaW1hZ2VzKX1nZXRJbWFnZXModCl7cmV0dXJuIG5ldyBQcm9taXNlKCgoZSxpKT0+e2xldCBhPSEwO2lmKCF0aGlzLmlzTG9hZGVkKCkpZm9yKGNvbnN0IGUgb2YgdCl0aGlzLmltYWdlc1tlXXx8KGE9ITEpO3RoaXMuaXNMb2FkZWQoKXx8YT9lKHRoaXMuX2dldEltYWdlc0Zvcklkcyh0KSk6dGhpcy5yZXF1ZXN0b3JzLnB1c2goe2lkczp0LHByb21pc2VSZXNvbHZlOmV9KTt9KSl9X2dldEltYWdlc0Zvcklkcyh0KXtjb25zdCBpPXt9O2Zvcihjb25zdCBhIG9mIHQpe2xldCB0PXRoaXMuZ2V0SW1hZ2UoYSk7dHx8KHRoaXMuZmlyZShuZXcgZS5rKFwic3R5bGVpbWFnZW1pc3NpbmdcIix7aWQ6YX0pKSx0PXRoaXMuZ2V0SW1hZ2UoYSkpLHQ/aVthXT17ZGF0YTp0LmRhdGEuY2xvbmUoKSxwaXhlbFJhdGlvOnQucGl4ZWxSYXRpbyxzZGY6dC5zZGYsdmVyc2lvbjp0LnZlcnNpb24sc3RyZXRjaFg6dC5zdHJldGNoWCxzdHJldGNoWTp0LnN0cmV0Y2hZLGNvbnRlbnQ6dC5jb250ZW50LHRleHRGaXRXaWR0aDp0LnRleHRGaXRXaWR0aCx0ZXh0Rml0SGVpZ2h0OnQudGV4dEZpdEhlaWdodCxoYXNSZW5kZXJDYWxsYmFjazpCb29sZWFuKHQudXNlckltYWdlJiZ0LnVzZXJJbWFnZS5yZW5kZXIpfTplLncoYEltYWdlIFwiJHthfVwiIGNvdWxkIG5vdCBiZSBsb2FkZWQuIFBsZWFzZSBtYWtlIHN1cmUgeW91IGhhdmUgYWRkZWQgdGhlIGltYWdlIHdpdGggbWFwLmFkZEltYWdlKCkgb3IgYSBcInNwcml0ZVwiIHByb3BlcnR5IGluIHlvdXIgc3R5bGUuIFlvdSBjYW4gcHJvdmlkZSBtaXNzaW5nIGltYWdlcyBieSBsaXN0ZW5pbmcgZm9yIHRoZSBcInN0eWxlaW1hZ2VtaXNzaW5nXCIgbWFwIGV2ZW50LmApO31yZXR1cm4gaX1nZXRQaXhlbFNpemUoKXtjb25zdHt3aWR0aDp0LGhlaWdodDplfT10aGlzLmF0bGFzSW1hZ2U7cmV0dXJuIHt3aWR0aDp0LGhlaWdodDplfX1nZXRQYXR0ZXJuKHQpe2NvbnN0IGk9dGhpcy5wYXR0ZXJuc1t0XSxhPXRoaXMuZ2V0SW1hZ2UodCk7aWYoIWEpcmV0dXJuIG51bGw7aWYoaSYmaS5wb3NpdGlvbi52ZXJzaW9uPT09YS52ZXJzaW9uKXJldHVybiBpLnBvc2l0aW9uO2lmKGkpaS5wb3NpdGlvbi52ZXJzaW9uPWEudmVyc2lvbjtlbHNlIHtjb25zdCBpPXt3OmEuZGF0YS53aWR0aCsyLGg6YS5kYXRhLmhlaWdodCsyLHg6MCx5OjB9LHM9bmV3IGUuSShpLGEpO3RoaXMucGF0dGVybnNbdF09e2JpbjppLHBvc2l0aW9uOnN9O31yZXR1cm4gdGhpcy5fdXBkYXRlUGF0dGVybkF0bGFzKCksdGhpcy5wYXR0ZXJuc1t0XS5wb3NpdGlvbn1iaW5kKHQpe2NvbnN0IGU9dC5nbDt0aGlzLmF0bGFzVGV4dHVyZT90aGlzLmRpcnR5JiYodGhpcy5hdGxhc1RleHR1cmUudXBkYXRlKHRoaXMuYXRsYXNJbWFnZSksdGhpcy5kaXJ0eT0hMSk6dGhpcy5hdGxhc1RleHR1cmU9bmV3IGIodCx0aGlzLmF0bGFzSW1hZ2UsZS5SR0JBKSx0aGlzLmF0bGFzVGV4dHVyZS5iaW5kKGUuTElORUFSLGUuQ0xBTVBfVE9fRURHRSk7fV91cGRhdGVQYXR0ZXJuQXRsYXMoKXtjb25zdCB0PVtdO2Zvcihjb25zdCBlIGluIHRoaXMucGF0dGVybnMpdC5wdXNoKHRoaXMucGF0dGVybnNbZV0uYmluKTtjb25zdHt3OmksaDphfT1lLnAodCkscz10aGlzLmF0bGFzSW1hZ2U7cy5yZXNpemUoe3dpZHRoOml8fDEsaGVpZ2h0OmF8fDF9KTtmb3IoY29uc3QgdCBpbiB0aGlzLnBhdHRlcm5zKXtjb25zdHtiaW46aX09dGhpcy5wYXR0ZXJuc1t0XSxhPWkueCsxLG89aS55KzEscj10aGlzLmdldEltYWdlKHQpLmRhdGEsbj1yLndpZHRoLGw9ci5oZWlnaHQ7ZS5SLmNvcHkocixzLHt4OjAseTowfSx7eDphLHk6b30se3dpZHRoOm4saGVpZ2h0Omx9KSxlLlIuY29weShyLHMse3g6MCx5OmwtMX0se3g6YSx5Om8tMX0se3dpZHRoOm4saGVpZ2h0OjF9KSxlLlIuY29weShyLHMse3g6MCx5OjB9LHt4OmEseTpvK2x9LHt3aWR0aDpuLGhlaWdodDoxfSksZS5SLmNvcHkocixzLHt4Om4tMSx5OjB9LHt4OmEtMSx5Om99LHt3aWR0aDoxLGhlaWdodDpsfSksZS5SLmNvcHkocixzLHt4OjAseTowfSx7eDphK24seTpvfSx7d2lkdGg6MSxoZWlnaHQ6bH0pO310aGlzLmRpcnR5PSEwO31iZWdpbkZyYW1lKCl7dGhpcy5jYWxsYmFja0Rpc3BhdGNoZWRUaGlzRnJhbWU9e307fWRpc3BhdGNoUmVuZGVyQ2FsbGJhY2tzKHQpe2Zvcihjb25zdCBpIG9mIHQpe2lmKHRoaXMuY2FsbGJhY2tEaXNwYXRjaGVkVGhpc0ZyYW1lW2ldKWNvbnRpbnVlO3RoaXMuY2FsbGJhY2tEaXNwYXRjaGVkVGhpc0ZyYW1lW2ldPSEwO2NvbnN0IHQ9dGhpcy5nZXRJbWFnZShpKTt0fHxlLncoYEltYWdlIHdpdGggSUQ6IFwiJHtpfVwiIHdhcyBub3QgZm91bmRgKSx3KHQpJiZ0aGlzLnVwZGF0ZUltYWdlKGksdCk7fX19Y29uc3QgST0xZTIwO2Z1bmN0aW9uIEUodCxlLGksYSxzLG8scixuLGwpe2ZvcihsZXQgaD1lO2g8ZSthO2grKylQKHQsaSpvK2gsbyxzLHIsbixsKTtmb3IobGV0IGg9aTtoPGkrcztoKyspUCh0LGgqbytlLDEsYSxyLG4sbCk7fWZ1bmN0aW9uIFAodCxlLGksYSxzLG8scil7b1swXT0wLHJbMF09LUksclsxXT1JLHNbMF09dFtlXTtmb3IobGV0IG49MSxsPTAsaD0wO248YTtuKyspe3Nbbl09dFtlK24qaV07Y29uc3QgYT1uKm47ZG97Y29uc3QgdD1vW2xdO2g9KHNbbl0tc1t0XSthLXQqdCkvKG4tdCkvMjt9d2hpbGUoaDw9cltsXSYmLS1sPi0xKTtsKyssb1tsXT1uLHJbbF09aCxyW2wrMV09STt9Zm9yKGxldCBuPTAsbD0wO248YTtuKyspe2Zvcig7cltsKzFdPG47KWwrKztjb25zdCBhPW9bbF0saD1uLWE7dFtlK24qaV09c1thXStoKmg7fX1jbGFzcyBDe2NvbnN0cnVjdG9yKHQsZSl7dGhpcy5yZXF1ZXN0TWFuYWdlcj10LHRoaXMubG9jYWxJZGVvZ3JhcGhGb250RmFtaWx5PWUsdGhpcy5lbnRyaWVzPXt9O31zZXRVUkwodCl7dGhpcy51cmw9dDt9Z2V0R2x5cGhzKHQpe3JldHVybiBlLl8odGhpcyx2b2lkIDAsdm9pZCAwLChmdW5jdGlvbiooKXtjb25zdCBlPVtdO2Zvcihjb25zdCBpIGluIHQpZm9yKGNvbnN0IGEgb2YgdFtpXSllLnB1c2godGhpcy5fZ2V0QW5kQ2FjaGVHbHlwaHNQcm9taXNlKGksYSkpO2NvbnN0IGk9eWllbGQgUHJvbWlzZS5hbGwoZSksYT17fTtmb3IoY29uc3R7c3RhY2s6dCxpZDplLGdseXBoOnN9b2YgaSlhW3RdfHwoYVt0XT17fSksYVt0XVtlXT1zJiZ7aWQ6cy5pZCxiaXRtYXA6cy5iaXRtYXAuY2xvbmUoKSxtZXRyaWNzOnMubWV0cmljc307cmV0dXJuIGF9KSl9X2dldEFuZENhY2hlR2x5cGhzUHJvbWlzZSh0LGkpe3JldHVybiBlLl8odGhpcyx2b2lkIDAsdm9pZCAwLChmdW5jdGlvbiooKXtsZXQgZT10aGlzLmVudHJpZXNbdF07ZXx8KGU9dGhpcy5lbnRyaWVzW3RdPXtnbHlwaHM6e30scmVxdWVzdHM6e30scmFuZ2VzOnt9fSk7bGV0IGE9ZS5nbHlwaHNbaV07aWYodm9pZCAwIT09YSlyZXR1cm4ge3N0YWNrOnQsaWQ6aSxnbHlwaDphfTtpZihhPXRoaXMuX3RpbnlTREYoZSx0LGkpLGEpcmV0dXJuIGUuZ2x5cGhzW2ldPWEse3N0YWNrOnQsaWQ6aSxnbHlwaDphfTtjb25zdCBzPU1hdGguZmxvb3IoaS8yNTYpO2lmKDI1NipzPjY1NTM1KXRocm93IG5ldyBFcnJvcihcImdseXBocyA+IDY1NTM1IG5vdCBzdXBwb3J0ZWRcIik7aWYoZS5yYW5nZXNbc10pcmV0dXJuIHtzdGFjazp0LGlkOmksZ2x5cGg6YX07aWYoIXRoaXMudXJsKXRocm93IG5ldyBFcnJvcihcImdseXBoc1VybCBpcyBub3Qgc2V0XCIpO2lmKCFlLnJlcXVlc3RzW3NdKXtjb25zdCBpPUMubG9hZEdseXBoUmFuZ2UodCxzLHRoaXMudXJsLHRoaXMucmVxdWVzdE1hbmFnZXIpO2UucmVxdWVzdHNbc109aTt9Y29uc3Qgbz15aWVsZCBlLnJlcXVlc3RzW3NdO2Zvcihjb25zdCB0IGluIG8pdGhpcy5fZG9lc0NoYXJTdXBwb3J0TG9jYWxHbHlwaCgrdCl8fChlLmdseXBoc1srdF09b1srdF0pO3JldHVybiBlLnJhbmdlc1tzXT0hMCx7c3RhY2s6dCxpZDppLGdseXBoOm9baV18fG51bGx9fSkpfV9kb2VzQ2hhclN1cHBvcnRMb2NhbEdseXBoKHQpe3JldHVybiAhIXRoaXMubG9jYWxJZGVvZ3JhcGhGb250RmFtaWx5JiYvXFxwe0lkZW99fFxccHtzYz1IYW5nfXxcXHB7c2M9SGlyYX18XFxwe3NjPUthbmF9L3UudGVzdChTdHJpbmcuZnJvbUNvZGVQb2ludCh0KSl9X3RpbnlTREYodCxpLGEpe2NvbnN0IHM9dGhpcy5sb2NhbElkZW9ncmFwaEZvbnRGYW1pbHk7aWYoIXMpcmV0dXJuO2lmKCF0aGlzLl9kb2VzQ2hhclN1cHBvcnRMb2NhbEdseXBoKGEpKXJldHVybjtsZXQgbz10LnRpbnlTREY7aWYoIW8pe2xldCBlPVwiNDAwXCI7L2JvbGQvaS50ZXN0KGkpP2U9XCI5MDBcIjovbWVkaXVtL2kudGVzdChpKT9lPVwiNTAwXCI6L2xpZ2h0L2kudGVzdChpKSYmKGU9XCIyMDBcIiksbz10LnRpbnlTREY9bmV3IEMuVGlueVNERih7Zm9udFNpemU6NDgsYnVmZmVyOjYscmFkaXVzOjE2LGN1dG9mZjouMjUsZm9udEZhbWlseTpzLGZvbnRXZWlnaHQ6ZX0pO31jb25zdCByPW8uZHJhdyhTdHJpbmcuZnJvbUNoYXJDb2RlKGEpKTtyZXR1cm4ge2lkOmEsYml0bWFwOm5ldyBlLm8oe3dpZHRoOnIud2lkdGh8fDYwLGhlaWdodDpyLmhlaWdodHx8NjB9LHIuZGF0YSksbWV0cmljczp7d2lkdGg6ci5nbHlwaFdpZHRoLzJ8fDI0LGhlaWdodDpyLmdseXBoSGVpZ2h0LzJ8fDI0LGxlZnQ6ci5nbHlwaExlZnQvMisuNXx8MCx0b3A6ci5nbHlwaFRvcC8yLTI3LjV8fC04LGFkdmFuY2U6ci5nbHlwaEFkdmFuY2UvMnx8MjQsaXNEb3VibGVSZXNvbHV0aW9uOiEwfX19fUMubG9hZEdseXBoUmFuZ2U9ZnVuY3Rpb24odCxpLGEscyl7cmV0dXJuIGUuXyh0aGlzLHZvaWQgMCx2b2lkIDAsKGZ1bmN0aW9uKigpe2NvbnN0IG89MjU2Kmkscj1vKzI1NSxuPXMudHJhbnNmb3JtUmVxdWVzdChhLnJlcGxhY2UoXCJ7Zm9udHN0YWNrfVwiLHQpLnJlcGxhY2UoXCJ7cmFuZ2V9XCIsYCR7b30tJHtyfWApLFwiR2x5cGhzXCIpLGw9eWllbGQgZS5sKG4sbmV3IEFib3J0Q29udHJvbGxlcik7aWYoIWx8fCFsLmRhdGEpdGhyb3cgbmV3IEVycm9yKGBDb3VsZCBub3QgbG9hZCBnbHlwaCByYW5nZS4gcmFuZ2U6ICR7aX0sICR7b30tJHtyfWApO2NvbnN0IGg9e307Zm9yKGNvbnN0IHQgb2YgZS5uKGwuZGF0YSkpaFt0LmlkXT10O3JldHVybiBofSkpfSxDLlRpbnlTREY9Y2xhc3N7Y29uc3RydWN0b3Ioe2ZvbnRTaXplOnQ9MjQsYnVmZmVyOmU9MyxyYWRpdXM6aT04LGN1dG9mZjphPS4yNSxmb250RmFtaWx5OnM9XCJzYW5zLXNlcmlmXCIsZm9udFdlaWdodDpvPVwibm9ybWFsXCIsZm9udFN0eWxlOnI9XCJub3JtYWxcIn09e30pe3RoaXMuYnVmZmVyPWUsdGhpcy5jdXRvZmY9YSx0aGlzLnJhZGl1cz1pO2NvbnN0IG49dGhpcy5zaXplPXQrNCplLGw9dGhpcy5fY3JlYXRlQ2FudmFzKG4pLGg9dGhpcy5jdHg9bC5nZXRDb250ZXh0KFwiMmRcIix7d2lsbFJlYWRGcmVxdWVudGx5OiEwfSk7aC5mb250PWAke3J9ICR7b30gJHt0fXB4ICR7c31gLGgudGV4dEJhc2VsaW5lPVwiYWxwaGFiZXRpY1wiLGgudGV4dEFsaWduPVwibGVmdFwiLGguZmlsbFN0eWxlPVwiYmxhY2tcIix0aGlzLmdyaWRPdXRlcj1uZXcgRmxvYXQ2NEFycmF5KG4qbiksdGhpcy5ncmlkSW5uZXI9bmV3IEZsb2F0NjRBcnJheShuKm4pLHRoaXMuZj1uZXcgRmxvYXQ2NEFycmF5KG4pLHRoaXMuej1uZXcgRmxvYXQ2NEFycmF5KG4rMSksdGhpcy52PW5ldyBVaW50MTZBcnJheShuKTt9X2NyZWF0ZUNhbnZhcyh0KXtjb25zdCBlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJjYW52YXNcIik7cmV0dXJuIGUud2lkdGg9ZS5oZWlnaHQ9dCxlfWRyYXcodCl7Y29uc3R7d2lkdGg6ZSxhY3R1YWxCb3VuZGluZ0JveEFzY2VudDppLGFjdHVhbEJvdW5kaW5nQm94RGVzY2VudDphLGFjdHVhbEJvdW5kaW5nQm94TGVmdDpzLGFjdHVhbEJvdW5kaW5nQm94UmlnaHQ6b309dGhpcy5jdHgubWVhc3VyZVRleHQodCkscj1NYXRoLmNlaWwoaSksbj1NYXRoLm1heCgwLE1hdGgubWluKHRoaXMuc2l6ZS10aGlzLmJ1ZmZlcixNYXRoLmNlaWwoby1zKSkpLGw9TWF0aC5taW4odGhpcy5zaXplLXRoaXMuYnVmZmVyLHIrTWF0aC5jZWlsKGEpKSxoPW4rMip0aGlzLmJ1ZmZlcixjPWwrMip0aGlzLmJ1ZmZlcix1PU1hdGgubWF4KGgqYywwKSxkPW5ldyBVaW50OENsYW1wZWRBcnJheSh1KSxfPXtkYXRhOmQsd2lkdGg6aCxoZWlnaHQ6YyxnbHlwaFdpZHRoOm4sZ2x5cGhIZWlnaHQ6bCxnbHlwaFRvcDpyLGdseXBoTGVmdDowLGdseXBoQWR2YW5jZTplfTtpZigwPT09bnx8MD09PWwpcmV0dXJuIF87Y29uc3R7Y3R4OnAsYnVmZmVyOm0sZ3JpZElubmVyOmYsZ3JpZE91dGVyOmd9PXRoaXM7cC5jbGVhclJlY3QobSxtLG4sbCkscC5maWxsVGV4dCh0LG0sbStyKTtjb25zdCB2PXAuZ2V0SW1hZ2VEYXRhKG0sbSxuLGwpO2cuZmlsbChJLDAsdSksZi5maWxsKDAsMCx1KTtmb3IobGV0IHQ9MDt0PGw7dCsrKWZvcihsZXQgZT0wO2U8bjtlKyspe2NvbnN0IGk9di5kYXRhWzQqKHQqbitlKSszXS8yNTU7aWYoMD09PWkpY29udGludWU7Y29uc3QgYT0odCttKSpoK2UrbTtpZigxPT09aSlnW2FdPTAsZlthXT1JO2Vsc2Uge2NvbnN0IHQ9LjUtaTtnW2FdPXQ+MD90KnQ6MCxmW2FdPXQ8MD90KnQ6MDt9fUUoZywwLDAsaCxjLGgsdGhpcy5mLHRoaXMudix0aGlzLnopLEUoZixtLG0sbixsLGgsdGhpcy5mLHRoaXMudix0aGlzLnopO2ZvcihsZXQgdD0wO3Q8dTt0Kyspe2NvbnN0IGU9TWF0aC5zcXJ0KGdbdF0pLU1hdGguc3FydChmW3RdKTtkW3RdPU1hdGgucm91bmQoMjU1LTI1NSooZS90aGlzLnJhZGl1cyt0aGlzLmN1dG9mZikpO31yZXR1cm4gX319O2NsYXNzIFN7Y29uc3RydWN0b3IoKXt0aGlzLnNwZWNpZmljYXRpb249ZS52LmxpZ2h0LnBvc2l0aW9uO31wb3NzaWJseUV2YWx1YXRlKHQsaSl7cmV0dXJuIGUueCh0LmV4cHJlc3Npb24uZXZhbHVhdGUoaSkpfWludGVycG9sYXRlKHQsaSxhKXtyZXR1cm4ge3g6ZS55Lm51bWJlcih0LngsaS54LGEpLHk6ZS55Lm51bWJlcih0LnksaS55LGEpLHo6ZS55Lm51bWJlcih0LnosaS56LGEpfX19bGV0IHo7Y2xhc3MgRCBleHRlbmRzIGUuRXtjb25zdHJ1Y3Rvcih0KXtzdXBlcigpLHo9enx8bmV3IGUucSh7YW5jaG9yOm5ldyBlLkQoZS52LmxpZ2h0LmFuY2hvcikscG9zaXRpb246bmV3IFMsY29sb3I6bmV3IGUuRChlLnYubGlnaHQuY29sb3IpLGludGVuc2l0eTpuZXcgZS5EKGUudi5saWdodC5pbnRlbnNpdHkpfSksdGhpcy5fdHJhbnNpdGlvbmFibGU9bmV3IGUuVCh6KSx0aGlzLnNldExpZ2h0KHQpLHRoaXMuX3RyYW5zaXRpb25pbmc9dGhpcy5fdHJhbnNpdGlvbmFibGUudW50cmFuc2l0aW9uZWQoKTt9Z2V0TGlnaHQoKXtyZXR1cm4gdGhpcy5fdHJhbnNpdGlvbmFibGUuc2VyaWFsaXplKCl9c2V0TGlnaHQodCxpPXt9KXtpZighdGhpcy5fdmFsaWRhdGUoZS5yLHQsaSkpZm9yKGNvbnN0IGUgaW4gdCl7Y29uc3QgaT10W2VdO2UuZW5kc1dpdGgoXCItdHJhbnNpdGlvblwiKT90aGlzLl90cmFuc2l0aW9uYWJsZS5zZXRUcmFuc2l0aW9uKGUuc2xpY2UoMCwtMTEpLGkpOnRoaXMuX3RyYW5zaXRpb25hYmxlLnNldFZhbHVlKGUsaSk7fX11cGRhdGVUcmFuc2l0aW9ucyh0KXt0aGlzLl90cmFuc2l0aW9uaW5nPXRoaXMuX3RyYW5zaXRpb25hYmxlLnRyYW5zaXRpb25lZCh0LHRoaXMuX3RyYW5zaXRpb25pbmcpO31oYXNUcmFuc2l0aW9uKCl7cmV0dXJuIHRoaXMuX3RyYW5zaXRpb25pbmcuaGFzVHJhbnNpdGlvbigpfXJlY2FsY3VsYXRlKHQpe3RoaXMucHJvcGVydGllcz10aGlzLl90cmFuc2l0aW9uaW5nLnBvc3NpYmx5RXZhbHVhdGUodCk7fV92YWxpZGF0ZSh0LGksYSl7cmV0dXJuICghYXx8ITEhPT1hLnZhbGlkYXRlKSYmZS50KHRoaXMsdC5jYWxsKGUudSx7dmFsdWU6aSxzdHlsZTp7Z2x5cGhzOiEwLHNwcml0ZTohMH0sc3R5bGVTcGVjOmUudn0pKX19Y29uc3QgTT1uZXcgZS5xKHtcInNreS1jb2xvclwiOm5ldyBlLkQoZS52LnNreVtcInNreS1jb2xvclwiXSksXCJob3Jpem9uLWNvbG9yXCI6bmV3IGUuRChlLnYuc2t5W1wiaG9yaXpvbi1jb2xvclwiXSksXCJmb2ctY29sb3JcIjpuZXcgZS5EKGUudi5za3lbXCJmb2ctY29sb3JcIl0pLFwiZm9nLWdyb3VuZC1ibGVuZFwiOm5ldyBlLkQoZS52LnNreVtcImZvZy1ncm91bmQtYmxlbmRcIl0pLFwiaG9yaXpvbi1mb2ctYmxlbmRcIjpuZXcgZS5EKGUudi5za3lbXCJob3Jpem9uLWZvZy1ibGVuZFwiXSksXCJza3ktaG9yaXpvbi1ibGVuZFwiOm5ldyBlLkQoZS52LnNreVtcInNreS1ob3Jpem9uLWJsZW5kXCJdKSxcImF0bW9zcGhlcmUtYmxlbmRcIjpuZXcgZS5EKGUudi5za3lbXCJhdG1vc3BoZXJlLWJsZW5kXCJdKX0pO2NsYXNzIEEgZXh0ZW5kcyBlLkV7Y29uc3RydWN0b3IodCl7c3VwZXIoKSx0aGlzLl90cmFuc2l0aW9uYWJsZT1uZXcgZS5UKE0pLHRoaXMuc2V0U2t5KHQpLHRoaXMuX3RyYW5zaXRpb25pbmc9dGhpcy5fdHJhbnNpdGlvbmFibGUudW50cmFuc2l0aW9uZWQoKSx0aGlzLnJlY2FsY3VsYXRlKG5ldyBlLnooMCkpO31zZXRTa3kodCxpPXt9KXtpZighdGhpcy5fdmFsaWRhdGUoZS5CLHQsaSkpe3R8fCh0PXtcInNreS1jb2xvclwiOlwidHJhbnNwYXJlbnRcIixcImhvcml6b24tY29sb3JcIjpcInRyYW5zcGFyZW50XCIsXCJmb2ctY29sb3JcIjpcInRyYW5zcGFyZW50XCIsXCJmb2ctZ3JvdW5kLWJsZW5kXCI6MSxcImF0bW9zcGhlcmUtYmxlbmRcIjowfSk7Zm9yKGNvbnN0IGUgaW4gdCl7Y29uc3QgaT10W2VdO2UuZW5kc1dpdGgoXCItdHJhbnNpdGlvblwiKT90aGlzLl90cmFuc2l0aW9uYWJsZS5zZXRUcmFuc2l0aW9uKGUuc2xpY2UoMCwtMTEpLGkpOnRoaXMuX3RyYW5zaXRpb25hYmxlLnNldFZhbHVlKGUsaSk7fX19Z2V0U2t5KCl7cmV0dXJuIHRoaXMuX3RyYW5zaXRpb25hYmxlLnNlcmlhbGl6ZSgpfXVwZGF0ZVRyYW5zaXRpb25zKHQpe3RoaXMuX3RyYW5zaXRpb25pbmc9dGhpcy5fdHJhbnNpdGlvbmFibGUudHJhbnNpdGlvbmVkKHQsdGhpcy5fdHJhbnNpdGlvbmluZyk7fWhhc1RyYW5zaXRpb24oKXtyZXR1cm4gdGhpcy5fdHJhbnNpdGlvbmluZy5oYXNUcmFuc2l0aW9uKCl9cmVjYWxjdWxhdGUodCl7dGhpcy5wcm9wZXJ0aWVzPXRoaXMuX3RyYW5zaXRpb25pbmcucG9zc2libHlFdmFsdWF0ZSh0KTt9X3ZhbGlkYXRlKHQsaSxhPXt9KXtyZXR1cm4gITEhPT0obnVsbD09YT92b2lkIDA6YS52YWxpZGF0ZSkmJmUudCh0aGlzLHQuY2FsbChlLnUsZS5lKHt2YWx1ZTppLHN0eWxlOntnbHlwaHM6ITAsc3ByaXRlOiEwfSxzdHlsZVNwZWM6ZS52fSkpKX1jYWxjdWxhdGVGb2dCbGVuZE9wYWNpdHkodCl7cmV0dXJuIHQ8NjA/MDp0PDcwPyh0LTYwKS8xMDoxfX1jbGFzcyBSe2NvbnN0cnVjdG9yKHQsZSl7dGhpcy53aWR0aD10LHRoaXMuaGVpZ2h0PWUsdGhpcy5uZXh0Um93PTAsdGhpcy5kYXRhPW5ldyBVaW50OEFycmF5KHRoaXMud2lkdGgqdGhpcy5oZWlnaHQpLHRoaXMuZGFzaEVudHJ5PXt9O31nZXREYXNoKHQsZSl7Y29uc3QgaT10LmpvaW4oXCIsXCIpK1N0cmluZyhlKTtyZXR1cm4gdGhpcy5kYXNoRW50cnlbaV18fCh0aGlzLmRhc2hFbnRyeVtpXT10aGlzLmFkZERhc2godCxlKSksdGhpcy5kYXNoRW50cnlbaV19Z2V0RGFzaFJhbmdlcyh0LGUsaSl7Y29uc3QgYT1bXTtsZXQgcz10Lmxlbmd0aCUyPT0xPy10W3QubGVuZ3RoLTFdKmk6MCxvPXRbMF0qaSxyPSEwO2EucHVzaCh7bGVmdDpzLHJpZ2h0Om8saXNEYXNoOnIsemVyb0xlbmd0aDowPT09dFswXX0pO2xldCBuPXRbMF07Zm9yKGxldCBlPTE7ZTx0Lmxlbmd0aDtlKyspe3I9IXI7Y29uc3QgbD10W2VdO3M9bippLG4rPWwsbz1uKmksYS5wdXNoKHtsZWZ0OnMscmlnaHQ6byxpc0Rhc2g6cix6ZXJvTGVuZ3RoOjA9PT1sfSk7fXJldHVybiBhfWFkZFJvdW5kRGFzaCh0LGUsaSl7Y29uc3QgYT1lLzI7Zm9yKGxldCBlPS1pO2U8PWk7ZSsrKXtjb25zdCBzPXRoaXMud2lkdGgqKHRoaXMubmV4dFJvdytpK2UpO2xldCBvPTAscj10W29dO2ZvcihsZXQgbj0wO248dGhpcy53aWR0aDtuKyspe24vci5yaWdodD4xJiYocj10Wysrb10pO2NvbnN0IGw9TWF0aC5hYnMobi1yLmxlZnQpLGg9TWF0aC5hYnMobi1yLnJpZ2h0KSxjPU1hdGgubWluKGwsaCk7bGV0IHU7Y29uc3QgZD1lL2kqKGErMSk7aWYoci5pc0Rhc2gpe2NvbnN0IHQ9YS1NYXRoLmFicyhkKTt1PU1hdGguc3FydChjKmMrdCp0KTt9ZWxzZSB1PWEtTWF0aC5zcXJ0KGMqYytkKmQpO3RoaXMuZGF0YVtzK25dPU1hdGgubWF4KDAsTWF0aC5taW4oMjU1LHUrMTI4KSk7fX19YWRkUmVndWxhckRhc2godCl7Zm9yKGxldCBlPXQubGVuZ3RoLTE7ZT49MDstLWUpe2NvbnN0IGk9dFtlXSxhPXRbZSsxXTtpLnplcm9MZW5ndGg/dC5zcGxpY2UoZSwxKTphJiZhLmlzRGFzaD09PWkuaXNEYXNoJiYoYS5sZWZ0PWkubGVmdCx0LnNwbGljZShlLDEpKTt9Y29uc3QgZT10WzBdLGk9dFt0Lmxlbmd0aC0xXTtlLmlzRGFzaD09PWkuaXNEYXNoJiYoZS5sZWZ0PWkubGVmdC10aGlzLndpZHRoLGkucmlnaHQ9ZS5yaWdodCt0aGlzLndpZHRoKTtjb25zdCBhPXRoaXMud2lkdGgqdGhpcy5uZXh0Um93O2xldCBzPTAsbz10W3NdO2ZvcihsZXQgZT0wO2U8dGhpcy53aWR0aDtlKyspe2Uvby5yaWdodD4xJiYobz10Wysrc10pO2NvbnN0IGk9TWF0aC5hYnMoZS1vLmxlZnQpLHI9TWF0aC5hYnMoZS1vLnJpZ2h0KSxuPU1hdGgubWluKGkscik7dGhpcy5kYXRhW2ErZV09TWF0aC5tYXgoMCxNYXRoLm1pbigyNTUsKG8uaXNEYXNoP246LW4pKzEyOCkpO319YWRkRGFzaCh0LGkpe2NvbnN0IGE9aT83OjAscz0yKmErMTtpZih0aGlzLm5leHRSb3crcz50aGlzLmhlaWdodClyZXR1cm4gZS53KFwiTGluZUF0bGFzIG91dCBvZiBzcGFjZVwiKSxudWxsO2xldCBvPTA7Zm9yKGxldCBlPTA7ZTx0Lmxlbmd0aDtlKyspbys9dFtlXTtpZigwIT09byl7Y29uc3QgZT10aGlzLndpZHRoL28scz10aGlzLmdldERhc2hSYW5nZXModCx0aGlzLndpZHRoLGUpO2k/dGhpcy5hZGRSb3VuZERhc2gocyxlLGEpOnRoaXMuYWRkUmVndWxhckRhc2gocyk7fWNvbnN0IHI9e3k6KHRoaXMubmV4dFJvdythKy41KS90aGlzLmhlaWdodCxoZWlnaHQ6MiphL3RoaXMuaGVpZ2h0LHdpZHRoOm99O3JldHVybiB0aGlzLm5leHRSb3crPXMsdGhpcy5kaXJ0eT0hMCxyfWJpbmQodCl7Y29uc3QgZT10LmdsO3RoaXMudGV4dHVyZT8oZS5iaW5kVGV4dHVyZShlLlRFWFRVUkVfMkQsdGhpcy50ZXh0dXJlKSx0aGlzLmRpcnR5JiYodGhpcy5kaXJ0eT0hMSxlLnRleFN1YkltYWdlMkQoZS5URVhUVVJFXzJELDAsMCwwLHRoaXMud2lkdGgsdGhpcy5oZWlnaHQsZS5BTFBIQSxlLlVOU0lHTkVEX0JZVEUsdGhpcy5kYXRhKSkpOih0aGlzLnRleHR1cmU9ZS5jcmVhdGVUZXh0dXJlKCksZS5iaW5kVGV4dHVyZShlLlRFWFRVUkVfMkQsdGhpcy50ZXh0dXJlKSxlLnRleFBhcmFtZXRlcmkoZS5URVhUVVJFXzJELGUuVEVYVFVSRV9XUkFQX1MsZS5SRVBFQVQpLGUudGV4UGFyYW1ldGVyaShlLlRFWFRVUkVfMkQsZS5URVhUVVJFX1dSQVBfVCxlLlJFUEVBVCksZS50ZXhQYXJhbWV0ZXJpKGUuVEVYVFVSRV8yRCxlLlRFWFRVUkVfTUlOX0ZJTFRFUixlLkxJTkVBUiksZS50ZXhQYXJhbWV0ZXJpKGUuVEVYVFVSRV8yRCxlLlRFWFRVUkVfTUFHX0ZJTFRFUixlLkxJTkVBUiksZS50ZXhJbWFnZTJEKGUuVEVYVFVSRV8yRCwwLGUuQUxQSEEsdGhpcy53aWR0aCx0aGlzLmhlaWdodCwwLGUuQUxQSEEsZS5VTlNJR05FRF9CWVRFLHRoaXMuZGF0YSkpO319Y29uc3Qgaz1cIm1hcGxpYnJlX3ByZWxvYWRlZF93b3JrZXJfcG9vbFwiO2NsYXNzIEx7Y29uc3RydWN0b3IoKXt0aGlzLmFjdGl2ZT17fTt9YWNxdWlyZSh0KXtpZighdGhpcy53b3JrZXJzKWZvcih0aGlzLndvcmtlcnM9W107dGhpcy53b3JrZXJzLmxlbmd0aDxMLndvcmtlckNvdW50Oyl0aGlzLndvcmtlcnMucHVzaChuZXcgV29ya2VyKGUuYS5XT1JLRVJfVVJMKSk7cmV0dXJuIHRoaXMuYWN0aXZlW3RdPSEwLHRoaXMud29ya2Vycy5zbGljZSgpfXJlbGVhc2UodCl7ZGVsZXRlIHRoaXMuYWN0aXZlW3RdLDA9PT10aGlzLm51bUFjdGl2ZSgpJiYodGhpcy53b3JrZXJzLmZvckVhY2goKHQ9Pnt0LnRlcm1pbmF0ZSgpO30pKSx0aGlzLndvcmtlcnM9bnVsbCk7fWlzUHJlbG9hZGVkKCl7cmV0dXJuICEhdGhpcy5hY3RpdmVba119bnVtQWN0aXZlKCl7cmV0dXJuIE9iamVjdC5rZXlzKHRoaXMuYWN0aXZlKS5sZW5ndGh9fWNvbnN0IEY9TWF0aC5mbG9vcihvLmhhcmR3YXJlQ29uY3VycmVuY3kvMik7bGV0IEIsTztmdW5jdGlvbiBOKCl7cmV0dXJuIEJ8fChCPW5ldyBMKSxCfUwud29ya2VyQ291bnQ9ZS5DKGdsb2JhbFRoaXMpP01hdGgubWF4KE1hdGgubWluKEYsMyksMSk6MTtjbGFzcyBVe2NvbnN0cnVjdG9yKHQsaSl7dGhpcy53b3JrZXJQb29sPXQsdGhpcy5hY3RvcnM9W10sdGhpcy5jdXJyZW50QWN0b3I9MCx0aGlzLmlkPWk7Y29uc3QgYT10aGlzLndvcmtlclBvb2wuYWNxdWlyZShpKTtmb3IobGV0IHQ9MDt0PGEubGVuZ3RoO3QrKyl7Y29uc3Qgcz1uZXcgZS5GKGFbdF0saSk7cy5uYW1lPWBXb3JrZXIgJHt0fWAsdGhpcy5hY3RvcnMucHVzaChzKTt9aWYoIXRoaXMuYWN0b3JzLmxlbmd0aCl0aHJvdyBuZXcgRXJyb3IoXCJObyBhY3RvcnMgZm91bmRcIil9YnJvYWRjYXN0KHQsZSl7Y29uc3QgaT1bXTtmb3IoY29uc3QgYSBvZiB0aGlzLmFjdG9ycylpLnB1c2goYS5zZW5kQXN5bmMoe3R5cGU6dCxkYXRhOmV9KSk7cmV0dXJuIFByb21pc2UuYWxsKGkpfWdldEFjdG9yKCl7cmV0dXJuIHRoaXMuY3VycmVudEFjdG9yPSh0aGlzLmN1cnJlbnRBY3RvcisxKSV0aGlzLmFjdG9ycy5sZW5ndGgsdGhpcy5hY3RvcnNbdGhpcy5jdXJyZW50QWN0b3JdfXJlbW92ZSh0PSEwKXt0aGlzLmFjdG9ycy5mb3JFYWNoKCh0PT57dC5yZW1vdmUoKTt9KSksdGhpcy5hY3RvcnM9W10sdCYmdGhpcy53b3JrZXJQb29sLnJlbGVhc2UodGhpcy5pZCk7fXJlZ2lzdGVyTWVzc2FnZUhhbmRsZXIodCxlKXtmb3IoY29uc3QgaSBvZiB0aGlzLmFjdG9ycylpLnJlZ2lzdGVyTWVzc2FnZUhhbmRsZXIodCxlKTt9fWZ1bmN0aW9uIGooKXtyZXR1cm4gT3x8KE89bmV3IFUoTigpLGUuRyksTy5yZWdpc3Rlck1lc3NhZ2VIYW5kbGVyKFwiR1JcIiwoKHQsaSxhKT0+ZS5tKGksYSkpKSksT31mdW5jdGlvbiBaKHQsaSl7Y29uc3QgYT1lLkgoKTtyZXR1cm4gZS5KKGEsYSxbMSwxLDBdKSxlLksoYSxhLFsuNSp0LndpZHRoLC41KnQuaGVpZ2h0LDFdKSxlLkwoYSxhLHQuY2FsY3VsYXRlUG9zTWF0cml4KGkudG9VbndyYXBwZWQoKSkpfWZ1bmN0aW9uIHEodCxlLGksYSxzLG8pe2NvbnN0IHI9ZnVuY3Rpb24odCxlLGkpe2lmKHQpZm9yKGNvbnN0IGEgb2YgdCl7Y29uc3QgdD1lW2FdO2lmKHQmJnQuc291cmNlPT09aSYmXCJmaWxsLWV4dHJ1c2lvblwiPT09dC50eXBlKXJldHVybiAhMH1lbHNlIGZvcihjb25zdCB0IGluIGUpe2NvbnN0IGE9ZVt0XTtpZihhLnNvdXJjZT09PWkmJlwiZmlsbC1leHRydXNpb25cIj09PWEudHlwZSlyZXR1cm4gITB9cmV0dXJuICExfShzJiZzLmxheWVycyxlLHQuaWQpLG49by5tYXhQaXRjaFNjYWxlRmFjdG9yKCksbD10LnRpbGVzSW4oYSxuLHIpO2wuc29ydChWKTtjb25zdCBoPVtdO2Zvcihjb25zdCBhIG9mIGwpaC5wdXNoKHt3cmFwcGVkVGlsZUlEOmEudGlsZUlELndyYXBwZWQoKS5rZXkscXVlcnlSZXN1bHRzOmEudGlsZS5xdWVyeVJlbmRlcmVkRmVhdHVyZXMoZSxpLHQuX3N0YXRlLGEucXVlcnlHZW9tZXRyeSxhLmNhbWVyYVF1ZXJ5R2VvbWV0cnksYS5zY2FsZSxzLG8sbixaKHQudHJhbnNmb3JtLGEudGlsZUlEKSl9KTtjb25zdCBjPWZ1bmN0aW9uKHQpe2NvbnN0IGU9e30saT17fTtmb3IoY29uc3QgYSBvZiB0KXtjb25zdCB0PWEucXVlcnlSZXN1bHRzLHM9YS53cmFwcGVkVGlsZUlELG89aVtzXT1pW3NdfHx7fTtmb3IoY29uc3QgaSBpbiB0KXtjb25zdCBhPXRbaV0scz1vW2ldPW9baV18fHt9LHI9ZVtpXT1lW2ldfHxbXTtmb3IoY29uc3QgdCBvZiBhKXNbdC5mZWF0dXJlSW5kZXhdfHwoc1t0LmZlYXR1cmVJbmRleF09ITAsci5wdXNoKHQpKTt9fXJldHVybiBlfShoKTtmb3IoY29uc3QgZSBpbiBjKWNbZV0uZm9yRWFjaCgoZT0+e2NvbnN0IGk9ZS5mZWF0dXJlLGE9dC5nZXRGZWF0dXJlU3RhdGUoaS5sYXllcltcInNvdXJjZS1sYXllclwiXSxpLmlkKTtpLnNvdXJjZT1pLmxheWVyLnNvdXJjZSxpLmxheWVyW1wic291cmNlLWxheWVyXCJdJiYoaS5zb3VyY2VMYXllcj1pLmxheWVyW1wic291cmNlLWxheWVyXCJdKSxpLnN0YXRlPWE7fSkpO3JldHVybiBjfWZ1bmN0aW9uIFYodCxlKXtjb25zdCBpPXQudGlsZUlELGE9ZS50aWxlSUQ7cmV0dXJuIGkub3ZlcnNjYWxlZFotYS5vdmVyc2NhbGVkWnx8aS5jYW5vbmljYWwueS1hLmNhbm9uaWNhbC55fHxpLndyYXAtYS53cmFwfHxpLmNhbm9uaWNhbC54LWEuY2Fub25pY2FsLnh9ZnVuY3Rpb24gRyh0LGksYSl7cmV0dXJuIGUuXyh0aGlzLHZvaWQgMCx2b2lkIDAsKGZ1bmN0aW9uKigpe2xldCBzPXQ7aWYodC51cmw/cz0oeWllbGQgZS5oKGkudHJhbnNmb3JtUmVxdWVzdCh0LnVybCxcIlNvdXJjZVwiKSxhKSkuZGF0YTp5aWVsZCBvLmZyYW1lQXN5bmMoYSksIXMpcmV0dXJuIG51bGw7Y29uc3Qgcj1lLk0oZS5lKHMsdCksW1widGlsZXNcIixcIm1pbnpvb21cIixcIm1heHpvb21cIixcImF0dHJpYnV0aW9uXCIsXCJib3VuZHNcIixcInNjaGVtZVwiLFwidGlsZVNpemVcIixcImVuY29kaW5nXCJdKTtyZXR1cm4gXCJ2ZWN0b3JfbGF5ZXJzXCJpbiBzJiZzLnZlY3Rvcl9sYXllcnMmJihyLnZlY3RvckxheWVySWRzPXMudmVjdG9yX2xheWVycy5tYXAoKHQ9PnQuaWQpKSkscn0pKX1jbGFzcyBIe2NvbnN0cnVjdG9yKHQsZSl7dCYmKGU/dGhpcy5zZXRTb3V0aFdlc3QodCkuc2V0Tm9ydGhFYXN0KGUpOkFycmF5LmlzQXJyYXkodCkmJig0PT09dC5sZW5ndGg/dGhpcy5zZXRTb3V0aFdlc3QoW3RbMF0sdFsxXV0pLnNldE5vcnRoRWFzdChbdFsyXSx0WzNdXSk6dGhpcy5zZXRTb3V0aFdlc3QodFswXSkuc2V0Tm9ydGhFYXN0KHRbMV0pKSk7fXNldE5vcnRoRWFzdCh0KXtyZXR1cm4gdGhpcy5fbmU9dCBpbnN0YW5jZW9mIGUuTj9uZXcgZS5OKHQubG5nLHQubGF0KTplLk4uY29udmVydCh0KSx0aGlzfXNldFNvdXRoV2VzdCh0KXtyZXR1cm4gdGhpcy5fc3c9dCBpbnN0YW5jZW9mIGUuTj9uZXcgZS5OKHQubG5nLHQubGF0KTplLk4uY29udmVydCh0KSx0aGlzfWV4dGVuZCh0KXtjb25zdCBpPXRoaXMuX3N3LGE9dGhpcy5fbmU7bGV0IHMsbztpZih0IGluc3RhbmNlb2YgZS5OKXM9dCxvPXQ7ZWxzZSB7aWYoISh0IGluc3RhbmNlb2YgSCkpcmV0dXJuIEFycmF5LmlzQXJyYXkodCk/ND09PXQubGVuZ3RofHx0LmV2ZXJ5KEFycmF5LmlzQXJyYXkpP3RoaXMuZXh0ZW5kKEguY29udmVydCh0KSk6dGhpcy5leHRlbmQoZS5OLmNvbnZlcnQodCkpOnQmJihcImxuZ1wiaW4gdHx8XCJsb25cImluIHQpJiZcImxhdFwiaW4gdD90aGlzLmV4dGVuZChlLk4uY29udmVydCh0KSk6dGhpcztpZihzPXQuX3N3LG89dC5fbmUsIXN8fCFvKXJldHVybiB0aGlzfXJldHVybiBpfHxhPyhpLmxuZz1NYXRoLm1pbihzLmxuZyxpLmxuZyksaS5sYXQ9TWF0aC5taW4ocy5sYXQsaS5sYXQpLGEubG5nPU1hdGgubWF4KG8ubG5nLGEubG5nKSxhLmxhdD1NYXRoLm1heChvLmxhdCxhLmxhdCkpOih0aGlzLl9zdz1uZXcgZS5OKHMubG5nLHMubGF0KSx0aGlzLl9uZT1uZXcgZS5OKG8ubG5nLG8ubGF0KSksdGhpc31nZXRDZW50ZXIoKXtyZXR1cm4gbmV3IGUuTigodGhpcy5fc3cubG5nK3RoaXMuX25lLmxuZykvMiwodGhpcy5fc3cubGF0K3RoaXMuX25lLmxhdCkvMil9Z2V0U291dGhXZXN0KCl7cmV0dXJuIHRoaXMuX3N3fWdldE5vcnRoRWFzdCgpe3JldHVybiB0aGlzLl9uZX1nZXROb3J0aFdlc3QoKXtyZXR1cm4gbmV3IGUuTih0aGlzLmdldFdlc3QoKSx0aGlzLmdldE5vcnRoKCkpfWdldFNvdXRoRWFzdCgpe3JldHVybiBuZXcgZS5OKHRoaXMuZ2V0RWFzdCgpLHRoaXMuZ2V0U291dGgoKSl9Z2V0V2VzdCgpe3JldHVybiB0aGlzLl9zdy5sbmd9Z2V0U291dGgoKXtyZXR1cm4gdGhpcy5fc3cubGF0fWdldEVhc3QoKXtyZXR1cm4gdGhpcy5fbmUubG5nfWdldE5vcnRoKCl7cmV0dXJuIHRoaXMuX25lLmxhdH10b0FycmF5KCl7cmV0dXJuIFt0aGlzLl9zdy50b0FycmF5KCksdGhpcy5fbmUudG9BcnJheSgpXX10b1N0cmluZygpe3JldHVybiBgTG5nTGF0Qm91bmRzKCR7dGhpcy5fc3cudG9TdHJpbmcoKX0sICR7dGhpcy5fbmUudG9TdHJpbmcoKX0pYH1pc0VtcHR5KCl7cmV0dXJuICEodGhpcy5fc3cmJnRoaXMuX25lKX1jb250YWlucyh0KXtjb25zdHtsbmc6aSxsYXQ6YX09ZS5OLmNvbnZlcnQodCk7bGV0IHM9dGhpcy5fc3cubG5nPD1pJiZpPD10aGlzLl9uZS5sbmc7cmV0dXJuIHRoaXMuX3N3LmxuZz50aGlzLl9uZS5sbmcmJihzPXRoaXMuX3N3LmxuZz49aSYmaT49dGhpcy5fbmUubG5nKSx0aGlzLl9zdy5sYXQ8PWEmJmE8PXRoaXMuX25lLmxhdCYmc31zdGF0aWMgY29udmVydCh0KXtyZXR1cm4gdCBpbnN0YW5jZW9mIEg/dDp0P25ldyBIKHQpOnR9c3RhdGljIGZyb21MbmdMYXQodCxpPTApe2NvbnN0IGE9MzYwKmkvNDAwNzUwMTcscz1hL01hdGguY29zKE1hdGguUEkvMTgwKnQubGF0KTtyZXR1cm4gbmV3IEgobmV3IGUuTih0LmxuZy1zLHQubGF0LWEpLG5ldyBlLk4odC5sbmcrcyx0LmxhdCthKSl9YWRqdXN0QW50aU1lcmlkaWFuKCl7Y29uc3QgdD1uZXcgZS5OKHRoaXMuX3N3LmxuZyx0aGlzLl9zdy5sYXQpLGk9bmV3IGUuTih0aGlzLl9uZS5sbmcsdGhpcy5fbmUubGF0KTtyZXR1cm4gbmV3IEgodCx0LmxuZz5pLmxuZz9uZXcgZS5OKGkubG5nKzM2MCxpLmxhdCk6aSl9fWNsYXNzIFd7Y29uc3RydWN0b3IodCxlLGkpe3RoaXMuYm91bmRzPUguY29udmVydCh0aGlzLnZhbGlkYXRlQm91bmRzKHQpKSx0aGlzLm1pbnpvb209ZXx8MCx0aGlzLm1heHpvb209aXx8MjQ7fXZhbGlkYXRlQm91bmRzKHQpe3JldHVybiBBcnJheS5pc0FycmF5KHQpJiY0PT09dC5sZW5ndGg/W01hdGgubWF4KC0xODAsdFswXSksTWF0aC5tYXgoLTkwLHRbMV0pLE1hdGgubWluKDE4MCx0WzJdKSxNYXRoLm1pbig5MCx0WzNdKV06Wy0xODAsLTkwLDE4MCw5MF19Y29udGFpbnModCl7Y29uc3QgaT1NYXRoLnBvdygyLHQueiksYT1NYXRoLmZsb29yKGUuTyh0aGlzLmJvdW5kcy5nZXRXZXN0KCkpKmkpLHM9TWF0aC5mbG9vcihlLlEodGhpcy5ib3VuZHMuZ2V0Tm9ydGgoKSkqaSksbz1NYXRoLmNlaWwoZS5PKHRoaXMuYm91bmRzLmdldEVhc3QoKSkqaSkscj1NYXRoLmNlaWwoZS5RKHRoaXMuYm91bmRzLmdldFNvdXRoKCkpKmkpO3JldHVybiB0Lng+PWEmJnQueDxvJiZ0Lnk+PXMmJnQueTxyfX1jbGFzcyAkIGV4dGVuZHMgZS5Fe2NvbnN0cnVjdG9yKHQsaSxhLHMpe2lmKHN1cGVyKCksdGhpcy5pZD10LHRoaXMuZGlzcGF0Y2hlcj1hLHRoaXMudHlwZT1cInZlY3RvclwiLHRoaXMubWluem9vbT0wLHRoaXMubWF4em9vbT0yMix0aGlzLnNjaGVtZT1cInh5elwiLHRoaXMudGlsZVNpemU9NTEyLHRoaXMucmVwYXJzZU92ZXJzY2FsZWQ9ITAsdGhpcy5pc1RpbGVDbGlwcGVkPSEwLHRoaXMuX2xvYWRlZD0hMSxlLmUodGhpcyxlLk0oaSxbXCJ1cmxcIixcInNjaGVtZVwiLFwidGlsZVNpemVcIixcInByb21vdGVJZFwiXSkpLHRoaXMuX29wdGlvbnM9ZS5lKHt0eXBlOlwidmVjdG9yXCJ9LGkpLHRoaXMuX2NvbGxlY3RSZXNvdXJjZVRpbWluZz1pLmNvbGxlY3RSZXNvdXJjZVRpbWluZyw1MTIhPT10aGlzLnRpbGVTaXplKXRocm93IG5ldyBFcnJvcihcInZlY3RvciB0aWxlIHNvdXJjZXMgbXVzdCBoYXZlIGEgdGlsZVNpemUgb2YgNTEyXCIpO3RoaXMuc2V0RXZlbnRlZFBhcmVudChzKTt9bG9hZCgpe3JldHVybiBlLl8odGhpcyx2b2lkIDAsdm9pZCAwLChmdW5jdGlvbiooKXt0aGlzLl9sb2FkZWQ9ITEsdGhpcy5maXJlKG5ldyBlLmsoXCJkYXRhbG9hZGluZ1wiLHtkYXRhVHlwZTpcInNvdXJjZVwifSkpLHRoaXMuX3RpbGVKU09OUmVxdWVzdD1uZXcgQWJvcnRDb250cm9sbGVyO3RyeXtjb25zdCB0PXlpZWxkIEcodGhpcy5fb3B0aW9ucyx0aGlzLm1hcC5fcmVxdWVzdE1hbmFnZXIsdGhpcy5fdGlsZUpTT05SZXF1ZXN0KTt0aGlzLl90aWxlSlNPTlJlcXVlc3Q9bnVsbCx0aGlzLl9sb2FkZWQ9ITAsdGhpcy5tYXAuc3R5bGUuc291cmNlQ2FjaGVzW3RoaXMuaWRdLmNsZWFyVGlsZXMoKSx0JiYoZS5lKHRoaXMsdCksdC5ib3VuZHMmJih0aGlzLnRpbGVCb3VuZHM9bmV3IFcodC5ib3VuZHMsdGhpcy5taW56b29tLHRoaXMubWF4em9vbSkpLHRoaXMuZmlyZShuZXcgZS5rKFwiZGF0YVwiLHtkYXRhVHlwZTpcInNvdXJjZVwiLHNvdXJjZURhdGFUeXBlOlwibWV0YWRhdGFcIn0pKSx0aGlzLmZpcmUobmV3IGUuayhcImRhdGFcIix7ZGF0YVR5cGU6XCJzb3VyY2VcIixzb3VyY2VEYXRhVHlwZTpcImNvbnRlbnRcIn0pKSk7fWNhdGNoKHQpe3RoaXMuX3RpbGVKU09OUmVxdWVzdD1udWxsLHRoaXMuZmlyZShuZXcgZS5qKHQpKTt9fSkpfWxvYWRlZCgpe3JldHVybiB0aGlzLl9sb2FkZWR9aGFzVGlsZSh0KXtyZXR1cm4gIXRoaXMudGlsZUJvdW5kc3x8dGhpcy50aWxlQm91bmRzLmNvbnRhaW5zKHQuY2Fub25pY2FsKX1vbkFkZCh0KXt0aGlzLm1hcD10LHRoaXMubG9hZCgpO31zZXRTb3VyY2VQcm9wZXJ0eSh0KXt0aGlzLl90aWxlSlNPTlJlcXVlc3QmJnRoaXMuX3RpbGVKU09OUmVxdWVzdC5hYm9ydCgpLHQoKSx0aGlzLmxvYWQoKTt9c2V0VGlsZXModCl7cmV0dXJuIHRoaXMuc2V0U291cmNlUHJvcGVydHkoKCgpPT57dGhpcy5fb3B0aW9ucy50aWxlcz10O30pKSx0aGlzfXNldFVybCh0KXtyZXR1cm4gdGhpcy5zZXRTb3VyY2VQcm9wZXJ0eSgoKCk9Pnt0aGlzLnVybD10LHRoaXMuX29wdGlvbnMudXJsPXQ7fSkpLHRoaXN9b25SZW1vdmUoKXt0aGlzLl90aWxlSlNPTlJlcXVlc3QmJih0aGlzLl90aWxlSlNPTlJlcXVlc3QuYWJvcnQoKSx0aGlzLl90aWxlSlNPTlJlcXVlc3Q9bnVsbCk7fXNlcmlhbGl6ZSgpe3JldHVybiBlLmUoe30sdGhpcy5fb3B0aW9ucyl9bG9hZFRpbGUodCl7cmV0dXJuIGUuXyh0aGlzLHZvaWQgMCx2b2lkIDAsKGZ1bmN0aW9uKigpe2NvbnN0IGU9dC50aWxlSUQuY2Fub25pY2FsLnVybCh0aGlzLnRpbGVzLHRoaXMubWFwLmdldFBpeGVsUmF0aW8oKSx0aGlzLnNjaGVtZSksaT17cmVxdWVzdDp0aGlzLm1hcC5fcmVxdWVzdE1hbmFnZXIudHJhbnNmb3JtUmVxdWVzdChlLFwiVGlsZVwiKSx1aWQ6dC51aWQsdGlsZUlEOnQudGlsZUlELHpvb206dC50aWxlSUQub3ZlcnNjYWxlZFosdGlsZVNpemU6dGhpcy50aWxlU2l6ZSp0LnRpbGVJRC5vdmVyc2NhbGVGYWN0b3IoKSx0eXBlOnRoaXMudHlwZSxzb3VyY2U6dGhpcy5pZCxwaXhlbFJhdGlvOnRoaXMubWFwLmdldFBpeGVsUmF0aW8oKSxzaG93Q29sbGlzaW9uQm94ZXM6dGhpcy5tYXAuc2hvd0NvbGxpc2lvbkJveGVzLHByb21vdGVJZDp0aGlzLnByb21vdGVJZH07aS5yZXF1ZXN0LmNvbGxlY3RSZXNvdXJjZVRpbWluZz10aGlzLl9jb2xsZWN0UmVzb3VyY2VUaW1pbmc7bGV0IGE9XCJSVFwiO2lmKHQuYWN0b3ImJlwiZXhwaXJlZFwiIT09dC5zdGF0ZSl7aWYoXCJsb2FkaW5nXCI9PT10LnN0YXRlKXJldHVybiBuZXcgUHJvbWlzZSgoKGUsaSk9Pnt0LnJlbG9hZFByb21pc2U9e3Jlc29sdmU6ZSxyZWplY3Q6aX07fSkpfWVsc2UgdC5hY3Rvcj10aGlzLmRpc3BhdGNoZXIuZ2V0QWN0b3IoKSxhPVwiTFRcIjt0LmFib3J0Q29udHJvbGxlcj1uZXcgQWJvcnRDb250cm9sbGVyO3RyeXtjb25zdCBlPXlpZWxkIHQuYWN0b3Iuc2VuZEFzeW5jKHt0eXBlOmEsZGF0YTppfSx0LmFib3J0Q29udHJvbGxlcik7aWYoZGVsZXRlIHQuYWJvcnRDb250cm9sbGVyLHQuYWJvcnRlZClyZXR1cm47dGhpcy5fYWZ0ZXJUaWxlTG9hZFdvcmtlclJlc3BvbnNlKHQsZSk7fWNhdGNoKGUpe2lmKGRlbGV0ZSB0LmFib3J0Q29udHJvbGxlcix0LmFib3J0ZWQpcmV0dXJuO2lmKGUmJjQwNCE9PWUuc3RhdHVzKXRocm93IGU7dGhpcy5fYWZ0ZXJUaWxlTG9hZFdvcmtlclJlc3BvbnNlKHQsbnVsbCk7fX0pKX1fYWZ0ZXJUaWxlTG9hZFdvcmtlclJlc3BvbnNlKHQsZSl7aWYoZSYmZS5yZXNvdXJjZVRpbWluZyYmKHQucmVzb3VyY2VUaW1pbmc9ZS5yZXNvdXJjZVRpbWluZyksZSYmdGhpcy5tYXAuX3JlZnJlc2hFeHBpcmVkVGlsZXMmJnQuc2V0RXhwaXJ5RGF0YShlKSx0LmxvYWRWZWN0b3JEYXRhKGUsdGhpcy5tYXAucGFpbnRlciksdC5yZWxvYWRQcm9taXNlKXtjb25zdCBlPXQucmVsb2FkUHJvbWlzZTt0LnJlbG9hZFByb21pc2U9bnVsbCx0aGlzLmxvYWRUaWxlKHQpLnRoZW4oZS5yZXNvbHZlKS5jYXRjaChlLnJlamVjdCk7fX1hYm9ydFRpbGUodCl7cmV0dXJuIGUuXyh0aGlzLHZvaWQgMCx2b2lkIDAsKGZ1bmN0aW9uKigpe3QuYWJvcnRDb250cm9sbGVyJiYodC5hYm9ydENvbnRyb2xsZXIuYWJvcnQoKSxkZWxldGUgdC5hYm9ydENvbnRyb2xsZXIpLHQuYWN0b3ImJih5aWVsZCB0LmFjdG9yLnNlbmRBc3luYyh7dHlwZTpcIkFUXCIsZGF0YTp7dWlkOnQudWlkLHR5cGU6dGhpcy50eXBlLHNvdXJjZTp0aGlzLmlkfX0pKTt9KSl9dW5sb2FkVGlsZSh0KXtyZXR1cm4gZS5fKHRoaXMsdm9pZCAwLHZvaWQgMCwoZnVuY3Rpb24qKCl7dC51bmxvYWRWZWN0b3JEYXRhKCksdC5hY3RvciYmKHlpZWxkIHQuYWN0b3Iuc2VuZEFzeW5jKHt0eXBlOlwiUk1UXCIsZGF0YTp7dWlkOnQudWlkLHR5cGU6dGhpcy50eXBlLHNvdXJjZTp0aGlzLmlkfX0pKTt9KSl9aGFzVHJhbnNpdGlvbigpe3JldHVybiAhMX19Y2xhc3MgWCBleHRlbmRzIGUuRXtjb25zdHJ1Y3Rvcih0LGksYSxzKXtzdXBlcigpLHRoaXMuaWQ9dCx0aGlzLmRpc3BhdGNoZXI9YSx0aGlzLnNldEV2ZW50ZWRQYXJlbnQocyksdGhpcy50eXBlPVwicmFzdGVyXCIsdGhpcy5taW56b29tPTAsdGhpcy5tYXh6b29tPTIyLHRoaXMucm91bmRab29tPSEwLHRoaXMuc2NoZW1lPVwieHl6XCIsdGhpcy50aWxlU2l6ZT01MTIsdGhpcy5fbG9hZGVkPSExLHRoaXMuX29wdGlvbnM9ZS5lKHt0eXBlOlwicmFzdGVyXCJ9LGkpLGUuZSh0aGlzLGUuTShpLFtcInVybFwiLFwic2NoZW1lXCIsXCJ0aWxlU2l6ZVwiXSkpO31sb2FkKCl7cmV0dXJuIGUuXyh0aGlzLHZvaWQgMCx2b2lkIDAsKGZ1bmN0aW9uKigpe3RoaXMuX2xvYWRlZD0hMSx0aGlzLmZpcmUobmV3IGUuayhcImRhdGFsb2FkaW5nXCIse2RhdGFUeXBlOlwic291cmNlXCJ9KSksdGhpcy5fdGlsZUpTT05SZXF1ZXN0PW5ldyBBYm9ydENvbnRyb2xsZXI7dHJ5e2NvbnN0IHQ9eWllbGQgRyh0aGlzLl9vcHRpb25zLHRoaXMubWFwLl9yZXF1ZXN0TWFuYWdlcix0aGlzLl90aWxlSlNPTlJlcXVlc3QpO3RoaXMuX3RpbGVKU09OUmVxdWVzdD1udWxsLHRoaXMuX2xvYWRlZD0hMCx0JiYoZS5lKHRoaXMsdCksdC5ib3VuZHMmJih0aGlzLnRpbGVCb3VuZHM9bmV3IFcodC5ib3VuZHMsdGhpcy5taW56b29tLHRoaXMubWF4em9vbSkpLHRoaXMuZmlyZShuZXcgZS5rKFwiZGF0YVwiLHtkYXRhVHlwZTpcInNvdXJjZVwiLHNvdXJjZURhdGFUeXBlOlwibWV0YWRhdGFcIn0pKSx0aGlzLmZpcmUobmV3IGUuayhcImRhdGFcIix7ZGF0YVR5cGU6XCJzb3VyY2VcIixzb3VyY2VEYXRhVHlwZTpcImNvbnRlbnRcIn0pKSk7fWNhdGNoKHQpe3RoaXMuX3RpbGVKU09OUmVxdWVzdD1udWxsLHRoaXMuZmlyZShuZXcgZS5qKHQpKTt9fSkpfWxvYWRlZCgpe3JldHVybiB0aGlzLl9sb2FkZWR9b25BZGQodCl7dGhpcy5tYXA9dCx0aGlzLmxvYWQoKTt9b25SZW1vdmUoKXt0aGlzLl90aWxlSlNPTlJlcXVlc3QmJih0aGlzLl90aWxlSlNPTlJlcXVlc3QuYWJvcnQoKSx0aGlzLl90aWxlSlNPTlJlcXVlc3Q9bnVsbCk7fXNldFNvdXJjZVByb3BlcnR5KHQpe3RoaXMuX3RpbGVKU09OUmVxdWVzdCYmKHRoaXMuX3RpbGVKU09OUmVxdWVzdC5hYm9ydCgpLHRoaXMuX3RpbGVKU09OUmVxdWVzdD1udWxsKSx0KCksdGhpcy5sb2FkKCk7fXNldFRpbGVzKHQpe3JldHVybiB0aGlzLnNldFNvdXJjZVByb3BlcnR5KCgoKT0+e3RoaXMuX29wdGlvbnMudGlsZXM9dDt9KSksdGhpc31zZXRVcmwodCl7cmV0dXJuIHRoaXMuc2V0U291cmNlUHJvcGVydHkoKCgpPT57dGhpcy51cmw9dCx0aGlzLl9vcHRpb25zLnVybD10O30pKSx0aGlzfXNlcmlhbGl6ZSgpe3JldHVybiBlLmUoe30sdGhpcy5fb3B0aW9ucyl9aGFzVGlsZSh0KXtyZXR1cm4gIXRoaXMudGlsZUJvdW5kc3x8dGhpcy50aWxlQm91bmRzLmNvbnRhaW5zKHQuY2Fub25pY2FsKX1sb2FkVGlsZSh0KXtyZXR1cm4gZS5fKHRoaXMsdm9pZCAwLHZvaWQgMCwoZnVuY3Rpb24qKCl7Y29uc3QgZT10LnRpbGVJRC5jYW5vbmljYWwudXJsKHRoaXMudGlsZXMsdGhpcy5tYXAuZ2V0UGl4ZWxSYXRpbygpLHRoaXMuc2NoZW1lKTt0LmFib3J0Q29udHJvbGxlcj1uZXcgQWJvcnRDb250cm9sbGVyO3RyeXtjb25zdCBpPXlpZWxkIF8uZ2V0SW1hZ2UodGhpcy5tYXAuX3JlcXVlc3RNYW5hZ2VyLnRyYW5zZm9ybVJlcXVlc3QoZSxcIlRpbGVcIiksdC5hYm9ydENvbnRyb2xsZXIsdGhpcy5tYXAuX3JlZnJlc2hFeHBpcmVkVGlsZXMpO2lmKGRlbGV0ZSB0LmFib3J0Q29udHJvbGxlcix0LmFib3J0ZWQpcmV0dXJuIHZvaWQodC5zdGF0ZT1cInVubG9hZGVkXCIpO2lmKGkmJmkuZGF0YSl7dGhpcy5tYXAuX3JlZnJlc2hFeHBpcmVkVGlsZXMmJmkuY2FjaGVDb250cm9sJiZpLmV4cGlyZXMmJnQuc2V0RXhwaXJ5RGF0YSh7Y2FjaGVDb250cm9sOmkuY2FjaGVDb250cm9sLGV4cGlyZXM6aS5leHBpcmVzfSk7Y29uc3QgZT10aGlzLm1hcC5wYWludGVyLmNvbnRleHQsYT1lLmdsLHM9aS5kYXRhO3QudGV4dHVyZT10aGlzLm1hcC5wYWludGVyLmdldFRpbGVUZXh0dXJlKHMud2lkdGgpLHQudGV4dHVyZT90LnRleHR1cmUudXBkYXRlKHMse3VzZU1pcG1hcDohMH0pOih0LnRleHR1cmU9bmV3IGIoZSxzLGEuUkdCQSx7dXNlTWlwbWFwOiEwfSksdC50ZXh0dXJlLmJpbmQoYS5MSU5FQVIsYS5DTEFNUF9UT19FREdFLGEuTElORUFSX01JUE1BUF9ORUFSRVNUKSksdC5zdGF0ZT1cImxvYWRlZFwiO319Y2F0Y2goZSl7aWYoZGVsZXRlIHQuYWJvcnRDb250cm9sbGVyLHQuYWJvcnRlZCl0LnN0YXRlPVwidW5sb2FkZWRcIjtlbHNlIGlmKGUpdGhyb3cgdC5zdGF0ZT1cImVycm9yZWRcIixlfX0pKX1hYm9ydFRpbGUodCl7cmV0dXJuIGUuXyh0aGlzLHZvaWQgMCx2b2lkIDAsKGZ1bmN0aW9uKigpe3QuYWJvcnRDb250cm9sbGVyJiYodC5hYm9ydENvbnRyb2xsZXIuYWJvcnQoKSxkZWxldGUgdC5hYm9ydENvbnRyb2xsZXIpO30pKX11bmxvYWRUaWxlKHQpe3JldHVybiBlLl8odGhpcyx2b2lkIDAsdm9pZCAwLChmdW5jdGlvbiooKXt0LnRleHR1cmUmJnRoaXMubWFwLnBhaW50ZXIuc2F2ZVRpbGVUZXh0dXJlKHQudGV4dHVyZSk7fSkpfWhhc1RyYW5zaXRpb24oKXtyZXR1cm4gITF9fWNsYXNzIEsgZXh0ZW5kcyBYe2NvbnN0cnVjdG9yKHQsaSxhLHMpe3N1cGVyKHQsaSxhLHMpLHRoaXMudHlwZT1cInJhc3Rlci1kZW1cIix0aGlzLm1heHpvb209MjIsdGhpcy5fb3B0aW9ucz1lLmUoe3R5cGU6XCJyYXN0ZXItZGVtXCJ9LGkpLHRoaXMuZW5jb2Rpbmc9aS5lbmNvZGluZ3x8XCJtYXBib3hcIix0aGlzLnJlZEZhY3Rvcj1pLnJlZEZhY3Rvcix0aGlzLmdyZWVuRmFjdG9yPWkuZ3JlZW5GYWN0b3IsdGhpcy5ibHVlRmFjdG9yPWkuYmx1ZUZhY3Rvcix0aGlzLmJhc2VTaGlmdD1pLmJhc2VTaGlmdDt9bG9hZFRpbGUodCl7cmV0dXJuIGUuXyh0aGlzLHZvaWQgMCx2b2lkIDAsKGZ1bmN0aW9uKigpe2NvbnN0IGk9dC50aWxlSUQuY2Fub25pY2FsLnVybCh0aGlzLnRpbGVzLHRoaXMubWFwLmdldFBpeGVsUmF0aW8oKSx0aGlzLnNjaGVtZSksYT10aGlzLm1hcC5fcmVxdWVzdE1hbmFnZXIudHJhbnNmb3JtUmVxdWVzdChpLFwiVGlsZVwiKTt0Lm5laWdoYm9yaW5nVGlsZXM9dGhpcy5fZ2V0TmVpZ2hib3JpbmdUaWxlcyh0LnRpbGVJRCksdC5hYm9ydENvbnRyb2xsZXI9bmV3IEFib3J0Q29udHJvbGxlcjt0cnl7Y29uc3QgaT15aWVsZCBfLmdldEltYWdlKGEsdC5hYm9ydENvbnRyb2xsZXIsdGhpcy5tYXAuX3JlZnJlc2hFeHBpcmVkVGlsZXMpO2lmKGRlbGV0ZSB0LmFib3J0Q29udHJvbGxlcix0LmFib3J0ZWQpcmV0dXJuIHZvaWQodC5zdGF0ZT1cInVubG9hZGVkXCIpO2lmKGkmJmkuZGF0YSl7Y29uc3QgYT1pLmRhdGE7dGhpcy5tYXAuX3JlZnJlc2hFeHBpcmVkVGlsZXMmJmkuY2FjaGVDb250cm9sJiZpLmV4cGlyZXMmJnQuc2V0RXhwaXJ5RGF0YSh7Y2FjaGVDb250cm9sOmkuY2FjaGVDb250cm9sLGV4cGlyZXM6aS5leHBpcmVzfSk7Y29uc3Qgcz1lLmIoYSkmJmUuVSgpP2E6eWllbGQgdGhpcy5yZWFkSW1hZ2VOb3coYSksbz17dHlwZTp0aGlzLnR5cGUsdWlkOnQudWlkLHNvdXJjZTp0aGlzLmlkLHJhd0ltYWdlRGF0YTpzLGVuY29kaW5nOnRoaXMuZW5jb2RpbmcscmVkRmFjdG9yOnRoaXMucmVkRmFjdG9yLGdyZWVuRmFjdG9yOnRoaXMuZ3JlZW5GYWN0b3IsYmx1ZUZhY3Rvcjp0aGlzLmJsdWVGYWN0b3IsYmFzZVNoaWZ0OnRoaXMuYmFzZVNoaWZ0fTtpZighdC5hY3Rvcnx8XCJleHBpcmVkXCI9PT10LnN0YXRlKXt0LmFjdG9yPXRoaXMuZGlzcGF0Y2hlci5nZXRBY3RvcigpO2NvbnN0IGU9eWllbGQgdC5hY3Rvci5zZW5kQXN5bmMoe3R5cGU6XCJMRFRcIixkYXRhOm99KTt0LmRlbT1lLHQubmVlZHNIaWxsc2hhZGVQcmVwYXJlPSEwLHQubmVlZHNUZXJyYWluUHJlcGFyZT0hMCx0LnN0YXRlPVwibG9hZGVkXCI7fX19Y2F0Y2goZSl7aWYoZGVsZXRlIHQuYWJvcnRDb250cm9sbGVyLHQuYWJvcnRlZCl0LnN0YXRlPVwidW5sb2FkZWRcIjtlbHNlIGlmKGUpdGhyb3cgdC5zdGF0ZT1cImVycm9yZWRcIixlfX0pKX1yZWFkSW1hZ2VOb3codCl7cmV0dXJuIGUuXyh0aGlzLHZvaWQgMCx2b2lkIDAsKGZ1bmN0aW9uKigpe2lmKFwidW5kZWZpbmVkXCIhPXR5cGVvZiBWaWRlb0ZyYW1lJiZlLlYoKSl7Y29uc3QgaT10LndpZHRoKzIsYT10LmhlaWdodCsyO3RyeXtyZXR1cm4gbmV3IGUuUih7d2lkdGg6aSxoZWlnaHQ6YX0seWllbGQgZS5XKHQsLTEsLTEsaSxhKSl9Y2F0Y2godCl7fX1yZXR1cm4gby5nZXRJbWFnZURhdGEodCwxKX0pKX1fZ2V0TmVpZ2hib3JpbmdUaWxlcyh0KXtjb25zdCBpPXQuY2Fub25pY2FsLGE9TWF0aC5wb3coMixpLnopLHM9KGkueC0xK2EpJWEsbz0wPT09aS54P3Qud3JhcC0xOnQud3JhcCxyPShpLngrMSthKSVhLG49aS54KzE9PT1hP3Qud3JhcCsxOnQud3JhcCxsPXt9O3JldHVybiBsW25ldyBlLlModC5vdmVyc2NhbGVkWixvLGkueixzLGkueSkua2V5XT17YmFja2ZpbGxlZDohMX0sbFtuZXcgZS5TKHQub3ZlcnNjYWxlZFosbixpLnoscixpLnkpLmtleV09e2JhY2tmaWxsZWQ6ITF9LGkueT4wJiYobFtuZXcgZS5TKHQub3ZlcnNjYWxlZFosbyxpLnoscyxpLnktMSkua2V5XT17YmFja2ZpbGxlZDohMX0sbFtuZXcgZS5TKHQub3ZlcnNjYWxlZFosdC53cmFwLGkueixpLngsaS55LTEpLmtleV09e2JhY2tmaWxsZWQ6ITF9LGxbbmV3IGUuUyh0Lm92ZXJzY2FsZWRaLG4saS56LHIsaS55LTEpLmtleV09e2JhY2tmaWxsZWQ6ITF9KSxpLnkrMTxhJiYobFtuZXcgZS5TKHQub3ZlcnNjYWxlZFosbyxpLnoscyxpLnkrMSkua2V5XT17YmFja2ZpbGxlZDohMX0sbFtuZXcgZS5TKHQub3ZlcnNjYWxlZFosdC53cmFwLGkueixpLngsaS55KzEpLmtleV09e2JhY2tmaWxsZWQ6ITF9LGxbbmV3IGUuUyh0Lm92ZXJzY2FsZWRaLG4saS56LHIsaS55KzEpLmtleV09e2JhY2tmaWxsZWQ6ITF9KSxsfXVubG9hZFRpbGUodCl7cmV0dXJuIGUuXyh0aGlzLHZvaWQgMCx2b2lkIDAsKGZ1bmN0aW9uKigpe3QuZGVtVGV4dHVyZSYmdGhpcy5tYXAucGFpbnRlci5zYXZlVGlsZVRleHR1cmUodC5kZW1UZXh0dXJlKSx0LmZibyYmKHQuZmJvLmRlc3Ryb3koKSxkZWxldGUgdC5mYm8pLHQuZGVtJiZkZWxldGUgdC5kZW0sZGVsZXRlIHQubmVpZ2hib3JpbmdUaWxlcyx0LnN0YXRlPVwidW5sb2FkZWRcIix0LmFjdG9yJiYoeWllbGQgdC5hY3Rvci5zZW5kQXN5bmMoe3R5cGU6XCJSRFRcIixkYXRhOnt0eXBlOnRoaXMudHlwZSx1aWQ6dC51aWQsc291cmNlOnRoaXMuaWR9fSkpO30pKX19Y2xhc3MgSiBleHRlbmRzIGUuRXtjb25zdHJ1Y3Rvcih0LGksYSxzKXtzdXBlcigpLHRoaXMuaWQ9dCx0aGlzLnR5cGU9XCJnZW9qc29uXCIsdGhpcy5taW56b29tPTAsdGhpcy5tYXh6b29tPTE4LHRoaXMudGlsZVNpemU9NTEyLHRoaXMuaXNUaWxlQ2xpcHBlZD0hMCx0aGlzLnJlcGFyc2VPdmVyc2NhbGVkPSEwLHRoaXMuX3JlbW92ZWQ9ITEsdGhpcy5fcGVuZGluZ0xvYWRzPTAsdGhpcy5hY3Rvcj1hLmdldEFjdG9yKCksdGhpcy5zZXRFdmVudGVkUGFyZW50KHMpLHRoaXMuX2RhdGE9aS5kYXRhLHRoaXMuX29wdGlvbnM9ZS5lKHt9LGkpLHRoaXMuX2NvbGxlY3RSZXNvdXJjZVRpbWluZz1pLmNvbGxlY3RSZXNvdXJjZVRpbWluZyx2b2lkIDAhPT1pLm1heHpvb20mJih0aGlzLm1heHpvb209aS5tYXh6b29tKSxpLnR5cGUmJih0aGlzLnR5cGU9aS50eXBlKSxpLmF0dHJpYnV0aW9uJiYodGhpcy5hdHRyaWJ1dGlvbj1pLmF0dHJpYnV0aW9uKSx0aGlzLnByb21vdGVJZD1pLnByb21vdGVJZDtjb25zdCBvPWUuWC90aGlzLnRpbGVTaXplO3ZvaWQgMCE9PWkuY2x1c3Rlck1heFpvb20mJnRoaXMubWF4em9vbTw9aS5jbHVzdGVyTWF4Wm9vbSYmZS53KGBUaGUgbWF4em9vbSB2YWx1ZSBcIiR7dGhpcy5tYXh6b29tfVwiIGlzIGV4cGVjdGVkIHRvIGJlIGdyZWF0ZXIgdGhhbiB0aGUgY2x1c3Rlck1heFpvb20gdmFsdWUgXCIke2kuY2x1c3Rlck1heFpvb219XCIuYCksdGhpcy53b3JrZXJPcHRpb25zPWUuZSh7c291cmNlOnRoaXMuaWQsY2x1c3RlcjppLmNsdXN0ZXJ8fCExLGdlb2pzb25WdE9wdGlvbnM6e2J1ZmZlcjoodm9pZCAwIT09aS5idWZmZXI/aS5idWZmZXI6MTI4KSpvLHRvbGVyYW5jZToodm9pZCAwIT09aS50b2xlcmFuY2U/aS50b2xlcmFuY2U6LjM3NSkqbyxleHRlbnQ6ZS5YLG1heFpvb206dGhpcy5tYXh6b29tLGxpbmVNZXRyaWNzOmkubGluZU1ldHJpY3N8fCExLGdlbmVyYXRlSWQ6aS5nZW5lcmF0ZUlkfHwhMX0sc3VwZXJjbHVzdGVyT3B0aW9uczp7bWF4Wm9vbTp2b2lkIDAhPT1pLmNsdXN0ZXJNYXhab29tP2kuY2x1c3Rlck1heFpvb206dGhpcy5tYXh6b29tLTEsbWluUG9pbnRzOk1hdGgubWF4KDIsaS5jbHVzdGVyTWluUG9pbnRzfHwyKSxleHRlbnQ6ZS5YLHJhZGl1czooaS5jbHVzdGVyUmFkaXVzfHw1MCkqbyxsb2c6ITEsZ2VuZXJhdGVJZDppLmdlbmVyYXRlSWR8fCExfSxjbHVzdGVyUHJvcGVydGllczppLmNsdXN0ZXJQcm9wZXJ0aWVzLGZpbHRlcjppLmZpbHRlcn0saS53b3JrZXJPcHRpb25zKSxcInN0cmluZ1wiPT10eXBlb2YgdGhpcy5wcm9tb3RlSWQmJih0aGlzLndvcmtlck9wdGlvbnMucHJvbW90ZUlkPXRoaXMucHJvbW90ZUlkKTt9bG9hZCgpe3JldHVybiBlLl8odGhpcyx2b2lkIDAsdm9pZCAwLChmdW5jdGlvbiooKXt5aWVsZCB0aGlzLl91cGRhdGVXb3JrZXJEYXRhKCk7fSkpfW9uQWRkKHQpe3RoaXMubWFwPXQsdGhpcy5sb2FkKCk7fXNldERhdGEodCl7cmV0dXJuIHRoaXMuX2RhdGE9dCx0aGlzLl91cGRhdGVXb3JrZXJEYXRhKCksdGhpc311cGRhdGVEYXRhKHQpe3JldHVybiB0aGlzLl91cGRhdGVXb3JrZXJEYXRhKHQpLHRoaXN9Z2V0RGF0YSgpe3JldHVybiBlLl8odGhpcyx2b2lkIDAsdm9pZCAwLChmdW5jdGlvbiooKXtjb25zdCB0PWUuZSh7dHlwZTp0aGlzLnR5cGV9LHRoaXMud29ya2VyT3B0aW9ucyk7cmV0dXJuIHRoaXMuYWN0b3Iuc2VuZEFzeW5jKHt0eXBlOlwiR0RcIixkYXRhOnR9KX0pKX1zZXRDbHVzdGVyT3B0aW9ucyh0KXtyZXR1cm4gdGhpcy53b3JrZXJPcHRpb25zLmNsdXN0ZXI9dC5jbHVzdGVyLHQmJih2b2lkIDAhPT10LmNsdXN0ZXJSYWRpdXMmJih0aGlzLndvcmtlck9wdGlvbnMuc3VwZXJjbHVzdGVyT3B0aW9ucy5yYWRpdXM9dC5jbHVzdGVyUmFkaXVzKSx2b2lkIDAhPT10LmNsdXN0ZXJNYXhab29tJiYodGhpcy53b3JrZXJPcHRpb25zLnN1cGVyY2x1c3Rlck9wdGlvbnMubWF4Wm9vbT10LmNsdXN0ZXJNYXhab29tKSksdGhpcy5fdXBkYXRlV29ya2VyRGF0YSgpLHRoaXN9Z2V0Q2x1c3RlckV4cGFuc2lvblpvb20odCl7cmV0dXJuIHRoaXMuYWN0b3Iuc2VuZEFzeW5jKHt0eXBlOlwiR0NFWlwiLGRhdGE6e3R5cGU6dGhpcy50eXBlLGNsdXN0ZXJJZDp0LHNvdXJjZTp0aGlzLmlkfX0pfWdldENsdXN0ZXJDaGlsZHJlbih0KXtyZXR1cm4gdGhpcy5hY3Rvci5zZW5kQXN5bmMoe3R5cGU6XCJHQ0NcIixkYXRhOnt0eXBlOnRoaXMudHlwZSxjbHVzdGVySWQ6dCxzb3VyY2U6dGhpcy5pZH19KX1nZXRDbHVzdGVyTGVhdmVzKHQsZSxpKXtyZXR1cm4gdGhpcy5hY3Rvci5zZW5kQXN5bmMoe3R5cGU6XCJHQ0xcIixkYXRhOnt0eXBlOnRoaXMudHlwZSxzb3VyY2U6dGhpcy5pZCxjbHVzdGVySWQ6dCxsaW1pdDplLG9mZnNldDppfX0pfV91cGRhdGVXb3JrZXJEYXRhKHQpe3JldHVybiBlLl8odGhpcyx2b2lkIDAsdm9pZCAwLChmdW5jdGlvbiooKXtjb25zdCBpPWUuZSh7dHlwZTp0aGlzLnR5cGV9LHRoaXMud29ya2VyT3B0aW9ucyk7dD9pLmRhdGFEaWZmPXQ6XCJzdHJpbmdcIj09dHlwZW9mIHRoaXMuX2RhdGE/KGkucmVxdWVzdD10aGlzLm1hcC5fcmVxdWVzdE1hbmFnZXIudHJhbnNmb3JtUmVxdWVzdChvLnJlc29sdmVVUkwodGhpcy5fZGF0YSksXCJTb3VyY2VcIiksaS5yZXF1ZXN0LmNvbGxlY3RSZXNvdXJjZVRpbWluZz10aGlzLl9jb2xsZWN0UmVzb3VyY2VUaW1pbmcpOmkuZGF0YT1KU09OLnN0cmluZ2lmeSh0aGlzLl9kYXRhKSx0aGlzLl9wZW5kaW5nTG9hZHMrKyx0aGlzLmZpcmUobmV3IGUuayhcImRhdGFsb2FkaW5nXCIse2RhdGFUeXBlOlwic291cmNlXCJ9KSk7dHJ5e2NvbnN0IHQ9eWllbGQgdGhpcy5hY3Rvci5zZW5kQXN5bmMoe3R5cGU6XCJMRFwiLGRhdGE6aX0pO2lmKHRoaXMuX3BlbmRpbmdMb2Fkcy0tLHRoaXMuX3JlbW92ZWR8fHQuYWJhbmRvbmVkKXJldHVybiB2b2lkIHRoaXMuZmlyZShuZXcgZS5rKFwiZGF0YWFib3J0XCIse2RhdGFUeXBlOlwic291cmNlXCJ9KSk7bGV0IGE9bnVsbDt0LnJlc291cmNlVGltaW5nJiZ0LnJlc291cmNlVGltaW5nW3RoaXMuaWRdJiYoYT10LnJlc291cmNlVGltaW5nW3RoaXMuaWRdLnNsaWNlKDApKTtjb25zdCBzPXtkYXRhVHlwZTpcInNvdXJjZVwifTt0aGlzLl9jb2xsZWN0UmVzb3VyY2VUaW1pbmcmJmEmJmEubGVuZ3RoPjAmJmUuZShzLHtyZXNvdXJjZVRpbWluZzphfSksdGhpcy5maXJlKG5ldyBlLmsoXCJkYXRhXCIsT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LHMpLHtzb3VyY2VEYXRhVHlwZTpcIm1ldGFkYXRhXCJ9KSkpLHRoaXMuZmlyZShuZXcgZS5rKFwiZGF0YVwiLE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSxzKSx7c291cmNlRGF0YVR5cGU6XCJjb250ZW50XCJ9KSkpO31jYXRjaCh0KXtpZih0aGlzLl9wZW5kaW5nTG9hZHMtLSx0aGlzLl9yZW1vdmVkKXJldHVybiB2b2lkIHRoaXMuZmlyZShuZXcgZS5rKFwiZGF0YWFib3J0XCIse2RhdGFUeXBlOlwic291cmNlXCJ9KSk7dGhpcy5maXJlKG5ldyBlLmoodCkpO319KSl9bG9hZGVkKCl7cmV0dXJuIDA9PT10aGlzLl9wZW5kaW5nTG9hZHN9bG9hZFRpbGUodCl7cmV0dXJuIGUuXyh0aGlzLHZvaWQgMCx2b2lkIDAsKGZ1bmN0aW9uKigpe2NvbnN0IGU9dC5hY3Rvcj9cIlJUXCI6XCJMVFwiO3QuYWN0b3I9dGhpcy5hY3Rvcjtjb25zdCBpPXt0eXBlOnRoaXMudHlwZSx1aWQ6dC51aWQsdGlsZUlEOnQudGlsZUlELHpvb206dC50aWxlSUQub3ZlcnNjYWxlZFosbWF4Wm9vbTp0aGlzLm1heHpvb20sdGlsZVNpemU6dGhpcy50aWxlU2l6ZSxzb3VyY2U6dGhpcy5pZCxwaXhlbFJhdGlvOnRoaXMubWFwLmdldFBpeGVsUmF0aW8oKSxzaG93Q29sbGlzaW9uQm94ZXM6dGhpcy5tYXAuc2hvd0NvbGxpc2lvbkJveGVzLHByb21vdGVJZDp0aGlzLnByb21vdGVJZH07dC5hYm9ydENvbnRyb2xsZXI9bmV3IEFib3J0Q29udHJvbGxlcjtjb25zdCBhPXlpZWxkIHRoaXMuYWN0b3Iuc2VuZEFzeW5jKHt0eXBlOmUsZGF0YTppfSx0LmFib3J0Q29udHJvbGxlcik7ZGVsZXRlIHQuYWJvcnRDb250cm9sbGVyLHQudW5sb2FkVmVjdG9yRGF0YSgpLHQuYWJvcnRlZHx8dC5sb2FkVmVjdG9yRGF0YShhLHRoaXMubWFwLnBhaW50ZXIsXCJSVFwiPT09ZSk7fSkpfWFib3J0VGlsZSh0KXtyZXR1cm4gZS5fKHRoaXMsdm9pZCAwLHZvaWQgMCwoZnVuY3Rpb24qKCl7dC5hYm9ydENvbnRyb2xsZXImJih0LmFib3J0Q29udHJvbGxlci5hYm9ydCgpLGRlbGV0ZSB0LmFib3J0Q29udHJvbGxlciksdC5hYm9ydGVkPSEwO30pKX11bmxvYWRUaWxlKHQpe3JldHVybiBlLl8odGhpcyx2b2lkIDAsdm9pZCAwLChmdW5jdGlvbiooKXt0LnVubG9hZFZlY3RvckRhdGEoKSx5aWVsZCB0aGlzLmFjdG9yLnNlbmRBc3luYyh7dHlwZTpcIlJNVFwiLGRhdGE6e3VpZDp0LnVpZCx0eXBlOnRoaXMudHlwZSxzb3VyY2U6dGhpcy5pZH19KTt9KSl9b25SZW1vdmUoKXt0aGlzLl9yZW1vdmVkPSEwLHRoaXMuYWN0b3Iuc2VuZEFzeW5jKHt0eXBlOlwiUlNcIixkYXRhOnt0eXBlOnRoaXMudHlwZSxzb3VyY2U6dGhpcy5pZH19KTt9c2VyaWFsaXplKCl7cmV0dXJuIGUuZSh7fSx0aGlzLl9vcHRpb25zLHt0eXBlOnRoaXMudHlwZSxkYXRhOnRoaXMuX2RhdGF9KX1oYXNUcmFuc2l0aW9uKCl7cmV0dXJuICExfX12YXIgWT1lLlkoW3tuYW1lOlwiYV9wb3NcIix0eXBlOlwiSW50MTZcIixjb21wb25lbnRzOjJ9LHtuYW1lOlwiYV90ZXh0dXJlX3Bvc1wiLHR5cGU6XCJJbnQxNlwiLGNvbXBvbmVudHM6Mn1dKTtjbGFzcyBRIGV4dGVuZHMgZS5Fe2NvbnN0cnVjdG9yKHQsZSxpLGEpe3N1cGVyKCksdGhpcy5pZD10LHRoaXMuZGlzcGF0Y2hlcj1pLHRoaXMuY29vcmRpbmF0ZXM9ZS5jb29yZGluYXRlcyx0aGlzLnR5cGU9XCJpbWFnZVwiLHRoaXMubWluem9vbT0wLHRoaXMubWF4em9vbT0yMix0aGlzLnRpbGVTaXplPTUxMix0aGlzLnRpbGVzPXt9LHRoaXMuX2xvYWRlZD0hMSx0aGlzLnNldEV2ZW50ZWRQYXJlbnQoYSksdGhpcy5vcHRpb25zPWU7fWxvYWQodCl7cmV0dXJuIGUuXyh0aGlzLHZvaWQgMCx2b2lkIDAsKGZ1bmN0aW9uKigpe3RoaXMuX2xvYWRlZD0hMSx0aGlzLmZpcmUobmV3IGUuayhcImRhdGFsb2FkaW5nXCIse2RhdGFUeXBlOlwic291cmNlXCJ9KSksdGhpcy51cmw9dGhpcy5vcHRpb25zLnVybCx0aGlzLl9yZXF1ZXN0PW5ldyBBYm9ydENvbnRyb2xsZXI7dHJ5e2NvbnN0IGU9eWllbGQgXy5nZXRJbWFnZSh0aGlzLm1hcC5fcmVxdWVzdE1hbmFnZXIudHJhbnNmb3JtUmVxdWVzdCh0aGlzLnVybCxcIkltYWdlXCIpLHRoaXMuX3JlcXVlc3QpO3RoaXMuX3JlcXVlc3Q9bnVsbCx0aGlzLl9sb2FkZWQ9ITAsZSYmZS5kYXRhJiYodGhpcy5pbWFnZT1lLmRhdGEsdCYmKHRoaXMuY29vcmRpbmF0ZXM9dCksdGhpcy5fZmluaXNoTG9hZGluZygpKTt9Y2F0Y2godCl7dGhpcy5fcmVxdWVzdD1udWxsLHRoaXMuX2xvYWRlZD0hMCx0aGlzLmZpcmUobmV3IGUuaih0KSk7fX0pKX1sb2FkZWQoKXtyZXR1cm4gdGhpcy5fbG9hZGVkfXVwZGF0ZUltYWdlKHQpe3JldHVybiB0LnVybD8odGhpcy5fcmVxdWVzdCYmKHRoaXMuX3JlcXVlc3QuYWJvcnQoKSx0aGlzLl9yZXF1ZXN0PW51bGwpLHRoaXMub3B0aW9ucy51cmw9dC51cmwsdGhpcy5sb2FkKHQuY29vcmRpbmF0ZXMpLmZpbmFsbHkoKCgpPT57dGhpcy50ZXh0dXJlPW51bGw7fSkpLHRoaXMpOnRoaXN9X2ZpbmlzaExvYWRpbmcoKXt0aGlzLm1hcCYmKHRoaXMuc2V0Q29vcmRpbmF0ZXModGhpcy5jb29yZGluYXRlcyksdGhpcy5maXJlKG5ldyBlLmsoXCJkYXRhXCIse2RhdGFUeXBlOlwic291cmNlXCIsc291cmNlRGF0YVR5cGU6XCJtZXRhZGF0YVwifSkpKTt9b25BZGQodCl7dGhpcy5tYXA9dCx0aGlzLmxvYWQoKTt9b25SZW1vdmUoKXt0aGlzLl9yZXF1ZXN0JiYodGhpcy5fcmVxdWVzdC5hYm9ydCgpLHRoaXMuX3JlcXVlc3Q9bnVsbCk7fXNldENvb3JkaW5hdGVzKHQpe3RoaXMuY29vcmRpbmF0ZXM9dDtjb25zdCBpPXQubWFwKGUuWi5mcm9tTG5nTGF0KTt0aGlzLnRpbGVJRD1mdW5jdGlvbih0KXtsZXQgaT0xLzAsYT0xLzAscz0tMS8wLG89LTEvMDtmb3IoY29uc3QgZSBvZiB0KWk9TWF0aC5taW4oaSxlLngpLGE9TWF0aC5taW4oYSxlLnkpLHM9TWF0aC5tYXgocyxlLngpLG89TWF0aC5tYXgobyxlLnkpO2NvbnN0IHI9TWF0aC5tYXgocy1pLG8tYSksbj1NYXRoLm1heCgwLE1hdGguZmxvb3IoLU1hdGgubG9nKHIpL01hdGguTE4yKSksbD1NYXRoLnBvdygyLG4pO3JldHVybiBuZXcgZS5hMShuLE1hdGguZmxvb3IoKGkrcykvMipsKSxNYXRoLmZsb29yKChhK28pLzIqbCkpfShpKSx0aGlzLm1pbnpvb209dGhpcy5tYXh6b29tPXRoaXMudGlsZUlELno7Y29uc3QgYT1pLm1hcCgodD0+dGhpcy50aWxlSUQuZ2V0VGlsZVBvaW50KHQpLl9yb3VuZCgpKSk7cmV0dXJuIHRoaXMuX2JvdW5kc0FycmF5PW5ldyBlLiQsdGhpcy5fYm91bmRzQXJyYXkuZW1wbGFjZUJhY2soYVswXS54LGFbMF0ueSwwLDApLHRoaXMuX2JvdW5kc0FycmF5LmVtcGxhY2VCYWNrKGFbMV0ueCxhWzFdLnksZS5YLDApLHRoaXMuX2JvdW5kc0FycmF5LmVtcGxhY2VCYWNrKGFbM10ueCxhWzNdLnksMCxlLlgpLHRoaXMuX2JvdW5kc0FycmF5LmVtcGxhY2VCYWNrKGFbMl0ueCxhWzJdLnksZS5YLGUuWCksdGhpcy5ib3VuZHNCdWZmZXImJih0aGlzLmJvdW5kc0J1ZmZlci5kZXN0cm95KCksZGVsZXRlIHRoaXMuYm91bmRzQnVmZmVyKSx0aGlzLmZpcmUobmV3IGUuayhcImRhdGFcIix7ZGF0YVR5cGU6XCJzb3VyY2VcIixzb3VyY2VEYXRhVHlwZTpcImNvbnRlbnRcIn0pKSx0aGlzfXByZXBhcmUoKXtpZigwPT09T2JqZWN0LmtleXModGhpcy50aWxlcykubGVuZ3RofHwhdGhpcy5pbWFnZSlyZXR1cm47Y29uc3QgdD10aGlzLm1hcC5wYWludGVyLmNvbnRleHQsaT10LmdsO3RoaXMuYm91bmRzQnVmZmVyfHwodGhpcy5ib3VuZHNCdWZmZXI9dC5jcmVhdGVWZXJ0ZXhCdWZmZXIodGhpcy5fYm91bmRzQXJyYXksWS5tZW1iZXJzKSksdGhpcy5ib3VuZHNTZWdtZW50c3x8KHRoaXMuYm91bmRzU2VnbWVudHM9ZS5hMC5zaW1wbGVTZWdtZW50KDAsMCw0LDIpKSx0aGlzLnRleHR1cmV8fCh0aGlzLnRleHR1cmU9bmV3IGIodCx0aGlzLmltYWdlLGkuUkdCQSksdGhpcy50ZXh0dXJlLmJpbmQoaS5MSU5FQVIsaS5DTEFNUF9UT19FREdFKSk7bGV0IGE9ITE7Zm9yKGNvbnN0IHQgaW4gdGhpcy50aWxlcyl7Y29uc3QgZT10aGlzLnRpbGVzW3RdO1wibG9hZGVkXCIhPT1lLnN0YXRlJiYoZS5zdGF0ZT1cImxvYWRlZFwiLGUudGV4dHVyZT10aGlzLnRleHR1cmUsYT0hMCk7fWEmJnRoaXMuZmlyZShuZXcgZS5rKFwiZGF0YVwiLHtkYXRhVHlwZTpcInNvdXJjZVwiLHNvdXJjZURhdGFUeXBlOlwiaWRsZVwiLHNvdXJjZUlkOnRoaXMuaWR9KSk7fWxvYWRUaWxlKHQpe3JldHVybiBlLl8odGhpcyx2b2lkIDAsdm9pZCAwLChmdW5jdGlvbiooKXt0aGlzLnRpbGVJRCYmdGhpcy50aWxlSUQuZXF1YWxzKHQudGlsZUlELmNhbm9uaWNhbCk/KHRoaXMudGlsZXNbU3RyaW5nKHQudGlsZUlELndyYXApXT10LHQuYnVja2V0cz17fSk6dC5zdGF0ZT1cImVycm9yZWRcIjt9KSl9c2VyaWFsaXplKCl7cmV0dXJuIHt0eXBlOlwiaW1hZ2VcIix1cmw6dGhpcy5vcHRpb25zLnVybCxjb29yZGluYXRlczp0aGlzLmNvb3JkaW5hdGVzfX1oYXNUcmFuc2l0aW9uKCl7cmV0dXJuICExfX1jbGFzcyB0dCBleHRlbmRzIFF7Y29uc3RydWN0b3IodCxlLGksYSl7c3VwZXIodCxlLGksYSksdGhpcy5yb3VuZFpvb209ITAsdGhpcy50eXBlPVwidmlkZW9cIix0aGlzLm9wdGlvbnM9ZTt9bG9hZCgpe3JldHVybiBlLl8odGhpcyx2b2lkIDAsdm9pZCAwLChmdW5jdGlvbiooKXt0aGlzLl9sb2FkZWQ9ITE7Y29uc3QgdD10aGlzLm9wdGlvbnM7dGhpcy51cmxzPVtdO2Zvcihjb25zdCBlIG9mIHQudXJscyl0aGlzLnVybHMucHVzaCh0aGlzLm1hcC5fcmVxdWVzdE1hbmFnZXIudHJhbnNmb3JtUmVxdWVzdChlLFwiU291cmNlXCIpLnVybCk7dHJ5e2NvbnN0IHQ9eWllbGQgZS5hMyh0aGlzLnVybHMpO2lmKHRoaXMuX2xvYWRlZD0hMCwhdClyZXR1cm47dGhpcy52aWRlbz10LHRoaXMudmlkZW8ubG9vcD0hMCx0aGlzLnZpZGVvLmFkZEV2ZW50TGlzdGVuZXIoXCJwbGF5aW5nXCIsKCgpPT57dGhpcy5tYXAudHJpZ2dlclJlcGFpbnQoKTt9KSksdGhpcy5tYXAmJnRoaXMudmlkZW8ucGxheSgpLHRoaXMuX2ZpbmlzaExvYWRpbmcoKTt9Y2F0Y2godCl7dGhpcy5maXJlKG5ldyBlLmoodCkpO319KSl9cGF1c2UoKXt0aGlzLnZpZGVvJiZ0aGlzLnZpZGVvLnBhdXNlKCk7fXBsYXkoKXt0aGlzLnZpZGVvJiZ0aGlzLnZpZGVvLnBsYXkoKTt9c2Vlayh0KXtpZih0aGlzLnZpZGVvKXtjb25zdCBpPXRoaXMudmlkZW8uc2Vla2FibGU7dDxpLnN0YXJ0KDApfHx0PmkuZW5kKDApP3RoaXMuZmlyZShuZXcgZS5qKG5ldyBlLmEyKGBzb3VyY2VzLiR7dGhpcy5pZH1gLG51bGwsYFBsYXliYWNrIGZvciB0aGlzIHZpZGVvIGNhbiBiZSBzZXQgb25seSBiZXR3ZWVuIHRoZSAke2kuc3RhcnQoMCl9IGFuZCAke2kuZW5kKDApfS1zZWNvbmQgbWFyay5gKSkpOnRoaXMudmlkZW8uY3VycmVudFRpbWU9dDt9fWdldFZpZGVvKCl7cmV0dXJuIHRoaXMudmlkZW99b25BZGQodCl7dGhpcy5tYXB8fCh0aGlzLm1hcD10LHRoaXMubG9hZCgpLHRoaXMudmlkZW8mJih0aGlzLnZpZGVvLnBsYXkoKSx0aGlzLnNldENvb3JkaW5hdGVzKHRoaXMuY29vcmRpbmF0ZXMpKSk7fXByZXBhcmUoKXtpZigwPT09T2JqZWN0LmtleXModGhpcy50aWxlcykubGVuZ3RofHx0aGlzLnZpZGVvLnJlYWR5U3RhdGU8MilyZXR1cm47Y29uc3QgdD10aGlzLm1hcC5wYWludGVyLmNvbnRleHQsaT10LmdsO3RoaXMuYm91bmRzQnVmZmVyfHwodGhpcy5ib3VuZHNCdWZmZXI9dC5jcmVhdGVWZXJ0ZXhCdWZmZXIodGhpcy5fYm91bmRzQXJyYXksWS5tZW1iZXJzKSksdGhpcy5ib3VuZHNTZWdtZW50c3x8KHRoaXMuYm91bmRzU2VnbWVudHM9ZS5hMC5zaW1wbGVTZWdtZW50KDAsMCw0LDIpKSx0aGlzLnRleHR1cmU/dGhpcy52aWRlby5wYXVzZWR8fCh0aGlzLnRleHR1cmUuYmluZChpLkxJTkVBUixpLkNMQU1QX1RPX0VER0UpLGkudGV4U3ViSW1hZ2UyRChpLlRFWFRVUkVfMkQsMCwwLDAsaS5SR0JBLGkuVU5TSUdORURfQllURSx0aGlzLnZpZGVvKSk6KHRoaXMudGV4dHVyZT1uZXcgYih0LHRoaXMudmlkZW8saS5SR0JBKSx0aGlzLnRleHR1cmUuYmluZChpLkxJTkVBUixpLkNMQU1QX1RPX0VER0UpKTtsZXQgYT0hMTtmb3IoY29uc3QgdCBpbiB0aGlzLnRpbGVzKXtjb25zdCBlPXRoaXMudGlsZXNbdF07XCJsb2FkZWRcIiE9PWUuc3RhdGUmJihlLnN0YXRlPVwibG9hZGVkXCIsZS50ZXh0dXJlPXRoaXMudGV4dHVyZSxhPSEwKTt9YSYmdGhpcy5maXJlKG5ldyBlLmsoXCJkYXRhXCIse2RhdGFUeXBlOlwic291cmNlXCIsc291cmNlRGF0YVR5cGU6XCJpZGxlXCIsc291cmNlSWQ6dGhpcy5pZH0pKTt9c2VyaWFsaXplKCl7cmV0dXJuIHt0eXBlOlwidmlkZW9cIix1cmxzOnRoaXMudXJscyxjb29yZGluYXRlczp0aGlzLmNvb3JkaW5hdGVzfX1oYXNUcmFuc2l0aW9uKCl7cmV0dXJuIHRoaXMudmlkZW8mJiF0aGlzLnZpZGVvLnBhdXNlZH19Y2xhc3MgZXQgZXh0ZW5kcyBRe2NvbnN0cnVjdG9yKHQsaSxhLHMpe3N1cGVyKHQsaSxhLHMpLGkuY29vcmRpbmF0ZXM/QXJyYXkuaXNBcnJheShpLmNvb3JkaW5hdGVzKSYmND09PWkuY29vcmRpbmF0ZXMubGVuZ3RoJiYhaS5jb29yZGluYXRlcy5zb21lKCh0PT4hQXJyYXkuaXNBcnJheSh0KXx8MiE9PXQubGVuZ3RofHx0LnNvbWUoKHQ9PlwibnVtYmVyXCIhPXR5cGVvZiB0KSkpKXx8dGhpcy5maXJlKG5ldyBlLmoobmV3IGUuYTIoYHNvdXJjZXMuJHt0fWAsbnVsbCwnXCJjb29yZGluYXRlc1wiIHByb3BlcnR5IG11c3QgYmUgYW4gYXJyYXkgb2YgNCBsb25naXR1ZGUvbGF0aXR1ZGUgYXJyYXkgcGFpcnMnKSkpOnRoaXMuZmlyZShuZXcgZS5qKG5ldyBlLmEyKGBzb3VyY2VzLiR7dH1gLG51bGwsJ21pc3NpbmcgcmVxdWlyZWQgcHJvcGVydHkgXCJjb29yZGluYXRlc1wiJykpKSxpLmFuaW1hdGUmJlwiYm9vbGVhblwiIT10eXBlb2YgaS5hbmltYXRlJiZ0aGlzLmZpcmUobmV3IGUuaihuZXcgZS5hMihgc291cmNlcy4ke3R9YCxudWxsLCdvcHRpb25hbCBcImFuaW1hdGVcIiBwcm9wZXJ0eSBtdXN0IGJlIGEgYm9vbGVhbiB2YWx1ZScpKSksaS5jYW52YXM/XCJzdHJpbmdcIj09dHlwZW9mIGkuY2FudmFzfHxpLmNhbnZhcyBpbnN0YW5jZW9mIEhUTUxDYW52YXNFbGVtZW50fHx0aGlzLmZpcmUobmV3IGUuaihuZXcgZS5hMihgc291cmNlcy4ke3R9YCxudWxsLCdcImNhbnZhc1wiIG11c3QgYmUgZWl0aGVyIGEgc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgSUQgb2YgdGhlIGNhbnZhcyBlbGVtZW50IGZyb20gd2hpY2ggdG8gcmVhZCwgb3IgYW4gSFRNTENhbnZhc0VsZW1lbnQgaW5zdGFuY2UnKSkpOnRoaXMuZmlyZShuZXcgZS5qKG5ldyBlLmEyKGBzb3VyY2VzLiR7dH1gLG51bGwsJ21pc3NpbmcgcmVxdWlyZWQgcHJvcGVydHkgXCJjYW52YXNcIicpKSksdGhpcy5vcHRpb25zPWksdGhpcy5hbmltYXRlPXZvaWQgMD09PWkuYW5pbWF0ZXx8aS5hbmltYXRlO31sb2FkKCl7cmV0dXJuIGUuXyh0aGlzLHZvaWQgMCx2b2lkIDAsKGZ1bmN0aW9uKigpe3RoaXMuX2xvYWRlZD0hMCx0aGlzLmNhbnZhc3x8KHRoaXMuY2FudmFzPXRoaXMub3B0aW9ucy5jYW52YXMgaW5zdGFuY2VvZiBIVE1MQ2FudmFzRWxlbWVudD90aGlzLm9wdGlvbnMuY2FudmFzOmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMub3B0aW9ucy5jYW52YXMpKSx0aGlzLndpZHRoPXRoaXMuY2FudmFzLndpZHRoLHRoaXMuaGVpZ2h0PXRoaXMuY2FudmFzLmhlaWdodCx0aGlzLl9oYXNJbnZhbGlkRGltZW5zaW9ucygpP3RoaXMuZmlyZShuZXcgZS5qKG5ldyBFcnJvcihcIkNhbnZhcyBkaW1lbnNpb25zIGNhbm5vdCBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gemVyby5cIikpKToodGhpcy5wbGF5PWZ1bmN0aW9uKCl7dGhpcy5fcGxheWluZz0hMCx0aGlzLm1hcC50cmlnZ2VyUmVwYWludCgpO30sdGhpcy5wYXVzZT1mdW5jdGlvbigpe3RoaXMuX3BsYXlpbmcmJih0aGlzLnByZXBhcmUoKSx0aGlzLl9wbGF5aW5nPSExKTt9LHRoaXMuX2ZpbmlzaExvYWRpbmcoKSk7fSkpfWdldENhbnZhcygpe3JldHVybiB0aGlzLmNhbnZhc31vbkFkZCh0KXt0aGlzLm1hcD10LHRoaXMubG9hZCgpLHRoaXMuY2FudmFzJiZ0aGlzLmFuaW1hdGUmJnRoaXMucGxheSgpO31vblJlbW92ZSgpe3RoaXMucGF1c2UoKTt9cHJlcGFyZSgpe2xldCB0PSExO2lmKHRoaXMuY2FudmFzLndpZHRoIT09dGhpcy53aWR0aCYmKHRoaXMud2lkdGg9dGhpcy5jYW52YXMud2lkdGgsdD0hMCksdGhpcy5jYW52YXMuaGVpZ2h0IT09dGhpcy5oZWlnaHQmJih0aGlzLmhlaWdodD10aGlzLmNhbnZhcy5oZWlnaHQsdD0hMCksdGhpcy5faGFzSW52YWxpZERpbWVuc2lvbnMoKSlyZXR1cm47aWYoMD09PU9iamVjdC5rZXlzKHRoaXMudGlsZXMpLmxlbmd0aClyZXR1cm47Y29uc3QgaT10aGlzLm1hcC5wYWludGVyLmNvbnRleHQsYT1pLmdsO3RoaXMuYm91bmRzQnVmZmVyfHwodGhpcy5ib3VuZHNCdWZmZXI9aS5jcmVhdGVWZXJ0ZXhCdWZmZXIodGhpcy5fYm91bmRzQXJyYXksWS5tZW1iZXJzKSksdGhpcy5ib3VuZHNTZWdtZW50c3x8KHRoaXMuYm91bmRzU2VnbWVudHM9ZS5hMC5zaW1wbGVTZWdtZW50KDAsMCw0LDIpKSx0aGlzLnRleHR1cmU/KHR8fHRoaXMuX3BsYXlpbmcpJiZ0aGlzLnRleHR1cmUudXBkYXRlKHRoaXMuY2FudmFzLHtwcmVtdWx0aXBseTohMH0pOnRoaXMudGV4dHVyZT1uZXcgYihpLHRoaXMuY2FudmFzLGEuUkdCQSx7cHJlbXVsdGlwbHk6ITB9KTtsZXQgcz0hMTtmb3IoY29uc3QgdCBpbiB0aGlzLnRpbGVzKXtjb25zdCBlPXRoaXMudGlsZXNbdF07XCJsb2FkZWRcIiE9PWUuc3RhdGUmJihlLnN0YXRlPVwibG9hZGVkXCIsZS50ZXh0dXJlPXRoaXMudGV4dHVyZSxzPSEwKTt9cyYmdGhpcy5maXJlKG5ldyBlLmsoXCJkYXRhXCIse2RhdGFUeXBlOlwic291cmNlXCIsc291cmNlRGF0YVR5cGU6XCJpZGxlXCIsc291cmNlSWQ6dGhpcy5pZH0pKTt9c2VyaWFsaXplKCl7cmV0dXJuIHt0eXBlOlwiY2FudmFzXCIsY29vcmRpbmF0ZXM6dGhpcy5jb29yZGluYXRlc319aGFzVHJhbnNpdGlvbigpe3JldHVybiB0aGlzLl9wbGF5aW5nfV9oYXNJbnZhbGlkRGltZW5zaW9ucygpe2Zvcihjb25zdCB0IG9mIFt0aGlzLmNhbnZhcy53aWR0aCx0aGlzLmNhbnZhcy5oZWlnaHRdKWlmKGlzTmFOKHQpfHx0PD0wKXJldHVybiAhMDtyZXR1cm4gITF9fWNvbnN0IGl0PXt9LGF0PXQ9Pntzd2l0Y2godCl7Y2FzZVwiZ2VvanNvblwiOnJldHVybiBKO2Nhc2VcImltYWdlXCI6cmV0dXJuIFE7Y2FzZVwicmFzdGVyXCI6cmV0dXJuIFg7Y2FzZVwicmFzdGVyLWRlbVwiOnJldHVybiBLO2Nhc2VcInZlY3RvclwiOnJldHVybiAkO2Nhc2VcInZpZGVvXCI6cmV0dXJuIHR0O2Nhc2VcImNhbnZhc1wiOnJldHVybiBldH1yZXR1cm4gaXRbdF19LHN0PVwiUlRMUGx1Z2luTG9hZGVkXCI7Y2xhc3Mgb3QgZXh0ZW5kcyBlLkV7Y29uc3RydWN0b3IoKXtzdXBlciguLi5hcmd1bWVudHMpLHRoaXMuc3RhdHVzPVwidW5hdmFpbGFibGVcIix0aGlzLnVybD1udWxsLHRoaXMuZGlzcGF0Y2hlcj1qKCk7fV9zeW5jU3RhdGUodCl7cmV0dXJuIHRoaXMuc3RhdHVzPXQsdGhpcy5kaXNwYXRjaGVyLmJyb2FkY2FzdChcIlNSUFNcIix7cGx1Z2luU3RhdHVzOnQscGx1Z2luVVJMOnRoaXMudXJsfSkuY2F0Y2goKHQ9Pnt0aHJvdyB0aGlzLnN0YXR1cz1cImVycm9yXCIsdH0pKX1nZXRSVExUZXh0UGx1Z2luU3RhdHVzKCl7cmV0dXJuIHRoaXMuc3RhdHVzfWNsZWFyUlRMVGV4dFBsdWdpbigpe3RoaXMuc3RhdHVzPVwidW5hdmFpbGFibGVcIix0aGlzLnVybD1udWxsO31zZXRSVExUZXh0UGx1Z2luKHQpe3JldHVybiBlLl8odGhpcyxhcmd1bWVudHMsdm9pZCAwLChmdW5jdGlvbioodCxlPSExKXtpZih0aGlzLnVybCl0aHJvdyBuZXcgRXJyb3IoXCJzZXRSVExUZXh0UGx1Z2luIGNhbm5vdCBiZSBjYWxsZWQgbXVsdGlwbGUgdGltZXMuXCIpO2lmKHRoaXMudXJsPW8ucmVzb2x2ZVVSTCh0KSwhdGhpcy51cmwpdGhyb3cgbmV3IEVycm9yKGByZXF1ZXN0ZWQgdXJsICR7dH0gaXMgaW52YWxpZGApO2lmKFwidW5hdmFpbGFibGVcIj09PXRoaXMuc3RhdHVzKXtpZighZSlyZXR1cm4gdGhpcy5fcmVxdWVzdEltcG9ydCgpO3RoaXMuc3RhdHVzPVwiZGVmZXJyZWRcIix0aGlzLl9zeW5jU3RhdGUodGhpcy5zdGF0dXMpO31lbHNlIGlmKFwicmVxdWVzdGVkXCI9PT10aGlzLnN0YXR1cylyZXR1cm4gdGhpcy5fcmVxdWVzdEltcG9ydCgpfSkpfV9yZXF1ZXN0SW1wb3J0KCl7cmV0dXJuIGUuXyh0aGlzLHZvaWQgMCx2b2lkIDAsKGZ1bmN0aW9uKigpe3lpZWxkIHRoaXMuX3N5bmNTdGF0ZShcImxvYWRpbmdcIiksdGhpcy5zdGF0dXM9XCJsb2FkZWRcIix0aGlzLmZpcmUobmV3IGUuayhzdCkpO30pKX1sYXp5TG9hZCgpe1widW5hdmFpbGFibGVcIj09PXRoaXMuc3RhdHVzP3RoaXMuc3RhdHVzPVwicmVxdWVzdGVkXCI6XCJkZWZlcnJlZFwiPT09dGhpcy5zdGF0dXMmJnRoaXMuX3JlcXVlc3RJbXBvcnQoKTt9fWxldCBydD1udWxsO2Z1bmN0aW9uIG50KCl7cmV0dXJuIHJ0fHwocnQ9bmV3IG90KSxydH1jbGFzcyBsdHtjb25zdHJ1Y3Rvcih0LGkpe3RoaXMudGltZUFkZGVkPTAsdGhpcy5mYWRlRW5kVGltZT0wLHRoaXMudGlsZUlEPXQsdGhpcy51aWQ9ZS5hNCgpLHRoaXMudXNlcz0wLHRoaXMudGlsZVNpemU9aSx0aGlzLmJ1Y2tldHM9e30sdGhpcy5leHBpcmF0aW9uVGltZT1udWxsLHRoaXMucXVlcnlQYWRkaW5nPTAsdGhpcy5oYXNTeW1ib2xCdWNrZXRzPSExLHRoaXMuaGFzUlRMVGV4dD0hMSx0aGlzLmRlcGVuZGVuY2llcz17fSx0aGlzLnJ0dD1bXSx0aGlzLnJ0dENvb3Jkcz17fSx0aGlzLmV4cGlyZWRSZXF1ZXN0Q291bnQ9MCx0aGlzLnN0YXRlPVwibG9hZGluZ1wiO31yZWdpc3RlckZhZGVEdXJhdGlvbih0KXtjb25zdCBlPXQrdGhpcy50aW1lQWRkZWQ7ZTx0aGlzLmZhZGVFbmRUaW1lfHwodGhpcy5mYWRlRW5kVGltZT1lKTt9d2FzUmVxdWVzdGVkKCl7cmV0dXJuIFwiZXJyb3JlZFwiPT09dGhpcy5zdGF0ZXx8XCJsb2FkZWRcIj09PXRoaXMuc3RhdGV8fFwicmVsb2FkaW5nXCI9PT10aGlzLnN0YXRlfWNsZWFyVGV4dHVyZXModCl7dGhpcy5kZW1UZXh0dXJlJiZ0LnNhdmVUaWxlVGV4dHVyZSh0aGlzLmRlbVRleHR1cmUpLHRoaXMuZGVtVGV4dHVyZT1udWxsO31sb2FkVmVjdG9yRGF0YSh0LGksYSl7aWYodGhpcy5oYXNEYXRhKCkmJnRoaXMudW5sb2FkVmVjdG9yRGF0YSgpLHRoaXMuc3RhdGU9XCJsb2FkZWRcIix0KXt0LmZlYXR1cmVJbmRleCYmKHRoaXMubGF0ZXN0RmVhdHVyZUluZGV4PXQuZmVhdHVyZUluZGV4LHQucmF3VGlsZURhdGE/KHRoaXMubGF0ZXN0UmF3VGlsZURhdGE9dC5yYXdUaWxlRGF0YSx0aGlzLmxhdGVzdEZlYXR1cmVJbmRleC5yYXdUaWxlRGF0YT10LnJhd1RpbGVEYXRhKTp0aGlzLmxhdGVzdFJhd1RpbGVEYXRhJiYodGhpcy5sYXRlc3RGZWF0dXJlSW5kZXgucmF3VGlsZURhdGE9dGhpcy5sYXRlc3RSYXdUaWxlRGF0YSkpLHRoaXMuY29sbGlzaW9uQm94QXJyYXk9dC5jb2xsaXNpb25Cb3hBcnJheSx0aGlzLmJ1Y2tldHM9ZnVuY3Rpb24odCxlKXtjb25zdCBpPXt9O2lmKCFlKXJldHVybiBpO2Zvcihjb25zdCBhIG9mIHQpe2NvbnN0IHQ9YS5sYXllcklkcy5tYXAoKHQ9PmUuZ2V0TGF5ZXIodCkpKS5maWx0ZXIoQm9vbGVhbik7aWYoMCE9PXQubGVuZ3RoKXthLmxheWVycz10LGEuc3RhdGVEZXBlbmRlbnRMYXllcklkcyYmKGEuc3RhdGVEZXBlbmRlbnRMYXllcnM9YS5zdGF0ZURlcGVuZGVudExheWVySWRzLm1hcCgoZT0+dC5maWx0ZXIoKHQ9PnQuaWQ9PT1lKSlbMF0pKSk7Zm9yKGNvbnN0IGUgb2YgdClpW2UuaWRdPWE7fX1yZXR1cm4gaX0odC5idWNrZXRzLGkuc3R5bGUpLHRoaXMuaGFzU3ltYm9sQnVja2V0cz0hMTtmb3IoY29uc3QgdCBpbiB0aGlzLmJ1Y2tldHMpe2NvbnN0IGk9dGhpcy5idWNrZXRzW3RdO2lmKGkgaW5zdGFuY2VvZiBlLmE2KXtpZih0aGlzLmhhc1N5bWJvbEJ1Y2tldHM9ITAsIWEpYnJlYWs7aS5qdXN0UmVsb2FkZWQ9ITA7fX1pZih0aGlzLmhhc1JUTFRleHQ9ITEsdGhpcy5oYXNTeW1ib2xCdWNrZXRzKWZvcihjb25zdCB0IGluIHRoaXMuYnVja2V0cyl7Y29uc3QgaT10aGlzLmJ1Y2tldHNbdF07aWYoaSBpbnN0YW5jZW9mIGUuYTYmJmkuaGFzUlRMVGV4dCl7dGhpcy5oYXNSVExUZXh0PSEwLG50KCkubGF6eUxvYWQoKTticmVha319dGhpcy5xdWVyeVBhZGRpbmc9MDtmb3IoY29uc3QgdCBpbiB0aGlzLmJ1Y2tldHMpe2NvbnN0IGU9dGhpcy5idWNrZXRzW3RdO3RoaXMucXVlcnlQYWRkaW5nPU1hdGgubWF4KHRoaXMucXVlcnlQYWRkaW5nLGkuc3R5bGUuZ2V0TGF5ZXIodCkucXVlcnlSYWRpdXMoZSkpO310LmltYWdlQXRsYXMmJih0aGlzLmltYWdlQXRsYXM9dC5pbWFnZUF0bGFzKSx0LmdseXBoQXRsYXNJbWFnZSYmKHRoaXMuZ2x5cGhBdGxhc0ltYWdlPXQuZ2x5cGhBdGxhc0ltYWdlKTt9ZWxzZSB0aGlzLmNvbGxpc2lvbkJveEFycmF5PW5ldyBlLmE1O311bmxvYWRWZWN0b3JEYXRhKCl7Zm9yKGNvbnN0IHQgaW4gdGhpcy5idWNrZXRzKXRoaXMuYnVja2V0c1t0XS5kZXN0cm95KCk7dGhpcy5idWNrZXRzPXt9LHRoaXMuaW1hZ2VBdGxhc1RleHR1cmUmJnRoaXMuaW1hZ2VBdGxhc1RleHR1cmUuZGVzdHJveSgpLHRoaXMuaW1hZ2VBdGxhcyYmKHRoaXMuaW1hZ2VBdGxhcz1udWxsKSx0aGlzLmdseXBoQXRsYXNUZXh0dXJlJiZ0aGlzLmdseXBoQXRsYXNUZXh0dXJlLmRlc3Ryb3koKSx0aGlzLmxhdGVzdEZlYXR1cmVJbmRleD1udWxsLHRoaXMuc3RhdGU9XCJ1bmxvYWRlZFwiO31nZXRCdWNrZXQodCl7cmV0dXJuIHRoaXMuYnVja2V0c1t0LmlkXX11cGxvYWQodCl7Zm9yKGNvbnN0IGUgaW4gdGhpcy5idWNrZXRzKXtjb25zdCBpPXRoaXMuYnVja2V0c1tlXTtpLnVwbG9hZFBlbmRpbmcoKSYmaS51cGxvYWQodCk7fWNvbnN0IGU9dC5nbDt0aGlzLmltYWdlQXRsYXMmJiF0aGlzLmltYWdlQXRsYXMudXBsb2FkZWQmJih0aGlzLmltYWdlQXRsYXNUZXh0dXJlPW5ldyBiKHQsdGhpcy5pbWFnZUF0bGFzLmltYWdlLGUuUkdCQSksdGhpcy5pbWFnZUF0bGFzLnVwbG9hZGVkPSEwKSx0aGlzLmdseXBoQXRsYXNJbWFnZSYmKHRoaXMuZ2x5cGhBdGxhc1RleHR1cmU9bmV3IGIodCx0aGlzLmdseXBoQXRsYXNJbWFnZSxlLkFMUEhBKSx0aGlzLmdseXBoQXRsYXNJbWFnZT1udWxsKTt9cHJlcGFyZSh0KXt0aGlzLmltYWdlQXRsYXMmJnRoaXMuaW1hZ2VBdGxhcy5wYXRjaFVwZGF0ZWRJbWFnZXModCx0aGlzLmltYWdlQXRsYXNUZXh0dXJlKTt9cXVlcnlSZW5kZXJlZEZlYXR1cmVzKHQsZSxpLGEscyxvLHIsbixsLGgpe3JldHVybiB0aGlzLmxhdGVzdEZlYXR1cmVJbmRleCYmdGhpcy5sYXRlc3RGZWF0dXJlSW5kZXgucmF3VGlsZURhdGE/dGhpcy5sYXRlc3RGZWF0dXJlSW5kZXgucXVlcnkoe3F1ZXJ5R2VvbWV0cnk6YSxjYW1lcmFRdWVyeUdlb21ldHJ5OnMsc2NhbGU6byx0aWxlU2l6ZTp0aGlzLnRpbGVTaXplLHBpeGVsUG9zTWF0cml4OmgsdHJhbnNmb3JtOm4scGFyYW1zOnIscXVlcnlQYWRkaW5nOnRoaXMucXVlcnlQYWRkaW5nKmx9LHQsZSxpKTp7fX1xdWVyeVNvdXJjZUZlYXR1cmVzKHQsaSl7Y29uc3QgYT10aGlzLmxhdGVzdEZlYXR1cmVJbmRleDtpZighYXx8IWEucmF3VGlsZURhdGEpcmV0dXJuO2NvbnN0IHM9YS5sb2FkVlRMYXllcnMoKSxvPWkmJmkuc291cmNlTGF5ZXI/aS5zb3VyY2VMYXllcjpcIlwiLHI9cy5fZ2VvanNvblRpbGVMYXllcnx8c1tvXTtpZighcilyZXR1cm47Y29uc3Qgbj1lLmE3KGkmJmkuZmlsdGVyKSx7ejpsLHg6aCx5OmN9PXRoaXMudGlsZUlELmNhbm9uaWNhbCx1PXt6OmwseDpoLHk6Y307Zm9yKGxldCBpPTA7aTxyLmxlbmd0aDtpKyspe2NvbnN0IHM9ci5mZWF0dXJlKGkpO2lmKG4ubmVlZEdlb21ldHJ5KXtjb25zdCB0PWUuYTgocywhMCk7aWYoIW4uZmlsdGVyKG5ldyBlLnoodGhpcy50aWxlSUQub3ZlcnNjYWxlZFopLHQsdGhpcy50aWxlSUQuY2Fub25pY2FsKSljb250aW51ZX1lbHNlIGlmKCFuLmZpbHRlcihuZXcgZS56KHRoaXMudGlsZUlELm92ZXJzY2FsZWRaKSxzKSljb250aW51ZTtjb25zdCBkPWEuZ2V0SWQocyxvKSxfPW5ldyBlLmE5KHMsbCxoLGMsZCk7Xy50aWxlPXUsdC5wdXNoKF8pO319aGFzRGF0YSgpe3JldHVybiBcImxvYWRlZFwiPT09dGhpcy5zdGF0ZXx8XCJyZWxvYWRpbmdcIj09PXRoaXMuc3RhdGV8fFwiZXhwaXJlZFwiPT09dGhpcy5zdGF0ZX1wYXR0ZXJuc0xvYWRlZCgpe3JldHVybiB0aGlzLmltYWdlQXRsYXMmJiEhT2JqZWN0LmtleXModGhpcy5pbWFnZUF0bGFzLnBhdHRlcm5Qb3NpdGlvbnMpLmxlbmd0aH1zZXRFeHBpcnlEYXRhKHQpe2NvbnN0IGk9dGhpcy5leHBpcmF0aW9uVGltZTtpZih0LmNhY2hlQ29udHJvbCl7Y29uc3QgaT1lLmFhKHQuY2FjaGVDb250cm9sKTtpW1wibWF4LWFnZVwiXSYmKHRoaXMuZXhwaXJhdGlvblRpbWU9RGF0ZS5ub3coKSsxZTMqaVtcIm1heC1hZ2VcIl0pO31lbHNlIHQuZXhwaXJlcyYmKHRoaXMuZXhwaXJhdGlvblRpbWU9bmV3IERhdGUodC5leHBpcmVzKS5nZXRUaW1lKCkpO2lmKHRoaXMuZXhwaXJhdGlvblRpbWUpe2NvbnN0IHQ9RGF0ZS5ub3coKTtsZXQgZT0hMTtpZih0aGlzLmV4cGlyYXRpb25UaW1lPnQpZT0hMTtlbHNlIGlmKGkpaWYodGhpcy5leHBpcmF0aW9uVGltZTxpKWU9ITA7ZWxzZSB7Y29uc3QgYT10aGlzLmV4cGlyYXRpb25UaW1lLWk7YT90aGlzLmV4cGlyYXRpb25UaW1lPXQrTWF0aC5tYXgoYSwzZTQpOmU9ITA7fWVsc2UgZT0hMDtlPyh0aGlzLmV4cGlyZWRSZXF1ZXN0Q291bnQrKyx0aGlzLnN0YXRlPVwiZXhwaXJlZFwiKTp0aGlzLmV4cGlyZWRSZXF1ZXN0Q291bnQ9MDt9fWdldEV4cGlyeVRpbWVvdXQoKXtpZih0aGlzLmV4cGlyYXRpb25UaW1lKXJldHVybiB0aGlzLmV4cGlyZWRSZXF1ZXN0Q291bnQ/MWUzKigxPDxNYXRoLm1pbih0aGlzLmV4cGlyZWRSZXF1ZXN0Q291bnQtMSwzMSkpOk1hdGgubWluKHRoaXMuZXhwaXJhdGlvblRpbWUtKG5ldyBEYXRlKS5nZXRUaW1lKCksTWF0aC5wb3coMiwzMSktMSl9c2V0RmVhdHVyZVN0YXRlKHQsZSl7aWYoIXRoaXMubGF0ZXN0RmVhdHVyZUluZGV4fHwhdGhpcy5sYXRlc3RGZWF0dXJlSW5kZXgucmF3VGlsZURhdGF8fDA9PT1PYmplY3Qua2V5cyh0KS5sZW5ndGgpcmV0dXJuO2NvbnN0IGk9dGhpcy5sYXRlc3RGZWF0dXJlSW5kZXgubG9hZFZUTGF5ZXJzKCk7Zm9yKGNvbnN0IGEgaW4gdGhpcy5idWNrZXRzKXtpZighZS5zdHlsZS5oYXNMYXllcihhKSljb250aW51ZTtjb25zdCBzPXRoaXMuYnVja2V0c1thXSxvPXMubGF5ZXJzWzBdLnNvdXJjZUxheWVyfHxcIl9nZW9qc29uVGlsZUxheWVyXCIscj1pW29dLG49dFtvXTtpZighcnx8IW58fDA9PT1PYmplY3Qua2V5cyhuKS5sZW5ndGgpY29udGludWU7cy51cGRhdGUobixyLHRoaXMuaW1hZ2VBdGxhcyYmdGhpcy5pbWFnZUF0bGFzLnBhdHRlcm5Qb3NpdGlvbnN8fHt9KTtjb25zdCBsPWUmJmUuc3R5bGUmJmUuc3R5bGUuZ2V0TGF5ZXIoYSk7bCYmKHRoaXMucXVlcnlQYWRkaW5nPU1hdGgubWF4KHRoaXMucXVlcnlQYWRkaW5nLGwucXVlcnlSYWRpdXMocykpKTt9fWhvbGRpbmdGb3JGYWRlKCl7cmV0dXJuIHZvaWQgMCE9PXRoaXMuc3ltYm9sRmFkZUhvbGRVbnRpbH1zeW1ib2xGYWRlRmluaXNoZWQoKXtyZXR1cm4gIXRoaXMuc3ltYm9sRmFkZUhvbGRVbnRpbHx8dGhpcy5zeW1ib2xGYWRlSG9sZFVudGlsPG8ubm93KCl9Y2xlYXJGYWRlSG9sZCgpe3RoaXMuc3ltYm9sRmFkZUhvbGRVbnRpbD12b2lkIDA7fXNldEhvbGREdXJhdGlvbih0KXt0aGlzLnN5bWJvbEZhZGVIb2xkVW50aWw9by5ub3coKSt0O31zZXREZXBlbmRlbmNpZXModCxlKXtjb25zdCBpPXt9O2Zvcihjb25zdCB0IG9mIGUpaVt0XT0hMDt0aGlzLmRlcGVuZGVuY2llc1t0XT1pO31oYXNEZXBlbmRlbmN5KHQsZSl7Zm9yKGNvbnN0IGkgb2YgdCl7Y29uc3QgdD10aGlzLmRlcGVuZGVuY2llc1tpXTtpZih0KWZvcihjb25zdCBpIG9mIGUpaWYodFtpXSlyZXR1cm4gITB9cmV0dXJuICExfX1jbGFzcyBodHtjb25zdHJ1Y3Rvcih0LGUpe3RoaXMubWF4PXQsdGhpcy5vblJlbW92ZT1lLHRoaXMucmVzZXQoKTt9cmVzZXQoKXtmb3IoY29uc3QgdCBpbiB0aGlzLmRhdGEpZm9yKGNvbnN0IGUgb2YgdGhpcy5kYXRhW3RdKWUudGltZW91dCYmY2xlYXJUaW1lb3V0KGUudGltZW91dCksdGhpcy5vblJlbW92ZShlLnZhbHVlKTtyZXR1cm4gdGhpcy5kYXRhPXt9LHRoaXMub3JkZXI9W10sdGhpc31hZGQodCxlLGkpe2NvbnN0IGE9dC53cmFwcGVkKCkua2V5O3ZvaWQgMD09PXRoaXMuZGF0YVthXSYmKHRoaXMuZGF0YVthXT1bXSk7Y29uc3Qgcz17dmFsdWU6ZSx0aW1lb3V0OnZvaWQgMH07aWYodm9pZCAwIT09aSYmKHMudGltZW91dD1zZXRUaW1lb3V0KCgoKT0+e3RoaXMucmVtb3ZlKHQscyk7fSksaSkpLHRoaXMuZGF0YVthXS5wdXNoKHMpLHRoaXMub3JkZXIucHVzaChhKSx0aGlzLm9yZGVyLmxlbmd0aD50aGlzLm1heCl7Y29uc3QgdD10aGlzLl9nZXRBbmRSZW1vdmVCeUtleSh0aGlzLm9yZGVyWzBdKTt0JiZ0aGlzLm9uUmVtb3ZlKHQpO31yZXR1cm4gdGhpc31oYXModCl7cmV0dXJuIHQud3JhcHBlZCgpLmtleSBpbiB0aGlzLmRhdGF9Z2V0QW5kUmVtb3ZlKHQpe3JldHVybiB0aGlzLmhhcyh0KT90aGlzLl9nZXRBbmRSZW1vdmVCeUtleSh0LndyYXBwZWQoKS5rZXkpOm51bGx9X2dldEFuZFJlbW92ZUJ5S2V5KHQpe2NvbnN0IGU9dGhpcy5kYXRhW3RdLnNoaWZ0KCk7cmV0dXJuIGUudGltZW91dCYmY2xlYXJUaW1lb3V0KGUudGltZW91dCksMD09PXRoaXMuZGF0YVt0XS5sZW5ndGgmJmRlbGV0ZSB0aGlzLmRhdGFbdF0sdGhpcy5vcmRlci5zcGxpY2UodGhpcy5vcmRlci5pbmRleE9mKHQpLDEpLGUudmFsdWV9Z2V0QnlLZXkodCl7Y29uc3QgZT10aGlzLmRhdGFbdF07cmV0dXJuIGU/ZVswXS52YWx1ZTpudWxsfWdldCh0KXtyZXR1cm4gdGhpcy5oYXModCk/dGhpcy5kYXRhW3Qud3JhcHBlZCgpLmtleV1bMF0udmFsdWU6bnVsbH1yZW1vdmUodCxlKXtpZighdGhpcy5oYXModCkpcmV0dXJuIHRoaXM7Y29uc3QgaT10LndyYXBwZWQoKS5rZXksYT12b2lkIDA9PT1lPzA6dGhpcy5kYXRhW2ldLmluZGV4T2YoZSkscz10aGlzLmRhdGFbaV1bYV07cmV0dXJuIHRoaXMuZGF0YVtpXS5zcGxpY2UoYSwxKSxzLnRpbWVvdXQmJmNsZWFyVGltZW91dChzLnRpbWVvdXQpLDA9PT10aGlzLmRhdGFbaV0ubGVuZ3RoJiZkZWxldGUgdGhpcy5kYXRhW2ldLHRoaXMub25SZW1vdmUocy52YWx1ZSksdGhpcy5vcmRlci5zcGxpY2UodGhpcy5vcmRlci5pbmRleE9mKGkpLDEpLHRoaXN9c2V0TWF4U2l6ZSh0KXtmb3IodGhpcy5tYXg9dDt0aGlzLm9yZGVyLmxlbmd0aD50aGlzLm1heDspe2NvbnN0IHQ9dGhpcy5fZ2V0QW5kUmVtb3ZlQnlLZXkodGhpcy5vcmRlclswXSk7dCYmdGhpcy5vblJlbW92ZSh0KTt9cmV0dXJuIHRoaXN9ZmlsdGVyKHQpe2NvbnN0IGU9W107Zm9yKGNvbnN0IGkgaW4gdGhpcy5kYXRhKWZvcihjb25zdCBhIG9mIHRoaXMuZGF0YVtpXSl0KGEudmFsdWUpfHxlLnB1c2goYSk7Zm9yKGNvbnN0IHQgb2YgZSl0aGlzLnJlbW92ZSh0LnZhbHVlLnRpbGVJRCx0KTt9fWNsYXNzIGN0e2NvbnN0cnVjdG9yKCl7dGhpcy5zdGF0ZT17fSx0aGlzLnN0YXRlQ2hhbmdlcz17fSx0aGlzLmRlbGV0ZWRTdGF0ZXM9e307fXVwZGF0ZVN0YXRlKHQsaSxhKXtjb25zdCBzPVN0cmluZyhpKTtpZih0aGlzLnN0YXRlQ2hhbmdlc1t0XT10aGlzLnN0YXRlQ2hhbmdlc1t0XXx8e30sdGhpcy5zdGF0ZUNoYW5nZXNbdF1bc109dGhpcy5zdGF0ZUNoYW5nZXNbdF1bc118fHt9LGUuZSh0aGlzLnN0YXRlQ2hhbmdlc1t0XVtzXSxhKSxudWxsPT09dGhpcy5kZWxldGVkU3RhdGVzW3RdKXt0aGlzLmRlbGV0ZWRTdGF0ZXNbdF09e307Zm9yKGNvbnN0IGUgaW4gdGhpcy5zdGF0ZVt0XSllIT09cyYmKHRoaXMuZGVsZXRlZFN0YXRlc1t0XVtlXT1udWxsKTt9ZWxzZSBpZih0aGlzLmRlbGV0ZWRTdGF0ZXNbdF0mJm51bGw9PT10aGlzLmRlbGV0ZWRTdGF0ZXNbdF1bc10pe3RoaXMuZGVsZXRlZFN0YXRlc1t0XVtzXT17fTtmb3IoY29uc3QgZSBpbiB0aGlzLnN0YXRlW3RdW3NdKWFbZV18fCh0aGlzLmRlbGV0ZWRTdGF0ZXNbdF1bc11bZV09bnVsbCk7fWVsc2UgZm9yKGNvbnN0IGUgaW4gYSl0aGlzLmRlbGV0ZWRTdGF0ZXNbdF0mJnRoaXMuZGVsZXRlZFN0YXRlc1t0XVtzXSYmbnVsbD09PXRoaXMuZGVsZXRlZFN0YXRlc1t0XVtzXVtlXSYmZGVsZXRlIHRoaXMuZGVsZXRlZFN0YXRlc1t0XVtzXVtlXTt9cmVtb3ZlRmVhdHVyZVN0YXRlKHQsZSxpKXtpZihudWxsPT09dGhpcy5kZWxldGVkU3RhdGVzW3RdKXJldHVybjtjb25zdCBhPVN0cmluZyhlKTtpZih0aGlzLmRlbGV0ZWRTdGF0ZXNbdF09dGhpcy5kZWxldGVkU3RhdGVzW3RdfHx7fSxpJiZ2b2lkIDAhPT1lKW51bGwhPT10aGlzLmRlbGV0ZWRTdGF0ZXNbdF1bYV0mJih0aGlzLmRlbGV0ZWRTdGF0ZXNbdF1bYV09dGhpcy5kZWxldGVkU3RhdGVzW3RdW2FdfHx7fSx0aGlzLmRlbGV0ZWRTdGF0ZXNbdF1bYV1baV09bnVsbCk7ZWxzZSBpZih2b2lkIDAhPT1lKWlmKHRoaXMuc3RhdGVDaGFuZ2VzW3RdJiZ0aGlzLnN0YXRlQ2hhbmdlc1t0XVthXSlmb3IoaSBpbiB0aGlzLmRlbGV0ZWRTdGF0ZXNbdF1bYV09e30sdGhpcy5zdGF0ZUNoYW5nZXNbdF1bYV0pdGhpcy5kZWxldGVkU3RhdGVzW3RdW2FdW2ldPW51bGw7ZWxzZSB0aGlzLmRlbGV0ZWRTdGF0ZXNbdF1bYV09bnVsbDtlbHNlIHRoaXMuZGVsZXRlZFN0YXRlc1t0XT1udWxsO31nZXRTdGF0ZSh0LGkpe2NvbnN0IGE9U3RyaW5nKGkpLHM9ZS5lKHt9LCh0aGlzLnN0YXRlW3RdfHx7fSlbYV0sKHRoaXMuc3RhdGVDaGFuZ2VzW3RdfHx7fSlbYV0pO2lmKG51bGw9PT10aGlzLmRlbGV0ZWRTdGF0ZXNbdF0pcmV0dXJuIHt9O2lmKHRoaXMuZGVsZXRlZFN0YXRlc1t0XSl7Y29uc3QgZT10aGlzLmRlbGV0ZWRTdGF0ZXNbdF1baV07aWYobnVsbD09PWUpcmV0dXJuIHt9O2Zvcihjb25zdCB0IGluIGUpZGVsZXRlIHNbdF07fXJldHVybiBzfWluaXRpYWxpemVUaWxlU3RhdGUodCxlKXt0LnNldEZlYXR1cmVTdGF0ZSh0aGlzLnN0YXRlLGUpO31jb2FsZXNjZUNoYW5nZXModCxpKXtjb25zdCBhPXt9O2Zvcihjb25zdCB0IGluIHRoaXMuc3RhdGVDaGFuZ2VzKXt0aGlzLnN0YXRlW3RdPXRoaXMuc3RhdGVbdF18fHt9O2NvbnN0IGk9e307Zm9yKGNvbnN0IGEgaW4gdGhpcy5zdGF0ZUNoYW5nZXNbdF0pdGhpcy5zdGF0ZVt0XVthXXx8KHRoaXMuc3RhdGVbdF1bYV09e30pLGUuZSh0aGlzLnN0YXRlW3RdW2FdLHRoaXMuc3RhdGVDaGFuZ2VzW3RdW2FdKSxpW2FdPXRoaXMuc3RhdGVbdF1bYV07YVt0XT1pO31mb3IoY29uc3QgdCBpbiB0aGlzLmRlbGV0ZWRTdGF0ZXMpe3RoaXMuc3RhdGVbdF09dGhpcy5zdGF0ZVt0XXx8e307Y29uc3QgaT17fTtpZihudWxsPT09dGhpcy5kZWxldGVkU3RhdGVzW3RdKWZvcihjb25zdCBlIGluIHRoaXMuc3RhdGVbdF0paVtlXT17fSx0aGlzLnN0YXRlW3RdW2VdPXt9O2Vsc2UgZm9yKGNvbnN0IGUgaW4gdGhpcy5kZWxldGVkU3RhdGVzW3RdKXtpZihudWxsPT09dGhpcy5kZWxldGVkU3RhdGVzW3RdW2VdKXRoaXMuc3RhdGVbdF1bZV09e307ZWxzZSBmb3IoY29uc3QgaSBvZiBPYmplY3Qua2V5cyh0aGlzLmRlbGV0ZWRTdGF0ZXNbdF1bZV0pKWRlbGV0ZSB0aGlzLnN0YXRlW3RdW2VdW2ldO2lbZV09dGhpcy5zdGF0ZVt0XVtlXTt9YVt0XT1hW3RdfHx7fSxlLmUoYVt0XSxpKTt9aWYodGhpcy5zdGF0ZUNoYW5nZXM9e30sdGhpcy5kZWxldGVkU3RhdGVzPXt9LDAhPT1PYmplY3Qua2V5cyhhKS5sZW5ndGgpZm9yKGNvbnN0IGUgaW4gdCl0W2VdLnNldEZlYXR1cmVTdGF0ZShhLGkpO319Y2xhc3MgdXQgZXh0ZW5kcyBlLkV7Y29uc3RydWN0b3IodCxlLGkpe3N1cGVyKCksdGhpcy5pZD10LHRoaXMuZGlzcGF0Y2hlcj1pLHRoaXMub24oXCJkYXRhXCIsKHQ9PnRoaXMuX2RhdGFIYW5kbGVyKHQpKSksdGhpcy5vbihcImRhdGFsb2FkaW5nXCIsKCgpPT57dGhpcy5fc291cmNlRXJyb3JlZD0hMTt9KSksdGhpcy5vbihcImVycm9yXCIsKCgpPT57dGhpcy5fc291cmNlRXJyb3JlZD10aGlzLl9zb3VyY2UubG9hZGVkKCk7fSkpLHRoaXMuX3NvdXJjZT0oKHQsZSxpLGEpPT57Y29uc3Qgcz1uZXcoYXQoZS50eXBlKSkodCxlLGksYSk7aWYocy5pZCE9PXQpdGhyb3cgbmV3IEVycm9yKGBFeHBlY3RlZCBTb3VyY2UgaWQgdG8gYmUgJHt0fSBpbnN0ZWFkIG9mICR7cy5pZH1gKTtyZXR1cm4gc30pKHQsZSxpLHRoaXMpLHRoaXMuX3RpbGVzPXt9LHRoaXMuX2NhY2hlPW5ldyBodCgwLCh0PT50aGlzLl91bmxvYWRUaWxlKHQpKSksdGhpcy5fdGltZXJzPXt9LHRoaXMuX2NhY2hlVGltZXJzPXt9LHRoaXMuX21heFRpbGVDYWNoZVNpemU9bnVsbCx0aGlzLl9tYXhUaWxlQ2FjaGVab29tTGV2ZWxzPW51bGwsdGhpcy5fbG9hZGVkUGFyZW50VGlsZXM9e30sdGhpcy5fY292ZXJlZFRpbGVzPXt9LHRoaXMuX3N0YXRlPW5ldyBjdCx0aGlzLl9kaWRFbWl0Q29udGVudD0hMSx0aGlzLl91cGRhdGVkPSExO31vbkFkZCh0KXt0aGlzLm1hcD10LHRoaXMuX21heFRpbGVDYWNoZVNpemU9dD90Ll9tYXhUaWxlQ2FjaGVTaXplOm51bGwsdGhpcy5fbWF4VGlsZUNhY2hlWm9vbUxldmVscz10P3QuX21heFRpbGVDYWNoZVpvb21MZXZlbHM6bnVsbCx0aGlzLl9zb3VyY2UmJnRoaXMuX3NvdXJjZS5vbkFkZCYmdGhpcy5fc291cmNlLm9uQWRkKHQpO31vblJlbW92ZSh0KXt0aGlzLmNsZWFyVGlsZXMoKSx0aGlzLl9zb3VyY2UmJnRoaXMuX3NvdXJjZS5vblJlbW92ZSYmdGhpcy5fc291cmNlLm9uUmVtb3ZlKHQpO31sb2FkZWQoKXtpZih0aGlzLl9zb3VyY2VFcnJvcmVkKXJldHVybiAhMDtpZighdGhpcy5fc291cmNlTG9hZGVkKXJldHVybiAhMTtpZighdGhpcy5fc291cmNlLmxvYWRlZCgpKXJldHVybiAhMTtpZighKHZvaWQgMD09PXRoaXMudXNlZCYmdm9pZCAwPT09dGhpcy51c2VkRm9yVGVycmFpbnx8dGhpcy51c2VkfHx0aGlzLnVzZWRGb3JUZXJyYWluKSlyZXR1cm4gITA7aWYoIXRoaXMuX3VwZGF0ZWQpcmV0dXJuICExO2Zvcihjb25zdCB0IGluIHRoaXMuX3RpbGVzKXtjb25zdCBlPXRoaXMuX3RpbGVzW3RdO2lmKFwibG9hZGVkXCIhPT1lLnN0YXRlJiZcImVycm9yZWRcIiE9PWUuc3RhdGUpcmV0dXJuICExfXJldHVybiAhMH1nZXRTb3VyY2UoKXtyZXR1cm4gdGhpcy5fc291cmNlfXBhdXNlKCl7dGhpcy5fcGF1c2VkPSEwO31yZXN1bWUoKXtpZighdGhpcy5fcGF1c2VkKXJldHVybjtjb25zdCB0PXRoaXMuX3Nob3VsZFJlbG9hZE9uUmVzdW1lO3RoaXMuX3BhdXNlZD0hMSx0aGlzLl9zaG91bGRSZWxvYWRPblJlc3VtZT0hMSx0JiZ0aGlzLnJlbG9hZCgpLHRoaXMudHJhbnNmb3JtJiZ0aGlzLnVwZGF0ZSh0aGlzLnRyYW5zZm9ybSx0aGlzLnRlcnJhaW4pO31fbG9hZFRpbGUodCxpLGEpe3JldHVybiBlLl8odGhpcyx2b2lkIDAsdm9pZCAwLChmdW5jdGlvbiooKXt0cnl7eWllbGQgdGhpcy5fc291cmNlLmxvYWRUaWxlKHQpLHRoaXMuX3RpbGVMb2FkZWQodCxpLGEpO31jYXRjaChpKXt0LnN0YXRlPVwiZXJyb3JlZFwiLDQwNCE9PWkuc3RhdHVzP3RoaXMuX3NvdXJjZS5maXJlKG5ldyBlLmooaSx7dGlsZTp0fSkpOnRoaXMudXBkYXRlKHRoaXMudHJhbnNmb3JtLHRoaXMudGVycmFpbik7fX0pKX1fdW5sb2FkVGlsZSh0KXt0aGlzLl9zb3VyY2UudW5sb2FkVGlsZSYmdGhpcy5fc291cmNlLnVubG9hZFRpbGUodCk7fV9hYm9ydFRpbGUodCl7dGhpcy5fc291cmNlLmFib3J0VGlsZSYmdGhpcy5fc291cmNlLmFib3J0VGlsZSh0KSx0aGlzLl9zb3VyY2UuZmlyZShuZXcgZS5rKFwiZGF0YWFib3J0XCIse3RpbGU6dCxjb29yZDp0LnRpbGVJRCxkYXRhVHlwZTpcInNvdXJjZVwifSkpO31zZXJpYWxpemUoKXtyZXR1cm4gdGhpcy5fc291cmNlLnNlcmlhbGl6ZSgpfXByZXBhcmUodCl7dGhpcy5fc291cmNlLnByZXBhcmUmJnRoaXMuX3NvdXJjZS5wcmVwYXJlKCksdGhpcy5fc3RhdGUuY29hbGVzY2VDaGFuZ2VzKHRoaXMuX3RpbGVzLHRoaXMubWFwP3RoaXMubWFwLnBhaW50ZXI6bnVsbCk7Zm9yKGNvbnN0IGUgaW4gdGhpcy5fdGlsZXMpe2NvbnN0IGk9dGhpcy5fdGlsZXNbZV07aS51cGxvYWQodCksaS5wcmVwYXJlKHRoaXMubWFwLnN0eWxlLmltYWdlTWFuYWdlcik7fX1nZXRJZHMoKXtyZXR1cm4gT2JqZWN0LnZhbHVlcyh0aGlzLl90aWxlcykubWFwKCh0PT50LnRpbGVJRCkpLnNvcnQoZHQpLm1hcCgodD0+dC5rZXkpKX1nZXRSZW5kZXJhYmxlSWRzKHQpe2NvbnN0IGk9W107Zm9yKGNvbnN0IGUgaW4gdGhpcy5fdGlsZXMpdGhpcy5faXNJZFJlbmRlcmFibGUoZSx0KSYmaS5wdXNoKHRoaXMuX3RpbGVzW2VdKTtyZXR1cm4gdD9pLnNvcnQoKCh0LGkpPT57Y29uc3QgYT10LnRpbGVJRCxzPWkudGlsZUlELG89bmV3IGUuUChhLmNhbm9uaWNhbC54LGEuY2Fub25pY2FsLnkpLl9yb3RhdGUodGhpcy50cmFuc2Zvcm0uYW5nbGUpLHI9bmV3IGUuUChzLmNhbm9uaWNhbC54LHMuY2Fub25pY2FsLnkpLl9yb3RhdGUodGhpcy50cmFuc2Zvcm0uYW5nbGUpO3JldHVybiBhLm92ZXJzY2FsZWRaLXMub3ZlcnNjYWxlZFp8fHIueS1vLnl8fHIueC1vLnh9KSkubWFwKCh0PT50LnRpbGVJRC5rZXkpKTppLm1hcCgodD0+dC50aWxlSUQpKS5zb3J0KGR0KS5tYXAoKHQ9PnQua2V5KSl9aGFzUmVuZGVyYWJsZVBhcmVudCh0KXtjb25zdCBlPXRoaXMuZmluZExvYWRlZFBhcmVudCh0LDApO3JldHVybiAhIWUmJnRoaXMuX2lzSWRSZW5kZXJhYmxlKGUudGlsZUlELmtleSl9X2lzSWRSZW5kZXJhYmxlKHQsZSl7cmV0dXJuIHRoaXMuX3RpbGVzW3RdJiZ0aGlzLl90aWxlc1t0XS5oYXNEYXRhKCkmJiF0aGlzLl9jb3ZlcmVkVGlsZXNbdF0mJihlfHwhdGhpcy5fdGlsZXNbdF0uaG9sZGluZ0ZvckZhZGUoKSl9cmVsb2FkKCl7aWYodGhpcy5fcGF1c2VkKXRoaXMuX3Nob3VsZFJlbG9hZE9uUmVzdW1lPSEwO2Vsc2Uge3RoaXMuX2NhY2hlLnJlc2V0KCk7Zm9yKGNvbnN0IHQgaW4gdGhpcy5fdGlsZXMpXCJlcnJvcmVkXCIhPT10aGlzLl90aWxlc1t0XS5zdGF0ZSYmdGhpcy5fcmVsb2FkVGlsZSh0LFwicmVsb2FkaW5nXCIpO319X3JlbG9hZFRpbGUodCxpKXtyZXR1cm4gZS5fKHRoaXMsdm9pZCAwLHZvaWQgMCwoZnVuY3Rpb24qKCl7Y29uc3QgZT10aGlzLl90aWxlc1t0XTtlJiYoXCJsb2FkaW5nXCIhPT1lLnN0YXRlJiYoZS5zdGF0ZT1pKSx5aWVsZCB0aGlzLl9sb2FkVGlsZShlLHQsaSkpO30pKX1fdGlsZUxvYWRlZCh0LGksYSl7dC50aW1lQWRkZWQ9by5ub3coKSxcImV4cGlyZWRcIj09PWEmJih0LnJlZnJlc2hlZFVwb25FeHBpcmF0aW9uPSEwKSx0aGlzLl9zZXRUaWxlUmVsb2FkVGltZXIoaSx0KSxcInJhc3Rlci1kZW1cIj09PXRoaXMuZ2V0U291cmNlKCkudHlwZSYmdC5kZW0mJnRoaXMuX2JhY2tmaWxsREVNKHQpLHRoaXMuX3N0YXRlLmluaXRpYWxpemVUaWxlU3RhdGUodCx0aGlzLm1hcD90aGlzLm1hcC5wYWludGVyOm51bGwpLHQuYWJvcnRlZHx8dGhpcy5fc291cmNlLmZpcmUobmV3IGUuayhcImRhdGFcIix7ZGF0YVR5cGU6XCJzb3VyY2VcIix0aWxlOnQsY29vcmQ6dC50aWxlSUR9KSk7fV9iYWNrZmlsbERFTSh0KXtjb25zdCBlPXRoaXMuZ2V0UmVuZGVyYWJsZUlkcygpO2ZvcihsZXQgYT0wO2E8ZS5sZW5ndGg7YSsrKXtjb25zdCBzPWVbYV07aWYodC5uZWlnaGJvcmluZ1RpbGVzJiZ0Lm5laWdoYm9yaW5nVGlsZXNbc10pe2NvbnN0IGU9dGhpcy5nZXRUaWxlQnlJRChzKTtpKHQsZSksaShlLHQpO319ZnVuY3Rpb24gaSh0LGUpe3QubmVlZHNIaWxsc2hhZGVQcmVwYXJlPSEwLHQubmVlZHNUZXJyYWluUHJlcGFyZT0hMDtsZXQgaT1lLnRpbGVJRC5jYW5vbmljYWwueC10LnRpbGVJRC5jYW5vbmljYWwueDtjb25zdCBhPWUudGlsZUlELmNhbm9uaWNhbC55LXQudGlsZUlELmNhbm9uaWNhbC55LHM9TWF0aC5wb3coMix0LnRpbGVJRC5jYW5vbmljYWwueiksbz1lLnRpbGVJRC5rZXk7MD09PWkmJjA9PT1hfHxNYXRoLmFicyhhKT4xfHwoTWF0aC5hYnMoaSk+MSYmKDE9PT1NYXRoLmFicyhpK3MpP2krPXM6MT09PU1hdGguYWJzKGktcykmJihpLT1zKSksZS5kZW0mJnQuZGVtJiYodC5kZW0uYmFja2ZpbGxCb3JkZXIoZS5kZW0saSxhKSx0Lm5laWdoYm9yaW5nVGlsZXMmJnQubmVpZ2hib3JpbmdUaWxlc1tvXSYmKHQubmVpZ2hib3JpbmdUaWxlc1tvXS5iYWNrZmlsbGVkPSEwKSkpO319Z2V0VGlsZSh0KXtyZXR1cm4gdGhpcy5nZXRUaWxlQnlJRCh0LmtleSl9Z2V0VGlsZUJ5SUQodCl7cmV0dXJuIHRoaXMuX3RpbGVzW3RdfV9yZXRhaW5Mb2FkZWRDaGlsZHJlbih0LGUsaSxhKXtmb3IoY29uc3QgcyBpbiB0aGlzLl90aWxlcyl7bGV0IG89dGhpcy5fdGlsZXNbc107aWYoYVtzXXx8IW8uaGFzRGF0YSgpfHxvLnRpbGVJRC5vdmVyc2NhbGVkWjw9ZXx8by50aWxlSUQub3ZlcnNjYWxlZFo+aSljb250aW51ZTtsZXQgcj1vLnRpbGVJRDtmb3IoO28mJm8udGlsZUlELm92ZXJzY2FsZWRaPmUrMTspe2NvbnN0IHQ9by50aWxlSUQuc2NhbGVkVG8oby50aWxlSUQub3ZlcnNjYWxlZFotMSk7bz10aGlzLl90aWxlc1t0LmtleV0sbyYmby5oYXNEYXRhKCkmJihyPXQpO31sZXQgbj1yO2Zvcig7bi5vdmVyc2NhbGVkWj5lOylpZihuPW4uc2NhbGVkVG8obi5vdmVyc2NhbGVkWi0xKSx0W24ua2V5XSl7YVtyLmtleV09cjticmVha319fWZpbmRMb2FkZWRQYXJlbnQodCxlKXtpZih0LmtleSBpbiB0aGlzLl9sb2FkZWRQYXJlbnRUaWxlcyl7Y29uc3QgaT10aGlzLl9sb2FkZWRQYXJlbnRUaWxlc1t0LmtleV07cmV0dXJuIGkmJmkudGlsZUlELm92ZXJzY2FsZWRaPj1lP2k6bnVsbH1mb3IobGV0IGk9dC5vdmVyc2NhbGVkWi0xO2k+PWU7aS0tKXtjb25zdCBlPXQuc2NhbGVkVG8oaSksYT10aGlzLl9nZXRMb2FkZWRUaWxlKGUpO2lmKGEpcmV0dXJuIGF9fWZpbmRMb2FkZWRTaWJsaW5nKHQpe3JldHVybiB0aGlzLl9nZXRMb2FkZWRUaWxlKHQpfV9nZXRMb2FkZWRUaWxlKHQpe2NvbnN0IGU9dGhpcy5fdGlsZXNbdC5rZXldO3JldHVybiBlJiZlLmhhc0RhdGEoKT9lOnRoaXMuX2NhY2hlLmdldEJ5S2V5KHQud3JhcHBlZCgpLmtleSl9dXBkYXRlQ2FjaGVTaXplKHQpe2NvbnN0IGk9TWF0aC5jZWlsKHQud2lkdGgvdGhpcy5fc291cmNlLnRpbGVTaXplKSsxLGE9TWF0aC5jZWlsKHQuaGVpZ2h0L3RoaXMuX3NvdXJjZS50aWxlU2l6ZSkrMSxzPU1hdGguZmxvb3IoaSphKihudWxsPT09dGhpcy5fbWF4VGlsZUNhY2hlWm9vbUxldmVscz9lLmEuTUFYX1RJTEVfQ0FDSEVfWk9PTV9MRVZFTFM6dGhpcy5fbWF4VGlsZUNhY2hlWm9vbUxldmVscykpLG89XCJudW1iZXJcIj09dHlwZW9mIHRoaXMuX21heFRpbGVDYWNoZVNpemU/TWF0aC5taW4odGhpcy5fbWF4VGlsZUNhY2hlU2l6ZSxzKTpzO3RoaXMuX2NhY2hlLnNldE1heFNpemUobyk7fWhhbmRsZVdyYXBKdW1wKHQpe2NvbnN0IGU9TWF0aC5yb3VuZCgodC0odm9pZCAwPT09dGhpcy5fcHJldkxuZz90OnRoaXMuX3ByZXZMbmcpKS8zNjApO2lmKHRoaXMuX3ByZXZMbmc9dCxlKXtjb25zdCB0PXt9O2Zvcihjb25zdCBpIGluIHRoaXMuX3RpbGVzKXtjb25zdCBhPXRoaXMuX3RpbGVzW2ldO2EudGlsZUlEPWEudGlsZUlELnVud3JhcFRvKGEudGlsZUlELndyYXArZSksdFthLnRpbGVJRC5rZXldPWE7fXRoaXMuX3RpbGVzPXQ7Zm9yKGNvbnN0IHQgaW4gdGhpcy5fdGltZXJzKWNsZWFyVGltZW91dCh0aGlzLl90aW1lcnNbdF0pLGRlbGV0ZSB0aGlzLl90aW1lcnNbdF07Zm9yKGNvbnN0IHQgaW4gdGhpcy5fdGlsZXMpdGhpcy5fc2V0VGlsZVJlbG9hZFRpbWVyKHQsdGhpcy5fdGlsZXNbdF0pO319X3VwZGF0ZUNvdmVyZWRBbmRSZXRhaW5lZFRpbGVzKHQsZSxpLGEscyxyKXtjb25zdCBuPXt9LGw9e30saD1PYmplY3Qua2V5cyh0KSxjPW8ubm93KCk7Zm9yKGNvbnN0IGkgb2YgaCl7Y29uc3QgYT10W2ldLHM9dGhpcy5fdGlsZXNbaV07aWYoIXN8fDAhPT1zLmZhZGVFbmRUaW1lJiZzLmZhZGVFbmRUaW1lPD1jKWNvbnRpbnVlO2NvbnN0IG89dGhpcy5maW5kTG9hZGVkUGFyZW50KGEsZSkscj10aGlzLmZpbmRMb2FkZWRTaWJsaW5nKGEpLGg9b3x8cnx8bnVsbDtoJiYodGhpcy5fYWRkVGlsZShoLnRpbGVJRCksbltoLnRpbGVJRC5rZXldPWgudGlsZUlEKSxsW2ldPWE7fXRoaXMuX3JldGFpbkxvYWRlZENoaWxkcmVuKGwsYSxpLHQpO2Zvcihjb25zdCBlIGluIG4pdFtlXXx8KHRoaXMuX2NvdmVyZWRUaWxlc1tlXT0hMCx0W2VdPW5bZV0pO2lmKHIpe2NvbnN0IGU9e30saT17fTtmb3IoY29uc3QgdCBvZiBzKXRoaXMuX3RpbGVzW3Qua2V5XS5oYXNEYXRhKCk/ZVt0LmtleV09dDppW3Qua2V5XT10O2Zvcihjb25zdCBhIGluIGkpe2NvbnN0IHM9aVthXS5jaGlsZHJlbih0aGlzLl9zb3VyY2UubWF4em9vbSk7dGhpcy5fdGlsZXNbc1swXS5rZXldJiZ0aGlzLl90aWxlc1tzWzFdLmtleV0mJnRoaXMuX3RpbGVzW3NbMl0ua2V5XSYmdGhpcy5fdGlsZXNbc1szXS5rZXldJiYoZVtzWzBdLmtleV09dFtzWzBdLmtleV09c1swXSxlW3NbMV0ua2V5XT10W3NbMV0ua2V5XT1zWzFdLGVbc1syXS5rZXldPXRbc1syXS5rZXldPXNbMl0sZVtzWzNdLmtleV09dFtzWzNdLmtleV09c1szXSxkZWxldGUgaVthXSk7fWZvcihjb25zdCBhIGluIGkpe2NvbnN0IHM9aVthXSxvPXRoaXMuZmluZExvYWRlZFBhcmVudChzLHRoaXMuX3NvdXJjZS5taW56b29tKSxyPXRoaXMuZmluZExvYWRlZFNpYmxpbmcocyksbj1vfHxyfHxudWxsO2lmKG4pe2Vbbi50aWxlSUQua2V5XT10W24udGlsZUlELmtleV09bi50aWxlSUQ7Zm9yKGNvbnN0IHQgaW4gZSllW3RdLmlzQ2hpbGRPZihuLnRpbGVJRCkmJmRlbGV0ZSBlW3RdO319Zm9yKGNvbnN0IHQgaW4gdGhpcy5fdGlsZXMpZVt0XXx8KHRoaXMuX2NvdmVyZWRUaWxlc1t0XT0hMCk7fX11cGRhdGUodCxpKXtpZighdGhpcy5fc291cmNlTG9hZGVkfHx0aGlzLl9wYXVzZWQpcmV0dXJuO2xldCBhO3RoaXMudHJhbnNmb3JtPXQsdGhpcy50ZXJyYWluPWksdGhpcy51cGRhdGVDYWNoZVNpemUodCksdGhpcy5oYW5kbGVXcmFwSnVtcCh0aGlzLnRyYW5zZm9ybS5jZW50ZXIubG5nKSx0aGlzLl9jb3ZlcmVkVGlsZXM9e30sdGhpcy51c2VkfHx0aGlzLnVzZWRGb3JUZXJyYWluP3RoaXMuX3NvdXJjZS50aWxlSUQ/YT10LmdldFZpc2libGVVbndyYXBwZWRDb29yZGluYXRlcyh0aGlzLl9zb3VyY2UudGlsZUlEKS5tYXAoKHQ9Pm5ldyBlLlModC5jYW5vbmljYWwueix0LndyYXAsdC5jYW5vbmljYWwueix0LmNhbm9uaWNhbC54LHQuY2Fub25pY2FsLnkpKSk6KGE9dC5jb3ZlcmluZ1RpbGVzKHt0aWxlU2l6ZTp0aGlzLnVzZWRGb3JUZXJyYWluP3RoaXMudGlsZVNpemU6dGhpcy5fc291cmNlLnRpbGVTaXplLG1pbnpvb206dGhpcy5fc291cmNlLm1pbnpvb20sbWF4em9vbTp0aGlzLl9zb3VyY2UubWF4em9vbSxyb3VuZFpvb206IXRoaXMudXNlZEZvclRlcnJhaW4mJnRoaXMuX3NvdXJjZS5yb3VuZFpvb20scmVwYXJzZU92ZXJzY2FsZWQ6dGhpcy5fc291cmNlLnJlcGFyc2VPdmVyc2NhbGVkLHRlcnJhaW46aX0pLHRoaXMuX3NvdXJjZS5oYXNUaWxlJiYoYT1hLmZpbHRlcigodD0+dGhpcy5fc291cmNlLmhhc1RpbGUodCkpKSkpOmE9W107Y29uc3Qgcz10LmNvdmVyaW5nWm9vbUxldmVsKHRoaXMuX3NvdXJjZSksbz1NYXRoLm1heChzLXV0Lm1heE92ZXJ6b29taW5nLHRoaXMuX3NvdXJjZS5taW56b29tKSxyPU1hdGgubWF4KHMrdXQubWF4VW5kZXJ6b29taW5nLHRoaXMuX3NvdXJjZS5taW56b29tKTtpZih0aGlzLnVzZWRGb3JUZXJyYWluKXtjb25zdCB0PXt9O2Zvcihjb25zdCBlIG9mIGEpaWYoZS5jYW5vbmljYWwuej50aGlzLl9zb3VyY2UubWluem9vbSl7Y29uc3QgaT1lLnNjYWxlZFRvKGUuY2Fub25pY2FsLnotMSk7dFtpLmtleV09aTtjb25zdCBhPWUuc2NhbGVkVG8oTWF0aC5tYXgodGhpcy5fc291cmNlLm1pbnpvb20sTWF0aC5taW4oZS5jYW5vbmljYWwueiw1KSkpO3RbYS5rZXldPWE7fWE9YS5jb25jYXQoT2JqZWN0LnZhbHVlcyh0KSk7fWNvbnN0IG49MD09PWEubGVuZ3RoJiYhdGhpcy5fdXBkYXRlZCYmdGhpcy5fZGlkRW1pdENvbnRlbnQ7dGhpcy5fdXBkYXRlZD0hMCxuJiZ0aGlzLmZpcmUobmV3IGUuayhcImRhdGFcIix7c291cmNlRGF0YVR5cGU6XCJpZGxlXCIsZGF0YVR5cGU6XCJzb3VyY2VcIixzb3VyY2VJZDp0aGlzLmlkfSkpO2NvbnN0IGw9dGhpcy5fdXBkYXRlUmV0YWluZWRUaWxlcyhhLHMpO190KHRoaXMuX3NvdXJjZS50eXBlKSYmdGhpcy5fdXBkYXRlQ292ZXJlZEFuZFJldGFpbmVkVGlsZXMobCxvLHIscyxhLGkpO2Zvcihjb25zdCB0IGluIGwpdGhpcy5fdGlsZXNbdF0uY2xlYXJGYWRlSG9sZCgpO2NvbnN0IGg9ZS5hYih0aGlzLl90aWxlcyxsKTtmb3IoY29uc3QgdCBvZiBoKXtjb25zdCBlPXRoaXMuX3RpbGVzW3RdO2UuaGFzU3ltYm9sQnVja2V0cyYmIWUuaG9sZGluZ0ZvckZhZGUoKT9lLnNldEhvbGREdXJhdGlvbih0aGlzLm1hcC5fZmFkZUR1cmF0aW9uKTplLmhhc1N5bWJvbEJ1Y2tldHMmJiFlLnN5bWJvbEZhZGVGaW5pc2hlZCgpfHx0aGlzLl9yZW1vdmVUaWxlKHQpO310aGlzLl91cGRhdGVMb2FkZWRQYXJlbnRUaWxlQ2FjaGUoKSx0aGlzLl91cGRhdGVMb2FkZWRTaWJsaW5nVGlsZUNhY2hlKCk7fXJlbGVhc2VTeW1ib2xGYWRlVGlsZXMoKXtmb3IoY29uc3QgdCBpbiB0aGlzLl90aWxlcyl0aGlzLl90aWxlc1t0XS5ob2xkaW5nRm9yRmFkZSgpJiZ0aGlzLl9yZW1vdmVUaWxlKHQpO31fdXBkYXRlUmV0YWluZWRUaWxlcyh0LGUpe3ZhciBpO2NvbnN0IGE9e30scz17fSxvPU1hdGgubWF4KGUtdXQubWF4T3Zlcnpvb21pbmcsdGhpcy5fc291cmNlLm1pbnpvb20pLHI9TWF0aC5tYXgoZSt1dC5tYXhVbmRlcnpvb21pbmcsdGhpcy5fc291cmNlLm1pbnpvb20pLG49e307Zm9yKGNvbnN0IGkgb2YgdCl7Y29uc3QgdD10aGlzLl9hZGRUaWxlKGkpO2FbaS5rZXldPWksdC5oYXNEYXRhKCl8fGU8dGhpcy5fc291cmNlLm1heHpvb20mJihuW2kua2V5XT1pKTt9dGhpcy5fcmV0YWluTG9hZGVkQ2hpbGRyZW4obixlLHIsYSk7Zm9yKGNvbnN0IHIgb2YgdCl7bGV0IHQ9dGhpcy5fdGlsZXNbci5rZXldO2lmKHQuaGFzRGF0YSgpKWNvbnRpbnVlO2lmKGUrMT50aGlzLl9zb3VyY2UubWF4em9vbSl7Y29uc3QgdD1yLmNoaWxkcmVuKHRoaXMuX3NvdXJjZS5tYXh6b29tKVswXSxlPXRoaXMuZ2V0VGlsZSh0KTtpZihlJiZlLmhhc0RhdGEoKSl7YVt0LmtleV09dDtjb250aW51ZX19ZWxzZSB7Y29uc3QgdD1yLmNoaWxkcmVuKHRoaXMuX3NvdXJjZS5tYXh6b29tKTtpZihhW3RbMF0ua2V5XSYmYVt0WzFdLmtleV0mJmFbdFsyXS5rZXldJiZhW3RbM10ua2V5XSljb250aW51ZX1sZXQgbj10Lndhc1JlcXVlc3RlZCgpO2ZvcihsZXQgZT1yLm92ZXJzY2FsZWRaLTE7ZT49bzstLWUpe2NvbnN0IG89ci5zY2FsZWRUbyhlKTtpZihzW28ua2V5XSlicmVhaztpZihzW28ua2V5XT0hMCx0PXRoaXMuZ2V0VGlsZShvKSwhdCYmbiYmKHQ9dGhpcy5fYWRkVGlsZShvKSksdCl7Y29uc3QgZT10Lmhhc0RhdGEoKTtpZigoZXx8IShudWxsPT09KGk9dGhpcy5tYXApfHx2b2lkIDA9PT1pP3ZvaWQgMDppLmNhbmNlbFBlbmRpbmdUaWxlUmVxdWVzdHNXaGlsZVpvb21pbmcpfHxuKSYmKGFbby5rZXldPW8pLG49dC53YXNSZXF1ZXN0ZWQoKSxlKWJyZWFrfX19cmV0dXJuIGF9X3VwZGF0ZUxvYWRlZFBhcmVudFRpbGVDYWNoZSgpe3RoaXMuX2xvYWRlZFBhcmVudFRpbGVzPXt9O2Zvcihjb25zdCB0IGluIHRoaXMuX3RpbGVzKXtjb25zdCBlPVtdO2xldCBpLGE9dGhpcy5fdGlsZXNbdF0udGlsZUlEO2Zvcig7YS5vdmVyc2NhbGVkWj4wOyl7aWYoYS5rZXkgaW4gdGhpcy5fbG9hZGVkUGFyZW50VGlsZXMpe2k9dGhpcy5fbG9hZGVkUGFyZW50VGlsZXNbYS5rZXldO2JyZWFrfWUucHVzaChhLmtleSk7Y29uc3QgdD1hLnNjYWxlZFRvKGEub3ZlcnNjYWxlZFotMSk7aWYoaT10aGlzLl9nZXRMb2FkZWRUaWxlKHQpLGkpYnJlYWs7YT10O31mb3IoY29uc3QgdCBvZiBlKXRoaXMuX2xvYWRlZFBhcmVudFRpbGVzW3RdPWk7fX1fdXBkYXRlTG9hZGVkU2libGluZ1RpbGVDYWNoZSgpe3RoaXMuX2xvYWRlZFNpYmxpbmdUaWxlcz17fTtmb3IoY29uc3QgdCBpbiB0aGlzLl90aWxlcyl7Y29uc3QgZT10aGlzLl90aWxlc1t0XS50aWxlSUQsaT10aGlzLl9nZXRMb2FkZWRUaWxlKGUpO3RoaXMuX2xvYWRlZFNpYmxpbmdUaWxlc1tlLmtleV09aTt9fV9hZGRUaWxlKHQpe2xldCBpPXRoaXMuX3RpbGVzW3Qua2V5XTtpZihpKXJldHVybiBpO2k9dGhpcy5fY2FjaGUuZ2V0QW5kUmVtb3ZlKHQpLGkmJih0aGlzLl9zZXRUaWxlUmVsb2FkVGltZXIodC5rZXksaSksaS50aWxlSUQ9dCx0aGlzLl9zdGF0ZS5pbml0aWFsaXplVGlsZVN0YXRlKGksdGhpcy5tYXA/dGhpcy5tYXAucGFpbnRlcjpudWxsKSx0aGlzLl9jYWNoZVRpbWVyc1t0LmtleV0mJihjbGVhclRpbWVvdXQodGhpcy5fY2FjaGVUaW1lcnNbdC5rZXldKSxkZWxldGUgdGhpcy5fY2FjaGVUaW1lcnNbdC5rZXldLHRoaXMuX3NldFRpbGVSZWxvYWRUaW1lcih0LmtleSxpKSkpO2NvbnN0IGE9aTtyZXR1cm4gaXx8KGk9bmV3IGx0KHQsdGhpcy5fc291cmNlLnRpbGVTaXplKnQub3ZlcnNjYWxlRmFjdG9yKCkpLHRoaXMuX2xvYWRUaWxlKGksdC5rZXksaS5zdGF0ZSkpLGkudXNlcysrLHRoaXMuX3RpbGVzW3Qua2V5XT1pLGF8fHRoaXMuX3NvdXJjZS5maXJlKG5ldyBlLmsoXCJkYXRhbG9hZGluZ1wiLHt0aWxlOmksY29vcmQ6aS50aWxlSUQsZGF0YVR5cGU6XCJzb3VyY2VcIn0pKSxpfV9zZXRUaWxlUmVsb2FkVGltZXIodCxlKXt0IGluIHRoaXMuX3RpbWVycyYmKGNsZWFyVGltZW91dCh0aGlzLl90aW1lcnNbdF0pLGRlbGV0ZSB0aGlzLl90aW1lcnNbdF0pO2NvbnN0IGk9ZS5nZXRFeHBpcnlUaW1lb3V0KCk7aSYmKHRoaXMuX3RpbWVyc1t0XT1zZXRUaW1lb3V0KCgoKT0+e3RoaXMuX3JlbG9hZFRpbGUodCxcImV4cGlyZWRcIiksZGVsZXRlIHRoaXMuX3RpbWVyc1t0XTt9KSxpKSk7fV9yZW1vdmVUaWxlKHQpe2NvbnN0IGU9dGhpcy5fdGlsZXNbdF07ZSYmKGUudXNlcy0tLGRlbGV0ZSB0aGlzLl90aWxlc1t0XSx0aGlzLl90aW1lcnNbdF0mJihjbGVhclRpbWVvdXQodGhpcy5fdGltZXJzW3RdKSxkZWxldGUgdGhpcy5fdGltZXJzW3RdKSxlLnVzZXM+MHx8KGUuaGFzRGF0YSgpJiZcInJlbG9hZGluZ1wiIT09ZS5zdGF0ZT90aGlzLl9jYWNoZS5hZGQoZS50aWxlSUQsZSxlLmdldEV4cGlyeVRpbWVvdXQoKSk6KGUuYWJvcnRlZD0hMCx0aGlzLl9hYm9ydFRpbGUoZSksdGhpcy5fdW5sb2FkVGlsZShlKSkpKTt9X2RhdGFIYW5kbGVyKHQpe2NvbnN0IGU9dC5zb3VyY2VEYXRhVHlwZTtcInNvdXJjZVwiPT09dC5kYXRhVHlwZSYmXCJtZXRhZGF0YVwiPT09ZSYmKHRoaXMuX3NvdXJjZUxvYWRlZD0hMCksdGhpcy5fc291cmNlTG9hZGVkJiYhdGhpcy5fcGF1c2VkJiZcInNvdXJjZVwiPT09dC5kYXRhVHlwZSYmXCJjb250ZW50XCI9PT1lJiYodGhpcy5yZWxvYWQoKSx0aGlzLnRyYW5zZm9ybSYmdGhpcy51cGRhdGUodGhpcy50cmFuc2Zvcm0sdGhpcy50ZXJyYWluKSx0aGlzLl9kaWRFbWl0Q29udGVudD0hMCk7fWNsZWFyVGlsZXMoKXt0aGlzLl9zaG91bGRSZWxvYWRPblJlc3VtZT0hMSx0aGlzLl9wYXVzZWQ9ITE7Zm9yKGNvbnN0IHQgaW4gdGhpcy5fdGlsZXMpdGhpcy5fcmVtb3ZlVGlsZSh0KTt0aGlzLl9jYWNoZS5yZXNldCgpO310aWxlc0luKHQsaSxhKXtjb25zdCBzPVtdLG89dGhpcy50cmFuc2Zvcm07aWYoIW8pcmV0dXJuIHM7Y29uc3Qgcj1hP28uZ2V0Q2FtZXJhUXVlcnlHZW9tZXRyeSh0KTp0LG49dC5tYXAoKHQ9Pm8ucG9pbnRDb29yZGluYXRlKHQsdGhpcy50ZXJyYWluKSkpLGw9ci5tYXAoKHQ9Pm8ucG9pbnRDb29yZGluYXRlKHQsdGhpcy50ZXJyYWluKSkpLGg9dGhpcy5nZXRJZHMoKTtsZXQgYz0xLzAsdT0xLzAsZD0tMS8wLF89LTEvMDtmb3IoY29uc3QgdCBvZiBsKWM9TWF0aC5taW4oYyx0LngpLHU9TWF0aC5taW4odSx0LnkpLGQ9TWF0aC5tYXgoZCx0LngpLF89TWF0aC5tYXgoXyx0LnkpO2ZvcihsZXQgdD0wO3Q8aC5sZW5ndGg7dCsrKXtjb25zdCBhPXRoaXMuX3RpbGVzW2hbdF1dO2lmKGEuaG9sZGluZ0ZvckZhZGUoKSljb250aW51ZTtjb25zdCByPWEudGlsZUlELHA9TWF0aC5wb3coMixvLnpvb20tYS50aWxlSUQub3ZlcnNjYWxlZFopLG09aSphLnF1ZXJ5UGFkZGluZyplLlgvYS50aWxlU2l6ZS9wLGY9W3IuZ2V0VGlsZVBvaW50KG5ldyBlLlooYyx1KSksci5nZXRUaWxlUG9pbnQobmV3IGUuWihkLF8pKV07aWYoZlswXS54LW08ZS5YJiZmWzBdLnktbTxlLlgmJmZbMV0ueCttPj0wJiZmWzFdLnkrbT49MCl7Y29uc3QgdD1uLm1hcCgodD0+ci5nZXRUaWxlUG9pbnQodCkpKSxlPWwubWFwKCh0PT5yLmdldFRpbGVQb2ludCh0KSkpO3MucHVzaCh7dGlsZTphLHRpbGVJRDpyLHF1ZXJ5R2VvbWV0cnk6dCxjYW1lcmFRdWVyeUdlb21ldHJ5OmUsc2NhbGU6cH0pO319cmV0dXJuIHN9Z2V0VmlzaWJsZUNvb3JkaW5hdGVzKHQpe2NvbnN0IGU9dGhpcy5nZXRSZW5kZXJhYmxlSWRzKHQpLm1hcCgodD0+dGhpcy5fdGlsZXNbdF0udGlsZUlEKSk7Zm9yKGNvbnN0IHQgb2YgZSl0LnBvc01hdHJpeD10aGlzLnRyYW5zZm9ybS5jYWxjdWxhdGVQb3NNYXRyaXgodC50b1Vud3JhcHBlZCgpKTtyZXR1cm4gZX1oYXNUcmFuc2l0aW9uKCl7aWYodGhpcy5fc291cmNlLmhhc1RyYW5zaXRpb24oKSlyZXR1cm4gITA7aWYoX3QodGhpcy5fc291cmNlLnR5cGUpKXtjb25zdCB0PW8ubm93KCk7Zm9yKGNvbnN0IGUgaW4gdGhpcy5fdGlsZXMpaWYodGhpcy5fdGlsZXNbZV0uZmFkZUVuZFRpbWU+PXQpcmV0dXJuICEwfXJldHVybiAhMX1zZXRGZWF0dXJlU3RhdGUodCxlLGkpe3RoaXMuX3N0YXRlLnVwZGF0ZVN0YXRlKHQ9dHx8XCJfZ2VvanNvblRpbGVMYXllclwiLGUsaSk7fXJlbW92ZUZlYXR1cmVTdGF0ZSh0LGUsaSl7dGhpcy5fc3RhdGUucmVtb3ZlRmVhdHVyZVN0YXRlKHQ9dHx8XCJfZ2VvanNvblRpbGVMYXllclwiLGUsaSk7fWdldEZlYXR1cmVTdGF0ZSh0LGUpe3JldHVybiB0aGlzLl9zdGF0ZS5nZXRTdGF0ZSh0PXR8fFwiX2dlb2pzb25UaWxlTGF5ZXJcIixlKX1zZXREZXBlbmRlbmNpZXModCxlLGkpe2NvbnN0IGE9dGhpcy5fdGlsZXNbdF07YSYmYS5zZXREZXBlbmRlbmNpZXMoZSxpKTt9cmVsb2FkVGlsZXNGb3JEZXBlbmRlbmNpZXModCxlKXtmb3IoY29uc3QgaSBpbiB0aGlzLl90aWxlcyl0aGlzLl90aWxlc1tpXS5oYXNEZXBlbmRlbmN5KHQsZSkmJnRoaXMuX3JlbG9hZFRpbGUoaSxcInJlbG9hZGluZ1wiKTt0aGlzLl9jYWNoZS5maWx0ZXIoKGk9PiFpLmhhc0RlcGVuZGVuY3kodCxlKSkpO319ZnVuY3Rpb24gZHQodCxlKXtjb25zdCBpPU1hdGguYWJzKDIqdC53cmFwKS0rKHQud3JhcDwwKSxhPU1hdGguYWJzKDIqZS53cmFwKS0rKGUud3JhcDwwKTtyZXR1cm4gdC5vdmVyc2NhbGVkWi1lLm92ZXJzY2FsZWRafHxhLWl8fGUuY2Fub25pY2FsLnktdC5jYW5vbmljYWwueXx8ZS5jYW5vbmljYWwueC10LmNhbm9uaWNhbC54fWZ1bmN0aW9uIF90KHQpe3JldHVybiBcInJhc3RlclwiPT09dHx8XCJpbWFnZVwiPT09dHx8XCJ2aWRlb1wiPT09dH11dC5tYXhPdmVyem9vbWluZz0xMCx1dC5tYXhVbmRlcnpvb21pbmc9MztjbGFzcyBwdHtjb25zdHJ1Y3Rvcih0LGUpe3RoaXMucmVzZXQodCxlKTt9cmVzZXQodCxlKXt0aGlzLnBvaW50cz10fHxbXSx0aGlzLl9kaXN0YW5jZXM9WzBdO2ZvcihsZXQgdD0xO3Q8dGhpcy5wb2ludHMubGVuZ3RoO3QrKyl0aGlzLl9kaXN0YW5jZXNbdF09dGhpcy5fZGlzdGFuY2VzW3QtMV0rdGhpcy5wb2ludHNbdF0uZGlzdCh0aGlzLnBvaW50c1t0LTFdKTt0aGlzLmxlbmd0aD10aGlzLl9kaXN0YW5jZXNbdGhpcy5fZGlzdGFuY2VzLmxlbmd0aC0xXSx0aGlzLnBhZGRpbmc9TWF0aC5taW4oZXx8MCwuNSp0aGlzLmxlbmd0aCksdGhpcy5wYWRkZWRMZW5ndGg9dGhpcy5sZW5ndGgtMip0aGlzLnBhZGRpbmc7fWxlcnAodCl7aWYoMT09PXRoaXMucG9pbnRzLmxlbmd0aClyZXR1cm4gdGhpcy5wb2ludHNbMF07dD1lLmFjKHQsMCwxKTtsZXQgaT0xLGE9dGhpcy5fZGlzdGFuY2VzW2ldO2NvbnN0IHM9dCp0aGlzLnBhZGRlZExlbmd0aCt0aGlzLnBhZGRpbmc7Zm9yKDthPHMmJmk8dGhpcy5fZGlzdGFuY2VzLmxlbmd0aDspYT10aGlzLl9kaXN0YW5jZXNbKytpXTtjb25zdCBvPWktMSxyPXRoaXMuX2Rpc3RhbmNlc1tvXSxuPWEtcixsPW4+MD8ocy1yKS9uOjA7cmV0dXJuIHRoaXMucG9pbnRzW29dLm11bHQoMS1sKS5hZGQodGhpcy5wb2ludHNbaV0ubXVsdChsKSl9fWZ1bmN0aW9uIG10KHQsZSl7bGV0IGk9ITA7cmV0dXJuIFwiYWx3YXlzXCI9PT10fHxcIm5ldmVyXCIhPT10JiZcIm5ldmVyXCIhPT1lfHwoaT0hMSksaX1jbGFzcyBmdHtjb25zdHJ1Y3Rvcih0LGUsaSl7Y29uc3QgYT10aGlzLmJveENlbGxzPVtdLHM9dGhpcy5jaXJjbGVDZWxscz1bXTt0aGlzLnhDZWxsQ291bnQ9TWF0aC5jZWlsKHQvaSksdGhpcy55Q2VsbENvdW50PU1hdGguY2VpbChlL2kpO2ZvcihsZXQgdD0wO3Q8dGhpcy54Q2VsbENvdW50KnRoaXMueUNlbGxDb3VudDt0KyspYS5wdXNoKFtdKSxzLnB1c2goW10pO3RoaXMuY2lyY2xlS2V5cz1bXSx0aGlzLmJveEtleXM9W10sdGhpcy5iYm94ZXM9W10sdGhpcy5jaXJjbGVzPVtdLHRoaXMud2lkdGg9dCx0aGlzLmhlaWdodD1lLHRoaXMueFNjYWxlPXRoaXMueENlbGxDb3VudC90LHRoaXMueVNjYWxlPXRoaXMueUNlbGxDb3VudC9lLHRoaXMuYm94VWlkPTAsdGhpcy5jaXJjbGVVaWQ9MDt9a2V5c0xlbmd0aCgpe3JldHVybiB0aGlzLmJveEtleXMubGVuZ3RoK3RoaXMuY2lyY2xlS2V5cy5sZW5ndGh9aW5zZXJ0KHQsZSxpLGEscyl7dGhpcy5fZm9yRWFjaENlbGwoZSxpLGEscyx0aGlzLl9pbnNlcnRCb3hDZWxsLHRoaXMuYm94VWlkKyspLHRoaXMuYm94S2V5cy5wdXNoKHQpLHRoaXMuYmJveGVzLnB1c2goZSksdGhpcy5iYm94ZXMucHVzaChpKSx0aGlzLmJib3hlcy5wdXNoKGEpLHRoaXMuYmJveGVzLnB1c2gocyk7fWluc2VydENpcmNsZSh0LGUsaSxhKXt0aGlzLl9mb3JFYWNoQ2VsbChlLWEsaS1hLGUrYSxpK2EsdGhpcy5faW5zZXJ0Q2lyY2xlQ2VsbCx0aGlzLmNpcmNsZVVpZCsrKSx0aGlzLmNpcmNsZUtleXMucHVzaCh0KSx0aGlzLmNpcmNsZXMucHVzaChlKSx0aGlzLmNpcmNsZXMucHVzaChpKSx0aGlzLmNpcmNsZXMucHVzaChhKTt9X2luc2VydEJveENlbGwodCxlLGksYSxzLG8pe3RoaXMuYm94Q2VsbHNbc10ucHVzaChvKTt9X2luc2VydENpcmNsZUNlbGwodCxlLGksYSxzLG8pe3RoaXMuY2lyY2xlQ2VsbHNbc10ucHVzaChvKTt9X3F1ZXJ5KHQsZSxpLGEscyxvLHIpe2lmKGk8MHx8dD50aGlzLndpZHRofHxhPDB8fGU+dGhpcy5oZWlnaHQpcmV0dXJuIFtdO2NvbnN0IG49W107aWYodDw9MCYmZTw9MCYmdGhpcy53aWR0aDw9aSYmdGhpcy5oZWlnaHQ8PWEpe2lmKHMpcmV0dXJuIFt7a2V5Om51bGwseDE6dCx5MTplLHgyOmkseTI6YX1dO2ZvcihsZXQgdD0wO3Q8dGhpcy5ib3hLZXlzLmxlbmd0aDt0Kyspbi5wdXNoKHtrZXk6dGhpcy5ib3hLZXlzW3RdLHgxOnRoaXMuYmJveGVzWzQqdF0seTE6dGhpcy5iYm94ZXNbNCp0KzFdLHgyOnRoaXMuYmJveGVzWzQqdCsyXSx5Mjp0aGlzLmJib3hlc1s0KnQrM119KTtmb3IobGV0IHQ9MDt0PHRoaXMuY2lyY2xlS2V5cy5sZW5ndGg7dCsrKXtjb25zdCBlPXRoaXMuY2lyY2xlc1szKnRdLGk9dGhpcy5jaXJjbGVzWzMqdCsxXSxhPXRoaXMuY2lyY2xlc1szKnQrMl07bi5wdXNoKHtrZXk6dGhpcy5jaXJjbGVLZXlzW3RdLHgxOmUtYSx5MTppLWEseDI6ZSthLHkyOmkrYX0pO319ZWxzZSB0aGlzLl9mb3JFYWNoQ2VsbCh0LGUsaSxhLHRoaXMuX3F1ZXJ5Q2VsbCxuLHtoaXRUZXN0OnMsb3ZlcmxhcE1vZGU6byxzZWVuVWlkczp7Ym94Ont9LGNpcmNsZTp7fX19LHIpO3JldHVybiBufXF1ZXJ5KHQsZSxpLGEpe3JldHVybiB0aGlzLl9xdWVyeSh0LGUsaSxhLCExLG51bGwpfWhpdFRlc3QodCxlLGksYSxzLG8pe3JldHVybiB0aGlzLl9xdWVyeSh0LGUsaSxhLCEwLHMsbykubGVuZ3RoPjB9aGl0VGVzdENpcmNsZSh0LGUsaSxhLHMpe2NvbnN0IG89dC1pLHI9dCtpLG49ZS1pLGw9ZStpO2lmKHI8MHx8bz50aGlzLndpZHRofHxsPDB8fG4+dGhpcy5oZWlnaHQpcmV0dXJuICExO2NvbnN0IGg9W107cmV0dXJuIHRoaXMuX2ZvckVhY2hDZWxsKG8sbixyLGwsdGhpcy5fcXVlcnlDZWxsQ2lyY2xlLGgse2hpdFRlc3Q6ITAsb3ZlcmxhcE1vZGU6YSxjaXJjbGU6e3g6dCx5OmUscmFkaXVzOml9LHNlZW5VaWRzOntib3g6e30sY2lyY2xlOnt9fX0scyksaC5sZW5ndGg+MH1fcXVlcnlDZWxsKHQsZSxpLGEscyxvLHIsbil7Y29uc3R7c2VlblVpZHM6bCxoaXRUZXN0Omgsb3ZlcmxhcE1vZGU6Y309cix1PXRoaXMuYm94Q2VsbHNbc107aWYobnVsbCE9PXUpe2NvbnN0IHM9dGhpcy5iYm94ZXM7Zm9yKGNvbnN0IHIgb2YgdSlpZighbC5ib3hbcl0pe2wuYm94W3JdPSEwO2NvbnN0IHU9NCpyLGQ9dGhpcy5ib3hLZXlzW3JdO2lmKHQ8PXNbdSsyXSYmZTw9c1t1KzNdJiZpPj1zW3UrMF0mJmE+PXNbdSsxXSYmKCFufHxuKGQpKSYmKCFofHwhbXQoYyxkLm92ZXJsYXBNb2RlKSkmJihvLnB1c2goe2tleTpkLHgxOnNbdV0seTE6c1t1KzFdLHgyOnNbdSsyXSx5MjpzW3UrM119KSxoKSlyZXR1cm4gITB9fWNvbnN0IGQ9dGhpcy5jaXJjbGVDZWxsc1tzXTtpZihudWxsIT09ZCl7Y29uc3Qgcz10aGlzLmNpcmNsZXM7Zm9yKGNvbnN0IHIgb2YgZClpZighbC5jaXJjbGVbcl0pe2wuY2lyY2xlW3JdPSEwO2NvbnN0IHU9MypyLGQ9dGhpcy5jaXJjbGVLZXlzW3JdO2lmKHRoaXMuX2NpcmNsZUFuZFJlY3RDb2xsaWRlKHNbdV0sc1t1KzFdLHNbdSsyXSx0LGUsaSxhKSYmKCFufHxuKGQpKSYmKCFofHwhbXQoYyxkLm92ZXJsYXBNb2RlKSkpe2NvbnN0IHQ9c1t1XSxlPXNbdSsxXSxpPXNbdSsyXTtpZihvLnB1c2goe2tleTpkLHgxOnQtaSx5MTplLWkseDI6dCtpLHkyOmUraX0pLGgpcmV0dXJuICEwfX19cmV0dXJuICExfV9xdWVyeUNlbGxDaXJjbGUodCxlLGksYSxzLG8scixuKXtjb25zdHtjaXJjbGU6bCxzZWVuVWlkczpoLG92ZXJsYXBNb2RlOmN9PXIsdT10aGlzLmJveENlbGxzW3NdO2lmKG51bGwhPT11KXtjb25zdCB0PXRoaXMuYmJveGVzO2Zvcihjb25zdCBlIG9mIHUpaWYoIWguYm94W2VdKXtoLmJveFtlXT0hMDtjb25zdCBpPTQqZSxhPXRoaXMuYm94S2V5c1tlXTtpZih0aGlzLl9jaXJjbGVBbmRSZWN0Q29sbGlkZShsLngsbC55LGwucmFkaXVzLHRbaSswXSx0W2krMV0sdFtpKzJdLHRbaSszXSkmJighbnx8bihhKSkmJiFtdChjLGEub3ZlcmxhcE1vZGUpKXJldHVybiBvLnB1c2goITApLCEwfX1jb25zdCBkPXRoaXMuY2lyY2xlQ2VsbHNbc107aWYobnVsbCE9PWQpe2NvbnN0IHQ9dGhpcy5jaXJjbGVzO2Zvcihjb25zdCBlIG9mIGQpaWYoIWguY2lyY2xlW2VdKXtoLmNpcmNsZVtlXT0hMDtjb25zdCBpPTMqZSxhPXRoaXMuY2lyY2xlS2V5c1tlXTtpZih0aGlzLl9jaXJjbGVzQ29sbGlkZSh0W2ldLHRbaSsxXSx0W2krMl0sbC54LGwueSxsLnJhZGl1cykmJighbnx8bihhKSkmJiFtdChjLGEub3ZlcmxhcE1vZGUpKXJldHVybiBvLnB1c2goITApLCEwfX19X2ZvckVhY2hDZWxsKHQsZSxpLGEscyxvLHIsbil7Y29uc3QgbD10aGlzLl9jb252ZXJ0VG9YQ2VsbENvb3JkKHQpLGg9dGhpcy5fY29udmVydFRvWUNlbGxDb29yZChlKSxjPXRoaXMuX2NvbnZlcnRUb1hDZWxsQ29vcmQoaSksdT10aGlzLl9jb252ZXJ0VG9ZQ2VsbENvb3JkKGEpO2ZvcihsZXQgZD1sO2Q8PWM7ZCsrKWZvcihsZXQgbD1oO2w8PXU7bCsrKWlmKHMuY2FsbCh0aGlzLHQsZSxpLGEsdGhpcy54Q2VsbENvdW50KmwrZCxvLHIsbikpcmV0dXJufV9jb252ZXJ0VG9YQ2VsbENvb3JkKHQpe3JldHVybiBNYXRoLm1heCgwLE1hdGgubWluKHRoaXMueENlbGxDb3VudC0xLE1hdGguZmxvb3IodCp0aGlzLnhTY2FsZSkpKX1fY29udmVydFRvWUNlbGxDb29yZCh0KXtyZXR1cm4gTWF0aC5tYXgoMCxNYXRoLm1pbih0aGlzLnlDZWxsQ291bnQtMSxNYXRoLmZsb29yKHQqdGhpcy55U2NhbGUpKSl9X2NpcmNsZXNDb2xsaWRlKHQsZSxpLGEscyxvKXtjb25zdCByPWEtdCxuPXMtZSxsPWkrbztyZXR1cm4gbCpsPnIqcituKm59X2NpcmNsZUFuZFJlY3RDb2xsaWRlKHQsZSxpLGEscyxvLHIpe2NvbnN0IG49KG8tYSkvMixsPU1hdGguYWJzKHQtKGErbikpO2lmKGw+bitpKXJldHVybiAhMTtjb25zdCBoPShyLXMpLzIsYz1NYXRoLmFicyhlLShzK2gpKTtpZihjPmgraSlyZXR1cm4gITE7aWYobDw9bnx8Yzw9aClyZXR1cm4gITA7Y29uc3QgdT1sLW4sZD1jLWg7cmV0dXJuIHUqdStkKmQ8PWkqaX19ZnVuY3Rpb24gZ3QodCxpLGEscyxvKXtjb25zdCByPWUuSCgpO3JldHVybiBpPyhlLksocixyLFsxL28sMS9vLDFdKSxhfHxlLmFkKHIscixzLmFuZ2xlKSk6ZS5MKHIscy5sYWJlbFBsYW5lTWF0cml4LHQpLHJ9ZnVuY3Rpb24gdnQodCxpLGEscyxvKXtpZihpKXtjb25zdCBpPWUuYWUodCk7cmV0dXJuIGUuSyhpLGksW28sbywxXSksYXx8ZS5hZChpLGksLXMuYW5nbGUpLGl9cmV0dXJuIHMuZ2xDb29yZE1hdHJpeH1mdW5jdGlvbiB4dCh0LGksYSxzKXtsZXQgbztzPyhvPVt0LGkscyh0LGkpLDFdLGUuYWYobyxvLGEpKToobz1bdCxpLDAsMV0sa3QobyxvLGEpKTtjb25zdCByPW9bM107cmV0dXJuIHtwb2ludDpuZXcgZS5QKG9bMF0vcixvWzFdL3IpLHNpZ25lZERpc3RhbmNlRnJvbUNhbWVyYTpyLGlzT2NjbHVkZWQ6ITF9fWZ1bmN0aW9uIHl0KHQsZSl7cmV0dXJuIC41K3QvZSouNX1mdW5jdGlvbiBidCh0LGUpe3JldHVybiB0Lng+PS1lWzBdJiZ0Lng8PWVbMF0mJnQueT49LWVbMV0mJnQueTw9ZVsxXX1mdW5jdGlvbiB3dCh0LGksYSxzLG8scixuLGwsaCxjLHUsZCxfLHAsbSl7Y29uc3QgZj1zP3QudGV4dFNpemVEYXRhOnQuaWNvblNpemVEYXRhLGc9ZS5hZyhmLGEudHJhbnNmb3JtLnpvb20pLHY9WzI1Ni9hLndpZHRoKjIrMSwyNTYvYS5oZWlnaHQqMisxXSx4PXM/dC50ZXh0LmR5bmFtaWNMYXlvdXRWZXJ0ZXhBcnJheTp0Lmljb24uZHluYW1pY0xheW91dFZlcnRleEFycmF5O3guY2xlYXIoKTtjb25zdCB5PXQubGluZVZlcnRleEFycmF5LGI9cz90LnRleHQucGxhY2VkU3ltYm9sQXJyYXk6dC5pY29uLnBsYWNlZFN5bWJvbEFycmF5LHc9YS50cmFuc2Zvcm0ud2lkdGgvYS50cmFuc2Zvcm0uaGVpZ2h0O2xldCBUPSExO2ZvcihsZXQgcz0wO3M8Yi5sZW5ndGg7cysrKXtjb25zdCBJPWIuZ2V0KHMpO2lmKEkuaGlkZGVufHxJLndyaXRpbmdNb2RlPT09ZS5haC52ZXJ0aWNhbCYmIVQpe1J0KEkubnVtR2x5cGhzLHgpO2NvbnRpbnVlfVQ9ITE7Y29uc3QgRT14dChJLmFuY2hvclgsSS5hbmNob3JZLGksbSk7aWYoIWJ0KEUucG9pbnQsdikpe1J0KEkubnVtR2x5cGhzLHgpO2NvbnRpbnVlfWNvbnN0IFA9eXQoYS50cmFuc2Zvcm0uY2FtZXJhVG9DZW50ZXJEaXN0YW5jZSxFLnNpZ25lZERpc3RhbmNlRnJvbUNhbWVyYSksQz1lLmFpKGYsZyxJKSxTPW4/Qy9QOkMqUCx6PXtnZXRFbGV2YXRpb246bSxsYWJlbFBsYW5lTWF0cml4Om8sbGluZVZlcnRleEFycmF5OnkscGl0Y2hXaXRoTWFwOm4scHJvamVjdGlvbkNhY2hlOntwcm9qZWN0aW9uczp7fSxvZmZzZXRzOnt9LGNhY2hlZEFuY2hvclBvaW50OnZvaWQgMCxhbnlQcm9qZWN0aW9uT2NjbHVkZWQ6ITF9LHByb2plY3Rpb246Yyx0aWxlQW5jaG9yUG9pbnQ6bmV3IGUuUChJLmFuY2hvclgsSS5hbmNob3JZKSx1bndyYXBwZWRUaWxlSUQ6dSx3aWR0aDpkLGhlaWdodDpfLHRyYW5zbGF0aW9uOnB9LEQ9RXQoeixJLFMsITEsbCxpLHIsdC5nbHlwaE9mZnNldEFycmF5LHgsdyxoKTtUPUQudXNlVmVydGljYWwsKEQubm90RW5vdWdoUm9vbXx8VHx8RC5uZWVkc0ZsaXBwaW5nJiZFdCh6LEksUywhMCxsLGkscix0LmdseXBoT2Zmc2V0QXJyYXkseCx3LGgpLm5vdEVub3VnaFJvb20pJiZSdChJLm51bUdseXBocyx4KTt9cz90LnRleHQuZHluYW1pY0xheW91dFZlcnRleEJ1ZmZlci51cGRhdGVEYXRhKHgpOnQuaWNvbi5keW5hbWljTGF5b3V0VmVydGV4QnVmZmVyLnVwZGF0ZURhdGEoeCk7fWZ1bmN0aW9uIFR0KHQsZSxpLGEscyxvLHIsbil7Y29uc3QgbD1vLmdseXBoU3RhcnRJbmRleCtvLm51bUdseXBocyxoPW8ubGluZVN0YXJ0SW5kZXgsYz1vLmxpbmVTdGFydEluZGV4K28ubGluZUxlbmd0aCx1PWUuZ2V0b2Zmc2V0WChvLmdseXBoU3RhcnRJbmRleCksZD1lLmdldG9mZnNldFgobC0xKSxfPU10KHQqdSxpLGEscyxvLnNlZ21lbnQsaCxjLG4scik7aWYoIV8pcmV0dXJuIG51bGw7Y29uc3QgcD1NdCh0KmQsaSxhLHMsby5zZWdtZW50LGgsYyxuLHIpO3JldHVybiBwP24ucHJvamVjdGlvbkNhY2hlLmFueVByb2plY3Rpb25PY2NsdWRlZD9udWxsOntmaXJzdDpfLGxhc3Q6cH06bnVsbH1mdW5jdGlvbiBJdCh0LGksYSxzKXtyZXR1cm4gdD09PWUuYWguaG9yaXpvbnRhbCYmTWF0aC5hYnMoYS55LWkueSk+TWF0aC5hYnMoYS54LWkueCkqcz97dXNlVmVydGljYWw6ITB9Oih0PT09ZS5haC52ZXJ0aWNhbD9pLnk8YS55OmkueD5hLngpP3tuZWVkc0ZsaXBwaW5nOiEwfTpudWxsfWZ1bmN0aW9uIEV0KHQsaSxhLHMsbyxyLG4sbCxoLGMsdSl7Y29uc3QgZD1hLzI0LF89aS5saW5lT2Zmc2V0WCpkLHA9aS5saW5lT2Zmc2V0WSpkO2xldCBtO2lmKGkubnVtR2x5cGhzPjEpe2NvbnN0IGU9aS5nbHlwaFN0YXJ0SW5kZXgraS5udW1HbHlwaHMsYT1pLmxpbmVTdGFydEluZGV4LHI9aS5saW5lU3RhcnRJbmRleCtpLmxpbmVMZW5ndGgsaD1UdChkLGwsXyxwLHMsaSx1LHQpO2lmKCFoKXJldHVybiB7bm90RW5vdWdoUm9vbTohMH07Y29uc3QgZj14dChoLmZpcnN0LnBvaW50LngsaC5maXJzdC5wb2ludC55LG4sdC5nZXRFbGV2YXRpb24pLnBvaW50LGc9eHQoaC5sYXN0LnBvaW50LngsaC5sYXN0LnBvaW50Lnksbix0LmdldEVsZXZhdGlvbikucG9pbnQ7aWYobyYmIXMpe2NvbnN0IHQ9SXQoaS53cml0aW5nTW9kZSxmLGcsYyk7aWYodClyZXR1cm4gdH1tPVtoLmZpcnN0XTtmb3IobGV0IG89aS5nbHlwaFN0YXJ0SW5kZXgrMTtvPGUtMTtvKyspbS5wdXNoKE10KGQqbC5nZXRvZmZzZXRYKG8pLF8scCxzLGkuc2VnbWVudCxhLHIsdCx1KSk7bS5wdXNoKGgubGFzdCk7fWVsc2Uge2lmKG8mJiFzKXtjb25zdCBhPXh0KHQudGlsZUFuY2hvclBvaW50LngsdC50aWxlQW5jaG9yUG9pbnQueSxyLHQuZ2V0RWxldmF0aW9uKS5wb2ludCxzPWkubGluZVN0YXJ0SW5kZXgraS5zZWdtZW50KzEsbz1uZXcgZS5QKHQubGluZVZlcnRleEFycmF5LmdldHgocyksdC5saW5lVmVydGV4QXJyYXkuZ2V0eShzKSksbj14dChvLngsby55LHIsdC5nZXRFbGV2YXRpb24pLGw9bi5zaWduZWREaXN0YW5jZUZyb21DYW1lcmE+MD9uLnBvaW50OmZ1bmN0aW9uKHQsZSxpLGEscyxvKXtyZXR1cm4gUHQodCxlLGksMSxzLG8pfSh0LnRpbGVBbmNob3JQb2ludCxvLGEsMCxyLHQpLGg9SXQoaS53cml0aW5nTW9kZSxhLGwsYyk7aWYoaClyZXR1cm4gaH1jb25zdCBhPU10KGQqbC5nZXRvZmZzZXRYKGkuZ2x5cGhTdGFydEluZGV4KSxfLHAscyxpLnNlZ21lbnQsaS5saW5lU3RhcnRJbmRleCxpLmxpbmVTdGFydEluZGV4K2kubGluZUxlbmd0aCx0LHUpO2lmKCFhfHx0LnByb2plY3Rpb25DYWNoZS5hbnlQcm9qZWN0aW9uT2NjbHVkZWQpcmV0dXJuIHtub3RFbm91Z2hSb29tOiEwfTttPVthXTt9Zm9yKGNvbnN0IHQgb2YgbSllLmFqKGgsdC5wb2ludCx0LmFuZ2xlKTtyZXR1cm4ge319ZnVuY3Rpb24gUHQodCxlLGksYSxzLG8pe2NvbnN0IHI9dC5hZGQodC5zdWIoZSkuX3VuaXQoKSksbj12b2lkIDAhPT1zP3h0KHIueCxyLnkscyxvLmdldEVsZXZhdGlvbikucG9pbnQ6U3Qoci54LHIueSxvKS5wb2ludCxsPWkuc3ViKG4pO3JldHVybiBpLmFkZChsLl9tdWx0KGEvbC5tYWcoKSkpfWZ1bmN0aW9uIEN0KHQsaSxhKXtjb25zdCBzPWkucHJvamVjdGlvbkNhY2hlO2lmKHMucHJvamVjdGlvbnNbdF0pcmV0dXJuIHMucHJvamVjdGlvbnNbdF07Y29uc3Qgbz1uZXcgZS5QKGkubGluZVZlcnRleEFycmF5LmdldHgodCksaS5saW5lVmVydGV4QXJyYXkuZ2V0eSh0KSkscj1TdChvLngsby55LGkpO2lmKHIuc2lnbmVkRGlzdGFuY2VGcm9tQ2FtZXJhPjApcmV0dXJuIHMucHJvamVjdGlvbnNbdF09ci5wb2ludCxzLmFueVByb2plY3Rpb25PY2NsdWRlZD1zLmFueVByb2plY3Rpb25PY2NsdWRlZHx8ci5pc09jY2x1ZGVkLHIucG9pbnQ7Y29uc3Qgbj10LWEuZGlyZWN0aW9uO3JldHVybiBmdW5jdGlvbih0LGUsaSxhLHMpe3JldHVybiBQdCh0LGUsaSxhLHZvaWQgMCxzKX0oMD09PWEuZGlzdGFuY2VGcm9tQW5jaG9yP2kudGlsZUFuY2hvclBvaW50Om5ldyBlLlAoaS5saW5lVmVydGV4QXJyYXkuZ2V0eChuKSxpLmxpbmVWZXJ0ZXhBcnJheS5nZXR5KG4pKSxvLGEucHJldmlvdXNWZXJ0ZXgsYS5hYnNPZmZzZXRYLWEuZGlzdGFuY2VGcm9tQW5jaG9yKzEsaSl9ZnVuY3Rpb24gU3QodCxlLGkpe2NvbnN0IGE9dCtpLnRyYW5zbGF0aW9uWzBdLHM9ZStpLnRyYW5zbGF0aW9uWzFdO2xldCBvO3JldHVybiAhaS5waXRjaFdpdGhNYXAmJmkucHJvamVjdGlvbi51c2VTcGVjaWFsUHJvamVjdGlvbkZvclN5bWJvbHM/KG89aS5wcm9qZWN0aW9uLnByb2plY3RUaWxlQ29vcmRpbmF0ZXMoYSxzLGkudW53cmFwcGVkVGlsZUlELGkuZ2V0RWxldmF0aW9uKSxvLnBvaW50Lng9KC41Km8ucG9pbnQueCsuNSkqaS53aWR0aCxvLnBvaW50Lnk9KC41Ki1vLnBvaW50LnkrLjUpKmkuaGVpZ2h0KToobz14dChhLHMsaS5sYWJlbFBsYW5lTWF0cml4LGkuZ2V0RWxldmF0aW9uKSxvLmlzT2NjbHVkZWQ9ITEpLG99ZnVuY3Rpb24genQodCxlLGkpe3JldHVybiB0Ll91bml0KCkuX3BlcnAoKS5fbXVsdChlKmkpfWZ1bmN0aW9uIER0KHQsaSxhLHMsbyxyLG4sbCxoKXtpZihsLnByb2plY3Rpb25DYWNoZS5vZmZzZXRzW3RdKXJldHVybiBsLnByb2plY3Rpb25DYWNoZS5vZmZzZXRzW3RdO2NvbnN0IGM9YS5hZGQoaSk7aWYodCtoLmRpcmVjdGlvbjxzfHx0K2guZGlyZWN0aW9uPj1vKXJldHVybiBsLnByb2plY3Rpb25DYWNoZS5vZmZzZXRzW3RdPWMsYztjb25zdCB1PUN0KHQraC5kaXJlY3Rpb24sbCxoKSxkPXp0KHUuc3ViKGEpLG4saC5kaXJlY3Rpb24pLF89YS5hZGQoZCkscD11LmFkZChkKTtyZXR1cm4gbC5wcm9qZWN0aW9uQ2FjaGUub2Zmc2V0c1t0XT1lLmFrKHIsYyxfLHApfHxjLGwucHJvamVjdGlvbkNhY2hlLm9mZnNldHNbdF19ZnVuY3Rpb24gTXQodCxlLGksYSxzLG8scixuLGwpe2NvbnN0IGg9YT90LWU6dCtlO2xldCBjPWg+MD8xOi0xLHU9MDthJiYoYyo9LTEsdT1NYXRoLlBJKSxjPDAmJih1Kz1NYXRoLlBJKTtsZXQgZCxfPWM+MD9vK3M6bytzKzE7bi5wcm9qZWN0aW9uQ2FjaGUuY2FjaGVkQW5jaG9yUG9pbnQ/ZD1uLnByb2plY3Rpb25DYWNoZS5jYWNoZWRBbmNob3JQb2ludDooZD1TdChuLnRpbGVBbmNob3JQb2ludC54LG4udGlsZUFuY2hvclBvaW50LnksbikucG9pbnQsbi5wcm9qZWN0aW9uQ2FjaGUuY2FjaGVkQW5jaG9yUG9pbnQ9ZCk7bGV0IHAsbSxmPWQsZz1kLHY9MCx4PTA7Y29uc3QgeT1NYXRoLmFicyhoKSxiPVtdO2xldCB3O2Zvcig7dit4PD15Oyl7aWYoXys9YyxfPG98fF8+PXIpcmV0dXJuIG51bGw7dis9eCxnPWYsbT1wO2NvbnN0IHQ9e2Fic09mZnNldFg6eSxkaXJlY3Rpb246YyxkaXN0YW5jZUZyb21BbmNob3I6dixwcmV2aW91c1ZlcnRleDpnfTtpZihmPUN0KF8sbix0KSwwPT09aSliLnB1c2goZyksdz1mLnN1YihnKTtlbHNlIHtsZXQgZTtjb25zdCBhPWYuc3ViKGcpO2U9MD09PWEubWFnKCk/enQoQ3QoXytjLG4sdCkuc3ViKGYpLGksYyk6enQoYSxpLGMpLG18fChtPWcuYWRkKGUpKSxwPUR0KF8sZSxmLG8scixtLGksbix0KSxiLnB1c2gobSksdz1wLnN1YihtKTt9eD13Lm1hZygpO31jb25zdCBUPXcuX211bHQoKHktdikveCkuX2FkZChtfHxnKSxJPXUrTWF0aC5hdGFuMihmLnktZy55LGYueC1nLngpO3JldHVybiBiLnB1c2goVCkse3BvaW50OlQsYW5nbGU6bD9JOjAscGF0aDpifX1jb25zdCBBdD1uZXcgRmxvYXQzMkFycmF5KFstMS8wLC0xLzAsMCwtMS8wLC0xLzAsMCwtMS8wLC0xLzAsMCwtMS8wLC0xLzAsMF0pO2Z1bmN0aW9uIFJ0KHQsZSl7Zm9yKGxldCBpPTA7aTx0O2krKyl7Y29uc3QgdD1lLmxlbmd0aDtlLnJlc2l6ZSh0KzQpLGUuZmxvYXQzMi5zZXQoQXQsMyp0KTt9fWZ1bmN0aW9uIGt0KHQsZSxpKXtjb25zdCBhPWVbMF0scz1lWzFdO3JldHVybiB0WzBdPWlbMF0qYStpWzRdKnMraVsxMl0sdFsxXT1pWzFdKmEraVs1XSpzK2lbMTNdLHRbM109aVszXSphK2lbN10qcytpWzE1XSx0fWNvbnN0IEx0PTEwMDtjbGFzcyBGdHtjb25zdHJ1Y3Rvcih0LGUsaT1uZXcgZnQodC53aWR0aCsyMDAsdC5oZWlnaHQrMjAwLDI1KSxhPW5ldyBmdCh0LndpZHRoKzIwMCx0LmhlaWdodCsyMDAsMjUpKXt0aGlzLnRyYW5zZm9ybT10LHRoaXMubWFwUHJvamVjdGlvbj1lLHRoaXMuZ3JpZD1pLHRoaXMuaWdub3JlZEdyaWQ9YSx0aGlzLnBpdGNoRmFjdG9yPU1hdGguY29zKHQuX3BpdGNoKSp0LmNhbWVyYVRvQ2VudGVyRGlzdGFuY2UsdGhpcy5zY3JlZW5SaWdodEJvdW5kYXJ5PXQud2lkdGgrTHQsdGhpcy5zY3JlZW5Cb3R0b21Cb3VuZGFyeT10LmhlaWdodCtMdCx0aGlzLmdyaWRSaWdodEJvdW5kYXJ5PXQud2lkdGgrMjAwLHRoaXMuZ3JpZEJvdHRvbUJvdW5kYXJ5PXQuaGVpZ2h0KzIwMCx0aGlzLnBlcnNwZWN0aXZlUmF0aW9DdXRvZmY9LjY7fXBsYWNlQ29sbGlzaW9uQm94KHQsZSxpLGEscyxvLHIsbixsLGgsYyl7Y29uc3QgdT10LmFuY2hvclBvaW50WCtuWzBdLGQ9dC5hbmNob3JQb2ludFkrblsxXSxfPXRoaXMucHJvamVjdEFuZEdldFBlcnNwZWN0aXZlUmF0aW8oYSx1LGQscyxoKSxwPWkqXy5wZXJzcGVjdGl2ZVJhdGlvO2xldCBtO2lmKG98fHIpbT10aGlzLl9wcm9qZWN0Q29sbGlzaW9uQm94KHQscCxhLHMsbyxyLG4sXyxoLGMpO2Vsc2Uge2NvbnN0IGU9Xy5wb2ludC54KyhjP2MueCpwOjApLGk9Xy5wb2ludC55KyhjP2MueSpwOjApO209e2FsbFBvaW50c09jY2x1ZGVkOiExLGJveDpbZSt0LngxKnAsaSt0LnkxKnAsZSt0LngyKnAsaSt0LnkyKnBdfTt9Y29uc3RbZixnLHYseF09bS5ib3g7cmV0dXJuIHRoaXMubWFwUHJvamVjdGlvbi51c2VTcGVjaWFsUHJvamVjdGlvbkZvclN5bWJvbHMmJihvP20uYWxsUG9pbnRzT2NjbHVkZWQ6dGhpcy5tYXBQcm9qZWN0aW9uLmlzT2NjbHVkZWQodSxkLHMpKXx8Xy5wZXJzcGVjdGl2ZVJhdGlvPHRoaXMucGVyc3BlY3RpdmVSYXRpb0N1dG9mZnx8IXRoaXMuaXNJbnNpZGVHcmlkKGYsZyx2LHgpfHxcImFsd2F5c1wiIT09ZSYmdGhpcy5ncmlkLmhpdFRlc3QoZixnLHYseCxlLGwpP3tib3g6W2YsZyx2LHhdLHBsYWNlYWJsZTohMSxvZmZzY3JlZW46ITF9Ontib3g6W2YsZyx2LHhdLHBsYWNlYWJsZTohMCxvZmZzY3JlZW46dGhpcy5pc09mZnNjcmVlbihmLGcsdix4KX19cGxhY2VDb2xsaXNpb25DaXJjbGVzKHQsaSxhLHMsbyxyLG4sbCxoLGMsdSxkLF8scCxtLGYpe2NvbnN0IGc9W10sdj1uZXcgZS5QKGkuYW5jaG9yWCxpLmFuY2hvclkpLHg9dGhpcy5nZXRQZXJzcGVjdGl2ZVJhdGlvKHIsdi54LHYueSxuLGYpLHk9KHU/by94Om8qeCkvZS5hcCxiPXtnZXRFbGV2YXRpb246ZixsYWJlbFBsYW5lTWF0cml4OmwsbGluZVZlcnRleEFycmF5OmEscGl0Y2hXaXRoTWFwOnUscHJvamVjdGlvbkNhY2hlOntwcm9qZWN0aW9uczp7fSxvZmZzZXRzOnt9LGNhY2hlZEFuY2hvclBvaW50OnZvaWQgMCxhbnlQcm9qZWN0aW9uT2NjbHVkZWQ6ITF9LHByb2plY3Rpb246dGhpcy5tYXBQcm9qZWN0aW9uLHRpbGVBbmNob3JQb2ludDp2LHVud3JhcHBlZFRpbGVJRDpuLHdpZHRoOnRoaXMudHJhbnNmb3JtLndpZHRoLGhlaWdodDp0aGlzLnRyYW5zZm9ybS5oZWlnaHQsdHJhbnNsYXRpb246bX0sdz1UdCh5LHMsaS5saW5lT2Zmc2V0WCp5LGkubGluZU9mZnNldFkqeSwhMSxpLCExLGIpO2xldCBUPSExLEk9ITEsRT0hMDtpZih3KXtjb25zdCBpPS41Kl8qeCtwLGE9bmV3IGUuUCgtMTAwLC0xMDApLHM9bmV3IGUuUCh0aGlzLnNjcmVlblJpZ2h0Qm91bmRhcnksdGhpcy5zY3JlZW5Cb3R0b21Cb3VuZGFyeSksbz1uZXcgcHQscj13LmZpcnN0LG49dy5sYXN0O2xldCBsPVtdO2ZvcihsZXQgdD1yLnBhdGgubGVuZ3RoLTE7dD49MTt0LS0pbC5wdXNoKHIucGF0aFt0XSk7Zm9yKGxldCB0PTE7dDxuLnBhdGgubGVuZ3RoO3QrKylsLnB1c2gobi5wYXRoW3RdKTtjb25zdCB1PTIuNSppO2lmKGgpe2NvbnN0IHQ9dGhpcy5wcm9qZWN0UGF0aFRvU2NyZWVuU3BhY2UobCxiLGgpO2w9dC5zb21lKCh0PT50LnNpZ25lZERpc3RhbmNlRnJvbUNhbWVyYTw9MCkpP1tdOnQubWFwKCh0PT50LnBvaW50KSk7fWxldCBtPVtdO2lmKGwubGVuZ3RoPjApe2NvbnN0IHQ9bFswXS5jbG9uZSgpLGk9bFswXS5jbG9uZSgpO2ZvcihsZXQgZT0xO2U8bC5sZW5ndGg7ZSsrKXQueD1NYXRoLm1pbih0LngsbFtlXS54KSx0Lnk9TWF0aC5taW4odC55LGxbZV0ueSksaS54PU1hdGgubWF4KGkueCxsW2VdLngpLGkueT1NYXRoLm1heChpLnksbFtlXS55KTttPXQueD49YS54JiZpLng8PXMueCYmdC55Pj1hLnkmJmkueTw9cy55P1tsXTppLng8YS54fHx0Lng+cy54fHxpLnk8YS55fHx0Lnk+cy55P1tdOmUuYWwoW2xdLGEueCxhLnkscy54LHMueSk7fWZvcihjb25zdCBlIG9mIG0pe28ucmVzZXQoZSwuMjUqaSk7bGV0IGE9MDthPW8ubGVuZ3RoPD0uNSppPzE6TWF0aC5jZWlsKG8ucGFkZGVkTGVuZ3RoL3UpKzE7Zm9yKGxldCBlPTA7ZTxhO2UrKyl7Y29uc3Qgcz1lL01hdGgubWF4KGEtMSwxKSxyPW8ubGVycChzKSxuPXIueCtMdCxsPXIueStMdDtnLnB1c2gobixsLGksMCk7Y29uc3QgaD1uLWksdT1sLWksXz1uK2kscD1sK2k7aWYoRT1FJiZ0aGlzLmlzT2Zmc2NyZWVuKGgsdSxfLHApLEk9SXx8dGhpcy5pc0luc2lkZUdyaWQoaCx1LF8scCksXCJhbHdheXNcIiE9PXQmJnRoaXMuZ3JpZC5oaXRUZXN0Q2lyY2xlKG4sbCxpLHQsZCkmJihUPSEwLCFjKSlyZXR1cm4ge2NpcmNsZXM6W10sb2Zmc2NyZWVuOiExLGNvbGxpc2lvbkRldGVjdGVkOlR9fX19cmV0dXJuIHtjaXJjbGVzOiFjJiZUfHwhSXx8eDx0aGlzLnBlcnNwZWN0aXZlUmF0aW9DdXRvZmY/W106ZyxvZmZzY3JlZW46RSxjb2xsaXNpb25EZXRlY3RlZDpUfX1wcm9qZWN0UGF0aFRvU2NyZWVuU3BhY2UodCxlLGkpe3JldHVybiB0Lm1hcCgodD0+eHQodC54LHQueSxpLGUuZ2V0RWxldmF0aW9uKSkpfXF1ZXJ5UmVuZGVyZWRTeW1ib2xzKHQpe2lmKDA9PT10Lmxlbmd0aHx8MD09PXRoaXMuZ3JpZC5rZXlzTGVuZ3RoKCkmJjA9PT10aGlzLmlnbm9yZWRHcmlkLmtleXNMZW5ndGgoKSlyZXR1cm4ge307Y29uc3QgaT1bXTtsZXQgYT0xLzAscz0xLzAsbz0tMS8wLHI9LTEvMDtmb3IoY29uc3QgbiBvZiB0KXtjb25zdCB0PW5ldyBlLlAobi54K0x0LG4ueStMdCk7YT1NYXRoLm1pbihhLHQueCkscz1NYXRoLm1pbihzLHQueSksbz1NYXRoLm1heChvLHQueCkscj1NYXRoLm1heChyLHQueSksaS5wdXNoKHQpO31jb25zdCBuPXRoaXMuZ3JpZC5xdWVyeShhLHMsbyxyKS5jb25jYXQodGhpcy5pZ25vcmVkR3JpZC5xdWVyeShhLHMsbyxyKSksbD17fSxoPXt9O2Zvcihjb25zdCB0IG9mIG4pe2NvbnN0IGE9dC5rZXk7aWYodm9pZCAwPT09bFthLmJ1Y2tldEluc3RhbmNlSWRdJiYobFthLmJ1Y2tldEluc3RhbmNlSWRdPXt9KSxsW2EuYnVja2V0SW5zdGFuY2VJZF1bYS5mZWF0dXJlSW5kZXhdKWNvbnRpbnVlO2NvbnN0IHM9W25ldyBlLlAodC54MSx0LnkxKSxuZXcgZS5QKHQueDIsdC55MSksbmV3IGUuUCh0LngyLHQueTIpLG5ldyBlLlAodC54MSx0LnkyKV07ZS5hbShpLHMpJiYobFthLmJ1Y2tldEluc3RhbmNlSWRdW2EuZmVhdHVyZUluZGV4XT0hMCx2b2lkIDA9PT1oW2EuYnVja2V0SW5zdGFuY2VJZF0mJihoW2EuYnVja2V0SW5zdGFuY2VJZF09W10pLGhbYS5idWNrZXRJbnN0YW5jZUlkXS5wdXNoKGEuZmVhdHVyZUluZGV4KSk7fXJldHVybiBofWluc2VydENvbGxpc2lvbkJveCh0LGUsaSxhLHMsbyl7KGk/dGhpcy5pZ25vcmVkR3JpZDp0aGlzLmdyaWQpLmluc2VydCh7YnVja2V0SW5zdGFuY2VJZDphLGZlYXR1cmVJbmRleDpzLGNvbGxpc2lvbkdyb3VwSUQ6byxvdmVybGFwTW9kZTplfSx0WzBdLHRbMV0sdFsyXSx0WzNdKTt9aW5zZXJ0Q29sbGlzaW9uQ2lyY2xlcyh0LGUsaSxhLHMsbyl7Y29uc3Qgcj1pP3RoaXMuaWdub3JlZEdyaWQ6dGhpcy5ncmlkLG49e2J1Y2tldEluc3RhbmNlSWQ6YSxmZWF0dXJlSW5kZXg6cyxjb2xsaXNpb25Hcm91cElEOm8sb3ZlcmxhcE1vZGU6ZX07Zm9yKGxldCBlPTA7ZTx0Lmxlbmd0aDtlKz00KXIuaW5zZXJ0Q2lyY2xlKG4sdFtlXSx0W2UrMV0sdFtlKzJdKTt9cHJvamVjdEFuZEdldFBlcnNwZWN0aXZlUmF0aW8odCxpLGEscyxvKXtsZXQgcjtvPyhyPVtpLGEsbyhpLGEpLDFdLGUuYWYocixyLHQpKToocj1baSxhLDAsMV0sa3QocixyLHQpKTtjb25zdCBuPXJbM107cmV0dXJuIHtwb2ludDpuZXcgZS5QKChyWzBdL24rMSkvMip0aGlzLnRyYW5zZm9ybS53aWR0aCtMdCwoLXJbMV0vbisxKS8yKnRoaXMudHJhbnNmb3JtLmhlaWdodCtMdCkscGVyc3BlY3RpdmVSYXRpbzouNSt0aGlzLnRyYW5zZm9ybS5jYW1lcmFUb0NlbnRlckRpc3RhbmNlL24qLjUsaXNPY2NsdWRlZDohMSxzaWduZWREaXN0YW5jZUZyb21DYW1lcmE6bn19Z2V0UGVyc3BlY3RpdmVSYXRpbyh0LGUsaSxhLHMpe2NvbnN0IG89dGhpcy5tYXBQcm9qZWN0aW9uLnVzZVNwZWNpYWxQcm9qZWN0aW9uRm9yU3ltYm9scz90aGlzLm1hcFByb2plY3Rpb24ucHJvamVjdFRpbGVDb29yZGluYXRlcyhlLGksYSxzKTp4dChlLGksdCxzKTtyZXR1cm4gLjUrdGhpcy50cmFuc2Zvcm0uY2FtZXJhVG9DZW50ZXJEaXN0YW5jZS9vLnNpZ25lZERpc3RhbmNlRnJvbUNhbWVyYSouNX1pc09mZnNjcmVlbih0LGUsaSxhKXtyZXR1cm4gaTxMdHx8dD49dGhpcy5zY3JlZW5SaWdodEJvdW5kYXJ5fHxhPEx0fHxlPnRoaXMuc2NyZWVuQm90dG9tQm91bmRhcnl9aXNJbnNpZGVHcmlkKHQsZSxpLGEpe3JldHVybiBpPj0wJiZ0PHRoaXMuZ3JpZFJpZ2h0Qm91bmRhcnkmJmE+PTAmJmU8dGhpcy5ncmlkQm90dG9tQm91bmRhcnl9Z2V0Vmlld3BvcnRNYXRyaXgoKXtjb25zdCB0PWUuYW4oW10pO3JldHVybiBlLkoodCx0LFstMTAwLC0xMDAsMF0pLHR9X3Byb2plY3RDb2xsaXNpb25Cb3godCxpLGEscyxvLHIsbixsLGgsYyl7bGV0IHU9bmV3IGUuUCgxLDApLGQ9bmV3IGUuUCgwLDEpO2NvbnN0IF89bmV3IGUuUCh0LmFuY2hvclBvaW50WCtuWzBdLHQuYW5jaG9yUG9pbnRZK25bMV0pO2lmKHImJiFvKXtjb25zdCB0PXRoaXMucHJvamVjdEFuZEdldFBlcnNwZWN0aXZlUmF0aW8oYSxfLngrMSxfLnkscyxoKS5wb2ludC5zdWIobC5wb2ludCkudW5pdCgpLGk9TWF0aC5hdGFuKHQueS90LngpKyh0Lng8MD9NYXRoLlBJOjApLG89TWF0aC5zaW4oaSkscj1NYXRoLmNvcyhpKTt1PW5ldyBlLlAocixvKSxkPW5ldyBlLlAoLW8scik7fWVsc2UgaWYoIXImJm8pe2NvbnN0IHQ9LXRoaXMudHJhbnNmb3JtLmFuZ2xlLGk9TWF0aC5zaW4odCksYT1NYXRoLmNvcyh0KTt1PW5ldyBlLlAoYSxpKSxkPW5ldyBlLlAoLWksYSk7fWxldCBwPWwucG9pbnQsbT1pO2lmKG8pe3A9Xztjb25zdCB0PXRoaXMudHJhbnNmb3JtLnpvb20tTWF0aC5mbG9vcih0aGlzLnRyYW5zZm9ybS56b29tKTttPU1hdGgucG93KDIsLXQpLG0qPXRoaXMubWFwUHJvamVjdGlvbi5nZXRQaXRjaGVkVGV4dENvcnJlY3Rpb24odGhpcy50cmFuc2Zvcm0sXyxzKSxjfHwobSo9ZS5hYyguNStsLnNpZ25lZERpc3RhbmNlRnJvbUNhbWVyYS90aGlzLnRyYW5zZm9ybS5jYW1lcmFUb0NlbnRlckRpc3RhbmNlKi41LDAsNCkpO31jJiYocD1wLmFkZCh1Lm11bHQoYy54Km0pKS5hZGQoZC5tdWx0KGMueSptKSkpO2NvbnN0IGY9dC54MSptLGc9dC54MiptLHY9KGYrZykvMix4PXQueTEqbSx5PXQueTIqbSxiPSh4K3kpLzIsdz1be29mZnNldFg6ZixvZmZzZXRZOnh9LHtvZmZzZXRYOnYsb2Zmc2V0WTp4fSx7b2Zmc2V0WDpnLG9mZnNldFk6eH0se29mZnNldFg6ZyxvZmZzZXRZOmJ9LHtvZmZzZXRYOmcsb2Zmc2V0WTp5fSx7b2Zmc2V0WDp2LG9mZnNldFk6eX0se29mZnNldFg6ZixvZmZzZXRZOnl9LHtvZmZzZXRYOmYsb2Zmc2V0WTpifV07bGV0IFQ9W107Zm9yKGNvbnN0e29mZnNldFg6dCxvZmZzZXRZOml9b2YgdylULnB1c2gobmV3IGUuUChwLngrdS54KnQrZC54KmkscC55K3UueSp0K2QueSppKSk7bGV0IEk9ITE7aWYobyl7Y29uc3QgdD1ULm1hcCgodD0+dGhpcy5wcm9qZWN0QW5kR2V0UGVyc3BlY3RpdmVSYXRpbyhhLHQueCx0LnkscyxoKSkpO0k9dC5zb21lKCh0PT4hdC5pc09jY2x1ZGVkKSksVD10Lm1hcCgodD0+dC5wb2ludCkpO31lbHNlIEk9ITA7cmV0dXJuIHtib3g6ZS5hbyhUKSxhbGxQb2ludHNPY2NsdWRlZDohSX19fWZ1bmN0aW9uIEJ0KHQsaSxhKXtyZXR1cm4gaSooZS5YLyh0LnRpbGVTaXplKk1hdGgucG93KDIsYS10LnRpbGVJRC5vdmVyc2NhbGVkWikpKX1jbGFzcyBPdHtjb25zdHJ1Y3Rvcih0LGUsaSxhKXt0aGlzLm9wYWNpdHk9dD9NYXRoLm1heCgwLE1hdGgubWluKDEsdC5vcGFjaXR5Kyh0LnBsYWNlZD9lOi1lKSkpOmEmJmk/MTowLHRoaXMucGxhY2VkPWk7fWlzSGlkZGVuKCl7cmV0dXJuIDA9PT10aGlzLm9wYWNpdHkmJiF0aGlzLnBsYWNlZH19Y2xhc3MgTnR7Y29uc3RydWN0b3IodCxlLGksYSxzKXt0aGlzLnRleHQ9bmV3IE90KHQ/dC50ZXh0Om51bGwsZSxpLHMpLHRoaXMuaWNvbj1uZXcgT3QodD90Lmljb246bnVsbCxlLGEscyk7fWlzSGlkZGVuKCl7cmV0dXJuIHRoaXMudGV4dC5pc0hpZGRlbigpJiZ0aGlzLmljb24uaXNIaWRkZW4oKX19Y2xhc3MgVXR7Y29uc3RydWN0b3IodCxlLGkpe3RoaXMudGV4dD10LHRoaXMuaWNvbj1lLHRoaXMuc2tpcEZhZGU9aTt9fWNsYXNzIGp0e2NvbnN0cnVjdG9yKCl7dGhpcy5pbnZQcm9qTWF0cml4PWUuSCgpLHRoaXMudmlld3BvcnRNYXRyaXg9ZS5IKCksdGhpcy5jaXJjbGVzPVtdO319Y2xhc3MgWnR7Y29uc3RydWN0b3IodCxlLGksYSxzKXt0aGlzLmJ1Y2tldEluc3RhbmNlSWQ9dCx0aGlzLmZlYXR1cmVJbmRleD1lLHRoaXMuc291cmNlTGF5ZXJJbmRleD1pLHRoaXMuYnVja2V0SW5kZXg9YSx0aGlzLnRpbGVJRD1zO319Y2xhc3MgcXR7Y29uc3RydWN0b3IodCl7dGhpcy5jcm9zc1NvdXJjZUNvbGxpc2lvbnM9dCx0aGlzLm1heEdyb3VwSUQ9MCx0aGlzLmNvbGxpc2lvbkdyb3Vwcz17fTt9Z2V0KHQpe2lmKHRoaXMuY3Jvc3NTb3VyY2VDb2xsaXNpb25zKXJldHVybiB7SUQ6MCxwcmVkaWNhdGU6bnVsbH07aWYoIXRoaXMuY29sbGlzaW9uR3JvdXBzW3RdKXtjb25zdCBlPSsrdGhpcy5tYXhHcm91cElEO3RoaXMuY29sbGlzaW9uR3JvdXBzW3RdPXtJRDplLHByZWRpY2F0ZTp0PT50LmNvbGxpc2lvbkdyb3VwSUQ9PT1lfTt9cmV0dXJuIHRoaXMuY29sbGlzaW9uR3JvdXBzW3RdfX1mdW5jdGlvbiBWdCh0LGksYSxzLG8pe2NvbnN0e2hvcml6b250YWxBbGlnbjpyLHZlcnRpY2FsQWxpZ246bn09ZS5hdSh0KTtyZXR1cm4gbmV3IGUuUCgtKHItLjUpKmkrc1swXSpvLC0obi0uNSkqYStzWzFdKm8pfWNsYXNzIEd0e2NvbnN0cnVjdG9yKHQsZSxpLGEscyxvKXt0aGlzLnRyYW5zZm9ybT10LmNsb25lKCksdGhpcy50ZXJyYWluPWksdGhpcy5jb2xsaXNpb25JbmRleD1uZXcgRnQodGhpcy50cmFuc2Zvcm0sZSksdGhpcy5wbGFjZW1lbnRzPXt9LHRoaXMub3BhY2l0aWVzPXt9LHRoaXMudmFyaWFibGVPZmZzZXRzPXt9LHRoaXMuc3RhbGU9ITEsdGhpcy5jb21taXRUaW1lPTAsdGhpcy5mYWRlRHVyYXRpb249YSx0aGlzLnJldGFpbmVkUXVlcnlEYXRhPXt9LHRoaXMuY29sbGlzaW9uR3JvdXBzPW5ldyBxdChzKSx0aGlzLmNvbGxpc2lvbkNpcmNsZUFycmF5cz17fSx0aGlzLmNvbGxpc2lvbkJveEFycmF5cz1uZXcgTWFwLHRoaXMucHJldlBsYWNlbWVudD1vLG8mJihvLnByZXZQbGFjZW1lbnQ9dm9pZCAwKSx0aGlzLnBsYWNlZE9yaWVudGF0aW9ucz17fTt9X2dldFRlcnJhaW5FbGV2YXRpb25GdW5jKHQpe2NvbnN0IGU9dGhpcy50ZXJyYWluO3JldHVybiBlPyhpLGEpPT5lLmdldEVsZXZhdGlvbih0LGksYSk6bnVsbH1nZXRCdWNrZXRQYXJ0cyh0LGksYSxzKXtjb25zdCBvPWEuZ2V0QnVja2V0KGkpLHI9YS5sYXRlc3RGZWF0dXJlSW5kZXg7aWYoIW98fCFyfHxpLmlkIT09by5sYXllcklkc1swXSlyZXR1cm47Y29uc3Qgbj1hLmNvbGxpc2lvbkJveEFycmF5LGw9by5sYXllcnNbMF0ubGF5b3V0LGg9by5sYXllcnNbMF0ucGFpbnQsYz1NYXRoLnBvdygyLHRoaXMudHJhbnNmb3JtLnpvb20tYS50aWxlSUQub3ZlcnNjYWxlZFopLHU9YS50aWxlU2l6ZS9lLlgsZD1hLnRpbGVJRC50b1Vud3JhcHBlZCgpLF89dGhpcy50cmFuc2Zvcm0uY2FsY3VsYXRlUG9zTWF0cml4KGQpLHA9XCJtYXBcIj09PWwuZ2V0KFwidGV4dC1waXRjaC1hbGlnbm1lbnRcIiksbT1cIm1hcFwiPT09bC5nZXQoXCJ0ZXh0LXJvdGF0aW9uLWFsaWdubWVudFwiKSxmPUJ0KGEsMSx0aGlzLnRyYW5zZm9ybS56b29tKSxnPXRoaXMuY29sbGlzaW9uSW5kZXgubWFwUHJvamVjdGlvbi50cmFuc2xhdGVQb3NpdGlvbih0aGlzLnRyYW5zZm9ybSxhLGguZ2V0KFwidGV4dC10cmFuc2xhdGVcIiksaC5nZXQoXCJ0ZXh0LXRyYW5zbGF0ZS1hbmNob3JcIikpLHY9dGhpcy5jb2xsaXNpb25JbmRleC5tYXBQcm9qZWN0aW9uLnRyYW5zbGF0ZVBvc2l0aW9uKHRoaXMudHJhbnNmb3JtLGEsaC5nZXQoXCJpY29uLXRyYW5zbGF0ZVwiKSxoLmdldChcImljb24tdHJhbnNsYXRlLWFuY2hvclwiKSkseD1ndChfLHAsbSx0aGlzLnRyYW5zZm9ybSxmKTtsZXQgeT1udWxsO2lmKHApe2NvbnN0IHQ9dnQoXyxwLG0sdGhpcy50cmFuc2Zvcm0sZik7eT1lLkwoW10sdGhpcy50cmFuc2Zvcm0ubGFiZWxQbGFuZU1hdHJpeCx0KTt9dGhpcy5yZXRhaW5lZFF1ZXJ5RGF0YVtvLmJ1Y2tldEluc3RhbmNlSWRdPW5ldyBadChvLmJ1Y2tldEluc3RhbmNlSWQscixvLnNvdXJjZUxheWVySW5kZXgsby5pbmRleCxhLnRpbGVJRCk7Y29uc3QgYj17YnVja2V0Om8sbGF5b3V0OmwsdHJhbnNsYXRpb25UZXh0OmcsdHJhbnNsYXRpb25JY29uOnYscG9zTWF0cml4Ol8sdW53cmFwcGVkVGlsZUlEOmQsdGV4dExhYmVsUGxhbmVNYXRyaXg6eCxsYWJlbFRvU2NyZWVuTWF0cml4Onksc2NhbGU6Yyx0ZXh0UGl4ZWxSYXRpbzp1LGhvbGRpbmdGb3JGYWRlOmEuaG9sZGluZ0ZvckZhZGUoKSxjb2xsaXNpb25Cb3hBcnJheTpuLHBhcnRpYWxseUV2YWx1YXRlZFRleHRTaXplOmUuYWcoby50ZXh0U2l6ZURhdGEsdGhpcy50cmFuc2Zvcm0uem9vbSksY29sbGlzaW9uR3JvdXA6dGhpcy5jb2xsaXNpb25Hcm91cHMuZ2V0KG8uc291cmNlSUQpfTtpZihzKWZvcihjb25zdCBlIG9mIG8uc29ydEtleVJhbmdlcyl7Y29uc3R7c29ydEtleTppLHN5bWJvbEluc3RhbmNlU3RhcnQ6YSxzeW1ib2xJbnN0YW5jZUVuZDpzfT1lO3QucHVzaCh7c29ydEtleTppLHN5bWJvbEluc3RhbmNlU3RhcnQ6YSxzeW1ib2xJbnN0YW5jZUVuZDpzLHBhcmFtZXRlcnM6Yn0pO31lbHNlIHQucHVzaCh7c3ltYm9sSW5zdGFuY2VTdGFydDowLHN5bWJvbEluc3RhbmNlRW5kOm8uc3ltYm9sSW5zdGFuY2VzLmxlbmd0aCxwYXJhbWV0ZXJzOmJ9KTt9YXR0ZW1wdEFuY2hvclBsYWNlbWVudCh0LGksYSxzLG8scixuLGwsaCxjLHUsZCxfLHAsbSxmLGcsdix4KXtjb25zdCB5PWUuYXFbdC50ZXh0QW5jaG9yXSxiPVt0LnRleHRPZmZzZXQwLHQudGV4dE9mZnNldDFdLHc9VnQoeSxhLHMsYixvKSxUPXRoaXMuY29sbGlzaW9uSW5kZXgucGxhY2VDb2xsaXNpb25Cb3goaSxkLGwsaCxjLG4scixmLHUucHJlZGljYXRlLHgsdyk7aWYoKCF2fHx0aGlzLmNvbGxpc2lvbkluZGV4LnBsYWNlQ29sbGlzaW9uQm94KHYsZCxsLGgsYyxuLHIsZyx1LnByZWRpY2F0ZSx4LHcpLnBsYWNlYWJsZSkmJlQucGxhY2VhYmxlKXtsZXQgdDtpZih0aGlzLnByZXZQbGFjZW1lbnQmJnRoaXMucHJldlBsYWNlbWVudC52YXJpYWJsZU9mZnNldHNbXy5jcm9zc1RpbGVJRF0mJnRoaXMucHJldlBsYWNlbWVudC5wbGFjZW1lbnRzW18uY3Jvc3NUaWxlSURdJiZ0aGlzLnByZXZQbGFjZW1lbnQucGxhY2VtZW50c1tfLmNyb3NzVGlsZUlEXS50ZXh0JiYodD10aGlzLnByZXZQbGFjZW1lbnQudmFyaWFibGVPZmZzZXRzW18uY3Jvc3NUaWxlSURdLmFuY2hvciksMD09PV8uY3Jvc3NUaWxlSUQpdGhyb3cgbmV3IEVycm9yKFwic3ltYm9sSW5zdGFuY2UuY3Jvc3NUaWxlSUQgY2FuJ3QgYmUgMFwiKTtyZXR1cm4gdGhpcy52YXJpYWJsZU9mZnNldHNbXy5jcm9zc1RpbGVJRF09e3RleHRPZmZzZXQ6Yix3aWR0aDphLGhlaWdodDpzLGFuY2hvcjp5LHRleHRCb3hTY2FsZTpvLHByZXZBbmNob3I6dH0sdGhpcy5tYXJrVXNlZEp1c3RpZmljYXRpb24ocCx5LF8sbSkscC5hbGxvd1ZlcnRpY2FsUGxhY2VtZW50JiYodGhpcy5tYXJrVXNlZE9yaWVudGF0aW9uKHAsbSxfKSx0aGlzLnBsYWNlZE9yaWVudGF0aW9uc1tfLmNyb3NzVGlsZUlEXT1tKSx7c2hpZnQ6dyxwbGFjZWRHbHlwaEJveGVzOlR9fX1wbGFjZUxheWVyQnVja2V0UGFydCh0LGksYSl7Y29uc3R7YnVja2V0OnMsbGF5b3V0Om8sdHJhbnNsYXRpb25UZXh0OnIsdHJhbnNsYXRpb25JY29uOm4scG9zTWF0cml4OmwsdW53cmFwcGVkVGlsZUlEOmgsdGV4dExhYmVsUGxhbmVNYXRyaXg6YyxsYWJlbFRvU2NyZWVuTWF0cml4OnUsdGV4dFBpeGVsUmF0aW86ZCxob2xkaW5nRm9yRmFkZTpfLGNvbGxpc2lvbkJveEFycmF5OnAscGFydGlhbGx5RXZhbHVhdGVkVGV4dFNpemU6bSxjb2xsaXNpb25Hcm91cDpmfT10LnBhcmFtZXRlcnMsZz1vLmdldChcInRleHQtb3B0aW9uYWxcIiksdj1vLmdldChcImljb24tb3B0aW9uYWxcIikseD1lLmFyKG8sXCJ0ZXh0LW92ZXJsYXBcIixcInRleHQtYWxsb3ctb3ZlcmxhcFwiKSx5PVwiYWx3YXlzXCI9PT14LGI9ZS5hcihvLFwiaWNvbi1vdmVybGFwXCIsXCJpY29uLWFsbG93LW92ZXJsYXBcIiksdz1cImFsd2F5c1wiPT09YixUPVwibWFwXCI9PT1vLmdldChcInRleHQtcm90YXRpb24tYWxpZ25tZW50XCIpLEk9XCJtYXBcIj09PW8uZ2V0KFwidGV4dC1waXRjaC1hbGlnbm1lbnRcIiksRT1cIm5vbmVcIiE9PW8uZ2V0KFwiaWNvbi10ZXh0LWZpdFwiKSxQPVwidmlld3BvcnQteVwiPT09by5nZXQoXCJzeW1ib2wtei1vcmRlclwiKSxDPXkmJih3fHwhcy5oYXNJY29uRGF0YSgpfHx2KSxTPXcmJih5fHwhcy5oYXNUZXh0RGF0YSgpfHxnKTshcy5jb2xsaXNpb25BcnJheXMmJnAmJnMuZGVzZXJpYWxpemVDb2xsaXNpb25Cb3hlcyhwKTtjb25zdCB6PXRoaXMuX2dldFRlcnJhaW5FbGV2YXRpb25GdW5jKHRoaXMucmV0YWluZWRRdWVyeURhdGFbcy5idWNrZXRJbnN0YW5jZUlkXS50aWxlSUQpLEQ9KHQscCx3KT0+e3ZhciBQLEQ7aWYoaVt0LmNyb3NzVGlsZUlEXSlyZXR1cm47aWYoXylyZXR1cm4gdm9pZCh0aGlzLnBsYWNlbWVudHNbdC5jcm9zc1RpbGVJRF09bmV3IFV0KCExLCExLCExKSk7bGV0IE09ITEsQT0hMSxSPSEwLGs9bnVsbCxMPXtib3g6bnVsbCxwbGFjZWFibGU6ITEsb2Zmc2NyZWVuOm51bGx9LEY9e2JveDpudWxsLHBsYWNlYWJsZTohMSxvZmZzY3JlZW46bnVsbH0sQj1udWxsLE89bnVsbCxOPW51bGwsVT0wLGo9MCxaPTA7cC50ZXh0RmVhdHVyZUluZGV4P1U9cC50ZXh0RmVhdHVyZUluZGV4OnQudXNlUnVudGltZUNvbGxpc2lvbkNpcmNsZXMmJihVPXQuZmVhdHVyZUluZGV4KSxwLnZlcnRpY2FsVGV4dEZlYXR1cmVJbmRleCYmKGo9cC52ZXJ0aWNhbFRleHRGZWF0dXJlSW5kZXgpO2NvbnN0IHE9cC50ZXh0Qm94O2lmKHEpe2NvbnN0IGk9aT0+e2xldCBhPWUuYWguaG9yaXpvbnRhbDtpZihzLmFsbG93VmVydGljYWxQbGFjZW1lbnQmJiFpJiZ0aGlzLnByZXZQbGFjZW1lbnQpe2NvbnN0IGU9dGhpcy5wcmV2UGxhY2VtZW50LnBsYWNlZE9yaWVudGF0aW9uc1t0LmNyb3NzVGlsZUlEXTtlJiYodGhpcy5wbGFjZWRPcmllbnRhdGlvbnNbdC5jcm9zc1RpbGVJRF09ZSxhPWUsdGhpcy5tYXJrVXNlZE9yaWVudGF0aW9uKHMsYSx0KSk7fXJldHVybiBhfSxvPShpLGEpPT57aWYocy5hbGxvd1ZlcnRpY2FsUGxhY2VtZW50JiZ0Lm51bVZlcnRpY2FsR2x5cGhWZXJ0aWNlcz4wJiZwLnZlcnRpY2FsVGV4dEJveCl7Zm9yKGNvbnN0IHQgb2Ygcy53cml0aW5nTW9kZXMpaWYodD09PWUuYWgudmVydGljYWw/KEw9YSgpLEY9TCk6TD1pKCksTCYmTC5wbGFjZWFibGUpYnJlYWt9ZWxzZSBMPWkoKTt9LGM9dC50ZXh0QW5jaG9yT2Zmc2V0U3RhcnRJbmRleCx1PXQudGV4dEFuY2hvck9mZnNldEVuZEluZGV4O2lmKHU9PT1jKXtjb25zdCBhPShlLGkpPT57Y29uc3QgYT10aGlzLmNvbGxpc2lvbkluZGV4LnBsYWNlQ29sbGlzaW9uQm94KGUseCxkLGwsaCxJLFQscixmLnByZWRpY2F0ZSx6KTtyZXR1cm4gYSYmYS5wbGFjZWFibGUmJih0aGlzLm1hcmtVc2VkT3JpZW50YXRpb24ocyxpLHQpLHRoaXMucGxhY2VkT3JpZW50YXRpb25zW3QuY3Jvc3NUaWxlSURdPWkpLGF9O28oKCgpPT5hKHEsZS5haC5ob3Jpem9udGFsKSksKCgpPT57Y29uc3QgaT1wLnZlcnRpY2FsVGV4dEJveDtyZXR1cm4gcy5hbGxvd1ZlcnRpY2FsUGxhY2VtZW50JiZ0Lm51bVZlcnRpY2FsR2x5cGhWZXJ0aWNlcz4wJiZpP2EoaSxlLmFoLnZlcnRpY2FsKTp7Ym94Om51bGwsb2Zmc2NyZWVuOm51bGx9fSkpLGkoTCYmTC5wbGFjZWFibGUpO31lbHNlIHtsZXQgXz1lLmFxW251bGw9PT0oRD1udWxsPT09KFA9dGhpcy5wcmV2UGxhY2VtZW50KXx8dm9pZCAwPT09UD92b2lkIDA6UC52YXJpYWJsZU9mZnNldHNbdC5jcm9zc1RpbGVJRF0pfHx2b2lkIDA9PT1EP3ZvaWQgMDpELmFuY2hvcl07Y29uc3QgbT0oaSxvLHApPT57Y29uc3QgbT1pLngyLWkueDEsZz1pLnkyLWkueTEsdj10LnRleHRCb3hTY2FsZSx5PUUmJlwibmV2ZXJcIj09PWI/bzpudWxsO2xldCB3PW51bGwsUD1cIm5ldmVyXCI9PT14PzE6MixDPVwibmV2ZXJcIjtfJiZQKys7Zm9yKGxldCBlPTA7ZTxQO2UrKyl7Zm9yKGxldCBlPWM7ZTx1O2UrKyl7Y29uc3QgYT1zLnRleHRBbmNob3JPZmZzZXRzLmdldChlKTtpZihfJiZhLnRleHRBbmNob3IhPT1fKWNvbnRpbnVlO2NvbnN0IG89dGhpcy5hdHRlbXB0QW5jaG9yUGxhY2VtZW50KGEsaSxtLGcsdixULEksZCxsLGgsZixDLHQscyxwLHIsbix5LHopO2lmKG8mJih3PW8ucGxhY2VkR2x5cGhCb3hlcyx3JiZ3LnBsYWNlYWJsZSkpcmV0dXJuIE09ITAsaz1vLnNoaWZ0LHd9Xz9fPW51bGw6Qz14O31yZXR1cm4gYSYmIXcmJih3PXtib3g6dGhpcy5jb2xsaXNpb25JbmRleC5wbGFjZUNvbGxpc2lvbkJveChxLFwiYWx3YXlzXCIsZCxsLGgsSSxULHIsZi5wcmVkaWNhdGUseixuZXcgZS5QKDAsMCkpLmJveCxvZmZzY3JlZW46ITEscGxhY2VhYmxlOiExfSksd307bygoKCk9Pm0ocSxwLmljb25Cb3gsZS5haC5ob3Jpem9udGFsKSksKCgpPT57Y29uc3QgaT1wLnZlcnRpY2FsVGV4dEJveDtyZXR1cm4gcy5hbGxvd1ZlcnRpY2FsUGxhY2VtZW50JiYoIUx8fCFMLnBsYWNlYWJsZSkmJnQubnVtVmVydGljYWxHbHlwaFZlcnRpY2VzPjAmJmk/bShpLHAudmVydGljYWxJY29uQm94LGUuYWgudmVydGljYWwpOntib3g6bnVsbCxvY2NsdWRlZDohMCxvZmZzY3JlZW46bnVsbH19KSksTCYmKE09TC5wbGFjZWFibGUsUj1MLm9mZnNjcmVlbik7Y29uc3QgZz1pKEwmJkwucGxhY2VhYmxlKTtpZighTSYmdGhpcy5wcmV2UGxhY2VtZW50KXtjb25zdCBlPXRoaXMucHJldlBsYWNlbWVudC52YXJpYWJsZU9mZnNldHNbdC5jcm9zc1RpbGVJRF07ZSYmKHRoaXMudmFyaWFibGVPZmZzZXRzW3QuY3Jvc3NUaWxlSURdPWUsdGhpcy5tYXJrVXNlZEp1c3RpZmljYXRpb24ocyxlLmFuY2hvcix0LGcpKTt9fX1pZihCPUwsTT1CJiZCLnBsYWNlYWJsZSxSPUImJkIub2Zmc2NyZWVuLHQudXNlUnVudGltZUNvbGxpc2lvbkNpcmNsZXMpe2NvbnN0IGk9cy50ZXh0LnBsYWNlZFN5bWJvbEFycmF5LmdldCh0LmNlbnRlckp1c3RpZmllZFRleHRTeW1ib2xJbmRleCksbj1lLmFpKHMudGV4dFNpemVEYXRhLG0saSksZD1vLmdldChcInRleHQtcGFkZGluZ1wiKTtPPXRoaXMuY29sbGlzaW9uSW5kZXgucGxhY2VDb2xsaXNpb25DaXJjbGVzKHgsaSxzLmxpbmVWZXJ0ZXhBcnJheSxzLmdseXBoT2Zmc2V0QXJyYXksbixsLGgsYyx1LGEsSSxmLnByZWRpY2F0ZSx0LmNvbGxpc2lvbkNpcmNsZURpYW1ldGVyLGQscix6KSxPLmNpcmNsZXMubGVuZ3RoJiZPLmNvbGxpc2lvbkRldGVjdGVkJiYhYSYmZS53KFwiQ29sbGlzaW9ucyBkZXRlY3RlZCwgYnV0IGNvbGxpc2lvbiBib3hlcyBhcmUgbm90IHNob3duXCIpLE09eXx8Ty5jaXJjbGVzLmxlbmd0aD4wJiYhTy5jb2xsaXNpb25EZXRlY3RlZCxSPVImJk8ub2Zmc2NyZWVuO31pZihwLmljb25GZWF0dXJlSW5kZXgmJihaPXAuaWNvbkZlYXR1cmVJbmRleCkscC5pY29uQm94KXtjb25zdCB0PXQ9PnRoaXMuY29sbGlzaW9uSW5kZXgucGxhY2VDb2xsaXNpb25Cb3godCxiLGQsbCxoLEksVCxuLGYucHJlZGljYXRlLHosRSYmaz9rOnZvaWQgMCk7RiYmRi5wbGFjZWFibGUmJnAudmVydGljYWxJY29uQm94PyhOPXQocC52ZXJ0aWNhbEljb25Cb3gpLEE9Ti5wbGFjZWFibGUpOihOPXQocC5pY29uQm94KSxBPU4ucGxhY2VhYmxlKSxSPVImJk4ub2Zmc2NyZWVuO31jb25zdCBWPWd8fDA9PT10Lm51bUhvcml6b250YWxHbHlwaFZlcnRpY2VzJiYwPT09dC5udW1WZXJ0aWNhbEdseXBoVmVydGljZXMsRz12fHwwPT09dC5udW1JY29uVmVydGljZXM7Vnx8Rz9HP1Z8fChBPUEmJk0pOk09QSYmTTpBPU09QSYmTTtjb25zdCBIPUEmJk4ucGxhY2VhYmxlO2lmKE0mJkIucGxhY2VhYmxlJiZ0aGlzLmNvbGxpc2lvbkluZGV4Lmluc2VydENvbGxpc2lvbkJveChCLmJveCx4LG8uZ2V0KFwidGV4dC1pZ25vcmUtcGxhY2VtZW50XCIpLHMuYnVja2V0SW5zdGFuY2VJZCxGJiZGLnBsYWNlYWJsZSYmaj9qOlUsZi5JRCksSCYmdGhpcy5jb2xsaXNpb25JbmRleC5pbnNlcnRDb2xsaXNpb25Cb3goTi5ib3gsYixvLmdldChcImljb24taWdub3JlLXBsYWNlbWVudFwiKSxzLmJ1Y2tldEluc3RhbmNlSWQsWixmLklEKSxPJiZNJiZ0aGlzLmNvbGxpc2lvbkluZGV4Lmluc2VydENvbGxpc2lvbkNpcmNsZXMoTy5jaXJjbGVzLHgsby5nZXQoXCJ0ZXh0LWlnbm9yZS1wbGFjZW1lbnRcIikscy5idWNrZXRJbnN0YW5jZUlkLFUsZi5JRCksYSYmdGhpcy5zdG9yZUNvbGxpc2lvbkRhdGEocy5idWNrZXRJbnN0YW5jZUlkLHcscCxCLE4sTyksMD09PXQuY3Jvc3NUaWxlSUQpdGhyb3cgbmV3IEVycm9yKFwic3ltYm9sSW5zdGFuY2UuY3Jvc3NUaWxlSUQgY2FuJ3QgYmUgMFwiKTtpZigwPT09cy5idWNrZXRJbnN0YW5jZUlkKXRocm93IG5ldyBFcnJvcihcImJ1Y2tldC5idWNrZXRJbnN0YW5jZUlkIGNhbid0IGJlIDBcIik7dGhpcy5wbGFjZW1lbnRzW3QuY3Jvc3NUaWxlSURdPW5ldyBVdChNfHxDLEF8fFMsUnx8cy5qdXN0UmVsb2FkZWQpLGlbdC5jcm9zc1RpbGVJRF09ITA7fTtpZihQKXtpZigwIT09dC5zeW1ib2xJbnN0YW5jZVN0YXJ0KXRocm93IG5ldyBFcnJvcihcImJ1Y2tldC5idWNrZXRJbnN0YW5jZUlkIHNob3VsZCBiZSAwXCIpO2NvbnN0IGU9cy5nZXRTb3J0ZWRTeW1ib2xJbmRleGVzKHRoaXMudHJhbnNmb3JtLmFuZ2xlKTtmb3IobGV0IHQ9ZS5sZW5ndGgtMTt0Pj0wOy0tdCl7Y29uc3QgaT1lW3RdO0Qocy5zeW1ib2xJbnN0YW5jZXMuZ2V0KGkpLHMuY29sbGlzaW9uQXJyYXlzW2ldLGkpO319ZWxzZSBmb3IobGV0IGU9dC5zeW1ib2xJbnN0YW5jZVN0YXJ0O2U8dC5zeW1ib2xJbnN0YW5jZUVuZDtlKyspRChzLnN5bWJvbEluc3RhbmNlcy5nZXQoZSkscy5jb2xsaXNpb25BcnJheXNbZV0sZSk7aWYoYSYmcy5idWNrZXRJbnN0YW5jZUlkIGluIHRoaXMuY29sbGlzaW9uQ2lyY2xlQXJyYXlzKXtjb25zdCB0PXRoaXMuY29sbGlzaW9uQ2lyY2xlQXJyYXlzW3MuYnVja2V0SW5zdGFuY2VJZF07ZS5hcyh0LmludlByb2pNYXRyaXgsbCksdC52aWV3cG9ydE1hdHJpeD10aGlzLmNvbGxpc2lvbkluZGV4LmdldFZpZXdwb3J0TWF0cml4KCk7fXMuanVzdFJlbG9hZGVkPSExO31zdG9yZUNvbGxpc2lvbkRhdGEodCxlLGksYSxzLG8pe2lmKGkudGV4dEJveHx8aS5pY29uQm94KXtsZXQgbyxyO3RoaXMuY29sbGlzaW9uQm94QXJyYXlzLmhhcyh0KT9vPXRoaXMuY29sbGlzaW9uQm94QXJyYXlzLmdldCh0KToobz1uZXcgTWFwLHRoaXMuY29sbGlzaW9uQm94QXJyYXlzLnNldCh0LG8pKSxvLmhhcyhlKT9yPW8uZ2V0KGUpOihyPXt0ZXh0Om51bGwsaWNvbjpudWxsfSxvLnNldChlLHIpKSxpLnRleHRCb3gmJihyLnRleHQ9YS5ib3gpLGkuaWNvbkJveCYmKHIuaWNvbj1zLmJveCk7fWlmKG8pe2xldCBlPXRoaXMuY29sbGlzaW9uQ2lyY2xlQXJyYXlzW3RdO3ZvaWQgMD09PWUmJihlPXRoaXMuY29sbGlzaW9uQ2lyY2xlQXJyYXlzW3RdPW5ldyBqdCk7Zm9yKGxldCB0PTA7dDxvLmNpcmNsZXMubGVuZ3RoO3QrPTQpZS5jaXJjbGVzLnB1c2goby5jaXJjbGVzW3QrMF0pLGUuY2lyY2xlcy5wdXNoKG8uY2lyY2xlc1t0KzFdKSxlLmNpcmNsZXMucHVzaChvLmNpcmNsZXNbdCsyXSksZS5jaXJjbGVzLnB1c2goby5jb2xsaXNpb25EZXRlY3RlZD8xOjApO319bWFya1VzZWRKdXN0aWZpY2F0aW9uKHQsaSxhLHMpe2xldCBvO289cz09PWUuYWgudmVydGljYWw/YS52ZXJ0aWNhbFBsYWNlZFRleHRTeW1ib2xJbmRleDp7bGVmdDphLmxlZnRKdXN0aWZpZWRUZXh0U3ltYm9sSW5kZXgsY2VudGVyOmEuY2VudGVySnVzdGlmaWVkVGV4dFN5bWJvbEluZGV4LHJpZ2h0OmEucmlnaHRKdXN0aWZpZWRUZXh0U3ltYm9sSW5kZXh9W2UuYXQoaSldO2NvbnN0IHI9W2EubGVmdEp1c3RpZmllZFRleHRTeW1ib2xJbmRleCxhLmNlbnRlckp1c3RpZmllZFRleHRTeW1ib2xJbmRleCxhLnJpZ2h0SnVzdGlmaWVkVGV4dFN5bWJvbEluZGV4LGEudmVydGljYWxQbGFjZWRUZXh0U3ltYm9sSW5kZXhdO2Zvcihjb25zdCBlIG9mIHIpZT49MCYmKHQudGV4dC5wbGFjZWRTeW1ib2xBcnJheS5nZXQoZSkuY3Jvc3NUaWxlSUQ9bz49MCYmZSE9PW8/MDphLmNyb3NzVGlsZUlEKTt9bWFya1VzZWRPcmllbnRhdGlvbih0LGksYSl7Y29uc3Qgcz1pPT09ZS5haC5ob3Jpem9udGFsfHxpPT09ZS5haC5ob3Jpem9udGFsT25seT9pOjAsbz1pPT09ZS5haC52ZXJ0aWNhbD9pOjAscj1bYS5sZWZ0SnVzdGlmaWVkVGV4dFN5bWJvbEluZGV4LGEuY2VudGVySnVzdGlmaWVkVGV4dFN5bWJvbEluZGV4LGEucmlnaHRKdXN0aWZpZWRUZXh0U3ltYm9sSW5kZXhdO2Zvcihjb25zdCBlIG9mIHIpdC50ZXh0LnBsYWNlZFN5bWJvbEFycmF5LmdldChlKS5wbGFjZWRPcmllbnRhdGlvbj1zO2EudmVydGljYWxQbGFjZWRUZXh0U3ltYm9sSW5kZXgmJih0LnRleHQucGxhY2VkU3ltYm9sQXJyYXkuZ2V0KGEudmVydGljYWxQbGFjZWRUZXh0U3ltYm9sSW5kZXgpLnBsYWNlZE9yaWVudGF0aW9uPW8pO31jb21taXQodCl7dGhpcy5jb21taXRUaW1lPXQsdGhpcy56b29tQXRMYXN0UmVjZW5jeUNoZWNrPXRoaXMudHJhbnNmb3JtLnpvb207Y29uc3QgZT10aGlzLnByZXZQbGFjZW1lbnQ7bGV0IGk9ITE7dGhpcy5wcmV2Wm9vbUFkanVzdG1lbnQ9ZT9lLnpvb21BZGp1c3RtZW50KHRoaXMudHJhbnNmb3JtLnpvb20pOjA7Y29uc3QgYT1lP2Uuc3ltYm9sRmFkZUNoYW5nZSh0KToxLHM9ZT9lLm9wYWNpdGllczp7fSxvPWU/ZS52YXJpYWJsZU9mZnNldHM6e30scj1lP2UucGxhY2VkT3JpZW50YXRpb25zOnt9O2Zvcihjb25zdCB0IGluIHRoaXMucGxhY2VtZW50cyl7Y29uc3QgZT10aGlzLnBsYWNlbWVudHNbdF0sbz1zW3RdO28/KHRoaXMub3BhY2l0aWVzW3RdPW5ldyBOdChvLGEsZS50ZXh0LGUuaWNvbiksaT1pfHxlLnRleHQhPT1vLnRleHQucGxhY2VkfHxlLmljb24hPT1vLmljb24ucGxhY2VkKToodGhpcy5vcGFjaXRpZXNbdF09bmV3IE50KG51bGwsYSxlLnRleHQsZS5pY29uLGUuc2tpcEZhZGUpLGk9aXx8ZS50ZXh0fHxlLmljb24pO31mb3IoY29uc3QgdCBpbiBzKXtjb25zdCBlPXNbdF07aWYoIXRoaXMub3BhY2l0aWVzW3RdKXtjb25zdCBzPW5ldyBOdChlLGEsITEsITEpO3MuaXNIaWRkZW4oKXx8KHRoaXMub3BhY2l0aWVzW3RdPXMsaT1pfHxlLnRleHQucGxhY2VkfHxlLmljb24ucGxhY2VkKTt9fWZvcihjb25zdCB0IGluIG8pdGhpcy52YXJpYWJsZU9mZnNldHNbdF18fCF0aGlzLm9wYWNpdGllc1t0XXx8dGhpcy5vcGFjaXRpZXNbdF0uaXNIaWRkZW4oKXx8KHRoaXMudmFyaWFibGVPZmZzZXRzW3RdPW9bdF0pO2Zvcihjb25zdCB0IGluIHIpdGhpcy5wbGFjZWRPcmllbnRhdGlvbnNbdF18fCF0aGlzLm9wYWNpdGllc1t0XXx8dGhpcy5vcGFjaXRpZXNbdF0uaXNIaWRkZW4oKXx8KHRoaXMucGxhY2VkT3JpZW50YXRpb25zW3RdPXJbdF0pO2lmKGUmJnZvaWQgMD09PWUubGFzdFBsYWNlbWVudENoYW5nZVRpbWUpdGhyb3cgbmV3IEVycm9yKFwiTGFzdCBwbGFjZW1lbnQgdGltZSBmb3IgcHJldmlvdXMgcGxhY2VtZW50IGlzIG5vdCBkZWZpbmVkXCIpO2k/dGhpcy5sYXN0UGxhY2VtZW50Q2hhbmdlVGltZT10OlwibnVtYmVyXCIhPXR5cGVvZiB0aGlzLmxhc3RQbGFjZW1lbnRDaGFuZ2VUaW1lJiYodGhpcy5sYXN0UGxhY2VtZW50Q2hhbmdlVGltZT1lP2UubGFzdFBsYWNlbWVudENoYW5nZVRpbWU6dCk7fXVwZGF0ZUxheWVyT3BhY2l0aWVzKHQsZSl7Y29uc3QgaT17fTtmb3IoY29uc3QgYSBvZiBlKXtjb25zdCBlPWEuZ2V0QnVja2V0KHQpO2UmJmEubGF0ZXN0RmVhdHVyZUluZGV4JiZ0LmlkPT09ZS5sYXllcklkc1swXSYmdGhpcy51cGRhdGVCdWNrZXRPcGFjaXRpZXMoZSxhLnRpbGVJRCxpLGEuY29sbGlzaW9uQm94QXJyYXkpO319dXBkYXRlQnVja2V0T3BhY2l0aWVzKHQsaSxhLHMpe3QuaGFzVGV4dERhdGEoKSYmKHQudGV4dC5vcGFjaXR5VmVydGV4QXJyYXkuY2xlYXIoKSx0LnRleHQuaGFzVmlzaWJsZVZlcnRpY2VzPSExKSx0Lmhhc0ljb25EYXRhKCkmJih0Lmljb24ub3BhY2l0eVZlcnRleEFycmF5LmNsZWFyKCksdC5pY29uLmhhc1Zpc2libGVWZXJ0aWNlcz0hMSksdC5oYXNJY29uQ29sbGlzaW9uQm94RGF0YSgpJiZ0Lmljb25Db2xsaXNpb25Cb3guY29sbGlzaW9uVmVydGV4QXJyYXkuY2xlYXIoKSx0Lmhhc1RleHRDb2xsaXNpb25Cb3hEYXRhKCkmJnQudGV4dENvbGxpc2lvbkJveC5jb2xsaXNpb25WZXJ0ZXhBcnJheS5jbGVhcigpO2NvbnN0IG89dC5sYXllcnNbMF0scj1vLmxheW91dCxuPW5ldyBOdChudWxsLDAsITEsITEsITApLGw9ci5nZXQoXCJ0ZXh0LWFsbG93LW92ZXJsYXBcIiksaD1yLmdldChcImljb24tYWxsb3ctb3ZlcmxhcFwiKSxjPW8uX3VuZXZhbHVhdGVkTGF5b3V0Lmhhc1ZhbHVlKFwidGV4dC12YXJpYWJsZS1hbmNob3JcIil8fG8uX3VuZXZhbHVhdGVkTGF5b3V0Lmhhc1ZhbHVlKFwidGV4dC12YXJpYWJsZS1hbmNob3Itb2Zmc2V0XCIpLHU9XCJtYXBcIj09PXIuZ2V0KFwidGV4dC1yb3RhdGlvbi1hbGlnbm1lbnRcIiksZD1cIm1hcFwiPT09ci5nZXQoXCJ0ZXh0LXBpdGNoLWFsaWdubWVudFwiKSxfPVwibm9uZVwiIT09ci5nZXQoXCJpY29uLXRleHQtZml0XCIpLHA9bmV3IE50KG51bGwsMCxsJiYoaHx8IXQuaGFzSWNvbkRhdGEoKXx8ci5nZXQoXCJpY29uLW9wdGlvbmFsXCIpKSxoJiYobHx8IXQuaGFzVGV4dERhdGEoKXx8ci5nZXQoXCJ0ZXh0LW9wdGlvbmFsXCIpKSwhMCk7IXQuY29sbGlzaW9uQXJyYXlzJiZzJiYodC5oYXNJY29uQ29sbGlzaW9uQm94RGF0YSgpfHx0Lmhhc1RleHRDb2xsaXNpb25Cb3hEYXRhKCkpJiZ0LmRlc2VyaWFsaXplQ29sbGlzaW9uQm94ZXMocyk7Y29uc3QgbT0odCxlLGkpPT57Zm9yKGxldCBhPTA7YTxlLzQ7YSsrKXQub3BhY2l0eVZlcnRleEFycmF5LmVtcGxhY2VCYWNrKGkpO3QuaGFzVmlzaWJsZVZlcnRpY2VzPXQuaGFzVmlzaWJsZVZlcnRpY2VzfHxpIT09ZWU7fSxmPXRoaXMuY29sbGlzaW9uQm94QXJyYXlzLmdldCh0LmJ1Y2tldEluc3RhbmNlSWQpO2ZvcihsZXQgaT0wO2k8dC5zeW1ib2xJbnN0YW5jZXMubGVuZ3RoO2krKyl7Y29uc3Qgcz10LnN5bWJvbEluc3RhbmNlcy5nZXQoaSkse251bUhvcml6b250YWxHbHlwaFZlcnRpY2VzOm8sbnVtVmVydGljYWxHbHlwaFZlcnRpY2VzOnIsY3Jvc3NUaWxlSUQ6bH09cztsZXQgaD10aGlzLm9wYWNpdGllc1tsXTthW2xdP2g9bjpofHwoaD1wLHRoaXMub3BhY2l0aWVzW2xdPWgpLGFbbF09ITA7Y29uc3QgZz1zLm51bUljb25WZXJ0aWNlcz4wLHY9dGhpcy5wbGFjZWRPcmllbnRhdGlvbnNbcy5jcm9zc1RpbGVJRF0seD12PT09ZS5haC52ZXJ0aWNhbCx5PXY9PT1lLmFoLmhvcml6b250YWx8fHY9PT1lLmFoLmhvcml6b250YWxPbmx5O2lmKG8+MHx8cj4wKXtjb25zdCBlPXRlKGgudGV4dCk7bSh0LnRleHQsbyx4P2VlOmUpLG0odC50ZXh0LHIseT9lZTplKTtjb25zdCBpPWgudGV4dC5pc0hpZGRlbigpO1tzLnJpZ2h0SnVzdGlmaWVkVGV4dFN5bWJvbEluZGV4LHMuY2VudGVySnVzdGlmaWVkVGV4dFN5bWJvbEluZGV4LHMubGVmdEp1c3RpZmllZFRleHRTeW1ib2xJbmRleF0uZm9yRWFjaCgoZT0+e2U+PTAmJih0LnRleHQucGxhY2VkU3ltYm9sQXJyYXkuZ2V0KGUpLmhpZGRlbj1pfHx4PzE6MCk7fSkpLHMudmVydGljYWxQbGFjZWRUZXh0U3ltYm9sSW5kZXg+PTAmJih0LnRleHQucGxhY2VkU3ltYm9sQXJyYXkuZ2V0KHMudmVydGljYWxQbGFjZWRUZXh0U3ltYm9sSW5kZXgpLmhpZGRlbj1pfHx5PzE6MCk7Y29uc3QgYT10aGlzLnZhcmlhYmxlT2Zmc2V0c1tzLmNyb3NzVGlsZUlEXTthJiZ0aGlzLm1hcmtVc2VkSnVzdGlmaWNhdGlvbih0LGEuYW5jaG9yLHMsdik7Y29uc3Qgbj10aGlzLnBsYWNlZE9yaWVudGF0aW9uc1tzLmNyb3NzVGlsZUlEXTtuJiYodGhpcy5tYXJrVXNlZEp1c3RpZmljYXRpb24odCxcImxlZnRcIixzLG4pLHRoaXMubWFya1VzZWRPcmllbnRhdGlvbih0LG4scykpO31pZihnKXtjb25zdCBlPXRlKGguaWNvbiksaT0hKF8mJnMudmVydGljYWxQbGFjZWRJY29uU3ltYm9sSW5kZXgmJngpO3MucGxhY2VkSWNvblN5bWJvbEluZGV4Pj0wJiYobSh0Lmljb24scy5udW1JY29uVmVydGljZXMsaT9lOmVlKSx0Lmljb24ucGxhY2VkU3ltYm9sQXJyYXkuZ2V0KHMucGxhY2VkSWNvblN5bWJvbEluZGV4KS5oaWRkZW49aC5pY29uLmlzSGlkZGVuKCkpLHMudmVydGljYWxQbGFjZWRJY29uU3ltYm9sSW5kZXg+PTAmJihtKHQuaWNvbixzLm51bVZlcnRpY2FsSWNvblZlcnRpY2VzLGk/ZWU6ZSksdC5pY29uLnBsYWNlZFN5bWJvbEFycmF5LmdldChzLnZlcnRpY2FsUGxhY2VkSWNvblN5bWJvbEluZGV4KS5oaWRkZW49aC5pY29uLmlzSGlkZGVuKCkpO31jb25zdCBiPWYmJmYuaGFzKGkpP2YuZ2V0KGkpOnt0ZXh0Om51bGwsaWNvbjpudWxsfTtpZih0Lmhhc0ljb25Db2xsaXNpb25Cb3hEYXRhKCl8fHQuaGFzVGV4dENvbGxpc2lvbkJveERhdGEoKSl7Y29uc3QgYT10LmNvbGxpc2lvbkFycmF5c1tpXTtpZihhKXtsZXQgaT1uZXcgZS5QKDAsMCk7aWYoYS50ZXh0Qm94fHxhLnZlcnRpY2FsVGV4dEJveCl7bGV0IGU9ITA7aWYoYyl7Y29uc3QgdD10aGlzLnZhcmlhYmxlT2Zmc2V0c1tsXTt0PyhpPVZ0KHQuYW5jaG9yLHQud2lkdGgsdC5oZWlnaHQsdC50ZXh0T2Zmc2V0LHQudGV4dEJveFNjYWxlKSx1JiZpLl9yb3RhdGUoZD90aGlzLnRyYW5zZm9ybS5hbmdsZTotdGhpcy50cmFuc2Zvcm0uYW5nbGUpKTplPSExO31pZihhLnRleHRCb3h8fGEudmVydGljYWxUZXh0Qm94KXtsZXQgczthLnRleHRCb3gmJihzPXgpLGEudmVydGljYWxUZXh0Qm94JiYocz15KSxIdCh0LnRleHRDb2xsaXNpb25Cb3guY29sbGlzaW9uVmVydGV4QXJyYXksaC50ZXh0LnBsYWNlZCwhZXx8cyxiLnRleHQsaS54LGkueSk7fX1pZihhLmljb25Cb3h8fGEudmVydGljYWxJY29uQm94KXtjb25zdCBlPUJvb2xlYW4oIXkmJmEudmVydGljYWxJY29uQm94KTtsZXQgczthLmljb25Cb3gmJihzPWUpLGEudmVydGljYWxJY29uQm94JiYocz0hZSksSHQodC5pY29uQ29sbGlzaW9uQm94LmNvbGxpc2lvblZlcnRleEFycmF5LGguaWNvbi5wbGFjZWQscyxiLmljb24sXz9pLng6MCxfP2kueTowKTt9fX19aWYodC5zb3J0RmVhdHVyZXModGhpcy50cmFuc2Zvcm0uYW5nbGUpLHRoaXMucmV0YWluZWRRdWVyeURhdGFbdC5idWNrZXRJbnN0YW5jZUlkXSYmKHRoaXMucmV0YWluZWRRdWVyeURhdGFbdC5idWNrZXRJbnN0YW5jZUlkXS5mZWF0dXJlU29ydE9yZGVyPXQuZmVhdHVyZVNvcnRPcmRlciksdC5oYXNUZXh0RGF0YSgpJiZ0LnRleHQub3BhY2l0eVZlcnRleEJ1ZmZlciYmdC50ZXh0Lm9wYWNpdHlWZXJ0ZXhCdWZmZXIudXBkYXRlRGF0YSh0LnRleHQub3BhY2l0eVZlcnRleEFycmF5KSx0Lmhhc0ljb25EYXRhKCkmJnQuaWNvbi5vcGFjaXR5VmVydGV4QnVmZmVyJiZ0Lmljb24ub3BhY2l0eVZlcnRleEJ1ZmZlci51cGRhdGVEYXRhKHQuaWNvbi5vcGFjaXR5VmVydGV4QXJyYXkpLHQuaGFzSWNvbkNvbGxpc2lvbkJveERhdGEoKSYmdC5pY29uQ29sbGlzaW9uQm94LmNvbGxpc2lvblZlcnRleEJ1ZmZlciYmdC5pY29uQ29sbGlzaW9uQm94LmNvbGxpc2lvblZlcnRleEJ1ZmZlci51cGRhdGVEYXRhKHQuaWNvbkNvbGxpc2lvbkJveC5jb2xsaXNpb25WZXJ0ZXhBcnJheSksdC5oYXNUZXh0Q29sbGlzaW9uQm94RGF0YSgpJiZ0LnRleHRDb2xsaXNpb25Cb3guY29sbGlzaW9uVmVydGV4QnVmZmVyJiZ0LnRleHRDb2xsaXNpb25Cb3guY29sbGlzaW9uVmVydGV4QnVmZmVyLnVwZGF0ZURhdGEodC50ZXh0Q29sbGlzaW9uQm94LmNvbGxpc2lvblZlcnRleEFycmF5KSx0LnRleHQub3BhY2l0eVZlcnRleEFycmF5Lmxlbmd0aCE9PXQudGV4dC5sYXlvdXRWZXJ0ZXhBcnJheS5sZW5ndGgvNCl0aHJvdyBuZXcgRXJyb3IoYGJ1Y2tldC50ZXh0Lm9wYWNpdHlWZXJ0ZXhBcnJheS5sZW5ndGggKD0gJHt0LnRleHQub3BhY2l0eVZlcnRleEFycmF5Lmxlbmd0aH0pICE9PSBidWNrZXQudGV4dC5sYXlvdXRWZXJ0ZXhBcnJheS5sZW5ndGggKD0gJHt0LnRleHQubGF5b3V0VmVydGV4QXJyYXkubGVuZ3RofSkgLyA0YCk7aWYodC5pY29uLm9wYWNpdHlWZXJ0ZXhBcnJheS5sZW5ndGghPT10Lmljb24ubGF5b3V0VmVydGV4QXJyYXkubGVuZ3RoLzQpdGhyb3cgbmV3IEVycm9yKGBidWNrZXQuaWNvbi5vcGFjaXR5VmVydGV4QXJyYXkubGVuZ3RoICg9ICR7dC5pY29uLm9wYWNpdHlWZXJ0ZXhBcnJheS5sZW5ndGh9KSAhPT0gYnVja2V0Lmljb24ubGF5b3V0VmVydGV4QXJyYXkubGVuZ3RoICg9ICR7dC5pY29uLmxheW91dFZlcnRleEFycmF5Lmxlbmd0aH0pIC8gNGApO2lmKHQuYnVja2V0SW5zdGFuY2VJZCBpbiB0aGlzLmNvbGxpc2lvbkNpcmNsZUFycmF5cyl7Y29uc3QgZT10aGlzLmNvbGxpc2lvbkNpcmNsZUFycmF5c1t0LmJ1Y2tldEluc3RhbmNlSWRdO3QucGxhY2VtZW50SW52UHJvak1hdHJpeD1lLmludlByb2pNYXRyaXgsdC5wbGFjZW1lbnRWaWV3cG9ydE1hdHJpeD1lLnZpZXdwb3J0TWF0cml4LHQuY29sbGlzaW9uQ2lyY2xlQXJyYXk9ZS5jaXJjbGVzLGRlbGV0ZSB0aGlzLmNvbGxpc2lvbkNpcmNsZUFycmF5c1t0LmJ1Y2tldEluc3RhbmNlSWRdO319c3ltYm9sRmFkZUNoYW5nZSh0KXtyZXR1cm4gMD09PXRoaXMuZmFkZUR1cmF0aW9uPzE6KHQtdGhpcy5jb21taXRUaW1lKS90aGlzLmZhZGVEdXJhdGlvbit0aGlzLnByZXZab29tQWRqdXN0bWVudH16b29tQWRqdXN0bWVudCh0KXtyZXR1cm4gTWF0aC5tYXgoMCwodGhpcy50cmFuc2Zvcm0uem9vbS10KS8xLjUpfWhhc1RyYW5zaXRpb25zKHQpe3JldHVybiB0aGlzLnN0YWxlfHx0LXRoaXMubGFzdFBsYWNlbWVudENoYW5nZVRpbWU8dGhpcy5mYWRlRHVyYXRpb259c3RpbGxSZWNlbnQodCxlKXtjb25zdCBpPXRoaXMuem9vbUF0TGFzdFJlY2VuY3lDaGVjaz09PWU/MS10aGlzLnpvb21BZGp1c3RtZW50KGUpOjE7cmV0dXJuIHRoaXMuem9vbUF0TGFzdFJlY2VuY3lDaGVjaz1lLHRoaXMuY29tbWl0VGltZSt0aGlzLmZhZGVEdXJhdGlvbippPnR9c2V0U3RhbGUoKXt0aGlzLnN0YWxlPSEwO319ZnVuY3Rpb24gSHQodCxlLGksYSxzLG8pe2EmJjAhPT1hLmxlbmd0aHx8KGE9WzAsMCwwLDBdKTtjb25zdCByPWFbMF0tTHQsbj1hWzFdLUx0LGw9YVsyXS1MdCxoPWFbM10tTHQ7dC5lbXBsYWNlQmFjayhlPzE6MCxpPzE6MCxzfHwwLG98fDAscixuKSx0LmVtcGxhY2VCYWNrKGU/MTowLGk/MTowLHN8fDAsb3x8MCxsLG4pLHQuZW1wbGFjZUJhY2soZT8xOjAsaT8xOjAsc3x8MCxvfHwwLGwsaCksdC5lbXBsYWNlQmFjayhlPzE6MCxpPzE6MCxzfHwwLG98fDAscixoKTt9Y29uc3QgV3Q9TWF0aC5wb3coMiwyNSksJHQ9TWF0aC5wb3coMiwyNCksWHQ9TWF0aC5wb3coMiwxNyksS3Q9TWF0aC5wb3coMiwxNiksSnQ9TWF0aC5wb3coMiw5KSxZdD1NYXRoLnBvdygyLDgpLFF0PU1hdGgucG93KDIsMSk7ZnVuY3Rpb24gdGUodCl7aWYoMD09PXQub3BhY2l0eSYmIXQucGxhY2VkKXJldHVybiAwO2lmKDE9PT10Lm9wYWNpdHkmJnQucGxhY2VkKXJldHVybiA0Mjk0OTY3Mjk1O2NvbnN0IGU9dC5wbGFjZWQ/MTowLGk9TWF0aC5mbG9vcigxMjcqdC5vcGFjaXR5KTtyZXR1cm4gaSpXdCtlKiR0K2kqWHQrZSpLdCtpKkp0K2UqWXQraSpRdCtlfWNvbnN0IGVlPTA7ZnVuY3Rpb24gaWUoKXtyZXR1cm4ge2lzT2NjbHVkZWQ6KHQsZSxpKT0+ITEsZ2V0UGl0Y2hlZFRleHRDb3JyZWN0aW9uOih0LGUsaSk9PjEsZ2V0IHVzZVNwZWNpYWxQcm9qZWN0aW9uRm9yU3ltYm9scygpe3JldHVybiAhMX0scHJvamVjdFRpbGVDb29yZGluYXRlcyh0LGUsaSxhKXt0aHJvdyBuZXcgRXJyb3IoXCJOb3QgaW1wbGVtZW50ZWQuXCIpfSx0cmFuc2xhdGVQb3NpdGlvbjoodCxlLGksYSk9PmZ1bmN0aW9uKHQsZSxpLGEscz0hMSl7aWYoIWlbMF0mJiFpWzFdKXJldHVybiBbMCwwXTtjb25zdCBvPXM/XCJtYXBcIj09PWE/dC5hbmdsZTowOlwidmlld3BvcnRcIj09PWE/LXQuYW5nbGU6MDtpZihvKXtjb25zdCB0PU1hdGguc2luKG8pLGU9TWF0aC5jb3Mobyk7aT1baVswXSplLWlbMV0qdCxpWzBdKnQraVsxXSplXTt9cmV0dXJuIFtzP2lbMF06QnQoZSxpWzBdLHQuem9vbSkscz9pWzFdOkJ0KGUsaVsxXSx0Lnpvb20pXX0odCxlLGksYSksZ2V0Q2lyY2xlUmFkaXVzQ29ycmVjdGlvbjp0PT4xfX1jbGFzcyBhZXtjb25zdHJ1Y3Rvcih0KXt0aGlzLl9zb3J0QWNyb3NzVGlsZXM9XCJ2aWV3cG9ydC15XCIhPT10LmxheW91dC5nZXQoXCJzeW1ib2wtei1vcmRlclwiKSYmIXQubGF5b3V0LmdldChcInN5bWJvbC1zb3J0LWtleVwiKS5pc0NvbnN0YW50KCksdGhpcy5fY3VycmVudFRpbGVJbmRleD0wLHRoaXMuX2N1cnJlbnRQYXJ0SW5kZXg9MCx0aGlzLl9zZWVuQ3Jvc3NUaWxlSURzPXt9LHRoaXMuX2J1Y2tldFBhcnRzPVtdO31jb250aW51ZVBsYWNlbWVudCh0LGUsaSxhLHMpe2NvbnN0IG89dGhpcy5fYnVja2V0UGFydHM7Zm9yKDt0aGlzLl9jdXJyZW50VGlsZUluZGV4PHQubGVuZ3RoOylpZihlLmdldEJ1Y2tldFBhcnRzKG8sYSx0W3RoaXMuX2N1cnJlbnRUaWxlSW5kZXhdLHRoaXMuX3NvcnRBY3Jvc3NUaWxlcyksdGhpcy5fY3VycmVudFRpbGVJbmRleCsrLHMoKSlyZXR1cm4gITA7Zm9yKHRoaXMuX3NvcnRBY3Jvc3NUaWxlcyYmKHRoaXMuX3NvcnRBY3Jvc3NUaWxlcz0hMSxvLnNvcnQoKCh0LGUpPT50LnNvcnRLZXktZS5zb3J0S2V5KSkpO3RoaXMuX2N1cnJlbnRQYXJ0SW5kZXg8by5sZW5ndGg7KWlmKGUucGxhY2VMYXllckJ1Y2tldFBhcnQob1t0aGlzLl9jdXJyZW50UGFydEluZGV4XSx0aGlzLl9zZWVuQ3Jvc3NUaWxlSURzLGkpLHRoaXMuX2N1cnJlbnRQYXJ0SW5kZXgrKyxzKCkpcmV0dXJuICEwO3JldHVybiAhMX19Y2xhc3Mgc2V7Y29uc3RydWN0b3IodCxlLGksYSxzLG8scixuKXt0aGlzLnBsYWNlbWVudD1uZXcgR3QodCxpZSgpLGUsbyxyLG4pLHRoaXMuX2N1cnJlbnRQbGFjZW1lbnRJbmRleD1pLmxlbmd0aC0xLHRoaXMuX2ZvcmNlRnVsbFBsYWNlbWVudD1hLHRoaXMuX3Nob3dDb2xsaXNpb25Cb3hlcz1zLHRoaXMuX2RvbmU9ITE7fWlzRG9uZSgpe3JldHVybiB0aGlzLl9kb25lfWNvbnRpbnVlUGxhY2VtZW50KHQsZSxpKXtjb25zdCBhPW8ubm93KCkscz0oKT0+IXRoaXMuX2ZvcmNlRnVsbFBsYWNlbWVudCYmby5ub3coKS1hPjI7Zm9yKDt0aGlzLl9jdXJyZW50UGxhY2VtZW50SW5kZXg+PTA7KXtjb25zdCBhPWVbdFt0aGlzLl9jdXJyZW50UGxhY2VtZW50SW5kZXhdXSxvPXRoaXMucGxhY2VtZW50LmNvbGxpc2lvbkluZGV4LnRyYW5zZm9ybS56b29tO2lmKFwic3ltYm9sXCI9PT1hLnR5cGUmJighYS5taW56b29tfHxhLm1pbnpvb208PW8pJiYoIWEubWF4em9vbXx8YS5tYXh6b29tPm8pKXtpZih0aGlzLl9pblByb2dyZXNzTGF5ZXJ8fCh0aGlzLl9pblByb2dyZXNzTGF5ZXI9bmV3IGFlKGEpKSx0aGlzLl9pblByb2dyZXNzTGF5ZXIuY29udGludWVQbGFjZW1lbnQoaVthLnNvdXJjZV0sdGhpcy5wbGFjZW1lbnQsdGhpcy5fc2hvd0NvbGxpc2lvbkJveGVzLGEscykpcmV0dXJuO2RlbGV0ZSB0aGlzLl9pblByb2dyZXNzTGF5ZXI7fXRoaXMuX2N1cnJlbnRQbGFjZW1lbnRJbmRleC0tO310aGlzLl9kb25lPSEwO31jb21taXQodCl7cmV0dXJuIHRoaXMucGxhY2VtZW50LmNvbW1pdCh0KSx0aGlzLnBsYWNlbWVudH19Y29uc3Qgb2U9NTEyL2UuWC8yO2NsYXNzIHJle2NvbnN0cnVjdG9yKHQsaSxhKXt0aGlzLnRpbGVJRD10LHRoaXMuYnVja2V0SW5zdGFuY2VJZD1hLHRoaXMuX3N5bWJvbHNCeUtleT17fTtjb25zdCBzPW5ldyBNYXA7Zm9yKGxldCB0PTA7dDxpLmxlbmd0aDt0Kyspe2NvbnN0IGU9aS5nZXQodCksYT1lLmtleSxvPXMuZ2V0KGEpO28/by5wdXNoKGUpOnMuc2V0KGEsW2VdKTt9Zm9yKGNvbnN0W3QsaV1vZiBzKXtjb25zdCBhPXtwb3NpdGlvbnM6aS5tYXAoKHQ9Pih7eDpNYXRoLmZsb29yKHQuYW5jaG9yWCpvZSkseTpNYXRoLmZsb29yKHQuYW5jaG9yWSpvZSl9KSkpLGNyb3NzVGlsZUlEczppLm1hcCgodD0+dC5jcm9zc1RpbGVJRCkpfTtpZihhLnBvc2l0aW9ucy5sZW5ndGg+MTI4KXtjb25zdCB0PW5ldyBlLmF2KGEucG9zaXRpb25zLmxlbmd0aCwxNixVaW50MTZBcnJheSk7Zm9yKGNvbnN0e3g6ZSx5Oml9b2YgYS5wb3NpdGlvbnMpdC5hZGQoZSxpKTt0LmZpbmlzaCgpLGRlbGV0ZSBhLnBvc2l0aW9ucyxhLmluZGV4PXQ7fXRoaXMuX3N5bWJvbHNCeUtleVt0XT1hO319Z2V0U2NhbGVkQ29vcmRpbmF0ZXModCxpKXtjb25zdHt4OmEseTpzLHo6b309dGhpcy50aWxlSUQuY2Fub25pY2FsLHt4OnIseTpuLHo6bH09aS5jYW5vbmljYWwsaD1vZS9NYXRoLnBvdygyLGwtbyksYz0obiplLlgrdC5hbmNob3JZKSpoLHU9cyplLlgqb2U7cmV0dXJuIHt4Ok1hdGguZmxvb3IoKHIqZS5YK3QuYW5jaG9yWCkqaC1hKmUuWCpvZSkseTpNYXRoLmZsb29yKGMtdSl9fWZpbmRNYXRjaGVzKHQsZSxpKXtjb25zdCBhPXRoaXMudGlsZUlELmNhbm9uaWNhbC56PGUuY2Fub25pY2FsLno/MTpNYXRoLnBvdygyLHRoaXMudGlsZUlELmNhbm9uaWNhbC56LWUuY2Fub25pY2FsLnopO2ZvcihsZXQgcz0wO3M8dC5sZW5ndGg7cysrKXtjb25zdCBvPXQuZ2V0KHMpO2lmKG8uY3Jvc3NUaWxlSUQpY29udGludWU7Y29uc3Qgcj10aGlzLl9zeW1ib2xzQnlLZXlbby5rZXldO2lmKCFyKWNvbnRpbnVlO2NvbnN0IG49dGhpcy5nZXRTY2FsZWRDb29yZGluYXRlcyhvLGUpO2lmKHIuaW5kZXgpe2NvbnN0IHQ9ci5pbmRleC5yYW5nZShuLngtYSxuLnktYSxuLngrYSxuLnkrYSkuc29ydCgpO2Zvcihjb25zdCBlIG9mIHQpe2NvbnN0IHQ9ci5jcm9zc1RpbGVJRHNbZV07aWYoIWlbdF0pe2lbdF09ITAsby5jcm9zc1RpbGVJRD10O2JyZWFrfX19ZWxzZSBpZihyLnBvc2l0aW9ucylmb3IobGV0IHQ9MDt0PHIucG9zaXRpb25zLmxlbmd0aDt0Kyspe2NvbnN0IGU9ci5wb3NpdGlvbnNbdF0scz1yLmNyb3NzVGlsZUlEc1t0XTtpZihNYXRoLmFicyhlLngtbi54KTw9YSYmTWF0aC5hYnMoZS55LW4ueSk8PWEmJiFpW3NdKXtpW3NdPSEwLG8uY3Jvc3NUaWxlSUQ9czticmVha319fX1nZXRDcm9zc1RpbGVJRHNMaXN0cygpe3JldHVybiBPYmplY3QudmFsdWVzKHRoaXMuX3N5bWJvbHNCeUtleSkubWFwKCgoe2Nyb3NzVGlsZUlEczp0fSk9PnQpKX19Y2xhc3MgbmV7Y29uc3RydWN0b3IoKXt0aGlzLm1heENyb3NzVGlsZUlEPTA7fWdlbmVyYXRlKCl7cmV0dXJuICsrdGhpcy5tYXhDcm9zc1RpbGVJRH19Y2xhc3MgbGV7Y29uc3RydWN0b3IoKXt0aGlzLmluZGV4ZXM9e30sdGhpcy51c2VkQ3Jvc3NUaWxlSURzPXt9LHRoaXMubG5nPTA7fWhhbmRsZVdyYXBKdW1wKHQpe2NvbnN0IGU9TWF0aC5yb3VuZCgodC10aGlzLmxuZykvMzYwKTtpZigwIT09ZSlmb3IoY29uc3QgdCBpbiB0aGlzLmluZGV4ZXMpe2NvbnN0IGk9dGhpcy5pbmRleGVzW3RdLGE9e307Zm9yKGNvbnN0IHQgaW4gaSl7Y29uc3Qgcz1pW3RdO3MudGlsZUlEPXMudGlsZUlELnVud3JhcFRvKHMudGlsZUlELndyYXArZSksYVtzLnRpbGVJRC5rZXldPXM7fXRoaXMuaW5kZXhlc1t0XT1hO310aGlzLmxuZz10O31hZGRCdWNrZXQodCxlLGkpe2lmKHRoaXMuaW5kZXhlc1t0Lm92ZXJzY2FsZWRaXSYmdGhpcy5pbmRleGVzW3Qub3ZlcnNjYWxlZFpdW3Qua2V5XSl7aWYodGhpcy5pbmRleGVzW3Qub3ZlcnNjYWxlZFpdW3Qua2V5XS5idWNrZXRJbnN0YW5jZUlkPT09ZS5idWNrZXRJbnN0YW5jZUlkKXJldHVybiAhMTt0aGlzLnJlbW92ZUJ1Y2tldENyb3NzVGlsZUlEcyh0Lm92ZXJzY2FsZWRaLHRoaXMuaW5kZXhlc1t0Lm92ZXJzY2FsZWRaXVt0LmtleV0pO31mb3IobGV0IHQ9MDt0PGUuc3ltYm9sSW5zdGFuY2VzLmxlbmd0aDt0KyspZS5zeW1ib2xJbnN0YW5jZXMuZ2V0KHQpLmNyb3NzVGlsZUlEPTA7dGhpcy51c2VkQ3Jvc3NUaWxlSURzW3Qub3ZlcnNjYWxlZFpdfHwodGhpcy51c2VkQ3Jvc3NUaWxlSURzW3Qub3ZlcnNjYWxlZFpdPXt9KTtjb25zdCBhPXRoaXMudXNlZENyb3NzVGlsZUlEc1t0Lm92ZXJzY2FsZWRaXTtmb3IoY29uc3QgaSBpbiB0aGlzLmluZGV4ZXMpe2NvbnN0IHM9dGhpcy5pbmRleGVzW2ldO2lmKE51bWJlcihpKT50Lm92ZXJzY2FsZWRaKWZvcihjb25zdCBpIGluIHMpe2NvbnN0IG89c1tpXTtvLnRpbGVJRC5pc0NoaWxkT2YodCkmJm8uZmluZE1hdGNoZXMoZS5zeW1ib2xJbnN0YW5jZXMsdCxhKTt9ZWxzZSB7Y29uc3Qgbz1zW3Quc2NhbGVkVG8oTnVtYmVyKGkpKS5rZXldO28mJm8uZmluZE1hdGNoZXMoZS5zeW1ib2xJbnN0YW5jZXMsdCxhKTt9fWZvcihsZXQgdD0wO3Q8ZS5zeW1ib2xJbnN0YW5jZXMubGVuZ3RoO3QrKyl7Y29uc3Qgcz1lLnN5bWJvbEluc3RhbmNlcy5nZXQodCk7cy5jcm9zc1RpbGVJRHx8KHMuY3Jvc3NUaWxlSUQ9aS5nZW5lcmF0ZSgpLGFbcy5jcm9zc1RpbGVJRF09ITApO31yZXR1cm4gdm9pZCAwPT09dGhpcy5pbmRleGVzW3Qub3ZlcnNjYWxlZFpdJiYodGhpcy5pbmRleGVzW3Qub3ZlcnNjYWxlZFpdPXt9KSx0aGlzLmluZGV4ZXNbdC5vdmVyc2NhbGVkWl1bdC5rZXldPW5ldyByZSh0LGUuc3ltYm9sSW5zdGFuY2VzLGUuYnVja2V0SW5zdGFuY2VJZCksITB9cmVtb3ZlQnVja2V0Q3Jvc3NUaWxlSURzKHQsZSl7Zm9yKGNvbnN0IGkgb2YgZS5nZXRDcm9zc1RpbGVJRHNMaXN0cygpKWZvcihjb25zdCBlIG9mIGkpZGVsZXRlIHRoaXMudXNlZENyb3NzVGlsZUlEc1t0XVtlXTt9cmVtb3ZlU3RhbGVCdWNrZXRzKHQpe2xldCBlPSExO2Zvcihjb25zdCBpIGluIHRoaXMuaW5kZXhlcyl7Y29uc3QgYT10aGlzLmluZGV4ZXNbaV07Zm9yKGNvbnN0IHMgaW4gYSl0W2Fbc10uYnVja2V0SW5zdGFuY2VJZF18fCh0aGlzLnJlbW92ZUJ1Y2tldENyb3NzVGlsZUlEcyhpLGFbc10pLGRlbGV0ZSBhW3NdLGU9ITApO31yZXR1cm4gZX19Y2xhc3MgaGV7Y29uc3RydWN0b3IoKXt0aGlzLmxheWVySW5kZXhlcz17fSx0aGlzLmNyb3NzVGlsZUlEcz1uZXcgbmUsdGhpcy5tYXhCdWNrZXRJbnN0YW5jZUlkPTAsdGhpcy5idWNrZXRzSW5DdXJyZW50UGxhY2VtZW50PXt9O31hZGRMYXllcih0LGUsaSl7bGV0IGE9dGhpcy5sYXllckluZGV4ZXNbdC5pZF07dm9pZCAwPT09YSYmKGE9dGhpcy5sYXllckluZGV4ZXNbdC5pZF09bmV3IGxlKTtsZXQgcz0hMTtjb25zdCBvPXt9O2EuaGFuZGxlV3JhcEp1bXAoaSk7Zm9yKGNvbnN0IGkgb2YgZSl7Y29uc3QgZT1pLmdldEJ1Y2tldCh0KTtlJiZ0LmlkPT09ZS5sYXllcklkc1swXSYmKGUuYnVja2V0SW5zdGFuY2VJZHx8KGUuYnVja2V0SW5zdGFuY2VJZD0rK3RoaXMubWF4QnVja2V0SW5zdGFuY2VJZCksYS5hZGRCdWNrZXQoaS50aWxlSUQsZSx0aGlzLmNyb3NzVGlsZUlEcykmJihzPSEwKSxvW2UuYnVja2V0SW5zdGFuY2VJZF09ITApO31yZXR1cm4gYS5yZW1vdmVTdGFsZUJ1Y2tldHMobykmJihzPSEwKSxzfXBydW5lVW51c2VkTGF5ZXJzKHQpe2NvbnN0IGU9e307dC5mb3JFYWNoKCh0PT57ZVt0XT0hMDt9KSk7Zm9yKGNvbnN0IHQgaW4gdGhpcy5sYXllckluZGV4ZXMpZVt0XXx8ZGVsZXRlIHRoaXMubGF5ZXJJbmRleGVzW3RdO319Y29uc3QgY2U9KHQsaSk9PmUudCh0LGkmJmkuZmlsdGVyKCh0PT5cInNvdXJjZS5jYW52YXNcIiE9PXQuaWRlbnRpZmllcikpKSx1ZT1lLmF3KCk7Y2xhc3MgZGUgZXh0ZW5kcyBlLkV7Y29uc3RydWN0b3IodCxpPXt9KXtzdXBlcigpLHRoaXMuX3J0bFBsdWdpbkxvYWRlZD0oKT0+e2Zvcihjb25zdCB0IGluIHRoaXMuc291cmNlQ2FjaGVzKXtjb25zdCBlPXRoaXMuc291cmNlQ2FjaGVzW3RdLmdldFNvdXJjZSgpLnR5cGU7XCJ2ZWN0b3JcIiE9PWUmJlwiZ2VvanNvblwiIT09ZXx8dGhpcy5zb3VyY2VDYWNoZXNbdF0ucmVsb2FkKCk7fX0sdGhpcy5tYXA9dCx0aGlzLmRpc3BhdGNoZXI9bmV3IFUoTigpLHQuX2dldE1hcElkKCkpLHRoaXMuZGlzcGF0Y2hlci5yZWdpc3Rlck1lc3NhZ2VIYW5kbGVyKFwiR0dcIiwoKHQsZSk9PnRoaXMuZ2V0R2x5cGhzKHQsZSkpKSx0aGlzLmRpc3BhdGNoZXIucmVnaXN0ZXJNZXNzYWdlSGFuZGxlcihcIkdJXCIsKCh0LGUpPT50aGlzLmdldEltYWdlcyh0LGUpKSksdGhpcy5pbWFnZU1hbmFnZXI9bmV3IFQsdGhpcy5pbWFnZU1hbmFnZXIuc2V0RXZlbnRlZFBhcmVudCh0aGlzKSx0aGlzLmdseXBoTWFuYWdlcj1uZXcgQyh0Ll9yZXF1ZXN0TWFuYWdlcixpLmxvY2FsSWRlb2dyYXBoRm9udEZhbWlseSksdGhpcy5saW5lQXRsYXM9bmV3IFIoMjU2LDUxMiksdGhpcy5jcm9zc1RpbGVTeW1ib2xJbmRleD1uZXcgaGUsdGhpcy5fc3ByaXRlc0ltYWdlc0lkcz17fSx0aGlzLl9sYXllcnM9e30sdGhpcy5fb3JkZXI9W10sdGhpcy5zb3VyY2VDYWNoZXM9e30sdGhpcy56b29tSGlzdG9yeT1uZXcgZS5heCx0aGlzLl9sb2FkZWQ9ITEsdGhpcy5fYXZhaWxhYmxlSW1hZ2VzPVtdLHRoaXMuX3Jlc2V0VXBkYXRlcygpLHRoaXMuZGlzcGF0Y2hlci5icm9hZGNhc3QoXCJTUlwiLGUuYXkoKSksbnQoKS5vbihzdCx0aGlzLl9ydGxQbHVnaW5Mb2FkZWQpLHRoaXMub24oXCJkYXRhXCIsKHQ9PntpZihcInNvdXJjZVwiIT09dC5kYXRhVHlwZXx8XCJtZXRhZGF0YVwiIT09dC5zb3VyY2VEYXRhVHlwZSlyZXR1cm47Y29uc3QgZT10aGlzLnNvdXJjZUNhY2hlc1t0LnNvdXJjZUlkXTtpZighZSlyZXR1cm47Y29uc3QgaT1lLmdldFNvdXJjZSgpO2lmKGkmJmkudmVjdG9yTGF5ZXJJZHMpZm9yKGNvbnN0IHQgaW4gdGhpcy5fbGF5ZXJzKXtjb25zdCBlPXRoaXMuX2xheWVyc1t0XTtlLnNvdXJjZT09PWkuaWQmJnRoaXMuX3ZhbGlkYXRlTGF5ZXIoZSk7fX0pKTt9bG9hZFVSTCh0LGk9e30sYSl7dGhpcy5maXJlKG5ldyBlLmsoXCJkYXRhbG9hZGluZ1wiLHtkYXRhVHlwZTpcInN0eWxlXCJ9KSksaS52YWxpZGF0ZT1cImJvb2xlYW5cIiE9dHlwZW9mIGkudmFsaWRhdGV8fGkudmFsaWRhdGU7Y29uc3Qgcz10aGlzLm1hcC5fcmVxdWVzdE1hbmFnZXIudHJhbnNmb3JtUmVxdWVzdCh0LFwiU3R5bGVcIik7dGhpcy5fbG9hZFN0eWxlUmVxdWVzdD1uZXcgQWJvcnRDb250cm9sbGVyO2NvbnN0IG89dGhpcy5fbG9hZFN0eWxlUmVxdWVzdDtlLmgocyx0aGlzLl9sb2FkU3R5bGVSZXF1ZXN0KS50aGVuKCh0PT57dGhpcy5fbG9hZFN0eWxlUmVxdWVzdD1udWxsLHRoaXMuX2xvYWQodC5kYXRhLGksYSk7fSkpLmNhdGNoKCh0PT57dGhpcy5fbG9hZFN0eWxlUmVxdWVzdD1udWxsLHQmJiFvLnNpZ25hbC5hYm9ydGVkJiZ0aGlzLmZpcmUobmV3IGUuaih0KSk7fSkpO31sb2FkSlNPTih0LGk9e30sYSl7dGhpcy5maXJlKG5ldyBlLmsoXCJkYXRhbG9hZGluZ1wiLHtkYXRhVHlwZTpcInN0eWxlXCJ9KSksdGhpcy5fZnJhbWVSZXF1ZXN0PW5ldyBBYm9ydENvbnRyb2xsZXIsby5mcmFtZUFzeW5jKHRoaXMuX2ZyYW1lUmVxdWVzdCkudGhlbigoKCk9Pnt0aGlzLl9mcmFtZVJlcXVlc3Q9bnVsbCxpLnZhbGlkYXRlPSExIT09aS52YWxpZGF0ZSx0aGlzLl9sb2FkKHQsaSxhKTt9KSkuY2F0Y2goKCgpPT57fSkpO31sb2FkRW1wdHkoKXt0aGlzLmZpcmUobmV3IGUuayhcImRhdGFsb2FkaW5nXCIse2RhdGFUeXBlOlwic3R5bGVcIn0pKSx0aGlzLl9sb2FkKHVlLHt2YWxpZGF0ZTohMX0pO31fbG9hZCh0LGksYSl7dmFyIHM7Y29uc3Qgbz1pLnRyYW5zZm9ybVN0eWxlP2kudHJhbnNmb3JtU3R5bGUoYSx0KTp0O2lmKCFpLnZhbGlkYXRlfHwhY2UodGhpcyxlLnUobykpKXt0aGlzLl9sb2FkZWQ9ITAsdGhpcy5zdHlsZXNoZWV0PW87Zm9yKGNvbnN0IHQgaW4gby5zb3VyY2VzKXRoaXMuYWRkU291cmNlKHQsby5zb3VyY2VzW3RdLHt2YWxpZGF0ZTohMX0pO28uc3ByaXRlP3RoaXMuX2xvYWRTcHJpdGUoby5zcHJpdGUpOnRoaXMuaW1hZ2VNYW5hZ2VyLnNldExvYWRlZCghMCksdGhpcy5nbHlwaE1hbmFnZXIuc2V0VVJMKG8uZ2x5cGhzKSx0aGlzLl9jcmVhdGVMYXllcnMoKSx0aGlzLmxpZ2h0PW5ldyBEKHRoaXMuc3R5bGVzaGVldC5saWdodCksdGhpcy5za3k9bmV3IEEodGhpcy5zdHlsZXNoZWV0LnNreSksdGhpcy5tYXAuc2V0VGVycmFpbihudWxsIT09KHM9dGhpcy5zdHlsZXNoZWV0LnRlcnJhaW4pJiZ2b2lkIDAhPT1zP3M6bnVsbCksdGhpcy5maXJlKG5ldyBlLmsoXCJkYXRhXCIse2RhdGFUeXBlOlwic3R5bGVcIn0pKSx0aGlzLmZpcmUobmV3IGUuayhcInN0eWxlLmxvYWRcIikpO319X2NyZWF0ZUxheWVycygpe2NvbnN0IHQ9ZS5heih0aGlzLnN0eWxlc2hlZXQubGF5ZXJzKTt0aGlzLmRpc3BhdGNoZXIuYnJvYWRjYXN0KFwiU0xcIix0KSx0aGlzLl9vcmRlcj10Lm1hcCgodD0+dC5pZCkpLHRoaXMuX2xheWVycz17fSx0aGlzLl9zZXJpYWxpemVkTGF5ZXJzPW51bGw7Zm9yKGNvbnN0IGkgb2YgdCl7Y29uc3QgdD1lLmFBKGkpO3Quc2V0RXZlbnRlZFBhcmVudCh0aGlzLHtsYXllcjp7aWQ6aS5pZH19KSx0aGlzLl9sYXllcnNbaS5pZF09dDt9fV9sb2FkU3ByaXRlKHQsaT0hMSxhPXZvaWQgMCl7bGV0IHM7dGhpcy5pbWFnZU1hbmFnZXIuc2V0TG9hZGVkKCExKSx0aGlzLl9zcHJpdGVSZXF1ZXN0PW5ldyBBYm9ydENvbnRyb2xsZXIsZnVuY3Rpb24odCxpLGEscyl7cmV0dXJuIGUuXyh0aGlzLHZvaWQgMCx2b2lkIDAsKGZ1bmN0aW9uKigpe2NvbnN0IHI9eCh0KSxuPWE+MT9cIkAyeFwiOlwiXCIsbD17fSxoPXt9O2Zvcihjb25zdHtpZDp0LHVybDphfW9mIHIpe2NvbnN0IG89aS50cmFuc2Zvcm1SZXF1ZXN0KHkoYSxuLFwiLmpzb25cIiksXCJTcHJpdGVKU09OXCIpO2xbdF09ZS5oKG8scyk7Y29uc3Qgcj1pLnRyYW5zZm9ybVJlcXVlc3QoeShhLG4sXCIucG5nXCIpLFwiU3ByaXRlSW1hZ2VcIik7aFt0XT1fLmdldEltYWdlKHIscyk7fXJldHVybiB5aWVsZCBQcm9taXNlLmFsbChbLi4uT2JqZWN0LnZhbHVlcyhsKSwuLi5PYmplY3QudmFsdWVzKGgpXSksZnVuY3Rpb24odCxpKXtyZXR1cm4gZS5fKHRoaXMsdm9pZCAwLHZvaWQgMCwoZnVuY3Rpb24qKCl7Y29uc3QgZT17fTtmb3IoY29uc3QgYSBpbiB0KXtlW2FdPXt9O2NvbnN0IHM9by5nZXRJbWFnZUNhbnZhc0NvbnRleHQoKHlpZWxkIGlbYV0pLmRhdGEpLHI9KHlpZWxkIHRbYV0pLmRhdGE7Zm9yKGNvbnN0IHQgaW4gcil7Y29uc3R7d2lkdGg6aSxoZWlnaHQ6byx4Om4seTpsLHNkZjpoLHBpeGVsUmF0aW86YyxzdHJldGNoWDp1LHN0cmV0Y2hZOmQsY29udGVudDpfLHRleHRGaXRXaWR0aDpwLHRleHRGaXRIZWlnaHQ6bX09clt0XTtlW2FdW3RdPXtkYXRhOm51bGwscGl4ZWxSYXRpbzpjLHNkZjpoLHN0cmV0Y2hYOnUsc3RyZXRjaFk6ZCxjb250ZW50Ol8sdGV4dEZpdFdpZHRoOnAsdGV4dEZpdEhlaWdodDptLHNwcml0ZURhdGE6e3dpZHRoOmksaGVpZ2h0Om8seDpuLHk6bCxjb250ZXh0OnN9fTt9fXJldHVybiBlfSkpfShsLGgpfSkpfSh0LHRoaXMubWFwLl9yZXF1ZXN0TWFuYWdlcix0aGlzLm1hcC5nZXRQaXhlbFJhdGlvKCksdGhpcy5fc3ByaXRlUmVxdWVzdCkudGhlbigodD0+e2lmKHRoaXMuX3Nwcml0ZVJlcXVlc3Q9bnVsbCx0KWZvcihjb25zdCBlIGluIHQpe3RoaXMuX3Nwcml0ZXNJbWFnZXNJZHNbZV09W107Y29uc3QgYT10aGlzLl9zcHJpdGVzSW1hZ2VzSWRzW2VdP3RoaXMuX3Nwcml0ZXNJbWFnZXNJZHNbZV0uZmlsdGVyKChlPT4hKGUgaW4gdCkpKTpbXTtmb3IoY29uc3QgdCBvZiBhKXRoaXMuaW1hZ2VNYW5hZ2VyLnJlbW92ZUltYWdlKHQpLHRoaXMuX2NoYW5nZWRJbWFnZXNbdF09ITA7Zm9yKGNvbnN0IGEgaW4gdFtlXSl7Y29uc3Qgcz1cImRlZmF1bHRcIj09PWU/YTpgJHtlfToke2F9YDt0aGlzLl9zcHJpdGVzSW1hZ2VzSWRzW2VdLnB1c2gocykscyBpbiB0aGlzLmltYWdlTWFuYWdlci5pbWFnZXM/dGhpcy5pbWFnZU1hbmFnZXIudXBkYXRlSW1hZ2Uocyx0W2VdW2FdLCExKTp0aGlzLmltYWdlTWFuYWdlci5hZGRJbWFnZShzLHRbZV1bYV0pLGkmJih0aGlzLl9jaGFuZ2VkSW1hZ2VzW3NdPSEwKTt9fX0pKS5jYXRjaCgodD0+e3RoaXMuX3Nwcml0ZVJlcXVlc3Q9bnVsbCxzPXQsdGhpcy5maXJlKG5ldyBlLmoocykpO30pKS5maW5hbGx5KCgoKT0+e3RoaXMuaW1hZ2VNYW5hZ2VyLnNldExvYWRlZCghMCksdGhpcy5fYXZhaWxhYmxlSW1hZ2VzPXRoaXMuaW1hZ2VNYW5hZ2VyLmxpc3RJbWFnZXMoKSxpJiYodGhpcy5fY2hhbmdlZD0hMCksdGhpcy5kaXNwYXRjaGVyLmJyb2FkY2FzdChcIlNJXCIsdGhpcy5fYXZhaWxhYmxlSW1hZ2VzKSx0aGlzLmZpcmUobmV3IGUuayhcImRhdGFcIix7ZGF0YVR5cGU6XCJzdHlsZVwifSkpLGEmJmEocyk7fSkpO31fdW5sb2FkU3ByaXRlKCl7Zm9yKGNvbnN0IHQgb2YgT2JqZWN0LnZhbHVlcyh0aGlzLl9zcHJpdGVzSW1hZ2VzSWRzKS5mbGF0KCkpdGhpcy5pbWFnZU1hbmFnZXIucmVtb3ZlSW1hZ2UodCksdGhpcy5fY2hhbmdlZEltYWdlc1t0XT0hMDt0aGlzLl9zcHJpdGVzSW1hZ2VzSWRzPXt9LHRoaXMuX2F2YWlsYWJsZUltYWdlcz10aGlzLmltYWdlTWFuYWdlci5saXN0SW1hZ2VzKCksdGhpcy5fY2hhbmdlZD0hMCx0aGlzLmRpc3BhdGNoZXIuYnJvYWRjYXN0KFwiU0lcIix0aGlzLl9hdmFpbGFibGVJbWFnZXMpLHRoaXMuZmlyZShuZXcgZS5rKFwiZGF0YVwiLHtkYXRhVHlwZTpcInN0eWxlXCJ9KSk7fV92YWxpZGF0ZUxheWVyKHQpe2NvbnN0IGk9dGhpcy5zb3VyY2VDYWNoZXNbdC5zb3VyY2VdO2lmKCFpKXJldHVybjtjb25zdCBhPXQuc291cmNlTGF5ZXI7aWYoIWEpcmV0dXJuO2NvbnN0IHM9aS5nZXRTb3VyY2UoKTsoXCJnZW9qc29uXCI9PT1zLnR5cGV8fHMudmVjdG9yTGF5ZXJJZHMmJi0xPT09cy52ZWN0b3JMYXllcklkcy5pbmRleE9mKGEpKSYmdGhpcy5maXJlKG5ldyBlLmoobmV3IEVycm9yKGBTb3VyY2UgbGF5ZXIgXCIke2F9XCIgZG9lcyBub3QgZXhpc3Qgb24gc291cmNlIFwiJHtzLmlkfVwiIGFzIHNwZWNpZmllZCBieSBzdHlsZSBsYXllciBcIiR7dC5pZH1cIi5gKSkpO31sb2FkZWQoKXtpZighdGhpcy5fbG9hZGVkKXJldHVybiAhMTtpZihPYmplY3Qua2V5cyh0aGlzLl91cGRhdGVkU291cmNlcykubGVuZ3RoKXJldHVybiAhMTtmb3IoY29uc3QgdCBpbiB0aGlzLnNvdXJjZUNhY2hlcylpZighdGhpcy5zb3VyY2VDYWNoZXNbdF0ubG9hZGVkKCkpcmV0dXJuICExO3JldHVybiAhIXRoaXMuaW1hZ2VNYW5hZ2VyLmlzTG9hZGVkKCl9X3NlcmlhbGl6ZUJ5SWRzKHQsaT0hMSl7Y29uc3QgYT10aGlzLl9zZXJpYWxpemVkQWxsTGF5ZXJzKCk7aWYoIXR8fDA9PT10Lmxlbmd0aClyZXR1cm4gT2JqZWN0LnZhbHVlcyhpP2UuYUIoYSk6YSk7Y29uc3Qgcz1bXTtmb3IoY29uc3QgbyBvZiB0KWlmKGFbb10pe2NvbnN0IHQ9aT9lLmFCKGFbb10pOmFbb107cy5wdXNoKHQpO31yZXR1cm4gc31fc2VyaWFsaXplZEFsbExheWVycygpe2xldCB0PXRoaXMuX3NlcmlhbGl6ZWRMYXllcnM7aWYodClyZXR1cm4gdDt0PXRoaXMuX3NlcmlhbGl6ZWRMYXllcnM9e307Y29uc3QgZT1PYmplY3Qua2V5cyh0aGlzLl9sYXllcnMpO2Zvcihjb25zdCBpIG9mIGUpe2NvbnN0IGU9dGhpcy5fbGF5ZXJzW2ldO1wiY3VzdG9tXCIhPT1lLnR5cGUmJih0W2ldPWUuc2VyaWFsaXplKCkpO31yZXR1cm4gdH1oYXNUcmFuc2l0aW9ucygpe2lmKHRoaXMubGlnaHQmJnRoaXMubGlnaHQuaGFzVHJhbnNpdGlvbigpKXJldHVybiAhMDtpZih0aGlzLnNreSYmdGhpcy5za3kuaGFzVHJhbnNpdGlvbigpKXJldHVybiAhMDtmb3IoY29uc3QgdCBpbiB0aGlzLnNvdXJjZUNhY2hlcylpZih0aGlzLnNvdXJjZUNhY2hlc1t0XS5oYXNUcmFuc2l0aW9uKCkpcmV0dXJuICEwO2Zvcihjb25zdCB0IGluIHRoaXMuX2xheWVycylpZih0aGlzLl9sYXllcnNbdF0uaGFzVHJhbnNpdGlvbigpKXJldHVybiAhMDtyZXR1cm4gITF9X2NoZWNrTG9hZGVkKCl7aWYoIXRoaXMuX2xvYWRlZCl0aHJvdyBuZXcgRXJyb3IoXCJTdHlsZSBpcyBub3QgZG9uZSBsb2FkaW5nLlwiKX11cGRhdGUodCl7aWYoIXRoaXMuX2xvYWRlZClyZXR1cm47Y29uc3QgaT10aGlzLl9jaGFuZ2VkO2lmKGkpe2NvbnN0IGU9T2JqZWN0LmtleXModGhpcy5fdXBkYXRlZExheWVycyksaT1PYmplY3Qua2V5cyh0aGlzLl9yZW1vdmVkTGF5ZXJzKTsoZS5sZW5ndGh8fGkubGVuZ3RoKSYmdGhpcy5fdXBkYXRlV29ya2VyTGF5ZXJzKGUsaSk7Zm9yKGNvbnN0IHQgaW4gdGhpcy5fdXBkYXRlZFNvdXJjZXMpe2NvbnN0IGU9dGhpcy5fdXBkYXRlZFNvdXJjZXNbdF07aWYoXCJyZWxvYWRcIj09PWUpdGhpcy5fcmVsb2FkU291cmNlKHQpO2Vsc2Uge2lmKFwiY2xlYXJcIiE9PWUpdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGFjdGlvbiAke2V9YCk7dGhpcy5fY2xlYXJTb3VyY2UodCk7fX10aGlzLl91cGRhdGVUaWxlc0ZvckNoYW5nZWRJbWFnZXMoKSx0aGlzLl91cGRhdGVUaWxlc0ZvckNoYW5nZWRHbHlwaHMoKTtmb3IoY29uc3QgZSBpbiB0aGlzLl91cGRhdGVkUGFpbnRQcm9wcyl0aGlzLl9sYXllcnNbZV0udXBkYXRlVHJhbnNpdGlvbnModCk7dGhpcy5saWdodC51cGRhdGVUcmFuc2l0aW9ucyh0KSx0aGlzLnNreS51cGRhdGVUcmFuc2l0aW9ucyh0KSx0aGlzLl9yZXNldFVwZGF0ZXMoKTt9Y29uc3QgYT17fTtmb3IoY29uc3QgdCBpbiB0aGlzLnNvdXJjZUNhY2hlcyl7Y29uc3QgZT10aGlzLnNvdXJjZUNhY2hlc1t0XTthW3RdPWUudXNlZCxlLnVzZWQ9ITE7fWZvcihjb25zdCBlIG9mIHRoaXMuX29yZGVyKXtjb25zdCBpPXRoaXMuX2xheWVyc1tlXTtpLnJlY2FsY3VsYXRlKHQsdGhpcy5fYXZhaWxhYmxlSW1hZ2VzKSwhaS5pc0hpZGRlbih0Lnpvb20pJiZpLnNvdXJjZSYmKHRoaXMuc291cmNlQ2FjaGVzW2kuc291cmNlXS51c2VkPSEwKTt9Zm9yKGNvbnN0IHQgaW4gYSl7Y29uc3QgaT10aGlzLnNvdXJjZUNhY2hlc1t0XTshIWFbdF0hPSEhaS51c2VkJiZpLmZpcmUobmV3IGUuayhcImRhdGFcIix7c291cmNlRGF0YVR5cGU6XCJ2aXNpYmlsaXR5XCIsZGF0YVR5cGU6XCJzb3VyY2VcIixzb3VyY2VJZDp0fSkpO310aGlzLmxpZ2h0LnJlY2FsY3VsYXRlKHQpLHRoaXMuc2t5LnJlY2FsY3VsYXRlKHQpLHRoaXMuej10Lnpvb20saSYmdGhpcy5maXJlKG5ldyBlLmsoXCJkYXRhXCIse2RhdGFUeXBlOlwic3R5bGVcIn0pKTt9X3VwZGF0ZVRpbGVzRm9yQ2hhbmdlZEltYWdlcygpe2NvbnN0IHQ9T2JqZWN0LmtleXModGhpcy5fY2hhbmdlZEltYWdlcyk7aWYodC5sZW5ndGgpe2Zvcihjb25zdCBlIGluIHRoaXMuc291cmNlQ2FjaGVzKXRoaXMuc291cmNlQ2FjaGVzW2VdLnJlbG9hZFRpbGVzRm9yRGVwZW5kZW5jaWVzKFtcImljb25zXCIsXCJwYXR0ZXJuc1wiXSx0KTt0aGlzLl9jaGFuZ2VkSW1hZ2VzPXt9O319X3VwZGF0ZVRpbGVzRm9yQ2hhbmdlZEdseXBocygpe2lmKHRoaXMuX2dseXBoc0RpZENoYW5nZSl7Zm9yKGNvbnN0IHQgaW4gdGhpcy5zb3VyY2VDYWNoZXMpdGhpcy5zb3VyY2VDYWNoZXNbdF0ucmVsb2FkVGlsZXNGb3JEZXBlbmRlbmNpZXMoW1wiZ2x5cGhzXCJdLFtcIlwiXSk7dGhpcy5fZ2x5cGhzRGlkQ2hhbmdlPSExO319X3VwZGF0ZVdvcmtlckxheWVycyh0LGUpe3RoaXMuZGlzcGF0Y2hlci5icm9hZGNhc3QoXCJVTFwiLHtsYXllcnM6dGhpcy5fc2VyaWFsaXplQnlJZHModCwhMSkscmVtb3ZlZElkczplfSk7fV9yZXNldFVwZGF0ZXMoKXt0aGlzLl9jaGFuZ2VkPSExLHRoaXMuX3VwZGF0ZWRMYXllcnM9e30sdGhpcy5fcmVtb3ZlZExheWVycz17fSx0aGlzLl91cGRhdGVkU291cmNlcz17fSx0aGlzLl91cGRhdGVkUGFpbnRQcm9wcz17fSx0aGlzLl9jaGFuZ2VkSW1hZ2VzPXt9LHRoaXMuX2dseXBoc0RpZENoYW5nZT0hMTt9c2V0U3RhdGUodCxpPXt9KXt2YXIgYTt0aGlzLl9jaGVja0xvYWRlZCgpO2NvbnN0IHM9dGhpcy5zZXJpYWxpemUoKTtpZih0PWkudHJhbnNmb3JtU3R5bGU/aS50cmFuc2Zvcm1TdHlsZShzLHQpOnQsKG51bGw9PT0oYT1pLnZhbGlkYXRlKXx8dm9pZCAwPT09YXx8YSkmJmNlKHRoaXMsZS51KHQpKSlyZXR1cm4gITE7KHQ9ZS5hQih0KSkubGF5ZXJzPWUuYXoodC5sYXllcnMpO2NvbnN0IG89ZS5hQyhzLHQpLHI9dGhpcy5fZ2V0T3BlcmF0aW9uc1RvUGVyZm9ybShvKTtpZihyLnVuaW1wbGVtZW50ZWQubGVuZ3RoPjApdGhyb3cgbmV3IEVycm9yKGBVbmltcGxlbWVudGVkOiAke3IudW5pbXBsZW1lbnRlZC5qb2luKFwiLCBcIil9LmApO2lmKDA9PT1yLm9wZXJhdGlvbnMubGVuZ3RoKXJldHVybiAhMTtmb3IoY29uc3QgdCBvZiByLm9wZXJhdGlvbnMpdCgpO3JldHVybiB0aGlzLnN0eWxlc2hlZXQ9dCx0aGlzLl9zZXJpYWxpemVkTGF5ZXJzPW51bGwsITB9X2dldE9wZXJhdGlvbnNUb1BlcmZvcm0odCl7Y29uc3QgZT1bXSxpPVtdO2Zvcihjb25zdCBhIG9mIHQpc3dpdGNoKGEuY29tbWFuZCl7Y2FzZVwic2V0Q2VudGVyXCI6Y2FzZVwic2V0Wm9vbVwiOmNhc2VcInNldEJlYXJpbmdcIjpjYXNlXCJzZXRQaXRjaFwiOmNvbnRpbnVlO2Nhc2VcImFkZExheWVyXCI6ZS5wdXNoKCgoKT0+dGhpcy5hZGRMYXllci5hcHBseSh0aGlzLGEuYXJncykpKTticmVhaztjYXNlXCJyZW1vdmVMYXllclwiOmUucHVzaCgoKCk9PnRoaXMucmVtb3ZlTGF5ZXIuYXBwbHkodGhpcyxhLmFyZ3MpKSk7YnJlYWs7Y2FzZVwic2V0UGFpbnRQcm9wZXJ0eVwiOmUucHVzaCgoKCk9PnRoaXMuc2V0UGFpbnRQcm9wZXJ0eS5hcHBseSh0aGlzLGEuYXJncykpKTticmVhaztjYXNlXCJzZXRMYXlvdXRQcm9wZXJ0eVwiOmUucHVzaCgoKCk9PnRoaXMuc2V0TGF5b3V0UHJvcGVydHkuYXBwbHkodGhpcyxhLmFyZ3MpKSk7YnJlYWs7Y2FzZVwic2V0RmlsdGVyXCI6ZS5wdXNoKCgoKT0+dGhpcy5zZXRGaWx0ZXIuYXBwbHkodGhpcyxhLmFyZ3MpKSk7YnJlYWs7Y2FzZVwiYWRkU291cmNlXCI6ZS5wdXNoKCgoKT0+dGhpcy5hZGRTb3VyY2UuYXBwbHkodGhpcyxhLmFyZ3MpKSk7YnJlYWs7Y2FzZVwicmVtb3ZlU291cmNlXCI6ZS5wdXNoKCgoKT0+dGhpcy5yZW1vdmVTb3VyY2UuYXBwbHkodGhpcyxhLmFyZ3MpKSk7YnJlYWs7Y2FzZVwic2V0TGF5ZXJab29tUmFuZ2VcIjplLnB1c2goKCgpPT50aGlzLnNldExheWVyWm9vbVJhbmdlLmFwcGx5KHRoaXMsYS5hcmdzKSkpO2JyZWFrO2Nhc2VcInNldExpZ2h0XCI6ZS5wdXNoKCgoKT0+dGhpcy5zZXRMaWdodC5hcHBseSh0aGlzLGEuYXJncykpKTticmVhaztjYXNlXCJzZXRHZW9KU09OU291cmNlRGF0YVwiOmUucHVzaCgoKCk9PnRoaXMuc2V0R2VvSlNPTlNvdXJjZURhdGEuYXBwbHkodGhpcyxhLmFyZ3MpKSk7YnJlYWs7Y2FzZVwic2V0R2x5cGhzXCI6ZS5wdXNoKCgoKT0+dGhpcy5zZXRHbHlwaHMuYXBwbHkodGhpcyxhLmFyZ3MpKSk7YnJlYWs7Y2FzZVwic2V0U3ByaXRlXCI6ZS5wdXNoKCgoKT0+dGhpcy5zZXRTcHJpdGUuYXBwbHkodGhpcyxhLmFyZ3MpKSk7YnJlYWs7Y2FzZVwic2V0U2t5XCI6ZS5wdXNoKCgoKT0+dGhpcy5zZXRTa3kuYXBwbHkodGhpcyxhLmFyZ3MpKSk7YnJlYWs7Y2FzZVwic2V0VGVycmFpblwiOmUucHVzaCgoKCk9PnRoaXMubWFwLnNldFRlcnJhaW4uYXBwbHkodGhpcyxhLmFyZ3MpKSk7YnJlYWs7Y2FzZVwic2V0VHJhbnNpdGlvblwiOmUucHVzaCgoKCk9Pnt9KSk7YnJlYWs7ZGVmYXVsdDppLnB1c2goYS5jb21tYW5kKTt9cmV0dXJuIHtvcGVyYXRpb25zOmUsdW5pbXBsZW1lbnRlZDppfX1hZGRJbWFnZSh0LGkpe2lmKHRoaXMuZ2V0SW1hZ2UodCkpcmV0dXJuIHRoaXMuZmlyZShuZXcgZS5qKG5ldyBFcnJvcihgQW4gaW1hZ2UgbmFtZWQgXCIke3R9XCIgYWxyZWFkeSBleGlzdHMuYCkpKTt0aGlzLmltYWdlTWFuYWdlci5hZGRJbWFnZSh0LGkpLHRoaXMuX2FmdGVySW1hZ2VVcGRhdGVkKHQpO311cGRhdGVJbWFnZSh0LGUpe3RoaXMuaW1hZ2VNYW5hZ2VyLnVwZGF0ZUltYWdlKHQsZSk7fWdldEltYWdlKHQpe3JldHVybiB0aGlzLmltYWdlTWFuYWdlci5nZXRJbWFnZSh0KX1yZW1vdmVJbWFnZSh0KXtpZighdGhpcy5nZXRJbWFnZSh0KSlyZXR1cm4gdGhpcy5maXJlKG5ldyBlLmoobmV3IEVycm9yKGBBbiBpbWFnZSBuYW1lZCBcIiR7dH1cIiBkb2VzIG5vdCBleGlzdC5gKSkpO3RoaXMuaW1hZ2VNYW5hZ2VyLnJlbW92ZUltYWdlKHQpLHRoaXMuX2FmdGVySW1hZ2VVcGRhdGVkKHQpO31fYWZ0ZXJJbWFnZVVwZGF0ZWQodCl7dGhpcy5fYXZhaWxhYmxlSW1hZ2VzPXRoaXMuaW1hZ2VNYW5hZ2VyLmxpc3RJbWFnZXMoKSx0aGlzLl9jaGFuZ2VkSW1hZ2VzW3RdPSEwLHRoaXMuX2NoYW5nZWQ9ITAsdGhpcy5kaXNwYXRjaGVyLmJyb2FkY2FzdChcIlNJXCIsdGhpcy5fYXZhaWxhYmxlSW1hZ2VzKSx0aGlzLmZpcmUobmV3IGUuayhcImRhdGFcIix7ZGF0YVR5cGU6XCJzdHlsZVwifSkpO31saXN0SW1hZ2VzKCl7cmV0dXJuIHRoaXMuX2NoZWNrTG9hZGVkKCksdGhpcy5pbWFnZU1hbmFnZXIubGlzdEltYWdlcygpfWFkZFNvdXJjZSh0LGksYT17fSl7aWYodGhpcy5fY2hlY2tMb2FkZWQoKSx2b2lkIDAhPT10aGlzLnNvdXJjZUNhY2hlc1t0XSl0aHJvdyBuZXcgRXJyb3IoYFNvdXJjZSBcIiR7dH1cIiBhbHJlYWR5IGV4aXN0cy5gKTtpZighaS50eXBlKXRocm93IG5ldyBFcnJvcihgVGhlIHR5cGUgcHJvcGVydHkgbXVzdCBiZSBkZWZpbmVkLCBidXQgb25seSB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXMgd2VyZSBnaXZlbjogJHtPYmplY3Qua2V5cyhpKS5qb2luKFwiLCBcIil9LmApO2lmKFtcInZlY3RvclwiLFwicmFzdGVyXCIsXCJnZW9qc29uXCIsXCJ2aWRlb1wiLFwiaW1hZ2VcIl0uaW5kZXhPZihpLnR5cGUpPj0wJiZ0aGlzLl92YWxpZGF0ZShlLnUuc291cmNlLGBzb3VyY2VzLiR7dH1gLGksbnVsbCxhKSlyZXR1cm47dGhpcy5tYXAmJnRoaXMubWFwLl9jb2xsZWN0UmVzb3VyY2VUaW1pbmcmJihpLmNvbGxlY3RSZXNvdXJjZVRpbWluZz0hMCk7Y29uc3Qgcz10aGlzLnNvdXJjZUNhY2hlc1t0XT1uZXcgdXQodCxpLHRoaXMuZGlzcGF0Y2hlcik7cy5zdHlsZT10aGlzLHMuc2V0RXZlbnRlZFBhcmVudCh0aGlzLCgoKT0+KHtpc1NvdXJjZUxvYWRlZDpzLmxvYWRlZCgpLHNvdXJjZTpzLnNlcmlhbGl6ZSgpLHNvdXJjZUlkOnR9KSkpLHMub25BZGQodGhpcy5tYXApLHRoaXMuX2NoYW5nZWQ9ITA7fXJlbW92ZVNvdXJjZSh0KXtpZih0aGlzLl9jaGVja0xvYWRlZCgpLHZvaWQgMD09PXRoaXMuc291cmNlQ2FjaGVzW3RdKXRocm93IG5ldyBFcnJvcihcIlRoZXJlIGlzIG5vIHNvdXJjZSB3aXRoIHRoaXMgSURcIik7Zm9yKGNvbnN0IGkgaW4gdGhpcy5fbGF5ZXJzKWlmKHRoaXMuX2xheWVyc1tpXS5zb3VyY2U9PT10KXJldHVybiB0aGlzLmZpcmUobmV3IGUuaihuZXcgRXJyb3IoYFNvdXJjZSBcIiR7dH1cIiBjYW5ub3QgYmUgcmVtb3ZlZCB3aGlsZSBsYXllciBcIiR7aX1cIiBpcyB1c2luZyBpdC5gKSkpO2NvbnN0IGk9dGhpcy5zb3VyY2VDYWNoZXNbdF07ZGVsZXRlIHRoaXMuc291cmNlQ2FjaGVzW3RdLGRlbGV0ZSB0aGlzLl91cGRhdGVkU291cmNlc1t0XSxpLmZpcmUobmV3IGUuayhcImRhdGFcIix7c291cmNlRGF0YVR5cGU6XCJtZXRhZGF0YVwiLGRhdGFUeXBlOlwic291cmNlXCIsc291cmNlSWQ6dH0pKSxpLnNldEV2ZW50ZWRQYXJlbnQobnVsbCksaS5vblJlbW92ZSh0aGlzLm1hcCksdGhpcy5fY2hhbmdlZD0hMDt9c2V0R2VvSlNPTlNvdXJjZURhdGEodCxlKXtpZih0aGlzLl9jaGVja0xvYWRlZCgpLHZvaWQgMD09PXRoaXMuc291cmNlQ2FjaGVzW3RdKXRocm93IG5ldyBFcnJvcihgVGhlcmUgaXMgbm8gc291cmNlIHdpdGggdGhpcyBJRD0ke3R9YCk7Y29uc3QgaT10aGlzLnNvdXJjZUNhY2hlc1t0XS5nZXRTb3VyY2UoKTtpZihcImdlb2pzb25cIiE9PWkudHlwZSl0aHJvdyBuZXcgRXJyb3IoYGdlb2pzb25Tb3VyY2UudHlwZSBpcyAke2kudHlwZX0sIHdoaWNoIGlzICE9PSAnZ2VvanNvbmApO2kuc2V0RGF0YShlKSx0aGlzLl9jaGFuZ2VkPSEwO31nZXRTb3VyY2UodCl7cmV0dXJuIHRoaXMuc291cmNlQ2FjaGVzW3RdJiZ0aGlzLnNvdXJjZUNhY2hlc1t0XS5nZXRTb3VyY2UoKX1hZGRMYXllcih0LGksYT17fSl7dGhpcy5fY2hlY2tMb2FkZWQoKTtjb25zdCBzPXQuaWQ7aWYodGhpcy5nZXRMYXllcihzKSlyZXR1cm4gdm9pZCB0aGlzLmZpcmUobmV3IGUuaihuZXcgRXJyb3IoYExheWVyIFwiJHtzfVwiIGFscmVhZHkgZXhpc3RzIG9uIHRoaXMgbWFwLmApKSk7bGV0IG87aWYoXCJjdXN0b21cIj09PXQudHlwZSl7aWYoY2UodGhpcyxlLmFEKHQpKSlyZXR1cm47bz1lLmFBKHQpO31lbHNlIHtpZihcInNvdXJjZVwiaW4gdCYmXCJvYmplY3RcIj09dHlwZW9mIHQuc291cmNlJiYodGhpcy5hZGRTb3VyY2Uocyx0LnNvdXJjZSksdD1lLmFCKHQpLHQ9ZS5lKHQse3NvdXJjZTpzfSkpLHRoaXMuX3ZhbGlkYXRlKGUudS5sYXllcixgbGF5ZXJzLiR7c31gLHQse2FycmF5SW5kZXg6LTF9LGEpKXJldHVybjtvPWUuYUEodCksdGhpcy5fdmFsaWRhdGVMYXllcihvKSxvLnNldEV2ZW50ZWRQYXJlbnQodGhpcyx7bGF5ZXI6e2lkOnN9fSk7fWNvbnN0IHI9aT90aGlzLl9vcmRlci5pbmRleE9mKGkpOnRoaXMuX29yZGVyLmxlbmd0aDtpZihpJiYtMT09PXIpdGhpcy5maXJlKG5ldyBlLmoobmV3IEVycm9yKGBDYW5ub3QgYWRkIGxheWVyIFwiJHtzfVwiIGJlZm9yZSBub24tZXhpc3RpbmcgbGF5ZXIgXCIke2l9XCIuYCkpKTtlbHNlIHtpZih0aGlzLl9vcmRlci5zcGxpY2UociwwLHMpLHRoaXMuX2xheWVyT3JkZXJDaGFuZ2VkPSEwLHRoaXMuX2xheWVyc1tzXT1vLHRoaXMuX3JlbW92ZWRMYXllcnNbc10mJm8uc291cmNlJiZcImN1c3RvbVwiIT09by50eXBlKXtjb25zdCB0PXRoaXMuX3JlbW92ZWRMYXllcnNbc107ZGVsZXRlIHRoaXMuX3JlbW92ZWRMYXllcnNbc10sdC50eXBlIT09by50eXBlP3RoaXMuX3VwZGF0ZWRTb3VyY2VzW28uc291cmNlXT1cImNsZWFyXCI6KHRoaXMuX3VwZGF0ZWRTb3VyY2VzW28uc291cmNlXT1cInJlbG9hZFwiLHRoaXMuc291cmNlQ2FjaGVzW28uc291cmNlXS5wYXVzZSgpKTt9dGhpcy5fdXBkYXRlTGF5ZXIobyksby5vbkFkZCYmby5vbkFkZCh0aGlzLm1hcCk7fX1tb3ZlTGF5ZXIodCxpKXtpZih0aGlzLl9jaGVja0xvYWRlZCgpLHRoaXMuX2NoYW5nZWQ9ITAsIXRoaXMuX2xheWVyc1t0XSlyZXR1cm4gdm9pZCB0aGlzLmZpcmUobmV3IGUuaihuZXcgRXJyb3IoYFRoZSBsYXllciAnJHt0fScgZG9lcyBub3QgZXhpc3QgaW4gdGhlIG1hcCdzIHN0eWxlIGFuZCBjYW5ub3QgYmUgbW92ZWQuYCkpKTtpZih0PT09aSlyZXR1cm47Y29uc3QgYT10aGlzLl9vcmRlci5pbmRleE9mKHQpO3RoaXMuX29yZGVyLnNwbGljZShhLDEpO2NvbnN0IHM9aT90aGlzLl9vcmRlci5pbmRleE9mKGkpOnRoaXMuX29yZGVyLmxlbmd0aDtpJiYtMT09PXM/dGhpcy5maXJlKG5ldyBlLmoobmV3IEVycm9yKGBDYW5ub3QgbW92ZSBsYXllciBcIiR7dH1cIiBiZWZvcmUgbm9uLWV4aXN0aW5nIGxheWVyIFwiJHtpfVwiLmApKSk6KHRoaXMuX29yZGVyLnNwbGljZShzLDAsdCksdGhpcy5fbGF5ZXJPcmRlckNoYW5nZWQ9ITApO31yZW1vdmVMYXllcih0KXt0aGlzLl9jaGVja0xvYWRlZCgpO2NvbnN0IGk9dGhpcy5fbGF5ZXJzW3RdO2lmKCFpKXJldHVybiB2b2lkIHRoaXMuZmlyZShuZXcgZS5qKG5ldyBFcnJvcihgQ2Fubm90IHJlbW92ZSBub24tZXhpc3RpbmcgbGF5ZXIgXCIke3R9XCIuYCkpKTtpLnNldEV2ZW50ZWRQYXJlbnQobnVsbCk7Y29uc3QgYT10aGlzLl9vcmRlci5pbmRleE9mKHQpO3RoaXMuX29yZGVyLnNwbGljZShhLDEpLHRoaXMuX2xheWVyT3JkZXJDaGFuZ2VkPSEwLHRoaXMuX2NoYW5nZWQ9ITAsdGhpcy5fcmVtb3ZlZExheWVyc1t0XT1pLGRlbGV0ZSB0aGlzLl9sYXllcnNbdF0sdGhpcy5fc2VyaWFsaXplZExheWVycyYmZGVsZXRlIHRoaXMuX3NlcmlhbGl6ZWRMYXllcnNbdF0sZGVsZXRlIHRoaXMuX3VwZGF0ZWRMYXllcnNbdF0sZGVsZXRlIHRoaXMuX3VwZGF0ZWRQYWludFByb3BzW3RdLGkub25SZW1vdmUmJmkub25SZW1vdmUodGhpcy5tYXApO31nZXRMYXllcih0KXtyZXR1cm4gdGhpcy5fbGF5ZXJzW3RdfWdldExheWVyc09yZGVyKCl7cmV0dXJuIFsuLi50aGlzLl9vcmRlcl19aGFzTGF5ZXIodCl7cmV0dXJuIHQgaW4gdGhpcy5fbGF5ZXJzfXNldExheWVyWm9vbVJhbmdlKHQsaSxhKXt0aGlzLl9jaGVja0xvYWRlZCgpO2NvbnN0IHM9dGhpcy5nZXRMYXllcih0KTtzP3MubWluem9vbT09PWkmJnMubWF4em9vbT09PWF8fChudWxsIT1pJiYocy5taW56b29tPWkpLG51bGwhPWEmJihzLm1heHpvb209YSksdGhpcy5fdXBkYXRlTGF5ZXIocykpOnRoaXMuZmlyZShuZXcgZS5qKG5ldyBFcnJvcihgQ2Fubm90IHNldCB0aGUgem9vbSByYW5nZSBvZiBub24tZXhpc3RpbmcgbGF5ZXIgXCIke3R9XCIuYCkpKTt9c2V0RmlsdGVyKHQsaSxhPXt9KXt0aGlzLl9jaGVja0xvYWRlZCgpO2NvbnN0IHM9dGhpcy5nZXRMYXllcih0KTtpZihzKXtpZighZS5hRShzLmZpbHRlcixpKSlyZXR1cm4gbnVsbD09aT8ocy5maWx0ZXI9dm9pZCAwLHZvaWQgdGhpcy5fdXBkYXRlTGF5ZXIocykpOnZvaWQodGhpcy5fdmFsaWRhdGUoZS51LmZpbHRlcixgbGF5ZXJzLiR7cy5pZH0uZmlsdGVyYCxpLG51bGwsYSl8fChzLmZpbHRlcj1lLmFCKGkpLHRoaXMuX3VwZGF0ZUxheWVyKHMpKSl9ZWxzZSB0aGlzLmZpcmUobmV3IGUuaihuZXcgRXJyb3IoYENhbm5vdCBmaWx0ZXIgbm9uLWV4aXN0aW5nIGxheWVyIFwiJHt0fVwiLmApKSk7fWdldEZpbHRlcih0KXtyZXR1cm4gZS5hQih0aGlzLmdldExheWVyKHQpLmZpbHRlcil9c2V0TGF5b3V0UHJvcGVydHkodCxpLGEscz17fSl7dGhpcy5fY2hlY2tMb2FkZWQoKTtjb25zdCBvPXRoaXMuZ2V0TGF5ZXIodCk7bz9lLmFFKG8uZ2V0TGF5b3V0UHJvcGVydHkoaSksYSl8fChvLnNldExheW91dFByb3BlcnR5KGksYSxzKSx0aGlzLl91cGRhdGVMYXllcihvKSk6dGhpcy5maXJlKG5ldyBlLmoobmV3IEVycm9yKGBDYW5ub3Qgc3R5bGUgbm9uLWV4aXN0aW5nIGxheWVyIFwiJHt0fVwiLmApKSk7fWdldExheW91dFByb3BlcnR5KHQsaSl7Y29uc3QgYT10aGlzLmdldExheWVyKHQpO2lmKGEpcmV0dXJuIGEuZ2V0TGF5b3V0UHJvcGVydHkoaSk7dGhpcy5maXJlKG5ldyBlLmoobmV3IEVycm9yKGBDYW5ub3QgZ2V0IHN0eWxlIG9mIG5vbi1leGlzdGluZyBsYXllciBcIiR7dH1cIi5gKSkpO31zZXRQYWludFByb3BlcnR5KHQsaSxhLHM9e30pe3RoaXMuX2NoZWNrTG9hZGVkKCk7Y29uc3Qgbz10aGlzLmdldExheWVyKHQpO28/ZS5hRShvLmdldFBhaW50UHJvcGVydHkoaSksYSl8fChvLnNldFBhaW50UHJvcGVydHkoaSxhLHMpJiZ0aGlzLl91cGRhdGVMYXllcihvKSx0aGlzLl9jaGFuZ2VkPSEwLHRoaXMuX3VwZGF0ZWRQYWludFByb3BzW3RdPSEwLHRoaXMuX3NlcmlhbGl6ZWRMYXllcnM9bnVsbCk6dGhpcy5maXJlKG5ldyBlLmoobmV3IEVycm9yKGBDYW5ub3Qgc3R5bGUgbm9uLWV4aXN0aW5nIGxheWVyIFwiJHt0fVwiLmApKSk7fWdldFBhaW50UHJvcGVydHkodCxlKXtyZXR1cm4gdGhpcy5nZXRMYXllcih0KS5nZXRQYWludFByb3BlcnR5KGUpfXNldEZlYXR1cmVTdGF0ZSh0LGkpe3RoaXMuX2NoZWNrTG9hZGVkKCk7Y29uc3QgYT10LnNvdXJjZSxzPXQuc291cmNlTGF5ZXIsbz10aGlzLnNvdXJjZUNhY2hlc1thXTtpZih2b2lkIDA9PT1vKXJldHVybiB2b2lkIHRoaXMuZmlyZShuZXcgZS5qKG5ldyBFcnJvcihgVGhlIHNvdXJjZSAnJHthfScgZG9lcyBub3QgZXhpc3QgaW4gdGhlIG1hcCdzIHN0eWxlLmApKSk7Y29uc3Qgcj1vLmdldFNvdXJjZSgpLnR5cGU7XCJnZW9qc29uXCI9PT1yJiZzP3RoaXMuZmlyZShuZXcgZS5qKG5ldyBFcnJvcihcIkdlb0pTT04gc291cmNlcyBjYW5ub3QgaGF2ZSBhIHNvdXJjZUxheWVyIHBhcmFtZXRlci5cIikpKTpcInZlY3RvclwiIT09cnx8cz8odm9pZCAwPT09dC5pZCYmdGhpcy5maXJlKG5ldyBlLmoobmV3IEVycm9yKFwiVGhlIGZlYXR1cmUgaWQgcGFyYW1ldGVyIG11c3QgYmUgcHJvdmlkZWQuXCIpKSksby5zZXRGZWF0dXJlU3RhdGUocyx0LmlkLGkpKTp0aGlzLmZpcmUobmV3IGUuaihuZXcgRXJyb3IoXCJUaGUgc291cmNlTGF5ZXIgcGFyYW1ldGVyIG11c3QgYmUgcHJvdmlkZWQgZm9yIHZlY3RvciBzb3VyY2UgdHlwZXMuXCIpKSk7fXJlbW92ZUZlYXR1cmVTdGF0ZSh0LGkpe3RoaXMuX2NoZWNrTG9hZGVkKCk7Y29uc3QgYT10LnNvdXJjZSxzPXRoaXMuc291cmNlQ2FjaGVzW2FdO2lmKHZvaWQgMD09PXMpcmV0dXJuIHZvaWQgdGhpcy5maXJlKG5ldyBlLmoobmV3IEVycm9yKGBUaGUgc291cmNlICcke2F9JyBkb2VzIG5vdCBleGlzdCBpbiB0aGUgbWFwJ3Mgc3R5bGUuYCkpKTtjb25zdCBvPXMuZ2V0U291cmNlKCkudHlwZSxyPVwidmVjdG9yXCI9PT1vP3Quc291cmNlTGF5ZXI6dm9pZCAwO1widmVjdG9yXCIhPT1vfHxyP2kmJlwic3RyaW5nXCIhPXR5cGVvZiB0LmlkJiZcIm51bWJlclwiIT10eXBlb2YgdC5pZD90aGlzLmZpcmUobmV3IGUuaihuZXcgRXJyb3IoXCJBIGZlYXR1cmUgaWQgaXMgcmVxdWlyZWQgdG8gcmVtb3ZlIGl0cyBzcGVjaWZpYyBzdGF0ZSBwcm9wZXJ0eS5cIikpKTpzLnJlbW92ZUZlYXR1cmVTdGF0ZShyLHQuaWQsaSk6dGhpcy5maXJlKG5ldyBlLmoobmV3IEVycm9yKFwiVGhlIHNvdXJjZUxheWVyIHBhcmFtZXRlciBtdXN0IGJlIHByb3ZpZGVkIGZvciB2ZWN0b3Igc291cmNlIHR5cGVzLlwiKSkpO31nZXRGZWF0dXJlU3RhdGUodCl7dGhpcy5fY2hlY2tMb2FkZWQoKTtjb25zdCBpPXQuc291cmNlLGE9dC5zb3VyY2VMYXllcixzPXRoaXMuc291cmNlQ2FjaGVzW2ldO2lmKHZvaWQgMCE9PXMpcmV0dXJuIFwidmVjdG9yXCIhPT1zLmdldFNvdXJjZSgpLnR5cGV8fGE/KHZvaWQgMD09PXQuaWQmJnRoaXMuZmlyZShuZXcgZS5qKG5ldyBFcnJvcihcIlRoZSBmZWF0dXJlIGlkIHBhcmFtZXRlciBtdXN0IGJlIHByb3ZpZGVkLlwiKSkpLHMuZ2V0RmVhdHVyZVN0YXRlKGEsdC5pZCkpOnZvaWQgdGhpcy5maXJlKG5ldyBlLmoobmV3IEVycm9yKFwiVGhlIHNvdXJjZUxheWVyIHBhcmFtZXRlciBtdXN0IGJlIHByb3ZpZGVkIGZvciB2ZWN0b3Igc291cmNlIHR5cGVzLlwiKSkpO3RoaXMuZmlyZShuZXcgZS5qKG5ldyBFcnJvcihgVGhlIHNvdXJjZSAnJHtpfScgZG9lcyBub3QgZXhpc3QgaW4gdGhlIG1hcCdzIHN0eWxlLmApKSk7fWdldFRyYW5zaXRpb24oKXtyZXR1cm4gZS5lKHtkdXJhdGlvbjozMDAsZGVsYXk6MH0sdGhpcy5zdHlsZXNoZWV0JiZ0aGlzLnN0eWxlc2hlZXQudHJhbnNpdGlvbil9c2VyaWFsaXplKCl7aWYoIXRoaXMuX2xvYWRlZClyZXR1cm47Y29uc3QgdD1lLmFGKHRoaXMuc291cmNlQ2FjaGVzLCh0PT50LnNlcmlhbGl6ZSgpKSksaT10aGlzLl9zZXJpYWxpemVCeUlkcyh0aGlzLl9vcmRlciwhMCksYT10aGlzLm1hcC5nZXRUZXJyYWluKCl8fHZvaWQgMCxzPXRoaXMuc3R5bGVzaGVldDtyZXR1cm4gZS5hRyh7dmVyc2lvbjpzLnZlcnNpb24sbmFtZTpzLm5hbWUsbWV0YWRhdGE6cy5tZXRhZGF0YSxsaWdodDpzLmxpZ2h0LHNreTpzLnNreSxjZW50ZXI6cy5jZW50ZXIsem9vbTpzLnpvb20sYmVhcmluZzpzLmJlYXJpbmcscGl0Y2g6cy5waXRjaCxzcHJpdGU6cy5zcHJpdGUsZ2x5cGhzOnMuZ2x5cGhzLHRyYW5zaXRpb246cy50cmFuc2l0aW9uLHNvdXJjZXM6dCxsYXllcnM6aSx0ZXJyYWluOmF9LCh0PT52b2lkIDAhPT10KSl9X3VwZGF0ZUxheWVyKHQpe3RoaXMuX3VwZGF0ZWRMYXllcnNbdC5pZF09ITAsdC5zb3VyY2UmJiF0aGlzLl91cGRhdGVkU291cmNlc1t0LnNvdXJjZV0mJlwicmFzdGVyXCIhPT10aGlzLnNvdXJjZUNhY2hlc1t0LnNvdXJjZV0uZ2V0U291cmNlKCkudHlwZSYmKHRoaXMuX3VwZGF0ZWRTb3VyY2VzW3Quc291cmNlXT1cInJlbG9hZFwiLHRoaXMuc291cmNlQ2FjaGVzW3Quc291cmNlXS5wYXVzZSgpKSx0aGlzLl9zZXJpYWxpemVkTGF5ZXJzPW51bGwsdGhpcy5fY2hhbmdlZD0hMDt9X2ZsYXR0ZW5BbmRTb3J0UmVuZGVyZWRGZWF0dXJlcyh0KXtjb25zdCBlPXQ9PlwiZmlsbC1leHRydXNpb25cIj09PXRoaXMuX2xheWVyc1t0XS50eXBlLGk9e30sYT1bXTtmb3IobGV0IHM9dGhpcy5fb3JkZXIubGVuZ3RoLTE7cz49MDtzLS0pe2NvbnN0IG89dGhpcy5fb3JkZXJbc107aWYoZShvKSl7aVtvXT1zO2Zvcihjb25zdCBlIG9mIHQpe2NvbnN0IHQ9ZVtvXTtpZih0KWZvcihjb25zdCBlIG9mIHQpYS5wdXNoKGUpO319fWEuc29ydCgoKHQsZSk9PmUuaW50ZXJzZWN0aW9uWi10LmludGVyc2VjdGlvblopKTtjb25zdCBzPVtdO2ZvcihsZXQgbz10aGlzLl9vcmRlci5sZW5ndGgtMTtvPj0wO28tLSl7Y29uc3Qgcj10aGlzLl9vcmRlcltvXTtpZihlKHIpKWZvcihsZXQgdD1hLmxlbmd0aC0xO3Q+PTA7dC0tKXtjb25zdCBlPWFbdF0uZmVhdHVyZTtpZihpW2UubGF5ZXIuaWRdPG8pYnJlYWs7cy5wdXNoKGUpLGEucG9wKCk7fWVsc2UgZm9yKGNvbnN0IGUgb2YgdCl7Y29uc3QgdD1lW3JdO2lmKHQpZm9yKGNvbnN0IGUgb2YgdClzLnB1c2goZS5mZWF0dXJlKTt9fXJldHVybiBzfXF1ZXJ5UmVuZGVyZWRGZWF0dXJlcyh0LGksYSl7aSYmaS5maWx0ZXImJnRoaXMuX3ZhbGlkYXRlKGUudS5maWx0ZXIsXCJxdWVyeVJlbmRlcmVkRmVhdHVyZXMuZmlsdGVyXCIsaS5maWx0ZXIsbnVsbCxpKTtjb25zdCBzPXt9O2lmKGkmJmkubGF5ZXJzKXtpZighQXJyYXkuaXNBcnJheShpLmxheWVycykpcmV0dXJuIHRoaXMuZmlyZShuZXcgZS5qKG5ldyBFcnJvcihcInBhcmFtZXRlcnMubGF5ZXJzIG11c3QgYmUgYW4gQXJyYXkuXCIpKSksW107Zm9yKGNvbnN0IHQgb2YgaS5sYXllcnMpe2NvbnN0IGk9dGhpcy5fbGF5ZXJzW3RdO2lmKCFpKXJldHVybiB0aGlzLmZpcmUobmV3IGUuaihuZXcgRXJyb3IoYFRoZSBsYXllciAnJHt0fScgZG9lcyBub3QgZXhpc3QgaW4gdGhlIG1hcCdzIHN0eWxlIGFuZCBjYW5ub3QgYmUgcXVlcmllZCBmb3IgZmVhdHVyZXMuYCkpKSxbXTtzW2kuc291cmNlXT0hMDt9fWNvbnN0IG89W107aS5hdmFpbGFibGVJbWFnZXM9dGhpcy5fYXZhaWxhYmxlSW1hZ2VzO2NvbnN0IHI9dGhpcy5fc2VyaWFsaXplZEFsbExheWVycygpO2Zvcihjb25zdCBlIGluIHRoaXMuc291cmNlQ2FjaGVzKWkubGF5ZXJzJiYhc1tlXXx8by5wdXNoKHEodGhpcy5zb3VyY2VDYWNoZXNbZV0sdGhpcy5fbGF5ZXJzLHIsdCxpLGEpKTtyZXR1cm4gdGhpcy5wbGFjZW1lbnQmJm8ucHVzaChmdW5jdGlvbih0LGUsaSxhLHMsbyxyKXtjb25zdCBuPXt9LGw9by5xdWVyeVJlbmRlcmVkU3ltYm9scyhhKSxoPVtdO2Zvcihjb25zdCB0IG9mIE9iamVjdC5rZXlzKGwpLm1hcChOdW1iZXIpKWgucHVzaChyW3RdKTtoLnNvcnQoVik7Zm9yKGNvbnN0IGkgb2YgaCl7Y29uc3QgYT1pLmZlYXR1cmVJbmRleC5sb29rdXBTeW1ib2xGZWF0dXJlcyhsW2kuYnVja2V0SW5zdGFuY2VJZF0sZSxpLmJ1Y2tldEluZGV4LGkuc291cmNlTGF5ZXJJbmRleCxzLmZpbHRlcixzLmxheWVycyxzLmF2YWlsYWJsZUltYWdlcyx0KTtmb3IoY29uc3QgdCBpbiBhKXtjb25zdCBlPW5bdF09blt0XXx8W10scz1hW3RdO3Muc29ydCgoKHQsZSk9Pntjb25zdCBhPWkuZmVhdHVyZVNvcnRPcmRlcjtpZihhKXtjb25zdCBpPWEuaW5kZXhPZih0LmZlYXR1cmVJbmRleCk7cmV0dXJuIGEuaW5kZXhPZihlLmZlYXR1cmVJbmRleCktaX1yZXR1cm4gZS5mZWF0dXJlSW5kZXgtdC5mZWF0dXJlSW5kZXh9KSk7Zm9yKGNvbnN0IHQgb2YgcyllLnB1c2godCk7fX1mb3IoY29uc3QgZSBpbiBuKW5bZV0uZm9yRWFjaCgoYT0+e2NvbnN0IHM9YS5mZWF0dXJlLG89aVt0W2VdLnNvdXJjZV0uZ2V0RmVhdHVyZVN0YXRlKHMubGF5ZXJbXCJzb3VyY2UtbGF5ZXJcIl0scy5pZCk7cy5zb3VyY2U9cy5sYXllci5zb3VyY2Uscy5sYXllcltcInNvdXJjZS1sYXllclwiXSYmKHMuc291cmNlTGF5ZXI9cy5sYXllcltcInNvdXJjZS1sYXllclwiXSkscy5zdGF0ZT1vO30pKTtyZXR1cm4gbn0odGhpcy5fbGF5ZXJzLHIsdGhpcy5zb3VyY2VDYWNoZXMsdCxpLHRoaXMucGxhY2VtZW50LmNvbGxpc2lvbkluZGV4LHRoaXMucGxhY2VtZW50LnJldGFpbmVkUXVlcnlEYXRhKSksdGhpcy5fZmxhdHRlbkFuZFNvcnRSZW5kZXJlZEZlYXR1cmVzKG8pfXF1ZXJ5U291cmNlRmVhdHVyZXModCxpKXtpJiZpLmZpbHRlciYmdGhpcy5fdmFsaWRhdGUoZS51LmZpbHRlcixcInF1ZXJ5U291cmNlRmVhdHVyZXMuZmlsdGVyXCIsaS5maWx0ZXIsbnVsbCxpKTtjb25zdCBhPXRoaXMuc291cmNlQ2FjaGVzW3RdO3JldHVybiBhP2Z1bmN0aW9uKHQsZSl7Y29uc3QgaT10LmdldFJlbmRlcmFibGVJZHMoKS5tYXAoKGU9PnQuZ2V0VGlsZUJ5SUQoZSkpKSxhPVtdLHM9e307Zm9yKGxldCB0PTA7dDxpLmxlbmd0aDt0Kyspe2NvbnN0IG89aVt0XSxyPW8udGlsZUlELmNhbm9uaWNhbC5rZXk7c1tyXXx8KHNbcl09ITAsby5xdWVyeVNvdXJjZUZlYXR1cmVzKGEsZSkpO31yZXR1cm4gYX0oYSxpKTpbXX1nZXRMaWdodCgpe3JldHVybiB0aGlzLmxpZ2h0LmdldExpZ2h0KCl9c2V0TGlnaHQodCxpPXt9KXt0aGlzLl9jaGVja0xvYWRlZCgpO2NvbnN0IGE9dGhpcy5saWdodC5nZXRMaWdodCgpO2xldCBzPSExO2Zvcihjb25zdCBpIGluIHQpaWYoIWUuYUUodFtpXSxhW2ldKSl7cz0hMDticmVha31pZighcylyZXR1cm47Y29uc3Qgcj17bm93Om8ubm93KCksdHJhbnNpdGlvbjplLmUoe2R1cmF0aW9uOjMwMCxkZWxheTowfSx0aGlzLnN0eWxlc2hlZXQudHJhbnNpdGlvbil9O3RoaXMubGlnaHQuc2V0TGlnaHQodCxpKSx0aGlzLmxpZ2h0LnVwZGF0ZVRyYW5zaXRpb25zKHIpO31nZXRTa3koKXt2YXIgdDtyZXR1cm4gbnVsbD09PSh0PXRoaXMuc3R5bGVzaGVldCl8fHZvaWQgMD09PXQ/dm9pZCAwOnQuc2t5fXNldFNreSh0LGk9e30pe2NvbnN0IGE9dGhpcy5nZXRTa3koKTtsZXQgcz0hMTtpZighdCYmIWEpcmV0dXJuO2lmKHQmJiFhKXM9ITA7ZWxzZSBpZighdCYmYSlzPSEwO2Vsc2UgZm9yKGNvbnN0IGkgaW4gdClpZighZS5hRSh0W2ldLGFbaV0pKXtzPSEwO2JyZWFrfWlmKCFzKXJldHVybjtjb25zdCByPXtub3c6by5ub3coKSx0cmFuc2l0aW9uOmUuZSh7ZHVyYXRpb246MzAwLGRlbGF5OjB9LHRoaXMuc3R5bGVzaGVldC50cmFuc2l0aW9uKX07dGhpcy5zdHlsZXNoZWV0LnNreT10LHRoaXMuc2t5LnNldFNreSh0LGkpLHRoaXMuc2t5LnVwZGF0ZVRyYW5zaXRpb25zKHIpO31fdmFsaWRhdGUodCxpLGEscyxvPXt9KXtyZXR1cm4gKCFvfHwhMSE9PW8udmFsaWRhdGUpJiZjZSh0aGlzLHQuY2FsbChlLnUsZS5lKHtrZXk6aSxzdHlsZTp0aGlzLnNlcmlhbGl6ZSgpLHZhbHVlOmEsc3R5bGVTcGVjOmUudn0scykpKX1fcmVtb3ZlKHQ9ITApe3RoaXMuX2ZyYW1lUmVxdWVzdCYmKHRoaXMuX2ZyYW1lUmVxdWVzdC5hYm9ydCgpLHRoaXMuX2ZyYW1lUmVxdWVzdD1udWxsKSx0aGlzLl9sb2FkU3R5bGVSZXF1ZXN0JiYodGhpcy5fbG9hZFN0eWxlUmVxdWVzdC5hYm9ydCgpLHRoaXMuX2xvYWRTdHlsZVJlcXVlc3Q9bnVsbCksdGhpcy5fc3ByaXRlUmVxdWVzdCYmKHRoaXMuX3Nwcml0ZVJlcXVlc3QuYWJvcnQoKSx0aGlzLl9zcHJpdGVSZXF1ZXN0PW51bGwpLG50KCkub2ZmKHN0LHRoaXMuX3J0bFBsdWdpbkxvYWRlZCk7Zm9yKGNvbnN0IHQgaW4gdGhpcy5fbGF5ZXJzKXRoaXMuX2xheWVyc1t0XS5zZXRFdmVudGVkUGFyZW50KG51bGwpO2Zvcihjb25zdCB0IGluIHRoaXMuc291cmNlQ2FjaGVzKXtjb25zdCBlPXRoaXMuc291cmNlQ2FjaGVzW3RdO2Uuc2V0RXZlbnRlZFBhcmVudChudWxsKSxlLm9uUmVtb3ZlKHRoaXMubWFwKTt9dGhpcy5pbWFnZU1hbmFnZXIuc2V0RXZlbnRlZFBhcmVudChudWxsKSx0aGlzLnNldEV2ZW50ZWRQYXJlbnQobnVsbCksdCYmdGhpcy5kaXNwYXRjaGVyLmJyb2FkY2FzdChcIlJNXCIsdm9pZCAwKSx0aGlzLmRpc3BhdGNoZXIucmVtb3ZlKHQpO31fY2xlYXJTb3VyY2UodCl7dGhpcy5zb3VyY2VDYWNoZXNbdF0uY2xlYXJUaWxlcygpO31fcmVsb2FkU291cmNlKHQpe3RoaXMuc291cmNlQ2FjaGVzW3RdLnJlc3VtZSgpLHRoaXMuc291cmNlQ2FjaGVzW3RdLnJlbG9hZCgpO31fdXBkYXRlU291cmNlcyh0KXtmb3IoY29uc3QgZSBpbiB0aGlzLnNvdXJjZUNhY2hlcyl0aGlzLnNvdXJjZUNhY2hlc1tlXS51cGRhdGUodCx0aGlzLm1hcC50ZXJyYWluKTt9X2dlbmVyYXRlQ29sbGlzaW9uQm94ZXMoKXtmb3IoY29uc3QgdCBpbiB0aGlzLnNvdXJjZUNhY2hlcyl0aGlzLl9yZWxvYWRTb3VyY2UodCk7fV91cGRhdGVQbGFjZW1lbnQodCxlLGksYSxzPSExKXtsZXQgcj0hMSxuPSExO2NvbnN0IGw9e307Zm9yKGNvbnN0IGUgb2YgdGhpcy5fb3JkZXIpe2NvbnN0IGk9dGhpcy5fbGF5ZXJzW2VdO2lmKFwic3ltYm9sXCIhPT1pLnR5cGUpY29udGludWU7aWYoIWxbaS5zb3VyY2VdKXtjb25zdCB0PXRoaXMuc291cmNlQ2FjaGVzW2kuc291cmNlXTtsW2kuc291cmNlXT10LmdldFJlbmRlcmFibGVJZHMoITApLm1hcCgoZT0+dC5nZXRUaWxlQnlJRChlKSkpLnNvcnQoKCh0LGUpPT5lLnRpbGVJRC5vdmVyc2NhbGVkWi10LnRpbGVJRC5vdmVyc2NhbGVkWnx8KHQudGlsZUlELmlzTGVzc1RoYW4oZS50aWxlSUQpPy0xOjEpKSk7fWNvbnN0IGE9dGhpcy5jcm9zc1RpbGVTeW1ib2xJbmRleC5hZGRMYXllcihpLGxbaS5zb3VyY2VdLHQuY2VudGVyLmxuZyk7cj1yfHxhO31pZih0aGlzLmNyb3NzVGlsZVN5bWJvbEluZGV4LnBydW5lVW51c2VkTGF5ZXJzKHRoaXMuX29yZGVyKSwoKHM9c3x8dGhpcy5fbGF5ZXJPcmRlckNoYW5nZWR8fDA9PT1pKXx8IXRoaXMucGF1c2VhYmxlUGxhY2VtZW50fHx0aGlzLnBhdXNlYWJsZVBsYWNlbWVudC5pc0RvbmUoKSYmIXRoaXMucGxhY2VtZW50LnN0aWxsUmVjZW50KG8ubm93KCksdC56b29tKSkmJih0aGlzLnBhdXNlYWJsZVBsYWNlbWVudD1uZXcgc2UodCx0aGlzLm1hcC50ZXJyYWluLHRoaXMuX29yZGVyLHMsZSxpLGEsdGhpcy5wbGFjZW1lbnQpLHRoaXMuX2xheWVyT3JkZXJDaGFuZ2VkPSExKSx0aGlzLnBhdXNlYWJsZVBsYWNlbWVudC5pc0RvbmUoKT90aGlzLnBsYWNlbWVudC5zZXRTdGFsZSgpOih0aGlzLnBhdXNlYWJsZVBsYWNlbWVudC5jb250aW51ZVBsYWNlbWVudCh0aGlzLl9vcmRlcix0aGlzLl9sYXllcnMsbCksdGhpcy5wYXVzZWFibGVQbGFjZW1lbnQuaXNEb25lKCkmJih0aGlzLnBsYWNlbWVudD10aGlzLnBhdXNlYWJsZVBsYWNlbWVudC5jb21taXQoby5ub3coKSksbj0hMCksciYmdGhpcy5wYXVzZWFibGVQbGFjZW1lbnQucGxhY2VtZW50LnNldFN0YWxlKCkpLG58fHIpZm9yKGNvbnN0IHQgb2YgdGhpcy5fb3JkZXIpe2NvbnN0IGU9dGhpcy5fbGF5ZXJzW3RdO1wic3ltYm9sXCI9PT1lLnR5cGUmJnRoaXMucGxhY2VtZW50LnVwZGF0ZUxheWVyT3BhY2l0aWVzKGUsbFtlLnNvdXJjZV0pO31yZXR1cm4gIXRoaXMucGF1c2VhYmxlUGxhY2VtZW50LmlzRG9uZSgpfHx0aGlzLnBsYWNlbWVudC5oYXNUcmFuc2l0aW9ucyhvLm5vdygpKX1fcmVsZWFzZVN5bWJvbEZhZGVUaWxlcygpe2Zvcihjb25zdCB0IGluIHRoaXMuc291cmNlQ2FjaGVzKXRoaXMuc291cmNlQ2FjaGVzW3RdLnJlbGVhc2VTeW1ib2xGYWRlVGlsZXMoKTt9Z2V0SW1hZ2VzKHQsaSl7cmV0dXJuIGUuXyh0aGlzLHZvaWQgMCx2b2lkIDAsKGZ1bmN0aW9uKigpe2NvbnN0IHQ9eWllbGQgdGhpcy5pbWFnZU1hbmFnZXIuZ2V0SW1hZ2VzKGkuaWNvbnMpO3RoaXMuX3VwZGF0ZVRpbGVzRm9yQ2hhbmdlZEltYWdlcygpO2NvbnN0IGU9dGhpcy5zb3VyY2VDYWNoZXNbaS5zb3VyY2VdO3JldHVybiBlJiZlLnNldERlcGVuZGVuY2llcyhpLnRpbGVJRC5rZXksaS50eXBlLGkuaWNvbnMpLHR9KSl9Z2V0R2x5cGhzKHQsaSl7cmV0dXJuIGUuXyh0aGlzLHZvaWQgMCx2b2lkIDAsKGZ1bmN0aW9uKigpe2NvbnN0IHQ9eWllbGQgdGhpcy5nbHlwaE1hbmFnZXIuZ2V0R2x5cGhzKGkuc3RhY2tzKSxlPXRoaXMuc291cmNlQ2FjaGVzW2kuc291cmNlXTtyZXR1cm4gZSYmZS5zZXREZXBlbmRlbmNpZXMoaS50aWxlSUQua2V5LGkudHlwZSxbXCJcIl0pLHR9KSl9Z2V0R2x5cGhzVXJsKCl7cmV0dXJuIHRoaXMuc3R5bGVzaGVldC5nbHlwaHN8fG51bGx9c2V0R2x5cGhzKHQsaT17fSl7dGhpcy5fY2hlY2tMb2FkZWQoKSx0JiZ0aGlzLl92YWxpZGF0ZShlLnUuZ2x5cGhzLFwiZ2x5cGhzXCIsdCxudWxsLGkpfHwodGhpcy5fZ2x5cGhzRGlkQ2hhbmdlPSEwLHRoaXMuc3R5bGVzaGVldC5nbHlwaHM9dCx0aGlzLmdseXBoTWFuYWdlci5lbnRyaWVzPXt9LHRoaXMuZ2x5cGhNYW5hZ2VyLnNldFVSTCh0KSk7fWFkZFNwcml0ZSh0LGksYT17fSxzKXt0aGlzLl9jaGVja0xvYWRlZCgpO2NvbnN0IG89W3tpZDp0LHVybDppfV0scj1bLi4ueCh0aGlzLnN0eWxlc2hlZXQuc3ByaXRlKSwuLi5vXTt0aGlzLl92YWxpZGF0ZShlLnUuc3ByaXRlLFwic3ByaXRlXCIscixudWxsLGEpfHwodGhpcy5zdHlsZXNoZWV0LnNwcml0ZT1yLHRoaXMuX2xvYWRTcHJpdGUobywhMCxzKSk7fXJlbW92ZVNwcml0ZSh0KXt0aGlzLl9jaGVja0xvYWRlZCgpO2NvbnN0IGk9eCh0aGlzLnN0eWxlc2hlZXQuc3ByaXRlKTtpZihpLmZpbmQoKGU9PmUuaWQ9PT10KSkpe2lmKHRoaXMuX3Nwcml0ZXNJbWFnZXNJZHNbdF0pZm9yKGNvbnN0IGUgb2YgdGhpcy5fc3ByaXRlc0ltYWdlc0lkc1t0XSl0aGlzLmltYWdlTWFuYWdlci5yZW1vdmVJbWFnZShlKSx0aGlzLl9jaGFuZ2VkSW1hZ2VzW2VdPSEwO2kuc3BsaWNlKGkuZmluZEluZGV4KChlPT5lLmlkPT09dCkpLDEpLHRoaXMuc3R5bGVzaGVldC5zcHJpdGU9aS5sZW5ndGg+MD9pOnZvaWQgMCxkZWxldGUgdGhpcy5fc3ByaXRlc0ltYWdlc0lkc1t0XSx0aGlzLl9hdmFpbGFibGVJbWFnZXM9dGhpcy5pbWFnZU1hbmFnZXIubGlzdEltYWdlcygpLHRoaXMuX2NoYW5nZWQ9ITAsdGhpcy5kaXNwYXRjaGVyLmJyb2FkY2FzdChcIlNJXCIsdGhpcy5fYXZhaWxhYmxlSW1hZ2VzKSx0aGlzLmZpcmUobmV3IGUuayhcImRhdGFcIix7ZGF0YVR5cGU6XCJzdHlsZVwifSkpO31lbHNlIHRoaXMuZmlyZShuZXcgZS5qKG5ldyBFcnJvcihgU3ByaXRlIFwiJHt0fVwiIGRvZXNuJ3QgZXhpc3RzIG9uIHRoaXMgbWFwLmApKSk7fWdldFNwcml0ZSgpe3JldHVybiB4KHRoaXMuc3R5bGVzaGVldC5zcHJpdGUpfXNldFNwcml0ZSh0LGk9e30sYSl7dGhpcy5fY2hlY2tMb2FkZWQoKSx0JiZ0aGlzLl92YWxpZGF0ZShlLnUuc3ByaXRlLFwic3ByaXRlXCIsdCxudWxsLGkpfHwodGhpcy5zdHlsZXNoZWV0LnNwcml0ZT10LHQ/dGhpcy5fbG9hZFNwcml0ZSh0LCEwLGEpOih0aGlzLl91bmxvYWRTcHJpdGUoKSxhJiZhKG51bGwpKSk7fX12YXIgX2U9ZS5ZKFt7bmFtZTpcImFfcG9zXCIsdHlwZTpcIkludDE2XCIsY29tcG9uZW50czoyfV0pO2NvbnN0IHBlPXtwcmVsdWRlOm1lKFwiI2lmZGVmIEdMX0VTXFxucHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7XFxuI2Vsc2VcXG4jaWYgIWRlZmluZWQobG93cClcXG4jZGVmaW5lIGxvd3BcXG4jZW5kaWZcXG4jaWYgIWRlZmluZWQobWVkaXVtcClcXG4jZGVmaW5lIG1lZGl1bXBcXG4jZW5kaWZcXG4jaWYgIWRlZmluZWQoaGlnaHApXFxuI2RlZmluZSBoaWdocFxcbiNlbmRpZlxcbiNlbmRpZlxcblwiLFwiI2lmZGVmIEdMX0VTXFxucHJlY2lzaW9uIGhpZ2hwIGZsb2F0O1xcbiNlbHNlXFxuI2lmICFkZWZpbmVkKGxvd3ApXFxuI2RlZmluZSBsb3dwXFxuI2VuZGlmXFxuI2lmICFkZWZpbmVkKG1lZGl1bXApXFxuI2RlZmluZSBtZWRpdW1wXFxuI2VuZGlmXFxuI2lmICFkZWZpbmVkKGhpZ2hwKVxcbiNkZWZpbmUgaGlnaHBcXG4jZW5kaWZcXG4jZW5kaWZcXG52ZWMyIHVucGFja19mbG9hdChjb25zdCBmbG9hdCBwYWNrZWRWYWx1ZSkge2ludCBwYWNrZWRJbnRWYWx1ZT1pbnQocGFja2VkVmFsdWUpO2ludCB2MD1wYWNrZWRJbnRWYWx1ZS8yNTY7cmV0dXJuIHZlYzIodjAscGFja2VkSW50VmFsdWUtdjAqMjU2KTt9dmVjMiB1bnBhY2tfb3BhY2l0eShjb25zdCBmbG9hdCBwYWNrZWRPcGFjaXR5KSB7aW50IGludE9wYWNpdHk9aW50KHBhY2tlZE9wYWNpdHkpLzI7cmV0dXJuIHZlYzIoZmxvYXQoaW50T3BhY2l0eSkvMTI3LjAsbW9kKHBhY2tlZE9wYWNpdHksMi4wKSk7fXZlYzQgZGVjb2RlX2NvbG9yKGNvbnN0IHZlYzIgZW5jb2RlZENvbG9yKSB7cmV0dXJuIHZlYzQodW5wYWNrX2Zsb2F0KGVuY29kZWRDb2xvclswXSkvMjU1LjAsdW5wYWNrX2Zsb2F0KGVuY29kZWRDb2xvclsxXSkvMjU1LjBcXG4pO31mbG9hdCB1bnBhY2tfbWl4X3ZlYzIoY29uc3QgdmVjMiBwYWNrZWRWYWx1ZSxjb25zdCBmbG9hdCB0KSB7cmV0dXJuIG1peChwYWNrZWRWYWx1ZVswXSxwYWNrZWRWYWx1ZVsxXSx0KTt9dmVjNCB1bnBhY2tfbWl4X2NvbG9yKGNvbnN0IHZlYzQgcGFja2VkQ29sb3JzLGNvbnN0IGZsb2F0IHQpIHt2ZWM0IG1pbkNvbG9yPWRlY29kZV9jb2xvcih2ZWMyKHBhY2tlZENvbG9yc1swXSxwYWNrZWRDb2xvcnNbMV0pKTt2ZWM0IG1heENvbG9yPWRlY29kZV9jb2xvcih2ZWMyKHBhY2tlZENvbG9yc1syXSxwYWNrZWRDb2xvcnNbM10pKTtyZXR1cm4gbWl4KG1pbkNvbG9yLG1heENvbG9yLHQpO312ZWMyIGdldF9wYXR0ZXJuX3Bvcyhjb25zdCB2ZWMyIHBpeGVsX2Nvb3JkX3VwcGVyLGNvbnN0IHZlYzIgcGl4ZWxfY29vcmRfbG93ZXIsY29uc3QgdmVjMiBwYXR0ZXJuX3NpemUsY29uc3QgZmxvYXQgdGlsZV91bml0c190b19waXhlbHMsY29uc3QgdmVjMiBwb3MpIHt2ZWMyIG9mZnNldD1tb2QobW9kKG1vZChwaXhlbF9jb29yZF91cHBlcixwYXR0ZXJuX3NpemUpKjI1Ni4wLHBhdHRlcm5fc2l6ZSkqMjU2LjArcGl4ZWxfY29vcmRfbG93ZXIscGF0dGVybl9zaXplKTtyZXR1cm4gKHRpbGVfdW5pdHNfdG9fcGl4ZWxzKnBvcytvZmZzZXQpL3BhdHRlcm5fc2l6ZTt9XFxuI2lmZGVmIFRFUlJBSU4zRFxcbnVuaWZvcm0gc2FtcGxlcjJEIHVfdGVycmFpbjt1bmlmb3JtIGZsb2F0IHVfdGVycmFpbl9kaW07dW5pZm9ybSBtYXQ0IHVfdGVycmFpbl9tYXRyaXg7dW5pZm9ybSB2ZWM0IHVfdGVycmFpbl91bnBhY2s7dW5pZm9ybSBmbG9hdCB1X3RlcnJhaW5fZXhhZ2dlcmF0aW9uO3VuaWZvcm0gaGlnaHAgc2FtcGxlcjJEIHVfZGVwdGg7XFxuI2VuZGlmXFxuY29uc3QgaGlnaHAgdmVjNCBiaXRTaD12ZWM0KDI1Ni4qMjU2LioyNTYuLDI1Ni4qMjU2LiwyNTYuLDEuKTtjb25zdCBoaWdocCB2ZWM0IGJpdFNoaWZ0cz12ZWM0KDEuKS9iaXRTaDtoaWdocCBmbG9hdCB1bnBhY2soaGlnaHAgdmVjNCBjb2xvcikge3JldHVybiBkb3QoY29sb3IsYml0U2hpZnRzKTt9aGlnaHAgZmxvYXQgZGVwdGhPcGFjaXR5KHZlYzMgZnJhZykge1xcbiNpZmRlZiBURVJSQUlOM0RcXG5oaWdocCBmbG9hdCBkPXVucGFjayh0ZXh0dXJlMkQodV9kZXB0aCxmcmFnLnh5KjAuNSswLjUpKSswLjAwMDEtZnJhZy56O3JldHVybiAxLjAtbWF4KDAuMCxtaW4oMS4wLC1kKjUwMC4wKSk7XFxuI2Vsc2VcXG5yZXR1cm4gMS4wO1xcbiNlbmRpZlxcbn1mbG9hdCBjYWxjdWxhdGVfdmlzaWJpbGl0eSh2ZWM0IHBvcykge1xcbiNpZmRlZiBURVJSQUlOM0RcXG52ZWMzIGZyYWc9cG9zLnh5ei9wb3MudztoaWdocCBmbG9hdCBkPWRlcHRoT3BhY2l0eShmcmFnKTtpZiAoZCA+IDAuOTUpIHJldHVybiAxLjA7cmV0dXJuIChkK2RlcHRoT3BhY2l0eShmcmFnK3ZlYzMoMC4wLDAuMDEsMC4wKSkpLzIuMDtcXG4jZWxzZVxcbnJldHVybiAxLjA7XFxuI2VuZGlmXFxufWZsb2F0IGVsZSh2ZWMyIHBvcykge1xcbiNpZmRlZiBURVJSQUlOM0RcXG52ZWM0IHJnYj0odGV4dHVyZTJEKHVfdGVycmFpbixwb3MpKjI1NS4wKSp1X3RlcnJhaW5fdW5wYWNrO3JldHVybiByZ2IucityZ2IuZytyZ2IuYi11X3RlcnJhaW5fdW5wYWNrLmE7XFxuI2Vsc2VcXG5yZXR1cm4gMC4wO1xcbiNlbmRpZlxcbn1mbG9hdCBnZXRfZWxldmF0aW9uKHZlYzIgcG9zKSB7XFxuI2lmZGVmIFRFUlJBSU4zRFxcbnZlYzIgY29vcmQ9KHVfdGVycmFpbl9tYXRyaXgqdmVjNChwb3MsMC4wLDEuMCkpLnh5KnVfdGVycmFpbl9kaW0rMS4wO3ZlYzIgZj1mcmFjdChjb29yZCk7dmVjMiBjPShmbG9vcihjb29yZCkrMC41KS8odV90ZXJyYWluX2RpbSsyLjApO2Zsb2F0IGQ9MS4wLyh1X3RlcnJhaW5fZGltKzIuMCk7ZmxvYXQgdGw9ZWxlKGMpO2Zsb2F0IHRyPWVsZShjK3ZlYzIoZCwwLjApKTtmbG9hdCBibD1lbGUoYyt2ZWMyKDAuMCxkKSk7ZmxvYXQgYnI9ZWxlKGMrdmVjMihkLGQpKTtmbG9hdCBlbGV2YXRpb249bWl4KG1peCh0bCx0cixmLngpLG1peChibCxicixmLngpLGYueSk7cmV0dXJuIGVsZXZhdGlvbip1X3RlcnJhaW5fZXhhZ2dlcmF0aW9uO1xcbiNlbHNlXFxucmV0dXJuIDAuMDtcXG4jZW5kaWZcXG59XCIpLGJhY2tncm91bmQ6bWUoXCJ1bmlmb3JtIHZlYzQgdV9jb2xvcjt1bmlmb3JtIGZsb2F0IHVfb3BhY2l0eTt2b2lkIG1haW4oKSB7Z2xfRnJhZ0NvbG9yPXVfY29sb3IqdV9vcGFjaXR5O1xcbiNpZmRlZiBPVkVSRFJBV19JTlNQRUNUT1JcXG5nbF9GcmFnQ29sb3I9dmVjNCgxLjApO1xcbiNlbmRpZlxcbn1cIixcImF0dHJpYnV0ZSB2ZWMyIGFfcG9zO3VuaWZvcm0gbWF0NCB1X21hdHJpeDt2b2lkIG1haW4oKSB7Z2xfUG9zaXRpb249dV9tYXRyaXgqdmVjNChhX3BvcywwLDEpO31cIiksYmFja2dyb3VuZFBhdHRlcm46bWUoXCJ1bmlmb3JtIHZlYzIgdV9wYXR0ZXJuX3RsX2E7dW5pZm9ybSB2ZWMyIHVfcGF0dGVybl9icl9hO3VuaWZvcm0gdmVjMiB1X3BhdHRlcm5fdGxfYjt1bmlmb3JtIHZlYzIgdV9wYXR0ZXJuX2JyX2I7dW5pZm9ybSB2ZWMyIHVfdGV4c2l6ZTt1bmlmb3JtIGZsb2F0IHVfbWl4O3VuaWZvcm0gZmxvYXQgdV9vcGFjaXR5O3VuaWZvcm0gc2FtcGxlcjJEIHVfaW1hZ2U7dmFyeWluZyB2ZWMyIHZfcG9zX2E7dmFyeWluZyB2ZWMyIHZfcG9zX2I7dm9pZCBtYWluKCkge3ZlYzIgaW1hZ2Vjb29yZD1tb2Qodl9wb3NfYSwxLjApO3ZlYzIgcG9zPW1peCh1X3BhdHRlcm5fdGxfYS91X3RleHNpemUsdV9wYXR0ZXJuX2JyX2EvdV90ZXhzaXplLGltYWdlY29vcmQpO3ZlYzQgY29sb3IxPXRleHR1cmUyRCh1X2ltYWdlLHBvcyk7dmVjMiBpbWFnZWNvb3JkX2I9bW9kKHZfcG9zX2IsMS4wKTt2ZWMyIHBvczI9bWl4KHVfcGF0dGVybl90bF9iL3VfdGV4c2l6ZSx1X3BhdHRlcm5fYnJfYi91X3RleHNpemUsaW1hZ2Vjb29yZF9iKTt2ZWM0IGNvbG9yMj10ZXh0dXJlMkQodV9pbWFnZSxwb3MyKTtnbF9GcmFnQ29sb3I9bWl4KGNvbG9yMSxjb2xvcjIsdV9taXgpKnVfb3BhY2l0eTtcXG4jaWZkZWYgT1ZFUkRSQVdfSU5TUEVDVE9SXFxuZ2xfRnJhZ0NvbG9yPXZlYzQoMS4wKTtcXG4jZW5kaWZcXG59XCIsXCJ1bmlmb3JtIG1hdDQgdV9tYXRyaXg7dW5pZm9ybSB2ZWMyIHVfcGF0dGVybl9zaXplX2E7dW5pZm9ybSB2ZWMyIHVfcGF0dGVybl9zaXplX2I7dW5pZm9ybSB2ZWMyIHVfcGl4ZWxfY29vcmRfdXBwZXI7dW5pZm9ybSB2ZWMyIHVfcGl4ZWxfY29vcmRfbG93ZXI7dW5pZm9ybSBmbG9hdCB1X3NjYWxlX2E7dW5pZm9ybSBmbG9hdCB1X3NjYWxlX2I7dW5pZm9ybSBmbG9hdCB1X3RpbGVfdW5pdHNfdG9fcGl4ZWxzO2F0dHJpYnV0ZSB2ZWMyIGFfcG9zO3ZhcnlpbmcgdmVjMiB2X3Bvc19hO3ZhcnlpbmcgdmVjMiB2X3Bvc19iO3ZvaWQgbWFpbigpIHtnbF9Qb3NpdGlvbj11X21hdHJpeCp2ZWM0KGFfcG9zLDAsMSk7dl9wb3NfYT1nZXRfcGF0dGVybl9wb3ModV9waXhlbF9jb29yZF91cHBlcix1X3BpeGVsX2Nvb3JkX2xvd2VyLHVfc2NhbGVfYSp1X3BhdHRlcm5fc2l6ZV9hLHVfdGlsZV91bml0c190b19waXhlbHMsYV9wb3MpO3ZfcG9zX2I9Z2V0X3BhdHRlcm5fcG9zKHVfcGl4ZWxfY29vcmRfdXBwZXIsdV9waXhlbF9jb29yZF9sb3dlcix1X3NjYWxlX2IqdV9wYXR0ZXJuX3NpemVfYix1X3RpbGVfdW5pdHNfdG9fcGl4ZWxzLGFfcG9zKTt9XCIpLGNpcmNsZTptZShcInZhcnlpbmcgdmVjMyB2X2RhdGE7dmFyeWluZyBmbG9hdCB2X3Zpc2liaWxpdHk7XFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBoaWdocCB2ZWM0IGNvbG9yXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBtZWRpdW1wIGZsb2F0IHJhZGl1c1xcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgbG93cCBmbG9hdCBibHVyXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIGZsb2F0IG9wYWNpdHlcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGhpZ2hwIHZlYzQgc3Ryb2tlX2NvbG9yXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBtZWRpdW1wIGZsb2F0IHN0cm9rZV93aWR0aFxcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgbG93cCBmbG9hdCBzdHJva2Vfb3BhY2l0eVxcbnZvaWQgbWFpbigpIHtcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBoaWdocCB2ZWM0IGNvbG9yXFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbWVkaXVtcCBmbG9hdCByYWRpdXNcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBsb3dwIGZsb2F0IGJsdXJcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBsb3dwIGZsb2F0IG9wYWNpdHlcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBoaWdocCB2ZWM0IHN0cm9rZV9jb2xvclxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIG1lZGl1bXAgZmxvYXQgc3Ryb2tlX3dpZHRoXFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbG93cCBmbG9hdCBzdHJva2Vfb3BhY2l0eVxcbnZlYzIgZXh0cnVkZT12X2RhdGEueHk7ZmxvYXQgZXh0cnVkZV9sZW5ndGg9bGVuZ3RoKGV4dHJ1ZGUpO2Zsb2F0IGFudGlhbGlhc2VkX2JsdXI9dl9kYXRhLno7ZmxvYXQgb3BhY2l0eV90PXNtb290aHN0ZXAoMC4wLGFudGlhbGlhc2VkX2JsdXIsZXh0cnVkZV9sZW5ndGgtMS4wKTtmbG9hdCBjb2xvcl90PXN0cm9rZV93aWR0aCA8IDAuMDEgPyAwLjAgOiBzbW9vdGhzdGVwKGFudGlhbGlhc2VkX2JsdXIsMC4wLGV4dHJ1ZGVfbGVuZ3RoLXJhZGl1cy8ocmFkaXVzK3N0cm9rZV93aWR0aCkpO2dsX0ZyYWdDb2xvcj12X3Zpc2liaWxpdHkqb3BhY2l0eV90Km1peChjb2xvcipvcGFjaXR5LHN0cm9rZV9jb2xvcipzdHJva2Vfb3BhY2l0eSxjb2xvcl90KTtcXG4jaWZkZWYgT1ZFUkRSQVdfSU5TUEVDVE9SXFxuZ2xfRnJhZ0NvbG9yPXZlYzQoMS4wKTtcXG4jZW5kaWZcXG59XCIsXCJ1bmlmb3JtIG1hdDQgdV9tYXRyaXg7dW5pZm9ybSBib29sIHVfc2NhbGVfd2l0aF9tYXA7dW5pZm9ybSBib29sIHVfcGl0Y2hfd2l0aF9tYXA7dW5pZm9ybSB2ZWMyIHVfZXh0cnVkZV9zY2FsZTt1bmlmb3JtIGxvd3AgZmxvYXQgdV9kZXZpY2VfcGl4ZWxfcmF0aW87dW5pZm9ybSBoaWdocCBmbG9hdCB1X2NhbWVyYV90b19jZW50ZXJfZGlzdGFuY2U7YXR0cmlidXRlIHZlYzIgYV9wb3M7dmFyeWluZyB2ZWMzIHZfZGF0YTt2YXJ5aW5nIGZsb2F0IHZfdmlzaWJpbGl0eTtcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGhpZ2hwIHZlYzQgY29sb3JcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIG1lZGl1bXAgZmxvYXQgcmFkaXVzXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIGZsb2F0IGJsdXJcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGxvd3AgZmxvYXQgb3BhY2l0eVxcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgaGlnaHAgdmVjNCBzdHJva2VfY29sb3JcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIG1lZGl1bXAgZmxvYXQgc3Ryb2tlX3dpZHRoXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIGZsb2F0IHN0cm9rZV9vcGFjaXR5XFxudm9pZCBtYWluKHZvaWQpIHtcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBoaWdocCB2ZWM0IGNvbG9yXFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbWVkaXVtcCBmbG9hdCByYWRpdXNcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBsb3dwIGZsb2F0IGJsdXJcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBsb3dwIGZsb2F0IG9wYWNpdHlcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBoaWdocCB2ZWM0IHN0cm9rZV9jb2xvclxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIG1lZGl1bXAgZmxvYXQgc3Ryb2tlX3dpZHRoXFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbG93cCBmbG9hdCBzdHJva2Vfb3BhY2l0eVxcbnZlYzIgZXh0cnVkZT12ZWMyKG1vZChhX3BvcywyLjApKjIuMC0xLjApO3ZlYzIgY2lyY2xlX2NlbnRlcj1mbG9vcihhX3BvcyowLjUpO2Zsb2F0IGVsZT1nZXRfZWxldmF0aW9uKGNpcmNsZV9jZW50ZXIpO3ZfdmlzaWJpbGl0eT1jYWxjdWxhdGVfdmlzaWJpbGl0eSh1X21hdHJpeCp2ZWM0KGNpcmNsZV9jZW50ZXIsZWxlLDEuMCkpO2lmICh1X3BpdGNoX3dpdGhfbWFwKSB7dmVjMiBjb3JuZXJfcG9zaXRpb249Y2lyY2xlX2NlbnRlcjtpZiAodV9zY2FsZV93aXRoX21hcCkge2Nvcm5lcl9wb3NpdGlvbis9ZXh0cnVkZSoocmFkaXVzK3N0cm9rZV93aWR0aCkqdV9leHRydWRlX3NjYWxlO30gZWxzZSB7dmVjNCBwcm9qZWN0ZWRfY2VudGVyPXVfbWF0cml4KnZlYzQoY2lyY2xlX2NlbnRlciwwLDEpO2Nvcm5lcl9wb3NpdGlvbis9ZXh0cnVkZSoocmFkaXVzK3N0cm9rZV93aWR0aCkqdV9leHRydWRlX3NjYWxlKihwcm9qZWN0ZWRfY2VudGVyLncvdV9jYW1lcmFfdG9fY2VudGVyX2Rpc3RhbmNlKTt9Z2xfUG9zaXRpb249dV9tYXRyaXgqdmVjNChjb3JuZXJfcG9zaXRpb24sZWxlLDEpO30gZWxzZSB7Z2xfUG9zaXRpb249dV9tYXRyaXgqdmVjNChjaXJjbGVfY2VudGVyLGVsZSwxKTtpZiAodV9zY2FsZV93aXRoX21hcCkge2dsX1Bvc2l0aW9uLnh5Kz1leHRydWRlKihyYWRpdXMrc3Ryb2tlX3dpZHRoKSp1X2V4dHJ1ZGVfc2NhbGUqdV9jYW1lcmFfdG9fY2VudGVyX2Rpc3RhbmNlO30gZWxzZSB7Z2xfUG9zaXRpb24ueHkrPWV4dHJ1ZGUqKHJhZGl1cytzdHJva2Vfd2lkdGgpKnVfZXh0cnVkZV9zY2FsZSpnbF9Qb3NpdGlvbi53O319ZmxvYXQgYW50aWFsaWFzYmx1cj0tbWF4KDEuMC91X2RldmljZV9waXhlbF9yYXRpby8ocmFkaXVzK3N0cm9rZV93aWR0aCksYmx1cik7dl9kYXRhPXZlYzMoZXh0cnVkZS54LGV4dHJ1ZGUueSxhbnRpYWxpYXNibHVyKTt9XCIpLGNsaXBwaW5nTWFzazptZShcInZvaWQgbWFpbigpIHtnbF9GcmFnQ29sb3I9dmVjNCgxLjApO31cIixcImF0dHJpYnV0ZSB2ZWMyIGFfcG9zO3VuaWZvcm0gbWF0NCB1X21hdHJpeDt2b2lkIG1haW4oKSB7Z2xfUG9zaXRpb249dV9tYXRyaXgqdmVjNChhX3BvcywwLDEpO31cIiksaGVhdG1hcDptZShcInVuaWZvcm0gaGlnaHAgZmxvYXQgdV9pbnRlbnNpdHk7dmFyeWluZyB2ZWMyIHZfZXh0cnVkZTtcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGhpZ2hwIGZsb2F0IHdlaWdodFxcbiNkZWZpbmUgR0FVU1NfQ09FRiAwLjM5ODk0MjI4MDQwMTQzMjdcXG52b2lkIG1haW4oKSB7XFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgaGlnaHAgZmxvYXQgd2VpZ2h0XFxuZmxvYXQgZD0tMC41KjMuMCozLjAqZG90KHZfZXh0cnVkZSx2X2V4dHJ1ZGUpO2Zsb2F0IHZhbD13ZWlnaHQqdV9pbnRlbnNpdHkqR0FVU1NfQ09FRipleHAoZCk7Z2xfRnJhZ0NvbG9yPXZlYzQodmFsLDEuMCwxLjAsMS4wKTtcXG4jaWZkZWYgT1ZFUkRSQVdfSU5TUEVDVE9SXFxuZ2xfRnJhZ0NvbG9yPXZlYzQoMS4wKTtcXG4jZW5kaWZcXG59XCIsXCJ1bmlmb3JtIG1hdDQgdV9tYXRyaXg7dW5pZm9ybSBmbG9hdCB1X2V4dHJ1ZGVfc2NhbGU7dW5pZm9ybSBmbG9hdCB1X29wYWNpdHk7dW5pZm9ybSBmbG9hdCB1X2ludGVuc2l0eTthdHRyaWJ1dGUgdmVjMiBhX3Bvczt2YXJ5aW5nIHZlYzIgdl9leHRydWRlO1xcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgaGlnaHAgZmxvYXQgd2VpZ2h0XFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBtZWRpdW1wIGZsb2F0IHJhZGl1c1xcbmNvbnN0IGhpZ2hwIGZsb2F0IFpFUk89MS4wLzI1NS4wLzE2LjA7XFxuI2RlZmluZSBHQVVTU19DT0VGIDAuMzk4OTQyMjgwNDAxNDMyN1xcbnZvaWQgbWFpbih2b2lkKSB7XFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgaGlnaHAgZmxvYXQgd2VpZ2h0XFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbWVkaXVtcCBmbG9hdCByYWRpdXNcXG52ZWMyIHVuc2NhbGVkX2V4dHJ1ZGU9dmVjMihtb2QoYV9wb3MsMi4wKSoyLjAtMS4wKTtmbG9hdCBTPXNxcnQoLTIuMCpsb2coWkVSTy93ZWlnaHQvdV9pbnRlbnNpdHkvR0FVU1NfQ09FRikpLzMuMDt2X2V4dHJ1ZGU9Uyp1bnNjYWxlZF9leHRydWRlO3ZlYzIgZXh0cnVkZT12X2V4dHJ1ZGUqcmFkaXVzKnVfZXh0cnVkZV9zY2FsZTt2ZWM0IHBvcz12ZWM0KGZsb29yKGFfcG9zKjAuNSkrZXh0cnVkZSxnZXRfZWxldmF0aW9uKGZsb29yKGFfcG9zKjAuNSkpLDEpO2dsX1Bvc2l0aW9uPXVfbWF0cml4KnBvczt9XCIpLGhlYXRtYXBUZXh0dXJlOm1lKFwidW5pZm9ybSBzYW1wbGVyMkQgdV9pbWFnZTt1bmlmb3JtIHNhbXBsZXIyRCB1X2NvbG9yX3JhbXA7dW5pZm9ybSBmbG9hdCB1X29wYWNpdHk7dmFyeWluZyB2ZWMyIHZfcG9zO3ZvaWQgbWFpbigpIHtmbG9hdCB0PXRleHR1cmUyRCh1X2ltYWdlLHZfcG9zKS5yO3ZlYzQgY29sb3I9dGV4dHVyZTJEKHVfY29sb3JfcmFtcCx2ZWMyKHQsMC41KSk7Z2xfRnJhZ0NvbG9yPWNvbG9yKnVfb3BhY2l0eTtcXG4jaWZkZWYgT1ZFUkRSQVdfSU5TUEVDVE9SXFxuZ2xfRnJhZ0NvbG9yPXZlYzQoMC4wKTtcXG4jZW5kaWZcXG59XCIsXCJ1bmlmb3JtIG1hdDQgdV9tYXRyaXg7dW5pZm9ybSB2ZWMyIHVfd29ybGQ7YXR0cmlidXRlIHZlYzIgYV9wb3M7dmFyeWluZyB2ZWMyIHZfcG9zO3ZvaWQgbWFpbigpIHtnbF9Qb3NpdGlvbj11X21hdHJpeCp2ZWM0KGFfcG9zKnVfd29ybGQsMCwxKTt2X3Bvcy54PWFfcG9zLng7dl9wb3MueT0xLjAtYV9wb3MueTt9XCIpLGNvbGxpc2lvbkJveDptZShcInZhcnlpbmcgZmxvYXQgdl9wbGFjZWQ7dmFyeWluZyBmbG9hdCB2X25vdFVzZWQ7dm9pZCBtYWluKCkge2Zsb2F0IGFscGhhPTAuNTtnbF9GcmFnQ29sb3I9dmVjNCgxLjAsMC4wLDAuMCwxLjApKmFscGhhO2lmICh2X3BsYWNlZCA+IDAuNSkge2dsX0ZyYWdDb2xvcj12ZWM0KDAuMCwwLjAsMS4wLDAuNSkqYWxwaGE7fWlmICh2X25vdFVzZWQgPiAwLjUpIHtnbF9GcmFnQ29sb3IqPS4xO319XCIsXCJhdHRyaWJ1dGUgdmVjMiBhX2FuY2hvcl9wb3M7YXR0cmlidXRlIHZlYzIgYV9wbGFjZWQ7YXR0cmlidXRlIHZlYzIgYV9ib3hfcmVhbDt1bmlmb3JtIG1hdDQgdV9tYXRyaXg7dW5pZm9ybSB2ZWMyIHVfcGl4ZWxfZXh0cnVkZV9zY2FsZTt2YXJ5aW5nIGZsb2F0IHZfcGxhY2VkO3ZhcnlpbmcgZmxvYXQgdl9ub3RVc2VkO3ZlYzQgcHJvamVjdFRpbGVXaXRoRWxldmF0aW9uKHZlYzIgcG9zSW5UaWxlLGZsb2F0IGVsZXZhdGlvbikge3JldHVybiB1X21hdHJpeCp2ZWM0KHBvc0luVGlsZSxlbGV2YXRpb24sMS4wKTt9dm9pZCBtYWluKCkge2dsX1Bvc2l0aW9uPXByb2plY3RUaWxlV2l0aEVsZXZhdGlvbihhX2FuY2hvcl9wb3MsZ2V0X2VsZXZhdGlvbihhX2FuY2hvcl9wb3MpKTtnbF9Qb3NpdGlvbi54eT0oKGFfYm94X3JlYWwrMC41KSp1X3BpeGVsX2V4dHJ1ZGVfc2NhbGUqMi4wLTEuMCkqdmVjMigxLjAsLTEuMCkqZ2xfUG9zaXRpb24udztpZiAoZ2xfUG9zaXRpb24uei9nbF9Qb3NpdGlvbi53IDwgMS4xKSB7Z2xfUG9zaXRpb24uej0wLjU7fXZfcGxhY2VkPWFfcGxhY2VkLng7dl9ub3RVc2VkPWFfcGxhY2VkLnk7fVwiKSxjb2xsaXNpb25DaXJjbGU6bWUoXCJ2YXJ5aW5nIGZsb2F0IHZfcmFkaXVzO3ZhcnlpbmcgdmVjMiB2X2V4dHJ1ZGU7dmFyeWluZyBmbG9hdCB2X3BlcnNwZWN0aXZlX3JhdGlvO3ZhcnlpbmcgZmxvYXQgdl9jb2xsaXNpb247dm9pZCBtYWluKCkge2Zsb2F0IGFscGhhPTAuNSptaW4odl9wZXJzcGVjdGl2ZV9yYXRpbywxLjApO2Zsb2F0IHN0cm9rZV9yYWRpdXM9MC45Km1heCh2X3BlcnNwZWN0aXZlX3JhdGlvLDEuMCk7ZmxvYXQgZGlzdGFuY2VfdG9fY2VudGVyPWxlbmd0aCh2X2V4dHJ1ZGUpO2Zsb2F0IGRpc3RhbmNlX3RvX2VkZ2U9YWJzKGRpc3RhbmNlX3RvX2NlbnRlci12X3JhZGl1cyk7ZmxvYXQgb3BhY2l0eV90PXNtb290aHN0ZXAoLXN0cm9rZV9yYWRpdXMsMC4wLC1kaXN0YW5jZV90b19lZGdlKTt2ZWM0IGNvbG9yPW1peCh2ZWM0KDAuMCwwLjAsMS4wLDAuNSksdmVjNCgxLjAsMC4wLDAuMCwxLjApLHZfY29sbGlzaW9uKTtnbF9GcmFnQ29sb3I9Y29sb3IqYWxwaGEqb3BhY2l0eV90O31cIixcImF0dHJpYnV0ZSB2ZWMyIGFfcG9zO2F0dHJpYnV0ZSBmbG9hdCBhX3JhZGl1czthdHRyaWJ1dGUgdmVjMiBhX2ZsYWdzO3VuaWZvcm0gbWF0NCB1X21hdHJpeDt1bmlmb3JtIG1hdDQgdV9pbnZfbWF0cml4O3VuaWZvcm0gdmVjMiB1X3ZpZXdwb3J0X3NpemU7dW5pZm9ybSBmbG9hdCB1X2NhbWVyYV90b19jZW50ZXJfZGlzdGFuY2U7dmFyeWluZyBmbG9hdCB2X3JhZGl1czt2YXJ5aW5nIHZlYzIgdl9leHRydWRlO3ZhcnlpbmcgZmxvYXQgdl9wZXJzcGVjdGl2ZV9yYXRpbzt2YXJ5aW5nIGZsb2F0IHZfY29sbGlzaW9uO3ZlYzMgdG9UaWxlUG9zaXRpb24odmVjMiBzY3JlZW5Qb3MpIHt2ZWM0IHJheVN0YXJ0PXVfaW52X21hdHJpeCp2ZWM0KHNjcmVlblBvcywtMS4wLDEuMCk7dmVjNCByYXlFbmQgID11X2ludl9tYXRyaXgqdmVjNChzY3JlZW5Qb3MsIDEuMCwxLjApO3JheVN0YXJ0Lnh5ei89cmF5U3RhcnQudztyYXlFbmQueHl6ICAvPXJheUVuZC53O2hpZ2hwIGZsb2F0IHQ9KDAuMC1yYXlTdGFydC56KS8ocmF5RW5kLnotcmF5U3RhcnQueik7cmV0dXJuIG1peChyYXlTdGFydC54eXoscmF5RW5kLnh5eix0KTt9dm9pZCBtYWluKCkge3ZlYzIgcXVhZENlbnRlclBvcz1hX3BvcztmbG9hdCByYWRpdXM9YV9yYWRpdXM7ZmxvYXQgY29sbGlzaW9uPWFfZmxhZ3MueDtmbG9hdCB2ZXJ0ZXhJZHg9YV9mbGFncy55O3ZlYzIgcXVhZFZlcnRleE9mZnNldD12ZWMyKG1peCgtMS4wLDEuMCxmbG9hdCh2ZXJ0ZXhJZHggPj0yLjApKSxtaXgoLTEuMCwxLjAsZmxvYXQodmVydGV4SWR4ID49MS4wICYmIHZlcnRleElkeCA8PTIuMCkpKTt2ZWMyIHF1YWRWZXJ0ZXhFeHRlbnQ9cXVhZFZlcnRleE9mZnNldCpyYWRpdXM7dmVjMyB0aWxlUG9zPXRvVGlsZVBvc2l0aW9uKHF1YWRDZW50ZXJQb3MpO3ZlYzQgY2xpcFBvcz11X21hdHJpeCp2ZWM0KHRpbGVQb3MsMS4wKTtoaWdocCBmbG9hdCBjYW1lcmFfdG9fYW5jaG9yX2Rpc3RhbmNlPWNsaXBQb3MudztoaWdocCBmbG9hdCBjb2xsaXNpb25fcGVyc3BlY3RpdmVfcmF0aW89Y2xhbXAoMC41KzAuNSoodV9jYW1lcmFfdG9fY2VudGVyX2Rpc3RhbmNlL2NhbWVyYV90b19hbmNob3JfZGlzdGFuY2UpLDAuMCw0LjApO2Zsb2F0IHBhZGRpbmdfZmFjdG9yPTEuMjt2X3JhZGl1cz1yYWRpdXM7dl9leHRydWRlPXF1YWRWZXJ0ZXhFeHRlbnQqcGFkZGluZ19mYWN0b3I7dl9wZXJzcGVjdGl2ZV9yYXRpbz1jb2xsaXNpb25fcGVyc3BlY3RpdmVfcmF0aW87dl9jb2xsaXNpb249Y29sbGlzaW9uO2dsX1Bvc2l0aW9uPXZlYzQoY2xpcFBvcy54eXovY2xpcFBvcy53LDEuMCkrdmVjNChxdWFkVmVydGV4RXh0ZW50KnBhZGRpbmdfZmFjdG9yL3Vfdmlld3BvcnRfc2l6ZSoyLjAsMC4wLDAuMCk7fVwiKSxkZWJ1ZzptZShcInVuaWZvcm0gaGlnaHAgdmVjNCB1X2NvbG9yO3VuaWZvcm0gc2FtcGxlcjJEIHVfb3ZlcmxheTt2YXJ5aW5nIHZlYzIgdl91djt2b2lkIG1haW4oKSB7dmVjNCBvdmVybGF5X2NvbG9yPXRleHR1cmUyRCh1X292ZXJsYXksdl91dik7Z2xfRnJhZ0NvbG9yPW1peCh1X2NvbG9yLG92ZXJsYXlfY29sb3Isb3ZlcmxheV9jb2xvci5hKTt9XCIsXCJhdHRyaWJ1dGUgdmVjMiBhX3Bvczt2YXJ5aW5nIHZlYzIgdl91djt1bmlmb3JtIG1hdDQgdV9tYXRyaXg7dW5pZm9ybSBmbG9hdCB1X292ZXJsYXlfc2NhbGU7dm9pZCBtYWluKCkge3ZfdXY9YV9wb3MvODE5Mi4wO2dsX1Bvc2l0aW9uPXVfbWF0cml4KnZlYzQoYV9wb3MqdV9vdmVybGF5X3NjYWxlLGdldF9lbGV2YXRpb24oYV9wb3MpLDEpO31cIiksZmlsbDptZShcIiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgaGlnaHAgdmVjNCBjb2xvclxcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgbG93cCBmbG9hdCBvcGFjaXR5XFxudm9pZCBtYWluKCkge1xcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGhpZ2hwIHZlYzQgY29sb3JcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBsb3dwIGZsb2F0IG9wYWNpdHlcXG5nbF9GcmFnQ29sb3I9Y29sb3Iqb3BhY2l0eTtcXG4jaWZkZWYgT1ZFUkRSQVdfSU5TUEVDVE9SXFxuZ2xfRnJhZ0NvbG9yPXZlYzQoMS4wKTtcXG4jZW5kaWZcXG59XCIsXCJhdHRyaWJ1dGUgdmVjMiBhX3Bvczt1bmlmb3JtIG1hdDQgdV9tYXRyaXg7XFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBoaWdocCB2ZWM0IGNvbG9yXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIGZsb2F0IG9wYWNpdHlcXG52b2lkIG1haW4oKSB7XFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgaGlnaHAgdmVjNCBjb2xvclxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGxvd3AgZmxvYXQgb3BhY2l0eVxcbmdsX1Bvc2l0aW9uPXVfbWF0cml4KnZlYzQoYV9wb3MsMCwxKTt9XCIpLGZpbGxPdXRsaW5lOm1lKFwidmFyeWluZyB2ZWMyIHZfcG9zO1xcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgaGlnaHAgdmVjNCBvdXRsaW5lX2NvbG9yXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIGZsb2F0IG9wYWNpdHlcXG52b2lkIG1haW4oKSB7XFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgaGlnaHAgdmVjNCBvdXRsaW5lX2NvbG9yXFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbG93cCBmbG9hdCBvcGFjaXR5XFxuZmxvYXQgZGlzdD1sZW5ndGgodl9wb3MtZ2xfRnJhZ0Nvb3JkLnh5KTtmbG9hdCBhbHBoYT0xLjAtc21vb3Roc3RlcCgwLjAsMS4wLGRpc3QpO2dsX0ZyYWdDb2xvcj1vdXRsaW5lX2NvbG9yKihhbHBoYSpvcGFjaXR5KTtcXG4jaWZkZWYgT1ZFUkRSQVdfSU5TUEVDVE9SXFxuZ2xfRnJhZ0NvbG9yPXZlYzQoMS4wKTtcXG4jZW5kaWZcXG59XCIsXCJhdHRyaWJ1dGUgdmVjMiBhX3Bvczt1bmlmb3JtIG1hdDQgdV9tYXRyaXg7dW5pZm9ybSB2ZWMyIHVfd29ybGQ7dmFyeWluZyB2ZWMyIHZfcG9zO1xcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgaGlnaHAgdmVjNCBvdXRsaW5lX2NvbG9yXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIGZsb2F0IG9wYWNpdHlcXG52b2lkIG1haW4oKSB7XFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgaGlnaHAgdmVjNCBvdXRsaW5lX2NvbG9yXFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbG93cCBmbG9hdCBvcGFjaXR5XFxuZ2xfUG9zaXRpb249dV9tYXRyaXgqdmVjNChhX3BvcywwLDEpO3ZfcG9zPShnbF9Qb3NpdGlvbi54eS9nbF9Qb3NpdGlvbi53KzEuMCkvMi4wKnVfd29ybGQ7fVwiKSxmaWxsT3V0bGluZVBhdHRlcm46bWUoXCJ1bmlmb3JtIHZlYzIgdV90ZXhzaXplO3VuaWZvcm0gc2FtcGxlcjJEIHVfaW1hZ2U7dW5pZm9ybSBmbG9hdCB1X2ZhZGU7dmFyeWluZyB2ZWMyIHZfcG9zX2E7dmFyeWluZyB2ZWMyIHZfcG9zX2I7dmFyeWluZyB2ZWMyIHZfcG9zO1xcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgbG93cCBmbG9hdCBvcGFjaXR5XFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIHZlYzQgcGF0dGVybl9mcm9tXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIHZlYzQgcGF0dGVybl90b1xcbnZvaWQgbWFpbigpIHtcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBsb3dwIGZsb2F0IG9wYWNpdHlcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBtZWRpdW1wIHZlYzQgcGF0dGVybl9mcm9tXFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbWVkaXVtcCB2ZWM0IHBhdHRlcm5fdG9cXG52ZWMyIHBhdHRlcm5fdGxfYT1wYXR0ZXJuX2Zyb20ueHk7dmVjMiBwYXR0ZXJuX2JyX2E9cGF0dGVybl9mcm9tLnp3O3ZlYzIgcGF0dGVybl90bF9iPXBhdHRlcm5fdG8ueHk7dmVjMiBwYXR0ZXJuX2JyX2I9cGF0dGVybl90by56dzt2ZWMyIGltYWdlY29vcmQ9bW9kKHZfcG9zX2EsMS4wKTt2ZWMyIHBvcz1taXgocGF0dGVybl90bF9hL3VfdGV4c2l6ZSxwYXR0ZXJuX2JyX2EvdV90ZXhzaXplLGltYWdlY29vcmQpO3ZlYzQgY29sb3IxPXRleHR1cmUyRCh1X2ltYWdlLHBvcyk7dmVjMiBpbWFnZWNvb3JkX2I9bW9kKHZfcG9zX2IsMS4wKTt2ZWMyIHBvczI9bWl4KHBhdHRlcm5fdGxfYi91X3RleHNpemUscGF0dGVybl9icl9iL3VfdGV4c2l6ZSxpbWFnZWNvb3JkX2IpO3ZlYzQgY29sb3IyPXRleHR1cmUyRCh1X2ltYWdlLHBvczIpO2Zsb2F0IGRpc3Q9bGVuZ3RoKHZfcG9zLWdsX0ZyYWdDb29yZC54eSk7ZmxvYXQgYWxwaGE9MS4wLXNtb290aHN0ZXAoMC4wLDEuMCxkaXN0KTtnbF9GcmFnQ29sb3I9bWl4KGNvbG9yMSxjb2xvcjIsdV9mYWRlKSphbHBoYSpvcGFjaXR5O1xcbiNpZmRlZiBPVkVSRFJBV19JTlNQRUNUT1JcXG5nbF9GcmFnQ29sb3I9dmVjNCgxLjApO1xcbiNlbmRpZlxcbn1cIixcInVuaWZvcm0gbWF0NCB1X21hdHJpeDt1bmlmb3JtIHZlYzIgdV93b3JsZDt1bmlmb3JtIHZlYzIgdV9waXhlbF9jb29yZF91cHBlcjt1bmlmb3JtIHZlYzIgdV9waXhlbF9jb29yZF9sb3dlcjt1bmlmb3JtIHZlYzMgdV9zY2FsZTthdHRyaWJ1dGUgdmVjMiBhX3Bvczt2YXJ5aW5nIHZlYzIgdl9wb3NfYTt2YXJ5aW5nIHZlYzIgdl9wb3NfYjt2YXJ5aW5nIHZlYzIgdl9wb3M7XFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIGZsb2F0IG9wYWNpdHlcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGxvd3AgdmVjNCBwYXR0ZXJuX2Zyb21cXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGxvd3AgdmVjNCBwYXR0ZXJuX3RvXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIGZsb2F0IHBpeGVsX3JhdGlvX2Zyb21cXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGxvd3AgZmxvYXQgcGl4ZWxfcmF0aW9fdG9cXG52b2lkIG1haW4oKSB7XFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbG93cCBmbG9hdCBvcGFjaXR5XFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbWVkaXVtcCB2ZWM0IHBhdHRlcm5fZnJvbVxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIG1lZGl1bXAgdmVjNCBwYXR0ZXJuX3RvXFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbG93cCBmbG9hdCBwaXhlbF9yYXRpb19mcm9tXFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbG93cCBmbG9hdCBwaXhlbF9yYXRpb190b1xcbnZlYzIgcGF0dGVybl90bF9hPXBhdHRlcm5fZnJvbS54eTt2ZWMyIHBhdHRlcm5fYnJfYT1wYXR0ZXJuX2Zyb20uenc7dmVjMiBwYXR0ZXJuX3RsX2I9cGF0dGVybl90by54eTt2ZWMyIHBhdHRlcm5fYnJfYj1wYXR0ZXJuX3RvLnp3O2Zsb2F0IHRpbGVSYXRpbz11X3NjYWxlLng7ZmxvYXQgZnJvbVNjYWxlPXVfc2NhbGUueTtmbG9hdCB0b1NjYWxlPXVfc2NhbGUuejtnbF9Qb3NpdGlvbj11X21hdHJpeCp2ZWM0KGFfcG9zLDAsMSk7dmVjMiBkaXNwbGF5X3NpemVfYT0ocGF0dGVybl9icl9hLXBhdHRlcm5fdGxfYSkvcGl4ZWxfcmF0aW9fZnJvbTt2ZWMyIGRpc3BsYXlfc2l6ZV9iPShwYXR0ZXJuX2JyX2ItcGF0dGVybl90bF9iKS9waXhlbF9yYXRpb190bzt2X3Bvc19hPWdldF9wYXR0ZXJuX3Bvcyh1X3BpeGVsX2Nvb3JkX3VwcGVyLHVfcGl4ZWxfY29vcmRfbG93ZXIsZnJvbVNjYWxlKmRpc3BsYXlfc2l6ZV9hLHRpbGVSYXRpbyxhX3Bvcyk7dl9wb3NfYj1nZXRfcGF0dGVybl9wb3ModV9waXhlbF9jb29yZF91cHBlcix1X3BpeGVsX2Nvb3JkX2xvd2VyLHRvU2NhbGUqZGlzcGxheV9zaXplX2IsdGlsZVJhdGlvLGFfcG9zKTt2X3Bvcz0oZ2xfUG9zaXRpb24ueHkvZ2xfUG9zaXRpb24udysxLjApLzIuMCp1X3dvcmxkO31cIiksZmlsbFBhdHRlcm46bWUoXCIjaWZkZWYgR0xfRVNcXG5wcmVjaXNpb24gaGlnaHAgZmxvYXQ7XFxuI2VuZGlmXFxudW5pZm9ybSB2ZWMyIHVfdGV4c2l6ZTt1bmlmb3JtIGZsb2F0IHVfZmFkZTt1bmlmb3JtIHNhbXBsZXIyRCB1X2ltYWdlO3ZhcnlpbmcgdmVjMiB2X3Bvc19hO3ZhcnlpbmcgdmVjMiB2X3Bvc19iO1xcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgbG93cCBmbG9hdCBvcGFjaXR5XFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIHZlYzQgcGF0dGVybl9mcm9tXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIHZlYzQgcGF0dGVybl90b1xcbnZvaWQgbWFpbigpIHtcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBsb3dwIGZsb2F0IG9wYWNpdHlcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBtZWRpdW1wIHZlYzQgcGF0dGVybl9mcm9tXFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbWVkaXVtcCB2ZWM0IHBhdHRlcm5fdG9cXG52ZWMyIHBhdHRlcm5fdGxfYT1wYXR0ZXJuX2Zyb20ueHk7dmVjMiBwYXR0ZXJuX2JyX2E9cGF0dGVybl9mcm9tLnp3O3ZlYzIgcGF0dGVybl90bF9iPXBhdHRlcm5fdG8ueHk7dmVjMiBwYXR0ZXJuX2JyX2I9cGF0dGVybl90by56dzt2ZWMyIGltYWdlY29vcmQ9bW9kKHZfcG9zX2EsMS4wKTt2ZWMyIHBvcz1taXgocGF0dGVybl90bF9hL3VfdGV4c2l6ZSxwYXR0ZXJuX2JyX2EvdV90ZXhzaXplLGltYWdlY29vcmQpO3ZlYzQgY29sb3IxPXRleHR1cmUyRCh1X2ltYWdlLHBvcyk7dmVjMiBpbWFnZWNvb3JkX2I9bW9kKHZfcG9zX2IsMS4wKTt2ZWMyIHBvczI9bWl4KHBhdHRlcm5fdGxfYi91X3RleHNpemUscGF0dGVybl9icl9iL3VfdGV4c2l6ZSxpbWFnZWNvb3JkX2IpO3ZlYzQgY29sb3IyPXRleHR1cmUyRCh1X2ltYWdlLHBvczIpO2dsX0ZyYWdDb2xvcj1taXgoY29sb3IxLGNvbG9yMix1X2ZhZGUpKm9wYWNpdHk7XFxuI2lmZGVmIE9WRVJEUkFXX0lOU1BFQ1RPUlxcbmdsX0ZyYWdDb2xvcj12ZWM0KDEuMCk7XFxuI2VuZGlmXFxufVwiLFwidW5pZm9ybSBtYXQ0IHVfbWF0cml4O3VuaWZvcm0gdmVjMiB1X3BpeGVsX2Nvb3JkX3VwcGVyO3VuaWZvcm0gdmVjMiB1X3BpeGVsX2Nvb3JkX2xvd2VyO3VuaWZvcm0gdmVjMyB1X3NjYWxlO2F0dHJpYnV0ZSB2ZWMyIGFfcG9zO3ZhcnlpbmcgdmVjMiB2X3Bvc19hO3ZhcnlpbmcgdmVjMiB2X3Bvc19iO1xcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgbG93cCBmbG9hdCBvcGFjaXR5XFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIHZlYzQgcGF0dGVybl9mcm9tXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIHZlYzQgcGF0dGVybl90b1xcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgbG93cCBmbG9hdCBwaXhlbF9yYXRpb19mcm9tXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIGZsb2F0IHBpeGVsX3JhdGlvX3RvXFxudm9pZCBtYWluKCkge1xcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGxvd3AgZmxvYXQgb3BhY2l0eVxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIG1lZGl1bXAgdmVjNCBwYXR0ZXJuX2Zyb21cXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBtZWRpdW1wIHZlYzQgcGF0dGVybl90b1xcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGxvd3AgZmxvYXQgcGl4ZWxfcmF0aW9fZnJvbVxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGxvd3AgZmxvYXQgcGl4ZWxfcmF0aW9fdG9cXG52ZWMyIHBhdHRlcm5fdGxfYT1wYXR0ZXJuX2Zyb20ueHk7dmVjMiBwYXR0ZXJuX2JyX2E9cGF0dGVybl9mcm9tLnp3O3ZlYzIgcGF0dGVybl90bF9iPXBhdHRlcm5fdG8ueHk7dmVjMiBwYXR0ZXJuX2JyX2I9cGF0dGVybl90by56dztmbG9hdCB0aWxlWm9vbVJhdGlvPXVfc2NhbGUueDtmbG9hdCBmcm9tU2NhbGU9dV9zY2FsZS55O2Zsb2F0IHRvU2NhbGU9dV9zY2FsZS56O3ZlYzIgZGlzcGxheV9zaXplX2E9KHBhdHRlcm5fYnJfYS1wYXR0ZXJuX3RsX2EpL3BpeGVsX3JhdGlvX2Zyb207dmVjMiBkaXNwbGF5X3NpemVfYj0ocGF0dGVybl9icl9iLXBhdHRlcm5fdGxfYikvcGl4ZWxfcmF0aW9fdG87Z2xfUG9zaXRpb249dV9tYXRyaXgqdmVjNChhX3BvcywwLDEpO3ZfcG9zX2E9Z2V0X3BhdHRlcm5fcG9zKHVfcGl4ZWxfY29vcmRfdXBwZXIsdV9waXhlbF9jb29yZF9sb3dlcixmcm9tU2NhbGUqZGlzcGxheV9zaXplX2EsdGlsZVpvb21SYXRpbyxhX3Bvcyk7dl9wb3NfYj1nZXRfcGF0dGVybl9wb3ModV9waXhlbF9jb29yZF91cHBlcix1X3BpeGVsX2Nvb3JkX2xvd2VyLHRvU2NhbGUqZGlzcGxheV9zaXplX2IsdGlsZVpvb21SYXRpbyxhX3Bvcyk7fVwiKSxmaWxsRXh0cnVzaW9uOm1lKFwidmFyeWluZyB2ZWM0IHZfY29sb3I7dm9pZCBtYWluKCkge2dsX0ZyYWdDb2xvcj12X2NvbG9yO1xcbiNpZmRlZiBPVkVSRFJBV19JTlNQRUNUT1JcXG5nbF9GcmFnQ29sb3I9dmVjNCgxLjApO1xcbiNlbmRpZlxcbn1cIixcInVuaWZvcm0gbWF0NCB1X21hdHJpeDt1bmlmb3JtIHZlYzMgdV9saWdodGNvbG9yO3VuaWZvcm0gbG93cCB2ZWMzIHVfbGlnaHRwb3M7dW5pZm9ybSBsb3dwIGZsb2F0IHVfbGlnaHRpbnRlbnNpdHk7dW5pZm9ybSBmbG9hdCB1X3ZlcnRpY2FsX2dyYWRpZW50O3VuaWZvcm0gbG93cCBmbG9hdCB1X29wYWNpdHk7YXR0cmlidXRlIHZlYzIgYV9wb3M7YXR0cmlidXRlIHZlYzQgYV9ub3JtYWxfZWQ7XFxuI2lmZGVmIFRFUlJBSU4zRFxcbmF0dHJpYnV0ZSB2ZWMyIGFfY2VudHJvaWQ7XFxuI2VuZGlmXFxudmFyeWluZyB2ZWM0IHZfY29sb3I7XFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBoaWdocCBmbG9hdCBiYXNlXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBoaWdocCBmbG9hdCBoZWlnaHRcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGhpZ2hwIHZlYzQgY29sb3JcXG52b2lkIG1haW4oKSB7XFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgaGlnaHAgZmxvYXQgYmFzZVxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGhpZ2hwIGZsb2F0IGhlaWdodFxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGhpZ2hwIHZlYzQgY29sb3JcXG52ZWMzIG5vcm1hbD1hX25vcm1hbF9lZC54eXo7XFxuI2lmZGVmIFRFUlJBSU4zRFxcbmZsb2F0IGhlaWdodF90ZXJyYWluM2Rfb2Zmc2V0PWdldF9lbGV2YXRpb24oYV9jZW50cm9pZCk7ZmxvYXQgYmFzZV90ZXJyYWluM2Rfb2Zmc2V0PWhlaWdodF90ZXJyYWluM2Rfb2Zmc2V0LShiYXNlID4gMC4wID8gMC4wIDogMTAuMCk7XFxuI2Vsc2VcXG5mbG9hdCBoZWlnaHRfdGVycmFpbjNkX29mZnNldD0wLjA7ZmxvYXQgYmFzZV90ZXJyYWluM2Rfb2Zmc2V0PTAuMDtcXG4jZW5kaWZcXG5iYXNlPW1heCgwLjAsYmFzZSkrYmFzZV90ZXJyYWluM2Rfb2Zmc2V0O2hlaWdodD1tYXgoMC4wLGhlaWdodCkraGVpZ2h0X3RlcnJhaW4zZF9vZmZzZXQ7ZmxvYXQgdD1tb2Qobm9ybWFsLngsMi4wKTtnbF9Qb3NpdGlvbj11X21hdHJpeCp2ZWM0KGFfcG9zLHQgPiAwLjAgPyBoZWlnaHQgOiBiYXNlLDEpO2Zsb2F0IGNvbG9ydmFsdWU9Y29sb3IuciowLjIxMjYrY29sb3IuZyowLjcxNTIrY29sb3IuYiowLjA3MjI7dl9jb2xvcj12ZWM0KDAuMCwwLjAsMC4wLDEuMCk7dmVjNCBhbWJpZW50bGlnaHQ9dmVjNCgwLjAzLDAuMDMsMC4wMywxLjApO2NvbG9yKz1hbWJpZW50bGlnaHQ7ZmxvYXQgZGlyZWN0aW9uYWw9Y2xhbXAoZG90KG5vcm1hbC8xNjM4NC4wLHVfbGlnaHRwb3MpLDAuMCwxLjApO2RpcmVjdGlvbmFsPW1peCgoMS4wLXVfbGlnaHRpbnRlbnNpdHkpLG1heCgoMS4wLWNvbG9ydmFsdWUrdV9saWdodGludGVuc2l0eSksMS4wKSxkaXJlY3Rpb25hbCk7aWYgKG5vcm1hbC55ICE9MC4wKSB7ZGlyZWN0aW9uYWwqPSgoMS4wLXVfdmVydGljYWxfZ3JhZGllbnQpKyh1X3ZlcnRpY2FsX2dyYWRpZW50KmNsYW1wKCh0K2Jhc2UpKnBvdyhoZWlnaHQvMTUwLjAsMC41KSxtaXgoMC43LDAuOTgsMS4wLXVfbGlnaHRpbnRlbnNpdHkpLDEuMCkpKTt9dl9jb2xvci5yKz1jbGFtcChjb2xvci5yKmRpcmVjdGlvbmFsKnVfbGlnaHRjb2xvci5yLG1peCgwLjAsMC4zLDEuMC11X2xpZ2h0Y29sb3IuciksMS4wKTt2X2NvbG9yLmcrPWNsYW1wKGNvbG9yLmcqZGlyZWN0aW9uYWwqdV9saWdodGNvbG9yLmcsbWl4KDAuMCwwLjMsMS4wLXVfbGlnaHRjb2xvci5nKSwxLjApO3ZfY29sb3IuYis9Y2xhbXAoY29sb3IuYipkaXJlY3Rpb25hbCp1X2xpZ2h0Y29sb3IuYixtaXgoMC4wLDAuMywxLjAtdV9saWdodGNvbG9yLmIpLDEuMCk7dl9jb2xvcio9dV9vcGFjaXR5O31cIiksZmlsbEV4dHJ1c2lvblBhdHRlcm46bWUoXCJ1bmlmb3JtIHZlYzIgdV90ZXhzaXplO3VuaWZvcm0gZmxvYXQgdV9mYWRlO3VuaWZvcm0gc2FtcGxlcjJEIHVfaW1hZ2U7dmFyeWluZyB2ZWMyIHZfcG9zX2E7dmFyeWluZyB2ZWMyIHZfcG9zX2I7dmFyeWluZyB2ZWM0IHZfbGlnaHRpbmc7XFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIGZsb2F0IGJhc2VcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGxvd3AgZmxvYXQgaGVpZ2h0XFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIHZlYzQgcGF0dGVybl9mcm9tXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIHZlYzQgcGF0dGVybl90b1xcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgbG93cCBmbG9hdCBwaXhlbF9yYXRpb19mcm9tXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIGZsb2F0IHBpeGVsX3JhdGlvX3RvXFxudm9pZCBtYWluKCkge1xcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGxvd3AgZmxvYXQgYmFzZVxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGxvd3AgZmxvYXQgaGVpZ2h0XFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbWVkaXVtcCB2ZWM0IHBhdHRlcm5fZnJvbVxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIG1lZGl1bXAgdmVjNCBwYXR0ZXJuX3RvXFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbG93cCBmbG9hdCBwaXhlbF9yYXRpb19mcm9tXFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbG93cCBmbG9hdCBwaXhlbF9yYXRpb190b1xcbnZlYzIgcGF0dGVybl90bF9hPXBhdHRlcm5fZnJvbS54eTt2ZWMyIHBhdHRlcm5fYnJfYT1wYXR0ZXJuX2Zyb20uenc7dmVjMiBwYXR0ZXJuX3RsX2I9cGF0dGVybl90by54eTt2ZWMyIHBhdHRlcm5fYnJfYj1wYXR0ZXJuX3RvLnp3O3ZlYzIgaW1hZ2Vjb29yZD1tb2Qodl9wb3NfYSwxLjApO3ZlYzIgcG9zPW1peChwYXR0ZXJuX3RsX2EvdV90ZXhzaXplLHBhdHRlcm5fYnJfYS91X3RleHNpemUsaW1hZ2Vjb29yZCk7dmVjNCBjb2xvcjE9dGV4dHVyZTJEKHVfaW1hZ2UscG9zKTt2ZWMyIGltYWdlY29vcmRfYj1tb2Qodl9wb3NfYiwxLjApO3ZlYzIgcG9zMj1taXgocGF0dGVybl90bF9iL3VfdGV4c2l6ZSxwYXR0ZXJuX2JyX2IvdV90ZXhzaXplLGltYWdlY29vcmRfYik7dmVjNCBjb2xvcjI9dGV4dHVyZTJEKHVfaW1hZ2UscG9zMik7dmVjNCBtaXhlZENvbG9yPW1peChjb2xvcjEsY29sb3IyLHVfZmFkZSk7Z2xfRnJhZ0NvbG9yPW1peGVkQ29sb3Iqdl9saWdodGluZztcXG4jaWZkZWYgT1ZFUkRSQVdfSU5TUEVDVE9SXFxuZ2xfRnJhZ0NvbG9yPXZlYzQoMS4wKTtcXG4jZW5kaWZcXG59XCIsXCJ1bmlmb3JtIG1hdDQgdV9tYXRyaXg7dW5pZm9ybSB2ZWMyIHVfcGl4ZWxfY29vcmRfdXBwZXI7dW5pZm9ybSB2ZWMyIHVfcGl4ZWxfY29vcmRfbG93ZXI7dW5pZm9ybSBmbG9hdCB1X2hlaWdodF9mYWN0b3I7dW5pZm9ybSB2ZWMzIHVfc2NhbGU7dW5pZm9ybSBmbG9hdCB1X3ZlcnRpY2FsX2dyYWRpZW50O3VuaWZvcm0gbG93cCBmbG9hdCB1X29wYWNpdHk7dW5pZm9ybSB2ZWMzIHVfbGlnaHRjb2xvcjt1bmlmb3JtIGxvd3AgdmVjMyB1X2xpZ2h0cG9zO3VuaWZvcm0gbG93cCBmbG9hdCB1X2xpZ2h0aW50ZW5zaXR5O2F0dHJpYnV0ZSB2ZWMyIGFfcG9zO2F0dHJpYnV0ZSB2ZWM0IGFfbm9ybWFsX2VkO1xcbiNpZmRlZiBURVJSQUlOM0RcXG5hdHRyaWJ1dGUgdmVjMiBhX2NlbnRyb2lkO1xcbiNlbmRpZlxcbnZhcnlpbmcgdmVjMiB2X3Bvc19hO3ZhcnlpbmcgdmVjMiB2X3Bvc19iO3ZhcnlpbmcgdmVjNCB2X2xpZ2h0aW5nO1xcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgbG93cCBmbG9hdCBiYXNlXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIGZsb2F0IGhlaWdodFxcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgbG93cCB2ZWM0IHBhdHRlcm5fZnJvbVxcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgbG93cCB2ZWM0IHBhdHRlcm5fdG9cXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGxvd3AgZmxvYXQgcGl4ZWxfcmF0aW9fZnJvbVxcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgbG93cCBmbG9hdCBwaXhlbF9yYXRpb190b1xcbnZvaWQgbWFpbigpIHtcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBsb3dwIGZsb2F0IGJhc2VcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBsb3dwIGZsb2F0IGhlaWdodFxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIG1lZGl1bXAgdmVjNCBwYXR0ZXJuX2Zyb21cXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBtZWRpdW1wIHZlYzQgcGF0dGVybl90b1xcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGxvd3AgZmxvYXQgcGl4ZWxfcmF0aW9fZnJvbVxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGxvd3AgZmxvYXQgcGl4ZWxfcmF0aW9fdG9cXG52ZWMyIHBhdHRlcm5fdGxfYT1wYXR0ZXJuX2Zyb20ueHk7dmVjMiBwYXR0ZXJuX2JyX2E9cGF0dGVybl9mcm9tLnp3O3ZlYzIgcGF0dGVybl90bF9iPXBhdHRlcm5fdG8ueHk7dmVjMiBwYXR0ZXJuX2JyX2I9cGF0dGVybl90by56dztmbG9hdCB0aWxlUmF0aW89dV9zY2FsZS54O2Zsb2F0IGZyb21TY2FsZT11X3NjYWxlLnk7ZmxvYXQgdG9TY2FsZT11X3NjYWxlLno7dmVjMyBub3JtYWw9YV9ub3JtYWxfZWQueHl6O2Zsb2F0IGVkZ2VkaXN0YW5jZT1hX25vcm1hbF9lZC53O3ZlYzIgZGlzcGxheV9zaXplX2E9KHBhdHRlcm5fYnJfYS1wYXR0ZXJuX3RsX2EpL3BpeGVsX3JhdGlvX2Zyb207dmVjMiBkaXNwbGF5X3NpemVfYj0ocGF0dGVybl9icl9iLXBhdHRlcm5fdGxfYikvcGl4ZWxfcmF0aW9fdG87XFxuI2lmZGVmIFRFUlJBSU4zRFxcbmZsb2F0IGhlaWdodF90ZXJyYWluM2Rfb2Zmc2V0PWdldF9lbGV2YXRpb24oYV9jZW50cm9pZCk7ZmxvYXQgYmFzZV90ZXJyYWluM2Rfb2Zmc2V0PWhlaWdodF90ZXJyYWluM2Rfb2Zmc2V0LShiYXNlID4gMC4wID8gMC4wIDogMTAuMCk7XFxuI2Vsc2VcXG5mbG9hdCBoZWlnaHRfdGVycmFpbjNkX29mZnNldD0wLjA7ZmxvYXQgYmFzZV90ZXJyYWluM2Rfb2Zmc2V0PTAuMDtcXG4jZW5kaWZcXG5iYXNlPW1heCgwLjAsYmFzZSkrYmFzZV90ZXJyYWluM2Rfb2Zmc2V0O2hlaWdodD1tYXgoMC4wLGhlaWdodCkraGVpZ2h0X3RlcnJhaW4zZF9vZmZzZXQ7ZmxvYXQgdD1tb2Qobm9ybWFsLngsMi4wKTtmbG9hdCB6PXQgPiAwLjAgPyBoZWlnaHQgOiBiYXNlO2dsX1Bvc2l0aW9uPXVfbWF0cml4KnZlYzQoYV9wb3MseiwxKTt2ZWMyIHBvcz1ub3JtYWwueD09MS4wICYmIG5vcm1hbC55PT0wLjAgJiYgbm9ybWFsLno9PTE2Mzg0LjBcXG4/IGFfcG9zXFxuOiB2ZWMyKGVkZ2VkaXN0YW5jZSx6KnVfaGVpZ2h0X2ZhY3Rvcik7dl9wb3NfYT1nZXRfcGF0dGVybl9wb3ModV9waXhlbF9jb29yZF91cHBlcix1X3BpeGVsX2Nvb3JkX2xvd2VyLGZyb21TY2FsZSpkaXNwbGF5X3NpemVfYSx0aWxlUmF0aW8scG9zKTt2X3Bvc19iPWdldF9wYXR0ZXJuX3Bvcyh1X3BpeGVsX2Nvb3JkX3VwcGVyLHVfcGl4ZWxfY29vcmRfbG93ZXIsdG9TY2FsZSpkaXNwbGF5X3NpemVfYix0aWxlUmF0aW8scG9zKTt2X2xpZ2h0aW5nPXZlYzQoMC4wLDAuMCwwLjAsMS4wKTtmbG9hdCBkaXJlY3Rpb25hbD1jbGFtcChkb3Qobm9ybWFsLzE2MzgzLjAsdV9saWdodHBvcyksMC4wLDEuMCk7ZGlyZWN0aW9uYWw9bWl4KCgxLjAtdV9saWdodGludGVuc2l0eSksbWF4KCgwLjUrdV9saWdodGludGVuc2l0eSksMS4wKSxkaXJlY3Rpb25hbCk7aWYgKG5vcm1hbC55ICE9MC4wKSB7ZGlyZWN0aW9uYWwqPSgoMS4wLXVfdmVydGljYWxfZ3JhZGllbnQpKyh1X3ZlcnRpY2FsX2dyYWRpZW50KmNsYW1wKCh0K2Jhc2UpKnBvdyhoZWlnaHQvMTUwLjAsMC41KSxtaXgoMC43LDAuOTgsMS4wLXVfbGlnaHRpbnRlbnNpdHkpLDEuMCkpKTt9dl9saWdodGluZy5yZ2IrPWNsYW1wKGRpcmVjdGlvbmFsKnVfbGlnaHRjb2xvcixtaXgodmVjMygwLjApLHZlYzMoMC4zKSwxLjAtdV9saWdodGNvbG9yKSx2ZWMzKDEuMCkpO3ZfbGlnaHRpbmcqPXVfb3BhY2l0eTt9XCIpLGhpbGxzaGFkZVByZXBhcmU6bWUoXCIjaWZkZWYgR0xfRVNcXG5wcmVjaXNpb24gaGlnaHAgZmxvYXQ7XFxuI2VuZGlmXFxudW5pZm9ybSBzYW1wbGVyMkQgdV9pbWFnZTt2YXJ5aW5nIHZlYzIgdl9wb3M7dW5pZm9ybSB2ZWMyIHVfZGltZW5zaW9uO3VuaWZvcm0gZmxvYXQgdV96b29tO3VuaWZvcm0gdmVjNCB1X3VucGFjaztmbG9hdCBnZXRFbGV2YXRpb24odmVjMiBjb29yZCxmbG9hdCBiaWFzKSB7dmVjNCBkYXRhPXRleHR1cmUyRCh1X2ltYWdlLGNvb3JkKSoyNTUuMDtkYXRhLmE9LTEuMDtyZXR1cm4gZG90KGRhdGEsdV91bnBhY2spLzQuMDt9dm9pZCBtYWluKCkge3ZlYzIgZXBzaWxvbj0xLjAvdV9kaW1lbnNpb247ZmxvYXQgYT1nZXRFbGV2YXRpb24odl9wb3MrdmVjMigtZXBzaWxvbi54LC1lcHNpbG9uLnkpLDAuMCk7ZmxvYXQgYj1nZXRFbGV2YXRpb24odl9wb3MrdmVjMigwLC1lcHNpbG9uLnkpLDAuMCk7ZmxvYXQgYz1nZXRFbGV2YXRpb24odl9wb3MrdmVjMihlcHNpbG9uLngsLWVwc2lsb24ueSksMC4wKTtmbG9hdCBkPWdldEVsZXZhdGlvbih2X3Bvcyt2ZWMyKC1lcHNpbG9uLngsMCksMC4wKTtmbG9hdCBlPWdldEVsZXZhdGlvbih2X3BvcywwLjApO2Zsb2F0IGY9Z2V0RWxldmF0aW9uKHZfcG9zK3ZlYzIoZXBzaWxvbi54LDApLDAuMCk7ZmxvYXQgZz1nZXRFbGV2YXRpb24odl9wb3MrdmVjMigtZXBzaWxvbi54LGVwc2lsb24ueSksMC4wKTtmbG9hdCBoPWdldEVsZXZhdGlvbih2X3Bvcyt2ZWMyKDAsZXBzaWxvbi55KSwwLjApO2Zsb2F0IGk9Z2V0RWxldmF0aW9uKHZfcG9zK3ZlYzIoZXBzaWxvbi54LGVwc2lsb24ueSksMC4wKTtmbG9hdCBleGFnZ2VyYXRpb25GYWN0b3I9dV96b29tIDwgMi4wID8gMC40IDogdV96b29tIDwgNC41ID8gMC4zNSA6IDAuMztmbG9hdCBleGFnZ2VyYXRpb249dV96b29tIDwgMTUuMCA/ICh1X3pvb20tMTUuMCkqZXhhZ2dlcmF0aW9uRmFjdG9yIDogMC4wO3ZlYzIgZGVyaXY9dmVjMigoYytmK2YraSktKGErZCtkK2cpLChnK2graCtpKS0oYStiK2IrYykpL3BvdygyLjAsZXhhZ2dlcmF0aW9uKygxOS4yNTYyLXVfem9vbSkpO2dsX0ZyYWdDb2xvcj1jbGFtcCh2ZWM0KGRlcml2LngvMi4wKzAuNSxkZXJpdi55LzIuMCswLjUsMS4wLDEuMCksMC4wLDEuMCk7XFxuI2lmZGVmIE9WRVJEUkFXX0lOU1BFQ1RPUlxcbmdsX0ZyYWdDb2xvcj12ZWM0KDEuMCk7XFxuI2VuZGlmXFxufVwiLFwidW5pZm9ybSBtYXQ0IHVfbWF0cml4O3VuaWZvcm0gdmVjMiB1X2RpbWVuc2lvbjthdHRyaWJ1dGUgdmVjMiBhX3BvczthdHRyaWJ1dGUgdmVjMiBhX3RleHR1cmVfcG9zO3ZhcnlpbmcgdmVjMiB2X3Bvczt2b2lkIG1haW4oKSB7Z2xfUG9zaXRpb249dV9tYXRyaXgqdmVjNChhX3BvcywwLDEpO2hpZ2hwIHZlYzIgZXBzaWxvbj0xLjAvdV9kaW1lbnNpb247ZmxvYXQgc2NhbGU9KHVfZGltZW5zaW9uLngtMi4wKS91X2RpbWVuc2lvbi54O3ZfcG9zPShhX3RleHR1cmVfcG9zLzgxOTIuMCkqc2NhbGUrZXBzaWxvbjt9XCIpLGhpbGxzaGFkZTptZShcInVuaWZvcm0gc2FtcGxlcjJEIHVfaW1hZ2U7dmFyeWluZyB2ZWMyIHZfcG9zO3VuaWZvcm0gdmVjMiB1X2xhdHJhbmdlO3VuaWZvcm0gdmVjMiB1X2xpZ2h0O3VuaWZvcm0gdmVjNCB1X3NoYWRvdzt1bmlmb3JtIHZlYzQgdV9oaWdobGlnaHQ7dW5pZm9ybSB2ZWM0IHVfYWNjZW50O1xcbiNkZWZpbmUgUEkgMy4xNDE1OTI2NTM1ODk3OTNcXG52b2lkIG1haW4oKSB7dmVjNCBwaXhlbD10ZXh0dXJlMkQodV9pbWFnZSx2X3Bvcyk7dmVjMiBkZXJpdj0oKHBpeGVsLnJnKjIuMCktMS4wKTtmbG9hdCBzY2FsZUZhY3Rvcj1jb3MocmFkaWFucygodV9sYXRyYW5nZVswXS11X2xhdHJhbmdlWzFdKSooMS4wLXZfcG9zLnkpK3VfbGF0cmFuZ2VbMV0pKTtmbG9hdCBzbG9wZT1hdGFuKDEuMjUqbGVuZ3RoKGRlcml2KS9zY2FsZUZhY3Rvcik7ZmxvYXQgYXNwZWN0PWRlcml2LnggIT0wLjAgPyBhdGFuKGRlcml2LnksLWRlcml2LngpIDogUEkvMi4wKihkZXJpdi55ID4gMC4wID8gMS4wIDotMS4wKTtmbG9hdCBpbnRlbnNpdHk9dV9saWdodC54O2Zsb2F0IGF6aW11dGg9dV9saWdodC55K1BJO2Zsb2F0IGJhc2U9MS44NzUtaW50ZW5zaXR5KjEuNzU7ZmxvYXQgbWF4VmFsdWU9MC41KlBJO2Zsb2F0IHNjYWxlZFNsb3BlPWludGVuc2l0eSAhPTAuNSA/ICgocG93KGJhc2Usc2xvcGUpLTEuMCkvKHBvdyhiYXNlLG1heFZhbHVlKS0xLjApKSptYXhWYWx1ZSA6IHNsb3BlO2Zsb2F0IGFjY2VudD1jb3Moc2NhbGVkU2xvcGUpO3ZlYzQgYWNjZW50X2NvbG9yPSgxLjAtYWNjZW50KSp1X2FjY2VudCpjbGFtcChpbnRlbnNpdHkqMi4wLDAuMCwxLjApO2Zsb2F0IHNoYWRlPWFicyhtb2QoKGFzcGVjdCthemltdXRoKS9QSSswLjUsMi4wKS0xLjApO3ZlYzQgc2hhZGVfY29sb3I9bWl4KHVfc2hhZG93LHVfaGlnaGxpZ2h0LHNoYWRlKSpzaW4oc2NhbGVkU2xvcGUpKmNsYW1wKGludGVuc2l0eSoyLjAsMC4wLDEuMCk7Z2xfRnJhZ0NvbG9yPWFjY2VudF9jb2xvciooMS4wLXNoYWRlX2NvbG9yLmEpK3NoYWRlX2NvbG9yO1xcbiNpZmRlZiBPVkVSRFJBV19JTlNQRUNUT1JcXG5nbF9GcmFnQ29sb3I9dmVjNCgxLjApO1xcbiNlbmRpZlxcbn1cIixcInVuaWZvcm0gbWF0NCB1X21hdHJpeDthdHRyaWJ1dGUgdmVjMiBhX3BvczthdHRyaWJ1dGUgdmVjMiBhX3RleHR1cmVfcG9zO3ZhcnlpbmcgdmVjMiB2X3Bvczt2b2lkIG1haW4oKSB7Z2xfUG9zaXRpb249dV9tYXRyaXgqdmVjNChhX3BvcywwLDEpO3ZfcG9zPWFfdGV4dHVyZV9wb3MvODE5Mi4wO31cIiksbGluZTptZShcInVuaWZvcm0gbG93cCBmbG9hdCB1X2RldmljZV9waXhlbF9yYXRpbzt2YXJ5aW5nIHZlYzIgdl93aWR0aDI7dmFyeWluZyB2ZWMyIHZfbm9ybWFsO3ZhcnlpbmcgZmxvYXQgdl9nYW1tYV9zY2FsZTtcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGhpZ2hwIHZlYzQgY29sb3JcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGxvd3AgZmxvYXQgYmx1clxcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgbG93cCBmbG9hdCBvcGFjaXR5XFxudm9pZCBtYWluKCkge1xcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGhpZ2hwIHZlYzQgY29sb3JcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBsb3dwIGZsb2F0IGJsdXJcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBsb3dwIGZsb2F0IG9wYWNpdHlcXG5mbG9hdCBkaXN0PWxlbmd0aCh2X25vcm1hbCkqdl93aWR0aDIucztmbG9hdCBibHVyMj0oYmx1cisxLjAvdV9kZXZpY2VfcGl4ZWxfcmF0aW8pKnZfZ2FtbWFfc2NhbGU7ZmxvYXQgYWxwaGE9Y2xhbXAobWluKGRpc3QtKHZfd2lkdGgyLnQtYmx1cjIpLHZfd2lkdGgyLnMtZGlzdCkvYmx1cjIsMC4wLDEuMCk7Z2xfRnJhZ0NvbG9yPWNvbG9yKihhbHBoYSpvcGFjaXR5KTtcXG4jaWZkZWYgT1ZFUkRSQVdfSU5TUEVDVE9SXFxuZ2xfRnJhZ0NvbG9yPXZlYzQoMS4wKTtcXG4jZW5kaWZcXG59XCIsXCJcXG4jZGVmaW5lIHNjYWxlIDAuMDE1ODczMDE2XFxuYXR0cmlidXRlIHZlYzIgYV9wb3Nfbm9ybWFsO2F0dHJpYnV0ZSB2ZWM0IGFfZGF0YTt1bmlmb3JtIG1hdDQgdV9tYXRyaXg7dW5pZm9ybSBtZWRpdW1wIGZsb2F0IHVfcmF0aW87dW5pZm9ybSB2ZWMyIHVfdW5pdHNfdG9fcGl4ZWxzO3VuaWZvcm0gbG93cCBmbG9hdCB1X2RldmljZV9waXhlbF9yYXRpbzt2YXJ5aW5nIHZlYzIgdl9ub3JtYWw7dmFyeWluZyB2ZWMyIHZfd2lkdGgyO3ZhcnlpbmcgZmxvYXQgdl9nYW1tYV9zY2FsZTt2YXJ5aW5nIGhpZ2hwIGZsb2F0IHZfbGluZXNvZmFyO1xcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgaGlnaHAgdmVjNCBjb2xvclxcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgbG93cCBmbG9hdCBibHVyXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIGZsb2F0IG9wYWNpdHlcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIG1lZGl1bXAgZmxvYXQgZ2Fwd2lkdGhcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGxvd3AgZmxvYXQgb2Zmc2V0XFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBtZWRpdW1wIGZsb2F0IHdpZHRoXFxudm9pZCBtYWluKCkge1xcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGhpZ2hwIHZlYzQgY29sb3JcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBsb3dwIGZsb2F0IGJsdXJcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBsb3dwIGZsb2F0IG9wYWNpdHlcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBtZWRpdW1wIGZsb2F0IGdhcHdpZHRoXFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbG93cCBmbG9hdCBvZmZzZXRcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBtZWRpdW1wIGZsb2F0IHdpZHRoXFxuZmxvYXQgQU5USUFMSUFTSU5HPTEuMC91X2RldmljZV9waXhlbF9yYXRpby8yLjA7dmVjMiBhX2V4dHJ1ZGU9YV9kYXRhLnh5LTEyOC4wO2Zsb2F0IGFfZGlyZWN0aW9uPW1vZChhX2RhdGEueiw0LjApLTEuMDt2X2xpbmVzb2Zhcj0oZmxvb3IoYV9kYXRhLnovNC4wKSthX2RhdGEudyo2NC4wKSoyLjA7dmVjMiBwb3M9Zmxvb3IoYV9wb3Nfbm9ybWFsKjAuNSk7bWVkaXVtcCB2ZWMyIG5vcm1hbD1hX3Bvc19ub3JtYWwtMi4wKnBvcztub3JtYWwueT1ub3JtYWwueSoyLjAtMS4wO3Zfbm9ybWFsPW5vcm1hbDtnYXB3aWR0aD1nYXB3aWR0aC8yLjA7ZmxvYXQgaGFsZndpZHRoPXdpZHRoLzIuMDtvZmZzZXQ9LTEuMCpvZmZzZXQ7ZmxvYXQgaW5zZXQ9Z2Fwd2lkdGgrKGdhcHdpZHRoID4gMC4wID8gQU5USUFMSUFTSU5HIDogMC4wKTtmbG9hdCBvdXRzZXQ9Z2Fwd2lkdGgraGFsZndpZHRoKihnYXB3aWR0aCA+IDAuMCA/IDIuMCA6IDEuMCkrKGhhbGZ3aWR0aD09MC4wID8gMC4wIDogQU5USUFMSUFTSU5HKTttZWRpdW1wIHZlYzIgZGlzdD1vdXRzZXQqYV9leHRydWRlKnNjYWxlO21lZGl1bXAgZmxvYXQgdT0wLjUqYV9kaXJlY3Rpb247bWVkaXVtcCBmbG9hdCB0PTEuMC1hYnModSk7bWVkaXVtcCB2ZWMyIG9mZnNldDI9b2Zmc2V0KmFfZXh0cnVkZSpzY2FsZSpub3JtYWwueSptYXQyKHQsLXUsdSx0KTt2ZWM0IHByb2plY3RlZF9leHRydWRlPXVfbWF0cml4KnZlYzQoZGlzdC91X3JhdGlvLDAuMCwwLjApO2dsX1Bvc2l0aW9uPXVfbWF0cml4KnZlYzQocG9zK29mZnNldDIvdV9yYXRpbywwLjAsMS4wKStwcm9qZWN0ZWRfZXh0cnVkZTtcXG4jaWZkZWYgVEVSUkFJTjNEXFxudl9nYW1tYV9zY2FsZT0xLjA7XFxuI2Vsc2VcXG5mbG9hdCBleHRydWRlX2xlbmd0aF93aXRob3V0X3BlcnNwZWN0aXZlPWxlbmd0aChkaXN0KTtmbG9hdCBleHRydWRlX2xlbmd0aF93aXRoX3BlcnNwZWN0aXZlPWxlbmd0aChwcm9qZWN0ZWRfZXh0cnVkZS54eS9nbF9Qb3NpdGlvbi53KnVfdW5pdHNfdG9fcGl4ZWxzKTt2X2dhbW1hX3NjYWxlPWV4dHJ1ZGVfbGVuZ3RoX3dpdGhvdXRfcGVyc3BlY3RpdmUvZXh0cnVkZV9sZW5ndGhfd2l0aF9wZXJzcGVjdGl2ZTtcXG4jZW5kaWZcXG52X3dpZHRoMj12ZWMyKG91dHNldCxpbnNldCk7fVwiKSxsaW5lR3JhZGllbnQ6bWUoXCJ1bmlmb3JtIGxvd3AgZmxvYXQgdV9kZXZpY2VfcGl4ZWxfcmF0aW87dW5pZm9ybSBzYW1wbGVyMkQgdV9pbWFnZTt2YXJ5aW5nIHZlYzIgdl93aWR0aDI7dmFyeWluZyB2ZWMyIHZfbm9ybWFsO3ZhcnlpbmcgZmxvYXQgdl9nYW1tYV9zY2FsZTt2YXJ5aW5nIGhpZ2hwIHZlYzIgdl91djtcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGxvd3AgZmxvYXQgYmx1clxcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgbG93cCBmbG9hdCBvcGFjaXR5XFxudm9pZCBtYWluKCkge1xcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGxvd3AgZmxvYXQgYmx1clxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGxvd3AgZmxvYXQgb3BhY2l0eVxcbmZsb2F0IGRpc3Q9bGVuZ3RoKHZfbm9ybWFsKSp2X3dpZHRoMi5zO2Zsb2F0IGJsdXIyPShibHVyKzEuMC91X2RldmljZV9waXhlbF9yYXRpbykqdl9nYW1tYV9zY2FsZTtmbG9hdCBhbHBoYT1jbGFtcChtaW4oZGlzdC0odl93aWR0aDIudC1ibHVyMiksdl93aWR0aDIucy1kaXN0KS9ibHVyMiwwLjAsMS4wKTt2ZWM0IGNvbG9yPXRleHR1cmUyRCh1X2ltYWdlLHZfdXYpO2dsX0ZyYWdDb2xvcj1jb2xvciooYWxwaGEqb3BhY2l0eSk7XFxuI2lmZGVmIE9WRVJEUkFXX0lOU1BFQ1RPUlxcbmdsX0ZyYWdDb2xvcj12ZWM0KDEuMCk7XFxuI2VuZGlmXFxufVwiLFwiXFxuI2RlZmluZSBzY2FsZSAwLjAxNTg3MzAxNlxcbmF0dHJpYnV0ZSB2ZWMyIGFfcG9zX25vcm1hbDthdHRyaWJ1dGUgdmVjNCBhX2RhdGE7YXR0cmlidXRlIGZsb2F0IGFfdXZfeDthdHRyaWJ1dGUgZmxvYXQgYV9zcGxpdF9pbmRleDt1bmlmb3JtIG1hdDQgdV9tYXRyaXg7dW5pZm9ybSBtZWRpdW1wIGZsb2F0IHVfcmF0aW87dW5pZm9ybSBsb3dwIGZsb2F0IHVfZGV2aWNlX3BpeGVsX3JhdGlvO3VuaWZvcm0gdmVjMiB1X3VuaXRzX3RvX3BpeGVsczt1bmlmb3JtIGZsb2F0IHVfaW1hZ2VfaGVpZ2h0O3ZhcnlpbmcgdmVjMiB2X25vcm1hbDt2YXJ5aW5nIHZlYzIgdl93aWR0aDI7dmFyeWluZyBmbG9hdCB2X2dhbW1hX3NjYWxlO3ZhcnlpbmcgaGlnaHAgdmVjMiB2X3V2O1xcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgbG93cCBmbG9hdCBibHVyXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIGZsb2F0IG9wYWNpdHlcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIG1lZGl1bXAgZmxvYXQgZ2Fwd2lkdGhcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGxvd3AgZmxvYXQgb2Zmc2V0XFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBtZWRpdW1wIGZsb2F0IHdpZHRoXFxudm9pZCBtYWluKCkge1xcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGxvd3AgZmxvYXQgYmx1clxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGxvd3AgZmxvYXQgb3BhY2l0eVxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIG1lZGl1bXAgZmxvYXQgZ2Fwd2lkdGhcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBsb3dwIGZsb2F0IG9mZnNldFxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIG1lZGl1bXAgZmxvYXQgd2lkdGhcXG5mbG9hdCBBTlRJQUxJQVNJTkc9MS4wL3VfZGV2aWNlX3BpeGVsX3JhdGlvLzIuMDt2ZWMyIGFfZXh0cnVkZT1hX2RhdGEueHktMTI4LjA7ZmxvYXQgYV9kaXJlY3Rpb249bW9kKGFfZGF0YS56LDQuMCktMS4wO2hpZ2hwIGZsb2F0IHRleGVsX2hlaWdodD0xLjAvdV9pbWFnZV9oZWlnaHQ7aGlnaHAgZmxvYXQgaGFsZl90ZXhlbF9oZWlnaHQ9MC41KnRleGVsX2hlaWdodDt2X3V2PXZlYzIoYV91dl94LGFfc3BsaXRfaW5kZXgqdGV4ZWxfaGVpZ2h0LWhhbGZfdGV4ZWxfaGVpZ2h0KTt2ZWMyIHBvcz1mbG9vcihhX3Bvc19ub3JtYWwqMC41KTttZWRpdW1wIHZlYzIgbm9ybWFsPWFfcG9zX25vcm1hbC0yLjAqcG9zO25vcm1hbC55PW5vcm1hbC55KjIuMC0xLjA7dl9ub3JtYWw9bm9ybWFsO2dhcHdpZHRoPWdhcHdpZHRoLzIuMDtmbG9hdCBoYWxmd2lkdGg9d2lkdGgvMi4wO29mZnNldD0tMS4wKm9mZnNldDtmbG9hdCBpbnNldD1nYXB3aWR0aCsoZ2Fwd2lkdGggPiAwLjAgPyBBTlRJQUxJQVNJTkcgOiAwLjApO2Zsb2F0IG91dHNldD1nYXB3aWR0aCtoYWxmd2lkdGgqKGdhcHdpZHRoID4gMC4wID8gMi4wIDogMS4wKSsoaGFsZndpZHRoPT0wLjAgPyAwLjAgOiBBTlRJQUxJQVNJTkcpO21lZGl1bXAgdmVjMiBkaXN0PW91dHNldCphX2V4dHJ1ZGUqc2NhbGU7bWVkaXVtcCBmbG9hdCB1PTAuNSphX2RpcmVjdGlvbjttZWRpdW1wIGZsb2F0IHQ9MS4wLWFicyh1KTttZWRpdW1wIHZlYzIgb2Zmc2V0Mj1vZmZzZXQqYV9leHRydWRlKnNjYWxlKm5vcm1hbC55Km1hdDIodCwtdSx1LHQpO3ZlYzQgcHJvamVjdGVkX2V4dHJ1ZGU9dV9tYXRyaXgqdmVjNChkaXN0L3VfcmF0aW8sMC4wLDAuMCk7Z2xfUG9zaXRpb249dV9tYXRyaXgqdmVjNChwb3Mrb2Zmc2V0Mi91X3JhdGlvLDAuMCwxLjApK3Byb2plY3RlZF9leHRydWRlO1xcbiNpZmRlZiBURVJSQUlOM0RcXG52X2dhbW1hX3NjYWxlPTEuMDtcXG4jZWxzZVxcbmZsb2F0IGV4dHJ1ZGVfbGVuZ3RoX3dpdGhvdXRfcGVyc3BlY3RpdmU9bGVuZ3RoKGRpc3QpO2Zsb2F0IGV4dHJ1ZGVfbGVuZ3RoX3dpdGhfcGVyc3BlY3RpdmU9bGVuZ3RoKHByb2plY3RlZF9leHRydWRlLnh5L2dsX1Bvc2l0aW9uLncqdV91bml0c190b19waXhlbHMpO3ZfZ2FtbWFfc2NhbGU9ZXh0cnVkZV9sZW5ndGhfd2l0aG91dF9wZXJzcGVjdGl2ZS9leHRydWRlX2xlbmd0aF93aXRoX3BlcnNwZWN0aXZlO1xcbiNlbmRpZlxcbnZfd2lkdGgyPXZlYzIob3V0c2V0LGluc2V0KTt9XCIpLGxpbmVQYXR0ZXJuOm1lKFwiI2lmZGVmIEdMX0VTXFxucHJlY2lzaW9uIGhpZ2hwIGZsb2F0O1xcbiNlbmRpZlxcbnVuaWZvcm0gbG93cCBmbG9hdCB1X2RldmljZV9waXhlbF9yYXRpbzt1bmlmb3JtIHZlYzIgdV90ZXhzaXplO3VuaWZvcm0gZmxvYXQgdV9mYWRlO3VuaWZvcm0gbWVkaXVtcCB2ZWMzIHVfc2NhbGU7dW5pZm9ybSBzYW1wbGVyMkQgdV9pbWFnZTt2YXJ5aW5nIHZlYzIgdl9ub3JtYWw7dmFyeWluZyB2ZWMyIHZfd2lkdGgyO3ZhcnlpbmcgZmxvYXQgdl9saW5lc29mYXI7dmFyeWluZyBmbG9hdCB2X2dhbW1hX3NjYWxlO3ZhcnlpbmcgZmxvYXQgdl93aWR0aDtcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGxvd3AgdmVjNCBwYXR0ZXJuX2Zyb21cXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGxvd3AgdmVjNCBwYXR0ZXJuX3RvXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIGZsb2F0IHBpeGVsX3JhdGlvX2Zyb21cXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGxvd3AgZmxvYXQgcGl4ZWxfcmF0aW9fdG9cXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGxvd3AgZmxvYXQgYmx1clxcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgbG93cCBmbG9hdCBvcGFjaXR5XFxudm9pZCBtYWluKCkge1xcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIG1lZGl1bXAgdmVjNCBwYXR0ZXJuX2Zyb21cXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBtZWRpdW1wIHZlYzQgcGF0dGVybl90b1xcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGxvd3AgZmxvYXQgcGl4ZWxfcmF0aW9fZnJvbVxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGxvd3AgZmxvYXQgcGl4ZWxfcmF0aW9fdG9cXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBsb3dwIGZsb2F0IGJsdXJcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBsb3dwIGZsb2F0IG9wYWNpdHlcXG52ZWMyIHBhdHRlcm5fdGxfYT1wYXR0ZXJuX2Zyb20ueHk7dmVjMiBwYXR0ZXJuX2JyX2E9cGF0dGVybl9mcm9tLnp3O3ZlYzIgcGF0dGVybl90bF9iPXBhdHRlcm5fdG8ueHk7dmVjMiBwYXR0ZXJuX2JyX2I9cGF0dGVybl90by56dztmbG9hdCB0aWxlWm9vbVJhdGlvPXVfc2NhbGUueDtmbG9hdCBmcm9tU2NhbGU9dV9zY2FsZS55O2Zsb2F0IHRvU2NhbGU9dV9zY2FsZS56O3ZlYzIgZGlzcGxheV9zaXplX2E9KHBhdHRlcm5fYnJfYS1wYXR0ZXJuX3RsX2EpL3BpeGVsX3JhdGlvX2Zyb207dmVjMiBkaXNwbGF5X3NpemVfYj0ocGF0dGVybl9icl9iLXBhdHRlcm5fdGxfYikvcGl4ZWxfcmF0aW9fdG87dmVjMiBwYXR0ZXJuX3NpemVfYT12ZWMyKGRpc3BsYXlfc2l6ZV9hLngqZnJvbVNjYWxlL3RpbGVab29tUmF0aW8sZGlzcGxheV9zaXplX2EueSk7dmVjMiBwYXR0ZXJuX3NpemVfYj12ZWMyKGRpc3BsYXlfc2l6ZV9iLngqdG9TY2FsZS90aWxlWm9vbVJhdGlvLGRpc3BsYXlfc2l6ZV9iLnkpO2Zsb2F0IGFzcGVjdF9hPWRpc3BsYXlfc2l6ZV9hLnkvdl93aWR0aDtmbG9hdCBhc3BlY3RfYj1kaXNwbGF5X3NpemVfYi55L3Zfd2lkdGg7ZmxvYXQgZGlzdD1sZW5ndGgodl9ub3JtYWwpKnZfd2lkdGgyLnM7ZmxvYXQgYmx1cjI9KGJsdXIrMS4wL3VfZGV2aWNlX3BpeGVsX3JhdGlvKSp2X2dhbW1hX3NjYWxlO2Zsb2F0IGFscGhhPWNsYW1wKG1pbihkaXN0LSh2X3dpZHRoMi50LWJsdXIyKSx2X3dpZHRoMi5zLWRpc3QpL2JsdXIyLDAuMCwxLjApO2Zsb2F0IHhfYT1tb2Qodl9saW5lc29mYXIvcGF0dGVybl9zaXplX2EueCphc3BlY3RfYSwxLjApO2Zsb2F0IHhfYj1tb2Qodl9saW5lc29mYXIvcGF0dGVybl9zaXplX2IueCphc3BlY3RfYiwxLjApO2Zsb2F0IHk9MC41KnZfbm9ybWFsLnkrMC41O3ZlYzIgdGV4ZWxfc2l6ZT0xLjAvdV90ZXhzaXplO3ZlYzIgcG9zX2E9bWl4KHBhdHRlcm5fdGxfYSp0ZXhlbF9zaXplLXRleGVsX3NpemUscGF0dGVybl9icl9hKnRleGVsX3NpemUrdGV4ZWxfc2l6ZSx2ZWMyKHhfYSx5KSk7dmVjMiBwb3NfYj1taXgocGF0dGVybl90bF9iKnRleGVsX3NpemUtdGV4ZWxfc2l6ZSxwYXR0ZXJuX2JyX2IqdGV4ZWxfc2l6ZSt0ZXhlbF9zaXplLHZlYzIoeF9iLHkpKTt2ZWM0IGNvbG9yPW1peCh0ZXh0dXJlMkQodV9pbWFnZSxwb3NfYSksdGV4dHVyZTJEKHVfaW1hZ2UscG9zX2IpLHVfZmFkZSk7Z2xfRnJhZ0NvbG9yPWNvbG9yKmFscGhhKm9wYWNpdHk7XFxuI2lmZGVmIE9WRVJEUkFXX0lOU1BFQ1RPUlxcbmdsX0ZyYWdDb2xvcj12ZWM0KDEuMCk7XFxuI2VuZGlmXFxufVwiLFwiXFxuI2RlZmluZSBzY2FsZSAwLjAxNTg3MzAxNlxcbiNkZWZpbmUgTElORV9ESVNUQU5DRV9TQ0FMRSAyLjBcXG5hdHRyaWJ1dGUgdmVjMiBhX3Bvc19ub3JtYWw7YXR0cmlidXRlIHZlYzQgYV9kYXRhO3VuaWZvcm0gbWF0NCB1X21hdHJpeDt1bmlmb3JtIHZlYzIgdV91bml0c190b19waXhlbHM7dW5pZm9ybSBtZWRpdW1wIGZsb2F0IHVfcmF0aW87dW5pZm9ybSBsb3dwIGZsb2F0IHVfZGV2aWNlX3BpeGVsX3JhdGlvO3ZhcnlpbmcgdmVjMiB2X25vcm1hbDt2YXJ5aW5nIHZlYzIgdl93aWR0aDI7dmFyeWluZyBmbG9hdCB2X2xpbmVzb2Zhcjt2YXJ5aW5nIGZsb2F0IHZfZ2FtbWFfc2NhbGU7dmFyeWluZyBmbG9hdCB2X3dpZHRoO1xcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgbG93cCBmbG9hdCBibHVyXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIGZsb2F0IG9wYWNpdHlcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGxvd3AgZmxvYXQgb2Zmc2V0XFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBtZWRpdW1wIGZsb2F0IGdhcHdpZHRoXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBtZWRpdW1wIGZsb2F0IHdpZHRoXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIGZsb2F0IGZsb29yd2lkdGhcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGxvd3AgdmVjNCBwYXR0ZXJuX2Zyb21cXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGxvd3AgdmVjNCBwYXR0ZXJuX3RvXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIGZsb2F0IHBpeGVsX3JhdGlvX2Zyb21cXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGxvd3AgZmxvYXQgcGl4ZWxfcmF0aW9fdG9cXG52b2lkIG1haW4oKSB7XFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbG93cCBmbG9hdCBibHVyXFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbG93cCBmbG9hdCBvcGFjaXR5XFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbG93cCBmbG9hdCBvZmZzZXRcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBtZWRpdW1wIGZsb2F0IGdhcHdpZHRoXFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbWVkaXVtcCBmbG9hdCB3aWR0aFxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGxvd3AgZmxvYXQgZmxvb3J3aWR0aFxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIG1lZGl1bXAgdmVjNCBwYXR0ZXJuX2Zyb21cXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBtZWRpdW1wIHZlYzQgcGF0dGVybl90b1xcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGxvd3AgZmxvYXQgcGl4ZWxfcmF0aW9fZnJvbVxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGxvd3AgZmxvYXQgcGl4ZWxfcmF0aW9fdG9cXG5mbG9hdCBBTlRJQUxJQVNJTkc9MS4wL3VfZGV2aWNlX3BpeGVsX3JhdGlvLzIuMDt2ZWMyIGFfZXh0cnVkZT1hX2RhdGEueHktMTI4LjA7ZmxvYXQgYV9kaXJlY3Rpb249bW9kKGFfZGF0YS56LDQuMCktMS4wO2Zsb2F0IGFfbGluZXNvZmFyPShmbG9vcihhX2RhdGEuei80LjApK2FfZGF0YS53KjY0LjApKkxJTkVfRElTVEFOQ0VfU0NBTEU7dmVjMiBwb3M9Zmxvb3IoYV9wb3Nfbm9ybWFsKjAuNSk7bWVkaXVtcCB2ZWMyIG5vcm1hbD1hX3Bvc19ub3JtYWwtMi4wKnBvcztub3JtYWwueT1ub3JtYWwueSoyLjAtMS4wO3Zfbm9ybWFsPW5vcm1hbDtnYXB3aWR0aD1nYXB3aWR0aC8yLjA7ZmxvYXQgaGFsZndpZHRoPXdpZHRoLzIuMDtvZmZzZXQ9LTEuMCpvZmZzZXQ7ZmxvYXQgaW5zZXQ9Z2Fwd2lkdGgrKGdhcHdpZHRoID4gMC4wID8gQU5USUFMSUFTSU5HIDogMC4wKTtmbG9hdCBvdXRzZXQ9Z2Fwd2lkdGgraGFsZndpZHRoKihnYXB3aWR0aCA+IDAuMCA/IDIuMCA6IDEuMCkrKGhhbGZ3aWR0aD09MC4wID8gMC4wIDogQU5USUFMSUFTSU5HKTttZWRpdW1wIHZlYzIgZGlzdD1vdXRzZXQqYV9leHRydWRlKnNjYWxlO21lZGl1bXAgZmxvYXQgdT0wLjUqYV9kaXJlY3Rpb247bWVkaXVtcCBmbG9hdCB0PTEuMC1hYnModSk7bWVkaXVtcCB2ZWMyIG9mZnNldDI9b2Zmc2V0KmFfZXh0cnVkZSpzY2FsZSpub3JtYWwueSptYXQyKHQsLXUsdSx0KTt2ZWM0IHByb2plY3RlZF9leHRydWRlPXVfbWF0cml4KnZlYzQoZGlzdC91X3JhdGlvLDAuMCwwLjApO2dsX1Bvc2l0aW9uPXVfbWF0cml4KnZlYzQocG9zK29mZnNldDIvdV9yYXRpbywwLjAsMS4wKStwcm9qZWN0ZWRfZXh0cnVkZTtcXG4jaWZkZWYgVEVSUkFJTjNEXFxudl9nYW1tYV9zY2FsZT0xLjA7XFxuI2Vsc2VcXG5mbG9hdCBleHRydWRlX2xlbmd0aF93aXRob3V0X3BlcnNwZWN0aXZlPWxlbmd0aChkaXN0KTtmbG9hdCBleHRydWRlX2xlbmd0aF93aXRoX3BlcnNwZWN0aXZlPWxlbmd0aChwcm9qZWN0ZWRfZXh0cnVkZS54eS9nbF9Qb3NpdGlvbi53KnVfdW5pdHNfdG9fcGl4ZWxzKTt2X2dhbW1hX3NjYWxlPWV4dHJ1ZGVfbGVuZ3RoX3dpdGhvdXRfcGVyc3BlY3RpdmUvZXh0cnVkZV9sZW5ndGhfd2l0aF9wZXJzcGVjdGl2ZTtcXG4jZW5kaWZcXG52X2xpbmVzb2Zhcj1hX2xpbmVzb2Zhcjt2X3dpZHRoMj12ZWMyKG91dHNldCxpbnNldCk7dl93aWR0aD1mbG9vcndpZHRoO31cIiksbGluZVNERjptZShcInVuaWZvcm0gbG93cCBmbG9hdCB1X2RldmljZV9waXhlbF9yYXRpbzt1bmlmb3JtIHNhbXBsZXIyRCB1X2ltYWdlO3VuaWZvcm0gZmxvYXQgdV9zZGZnYW1tYTt1bmlmb3JtIGZsb2F0IHVfbWl4O3ZhcnlpbmcgdmVjMiB2X25vcm1hbDt2YXJ5aW5nIHZlYzIgdl93aWR0aDI7dmFyeWluZyB2ZWMyIHZfdGV4X2E7dmFyeWluZyB2ZWMyIHZfdGV4X2I7dmFyeWluZyBmbG9hdCB2X2dhbW1hX3NjYWxlO1xcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgaGlnaHAgdmVjNCBjb2xvclxcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgbG93cCBmbG9hdCBibHVyXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIGZsb2F0IG9wYWNpdHlcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIG1lZGl1bXAgZmxvYXQgd2lkdGhcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGxvd3AgZmxvYXQgZmxvb3J3aWR0aFxcbnZvaWQgbWFpbigpIHtcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBoaWdocCB2ZWM0IGNvbG9yXFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbG93cCBmbG9hdCBibHVyXFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbG93cCBmbG9hdCBvcGFjaXR5XFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbWVkaXVtcCBmbG9hdCB3aWR0aFxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGxvd3AgZmxvYXQgZmxvb3J3aWR0aFxcbmZsb2F0IGRpc3Q9bGVuZ3RoKHZfbm9ybWFsKSp2X3dpZHRoMi5zO2Zsb2F0IGJsdXIyPShibHVyKzEuMC91X2RldmljZV9waXhlbF9yYXRpbykqdl9nYW1tYV9zY2FsZTtmbG9hdCBhbHBoYT1jbGFtcChtaW4oZGlzdC0odl93aWR0aDIudC1ibHVyMiksdl93aWR0aDIucy1kaXN0KS9ibHVyMiwwLjAsMS4wKTtmbG9hdCBzZGZkaXN0X2E9dGV4dHVyZTJEKHVfaW1hZ2Usdl90ZXhfYSkuYTtmbG9hdCBzZGZkaXN0X2I9dGV4dHVyZTJEKHVfaW1hZ2Usdl90ZXhfYikuYTtmbG9hdCBzZGZkaXN0PW1peChzZGZkaXN0X2Esc2RmZGlzdF9iLHVfbWl4KTthbHBoYSo9c21vb3Roc3RlcCgwLjUtdV9zZGZnYW1tYS9mbG9vcndpZHRoLDAuNSt1X3NkZmdhbW1hL2Zsb29yd2lkdGgsc2RmZGlzdCk7Z2xfRnJhZ0NvbG9yPWNvbG9yKihhbHBoYSpvcGFjaXR5KTtcXG4jaWZkZWYgT1ZFUkRSQVdfSU5TUEVDVE9SXFxuZ2xfRnJhZ0NvbG9yPXZlYzQoMS4wKTtcXG4jZW5kaWZcXG59XCIsXCJcXG4jZGVmaW5lIHNjYWxlIDAuMDE1ODczMDE2XFxuI2RlZmluZSBMSU5FX0RJU1RBTkNFX1NDQUxFIDIuMFxcbmF0dHJpYnV0ZSB2ZWMyIGFfcG9zX25vcm1hbDthdHRyaWJ1dGUgdmVjNCBhX2RhdGE7dW5pZm9ybSBtYXQ0IHVfbWF0cml4O3VuaWZvcm0gbWVkaXVtcCBmbG9hdCB1X3JhdGlvO3VuaWZvcm0gbG93cCBmbG9hdCB1X2RldmljZV9waXhlbF9yYXRpbzt1bmlmb3JtIHZlYzIgdV9wYXR0ZXJuc2NhbGVfYTt1bmlmb3JtIGZsb2F0IHVfdGV4X3lfYTt1bmlmb3JtIHZlYzIgdV9wYXR0ZXJuc2NhbGVfYjt1bmlmb3JtIGZsb2F0IHVfdGV4X3lfYjt1bmlmb3JtIHZlYzIgdV91bml0c190b19waXhlbHM7dmFyeWluZyB2ZWMyIHZfbm9ybWFsO3ZhcnlpbmcgdmVjMiB2X3dpZHRoMjt2YXJ5aW5nIHZlYzIgdl90ZXhfYTt2YXJ5aW5nIHZlYzIgdl90ZXhfYjt2YXJ5aW5nIGZsb2F0IHZfZ2FtbWFfc2NhbGU7XFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBoaWdocCB2ZWM0IGNvbG9yXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIGZsb2F0IGJsdXJcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGxvd3AgZmxvYXQgb3BhY2l0eVxcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgbWVkaXVtcCBmbG9hdCBnYXB3aWR0aFxcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgbG93cCBmbG9hdCBvZmZzZXRcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIG1lZGl1bXAgZmxvYXQgd2lkdGhcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGxvd3AgZmxvYXQgZmxvb3J3aWR0aFxcbnZvaWQgbWFpbigpIHtcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBoaWdocCB2ZWM0IGNvbG9yXFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbG93cCBmbG9hdCBibHVyXFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbG93cCBmbG9hdCBvcGFjaXR5XFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbWVkaXVtcCBmbG9hdCBnYXB3aWR0aFxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGxvd3AgZmxvYXQgb2Zmc2V0XFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbWVkaXVtcCBmbG9hdCB3aWR0aFxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGxvd3AgZmxvYXQgZmxvb3J3aWR0aFxcbmZsb2F0IEFOVElBTElBU0lORz0xLjAvdV9kZXZpY2VfcGl4ZWxfcmF0aW8vMi4wO3ZlYzIgYV9leHRydWRlPWFfZGF0YS54eS0xMjguMDtmbG9hdCBhX2RpcmVjdGlvbj1tb2QoYV9kYXRhLnosNC4wKS0xLjA7ZmxvYXQgYV9saW5lc29mYXI9KGZsb29yKGFfZGF0YS56LzQuMCkrYV9kYXRhLncqNjQuMCkqTElORV9ESVNUQU5DRV9TQ0FMRTt2ZWMyIHBvcz1mbG9vcihhX3Bvc19ub3JtYWwqMC41KTttZWRpdW1wIHZlYzIgbm9ybWFsPWFfcG9zX25vcm1hbC0yLjAqcG9zO25vcm1hbC55PW5vcm1hbC55KjIuMC0xLjA7dl9ub3JtYWw9bm9ybWFsO2dhcHdpZHRoPWdhcHdpZHRoLzIuMDtmbG9hdCBoYWxmd2lkdGg9d2lkdGgvMi4wO29mZnNldD0tMS4wKm9mZnNldDtmbG9hdCBpbnNldD1nYXB3aWR0aCsoZ2Fwd2lkdGggPiAwLjAgPyBBTlRJQUxJQVNJTkcgOiAwLjApO2Zsb2F0IG91dHNldD1nYXB3aWR0aCtoYWxmd2lkdGgqKGdhcHdpZHRoID4gMC4wID8gMi4wIDogMS4wKSsoaGFsZndpZHRoPT0wLjAgPyAwLjAgOiBBTlRJQUxJQVNJTkcpO21lZGl1bXAgdmVjMiBkaXN0PW91dHNldCphX2V4dHJ1ZGUqc2NhbGU7bWVkaXVtcCBmbG9hdCB1PTAuNSphX2RpcmVjdGlvbjttZWRpdW1wIGZsb2F0IHQ9MS4wLWFicyh1KTttZWRpdW1wIHZlYzIgb2Zmc2V0Mj1vZmZzZXQqYV9leHRydWRlKnNjYWxlKm5vcm1hbC55Km1hdDIodCwtdSx1LHQpO3ZlYzQgcHJvamVjdGVkX2V4dHJ1ZGU9dV9tYXRyaXgqdmVjNChkaXN0L3VfcmF0aW8sMC4wLDAuMCk7Z2xfUG9zaXRpb249dV9tYXRyaXgqdmVjNChwb3Mrb2Zmc2V0Mi91X3JhdGlvLDAuMCwxLjApK3Byb2plY3RlZF9leHRydWRlO1xcbiNpZmRlZiBURVJSQUlOM0RcXG52X2dhbW1hX3NjYWxlPTEuMDtcXG4jZWxzZVxcbmZsb2F0IGV4dHJ1ZGVfbGVuZ3RoX3dpdGhvdXRfcGVyc3BlY3RpdmU9bGVuZ3RoKGRpc3QpO2Zsb2F0IGV4dHJ1ZGVfbGVuZ3RoX3dpdGhfcGVyc3BlY3RpdmU9bGVuZ3RoKHByb2plY3RlZF9leHRydWRlLnh5L2dsX1Bvc2l0aW9uLncqdV91bml0c190b19waXhlbHMpO3ZfZ2FtbWFfc2NhbGU9ZXh0cnVkZV9sZW5ndGhfd2l0aG91dF9wZXJzcGVjdGl2ZS9leHRydWRlX2xlbmd0aF93aXRoX3BlcnNwZWN0aXZlO1xcbiNlbmRpZlxcbnZfdGV4X2E9dmVjMihhX2xpbmVzb2Zhcip1X3BhdHRlcm5zY2FsZV9hLngvZmxvb3J3aWR0aCxub3JtYWwueSp1X3BhdHRlcm5zY2FsZV9hLnkrdV90ZXhfeV9hKTt2X3RleF9iPXZlYzIoYV9saW5lc29mYXIqdV9wYXR0ZXJuc2NhbGVfYi54L2Zsb29yd2lkdGgsbm9ybWFsLnkqdV9wYXR0ZXJuc2NhbGVfYi55K3VfdGV4X3lfYik7dl93aWR0aDI9dmVjMihvdXRzZXQsaW5zZXQpO31cIikscmFzdGVyOm1lKFwidW5pZm9ybSBmbG9hdCB1X2ZhZGVfdDt1bmlmb3JtIGZsb2F0IHVfb3BhY2l0eTt1bmlmb3JtIHNhbXBsZXIyRCB1X2ltYWdlMDt1bmlmb3JtIHNhbXBsZXIyRCB1X2ltYWdlMTt2YXJ5aW5nIHZlYzIgdl9wb3MwO3ZhcnlpbmcgdmVjMiB2X3BvczE7dW5pZm9ybSBmbG9hdCB1X2JyaWdodG5lc3NfbG93O3VuaWZvcm0gZmxvYXQgdV9icmlnaHRuZXNzX2hpZ2g7dW5pZm9ybSBmbG9hdCB1X3NhdHVyYXRpb25fZmFjdG9yO3VuaWZvcm0gZmxvYXQgdV9jb250cmFzdF9mYWN0b3I7dW5pZm9ybSB2ZWMzIHVfc3Bpbl93ZWlnaHRzO3ZvaWQgbWFpbigpIHt2ZWM0IGNvbG9yMD10ZXh0dXJlMkQodV9pbWFnZTAsdl9wb3MwKTt2ZWM0IGNvbG9yMT10ZXh0dXJlMkQodV9pbWFnZTEsdl9wb3MxKTtpZiAoY29sb3IwLmEgPiAwLjApIHtjb2xvcjAucmdiPWNvbG9yMC5yZ2IvY29sb3IwLmE7fWlmIChjb2xvcjEuYSA+IDAuMCkge2NvbG9yMS5yZ2I9Y29sb3IxLnJnYi9jb2xvcjEuYTt9dmVjNCBjb2xvcj1taXgoY29sb3IwLGNvbG9yMSx1X2ZhZGVfdCk7Y29sb3IuYSo9dV9vcGFjaXR5O3ZlYzMgcmdiPWNvbG9yLnJnYjtyZ2I9dmVjMyhkb3QocmdiLHVfc3Bpbl93ZWlnaHRzLnh5eiksZG90KHJnYix1X3NwaW5fd2VpZ2h0cy56eHkpLGRvdChyZ2IsdV9zcGluX3dlaWdodHMueXp4KSk7ZmxvYXQgYXZlcmFnZT0oY29sb3Iucitjb2xvci5nK2NvbG9yLmIpLzMuMDtyZ2IrPShhdmVyYWdlLXJnYikqdV9zYXR1cmF0aW9uX2ZhY3RvcjtyZ2I9KHJnYi0wLjUpKnVfY29udHJhc3RfZmFjdG9yKzAuNTt2ZWMzIHVfaGlnaF92ZWM9dmVjMyh1X2JyaWdodG5lc3NfbG93LHVfYnJpZ2h0bmVzc19sb3csdV9icmlnaHRuZXNzX2xvdyk7dmVjMyB1X2xvd192ZWM9dmVjMyh1X2JyaWdodG5lc3NfaGlnaCx1X2JyaWdodG5lc3NfaGlnaCx1X2JyaWdodG5lc3NfaGlnaCk7Z2xfRnJhZ0NvbG9yPXZlYzQobWl4KHVfaGlnaF92ZWMsdV9sb3dfdmVjLHJnYikqY29sb3IuYSxjb2xvci5hKTtcXG4jaWZkZWYgT1ZFUkRSQVdfSU5TUEVDVE9SXFxuZ2xfRnJhZ0NvbG9yPXZlYzQoMS4wKTtcXG4jZW5kaWZcXG59XCIsXCJ1bmlmb3JtIG1hdDQgdV9tYXRyaXg7dW5pZm9ybSB2ZWMyIHVfdGxfcGFyZW50O3VuaWZvcm0gZmxvYXQgdV9zY2FsZV9wYXJlbnQ7dW5pZm9ybSBmbG9hdCB1X2J1ZmZlcl9zY2FsZTthdHRyaWJ1dGUgdmVjMiBhX3BvczthdHRyaWJ1dGUgdmVjMiBhX3RleHR1cmVfcG9zO3ZhcnlpbmcgdmVjMiB2X3BvczA7dmFyeWluZyB2ZWMyIHZfcG9zMTt2b2lkIG1haW4oKSB7Z2xfUG9zaXRpb249dV9tYXRyaXgqdmVjNChhX3BvcywwLDEpO3ZfcG9zMD0oKChhX3RleHR1cmVfcG9zLzgxOTIuMCktMC41KS91X2J1ZmZlcl9zY2FsZSApKzAuNTt2X3BvczE9KHZfcG9zMCp1X3NjYWxlX3BhcmVudCkrdV90bF9wYXJlbnQ7fVwiKSxzeW1ib2xJY29uOm1lKFwidW5pZm9ybSBzYW1wbGVyMkQgdV90ZXh0dXJlO3ZhcnlpbmcgdmVjMiB2X3RleDt2YXJ5aW5nIGZsb2F0IHZfZmFkZV9vcGFjaXR5O1xcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgbG93cCBmbG9hdCBvcGFjaXR5XFxudm9pZCBtYWluKCkge1xcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGxvd3AgZmxvYXQgb3BhY2l0eVxcbmxvd3AgZmxvYXQgYWxwaGE9b3BhY2l0eSp2X2ZhZGVfb3BhY2l0eTtnbF9GcmFnQ29sb3I9dGV4dHVyZTJEKHVfdGV4dHVyZSx2X3RleCkqYWxwaGE7XFxuI2lmZGVmIE9WRVJEUkFXX0lOU1BFQ1RPUlxcbmdsX0ZyYWdDb2xvcj12ZWM0KDEuMCk7XFxuI2VuZGlmXFxufVwiLFwiYXR0cmlidXRlIHZlYzQgYV9wb3Nfb2Zmc2V0O2F0dHJpYnV0ZSB2ZWM0IGFfZGF0YTthdHRyaWJ1dGUgdmVjNCBhX3BpeGVsb2Zmc2V0O2F0dHJpYnV0ZSB2ZWMzIGFfcHJvamVjdGVkX3BvczthdHRyaWJ1dGUgZmxvYXQgYV9mYWRlX29wYWNpdHk7dW5pZm9ybSBib29sIHVfaXNfc2l6ZV96b29tX2NvbnN0YW50O3VuaWZvcm0gYm9vbCB1X2lzX3NpemVfZmVhdHVyZV9jb25zdGFudDt1bmlmb3JtIGhpZ2hwIGZsb2F0IHVfc2l6ZV90O3VuaWZvcm0gaGlnaHAgZmxvYXQgdV9zaXplO3VuaWZvcm0gaGlnaHAgZmxvYXQgdV9jYW1lcmFfdG9fY2VudGVyX2Rpc3RhbmNlO3VuaWZvcm0gaGlnaHAgZmxvYXQgdV9waXRjaDt1bmlmb3JtIGJvb2wgdV9yb3RhdGVfc3ltYm9sO3VuaWZvcm0gaGlnaHAgZmxvYXQgdV9hc3BlY3RfcmF0aW87dW5pZm9ybSBmbG9hdCB1X2ZhZGVfY2hhbmdlO3VuaWZvcm0gbWF0NCB1X21hdHJpeDt1bmlmb3JtIG1hdDQgdV9sYWJlbF9wbGFuZV9tYXRyaXg7dW5pZm9ybSBtYXQ0IHVfY29vcmRfbWF0cml4O3VuaWZvcm0gYm9vbCB1X2lzX3RleHQ7dW5pZm9ybSBib29sIHVfcGl0Y2hfd2l0aF9tYXA7dW5pZm9ybSB2ZWMyIHVfdGV4c2l6ZTt1bmlmb3JtIGJvb2wgdV9pc19hbG9uZ19saW5lO3VuaWZvcm0gYm9vbCB1X2lzX3ZhcmlhYmxlX2FuY2hvcjt1bmlmb3JtIHZlYzIgdV90cmFuc2xhdGlvbjt1bmlmb3JtIGZsb2F0IHVfcGl0Y2hlZF9zY2FsZTt2YXJ5aW5nIHZlYzIgdl90ZXg7dmFyeWluZyBmbG9hdCB2X2ZhZGVfb3BhY2l0eTt2ZWM0IHByb2plY3RUaWxlV2l0aEVsZXZhdGlvbih2ZWMyIHBvc0luVGlsZSxmbG9hdCBlbGV2YXRpb24pIHtyZXR1cm4gdV9tYXRyaXgqdmVjNChwb3NJblRpbGUsZWxldmF0aW9uLDEuMCk7fVxcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgbG93cCBmbG9hdCBvcGFjaXR5XFxudm9pZCBtYWluKCkge1xcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGxvd3AgZmxvYXQgb3BhY2l0eVxcbnZlYzIgYV9wb3M9YV9wb3Nfb2Zmc2V0Lnh5O3ZlYzIgYV9vZmZzZXQ9YV9wb3Nfb2Zmc2V0Lnp3O3ZlYzIgYV90ZXg9YV9kYXRhLnh5O3ZlYzIgYV9zaXplPWFfZGF0YS56dztmbG9hdCBhX3NpemVfbWluPWZsb29yKGFfc2l6ZVswXSowLjUpO3ZlYzIgYV9weG9mZnNldD1hX3BpeGVsb2Zmc2V0Lnh5O3ZlYzIgYV9taW5Gb250U2NhbGU9YV9waXhlbG9mZnNldC56dy8yNTYuMDtmbG9hdCBlbGU9Z2V0X2VsZXZhdGlvbihhX3Bvcyk7aGlnaHAgZmxvYXQgc2VnbWVudF9hbmdsZT0tYV9wcm9qZWN0ZWRfcG9zWzJdO2Zsb2F0IHNpemU7aWYgKCF1X2lzX3NpemVfem9vbV9jb25zdGFudCAmJiAhdV9pc19zaXplX2ZlYXR1cmVfY29uc3RhbnQpIHtzaXplPW1peChhX3NpemVfbWluLGFfc2l6ZVsxXSx1X3NpemVfdCkvMTI4LjA7fSBlbHNlIGlmICh1X2lzX3NpemVfem9vbV9jb25zdGFudCAmJiAhdV9pc19zaXplX2ZlYXR1cmVfY29uc3RhbnQpIHtzaXplPWFfc2l6ZV9taW4vMTI4LjA7fSBlbHNlIHtzaXplPXVfc2l6ZTt9dmVjMiB0cmFuc2xhdGVkX2FfcG9zPWFfcG9zK3VfdHJhbnNsYXRpb247dmVjNCBwcm9qZWN0ZWRQb2ludD1wcm9qZWN0VGlsZVdpdGhFbGV2YXRpb24odHJhbnNsYXRlZF9hX3BvcyxlbGUpO2hpZ2hwIGZsb2F0IGNhbWVyYV90b19hbmNob3JfZGlzdGFuY2U9cHJvamVjdGVkUG9pbnQudztoaWdocCBmbG9hdCBkaXN0YW5jZV9yYXRpbz11X3BpdGNoX3dpdGhfbWFwID9cXG5jYW1lcmFfdG9fYW5jaG9yX2Rpc3RhbmNlL3VfY2FtZXJhX3RvX2NlbnRlcl9kaXN0YW5jZSA6XFxudV9jYW1lcmFfdG9fY2VudGVyX2Rpc3RhbmNlL2NhbWVyYV90b19hbmNob3JfZGlzdGFuY2U7aGlnaHAgZmxvYXQgcGVyc3BlY3RpdmVfcmF0aW89Y2xhbXAoMC41KzAuNSpkaXN0YW5jZV9yYXRpbywwLjAsNC4wKTtzaXplKj1wZXJzcGVjdGl2ZV9yYXRpbztmbG9hdCBmb250U2NhbGU9dV9pc190ZXh0ID8gc2l6ZS8yNC4wIDogc2l6ZTtoaWdocCBmbG9hdCBzeW1ib2xfcm90YXRpb249MC4wO2lmICh1X3JvdGF0ZV9zeW1ib2wpIHt2ZWM0IG9mZnNldFByb2plY3RlZFBvaW50PXByb2plY3RUaWxlV2l0aEVsZXZhdGlvbih0cmFuc2xhdGVkX2FfcG9zK3ZlYzIoMSwwKSxlbGUpO3ZlYzIgYT1wcm9qZWN0ZWRQb2ludC54eS9wcm9qZWN0ZWRQb2ludC53O3ZlYzIgYj1vZmZzZXRQcm9qZWN0ZWRQb2ludC54eS9vZmZzZXRQcm9qZWN0ZWRQb2ludC53O3N5bWJvbF9yb3RhdGlvbj1hdGFuKChiLnktYS55KS91X2FzcGVjdF9yYXRpbyxiLngtYS54KTt9aGlnaHAgZmxvYXQgYW5nbGVfc2luPXNpbihzZWdtZW50X2FuZ2xlK3N5bWJvbF9yb3RhdGlvbik7aGlnaHAgZmxvYXQgYW5nbGVfY29zPWNvcyhzZWdtZW50X2FuZ2xlK3N5bWJvbF9yb3RhdGlvbik7bWF0MiByb3RhdGlvbl9tYXRyaXg9bWF0MihhbmdsZV9jb3MsLTEuMCphbmdsZV9zaW4sYW5nbGVfc2luLGFuZ2xlX2Nvcyk7dmVjNCBwcm9qZWN0ZWRfcG9zO2lmICh1X2lzX2Fsb25nX2xpbmUgfHwgdV9pc192YXJpYWJsZV9hbmNob3IpIHtwcm9qZWN0ZWRfcG9zPXZlYzQoYV9wcm9qZWN0ZWRfcG9zLnh5LGVsZSwxLjApO30gZWxzZSBpZiAodV9waXRjaF93aXRoX21hcCkge3Byb2plY3RlZF9wb3M9dV9sYWJlbF9wbGFuZV9tYXRyaXgqdmVjNChhX3Byb2plY3RlZF9wb3MueHkrdV90cmFuc2xhdGlvbixlbGUsMS4wKTt9IGVsc2Uge3Byb2plY3RlZF9wb3M9dV9sYWJlbF9wbGFuZV9tYXRyaXgqcHJvamVjdFRpbGVXaXRoRWxldmF0aW9uKGFfcHJvamVjdGVkX3Bvcy54eSt1X3RyYW5zbGF0aW9uLGVsZSk7fWZsb2F0IHo9ZmxvYXQodV9waXRjaF93aXRoX21hcCkqcHJvamVjdGVkX3Bvcy56L3Byb2plY3RlZF9wb3MudztmbG9hdCBwcm9qZWN0aW9uU2NhbGluZz0xLjA7dmVjNCBmaW5hbFBvcz11X2Nvb3JkX21hdHJpeCp2ZWM0KHByb2plY3RlZF9wb3MueHkvcHJvamVjdGVkX3Bvcy53K3JvdGF0aW9uX21hdHJpeCooYV9vZmZzZXQvMzIuMCptYXgoYV9taW5Gb250U2NhbGUsZm9udFNjYWxlKSthX3B4b2Zmc2V0LzE2LjApKnByb2plY3Rpb25TY2FsaW5nLHosMS4wKTtpZih1X3BpdGNoX3dpdGhfbWFwKSB7ZmluYWxQb3M9cHJvamVjdFRpbGVXaXRoRWxldmF0aW9uKGZpbmFsUG9zLnh5LGZpbmFsUG9zLnopO31nbF9Qb3NpdGlvbj1maW5hbFBvczt2X3RleD1hX3RleC91X3RleHNpemU7dmVjMiBmYWRlX29wYWNpdHk9dW5wYWNrX29wYWNpdHkoYV9mYWRlX29wYWNpdHkpO2Zsb2F0IGZhZGVfY2hhbmdlPWZhZGVfb3BhY2l0eVsxXSA+IDAuNSA/IHVfZmFkZV9jaGFuZ2UgOi11X2ZhZGVfY2hhbmdlO2Zsb2F0IHZpc2liaWxpdHk9Y2FsY3VsYXRlX3Zpc2liaWxpdHkocHJvamVjdGVkUG9pbnQpO3ZfZmFkZV9vcGFjaXR5PW1heCgwLjAsbWluKHZpc2liaWxpdHksZmFkZV9vcGFjaXR5WzBdK2ZhZGVfY2hhbmdlKSk7fVwiKSxzeW1ib2xTREY6bWUoXCIjZGVmaW5lIFNERl9QWCA4LjBcXG51bmlmb3JtIGJvb2wgdV9pc19oYWxvO3VuaWZvcm0gc2FtcGxlcjJEIHVfdGV4dHVyZTt1bmlmb3JtIGhpZ2hwIGZsb2F0IHVfZ2FtbWFfc2NhbGU7dW5pZm9ybSBsb3dwIGZsb2F0IHVfZGV2aWNlX3BpeGVsX3JhdGlvO3VuaWZvcm0gYm9vbCB1X2lzX3RleHQ7dmFyeWluZyB2ZWMyIHZfZGF0YTA7dmFyeWluZyB2ZWMzIHZfZGF0YTE7XFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBoaWdocCB2ZWM0IGZpbGxfY29sb3JcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGhpZ2hwIHZlYzQgaGFsb19jb2xvclxcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgbG93cCBmbG9hdCBvcGFjaXR5XFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIGZsb2F0IGhhbG9fd2lkdGhcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGxvd3AgZmxvYXQgaGFsb19ibHVyXFxudm9pZCBtYWluKCkge1xcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGhpZ2hwIHZlYzQgZmlsbF9jb2xvclxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGhpZ2hwIHZlYzQgaGFsb19jb2xvclxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGxvd3AgZmxvYXQgb3BhY2l0eVxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGxvd3AgZmxvYXQgaGFsb193aWR0aFxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGxvd3AgZmxvYXQgaGFsb19ibHVyXFxuZmxvYXQgRURHRV9HQU1NQT0wLjEwNS91X2RldmljZV9waXhlbF9yYXRpbzt2ZWMyIHRleD12X2RhdGEwLnh5O2Zsb2F0IGdhbW1hX3NjYWxlPXZfZGF0YTEueDtmbG9hdCBzaXplPXZfZGF0YTEueTtmbG9hdCBmYWRlX29wYWNpdHk9dl9kYXRhMVsyXTtmbG9hdCBmb250U2NhbGU9dV9pc190ZXh0ID8gc2l6ZS8yNC4wIDogc2l6ZTtsb3dwIHZlYzQgY29sb3I9ZmlsbF9jb2xvcjtoaWdocCBmbG9hdCBnYW1tYT1FREdFX0dBTU1BLyhmb250U2NhbGUqdV9nYW1tYV9zY2FsZSk7bG93cCBmbG9hdCBpbm5lcl9lZGdlPSgyNTYuMC02NC4wKS8yNTYuMDtpZiAodV9pc19oYWxvKSB7Y29sb3I9aGFsb19jb2xvcjtnYW1tYT0oaGFsb19ibHVyKjEuMTkvU0RGX1BYK0VER0VfR0FNTUEpLyhmb250U2NhbGUqdV9nYW1tYV9zY2FsZSk7aW5uZXJfZWRnZT1pbm5lcl9lZGdlK2dhbW1hKmdhbW1hX3NjYWxlO31sb3dwIGZsb2F0IGRpc3Q9dGV4dHVyZTJEKHVfdGV4dHVyZSx0ZXgpLmE7aGlnaHAgZmxvYXQgZ2FtbWFfc2NhbGVkPWdhbW1hKmdhbW1hX3NjYWxlO2hpZ2hwIGZsb2F0IGFscGhhPXNtb290aHN0ZXAoaW5uZXJfZWRnZS1nYW1tYV9zY2FsZWQsaW5uZXJfZWRnZStnYW1tYV9zY2FsZWQsZGlzdCk7aWYgKHVfaXNfaGFsbykge2xvd3AgZmxvYXQgaGFsb19lZGdlPSg2LjAtaGFsb193aWR0aC9mb250U2NhbGUpL1NERl9QWDthbHBoYT1taW4oc21vb3Roc3RlcChoYWxvX2VkZ2UtZ2FtbWFfc2NhbGVkLGhhbG9fZWRnZStnYW1tYV9zY2FsZWQsZGlzdCksMS4wLWFscGhhKTt9Z2xfRnJhZ0NvbG9yPWNvbG9yKihhbHBoYSpvcGFjaXR5KmZhZGVfb3BhY2l0eSk7XFxuI2lmZGVmIE9WRVJEUkFXX0lOU1BFQ1RPUlxcbmdsX0ZyYWdDb2xvcj12ZWM0KDEuMCk7XFxuI2VuZGlmXFxufVwiLFwiYXR0cmlidXRlIHZlYzQgYV9wb3Nfb2Zmc2V0O2F0dHJpYnV0ZSB2ZWM0IGFfZGF0YTthdHRyaWJ1dGUgdmVjNCBhX3BpeGVsb2Zmc2V0O2F0dHJpYnV0ZSB2ZWMzIGFfcHJvamVjdGVkX3BvczthdHRyaWJ1dGUgZmxvYXQgYV9mYWRlX29wYWNpdHk7dW5pZm9ybSBib29sIHVfaXNfc2l6ZV96b29tX2NvbnN0YW50O3VuaWZvcm0gYm9vbCB1X2lzX3NpemVfZmVhdHVyZV9jb25zdGFudDt1bmlmb3JtIGhpZ2hwIGZsb2F0IHVfc2l6ZV90O3VuaWZvcm0gaGlnaHAgZmxvYXQgdV9zaXplO3VuaWZvcm0gbWF0NCB1X21hdHJpeDt1bmlmb3JtIG1hdDQgdV9sYWJlbF9wbGFuZV9tYXRyaXg7dW5pZm9ybSBtYXQ0IHVfY29vcmRfbWF0cml4O3VuaWZvcm0gYm9vbCB1X2lzX3RleHQ7dW5pZm9ybSBib29sIHVfcGl0Y2hfd2l0aF9tYXA7dW5pZm9ybSBib29sIHVfaXNfYWxvbmdfbGluZTt1bmlmb3JtIGJvb2wgdV9pc192YXJpYWJsZV9hbmNob3I7dW5pZm9ybSBoaWdocCBmbG9hdCB1X3BpdGNoO3VuaWZvcm0gYm9vbCB1X3JvdGF0ZV9zeW1ib2w7dW5pZm9ybSBoaWdocCBmbG9hdCB1X2FzcGVjdF9yYXRpbzt1bmlmb3JtIGhpZ2hwIGZsb2F0IHVfY2FtZXJhX3RvX2NlbnRlcl9kaXN0YW5jZTt1bmlmb3JtIGZsb2F0IHVfZmFkZV9jaGFuZ2U7dW5pZm9ybSB2ZWMyIHVfdGV4c2l6ZTt1bmlmb3JtIHZlYzIgdV90cmFuc2xhdGlvbjt1bmlmb3JtIGZsb2F0IHVfcGl0Y2hlZF9zY2FsZTt2YXJ5aW5nIHZlYzIgdl9kYXRhMDt2YXJ5aW5nIHZlYzMgdl9kYXRhMTt2ZWM0IHByb2plY3RUaWxlV2l0aEVsZXZhdGlvbih2ZWMyIHBvc0luVGlsZSxmbG9hdCBlbGV2YXRpb24pIHtyZXR1cm4gdV9tYXRyaXgqdmVjNChwb3NJblRpbGUsZWxldmF0aW9uLDEuMCk7fVxcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgaGlnaHAgdmVjNCBmaWxsX2NvbG9yXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBoaWdocCB2ZWM0IGhhbG9fY29sb3JcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGxvd3AgZmxvYXQgb3BhY2l0eVxcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgbG93cCBmbG9hdCBoYWxvX3dpZHRoXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIGZsb2F0IGhhbG9fYmx1clxcbnZvaWQgbWFpbigpIHtcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBoaWdocCB2ZWM0IGZpbGxfY29sb3JcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBoaWdocCB2ZWM0IGhhbG9fY29sb3JcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBsb3dwIGZsb2F0IG9wYWNpdHlcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBsb3dwIGZsb2F0IGhhbG9fd2lkdGhcXG4jcHJhZ21hIG1hcGJveDogaW5pdGlhbGl6ZSBsb3dwIGZsb2F0IGhhbG9fYmx1clxcbnZlYzIgYV9wb3M9YV9wb3Nfb2Zmc2V0Lnh5O3ZlYzIgYV9vZmZzZXQ9YV9wb3Nfb2Zmc2V0Lnp3O3ZlYzIgYV90ZXg9YV9kYXRhLnh5O3ZlYzIgYV9zaXplPWFfZGF0YS56dztmbG9hdCBhX3NpemVfbWluPWZsb29yKGFfc2l6ZVswXSowLjUpO3ZlYzIgYV9weG9mZnNldD1hX3BpeGVsb2Zmc2V0Lnh5O2Zsb2F0IGVsZT1nZXRfZWxldmF0aW9uKGFfcG9zKTtoaWdocCBmbG9hdCBzZWdtZW50X2FuZ2xlPS1hX3Byb2plY3RlZF9wb3NbMl07ZmxvYXQgc2l6ZTtpZiAoIXVfaXNfc2l6ZV96b29tX2NvbnN0YW50ICYmICF1X2lzX3NpemVfZmVhdHVyZV9jb25zdGFudCkge3NpemU9bWl4KGFfc2l6ZV9taW4sYV9zaXplWzFdLHVfc2l6ZV90KS8xMjguMDt9IGVsc2UgaWYgKHVfaXNfc2l6ZV96b29tX2NvbnN0YW50ICYmICF1X2lzX3NpemVfZmVhdHVyZV9jb25zdGFudCkge3NpemU9YV9zaXplX21pbi8xMjguMDt9IGVsc2Uge3NpemU9dV9zaXplO312ZWMyIHRyYW5zbGF0ZWRfYV9wb3M9YV9wb3MrdV90cmFuc2xhdGlvbjt2ZWM0IHByb2plY3RlZFBvaW50PXByb2plY3RUaWxlV2l0aEVsZXZhdGlvbih0cmFuc2xhdGVkX2FfcG9zLGVsZSk7aGlnaHAgZmxvYXQgY2FtZXJhX3RvX2FuY2hvcl9kaXN0YW5jZT1wcm9qZWN0ZWRQb2ludC53O2hpZ2hwIGZsb2F0IGRpc3RhbmNlX3JhdGlvPXVfcGl0Y2hfd2l0aF9tYXAgP1xcbmNhbWVyYV90b19hbmNob3JfZGlzdGFuY2UvdV9jYW1lcmFfdG9fY2VudGVyX2Rpc3RhbmNlIDpcXG51X2NhbWVyYV90b19jZW50ZXJfZGlzdGFuY2UvY2FtZXJhX3RvX2FuY2hvcl9kaXN0YW5jZTtoaWdocCBmbG9hdCBwZXJzcGVjdGl2ZV9yYXRpbz1jbGFtcCgwLjUrMC41KmRpc3RhbmNlX3JhdGlvLDAuMCw0LjApO3NpemUqPXBlcnNwZWN0aXZlX3JhdGlvO2Zsb2F0IGZvbnRTY2FsZT11X2lzX3RleHQgPyBzaXplLzI0LjAgOiBzaXplO2hpZ2hwIGZsb2F0IHN5bWJvbF9yb3RhdGlvbj0wLjA7aWYgKHVfcm90YXRlX3N5bWJvbCkge3ZlYzQgb2Zmc2V0UHJvamVjdGVkUG9pbnQ9cHJvamVjdFRpbGVXaXRoRWxldmF0aW9uKHRyYW5zbGF0ZWRfYV9wb3MrdmVjMigxLDApLGVsZSk7dmVjMiBhPXByb2plY3RlZFBvaW50Lnh5L3Byb2plY3RlZFBvaW50Lnc7dmVjMiBiPW9mZnNldFByb2plY3RlZFBvaW50Lnh5L29mZnNldFByb2plY3RlZFBvaW50Lnc7c3ltYm9sX3JvdGF0aW9uPWF0YW4oKGIueS1hLnkpL3VfYXNwZWN0X3JhdGlvLGIueC1hLngpO31oaWdocCBmbG9hdCBhbmdsZV9zaW49c2luKHNlZ21lbnRfYW5nbGUrc3ltYm9sX3JvdGF0aW9uKTtoaWdocCBmbG9hdCBhbmdsZV9jb3M9Y29zKHNlZ21lbnRfYW5nbGUrc3ltYm9sX3JvdGF0aW9uKTttYXQyIHJvdGF0aW9uX21hdHJpeD1tYXQyKGFuZ2xlX2NvcywtMS4wKmFuZ2xlX3NpbixhbmdsZV9zaW4sYW5nbGVfY29zKTt2ZWM0IHByb2plY3RlZF9wb3M7aWYgKHVfaXNfYWxvbmdfbGluZSB8fCB1X2lzX3ZhcmlhYmxlX2FuY2hvcikge3Byb2plY3RlZF9wb3M9dmVjNChhX3Byb2plY3RlZF9wb3MueHksZWxlLDEuMCk7fSBlbHNlIGlmICh1X3BpdGNoX3dpdGhfbWFwKSB7cHJvamVjdGVkX3Bvcz11X2xhYmVsX3BsYW5lX21hdHJpeCp2ZWM0KGFfcHJvamVjdGVkX3Bvcy54eSt1X3RyYW5zbGF0aW9uLGVsZSwxLjApO30gZWxzZSB7cHJvamVjdGVkX3Bvcz11X2xhYmVsX3BsYW5lX21hdHJpeCpwcm9qZWN0VGlsZVdpdGhFbGV2YXRpb24oYV9wcm9qZWN0ZWRfcG9zLnh5K3VfdHJhbnNsYXRpb24sZWxlKTt9ZmxvYXQgej1mbG9hdCh1X3BpdGNoX3dpdGhfbWFwKSpwcm9qZWN0ZWRfcG9zLnovcHJvamVjdGVkX3Bvcy53O2Zsb2F0IHByb2plY3Rpb25TY2FsaW5nPTEuMDt2ZWM0IGZpbmFsUG9zPXVfY29vcmRfbWF0cml4KnZlYzQocHJvamVjdGVkX3Bvcy54eS9wcm9qZWN0ZWRfcG9zLncrcm90YXRpb25fbWF0cml4KihhX29mZnNldC8zMi4wKmZvbnRTY2FsZSthX3B4b2Zmc2V0KSpwcm9qZWN0aW9uU2NhbGluZyx6LDEuMCk7aWYodV9waXRjaF93aXRoX21hcCkge2ZpbmFsUG9zPXByb2plY3RUaWxlV2l0aEVsZXZhdGlvbihmaW5hbFBvcy54eSxmaW5hbFBvcy56KTt9ZmxvYXQgZ2FtbWFfc2NhbGU9ZmluYWxQb3MudztnbF9Qb3NpdGlvbj1maW5hbFBvczt2ZWMyIGZhZGVfb3BhY2l0eT11bnBhY2tfb3BhY2l0eShhX2ZhZGVfb3BhY2l0eSk7ZmxvYXQgdmlzaWJpbGl0eT1jYWxjdWxhdGVfdmlzaWJpbGl0eShwcm9qZWN0ZWRQb2ludCk7ZmxvYXQgZmFkZV9jaGFuZ2U9ZmFkZV9vcGFjaXR5WzFdID4gMC41ID8gdV9mYWRlX2NoYW5nZSA6LXVfZmFkZV9jaGFuZ2U7ZmxvYXQgaW50ZXJwb2xhdGVkX2ZhZGVfb3BhY2l0eT1tYXgoMC4wLG1pbih2aXNpYmlsaXR5LGZhZGVfb3BhY2l0eVswXStmYWRlX2NoYW5nZSkpO3ZfZGF0YTA9YV90ZXgvdV90ZXhzaXplO3ZfZGF0YTE9dmVjMyhnYW1tYV9zY2FsZSxzaXplLGludGVycG9sYXRlZF9mYWRlX29wYWNpdHkpO31cIiksc3ltYm9sVGV4dEFuZEljb246bWUoXCIjZGVmaW5lIFNERl9QWCA4LjBcXG4jZGVmaW5lIFNERiAxLjBcXG4jZGVmaW5lIElDT04gMC4wXFxudW5pZm9ybSBib29sIHVfaXNfaGFsbzt1bmlmb3JtIHNhbXBsZXIyRCB1X3RleHR1cmU7dW5pZm9ybSBzYW1wbGVyMkQgdV90ZXh0dXJlX2ljb247dW5pZm9ybSBoaWdocCBmbG9hdCB1X2dhbW1hX3NjYWxlO3VuaWZvcm0gbG93cCBmbG9hdCB1X2RldmljZV9waXhlbF9yYXRpbzt2YXJ5aW5nIHZlYzQgdl9kYXRhMDt2YXJ5aW5nIHZlYzQgdl9kYXRhMTtcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGhpZ2hwIHZlYzQgZmlsbF9jb2xvclxcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgaGlnaHAgdmVjNCBoYWxvX2NvbG9yXFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIGZsb2F0IG9wYWNpdHlcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGxvd3AgZmxvYXQgaGFsb193aWR0aFxcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgbG93cCBmbG9hdCBoYWxvX2JsdXJcXG52b2lkIG1haW4oKSB7XFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgaGlnaHAgdmVjNCBmaWxsX2NvbG9yXFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgaGlnaHAgdmVjNCBoYWxvX2NvbG9yXFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbG93cCBmbG9hdCBvcGFjaXR5XFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbG93cCBmbG9hdCBoYWxvX3dpZHRoXFxuI3ByYWdtYSBtYXBib3g6IGluaXRpYWxpemUgbG93cCBmbG9hdCBoYWxvX2JsdXJcXG5mbG9hdCBmYWRlX29wYWNpdHk9dl9kYXRhMVsyXTtpZiAodl9kYXRhMS53PT1JQ09OKSB7dmVjMiB0ZXhfaWNvbj12X2RhdGEwLnp3O2xvd3AgZmxvYXQgYWxwaGE9b3BhY2l0eSpmYWRlX29wYWNpdHk7Z2xfRnJhZ0NvbG9yPXRleHR1cmUyRCh1X3RleHR1cmVfaWNvbix0ZXhfaWNvbikqYWxwaGE7XFxuI2lmZGVmIE9WRVJEUkFXX0lOU1BFQ1RPUlxcbmdsX0ZyYWdDb2xvcj12ZWM0KDEuMCk7XFxuI2VuZGlmXFxucmV0dXJuO312ZWMyIHRleD12X2RhdGEwLnh5O2Zsb2F0IEVER0VfR0FNTUE9MC4xMDUvdV9kZXZpY2VfcGl4ZWxfcmF0aW87ZmxvYXQgZ2FtbWFfc2NhbGU9dl9kYXRhMS54O2Zsb2F0IHNpemU9dl9kYXRhMS55O2Zsb2F0IGZvbnRTY2FsZT1zaXplLzI0LjA7bG93cCB2ZWM0IGNvbG9yPWZpbGxfY29sb3I7aGlnaHAgZmxvYXQgZ2FtbWE9RURHRV9HQU1NQS8oZm9udFNjYWxlKnVfZ2FtbWFfc2NhbGUpO2xvd3AgZmxvYXQgYnVmZj0oMjU2LjAtNjQuMCkvMjU2LjA7aWYgKHVfaXNfaGFsbykge2NvbG9yPWhhbG9fY29sb3I7Z2FtbWE9KGhhbG9fYmx1cioxLjE5L1NERl9QWCtFREdFX0dBTU1BKS8oZm9udFNjYWxlKnVfZ2FtbWFfc2NhbGUpO2J1ZmY9KDYuMC1oYWxvX3dpZHRoL2ZvbnRTY2FsZSkvU0RGX1BYO31sb3dwIGZsb2F0IGRpc3Q9dGV4dHVyZTJEKHVfdGV4dHVyZSx0ZXgpLmE7aGlnaHAgZmxvYXQgZ2FtbWFfc2NhbGVkPWdhbW1hKmdhbW1hX3NjYWxlO2hpZ2hwIGZsb2F0IGFscGhhPXNtb290aHN0ZXAoYnVmZi1nYW1tYV9zY2FsZWQsYnVmZitnYW1tYV9zY2FsZWQsZGlzdCk7Z2xfRnJhZ0NvbG9yPWNvbG9yKihhbHBoYSpvcGFjaXR5KmZhZGVfb3BhY2l0eSk7XFxuI2lmZGVmIE9WRVJEUkFXX0lOU1BFQ1RPUlxcbmdsX0ZyYWdDb2xvcj12ZWM0KDEuMCk7XFxuI2VuZGlmXFxufVwiLFwiYXR0cmlidXRlIHZlYzQgYV9wb3Nfb2Zmc2V0O2F0dHJpYnV0ZSB2ZWM0IGFfZGF0YTthdHRyaWJ1dGUgdmVjMyBhX3Byb2plY3RlZF9wb3M7YXR0cmlidXRlIGZsb2F0IGFfZmFkZV9vcGFjaXR5O3VuaWZvcm0gYm9vbCB1X2lzX3NpemVfem9vbV9jb25zdGFudDt1bmlmb3JtIGJvb2wgdV9pc19zaXplX2ZlYXR1cmVfY29uc3RhbnQ7dW5pZm9ybSBoaWdocCBmbG9hdCB1X3NpemVfdDt1bmlmb3JtIGhpZ2hwIGZsb2F0IHVfc2l6ZTt1bmlmb3JtIG1hdDQgdV9tYXRyaXg7dW5pZm9ybSBtYXQ0IHVfbGFiZWxfcGxhbmVfbWF0cml4O3VuaWZvcm0gbWF0NCB1X2Nvb3JkX21hdHJpeDt1bmlmb3JtIGJvb2wgdV9pc190ZXh0O3VuaWZvcm0gYm9vbCB1X3BpdGNoX3dpdGhfbWFwO3VuaWZvcm0gaGlnaHAgZmxvYXQgdV9waXRjaDt1bmlmb3JtIGJvb2wgdV9yb3RhdGVfc3ltYm9sO3VuaWZvcm0gaGlnaHAgZmxvYXQgdV9hc3BlY3RfcmF0aW87dW5pZm9ybSBoaWdocCBmbG9hdCB1X2NhbWVyYV90b19jZW50ZXJfZGlzdGFuY2U7dW5pZm9ybSBmbG9hdCB1X2ZhZGVfY2hhbmdlO3VuaWZvcm0gdmVjMiB1X3RleHNpemU7dW5pZm9ybSB2ZWMyIHVfdGV4c2l6ZV9pY29uO3VuaWZvcm0gYm9vbCB1X2lzX2Fsb25nX2xpbmU7dW5pZm9ybSBib29sIHVfaXNfdmFyaWFibGVfYW5jaG9yO3VuaWZvcm0gdmVjMiB1X3RyYW5zbGF0aW9uO3VuaWZvcm0gZmxvYXQgdV9waXRjaGVkX3NjYWxlO3ZhcnlpbmcgdmVjNCB2X2RhdGEwO3ZhcnlpbmcgdmVjNCB2X2RhdGExO3ZlYzQgcHJvamVjdFRpbGVXaXRoRWxldmF0aW9uKHZlYzIgcG9zSW5UaWxlLGZsb2F0IGVsZXZhdGlvbikge3JldHVybiB1X21hdHJpeCp2ZWM0KHBvc0luVGlsZSxlbGV2YXRpb24sMS4wKTt9XFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBoaWdocCB2ZWM0IGZpbGxfY29sb3JcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGhpZ2hwIHZlYzQgaGFsb19jb2xvclxcbiNwcmFnbWEgbWFwYm94OiBkZWZpbmUgbG93cCBmbG9hdCBvcGFjaXR5XFxuI3ByYWdtYSBtYXBib3g6IGRlZmluZSBsb3dwIGZsb2F0IGhhbG9fd2lkdGhcXG4jcHJhZ21hIG1hcGJveDogZGVmaW5lIGxvd3AgZmxvYXQgaGFsb19ibHVyXFxudm9pZCBtYWluKCkge1xcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGhpZ2hwIHZlYzQgZmlsbF9jb2xvclxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGhpZ2hwIHZlYzQgaGFsb19jb2xvclxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGxvd3AgZmxvYXQgb3BhY2l0eVxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGxvd3AgZmxvYXQgaGFsb193aWR0aFxcbiNwcmFnbWEgbWFwYm94OiBpbml0aWFsaXplIGxvd3AgZmxvYXQgaGFsb19ibHVyXFxudmVjMiBhX3Bvcz1hX3Bvc19vZmZzZXQueHk7dmVjMiBhX29mZnNldD1hX3Bvc19vZmZzZXQuenc7dmVjMiBhX3RleD1hX2RhdGEueHk7dmVjMiBhX3NpemU9YV9kYXRhLnp3O2Zsb2F0IGFfc2l6ZV9taW49Zmxvb3IoYV9zaXplWzBdKjAuNSk7ZmxvYXQgaXNfc2RmPWFfc2l6ZVswXS0yLjAqYV9zaXplX21pbjtmbG9hdCBlbGU9Z2V0X2VsZXZhdGlvbihhX3Bvcyk7aGlnaHAgZmxvYXQgc2VnbWVudF9hbmdsZT0tYV9wcm9qZWN0ZWRfcG9zWzJdO2Zsb2F0IHNpemU7aWYgKCF1X2lzX3NpemVfem9vbV9jb25zdGFudCAmJiAhdV9pc19zaXplX2ZlYXR1cmVfY29uc3RhbnQpIHtzaXplPW1peChhX3NpemVfbWluLGFfc2l6ZVsxXSx1X3NpemVfdCkvMTI4LjA7fSBlbHNlIGlmICh1X2lzX3NpemVfem9vbV9jb25zdGFudCAmJiAhdV9pc19zaXplX2ZlYXR1cmVfY29uc3RhbnQpIHtzaXplPWFfc2l6ZV9taW4vMTI4LjA7fSBlbHNlIHtzaXplPXVfc2l6ZTt9dmVjMiB0cmFuc2xhdGVkX2FfcG9zPWFfcG9zK3VfdHJhbnNsYXRpb247dmVjNCBwcm9qZWN0ZWRQb2ludD1wcm9qZWN0VGlsZVdpdGhFbGV2YXRpb24odHJhbnNsYXRlZF9hX3BvcyxlbGUpO2hpZ2hwIGZsb2F0IGNhbWVyYV90b19hbmNob3JfZGlzdGFuY2U9cHJvamVjdGVkUG9pbnQudztoaWdocCBmbG9hdCBkaXN0YW5jZV9yYXRpbz11X3BpdGNoX3dpdGhfbWFwID9cXG5jYW1lcmFfdG9fYW5jaG9yX2Rpc3RhbmNlL3VfY2FtZXJhX3RvX2NlbnRlcl9kaXN0YW5jZSA6XFxudV9jYW1lcmFfdG9fY2VudGVyX2Rpc3RhbmNlL2NhbWVyYV90b19hbmNob3JfZGlzdGFuY2U7aGlnaHAgZmxvYXQgcGVyc3BlY3RpdmVfcmF0aW89Y2xhbXAoMC41KzAuNSpkaXN0YW5jZV9yYXRpbywwLjAsNC4wKTtzaXplKj1wZXJzcGVjdGl2ZV9yYXRpbztmbG9hdCBmb250U2NhbGU9c2l6ZS8yNC4wO2hpZ2hwIGZsb2F0IHN5bWJvbF9yb3RhdGlvbj0wLjA7aWYgKHVfcm90YXRlX3N5bWJvbCkge3ZlYzQgb2Zmc2V0UHJvamVjdGVkUG9pbnQ9cHJvamVjdFRpbGVXaXRoRWxldmF0aW9uKHRyYW5zbGF0ZWRfYV9wb3MrdmVjMigxLDApLGVsZSk7dmVjMiBhPXByb2plY3RlZFBvaW50Lnh5L3Byb2plY3RlZFBvaW50Lnc7dmVjMiBiPW9mZnNldFByb2plY3RlZFBvaW50Lnh5L29mZnNldFByb2plY3RlZFBvaW50Lnc7c3ltYm9sX3JvdGF0aW9uPWF0YW4oKGIueS1hLnkpL3VfYXNwZWN0X3JhdGlvLGIueC1hLngpO31oaWdocCBmbG9hdCBhbmdsZV9zaW49c2luKHNlZ21lbnRfYW5nbGUrc3ltYm9sX3JvdGF0aW9uKTtoaWdocCBmbG9hdCBhbmdsZV9jb3M9Y29zKHNlZ21lbnRfYW5nbGUrc3ltYm9sX3JvdGF0aW9uKTttYXQyIHJvdGF0aW9uX21hdHJpeD1tYXQyKGFuZ2xlX2NvcywtMS4wKmFuZ2xlX3NpbixhbmdsZV9zaW4sYW5nbGVfY29zKTt2ZWM0IHByb2plY3RlZF9wb3M7aWYgKHVfaXNfYWxvbmdfbGluZSB8fCB1X2lzX3ZhcmlhYmxlX2FuY2hvcikge3Byb2plY3RlZF9wb3M9dmVjNChhX3Byb2plY3RlZF9wb3MueHksZWxlLDEuMCk7fSBlbHNlIGlmICh1X3BpdGNoX3dpdGhfbWFwKSB7cHJvamVjdGVkX3Bvcz11X2xhYmVsX3BsYW5lX21hdHJpeCp2ZWM0KGFfcHJvamVjdGVkX3Bvcy54eSt1X3RyYW5zbGF0aW9uLGVsZSwxLjApO30gZWxzZSB7cHJvamVjdGVkX3Bvcz11X2xhYmVsX3BsYW5lX21hdHJpeCpwcm9qZWN0VGlsZVdpdGhFbGV2YXRpb24oYV9wcm9qZWN0ZWRfcG9zLnh5K3VfdHJhbnNsYXRpb24sZWxlKTt9ZmxvYXQgej1mbG9hdCh1X3BpdGNoX3dpdGhfbWFwKSpwcm9qZWN0ZWRfcG9zLnovcHJvamVjdGVkX3Bvcy53O2Zsb2F0IHByb2plY3Rpb25TY2FsaW5nPTEuMDt2ZWM0IGZpbmFsUG9zPXVfY29vcmRfbWF0cml4KnZlYzQocHJvamVjdGVkX3Bvcy54eS9wcm9qZWN0ZWRfcG9zLncrcm90YXRpb25fbWF0cml4KihhX29mZnNldC8zMi4wKmZvbnRTY2FsZSkqcHJvamVjdGlvblNjYWxpbmcseiwxLjApO2lmKHVfcGl0Y2hfd2l0aF9tYXApIHtmaW5hbFBvcz1wcm9qZWN0VGlsZVdpdGhFbGV2YXRpb24oZmluYWxQb3MueHksZmluYWxQb3Mueik7fWZsb2F0IGdhbW1hX3NjYWxlPWZpbmFsUG9zLnc7Z2xfUG9zaXRpb249ZmluYWxQb3M7dmVjMiBmYWRlX29wYWNpdHk9dW5wYWNrX29wYWNpdHkoYV9mYWRlX29wYWNpdHkpO2Zsb2F0IHZpc2liaWxpdHk9Y2FsY3VsYXRlX3Zpc2liaWxpdHkocHJvamVjdGVkUG9pbnQpO2Zsb2F0IGZhZGVfY2hhbmdlPWZhZGVfb3BhY2l0eVsxXSA+IDAuNSA/IHVfZmFkZV9jaGFuZ2UgOi11X2ZhZGVfY2hhbmdlO2Zsb2F0IGludGVycG9sYXRlZF9mYWRlX29wYWNpdHk9bWF4KDAuMCxtaW4odmlzaWJpbGl0eSxmYWRlX29wYWNpdHlbMF0rZmFkZV9jaGFuZ2UpKTt2X2RhdGEwLnh5PWFfdGV4L3VfdGV4c2l6ZTt2X2RhdGEwLnp3PWFfdGV4L3VfdGV4c2l6ZV9pY29uO3ZfZGF0YTE9dmVjNChnYW1tYV9zY2FsZSxzaXplLGludGVycG9sYXRlZF9mYWRlX29wYWNpdHksaXNfc2RmKTt9XCIpLHRlcnJhaW46bWUoXCJ1bmlmb3JtIHNhbXBsZXIyRCB1X3RleHR1cmU7dW5pZm9ybSB2ZWM0IHVfZm9nX2NvbG9yO3VuaWZvcm0gdmVjNCB1X2hvcml6b25fY29sb3I7dW5pZm9ybSBmbG9hdCB1X2ZvZ19ncm91bmRfYmxlbmQ7dW5pZm9ybSBmbG9hdCB1X2ZvZ19ncm91bmRfYmxlbmRfb3BhY2l0eTt1bmlmb3JtIGZsb2F0IHVfaG9yaXpvbl9mb2dfYmxlbmQ7dmFyeWluZyB2ZWMyIHZfdGV4dHVyZV9wb3M7dmFyeWluZyBmbG9hdCB2X2ZvZ19kZXB0aDtjb25zdCBmbG9hdCBnYW1tYT0yLjI7dmVjNCBnYW1tYVRvTGluZWFyKHZlYzQgY29sb3IpIHtyZXR1cm4gcG93KGNvbG9yLHZlYzQoZ2FtbWEpKTt9dmVjNCBsaW5lYXJUb0dhbW1hKHZlYzQgY29sb3IpIHtyZXR1cm4gcG93KGNvbG9yLHZlYzQoMS4wL2dhbW1hKSk7fXZvaWQgbWFpbigpIHt2ZWM0IHN1cmZhY2VfY29sb3I9dGV4dHVyZTJEKHVfdGV4dHVyZSx2X3RleHR1cmVfcG9zKTtpZiAodl9mb2dfZGVwdGggPiB1X2ZvZ19ncm91bmRfYmxlbmQpIHt2ZWM0IHN1cmZhY2VfY29sb3JfbGluZWFyPWdhbW1hVG9MaW5lYXIoc3VyZmFjZV9jb2xvcik7ZmxvYXQgYmxlbmRfY29sb3I9c21vb3Roc3RlcCgwLjAsMS4wLG1heCgodl9mb2dfZGVwdGgtdV9ob3Jpem9uX2ZvZ19ibGVuZCkvKDEuMC11X2hvcml6b25fZm9nX2JsZW5kKSwwLjApKTt2ZWM0IGZvZ19ob3Jpem9uX2NvbG9yX2xpbmVhcj1taXgoZ2FtbWFUb0xpbmVhcih1X2ZvZ19jb2xvciksZ2FtbWFUb0xpbmVhcih1X2hvcml6b25fY29sb3IpLGJsZW5kX2NvbG9yKTtmbG9hdCBmYWN0b3JfZm9nPW1heCh2X2ZvZ19kZXB0aC11X2ZvZ19ncm91bmRfYmxlbmQsMC4wKS8oMS4wLXVfZm9nX2dyb3VuZF9ibGVuZCk7Z2xfRnJhZ0NvbG9yPWxpbmVhclRvR2FtbWEobWl4KHN1cmZhY2VfY29sb3JfbGluZWFyLGZvZ19ob3Jpem9uX2NvbG9yX2xpbmVhcixwb3coZmFjdG9yX2ZvZywyLjApKnVfZm9nX2dyb3VuZF9ibGVuZF9vcGFjaXR5KSk7fSBlbHNlIHtnbF9GcmFnQ29sb3I9c3VyZmFjZV9jb2xvcjt9fVwiLFwiYXR0cmlidXRlIHZlYzMgYV9wb3MzZDt1bmlmb3JtIG1hdDQgdV9tYXRyaXg7dW5pZm9ybSBtYXQ0IHVfZm9nX21hdHJpeDt1bmlmb3JtIGZsb2F0IHVfZWxlX2RlbHRhO3ZhcnlpbmcgdmVjMiB2X3RleHR1cmVfcG9zO3ZhcnlpbmcgZmxvYXQgdl9mb2dfZGVwdGg7dm9pZCBtYWluKCkge2Zsb2F0IGVsZT1nZXRfZWxldmF0aW9uKGFfcG9zM2QueHkpO2Zsb2F0IGVsZV9kZWx0YT1hX3BvczNkLno9PTEuMCA/IHVfZWxlX2RlbHRhIDogMC4wO3ZfdGV4dHVyZV9wb3M9YV9wb3MzZC54eS84MTkyLjA7Z2xfUG9zaXRpb249dV9tYXRyaXgqdmVjNChhX3BvczNkLnh5LGVsZS1lbGVfZGVsdGEsMS4wKTt2ZWM0IHBvcz11X2ZvZ19tYXRyaXgqdmVjNChhX3BvczNkLnh5LGVsZSwxLjApO3ZfZm9nX2RlcHRoPXBvcy56L3Bvcy53KjAuNSswLjU7fVwiKSx0ZXJyYWluRGVwdGg6bWUoXCJ2YXJ5aW5nIGZsb2F0IHZfZGVwdGg7Y29uc3QgaGlnaHAgdmVjNCBiaXRTaD12ZWM0KDI1Ni4qMjU2LioyNTYuLDI1Ni4qMjU2LiwyNTYuLDEuKTtjb25zdCBoaWdocCB2ZWM0IGJpdE1zaz12ZWM0KDAuLHZlYzMoMS4vMjU2LjApKTtoaWdocCB2ZWM0IHBhY2soaGlnaHAgZmxvYXQgdmFsdWUpIHtoaWdocCB2ZWM0IGNvbXA9ZnJhY3QodmFsdWUqYml0U2gpO2NvbXAtPWNvbXAueHh5eipiaXRNc2s7cmV0dXJuIGNvbXA7fXZvaWQgbWFpbigpIHtnbF9GcmFnQ29sb3I9cGFjayh2X2RlcHRoKTt9XCIsXCJhdHRyaWJ1dGUgdmVjMyBhX3BvczNkO3VuaWZvcm0gbWF0NCB1X21hdHJpeDt1bmlmb3JtIGZsb2F0IHVfZWxlX2RlbHRhO3ZhcnlpbmcgZmxvYXQgdl9kZXB0aDt2b2lkIG1haW4oKSB7ZmxvYXQgZWxlPWdldF9lbGV2YXRpb24oYV9wb3MzZC54eSk7ZmxvYXQgZWxlX2RlbHRhPWFfcG9zM2Quej09MS4wID8gdV9lbGVfZGVsdGEgOiAwLjA7Z2xfUG9zaXRpb249dV9tYXRyaXgqdmVjNChhX3BvczNkLnh5LGVsZS1lbGVfZGVsdGEsMS4wKTt2X2RlcHRoPWdsX1Bvc2l0aW9uLnovZ2xfUG9zaXRpb24udzt9XCIpLHRlcnJhaW5Db29yZHM6bWUoXCJwcmVjaXNpb24gbWVkaXVtcCBmbG9hdDt1bmlmb3JtIHNhbXBsZXIyRCB1X3RleHR1cmU7dW5pZm9ybSBmbG9hdCB1X3RlcnJhaW5fY29vcmRzX2lkO3ZhcnlpbmcgdmVjMiB2X3RleHR1cmVfcG9zO3ZvaWQgbWFpbigpIHt2ZWM0IHJnYmE9dGV4dHVyZTJEKHVfdGV4dHVyZSx2X3RleHR1cmVfcG9zKTtnbF9GcmFnQ29sb3I9dmVjNChyZ2JhLnIscmdiYS5nLHJnYmEuYix1X3RlcnJhaW5fY29vcmRzX2lkKTt9XCIsXCJhdHRyaWJ1dGUgdmVjMyBhX3BvczNkO3VuaWZvcm0gbWF0NCB1X21hdHJpeDt1bmlmb3JtIGZsb2F0IHVfZWxlX2RlbHRhO3ZhcnlpbmcgdmVjMiB2X3RleHR1cmVfcG9zO3ZvaWQgbWFpbigpIHtmbG9hdCBlbGU9Z2V0X2VsZXZhdGlvbihhX3BvczNkLnh5KTtmbG9hdCBlbGVfZGVsdGE9YV9wb3MzZC56PT0xLjAgPyB1X2VsZV9kZWx0YSA6IDAuMDt2X3RleHR1cmVfcG9zPWFfcG9zM2QueHkvODE5Mi4wO2dsX1Bvc2l0aW9uPXVfbWF0cml4KnZlYzQoYV9wb3MzZC54eSxlbGUtZWxlX2RlbHRhLDEuMCk7fVwiKSxza3k6bWUoXCJ1bmlmb3JtIHZlYzQgdV9za3lfY29sb3I7dW5pZm9ybSB2ZWM0IHVfaG9yaXpvbl9jb2xvcjt1bmlmb3JtIGZsb2F0IHVfaG9yaXpvbjt1bmlmb3JtIGZsb2F0IHVfc2t5X2hvcml6b25fYmxlbmQ7dm9pZCBtYWluKCkge2Zsb2F0IHk9Z2xfRnJhZ0Nvb3JkLnk7aWYgKHkgPiB1X2hvcml6b24pIHtmbG9hdCBibGVuZD15LXVfaG9yaXpvbjtpZiAoYmxlbmQgPCB1X3NreV9ob3Jpem9uX2JsZW5kKSB7Z2xfRnJhZ0NvbG9yPW1peCh1X3NreV9jb2xvcix1X2hvcml6b25fY29sb3IscG93KDEuMC1ibGVuZC91X3NreV9ob3Jpem9uX2JsZW5kLDIuMCkpO30gZWxzZSB7Z2xfRnJhZ0NvbG9yPXVfc2t5X2NvbG9yO319fVwiLFwiYXR0cmlidXRlIHZlYzIgYV9wb3M7dm9pZCBtYWluKCkge2dsX1Bvc2l0aW9uPXZlYzQoYV9wb3MsMS4wLDEuMCk7fVwiKX07ZnVuY3Rpb24gbWUodCxlKXtjb25zdCBpPS8jcHJhZ21hIG1hcGJveDogKFtcXHddKykgKFtcXHddKykgKFtcXHddKykgKFtcXHddKykvZyxhPWUubWF0Y2goL2F0dHJpYnV0ZSAoW1xcd10rKSAoW1xcd10rKS9nKSxzPXQubWF0Y2goL3VuaWZvcm0gKFtcXHddKykgKFtcXHddKykoW1xcc10qKShbXFx3XSopL2cpLG89ZS5tYXRjaCgvdW5pZm9ybSAoW1xcd10rKSAoW1xcd10rKShbXFxzXSopKFtcXHddKikvZykscj1vP28uY29uY2F0KHMpOnMsbj17fTtyZXR1cm4ge2ZyYWdtZW50U291cmNlOnQ9dC5yZXBsYWNlKGksKCh0LGUsaSxhLHMpPT4obltzXT0hMCxcImRlZmluZVwiPT09ZT9gXFxuI2lmbmRlZiBIQVNfVU5JRk9STV91XyR7c31cXG52YXJ5aW5nICR7aX0gJHthfSAke3N9O1xcbiNlbHNlXFxudW5pZm9ybSAke2l9ICR7YX0gdV8ke3N9O1xcbiNlbmRpZlxcbmA6YFxcbiNpZmRlZiBIQVNfVU5JRk9STV91XyR7c31cXG4gICAgJHtpfSAke2F9ICR7c30gPSB1XyR7c307XFxuI2VuZGlmXFxuYCkpKSx2ZXJ0ZXhTb3VyY2U6ZT1lLnJlcGxhY2UoaSwoKHQsZSxpLGEscyk9Pntjb25zdCBvPVwiZmxvYXRcIj09PWE/XCJ2ZWMyXCI6XCJ2ZWM0XCIscj1zLm1hdGNoKC9jb2xvci8pP1wiY29sb3JcIjpvO3JldHVybiBuW3NdP1wiZGVmaW5lXCI9PT1lP2BcXG4jaWZuZGVmIEhBU19VTklGT1JNX3VfJHtzfVxcbnVuaWZvcm0gbG93cCBmbG9hdCB1XyR7c31fdDtcXG5hdHRyaWJ1dGUgJHtpfSAke299IGFfJHtzfTtcXG52YXJ5aW5nICR7aX0gJHthfSAke3N9O1xcbiNlbHNlXFxudW5pZm9ybSAke2l9ICR7YX0gdV8ke3N9O1xcbiNlbmRpZlxcbmA6XCJ2ZWM0XCI9PT1yP2BcXG4jaWZuZGVmIEhBU19VTklGT1JNX3VfJHtzfVxcbiAgICAke3N9ID0gYV8ke3N9O1xcbiNlbHNlXFxuICAgICR7aX0gJHthfSAke3N9ID0gdV8ke3N9O1xcbiNlbmRpZlxcbmA6YFxcbiNpZm5kZWYgSEFTX1VOSUZPUk1fdV8ke3N9XFxuICAgICR7c30gPSB1bnBhY2tfbWl4XyR7cn0oYV8ke3N9LCB1XyR7c31fdCk7XFxuI2Vsc2VcXG4gICAgJHtpfSAke2F9ICR7c30gPSB1XyR7c307XFxuI2VuZGlmXFxuYDpcImRlZmluZVwiPT09ZT9gXFxuI2lmbmRlZiBIQVNfVU5JRk9STV91XyR7c31cXG51bmlmb3JtIGxvd3AgZmxvYXQgdV8ke3N9X3Q7XFxuYXR0cmlidXRlICR7aX0gJHtvfSBhXyR7c307XFxuI2Vsc2VcXG51bmlmb3JtICR7aX0gJHthfSB1XyR7c307XFxuI2VuZGlmXFxuYDpcInZlYzRcIj09PXI/YFxcbiNpZm5kZWYgSEFTX1VOSUZPUk1fdV8ke3N9XFxuICAgICR7aX0gJHthfSAke3N9ID0gYV8ke3N9O1xcbiNlbHNlXFxuICAgICR7aX0gJHthfSAke3N9ID0gdV8ke3N9O1xcbiNlbmRpZlxcbmA6YFxcbiNpZm5kZWYgSEFTX1VOSUZPUk1fdV8ke3N9XFxuICAgICR7aX0gJHthfSAke3N9ID0gdW5wYWNrX21peF8ke3J9KGFfJHtzfSwgdV8ke3N9X3QpO1xcbiNlbHNlXFxuICAgICR7aX0gJHthfSAke3N9ID0gdV8ke3N9O1xcbiNlbmRpZlxcbmB9KSksc3RhdGljQXR0cmlidXRlczphLHN0YXRpY1VuaWZvcm1zOnJ9fWNsYXNzIGZle2NvbnN0cnVjdG9yKCl7dGhpcy5ib3VuZFByb2dyYW09bnVsbCx0aGlzLmJvdW5kTGF5b3V0VmVydGV4QnVmZmVyPW51bGwsdGhpcy5ib3VuZFBhaW50VmVydGV4QnVmZmVycz1bXSx0aGlzLmJvdW5kSW5kZXhCdWZmZXI9bnVsbCx0aGlzLmJvdW5kVmVydGV4T2Zmc2V0PW51bGwsdGhpcy5ib3VuZER5bmFtaWNWZXJ0ZXhCdWZmZXI9bnVsbCx0aGlzLnZhbz1udWxsO31iaW5kKHQsZSxpLGEscyxvLHIsbixsKXt0aGlzLmNvbnRleHQ9dDtsZXQgaD10aGlzLmJvdW5kUGFpbnRWZXJ0ZXhCdWZmZXJzLmxlbmd0aCE9PWEubGVuZ3RoO2ZvcihsZXQgdD0wOyFoJiZ0PGEubGVuZ3RoO3QrKyl0aGlzLmJvdW5kUGFpbnRWZXJ0ZXhCdWZmZXJzW3RdIT09YVt0XSYmKGg9ITApOyF0aGlzLnZhb3x8dGhpcy5ib3VuZFByb2dyYW0hPT1lfHx0aGlzLmJvdW5kTGF5b3V0VmVydGV4QnVmZmVyIT09aXx8aHx8dGhpcy5ib3VuZEluZGV4QnVmZmVyIT09c3x8dGhpcy5ib3VuZFZlcnRleE9mZnNldCE9PW98fHRoaXMuYm91bmREeW5hbWljVmVydGV4QnVmZmVyIT09cnx8dGhpcy5ib3VuZER5bmFtaWNWZXJ0ZXhCdWZmZXIyIT09bnx8dGhpcy5ib3VuZER5bmFtaWNWZXJ0ZXhCdWZmZXIzIT09bD90aGlzLmZyZXNoQmluZChlLGksYSxzLG8scixuLGwpOih0LmJpbmRWZXJ0ZXhBcnJheS5zZXQodGhpcy52YW8pLHImJnIuYmluZCgpLHMmJnMuZHluYW1pY0RyYXcmJnMuYmluZCgpLG4mJm4uYmluZCgpLGwmJmwuYmluZCgpKTt9ZnJlc2hCaW5kKHQsZSxpLGEscyxvLHIsbil7Y29uc3QgbD10Lm51bUF0dHJpYnV0ZXMsaD10aGlzLmNvbnRleHQsYz1oLmdsO3RoaXMudmFvJiZ0aGlzLmRlc3Ryb3koKSx0aGlzLnZhbz1oLmNyZWF0ZVZlcnRleEFycmF5KCksaC5iaW5kVmVydGV4QXJyYXkuc2V0KHRoaXMudmFvKSx0aGlzLmJvdW5kUHJvZ3JhbT10LHRoaXMuYm91bmRMYXlvdXRWZXJ0ZXhCdWZmZXI9ZSx0aGlzLmJvdW5kUGFpbnRWZXJ0ZXhCdWZmZXJzPWksdGhpcy5ib3VuZEluZGV4QnVmZmVyPWEsdGhpcy5ib3VuZFZlcnRleE9mZnNldD1zLHRoaXMuYm91bmREeW5hbWljVmVydGV4QnVmZmVyPW8sdGhpcy5ib3VuZER5bmFtaWNWZXJ0ZXhCdWZmZXIyPXIsdGhpcy5ib3VuZER5bmFtaWNWZXJ0ZXhCdWZmZXIzPW4sZS5lbmFibGVBdHRyaWJ1dGVzKGMsdCk7Zm9yKGNvbnN0IGUgb2YgaSllLmVuYWJsZUF0dHJpYnV0ZXMoYyx0KTtvJiZvLmVuYWJsZUF0dHJpYnV0ZXMoYyx0KSxyJiZyLmVuYWJsZUF0dHJpYnV0ZXMoYyx0KSxuJiZuLmVuYWJsZUF0dHJpYnV0ZXMoYyx0KSxlLmJpbmQoKSxlLnNldFZlcnRleEF0dHJpYlBvaW50ZXJzKGMsdCxzKTtmb3IoY29uc3QgZSBvZiBpKWUuYmluZCgpLGUuc2V0VmVydGV4QXR0cmliUG9pbnRlcnMoYyx0LHMpO28mJihvLmJpbmQoKSxvLnNldFZlcnRleEF0dHJpYlBvaW50ZXJzKGMsdCxzKSksYSYmYS5iaW5kKCksciYmKHIuYmluZCgpLHIuc2V0VmVydGV4QXR0cmliUG9pbnRlcnMoYyx0LHMpKSxuJiYobi5iaW5kKCksbi5zZXRWZXJ0ZXhBdHRyaWJQb2ludGVycyhjLHQscykpLGguY3VycmVudE51bUF0dHJpYnV0ZXM9bDt9ZGVzdHJveSgpe3RoaXMudmFvJiYodGhpcy5jb250ZXh0LmRlbGV0ZVZlcnRleEFycmF5KHRoaXMudmFvKSx0aGlzLnZhbz1udWxsKTt9fWNvbnN0IGdlPSh0LGksYSxzLG8pPT4oe3VfbWF0cml4OnQsdV90ZXh0dXJlOjAsdV9lbGVfZGVsdGE6aSx1X2ZvZ19tYXRyaXg6YSx1X2ZvZ19jb2xvcjpzP3MucHJvcGVydGllcy5nZXQoXCJmb2ctY29sb3JcIik6ZS5hTS53aGl0ZSx1X2ZvZ19ncm91bmRfYmxlbmQ6cz9zLnByb3BlcnRpZXMuZ2V0KFwiZm9nLWdyb3VuZC1ibGVuZFwiKToxLHVfZm9nX2dyb3VuZF9ibGVuZF9vcGFjaXR5OnM/cy5jYWxjdWxhdGVGb2dCbGVuZE9wYWNpdHkobyk6MCx1X2hvcml6b25fY29sb3I6cz9zLnByb3BlcnRpZXMuZ2V0KFwiaG9yaXpvbi1jb2xvclwiKTplLmFNLndoaXRlLHVfaG9yaXpvbl9mb2dfYmxlbmQ6cz9zLnByb3BlcnRpZXMuZ2V0KFwiaG9yaXpvbi1mb2ctYmxlbmRcIik6MX0pO2Z1bmN0aW9uIHZlKHQpe2NvbnN0IGU9W107Zm9yKGxldCBpPTA7aTx0Lmxlbmd0aDtpKyspe2lmKG51bGw9PT10W2ldKWNvbnRpbnVlO2NvbnN0IGE9dFtpXS5zcGxpdChcIiBcIik7ZS5wdXNoKGEucG9wKCkpO31yZXR1cm4gZX1jbGFzcyB4ZXtjb25zdHJ1Y3Rvcih0LGksYSxzLG8scil7Y29uc3Qgbj10LmdsO3RoaXMucHJvZ3JhbT1uLmNyZWF0ZVByb2dyYW0oKTtjb25zdCBsPXZlKGkuc3RhdGljQXR0cmlidXRlcyksaD1hP2EuZ2V0QmluZGVyQXR0cmlidXRlcygpOltdLGM9bC5jb25jYXQoaCksdT1wZS5wcmVsdWRlLnN0YXRpY1VuaWZvcm1zP3ZlKHBlLnByZWx1ZGUuc3RhdGljVW5pZm9ybXMpOltdLGQ9aS5zdGF0aWNVbmlmb3Jtcz92ZShpLnN0YXRpY1VuaWZvcm1zKTpbXSxfPWE/YS5nZXRCaW5kZXJVbmlmb3JtcygpOltdLHA9dS5jb25jYXQoZCkuY29uY2F0KF8pLG09W107Zm9yKGNvbnN0IHQgb2YgcCltLmluZGV4T2YodCk8MCYmbS5wdXNoKHQpO2NvbnN0IGY9YT9hLmRlZmluZXMoKTpbXTtvJiZmLnB1c2goXCIjZGVmaW5lIE9WRVJEUkFXX0lOU1BFQ1RPUjtcIiksciYmZi5wdXNoKFwiI2RlZmluZSBURVJSQUlOM0Q7XCIpO2NvbnN0IGc9Zi5jb25jYXQocGUucHJlbHVkZS5mcmFnbWVudFNvdXJjZSxpLmZyYWdtZW50U291cmNlKS5qb2luKFwiXFxuXCIpLHY9Zi5jb25jYXQocGUucHJlbHVkZS52ZXJ0ZXhTb3VyY2UsaS52ZXJ0ZXhTb3VyY2UpLmpvaW4oXCJcXG5cIikseD1uLmNyZWF0ZVNoYWRlcihuLkZSQUdNRU5UX1NIQURFUik7aWYobi5pc0NvbnRleHRMb3N0KCkpcmV0dXJuIHZvaWQodGhpcy5mYWlsZWRUb0NyZWF0ZT0hMCk7aWYobi5zaGFkZXJTb3VyY2UoeCxnKSxuLmNvbXBpbGVTaGFkZXIoeCksIW4uZ2V0U2hhZGVyUGFyYW1ldGVyKHgsbi5DT01QSUxFX1NUQVRVUykpdGhyb3cgbmV3IEVycm9yKGBDb3VsZCBub3QgY29tcGlsZSBmcmFnbWVudCBzaGFkZXI6ICR7bi5nZXRTaGFkZXJJbmZvTG9nKHgpfWApO24uYXR0YWNoU2hhZGVyKHRoaXMucHJvZ3JhbSx4KTtjb25zdCB5PW4uY3JlYXRlU2hhZGVyKG4uVkVSVEVYX1NIQURFUik7aWYobi5pc0NvbnRleHRMb3N0KCkpcmV0dXJuIHZvaWQodGhpcy5mYWlsZWRUb0NyZWF0ZT0hMCk7aWYobi5zaGFkZXJTb3VyY2UoeSx2KSxuLmNvbXBpbGVTaGFkZXIoeSksIW4uZ2V0U2hhZGVyUGFyYW1ldGVyKHksbi5DT01QSUxFX1NUQVRVUykpdGhyb3cgbmV3IEVycm9yKGBDb3VsZCBub3QgY29tcGlsZSB2ZXJ0ZXggc2hhZGVyOiAke24uZ2V0U2hhZGVySW5mb0xvZyh5KX1gKTtuLmF0dGFjaFNoYWRlcih0aGlzLnByb2dyYW0seSksdGhpcy5hdHRyaWJ1dGVzPXt9O2NvbnN0IGI9e307dGhpcy5udW1BdHRyaWJ1dGVzPWMubGVuZ3RoO2ZvcihsZXQgdD0wO3Q8dGhpcy5udW1BdHRyaWJ1dGVzO3QrKyljW3RdJiYobi5iaW5kQXR0cmliTG9jYXRpb24odGhpcy5wcm9ncmFtLHQsY1t0XSksdGhpcy5hdHRyaWJ1dGVzW2NbdF1dPXQpO2lmKG4ubGlua1Byb2dyYW0odGhpcy5wcm9ncmFtKSwhbi5nZXRQcm9ncmFtUGFyYW1ldGVyKHRoaXMucHJvZ3JhbSxuLkxJTktfU1RBVFVTKSl0aHJvdyBuZXcgRXJyb3IoYFByb2dyYW0gZmFpbGVkIHRvIGxpbms6ICR7bi5nZXRQcm9ncmFtSW5mb0xvZyh0aGlzLnByb2dyYW0pfWApO24uZGVsZXRlU2hhZGVyKHkpLG4uZGVsZXRlU2hhZGVyKHgpO2ZvcihsZXQgdD0wO3Q8bS5sZW5ndGg7dCsrKXtjb25zdCBlPW1bdF07aWYoZSYmIWJbZV0pe2NvbnN0IHQ9bi5nZXRVbmlmb3JtTG9jYXRpb24odGhpcy5wcm9ncmFtLGUpO3QmJihiW2VdPXQpO319dGhpcy5maXhlZFVuaWZvcm1zPXModCxiKSx0aGlzLnRlcnJhaW5Vbmlmb3Jtcz0oKHQsaSk9Pih7dV9kZXB0aDpuZXcgZS5hSCh0LGkudV9kZXB0aCksdV90ZXJyYWluOm5ldyBlLmFIKHQsaS51X3RlcnJhaW4pLHVfdGVycmFpbl9kaW06bmV3IGUuYUkodCxpLnVfdGVycmFpbl9kaW0pLHVfdGVycmFpbl9tYXRyaXg6bmV3IGUuYUoodCxpLnVfdGVycmFpbl9tYXRyaXgpLHVfdGVycmFpbl91bnBhY2s6bmV3IGUuYUsodCxpLnVfdGVycmFpbl91bnBhY2spLHVfdGVycmFpbl9leGFnZ2VyYXRpb246bmV3IGUuYUkodCxpLnVfdGVycmFpbl9leGFnZ2VyYXRpb24pfSkpKHQsYiksdGhpcy5iaW5kZXJVbmlmb3Jtcz1hP2EuZ2V0VW5pZm9ybXModCxiKTpbXTt9ZHJhdyh0LGUsaSxhLHMsbyxyLG4sbCxoLGMsdSxkLF8scCxtLGYsZyl7Y29uc3Qgdj10LmdsO2lmKHRoaXMuZmFpbGVkVG9DcmVhdGUpcmV0dXJuO2lmKHQucHJvZ3JhbS5zZXQodGhpcy5wcm9ncmFtKSx0LnNldERlcHRoTW9kZShpKSx0LnNldFN0ZW5jaWxNb2RlKGEpLHQuc2V0Q29sb3JNb2RlKHMpLHQuc2V0Q3VsbEZhY2Uobyksbil7dC5hY3RpdmVUZXh0dXJlLnNldCh2LlRFWFRVUkUyKSx2LmJpbmRUZXh0dXJlKHYuVEVYVFVSRV8yRCxuLmRlcHRoVGV4dHVyZSksdC5hY3RpdmVUZXh0dXJlLnNldCh2LlRFWFRVUkUzKSx2LmJpbmRUZXh0dXJlKHYuVEVYVFVSRV8yRCxuLnRleHR1cmUpO2Zvcihjb25zdCB0IGluIHRoaXMudGVycmFpblVuaWZvcm1zKXRoaXMudGVycmFpblVuaWZvcm1zW3RdLnNldChuW3RdKTt9Zm9yKGNvbnN0IHQgaW4gdGhpcy5maXhlZFVuaWZvcm1zKXRoaXMuZml4ZWRVbmlmb3Jtc1t0XS5zZXQoclt0XSk7cCYmcC5zZXRVbmlmb3Jtcyh0LHRoaXMuYmluZGVyVW5pZm9ybXMsZCx7em9vbTpffSk7bGV0IHg9MDtzd2l0Y2goZSl7Y2FzZSB2LkxJTkVTOng9MjticmVhaztjYXNlIHYuVFJJQU5HTEVTOng9MzticmVhaztjYXNlIHYuTElORV9TVFJJUDp4PTE7fWZvcihjb25zdCBpIG9mIHUuZ2V0KCkpe2NvbnN0IGE9aS52YW9zfHwoaS52YW9zPXt9KTsoYVtsXXx8KGFbbF09bmV3IGZlKSkuYmluZCh0LHRoaXMsaCxwP3AuZ2V0UGFpbnRWZXJ0ZXhCdWZmZXJzKCk6W10sYyxpLnZlcnRleE9mZnNldCxtLGYsZyksdi5kcmF3RWxlbWVudHMoZSxpLnByaW1pdGl2ZUxlbmd0aCp4LHYuVU5TSUdORURfU0hPUlQsaS5wcmltaXRpdmVPZmZzZXQqeCoyKTt9fX1mdW5jdGlvbiB5ZSh0LGUsaSl7Y29uc3QgYT0xL0J0KGksMSxlLnRyYW5zZm9ybS50aWxlWm9vbSkscz1NYXRoLnBvdygyLGkudGlsZUlELm92ZXJzY2FsZWRaKSxvPWkudGlsZVNpemUqTWF0aC5wb3coMixlLnRyYW5zZm9ybS50aWxlWm9vbSkvcyxyPW8qKGkudGlsZUlELmNhbm9uaWNhbC54K2kudGlsZUlELndyYXAqcyksbj1vKmkudGlsZUlELmNhbm9uaWNhbC55O3JldHVybiB7dV9pbWFnZTowLHVfdGV4c2l6ZTppLmltYWdlQXRsYXNUZXh0dXJlLnNpemUsdV9zY2FsZTpbYSx0LmZyb21TY2FsZSx0LnRvU2NhbGVdLHVfZmFkZTp0LnQsdV9waXhlbF9jb29yZF91cHBlcjpbcj4+MTYsbj4+MTZdLHVfcGl4ZWxfY29vcmRfbG93ZXI6WzY1NTM1JnIsNjU1MzUmbl19fWNvbnN0IGJlPSh0LGksYSxzKT0+e2NvbnN0IG89aS5zdHlsZS5saWdodCxyPW8ucHJvcGVydGllcy5nZXQoXCJwb3NpdGlvblwiKSxuPVtyLngsci55LHIuel0sbD1mdW5jdGlvbigpe3ZhciB0PW5ldyBlLkEoOSk7cmV0dXJuIGUuQSE9RmxvYXQzMkFycmF5JiYodFsxXT0wLHRbMl09MCx0WzNdPTAsdFs1XT0wLHRbNl09MCx0WzddPTApLHRbMF09MSx0WzRdPTEsdFs4XT0xLHR9KCk7XCJ2aWV3cG9ydFwiPT09by5wcm9wZXJ0aWVzLmdldChcImFuY2hvclwiKSYmZnVuY3Rpb24odCxlKXt2YXIgaT1NYXRoLnNpbihlKSxhPU1hdGguY29zKGUpO3RbMF09YSx0WzFdPWksdFsyXT0wLHRbM109LWksdFs0XT1hLHRbNV09MCx0WzZdPTAsdFs3XT0wLHRbOF09MTt9KGwsLWkudHJhbnNmb3JtLmFuZ2xlKSxmdW5jdGlvbih0LGUsaSl7dmFyIGE9ZVswXSxzPWVbMV0sbz1lWzJdO3RbMF09YSppWzBdK3MqaVszXStvKmlbNl0sdFsxXT1hKmlbMV0rcyppWzRdK28qaVs3XSx0WzJdPWEqaVsyXStzKmlbNV0rbyppWzhdO30obixuLGwpO2NvbnN0IGg9by5wcm9wZXJ0aWVzLmdldChcImNvbG9yXCIpO3JldHVybiB7dV9tYXRyaXg6dCx1X2xpZ2h0cG9zOm4sdV9saWdodGludGVuc2l0eTpvLnByb3BlcnRpZXMuZ2V0KFwiaW50ZW5zaXR5XCIpLHVfbGlnaHRjb2xvcjpbaC5yLGguZyxoLmJdLHVfdmVydGljYWxfZ3JhZGllbnQ6K2EsdV9vcGFjaXR5OnN9fSx3ZT0odCxpLGEscyxvLHIsbik9PmUuZShiZSh0LGksYSxzKSx5ZShyLGksbikse3VfaGVpZ2h0X2ZhY3RvcjotTWF0aC5wb3coMixvLm92ZXJzY2FsZWRaKS9uLnRpbGVTaXplLzh9KSxUZT10PT4oe3VfbWF0cml4OnR9KSxJZT0odCxpLGEscyk9PmUuZShUZSh0KSx5ZShhLGkscykpLEVlPSh0LGUpPT4oe3VfbWF0cml4OnQsdV93b3JsZDplfSksUGU9KHQsaSxhLHMsbyk9PmUuZShJZSh0LGksYSxzKSx7dV93b3JsZDpvfSksQ2U9KHQsZSxpLGEpPT57Y29uc3Qgcz10LnRyYW5zZm9ybTtsZXQgbyxyO2lmKFwibWFwXCI9PT1hLnBhaW50LmdldChcImNpcmNsZS1waXRjaC1hbGlnbm1lbnRcIikpe2NvbnN0IHQ9QnQoaSwxLHMuem9vbSk7bz0hMCxyPVt0LHRdO31lbHNlIG89ITEscj1zLnBpeGVsc1RvR0xVbml0cztyZXR1cm4ge3VfY2FtZXJhX3RvX2NlbnRlcl9kaXN0YW5jZTpzLmNhbWVyYVRvQ2VudGVyRGlzdGFuY2UsdV9zY2FsZV93aXRoX21hcDorKFwibWFwXCI9PT1hLnBhaW50LmdldChcImNpcmNsZS1waXRjaC1zY2FsZVwiKSksdV9tYXRyaXg6dC50cmFuc2xhdGVQb3NNYXRyaXgoZS5wb3NNYXRyaXgsaSxhLnBhaW50LmdldChcImNpcmNsZS10cmFuc2xhdGVcIiksYS5wYWludC5nZXQoXCJjaXJjbGUtdHJhbnNsYXRlLWFuY2hvclwiKSksdV9waXRjaF93aXRoX21hcDorbyx1X2RldmljZV9waXhlbF9yYXRpbzp0LnBpeGVsUmF0aW8sdV9leHRydWRlX3NjYWxlOnJ9fSxTZT0odCxlLGkpPT4oe3VfbWF0cml4OnQsdV9pbnZfbWF0cml4OmUsdV9jYW1lcmFfdG9fY2VudGVyX2Rpc3RhbmNlOmkuY2FtZXJhVG9DZW50ZXJEaXN0YW5jZSx1X3ZpZXdwb3J0X3NpemU6W2kud2lkdGgsaS5oZWlnaHRdfSksemU9KHQsZSxpPTEpPT4oe3VfbWF0cml4OnQsdV9jb2xvcjplLHVfb3ZlcmxheTowLHVfb3ZlcmxheV9zY2FsZTppfSksRGU9dD0+KHt1X21hdHJpeDp0fSksTWU9KHQsZSxpLGEpPT4oe3VfbWF0cml4OnQsdV9leHRydWRlX3NjYWxlOkJ0KGUsMSxpKSx1X2ludGVuc2l0eTphfSksQWU9KHQsaSxhLHMpPT57Y29uc3Qgbz1lLkgoKTtlLmFQKG8sMCx0LndpZHRoLHQuaGVpZ2h0LDAsMCwxKTtjb25zdCByPXQuY29udGV4dC5nbDtyZXR1cm4ge3VfbWF0cml4Om8sdV93b3JsZDpbci5kcmF3aW5nQnVmZmVyV2lkdGgsci5kcmF3aW5nQnVmZmVySGVpZ2h0XSx1X2ltYWdlOmEsdV9jb2xvcl9yYW1wOnMsdV9vcGFjaXR5OmkucGFpbnQuZ2V0KFwiaGVhdG1hcC1vcGFjaXR5XCIpfX07ZnVuY3Rpb24gUmUodCxpKXtjb25zdCBhPU1hdGgucG93KDIsaS5jYW5vbmljYWwueikscz1pLmNhbm9uaWNhbC55O3JldHVybiBbbmV3IGUuWigwLHMvYSkudG9MbmdMYXQoKS5sYXQsbmV3IGUuWigwLChzKzEpL2EpLnRvTG5nTGF0KCkubGF0XX1jb25zdCBrZT0odCxlLGksYSk9Pntjb25zdCBzPXQudHJhbnNmb3JtO3JldHVybiB7dV9tYXRyaXg6TmUodCxlLGksYSksdV9yYXRpbzoxL0J0KGUsMSxzLnpvb20pLHVfZGV2aWNlX3BpeGVsX3JhdGlvOnQucGl4ZWxSYXRpbyx1X3VuaXRzX3RvX3BpeGVsczpbMS9zLnBpeGVsc1RvR0xVbml0c1swXSwxL3MucGl4ZWxzVG9HTFVuaXRzWzFdXX19LExlPSh0LGksYSxzLG8pPT5lLmUoa2UodCxpLGEsbykse3VfaW1hZ2U6MCx1X2ltYWdlX2hlaWdodDpzfSksRmU9KHQsZSxpLGEscyk9Pntjb25zdCBvPXQudHJhbnNmb3JtLHI9T2UoZSxvKTtyZXR1cm4ge3VfbWF0cml4Ok5lKHQsZSxpLHMpLHVfdGV4c2l6ZTplLmltYWdlQXRsYXNUZXh0dXJlLnNpemUsdV9yYXRpbzoxL0J0KGUsMSxvLnpvb20pLHVfZGV2aWNlX3BpeGVsX3JhdGlvOnQucGl4ZWxSYXRpbyx1X2ltYWdlOjAsdV9zY2FsZTpbcixhLmZyb21TY2FsZSxhLnRvU2NhbGVdLHVfZmFkZTphLnQsdV91bml0c190b19waXhlbHM6WzEvby5waXhlbHNUb0dMVW5pdHNbMF0sMS9vLnBpeGVsc1RvR0xVbml0c1sxXV19fSxCZT0odCxpLGEscyxvLHIpPT57Y29uc3Qgbj10LmxpbmVBdGxhcyxsPU9lKGksdC50cmFuc2Zvcm0pLGg9XCJyb3VuZFwiPT09YS5sYXlvdXQuZ2V0KFwibGluZS1jYXBcIiksYz1uLmdldERhc2gocy5mcm9tLGgpLHU9bi5nZXREYXNoKHMudG8saCksZD1jLndpZHRoKm8uZnJvbVNjYWxlLF89dS53aWR0aCpvLnRvU2NhbGU7cmV0dXJuIGUuZShrZSh0LGksYSxyKSx7dV9wYXR0ZXJuc2NhbGVfYTpbbC9kLC1jLmhlaWdodC8yXSx1X3BhdHRlcm5zY2FsZV9iOltsL18sLXUuaGVpZ2h0LzJdLHVfc2RmZ2FtbWE6bi53aWR0aC8oMjU2Kk1hdGgubWluKGQsXykqdC5waXhlbFJhdGlvKS8yLHVfaW1hZ2U6MCx1X3RleF95X2E6Yy55LHVfdGV4X3lfYjp1LnksdV9taXg6by50fSl9O2Z1bmN0aW9uIE9lKHQsZSl7cmV0dXJuIDEvQnQodCwxLGUudGlsZVpvb20pfWZ1bmN0aW9uIE5lKHQsZSxpLGEpe3JldHVybiB0LnRyYW5zbGF0ZVBvc01hdHJpeChhP2EucG9zTWF0cml4OmUudGlsZUlELnBvc01hdHJpeCxlLGkucGFpbnQuZ2V0KFwibGluZS10cmFuc2xhdGVcIiksaS5wYWludC5nZXQoXCJsaW5lLXRyYW5zbGF0ZS1hbmNob3JcIikpfWNvbnN0IFVlPSh0LGUsaSxhLHMpPT57cmV0dXJuIHt1X21hdHJpeDp0LHVfdGxfcGFyZW50OmUsdV9zY2FsZV9wYXJlbnQ6aSx1X2J1ZmZlcl9zY2FsZToxLHVfZmFkZV90OmEubWl4LHVfb3BhY2l0eTphLm9wYWNpdHkqcy5wYWludC5nZXQoXCJyYXN0ZXItb3BhY2l0eVwiKSx1X2ltYWdlMDowLHVfaW1hZ2UxOjEsdV9icmlnaHRuZXNzX2xvdzpzLnBhaW50LmdldChcInJhc3Rlci1icmlnaHRuZXNzLW1pblwiKSx1X2JyaWdodG5lc3NfaGlnaDpzLnBhaW50LmdldChcInJhc3Rlci1icmlnaHRuZXNzLW1heFwiKSx1X3NhdHVyYXRpb25fZmFjdG9yOihyPXMucGFpbnQuZ2V0KFwicmFzdGVyLXNhdHVyYXRpb25cIikscj4wPzEtMS8oMS4wMDEtcik6LXIpLHVfY29udHJhc3RfZmFjdG9yOihvPXMucGFpbnQuZ2V0KFwicmFzdGVyLWNvbnRyYXN0XCIpLG8+MD8xLygxLW8pOjErbyksdV9zcGluX3dlaWdodHM6amUocy5wYWludC5nZXQoXCJyYXN0ZXItaHVlLXJvdGF0ZVwiKSl9O3ZhciBvLHI7fTtmdW5jdGlvbiBqZSh0KXt0Kj1NYXRoLlBJLzE4MDtjb25zdCBlPU1hdGguc2luKHQpLGk9TWF0aC5jb3ModCk7cmV0dXJuIFsoMippKzEpLzMsKC1NYXRoLnNxcnQoMykqZS1pKzEpLzMsKE1hdGguc3FydCgzKSplLWkrMSkvM119Y29uc3QgWmU9KHQsZSxpLGEscyxvLHIsbixsLGgsYyx1LGQsXyk9Pntjb25zdCBwPXIudHJhbnNmb3JtO3JldHVybiB7dV9pc19zaXplX3pvb21fY29uc3RhbnQ6KyhcImNvbnN0YW50XCI9PT10fHxcInNvdXJjZVwiPT09dCksdV9pc19zaXplX2ZlYXR1cmVfY29uc3RhbnQ6KyhcImNvbnN0YW50XCI9PT10fHxcImNhbWVyYVwiPT09dCksdV9zaXplX3Q6ZT9lLnVTaXplVDowLHVfc2l6ZTplP2UudVNpemU6MCx1X2NhbWVyYV90b19jZW50ZXJfZGlzdGFuY2U6cC5jYW1lcmFUb0NlbnRlckRpc3RhbmNlLHVfcGl0Y2g6cC5waXRjaC8zNjAqMipNYXRoLlBJLHVfcm90YXRlX3N5bWJvbDoraSx1X2FzcGVjdF9yYXRpbzpwLndpZHRoL3AuaGVpZ2h0LHVfZmFkZV9jaGFuZ2U6ci5vcHRpb25zLmZhZGVEdXJhdGlvbj9yLnN5bWJvbEZhZGVDaGFuZ2U6MSx1X21hdHJpeDpuLHVfbGFiZWxfcGxhbmVfbWF0cml4OmwsdV9jb29yZF9tYXRyaXg6aCx1X2lzX3RleHQ6K3UsdV9waXRjaF93aXRoX21hcDorYSx1X2lzX2Fsb25nX2xpbmU6cyx1X2lzX3ZhcmlhYmxlX2FuY2hvcjpvLHVfdGV4c2l6ZTpkLHVfdGV4dHVyZTowLHVfdHJhbnNsYXRpb246Yyx1X3BpdGNoZWRfc2NhbGU6X319LHFlPSh0LGksYSxzLG8scixuLGwsaCxjLHUsZCxfLHAsbSk9Pntjb25zdCBmPW4udHJhbnNmb3JtO3JldHVybiBlLmUoWmUodCxpLGEscyxvLHIsbixsLGgsYyx1LGQsXyxtKSx7dV9nYW1tYV9zY2FsZTpzP01hdGguY29zKGYuX3BpdGNoKSpmLmNhbWVyYVRvQ2VudGVyRGlzdGFuY2U6MSx1X2RldmljZV9waXhlbF9yYXRpbzpuLnBpeGVsUmF0aW8sdV9pc19oYWxvOitwfSl9LFZlPSh0LGksYSxzLG8scixuLGwsaCxjLHUsZCxfLHApPT5lLmUocWUodCxpLGEscyxvLHIsbixsLGgsYyx1LCEwLGQsITAscCkse3VfdGV4c2l6ZV9pY29uOl8sdV90ZXh0dXJlX2ljb246MX0pLEdlPSh0LGUsaSk9Pih7dV9tYXRyaXg6dCx1X29wYWNpdHk6ZSx1X2NvbG9yOml9KSxIZT0odCxpLGEscyxvLHIpPT5lLmUoZnVuY3Rpb24odCxlLGksYSl7Y29uc3Qgcz1pLmltYWdlTWFuYWdlci5nZXRQYXR0ZXJuKHQuZnJvbS50b1N0cmluZygpKSxvPWkuaW1hZ2VNYW5hZ2VyLmdldFBhdHRlcm4odC50by50b1N0cmluZygpKSx7d2lkdGg6cixoZWlnaHQ6bn09aS5pbWFnZU1hbmFnZXIuZ2V0UGl4ZWxTaXplKCksbD1NYXRoLnBvdygyLGEudGlsZUlELm92ZXJzY2FsZWRaKSxoPWEudGlsZVNpemUqTWF0aC5wb3coMixpLnRyYW5zZm9ybS50aWxlWm9vbSkvbCxjPWgqKGEudGlsZUlELmNhbm9uaWNhbC54K2EudGlsZUlELndyYXAqbCksdT1oKmEudGlsZUlELmNhbm9uaWNhbC55O3JldHVybiB7dV9pbWFnZTowLHVfcGF0dGVybl90bF9hOnMudGwsdV9wYXR0ZXJuX2JyX2E6cy5icix1X3BhdHRlcm5fdGxfYjpvLnRsLHVfcGF0dGVybl9icl9iOm8uYnIsdV90ZXhzaXplOltyLG5dLHVfbWl4OmUudCx1X3BhdHRlcm5fc2l6ZV9hOnMuZGlzcGxheVNpemUsdV9wYXR0ZXJuX3NpemVfYjpvLmRpc3BsYXlTaXplLHVfc2NhbGVfYTplLmZyb21TY2FsZSx1X3NjYWxlX2I6ZS50b1NjYWxlLHVfdGlsZV91bml0c190b19waXhlbHM6MS9CdChhLDEsaS50cmFuc2Zvcm0udGlsZVpvb20pLHVfcGl4ZWxfY29vcmRfdXBwZXI6W2M+PjE2LHU+PjE2XSx1X3BpeGVsX2Nvb3JkX2xvd2VyOls2NTUzNSZjLDY1NTM1JnVdfX0ocyxyLGEsbykse3VfbWF0cml4OnQsdV9vcGFjaXR5Oml9KSxXZT17ZmlsbEV4dHJ1c2lvbjoodCxpKT0+KHt1X21hdHJpeDpuZXcgZS5hSih0LGkudV9tYXRyaXgpLHVfbGlnaHRwb3M6bmV3IGUuYU4odCxpLnVfbGlnaHRwb3MpLHVfbGlnaHRpbnRlbnNpdHk6bmV3IGUuYUkodCxpLnVfbGlnaHRpbnRlbnNpdHkpLHVfbGlnaHRjb2xvcjpuZXcgZS5hTih0LGkudV9saWdodGNvbG9yKSx1X3ZlcnRpY2FsX2dyYWRpZW50Om5ldyBlLmFJKHQsaS51X3ZlcnRpY2FsX2dyYWRpZW50KSx1X29wYWNpdHk6bmV3IGUuYUkodCxpLnVfb3BhY2l0eSl9KSxmaWxsRXh0cnVzaW9uUGF0dGVybjoodCxpKT0+KHt1X21hdHJpeDpuZXcgZS5hSih0LGkudV9tYXRyaXgpLHVfbGlnaHRwb3M6bmV3IGUuYU4odCxpLnVfbGlnaHRwb3MpLHVfbGlnaHRpbnRlbnNpdHk6bmV3IGUuYUkodCxpLnVfbGlnaHRpbnRlbnNpdHkpLHVfbGlnaHRjb2xvcjpuZXcgZS5hTih0LGkudV9saWdodGNvbG9yKSx1X3ZlcnRpY2FsX2dyYWRpZW50Om5ldyBlLmFJKHQsaS51X3ZlcnRpY2FsX2dyYWRpZW50KSx1X2hlaWdodF9mYWN0b3I6bmV3IGUuYUkodCxpLnVfaGVpZ2h0X2ZhY3RvciksdV9pbWFnZTpuZXcgZS5hSCh0LGkudV9pbWFnZSksdV90ZXhzaXplOm5ldyBlLmFPKHQsaS51X3RleHNpemUpLHVfcGl4ZWxfY29vcmRfdXBwZXI6bmV3IGUuYU8odCxpLnVfcGl4ZWxfY29vcmRfdXBwZXIpLHVfcGl4ZWxfY29vcmRfbG93ZXI6bmV3IGUuYU8odCxpLnVfcGl4ZWxfY29vcmRfbG93ZXIpLHVfc2NhbGU6bmV3IGUuYU4odCxpLnVfc2NhbGUpLHVfZmFkZTpuZXcgZS5hSSh0LGkudV9mYWRlKSx1X29wYWNpdHk6bmV3IGUuYUkodCxpLnVfb3BhY2l0eSl9KSxmaWxsOih0LGkpPT4oe3VfbWF0cml4Om5ldyBlLmFKKHQsaS51X21hdHJpeCl9KSxmaWxsUGF0dGVybjoodCxpKT0+KHt1X21hdHJpeDpuZXcgZS5hSih0LGkudV9tYXRyaXgpLHVfaW1hZ2U6bmV3IGUuYUgodCxpLnVfaW1hZ2UpLHVfdGV4c2l6ZTpuZXcgZS5hTyh0LGkudV90ZXhzaXplKSx1X3BpeGVsX2Nvb3JkX3VwcGVyOm5ldyBlLmFPKHQsaS51X3BpeGVsX2Nvb3JkX3VwcGVyKSx1X3BpeGVsX2Nvb3JkX2xvd2VyOm5ldyBlLmFPKHQsaS51X3BpeGVsX2Nvb3JkX2xvd2VyKSx1X3NjYWxlOm5ldyBlLmFOKHQsaS51X3NjYWxlKSx1X2ZhZGU6bmV3IGUuYUkodCxpLnVfZmFkZSl9KSxmaWxsT3V0bGluZToodCxpKT0+KHt1X21hdHJpeDpuZXcgZS5hSih0LGkudV9tYXRyaXgpLHVfd29ybGQ6bmV3IGUuYU8odCxpLnVfd29ybGQpfSksZmlsbE91dGxpbmVQYXR0ZXJuOih0LGkpPT4oe3VfbWF0cml4Om5ldyBlLmFKKHQsaS51X21hdHJpeCksdV93b3JsZDpuZXcgZS5hTyh0LGkudV93b3JsZCksdV9pbWFnZTpuZXcgZS5hSCh0LGkudV9pbWFnZSksdV90ZXhzaXplOm5ldyBlLmFPKHQsaS51X3RleHNpemUpLHVfcGl4ZWxfY29vcmRfdXBwZXI6bmV3IGUuYU8odCxpLnVfcGl4ZWxfY29vcmRfdXBwZXIpLHVfcGl4ZWxfY29vcmRfbG93ZXI6bmV3IGUuYU8odCxpLnVfcGl4ZWxfY29vcmRfbG93ZXIpLHVfc2NhbGU6bmV3IGUuYU4odCxpLnVfc2NhbGUpLHVfZmFkZTpuZXcgZS5hSSh0LGkudV9mYWRlKX0pLGNpcmNsZToodCxpKT0+KHt1X2NhbWVyYV90b19jZW50ZXJfZGlzdGFuY2U6bmV3IGUuYUkodCxpLnVfY2FtZXJhX3RvX2NlbnRlcl9kaXN0YW5jZSksdV9zY2FsZV93aXRoX21hcDpuZXcgZS5hSCh0LGkudV9zY2FsZV93aXRoX21hcCksdV9waXRjaF93aXRoX21hcDpuZXcgZS5hSCh0LGkudV9waXRjaF93aXRoX21hcCksdV9leHRydWRlX3NjYWxlOm5ldyBlLmFPKHQsaS51X2V4dHJ1ZGVfc2NhbGUpLHVfZGV2aWNlX3BpeGVsX3JhdGlvOm5ldyBlLmFJKHQsaS51X2RldmljZV9waXhlbF9yYXRpbyksdV9tYXRyaXg6bmV3IGUuYUoodCxpLnVfbWF0cml4KX0pLGNvbGxpc2lvbkJveDoodCxpKT0+KHt1X21hdHJpeDpuZXcgZS5hSih0LGkudV9tYXRyaXgpLHVfcGl4ZWxfZXh0cnVkZV9zY2FsZTpuZXcgZS5hTyh0LGkudV9waXhlbF9leHRydWRlX3NjYWxlKX0pLGNvbGxpc2lvbkNpcmNsZToodCxpKT0+KHt1X21hdHJpeDpuZXcgZS5hSih0LGkudV9tYXRyaXgpLHVfaW52X21hdHJpeDpuZXcgZS5hSih0LGkudV9pbnZfbWF0cml4KSx1X2NhbWVyYV90b19jZW50ZXJfZGlzdGFuY2U6bmV3IGUuYUkodCxpLnVfY2FtZXJhX3RvX2NlbnRlcl9kaXN0YW5jZSksdV92aWV3cG9ydF9zaXplOm5ldyBlLmFPKHQsaS51X3ZpZXdwb3J0X3NpemUpfSksZGVidWc6KHQsaSk9Pih7dV9jb2xvcjpuZXcgZS5hTCh0LGkudV9jb2xvciksdV9tYXRyaXg6bmV3IGUuYUoodCxpLnVfbWF0cml4KSx1X292ZXJsYXk6bmV3IGUuYUgodCxpLnVfb3ZlcmxheSksdV9vdmVybGF5X3NjYWxlOm5ldyBlLmFJKHQsaS51X292ZXJsYXlfc2NhbGUpfSksY2xpcHBpbmdNYXNrOih0LGkpPT4oe3VfbWF0cml4Om5ldyBlLmFKKHQsaS51X21hdHJpeCl9KSxoZWF0bWFwOih0LGkpPT4oe3VfZXh0cnVkZV9zY2FsZTpuZXcgZS5hSSh0LGkudV9leHRydWRlX3NjYWxlKSx1X2ludGVuc2l0eTpuZXcgZS5hSSh0LGkudV9pbnRlbnNpdHkpLHVfbWF0cml4Om5ldyBlLmFKKHQsaS51X21hdHJpeCl9KSxoZWF0bWFwVGV4dHVyZToodCxpKT0+KHt1X21hdHJpeDpuZXcgZS5hSih0LGkudV9tYXRyaXgpLHVfd29ybGQ6bmV3IGUuYU8odCxpLnVfd29ybGQpLHVfaW1hZ2U6bmV3IGUuYUgodCxpLnVfaW1hZ2UpLHVfY29sb3JfcmFtcDpuZXcgZS5hSCh0LGkudV9jb2xvcl9yYW1wKSx1X29wYWNpdHk6bmV3IGUuYUkodCxpLnVfb3BhY2l0eSl9KSxoaWxsc2hhZGU6KHQsaSk9Pih7dV9tYXRyaXg6bmV3IGUuYUoodCxpLnVfbWF0cml4KSx1X2ltYWdlOm5ldyBlLmFIKHQsaS51X2ltYWdlKSx1X2xhdHJhbmdlOm5ldyBlLmFPKHQsaS51X2xhdHJhbmdlKSx1X2xpZ2h0Om5ldyBlLmFPKHQsaS51X2xpZ2h0KSx1X3NoYWRvdzpuZXcgZS5hTCh0LGkudV9zaGFkb3cpLHVfaGlnaGxpZ2h0Om5ldyBlLmFMKHQsaS51X2hpZ2hsaWdodCksdV9hY2NlbnQ6bmV3IGUuYUwodCxpLnVfYWNjZW50KX0pLGhpbGxzaGFkZVByZXBhcmU6KHQsaSk9Pih7dV9tYXRyaXg6bmV3IGUuYUoodCxpLnVfbWF0cml4KSx1X2ltYWdlOm5ldyBlLmFIKHQsaS51X2ltYWdlKSx1X2RpbWVuc2lvbjpuZXcgZS5hTyh0LGkudV9kaW1lbnNpb24pLHVfem9vbTpuZXcgZS5hSSh0LGkudV96b29tKSx1X3VucGFjazpuZXcgZS5hSyh0LGkudV91bnBhY2spfSksbGluZToodCxpKT0+KHt1X21hdHJpeDpuZXcgZS5hSih0LGkudV9tYXRyaXgpLHVfcmF0aW86bmV3IGUuYUkodCxpLnVfcmF0aW8pLHVfZGV2aWNlX3BpeGVsX3JhdGlvOm5ldyBlLmFJKHQsaS51X2RldmljZV9waXhlbF9yYXRpbyksdV91bml0c190b19waXhlbHM6bmV3IGUuYU8odCxpLnVfdW5pdHNfdG9fcGl4ZWxzKX0pLGxpbmVHcmFkaWVudDoodCxpKT0+KHt1X21hdHJpeDpuZXcgZS5hSih0LGkudV9tYXRyaXgpLHVfcmF0aW86bmV3IGUuYUkodCxpLnVfcmF0aW8pLHVfZGV2aWNlX3BpeGVsX3JhdGlvOm5ldyBlLmFJKHQsaS51X2RldmljZV9waXhlbF9yYXRpbyksdV91bml0c190b19waXhlbHM6bmV3IGUuYU8odCxpLnVfdW5pdHNfdG9fcGl4ZWxzKSx1X2ltYWdlOm5ldyBlLmFIKHQsaS51X2ltYWdlKSx1X2ltYWdlX2hlaWdodDpuZXcgZS5hSSh0LGkudV9pbWFnZV9oZWlnaHQpfSksbGluZVBhdHRlcm46KHQsaSk9Pih7dV9tYXRyaXg6bmV3IGUuYUoodCxpLnVfbWF0cml4KSx1X3RleHNpemU6bmV3IGUuYU8odCxpLnVfdGV4c2l6ZSksdV9yYXRpbzpuZXcgZS5hSSh0LGkudV9yYXRpbyksdV9kZXZpY2VfcGl4ZWxfcmF0aW86bmV3IGUuYUkodCxpLnVfZGV2aWNlX3BpeGVsX3JhdGlvKSx1X2ltYWdlOm5ldyBlLmFIKHQsaS51X2ltYWdlKSx1X3VuaXRzX3RvX3BpeGVsczpuZXcgZS5hTyh0LGkudV91bml0c190b19waXhlbHMpLHVfc2NhbGU6bmV3IGUuYU4odCxpLnVfc2NhbGUpLHVfZmFkZTpuZXcgZS5hSSh0LGkudV9mYWRlKX0pLGxpbmVTREY6KHQsaSk9Pih7dV9tYXRyaXg6bmV3IGUuYUoodCxpLnVfbWF0cml4KSx1X3JhdGlvOm5ldyBlLmFJKHQsaS51X3JhdGlvKSx1X2RldmljZV9waXhlbF9yYXRpbzpuZXcgZS5hSSh0LGkudV9kZXZpY2VfcGl4ZWxfcmF0aW8pLHVfdW5pdHNfdG9fcGl4ZWxzOm5ldyBlLmFPKHQsaS51X3VuaXRzX3RvX3BpeGVscyksdV9wYXR0ZXJuc2NhbGVfYTpuZXcgZS5hTyh0LGkudV9wYXR0ZXJuc2NhbGVfYSksdV9wYXR0ZXJuc2NhbGVfYjpuZXcgZS5hTyh0LGkudV9wYXR0ZXJuc2NhbGVfYiksdV9zZGZnYW1tYTpuZXcgZS5hSSh0LGkudV9zZGZnYW1tYSksdV9pbWFnZTpuZXcgZS5hSCh0LGkudV9pbWFnZSksdV90ZXhfeV9hOm5ldyBlLmFJKHQsaS51X3RleF95X2EpLHVfdGV4X3lfYjpuZXcgZS5hSSh0LGkudV90ZXhfeV9iKSx1X21peDpuZXcgZS5hSSh0LGkudV9taXgpfSkscmFzdGVyOih0LGkpPT4oe3VfbWF0cml4Om5ldyBlLmFKKHQsaS51X21hdHJpeCksdV90bF9wYXJlbnQ6bmV3IGUuYU8odCxpLnVfdGxfcGFyZW50KSx1X3NjYWxlX3BhcmVudDpuZXcgZS5hSSh0LGkudV9zY2FsZV9wYXJlbnQpLHVfYnVmZmVyX3NjYWxlOm5ldyBlLmFJKHQsaS51X2J1ZmZlcl9zY2FsZSksdV9mYWRlX3Q6bmV3IGUuYUkodCxpLnVfZmFkZV90KSx1X29wYWNpdHk6bmV3IGUuYUkodCxpLnVfb3BhY2l0eSksdV9pbWFnZTA6bmV3IGUuYUgodCxpLnVfaW1hZ2UwKSx1X2ltYWdlMTpuZXcgZS5hSCh0LGkudV9pbWFnZTEpLHVfYnJpZ2h0bmVzc19sb3c6bmV3IGUuYUkodCxpLnVfYnJpZ2h0bmVzc19sb3cpLHVfYnJpZ2h0bmVzc19oaWdoOm5ldyBlLmFJKHQsaS51X2JyaWdodG5lc3NfaGlnaCksdV9zYXR1cmF0aW9uX2ZhY3RvcjpuZXcgZS5hSSh0LGkudV9zYXR1cmF0aW9uX2ZhY3RvciksdV9jb250cmFzdF9mYWN0b3I6bmV3IGUuYUkodCxpLnVfY29udHJhc3RfZmFjdG9yKSx1X3NwaW5fd2VpZ2h0czpuZXcgZS5hTih0LGkudV9zcGluX3dlaWdodHMpfSksc3ltYm9sSWNvbjoodCxpKT0+KHt1X2lzX3NpemVfem9vbV9jb25zdGFudDpuZXcgZS5hSCh0LGkudV9pc19zaXplX3pvb21fY29uc3RhbnQpLHVfaXNfc2l6ZV9mZWF0dXJlX2NvbnN0YW50Om5ldyBlLmFIKHQsaS51X2lzX3NpemVfZmVhdHVyZV9jb25zdGFudCksdV9zaXplX3Q6bmV3IGUuYUkodCxpLnVfc2l6ZV90KSx1X3NpemU6bmV3IGUuYUkodCxpLnVfc2l6ZSksdV9jYW1lcmFfdG9fY2VudGVyX2Rpc3RhbmNlOm5ldyBlLmFJKHQsaS51X2NhbWVyYV90b19jZW50ZXJfZGlzdGFuY2UpLHVfcGl0Y2g6bmV3IGUuYUkodCxpLnVfcGl0Y2gpLHVfcm90YXRlX3N5bWJvbDpuZXcgZS5hSCh0LGkudV9yb3RhdGVfc3ltYm9sKSx1X2FzcGVjdF9yYXRpbzpuZXcgZS5hSSh0LGkudV9hc3BlY3RfcmF0aW8pLHVfZmFkZV9jaGFuZ2U6bmV3IGUuYUkodCxpLnVfZmFkZV9jaGFuZ2UpLHVfbWF0cml4Om5ldyBlLmFKKHQsaS51X21hdHJpeCksdV9sYWJlbF9wbGFuZV9tYXRyaXg6bmV3IGUuYUoodCxpLnVfbGFiZWxfcGxhbmVfbWF0cml4KSx1X2Nvb3JkX21hdHJpeDpuZXcgZS5hSih0LGkudV9jb29yZF9tYXRyaXgpLHVfaXNfdGV4dDpuZXcgZS5hSCh0LGkudV9pc190ZXh0KSx1X3BpdGNoX3dpdGhfbWFwOm5ldyBlLmFIKHQsaS51X3BpdGNoX3dpdGhfbWFwKSx1X2lzX2Fsb25nX2xpbmU6bmV3IGUuYUgodCxpLnVfaXNfYWxvbmdfbGluZSksdV9pc192YXJpYWJsZV9hbmNob3I6bmV3IGUuYUgodCxpLnVfaXNfdmFyaWFibGVfYW5jaG9yKSx1X3RleHNpemU6bmV3IGUuYU8odCxpLnVfdGV4c2l6ZSksdV90ZXh0dXJlOm5ldyBlLmFIKHQsaS51X3RleHR1cmUpLHVfdHJhbnNsYXRpb246bmV3IGUuYU8odCxpLnVfdHJhbnNsYXRpb24pLHVfcGl0Y2hlZF9zY2FsZTpuZXcgZS5hSSh0LGkudV9waXRjaGVkX3NjYWxlKX0pLHN5bWJvbFNERjoodCxpKT0+KHt1X2lzX3NpemVfem9vbV9jb25zdGFudDpuZXcgZS5hSCh0LGkudV9pc19zaXplX3pvb21fY29uc3RhbnQpLHVfaXNfc2l6ZV9mZWF0dXJlX2NvbnN0YW50Om5ldyBlLmFIKHQsaS51X2lzX3NpemVfZmVhdHVyZV9jb25zdGFudCksdV9zaXplX3Q6bmV3IGUuYUkodCxpLnVfc2l6ZV90KSx1X3NpemU6bmV3IGUuYUkodCxpLnVfc2l6ZSksdV9jYW1lcmFfdG9fY2VudGVyX2Rpc3RhbmNlOm5ldyBlLmFJKHQsaS51X2NhbWVyYV90b19jZW50ZXJfZGlzdGFuY2UpLHVfcGl0Y2g6bmV3IGUuYUkodCxpLnVfcGl0Y2gpLHVfcm90YXRlX3N5bWJvbDpuZXcgZS5hSCh0LGkudV9yb3RhdGVfc3ltYm9sKSx1X2FzcGVjdF9yYXRpbzpuZXcgZS5hSSh0LGkudV9hc3BlY3RfcmF0aW8pLHVfZmFkZV9jaGFuZ2U6bmV3IGUuYUkodCxpLnVfZmFkZV9jaGFuZ2UpLHVfbWF0cml4Om5ldyBlLmFKKHQsaS51X21hdHJpeCksdV9sYWJlbF9wbGFuZV9tYXRyaXg6bmV3IGUuYUoodCxpLnVfbGFiZWxfcGxhbmVfbWF0cml4KSx1X2Nvb3JkX21hdHJpeDpuZXcgZS5hSih0LGkudV9jb29yZF9tYXRyaXgpLHVfaXNfdGV4dDpuZXcgZS5hSCh0LGkudV9pc190ZXh0KSx1X3BpdGNoX3dpdGhfbWFwOm5ldyBlLmFIKHQsaS51X3BpdGNoX3dpdGhfbWFwKSx1X2lzX2Fsb25nX2xpbmU6bmV3IGUuYUgodCxpLnVfaXNfYWxvbmdfbGluZSksdV9pc192YXJpYWJsZV9hbmNob3I6bmV3IGUuYUgodCxpLnVfaXNfdmFyaWFibGVfYW5jaG9yKSx1X3RleHNpemU6bmV3IGUuYU8odCxpLnVfdGV4c2l6ZSksdV90ZXh0dXJlOm5ldyBlLmFIKHQsaS51X3RleHR1cmUpLHVfZ2FtbWFfc2NhbGU6bmV3IGUuYUkodCxpLnVfZ2FtbWFfc2NhbGUpLHVfZGV2aWNlX3BpeGVsX3JhdGlvOm5ldyBlLmFJKHQsaS51X2RldmljZV9waXhlbF9yYXRpbyksdV9pc19oYWxvOm5ldyBlLmFIKHQsaS51X2lzX2hhbG8pLHVfdHJhbnNsYXRpb246bmV3IGUuYU8odCxpLnVfdHJhbnNsYXRpb24pLHVfcGl0Y2hlZF9zY2FsZTpuZXcgZS5hSSh0LGkudV9waXRjaGVkX3NjYWxlKX0pLHN5bWJvbFRleHRBbmRJY29uOih0LGkpPT4oe3VfaXNfc2l6ZV96b29tX2NvbnN0YW50Om5ldyBlLmFIKHQsaS51X2lzX3NpemVfem9vbV9jb25zdGFudCksdV9pc19zaXplX2ZlYXR1cmVfY29uc3RhbnQ6bmV3IGUuYUgodCxpLnVfaXNfc2l6ZV9mZWF0dXJlX2NvbnN0YW50KSx1X3NpemVfdDpuZXcgZS5hSSh0LGkudV9zaXplX3QpLHVfc2l6ZTpuZXcgZS5hSSh0LGkudV9zaXplKSx1X2NhbWVyYV90b19jZW50ZXJfZGlzdGFuY2U6bmV3IGUuYUkodCxpLnVfY2FtZXJhX3RvX2NlbnRlcl9kaXN0YW5jZSksdV9waXRjaDpuZXcgZS5hSSh0LGkudV9waXRjaCksdV9yb3RhdGVfc3ltYm9sOm5ldyBlLmFIKHQsaS51X3JvdGF0ZV9zeW1ib2wpLHVfYXNwZWN0X3JhdGlvOm5ldyBlLmFJKHQsaS51X2FzcGVjdF9yYXRpbyksdV9mYWRlX2NoYW5nZTpuZXcgZS5hSSh0LGkudV9mYWRlX2NoYW5nZSksdV9tYXRyaXg6bmV3IGUuYUoodCxpLnVfbWF0cml4KSx1X2xhYmVsX3BsYW5lX21hdHJpeDpuZXcgZS5hSih0LGkudV9sYWJlbF9wbGFuZV9tYXRyaXgpLHVfY29vcmRfbWF0cml4Om5ldyBlLmFKKHQsaS51X2Nvb3JkX21hdHJpeCksdV9pc190ZXh0Om5ldyBlLmFIKHQsaS51X2lzX3RleHQpLHVfcGl0Y2hfd2l0aF9tYXA6bmV3IGUuYUgodCxpLnVfcGl0Y2hfd2l0aF9tYXApLHVfaXNfYWxvbmdfbGluZTpuZXcgZS5hSCh0LGkudV9pc19hbG9uZ19saW5lKSx1X2lzX3ZhcmlhYmxlX2FuY2hvcjpuZXcgZS5hSCh0LGkudV9pc192YXJpYWJsZV9hbmNob3IpLHVfdGV4c2l6ZTpuZXcgZS5hTyh0LGkudV90ZXhzaXplKSx1X3RleHNpemVfaWNvbjpuZXcgZS5hTyh0LGkudV90ZXhzaXplX2ljb24pLHVfdGV4dHVyZTpuZXcgZS5hSCh0LGkudV90ZXh0dXJlKSx1X3RleHR1cmVfaWNvbjpuZXcgZS5hSCh0LGkudV90ZXh0dXJlX2ljb24pLHVfZ2FtbWFfc2NhbGU6bmV3IGUuYUkodCxpLnVfZ2FtbWFfc2NhbGUpLHVfZGV2aWNlX3BpeGVsX3JhdGlvOm5ldyBlLmFJKHQsaS51X2RldmljZV9waXhlbF9yYXRpbyksdV9pc19oYWxvOm5ldyBlLmFIKHQsaS51X2lzX2hhbG8pLHVfdHJhbnNsYXRpb246bmV3IGUuYU8odCxpLnVfdHJhbnNsYXRpb24pLHVfcGl0Y2hlZF9zY2FsZTpuZXcgZS5hSSh0LGkudV9waXRjaGVkX3NjYWxlKX0pLGJhY2tncm91bmQ6KHQsaSk9Pih7dV9tYXRyaXg6bmV3IGUuYUoodCxpLnVfbWF0cml4KSx1X29wYWNpdHk6bmV3IGUuYUkodCxpLnVfb3BhY2l0eSksdV9jb2xvcjpuZXcgZS5hTCh0LGkudV9jb2xvcil9KSxiYWNrZ3JvdW5kUGF0dGVybjoodCxpKT0+KHt1X21hdHJpeDpuZXcgZS5hSih0LGkudV9tYXRyaXgpLHVfb3BhY2l0eTpuZXcgZS5hSSh0LGkudV9vcGFjaXR5KSx1X2ltYWdlOm5ldyBlLmFIKHQsaS51X2ltYWdlKSx1X3BhdHRlcm5fdGxfYTpuZXcgZS5hTyh0LGkudV9wYXR0ZXJuX3RsX2EpLHVfcGF0dGVybl9icl9hOm5ldyBlLmFPKHQsaS51X3BhdHRlcm5fYnJfYSksdV9wYXR0ZXJuX3RsX2I6bmV3IGUuYU8odCxpLnVfcGF0dGVybl90bF9iKSx1X3BhdHRlcm5fYnJfYjpuZXcgZS5hTyh0LGkudV9wYXR0ZXJuX2JyX2IpLHVfdGV4c2l6ZTpuZXcgZS5hTyh0LGkudV90ZXhzaXplKSx1X21peDpuZXcgZS5hSSh0LGkudV9taXgpLHVfcGF0dGVybl9zaXplX2E6bmV3IGUuYU8odCxpLnVfcGF0dGVybl9zaXplX2EpLHVfcGF0dGVybl9zaXplX2I6bmV3IGUuYU8odCxpLnVfcGF0dGVybl9zaXplX2IpLHVfc2NhbGVfYTpuZXcgZS5hSSh0LGkudV9zY2FsZV9hKSx1X3NjYWxlX2I6bmV3IGUuYUkodCxpLnVfc2NhbGVfYiksdV9waXhlbF9jb29yZF91cHBlcjpuZXcgZS5hTyh0LGkudV9waXhlbF9jb29yZF91cHBlciksdV9waXhlbF9jb29yZF9sb3dlcjpuZXcgZS5hTyh0LGkudV9waXhlbF9jb29yZF9sb3dlciksdV90aWxlX3VuaXRzX3RvX3BpeGVsczpuZXcgZS5hSSh0LGkudV90aWxlX3VuaXRzX3RvX3BpeGVscyl9KSx0ZXJyYWluOih0LGkpPT4oe3VfbWF0cml4Om5ldyBlLmFKKHQsaS51X21hdHJpeCksdV90ZXh0dXJlOm5ldyBlLmFIKHQsaS51X3RleHR1cmUpLHVfZWxlX2RlbHRhOm5ldyBlLmFJKHQsaS51X2VsZV9kZWx0YSksdV9mb2dfbWF0cml4Om5ldyBlLmFKKHQsaS51X2ZvZ19tYXRyaXgpLHVfZm9nX2NvbG9yOm5ldyBlLmFMKHQsaS51X2ZvZ19jb2xvciksdV9mb2dfZ3JvdW5kX2JsZW5kOm5ldyBlLmFJKHQsaS51X2ZvZ19ncm91bmRfYmxlbmQpLHVfZm9nX2dyb3VuZF9ibGVuZF9vcGFjaXR5Om5ldyBlLmFJKHQsaS51X2ZvZ19ncm91bmRfYmxlbmRfb3BhY2l0eSksdV9ob3Jpem9uX2NvbG9yOm5ldyBlLmFMKHQsaS51X2hvcml6b25fY29sb3IpLHVfaG9yaXpvbl9mb2dfYmxlbmQ6bmV3IGUuYUkodCxpLnVfaG9yaXpvbl9mb2dfYmxlbmQpfSksdGVycmFpbkRlcHRoOih0LGkpPT4oe3VfbWF0cml4Om5ldyBlLmFKKHQsaS51X21hdHJpeCksdV9lbGVfZGVsdGE6bmV3IGUuYUkodCxpLnVfZWxlX2RlbHRhKX0pLHRlcnJhaW5Db29yZHM6KHQsaSk9Pih7dV9tYXRyaXg6bmV3IGUuYUoodCxpLnVfbWF0cml4KSx1X3RleHR1cmU6bmV3IGUuYUgodCxpLnVfdGV4dHVyZSksdV90ZXJyYWluX2Nvb3Jkc19pZDpuZXcgZS5hSSh0LGkudV90ZXJyYWluX2Nvb3Jkc19pZCksdV9lbGVfZGVsdGE6bmV3IGUuYUkodCxpLnVfZWxlX2RlbHRhKX0pLHNreToodCxpKT0+KHt1X3NreV9jb2xvcjpuZXcgZS5hTCh0LGkudV9za3lfY29sb3IpLHVfaG9yaXpvbl9jb2xvcjpuZXcgZS5hTCh0LGkudV9ob3Jpem9uX2NvbG9yKSx1X2hvcml6b246bmV3IGUuYUkodCxpLnVfaG9yaXpvbiksdV9za3lfaG9yaXpvbl9ibGVuZDpuZXcgZS5hSSh0LGkudV9za3lfaG9yaXpvbl9ibGVuZCl9KX07Y2xhc3MgJGV7Y29uc3RydWN0b3IodCxlLGkpe3RoaXMuY29udGV4dD10O2NvbnN0IGE9dC5nbDt0aGlzLmJ1ZmZlcj1hLmNyZWF0ZUJ1ZmZlcigpLHRoaXMuZHluYW1pY0RyYXc9Qm9vbGVhbihpKSx0aGlzLmNvbnRleHQudW5iaW5kVkFPKCksdC5iaW5kRWxlbWVudEJ1ZmZlci5zZXQodGhpcy5idWZmZXIpLGEuYnVmZmVyRGF0YShhLkVMRU1FTlRfQVJSQVlfQlVGRkVSLGUuYXJyYXlCdWZmZXIsdGhpcy5keW5hbWljRHJhdz9hLkRZTkFNSUNfRFJBVzphLlNUQVRJQ19EUkFXKSx0aGlzLmR5bmFtaWNEcmF3fHxkZWxldGUgZS5hcnJheUJ1ZmZlcjt9YmluZCgpe3RoaXMuY29udGV4dC5iaW5kRWxlbWVudEJ1ZmZlci5zZXQodGhpcy5idWZmZXIpO311cGRhdGVEYXRhKHQpe2NvbnN0IGU9dGhpcy5jb250ZXh0LmdsO2lmKCF0aGlzLmR5bmFtaWNEcmF3KXRocm93IG5ldyBFcnJvcihcIkF0dGVtcHRlZCB0byB1cGRhdGUgZGF0YSB3aGlsZSBub3QgaW4gZHluYW1pYyBtb2RlLlwiKTt0aGlzLmNvbnRleHQudW5iaW5kVkFPKCksdGhpcy5iaW5kKCksZS5idWZmZXJTdWJEYXRhKGUuRUxFTUVOVF9BUlJBWV9CVUZGRVIsMCx0LmFycmF5QnVmZmVyKTt9ZGVzdHJveSgpe3RoaXMuYnVmZmVyJiYodGhpcy5jb250ZXh0LmdsLmRlbGV0ZUJ1ZmZlcih0aGlzLmJ1ZmZlciksZGVsZXRlIHRoaXMuYnVmZmVyKTt9fWNvbnN0IFhlPXtJbnQ4OlwiQllURVwiLFVpbnQ4OlwiVU5TSUdORURfQllURVwiLEludDE2OlwiU0hPUlRcIixVaW50MTY6XCJVTlNJR05FRF9TSE9SVFwiLEludDMyOlwiSU5UXCIsVWludDMyOlwiVU5TSUdORURfSU5UXCIsRmxvYXQzMjpcIkZMT0FUXCJ9O2NsYXNzIEtle2NvbnN0cnVjdG9yKHQsZSxpLGEpe3RoaXMubGVuZ3RoPWUubGVuZ3RoLHRoaXMuYXR0cmlidXRlcz1pLHRoaXMuaXRlbVNpemU9ZS5ieXRlc1BlckVsZW1lbnQsdGhpcy5keW5hbWljRHJhdz1hLHRoaXMuY29udGV4dD10O2NvbnN0IHM9dC5nbDt0aGlzLmJ1ZmZlcj1zLmNyZWF0ZUJ1ZmZlcigpLHQuYmluZFZlcnRleEJ1ZmZlci5zZXQodGhpcy5idWZmZXIpLHMuYnVmZmVyRGF0YShzLkFSUkFZX0JVRkZFUixlLmFycmF5QnVmZmVyLHRoaXMuZHluYW1pY0RyYXc/cy5EWU5BTUlDX0RSQVc6cy5TVEFUSUNfRFJBVyksdGhpcy5keW5hbWljRHJhd3x8ZGVsZXRlIGUuYXJyYXlCdWZmZXI7fWJpbmQoKXt0aGlzLmNvbnRleHQuYmluZFZlcnRleEJ1ZmZlci5zZXQodGhpcy5idWZmZXIpO311cGRhdGVEYXRhKHQpe2lmKHQubGVuZ3RoIT09dGhpcy5sZW5ndGgpdGhyb3cgbmV3IEVycm9yKGBMZW5ndGggb2YgbmV3IGRhdGEgaXMgJHt0Lmxlbmd0aH0sIHdoaWNoIGRvZXNuJ3QgbWF0Y2ggY3VycmVudCBsZW5ndGggb2YgJHt0aGlzLmxlbmd0aH1gKTtjb25zdCBlPXRoaXMuY29udGV4dC5nbDt0aGlzLmJpbmQoKSxlLmJ1ZmZlclN1YkRhdGEoZS5BUlJBWV9CVUZGRVIsMCx0LmFycmF5QnVmZmVyKTt9ZW5hYmxlQXR0cmlidXRlcyh0LGUpe2ZvcihsZXQgaT0wO2k8dGhpcy5hdHRyaWJ1dGVzLmxlbmd0aDtpKyspe2NvbnN0IGE9ZS5hdHRyaWJ1dGVzW3RoaXMuYXR0cmlidXRlc1tpXS5uYW1lXTt2b2lkIDAhPT1hJiZ0LmVuYWJsZVZlcnRleEF0dHJpYkFycmF5KGEpO319c2V0VmVydGV4QXR0cmliUG9pbnRlcnModCxlLGkpe2ZvcihsZXQgYT0wO2E8dGhpcy5hdHRyaWJ1dGVzLmxlbmd0aDthKyspe2NvbnN0IHM9dGhpcy5hdHRyaWJ1dGVzW2FdLG89ZS5hdHRyaWJ1dGVzW3MubmFtZV07dm9pZCAwIT09byYmdC52ZXJ0ZXhBdHRyaWJQb2ludGVyKG8scy5jb21wb25lbnRzLHRbWGVbcy50eXBlXV0sITEsdGhpcy5pdGVtU2l6ZSxzLm9mZnNldCt0aGlzLml0ZW1TaXplKihpfHwwKSk7fX1kZXN0cm95KCl7dGhpcy5idWZmZXImJih0aGlzLmNvbnRleHQuZ2wuZGVsZXRlQnVmZmVyKHRoaXMuYnVmZmVyKSxkZWxldGUgdGhpcy5idWZmZXIpO319Y29uc3QgSmU9bmV3IFdlYWtNYXA7ZnVuY3Rpb24gWWUodCl7dmFyIGU7aWYoSmUuaGFzKHQpKXJldHVybiBKZS5nZXQodCk7e2NvbnN0IGk9bnVsbD09PShlPXQuZ2V0UGFyYW1ldGVyKHQuVkVSU0lPTikpfHx2b2lkIDA9PT1lP3ZvaWQgMDplLnN0YXJ0c1dpdGgoXCJXZWJHTCAyLjBcIik7cmV0dXJuIEplLnNldCh0LGkpLGl9fWNsYXNzIFFle2NvbnN0cnVjdG9yKHQpe3RoaXMuZ2w9dC5nbCx0aGlzLmRlZmF1bHQ9dGhpcy5nZXREZWZhdWx0KCksdGhpcy5jdXJyZW50PXRoaXMuZGVmYXVsdCx0aGlzLmRpcnR5PSExO31nZXQoKXtyZXR1cm4gdGhpcy5jdXJyZW50fXNldCh0KXt9Z2V0RGVmYXVsdCgpe3JldHVybiB0aGlzLmRlZmF1bHR9c2V0RGVmYXVsdCgpe3RoaXMuc2V0KHRoaXMuZGVmYXVsdCk7fX1jbGFzcyB0aSBleHRlbmRzIFFle2dldERlZmF1bHQoKXtyZXR1cm4gZS5hTS50cmFuc3BhcmVudH1zZXQodCl7Y29uc3QgZT10aGlzLmN1cnJlbnQ7KHQuciE9PWUucnx8dC5nIT09ZS5nfHx0LmIhPT1lLmJ8fHQuYSE9PWUuYXx8dGhpcy5kaXJ0eSkmJih0aGlzLmdsLmNsZWFyQ29sb3IodC5yLHQuZyx0LmIsdC5hKSx0aGlzLmN1cnJlbnQ9dCx0aGlzLmRpcnR5PSExKTt9fWNsYXNzIGVpIGV4dGVuZHMgUWV7Z2V0RGVmYXVsdCgpe3JldHVybiAxfXNldCh0KXsodCE9PXRoaXMuY3VycmVudHx8dGhpcy5kaXJ0eSkmJih0aGlzLmdsLmNsZWFyRGVwdGgodCksdGhpcy5jdXJyZW50PXQsdGhpcy5kaXJ0eT0hMSk7fX1jbGFzcyBpaSBleHRlbmRzIFFle2dldERlZmF1bHQoKXtyZXR1cm4gMH1zZXQodCl7KHQhPT10aGlzLmN1cnJlbnR8fHRoaXMuZGlydHkpJiYodGhpcy5nbC5jbGVhclN0ZW5jaWwodCksdGhpcy5jdXJyZW50PXQsdGhpcy5kaXJ0eT0hMSk7fX1jbGFzcyBhaSBleHRlbmRzIFFle2dldERlZmF1bHQoKXtyZXR1cm4gWyEwLCEwLCEwLCEwXX1zZXQodCl7Y29uc3QgZT10aGlzLmN1cnJlbnQ7KHRbMF0hPT1lWzBdfHx0WzFdIT09ZVsxXXx8dFsyXSE9PWVbMl18fHRbM10hPT1lWzNdfHx0aGlzLmRpcnR5KSYmKHRoaXMuZ2wuY29sb3JNYXNrKHRbMF0sdFsxXSx0WzJdLHRbM10pLHRoaXMuY3VycmVudD10LHRoaXMuZGlydHk9ITEpO319Y2xhc3Mgc2kgZXh0ZW5kcyBRZXtnZXREZWZhdWx0KCl7cmV0dXJuICEwfXNldCh0KXsodCE9PXRoaXMuY3VycmVudHx8dGhpcy5kaXJ0eSkmJih0aGlzLmdsLmRlcHRoTWFzayh0KSx0aGlzLmN1cnJlbnQ9dCx0aGlzLmRpcnR5PSExKTt9fWNsYXNzIG9pIGV4dGVuZHMgUWV7Z2V0RGVmYXVsdCgpe3JldHVybiAyNTV9c2V0KHQpeyh0IT09dGhpcy5jdXJyZW50fHx0aGlzLmRpcnR5KSYmKHRoaXMuZ2wuc3RlbmNpbE1hc2sodCksdGhpcy5jdXJyZW50PXQsdGhpcy5kaXJ0eT0hMSk7fX1jbGFzcyByaSBleHRlbmRzIFFle2dldERlZmF1bHQoKXtyZXR1cm4ge2Z1bmM6dGhpcy5nbC5BTFdBWVMscmVmOjAsbWFzazoyNTV9fXNldCh0KXtjb25zdCBlPXRoaXMuY3VycmVudDsodC5mdW5jIT09ZS5mdW5jfHx0LnJlZiE9PWUucmVmfHx0Lm1hc2shPT1lLm1hc2t8fHRoaXMuZGlydHkpJiYodGhpcy5nbC5zdGVuY2lsRnVuYyh0LmZ1bmMsdC5yZWYsdC5tYXNrKSx0aGlzLmN1cnJlbnQ9dCx0aGlzLmRpcnR5PSExKTt9fWNsYXNzIG5pIGV4dGVuZHMgUWV7Z2V0RGVmYXVsdCgpe2NvbnN0IHQ9dGhpcy5nbDtyZXR1cm4gW3QuS0VFUCx0LktFRVAsdC5LRUVQXX1zZXQodCl7Y29uc3QgZT10aGlzLmN1cnJlbnQ7KHRbMF0hPT1lWzBdfHx0WzFdIT09ZVsxXXx8dFsyXSE9PWVbMl18fHRoaXMuZGlydHkpJiYodGhpcy5nbC5zdGVuY2lsT3AodFswXSx0WzFdLHRbMl0pLHRoaXMuY3VycmVudD10LHRoaXMuZGlydHk9ITEpO319Y2xhc3MgbGkgZXh0ZW5kcyBRZXtnZXREZWZhdWx0KCl7cmV0dXJuICExfXNldCh0KXtpZih0PT09dGhpcy5jdXJyZW50JiYhdGhpcy5kaXJ0eSlyZXR1cm47Y29uc3QgZT10aGlzLmdsO3Q/ZS5lbmFibGUoZS5TVEVOQ0lMX1RFU1QpOmUuZGlzYWJsZShlLlNURU5DSUxfVEVTVCksdGhpcy5jdXJyZW50PXQsdGhpcy5kaXJ0eT0hMTt9fWNsYXNzIGhpIGV4dGVuZHMgUWV7Z2V0RGVmYXVsdCgpe3JldHVybiBbMCwxXX1zZXQodCl7Y29uc3QgZT10aGlzLmN1cnJlbnQ7KHRbMF0hPT1lWzBdfHx0WzFdIT09ZVsxXXx8dGhpcy5kaXJ0eSkmJih0aGlzLmdsLmRlcHRoUmFuZ2UodFswXSx0WzFdKSx0aGlzLmN1cnJlbnQ9dCx0aGlzLmRpcnR5PSExKTt9fWNsYXNzIGNpIGV4dGVuZHMgUWV7Z2V0RGVmYXVsdCgpe3JldHVybiAhMX1zZXQodCl7aWYodD09PXRoaXMuY3VycmVudCYmIXRoaXMuZGlydHkpcmV0dXJuO2NvbnN0IGU9dGhpcy5nbDt0P2UuZW5hYmxlKGUuREVQVEhfVEVTVCk6ZS5kaXNhYmxlKGUuREVQVEhfVEVTVCksdGhpcy5jdXJyZW50PXQsdGhpcy5kaXJ0eT0hMTt9fWNsYXNzIHVpIGV4dGVuZHMgUWV7Z2V0RGVmYXVsdCgpe3JldHVybiB0aGlzLmdsLkxFU1N9c2V0KHQpeyh0IT09dGhpcy5jdXJyZW50fHx0aGlzLmRpcnR5KSYmKHRoaXMuZ2wuZGVwdGhGdW5jKHQpLHRoaXMuY3VycmVudD10LHRoaXMuZGlydHk9ITEpO319Y2xhc3MgZGkgZXh0ZW5kcyBRZXtnZXREZWZhdWx0KCl7cmV0dXJuICExfXNldCh0KXtpZih0PT09dGhpcy5jdXJyZW50JiYhdGhpcy5kaXJ0eSlyZXR1cm47Y29uc3QgZT10aGlzLmdsO3Q/ZS5lbmFibGUoZS5CTEVORCk6ZS5kaXNhYmxlKGUuQkxFTkQpLHRoaXMuY3VycmVudD10LHRoaXMuZGlydHk9ITE7fX1jbGFzcyBfaSBleHRlbmRzIFFle2dldERlZmF1bHQoKXtjb25zdCB0PXRoaXMuZ2w7cmV0dXJuIFt0Lk9ORSx0LlpFUk9dfXNldCh0KXtjb25zdCBlPXRoaXMuY3VycmVudDsodFswXSE9PWVbMF18fHRbMV0hPT1lWzFdfHx0aGlzLmRpcnR5KSYmKHRoaXMuZ2wuYmxlbmRGdW5jKHRbMF0sdFsxXSksdGhpcy5jdXJyZW50PXQsdGhpcy5kaXJ0eT0hMSk7fX1jbGFzcyBwaSBleHRlbmRzIFFle2dldERlZmF1bHQoKXtyZXR1cm4gZS5hTS50cmFuc3BhcmVudH1zZXQodCl7Y29uc3QgZT10aGlzLmN1cnJlbnQ7KHQuciE9PWUucnx8dC5nIT09ZS5nfHx0LmIhPT1lLmJ8fHQuYSE9PWUuYXx8dGhpcy5kaXJ0eSkmJih0aGlzLmdsLmJsZW5kQ29sb3IodC5yLHQuZyx0LmIsdC5hKSx0aGlzLmN1cnJlbnQ9dCx0aGlzLmRpcnR5PSExKTt9fWNsYXNzIG1pIGV4dGVuZHMgUWV7Z2V0RGVmYXVsdCgpe3JldHVybiB0aGlzLmdsLkZVTkNfQUREfXNldCh0KXsodCE9PXRoaXMuY3VycmVudHx8dGhpcy5kaXJ0eSkmJih0aGlzLmdsLmJsZW5kRXF1YXRpb24odCksdGhpcy5jdXJyZW50PXQsdGhpcy5kaXJ0eT0hMSk7fX1jbGFzcyBmaSBleHRlbmRzIFFle2dldERlZmF1bHQoKXtyZXR1cm4gITF9c2V0KHQpe2lmKHQ9PT10aGlzLmN1cnJlbnQmJiF0aGlzLmRpcnR5KXJldHVybjtjb25zdCBlPXRoaXMuZ2w7dD9lLmVuYWJsZShlLkNVTExfRkFDRSk6ZS5kaXNhYmxlKGUuQ1VMTF9GQUNFKSx0aGlzLmN1cnJlbnQ9dCx0aGlzLmRpcnR5PSExO319Y2xhc3MgZ2kgZXh0ZW5kcyBRZXtnZXREZWZhdWx0KCl7cmV0dXJuIHRoaXMuZ2wuQkFDS31zZXQodCl7KHQhPT10aGlzLmN1cnJlbnR8fHRoaXMuZGlydHkpJiYodGhpcy5nbC5jdWxsRmFjZSh0KSx0aGlzLmN1cnJlbnQ9dCx0aGlzLmRpcnR5PSExKTt9fWNsYXNzIHZpIGV4dGVuZHMgUWV7Z2V0RGVmYXVsdCgpe3JldHVybiB0aGlzLmdsLkNDV31zZXQodCl7KHQhPT10aGlzLmN1cnJlbnR8fHRoaXMuZGlydHkpJiYodGhpcy5nbC5mcm9udEZhY2UodCksdGhpcy5jdXJyZW50PXQsdGhpcy5kaXJ0eT0hMSk7fX1jbGFzcyB4aSBleHRlbmRzIFFle2dldERlZmF1bHQoKXtyZXR1cm4gbnVsbH1zZXQodCl7KHQhPT10aGlzLmN1cnJlbnR8fHRoaXMuZGlydHkpJiYodGhpcy5nbC51c2VQcm9ncmFtKHQpLHRoaXMuY3VycmVudD10LHRoaXMuZGlydHk9ITEpO319Y2xhc3MgeWkgZXh0ZW5kcyBRZXtnZXREZWZhdWx0KCl7cmV0dXJuIHRoaXMuZ2wuVEVYVFVSRTB9c2V0KHQpeyh0IT09dGhpcy5jdXJyZW50fHx0aGlzLmRpcnR5KSYmKHRoaXMuZ2wuYWN0aXZlVGV4dHVyZSh0KSx0aGlzLmN1cnJlbnQ9dCx0aGlzLmRpcnR5PSExKTt9fWNsYXNzIGJpIGV4dGVuZHMgUWV7Z2V0RGVmYXVsdCgpe2NvbnN0IHQ9dGhpcy5nbDtyZXR1cm4gWzAsMCx0LmRyYXdpbmdCdWZmZXJXaWR0aCx0LmRyYXdpbmdCdWZmZXJIZWlnaHRdfXNldCh0KXtjb25zdCBlPXRoaXMuY3VycmVudDsodFswXSE9PWVbMF18fHRbMV0hPT1lWzFdfHx0WzJdIT09ZVsyXXx8dFszXSE9PWVbM118fHRoaXMuZGlydHkpJiYodGhpcy5nbC52aWV3cG9ydCh0WzBdLHRbMV0sdFsyXSx0WzNdKSx0aGlzLmN1cnJlbnQ9dCx0aGlzLmRpcnR5PSExKTt9fWNsYXNzIHdpIGV4dGVuZHMgUWV7Z2V0RGVmYXVsdCgpe3JldHVybiBudWxsfXNldCh0KXtpZih0PT09dGhpcy5jdXJyZW50JiYhdGhpcy5kaXJ0eSlyZXR1cm47Y29uc3QgZT10aGlzLmdsO2UuYmluZEZyYW1lYnVmZmVyKGUuRlJBTUVCVUZGRVIsdCksdGhpcy5jdXJyZW50PXQsdGhpcy5kaXJ0eT0hMTt9fWNsYXNzIFRpIGV4dGVuZHMgUWV7Z2V0RGVmYXVsdCgpe3JldHVybiBudWxsfXNldCh0KXtpZih0PT09dGhpcy5jdXJyZW50JiYhdGhpcy5kaXJ0eSlyZXR1cm47Y29uc3QgZT10aGlzLmdsO2UuYmluZFJlbmRlcmJ1ZmZlcihlLlJFTkRFUkJVRkZFUix0KSx0aGlzLmN1cnJlbnQ9dCx0aGlzLmRpcnR5PSExO319Y2xhc3MgSWkgZXh0ZW5kcyBRZXtnZXREZWZhdWx0KCl7cmV0dXJuIG51bGx9c2V0KHQpe2lmKHQ9PT10aGlzLmN1cnJlbnQmJiF0aGlzLmRpcnR5KXJldHVybjtjb25zdCBlPXRoaXMuZ2w7ZS5iaW5kVGV4dHVyZShlLlRFWFRVUkVfMkQsdCksdGhpcy5jdXJyZW50PXQsdGhpcy5kaXJ0eT0hMTt9fWNsYXNzIEVpIGV4dGVuZHMgUWV7Z2V0RGVmYXVsdCgpe3JldHVybiBudWxsfXNldCh0KXtpZih0PT09dGhpcy5jdXJyZW50JiYhdGhpcy5kaXJ0eSlyZXR1cm47Y29uc3QgZT10aGlzLmdsO2UuYmluZEJ1ZmZlcihlLkFSUkFZX0JVRkZFUix0KSx0aGlzLmN1cnJlbnQ9dCx0aGlzLmRpcnR5PSExO319Y2xhc3MgUGkgZXh0ZW5kcyBRZXtnZXREZWZhdWx0KCl7cmV0dXJuIG51bGx9c2V0KHQpe2NvbnN0IGU9dGhpcy5nbDtlLmJpbmRCdWZmZXIoZS5FTEVNRU5UX0FSUkFZX0JVRkZFUix0KSx0aGlzLmN1cnJlbnQ9dCx0aGlzLmRpcnR5PSExO319Y2xhc3MgQ2kgZXh0ZW5kcyBRZXtnZXREZWZhdWx0KCl7cmV0dXJuIG51bGx9c2V0KHQpe3ZhciBlO2lmKHQ9PT10aGlzLmN1cnJlbnQmJiF0aGlzLmRpcnR5KXJldHVybjtjb25zdCBpPXRoaXMuZ2w7WWUoaSk/aS5iaW5kVmVydGV4QXJyYXkodCk6bnVsbD09PShlPWkuZ2V0RXh0ZW5zaW9uKFwiT0VTX3ZlcnRleF9hcnJheV9vYmplY3RcIikpfHx2b2lkIDA9PT1lfHxlLmJpbmRWZXJ0ZXhBcnJheU9FUyh0KSx0aGlzLmN1cnJlbnQ9dCx0aGlzLmRpcnR5PSExO319Y2xhc3MgU2kgZXh0ZW5kcyBRZXtnZXREZWZhdWx0KCl7cmV0dXJuIDR9c2V0KHQpe2lmKHQ9PT10aGlzLmN1cnJlbnQmJiF0aGlzLmRpcnR5KXJldHVybjtjb25zdCBlPXRoaXMuZ2w7ZS5waXhlbFN0b3JlaShlLlVOUEFDS19BTElHTk1FTlQsdCksdGhpcy5jdXJyZW50PXQsdGhpcy5kaXJ0eT0hMTt9fWNsYXNzIHppIGV4dGVuZHMgUWV7Z2V0RGVmYXVsdCgpe3JldHVybiAhMX1zZXQodCl7aWYodD09PXRoaXMuY3VycmVudCYmIXRoaXMuZGlydHkpcmV0dXJuO2NvbnN0IGU9dGhpcy5nbDtlLnBpeGVsU3RvcmVpKGUuVU5QQUNLX1BSRU1VTFRJUExZX0FMUEhBX1dFQkdMLHQpLHRoaXMuY3VycmVudD10LHRoaXMuZGlydHk9ITE7fX1jbGFzcyBEaSBleHRlbmRzIFFle2dldERlZmF1bHQoKXtyZXR1cm4gITF9c2V0KHQpe2lmKHQ9PT10aGlzLmN1cnJlbnQmJiF0aGlzLmRpcnR5KXJldHVybjtjb25zdCBlPXRoaXMuZ2w7ZS5waXhlbFN0b3JlaShlLlVOUEFDS19GTElQX1lfV0VCR0wsdCksdGhpcy5jdXJyZW50PXQsdGhpcy5kaXJ0eT0hMTt9fWNsYXNzIE1pIGV4dGVuZHMgUWV7Y29uc3RydWN0b3IodCxlKXtzdXBlcih0KSx0aGlzLmNvbnRleHQ9dCx0aGlzLnBhcmVudD1lO31nZXREZWZhdWx0KCl7cmV0dXJuIG51bGx9fWNsYXNzIEFpIGV4dGVuZHMgTWl7c2V0RGlydHkoKXt0aGlzLmRpcnR5PSEwO31zZXQodCl7aWYodD09PXRoaXMuY3VycmVudCYmIXRoaXMuZGlydHkpcmV0dXJuO3RoaXMuY29udGV4dC5iaW5kRnJhbWVidWZmZXIuc2V0KHRoaXMucGFyZW50KTtjb25zdCBlPXRoaXMuZ2w7ZS5mcmFtZWJ1ZmZlclRleHR1cmUyRChlLkZSQU1FQlVGRkVSLGUuQ09MT1JfQVRUQUNITUVOVDAsZS5URVhUVVJFXzJELHQsMCksdGhpcy5jdXJyZW50PXQsdGhpcy5kaXJ0eT0hMTt9fWNsYXNzIFJpIGV4dGVuZHMgTWl7c2V0KHQpe2lmKHQ9PT10aGlzLmN1cnJlbnQmJiF0aGlzLmRpcnR5KXJldHVybjt0aGlzLmNvbnRleHQuYmluZEZyYW1lYnVmZmVyLnNldCh0aGlzLnBhcmVudCk7Y29uc3QgZT10aGlzLmdsO2UuZnJhbWVidWZmZXJSZW5kZXJidWZmZXIoZS5GUkFNRUJVRkZFUixlLkRFUFRIX0FUVEFDSE1FTlQsZS5SRU5ERVJCVUZGRVIsdCksdGhpcy5jdXJyZW50PXQsdGhpcy5kaXJ0eT0hMTt9fWNsYXNzIGtpIGV4dGVuZHMgTWl7c2V0KHQpe2lmKHQ9PT10aGlzLmN1cnJlbnQmJiF0aGlzLmRpcnR5KXJldHVybjt0aGlzLmNvbnRleHQuYmluZEZyYW1lYnVmZmVyLnNldCh0aGlzLnBhcmVudCk7Y29uc3QgZT10aGlzLmdsO2UuZnJhbWVidWZmZXJSZW5kZXJidWZmZXIoZS5GUkFNRUJVRkZFUixlLkRFUFRIX1NURU5DSUxfQVRUQUNITUVOVCxlLlJFTkRFUkJVRkZFUix0KSx0aGlzLmN1cnJlbnQ9dCx0aGlzLmRpcnR5PSExO319Y2xhc3MgTGl7Y29uc3RydWN0b3IodCxlLGksYSxzKXt0aGlzLmNvbnRleHQ9dCx0aGlzLndpZHRoPWUsdGhpcy5oZWlnaHQ9aTtjb25zdCBvPXQuZ2wscj10aGlzLmZyYW1lYnVmZmVyPW8uY3JlYXRlRnJhbWVidWZmZXIoKTtpZih0aGlzLmNvbG9yQXR0YWNobWVudD1uZXcgQWkodCxyKSxhKXRoaXMuZGVwdGhBdHRhY2htZW50PXM/bmV3IGtpKHQscik6bmV3IFJpKHQscik7ZWxzZSBpZihzKXRocm93IG5ldyBFcnJvcihcIlN0ZW5jaWwgY2Fubm90IGJlIHNldCB3aXRob3V0IGRlcHRoXCIpO2lmKG8uY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhvLkZSQU1FQlVGRkVSKSE9PW8uRlJBTUVCVUZGRVJfQ09NUExFVEUpdGhyb3cgbmV3IEVycm9yKFwiRnJhbWVidWZmZXIgaXMgbm90IGNvbXBsZXRlXCIpfWRlc3Ryb3koKXtjb25zdCB0PXRoaXMuY29udGV4dC5nbCxlPXRoaXMuY29sb3JBdHRhY2htZW50LmdldCgpO2lmKGUmJnQuZGVsZXRlVGV4dHVyZShlKSx0aGlzLmRlcHRoQXR0YWNobWVudCl7Y29uc3QgZT10aGlzLmRlcHRoQXR0YWNobWVudC5nZXQoKTtlJiZ0LmRlbGV0ZVJlbmRlcmJ1ZmZlcihlKTt9dC5kZWxldGVGcmFtZWJ1ZmZlcih0aGlzLmZyYW1lYnVmZmVyKTt9fWNsYXNzIEZpe2NvbnN0cnVjdG9yKHQsZSxpKXt0aGlzLmJsZW5kRnVuY3Rpb249dCx0aGlzLmJsZW5kQ29sb3I9ZSx0aGlzLm1hc2s9aTt9fUZpLlJlcGxhY2U9WzEsMF0sRmkuZGlzYWJsZWQ9bmV3IEZpKEZpLlJlcGxhY2UsZS5hTS50cmFuc3BhcmVudCxbITEsITEsITEsITFdKSxGaS51bmJsZW5kZWQ9bmV3IEZpKEZpLlJlcGxhY2UsZS5hTS50cmFuc3BhcmVudCxbITAsITAsITAsITBdKSxGaS5hbHBoYUJsZW5kZWQ9bmV3IEZpKFsxLDc3MV0sZS5hTS50cmFuc3BhcmVudCxbITAsITAsITAsITBdKTtjbGFzcyBCaXtjb25zdHJ1Y3Rvcih0KXt2YXIgZSxpO2lmKHRoaXMuZ2w9dCx0aGlzLmNsZWFyQ29sb3I9bmV3IHRpKHRoaXMpLHRoaXMuY2xlYXJEZXB0aD1uZXcgZWkodGhpcyksdGhpcy5jbGVhclN0ZW5jaWw9bmV3IGlpKHRoaXMpLHRoaXMuY29sb3JNYXNrPW5ldyBhaSh0aGlzKSx0aGlzLmRlcHRoTWFzaz1uZXcgc2kodGhpcyksdGhpcy5zdGVuY2lsTWFzaz1uZXcgb2kodGhpcyksdGhpcy5zdGVuY2lsRnVuYz1uZXcgcmkodGhpcyksdGhpcy5zdGVuY2lsT3A9bmV3IG5pKHRoaXMpLHRoaXMuc3RlbmNpbFRlc3Q9bmV3IGxpKHRoaXMpLHRoaXMuZGVwdGhSYW5nZT1uZXcgaGkodGhpcyksdGhpcy5kZXB0aFRlc3Q9bmV3IGNpKHRoaXMpLHRoaXMuZGVwdGhGdW5jPW5ldyB1aSh0aGlzKSx0aGlzLmJsZW5kPW5ldyBkaSh0aGlzKSx0aGlzLmJsZW5kRnVuYz1uZXcgX2kodGhpcyksdGhpcy5ibGVuZENvbG9yPW5ldyBwaSh0aGlzKSx0aGlzLmJsZW5kRXF1YXRpb249bmV3IG1pKHRoaXMpLHRoaXMuY3VsbEZhY2U9bmV3IGZpKHRoaXMpLHRoaXMuY3VsbEZhY2VTaWRlPW5ldyBnaSh0aGlzKSx0aGlzLmZyb250RmFjZT1uZXcgdmkodGhpcyksdGhpcy5wcm9ncmFtPW5ldyB4aSh0aGlzKSx0aGlzLmFjdGl2ZVRleHR1cmU9bmV3IHlpKHRoaXMpLHRoaXMudmlld3BvcnQ9bmV3IGJpKHRoaXMpLHRoaXMuYmluZEZyYW1lYnVmZmVyPW5ldyB3aSh0aGlzKSx0aGlzLmJpbmRSZW5kZXJidWZmZXI9bmV3IFRpKHRoaXMpLHRoaXMuYmluZFRleHR1cmU9bmV3IElpKHRoaXMpLHRoaXMuYmluZFZlcnRleEJ1ZmZlcj1uZXcgRWkodGhpcyksdGhpcy5iaW5kRWxlbWVudEJ1ZmZlcj1uZXcgUGkodGhpcyksdGhpcy5iaW5kVmVydGV4QXJyYXk9bmV3IENpKHRoaXMpLHRoaXMucGl4ZWxTdG9yZVVucGFjaz1uZXcgU2kodGhpcyksdGhpcy5waXhlbFN0b3JlVW5wYWNrUHJlbXVsdGlwbHlBbHBoYT1uZXcgemkodGhpcyksdGhpcy5waXhlbFN0b3JlVW5wYWNrRmxpcFk9bmV3IERpKHRoaXMpLHRoaXMuZXh0VGV4dHVyZUZpbHRlckFuaXNvdHJvcGljPXQuZ2V0RXh0ZW5zaW9uKFwiRVhUX3RleHR1cmVfZmlsdGVyX2FuaXNvdHJvcGljXCIpfHx0LmdldEV4dGVuc2lvbihcIk1PWl9FWFRfdGV4dHVyZV9maWx0ZXJfYW5pc290cm9waWNcIil8fHQuZ2V0RXh0ZW5zaW9uKFwiV0VCS0lUX0VYVF90ZXh0dXJlX2ZpbHRlcl9hbmlzb3Ryb3BpY1wiKSx0aGlzLmV4dFRleHR1cmVGaWx0ZXJBbmlzb3Ryb3BpYyYmKHRoaXMuZXh0VGV4dHVyZUZpbHRlckFuaXNvdHJvcGljTWF4PXQuZ2V0UGFyYW1ldGVyKHRoaXMuZXh0VGV4dHVyZUZpbHRlckFuaXNvdHJvcGljLk1BWF9URVhUVVJFX01BWF9BTklTT1RST1BZX0VYVCkpLHRoaXMubWF4VGV4dHVyZVNpemU9dC5nZXRQYXJhbWV0ZXIodC5NQVhfVEVYVFVSRV9TSVpFKSxZZSh0KSl7dGhpcy5IQUxGX0ZMT0FUPXQuSEFMRl9GTE9BVDtjb25zdCBhPXQuZ2V0RXh0ZW5zaW9uKFwiRVhUX2NvbG9yX2J1ZmZlcl9oYWxmX2Zsb2F0XCIpO3RoaXMuUkdCQTE2Rj1udWxsIT09KGU9dC5SR0JBMTZGKSYmdm9pZCAwIT09ZT9lOm51bGw9PWE/dm9pZCAwOmEuUkdCQTE2Rl9FWFQsdGhpcy5SR0IxNkY9bnVsbCE9PShpPXQuUkdCMTZGKSYmdm9pZCAwIT09aT9pOm51bGw9PWE/dm9pZCAwOmEuUkdCMTZGX0VYVCx0LmdldEV4dGVuc2lvbihcIkVYVF9jb2xvcl9idWZmZXJfZmxvYXRcIik7fWVsc2Uge3QuZ2V0RXh0ZW5zaW9uKFwiRVhUX2NvbG9yX2J1ZmZlcl9oYWxmX2Zsb2F0XCIpLHQuZ2V0RXh0ZW5zaW9uKFwiT0VTX3RleHR1cmVfaGFsZl9mbG9hdF9saW5lYXJcIik7Y29uc3QgZT10LmdldEV4dGVuc2lvbihcIk9FU190ZXh0dXJlX2hhbGZfZmxvYXRcIik7dGhpcy5IQUxGX0ZMT0FUPW51bGw9PWU/dm9pZCAwOmUuSEFMRl9GTE9BVF9PRVM7fX1zZXREZWZhdWx0KCl7dGhpcy51bmJpbmRWQU8oKSx0aGlzLmNsZWFyQ29sb3Iuc2V0RGVmYXVsdCgpLHRoaXMuY2xlYXJEZXB0aC5zZXREZWZhdWx0KCksdGhpcy5jbGVhclN0ZW5jaWwuc2V0RGVmYXVsdCgpLHRoaXMuY29sb3JNYXNrLnNldERlZmF1bHQoKSx0aGlzLmRlcHRoTWFzay5zZXREZWZhdWx0KCksdGhpcy5zdGVuY2lsTWFzay5zZXREZWZhdWx0KCksdGhpcy5zdGVuY2lsRnVuYy5zZXREZWZhdWx0KCksdGhpcy5zdGVuY2lsT3Auc2V0RGVmYXVsdCgpLHRoaXMuc3RlbmNpbFRlc3Quc2V0RGVmYXVsdCgpLHRoaXMuZGVwdGhSYW5nZS5zZXREZWZhdWx0KCksdGhpcy5kZXB0aFRlc3Quc2V0RGVmYXVsdCgpLHRoaXMuZGVwdGhGdW5jLnNldERlZmF1bHQoKSx0aGlzLmJsZW5kLnNldERlZmF1bHQoKSx0aGlzLmJsZW5kRnVuYy5zZXREZWZhdWx0KCksdGhpcy5ibGVuZENvbG9yLnNldERlZmF1bHQoKSx0aGlzLmJsZW5kRXF1YXRpb24uc2V0RGVmYXVsdCgpLHRoaXMuY3VsbEZhY2Uuc2V0RGVmYXVsdCgpLHRoaXMuY3VsbEZhY2VTaWRlLnNldERlZmF1bHQoKSx0aGlzLmZyb250RmFjZS5zZXREZWZhdWx0KCksdGhpcy5wcm9ncmFtLnNldERlZmF1bHQoKSx0aGlzLmFjdGl2ZVRleHR1cmUuc2V0RGVmYXVsdCgpLHRoaXMuYmluZEZyYW1lYnVmZmVyLnNldERlZmF1bHQoKSx0aGlzLnBpeGVsU3RvcmVVbnBhY2suc2V0RGVmYXVsdCgpLHRoaXMucGl4ZWxTdG9yZVVucGFja1ByZW11bHRpcGx5QWxwaGEuc2V0RGVmYXVsdCgpLHRoaXMucGl4ZWxTdG9yZVVucGFja0ZsaXBZLnNldERlZmF1bHQoKTt9c2V0RGlydHkoKXt0aGlzLmNsZWFyQ29sb3IuZGlydHk9ITAsdGhpcy5jbGVhckRlcHRoLmRpcnR5PSEwLHRoaXMuY2xlYXJTdGVuY2lsLmRpcnR5PSEwLHRoaXMuY29sb3JNYXNrLmRpcnR5PSEwLHRoaXMuZGVwdGhNYXNrLmRpcnR5PSEwLHRoaXMuc3RlbmNpbE1hc2suZGlydHk9ITAsdGhpcy5zdGVuY2lsRnVuYy5kaXJ0eT0hMCx0aGlzLnN0ZW5jaWxPcC5kaXJ0eT0hMCx0aGlzLnN0ZW5jaWxUZXN0LmRpcnR5PSEwLHRoaXMuZGVwdGhSYW5nZS5kaXJ0eT0hMCx0aGlzLmRlcHRoVGVzdC5kaXJ0eT0hMCx0aGlzLmRlcHRoRnVuYy5kaXJ0eT0hMCx0aGlzLmJsZW5kLmRpcnR5PSEwLHRoaXMuYmxlbmRGdW5jLmRpcnR5PSEwLHRoaXMuYmxlbmRDb2xvci5kaXJ0eT0hMCx0aGlzLmJsZW5kRXF1YXRpb24uZGlydHk9ITAsdGhpcy5jdWxsRmFjZS5kaXJ0eT0hMCx0aGlzLmN1bGxGYWNlU2lkZS5kaXJ0eT0hMCx0aGlzLmZyb250RmFjZS5kaXJ0eT0hMCx0aGlzLnByb2dyYW0uZGlydHk9ITAsdGhpcy5hY3RpdmVUZXh0dXJlLmRpcnR5PSEwLHRoaXMudmlld3BvcnQuZGlydHk9ITAsdGhpcy5iaW5kRnJhbWVidWZmZXIuZGlydHk9ITAsdGhpcy5iaW5kUmVuZGVyYnVmZmVyLmRpcnR5PSEwLHRoaXMuYmluZFRleHR1cmUuZGlydHk9ITAsdGhpcy5iaW5kVmVydGV4QnVmZmVyLmRpcnR5PSEwLHRoaXMuYmluZEVsZW1lbnRCdWZmZXIuZGlydHk9ITAsdGhpcy5iaW5kVmVydGV4QXJyYXkuZGlydHk9ITAsdGhpcy5waXhlbFN0b3JlVW5wYWNrLmRpcnR5PSEwLHRoaXMucGl4ZWxTdG9yZVVucGFja1ByZW11bHRpcGx5QWxwaGEuZGlydHk9ITAsdGhpcy5waXhlbFN0b3JlVW5wYWNrRmxpcFkuZGlydHk9ITA7fWNyZWF0ZUluZGV4QnVmZmVyKHQsZSl7cmV0dXJuIG5ldyAkZSh0aGlzLHQsZSl9Y3JlYXRlVmVydGV4QnVmZmVyKHQsZSxpKXtyZXR1cm4gbmV3IEtlKHRoaXMsdCxlLGkpfWNyZWF0ZVJlbmRlcmJ1ZmZlcih0LGUsaSl7Y29uc3QgYT10aGlzLmdsLHM9YS5jcmVhdGVSZW5kZXJidWZmZXIoKTtyZXR1cm4gdGhpcy5iaW5kUmVuZGVyYnVmZmVyLnNldChzKSxhLnJlbmRlcmJ1ZmZlclN0b3JhZ2UoYS5SRU5ERVJCVUZGRVIsdCxlLGkpLHRoaXMuYmluZFJlbmRlcmJ1ZmZlci5zZXQobnVsbCksc31jcmVhdGVGcmFtZWJ1ZmZlcih0LGUsaSxhKXtyZXR1cm4gbmV3IExpKHRoaXMsdCxlLGksYSl9Y2xlYXIoe2NvbG9yOnQsZGVwdGg6ZSxzdGVuY2lsOml9KXtjb25zdCBhPXRoaXMuZ2w7bGV0IHM9MDt0JiYoc3w9YS5DT0xPUl9CVUZGRVJfQklULHRoaXMuY2xlYXJDb2xvci5zZXQodCksdGhpcy5jb2xvck1hc2suc2V0KFshMCwhMCwhMCwhMF0pKSx2b2lkIDAhPT1lJiYoc3w9YS5ERVBUSF9CVUZGRVJfQklULHRoaXMuZGVwdGhSYW5nZS5zZXQoWzAsMV0pLHRoaXMuY2xlYXJEZXB0aC5zZXQoZSksdGhpcy5kZXB0aE1hc2suc2V0KCEwKSksdm9pZCAwIT09aSYmKHN8PWEuU1RFTkNJTF9CVUZGRVJfQklULHRoaXMuY2xlYXJTdGVuY2lsLnNldChpKSx0aGlzLnN0ZW5jaWxNYXNrLnNldCgyNTUpKSxhLmNsZWFyKHMpO31zZXRDdWxsRmFjZSh0KXshMT09PXQuZW5hYmxlP3RoaXMuY3VsbEZhY2Uuc2V0KCExKToodGhpcy5jdWxsRmFjZS5zZXQoITApLHRoaXMuY3VsbEZhY2VTaWRlLnNldCh0Lm1vZGUpLHRoaXMuZnJvbnRGYWNlLnNldCh0LmZyb250RmFjZSkpO31zZXREZXB0aE1vZGUodCl7dC5mdW5jIT09dGhpcy5nbC5BTFdBWVN8fHQubWFzaz8odGhpcy5kZXB0aFRlc3Quc2V0KCEwKSx0aGlzLmRlcHRoRnVuYy5zZXQodC5mdW5jKSx0aGlzLmRlcHRoTWFzay5zZXQodC5tYXNrKSx0aGlzLmRlcHRoUmFuZ2Uuc2V0KHQucmFuZ2UpKTp0aGlzLmRlcHRoVGVzdC5zZXQoITEpO31zZXRTdGVuY2lsTW9kZSh0KXt0LnRlc3QuZnVuYyE9PXRoaXMuZ2wuQUxXQVlTfHx0Lm1hc2s/KHRoaXMuc3RlbmNpbFRlc3Quc2V0KCEwKSx0aGlzLnN0ZW5jaWxNYXNrLnNldCh0Lm1hc2spLHRoaXMuc3RlbmNpbE9wLnNldChbdC5mYWlsLHQuZGVwdGhGYWlsLHQucGFzc10pLHRoaXMuc3RlbmNpbEZ1bmMuc2V0KHtmdW5jOnQudGVzdC5mdW5jLHJlZjp0LnJlZixtYXNrOnQudGVzdC5tYXNrfSkpOnRoaXMuc3RlbmNpbFRlc3Quc2V0KCExKTt9c2V0Q29sb3JNb2RlKHQpe2UuYUUodC5ibGVuZEZ1bmN0aW9uLEZpLlJlcGxhY2UpP3RoaXMuYmxlbmQuc2V0KCExKToodGhpcy5ibGVuZC5zZXQoITApLHRoaXMuYmxlbmRGdW5jLnNldCh0LmJsZW5kRnVuY3Rpb24pLHRoaXMuYmxlbmRDb2xvci5zZXQodC5ibGVuZENvbG9yKSksdGhpcy5jb2xvck1hc2suc2V0KHQubWFzayk7fWNyZWF0ZVZlcnRleEFycmF5KCl7dmFyIHQ7cmV0dXJuIFllKHRoaXMuZ2wpP3RoaXMuZ2wuY3JlYXRlVmVydGV4QXJyYXkoKTpudWxsPT09KHQ9dGhpcy5nbC5nZXRFeHRlbnNpb24oXCJPRVNfdmVydGV4X2FycmF5X29iamVjdFwiKSl8fHZvaWQgMD09PXQ/dm9pZCAwOnQuY3JlYXRlVmVydGV4QXJyYXlPRVMoKX1kZWxldGVWZXJ0ZXhBcnJheSh0KXt2YXIgZTtyZXR1cm4gWWUodGhpcy5nbCk/dGhpcy5nbC5kZWxldGVWZXJ0ZXhBcnJheSh0KTpudWxsPT09KGU9dGhpcy5nbC5nZXRFeHRlbnNpb24oXCJPRVNfdmVydGV4X2FycmF5X29iamVjdFwiKSl8fHZvaWQgMD09PWU/dm9pZCAwOmUuZGVsZXRlVmVydGV4QXJyYXlPRVModCl9dW5iaW5kVkFPKCl7dGhpcy5iaW5kVmVydGV4QXJyYXkuc2V0KG51bGwpO319Y2xhc3MgT2l7Y29uc3RydWN0b3IodCxlLGkpe3RoaXMuZnVuYz10LHRoaXMubWFzaz1lLHRoaXMucmFuZ2U9aTt9fU9pLlJlYWRPbmx5PSExLE9pLlJlYWRXcml0ZT0hMCxPaS5kaXNhYmxlZD1uZXcgT2koNTE5LE9pLlJlYWRPbmx5LFswLDFdKTtjb25zdCBOaT03NjgwO2NsYXNzIFVpe2NvbnN0cnVjdG9yKHQsZSxpLGEscyxvKXt0aGlzLnRlc3Q9dCx0aGlzLnJlZj1lLHRoaXMubWFzaz1pLHRoaXMuZmFpbD1hLHRoaXMuZGVwdGhGYWlsPXMsdGhpcy5wYXNzPW87fX1VaS5kaXNhYmxlZD1uZXcgVWkoe2Z1bmM6NTE5LG1hc2s6MH0sMCwwLE5pLE5pLE5pKTtjbGFzcyBqaXtjb25zdHJ1Y3Rvcih0LGUsaSl7dGhpcy5lbmFibGU9dCx0aGlzLm1vZGU9ZSx0aGlzLmZyb250RmFjZT1pO319bGV0IFppO2Z1bmN0aW9uIHFpKHQsaSxhLHMsbyl7Y29uc3Qgcj10LmNvbnRleHQsbj1yLmdsLGw9dC51c2VQcm9ncmFtKFwiY29sbGlzaW9uQm94XCIpLGg9W107bGV0IGM9MCx1PTA7Zm9yKGxldCBfPTA7XzxzLmxlbmd0aDtfKyspe2NvbnN0IHA9c1tfXSxtPWkuZ2V0VGlsZShwKS5nZXRCdWNrZXQoYSk7aWYoIW0pY29udGludWU7Y29uc3QgZj1vP20udGV4dENvbGxpc2lvbkJveDptLmljb25Db2xsaXNpb25Cb3gsZz1tLmNvbGxpc2lvbkNpcmNsZUFycmF5O2lmKGcubGVuZ3RoPjApe2NvbnN0IGk9ZS5IKCk7ZS5hUShpLG0ucGxhY2VtZW50SW52UHJvak1hdHJpeCx0LnRyYW5zZm9ybS5nbENvb3JkTWF0cml4KSxlLmFRKGksaSxtLnBsYWNlbWVudFZpZXdwb3J0TWF0cml4KSxoLnB1c2goe2NpcmNsZUFycmF5OmcsY2lyY2xlT2Zmc2V0OnUsdHJhbnNmb3JtOnAucG9zTWF0cml4LGludlRyYW5zZm9ybTppLGNvb3JkOnB9KSxjKz1nLmxlbmd0aC80LHU9Yzt9ZiYmbC5kcmF3KHIsbi5MSU5FUyxPaS5kaXNhYmxlZCxVaS5kaXNhYmxlZCx0LmNvbG9yTW9kZUZvclJlbmRlclBhc3MoKSxqaS5kaXNhYmxlZCx7dV9tYXRyaXg6cC5wb3NNYXRyaXgsdV9waXhlbF9leHRydWRlX3NjYWxlOlsxLyhkPXQudHJhbnNmb3JtKS53aWR0aCwxL2QuaGVpZ2h0XX0sdC5zdHlsZS5tYXAudGVycmFpbiYmdC5zdHlsZS5tYXAudGVycmFpbi5nZXRUZXJyYWluRGF0YShwKSxhLmlkLGYubGF5b3V0VmVydGV4QnVmZmVyLGYuaW5kZXhCdWZmZXIsZi5zZWdtZW50cyxudWxsLHQudHJhbnNmb3JtLnpvb20sbnVsbCxudWxsLGYuY29sbGlzaW9uVmVydGV4QnVmZmVyKTt9dmFyIGQ7aWYoIW98fCFoLmxlbmd0aClyZXR1cm47Y29uc3QgXz10LnVzZVByb2dyYW0oXCJjb2xsaXNpb25DaXJjbGVcIikscD1uZXcgZS5hUjtwLnJlc2l6ZSg0KmMpLHAuX3RyaW0oKTtsZXQgbT0wO2Zvcihjb25zdCB0IG9mIGgpZm9yKGxldCBlPTA7ZTx0LmNpcmNsZUFycmF5Lmxlbmd0aC80O2UrKyl7Y29uc3QgaT00KmUsYT10LmNpcmNsZUFycmF5W2krMF0scz10LmNpcmNsZUFycmF5W2krMV0sbz10LmNpcmNsZUFycmF5W2krMl0scj10LmNpcmNsZUFycmF5W2krM107cC5lbXBsYWNlKG0rKyxhLHMsbyxyLDApLHAuZW1wbGFjZShtKyssYSxzLG8sciwxKSxwLmVtcGxhY2UobSsrLGEscyxvLHIsMikscC5lbXBsYWNlKG0rKyxhLHMsbyxyLDMpO30oIVppfHxaaS5sZW5ndGg8MipjKSYmKFppPWZ1bmN0aW9uKHQpe2NvbnN0IGk9Mip0LGE9bmV3IGUuYVQ7YS5yZXNpemUoaSksYS5fdHJpbSgpO2ZvcihsZXQgdD0wO3Q8aTt0Kyspe2NvbnN0IGU9Nip0O2EudWludDE2W2UrMF09NCp0KzAsYS51aW50MTZbZSsxXT00KnQrMSxhLnVpbnQxNltlKzJdPTQqdCsyLGEudWludDE2W2UrM109NCp0KzIsYS51aW50MTZbZSs0XT00KnQrMyxhLnVpbnQxNltlKzVdPTQqdCswO31yZXR1cm4gYX0oYykpO2NvbnN0IGY9ci5jcmVhdGVJbmRleEJ1ZmZlcihaaSwhMCksZz1yLmNyZWF0ZVZlcnRleEJ1ZmZlcihwLGUuYVMubWVtYmVycywhMCk7Zm9yKGNvbnN0IGkgb2YgaCl7Y29uc3Qgcz1TZShpLnRyYW5zZm9ybSxpLmludlRyYW5zZm9ybSx0LnRyYW5zZm9ybSk7Xy5kcmF3KHIsbi5UUklBTkdMRVMsT2kuZGlzYWJsZWQsVWkuZGlzYWJsZWQsdC5jb2xvck1vZGVGb3JSZW5kZXJQYXNzKCksamkuZGlzYWJsZWQscyx0LnN0eWxlLm1hcC50ZXJyYWluJiZ0LnN0eWxlLm1hcC50ZXJyYWluLmdldFRlcnJhaW5EYXRhKGkuY29vcmQpLGEuaWQsZyxmLGUuYTAuc2ltcGxlU2VnbWVudCgwLDIqaS5jaXJjbGVPZmZzZXQsaS5jaXJjbGVBcnJheS5sZW5ndGgsaS5jaXJjbGVBcnJheS5sZW5ndGgvMiksbnVsbCx0LnRyYW5zZm9ybS56b29tLG51bGwsbnVsbCxudWxsKTt9Zy5kZXN0cm95KCksZi5kZXN0cm95KCk7fWppLmRpc2FibGVkPW5ldyBqaSghMSwxMDI5LDIzMDUpLGppLmJhY2tDQ1c9bmV3IGppKCEwLDEwMjksMjMwNSk7Y29uc3QgVmk9ZS5hbihuZXcgRmxvYXQzMkFycmF5KDE2KSk7ZnVuY3Rpb24gR2kodCxpLGEscyxvLHIpe2NvbnN0e2hvcml6b250YWxBbGlnbjpuLHZlcnRpY2FsQWxpZ246bH09ZS5hdSh0KTtyZXR1cm4gbmV3IGUuUCgoLShuLS41KSppL28rc1swXSkqciwoLShsLS41KSphL28rc1sxXSkqcil9ZnVuY3Rpb24gSGkodCxpLGEscyxvLHIpe2NvbnN0IG49aS50aWxlQW5jaG9yUG9pbnQuYWRkKG5ldyBlLlAoaS50cmFuc2xhdGlvblswXSxpLnRyYW5zbGF0aW9uWzFdKSk7aWYoaS5waXRjaFdpdGhNYXApe2xldCB0PXMubXVsdChyKTthfHwodD10LnJvdGF0ZSgtbykpO2NvbnN0IGU9bi5hZGQodCk7cmV0dXJuIHh0KGUueCxlLnksaS5sYWJlbFBsYW5lTWF0cml4LGkuZ2V0RWxldmF0aW9uKS5wb2ludH1pZihhKXtjb25zdCBlPVN0KGkudGlsZUFuY2hvclBvaW50LngrMSxpLnRpbGVBbmNob3JQb2ludC55LGkpLnBvaW50LnN1Yih0KSxhPU1hdGguYXRhbihlLnkvZS54KSsoZS54PDA/TWF0aC5QSTowKTtyZXR1cm4gdC5hZGQocy5yb3RhdGUoYSkpfXJldHVybiB0LmFkZChzKX1mdW5jdGlvbiBXaSh0LGksYSxzLG8scixuLGwsaCxjLHUsZCxfLHApe2NvbnN0IG09dC50ZXh0LnBsYWNlZFN5bWJvbEFycmF5LGY9dC50ZXh0LmR5bmFtaWNMYXlvdXRWZXJ0ZXhBcnJheSxnPXQuaWNvbi5keW5hbWljTGF5b3V0VmVydGV4QXJyYXksdj17fTtmLmNsZWFyKCk7Zm9yKGxldCBnPTA7ZzxtLmxlbmd0aDtnKyspe2NvbnN0IHg9bS5nZXQoZykseT14LmhpZGRlbnx8IXguY3Jvc3NUaWxlSUR8fHQuYWxsb3dWZXJ0aWNhbFBsYWNlbWVudCYmIXgucGxhY2VkT3JpZW50YXRpb24/bnVsbDpzW3guY3Jvc3NUaWxlSURdO2lmKHkpe2NvbnN0IHM9bmV3IGUuUCh4LmFuY2hvclgseC5hbmNob3JZKSxtPXtnZXRFbGV2YXRpb246cCx3aWR0aDpvLndpZHRoLGhlaWdodDpvLmhlaWdodCxsYWJlbFBsYW5lTWF0cml4OnIsbGluZVZlcnRleEFycmF5Om51bGwscGl0Y2hXaXRoTWFwOmEscHJvamVjdGlvbjp1LHByb2plY3Rpb25DYWNoZTpudWxsLHRpbGVBbmNob3JQb2ludDpzLHRyYW5zbGF0aW9uOmQsdW53cmFwcGVkVGlsZUlEOl99LGc9YT94dChzLngscy55LG4scCk6U3Qocy54LHMueSxtKSxiPXl0KG8uY2FtZXJhVG9DZW50ZXJEaXN0YW5jZSxnLnNpZ25lZERpc3RhbmNlRnJvbUNhbWVyYSk7bGV0IHc9ZS5haSh0LnRleHRTaXplRGF0YSxoLHgpKmIvZS5hcDthJiYodyo9dC50aWxlUGl4ZWxSYXRpby9sKTtjb25zdHt3aWR0aDpULGhlaWdodDpJLGFuY2hvcjpFLHRleHRPZmZzZXQ6UCx0ZXh0Qm94U2NhbGU6Q309eSxTPUdpKEUsVCxJLFAsQyx3KSx6PXUuZ2V0UGl0Y2hlZFRleHRDb3JyZWN0aW9uKG8scy5hZGQobmV3IGUuUChkWzBdLGRbMV0pKSxfKSxEPUhpKGcucG9pbnQsbSxpLFMsby5hbmdsZSx6KSxNPXQuYWxsb3dWZXJ0aWNhbFBsYWNlbWVudCYmeC5wbGFjZWRPcmllbnRhdGlvbj09PWUuYWgudmVydGljYWw/TWF0aC5QSS8yOjA7Zm9yKGxldCB0PTA7dDx4Lm51bUdseXBoczt0KyspZS5haihmLEQsTSk7YyYmeC5hc3NvY2lhdGVkSWNvbkluZGV4Pj0wJiYodlt4LmFzc29jaWF0ZWRJY29uSW5kZXhdPXtzaGlmdGVkQW5jaG9yOkQsYW5nbGU6TX0pO31lbHNlIFJ0KHgubnVtR2x5cGhzLGYpO31pZihjKXtnLmNsZWFyKCk7Y29uc3QgaT10Lmljb24ucGxhY2VkU3ltYm9sQXJyYXk7Zm9yKGxldCB0PTA7dDxpLmxlbmd0aDt0Kyspe2NvbnN0IGE9aS5nZXQodCk7aWYoYS5oaWRkZW4pUnQoYS5udW1HbHlwaHMsZyk7ZWxzZSB7Y29uc3QgaT12W3RdO2lmKGkpZm9yKGxldCB0PTA7dDxhLm51bUdseXBoczt0KyspZS5haihnLGkuc2hpZnRlZEFuY2hvcixpLmFuZ2xlKTtlbHNlIFJ0KGEubnVtR2x5cGhzLGcpO319dC5pY29uLmR5bmFtaWNMYXlvdXRWZXJ0ZXhCdWZmZXIudXBkYXRlRGF0YShnKTt9dC50ZXh0LmR5bmFtaWNMYXlvdXRWZXJ0ZXhCdWZmZXIudXBkYXRlRGF0YShmKTt9ZnVuY3Rpb24gJGkodCxlLGkpe3JldHVybiBpLmljb25zSW5UZXh0JiZlP1wic3ltYm9sVGV4dEFuZEljb25cIjp0P1wic3ltYm9sU0RGXCI6XCJzeW1ib2xJY29uXCJ9ZnVuY3Rpb24gWGkodCxpLGEscyxvLHIsbixsLGgsYyx1LGQpe2NvbnN0IF89dC5jb250ZXh0LHA9Xy5nbCxtPXQudHJhbnNmb3JtLGY9aWUoKSxnPVwibWFwXCI9PT1sLHY9XCJtYXBcIj09PWgseD1cInZpZXdwb3J0XCIhPT1sJiZcInBvaW50XCIhPT1hLmxheW91dC5nZXQoXCJzeW1ib2wtcGxhY2VtZW50XCIpLHk9ZyYmIXYmJiF4LGI9IXYmJngsdz0hYS5sYXlvdXQuZ2V0KFwic3ltYm9sLXNvcnQta2V5XCIpLmlzQ29uc3RhbnQoKTtsZXQgVD0hMTtjb25zdCBJPXQuZGVwdGhNb2RlRm9yU3VibGF5ZXIoMCxPaS5SZWFkT25seSksRT1hLl91bmV2YWx1YXRlZExheW91dC5oYXNWYWx1ZShcInRleHQtdmFyaWFibGUtYW5jaG9yXCIpfHxhLl91bmV2YWx1YXRlZExheW91dC5oYXNWYWx1ZShcInRleHQtdmFyaWFibGUtYW5jaG9yLW9mZnNldFwiKSxQPVtdLEM9Zi5nZXRDaXJjbGVSYWRpdXNDb3JyZWN0aW9uKG0pO2Zvcihjb25zdCBsIG9mIHMpe2NvbnN0IHM9aS5nZXRUaWxlKGwpLGg9cy5nZXRCdWNrZXQoYSk7aWYoIWgpY29udGludWU7Y29uc3QgdT1vP2gudGV4dDpoLmljb247aWYoIXV8fCF1LnNlZ21lbnRzLmdldCgpLmxlbmd0aHx8IXUuaGFzVmlzaWJsZVZlcnRpY2VzKWNvbnRpbnVlO2NvbnN0IGQ9dS5wcm9ncmFtQ29uZmlndXJhdGlvbnMuZ2V0KGEuaWQpLF89b3x8aC5zZGZJY29ucyxJPW8/aC50ZXh0U2l6ZURhdGE6aC5pY29uU2l6ZURhdGEsUz12fHwwIT09bS5waXRjaCx6PXQudXNlUHJvZ3JhbSgkaShfLG8saCksZCksRD1lLmFnKEksbS56b29tKSxNPXQuc3R5bGUubWFwLnRlcnJhaW4mJnQuc3R5bGUubWFwLnRlcnJhaW4uZ2V0VGVycmFpbkRhdGEobCk7bGV0IEEsUixrLEwsRj1bMCwwXSxCPW51bGw7aWYobylSPXMuZ2x5cGhBdGxhc1RleHR1cmUsaz1wLkxJTkVBUixBPXMuZ2x5cGhBdGxhc1RleHR1cmUuc2l6ZSxoLmljb25zSW5UZXh0JiYoRj1zLmltYWdlQXRsYXNUZXh0dXJlLnNpemUsQj1zLmltYWdlQXRsYXNUZXh0dXJlLEw9U3x8dC5vcHRpb25zLnJvdGF0aW5nfHx0Lm9wdGlvbnMuem9vbWluZ3x8XCJjb21wb3NpdGVcIj09PUkua2luZHx8XCJjYW1lcmFcIj09PUkua2luZD9wLkxJTkVBUjpwLk5FQVJFU1QpO2Vsc2Uge2NvbnN0IGU9MSE9PWEubGF5b3V0LmdldChcImljb24tc2l6ZVwiKS5jb25zdGFudE9yKDApfHxoLmljb25zTmVlZExpbmVhcjtSPXMuaW1hZ2VBdGxhc1RleHR1cmUsaz1ffHx0Lm9wdGlvbnMucm90YXRpbmd8fHQub3B0aW9ucy56b29taW5nfHxlfHxTP3AuTElORUFSOnAuTkVBUkVTVCxBPXMuaW1hZ2VBdGxhc1RleHR1cmUuc2l6ZTt9Y29uc3QgTz1CdChzLDEsdC50cmFuc2Zvcm0uem9vbSksTj1iP2wucG9zTWF0cml4OlZpLFU9Z3QoTix2LGcsdC50cmFuc2Zvcm0sTyksaj12dChOLHYsZyx0LnRyYW5zZm9ybSxPKSxaPXZ0KGwucG9zTWF0cml4LHYsZyx0LnRyYW5zZm9ybSxPKSxxPWYudHJhbnNsYXRlUG9zaXRpb24odC50cmFuc2Zvcm0scyxyLG4pLFY9RSYmaC5oYXNUZXh0RGF0YSgpLEc9XCJub25lXCIhPT1hLmxheW91dC5nZXQoXCJpY29uLXRleHQtZml0XCIpJiZWJiZoLmhhc0ljb25EYXRhKCk7aWYoeCl7Y29uc3QgZT10LnN0eWxlLm1hcC50ZXJyYWluPyhlLGkpPT50LnN0eWxlLm1hcC50ZXJyYWluLmdldEVsZXZhdGlvbihsLGUsaSk6bnVsbCxpPVwibWFwXCI9PT1hLmxheW91dC5nZXQoXCJ0ZXh0LXJvdGF0aW9uLWFsaWdubWVudFwiKTt3dChoLGwucG9zTWF0cml4LHQsbyxVLFosdixjLGksZixsLnRvVW53cmFwcGVkKCksbS53aWR0aCxtLmhlaWdodCxxLGUpO31jb25zdCBIPWwucG9zTWF0cml4LFc9byYmRXx8RywkPXh8fFc/Vmk6VSxYPWosSz1fJiYwIT09YS5wYWludC5nZXQobz9cInRleHQtaGFsby13aWR0aFwiOlwiaWNvbi1oYWxvLXdpZHRoXCIpLmNvbnN0YW50T3IoMSk7bGV0IEo7Sj1fP2guaWNvbnNJblRleHQ/VmUoSS5raW5kLEQseSx2LHgsVyx0LEgsJCxYLHEsQSxGLEMpOnFlKEkua2luZCxELHksdix4LFcsdCxILCQsWCxxLG8sQSwhMCxDKTpaZShJLmtpbmQsRCx5LHYseCxXLHQsSCwkLFgscSxvLEEsQyk7Y29uc3QgWT17cHJvZ3JhbTp6LGJ1ZmZlcnM6dSx1bmlmb3JtVmFsdWVzOkosYXRsYXNUZXh0dXJlOlIsYXRsYXNUZXh0dXJlSWNvbjpCLGF0bGFzSW50ZXJwb2xhdGlvbjprLGF0bGFzSW50ZXJwb2xhdGlvbkljb246TCxpc1NERjpfLGhhc0hhbG86S307aWYodyYmaC5jYW5PdmVybGFwKXtUPSEwO2NvbnN0IHQ9dS5zZWdtZW50cy5nZXQoKTtmb3IoY29uc3QgaSBvZiB0KVAucHVzaCh7c2VnbWVudHM6bmV3IGUuYTAoW2ldKSxzb3J0S2V5Omkuc29ydEtleSxzdGF0ZTpZLHRlcnJhaW5EYXRhOk19KTt9ZWxzZSBQLnB1c2goe3NlZ21lbnRzOnUuc2VnbWVudHMsc29ydEtleTowLHN0YXRlOlksdGVycmFpbkRhdGE6TX0pO31UJiZQLnNvcnQoKCh0LGUpPT50LnNvcnRLZXktZS5zb3J0S2V5KSk7Zm9yKGNvbnN0IGUgb2YgUCl7Y29uc3QgaT1lLnN0YXRlO2lmKF8uYWN0aXZlVGV4dHVyZS5zZXQocC5URVhUVVJFMCksaS5hdGxhc1RleHR1cmUuYmluZChpLmF0bGFzSW50ZXJwb2xhdGlvbixwLkNMQU1QX1RPX0VER0UpLGkuYXRsYXNUZXh0dXJlSWNvbiYmKF8uYWN0aXZlVGV4dHVyZS5zZXQocC5URVhUVVJFMSksaS5hdGxhc1RleHR1cmVJY29uJiZpLmF0bGFzVGV4dHVyZUljb24uYmluZChpLmF0bGFzSW50ZXJwb2xhdGlvbkljb24scC5DTEFNUF9UT19FREdFKSksaS5pc1NERil7Y29uc3Qgcz1pLnVuaWZvcm1WYWx1ZXM7aS5oYXNIYWxvJiYocy51X2lzX2hhbG89MSxLaShpLmJ1ZmZlcnMsZS5zZWdtZW50cyxhLHQsaS5wcm9ncmFtLEksdSxkLHMsZS50ZXJyYWluRGF0YSkpLHMudV9pc19oYWxvPTA7fUtpKGkuYnVmZmVycyxlLnNlZ21lbnRzLGEsdCxpLnByb2dyYW0sSSx1LGQsaS51bmlmb3JtVmFsdWVzLGUudGVycmFpbkRhdGEpO319ZnVuY3Rpb24gS2kodCxlLGksYSxzLG8scixuLGwsaCl7Y29uc3QgYz1hLmNvbnRleHQ7cy5kcmF3KGMsYy5nbC5UUklBTkdMRVMsbyxyLG4samkuZGlzYWJsZWQsbCxoLGkuaWQsdC5sYXlvdXRWZXJ0ZXhCdWZmZXIsdC5pbmRleEJ1ZmZlcixlLGkucGFpbnQsYS50cmFuc2Zvcm0uem9vbSx0LnByb2dyYW1Db25maWd1cmF0aW9ucy5nZXQoaS5pZCksdC5keW5hbWljTGF5b3V0VmVydGV4QnVmZmVyLHQub3BhY2l0eVZlcnRleEJ1ZmZlcik7fWZ1bmN0aW9uIEppKHQsaSxhLHMpe2NvbnN0IG89dC5jb250ZXh0LHI9by5nbCxuPVVpLmRpc2FibGVkLGw9bmV3IEZpKFtyLk9ORSxyLk9ORV0sZS5hTS50cmFuc3BhcmVudCxbITAsITAsITAsITBdKSxoPWkuZ2V0QnVja2V0KGEpO2lmKCFoKXJldHVybjtjb25zdCBjPXMua2V5O2xldCB1PWEuaGVhdG1hcEZib3MuZ2V0KGMpO3V8fCh1PVFpKG8saS50aWxlU2l6ZSxpLnRpbGVTaXplKSxhLmhlYXRtYXBGYm9zLnNldChjLHUpKSxvLmJpbmRGcmFtZWJ1ZmZlci5zZXQodS5mcmFtZWJ1ZmZlciksby52aWV3cG9ydC5zZXQoWzAsMCxpLnRpbGVTaXplLGkudGlsZVNpemVdKSxvLmNsZWFyKHtjb2xvcjplLmFNLnRyYW5zcGFyZW50fSk7Y29uc3QgZD1oLnByb2dyYW1Db25maWd1cmF0aW9ucy5nZXQoYS5pZCksXz10LnVzZVByb2dyYW0oXCJoZWF0bWFwXCIsZCkscD10LnN0eWxlLm1hcC50ZXJyYWluLmdldFRlcnJhaW5EYXRhKHMpO18uZHJhdyhvLHIuVFJJQU5HTEVTLE9pLmRpc2FibGVkLG4sbCxqaS5kaXNhYmxlZCxNZShzLnBvc01hdHJpeCxpLHQudHJhbnNmb3JtLnpvb20sYS5wYWludC5nZXQoXCJoZWF0bWFwLWludGVuc2l0eVwiKSkscCxhLmlkLGgubGF5b3V0VmVydGV4QnVmZmVyLGguaW5kZXhCdWZmZXIsaC5zZWdtZW50cyxhLnBhaW50LHQudHJhbnNmb3JtLnpvb20sZCk7fWZ1bmN0aW9uIFlpKHQsZSxpKXtjb25zdCBhPXQuY29udGV4dCxzPWEuZ2w7YS5zZXRDb2xvck1vZGUodC5jb2xvck1vZGVGb3JSZW5kZXJQYXNzKCkpO2NvbnN0IG89dGEoYSxlKSxyPWkua2V5LG49ZS5oZWF0bWFwRmJvcy5nZXQocik7biYmKGEuYWN0aXZlVGV4dHVyZS5zZXQocy5URVhUVVJFMCkscy5iaW5kVGV4dHVyZShzLlRFWFRVUkVfMkQsbi5jb2xvckF0dGFjaG1lbnQuZ2V0KCkpLGEuYWN0aXZlVGV4dHVyZS5zZXQocy5URVhUVVJFMSksby5iaW5kKHMuTElORUFSLHMuQ0xBTVBfVE9fRURHRSksdC51c2VQcm9ncmFtKFwiaGVhdG1hcFRleHR1cmVcIikuZHJhdyhhLHMuVFJJQU5HTEVTLE9pLmRpc2FibGVkLFVpLmRpc2FibGVkLHQuY29sb3JNb2RlRm9yUmVuZGVyUGFzcygpLGppLmRpc2FibGVkLEFlKHQsZSwwLDEpLG51bGwsZS5pZCx0LnJhc3RlckJvdW5kc0J1ZmZlcix0LnF1YWRUcmlhbmdsZUluZGV4QnVmZmVyLHQucmFzdGVyQm91bmRzU2VnbWVudHMsZS5wYWludCx0LnRyYW5zZm9ybS56b29tKSxuLmRlc3Ryb3koKSxlLmhlYXRtYXBGYm9zLmRlbGV0ZShyKSk7fWZ1bmN0aW9uIFFpKHQsZSxpKXt2YXIgYSxzO2NvbnN0IG89dC5nbCxyPW8uY3JlYXRlVGV4dHVyZSgpO28uYmluZFRleHR1cmUoby5URVhUVVJFXzJELHIpLG8udGV4UGFyYW1ldGVyaShvLlRFWFRVUkVfMkQsby5URVhUVVJFX1dSQVBfUyxvLkNMQU1QX1RPX0VER0UpLG8udGV4UGFyYW1ldGVyaShvLlRFWFRVUkVfMkQsby5URVhUVVJFX1dSQVBfVCxvLkNMQU1QX1RPX0VER0UpLG8udGV4UGFyYW1ldGVyaShvLlRFWFRVUkVfMkQsby5URVhUVVJFX01JTl9GSUxURVIsby5MSU5FQVIpLG8udGV4UGFyYW1ldGVyaShvLlRFWFRVUkVfMkQsby5URVhUVVJFX01BR19GSUxURVIsby5MSU5FQVIpO2NvbnN0IG49bnVsbCE9PShhPXQuSEFMRl9GTE9BVCkmJnZvaWQgMCE9PWE/YTpvLlVOU0lHTkVEX0JZVEUsbD1udWxsIT09KHM9dC5SR0JBMTZGKSYmdm9pZCAwIT09cz9zOm8uUkdCQTtvLnRleEltYWdlMkQoby5URVhUVVJFXzJELDAsbCxlLGksMCxvLlJHQkEsbixudWxsKTtjb25zdCBoPXQuY3JlYXRlRnJhbWVidWZmZXIoZSxpLCExLCExKTtyZXR1cm4gaC5jb2xvckF0dGFjaG1lbnQuc2V0KHIpLGh9ZnVuY3Rpb24gdGEodCxlKXtyZXR1cm4gZS5jb2xvclJhbXBUZXh0dXJlfHwoZS5jb2xvclJhbXBUZXh0dXJlPW5ldyBiKHQsZS5jb2xvclJhbXAsdC5nbC5SR0JBKSksZS5jb2xvclJhbXBUZXh0dXJlfWZ1bmN0aW9uIGVhKHQsZSxpLGEscyl7aWYoIWl8fCFhfHwhYS5pbWFnZUF0bGFzKXJldHVybjtjb25zdCBvPWEuaW1hZ2VBdGxhcy5wYXR0ZXJuUG9zaXRpb25zO2xldCByPW9baS50by50b1N0cmluZygpXSxuPW9baS5mcm9tLnRvU3RyaW5nKCldO2lmKCFyJiZuJiYocj1uKSwhbiYmciYmKG49ciksIXJ8fCFuKXtjb25zdCB0PXMuZ2V0UGFpbnRQcm9wZXJ0eShlKTtyPW9bdF0sbj1vW3RdO31yJiZuJiZ0LnNldENvbnN0YW50UGF0dGVyblBvc2l0aW9ucyhyLG4pO31mdW5jdGlvbiBpYSh0LGUsaSxhLHMsbyxyKXtjb25zdCBuPXQuY29udGV4dC5nbCxsPVwiZmlsbC1wYXR0ZXJuXCIsaD1pLnBhaW50LmdldChsKSxjPWgmJmguY29uc3RhbnRPcigxKSx1PWkuZ2V0Q3Jvc3NmYWRlUGFyYW1ldGVycygpO2xldCBkLF8scCxtLGY7cj8oXz1jJiYhaS5nZXRQYWludFByb3BlcnR5KFwiZmlsbC1vdXRsaW5lLWNvbG9yXCIpP1wiZmlsbE91dGxpbmVQYXR0ZXJuXCI6XCJmaWxsT3V0bGluZVwiLGQ9bi5MSU5FUyk6KF89Yz9cImZpbGxQYXR0ZXJuXCI6XCJmaWxsXCIsZD1uLlRSSUFOR0xFUyk7Y29uc3QgZz1oLmNvbnN0YW50T3IobnVsbCk7Zm9yKGNvbnN0IGggb2YgYSl7Y29uc3QgYT1lLmdldFRpbGUoaCk7aWYoYyYmIWEucGF0dGVybnNMb2FkZWQoKSljb250aW51ZTtjb25zdCB2PWEuZ2V0QnVja2V0KGkpO2lmKCF2KWNvbnRpbnVlO2NvbnN0IHg9di5wcm9ncmFtQ29uZmlndXJhdGlvbnMuZ2V0KGkuaWQpLHk9dC51c2VQcm9ncmFtKF8seCksYj10LnN0eWxlLm1hcC50ZXJyYWluJiZ0LnN0eWxlLm1hcC50ZXJyYWluLmdldFRlcnJhaW5EYXRhKGgpO2MmJih0LmNvbnRleHQuYWN0aXZlVGV4dHVyZS5zZXQobi5URVhUVVJFMCksYS5pbWFnZUF0bGFzVGV4dHVyZS5iaW5kKG4uTElORUFSLG4uQ0xBTVBfVE9fRURHRSkseC51cGRhdGVQYWludEJ1ZmZlcnModSkpLGVhKHgsbCxnLGEsaSk7Y29uc3Qgdz1iP2g6bnVsbCxUPXQudHJhbnNsYXRlUG9zTWF0cml4KHc/dy5wb3NNYXRyaXg6aC5wb3NNYXRyaXgsYSxpLnBhaW50LmdldChcImZpbGwtdHJhbnNsYXRlXCIpLGkucGFpbnQuZ2V0KFwiZmlsbC10cmFuc2xhdGUtYW5jaG9yXCIpKTtpZihyKXttPXYuaW5kZXhCdWZmZXIyLGY9di5zZWdtZW50czI7Y29uc3QgZT1bbi5kcmF3aW5nQnVmZmVyV2lkdGgsbi5kcmF3aW5nQnVmZmVySGVpZ2h0XTtwPVwiZmlsbE91dGxpbmVQYXR0ZXJuXCI9PT1fJiZjP1BlKFQsdCx1LGEsZSk6RWUoVCxlKTt9ZWxzZSBtPXYuaW5kZXhCdWZmZXIsZj12LnNlZ21lbnRzLHA9Yz9JZShULHQsdSxhKTpUZShUKTt5LmRyYXcodC5jb250ZXh0LGQscyx0LnN0ZW5jaWxNb2RlRm9yQ2xpcHBpbmcoaCksbyxqaS5kaXNhYmxlZCxwLGIsaS5pZCx2LmxheW91dFZlcnRleEJ1ZmZlcixtLGYsaS5wYWludCx0LnRyYW5zZm9ybS56b29tLHgpO319ZnVuY3Rpb24gYWEodCxlLGksYSxzLG8scil7Y29uc3Qgbj10LmNvbnRleHQsbD1uLmdsLGg9XCJmaWxsLWV4dHJ1c2lvbi1wYXR0ZXJuXCIsYz1pLnBhaW50LmdldChoKSx1PWMuY29uc3RhbnRPcigxKSxkPWkuZ2V0Q3Jvc3NmYWRlUGFyYW1ldGVycygpLF89aS5wYWludC5nZXQoXCJmaWxsLWV4dHJ1c2lvbi1vcGFjaXR5XCIpLHA9Yy5jb25zdGFudE9yKG51bGwpO2Zvcihjb25zdCBjIG9mIGEpe2NvbnN0IGE9ZS5nZXRUaWxlKGMpLG09YS5nZXRCdWNrZXQoaSk7aWYoIW0pY29udGludWU7Y29uc3QgZj10LnN0eWxlLm1hcC50ZXJyYWluJiZ0LnN0eWxlLm1hcC50ZXJyYWluLmdldFRlcnJhaW5EYXRhKGMpLGc9bS5wcm9ncmFtQ29uZmlndXJhdGlvbnMuZ2V0KGkuaWQpLHY9dC51c2VQcm9ncmFtKHU/XCJmaWxsRXh0cnVzaW9uUGF0dGVyblwiOlwiZmlsbEV4dHJ1c2lvblwiLGcpO3UmJih0LmNvbnRleHQuYWN0aXZlVGV4dHVyZS5zZXQobC5URVhUVVJFMCksYS5pbWFnZUF0bGFzVGV4dHVyZS5iaW5kKGwuTElORUFSLGwuQ0xBTVBfVE9fRURHRSksZy51cGRhdGVQYWludEJ1ZmZlcnMoZCkpLGVhKGcsaCxwLGEsaSk7Y29uc3QgeD10LnRyYW5zbGF0ZVBvc01hdHJpeChjLnBvc01hdHJpeCxhLGkucGFpbnQuZ2V0KFwiZmlsbC1leHRydXNpb24tdHJhbnNsYXRlXCIpLGkucGFpbnQuZ2V0KFwiZmlsbC1leHRydXNpb24tdHJhbnNsYXRlLWFuY2hvclwiKSkseT1pLnBhaW50LmdldChcImZpbGwtZXh0cnVzaW9uLXZlcnRpY2FsLWdyYWRpZW50XCIpLGI9dT93ZSh4LHQseSxfLGMsZCxhKTpiZSh4LHQseSxfKTt2LmRyYXcobixuLmdsLlRSSUFOR0xFUyxzLG8scixqaS5iYWNrQ0NXLGIsZixpLmlkLG0ubGF5b3V0VmVydGV4QnVmZmVyLG0uaW5kZXhCdWZmZXIsbS5zZWdtZW50cyxpLnBhaW50LHQudHJhbnNmb3JtLnpvb20sZyx0LnN0eWxlLm1hcC50ZXJyYWluJiZtLmNlbnRyb2lkVmVydGV4QnVmZmVyKTt9fWZ1bmN0aW9uIHNhKHQsZSxpLGEscyxvLHIpe2NvbnN0IG49dC5jb250ZXh0LGw9bi5nbCxoPWkuZmJvO2lmKCFoKXJldHVybjtjb25zdCBjPXQudXNlUHJvZ3JhbShcImhpbGxzaGFkZVwiKSx1PXQuc3R5bGUubWFwLnRlcnJhaW4mJnQuc3R5bGUubWFwLnRlcnJhaW4uZ2V0VGVycmFpbkRhdGEoZSk7bi5hY3RpdmVUZXh0dXJlLnNldChsLlRFWFRVUkUwKSxsLmJpbmRUZXh0dXJlKGwuVEVYVFVSRV8yRCxoLmNvbG9yQXR0YWNobWVudC5nZXQoKSksYy5kcmF3KG4sbC5UUklBTkdMRVMscyxvLHIsamkuZGlzYWJsZWQsKCh0LGUsaSxhKT0+e2NvbnN0IHM9aS5wYWludC5nZXQoXCJoaWxsc2hhZGUtc2hhZG93LWNvbG9yXCIpLG89aS5wYWludC5nZXQoXCJoaWxsc2hhZGUtaGlnaGxpZ2h0LWNvbG9yXCIpLHI9aS5wYWludC5nZXQoXCJoaWxsc2hhZGUtYWNjZW50LWNvbG9yXCIpO2xldCBuPWkucGFpbnQuZ2V0KFwiaGlsbHNoYWRlLWlsbHVtaW5hdGlvbi1kaXJlY3Rpb25cIikqKE1hdGguUEkvMTgwKTtcInZpZXdwb3J0XCI9PT1pLnBhaW50LmdldChcImhpbGxzaGFkZS1pbGx1bWluYXRpb24tYW5jaG9yXCIpJiYobi09dC50cmFuc2Zvcm0uYW5nbGUpO2NvbnN0IGw9IXQub3B0aW9ucy5tb3Zpbmc7cmV0dXJuIHt1X21hdHJpeDphP2EucG9zTWF0cml4OnQudHJhbnNmb3JtLmNhbGN1bGF0ZVBvc01hdHJpeChlLnRpbGVJRC50b1Vud3JhcHBlZCgpLGwpLHVfaW1hZ2U6MCx1X2xhdHJhbmdlOlJlKDAsZS50aWxlSUQpLHVfbGlnaHQ6W2kucGFpbnQuZ2V0KFwiaGlsbHNoYWRlLWV4YWdnZXJhdGlvblwiKSxuXSx1X3NoYWRvdzpzLHVfaGlnaGxpZ2h0Om8sdV9hY2NlbnQ6cn19KSh0LGksYSx1P2U6bnVsbCksdSxhLmlkLHQucmFzdGVyQm91bmRzQnVmZmVyLHQucXVhZFRyaWFuZ2xlSW5kZXhCdWZmZXIsdC5yYXN0ZXJCb3VuZHNTZWdtZW50cyk7fWZ1bmN0aW9uIG9hKHQsaSxhLHMsbyxyKXtjb25zdCBuPXQuY29udGV4dCxsPW4uZ2wsaD1pLmRlbTtpZihoJiZoLmRhdGEpe2NvbnN0IGM9aC5kaW0sdT1oLnN0cmlkZSxkPWguZ2V0UGl4ZWxzKCk7aWYobi5hY3RpdmVUZXh0dXJlLnNldChsLlRFWFRVUkUxKSxuLnBpeGVsU3RvcmVVbnBhY2tQcmVtdWx0aXBseUFscGhhLnNldCghMSksaS5kZW1UZXh0dXJlPWkuZGVtVGV4dHVyZXx8dC5nZXRUaWxlVGV4dHVyZSh1KSxpLmRlbVRleHR1cmUpe2NvbnN0IHQ9aS5kZW1UZXh0dXJlO3QudXBkYXRlKGQse3ByZW11bHRpcGx5OiExfSksdC5iaW5kKGwuTkVBUkVTVCxsLkNMQU1QX1RPX0VER0UpO31lbHNlIGkuZGVtVGV4dHVyZT1uZXcgYihuLGQsbC5SR0JBLHtwcmVtdWx0aXBseTohMX0pLGkuZGVtVGV4dHVyZS5iaW5kKGwuTkVBUkVTVCxsLkNMQU1QX1RPX0VER0UpO24uYWN0aXZlVGV4dHVyZS5zZXQobC5URVhUVVJFMCk7bGV0IF89aS5mYm87aWYoIV8pe2NvbnN0IHQ9bmV3IGIobix7d2lkdGg6YyxoZWlnaHQ6YyxkYXRhOm51bGx9LGwuUkdCQSk7dC5iaW5kKGwuTElORUFSLGwuQ0xBTVBfVE9fRURHRSksXz1pLmZibz1uLmNyZWF0ZUZyYW1lYnVmZmVyKGMsYywhMCwhMSksXy5jb2xvckF0dGFjaG1lbnQuc2V0KHQudGV4dHVyZSk7fW4uYmluZEZyYW1lYnVmZmVyLnNldChfLmZyYW1lYnVmZmVyKSxuLnZpZXdwb3J0LnNldChbMCwwLGMsY10pLHQudXNlUHJvZ3JhbShcImhpbGxzaGFkZVByZXBhcmVcIikuZHJhdyhuLGwuVFJJQU5HTEVTLHMsbyxyLGppLmRpc2FibGVkLCgodCxpKT0+e2NvbnN0IGE9aS5zdHJpZGUscz1lLkgoKTtyZXR1cm4gZS5hUChzLDAsZS5YLC1lLlgsMCwwLDEpLGUuSihzLHMsWzAsLWUuWCwwXSkse3VfbWF0cml4OnMsdV9pbWFnZToxLHVfZGltZW5zaW9uOlthLGFdLHVfem9vbTp0Lm92ZXJzY2FsZWRaLHVfdW5wYWNrOmkuZ2V0VW5wYWNrVmVjdG9yKCl9fSkoaS50aWxlSUQsaCksbnVsbCxhLmlkLHQucmFzdGVyQm91bmRzQnVmZmVyLHQucXVhZFRyaWFuZ2xlSW5kZXhCdWZmZXIsdC5yYXN0ZXJCb3VuZHNTZWdtZW50cyksaS5uZWVkc0hpbGxzaGFkZVByZXBhcmU9ITE7fX1mdW5jdGlvbiByYSh0LGksYSxzLHIsbil7Y29uc3QgbD1zLnBhaW50LmdldChcInJhc3Rlci1mYWRlLWR1cmF0aW9uXCIpO2lmKCFuJiZsPjApe2NvbnN0IHM9by5ub3coKSxuPShzLXQudGltZUFkZGVkKS9sLGg9aT8ocy1pLnRpbWVBZGRlZCkvbDotMSxjPWEuZ2V0U291cmNlKCksdT1yLmNvdmVyaW5nWm9vbUxldmVsKHt0aWxlU2l6ZTpjLnRpbGVTaXplLHJvdW5kWm9vbTpjLnJvdW5kWm9vbX0pLGQ9IWl8fE1hdGguYWJzKGkudGlsZUlELm92ZXJzY2FsZWRaLXUpPk1hdGguYWJzKHQudGlsZUlELm92ZXJzY2FsZWRaLXUpLF89ZCYmdC5yZWZyZXNoZWRVcG9uRXhwaXJhdGlvbj8xOmUuYWMoZD9uOjEtaCwwLDEpO3JldHVybiB0LnJlZnJlc2hlZFVwb25FeHBpcmF0aW9uJiZuPj0xJiYodC5yZWZyZXNoZWRVcG9uRXhwaXJhdGlvbj0hMSksaT97b3BhY2l0eToxLG1peDoxLV99OntvcGFjaXR5Ol8sbWl4OjB9fXJldHVybiB7b3BhY2l0eToxLG1peDowfX1jb25zdCBuYT1uZXcgZS5hTSgxLDAsMCwxKSxsYT1uZXcgZS5hTSgwLDEsMCwxKSxoYT1uZXcgZS5hTSgwLDAsMSwxKSxjYT1uZXcgZS5hTSgxLDAsMSwxKSx1YT1uZXcgZS5hTSgwLDEsMSwxKTtmdW5jdGlvbiBkYSh0LGUsaSxhKXtwYSh0LDAsZStpLzIsdC50cmFuc2Zvcm0ud2lkdGgsaSxhKTt9ZnVuY3Rpb24gX2EodCxlLGksYSl7cGEodCxlLWkvMiwwLGksdC50cmFuc2Zvcm0uaGVpZ2h0LGEpO31mdW5jdGlvbiBwYSh0LGUsaSxhLHMsbyl7Y29uc3Qgcj10LmNvbnRleHQsbj1yLmdsO24uZW5hYmxlKG4uU0NJU1NPUl9URVNUKSxuLnNjaXNzb3IoZSp0LnBpeGVsUmF0aW8saSp0LnBpeGVsUmF0aW8sYSp0LnBpeGVsUmF0aW8scyp0LnBpeGVsUmF0aW8pLHIuY2xlYXIoe2NvbG9yOm99KSxuLmRpc2FibGUobi5TQ0lTU09SX1RFU1QpO31mdW5jdGlvbiBtYSh0LGksYSl7Y29uc3Qgcz10LmNvbnRleHQsbz1zLmdsLHI9YS5wb3NNYXRyaXgsbj10LnVzZVByb2dyYW0oXCJkZWJ1Z1wiKSxsPU9pLmRpc2FibGVkLGg9VWkuZGlzYWJsZWQsYz10LmNvbG9yTW9kZUZvclJlbmRlclBhc3MoKSx1PVwiJGRlYnVnXCIsZD10LnN0eWxlLm1hcC50ZXJyYWluJiZ0LnN0eWxlLm1hcC50ZXJyYWluLmdldFRlcnJhaW5EYXRhKGEpO3MuYWN0aXZlVGV4dHVyZS5zZXQoby5URVhUVVJFMCk7Y29uc3QgXz1pLmdldFRpbGVCeUlEKGEua2V5KS5sYXRlc3RSYXdUaWxlRGF0YSxwPU1hdGguZmxvb3IoKF8mJl8uYnl0ZUxlbmd0aHx8MCkvMTAyNCksbT1pLmdldFRpbGUoYSkudGlsZVNpemUsZj01MTIvTWF0aC5taW4obSw1MTIpKihhLm92ZXJzY2FsZWRaL3QudHJhbnNmb3JtLnpvb20pKi41O2xldCBnPWEuY2Fub25pY2FsLnRvU3RyaW5nKCk7YS5vdmVyc2NhbGVkWiE9PWEuY2Fub25pY2FsLnomJihnKz1gID0+ICR7YS5vdmVyc2NhbGVkWn1gKSxmdW5jdGlvbih0LGUpe3QuaW5pdERlYnVnT3ZlcmxheUNhbnZhcygpO2NvbnN0IGk9dC5kZWJ1Z092ZXJsYXlDYW52YXMsYT10LmNvbnRleHQuZ2wscz10LmRlYnVnT3ZlcmxheUNhbnZhcy5nZXRDb250ZXh0KFwiMmRcIik7cy5jbGVhclJlY3QoMCwwLGkud2lkdGgsaS5oZWlnaHQpLHMuc2hhZG93Q29sb3I9XCJ3aGl0ZVwiLHMuc2hhZG93Qmx1cj0yLHMubGluZVdpZHRoPTEuNSxzLnN0cm9rZVN0eWxlPVwid2hpdGVcIixzLnRleHRCYXNlbGluZT1cInRvcFwiLHMuZm9udD1cImJvbGQgMzZweCBPcGVuIFNhbnMsIHNhbnMtc2VyaWZcIixzLmZpbGxUZXh0KGUsNSw1KSxzLnN0cm9rZVRleHQoZSw1LDUpLHQuZGVidWdPdmVybGF5VGV4dHVyZS51cGRhdGUoaSksdC5kZWJ1Z092ZXJsYXlUZXh0dXJlLmJpbmQoYS5MSU5FQVIsYS5DTEFNUF9UT19FREdFKTt9KHQsYCR7Z30gJHtwfWtCYCksbi5kcmF3KHMsby5UUklBTkdMRVMsbCxoLEZpLmFscGhhQmxlbmRlZCxqaS5kaXNhYmxlZCx6ZShyLGUuYU0udHJhbnNwYXJlbnQsZiksbnVsbCx1LHQuZGVidWdCdWZmZXIsdC5xdWFkVHJpYW5nbGVJbmRleEJ1ZmZlcix0LmRlYnVnU2VnbWVudHMpLG4uZHJhdyhzLG8uTElORV9TVFJJUCxsLGgsYyxqaS5kaXNhYmxlZCx6ZShyLGUuYU0ucmVkKSxkLHUsdC5kZWJ1Z0J1ZmZlcix0LnRpbGVCb3JkZXJJbmRleEJ1ZmZlcix0LmRlYnVnU2VnbWVudHMpO31mdW5jdGlvbiBmYSh0LGUsaSl7Y29uc3QgYT10LmNvbnRleHQscz1hLmdsLG89dC5jb2xvck1vZGVGb3JSZW5kZXJQYXNzKCkscj1uZXcgT2kocy5MRVFVQUwsT2kuUmVhZFdyaXRlLHQuZGVwdGhSYW5nZUZvcjNEKSxuPXQudXNlUHJvZ3JhbShcInRlcnJhaW5cIiksbD1lLmdldFRlcnJhaW5NZXNoKCk7YS5iaW5kRnJhbWVidWZmZXIuc2V0KG51bGwpLGEudmlld3BvcnQuc2V0KFswLDAsdC53aWR0aCx0LmhlaWdodF0pO2Zvcihjb25zdCBoIG9mIGkpe2NvbnN0IGk9dC5yZW5kZXJUb1RleHR1cmUuZ2V0VGV4dHVyZShoKSxjPWUuZ2V0VGVycmFpbkRhdGEoaC50aWxlSUQpO2EuYWN0aXZlVGV4dHVyZS5zZXQocy5URVhUVVJFMCkscy5iaW5kVGV4dHVyZShzLlRFWFRVUkVfMkQsaS50ZXh0dXJlKTtjb25zdCB1PXQudHJhbnNmb3JtLmNhbGN1bGF0ZVBvc01hdHJpeChoLnRpbGVJRC50b1Vud3JhcHBlZCgpKSxkPWUuZ2V0TWVzaEZyYW1lRGVsdGEodC50cmFuc2Zvcm0uem9vbSksXz10LnRyYW5zZm9ybS5jYWxjdWxhdGVGb2dNYXRyaXgoaC50aWxlSUQudG9VbndyYXBwZWQoKSkscD1nZSh1LGQsXyx0LnN0eWxlLnNreSx0LnRyYW5zZm9ybS5waXRjaCk7bi5kcmF3KGEscy5UUklBTkdMRVMscixVaS5kaXNhYmxlZCxvLGppLmJhY2tDQ1cscCxjLFwidGVycmFpblwiLGwudmVydGV4QnVmZmVyLGwuaW5kZXhCdWZmZXIsbC5zZWdtZW50cyk7fX1jbGFzcyBnYXtjb25zdHJ1Y3Rvcih0LGUsaSl7dGhpcy52ZXJ0ZXhCdWZmZXI9dCx0aGlzLmluZGV4QnVmZmVyPWUsdGhpcy5zZWdtZW50cz1pO31kZXN0cm95KCl7dGhpcy52ZXJ0ZXhCdWZmZXIuZGVzdHJveSgpLHRoaXMuaW5kZXhCdWZmZXIuZGVzdHJveSgpLHRoaXMuc2VnbWVudHMuZGVzdHJveSgpLHRoaXMudmVydGV4QnVmZmVyPW51bGwsdGhpcy5pbmRleEJ1ZmZlcj1udWxsLHRoaXMuc2VnbWVudHM9bnVsbDt9fWNsYXNzIHZhe2NvbnN0cnVjdG9yKHQsaSl7dGhpcy5jb250ZXh0PW5ldyBCaSh0KSx0aGlzLnRyYW5zZm9ybT1pLHRoaXMuX3RpbGVUZXh0dXJlcz17fSx0aGlzLnRlcnJhaW5GYWNpbGl0YXRvcj17ZGlydHk6ITAsbWF0cml4OmUuYW4obmV3IEZsb2F0NjRBcnJheSgxNikpLHJlbmRlclRpbWU6MH0sdGhpcy5zZXR1cCgpLHRoaXMubnVtU3VibGF5ZXJzPXV0Lm1heFVuZGVyem9vbWluZyt1dC5tYXhPdmVyem9vbWluZysxLHRoaXMuZGVwdGhFcHNpbG9uPTEvTWF0aC5wb3coMiwxNiksdGhpcy5jcm9zc1RpbGVTeW1ib2xJbmRleD1uZXcgaGU7fXJlc2l6ZSh0LGUsaSl7aWYodGhpcy53aWR0aD1NYXRoLmZsb29yKHQqaSksdGhpcy5oZWlnaHQ9TWF0aC5mbG9vcihlKmkpLHRoaXMucGl4ZWxSYXRpbz1pLHRoaXMuY29udGV4dC52aWV3cG9ydC5zZXQoWzAsMCx0aGlzLndpZHRoLHRoaXMuaGVpZ2h0XSksdGhpcy5zdHlsZSlmb3IoY29uc3QgdCBvZiB0aGlzLnN0eWxlLl9vcmRlcil0aGlzLnN0eWxlLl9sYXllcnNbdF0ucmVzaXplKCk7fXNldHVwKCl7Y29uc3QgdD10aGlzLmNvbnRleHQsaT1uZXcgZS5hWDtpLmVtcGxhY2VCYWNrKDAsMCksaS5lbXBsYWNlQmFjayhlLlgsMCksaS5lbXBsYWNlQmFjaygwLGUuWCksaS5lbXBsYWNlQmFjayhlLlgsZS5YKSx0aGlzLnRpbGVFeHRlbnRCdWZmZXI9dC5jcmVhdGVWZXJ0ZXhCdWZmZXIoaSxfZS5tZW1iZXJzKSx0aGlzLnRpbGVFeHRlbnRTZWdtZW50cz1lLmEwLnNpbXBsZVNlZ21lbnQoMCwwLDQsMik7Y29uc3QgYT1uZXcgZS5hWDthLmVtcGxhY2VCYWNrKDAsMCksYS5lbXBsYWNlQmFjayhlLlgsMCksYS5lbXBsYWNlQmFjaygwLGUuWCksYS5lbXBsYWNlQmFjayhlLlgsZS5YKSx0aGlzLmRlYnVnQnVmZmVyPXQuY3JlYXRlVmVydGV4QnVmZmVyKGEsX2UubWVtYmVycyksdGhpcy5kZWJ1Z1NlZ21lbnRzPWUuYTAuc2ltcGxlU2VnbWVudCgwLDAsNCw1KTtjb25zdCBzPW5ldyBlLiQ7cy5lbXBsYWNlQmFjaygwLDAsMCwwKSxzLmVtcGxhY2VCYWNrKGUuWCwwLGUuWCwwKSxzLmVtcGxhY2VCYWNrKDAsZS5YLDAsZS5YKSxzLmVtcGxhY2VCYWNrKGUuWCxlLlgsZS5YLGUuWCksdGhpcy5yYXN0ZXJCb3VuZHNCdWZmZXI9dC5jcmVhdGVWZXJ0ZXhCdWZmZXIocyxZLm1lbWJlcnMpLHRoaXMucmFzdGVyQm91bmRzU2VnbWVudHM9ZS5hMC5zaW1wbGVTZWdtZW50KDAsMCw0LDIpO2NvbnN0IG89bmV3IGUuYVg7by5lbXBsYWNlQmFjaygwLDApLG8uZW1wbGFjZUJhY2soMSwwKSxvLmVtcGxhY2VCYWNrKDAsMSksby5lbXBsYWNlQmFjaygxLDEpLHRoaXMudmlld3BvcnRCdWZmZXI9dC5jcmVhdGVWZXJ0ZXhCdWZmZXIobyxfZS5tZW1iZXJzKSx0aGlzLnZpZXdwb3J0U2VnbWVudHM9ZS5hMC5zaW1wbGVTZWdtZW50KDAsMCw0LDIpO2NvbnN0IHI9bmV3IGUuYVo7ci5lbXBsYWNlQmFjaygwKSxyLmVtcGxhY2VCYWNrKDEpLHIuZW1wbGFjZUJhY2soMyksci5lbXBsYWNlQmFjaygyKSxyLmVtcGxhY2VCYWNrKDApLHRoaXMudGlsZUJvcmRlckluZGV4QnVmZmVyPXQuY3JlYXRlSW5kZXhCdWZmZXIocik7Y29uc3Qgbj1uZXcgZS5hWTtuLmVtcGxhY2VCYWNrKDAsMSwyKSxuLmVtcGxhY2VCYWNrKDIsMSwzKSx0aGlzLnF1YWRUcmlhbmdsZUluZGV4QnVmZmVyPXQuY3JlYXRlSW5kZXhCdWZmZXIobik7Y29uc3QgbD10aGlzLmNvbnRleHQuZ2w7dGhpcy5zdGVuY2lsQ2xlYXJNb2RlPW5ldyBVaSh7ZnVuYzpsLkFMV0FZUyxtYXNrOjB9LDAsMjU1LGwuWkVSTyxsLlpFUk8sbC5aRVJPKTt9Y2xlYXJTdGVuY2lsKCl7Y29uc3QgdD10aGlzLmNvbnRleHQsaT10LmdsO3RoaXMubmV4dFN0ZW5jaWxJRD0xLHRoaXMuY3VycmVudFN0ZW5jaWxTb3VyY2U9dm9pZCAwO2NvbnN0IGE9ZS5IKCk7ZS5hUChhLDAsdGhpcy53aWR0aCx0aGlzLmhlaWdodCwwLDAsMSksZS5LKGEsYSxbaS5kcmF3aW5nQnVmZmVyV2lkdGgsaS5kcmF3aW5nQnVmZmVySGVpZ2h0LDBdKSx0aGlzLnVzZVByb2dyYW0oXCJjbGlwcGluZ01hc2tcIikuZHJhdyh0LGkuVFJJQU5HTEVTLE9pLmRpc2FibGVkLHRoaXMuc3RlbmNpbENsZWFyTW9kZSxGaS5kaXNhYmxlZCxqaS5kaXNhYmxlZCxEZShhKSxudWxsLFwiJGNsaXBwaW5nXCIsdGhpcy52aWV3cG9ydEJ1ZmZlcix0aGlzLnF1YWRUcmlhbmdsZUluZGV4QnVmZmVyLHRoaXMudmlld3BvcnRTZWdtZW50cyk7fV9yZW5kZXJUaWxlQ2xpcHBpbmdNYXNrcyh0LGUpe2lmKHRoaXMuY3VycmVudFN0ZW5jaWxTb3VyY2U9PT10LnNvdXJjZXx8IXQuaXNUaWxlQ2xpcHBlZCgpfHwhZXx8IWUubGVuZ3RoKXJldHVybjt0aGlzLmN1cnJlbnRTdGVuY2lsU291cmNlPXQuc291cmNlO2NvbnN0IGk9dGhpcy5jb250ZXh0LGE9aS5nbDt0aGlzLm5leHRTdGVuY2lsSUQrZS5sZW5ndGg+MjU2JiZ0aGlzLmNsZWFyU3RlbmNpbCgpLGkuc2V0Q29sb3JNb2RlKEZpLmRpc2FibGVkKSxpLnNldERlcHRoTW9kZShPaS5kaXNhYmxlZCk7Y29uc3Qgcz10aGlzLnVzZVByb2dyYW0oXCJjbGlwcGluZ01hc2tcIik7dGhpcy5fdGlsZUNsaXBwaW5nTWFza0lEcz17fTtmb3IoY29uc3QgdCBvZiBlKXtjb25zdCBlPXRoaXMuX3RpbGVDbGlwcGluZ01hc2tJRHNbdC5rZXldPXRoaXMubmV4dFN0ZW5jaWxJRCsrLG89dGhpcy5zdHlsZS5tYXAudGVycmFpbiYmdGhpcy5zdHlsZS5tYXAudGVycmFpbi5nZXRUZXJyYWluRGF0YSh0KTtzLmRyYXcoaSxhLlRSSUFOR0xFUyxPaS5kaXNhYmxlZCxuZXcgVWkoe2Z1bmM6YS5BTFdBWVMsbWFzazowfSxlLDI1NSxhLktFRVAsYS5LRUVQLGEuUkVQTEFDRSksRmkuZGlzYWJsZWQsamkuZGlzYWJsZWQsRGUodC5wb3NNYXRyaXgpLG8sXCIkY2xpcHBpbmdcIix0aGlzLnRpbGVFeHRlbnRCdWZmZXIsdGhpcy5xdWFkVHJpYW5nbGVJbmRleEJ1ZmZlcix0aGlzLnRpbGVFeHRlbnRTZWdtZW50cyk7fX1zdGVuY2lsTW9kZUZvcjNEKCl7dGhpcy5jdXJyZW50U3RlbmNpbFNvdXJjZT12b2lkIDAsdGhpcy5uZXh0U3RlbmNpbElEKzE+MjU2JiZ0aGlzLmNsZWFyU3RlbmNpbCgpO2NvbnN0IHQ9dGhpcy5uZXh0U3RlbmNpbElEKyssZT10aGlzLmNvbnRleHQuZ2w7cmV0dXJuIG5ldyBVaSh7ZnVuYzplLk5PVEVRVUFMLG1hc2s6MjU1fSx0LDI1NSxlLktFRVAsZS5LRUVQLGUuUkVQTEFDRSl9c3RlbmNpbE1vZGVGb3JDbGlwcGluZyh0KXtjb25zdCBlPXRoaXMuY29udGV4dC5nbDtyZXR1cm4gbmV3IFVpKHtmdW5jOmUuRVFVQUwsbWFzazoyNTV9LHRoaXMuX3RpbGVDbGlwcGluZ01hc2tJRHNbdC5rZXldLDAsZS5LRUVQLGUuS0VFUCxlLlJFUExBQ0UpfXN0ZW5jaWxDb25maWdGb3JPdmVybGFwKHQpe2NvbnN0IGU9dGhpcy5jb250ZXh0LmdsLGk9dC5zb3J0KCgodCxlKT0+ZS5vdmVyc2NhbGVkWi10Lm92ZXJzY2FsZWRaKSksYT1pW2kubGVuZ3RoLTFdLm92ZXJzY2FsZWRaLHM9aVswXS5vdmVyc2NhbGVkWi1hKzE7aWYocz4xKXt0aGlzLmN1cnJlbnRTdGVuY2lsU291cmNlPXZvaWQgMCx0aGlzLm5leHRTdGVuY2lsSUQrcz4yNTYmJnRoaXMuY2xlYXJTdGVuY2lsKCk7Y29uc3QgdD17fTtmb3IobGV0IGk9MDtpPHM7aSsrKXRbaSthXT1uZXcgVWkoe2Z1bmM6ZS5HRVFVQUwsbWFzazoyNTV9LGkrdGhpcy5uZXh0U3RlbmNpbElELDI1NSxlLktFRVAsZS5LRUVQLGUuUkVQTEFDRSk7cmV0dXJuIHRoaXMubmV4dFN0ZW5jaWxJRCs9cyxbdCxpXX1yZXR1cm4gW3tbYV06VWkuZGlzYWJsZWR9LGldfWNvbG9yTW9kZUZvclJlbmRlclBhc3MoKXtjb25zdCB0PXRoaXMuY29udGV4dC5nbDtpZih0aGlzLl9zaG93T3ZlcmRyYXdJbnNwZWN0b3Ipe2NvbnN0IGk9MS84O3JldHVybiBuZXcgRmkoW3QuQ09OU1RBTlRfQ09MT1IsdC5PTkVdLG5ldyBlLmFNKGksaSxpLDApLFshMCwhMCwhMCwhMF0pfXJldHVybiBcIm9wYXF1ZVwiPT09dGhpcy5yZW5kZXJQYXNzP0ZpLnVuYmxlbmRlZDpGaS5hbHBoYUJsZW5kZWR9ZGVwdGhNb2RlRm9yU3VibGF5ZXIodCxlLGkpe2lmKCF0aGlzLm9wYXF1ZVBhc3NFbmFibGVkRm9yTGF5ZXIoKSlyZXR1cm4gT2kuZGlzYWJsZWQ7Y29uc3QgYT0xLSgoMSt0aGlzLmN1cnJlbnRMYXllcikqdGhpcy5udW1TdWJsYXllcnMrdCkqdGhpcy5kZXB0aEVwc2lsb247cmV0dXJuIG5ldyBPaShpfHx0aGlzLmNvbnRleHQuZ2wuTEVRVUFMLGUsW2EsYV0pfW9wYXF1ZVBhc3NFbmFibGVkRm9yTGF5ZXIoKXtyZXR1cm4gdGhpcy5jdXJyZW50TGF5ZXI8dGhpcy5vcGFxdWVQYXNzQ3V0b2ZmfXJlbmRlcih0LGkpe3RoaXMuc3R5bGU9dCx0aGlzLm9wdGlvbnM9aSx0aGlzLmxpbmVBdGxhcz10LmxpbmVBdGxhcyx0aGlzLmltYWdlTWFuYWdlcj10LmltYWdlTWFuYWdlcix0aGlzLmdseXBoTWFuYWdlcj10LmdseXBoTWFuYWdlcix0aGlzLnN5bWJvbEZhZGVDaGFuZ2U9dC5wbGFjZW1lbnQuc3ltYm9sRmFkZUNoYW5nZShvLm5vdygpKSx0aGlzLmltYWdlTWFuYWdlci5iZWdpbkZyYW1lKCk7Y29uc3QgYT10aGlzLnN0eWxlLl9vcmRlcixzPXRoaXMuc3R5bGUuc291cmNlQ2FjaGVzLHI9e30sbj17fSxsPXt9O2Zvcihjb25zdCB0IGluIHMpe2NvbnN0IGU9c1t0XTtlLnVzZWQmJmUucHJlcGFyZSh0aGlzLmNvbnRleHQpLHJbdF09ZS5nZXRWaXNpYmxlQ29vcmRpbmF0ZXMoKSxuW3RdPXJbdF0uc2xpY2UoKS5yZXZlcnNlKCksbFt0XT1lLmdldFZpc2libGVDb29yZGluYXRlcyghMCkucmV2ZXJzZSgpO310aGlzLm9wYXF1ZVBhc3NDdXRvZmY9MS8wO2ZvcihsZXQgdD0wO3Q8YS5sZW5ndGg7dCsrKWlmKHRoaXMuc3R5bGUuX2xheWVyc1thW3RdXS5pczNEKCkpe3RoaXMub3BhcXVlUGFzc0N1dG9mZj10O2JyZWFrfXRoaXMubWF5YmVEcmF3RGVwdGhBbmRDb29yZHMoITEpLHRoaXMucmVuZGVyVG9UZXh0dXJlJiYodGhpcy5yZW5kZXJUb1RleHR1cmUucHJlcGFyZUZvclJlbmRlcih0aGlzLnN0eWxlLHRoaXMudHJhbnNmb3JtLnpvb20pLHRoaXMub3BhcXVlUGFzc0N1dG9mZj0wKSx0aGlzLnJlbmRlclBhc3M9XCJvZmZzY3JlZW5cIjtmb3IoY29uc3QgdCBvZiBhKXtjb25zdCBlPXRoaXMuc3R5bGUuX2xheWVyc1t0XTtpZighZS5oYXNPZmZzY3JlZW5QYXNzKCl8fGUuaXNIaWRkZW4odGhpcy50cmFuc2Zvcm0uem9vbSkpY29udGludWU7Y29uc3QgaT1uW2Uuc291cmNlXTsoXCJjdXN0b21cIj09PWUudHlwZXx8aS5sZW5ndGgpJiZ0aGlzLnJlbmRlckxheWVyKHRoaXMsc1tlLnNvdXJjZV0sZSxpKTt9aWYodGhpcy5jb250ZXh0LmJpbmRGcmFtZWJ1ZmZlci5zZXQobnVsbCksdGhpcy5jb250ZXh0LmNsZWFyKHtjb2xvcjppLnNob3dPdmVyZHJhd0luc3BlY3Rvcj9lLmFNLmJsYWNrOmUuYU0udHJhbnNwYXJlbnQsZGVwdGg6MX0pLHRoaXMuY2xlYXJTdGVuY2lsKCksdGhpcy5zdHlsZS5za3kmJmZ1bmN0aW9uKHQsaSl7Y29uc3QgYT10LmNvbnRleHQscz1hLmdsLG89KCh0LGUsaSk9Pih7dV9za3lfY29sb3I6dC5wcm9wZXJ0aWVzLmdldChcInNreS1jb2xvclwiKSx1X2hvcml6b25fY29sb3I6dC5wcm9wZXJ0aWVzLmdldChcImhvcml6b24tY29sb3JcIiksdV9ob3Jpem9uOihlLmhlaWdodC8yK2UuZ2V0SG9yaXpvbigpKSppLHVfc2t5X2hvcml6b25fYmxlbmQ6dC5wcm9wZXJ0aWVzLmdldChcInNreS1ob3Jpem9uLWJsZW5kXCIpKmUuaGVpZ2h0LzIqaX0pKShpLHQuc3R5bGUubWFwLnRyYW5zZm9ybSx0LnBpeGVsUmF0aW8pLHI9bmV3IE9pKHMuTEVRVUFMLE9pLlJlYWRXcml0ZSxbMCwxXSksbj1VaS5kaXNhYmxlZCxsPXQuY29sb3JNb2RlRm9yUmVuZGVyUGFzcygpLGg9dC51c2VQcm9ncmFtKFwic2t5XCIpO2lmKCFpLm1lc2gpe2NvbnN0IHQ9bmV3IGUuYVg7dC5lbXBsYWNlQmFjaygtMSwtMSksdC5lbXBsYWNlQmFjaygxLC0xKSx0LmVtcGxhY2VCYWNrKDEsMSksdC5lbXBsYWNlQmFjaygtMSwxKTtjb25zdCBzPW5ldyBlLmFZO3MuZW1wbGFjZUJhY2soMCwxLDIpLHMuZW1wbGFjZUJhY2soMCwyLDMpLGkubWVzaD1uZXcgZ2EoYS5jcmVhdGVWZXJ0ZXhCdWZmZXIodCxfZS5tZW1iZXJzKSxhLmNyZWF0ZUluZGV4QnVmZmVyKHMpLGUuYTAuc2ltcGxlU2VnbWVudCgwLDAsdC5sZW5ndGgscy5sZW5ndGgpKTt9aC5kcmF3KGEscy5UUklBTkdMRVMscixuLGwsamkuZGlzYWJsZWQsbyx2b2lkIDAsXCJza3lcIixpLm1lc2gudmVydGV4QnVmZmVyLGkubWVzaC5pbmRleEJ1ZmZlcixpLm1lc2guc2VnbWVudHMpO30odGhpcyx0aGlzLnN0eWxlLnNreSksdGhpcy5fc2hvd092ZXJkcmF3SW5zcGVjdG9yPWkuc2hvd092ZXJkcmF3SW5zcGVjdG9yLHRoaXMuZGVwdGhSYW5nZUZvcjNEPVswLDEtKHQuX29yZGVyLmxlbmd0aCsyKSp0aGlzLm51bVN1YmxheWVycyp0aGlzLmRlcHRoRXBzaWxvbl0sIXRoaXMucmVuZGVyVG9UZXh0dXJlKWZvcih0aGlzLnJlbmRlclBhc3M9XCJvcGFxdWVcIix0aGlzLmN1cnJlbnRMYXllcj1hLmxlbmd0aC0xO3RoaXMuY3VycmVudExheWVyPj0wO3RoaXMuY3VycmVudExheWVyLS0pe2NvbnN0IHQ9dGhpcy5zdHlsZS5fbGF5ZXJzW2FbdGhpcy5jdXJyZW50TGF5ZXJdXSxlPXNbdC5zb3VyY2VdLGk9clt0LnNvdXJjZV07dGhpcy5fcmVuZGVyVGlsZUNsaXBwaW5nTWFza3ModCxpKSx0aGlzLnJlbmRlckxheWVyKHRoaXMsZSx0LGkpO31mb3IodGhpcy5yZW5kZXJQYXNzPVwidHJhbnNsdWNlbnRcIix0aGlzLmN1cnJlbnRMYXllcj0wO3RoaXMuY3VycmVudExheWVyPGEubGVuZ3RoO3RoaXMuY3VycmVudExheWVyKyspe2NvbnN0IHQ9dGhpcy5zdHlsZS5fbGF5ZXJzW2FbdGhpcy5jdXJyZW50TGF5ZXJdXSxlPXNbdC5zb3VyY2VdO2lmKHRoaXMucmVuZGVyVG9UZXh0dXJlJiZ0aGlzLnJlbmRlclRvVGV4dHVyZS5yZW5kZXJMYXllcih0KSljb250aW51ZTtjb25zdCBpPShcInN5bWJvbFwiPT09dC50eXBlP2w6bilbdC5zb3VyY2VdO3RoaXMuX3JlbmRlclRpbGVDbGlwcGluZ01hc2tzKHQsclt0LnNvdXJjZV0pLHRoaXMucmVuZGVyTGF5ZXIodGhpcyxlLHQsaSk7fWlmKHRoaXMub3B0aW9ucy5zaG93VGlsZUJvdW5kYXJpZXMpe2NvbnN0IHQ9ZnVuY3Rpb24odCxlKXtsZXQgaT1udWxsO2NvbnN0IGE9T2JqZWN0LnZhbHVlcyh0Ll9sYXllcnMpLmZsYXRNYXAoKGk9Pmkuc291cmNlJiYhaS5pc0hpZGRlbihlKT9bdC5zb3VyY2VDYWNoZXNbaS5zb3VyY2VdXTpbXSkpLHM9YS5maWx0ZXIoKHQ9PlwidmVjdG9yXCI9PT10LmdldFNvdXJjZSgpLnR5cGUpKSxvPWEuZmlsdGVyKCh0PT5cInZlY3RvclwiIT09dC5nZXRTb3VyY2UoKS50eXBlKSkscj10PT57KCFpfHxpLmdldFNvdXJjZSgpLm1heHpvb208dC5nZXRTb3VyY2UoKS5tYXh6b29tKSYmKGk9dCk7fTtyZXR1cm4gcy5mb3JFYWNoKCh0PT5yKHQpKSksaXx8by5mb3JFYWNoKCh0PT5yKHQpKSksaX0odGhpcy5zdHlsZSx0aGlzLnRyYW5zZm9ybS56b29tKTt0JiZmdW5jdGlvbih0LGUsaSl7Zm9yKGxldCBhPTA7YTxpLmxlbmd0aDthKyspbWEodCxlLGlbYV0pO30odGhpcyx0LHQuZ2V0VmlzaWJsZUNvb3JkaW5hdGVzKCkpO310aGlzLm9wdGlvbnMuc2hvd1BhZGRpbmcmJmZ1bmN0aW9uKHQpe2NvbnN0IGU9dC50cmFuc2Zvcm0ucGFkZGluZztkYSh0LHQudHJhbnNmb3JtLmhlaWdodC0oZS50b3B8fDApLDMsbmEpLGRhKHQsZS5ib3R0b218fDAsMyxsYSksX2EodCxlLmxlZnR8fDAsMyxoYSksX2EodCx0LnRyYW5zZm9ybS53aWR0aC0oZS5yaWdodHx8MCksMyxjYSk7Y29uc3QgaT10LnRyYW5zZm9ybS5jZW50ZXJQb2ludDshZnVuY3Rpb24odCxlLGksYSl7cGEodCxlLTEsaS0xMCwyLDIwLGEpLHBhKHQsZS0xMCxpLTEsMjAsMixhKTt9KHQsaS54LHQudHJhbnNmb3JtLmhlaWdodC1pLnksdWEpO30odGhpcyksdGhpcy5jb250ZXh0LnNldERlZmF1bHQoKTt9bWF5YmVEcmF3RGVwdGhBbmRDb29yZHModCl7aWYoIXRoaXMuc3R5bGV8fCF0aGlzLnN0eWxlLm1hcHx8IXRoaXMuc3R5bGUubWFwLnRlcnJhaW4pcmV0dXJuO2NvbnN0IGk9dGhpcy50ZXJyYWluRmFjaWxpdGF0b3IubWF0cml4LGE9dGhpcy50cmFuc2Zvcm0ubW9kZWxWaWV3UHJvamVjdGlvbk1hdHJpeDtsZXQgcz10aGlzLnRlcnJhaW5GYWNpbGl0YXRvci5kaXJ0eTtzfHwocz10PyFlLmFfKGksYSk6IWUuYSQoaSxhKSksc3x8KHM9dGhpcy5zdHlsZS5tYXAudGVycmFpbi5zb3VyY2VDYWNoZS50aWxlc0FmdGVyVGltZSh0aGlzLnRlcnJhaW5GYWNpbGl0YXRvci5yZW5kZXJUaW1lKS5sZW5ndGg+MCkscyYmKGUuYjAoaSxhKSx0aGlzLnRlcnJhaW5GYWNpbGl0YXRvci5yZW5kZXJUaW1lPURhdGUubm93KCksdGhpcy50ZXJyYWluRmFjaWxpdGF0b3IuZGlydHk9ITEsZnVuY3Rpb24odCxpKXtjb25zdCBhPXQuY29udGV4dCxzPWEuZ2wsbz1GaS51bmJsZW5kZWQscj1uZXcgT2kocy5MRVFVQUwsT2kuUmVhZFdyaXRlLFswLDFdKSxuPWkuZ2V0VGVycmFpbk1lc2goKSxsPWkuc291cmNlQ2FjaGUuZ2V0UmVuZGVyYWJsZVRpbGVzKCksaD10LnVzZVByb2dyYW0oXCJ0ZXJyYWluRGVwdGhcIik7YS5iaW5kRnJhbWVidWZmZXIuc2V0KGkuZ2V0RnJhbWVidWZmZXIoXCJkZXB0aFwiKS5mcmFtZWJ1ZmZlciksYS52aWV3cG9ydC5zZXQoWzAsMCx0LndpZHRoL2RldmljZVBpeGVsUmF0aW8sdC5oZWlnaHQvZGV2aWNlUGl4ZWxSYXRpb10pLGEuY2xlYXIoe2NvbG9yOmUuYU0udHJhbnNwYXJlbnQsZGVwdGg6MX0pO2Zvcihjb25zdCBlIG9mIGwpe2NvbnN0IGw9aS5nZXRUZXJyYWluRGF0YShlLnRpbGVJRCksYz17dV9tYXRyaXg6dC50cmFuc2Zvcm0uY2FsY3VsYXRlUG9zTWF0cml4KGUudGlsZUlELnRvVW53cmFwcGVkKCkpLHVfZWxlX2RlbHRhOmkuZ2V0TWVzaEZyYW1lRGVsdGEodC50cmFuc2Zvcm0uem9vbSl9O2guZHJhdyhhLHMuVFJJQU5HTEVTLHIsVWkuZGlzYWJsZWQsbyxqaS5iYWNrQ0NXLGMsbCxcInRlcnJhaW5cIixuLnZlcnRleEJ1ZmZlcixuLmluZGV4QnVmZmVyLG4uc2VnbWVudHMpO31hLmJpbmRGcmFtZWJ1ZmZlci5zZXQobnVsbCksYS52aWV3cG9ydC5zZXQoWzAsMCx0LndpZHRoLHQuaGVpZ2h0XSk7fSh0aGlzLHRoaXMuc3R5bGUubWFwLnRlcnJhaW4pLGZ1bmN0aW9uKHQsaSl7Y29uc3QgYT10LmNvbnRleHQscz1hLmdsLG89RmkudW5ibGVuZGVkLHI9bmV3IE9pKHMuTEVRVUFMLE9pLlJlYWRXcml0ZSxbMCwxXSksbj1pLmdldFRlcnJhaW5NZXNoKCksbD1pLmdldENvb3Jkc1RleHR1cmUoKSxoPWkuc291cmNlQ2FjaGUuZ2V0UmVuZGVyYWJsZVRpbGVzKCksYz10LnVzZVByb2dyYW0oXCJ0ZXJyYWluQ29vcmRzXCIpO2EuYmluZEZyYW1lYnVmZmVyLnNldChpLmdldEZyYW1lYnVmZmVyKFwiY29vcmRzXCIpLmZyYW1lYnVmZmVyKSxhLnZpZXdwb3J0LnNldChbMCwwLHQud2lkdGgvZGV2aWNlUGl4ZWxSYXRpbyx0LmhlaWdodC9kZXZpY2VQaXhlbFJhdGlvXSksYS5jbGVhcih7Y29sb3I6ZS5hTS50cmFuc3BhcmVudCxkZXB0aDoxfSksaS5jb29yZHNJbmRleD1bXTtmb3IoY29uc3QgZSBvZiBoKXtjb25zdCBoPWkuZ2V0VGVycmFpbkRhdGEoZS50aWxlSUQpO2EuYWN0aXZlVGV4dHVyZS5zZXQocy5URVhUVVJFMCkscy5iaW5kVGV4dHVyZShzLlRFWFRVUkVfMkQsbC50ZXh0dXJlKTtjb25zdCB1PXt1X21hdHJpeDp0LnRyYW5zZm9ybS5jYWxjdWxhdGVQb3NNYXRyaXgoZS50aWxlSUQudG9VbndyYXBwZWQoKSksdV90ZXJyYWluX2Nvb3Jkc19pZDooMjU1LWkuY29vcmRzSW5kZXgubGVuZ3RoKS8yNTUsdV90ZXh0dXJlOjAsdV9lbGVfZGVsdGE6aS5nZXRNZXNoRnJhbWVEZWx0YSh0LnRyYW5zZm9ybS56b29tKX07Yy5kcmF3KGEscy5UUklBTkdMRVMscixVaS5kaXNhYmxlZCxvLGppLmJhY2tDQ1csdSxoLFwidGVycmFpblwiLG4udmVydGV4QnVmZmVyLG4uaW5kZXhCdWZmZXIsbi5zZWdtZW50cyksaS5jb29yZHNJbmRleC5wdXNoKGUudGlsZUlELmtleSk7fWEuYmluZEZyYW1lYnVmZmVyLnNldChudWxsKSxhLnZpZXdwb3J0LnNldChbMCwwLHQud2lkdGgsdC5oZWlnaHRdKTt9KHRoaXMsdGhpcy5zdHlsZS5tYXAudGVycmFpbikpO31yZW5kZXJMYXllcih0LGksYSxzKXtpZighYS5pc0hpZGRlbih0aGlzLnRyYW5zZm9ybS56b29tKSYmKFwiYmFja2dyb3VuZFwiPT09YS50eXBlfHxcImN1c3RvbVwiPT09YS50eXBlfHwoc3x8W10pLmxlbmd0aCkpc3dpdGNoKHRoaXMuaWQ9YS5pZCxhLnR5cGUpe2Nhc2VcInN5bWJvbFwiOiFmdW5jdGlvbih0LGksYSxzLG8pe2lmKFwidHJhbnNsdWNlbnRcIiE9PXQucmVuZGVyUGFzcylyZXR1cm47Y29uc3Qgcj1VaS5kaXNhYmxlZCxuPXQuY29sb3JNb2RlRm9yUmVuZGVyUGFzcygpOyhhLl91bmV2YWx1YXRlZExheW91dC5oYXNWYWx1ZShcInRleHQtdmFyaWFibGUtYW5jaG9yXCIpfHxhLl91bmV2YWx1YXRlZExheW91dC5oYXNWYWx1ZShcInRleHQtdmFyaWFibGUtYW5jaG9yLW9mZnNldFwiKSkmJmZ1bmN0aW9uKHQsaSxhLHMsbyxyLG4sbCxoKXtjb25zdCBjPWkudHJhbnNmb3JtLHU9aWUoKSxkPVwibWFwXCI9PT1vLF89XCJtYXBcIj09PXI7Zm9yKGNvbnN0IG8gb2YgdCl7Y29uc3QgdD1zLmdldFRpbGUobykscj10LmdldEJ1Y2tldChhKTtpZighcnx8IXIudGV4dHx8IXIudGV4dC5zZWdtZW50cy5nZXQoKS5sZW5ndGgpY29udGludWU7Y29uc3QgcD1lLmFnKHIudGV4dFNpemVEYXRhLGMuem9vbSksbT1CdCh0LDEsaS50cmFuc2Zvcm0uem9vbSksZj1ndChvLnBvc01hdHJpeCxfLGQsaS50cmFuc2Zvcm0sbSksZz1cIm5vbmVcIiE9PWEubGF5b3V0LmdldChcImljb24tdGV4dC1maXRcIikmJnIuaGFzSWNvbkRhdGEoKTtpZihwKXtjb25zdCBlPU1hdGgucG93KDIsYy56b29tLXQudGlsZUlELm92ZXJzY2FsZWRaKSxhPWkuc3R5bGUubWFwLnRlcnJhaW4/KHQsZSk9Pmkuc3R5bGUubWFwLnRlcnJhaW4uZ2V0RWxldmF0aW9uKG8sdCxlKTpudWxsLHM9dS50cmFuc2xhdGVQb3NpdGlvbihjLHQsbixsKTtXaShyLGQsXyxoLGMsZixvLnBvc01hdHJpeCxlLHAsZyx1LHMsby50b1Vud3JhcHBlZCgpLGEpO319fShzLHQsYSxpLGEubGF5b3V0LmdldChcInRleHQtcm90YXRpb24tYWxpZ25tZW50XCIpLGEubGF5b3V0LmdldChcInRleHQtcGl0Y2gtYWxpZ25tZW50XCIpLGEucGFpbnQuZ2V0KFwidGV4dC10cmFuc2xhdGVcIiksYS5wYWludC5nZXQoXCJ0ZXh0LXRyYW5zbGF0ZS1hbmNob3JcIiksbyksMCE9PWEucGFpbnQuZ2V0KFwiaWNvbi1vcGFjaXR5XCIpLmNvbnN0YW50T3IoMSkmJlhpKHQsaSxhLHMsITEsYS5wYWludC5nZXQoXCJpY29uLXRyYW5zbGF0ZVwiKSxhLnBhaW50LmdldChcImljb24tdHJhbnNsYXRlLWFuY2hvclwiKSxhLmxheW91dC5nZXQoXCJpY29uLXJvdGF0aW9uLWFsaWdubWVudFwiKSxhLmxheW91dC5nZXQoXCJpY29uLXBpdGNoLWFsaWdubWVudFwiKSxhLmxheW91dC5nZXQoXCJpY29uLWtlZXAtdXByaWdodFwiKSxyLG4pLDAhPT1hLnBhaW50LmdldChcInRleHQtb3BhY2l0eVwiKS5jb25zdGFudE9yKDEpJiZYaSh0LGksYSxzLCEwLGEucGFpbnQuZ2V0KFwidGV4dC10cmFuc2xhdGVcIiksYS5wYWludC5nZXQoXCJ0ZXh0LXRyYW5zbGF0ZS1hbmNob3JcIiksYS5sYXlvdXQuZ2V0KFwidGV4dC1yb3RhdGlvbi1hbGlnbm1lbnRcIiksYS5sYXlvdXQuZ2V0KFwidGV4dC1waXRjaC1hbGlnbm1lbnRcIiksYS5sYXlvdXQuZ2V0KFwidGV4dC1rZWVwLXVwcmlnaHRcIikscixuKSxpLm1hcC5zaG93Q29sbGlzaW9uQm94ZXMmJihxaSh0LGksYSxzLCEwKSxxaSh0LGksYSxzLCExKSk7fSh0LGksYSxzLHRoaXMuc3R5bGUucGxhY2VtZW50LnZhcmlhYmxlT2Zmc2V0cyk7YnJlYWs7Y2FzZVwiY2lyY2xlXCI6IWZ1bmN0aW9uKHQsaSxhLHMpe2lmKFwidHJhbnNsdWNlbnRcIiE9PXQucmVuZGVyUGFzcylyZXR1cm47Y29uc3Qgbz1hLnBhaW50LmdldChcImNpcmNsZS1vcGFjaXR5XCIpLHI9YS5wYWludC5nZXQoXCJjaXJjbGUtc3Ryb2tlLXdpZHRoXCIpLG49YS5wYWludC5nZXQoXCJjaXJjbGUtc3Ryb2tlLW9wYWNpdHlcIiksbD0hYS5sYXlvdXQuZ2V0KFwiY2lyY2xlLXNvcnQta2V5XCIpLmlzQ29uc3RhbnQoKTtpZigwPT09by5jb25zdGFudE9yKDEpJiYoMD09PXIuY29uc3RhbnRPcigxKXx8MD09PW4uY29uc3RhbnRPcigxKSkpcmV0dXJuO2NvbnN0IGg9dC5jb250ZXh0LGM9aC5nbCx1PXQuZGVwdGhNb2RlRm9yU3VibGF5ZXIoMCxPaS5SZWFkT25seSksZD1VaS5kaXNhYmxlZCxfPXQuY29sb3JNb2RlRm9yUmVuZGVyUGFzcygpLHA9W107Zm9yKGxldCBvPTA7bzxzLmxlbmd0aDtvKyspe2NvbnN0IHI9c1tvXSxuPWkuZ2V0VGlsZShyKSxoPW4uZ2V0QnVja2V0KGEpO2lmKCFoKWNvbnRpbnVlO2NvbnN0IGM9aC5wcm9ncmFtQ29uZmlndXJhdGlvbnMuZ2V0KGEuaWQpLHU9dC51c2VQcm9ncmFtKFwiY2lyY2xlXCIsYyksZD1oLmxheW91dFZlcnRleEJ1ZmZlcixfPWguaW5kZXhCdWZmZXIsbT10LnN0eWxlLm1hcC50ZXJyYWluJiZ0LnN0eWxlLm1hcC50ZXJyYWluLmdldFRlcnJhaW5EYXRhKHIpLGY9e3Byb2dyYW1Db25maWd1cmF0aW9uOmMscHJvZ3JhbTp1LGxheW91dFZlcnRleEJ1ZmZlcjpkLGluZGV4QnVmZmVyOl8sdW5pZm9ybVZhbHVlczpDZSh0LHIsbixhKSx0ZXJyYWluRGF0YTptfTtpZihsKXtjb25zdCB0PWguc2VnbWVudHMuZ2V0KCk7Zm9yKGNvbnN0IGkgb2YgdClwLnB1c2goe3NlZ21lbnRzOm5ldyBlLmEwKFtpXSksc29ydEtleTppLnNvcnRLZXksc3RhdGU6Zn0pO31lbHNlIHAucHVzaCh7c2VnbWVudHM6aC5zZWdtZW50cyxzb3J0S2V5OjAsc3RhdGU6Zn0pO31sJiZwLnNvcnQoKCh0LGUpPT50LnNvcnRLZXktZS5zb3J0S2V5KSk7Zm9yKGNvbnN0IGUgb2YgcCl7Y29uc3R7cHJvZ3JhbUNvbmZpZ3VyYXRpb246aSxwcm9ncmFtOnMsbGF5b3V0VmVydGV4QnVmZmVyOm8saW5kZXhCdWZmZXI6cix1bmlmb3JtVmFsdWVzOm4sdGVycmFpbkRhdGE6bH09ZS5zdGF0ZTtzLmRyYXcoaCxjLlRSSUFOR0xFUyx1LGQsXyxqaS5kaXNhYmxlZCxuLGwsYS5pZCxvLHIsZS5zZWdtZW50cyxhLnBhaW50LHQudHJhbnNmb3JtLnpvb20saSk7fX0odCxpLGEscyk7YnJlYWs7Y2FzZVwiaGVhdG1hcFwiOiFmdW5jdGlvbih0LGksYSxzKXtpZigwPT09YS5wYWludC5nZXQoXCJoZWF0bWFwLW9wYWNpdHlcIikpcmV0dXJuO2NvbnN0IG89dC5jb250ZXh0O2lmKHQuc3R5bGUubWFwLnRlcnJhaW4pe2Zvcihjb25zdCBlIG9mIHMpe2NvbnN0IHM9aS5nZXRUaWxlKGUpO2kuaGFzUmVuZGVyYWJsZVBhcmVudChlKXx8KFwib2Zmc2NyZWVuXCI9PT10LnJlbmRlclBhc3M/SmkodCxzLGEsZSk6XCJ0cmFuc2x1Y2VudFwiPT09dC5yZW5kZXJQYXNzJiZZaSh0LGEsZSkpO31vLnZpZXdwb3J0LnNldChbMCwwLHQud2lkdGgsdC5oZWlnaHRdKTt9ZWxzZSBcIm9mZnNjcmVlblwiPT09dC5yZW5kZXJQYXNzP2Z1bmN0aW9uKHQsaSxhLHMpe2NvbnN0IG89dC5jb250ZXh0LHI9by5nbCxuPVVpLmRpc2FibGVkLGw9bmV3IEZpKFtyLk9ORSxyLk9ORV0sZS5hTS50cmFuc3BhcmVudCxbITAsITAsITAsITBdKTsoKGZ1bmN0aW9uKHQsaSxhKXtjb25zdCBzPXQuZ2w7dC5hY3RpdmVUZXh0dXJlLnNldChzLlRFWFRVUkUxKSx0LnZpZXdwb3J0LnNldChbMCwwLGkud2lkdGgvNCxpLmhlaWdodC80XSk7bGV0IG89YS5oZWF0bWFwRmJvcy5nZXQoZS5hVSk7bz8ocy5iaW5kVGV4dHVyZShzLlRFWFRVUkVfMkQsby5jb2xvckF0dGFjaG1lbnQuZ2V0KCkpLHQuYmluZEZyYW1lYnVmZmVyLnNldChvLmZyYW1lYnVmZmVyKSk6KG89UWkodCxpLndpZHRoLzQsaS5oZWlnaHQvNCksYS5oZWF0bWFwRmJvcy5zZXQoZS5hVSxvKSk7fSkpKG8sdCxhKSxvLmNsZWFyKHtjb2xvcjplLmFNLnRyYW5zcGFyZW50fSk7Zm9yKGxldCBlPTA7ZTxzLmxlbmd0aDtlKyspe2NvbnN0IGg9c1tlXTtpZihpLmhhc1JlbmRlcmFibGVQYXJlbnQoaCkpY29udGludWU7Y29uc3QgYz1pLmdldFRpbGUoaCksdT1jLmdldEJ1Y2tldChhKTtpZighdSljb250aW51ZTtjb25zdCBkPXUucHJvZ3JhbUNvbmZpZ3VyYXRpb25zLmdldChhLmlkKSxfPXQudXNlUHJvZ3JhbShcImhlYXRtYXBcIixkKSx7em9vbTpwfT10LnRyYW5zZm9ybTtfLmRyYXcobyxyLlRSSUFOR0xFUyxPaS5kaXNhYmxlZCxuLGwsamkuZGlzYWJsZWQsTWUoaC5wb3NNYXRyaXgsYyxwLGEucGFpbnQuZ2V0KFwiaGVhdG1hcC1pbnRlbnNpdHlcIikpLG51bGwsYS5pZCx1LmxheW91dFZlcnRleEJ1ZmZlcix1LmluZGV4QnVmZmVyLHUuc2VnbWVudHMsYS5wYWludCx0LnRyYW5zZm9ybS56b29tLGQpO31vLnZpZXdwb3J0LnNldChbMCwwLHQud2lkdGgsdC5oZWlnaHRdKTt9KHQsaSxhLHMpOlwidHJhbnNsdWNlbnRcIj09PXQucmVuZGVyUGFzcyYmZnVuY3Rpb24odCxpKXtjb25zdCBhPXQuY29udGV4dCxzPWEuZ2w7YS5zZXRDb2xvck1vZGUodC5jb2xvck1vZGVGb3JSZW5kZXJQYXNzKCkpO2NvbnN0IG89aS5oZWF0bWFwRmJvcy5nZXQoZS5hVSk7byYmKGEuYWN0aXZlVGV4dHVyZS5zZXQocy5URVhUVVJFMCkscy5iaW5kVGV4dHVyZShzLlRFWFRVUkVfMkQsby5jb2xvckF0dGFjaG1lbnQuZ2V0KCkpLGEuYWN0aXZlVGV4dHVyZS5zZXQocy5URVhUVVJFMSksdGEoYSxpKS5iaW5kKHMuTElORUFSLHMuQ0xBTVBfVE9fRURHRSksdC51c2VQcm9ncmFtKFwiaGVhdG1hcFRleHR1cmVcIikuZHJhdyhhLHMuVFJJQU5HTEVTLE9pLmRpc2FibGVkLFVpLmRpc2FibGVkLHQuY29sb3JNb2RlRm9yUmVuZGVyUGFzcygpLGppLmRpc2FibGVkLEFlKHQsaSwwLDEpLG51bGwsaS5pZCx0LnZpZXdwb3J0QnVmZmVyLHQucXVhZFRyaWFuZ2xlSW5kZXhCdWZmZXIsdC52aWV3cG9ydFNlZ21lbnRzLGkucGFpbnQsdC50cmFuc2Zvcm0uem9vbSkpO30odCxhKTt9KHQsaSxhLHMpO2JyZWFrO2Nhc2VcImxpbmVcIjohZnVuY3Rpb24odCxpLGEscyl7aWYoXCJ0cmFuc2x1Y2VudFwiIT09dC5yZW5kZXJQYXNzKXJldHVybjtjb25zdCBvPWEucGFpbnQuZ2V0KFwibGluZS1vcGFjaXR5XCIpLHI9YS5wYWludC5nZXQoXCJsaW5lLXdpZHRoXCIpO2lmKDA9PT1vLmNvbnN0YW50T3IoMSl8fDA9PT1yLmNvbnN0YW50T3IoMSkpcmV0dXJuO2NvbnN0IG49dC5kZXB0aE1vZGVGb3JTdWJsYXllcigwLE9pLlJlYWRPbmx5KSxsPXQuY29sb3JNb2RlRm9yUmVuZGVyUGFzcygpLGg9YS5wYWludC5nZXQoXCJsaW5lLWRhc2hhcnJheVwiKSxjPWEucGFpbnQuZ2V0KFwibGluZS1wYXR0ZXJuXCIpLHU9Yy5jb25zdGFudE9yKDEpLGQ9YS5wYWludC5nZXQoXCJsaW5lLWdyYWRpZW50XCIpLF89YS5nZXRDcm9zc2ZhZGVQYXJhbWV0ZXJzKCkscD11P1wibGluZVBhdHRlcm5cIjpoP1wibGluZVNERlwiOmQ/XCJsaW5lR3JhZGllbnRcIjpcImxpbmVcIixtPXQuY29udGV4dCxmPW0uZ2w7bGV0IGc9ITA7Zm9yKGNvbnN0IG8gb2Ygcyl7Y29uc3Qgcz1pLmdldFRpbGUobyk7aWYodSYmIXMucGF0dGVybnNMb2FkZWQoKSljb250aW51ZTtjb25zdCByPXMuZ2V0QnVja2V0KGEpO2lmKCFyKWNvbnRpbnVlO2NvbnN0IHY9ci5wcm9ncmFtQ29uZmlndXJhdGlvbnMuZ2V0KGEuaWQpLHg9dC5jb250ZXh0LnByb2dyYW0uZ2V0KCkseT10LnVzZVByb2dyYW0ocCx2KSx3PWd8fHkucHJvZ3JhbSE9PXgsVD10LnN0eWxlLm1hcC50ZXJyYWluJiZ0LnN0eWxlLm1hcC50ZXJyYWluLmdldFRlcnJhaW5EYXRhKG8pLEk9Yy5jb25zdGFudE9yKG51bGwpO2lmKEkmJnMuaW1hZ2VBdGxhcyl7Y29uc3QgdD1zLmltYWdlQXRsYXMsZT10LnBhdHRlcm5Qb3NpdGlvbnNbSS50by50b1N0cmluZygpXSxpPXQucGF0dGVyblBvc2l0aW9uc1tJLmZyb20udG9TdHJpbmcoKV07ZSYmaSYmdi5zZXRDb25zdGFudFBhdHRlcm5Qb3NpdGlvbnMoZSxpKTt9Y29uc3QgRT1UP286bnVsbCxQPXU/RmUodCxzLGEsXyxFKTpoP0JlKHQscyxhLGgsXyxFKTpkP0xlKHQscyxhLHIubGluZUNsaXBzQXJyYXkubGVuZ3RoLEUpOmtlKHQscyxhLEUpO2lmKHUpbS5hY3RpdmVUZXh0dXJlLnNldChmLlRFWFRVUkUwKSxzLmltYWdlQXRsYXNUZXh0dXJlLmJpbmQoZi5MSU5FQVIsZi5DTEFNUF9UT19FREdFKSx2LnVwZGF0ZVBhaW50QnVmZmVycyhfKTtlbHNlIGlmKGgmJih3fHx0LmxpbmVBdGxhcy5kaXJ0eSkpbS5hY3RpdmVUZXh0dXJlLnNldChmLlRFWFRVUkUwKSx0LmxpbmVBdGxhcy5iaW5kKG0pO2Vsc2UgaWYoZCl7Y29uc3Qgcz1yLmdyYWRpZW50c1thLmlkXTtsZXQgbj1zLnRleHR1cmU7aWYoYS5ncmFkaWVudFZlcnNpb24hPT1zLnZlcnNpb24pe2xldCBsPTI1NjtpZihhLnN0ZXBJbnRlcnBvbGFudCl7Y29uc3QgYT1pLmdldFNvdXJjZSgpLm1heHpvb20scz1vLmNhbm9uaWNhbC56PT09YT9NYXRoLmNlaWwoMTw8dC50cmFuc2Zvcm0ubWF4Wm9vbS1vLmNhbm9uaWNhbC56KToxO2w9ZS5hYyhlLmFWKHIubWF4TGluZUxlbmd0aC9lLlgqMTAyNCpzKSwyNTYsbS5tYXhUZXh0dXJlU2l6ZSk7fXMuZ3JhZGllbnQ9ZS5hVyh7ZXhwcmVzc2lvbjphLmdyYWRpZW50RXhwcmVzc2lvbigpLGV2YWx1YXRpb25LZXk6XCJsaW5lUHJvZ3Jlc3NcIixyZXNvbHV0aW9uOmwsaW1hZ2U6cy5ncmFkaWVudHx8dm9pZCAwLGNsaXBzOnIubGluZUNsaXBzQXJyYXl9KSxzLnRleHR1cmU/cy50ZXh0dXJlLnVwZGF0ZShzLmdyYWRpZW50KTpzLnRleHR1cmU9bmV3IGIobSxzLmdyYWRpZW50LGYuUkdCQSkscy52ZXJzaW9uPWEuZ3JhZGllbnRWZXJzaW9uLG49cy50ZXh0dXJlO31tLmFjdGl2ZVRleHR1cmUuc2V0KGYuVEVYVFVSRTApLG4uYmluZChhLnN0ZXBJbnRlcnBvbGFudD9mLk5FQVJFU1Q6Zi5MSU5FQVIsZi5DTEFNUF9UT19FREdFKTt9eS5kcmF3KG0sZi5UUklBTkdMRVMsbix0LnN0ZW5jaWxNb2RlRm9yQ2xpcHBpbmcobyksbCxqaS5kaXNhYmxlZCxQLFQsYS5pZCxyLmxheW91dFZlcnRleEJ1ZmZlcixyLmluZGV4QnVmZmVyLHIuc2VnbWVudHMsYS5wYWludCx0LnRyYW5zZm9ybS56b29tLHYsci5sYXlvdXRWZXJ0ZXhCdWZmZXIyKSxnPSExO319KHQsaSxhLHMpO2JyZWFrO2Nhc2VcImZpbGxcIjohZnVuY3Rpb24odCxpLGEscyl7Y29uc3Qgbz1hLnBhaW50LmdldChcImZpbGwtY29sb3JcIikscj1hLnBhaW50LmdldChcImZpbGwtb3BhY2l0eVwiKTtpZigwPT09ci5jb25zdGFudE9yKDEpKXJldHVybjtjb25zdCBuPXQuY29sb3JNb2RlRm9yUmVuZGVyUGFzcygpLGw9YS5wYWludC5nZXQoXCJmaWxsLXBhdHRlcm5cIiksaD10Lm9wYXF1ZVBhc3NFbmFibGVkRm9yTGF5ZXIoKSYmIWwuY29uc3RhbnRPcigxKSYmMT09PW8uY29uc3RhbnRPcihlLmFNLnRyYW5zcGFyZW50KS5hJiYxPT09ci5jb25zdGFudE9yKDApP1wib3BhcXVlXCI6XCJ0cmFuc2x1Y2VudFwiO2lmKHQucmVuZGVyUGFzcz09PWgpe2NvbnN0IGU9dC5kZXB0aE1vZGVGb3JTdWJsYXllcigxLFwib3BhcXVlXCI9PT10LnJlbmRlclBhc3M/T2kuUmVhZFdyaXRlOk9pLlJlYWRPbmx5KTtpYSh0LGksYSxzLGUsbiwhMSk7fWlmKFwidHJhbnNsdWNlbnRcIj09PXQucmVuZGVyUGFzcyYmYS5wYWludC5nZXQoXCJmaWxsLWFudGlhbGlhc1wiKSl7Y29uc3QgZT10LmRlcHRoTW9kZUZvclN1YmxheWVyKGEuZ2V0UGFpbnRQcm9wZXJ0eShcImZpbGwtb3V0bGluZS1jb2xvclwiKT8yOjAsT2kuUmVhZE9ubHkpO2lhKHQsaSxhLHMsZSxuLCEwKTt9fSh0LGksYSxzKTticmVhaztjYXNlXCJmaWxsLWV4dHJ1c2lvblwiOiFmdW5jdGlvbih0LGUsaSxhKXtjb25zdCBzPWkucGFpbnQuZ2V0KFwiZmlsbC1leHRydXNpb24tb3BhY2l0eVwiKTtpZigwIT09cyYmXCJ0cmFuc2x1Y2VudFwiPT09dC5yZW5kZXJQYXNzKXtjb25zdCBvPW5ldyBPaSh0LmNvbnRleHQuZ2wuTEVRVUFMLE9pLlJlYWRXcml0ZSx0LmRlcHRoUmFuZ2VGb3IzRCk7aWYoMSE9PXN8fGkucGFpbnQuZ2V0KFwiZmlsbC1leHRydXNpb24tcGF0dGVyblwiKS5jb25zdGFudE9yKDEpKWFhKHQsZSxpLGEsbyxVaS5kaXNhYmxlZCxGaS5kaXNhYmxlZCksYWEodCxlLGksYSxvLHQuc3RlbmNpbE1vZGVGb3IzRCgpLHQuY29sb3JNb2RlRm9yUmVuZGVyUGFzcygpKTtlbHNlIHtjb25zdCBzPXQuY29sb3JNb2RlRm9yUmVuZGVyUGFzcygpO2FhKHQsZSxpLGEsbyxVaS5kaXNhYmxlZCxzKTt9fX0odCxpLGEscyk7YnJlYWs7Y2FzZVwiaGlsbHNoYWRlXCI6IWZ1bmN0aW9uKHQsZSxpLGEpe2lmKFwib2Zmc2NyZWVuXCIhPT10LnJlbmRlclBhc3MmJlwidHJhbnNsdWNlbnRcIiE9PXQucmVuZGVyUGFzcylyZXR1cm47Y29uc3Qgcz10LmNvbnRleHQsbz10LmRlcHRoTW9kZUZvclN1YmxheWVyKDAsT2kuUmVhZE9ubHkpLHI9dC5jb2xvck1vZGVGb3JSZW5kZXJQYXNzKCksW24sbF09XCJ0cmFuc2x1Y2VudFwiPT09dC5yZW5kZXJQYXNzP3Quc3RlbmNpbENvbmZpZ0Zvck92ZXJsYXAoYSk6W3t9LGFdO2Zvcihjb25zdCBhIG9mIGwpe2NvbnN0IHM9ZS5nZXRUaWxlKGEpO3ZvaWQgMCE9PXMubmVlZHNIaWxsc2hhZGVQcmVwYXJlJiZzLm5lZWRzSGlsbHNoYWRlUHJlcGFyZSYmXCJvZmZzY3JlZW5cIj09PXQucmVuZGVyUGFzcz9vYSh0LHMsaSxvLFVpLmRpc2FibGVkLHIpOlwidHJhbnNsdWNlbnRcIj09PXQucmVuZGVyUGFzcyYmc2EodCxhLHMsaSxvLG5bYS5vdmVyc2NhbGVkWl0scik7fXMudmlld3BvcnQuc2V0KFswLDAsdC53aWR0aCx0LmhlaWdodF0pO30odCxpLGEscyk7YnJlYWs7Y2FzZVwicmFzdGVyXCI6IWZ1bmN0aW9uKHQsZSxpLGEpe2lmKFwidHJhbnNsdWNlbnRcIiE9PXQucmVuZGVyUGFzcylyZXR1cm47aWYoMD09PWkucGFpbnQuZ2V0KFwicmFzdGVyLW9wYWNpdHlcIikpcmV0dXJuO2lmKCFhLmxlbmd0aClyZXR1cm47Y29uc3Qgcz10LmNvbnRleHQsbz1zLmdsLHI9ZS5nZXRTb3VyY2UoKSxuPXQudXNlUHJvZ3JhbShcInJhc3RlclwiKSxsPXQuY29sb3JNb2RlRm9yUmVuZGVyUGFzcygpLFtoLGNdPXIgaW5zdGFuY2VvZiBRP1t7fSxhXTp0LnN0ZW5jaWxDb25maWdGb3JPdmVybGFwKGEpLHU9Y1tjLmxlbmd0aC0xXS5vdmVyc2NhbGVkWixkPSF0Lm9wdGlvbnMubW92aW5nO2Zvcihjb25zdCBhIG9mIGMpe2NvbnN0IGM9dC5kZXB0aE1vZGVGb3JTdWJsYXllcihhLm92ZXJzY2FsZWRaLXUsMT09PWkucGFpbnQuZ2V0KFwicmFzdGVyLW9wYWNpdHlcIik/T2kuUmVhZFdyaXRlOk9pLlJlYWRPbmx5LG8uTEVTUyksXz1lLmdldFRpbGUoYSk7Xy5yZWdpc3RlckZhZGVEdXJhdGlvbihpLnBhaW50LmdldChcInJhc3Rlci1mYWRlLWR1cmF0aW9uXCIpKTtjb25zdCBwPWUuZmluZExvYWRlZFBhcmVudChhLDApLG09ZS5maW5kTG9hZGVkU2libGluZyhhKSxmPXJhKF8scHx8bXx8bnVsbCxlLGksdC50cmFuc2Zvcm0sdC5zdHlsZS5tYXAudGVycmFpbik7bGV0IGcsdjtjb25zdCB4PVwibmVhcmVzdFwiPT09aS5wYWludC5nZXQoXCJyYXN0ZXItcmVzYW1wbGluZ1wiKT9vLk5FQVJFU1Q6by5MSU5FQVI7cy5hY3RpdmVUZXh0dXJlLnNldChvLlRFWFRVUkUwKSxfLnRleHR1cmUuYmluZCh4LG8uQ0xBTVBfVE9fRURHRSxvLkxJTkVBUl9NSVBNQVBfTkVBUkVTVCkscy5hY3RpdmVUZXh0dXJlLnNldChvLlRFWFRVUkUxKSxwPyhwLnRleHR1cmUuYmluZCh4LG8uQ0xBTVBfVE9fRURHRSxvLkxJTkVBUl9NSVBNQVBfTkVBUkVTVCksZz1NYXRoLnBvdygyLHAudGlsZUlELm92ZXJzY2FsZWRaLV8udGlsZUlELm92ZXJzY2FsZWRaKSx2PVtfLnRpbGVJRC5jYW5vbmljYWwueCpnJTEsXy50aWxlSUQuY2Fub25pY2FsLnkqZyUxXSk6Xy50ZXh0dXJlLmJpbmQoeCxvLkNMQU1QX1RPX0VER0Usby5MSU5FQVJfTUlQTUFQX05FQVJFU1QpLF8udGV4dHVyZS51c2VNaXBtYXAmJnMuZXh0VGV4dHVyZUZpbHRlckFuaXNvdHJvcGljJiZ0LnRyYW5zZm9ybS5waXRjaD4yMCYmby50ZXhQYXJhbWV0ZXJmKG8uVEVYVFVSRV8yRCxzLmV4dFRleHR1cmVGaWx0ZXJBbmlzb3Ryb3BpYy5URVhUVVJFX01BWF9BTklTT1RST1BZX0VYVCxzLmV4dFRleHR1cmVGaWx0ZXJBbmlzb3Ryb3BpY01heCk7Y29uc3QgeT10LnN0eWxlLm1hcC50ZXJyYWluJiZ0LnN0eWxlLm1hcC50ZXJyYWluLmdldFRlcnJhaW5EYXRhKGEpLGI9eT9hOm51bGwsdz1iP2IucG9zTWF0cml4OnQudHJhbnNmb3JtLmNhbGN1bGF0ZVBvc01hdHJpeChhLnRvVW53cmFwcGVkKCksZCksVD1VZSh3LHZ8fFswLDBdLGd8fDEsZixpKTtyIGluc3RhbmNlb2YgUT9uLmRyYXcocyxvLlRSSUFOR0xFUyxjLFVpLmRpc2FibGVkLGwsamkuZGlzYWJsZWQsVCx5LGkuaWQsci5ib3VuZHNCdWZmZXIsdC5xdWFkVHJpYW5nbGVJbmRleEJ1ZmZlcixyLmJvdW5kc1NlZ21lbnRzKTpuLmRyYXcocyxvLlRSSUFOR0xFUyxjLGhbYS5vdmVyc2NhbGVkWl0sbCxqaS5kaXNhYmxlZCxULHksaS5pZCx0LnJhc3RlckJvdW5kc0J1ZmZlcix0LnF1YWRUcmlhbmdsZUluZGV4QnVmZmVyLHQucmFzdGVyQm91bmRzU2VnbWVudHMpO319KHQsaSxhLHMpO2JyZWFrO2Nhc2VcImJhY2tncm91bmRcIjohZnVuY3Rpb24odCxlLGksYSl7Y29uc3Qgcz1pLnBhaW50LmdldChcImJhY2tncm91bmQtY29sb3JcIiksbz1pLnBhaW50LmdldChcImJhY2tncm91bmQtb3BhY2l0eVwiKTtpZigwPT09bylyZXR1cm47Y29uc3Qgcj10LmNvbnRleHQsbj1yLmdsLGw9dC50cmFuc2Zvcm0saD1sLnRpbGVTaXplLGM9aS5wYWludC5nZXQoXCJiYWNrZ3JvdW5kLXBhdHRlcm5cIik7aWYodC5pc1BhdHRlcm5NaXNzaW5nKGMpKXJldHVybjtjb25zdCB1PSFjJiYxPT09cy5hJiYxPT09byYmdC5vcGFxdWVQYXNzRW5hYmxlZEZvckxheWVyKCk/XCJvcGFxdWVcIjpcInRyYW5zbHVjZW50XCI7aWYodC5yZW5kZXJQYXNzIT09dSlyZXR1cm47Y29uc3QgZD1VaS5kaXNhYmxlZCxfPXQuZGVwdGhNb2RlRm9yU3VibGF5ZXIoMCxcIm9wYXF1ZVwiPT09dT9PaS5SZWFkV3JpdGU6T2kuUmVhZE9ubHkpLHA9dC5jb2xvck1vZGVGb3JSZW5kZXJQYXNzKCksbT10LnVzZVByb2dyYW0oYz9cImJhY2tncm91bmRQYXR0ZXJuXCI6XCJiYWNrZ3JvdW5kXCIpLGY9YXx8bC5jb3ZlcmluZ1RpbGVzKHt0aWxlU2l6ZTpoLHRlcnJhaW46dC5zdHlsZS5tYXAudGVycmFpbn0pO2MmJihyLmFjdGl2ZVRleHR1cmUuc2V0KG4uVEVYVFVSRTApLHQuaW1hZ2VNYW5hZ2VyLmJpbmQodC5jb250ZXh0KSk7Y29uc3QgZz1pLmdldENyb3NzZmFkZVBhcmFtZXRlcnMoKTtmb3IoY29uc3QgZSBvZiBmKXtjb25zdCBsPWE/ZS5wb3NNYXRyaXg6dC50cmFuc2Zvcm0uY2FsY3VsYXRlUG9zTWF0cml4KGUudG9VbndyYXBwZWQoKSksdT1jP0hlKGwsbyx0LGMse3RpbGVJRDplLHRpbGVTaXplOmh9LGcpOkdlKGwsbyxzKSxmPXQuc3R5bGUubWFwLnRlcnJhaW4mJnQuc3R5bGUubWFwLnRlcnJhaW4uZ2V0VGVycmFpbkRhdGEoZSk7bS5kcmF3KHIsbi5UUklBTkdMRVMsXyxkLHAsamkuZGlzYWJsZWQsdSxmLGkuaWQsdC50aWxlRXh0ZW50QnVmZmVyLHQucXVhZFRyaWFuZ2xlSW5kZXhCdWZmZXIsdC50aWxlRXh0ZW50U2VnbWVudHMpO319KHQsMCxhLHMpO2JyZWFrO2Nhc2VcImN1c3RvbVwiOiFmdW5jdGlvbih0LGUsaSl7Y29uc3QgYT10LmNvbnRleHQscz1pLmltcGxlbWVudGF0aW9uO2lmKFwib2Zmc2NyZWVuXCI9PT10LnJlbmRlclBhc3Mpe2NvbnN0IGU9cy5wcmVyZW5kZXI7ZSYmKHQuc2V0Q3VzdG9tTGF5ZXJEZWZhdWx0cygpLGEuc2V0Q29sb3JNb2RlKHQuY29sb3JNb2RlRm9yUmVuZGVyUGFzcygpKSxlLmNhbGwocyxhLmdsLHQudHJhbnNmb3JtLmN1c3RvbUxheWVyTWF0cml4KCkpLGEuc2V0RGlydHkoKSx0LnNldEJhc2VTdGF0ZSgpKTt9ZWxzZSBpZihcInRyYW5zbHVjZW50XCI9PT10LnJlbmRlclBhc3Mpe3Quc2V0Q3VzdG9tTGF5ZXJEZWZhdWx0cygpLGEuc2V0Q29sb3JNb2RlKHQuY29sb3JNb2RlRm9yUmVuZGVyUGFzcygpKSxhLnNldFN0ZW5jaWxNb2RlKFVpLmRpc2FibGVkKTtjb25zdCBlPVwiM2RcIj09PXMucmVuZGVyaW5nTW9kZT9uZXcgT2kodC5jb250ZXh0LmdsLkxFUVVBTCxPaS5SZWFkV3JpdGUsdC5kZXB0aFJhbmdlRm9yM0QpOnQuZGVwdGhNb2RlRm9yU3VibGF5ZXIoMCxPaS5SZWFkT25seSk7YS5zZXREZXB0aE1vZGUoZSkscy5yZW5kZXIoYS5nbCx0LnRyYW5zZm9ybS5jdXN0b21MYXllck1hdHJpeCgpLHtmYXJaOnQudHJhbnNmb3JtLmZhclosbmVhclo6dC50cmFuc2Zvcm0ubmVhclosZm92OnQudHJhbnNmb3JtLl9mb3YsbW9kZWxWaWV3UHJvamVjdGlvbk1hdHJpeDp0LnRyYW5zZm9ybS5tb2RlbFZpZXdQcm9qZWN0aW9uTWF0cml4LHByb2plY3Rpb25NYXRyaXg6dC50cmFuc2Zvcm0ucHJvamVjdGlvbk1hdHJpeH0pLGEuc2V0RGlydHkoKSx0LnNldEJhc2VTdGF0ZSgpLGEuYmluZEZyYW1lYnVmZmVyLnNldChudWxsKTt9fSh0LDAsYSk7fX10cmFuc2xhdGVQb3NNYXRyaXgodCxpLGEscyxvKXtpZighYVswXSYmIWFbMV0pcmV0dXJuIHQ7Y29uc3Qgcj1vP1wibWFwXCI9PT1zP3RoaXMudHJhbnNmb3JtLmFuZ2xlOjA6XCJ2aWV3cG9ydFwiPT09cz8tdGhpcy50cmFuc2Zvcm0uYW5nbGU6MDtpZihyKXtjb25zdCB0PU1hdGguc2luKHIpLGU9TWF0aC5jb3Mocik7YT1bYVswXSplLWFbMV0qdCxhWzBdKnQrYVsxXSplXTt9Y29uc3Qgbj1bbz9hWzBdOkJ0KGksYVswXSx0aGlzLnRyYW5zZm9ybS56b29tKSxvP2FbMV06QnQoaSxhWzFdLHRoaXMudHJhbnNmb3JtLnpvb20pLDBdLGw9bmV3IEZsb2F0MzJBcnJheSgxNik7cmV0dXJuIGUuSihsLHQsbiksbH1zYXZlVGlsZVRleHR1cmUodCl7Y29uc3QgZT10aGlzLl90aWxlVGV4dHVyZXNbdC5zaXplWzBdXTtlP2UucHVzaCh0KTp0aGlzLl90aWxlVGV4dHVyZXNbdC5zaXplWzBdXT1bdF07fWdldFRpbGVUZXh0dXJlKHQpe2NvbnN0IGU9dGhpcy5fdGlsZVRleHR1cmVzW3RdO3JldHVybiBlJiZlLmxlbmd0aD4wP2UucG9wKCk6bnVsbH1pc1BhdHRlcm5NaXNzaW5nKHQpe2lmKCF0KXJldHVybiAhMTtpZighdC5mcm9tfHwhdC50bylyZXR1cm4gITA7Y29uc3QgZT10aGlzLmltYWdlTWFuYWdlci5nZXRQYXR0ZXJuKHQuZnJvbS50b1N0cmluZygpKSxpPXRoaXMuaW1hZ2VNYW5hZ2VyLmdldFBhdHRlcm4odC50by50b1N0cmluZygpKTtyZXR1cm4gIWV8fCFpfXVzZVByb2dyYW0odCxlKXt0aGlzLmNhY2hlPXRoaXMuY2FjaGV8fHt9O2NvbnN0IGk9dCsoZT9lLmNhY2hlS2V5OlwiXCIpKyh0aGlzLl9zaG93T3ZlcmRyYXdJbnNwZWN0b3I/XCIvb3ZlcmRyYXdcIjpcIlwiKSsodGhpcy5zdHlsZS5tYXAudGVycmFpbj9cIi90ZXJyYWluXCI6XCJcIik7cmV0dXJuIHRoaXMuY2FjaGVbaV18fCh0aGlzLmNhY2hlW2ldPW5ldyB4ZSh0aGlzLmNvbnRleHQscGVbdF0sZSxXZVt0XSx0aGlzLl9zaG93T3ZlcmRyYXdJbnNwZWN0b3IsdGhpcy5zdHlsZS5tYXAudGVycmFpbikpLHRoaXMuY2FjaGVbaV19c2V0Q3VzdG9tTGF5ZXJEZWZhdWx0cygpe3RoaXMuY29udGV4dC51bmJpbmRWQU8oKSx0aGlzLmNvbnRleHQuY3VsbEZhY2Uuc2V0RGVmYXVsdCgpLHRoaXMuY29udGV4dC5hY3RpdmVUZXh0dXJlLnNldERlZmF1bHQoKSx0aGlzLmNvbnRleHQucGl4ZWxTdG9yZVVucGFjay5zZXREZWZhdWx0KCksdGhpcy5jb250ZXh0LnBpeGVsU3RvcmVVbnBhY2tQcmVtdWx0aXBseUFscGhhLnNldERlZmF1bHQoKSx0aGlzLmNvbnRleHQucGl4ZWxTdG9yZVVucGFja0ZsaXBZLnNldERlZmF1bHQoKTt9c2V0QmFzZVN0YXRlKCl7Y29uc3QgdD10aGlzLmNvbnRleHQuZ2w7dGhpcy5jb250ZXh0LmN1bGxGYWNlLnNldCghMSksdGhpcy5jb250ZXh0LnZpZXdwb3J0LnNldChbMCwwLHRoaXMud2lkdGgsdGhpcy5oZWlnaHRdKSx0aGlzLmNvbnRleHQuYmxlbmRFcXVhdGlvbi5zZXQodC5GVU5DX0FERCk7fWluaXREZWJ1Z092ZXJsYXlDYW52YXMoKXtudWxsPT10aGlzLmRlYnVnT3ZlcmxheUNhbnZhcyYmKHRoaXMuZGVidWdPdmVybGF5Q2FudmFzPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJjYW52YXNcIiksdGhpcy5kZWJ1Z092ZXJsYXlDYW52YXMud2lkdGg9NTEyLHRoaXMuZGVidWdPdmVybGF5Q2FudmFzLmhlaWdodD01MTIsdGhpcy5kZWJ1Z092ZXJsYXlUZXh0dXJlPW5ldyBiKHRoaXMuY29udGV4dCx0aGlzLmRlYnVnT3ZlcmxheUNhbnZhcyx0aGlzLmNvbnRleHQuZ2wuUkdCQSkpO31kZXN0cm95KCl7dGhpcy5kZWJ1Z092ZXJsYXlUZXh0dXJlJiZ0aGlzLmRlYnVnT3ZlcmxheVRleHR1cmUuZGVzdHJveSgpO31vdmVyTGltaXQoKXtjb25zdHtkcmF3aW5nQnVmZmVyV2lkdGg6dCxkcmF3aW5nQnVmZmVySGVpZ2h0OmV9PXRoaXMuY29udGV4dC5nbDtyZXR1cm4gdGhpcy53aWR0aCE9PXR8fHRoaXMuaGVpZ2h0IT09ZX19Y2xhc3MgeGF7Y29uc3RydWN0b3IodCxlKXt0aGlzLnBvaW50cz10LHRoaXMucGxhbmVzPWU7fXN0YXRpYyBmcm9tSW52UHJvamVjdGlvbk1hdHJpeCh0LGksYSl7Y29uc3Qgcz1NYXRoLnBvdygyLGEpLG89W1stMSwxLC0xLDFdLFsxLDEsLTEsMV0sWzEsLTEsLTEsMV0sWy0xLC0xLC0xLDFdLFstMSwxLDEsMV0sWzEsMSwxLDFdLFsxLC0xLDEsMV0sWy0xLC0xLDEsMV1dLm1hcCgoYT0+e2NvbnN0IG89MS8oYT1lLmFmKFtdLGEsdCkpWzNdL2kqcztyZXR1cm4gZS5iMShhLGEsW28sbywxL2FbM10sb10pfSkpLHI9W1swLDEsMl0sWzYsNSw0XSxbMCwzLDddLFsyLDEsNV0sWzMsMiw2XSxbMCw0LDVdXS5tYXAoKHQ9Pntjb25zdCBlPWZ1bmN0aW9uKHQsZSl7dmFyIGk9ZVswXSxhPWVbMV0scz1lWzJdLG89aSppK2EqYStzKnM7cmV0dXJuIG8+MCYmKG89MS9NYXRoLnNxcnQobykpLHRbMF09ZVswXSpvLHRbMV09ZVsxXSpvLHRbMl09ZVsyXSpvLHR9KFtdLGZ1bmN0aW9uKHQsZSxpKXt2YXIgYT1lWzBdLHM9ZVsxXSxvPWVbMl0scj1pWzBdLG49aVsxXSxsPWlbMl07cmV0dXJuIHRbMF09cypsLW8qbix0WzFdPW8qci1hKmwsdFsyXT1hKm4tcypyLHR9KFtdLGcoW10sb1t0WzBdXSxvW3RbMV1dKSxnKFtdLG9bdFsyXV0sb1t0WzFdXSkpKSxpPS0oKGE9ZSlbMF0qKHM9b1t0WzFdXSlbMF0rYVsxXSpzWzFdK2FbMl0qc1syXSk7dmFyIGEscztyZXR1cm4gZS5jb25jYXQoaSl9KSk7cmV0dXJuIG5ldyB4YShvLHIpfX1jbGFzcyB5YXtjb25zdHJ1Y3Rvcih0LGUpe3RoaXMubWluPXQsdGhpcy5tYXg9ZSx0aGlzLmNlbnRlcj1mdW5jdGlvbih0LGUsaSl7cmV0dXJuIHRbMF09LjUqZVswXSx0WzFdPS41KmVbMV0sdFsyXT0uNSplWzJdLHR9KFtdLGZ1bmN0aW9uKHQsZSxpKXtyZXR1cm4gdFswXT1lWzBdK2lbMF0sdFsxXT1lWzFdK2lbMV0sdFsyXT1lWzJdK2lbMl0sdH0oW10sdGhpcy5taW4sdGhpcy5tYXgpKTt9cXVhZHJhbnQodCl7Y29uc3QgZT1bdCUyPT0wLHQ8Ml0saT1tKHRoaXMubWluKSxhPW0odGhpcy5tYXgpO2ZvcihsZXQgdD0wO3Q8ZS5sZW5ndGg7dCsrKWlbdF09ZVt0XT90aGlzLm1pblt0XTp0aGlzLmNlbnRlclt0XSxhW3RdPWVbdF0/dGhpcy5jZW50ZXJbdF06dGhpcy5tYXhbdF07cmV0dXJuIGFbMl09dGhpcy5tYXhbMl0sbmV3IHlhKGksYSl9ZGlzdGFuY2VYKHQpe3JldHVybiBNYXRoLm1heChNYXRoLm1pbih0aGlzLm1heFswXSx0WzBdKSx0aGlzLm1pblswXSktdFswXX1kaXN0YW5jZVkodCl7cmV0dXJuIE1hdGgubWF4KE1hdGgubWluKHRoaXMubWF4WzFdLHRbMV0pLHRoaXMubWluWzFdKS10WzFdfWludGVyc2VjdHModCl7Y29uc3QgaT1bW3RoaXMubWluWzBdLHRoaXMubWluWzFdLHRoaXMubWluWzJdLDFdLFt0aGlzLm1heFswXSx0aGlzLm1pblsxXSx0aGlzLm1pblsyXSwxXSxbdGhpcy5tYXhbMF0sdGhpcy5tYXhbMV0sdGhpcy5taW5bMl0sMV0sW3RoaXMubWluWzBdLHRoaXMubWF4WzFdLHRoaXMubWluWzJdLDFdLFt0aGlzLm1pblswXSx0aGlzLm1pblsxXSx0aGlzLm1heFsyXSwxXSxbdGhpcy5tYXhbMF0sdGhpcy5taW5bMV0sdGhpcy5tYXhbMl0sMV0sW3RoaXMubWF4WzBdLHRoaXMubWF4WzFdLHRoaXMubWF4WzJdLDFdLFt0aGlzLm1pblswXSx0aGlzLm1heFsxXSx0aGlzLm1heFsyXSwxXV07bGV0IGE9ITA7Zm9yKGxldCBzPTA7czx0LnBsYW5lcy5sZW5ndGg7cysrKXtjb25zdCBvPXQucGxhbmVzW3NdO2xldCByPTA7Zm9yKGxldCB0PTA7dDxpLmxlbmd0aDt0KyspZS5iMihvLGlbdF0pPj0wJiZyKys7aWYoMD09PXIpcmV0dXJuIDA7ciE9PWkubGVuZ3RoJiYoYT0hMSk7fWlmKGEpcmV0dXJuIDI7Zm9yKGxldCBlPTA7ZTwzO2UrKyl7bGV0IGk9TnVtYmVyLk1BWF9WQUxVRSxhPS1OdW1iZXIuTUFYX1ZBTFVFO2ZvcihsZXQgcz0wO3M8dC5wb2ludHMubGVuZ3RoO3MrKyl7Y29uc3Qgbz10LnBvaW50c1tzXVtlXS10aGlzLm1pbltlXTtpPU1hdGgubWluKGksbyksYT1NYXRoLm1heChhLG8pO31pZihhPDB8fGk+dGhpcy5tYXhbZV0tdGhpcy5taW5bZV0pcmV0dXJuIDB9cmV0dXJuIDF9fWNsYXNzIGJhe2NvbnN0cnVjdG9yKHQ9MCxlPTAsaT0wLGE9MCl7aWYoaXNOYU4odCl8fHQ8MHx8aXNOYU4oZSl8fGU8MHx8aXNOYU4oaSl8fGk8MHx8aXNOYU4oYSl8fGE8MCl0aHJvdyBuZXcgRXJyb3IoXCJJbnZhbGlkIHZhbHVlIGZvciBlZGdlLWluc2V0cywgdG9wLCBib3R0b20sIGxlZnQgYW5kIHJpZ2h0IG11c3QgYWxsIGJlIG51bWJlcnNcIik7dGhpcy50b3A9dCx0aGlzLmJvdHRvbT1lLHRoaXMubGVmdD1pLHRoaXMucmlnaHQ9YTt9aW50ZXJwb2xhdGUodCxpLGEpe3JldHVybiBudWxsIT1pLnRvcCYmbnVsbCE9dC50b3AmJih0aGlzLnRvcD1lLnkubnVtYmVyKHQudG9wLGkudG9wLGEpKSxudWxsIT1pLmJvdHRvbSYmbnVsbCE9dC5ib3R0b20mJih0aGlzLmJvdHRvbT1lLnkubnVtYmVyKHQuYm90dG9tLGkuYm90dG9tLGEpKSxudWxsIT1pLmxlZnQmJm51bGwhPXQubGVmdCYmKHRoaXMubGVmdD1lLnkubnVtYmVyKHQubGVmdCxpLmxlZnQsYSkpLG51bGwhPWkucmlnaHQmJm51bGwhPXQucmlnaHQmJih0aGlzLnJpZ2h0PWUueS5udW1iZXIodC5yaWdodCxpLnJpZ2h0LGEpKSx0aGlzfWdldENlbnRlcih0LGkpe2NvbnN0IGE9ZS5hYygodGhpcy5sZWZ0K3QtdGhpcy5yaWdodCkvMiwwLHQpLHM9ZS5hYygodGhpcy50b3AraS10aGlzLmJvdHRvbSkvMiwwLGkpO3JldHVybiBuZXcgZS5QKGEscyl9ZXF1YWxzKHQpe3JldHVybiB0aGlzLnRvcD09PXQudG9wJiZ0aGlzLmJvdHRvbT09PXQuYm90dG9tJiZ0aGlzLmxlZnQ9PT10LmxlZnQmJnRoaXMucmlnaHQ9PT10LnJpZ2h0fWNsb25lKCl7cmV0dXJuIG5ldyBiYSh0aGlzLnRvcCx0aGlzLmJvdHRvbSx0aGlzLmxlZnQsdGhpcy5yaWdodCl9dG9KU09OKCl7cmV0dXJuIHt0b3A6dGhpcy50b3AsYm90dG9tOnRoaXMuYm90dG9tLGxlZnQ6dGhpcy5sZWZ0LHJpZ2h0OnRoaXMucmlnaHR9fX1jb25zdCB3YT04NS4wNTExMjk7Y2xhc3MgVGF7Y29uc3RydWN0b3IodCxpLGEscyxvKXt0aGlzLnRpbGVTaXplPTUxMix0aGlzLl9yZW5kZXJXb3JsZENvcGllcz12b2lkIDA9PT1vfHwhIW8sdGhpcy5fbWluWm9vbT10fHwwLHRoaXMuX21heFpvb209aXx8MjIsdGhpcy5fbWluUGl0Y2g9bnVsbD09YT8wOmEsdGhpcy5fbWF4UGl0Y2g9bnVsbD09cz82MDpzLHRoaXMuc2V0TWF4Qm91bmRzKCksdGhpcy53aWR0aD0wLHRoaXMuaGVpZ2h0PTAsdGhpcy5fY2VudGVyPW5ldyBlLk4oMCwwKSx0aGlzLl9lbGV2YXRpb249MCx0aGlzLnpvb209MCx0aGlzLmFuZ2xlPTAsdGhpcy5fZm92PS42NDM1MDExMDg3OTMyODQ0LHRoaXMuX3BpdGNoPTAsdGhpcy5fdW5tb2RpZmllZD0hMCx0aGlzLl9lZGdlSW5zZXRzPW5ldyBiYSx0aGlzLl9wb3NNYXRyaXhDYWNoZT17fSx0aGlzLl9hbGlnbmVkUG9zTWF0cml4Q2FjaGU9e30sdGhpcy5fZm9nTWF0cml4Q2FjaGU9e30sdGhpcy5taW5FbGV2YXRpb25Gb3JDdXJyZW50VGlsZT0wO31jbG9uZSgpe2NvbnN0IHQ9bmV3IFRhKHRoaXMuX21pblpvb20sdGhpcy5fbWF4Wm9vbSx0aGlzLl9taW5QaXRjaCx0aGlzLm1heFBpdGNoLHRoaXMuX3JlbmRlcldvcmxkQ29waWVzKTtyZXR1cm4gdC5hcHBseSh0aGlzKSx0fWFwcGx5KHQpe3RoaXMudGlsZVNpemU9dC50aWxlU2l6ZSx0aGlzLmxhdFJhbmdlPXQubGF0UmFuZ2UsdGhpcy5sbmdSYW5nZT10LmxuZ1JhbmdlLHRoaXMud2lkdGg9dC53aWR0aCx0aGlzLmhlaWdodD10LmhlaWdodCx0aGlzLl9jZW50ZXI9dC5fY2VudGVyLHRoaXMuX2VsZXZhdGlvbj10Ll9lbGV2YXRpb24sdGhpcy5taW5FbGV2YXRpb25Gb3JDdXJyZW50VGlsZT10Lm1pbkVsZXZhdGlvbkZvckN1cnJlbnRUaWxlLHRoaXMuem9vbT10Lnpvb20sdGhpcy5hbmdsZT10LmFuZ2xlLHRoaXMuX2Zvdj10Ll9mb3YsdGhpcy5fcGl0Y2g9dC5fcGl0Y2gsdGhpcy5fdW5tb2RpZmllZD10Ll91bm1vZGlmaWVkLHRoaXMuX2VkZ2VJbnNldHM9dC5fZWRnZUluc2V0cy5jbG9uZSgpLHRoaXMuX2NhbGNNYXRyaWNlcygpO31nZXQgbWluWm9vbSgpe3JldHVybiB0aGlzLl9taW5ab29tfXNldCBtaW5ab29tKHQpe3RoaXMuX21pblpvb20hPT10JiYodGhpcy5fbWluWm9vbT10LHRoaXMuem9vbT1NYXRoLm1heCh0aGlzLnpvb20sdCkpO31nZXQgbWF4Wm9vbSgpe3JldHVybiB0aGlzLl9tYXhab29tfXNldCBtYXhab29tKHQpe3RoaXMuX21heFpvb20hPT10JiYodGhpcy5fbWF4Wm9vbT10LHRoaXMuem9vbT1NYXRoLm1pbih0aGlzLnpvb20sdCkpO31nZXQgbWluUGl0Y2goKXtyZXR1cm4gdGhpcy5fbWluUGl0Y2h9c2V0IG1pblBpdGNoKHQpe3RoaXMuX21pblBpdGNoIT09dCYmKHRoaXMuX21pblBpdGNoPXQsdGhpcy5waXRjaD1NYXRoLm1heCh0aGlzLnBpdGNoLHQpKTt9Z2V0IG1heFBpdGNoKCl7cmV0dXJuIHRoaXMuX21heFBpdGNofXNldCBtYXhQaXRjaCh0KXt0aGlzLl9tYXhQaXRjaCE9PXQmJih0aGlzLl9tYXhQaXRjaD10LHRoaXMucGl0Y2g9TWF0aC5taW4odGhpcy5waXRjaCx0KSk7fWdldCByZW5kZXJXb3JsZENvcGllcygpe3JldHVybiB0aGlzLl9yZW5kZXJXb3JsZENvcGllc31zZXQgcmVuZGVyV29ybGRDb3BpZXModCl7dm9pZCAwPT09dD90PSEwOm51bGw9PT10JiYodD0hMSksdGhpcy5fcmVuZGVyV29ybGRDb3BpZXM9dDt9Z2V0IHdvcmxkU2l6ZSgpe3JldHVybiB0aGlzLnRpbGVTaXplKnRoaXMuc2NhbGV9Z2V0IGNlbnRlck9mZnNldCgpe3JldHVybiB0aGlzLmNlbnRlclBvaW50Ll9zdWIodGhpcy5zaXplLl9kaXYoMikpfWdldCBzaXplKCl7cmV0dXJuIG5ldyBlLlAodGhpcy53aWR0aCx0aGlzLmhlaWdodCl9Z2V0IGJlYXJpbmcoKXtyZXR1cm4gLXRoaXMuYW5nbGUvTWF0aC5QSSoxODB9c2V0IGJlYXJpbmcodCl7Y29uc3QgaT0tZS5iMyh0LC0xODAsMTgwKSpNYXRoLlBJLzE4MDt0aGlzLmFuZ2xlIT09aSYmKHRoaXMuX3VubW9kaWZpZWQ9ITEsdGhpcy5hbmdsZT1pLHRoaXMuX2NhbGNNYXRyaWNlcygpLHRoaXMucm90YXRpb25NYXRyaXg9ZnVuY3Rpb24oKXt2YXIgdD1uZXcgZS5BKDQpO3JldHVybiBlLkEhPUZsb2F0MzJBcnJheSYmKHRbMV09MCx0WzJdPTApLHRbMF09MSx0WzNdPTEsdH0oKSxmdW5jdGlvbih0LGUsaSl7dmFyIGE9ZVswXSxzPWVbMV0sbz1lWzJdLHI9ZVszXSxuPU1hdGguc2luKGkpLGw9TWF0aC5jb3MoaSk7dFswXT1hKmwrbypuLHRbMV09cypsK3Iqbix0WzJdPWEqLW4rbypsLHRbM109cyotbityKmw7fSh0aGlzLnJvdGF0aW9uTWF0cml4LHRoaXMucm90YXRpb25NYXRyaXgsdGhpcy5hbmdsZSkpO31nZXQgcGl0Y2goKXtyZXR1cm4gdGhpcy5fcGl0Y2gvTWF0aC5QSSoxODB9c2V0IHBpdGNoKHQpe2NvbnN0IGk9ZS5hYyh0LHRoaXMubWluUGl0Y2gsdGhpcy5tYXhQaXRjaCkvMTgwKk1hdGguUEk7dGhpcy5fcGl0Y2ghPT1pJiYodGhpcy5fdW5tb2RpZmllZD0hMSx0aGlzLl9waXRjaD1pLHRoaXMuX2NhbGNNYXRyaWNlcygpKTt9Z2V0IGZvdigpe3JldHVybiB0aGlzLl9mb3YvTWF0aC5QSSoxODB9c2V0IGZvdih0KXt0PU1hdGgubWF4KC4wMSxNYXRoLm1pbig2MCx0KSksdGhpcy5fZm92IT09dCYmKHRoaXMuX3VubW9kaWZpZWQ9ITEsdGhpcy5fZm92PXQvMTgwKk1hdGguUEksdGhpcy5fY2FsY01hdHJpY2VzKCkpO31nZXQgem9vbSgpe3JldHVybiB0aGlzLl96b29tfXNldCB6b29tKHQpe2NvbnN0IGU9TWF0aC5taW4oTWF0aC5tYXgodCx0aGlzLm1pblpvb20pLHRoaXMubWF4Wm9vbSk7dGhpcy5fem9vbSE9PWUmJih0aGlzLl91bm1vZGlmaWVkPSExLHRoaXMuX3pvb209ZSx0aGlzLnRpbGVab29tPU1hdGgubWF4KDAsTWF0aC5mbG9vcihlKSksdGhpcy5zY2FsZT10aGlzLnpvb21TY2FsZShlKSx0aGlzLl9jb25zdHJhaW4oKSx0aGlzLl9jYWxjTWF0cmljZXMoKSk7fWdldCBjZW50ZXIoKXtyZXR1cm4gdGhpcy5fY2VudGVyfXNldCBjZW50ZXIodCl7dC5sYXQ9PT10aGlzLl9jZW50ZXIubGF0JiZ0LmxuZz09PXRoaXMuX2NlbnRlci5sbmd8fCh0aGlzLl91bm1vZGlmaWVkPSExLHRoaXMuX2NlbnRlcj10LHRoaXMuX2NvbnN0cmFpbigpLHRoaXMuX2NhbGNNYXRyaWNlcygpKTt9Z2V0IGVsZXZhdGlvbigpe3JldHVybiB0aGlzLl9lbGV2YXRpb259c2V0IGVsZXZhdGlvbih0KXt0IT09dGhpcy5fZWxldmF0aW9uJiYodGhpcy5fZWxldmF0aW9uPXQsdGhpcy5fY29uc3RyYWluKCksdGhpcy5fY2FsY01hdHJpY2VzKCkpO31nZXQgcGFkZGluZygpe3JldHVybiB0aGlzLl9lZGdlSW5zZXRzLnRvSlNPTigpfXNldCBwYWRkaW5nKHQpe3RoaXMuX2VkZ2VJbnNldHMuZXF1YWxzKHQpfHwodGhpcy5fdW5tb2RpZmllZD0hMSx0aGlzLl9lZGdlSW5zZXRzLmludGVycG9sYXRlKHRoaXMuX2VkZ2VJbnNldHMsdCwxKSx0aGlzLl9jYWxjTWF0cmljZXMoKSk7fWdldCBjZW50ZXJQb2ludCgpe3JldHVybiB0aGlzLl9lZGdlSW5zZXRzLmdldENlbnRlcih0aGlzLndpZHRoLHRoaXMuaGVpZ2h0KX1pc1BhZGRpbmdFcXVhbCh0KXtyZXR1cm4gdGhpcy5fZWRnZUluc2V0cy5lcXVhbHModCl9aW50ZXJwb2xhdGVQYWRkaW5nKHQsZSxpKXt0aGlzLl91bm1vZGlmaWVkPSExLHRoaXMuX2VkZ2VJbnNldHMuaW50ZXJwb2xhdGUodCxlLGkpLHRoaXMuX2NvbnN0cmFpbigpLHRoaXMuX2NhbGNNYXRyaWNlcygpO31jb3ZlcmluZ1pvb21MZXZlbCh0KXtjb25zdCBlPSh0LnJvdW5kWm9vbT9NYXRoLnJvdW5kOk1hdGguZmxvb3IpKHRoaXMuem9vbSt0aGlzLnNjYWxlWm9vbSh0aGlzLnRpbGVTaXplL3QudGlsZVNpemUpKTtyZXR1cm4gTWF0aC5tYXgoMCxlKX1nZXRWaXNpYmxlVW53cmFwcGVkQ29vcmRpbmF0ZXModCl7Y29uc3QgaT1bbmV3IGUuYjQoMCx0KV07aWYodGhpcy5fcmVuZGVyV29ybGRDb3BpZXMpe2NvbnN0IGE9dGhpcy5wb2ludENvb3JkaW5hdGUobmV3IGUuUCgwLDApKSxzPXRoaXMucG9pbnRDb29yZGluYXRlKG5ldyBlLlAodGhpcy53aWR0aCwwKSksbz10aGlzLnBvaW50Q29vcmRpbmF0ZShuZXcgZS5QKHRoaXMud2lkdGgsdGhpcy5oZWlnaHQpKSxyPXRoaXMucG9pbnRDb29yZGluYXRlKG5ldyBlLlAoMCx0aGlzLmhlaWdodCkpLG49TWF0aC5mbG9vcihNYXRoLm1pbihhLngscy54LG8ueCxyLngpKSxsPU1hdGguZmxvb3IoTWF0aC5tYXgoYS54LHMueCxvLngsci54KSksaD0xO2ZvcihsZXQgYT1uLWg7YTw9bCtoO2ErKykwIT09YSYmaS5wdXNoKG5ldyBlLmI0KGEsdCkpO31yZXR1cm4gaX1jb3ZlcmluZ1RpbGVzKHQpe3ZhciBpLGE7bGV0IHM9dGhpcy5jb3ZlcmluZ1pvb21MZXZlbCh0KTtjb25zdCBvPXM7aWYodm9pZCAwIT09dC5taW56b29tJiZzPHQubWluem9vbSlyZXR1cm4gW107dm9pZCAwIT09dC5tYXh6b29tJiZzPnQubWF4em9vbSYmKHM9dC5tYXh6b29tKTtjb25zdCByPXRoaXMucG9pbnRDb29yZGluYXRlKHRoaXMuZ2V0Q2FtZXJhUG9pbnQoKSksbj1lLlouZnJvbUxuZ0xhdCh0aGlzLmNlbnRlciksbD1NYXRoLnBvdygyLHMpLGg9W2wqci54LGwqci55LDBdLGM9W2wqbi54LGwqbi55LDBdLHU9eGEuZnJvbUludlByb2plY3Rpb25NYXRyaXgodGhpcy5pbnZNb2RlbFZpZXdQcm9qZWN0aW9uTWF0cml4LHRoaXMud29ybGRTaXplLHMpO2xldCBkPXQubWluem9vbXx8MDshdC50ZXJyYWluJiZ0aGlzLnBpdGNoPD02MCYmdGhpcy5fZWRnZUluc2V0cy50b3A8LjEmJihkPXMpO2NvbnN0IF89dC50ZXJyYWluPzIvTWF0aC5taW4odGhpcy50aWxlU2l6ZSx0LnRpbGVTaXplKSp0aGlzLnRpbGVTaXplOjMscD10PT4oe2FhYmI6bmV3IHlhKFt0KmwsMCwwXSxbKHQrMSkqbCxsLDBdKSx6b29tOjAseDowLHk6MCx3cmFwOnQsZnVsbHlWaXNpYmxlOiExfSksbT1bXSxmPVtdLGc9cyx4PXQucmVwYXJzZU92ZXJzY2FsZWQ/bzpzO2lmKHRoaXMuX3JlbmRlcldvcmxkQ29waWVzKWZvcihsZXQgdD0xO3Q8PTM7dCsrKW0ucHVzaChwKC10KSksbS5wdXNoKHAodCkpO2ZvcihtLnB1c2gocCgwKSk7bS5sZW5ndGg+MDspe2NvbnN0IHM9bS5wb3AoKSxvPXMueCxyPXMueTtsZXQgbj1zLmZ1bGx5VmlzaWJsZTtpZighbil7Y29uc3QgdD1zLmFhYmIuaW50ZXJzZWN0cyh1KTtpZigwPT09dCljb250aW51ZTtuPTI9PT10O31jb25zdCBsPXQudGVycmFpbj9oOmMscD1zLmFhYmIuZGlzdGFuY2VYKGwpLHk9cy5hYWJiLmRpc3RhbmNlWShsKSxiPU1hdGgubWF4KE1hdGguYWJzKHApLE1hdGguYWJzKHkpKTtpZihzLnpvb209PT1nfHxiPl8rKDE8PGctcy56b29tKS0yJiZzLnpvb20+PWQpe2NvbnN0IHQ9Zy1zLnpvb20saT1oWzBdLS41LShvPDx0KSxhPWhbMV0tLjUtKHI8PHQpO2YucHVzaCh7dGlsZUlEOm5ldyBlLlMocy56b29tPT09Zz94OnMuem9vbSxzLndyYXAscy56b29tLG8sciksZGlzdGFuY2VTcTp2KFtjWzBdLS41LW8sY1sxXS0uNS1yXSksdGlsZURpc3RhbmNlVG9DYW1lcmE6TWF0aC5zcXJ0KGkqaSthKmEpfSk7fWVsc2UgZm9yKGxldCBsPTA7bDw0O2wrKyl7Y29uc3QgaD0obzw8MSkrbCUyLGM9KHI8PDEpKyhsPj4xKSx1PXMuem9vbSsxO2xldCBkPXMuYWFiYi5xdWFkcmFudChsKTtpZih0LnRlcnJhaW4pe2NvbnN0IG89bmV3IGUuUyh1LHMud3JhcCx1LGgsYykscj10LnRlcnJhaW4uZ2V0TWluTWF4RWxldmF0aW9uKG8pLG49bnVsbCE9PShpPXIubWluRWxldmF0aW9uKSYmdm9pZCAwIT09aT9pOnRoaXMuZWxldmF0aW9uLGw9bnVsbCE9PShhPXIubWF4RWxldmF0aW9uKSYmdm9pZCAwIT09YT9hOnRoaXMuZWxldmF0aW9uO2Q9bmV3IHlhKFtkLm1pblswXSxkLm1pblsxXSxuXSxbZC5tYXhbMF0sZC5tYXhbMV0sbF0pO31tLnB1c2goe2FhYmI6ZCx6b29tOnUseDpoLHk6Yyx3cmFwOnMud3JhcCxmdWxseVZpc2libGU6bn0pO319cmV0dXJuIGYuc29ydCgoKHQsZSk9PnQuZGlzdGFuY2VTcS1lLmRpc3RhbmNlU3EpKS5tYXAoKHQ9PnQudGlsZUlEKSl9cmVzaXplKHQsZSl7dGhpcy53aWR0aD10LHRoaXMuaGVpZ2h0PWUsdGhpcy5waXhlbHNUb0dMVW5pdHM9WzIvdCwtMi9lXSx0aGlzLl9jb25zdHJhaW4oKSx0aGlzLl9jYWxjTWF0cmljZXMoKTt9Z2V0IHVubW9kaWZpZWQoKXtyZXR1cm4gdGhpcy5fdW5tb2RpZmllZH16b29tU2NhbGUodCl7cmV0dXJuIE1hdGgucG93KDIsdCl9c2NhbGVab29tKHQpe3JldHVybiBNYXRoLmxvZyh0KS9NYXRoLkxOMn1wcm9qZWN0KHQpe2NvbnN0IGk9ZS5hYyh0LmxhdCwtODUuMDUxMTI5LHdhKTtyZXR1cm4gbmV3IGUuUChlLk8odC5sbmcpKnRoaXMud29ybGRTaXplLGUuUShpKSp0aGlzLndvcmxkU2l6ZSl9dW5wcm9qZWN0KHQpe3JldHVybiBuZXcgZS5aKHQueC90aGlzLndvcmxkU2l6ZSx0LnkvdGhpcy53b3JsZFNpemUpLnRvTG5nTGF0KCl9Z2V0IHBvaW50KCl7cmV0dXJuIHRoaXMucHJvamVjdCh0aGlzLmNlbnRlcil9Z2V0Q2FtZXJhUG9zaXRpb24oKXtyZXR1cm4ge2xuZ0xhdDp0aGlzLnBvaW50TG9jYXRpb24odGhpcy5nZXRDYW1lcmFQb2ludCgpKSxhbHRpdHVkZTpNYXRoLmNvcyh0aGlzLl9waXRjaCkqdGhpcy5jYW1lcmFUb0NlbnRlckRpc3RhbmNlL3RoaXMuX3BpeGVsUGVyTWV0ZXIrdGhpcy5lbGV2YXRpb259fXJlY2FsY3VsYXRlWm9vbSh0KXtjb25zdCBpPXRoaXMuZWxldmF0aW9uLGE9TWF0aC5jb3ModGhpcy5fcGl0Y2gpKnRoaXMuY2FtZXJhVG9DZW50ZXJEaXN0YW5jZS90aGlzLl9waXhlbFBlck1ldGVyLHM9dGhpcy5wb2ludExvY2F0aW9uKHRoaXMuY2VudGVyUG9pbnQsdCksbz10LmdldEVsZXZhdGlvbkZvckxuZ0xhdFpvb20ocyx0aGlzLnRpbGVab29tKTtpZighKHRoaXMuZWxldmF0aW9uLW8pKXJldHVybjtjb25zdCByPWEraS1vLG49TWF0aC5jb3ModGhpcy5fcGl0Y2gpKnRoaXMuY2FtZXJhVG9DZW50ZXJEaXN0YW5jZS9yL2UuYjUoMSxzLmxhdCksbD10aGlzLnNjYWxlWm9vbShuL3RoaXMudGlsZVNpemUpO3RoaXMuX2VsZXZhdGlvbj1vLHRoaXMuX2NlbnRlcj1zLHRoaXMuem9vbT1sO31zZXRMb2NhdGlvbkF0UG9pbnQodCxpKXtjb25zdCBhPXRoaXMucG9pbnRDb29yZGluYXRlKGkpLHM9dGhpcy5wb2ludENvb3JkaW5hdGUodGhpcy5jZW50ZXJQb2ludCksbz10aGlzLmxvY2F0aW9uQ29vcmRpbmF0ZSh0KSxyPW5ldyBlLlooby54LShhLngtcy54KSxvLnktKGEueS1zLnkpKTt0aGlzLmNlbnRlcj10aGlzLmNvb3JkaW5hdGVMb2NhdGlvbihyKSx0aGlzLl9yZW5kZXJXb3JsZENvcGllcyYmKHRoaXMuY2VudGVyPXRoaXMuY2VudGVyLndyYXAoKSk7fWxvY2F0aW9uUG9pbnQodCxlKXtyZXR1cm4gZT90aGlzLmNvb3JkaW5hdGVQb2ludCh0aGlzLmxvY2F0aW9uQ29vcmRpbmF0ZSh0KSxlLmdldEVsZXZhdGlvbkZvckxuZ0xhdFpvb20odCx0aGlzLnRpbGVab29tKSx0aGlzLnBpeGVsTWF0cml4M0QpOnRoaXMuY29vcmRpbmF0ZVBvaW50KHRoaXMubG9jYXRpb25Db29yZGluYXRlKHQpKX1wb2ludExvY2F0aW9uKHQsZSl7cmV0dXJuIHRoaXMuY29vcmRpbmF0ZUxvY2F0aW9uKHRoaXMucG9pbnRDb29yZGluYXRlKHQsZSkpfWxvY2F0aW9uQ29vcmRpbmF0ZSh0KXtyZXR1cm4gZS5aLmZyb21MbmdMYXQodCl9Y29vcmRpbmF0ZUxvY2F0aW9uKHQpe3JldHVybiB0JiZ0LnRvTG5nTGF0KCl9cG9pbnRDb29yZGluYXRlKHQsaSl7aWYoaSl7Y29uc3QgZT1pLnBvaW50Q29vcmRpbmF0ZSh0KTtpZihudWxsIT1lKXJldHVybiBlfWNvbnN0IGE9W3QueCx0LnksMCwxXSxzPVt0LngsdC55LDEsMV07ZS5hZihhLGEsdGhpcy5waXhlbE1hdHJpeEludmVyc2UpLGUuYWYocyxzLHRoaXMucGl4ZWxNYXRyaXhJbnZlcnNlKTtjb25zdCBvPWFbM10scj1zWzNdLG49YVsxXS9vLGw9c1sxXS9yLGg9YVsyXS9vLGM9c1syXS9yLHU9aD09PWM/MDooMC1oKS8oYy1oKTtyZXR1cm4gbmV3IGUuWihlLnkubnVtYmVyKGFbMF0vbyxzWzBdL3IsdSkvdGhpcy53b3JsZFNpemUsZS55Lm51bWJlcihuLGwsdSkvdGhpcy53b3JsZFNpemUpfWNvb3JkaW5hdGVQb2ludCh0LGk9MCxhPXRoaXMucGl4ZWxNYXRyaXgpe2NvbnN0IHM9W3QueCp0aGlzLndvcmxkU2l6ZSx0LnkqdGhpcy53b3JsZFNpemUsaSwxXTtyZXR1cm4gZS5hZihzLHMsYSksbmV3IGUuUChzWzBdL3NbM10sc1sxXS9zWzNdKX1nZXRCb3VuZHMoKXtjb25zdCB0PU1hdGgubWF4KDAsdGhpcy5oZWlnaHQvMi10aGlzLmdldEhvcml6b24oKSk7cmV0dXJuIChuZXcgSCkuZXh0ZW5kKHRoaXMucG9pbnRMb2NhdGlvbihuZXcgZS5QKDAsdCkpKS5leHRlbmQodGhpcy5wb2ludExvY2F0aW9uKG5ldyBlLlAodGhpcy53aWR0aCx0KSkpLmV4dGVuZCh0aGlzLnBvaW50TG9jYXRpb24obmV3IGUuUCh0aGlzLndpZHRoLHRoaXMuaGVpZ2h0KSkpLmV4dGVuZCh0aGlzLnBvaW50TG9jYXRpb24obmV3IGUuUCgwLHRoaXMuaGVpZ2h0KSkpfWdldE1heEJvdW5kcygpe3JldHVybiB0aGlzLmxhdFJhbmdlJiYyPT09dGhpcy5sYXRSYW5nZS5sZW5ndGgmJnRoaXMubG5nUmFuZ2UmJjI9PT10aGlzLmxuZ1JhbmdlLmxlbmd0aD9uZXcgSChbdGhpcy5sbmdSYW5nZVswXSx0aGlzLmxhdFJhbmdlWzBdXSxbdGhpcy5sbmdSYW5nZVsxXSx0aGlzLmxhdFJhbmdlWzFdXSk6bnVsbH1nZXRIb3Jpem9uKCl7cmV0dXJuIE1hdGgudGFuKE1hdGguUEkvMi10aGlzLl9waXRjaCkqdGhpcy5jYW1lcmFUb0NlbnRlckRpc3RhbmNlKi44NX1zZXRNYXhCb3VuZHModCl7dD8odGhpcy5sbmdSYW5nZT1bdC5nZXRXZXN0KCksdC5nZXRFYXN0KCldLHRoaXMubGF0UmFuZ2U9W3QuZ2V0U291dGgoKSx0LmdldE5vcnRoKCldLHRoaXMuX2NvbnN0cmFpbigpKToodGhpcy5sbmdSYW5nZT1udWxsLHRoaXMubGF0UmFuZ2U9Wy04NS4wNTExMjksd2FdKTt9Y2FsY3VsYXRlVGlsZU1hdHJpeCh0KXtjb25zdCBpPXQuY2Fub25pY2FsLGE9dGhpcy53b3JsZFNpemUvdGhpcy56b29tU2NhbGUoaS56KSxzPWkueCtNYXRoLnBvdygyLGkueikqdC53cmFwLG89ZS5hbihuZXcgRmxvYXQ2NEFycmF5KDE2KSk7cmV0dXJuIGUuSihvLG8sW3MqYSxpLnkqYSwwXSksZS5LKG8sbyxbYS9lLlgsYS9lLlgsMV0pLG99Y2FsY3VsYXRlUG9zTWF0cml4KHQsaT0hMSl7Y29uc3QgYT10LmtleSxzPWk/dGhpcy5fYWxpZ25lZFBvc01hdHJpeENhY2hlOnRoaXMuX3Bvc01hdHJpeENhY2hlO2lmKHNbYV0pcmV0dXJuIHNbYV07Y29uc3Qgbz10aGlzLmNhbGN1bGF0ZVRpbGVNYXRyaXgodCk7cmV0dXJuIGUuTChvLGk/dGhpcy5hbGlnbmVkTW9kZWxWaWV3UHJvamVjdGlvbk1hdHJpeDp0aGlzLm1vZGVsVmlld1Byb2plY3Rpb25NYXRyaXgsbyksc1thXT1uZXcgRmxvYXQzMkFycmF5KG8pLHNbYV19Y2FsY3VsYXRlRm9nTWF0cml4KHQpe2NvbnN0IGk9dC5rZXksYT10aGlzLl9mb2dNYXRyaXhDYWNoZTtpZihhW2ldKXJldHVybiBhW2ldO2NvbnN0IHM9dGhpcy5jYWxjdWxhdGVUaWxlTWF0cml4KHQpO3JldHVybiBlLkwocyx0aGlzLmZvZ01hdHJpeCxzKSxhW2ldPW5ldyBGbG9hdDMyQXJyYXkocyksYVtpXX1jdXN0b21MYXllck1hdHJpeCgpe3JldHVybiB0aGlzLm1lcmNhdG9yTWF0cml4LnNsaWNlKCl9Z2V0Q29uc3RyYWluZWQodCxpKXtpPWUuYWMoK2ksdGhpcy5taW5ab29tLHRoaXMubWF4Wm9vbSk7Y29uc3QgYT17Y2VudGVyOm5ldyBlLk4odC5sbmcsdC5sYXQpLHpvb206aX07bGV0IHM9dGhpcy5sbmdSYW5nZTtpZighdGhpcy5fcmVuZGVyV29ybGRDb3BpZXMmJm51bGw9PT1zKXtjb25zdCB0PTE4MC0xZS0xMDtzPVstdCx0XTt9Y29uc3Qgbz10aGlzLnRpbGVTaXplKnRoaXMuem9vbVNjYWxlKGEuem9vbSk7bGV0IHI9MCxuPW8sbD0wLGg9byxjPTAsdT0wO2NvbnN0e3g6ZCx5Ol99PXRoaXMuc2l6ZTtpZih0aGlzLmxhdFJhbmdlKXtjb25zdCB0PXRoaXMubGF0UmFuZ2U7cj1lLlEodFsxXSkqbyxuPWUuUSh0WzBdKSpvLG4tcjxfJiYoYz1fLyhuLXIpKTt9cyYmKGw9ZS5iMyhlLk8oc1swXSkqbywwLG8pLGg9ZS5iMyhlLk8oc1sxXSkqbywwLG8pLGg8bCYmKGgrPW8pLGgtbDxkJiYodT1kLyhoLWwpKSk7Y29uc3R7eDpwLHk6bX09dGhpcy5wcm9qZWN0LmNhbGwoe3dvcmxkU2l6ZTpvfSx0KTtsZXQgZixnO2NvbnN0IHY9TWF0aC5tYXgodXx8MCxjfHwwKTtpZih2KXtjb25zdCB0PW5ldyBlLlAodT8oaCtsKS8yOnAsYz8obityKS8yOm0pO3JldHVybiBhLmNlbnRlcj10aGlzLnVucHJvamVjdC5jYWxsKHt3b3JsZFNpemU6b30sdCkud3JhcCgpLGEuem9vbSs9dGhpcy5zY2FsZVpvb20odiksYX1pZih0aGlzLmxhdFJhbmdlKXtjb25zdCB0PV8vMjttLXQ8ciYmKGc9cit0KSxtK3Q+biYmKGc9bi10KTt9aWYocyl7Y29uc3QgdD0obCtoKS8yO2xldCBpPXA7dGhpcy5fcmVuZGVyV29ybGRDb3BpZXMmJihpPWUuYjMocCx0LW8vMix0K28vMikpO2NvbnN0IGE9ZC8yO2ktYTxsJiYoZj1sK2EpLGkrYT5oJiYoZj1oLWEpO31pZih2b2lkIDAhPT1mfHx2b2lkIDAhPT1nKXtjb25zdCB0PW5ldyBlLlAobnVsbCE9Zj9mOnAsbnVsbCE9Zz9nOm0pO2EuY2VudGVyPXRoaXMudW5wcm9qZWN0LmNhbGwoe3dvcmxkU2l6ZTpvfSx0KS53cmFwKCk7fXJldHVybiBhfV9jb25zdHJhaW4oKXtpZighdGhpcy5jZW50ZXJ8fCF0aGlzLndpZHRofHwhdGhpcy5oZWlnaHR8fHRoaXMuX2NvbnN0cmFpbmluZylyZXR1cm47dGhpcy5fY29uc3RyYWluaW5nPSEwO2NvbnN0IHQ9dGhpcy5fdW5tb2RpZmllZCx7Y2VudGVyOmUsem9vbTppfT10aGlzLmdldENvbnN0cmFpbmVkKHRoaXMuY2VudGVyLHRoaXMuem9vbSk7dGhpcy5jZW50ZXI9ZSx0aGlzLnpvb209aSx0aGlzLl91bm1vZGlmaWVkPXQsdGhpcy5fY29uc3RyYWluaW5nPSExO31fY2FsY01hdHJpY2VzKCl7aWYoIXRoaXMuaGVpZ2h0KXJldHVybjtjb25zdCB0PXRoaXMuY2VudGVyT2Zmc2V0LGk9dGhpcy5wb2ludC54LGE9dGhpcy5wb2ludC55O3RoaXMuY2FtZXJhVG9DZW50ZXJEaXN0YW5jZT0uNS9NYXRoLnRhbih0aGlzLl9mb3YvMikqdGhpcy5oZWlnaHQsdGhpcy5fcGl4ZWxQZXJNZXRlcj1lLmI1KDEsdGhpcy5jZW50ZXIubGF0KSp0aGlzLndvcmxkU2l6ZTtsZXQgcz1lLmFuKG5ldyBGbG9hdDY0QXJyYXkoMTYpKTtlLksocyxzLFt0aGlzLndpZHRoLzIsLXRoaXMuaGVpZ2h0LzIsMV0pLGUuSihzLHMsWzEsLTEsMF0pLHRoaXMubGFiZWxQbGFuZU1hdHJpeD1zLHM9ZS5hbihuZXcgRmxvYXQ2NEFycmF5KDE2KSksZS5LKHMscyxbMSwtMSwxXSksZS5KKHMscyxbLTEsLTEsMF0pLGUuSyhzLHMsWzIvdGhpcy53aWR0aCwyL3RoaXMuaGVpZ2h0LDFdKSx0aGlzLmdsQ29vcmRNYXRyaXg9cztjb25zdCBvPXRoaXMuY2FtZXJhVG9DZW50ZXJEaXN0YW5jZSt0aGlzLl9lbGV2YXRpb24qdGhpcy5fcGl4ZWxQZXJNZXRlci9NYXRoLmNvcyh0aGlzLl9waXRjaCkscj1NYXRoLm1pbih0aGlzLmVsZXZhdGlvbix0aGlzLm1pbkVsZXZhdGlvbkZvckN1cnJlbnRUaWxlKSxuPW8tcip0aGlzLl9waXhlbFBlck1ldGVyL01hdGguY29zKHRoaXMuX3BpdGNoKSxsPXI8MD9uOm8saD1NYXRoLlBJLzIrdGhpcy5fcGl0Y2gsYz10aGlzLl9mb3YqKC41K3QueS90aGlzLmhlaWdodCksdT1NYXRoLnNpbihjKSpsL01hdGguc2luKGUuYWMoTWF0aC5QSS1oLWMsLjAxLE1hdGguUEktLjAxKSksZD10aGlzLmdldEhvcml6b24oKSxfPTIqTWF0aC5hdGFuKGQvdGhpcy5jYW1lcmFUb0NlbnRlckRpc3RhbmNlKSooLjUrdC55LygyKmQpKSxwPU1hdGguc2luKF8pKmwvTWF0aC5zaW4oZS5hYyhNYXRoLlBJLWgtXywuMDEsTWF0aC5QSS0uMDEpKSxtPU1hdGgubWluKHUscCk7dGhpcy5mYXJaPTEuMDEqKE1hdGguY29zKE1hdGguUEkvMi10aGlzLl9waXRjaCkqbStsKSx0aGlzLm5lYXJaPXRoaXMuaGVpZ2h0LzUwLHM9bmV3IEZsb2F0NjRBcnJheSgxNiksZS5iNihzLHRoaXMuX2Zvdix0aGlzLndpZHRoL3RoaXMuaGVpZ2h0LHRoaXMubmVhclosdGhpcy5mYXJaKSxzWzhdPTIqLXQueC90aGlzLndpZHRoLHNbOV09Mip0LnkvdGhpcy5oZWlnaHQsdGhpcy5wcm9qZWN0aW9uTWF0cml4PWUuYWUocyksZS5LKHMscyxbMSwtMSwxXSksZS5KKHMscyxbMCwwLC10aGlzLmNhbWVyYVRvQ2VudGVyRGlzdGFuY2VdKSxlLmI3KHMscyx0aGlzLl9waXRjaCksZS5hZChzLHMsdGhpcy5hbmdsZSksZS5KKHMscyxbLWksLWEsMF0pLHRoaXMubWVyY2F0b3JNYXRyaXg9ZS5LKFtdLHMsW3RoaXMud29ybGRTaXplLHRoaXMud29ybGRTaXplLHRoaXMud29ybGRTaXplXSksZS5LKHMscyxbMSwxLHRoaXMuX3BpeGVsUGVyTWV0ZXJdKSx0aGlzLnBpeGVsTWF0cml4PWUuTChuZXcgRmxvYXQ2NEFycmF5KDE2KSx0aGlzLmxhYmVsUGxhbmVNYXRyaXgscyksZS5KKHMscyxbMCwwLC10aGlzLmVsZXZhdGlvbl0pLHRoaXMubW9kZWxWaWV3UHJvamVjdGlvbk1hdHJpeD1zLHRoaXMuaW52TW9kZWxWaWV3UHJvamVjdGlvbk1hdHJpeD1lLmFzKFtdLHMpLHRoaXMuZm9nTWF0cml4PW5ldyBGbG9hdDY0QXJyYXkoMTYpLGUuYjYodGhpcy5mb2dNYXRyaXgsdGhpcy5fZm92LHRoaXMud2lkdGgvdGhpcy5oZWlnaHQsbyx0aGlzLmZhclopLHRoaXMuZm9nTWF0cml4WzhdPTIqLXQueC90aGlzLndpZHRoLHRoaXMuZm9nTWF0cml4WzldPTIqdC55L3RoaXMuaGVpZ2h0LGUuSyh0aGlzLmZvZ01hdHJpeCx0aGlzLmZvZ01hdHJpeCxbMSwtMSwxXSksZS5KKHRoaXMuZm9nTWF0cml4LHRoaXMuZm9nTWF0cml4LFswLDAsLXRoaXMuY2FtZXJhVG9DZW50ZXJEaXN0YW5jZV0pLGUuYjcodGhpcy5mb2dNYXRyaXgsdGhpcy5mb2dNYXRyaXgsdGhpcy5fcGl0Y2gpLGUuYWQodGhpcy5mb2dNYXRyaXgsdGhpcy5mb2dNYXRyaXgsdGhpcy5hbmdsZSksZS5KKHRoaXMuZm9nTWF0cml4LHRoaXMuZm9nTWF0cml4LFstaSwtYSwwXSksZS5LKHRoaXMuZm9nTWF0cml4LHRoaXMuZm9nTWF0cml4LFsxLDEsdGhpcy5fcGl4ZWxQZXJNZXRlcl0pLGUuSih0aGlzLmZvZ01hdHJpeCx0aGlzLmZvZ01hdHJpeCxbMCwwLC10aGlzLmVsZXZhdGlvbl0pLHRoaXMucGl4ZWxNYXRyaXgzRD1lLkwobmV3IEZsb2F0NjRBcnJheSgxNiksdGhpcy5sYWJlbFBsYW5lTWF0cml4LHMpO2NvbnN0IGY9dGhpcy53aWR0aCUyLzIsZz10aGlzLmhlaWdodCUyLzIsdj1NYXRoLmNvcyh0aGlzLmFuZ2xlKSx4PU1hdGguc2luKHRoaXMuYW5nbGUpLHk9aS1NYXRoLnJvdW5kKGkpK3YqZit4KmcsYj1hLU1hdGgucm91bmQoYSkrdipnK3gqZix3PW5ldyBGbG9hdDY0QXJyYXkocyk7aWYoZS5KKHcsdyxbeT4uNT95LTE6eSxiPi41P2ItMTpiLDBdKSx0aGlzLmFsaWduZWRNb2RlbFZpZXdQcm9qZWN0aW9uTWF0cml4PXcscz1lLmFzKG5ldyBGbG9hdDY0QXJyYXkoMTYpLHRoaXMucGl4ZWxNYXRyaXgpLCFzKXRocm93IG5ldyBFcnJvcihcImZhaWxlZCB0byBpbnZlcnQgbWF0cml4XCIpO3RoaXMucGl4ZWxNYXRyaXhJbnZlcnNlPXMsdGhpcy5fcG9zTWF0cml4Q2FjaGU9e30sdGhpcy5fYWxpZ25lZFBvc01hdHJpeENhY2hlPXt9LHRoaXMuX2ZvZ01hdHJpeENhY2hlPXt9O31tYXhQaXRjaFNjYWxlRmFjdG9yKCl7aWYoIXRoaXMucGl4ZWxNYXRyaXhJbnZlcnNlKXJldHVybiAxO2NvbnN0IHQ9dGhpcy5wb2ludENvb3JkaW5hdGUobmV3IGUuUCgwLDApKSxpPVt0LngqdGhpcy53b3JsZFNpemUsdC55KnRoaXMud29ybGRTaXplLDAsMV07cmV0dXJuIGUuYWYoaSxpLHRoaXMucGl4ZWxNYXRyaXgpWzNdL3RoaXMuY2FtZXJhVG9DZW50ZXJEaXN0YW5jZX1nZXRDYW1lcmFQb2ludCgpe2NvbnN0IHQ9TWF0aC50YW4odGhpcy5fcGl0Y2gpKih0aGlzLmNhbWVyYVRvQ2VudGVyRGlzdGFuY2V8fDEpO3JldHVybiB0aGlzLmNlbnRlclBvaW50LmFkZChuZXcgZS5QKDAsdCkpfWdldENhbWVyYVF1ZXJ5R2VvbWV0cnkodCl7Y29uc3QgaT10aGlzLmdldENhbWVyYVBvaW50KCk7aWYoMT09PXQubGVuZ3RoKXJldHVybiBbdFswXSxpXTt7bGV0IGE9aS54LHM9aS55LG89aS54LHI9aS55O2Zvcihjb25zdCBlIG9mIHQpYT1NYXRoLm1pbihhLGUueCkscz1NYXRoLm1pbihzLGUueSksbz1NYXRoLm1heChvLGUueCkscj1NYXRoLm1heChyLGUueSk7cmV0dXJuIFtuZXcgZS5QKGEscyksbmV3IGUuUChvLHMpLG5ldyBlLlAobyxyKSxuZXcgZS5QKGEsciksbmV3IGUuUChhLHMpXX19bG5nTGF0VG9DYW1lcmFEZXB0aCh0LGkpe2NvbnN0IGE9dGhpcy5sb2NhdGlvbkNvb3JkaW5hdGUodCkscz1bYS54KnRoaXMud29ybGRTaXplLGEueSp0aGlzLndvcmxkU2l6ZSxpLDFdO3JldHVybiBlLmFmKHMscyx0aGlzLm1vZGVsVmlld1Byb2plY3Rpb25NYXRyaXgpLHNbMl0vc1szXX19ZnVuY3Rpb24gSWEodCxlKXtsZXQgaSxhPSExLHM9bnVsbCxvPW51bGw7Y29uc3Qgcj0oKT0+e3M9bnVsbCxhJiYodC5hcHBseShvLGkpLHM9c2V0VGltZW91dChyLGUpLGE9ITEpO307cmV0dXJuICguLi50KT0+KGE9ITAsbz10aGlzLGk9dCxzfHxyKCkscyl9Y2xhc3MgRWF7Y29uc3RydWN0b3IodCl7dGhpcy5fZ2V0Q3VycmVudEhhc2g9KCk9Pntjb25zdCB0PXdpbmRvdy5sb2NhdGlvbi5oYXNoLnJlcGxhY2UoXCIjXCIsXCJcIik7aWYodGhpcy5faGFzaE5hbWUpe2xldCBlO3JldHVybiB0LnNwbGl0KFwiJlwiKS5tYXAoKHQ9PnQuc3BsaXQoXCI9XCIpKSkuZm9yRWFjaCgodD0+e3RbMF09PT10aGlzLl9oYXNoTmFtZSYmKGU9dCk7fSkpLChlJiZlWzFdfHxcIlwiKS5zcGxpdChcIi9cIil9cmV0dXJuIHQuc3BsaXQoXCIvXCIpfSx0aGlzLl9vbkhhc2hDaGFuZ2U9KCk9Pntjb25zdCB0PXRoaXMuX2dldEN1cnJlbnRIYXNoKCk7aWYodC5sZW5ndGg+PTMmJiF0LnNvbWUoKHQ9PmlzTmFOKHQpKSkpe2NvbnN0IGU9dGhpcy5fbWFwLmRyYWdSb3RhdGUuaXNFbmFibGVkKCkmJnRoaXMuX21hcC50b3VjaFpvb21Sb3RhdGUuaXNFbmFibGVkKCk/Kyh0WzNdfHwwKTp0aGlzLl9tYXAuZ2V0QmVhcmluZygpO3JldHVybiB0aGlzLl9tYXAuanVtcFRvKHtjZW50ZXI6Wyt0WzJdLCt0WzFdXSx6b29tOit0WzBdLGJlYXJpbmc6ZSxwaXRjaDorKHRbNF18fDApfSksITB9cmV0dXJuICExfSx0aGlzLl91cGRhdGVIYXNoVW50aHJvdHRsZWQ9KCk9Pntjb25zdCB0PXdpbmRvdy5sb2NhdGlvbi5ocmVmLnJlcGxhY2UoLygjLiopPyQvLHRoaXMuZ2V0SGFzaFN0cmluZygpKTt3aW5kb3cuaGlzdG9yeS5yZXBsYWNlU3RhdGUod2luZG93Lmhpc3Rvcnkuc3RhdGUsbnVsbCx0KTt9LHRoaXMuX3JlbW92ZUhhc2g9KCk9Pntjb25zdCB0PXRoaXMuX2dldEN1cnJlbnRIYXNoKCk7aWYoMD09PXQubGVuZ3RoKXJldHVybjtjb25zdCBlPXQuam9pbihcIi9cIik7bGV0IGk9ZTtpLnNwbGl0KFwiJlwiKS5sZW5ndGg+MCYmKGk9aS5zcGxpdChcIiZcIilbMF0pLHRoaXMuX2hhc2hOYW1lJiYoaT1gJHt0aGlzLl9oYXNoTmFtZX09JHtlfWApO2xldCBhPXdpbmRvdy5sb2NhdGlvbi5oYXNoLnJlcGxhY2UoaSxcIlwiKTthLnN0YXJ0c1dpdGgoXCIjJlwiKT9hPWEuc2xpY2UoMCwxKSthLnNsaWNlKDIpOlwiI1wiPT09YSYmKGE9XCJcIik7bGV0IHM9d2luZG93LmxvY2F0aW9uLmhyZWYucmVwbGFjZSgvKCMuKyk/JC8sYSk7cz1zLnJlcGxhY2UoXCImJlwiLFwiJlwiKSx3aW5kb3cuaGlzdG9yeS5yZXBsYWNlU3RhdGUod2luZG93Lmhpc3Rvcnkuc3RhdGUsbnVsbCxzKTt9LHRoaXMuX3VwZGF0ZUhhc2g9SWEodGhpcy5fdXBkYXRlSGFzaFVudGhyb3R0bGVkLDMwMCksdGhpcy5faGFzaE5hbWU9dCYmZW5jb2RlVVJJQ29tcG9uZW50KHQpO31hZGRUbyh0KXtyZXR1cm4gdGhpcy5fbWFwPXQsYWRkRXZlbnRMaXN0ZW5lcihcImhhc2hjaGFuZ2VcIix0aGlzLl9vbkhhc2hDaGFuZ2UsITEpLHRoaXMuX21hcC5vbihcIm1vdmVlbmRcIix0aGlzLl91cGRhdGVIYXNoKSx0aGlzfXJlbW92ZSgpe3JldHVybiByZW1vdmVFdmVudExpc3RlbmVyKFwiaGFzaGNoYW5nZVwiLHRoaXMuX29uSGFzaENoYW5nZSwhMSksdGhpcy5fbWFwLm9mZihcIm1vdmVlbmRcIix0aGlzLl91cGRhdGVIYXNoKSxjbGVhclRpbWVvdXQodGhpcy5fdXBkYXRlSGFzaCgpKSx0aGlzLl9yZW1vdmVIYXNoKCksZGVsZXRlIHRoaXMuX21hcCx0aGlzfWdldEhhc2hTdHJpbmcodCl7Y29uc3QgZT10aGlzLl9tYXAuZ2V0Q2VudGVyKCksaT1NYXRoLnJvdW5kKDEwMCp0aGlzLl9tYXAuZ2V0Wm9vbSgpKS8xMDAsYT1NYXRoLmNlaWwoKGkqTWF0aC5MTjIrTWF0aC5sb2coNTEyLzM2MC8uNSkpL01hdGguTE4xMCkscz1NYXRoLnBvdygxMCxhKSxvPU1hdGgucm91bmQoZS5sbmcqcykvcyxyPU1hdGgucm91bmQoZS5sYXQqcykvcyxuPXRoaXMuX21hcC5nZXRCZWFyaW5nKCksbD10aGlzLl9tYXAuZ2V0UGl0Y2goKTtsZXQgaD1cIlwiO2lmKGgrPXQ/YC8ke299LyR7cn0vJHtpfWA6YCR7aX0vJHtyfS8ke299YCwobnx8bCkmJihoKz1cIi9cIitNYXRoLnJvdW5kKDEwKm4pLzEwKSxsJiYoaCs9YC8ke01hdGgucm91bmQobCl9YCksdGhpcy5faGFzaE5hbWUpe2NvbnN0IHQ9dGhpcy5faGFzaE5hbWU7bGV0IGU9ITE7Y29uc3QgaT13aW5kb3cubG9jYXRpb24uaGFzaC5zbGljZSgxKS5zcGxpdChcIiZcIikubWFwKChpPT57Y29uc3QgYT1pLnNwbGl0KFwiPVwiKVswXTtyZXR1cm4gYT09PXQ/KGU9ITAsYCR7YX09JHtofWApOml9KSkuZmlsdGVyKCh0PT50KSk7cmV0dXJuIGV8fGkucHVzaChgJHt0fT0ke2h9YCksYCMke2kuam9pbihcIiZcIil9YH1yZXR1cm4gYCMke2h9YH19Y29uc3QgUGE9e2xpbmVhcml0eTouMyxlYXNpbmc6ZS5iOCgwLDAsLjMsMSl9LENhPWUuZSh7ZGVjZWxlcmF0aW9uOjI1MDAsbWF4U3BlZWQ6MTQwMH0sUGEpLFNhPWUuZSh7ZGVjZWxlcmF0aW9uOjIwLG1heFNwZWVkOjE0MDB9LFBhKSx6YT1lLmUoe2RlY2VsZXJhdGlvbjoxZTMsbWF4U3BlZWQ6MzYwfSxQYSksRGE9ZS5lKHtkZWNlbGVyYXRpb246MWUzLG1heFNwZWVkOjkwfSxQYSk7Y2xhc3MgTWF7Y29uc3RydWN0b3IodCl7dGhpcy5fbWFwPXQsdGhpcy5jbGVhcigpO31jbGVhcigpe3RoaXMuX2luZXJ0aWFCdWZmZXI9W107fXJlY29yZCh0KXt0aGlzLl9kcmFpbkluZXJ0aWFCdWZmZXIoKSx0aGlzLl9pbmVydGlhQnVmZmVyLnB1c2goe3RpbWU6by5ub3coKSxzZXR0aW5nczp0fSk7fV9kcmFpbkluZXJ0aWFCdWZmZXIoKXtjb25zdCB0PXRoaXMuX2luZXJ0aWFCdWZmZXIsZT1vLm5vdygpO2Zvcig7dC5sZW5ndGg+MCYmZS10WzBdLnRpbWU+MTYwOyl0LnNoaWZ0KCk7fV9vbk1vdmVFbmQodCl7aWYodGhpcy5fZHJhaW5JbmVydGlhQnVmZmVyKCksdGhpcy5faW5lcnRpYUJ1ZmZlci5sZW5ndGg8MilyZXR1cm47Y29uc3QgaT17em9vbTowLGJlYXJpbmc6MCxwaXRjaDowLHBhbjpuZXcgZS5QKDAsMCkscGluY2hBcm91bmQ6dm9pZCAwLGFyb3VuZDp2b2lkIDB9O2Zvcihjb25zdHtzZXR0aW5nczp0fW9mIHRoaXMuX2luZXJ0aWFCdWZmZXIpaS56b29tKz10Lnpvb21EZWx0YXx8MCxpLmJlYXJpbmcrPXQuYmVhcmluZ0RlbHRhfHwwLGkucGl0Y2grPXQucGl0Y2hEZWx0YXx8MCx0LnBhbkRlbHRhJiZpLnBhbi5fYWRkKHQucGFuRGVsdGEpLHQuYXJvdW5kJiYoaS5hcm91bmQ9dC5hcm91bmQpLHQucGluY2hBcm91bmQmJihpLnBpbmNoQXJvdW5kPXQucGluY2hBcm91bmQpO2NvbnN0IGE9dGhpcy5faW5lcnRpYUJ1ZmZlclt0aGlzLl9pbmVydGlhQnVmZmVyLmxlbmd0aC0xXS50aW1lLXRoaXMuX2luZXJ0aWFCdWZmZXJbMF0udGltZSxzPXt9O2lmKGkucGFuLm1hZygpKXtjb25zdCBvPVJhKGkucGFuLm1hZygpLGEsZS5lKHt9LENhLHR8fHt9KSk7cy5vZmZzZXQ9aS5wYW4ubXVsdChvLmFtb3VudC9pLnBhbi5tYWcoKSkscy5jZW50ZXI9dGhpcy5fbWFwLnRyYW5zZm9ybS5jZW50ZXIsQWEocyxvKTt9aWYoaS56b29tKXtjb25zdCB0PVJhKGkuem9vbSxhLFNhKTtzLnpvb209dGhpcy5fbWFwLnRyYW5zZm9ybS56b29tK3QuYW1vdW50LEFhKHMsdCk7fWlmKGkuYmVhcmluZyl7Y29uc3QgdD1SYShpLmJlYXJpbmcsYSx6YSk7cy5iZWFyaW5nPXRoaXMuX21hcC50cmFuc2Zvcm0uYmVhcmluZytlLmFjKHQuYW1vdW50LC0xNzksMTc5KSxBYShzLHQpO31pZihpLnBpdGNoKXtjb25zdCB0PVJhKGkucGl0Y2gsYSxEYSk7cy5waXRjaD10aGlzLl9tYXAudHJhbnNmb3JtLnBpdGNoK3QuYW1vdW50LEFhKHMsdCk7fWlmKHMuem9vbXx8cy5iZWFyaW5nKXtjb25zdCB0PXZvaWQgMD09PWkucGluY2hBcm91bmQ/aS5hcm91bmQ6aS5waW5jaEFyb3VuZDtzLmFyb3VuZD10P3RoaXMuX21hcC51bnByb2plY3QodCk6dGhpcy5fbWFwLmdldENlbnRlcigpO31yZXR1cm4gdGhpcy5jbGVhcigpLGUuZShzLHtub01vdmVTdGFydDohMH0pfX1mdW5jdGlvbiBBYSh0LGUpeyghdC5kdXJhdGlvbnx8dC5kdXJhdGlvbjxlLmR1cmF0aW9uKSYmKHQuZHVyYXRpb249ZS5kdXJhdGlvbix0LmVhc2luZz1lLmVhc2luZyk7fWZ1bmN0aW9uIFJhKHQsaSxhKXtjb25zdHttYXhTcGVlZDpzLGxpbmVhcml0eTpvLGRlY2VsZXJhdGlvbjpyfT1hLG49ZS5hYyh0Km8vKGkvMWUzKSwtcyxzKSxsPU1hdGguYWJzKG4pLyhyKm8pO3JldHVybiB7ZWFzaW5nOmEuZWFzaW5nLGR1cmF0aW9uOjFlMypsLGFtb3VudDpuKihsLzIpfX1jbGFzcyBrYSBleHRlbmRzIGUua3twcmV2ZW50RGVmYXVsdCgpe3RoaXMuX2RlZmF1bHRQcmV2ZW50ZWQ9ITA7fWdldCBkZWZhdWx0UHJldmVudGVkKCl7cmV0dXJuIHRoaXMuX2RlZmF1bHRQcmV2ZW50ZWR9Y29uc3RydWN0b3IodCxpLGEscz17fSl7Y29uc3Qgbz1yLm1vdXNlUG9zKGkuZ2V0Q2FudmFzKCksYSksbj1pLnVucHJvamVjdChvKTtzdXBlcih0LGUuZSh7cG9pbnQ6byxsbmdMYXQ6bixvcmlnaW5hbEV2ZW50OmF9LHMpKSx0aGlzLl9kZWZhdWx0UHJldmVudGVkPSExLHRoaXMudGFyZ2V0PWk7fX1jbGFzcyBMYSBleHRlbmRzIGUua3twcmV2ZW50RGVmYXVsdCgpe3RoaXMuX2RlZmF1bHRQcmV2ZW50ZWQ9ITA7fWdldCBkZWZhdWx0UHJldmVudGVkKCl7cmV0dXJuIHRoaXMuX2RlZmF1bHRQcmV2ZW50ZWR9Y29uc3RydWN0b3IodCxpLGEpe2NvbnN0IHM9XCJ0b3VjaGVuZFwiPT09dD9hLmNoYW5nZWRUb3VjaGVzOmEudG91Y2hlcyxvPXIudG91Y2hQb3MoaS5nZXRDYW52YXNDb250YWluZXIoKSxzKSxuPW8ubWFwKCh0PT5pLnVucHJvamVjdCh0KSkpLGw9by5yZWR1Y2UoKCh0LGUsaSxhKT0+dC5hZGQoZS5kaXYoYS5sZW5ndGgpKSksbmV3IGUuUCgwLDApKTtzdXBlcih0LHtwb2ludHM6byxwb2ludDpsLGxuZ0xhdHM6bixsbmdMYXQ6aS51bnByb2plY3QobCksb3JpZ2luYWxFdmVudDphfSksdGhpcy5fZGVmYXVsdFByZXZlbnRlZD0hMTt9fWNsYXNzIEZhIGV4dGVuZHMgZS5re3ByZXZlbnREZWZhdWx0KCl7dGhpcy5fZGVmYXVsdFByZXZlbnRlZD0hMDt9Z2V0IGRlZmF1bHRQcmV2ZW50ZWQoKXtyZXR1cm4gdGhpcy5fZGVmYXVsdFByZXZlbnRlZH1jb25zdHJ1Y3Rvcih0LGUsaSl7c3VwZXIodCx7b3JpZ2luYWxFdmVudDppfSksdGhpcy5fZGVmYXVsdFByZXZlbnRlZD0hMTt9fWNsYXNzIEJhe2NvbnN0cnVjdG9yKHQsZSl7dGhpcy5fbWFwPXQsdGhpcy5fY2xpY2tUb2xlcmFuY2U9ZS5jbGlja1RvbGVyYW5jZTt9cmVzZXQoKXtkZWxldGUgdGhpcy5fbW91c2Vkb3duUG9zO313aGVlbCh0KXtyZXR1cm4gdGhpcy5fZmlyZVByZXZlbnRhYmxlKG5ldyBGYSh0LnR5cGUsdGhpcy5fbWFwLHQpKX1tb3VzZWRvd24odCxlKXtyZXR1cm4gdGhpcy5fbW91c2Vkb3duUG9zPWUsdGhpcy5fZmlyZVByZXZlbnRhYmxlKG5ldyBrYSh0LnR5cGUsdGhpcy5fbWFwLHQpKX1tb3VzZXVwKHQpe3RoaXMuX21hcC5maXJlKG5ldyBrYSh0LnR5cGUsdGhpcy5fbWFwLHQpKTt9Y2xpY2sodCxlKXt0aGlzLl9tb3VzZWRvd25Qb3MmJnRoaXMuX21vdXNlZG93blBvcy5kaXN0KGUpPj10aGlzLl9jbGlja1RvbGVyYW5jZXx8dGhpcy5fbWFwLmZpcmUobmV3IGthKHQudHlwZSx0aGlzLl9tYXAsdCkpO31kYmxjbGljayh0KXtyZXR1cm4gdGhpcy5fZmlyZVByZXZlbnRhYmxlKG5ldyBrYSh0LnR5cGUsdGhpcy5fbWFwLHQpKX1tb3VzZW92ZXIodCl7dGhpcy5fbWFwLmZpcmUobmV3IGthKHQudHlwZSx0aGlzLl9tYXAsdCkpO31tb3VzZW91dCh0KXt0aGlzLl9tYXAuZmlyZShuZXcga2EodC50eXBlLHRoaXMuX21hcCx0KSk7fXRvdWNoc3RhcnQodCl7cmV0dXJuIHRoaXMuX2ZpcmVQcmV2ZW50YWJsZShuZXcgTGEodC50eXBlLHRoaXMuX21hcCx0KSl9dG91Y2htb3ZlKHQpe3RoaXMuX21hcC5maXJlKG5ldyBMYSh0LnR5cGUsdGhpcy5fbWFwLHQpKTt9dG91Y2hlbmQodCl7dGhpcy5fbWFwLmZpcmUobmV3IExhKHQudHlwZSx0aGlzLl9tYXAsdCkpO310b3VjaGNhbmNlbCh0KXt0aGlzLl9tYXAuZmlyZShuZXcgTGEodC50eXBlLHRoaXMuX21hcCx0KSk7fV9maXJlUHJldmVudGFibGUodCl7aWYodGhpcy5fbWFwLmZpcmUodCksdC5kZWZhdWx0UHJldmVudGVkKXJldHVybiB7fX1pc0VuYWJsZWQoKXtyZXR1cm4gITB9aXNBY3RpdmUoKXtyZXR1cm4gITF9ZW5hYmxlKCl7fWRpc2FibGUoKXt9fWNsYXNzIE9he2NvbnN0cnVjdG9yKHQpe3RoaXMuX21hcD10O31yZXNldCgpe3RoaXMuX2RlbGF5Q29udGV4dE1lbnU9ITEsdGhpcy5faWdub3JlQ29udGV4dE1lbnU9ITAsZGVsZXRlIHRoaXMuX2NvbnRleHRNZW51RXZlbnQ7fW1vdXNlbW92ZSh0KXt0aGlzLl9tYXAuZmlyZShuZXcga2EodC50eXBlLHRoaXMuX21hcCx0KSk7fW1vdXNlZG93bigpe3RoaXMuX2RlbGF5Q29udGV4dE1lbnU9ITAsdGhpcy5faWdub3JlQ29udGV4dE1lbnU9ITE7fW1vdXNldXAoKXt0aGlzLl9kZWxheUNvbnRleHRNZW51PSExLHRoaXMuX2NvbnRleHRNZW51RXZlbnQmJih0aGlzLl9tYXAuZmlyZShuZXcga2EoXCJjb250ZXh0bWVudVwiLHRoaXMuX21hcCx0aGlzLl9jb250ZXh0TWVudUV2ZW50KSksZGVsZXRlIHRoaXMuX2NvbnRleHRNZW51RXZlbnQpO31jb250ZXh0bWVudSh0KXt0aGlzLl9kZWxheUNvbnRleHRNZW51P3RoaXMuX2NvbnRleHRNZW51RXZlbnQ9dDp0aGlzLl9pZ25vcmVDb250ZXh0TWVudXx8dGhpcy5fbWFwLmZpcmUobmV3IGthKHQudHlwZSx0aGlzLl9tYXAsdCkpLHRoaXMuX21hcC5saXN0ZW5zKFwiY29udGV4dG1lbnVcIikmJnQucHJldmVudERlZmF1bHQoKTt9aXNFbmFibGVkKCl7cmV0dXJuICEwfWlzQWN0aXZlKCl7cmV0dXJuICExfWVuYWJsZSgpe31kaXNhYmxlKCl7fX1jbGFzcyBOYXtjb25zdHJ1Y3Rvcih0KXt0aGlzLl9tYXA9dDt9Z2V0IHRyYW5zZm9ybSgpe3JldHVybiB0aGlzLl9tYXAuX3JlcXVlc3RlZENhbWVyYVN0YXRlfHx0aGlzLl9tYXAudHJhbnNmb3JtfWdldCBjZW50ZXIoKXtyZXR1cm4ge2xuZzp0aGlzLnRyYW5zZm9ybS5jZW50ZXIubG5nLGxhdDp0aGlzLnRyYW5zZm9ybS5jZW50ZXIubGF0fX1nZXQgem9vbSgpe3JldHVybiB0aGlzLnRyYW5zZm9ybS56b29tfWdldCBwaXRjaCgpe3JldHVybiB0aGlzLnRyYW5zZm9ybS5waXRjaH1nZXQgYmVhcmluZygpe3JldHVybiB0aGlzLnRyYW5zZm9ybS5iZWFyaW5nfXVucHJvamVjdCh0KXtyZXR1cm4gdGhpcy50cmFuc2Zvcm0ucG9pbnRMb2NhdGlvbihlLlAuY29udmVydCh0KSx0aGlzLl9tYXAudGVycmFpbil9fWNsYXNzIFVhe2NvbnN0cnVjdG9yKHQsZSl7dGhpcy5fbWFwPXQsdGhpcy5fdHI9bmV3IE5hKHQpLHRoaXMuX2VsPXQuZ2V0Q2FudmFzQ29udGFpbmVyKCksdGhpcy5fY29udGFpbmVyPXQuZ2V0Q29udGFpbmVyKCksdGhpcy5fY2xpY2tUb2xlcmFuY2U9ZS5jbGlja1RvbGVyYW5jZXx8MTt9aXNFbmFibGVkKCl7cmV0dXJuICEhdGhpcy5fZW5hYmxlZH1pc0FjdGl2ZSgpe3JldHVybiAhIXRoaXMuX2FjdGl2ZX1lbmFibGUoKXt0aGlzLmlzRW5hYmxlZCgpfHwodGhpcy5fZW5hYmxlZD0hMCk7fWRpc2FibGUoKXt0aGlzLmlzRW5hYmxlZCgpJiYodGhpcy5fZW5hYmxlZD0hMSk7fW1vdXNlZG93bih0LGUpe3RoaXMuaXNFbmFibGVkKCkmJnQuc2hpZnRLZXkmJjA9PT10LmJ1dHRvbiYmKHIuZGlzYWJsZURyYWcoKSx0aGlzLl9zdGFydFBvcz10aGlzLl9sYXN0UG9zPWUsdGhpcy5fYWN0aXZlPSEwKTt9bW91c2Vtb3ZlV2luZG93KHQsZSl7aWYoIXRoaXMuX2FjdGl2ZSlyZXR1cm47Y29uc3QgaT1lO2lmKHRoaXMuX2xhc3RQb3MuZXF1YWxzKGkpfHwhdGhpcy5fYm94JiZpLmRpc3QodGhpcy5fc3RhcnRQb3MpPHRoaXMuX2NsaWNrVG9sZXJhbmNlKXJldHVybjtjb25zdCBhPXRoaXMuX3N0YXJ0UG9zO3RoaXMuX2xhc3RQb3M9aSx0aGlzLl9ib3h8fCh0aGlzLl9ib3g9ci5jcmVhdGUoXCJkaXZcIixcIm1hcGxpYnJlZ2wtYm94em9vbVwiLHRoaXMuX2NvbnRhaW5lciksdGhpcy5fY29udGFpbmVyLmNsYXNzTGlzdC5hZGQoXCJtYXBsaWJyZWdsLWNyb3NzaGFpclwiKSx0aGlzLl9maXJlRXZlbnQoXCJib3h6b29tc3RhcnRcIix0KSk7Y29uc3Qgcz1NYXRoLm1pbihhLngsaS54KSxvPU1hdGgubWF4KGEueCxpLngpLG49TWF0aC5taW4oYS55LGkueSksbD1NYXRoLm1heChhLnksaS55KTtyLnNldFRyYW5zZm9ybSh0aGlzLl9ib3gsYHRyYW5zbGF0ZSgke3N9cHgsJHtufXB4KWApLHRoaXMuX2JveC5zdHlsZS53aWR0aD1vLXMrXCJweFwiLHRoaXMuX2JveC5zdHlsZS5oZWlnaHQ9bC1uK1wicHhcIjt9bW91c2V1cFdpbmRvdyh0LGkpe2lmKCF0aGlzLl9hY3RpdmUpcmV0dXJuO2lmKDAhPT10LmJ1dHRvbilyZXR1cm47Y29uc3QgYT10aGlzLl9zdGFydFBvcyxzPWk7aWYodGhpcy5yZXNldCgpLHIuc3VwcHJlc3NDbGljaygpLGEueCE9PXMueHx8YS55IT09cy55KXJldHVybiB0aGlzLl9tYXAuZmlyZShuZXcgZS5rKFwiYm94em9vbWVuZFwiLHtvcmlnaW5hbEV2ZW50OnR9KSkse2NhbWVyYUFuaW1hdGlvbjp0PT50LmZpdFNjcmVlbkNvb3JkaW5hdGVzKGEscyx0aGlzLl90ci5iZWFyaW5nLHtsaW5lYXI6ITB9KX07dGhpcy5fZmlyZUV2ZW50KFwiYm94em9vbWNhbmNlbFwiLHQpO31rZXlkb3duKHQpe3RoaXMuX2FjdGl2ZSYmMjc9PT10LmtleUNvZGUmJih0aGlzLnJlc2V0KCksdGhpcy5fZmlyZUV2ZW50KFwiYm94em9vbWNhbmNlbFwiLHQpKTt9cmVzZXQoKXt0aGlzLl9hY3RpdmU9ITEsdGhpcy5fY29udGFpbmVyLmNsYXNzTGlzdC5yZW1vdmUoXCJtYXBsaWJyZWdsLWNyb3NzaGFpclwiKSx0aGlzLl9ib3gmJihyLnJlbW92ZSh0aGlzLl9ib3gpLHRoaXMuX2JveD1udWxsKSxyLmVuYWJsZURyYWcoKSxkZWxldGUgdGhpcy5fc3RhcnRQb3MsZGVsZXRlIHRoaXMuX2xhc3RQb3M7fV9maXJlRXZlbnQodCxpKXtyZXR1cm4gdGhpcy5fbWFwLmZpcmUobmV3IGUuayh0LHtvcmlnaW5hbEV2ZW50Oml9KSl9fWZ1bmN0aW9uIGphKHQsZSl7aWYodC5sZW5ndGghPT1lLmxlbmd0aCl0aHJvdyBuZXcgRXJyb3IoYFRoZSBudW1iZXIgb2YgdG91Y2hlcyBhbmQgcG9pbnRzIGFyZSBub3QgZXF1YWwgLSB0b3VjaGVzICR7dC5sZW5ndGh9LCBwb2ludHMgJHtlLmxlbmd0aH1gKTtjb25zdCBpPXt9O2ZvcihsZXQgYT0wO2E8dC5sZW5ndGg7YSsrKWlbdFthXS5pZGVudGlmaWVyXT1lW2FdO3JldHVybiBpfWNsYXNzIFphe2NvbnN0cnVjdG9yKHQpe3RoaXMucmVzZXQoKSx0aGlzLm51bVRvdWNoZXM9dC5udW1Ub3VjaGVzO31yZXNldCgpe2RlbGV0ZSB0aGlzLmNlbnRyb2lkLGRlbGV0ZSB0aGlzLnN0YXJ0VGltZSxkZWxldGUgdGhpcy50b3VjaGVzLHRoaXMuYWJvcnRlZD0hMTt9dG91Y2hzdGFydCh0LGksYSl7KHRoaXMuY2VudHJvaWR8fGEubGVuZ3RoPnRoaXMubnVtVG91Y2hlcykmJih0aGlzLmFib3J0ZWQ9ITApLHRoaXMuYWJvcnRlZHx8KHZvaWQgMD09PXRoaXMuc3RhcnRUaW1lJiYodGhpcy5zdGFydFRpbWU9dC50aW1lU3RhbXApLGEubGVuZ3RoPT09dGhpcy5udW1Ub3VjaGVzJiYodGhpcy5jZW50cm9pZD1mdW5jdGlvbih0KXtjb25zdCBpPW5ldyBlLlAoMCwwKTtmb3IoY29uc3QgZSBvZiB0KWkuX2FkZChlKTtyZXR1cm4gaS5kaXYodC5sZW5ndGgpfShpKSx0aGlzLnRvdWNoZXM9amEoYSxpKSkpO310b3VjaG1vdmUodCxlLGkpe2lmKHRoaXMuYWJvcnRlZHx8IXRoaXMuY2VudHJvaWQpcmV0dXJuO2NvbnN0IGE9amEoaSxlKTtmb3IoY29uc3QgdCBpbiB0aGlzLnRvdWNoZXMpe2NvbnN0IGU9YVt0XTsoIWV8fGUuZGlzdCh0aGlzLnRvdWNoZXNbdF0pPjMwKSYmKHRoaXMuYWJvcnRlZD0hMCk7fX10b3VjaGVuZCh0LGUsaSl7aWYoKCF0aGlzLmNlbnRyb2lkfHx0LnRpbWVTdGFtcC10aGlzLnN0YXJ0VGltZT41MDApJiYodGhpcy5hYm9ydGVkPSEwKSwwPT09aS5sZW5ndGgpe2NvbnN0IHQ9IXRoaXMuYWJvcnRlZCYmdGhpcy5jZW50cm9pZDtpZih0aGlzLnJlc2V0KCksdClyZXR1cm4gdH19fWNsYXNzIHFhe2NvbnN0cnVjdG9yKHQpe3RoaXMuc2luZ2xlVGFwPW5ldyBaYSh0KSx0aGlzLm51bVRhcHM9dC5udW1UYXBzLHRoaXMucmVzZXQoKTt9cmVzZXQoKXt0aGlzLmxhc3RUaW1lPTEvMCxkZWxldGUgdGhpcy5sYXN0VGFwLHRoaXMuY291bnQ9MCx0aGlzLnNpbmdsZVRhcC5yZXNldCgpO310b3VjaHN0YXJ0KHQsZSxpKXt0aGlzLnNpbmdsZVRhcC50b3VjaHN0YXJ0KHQsZSxpKTt9dG91Y2htb3ZlKHQsZSxpKXt0aGlzLnNpbmdsZVRhcC50b3VjaG1vdmUodCxlLGkpO310b3VjaGVuZCh0LGUsaSl7Y29uc3QgYT10aGlzLnNpbmdsZVRhcC50b3VjaGVuZCh0LGUsaSk7aWYoYSl7Y29uc3QgZT10LnRpbWVTdGFtcC10aGlzLmxhc3RUaW1lPDUwMCxpPSF0aGlzLmxhc3RUYXB8fHRoaXMubGFzdFRhcC5kaXN0KGEpPDMwO2lmKGUmJml8fHRoaXMucmVzZXQoKSx0aGlzLmNvdW50KyssdGhpcy5sYXN0VGltZT10LnRpbWVTdGFtcCx0aGlzLmxhc3RUYXA9YSx0aGlzLmNvdW50PT09dGhpcy5udW1UYXBzKXJldHVybiB0aGlzLnJlc2V0KCksYX19fWNsYXNzIFZhe2NvbnN0cnVjdG9yKHQpe3RoaXMuX3RyPW5ldyBOYSh0KSx0aGlzLl96b29tSW49bmV3IHFhKHtudW1Ub3VjaGVzOjEsbnVtVGFwczoyfSksdGhpcy5fem9vbU91dD1uZXcgcWEoe251bVRvdWNoZXM6MixudW1UYXBzOjF9KSx0aGlzLnJlc2V0KCk7fXJlc2V0KCl7dGhpcy5fYWN0aXZlPSExLHRoaXMuX3pvb21Jbi5yZXNldCgpLHRoaXMuX3pvb21PdXQucmVzZXQoKTt9dG91Y2hzdGFydCh0LGUsaSl7dGhpcy5fem9vbUluLnRvdWNoc3RhcnQodCxlLGkpLHRoaXMuX3pvb21PdXQudG91Y2hzdGFydCh0LGUsaSk7fXRvdWNobW92ZSh0LGUsaSl7dGhpcy5fem9vbUluLnRvdWNobW92ZSh0LGUsaSksdGhpcy5fem9vbU91dC50b3VjaG1vdmUodCxlLGkpO310b3VjaGVuZCh0LGUsaSl7Y29uc3QgYT10aGlzLl96b29tSW4udG91Y2hlbmQodCxlLGkpLHM9dGhpcy5fem9vbU91dC50b3VjaGVuZCh0LGUsaSksbz10aGlzLl90cjtyZXR1cm4gYT8odGhpcy5fYWN0aXZlPSEwLHQucHJldmVudERlZmF1bHQoKSxzZXRUaW1lb3V0KCgoKT0+dGhpcy5yZXNldCgpKSwwKSx7Y2FtZXJhQW5pbWF0aW9uOmU9PmUuZWFzZVRvKHtkdXJhdGlvbjozMDAsem9vbTpvLnpvb20rMSxhcm91bmQ6by51bnByb2plY3QoYSl9LHtvcmlnaW5hbEV2ZW50OnR9KX0pOnM/KHRoaXMuX2FjdGl2ZT0hMCx0LnByZXZlbnREZWZhdWx0KCksc2V0VGltZW91dCgoKCk9PnRoaXMucmVzZXQoKSksMCkse2NhbWVyYUFuaW1hdGlvbjplPT5lLmVhc2VUbyh7ZHVyYXRpb246MzAwLHpvb206by56b29tLTEsYXJvdW5kOm8udW5wcm9qZWN0KHMpfSx7b3JpZ2luYWxFdmVudDp0fSl9KTp2b2lkIDB9dG91Y2hjYW5jZWwoKXt0aGlzLnJlc2V0KCk7fWVuYWJsZSgpe3RoaXMuX2VuYWJsZWQ9ITA7fWRpc2FibGUoKXt0aGlzLl9lbmFibGVkPSExLHRoaXMucmVzZXQoKTt9aXNFbmFibGVkKCl7cmV0dXJuIHRoaXMuX2VuYWJsZWR9aXNBY3RpdmUoKXtyZXR1cm4gdGhpcy5fYWN0aXZlfX1jbGFzcyBHYXtjb25zdHJ1Y3Rvcih0KXt0aGlzLl9lbmFibGVkPSEhdC5lbmFibGUsdGhpcy5fbW92ZVN0YXRlTWFuYWdlcj10Lm1vdmVTdGF0ZU1hbmFnZXIsdGhpcy5fY2xpY2tUb2xlcmFuY2U9dC5jbGlja1RvbGVyYW5jZXx8MSx0aGlzLl9tb3ZlRnVuY3Rpb249dC5tb3ZlLHRoaXMuX2FjdGl2YXRlT25TdGFydD0hIXQuYWN0aXZhdGVPblN0YXJ0LHQuYXNzaWduRXZlbnRzKHRoaXMpLHRoaXMucmVzZXQoKTt9cmVzZXQodCl7dGhpcy5fYWN0aXZlPSExLHRoaXMuX21vdmVkPSExLGRlbGV0ZSB0aGlzLl9sYXN0UG9pbnQsdGhpcy5fbW92ZVN0YXRlTWFuYWdlci5lbmRNb3ZlKHQpO31fbW92ZSguLi50KXtjb25zdCBlPXRoaXMuX21vdmVGdW5jdGlvbiguLi50KTtpZihlLmJlYXJpbmdEZWx0YXx8ZS5waXRjaERlbHRhfHxlLmFyb3VuZHx8ZS5wYW5EZWx0YSlyZXR1cm4gdGhpcy5fYWN0aXZlPSEwLGV9ZHJhZ1N0YXJ0KHQsZSl7dGhpcy5pc0VuYWJsZWQoKSYmIXRoaXMuX2xhc3RQb2ludCYmdGhpcy5fbW92ZVN0YXRlTWFuYWdlci5pc1ZhbGlkU3RhcnRFdmVudCh0KSYmKHRoaXMuX21vdmVTdGF0ZU1hbmFnZXIuc3RhcnRNb3ZlKHQpLHRoaXMuX2xhc3RQb2ludD1lLmxlbmd0aD9lWzBdOmUsdGhpcy5fYWN0aXZhdGVPblN0YXJ0JiZ0aGlzLl9sYXN0UG9pbnQmJih0aGlzLl9hY3RpdmU9ITApKTt9ZHJhZ01vdmUodCxlKXtpZighdGhpcy5pc0VuYWJsZWQoKSlyZXR1cm47Y29uc3QgaT10aGlzLl9sYXN0UG9pbnQ7aWYoIWkpcmV0dXJuO2lmKHQucHJldmVudERlZmF1bHQoKSwhdGhpcy5fbW92ZVN0YXRlTWFuYWdlci5pc1ZhbGlkTW92ZUV2ZW50KHQpKXJldHVybiB2b2lkIHRoaXMucmVzZXQodCk7Y29uc3QgYT1lLmxlbmd0aD9lWzBdOmU7cmV0dXJuICF0aGlzLl9tb3ZlZCYmYS5kaXN0KGkpPHRoaXMuX2NsaWNrVG9sZXJhbmNlP3ZvaWQgMDoodGhpcy5fbW92ZWQ9ITAsdGhpcy5fbGFzdFBvaW50PWEsdGhpcy5fbW92ZShpLGEpKX1kcmFnRW5kKHQpe3RoaXMuaXNFbmFibGVkKCkmJnRoaXMuX2xhc3RQb2ludCYmdGhpcy5fbW92ZVN0YXRlTWFuYWdlci5pc1ZhbGlkRW5kRXZlbnQodCkmJih0aGlzLl9tb3ZlZCYmci5zdXBwcmVzc0NsaWNrKCksdGhpcy5yZXNldCh0KSk7fWVuYWJsZSgpe3RoaXMuX2VuYWJsZWQ9ITA7fWRpc2FibGUoKXt0aGlzLl9lbmFibGVkPSExLHRoaXMucmVzZXQoKTt9aXNFbmFibGVkKCl7cmV0dXJuIHRoaXMuX2VuYWJsZWR9aXNBY3RpdmUoKXtyZXR1cm4gdGhpcy5fYWN0aXZlfWdldENsaWNrVG9sZXJhbmNlKCl7cmV0dXJuIHRoaXMuX2NsaWNrVG9sZXJhbmNlfX1jb25zdCBIYT17MDoxLDI6Mn07Y2xhc3MgV2F7Y29uc3RydWN0b3IodCl7dGhpcy5fY29ycmVjdEV2ZW50PXQuY2hlY2tDb3JyZWN0RXZlbnQ7fXN0YXJ0TW92ZSh0KXtjb25zdCBlPXIubW91c2VCdXR0b24odCk7dGhpcy5fZXZlbnRCdXR0b249ZTt9ZW5kTW92ZSh0KXtkZWxldGUgdGhpcy5fZXZlbnRCdXR0b247fWlzVmFsaWRTdGFydEV2ZW50KHQpe3JldHVybiB0aGlzLl9jb3JyZWN0RXZlbnQodCl9aXNWYWxpZE1vdmVFdmVudCh0KXtyZXR1cm4gIWZ1bmN0aW9uKHQsZSl7Y29uc3QgaT1IYVtlXTtyZXR1cm4gdm9pZCAwPT09dC5idXR0b25zfHwodC5idXR0b25zJmkpIT09aX0odCx0aGlzLl9ldmVudEJ1dHRvbil9aXNWYWxpZEVuZEV2ZW50KHQpe3JldHVybiByLm1vdXNlQnV0dG9uKHQpPT09dGhpcy5fZXZlbnRCdXR0b259fWNsYXNzICRhe2NvbnN0cnVjdG9yKCl7dGhpcy5fZmlyc3RUb3VjaD12b2lkIDA7fV9pc09uZUZpbmdlclRvdWNoKHQpe3JldHVybiAxPT09dC50YXJnZXRUb3VjaGVzLmxlbmd0aH1faXNTYW1lVG91Y2hFdmVudCh0KXtyZXR1cm4gdC50YXJnZXRUb3VjaGVzWzBdLmlkZW50aWZpZXI9PT10aGlzLl9maXJzdFRvdWNofXN0YXJ0TW92ZSh0KXt0aGlzLl9maXJzdFRvdWNoPXQudGFyZ2V0VG91Y2hlc1swXS5pZGVudGlmaWVyO31lbmRNb3ZlKHQpe2RlbGV0ZSB0aGlzLl9maXJzdFRvdWNoO31pc1ZhbGlkU3RhcnRFdmVudCh0KXtyZXR1cm4gdGhpcy5faXNPbmVGaW5nZXJUb3VjaCh0KX1pc1ZhbGlkTW92ZUV2ZW50KHQpe3JldHVybiB0aGlzLl9pc09uZUZpbmdlclRvdWNoKHQpJiZ0aGlzLl9pc1NhbWVUb3VjaEV2ZW50KHQpfWlzVmFsaWRFbmRFdmVudCh0KXtyZXR1cm4gdGhpcy5faXNPbmVGaW5nZXJUb3VjaCh0KSYmdGhpcy5faXNTYW1lVG91Y2hFdmVudCh0KX19Y29uc3QgWGE9dD0+e3QubW91c2Vkb3duPXQuZHJhZ1N0YXJ0LHQubW91c2Vtb3ZlV2luZG93PXQuZHJhZ01vdmUsdC5tb3VzZXVwPXQuZHJhZ0VuZCx0LmNvbnRleHRtZW51PXQ9Pnt0LnByZXZlbnREZWZhdWx0KCk7fTt9LEthPSh7ZW5hYmxlOnQsY2xpY2tUb2xlcmFuY2U6ZSxiZWFyaW5nRGVncmVlc1BlclBpeGVsTW92ZWQ6aT0uOH0pPT57Y29uc3QgYT1uZXcgV2Eoe2NoZWNrQ29ycmVjdEV2ZW50OnQ9PjA9PT1yLm1vdXNlQnV0dG9uKHQpJiZ0LmN0cmxLZXl8fDI9PT1yLm1vdXNlQnV0dG9uKHQpfSk7cmV0dXJuIG5ldyBHYSh7Y2xpY2tUb2xlcmFuY2U6ZSxtb3ZlOih0LGUpPT4oe2JlYXJpbmdEZWx0YTooZS54LXQueCkqaX0pLG1vdmVTdGF0ZU1hbmFnZXI6YSxlbmFibGU6dCxhc3NpZ25FdmVudHM6WGF9KX0sSmE9KHtlbmFibGU6dCxjbGlja1RvbGVyYW5jZTplLHBpdGNoRGVncmVlc1BlclBpeGVsTW92ZWQ6aT0tLjV9KT0+e2NvbnN0IGE9bmV3IFdhKHtjaGVja0NvcnJlY3RFdmVudDp0PT4wPT09ci5tb3VzZUJ1dHRvbih0KSYmdC5jdHJsS2V5fHwyPT09ci5tb3VzZUJ1dHRvbih0KX0pO3JldHVybiBuZXcgR2Eoe2NsaWNrVG9sZXJhbmNlOmUsbW92ZToodCxlKT0+KHtwaXRjaERlbHRhOihlLnktdC55KSppfSksbW92ZVN0YXRlTWFuYWdlcjphLGVuYWJsZTp0LGFzc2lnbkV2ZW50czpYYX0pfTtjbGFzcyBZYXtjb25zdHJ1Y3Rvcih0LGUpe3RoaXMuX2NsaWNrVG9sZXJhbmNlPXQuY2xpY2tUb2xlcmFuY2V8fDEsdGhpcy5fbWFwPWUsdGhpcy5yZXNldCgpO31yZXNldCgpe3RoaXMuX2FjdGl2ZT0hMSx0aGlzLl90b3VjaGVzPXt9LHRoaXMuX3N1bT1uZXcgZS5QKDAsMCk7fV9zaG91bGRCZVByZXZlbnRlZCh0KXtyZXR1cm4gdDwodGhpcy5fbWFwLmNvb3BlcmF0aXZlR2VzdHVyZXMuaXNFbmFibGVkKCk/MjoxKX10b3VjaHN0YXJ0KHQsZSxpKXtyZXR1cm4gdGhpcy5fY2FsY3VsYXRlVHJhbnNmb3JtKHQsZSxpKX10b3VjaG1vdmUodCxlLGkpe2lmKHRoaXMuX2FjdGl2ZSl7aWYoIXRoaXMuX3Nob3VsZEJlUHJldmVudGVkKGkubGVuZ3RoKSlyZXR1cm4gdC5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuX2NhbGN1bGF0ZVRyYW5zZm9ybSh0LGUsaSk7dGhpcy5fbWFwLmNvb3BlcmF0aXZlR2VzdHVyZXMubm90aWZ5R2VzdHVyZUJsb2NrZWQoXCJ0b3VjaF9wYW5cIix0KTt9fXRvdWNoZW5kKHQsZSxpKXt0aGlzLl9jYWxjdWxhdGVUcmFuc2Zvcm0odCxlLGkpLHRoaXMuX2FjdGl2ZSYmdGhpcy5fc2hvdWxkQmVQcmV2ZW50ZWQoaS5sZW5ndGgpJiZ0aGlzLnJlc2V0KCk7fXRvdWNoY2FuY2VsKCl7dGhpcy5yZXNldCgpO31fY2FsY3VsYXRlVHJhbnNmb3JtKHQsaSxhKXthLmxlbmd0aD4wJiYodGhpcy5fYWN0aXZlPSEwKTtjb25zdCBzPWphKGEsaSksbz1uZXcgZS5QKDAsMCkscj1uZXcgZS5QKDAsMCk7bGV0IG49MDtmb3IoY29uc3QgdCBpbiBzKXtjb25zdCBlPXNbdF0saT10aGlzLl90b3VjaGVzW3RdO2kmJihvLl9hZGQoZSksci5fYWRkKGUuc3ViKGkpKSxuKyssc1t0XT1lKTt9aWYodGhpcy5fdG91Y2hlcz1zLHRoaXMuX3Nob3VsZEJlUHJldmVudGVkKG4pfHwhci5tYWcoKSlyZXR1cm47Y29uc3QgbD1yLmRpdihuKTtyZXR1cm4gdGhpcy5fc3VtLl9hZGQobCksdGhpcy5fc3VtLm1hZygpPHRoaXMuX2NsaWNrVG9sZXJhbmNlP3ZvaWQgMDp7YXJvdW5kOm8uZGl2KG4pLHBhbkRlbHRhOmx9fWVuYWJsZSgpe3RoaXMuX2VuYWJsZWQ9ITA7fWRpc2FibGUoKXt0aGlzLl9lbmFibGVkPSExLHRoaXMucmVzZXQoKTt9aXNFbmFibGVkKCl7cmV0dXJuIHRoaXMuX2VuYWJsZWR9aXNBY3RpdmUoKXtyZXR1cm4gdGhpcy5fYWN0aXZlfX1jbGFzcyBRYXtjb25zdHJ1Y3Rvcigpe3RoaXMucmVzZXQoKTt9cmVzZXQoKXt0aGlzLl9hY3RpdmU9ITEsZGVsZXRlIHRoaXMuX2ZpcnN0VHdvVG91Y2hlczt9dG91Y2hzdGFydCh0LGUsaSl7dGhpcy5fZmlyc3RUd29Ub3VjaGVzfHxpLmxlbmd0aDwyfHwodGhpcy5fZmlyc3RUd29Ub3VjaGVzPVtpWzBdLmlkZW50aWZpZXIsaVsxXS5pZGVudGlmaWVyXSx0aGlzLl9zdGFydChbZVswXSxlWzFdXSkpO310b3VjaG1vdmUodCxlLGkpe2lmKCF0aGlzLl9maXJzdFR3b1RvdWNoZXMpcmV0dXJuO3QucHJldmVudERlZmF1bHQoKTtjb25zdFthLHNdPXRoaXMuX2ZpcnN0VHdvVG91Y2hlcyxvPXRzKGksZSxhKSxyPXRzKGksZSxzKTtpZighb3x8IXIpcmV0dXJuO2NvbnN0IG49dGhpcy5fYXJvdW5kQ2VudGVyP251bGw6by5hZGQocikuZGl2KDIpO3JldHVybiB0aGlzLl9tb3ZlKFtvLHJdLG4sdCl9dG91Y2hlbmQodCxlLGkpe2lmKCF0aGlzLl9maXJzdFR3b1RvdWNoZXMpcmV0dXJuO2NvbnN0W2Esc109dGhpcy5fZmlyc3RUd29Ub3VjaGVzLG89dHMoaSxlLGEpLG49dHMoaSxlLHMpO28mJm58fCh0aGlzLl9hY3RpdmUmJnIuc3VwcHJlc3NDbGljaygpLHRoaXMucmVzZXQoKSk7fXRvdWNoY2FuY2VsKCl7dGhpcy5yZXNldCgpO31lbmFibGUodCl7dGhpcy5fZW5hYmxlZD0hMCx0aGlzLl9hcm91bmRDZW50ZXI9ISF0JiZcImNlbnRlclwiPT09dC5hcm91bmQ7fWRpc2FibGUoKXt0aGlzLl9lbmFibGVkPSExLHRoaXMucmVzZXQoKTt9aXNFbmFibGVkKCl7cmV0dXJuICEhdGhpcy5fZW5hYmxlZH1pc0FjdGl2ZSgpe3JldHVybiAhIXRoaXMuX2FjdGl2ZX19ZnVuY3Rpb24gdHModCxlLGkpe2ZvcihsZXQgYT0wO2E8dC5sZW5ndGg7YSsrKWlmKHRbYV0uaWRlbnRpZmllcj09PWkpcmV0dXJuIGVbYV19ZnVuY3Rpb24gZXModCxlKXtyZXR1cm4gTWF0aC5sb2codC9lKS9NYXRoLkxOMn1jbGFzcyBpcyBleHRlbmRzIFFhe3Jlc2V0KCl7c3VwZXIucmVzZXQoKSxkZWxldGUgdGhpcy5fZGlzdGFuY2UsZGVsZXRlIHRoaXMuX3N0YXJ0RGlzdGFuY2U7fV9zdGFydCh0KXt0aGlzLl9zdGFydERpc3RhbmNlPXRoaXMuX2Rpc3RhbmNlPXRbMF0uZGlzdCh0WzFdKTt9X21vdmUodCxlKXtjb25zdCBpPXRoaXMuX2Rpc3RhbmNlO2lmKHRoaXMuX2Rpc3RhbmNlPXRbMF0uZGlzdCh0WzFdKSx0aGlzLl9hY3RpdmV8fCEoTWF0aC5hYnMoZXModGhpcy5fZGlzdGFuY2UsdGhpcy5fc3RhcnREaXN0YW5jZSkpPC4xKSlyZXR1cm4gdGhpcy5fYWN0aXZlPSEwLHt6b29tRGVsdGE6ZXModGhpcy5fZGlzdGFuY2UsaSkscGluY2hBcm91bmQ6ZX19fWZ1bmN0aW9uIGFzKHQsZSl7cmV0dXJuIDE4MCp0LmFuZ2xlV2l0aChlKS9NYXRoLlBJfWNsYXNzIHNzIGV4dGVuZHMgUWF7cmVzZXQoKXtzdXBlci5yZXNldCgpLGRlbGV0ZSB0aGlzLl9taW5EaWFtZXRlcixkZWxldGUgdGhpcy5fc3RhcnRWZWN0b3IsZGVsZXRlIHRoaXMuX3ZlY3Rvcjt9X3N0YXJ0KHQpe3RoaXMuX3N0YXJ0VmVjdG9yPXRoaXMuX3ZlY3Rvcj10WzBdLnN1Yih0WzFdKSx0aGlzLl9taW5EaWFtZXRlcj10WzBdLmRpc3QodFsxXSk7fV9tb3ZlKHQsZSxpKXtjb25zdCBhPXRoaXMuX3ZlY3RvcjtpZih0aGlzLl92ZWN0b3I9dFswXS5zdWIodFsxXSksdGhpcy5fYWN0aXZlfHwhdGhpcy5faXNCZWxvd1RocmVzaG9sZCh0aGlzLl92ZWN0b3IpKXJldHVybiB0aGlzLl9hY3RpdmU9ITAse2JlYXJpbmdEZWx0YTphcyh0aGlzLl92ZWN0b3IsYSkscGluY2hBcm91bmQ6ZX19X2lzQmVsb3dUaHJlc2hvbGQodCl7dGhpcy5fbWluRGlhbWV0ZXI9TWF0aC5taW4odGhpcy5fbWluRGlhbWV0ZXIsdC5tYWcoKSk7Y29uc3QgZT0yNS8oTWF0aC5QSSp0aGlzLl9taW5EaWFtZXRlcikqMzYwLGk9YXModCx0aGlzLl9zdGFydFZlY3Rvcik7cmV0dXJuIE1hdGguYWJzKGkpPGV9fWZ1bmN0aW9uIG9zKHQpe3JldHVybiBNYXRoLmFicyh0LnkpPk1hdGguYWJzKHQueCl9Y2xhc3MgcnMgZXh0ZW5kcyBRYXtjb25zdHJ1Y3Rvcih0KXtzdXBlcigpLHRoaXMuX2N1cnJlbnRUb3VjaENvdW50PTAsdGhpcy5fbWFwPXQ7fXJlc2V0KCl7c3VwZXIucmVzZXQoKSx0aGlzLl92YWxpZD12b2lkIDAsZGVsZXRlIHRoaXMuX2ZpcnN0TW92ZSxkZWxldGUgdGhpcy5fbGFzdFBvaW50czt9dG91Y2hzdGFydCh0LGUsaSl7c3VwZXIudG91Y2hzdGFydCh0LGUsaSksdGhpcy5fY3VycmVudFRvdWNoQ291bnQ9aS5sZW5ndGg7fV9zdGFydCh0KXt0aGlzLl9sYXN0UG9pbnRzPXQsb3ModFswXS5zdWIodFsxXSkpJiYodGhpcy5fdmFsaWQ9ITEpO31fbW92ZSh0LGUsaSl7aWYodGhpcy5fbWFwLmNvb3BlcmF0aXZlR2VzdHVyZXMuaXNFbmFibGVkKCkmJnRoaXMuX2N1cnJlbnRUb3VjaENvdW50PDMpcmV0dXJuO2NvbnN0IGE9dFswXS5zdWIodGhpcy5fbGFzdFBvaW50c1swXSkscz10WzFdLnN1Yih0aGlzLl9sYXN0UG9pbnRzWzFdKTtyZXR1cm4gdGhpcy5fdmFsaWQ9dGhpcy5nZXN0dXJlQmVnaW5zVmVydGljYWxseShhLHMsaS50aW1lU3RhbXApLHRoaXMuX3ZhbGlkPyh0aGlzLl9sYXN0UG9pbnRzPXQsdGhpcy5fYWN0aXZlPSEwLHtwaXRjaERlbHRhOihhLnkrcy55KS8yKi0uNX0pOnZvaWQgMH1nZXN0dXJlQmVnaW5zVmVydGljYWxseSh0LGUsaSl7aWYodm9pZCAwIT09dGhpcy5fdmFsaWQpcmV0dXJuIHRoaXMuX3ZhbGlkO2NvbnN0IGE9dC5tYWcoKT49MixzPWUubWFnKCk+PTI7aWYoIWEmJiFzKXJldHVybjtpZighYXx8IXMpcmV0dXJuIHZvaWQgMD09PXRoaXMuX2ZpcnN0TW92ZSYmKHRoaXMuX2ZpcnN0TW92ZT1pKSxpLXRoaXMuX2ZpcnN0TW92ZTwxMDAmJnZvaWQgMDtjb25zdCBvPXQueT4wPT1lLnk+MDtyZXR1cm4gb3ModCkmJm9zKGUpJiZvfX1jb25zdCBucz17cGFuU3RlcDoxMDAsYmVhcmluZ1N0ZXA6MTUscGl0Y2hTdGVwOjEwfTtjbGFzcyBsc3tjb25zdHJ1Y3Rvcih0KXt0aGlzLl90cj1uZXcgTmEodCk7Y29uc3QgZT1uczt0aGlzLl9wYW5TdGVwPWUucGFuU3RlcCx0aGlzLl9iZWFyaW5nU3RlcD1lLmJlYXJpbmdTdGVwLHRoaXMuX3BpdGNoU3RlcD1lLnBpdGNoU3RlcCx0aGlzLl9yb3RhdGlvbkRpc2FibGVkPSExO31yZXNldCgpe3RoaXMuX2FjdGl2ZT0hMTt9a2V5ZG93bih0KXtpZih0LmFsdEtleXx8dC5jdHJsS2V5fHx0Lm1ldGFLZXkpcmV0dXJuO2xldCBlPTAsaT0wLGE9MCxzPTAsbz0wO3N3aXRjaCh0LmtleUNvZGUpe2Nhc2UgNjE6Y2FzZSAxMDc6Y2FzZSAxNzE6Y2FzZSAxODc6ZT0xO2JyZWFrO2Nhc2UgMTg5OmNhc2UgMTA5OmNhc2UgMTczOmU9LTE7YnJlYWs7Y2FzZSAzNzp0LnNoaWZ0S2V5P2k9LTE6KHQucHJldmVudERlZmF1bHQoKSxzPS0xKTticmVhaztjYXNlIDM5OnQuc2hpZnRLZXk/aT0xOih0LnByZXZlbnREZWZhdWx0KCkscz0xKTticmVhaztjYXNlIDM4OnQuc2hpZnRLZXk/YT0xOih0LnByZXZlbnREZWZhdWx0KCksbz0tMSk7YnJlYWs7Y2FzZSA0MDp0LnNoaWZ0S2V5P2E9LTE6KHQucHJldmVudERlZmF1bHQoKSxvPTEpO2JyZWFrO2RlZmF1bHQ6cmV0dXJufXJldHVybiB0aGlzLl9yb3RhdGlvbkRpc2FibGVkJiYoaT0wLGE9MCkse2NhbWVyYUFuaW1hdGlvbjpyPT57Y29uc3Qgbj10aGlzLl90cjtyLmVhc2VUbyh7ZHVyYXRpb246MzAwLGVhc2VJZDpcImtleWJvYXJkSGFuZGxlclwiLGVhc2luZzpocyx6b29tOmU/TWF0aC5yb3VuZChuLnpvb20pK2UqKHQuc2hpZnRLZXk/MjoxKTpuLnpvb20sYmVhcmluZzpuLmJlYXJpbmcraSp0aGlzLl9iZWFyaW5nU3RlcCxwaXRjaDpuLnBpdGNoK2EqdGhpcy5fcGl0Y2hTdGVwLG9mZnNldDpbLXMqdGhpcy5fcGFuU3RlcCwtbyp0aGlzLl9wYW5TdGVwXSxjZW50ZXI6bi5jZW50ZXJ9LHtvcmlnaW5hbEV2ZW50OnR9KTt9fX1lbmFibGUoKXt0aGlzLl9lbmFibGVkPSEwO31kaXNhYmxlKCl7dGhpcy5fZW5hYmxlZD0hMSx0aGlzLnJlc2V0KCk7fWlzRW5hYmxlZCgpe3JldHVybiB0aGlzLl9lbmFibGVkfWlzQWN0aXZlKCl7cmV0dXJuIHRoaXMuX2FjdGl2ZX1kaXNhYmxlUm90YXRpb24oKXt0aGlzLl9yb3RhdGlvbkRpc2FibGVkPSEwO31lbmFibGVSb3RhdGlvbigpe3RoaXMuX3JvdGF0aW9uRGlzYWJsZWQ9ITE7fX1mdW5jdGlvbiBocyh0KXtyZXR1cm4gdCooMi10KX1jb25zdCBjcz00LjAwMDI0NDE0MDYyNTtjbGFzcyB1c3tjb25zdHJ1Y3Rvcih0LGUpe3RoaXMuX29uVGltZW91dD10PT57dGhpcy5fdHlwZT1cIndoZWVsXCIsdGhpcy5fZGVsdGEtPXRoaXMuX2xhc3RWYWx1ZSx0aGlzLl9hY3RpdmV8fHRoaXMuX3N0YXJ0KHQpO30sdGhpcy5fbWFwPXQsdGhpcy5fdHI9bmV3IE5hKHQpLHRoaXMuX3RyaWdnZXJSZW5kZXJGcmFtZT1lLHRoaXMuX2RlbHRhPTAsdGhpcy5fZGVmYXVsdFpvb21SYXRlPS4wMSx0aGlzLl93aGVlbFpvb21SYXRlPS4wMDIyMjIyMjIyMjIyMjIyMjIyO31zZXRab29tUmF0ZSh0KXt0aGlzLl9kZWZhdWx0Wm9vbVJhdGU9dDt9c2V0V2hlZWxab29tUmF0ZSh0KXt0aGlzLl93aGVlbFpvb21SYXRlPXQ7fWlzRW5hYmxlZCgpe3JldHVybiAhIXRoaXMuX2VuYWJsZWR9aXNBY3RpdmUoKXtyZXR1cm4gISF0aGlzLl9hY3RpdmV8fHZvaWQgMCE9PXRoaXMuX2ZpbmlzaFRpbWVvdXR9aXNab29taW5nKCl7cmV0dXJuICEhdGhpcy5fem9vbWluZ31lbmFibGUodCl7dGhpcy5pc0VuYWJsZWQoKXx8KHRoaXMuX2VuYWJsZWQ9ITAsdGhpcy5fYXJvdW5kQ2VudGVyPSEhdCYmXCJjZW50ZXJcIj09PXQuYXJvdW5kKTt9ZGlzYWJsZSgpe3RoaXMuaXNFbmFibGVkKCkmJih0aGlzLl9lbmFibGVkPSExKTt9X3Nob3VsZEJlUHJldmVudGVkKHQpe3JldHVybiAhIXRoaXMuX21hcC5jb29wZXJhdGl2ZUdlc3R1cmVzLmlzRW5hYmxlZCgpJiYhKHQuY3RybEtleXx8dGhpcy5fbWFwLmNvb3BlcmF0aXZlR2VzdHVyZXMuaXNCeXBhc3NlZCh0KSl9d2hlZWwodCl7aWYoIXRoaXMuaXNFbmFibGVkKCkpcmV0dXJuO2lmKHRoaXMuX3Nob3VsZEJlUHJldmVudGVkKHQpKXJldHVybiB2b2lkIHRoaXMuX21hcC5jb29wZXJhdGl2ZUdlc3R1cmVzLm5vdGlmeUdlc3R1cmVCbG9ja2VkKFwid2hlZWxfem9vbVwiLHQpO2xldCBlPXQuZGVsdGFNb2RlPT09V2hlZWxFdmVudC5ET01fREVMVEFfTElORT80MCp0LmRlbHRhWTp0LmRlbHRhWTtjb25zdCBpPW8ubm93KCksYT1pLSh0aGlzLl9sYXN0V2hlZWxFdmVudFRpbWV8fDApO3RoaXMuX2xhc3RXaGVlbEV2ZW50VGltZT1pLDAhPT1lJiZlJWNzPT0wP3RoaXMuX3R5cGU9XCJ3aGVlbFwiOjAhPT1lJiZNYXRoLmFicyhlKTw0P3RoaXMuX3R5cGU9XCJ0cmFja3BhZFwiOmE+NDAwPyh0aGlzLl90eXBlPW51bGwsdGhpcy5fbGFzdFZhbHVlPWUsdGhpcy5fdGltZW91dD1zZXRUaW1lb3V0KHRoaXMuX29uVGltZW91dCw0MCx0KSk6dGhpcy5fdHlwZXx8KHRoaXMuX3R5cGU9TWF0aC5hYnMoYSplKTwyMDA/XCJ0cmFja3BhZFwiOlwid2hlZWxcIix0aGlzLl90aW1lb3V0JiYoY2xlYXJUaW1lb3V0KHRoaXMuX3RpbWVvdXQpLHRoaXMuX3RpbWVvdXQ9bnVsbCxlKz10aGlzLl9sYXN0VmFsdWUpKSx0LnNoaWZ0S2V5JiZlJiYoZS89NCksdGhpcy5fdHlwZSYmKHRoaXMuX2xhc3RXaGVlbEV2ZW50PXQsdGhpcy5fZGVsdGEtPWUsdGhpcy5fYWN0aXZlfHx0aGlzLl9zdGFydCh0KSksdC5wcmV2ZW50RGVmYXVsdCgpO31fc3RhcnQodCl7aWYoIXRoaXMuX2RlbHRhKXJldHVybjt0aGlzLl9mcmFtZUlkJiYodGhpcy5fZnJhbWVJZD1udWxsKSx0aGlzLl9hY3RpdmU9ITAsdGhpcy5pc1pvb21pbmcoKXx8KHRoaXMuX3pvb21pbmc9ITApLHRoaXMuX2ZpbmlzaFRpbWVvdXQmJihjbGVhclRpbWVvdXQodGhpcy5fZmluaXNoVGltZW91dCksZGVsZXRlIHRoaXMuX2ZpbmlzaFRpbWVvdXQpO2NvbnN0IGk9ci5tb3VzZVBvcyh0aGlzLl9tYXAuZ2V0Q2FudmFzKCksdCksYT10aGlzLl90cjt0aGlzLl9hcm91bmQ9aS55PmEudHJhbnNmb3JtLmhlaWdodC8yLWEudHJhbnNmb3JtLmdldEhvcml6b24oKT9lLk4uY29udmVydCh0aGlzLl9hcm91bmRDZW50ZXI/YS5jZW50ZXI6YS51bnByb2plY3QoaSkpOmUuTi5jb252ZXJ0KGEuY2VudGVyKSx0aGlzLl9hcm91bmRQb2ludD1hLnRyYW5zZm9ybS5sb2NhdGlvblBvaW50KHRoaXMuX2Fyb3VuZCksdGhpcy5fZnJhbWVJZHx8KHRoaXMuX2ZyYW1lSWQ9ITAsdGhpcy5fdHJpZ2dlclJlbmRlckZyYW1lKCkpO31yZW5kZXJGcmFtZSgpe2lmKCF0aGlzLl9mcmFtZUlkKXJldHVybjtpZih0aGlzLl9mcmFtZUlkPW51bGwsIXRoaXMuaXNBY3RpdmUoKSlyZXR1cm47Y29uc3QgdD10aGlzLl90ci50cmFuc2Zvcm07aWYoMCE9PXRoaXMuX2RlbHRhKXtjb25zdCBlPVwid2hlZWxcIj09PXRoaXMuX3R5cGUmJk1hdGguYWJzKHRoaXMuX2RlbHRhKT5jcz90aGlzLl93aGVlbFpvb21SYXRlOnRoaXMuX2RlZmF1bHRab29tUmF0ZTtsZXQgaT0yLygxK01hdGguZXhwKC1NYXRoLmFicyh0aGlzLl9kZWx0YSplKSkpO3RoaXMuX2RlbHRhPDAmJjAhPT1pJiYoaT0xL2kpO2NvbnN0IGE9XCJudW1iZXJcIj09dHlwZW9mIHRoaXMuX3RhcmdldFpvb20/dC56b29tU2NhbGUodGhpcy5fdGFyZ2V0Wm9vbSk6dC5zY2FsZTt0aGlzLl90YXJnZXRab29tPU1hdGgubWluKHQubWF4Wm9vbSxNYXRoLm1heCh0Lm1pblpvb20sdC5zY2FsZVpvb20oYSppKSkpLFwid2hlZWxcIj09PXRoaXMuX3R5cGUmJih0aGlzLl9zdGFydFpvb209dC56b29tLHRoaXMuX2Vhc2luZz10aGlzLl9zbW9vdGhPdXRFYXNpbmcoMjAwKSksdGhpcy5fZGVsdGE9MDt9Y29uc3QgaT1cIm51bWJlclwiPT10eXBlb2YgdGhpcy5fdGFyZ2V0Wm9vbT90aGlzLl90YXJnZXRab29tOnQuem9vbSxhPXRoaXMuX3N0YXJ0Wm9vbSxzPXRoaXMuX2Vhc2luZztsZXQgcixuPSExO2NvbnN0IGw9by5ub3coKS10aGlzLl9sYXN0V2hlZWxFdmVudFRpbWU7aWYoXCJ3aGVlbFwiPT09dGhpcy5fdHlwZSYmYSYmcyYmbCl7Y29uc3QgdD1NYXRoLm1pbihsLzIwMCwxKSxvPXModCk7cj1lLnkubnVtYmVyKGEsaSxvKSx0PDE/dGhpcy5fZnJhbWVJZHx8KHRoaXMuX2ZyYW1lSWQ9ITApOm49ITA7fWVsc2Ugcj1pLG49ITA7cmV0dXJuIHRoaXMuX2FjdGl2ZT0hMCxuJiYodGhpcy5fYWN0aXZlPSExLHRoaXMuX2ZpbmlzaFRpbWVvdXQ9c2V0VGltZW91dCgoKCk9Pnt0aGlzLl96b29taW5nPSExLHRoaXMuX3RyaWdnZXJSZW5kZXJGcmFtZSgpLGRlbGV0ZSB0aGlzLl90YXJnZXRab29tLGRlbGV0ZSB0aGlzLl9maW5pc2hUaW1lb3V0O30pLDIwMCkpLHtub0luZXJ0aWE6ITAsbmVlZHNSZW5kZXJGcmFtZTohbix6b29tRGVsdGE6ci10Lnpvb20sYXJvdW5kOnRoaXMuX2Fyb3VuZFBvaW50LG9yaWdpbmFsRXZlbnQ6dGhpcy5fbGFzdFdoZWVsRXZlbnR9fV9zbW9vdGhPdXRFYXNpbmcodCl7bGV0IGk9ZS5iOTtpZih0aGlzLl9wcmV2RWFzZSl7Y29uc3QgdD10aGlzLl9wcmV2RWFzZSxhPShvLm5vdygpLXQuc3RhcnQpL3QuZHVyYXRpb24scz10LmVhc2luZyhhKy4wMSktdC5lYXNpbmcoYSkscj0uMjcvTWF0aC5zcXJ0KHMqcysxZS00KSouMDEsbj1NYXRoLnNxcnQoLjA3MjktcipyKTtpPWUuYjgocixuLC4yNSwxKTt9cmV0dXJuIHRoaXMuX3ByZXZFYXNlPXtzdGFydDpvLm5vdygpLGR1cmF0aW9uOnQsZWFzaW5nOml9LGl9cmVzZXQoKXt0aGlzLl9hY3RpdmU9ITEsdGhpcy5fem9vbWluZz0hMSxkZWxldGUgdGhpcy5fdGFyZ2V0Wm9vbSx0aGlzLl9maW5pc2hUaW1lb3V0JiYoY2xlYXJUaW1lb3V0KHRoaXMuX2ZpbmlzaFRpbWVvdXQpLGRlbGV0ZSB0aGlzLl9maW5pc2hUaW1lb3V0KTt9fWNsYXNzIGRze2NvbnN0cnVjdG9yKHQsZSl7dGhpcy5fY2xpY2tab29tPXQsdGhpcy5fdGFwWm9vbT1lO31lbmFibGUoKXt0aGlzLl9jbGlja1pvb20uZW5hYmxlKCksdGhpcy5fdGFwWm9vbS5lbmFibGUoKTt9ZGlzYWJsZSgpe3RoaXMuX2NsaWNrWm9vbS5kaXNhYmxlKCksdGhpcy5fdGFwWm9vbS5kaXNhYmxlKCk7fWlzRW5hYmxlZCgpe3JldHVybiB0aGlzLl9jbGlja1pvb20uaXNFbmFibGVkKCkmJnRoaXMuX3RhcFpvb20uaXNFbmFibGVkKCl9aXNBY3RpdmUoKXtyZXR1cm4gdGhpcy5fY2xpY2tab29tLmlzQWN0aXZlKCl8fHRoaXMuX3RhcFpvb20uaXNBY3RpdmUoKX19Y2xhc3MgX3N7Y29uc3RydWN0b3IodCl7dGhpcy5fdHI9bmV3IE5hKHQpLHRoaXMucmVzZXQoKTt9cmVzZXQoKXt0aGlzLl9hY3RpdmU9ITE7fWRibGNsaWNrKHQsZSl7cmV0dXJuIHQucHJldmVudERlZmF1bHQoKSx7Y2FtZXJhQW5pbWF0aW9uOmk9PntpLmVhc2VUbyh7ZHVyYXRpb246MzAwLHpvb206dGhpcy5fdHIuem9vbSsodC5zaGlmdEtleT8tMToxKSxhcm91bmQ6dGhpcy5fdHIudW5wcm9qZWN0KGUpfSx7b3JpZ2luYWxFdmVudDp0fSk7fX19ZW5hYmxlKCl7dGhpcy5fZW5hYmxlZD0hMDt9ZGlzYWJsZSgpe3RoaXMuX2VuYWJsZWQ9ITEsdGhpcy5yZXNldCgpO31pc0VuYWJsZWQoKXtyZXR1cm4gdGhpcy5fZW5hYmxlZH1pc0FjdGl2ZSgpe3JldHVybiB0aGlzLl9hY3RpdmV9fWNsYXNzIHBze2NvbnN0cnVjdG9yKCl7dGhpcy5fdGFwPW5ldyBxYSh7bnVtVG91Y2hlczoxLG51bVRhcHM6MX0pLHRoaXMucmVzZXQoKTt9cmVzZXQoKXt0aGlzLl9hY3RpdmU9ITEsZGVsZXRlIHRoaXMuX3N3aXBlUG9pbnQsZGVsZXRlIHRoaXMuX3N3aXBlVG91Y2gsZGVsZXRlIHRoaXMuX3RhcFRpbWUsZGVsZXRlIHRoaXMuX3RhcFBvaW50LHRoaXMuX3RhcC5yZXNldCgpO310b3VjaHN0YXJ0KHQsZSxpKXtpZighdGhpcy5fc3dpcGVQb2ludClpZih0aGlzLl90YXBUaW1lKXtjb25zdCBhPWVbMF0scz10LnRpbWVTdGFtcC10aGlzLl90YXBUaW1lPDUwMCxvPXRoaXMuX3RhcFBvaW50LmRpc3QoYSk8MzA7cyYmbz9pLmxlbmd0aD4wJiYodGhpcy5fc3dpcGVQb2ludD1hLHRoaXMuX3N3aXBlVG91Y2g9aVswXS5pZGVudGlmaWVyKTp0aGlzLnJlc2V0KCk7fWVsc2UgdGhpcy5fdGFwLnRvdWNoc3RhcnQodCxlLGkpO310b3VjaG1vdmUodCxlLGkpe2lmKHRoaXMuX3RhcFRpbWUpe2lmKHRoaXMuX3N3aXBlUG9pbnQpe2lmKGlbMF0uaWRlbnRpZmllciE9PXRoaXMuX3N3aXBlVG91Y2gpcmV0dXJuO2NvbnN0IGE9ZVswXSxzPWEueS10aGlzLl9zd2lwZVBvaW50Lnk7cmV0dXJuIHRoaXMuX3N3aXBlUG9pbnQ9YSx0LnByZXZlbnREZWZhdWx0KCksdGhpcy5fYWN0aXZlPSEwLHt6b29tRGVsdGE6cy8xMjh9fX1lbHNlIHRoaXMuX3RhcC50b3VjaG1vdmUodCxlLGkpO310b3VjaGVuZCh0LGUsaSl7aWYodGhpcy5fdGFwVGltZSl0aGlzLl9zd2lwZVBvaW50JiYwPT09aS5sZW5ndGgmJnRoaXMucmVzZXQoKTtlbHNlIHtjb25zdCBhPXRoaXMuX3RhcC50b3VjaGVuZCh0LGUsaSk7YSYmKHRoaXMuX3RhcFRpbWU9dC50aW1lU3RhbXAsdGhpcy5fdGFwUG9pbnQ9YSk7fX10b3VjaGNhbmNlbCgpe3RoaXMucmVzZXQoKTt9ZW5hYmxlKCl7dGhpcy5fZW5hYmxlZD0hMDt9ZGlzYWJsZSgpe3RoaXMuX2VuYWJsZWQ9ITEsdGhpcy5yZXNldCgpO31pc0VuYWJsZWQoKXtyZXR1cm4gdGhpcy5fZW5hYmxlZH1pc0FjdGl2ZSgpe3JldHVybiB0aGlzLl9hY3RpdmV9fWNsYXNzIG1ze2NvbnN0cnVjdG9yKHQsZSxpKXt0aGlzLl9lbD10LHRoaXMuX21vdXNlUGFuPWUsdGhpcy5fdG91Y2hQYW49aTt9ZW5hYmxlKHQpe3RoaXMuX2luZXJ0aWFPcHRpb25zPXR8fHt9LHRoaXMuX21vdXNlUGFuLmVuYWJsZSgpLHRoaXMuX3RvdWNoUGFuLmVuYWJsZSgpLHRoaXMuX2VsLmNsYXNzTGlzdC5hZGQoXCJtYXBsaWJyZWdsLXRvdWNoLWRyYWctcGFuXCIpO31kaXNhYmxlKCl7dGhpcy5fbW91c2VQYW4uZGlzYWJsZSgpLHRoaXMuX3RvdWNoUGFuLmRpc2FibGUoKSx0aGlzLl9lbC5jbGFzc0xpc3QucmVtb3ZlKFwibWFwbGlicmVnbC10b3VjaC1kcmFnLXBhblwiKTt9aXNFbmFibGVkKCl7cmV0dXJuIHRoaXMuX21vdXNlUGFuLmlzRW5hYmxlZCgpJiZ0aGlzLl90b3VjaFBhbi5pc0VuYWJsZWQoKX1pc0FjdGl2ZSgpe3JldHVybiB0aGlzLl9tb3VzZVBhbi5pc0FjdGl2ZSgpfHx0aGlzLl90b3VjaFBhbi5pc0FjdGl2ZSgpfX1jbGFzcyBmc3tjb25zdHJ1Y3Rvcih0LGUsaSl7dGhpcy5fcGl0Y2hXaXRoUm90YXRlPXQucGl0Y2hXaXRoUm90YXRlLHRoaXMuX21vdXNlUm90YXRlPWUsdGhpcy5fbW91c2VQaXRjaD1pO31lbmFibGUoKXt0aGlzLl9tb3VzZVJvdGF0ZS5lbmFibGUoKSx0aGlzLl9waXRjaFdpdGhSb3RhdGUmJnRoaXMuX21vdXNlUGl0Y2guZW5hYmxlKCk7fWRpc2FibGUoKXt0aGlzLl9tb3VzZVJvdGF0ZS5kaXNhYmxlKCksdGhpcy5fbW91c2VQaXRjaC5kaXNhYmxlKCk7fWlzRW5hYmxlZCgpe3JldHVybiB0aGlzLl9tb3VzZVJvdGF0ZS5pc0VuYWJsZWQoKSYmKCF0aGlzLl9waXRjaFdpdGhSb3RhdGV8fHRoaXMuX21vdXNlUGl0Y2guaXNFbmFibGVkKCkpfWlzQWN0aXZlKCl7cmV0dXJuIHRoaXMuX21vdXNlUm90YXRlLmlzQWN0aXZlKCl8fHRoaXMuX21vdXNlUGl0Y2guaXNBY3RpdmUoKX19Y2xhc3MgZ3N7Y29uc3RydWN0b3IodCxlLGksYSl7dGhpcy5fZWw9dCx0aGlzLl90b3VjaFpvb209ZSx0aGlzLl90b3VjaFJvdGF0ZT1pLHRoaXMuX3RhcERyYWdab29tPWEsdGhpcy5fcm90YXRpb25EaXNhYmxlZD0hMSx0aGlzLl9lbmFibGVkPSEwO31lbmFibGUodCl7dGhpcy5fdG91Y2hab29tLmVuYWJsZSh0KSx0aGlzLl9yb3RhdGlvbkRpc2FibGVkfHx0aGlzLl90b3VjaFJvdGF0ZS5lbmFibGUodCksdGhpcy5fdGFwRHJhZ1pvb20uZW5hYmxlKCksdGhpcy5fZWwuY2xhc3NMaXN0LmFkZChcIm1hcGxpYnJlZ2wtdG91Y2gtem9vbS1yb3RhdGVcIik7fWRpc2FibGUoKXt0aGlzLl90b3VjaFpvb20uZGlzYWJsZSgpLHRoaXMuX3RvdWNoUm90YXRlLmRpc2FibGUoKSx0aGlzLl90YXBEcmFnWm9vbS5kaXNhYmxlKCksdGhpcy5fZWwuY2xhc3NMaXN0LnJlbW92ZShcIm1hcGxpYnJlZ2wtdG91Y2gtem9vbS1yb3RhdGVcIik7fWlzRW5hYmxlZCgpe3JldHVybiB0aGlzLl90b3VjaFpvb20uaXNFbmFibGVkKCkmJih0aGlzLl9yb3RhdGlvbkRpc2FibGVkfHx0aGlzLl90b3VjaFJvdGF0ZS5pc0VuYWJsZWQoKSkmJnRoaXMuX3RhcERyYWdab29tLmlzRW5hYmxlZCgpfWlzQWN0aXZlKCl7cmV0dXJuIHRoaXMuX3RvdWNoWm9vbS5pc0FjdGl2ZSgpfHx0aGlzLl90b3VjaFJvdGF0ZS5pc0FjdGl2ZSgpfHx0aGlzLl90YXBEcmFnWm9vbS5pc0FjdGl2ZSgpfWRpc2FibGVSb3RhdGlvbigpe3RoaXMuX3JvdGF0aW9uRGlzYWJsZWQ9ITAsdGhpcy5fdG91Y2hSb3RhdGUuZGlzYWJsZSgpO31lbmFibGVSb3RhdGlvbigpe3RoaXMuX3JvdGF0aW9uRGlzYWJsZWQ9ITEsdGhpcy5fdG91Y2hab29tLmlzRW5hYmxlZCgpJiZ0aGlzLl90b3VjaFJvdGF0ZS5lbmFibGUoKTt9fWNsYXNzIHZze2NvbnN0cnVjdG9yKHQsZSl7dGhpcy5fYnlwYXNzS2V5PS0xIT09bmF2aWdhdG9yLnVzZXJBZ2VudC5pbmRleE9mKFwiTWFjXCIpP1wibWV0YUtleVwiOlwiY3RybEtleVwiLHRoaXMuX21hcD10LHRoaXMuX29wdGlvbnM9ZSx0aGlzLl9lbmFibGVkPSExO31pc0FjdGl2ZSgpe3JldHVybiAhMX1yZXNldCgpe31fc2V0dXBVSSgpe2lmKHRoaXMuX2NvbnRhaW5lcilyZXR1cm47Y29uc3QgdD10aGlzLl9tYXAuZ2V0Q2FudmFzQ29udGFpbmVyKCk7dC5jbGFzc0xpc3QuYWRkKFwibWFwbGlicmVnbC1jb29wZXJhdGl2ZS1nZXN0dXJlc1wiKSx0aGlzLl9jb250YWluZXI9ci5jcmVhdGUoXCJkaXZcIixcIm1hcGxpYnJlZ2wtY29vcGVyYXRpdmUtZ2VzdHVyZS1zY3JlZW5cIix0KTtsZXQgZT10aGlzLl9tYXAuX2dldFVJU3RyaW5nKFwiQ29vcGVyYXRpdmVHZXN0dXJlc0hhbmRsZXIuV2luZG93c0hlbHBUZXh0XCIpO1wibWV0YUtleVwiPT09dGhpcy5fYnlwYXNzS2V5JiYoZT10aGlzLl9tYXAuX2dldFVJU3RyaW5nKFwiQ29vcGVyYXRpdmVHZXN0dXJlc0hhbmRsZXIuTWFjSGVscFRleHRcIikpO2NvbnN0IGk9dGhpcy5fbWFwLl9nZXRVSVN0cmluZyhcIkNvb3BlcmF0aXZlR2VzdHVyZXNIYW5kbGVyLk1vYmlsZUhlbHBUZXh0XCIpLGE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcImRpdlwiKTthLmNsYXNzTmFtZT1cIm1hcGxpYnJlZ2wtZGVza3RvcC1tZXNzYWdlXCIsYS50ZXh0Q29udGVudD1lLHRoaXMuX2NvbnRhaW5lci5hcHBlbmRDaGlsZChhKTtjb25zdCBzPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJkaXZcIik7cy5jbGFzc05hbWU9XCJtYXBsaWJyZWdsLW1vYmlsZS1tZXNzYWdlXCIscy50ZXh0Q29udGVudD1pLHRoaXMuX2NvbnRhaW5lci5hcHBlbmRDaGlsZChzKSx0aGlzLl9jb250YWluZXIuc2V0QXR0cmlidXRlKFwiYXJpYS1oaWRkZW5cIixcInRydWVcIik7fV9kZXN0cm95VUkoKXt0aGlzLl9jb250YWluZXImJihyLnJlbW92ZSh0aGlzLl9jb250YWluZXIpLHRoaXMuX21hcC5nZXRDYW52YXNDb250YWluZXIoKS5jbGFzc0xpc3QucmVtb3ZlKFwibWFwbGlicmVnbC1jb29wZXJhdGl2ZS1nZXN0dXJlc1wiKSksZGVsZXRlIHRoaXMuX2NvbnRhaW5lcjt9ZW5hYmxlKCl7dGhpcy5fc2V0dXBVSSgpLHRoaXMuX2VuYWJsZWQ9ITA7fWRpc2FibGUoKXt0aGlzLl9lbmFibGVkPSExLHRoaXMuX2Rlc3Ryb3lVSSgpO31pc0VuYWJsZWQoKXtyZXR1cm4gdGhpcy5fZW5hYmxlZH1pc0J5cGFzc2VkKHQpe3JldHVybiB0W3RoaXMuX2J5cGFzc0tleV19bm90aWZ5R2VzdHVyZUJsb2NrZWQodCxpKXt0aGlzLl9lbmFibGVkJiYodGhpcy5fbWFwLmZpcmUobmV3IGUuayhcImNvb3BlcmF0aXZlZ2VzdHVyZXByZXZlbnRlZFwiLHtnZXN0dXJlVHlwZTp0LG9yaWdpbmFsRXZlbnQ6aX0pKSx0aGlzLl9jb250YWluZXIuY2xhc3NMaXN0LmFkZChcIm1hcGxpYnJlZ2wtc2hvd1wiKSxzZXRUaW1lb3V0KCgoKT0+e3RoaXMuX2NvbnRhaW5lci5jbGFzc0xpc3QucmVtb3ZlKFwibWFwbGlicmVnbC1zaG93XCIpO30pLDEwMCkpO319Y29uc3QgeHM9dD0+dC56b29tfHx0LmRyYWd8fHQucGl0Y2h8fHQucm90YXRlO2NsYXNzIHlzIGV4dGVuZHMgZS5re31mdW5jdGlvbiBicyh0KXtyZXR1cm4gdC5wYW5EZWx0YSYmdC5wYW5EZWx0YS5tYWcoKXx8dC56b29tRGVsdGF8fHQuYmVhcmluZ0RlbHRhfHx0LnBpdGNoRGVsdGF9Y2xhc3Mgd3N7Y29uc3RydWN0b3IodCxlKXt0aGlzLmhhbmRsZVdpbmRvd0V2ZW50PXQ9Pnt0aGlzLmhhbmRsZUV2ZW50KHQsYCR7dC50eXBlfVdpbmRvd2ApO30sdGhpcy5oYW5kbGVFdmVudD0odCxlKT0+e2lmKFwiYmx1clwiPT09dC50eXBlKXJldHVybiB2b2lkIHRoaXMuc3RvcCghMCk7dGhpcy5fdXBkYXRpbmdDYW1lcmE9ITA7Y29uc3QgaT1cInJlbmRlckZyYW1lXCI9PT10LnR5cGU/dm9pZCAwOnQsYT17bmVlZHNSZW5kZXJGcmFtZTohMX0scz17fSxvPXt9LG49dC50b3VjaGVzLGw9bj90aGlzLl9nZXRNYXBUb3VjaGVzKG4pOnZvaWQgMCxoPWw/ci50b3VjaFBvcyh0aGlzLl9tYXAuZ2V0Q2FudmFzKCksbCk6ci5tb3VzZVBvcyh0aGlzLl9tYXAuZ2V0Q2FudmFzKCksdCk7Zm9yKGNvbnN0e2hhbmRsZXJOYW1lOnIsaGFuZGxlcjpuLGFsbG93ZWQ6Y31vZiB0aGlzLl9oYW5kbGVycyl7aWYoIW4uaXNFbmFibGVkKCkpY29udGludWU7bGV0IHU7dGhpcy5fYmxvY2tlZEJ5QWN0aXZlKG8sYyxyKT9uLnJlc2V0KCk6bltlfHx0LnR5cGVdJiYodT1uW2V8fHQudHlwZV0odCxoLGwpLHRoaXMubWVyZ2VIYW5kbGVyUmVzdWx0KGEscyx1LHIsaSksdSYmdS5uZWVkc1JlbmRlckZyYW1lJiZ0aGlzLl90cmlnZ2VyUmVuZGVyRnJhbWUoKSksKHV8fG4uaXNBY3RpdmUoKSkmJihvW3JdPW4pO31jb25zdCBjPXt9O2Zvcihjb25zdCB0IGluIHRoaXMuX3ByZXZpb3VzQWN0aXZlSGFuZGxlcnMpb1t0XXx8KGNbdF09aSk7dGhpcy5fcHJldmlvdXNBY3RpdmVIYW5kbGVycz1vLChPYmplY3Qua2V5cyhjKS5sZW5ndGh8fGJzKGEpKSYmKHRoaXMuX2NoYW5nZXMucHVzaChbYSxzLGNdKSx0aGlzLl90cmlnZ2VyUmVuZGVyRnJhbWUoKSksKE9iamVjdC5rZXlzKG8pLmxlbmd0aHx8YnMoYSkpJiZ0aGlzLl9tYXAuX3N0b3AoITApLHRoaXMuX3VwZGF0aW5nQ2FtZXJhPSExO2NvbnN0e2NhbWVyYUFuaW1hdGlvbjp1fT1hO3UmJih0aGlzLl9pbmVydGlhLmNsZWFyKCksdGhpcy5fZmlyZUV2ZW50cyh7fSx7fSwhMCksdGhpcy5fY2hhbmdlcz1bXSx1KHRoaXMuX21hcCkpO30sdGhpcy5fbWFwPXQsdGhpcy5fZWw9dGhpcy5fbWFwLmdldENhbnZhc0NvbnRhaW5lcigpLHRoaXMuX2hhbmRsZXJzPVtdLHRoaXMuX2hhbmRsZXJzQnlJZD17fSx0aGlzLl9jaGFuZ2VzPVtdLHRoaXMuX2luZXJ0aWE9bmV3IE1hKHQpLHRoaXMuX2JlYXJpbmdTbmFwPWUuYmVhcmluZ1NuYXAsdGhpcy5fcHJldmlvdXNBY3RpdmVIYW5kbGVycz17fSx0aGlzLl9ldmVudHNJblByb2dyZXNzPXt9LHRoaXMuX2FkZERlZmF1bHRIYW5kbGVycyhlKTtjb25zdCBpPXRoaXMuX2VsO3RoaXMuX2xpc3RlbmVycz1bW2ksXCJ0b3VjaHN0YXJ0XCIse3Bhc3NpdmU6ITB9XSxbaSxcInRvdWNobW92ZVwiLHtwYXNzaXZlOiExfV0sW2ksXCJ0b3VjaGVuZFwiLHZvaWQgMF0sW2ksXCJ0b3VjaGNhbmNlbFwiLHZvaWQgMF0sW2ksXCJtb3VzZWRvd25cIix2b2lkIDBdLFtpLFwibW91c2Vtb3ZlXCIsdm9pZCAwXSxbaSxcIm1vdXNldXBcIix2b2lkIDBdLFtkb2N1bWVudCxcIm1vdXNlbW92ZVwiLHtjYXB0dXJlOiEwfV0sW2RvY3VtZW50LFwibW91c2V1cFwiLHZvaWQgMF0sW2ksXCJtb3VzZW92ZXJcIix2b2lkIDBdLFtpLFwibW91c2VvdXRcIix2b2lkIDBdLFtpLFwiZGJsY2xpY2tcIix2b2lkIDBdLFtpLFwiY2xpY2tcIix2b2lkIDBdLFtpLFwia2V5ZG93blwiLHtjYXB0dXJlOiExfV0sW2ksXCJrZXl1cFwiLHZvaWQgMF0sW2ksXCJ3aGVlbFwiLHtwYXNzaXZlOiExfV0sW2ksXCJjb250ZXh0bWVudVwiLHZvaWQgMF0sW3dpbmRvdyxcImJsdXJcIix2b2lkIDBdXTtmb3IoY29uc3RbdCxlLGldb2YgdGhpcy5fbGlzdGVuZXJzKXIuYWRkRXZlbnRMaXN0ZW5lcih0LGUsdD09PWRvY3VtZW50P3RoaXMuaGFuZGxlV2luZG93RXZlbnQ6dGhpcy5oYW5kbGVFdmVudCxpKTt9ZGVzdHJveSgpe2Zvcihjb25zdFt0LGUsaV1vZiB0aGlzLl9saXN0ZW5lcnMpci5yZW1vdmVFdmVudExpc3RlbmVyKHQsZSx0PT09ZG9jdW1lbnQ/dGhpcy5oYW5kbGVXaW5kb3dFdmVudDp0aGlzLmhhbmRsZUV2ZW50LGkpO31fYWRkRGVmYXVsdEhhbmRsZXJzKHQpe2NvbnN0IGU9dGhpcy5fbWFwLGk9ZS5nZXRDYW52YXNDb250YWluZXIoKTt0aGlzLl9hZGQoXCJtYXBFdmVudFwiLG5ldyBCYShlLHQpKTtjb25zdCBhPWUuYm94Wm9vbT1uZXcgVWEoZSx0KTt0aGlzLl9hZGQoXCJib3hab29tXCIsYSksdC5pbnRlcmFjdGl2ZSYmdC5ib3hab29tJiZhLmVuYWJsZSgpO2NvbnN0IHM9ZS5jb29wZXJhdGl2ZUdlc3R1cmVzPW5ldyB2cyhlLHQuY29vcGVyYXRpdmVHZXN0dXJlcyk7dGhpcy5fYWRkKFwiY29vcGVyYXRpdmVHZXN0dXJlc1wiLHMpLHQuY29vcGVyYXRpdmVHZXN0dXJlcyYmcy5lbmFibGUoKTtjb25zdCBvPW5ldyBWYShlKSxuPW5ldyBfcyhlKTtlLmRvdWJsZUNsaWNrWm9vbT1uZXcgZHMobixvKSx0aGlzLl9hZGQoXCJ0YXBab29tXCIsbyksdGhpcy5fYWRkKFwiY2xpY2tab29tXCIsbiksdC5pbnRlcmFjdGl2ZSYmdC5kb3VibGVDbGlja1pvb20mJmUuZG91YmxlQ2xpY2tab29tLmVuYWJsZSgpO2NvbnN0IGw9bmV3IHBzO3RoaXMuX2FkZChcInRhcERyYWdab29tXCIsbCk7Y29uc3QgaD1lLnRvdWNoUGl0Y2g9bmV3IHJzKGUpO3RoaXMuX2FkZChcInRvdWNoUGl0Y2hcIixoKSx0LmludGVyYWN0aXZlJiZ0LnRvdWNoUGl0Y2gmJmUudG91Y2hQaXRjaC5lbmFibGUodC50b3VjaFBpdGNoKTtjb25zdCBjPUthKHQpLHU9SmEodCk7ZS5kcmFnUm90YXRlPW5ldyBmcyh0LGMsdSksdGhpcy5fYWRkKFwibW91c2VSb3RhdGVcIixjLFtcIm1vdXNlUGl0Y2hcIl0pLHRoaXMuX2FkZChcIm1vdXNlUGl0Y2hcIix1LFtcIm1vdXNlUm90YXRlXCJdKSx0LmludGVyYWN0aXZlJiZ0LmRyYWdSb3RhdGUmJmUuZHJhZ1JvdGF0ZS5lbmFibGUoKTtjb25zdCBkPSgoe2VuYWJsZTp0LGNsaWNrVG9sZXJhbmNlOmV9KT0+e2NvbnN0IGk9bmV3IFdhKHtjaGVja0NvcnJlY3RFdmVudDp0PT4wPT09ci5tb3VzZUJ1dHRvbih0KSYmIXQuY3RybEtleX0pO3JldHVybiBuZXcgR2Eoe2NsaWNrVG9sZXJhbmNlOmUsbW92ZToodCxlKT0+KHthcm91bmQ6ZSxwYW5EZWx0YTplLnN1Yih0KX0pLGFjdGl2YXRlT25TdGFydDohMCxtb3ZlU3RhdGVNYW5hZ2VyOmksZW5hYmxlOnQsYXNzaWduRXZlbnRzOlhhfSl9KSh0KSxfPW5ldyBZYSh0LGUpO2UuZHJhZ1Bhbj1uZXcgbXMoaSxkLF8pLHRoaXMuX2FkZChcIm1vdXNlUGFuXCIsZCksdGhpcy5fYWRkKFwidG91Y2hQYW5cIixfLFtcInRvdWNoWm9vbVwiLFwidG91Y2hSb3RhdGVcIl0pLHQuaW50ZXJhY3RpdmUmJnQuZHJhZ1BhbiYmZS5kcmFnUGFuLmVuYWJsZSh0LmRyYWdQYW4pO2NvbnN0IHA9bmV3IHNzLG09bmV3IGlzO2UudG91Y2hab29tUm90YXRlPW5ldyBncyhpLG0scCxsKSx0aGlzLl9hZGQoXCJ0b3VjaFJvdGF0ZVwiLHAsW1widG91Y2hQYW5cIixcInRvdWNoWm9vbVwiXSksdGhpcy5fYWRkKFwidG91Y2hab29tXCIsbSxbXCJ0b3VjaFBhblwiLFwidG91Y2hSb3RhdGVcIl0pLHQuaW50ZXJhY3RpdmUmJnQudG91Y2hab29tUm90YXRlJiZlLnRvdWNoWm9vbVJvdGF0ZS5lbmFibGUodC50b3VjaFpvb21Sb3RhdGUpO2NvbnN0IGY9ZS5zY3JvbGxab29tPW5ldyB1cyhlLCgoKT0+dGhpcy5fdHJpZ2dlclJlbmRlckZyYW1lKCkpKTt0aGlzLl9hZGQoXCJzY3JvbGxab29tXCIsZixbXCJtb3VzZVBhblwiXSksdC5pbnRlcmFjdGl2ZSYmdC5zY3JvbGxab29tJiZlLnNjcm9sbFpvb20uZW5hYmxlKHQuc2Nyb2xsWm9vbSk7Y29uc3QgZz1lLmtleWJvYXJkPW5ldyBscyhlKTt0aGlzLl9hZGQoXCJrZXlib2FyZFwiLGcpLHQuaW50ZXJhY3RpdmUmJnQua2V5Ym9hcmQmJmUua2V5Ym9hcmQuZW5hYmxlKCksdGhpcy5fYWRkKFwiYmxvY2thYmxlTWFwRXZlbnRcIixuZXcgT2EoZSkpO31fYWRkKHQsZSxpKXt0aGlzLl9oYW5kbGVycy5wdXNoKHtoYW5kbGVyTmFtZTp0LGhhbmRsZXI6ZSxhbGxvd2VkOml9KSx0aGlzLl9oYW5kbGVyc0J5SWRbdF09ZTt9c3RvcCh0KXtpZighdGhpcy5fdXBkYXRpbmdDYW1lcmEpe2Zvcihjb25zdHtoYW5kbGVyOnR9b2YgdGhpcy5faGFuZGxlcnMpdC5yZXNldCgpO3RoaXMuX2luZXJ0aWEuY2xlYXIoKSx0aGlzLl9maXJlRXZlbnRzKHt9LHt9LHQpLHRoaXMuX2NoYW5nZXM9W107fX1pc0FjdGl2ZSgpe2Zvcihjb25zdHtoYW5kbGVyOnR9b2YgdGhpcy5faGFuZGxlcnMpaWYodC5pc0FjdGl2ZSgpKXJldHVybiAhMDtyZXR1cm4gITF9aXNab29taW5nKCl7cmV0dXJuICEhdGhpcy5fZXZlbnRzSW5Qcm9ncmVzcy56b29tfHx0aGlzLl9tYXAuc2Nyb2xsWm9vbS5pc1pvb21pbmcoKX1pc1JvdGF0aW5nKCl7cmV0dXJuICEhdGhpcy5fZXZlbnRzSW5Qcm9ncmVzcy5yb3RhdGV9aXNNb3ZpbmcoKXtyZXR1cm4gQm9vbGVhbih4cyh0aGlzLl9ldmVudHNJblByb2dyZXNzKSl8fHRoaXMuaXNab29taW5nKCl9X2Jsb2NrZWRCeUFjdGl2ZSh0LGUsaSl7Zm9yKGNvbnN0IGEgaW4gdClpZihhIT09aSYmKCFlfHxlLmluZGV4T2YoYSk8MCkpcmV0dXJuICEwO3JldHVybiAhMX1fZ2V0TWFwVG91Y2hlcyh0KXtjb25zdCBlPVtdO2Zvcihjb25zdCBpIG9mIHQpdGhpcy5fZWwuY29udGFpbnMoaS50YXJnZXQpJiZlLnB1c2goaSk7cmV0dXJuIGV9bWVyZ2VIYW5kbGVyUmVzdWx0KHQsaSxhLHMsbyl7aWYoIWEpcmV0dXJuO2UuZSh0LGEpO2NvbnN0IHI9e2hhbmRsZXJOYW1lOnMsb3JpZ2luYWxFdmVudDphLm9yaWdpbmFsRXZlbnR8fG99O3ZvaWQgMCE9PWEuem9vbURlbHRhJiYoaS56b29tPXIpLHZvaWQgMCE9PWEucGFuRGVsdGEmJihpLmRyYWc9ciksdm9pZCAwIT09YS5waXRjaERlbHRhJiYoaS5waXRjaD1yKSx2b2lkIDAhPT1hLmJlYXJpbmdEZWx0YSYmKGkucm90YXRlPXIpO31fYXBwbHlDaGFuZ2VzKCl7Y29uc3QgdD17fSxpPXt9LGE9e307Zm9yKGNvbnN0W3MsbyxyXW9mIHRoaXMuX2NoYW5nZXMpcy5wYW5EZWx0YSYmKHQucGFuRGVsdGE9KHQucGFuRGVsdGF8fG5ldyBlLlAoMCwwKSkuX2FkZChzLnBhbkRlbHRhKSkscy56b29tRGVsdGEmJih0Lnpvb21EZWx0YT0odC56b29tRGVsdGF8fDApK3Muem9vbURlbHRhKSxzLmJlYXJpbmdEZWx0YSYmKHQuYmVhcmluZ0RlbHRhPSh0LmJlYXJpbmdEZWx0YXx8MCkrcy5iZWFyaW5nRGVsdGEpLHMucGl0Y2hEZWx0YSYmKHQucGl0Y2hEZWx0YT0odC5waXRjaERlbHRhfHwwKStzLnBpdGNoRGVsdGEpLHZvaWQgMCE9PXMuYXJvdW5kJiYodC5hcm91bmQ9cy5hcm91bmQpLHZvaWQgMCE9PXMucGluY2hBcm91bmQmJih0LnBpbmNoQXJvdW5kPXMucGluY2hBcm91bmQpLHMubm9JbmVydGlhJiYodC5ub0luZXJ0aWE9cy5ub0luZXJ0aWEpLGUuZShpLG8pLGUuZShhLHIpO3RoaXMuX3VwZGF0ZU1hcFRyYW5zZm9ybSh0LGksYSksdGhpcy5fY2hhbmdlcz1bXTt9X3VwZGF0ZU1hcFRyYW5zZm9ybSh0LGUsaSl7Y29uc3QgYT10aGlzLl9tYXAscz1hLl9nZXRUcmFuc2Zvcm1Gb3JVcGRhdGUoKSxvPWEudGVycmFpbjtpZighKGJzKHQpfHxvJiZ0aGlzLl90ZXJyYWluTW92ZW1lbnQpKXJldHVybiB0aGlzLl9maXJlRXZlbnRzKGUsaSwhMCk7bGV0e3BhbkRlbHRhOnIsem9vbURlbHRhOm4sYmVhcmluZ0RlbHRhOmwscGl0Y2hEZWx0YTpoLGFyb3VuZDpjLHBpbmNoQXJvdW5kOnV9PXQ7dm9pZCAwIT09dSYmKGM9dSksYS5fc3RvcCghMCksYz1jfHxhLnRyYW5zZm9ybS5jZW50ZXJQb2ludDtjb25zdCBkPXMucG9pbnRMb2NhdGlvbihyP2Muc3ViKHIpOmMpO2wmJihzLmJlYXJpbmcrPWwpLGgmJihzLnBpdGNoKz1oKSxuJiYocy56b29tKz1uKSxvP3RoaXMuX3RlcnJhaW5Nb3ZlbWVudHx8IWUuZHJhZyYmIWUuem9vbT9lLmRyYWcmJnRoaXMuX3RlcnJhaW5Nb3ZlbWVudD9zLmNlbnRlcj1zLnBvaW50TG9jYXRpb24ocy5jZW50ZXJQb2ludC5zdWIocikpOnMuc2V0TG9jYXRpb25BdFBvaW50KGQsYyk6KHRoaXMuX3RlcnJhaW5Nb3ZlbWVudD0hMCx0aGlzLl9tYXAuX2VsZXZhdGlvbkZyZWV6ZT0hMCxzLnNldExvY2F0aW9uQXRQb2ludChkLGMpKTpzLnNldExvY2F0aW9uQXRQb2ludChkLGMpLGEuX2FwcGx5VXBkYXRlZFRyYW5zZm9ybShzKSx0aGlzLl9tYXAuX3VwZGF0ZSgpLHQubm9JbmVydGlhfHx0aGlzLl9pbmVydGlhLnJlY29yZCh0KSx0aGlzLl9maXJlRXZlbnRzKGUsaSwhMCk7fV9maXJlRXZlbnRzKHQsaSxhKXtjb25zdCBzPXhzKHRoaXMuX2V2ZW50c0luUHJvZ3Jlc3MpLHI9eHModCksbj17fTtmb3IoY29uc3QgZSBpbiB0KXtjb25zdHtvcmlnaW5hbEV2ZW50Oml9PXRbZV07dGhpcy5fZXZlbnRzSW5Qcm9ncmVzc1tlXXx8KG5bYCR7ZX1zdGFydGBdPWkpLHRoaXMuX2V2ZW50c0luUHJvZ3Jlc3NbZV09dFtlXTt9IXMmJnImJnRoaXMuX2ZpcmVFdmVudChcIm1vdmVzdGFydFwiLHIub3JpZ2luYWxFdmVudCk7Zm9yKGNvbnN0IHQgaW4gbil0aGlzLl9maXJlRXZlbnQodCxuW3RdKTtyJiZ0aGlzLl9maXJlRXZlbnQoXCJtb3ZlXCIsci5vcmlnaW5hbEV2ZW50KTtmb3IoY29uc3QgZSBpbiB0KXtjb25zdHtvcmlnaW5hbEV2ZW50Oml9PXRbZV07dGhpcy5fZmlyZUV2ZW50KGUsaSk7fWNvbnN0IGw9e307bGV0IGg7Zm9yKGNvbnN0IHQgaW4gdGhpcy5fZXZlbnRzSW5Qcm9ncmVzcyl7Y29uc3R7aGFuZGxlck5hbWU6ZSxvcmlnaW5hbEV2ZW50OmF9PXRoaXMuX2V2ZW50c0luUHJvZ3Jlc3NbdF07dGhpcy5faGFuZGxlcnNCeUlkW2VdLmlzQWN0aXZlKCl8fChkZWxldGUgdGhpcy5fZXZlbnRzSW5Qcm9ncmVzc1t0XSxoPWlbZV18fGEsbFtgJHt0fWVuZGBdPWgpO31mb3IoY29uc3QgdCBpbiBsKXRoaXMuX2ZpcmVFdmVudCh0LGxbdF0pO2NvbnN0IGM9eHModGhpcy5fZXZlbnRzSW5Qcm9ncmVzcyksdT0oc3x8cikmJiFjO2lmKHUmJnRoaXMuX3RlcnJhaW5Nb3ZlbWVudCl7dGhpcy5fbWFwLl9lbGV2YXRpb25GcmVlemU9ITEsdGhpcy5fdGVycmFpbk1vdmVtZW50PSExO2NvbnN0IHQ9dGhpcy5fbWFwLl9nZXRUcmFuc2Zvcm1Gb3JVcGRhdGUoKTt0LnJlY2FsY3VsYXRlWm9vbSh0aGlzLl9tYXAudGVycmFpbiksdGhpcy5fbWFwLl9hcHBseVVwZGF0ZWRUcmFuc2Zvcm0odCk7fWlmKGEmJnUpe3RoaXMuX3VwZGF0aW5nQ2FtZXJhPSEwO2NvbnN0IHQ9dGhpcy5faW5lcnRpYS5fb25Nb3ZlRW5kKHRoaXMuX21hcC5kcmFnUGFuLl9pbmVydGlhT3B0aW9ucyksaT10PT4wIT09dCYmLXRoaXMuX2JlYXJpbmdTbmFwPHQmJnQ8dGhpcy5fYmVhcmluZ1NuYXA7IXR8fCF0LmVzc2VudGlhbCYmby5wcmVmZXJzUmVkdWNlZE1vdGlvbj8odGhpcy5fbWFwLmZpcmUobmV3IGUuayhcIm1vdmVlbmRcIix7b3JpZ2luYWxFdmVudDpofSkpLGkodGhpcy5fbWFwLmdldEJlYXJpbmcoKSkmJnRoaXMuX21hcC5yZXNldE5vcnRoKCkpOihpKHQuYmVhcmluZ3x8dGhpcy5fbWFwLmdldEJlYXJpbmcoKSkmJih0LmJlYXJpbmc9MCksdC5mcmVlemVFbGV2YXRpb249ITAsdGhpcy5fbWFwLmVhc2VUbyh0LHtvcmlnaW5hbEV2ZW50Omh9KSksdGhpcy5fdXBkYXRpbmdDYW1lcmE9ITE7fX1fZmlyZUV2ZW50KHQsaSl7dGhpcy5fbWFwLmZpcmUobmV3IGUuayh0LGk/e29yaWdpbmFsRXZlbnQ6aX06e30pKTt9X3JlcXVlc3RGcmFtZSgpe3JldHVybiB0aGlzLl9tYXAudHJpZ2dlclJlcGFpbnQoKSx0aGlzLl9tYXAuX3JlbmRlclRhc2tRdWV1ZS5hZGQoKHQ9PntkZWxldGUgdGhpcy5fZnJhbWVJZCx0aGlzLmhhbmRsZUV2ZW50KG5ldyB5cyhcInJlbmRlckZyYW1lXCIse3RpbWVTdGFtcDp0fSkpLHRoaXMuX2FwcGx5Q2hhbmdlcygpO30pKX1fdHJpZ2dlclJlbmRlckZyYW1lKCl7dm9pZCAwPT09dGhpcy5fZnJhbWVJZCYmKHRoaXMuX2ZyYW1lSWQ9dGhpcy5fcmVxdWVzdEZyYW1lKCkpO319Y2xhc3MgVHMgZXh0ZW5kcyBlLkV7Y29uc3RydWN0b3IodCxlKXtzdXBlcigpLHRoaXMuX3JlbmRlckZyYW1lQ2FsbGJhY2s9KCk9Pntjb25zdCB0PU1hdGgubWluKChvLm5vdygpLXRoaXMuX2Vhc2VTdGFydCkvdGhpcy5fZWFzZU9wdGlvbnMuZHVyYXRpb24sMSk7dGhpcy5fb25FYXNlRnJhbWUodGhpcy5fZWFzZU9wdGlvbnMuZWFzaW5nKHQpKSx0PDEmJnRoaXMuX2Vhc2VGcmFtZUlkP3RoaXMuX2Vhc2VGcmFtZUlkPXRoaXMuX3JlcXVlc3RSZW5kZXJGcmFtZSh0aGlzLl9yZW5kZXJGcmFtZUNhbGxiYWNrKTp0aGlzLnN0b3AoKTt9LHRoaXMuX21vdmluZz0hMSx0aGlzLl96b29taW5nPSExLHRoaXMudHJhbnNmb3JtPXQsdGhpcy5fYmVhcmluZ1NuYXA9ZS5iZWFyaW5nU25hcCx0aGlzLm9uKFwibW92ZWVuZFwiLCgoKT0+e2RlbGV0ZSB0aGlzLl9yZXF1ZXN0ZWRDYW1lcmFTdGF0ZTt9KSk7fWdldENlbnRlcigpe3JldHVybiBuZXcgZS5OKHRoaXMudHJhbnNmb3JtLmNlbnRlci5sbmcsdGhpcy50cmFuc2Zvcm0uY2VudGVyLmxhdCl9c2V0Q2VudGVyKHQsZSl7cmV0dXJuIHRoaXMuanVtcFRvKHtjZW50ZXI6dH0sZSl9cGFuQnkodCxpLGEpe3JldHVybiB0PWUuUC5jb252ZXJ0KHQpLm11bHQoLTEpLHRoaXMucGFuVG8odGhpcy50cmFuc2Zvcm0uY2VudGVyLGUuZSh7b2Zmc2V0OnR9LGkpLGEpfXBhblRvKHQsaSxhKXtyZXR1cm4gdGhpcy5lYXNlVG8oZS5lKHtjZW50ZXI6dH0saSksYSl9Z2V0Wm9vbSgpe3JldHVybiB0aGlzLnRyYW5zZm9ybS56b29tfXNldFpvb20odCxlKXtyZXR1cm4gdGhpcy5qdW1wVG8oe3pvb206dH0sZSksdGhpc316b29tVG8odCxpLGEpe3JldHVybiB0aGlzLmVhc2VUbyhlLmUoe3pvb206dH0saSksYSl9em9vbUluKHQsZSl7cmV0dXJuIHRoaXMuem9vbVRvKHRoaXMuZ2V0Wm9vbSgpKzEsdCxlKSx0aGlzfXpvb21PdXQodCxlKXtyZXR1cm4gdGhpcy56b29tVG8odGhpcy5nZXRab29tKCktMSx0LGUpLHRoaXN9Z2V0QmVhcmluZygpe3JldHVybiB0aGlzLnRyYW5zZm9ybS5iZWFyaW5nfXNldEJlYXJpbmcodCxlKXtyZXR1cm4gdGhpcy5qdW1wVG8oe2JlYXJpbmc6dH0sZSksdGhpc31nZXRQYWRkaW5nKCl7cmV0dXJuIHRoaXMudHJhbnNmb3JtLnBhZGRpbmd9c2V0UGFkZGluZyh0LGUpe3JldHVybiB0aGlzLmp1bXBUbyh7cGFkZGluZzp0fSxlKSx0aGlzfXJvdGF0ZVRvKHQsaSxhKXtyZXR1cm4gdGhpcy5lYXNlVG8oZS5lKHtiZWFyaW5nOnR9LGkpLGEpfXJlc2V0Tm9ydGgodCxpKXtyZXR1cm4gdGhpcy5yb3RhdGVUbygwLGUuZSh7ZHVyYXRpb246MWUzfSx0KSxpKSx0aGlzfXJlc2V0Tm9ydGhQaXRjaCh0LGkpe3JldHVybiB0aGlzLmVhc2VUbyhlLmUoe2JlYXJpbmc6MCxwaXRjaDowLGR1cmF0aW9uOjFlM30sdCksaSksdGhpc31zbmFwVG9Ob3J0aCh0LGUpe3JldHVybiBNYXRoLmFicyh0aGlzLmdldEJlYXJpbmcoKSk8dGhpcy5fYmVhcmluZ1NuYXA/dGhpcy5yZXNldE5vcnRoKHQsZSk6dGhpc31nZXRQaXRjaCgpe3JldHVybiB0aGlzLnRyYW5zZm9ybS5waXRjaH1zZXRQaXRjaCh0LGUpe3JldHVybiB0aGlzLmp1bXBUbyh7cGl0Y2g6dH0sZSksdGhpc31jYW1lcmFGb3JCb3VuZHModCxlKXt0PUguY29udmVydCh0KS5hZGp1c3RBbnRpTWVyaWRpYW4oKTtjb25zdCBpPWUmJmUuYmVhcmluZ3x8MDtyZXR1cm4gdGhpcy5fY2FtZXJhRm9yQm94QW5kQmVhcmluZyh0LmdldE5vcnRoV2VzdCgpLHQuZ2V0U291dGhFYXN0KCksaSxlKX1fY2FtZXJhRm9yQm94QW5kQmVhcmluZyh0LGksYSxzKXtjb25zdCBvPXt0b3A6MCxib3R0b206MCxyaWdodDowLGxlZnQ6MH07aWYoXCJudW1iZXJcIj09dHlwZW9mKHM9ZS5lKHtwYWRkaW5nOm8sb2Zmc2V0OlswLDBdLG1heFpvb206dGhpcy50cmFuc2Zvcm0ubWF4Wm9vbX0scykpLnBhZGRpbmcpe2NvbnN0IHQ9cy5wYWRkaW5nO3MucGFkZGluZz17dG9wOnQsYm90dG9tOnQscmlnaHQ6dCxsZWZ0OnR9O31zLnBhZGRpbmc9ZS5lKG8scy5wYWRkaW5nKTtjb25zdCByPXRoaXMudHJhbnNmb3JtLG49ci5wYWRkaW5nLGw9bmV3IEgodCxpKSxoPXIucHJvamVjdChsLmdldE5vcnRoV2VzdCgpKSxjPXIucHJvamVjdChsLmdldE5vcnRoRWFzdCgpKSx1PXIucHJvamVjdChsLmdldFNvdXRoRWFzdCgpKSxkPXIucHJvamVjdChsLmdldFNvdXRoV2VzdCgpKSxfPWUuYmEoLWEpLHA9aC5yb3RhdGUoXyksbT1jLnJvdGF0ZShfKSxmPXUucm90YXRlKF8pLGc9ZC5yb3RhdGUoXyksdj1uZXcgZS5QKE1hdGgubWF4KHAueCxtLngsZy54LGYueCksTWF0aC5tYXgocC55LG0ueSxnLnksZi55KSkseD1uZXcgZS5QKE1hdGgubWluKHAueCxtLngsZy54LGYueCksTWF0aC5taW4ocC55LG0ueSxnLnksZi55KSkseT12LnN1Yih4KSxiPShyLndpZHRoLShuLmxlZnQrbi5yaWdodCtzLnBhZGRpbmcubGVmdCtzLnBhZGRpbmcucmlnaHQpKS95Lngsdz0oci5oZWlnaHQtKG4udG9wK24uYm90dG9tK3MucGFkZGluZy50b3Arcy5wYWRkaW5nLmJvdHRvbSkpL3kueTtpZih3PDB8fGI8MClyZXR1cm4gdm9pZCBlLncoXCJNYXAgY2Fubm90IGZpdCB3aXRoaW4gY2FudmFzIHdpdGggdGhlIGdpdmVuIGJvdW5kcywgcGFkZGluZywgYW5kL29yIG9mZnNldC5cIik7Y29uc3QgVD1NYXRoLm1pbihyLnNjYWxlWm9vbShyLnNjYWxlKk1hdGgubWluKGIsdykpLHMubWF4Wm9vbSksST1lLlAuY29udmVydChzLm9mZnNldCksRT1uZXcgZS5QKChzLnBhZGRpbmcubGVmdC1zLnBhZGRpbmcucmlnaHQpLzIsKHMucGFkZGluZy50b3Atcy5wYWRkaW5nLmJvdHRvbSkvMikucm90YXRlKGUuYmEoYSkpLFA9SS5hZGQoRSkubXVsdChyLnNjYWxlL3Iuem9vbVNjYWxlKFQpKTtyZXR1cm4ge2NlbnRlcjpyLnVucHJvamVjdChoLmFkZCh1KS5kaXYoMikuc3ViKFApKSx6b29tOlQsYmVhcmluZzphfX1maXRCb3VuZHModCxlLGkpe3JldHVybiB0aGlzLl9maXRJbnRlcm5hbCh0aGlzLmNhbWVyYUZvckJvdW5kcyh0LGUpLGUsaSl9Zml0U2NyZWVuQ29vcmRpbmF0ZXModCxpLGEscyxvKXtyZXR1cm4gdGhpcy5fZml0SW50ZXJuYWwodGhpcy5fY2FtZXJhRm9yQm94QW5kQmVhcmluZyh0aGlzLnRyYW5zZm9ybS5wb2ludExvY2F0aW9uKGUuUC5jb252ZXJ0KHQpKSx0aGlzLnRyYW5zZm9ybS5wb2ludExvY2F0aW9uKGUuUC5jb252ZXJ0KGkpKSxhLHMpLHMsbyl9X2ZpdEludGVybmFsKHQsaSxhKXtyZXR1cm4gdD8oZGVsZXRlKGk9ZS5lKHQsaSkpLnBhZGRpbmcsaS5saW5lYXI/dGhpcy5lYXNlVG8oaSxhKTp0aGlzLmZseVRvKGksYSkpOnRoaXN9anVtcFRvKHQsaSl7dGhpcy5zdG9wKCk7Y29uc3QgYT10aGlzLl9nZXRUcmFuc2Zvcm1Gb3JVcGRhdGUoKTtsZXQgcz0hMSxvPSExLHI9ITE7cmV0dXJuIFwiem9vbVwiaW4gdCYmYS56b29tIT09K3Quem9vbSYmKHM9ITAsYS56b29tPSt0Lnpvb20pLHZvaWQgMCE9PXQuY2VudGVyJiYoYS5jZW50ZXI9ZS5OLmNvbnZlcnQodC5jZW50ZXIpKSxcImJlYXJpbmdcImluIHQmJmEuYmVhcmluZyE9PSt0LmJlYXJpbmcmJihvPSEwLGEuYmVhcmluZz0rdC5iZWFyaW5nKSxcInBpdGNoXCJpbiB0JiZhLnBpdGNoIT09K3QucGl0Y2gmJihyPSEwLGEucGl0Y2g9K3QucGl0Y2gpLG51bGw9PXQucGFkZGluZ3x8YS5pc1BhZGRpbmdFcXVhbCh0LnBhZGRpbmcpfHwoYS5wYWRkaW5nPXQucGFkZGluZyksdGhpcy5fYXBwbHlVcGRhdGVkVHJhbnNmb3JtKGEpLHRoaXMuZmlyZShuZXcgZS5rKFwibW92ZXN0YXJ0XCIsaSkpLmZpcmUobmV3IGUuayhcIm1vdmVcIixpKSkscyYmdGhpcy5maXJlKG5ldyBlLmsoXCJ6b29tc3RhcnRcIixpKSkuZmlyZShuZXcgZS5rKFwiem9vbVwiLGkpKS5maXJlKG5ldyBlLmsoXCJ6b29tZW5kXCIsaSkpLG8mJnRoaXMuZmlyZShuZXcgZS5rKFwicm90YXRlc3RhcnRcIixpKSkuZmlyZShuZXcgZS5rKFwicm90YXRlXCIsaSkpLmZpcmUobmV3IGUuayhcInJvdGF0ZWVuZFwiLGkpKSxyJiZ0aGlzLmZpcmUobmV3IGUuayhcInBpdGNoc3RhcnRcIixpKSkuZmlyZShuZXcgZS5rKFwicGl0Y2hcIixpKSkuZmlyZShuZXcgZS5rKFwicGl0Y2hlbmRcIixpKSksdGhpcy5maXJlKG5ldyBlLmsoXCJtb3ZlZW5kXCIsaSkpfWNhbGN1bGF0ZUNhbWVyYU9wdGlvbnNGcm9tVG8odCxpLGEscz0wKXtjb25zdCBvPWUuWi5mcm9tTG5nTGF0KHQsaSkscj1lLlouZnJvbUxuZ0xhdChhLHMpLG49ci54LW8ueCxsPXIueS1vLnksaD1yLnotby56LGM9TWF0aC5oeXBvdChuLGwsaCk7aWYoMD09PWMpdGhyb3cgbmV3IEVycm9yKFwiQ2FuJ3QgY2FsY3VsYXRlIGNhbWVyYSBvcHRpb25zIHdpdGggc2FtZSBGcm9tIGFuZCBUb1wiKTtjb25zdCB1PU1hdGguaHlwb3QobixsKSxkPXRoaXMudHJhbnNmb3JtLnNjYWxlWm9vbSh0aGlzLnRyYW5zZm9ybS5jYW1lcmFUb0NlbnRlckRpc3RhbmNlL2MvdGhpcy50cmFuc2Zvcm0udGlsZVNpemUpLF89MTgwKk1hdGguYXRhbjIobiwtbCkvTWF0aC5QSTtsZXQgcD0xODAqTWF0aC5hY29zKHUvYykvTWF0aC5QSTtyZXR1cm4gcD1oPDA/OTAtcDo5MCtwLHtjZW50ZXI6ci50b0xuZ0xhdCgpLHpvb206ZCxwaXRjaDpwLGJlYXJpbmc6X319ZWFzZVRvKHQsaSl7dmFyIGE7dGhpcy5fc3RvcCghMSx0LmVhc2VJZCksKCExPT09KHQ9ZS5lKHtvZmZzZXQ6WzAsMF0sZHVyYXRpb246NTAwLGVhc2luZzplLmI5fSx0KSkuYW5pbWF0ZXx8IXQuZXNzZW50aWFsJiZvLnByZWZlcnNSZWR1Y2VkTW90aW9uKSYmKHQuZHVyYXRpb249MCk7Y29uc3Qgcz10aGlzLl9nZXRUcmFuc2Zvcm1Gb3JVcGRhdGUoKSxyPXMuem9vbSxuPXMuYmVhcmluZyxsPXMucGl0Y2gsaD1zLnBhZGRpbmcsYz1cImJlYXJpbmdcImluIHQ/dGhpcy5fbm9ybWFsaXplQmVhcmluZyh0LmJlYXJpbmcsbik6bix1PVwicGl0Y2hcImluIHQ/K3QucGl0Y2g6bCxkPVwicGFkZGluZ1wiaW4gdD90LnBhZGRpbmc6cy5wYWRkaW5nLF89ZS5QLmNvbnZlcnQodC5vZmZzZXQpO2xldCBwPXMuY2VudGVyUG9pbnQuYWRkKF8pO2NvbnN0IG09cy5wb2ludExvY2F0aW9uKHApLHtjZW50ZXI6Zix6b29tOmd9PXMuZ2V0Q29uc3RyYWluZWQoZS5OLmNvbnZlcnQodC5jZW50ZXJ8fG0pLG51bGwhPT0oYT10Lnpvb20pJiZ2b2lkIDAhPT1hP2E6cik7dGhpcy5fbm9ybWFsaXplQ2VudGVyKGYscyk7Y29uc3Qgdj1zLnByb2plY3QobSkseD1zLnByb2plY3QoZikuc3ViKHYpLHk9cy56b29tU2NhbGUoZy1yKTtsZXQgYix3O3QuYXJvdW5kJiYoYj1lLk4uY29udmVydCh0LmFyb3VuZCksdz1zLmxvY2F0aW9uUG9pbnQoYikpO2NvbnN0IFQ9e21vdmluZzp0aGlzLl9tb3Zpbmcsem9vbWluZzp0aGlzLl96b29taW5nLHJvdGF0aW5nOnRoaXMuX3JvdGF0aW5nLHBpdGNoaW5nOnRoaXMuX3BpdGNoaW5nfTtyZXR1cm4gdGhpcy5fem9vbWluZz10aGlzLl96b29taW5nfHxnIT09cix0aGlzLl9yb3RhdGluZz10aGlzLl9yb3RhdGluZ3x8biE9PWMsdGhpcy5fcGl0Y2hpbmc9dGhpcy5fcGl0Y2hpbmd8fHUhPT1sLHRoaXMuX3BhZGRpbmc9IXMuaXNQYWRkaW5nRXF1YWwoZCksdGhpcy5fZWFzZUlkPXQuZWFzZUlkLHRoaXMuX3ByZXBhcmVFYXNlKGksdC5ub01vdmVTdGFydCxUKSx0aGlzLnRlcnJhaW4mJnRoaXMuX3ByZXBhcmVFbGV2YXRpb24oZiksdGhpcy5fZWFzZSgoYT0+e2lmKHRoaXMuX3pvb21pbmcmJihzLnpvb209ZS55Lm51bWJlcihyLGcsYSkpLHRoaXMuX3JvdGF0aW5nJiYocy5iZWFyaW5nPWUueS5udW1iZXIobixjLGEpKSx0aGlzLl9waXRjaGluZyYmKHMucGl0Y2g9ZS55Lm51bWJlcihsLHUsYSkpLHRoaXMuX3BhZGRpbmcmJihzLmludGVycG9sYXRlUGFkZGluZyhoLGQsYSkscD1zLmNlbnRlclBvaW50LmFkZChfKSksdGhpcy50ZXJyYWluJiYhdC5mcmVlemVFbGV2YXRpb24mJnRoaXMuX3VwZGF0ZUVsZXZhdGlvbihhKSxiKXMuc2V0TG9jYXRpb25BdFBvaW50KGIsdyk7ZWxzZSB7Y29uc3QgdD1zLnpvb21TY2FsZShzLnpvb20tciksZT1nPnI/TWF0aC5taW4oMix5KTpNYXRoLm1heCguNSx5KSxpPU1hdGgucG93KGUsMS1hKSxvPXMudW5wcm9qZWN0KHYuYWRkKHgubXVsdChhKmkpKS5tdWx0KHQpKTtzLnNldExvY2F0aW9uQXRQb2ludChzLnJlbmRlcldvcmxkQ29waWVzP28ud3JhcCgpOm8scCk7fXRoaXMuX2FwcGx5VXBkYXRlZFRyYW5zZm9ybShzKSx0aGlzLl9maXJlTW92ZUV2ZW50cyhpKTt9KSwoZT0+e3RoaXMudGVycmFpbiYmdC5mcmVlemVFbGV2YXRpb24mJnRoaXMuX2ZpbmFsaXplRWxldmF0aW9uKCksdGhpcy5fYWZ0ZXJFYXNlKGksZSk7fSksdCksdGhpc31fcHJlcGFyZUVhc2UodCxpLGE9e30pe3RoaXMuX21vdmluZz0hMCxpfHxhLm1vdmluZ3x8dGhpcy5maXJlKG5ldyBlLmsoXCJtb3Zlc3RhcnRcIix0KSksdGhpcy5fem9vbWluZyYmIWEuem9vbWluZyYmdGhpcy5maXJlKG5ldyBlLmsoXCJ6b29tc3RhcnRcIix0KSksdGhpcy5fcm90YXRpbmcmJiFhLnJvdGF0aW5nJiZ0aGlzLmZpcmUobmV3IGUuayhcInJvdGF0ZXN0YXJ0XCIsdCkpLHRoaXMuX3BpdGNoaW5nJiYhYS5waXRjaGluZyYmdGhpcy5maXJlKG5ldyBlLmsoXCJwaXRjaHN0YXJ0XCIsdCkpO31fcHJlcGFyZUVsZXZhdGlvbih0KXt0aGlzLl9lbGV2YXRpb25DZW50ZXI9dCx0aGlzLl9lbGV2YXRpb25TdGFydD10aGlzLnRyYW5zZm9ybS5lbGV2YXRpb24sdGhpcy5fZWxldmF0aW9uVGFyZ2V0PXRoaXMudGVycmFpbi5nZXRFbGV2YXRpb25Gb3JMbmdMYXRab29tKHQsdGhpcy50cmFuc2Zvcm0udGlsZVpvb20pLHRoaXMuX2VsZXZhdGlvbkZyZWV6ZT0hMDt9X3VwZGF0ZUVsZXZhdGlvbih0KXt0aGlzLnRyYW5zZm9ybS5taW5FbGV2YXRpb25Gb3JDdXJyZW50VGlsZT10aGlzLnRlcnJhaW4uZ2V0TWluVGlsZUVsZXZhdGlvbkZvckxuZ0xhdFpvb20odGhpcy5fZWxldmF0aW9uQ2VudGVyLHRoaXMudHJhbnNmb3JtLnRpbGVab29tKTtjb25zdCBpPXRoaXMudGVycmFpbi5nZXRFbGV2YXRpb25Gb3JMbmdMYXRab29tKHRoaXMuX2VsZXZhdGlvbkNlbnRlcix0aGlzLnRyYW5zZm9ybS50aWxlWm9vbSk7aWYodDwxJiZpIT09dGhpcy5fZWxldmF0aW9uVGFyZ2V0KXtjb25zdCBlPXRoaXMuX2VsZXZhdGlvblRhcmdldC10aGlzLl9lbGV2YXRpb25TdGFydDt0aGlzLl9lbGV2YXRpb25TdGFydCs9dCooZS0oaS0oZSp0K3RoaXMuX2VsZXZhdGlvblN0YXJ0KSkvKDEtdCkpLHRoaXMuX2VsZXZhdGlvblRhcmdldD1pO310aGlzLnRyYW5zZm9ybS5lbGV2YXRpb249ZS55Lm51bWJlcih0aGlzLl9lbGV2YXRpb25TdGFydCx0aGlzLl9lbGV2YXRpb25UYXJnZXQsdCk7fV9maW5hbGl6ZUVsZXZhdGlvbigpe3RoaXMuX2VsZXZhdGlvbkZyZWV6ZT0hMSx0aGlzLnRyYW5zZm9ybS5yZWNhbGN1bGF0ZVpvb20odGhpcy50ZXJyYWluKTt9X2dldFRyYW5zZm9ybUZvclVwZGF0ZSgpe3JldHVybiB0aGlzLnRyYW5zZm9ybUNhbWVyYVVwZGF0ZXx8dGhpcy50ZXJyYWluPyh0aGlzLl9yZXF1ZXN0ZWRDYW1lcmFTdGF0ZXx8KHRoaXMuX3JlcXVlc3RlZENhbWVyYVN0YXRlPXRoaXMudHJhbnNmb3JtLmNsb25lKCkpLHRoaXMuX3JlcXVlc3RlZENhbWVyYVN0YXRlKTp0aGlzLnRyYW5zZm9ybX1fZWxldmF0ZUNhbWVyYUlmSW5zaWRlVGVycmFpbih0KXtjb25zdCBlPXQuZ2V0Q2FtZXJhUG9zaXRpb24oKSxpPXRoaXMudGVycmFpbi5nZXRFbGV2YXRpb25Gb3JMbmdMYXRab29tKGUubG5nTGF0LHQuem9vbSk7aWYoZS5hbHRpdHVkZTxpKXtjb25zdCBhPXRoaXMuY2FsY3VsYXRlQ2FtZXJhT3B0aW9uc0Zyb21UbyhlLmxuZ0xhdCxpLHQuY2VudGVyLHQuZWxldmF0aW9uKTtyZXR1cm4ge3BpdGNoOmEucGl0Y2gsem9vbTphLnpvb219fXJldHVybiB7fX1fYXBwbHlVcGRhdGVkVHJhbnNmb3JtKHQpe2NvbnN0IGU9W107aWYodGhpcy50ZXJyYWluJiZlLnB1c2goKHQ9PnRoaXMuX2VsZXZhdGVDYW1lcmFJZkluc2lkZVRlcnJhaW4odCkpKSx0aGlzLnRyYW5zZm9ybUNhbWVyYVVwZGF0ZSYmZS5wdXNoKCh0PT50aGlzLnRyYW5zZm9ybUNhbWVyYVVwZGF0ZSh0KSkpLCFlLmxlbmd0aClyZXR1cm47Y29uc3QgaT10LmNsb25lKCk7Zm9yKGNvbnN0IHQgb2YgZSl7Y29uc3QgZT1pLmNsb25lKCkse2NlbnRlcjphLHpvb206cyxwaXRjaDpvLGJlYXJpbmc6cixlbGV2YXRpb246bn09dChlKTthJiYoZS5jZW50ZXI9YSksdm9pZCAwIT09cyYmKGUuem9vbT1zKSx2b2lkIDAhPT1vJiYoZS5waXRjaD1vKSx2b2lkIDAhPT1yJiYoZS5iZWFyaW5nPXIpLHZvaWQgMCE9PW4mJihlLmVsZXZhdGlvbj1uKSxpLmFwcGx5KGUpO310aGlzLnRyYW5zZm9ybS5hcHBseShpKTt9X2ZpcmVNb3ZlRXZlbnRzKHQpe3RoaXMuZmlyZShuZXcgZS5rKFwibW92ZVwiLHQpKSx0aGlzLl96b29taW5nJiZ0aGlzLmZpcmUobmV3IGUuayhcInpvb21cIix0KSksdGhpcy5fcm90YXRpbmcmJnRoaXMuZmlyZShuZXcgZS5rKFwicm90YXRlXCIsdCkpLHRoaXMuX3BpdGNoaW5nJiZ0aGlzLmZpcmUobmV3IGUuayhcInBpdGNoXCIsdCkpO31fYWZ0ZXJFYXNlKHQsaSl7aWYodGhpcy5fZWFzZUlkJiZpJiZ0aGlzLl9lYXNlSWQ9PT1pKXJldHVybjtkZWxldGUgdGhpcy5fZWFzZUlkO2NvbnN0IGE9dGhpcy5fem9vbWluZyxzPXRoaXMuX3JvdGF0aW5nLG89dGhpcy5fcGl0Y2hpbmc7dGhpcy5fbW92aW5nPSExLHRoaXMuX3pvb21pbmc9ITEsdGhpcy5fcm90YXRpbmc9ITEsdGhpcy5fcGl0Y2hpbmc9ITEsdGhpcy5fcGFkZGluZz0hMSxhJiZ0aGlzLmZpcmUobmV3IGUuayhcInpvb21lbmRcIix0KSkscyYmdGhpcy5maXJlKG5ldyBlLmsoXCJyb3RhdGVlbmRcIix0KSksbyYmdGhpcy5maXJlKG5ldyBlLmsoXCJwaXRjaGVuZFwiLHQpKSx0aGlzLmZpcmUobmV3IGUuayhcIm1vdmVlbmRcIix0KSk7fWZseVRvKHQsaSl7dmFyIGE7aWYoIXQuZXNzZW50aWFsJiZvLnByZWZlcnNSZWR1Y2VkTW90aW9uKXtjb25zdCBhPWUuTSh0LFtcImNlbnRlclwiLFwiem9vbVwiLFwiYmVhcmluZ1wiLFwicGl0Y2hcIixcImFyb3VuZFwiXSk7cmV0dXJuIHRoaXMuanVtcFRvKGEsaSl9dGhpcy5zdG9wKCksdD1lLmUoe29mZnNldDpbMCwwXSxzcGVlZDoxLjIsY3VydmU6MS40MixlYXNpbmc6ZS5iOX0sdCk7Y29uc3Qgcz10aGlzLl9nZXRUcmFuc2Zvcm1Gb3JVcGRhdGUoKSxyPXMuem9vbSxuPXMuYmVhcmluZyxsPXMucGl0Y2gsaD1zLnBhZGRpbmcsYz1cImJlYXJpbmdcImluIHQ/dGhpcy5fbm9ybWFsaXplQmVhcmluZyh0LmJlYXJpbmcsbik6bix1PVwicGl0Y2hcImluIHQ/K3QucGl0Y2g6bCxkPVwicGFkZGluZ1wiaW4gdD90LnBhZGRpbmc6cy5wYWRkaW5nLF89ZS5QLmNvbnZlcnQodC5vZmZzZXQpO2xldCBwPXMuY2VudGVyUG9pbnQuYWRkKF8pO2NvbnN0IG09cy5wb2ludExvY2F0aW9uKHApLHtjZW50ZXI6Zix6b29tOmd9PXMuZ2V0Q29uc3RyYWluZWQoZS5OLmNvbnZlcnQodC5jZW50ZXJ8fG0pLG51bGwhPT0oYT10Lnpvb20pJiZ2b2lkIDAhPT1hP2E6cik7dGhpcy5fbm9ybWFsaXplQ2VudGVyKGYscyk7Y29uc3Qgdj1zLnpvb21TY2FsZShnLXIpLHg9cy5wcm9qZWN0KG0pLHk9cy5wcm9qZWN0KGYpLnN1Yih4KTtsZXQgYj10LmN1cnZlO2NvbnN0IHc9TWF0aC5tYXgocy53aWR0aCxzLmhlaWdodCksVD13L3YsST15Lm1hZygpO2lmKFwibWluWm9vbVwiaW4gdCl7Y29uc3QgaT1lLmFjKE1hdGgubWluKHQubWluWm9vbSxyLGcpLHMubWluWm9vbSxzLm1heFpvb20pLGE9dy9zLnpvb21TY2FsZShpLXIpO2I9TWF0aC5zcXJ0KGEvSSoyKTt9Y29uc3QgRT1iKmI7ZnVuY3Rpb24gUCh0KXtjb25zdCBlPShUKlQtdyp3Kyh0Py0xOjEpKkUqRSpJKkkpLygyKih0P1Q6dykqRSpJKTtyZXR1cm4gTWF0aC5sb2coTWF0aC5zcXJ0KGUqZSsxKS1lKX1mdW5jdGlvbiBDKHQpe3JldHVybiAoTWF0aC5leHAodCktTWF0aC5leHAoLXQpKS8yfWZ1bmN0aW9uIFModCl7cmV0dXJuIChNYXRoLmV4cCh0KStNYXRoLmV4cCgtdCkpLzJ9Y29uc3Qgej1QKCExKTtsZXQgRD1mdW5jdGlvbih0KXtyZXR1cm4gUyh6KS9TKHorYip0KX0sTT1mdW5jdGlvbih0KXtyZXR1cm4gdyooKFMoeikqKEMoZT16K2IqdCkvUyhlKSktQyh6KSkvRSkvSTt2YXIgZTt9LEE9KFAoITApLXopL2I7aWYoTWF0aC5hYnMoSSk8MWUtNnx8IWlzRmluaXRlKEEpKXtpZihNYXRoLmFicyh3LVQpPDFlLTYpcmV0dXJuIHRoaXMuZWFzZVRvKHQsaSk7Y29uc3QgZT1UPHc/LTE6MTtBPU1hdGguYWJzKE1hdGgubG9nKFQvdykpL2IsTT0oKT0+MCxEPXQ9Pk1hdGguZXhwKGUqYip0KTt9cmV0dXJuIHQuZHVyYXRpb249XCJkdXJhdGlvblwiaW4gdD8rdC5kdXJhdGlvbjoxZTMqQS8oXCJzY3JlZW5TcGVlZFwiaW4gdD8rdC5zY3JlZW5TcGVlZC9iOit0LnNwZWVkKSx0Lm1heER1cmF0aW9uJiZ0LmR1cmF0aW9uPnQubWF4RHVyYXRpb24mJih0LmR1cmF0aW9uPTApLHRoaXMuX3pvb21pbmc9ITAsdGhpcy5fcm90YXRpbmc9biE9PWMsdGhpcy5fcGl0Y2hpbmc9dSE9PWwsdGhpcy5fcGFkZGluZz0hcy5pc1BhZGRpbmdFcXVhbChkKSx0aGlzLl9wcmVwYXJlRWFzZShpLCExKSx0aGlzLnRlcnJhaW4mJnRoaXMuX3ByZXBhcmVFbGV2YXRpb24oZiksdGhpcy5fZWFzZSgoYT0+e2NvbnN0IG89YSpBLG09MS9EKG8pO3Muem9vbT0xPT09YT9nOnIrcy5zY2FsZVpvb20obSksdGhpcy5fcm90YXRpbmcmJihzLmJlYXJpbmc9ZS55Lm51bWJlcihuLGMsYSkpLHRoaXMuX3BpdGNoaW5nJiYocy5waXRjaD1lLnkubnVtYmVyKGwsdSxhKSksdGhpcy5fcGFkZGluZyYmKHMuaW50ZXJwb2xhdGVQYWRkaW5nKGgsZCxhKSxwPXMuY2VudGVyUG9pbnQuYWRkKF8pKSx0aGlzLnRlcnJhaW4mJiF0LmZyZWV6ZUVsZXZhdGlvbiYmdGhpcy5fdXBkYXRlRWxldmF0aW9uKGEpO2NvbnN0IHY9MT09PWE/ZjpzLnVucHJvamVjdCh4LmFkZCh5Lm11bHQoTShvKSkpLm11bHQobSkpO3Muc2V0TG9jYXRpb25BdFBvaW50KHMucmVuZGVyV29ybGRDb3BpZXM/di53cmFwKCk6dixwKSx0aGlzLl9hcHBseVVwZGF0ZWRUcmFuc2Zvcm0ocyksdGhpcy5fZmlyZU1vdmVFdmVudHMoaSk7fSksKCgpPT57dGhpcy50ZXJyYWluJiZ0LmZyZWV6ZUVsZXZhdGlvbiYmdGhpcy5fZmluYWxpemVFbGV2YXRpb24oKSx0aGlzLl9hZnRlckVhc2UoaSk7fSksdCksdGhpc31pc0Vhc2luZygpe3JldHVybiAhIXRoaXMuX2Vhc2VGcmFtZUlkfXN0b3AoKXtyZXR1cm4gdGhpcy5fc3RvcCgpfV9zdG9wKHQsZSl7dmFyIGk7aWYodGhpcy5fZWFzZUZyYW1lSWQmJih0aGlzLl9jYW5jZWxSZW5kZXJGcmFtZSh0aGlzLl9lYXNlRnJhbWVJZCksZGVsZXRlIHRoaXMuX2Vhc2VGcmFtZUlkLGRlbGV0ZSB0aGlzLl9vbkVhc2VGcmFtZSksdGhpcy5fb25FYXNlRW5kKXtjb25zdCB0PXRoaXMuX29uRWFzZUVuZDtkZWxldGUgdGhpcy5fb25FYXNlRW5kLHQuY2FsbCh0aGlzLGUpO31yZXR1cm4gdHx8bnVsbD09PShpPXRoaXMuaGFuZGxlcnMpfHx2b2lkIDA9PT1pfHxpLnN0b3AoITEpLHRoaXN9X2Vhc2UodCxlLGkpeyExPT09aS5hbmltYXRlfHwwPT09aS5kdXJhdGlvbj8odCgxKSxlKCkpOih0aGlzLl9lYXNlU3RhcnQ9by5ub3coKSx0aGlzLl9lYXNlT3B0aW9ucz1pLHRoaXMuX29uRWFzZUZyYW1lPXQsdGhpcy5fb25FYXNlRW5kPWUsdGhpcy5fZWFzZUZyYW1lSWQ9dGhpcy5fcmVxdWVzdFJlbmRlckZyYW1lKHRoaXMuX3JlbmRlckZyYW1lQ2FsbGJhY2spKTt9X25vcm1hbGl6ZUJlYXJpbmcodCxpKXt0PWUuYjModCwtMTgwLDE4MCk7Y29uc3QgYT1NYXRoLmFicyh0LWkpO3JldHVybiBNYXRoLmFicyh0LTM2MC1pKTxhJiYodC09MzYwKSxNYXRoLmFicyh0KzM2MC1pKTxhJiYodCs9MzYwKSx0fV9ub3JtYWxpemVDZW50ZXIodCxlKXtpZighZS5yZW5kZXJXb3JsZENvcGllc3x8ZS5sbmdSYW5nZSlyZXR1cm47Y29uc3QgaT10LmxuZy1lLmNlbnRlci5sbmc7dC5sbmcrPWk+MTgwPy0zNjA6aTwtMTgwPzM2MDowO31xdWVyeVRlcnJhaW5FbGV2YXRpb24odCl7cmV0dXJuIHRoaXMudGVycmFpbj90aGlzLnRlcnJhaW4uZ2V0RWxldmF0aW9uRm9yTG5nTGF0Wm9vbShlLk4uY29udmVydCh0KSx0aGlzLnRyYW5zZm9ybS50aWxlWm9vbSktdGhpcy50cmFuc2Zvcm0uZWxldmF0aW9uOm51bGx9fWNvbnN0IElzPXtjb21wYWN0OiEwLGN1c3RvbUF0dHJpYnV0aW9uOic8YSBocmVmPVwiaHR0cHM6Ly9tYXBsaWJyZS5vcmcvXCIgdGFyZ2V0PVwiX2JsYW5rXCI+TWFwTGlicmU8L2E+J307Y2xhc3MgRXN7Y29uc3RydWN0b3IodD1Jcyl7dGhpcy5fdG9nZ2xlQXR0cmlidXRpb249KCk9Pnt0aGlzLl9jb250YWluZXIuY2xhc3NMaXN0LmNvbnRhaW5zKFwibWFwbGlicmVnbC1jb21wYWN0XCIpJiYodGhpcy5fY29udGFpbmVyLmNsYXNzTGlzdC5jb250YWlucyhcIm1hcGxpYnJlZ2wtY29tcGFjdC1zaG93XCIpPyh0aGlzLl9jb250YWluZXIuc2V0QXR0cmlidXRlKFwib3BlblwiLFwiXCIpLHRoaXMuX2NvbnRhaW5lci5jbGFzc0xpc3QucmVtb3ZlKFwibWFwbGlicmVnbC1jb21wYWN0LXNob3dcIikpOih0aGlzLl9jb250YWluZXIuY2xhc3NMaXN0LmFkZChcIm1hcGxpYnJlZ2wtY29tcGFjdC1zaG93XCIpLHRoaXMuX2NvbnRhaW5lci5yZW1vdmVBdHRyaWJ1dGUoXCJvcGVuXCIpKSk7fSx0aGlzLl91cGRhdGVEYXRhPXQ9PnshdHx8XCJtZXRhZGF0YVwiIT09dC5zb3VyY2VEYXRhVHlwZSYmXCJ2aXNpYmlsaXR5XCIhPT10LnNvdXJjZURhdGFUeXBlJiZcInN0eWxlXCIhPT10LmRhdGFUeXBlJiZcInRlcnJhaW5cIiE9PXQudHlwZXx8dGhpcy5fdXBkYXRlQXR0cmlidXRpb25zKCk7fSx0aGlzLl91cGRhdGVDb21wYWN0PSgpPT57dGhpcy5fbWFwLmdldENhbnZhc0NvbnRhaW5lcigpLm9mZnNldFdpZHRoPD02NDB8fHRoaXMuX2NvbXBhY3Q/ITE9PT10aGlzLl9jb21wYWN0P3RoaXMuX2NvbnRhaW5lci5zZXRBdHRyaWJ1dGUoXCJvcGVuXCIsXCJcIik6dGhpcy5fY29udGFpbmVyLmNsYXNzTGlzdC5jb250YWlucyhcIm1hcGxpYnJlZ2wtY29tcGFjdFwiKXx8dGhpcy5fY29udGFpbmVyLmNsYXNzTGlzdC5jb250YWlucyhcIm1hcGxpYnJlZ2wtYXR0cmliLWVtcHR5XCIpfHwodGhpcy5fY29udGFpbmVyLnNldEF0dHJpYnV0ZShcIm9wZW5cIixcIlwiKSx0aGlzLl9jb250YWluZXIuY2xhc3NMaXN0LmFkZChcIm1hcGxpYnJlZ2wtY29tcGFjdFwiLFwibWFwbGlicmVnbC1jb21wYWN0LXNob3dcIikpOih0aGlzLl9jb250YWluZXIuc2V0QXR0cmlidXRlKFwib3BlblwiLFwiXCIpLHRoaXMuX2NvbnRhaW5lci5jbGFzc0xpc3QuY29udGFpbnMoXCJtYXBsaWJyZWdsLWNvbXBhY3RcIikmJnRoaXMuX2NvbnRhaW5lci5jbGFzc0xpc3QucmVtb3ZlKFwibWFwbGlicmVnbC1jb21wYWN0XCIsXCJtYXBsaWJyZWdsLWNvbXBhY3Qtc2hvd1wiKSk7fSx0aGlzLl91cGRhdGVDb21wYWN0TWluaW1pemU9KCk9Pnt0aGlzLl9jb250YWluZXIuY2xhc3NMaXN0LmNvbnRhaW5zKFwibWFwbGlicmVnbC1jb21wYWN0XCIpJiZ0aGlzLl9jb250YWluZXIuY2xhc3NMaXN0LmNvbnRhaW5zKFwibWFwbGlicmVnbC1jb21wYWN0LXNob3dcIikmJnRoaXMuX2NvbnRhaW5lci5jbGFzc0xpc3QucmVtb3ZlKFwibWFwbGlicmVnbC1jb21wYWN0LXNob3dcIik7fSx0aGlzLm9wdGlvbnM9dDt9Z2V0RGVmYXVsdFBvc2l0aW9uKCl7cmV0dXJuIFwiYm90dG9tLXJpZ2h0XCJ9b25BZGQodCl7cmV0dXJuIHRoaXMuX21hcD10LHRoaXMuX2NvbXBhY3Q9dGhpcy5vcHRpb25zLmNvbXBhY3QsdGhpcy5fY29udGFpbmVyPXIuY3JlYXRlKFwiZGV0YWlsc1wiLFwibWFwbGlicmVnbC1jdHJsIG1hcGxpYnJlZ2wtY3RybC1hdHRyaWJcIiksdGhpcy5fY29tcGFjdEJ1dHRvbj1yLmNyZWF0ZShcInN1bW1hcnlcIixcIm1hcGxpYnJlZ2wtY3RybC1hdHRyaWItYnV0dG9uXCIsdGhpcy5fY29udGFpbmVyKSx0aGlzLl9jb21wYWN0QnV0dG9uLmFkZEV2ZW50TGlzdGVuZXIoXCJjbGlja1wiLHRoaXMuX3RvZ2dsZUF0dHJpYnV0aW9uKSx0aGlzLl9zZXRFbGVtZW50VGl0bGUodGhpcy5fY29tcGFjdEJ1dHRvbixcIlRvZ2dsZUF0dHJpYnV0aW9uXCIpLHRoaXMuX2lubmVyQ29udGFpbmVyPXIuY3JlYXRlKFwiZGl2XCIsXCJtYXBsaWJyZWdsLWN0cmwtYXR0cmliLWlubmVyXCIsdGhpcy5fY29udGFpbmVyKSx0aGlzLl91cGRhdGVBdHRyaWJ1dGlvbnMoKSx0aGlzLl91cGRhdGVDb21wYWN0KCksdGhpcy5fbWFwLm9uKFwic3R5bGVkYXRhXCIsdGhpcy5fdXBkYXRlRGF0YSksdGhpcy5fbWFwLm9uKFwic291cmNlZGF0YVwiLHRoaXMuX3VwZGF0ZURhdGEpLHRoaXMuX21hcC5vbihcInRlcnJhaW5cIix0aGlzLl91cGRhdGVEYXRhKSx0aGlzLl9tYXAub24oXCJyZXNpemVcIix0aGlzLl91cGRhdGVDb21wYWN0KSx0aGlzLl9tYXAub24oXCJkcmFnXCIsdGhpcy5fdXBkYXRlQ29tcGFjdE1pbmltaXplKSx0aGlzLl9jb250YWluZXJ9b25SZW1vdmUoKXtyLnJlbW92ZSh0aGlzLl9jb250YWluZXIpLHRoaXMuX21hcC5vZmYoXCJzdHlsZWRhdGFcIix0aGlzLl91cGRhdGVEYXRhKSx0aGlzLl9tYXAub2ZmKFwic291cmNlZGF0YVwiLHRoaXMuX3VwZGF0ZURhdGEpLHRoaXMuX21hcC5vZmYoXCJ0ZXJyYWluXCIsdGhpcy5fdXBkYXRlRGF0YSksdGhpcy5fbWFwLm9mZihcInJlc2l6ZVwiLHRoaXMuX3VwZGF0ZUNvbXBhY3QpLHRoaXMuX21hcC5vZmYoXCJkcmFnXCIsdGhpcy5fdXBkYXRlQ29tcGFjdE1pbmltaXplKSx0aGlzLl9tYXA9dm9pZCAwLHRoaXMuX2NvbXBhY3Q9dm9pZCAwLHRoaXMuX2F0dHJpYkhUTUw9dm9pZCAwO31fc2V0RWxlbWVudFRpdGxlKHQsZSl7Y29uc3QgaT10aGlzLl9tYXAuX2dldFVJU3RyaW5nKGBBdHRyaWJ1dGlvbkNvbnRyb2wuJHtlfWApO3QudGl0bGU9aSx0LnNldEF0dHJpYnV0ZShcImFyaWEtbGFiZWxcIixpKTt9X3VwZGF0ZUF0dHJpYnV0aW9ucygpe2lmKCF0aGlzLl9tYXAuc3R5bGUpcmV0dXJuO2xldCB0PVtdO2lmKHRoaXMub3B0aW9ucy5jdXN0b21BdHRyaWJ1dGlvbiYmKEFycmF5LmlzQXJyYXkodGhpcy5vcHRpb25zLmN1c3RvbUF0dHJpYnV0aW9uKT90PXQuY29uY2F0KHRoaXMub3B0aW9ucy5jdXN0b21BdHRyaWJ1dGlvbi5tYXAoKHQ9Plwic3RyaW5nXCIhPXR5cGVvZiB0P1wiXCI6dCkpKTpcInN0cmluZ1wiPT10eXBlb2YgdGhpcy5vcHRpb25zLmN1c3RvbUF0dHJpYnV0aW9uJiZ0LnB1c2godGhpcy5vcHRpb25zLmN1c3RvbUF0dHJpYnV0aW9uKSksdGhpcy5fbWFwLnN0eWxlLnN0eWxlc2hlZXQpe2NvbnN0IHQ9dGhpcy5fbWFwLnN0eWxlLnN0eWxlc2hlZXQ7dGhpcy5zdHlsZU93bmVyPXQub3duZXIsdGhpcy5zdHlsZUlkPXQuaWQ7fWNvbnN0IGU9dGhpcy5fbWFwLnN0eWxlLnNvdXJjZUNhY2hlcztmb3IoY29uc3QgaSBpbiBlKXtjb25zdCBhPWVbaV07aWYoYS51c2VkfHxhLnVzZWRGb3JUZXJyYWluKXtjb25zdCBlPWEuZ2V0U291cmNlKCk7ZS5hdHRyaWJ1dGlvbiYmdC5pbmRleE9mKGUuYXR0cmlidXRpb24pPDAmJnQucHVzaChlLmF0dHJpYnV0aW9uKTt9fXQ9dC5maWx0ZXIoKHQ9PlN0cmluZyh0KS50cmltKCkpKSx0LnNvcnQoKCh0LGUpPT50Lmxlbmd0aC1lLmxlbmd0aCkpLHQ9dC5maWx0ZXIoKChlLGkpPT57Zm9yKGxldCBhPWkrMTthPHQubGVuZ3RoO2ErKylpZih0W2FdLmluZGV4T2YoZSk+PTApcmV0dXJuICExO3JldHVybiAhMH0pKTtjb25zdCBpPXQuam9pbihcIiB8IFwiKTtpIT09dGhpcy5fYXR0cmliSFRNTCYmKHRoaXMuX2F0dHJpYkhUTUw9aSx0Lmxlbmd0aD8odGhpcy5faW5uZXJDb250YWluZXIuaW5uZXJIVE1MPWksdGhpcy5fY29udGFpbmVyLmNsYXNzTGlzdC5yZW1vdmUoXCJtYXBsaWJyZWdsLWF0dHJpYi1lbXB0eVwiKSk6dGhpcy5fY29udGFpbmVyLmNsYXNzTGlzdC5hZGQoXCJtYXBsaWJyZWdsLWF0dHJpYi1lbXB0eVwiKSx0aGlzLl91cGRhdGVDb21wYWN0KCksdGhpcy5fZWRpdExpbms9bnVsbCk7fX1jbGFzcyBQc3tjb25zdHJ1Y3Rvcih0PXt9KXt0aGlzLl91cGRhdGVDb21wYWN0PSgpPT57Y29uc3QgdD10aGlzLl9jb250YWluZXIuY2hpbGRyZW47aWYodC5sZW5ndGgpe2NvbnN0IGU9dFswXTt0aGlzLl9tYXAuZ2V0Q2FudmFzQ29udGFpbmVyKCkub2Zmc2V0V2lkdGg8PTY0MHx8dGhpcy5fY29tcGFjdD8hMSE9PXRoaXMuX2NvbXBhY3QmJmUuY2xhc3NMaXN0LmFkZChcIm1hcGxpYnJlZ2wtY29tcGFjdFwiKTplLmNsYXNzTGlzdC5yZW1vdmUoXCJtYXBsaWJyZWdsLWNvbXBhY3RcIik7fX0sdGhpcy5vcHRpb25zPXQ7fWdldERlZmF1bHRQb3NpdGlvbigpe3JldHVybiBcImJvdHRvbS1sZWZ0XCJ9b25BZGQodCl7dGhpcy5fbWFwPXQsdGhpcy5fY29tcGFjdD10aGlzLm9wdGlvbnMmJnRoaXMub3B0aW9ucy5jb21wYWN0LHRoaXMuX2NvbnRhaW5lcj1yLmNyZWF0ZShcImRpdlwiLFwibWFwbGlicmVnbC1jdHJsXCIpO2NvbnN0IGU9ci5jcmVhdGUoXCJhXCIsXCJtYXBsaWJyZWdsLWN0cmwtbG9nb1wiKTtyZXR1cm4gZS50YXJnZXQ9XCJfYmxhbmtcIixlLnJlbD1cIm5vb3BlbmVyIG5vZm9sbG93XCIsZS5ocmVmPVwiaHR0cHM6Ly9tYXBsaWJyZS5vcmcvXCIsZS5zZXRBdHRyaWJ1dGUoXCJhcmlhLWxhYmVsXCIsdGhpcy5fbWFwLl9nZXRVSVN0cmluZyhcIkxvZ29Db250cm9sLlRpdGxlXCIpKSxlLnNldEF0dHJpYnV0ZShcInJlbFwiLFwibm9vcGVuZXIgbm9mb2xsb3dcIiksdGhpcy5fY29udGFpbmVyLmFwcGVuZENoaWxkKGUpLHRoaXMuX2NvbnRhaW5lci5zdHlsZS5kaXNwbGF5PVwiYmxvY2tcIix0aGlzLl9tYXAub24oXCJyZXNpemVcIix0aGlzLl91cGRhdGVDb21wYWN0KSx0aGlzLl91cGRhdGVDb21wYWN0KCksdGhpcy5fY29udGFpbmVyfW9uUmVtb3ZlKCl7ci5yZW1vdmUodGhpcy5fY29udGFpbmVyKSx0aGlzLl9tYXAub2ZmKFwicmVzaXplXCIsdGhpcy5fdXBkYXRlQ29tcGFjdCksdGhpcy5fbWFwPXZvaWQgMCx0aGlzLl9jb21wYWN0PXZvaWQgMDt9fWNsYXNzIENze2NvbnN0cnVjdG9yKCl7dGhpcy5fcXVldWU9W10sdGhpcy5faWQ9MCx0aGlzLl9jbGVhcmVkPSExLHRoaXMuX2N1cnJlbnRseVJ1bm5pbmc9ITE7fWFkZCh0KXtjb25zdCBlPSsrdGhpcy5faWQ7cmV0dXJuIHRoaXMuX3F1ZXVlLnB1c2goe2NhbGxiYWNrOnQsaWQ6ZSxjYW5jZWxsZWQ6ITF9KSxlfXJlbW92ZSh0KXtjb25zdCBlPXRoaXMuX2N1cnJlbnRseVJ1bm5pbmcsaT1lP3RoaXMuX3F1ZXVlLmNvbmNhdChlKTp0aGlzLl9xdWV1ZTtmb3IoY29uc3QgZSBvZiBpKWlmKGUuaWQ9PT10KXJldHVybiB2b2lkKGUuY2FuY2VsbGVkPSEwKX1ydW4odD0wKXtpZih0aGlzLl9jdXJyZW50bHlSdW5uaW5nKXRocm93IG5ldyBFcnJvcihcIkF0dGVtcHRpbmcgdG8gcnVuKCksIGJ1dCBpcyBhbHJlYWR5IHJ1bm5pbmcuXCIpO2NvbnN0IGU9dGhpcy5fY3VycmVudGx5UnVubmluZz10aGlzLl9xdWV1ZTt0aGlzLl9xdWV1ZT1bXTtmb3IoY29uc3QgaSBvZiBlKWlmKCFpLmNhbmNlbGxlZCYmKGkuY2FsbGJhY2sodCksdGhpcy5fY2xlYXJlZCkpYnJlYWs7dGhpcy5fY2xlYXJlZD0hMSx0aGlzLl9jdXJyZW50bHlSdW5uaW5nPSExO31jbGVhcigpe3RoaXMuX2N1cnJlbnRseVJ1bm5pbmcmJih0aGlzLl9jbGVhcmVkPSEwKSx0aGlzLl9xdWV1ZT1bXTt9fXZhciBTcz1lLlkoW3tuYW1lOlwiYV9wb3MzZFwiLHR5cGU6XCJJbnQxNlwiLGNvbXBvbmVudHM6M31dKTtjbGFzcyB6cyBleHRlbmRzIGUuRXtjb25zdHJ1Y3Rvcih0KXtzdXBlcigpLHRoaXMuc291cmNlQ2FjaGU9dCx0aGlzLl90aWxlcz17fSx0aGlzLl9yZW5kZXJhYmxlVGlsZXNLZXlzPVtdLHRoaXMuX3NvdXJjZVRpbGVDYWNoZT17fSx0aGlzLm1pbnpvb209MCx0aGlzLm1heHpvb209MjIsdGhpcy50aWxlU2l6ZT01MTIsdGhpcy5kZWx0YVpvb209MSx0LnVzZWRGb3JUZXJyYWluPSEwLHQudGlsZVNpemU9dGhpcy50aWxlU2l6ZSoyKip0aGlzLmRlbHRhWm9vbTt9ZGVzdHJ1Y3QoKXt0aGlzLnNvdXJjZUNhY2hlLnVzZWRGb3JUZXJyYWluPSExLHRoaXMuc291cmNlQ2FjaGUudGlsZVNpemU9bnVsbDt9dXBkYXRlKHQsaSl7dGhpcy5zb3VyY2VDYWNoZS51cGRhdGUodCxpKSx0aGlzLl9yZW5kZXJhYmxlVGlsZXNLZXlzPVtdO2NvbnN0IGE9e307Zm9yKGNvbnN0IHMgb2YgdC5jb3ZlcmluZ1RpbGVzKHt0aWxlU2l6ZTp0aGlzLnRpbGVTaXplLG1pbnpvb206dGhpcy5taW56b29tLG1heHpvb206dGhpcy5tYXh6b29tLHJlcGFyc2VPdmVyc2NhbGVkOiExLHRlcnJhaW46aX0pKWFbcy5rZXldPSEwLHRoaXMuX3JlbmRlcmFibGVUaWxlc0tleXMucHVzaChzLmtleSksdGhpcy5fdGlsZXNbcy5rZXldfHwocy5wb3NNYXRyaXg9bmV3IEZsb2F0NjRBcnJheSgxNiksZS5hUChzLnBvc01hdHJpeCwwLGUuWCwwLGUuWCwwLDEpLHRoaXMuX3RpbGVzW3Mua2V5XT1uZXcgbHQocyx0aGlzLnRpbGVTaXplKSk7Zm9yKGNvbnN0IHQgaW4gdGhpcy5fdGlsZXMpYVt0XXx8ZGVsZXRlIHRoaXMuX3RpbGVzW3RdO31mcmVlUnR0KHQpe2Zvcihjb25zdCBlIGluIHRoaXMuX3RpbGVzKXtjb25zdCBpPXRoaXMuX3RpbGVzW2VdOyghdHx8aS50aWxlSUQuZXF1YWxzKHQpfHxpLnRpbGVJRC5pc0NoaWxkT2YodCl8fHQuaXNDaGlsZE9mKGkudGlsZUlEKSkmJihpLnJ0dD1bXSk7fX1nZXRSZW5kZXJhYmxlVGlsZXMoKXtyZXR1cm4gdGhpcy5fcmVuZGVyYWJsZVRpbGVzS2V5cy5tYXAoKHQ9PnRoaXMuZ2V0VGlsZUJ5SUQodCkpKX1nZXRUaWxlQnlJRCh0KXtyZXR1cm4gdGhpcy5fdGlsZXNbdF19Z2V0VGVycmFpbkNvb3Jkcyh0KXtjb25zdCBpPXt9O2Zvcihjb25zdCBhIG9mIHRoaXMuX3JlbmRlcmFibGVUaWxlc0tleXMpe2NvbnN0IHM9dGhpcy5fdGlsZXNbYV0udGlsZUlEO2lmKHMuY2Fub25pY2FsLmVxdWFscyh0LmNhbm9uaWNhbCkpe2NvbnN0IHM9dC5jbG9uZSgpO3MucG9zTWF0cml4PW5ldyBGbG9hdDY0QXJyYXkoMTYpLGUuYVAocy5wb3NNYXRyaXgsMCxlLlgsMCxlLlgsMCwxKSxpW2FdPXM7fWVsc2UgaWYocy5jYW5vbmljYWwuaXNDaGlsZE9mKHQuY2Fub25pY2FsKSl7Y29uc3Qgbz10LmNsb25lKCk7by5wb3NNYXRyaXg9bmV3IEZsb2F0NjRBcnJheSgxNik7Y29uc3Qgcj1zLmNhbm9uaWNhbC56LXQuY2Fub25pY2FsLnosbj1zLmNhbm9uaWNhbC54LShzLmNhbm9uaWNhbC54Pj5yPDxyKSxsPXMuY2Fub25pY2FsLnktKHMuY2Fub25pY2FsLnk+PnI8PHIpLGg9ZS5YPj5yO2UuYVAoby5wb3NNYXRyaXgsMCxoLDAsaCwwLDEpLGUuSihvLnBvc01hdHJpeCxvLnBvc01hdHJpeCxbLW4qaCwtbCpoLDBdKSxpW2FdPW87fWVsc2UgaWYodC5jYW5vbmljYWwuaXNDaGlsZE9mKHMuY2Fub25pY2FsKSl7Y29uc3Qgbz10LmNsb25lKCk7by5wb3NNYXRyaXg9bmV3IEZsb2F0NjRBcnJheSgxNik7Y29uc3Qgcj10LmNhbm9uaWNhbC56LXMuY2Fub25pY2FsLnosbj10LmNhbm9uaWNhbC54LSh0LmNhbm9uaWNhbC54Pj5yPDxyKSxsPXQuY2Fub25pY2FsLnktKHQuY2Fub25pY2FsLnk+PnI8PHIpLGg9ZS5YPj5yO2UuYVAoby5wb3NNYXRyaXgsMCxlLlgsMCxlLlgsMCwxKSxlLkooby5wb3NNYXRyaXgsby5wb3NNYXRyaXgsW24qaCxsKmgsMF0pLGUuSyhvLnBvc01hdHJpeCxvLnBvc01hdHJpeCxbMS8yKipyLDEvMioqciwwXSksaVthXT1vO319cmV0dXJuIGl9Z2V0U291cmNlVGlsZSh0LGUpe2NvbnN0IGk9dGhpcy5zb3VyY2VDYWNoZS5fc291cmNlO2xldCBhPXQub3ZlcnNjYWxlZFotdGhpcy5kZWx0YVpvb207aWYoYT5pLm1heHpvb20mJihhPWkubWF4em9vbSksYTxpLm1pbnpvb20pcmV0dXJuIG51bGw7dGhpcy5fc291cmNlVGlsZUNhY2hlW3Qua2V5XXx8KHRoaXMuX3NvdXJjZVRpbGVDYWNoZVt0LmtleV09dC5zY2FsZWRUbyhhKS5rZXkpO2xldCBzPXRoaXMuc291cmNlQ2FjaGUuZ2V0VGlsZUJ5SUQodGhpcy5fc291cmNlVGlsZUNhY2hlW3Qua2V5XSk7aWYoKCFzfHwhcy5kZW0pJiZlKWZvcig7YT49aS5taW56b29tJiYoIXN8fCFzLmRlbSk7KXM9dGhpcy5zb3VyY2VDYWNoZS5nZXRUaWxlQnlJRCh0LnNjYWxlZFRvKGEtLSkua2V5KTtyZXR1cm4gc310aWxlc0FmdGVyVGltZSh0PURhdGUubm93KCkpe3JldHVybiBPYmplY3QudmFsdWVzKHRoaXMuX3RpbGVzKS5maWx0ZXIoKGU9PmUudGltZUFkZGVkPj10KSl9fWNsYXNzIERze2NvbnN0cnVjdG9yKHQsZSxpKXt0aGlzLnBhaW50ZXI9dCx0aGlzLnNvdXJjZUNhY2hlPW5ldyB6cyhlKSx0aGlzLm9wdGlvbnM9aSx0aGlzLmV4YWdnZXJhdGlvbj1cIm51bWJlclwiPT10eXBlb2YgaS5leGFnZ2VyYXRpb24/aS5leGFnZ2VyYXRpb246MSx0aGlzLnF1YWxpdHlGYWN0b3I9Mix0aGlzLm1lc2hTaXplPTEyOCx0aGlzLl9kZW1NYXRyaXhDYWNoZT17fSx0aGlzLmNvb3Jkc0luZGV4PVtdLHRoaXMuX2Nvb3Jkc1RleHR1cmVTaXplPTEwMjQ7fWdldERFTUVsZXZhdGlvbih0LGksYSxzPWUuWCl7dmFyIG87aWYoIShpPj0wJiZpPHMmJmE+PTAmJmE8cykpcmV0dXJuIDA7Y29uc3Qgcj10aGlzLmdldFRlcnJhaW5EYXRhKHQpLG49bnVsbD09PShvPXIudGlsZSl8fHZvaWQgMD09PW8/dm9pZCAwOm8uZGVtO2lmKCFuKXJldHVybiAwO2NvbnN0IGw9ZnVuY3Rpb24odCxlLGkpe3ZhciBhPWVbMF0scz1lWzFdO3JldHVybiB0WzBdPWlbMF0qYStpWzRdKnMraVsxMl0sdFsxXT1pWzFdKmEraVs1XSpzK2lbMTNdLHR9KFtdLFtpL3MqZS5YLGEvcyplLlhdLHIudV90ZXJyYWluX21hdHJpeCksaD1bbFswXSpuLmRpbSxsWzFdKm4uZGltXSxjPU1hdGguZmxvb3IoaFswXSksdT1NYXRoLmZsb29yKGhbMV0pLGQ9aFswXS1jLF89aFsxXS11O3JldHVybiBuLmdldChjLHUpKigxLWQpKigxLV8pK24uZ2V0KGMrMSx1KSpkKigxLV8pK24uZ2V0KGMsdSsxKSooMS1kKSpfK24uZ2V0KGMrMSx1KzEpKmQqX31nZXRFbGV2YXRpb25Gb3JMbmdMYXRab29tKHQsaSl7aWYoIWUuYmIoaSx0LndyYXAoKSkpcmV0dXJuIDA7Y29uc3R7dGlsZUlEOmEsbWVyY2F0b3JYOnMsbWVyY2F0b3JZOm99PXRoaXMuX2dldE92ZXJzY2FsZWRUaWxlSURGcm9tTG5nTGF0Wm9vbSh0LGkpO3JldHVybiB0aGlzLmdldEVsZXZhdGlvbihhLHMlZS5YLG8lZS5YLGUuWCl9Z2V0RWxldmF0aW9uKHQsaSxhLHM9ZS5YKXtyZXR1cm4gdGhpcy5nZXRERU1FbGV2YXRpb24odCxpLGEscykqdGhpcy5leGFnZ2VyYXRpb259Z2V0VGVycmFpbkRhdGEodCl7aWYoIXRoaXMuX2VtcHR5RGVtVGV4dHVyZSl7Y29uc3QgdD10aGlzLnBhaW50ZXIuY29udGV4dCxpPW5ldyBlLlIoe3dpZHRoOjEsaGVpZ2h0OjF9LG5ldyBVaW50OEFycmF5KDQpKTt0aGlzLl9lbXB0eURlcHRoVGV4dHVyZT1uZXcgYih0LGksdC5nbC5SR0JBLHtwcmVtdWx0aXBseTohMX0pLHRoaXMuX2VtcHR5RGVtVW5wYWNrPVswLDAsMCwwXSx0aGlzLl9lbXB0eURlbVRleHR1cmU9bmV3IGIodCxuZXcgZS5SKHt3aWR0aDoxLGhlaWdodDoxfSksdC5nbC5SR0JBLHtwcmVtdWx0aXBseTohMX0pLHRoaXMuX2VtcHR5RGVtVGV4dHVyZS5iaW5kKHQuZ2wuTkVBUkVTVCx0LmdsLkNMQU1QX1RPX0VER0UpLHRoaXMuX2VtcHR5RGVtTWF0cml4PWUuYW4oW10pO31jb25zdCBpPXRoaXMuc291cmNlQ2FjaGUuZ2V0U291cmNlVGlsZSh0LCEwKTtpZihpJiZpLmRlbSYmKCFpLmRlbVRleHR1cmV8fGkubmVlZHNUZXJyYWluUHJlcGFyZSkpe2NvbnN0IHQ9dGhpcy5wYWludGVyLmNvbnRleHQ7aS5kZW1UZXh0dXJlPXRoaXMucGFpbnRlci5nZXRUaWxlVGV4dHVyZShpLmRlbS5zdHJpZGUpLGkuZGVtVGV4dHVyZT9pLmRlbVRleHR1cmUudXBkYXRlKGkuZGVtLmdldFBpeGVscygpLHtwcmVtdWx0aXBseTohMX0pOmkuZGVtVGV4dHVyZT1uZXcgYih0LGkuZGVtLmdldFBpeGVscygpLHQuZ2wuUkdCQSx7cHJlbXVsdGlwbHk6ITF9KSxpLmRlbVRleHR1cmUuYmluZCh0LmdsLk5FQVJFU1QsdC5nbC5DTEFNUF9UT19FREdFKSxpLm5lZWRzVGVycmFpblByZXBhcmU9ITE7fWNvbnN0IGE9aSYmaStpLnRpbGVJRC5rZXkrdC5rZXk7aWYoYSYmIXRoaXMuX2RlbU1hdHJpeENhY2hlW2FdKXtjb25zdCBhPXRoaXMuc291cmNlQ2FjaGUuc291cmNlQ2FjaGUuX3NvdXJjZS5tYXh6b29tO2xldCBzPXQuY2Fub25pY2FsLnotaS50aWxlSUQuY2Fub25pY2FsLno7dC5vdmVyc2NhbGVkWj50LmNhbm9uaWNhbC56JiYodC5jYW5vbmljYWwuej49YT9zPXQuY2Fub25pY2FsLnotYTplLncoXCJjYW5ub3QgY2FsY3VsYXRlIGVsZXZhdGlvbiBpZiBlbGV2YXRpb24gbWF4em9vbSA+IHNvdXJjZS5tYXh6b29tXCIpKTtjb25zdCBvPXQuY2Fub25pY2FsLngtKHQuY2Fub25pY2FsLng+PnM8PHMpLHI9dC5jYW5vbmljYWwueS0odC5jYW5vbmljYWwueT4+czw8cyksbj1lLmJjKG5ldyBGbG9hdDY0QXJyYXkoMTYpLFsxLyhlLlg8PHMpLDEvKGUuWDw8cyksMF0pO2UuSihuLG4sW28qZS5YLHIqZS5YLDBdKSx0aGlzLl9kZW1NYXRyaXhDYWNoZVt0LmtleV09e21hdHJpeDpuLGNvb3JkOnR9O31yZXR1cm4ge3VfZGVwdGg6Mix1X3RlcnJhaW46Myx1X3RlcnJhaW5fZGltOmkmJmkuZGVtJiZpLmRlbS5kaW18fDEsdV90ZXJyYWluX21hdHJpeDphP3RoaXMuX2RlbU1hdHJpeENhY2hlW3Qua2V5XS5tYXRyaXg6dGhpcy5fZW1wdHlEZW1NYXRyaXgsdV90ZXJyYWluX3VucGFjazppJiZpLmRlbSYmaS5kZW0uZ2V0VW5wYWNrVmVjdG9yKCl8fHRoaXMuX2VtcHR5RGVtVW5wYWNrLHVfdGVycmFpbl9leGFnZ2VyYXRpb246dGhpcy5leGFnZ2VyYXRpb24sdGV4dHVyZTooaSYmaS5kZW1UZXh0dXJlfHx0aGlzLl9lbXB0eURlbVRleHR1cmUpLnRleHR1cmUsZGVwdGhUZXh0dXJlOih0aGlzLl9mYm9EZXB0aFRleHR1cmV8fHRoaXMuX2VtcHR5RGVwdGhUZXh0dXJlKS50ZXh0dXJlLHRpbGU6aX19Z2V0RnJhbWVidWZmZXIodCl7Y29uc3QgZT10aGlzLnBhaW50ZXIsaT1lLndpZHRoL2RldmljZVBpeGVsUmF0aW8sYT1lLmhlaWdodC9kZXZpY2VQaXhlbFJhdGlvO3JldHVybiAhdGhpcy5fZmJvfHx0aGlzLl9mYm8ud2lkdGg9PT1pJiZ0aGlzLl9mYm8uaGVpZ2h0PT09YXx8KHRoaXMuX2Ziby5kZXN0cm95KCksdGhpcy5fZmJvQ29vcmRzVGV4dHVyZS5kZXN0cm95KCksdGhpcy5fZmJvRGVwdGhUZXh0dXJlLmRlc3Ryb3koKSxkZWxldGUgdGhpcy5fZmJvLGRlbGV0ZSB0aGlzLl9mYm9EZXB0aFRleHR1cmUsZGVsZXRlIHRoaXMuX2Zib0Nvb3Jkc1RleHR1cmUpLHRoaXMuX2Zib0Nvb3Jkc1RleHR1cmV8fCh0aGlzLl9mYm9Db29yZHNUZXh0dXJlPW5ldyBiKGUuY29udGV4dCx7d2lkdGg6aSxoZWlnaHQ6YSxkYXRhOm51bGx9LGUuY29udGV4dC5nbC5SR0JBLHtwcmVtdWx0aXBseTohMX0pLHRoaXMuX2Zib0Nvb3Jkc1RleHR1cmUuYmluZChlLmNvbnRleHQuZ2wuTkVBUkVTVCxlLmNvbnRleHQuZ2wuQ0xBTVBfVE9fRURHRSkpLHRoaXMuX2Zib0RlcHRoVGV4dHVyZXx8KHRoaXMuX2Zib0RlcHRoVGV4dHVyZT1uZXcgYihlLmNvbnRleHQse3dpZHRoOmksaGVpZ2h0OmEsZGF0YTpudWxsfSxlLmNvbnRleHQuZ2wuUkdCQSx7cHJlbXVsdGlwbHk6ITF9KSx0aGlzLl9mYm9EZXB0aFRleHR1cmUuYmluZChlLmNvbnRleHQuZ2wuTkVBUkVTVCxlLmNvbnRleHQuZ2wuQ0xBTVBfVE9fRURHRSkpLHRoaXMuX2Zib3x8KHRoaXMuX2Zibz1lLmNvbnRleHQuY3JlYXRlRnJhbWVidWZmZXIoaSxhLCEwLCExKSx0aGlzLl9mYm8uZGVwdGhBdHRhY2htZW50LnNldChlLmNvbnRleHQuY3JlYXRlUmVuZGVyYnVmZmVyKGUuY29udGV4dC5nbC5ERVBUSF9DT01QT05FTlQxNixpLGEpKSksdGhpcy5fZmJvLmNvbG9yQXR0YWNobWVudC5zZXQoXCJjb29yZHNcIj09PXQ/dGhpcy5fZmJvQ29vcmRzVGV4dHVyZS50ZXh0dXJlOnRoaXMuX2Zib0RlcHRoVGV4dHVyZS50ZXh0dXJlKSx0aGlzLl9mYm99Z2V0Q29vcmRzVGV4dHVyZSgpe2NvbnN0IHQ9dGhpcy5wYWludGVyLmNvbnRleHQ7aWYodGhpcy5fY29vcmRzVGV4dHVyZSlyZXR1cm4gdGhpcy5fY29vcmRzVGV4dHVyZTtjb25zdCBpPW5ldyBVaW50OEFycmF5KHRoaXMuX2Nvb3Jkc1RleHR1cmVTaXplKnRoaXMuX2Nvb3Jkc1RleHR1cmVTaXplKjQpO2ZvcihsZXQgdD0wLGU9MDt0PHRoaXMuX2Nvb3Jkc1RleHR1cmVTaXplO3QrKylmb3IobGV0IGE9MDthPHRoaXMuX2Nvb3Jkc1RleHR1cmVTaXplO2ErKyxlKz00KWlbZSswXT0yNTUmYSxpW2UrMV09MjU1JnQsaVtlKzJdPWE+Pjg8PDR8dD4+OCxpW2UrM109MDtjb25zdCBhPW5ldyBlLlIoe3dpZHRoOnRoaXMuX2Nvb3Jkc1RleHR1cmVTaXplLGhlaWdodDp0aGlzLl9jb29yZHNUZXh0dXJlU2l6ZX0sbmV3IFVpbnQ4QXJyYXkoaS5idWZmZXIpKSxzPW5ldyBiKHQsYSx0LmdsLlJHQkEse3ByZW11bHRpcGx5OiExfSk7cmV0dXJuIHMuYmluZCh0LmdsLk5FQVJFU1QsdC5nbC5DTEFNUF9UT19FREdFKSx0aGlzLl9jb29yZHNUZXh0dXJlPXMsc31wb2ludENvb3JkaW5hdGUodCl7dGhpcy5wYWludGVyLm1heWJlRHJhd0RlcHRoQW5kQ29vcmRzKCEwKTtjb25zdCBpPW5ldyBVaW50OEFycmF5KDQpLGE9dGhpcy5wYWludGVyLmNvbnRleHQscz1hLmdsLG89TWF0aC5yb3VuZCh0LngqdGhpcy5wYWludGVyLnBpeGVsUmF0aW8vZGV2aWNlUGl4ZWxSYXRpbykscj1NYXRoLnJvdW5kKHQueSp0aGlzLnBhaW50ZXIucGl4ZWxSYXRpby9kZXZpY2VQaXhlbFJhdGlvKSxuPU1hdGgucm91bmQodGhpcy5wYWludGVyLmhlaWdodC9kZXZpY2VQaXhlbFJhdGlvKTthLmJpbmRGcmFtZWJ1ZmZlci5zZXQodGhpcy5nZXRGcmFtZWJ1ZmZlcihcImNvb3Jkc1wiKS5mcmFtZWJ1ZmZlcikscy5yZWFkUGl4ZWxzKG8sbi1yLTEsMSwxLHMuUkdCQSxzLlVOU0lHTkVEX0JZVEUsaSksYS5iaW5kRnJhbWVidWZmZXIuc2V0KG51bGwpO2NvbnN0IGw9aVswXSsoaVsyXT4+NDw8OCksaD1pWzFdKygoMTUmaVsyXSk8PDgpLGM9dGhpcy5jb29yZHNJbmRleFsyNTUtaVszXV0sdT1jJiZ0aGlzLnNvdXJjZUNhY2hlLmdldFRpbGVCeUlEKGMpO2lmKCF1KXJldHVybiBudWxsO2NvbnN0IGQ9dGhpcy5fY29vcmRzVGV4dHVyZVNpemUsXz0oMTw8dS50aWxlSUQuY2Fub25pY2FsLnopKmQ7cmV0dXJuIG5ldyBlLlooKHUudGlsZUlELmNhbm9uaWNhbC54KmQrbCkvXyt1LnRpbGVJRC53cmFwLCh1LnRpbGVJRC5jYW5vbmljYWwueSpkK2gpL18sdGhpcy5nZXRFbGV2YXRpb24odS50aWxlSUQsbCxoLGQpKX1kZXB0aEF0UG9pbnQodCl7Y29uc3QgZT1uZXcgVWludDhBcnJheSg0KSxpPXRoaXMucGFpbnRlci5jb250ZXh0LGE9aS5nbDtyZXR1cm4gaS5iaW5kRnJhbWVidWZmZXIuc2V0KHRoaXMuZ2V0RnJhbWVidWZmZXIoXCJkZXB0aFwiKS5mcmFtZWJ1ZmZlciksYS5yZWFkUGl4ZWxzKHQueCx0aGlzLnBhaW50ZXIuaGVpZ2h0L2RldmljZVBpeGVsUmF0aW8tdC55LTEsMSwxLGEuUkdCQSxhLlVOU0lHTkVEX0JZVEUsZSksaS5iaW5kRnJhbWVidWZmZXIuc2V0KG51bGwpLChlWzBdLzE2Nzc3MjE2K2VbMV0vNjU1MzYrZVsyXS8yNTYrZVszXSkvMjU2fWdldFRlcnJhaW5NZXNoKCl7aWYodGhpcy5fbWVzaClyZXR1cm4gdGhpcy5fbWVzaDtjb25zdCB0PXRoaXMucGFpbnRlci5jb250ZXh0LGk9bmV3IGUuYmQsYT1uZXcgZS5hWSxzPXRoaXMubWVzaFNpemUsbz1lLlgvcyxyPXMqcztmb3IobGV0IHQ9MDt0PD1zO3QrKylmb3IobGV0IGU9MDtlPD1zO2UrKylpLmVtcGxhY2VCYWNrKGUqbyx0Km8sMCk7Zm9yKGxldCB0PTA7dDxyO3QrPXMrMSlmb3IobGV0IGU9MDtlPHM7ZSsrKWEuZW1wbGFjZUJhY2soZSt0LHMrZSt0KzEscytlK3QrMiksYS5lbXBsYWNlQmFjayhlK3QscytlK3QrMixlK3QrMSk7Y29uc3Qgbj1pLmxlbmd0aCxsPW4rMioocysxKTtmb3IoY29uc3QgdCBvZiBbMCwxXSlmb3IobGV0IGE9MDthPD1zO2ErKylmb3IoY29uc3QgcyBvZiBbMCwxXSlpLmVtcGxhY2VCYWNrKGEqbyx0KmUuWCxzKTtmb3IobGV0IHQ9MDt0PDIqczt0Kz0yKWEuZW1wbGFjZUJhY2sobCt0LGwrdCsxLGwrdCszKSxhLmVtcGxhY2VCYWNrKGwrdCxsK3QrMyxsK3QrMiksYS5lbXBsYWNlQmFjayhuK3Qsbit0KzMsbit0KzEpLGEuZW1wbGFjZUJhY2sobit0LG4rdCsyLG4rdCszKTtjb25zdCBoPWkubGVuZ3RoLGM9aCsyKihzKzEpO2Zvcihjb25zdCB0IG9mIFswLDFdKWZvcihsZXQgYT0wO2E8PXM7YSsrKWZvcihjb25zdCBzIG9mIFswLDFdKWkuZW1wbGFjZUJhY2sodCplLlgsYSpvLHMpO2ZvcihsZXQgdD0wO3Q8MipzO3QrPTIpYS5lbXBsYWNlQmFjayhoK3QsaCt0KzEsaCt0KzMpLGEuZW1wbGFjZUJhY2soaCt0LGgrdCszLGgrdCsyKSxhLmVtcGxhY2VCYWNrKGMrdCxjK3QrMyxjK3QrMSksYS5lbXBsYWNlQmFjayhjK3QsYyt0KzIsYyt0KzMpO3JldHVybiB0aGlzLl9tZXNoPW5ldyBnYSh0LmNyZWF0ZVZlcnRleEJ1ZmZlcihpLFNzLm1lbWJlcnMpLHQuY3JlYXRlSW5kZXhCdWZmZXIoYSksZS5hMC5zaW1wbGVTZWdtZW50KDAsMCxpLmxlbmd0aCxhLmxlbmd0aCkpLHRoaXMuX21lc2h9Z2V0TWVzaEZyYW1lRGVsdGEodCl7cmV0dXJuIDIqTWF0aC5QSSplLmJlL01hdGgucG93KDIsdCkvNX1nZXRNaW5UaWxlRWxldmF0aW9uRm9yTG5nTGF0Wm9vbSh0LGUpe3ZhciBpO2NvbnN0e3RpbGVJRDphfT10aGlzLl9nZXRPdmVyc2NhbGVkVGlsZUlERnJvbUxuZ0xhdFpvb20odCxlKTtyZXR1cm4gbnVsbCE9PShpPXRoaXMuZ2V0TWluTWF4RWxldmF0aW9uKGEpLm1pbkVsZXZhdGlvbikmJnZvaWQgMCE9PWk/aTowfWdldE1pbk1heEVsZXZhdGlvbih0KXtjb25zdCBlPXRoaXMuZ2V0VGVycmFpbkRhdGEodCkudGlsZSxpPXttaW5FbGV2YXRpb246bnVsbCxtYXhFbGV2YXRpb246bnVsbH07cmV0dXJuIGUmJmUuZGVtJiYoaS5taW5FbGV2YXRpb249ZS5kZW0ubWluKnRoaXMuZXhhZ2dlcmF0aW9uLGkubWF4RWxldmF0aW9uPWUuZGVtLm1heCp0aGlzLmV4YWdnZXJhdGlvbiksaX1fZ2V0T3ZlcnNjYWxlZFRpbGVJREZyb21MbmdMYXRab29tKHQsaSl7Y29uc3QgYT1lLlouZnJvbUxuZ0xhdCh0LndyYXAoKSkscz0oMTw8aSkqZS5YLG89YS54KnMscj1hLnkqcyxuPU1hdGguZmxvb3Ioby9lLlgpLGw9TWF0aC5mbG9vcihyL2UuWCk7cmV0dXJuIHt0aWxlSUQ6bmV3IGUuUyhpLDAsaSxuLGwpLG1lcmNhdG9yWDpvLG1lcmNhdG9yWTpyfX19Y2xhc3MgTXN7Y29uc3RydWN0b3IodCxlLGkpe3RoaXMuX2NvbnRleHQ9dCx0aGlzLl9zaXplPWUsdGhpcy5fdGlsZVNpemU9aSx0aGlzLl9vYmplY3RzPVtdLHRoaXMuX3JlY2VudGx5VXNlZD1bXSx0aGlzLl9zdGFtcD0wO31kZXN0cnVjdCgpe2Zvcihjb25zdCB0IG9mIHRoaXMuX29iamVjdHMpdC50ZXh0dXJlLmRlc3Ryb3koKSx0LmZiby5kZXN0cm95KCk7fV9jcmVhdGVPYmplY3QodCl7Y29uc3QgZT10aGlzLl9jb250ZXh0LmNyZWF0ZUZyYW1lYnVmZmVyKHRoaXMuX3RpbGVTaXplLHRoaXMuX3RpbGVTaXplLCEwLCEwKSxpPW5ldyBiKHRoaXMuX2NvbnRleHQse3dpZHRoOnRoaXMuX3RpbGVTaXplLGhlaWdodDp0aGlzLl90aWxlU2l6ZSxkYXRhOm51bGx9LHRoaXMuX2NvbnRleHQuZ2wuUkdCQSk7cmV0dXJuIGkuYmluZCh0aGlzLl9jb250ZXh0LmdsLkxJTkVBUix0aGlzLl9jb250ZXh0LmdsLkNMQU1QX1RPX0VER0UpLGUuZGVwdGhBdHRhY2htZW50LnNldCh0aGlzLl9jb250ZXh0LmNyZWF0ZVJlbmRlcmJ1ZmZlcih0aGlzLl9jb250ZXh0LmdsLkRFUFRIX1NURU5DSUwsdGhpcy5fdGlsZVNpemUsdGhpcy5fdGlsZVNpemUpKSxlLmNvbG9yQXR0YWNobWVudC5zZXQoaS50ZXh0dXJlKSx7aWQ6dCxmYm86ZSx0ZXh0dXJlOmksc3RhbXA6LTEsaW5Vc2U6ITF9fWdldE9iamVjdEZvcklkKHQpe3JldHVybiB0aGlzLl9vYmplY3RzW3RdfXVzZU9iamVjdCh0KXt0LmluVXNlPSEwLHRoaXMuX3JlY2VudGx5VXNlZD10aGlzLl9yZWNlbnRseVVzZWQuZmlsdGVyKChlPT50LmlkIT09ZSkpLHRoaXMuX3JlY2VudGx5VXNlZC5wdXNoKHQuaWQpO31zdGFtcE9iamVjdCh0KXt0LnN0YW1wPSsrdGhpcy5fc3RhbXA7fWdldE9yQ3JlYXRlRnJlZU9iamVjdCgpe2Zvcihjb25zdCB0IG9mIHRoaXMuX3JlY2VudGx5VXNlZClpZighdGhpcy5fb2JqZWN0c1t0XS5pblVzZSlyZXR1cm4gdGhpcy5fb2JqZWN0c1t0XTtpZih0aGlzLl9vYmplY3RzLmxlbmd0aD49dGhpcy5fc2l6ZSl0aHJvdyBuZXcgRXJyb3IoXCJObyBmcmVlIFJlbmRlclBvb2wgYXZhaWxhYmxlLCBjYWxsIGZyZWVBbGxPYmplY3RzKCkgcmVxdWlyZWQhXCIpO2NvbnN0IHQ9dGhpcy5fY3JlYXRlT2JqZWN0KHRoaXMuX29iamVjdHMubGVuZ3RoKTtyZXR1cm4gdGhpcy5fb2JqZWN0cy5wdXNoKHQpLHR9ZnJlZU9iamVjdCh0KXt0LmluVXNlPSExO31mcmVlQWxsT2JqZWN0cygpe2Zvcihjb25zdCB0IG9mIHRoaXMuX29iamVjdHMpdGhpcy5mcmVlT2JqZWN0KHQpO31pc0Z1bGwoKXtyZXR1cm4gISh0aGlzLl9vYmplY3RzLmxlbmd0aDx0aGlzLl9zaXplKSYmITE9PT10aGlzLl9vYmplY3RzLnNvbWUoKHQ9PiF0LmluVXNlKSl9fWNvbnN0IEFzPXtiYWNrZ3JvdW5kOiEwLGZpbGw6ITAsbGluZTohMCxyYXN0ZXI6ITAsaGlsbHNoYWRlOiEwfTtjbGFzcyBSc3tjb25zdHJ1Y3Rvcih0LGUpe3RoaXMucGFpbnRlcj10LHRoaXMudGVycmFpbj1lLHRoaXMucG9vbD1uZXcgTXModC5jb250ZXh0LDMwLGUuc291cmNlQ2FjaGUudGlsZVNpemUqZS5xdWFsaXR5RmFjdG9yKTt9ZGVzdHJ1Y3QoKXt0aGlzLnBvb2wuZGVzdHJ1Y3QoKTt9Z2V0VGV4dHVyZSh0KXtyZXR1cm4gdGhpcy5wb29sLmdldE9iamVjdEZvcklkKHQucnR0W3RoaXMuX3N0YWNrcy5sZW5ndGgtMV0uaWQpLnRleHR1cmV9cHJlcGFyZUZvclJlbmRlcih0LGUpe3RoaXMuX3N0YWNrcz1bXSx0aGlzLl9wcmV2VHlwZT1udWxsLHRoaXMuX3J0dFRpbGVzPVtdLHRoaXMuX3JlbmRlcmFibGVUaWxlcz10aGlzLnRlcnJhaW4uc291cmNlQ2FjaGUuZ2V0UmVuZGVyYWJsZVRpbGVzKCksdGhpcy5fcmVuZGVyYWJsZUxheWVySWRzPXQuX29yZGVyLmZpbHRlcigoaT0+IXQuX2xheWVyc1tpXS5pc0hpZGRlbihlKSkpLHRoaXMuX2Nvb3Jkc0Rlc2NlbmRpbmdJbnY9e307Zm9yKGNvbnN0IGUgaW4gdC5zb3VyY2VDYWNoZXMpe3RoaXMuX2Nvb3Jkc0Rlc2NlbmRpbmdJbnZbZV09e307Y29uc3QgaT10LnNvdXJjZUNhY2hlc1tlXS5nZXRWaXNpYmxlQ29vcmRpbmF0ZXMoKTtmb3IoY29uc3QgdCBvZiBpKXtjb25zdCBpPXRoaXMudGVycmFpbi5zb3VyY2VDYWNoZS5nZXRUZXJyYWluQ29vcmRzKHQpO2Zvcihjb25zdCB0IGluIGkpdGhpcy5fY29vcmRzRGVzY2VuZGluZ0ludltlXVt0XXx8KHRoaXMuX2Nvb3Jkc0Rlc2NlbmRpbmdJbnZbZV1bdF09W10pLHRoaXMuX2Nvb3Jkc0Rlc2NlbmRpbmdJbnZbZV1bdF0ucHVzaChpW3RdKTt9fXRoaXMuX2Nvb3Jkc0Rlc2NlbmRpbmdJbnZTdHI9e307Zm9yKGNvbnN0IGUgb2YgdC5fb3JkZXIpe2NvbnN0IGk9dC5fbGF5ZXJzW2VdLGE9aS5zb3VyY2U7aWYoQXNbaS50eXBlXSYmIXRoaXMuX2Nvb3Jkc0Rlc2NlbmRpbmdJbnZTdHJbYV0pe3RoaXMuX2Nvb3Jkc0Rlc2NlbmRpbmdJbnZTdHJbYV09e307Zm9yKGNvbnN0IHQgaW4gdGhpcy5fY29vcmRzRGVzY2VuZGluZ0ludlthXSl0aGlzLl9jb29yZHNEZXNjZW5kaW5nSW52U3RyW2FdW3RdPXRoaXMuX2Nvb3Jkc0Rlc2NlbmRpbmdJbnZbYV1bdF0ubWFwKCh0PT50LmtleSkpLnNvcnQoKS5qb2luKCk7fX1mb3IoY29uc3QgdCBvZiB0aGlzLl9yZW5kZXJhYmxlVGlsZXMpZm9yKGNvbnN0IGUgaW4gdGhpcy5fY29vcmRzRGVzY2VuZGluZ0ludlN0cil7Y29uc3QgaT10aGlzLl9jb29yZHNEZXNjZW5kaW5nSW52U3RyW2VdW3QudGlsZUlELmtleV07aSYmaSE9PXQucnR0Q29vcmRzW2VdJiYodC5ydHQ9W10pO319cmVuZGVyTGF5ZXIodCl7aWYodC5pc0hpZGRlbih0aGlzLnBhaW50ZXIudHJhbnNmb3JtLnpvb20pKXJldHVybiAhMTtjb25zdCBpPXQudHlwZSxhPXRoaXMucGFpbnRlcixzPXRoaXMuX3JlbmRlcmFibGVMYXllcklkc1t0aGlzLl9yZW5kZXJhYmxlTGF5ZXJJZHMubGVuZ3RoLTFdPT09dC5pZDtpZihBc1tpXSYmKHRoaXMuX3ByZXZUeXBlJiZBc1t0aGlzLl9wcmV2VHlwZV18fHRoaXMuX3N0YWNrcy5wdXNoKFtdKSx0aGlzLl9wcmV2VHlwZT1pLHRoaXMuX3N0YWNrc1t0aGlzLl9zdGFja3MubGVuZ3RoLTFdLnB1c2godC5pZCksIXMpKXJldHVybiAhMDtpZihBc1t0aGlzLl9wcmV2VHlwZV18fEFzW2ldJiZzKXt0aGlzLl9wcmV2VHlwZT1pO2NvbnN0IHQ9dGhpcy5fc3RhY2tzLmxlbmd0aC0xLHM9dGhpcy5fc3RhY2tzW3RdfHxbXTtmb3IoY29uc3QgaSBvZiB0aGlzLl9yZW5kZXJhYmxlVGlsZXMpe2lmKHRoaXMucG9vbC5pc0Z1bGwoKSYmKGZhKHRoaXMucGFpbnRlcix0aGlzLnRlcnJhaW4sdGhpcy5fcnR0VGlsZXMpLHRoaXMuX3J0dFRpbGVzPVtdLHRoaXMucG9vbC5mcmVlQWxsT2JqZWN0cygpKSx0aGlzLl9ydHRUaWxlcy5wdXNoKGkpLGkucnR0W3RdKXtjb25zdCBlPXRoaXMucG9vbC5nZXRPYmplY3RGb3JJZChpLnJ0dFt0XS5pZCk7aWYoZS5zdGFtcD09PWkucnR0W3RdLnN0YW1wKXt0aGlzLnBvb2wudXNlT2JqZWN0KGUpO2NvbnRpbnVlfX1jb25zdCBvPXRoaXMucG9vbC5nZXRPckNyZWF0ZUZyZWVPYmplY3QoKTt0aGlzLnBvb2wudXNlT2JqZWN0KG8pLHRoaXMucG9vbC5zdGFtcE9iamVjdChvKSxpLnJ0dFt0XT17aWQ6by5pZCxzdGFtcDpvLnN0YW1wfSxhLmNvbnRleHQuYmluZEZyYW1lYnVmZmVyLnNldChvLmZiby5mcmFtZWJ1ZmZlciksYS5jb250ZXh0LmNsZWFyKHtjb2xvcjplLmFNLnRyYW5zcGFyZW50LHN0ZW5jaWw6MH0pLGEuY3VycmVudFN0ZW5jaWxTb3VyY2U9dm9pZCAwO2ZvcihsZXQgdD0wO3Q8cy5sZW5ndGg7dCsrKXtjb25zdCBlPWEuc3R5bGUuX2xheWVyc1tzW3RdXSxyPWUuc291cmNlP3RoaXMuX2Nvb3Jkc0Rlc2NlbmRpbmdJbnZbZS5zb3VyY2VdW2kudGlsZUlELmtleV06W2kudGlsZUlEXTthLmNvbnRleHQudmlld3BvcnQuc2V0KFswLDAsby5mYm8ud2lkdGgsby5mYm8uaGVpZ2h0XSksYS5fcmVuZGVyVGlsZUNsaXBwaW5nTWFza3MoZSxyKSxhLnJlbmRlckxheWVyKGEsYS5zdHlsZS5zb3VyY2VDYWNoZXNbZS5zb3VyY2VdLGUsciksZS5zb3VyY2UmJihpLnJ0dENvb3Jkc1tlLnNvdXJjZV09dGhpcy5fY29vcmRzRGVzY2VuZGluZ0ludlN0cltlLnNvdXJjZV1baS50aWxlSUQua2V5XSk7fX1yZXR1cm4gZmEodGhpcy5wYWludGVyLHRoaXMudGVycmFpbix0aGlzLl9ydHRUaWxlcyksdGhpcy5fcnR0VGlsZXM9W10sdGhpcy5wb29sLmZyZWVBbGxPYmplY3RzKCksQXNbaV19cmV0dXJuICExfX1jb25zdCBrcz17XCJBdHRyaWJ1dGlvbkNvbnRyb2wuVG9nZ2xlQXR0cmlidXRpb25cIjpcIlRvZ2dsZSBhdHRyaWJ1dGlvblwiLFwiQXR0cmlidXRpb25Db250cm9sLk1hcEZlZWRiYWNrXCI6XCJNYXAgZmVlZGJhY2tcIixcIkZ1bGxzY3JlZW5Db250cm9sLkVudGVyXCI6XCJFbnRlciBmdWxsc2NyZWVuXCIsXCJGdWxsc2NyZWVuQ29udHJvbC5FeGl0XCI6XCJFeGl0IGZ1bGxzY3JlZW5cIixcIkdlb2xvY2F0ZUNvbnRyb2wuRmluZE15TG9jYXRpb25cIjpcIkZpbmQgbXkgbG9jYXRpb25cIixcIkdlb2xvY2F0ZUNvbnRyb2wuTG9jYXRpb25Ob3RBdmFpbGFibGVcIjpcIkxvY2F0aW9uIG5vdCBhdmFpbGFibGVcIixcIkxvZ29Db250cm9sLlRpdGxlXCI6XCJNYXBMaWJyZSBsb2dvXCIsXCJNYXAuVGl0bGVcIjpcIk1hcFwiLFwiTWFya2VyLlRpdGxlXCI6XCJNYXAgbWFya2VyXCIsXCJOYXZpZ2F0aW9uQ29udHJvbC5SZXNldEJlYXJpbmdcIjpcIlJlc2V0IGJlYXJpbmcgdG8gbm9ydGhcIixcIk5hdmlnYXRpb25Db250cm9sLlpvb21JblwiOlwiWm9vbSBpblwiLFwiTmF2aWdhdGlvbkNvbnRyb2wuWm9vbU91dFwiOlwiWm9vbSBvdXRcIixcIlBvcHVwLkNsb3NlXCI6XCJDbG9zZSBwb3B1cFwiLFwiU2NhbGVDb250cm9sLkZlZXRcIjpcImZ0XCIsXCJTY2FsZUNvbnRyb2wuTWV0ZXJzXCI6XCJtXCIsXCJTY2FsZUNvbnRyb2wuS2lsb21ldGVyc1wiOlwia21cIixcIlNjYWxlQ29udHJvbC5NaWxlc1wiOlwibWlcIixcIlNjYWxlQ29udHJvbC5OYXV0aWNhbE1pbGVzXCI6XCJubVwiLFwiVGVycmFpbkNvbnRyb2wuRW5hYmxlXCI6XCJFbmFibGUgdGVycmFpblwiLFwiVGVycmFpbkNvbnRyb2wuRGlzYWJsZVwiOlwiRGlzYWJsZSB0ZXJyYWluXCIsXCJDb29wZXJhdGl2ZUdlc3R1cmVzSGFuZGxlci5XaW5kb3dzSGVscFRleHRcIjpcIlVzZSBDdHJsICsgc2Nyb2xsIHRvIHpvb20gdGhlIG1hcFwiLFwiQ29vcGVyYXRpdmVHZXN0dXJlc0hhbmRsZXIuTWFjSGVscFRleHRcIjpcIlVzZSDijJggKyBzY3JvbGwgdG8gem9vbSB0aGUgbWFwXCIsXCJDb29wZXJhdGl2ZUdlc3R1cmVzSGFuZGxlci5Nb2JpbGVIZWxwVGV4dFwiOlwiVXNlIHR3byBmaW5nZXJzIHRvIG1vdmUgdGhlIG1hcFwifSxMcz1pLEZzPXtoYXNoOiExLGludGVyYWN0aXZlOiEwLGJlYXJpbmdTbmFwOjcsYXR0cmlidXRpb25Db250cm9sOklzLG1hcGxpYnJlTG9nbzohMSxmYWlsSWZNYWpvclBlcmZvcm1hbmNlQ2F2ZWF0OiExLHByZXNlcnZlRHJhd2luZ0J1ZmZlcjohMSxyZWZyZXNoRXhwaXJlZFRpbGVzOiEwLHNjcm9sbFpvb206ITAsbWluWm9vbTotMixtYXhab29tOjIyLG1pblBpdGNoOjAsbWF4UGl0Y2g6NjAsYm94Wm9vbTohMCxkcmFnUm90YXRlOiEwLGRyYWdQYW46ITAsa2V5Ym9hcmQ6ITAsZG91YmxlQ2xpY2tab29tOiEwLHRvdWNoWm9vbVJvdGF0ZTohMCx0b3VjaFBpdGNoOiEwLGNvb3BlcmF0aXZlR2VzdHVyZXM6ITEsdHJhY2tSZXNpemU6ITAsY2VudGVyOlswLDBdLHpvb206MCxiZWFyaW5nOjAscGl0Y2g6MCxyZW5kZXJXb3JsZENvcGllczohMCxtYXhUaWxlQ2FjaGVTaXplOm51bGwsbWF4VGlsZUNhY2hlWm9vbUxldmVsczplLmEuTUFYX1RJTEVfQ0FDSEVfWk9PTV9MRVZFTFMsdHJhbnNmb3JtUmVxdWVzdDpudWxsLHRyYW5zZm9ybUNhbWVyYVVwZGF0ZTpudWxsLGZhZGVEdXJhdGlvbjozMDAsY3Jvc3NTb3VyY2VDb2xsaXNpb25zOiEwLGNsaWNrVG9sZXJhbmNlOjMsbG9jYWxJZGVvZ3JhcGhGb250RmFtaWx5Olwic2Fucy1zZXJpZlwiLHBpdGNoV2l0aFJvdGF0ZTohMCx2YWxpZGF0ZVN0eWxlOiEwLG1heENhbnZhc1NpemU6WzQwOTYsNDA5Nl0sY2FuY2VsUGVuZGluZ1RpbGVSZXF1ZXN0c1doaWxlWm9vbWluZzohMH0sQnM9dD0+e3QudG91Y2hzdGFydD10LmRyYWdTdGFydCx0LnRvdWNobW92ZVdpbmRvdz10LmRyYWdNb3ZlLHQudG91Y2hlbmQ9dC5kcmFnRW5kO30sT3M9e3Nob3dDb21wYXNzOiEwLHNob3dab29tOiEwLHZpc3VhbGl6ZVBpdGNoOiExfTtjbGFzcyBOc3tjb25zdHJ1Y3Rvcih0LGksYT0hMSl7dGhpcy5tb3VzZWRvd249dD0+e3RoaXMuc3RhcnRNb3VzZShlLmUoe30sdCx7Y3RybEtleTohMCxwcmV2ZW50RGVmYXVsdDooKT0+dC5wcmV2ZW50RGVmYXVsdCgpfSksci5tb3VzZVBvcyh0aGlzLmVsZW1lbnQsdCkpLHIuYWRkRXZlbnRMaXN0ZW5lcih3aW5kb3csXCJtb3VzZW1vdmVcIix0aGlzLm1vdXNlbW92ZSksci5hZGRFdmVudExpc3RlbmVyKHdpbmRvdyxcIm1vdXNldXBcIix0aGlzLm1vdXNldXApO30sdGhpcy5tb3VzZW1vdmU9dD0+e3RoaXMubW92ZU1vdXNlKHQsci5tb3VzZVBvcyh0aGlzLmVsZW1lbnQsdCkpO30sdGhpcy5tb3VzZXVwPXQ9Pnt0aGlzLm1vdXNlUm90YXRlLmRyYWdFbmQodCksdGhpcy5tb3VzZVBpdGNoJiZ0aGlzLm1vdXNlUGl0Y2guZHJhZ0VuZCh0KSx0aGlzLm9mZlRlbXAoKTt9LHRoaXMudG91Y2hzdGFydD10PT57MSE9PXQudGFyZ2V0VG91Y2hlcy5sZW5ndGg/dGhpcy5yZXNldCgpOih0aGlzLl9zdGFydFBvcz10aGlzLl9sYXN0UG9zPXIudG91Y2hQb3ModGhpcy5lbGVtZW50LHQudGFyZ2V0VG91Y2hlcylbMF0sdGhpcy5zdGFydFRvdWNoKHQsdGhpcy5fc3RhcnRQb3MpLHIuYWRkRXZlbnRMaXN0ZW5lcih3aW5kb3csXCJ0b3VjaG1vdmVcIix0aGlzLnRvdWNobW92ZSx7cGFzc2l2ZTohMX0pLHIuYWRkRXZlbnRMaXN0ZW5lcih3aW5kb3csXCJ0b3VjaGVuZFwiLHRoaXMudG91Y2hlbmQpKTt9LHRoaXMudG91Y2htb3ZlPXQ9PnsxIT09dC50YXJnZXRUb3VjaGVzLmxlbmd0aD90aGlzLnJlc2V0KCk6KHRoaXMuX2xhc3RQb3M9ci50b3VjaFBvcyh0aGlzLmVsZW1lbnQsdC50YXJnZXRUb3VjaGVzKVswXSx0aGlzLm1vdmVUb3VjaCh0LHRoaXMuX2xhc3RQb3MpKTt9LHRoaXMudG91Y2hlbmQ9dD0+ezA9PT10LnRhcmdldFRvdWNoZXMubGVuZ3RoJiZ0aGlzLl9zdGFydFBvcyYmdGhpcy5fbGFzdFBvcyYmdGhpcy5fc3RhcnRQb3MuZGlzdCh0aGlzLl9sYXN0UG9zKTx0aGlzLl9jbGlja1RvbGVyYW5jZSYmdGhpcy5lbGVtZW50LmNsaWNrKCksZGVsZXRlIHRoaXMuX3N0YXJ0UG9zLGRlbGV0ZSB0aGlzLl9sYXN0UG9zLHRoaXMub2ZmVGVtcCgpO30sdGhpcy5yZXNldD0oKT0+e3RoaXMubW91c2VSb3RhdGUucmVzZXQoKSx0aGlzLm1vdXNlUGl0Y2gmJnRoaXMubW91c2VQaXRjaC5yZXNldCgpLHRoaXMudG91Y2hSb3RhdGUucmVzZXQoKSx0aGlzLnRvdWNoUGl0Y2gmJnRoaXMudG91Y2hQaXRjaC5yZXNldCgpLGRlbGV0ZSB0aGlzLl9zdGFydFBvcyxkZWxldGUgdGhpcy5fbGFzdFBvcyx0aGlzLm9mZlRlbXAoKTt9LHRoaXMuX2NsaWNrVG9sZXJhbmNlPTEwO2NvbnN0IHM9dC5kcmFnUm90YXRlLl9tb3VzZVJvdGF0ZS5nZXRDbGlja1RvbGVyYW5jZSgpLG89dC5kcmFnUm90YXRlLl9tb3VzZVBpdGNoLmdldENsaWNrVG9sZXJhbmNlKCk7dGhpcy5lbGVtZW50PWksdGhpcy5tb3VzZVJvdGF0ZT1LYSh7Y2xpY2tUb2xlcmFuY2U6cyxlbmFibGU6ITB9KSx0aGlzLnRvdWNoUm90YXRlPSgoe2VuYWJsZTp0LGNsaWNrVG9sZXJhbmNlOmUsYmVhcmluZ0RlZ3JlZXNQZXJQaXhlbE1vdmVkOmk9Ljh9KT0+e2NvbnN0IGE9bmV3ICRhO3JldHVybiBuZXcgR2Eoe2NsaWNrVG9sZXJhbmNlOmUsbW92ZToodCxlKT0+KHtiZWFyaW5nRGVsdGE6KGUueC10LngpKml9KSxtb3ZlU3RhdGVNYW5hZ2VyOmEsZW5hYmxlOnQsYXNzaWduRXZlbnRzOkJzfSl9KSh7Y2xpY2tUb2xlcmFuY2U6cyxlbmFibGU6ITB9KSx0aGlzLm1hcD10LGEmJih0aGlzLm1vdXNlUGl0Y2g9SmEoe2NsaWNrVG9sZXJhbmNlOm8sZW5hYmxlOiEwfSksdGhpcy50b3VjaFBpdGNoPSgoe2VuYWJsZTp0LGNsaWNrVG9sZXJhbmNlOmUscGl0Y2hEZWdyZWVzUGVyUGl4ZWxNb3ZlZDppPS0uNX0pPT57Y29uc3QgYT1uZXcgJGE7cmV0dXJuIG5ldyBHYSh7Y2xpY2tUb2xlcmFuY2U6ZSxtb3ZlOih0LGUpPT4oe3BpdGNoRGVsdGE6KGUueS10LnkpKml9KSxtb3ZlU3RhdGVNYW5hZ2VyOmEsZW5hYmxlOnQsYXNzaWduRXZlbnRzOkJzfSl9KSh7Y2xpY2tUb2xlcmFuY2U6byxlbmFibGU6ITB9KSksci5hZGRFdmVudExpc3RlbmVyKGksXCJtb3VzZWRvd25cIix0aGlzLm1vdXNlZG93biksci5hZGRFdmVudExpc3RlbmVyKGksXCJ0b3VjaHN0YXJ0XCIsdGhpcy50b3VjaHN0YXJ0LHtwYXNzaXZlOiExfSksci5hZGRFdmVudExpc3RlbmVyKGksXCJ0b3VjaGNhbmNlbFwiLHRoaXMucmVzZXQpO31zdGFydE1vdXNlKHQsZSl7dGhpcy5tb3VzZVJvdGF0ZS5kcmFnU3RhcnQodCxlKSx0aGlzLm1vdXNlUGl0Y2gmJnRoaXMubW91c2VQaXRjaC5kcmFnU3RhcnQodCxlKSxyLmRpc2FibGVEcmFnKCk7fXN0YXJ0VG91Y2godCxlKXt0aGlzLnRvdWNoUm90YXRlLmRyYWdTdGFydCh0LGUpLHRoaXMudG91Y2hQaXRjaCYmdGhpcy50b3VjaFBpdGNoLmRyYWdTdGFydCh0LGUpLHIuZGlzYWJsZURyYWcoKTt9bW92ZU1vdXNlKHQsZSl7Y29uc3QgaT10aGlzLm1hcCx7YmVhcmluZ0RlbHRhOmF9PXRoaXMubW91c2VSb3RhdGUuZHJhZ01vdmUodCxlKXx8e307aWYoYSYmaS5zZXRCZWFyaW5nKGkuZ2V0QmVhcmluZygpK2EpLHRoaXMubW91c2VQaXRjaCl7Y29uc3R7cGl0Y2hEZWx0YTphfT10aGlzLm1vdXNlUGl0Y2guZHJhZ01vdmUodCxlKXx8e307YSYmaS5zZXRQaXRjaChpLmdldFBpdGNoKCkrYSk7fX1tb3ZlVG91Y2godCxlKXtjb25zdCBpPXRoaXMubWFwLHtiZWFyaW5nRGVsdGE6YX09dGhpcy50b3VjaFJvdGF0ZS5kcmFnTW92ZSh0LGUpfHx7fTtpZihhJiZpLnNldEJlYXJpbmcoaS5nZXRCZWFyaW5nKCkrYSksdGhpcy50b3VjaFBpdGNoKXtjb25zdHtwaXRjaERlbHRhOmF9PXRoaXMudG91Y2hQaXRjaC5kcmFnTW92ZSh0LGUpfHx7fTthJiZpLnNldFBpdGNoKGkuZ2V0UGl0Y2goKSthKTt9fW9mZigpe2NvbnN0IHQ9dGhpcy5lbGVtZW50O3IucmVtb3ZlRXZlbnRMaXN0ZW5lcih0LFwibW91c2Vkb3duXCIsdGhpcy5tb3VzZWRvd24pLHIucmVtb3ZlRXZlbnRMaXN0ZW5lcih0LFwidG91Y2hzdGFydFwiLHRoaXMudG91Y2hzdGFydCx7cGFzc2l2ZTohMX0pLHIucmVtb3ZlRXZlbnRMaXN0ZW5lcih3aW5kb3csXCJ0b3VjaG1vdmVcIix0aGlzLnRvdWNobW92ZSx7cGFzc2l2ZTohMX0pLHIucmVtb3ZlRXZlbnRMaXN0ZW5lcih3aW5kb3csXCJ0b3VjaGVuZFwiLHRoaXMudG91Y2hlbmQpLHIucmVtb3ZlRXZlbnRMaXN0ZW5lcih0LFwidG91Y2hjYW5jZWxcIix0aGlzLnJlc2V0KSx0aGlzLm9mZlRlbXAoKTt9b2ZmVGVtcCgpe3IuZW5hYmxlRHJhZygpLHIucmVtb3ZlRXZlbnRMaXN0ZW5lcih3aW5kb3csXCJtb3VzZW1vdmVcIix0aGlzLm1vdXNlbW92ZSksci5yZW1vdmVFdmVudExpc3RlbmVyKHdpbmRvdyxcIm1vdXNldXBcIix0aGlzLm1vdXNldXApLHIucmVtb3ZlRXZlbnRMaXN0ZW5lcih3aW5kb3csXCJ0b3VjaG1vdmVcIix0aGlzLnRvdWNobW92ZSx7cGFzc2l2ZTohMX0pLHIucmVtb3ZlRXZlbnRMaXN0ZW5lcih3aW5kb3csXCJ0b3VjaGVuZFwiLHRoaXMudG91Y2hlbmQpO319bGV0IFVzO2Z1bmN0aW9uIGpzKHQsaSxhKXtjb25zdCBzPW5ldyBlLk4odC5sbmcsdC5sYXQpO2lmKHQ9bmV3IGUuTih0LmxuZyx0LmxhdCksaSl7Y29uc3Qgcz1uZXcgZS5OKHQubG5nLTM2MCx0LmxhdCksbz1uZXcgZS5OKHQubG5nKzM2MCx0LmxhdCkscj1hLmxvY2F0aW9uUG9pbnQodCkuZGlzdFNxcihpKTthLmxvY2F0aW9uUG9pbnQocykuZGlzdFNxcihpKTxyP3Q9czphLmxvY2F0aW9uUG9pbnQobykuZGlzdFNxcihpKTxyJiYodD1vKTt9Zm9yKDtNYXRoLmFicyh0LmxuZy1hLmNlbnRlci5sbmcpPjE4MDspe2NvbnN0IGU9YS5sb2NhdGlvblBvaW50KHQpO2lmKGUueD49MCYmZS55Pj0wJiZlLng8PWEud2lkdGgmJmUueTw9YS5oZWlnaHQpYnJlYWs7dC5sbmc+YS5jZW50ZXIubG5nP3QubG5nLT0zNjA6dC5sbmcrPTM2MDt9cmV0dXJuIHQubG5nIT09cy5sbmcmJmEubG9jYXRpb25Qb2ludCh0KS55PmEuaGVpZ2h0LzItYS5nZXRIb3Jpem9uKCk/dDpzfWNvbnN0IFpzPXtjZW50ZXI6XCJ0cmFuc2xhdGUoLTUwJSwtNTAlKVwiLHRvcDpcInRyYW5zbGF0ZSgtNTAlLDApXCIsXCJ0b3AtbGVmdFwiOlwidHJhbnNsYXRlKDAsMClcIixcInRvcC1yaWdodFwiOlwidHJhbnNsYXRlKC0xMDAlLDApXCIsYm90dG9tOlwidHJhbnNsYXRlKC01MCUsLTEwMCUpXCIsXCJib3R0b20tbGVmdFwiOlwidHJhbnNsYXRlKDAsLTEwMCUpXCIsXCJib3R0b20tcmlnaHRcIjpcInRyYW5zbGF0ZSgtMTAwJSwtMTAwJSlcIixsZWZ0OlwidHJhbnNsYXRlKDAsLTUwJSlcIixyaWdodDpcInRyYW5zbGF0ZSgtMTAwJSwtNTAlKVwifTtmdW5jdGlvbiBxcyh0LGUsaSl7Y29uc3QgYT10LmNsYXNzTGlzdDtmb3IoY29uc3QgdCBpbiBacylhLnJlbW92ZShgbWFwbGlicmVnbC0ke2l9LWFuY2hvci0ke3R9YCk7YS5hZGQoYG1hcGxpYnJlZ2wtJHtpfS1hbmNob3ItJHtlfWApO31jbGFzcyBWcyBleHRlbmRzIGUuRXtjb25zdHJ1Y3Rvcih0KXtpZihzdXBlcigpLHRoaXMuX29uS2V5UHJlc3M9dD0+e2NvbnN0IGU9dC5jb2RlLGk9dC5jaGFyQ29kZXx8dC5rZXlDb2RlO1wiU3BhY2VcIiE9PWUmJlwiRW50ZXJcIiE9PWUmJjMyIT09aSYmMTMhPT1pfHx0aGlzLnRvZ2dsZVBvcHVwKCk7fSx0aGlzLl9vbk1hcENsaWNrPXQ9Pntjb25zdCBlPXQub3JpZ2luYWxFdmVudC50YXJnZXQsaT10aGlzLl9lbGVtZW50O3RoaXMuX3BvcHVwJiYoZT09PWl8fGkuY29udGFpbnMoZSkpJiZ0aGlzLnRvZ2dsZVBvcHVwKCk7fSx0aGlzLl91cGRhdGU9dD0+e3ZhciBlO2lmKCF0aGlzLl9tYXApcmV0dXJuO2NvbnN0IGk9dGhpcy5fbWFwLmxvYWRlZCgpJiYhdGhpcy5fbWFwLmlzTW92aW5nKCk7KFwidGVycmFpblwiPT09KG51bGw9PXQ/dm9pZCAwOnQudHlwZSl8fFwicmVuZGVyXCI9PT0obnVsbD09dD92b2lkIDA6dC50eXBlKSYmIWkpJiZ0aGlzLl9tYXAub25jZShcInJlbmRlclwiLHRoaXMuX3VwZGF0ZSksdGhpcy5fbG5nTGF0PXRoaXMuX21hcC50cmFuc2Zvcm0ucmVuZGVyV29ybGRDb3BpZXM/anModGhpcy5fbG5nTGF0LHRoaXMuX2ZsYXRQb3MsdGhpcy5fbWFwLnRyYW5zZm9ybSk6bnVsbD09PShlPXRoaXMuX2xuZ0xhdCl8fHZvaWQgMD09PWU/dm9pZCAwOmUud3JhcCgpLHRoaXMuX2ZsYXRQb3M9dGhpcy5fcG9zPXRoaXMuX21hcC5wcm9qZWN0KHRoaXMuX2xuZ0xhdCkuX2FkZCh0aGlzLl9vZmZzZXQpLHRoaXMuX21hcC50ZXJyYWluJiYodGhpcy5fZmxhdFBvcz10aGlzLl9tYXAudHJhbnNmb3JtLmxvY2F0aW9uUG9pbnQodGhpcy5fbG5nTGF0KS5fYWRkKHRoaXMuX29mZnNldCkpO2xldCBhPVwiXCI7XCJ2aWV3cG9ydFwiPT09dGhpcy5fcm90YXRpb25BbGlnbm1lbnR8fFwiYXV0b1wiPT09dGhpcy5fcm90YXRpb25BbGlnbm1lbnQ/YT1gcm90YXRlWigke3RoaXMuX3JvdGF0aW9ufWRlZylgOlwibWFwXCI9PT10aGlzLl9yb3RhdGlvbkFsaWdubWVudCYmKGE9YHJvdGF0ZVooJHt0aGlzLl9yb3RhdGlvbi10aGlzLl9tYXAuZ2V0QmVhcmluZygpfWRlZylgKTtsZXQgcz1cIlwiO1widmlld3BvcnRcIj09PXRoaXMuX3BpdGNoQWxpZ25tZW50fHxcImF1dG9cIj09PXRoaXMuX3BpdGNoQWxpZ25tZW50P3M9XCJyb3RhdGVYKDBkZWcpXCI6XCJtYXBcIj09PXRoaXMuX3BpdGNoQWxpZ25tZW50JiYocz1gcm90YXRlWCgke3RoaXMuX21hcC5nZXRQaXRjaCgpfWRlZylgKSx0aGlzLl9zdWJwaXhlbFBvc2l0aW9uaW5nfHx0JiZcIm1vdmVlbmRcIiE9PXQudHlwZXx8KHRoaXMuX3Bvcz10aGlzLl9wb3Mucm91bmQoKSksci5zZXRUcmFuc2Zvcm0odGhpcy5fZWxlbWVudCxgJHtac1t0aGlzLl9hbmNob3JdfSB0cmFuc2xhdGUoJHt0aGlzLl9wb3MueH1weCwgJHt0aGlzLl9wb3MueX1weCkgJHtzfSAke2F9YCksby5mcmFtZUFzeW5jKG5ldyBBYm9ydENvbnRyb2xsZXIpLnRoZW4oKCgpPT57dGhpcy5fdXBkYXRlT3BhY2l0eSh0JiZcIm1vdmVlbmRcIj09PXQudHlwZSk7fSkpLmNhdGNoKCgoKT0+e30pKTt9LHRoaXMuX29uTW92ZT10PT57aWYoIXRoaXMuX2lzRHJhZ2dpbmcpe2NvbnN0IGU9dGhpcy5fY2xpY2tUb2xlcmFuY2V8fHRoaXMuX21hcC5fY2xpY2tUb2xlcmFuY2U7dGhpcy5faXNEcmFnZ2luZz10LnBvaW50LmRpc3QodGhpcy5fcG9pbnRlcmRvd25Qb3MpPj1lO310aGlzLl9pc0RyYWdnaW5nJiYodGhpcy5fcG9zPXQucG9pbnQuc3ViKHRoaXMuX3Bvc2l0aW9uRGVsdGEpLHRoaXMuX2xuZ0xhdD10aGlzLl9tYXAudW5wcm9qZWN0KHRoaXMuX3BvcyksdGhpcy5zZXRMbmdMYXQodGhpcy5fbG5nTGF0KSx0aGlzLl9lbGVtZW50LnN0eWxlLnBvaW50ZXJFdmVudHM9XCJub25lXCIsXCJwZW5kaW5nXCI9PT10aGlzLl9zdGF0ZSYmKHRoaXMuX3N0YXRlPVwiYWN0aXZlXCIsdGhpcy5maXJlKG5ldyBlLmsoXCJkcmFnc3RhcnRcIikpKSx0aGlzLmZpcmUobmV3IGUuayhcImRyYWdcIikpKTt9LHRoaXMuX29uVXA9KCk9Pnt0aGlzLl9lbGVtZW50LnN0eWxlLnBvaW50ZXJFdmVudHM9XCJhdXRvXCIsdGhpcy5fcG9zaXRpb25EZWx0YT1udWxsLHRoaXMuX3BvaW50ZXJkb3duUG9zPW51bGwsdGhpcy5faXNEcmFnZ2luZz0hMSx0aGlzLl9tYXAub2ZmKFwibW91c2Vtb3ZlXCIsdGhpcy5fb25Nb3ZlKSx0aGlzLl9tYXAub2ZmKFwidG91Y2htb3ZlXCIsdGhpcy5fb25Nb3ZlKSxcImFjdGl2ZVwiPT09dGhpcy5fc3RhdGUmJnRoaXMuZmlyZShuZXcgZS5rKFwiZHJhZ2VuZFwiKSksdGhpcy5fc3RhdGU9XCJpbmFjdGl2ZVwiO30sdGhpcy5fYWRkRHJhZ0hhbmRsZXI9dD0+e3RoaXMuX2VsZW1lbnQuY29udGFpbnModC5vcmlnaW5hbEV2ZW50LnRhcmdldCkmJih0LnByZXZlbnREZWZhdWx0KCksdGhpcy5fcG9zaXRpb25EZWx0YT10LnBvaW50LnN1Yih0aGlzLl9wb3MpLmFkZCh0aGlzLl9vZmZzZXQpLHRoaXMuX3BvaW50ZXJkb3duUG9zPXQucG9pbnQsdGhpcy5fc3RhdGU9XCJwZW5kaW5nXCIsdGhpcy5fbWFwLm9uKFwibW91c2Vtb3ZlXCIsdGhpcy5fb25Nb3ZlKSx0aGlzLl9tYXAub24oXCJ0b3VjaG1vdmVcIix0aGlzLl9vbk1vdmUpLHRoaXMuX21hcC5vbmNlKFwibW91c2V1cFwiLHRoaXMuX29uVXApLHRoaXMuX21hcC5vbmNlKFwidG91Y2hlbmRcIix0aGlzLl9vblVwKSk7fSx0aGlzLl9hbmNob3I9dCYmdC5hbmNob3J8fFwiY2VudGVyXCIsdGhpcy5fY29sb3I9dCYmdC5jb2xvcnx8XCIjM0ZCMUNFXCIsdGhpcy5fc2NhbGU9dCYmdC5zY2FsZXx8MSx0aGlzLl9kcmFnZ2FibGU9dCYmdC5kcmFnZ2FibGV8fCExLHRoaXMuX2NsaWNrVG9sZXJhbmNlPXQmJnQuY2xpY2tUb2xlcmFuY2V8fDAsdGhpcy5fc3VicGl4ZWxQb3NpdGlvbmluZz10JiZ0LnN1YnBpeGVsUG9zaXRpb25pbmd8fCExLHRoaXMuX2lzRHJhZ2dpbmc9ITEsdGhpcy5fc3RhdGU9XCJpbmFjdGl2ZVwiLHRoaXMuX3JvdGF0aW9uPXQmJnQucm90YXRpb258fDAsdGhpcy5fcm90YXRpb25BbGlnbm1lbnQ9dCYmdC5yb3RhdGlvbkFsaWdubWVudHx8XCJhdXRvXCIsdGhpcy5fcGl0Y2hBbGlnbm1lbnQ9dCYmdC5waXRjaEFsaWdubWVudCYmXCJhdXRvXCIhPT10LnBpdGNoQWxpZ25tZW50P3QucGl0Y2hBbGlnbm1lbnQ6dGhpcy5fcm90YXRpb25BbGlnbm1lbnQsdGhpcy5zZXRPcGFjaXR5KCksdGhpcy5zZXRPcGFjaXR5KG51bGw9PXQ/dm9pZCAwOnQub3BhY2l0eSxudWxsPT10P3ZvaWQgMDp0Lm9wYWNpdHlXaGVuQ292ZXJlZCksdCYmdC5lbGVtZW50KXRoaXMuX2VsZW1lbnQ9dC5lbGVtZW50LHRoaXMuX29mZnNldD1lLlAuY29udmVydCh0JiZ0Lm9mZnNldHx8WzAsMF0pO2Vsc2Uge3RoaXMuX2RlZmF1bHRNYXJrZXI9ITAsdGhpcy5fZWxlbWVudD1yLmNyZWF0ZShcImRpdlwiKTtjb25zdCBpPXIuY3JlYXRlTlMoXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiLFwic3ZnXCIpLGE9NDEscz0yNztpLnNldEF0dHJpYnV0ZU5TKG51bGwsXCJkaXNwbGF5XCIsXCJibG9ja1wiKSxpLnNldEF0dHJpYnV0ZU5TKG51bGwsXCJoZWlnaHRcIixgJHthfXB4YCksaS5zZXRBdHRyaWJ1dGVOUyhudWxsLFwid2lkdGhcIixgJHtzfXB4YCksaS5zZXRBdHRyaWJ1dGVOUyhudWxsLFwidmlld0JveFwiLGAwIDAgJHtzfSAke2F9YCk7Y29uc3Qgbz1yLmNyZWF0ZU5TKFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIixcImdcIik7by5zZXRBdHRyaWJ1dGVOUyhudWxsLFwic3Ryb2tlXCIsXCJub25lXCIpLG8uc2V0QXR0cmlidXRlTlMobnVsbCxcInN0cm9rZS13aWR0aFwiLFwiMVwiKSxvLnNldEF0dHJpYnV0ZU5TKG51bGwsXCJmaWxsXCIsXCJub25lXCIpLG8uc2V0QXR0cmlidXRlTlMobnVsbCxcImZpbGwtcnVsZVwiLFwiZXZlbm9kZFwiKTtjb25zdCBuPXIuY3JlYXRlTlMoXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiLFwiZ1wiKTtuLnNldEF0dHJpYnV0ZU5TKG51bGwsXCJmaWxsLXJ1bGVcIixcIm5vbnplcm9cIik7Y29uc3QgbD1yLmNyZWF0ZU5TKFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIixcImdcIik7bC5zZXRBdHRyaWJ1dGVOUyhudWxsLFwidHJhbnNmb3JtXCIsXCJ0cmFuc2xhdGUoMy4wLCAyOS4wKVwiKSxsLnNldEF0dHJpYnV0ZU5TKG51bGwsXCJmaWxsXCIsXCIjMDAwMDAwXCIpO2NvbnN0IGg9W3tyeDpcIjEwLjVcIixyeTpcIjUuMjUwMDIyNzNcIn0se3J4OlwiMTAuNVwiLHJ5OlwiNS4yNTAwMjI3M1wifSx7cng6XCI5LjVcIixyeTpcIjQuNzcyNzUwMDdcIn0se3J4OlwiOC41XCIscnk6XCI0LjI5NTQ5OTM2XCJ9LHtyeDpcIjcuNVwiLHJ5OlwiMy44MTgyMjMwOFwifSx7cng6XCI2LjVcIixyeTpcIjMuMzQwOTQ2NzlcIn0se3J4OlwiNS41XCIscnk6XCIyLjg2MzY3MDUxXCJ9LHtyeDpcIjQuNVwiLHJ5OlwiMi4zODYzNjg2NFwifV07Zm9yKGNvbnN0IHQgb2YgaCl7Y29uc3QgZT1yLmNyZWF0ZU5TKFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIixcImVsbGlwc2VcIik7ZS5zZXRBdHRyaWJ1dGVOUyhudWxsLFwib3BhY2l0eVwiLFwiMC4wNFwiKSxlLnNldEF0dHJpYnV0ZU5TKG51bGwsXCJjeFwiLFwiMTAuNVwiKSxlLnNldEF0dHJpYnV0ZU5TKG51bGwsXCJjeVwiLFwiNS44MDAyOTAwOFwiKSxlLnNldEF0dHJpYnV0ZU5TKG51bGwsXCJyeFwiLHQucngpLGUuc2V0QXR0cmlidXRlTlMobnVsbCxcInJ5XCIsdC5yeSksbC5hcHBlbmRDaGlsZChlKTt9Y29uc3QgYz1yLmNyZWF0ZU5TKFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIixcImdcIik7Yy5zZXRBdHRyaWJ1dGVOUyhudWxsLFwiZmlsbFwiLHRoaXMuX2NvbG9yKTtjb25zdCB1PXIuY3JlYXRlTlMoXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiLFwicGF0aFwiKTt1LnNldEF0dHJpYnV0ZU5TKG51bGwsXCJkXCIsXCJNMjcsMTMuNSBDMjcsMTkuMDc0NjQ0IDIwLjI1MDAwMSwyNy4wMDAwMDIgMTQuNzUsMzQuNTAwMDAyIEMxNC4wMTY2NjUsMzUuNTAwMDA0IDEyLjk4MzMzNSwzNS41MDAwMDQgMTIuMjUsMzQuNTAwMDAyIEM2Ljc0OTk5OTMsMjcuMDAwMDAyIDAsMTkuMjIyNTYyIDAsMTMuNSBDMCw2LjA0NDE1NTkgNi4wNDQxNTU5LDAgMTMuNSwwIEMyMC45NTU4NDQsMCAyNyw2LjA0NDE1NTkgMjcsMTMuNSBaXCIpLGMuYXBwZW5kQ2hpbGQodSk7Y29uc3QgZD1yLmNyZWF0ZU5TKFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIixcImdcIik7ZC5zZXRBdHRyaWJ1dGVOUyhudWxsLFwib3BhY2l0eVwiLFwiMC4yNVwiKSxkLnNldEF0dHJpYnV0ZU5TKG51bGwsXCJmaWxsXCIsXCIjMDAwMDAwXCIpO2NvbnN0IF89ci5jcmVhdGVOUyhcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIsXCJwYXRoXCIpO18uc2V0QXR0cmlidXRlTlMobnVsbCxcImRcIixcIk0xMy41LDAgQzYuMDQ0MTU1OSwwIDAsNi4wNDQxNTU5IDAsMTMuNSBDMCwxOS4yMjI1NjIgNi43NDk5OTkzLDI3IDEyLjI1LDM0LjUgQzEzLDM1LjUyMjcyNyAxNC4wMTY2NjQsMzUuNTAwMDA0IDE0Ljc1LDM0LjUgQzIwLjI1MDAwMSwyNyAyNywxOS4wNzQ2NDQgMjcsMTMuNSBDMjcsNi4wNDQxNTU5IDIwLjk1NTg0NCwwIDEzLjUsMCBaIE0xMy41LDEgQzIwLjQxNTQwNCwxIDI2LDYuNTg0NTk2IDI2LDEzLjUgQzI2LDE1Ljg5ODY1NyAyNC40OTU1ODQsMTkuMTgxNDMxIDIyLjIyMDcwMywyMi43MzgyODEgQzE5Ljk0NTgyMywyNi4yOTUxMzIgMTYuNzA1MTE5LDMwLjE0MjE2NyAxMy45NDMzNTksMzMuOTA4MjAzIEMxMy43NDM0NDUsMzQuMTgwODE0IDEzLjYxMjcxNSwzNC4zMjI3MzggMTMuNSwzNC40NDE0MDYgQzEzLjM4NzI4NSwzNC4zMjI3MzggMTMuMjU2NTU1LDM0LjE4MDgxNCAxMy4wNTY2NDEsMzMuOTA4MjAzIEMxMC4yODQ0ODEsMzAuMTI3OTg1IDcuNDE0ODY4NCwyNi4zMTQxNTkgNS4wMTU2MjUsMjIuNzczNDM4IEMyLjYxNjM4MTYsMTkuMjMyNzE1IDEsMTUuOTUzNTM4IDEsMTMuNSBDMSw2LjU4NDU5NiA2LjU4NDU5NiwxIDEzLjUsMSBaXCIpLGQuYXBwZW5kQ2hpbGQoXyk7Y29uc3QgcD1yLmNyZWF0ZU5TKFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIixcImdcIik7cC5zZXRBdHRyaWJ1dGVOUyhudWxsLFwidHJhbnNmb3JtXCIsXCJ0cmFuc2xhdGUoNi4wLCA3LjApXCIpLHAuc2V0QXR0cmlidXRlTlMobnVsbCxcImZpbGxcIixcIiNGRkZGRkZcIik7Y29uc3QgbT1yLmNyZWF0ZU5TKFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIixcImdcIik7bS5zZXRBdHRyaWJ1dGVOUyhudWxsLFwidHJhbnNmb3JtXCIsXCJ0cmFuc2xhdGUoOC4wLCA4LjApXCIpO2NvbnN0IGY9ci5jcmVhdGVOUyhcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIsXCJjaXJjbGVcIik7Zi5zZXRBdHRyaWJ1dGVOUyhudWxsLFwiZmlsbFwiLFwiIzAwMDAwMFwiKSxmLnNldEF0dHJpYnV0ZU5TKG51bGwsXCJvcGFjaXR5XCIsXCIwLjI1XCIpLGYuc2V0QXR0cmlidXRlTlMobnVsbCxcImN4XCIsXCI1LjVcIiksZi5zZXRBdHRyaWJ1dGVOUyhudWxsLFwiY3lcIixcIjUuNVwiKSxmLnNldEF0dHJpYnV0ZU5TKG51bGwsXCJyXCIsXCI1LjQ5OTk5NjJcIik7Y29uc3QgZz1yLmNyZWF0ZU5TKFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIixcImNpcmNsZVwiKTtnLnNldEF0dHJpYnV0ZU5TKG51bGwsXCJmaWxsXCIsXCIjRkZGRkZGXCIpLGcuc2V0QXR0cmlidXRlTlMobnVsbCxcImN4XCIsXCI1LjVcIiksZy5zZXRBdHRyaWJ1dGVOUyhudWxsLFwiY3lcIixcIjUuNVwiKSxnLnNldEF0dHJpYnV0ZU5TKG51bGwsXCJyXCIsXCI1LjQ5OTk5NjJcIiksbS5hcHBlbmRDaGlsZChmKSxtLmFwcGVuZENoaWxkKGcpLG4uYXBwZW5kQ2hpbGQobCksbi5hcHBlbmRDaGlsZChjKSxuLmFwcGVuZENoaWxkKGQpLG4uYXBwZW5kQ2hpbGQocCksbi5hcHBlbmRDaGlsZChtKSxpLmFwcGVuZENoaWxkKG4pLGkuc2V0QXR0cmlidXRlTlMobnVsbCxcImhlaWdodFwiLGEqdGhpcy5fc2NhbGUrXCJweFwiKSxpLnNldEF0dHJpYnV0ZU5TKG51bGwsXCJ3aWR0aFwiLHMqdGhpcy5fc2NhbGUrXCJweFwiKSx0aGlzLl9lbGVtZW50LmFwcGVuZENoaWxkKGkpLHRoaXMuX29mZnNldD1lLlAuY29udmVydCh0JiZ0Lm9mZnNldHx8WzAsLTE0XSk7fWlmKHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZChcIm1hcGxpYnJlZ2wtbWFya2VyXCIpLHRoaXMuX2VsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihcImRyYWdzdGFydFwiLCh0PT57dC5wcmV2ZW50RGVmYXVsdCgpO30pKSx0aGlzLl9lbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoXCJtb3VzZWRvd25cIiwodD0+e3QucHJldmVudERlZmF1bHQoKTt9KSkscXModGhpcy5fZWxlbWVudCx0aGlzLl9hbmNob3IsXCJtYXJrZXJcIiksdCYmdC5jbGFzc05hbWUpZm9yKGNvbnN0IGUgb2YgdC5jbGFzc05hbWUuc3BsaXQoXCIgXCIpKXRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZChlKTt0aGlzLl9wb3B1cD1udWxsO31hZGRUbyh0KXtyZXR1cm4gdGhpcy5yZW1vdmUoKSx0aGlzLl9tYXA9dCx0aGlzLl9lbGVtZW50LnNldEF0dHJpYnV0ZShcImFyaWEtbGFiZWxcIix0Ll9nZXRVSVN0cmluZyhcIk1hcmtlci5UaXRsZVwiKSksdC5nZXRDYW52YXNDb250YWluZXIoKS5hcHBlbmRDaGlsZCh0aGlzLl9lbGVtZW50KSx0Lm9uKFwibW92ZVwiLHRoaXMuX3VwZGF0ZSksdC5vbihcIm1vdmVlbmRcIix0aGlzLl91cGRhdGUpLHQub24oXCJ0ZXJyYWluXCIsdGhpcy5fdXBkYXRlKSx0aGlzLnNldERyYWdnYWJsZSh0aGlzLl9kcmFnZ2FibGUpLHRoaXMuX3VwZGF0ZSgpLHRoaXMuX21hcC5vbihcImNsaWNrXCIsdGhpcy5fb25NYXBDbGljayksdGhpc31yZW1vdmUoKXtyZXR1cm4gdGhpcy5fb3BhY2l0eVRpbWVvdXQmJihjbGVhclRpbWVvdXQodGhpcy5fb3BhY2l0eVRpbWVvdXQpLGRlbGV0ZSB0aGlzLl9vcGFjaXR5VGltZW91dCksdGhpcy5fbWFwJiYodGhpcy5fbWFwLm9mZihcImNsaWNrXCIsdGhpcy5fb25NYXBDbGljayksdGhpcy5fbWFwLm9mZihcIm1vdmVcIix0aGlzLl91cGRhdGUpLHRoaXMuX21hcC5vZmYoXCJtb3ZlZW5kXCIsdGhpcy5fdXBkYXRlKSx0aGlzLl9tYXAub2ZmKFwidGVycmFpblwiLHRoaXMuX3VwZGF0ZSksdGhpcy5fbWFwLm9mZihcIm1vdXNlZG93blwiLHRoaXMuX2FkZERyYWdIYW5kbGVyKSx0aGlzLl9tYXAub2ZmKFwidG91Y2hzdGFydFwiLHRoaXMuX2FkZERyYWdIYW5kbGVyKSx0aGlzLl9tYXAub2ZmKFwibW91c2V1cFwiLHRoaXMuX29uVXApLHRoaXMuX21hcC5vZmYoXCJ0b3VjaGVuZFwiLHRoaXMuX29uVXApLHRoaXMuX21hcC5vZmYoXCJtb3VzZW1vdmVcIix0aGlzLl9vbk1vdmUpLHRoaXMuX21hcC5vZmYoXCJ0b3VjaG1vdmVcIix0aGlzLl9vbk1vdmUpLGRlbGV0ZSB0aGlzLl9tYXApLHIucmVtb3ZlKHRoaXMuX2VsZW1lbnQpLHRoaXMuX3BvcHVwJiZ0aGlzLl9wb3B1cC5yZW1vdmUoKSx0aGlzfWdldExuZ0xhdCgpe3JldHVybiB0aGlzLl9sbmdMYXR9c2V0TG5nTGF0KHQpe3JldHVybiB0aGlzLl9sbmdMYXQ9ZS5OLmNvbnZlcnQodCksdGhpcy5fcG9zPW51bGwsdGhpcy5fcG9wdXAmJnRoaXMuX3BvcHVwLnNldExuZ0xhdCh0aGlzLl9sbmdMYXQpLHRoaXMuX3VwZGF0ZSgpLHRoaXN9Z2V0RWxlbWVudCgpe3JldHVybiB0aGlzLl9lbGVtZW50fXNldFBvcHVwKHQpe2lmKHRoaXMuX3BvcHVwJiYodGhpcy5fcG9wdXAucmVtb3ZlKCksdGhpcy5fcG9wdXA9bnVsbCx0aGlzLl9lbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJrZXlwcmVzc1wiLHRoaXMuX29uS2V5UHJlc3MpLHRoaXMuX29yaWdpbmFsVGFiSW5kZXh8fHRoaXMuX2VsZW1lbnQucmVtb3ZlQXR0cmlidXRlKFwidGFiaW5kZXhcIikpLHQpe2lmKCEoXCJvZmZzZXRcImluIHQub3B0aW9ucykpe2NvbnN0IGU9MzguMSxpPTEzLjUsYT1NYXRoLmFicyhpKS9NYXRoLlNRUlQyO3Qub3B0aW9ucy5vZmZzZXQ9dGhpcy5fZGVmYXVsdE1hcmtlcj97dG9wOlswLDBdLFwidG9wLWxlZnRcIjpbMCwwXSxcInRvcC1yaWdodFwiOlswLDBdLGJvdHRvbTpbMCwtZV0sXCJib3R0b20tbGVmdFwiOlthLC0xKihlLWkrYSldLFwiYm90dG9tLXJpZ2h0XCI6Wy1hLC0xKihlLWkrYSldLGxlZnQ6W2ksLTEqKGUtaSldLHJpZ2h0OlstaSwtMSooZS1pKV19OnRoaXMuX29mZnNldDt9dGhpcy5fcG9wdXA9dCx0aGlzLl9vcmlnaW5hbFRhYkluZGV4PXRoaXMuX2VsZW1lbnQuZ2V0QXR0cmlidXRlKFwidGFiaW5kZXhcIiksdGhpcy5fb3JpZ2luYWxUYWJJbmRleHx8dGhpcy5fZWxlbWVudC5zZXRBdHRyaWJ1dGUoXCJ0YWJpbmRleFwiLFwiMFwiKSx0aGlzLl9lbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoXCJrZXlwcmVzc1wiLHRoaXMuX29uS2V5UHJlc3MpO31yZXR1cm4gdGhpc31zZXRTdWJwaXhlbFBvc2l0aW9uaW5nKHQpe3JldHVybiB0aGlzLl9zdWJwaXhlbFBvc2l0aW9uaW5nPXQsdGhpc31nZXRQb3B1cCgpe3JldHVybiB0aGlzLl9wb3B1cH10b2dnbGVQb3B1cCgpe2NvbnN0IHQ9dGhpcy5fcG9wdXA7cmV0dXJuIHRoaXMuX2VsZW1lbnQuc3R5bGUub3BhY2l0eT09PXRoaXMuX29wYWNpdHlXaGVuQ292ZXJlZD90aGlzOnQ/KHQuaXNPcGVuKCk/dC5yZW1vdmUoKToodC5zZXRMbmdMYXQodGhpcy5fbG5nTGF0KSx0LmFkZFRvKHRoaXMuX21hcCkpLHRoaXMpOnRoaXN9X3VwZGF0ZU9wYWNpdHkodD0hMSl7dmFyIGksYTtpZighKG51bGw9PT0oaT10aGlzLl9tYXApfHx2b2lkIDA9PT1pP3ZvaWQgMDppLnRlcnJhaW4pKXJldHVybiB2b2lkKHRoaXMuX2VsZW1lbnQuc3R5bGUub3BhY2l0eSE9PXRoaXMuX29wYWNpdHkmJih0aGlzLl9lbGVtZW50LnN0eWxlLm9wYWNpdHk9dGhpcy5fb3BhY2l0eSkpO2lmKHQpdGhpcy5fb3BhY2l0eVRpbWVvdXQ9bnVsbDtlbHNlIHtpZih0aGlzLl9vcGFjaXR5VGltZW91dClyZXR1cm47dGhpcy5fb3BhY2l0eVRpbWVvdXQ9c2V0VGltZW91dCgoKCk9Pnt0aGlzLl9vcGFjaXR5VGltZW91dD1udWxsO30pLDEwMCk7fWNvbnN0IHM9dGhpcy5fbWFwLG89cy50ZXJyYWluLmRlcHRoQXRQb2ludCh0aGlzLl9wb3MpLHI9cy50ZXJyYWluLmdldEVsZXZhdGlvbkZvckxuZ0xhdFpvb20odGhpcy5fbG5nTGF0LHMudHJhbnNmb3JtLnRpbGVab29tKTtpZihzLnRyYW5zZm9ybS5sbmdMYXRUb0NhbWVyYURlcHRoKHRoaXMuX2xuZ0xhdCxyKS1vPC4wMDYpcmV0dXJuIHZvaWQodGhpcy5fZWxlbWVudC5zdHlsZS5vcGFjaXR5PXRoaXMuX29wYWNpdHkpO2NvbnN0IG49LXRoaXMuX29mZnNldC55L3MudHJhbnNmb3JtLl9waXhlbFBlck1ldGVyLGw9TWF0aC5zaW4ocy5nZXRQaXRjaCgpKk1hdGguUEkvMTgwKSpuLGg9cy50ZXJyYWluLmRlcHRoQXRQb2ludChuZXcgZS5QKHRoaXMuX3Bvcy54LHRoaXMuX3Bvcy55LXRoaXMuX29mZnNldC55KSksYz1zLnRyYW5zZm9ybS5sbmdMYXRUb0NhbWVyYURlcHRoKHRoaXMuX2xuZ0xhdCxyK2wpLWg+LjAwNjsobnVsbD09PShhPXRoaXMuX3BvcHVwKXx8dm9pZCAwPT09YT92b2lkIDA6YS5pc09wZW4oKSkmJmMmJnRoaXMuX3BvcHVwLnJlbW92ZSgpLHRoaXMuX2VsZW1lbnQuc3R5bGUub3BhY2l0eT1jP3RoaXMuX29wYWNpdHlXaGVuQ292ZXJlZDp0aGlzLl9vcGFjaXR5O31nZXRPZmZzZXQoKXtyZXR1cm4gdGhpcy5fb2Zmc2V0fXNldE9mZnNldCh0KXtyZXR1cm4gdGhpcy5fb2Zmc2V0PWUuUC5jb252ZXJ0KHQpLHRoaXMuX3VwZGF0ZSgpLHRoaXN9YWRkQ2xhc3NOYW1lKHQpe3RoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZCh0KTt9cmVtb3ZlQ2xhc3NOYW1lKHQpe3RoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZSh0KTt9dG9nZ2xlQ2xhc3NOYW1lKHQpe3JldHVybiB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC50b2dnbGUodCl9c2V0RHJhZ2dhYmxlKHQpe3JldHVybiB0aGlzLl9kcmFnZ2FibGU9ISF0LHRoaXMuX21hcCYmKHQ/KHRoaXMuX21hcC5vbihcIm1vdXNlZG93blwiLHRoaXMuX2FkZERyYWdIYW5kbGVyKSx0aGlzLl9tYXAub24oXCJ0b3VjaHN0YXJ0XCIsdGhpcy5fYWRkRHJhZ0hhbmRsZXIpKToodGhpcy5fbWFwLm9mZihcIm1vdXNlZG93blwiLHRoaXMuX2FkZERyYWdIYW5kbGVyKSx0aGlzLl9tYXAub2ZmKFwidG91Y2hzdGFydFwiLHRoaXMuX2FkZERyYWdIYW5kbGVyKSkpLHRoaXN9aXNEcmFnZ2FibGUoKXtyZXR1cm4gdGhpcy5fZHJhZ2dhYmxlfXNldFJvdGF0aW9uKHQpe3JldHVybiB0aGlzLl9yb3RhdGlvbj10fHwwLHRoaXMuX3VwZGF0ZSgpLHRoaXN9Z2V0Um90YXRpb24oKXtyZXR1cm4gdGhpcy5fcm90YXRpb259c2V0Um90YXRpb25BbGlnbm1lbnQodCl7cmV0dXJuIHRoaXMuX3JvdGF0aW9uQWxpZ25tZW50PXR8fFwiYXV0b1wiLHRoaXMuX3VwZGF0ZSgpLHRoaXN9Z2V0Um90YXRpb25BbGlnbm1lbnQoKXtyZXR1cm4gdGhpcy5fcm90YXRpb25BbGlnbm1lbnR9c2V0UGl0Y2hBbGlnbm1lbnQodCl7cmV0dXJuIHRoaXMuX3BpdGNoQWxpZ25tZW50PXQmJlwiYXV0b1wiIT09dD90OnRoaXMuX3JvdGF0aW9uQWxpZ25tZW50LHRoaXMuX3VwZGF0ZSgpLHRoaXN9Z2V0UGl0Y2hBbGlnbm1lbnQoKXtyZXR1cm4gdGhpcy5fcGl0Y2hBbGlnbm1lbnR9c2V0T3BhY2l0eSh0LGUpe3JldHVybiB2b2lkIDA9PT10JiZ2b2lkIDA9PT1lJiYodGhpcy5fb3BhY2l0eT1cIjFcIix0aGlzLl9vcGFjaXR5V2hlbkNvdmVyZWQ9XCIwLjJcIiksdm9pZCAwIT09dCYmKHRoaXMuX29wYWNpdHk9dCksdm9pZCAwIT09ZSYmKHRoaXMuX29wYWNpdHlXaGVuQ292ZXJlZD1lKSx0aGlzLl9tYXAmJnRoaXMuX3VwZGF0ZU9wYWNpdHkoITApLHRoaXN9fWNvbnN0IEdzPXtwb3NpdGlvbk9wdGlvbnM6e2VuYWJsZUhpZ2hBY2N1cmFjeTohMSxtYXhpbXVtQWdlOjAsdGltZW91dDo2ZTN9LGZpdEJvdW5kc09wdGlvbnM6e21heFpvb206MTV9LHRyYWNrVXNlckxvY2F0aW9uOiExLHNob3dBY2N1cmFjeUNpcmNsZTohMCxzaG93VXNlckxvY2F0aW9uOiEwfTtsZXQgSHM9MCxXcz0hMTtjb25zdCAkcz17bWF4V2lkdGg6MTAwLHVuaXQ6XCJtZXRyaWNcIn07ZnVuY3Rpb24gWHModCxlLGkpe2NvbnN0IGE9aSYmaS5tYXhXaWR0aHx8MTAwLHM9dC5fY29udGFpbmVyLmNsaWVudEhlaWdodC8yLG89dC51bnByb2plY3QoWzAsc10pLHI9dC51bnByb2plY3QoW2Esc10pLG49by5kaXN0YW5jZVRvKHIpO2lmKGkmJlwiaW1wZXJpYWxcIj09PWkudW5pdCl7Y29uc3QgaT0zLjI4MDgqbjtpPjUyODA/S3MoZSxhLGkvNTI4MCx0Ll9nZXRVSVN0cmluZyhcIlNjYWxlQ29udHJvbC5NaWxlc1wiKSk6S3MoZSxhLGksdC5fZ2V0VUlTdHJpbmcoXCJTY2FsZUNvbnRyb2wuRmVldFwiKSk7fWVsc2UgaSYmXCJuYXV0aWNhbFwiPT09aS51bml0P0tzKGUsYSxuLzE4NTIsdC5fZ2V0VUlTdHJpbmcoXCJTY2FsZUNvbnRyb2wuTmF1dGljYWxNaWxlc1wiKSk6bj49MWUzP0tzKGUsYSxuLzFlMyx0Ll9nZXRVSVN0cmluZyhcIlNjYWxlQ29udHJvbC5LaWxvbWV0ZXJzXCIpKTpLcyhlLGEsbix0Ll9nZXRVSVN0cmluZyhcIlNjYWxlQ29udHJvbC5NZXRlcnNcIikpO31mdW5jdGlvbiBLcyh0LGUsaSxhKXtjb25zdCBzPWZ1bmN0aW9uKHQpe2NvbnN0IGU9TWF0aC5wb3coMTAsYCR7TWF0aC5mbG9vcih0KX1gLmxlbmd0aC0xKTtsZXQgaT10L2U7cmV0dXJuIGk9aT49MTA/MTA6aT49NT81Omk+PTM/MzppPj0yPzI6aT49MT8xOmZ1bmN0aW9uKHQpe2NvbnN0IGU9TWF0aC5wb3coMTAsTWF0aC5jZWlsKC1NYXRoLmxvZyh0KS9NYXRoLkxOMTApKTtyZXR1cm4gTWF0aC5yb3VuZCh0KmUpL2V9KGkpLGUqaX0oaSk7dC5zdHlsZS53aWR0aD1lKihzL2kpK1wicHhcIix0LmlubmVySFRNTD1gJHtzfSZuYnNwOyR7YX1gO31jb25zdCBKcz17Y2xvc2VCdXR0b246ITAsY2xvc2VPbkNsaWNrOiEwLGZvY3VzQWZ0ZXJPcGVuOiEwLGNsYXNzTmFtZTpcIlwiLG1heFdpZHRoOlwiMjQwcHhcIixzdWJwaXhlbFBvc2l0aW9uaW5nOiExfSxZcz1bXCJhW2hyZWZdXCIsXCJbdGFiaW5kZXhdOm5vdChbdGFiaW5kZXg9Jy0xJ10pXCIsXCJbY29udGVudGVkaXRhYmxlXTpub3QoW2NvbnRlbnRlZGl0YWJsZT0nZmFsc2UnXSlcIixcImJ1dHRvbjpub3QoW2Rpc2FibGVkXSlcIixcImlucHV0Om5vdChbZGlzYWJsZWRdKVwiLFwic2VsZWN0Om5vdChbZGlzYWJsZWRdKVwiLFwidGV4dGFyZWE6bm90KFtkaXNhYmxlZF0pXCJdLmpvaW4oXCIsIFwiKTtmdW5jdGlvbiBRcyh0KXtpZih0KXtpZihcIm51bWJlclwiPT10eXBlb2YgdCl7Y29uc3QgaT1NYXRoLnJvdW5kKE1hdGguYWJzKHQpL01hdGguU1FSVDIpO3JldHVybiB7Y2VudGVyOm5ldyBlLlAoMCwwKSx0b3A6bmV3IGUuUCgwLHQpLFwidG9wLWxlZnRcIjpuZXcgZS5QKGksaSksXCJ0b3AtcmlnaHRcIjpuZXcgZS5QKC1pLGkpLGJvdHRvbTpuZXcgZS5QKDAsLXQpLFwiYm90dG9tLWxlZnRcIjpuZXcgZS5QKGksLWkpLFwiYm90dG9tLXJpZ2h0XCI6bmV3IGUuUCgtaSwtaSksbGVmdDpuZXcgZS5QKHQsMCkscmlnaHQ6bmV3IGUuUCgtdCwwKX19aWYodCBpbnN0YW5jZW9mIGUuUHx8QXJyYXkuaXNBcnJheSh0KSl7Y29uc3QgaT1lLlAuY29udmVydCh0KTtyZXR1cm4ge2NlbnRlcjppLHRvcDppLFwidG9wLWxlZnRcIjppLFwidG9wLXJpZ2h0XCI6aSxib3R0b206aSxcImJvdHRvbS1sZWZ0XCI6aSxcImJvdHRvbS1yaWdodFwiOmksbGVmdDppLHJpZ2h0Oml9fXJldHVybiB7Y2VudGVyOmUuUC5jb252ZXJ0KHQuY2VudGVyfHxbMCwwXSksdG9wOmUuUC5jb252ZXJ0KHQudG9wfHxbMCwwXSksXCJ0b3AtbGVmdFwiOmUuUC5jb252ZXJ0KHRbXCJ0b3AtbGVmdFwiXXx8WzAsMF0pLFwidG9wLXJpZ2h0XCI6ZS5QLmNvbnZlcnQodFtcInRvcC1yaWdodFwiXXx8WzAsMF0pLGJvdHRvbTplLlAuY29udmVydCh0LmJvdHRvbXx8WzAsMF0pLFwiYm90dG9tLWxlZnRcIjplLlAuY29udmVydCh0W1wiYm90dG9tLWxlZnRcIl18fFswLDBdKSxcImJvdHRvbS1yaWdodFwiOmUuUC5jb252ZXJ0KHRbXCJib3R0b20tcmlnaHRcIl18fFswLDBdKSxsZWZ0OmUuUC5jb252ZXJ0KHQubGVmdHx8WzAsMF0pLHJpZ2h0OmUuUC5jb252ZXJ0KHQucmlnaHR8fFswLDBdKX19cmV0dXJuIFFzKG5ldyBlLlAoMCwwKSl9Y29uc3QgdG89aTt0LkFKQVhFcnJvcj1lLmJoLHQuRXZlbnRlZD1lLkUsdC5MbmdMYXQ9ZS5OLHQuTWVyY2F0b3JDb29yZGluYXRlPWUuWix0LlBvaW50PWUuUCx0LmFkZFByb3RvY29sPWUuYmksdC5jb25maWc9ZS5hLHQucmVtb3ZlUHJvdG9jb2w9ZS5iaix0LkF0dHJpYnV0aW9uQ29udHJvbD1Fcyx0LkJveFpvb21IYW5kbGVyPVVhLHQuQ2FudmFzU291cmNlPWV0LHQuQ29vcGVyYXRpdmVHZXN0dXJlc0hhbmRsZXI9dnMsdC5Eb3VibGVDbGlja1pvb21IYW5kbGVyPWRzLHQuRHJhZ1BhbkhhbmRsZXI9bXMsdC5EcmFnUm90YXRlSGFuZGxlcj1mcyx0LkVkZ2VJbnNldHM9YmEsdC5GdWxsc2NyZWVuQ29udHJvbD1jbGFzcyBleHRlbmRzIGUuRXtjb25zdHJ1Y3Rvcih0PXt9KXtzdXBlcigpLHRoaXMuX29uRnVsbHNjcmVlbkNoYW5nZT0oKT0+e3ZhciB0O2xldCBlPXdpbmRvdy5kb2N1bWVudC5mdWxsc2NyZWVuRWxlbWVudHx8d2luZG93LmRvY3VtZW50Lm1vekZ1bGxTY3JlZW5FbGVtZW50fHx3aW5kb3cuZG9jdW1lbnQud2Via2l0RnVsbHNjcmVlbkVsZW1lbnR8fHdpbmRvdy5kb2N1bWVudC5tc0Z1bGxzY3JlZW5FbGVtZW50O2Zvcig7bnVsbD09PSh0PW51bGw9PWU/dm9pZCAwOmUuc2hhZG93Um9vdCl8fHZvaWQgMD09PXQ/dm9pZCAwOnQuZnVsbHNjcmVlbkVsZW1lbnQ7KWU9ZS5zaGFkb3dSb290LmZ1bGxzY3JlZW5FbGVtZW50O2U9PT10aGlzLl9jb250YWluZXIhPT10aGlzLl9mdWxsc2NyZWVuJiZ0aGlzLl9oYW5kbGVGdWxsc2NyZWVuQ2hhbmdlKCk7fSx0aGlzLl9vbkNsaWNrRnVsbHNjcmVlbj0oKT0+e3RoaXMuX2lzRnVsbHNjcmVlbigpP3RoaXMuX2V4aXRGdWxsc2NyZWVuKCk6dGhpcy5fcmVxdWVzdEZ1bGxzY3JlZW4oKTt9LHRoaXMuX2Z1bGxzY3JlZW49ITEsdCYmdC5jb250YWluZXImJih0LmNvbnRhaW5lciBpbnN0YW5jZW9mIEhUTUxFbGVtZW50P3RoaXMuX2NvbnRhaW5lcj10LmNvbnRhaW5lcjplLncoXCJGdWxsIHNjcmVlbiBjb250cm9sICdjb250YWluZXInIG11c3QgYmUgYSBET00gZWxlbWVudC5cIikpLFwib25mdWxsc2NyZWVuY2hhbmdlXCJpbiBkb2N1bWVudD90aGlzLl9mdWxsc2NyZWVuY2hhbmdlPVwiZnVsbHNjcmVlbmNoYW5nZVwiOlwib25tb3pmdWxsc2NyZWVuY2hhbmdlXCJpbiBkb2N1bWVudD90aGlzLl9mdWxsc2NyZWVuY2hhbmdlPVwibW96ZnVsbHNjcmVlbmNoYW5nZVwiOlwib253ZWJraXRmdWxsc2NyZWVuY2hhbmdlXCJpbiBkb2N1bWVudD90aGlzLl9mdWxsc2NyZWVuY2hhbmdlPVwid2Via2l0ZnVsbHNjcmVlbmNoYW5nZVwiOlwib25tc2Z1bGxzY3JlZW5jaGFuZ2VcImluIGRvY3VtZW50JiYodGhpcy5fZnVsbHNjcmVlbmNoYW5nZT1cIk1TRnVsbHNjcmVlbkNoYW5nZVwiKTt9b25BZGQodCl7cmV0dXJuIHRoaXMuX21hcD10LHRoaXMuX2NvbnRhaW5lcnx8KHRoaXMuX2NvbnRhaW5lcj10aGlzLl9tYXAuZ2V0Q29udGFpbmVyKCkpLHRoaXMuX2NvbnRyb2xDb250YWluZXI9ci5jcmVhdGUoXCJkaXZcIixcIm1hcGxpYnJlZ2wtY3RybCBtYXBsaWJyZWdsLWN0cmwtZ3JvdXBcIiksdGhpcy5fc2V0dXBVSSgpLHRoaXMuX2NvbnRyb2xDb250YWluZXJ9b25SZW1vdmUoKXtyLnJlbW92ZSh0aGlzLl9jb250cm9sQ29udGFpbmVyKSx0aGlzLl9tYXA9bnVsbCx3aW5kb3cuZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcih0aGlzLl9mdWxsc2NyZWVuY2hhbmdlLHRoaXMuX29uRnVsbHNjcmVlbkNoYW5nZSk7fV9zZXR1cFVJKCl7Y29uc3QgdD10aGlzLl9mdWxsc2NyZWVuQnV0dG9uPXIuY3JlYXRlKFwiYnV0dG9uXCIsXCJtYXBsaWJyZWdsLWN0cmwtZnVsbHNjcmVlblwiLHRoaXMuX2NvbnRyb2xDb250YWluZXIpO3IuY3JlYXRlKFwic3BhblwiLFwibWFwbGlicmVnbC1jdHJsLWljb25cIix0KS5zZXRBdHRyaWJ1dGUoXCJhcmlhLWhpZGRlblwiLFwidHJ1ZVwiKSx0LnR5cGU9XCJidXR0b25cIix0aGlzLl91cGRhdGVUaXRsZSgpLHRoaXMuX2Z1bGxzY3JlZW5CdXR0b24uYWRkRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsdGhpcy5fb25DbGlja0Z1bGxzY3JlZW4pLHdpbmRvdy5kb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKHRoaXMuX2Z1bGxzY3JlZW5jaGFuZ2UsdGhpcy5fb25GdWxsc2NyZWVuQ2hhbmdlKTt9X3VwZGF0ZVRpdGxlKCl7Y29uc3QgdD10aGlzLl9nZXRUaXRsZSgpO3RoaXMuX2Z1bGxzY3JlZW5CdXR0b24uc2V0QXR0cmlidXRlKFwiYXJpYS1sYWJlbFwiLHQpLHRoaXMuX2Z1bGxzY3JlZW5CdXR0b24udGl0bGU9dDt9X2dldFRpdGxlKCl7cmV0dXJuIHRoaXMuX21hcC5fZ2V0VUlTdHJpbmcodGhpcy5faXNGdWxsc2NyZWVuKCk/XCJGdWxsc2NyZWVuQ29udHJvbC5FeGl0XCI6XCJGdWxsc2NyZWVuQ29udHJvbC5FbnRlclwiKX1faXNGdWxsc2NyZWVuKCl7cmV0dXJuIHRoaXMuX2Z1bGxzY3JlZW59X2hhbmRsZUZ1bGxzY3JlZW5DaGFuZ2UoKXt0aGlzLl9mdWxsc2NyZWVuPSF0aGlzLl9mdWxsc2NyZWVuLHRoaXMuX2Z1bGxzY3JlZW5CdXR0b24uY2xhc3NMaXN0LnRvZ2dsZShcIm1hcGxpYnJlZ2wtY3RybC1zaHJpbmtcIiksdGhpcy5fZnVsbHNjcmVlbkJ1dHRvbi5jbGFzc0xpc3QudG9nZ2xlKFwibWFwbGlicmVnbC1jdHJsLWZ1bGxzY3JlZW5cIiksdGhpcy5fdXBkYXRlVGl0bGUoKSx0aGlzLl9mdWxsc2NyZWVuPyh0aGlzLmZpcmUobmV3IGUuayhcImZ1bGxzY3JlZW5zdGFydFwiKSksdGhpcy5fcHJldkNvb3BlcmF0aXZlR2VzdHVyZXNFbmFibGVkPXRoaXMuX21hcC5jb29wZXJhdGl2ZUdlc3R1cmVzLmlzRW5hYmxlZCgpLHRoaXMuX21hcC5jb29wZXJhdGl2ZUdlc3R1cmVzLmRpc2FibGUoKSk6KHRoaXMuZmlyZShuZXcgZS5rKFwiZnVsbHNjcmVlbmVuZFwiKSksdGhpcy5fcHJldkNvb3BlcmF0aXZlR2VzdHVyZXNFbmFibGVkJiZ0aGlzLl9tYXAuY29vcGVyYXRpdmVHZXN0dXJlcy5lbmFibGUoKSk7fV9leGl0RnVsbHNjcmVlbigpe3dpbmRvdy5kb2N1bWVudC5leGl0RnVsbHNjcmVlbj93aW5kb3cuZG9jdW1lbnQuZXhpdEZ1bGxzY3JlZW4oKTp3aW5kb3cuZG9jdW1lbnQubW96Q2FuY2VsRnVsbFNjcmVlbj93aW5kb3cuZG9jdW1lbnQubW96Q2FuY2VsRnVsbFNjcmVlbigpOndpbmRvdy5kb2N1bWVudC5tc0V4aXRGdWxsc2NyZWVuP3dpbmRvdy5kb2N1bWVudC5tc0V4aXRGdWxsc2NyZWVuKCk6d2luZG93LmRvY3VtZW50LndlYmtpdENhbmNlbEZ1bGxTY3JlZW4/d2luZG93LmRvY3VtZW50LndlYmtpdENhbmNlbEZ1bGxTY3JlZW4oKTp0aGlzLl90b2dnbGVQc2V1ZG9GdWxsU2NyZWVuKCk7fV9yZXF1ZXN0RnVsbHNjcmVlbigpe3RoaXMuX2NvbnRhaW5lci5yZXF1ZXN0RnVsbHNjcmVlbj90aGlzLl9jb250YWluZXIucmVxdWVzdEZ1bGxzY3JlZW4oKTp0aGlzLl9jb250YWluZXIubW96UmVxdWVzdEZ1bGxTY3JlZW4/dGhpcy5fY29udGFpbmVyLm1velJlcXVlc3RGdWxsU2NyZWVuKCk6dGhpcy5fY29udGFpbmVyLm1zUmVxdWVzdEZ1bGxzY3JlZW4/dGhpcy5fY29udGFpbmVyLm1zUmVxdWVzdEZ1bGxzY3JlZW4oKTp0aGlzLl9jb250YWluZXIud2Via2l0UmVxdWVzdEZ1bGxzY3JlZW4/dGhpcy5fY29udGFpbmVyLndlYmtpdFJlcXVlc3RGdWxsc2NyZWVuKCk6dGhpcy5fdG9nZ2xlUHNldWRvRnVsbFNjcmVlbigpO31fdG9nZ2xlUHNldWRvRnVsbFNjcmVlbigpe3RoaXMuX2NvbnRhaW5lci5jbGFzc0xpc3QudG9nZ2xlKFwibWFwbGlicmVnbC1wc2V1ZG8tZnVsbHNjcmVlblwiKSx0aGlzLl9oYW5kbGVGdWxsc2NyZWVuQ2hhbmdlKCksdGhpcy5fbWFwLnJlc2l6ZSgpO319LHQuR2VvSlNPTlNvdXJjZT1KLHQuR2VvbG9jYXRlQ29udHJvbD1jbGFzcyBleHRlbmRzIGUuRXtjb25zdHJ1Y3Rvcih0KXtzdXBlcigpLHRoaXMuX29uU3VjY2Vzcz10PT57aWYodGhpcy5fbWFwKXtpZih0aGlzLl9pc091dE9mTWFwTWF4Qm91bmRzKHQpKXJldHVybiB0aGlzLl9zZXRFcnJvclN0YXRlKCksdGhpcy5maXJlKG5ldyBlLmsoXCJvdXRvZm1heGJvdW5kc1wiLHQpKSx0aGlzLl91cGRhdGVNYXJrZXIoKSx2b2lkIHRoaXMuX2ZpbmlzaCgpO2lmKHRoaXMub3B0aW9ucy50cmFja1VzZXJMb2NhdGlvbilzd2l0Y2godGhpcy5fbGFzdEtub3duUG9zaXRpb249dCx0aGlzLl93YXRjaFN0YXRlKXtjYXNlXCJXQUlUSU5HX0FDVElWRVwiOmNhc2VcIkFDVElWRV9MT0NLXCI6Y2FzZVwiQUNUSVZFX0VSUk9SXCI6dGhpcy5fd2F0Y2hTdGF0ZT1cIkFDVElWRV9MT0NLXCIsdGhpcy5fZ2VvbG9jYXRlQnV0dG9uLmNsYXNzTGlzdC5yZW1vdmUoXCJtYXBsaWJyZWdsLWN0cmwtZ2VvbG9jYXRlLXdhaXRpbmdcIiksdGhpcy5fZ2VvbG9jYXRlQnV0dG9uLmNsYXNzTGlzdC5yZW1vdmUoXCJtYXBsaWJyZWdsLWN0cmwtZ2VvbG9jYXRlLWFjdGl2ZS1lcnJvclwiKSx0aGlzLl9nZW9sb2NhdGVCdXR0b24uY2xhc3NMaXN0LmFkZChcIm1hcGxpYnJlZ2wtY3RybC1nZW9sb2NhdGUtYWN0aXZlXCIpO2JyZWFrO2Nhc2VcIkJBQ0tHUk9VTkRcIjpjYXNlXCJCQUNLR1JPVU5EX0VSUk9SXCI6dGhpcy5fd2F0Y2hTdGF0ZT1cIkJBQ0tHUk9VTkRcIix0aGlzLl9nZW9sb2NhdGVCdXR0b24uY2xhc3NMaXN0LnJlbW92ZShcIm1hcGxpYnJlZ2wtY3RybC1nZW9sb2NhdGUtd2FpdGluZ1wiKSx0aGlzLl9nZW9sb2NhdGVCdXR0b24uY2xhc3NMaXN0LnJlbW92ZShcIm1hcGxpYnJlZ2wtY3RybC1nZW9sb2NhdGUtYmFja2dyb3VuZC1lcnJvclwiKSx0aGlzLl9nZW9sb2NhdGVCdXR0b24uY2xhc3NMaXN0LmFkZChcIm1hcGxpYnJlZ2wtY3RybC1nZW9sb2NhdGUtYmFja2dyb3VuZFwiKTticmVhaztkZWZhdWx0OnRocm93IG5ldyBFcnJvcihgVW5leHBlY3RlZCB3YXRjaFN0YXRlICR7dGhpcy5fd2F0Y2hTdGF0ZX1gKX10aGlzLm9wdGlvbnMuc2hvd1VzZXJMb2NhdGlvbiYmXCJPRkZcIiE9PXRoaXMuX3dhdGNoU3RhdGUmJnRoaXMuX3VwZGF0ZU1hcmtlcih0KSx0aGlzLm9wdGlvbnMudHJhY2tVc2VyTG9jYXRpb24mJlwiQUNUSVZFX0xPQ0tcIiE9PXRoaXMuX3dhdGNoU3RhdGV8fHRoaXMuX3VwZGF0ZUNhbWVyYSh0KSx0aGlzLm9wdGlvbnMuc2hvd1VzZXJMb2NhdGlvbiYmdGhpcy5fZG90RWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKFwibWFwbGlicmVnbC11c2VyLWxvY2F0aW9uLWRvdC1zdGFsZVwiKSx0aGlzLmZpcmUobmV3IGUuayhcImdlb2xvY2F0ZVwiLHQpKSx0aGlzLl9maW5pc2goKTt9fSx0aGlzLl91cGRhdGVDYW1lcmE9dD0+e2NvbnN0IGk9bmV3IGUuTih0LmNvb3Jkcy5sb25naXR1ZGUsdC5jb29yZHMubGF0aXR1ZGUpLGE9dC5jb29yZHMuYWNjdXJhY3kscz10aGlzLl9tYXAuZ2V0QmVhcmluZygpLG89ZS5lKHtiZWFyaW5nOnN9LHRoaXMub3B0aW9ucy5maXRCb3VuZHNPcHRpb25zKSxyPUguZnJvbUxuZ0xhdChpLGEpO3RoaXMuX21hcC5maXRCb3VuZHMocixvLHtnZW9sb2NhdGVTb3VyY2U6ITB9KTt9LHRoaXMuX3VwZGF0ZU1hcmtlcj10PT57aWYodCl7Y29uc3QgaT1uZXcgZS5OKHQuY29vcmRzLmxvbmdpdHVkZSx0LmNvb3Jkcy5sYXRpdHVkZSk7dGhpcy5fYWNjdXJhY3lDaXJjbGVNYXJrZXIuc2V0TG5nTGF0KGkpLmFkZFRvKHRoaXMuX21hcCksdGhpcy5fdXNlckxvY2F0aW9uRG90TWFya2VyLnNldExuZ0xhdChpKS5hZGRUbyh0aGlzLl9tYXApLHRoaXMuX2FjY3VyYWN5PXQuY29vcmRzLmFjY3VyYWN5LHRoaXMub3B0aW9ucy5zaG93VXNlckxvY2F0aW9uJiZ0aGlzLm9wdGlvbnMuc2hvd0FjY3VyYWN5Q2lyY2xlJiZ0aGlzLl91cGRhdGVDaXJjbGVSYWRpdXMoKTt9ZWxzZSB0aGlzLl91c2VyTG9jYXRpb25Eb3RNYXJrZXIucmVtb3ZlKCksdGhpcy5fYWNjdXJhY3lDaXJjbGVNYXJrZXIucmVtb3ZlKCk7fSx0aGlzLl9vblpvb209KCk9Pnt0aGlzLm9wdGlvbnMuc2hvd1VzZXJMb2NhdGlvbiYmdGhpcy5vcHRpb25zLnNob3dBY2N1cmFjeUNpcmNsZSYmdGhpcy5fdXBkYXRlQ2lyY2xlUmFkaXVzKCk7fSx0aGlzLl9vbkVycm9yPXQ9PntpZih0aGlzLl9tYXApe2lmKHRoaXMub3B0aW9ucy50cmFja1VzZXJMb2NhdGlvbilpZigxPT09dC5jb2RlKXt0aGlzLl93YXRjaFN0YXRlPVwiT0ZGXCIsdGhpcy5fZ2VvbG9jYXRlQnV0dG9uLmNsYXNzTGlzdC5yZW1vdmUoXCJtYXBsaWJyZWdsLWN0cmwtZ2VvbG9jYXRlLXdhaXRpbmdcIiksdGhpcy5fZ2VvbG9jYXRlQnV0dG9uLmNsYXNzTGlzdC5yZW1vdmUoXCJtYXBsaWJyZWdsLWN0cmwtZ2VvbG9jYXRlLWFjdGl2ZVwiKSx0aGlzLl9nZW9sb2NhdGVCdXR0b24uY2xhc3NMaXN0LnJlbW92ZShcIm1hcGxpYnJlZ2wtY3RybC1nZW9sb2NhdGUtYWN0aXZlLWVycm9yXCIpLHRoaXMuX2dlb2xvY2F0ZUJ1dHRvbi5jbGFzc0xpc3QucmVtb3ZlKFwibWFwbGlicmVnbC1jdHJsLWdlb2xvY2F0ZS1iYWNrZ3JvdW5kXCIpLHRoaXMuX2dlb2xvY2F0ZUJ1dHRvbi5jbGFzc0xpc3QucmVtb3ZlKFwibWFwbGlicmVnbC1jdHJsLWdlb2xvY2F0ZS1iYWNrZ3JvdW5kLWVycm9yXCIpLHRoaXMuX2dlb2xvY2F0ZUJ1dHRvbi5kaXNhYmxlZD0hMDtjb25zdCB0PXRoaXMuX21hcC5fZ2V0VUlTdHJpbmcoXCJHZW9sb2NhdGVDb250cm9sLkxvY2F0aW9uTm90QXZhaWxhYmxlXCIpO3RoaXMuX2dlb2xvY2F0ZUJ1dHRvbi50aXRsZT10LHRoaXMuX2dlb2xvY2F0ZUJ1dHRvbi5zZXRBdHRyaWJ1dGUoXCJhcmlhLWxhYmVsXCIsdCksdm9pZCAwIT09dGhpcy5fZ2VvbG9jYXRpb25XYXRjaElEJiZ0aGlzLl9jbGVhcldhdGNoKCk7fWVsc2Uge2lmKDM9PT10LmNvZGUmJldzKXJldHVybjt0aGlzLl9zZXRFcnJvclN0YXRlKCk7fVwiT0ZGXCIhPT10aGlzLl93YXRjaFN0YXRlJiZ0aGlzLm9wdGlvbnMuc2hvd1VzZXJMb2NhdGlvbiYmdGhpcy5fZG90RWxlbWVudC5jbGFzc0xpc3QuYWRkKFwibWFwbGlicmVnbC11c2VyLWxvY2F0aW9uLWRvdC1zdGFsZVwiKSx0aGlzLmZpcmUobmV3IGUuayhcImVycm9yXCIsdCkpLHRoaXMuX2ZpbmlzaCgpO319LHRoaXMuX2ZpbmlzaD0oKT0+e3RoaXMuX3RpbWVvdXRJZCYmY2xlYXJUaW1lb3V0KHRoaXMuX3RpbWVvdXRJZCksdGhpcy5fdGltZW91dElkPXZvaWQgMDt9LHRoaXMuX3NldHVwVUk9KCk9Pnt0aGlzLl9tYXAmJih0aGlzLl9jb250YWluZXIuYWRkRXZlbnRMaXN0ZW5lcihcImNvbnRleHRtZW51XCIsKHQ9PnQucHJldmVudERlZmF1bHQoKSkpLHRoaXMuX2dlb2xvY2F0ZUJ1dHRvbj1yLmNyZWF0ZShcImJ1dHRvblwiLFwibWFwbGlicmVnbC1jdHJsLWdlb2xvY2F0ZVwiLHRoaXMuX2NvbnRhaW5lciksci5jcmVhdGUoXCJzcGFuXCIsXCJtYXBsaWJyZWdsLWN0cmwtaWNvblwiLHRoaXMuX2dlb2xvY2F0ZUJ1dHRvbikuc2V0QXR0cmlidXRlKFwiYXJpYS1oaWRkZW5cIixcInRydWVcIiksdGhpcy5fZ2VvbG9jYXRlQnV0dG9uLnR5cGU9XCJidXR0b25cIix0aGlzLl9nZW9sb2NhdGVCdXR0b24uZGlzYWJsZWQ9ITApO30sdGhpcy5fZmluaXNoU2V0dXBVST10PT57aWYodGhpcy5fbWFwKXtpZighMT09PXQpe2UudyhcIkdlb2xvY2F0aW9uIHN1cHBvcnQgaXMgbm90IGF2YWlsYWJsZSBzbyB0aGUgR2VvbG9jYXRlQ29udHJvbCB3aWxsIGJlIGRpc2FibGVkLlwiKTtjb25zdCB0PXRoaXMuX21hcC5fZ2V0VUlTdHJpbmcoXCJHZW9sb2NhdGVDb250cm9sLkxvY2F0aW9uTm90QXZhaWxhYmxlXCIpO3RoaXMuX2dlb2xvY2F0ZUJ1dHRvbi5kaXNhYmxlZD0hMCx0aGlzLl9nZW9sb2NhdGVCdXR0b24udGl0bGU9dCx0aGlzLl9nZW9sb2NhdGVCdXR0b24uc2V0QXR0cmlidXRlKFwiYXJpYS1sYWJlbFwiLHQpO31lbHNlIHtjb25zdCB0PXRoaXMuX21hcC5fZ2V0VUlTdHJpbmcoXCJHZW9sb2NhdGVDb250cm9sLkZpbmRNeUxvY2F0aW9uXCIpO3RoaXMuX2dlb2xvY2F0ZUJ1dHRvbi5kaXNhYmxlZD0hMSx0aGlzLl9nZW9sb2NhdGVCdXR0b24udGl0bGU9dCx0aGlzLl9nZW9sb2NhdGVCdXR0b24uc2V0QXR0cmlidXRlKFwiYXJpYS1sYWJlbFwiLHQpO310aGlzLm9wdGlvbnMudHJhY2tVc2VyTG9jYXRpb24mJih0aGlzLl9nZW9sb2NhdGVCdXR0b24uc2V0QXR0cmlidXRlKFwiYXJpYS1wcmVzc2VkXCIsXCJmYWxzZVwiKSx0aGlzLl93YXRjaFN0YXRlPVwiT0ZGXCIpLHRoaXMub3B0aW9ucy5zaG93VXNlckxvY2F0aW9uJiYodGhpcy5fZG90RWxlbWVudD1yLmNyZWF0ZShcImRpdlwiLFwibWFwbGlicmVnbC11c2VyLWxvY2F0aW9uLWRvdFwiKSx0aGlzLl91c2VyTG9jYXRpb25Eb3RNYXJrZXI9bmV3IFZzKHtlbGVtZW50OnRoaXMuX2RvdEVsZW1lbnR9KSx0aGlzLl9jaXJjbGVFbGVtZW50PXIuY3JlYXRlKFwiZGl2XCIsXCJtYXBsaWJyZWdsLXVzZXItbG9jYXRpb24tYWNjdXJhY3ktY2lyY2xlXCIpLHRoaXMuX2FjY3VyYWN5Q2lyY2xlTWFya2VyPW5ldyBWcyh7ZWxlbWVudDp0aGlzLl9jaXJjbGVFbGVtZW50LHBpdGNoQWxpZ25tZW50OlwibWFwXCJ9KSx0aGlzLm9wdGlvbnMudHJhY2tVc2VyTG9jYXRpb24mJih0aGlzLl93YXRjaFN0YXRlPVwiT0ZGXCIpLHRoaXMuX21hcC5vbihcInpvb21cIix0aGlzLl9vblpvb20pKSx0aGlzLl9nZW9sb2NhdGVCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsKCgpPT50aGlzLnRyaWdnZXIoKSkpLHRoaXMuX3NldHVwPSEwLHRoaXMub3B0aW9ucy50cmFja1VzZXJMb2NhdGlvbiYmdGhpcy5fbWFwLm9uKFwibW92ZXN0YXJ0XCIsKHQ9Pnt0Lmdlb2xvY2F0ZVNvdXJjZXx8XCJBQ1RJVkVfTE9DS1wiIT09dGhpcy5fd2F0Y2hTdGF0ZXx8dC5vcmlnaW5hbEV2ZW50JiZcInJlc2l6ZVwiPT09dC5vcmlnaW5hbEV2ZW50LnR5cGV8fCh0aGlzLl93YXRjaFN0YXRlPVwiQkFDS0dST1VORFwiLHRoaXMuX2dlb2xvY2F0ZUJ1dHRvbi5jbGFzc0xpc3QuYWRkKFwibWFwbGlicmVnbC1jdHJsLWdlb2xvY2F0ZS1iYWNrZ3JvdW5kXCIpLHRoaXMuX2dlb2xvY2F0ZUJ1dHRvbi5jbGFzc0xpc3QucmVtb3ZlKFwibWFwbGlicmVnbC1jdHJsLWdlb2xvY2F0ZS1hY3RpdmVcIiksdGhpcy5maXJlKG5ldyBlLmsoXCJ0cmFja3VzZXJsb2NhdGlvbmVuZFwiKSksdGhpcy5maXJlKG5ldyBlLmsoXCJ1c2VybG9jYXRpb25sb3N0Zm9jdXNcIikpKTt9KSk7fX0sdGhpcy5vcHRpb25zPWUuZSh7fSxHcyx0KTt9b25BZGQodCl7cmV0dXJuIHRoaXMuX21hcD10LHRoaXMuX2NvbnRhaW5lcj1yLmNyZWF0ZShcImRpdlwiLFwibWFwbGlicmVnbC1jdHJsIG1hcGxpYnJlZ2wtY3RybC1ncm91cFwiKSx0aGlzLl9zZXR1cFVJKCksZnVuY3Rpb24oKXtyZXR1cm4gZS5fKHRoaXMsYXJndW1lbnRzLHZvaWQgMCwoZnVuY3Rpb24qKHQ9ITEpe2lmKHZvaWQgMCE9PVVzJiYhdClyZXR1cm4gVXM7aWYodm9pZCAwPT09d2luZG93Lm5hdmlnYXRvci5wZXJtaXNzaW9ucylyZXR1cm4gVXM9ISF3aW5kb3cubmF2aWdhdG9yLmdlb2xvY2F0aW9uLFVzO3RyeXtjb25zdCB0PXlpZWxkIHdpbmRvdy5uYXZpZ2F0b3IucGVybWlzc2lvbnMucXVlcnkoe25hbWU6XCJnZW9sb2NhdGlvblwifSk7VXM9XCJkZW5pZWRcIiE9PXQuc3RhdGU7fWNhdGNoKHQpe1VzPSEhd2luZG93Lm5hdmlnYXRvci5nZW9sb2NhdGlvbjt9cmV0dXJuIFVzfSkpfSgpLnRoZW4oKHQ9PnRoaXMuX2ZpbmlzaFNldHVwVUkodCkpKSx0aGlzLl9jb250YWluZXJ9b25SZW1vdmUoKXt2b2lkIDAhPT10aGlzLl9nZW9sb2NhdGlvbldhdGNoSUQmJih3aW5kb3cubmF2aWdhdG9yLmdlb2xvY2F0aW9uLmNsZWFyV2F0Y2godGhpcy5fZ2VvbG9jYXRpb25XYXRjaElEKSx0aGlzLl9nZW9sb2NhdGlvbldhdGNoSUQ9dm9pZCAwKSx0aGlzLm9wdGlvbnMuc2hvd1VzZXJMb2NhdGlvbiYmdGhpcy5fdXNlckxvY2F0aW9uRG90TWFya2VyJiZ0aGlzLl91c2VyTG9jYXRpb25Eb3RNYXJrZXIucmVtb3ZlKCksdGhpcy5vcHRpb25zLnNob3dBY2N1cmFjeUNpcmNsZSYmdGhpcy5fYWNjdXJhY3lDaXJjbGVNYXJrZXImJnRoaXMuX2FjY3VyYWN5Q2lyY2xlTWFya2VyLnJlbW92ZSgpLHIucmVtb3ZlKHRoaXMuX2NvbnRhaW5lciksdGhpcy5fbWFwLm9mZihcInpvb21cIix0aGlzLl9vblpvb20pLHRoaXMuX21hcD12b2lkIDAsSHM9MCxXcz0hMTt9X2lzT3V0T2ZNYXBNYXhCb3VuZHModCl7Y29uc3QgZT10aGlzLl9tYXAuZ2V0TWF4Qm91bmRzKCksaT10LmNvb3JkcztyZXR1cm4gZSYmKGkubG9uZ2l0dWRlPGUuZ2V0V2VzdCgpfHxpLmxvbmdpdHVkZT5lLmdldEVhc3QoKXx8aS5sYXRpdHVkZTxlLmdldFNvdXRoKCl8fGkubGF0aXR1ZGU+ZS5nZXROb3J0aCgpKX1fc2V0RXJyb3JTdGF0ZSgpe3N3aXRjaCh0aGlzLl93YXRjaFN0YXRlKXtjYXNlXCJXQUlUSU5HX0FDVElWRVwiOnRoaXMuX3dhdGNoU3RhdGU9XCJBQ1RJVkVfRVJST1JcIix0aGlzLl9nZW9sb2NhdGVCdXR0b24uY2xhc3NMaXN0LnJlbW92ZShcIm1hcGxpYnJlZ2wtY3RybC1nZW9sb2NhdGUtYWN0aXZlXCIpLHRoaXMuX2dlb2xvY2F0ZUJ1dHRvbi5jbGFzc0xpc3QuYWRkKFwibWFwbGlicmVnbC1jdHJsLWdlb2xvY2F0ZS1hY3RpdmUtZXJyb3JcIik7YnJlYWs7Y2FzZVwiQUNUSVZFX0xPQ0tcIjp0aGlzLl93YXRjaFN0YXRlPVwiQUNUSVZFX0VSUk9SXCIsdGhpcy5fZ2VvbG9jYXRlQnV0dG9uLmNsYXNzTGlzdC5yZW1vdmUoXCJtYXBsaWJyZWdsLWN0cmwtZ2VvbG9jYXRlLWFjdGl2ZVwiKSx0aGlzLl9nZW9sb2NhdGVCdXR0b24uY2xhc3NMaXN0LmFkZChcIm1hcGxpYnJlZ2wtY3RybC1nZW9sb2NhdGUtYWN0aXZlLWVycm9yXCIpLHRoaXMuX2dlb2xvY2F0ZUJ1dHRvbi5jbGFzc0xpc3QuYWRkKFwibWFwbGlicmVnbC1jdHJsLWdlb2xvY2F0ZS13YWl0aW5nXCIpO2JyZWFrO2Nhc2VcIkJBQ0tHUk9VTkRcIjp0aGlzLl93YXRjaFN0YXRlPVwiQkFDS0dST1VORF9FUlJPUlwiLHRoaXMuX2dlb2xvY2F0ZUJ1dHRvbi5jbGFzc0xpc3QucmVtb3ZlKFwibWFwbGlicmVnbC1jdHJsLWdlb2xvY2F0ZS1iYWNrZ3JvdW5kXCIpLHRoaXMuX2dlb2xvY2F0ZUJ1dHRvbi5jbGFzc0xpc3QuYWRkKFwibWFwbGlicmVnbC1jdHJsLWdlb2xvY2F0ZS1iYWNrZ3JvdW5kLWVycm9yXCIpLHRoaXMuX2dlb2xvY2F0ZUJ1dHRvbi5jbGFzc0xpc3QuYWRkKFwibWFwbGlicmVnbC1jdHJsLWdlb2xvY2F0ZS13YWl0aW5nXCIpO2JyZWFrO2Nhc2VcIkFDVElWRV9FUlJPUlwiOmJyZWFrO2RlZmF1bHQ6dGhyb3cgbmV3IEVycm9yKGBVbmV4cGVjdGVkIHdhdGNoU3RhdGUgJHt0aGlzLl93YXRjaFN0YXRlfWApfX1fdXBkYXRlQ2lyY2xlUmFkaXVzKCl7Y29uc3QgdD10aGlzLl9tYXAuZ2V0Qm91bmRzKCksZT10LmdldFNvdXRoRWFzdCgpLGk9dC5nZXROb3J0aEVhc3QoKSxhPWUuZGlzdGFuY2VUbyhpKSxzPU1hdGguY2VpbCh0aGlzLl9hY2N1cmFjeS8oYS90aGlzLl9tYXAuX2NvbnRhaW5lci5jbGllbnRIZWlnaHQpKjIpO3RoaXMuX2NpcmNsZUVsZW1lbnQuc3R5bGUud2lkdGg9YCR7c31weGAsdGhpcy5fY2lyY2xlRWxlbWVudC5zdHlsZS5oZWlnaHQ9YCR7c31weGA7fXRyaWdnZXIoKXtpZighdGhpcy5fc2V0dXApcmV0dXJuIGUudyhcIkdlb2xvY2F0ZSBjb250cm9sIHRyaWdnZXJlZCBiZWZvcmUgYWRkZWQgdG8gYSBtYXBcIiksITE7aWYodGhpcy5vcHRpb25zLnRyYWNrVXNlckxvY2F0aW9uKXtzd2l0Y2godGhpcy5fd2F0Y2hTdGF0ZSl7Y2FzZVwiT0ZGXCI6dGhpcy5fd2F0Y2hTdGF0ZT1cIldBSVRJTkdfQUNUSVZFXCIsdGhpcy5maXJlKG5ldyBlLmsoXCJ0cmFja3VzZXJsb2NhdGlvbnN0YXJ0XCIpKTticmVhaztjYXNlXCJXQUlUSU5HX0FDVElWRVwiOmNhc2VcIkFDVElWRV9MT0NLXCI6Y2FzZVwiQUNUSVZFX0VSUk9SXCI6Y2FzZVwiQkFDS0dST1VORF9FUlJPUlwiOkhzLS0sV3M9ITEsdGhpcy5fd2F0Y2hTdGF0ZT1cIk9GRlwiLHRoaXMuX2dlb2xvY2F0ZUJ1dHRvbi5jbGFzc0xpc3QucmVtb3ZlKFwibWFwbGlicmVnbC1jdHJsLWdlb2xvY2F0ZS13YWl0aW5nXCIpLHRoaXMuX2dlb2xvY2F0ZUJ1dHRvbi5jbGFzc0xpc3QucmVtb3ZlKFwibWFwbGlicmVnbC1jdHJsLWdlb2xvY2F0ZS1hY3RpdmVcIiksdGhpcy5fZ2VvbG9jYXRlQnV0dG9uLmNsYXNzTGlzdC5yZW1vdmUoXCJtYXBsaWJyZWdsLWN0cmwtZ2VvbG9jYXRlLWFjdGl2ZS1lcnJvclwiKSx0aGlzLl9nZW9sb2NhdGVCdXR0b24uY2xhc3NMaXN0LnJlbW92ZShcIm1hcGxpYnJlZ2wtY3RybC1nZW9sb2NhdGUtYmFja2dyb3VuZFwiKSx0aGlzLl9nZW9sb2NhdGVCdXR0b24uY2xhc3NMaXN0LnJlbW92ZShcIm1hcGxpYnJlZ2wtY3RybC1nZW9sb2NhdGUtYmFja2dyb3VuZC1lcnJvclwiKSx0aGlzLmZpcmUobmV3IGUuayhcInRyYWNrdXNlcmxvY2F0aW9uZW5kXCIpKTticmVhaztjYXNlXCJCQUNLR1JPVU5EXCI6dGhpcy5fd2F0Y2hTdGF0ZT1cIkFDVElWRV9MT0NLXCIsdGhpcy5fZ2VvbG9jYXRlQnV0dG9uLmNsYXNzTGlzdC5yZW1vdmUoXCJtYXBsaWJyZWdsLWN0cmwtZ2VvbG9jYXRlLWJhY2tncm91bmRcIiksdGhpcy5fbGFzdEtub3duUG9zaXRpb24mJnRoaXMuX3VwZGF0ZUNhbWVyYSh0aGlzLl9sYXN0S25vd25Qb3NpdGlvbiksdGhpcy5maXJlKG5ldyBlLmsoXCJ0cmFja3VzZXJsb2NhdGlvbnN0YXJ0XCIpKSx0aGlzLmZpcmUobmV3IGUuayhcInVzZXJsb2NhdGlvbmZvY3VzXCIpKTticmVhaztkZWZhdWx0OnRocm93IG5ldyBFcnJvcihgVW5leHBlY3RlZCB3YXRjaFN0YXRlICR7dGhpcy5fd2F0Y2hTdGF0ZX1gKX1zd2l0Y2godGhpcy5fd2F0Y2hTdGF0ZSl7Y2FzZVwiV0FJVElOR19BQ1RJVkVcIjp0aGlzLl9nZW9sb2NhdGVCdXR0b24uY2xhc3NMaXN0LmFkZChcIm1hcGxpYnJlZ2wtY3RybC1nZW9sb2NhdGUtd2FpdGluZ1wiKSx0aGlzLl9nZW9sb2NhdGVCdXR0b24uY2xhc3NMaXN0LmFkZChcIm1hcGxpYnJlZ2wtY3RybC1nZW9sb2NhdGUtYWN0aXZlXCIpO2JyZWFrO2Nhc2VcIkFDVElWRV9MT0NLXCI6dGhpcy5fZ2VvbG9jYXRlQnV0dG9uLmNsYXNzTGlzdC5hZGQoXCJtYXBsaWJyZWdsLWN0cmwtZ2VvbG9jYXRlLWFjdGl2ZVwiKTticmVhaztjYXNlXCJPRkZcIjpicmVhaztkZWZhdWx0OnRocm93IG5ldyBFcnJvcihgVW5leHBlY3RlZCB3YXRjaFN0YXRlICR7dGhpcy5fd2F0Y2hTdGF0ZX1gKX1pZihcIk9GRlwiPT09dGhpcy5fd2F0Y2hTdGF0ZSYmdm9pZCAwIT09dGhpcy5fZ2VvbG9jYXRpb25XYXRjaElEKXRoaXMuX2NsZWFyV2F0Y2goKTtlbHNlIGlmKHZvaWQgMD09PXRoaXMuX2dlb2xvY2F0aW9uV2F0Y2hJRCl7bGV0IHQ7dGhpcy5fZ2VvbG9jYXRlQnV0dG9uLmNsYXNzTGlzdC5hZGQoXCJtYXBsaWJyZWdsLWN0cmwtZ2VvbG9jYXRlLXdhaXRpbmdcIiksdGhpcy5fZ2VvbG9jYXRlQnV0dG9uLnNldEF0dHJpYnV0ZShcImFyaWEtcHJlc3NlZFwiLFwidHJ1ZVwiKSxIcysrLEhzPjE/KHQ9e21heGltdW1BZ2U6NmU1LHRpbWVvdXQ6MH0sV3M9ITApOih0PXRoaXMub3B0aW9ucy5wb3NpdGlvbk9wdGlvbnMsV3M9ITEpLHRoaXMuX2dlb2xvY2F0aW9uV2F0Y2hJRD13aW5kb3cubmF2aWdhdG9yLmdlb2xvY2F0aW9uLndhdGNoUG9zaXRpb24odGhpcy5fb25TdWNjZXNzLHRoaXMuX29uRXJyb3IsdCk7fX1lbHNlIHdpbmRvdy5uYXZpZ2F0b3IuZ2VvbG9jYXRpb24uZ2V0Q3VycmVudFBvc2l0aW9uKHRoaXMuX29uU3VjY2Vzcyx0aGlzLl9vbkVycm9yLHRoaXMub3B0aW9ucy5wb3NpdGlvbk9wdGlvbnMpLHRoaXMuX3RpbWVvdXRJZD1zZXRUaW1lb3V0KHRoaXMuX2ZpbmlzaCwxZTQpO3JldHVybiAhMH1fY2xlYXJXYXRjaCgpe3dpbmRvdy5uYXZpZ2F0b3IuZ2VvbG9jYXRpb24uY2xlYXJXYXRjaCh0aGlzLl9nZW9sb2NhdGlvbldhdGNoSUQpLHRoaXMuX2dlb2xvY2F0aW9uV2F0Y2hJRD12b2lkIDAsdGhpcy5fZ2VvbG9jYXRlQnV0dG9uLmNsYXNzTGlzdC5yZW1vdmUoXCJtYXBsaWJyZWdsLWN0cmwtZ2VvbG9jYXRlLXdhaXRpbmdcIiksdGhpcy5fZ2VvbG9jYXRlQnV0dG9uLnNldEF0dHJpYnV0ZShcImFyaWEtcHJlc3NlZFwiLFwiZmFsc2VcIiksdGhpcy5vcHRpb25zLnNob3dVc2VyTG9jYXRpb24mJnRoaXMuX3VwZGF0ZU1hcmtlcihudWxsKTt9fSx0Lkhhc2g9RWEsdC5JbWFnZVNvdXJjZT1RLHQuS2V5Ym9hcmRIYW5kbGVyPWxzLHQuTG5nTGF0Qm91bmRzPUgsdC5Mb2dvQ29udHJvbD1Qcyx0Lk1hcD1jbGFzcyBleHRlbmRzIFRze2NvbnN0cnVjdG9yKHQpe2UuYmYubWFyayhlLmJnLmNyZWF0ZSk7Y29uc3QgaT1PYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sRnMpLHQpO2lmKG51bGwhPWkubWluWm9vbSYmbnVsbCE9aS5tYXhab29tJiZpLm1pblpvb20+aS5tYXhab29tKXRocm93IG5ldyBFcnJvcihcIm1heFpvb20gbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gbWluWm9vbVwiKTtpZihudWxsIT1pLm1pblBpdGNoJiZudWxsIT1pLm1heFBpdGNoJiZpLm1pblBpdGNoPmkubWF4UGl0Y2gpdGhyb3cgbmV3IEVycm9yKFwibWF4UGl0Y2ggbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gbWluUGl0Y2hcIik7aWYobnVsbCE9aS5taW5QaXRjaCYmaS5taW5QaXRjaDwwKXRocm93IG5ldyBFcnJvcihcIm1pblBpdGNoIG11c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDBcIik7aWYobnVsbCE9aS5tYXhQaXRjaCYmaS5tYXhQaXRjaD44NSl0aHJvdyBuZXcgRXJyb3IoXCJtYXhQaXRjaCBtdXN0IGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byA4NVwiKTtpZihzdXBlcihuZXcgVGEoaS5taW5ab29tLGkubWF4Wm9vbSxpLm1pblBpdGNoLGkubWF4UGl0Y2gsaS5yZW5kZXJXb3JsZENvcGllcykse2JlYXJpbmdTbmFwOmkuYmVhcmluZ1NuYXB9KSx0aGlzLl9pZGxlVHJpZ2dlcmVkPSExLHRoaXMuX2Nyb3NzRmFkaW5nRmFjdG9yPTEsdGhpcy5fcmVuZGVyVGFza1F1ZXVlPW5ldyBDcyx0aGlzLl9jb250cm9scz1bXSx0aGlzLl9tYXBJZD1lLmE0KCksdGhpcy5fY29udGV4dExvc3Q9dD0+e3QucHJldmVudERlZmF1bHQoKSx0aGlzLl9mcmFtZVJlcXVlc3QmJih0aGlzLl9mcmFtZVJlcXVlc3QuYWJvcnQoKSx0aGlzLl9mcmFtZVJlcXVlc3Q9bnVsbCksdGhpcy5maXJlKG5ldyBlLmsoXCJ3ZWJnbGNvbnRleHRsb3N0XCIse29yaWdpbmFsRXZlbnQ6dH0pKTt9LHRoaXMuX2NvbnRleHRSZXN0b3JlZD10PT57dGhpcy5fc2V0dXBQYWludGVyKCksdGhpcy5yZXNpemUoKSx0aGlzLl91cGRhdGUoKSx0aGlzLmZpcmUobmV3IGUuayhcIndlYmdsY29udGV4dHJlc3RvcmVkXCIse29yaWdpbmFsRXZlbnQ6dH0pKTt9LHRoaXMuX29uTWFwU2Nyb2xsPXQ9PntpZih0LnRhcmdldD09PXRoaXMuX2NvbnRhaW5lcilyZXR1cm4gdGhpcy5fY29udGFpbmVyLnNjcm9sbFRvcD0wLHRoaXMuX2NvbnRhaW5lci5zY3JvbGxMZWZ0PTAsITF9LHRoaXMuX29uV2luZG93T25saW5lPSgpPT57dGhpcy5fdXBkYXRlKCk7fSx0aGlzLl9pbnRlcmFjdGl2ZT1pLmludGVyYWN0aXZlLHRoaXMuX21heFRpbGVDYWNoZVNpemU9aS5tYXhUaWxlQ2FjaGVTaXplLHRoaXMuX21heFRpbGVDYWNoZVpvb21MZXZlbHM9aS5tYXhUaWxlQ2FjaGVab29tTGV2ZWxzLHRoaXMuX2ZhaWxJZk1ham9yUGVyZm9ybWFuY2VDYXZlYXQ9ITA9PT1pLmZhaWxJZk1ham9yUGVyZm9ybWFuY2VDYXZlYXQsdGhpcy5fcHJlc2VydmVEcmF3aW5nQnVmZmVyPSEwPT09aS5wcmVzZXJ2ZURyYXdpbmdCdWZmZXIsdGhpcy5fYW50aWFsaWFzPSEwPT09aS5hbnRpYWxpYXMsdGhpcy5fdHJhY2tSZXNpemU9ITA9PT1pLnRyYWNrUmVzaXplLHRoaXMuX2JlYXJpbmdTbmFwPWkuYmVhcmluZ1NuYXAsdGhpcy5fcmVmcmVzaEV4cGlyZWRUaWxlcz0hMD09PWkucmVmcmVzaEV4cGlyZWRUaWxlcyx0aGlzLl9mYWRlRHVyYXRpb249aS5mYWRlRHVyYXRpb24sdGhpcy5fY3Jvc3NTb3VyY2VDb2xsaXNpb25zPSEwPT09aS5jcm9zc1NvdXJjZUNvbGxpc2lvbnMsdGhpcy5fY29sbGVjdFJlc291cmNlVGltaW5nPSEwPT09aS5jb2xsZWN0UmVzb3VyY2VUaW1pbmcsdGhpcy5fbG9jYWxlPU9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSxrcyksaS5sb2NhbGUpLHRoaXMuX2NsaWNrVG9sZXJhbmNlPWkuY2xpY2tUb2xlcmFuY2UsdGhpcy5fb3ZlcnJpZGVQaXhlbFJhdGlvPWkucGl4ZWxSYXRpbyx0aGlzLl9tYXhDYW52YXNTaXplPWkubWF4Q2FudmFzU2l6ZSx0aGlzLnRyYW5zZm9ybUNhbWVyYVVwZGF0ZT1pLnRyYW5zZm9ybUNhbWVyYVVwZGF0ZSx0aGlzLmNhbmNlbFBlbmRpbmdUaWxlUmVxdWVzdHNXaGlsZVpvb21pbmc9ITA9PT1pLmNhbmNlbFBlbmRpbmdUaWxlUmVxdWVzdHNXaGlsZVpvb21pbmcsdGhpcy5faW1hZ2VRdWV1ZUhhbmRsZT1fLmFkZFRocm90dGxlQ29udHJvbCgoKCk9PnRoaXMuaXNNb3ZpbmcoKSkpLHRoaXMuX3JlcXVlc3RNYW5hZ2VyPW5ldyBwKGkudHJhbnNmb3JtUmVxdWVzdCksXCJzdHJpbmdcIj09dHlwZW9mIGkuY29udGFpbmVyKXtpZih0aGlzLl9jb250YWluZXI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaS5jb250YWluZXIpLCF0aGlzLl9jb250YWluZXIpdGhyb3cgbmV3IEVycm9yKGBDb250YWluZXIgJyR7aS5jb250YWluZXJ9JyBub3QgZm91bmQuYCl9ZWxzZSB7aWYoIShpLmNvbnRhaW5lciBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KSl0aHJvdyBuZXcgRXJyb3IoXCJJbnZhbGlkIHR5cGU6ICdjb250YWluZXInIG11c3QgYmUgYSBTdHJpbmcgb3IgSFRNTEVsZW1lbnQuXCIpO3RoaXMuX2NvbnRhaW5lcj1pLmNvbnRhaW5lcjt9aWYoaS5tYXhCb3VuZHMmJnRoaXMuc2V0TWF4Qm91bmRzKGkubWF4Qm91bmRzKSx0aGlzLl9zZXR1cENvbnRhaW5lcigpLHRoaXMuX3NldHVwUGFpbnRlcigpLHRoaXMub24oXCJtb3ZlXCIsKCgpPT50aGlzLl91cGRhdGUoITEpKSkub24oXCJtb3ZlZW5kXCIsKCgpPT50aGlzLl91cGRhdGUoITEpKSkub24oXCJ6b29tXCIsKCgpPT50aGlzLl91cGRhdGUoITApKSkub24oXCJ0ZXJyYWluXCIsKCgpPT57dGhpcy5wYWludGVyLnRlcnJhaW5GYWNpbGl0YXRvci5kaXJ0eT0hMCx0aGlzLl91cGRhdGUoITApO30pKS5vbmNlKFwiaWRsZVwiLCgoKT0+e3RoaXMuX2lkbGVUcmlnZ2VyZWQ9ITA7fSkpLFwidW5kZWZpbmVkXCIhPXR5cGVvZiB3aW5kb3cpe2FkZEV2ZW50TGlzdGVuZXIoXCJvbmxpbmVcIix0aGlzLl9vbldpbmRvd09ubGluZSwhMSk7bGV0IHQ9ITE7Y29uc3QgZT1JYSgodD0+e3RoaXMuX3RyYWNrUmVzaXplJiYhdGhpcy5fcmVtb3ZlZCYmKHRoaXMucmVzaXplKHQpLHRoaXMucmVkcmF3KCkpO30pLDUwKTt0aGlzLl9yZXNpemVPYnNlcnZlcj1uZXcgUmVzaXplT2JzZXJ2ZXIoKGk9Pnt0P2UoaSk6dD0hMDt9KSksdGhpcy5fcmVzaXplT2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzLl9jb250YWluZXIpO310aGlzLmhhbmRsZXJzPW5ldyB3cyh0aGlzLGkpLHRoaXMuX2hhc2g9aS5oYXNoJiZuZXcgRWEoXCJzdHJpbmdcIj09dHlwZW9mIGkuaGFzaCYmaS5oYXNofHx2b2lkIDApLmFkZFRvKHRoaXMpLHRoaXMuX2hhc2gmJnRoaXMuX2hhc2guX29uSGFzaENoYW5nZSgpfHwodGhpcy5qdW1wVG8oe2NlbnRlcjppLmNlbnRlcix6b29tOmkuem9vbSxiZWFyaW5nOmkuYmVhcmluZyxwaXRjaDppLnBpdGNofSksaS5ib3VuZHMmJih0aGlzLnJlc2l6ZSgpLHRoaXMuZml0Qm91bmRzKGkuYm91bmRzLGUuZSh7fSxpLmZpdEJvdW5kc09wdGlvbnMse2R1cmF0aW9uOjB9KSkpKSx0aGlzLnJlc2l6ZSgpLHRoaXMuX2xvY2FsSWRlb2dyYXBoRm9udEZhbWlseT1pLmxvY2FsSWRlb2dyYXBoRm9udEZhbWlseSx0aGlzLl92YWxpZGF0ZVN0eWxlPWkudmFsaWRhdGVTdHlsZSxpLnN0eWxlJiZ0aGlzLnNldFN0eWxlKGkuc3R5bGUse2xvY2FsSWRlb2dyYXBoRm9udEZhbWlseTppLmxvY2FsSWRlb2dyYXBoRm9udEZhbWlseX0pLGkuYXR0cmlidXRpb25Db250cm9sJiZ0aGlzLmFkZENvbnRyb2wobmV3IEVzKFwiYm9vbGVhblwiPT10eXBlb2YgaS5hdHRyaWJ1dGlvbkNvbnRyb2w/dm9pZCAwOmkuYXR0cmlidXRpb25Db250cm9sKSksaS5tYXBsaWJyZUxvZ28mJnRoaXMuYWRkQ29udHJvbChuZXcgUHMsaS5sb2dvUG9zaXRpb24pLHRoaXMub24oXCJzdHlsZS5sb2FkXCIsKCgpPT57dGhpcy50cmFuc2Zvcm0udW5tb2RpZmllZCYmdGhpcy5qdW1wVG8odGhpcy5zdHlsZS5zdHlsZXNoZWV0KTt9KSksdGhpcy5vbihcImRhdGFcIiwodD0+e3RoaXMuX3VwZGF0ZShcInN0eWxlXCI9PT10LmRhdGFUeXBlKSx0aGlzLmZpcmUobmV3IGUuayhgJHt0LmRhdGFUeXBlfWRhdGFgLHQpKTt9KSksdGhpcy5vbihcImRhdGFsb2FkaW5nXCIsKHQ9Pnt0aGlzLmZpcmUobmV3IGUuayhgJHt0LmRhdGFUeXBlfWRhdGFsb2FkaW5nYCx0KSk7fSkpLHRoaXMub24oXCJkYXRhYWJvcnRcIiwodD0+e3RoaXMuZmlyZShuZXcgZS5rKFwic291cmNlZGF0YWFib3J0XCIsdCkpO30pKTt9X2dldE1hcElkKCl7cmV0dXJuIHRoaXMuX21hcElkfWFkZENvbnRyb2wodCxpKXtpZih2b2lkIDA9PT1pJiYoaT10LmdldERlZmF1bHRQb3NpdGlvbj90LmdldERlZmF1bHRQb3NpdGlvbigpOlwidG9wLXJpZ2h0XCIpLCF0fHwhdC5vbkFkZClyZXR1cm4gdGhpcy5maXJlKG5ldyBlLmoobmV3IEVycm9yKFwiSW52YWxpZCBhcmd1bWVudCB0byBtYXAuYWRkQ29udHJvbCgpLiBBcmd1bWVudCBtdXN0IGJlIGEgY29udHJvbCB3aXRoIG9uQWRkIGFuZCBvblJlbW92ZSBtZXRob2RzLlwiKSkpO2NvbnN0IGE9dC5vbkFkZCh0aGlzKTt0aGlzLl9jb250cm9scy5wdXNoKHQpO2NvbnN0IHM9dGhpcy5fY29udHJvbFBvc2l0aW9uc1tpXTtyZXR1cm4gLTEhPT1pLmluZGV4T2YoXCJib3R0b21cIik/cy5pbnNlcnRCZWZvcmUoYSxzLmZpcnN0Q2hpbGQpOnMuYXBwZW5kQ2hpbGQoYSksdGhpc31yZW1vdmVDb250cm9sKHQpe2lmKCF0fHwhdC5vblJlbW92ZSlyZXR1cm4gdGhpcy5maXJlKG5ldyBlLmoobmV3IEVycm9yKFwiSW52YWxpZCBhcmd1bWVudCB0byBtYXAucmVtb3ZlQ29udHJvbCgpLiBBcmd1bWVudCBtdXN0IGJlIGEgY29udHJvbCB3aXRoIG9uQWRkIGFuZCBvblJlbW92ZSBtZXRob2RzLlwiKSkpO2NvbnN0IGk9dGhpcy5fY29udHJvbHMuaW5kZXhPZih0KTtyZXR1cm4gaT4tMSYmdGhpcy5fY29udHJvbHMuc3BsaWNlKGksMSksdC5vblJlbW92ZSh0aGlzKSx0aGlzfWhhc0NvbnRyb2wodCl7cmV0dXJuIHRoaXMuX2NvbnRyb2xzLmluZGV4T2YodCk+LTF9Y2FsY3VsYXRlQ2FtZXJhT3B0aW9uc0Zyb21Ubyh0LGUsaSxhKXtyZXR1cm4gbnVsbD09YSYmdGhpcy50ZXJyYWluJiYoYT10aGlzLnRlcnJhaW4uZ2V0RWxldmF0aW9uRm9yTG5nTGF0Wm9vbShpLHRoaXMudHJhbnNmb3JtLnRpbGVab29tKSksc3VwZXIuY2FsY3VsYXRlQ2FtZXJhT3B0aW9uc0Zyb21Ubyh0LGUsaSxhKX1yZXNpemUodCl7dmFyIGk7Y29uc3QgYT10aGlzLl9jb250YWluZXJEaW1lbnNpb25zKCkscz1hWzBdLG89YVsxXSxyPXRoaXMuX2dldENsYW1wZWRQaXhlbFJhdGlvKHMsbyk7aWYodGhpcy5fcmVzaXplQ2FudmFzKHMsbyxyKSx0aGlzLnBhaW50ZXIucmVzaXplKHMsbyxyKSx0aGlzLnBhaW50ZXIub3ZlckxpbWl0KCkpe2NvbnN0IHQ9dGhpcy5wYWludGVyLmNvbnRleHQuZ2w7dGhpcy5fbWF4Q2FudmFzU2l6ZT1bdC5kcmF3aW5nQnVmZmVyV2lkdGgsdC5kcmF3aW5nQnVmZmVySGVpZ2h0XTtjb25zdCBlPXRoaXMuX2dldENsYW1wZWRQaXhlbFJhdGlvKHMsbyk7dGhpcy5fcmVzaXplQ2FudmFzKHMsbyxlKSx0aGlzLnBhaW50ZXIucmVzaXplKHMsbyxlKTt9dGhpcy50cmFuc2Zvcm0ucmVzaXplKHMsbyksbnVsbD09PShpPXRoaXMuX3JlcXVlc3RlZENhbWVyYVN0YXRlKXx8dm9pZCAwPT09aXx8aS5yZXNpemUocyxvKTtjb25zdCBuPSF0aGlzLl9tb3Zpbmc7cmV0dXJuIG4mJih0aGlzLnN0b3AoKSx0aGlzLmZpcmUobmV3IGUuayhcIm1vdmVzdGFydFwiLHQpKS5maXJlKG5ldyBlLmsoXCJtb3ZlXCIsdCkpKSx0aGlzLmZpcmUobmV3IGUuayhcInJlc2l6ZVwiLHQpKSxuJiZ0aGlzLmZpcmUobmV3IGUuayhcIm1vdmVlbmRcIix0KSksdGhpc31fZ2V0Q2xhbXBlZFBpeGVsUmF0aW8odCxlKXtjb25zdHswOmksMTphfT10aGlzLl9tYXhDYW52YXNTaXplLHM9dGhpcy5nZXRQaXhlbFJhdGlvKCksbz10KnMscj1lKnM7cmV0dXJuIE1hdGgubWluKG8+aT9pL286MSxyPmE/YS9yOjEpKnN9Z2V0UGl4ZWxSYXRpbygpe3ZhciB0O3JldHVybiBudWxsIT09KHQ9dGhpcy5fb3ZlcnJpZGVQaXhlbFJhdGlvKSYmdm9pZCAwIT09dD90OmRldmljZVBpeGVsUmF0aW99c2V0UGl4ZWxSYXRpbyh0KXt0aGlzLl9vdmVycmlkZVBpeGVsUmF0aW89dCx0aGlzLnJlc2l6ZSgpO31nZXRCb3VuZHMoKXtyZXR1cm4gdGhpcy50cmFuc2Zvcm0uZ2V0Qm91bmRzKCl9Z2V0TWF4Qm91bmRzKCl7cmV0dXJuIHRoaXMudHJhbnNmb3JtLmdldE1heEJvdW5kcygpfXNldE1heEJvdW5kcyh0KXtyZXR1cm4gdGhpcy50cmFuc2Zvcm0uc2V0TWF4Qm91bmRzKEguY29udmVydCh0KSksdGhpcy5fdXBkYXRlKCl9c2V0TWluWm9vbSh0KXtpZigodD1udWxsPT10Py0yOnQpPj0tMiYmdDw9dGhpcy50cmFuc2Zvcm0ubWF4Wm9vbSlyZXR1cm4gdGhpcy50cmFuc2Zvcm0ubWluWm9vbT10LHRoaXMuX3VwZGF0ZSgpLHRoaXMuZ2V0Wm9vbSgpPHQmJnRoaXMuc2V0Wm9vbSh0KSx0aGlzO3Rocm93IG5ldyBFcnJvcihcIm1pblpvb20gbXVzdCBiZSBiZXR3ZWVuIC0yIGFuZCB0aGUgY3VycmVudCBtYXhab29tLCBpbmNsdXNpdmVcIil9Z2V0TWluWm9vbSgpe3JldHVybiB0aGlzLnRyYW5zZm9ybS5taW5ab29tfXNldE1heFpvb20odCl7aWYoKHQ9bnVsbD09dD8yMjp0KT49dGhpcy50cmFuc2Zvcm0ubWluWm9vbSlyZXR1cm4gdGhpcy50cmFuc2Zvcm0ubWF4Wm9vbT10LHRoaXMuX3VwZGF0ZSgpLHRoaXMuZ2V0Wm9vbSgpPnQmJnRoaXMuc2V0Wm9vbSh0KSx0aGlzO3Rocm93IG5ldyBFcnJvcihcIm1heFpvb20gbXVzdCBiZSBncmVhdGVyIHRoYW4gdGhlIGN1cnJlbnQgbWluWm9vbVwiKX1nZXRNYXhab29tKCl7cmV0dXJuIHRoaXMudHJhbnNmb3JtLm1heFpvb219c2V0TWluUGl0Y2godCl7aWYoKHQ9bnVsbD09dD8wOnQpPDApdGhyb3cgbmV3IEVycm9yKFwibWluUGl0Y2ggbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gMFwiKTtpZih0Pj0wJiZ0PD10aGlzLnRyYW5zZm9ybS5tYXhQaXRjaClyZXR1cm4gdGhpcy50cmFuc2Zvcm0ubWluUGl0Y2g9dCx0aGlzLl91cGRhdGUoKSx0aGlzLmdldFBpdGNoKCk8dCYmdGhpcy5zZXRQaXRjaCh0KSx0aGlzO3Rocm93IG5ldyBFcnJvcihcIm1pblBpdGNoIG11c3QgYmUgYmV0d2VlbiAwIGFuZCB0aGUgY3VycmVudCBtYXhQaXRjaCwgaW5jbHVzaXZlXCIpfWdldE1pblBpdGNoKCl7cmV0dXJuIHRoaXMudHJhbnNmb3JtLm1pblBpdGNofXNldE1heFBpdGNoKHQpe2lmKCh0PW51bGw9PXQ/NjA6dCk+ODUpdGhyb3cgbmV3IEVycm9yKFwibWF4UGl0Y2ggbXVzdCBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gODVcIik7aWYodD49dGhpcy50cmFuc2Zvcm0ubWluUGl0Y2gpcmV0dXJuIHRoaXMudHJhbnNmb3JtLm1heFBpdGNoPXQsdGhpcy5fdXBkYXRlKCksdGhpcy5nZXRQaXRjaCgpPnQmJnRoaXMuc2V0UGl0Y2godCksdGhpczt0aHJvdyBuZXcgRXJyb3IoXCJtYXhQaXRjaCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiB0aGUgY3VycmVudCBtaW5QaXRjaFwiKX1nZXRNYXhQaXRjaCgpe3JldHVybiB0aGlzLnRyYW5zZm9ybS5tYXhQaXRjaH1nZXRSZW5kZXJXb3JsZENvcGllcygpe3JldHVybiB0aGlzLnRyYW5zZm9ybS5yZW5kZXJXb3JsZENvcGllc31zZXRSZW5kZXJXb3JsZENvcGllcyh0KXtyZXR1cm4gdGhpcy50cmFuc2Zvcm0ucmVuZGVyV29ybGRDb3BpZXM9dCx0aGlzLl91cGRhdGUoKX1wcm9qZWN0KHQpe3JldHVybiB0aGlzLnRyYW5zZm9ybS5sb2NhdGlvblBvaW50KGUuTi5jb252ZXJ0KHQpLHRoaXMuc3R5bGUmJnRoaXMudGVycmFpbil9dW5wcm9qZWN0KHQpe3JldHVybiB0aGlzLnRyYW5zZm9ybS5wb2ludExvY2F0aW9uKGUuUC5jb252ZXJ0KHQpLHRoaXMudGVycmFpbil9aXNNb3ZpbmcoKXt2YXIgdDtyZXR1cm4gdGhpcy5fbW92aW5nfHwobnVsbD09PSh0PXRoaXMuaGFuZGxlcnMpfHx2b2lkIDA9PT10P3ZvaWQgMDp0LmlzTW92aW5nKCkpfWlzWm9vbWluZygpe3ZhciB0O3JldHVybiB0aGlzLl96b29taW5nfHwobnVsbD09PSh0PXRoaXMuaGFuZGxlcnMpfHx2b2lkIDA9PT10P3ZvaWQgMDp0LmlzWm9vbWluZygpKX1pc1JvdGF0aW5nKCl7dmFyIHQ7cmV0dXJuIHRoaXMuX3JvdGF0aW5nfHwobnVsbD09PSh0PXRoaXMuaGFuZGxlcnMpfHx2b2lkIDA9PT10P3ZvaWQgMDp0LmlzUm90YXRpbmcoKSl9X2NyZWF0ZURlbGVnYXRlZExpc3RlbmVyKHQsZSxpKXtpZihcIm1vdXNlZW50ZXJcIj09PXR8fFwibW91c2VvdmVyXCI9PT10KXtsZXQgYT0hMTtjb25zdCBzPXM9Pntjb25zdCBvPWUuZmlsdGVyKCh0PT50aGlzLmdldExheWVyKHQpKSkscj0wIT09by5sZW5ndGg/dGhpcy5xdWVyeVJlbmRlcmVkRmVhdHVyZXMocy5wb2ludCx7bGF5ZXJzOm99KTpbXTtyLmxlbmd0aD9hfHwoYT0hMCxpLmNhbGwodGhpcyxuZXcga2EodCx0aGlzLHMub3JpZ2luYWxFdmVudCx7ZmVhdHVyZXM6cn0pKSk6YT0hMTt9O3JldHVybiB7bGF5ZXJzOmUsbGlzdGVuZXI6aSxkZWxlZ2F0ZXM6e21vdXNlbW92ZTpzLG1vdXNlb3V0OigpPT57YT0hMTt9fX19aWYoXCJtb3VzZWxlYXZlXCI9PT10fHxcIm1vdXNlb3V0XCI9PT10KXtsZXQgYT0hMTtjb25zdCBzPXM9Pntjb25zdCBvPWUuZmlsdGVyKCh0PT50aGlzLmdldExheWVyKHQpKSk7KDAhPT1vLmxlbmd0aD90aGlzLnF1ZXJ5UmVuZGVyZWRGZWF0dXJlcyhzLnBvaW50LHtsYXllcnM6b30pOltdKS5sZW5ndGg/YT0hMDphJiYoYT0hMSxpLmNhbGwodGhpcyxuZXcga2EodCx0aGlzLHMub3JpZ2luYWxFdmVudCkpKTt9LG89ZT0+e2EmJihhPSExLGkuY2FsbCh0aGlzLG5ldyBrYSh0LHRoaXMsZS5vcmlnaW5hbEV2ZW50KSkpO307cmV0dXJuIHtsYXllcnM6ZSxsaXN0ZW5lcjppLGRlbGVnYXRlczp7bW91c2Vtb3ZlOnMsbW91c2VvdXQ6b319fXtjb25zdCBhPXQ9Pntjb25zdCBhPWUuZmlsdGVyKCh0PT50aGlzLmdldExheWVyKHQpKSkscz0wIT09YS5sZW5ndGg/dGhpcy5xdWVyeVJlbmRlcmVkRmVhdHVyZXModC5wb2ludCx7bGF5ZXJzOmF9KTpbXTtzLmxlbmd0aCYmKHQuZmVhdHVyZXM9cyxpLmNhbGwodGhpcyx0KSxkZWxldGUgdC5mZWF0dXJlcyk7fTtyZXR1cm4ge2xheWVyczplLGxpc3RlbmVyOmksZGVsZWdhdGVzOntbdF06YX19fX1fc2F2ZURlbGVnYXRlZExpc3RlbmVyKHQsZSl7dGhpcy5fZGVsZWdhdGVkTGlzdGVuZXJzPXRoaXMuX2RlbGVnYXRlZExpc3RlbmVyc3x8e30sdGhpcy5fZGVsZWdhdGVkTGlzdGVuZXJzW3RdPXRoaXMuX2RlbGVnYXRlZExpc3RlbmVyc1t0XXx8W10sdGhpcy5fZGVsZWdhdGVkTGlzdGVuZXJzW3RdLnB1c2goZSk7fV9yZW1vdmVEZWxlZ2F0ZWRMaXN0ZW5lcih0LGUsaSl7aWYoIXRoaXMuX2RlbGVnYXRlZExpc3RlbmVyc3x8IXRoaXMuX2RlbGVnYXRlZExpc3RlbmVyc1t0XSlyZXR1cm47Y29uc3QgYT10aGlzLl9kZWxlZ2F0ZWRMaXN0ZW5lcnNbdF07Zm9yKGxldCB0PTA7dDxhLmxlbmd0aDt0Kyspe2NvbnN0IHM9YVt0XTtpZihzLmxpc3RlbmVyPT09aSYmcy5sYXllcnMubGVuZ3RoPT09ZS5sZW5ndGgmJnMubGF5ZXJzLmV2ZXJ5KCh0PT5lLmluY2x1ZGVzKHQpKSkpe2Zvcihjb25zdCB0IGluIHMuZGVsZWdhdGVzKXRoaXMub2ZmKHQscy5kZWxlZ2F0ZXNbdF0pO3JldHVybiB2b2lkIGEuc3BsaWNlKHQsMSl9fX1vbih0LGUsaSl7aWYodm9pZCAwPT09aSlyZXR1cm4gc3VwZXIub24odCxlKTtjb25zdCBhPXRoaXMuX2NyZWF0ZURlbGVnYXRlZExpc3RlbmVyKHQsXCJzdHJpbmdcIj09dHlwZW9mIGU/W2VdOmUsaSk7dGhpcy5fc2F2ZURlbGVnYXRlZExpc3RlbmVyKHQsYSk7Zm9yKGNvbnN0IHQgaW4gYS5kZWxlZ2F0ZXMpdGhpcy5vbih0LGEuZGVsZWdhdGVzW3RdKTtyZXR1cm4gdGhpc31vbmNlKHQsZSxpKXtpZih2b2lkIDA9PT1pKXJldHVybiBzdXBlci5vbmNlKHQsZSk7Y29uc3QgYT1cInN0cmluZ1wiPT10eXBlb2YgZT9bZV06ZSxzPXRoaXMuX2NyZWF0ZURlbGVnYXRlZExpc3RlbmVyKHQsYSxpKTtmb3IoY29uc3QgZSBpbiBzLmRlbGVnYXRlcyl7Y29uc3Qgbz1zLmRlbGVnYXRlc1tlXTtzLmRlbGVnYXRlc1tlXT0oLi4uZSk9Pnt0aGlzLl9yZW1vdmVEZWxlZ2F0ZWRMaXN0ZW5lcih0LGEsaSksbyguLi5lKTt9O310aGlzLl9zYXZlRGVsZWdhdGVkTGlzdGVuZXIodCxzKTtmb3IoY29uc3QgdCBpbiBzLmRlbGVnYXRlcyl0aGlzLm9uY2UodCxzLmRlbGVnYXRlc1t0XSk7cmV0dXJuIHRoaXN9b2ZmKHQsZSxpKXtyZXR1cm4gdm9pZCAwPT09aT9zdXBlci5vZmYodCxlKToodGhpcy5fcmVtb3ZlRGVsZWdhdGVkTGlzdGVuZXIodCxcInN0cmluZ1wiPT10eXBlb2YgZT9bZV06ZSxpKSx0aGlzKX1xdWVyeVJlbmRlcmVkRmVhdHVyZXModCxpKXtpZighdGhpcy5zdHlsZSlyZXR1cm4gW107bGV0IGE7Y29uc3Qgcz10IGluc3RhbmNlb2YgZS5QfHxBcnJheS5pc0FycmF5KHQpLG89cz90OltbMCwwXSxbdGhpcy50cmFuc2Zvcm0ud2lkdGgsdGhpcy50cmFuc2Zvcm0uaGVpZ2h0XV07aWYoaT1pfHwocz97fTp0KXx8e30sbyBpbnN0YW5jZW9mIGUuUHx8XCJudW1iZXJcIj09dHlwZW9mIG9bMF0pYT1bZS5QLmNvbnZlcnQobyldO2Vsc2Uge2NvbnN0IHQ9ZS5QLmNvbnZlcnQob1swXSksaT1lLlAuY29udmVydChvWzFdKTthPVt0LG5ldyBlLlAoaS54LHQueSksaSxuZXcgZS5QKHQueCxpLnkpLHRdO31yZXR1cm4gdGhpcy5zdHlsZS5xdWVyeVJlbmRlcmVkRmVhdHVyZXMoYSxpLHRoaXMudHJhbnNmb3JtKX1xdWVyeVNvdXJjZUZlYXR1cmVzKHQsZSl7cmV0dXJuIHRoaXMuc3R5bGUucXVlcnlTb3VyY2VGZWF0dXJlcyh0LGUpfXNldFN0eWxlKHQsaSl7cmV0dXJuICExIT09KGk9ZS5lKHt9LHtsb2NhbElkZW9ncmFwaEZvbnRGYW1pbHk6dGhpcy5fbG9jYWxJZGVvZ3JhcGhGb250RmFtaWx5LHZhbGlkYXRlOnRoaXMuX3ZhbGlkYXRlU3R5bGV9LGkpKS5kaWZmJiZpLmxvY2FsSWRlb2dyYXBoRm9udEZhbWlseT09PXRoaXMuX2xvY2FsSWRlb2dyYXBoRm9udEZhbWlseSYmdGhpcy5zdHlsZSYmdD8odGhpcy5fZGlmZlN0eWxlKHQsaSksdGhpcyk6KHRoaXMuX2xvY2FsSWRlb2dyYXBoRm9udEZhbWlseT1pLmxvY2FsSWRlb2dyYXBoRm9udEZhbWlseSx0aGlzLl91cGRhdGVTdHlsZSh0LGkpKX1zZXRUcmFuc2Zvcm1SZXF1ZXN0KHQpe3JldHVybiB0aGlzLl9yZXF1ZXN0TWFuYWdlci5zZXRUcmFuc2Zvcm1SZXF1ZXN0KHQpLHRoaXN9X2dldFVJU3RyaW5nKHQpe2NvbnN0IGU9dGhpcy5fbG9jYWxlW3RdO2lmKG51bGw9PWUpdGhyb3cgbmV3IEVycm9yKGBNaXNzaW5nIFVJIHN0cmluZyAnJHt0fSdgKTtyZXR1cm4gZX1fdXBkYXRlU3R5bGUodCxlKXtpZihlLnRyYW5zZm9ybVN0eWxlJiZ0aGlzLnN0eWxlJiYhdGhpcy5zdHlsZS5fbG9hZGVkKXJldHVybiB2b2lkIHRoaXMuc3R5bGUub25jZShcInN0eWxlLmxvYWRcIiwoKCk9PnRoaXMuX3VwZGF0ZVN0eWxlKHQsZSkpKTtjb25zdCBpPXRoaXMuc3R5bGUmJmUudHJhbnNmb3JtU3R5bGU/dGhpcy5zdHlsZS5zZXJpYWxpemUoKTp2b2lkIDA7cmV0dXJuIHRoaXMuc3R5bGUmJih0aGlzLnN0eWxlLnNldEV2ZW50ZWRQYXJlbnQobnVsbCksdGhpcy5zdHlsZS5fcmVtb3ZlKCF0KSksdD8odGhpcy5zdHlsZT1uZXcgZGUodGhpcyxlfHx7fSksdGhpcy5zdHlsZS5zZXRFdmVudGVkUGFyZW50KHRoaXMse3N0eWxlOnRoaXMuc3R5bGV9KSxcInN0cmluZ1wiPT10eXBlb2YgdD90aGlzLnN0eWxlLmxvYWRVUkwodCxlLGkpOnRoaXMuc3R5bGUubG9hZEpTT04odCxlLGkpLHRoaXMpOihkZWxldGUgdGhpcy5zdHlsZSx0aGlzKX1fbGF6eUluaXRFbXB0eVN0eWxlKCl7dGhpcy5zdHlsZXx8KHRoaXMuc3R5bGU9bmV3IGRlKHRoaXMse30pLHRoaXMuc3R5bGUuc2V0RXZlbnRlZFBhcmVudCh0aGlzLHtzdHlsZTp0aGlzLnN0eWxlfSksdGhpcy5zdHlsZS5sb2FkRW1wdHkoKSk7fV9kaWZmU3R5bGUodCxpKXtpZihcInN0cmluZ1wiPT10eXBlb2YgdCl7Y29uc3QgYT10aGlzLl9yZXF1ZXN0TWFuYWdlci50cmFuc2Zvcm1SZXF1ZXN0KHQsXCJTdHlsZVwiKTtlLmgoYSxuZXcgQWJvcnRDb250cm9sbGVyKS50aGVuKCh0PT57dGhpcy5fdXBkYXRlRGlmZih0LmRhdGEsaSk7fSkpLmNhdGNoKCh0PT57dCYmdGhpcy5maXJlKG5ldyBlLmoodCkpO30pKTt9ZWxzZSBcIm9iamVjdFwiPT10eXBlb2YgdCYmdGhpcy5fdXBkYXRlRGlmZih0LGkpO31fdXBkYXRlRGlmZih0LGkpe3RyeXt0aGlzLnN0eWxlLnNldFN0YXRlKHQsaSkmJnRoaXMuX3VwZGF0ZSghMCk7fWNhdGNoKGEpe2UudyhgVW5hYmxlIHRvIHBlcmZvcm0gc3R5bGUgZGlmZjogJHthLm1lc3NhZ2V8fGEuZXJyb3J8fGF9LiAgUmVidWlsZGluZyB0aGUgc3R5bGUgZnJvbSBzY3JhdGNoLmApLHRoaXMuX3VwZGF0ZVN0eWxlKHQsaSk7fX1nZXRTdHlsZSgpe2lmKHRoaXMuc3R5bGUpcmV0dXJuIHRoaXMuc3R5bGUuc2VyaWFsaXplKCl9aXNTdHlsZUxvYWRlZCgpe3JldHVybiB0aGlzLnN0eWxlP3RoaXMuc3R5bGUubG9hZGVkKCk6ZS53KFwiVGhlcmUgaXMgbm8gc3R5bGUgYWRkZWQgdG8gdGhlIG1hcC5cIil9YWRkU291cmNlKHQsZSl7cmV0dXJuIHRoaXMuX2xhenlJbml0RW1wdHlTdHlsZSgpLHRoaXMuc3R5bGUuYWRkU291cmNlKHQsZSksdGhpcy5fdXBkYXRlKCEwKX1pc1NvdXJjZUxvYWRlZCh0KXtjb25zdCBpPXRoaXMuc3R5bGUmJnRoaXMuc3R5bGUuc291cmNlQ2FjaGVzW3RdO2lmKHZvaWQgMCE9PWkpcmV0dXJuIGkubG9hZGVkKCk7dGhpcy5maXJlKG5ldyBlLmoobmV3IEVycm9yKGBUaGVyZSBpcyBubyBzb3VyY2Ugd2l0aCBJRCAnJHt0fSdgKSkpO31zZXRUZXJyYWluKHQpe2lmKHRoaXMuc3R5bGUuX2NoZWNrTG9hZGVkKCksdGhpcy5fdGVycmFpbkRhdGFDYWxsYmFjayYmdGhpcy5zdHlsZS5vZmYoXCJkYXRhXCIsdGhpcy5fdGVycmFpbkRhdGFDYWxsYmFjayksdCl7Y29uc3QgaT10aGlzLnN0eWxlLnNvdXJjZUNhY2hlc1t0LnNvdXJjZV07aWYoIWkpdGhyb3cgbmV3IEVycm9yKGBjYW5ub3QgbG9hZCB0ZXJyYWluLCBiZWNhdXNlIHRoZXJlIGV4aXN0cyBubyBzb3VyY2Ugd2l0aCBJRDogJHt0LnNvdXJjZX1gKTtudWxsPT09dGhpcy50ZXJyYWluJiZpLnJlbG9hZCgpO2Zvcihjb25zdCBpIGluIHRoaXMuc3R5bGUuX2xheWVycyl7Y29uc3QgYT10aGlzLnN0eWxlLl9sYXllcnNbaV07XCJoaWxsc2hhZGVcIj09PWEudHlwZSYmYS5zb3VyY2U9PT10LnNvdXJjZSYmZS53KFwiWW91IGFyZSB1c2luZyB0aGUgc2FtZSBzb3VyY2UgZm9yIGEgaGlsbHNoYWRlIGxheWVyIGFuZCBmb3IgM0QgdGVycmFpbi4gUGxlYXNlIGNvbnNpZGVyIHVzaW5nIHR3byBzZXBhcmF0ZSBzb3VyY2VzIHRvIGltcHJvdmUgcmVuZGVyaW5nIHF1YWxpdHkuXCIpO310aGlzLnRlcnJhaW49bmV3IERzKHRoaXMucGFpbnRlcixpLHQpLHRoaXMucGFpbnRlci5yZW5kZXJUb1RleHR1cmU9bmV3IFJzKHRoaXMucGFpbnRlcix0aGlzLnRlcnJhaW4pLHRoaXMudHJhbnNmb3JtLm1pbkVsZXZhdGlvbkZvckN1cnJlbnRUaWxlPXRoaXMudGVycmFpbi5nZXRNaW5UaWxlRWxldmF0aW9uRm9yTG5nTGF0Wm9vbSh0aGlzLnRyYW5zZm9ybS5jZW50ZXIsdGhpcy50cmFuc2Zvcm0udGlsZVpvb20pLHRoaXMudHJhbnNmb3JtLmVsZXZhdGlvbj10aGlzLnRlcnJhaW4uZ2V0RWxldmF0aW9uRm9yTG5nTGF0Wm9vbSh0aGlzLnRyYW5zZm9ybS5jZW50ZXIsdGhpcy50cmFuc2Zvcm0udGlsZVpvb20pLHRoaXMuX3RlcnJhaW5EYXRhQ2FsbGJhY2s9ZT0+e1wic3R5bGVcIj09PWUuZGF0YVR5cGU/dGhpcy50ZXJyYWluLnNvdXJjZUNhY2hlLmZyZWVSdHQoKTpcInNvdXJjZVwiPT09ZS5kYXRhVHlwZSYmZS50aWxlJiYoZS5zb3VyY2VJZCE9PXQuc291cmNlfHx0aGlzLl9lbGV2YXRpb25GcmVlemV8fCh0aGlzLnRyYW5zZm9ybS5taW5FbGV2YXRpb25Gb3JDdXJyZW50VGlsZT10aGlzLnRlcnJhaW4uZ2V0TWluVGlsZUVsZXZhdGlvbkZvckxuZ0xhdFpvb20odGhpcy50cmFuc2Zvcm0uY2VudGVyLHRoaXMudHJhbnNmb3JtLnRpbGVab29tKSx0aGlzLnRyYW5zZm9ybS5lbGV2YXRpb249dGhpcy50ZXJyYWluLmdldEVsZXZhdGlvbkZvckxuZ0xhdFpvb20odGhpcy50cmFuc2Zvcm0uY2VudGVyLHRoaXMudHJhbnNmb3JtLnRpbGVab29tKSksdGhpcy50ZXJyYWluLnNvdXJjZUNhY2hlLmZyZWVSdHQoZS50aWxlLnRpbGVJRCkpO30sdGhpcy5zdHlsZS5vbihcImRhdGFcIix0aGlzLl90ZXJyYWluRGF0YUNhbGxiYWNrKTt9ZWxzZSB0aGlzLnRlcnJhaW4mJnRoaXMudGVycmFpbi5zb3VyY2VDYWNoZS5kZXN0cnVjdCgpLHRoaXMudGVycmFpbj1udWxsLHRoaXMucGFpbnRlci5yZW5kZXJUb1RleHR1cmUmJnRoaXMucGFpbnRlci5yZW5kZXJUb1RleHR1cmUuZGVzdHJ1Y3QoKSx0aGlzLnBhaW50ZXIucmVuZGVyVG9UZXh0dXJlPW51bGwsdGhpcy50cmFuc2Zvcm0ubWluRWxldmF0aW9uRm9yQ3VycmVudFRpbGU9MCx0aGlzLnRyYW5zZm9ybS5lbGV2YXRpb249MDtyZXR1cm4gdGhpcy5maXJlKG5ldyBlLmsoXCJ0ZXJyYWluXCIse3RlcnJhaW46dH0pKSx0aGlzfWdldFRlcnJhaW4oKXt2YXIgdCxlO3JldHVybiBudWxsIT09KGU9bnVsbD09PSh0PXRoaXMudGVycmFpbil8fHZvaWQgMD09PXQ/dm9pZCAwOnQub3B0aW9ucykmJnZvaWQgMCE9PWU/ZTpudWxsfWFyZVRpbGVzTG9hZGVkKCl7Y29uc3QgdD10aGlzLnN0eWxlJiZ0aGlzLnN0eWxlLnNvdXJjZUNhY2hlcztmb3IoY29uc3QgZSBpbiB0KXtjb25zdCBpPXRbZV0uX3RpbGVzO2Zvcihjb25zdCB0IGluIGkpe2NvbnN0IGU9aVt0XTtpZihcImxvYWRlZFwiIT09ZS5zdGF0ZSYmXCJlcnJvcmVkXCIhPT1lLnN0YXRlKXJldHVybiAhMX19cmV0dXJuICEwfXJlbW92ZVNvdXJjZSh0KXtyZXR1cm4gdGhpcy5zdHlsZS5yZW1vdmVTb3VyY2UodCksdGhpcy5fdXBkYXRlKCEwKX1nZXRTb3VyY2UodCl7cmV0dXJuIHRoaXMuc3R5bGUuZ2V0U291cmNlKHQpfWFkZEltYWdlKHQsaSxhPXt9KXtjb25zdHtwaXhlbFJhdGlvOnM9MSxzZGY6cj0hMSxzdHJldGNoWDpuLHN0cmV0Y2hZOmwsY29udGVudDpoLHRleHRGaXRXaWR0aDpjLHRleHRGaXRIZWlnaHQ6dX09YTtpZih0aGlzLl9sYXp5SW5pdEVtcHR5U3R5bGUoKSwhKGkgaW5zdGFuY2VvZiBIVE1MSW1hZ2VFbGVtZW50fHxlLmIoaSkpKXtpZih2b2lkIDA9PT1pLndpZHRofHx2b2lkIDA9PT1pLmhlaWdodClyZXR1cm4gdGhpcy5maXJlKG5ldyBlLmoobmV3IEVycm9yKFwiSW52YWxpZCBhcmd1bWVudHMgdG8gbWFwLmFkZEltYWdlKCkuIFRoZSBzZWNvbmQgYXJndW1lbnQgbXVzdCBiZSBhbiBgSFRNTEltYWdlRWxlbWVudGAsIGBJbWFnZURhdGFgLCBgSW1hZ2VCaXRtYXBgLCBvciBvYmplY3Qgd2l0aCBgd2lkdGhgLCBgaGVpZ2h0YCwgYW5kIGBkYXRhYCBwcm9wZXJ0aWVzIHdpdGggdGhlIHNhbWUgZm9ybWF0IGFzIGBJbWFnZURhdGFgXCIpKSk7e2NvbnN0e3dpZHRoOmEsaGVpZ2h0Om8sZGF0YTpkfT1pLF89aTtyZXR1cm4gdGhpcy5zdHlsZS5hZGRJbWFnZSh0LHtkYXRhOm5ldyBlLlIoe3dpZHRoOmEsaGVpZ2h0Om99LG5ldyBVaW50OEFycmF5KGQpKSxwaXhlbFJhdGlvOnMsc3RyZXRjaFg6bixzdHJldGNoWTpsLGNvbnRlbnQ6aCx0ZXh0Rml0V2lkdGg6Yyx0ZXh0Rml0SGVpZ2h0OnUsc2RmOnIsdmVyc2lvbjowLHVzZXJJbWFnZTpffSksXy5vbkFkZCYmXy5vbkFkZCh0aGlzLHQpLHRoaXN9fXtjb25zdHt3aWR0aDphLGhlaWdodDpkLGRhdGE6X309by5nZXRJbWFnZURhdGEoaSk7dGhpcy5zdHlsZS5hZGRJbWFnZSh0LHtkYXRhOm5ldyBlLlIoe3dpZHRoOmEsaGVpZ2h0OmR9LF8pLHBpeGVsUmF0aW86cyxzdHJldGNoWDpuLHN0cmV0Y2hZOmwsY29udGVudDpoLHRleHRGaXRXaWR0aDpjLHRleHRGaXRIZWlnaHQ6dSxzZGY6cix2ZXJzaW9uOjB9KTt9fXVwZGF0ZUltYWdlKHQsaSl7Y29uc3QgYT10aGlzLnN0eWxlLmdldEltYWdlKHQpO2lmKCFhKXJldHVybiB0aGlzLmZpcmUobmV3IGUuaihuZXcgRXJyb3IoXCJUaGUgbWFwIGhhcyBubyBpbWFnZSB3aXRoIHRoYXQgaWQuIElmIHlvdSBhcmUgYWRkaW5nIGEgbmV3IGltYWdlIHVzZSBgbWFwLmFkZEltYWdlKC4uLilgIGluc3RlYWQuXCIpKSk7Y29uc3Qgcz1pIGluc3RhbmNlb2YgSFRNTEltYWdlRWxlbWVudHx8ZS5iKGkpP28uZ2V0SW1hZ2VEYXRhKGkpOmkse3dpZHRoOnIsaGVpZ2h0Om4sZGF0YTpsfT1zO2lmKHZvaWQgMD09PXJ8fHZvaWQgMD09PW4pcmV0dXJuIHRoaXMuZmlyZShuZXcgZS5qKG5ldyBFcnJvcihcIkludmFsaWQgYXJndW1lbnRzIHRvIG1hcC51cGRhdGVJbWFnZSgpLiBUaGUgc2Vjb25kIGFyZ3VtZW50IG11c3QgYmUgYW4gYEhUTUxJbWFnZUVsZW1lbnRgLCBgSW1hZ2VEYXRhYCwgYEltYWdlQml0bWFwYCwgb3Igb2JqZWN0IHdpdGggYHdpZHRoYCwgYGhlaWdodGAsIGFuZCBgZGF0YWAgcHJvcGVydGllcyB3aXRoIHRoZSBzYW1lIGZvcm1hdCBhcyBgSW1hZ2VEYXRhYFwiKSkpO2lmKHIhPT1hLmRhdGEud2lkdGh8fG4hPT1hLmRhdGEuaGVpZ2h0KXJldHVybiB0aGlzLmZpcmUobmV3IGUuaihuZXcgRXJyb3IoXCJUaGUgd2lkdGggYW5kIGhlaWdodCBvZiB0aGUgdXBkYXRlZCBpbWFnZSBtdXN0IGJlIHRoYXQgc2FtZSBhcyB0aGUgcHJldmlvdXMgdmVyc2lvbiBvZiB0aGUgaW1hZ2VcIikpKTtjb25zdCBoPSEoaSBpbnN0YW5jZW9mIEhUTUxJbWFnZUVsZW1lbnR8fGUuYihpKSk7cmV0dXJuIGEuZGF0YS5yZXBsYWNlKGwsaCksdGhpcy5zdHlsZS51cGRhdGVJbWFnZSh0LGEpLHRoaXN9Z2V0SW1hZ2UodCl7cmV0dXJuIHRoaXMuc3R5bGUuZ2V0SW1hZ2UodCl9aGFzSW1hZ2UodCl7cmV0dXJuIHQ/ISF0aGlzLnN0eWxlLmdldEltYWdlKHQpOih0aGlzLmZpcmUobmV3IGUuaihuZXcgRXJyb3IoXCJNaXNzaW5nIHJlcXVpcmVkIGltYWdlIGlkXCIpKSksITEpfXJlbW92ZUltYWdlKHQpe3RoaXMuc3R5bGUucmVtb3ZlSW1hZ2UodCk7fWxvYWRJbWFnZSh0KXtyZXR1cm4gXy5nZXRJbWFnZSh0aGlzLl9yZXF1ZXN0TWFuYWdlci50cmFuc2Zvcm1SZXF1ZXN0KHQsXCJJbWFnZVwiKSxuZXcgQWJvcnRDb250cm9sbGVyKX1saXN0SW1hZ2VzKCl7cmV0dXJuIHRoaXMuc3R5bGUubGlzdEltYWdlcygpfWFkZExheWVyKHQsZSl7cmV0dXJuIHRoaXMuX2xhenlJbml0RW1wdHlTdHlsZSgpLHRoaXMuc3R5bGUuYWRkTGF5ZXIodCxlKSx0aGlzLl91cGRhdGUoITApfW1vdmVMYXllcih0LGUpe3JldHVybiB0aGlzLnN0eWxlLm1vdmVMYXllcih0LGUpLHRoaXMuX3VwZGF0ZSghMCl9cmVtb3ZlTGF5ZXIodCl7cmV0dXJuIHRoaXMuc3R5bGUucmVtb3ZlTGF5ZXIodCksdGhpcy5fdXBkYXRlKCEwKX1nZXRMYXllcih0KXtyZXR1cm4gdGhpcy5zdHlsZS5nZXRMYXllcih0KX1nZXRMYXllcnNPcmRlcigpe3JldHVybiB0aGlzLnN0eWxlLmdldExheWVyc09yZGVyKCl9c2V0TGF5ZXJab29tUmFuZ2UodCxlLGkpe3JldHVybiB0aGlzLnN0eWxlLnNldExheWVyWm9vbVJhbmdlKHQsZSxpKSx0aGlzLl91cGRhdGUoITApfXNldEZpbHRlcih0LGUsaT17fSl7cmV0dXJuIHRoaXMuc3R5bGUuc2V0RmlsdGVyKHQsZSxpKSx0aGlzLl91cGRhdGUoITApfWdldEZpbHRlcih0KXtyZXR1cm4gdGhpcy5zdHlsZS5nZXRGaWx0ZXIodCl9c2V0UGFpbnRQcm9wZXJ0eSh0LGUsaSxhPXt9KXtyZXR1cm4gdGhpcy5zdHlsZS5zZXRQYWludFByb3BlcnR5KHQsZSxpLGEpLHRoaXMuX3VwZGF0ZSghMCl9Z2V0UGFpbnRQcm9wZXJ0eSh0LGUpe3JldHVybiB0aGlzLnN0eWxlLmdldFBhaW50UHJvcGVydHkodCxlKX1zZXRMYXlvdXRQcm9wZXJ0eSh0LGUsaSxhPXt9KXtyZXR1cm4gdGhpcy5zdHlsZS5zZXRMYXlvdXRQcm9wZXJ0eSh0LGUsaSxhKSx0aGlzLl91cGRhdGUoITApfWdldExheW91dFByb3BlcnR5KHQsZSl7cmV0dXJuIHRoaXMuc3R5bGUuZ2V0TGF5b3V0UHJvcGVydHkodCxlKX1zZXRHbHlwaHModCxlPXt9KXtyZXR1cm4gdGhpcy5fbGF6eUluaXRFbXB0eVN0eWxlKCksdGhpcy5zdHlsZS5zZXRHbHlwaHModCxlKSx0aGlzLl91cGRhdGUoITApfWdldEdseXBocygpe3JldHVybiB0aGlzLnN0eWxlLmdldEdseXBoc1VybCgpfWFkZFNwcml0ZSh0LGUsaT17fSl7cmV0dXJuIHRoaXMuX2xhenlJbml0RW1wdHlTdHlsZSgpLHRoaXMuc3R5bGUuYWRkU3ByaXRlKHQsZSxpLCh0PT57dHx8dGhpcy5fdXBkYXRlKCEwKTt9KSksdGhpc31yZW1vdmVTcHJpdGUodCl7cmV0dXJuIHRoaXMuX2xhenlJbml0RW1wdHlTdHlsZSgpLHRoaXMuc3R5bGUucmVtb3ZlU3ByaXRlKHQpLHRoaXMuX3VwZGF0ZSghMCl9Z2V0U3ByaXRlKCl7cmV0dXJuIHRoaXMuc3R5bGUuZ2V0U3ByaXRlKCl9c2V0U3ByaXRlKHQsZT17fSl7cmV0dXJuIHRoaXMuX2xhenlJbml0RW1wdHlTdHlsZSgpLHRoaXMuc3R5bGUuc2V0U3ByaXRlKHQsZSwodD0+e3R8fHRoaXMuX3VwZGF0ZSghMCk7fSkpLHRoaXN9c2V0TGlnaHQodCxlPXt9KXtyZXR1cm4gdGhpcy5fbGF6eUluaXRFbXB0eVN0eWxlKCksdGhpcy5zdHlsZS5zZXRMaWdodCh0LGUpLHRoaXMuX3VwZGF0ZSghMCl9Z2V0TGlnaHQoKXtyZXR1cm4gdGhpcy5zdHlsZS5nZXRMaWdodCgpfXNldFNreSh0KXtyZXR1cm4gdGhpcy5fbGF6eUluaXRFbXB0eVN0eWxlKCksdGhpcy5zdHlsZS5zZXRTa3kodCksdGhpcy5fdXBkYXRlKCEwKX1nZXRTa3koKXtyZXR1cm4gdGhpcy5zdHlsZS5nZXRTa3koKX1zZXRGZWF0dXJlU3RhdGUodCxlKXtyZXR1cm4gdGhpcy5zdHlsZS5zZXRGZWF0dXJlU3RhdGUodCxlKSx0aGlzLl91cGRhdGUoKX1yZW1vdmVGZWF0dXJlU3RhdGUodCxlKXtyZXR1cm4gdGhpcy5zdHlsZS5yZW1vdmVGZWF0dXJlU3RhdGUodCxlKSx0aGlzLl91cGRhdGUoKX1nZXRGZWF0dXJlU3RhdGUodCl7cmV0dXJuIHRoaXMuc3R5bGUuZ2V0RmVhdHVyZVN0YXRlKHQpfWdldENvbnRhaW5lcigpe3JldHVybiB0aGlzLl9jb250YWluZXJ9Z2V0Q2FudmFzQ29udGFpbmVyKCl7cmV0dXJuIHRoaXMuX2NhbnZhc0NvbnRhaW5lcn1nZXRDYW52YXMoKXtyZXR1cm4gdGhpcy5fY2FudmFzfV9jb250YWluZXJEaW1lbnNpb25zKCl7bGV0IHQ9MCxlPTA7cmV0dXJuIHRoaXMuX2NvbnRhaW5lciYmKHQ9dGhpcy5fY29udGFpbmVyLmNsaWVudFdpZHRofHw0MDAsZT10aGlzLl9jb250YWluZXIuY2xpZW50SGVpZ2h0fHwzMDApLFt0LGVdfV9zZXR1cENvbnRhaW5lcigpe2NvbnN0IHQ9dGhpcy5fY29udGFpbmVyO3QuY2xhc3NMaXN0LmFkZChcIm1hcGxpYnJlZ2wtbWFwXCIpO2NvbnN0IGU9dGhpcy5fY2FudmFzQ29udGFpbmVyPXIuY3JlYXRlKFwiZGl2XCIsXCJtYXBsaWJyZWdsLWNhbnZhcy1jb250YWluZXJcIix0KTt0aGlzLl9pbnRlcmFjdGl2ZSYmZS5jbGFzc0xpc3QuYWRkKFwibWFwbGlicmVnbC1pbnRlcmFjdGl2ZVwiKSx0aGlzLl9jYW52YXM9ci5jcmVhdGUoXCJjYW52YXNcIixcIm1hcGxpYnJlZ2wtY2FudmFzXCIsZSksdGhpcy5fY2FudmFzLmFkZEV2ZW50TGlzdGVuZXIoXCJ3ZWJnbGNvbnRleHRsb3N0XCIsdGhpcy5fY29udGV4dExvc3QsITEpLHRoaXMuX2NhbnZhcy5hZGRFdmVudExpc3RlbmVyKFwid2ViZ2xjb250ZXh0cmVzdG9yZWRcIix0aGlzLl9jb250ZXh0UmVzdG9yZWQsITEpLHRoaXMuX2NhbnZhcy5zZXRBdHRyaWJ1dGUoXCJ0YWJpbmRleFwiLHRoaXMuX2ludGVyYWN0aXZlP1wiMFwiOlwiLTFcIiksdGhpcy5fY2FudmFzLnNldEF0dHJpYnV0ZShcImFyaWEtbGFiZWxcIix0aGlzLl9nZXRVSVN0cmluZyhcIk1hcC5UaXRsZVwiKSksdGhpcy5fY2FudmFzLnNldEF0dHJpYnV0ZShcInJvbGVcIixcInJlZ2lvblwiKTtjb25zdCBpPXRoaXMuX2NvbnRhaW5lckRpbWVuc2lvbnMoKSxhPXRoaXMuX2dldENsYW1wZWRQaXhlbFJhdGlvKGlbMF0saVsxXSk7dGhpcy5fcmVzaXplQ2FudmFzKGlbMF0saVsxXSxhKTtjb25zdCBzPXRoaXMuX2NvbnRyb2xDb250YWluZXI9ci5jcmVhdGUoXCJkaXZcIixcIm1hcGxpYnJlZ2wtY29udHJvbC1jb250YWluZXJcIix0KSxvPXRoaXMuX2NvbnRyb2xQb3NpdGlvbnM9e307W1widG9wLWxlZnRcIixcInRvcC1yaWdodFwiLFwiYm90dG9tLWxlZnRcIixcImJvdHRvbS1yaWdodFwiXS5mb3JFYWNoKCh0PT57b1t0XT1yLmNyZWF0ZShcImRpdlwiLGBtYXBsaWJyZWdsLWN0cmwtJHt0fSBgLHMpO30pKSx0aGlzLl9jb250YWluZXIuYWRkRXZlbnRMaXN0ZW5lcihcInNjcm9sbFwiLHRoaXMuX29uTWFwU2Nyb2xsLCExKTt9X3Jlc2l6ZUNhbnZhcyh0LGUsaSl7dGhpcy5fY2FudmFzLndpZHRoPU1hdGguZmxvb3IoaSp0KSx0aGlzLl9jYW52YXMuaGVpZ2h0PU1hdGguZmxvb3IoaSplKSx0aGlzLl9jYW52YXMuc3R5bGUud2lkdGg9YCR7dH1weGAsdGhpcy5fY2FudmFzLnN0eWxlLmhlaWdodD1gJHtlfXB4YDt9X3NldHVwUGFpbnRlcigpe2NvbnN0IHQ9e2FscGhhOiEwLHN0ZW5jaWw6ITAsZGVwdGg6ITAsZmFpbElmTWFqb3JQZXJmb3JtYW5jZUNhdmVhdDp0aGlzLl9mYWlsSWZNYWpvclBlcmZvcm1hbmNlQ2F2ZWF0LHByZXNlcnZlRHJhd2luZ0J1ZmZlcjp0aGlzLl9wcmVzZXJ2ZURyYXdpbmdCdWZmZXIsYW50aWFsaWFzOnRoaXMuX2FudGlhbGlhc3x8ITF9O2xldCBlPW51bGw7dGhpcy5fY2FudmFzLmFkZEV2ZW50TGlzdGVuZXIoXCJ3ZWJnbGNvbnRleHRjcmVhdGlvbmVycm9yXCIsKGk9PntlPXtyZXF1ZXN0ZWRBdHRyaWJ1dGVzOnR9LGkmJihlLnN0YXR1c01lc3NhZ2U9aS5zdGF0dXNNZXNzYWdlLGUudHlwZT1pLnR5cGUpO30pLHtvbmNlOiEwfSk7Y29uc3QgaT10aGlzLl9jYW52YXMuZ2V0Q29udGV4dChcIndlYmdsMlwiLHQpfHx0aGlzLl9jYW52YXMuZ2V0Q29udGV4dChcIndlYmdsXCIsdCk7aWYoIWkpe2NvbnN0IHQ9XCJGYWlsZWQgdG8gaW5pdGlhbGl6ZSBXZWJHTFwiO3Rocm93IGU/KGUubWVzc2FnZT10LG5ldyBFcnJvcihKU09OLnN0cmluZ2lmeShlKSkpOm5ldyBFcnJvcih0KX10aGlzLnBhaW50ZXI9bmV3IHZhKGksdGhpcy50cmFuc2Zvcm0pLG4udGVzdFN1cHBvcnQoaSk7fWxvYWRlZCgpe3JldHVybiAhdGhpcy5fc3R5bGVEaXJ0eSYmIXRoaXMuX3NvdXJjZXNEaXJ0eSYmISF0aGlzLnN0eWxlJiZ0aGlzLnN0eWxlLmxvYWRlZCgpfV91cGRhdGUodCl7cmV0dXJuIHRoaXMuc3R5bGUmJnRoaXMuc3R5bGUuX2xvYWRlZD8odGhpcy5fc3R5bGVEaXJ0eT10aGlzLl9zdHlsZURpcnR5fHx0LHRoaXMuX3NvdXJjZXNEaXJ0eT0hMCx0aGlzLnRyaWdnZXJSZXBhaW50KCksdGhpcyk6dGhpc31fcmVxdWVzdFJlbmRlckZyYW1lKHQpe3JldHVybiB0aGlzLl91cGRhdGUoKSx0aGlzLl9yZW5kZXJUYXNrUXVldWUuYWRkKHQpfV9jYW5jZWxSZW5kZXJGcmFtZSh0KXt0aGlzLl9yZW5kZXJUYXNrUXVldWUucmVtb3ZlKHQpO31fcmVuZGVyKHQpe2NvbnN0IGk9dGhpcy5faWRsZVRyaWdnZXJlZD90aGlzLl9mYWRlRHVyYXRpb246MDtpZih0aGlzLnBhaW50ZXIuY29udGV4dC5zZXREaXJ0eSgpLHRoaXMucGFpbnRlci5zZXRCYXNlU3RhdGUoKSx0aGlzLl9yZW5kZXJUYXNrUXVldWUucnVuKHQpLHRoaXMuX3JlbW92ZWQpcmV0dXJuO2xldCBhPSExO2lmKHRoaXMuc3R5bGUmJnRoaXMuX3N0eWxlRGlydHkpe3RoaXMuX3N0eWxlRGlydHk9ITE7Y29uc3QgdD10aGlzLnRyYW5zZm9ybS56b29tLHM9by5ub3coKTt0aGlzLnN0eWxlLnpvb21IaXN0b3J5LnVwZGF0ZSh0LHMpO2NvbnN0IHI9bmV3IGUueih0LHtub3c6cyxmYWRlRHVyYXRpb246aSx6b29tSGlzdG9yeTp0aGlzLnN0eWxlLnpvb21IaXN0b3J5LHRyYW5zaXRpb246dGhpcy5zdHlsZS5nZXRUcmFuc2l0aW9uKCl9KSxuPXIuY3Jvc3NGYWRpbmdGYWN0b3IoKTsxPT09biYmbj09PXRoaXMuX2Nyb3NzRmFkaW5nRmFjdG9yfHwoYT0hMCx0aGlzLl9jcm9zc0ZhZGluZ0ZhY3Rvcj1uKSx0aGlzLnN0eWxlLnVwZGF0ZShyKTt9dGhpcy5zdHlsZSYmdGhpcy5fc291cmNlc0RpcnR5JiYodGhpcy5fc291cmNlc0RpcnR5PSExLHRoaXMuc3R5bGUuX3VwZGF0ZVNvdXJjZXModGhpcy50cmFuc2Zvcm0pKSx0aGlzLnRlcnJhaW4/KHRoaXMudGVycmFpbi5zb3VyY2VDYWNoZS51cGRhdGUodGhpcy50cmFuc2Zvcm0sdGhpcy50ZXJyYWluKSx0aGlzLnRyYW5zZm9ybS5taW5FbGV2YXRpb25Gb3JDdXJyZW50VGlsZT10aGlzLnRlcnJhaW4uZ2V0TWluVGlsZUVsZXZhdGlvbkZvckxuZ0xhdFpvb20odGhpcy50cmFuc2Zvcm0uY2VudGVyLHRoaXMudHJhbnNmb3JtLnRpbGVab29tKSx0aGlzLl9lbGV2YXRpb25GcmVlemV8fCh0aGlzLnRyYW5zZm9ybS5lbGV2YXRpb249dGhpcy50ZXJyYWluLmdldEVsZXZhdGlvbkZvckxuZ0xhdFpvb20odGhpcy50cmFuc2Zvcm0uY2VudGVyLHRoaXMudHJhbnNmb3JtLnRpbGVab29tKSkpOih0aGlzLnRyYW5zZm9ybS5taW5FbGV2YXRpb25Gb3JDdXJyZW50VGlsZT0wLHRoaXMudHJhbnNmb3JtLmVsZXZhdGlvbj0wKSx0aGlzLl9wbGFjZW1lbnREaXJ0eT10aGlzLnN0eWxlJiZ0aGlzLnN0eWxlLl91cGRhdGVQbGFjZW1lbnQodGhpcy5wYWludGVyLnRyYW5zZm9ybSx0aGlzLnNob3dDb2xsaXNpb25Cb3hlcyxpLHRoaXMuX2Nyb3NzU291cmNlQ29sbGlzaW9ucyksdGhpcy5wYWludGVyLnJlbmRlcih0aGlzLnN0eWxlLHtzaG93VGlsZUJvdW5kYXJpZXM6dGhpcy5zaG93VGlsZUJvdW5kYXJpZXMsc2hvd092ZXJkcmF3SW5zcGVjdG9yOnRoaXMuX3Nob3dPdmVyZHJhd0luc3BlY3Rvcixyb3RhdGluZzp0aGlzLmlzUm90YXRpbmcoKSx6b29taW5nOnRoaXMuaXNab29taW5nKCksbW92aW5nOnRoaXMuaXNNb3ZpbmcoKSxmYWRlRHVyYXRpb246aSxzaG93UGFkZGluZzp0aGlzLnNob3dQYWRkaW5nfSksdGhpcy5maXJlKG5ldyBlLmsoXCJyZW5kZXJcIikpLHRoaXMubG9hZGVkKCkmJiF0aGlzLl9sb2FkZWQmJih0aGlzLl9sb2FkZWQ9ITAsZS5iZi5tYXJrKGUuYmcubG9hZCksdGhpcy5maXJlKG5ldyBlLmsoXCJsb2FkXCIpKSksdGhpcy5zdHlsZSYmKHRoaXMuc3R5bGUuaGFzVHJhbnNpdGlvbnMoKXx8YSkmJih0aGlzLl9zdHlsZURpcnR5PSEwKSx0aGlzLnN0eWxlJiYhdGhpcy5fcGxhY2VtZW50RGlydHkmJnRoaXMuc3R5bGUuX3JlbGVhc2VTeW1ib2xGYWRlVGlsZXMoKTtjb25zdCBzPXRoaXMuX3NvdXJjZXNEaXJ0eXx8dGhpcy5fc3R5bGVEaXJ0eXx8dGhpcy5fcGxhY2VtZW50RGlydHk7cmV0dXJuIHN8fHRoaXMuX3JlcGFpbnQ/dGhpcy50cmlnZ2VyUmVwYWludCgpOiF0aGlzLmlzTW92aW5nKCkmJnRoaXMubG9hZGVkKCkmJnRoaXMuZmlyZShuZXcgZS5rKFwiaWRsZVwiKSksIXRoaXMuX2xvYWRlZHx8dGhpcy5fZnVsbHlMb2FkZWR8fHN8fCh0aGlzLl9mdWxseUxvYWRlZD0hMCxlLmJmLm1hcmsoZS5iZy5mdWxsTG9hZCkpLHRoaXN9cmVkcmF3KCl7cmV0dXJuIHRoaXMuc3R5bGUmJih0aGlzLl9mcmFtZVJlcXVlc3QmJih0aGlzLl9mcmFtZVJlcXVlc3QuYWJvcnQoKSx0aGlzLl9mcmFtZVJlcXVlc3Q9bnVsbCksdGhpcy5fcmVuZGVyKDApKSx0aGlzfXJlbW92ZSgpe3ZhciB0O3RoaXMuX2hhc2gmJnRoaXMuX2hhc2gucmVtb3ZlKCk7Zm9yKGNvbnN0IHQgb2YgdGhpcy5fY29udHJvbHMpdC5vblJlbW92ZSh0aGlzKTt0aGlzLl9jb250cm9scz1bXSx0aGlzLl9mcmFtZVJlcXVlc3QmJih0aGlzLl9mcmFtZVJlcXVlc3QuYWJvcnQoKSx0aGlzLl9mcmFtZVJlcXVlc3Q9bnVsbCksdGhpcy5fcmVuZGVyVGFza1F1ZXVlLmNsZWFyKCksdGhpcy5wYWludGVyLmRlc3Ryb3koKSx0aGlzLmhhbmRsZXJzLmRlc3Ryb3koKSxkZWxldGUgdGhpcy5oYW5kbGVycyx0aGlzLnNldFN0eWxlKG51bGwpLFwidW5kZWZpbmVkXCIhPXR5cGVvZiB3aW5kb3cmJnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJvbmxpbmVcIix0aGlzLl9vbldpbmRvd09ubGluZSwhMSksXy5yZW1vdmVUaHJvdHRsZUNvbnRyb2wodGhpcy5faW1hZ2VRdWV1ZUhhbmRsZSksbnVsbD09PSh0PXRoaXMuX3Jlc2l6ZU9ic2VydmVyKXx8dm9pZCAwPT09dHx8dC5kaXNjb25uZWN0KCk7Y29uc3QgaT10aGlzLnBhaW50ZXIuY29udGV4dC5nbC5nZXRFeHRlbnNpb24oXCJXRUJHTF9sb3NlX2NvbnRleHRcIik7KG51bGw9PWk/dm9pZCAwOmkubG9zZUNvbnRleHQpJiZpLmxvc2VDb250ZXh0KCksdGhpcy5fY2FudmFzLnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJ3ZWJnbGNvbnRleHRyZXN0b3JlZFwiLHRoaXMuX2NvbnRleHRSZXN0b3JlZCwhMSksdGhpcy5fY2FudmFzLnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJ3ZWJnbGNvbnRleHRsb3N0XCIsdGhpcy5fY29udGV4dExvc3QsITEpLHIucmVtb3ZlKHRoaXMuX2NhbnZhc0NvbnRhaW5lciksci5yZW1vdmUodGhpcy5fY29udHJvbENvbnRhaW5lciksdGhpcy5fY29udGFpbmVyLmNsYXNzTGlzdC5yZW1vdmUoXCJtYXBsaWJyZWdsLW1hcFwiKSxlLmJmLmNsZWFyTWV0cmljcygpLHRoaXMuX3JlbW92ZWQ9ITAsdGhpcy5maXJlKG5ldyBlLmsoXCJyZW1vdmVcIikpO310cmlnZ2VyUmVwYWludCgpe3RoaXMuc3R5bGUmJiF0aGlzLl9mcmFtZVJlcXVlc3QmJih0aGlzLl9mcmFtZVJlcXVlc3Q9bmV3IEFib3J0Q29udHJvbGxlcixvLmZyYW1lQXN5bmModGhpcy5fZnJhbWVSZXF1ZXN0KS50aGVuKCh0PT57ZS5iZi5mcmFtZSh0KSx0aGlzLl9mcmFtZVJlcXVlc3Q9bnVsbCx0aGlzLl9yZW5kZXIodCk7fSkpLmNhdGNoKCgoKT0+e30pKSk7fWdldCBzaG93VGlsZUJvdW5kYXJpZXMoKXtyZXR1cm4gISF0aGlzLl9zaG93VGlsZUJvdW5kYXJpZXN9c2V0IHNob3dUaWxlQm91bmRhcmllcyh0KXt0aGlzLl9zaG93VGlsZUJvdW5kYXJpZXMhPT10JiYodGhpcy5fc2hvd1RpbGVCb3VuZGFyaWVzPXQsdGhpcy5fdXBkYXRlKCkpO31nZXQgc2hvd1BhZGRpbmcoKXtyZXR1cm4gISF0aGlzLl9zaG93UGFkZGluZ31zZXQgc2hvd1BhZGRpbmcodCl7dGhpcy5fc2hvd1BhZGRpbmchPT10JiYodGhpcy5fc2hvd1BhZGRpbmc9dCx0aGlzLl91cGRhdGUoKSk7fWdldCBzaG93Q29sbGlzaW9uQm94ZXMoKXtyZXR1cm4gISF0aGlzLl9zaG93Q29sbGlzaW9uQm94ZXN9c2V0IHNob3dDb2xsaXNpb25Cb3hlcyh0KXt0aGlzLl9zaG93Q29sbGlzaW9uQm94ZXMhPT10JiYodGhpcy5fc2hvd0NvbGxpc2lvbkJveGVzPXQsdD90aGlzLnN0eWxlLl9nZW5lcmF0ZUNvbGxpc2lvbkJveGVzKCk6dGhpcy5fdXBkYXRlKCkpO31nZXQgc2hvd092ZXJkcmF3SW5zcGVjdG9yKCl7cmV0dXJuICEhdGhpcy5fc2hvd092ZXJkcmF3SW5zcGVjdG9yfXNldCBzaG93T3ZlcmRyYXdJbnNwZWN0b3IodCl7dGhpcy5fc2hvd092ZXJkcmF3SW5zcGVjdG9yIT09dCYmKHRoaXMuX3Nob3dPdmVyZHJhd0luc3BlY3Rvcj10LHRoaXMuX3VwZGF0ZSgpKTt9Z2V0IHJlcGFpbnQoKXtyZXR1cm4gISF0aGlzLl9yZXBhaW50fXNldCByZXBhaW50KHQpe3RoaXMuX3JlcGFpbnQhPT10JiYodGhpcy5fcmVwYWludD10LHRoaXMudHJpZ2dlclJlcGFpbnQoKSk7fWdldCB2ZXJ0aWNlcygpe3JldHVybiAhIXRoaXMuX3ZlcnRpY2VzfXNldCB2ZXJ0aWNlcyh0KXt0aGlzLl92ZXJ0aWNlcz10LHRoaXMuX3VwZGF0ZSgpO31nZXQgdmVyc2lvbigpe3JldHVybiBMc31nZXRDYW1lcmFUYXJnZXRFbGV2YXRpb24oKXtyZXR1cm4gdGhpcy50cmFuc2Zvcm0uZWxldmF0aW9ufX0sdC5NYXBNb3VzZUV2ZW50PWthLHQuTWFwVG91Y2hFdmVudD1MYSx0Lk1hcFdoZWVsRXZlbnQ9RmEsdC5NYXJrZXI9VnMsdC5OYXZpZ2F0aW9uQ29udHJvbD1jbGFzc3tjb25zdHJ1Y3Rvcih0KXt0aGlzLl91cGRhdGVab29tQnV0dG9ucz0oKT0+e2NvbnN0IHQ9dGhpcy5fbWFwLmdldFpvb20oKSxlPXQ9PT10aGlzLl9tYXAuZ2V0TWF4Wm9vbSgpLGk9dD09PXRoaXMuX21hcC5nZXRNaW5ab29tKCk7dGhpcy5fem9vbUluQnV0dG9uLmRpc2FibGVkPWUsdGhpcy5fem9vbU91dEJ1dHRvbi5kaXNhYmxlZD1pLHRoaXMuX3pvb21JbkJ1dHRvbi5zZXRBdHRyaWJ1dGUoXCJhcmlhLWRpc2FibGVkXCIsZS50b1N0cmluZygpKSx0aGlzLl96b29tT3V0QnV0dG9uLnNldEF0dHJpYnV0ZShcImFyaWEtZGlzYWJsZWRcIixpLnRvU3RyaW5nKCkpO30sdGhpcy5fcm90YXRlQ29tcGFzc0Fycm93PSgpPT57Y29uc3QgdD10aGlzLm9wdGlvbnMudmlzdWFsaXplUGl0Y2g/YHNjYWxlKCR7MS9NYXRoLnBvdyhNYXRoLmNvcyh0aGlzLl9tYXAudHJhbnNmb3JtLnBpdGNoKihNYXRoLlBJLzE4MCkpLC41KX0pIHJvdGF0ZVgoJHt0aGlzLl9tYXAudHJhbnNmb3JtLnBpdGNofWRlZykgcm90YXRlWigke3RoaXMuX21hcC50cmFuc2Zvcm0uYW5nbGUqKDE4MC9NYXRoLlBJKX1kZWcpYDpgcm90YXRlKCR7dGhpcy5fbWFwLnRyYW5zZm9ybS5hbmdsZSooMTgwL01hdGguUEkpfWRlZylgO3RoaXMuX2NvbXBhc3NJY29uLnN0eWxlLnRyYW5zZm9ybT10O30sdGhpcy5fc2V0QnV0dG9uVGl0bGU9KHQsZSk9Pntjb25zdCBpPXRoaXMuX21hcC5fZ2V0VUlTdHJpbmcoYE5hdmlnYXRpb25Db250cm9sLiR7ZX1gKTt0LnRpdGxlPWksdC5zZXRBdHRyaWJ1dGUoXCJhcmlhLWxhYmVsXCIsaSk7fSx0aGlzLm9wdGlvbnM9ZS5lKHt9LE9zLHQpLHRoaXMuX2NvbnRhaW5lcj1yLmNyZWF0ZShcImRpdlwiLFwibWFwbGlicmVnbC1jdHJsIG1hcGxpYnJlZ2wtY3RybC1ncm91cFwiKSx0aGlzLl9jb250YWluZXIuYWRkRXZlbnRMaXN0ZW5lcihcImNvbnRleHRtZW51XCIsKHQ9PnQucHJldmVudERlZmF1bHQoKSkpLHRoaXMub3B0aW9ucy5zaG93Wm9vbSYmKHRoaXMuX3pvb21JbkJ1dHRvbj10aGlzLl9jcmVhdGVCdXR0b24oXCJtYXBsaWJyZWdsLWN0cmwtem9vbS1pblwiLCh0PT50aGlzLl9tYXAuem9vbUluKHt9LHtvcmlnaW5hbEV2ZW50OnR9KSkpLHIuY3JlYXRlKFwic3BhblwiLFwibWFwbGlicmVnbC1jdHJsLWljb25cIix0aGlzLl96b29tSW5CdXR0b24pLnNldEF0dHJpYnV0ZShcImFyaWEtaGlkZGVuXCIsXCJ0cnVlXCIpLHRoaXMuX3pvb21PdXRCdXR0b249dGhpcy5fY3JlYXRlQnV0dG9uKFwibWFwbGlicmVnbC1jdHJsLXpvb20tb3V0XCIsKHQ9PnRoaXMuX21hcC56b29tT3V0KHt9LHtvcmlnaW5hbEV2ZW50OnR9KSkpLHIuY3JlYXRlKFwic3BhblwiLFwibWFwbGlicmVnbC1jdHJsLWljb25cIix0aGlzLl96b29tT3V0QnV0dG9uKS5zZXRBdHRyaWJ1dGUoXCJhcmlhLWhpZGRlblwiLFwidHJ1ZVwiKSksdGhpcy5vcHRpb25zLnNob3dDb21wYXNzJiYodGhpcy5fY29tcGFzcz10aGlzLl9jcmVhdGVCdXR0b24oXCJtYXBsaWJyZWdsLWN0cmwtY29tcGFzc1wiLCh0PT57dGhpcy5vcHRpb25zLnZpc3VhbGl6ZVBpdGNoP3RoaXMuX21hcC5yZXNldE5vcnRoUGl0Y2goe30se29yaWdpbmFsRXZlbnQ6dH0pOnRoaXMuX21hcC5yZXNldE5vcnRoKHt9LHtvcmlnaW5hbEV2ZW50OnR9KTt9KSksdGhpcy5fY29tcGFzc0ljb249ci5jcmVhdGUoXCJzcGFuXCIsXCJtYXBsaWJyZWdsLWN0cmwtaWNvblwiLHRoaXMuX2NvbXBhc3MpLHRoaXMuX2NvbXBhc3NJY29uLnNldEF0dHJpYnV0ZShcImFyaWEtaGlkZGVuXCIsXCJ0cnVlXCIpKTt9b25BZGQodCl7cmV0dXJuIHRoaXMuX21hcD10LHRoaXMub3B0aW9ucy5zaG93Wm9vbSYmKHRoaXMuX3NldEJ1dHRvblRpdGxlKHRoaXMuX3pvb21JbkJ1dHRvbixcIlpvb21JblwiKSx0aGlzLl9zZXRCdXR0b25UaXRsZSh0aGlzLl96b29tT3V0QnV0dG9uLFwiWm9vbU91dFwiKSx0aGlzLl9tYXAub24oXCJ6b29tXCIsdGhpcy5fdXBkYXRlWm9vbUJ1dHRvbnMpLHRoaXMuX3VwZGF0ZVpvb21CdXR0b25zKCkpLHRoaXMub3B0aW9ucy5zaG93Q29tcGFzcyYmKHRoaXMuX3NldEJ1dHRvblRpdGxlKHRoaXMuX2NvbXBhc3MsXCJSZXNldEJlYXJpbmdcIiksdGhpcy5vcHRpb25zLnZpc3VhbGl6ZVBpdGNoJiZ0aGlzLl9tYXAub24oXCJwaXRjaFwiLHRoaXMuX3JvdGF0ZUNvbXBhc3NBcnJvdyksdGhpcy5fbWFwLm9uKFwicm90YXRlXCIsdGhpcy5fcm90YXRlQ29tcGFzc0Fycm93KSx0aGlzLl9yb3RhdGVDb21wYXNzQXJyb3coKSx0aGlzLl9oYW5kbGVyPW5ldyBOcyh0aGlzLl9tYXAsdGhpcy5fY29tcGFzcyx0aGlzLm9wdGlvbnMudmlzdWFsaXplUGl0Y2gpKSx0aGlzLl9jb250YWluZXJ9b25SZW1vdmUoKXtyLnJlbW92ZSh0aGlzLl9jb250YWluZXIpLHRoaXMub3B0aW9ucy5zaG93Wm9vbSYmdGhpcy5fbWFwLm9mZihcInpvb21cIix0aGlzLl91cGRhdGVab29tQnV0dG9ucyksdGhpcy5vcHRpb25zLnNob3dDb21wYXNzJiYodGhpcy5vcHRpb25zLnZpc3VhbGl6ZVBpdGNoJiZ0aGlzLl9tYXAub2ZmKFwicGl0Y2hcIix0aGlzLl9yb3RhdGVDb21wYXNzQXJyb3cpLHRoaXMuX21hcC5vZmYoXCJyb3RhdGVcIix0aGlzLl9yb3RhdGVDb21wYXNzQXJyb3cpLHRoaXMuX2hhbmRsZXIub2ZmKCksZGVsZXRlIHRoaXMuX2hhbmRsZXIpLGRlbGV0ZSB0aGlzLl9tYXA7fV9jcmVhdGVCdXR0b24odCxlKXtjb25zdCBpPXIuY3JlYXRlKFwiYnV0dG9uXCIsdCx0aGlzLl9jb250YWluZXIpO3JldHVybiBpLnR5cGU9XCJidXR0b25cIixpLmFkZEV2ZW50TGlzdGVuZXIoXCJjbGlja1wiLGUpLGl9fSx0LlBvcHVwPWNsYXNzIGV4dGVuZHMgZS5Fe2NvbnN0cnVjdG9yKHQpe3N1cGVyKCksdGhpcy5yZW1vdmU9KCk9Pih0aGlzLl9jb250ZW50JiZyLnJlbW92ZSh0aGlzLl9jb250ZW50KSx0aGlzLl9jb250YWluZXImJihyLnJlbW92ZSh0aGlzLl9jb250YWluZXIpLGRlbGV0ZSB0aGlzLl9jb250YWluZXIpLHRoaXMuX21hcCYmKHRoaXMuX21hcC5vZmYoXCJtb3ZlXCIsdGhpcy5fdXBkYXRlKSx0aGlzLl9tYXAub2ZmKFwibW92ZVwiLHRoaXMuX29uQ2xvc2UpLHRoaXMuX21hcC5vZmYoXCJjbGlja1wiLHRoaXMuX29uQ2xvc2UpLHRoaXMuX21hcC5vZmYoXCJyZW1vdmVcIix0aGlzLnJlbW92ZSksdGhpcy5fbWFwLm9mZihcIm1vdXNlbW92ZVwiLHRoaXMuX29uTW91c2VNb3ZlKSx0aGlzLl9tYXAub2ZmKFwibW91c2V1cFwiLHRoaXMuX29uTW91c2VVcCksdGhpcy5fbWFwLm9mZihcImRyYWdcIix0aGlzLl9vbkRyYWcpLHRoaXMuX21hcC5fY2FudmFzQ29udGFpbmVyLmNsYXNzTGlzdC5yZW1vdmUoXCJtYXBsaWJyZWdsLXRyYWNrLXBvaW50ZXJcIiksZGVsZXRlIHRoaXMuX21hcCx0aGlzLmZpcmUobmV3IGUuayhcImNsb3NlXCIpKSksdGhpcyksdGhpcy5fb25Nb3VzZVVwPXQ9Pnt0aGlzLl91cGRhdGUodC5wb2ludCk7fSx0aGlzLl9vbk1vdXNlTW92ZT10PT57dGhpcy5fdXBkYXRlKHQucG9pbnQpO30sdGhpcy5fb25EcmFnPXQ9Pnt0aGlzLl91cGRhdGUodC5wb2ludCk7fSx0aGlzLl91cGRhdGU9dD0+e3ZhciBlO2lmKCF0aGlzLl9tYXB8fCF0aGlzLl9sbmdMYXQmJiF0aGlzLl90cmFja1BvaW50ZXJ8fCF0aGlzLl9jb250ZW50KXJldHVybjtpZighdGhpcy5fY29udGFpbmVyKXtpZih0aGlzLl9jb250YWluZXI9ci5jcmVhdGUoXCJkaXZcIixcIm1hcGxpYnJlZ2wtcG9wdXBcIix0aGlzLl9tYXAuZ2V0Q29udGFpbmVyKCkpLHRoaXMuX3RpcD1yLmNyZWF0ZShcImRpdlwiLFwibWFwbGlicmVnbC1wb3B1cC10aXBcIix0aGlzLl9jb250YWluZXIpLHRoaXMuX2NvbnRhaW5lci5hcHBlbmRDaGlsZCh0aGlzLl9jb250ZW50KSx0aGlzLm9wdGlvbnMuY2xhc3NOYW1lKWZvcihjb25zdCB0IG9mIHRoaXMub3B0aW9ucy5jbGFzc05hbWUuc3BsaXQoXCIgXCIpKXRoaXMuX2NvbnRhaW5lci5jbGFzc0xpc3QuYWRkKHQpO3RoaXMuX2Nsb3NlQnV0dG9uJiZ0aGlzLl9jbG9zZUJ1dHRvbi5zZXRBdHRyaWJ1dGUoXCJhcmlhLWxhYmVsXCIsdGhpcy5fbWFwLl9nZXRVSVN0cmluZyhcIlBvcHVwLkNsb3NlXCIpKSx0aGlzLl90cmFja1BvaW50ZXImJnRoaXMuX2NvbnRhaW5lci5jbGFzc0xpc3QuYWRkKFwibWFwbGlicmVnbC1wb3B1cC10cmFjay1wb2ludGVyXCIpO31pZih0aGlzLm9wdGlvbnMubWF4V2lkdGgmJnRoaXMuX2NvbnRhaW5lci5zdHlsZS5tYXhXaWR0aCE9PXRoaXMub3B0aW9ucy5tYXhXaWR0aCYmKHRoaXMuX2NvbnRhaW5lci5zdHlsZS5tYXhXaWR0aD10aGlzLm9wdGlvbnMubWF4V2lkdGgpLHRoaXMuX2xuZ0xhdD10aGlzLl9tYXAudHJhbnNmb3JtLnJlbmRlcldvcmxkQ29waWVzJiYhdGhpcy5fdHJhY2tQb2ludGVyP2pzKHRoaXMuX2xuZ0xhdCx0aGlzLl9mbGF0UG9zLHRoaXMuX21hcC50cmFuc2Zvcm0pOm51bGw9PT0oZT10aGlzLl9sbmdMYXQpfHx2b2lkIDA9PT1lP3ZvaWQgMDplLndyYXAoKSx0aGlzLl90cmFja1BvaW50ZXImJiF0KXJldHVybjtjb25zdCBpPXRoaXMuX2ZsYXRQb3M9dGhpcy5fcG9zPXRoaXMuX3RyYWNrUG9pbnRlciYmdD90OnRoaXMuX21hcC5wcm9qZWN0KHRoaXMuX2xuZ0xhdCk7dGhpcy5fbWFwLnRlcnJhaW4mJih0aGlzLl9mbGF0UG9zPXRoaXMuX3RyYWNrUG9pbnRlciYmdD90OnRoaXMuX21hcC50cmFuc2Zvcm0ubG9jYXRpb25Qb2ludCh0aGlzLl9sbmdMYXQpKTtsZXQgYT10aGlzLm9wdGlvbnMuYW5jaG9yO2NvbnN0IHM9UXModGhpcy5vcHRpb25zLm9mZnNldCk7aWYoIWEpe2NvbnN0IHQ9dGhpcy5fY29udGFpbmVyLm9mZnNldFdpZHRoLGU9dGhpcy5fY29udGFpbmVyLm9mZnNldEhlaWdodDtsZXQgbztvPWkueStzLmJvdHRvbS55PGU/W1widG9wXCJdOmkueT50aGlzLl9tYXAudHJhbnNmb3JtLmhlaWdodC1lP1tcImJvdHRvbVwiXTpbXSxpLng8dC8yP28ucHVzaChcImxlZnRcIik6aS54PnRoaXMuX21hcC50cmFuc2Zvcm0ud2lkdGgtdC8yJiZvLnB1c2goXCJyaWdodFwiKSxhPTA9PT1vLmxlbmd0aD9cImJvdHRvbVwiOm8uam9pbihcIi1cIik7fWxldCBvPWkuYWRkKHNbYV0pO3RoaXMub3B0aW9ucy5zdWJwaXhlbFBvc2l0aW9uaW5nfHwobz1vLnJvdW5kKCkpLHIuc2V0VHJhbnNmb3JtKHRoaXMuX2NvbnRhaW5lcixgJHtac1thXX0gdHJhbnNsYXRlKCR7by54fXB4LCR7by55fXB4KWApLHFzKHRoaXMuX2NvbnRhaW5lcixhLFwicG9wdXBcIik7fSx0aGlzLl9vbkNsb3NlPSgpPT57dGhpcy5yZW1vdmUoKTt9LHRoaXMub3B0aW9ucz1lLmUoT2JqZWN0LmNyZWF0ZShKcyksdCk7fWFkZFRvKHQpe3JldHVybiB0aGlzLl9tYXAmJnRoaXMucmVtb3ZlKCksdGhpcy5fbWFwPXQsdGhpcy5vcHRpb25zLmNsb3NlT25DbGljayYmdGhpcy5fbWFwLm9uKFwiY2xpY2tcIix0aGlzLl9vbkNsb3NlKSx0aGlzLm9wdGlvbnMuY2xvc2VPbk1vdmUmJnRoaXMuX21hcC5vbihcIm1vdmVcIix0aGlzLl9vbkNsb3NlKSx0aGlzLl9tYXAub24oXCJyZW1vdmVcIix0aGlzLnJlbW92ZSksdGhpcy5fdXBkYXRlKCksdGhpcy5fZm9jdXNGaXJzdEVsZW1lbnQoKSx0aGlzLl90cmFja1BvaW50ZXI/KHRoaXMuX21hcC5vbihcIm1vdXNlbW92ZVwiLHRoaXMuX29uTW91c2VNb3ZlKSx0aGlzLl9tYXAub24oXCJtb3VzZXVwXCIsdGhpcy5fb25Nb3VzZVVwKSx0aGlzLl9jb250YWluZXImJnRoaXMuX2NvbnRhaW5lci5jbGFzc0xpc3QuYWRkKFwibWFwbGlicmVnbC1wb3B1cC10cmFjay1wb2ludGVyXCIpLHRoaXMuX21hcC5fY2FudmFzQ29udGFpbmVyLmNsYXNzTGlzdC5hZGQoXCJtYXBsaWJyZWdsLXRyYWNrLXBvaW50ZXJcIikpOnRoaXMuX21hcC5vbihcIm1vdmVcIix0aGlzLl91cGRhdGUpLHRoaXMuZmlyZShuZXcgZS5rKFwib3BlblwiKSksdGhpc31pc09wZW4oKXtyZXR1cm4gISF0aGlzLl9tYXB9Z2V0TG5nTGF0KCl7cmV0dXJuIHRoaXMuX2xuZ0xhdH1zZXRMbmdMYXQodCl7cmV0dXJuIHRoaXMuX2xuZ0xhdD1lLk4uY29udmVydCh0KSx0aGlzLl9wb3M9bnVsbCx0aGlzLl9mbGF0UG9zPW51bGwsdGhpcy5fdHJhY2tQb2ludGVyPSExLHRoaXMuX3VwZGF0ZSgpLHRoaXMuX21hcCYmKHRoaXMuX21hcC5vbihcIm1vdmVcIix0aGlzLl91cGRhdGUpLHRoaXMuX21hcC5vZmYoXCJtb3VzZW1vdmVcIix0aGlzLl9vbk1vdXNlTW92ZSksdGhpcy5fY29udGFpbmVyJiZ0aGlzLl9jb250YWluZXIuY2xhc3NMaXN0LnJlbW92ZShcIm1hcGxpYnJlZ2wtcG9wdXAtdHJhY2stcG9pbnRlclwiKSx0aGlzLl9tYXAuX2NhbnZhc0NvbnRhaW5lci5jbGFzc0xpc3QucmVtb3ZlKFwibWFwbGlicmVnbC10cmFjay1wb2ludGVyXCIpKSx0aGlzfXRyYWNrUG9pbnRlcigpe3JldHVybiB0aGlzLl90cmFja1BvaW50ZXI9ITAsdGhpcy5fcG9zPW51bGwsdGhpcy5fZmxhdFBvcz1udWxsLHRoaXMuX3VwZGF0ZSgpLHRoaXMuX21hcCYmKHRoaXMuX21hcC5vZmYoXCJtb3ZlXCIsdGhpcy5fdXBkYXRlKSx0aGlzLl9tYXAub24oXCJtb3VzZW1vdmVcIix0aGlzLl9vbk1vdXNlTW92ZSksdGhpcy5fbWFwLm9uKFwiZHJhZ1wiLHRoaXMuX29uRHJhZyksdGhpcy5fY29udGFpbmVyJiZ0aGlzLl9jb250YWluZXIuY2xhc3NMaXN0LmFkZChcIm1hcGxpYnJlZ2wtcG9wdXAtdHJhY2stcG9pbnRlclwiKSx0aGlzLl9tYXAuX2NhbnZhc0NvbnRhaW5lci5jbGFzc0xpc3QuYWRkKFwibWFwbGlicmVnbC10cmFjay1wb2ludGVyXCIpKSx0aGlzfWdldEVsZW1lbnQoKXtyZXR1cm4gdGhpcy5fY29udGFpbmVyfXNldFRleHQodCl7cmV0dXJuIHRoaXMuc2V0RE9NQ29udGVudChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSh0KSl9c2V0SFRNTCh0KXtjb25zdCBlPWRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKSxpPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJib2R5XCIpO2xldCBhO2ZvcihpLmlubmVySFRNTD10O2E9aS5maXJzdENoaWxkLGE7KWUuYXBwZW5kQ2hpbGQoYSk7cmV0dXJuIHRoaXMuc2V0RE9NQ29udGVudChlKX1nZXRNYXhXaWR0aCgpe3ZhciB0O3JldHVybiBudWxsPT09KHQ9dGhpcy5fY29udGFpbmVyKXx8dm9pZCAwPT09dD92b2lkIDA6dC5zdHlsZS5tYXhXaWR0aH1zZXRNYXhXaWR0aCh0KXtyZXR1cm4gdGhpcy5vcHRpb25zLm1heFdpZHRoPXQsdGhpcy5fdXBkYXRlKCksdGhpc31zZXRET01Db250ZW50KHQpe2lmKHRoaXMuX2NvbnRlbnQpZm9yKDt0aGlzLl9jb250ZW50Lmhhc0NoaWxkTm9kZXMoKTspdGhpcy5fY29udGVudC5maXJzdENoaWxkJiZ0aGlzLl9jb250ZW50LnJlbW92ZUNoaWxkKHRoaXMuX2NvbnRlbnQuZmlyc3RDaGlsZCk7ZWxzZSB0aGlzLl9jb250ZW50PXIuY3JlYXRlKFwiZGl2XCIsXCJtYXBsaWJyZWdsLXBvcHVwLWNvbnRlbnRcIix0aGlzLl9jb250YWluZXIpO3JldHVybiB0aGlzLl9jb250ZW50LmFwcGVuZENoaWxkKHQpLHRoaXMuX2NyZWF0ZUNsb3NlQnV0dG9uKCksdGhpcy5fdXBkYXRlKCksdGhpcy5fZm9jdXNGaXJzdEVsZW1lbnQoKSx0aGlzfWFkZENsYXNzTmFtZSh0KXtyZXR1cm4gdGhpcy5fY29udGFpbmVyJiZ0aGlzLl9jb250YWluZXIuY2xhc3NMaXN0LmFkZCh0KSx0aGlzfXJlbW92ZUNsYXNzTmFtZSh0KXtyZXR1cm4gdGhpcy5fY29udGFpbmVyJiZ0aGlzLl9jb250YWluZXIuY2xhc3NMaXN0LnJlbW92ZSh0KSx0aGlzfXNldE9mZnNldCh0KXtyZXR1cm4gdGhpcy5vcHRpb25zLm9mZnNldD10LHRoaXMuX3VwZGF0ZSgpLHRoaXN9dG9nZ2xlQ2xhc3NOYW1lKHQpe2lmKHRoaXMuX2NvbnRhaW5lcilyZXR1cm4gdGhpcy5fY29udGFpbmVyLmNsYXNzTGlzdC50b2dnbGUodCl9c2V0U3VicGl4ZWxQb3NpdGlvbmluZyh0KXt0aGlzLm9wdGlvbnMuc3VicGl4ZWxQb3NpdGlvbmluZz10O31fY3JlYXRlQ2xvc2VCdXR0b24oKXt0aGlzLm9wdGlvbnMuY2xvc2VCdXR0b24mJih0aGlzLl9jbG9zZUJ1dHRvbj1yLmNyZWF0ZShcImJ1dHRvblwiLFwibWFwbGlicmVnbC1wb3B1cC1jbG9zZS1idXR0b25cIix0aGlzLl9jb250ZW50KSx0aGlzLl9jbG9zZUJ1dHRvbi50eXBlPVwiYnV0dG9uXCIsdGhpcy5fY2xvc2VCdXR0b24uaW5uZXJIVE1MPVwiJiMyMTU7XCIsdGhpcy5fY2xvc2VCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsdGhpcy5fb25DbG9zZSkpO31fZm9jdXNGaXJzdEVsZW1lbnQoKXtpZighdGhpcy5vcHRpb25zLmZvY3VzQWZ0ZXJPcGVufHwhdGhpcy5fY29udGFpbmVyKXJldHVybjtjb25zdCB0PXRoaXMuX2NvbnRhaW5lci5xdWVyeVNlbGVjdG9yKFlzKTt0JiZ0LmZvY3VzKCk7fX0sdC5SYXN0ZXJERU1UaWxlU291cmNlPUssdC5SYXN0ZXJUaWxlU291cmNlPVgsdC5TY2FsZUNvbnRyb2w9Y2xhc3N7Y29uc3RydWN0b3IodCl7dGhpcy5fb25Nb3ZlPSgpPT57WHModGhpcy5fbWFwLHRoaXMuX2NvbnRhaW5lcix0aGlzLm9wdGlvbnMpO30sdGhpcy5zZXRVbml0PXQ9Pnt0aGlzLm9wdGlvbnMudW5pdD10LFhzKHRoaXMuX21hcCx0aGlzLl9jb250YWluZXIsdGhpcy5vcHRpb25zKTt9LHRoaXMub3B0aW9ucz1PYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sJHMpLHQpO31nZXREZWZhdWx0UG9zaXRpb24oKXtyZXR1cm4gXCJib3R0b20tbGVmdFwifW9uQWRkKHQpe3JldHVybiB0aGlzLl9tYXA9dCx0aGlzLl9jb250YWluZXI9ci5jcmVhdGUoXCJkaXZcIixcIm1hcGxpYnJlZ2wtY3RybCBtYXBsaWJyZWdsLWN0cmwtc2NhbGVcIix0LmdldENvbnRhaW5lcigpKSx0aGlzLl9tYXAub24oXCJtb3ZlXCIsdGhpcy5fb25Nb3ZlKSx0aGlzLl9vbk1vdmUoKSx0aGlzLl9jb250YWluZXJ9b25SZW1vdmUoKXtyLnJlbW92ZSh0aGlzLl9jb250YWluZXIpLHRoaXMuX21hcC5vZmYoXCJtb3ZlXCIsdGhpcy5fb25Nb3ZlKSx0aGlzLl9tYXA9dm9pZCAwO319LHQuU2Nyb2xsWm9vbUhhbmRsZXI9dXMsdC5TdHlsZT1kZSx0LlRlcnJhaW5Db250cm9sPWNsYXNze2NvbnN0cnVjdG9yKHQpe3RoaXMuX3RvZ2dsZVRlcnJhaW49KCk9Pnt0aGlzLl9tYXAuZ2V0VGVycmFpbigpP3RoaXMuX21hcC5zZXRUZXJyYWluKG51bGwpOnRoaXMuX21hcC5zZXRUZXJyYWluKHRoaXMub3B0aW9ucyksdGhpcy5fdXBkYXRlVGVycmFpbkljb24oKTt9LHRoaXMuX3VwZGF0ZVRlcnJhaW5JY29uPSgpPT57dGhpcy5fdGVycmFpbkJ1dHRvbi5jbGFzc0xpc3QucmVtb3ZlKFwibWFwbGlicmVnbC1jdHJsLXRlcnJhaW5cIiksdGhpcy5fdGVycmFpbkJ1dHRvbi5jbGFzc0xpc3QucmVtb3ZlKFwibWFwbGlicmVnbC1jdHJsLXRlcnJhaW4tZW5hYmxlZFwiKSx0aGlzLl9tYXAudGVycmFpbj8odGhpcy5fdGVycmFpbkJ1dHRvbi5jbGFzc0xpc3QuYWRkKFwibWFwbGlicmVnbC1jdHJsLXRlcnJhaW4tZW5hYmxlZFwiKSx0aGlzLl90ZXJyYWluQnV0dG9uLnRpdGxlPXRoaXMuX21hcC5fZ2V0VUlTdHJpbmcoXCJUZXJyYWluQ29udHJvbC5EaXNhYmxlXCIpKToodGhpcy5fdGVycmFpbkJ1dHRvbi5jbGFzc0xpc3QuYWRkKFwibWFwbGlicmVnbC1jdHJsLXRlcnJhaW5cIiksdGhpcy5fdGVycmFpbkJ1dHRvbi50aXRsZT10aGlzLl9tYXAuX2dldFVJU3RyaW5nKFwiVGVycmFpbkNvbnRyb2wuRW5hYmxlXCIpKTt9LHRoaXMub3B0aW9ucz10O31vbkFkZCh0KXtyZXR1cm4gdGhpcy5fbWFwPXQsdGhpcy5fY29udGFpbmVyPXIuY3JlYXRlKFwiZGl2XCIsXCJtYXBsaWJyZWdsLWN0cmwgbWFwbGlicmVnbC1jdHJsLWdyb3VwXCIpLHRoaXMuX3RlcnJhaW5CdXR0b249ci5jcmVhdGUoXCJidXR0b25cIixcIm1hcGxpYnJlZ2wtY3RybC10ZXJyYWluXCIsdGhpcy5fY29udGFpbmVyKSxyLmNyZWF0ZShcInNwYW5cIixcIm1hcGxpYnJlZ2wtY3RybC1pY29uXCIsdGhpcy5fdGVycmFpbkJ1dHRvbikuc2V0QXR0cmlidXRlKFwiYXJpYS1oaWRkZW5cIixcInRydWVcIiksdGhpcy5fdGVycmFpbkJ1dHRvbi50eXBlPVwiYnV0dG9uXCIsdGhpcy5fdGVycmFpbkJ1dHRvbi5hZGRFdmVudExpc3RlbmVyKFwiY2xpY2tcIix0aGlzLl90b2dnbGVUZXJyYWluKSx0aGlzLl91cGRhdGVUZXJyYWluSWNvbigpLHRoaXMuX21hcC5vbihcInRlcnJhaW5cIix0aGlzLl91cGRhdGVUZXJyYWluSWNvbiksdGhpcy5fY29udGFpbmVyfW9uUmVtb3ZlKCl7ci5yZW1vdmUodGhpcy5fY29udGFpbmVyKSx0aGlzLl9tYXAub2ZmKFwidGVycmFpblwiLHRoaXMuX3VwZGF0ZVRlcnJhaW5JY29uKSx0aGlzLl9tYXA9dm9pZCAwO319LHQuVHdvRmluZ2Vyc1RvdWNoUGl0Y2hIYW5kbGVyPXJzLHQuVHdvRmluZ2Vyc1RvdWNoUm90YXRlSGFuZGxlcj1zcyx0LlR3b0ZpbmdlcnNUb3VjaFpvb21IYW5kbGVyPWlzLHQuVHdvRmluZ2Vyc1RvdWNoWm9vbVJvdGF0ZUhhbmRsZXI9Z3MsdC5WZWN0b3JUaWxlU291cmNlPSQsdC5WaWRlb1NvdXJjZT10dCx0LmFkZFNvdXJjZVR5cGU9KHQsaSk9PmUuXyh2b2lkIDAsdm9pZCAwLHZvaWQgMCwoZnVuY3Rpb24qKCl7aWYoYXQodCkpdGhyb3cgbmV3IEVycm9yKGBBIHNvdXJjZSB0eXBlIGNhbGxlZCBcIiR7dH1cIiBhbHJlYWR5IGV4aXN0cy5gKTsoKHQsZSk9PntpdFt0XT1lO30pKHQsaSk7fSkpLHQuY2xlYXJQcmV3YXJtZWRSZXNvdXJjZXM9ZnVuY3Rpb24oKXtjb25zdCB0PUI7dCYmKHQuaXNQcmVsb2FkZWQoKSYmMT09PXQubnVtQWN0aXZlKCk/KHQucmVsZWFzZShrKSxCPW51bGwpOmNvbnNvbGUud2FybihcIkNvdWxkIG5vdCBjbGVhciBXZWJXb3JrZXJzIHNpbmNlIHRoZXJlIGFyZSBhY3RpdmUgTWFwIGluc3RhbmNlcyB0aGF0IHN0aWxsIHJlZmVyZW5jZSBpdC4gVGhlIHByZS13YXJtZWQgV2ViV29ya2VyIHBvb2wgY2FuIG9ubHkgYmUgY2xlYXJlZCB3aGVuIGFsbCBtYXAgaW5zdGFuY2VzIGhhdmUgYmVlbiByZW1vdmVkIHdpdGggbWFwLnJlbW92ZSgpXCIpKTt9LHQuZ2V0TWF4UGFyYWxsZWxJbWFnZVJlcXVlc3RzPWZ1bmN0aW9uKCl7cmV0dXJuIGUuYS5NQVhfUEFSQUxMRUxfSU1BR0VfUkVRVUVTVFN9LHQuZ2V0UlRMVGV4dFBsdWdpblN0YXR1cz1mdW5jdGlvbigpe3JldHVybiBudCgpLmdldFJUTFRleHRQbHVnaW5TdGF0dXMoKX0sdC5nZXRWZXJzaW9uPWZ1bmN0aW9uKCl7cmV0dXJuIHRvfSx0LmdldFdvcmtlckNvdW50PWZ1bmN0aW9uKCl7cmV0dXJuIEwud29ya2VyQ291bnR9LHQuZ2V0V29ya2VyVXJsPWZ1bmN0aW9uKCl7cmV0dXJuIGUuYS5XT1JLRVJfVVJMfSx0LmltcG9ydFNjcmlwdEluV29ya2Vycz1mdW5jdGlvbih0KXtyZXR1cm4gaigpLmJyb2FkY2FzdChcIklTXCIsdCl9LHQucHJld2FybT1mdW5jdGlvbigpe04oKS5hY3F1aXJlKGspO30sdC5zZXRNYXhQYXJhbGxlbEltYWdlUmVxdWVzdHM9ZnVuY3Rpb24odCl7ZS5hLk1BWF9QQVJBTExFTF9JTUFHRV9SRVFVRVNUUz10O30sdC5zZXRSVExUZXh0UGx1Z2luPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIG50KCkuc2V0UlRMVGV4dFBsdWdpbih0LGUpfSx0LnNldFdvcmtlckNvdW50PWZ1bmN0aW9uKHQpe0wud29ya2VyQ291bnQ9dDt9LHQuc2V0V29ya2VyVXJsPWZ1bmN0aW9uKHQpe2UuYS5XT1JLRVJfVVJMPXQ7fTt9KSk7XG5cbi8vXG4vLyBPdXIgY3VzdG9tIGludHJvIHByb3ZpZGVzIGEgc3BlY2lhbGl6ZWQgXCJkZWZpbmUoKVwiIGZ1bmN0aW9uLCBjYWxsZWQgYnkgdGhlXG4vLyBBTUQgbW9kdWxlcyBiZWxvdywgdGhhdCBzZXRzIHVwIHRoZSB3b3JrZXIgYmxvYiBVUkwgYW5kIHRoZW4gZXhlY3V0ZXMgdGhlXG4vLyBtYWluIG1vZHVsZSwgc3RvcmluZyBpdHMgZXhwb3J0ZWQgdmFsdWUgYXMgJ21hcGxpYnJlZ2wnXG5cblxudmFyIG1hcGxpYnJlZ2wkMSA9IG1hcGxpYnJlZ2w7XG5cbnJldHVybiBtYXBsaWJyZWdsJDE7XG5cbn0pKTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPW1hcGxpYnJlLWdsLmpzLm1hcFxuIiwidmFyIF9fcG93ID0gTWF0aC5wb3c7XG52YXIgX19hc3luYyA9IChfX3RoaXMsIF9fYXJndW1lbnRzLCBnZW5lcmF0b3IpID0+IHtcbiAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICB2YXIgZnVsZmlsbGVkID0gKHZhbHVlKSA9PiB7XG4gICAgICB0cnkge1xuICAgICAgICBzdGVwKGdlbmVyYXRvci5uZXh0KHZhbHVlKSk7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIHJlamVjdChlKTtcbiAgICAgIH1cbiAgICB9O1xuICAgIHZhciByZWplY3RlZCA9ICh2YWx1ZSkgPT4ge1xuICAgICAgdHJ5IHtcbiAgICAgICAgc3RlcChnZW5lcmF0b3IudGhyb3codmFsdWUpKTtcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgcmVqZWN0KGUpO1xuICAgICAgfVxuICAgIH07XG4gICAgdmFyIHN0ZXAgPSAoeCkgPT4geC5kb25lID8gcmVzb2x2ZSh4LnZhbHVlKSA6IFByb21pc2UucmVzb2x2ZSh4LnZhbHVlKS50aGVuKGZ1bGZpbGxlZCwgcmVqZWN0ZWQpO1xuICAgIHN0ZXAoKGdlbmVyYXRvciA9IGdlbmVyYXRvci5hcHBseShfX3RoaXMsIF9fYXJndW1lbnRzKSkubmV4dCgpKTtcbiAgfSk7XG59O1xuXG4vLyBub2RlX21vZHVsZXMvZmZsYXRlL2VzbS9icm93c2VyLmpzXG52YXIgdTggPSBVaW50OEFycmF5O1xudmFyIHUxNiA9IFVpbnQxNkFycmF5O1xudmFyIGkzMiA9IEludDMyQXJyYXk7XG52YXIgZmxlYiA9IG5ldyB1OChbXG4gIDAsXG4gIDAsXG4gIDAsXG4gIDAsXG4gIDAsXG4gIDAsXG4gIDAsXG4gIDAsXG4gIDEsXG4gIDEsXG4gIDEsXG4gIDEsXG4gIDIsXG4gIDIsXG4gIDIsXG4gIDIsXG4gIDMsXG4gIDMsXG4gIDMsXG4gIDMsXG4gIDQsXG4gIDQsXG4gIDQsXG4gIDQsXG4gIDUsXG4gIDUsXG4gIDUsXG4gIDUsXG4gIDAsXG4gIC8qIHVudXNlZCAqL1xuICAwLFxuICAwLFxuICAvKiBpbXBvc3NpYmxlICovXG4gIDBcbl0pO1xudmFyIGZkZWIgPSBuZXcgdTgoW1xuICAwLFxuICAwLFxuICAwLFxuICAwLFxuICAxLFxuICAxLFxuICAyLFxuICAyLFxuICAzLFxuICAzLFxuICA0LFxuICA0LFxuICA1LFxuICA1LFxuICA2LFxuICA2LFxuICA3LFxuICA3LFxuICA4LFxuICA4LFxuICA5LFxuICA5LFxuICAxMCxcbiAgMTAsXG4gIDExLFxuICAxMSxcbiAgMTIsXG4gIDEyLFxuICAxMyxcbiAgMTMsXG4gIC8qIHVudXNlZCAqL1xuICAwLFxuICAwXG5dKTtcbnZhciBjbGltID0gbmV3IHU4KFsxNiwgMTcsIDE4LCAwLCA4LCA3LCA5LCA2LCAxMCwgNSwgMTEsIDQsIDEyLCAzLCAxMywgMiwgMTQsIDEsIDE1XSk7XG52YXIgZnJlYiA9IGZ1bmN0aW9uKGViLCBzdGFydCkge1xuICB2YXIgYiA9IG5ldyB1MTYoMzEpO1xuICBmb3IgKHZhciBpID0gMDsgaSA8IDMxOyArK2kpIHtcbiAgICBiW2ldID0gc3RhcnQgKz0gMSA8PCBlYltpIC0gMV07XG4gIH1cbiAgdmFyIHIgPSBuZXcgaTMyKGJbMzBdKTtcbiAgZm9yICh2YXIgaSA9IDE7IGkgPCAzMDsgKytpKSB7XG4gICAgZm9yICh2YXIgaiA9IGJbaV07IGogPCBiW2kgKyAxXTsgKytqKSB7XG4gICAgICByW2pdID0gaiAtIGJbaV0gPDwgNSB8IGk7XG4gICAgfVxuICB9XG4gIHJldHVybiB7IGIsIHIgfTtcbn07XG52YXIgX2EgPSBmcmViKGZsZWIsIDIpO1xudmFyIGZsID0gX2EuYjtcbnZhciByZXZmbCA9IF9hLnI7XG5mbFsyOF0gPSAyNTgsIHJldmZsWzI1OF0gPSAyODtcbnZhciBfYiA9IGZyZWIoZmRlYiwgMCk7XG52YXIgZmQgPSBfYi5iO1xudmFyIHJldmZkID0gX2IucjtcbnZhciByZXYgPSBuZXcgdTE2KDMyNzY4KTtcbmZvciAoaSA9IDA7IGkgPCAzMjc2ODsgKytpKSB7XG4gIHggPSAoaSAmIDQzNjkwKSA+PiAxIHwgKGkgJiAyMTg0NSkgPDwgMTtcbiAgeCA9ICh4ICYgNTI0MjgpID4+IDIgfCAoeCAmIDEzMTA3KSA8PCAyO1xuICB4ID0gKHggJiA2MTY4MCkgPj4gNCB8ICh4ICYgMzg1NSkgPDwgNDtcbiAgcmV2W2ldID0gKCh4ICYgNjUyODApID4+IDggfCAoeCAmIDI1NSkgPDwgOCkgPj4gMTtcbn1cbnZhciB4O1xudmFyIGk7XG52YXIgaE1hcCA9IGZ1bmN0aW9uKGNkLCBtYiwgcikge1xuICB2YXIgcyA9IGNkLmxlbmd0aDtcbiAgdmFyIGkgPSAwO1xuICB2YXIgbCA9IG5ldyB1MTYobWIpO1xuICBmb3IgKDsgaSA8IHM7ICsraSkge1xuICAgIGlmIChjZFtpXSlcbiAgICAgICsrbFtjZFtpXSAtIDFdO1xuICB9XG4gIHZhciBsZSA9IG5ldyB1MTYobWIpO1xuICBmb3IgKGkgPSAxOyBpIDwgbWI7ICsraSkge1xuICAgIGxlW2ldID0gbGVbaSAtIDFdICsgbFtpIC0gMV0gPDwgMTtcbiAgfVxuICB2YXIgY287XG4gIGlmIChyKSB7XG4gICAgY28gPSBuZXcgdTE2KDEgPDwgbWIpO1xuICAgIHZhciBydmIgPSAxNSAtIG1iO1xuICAgIGZvciAoaSA9IDA7IGkgPCBzOyArK2kpIHtcbiAgICAgIGlmIChjZFtpXSkge1xuICAgICAgICB2YXIgc3YgPSBpIDw8IDQgfCBjZFtpXTtcbiAgICAgICAgdmFyIHJfMSA9IG1iIC0gY2RbaV07XG4gICAgICAgIHZhciB2ID0gbGVbY2RbaV0gLSAxXSsrIDw8IHJfMTtcbiAgICAgICAgZm9yICh2YXIgbSA9IHYgfCAoMSA8PCByXzEpIC0gMTsgdiA8PSBtOyArK3YpIHtcbiAgICAgICAgICBjb1tyZXZbdl0gPj4gcnZiXSA9IHN2O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9IGVsc2Uge1xuICAgIGNvID0gbmV3IHUxNihzKTtcbiAgICBmb3IgKGkgPSAwOyBpIDwgczsgKytpKSB7XG4gICAgICBpZiAoY2RbaV0pIHtcbiAgICAgICAgY29baV0gPSByZXZbbGVbY2RbaV0gLSAxXSsrXSA+PiAxNSAtIGNkW2ldO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICByZXR1cm4gY287XG59O1xudmFyIGZsdCA9IG5ldyB1OCgyODgpO1xuZm9yIChpID0gMDsgaSA8IDE0NDsgKytpKVxuICBmbHRbaV0gPSA4O1xudmFyIGk7XG5mb3IgKGkgPSAxNDQ7IGkgPCAyNTY7ICsraSlcbiAgZmx0W2ldID0gOTtcbnZhciBpO1xuZm9yIChpID0gMjU2OyBpIDwgMjgwOyArK2kpXG4gIGZsdFtpXSA9IDc7XG52YXIgaTtcbmZvciAoaSA9IDI4MDsgaSA8IDI4ODsgKytpKVxuICBmbHRbaV0gPSA4O1xudmFyIGk7XG52YXIgZmR0ID0gbmV3IHU4KDMyKTtcbmZvciAoaSA9IDA7IGkgPCAzMjsgKytpKVxuICBmZHRbaV0gPSA1O1xudmFyIGk7XG52YXIgZmxybSA9IC8qIEBfX1BVUkVfXyAqLyBoTWFwKGZsdCwgOSwgMSk7XG52YXIgZmRybSA9IC8qIEBfX1BVUkVfXyAqLyBoTWFwKGZkdCwgNSwgMSk7XG52YXIgbWF4ID0gZnVuY3Rpb24oYSkge1xuICB2YXIgbSA9IGFbMF07XG4gIGZvciAodmFyIGkgPSAxOyBpIDwgYS5sZW5ndGg7ICsraSkge1xuICAgIGlmIChhW2ldID4gbSlcbiAgICAgIG0gPSBhW2ldO1xuICB9XG4gIHJldHVybiBtO1xufTtcbnZhciBiaXRzID0gZnVuY3Rpb24oZCwgcCwgbSkge1xuICB2YXIgbyA9IHAgLyA4IHwgMDtcbiAgcmV0dXJuIChkW29dIHwgZFtvICsgMV0gPDwgOCkgPj4gKHAgJiA3KSAmIG07XG59O1xudmFyIGJpdHMxNiA9IGZ1bmN0aW9uKGQsIHApIHtcbiAgdmFyIG8gPSBwIC8gOCB8IDA7XG4gIHJldHVybiAoZFtvXSB8IGRbbyArIDFdIDw8IDggfCBkW28gKyAyXSA8PCAxNikgPj4gKHAgJiA3KTtcbn07XG52YXIgc2hmdCA9IGZ1bmN0aW9uKHApIHtcbiAgcmV0dXJuIChwICsgNykgLyA4IHwgMDtcbn07XG52YXIgc2xjID0gZnVuY3Rpb24odiwgcywgZSkge1xuICBpZiAocyA9PSBudWxsIHx8IHMgPCAwKVxuICAgIHMgPSAwO1xuICBpZiAoZSA9PSBudWxsIHx8IGUgPiB2Lmxlbmd0aClcbiAgICBlID0gdi5sZW5ndGg7XG4gIHZhciBuID0gbmV3IHU4KGUgLSBzKTtcbiAgbi5zZXQodi5zdWJhcnJheShzLCBlKSk7XG4gIHJldHVybiBuO1xufTtcbnZhciBlYyA9IFtcbiAgXCJ1bmV4cGVjdGVkIEVPRlwiLFxuICBcImludmFsaWQgYmxvY2sgdHlwZVwiLFxuICBcImludmFsaWQgbGVuZ3RoL2xpdGVyYWxcIixcbiAgXCJpbnZhbGlkIGRpc3RhbmNlXCIsXG4gIFwic3RyZWFtIGZpbmlzaGVkXCIsXG4gIFwibm8gc3RyZWFtIGhhbmRsZXJcIixcbiAgLFxuICBcIm5vIGNhbGxiYWNrXCIsXG4gIFwiaW52YWxpZCBVVEYtOCBkYXRhXCIsXG4gIFwiZXh0cmEgZmllbGQgdG9vIGxvbmdcIixcbiAgXCJkYXRlIG5vdCBpbiByYW5nZSAxOTgwLTIwOTlcIixcbiAgXCJmaWxlbmFtZSB0b28gbG9uZ1wiLFxuICBcInN0cmVhbSBmaW5pc2hpbmdcIixcbiAgXCJpbnZhbGlkIHppcCBkYXRhXCJcbiAgLy8gZGV0ZXJtaW5lZCBieSB1bmtub3duIGNvbXByZXNzaW9uIG1ldGhvZFxuXTtcbnZhciBlcnIgPSBmdW5jdGlvbihpbmQsIG1zZywgbnQpIHtcbiAgdmFyIGUgPSBuZXcgRXJyb3IobXNnIHx8IGVjW2luZF0pO1xuICBlLmNvZGUgPSBpbmQ7XG4gIGlmIChFcnJvci5jYXB0dXJlU3RhY2tUcmFjZSlcbiAgICBFcnJvci5jYXB0dXJlU3RhY2tUcmFjZShlLCBlcnIpO1xuICBpZiAoIW50KVxuICAgIHRocm93IGU7XG4gIHJldHVybiBlO1xufTtcbnZhciBpbmZsdCA9IGZ1bmN0aW9uKGRhdCwgc3QsIGJ1ZiwgZGljdCkge1xuICB2YXIgc2wgPSBkYXQubGVuZ3RoLCBkbCA9IGRpY3QgPyBkaWN0Lmxlbmd0aCA6IDA7XG4gIGlmICghc2wgfHwgc3QuZiAmJiAhc3QubClcbiAgICByZXR1cm4gYnVmIHx8IG5ldyB1OCgwKTtcbiAgdmFyIG5vQnVmID0gIWJ1ZiB8fCBzdC5pICE9IDI7XG4gIHZhciBub1N0ID0gc3QuaTtcbiAgaWYgKCFidWYpXG4gICAgYnVmID0gbmV3IHU4KHNsICogMyk7XG4gIHZhciBjYnVmID0gZnVuY3Rpb24obDIpIHtcbiAgICB2YXIgYmwgPSBidWYubGVuZ3RoO1xuICAgIGlmIChsMiA+IGJsKSB7XG4gICAgICB2YXIgbmJ1ZiA9IG5ldyB1OChNYXRoLm1heChibCAqIDIsIGwyKSk7XG4gICAgICBuYnVmLnNldChidWYpO1xuICAgICAgYnVmID0gbmJ1ZjtcbiAgICB9XG4gIH07XG4gIHZhciBmaW5hbCA9IHN0LmYgfHwgMCwgcG9zID0gc3QucCB8fCAwLCBidCA9IHN0LmIgfHwgMCwgbG0gPSBzdC5sLCBkbSA9IHN0LmQsIGxidCA9IHN0Lm0sIGRidCA9IHN0Lm47XG4gIHZhciB0YnRzID0gc2wgKiA4O1xuICBkbyB7XG4gICAgaWYgKCFsbSkge1xuICAgICAgZmluYWwgPSBiaXRzKGRhdCwgcG9zLCAxKTtcbiAgICAgIHZhciB0eXBlID0gYml0cyhkYXQsIHBvcyArIDEsIDMpO1xuICAgICAgcG9zICs9IDM7XG4gICAgICBpZiAoIXR5cGUpIHtcbiAgICAgICAgdmFyIHMgPSBzaGZ0KHBvcykgKyA0LCBsID0gZGF0W3MgLSA0XSB8IGRhdFtzIC0gM10gPDwgOCwgdCA9IHMgKyBsO1xuICAgICAgICBpZiAodCA+IHNsKSB7XG4gICAgICAgICAgaWYgKG5vU3QpXG4gICAgICAgICAgICBlcnIoMCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG5vQnVmKVxuICAgICAgICAgIGNidWYoYnQgKyBsKTtcbiAgICAgICAgYnVmLnNldChkYXQuc3ViYXJyYXkocywgdCksIGJ0KTtcbiAgICAgICAgc3QuYiA9IGJ0ICs9IGwsIHN0LnAgPSBwb3MgPSB0ICogOCwgc3QuZiA9IGZpbmFsO1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH0gZWxzZSBpZiAodHlwZSA9PSAxKVxuICAgICAgICBsbSA9IGZscm0sIGRtID0gZmRybSwgbGJ0ID0gOSwgZGJ0ID0gNTtcbiAgICAgIGVsc2UgaWYgKHR5cGUgPT0gMikge1xuICAgICAgICB2YXIgaExpdCA9IGJpdHMoZGF0LCBwb3MsIDMxKSArIDI1NywgaGNMZW4gPSBiaXRzKGRhdCwgcG9zICsgMTAsIDE1KSArIDQ7XG4gICAgICAgIHZhciB0bCA9IGhMaXQgKyBiaXRzKGRhdCwgcG9zICsgNSwgMzEpICsgMTtcbiAgICAgICAgcG9zICs9IDE0O1xuICAgICAgICB2YXIgbGR0ID0gbmV3IHU4KHRsKTtcbiAgICAgICAgdmFyIGNsdCA9IG5ldyB1OCgxOSk7XG4gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgaGNMZW47ICsraSkge1xuICAgICAgICAgIGNsdFtjbGltW2ldXSA9IGJpdHMoZGF0LCBwb3MgKyBpICogMywgNyk7XG4gICAgICAgIH1cbiAgICAgICAgcG9zICs9IGhjTGVuICogMztcbiAgICAgICAgdmFyIGNsYiA9IG1heChjbHQpLCBjbGJtc2sgPSAoMSA8PCBjbGIpIC0gMTtcbiAgICAgICAgdmFyIGNsbSA9IGhNYXAoY2x0LCBjbGIsIDEpO1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHRsOyApIHtcbiAgICAgICAgICB2YXIgciA9IGNsbVtiaXRzKGRhdCwgcG9zLCBjbGJtc2spXTtcbiAgICAgICAgICBwb3MgKz0gciAmIDE1O1xuICAgICAgICAgIHZhciBzID0gciA+PiA0O1xuICAgICAgICAgIGlmIChzIDwgMTYpIHtcbiAgICAgICAgICAgIGxkdFtpKytdID0gcztcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdmFyIGMgPSAwLCBuID0gMDtcbiAgICAgICAgICAgIGlmIChzID09IDE2KVxuICAgICAgICAgICAgICBuID0gMyArIGJpdHMoZGF0LCBwb3MsIDMpLCBwb3MgKz0gMiwgYyA9IGxkdFtpIC0gMV07XG4gICAgICAgICAgICBlbHNlIGlmIChzID09IDE3KVxuICAgICAgICAgICAgICBuID0gMyArIGJpdHMoZGF0LCBwb3MsIDcpLCBwb3MgKz0gMztcbiAgICAgICAgICAgIGVsc2UgaWYgKHMgPT0gMTgpXG4gICAgICAgICAgICAgIG4gPSAxMSArIGJpdHMoZGF0LCBwb3MsIDEyNyksIHBvcyArPSA3O1xuICAgICAgICAgICAgd2hpbGUgKG4tLSlcbiAgICAgICAgICAgICAgbGR0W2krK10gPSBjO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB2YXIgbHQgPSBsZHQuc3ViYXJyYXkoMCwgaExpdCksIGR0ID0gbGR0LnN1YmFycmF5KGhMaXQpO1xuICAgICAgICBsYnQgPSBtYXgobHQpO1xuICAgICAgICBkYnQgPSBtYXgoZHQpO1xuICAgICAgICBsbSA9IGhNYXAobHQsIGxidCwgMSk7XG4gICAgICAgIGRtID0gaE1hcChkdCwgZGJ0LCAxKTtcbiAgICAgIH0gZWxzZVxuICAgICAgICBlcnIoMSk7XG4gICAgICBpZiAocG9zID4gdGJ0cykge1xuICAgICAgICBpZiAobm9TdClcbiAgICAgICAgICBlcnIoMCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAobm9CdWYpXG4gICAgICBjYnVmKGJ0ICsgMTMxMDcyKTtcbiAgICB2YXIgbG1zID0gKDEgPDwgbGJ0KSAtIDEsIGRtcyA9ICgxIDw8IGRidCkgLSAxO1xuICAgIHZhciBscG9zID0gcG9zO1xuICAgIGZvciAoOyA7IGxwb3MgPSBwb3MpIHtcbiAgICAgIHZhciBjID0gbG1bYml0czE2KGRhdCwgcG9zKSAmIGxtc10sIHN5bSA9IGMgPj4gNDtcbiAgICAgIHBvcyArPSBjICYgMTU7XG4gICAgICBpZiAocG9zID4gdGJ0cykge1xuICAgICAgICBpZiAobm9TdClcbiAgICAgICAgICBlcnIoMCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgaWYgKCFjKVxuICAgICAgICBlcnIoMik7XG4gICAgICBpZiAoc3ltIDwgMjU2KVxuICAgICAgICBidWZbYnQrK10gPSBzeW07XG4gICAgICBlbHNlIGlmIChzeW0gPT0gMjU2KSB7XG4gICAgICAgIGxwb3MgPSBwb3MsIGxtID0gbnVsbDtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB2YXIgYWRkID0gc3ltIC0gMjU0O1xuICAgICAgICBpZiAoc3ltID4gMjY0KSB7XG4gICAgICAgICAgdmFyIGkgPSBzeW0gLSAyNTcsIGIgPSBmbGViW2ldO1xuICAgICAgICAgIGFkZCA9IGJpdHMoZGF0LCBwb3MsICgxIDw8IGIpIC0gMSkgKyBmbFtpXTtcbiAgICAgICAgICBwb3MgKz0gYjtcbiAgICAgICAgfVxuICAgICAgICB2YXIgZCA9IGRtW2JpdHMxNihkYXQsIHBvcykgJiBkbXNdLCBkc3ltID0gZCA+PiA0O1xuICAgICAgICBpZiAoIWQpXG4gICAgICAgICAgZXJyKDMpO1xuICAgICAgICBwb3MgKz0gZCAmIDE1O1xuICAgICAgICB2YXIgZHQgPSBmZFtkc3ltXTtcbiAgICAgICAgaWYgKGRzeW0gPiAzKSB7XG4gICAgICAgICAgdmFyIGIgPSBmZGViW2RzeW1dO1xuICAgICAgICAgIGR0ICs9IGJpdHMxNihkYXQsIHBvcykgJiAoMSA8PCBiKSAtIDEsIHBvcyArPSBiO1xuICAgICAgICB9XG4gICAgICAgIGlmIChwb3MgPiB0YnRzKSB7XG4gICAgICAgICAgaWYgKG5vU3QpXG4gICAgICAgICAgICBlcnIoMCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG5vQnVmKVxuICAgICAgICAgIGNidWYoYnQgKyAxMzEwNzIpO1xuICAgICAgICB2YXIgZW5kID0gYnQgKyBhZGQ7XG4gICAgICAgIGlmIChidCA8IGR0KSB7XG4gICAgICAgICAgdmFyIHNoaWZ0MiA9IGRsIC0gZHQsIGRlbmQgPSBNYXRoLm1pbihkdCwgZW5kKTtcbiAgICAgICAgICBpZiAoc2hpZnQyICsgYnQgPCAwKVxuICAgICAgICAgICAgZXJyKDMpO1xuICAgICAgICAgIGZvciAoOyBidCA8IGRlbmQ7ICsrYnQpXG4gICAgICAgICAgICBidWZbYnRdID0gZGljdFtzaGlmdDIgKyBidF07XG4gICAgICAgIH1cbiAgICAgICAgZm9yICg7IGJ0IDwgZW5kOyBidCArPSA0KSB7XG4gICAgICAgICAgYnVmW2J0XSA9IGJ1ZltidCAtIGR0XTtcbiAgICAgICAgICBidWZbYnQgKyAxXSA9IGJ1ZltidCArIDEgLSBkdF07XG4gICAgICAgICAgYnVmW2J0ICsgMl0gPSBidWZbYnQgKyAyIC0gZHRdO1xuICAgICAgICAgIGJ1ZltidCArIDNdID0gYnVmW2J0ICsgMyAtIGR0XTtcbiAgICAgICAgfVxuICAgICAgICBidCA9IGVuZDtcbiAgICAgIH1cbiAgICB9XG4gICAgc3QubCA9IGxtLCBzdC5wID0gbHBvcywgc3QuYiA9IGJ0LCBzdC5mID0gZmluYWw7XG4gICAgaWYgKGxtKVxuICAgICAgZmluYWwgPSAxLCBzdC5tID0gbGJ0LCBzdC5kID0gZG0sIHN0Lm4gPSBkYnQ7XG4gIH0gd2hpbGUgKCFmaW5hbCk7XG4gIHJldHVybiBidCA9PSBidWYubGVuZ3RoID8gYnVmIDogc2xjKGJ1ZiwgMCwgYnQpO1xufTtcbnZhciBldCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgdTgoMCk7XG52YXIgZ3pzID0gZnVuY3Rpb24oZCkge1xuICBpZiAoZFswXSAhPSAzMSB8fCBkWzFdICE9IDEzOSB8fCBkWzJdICE9IDgpXG4gICAgZXJyKDYsIFwiaW52YWxpZCBnemlwIGRhdGFcIik7XG4gIHZhciBmbGcgPSBkWzNdO1xuICB2YXIgc3QgPSAxMDtcbiAgaWYgKGZsZyAmIDQpXG4gICAgc3QgKz0gKGRbMTBdIHwgZFsxMV0gPDwgOCkgKyAyO1xuICBmb3IgKHZhciB6cyA9IChmbGcgPj4gMyAmIDEpICsgKGZsZyA+PiA0ICYgMSk7IHpzID4gMDsgenMgLT0gIWRbc3QrK10pXG4gICAgO1xuICByZXR1cm4gc3QgKyAoZmxnICYgMik7XG59O1xudmFyIGd6bCA9IGZ1bmN0aW9uKGQpIHtcbiAgdmFyIGwgPSBkLmxlbmd0aDtcbiAgcmV0dXJuIChkW2wgLSA0XSB8IGRbbCAtIDNdIDw8IDggfCBkW2wgLSAyXSA8PCAxNiB8IGRbbCAtIDFdIDw8IDI0KSA+Pj4gMDtcbn07XG52YXIgemxzID0gZnVuY3Rpb24oZCwgZGljdCkge1xuICBpZiAoKGRbMF0gJiAxNSkgIT0gOCB8fCBkWzBdID4+IDQgPiA3IHx8IChkWzBdIDw8IDggfCBkWzFdKSAlIDMxKVxuICAgIGVycig2LCBcImludmFsaWQgemxpYiBkYXRhXCIpO1xuICBpZiAoKGRbMV0gPj4gNSAmIDEpID09ICshZGljdClcbiAgICBlcnIoNiwgXCJpbnZhbGlkIHpsaWIgZGF0YTogXCIgKyAoZFsxXSAmIDMyID8gXCJuZWVkXCIgOiBcInVuZXhwZWN0ZWRcIikgKyBcIiBkaWN0aW9uYXJ5XCIpO1xuICByZXR1cm4gKGRbMV0gPj4gMyAmIDQpICsgMjtcbn07XG5mdW5jdGlvbiBpbmZsYXRlU3luYyhkYXRhLCBvcHRzKSB7XG4gIHJldHVybiBpbmZsdChkYXRhLCB7IGk6IDIgfSwgb3B0cyAmJiBvcHRzLm91dCwgb3B0cyAmJiBvcHRzLmRpY3Rpb25hcnkpO1xufVxuZnVuY3Rpb24gZ3VuemlwU3luYyhkYXRhLCBvcHRzKSB7XG4gIHZhciBzdCA9IGd6cyhkYXRhKTtcbiAgaWYgKHN0ICsgOCA+IGRhdGEubGVuZ3RoKVxuICAgIGVycig2LCBcImludmFsaWQgZ3ppcCBkYXRhXCIpO1xuICByZXR1cm4gaW5mbHQoZGF0YS5zdWJhcnJheShzdCwgLTgpLCB7IGk6IDIgfSwgb3B0cyAmJiBvcHRzLm91dCB8fCBuZXcgdTgoZ3psKGRhdGEpKSwgb3B0cyAmJiBvcHRzLmRpY3Rpb25hcnkpO1xufVxuZnVuY3Rpb24gdW56bGliU3luYyhkYXRhLCBvcHRzKSB7XG4gIHJldHVybiBpbmZsdChkYXRhLnN1YmFycmF5KHpscyhkYXRhLCBvcHRzICYmIG9wdHMuZGljdGlvbmFyeSksIC00KSwgeyBpOiAyIH0sIG9wdHMgJiYgb3B0cy5vdXQsIG9wdHMgJiYgb3B0cy5kaWN0aW9uYXJ5KTtcbn1cbmZ1bmN0aW9uIGRlY29tcHJlc3NTeW5jKGRhdGEsIG9wdHMpIHtcbiAgcmV0dXJuIGRhdGFbMF0gPT0gMzEgJiYgZGF0YVsxXSA9PSAxMzkgJiYgZGF0YVsyXSA9PSA4ID8gZ3VuemlwU3luYyhkYXRhLCBvcHRzKSA6IChkYXRhWzBdICYgMTUpICE9IDggfHwgZGF0YVswXSA+PiA0ID4gNyB8fCAoZGF0YVswXSA8PCA4IHwgZGF0YVsxXSkgJSAzMSA/IGluZmxhdGVTeW5jKGRhdGEsIG9wdHMpIDogdW56bGliU3luYyhkYXRhLCBvcHRzKTtcbn1cbnZhciB0ZCA9IHR5cGVvZiBUZXh0RGVjb2RlciAhPSBcInVuZGVmaW5lZFwiICYmIC8qIEBfX1BVUkVfXyAqLyBuZXcgVGV4dERlY29kZXIoKTtcbnZhciB0ZHMgPSAwO1xudHJ5IHtcbiAgdGQuZGVjb2RlKGV0LCB7IHN0cmVhbTogdHJ1ZSB9KTtcbiAgdGRzID0gMTtcbn0gY2F0Y2ggKGUpIHtcbn1cblxuLy8gdjIudHNcbnZhciBzaGlmdCA9IChuLCBzaGlmdDIpID0+IHtcbiAgcmV0dXJuIG4gKiBfX3BvdygyLCBzaGlmdDIpO1xufTtcbnZhciB1bnNoaWZ0ID0gKG4sIHNoaWZ0MikgPT4ge1xuICByZXR1cm4gTWF0aC5mbG9vcihuIC8gX19wb3coMiwgc2hpZnQyKSk7XG59O1xudmFyIGdldFVpbnQyNCA9ICh2aWV3LCBwb3MpID0+IHtcbiAgcmV0dXJuIHNoaWZ0KHZpZXcuZ2V0VWludDE2KHBvcyArIDEsIHRydWUpLCA4KSArIHZpZXcuZ2V0VWludDgocG9zKTtcbn07XG52YXIgZ2V0VWludDQ4ID0gKHZpZXcsIHBvcykgPT4ge1xuICByZXR1cm4gc2hpZnQodmlldy5nZXRVaW50MzIocG9zICsgMiwgdHJ1ZSksIDE2KSArIHZpZXcuZ2V0VWludDE2KHBvcywgdHJ1ZSk7XG59O1xudmFyIGNvbXBhcmUgPSAodHosIHR4LCB0eSwgdmlldywgaSkgPT4ge1xuICBpZiAodHogIT09IHZpZXcuZ2V0VWludDgoaSkpXG4gICAgcmV0dXJuIHR6IC0gdmlldy5nZXRVaW50OChpKTtcbiAgY29uc3QgeCA9IGdldFVpbnQyNCh2aWV3LCBpICsgMSk7XG4gIGlmICh0eCAhPT0geClcbiAgICByZXR1cm4gdHggLSB4O1xuICBjb25zdCB5ID0gZ2V0VWludDI0KHZpZXcsIGkgKyA0KTtcbiAgaWYgKHR5ICE9PSB5KVxuICAgIHJldHVybiB0eSAtIHk7XG4gIHJldHVybiAwO1xufTtcbnZhciBxdWVyeUxlYWZkaXIgPSAodmlldywgeiwgeCwgeSkgPT4ge1xuICBjb25zdCBvZmZzZXRMZW4gPSBxdWVyeVZpZXcodmlldywgeiB8IDEyOCwgeCwgeSk7XG4gIGlmIChvZmZzZXRMZW4pIHtcbiAgICByZXR1cm4ge1xuICAgICAgeixcbiAgICAgIHgsXG4gICAgICB5LFxuICAgICAgb2Zmc2V0OiBvZmZzZXRMZW5bMF0sXG4gICAgICBsZW5ndGg6IG9mZnNldExlblsxXSxcbiAgICAgIGlzRGlyOiB0cnVlXG4gICAgfTtcbiAgfVxuICByZXR1cm4gbnVsbDtcbn07XG52YXIgcXVlcnlUaWxlID0gKHZpZXcsIHosIHgsIHkpID0+IHtcbiAgY29uc3Qgb2Zmc2V0TGVuID0gcXVlcnlWaWV3KHZpZXcsIHosIHgsIHkpO1xuICBpZiAob2Zmc2V0TGVuKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHosXG4gICAgICB4LFxuICAgICAgeSxcbiAgICAgIG9mZnNldDogb2Zmc2V0TGVuWzBdLFxuICAgICAgbGVuZ3RoOiBvZmZzZXRMZW5bMV0sXG4gICAgICBpc0RpcjogZmFsc2VcbiAgICB9O1xuICB9XG4gIHJldHVybiBudWxsO1xufTtcbnZhciBxdWVyeVZpZXcgPSAodmlldywgeiwgeCwgeSkgPT4ge1xuICBsZXQgbSA9IDA7XG4gIGxldCBuID0gdmlldy5ieXRlTGVuZ3RoIC8gMTcgLSAxO1xuICB3aGlsZSAobSA8PSBuKSB7XG4gICAgY29uc3QgayA9IG4gKyBtID4+IDE7XG4gICAgY29uc3QgY21wID0gY29tcGFyZSh6LCB4LCB5LCB2aWV3LCBrICogMTcpO1xuICAgIGlmIChjbXAgPiAwKSB7XG4gICAgICBtID0gayArIDE7XG4gICAgfSBlbHNlIGlmIChjbXAgPCAwKSB7XG4gICAgICBuID0gayAtIDE7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBbZ2V0VWludDQ4KHZpZXcsIGsgKiAxNyArIDcpLCB2aWV3LmdldFVpbnQzMihrICogMTcgKyAxMywgdHJ1ZSldO1xuICAgIH1cbiAgfVxuICByZXR1cm4gbnVsbDtcbn07XG52YXIgZW50cnlTb3J0ID0gKGEsIGIpID0+IHtcbiAgaWYgKGEuaXNEaXIgJiYgIWIuaXNEaXIpIHtcbiAgICByZXR1cm4gMTtcbiAgfVxuICBpZiAoIWEuaXNEaXIgJiYgYi5pc0Rpcikge1xuICAgIHJldHVybiAtMTtcbiAgfVxuICBpZiAoYS56ICE9PSBiLnopIHtcbiAgICByZXR1cm4gYS56IC0gYi56O1xuICB9XG4gIGlmIChhLnggIT09IGIueCkge1xuICAgIHJldHVybiBhLnggLSBiLng7XG4gIH1cbiAgcmV0dXJuIGEueSAtIGIueTtcbn07XG52YXIgcGFyc2VFbnRyeSA9IChkYXRhdmlldywgaSkgPT4ge1xuICBjb25zdCB6UmF3ID0gZGF0YXZpZXcuZ2V0VWludDgoaSAqIDE3KTtcbiAgY29uc3QgeiA9IHpSYXcgJiAxMjc7XG4gIHJldHVybiB7XG4gICAgeixcbiAgICB4OiBnZXRVaW50MjQoZGF0YXZpZXcsIGkgKiAxNyArIDEpLFxuICAgIHk6IGdldFVpbnQyNChkYXRhdmlldywgaSAqIDE3ICsgNCksXG4gICAgb2Zmc2V0OiBnZXRVaW50NDgoZGF0YXZpZXcsIGkgKiAxNyArIDcpLFxuICAgIGxlbmd0aDogZGF0YXZpZXcuZ2V0VWludDMyKGkgKiAxNyArIDEzLCB0cnVlKSxcbiAgICBpc0RpcjogelJhdyA+PiA3ID09PSAxXG4gIH07XG59O1xudmFyIHNvcnREaXIgPSAoYSkgPT4ge1xuICBjb25zdCBlbnRyaWVzID0gW107XG4gIGNvbnN0IHZpZXcgPSBuZXcgRGF0YVZpZXcoYSk7XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgdmlldy5ieXRlTGVuZ3RoIC8gMTc7IGkrKykge1xuICAgIGVudHJpZXMucHVzaChwYXJzZUVudHJ5KHZpZXcsIGkpKTtcbiAgfVxuICByZXR1cm4gY3JlYXRlRGlyZWN0b3J5KGVudHJpZXMpO1xufTtcbnZhciBjcmVhdGVEaXJlY3RvcnkgPSAoZW50cmllcykgPT4ge1xuICBlbnRyaWVzLnNvcnQoZW50cnlTb3J0KTtcbiAgY29uc3QgYnVmZmVyID0gbmV3IEFycmF5QnVmZmVyKDE3ICogZW50cmllcy5sZW5ndGgpO1xuICBjb25zdCBhcnIgPSBuZXcgVWludDhBcnJheShidWZmZXIpO1xuICBmb3IgKGxldCBpID0gMDsgaSA8IGVudHJpZXMubGVuZ3RoOyBpKyspIHtcbiAgICBjb25zdCBlbnRyeSA9IGVudHJpZXNbaV07XG4gICAgbGV0IHogPSBlbnRyeS56O1xuICAgIGlmIChlbnRyeS5pc0RpcilcbiAgICAgIHogPSB6IHwgMTI4O1xuICAgIGFycltpICogMTddID0gejtcbiAgICBhcnJbaSAqIDE3ICsgMV0gPSBlbnRyeS54ICYgMjU1O1xuICAgIGFycltpICogMTcgKyAyXSA9IGVudHJ5LnggPj4gOCAmIDI1NTtcbiAgICBhcnJbaSAqIDE3ICsgM10gPSBlbnRyeS54ID4+IDE2ICYgMjU1O1xuICAgIGFycltpICogMTcgKyA0XSA9IGVudHJ5LnkgJiAyNTU7XG4gICAgYXJyW2kgKiAxNyArIDVdID0gZW50cnkueSA+PiA4ICYgMjU1O1xuICAgIGFycltpICogMTcgKyA2XSA9IGVudHJ5LnkgPj4gMTYgJiAyNTU7XG4gICAgYXJyW2kgKiAxNyArIDddID0gZW50cnkub2Zmc2V0ICYgMjU1O1xuICAgIGFycltpICogMTcgKyA4XSA9IHVuc2hpZnQoZW50cnkub2Zmc2V0LCA4KSAmIDI1NTtcbiAgICBhcnJbaSAqIDE3ICsgOV0gPSB1bnNoaWZ0KGVudHJ5Lm9mZnNldCwgMTYpICYgMjU1O1xuICAgIGFycltpICogMTcgKyAxMF0gPSB1bnNoaWZ0KGVudHJ5Lm9mZnNldCwgMjQpICYgMjU1O1xuICAgIGFycltpICogMTcgKyAxMV0gPSB1bnNoaWZ0KGVudHJ5Lm9mZnNldCwgMzIpICYgMjU1O1xuICAgIGFycltpICogMTcgKyAxMl0gPSB1bnNoaWZ0KGVudHJ5Lm9mZnNldCwgNDgpICYgMjU1O1xuICAgIGFycltpICogMTcgKyAxM10gPSBlbnRyeS5sZW5ndGggJiAyNTU7XG4gICAgYXJyW2kgKiAxNyArIDE0XSA9IGVudHJ5Lmxlbmd0aCA+PiA4ICYgMjU1O1xuICAgIGFycltpICogMTcgKyAxNV0gPSBlbnRyeS5sZW5ndGggPj4gMTYgJiAyNTU7XG4gICAgYXJyW2kgKiAxNyArIDE2XSA9IGVudHJ5Lmxlbmd0aCA+PiAyNCAmIDI1NTtcbiAgfVxuICByZXR1cm4gYnVmZmVyO1xufTtcbnZhciBkZXJpdmVMZWFmID0gKHZpZXcsIHRpbGUpID0+IHtcbiAgaWYgKHZpZXcuYnl0ZUxlbmd0aCA8IDE3KVxuICAgIHJldHVybiBudWxsO1xuICBjb25zdCBudW1FbnRyaWVzID0gdmlldy5ieXRlTGVuZ3RoIC8gMTc7XG4gIGNvbnN0IGVudHJ5ID0gcGFyc2VFbnRyeSh2aWV3LCBudW1FbnRyaWVzIC0gMSk7XG4gIGlmIChlbnRyeS5pc0Rpcikge1xuICAgIGNvbnN0IGxlYWZMZXZlbCA9IGVudHJ5Lno7XG4gICAgY29uc3QgbGV2ZWxEaWZmID0gdGlsZS56IC0gbGVhZkxldmVsO1xuICAgIGNvbnN0IGxlYWZYID0gTWF0aC50cnVuYyh0aWxlLnggLyAoMSA8PCBsZXZlbERpZmYpKTtcbiAgICBjb25zdCBsZWFmWSA9IE1hdGgudHJ1bmModGlsZS55IC8gKDEgPDwgbGV2ZWxEaWZmKSk7XG4gICAgcmV0dXJuIHsgejogbGVhZkxldmVsLCB4OiBsZWFmWCwgeTogbGVhZlkgfTtcbiAgfVxuICByZXR1cm4gbnVsbDtcbn07XG5mdW5jdGlvbiBnZXRIZWFkZXIoc291cmNlKSB7XG4gIHJldHVybiBfX2FzeW5jKHRoaXMsIG51bGwsIGZ1bmN0aW9uKiAoKSB7XG4gICAgY29uc3QgcmVzcCA9IHlpZWxkIHNvdXJjZS5nZXRCeXRlcygwLCA1MTJlMyk7XG4gICAgY29uc3QgZGF0YXZpZXcgPSBuZXcgRGF0YVZpZXcocmVzcC5kYXRhKTtcbiAgICBjb25zdCBqc29uU2l6ZSA9IGRhdGF2aWV3LmdldFVpbnQzMig0LCB0cnVlKTtcbiAgICBjb25zdCByb290RW50cmllcyA9IGRhdGF2aWV3LmdldFVpbnQxNig4LCB0cnVlKTtcbiAgICBjb25zdCBkZWMgPSBuZXcgVGV4dERlY29kZXIoXCJ1dGYtOFwiKTtcbiAgICBjb25zdCBqc29uTWV0YWRhdGEgPSBKU09OLnBhcnNlKFxuICAgICAgZGVjLmRlY29kZShuZXcgRGF0YVZpZXcocmVzcC5kYXRhLCAxMCwganNvblNpemUpKVxuICAgICk7XG4gICAgbGV0IHRpbGVDb21wcmVzc2lvbiA9IDAgLyogVW5rbm93biAqLztcbiAgICBpZiAoanNvbk1ldGFkYXRhLmNvbXByZXNzaW9uID09PSBcImd6aXBcIikge1xuICAgICAgdGlsZUNvbXByZXNzaW9uID0gMiAvKiBHemlwICovO1xuICAgIH1cbiAgICBsZXQgbWluem9vbSA9IDA7XG4gICAgaWYgKFwibWluem9vbVwiIGluIGpzb25NZXRhZGF0YSkge1xuICAgICAgbWluem9vbSA9ICtqc29uTWV0YWRhdGEubWluem9vbTtcbiAgICB9XG4gICAgbGV0IG1heHpvb20gPSAwO1xuICAgIGlmIChcIm1heHpvb21cIiBpbiBqc29uTWV0YWRhdGEpIHtcbiAgICAgIG1heHpvb20gPSAranNvbk1ldGFkYXRhLm1heHpvb207XG4gICAgfVxuICAgIGxldCBjZW50ZXJMb24gPSAwO1xuICAgIGxldCBjZW50ZXJMYXQgPSAwO1xuICAgIGxldCBjZW50ZXJab29tID0gMDtcbiAgICBsZXQgbWluTG9uID0gLTE4MDtcbiAgICBsZXQgbWluTGF0ID0gLTg1O1xuICAgIGxldCBtYXhMb24gPSAxODA7XG4gICAgbGV0IG1heExhdCA9IDg1O1xuICAgIGlmIChqc29uTWV0YWRhdGEuYm91bmRzKSB7XG4gICAgICBjb25zdCBzcGxpdCA9IGpzb25NZXRhZGF0YS5ib3VuZHMuc3BsaXQoXCIsXCIpO1xuICAgICAgbWluTG9uID0gK3NwbGl0WzBdO1xuICAgICAgbWluTGF0ID0gK3NwbGl0WzFdO1xuICAgICAgbWF4TG9uID0gK3NwbGl0WzJdO1xuICAgICAgbWF4TGF0ID0gK3NwbGl0WzNdO1xuICAgIH1cbiAgICBpZiAoanNvbk1ldGFkYXRhLmNlbnRlcikge1xuICAgICAgY29uc3Qgc3BsaXQgPSBqc29uTWV0YWRhdGEuY2VudGVyLnNwbGl0KFwiLFwiKTtcbiAgICAgIGNlbnRlckxvbiA9ICtzcGxpdFswXTtcbiAgICAgIGNlbnRlckxhdCA9ICtzcGxpdFsxXTtcbiAgICAgIGNlbnRlclpvb20gPSArc3BsaXRbMl07XG4gICAgfVxuICAgIGNvbnN0IGhlYWRlciA9IHtcbiAgICAgIHNwZWNWZXJzaW9uOiBkYXRhdmlldy5nZXRVaW50MTYoMiwgdHJ1ZSksXG4gICAgICByb290RGlyZWN0b3J5T2Zmc2V0OiAxMCArIGpzb25TaXplLFxuICAgICAgcm9vdERpcmVjdG9yeUxlbmd0aDogcm9vdEVudHJpZXMgKiAxNyxcbiAgICAgIGpzb25NZXRhZGF0YU9mZnNldDogMTAsXG4gICAgICBqc29uTWV0YWRhdGFMZW5ndGg6IGpzb25TaXplLFxuICAgICAgbGVhZkRpcmVjdG9yeU9mZnNldDogMCxcbiAgICAgIGxlYWZEaXJlY3RvcnlMZW5ndGg6IHZvaWQgMCxcbiAgICAgIHRpbGVEYXRhT2Zmc2V0OiAwLFxuICAgICAgdGlsZURhdGFMZW5ndGg6IHZvaWQgMCxcbiAgICAgIG51bUFkZHJlc3NlZFRpbGVzOiAwLFxuICAgICAgbnVtVGlsZUVudHJpZXM6IDAsXG4gICAgICBudW1UaWxlQ29udGVudHM6IDAsXG4gICAgICBjbHVzdGVyZWQ6IGZhbHNlLFxuICAgICAgaW50ZXJuYWxDb21wcmVzc2lvbjogMSAvKiBOb25lICovLFxuICAgICAgdGlsZUNvbXByZXNzaW9uLFxuICAgICAgdGlsZVR5cGU6IDEgLyogTXZ0ICovLFxuICAgICAgbWluWm9vbTogbWluem9vbSxcbiAgICAgIG1heFpvb206IG1heHpvb20sXG4gICAgICBtaW5Mb24sXG4gICAgICBtaW5MYXQsXG4gICAgICBtYXhMb24sXG4gICAgICBtYXhMYXQsXG4gICAgICBjZW50ZXJab29tLFxuICAgICAgY2VudGVyTG9uLFxuICAgICAgY2VudGVyTGF0LFxuICAgICAgZXRhZzogcmVzcC5ldGFnXG4gICAgfTtcbiAgICByZXR1cm4gaGVhZGVyO1xuICB9KTtcbn1cbmZ1bmN0aW9uIGdldFp4eShoZWFkZXIsIHNvdXJjZSwgY2FjaGUsIHosIHgsIHksIHNpZ25hbCkge1xuICByZXR1cm4gX19hc3luYyh0aGlzLCBudWxsLCBmdW5jdGlvbiogKCkge1xuICAgIGxldCByb290RGlyID0geWllbGQgY2FjaGUuZ2V0QXJyYXlCdWZmZXIoXG4gICAgICBzb3VyY2UsXG4gICAgICBoZWFkZXIucm9vdERpcmVjdG9yeU9mZnNldCxcbiAgICAgIGhlYWRlci5yb290RGlyZWN0b3J5TGVuZ3RoLFxuICAgICAgaGVhZGVyXG4gICAgKTtcbiAgICBpZiAoaGVhZGVyLnNwZWNWZXJzaW9uID09PSAxKSB7XG4gICAgICByb290RGlyID0gc29ydERpcihyb290RGlyKTtcbiAgICB9XG4gICAgY29uc3QgZW50cnkgPSBxdWVyeVRpbGUobmV3IERhdGFWaWV3KHJvb3REaXIpLCB6LCB4LCB5KTtcbiAgICBpZiAoZW50cnkpIHtcbiAgICAgIGNvbnN0IHJlc3AgPSB5aWVsZCBzb3VyY2UuZ2V0Qnl0ZXMoZW50cnkub2Zmc2V0LCBlbnRyeS5sZW5ndGgsIHNpZ25hbCk7XG4gICAgICBsZXQgdGlsZURhdGEgPSByZXNwLmRhdGE7XG4gICAgICBjb25zdCB2aWV3ID0gbmV3IERhdGFWaWV3KHRpbGVEYXRhKTtcbiAgICAgIGlmICh2aWV3LmdldFVpbnQ4KDApID09PSAzMSAmJiB2aWV3LmdldFVpbnQ4KDEpID09PSAxMzkpIHtcbiAgICAgICAgdGlsZURhdGEgPSBkZWNvbXByZXNzU3luYyhuZXcgVWludDhBcnJheSh0aWxlRGF0YSkpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgZGF0YTogdGlsZURhdGFcbiAgICAgIH07XG4gICAgfVxuICAgIGNvbnN0IGxlYWZjb29yZHMgPSBkZXJpdmVMZWFmKG5ldyBEYXRhVmlldyhyb290RGlyKSwgeyB6LCB4LCB5IH0pO1xuICAgIGlmIChsZWFmY29vcmRzKSB7XG4gICAgICBjb25zdCBsZWFmZGlyRW50cnkgPSBxdWVyeUxlYWZkaXIoXG4gICAgICAgIG5ldyBEYXRhVmlldyhyb290RGlyKSxcbiAgICAgICAgbGVhZmNvb3Jkcy56LFxuICAgICAgICBsZWFmY29vcmRzLngsXG4gICAgICAgIGxlYWZjb29yZHMueVxuICAgICAgKTtcbiAgICAgIGlmIChsZWFmZGlyRW50cnkpIHtcbiAgICAgICAgbGV0IGxlYWZEaXIgPSB5aWVsZCBjYWNoZS5nZXRBcnJheUJ1ZmZlcihcbiAgICAgICAgICBzb3VyY2UsXG4gICAgICAgICAgbGVhZmRpckVudHJ5Lm9mZnNldCxcbiAgICAgICAgICBsZWFmZGlyRW50cnkubGVuZ3RoLFxuICAgICAgICAgIGhlYWRlclxuICAgICAgICApO1xuICAgICAgICBpZiAoaGVhZGVyLnNwZWNWZXJzaW9uID09PSAxKSB7XG4gICAgICAgICAgbGVhZkRpciA9IHNvcnREaXIobGVhZkRpcik7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgdGlsZUVudHJ5ID0gcXVlcnlUaWxlKG5ldyBEYXRhVmlldyhsZWFmRGlyKSwgeiwgeCwgeSk7XG4gICAgICAgIGlmICh0aWxlRW50cnkpIHtcbiAgICAgICAgICBjb25zdCByZXNwID0geWllbGQgc291cmNlLmdldEJ5dGVzKFxuICAgICAgICAgICAgdGlsZUVudHJ5Lm9mZnNldCxcbiAgICAgICAgICAgIHRpbGVFbnRyeS5sZW5ndGgsXG4gICAgICAgICAgICBzaWduYWxcbiAgICAgICAgICApO1xuICAgICAgICAgIGxldCB0aWxlRGF0YSA9IHJlc3AuZGF0YTtcbiAgICAgICAgICBjb25zdCB2aWV3ID0gbmV3IERhdGFWaWV3KHRpbGVEYXRhKTtcbiAgICAgICAgICBpZiAodmlldy5nZXRVaW50OCgwKSA9PT0gMzEgJiYgdmlldy5nZXRVaW50OCgxKSA9PT0gMTM5KSB7XG4gICAgICAgICAgICB0aWxlRGF0YSA9IGRlY29tcHJlc3NTeW5jKG5ldyBVaW50OEFycmF5KHRpbGVEYXRhKSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBkYXRhOiB0aWxlRGF0YVxuICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHZvaWQgMDtcbiAgfSk7XG59XG52YXIgdjJfZGVmYXVsdCA9IHtcbiAgZ2V0SGVhZGVyLFxuICBnZXRaeHlcbn07XG5cbi8vIGFkYXB0ZXJzLnRzXG52YXIgbGVhZmxldFJhc3RlckxheWVyID0gKHNvdXJjZSwgb3B0aW9ucykgPT4ge1xuICBsZXQgbG9hZGVkID0gZmFsc2U7XG4gIGxldCBtaW1lVHlwZSA9IFwiXCI7XG4gIGNvbnN0IGNscyA9IEwuR3JpZExheWVyLmV4dGVuZCh7XG4gICAgY3JlYXRlVGlsZTogKGNvb3JkLCBkb25lKSA9PiB7XG4gICAgICBjb25zdCBlbCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJpbWdcIik7XG4gICAgICBjb25zdCBjb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpO1xuICAgICAgY29uc3Qgc2lnbmFsID0gY29udHJvbGxlci5zaWduYWw7XG4gICAgICBlbC5jYW5jZWwgPSAoKSA9PiB7XG4gICAgICAgIGNvbnRyb2xsZXIuYWJvcnQoKTtcbiAgICAgIH07XG4gICAgICBpZiAoIWxvYWRlZCkge1xuICAgICAgICBzb3VyY2UuZ2V0SGVhZGVyKCkudGhlbigoaGVhZGVyKSA9PiB7XG4gICAgICAgICAgaWYgKGhlYWRlci50aWxlVHlwZSA9PT0gMSAvKiBNdnQgKi8pIHtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoXG4gICAgICAgICAgICAgIFwiRXJyb3I6IGFyY2hpdmUgY29udGFpbnMgTVZUIHZlY3RvciB0aWxlcywgYnV0IGxlYWZsZXRSYXN0ZXJMYXllciBpcyBmb3IgZGlzcGxheWluZyByYXN0ZXIgdGlsZXMuIFNlZSBodHRwczovL2dpdGh1Yi5jb20vcHJvdG9tYXBzL1BNVGlsZXMvdHJlZS9tYWluL2pzIGZvciBkZXRhaWxzLlwiXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH0gZWxzZSBpZiAoaGVhZGVyLnRpbGVUeXBlID09PSAyKSB7XG4gICAgICAgICAgICBtaW1lVHlwZSA9IFwiaW1hZ2UvcG5nXCI7XG4gICAgICAgICAgfSBlbHNlIGlmIChoZWFkZXIudGlsZVR5cGUgPT09IDMpIHtcbiAgICAgICAgICAgIG1pbWVUeXBlID0gXCJpbWFnZS9qcGVnXCI7XG4gICAgICAgICAgfSBlbHNlIGlmIChoZWFkZXIudGlsZVR5cGUgPT09IDQpIHtcbiAgICAgICAgICAgIG1pbWVUeXBlID0gXCJpbWFnZS93ZWJwXCI7XG4gICAgICAgICAgfSBlbHNlIGlmIChoZWFkZXIudGlsZVR5cGUgPT09IDUpIHtcbiAgICAgICAgICAgIG1pbWVUeXBlID0gXCJpbWFnZS9hdmlmXCI7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgbG9hZGVkID0gdHJ1ZTtcbiAgICAgIH1cbiAgICAgIHNvdXJjZS5nZXRaeHkoY29vcmQueiwgY29vcmQueCwgY29vcmQueSwgc2lnbmFsKS50aGVuKChhcnIpID0+IHtcbiAgICAgICAgaWYgKGFycikge1xuICAgICAgICAgIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbYXJyLmRhdGFdLCB7IHR5cGU6IG1pbWVUeXBlIH0pO1xuICAgICAgICAgIGNvbnN0IGltYWdlVXJsID0gd2luZG93LlVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYik7XG4gICAgICAgICAgZWwuc3JjID0gaW1hZ2VVcmw7XG4gICAgICAgICAgZWwuY2FuY2VsID0gdm9pZCAwO1xuICAgICAgICAgIGRvbmUodm9pZCAwLCBlbCk7XG4gICAgICAgIH1cbiAgICAgIH0pLmNhdGNoKChlKSA9PiB7XG4gICAgICAgIGlmIChlLm5hbWUgIT09IFwiQWJvcnRFcnJvclwiKSB7XG4gICAgICAgICAgdGhyb3cgZTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICByZXR1cm4gZWw7XG4gICAgfSxcbiAgICBfcmVtb3ZlVGlsZTogZnVuY3Rpb24oa2V5KSB7XG4gICAgICBjb25zdCB0aWxlID0gdGhpcy5fdGlsZXNba2V5XTtcbiAgICAgIGlmICghdGlsZSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBpZiAodGlsZS5lbC5jYW5jZWwpXG4gICAgICAgIHRpbGUuZWwuY2FuY2VsKCk7XG4gICAgICB0aWxlLmVsLndpZHRoID0gMDtcbiAgICAgIHRpbGUuZWwuaGVpZ2h0ID0gMDtcbiAgICAgIHRpbGUuZWwuZGVsZXRlZCA9IHRydWU7XG4gICAgICBMLkRvbVV0aWwucmVtb3ZlKHRpbGUuZWwpO1xuICAgICAgZGVsZXRlIHRoaXMuX3RpbGVzW2tleV07XG4gICAgICB0aGlzLmZpcmUoXCJ0aWxldW5sb2FkXCIsIHtcbiAgICAgICAgdGlsZTogdGlsZS5lbCxcbiAgICAgICAgY29vcmRzOiB0aGlzLl9rZXlUb1RpbGVDb29yZHMoa2V5KVxuICAgICAgfSk7XG4gICAgfVxuICB9KTtcbiAgcmV0dXJuIG5ldyBjbHMob3B0aW9ucyk7XG59O1xudmFyIHYzY29tcGF0ID0gKHY0KSA9PiAocmVxdWVzdFBhcmFtZXRlcnMsIGFyZzIpID0+IHtcbiAgaWYgKGFyZzIgaW5zdGFuY2VvZiBBYm9ydENvbnRyb2xsZXIpIHtcbiAgICByZXR1cm4gdjQocmVxdWVzdFBhcmFtZXRlcnMsIGFyZzIpO1xuICB9XG4gIGNvbnN0IGFib3J0Q29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcbiAgdjQocmVxdWVzdFBhcmFtZXRlcnMsIGFib3J0Q29udHJvbGxlcikudGhlbihcbiAgICAocmVzdWx0KSA9PiB7XG4gICAgICByZXR1cm4gYXJnMihcbiAgICAgICAgdm9pZCAwLFxuICAgICAgICByZXN1bHQuZGF0YSxcbiAgICAgICAgcmVzdWx0LmNhY2hlQ29udHJvbCB8fCBcIlwiLFxuICAgICAgICByZXN1bHQuZXhwaXJlcyB8fCBcIlwiXG4gICAgICApO1xuICAgIH0sXG4gICAgKGVycjIpID0+IHtcbiAgICAgIHJldHVybiBhcmcyKGVycjIpO1xuICAgIH1cbiAgKS5jYXRjaCgoZSkgPT4ge1xuICAgIHJldHVybiBhcmcyKGUpO1xuICB9KTtcbiAgcmV0dXJuIHsgY2FuY2VsOiAoKSA9PiBhYm9ydENvbnRyb2xsZXIuYWJvcnQoKSB9O1xufTtcbnZhciBQcm90b2NvbCA9IGNsYXNzIHtcbiAgLyoqXG4gICAqIEluaXRpYWxpemUgdGhlIE1hcExpYnJlIFBNVGlsZXMgcHJvdG9jb2wuXG4gICAqXG4gICAqICogbWV0YWRhdGE6IGFsc28gbG9hZCB0aGUgbWV0YWRhdGEgc2VjdGlvbiBvZiB0aGUgUE1UaWxlcy4gcmVxdWlyZWQgZm9yIHNvbWUgXCJpbnNwZWN0XCIgZnVuY3Rpb25hbGl0eVxuICAgKiBhbmQgdG8gYXV0b21hdGljYWxseSBwb3B1bGF0ZSB0aGUgbWFwIGF0dHJpYnV0aW9uLiBSZXF1aXJlcyBhbiBleHRyYSBIVFRQIHJlcXVlc3QuXG4gICAqL1xuICBjb25zdHJ1Y3RvcihvcHRpb25zKSB7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICB0aGlzLnRpbGV2NCA9IChwYXJhbXMsIGFib3J0Q29udHJvbGxlcikgPT4gX19hc3luYyh0aGlzLCBudWxsLCBmdW5jdGlvbiogKCkge1xuICAgICAgaWYgKHBhcmFtcy50eXBlID09PSBcImpzb25cIikge1xuICAgICAgICBjb25zdCBwbXRpbGVzVXJsMiA9IHBhcmFtcy51cmwuc3Vic3RyKDEwKTtcbiAgICAgICAgbGV0IGluc3RhbmNlMiA9IHRoaXMudGlsZXMuZ2V0KHBtdGlsZXNVcmwyKTtcbiAgICAgICAgaWYgKCFpbnN0YW5jZTIpIHtcbiAgICAgICAgICBpbnN0YW5jZTIgPSBuZXcgUE1UaWxlcyhwbXRpbGVzVXJsMik7XG4gICAgICAgICAgdGhpcy50aWxlcy5zZXQocG10aWxlc1VybDIsIGluc3RhbmNlMik7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMubWV0YWRhdGEpIHtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZGF0YTogeWllbGQgaW5zdGFuY2UyLmdldFRpbGVKc29uKHBhcmFtcy51cmwpXG4gICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBoID0geWllbGQgaW5zdGFuY2UyLmdldEhlYWRlcigpO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgIHRpbGVzOiBbYCR7cGFyYW1zLnVybH0ve3p9L3t4fS97eX1gXSxcbiAgICAgICAgICAgIG1pbnpvb206IGgubWluWm9vbSxcbiAgICAgICAgICAgIG1heHpvb206IGgubWF4Wm9vbSxcbiAgICAgICAgICAgIGJvdW5kczogW2gubWluTG9uLCBoLm1pbkxhdCwgaC5tYXhMb24sIGgubWF4TGF0XVxuICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHJlID0gbmV3IFJlZ0V4cCgvcG10aWxlczpcXC9cXC8oLispXFwvKFxcZCspXFwvKFxcZCspXFwvKFxcZCspLyk7XG4gICAgICBjb25zdCByZXN1bHQgPSBwYXJhbXMudXJsLm1hdGNoKHJlKTtcbiAgICAgIGlmICghcmVzdWx0KSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIkludmFsaWQgUE1UaWxlcyBwcm90b2NvbCBVUkxcIik7XG4gICAgICB9XG4gICAgICBjb25zdCBwbXRpbGVzVXJsID0gcmVzdWx0WzFdO1xuICAgICAgbGV0IGluc3RhbmNlID0gdGhpcy50aWxlcy5nZXQocG10aWxlc1VybCk7XG4gICAgICBpZiAoIWluc3RhbmNlKSB7XG4gICAgICAgIGluc3RhbmNlID0gbmV3IFBNVGlsZXMocG10aWxlc1VybCk7XG4gICAgICAgIHRoaXMudGlsZXMuc2V0KHBtdGlsZXNVcmwsIGluc3RhbmNlKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHogPSByZXN1bHRbMl07XG4gICAgICBjb25zdCB4ID0gcmVzdWx0WzNdO1xuICAgICAgY29uc3QgeSA9IHJlc3VsdFs0XTtcbiAgICAgIGNvbnN0IGhlYWRlciA9IHlpZWxkIGluc3RhbmNlLmdldEhlYWRlcigpO1xuICAgICAgY29uc3QgcmVzcCA9IHlpZWxkIGluc3RhbmNlID09IG51bGwgPyB2b2lkIDAgOiBpbnN0YW5jZS5nZXRaeHkoK3osICt4LCAreSwgYWJvcnRDb250cm9sbGVyLnNpZ25hbCk7XG4gICAgICBpZiAocmVzcCkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGRhdGE6IG5ldyBVaW50OEFycmF5KHJlc3AuZGF0YSksXG4gICAgICAgICAgY2FjaGVDb250cm9sOiByZXNwLmNhY2hlQ29udHJvbCxcbiAgICAgICAgICBleHBpcmVzOiByZXNwLmV4cGlyZXNcbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICAgIGlmIChoZWFkZXIudGlsZVR5cGUgPT09IDEgLyogTXZ0ICovKSB7XG4gICAgICAgIHJldHVybiB7IGRhdGE6IG5ldyBVaW50OEFycmF5KCkgfTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB7IGRhdGE6IG51bGwgfTtcbiAgICB9KTtcbiAgICB0aGlzLnRpbGUgPSB2M2NvbXBhdCh0aGlzLnRpbGV2NCk7XG4gICAgdGhpcy50aWxlcyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7XG4gICAgdGhpcy5tZXRhZGF0YSA9IChvcHRpb25zID09IG51bGwgPyB2b2lkIDAgOiBvcHRpb25zLm1ldGFkYXRhKSB8fCBmYWxzZTtcbiAgfVxuICAvKipcbiAgICogQWRkIGEge0BsaW5rIFBNVGlsZXN9IGluc3RhbmNlIHRvIHRoZSBnbG9iYWwgcHJvdG9jb2wgaW5zdGFuY2UuXG4gICAqXG4gICAqIEZvciByZW1vdGUgZmV0Y2ggc291cmNlcywgcmVmZXJlbmNlcyBpbiBNYXBMaWJyZSBzdHlsZXMgbGlrZSBwbXRpbGVzOi8vaHR0cDovLy4uLlxuICAgKiB3aWxsIHJlc29sdmUgdG8gdGhlIHNhbWUgaW5zdGFuY2UgaWYgdGhlIFVSTHMgbWF0Y2guXG4gICAqL1xuICBhZGQocCkge1xuICAgIHRoaXMudGlsZXMuc2V0KHAuc291cmNlLmdldEtleSgpLCBwKTtcbiAgfVxuICAvKipcbiAgICogRmV0Y2ggYSB7QGxpbmsgUE1UaWxlc30gaW5zdGFuY2UgYnkgVVJMLCBmb3IgcmVtb3RlIFBNVGlsZXMgaW5zdGFuY2VzLlxuICAgKi9cbiAgZ2V0KHVybCkge1xuICAgIHJldHVybiB0aGlzLnRpbGVzLmdldCh1cmwpO1xuICB9XG59O1xuXG4vLyBpbmRleC50c1xuZnVuY3Rpb24gdG9OdW0obG93LCBoaWdoKSB7XG4gIHJldHVybiAoaGlnaCA+Pj4gMCkgKiA0Mjk0OTY3Mjk2ICsgKGxvdyA+Pj4gMCk7XG59XG5mdW5jdGlvbiByZWFkVmFyaW50UmVtYWluZGVyKGwsIHApIHtcbiAgY29uc3QgYnVmID0gcC5idWY7XG4gIGxldCBiID0gYnVmW3AucG9zKytdO1xuICBsZXQgaCA9IChiICYgMTEyKSA+PiA0O1xuICBpZiAoYiA8IDEyOClcbiAgICByZXR1cm4gdG9OdW0obCwgaCk7XG4gIGIgPSBidWZbcC5wb3MrK107XG4gIGggfD0gKGIgJiAxMjcpIDw8IDM7XG4gIGlmIChiIDwgMTI4KVxuICAgIHJldHVybiB0b051bShsLCBoKTtcbiAgYiA9IGJ1ZltwLnBvcysrXTtcbiAgaCB8PSAoYiAmIDEyNykgPDwgMTA7XG4gIGlmIChiIDwgMTI4KVxuICAgIHJldHVybiB0b051bShsLCBoKTtcbiAgYiA9IGJ1ZltwLnBvcysrXTtcbiAgaCB8PSAoYiAmIDEyNykgPDwgMTc7XG4gIGlmIChiIDwgMTI4KVxuICAgIHJldHVybiB0b051bShsLCBoKTtcbiAgYiA9IGJ1ZltwLnBvcysrXTtcbiAgaCB8PSAoYiAmIDEyNykgPDwgMjQ7XG4gIGlmIChiIDwgMTI4KVxuICAgIHJldHVybiB0b051bShsLCBoKTtcbiAgYiA9IGJ1ZltwLnBvcysrXTtcbiAgaCB8PSAoYiAmIDEpIDw8IDMxO1xuICBpZiAoYiA8IDEyOClcbiAgICByZXR1cm4gdG9OdW0obCwgaCk7XG4gIHRocm93IG5ldyBFcnJvcihcIkV4cGVjdGVkIHZhcmludCBub3QgbW9yZSB0aGFuIDEwIGJ5dGVzXCIpO1xufVxuZnVuY3Rpb24gcmVhZFZhcmludChwKSB7XG4gIGNvbnN0IGJ1ZiA9IHAuYnVmO1xuICBsZXQgYiA9IGJ1ZltwLnBvcysrXTtcbiAgbGV0IHZhbCA9IGIgJiAxMjc7XG4gIGlmIChiIDwgMTI4KVxuICAgIHJldHVybiB2YWw7XG4gIGIgPSBidWZbcC5wb3MrK107XG4gIHZhbCB8PSAoYiAmIDEyNykgPDwgNztcbiAgaWYgKGIgPCAxMjgpXG4gICAgcmV0dXJuIHZhbDtcbiAgYiA9IGJ1ZltwLnBvcysrXTtcbiAgdmFsIHw9IChiICYgMTI3KSA8PCAxNDtcbiAgaWYgKGIgPCAxMjgpXG4gICAgcmV0dXJuIHZhbDtcbiAgYiA9IGJ1ZltwLnBvcysrXTtcbiAgdmFsIHw9IChiICYgMTI3KSA8PCAyMTtcbiAgaWYgKGIgPCAxMjgpXG4gICAgcmV0dXJuIHZhbDtcbiAgYiA9IGJ1ZltwLnBvc107XG4gIHZhbCB8PSAoYiAmIDE1KSA8PCAyODtcbiAgcmV0dXJuIHJlYWRWYXJpbnRSZW1haW5kZXIodmFsLCBwKTtcbn1cbmZ1bmN0aW9uIHJvdGF0ZShuLCB4eSwgcngsIHJ5KSB7XG4gIGlmIChyeSA9PT0gMCkge1xuICAgIGlmIChyeCA9PT0gMSkge1xuICAgICAgeHlbMF0gPSBuIC0gMSAtIHh5WzBdO1xuICAgICAgeHlbMV0gPSBuIC0gMSAtIHh5WzFdO1xuICAgIH1cbiAgICBjb25zdCB0ID0geHlbMF07XG4gICAgeHlbMF0gPSB4eVsxXTtcbiAgICB4eVsxXSA9IHQ7XG4gIH1cbn1cbmZ1bmN0aW9uIGlkT25MZXZlbCh6LCBwb3MpIHtcbiAgY29uc3QgbiA9IF9fcG93KDIsIHopO1xuICBsZXQgcnggPSBwb3M7XG4gIGxldCByeSA9IHBvcztcbiAgbGV0IHQgPSBwb3M7XG4gIGNvbnN0IHh5ID0gWzAsIDBdO1xuICBsZXQgcyA9IDE7XG4gIHdoaWxlIChzIDwgbikge1xuICAgIHJ4ID0gMSAmIHQgLyAyO1xuICAgIHJ5ID0gMSAmICh0IF4gcngpO1xuICAgIHJvdGF0ZShzLCB4eSwgcngsIHJ5KTtcbiAgICB4eVswXSArPSBzICogcng7XG4gICAgeHlbMV0gKz0gcyAqIHJ5O1xuICAgIHQgPSB0IC8gNDtcbiAgICBzICo9IDI7XG4gIH1cbiAgcmV0dXJuIFt6LCB4eVswXSwgeHlbMV1dO1xufVxudmFyIHR6VmFsdWVzID0gW1xuICAwLFxuICAxLFxuICA1LFxuICAyMSxcbiAgODUsXG4gIDM0MSxcbiAgMTM2NSxcbiAgNTQ2MSxcbiAgMjE4NDUsXG4gIDg3MzgxLFxuICAzNDk1MjUsXG4gIDEzOTgxMDEsXG4gIDU1OTI0MDUsXG4gIDIyMzY5NjIxLFxuICA4OTQ3ODQ4NSxcbiAgMzU3OTEzOTQxLFxuICAxNDMxNjU1NzY1LFxuICA1NzI2NjIzMDYxLFxuICAyMjkwNjQ5MjI0NSxcbiAgOTE2MjU5Njg5ODEsXG4gIDM2NjUwMzg3NTkyNSxcbiAgMTQ2NjAxNTUwMzcwMSxcbiAgNTg2NDA2MjAxNDgwNSxcbiAgMjM0NTYyNDgwNTkyMjEsXG4gIDkzODI0OTkyMjM2ODg1LFxuICAzNzUyOTk5Njg5NDc1NDEsXG4gIDE1MDExOTk4NzU3OTAxNjVcbl07XG5mdW5jdGlvbiB6eHlUb1RpbGVJZCh6LCB4LCB5KSB7XG4gIGlmICh6ID4gMjYpIHtcbiAgICB0aHJvdyBFcnJvcihcIlRpbGUgem9vbSBsZXZlbCBleGNlZWRzIG1heCBzYWZlIG51bWJlciBsaW1pdCAoMjYpXCIpO1xuICB9XG4gIGlmICh4ID4gX19wb3coMiwgeikgLSAxIHx8IHkgPiBfX3BvdygyLCB6KSAtIDEpIHtcbiAgICB0aHJvdyBFcnJvcihcInRpbGUgeC95IG91dHNpZGUgem9vbSBsZXZlbCBib3VuZHNcIik7XG4gIH1cbiAgY29uc3QgYWNjID0gdHpWYWx1ZXNbel07XG4gIGNvbnN0IG4gPSBfX3BvdygyLCB6KTtcbiAgbGV0IHJ4ID0gMDtcbiAgbGV0IHJ5ID0gMDtcbiAgbGV0IGQgPSAwO1xuICBjb25zdCB4eSA9IFt4LCB5XTtcbiAgbGV0IHMgPSBuIC8gMjtcbiAgd2hpbGUgKHMgPiAwKSB7XG4gICAgcnggPSAoeHlbMF0gJiBzKSA+IDAgPyAxIDogMDtcbiAgICByeSA9ICh4eVsxXSAmIHMpID4gMCA/IDEgOiAwO1xuICAgIGQgKz0gcyAqIHMgKiAoMyAqIHJ4IF4gcnkpO1xuICAgIHJvdGF0ZShzLCB4eSwgcngsIHJ5KTtcbiAgICBzID0gcyAvIDI7XG4gIH1cbiAgcmV0dXJuIGFjYyArIGQ7XG59XG5mdW5jdGlvbiB0aWxlSWRUb1p4eShpKSB7XG4gIGxldCBhY2MgPSAwO1xuICBjb25zdCB6ID0gMDtcbiAgZm9yIChsZXQgejIgPSAwOyB6MiA8IDI3OyB6MisrKSB7XG4gICAgY29uc3QgbnVtVGlsZXMgPSAoMSA8PCB6MikgKiAoMSA8PCB6Mik7XG4gICAgaWYgKGFjYyArIG51bVRpbGVzID4gaSkge1xuICAgICAgcmV0dXJuIGlkT25MZXZlbCh6MiwgaSAtIGFjYyk7XG4gICAgfVxuICAgIGFjYyArPSBudW1UaWxlcztcbiAgfVxuICB0aHJvdyBFcnJvcihcIlRpbGUgem9vbSBsZXZlbCBleGNlZWRzIG1heCBzYWZlIG51bWJlciBsaW1pdCAoMjYpXCIpO1xufVxudmFyIENvbXByZXNzaW9uID0gLyogQF9fUFVSRV9fICovICgoQ29tcHJlc3Npb24yKSA9PiB7XG4gIENvbXByZXNzaW9uMltDb21wcmVzc2lvbjJbXCJVbmtub3duXCJdID0gMF0gPSBcIlVua25vd25cIjtcbiAgQ29tcHJlc3Npb24yW0NvbXByZXNzaW9uMltcIk5vbmVcIl0gPSAxXSA9IFwiTm9uZVwiO1xuICBDb21wcmVzc2lvbjJbQ29tcHJlc3Npb24yW1wiR3ppcFwiXSA9IDJdID0gXCJHemlwXCI7XG4gIENvbXByZXNzaW9uMltDb21wcmVzc2lvbjJbXCJCcm90bGlcIl0gPSAzXSA9IFwiQnJvdGxpXCI7XG4gIENvbXByZXNzaW9uMltDb21wcmVzc2lvbjJbXCJac3RkXCJdID0gNF0gPSBcIlpzdGRcIjtcbiAgcmV0dXJuIENvbXByZXNzaW9uMjtcbn0pKENvbXByZXNzaW9uIHx8IHt9KTtcbmZ1bmN0aW9uIGRlZmF1bHREZWNvbXByZXNzKGJ1ZiwgY29tcHJlc3Npb24pIHtcbiAgcmV0dXJuIF9fYXN5bmModGhpcywgbnVsbCwgZnVuY3Rpb24qICgpIHtcbiAgICBpZiAoY29tcHJlc3Npb24gPT09IDEgLyogTm9uZSAqLyB8fCBjb21wcmVzc2lvbiA9PT0gMCAvKiBVbmtub3duICovKSB7XG4gICAgICByZXR1cm4gYnVmO1xuICAgIH1cbiAgICBpZiAoY29tcHJlc3Npb24gPT09IDIgLyogR3ppcCAqLykge1xuICAgICAgaWYgKHR5cGVvZiBnbG9iYWxUaGlzLkRlY29tcHJlc3Npb25TdHJlYW0gPT09IFwidW5kZWZpbmVkXCIpIHtcbiAgICAgICAgcmV0dXJuIGRlY29tcHJlc3NTeW5jKG5ldyBVaW50OEFycmF5KGJ1ZikpO1xuICAgICAgfVxuICAgICAgY29uc3Qgc3RyZWFtID0gbmV3IFJlc3BvbnNlKGJ1ZikuYm9keTtcbiAgICAgIGlmICghc3RyZWFtKSB7XG4gICAgICAgIHRocm93IEVycm9yKFwiRmFpbGVkIHRvIHJlYWQgcmVzcG9uc2Ugc3RyZWFtXCIpO1xuICAgICAgfVxuICAgICAgY29uc3QgcmVzdWx0ID0gc3RyZWFtLnBpcGVUaHJvdWdoKFxuICAgICAgICAvLyBiaW9tZS1pZ25vcmUgbGludDogbmVlZGVkIHRvIGRldGVjdCBEZWNvbXByZXNzaW9uU3RyZWFtIGluIGJyb3dzZXIrbm9kZStjbG91ZGZsYXJlIHdvcmtlcnNcbiAgICAgICAgbmV3IGdsb2JhbFRoaXMuRGVjb21wcmVzc2lvblN0cmVhbShcImd6aXBcIilcbiAgICAgICk7XG4gICAgICByZXR1cm4gbmV3IFJlc3BvbnNlKHJlc3VsdCkuYXJyYXlCdWZmZXIoKTtcbiAgICB9XG4gICAgdGhyb3cgRXJyb3IoXCJDb21wcmVzc2lvbiBtZXRob2Qgbm90IHN1cHBvcnRlZFwiKTtcbiAgfSk7XG59XG52YXIgVGlsZVR5cGUgPSAvKiBAX19QVVJFX18gKi8gKChUaWxlVHlwZTIpID0+IHtcbiAgVGlsZVR5cGUyW1RpbGVUeXBlMltcIlVua25vd25cIl0gPSAwXSA9IFwiVW5rbm93blwiO1xuICBUaWxlVHlwZTJbVGlsZVR5cGUyW1wiTXZ0XCJdID0gMV0gPSBcIk12dFwiO1xuICBUaWxlVHlwZTJbVGlsZVR5cGUyW1wiUG5nXCJdID0gMl0gPSBcIlBuZ1wiO1xuICBUaWxlVHlwZTJbVGlsZVR5cGUyW1wiSnBlZ1wiXSA9IDNdID0gXCJKcGVnXCI7XG4gIFRpbGVUeXBlMltUaWxlVHlwZTJbXCJXZWJwXCJdID0gNF0gPSBcIldlYnBcIjtcbiAgVGlsZVR5cGUyW1RpbGVUeXBlMltcIkF2aWZcIl0gPSA1XSA9IFwiQXZpZlwiO1xuICByZXR1cm4gVGlsZVR5cGUyO1xufSkoVGlsZVR5cGUgfHwge30pO1xuZnVuY3Rpb24gdGlsZVR5cGVFeHQodCkge1xuICBpZiAodCA9PT0gMSAvKiBNdnQgKi8pXG4gICAgcmV0dXJuIFwiLm12dFwiO1xuICBpZiAodCA9PT0gMiAvKiBQbmcgKi8pXG4gICAgcmV0dXJuIFwiLnBuZ1wiO1xuICBpZiAodCA9PT0gMyAvKiBKcGVnICovKVxuICAgIHJldHVybiBcIi5qcGdcIjtcbiAgaWYgKHQgPT09IDQgLyogV2VicCAqLylcbiAgICByZXR1cm4gXCIud2VicFwiO1xuICBpZiAodCA9PT0gNSAvKiBBdmlmICovKVxuICAgIHJldHVybiBcIi5hdmlmXCI7XG4gIHJldHVybiBcIlwiO1xufVxudmFyIEhFQURFUl9TSVpFX0JZVEVTID0gMTI3O1xuZnVuY3Rpb24gZmluZFRpbGUoZW50cmllcywgdGlsZUlkKSB7XG4gIGxldCBtID0gMDtcbiAgbGV0IG4gPSBlbnRyaWVzLmxlbmd0aCAtIDE7XG4gIHdoaWxlIChtIDw9IG4pIHtcbiAgICBjb25zdCBrID0gbiArIG0gPj4gMTtcbiAgICBjb25zdCBjbXAgPSB0aWxlSWQgLSBlbnRyaWVzW2tdLnRpbGVJZDtcbiAgICBpZiAoY21wID4gMCkge1xuICAgICAgbSA9IGsgKyAxO1xuICAgIH0gZWxzZSBpZiAoY21wIDwgMCkge1xuICAgICAgbiA9IGsgLSAxO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gZW50cmllc1trXTtcbiAgICB9XG4gIH1cbiAgaWYgKG4gPj0gMCkge1xuICAgIGlmIChlbnRyaWVzW25dLnJ1bkxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuIGVudHJpZXNbbl07XG4gICAgfVxuICAgIGlmICh0aWxlSWQgLSBlbnRyaWVzW25dLnRpbGVJZCA8IGVudHJpZXNbbl0ucnVuTGVuZ3RoKSB7XG4gICAgICByZXR1cm4gZW50cmllc1tuXTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIG51bGw7XG59XG52YXIgRmlsZVNvdXJjZSA9IGNsYXNzIHtcbiAgY29uc3RydWN0b3IoZmlsZSkge1xuICAgIHRoaXMuZmlsZSA9IGZpbGU7XG4gIH1cbiAgZ2V0S2V5KCkge1xuICAgIHJldHVybiB0aGlzLmZpbGUubmFtZTtcbiAgfVxuICBnZXRCeXRlcyhvZmZzZXQsIGxlbmd0aCkge1xuICAgIHJldHVybiBfX2FzeW5jKHRoaXMsIG51bGwsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICBjb25zdCBibG9iID0gdGhpcy5maWxlLnNsaWNlKG9mZnNldCwgb2Zmc2V0ICsgbGVuZ3RoKTtcbiAgICAgIGNvbnN0IGEgPSB5aWVsZCBibG9iLmFycmF5QnVmZmVyKCk7XG4gICAgICByZXR1cm4geyBkYXRhOiBhIH07XG4gICAgfSk7XG4gIH1cbn07XG52YXIgRmV0Y2hTb3VyY2UgPSBjbGFzcyB7XG4gIGNvbnN0cnVjdG9yKHVybCwgY3VzdG9tSGVhZGVycyA9IG5ldyBIZWFkZXJzKCkpIHtcbiAgICB0aGlzLnVybCA9IHVybDtcbiAgICB0aGlzLmN1c3RvbUhlYWRlcnMgPSBjdXN0b21IZWFkZXJzO1xuICAgIHRoaXMubXVzdFJlbG9hZCA9IGZhbHNlO1xuICAgIGxldCB1c2VyQWdlbnQgPSBcIlwiO1xuICAgIGlmIChcIm5hdmlnYXRvclwiIGluIGdsb2JhbFRoaXMpIHtcbiAgICAgIHVzZXJBZ2VudCA9IGdsb2JhbFRoaXMubmF2aWdhdG9yLnVzZXJBZ2VudCB8fCBcIlwiO1xuICAgIH1cbiAgICBjb25zdCBpc1dpbmRvd3MgPSB1c2VyQWdlbnQuaW5kZXhPZihcIldpbmRvd3NcIikgPiAtMTtcbiAgICBjb25zdCBpc0Nocm9taXVtQmFzZWQgPSAvQ2hyb21lfENocm9taXVtfEVkZ3xPUFJ8QnJhdmUvLnRlc3QodXNlckFnZW50KTtcbiAgICB0aGlzLmNocm9tZVdpbmRvd3NOb0NhY2hlID0gZmFsc2U7XG4gICAgaWYgKGlzV2luZG93cyAmJiBpc0Nocm9taXVtQmFzZWQpIHtcbiAgICAgIHRoaXMuY2hyb21lV2luZG93c05vQ2FjaGUgPSB0cnVlO1xuICAgIH1cbiAgfVxuICBnZXRLZXkoKSB7XG4gICAgcmV0dXJuIHRoaXMudXJsO1xuICB9XG4gIC8qKlxuICAgKiBNdXRhdGUgdGhlIGN1c3RvbSBbSGVhZGVyc10oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQVBJL0hlYWRlcnMpIHNldCBmb3IgYWxsIHJlcXVlc3RzIHRvIHRoZSByZW1vdGUgYXJjaGl2ZS5cbiAgICovXG4gIHNldEhlYWRlcnMoY3VzdG9tSGVhZGVycykge1xuICAgIHRoaXMuY3VzdG9tSGVhZGVycyA9IGN1c3RvbUhlYWRlcnM7XG4gIH1cbiAgZ2V0Qnl0ZXMob2Zmc2V0LCBsZW5ndGgsIHBhc3NlZFNpZ25hbCwgZXRhZykge1xuICAgIHJldHVybiBfX2FzeW5jKHRoaXMsIG51bGwsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICBsZXQgY29udHJvbGxlcjtcbiAgICAgIGxldCBzaWduYWw7XG4gICAgICBpZiAocGFzc2VkU2lnbmFsKSB7XG4gICAgICAgIHNpZ25hbCA9IHBhc3NlZFNpZ25hbDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnRyb2xsZXIgPSBuZXcgQWJvcnRDb250cm9sbGVyKCk7XG4gICAgICAgIHNpZ25hbCA9IGNvbnRyb2xsZXIuc2lnbmFsO1xuICAgICAgfVxuICAgICAgY29uc3QgcmVxdWVzdEhlYWRlcnMgPSBuZXcgSGVhZGVycyh0aGlzLmN1c3RvbUhlYWRlcnMpO1xuICAgICAgcmVxdWVzdEhlYWRlcnMuc2V0KFwicmFuZ2VcIiwgYGJ5dGVzPSR7b2Zmc2V0fS0ke29mZnNldCArIGxlbmd0aCAtIDF9YCk7XG4gICAgICBsZXQgY2FjaGU7XG4gICAgICBpZiAodGhpcy5tdXN0UmVsb2FkKSB7XG4gICAgICAgIGNhY2hlID0gXCJyZWxvYWRcIjtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5jaHJvbWVXaW5kb3dzTm9DYWNoZSkge1xuICAgICAgICBjYWNoZSA9IFwibm8tc3RvcmVcIjtcbiAgICAgIH1cbiAgICAgIGxldCByZXNwID0geWllbGQgZmV0Y2godGhpcy51cmwsIHtcbiAgICAgICAgc2lnbmFsLFxuICAgICAgICBjYWNoZSxcbiAgICAgICAgaGVhZGVyczogcmVxdWVzdEhlYWRlcnNcbiAgICAgICAgLy9iaW9tZS1pZ25vcmUgbGludDogXCJjYWNoZVwiIGlzIGluY29tcGF0aWJsZSBiZXR3ZWVuIGNsb3VkZmxhcmUgd29ya2VycyBhbmQgYnJvd3NlclxuICAgICAgfSk7XG4gICAgICBpZiAob2Zmc2V0ID09PSAwICYmIHJlc3Auc3RhdHVzID09PSA0MTYpIHtcbiAgICAgICAgY29uc3QgY29udGVudFJhbmdlID0gcmVzcC5oZWFkZXJzLmdldChcIkNvbnRlbnQtUmFuZ2VcIik7XG4gICAgICAgIGlmICghY29udGVudFJhbmdlIHx8ICFjb250ZW50UmFuZ2Uuc3RhcnRzV2l0aChcImJ5dGVzICovXCIpKSB7XG4gICAgICAgICAgdGhyb3cgRXJyb3IoXCJNaXNzaW5nIGNvbnRlbnQtbGVuZ3RoIG9uIDQxNiByZXNwb25zZVwiKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBhY3R1YWxMZW5ndGggPSArY29udGVudFJhbmdlLnN1YnN0cig4KTtcbiAgICAgICAgcmVzcCA9IHlpZWxkIGZldGNoKHRoaXMudXJsLCB7XG4gICAgICAgICAgc2lnbmFsLFxuICAgICAgICAgIGNhY2hlOiBcInJlbG9hZFwiLFxuICAgICAgICAgIGhlYWRlcnM6IHsgcmFuZ2U6IGBieXRlcz0wLSR7YWN0dWFsTGVuZ3RoIC0gMX1gIH1cbiAgICAgICAgICAvL2Jpb21lLWlnbm9yZSBsaW50OiBcImNhY2hlXCIgaXMgaW5jb21wYXRpYmxlIGJldHdlZW4gY2xvdWRmbGFyZSB3b3JrZXJzIGFuZCBicm93c2VyXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgICAgbGV0IG5ld0V0YWcgPSByZXNwLmhlYWRlcnMuZ2V0KFwiRXRhZ1wiKTtcbiAgICAgIGlmIChuZXdFdGFnID09IG51bGwgPyB2b2lkIDAgOiBuZXdFdGFnLnN0YXJ0c1dpdGgoXCJXL1wiKSkge1xuICAgICAgICBuZXdFdGFnID0gbnVsbDtcbiAgICAgIH1cbiAgICAgIGlmIChyZXNwLnN0YXR1cyA9PT0gNDE2IHx8IGV0YWcgJiYgbmV3RXRhZyAmJiBuZXdFdGFnICE9PSBldGFnKSB7XG4gICAgICAgIHRoaXMubXVzdFJlbG9hZCA9IHRydWU7XG4gICAgICAgIHRocm93IG5ldyBFdGFnTWlzbWF0Y2goXG4gICAgICAgICAgYFNlcnZlciByZXR1cm5lZCBub24tbWF0Y2hpbmcgRVRhZyAke2V0YWd9IGFmdGVyIG9uZSByZXRyeS4gQ2hlY2sgYnJvd3NlciBleHRlbnNpb25zIGFuZCBzZXJ2ZXJzIGZvciBpc3N1ZXMgdGhhdCBtYXkgYWZmZWN0IGNvcnJlY3QgRVRhZyBoZWFkZXJzLmBcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIGlmIChyZXNwLnN0YXR1cyA+PSAzMDApIHtcbiAgICAgICAgdGhyb3cgRXJyb3IoYEJhZCByZXNwb25zZSBjb2RlOiAke3Jlc3Auc3RhdHVzfWApO1xuICAgICAgfVxuICAgICAgY29uc3QgY29udGVudExlbmd0aCA9IHJlc3AuaGVhZGVycy5nZXQoXCJDb250ZW50LUxlbmd0aFwiKTtcbiAgICAgIGlmIChyZXNwLnN0YXR1cyA9PT0gMjAwICYmICghY29udGVudExlbmd0aCB8fCArY29udGVudExlbmd0aCA+IGxlbmd0aCkpIHtcbiAgICAgICAgaWYgKGNvbnRyb2xsZXIpXG4gICAgICAgICAgY29udHJvbGxlci5hYm9ydCgpO1xuICAgICAgICB0aHJvdyBFcnJvcihcbiAgICAgICAgICBcIlNlcnZlciByZXR1cm5lZCBubyBjb250ZW50LWxlbmd0aCBoZWFkZXIgb3IgY29udGVudC1sZW5ndGggZXhjZWVkaW5nIHJlcXVlc3QuIENoZWNrIHRoYXQgeW91ciBzdG9yYWdlIGJhY2tlbmQgc3VwcG9ydHMgSFRUUCBCeXRlIFNlcnZpbmcuXCJcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGEgPSB5aWVsZCByZXNwLmFycmF5QnVmZmVyKCk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBkYXRhOiBhLFxuICAgICAgICBldGFnOiBuZXdFdGFnIHx8IHZvaWQgMCxcbiAgICAgICAgY2FjaGVDb250cm9sOiByZXNwLmhlYWRlcnMuZ2V0KFwiQ2FjaGUtQ29udHJvbFwiKSB8fCB2b2lkIDAsXG4gICAgICAgIGV4cGlyZXM6IHJlc3AuaGVhZGVycy5nZXQoXCJFeHBpcmVzXCIpIHx8IHZvaWQgMFxuICAgICAgfTtcbiAgICB9KTtcbiAgfVxufTtcbmZ1bmN0aW9uIGdldFVpbnQ2NCh2LCBvZmZzZXQpIHtcbiAgY29uc3Qgd2ggPSB2LmdldFVpbnQzMihvZmZzZXQgKyA0LCB0cnVlKTtcbiAgY29uc3Qgd2wgPSB2LmdldFVpbnQzMihvZmZzZXQgKyAwLCB0cnVlKTtcbiAgcmV0dXJuIHdoICogX19wb3coMiwgMzIpICsgd2w7XG59XG5mdW5jdGlvbiBieXRlc1RvSGVhZGVyKGJ5dGVzLCBldGFnKSB7XG4gIGNvbnN0IHYgPSBuZXcgRGF0YVZpZXcoYnl0ZXMpO1xuICBjb25zdCBzcGVjVmVyc2lvbiA9IHYuZ2V0VWludDgoNyk7XG4gIGlmIChzcGVjVmVyc2lvbiA+IDMpIHtcbiAgICB0aHJvdyBFcnJvcihcbiAgICAgIGBBcmNoaXZlIGlzIHNwZWMgdmVyc2lvbiAke3NwZWNWZXJzaW9ufSBidXQgdGhpcyBsaWJyYXJ5IHN1cHBvcnRzIHVwIHRvIHNwZWMgdmVyc2lvbiAzYFxuICAgICk7XG4gIH1cbiAgcmV0dXJuIHtcbiAgICBzcGVjVmVyc2lvbixcbiAgICByb290RGlyZWN0b3J5T2Zmc2V0OiBnZXRVaW50NjQodiwgOCksXG4gICAgcm9vdERpcmVjdG9yeUxlbmd0aDogZ2V0VWludDY0KHYsIDE2KSxcbiAgICBqc29uTWV0YWRhdGFPZmZzZXQ6IGdldFVpbnQ2NCh2LCAyNCksXG4gICAganNvbk1ldGFkYXRhTGVuZ3RoOiBnZXRVaW50NjQodiwgMzIpLFxuICAgIGxlYWZEaXJlY3RvcnlPZmZzZXQ6IGdldFVpbnQ2NCh2LCA0MCksXG4gICAgbGVhZkRpcmVjdG9yeUxlbmd0aDogZ2V0VWludDY0KHYsIDQ4KSxcbiAgICB0aWxlRGF0YU9mZnNldDogZ2V0VWludDY0KHYsIDU2KSxcbiAgICB0aWxlRGF0YUxlbmd0aDogZ2V0VWludDY0KHYsIDY0KSxcbiAgICBudW1BZGRyZXNzZWRUaWxlczogZ2V0VWludDY0KHYsIDcyKSxcbiAgICBudW1UaWxlRW50cmllczogZ2V0VWludDY0KHYsIDgwKSxcbiAgICBudW1UaWxlQ29udGVudHM6IGdldFVpbnQ2NCh2LCA4OCksXG4gICAgY2x1c3RlcmVkOiB2LmdldFVpbnQ4KDk2KSA9PT0gMSxcbiAgICBpbnRlcm5hbENvbXByZXNzaW9uOiB2LmdldFVpbnQ4KDk3KSxcbiAgICB0aWxlQ29tcHJlc3Npb246IHYuZ2V0VWludDgoOTgpLFxuICAgIHRpbGVUeXBlOiB2LmdldFVpbnQ4KDk5KSxcbiAgICBtaW5ab29tOiB2LmdldFVpbnQ4KDEwMCksXG4gICAgbWF4Wm9vbTogdi5nZXRVaW50OCgxMDEpLFxuICAgIG1pbkxvbjogdi5nZXRJbnQzMigxMDIsIHRydWUpIC8gMWU3LFxuICAgIG1pbkxhdDogdi5nZXRJbnQzMigxMDYsIHRydWUpIC8gMWU3LFxuICAgIG1heExvbjogdi5nZXRJbnQzMigxMTAsIHRydWUpIC8gMWU3LFxuICAgIG1heExhdDogdi5nZXRJbnQzMigxMTQsIHRydWUpIC8gMWU3LFxuICAgIGNlbnRlclpvb206IHYuZ2V0VWludDgoMTE4KSxcbiAgICBjZW50ZXJMb246IHYuZ2V0SW50MzIoMTE5LCB0cnVlKSAvIDFlNyxcbiAgICBjZW50ZXJMYXQ6IHYuZ2V0SW50MzIoMTIzLCB0cnVlKSAvIDFlNyxcbiAgICBldGFnXG4gIH07XG59XG5mdW5jdGlvbiBkZXNlcmlhbGl6ZUluZGV4KGJ1ZmZlcikge1xuICBjb25zdCBwID0geyBidWY6IG5ldyBVaW50OEFycmF5KGJ1ZmZlciksIHBvczogMCB9O1xuICBjb25zdCBudW1FbnRyaWVzID0gcmVhZFZhcmludChwKTtcbiAgY29uc3QgZW50cmllcyA9IFtdO1xuICBsZXQgbGFzdElkID0gMDtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBudW1FbnRyaWVzOyBpKyspIHtcbiAgICBjb25zdCB2ID0gcmVhZFZhcmludChwKTtcbiAgICBlbnRyaWVzLnB1c2goeyB0aWxlSWQ6IGxhc3RJZCArIHYsIG9mZnNldDogMCwgbGVuZ3RoOiAwLCBydW5MZW5ndGg6IDEgfSk7XG4gICAgbGFzdElkICs9IHY7XG4gIH1cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBudW1FbnRyaWVzOyBpKyspIHtcbiAgICBlbnRyaWVzW2ldLnJ1bkxlbmd0aCA9IHJlYWRWYXJpbnQocCk7XG4gIH1cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBudW1FbnRyaWVzOyBpKyspIHtcbiAgICBlbnRyaWVzW2ldLmxlbmd0aCA9IHJlYWRWYXJpbnQocCk7XG4gIH1cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBudW1FbnRyaWVzOyBpKyspIHtcbiAgICBjb25zdCB2ID0gcmVhZFZhcmludChwKTtcbiAgICBpZiAodiA9PT0gMCAmJiBpID4gMCkge1xuICAgICAgZW50cmllc1tpXS5vZmZzZXQgPSBlbnRyaWVzW2kgLSAxXS5vZmZzZXQgKyBlbnRyaWVzW2kgLSAxXS5sZW5ndGg7XG4gICAgfSBlbHNlIHtcbiAgICAgIGVudHJpZXNbaV0ub2Zmc2V0ID0gdiAtIDE7XG4gICAgfVxuICB9XG4gIHJldHVybiBlbnRyaWVzO1xufVxuZnVuY3Rpb24gZGV0ZWN0VmVyc2lvbihhKSB7XG4gIGNvbnN0IHYgPSBuZXcgRGF0YVZpZXcoYSk7XG4gIGlmICh2LmdldFVpbnQxNigyLCB0cnVlKSA9PT0gMikge1xuICAgIGNvbnNvbGUud2FybihcbiAgICAgIFwiUE1UaWxlcyBzcGVjIHZlcnNpb24gMiBoYXMgYmVlbiBkZXByZWNhdGVkOyBwbGVhc2Ugc2VlIGdpdGh1Yi5jb20vcHJvdG9tYXBzL1BNVGlsZXMgZm9yIHRvb2xzIHRvIHVwZ3JhZGVcIlxuICAgICk7XG4gICAgcmV0dXJuIDI7XG4gIH1cbiAgaWYgKHYuZ2V0VWludDE2KDIsIHRydWUpID09PSAxKSB7XG4gICAgY29uc29sZS53YXJuKFxuICAgICAgXCJQTVRpbGVzIHNwZWMgdmVyc2lvbiAxIGhhcyBiZWVuIGRlcHJlY2F0ZWQ7IHBsZWFzZSBzZWUgZ2l0aHViLmNvbS9wcm90b21hcHMvUE1UaWxlcyBmb3IgdG9vbHMgdG8gdXBncmFkZVwiXG4gICAgKTtcbiAgICByZXR1cm4gMTtcbiAgfVxuICByZXR1cm4gMztcbn1cbnZhciBFdGFnTWlzbWF0Y2ggPSBjbGFzcyBleHRlbmRzIEVycm9yIHtcbn07XG5mdW5jdGlvbiBnZXRIZWFkZXJBbmRSb290KHNvdXJjZSwgZGVjb21wcmVzcykge1xuICByZXR1cm4gX19hc3luYyh0aGlzLCBudWxsLCBmdW5jdGlvbiogKCkge1xuICAgIGNvbnN0IHJlc3AgPSB5aWVsZCBzb3VyY2UuZ2V0Qnl0ZXMoMCwgMTYzODQpO1xuICAgIGNvbnN0IHYgPSBuZXcgRGF0YVZpZXcocmVzcC5kYXRhKTtcbiAgICBpZiAodi5nZXRVaW50MTYoMCwgdHJ1ZSkgIT09IDE5NzkyKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJXcm9uZyBtYWdpYyBudW1iZXIgZm9yIFBNVGlsZXMgYXJjaGl2ZVwiKTtcbiAgICB9XG4gICAgaWYgKGRldGVjdFZlcnNpb24ocmVzcC5kYXRhKSA8IDMpIHtcbiAgICAgIHJldHVybiBbeWllbGQgdjJfZGVmYXVsdC5nZXRIZWFkZXIoc291cmNlKV07XG4gICAgfVxuICAgIGNvbnN0IGhlYWRlckRhdGEgPSByZXNwLmRhdGEuc2xpY2UoMCwgSEVBREVSX1NJWkVfQllURVMpO1xuICAgIGNvbnN0IGhlYWRlciA9IGJ5dGVzVG9IZWFkZXIoaGVhZGVyRGF0YSwgcmVzcC5ldGFnKTtcbiAgICBjb25zdCByb290RGlyRGF0YSA9IHJlc3AuZGF0YS5zbGljZShcbiAgICAgIGhlYWRlci5yb290RGlyZWN0b3J5T2Zmc2V0LFxuICAgICAgaGVhZGVyLnJvb3REaXJlY3RvcnlPZmZzZXQgKyBoZWFkZXIucm9vdERpcmVjdG9yeUxlbmd0aFxuICAgICk7XG4gICAgY29uc3QgZGlyS2V5ID0gYCR7c291cmNlLmdldEtleSgpfXwke2hlYWRlci5ldGFnIHx8IFwiXCJ9fCR7aGVhZGVyLnJvb3REaXJlY3RvcnlPZmZzZXR9fCR7aGVhZGVyLnJvb3REaXJlY3RvcnlMZW5ndGh9YDtcbiAgICBjb25zdCByb290RGlyID0gZGVzZXJpYWxpemVJbmRleChcbiAgICAgIHlpZWxkIGRlY29tcHJlc3Mocm9vdERpckRhdGEsIGhlYWRlci5pbnRlcm5hbENvbXByZXNzaW9uKVxuICAgICk7XG4gICAgcmV0dXJuIFtoZWFkZXIsIFtkaXJLZXksIHJvb3REaXIubGVuZ3RoLCByb290RGlyXV07XG4gIH0pO1xufVxuZnVuY3Rpb24gZ2V0RGlyZWN0b3J5KHNvdXJjZSwgZGVjb21wcmVzcywgb2Zmc2V0LCBsZW5ndGgsIGhlYWRlcikge1xuICByZXR1cm4gX19hc3luYyh0aGlzLCBudWxsLCBmdW5jdGlvbiogKCkge1xuICAgIGNvbnN0IHJlc3AgPSB5aWVsZCBzb3VyY2UuZ2V0Qnl0ZXMob2Zmc2V0LCBsZW5ndGgsIHZvaWQgMCwgaGVhZGVyLmV0YWcpO1xuICAgIGNvbnN0IGRhdGEgPSB5aWVsZCBkZWNvbXByZXNzKHJlc3AuZGF0YSwgaGVhZGVyLmludGVybmFsQ29tcHJlc3Npb24pO1xuICAgIGNvbnN0IGRpcmVjdG9yeSA9IGRlc2VyaWFsaXplSW5kZXgoZGF0YSk7XG4gICAgaWYgKGRpcmVjdG9yeS5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIkVtcHR5IGRpcmVjdG9yeSBpcyBpbnZhbGlkXCIpO1xuICAgIH1cbiAgICByZXR1cm4gZGlyZWN0b3J5O1xuICB9KTtcbn1cbnZhciBSZXNvbHZlZFZhbHVlQ2FjaGUgPSBjbGFzcyB7XG4gIGNvbnN0cnVjdG9yKG1heENhY2hlRW50cmllcyA9IDEwMCwgcHJlZmV0Y2ggPSB0cnVlLCBkZWNvbXByZXNzID0gZGVmYXVsdERlY29tcHJlc3MpIHtcbiAgICB0aGlzLmNhY2hlID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTtcbiAgICB0aGlzLm1heENhY2hlRW50cmllcyA9IG1heENhY2hlRW50cmllcztcbiAgICB0aGlzLmNvdW50ZXIgPSAxO1xuICAgIHRoaXMuZGVjb21wcmVzcyA9IGRlY29tcHJlc3M7XG4gIH1cbiAgZ2V0SGVhZGVyKHNvdXJjZSkge1xuICAgIHJldHVybiBfX2FzeW5jKHRoaXMsIG51bGwsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICBjb25zdCBjYWNoZUtleSA9IHNvdXJjZS5nZXRLZXkoKTtcbiAgICAgIGNvbnN0IGNhY2hlVmFsdWUgPSB0aGlzLmNhY2hlLmdldChjYWNoZUtleSk7XG4gICAgICBpZiAoY2FjaGVWYWx1ZSkge1xuICAgICAgICBjYWNoZVZhbHVlLmxhc3RVc2VkID0gdGhpcy5jb3VudGVyKys7XG4gICAgICAgIGNvbnN0IGRhdGEgPSBjYWNoZVZhbHVlLmRhdGE7XG4gICAgICAgIHJldHVybiBkYXRhO1xuICAgICAgfVxuICAgICAgY29uc3QgcmVzID0geWllbGQgZ2V0SGVhZGVyQW5kUm9vdChzb3VyY2UsIHRoaXMuZGVjb21wcmVzcyk7XG4gICAgICBpZiAocmVzWzFdKSB7XG4gICAgICAgIHRoaXMuY2FjaGUuc2V0KHJlc1sxXVswXSwge1xuICAgICAgICAgIGxhc3RVc2VkOiB0aGlzLmNvdW50ZXIrKyxcbiAgICAgICAgICBkYXRhOiByZXNbMV1bMl1cbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgICB0aGlzLmNhY2hlLnNldChjYWNoZUtleSwge1xuICAgICAgICBsYXN0VXNlZDogdGhpcy5jb3VudGVyKyssXG4gICAgICAgIGRhdGE6IHJlc1swXVxuICAgICAgfSk7XG4gICAgICB0aGlzLnBydW5lKCk7XG4gICAgICByZXR1cm4gcmVzWzBdO1xuICAgIH0pO1xuICB9XG4gIGdldERpcmVjdG9yeShzb3VyY2UsIG9mZnNldCwgbGVuZ3RoLCBoZWFkZXIpIHtcbiAgICByZXR1cm4gX19hc3luYyh0aGlzLCBudWxsLCBmdW5jdGlvbiogKCkge1xuICAgICAgY29uc3QgY2FjaGVLZXkgPSBgJHtzb3VyY2UuZ2V0S2V5KCl9fCR7aGVhZGVyLmV0YWcgfHwgXCJcIn18JHtvZmZzZXR9fCR7bGVuZ3RofWA7XG4gICAgICBjb25zdCBjYWNoZVZhbHVlID0gdGhpcy5jYWNoZS5nZXQoY2FjaGVLZXkpO1xuICAgICAgaWYgKGNhY2hlVmFsdWUpIHtcbiAgICAgICAgY2FjaGVWYWx1ZS5sYXN0VXNlZCA9IHRoaXMuY291bnRlcisrO1xuICAgICAgICBjb25zdCBkYXRhID0gY2FjaGVWYWx1ZS5kYXRhO1xuICAgICAgICByZXR1cm4gZGF0YTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGRpcmVjdG9yeSA9IHlpZWxkIGdldERpcmVjdG9yeShcbiAgICAgICAgc291cmNlLFxuICAgICAgICB0aGlzLmRlY29tcHJlc3MsXG4gICAgICAgIG9mZnNldCxcbiAgICAgICAgbGVuZ3RoLFxuICAgICAgICBoZWFkZXJcbiAgICAgICk7XG4gICAgICB0aGlzLmNhY2hlLnNldChjYWNoZUtleSwge1xuICAgICAgICBsYXN0VXNlZDogdGhpcy5jb3VudGVyKyssXG4gICAgICAgIGRhdGE6IGRpcmVjdG9yeVxuICAgICAgfSk7XG4gICAgICB0aGlzLnBydW5lKCk7XG4gICAgICByZXR1cm4gZGlyZWN0b3J5O1xuICAgIH0pO1xuICB9XG4gIC8vIGZvciB2MiBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuICBnZXRBcnJheUJ1ZmZlcihzb3VyY2UsIG9mZnNldCwgbGVuZ3RoLCBoZWFkZXIpIHtcbiAgICByZXR1cm4gX19hc3luYyh0aGlzLCBudWxsLCBmdW5jdGlvbiogKCkge1xuICAgICAgY29uc3QgY2FjaGVLZXkgPSBgJHtzb3VyY2UuZ2V0S2V5KCl9fCR7aGVhZGVyLmV0YWcgfHwgXCJcIn18JHtvZmZzZXR9fCR7bGVuZ3RofWA7XG4gICAgICBjb25zdCBjYWNoZVZhbHVlID0gdGhpcy5jYWNoZS5nZXQoY2FjaGVLZXkpO1xuICAgICAgaWYgKGNhY2hlVmFsdWUpIHtcbiAgICAgICAgY2FjaGVWYWx1ZS5sYXN0VXNlZCA9IHRoaXMuY291bnRlcisrO1xuICAgICAgICBjb25zdCBkYXRhID0geWllbGQgY2FjaGVWYWx1ZS5kYXRhO1xuICAgICAgICByZXR1cm4gZGF0YTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHJlc3AgPSB5aWVsZCBzb3VyY2UuZ2V0Qnl0ZXMob2Zmc2V0LCBsZW5ndGgsIHZvaWQgMCwgaGVhZGVyLmV0YWcpO1xuICAgICAgdGhpcy5jYWNoZS5zZXQoY2FjaGVLZXksIHtcbiAgICAgICAgbGFzdFVzZWQ6IHRoaXMuY291bnRlcisrLFxuICAgICAgICBkYXRhOiByZXNwLmRhdGFcbiAgICAgIH0pO1xuICAgICAgdGhpcy5wcnVuZSgpO1xuICAgICAgcmV0dXJuIHJlc3AuZGF0YTtcbiAgICB9KTtcbiAgfVxuICBwcnVuZSgpIHtcbiAgICBpZiAodGhpcy5jYWNoZS5zaXplID4gdGhpcy5tYXhDYWNoZUVudHJpZXMpIHtcbiAgICAgIGxldCBtaW5Vc2VkID0gSW5maW5pdHk7XG4gICAgICBsZXQgbWluS2V5ID0gdm9pZCAwO1xuICAgICAgdGhpcy5jYWNoZS5mb3JFYWNoKChjYWNoZVZhbHVlLCBrZXkpID0+IHtcbiAgICAgICAgaWYgKGNhY2hlVmFsdWUubGFzdFVzZWQgPCBtaW5Vc2VkKSB7XG4gICAgICAgICAgbWluVXNlZCA9IGNhY2hlVmFsdWUubGFzdFVzZWQ7XG4gICAgICAgICAgbWluS2V5ID0ga2V5O1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIGlmIChtaW5LZXkpIHtcbiAgICAgICAgdGhpcy5jYWNoZS5kZWxldGUobWluS2V5KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgaW52YWxpZGF0ZShzb3VyY2UpIHtcbiAgICByZXR1cm4gX19hc3luYyh0aGlzLCBudWxsLCBmdW5jdGlvbiogKCkge1xuICAgICAgdGhpcy5jYWNoZS5kZWxldGUoc291cmNlLmdldEtleSgpKTtcbiAgICB9KTtcbiAgfVxufTtcbnZhciBTaGFyZWRQcm9taXNlQ2FjaGUgPSBjbGFzcyB7XG4gIGNvbnN0cnVjdG9yKG1heENhY2hlRW50cmllcyA9IDEwMCwgcHJlZmV0Y2ggPSB0cnVlLCBkZWNvbXByZXNzID0gZGVmYXVsdERlY29tcHJlc3MpIHtcbiAgICB0aGlzLmNhY2hlID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTtcbiAgICB0aGlzLmludmFsaWRhdGlvbnMgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpO1xuICAgIHRoaXMubWF4Q2FjaGVFbnRyaWVzID0gbWF4Q2FjaGVFbnRyaWVzO1xuICAgIHRoaXMuY291bnRlciA9IDE7XG4gICAgdGhpcy5kZWNvbXByZXNzID0gZGVjb21wcmVzcztcbiAgfVxuICBnZXRIZWFkZXIoc291cmNlKSB7XG4gICAgcmV0dXJuIF9fYXN5bmModGhpcywgbnVsbCwgZnVuY3Rpb24qICgpIHtcbiAgICAgIGNvbnN0IGNhY2hlS2V5ID0gc291cmNlLmdldEtleSgpO1xuICAgICAgY29uc3QgY2FjaGVWYWx1ZSA9IHRoaXMuY2FjaGUuZ2V0KGNhY2hlS2V5KTtcbiAgICAgIGlmIChjYWNoZVZhbHVlKSB7XG4gICAgICAgIGNhY2hlVmFsdWUubGFzdFVzZWQgPSB0aGlzLmNvdW50ZXIrKztcbiAgICAgICAgY29uc3QgZGF0YSA9IHlpZWxkIGNhY2hlVmFsdWUuZGF0YTtcbiAgICAgICAgcmV0dXJuIGRhdGE7XG4gICAgICB9XG4gICAgICBjb25zdCBwID0gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICBnZXRIZWFkZXJBbmRSb290KHNvdXJjZSwgdGhpcy5kZWNvbXByZXNzKS50aGVuKChyZXMpID0+IHtcbiAgICAgICAgICBpZiAocmVzWzFdKSB7XG4gICAgICAgICAgICB0aGlzLmNhY2hlLnNldChyZXNbMV1bMF0sIHtcbiAgICAgICAgICAgICAgbGFzdFVzZWQ6IHRoaXMuY291bnRlcisrLFxuICAgICAgICAgICAgICBkYXRhOiBQcm9taXNlLnJlc29sdmUocmVzWzFdWzJdKVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJlc29sdmUocmVzWzBdKTtcbiAgICAgICAgICB0aGlzLnBydW5lKCk7XG4gICAgICAgIH0pLmNhdGNoKChlKSA9PiB7XG4gICAgICAgICAgcmVqZWN0KGUpO1xuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgICAgdGhpcy5jYWNoZS5zZXQoY2FjaGVLZXksIHsgbGFzdFVzZWQ6IHRoaXMuY291bnRlcisrLCBkYXRhOiBwIH0pO1xuICAgICAgcmV0dXJuIHA7XG4gICAgfSk7XG4gIH1cbiAgZ2V0RGlyZWN0b3J5KHNvdXJjZSwgb2Zmc2V0LCBsZW5ndGgsIGhlYWRlcikge1xuICAgIHJldHVybiBfX2FzeW5jKHRoaXMsIG51bGwsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICBjb25zdCBjYWNoZUtleSA9IGAke3NvdXJjZS5nZXRLZXkoKX18JHtoZWFkZXIuZXRhZyB8fCBcIlwifXwke29mZnNldH18JHtsZW5ndGh9YDtcbiAgICAgIGNvbnN0IGNhY2hlVmFsdWUgPSB0aGlzLmNhY2hlLmdldChjYWNoZUtleSk7XG4gICAgICBpZiAoY2FjaGVWYWx1ZSkge1xuICAgICAgICBjYWNoZVZhbHVlLmxhc3RVc2VkID0gdGhpcy5jb3VudGVyKys7XG4gICAgICAgIGNvbnN0IGRhdGEgPSB5aWVsZCBjYWNoZVZhbHVlLmRhdGE7XG4gICAgICAgIHJldHVybiBkYXRhO1xuICAgICAgfVxuICAgICAgY29uc3QgcCA9IG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgZ2V0RGlyZWN0b3J5KHNvdXJjZSwgdGhpcy5kZWNvbXByZXNzLCBvZmZzZXQsIGxlbmd0aCwgaGVhZGVyKS50aGVuKChkaXJlY3RvcnkpID0+IHtcbiAgICAgICAgICByZXNvbHZlKGRpcmVjdG9yeSk7XG4gICAgICAgICAgdGhpcy5wcnVuZSgpO1xuICAgICAgICB9KS5jYXRjaCgoZSkgPT4ge1xuICAgICAgICAgIHJlamVjdChlKTtcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICAgIHRoaXMuY2FjaGUuc2V0KGNhY2hlS2V5LCB7IGxhc3RVc2VkOiB0aGlzLmNvdW50ZXIrKywgZGF0YTogcCB9KTtcbiAgICAgIHJldHVybiBwO1xuICAgIH0pO1xuICB9XG4gIC8vIGZvciB2MiBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuICBnZXRBcnJheUJ1ZmZlcihzb3VyY2UsIG9mZnNldCwgbGVuZ3RoLCBoZWFkZXIpIHtcbiAgICByZXR1cm4gX19hc3luYyh0aGlzLCBudWxsLCBmdW5jdGlvbiogKCkge1xuICAgICAgY29uc3QgY2FjaGVLZXkgPSBgJHtzb3VyY2UuZ2V0S2V5KCl9fCR7aGVhZGVyLmV0YWcgfHwgXCJcIn18JHtvZmZzZXR9fCR7bGVuZ3RofWA7XG4gICAgICBjb25zdCBjYWNoZVZhbHVlID0gdGhpcy5jYWNoZS5nZXQoY2FjaGVLZXkpO1xuICAgICAgaWYgKGNhY2hlVmFsdWUpIHtcbiAgICAgICAgY2FjaGVWYWx1ZS5sYXN0VXNlZCA9IHRoaXMuY291bnRlcisrO1xuICAgICAgICBjb25zdCBkYXRhID0geWllbGQgY2FjaGVWYWx1ZS5kYXRhO1xuICAgICAgICByZXR1cm4gZGF0YTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHAgPSBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgIHNvdXJjZS5nZXRCeXRlcyhvZmZzZXQsIGxlbmd0aCwgdm9pZCAwLCBoZWFkZXIuZXRhZykudGhlbigocmVzcCkgPT4ge1xuICAgICAgICAgIHJlc29sdmUocmVzcC5kYXRhKTtcbiAgICAgICAgICBpZiAodGhpcy5jYWNoZS5oYXMoY2FjaGVLZXkpKSB7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRoaXMucHJ1bmUoKTtcbiAgICAgICAgfSkuY2F0Y2goKGUpID0+IHtcbiAgICAgICAgICByZWplY3QoZSk7XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgICB0aGlzLmNhY2hlLnNldChjYWNoZUtleSwgeyBsYXN0VXNlZDogdGhpcy5jb3VudGVyKyssIGRhdGE6IHAgfSk7XG4gICAgICByZXR1cm4gcDtcbiAgICB9KTtcbiAgfVxuICBwcnVuZSgpIHtcbiAgICBpZiAodGhpcy5jYWNoZS5zaXplID49IHRoaXMubWF4Q2FjaGVFbnRyaWVzKSB7XG4gICAgICBsZXQgbWluVXNlZCA9IEluZmluaXR5O1xuICAgICAgbGV0IG1pbktleSA9IHZvaWQgMDtcbiAgICAgIHRoaXMuY2FjaGUuZm9yRWFjaCgoY2FjaGVWYWx1ZSwga2V5KSA9PiB7XG4gICAgICAgIGlmIChjYWNoZVZhbHVlLmxhc3RVc2VkIDwgbWluVXNlZCkge1xuICAgICAgICAgIG1pblVzZWQgPSBjYWNoZVZhbHVlLmxhc3RVc2VkO1xuICAgICAgICAgIG1pbktleSA9IGtleTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICBpZiAobWluS2V5KSB7XG4gICAgICAgIHRoaXMuY2FjaGUuZGVsZXRlKG1pbktleSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIGludmFsaWRhdGUoc291cmNlKSB7XG4gICAgcmV0dXJuIF9fYXN5bmModGhpcywgbnVsbCwgZnVuY3Rpb24qICgpIHtcbiAgICAgIGNvbnN0IGtleSA9IHNvdXJjZS5nZXRLZXkoKTtcbiAgICAgIGlmICh0aGlzLmludmFsaWRhdGlvbnMuZ2V0KGtleSkpIHtcbiAgICAgICAgcmV0dXJuIHlpZWxkIHRoaXMuaW52YWxpZGF0aW9ucy5nZXQoa2V5KTtcbiAgICAgIH1cbiAgICAgIHRoaXMuY2FjaGUuZGVsZXRlKHNvdXJjZS5nZXRLZXkoKSk7XG4gICAgICBjb25zdCBwID0gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICB0aGlzLmdldEhlYWRlcihzb3VyY2UpLnRoZW4oKGgpID0+IHtcbiAgICAgICAgICByZXNvbHZlKCk7XG4gICAgICAgICAgdGhpcy5pbnZhbGlkYXRpb25zLmRlbGV0ZShrZXkpO1xuICAgICAgICB9KS5jYXRjaCgoZSkgPT4ge1xuICAgICAgICAgIHJlamVjdChlKTtcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICAgIHRoaXMuaW52YWxpZGF0aW9ucy5zZXQoa2V5LCBwKTtcbiAgICB9KTtcbiAgfVxufTtcbnZhciBQTVRpbGVzID0gY2xhc3Mge1xuICBjb25zdHJ1Y3Rvcihzb3VyY2UsIGNhY2hlLCBkZWNvbXByZXNzKSB7XG4gICAgaWYgKHR5cGVvZiBzb3VyY2UgPT09IFwic3RyaW5nXCIpIHtcbiAgICAgIHRoaXMuc291cmNlID0gbmV3IEZldGNoU291cmNlKHNvdXJjZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc291cmNlID0gc291cmNlO1xuICAgIH1cbiAgICBpZiAoZGVjb21wcmVzcykge1xuICAgICAgdGhpcy5kZWNvbXByZXNzID0gZGVjb21wcmVzcztcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kZWNvbXByZXNzID0gZGVmYXVsdERlY29tcHJlc3M7XG4gICAgfVxuICAgIGlmIChjYWNoZSkge1xuICAgICAgdGhpcy5jYWNoZSA9IGNhY2hlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNhY2hlID0gbmV3IFNoYXJlZFByb21pc2VDYWNoZSgpO1xuICAgIH1cbiAgfVxuICAvKipcbiAgICogUmV0dXJuIHRoZSBoZWFkZXIgb2YgdGhlIGFyY2hpdmUsXG4gICAqIGluY2x1ZGluZyBpbmZvcm1hdGlvbiBzdWNoIGFzIHRpbGUgdHlwZSwgbWluL21heCB6b29tLCBib3VuZHMsIGFuZCBzdW1tYXJ5IHN0YXRpc3RpY3MuXG4gICAqL1xuICBnZXRIZWFkZXIoKSB7XG4gICAgcmV0dXJuIF9fYXN5bmModGhpcywgbnVsbCwgZnVuY3Rpb24qICgpIHtcbiAgICAgIHJldHVybiB5aWVsZCB0aGlzLmNhY2hlLmdldEhlYWRlcih0aGlzLnNvdXJjZSk7XG4gICAgfSk7XG4gIH1cbiAgLyoqIEBoaWRkZW4gKi9cbiAgZ2V0Wnh5QXR0ZW1wdCh6LCB4LCB5LCBzaWduYWwpIHtcbiAgICByZXR1cm4gX19hc3luYyh0aGlzLCBudWxsLCBmdW5jdGlvbiogKCkge1xuICAgICAgY29uc3QgdGlsZUlkID0genh5VG9UaWxlSWQoeiwgeCwgeSk7XG4gICAgICBjb25zdCBoZWFkZXIgPSB5aWVsZCB0aGlzLmNhY2hlLmdldEhlYWRlcih0aGlzLnNvdXJjZSk7XG4gICAgICBpZiAoaGVhZGVyLnNwZWNWZXJzaW9uIDwgMykge1xuICAgICAgICByZXR1cm4gdjJfZGVmYXVsdC5nZXRaeHkoaGVhZGVyLCB0aGlzLnNvdXJjZSwgdGhpcy5jYWNoZSwgeiwgeCwgeSwgc2lnbmFsKTtcbiAgICAgIH1cbiAgICAgIGlmICh6IDwgaGVhZGVyLm1pblpvb20gfHwgeiA+IGhlYWRlci5tYXhab29tKSB7XG4gICAgICAgIHJldHVybiB2b2lkIDA7XG4gICAgICB9XG4gICAgICBsZXQgZE8gPSBoZWFkZXIucm9vdERpcmVjdG9yeU9mZnNldDtcbiAgICAgIGxldCBkTCA9IGhlYWRlci5yb290RGlyZWN0b3J5TGVuZ3RoO1xuICAgICAgZm9yIChsZXQgZGVwdGggPSAwOyBkZXB0aCA8PSAzOyBkZXB0aCsrKSB7XG4gICAgICAgIGNvbnN0IGRpcmVjdG9yeSA9IHlpZWxkIHRoaXMuY2FjaGUuZ2V0RGlyZWN0b3J5KFxuICAgICAgICAgIHRoaXMuc291cmNlLFxuICAgICAgICAgIGRPLFxuICAgICAgICAgIGRMLFxuICAgICAgICAgIGhlYWRlclxuICAgICAgICApO1xuICAgICAgICBjb25zdCBlbnRyeSA9IGZpbmRUaWxlKGRpcmVjdG9yeSwgdGlsZUlkKTtcbiAgICAgICAgaWYgKGVudHJ5KSB7XG4gICAgICAgICAgaWYgKGVudHJ5LnJ1bkxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGNvbnN0IHJlc3AgPSB5aWVsZCB0aGlzLnNvdXJjZS5nZXRCeXRlcyhcbiAgICAgICAgICAgICAgaGVhZGVyLnRpbGVEYXRhT2Zmc2V0ICsgZW50cnkub2Zmc2V0LFxuICAgICAgICAgICAgICBlbnRyeS5sZW5ndGgsXG4gICAgICAgICAgICAgIHNpZ25hbCxcbiAgICAgICAgICAgICAgaGVhZGVyLmV0YWdcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICBkYXRhOiB5aWVsZCB0aGlzLmRlY29tcHJlc3MocmVzcC5kYXRhLCBoZWFkZXIudGlsZUNvbXByZXNzaW9uKSxcbiAgICAgICAgICAgICAgY2FjaGVDb250cm9sOiByZXNwLmNhY2hlQ29udHJvbCxcbiAgICAgICAgICAgICAgZXhwaXJlczogcmVzcC5leHBpcmVzXG4gICAgICAgICAgICB9O1xuICAgICAgICAgIH1cbiAgICAgICAgICBkTyA9IGhlYWRlci5sZWFmRGlyZWN0b3J5T2Zmc2V0ICsgZW50cnkub2Zmc2V0O1xuICAgICAgICAgIGRMID0gZW50cnkubGVuZ3RoO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiB2b2lkIDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHRocm93IEVycm9yKFwiTWF4aW11bSBkaXJlY3RvcnkgZGVwdGggZXhjZWVkZWRcIik7XG4gICAgfSk7XG4gIH1cbiAgLyoqXG4gICAqIFByaW1hcnkgbWV0aG9kIHRvIGdldCBhIHNpbmdsZSB0aWxlJ3MgYnl0ZXMgZnJvbSBhbiBhcmNoaXZlLlxuICAgKlxuICAgKiBSZXR1cm5zIHVuZGVmaW5lZCBpZiB0aGUgdGlsZSBkb2VzIG5vdCBleGlzdCBpbiB0aGUgYXJjaGl2ZS5cbiAgICovXG4gIGdldFp4eSh6LCB4LCB5LCBzaWduYWwpIHtcbiAgICByZXR1cm4gX19hc3luYyh0aGlzLCBudWxsLCBmdW5jdGlvbiogKCkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgcmV0dXJuIHlpZWxkIHRoaXMuZ2V0Wnh5QXR0ZW1wdCh6LCB4LCB5LCBzaWduYWwpO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBpZiAoZSBpbnN0YW5jZW9mIEV0YWdNaXNtYXRjaCkge1xuICAgICAgICAgIHRoaXMuY2FjaGUuaW52YWxpZGF0ZSh0aGlzLnNvdXJjZSk7XG4gICAgICAgICAgcmV0dXJuIHlpZWxkIHRoaXMuZ2V0Wnh5QXR0ZW1wdCh6LCB4LCB5LCBzaWduYWwpO1xuICAgICAgICB9XG4gICAgICAgIHRocm93IGU7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbiAgLyoqIEBoaWRkZW4gKi9cbiAgZ2V0TWV0YWRhdGFBdHRlbXB0KCkge1xuICAgIHJldHVybiBfX2FzeW5jKHRoaXMsIG51bGwsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICBjb25zdCBoZWFkZXIgPSB5aWVsZCB0aGlzLmNhY2hlLmdldEhlYWRlcih0aGlzLnNvdXJjZSk7XG4gICAgICBjb25zdCByZXNwID0geWllbGQgdGhpcy5zb3VyY2UuZ2V0Qnl0ZXMoXG4gICAgICAgIGhlYWRlci5qc29uTWV0YWRhdGFPZmZzZXQsXG4gICAgICAgIGhlYWRlci5qc29uTWV0YWRhdGFMZW5ndGgsXG4gICAgICAgIHZvaWQgMCxcbiAgICAgICAgaGVhZGVyLmV0YWdcbiAgICAgICk7XG4gICAgICBjb25zdCBkZWNvbXByZXNzZWQgPSB5aWVsZCB0aGlzLmRlY29tcHJlc3MoXG4gICAgICAgIHJlc3AuZGF0YSxcbiAgICAgICAgaGVhZGVyLmludGVybmFsQ29tcHJlc3Npb25cbiAgICAgICk7XG4gICAgICBjb25zdCBkZWMgPSBuZXcgVGV4dERlY29kZXIoXCJ1dGYtOFwiKTtcbiAgICAgIHJldHVybiBKU09OLnBhcnNlKGRlYy5kZWNvZGUoZGVjb21wcmVzc2VkKSk7XG4gICAgfSk7XG4gIH1cbiAgLyoqXG4gICAqIFJldHVybiB0aGUgYXJiaXRyYXJ5IEpTT04gbWV0YWRhdGEgb2YgdGhlIGFyY2hpdmUuXG4gICAqL1xuICBnZXRNZXRhZGF0YSgpIHtcbiAgICByZXR1cm4gX19hc3luYyh0aGlzLCBudWxsLCBmdW5jdGlvbiogKCkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgcmV0dXJuIHlpZWxkIHRoaXMuZ2V0TWV0YWRhdGFBdHRlbXB0KCk7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIGlmIChlIGluc3RhbmNlb2YgRXRhZ01pc21hdGNoKSB7XG4gICAgICAgICAgdGhpcy5jYWNoZS5pbnZhbGlkYXRlKHRoaXMuc291cmNlKTtcbiAgICAgICAgICByZXR1cm4geWllbGQgdGhpcy5nZXRNZXRhZGF0YUF0dGVtcHQoKTtcbiAgICAgICAgfVxuICAgICAgICB0aHJvdyBlO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG4gIC8qKlxuICAgKiBDb25zdHJ1Y3QgYSBbVGlsZUpTT05dKGh0dHBzOi8vZ2l0aHViLmNvbS9tYXBib3gvdGlsZWpzb24tc3BlYykgb2JqZWN0LlxuICAgKlxuICAgKiBiYXNlVGlsZXNVcmwgaXMgdGhlIGRlc2lyZWQgdGlsZXMgVVJMLCBleGNsdWRpbmcgdGhlIHN1ZmZpeCBgL3t6fS97eH0ve3l9LntleHR9YC5cbiAgICogRm9yIGV4YW1wbGUsIGlmIHRoZSBkZXNpcmVkIFVSTCBpcyBgaHR0cDovL2V4YW1wbGUuY29tL3RpbGVzZXQve3p9L3t4fS97eX0ubXZ0YCxcbiAgICogdGhlIGJhc2VUaWxlc1VybCBzaG91bGQgYmUgYGh0dHBzOi8vZXhhbXBsZS5jb20vdGlsZXNldGAuXG4gICAqL1xuICBnZXRUaWxlSnNvbihiYXNlVGlsZXNVcmwpIHtcbiAgICByZXR1cm4gX19hc3luYyh0aGlzLCBudWxsLCBmdW5jdGlvbiogKCkge1xuICAgICAgY29uc3QgaGVhZGVyID0geWllbGQgdGhpcy5nZXRIZWFkZXIoKTtcbiAgICAgIGNvbnN0IG1ldGFkYXRhID0geWllbGQgdGhpcy5nZXRNZXRhZGF0YSgpO1xuICAgICAgY29uc3QgZXh0ID0gdGlsZVR5cGVFeHQoaGVhZGVyLnRpbGVUeXBlKTtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHRpbGVqc29uOiBcIjMuMC4wXCIsXG4gICAgICAgIHNjaGVtZTogXCJ4eXpcIixcbiAgICAgICAgdGlsZXM6IFtgJHtiYXNlVGlsZXNVcmx9L3t6fS97eH0ve3l9JHtleHR9YF0sXG4gICAgICAgIC8vIGJpb21lLWlnbm9yZSBsaW50OiBUaWxlSlNPTiBzcGVjXG4gICAgICAgIHZlY3Rvcl9sYXllcnM6IG1ldGFkYXRhLnZlY3Rvcl9sYXllcnMsXG4gICAgICAgIGF0dHJpYnV0aW9uOiBtZXRhZGF0YS5hdHRyaWJ1dGlvbixcbiAgICAgICAgZGVzY3JpcHRpb246IG1ldGFkYXRhLmRlc2NyaXB0aW9uLFxuICAgICAgICBuYW1lOiBtZXRhZGF0YS5uYW1lLFxuICAgICAgICB2ZXJzaW9uOiBtZXRhZGF0YS52ZXJzaW9uLFxuICAgICAgICBib3VuZHM6IFtoZWFkZXIubWluTG9uLCBoZWFkZXIubWluTGF0LCBoZWFkZXIubWF4TG9uLCBoZWFkZXIubWF4TGF0XSxcbiAgICAgICAgY2VudGVyOiBbaGVhZGVyLmNlbnRlckxvbiwgaGVhZGVyLmNlbnRlckxhdCwgaGVhZGVyLmNlbnRlclpvb21dLFxuICAgICAgICBtaW56b29tOiBoZWFkZXIubWluWm9vbSxcbiAgICAgICAgbWF4em9vbTogaGVhZGVyLm1heFpvb21cbiAgICAgIH07XG4gICAgfSk7XG4gIH1cbn07XG5leHBvcnQge1xuICBDb21wcmVzc2lvbixcbiAgRXRhZ01pc21hdGNoLFxuICBGZXRjaFNvdXJjZSxcbiAgRmlsZVNvdXJjZSxcbiAgUE1UaWxlcyxcbiAgUHJvdG9jb2wsXG4gIFJlc29sdmVkVmFsdWVDYWNoZSxcbiAgU2hhcmVkUHJvbWlzZUNhY2hlLFxuICBUaWxlVHlwZSxcbiAgYnl0ZXNUb0hlYWRlcixcbiAgZmluZFRpbGUsXG4gIGdldFVpbnQ2NCxcbiAgbGVhZmxldFJhc3RlckxheWVyLFxuICByZWFkVmFyaW50LFxuICB0aWxlSWRUb1p4eSxcbiAgdGlsZVR5cGVFeHQsXG4gIHp4eVRvVGlsZUlkXG59O1xuIiwiLy8gVGhlIG1vZHVsZSBjYWNoZVxudmFyIF9fd2VicGFja19tb2R1bGVfY2FjaGVfXyA9IHt9O1xuXG4vLyBUaGUgcmVxdWlyZSBmdW5jdGlvblxuZnVuY3Rpb24gX193ZWJwYWNrX3JlcXVpcmVfXyhtb2R1bGVJZCkge1xuXHQvLyBDaGVjayBpZiBtb2R1bGUgaXMgaW4gY2FjaGVcblx0dmFyIGNhY2hlZE1vZHVsZSA9IF9fd2VicGFja19tb2R1bGVfY2FjaGVfX1ttb2R1bGVJZF07XG5cdGlmIChjYWNoZWRNb2R1bGUgIT09IHVuZGVmaW5lZCkge1xuXHRcdHJldHVybiBjYWNoZWRNb2R1bGUuZXhwb3J0cztcblx0fVxuXHQvLyBDcmVhdGUgYSBuZXcgbW9kdWxlIChhbmQgcHV0IGl0IGludG8gdGhlIGNhY2hlKVxuXHR2YXIgbW9kdWxlID0gX193ZWJwYWNrX21vZHVsZV9jYWNoZV9fW21vZHVsZUlkXSA9IHtcblx0XHQvLyBubyBtb2R1bGUuaWQgbmVlZGVkXG5cdFx0Ly8gbm8gbW9kdWxlLmxvYWRlZCBuZWVkZWRcblx0XHRleHBvcnRzOiB7fVxuXHR9O1xuXG5cdC8vIEV4ZWN1dGUgdGhlIG1vZHVsZSBmdW5jdGlvblxuXHRfX3dlYnBhY2tfbW9kdWxlc19fW21vZHVsZUlkXS5jYWxsKG1vZHVsZS5leHBvcnRzLCBtb2R1bGUsIG1vZHVsZS5leHBvcnRzLCBfX3dlYnBhY2tfcmVxdWlyZV9fKTtcblxuXHQvLyBSZXR1cm4gdGhlIGV4cG9ydHMgb2YgdGhlIG1vZHVsZVxuXHRyZXR1cm4gbW9kdWxlLmV4cG9ydHM7XG59XG5cbiIsIi8vIGdldERlZmF1bHRFeHBvcnQgZnVuY3Rpb24gZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBub24taGFybW9ueSBtb2R1bGVzXG5fX3dlYnBhY2tfcmVxdWlyZV9fLm4gPSAobW9kdWxlKSA9PiB7XG5cdHZhciBnZXR0ZXIgPSBtb2R1bGUgJiYgbW9kdWxlLl9fZXNNb2R1bGUgP1xuXHRcdCgpID0+IChtb2R1bGVbJ2RlZmF1bHQnXSkgOlxuXHRcdCgpID0+IChtb2R1bGUpO1xuXHRfX3dlYnBhY2tfcmVxdWlyZV9fLmQoZ2V0dGVyLCB7IGE6IGdldHRlciB9KTtcblx0cmV0dXJuIGdldHRlcjtcbn07IiwiLy8gZGVmaW5lIGdldHRlciBmdW5jdGlvbnMgZm9yIGhhcm1vbnkgZXhwb3J0c1xuX193ZWJwYWNrX3JlcXVpcmVfXy5kID0gKGV4cG9ydHMsIGRlZmluaXRpb24pID0+IHtcblx0Zm9yKHZhciBrZXkgaW4gZGVmaW5pdGlvbikge1xuXHRcdGlmKF9fd2VicGFja19yZXF1aXJlX18ubyhkZWZpbml0aW9uLCBrZXkpICYmICFfX3dlYnBhY2tfcmVxdWlyZV9fLm8oZXhwb3J0cywga2V5KSkge1xuXHRcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIGtleSwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGRlZmluaXRpb25ba2V5XSB9KTtcblx0XHR9XG5cdH1cbn07IiwiX193ZWJwYWNrX3JlcXVpcmVfXy5vID0gKG9iaiwgcHJvcCkgPT4gKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvYmosIHByb3ApKSIsIi8vIGRlZmluZSBfX2VzTW9kdWxlIG9uIGV4cG9ydHNcbl9fd2VicGFja19yZXF1aXJlX18uciA9IChleHBvcnRzKSA9PiB7XG5cdGlmKHR5cGVvZiBTeW1ib2wgIT09ICd1bmRlZmluZWQnICYmIFN5bWJvbC50b1N0cmluZ1RhZykge1xuXHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXHR9XG5cdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCAnX19lc01vZHVsZScsIHsgdmFsdWU6IHRydWUgfSk7XG59OyIsImltcG9ydCBcIi4vTWFwXCI7XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0= \ No newline at end of file diff --git a/static/js/bundle.js.LICENSE.txt b/static/js/bundle.js.LICENSE.txt new file mode 100644 index 0000000..c0526d9 --- /dev/null +++ b/static/js/bundle.js.LICENSE.txt @@ -0,0 +1,4 @@ +/** + * MapLibre GL JS + * @license 3-Clause BSD. Full text of license: https://github.com/maplibre/maplibre-gl-js/blob/v4.7.1/LICENSE.txt + */ diff --git a/static/src/earth.geojson b/static/src/earth.geojson new file mode 100644 index 0000000..2615e6d --- /dev/null +++ b/static/src/earth.geojson @@ -0,0 +1,106877 @@ +{ + "type": "FeatureCollection", + "features": [ + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "Aruba", + "iso_a2": "AW", + "iso_a3": "ABW", + "iso_n3": "533", + "continent": "North America" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-69.89912109375, 12.452001953124991], + [-69.895703125, 12.422998046874994], + [-69.94218749999999, 12.438525390624989], + [-70.004150390625, 12.50048828125], + [-70.06611328125, 12.546972656249991], + [-70.05087890624999, 12.597070312499994], + [-70.035107421875, 12.614111328124991], + [-69.97314453125, 12.567626953125], + [-69.91181640625, 12.48046875], + [-69.89912109375, 12.452001953124991] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Afghanistan", + "iso_a2": "AF", + "iso_a3": "AFG", + "iso_n3": "004", + "continent": "Asia" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [74.89130859375001, 37.231640625], + [74.84023437500002, 37.225048828125], + [74.76738281250002, 37.249169921874994], + [74.73896484375001, 37.28564453125], + [74.72666015625, 37.29072265625], + [74.6689453125, 37.26669921875], + [74.55898437500002, 37.236621093749996], + [74.37216796875, 37.15771484375], + [74.37617187500001, 37.137353515624994], + [74.49794921875002, 37.0572265625], + [74.52646484375, 37.030664062499994], + [74.54140625000002, 37.02216796875], + [74.43105468750002, 36.983691406249996], + [74.19472656250002, 36.896875], + [74.03886718750002, 36.825732421874996], + [74.00185546875002, 36.823095703125], + [73.9078125, 36.852929687499994], + [73.769140625, 36.888476562499996], + [73.73183593750002, 36.88779296875], + [73.4111328125, 36.881689453125], + [73.116796875, 36.868554687499994], + [72.99375, 36.851611328124996], + [72.7662109375, 36.835009765624996], + [72.62285156250002, 36.82958984375], + [72.53134765625, 36.802001953125], + [72.43115234375, 36.7658203125], + [72.32695312500002, 36.7423828125], + [72.24980468750002, 36.734716796875], + [72.15673828125, 36.70087890625], + [72.09560546875002, 36.633740234375], + [71.92070312500002, 36.5341796875], + [71.822265625, 36.486083984375], + [71.77265625000001, 36.4318359375], + [71.71640625, 36.4265625], + [71.62050781250002, 36.436474609375], + [71.5458984375, 36.377685546875], + [71.46328125000002, 36.293261718749996], + [71.31259765625, 36.171191406249996], + [71.23291015625, 36.12177734375], + [71.18505859375, 36.04208984375], + [71.22021484375, 36.00068359375], + [71.34287109375, 35.938525390624996], + [71.39755859375, 35.880175781249996], + [71.42753906250002, 35.833740234375], + [71.48359375000001, 35.714599609375], + [71.51904296875, 35.597509765625], + [71.57197265625001, 35.546826171875], + [71.58740234375, 35.460839843749994], + [71.6005859375, 35.40791015625], + [71.57197265625001, 35.370410156249996], + [71.5455078125, 35.328515625], + [71.5455078125, 35.288867187499996], + [71.57724609375, 35.247998046875], + [71.60527343750002, 35.211767578125], + [71.62050781250002, 35.183007812499994], + [71.60166015625, 35.150683593749996], + [71.5455078125, 35.101416015625], + [71.51708984375, 35.051123046875], + [71.455078125, 34.966943359374994], + [71.35810546875001, 34.909619140625], + [71.29414062500001, 34.867724609374996], + [71.22578125000001, 34.779541015625], + [71.11328125, 34.681591796875], + [71.065625, 34.599609375], + [71.01630859375001, 34.554638671875], + [70.965625, 34.53037109375], + [70.97890625000002, 34.486279296875], + [71.02294921875, 34.43115234375], + [71.095703125, 34.369433593749996], + [71.0923828125, 34.273242187499996], + [71.08906250000001, 34.204052734375], + [71.09130859375, 34.120263671874994], + [71.05156250000002, 34.049707031249994], + [70.84843750000002, 33.981884765625], + [70.65400390625001, 33.952294921874994], + [70.41572265625001, 33.950439453125], + [70.32568359375, 33.9611328125], + [70.25361328125001, 33.975976562499994], + [69.9947265625, 34.051806640624996], + [69.8896484375, 34.007275390625], + [69.86806640625002, 33.89765625], + [70.056640625, 33.719873046874994], + [70.13417968750002, 33.620751953124994], + [70.2197265625, 33.4546875], + [70.2841796875, 33.369042968749994], + [70.26113281250002, 33.289013671875], + [70.09023437500002, 33.198095703125], + [69.92011718750001, 33.1125], + [69.7037109375, 33.0947265625], + [69.56777343750002, 33.06416015625], + [69.5015625, 33.020068359374996], + [69.453125, 32.8328125], + [69.40458984375002, 32.7642578125], + [69.40537109375, 32.68271484375], + [69.35947265625, 32.59033203125], + [69.28994140625002, 32.530566406249996], + [69.24140625000001, 32.433544921875], + [69.25654296875001, 32.249462890625], + [69.279296875, 31.936816406249996], + [69.18691406250002, 31.838085937499997], + [69.08310546875, 31.738476562499997], + [68.97343750000002, 31.667382812499994], + [68.86894531250002, 31.634228515624997], + [68.78232421875, 31.646435546874997], + [68.71367187500002, 31.708056640624996], + [68.67324218750002, 31.759716796874997], + [68.59765625, 31.802978515625], + [68.52070312500001, 31.794140625], + [68.44326171875002, 31.7544921875], + [68.31982421875, 31.76767578125], + [68.21396484375, 31.807373046875], + [68.16103515625002, 31.802978515625], + [68.13017578125002, 31.76328125], + [68.0171875, 31.677978515625], + [67.73984375, 31.548193359375], + [67.62675781250002, 31.538769531249997], + [67.57822265625, 31.506494140624994], + [67.59755859375002, 31.453320312499997], + [67.6470703125, 31.409960937499996], + [67.73349609375, 31.379248046875], + [67.737890625, 31.343945312499997], + [67.66152343750002, 31.31298828125], + [67.59638671875001, 31.277685546875], + [67.45283203125001, 31.234619140625], + [67.28730468750001, 31.217822265624996], + [67.11591796875001, 31.242919921875], + [67.02773437500002, 31.300244140624997], + [66.92431640625, 31.305615234374997], + [66.82929687500001, 31.263671875], + [66.73134765625002, 31.19453125], + [66.62421875000001, 31.046044921874994], + [66.59580078125, 31.019970703124997], + [66.56679687500002, 30.99658203125], + [66.49736328125002, 30.964550781249997], + [66.39716796875001, 30.91220703125], + [66.346875, 30.802783203124996], + [66.28691406250002, 30.60791015625], + [66.30097656250001, 30.502978515624996], + [66.30546875000002, 30.321142578125], + [66.2818359375, 30.19345703125], + [66.23847656250001, 30.109619140625], + [66.24716796875, 30.043505859374996], + [66.31337890625002, 29.968554687499996], + [66.28691406250002, 29.92001953125], + [66.23125, 29.86572265625], + [66.17705078125002, 29.835595703124994], + [65.96162109375001, 29.77890625], + [65.66621093750001, 29.701318359374994], + [65.47099609375002, 29.6515625], + [65.18046875000002, 29.57763671875], + [65.09550781250002, 29.559472656249994], + [64.9189453125, 29.552783203124996], + [64.82734375000001, 29.564160156249997], + [64.70351562500002, 29.567138671875], + [64.52109375, 29.564501953124996], + [64.39375, 29.544335937499994], + [64.26611328125, 29.50693359375], + [64.17216796875002, 29.460351562499994], + [64.11796875000002, 29.414257812499997], + [64.09873046875, 29.391943359375], + [63.97099609375002, 29.430078125], + [63.56757812500001, 29.497998046874997], + [62.4765625, 29.408349609374994], + [62.37343750000002, 29.425390625], + [62.0009765625, 29.530419921874994], + [61.521484375, 29.665673828124994], + [61.22441406250002, 29.749414062499994], + [60.843359375, 29.858691406249996], + [61.104101562500006, 30.12841796875], + [61.331640625, 30.363720703124997], + [61.55947265625002, 30.599365234375], + [61.7841796875, 30.831933593749994], + [61.81083984375002, 30.91328125], + [61.81425781250002, 31.072558593749996], + [61.75507812500001, 31.285302734374994], + [61.66015625, 31.382421875], + [61.34648437500002, 31.421630859375], + [61.11074218750002, 31.451123046874997], + [60.854101562500006, 31.483251953125], + [60.82070312500002, 31.495166015624996], + [60.791601562500006, 31.660595703124997], + [60.804296875, 31.73447265625], + [60.7875, 31.877197265625], + [60.78994140625002, 31.987109375], + [60.827246093750006, 32.16796875], + [60.82929687500001, 32.249414062499994], + [60.71044921875, 32.6], + [60.64453125, 32.794384765625], + [60.57656250000002, 32.994873046875], + [60.56191406250002, 33.0587890625], + [60.560546875, 33.137841796874994], + [60.71806640625002, 33.323535156249996], + [60.76689453125002, 33.363818359374996], + [60.85927734375002, 33.45625], + [60.9169921875, 33.505224609375], + [60.90693359375001, 33.538964843749994], + [60.80644531250002, 33.55869140625], + [60.65458984375002, 33.560400390625], + [60.573828125, 33.588330078125], + [60.510839843750006, 33.638916015625], + [60.4859375, 33.7119140625], + [60.52705078125001, 33.8419921875], + [60.48574218750002, 34.094775390624996], + [60.57021484375002, 34.219628906249994], + [60.642675781250006, 34.307177734374996], + [60.88945312500002, 34.31943359375], + [60.80390625000001, 34.418017578124996], + [60.76259765625002, 34.475244140624994], + [60.73613281250002, 34.491796875], + [60.72626953125001, 34.51826171875], + [60.73945312500001, 34.544726562499996], + [60.80234375, 34.554638671875], + [60.8453125, 34.587695312499996], + [60.91474609375001, 34.633984375], + [60.951171875, 34.653857421874996], + [60.95781250000002, 34.71005859375], + [60.990820312500006, 34.749755859375], + [61.04042968750002, 34.799365234374996], + [61.080078125, 34.855615234374994], + [61.07021484375002, 34.921728515625], + [61.10664062500001, 35.001123046874994], + [61.123144531250006, 35.050732421875], + [61.14960937500001, 35.09375], + [61.12646484375, 35.156542968749996], + [61.10664062500001, 35.20947265625], + [61.1, 35.272314453125], + [61.1396484375, 35.288867187499996], + [61.18925781250002, 35.31201171875], + [61.19921875, 35.361621093749996], + [61.225683593750006, 35.424462890624994], + [61.24550781250002, 35.474072265625], + [61.27851562500001, 35.51376953125], + [61.281835937500006, 35.55341796875], + [61.26201171875002, 35.619580078125], + [61.3447265625, 35.6294921875], + [61.37773437500002, 35.593115234375], + [61.42177734375002, 35.545800781249994], + [61.54277343750002, 35.457861328125], + [61.62099609375002, 35.43232421875], + [61.7197265625, 35.41943359375], + [61.84101562500001, 35.431494140625], + [61.938085937500006, 35.447900390624994], + [61.98388671875, 35.443701171875], + [62.08964843750002, 35.3796875], + [62.21308593750001, 35.289941406249994], + [62.25283203125002, 35.250244140625], + [62.27119140625001, 35.189111328124994], + [62.30781250000001, 35.170800781249994], + [62.38662109375002, 35.23125], + [62.462890625, 35.251367187499994], + [62.53310546875002, 35.239892578124994], + [62.61054687500001, 35.233154296875], + [62.688085937500006, 35.255322265625], + [62.72265625, 35.271337890625], + [62.858007812500006, 35.349658203124996], + [62.98027343750002, 35.4091796875], + [63.056640625, 35.44580078125], + [63.08417968750001, 35.56806640625], + [63.11933593750001, 35.637548828125], + [63.16972656250002, 35.678125], + [63.15078125000002, 35.728271484375], + [63.129980468750006, 35.766748046874994], + [63.10859375000001, 35.818701171875], + [63.129980468750006, 35.84619140625], + [63.17890625000001, 35.858447265624996], + [63.30166015625002, 35.8583984375], + [63.51699218750002, 35.913134765624996], + [63.69658203125002, 35.967822265624996], + [63.8625, 36.012353515624994], + [63.938085937500006, 36.0197265625], + [64.00966796875002, 36.012109375], + [64.04238281250002, 36.02509765625], + [64.0513671875, 36.067626953125], + [64.09218750000002, 36.112695312499994], + [64.184375, 36.14892578125], + [64.3580078125, 36.22607421875], + [64.51103515625002, 36.340673828125], + [64.56582031250002, 36.427587890625], + [64.6025390625, 36.554541015625], + [64.67431640625, 36.7501953125], + [64.753125, 36.964794921875], + [64.78242187500001, 37.05927734375], + [64.81630859375002, 37.132080078125], + [64.95156250000002, 37.1935546875], + [65.08964843750002, 37.237939453124994], + [65.30361328125002, 37.24677734375], + [65.55498046875002, 37.251171875], + [65.6080078125, 37.368408203125], + [65.6412109375, 37.467822265624996], + [65.68300781250002, 37.519140625], + [65.74384765625001, 37.560839843749996], + [65.76503906250002, 37.569140625], + [65.90068359375002, 37.508105468749996], + [66.1083984375, 37.41474609375], + [66.35029296875001, 37.3681640625], + [66.471875, 37.3447265625], + [66.52226562500002, 37.348486328125], + [66.827734375, 37.3712890625], + [67.06884765625, 37.334814453125], + [67.19550781250001, 37.235205078125], + [67.31972656250002, 37.2095703125], + [67.44169921875002, 37.2580078125], + [67.51728515625001, 37.266650390624996], + [67.546484375, 37.235644531249996], + [67.607421875, 37.222509765625], + [67.7, 37.22724609375], + [67.7529296875, 37.1998046875], + [67.75898437500001, 37.172216796875], + [67.76601562500002, 37.14013671875], + [67.83447265625, 37.064208984375], + [67.9580078125, 36.972021484375], + [68.06777343750002, 36.9498046875], + [68.21210937500001, 37.021533203124996], + [68.26093750000001, 37.013085937499994], + [68.284765625, 37.036328125], + [68.29951171875001, 37.088427734374996], + [68.38691406250001, 37.1375], + [68.546484375, 37.183447265625], + [68.63701171875002, 37.224462890625], + [68.66914062500001, 37.2583984375], + [68.7232421875, 37.268017578125], + [68.78203125000002, 37.2580078125], + [68.82373046875, 37.270703125], + [68.8384765625, 37.30283203125], + [68.85537109375002, 37.316845703125], + [68.88525390625, 37.328076171875], + [68.91181640625001, 37.333935546875], + [68.96044921875, 37.325048828125], + [69.05, 37.266503906249994], + [69.18017578125, 37.15830078125], + [69.26484375000001, 37.1083984375], + [69.30390625000001, 37.116943359375], + [69.35380859375002, 37.150048828124994], + [69.41445312500002, 37.207763671875], + [69.4296875, 37.290869140625], + [69.39921875000002, 37.399316406249994], + [69.42011718750001, 37.48671875], + [69.49208984375002, 37.553076171875], + [69.62578125000002, 37.594042968749996], + [69.8208984375, 37.6095703125], + [69.940625, 37.60029296875], + [69.9849609375, 37.566162109375], + [70.04472656250002, 37.547216796875], + [70.11982421875001, 37.543505859374996], + [70.18867187500001, 37.582470703125], + [70.25146484375, 37.66416015625], + [70.25498046875, 37.765380859375], + [70.19941406250001, 37.886035156249996], + [70.21464843750002, 37.9244140625], + [70.23876953125, 37.941210937499996], + [70.31328125000002, 37.984814453125], + [70.41777343750002, 38.075439453125], + [70.5185546875, 38.1919921875], + [70.6158203125, 38.334423828125], + [70.7359375, 38.42255859375], + [70.87890625, 38.456396484375], + [71.05214843750002, 38.417871093749994], + [71.255859375, 38.306982421875], + [71.33271484375001, 38.170263671875], + [71.2828125, 38.00791015625], + [71.27851562500001, 37.918408203125], + [71.319921875, 37.90185546875], + [71.3896484375, 37.906298828124996], + [71.48779296875, 37.931884765625], + [71.55195312500001, 37.933154296874996], + [71.58222656250001, 37.910107421875], + [71.58037109375002, 37.8642578125], + [71.54619140625002, 37.795654296875], + [71.50507812500001, 37.602929687499994], + [71.47968750000001, 37.43603515625], + [71.45478515625001, 37.271826171875], + [71.43291015625002, 37.1275390625], + [71.471875, 37.015087890625], + [71.530859375, 36.845117187499994], + [71.59746093750002, 36.73291015625], + [71.665625, 36.696923828124994], + [71.73378906250002, 36.684033203125], + [71.80205078125002, 36.694287109375], + [71.9419921875, 36.766455078125], + [72.15351562500001, 36.900537109374994], + [72.35878906250002, 36.98291015625], + [72.65742187500001, 37.029052734375], + [72.75703125000001, 37.172705078125], + [72.8955078125, 37.267529296875], + [73.21113281250001, 37.408496093749996], + [73.38291015625, 37.462255859375], + [73.48134765625002, 37.4716796875], + [73.60468750000001, 37.446044921875], + [73.63261718750002, 37.43720703125], + [73.65712890625002, 37.43046875], + [73.72060546875002, 37.41875], + [73.73378906250002, 37.37578125], + [73.71728515625, 37.329443359375], + [73.64882812500002, 37.2912109375], + [73.6275390625, 37.261572265625], + [73.65351562500001, 37.23935546875], + [73.749609375, 37.231787109375], + [73.948828125, 37.283154296875], + [74.077734375, 37.316210937499996], + [74.16708984375, 37.329443359375], + [74.20351562500002, 37.372460937499994], + [74.25966796875002, 37.415429687499994], + [74.34902343750002, 37.41875], + [74.444921875, 37.39560546875], + [74.52421875000002, 37.382373046874996], + [74.659375, 37.394482421875], + [74.73056640625, 37.35703125], + [74.83046875000002, 37.2859375], + [74.87539062500002, 37.241992187499996], + [74.89130859375001, 37.231640625] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Angola", + "iso_a2": "AO", + "iso_a3": "AGO", + "iso_n3": "024", + "continent": "Africa" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [14.19082031250008, -5.8759765625], + [14.398632812500068, -5.89267578125002], + [14.65791015625004, -5.888867187499955], + [14.749414062500023, -5.88007812500004], + [15.08935546875, -5.874511718749972], + [15.425, -5.868847656249969], + [15.726953125000051, -5.86386718750002], + [16.060156250000063, -5.864941406249969], + [16.315234375000074, -5.865625], + [16.431445312500045, -5.90019531249996], + [16.53710937499997, -5.9658203125], + [16.58515625000001, -6.025292968749952], + [16.608007812500034, -6.051562499999974], + [16.63955078125008, -6.114550781250017], + [16.697265625, -6.164257812500026], + [16.71777343750003, -6.241406250000011], + [16.700976562500045, -6.345996093750003], + [16.709375, -6.471679687499943], + [16.74296874999999, -6.618457031250003], + [16.813085937500063, -6.772558593749963], + [16.919433593750057, -6.93398437499998], + [16.9658203125, -7.062109374999977], + [16.95205078125005, -7.157031249999946], + [16.98476562500005, -7.257421874999977], + [17.063769531250074, -7.363085937500003], + [17.12158203125003, -7.419042968750034], + [17.155078125000017, -7.461328125000037], + [17.24501953125005, -7.623339843750003], + [17.41132812500001, -7.88193359375002], + [17.536035156249994, -8.075878906249997], + [17.57958984375, -8.099023437500009], + [17.643359375000017, -8.090722656250009], + [17.77880859375, -8.071386718749977], + [17.9130859375, -8.067675781250017], + [18.00878906250003, -8.107617187499983], + [18.047167968750045, -8.100781250000011], + [18.191503906250063, -8.023828124999966], + [18.334863281250023, -8.000292968749974], + [18.48466796874999, -7.968554687499989], + [18.56269531250001, -7.9359375], + [18.653417968750006, -7.936035156250028], + [18.89833984375008, -7.998144531249977], + [18.944433593750063, -8.001464843750028], + [19.142675781250034, -8.001464843750028], + [19.34082031249997, -7.966601562500031], + [19.369921875000045, -7.706542968749986], + [19.371679687500063, -7.655078124999989], + [19.41933593750008, -7.557324218749969], + [19.47988281250008, -7.472167968750028], + [19.487402343750006, -7.390722656249949], + [19.48378906250008, -7.279492187500026], + [19.527636718750017, -7.144433593749952], + [19.660351562500068, -7.037109375000028], + [19.87519531250004, -6.986328124999986], + [19.99746093750008, -6.976464843750023], + [20.190039062500063, -6.9462890625], + [20.482226562500074, -6.915820312500017], + [20.59003906250001, -6.919921874999957], + [20.598730468750006, -6.935156249999949], + [20.536914062500045, -7.121777343749955], + [20.535839843749983, -7.182812499999955], + [20.558398437500045, -7.244433593749989], + [20.60781250000008, -7.277734375000023], + [20.910937500000017, -7.281445312499983], + [21.190332031250023, -7.284960937499989], + [21.510839843750034, -7.296679687499974], + [21.751074218750034, -7.305468749999989], + [21.78164062500005, -7.314648437499997], + [21.80605468750005, -7.32861328125], + [21.84160156249999, -7.420996093749991], + [21.833593750000063, -7.60166015625002], + [21.780078125000074, -7.865429687500026], + [21.800878906250063, -8.111914062499977], + [21.89589843750005, -8.341113281249946], + [21.905371093750034, -8.693359374999943], + [21.871875, -8.90351562500004], + [21.829492187500023, -9.168457031250014], + [21.813183593750068, -9.46875], + [21.85664062500004, -9.594238281249986], + [21.94863281250005, -9.7255859375], + [22.089160156250074, -9.862792968749986], + [22.19775390625, -10.04062], + [22.274511718750006, -10.259082031249974], + [22.30244140625001, -10.39667968750004], + [22.281640625000023, -10.453320312500026], + [22.283203125, -10.551562499999974], + [22.30703125000005, -10.691308593750023], + [22.280468750000068, -10.783984374999974], + [22.203515625000023, -10.829492187500009], + [22.17792968750004, -10.892285156250011], + [22.216699218750023, -11.012695312499943], + [22.226171875, -11.121972656250009], + [22.25664062499999, -11.163671874999977], + [22.27880859375, -11.19414062499996], + [22.314941406250057, -11.198632812499994], + [22.39296875000005, -11.159472656250003], + [22.486132812500045, -11.086718750000017], + [22.56103515625003, -11.05585937500004], + [22.66650390625, -11.059765625000026], + [22.814746093750017, -11.08027343750004], + [23.076269531250006, -11.087890624999986], + [23.156738281250057, -11.074804687499991], + [23.400195312500017, -10.976464843750023], + [23.463964843750034, -10.969335937499991], + [23.55996093750005, -10.97861328125002], + [23.696386718750034, -11.007617187499974], + [23.83388671875008, -11.013671874999972], + [23.901171875000017, -10.983203124999974], + [23.907324218750034, -10.943457031249963], + [23.92871093750003, -10.891503906250037], + [23.96650390625001, -10.871777343750011], + [23.98828125, -11.00283203124998], + [24.010058593750074, -11.184765625000011], + [24.02558593750004, -11.315625], + [24.04140625000008, -11.374121093750034], + [24.046679687500074, -11.405371093750006], + [24.029296875, -11.439160156249969], + [24.01464843750003, -11.517675781249977], + [23.986816406250057, -11.587207031250017], + [23.970996093750017, -11.635839843749977], + [23.98388671875, -11.725], + [23.973437500000074, -11.852929687499966], + [23.962304687500023, -11.98789062500002], + [23.95888671875005, -12.11777343750002], + [23.99648437500008, -12.350683593750034], + [23.991308593750006, -12.422167968750031], + [23.944726562499994, -12.54375], + [23.909375, -12.636132812500009], + [23.886523437500045, -12.743261718749991], + [23.882421875, -12.799023437499983], + [23.968066406250045, -12.956933593749994], + [23.962988281250006, -12.988476562500026], + [23.897460937500057, -12.998242187499983], + [23.843164062500023, -13.0009765625], + [23.635839843750063, -13.0009765625], + [23.338671875000074, -13.0009765625], + [23.04150390625003, -13.0009765625], + [22.744335937500068, -13.0009765625], + [22.470996093750074, -13.0009765625], + [22.209570312500006, -13.0009765625], + [21.97890625000008, -13.0009765625], + [21.97900390625003, -13.156835937499963], + [21.979101562500034, -13.477734374999969], + [21.979101562500034, -13.798730468749994], + [21.979296875000074, -14.11962890625], + [21.979394531249994, -14.440527343750006], + [21.97949218750003, -14.761425781250011], + [21.979589843750034, -15.082324218750017], + [21.979687500000068, -15.403222656250023], + [21.97978515624999, -15.724121093750028], + [21.97978515624999, -15.955566406250014], + [22.040234375000068, -16.26279296874999], + [22.15068359374999, -16.597167968749986], + [22.193945312500006, -16.62812], + [22.305078125000023, -16.689550781249977], + [22.45947265625003, -16.815136718749983], + [22.545996093750063, -16.91025390624999], + [22.721972656250045, -17.075292968749963], + [22.955859375000074, -17.28574218750002], + [23.181640625000057, -17.474414062500003], + [23.380664062500017, -17.640625], + [23.06826171875005, -17.698828124999977], + [22.624023437500057, -17.78164062499998], + [22.32421875, -17.8375], + [21.96083984375005, -17.90517578125001], + [21.71845703125004, -17.94775390624997], + [21.41689453125008, -18.00068359375001], + [21.36875, -17.999511718749957], + [21.287890625000074, -17.962988281249977], + [21.113476562500068, -17.95576171875001], + [20.908300781250034, -18.00605468750004], + [20.74550781250008, -18.019726562499983], + [20.625097656250063, -17.99667968749999], + [20.507617187500017, -17.95253906249998], + [20.392968750000023, -17.887402343750026], + [20.194335937500057, -17.863671875], + [19.91181640625004, -17.881347656250043], + [19.63935546875004, -17.86865234375003], + [19.37714843750001, -17.82548828125003], + [19.189453125000057, -17.808496093750023], + [19.076464843750045, -17.81767578125003], + [18.95527343750004, -17.80351562499999], + [18.825976562500074, -17.766308593750054], + [18.718066406250045, -17.70322265624999], + [18.588183593750045, -17.570019531250026], + [18.486621093750045, -17.442773437500037], + [18.460351562500023, -17.424609374999974], + [18.428222656250057, -17.405175781250023], + [18.39638671875005, -17.3994140625], + [18.10878906250008, -17.395996093750014], + [17.83535156250005, -17.392773437499983], + [17.678808593750063, -17.39257812500003], + [17.296289062500023, -17.391992187499994], + [16.913671875000034, -17.39140625], + [16.531054687500074, -17.390820312500026], + [16.14843750000003, -17.390234375], + [15.765820312500068, -17.389648437499957], + [15.38320312500008, -17.389160156249957], + [15.000585937500034, -17.38857421875001], + [14.617968750000074, -17.387988281249974], + [14.41474609375004, -17.387695312500014], + [14.225878906250045, -17.397753906250017], + [14.017480468750023, -17.40888671874997], + [13.987402343750034, -17.404199218749994], + [13.93798828125, -17.388769531249963], + [13.904199218750051, -17.360742187500023], + [13.7919921875, -17.28837890625003], + [13.6943359375, -17.233496093750034], + [13.561718749999983, -17.141210937499977], + [13.475976562500023, -17.04003906249997], + [13.403710937500051, -17.00781249999997], + [13.275683593750074, -16.98955078124999], + [13.179492187500017, -16.971679687499986], + [13.101171875000063, -16.967675781249966], + [12.963183593750017, -17.015429687500017], + [12.859277343750051, -17.062597656250034], + [12.785156250000057, -17.108203125], + [12.656542968750074, -17.160546875], + [12.548144531250017, -17.212695312499974], + [12.35927734375008, -17.205859375], + [12.318457031250006, -17.21337890625003], + [12.213378906250028, -17.209960937500043], + [12.114355468750006, -17.16455078125003], + [12.013964843750074, -17.168554687500034], + [11.902539062500011, -17.226562499999957], + [11.743066406250023, -17.24921875000004], + [11.780078125000017, -16.87128906249997], + [11.818945312500034, -16.704101562500014], + [11.819921875000063, -16.50429687499998], + [11.796972656250006, -15.986425781249991], + [11.76943359375008, -15.915332031249989], + [11.750878906250023, -15.831933593749966], + [11.849707031250006, -15.768359374999974], + [11.89990234375, -15.719824218750034], + [11.967871093750006, -15.63398437500004], + [12.016113281250057, -15.513671874999957], + [12.073242187500057, -15.248242187499969], + [12.280468750000011, -14.6375], + [12.37890625, -14.039062500000014], + [12.503710937500017, -13.755468749999963], + [12.55048828125004, -13.437792968750003], + [12.897656250000068, -13.027734375000037], + [12.983203124999989, -12.775683593750017], + [13.162695312500063, -12.652148437499989], + [13.4169921875, -12.52041015624998], + [13.597949218750017, -12.286132812500028], + [13.685546875, -12.123828125], + [13.785351562499983, -11.81279296874996], + [13.784277343750034, -11.487988281249969], + [13.847460937500045, -11.054394531249997], + [13.833593750000063, -10.9296875], + [13.73896484375004, -10.757128906250017], + [13.721386718750011, -10.633593749999989], + [13.63349609375004, -10.512304687499963], + [13.53945312500008, -10.42070312499996], + [13.495410156250074, -10.257128906250031], + [13.33222656250004, -9.998925781250009], + [13.2875, -9.826757812500006], + [13.209375, -9.703222656249977], + [13.196875, -9.550683593749994], + [13.155664062500051, -9.389648437499957], + [13.075976562500074, -9.230371093750009], + [12.99853515625, -9.048046875], + [12.99853515625, -8.991015625000017], + [13.04677734375008, -8.922265625000037], + [13.092773437500028, -8.899707031249974], + [13.077246093750063, -8.934277343749997], + [13.04658203125004, -8.975195312499991], + [13.053808593750006, -9.006835937499943], + [13.358984375, -8.687207031250026], + [13.378320312500023, -8.624707031249997], + [13.36806640625008, -8.554785156249963], + [13.366406249999983, -8.469238281250028], + [13.378515625000063, -8.369726562500006], + [13.090820312499972, -7.78017578124998], + [12.862304687500057, -7.231835937499994], + [12.82343750000004, -6.954785156249955], + [12.521289062500045, -6.590332031249957], + [12.402148437500017, -6.353417968750009], + [12.334277343750045, -6.187304687500003], + [12.283300781250063, -6.12431640624996], + [12.302539062500074, -6.092578124999989], + [12.380371093750028, -6.084277343749974], + [12.553515625000045, -6.045898437499972], + [12.790625, -6.003906249999943], + [13.009765625, -5.907617187499966], + [13.068164062500074, -5.864843749999949], + [13.184375, -5.85625], + [13.302636718750051, -5.881835937499943], + [13.346484375000017, -5.863378906250006], + [13.371484375000051, -5.861816406249957], + [13.649023437500006, -5.861718750000023], + [13.764550781250023, -5.855175781250026], + [13.978515625, -5.857226562500003], + [14.113769531250028, -5.865136718750009], + [14.19082031250008, -5.8759765625] + ] + ], + [ + [ + [12.255273437500023, -5.746484375], + [12.213671875000074, -5.758691406249994], + [12.199023437500017, -5.731933593749957], + [12.15546875000004, -5.632714843749994], + [12.18007812500008, -5.53867187500002], + [12.206542968750057, -5.468261718749986], + [12.177148437499994, -5.324804687499977], + [12.11054687500004, -5.197167968749994], + [12.039941406250023, -5.035156250000028], + [12.018359375000074, -5.004296874999966], + [12.077539062500051, -4.9521484375], + [12.167089843750006, -4.837695312499946], + [12.20429687500004, -4.778613281249989], + [12.307910156249989, -4.765527343749994], + [12.3466796875, -4.724121093749986], + [12.374023437500057, -4.657714843749957], + [12.384570312500074, -4.619140625000014], + [12.50146484375, -4.5875], + [12.641699218750063, -4.531152343750023], + [12.719433593749983, -4.469726562499943], + [12.798242187500051, -4.430566406249966], + [12.848144531250028, -4.428906249999983], + [12.881054687500068, -4.445117187499989], + [12.971386718750068, -4.551757812499957], + [13.048046875000068, -4.619238281250034], + [13.072753906250028, -4.634765625], + [13.057324218750011, -4.651074218750026], + [12.947460937500011, -4.695312499999986], + [12.829687499999977, -4.73662109374996], + [12.674804687500057, -4.905371093749963], + [12.596191406250028, -4.978417968750023], + [12.573535156250017, -4.996582031249986], + [12.502734375000074, -5.036914062500031], + [12.451464843750017, -5.071484374999969], + [12.453222656250034, -5.090625], + [12.487402343750063, -5.112695312500023], + [12.52236328125008, -5.148925781250028], + [12.518945312499994, -5.424609374999974], + [12.503710937500017, -5.695800781249972], + [12.484570312500011, -5.71875], + [12.386035156250017, -5.727734375], + [12.255273437500023, -5.746484375] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Anguilla", + "iso_a2": "AI", + "iso_a3": "AIA", + "iso_n3": "660", + "continent": "North America" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-63.001220703125, 18.22177734374999], + [-63.16000976562499, 18.17138671875], + [-63.1533203125, 18.20029296874999], + [-63.026025390624994, 18.269726562499997], + [-62.97958984374999, 18.264794921874994], + [-63.001220703125, 18.22177734374999] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Albania", + "iso_a2": "AL", + "iso_a3": "ALB", + "iso_n3": "008", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [20.06396484375, 42.547265625], + [20.103515625, 42.524658203125], + [20.18574218750001, 42.42587890625], + [20.240527343750017, 42.33896484375], + [20.348242187500006, 42.3087890625], + [20.408300781250006, 42.274951171874996], + [20.485449218750006, 42.223388671875], + [20.522851562500023, 42.171484375], + [20.57539062500001, 42.013085937499994], + [20.581445312500023, 41.917431640625], + [20.566210937500017, 41.873681640624994], + [20.553125, 41.862353515624996], + [20.505175781250017, 41.706494140625], + [20.5166015625, 41.62705078125], + [20.516210937500006, 41.574755859374996], + [20.4755859375, 41.554101562499994], + [20.448632812500023, 41.521289062499996], + [20.49238281250001, 41.39140625], + [20.48701171875001, 41.336083984374994], + [20.48896484375001, 41.272607421874994], + [20.56787109375, 41.127832031249994], + [20.61445312500001, 41.083056640624996], + [20.656054687500017, 41.061669921874994], + [20.709277343750017, 40.928369140624994], + [20.740820312500006, 40.9052734375], + [20.870214843750006, 40.917919921875], + [20.933496093750023, 40.903125], + [20.95859375, 40.871533203125], + [20.964257812500023, 40.849902343749996], + [20.95576171875001, 40.775292968749994], + [20.987890625, 40.7177734375], + [21.031054687500017, 40.658642578125], + [21.030859375, 40.622460937499994], + [21.001953125, 40.563378906249994], + [20.9501953125, 40.494384765625], + [20.881640625000017, 40.467919921874994], + [20.806054687500023, 40.445458984374994], + [20.77001953125, 40.391894531249996], + [20.75166015625001, 40.334912109375], + [20.717871093750006, 40.29267578125], + [20.69697265625001, 40.246386718749996], + [20.664941406250023, 40.151757812499994], + [20.65742187500001, 40.1173828125], + [20.60625, 40.082666015624994], + [20.52705078125001, 40.068505859374994], + [20.4560546875, 40.065576171874994], + [20.408007812500017, 40.049462890624994], + [20.383691406250023, 40.0171875], + [20.338476562500006, 39.991064453125], + [20.311132812500006, 39.979443359375], + [20.311328125000017, 39.95078125], + [20.34423828125, 39.890625], + [20.381640625000017, 39.841796875], + [20.382421875, 39.802636718749994], + [20.364062500000017, 39.791748046875], + [20.30615234375, 39.796679687499996], + [20.293847656250023, 39.7822265625], + [20.28759765625, 39.738574218749996], + [20.272070312500006, 39.701171875], + [20.24824218750001, 39.678369140624994], + [20.206835937500017, 39.653515625], + [20.13105468750001, 39.66162109375], + [20.05976562500001, 39.699121093749994], + [20.022558593750006, 39.710693359375], + [20.001269531250017, 39.709423828125], + [19.99560546875, 39.801025390625], + [19.96484375, 39.872265625], + [19.851855468750017, 40.0435546875], + [19.48457031250001, 40.2099609375], + [19.39814453125001, 40.28486328125], + [19.360156250000017, 40.347705078124996], + [19.322265625, 40.407080078125], + [19.35859375000001, 40.408740234374996], + [19.39453125, 40.393701171874994], + [19.440527343750006, 40.37568359375], + [19.45917968750001, 40.40537109375], + [19.439257812500017, 40.470263671874996], + [19.344628906250023, 40.6220703125], + [19.3375, 40.663818359375], + [19.383886718750006, 40.79072265625], + [19.461230468750017, 40.93330078125], + [19.4560546875, 41.1060546875], + [19.480078125, 41.236376953124996], + [19.453417968750017, 41.32099609375], + [19.440625, 41.424755859375], + [19.497363281250017, 41.5626953125], + [19.545800781250023, 41.596826171874994], + [19.57568359375, 41.640429687499996], + [19.577539062500023, 41.7875], + [19.46826171875, 41.85615234375], + [19.342382812500006, 41.869091796875], + [19.345507812500017, 41.918847656249994], + [19.361132812500017, 41.99775390625], + [19.352148437500006, 42.0240234375], + [19.361425781250006, 42.069091796875], + [19.330859375000017, 42.129296875], + [19.280664062500023, 42.17255859375], + [19.329003906250023, 42.249267578125], + [19.39960937500001, 42.34189453125], + [19.465136718750017, 42.415380859375], + [19.54453125, 42.491943359375], + [19.597460937500017, 42.5654296875], + [19.65449218750001, 42.628564453124994], + [19.703417968750017, 42.64794921875], + [19.727832031250017, 42.634521484375], + [19.74072265625, 42.60693359375], + [19.73779296875, 42.525146484375], + [19.754492187500006, 42.496923828125], + [19.78828125000001, 42.476171875], + [19.859765625000023, 42.486328125], + [19.9390625, 42.506689453125], + [20.045703125000017, 42.54990234375], + [20.06396484375, 42.547265625] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "Aland", + "iso_a2": "AX", + "iso_a3": "ALA", + "iso_n3": "248", + "continent": "Europe" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [20.611328125, 60.040673828124994], + [20.60341796875008, 60.016943359375034], + [20.521777343750045, 60.011669921874955], + [20.4875, 60.03276367187499], + [20.411230468750006, 60.03012695312498], + [20.397949218750057, 60.040673828124994], + [20.429589843750023, 60.06171875000001], + [20.490136718749994, 60.074902343749955], + [20.569140625000017, 60.069628906250045], + [20.611328125, 60.040673828124994] + ] + ], + [ + [ + [19.66230468750001, 60.187158203124994], + [19.66748046875, 60.164746093749955], + [19.629199218750017, 60.170361328124955], + [19.599804687500068, 60.16269531249998], + [19.579882812500017, 60.135058593750045], + [19.53652343750005, 60.14497070312501], + [19.519042968750057, 60.1845703125], + [19.551367187500063, 60.24384765625001], + [19.628808593750023, 60.24609375], + [19.66230468750001, 60.187158203124994] + ] + ], + [ + [ + [19.989550781250074, 60.351171875], + [20.02021484375001, 60.350878906250045], + [20.03388671875004, 60.35932617187498], + [20.08740234375003, 60.35341796875002], + [20.16787109375008, 60.31469726562506], + [20.18408203125, 60.29375], + [20.239550781250017, 60.28300781249999], + [20.258886718750063, 60.26127929687499], + [20.19472656250005, 60.193554687499955], + [20.155078125000045, 60.192285156249966], + [20.125488281250057, 60.200878906249955], + [20.07324218749997, 60.193457031250034], + [20.042578125000034, 60.1806640625], + [20.032324218750006, 60.15249023437505], + [20.033984375000074, 60.09355468750002], + [19.799804687500057, 60.08173828125001], + [19.745996093750023, 60.09897460937498], + [19.672265625, 60.233007812500006], + [19.68691406250005, 60.267626953125045], + [19.73652343750004, 60.28237304687502], + [19.779003906249983, 60.285546874999966], + [19.785253906250034, 60.21337890625], + [19.84765625000003, 60.22055664062506], + [19.86718750000003, 60.268115234375045], + [19.87158203125003, 60.301611328125034], + [19.85468750000004, 60.31850585937502], + [19.812304687500017, 60.33159179687502], + [19.78779296875001, 60.354052734375074], + [19.823046875000074, 60.390185546875045], + [19.888281250000063, 60.405810546875045], + [19.94453125000004, 60.35751953124998], + [19.989550781250074, 60.351171875] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "Andorra", + "iso_a2": "AD", + "iso_a3": "AND", + "iso_n3": "020", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [1.7060546875, 42.503320312499994], + [1.678515625000017, 42.4966796875], + [1.58642578125, 42.455957031249994], + [1.534082031250023, 42.441699218749996], + [1.486230468750023, 42.434472656249994], + [1.448828125, 42.437451171875], + [1.428125, 42.461328125], + [1.430273437500006, 42.497851562499996], + [1.421972656250006, 42.530810546874996], + [1.414843750000017, 42.548388671874996], + [1.428320312500006, 42.5958984375], + [1.458886718750023, 42.6216796875], + [1.501367187500023, 42.642724609374994], + [1.568164062500017, 42.635009765625], + [1.709863281250023, 42.604443359375], + [1.739453125000011, 42.575927734375], + [1.740234375, 42.55673828125], + [1.713964843750006, 42.525634765625], + [1.7060546875, 42.503320312499994] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "United Arab Emirates", + "iso_a2": "AE", + "iso_a3": "ARE", + "iso_n3": "784", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [53.927832031250006, 24.177197265624983], + [53.928125, 24.143359375000017], + [53.82636718750004, 24.153125], + [53.799121093750074, 24.135546875000017], + [53.71582031249997, 24.145312500000045], + [53.63447265625004, 24.169775390624977], + [53.6896484375001, 24.210791015624977], + [53.83378906250002, 24.258935546875023], + [53.89375, 24.215136718750074], + [53.927832031250006, 24.177197265624983] + ] + ], + [ + [ + [52.6168945312501, 24.28857421875003], + [52.6, 24.281298828125045], + [52.58222656250004, 24.335253906250017], + [52.58359375000006, 24.352343750000045], + [52.62939453124997, 24.376757812500045], + [52.65761718750005, 24.332617187500034], + [52.6168945312501, 24.28857421875003] + ] + ], + [ + [ + [53.3322265625001, 24.258593750000045], + [53.25830078125003, 24.252929687500057], + [53.19091796874997, 24.290917968749966], + [53.33251953124997, 24.34160156249999], + [53.370898437500074, 24.36445312500004], + [53.412402343750074, 24.411035156250023], + [53.44531250000003, 24.371191406249977], + [53.40898437500002, 24.307910156250045], + [53.382617187500074, 24.280859375000063], + [53.3322265625001, 24.258593750000045] + ] + ], + [ + [ + [54.465429687500006, 24.442773437499994], + [54.456640625, 24.42333984375003], + [54.42841796875004, 24.425097656250045], + [54.35771484375002, 24.442773437499994], + [54.334765625000074, 24.471044921874977], + [54.37890624999997, 24.504589843749983], + [54.39833984375005, 24.50634765624997], + [54.42656250000002, 24.471044921874977], + [54.465429687500006, 24.442773437499994] + ] + ], + [ + [ + [56.18359375000003, 25.644921875000023], + [56.24951171874997, 25.625390624999966], + [56.2785156250001, 25.62773437499999], + [56.29785156250003, 25.650683593750045], + [56.3634765625001, 25.569384765625017], + [56.37285156250002, 25.018310546875], + [56.38798828125002, 24.97919921875004], + [56.352929687499994, 24.973291015624994], + [56.31357421875006, 24.93129882812505], + [56.267871093750074, 24.86669921875003], + [56.20468750000006, 24.833300781250074], + [56.15449218750004, 24.795507812500006], + [56.10654296875006, 24.748681640624966], + [56.06386718750005, 24.73876953125], + [56.00839843750006, 24.798242187500023], + [55.9703125, 24.858935546875045], + [55.97968750000004, 24.87207031249997], + [56.00634765624997, 24.876416015624955], + [56.01669921875006, 24.90771484375003], + [56.00058593750006, 24.953222656249977], + [55.96308593750004, 24.97026367187499], + [55.91582031250002, 24.971777343750034], + [55.87070312500006, 24.95141601562497], + [55.822851562500006, 24.911279296874966], + [55.795703125000074, 24.868115234374955], + [55.791601562500006, 24.781298828125045], + [55.80419921875003, 24.68359375000003], + [55.80390625000004, 24.63623046874997], + [55.7775390625001, 24.577343749999955], + [55.76816406250006, 24.49062], + [55.7868164062501, 24.423535156249983], + [55.804003906250074, 24.383544921875], + [55.80566406250003, 24.349804687499983], + [55.76083984375006, 24.24267578125], + [55.799707031249994, 24.22265625], + [55.92861328125005, 24.215136718750074], + [55.96630859374997, 24.142626953125045], + [55.99218750000003, 24.092968749999955], + [55.98515625000002, 24.063378906249966], + [55.894140625, 24.041406250000023], + [55.77910156250002, 24.017089843750057], + [55.69658203125002, 24.024121093749983], + [55.54785156250003, 23.99135742187505], + [55.4684570312501, 23.94111328125001], + [55.49179687500006, 23.90966796875], + [55.519335937500074, 23.88549804687497], + [55.531640625, 23.81904296875001], + [55.5084960937501, 23.72460937499997], + [55.46630859375003, 23.632910156250034], + [55.413867187500074, 23.51875], + [55.35322265625004, 23.38745117187503], + [55.27021484375004, 23.18994140625003], + [55.1999023437501, 23.034765625000034], + [55.19218750000002, 22.922949218749977], + [55.19404296875004, 22.85], + [55.185839843750074, 22.7041015625], + [55.11943359375002, 22.623925781249994], + [55.104296875000074, 22.621484375000023], + [55.025, 22.631152343750045], + [54.99824218750004, 22.634375], + [54.92246093750006, 22.643652343750006], + [54.8048828125001, 22.658007812500017], + [54.652246093749994, 22.676660156249994], + [54.47167968749997, 22.698730468750057], + [54.270117187500006, 22.72333984375001], + [54.054589843749994, 22.749658203125023], + [53.83212890625006, 22.776806640624955], + [53.6095703125001, 22.80400390624999], + [53.39404296874997, 22.83032226562503], + [53.19238281250003, 22.854931640624983], + [53.01191406250004, 22.877001953125045], + [52.859277343749994, 22.895605468750006], + [52.741601562499994, 22.910009765625006], + [52.66591796875005, 22.919287109375034], + [52.63916015625003, 22.922509765624994], + [52.55507812500005, 22.932812499999955], + [52.50957031250002, 22.986962890624966], + [52.45458984374997, 23.052441406249983], + [52.39960937500004, 23.117968750000017], + [52.34453125000002, 23.18349609375005], + [52.28955078125003, 23.248974609374983], + [52.2345703125001, 23.314453125], + [52.179492187500074, 23.379980468750006], + [52.12451171874997, 23.445458984375023], + [52.06943359375006, 23.51098632812497], + [52.01445312500002, 23.57646484374999], + [51.95947265625003, 23.641992187500023], + [51.904394531250006, 23.70751953125003], + [51.849414062500074, 23.772998046875045], + [51.79433593750005, 23.838476562499977], + [51.739355468750006, 23.90400390625001], + [51.684375, 23.969531250000045], + [51.629296875, 24.035009765625063], + [51.592578125000074, 24.07885742187503], + [51.572167968749994, 24.128320312499966], + [51.56835937500003, 24.257910156250006], + [51.56835937500003, 24.286181640625074], + [51.60546875000003, 24.338427734375045], + [51.62314453125006, 24.30107421874999], + [51.66455078124997, 24.250439453124983], + [51.734765625, 24.262792968750006], + [51.76757812500003, 24.25439453125], + [51.79169921875004, 24.074755859375074], + [51.84316406250005, 24.010888671875023], + [51.906054687500074, 23.98535156249997], + [52.118554687499994, 23.97109375], + [52.25087890625005, 23.995214843750034], + [52.51142578125004, 24.1125], + [52.64824218750002, 24.154638671875006], + [53.02636718750003, 24.147314453125034], + [53.32958984374997, 24.098437500000017], + [53.80175781249997, 24.069482421874966], + [53.89335937500002, 24.077050781249994], + [54.14794921875003, 24.17119140624999], + [54.30429687500006, 24.254296874999966], + [54.39707031250006, 24.278173828125034], + [54.458398437499994, 24.358251953125006], + [54.498828125000074, 24.462695312500045], + [54.53466796875003, 24.53095703125001], + [54.58046875, 24.56352539062499], + [54.624121093750006, 24.62128906250004], + [54.65898437500002, 24.715527343749955], + [54.74677734375004, 24.810449218750023], + [55.09814453124997, 25.041601562500034], + [55.303515625000074, 25.23681640625003], + [55.32167968750005, 25.29980468749997], + [55.433398437500074, 25.394482421874983], + [55.522851562499994, 25.498144531249977], + [55.94121093750002, 25.793994140625017], + [56.02519531250002, 25.91601562500003], + [56.07460937500005, 26.05278320312499], + [56.08046875, 26.06264648437505], + [56.11650390625002, 26.068164062500017], + [56.16748046875003, 26.047460937499977], + [56.1725585937501, 25.945166015625006], + [56.154101562500074, 25.848486328125034], + [56.15195312500006, 25.74609375000003], + [56.144628906250006, 25.690527343750006], + [56.18359375000003, 25.644921875000023] + ], + [ + [56.210546875, 25.213281250000023], + [56.24023437500003, 25.208837890625006], + [56.28183593750006, 25.23554687500004], + [56.28779296875004, 25.278613281250017], + [56.27734375000003, 25.300878906250034], + [56.23427734375005, 25.303808593750006], + [56.2165039062501, 25.266699218749977], + [56.210546875, 25.213281250000023] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Argentina", + "iso_a2": "AR", + "iso_a3": "ARG", + "iso_n3": "032", + "continent": "South America" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-64.54916992187498, -54.71621093749998], + [-64.43881835937495, -54.739355468749984], + [-64.22050781249999, -54.721972656249996], + [-64.10532226562495, -54.72167968750003], + [-64.054931640625, -54.72988281250001], + [-64.03242187499995, -54.74238281249998], + [-63.881933593750006, -54.72294921875002], + [-63.81542968749997, -54.725097656250014], + [-63.83256835937499, -54.76796874999995], + [-63.97124023437499, -54.810644531250034], + [-64.0283203125, -54.792578125], + [-64.32290039062497, -54.796484375], + [-64.45327148437497, -54.84033203124995], + [-64.50869140625, -54.83994140624996], + [-64.637353515625, -54.90253906250001], + [-64.73144531249997, -54.86298828125004], + [-64.75732421875, -54.82656249999999], + [-64.689208984375, -54.774707031249996], + [-64.62509765624998, -54.77363281250004], + [-64.58134765624996, -54.752734375000045], + [-64.54916992187498, -54.71621093749998] + ] + ], + [ + [ + [-68.27822265625002, -52.98398437500004], + [-68.24013671875, -53.08183593749999], + [-68.3330078125, -53.01962890625002], + [-68.43115234375, -53.0552734375], + [-68.4794921875, -53.113769531250014], + [-68.52080078124996, -53.17724609374998], + [-68.5205078125, -53.221875], + [-68.48852539062497, -53.260937499999976], + [-68.39311523437499, -53.29492187499997], + [-68.16113281249997, -53.30644531250001], + [-68.14409179687496, -53.31904296875], + [-68.00849609374995, -53.5640625], + [-67.940283203125, -53.61875], + [-67.86108398437494, -53.66220703125001], + [-67.67812, -53.787109374999964], + [-67.502587890625, -53.92197265625], + [-67.29423828125002, -54.049804687500014], + [-67.06948242187497, -54.148046874999956], + [-66.86513671875, -54.22255859374995], + [-66.67006835937497, -54.31357421875002], + [-66.46201171875003, -54.441015624999956], + [-66.23564453124999, -54.53349609374997], + [-65.99257812499997, -54.598925781249974], + [-65.74707031250003, -54.65341796874998], + [-65.369287109375, -54.63212890624999], + [-65.25195312499997, -54.63808593749996], + [-65.17900390624993, -54.67812], + [-65.25234374999997, -54.78886718750004], + [-65.34599609374993, -54.87792968749997], + [-65.47114257812495, -54.91464843749999], + [-65.60332031249996, -54.92812], + [-65.72275390624995, -54.926367187499984], + [-65.84199218750001, -54.90996093750002], + [-65.95375976562494, -54.91933593749997], + [-66.06064453124998, -54.95673828125004], + [-66.172021484375, -54.975292968750004], + [-66.28676757812502, -54.97773437499997], + [-66.398681640625, -55.009375], + [-66.5111328125, -55.032128906249945], + [-66.62768554687503, -55.01328125000001], + [-66.93046874999999, -54.92490234375004], + [-67.127099609375, -54.90380859375001], + [-67.79326171874999, -54.868652343750036], + [-68.00712890624993, -54.8484375], + [-68.2201171875, -54.817578125000026], + [-68.331689453125, -54.81630859375003], + [-68.49101562499993, -54.83623046875], + [-68.61865234375, -54.83378906250004], + [-68.65322265624994, -54.85361328124999], + [-68.64750976562493, -54.62783203125], + [-68.63979492187497, -54.32402343750002], + [-68.63823242187499, -54.05292968750003], + [-68.63666992187495, -53.78886718749997], + [-68.63505859374996, -53.51542968750004], + [-68.633447265625, -53.241894531250004], + [-68.631689453125, -52.94951171875003], + [-68.62993164062499, -52.65263671875004], + [-68.57119140625002, -52.694921875000034], + [-68.33876953125, -52.900097656250004], + [-68.27822265625002, -52.98398437500004] + ] + ], + [ + [ + [-61.87578125, -39.17187], + [-61.865966796875, -39.23486328125003], + [-61.91801757812496, -39.22744140625002], + [-62.04160156249998, -39.16689453125004], + [-62.08330078124996, -39.11015625000002], + [-62.09301757812497, -39.08623046875003], + [-61.966650390625006, -39.112207031249994], + [-61.90712890624994, -39.135644531249966], + [-61.87578125, -39.17187] + ] + ], + [ + [ + [-65.77104492187493, -22.099609375000014], + [-65.68618164062497, -22.11025390625005], + [-65.51879882812497, -22.094531250000045], + [-65.48486328125, -22.09814453124997], + [-65.05781249999995, -22.102734375000026], + [-64.99262695312498, -22.109667968750017], + [-64.84306640624999, -22.14394531249998], + [-64.758642578125, -22.17128906250005], + [-64.70009765625, -22.185546875000014], + [-64.60551757812499, -22.228808593750045], + [-64.52363281250001, -22.37158203125], + [-64.47773437499998, -22.485351562499986], + [-64.44550781249998, -22.585351562500023], + [-64.37397460937498, -22.761035156250017], + [-64.32529296875, -22.82763671875], + [-64.30791015624993, -22.7953125], + [-64.26640625000002, -22.60332031249996], + [-64.20908203124995, -22.491308593749963], + [-64.13183593749994, -22.365820312499977], + [-63.97612304687502, -22.072558593750003], + [-63.92167968749993, -22.028613281250017], + [-63.861035156249926, -22.007226562500023], + [-63.81865234374999, -22.00546875000002], + [-63.775585937499926, -22.02724609375001], + [-63.716943359374966, -22.027539062499983], + [-63.67534179687493, -22.004296875000037], + [-63.2671875, -22.00058593749999], + [-62.843359375, -21.997265625000026], + [-62.83427734375002, -21.999121093749963], + [-62.815087890624994, -22.04960937500003], + [-62.744580078124955, -22.159863281250026], + [-62.66528320312494, -22.21796874999997], + [-62.65097656249998, -22.233691406249974], + [-62.625683593749955, -22.26152343749996], + [-62.62597656250003, -22.29042968749998], + [-62.54155273437496, -22.349609374999957], + [-62.37250976562498, -22.439160156249997], + [-62.21416015624996, -22.612402343750034], + [-62.066601562499926, -22.86943359374999], + [-61.92802734374993, -23.059277343750026], + [-61.798535156249955, -23.18203125], + [-61.67949218749993, -23.26875], + [-61.570996093749955, -23.319433593750006], + [-61.51303710937495, -23.36044921875002], + [-61.50551757812502, -23.39199218750005], + [-61.40395507812502, -23.457519531249986], + [-61.208398437499966, -23.55703125], + [-61.084716796875, -23.65644531250001], + [-61.032910156249926, -23.755664062499974], + [-60.83984375000003, -23.85810546874997], + [-60.50537109375, -23.96357421874997], + [-60.26220703124994, -24.013964843750017], + [-60.11030273437498, -24.009179687500023], + [-59.89248046874994, -24.093554687499974], + [-59.60859375000001, -24.26679687500001], + [-59.43540039062498, -24.38701171874999], + [-59.372949218749966, -24.45390625000003], + [-59.18725585937497, -24.56230468749999], + [-58.72402343750002, -24.786621093749957], + [-58.519628906250034, -24.84287109375005], + [-58.422802734374926, -24.894140625], + [-58.365380859374966, -24.95927734374996], + [-58.30869140624995, -24.97910156249999], + [-58.252783203125034, -24.953808593749997], + [-58.13647460937494, -24.97714843750005], + [-57.959814453125034, -25.04921875], + [-57.82167968749994, -25.136425781249983], + [-57.64389648437498, -25.328417968750017], + [-57.58715820312494, -25.405078125], + [-57.56313476562494, -25.473730468749963], + [-57.571679687499994, -25.534179687500014], + [-57.625830078125006, -25.59873046875002], + [-57.725488281249966, -25.667187500000026], + [-57.754785156249994, -25.69707031249999], + [-57.75708007812503, -25.72597656250001], + [-57.78247070312494, -25.783691406249957], + [-57.86523437500003, -25.90693359375001], + [-57.88623046874994, -25.964257812499966], + [-57.89062, -26.00654296874997], + [-57.943115234375, -26.05292968750001], + [-58.082421874999966, -26.13857421875005], + [-58.11113281249993, -26.18017578125], + [-58.11806640625002, -26.22490234374996], + [-58.135644531249966, -26.251464843749957], + [-58.15468750000002, -26.262597656249994], + [-58.18149414062498, -26.30742187499999], + [-58.20302734375002, -26.381445312499963], + [-58.205175781250006, -26.476562499999986], + [-58.187939453124955, -26.59257812499999], + [-58.19130859375002, -26.629980468749977], + [-58.222070312499994, -26.65], + [-58.23935546874995, -26.67685546875002], + [-58.24555664062498, -26.731054687499963], + [-58.271679687499955, -26.77070312500004], + [-58.31767578125002, -26.79589843750003], + [-58.33466796875001, -26.824902343749983], + [-58.32255859374993, -26.857617187499983], + [-58.3564453125, -26.890039062500023], + [-58.43632812499993, -26.921972656250034], + [-58.485253906249966, -26.96845703125001], + [-58.50322265624996, -27.02949218750001], + [-58.54770507812498, -27.083984375], + [-58.618603515624955, -27.13212890624996], + [-58.64174804687494, -27.196093750000017], + [-58.60483398437498, -27.314355468750037], + [-58.16826171874993, -27.27343749999997], + [-57.81220703124998, -27.31660156249997], + [-57.39125976562502, -27.43046874999999], + [-57.11181640625, -27.47011718749998], + [-56.973974609375006, -27.435742187499997], + [-56.87172851562494, -27.440625], + [-56.80517578124997, -27.484667968750017], + [-56.715722656249966, -27.49375], + [-56.60336914062498, -27.467871093749963], + [-56.51054687499999, -27.487890624999963], + [-56.437158203124966, -27.553808593749977], + [-56.370507812499966, -27.537402343750003], + [-56.31054687500003, -27.43876953124999], + [-56.24169921875003, -27.366796874999977], + [-56.16406250000003, -27.321484374999983], + [-56.067333984374955, -27.30771484375002], + [-55.95146484374996, -27.325683593749957], + [-55.859033203124966, -27.361914062499963], + [-55.789990234374926, -27.416406249999966], + [-55.71464843749996, -27.41484375], + [-55.632910156250006, -27.35712890624997], + [-55.59379882812502, -27.288085937500014], + [-55.597265625, -27.207617187499963], + [-55.56489257812498, -27.15], + [-55.496728515624966, -27.11533203124999], + [-55.45063476562498, -27.068359375000014], + [-55.426660156249994, -27.00927734374997], + [-55.345800781250034, -26.973144531249986], + [-55.20800781250003, -26.96015625], + [-55.13593750000001, -26.931152343749957], + [-55.12963867187497, -26.886035156250003], + [-55.0888671875, -26.84453124999999], + [-55.013623046874955, -26.806640624999986], + [-54.96215820312503, -26.759375], + [-54.934472656249994, -26.70253906250001], + [-54.88891601562503, -26.666796875000017], + [-54.82548828124999, -26.65224609374998], + [-54.755078124999955, -26.532910156249997], + [-54.677734375, -26.308789062499997], + [-54.631933593750006, -26.005761718749994], + [-54.615869140624994, -25.576074218750023], + [-54.537841796875, -25.576464843750017], + [-54.50151367187499, -25.608300781250023], + [-54.44394531249998, -25.625], + [-54.38334960937499, -25.588671875000017], + [-54.33188476562498, -25.57187], + [-54.250097656250006, -25.57041015625002], + [-54.206152343750034, -25.529589843749974], + [-54.15458984374999, -25.523046874999963], + [-54.119238281250006, -25.54521484374996], + [-54.08500976562496, -25.57187], + [-54.01230468749998, -25.57792968749996], + [-53.95478515624998, -25.64765625000004], + [-53.89116210937499, -25.66884765625001], + [-53.86420898437498, -25.74882812499996], + [-53.8232421875, -25.95957031249999], + [-53.746923828125006, -26.08369140624997], + [-53.67128906249994, -26.22509765625], + [-53.668554687500006, -26.288183593749977], + [-53.71093750000003, -26.351855468749974], + [-53.718164062499994, -26.443164062500017], + [-53.744580078124955, -26.666503906249957], + [-53.753320312499966, -26.74863281249999], + [-53.72714843749995, -26.804687500000043], + [-53.71728515625, -26.88281249999997], + [-53.758496093749955, -26.978320312499974], + [-53.83818359375002, -27.121093750000014], + [-53.91562, -27.159570312500037], + [-53.93535156250002, -27.1611328125], + [-54.04013671874995, -27.24375], + [-54.11381835937496, -27.27470703124996], + [-54.156445312499926, -27.253808593749966], + [-54.20522460937502, -27.289648437499977], + [-54.26015625000002, -27.38203124999997], + [-54.32700195312495, -27.423535156249997], + [-54.44814453124994, -27.446484375000054], + [-54.484326171874955, -27.45732421875003], + [-54.55493164062503, -27.4541015625], + [-54.61542968750001, -27.47714843749999], + [-54.66586914062498, -27.526562500000026], + [-54.71972656250003, -27.54492187500003], + [-54.777099609375, -27.53251953124999], + [-54.82910156250003, -27.55058593750003], + [-54.875732421875, -27.59921875], + [-54.90278320312501, -27.651953125], + [-54.91020507812502, -27.708593749999977], + [-54.955908203125006, -27.74716796875002], + [-55.039941406249994, -27.76777343750004], + [-55.06899414062494, -27.796289062499994], + [-55.063867187499966, -27.835937499999986], + [-55.10151367187501, -27.866796874999963], + [-55.24375, -27.898828125], + [-55.34648437499999, -27.95595703125001], + [-55.40981445312502, -28.037792968749983], + [-55.47666015624995, -28.089355468750014], + [-55.582373046875006, -28.12099609374998], + [-55.72548828125002, -28.20410156250003], + [-55.74599609375002, -28.25546875000002], + [-55.691503906250034, -28.302832031249977], + [-55.67197265624995, -28.344921875000026], + [-55.68725585937497, -28.38164062499996], + [-55.73198242187502, -28.386621093749994], + [-55.806054687499994, -28.359765625000037], + [-55.85888671875003, -28.35419921874997], + [-55.890527343749994, -28.370019531249994], + [-55.905419921874994, -28.399609374999983], + [-55.903662109375006, -28.443261718749994], + [-55.93017578124997, -28.472851562499983], + [-55.98491210937493, -28.48857421874999], + [-56.019628906250006, -28.52460937500004], + [-56.03422851562496, -28.58085937499996], + [-56.102880859375006, -28.65175781250001], + [-56.225537109374926, -28.73720703125001], + [-56.322363281250034, -28.852441406250037], + [-56.39326171874998, -28.99726562499997], + [-56.475976562499966, -29.09248046875001], + [-56.570703125, -29.138085937499966], + [-56.635839843750034, -29.203027343749966], + [-56.67153320312502, -29.287304687499997], + [-56.77246093749997, -29.417871093750037], + [-56.938623046874994, -29.594824218750034], + [-57.08935546874997, -29.71621093749998], + [-57.22465820312499, -29.782128906249994], + [-57.30068359374994, -29.856542968749963], + [-57.31748046874998, -29.939453124999986], + [-57.40522460937501, -30.03388671875004], + [-57.563867187499994, -30.139941406249974], + [-57.60888671875003, -30.187792968750045], + [-57.645751953125, -30.226953125000023], + [-57.65087890624997, -30.295019531250034], + [-57.71269531249996, -30.38447265624997], + [-57.83120117187502, -30.495214843749963], + [-57.87250976562501, -30.591015625000026], + [-57.818554687499926, -30.71201171874999], + [-57.81059570312499, -30.85859375000001], + [-57.83408203124998, -30.917480468750014], + [-57.88632812499998, -30.937402343749994], + [-57.898291015625006, -30.975195312499963], + [-57.870068359374955, -31.031054687499974], + [-57.86840820312497, -31.104394531249994], + [-57.89335937499999, -31.195312499999957], + [-57.948339843750006, -31.29941406250002], + [-58.03339843750001, -31.416601562500006], + [-58.053857421874994, -31.494921874999974], + [-58.009667968749966, -31.534375], + [-57.98798828124998, -31.576171875], + [-57.98886718749998, -31.62060546875], + [-58.00698242187494, -31.684960937499966], + [-58.04233398437495, -31.769238281249997], + [-58.09584960937502, -31.83183593749996], + [-58.16748046874997, -31.87265625], + [-58.18901367187499, -31.924218750000037], + [-58.16040039062503, -31.986523437500026], + [-58.156347656250006, -32.0515625], + [-58.17700195312494, -32.11904296875002], + [-58.16479492187494, -32.18486328125002], + [-58.119726562500006, -32.24892578125002], + [-58.12304687499997, -32.32187], + [-58.201171875, -32.471679687500014], + [-58.219970703125, -32.563964843749986], + [-58.17099609374998, -32.95927734374996], + [-58.20078125, -33.01464843749996], + [-58.250390624999966, -33.07832031249997], + [-58.30888671874999, -33.08291015625001], + [-58.37597656249997, -33.071875], + [-58.424462890624994, -33.11152343749998], + [-58.45483398437497, -33.28593749999999], + [-58.54721679687498, -33.66347656249998], + [-58.53056640624996, -33.75302734375002], + [-58.45659179687499, -33.898339843749966], + [-58.42949218749996, -33.99091796875], + [-58.40903320312498, -34.06074218750001], + [-58.392480468749966, -34.192968750000034], + [-58.435498046874955, -34.252539062500006], + [-58.475244140624966, -34.26298828125], + [-58.52548828124998, -34.29619140625002], + [-58.466210937499994, -34.457421875], + [-58.41894531249994, -34.53164062500002], + [-58.28334960937494, -34.68349609375005], + [-57.76357421875002, -34.89453124999996], + [-57.54785156250003, -35.018945312499994], + [-57.303662109374926, -35.188476562499986], + [-57.170654296875, -35.3625], + [-57.15888671875001, -35.505957031250006], + [-57.35390624999994, -35.72031249999998], + [-57.37548828125, -35.900292968749966], + [-57.33544921875, -36.026757812499966], + [-57.26499023437495, -36.144140625], + [-57.07617187499994, -36.296777343749994], + [-56.937158203124966, -36.352539062499986], + [-56.74946289062501, -36.346484375], + [-56.717382812500034, -36.389062499999966], + [-56.698095703125006, -36.42646484375004], + [-56.66826171874999, -36.73525390624998], + [-56.67202148437494, -36.85126953124998], + [-56.72714843749998, -36.95771484375], + [-57.08769531249999, -37.44638671874999], + [-57.39575195312494, -37.74462890625], + [-57.507275390624926, -37.90927734374998], + [-57.546972656250034, -38.085644531250026], + [-57.64560546874995, -38.16962890624998], + [-58.17919921874994, -38.435839843750045], + [-59.007226562499966, -38.67333984375003], + [-59.67626953124994, -38.79667968750002], + [-59.82832031250001, -38.83818359375003], + [-60.90395507812494, -38.973925781249974], + [-61.112207031249994, -38.99296875000003], + [-61.38286132812499, -38.980859374999966], + [-61.60253906249997, -38.99882812499999], + [-61.84790039062497, -38.961816406249994], + [-62.06689453125, -38.91914062500001], + [-62.18925781249996, -38.81328125000002], + [-62.33476562499993, -38.80009765625], + [-62.374462890624955, -38.85292968750002], + [-62.303613281249994, -38.98808593750002], + [-62.33808593749998, -39.1505859375], + [-62.29506835937502, -39.24326171874996], + [-62.209082031250006, -39.261816406250006], + [-62.12646484374997, -39.30976562500001], + [-62.053662109374955, -39.373828125], + [-62.179345703124994, -39.38046875000002], + [-62.13056640624998, -39.43154296874995], + [-62.076806640624966, -39.46152343750002], + [-62.08276367187503, -39.568359375000014], + [-62.131542968749926, -39.82539062499998], + [-62.25395507812499, -39.88046875], + [-62.28691406249996, -39.89531250000002], + [-62.32397460937497, -39.950683593750014], + [-62.40185546875003, -40.19658203125002], + [-62.427001953125, -40.355957031249986], + [-62.39360351562493, -40.458789062499974], + [-62.24633789062494, -40.674609374999974], + [-62.30185546874998, -40.8146484375], + [-62.39501953124997, -40.89082031249997], + [-62.797998046874994, -41.04716796875002], + [-62.95903320312493, -41.10966796875006], + [-63.212841796874955, -41.15244140624998], + [-63.621777343749955, -41.15976562499996], + [-63.77299804687493, -41.15], + [-64.12319335937497, -41.0078125], + [-64.38344726562497, -40.92246093750002], + [-64.62148437499997, -40.85449218750003], + [-64.85297851562495, -40.81376953124999], + [-64.81987304687496, -40.79326171874999], + [-64.80439453125001, -40.75654296874997], + [-64.86948242187503, -40.735839843750014], + [-64.91689453125002, -40.73134765624998], + [-65.06943359375, -40.805273437500034], + [-65.13339843749998, -40.88066406250003], + [-65.15185546875, -40.94697265625004], + [-65.15498046874993, -41.10566406250004], + [-65.12788085937501, -41.23876953124997], + [-65.01826171874995, -41.56689453125003], + [-65.00703124999998, -41.745117187500014], + [-65.05908203125003, -41.96992187499998], + [-64.98637695312496, -42.102050781249986], + [-64.89804687499998, -42.16181640625], + [-64.69951171874996, -42.22080078125002], + [-64.62246093749997, -42.261035156250045], + [-64.53774414062494, -42.25458984374998], + [-64.51171874999997, -42.27021484374997], + [-64.52421875, -42.29921875], + [-64.57412109375, -42.35595703125003], + [-64.57099609374998, -42.416015625], + [-64.42041015625003, -42.43378906249998], + [-64.26459960937498, -42.4216796875], + [-64.10087890624993, -42.395117187500006], + [-64.06220703124998, -42.35341796874995], + [-64.06118164062494, -42.266113281250014], + [-64.2529296875, -42.25078125], + [-64.228515625, -42.21826171874996], + [-64.083251953125, -42.18281250000001], + [-63.89287109374993, -42.12460937499996], + [-63.795556640624994, -42.113867187500006], + [-63.72949218749994, -42.15292968749996], + [-63.68476562499998, -42.18867187499997], + [-63.6298828125, -42.28271484375003], + [-63.59589843750001, -42.40654296875003], + [-63.59443359374998, -42.55556640625001], + [-63.61733398437502, -42.695800781249986], + [-63.644482421874955, -42.74570312500002], + [-63.69248046874998, -42.80527343749999], + [-64.03476562499998, -42.88125], + [-64.13066406249996, -42.86142578124998], + [-64.21992187499995, -42.75556640625], + [-64.24794921874997, -42.64609374999998], + [-64.32426757812499, -42.57226562499996], + [-64.48784179687499, -42.51347656250006], + [-64.65048828125, -42.53144531249998], + [-64.81196289062495, -42.63320312500002], + [-64.97070312499997, -42.66630859375002], + [-65.02690429687496, -42.75888671874996], + [-64.62919921875002, -42.90898437499999], + [-64.441552734375, -42.95068359374996], + [-64.38037109374994, -42.949218750000014], + [-64.31914062499999, -42.968945312500026], + [-64.37568359374998, -43.024609375], + [-64.43222656250003, -43.059179687500034], + [-64.71523437499997, -43.135546875000045], + [-64.83994140624998, -43.18886718749998], + [-64.98554687499995, -43.29355468749999], + [-65.18974609374999, -43.522070312500006], + [-65.25234374999997, -43.571875], + [-65.28359375000002, -43.62998046874996], + [-65.30468749999997, -43.7875], + [-65.23857421874999, -44.04873046875001], + [-65.30839843750002, -44.158203125000014], + [-65.26552734375, -44.2796875], + [-65.28984375, -44.36074218749998], + [-65.36127929687495, -44.47734375000002], + [-65.64760742187502, -44.661425781250045], + [-65.69833984374995, -44.79619140625006], + [-65.59912109375, -44.87558593749998], + [-65.605712890625, -44.94501953125], + [-65.63876953125, -45.0078125], + [-65.75771484374997, -45.007128906250045], + [-66.19013671874995, -44.96474609375002], + [-66.34775390625, -45.03359375], + [-66.49360351562498, -45.11757812499998], + [-66.533447265625, -45.1578125], + [-66.58505859374995, -45.182910156249974], + [-66.88247070312497, -45.22763671875002], + [-66.94140625, -45.25732421875003], + [-67.25761718750002, -45.57724609375002], + [-67.39301757812498, -45.77558593750001], + [-67.556640625, -45.97011718750002], + [-67.59956054687495, -46.05253906250003], + [-67.60888671875, -46.166796875000045], + [-67.58608398437497, -46.269531250000014], + [-67.56337890624997, -46.34541015625001], + [-67.5064453125, -46.44277343749995], + [-67.38662109375, -46.55380859375002], + [-66.77685546874994, -47.005859375], + [-66.65039062500003, -47.045312499999966], + [-65.99853515625, -47.09375], + [-65.853662109375, -47.156738281250014], + [-65.76909179687499, -47.25673828124995], + [-65.73808593749999, -47.34492187499998], + [-65.77539062500003, -47.56835937500003], + [-65.81430664062495, -47.63818359374996], + [-65.88632812499998, -47.7015625], + [-66.04062, -47.783300781250034], + [-66.22524414062502, -47.826757812500006], + [-66.17236328125, -47.85761718749998], + [-66.09736328124998, -47.85322265624997], + [-65.93422851562497, -47.826757812500006], + [-65.863671875, -47.85322265624997], + [-65.81005859374997, -47.941113281250026], + [-65.91215820312499, -47.97675781250001], + [-65.94340820312496, -48.019335937499974], + [-66.0171875, -48.084277343749974], + [-66.39335937499999, -48.34238281249998], + [-66.59628906250003, -48.41953124999998], + [-66.7828125, -48.522949218749986], + [-67.03310546875002, -48.627734375000024], + [-67.13095703124998, -48.68789062500002], + [-67.26333007812502, -48.81425781250001], + [-67.46630859375, -48.95175781250004], + [-67.68486328125002, -49.2466796875], + [-67.69370117187495, -49.30400390625004], + [-67.66196289062498, -49.3421875], + [-67.78349609374996, -49.85888671875002], + [-67.82597656249999, -49.91962890625005], + [-67.91396484374997, -49.98447265625003], + [-68.14565429687502, -50.09140624999996], + [-68.2572265625, -50.104589843749984], + [-68.404638671875, -50.04267578124998], + [-68.487890625, -49.97792968750002], + [-68.56928710937498, -49.86699218749998], + [-68.66757812500003, -49.75253906250003], + [-68.67265624999999, -49.793457031250014], + [-68.63847656249996, -49.86298828124997], + [-68.66162109374997, -49.93574218750005], + [-68.91298828125002, -49.96875], + [-68.97958984375, -50.003027343749984], + [-68.75268554687494, -49.98769531249997], + [-68.59794921874996, -50.00947265624997], + [-68.53256835937498, -50.03613281249998], + [-68.47373046874998, -50.09140624999996], + [-68.42187, -50.15791015625001], + [-68.46542968749998, -50.19472656249996], + [-68.58935546875, -50.22519531250004], + [-68.749853515625, -50.28115234374998], + [-68.939453125, -50.382324218749986], + [-69.04477539062495, -50.49912109374998], + [-69.09018554687498, -50.583105468750034], + [-69.14140625000002, -50.752539062500006], + [-69.15498046874993, -50.864453124999976], + [-69.23515625000002, -50.95058593750003], + [-69.35859374999993, -51.028125], + [-69.35175781249995, -51.04580078124997], + [-69.26796874999994, -51.00615234374998], + [-69.20102539062498, -50.99365234375001], + [-69.14350585937498, -51.09697265625001], + [-69.06572265624996, -51.30351562499999], + [-69.02958984374996, -51.44648437499998], + [-69.03530273437497, -51.48896484375002], + [-69.05830078124995, -51.547167968749974], + [-69.21806640624999, -51.56123046875], + [-69.36054687499998, -51.559472656249994], + [-69.46542968750003, -51.58447265625003], + [-69.40908203125002, -51.61025390624995], + [-69.31303710937499, -51.601074218750036], + [-69.18012695312498, -51.66230468749998], + [-69.03251953124993, -51.63623046875], + [-68.96533203125003, -51.67714843749999], + [-68.91679687499999, -51.71464843749999], + [-68.69082031249997, -52.01308593749995], + [-68.493505859375, -52.19755859375005], + [-68.39375, -52.30703124999997], + [-68.443359375, -52.35664062500004], + [-68.46098632812496, -52.290429687499966], + [-68.58979492187498, -52.273339843749945], + [-68.71518554687495, -52.255468750000034], + [-68.92456054687497, -52.20810546874998], + [-69.20620117187497, -52.13613281249997], + [-69.48842773437502, -52.13613281249997], + [-69.71259765624993, -52.07539062500003], + [-69.96025390624993, -52.00820312500002], + [-70.48286132812501, -52.00224609375005], + [-70.94316406249999, -51.99814453125001], + [-71.41474609374995, -51.993945312500045], + [-71.71660156249999, -51.99130859375004], + [-71.91865234374995, -51.98955078125004], + [-71.97109374999997, -51.96416015625002], + [-71.95346679687503, -51.88037109375], + [-72.02841796875003, -51.81865234375004], + [-72.13696289062503, -51.74404296875003], + [-72.26899414062501, -51.69111328124999], + [-72.33452148437493, -51.62031250000005], + [-72.40766601562501, -51.54082031250002], + [-72.36640624999995, -51.47031250000004], + [-72.30322265624997, -51.29892578125003], + [-72.30185546874995, -51.22333984375], + [-72.35917968749999, -51.17041015624996], + [-72.37680664062503, -51.09541015625005], + [-72.35917968749999, -51.06015625], + [-72.307373046875, -51.033398437500026], + [-72.27631835937498, -50.910253906249984], + [-72.30063476562498, -50.78955078124999], + [-72.34023437499997, -50.68183593749999], + [-72.39257812499997, -50.63427734374998], + [-72.46015624999995, -50.61171875], + [-72.50981445312496, -50.607519531250034], + [-72.62041015625002, -50.64765625000004], + [-72.80361328124994, -50.637695312499964], + [-72.86591796874993, -50.653125], + [-72.95556640625, -50.69648437500004], + [-73.08237304687498, -50.7603515625], + [-73.15292968749998, -50.73828125000003], + [-73.17451171875001, -50.67001953124998], + [-73.22163085937493, -50.61074218749998], + [-73.251611328125, -50.558496093749994], + [-73.27416992187497, -50.47255859374999], + [-73.31171874999998, -50.361914062500006], + [-73.38662109374997, -50.23115234375001], + [-73.50126953124996, -50.125292968750024], + [-73.50771484374994, -50.03027343750003], + [-73.52890625, -49.91093750000005], + [-73.47041015624998, -49.79453124999996], + [-73.50454101562502, -49.698046875000024], + [-73.57626953124998, -49.582910156250016], + [-73.55419921875, -49.463867187500014], + [-73.48364257812503, -49.397656250000026], + [-73.46157226562497, -49.31386718750001], + [-73.13525390625, -49.30068359374999], + [-73.14887695312493, -49.18798828125003], + [-73.09458007812498, -49.096875], + [-73.03364257812501, -49.014355468750004], + [-72.98173828124999, -48.97675781249998], + [-72.86542968750001, -48.94394531249996], + [-72.72846679687501, -48.896289062500024], + [-72.65126953125, -48.84160156249998], + [-72.61440429687494, -48.79287109375], + [-72.59174804687495, -48.72968750000001], + [-72.5859375, -48.6625], + [-72.60839843749997, -48.51933593750006], + [-72.582861328125, -48.47539062499999], + [-72.49814453124998, -48.41738281249998], + [-72.35473632812497, -48.36582031250005], + [-72.29301757812502, -48.22910156249999], + [-72.32832031250001, -48.11005859374998], + [-72.40791015624998, -48.01591796874999], + [-72.50908203124999, -47.973339843750026], + [-72.517919921875, -47.87636718749998], + [-72.47221679687502, -47.78417968750003], + [-72.41259765624994, -47.685546875000014], + [-72.34150390624995, -47.57207031249999], + [-72.34594726562497, -47.49267578124997], + [-72.28291015625001, -47.44628906250003], + [-72.10341796875002, -47.342773437499986], + [-72.04169921874998, -47.241406250000026], + [-71.97851562499997, -47.213867187500014], + [-71.90498046875001, -47.201660156250014], + [-71.900537109375, -47.144335937499974], + [-71.95424804687502, -47.0875], + [-71.96298828125, -47.01601562500004], + [-71.95664062499998, -46.936816406249974], + [-71.94023437499999, -46.83125], + [-71.85644531249997, -46.79160156249996], + [-71.73271484374999, -46.70585937499999], + [-71.69965820312501, -46.6513671875], + [-71.69521484375, -46.57841796875006], + [-71.73129882812498, -46.42783203125002], + [-71.76210937499994, -46.31982421874996], + [-71.77763671874999, -46.27998046875001], + [-71.83413085937497, -46.20673828125001], + [-71.87568359374998, -46.160546875], + [-71.80927734374995, -46.10273437500004], + [-71.68447265624994, -46.041894531249994], + [-71.63154296874998, -45.95371093749998], + [-71.68007812500002, -45.878710937499974], + [-71.750634765625, -45.83906249999997], + [-71.77265624999995, -45.724414062499974], + [-71.74619140624998, -45.57890625], + [-71.69331054687495, -45.53476562499998], + [-71.50810546874999, -45.512695312500014], + [-71.49042968749993, -45.43769531250001], + [-71.34931640624995, -45.33193359374995], + [-71.35375976562497, -45.23046874999997], + [-71.44345703124995, -45.16826171875], + [-71.53129882812499, -45.067871093749986], + [-71.5962890625, -44.97919921875004], + [-71.81235351562498, -44.9306640625], + [-72.04169921874998, -44.90419921875004], + [-72.07250976562494, -44.82041015625002], + [-72.06372070312503, -44.771875], + [-71.95703124999994, -44.791503906249986], + [-71.78281249999998, -44.77441406249997], + [-71.65166015625002, -44.77041015624995], + [-71.56040039062498, -44.76201171875002], + [-71.45517578125003, -44.74980468750002], + [-71.35815429687497, -44.78515625000003], + [-71.26113281250002, -44.763085937499966], + [-71.22148437499993, -44.63076171875001], + [-71.15971679687496, -44.56025390625004], + [-71.15087890624994, -44.494042968749966], + [-71.21259765624998, -44.44121093750003], + [-71.32573242187496, -44.42490234374999], + [-71.82001953124993, -44.38310546875], + [-71.83505859374998, -44.33017578124998], + [-71.83076171874998, -44.24140625000001], + [-71.812109375, -44.15078125000002], + [-71.81235351562498, -44.10605468749996], + [-71.7671875, -44.06669921875003], + [-71.716162109375, -43.98447265624998], + [-71.68007812500002, -43.92958984374998], + [-71.71596679687497, -43.85839843749996], + [-71.79472656250002, -43.75322265625003], + [-71.73740234374998, -43.7046875], + [-71.732763671875, -43.64677734375002], + [-71.750634765625, -43.59013671875002], + [-71.83242187499997, -43.527148437499974], + [-71.90498046875001, -43.44013671875001], + [-71.90498046875001, -43.34755859374998], + [-71.82021484374997, -43.322949218750026], + [-71.76386718749995, -43.29462890625004], + [-71.750634765625, -43.237304687499986], + [-71.781494140625, -43.16679687500002], + [-71.89858398437494, -43.14531249999999], + [-72.05468749999994, -43.10195312499995], + [-72.102392578125, -43.065625], + [-72.14643554687498, -42.990039062499974], + [-72.11362304687498, -42.77675781249995], + [-72.13002929687494, -42.648242187499974], + [-72.14370117187497, -42.57714843749997], + [-72.10541992187498, -42.522460937500014], + [-72.05346679687497, -42.473242187500034], + [-72.078125, -42.358496093750006], + [-72.12460937499998, -42.298339843750014], + [-72.10820312499993, -42.25185546874995], + [-72.06440429687498, -42.20537109374999], + [-72.026123046875, -42.147949218750014], + [-71.99331054687497, -42.134277343749986], + [-71.94409179687497, -42.167089843750006], + [-71.86079101562498, -42.147851562499994], + [-71.76093749999998, -42.101464843749966], + [-71.75, -42.04677734375001], + [-71.77001953124997, -41.968554687499974], + [-71.84448242187503, -41.771972656249986], + [-71.91127929687497, -41.650390624999986], + [-71.89760742187502, -41.606640625000054], + [-71.87114257812496, -41.560546874999986], + [-71.89218749999998, -41.39335937500003], + [-71.88559570312498, -41.29238281249998], + [-71.88071289062495, -40.99462890624997], + [-71.873046875, -40.892968749999966], + [-71.94135742187495, -40.789160156250034], + [-71.93212890624994, -40.69169921874999], + [-71.88378906249994, -40.620605468749986], + [-71.83852539062497, -40.524414062500014], + [-71.80463867187498, -40.43916015624997], + [-71.76914062499995, -40.400878906249986], + [-71.70898437499997, -40.381738281249994], + [-71.69531250000003, -40.33525390625003], + [-71.72265625, -40.29970703124998], + [-71.80058593749996, -40.24433593749998], + [-71.81831054687493, -40.17666015624995], + [-71.80195312499998, -40.124707031250026], + [-71.763671875, -40.09462890625004], + [-71.70439453124999, -40.094921875], + [-71.65976562499998, -40.02080078125], + [-71.64711914062497, -39.929199218749986], + [-71.63789062499995, -39.88681640624998], + [-71.67207031249998, -39.83330078124999], + [-71.69682617187496, -39.70703125000003], + [-71.71992187499995, -39.63525390624997], + [-71.69257812499998, -39.60517578124997], + [-71.654296875, -39.59423828124996], + [-71.58701171874998, -39.61113281250003], + [-71.53945312499997, -39.60244140624995], + [-71.53125, -39.56416015624997], + [-71.52578124999994, -39.52314453125004], + [-71.50776367187501, -39.495214843750034], + [-71.46538085937499, -39.40234375000004], + [-71.42001953124998, -39.287207031250034], + [-71.40937, -39.205957031249994], + [-71.42558593749996, -38.98564453125006], + [-71.40156249999995, -38.93505859374996], + [-71.35317382812494, -38.88886718749997], + [-71.28574218749998, -38.84541015625], + [-71.19726562499997, -38.809375], + [-71.08710937500001, -38.757519531250026], + [-70.95161132812493, -38.73847656249997], + [-70.89692382812498, -38.681054687499994], + [-70.858642578125, -38.60449218750003], + [-70.84765625, -38.541601562500006], + [-70.899658203125, -38.497851562499974], + [-70.96796874999998, -38.44589843749996], + [-71.00048828124994, -38.31484375], + [-71.0181640625, -38.19394531249996], + [-71.028173828125, -38.041210937500026], + [-71.09619140625, -37.90996093750002], + [-71.16757812499998, -37.76230468749996], + [-71.18671874999995, -37.63105468750004], + [-71.16284179687497, -37.55917968749996], + [-71.13481445312496, -37.4451171875], + [-71.16489257812495, -37.39326171875001], + [-71.20039062499998, -37.300292968749986], + [-71.16347656250002, -37.22744140624998], + [-71.118408203125, -37.114355468750034], + [-71.12382812499993, -37.05693359374996], + [-71.15937, -36.92021484375], + [-71.19218750000002, -36.84365234375004], + [-71.15937, -36.76162109375002], + [-71.10742187499997, -36.68505859374997], + [-71.06640624999997, -36.64404296874996], + [-71.07324218750003, -36.57802734375001], + [-71.05551757812498, -36.52373046874996], + [-70.97792968749997, -36.4873046875], + [-70.90512695312498, -36.41992187499996], + [-70.85317382812497, -36.41171874999996], + [-70.79028320312503, -36.41171874999996], + [-70.74926757812503, -36.39257812499997], + [-70.73286132812495, -36.340625], + [-70.72192382812494, -36.283203124999986], + [-70.62187, -36.21191406250003], + [-70.56337890625, -36.14638671875001], + [-70.45673828124993, -36.132714843749966], + [-70.40478515625, -36.06171874999998], + [-70.40366210937495, -35.97050781249996], + [-70.41572265625001, -35.87851562499996], + [-70.38017578124996, -35.771875], + [-70.41972656249993, -35.60917968749999], + [-70.41572265625001, -35.52304687500002], + [-70.45673828124993, -35.45195312500002], + [-70.44853515624993, -35.375390624999966], + [-70.47041015624995, -35.32617187499997], + [-70.53232421874995, -35.307910156249974], + [-70.55517578125, -35.24687], + [-70.52509765625001, -35.216796874999986], + [-70.46660156249999, -35.193652343749974], + [-70.39316406250003, -35.146875], + [-70.338134765625, -34.92177734375001], + [-70.31210937499995, -34.854980468749986], + [-70.28676757812494, -34.77451171875002], + [-70.28994140624997, -34.732812499999966], + [-70.25468749999999, -34.672656249999974], + [-70.21069335937497, -34.58125], + [-70.14125976562497, -34.492871093750026], + [-70.10146484375002, -34.43203125], + [-70.06298828125, -34.35], + [-70.05205078124999, -34.30078124999997], + [-70.00283203125, -34.27626953125004], + [-69.94633789062496, -34.269921875], + [-69.87978515625, -34.25439453125003], + [-69.85244140625, -34.224316406250026], + [-69.85737304687495, -34.180468749999974], + [-69.86152343749998, -34.08359375000005], + [-69.88149414062497, -33.92978515624998], + [-69.89433593750002, -33.73134765625005], + [-69.88256835937503, -33.60097656250004], + [-69.83876953124997, -33.46972656250004], + [-69.79775390624997, -33.398632812500026], + [-69.80869140624998, -33.3439453125], + [-69.81962890624999, -33.28378906249999], + [-69.89619140624995, -33.25097656249997], + [-69.96904296874996, -33.27939453124999], + [-70.01982421874999, -33.27148437499997], + [-70.08486328125002, -33.20175781249998], + [-70.10400390625, -33.12792968750004], + [-70.09306640624999, -33.02675781250004], + [-70.04213867187502, -32.963671874999974], + [-70.02197265625, -32.88457031250002], + [-70.05205078124999, -32.85996093749998], + [-70.11616210937501, -32.80742187500002], + [-70.17695312499995, -32.62607421875002], + [-70.16962890624995, -32.471679687500014], + [-70.22978515624996, -32.4306640625], + [-70.2578125, -32.30996093750002], + [-70.32001953124995, -32.26669921874999], + [-70.34462890625, -32.17646484375], + [-70.36376953125, -32.08349609374997], + [-70.35556640625, -32.04238281250004], + [-70.29091796875, -32.031054687500045], + [-70.25439453125, -31.957714843750026], + [-70.28173828124997, -31.91660156249999], + [-70.33095703124997, -31.88105468750004], + [-70.39384765624999, -31.88378906249997], + [-70.45014648437501, -31.841894531249963], + [-70.52563476562503, -31.66640625], + [-70.585205078125, -31.569433593749963], + [-70.56640624999997, -31.427929687499997], + [-70.5546875, -31.317382812499957], + [-70.529052734375, -31.22285156249997], + [-70.51958007812493, -31.1484375], + [-70.47309570312498, -31.112792968750014], + [-70.42939453124995, -31.129296875], + [-70.38837890624995, -31.121093750000014], + [-70.35058593749997, -31.06044921875001], + [-70.30908203124994, -31.02265625000004], + [-70.31181640624999, -30.992578125000037], + [-70.33642578125003, -30.959765625000017], + [-70.34814453125, -30.902343749999957], + [-70.31923828125, -30.83398437499997], + [-70.26938476562495, -30.677246093750014], + [-70.19394531250003, -30.50468750000003], + [-70.16142578124999, -30.44023437499996], + [-70.16962890624995, -30.385546875], + [-70.15322265625, -30.360937499999963], + [-70.10200195312495, -30.388281250000034], + [-69.95634765624996, -30.35820312500003], + [-69.90712890624997, -30.28164062499998], + [-69.88803710937498, -30.21328125], + [-69.84428710937493, -30.175], + [-69.86337890625, -30.12031249999997], + [-69.92353515625001, -30.10390625], + [-69.95996093749997, -30.078320312500026], + [-69.94545898437494, -30.01640625000003], + [-69.92412109374996, -29.87402343749997], + [-69.92763671874997, -29.76914062500002], + [-69.98261718749998, -29.54541015625], + [-70.02680664062501, -29.324023437500017], + [-69.99560546874994, -29.25], + [-69.90034179687498, -29.148828125000023], + [-69.82788085937497, -29.10322265624997], + [-69.81484375, -29.045507812500034], + [-69.74316406249994, -28.783886718750026], + [-69.73491210937496, -28.64111328124997], + [-69.68789062499997, -28.56201171875003], + [-69.65693359374995, -28.413574218749986], + [-69.52714843749999, -28.28564453125003], + [-69.4888671875, -28.200878906249997], + [-69.4369140625, -28.192675781250017], + [-69.40957031250002, -28.16533203125003], + [-69.34072265624994, -28.070800781249957], + [-69.251220703125, -27.97363281249997], + [-69.17441406249998, -27.924707031250037], + [-69.1552734375, -27.848144531249986], + [-69.11850585937498, -27.743554687499994], + [-69.04218749999995, -27.570019531249997], + [-68.99941406249994, -27.44902343750003], + [-68.94199218749998, -27.40517578124998], + [-68.87509765625003, -27.24667968750002], + [-68.84633789062494, -27.153710937499994], + [-68.76977539062497, -27.11542968750001], + [-68.70961914062497, -27.104492187500014], + [-68.652197265625, -27.148339843749966], + [-68.59208984375002, -27.140039062499966], + [-68.53735351562497, -27.085351562500023], + [-68.40537109374998, -27.04814453124999], + [-68.34599609374996, -27.02792968750005], + [-68.31865234374999, -26.973242187500006], + [-68.31865234374999, -26.877539062499963], + [-68.37333984374993, -26.806445312500045], + [-68.48510742187497, -26.670312500000023], + [-68.58115234375, -26.518359374999974], + [-68.59160156249999, -26.47041015624997], + [-68.59218749999994, -26.418066406249963], + [-68.57578124999998, -26.351953125], + [-68.52983398437493, -26.276953125], + [-68.41450195312498, -26.153710937500023], + [-68.4267578125, -26.06542968749997], + [-68.51083984374998, -25.74101562499996], + [-68.54189453125, -25.65156250000004], + [-68.60029296874998, -25.48564453124999], + [-68.59208984375002, -25.420019531250034], + [-68.54082031249996, -25.23671875], + [-68.49633789062494, -25.16298828124998], + [-68.43071289062499, -25.149316406250037], + [-68.39521484374995, -25.124707031249997], + [-68.38422851562495, -25.091894531249977], + [-68.42802734374999, -25.050976562499983], + [-68.44711914062498, -24.998925781250037], + [-68.46630859374997, -24.925195312500023], + [-68.52705078124998, -24.899218749999974], + [-68.56201171875, -24.83769531249996], + [-68.56201171875, -24.74736328125003], + [-68.50727539062495, -24.62978515624998], + [-68.44711914062498, -24.596972656250045], + [-68.42255859374993, -24.54511718750004], + [-68.35810546874995, -24.497265624999983], + [-68.29951171875001, -24.46035156250001], + [-68.25029296875002, -24.391992187500023], + [-68.04736328124997, -24.308300781250026], + [-67.88623046875, -24.243359375000026], + [-67.57177734374997, -24.118945312500003], + [-67.35620117187503, -24.033789062499963], + [-67.335595703125, -23.974804687500026], + [-67.31914062499993, -23.93466796875002], + [-67.219140625, -23.63398437499997], + [-67.08974609375002, -23.24511718749997], + [-67.00878906249994, -23.00136718750005], + [-67.19487304687493, -22.821679687500037], + [-67.16191406249996, -22.773828124999966], + [-67.05541992187494, -22.650878906249957], + [-67.033544921875, -22.55224609375003], + [-66.99111328125, -22.509863281250006], + [-66.80029296875003, -22.40966796875003], + [-66.76748046875, -22.34306640624996], + [-66.75063476562502, -22.26933593750003], + [-66.71171874999999, -22.216308593749986], + [-66.63901367187503, -22.205371093749974], + [-66.50698242187494, -22.158398437499997], + [-66.36518554687501, -22.113769531249957], + [-66.32246093750001, -22.053125], + [-66.28212890624997, -21.94746093750001], + [-66.24760742187496, -21.83046875], + [-66.22016601562495, -21.802539062499974], + [-66.174658203125, -21.805664062499986], + [-66.09858398437495, -21.83505859375002], + [-66.05859375, -21.87949218750002], + [-65.86015624999999, -22.019726562499983], + [-65.77104492187493, -22.099609375000014] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Armenia", + "iso_a2": "AM", + "iso_a3": "ARM", + "iso_n3": "051", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [45.55234375000006, 40.61606445312506], + [45.51435546875004, 40.59956054687498], + [45.47880859375002, 40.60698242187499], + [45.47880859375002, 40.648339843749966], + [45.504492187500006, 40.664843750000045], + [45.53417968750003, 40.664013671874955], + [45.562304687500074, 40.64916992187506], + [45.55234375000006, 40.61606445312506] + ] + ], + [ + [ + [45.08476562500002, 41.195458984374966], + [45.15234375000003, 41.175146484375006], + [45.188574218750006, 41.14741210937504], + [45.19023437500002, 41.12636718750002], + [45.070703125, 41.10083007812506], + [45.06259765625006, 41.08813476562503], + [45.07050781250004, 41.075585937499966], + [45.106054687500006, 41.06933593750003], + [45.27343750000003, 41.00625], + [45.36894531250002, 41.00488281250003], + [45.41914062500004, 40.985693359375034], + [45.444238281249994, 40.947998046875], + [45.52402343750006, 40.89672851562503], + [45.5875, 40.846923828125], + [45.59140625, 40.829736328124966], + [45.579394531250074, 40.80449218749999], + [45.40136718749997, 40.707128906250034], + [45.37890624999997, 40.67358398437506], + [45.37617187500004, 40.63808593750002], + [45.45439453125002, 40.532373046874966], + [45.5695312500001, 40.41684570312506], + [45.73574218750005, 40.32910156250003], + [45.96464843750002, 40.233789062499966], + [45.96757812500002, 40.17480468750003], + [45.93125, 40.104687499999955], + [45.90009765625004, 40.05708007812504], + [45.8859375000001, 40.024853515624955], + [45.8581054687501, 40.011279296875045], + [45.63017578125002, 40.01420898437502], + [45.595996093750074, 40.002832031249994], + [45.58095703125005, 39.98901367187503], + [45.57978515625004, 39.9775390625], + [45.6618164062501, 39.956201171874994], + [45.789648437500006, 39.88110351562497], + [45.863183593749994, 39.808349609375], + [45.93994140624997, 39.77656250000001], + [46.02587890624997, 39.71855468749999], + [46.094824218750006, 39.664453125], + [46.202050781249994, 39.59448242187503], + [46.32167968750005, 39.617431640625], + [46.48144531249997, 39.55517578125003], + [46.48808593750002, 39.512841796874994], + [46.478125, 39.47509765625006], + [46.3776367187501, 39.43388671874999], + [46.365136718749994, 39.41679687499999], + [46.36523437500003, 39.402490234374994], + [46.37841796874997, 39.382275390624955], + [46.437304687500074, 39.34853515625002], + [46.506640625000074, 39.298535156249955], + [46.584765625000074, 39.22368164062499], + [46.55, 39.20141601562497], + [46.477148437500006, 39.19819335937504], + [46.42031250000005, 39.207373046875034], + [46.400292968749994, 39.1921875], + [46.40146484375006, 39.16767578125004], + [46.47539062500002, 39.11088867187502], + [46.48984375, 39.069433593750006], + [46.48671875, 38.997460937499994], + [46.490625, 38.90668945312498], + [46.31777343750005, 38.912646484375045], + [46.1701171875001, 38.86904296875002], + [46.1144531250001, 38.877783203125034], + [46.07744140625002, 38.95488281250002], + [46.04589843749997, 39.01752929687498], + [45.9518554687501, 39.178125], + [45.977441406249994, 39.24389648437503], + [45.925, 39.28193359375004], + [45.798632812500074, 39.350195312500006], + [45.76630859375004, 39.37846679687499], + [45.78417968749997, 39.41723632812497], + [45.79648437500006, 39.488134765625034], + [45.78447265625002, 39.54560546875001], + [45.75048828125003, 39.56293945312501], + [45.68740234375005, 39.56406250000006], + [45.610742187499994, 39.5498046875], + [45.456835937500074, 39.494482421875006], + [45.34990234375002, 39.529882812500006], + [45.2882812500001, 39.565576171874994], + [45.252539062500006, 39.59545898437506], + [45.17255859375004, 39.57060546874996], + [45.15283203125003, 39.58266601562502], + [45.14863281250004, 39.65659179687498], + [45.12460937500006, 39.69633789062499], + [45.07646484375002, 39.742822265624966], + [45.03164062500005, 39.76513671874997], + [44.86718750000003, 39.71914062500002], + [44.76826171875004, 39.70351562500005], + [44.733789062499994, 39.746484375], + [44.56044921875005, 39.887597656249966], + [44.39960937500004, 39.995751953124966], + [44.28925781250004, 40.040380859375006], + [44.17802734375002, 40.035742187500034], + [44.00537109375003, 40.01411132812498], + [43.941992187500006, 40.023144531249955], + [43.79169921875004, 40.07026367187498], + [43.66621093750004, 40.12636718750002], + [43.68330078125004, 40.14965820312497], + [43.70986328125005, 40.16650390625003], + [43.678125, 40.239306640625045], + [43.60839843749997, 40.35659179687505], + [43.615820312500006, 40.39331054687497], + [43.59375, 40.44404296875001], + [43.56933593750003, 40.48237304687498], + [43.667871093749994, 40.574072265625034], + [43.71289062499997, 40.64775390625002], + [43.72265624999997, 40.71953124999999], + [43.6964843750001, 40.79414062500001], + [43.63164062500002, 40.929003906250045], + [43.59169921875005, 40.96821289062504], + [43.51748046875005, 41.00483398437504], + [43.45527343750004, 41.06469726562497], + [43.43945312500003, 41.10712890625001], + [43.491992187500074, 41.11552734375002], + [43.64501953124997, 41.11665039062498], + [43.79316406250004, 41.131103515625], + [43.90917968749997, 41.15898437499999], + [44.077246093750006, 41.182519531249994], + [44.14648437500003, 41.20336914062497], + [44.227343750000074, 41.213330078124955], + [44.473046875, 41.191015625000034], + [44.56484375000005, 41.20820312499998], + [44.84140625, 41.21137695312501], + [44.84853515625005, 41.22016601562501], + [44.8109375, 41.248583984375045], + [44.81132812500002, 41.259375], + [44.97587890625002, 41.277490234374966], + [45.001367187499994, 41.29096679687498], + [45.02294921874997, 41.24570312499998], + [45.08476562500002, 41.195458984374966] + ], + [ + [44.969042968750074, 41.027246093749966], + [45.00205078125006, 41.015820312499955], + [45.0236328125001, 41.027246093749966], + [45.02871093750005, 41.053857421874994], + [45.02109375, 41.077978515625006], + [44.9943359375001, 41.085595703124966], + [44.96142578125003, 41.079248046874994], + [44.95888671875005, 41.052636718749994], + [44.969042968750074, 41.027246093749966] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "American Samoa", + "iso_a2": "AS", + "iso_a3": "ASM", + "iso_n3": "016", + "continent": "Oceania" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-170.72626953125, -14.351171875], + [-170.76923828125, -14.359765625], + [-170.8205078125, -14.312109375], + [-170.720849609375, -14.275976562500006], + [-170.68916015625, -14.257421875], + [-170.568115234375, -14.266796875000011], + [-170.640478515625, -14.2822265625], + [-170.72626953125, -14.351171875] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Antarctica", + "iso_a2": "AQ", + "iso_a3": "ATA", + "iso_n3": "010", + "continent": "Antarctica" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-57.020654296874994, -63.372851562500017], + [-57.076708984374989, -63.2625], + [-57.168261718749989, -63.234765625], + [-57.3896484375, -63.226269531250011], + [-57.868066406249994, -63.31875], + [-58.215576171875, -63.451269531250006], + [-58.673535156249997, -63.534375], + [-58.8720703125, -63.551855468750006], + [-59.036425781249989, -63.670312500000023], + [-59.217578124999989, -63.7138671875], + [-59.51015625, -63.820703125000023], + [-59.98984375, -63.909570312500023], + [-60.277246093749994, -63.923925781250006], + [-60.864160156249994, -64.073437500000011], + [-60.922070312499997, -64.10791015625], + [-60.886621093749994, -64.149707031250017], + [-61.082128906249991, -64.314746093750017], + [-61.173583984375, -64.3625], + [-61.395947265624997, -64.427148437500023], + [-61.470019531249989, -64.4755859375], + [-61.50048828125, -64.545605468750011], + [-61.631787109374997, -64.604687500000011], + [-61.756396484374989, -64.60986328125], + [-61.882519531249997, -64.625390625000023], + [-62.1396484375, -64.726757812500011], + [-62.243310546874994, -64.746875], + [-62.338085937499997, -64.729199218750011], + [-62.404248046874997, -64.643261718750011], + [-62.503466796874989, -64.656445312500011], + [-62.576220703124989, -64.755664062500017], + [-62.527539062499997, -64.833398437500023], + [-62.664501953124997, -64.857519531250006], + [-62.774658203125, -64.841699218750023], + [-63.119873046875, -64.942480468750006], + [-63.085693359375, -65.027929687500006], + [-63.032617187499994, -65.079785156250011], + [-63.05908203125, -65.139355468750011], + [-63.178125, -65.126074218750006], + [-63.26416015625, -65.073144531250023], + [-63.482128906249997, -65.0849609375], + [-63.76025390625, -65.033496093750017], + [-63.912402343749989, -65.093066406250017], + [-64.038037109374997, -65.179003906250017], + [-64.071093749999989, -65.278222656250023], + [-64.05126953125, -65.417187500000011], + [-63.908007812499989, -65.467382812500006], + [-63.797949218749991, -65.480371093750023], + [-63.818115234375, -65.531542968750017], + [-63.862207031249994, -65.555957031250017], + [-64.06591796875, -65.5537109375], + [-64.132226562499994, -65.570507812500011], + [-64.179980468749989, -65.617382812500011], + [-64.213476562499991, -65.632910156250006], + [-64.438916015624997, -65.640625], + [-64.416796874999989, -65.679882812500011], + [-64.390039062499994, -65.70849609375], + [-64.435351562499989, -65.768359375000017], + [-64.474609375, -65.780957031250011], + [-64.646582031249991, -65.747851562500017], + [-64.673046875, -65.8140625], + [-64.653222656249994, -65.866894531250011], + [-64.54736328125, -65.9], + [-64.514306640624994, -65.959570312500006], + [-64.613525390625, -66.01904296875], + [-64.7216796875, -65.992773437500006], + [-64.998730468749997, -65.9462890625], + [-65.105078125, -65.957910156250023], + [-65.267480468749994, -65.994238281250006], + [-65.222070312499994, -66.068457031250006], + [-65.172021484374994, -66.116796875], + [-65.316357421874997, -66.139843750000011], + [-65.465087890625, -66.129296875000023], + [-65.617285156249991, -66.13525390625], + [-65.717480468749997, -66.254492187500006], + [-65.774511718749991, -66.287988281250023], + [-65.77578125, -66.342578125000017], + [-65.678466796875, -66.402734375000023], + [-65.71796875, -66.5732421875], + [-65.766406249999989, -66.624902343750023], + [-65.847460937499989, -66.649804687500023], + [-65.953759765624994, -66.645605468750006], + [-66.181884765625, -66.592480468750011], + [-66.306542968749994, -66.591992187500011], + [-66.370898437499989, -66.60888671875], + [-66.503613281249997, -66.689843750000023], + [-66.526806640624997, -66.74072265625], + [-66.464697265624991, -66.875195312500011], + [-66.502099609374994, -66.940136718750011], + [-66.533300781249991, -66.979296875000017], + [-66.51513671875, -67.0625], + [-66.490966796875, -67.1142578125], + [-66.472216796874989, -67.242773437500006], + [-66.498681640624994, -67.2890625], + [-66.551562499999989, -67.262597656250023], + [-66.610009765624994, -67.20859375], + [-66.75732421875, -67.232519531250006], + [-66.836035156249991, -67.282421875000011], + [-66.902148437499989, -67.255957031250006], + [-66.886132812499994, -67.179980468750017], + [-66.928613281249994, -67.1435546875], + [-66.955078125, -66.984765625000023], + [-67.034472656249989, -66.945117187500017], + [-67.16015625, -66.951757812500006], + [-67.299023437499997, -67.07080078125], + [-67.440478515624989, -67.090722656250023], + [-67.493359375, -67.11279296875], + [-67.550390625, -67.269238281250011], + [-67.585791015624991, -67.43515625], + [-67.564746093749989, -67.5029296875], + [-67.54453125, -67.53466796875], + [-67.486914062499991, -67.546972656250006], + [-67.124316406249989, -67.485058593750011], + [-66.923144531249989, -67.491601562500023], + [-66.704980468749994, -67.527148437500017], + [-66.67724609375, -67.560253906250011], + [-66.769873046874991, -67.593359375], + [-66.915380859374991, -67.692578125000011], + [-67.021289062499989, -67.831445312500023], + [-67.106689453125, -67.930078125000023], + [-67.149853515624997, -68.024609375000011], + [-66.977587890624989, -68.146777343750017], + [-66.793359375, -68.240429687500011], + [-66.893505859374997, -68.297656250000017], + [-67.041015625, -68.453125], + [-67.116894531249997, -68.574804687500006], + [-67.054296875, -68.671484375], + [-67.133691406249994, -68.770703125000011], + [-67.299023437499997, -68.770703125000011], + [-67.390527343749994, -68.861230468750023], + [-67.187597656249991, -68.974414062500017], + [-67.021240234375, -69.028710937500023], + [-66.974902343749989, -69.161035156250023], + [-67.110449218749991, -69.248046875], + [-67.304345703124994, -69.317578125000011], + [-67.371777343749997, -69.412304687500011], + [-68.140869140625, -69.347558593750023], + [-68.461523437499991, -69.383984375000011], + [-68.580029296874997, -69.412695312500006], + [-68.707958984374997, -69.432226562500006], + [-68.637548828124991, -69.5263671875], + [-68.469824218749991, -69.643847656250017], + [-68.403662109374991, -69.809179687500006], + [-68.4033203125, -70.019726562500011], + [-68.125683593749997, -70.249902343750023], + [-67.888476562499989, -70.421679687500017], + [-67.692187499999989, -70.686132812500006], + [-67.598388671875, -70.844628906250023], + [-67.504589843749997, -71.057812500000011], + [-67.529931640624994, -71.284570312500023], + [-67.460351562499994, -71.526757812500023], + [-67.195751953124997, -71.718945312500011], + [-67.084130859374994, -71.812207031250011], + [-66.95166015625, -71.897265625000017], + [-66.827734375, -72.090429687500006], + [-67.079541015624997, -72.387597656250023], + [-67.306738281249991, -72.611132812500017], + [-67.667089843749991, -72.834570312500006], + [-68.000341796874991, -72.935546875], + [-68.820947265624994, -73.10546875], + [-69.2822265625, -73.169628906250011], + [-69.968603515624991, -73.226464843750023], + [-70.32265625, -73.274023437500006], + [-71.0171875, -73.262792968750006], + [-71.452734375, -73.3544921875], + [-71.697558593749989, -73.35302734375], + [-71.994189453124989, -73.379199218750017], + [-72.380810546874997, -73.438378906250023], + [-72.687402343749994, -73.452343750000011], + [-72.92919921875, -73.447949218750011], + [-73.996044921874997, -73.699804687500006], + [-74.197314453124989, -73.695507812500011], + [-74.345263671874989, -73.683886718750017], + [-74.594042968749989, -73.715234375000023], + [-74.85546875, -73.658007812500017], + [-75.043554687499991, -73.645117187500006], + [-75.293066406249991, -73.638769531250006], + [-75.595019531249989, -73.711230468750017], + [-75.916210937499997, -73.736425781250006], + [-76.291210937499997, -73.805371093750011], + [-76.754980468749991, -73.789453125000023], + [-76.8875, -73.820507812500011], + [-77.048925781249991, -73.844140625000023], + [-77.134912109374994, -73.817675781250017], + [-77.033007812499989, -73.718457031250011], + [-76.764501953124991, -73.566308593750023], + [-76.850488281249994, -73.46044921875], + [-77.135546874999989, -73.495800781250011], + [-77.444042968749997, -73.487988281250011], + [-77.845605468749994, -73.515039062500023], + [-78.144140625, -73.547070312500011], + [-78.407861328124994, -73.555761718750006], + [-78.786230468749991, -73.506738281250023], + [-78.963720703124991, -73.312402343750023], + [-79.521728515625, -73.089550781250011], + [-79.808007812499994, -73.028125], + [-80.151757812499994, -73.000097656250006], + [-80.442236328124991, -72.944531250000011], + [-80.587744140624991, -72.977636718750006], + [-80.614208984374997, -73.083398437500023], + [-80.438769531249989, -73.225], + [-80.379833984374997, -73.30810546875], + [-80.336376953124997, -73.414160156250006], + [-81.024316406249994, -73.235546875000011], + [-81.176416015624994, -73.248828125000017], + [-81.262402343749997, -73.31494140625], + [-81.235986328124994, -73.473730468750006], + [-81.163183593749991, -73.632421875], + [-81.308740234374994, -73.73828125], + [-81.606103515624994, -73.795703125000017], + [-82.183496093749994, -73.856835937500023], + [-82.815234374999989, -73.732324218750023], + [-83.041894531249994, -73.707226562500011], + [-83.56484375, -73.705957031250023], + [-83.796289062499994, -73.645117187500006], + [-84.214160156249989, -73.57275390625], + [-84.5712890625, -73.556738281250006], + [-84.981201171875, -73.502050781250006], + [-85.260595703124991, -73.413281250000011], + [-85.582177734374994, -73.258984375000011], + [-85.801416015624994, -73.192089843750011], + [-85.980761718749989, -73.20849609375], + [-86.602148437499991, -73.353710937500011], + [-86.791015625, -73.363671875000023], + [-87.037939453124991, -73.353906250000023], + [-87.401025390624994, -73.191992187500006], + [-87.608447265624989, -73.194531250000011], + [-87.936328124999989, -73.240917968750011], + [-88.204980468749994, -73.219531250000017], + [-88.419384765624997, -73.22900390625], + [-88.560742187499997, -73.120703125], + [-88.331738281249997, -72.934375], + [-88.19453125, -72.858593750000011], + [-88.194091796875, -72.7875], + [-88.526904296874989, -72.702343750000011], + [-88.779980468749997, -72.683007812500023], + [-89.127148437499997, -72.693164062500017], + [-89.229394531249994, -72.82578125], + [-89.341259765624997, -72.889550781250023], + [-89.522363281249994, -72.870898437500017], + [-89.817675781249989, -72.862597656250017], + [-90.035205078124989, -72.960156250000011], + [-90.152441406249991, -72.944531250000011], + [-90.29541015625, -72.977929687500023], + [-90.273779296874991, -73.11865234375], + [-90.430908203125, -73.243261718750006], + [-90.920947265624989, -73.319140625000017], + [-91.168652343749997, -73.307031250000023], + [-92.241015624999989, -73.178417968750011], + [-92.828369140625, -73.164648437500006], + [-93.705957031249994, -73.215039062500011], + [-93.984667968749989, -73.28671875], + [-94.246191406249991, -73.31298828125], + [-94.586474609374989, -73.24951171875], + [-95.029589843749989, -73.238964843750011], + [-95.236621093749989, -73.220117187500023], + [-95.529248046874997, -73.241406250000011], + [-95.880566406249997, -73.293847656250023], + [-96.152148437499989, -73.309277343750011], + [-96.394238281249997, -73.301171875000023], + [-96.675830078124989, -73.2685546875], + [-96.955761718749997, -73.206445312500023], + [-97.476464843749994, -73.126269531250017], + [-97.651025390624994, -73.144433593750023], + [-97.818505859374994, -73.101757812500011], + [-98.012402343749997, -73.033203125], + [-98.20859375, -73.022265625000017], + [-99.810742187499997, -72.999902343750023], + [-100.2587890625, -73.041308593750017], + [-100.563574218749991, -73.015527343750023], + [-100.820507812499997, -72.981152343750011], + [-101.331835937499989, -72.995410156250017], + [-101.681201171874989, -73.029882812500006], + [-101.841503906249997, -73.020898437500023], + [-102.028857421874989, -72.998144531250006], + [-102.409277343749991, -72.987402343750006], + [-102.48203125, -72.951171875], + [-102.362939453124994, -72.911425781250017], + [-102.272021484374989, -72.8349609375], + [-102.362890625, -72.760156250000023], + [-102.484765625, -72.735644531250017], + [-102.855859375, -72.716210937500023], + [-103.110107421875, -72.72119140625], + [-103.216601562500003, -72.772070312500006], + [-103.375, -72.81884765625], + [-103.307714843749991, -72.9453125], + [-103.076171875, -73.1845703125], + [-102.908789062499991, -73.28515625], + [-102.675048828125, -73.320898437500006], + [-101.815966796874989, -73.311230468750011], + [-101.57373046875, -73.32958984375], + [-101.189453125, -73.31787109375], + [-100.436376953124991, -73.353125], + [-100.020800781249989, -73.402539062500011], + [-99.527929687499991, -73.4951171875], + [-99.200341796874994, -73.570996093750011], + [-98.896142578124994, -73.611132812500017], + [-99.161914062499989, -73.640820312500011], + [-99.343359375, -73.634179687500023], + [-99.541015625, -73.645117187500006], + [-99.656152343749994, -73.694140625000017], + [-99.781103515624991, -73.720117187500023], + [-100.7177734375, -73.7578125], + [-100.985449218749991, -73.757226562500023], + [-101.130224609374991, -73.73486328125], + [-101.310742187499997, -73.695214843750023], + [-101.58740234375, -73.666796875000017], + [-101.828369140625, -73.655468750000011], + [-102.03662109375, -73.630566406250011], + [-102.41064453125, -73.616406250000011], + [-102.799511718749997, -73.645703125000011], + [-102.862744140624997, -73.783593750000023], + [-102.766455078124991, -73.8837890625], + [-102.440820312499994, -73.92578125], + [-102.105126953124994, -73.957714843750011], + [-101.715429687499991, -74.023730468750017], + [-101.586718749999989, -74.096386718750011], + [-101.3427734375, -74.35009765625], + [-101.251708984375, -74.485742187500023], + [-101.023144531249997, -74.504980468750006], + [-100.8818359375, -74.541113281250006], + [-100.530859375, -74.488867187500006], + [-100.238134765624991, -74.484179687500017], + [-100.118603515624997, -74.515039062500023], + [-100.0126953125, -74.662109375], + [-100.264892578125, -74.822949218750011], + [-100.473339843749997, -74.872363281250017], + [-100.31298828125, -74.914355468750017], + [-100.1640625, -74.937890625000023], + [-99.848583984374997, -74.921679687500017], + [-99.651904296874989, -74.948828125], + [-99.208154296874994, -75.078515625000023], + [-98.727246093749997, -75.140820312500011], + [-98.557861328125, -75.189746093750017], + [-98.645703125, -75.277148437500017], + [-98.75234375, -75.317089843750011], + [-98.980224609375, -75.327441406250017], + [-99.531347656249991, -75.308984375000023], + [-100.082812499999989, -75.370410156250017], + [-100.463427734374989, -75.353417968750023], + [-100.706347656249989, -75.398144531250011], + [-101.039355468749989, -75.421875], + [-101.3037109375, -75.365820312500006], + [-101.627832031249994, -75.221777343750006], + [-101.708105468749991, -75.127343750000023], + [-102.771337890624991, -75.116992187500017], + [-103.121044921874997, -75.09521484375], + [-103.424902343749991, -75.101269531250011], + [-103.901318359374997, -75.152539062500011], + [-104.15966796875, -75.120703125], + [-104.617822265624994, -75.15625], + [-104.90185546875, -75.115136718750023], + [-105.399365234374997, -75.197656250000023], + [-106.618847656249997, -75.343945312500011], + [-106.93212890625, -75.309375], + [-107.266796875, -75.33447265625], + [-107.804736328125003, -75.321582031250017], + [-108.254492187499991, -75.252539062500006], + [-108.822265625, -75.206640625], + [-109.272167968749997, -75.18505859375], + [-109.989990234375, -75.199121093750023], + [-111.104199218749997, -75.190820312500023], + [-111.358789062499994, -75.219921875000011], + [-111.463134765625, -75.133398437500006], + [-110.967578125, -74.951269531250006], + [-110.531933593749997, -74.836328125000023], + [-110.300439453124994, -74.710644531250011], + [-110.229785156250003, -74.536328125000011], + [-110.307080078124997, -74.36669921875], + [-110.533935546875, -74.288867187500017], + [-110.770410156249994, -74.268945312500023], + [-111.019824218750003, -74.23046875], + [-111.18017578125, -74.188085937500006], + [-111.466796875, -74.20078125], + [-111.629980468749991, -74.181445312500017], + [-111.806347656249997, -74.269726562500011], + [-111.722265625, -74.386621093750023], + [-111.695898437499991, -74.504101562500011], + [-111.788720703124994, -74.571679687500023], + [-111.738720703124997, -74.653417968750006], + [-111.584423828124997, -74.750878906250023], + [-111.696240234374997, -74.792187500000011], + [-111.868212890625003, -74.801171875000023], + [-112.170019531249991, -74.832226562500011], + [-113.091503906249997, -74.891699218750006], + [-113.593408203124994, -74.943652343750017], + [-113.752539062499991, -74.9521484375], + [-113.931835937499997, -74.981835937500023], + [-114.110449218749991, -74.981835937500023], + [-114.097216796875003, -74.909082031250023], + [-113.984765625, -74.842968750000011], + [-113.903466796874994, -74.644433593750023], + [-113.783105468749994, -74.6181640625], + [-113.597314453124994, -74.558789062500011], + [-113.332958984374997, -74.454199218750006], + [-113.454248046874994, -74.394238281250011], + [-113.640820312499997, -74.406347656250006], + [-113.753271484374991, -74.36669921875], + [-113.713574218749997, -74.227734375000011], + [-113.574658203124997, -74.207910156250023], + [-113.489404296874994, -74.158398437500011], + [-113.508496093749997, -74.0888671875], + [-114.345947265625, -73.925], + [-114.623730468749997, -73.902929687500006], + [-114.791015625, -73.988574218750017], + [-114.991015625, -74.275], + [-115.105175781249997, -74.455078125], + [-115.222607421874997, -74.487402343750006], + [-116.433007812499994, -74.447070312500017], + [-117.068310546874997, -74.473242187500006], + [-117.806201171874989, -74.402929687500006], + [-118.342041015625, -74.381542968750011], + [-118.65576171875, -74.392773437500011], + [-118.802929687499997, -74.422265625000023], + [-119.022412109374997, -74.517871093750017], + [-119.422216796875006, -74.62158203125], + [-119.677001953125, -74.654589843750017], + [-121.5439453125, -74.75], + [-123.889453124999989, -74.773046875], + [-124.312451171874997, -74.735742187500023], + [-125.353417968749994, -74.714648437500017], + [-126.383984375, -74.742578125000023], + [-127.020214843749997, -74.697851562500006], + [-127.863378906250006, -74.71923828125], + [-128.940625, -74.820214843750023], + [-129.23828125, -74.828906250000017], + [-129.790820312499989, -74.891406250000017], + [-130.195605468749989, -74.890625], + [-130.857470703124989, -74.825976562500017], + [-131.70654296875, -74.810937500000023], + [-132.049365234374989, -74.765722656250006], + [-132.351269531250011, -74.789355468750017], + [-132.991650390625011, -74.80615234375], + [-133.474853515625, -74.851855468750017], + [-133.796337890625011, -74.854589843750006], + [-134.117138671875011, -74.8296875], + [-134.465087890625, -74.776171875000017], + [-134.840380859374989, -74.694140625000017], + [-135.362060546875, -74.6904296875], + [-136.030078124999989, -74.765332031250011], + [-136.227832031249989, -74.836035156250006], + [-136.4619140625, -75.035839843750011], + [-136.549511718750011, -75.139453125000017], + [-136.649853515625011, -75.16171875], + [-137.090136718749989, -75.152636718750017], + [-137.6181640625, -75.075585937500023], + [-139.148828125, -75.16015625], + [-139.691162109375, -75.212792968750023], + [-140.293798828125006, -75.405859375], + [-140.470996093749989, -75.447265625], + [-140.709277343749989, -75.49765625], + [-140.998730468750011, -75.52001953125], + [-141.223339843750011, -75.5458984375], + [-140.874316406249989, -75.745898437500017], + [-141.008984375000011, -75.750781250000017], + [-141.134619140625006, -75.745996093750023], + [-141.505712890625006, -75.6904296875], + [-142.094189453125011, -75.52978515625], + [-142.329833984375, -75.490917968750011], + [-143.022167968750011, -75.54345703125], + [-143.574267578124989, -75.563574218750006], + [-144.220605468749994, -75.7314453125], + [-144.721289062500006, -75.832128906250006], + [-145.105517578124989, -75.87890625], + [-145.987744140625011, -75.888769531250006], + [-146.323486328125, -76.020312500000017], + [-146.383007812500011, -76.099707031250006], + [-145.860400390624989, -76.2666015625], + [-145.642333984375, -76.32568359375], + [-145.442089843750011, -76.4091796875], + [-145.686865234375006, -76.428808593750006], + [-145.8857421875, -76.42431640625], + [-146.597412109375, -76.337792968750023], + [-146.817333984375011, -76.318066406250011], + [-147.860205078125006, -76.130859375], + [-148.3203125, -76.1044921875], + [-148.458984375, -76.117968750000017], + [-148.631787109375011, -76.16796875], + [-148.780371093750006, -76.23828125], + [-148.894824218749989, -76.271777343750017], + [-149.284960937499989, -76.311230468750011], + [-149.654248046875011, -76.365332031250006], + [-149.339648437499989, -76.4189453125], + [-149.045849609375011, -76.4580078125], + [-148.60107421875, -76.493261718750006], + [-147.340429687500006, -76.438378906250023], + [-146.776660156249989, -76.507031250000011], + [-146.166455078125011, -76.657617187500023], + [-145.75048828125, -76.7490234375], + [-145.675683593749994, -76.796679687500017], + [-145.685693359374994, -76.884472656250011], + [-145.629248046875006, -76.953710937500006], + [-145.806347656250011, -77.012109375000023], + [-145.933935546875006, -77.029003906250011], + [-145.966992187500011, -77.06875], + [-145.864306640624989, -77.094140625000023], + [-145.753125, -77.103320312500017], + [-145.563183593750011, -77.16171875], + [-145.515722656250006, -77.19921875], + [-145.634570312499989, -77.221289062500006], + [-145.807958984375006, -77.273242187500017], + [-145.794287109375006, -77.329980468750023], + [-145.713818359375011, -77.33837890625], + [-145.649658203125, -77.398339843750023], + [-145.600634765624989, -77.455273437500011], + [-145.677148437499994, -77.488085937500017], + [-146.073632812499994, -77.486718750000023], + [-146.390625, -77.472460937500017], + [-146.927587890625006, -77.259863281250006], + [-147.207226562500011, -77.285839843750011], + [-147.442285156249994, -77.320703125000023], + [-147.56640625, -77.325292968750006], + [-147.730224609375, -77.309765625000011], + [-148.196337890624989, -77.211328125000023], + [-148.572412109374994, -77.105078125], + [-148.777490234374994, -77.125], + [-148.839013671874994, -77.202343750000011], + [-148.843603515625006, -77.28369140625], + [-148.744384765625, -77.34326171875], + [-148.559277343750011, -77.361328125], + [-148.259814453124989, -77.41259765625], + [-148.155712890625011, -77.462304687500023], + [-148.339941406250006, -77.551171875000023], + [-149.1259765625, -77.642675781250006], + [-149.474023437499994, -77.71484375], + [-149.588476562500006, -77.774218750000017], + [-149.717724609375011, -77.797460937500006], + [-150.084326171875006, -77.77099609375], + [-150.305566406249994, -77.7314453125], + [-150.956396484375006, -77.573535156250017], + [-151.718994140625, -77.425878906250006], + [-151.998388671875006, -77.41259765625], + [-153.076953124999989, -77.442480468750006], + [-153.460595703124994, -77.416015625], + [-153.573046874999989, -77.363085937500017], + [-153.606103515624994, -77.31015625], + [-153.712597656250011, -77.274218750000017], + [-153.909960937499989, -77.226953125000023], + [-154.81494140625, -77.126953125], + [-155.101757812500011, -77.119531250000023], + [-155.358837890625011, -77.13330078125], + [-155.919580078124994, -77.098046875000023], + [-156.211230468749989, -77.105664062500011], + [-156.368212890624989, -77.134765625], + [-156.667675781250011, -77.212988281250006], + [-157.139306640624994, -77.242089843750023], + [-157.465380859374989, -77.23125], + [-157.842041015625, -77.079199218750006], + [-158.003076171874994, -77.091210937500023], + [-158.213574218750011, -77.157128906250023], + [-158.246484375, -77.354296875000017], + [-158.22998046875, -77.49765625], + [-158.351416015625006, -77.61484375], + [-158.500390625, -77.7783203125], + [-158.406933593750011, -77.887792968750006], + [-158.285888671875, -77.95078125], + [-157.848046875, -78.073925781250011], + [-157.266796875000011, -78.199804687500006], + [-156.569238281249994, -78.186132812500006], + [-155.341503906250011, -78.191992187500006], + [-155.03662109375, -78.220800781250006], + [-154.695068359375, -78.216992187500011], + [-154.293017578124989, -78.259082031250017], + [-154.537646484374989, -78.35888671875], + [-154.71640625, -78.398144531250011], + [-155.919775390625006, -78.510351562500006], + [-156.207910156249994, -78.558691406250006], + [-156.469335937500006, -78.635351562500006], + [-156.114550781249989, -78.74462890625], + [-155.209912109375011, -78.96484375], + [-154.517724609374994, -79.046582031250011], + [-153.517578125, -79.117285156250006], + [-152.701367187500011, -79.134863281250006], + [-152.243505859375006, -79.102734375000011], + [-152.1376953125, -79.115917968750011], + [-152.053417968750011, -79.192773437500023], + [-152.09140625, -79.241601562500023], + [-151.903564453125, -79.280566406250017], + [-151.636132812499994, -79.317675781250017], + [-151.368261718750006, -79.393359375000017], + [-151.0484375, -79.459667968750011], + [-150.490625, -79.545605468750011], + [-149.051416015624994, -79.656933593750011], + [-148.41748046875, -79.7314453125], + [-148.176513671875, -79.77587890625], + [-148.082958984375011, -79.856738281250017], + [-148.129296875, -79.90771484375], + [-148.296435546874989, -79.906542968750017], + [-148.433496093749994, -79.929492187500017], + [-148.430273437500006, -79.971289062500006], + [-148.339794921875011, -80.002734375000017], + [-148.317138671875, -80.070996093750011], + [-148.447998046875, -80.090527343750011], + [-148.766064453125011, -80.108105468750011], + [-149.57763671875, -80.10595703125], + [-149.845361328124994, -80.11767578125], + [-150.220703125, -80.15], + [-150.435449218749994, -80.211035156250006], + [-150.575390625000011, -80.353710937500011], + [-150.51611328125, -80.409472656250017], + [-150.281689453125011, -80.48046875], + [-150.132763671875011, -80.510449218750011], + [-149.428613281249994, -80.586230468750017], + [-149.264404296875, -80.593066406250017], + [-149.214062500000011, -80.604199218750011], + [-149.207421875, -80.67041015625], + [-149.147167968750011, -80.718652343750023], + [-148.984179687499989, -80.741503906250017], + [-148.54296875, -80.760058593750017], + [-148.0234375, -80.835742187500017], + [-148.122753906250011, -80.900781250000023], + [-152.034765625, -81.029003906250011], + [-155.921142578125, -81.133398437500006], + [-156.528222656249994, -81.162304687500011], + [-156.815087890624994, -81.23095703125], + [-157.032519531249989, -81.319140625000017], + [-156.492578125, -81.376953125], + [-154.9078125, -81.510351562500006], + [-154.485156249999989, -81.566210937500017], + [-154.232080078124994, -81.623242187500011], + [-153.956640625, -81.7001953125], + [-154.061376953125006, -81.765429687500017], + [-154.1884765625, -81.810546875], + [-154.451464843749989, -81.867578125000023], + [-154.717431640624994, -81.940722656250017], + [-153.882617187499989, -82.176562500000017], + [-153.009863281250006, -82.449609375000023], + [-153.398632812500011, -82.586230468750017], + [-153.822265625, -82.669335937500023], + [-155.150244140625006, -82.8583984375], + [-155.459423828125011, -82.980761718750017], + [-156.037011718749994, -83.02685546875], + [-157.018261718750011, -83.0751953125], + [-157.521875, -83.106640625000011], + [-157.679492187499989, -83.129492187500006], + [-157.589208984375006, -83.187402343750023], + [-157.355810546875006, -83.198437500000011], + [-157.027783203125011, -83.234375], + [-157.428466796875, -83.346386718750011], + [-157.699267578124989, -83.38125], + [-159.444384765624989, -83.543164062500011], + [-159.923535156250011, -83.494726562500006], + [-160.5947265625, -83.489550781250017], + [-162.197265625, -83.518945312500023], + [-162.574169921875011, -83.41064453125], + [-162.912060546875011, -83.347070312500023], + [-163.111083984375, -83.3291015625], + [-163.7333984375, -83.373046875], + [-164.058398437499989, -83.424707031250023], + [-164.445556640625, -83.467675781250023], + [-164.644335937499989, -83.4125], + [-164.915625, -83.2900390625], + [-165.619189453124989, -83.215527343750011], + [-166.216894531250006, -83.20078125], + [-167.724267578124994, -83.217382812500006], + [-168.054736328124989, -83.2265625], + [-168.191015625, -83.213281250000023], + [-168.417675781250011, -83.228808593750017], + [-168.603759765625, -83.201562500000023], + [-168.790136718750006, -83.187890625000023], + [-169.016064453125011, -83.150292968750023], + [-169.440771484375006, -83.095996093750017], + [-171.031298828124989, -82.94296875], + [-171.8212890625, -82.847460937500017], + [-172.124365234375006, -82.862402343750006], + [-172.392041015625011, -82.89306640625], + [-172.592919921874994, -82.884179687500023], + [-172.851513671875011, -82.916796875000017], + [-173.071142578125006, -82.915820312500017], + [-174.2359375, -82.79345703125], + [-174.172021484374994, -82.847753906250006], + [-174.065966796874989, -82.900097656250011], + [-171.539404296875006, -83.203710937500006], + [-171.187841796875006, -83.256445312500006], + [-169.167675781250011, -83.449804687500006], + [-168.785009765625006, -83.529296875], + [-168.497265625000011, -83.611328125], + [-168.347363281250011, -83.636816406250006], + [-168.052734375, -83.735449218750006], + [-167.801220703125011, -83.790820312500017], + [-167.552880859374994, -83.810839843750017], + [-166.649462890624989, -83.7919921875], + [-165.921777343749994, -83.790234375000011], + [-165.536328125000011, -83.756640625000017], + [-164.950878906250011, -83.805859375000011], + [-164.082910156249994, -83.946093750000017], + [-164.011328125, -84.015625], + [-164.123925781249994, -84.053515625000017], + [-164.502539062500006, -84.071582031250017], + [-164.602832031249989, -84.0966796875], + [-164.68505859375, -84.154589843750017], + [-164.5283203125, -84.191015625], + [-164.032128906249994, -84.274023437500006], + [-163.821386718750006, -84.29052734375], + [-163.757617187499989, -84.305468750000017], + [-163.765185546874989, -84.32421875], + [-163.899169921875, -84.352636718750006], + [-165.125146484374994, -84.374609375], + [-165.184814453125, -84.369531250000023], + [-165.240429687500011, -84.38125], + [-165.135351562500006, -84.409863281250011], + [-164.916845703125006, -84.431347656250011], + [-164.114160156249994, -84.445410156250006], + [-163.897021484374989, -84.470410156250011], + [-163.758984375000011, -84.492773437500006], + [-163.685449218749994, -84.513085937500023], + [-163.568505859374994, -84.528710937500023], + [-158.303417968750011, -84.778027343750011], + [-156.986328125, -84.811132812500006], + [-156.620996093749994, -84.839648437500017], + [-156.489648437499994, -84.889257812500006], + [-157.149609375000011, -84.891308593750011], + [-157.453906249999989, -84.912402343750017], + [-156.98828125, -84.982226562500017], + [-156.642773437500011, -85.079394531250017], + [-156.459130859374994, -85.18603515625], + [-156.810302734375, -85.192187500000017], + [-157.127490234374989, -85.185644531250006], + [-160.820898437500006, -84.986621093750017], + [-162.933398437499989, -84.901171875000017], + [-163.463720703125006, -84.90087890625], + [-166.911083984375011, -84.819238281250023], + [-167.4921875, -84.833691406250011], + [-168.048583984375, -84.728613281250006], + [-168.667773437499989, -84.68359375], + [-171.703662109374989, -84.542382812500023], + [-174.663183593750006, -84.462695312500017], + [-174.98671875, -84.465429687500006], + [-175.381005859374994, -84.479785156250017], + [-175.874609375, -84.510351562500006], + [-176.107373046875011, -84.475292968750011], + [-176.289013671875011, -84.418359375000023], + [-176.985546875000011, -84.399316406250023], + [-177.730419921875011, -84.395214843750011], + [-178.069042968750011, -84.352343750000017], + [-178.389501953125006, -84.3375], + [-180.0, -84.3515625], + [-180.0, -85.057519531250023], + [-180.0, -85.763378906250011], + [-180.0, -86.469335937500006], + [-180.0, -87.175195312500023], + [-180.0, -87.881054687500011], + [-180.0, -88.587011718750006], + [-180.0, -89.29296875], + [-180.0, -89.582910156250023], + [-180.0, -89.998925781250023], + [-90.0, -89.998925781250023], + [-1.40625, -89.998925781250023], + [90.0, -89.998925781250023], + [180.0, -89.998925781250023], + [180.0, -84.3515625], + [179.620312500000011, -84.268359375000017], + [179.403027343750011, -84.206152343750006], + [178.944433593750034, -84.181445312500017], + [178.495996093750023, -84.1357421875], + [178.352636718750034, -84.126660156250011], + [178.208593750000034, -84.1298828125], + [177.5810546875, -84.074902343750011], + [175.911230468750034, -83.97314453125], + [175.605761718750045, -83.967578125000017], + [175.322851562500034, -83.940039062500006], + [175.187402343750023, -83.87744140625], + [175.011035156250045, -83.839062500000011], + [173.822363281250034, -83.81015625], + [173.661816406250011, -83.760937500000011], + [173.397265625000045, -83.7587890625], + [172.873925781250023, -83.673144531250017], + [172.450097656250023, -83.675390625], + [171.917187500000011, -83.64404296875], + [171.537109375, -83.581347656250017], + [171.289257812500011, -83.555468750000017], + [171.220703125, -83.475], + [171.035742187500034, -83.448437500000011], + [170.817480468750034, -83.435742187500011], + [170.33203125, -83.478808593750017], + [169.837890625, -83.399023437500006], + [168.110058593750011, -83.362011718750011], + [167.8427734375, -83.316210937500017], + [167.657617187500023, -83.272167968750011], + [167.674414062500034, -83.2314453125], + [167.825390625000011, -83.242968750000017], + [167.973046875000023, -83.2431640625], + [168.240234375, -83.229882812500023], + [168.320019531250011, -83.210742187500017], + [168.408398437500011, -83.155078125000017], + [168.481640625000011, -83.126757812500017], + [168.607324218750023, -83.065332031250023], + [168.275976562500034, -82.987207031250023], + [168.091796875, -82.974707031250006], + [167.827539062500023, -83.03076171875], + [167.601953125000023, -83.047460937500006], + [167.404492187500011, -82.998828125000017], + [167.297460937500034, -82.98583984375], + [167.232617187500011, -82.952343750000011], + [167.271289062500045, -82.87939453125], + [167.116308593750034, -82.80126953125], + [166.956738281250011, -82.7646484375], + [166.7421875, -82.757031250000011], + [166.445898437500034, -82.72216796875], + [165.981640625000011, -82.629687500000017], + [164.980078125000034, -82.384960937500011], + [164.747167968750034, -82.354394531250023], + [164.001367187500023, -82.396777343750017], + [163.2685546875, -82.463281250000023], + [163.174707031250023, -82.518945312500023], + [163.011816406250034, -82.534960937500017], + [162.64375, -82.481542968750006], + [161.283203125, -82.489941406250011], + [161.16650390625, -82.4078125], + [162.426562500000045, -82.314453125], + [163.680078125000023, -82.187304687500017], + [163.602343750000045, -82.12060546875], + [163.004296875000023, -81.968945312500011], + [162.854394531250023, -81.920703125000017], + [162.821191406250023, -81.8662109375], + [162.57666015625, -81.83203125], + [162.42529296875, -81.764941406250017], + [161.99609375, -81.653027343750011], + [161.730175781250011, -81.610449218750006], + [161.582128906250034, -81.609765625000023], + [160.907812500000034, -81.390234375], + [160.469824218750034, -81.340625], + [160.478613281250034, -81.270117187500006], + [160.5400390625, -81.24169921875], + [160.716699218750023, -81.199609375000023], + [160.727929687500023, -81.112890625], + [160.716796875, -80.907421875000011], + [160.607226562500045, -80.901171875000017], + [160.275781250000023, -80.846777343750006], + [160.260156250000023, -80.78671875], + [160.502539062500034, -80.779296875], + [160.720019531250045, -80.753125], + [160.830273437500011, -80.729882812500023], + [160.8232421875, -80.674023437500011], + [160.601367187500045, -80.636523437500017], + [160.521289062500045, -80.583398437500023], + [160.603320312500045, -80.507617187500017], + [160.637304687500034, -80.449902343750011], + [160.542187500000011, -80.425], + [159.065136718750011, -80.442578125000011], + [158.573632812500023, -80.4234375], + [158.560351562500045, -80.348925781250017], + [158.767480468750023, -80.293359375000023], + [160.179394531250011, -80.088085937500011], + [160.381738281250023, -80.054492187500017], + [160.558789062500011, -80.010546875000017], + [160.558007812500023, -79.929589843750023], + [160.387304687500034, -79.879492187500006], + [160.111425781250034, -79.892480468750023], + [159.896484375, -79.858984375], + [159.871875, -79.789843750000017], + [160.264843750000011, -79.736621093750017], + [160.346289062500034, -79.691503906250006], + [160.32275390625, -79.635546875000017], + [160.083593750000034, -79.632519531250011], + [159.975878906250045, -79.585644531250011], + [160.067968750000034, -79.561230468750011], + [160.209179687500011, -79.554394531250011], + [160.646093750000034, -79.426855468750006], + [160.670214843750045, -79.35888671875], + [160.5673828125, -79.30234375], + [160.482714843750045, -79.201464843750017], + [160.87353515625, -79.049707031250023], + [161.190527343750034, -78.978710937500011], + [161.546093750000011, -79.015039062500023], + [161.7373046875, -79.059960937500023], + [161.8642578125, -79.060937500000023], + [161.951464843750045, -79.029980468750011], + [161.951464843750045, -78.96826171875], + [161.813378906250023, -78.907421875000011], + [161.501757812500045, -78.67724609375], + [161.510449218750011, -78.571386718750006], + [161.669238281250045, -78.5361328125], + [161.757421875000034, -78.544921875], + [161.974511718750023, -78.694238281250023], + [162.639453125000045, -78.897753906250017], + [162.895117187500034, -78.844824218750006], + [163.503125, -78.758593750000017], + [163.901757812500023, -78.717089843750017], + [164.300585937500045, -78.630078125000011], + [164.634765625, -78.603222656250011], + [166.116796875000034, -78.571093750000017], + [166.286523437500023, -78.627832031250023], + [166.524609375000011, -78.694921875], + [166.85, -78.679882812500011], + [167.049023437500011, -78.68603515625], + [167.130273437500023, -78.606152343750011], + [167.058007812500023, -78.518457031250023], + [166.801171875000023, -78.521582031250006], + [166.510351562500034, -78.497363281250017], + [166.208593750000034, -78.45166015625], + [165.662988281250023, -78.3056640625], + [165.5341796875, -78.15380859375], + [165.524023437500034, -78.063574218750006], + [165.417578125000034, -78.042187500000011], + [165.274023437500034, -78.128613281250011], + [165.050585937500045, -78.22607421875], + [164.628125, -78.315625], + [164.29736328125, -78.236230468750023], + [163.977636718750034, -78.223828125000011], + [164.107812500000023, -78.146777343750017], + [164.4296875, -78.042187500000011], + [164.491503906250045, -77.954003906250023], + [164.4208984375, -77.883496093750011], + [164.232031250000034, -77.877050781250006], + [164.036425781250045, -77.85302734375], + [164.045214843750045, -77.774609375000011], + [163.766210937500034, -77.699902343750011], + [163.619140625, -77.582324218750017], + [163.607617187500011, -77.387792968750006], + [163.45849609375, -77.269335937500017], + [163.249902343750023, -77.12646484375], + [163.0869140625, -77.032324218750006], + [162.850195312500034, -77.023535156250006], + [162.679101562500023, -77.006738281250023], + [162.450292968750034, -76.955664062500006], + [162.489453125000011, -76.869238281250006], + [162.609570312500011, -76.828710937500006], + [162.762792968750034, -76.745703125], + [162.745214843750034, -76.657519531250017], + [162.674609375000045, -76.5693359375], + [162.824609375000023, -76.463574218750011], + [162.7275390625, -76.225390625000017], + [162.498242187500011, -76.207714843750011], + [162.4365234375, -76.154882812500006], + [162.648242187500045, -76.049023437500011], + [162.7451171875, -75.951953125000017], + [162.815722656250045, -75.84619140625], + [162.754003906250034, -75.793261718750017], + [162.57763671875, -75.758007812500011], + [162.351953125000023, -75.6865234375], + [162.239062500000045, -75.621679687500006], + [162.189648437500011, -75.466894531250006], + [161.903515625000011, -75.404199218750023], + [161.227343750000045, -75.386132812500023], + [161.032910156250011, -75.395898437500023], + [160.910742187500034, -75.334667968750011], + [161.679589843750023, -75.2177734375], + [161.910351562500011, -75.23388671875], + [162.087792968750023, -75.261621093750023], + [162.2255859375, -75.234570312500011], + [162.410058593750023, -75.237597656250017], + [162.533593750000023, -75.167089843750006], + [162.604101562500034, -74.823144531250023], + [162.752050781250034, -74.736132812500017], + [162.961230468750045, -74.656054687500017], + [163.167382812500023, -74.601953125000023], + [163.265527343750023, -74.42626953125], + [163.397851562500023, -74.382128906250017], + [163.556542968750023, -74.417382812500023], + [163.735253906250023, -74.563769531250017], + [163.935839843750045, -74.5673828125], + [164.174023437500011, -74.523242187500017], + [164.410742187500034, -74.533398437500011], + [164.68896484375, -74.568359375], + [164.85302734375, -74.578320312500011], + [165.001171875000011, -74.562695312500011], + [165.302832031250034, -74.59375], + [165.408593750000023, -74.55859375], + [165.399804687500023, -74.479199218750011], + [165.263085937500023, -74.426171875000023], + [165.037207031250034, -74.263476562500017], + [164.775683593750045, -74.028515625000011], + [164.905957031250011, -74.0029296875], + [164.979882812500023, -73.925878906250006], + [164.8876953125, -73.837695312500017], + [164.749609375000034, -73.558789062500011], + [164.81298828125, -73.396777343750017], + [165.0048828125, -73.37451171875], + [165.129492187500034, -73.382617187500017], + [165.244531250000023, -73.571191406250023], + [165.249902343750023, -73.782421875000011], + [165.346972656250045, -73.87939453125], + [165.548925781250034, -73.846093750000023], + [165.733691406250045, -73.86669921875], + [165.913281250000011, -73.822851562500006], + [166.106054687500034, -73.735156250000017], + [165.970605468750023, -73.630761718750023], + [165.860156250000045, -73.592675781250023], + [166.001074218750034, -73.57666015625], + [166.159375, -73.533789062500006], + [166.428808593750034, -73.526953125], + [166.99609375, -73.544335937500023], + [167.296484375000034, -73.440039062500006], + [167.5341796875, -73.447265625], + [167.709082031250034, -73.394238281250011], + [167.615820312500034, -73.336816406250023], + [167.2255859375, -73.275781250000023], + [166.833984375, -73.224316406250011], + [166.466992187500011, -72.997460937500023], + [166.452832031250011, -72.93603515625], + [166.8828125, -73.01123046875], + [167.155664062500023, -73.147265625000017], + [167.85302734375, -73.122460937500023], + [168.204492187500023, -73.129785156250023], + [168.38134765625, -73.06591796875], + [168.735937500000034, -73.091210937500023], + [169.033398437500011, -73.200390625000011], + [169.545019531250034, -73.050390625], + [169.712109375000011, -72.876953125], + [169.844824218750034, -72.794628906250011], + [169.82861328125, -72.728808593750017], + [169.26953125, -72.621289062500011], + [168.820019531250011, -72.552441406250011], + [168.621679687500034, -72.47265625], + [168.428417968750011, -72.383398437500006], + [168.576171875, -72.379101562500011], + [168.718847656250034, -72.384472656250011], + [169.072363281250034, -72.46875], + [169.440332031250023, -72.48681640625], + [169.77490234375, -72.533789062500006], + [170.047753906250023, -72.6005859375], + [170.206445312500023, -72.565332031250023], + [170.285839843750011, -72.477148437500006], + [170.259375, -72.371289062500011], + [170.127148437500011, -72.397753906250017], + [169.953515625000023, -72.40283203125], + [170.030078125000045, -72.115527343750017], + [170.224023437500023, -71.947949218750011], + [170.409277343750034, -71.947949218750011], + [170.675390625000034, -71.968554687500017], + [170.859082031250011, -71.868554687500023], + [170.779687500000023, -71.7451171875], + [170.603320312500045, -71.60400390625], + [170.435742187500011, -71.41875], + [170.27685546875, -71.443945312500006], + [170.25048828125, -71.56875], + [170.162304687500011, -71.63046875], + [169.976953125000023, -71.580664062500006], + [169.663769531250011, -71.511328125], + [168.7978515625, -71.274804687500023], + [168.3828125, -71.197363281250006], + [168.172656250000045, -71.183203125], + [167.96630859375, -71.092480468750011], + [167.878125, -71.013085937500023], + [167.798828125, -70.924902343750006], + [167.640039062500023, -70.854394531250023], + [167.569433593750034, -70.810253906250011], + [167.228808593750045, -70.771289062500017], + [166.626953125, -70.664257812500011], + [166.132031250000011, -70.6328125], + [165.853906250000023, -70.645312500000017], + [165.209375, -70.57080078125], + [164.716015625000011, -70.556542968750023], + [164.403222656250023, -70.510449218750011], + [163.998437500000023, -70.636523437500017], + [163.566503906250034, -70.642285156250011], + [163.348730468750034, -70.620898437500017], + [163.026464843750034, -70.501367187500023], + [162.6748046875, -70.304589843750023], + [162.216015625000011, -70.333984375], + [162.02197265625, -70.439843750000023], + [162.039648437500034, -70.625], + [162.286523437500023, -70.969042968750017], + [162.277734375000023, -71.021875], + [162.189453125, -71.03955078125], + [161.916113281250034, -70.907324218750006], + [161.625097656250034, -70.916113281250006], + [161.424511718750011, -70.826757812500006], + [161.037011718750023, -70.317187500000017], + [160.826757812500034, -70.182031250000023], + [160.65185546875, -70.08056640625], + [160.209667968750011, -69.974902343750017], + [160.125781250000045, -69.840136718750017], + [160.125781250000045, -69.734277343750023], + [159.930957031250045, -69.630566406250011], + [159.783984375000045, -69.521875], + [159.386328125000034, -69.468359375], + [158.647167968750011, -69.320117187500017], + [158.4326171875, -69.299414062500006], + [158.157812500000034, -69.208886718750023], + [157.932519531250023, -69.180761718750006], + [157.775781250000023, -69.2046875], + [157.481347656250023, -69.308691406250006], + [157.04638671875, -69.17626953125], + [156.488671875000023, -69.183007812500023], + [156.010937500000011, -69.077832031250011], + [155.520312500000045, -69.0244140625], + [155.163964843750023, -68.894628906250006], + [154.9875, -68.84130859375], + [154.866015625000045, -68.774316406250023], + [154.576367187500011, -68.63427734375], + [154.19970703125, -68.417871093750023], + [154.031542968750045, -68.349609375], + [153.908007812500045, -68.323144531250023], + [153.78466796875, -68.349609375], + [153.792382812500023, -68.493359375000011], + [153.766992187500023, -68.640625], + [153.705273437500011, -68.728906250000023], + [153.495703125000034, -68.764355468750011], + [153.339941406250034, -68.81796875], + [153.081835937500045, -68.856835937500023], + [152.814160156250011, -68.767675781250006], + [152.545507812500034, -68.729589843750006], + [152.265234375000034, -68.7255859375], + [151.562109375000034, -68.693652343750017], + [151.447558593750045, -68.76416015625], + [151.288769531250011, -68.817089843750011], + [151.138867187500011, -68.76416015625], + [151.12109375, -68.623046875], + [151.068261718750023, -68.384960937500011], + [150.935937500000023, -68.358496093750006], + [150.671972656250034, -68.402929687500006], + [150.342187500000023, -68.435742187500011], + [150.065527343750034, -68.419921875], + [149.716894531250034, -68.417773437500017], + [149.2626953125, -68.431347656250011], + [148.880566406250011, -68.43115234375], + [148.45625, -68.466992187500011], + [147.568554687500011, -68.375097656250006], + [147.353808593750045, -68.38427734375], + [147.093652343750023, -68.36865234375], + [146.797656250000045, -68.273632812500011], + [146.878222656250045, -68.191210937500017], + [146.896582031250034, -68.120312500000011], + [146.852441406250023, -68.041015625], + [146.827832031250011, -67.964648437500017], + [146.2763671875, -67.750878906250023], + [145.975195312500034, -67.624218750000011], + [145.556445312500045, -67.590917968750006], + [145.1279296875, -67.6259765625], + [144.879101562500011, -67.720898437500011], + [144.404296875, -67.794238281250017], + [144.189062500000034, -67.899804687500023], + [143.977343750000045, -67.864550781250017], + [143.941992187500034, -67.794042968750006], + [144.153710937500023, -67.644140625], + [144.259667968750023, -67.478710937500011], + [144.515332031250011, -67.282519531250017], + [144.621191406250034, -67.141406250000017], + [144.550585937500045, -67.035546875000023], + [144.347851562500011, -67.017968750000023], + [144.11767578125, -67.087695312500017], + [143.9111328125, -67.090722656250023], + [143.862695312500023, -66.938574218750006], + [143.730371093750023, -66.876757812500017], + [143.4482421875, -66.876757812500017], + [143.1689453125, -66.948632812500023], + [142.888378906250011, -67.000097656250006], + [142.6875, -67.012792968750006], + [142.32666015625, -66.948339843750006], + [142.158984375000045, -66.873632812500006], + [141.972851562500011, -66.806738281250006], + [141.517187500000034, -66.794042968750006], + [141.285937500000045, -66.831835937500017], + [140.901562500000011, -66.751953125], + [139.900097656250011, -66.715136718750017], + [139.613183593750023, -66.637597656250023], + [139.241601562500023, -66.574023437500017], + [138.37646484375, -66.540429687500023], + [138.27099609375, -66.564453125], + [138.139941406250045, -66.5439453125], + [137.92578125, -66.456933593750023], + [137.753808593750023, -66.406445312500011], + [137.336230468750045, -66.346484375000017], + [136.88916015625, -66.339648437500017], + [136.739648437500023, -66.40771484375], + [136.553320312500034, -66.43896484375], + [136.193945312500034, -66.292187500000011], + [136.009375, -66.266796875000011], + [135.554785156250034, -66.180078125000023], + [135.351953125000023, -66.127148437500011], + [134.971484375000045, -66.330175781250006], + [134.769726562500011, -66.353320312500017], + [134.398144531250011, -66.479882812500023], + [134.289453125000023, -66.476757812500011], + [134.231835937500023, -66.34765625], + [134.178906250000011, -66.277050781250011], + [133.95751953125, -66.204296875000011], + [133.8427734375, -66.153613281250017], + [133.444531250000011, -66.081445312500023], + [133.148242187500045, -66.094824218750006], + [132.874316406250045, -66.178027343750017], + [132.3203125, -66.165429687500023], + [131.830859375000045, -66.23583984375], + [131.232031250000034, -66.215527343750011], + [130.951757812500034, -66.19140625], + [130.578515625000023, -66.20859375], + [130.300585937500045, -66.268457031250023], + [130.120507812500023, -66.29150390625], + [129.975781250000011, -66.344824218750006], + [129.7412109375, -66.468554687500017], + [129.5, -66.7529296875], + [129.236914062500034, -67.041601562500006], + [128.982421875, -67.098242187500006], + [128.81640625, -67.080371093750017], + [128.627832031250023, -67.107128906250011], + [128.430566406250023, -67.119140625], + [127.968066406250045, -67.027929687500006], + [127.541210937500011, -67.051074218750017], + [127.365429687500011, -66.989648437500023], + [126.873632812500034, -66.759375], + [126.664746093750011, -66.49755859375], + [126.423730468750023, -66.46240234375], + [126.0771484375, -66.3955078125], + [125.865625, -66.364453125000011], + [125.60302734375, -66.393359375000017], + [125.39794921875, -66.424414062500006], + [125.286328125000011, -66.515820312500011], + [125.095117187500023, -66.64111328125], + [124.821582031249989, -66.694531250000011], + [124.597851562500011, -66.708203125000011], + [124.370507812500023, -66.652246093750023], + [124.196191406250023, -66.600781250000011], + [123.969335937500034, -66.608105468750011], + [123.666601562500034, -66.676855468750006], + [123.2216796875, -66.7451171875], + [122.633007812500011, -66.804882812500011], + [122.182812500000011, -66.859472656250006], + [122.033105468750023, -66.901757812500023], + [121.613183593750023, -67.057031250000023], + [121.487597656249989, -67.090722656250023], + [120.978710937500011, -67.1357421875], + [120.400390625, -67.236035156250011], + [119.133007812500011, -67.370703125], + [118.921679687499989, -67.319726562500023], + [119.280664062500023, -67.19921875], + [119.953710937500034, -67.075878906250011], + [120.374804687499989, -66.983789062500023], + [120.289257812500011, -66.966601562500017], + [120.187304687499989, -66.966210937500023], + [119.767968750000023, -66.991503906250017], + [119.318261718750023, -67.07080078125], + [118.964648437499989, -67.144824218750017], + [118.7138671875, -67.171679687500017], + [118.518945312500023, -67.160937500000017], + [118.325781250000034, -67.115039062500017], + [118.138671875, -67.082421875000023], + [117.951953124999989, -67.085351562500023], + [117.744726562500034, -67.128515625], + [117.2978515625, -67.109277343750023], + [117.131933593750034, -67.114355468750006], + [116.923632812499989, -67.055468750000017], + [116.713476562500034, -67.047167968750017], + [116.509082031249989, -67.10791015625], + [116.214648437499989, -67.142773437500011], + [115.88525390625, -67.201953125000017], + [115.384179687500023, -67.238085937500017], + [115.171875, -67.307812500000011], + [114.92578125, -67.356542968750006], + [114.657910156250011, -67.387890625000011], + [114.319042968750011, -67.405664062500023], + [114.026562500000011, -67.441210937500017], + [113.9125, -67.36767578125], + [113.9912109375, -67.2119140625], + [114.259765625, -67.172265625000023], + [114.570605468749989, -67.108496093750006], + [115.273730468749989, -67.027929687500006], + [115.44189453125, -66.9580078125], + [115.635351562500034, -66.771191406250011], + [115.310351562499989, -66.560839843750017], + [115.082421875000023, -66.492968750000017], + [114.869531250000023, -66.476953125000023], + [114.618554687500023, -66.467968750000011], + [114.3369140625, -66.360156250000017], + [113.954492187500023, -66.060449218750023], + [113.709765624999989, -65.929589843750023], + [113.502148437500011, -65.886328125], + [113.367968749999989, -65.848730468750006], + [113.099414062499989, -65.799902343750006], + [112.5478515625, -65.847949218750017], + [112.130273437500023, -65.900097656250011], + [111.453125, -65.9609375], + [110.90673828125, -66.07666015625], + [110.587011718750034, -66.312304687500017], + [110.622265625000011, -66.524023437500006], + [110.43701171875, -66.62109375], + [109.82373046875, -66.833691406250011], + [109.462792968750023, -66.90869140625], + [108.910058593750023, -66.861914062500006], + [108.376171875000011, -66.765820312500011], + [108.157910156250011, -66.639062500000023], + [107.99169921875, -66.672070312500011], + [107.785058593750023, -66.6640625], + [107.667285156249989, -66.580371093750017], + [107.565527343750034, -66.55234375], + [107.1708984375, -66.470410156250011], + [106.386914062500011, -66.41064453125], + [105.000390625000023, -66.1640625], + [104.6669921875, -66.136816406250006], + [104.2890625, -66.039160156250006], + [103.951171875, -65.988085937500017], + [103.763476562499989, -65.98974609375], + [103.638769531250034, -65.998925781250023], + [103.166601562500034, -65.916894531250023], + [102.674218750000023, -65.865136718750023], + [102.392187500000034, -65.9326171875], + [102.174121093749989, -65.954199218750006], + [101.474414062499989, -65.951171875], + [101.38134765625, -65.973046875000023], + [101.320898437500034, -66.020898437500023], + [101.3271484375, -66.100488281250023], + [100.889062500000023, -66.358007812500006], + [100.591210937500023, -66.425195312500023], + [100.211718749999989, -66.473925781250017], + [99.824316406250034, -66.548632812500017], + [99.3701171875, -66.648242187500017], + [98.85888671875, -66.670800781250023], + [98.720117187500023, -66.553125], + [98.603125, -66.534765625], + [98.461718749999989, -66.49853515625], + [98.257617187499989, -66.467480468750011], + [97.719824218750034, -66.607324218750023], + [97.388476562499989, -66.57861328125], + [97.1005859375, -66.499414062500023], + [96.788867187499989, -66.550585937500017], + [96.423730468750023, -66.599609375], + [95.991406250000011, -66.621191406250006], + [95.541015625, -66.630957031250006], + [95.247949218750023, -66.571191406250023], + [95.083984375, -66.527441406250006], + [94.83984375, -66.501367187500023], + [94.586816406250023, -66.543554687500006], + [94.3134765625, -66.647167968750011], + [94.088769531250023, -66.688867187500023], + [93.964257812500023, -66.689648437500011], + [93.7216796875, -66.642968750000023], + [93.358007812500034, -66.58544921875], + [93.074902343750011, -66.571093750000017], + [92.730566406250034, -66.624414062500023], + [92.591992187500011, -66.614453125000011], + [92.48583984375, -66.604296875000017], + [92.312304687499989, -66.55859375], + [92.073437500000011, -66.507910156250006], + [91.777050781250011, -66.5375], + [91.546093750000011, -66.572070312500017], + [91.021679687500011, -66.602832031250017], + [90.547265625000023, -66.734277343750023], + [90.29296875, -66.769628906250006], + [89.698437500000011, -66.823046875000017], + [89.351757812500011, -66.818164062500017], + [89.076562500000023, -66.799414062500006], + [88.789453125000023, -66.7919921875], + [88.314160156250011, -66.817480468750006], + [87.980273437499989, -66.788476562500023], + [87.084863281250023, -66.940136718750011], + [86.946582031249989, -66.985546875000011], + [86.750195312500011, -67.037109375], + [86.118359375000011, -67.054980468750017], + [85.710742187499989, -67.161328125000011], + [85.429003906249989, -67.160937500000017], + [85.116796875000034, -67.125585937500006], + [84.748339843749989, -67.102246093750011], + [84.485156249999989, -67.114453125000011], + [84.160742187500034, -67.244140625], + [83.903710937500023, -67.2919921875], + [83.49365234375, -67.441210937500017], + [83.304296875000034, -67.60302734375], + [83.157812500000034, -67.610546875000011], + [82.607031250000034, -67.613085937500017], + [82.273242187499989, -67.691699218750017], + [82.016992187500023, -67.690039062500006], + [81.187402343750023, -67.83125], + [80.363085937499989, -67.946875], + [79.287792968750011, -68.119335937500011], + [79.03515625, -68.175390625], + [78.726269531250011, -68.27783203125], + [78.5634765625, -68.39375], + [78.488964843750011, -68.625781250000017], + [78.228515625, -68.756152343750017], + [78.01513671875, -68.891894531250017], + [77.817480468750034, -69.068945312500006], + [77.540917968750023, -69.174414062500006], + [77.191992187500034, -69.205957031250023], + [76.770117187500034, -69.339648437500017], + [76.359765625000023, -69.490234375], + [76.111718750000023, -69.487402343750006], + [75.891210937500006, -69.575585937500023], + [75.820703125000023, -69.725488281250023], + [75.635546875000017, -69.848925781250017], + [75.423828125, -69.89306640625], + [75.147851562500023, -69.85546875], + [74.571093750000017, -69.879589843750011], + [74.226757812500011, -69.800390625], + [73.942187500000017, -69.7431640625], + [73.676074218750017, -69.82578125], + [73.324804687500006, -69.848925781250017], + [73.041406250000023, -70.009667968750023], + [72.822070312500017, -70.095898437500011], + [72.744335937500011, -70.239160156250023], + [72.760351562500006, -70.395703125000011], + [72.622363281250017, -70.472070312500023], + [72.41796875, -70.5986328125], + [72.262597656250023, -70.65673828125], + [71.904882812500006, -70.706640625], + [71.771386718750023, -70.80126953125], + [71.633886718750006, -70.94921875], + [71.46484375, -71.154589843750017], + [71.378808593750023, -71.309179687500006], + [71.34921875, -71.513867187500011], + [71.276757812500023, -71.623925781250023], + [71.167871093750023, -71.671582031250011], + [71.078808593750011, -71.736718750000023], + [70.731640625000011, -71.822265625], + [70.6162109375, -71.842089843750017], + [70.572851562500006, -71.930957031250017], + [70.294335937500023, -72.055371093750011], + [69.962109375000011, -72.132910156250006], + [69.769726562500011, -72.253613281250011], + [69.5546875, -72.37451171875], + [69.309472656250023, -72.408789062500006], + [69.157031250000017, -72.418652343750011], + [68.419824218750023, -72.515039062500023], + [68.106835937500023, -72.650683593750017], + [67.971386718750011, -72.750585937500006], + [68.015527343750023, -72.918164062500011], + [67.971386718750011, -73.085644531250011], + [67.748632812500006, -73.168164062500011], + [67.322070312500017, -73.30029296875], + [67.003125, -73.236425781250006], + [66.764746093750006, -73.216894531250006], + [66.569140625000017, -73.209179687500011], + [66.49765625, -73.12548828125], + [66.746484375000023, -72.999804687500017], + [66.89208984375, -72.948632812500023], + [67.113378906250006, -72.64111328125], + [67.21484375, -72.46142578125], + [67.281054687500017, -72.290625], + [67.432226562500006, -72.0029296875], + [67.693554687500011, -71.736718750000023], + [67.873339843750017, -71.579785156250011], + [68.037402343750017, -71.391015625000023], + [68.310546875, -71.286523437500023], + [68.447558593750017, -71.2515625], + [68.623730468750011, -71.181445312500017], + [68.767968750000023, -71.090722656250023], + [68.872753906250011, -71.03515625], + [69.188378906250023, -70.70458984375], + [69.196679687500023, -70.585253906250017], + [69.250195312500011, -70.431054687500023], + [69.162011718750023, -70.333984375], + [69.020898437500023, -70.3251953125], + [68.757421875, -70.369921875000017], + [68.559375, -70.4125], + [67.940820312500023, -70.4228515625], + [67.658984375000017, -70.325976562500017], + [67.267968750000023, -70.273144531250011], + [67.416601562500006, -70.177148437500023], + [67.575390625000011, -70.087890625], + [67.9169921875, -69.952734375], + [68.027148437500017, -69.894433593750023], + [68.178125, -69.837304687500023], + [68.415234375000011, -69.902148437500017], + [68.74375, -69.92138671875], + [68.920507812500006, -69.911816406250011], + [69.082617187500006, -69.866601562500023], + [69.162011718750023, -69.769628906250006], + [69.1884765625, -69.654882812500006], + [69.135546875000017, -69.577929687500017], + [68.959179687500011, -69.540234375000011], + [68.879785156250023, -69.4697265625], + [68.90625, -69.372753906250011], + [69.06494140625, -69.33740234375], + [69.371875, -69.331445312500023], + [69.549414062500006, -69.29375], + [69.629492187500006, -69.231640625000011], + [69.614648437500023, -69.153710937500023], + [69.53076171875, -69.024023437500006], + [69.645605468750006, -68.932226562500006], + [69.546875, -68.856640625000011], + [69.5341796875, -68.736914062500006], + [69.761914062500011, -68.598535156250023], + [69.927929687500011, -68.535351562500011], + [69.982226562500017, -68.464257812500023], + [69.907421875000011, -68.379492187500006], + [69.788671875, -68.279492187500011], + [69.704492187500023, -68.160839843750011], + [69.60302734375, -68.041015625], + [69.655957031250011, -67.864550781250017], + [69.559179687500006, -67.76318359375], + [69.416406250000023, -67.742968750000017], + [69.167187500000011, -67.824804687500006], + [68.899511718750006, -67.862109375000017], + [68.327929687500017, -67.889550781250023], + [68.098535156250023, -67.854101562500006], + [67.50244140625, -67.81015625], + [67.1748046875, -67.767968750000023], + [66.488378906250006, -67.765527343750023], + [65.70751953125, -67.71640625], + [64.573632812500023, -67.620410156250017], + [63.93125, -67.526074218750011], + [63.699023437500017, -67.50830078125], + [63.237597656250017, -67.52685546875], + [63.017675781250006, -67.561816406250017], + [62.687890625000023, -67.647558593750006], + [62.173925781250006, -67.575488281250017], + [61.30908203125, -67.540234375000011], + [61.012109375000023, -67.49951171875], + [60.48203125, -67.385156250000023], + [59.867578125000023, -67.403125], + [59.650195312500017, -67.45859375], + [59.250781250000017, -67.484960937500006], + [58.737402343750006, -67.229589843750006], + [58.317480468750006, -67.1630859375], + [58.026757812500023, -67.103417968750023], + [57.828125, -67.041308593750017], + [57.62744140625, -67.014062500000023], + [57.361132812500017, -67.052636718750023], + [56.8916015625, -67.05625], + [56.760058593750017, -67.073339843750006], + [56.562109375, -67.115917968750011], + [56.365917968750011, -67.2125], + [56.154882812500006, -67.264550781250023], + [55.802734375, -67.199316406250006], + [56.391406250000017, -66.973828125000011], + [56.479687500000011, -66.859179687500017], + [56.453222656250006, -66.77978515625], + [56.291894531250023, -66.721093750000023], + [56.145898437500023, -66.626074218750006], + [56.29453125, -66.603417968750023], + [56.510058593750017, -66.659277343750006], + [56.823632812500023, -66.712695312500017], + [56.986523437500011, -66.704394531250017], + [57.185449218750023, -66.61328125], + [57.000292968750017, -66.474804687500011], + [56.859375, -66.4234375], + [56.361523437500011, -66.372753906250011], + [55.974023437500023, -66.209375], + [55.710351562500023, -66.079980468750023], + [55.504492187500006, -66.002636718750011], + [55.290429687500023, -65.954199218750006], + [54.947851562500006, -65.916308593750017], + [53.671777343750023, -65.858691406250017], + [52.955273437500011, -65.945507812500011], + [52.378222656250017, -65.969140625000023], + [51.884570312500017, -66.02001953125], + [51.6875, -66.072167968750023], + [50.936914062500023, -66.3154296875], + [50.588281250000023, -66.3564453125], + [50.332421875000023, -66.444628906250017], + [50.244335937500011, -66.603417968750023], + [50.306054687500023, -66.753320312500023], + [50.520898437500023, -66.820019531250011], + [50.508886718750006, -66.938574218750006], + [50.60595703125, -67.150195312500017], + [50.553027343750017, -67.1943359375], + [50.29296875, -67.172167968750017], + [50.006152343750017, -67.175195312500023], + [49.488671875000023, -67.030957031250011], + [49.2470703125, -66.941601562500011], + [48.830273437500011, -66.938281250000017], + [48.465234375000023, -67.04345703125], + [48.598437500000017, -67.171289062500023], + [48.713671875000017, -67.216894531250006], + [48.923046875000011, -67.19970703125], + [49.219335937500006, -67.226855468750017], + [49.052929687500011, -67.352441406250023], + [48.63037109375, -67.520605468750006], + [48.620019531250023, -67.625195312500011], + [48.648046875, -67.794042968750006], + [48.550976562500011, -67.926367187500006], + [48.37451171875, -67.988085937500017], + [48.321679687500023, -67.91748046875], + [48.321679687500023, -67.785253906250006], + [48.2099609375, -67.699316406250006], + [47.95859375, -67.660058593750023], + [47.703515625000023, -67.716210937500023], + [47.48984375, -67.727929687500023], + [47.314160156250011, -67.664941406250023], + [47.1171875, -67.572656250000023], + [47.231347656250023, -67.46826171875], + [47.402929687500006, -67.4091796875], + [47.3515625, -67.361914062500006], + [47.154394531250006, -67.357226562500017], + [46.883886718750006, -67.274804687500023], + [46.559667968750006, -67.268164062500006], + [46.4541015625, -67.303613281250023], + [46.317285156250023, -67.401953125], + [46.319726562500023, -67.4765625], + [46.4365234375, -67.533398437500011], + [46.399023437500006, -67.617578125000023], + [46.15390625, -67.657031250000017], + [45.8876953125, -67.659765625], + [45.5693359375, -67.736425781250006], + [45.196972656250011, -67.731152343750011], + [44.989550781250017, -67.769238281250011], + [44.699804687500006, -67.904296875], + [44.372851562500017, -67.961328125000023], + [44.177539062500017, -67.972460937500017], + [43.554101562500023, -68.045605468750011], + [43.1708984375, -68.059765625000011], + [42.9609375, -68.0953125], + [42.819531250000011, -68.123242187500011], + [42.408789062500006, -68.351855468750017], + [41.824609375000023, -68.4326171875], + [41.356347656250023, -68.514941406250017], + [41.132714843750023, -68.575097656250023], + [40.817089843750011, -68.7236328125], + [40.48388671875, -68.738867187500006], + [40.215625, -68.804882812500011], + [40.041699218750011, -68.867773437500006], + [39.863867187500006, -68.966992187500011], + [39.762304687500006, -69.17333984375], + [39.705078125, -69.425585937500017], + [39.487011718750011, -69.608007812500006], + [39.211328125000023, -69.785937500000017], + [39.01875, -69.924218750000023], + [38.859277343750023, -70.006054687500011], + [38.91171875, -70.097851562500011], + [38.885546875000017, -70.171875], + [38.499414062500023, -70.05615234375], + [38.144335937500017, -69.82421875], + [37.787109375, -69.725683593750006], + [37.559765625000011, -69.718359375], + [37.37451171875, -69.747851562500017], + [37.11484375, -69.810449218750023], + [36.855761718750017, -69.7255859375], + [36.71875, -69.652246093750023], + [36.5859375, -69.637890625000011], + [36.331152343750006, -69.639355468750011], + [36.017773437500011, -69.661816406250011], + [35.567675781250017, -69.660058593750023], + [35.35703125, -69.681347656250011], + [35.224804687500011, -69.637304687500006], + [35.13134765625, -69.486914062500006], + [34.74951171875, -69.167675781250011], + [34.595898437500011, -69.094531250000017], + [34.05859375, -69.110546875000011], + [33.813671875000011, -69.099316406250011], + [33.772070312500006, -69.02001953125], + [33.884863281250006, -68.979296875000017], + [34.07421875, -68.885351562500006], + [34.219335937500006, -68.790625], + [34.19287109375, -68.702441406250017], + [33.853515625, -68.683007812500023], + [33.465625, -68.670703125000017], + [33.121484375000023, -68.689160156250011], + [32.776171875000017, -68.783105468750023], + [32.6416015625, -68.868945312500017], + [32.567578125000011, -69.07421875], + [32.737988281250011, -69.2548828125], + [32.903125, -69.378710937500017], + [32.975976562500023, -69.516992187500023], + [32.989355468750006, -69.624218750000011], + [32.911523437500023, -69.733691406250017], + [32.809765625000011, -69.909375], + [32.621289062500011, -70.000585937500006], + [32.45654296875, -70.025976562500006], + [32.159570312500023, -70.099804687500011], + [31.378808593750023, -70.225781250000011], + [31.062890625000023, -70.224707031250006], + [30.834082031250006, -70.246289062500011], + [30.003320312500023, -70.3], + [29.4638671875, -70.40625], + [28.911523437500023, -70.583105468750006], + [28.386425781250011, -70.682031250000023], + [27.69775390625, -70.7724609375], + [27.508593750000017, -70.813281250000017], + [27.206835937500017, -70.910937500000017], + [26.91796875, -70.953710937500006], + [26.75439453125, -70.96728515625], + [26.498828125000017, -71.01953125], + [25.97412109375, -71.037402343750017], + [25.650195312500017, -70.990625], + [25.187402343750023, -70.970996093750017], + [24.756738281250023, -70.89208984375], + [24.58837890625, -70.820410156250006], + [24.3857421875, -70.704394531250017], + [24.3857421875, -70.536914062500017], + [24.235742187500023, -70.448632812500023], + [24.024121093750011, -70.413378906250017], + [23.803613281250023, -70.404589843750017], + [23.664843750000017, -70.575], + [23.406835937500006, -70.723242187500006], + [23.14990234375, -70.796289062500023], + [22.97900390625, -70.810351562500017], + [22.445410156250006, -70.73974609375], + [22.27783203125, -70.695605468750017], + [22.233691406250017, -70.642675781250006], + [22.396484375, -70.561328125000017], + [22.366015625000017, -70.47509765625], + [22.2158203125, -70.417285156250017], + [21.962304687500023, -70.300390625], + [21.848925781250017, -70.276757812500023], + [21.704980468750023, -70.258496093750011], + [21.337304687500023, -70.4951171875], + [21.18603515625, -70.680566406250023], + [21.07080078125, -70.843457031250011], + [20.128125, -70.917578125], + [19.944238281250023, -70.91015625], + [19.65185546875, -70.920605468750011], + [19.409277343750006, -70.9169921875], + [19.26513671875, -70.90234375], + [19.152929687500006, -70.820898437500006], + [19.026562500000011, -70.674023437500011], + [19.13232421875, -70.491894531250011], + [19.196386718750006, -70.293164062500011], + [19.009375, -70.212109375000011], + [18.877246093750017, -70.201367187500011], + [18.627343750000023, -70.269433593750023], + [18.4326171875, -70.289941406250023], + [18.351367187500017, -70.41552734375], + [18.23203125, -70.518261718750011], + [18.124609375, -70.540332031250017], + [17.166699218750011, -70.450878906250011], + [16.709179687500011, -70.397265625000017], + [16.584863281250023, -70.203808593750011], + [16.381054687500011, -70.145117187500006], + [16.025195312500017, -70.193457031250006], + [15.806933593750017, -70.324023437500017], + [15.562890625000023, -70.330761718750011], + [15.063867187500023, -70.294726562500017], + [14.491796875, -70.299609375000017], + [13.822656250000023, -70.343164062500023], + [13.532617187500023, -70.2875], + [13.297949218750006, -70.229589843750006], + [13.065625, -70.053613281250023], + [12.626269531250017, -70.065625], + [12.595117187500023, -70.117382812500011], + [12.723437500000017, -70.143652343750006], + [12.864550781250017, -70.162304687500011], + [12.929394531250011, -70.21337890625], + [12.681933593750017, -70.308691406250006], + [12.461621093750011, -70.3701171875], + [12.308789062500011, -70.443261718750023], + [12.06796875, -70.616503906250017], + [11.83359375, -70.736523437500011], + [11.701269531250006, -70.7666015625], + [11.203515625000023, -70.728710937500011], + [10.968847656250006, -70.687695312500011], + [10.217675781250023, -70.507910156250006], + [9.885546875000017, -70.402929687500006], + [9.613476562500011, -70.26904296875], + [9.1416015625, -70.183691406250006], + [8.817480468750006, -70.390820312500011], + [8.523046875, -70.473828125000011], + [8.306738281250006, -70.461621093750011], + [7.6767578125, -70.356347656250023], + [7.401171875000017, -70.494433593750017], + [6.950976562500017, -70.535253906250006], + [6.508007812500011, -70.58642578125], + [5.643945312500023, -70.636328125], + [5.113085937500017, -70.655664062500023], + [3.506933593750006, -70.844433593750011], + [2.609472656250006, -70.900097656250011], + [1.90869140625, -71.003613281250011], + [1.55224609375, -71.080273437500011], + [0.8349609375, -71.202343750000011], + [0.538476562500023, -71.274218750000017], + [0.154199218750023, -71.39794921875], + [-0.1845703125, -71.558886718750017], + [-0.326953124999989, -71.641894531250017], + [-0.543164062499983, -71.712695312500017], + [-0.759863281249977, -71.630273437500023], + [-0.840087890625, -71.539746093750011], + [-0.895849609374977, -71.34921875], + [-1.067773437499994, -71.265625], + [-1.216357421874989, -71.2841796875], + [-1.354248046875, -71.386816406250006], + [-1.500634765624994, -71.412304687500011], + [-2.014599609374983, -71.433398437500017], + [-2.261328124999977, -71.357128906250011], + [-2.610253906249994, -71.32080078125], + [-2.81201171875, -71.320996093750011], + [-3.239648437499994, -71.360449218750006], + [-3.713183593749989, -71.374609375], + [-3.994824218749983, -71.3388671875], + [-4.253222656249989, -71.338476562500006], + [-4.450146484374983, -71.327734375], + [-5.950048828124977, -71.341601562500017], + [-6.117480468749989, -71.325976562500017], + [-6.126757812499989, -71.265625], + [-6.080273437499983, -71.154101562500017], + [-5.90380859375, -71.051855468750006], + [-5.708691406249983, -70.96826171875], + [-5.587890625, -70.856738281250017], + [-5.694726562499994, -70.745312500000011], + [-5.936328124999989, -70.712695312500017], + [-6.245214843749977, -70.755761718750023], + [-6.547509765624994, -70.81689453125], + [-6.838183593749989, -70.844531250000017], + [-7.031591796874977, -70.835156250000011], + [-7.388134765624983, -70.786914062500017], + [-7.619775390624994, -70.829003906250023], + [-7.752734374999989, -70.8427734375], + [-7.854931640624983, -70.884570312500017], + [-7.873486328124983, -70.940332031250023], + [-7.756884765624989, -71.0171875], + [-7.617968749999989, -71.121484375000023], + [-7.590136718749989, -71.223730468750006], + [-7.668994140624989, -71.324316406250006], + [-7.713720703124977, -71.546484375], + [-7.915820312499989, -71.635351562500006], + [-8.216455078124994, -71.647070312500006], + [-8.497705078124994, -71.6748046875], + [-8.646484375, -71.672753906250023], + [-8.965917968749977, -71.361328125], + [-9.230664062499983, -71.174023437500011], + [-9.40234375, -71.117578125000023], + [-9.599365234375, -71.0953125], + [-9.887988281249989, -71.02734375], + [-10.098730468749977, -70.926367187500006], + [-10.270605468749977, -70.935742187500011], + [-10.359960937499977, -70.982421875], + [-10.331005859374983, -71.024023437500006], + [-10.122314453125, -71.060937500000023], + [-10.033496093749989, -71.130664062500017], + [-10.230566406249977, -71.200976562500017], + [-10.406640625, -71.250292968750017], + [-10.520068359374989, -71.295507812500006], + [-10.659472656249989, -71.442675781250017], + [-10.825439453125, -71.553320312500006], + [-10.969824218749977, -71.56005859375], + [-11.16015625, -71.481152343750011], + [-11.328076171874983, -71.439746093750017], + [-11.663037109374983, -71.33125], + [-11.926123046874977, -71.288671875], + [-12.073681640624983, -71.296875], + [-12.207812499999989, -71.332226562500011], + [-12.351318359375, -71.389746093750006], + [-12.284521484374977, -71.4951171875], + [-12.148193359375, -71.613671875000023], + [-11.696875, -71.719335937500006], + [-11.333056640624989, -71.785546875000023], + [-11.179345703124994, -71.77685546875], + [-11.009228515624983, -71.757910156250006], + [-10.961035156249977, -71.822363281250006], + [-10.958105468749977, -71.901953125], + [-11.121386718749989, -72.031542968750017], + [-11.346484374999989, -72.281640625000023], + [-11.496972656249994, -72.412890625000017], + [-11.77734375, -72.444042968750011], + [-12.0947265625, -72.498144531250006], + [-12.746923828124977, -72.62890625], + [-13.208593749999977, -72.785058593750023], + [-13.602832031249989, -72.792089843750006], + [-13.93896484375, -72.75625], + [-14.297753906249994, -72.733007812500006], + [-14.298242187499994, -72.784570312500023], + [-14.168310546874977, -72.84326171875], + [-14.000097656249977, -73.000585937500006], + [-14.164697265624994, -73.102441406250023], + [-14.320996093749983, -73.123046875], + [-15.007031249999983, -73.047460937500006], + [-15.595996093749989, -73.096777343750006], + [-15.802832031249977, -73.152148437500017], + [-16.149023437499977, -73.33447265625], + [-16.279101562499989, -73.388476562500017], + [-16.435205078124994, -73.425683593750023], + [-16.507031249999983, -73.555957031250017], + [-16.518847656249989, -73.64404296875], + [-16.387744140624989, -73.681347656250011], + [-16.097460937499989, -73.709082031250006], + [-15.935644531249977, -73.757617187500017], + [-16.003125, -73.81591796875], + [-16.180859374999983, -73.830273437500011], + [-16.281884765624994, -73.866992187500017], + [-16.220117187499994, -73.915722656250011], + [-15.748828124999989, -73.945605468750017], + [-15.259619140624977, -73.888867187500011], + [-14.611425781249977, -73.851757812500011], + [-14.573828124999977, -73.9375], + [-14.658935546875, -73.988867187500006], + [-15.089160156249989, -74.163281250000011], + [-15.289746093749983, -74.280859375], + [-15.53125, -74.375585937500006], + [-15.672509765624994, -74.407324218750006], + [-16.429541015624977, -74.323925781250011], + [-16.727099609374989, -74.32763671875], + [-16.9892578125, -74.31982421875], + [-17.299023437499983, -74.333886718750023], + [-17.435839843749989, -74.379101562500011], + [-17.922753906249994, -74.69921875], + [-18.068261718749994, -74.862988281250011], + [-18.22119140625, -74.974511718750023], + [-18.516943359374977, -75.051953125000011], + [-18.617285156249977, -75.115332031250006], + [-18.749218749999983, -75.242089843750023], + [-18.617285156249977, -75.342382812500006], + [-18.516943359374977, -75.389941406250017], + [-18.415136718749977, -75.396484375], + [-18.304589843749994, -75.431347656250011], + [-18.585156249999983, -75.462597656250011], + [-18.850927734374977, -75.47021484375], + [-19.493017578124977, -75.539941406250023], + [-20.4875, -75.491992187500017], + [-20.783300781249977, -75.593945312500011], + [-20.989013671875, -75.634375], + [-21.433789062499983, -75.68310546875], + [-21.948095703124977, -75.694140625000017], + [-22.465478515624994, -75.661035156250023], + [-23.197265625, -75.717675781250023], + [-24.269580078124989, -75.766992187500023], + [-26.059326171875, -75.957226562500011], + [-26.56005859375, -76.0546875], + [-27.134521484375, -76.157324218750006], + [-27.653076171875, -76.226367187500017], + [-28.079394531249989, -76.2578125], + [-28.933642578124989, -76.370312500000011], + [-29.891552734374983, -76.597949218750017], + [-30.221972656249989, -76.660351562500011], + [-30.489208984374983, -76.762304687500006], + [-31.67578125, -77.033105468750023], + [-32.063378906249994, -77.159863281250011], + [-32.4052734375, -77.13623046875], + [-32.614062499999989, -77.140820312500011], + [-33.376757812499989, -77.281640625000023], + [-33.591162109375006, -77.311230468750011], + [-34.07578125, -77.425390625], + [-34.290185546874994, -77.521875], + [-34.551464843749983, -77.728515625], + [-34.808349609375, -77.820605468750017], + [-35.087597656249983, -77.837109375000011], + [-35.50927734375, -78.041210937500011], + [-36.180859374999983, -78.468359375], + [-36.265625, -78.615527343750017], + [-36.239160156249994, -78.774218750000017], + [-35.890087890624983, -78.843554687500017], + [-35.515966796875006, -78.933007812500023], + [-34.994921874999989, -78.9775390625], + [-34.197363281250006, -79.110253906250023], + [-32.994238281250006, -79.228808593750017], + [-32.541845703125006, -79.22216796875], + [-31.412792968749983, -79.145214843750011], + [-30.985156249999989, -79.1279296875], + [-30.645263671875, -79.124121093750006], + [-30.31591796875, -79.1630859375], + [-30.177929687499983, -79.304296875], + [-30.211230468749989, -79.485253906250023], + [-30.049072265625, -79.585351562500023], + [-29.949316406250006, -79.599023437500023], + [-25.258642578124977, -79.7625], + [-24.67041015625, -79.774609375000011], + [-24.533886718749983, -79.757910156250006], + [-24.299853515624989, -79.770800781250017], + [-24.08828125, -79.814843750000023], + [-23.406835937499977, -79.858984375], + [-23.574462890625, -79.96484375], + [-24.019824218749989, -80.008984375000011], + [-24.240283203124989, -80.061914062500023], + [-29.3291015625, -80.172070312500011], + [-29.531494140625, -80.181835937500011], + [-29.79736328125, -80.223339843750011], + [-30.42529296875, -80.279687500000023], + [-31.015429687499989, -80.30810546875], + [-31.312109375, -80.450097656250023], + [-31.634228515624983, -80.444628906250017], + [-32.255712890625006, -80.460742187500017], + [-32.706201171874994, -80.513867187500011], + [-33.057226562500006, -80.531640625000023], + [-33.191308593749994, -80.518652343750006], + [-33.328710937500006, -80.540429687500023], + [-34.349951171875006, -80.603417968750023], + [-35.327001953125006, -80.650683593750017], + [-35.520556640624989, -80.745703125], + [-35.77587890625, -80.812695312500011], + [-35.965771484374983, -80.890917968750017], + [-36.233984375, -80.920507812500006], + [-36.49951171875, -80.959570312500006], + [-36.812402343749994, -80.974707031250006], + [-37.209277343749989, -81.063867187500023], + [-38.010937499999983, -80.954296875000011], + [-38.771728515625, -80.88232421875], + [-39.762304687500006, -81.032031250000017], + [-40.440820312499994, -81.165136718750006], + [-40.91455078125, -81.17236328125], + [-41.125878906249994, -81.21484375], + [-41.433837890625, -81.297753906250023], + [-41.711572265624994, -81.40771484375], + [-42.046289062499994, -81.597851562500011], + [-42.564550781250006, -81.761621093750023], + [-43.180371093749983, -82.0171875], + [-43.669335937499994, -82.270117187500006], + [-44.064208984375, -82.331445312500023], + [-44.291796874999989, -82.317773437500023], + [-44.454882812499989, -82.365917968750011], + [-45.04375, -82.43798828125], + [-45.78857421875, -82.494921875000017], + [-46.17529296875, -82.511621093750023], + [-46.516748046874994, -82.45458984375], + [-46.448339843750006, -82.33984375], + [-46.198535156249989, -82.27109375], + [-46.04638671875, -82.15869140625], + [-46.119140625, -82.03955078125], + [-46.258056640625, -81.946972656250011], + [-46.566699218749989, -81.979199218750011], + [-47.019873046875006, -82.003222656250017], + [-47.360253906249994, -82.004003906250006], + [-47.886816406250006, -81.925195312500023], + [-48.360791015624983, -81.892285156250011], + [-50.029248046874983, -81.967675781250023], + [-50.653027343749983, -81.975488281250023], + [-51.209667968749983, -82.015234375], + [-51.730664062499983, -82.0615234375], + [-52.414941406249994, -82.134863281250006], + [-52.798876953124989, -82.153613281250017], + [-53.3390625, -82.14453125], + [-53.557568359374997, -82.16943359375], + [-53.739599609374991, -82.178417968750011], + [-53.986083984375, -82.200585937500023], + [-54.601123046874989, -82.316210937500017], + [-55.294677734375, -82.46484375], + [-55.800683593749994, -82.478417968750023], + [-56.075048828124991, -82.570214843750023], + [-56.31787109375, -82.633398437500006], + [-57.353613281249991, -82.840234375000023], + [-57.55712890625, -82.890234375], + [-57.797753906249994, -82.95859375], + [-58.289941406249994, -83.120703125], + [-59.516015625, -83.458398437500023], + [-59.853808593749989, -83.4423828125], + [-60.397021484374989, -83.440722656250017], + [-60.983203124999989, -83.427539062500017], + [-61.42529296875, -83.395605468750006], + [-61.58984375, -83.341210937500023], + [-61.530566406249989, -83.279394531250006], + [-61.436328124999989, -83.232421875], + [-61.30322265625, -83.184179687500006], + [-61.200390625, -83.097949218750017], + [-61.218408203124994, -82.991796875], + [-61.312841796874991, -82.939160156250011], + [-61.708935546874997, -83.009960937500011], + [-61.9169921875, -82.976660156250006], + [-62.128613281249997, -82.822363281250006], + [-62.465576171875, -82.718164062500023], + [-62.630908203124989, -82.620703125], + [-62.735644531249989, -82.52734375], + [-62.553027343749989, -82.503320312500023], + [-62.094531249999989, -82.466601562500017], + [-60.817187499999989, -82.275781250000023], + [-60.527734375, -82.199902343750011], + [-60.687109375, -82.188574218750006], + [-60.859082031249997, -82.186718750000011], + [-61.901660156249989, -82.27109375], + [-62.645312499999989, -82.263085937500023], + [-63.46630859375, -82.306835937500011], + [-63.772851562499994, -82.304296875], + [-64.396582031249991, -82.374414062500023], + [-64.919580078124994, -82.370507812500023], + [-65.170117187499997, -82.318261718750023], + [-65.424414062499991, -82.280371093750006], + [-65.571923828124994, -82.294335937500023], + [-65.713964843749991, -82.279199218750023], + [-65.913183593749991, -82.183203125], + [-65.78662109375, -82.045507812500006], + [-65.843847656249991, -81.993261718750006], + [-65.953027343749994, -81.970996093750017], + [-66.133837890624989, -81.953417968750017], + [-66.042285156249989, -81.913867187500017], + [-65.916210937499997, -81.902246093750023], + [-64.706152343749991, -81.8875], + [-64.137109375, -81.869335937500011], + [-64.190185546875, -81.794824218750023], + [-64.810546875, -81.802734375], + [-65.263769531249991, -81.78564453125], + [-65.486621093749989, -81.775], + [-65.619726562499991, -81.729296875000017], + [-65.021582031249991, -81.696484375000011], + [-64.696093749999989, -81.65234375], + [-64.475683593749991, -81.671679687500017], + [-64.232666015625, -81.659765625], + [-63.768652343749991, -81.676074218750017], + [-63.553955078125, -81.667187500000011], + [-62.945898437499991, -81.683984375000023], + [-62.541845703124991, -81.678320312500006], + [-62.165380859374991, -81.636132812500023], + [-62.353710937499997, -81.57666015625], + [-62.490234375, -81.556738281250006], + [-63.477734375, -81.55322265625], + [-64.750146484374994, -81.521679687500011], + [-65.573681640624997, -81.460546875], + [-67.965429687499991, -81.148242187500017], + [-68.14375, -81.13037109375], + [-68.284619140624997, -81.073828125], + [-68.3265625, -81.004101562500011], + [-68.58984375, -80.967968750000011], + [-69.181591796874997, -81.0048828125], + [-69.633984375, -80.9658203125], + [-69.772265624999989, -80.961523437500006], + [-70.012451171875, -80.917773437500017], + [-70.239111328124991, -80.856640625000011], + [-70.392431640624991, -80.735449218750006], + [-70.56005859375, -80.646582031250006], + [-70.687890625, -80.626269531250017], + [-71.017675781249991, -80.619042968750023], + [-71.230664062499997, -80.646777343750017], + [-71.380029296874994, -80.682226562500006], + [-72.173583984375, -80.763867187500011], + [-72.55322265625, -80.853125], + [-73.029492187499997, -80.917285156250017], + [-73.383349609374989, -80.893652343750006], + [-73.937841796874991, -80.81591796875], + [-74.511132812499994, -80.837988281250006], + [-74.806591796874997, -80.886523437500017], + [-75.075585937499994, -80.860058593750011], + [-75.236523437499997, -80.802636718750023], + [-75.344580078124991, -80.718945312500011], + [-75.49453125, -80.617480468750017], + [-75.555029296874991, -80.530859375], + [-75.709033203124989, -80.382714843750023], + [-75.822412109374994, -80.338183593750017], + [-75.985644531249989, -80.295019531250006], + [-76.259619140624991, -80.160058593750023], + [-76.407324218749991, -80.094921875000011], + [-76.757128906249989, -80.13125], + [-77.160449218749989, -80.152929687500006], + [-78.176074218749989, -80.166796875000017], + [-78.907128906249994, -80.089648437500017], + [-79.660400390625, -79.996875], + [-78.692236328124991, -79.995410156250017], + [-77.701855468749997, -80.009570312500017], + [-77.222265625, -79.994140625], + [-76.904003906249997, -79.955273437500011], + [-76.557861328125, -79.903515625000011], + [-76.343945312499997, -79.820898437500006], + [-76.031591796874991, -79.627050781250006], + [-76.105126953124994, -79.465136718750017], + [-76.217675781249994, -79.38720703125], + [-76.499121093749991, -79.32568359375], + [-79.455664062499991, -79.304394531250011], + [-80.151171874999989, -79.26806640625], + [-80.415771484375, -79.29453125], + [-80.488525390625, -79.320996093750011], + [-80.478759765625, -79.426171875000023], + [-80.534814453124994, -79.512792968750006], + [-80.704785156249997, -79.5171875], + [-80.891992187499994, -79.501855468750023], + [-81.163183593749991, -79.400390625], + [-81.22216796875, -79.2978515625], + [-81.5029296875, -79.162890625000017], + [-81.660888671875, -79.099804687500011], + [-82.589208984374991, -78.916308593750017], + [-82.970751953124989, -78.816699218750017], + [-83.260009765625, -78.774218750000017], + [-83.595166015624997, -78.611035156250011], + [-83.696630859374991, -78.537304687500011], + [-83.762744140624989, -78.461132812500011], + [-83.705908203124991, -78.404101562500017], + [-83.54443359375, -78.355273437500017], + [-83.35498046875, -78.407617187500023], + [-83.226953125, -78.401562500000011], + [-83.245898437499989, -78.35703125], + [-83.508251953124997, -78.248046875], + [-83.687744140625, -78.148046875], + [-83.752099609374994, -78.066308593750023], + [-83.779003906249997, -77.983593750000011], + [-83.412060546874997, -78.114648437500023], + [-83.08251953125, -78.246679687500006], + [-82.608447265624989, -78.412402343750017], + [-81.929296875, -78.55908203125], + [-80.816308593749994, -78.754296875000023], + [-80.292285156249989, -78.82275390625], + [-79.766552734374997, -78.820703125000023], + [-78.711621093749997, -78.752050781250006], + [-77.869140625, -78.745507812500023], + [-77.545019531249991, -78.659570312500023], + [-77.452441406249989, -78.560351562500017], + [-77.432568359374997, -78.434667968750006], + [-77.664794921875, -78.401464843750006], + [-77.858105468749997, -78.350976562500023], + [-79.509667968749994, -78.154296875], + [-81.441015625, -77.885644531250023], + [-81.580957031249994, -77.846093750000023], + [-81.103125, -77.841796875], + [-80.888525390624991, -77.797656250000017], + [-80.6015625, -77.751953125], + [-80.104101562499991, -77.796582031250011], + [-79.679003906249989, -77.842578125000017], + [-77.742138671874997, -77.940332031250023], + [-76.437841796874991, -78.044140625000011], + [-75.3984375, -78.1578125], + [-74.812060546874989, -78.177832031250006], + [-74.042138671874994, -78.109375], + [-73.485009765624994, -77.970800781250006], + [-73.2515625, -77.894238281250011], + [-72.875146484374994, -77.69384765625], + [-72.851953125, -77.590234375000023], + [-73.478222656249997, -77.535546875000023], + [-74.580615234374989, -77.47802734375], + [-75.386914062499997, -77.47421875], + [-75.748144531249991, -77.3984375], + [-75.937255859375, -77.33447265625], + [-76.248583984374989, -77.27490234375], + [-76.823583984374991, -76.993457031250017], + [-77.16796875, -76.833886718750023], + [-77.287060546874997, -76.70166015625], + [-77.190039062499991, -76.629785156250023], + [-76.244189453124989, -76.585351562500023], + [-75.962841796874997, -76.592089843750017], + [-75.831347656249989, -76.608203125000017], + [-75.659277343749991, -76.608203125000017], + [-75.443505859374994, -76.586718750000017], + [-75.268359374999989, -76.581445312500023], + [-73.879785156249994, -76.69677734375], + [-73.471777343749991, -76.675488281250011], + [-72.722314453124994, -76.6890625], + [-71.798681640624991, -76.752734375000017], + [-70.89501953125, -76.739355468750006], + [-70.55078125, -76.718066406250017], + [-70.21015625, -76.674121093750017], + [-70.095507812499989, -76.654492187500011], + [-69.915283203125, -76.52197265625], + [-69.304394531249997, -76.350781250000011], + [-67.518212890624994, -76.109765625000023], + [-66.370410156249989, -76.013378906250011], + [-65.965673828124991, -75.95166015625], + [-65.321728515624997, -75.815136718750011], + [-65.044384765624997, -75.7875], + [-64.778271484374997, -75.738183593750023], + [-64.052636718749994, -75.57958984375], + [-63.363378906249991, -75.451464843750017], + [-63.257519531249997, -75.398535156250006], + [-63.303808593749991, -75.352246093750011], + [-63.474853515625, -75.336328125000023], + [-63.678417968749997, -75.327929687500017], + [-63.972460937499989, -75.329394531250017], + [-64.279541015625, -75.292871093750023], + [-63.857519531249991, -75.206152343750006], + [-63.551416015624994, -75.171484375], + [-63.231054687499991, -75.15380859375], + [-63.173193359374991, -75.11474609375], + [-63.3369140625, -75.034765625], + [-63.570996093749997, -75.0302734375], + [-63.924707031249994, -75.004492187500006], + [-63.750878906249994, -74.952343750000011], + [-63.558789062499997, -74.905664062500023], + [-63.35703125, -74.878320312500023], + [-63.197998046875, -74.909082031250023], + [-63.125244140625, -74.849511718750023], + [-63.167919921874997, -74.764550781250023], + [-63.178125, -74.684179687500006], + [-63.072314453124989, -74.677539062500017], + [-62.887109375, -74.690820312500023], + [-62.70849609375, -74.737109375000017], + [-62.566796875, -74.895800781250017], + [-62.372460937499994, -74.9521484375], + [-62.137792968749991, -74.926367187500006], + [-61.928027343749989, -74.86279296875], + [-61.855224609375, -74.776757812500023], + [-61.894433593749994, -74.713085937500011], + [-62.132714843749994, -74.55], + [-62.225683593749991, -74.505566406250011], + [-62.235302734374997, -74.441308593750023], + [-62.0888671875, -74.452832031250011], + [-61.99453125, -74.475781250000011], + [-61.639990234374991, -74.513574218750023], + [-61.370166015624989, -74.511816406250006], + [-61.010791015624989, -74.478320312500017], + [-60.838476562499991, -74.372949218750023], + [-60.704296875, -74.30712890625], + [-60.78369140625, -74.241015625000017], + [-61.12060546875, -74.306933593750017], + [-61.331787109375, -74.32861328125], + [-61.8427734375, -74.289648437500006], + [-61.71826171875, -74.228125], + [-61.57080078125, -74.194726562500023], + [-61.226855468749989, -74.207910156250023], + [-61.041650390624994, -74.121972656250023], + [-61.160693359374989, -74.055761718750006], + [-61.319433593749991, -74.035937500000017], + [-61.838232421874991, -74.032031250000017], + [-61.741601562499994, -73.996191406250006], + [-61.691699218749989, -73.923828125], + [-61.54541015625, -73.89599609375], + [-61.404052734375, -73.89599609375], + [-61.203417968749989, -73.956640625], + [-61.08828125, -73.929492187500017], + [-60.902734375, -73.87060546875], + [-60.790283203125, -73.711816406250023], + [-60.878857421874997, -73.612011718750011], + [-61.079785156249997, -73.538671875], + [-61.40546875, -73.467089843750017], + [-61.636962890625, -73.500195312500011], + [-61.737695312499994, -73.37548828125], + [-61.78759765625, -73.2548828125], + [-61.914746093749997, -73.215722656250023], + [-62.00830078125, -73.147656250000011], + [-61.726416015624991, -73.160742187500006], + [-61.428417968749997, -73.19140625], + [-61.242089843749994, -73.250292968750017], + [-61.081347656249989, -73.328222656250006], + [-60.895849609374991, -73.320410156250006], + [-60.686621093749991, -73.27099609375], + [-60.560693359374994, -73.21142578125], + [-60.403759765624997, -73.240234375], + [-60.122216796874994, -73.275292968750023], + [-60.016406249999989, -73.189257812500017], + [-59.956835937499989, -73.030566406250017], + [-60.009765625, -72.937890625000023], + [-60.148681640625, -72.937890625000023], + [-60.254492187499991, -73.017285156250011], + [-60.384667968749994, -73.00732421875], + [-60.532324218749991, -72.832128906250006], + [-60.532324218749991, -72.67333984375], + [-60.72412109375, -72.646875], + [-60.939160156249997, -72.69970703125], + [-61.2861328125, -72.600781250000011], + [-61.27978515625, -72.46826171875], + [-61.047509765624994, -72.470507812500017], + [-60.730322265624991, -72.425976562500011], + [-60.664599609374989, -72.3625], + [-60.691064453124994, -72.269824218750017], + [-60.704296875, -72.144140625], + [-60.719433593749997, -72.072656250000023], + [-60.833203125, -72.051562500000017], + [-60.951757812499991, -72.050195312500023], + [-61.107470703124989, -72.091503906250011], + [-61.310253906249997, -72.112695312500023], + [-61.49267578125, -72.072656250000023], + [-61.628027343749991, -72.052734375], + [-61.89404296875, -72.070996093750011], + [-62.256640624999989, -72.017578125], + [-61.938916015624997, -71.903613281250017], + [-61.64453125, -71.862890625], + [-61.035058593749994, -71.820019531250011], + [-60.949023437499989, -71.747265625000011], + [-60.9953125, -71.661328125000011], + [-61.081347656249989, -71.588574218750011], + [-61.213574218749997, -71.5640625], + [-61.562792968749989, -71.67529296875], + [-61.725439453124991, -71.672558593750011], + [-61.958789062499989, -71.6578125], + [-61.909570312499994, -71.630859375], + [-61.78955078125, -71.616015625000017], + [-61.515917968749989, -71.479101562500006], + [-61.369287109374994, -71.452343750000011], + [-61.2373046875, -71.400585937500011], + [-61.1484375, -71.341894531250006], + [-61.003076171874994, -71.3193359375], + [-60.962255859374991, -71.24462890625], + [-61.017236328124994, -71.166894531250023], + [-61.251660156249997, -71.002246093750017], + [-61.312841796874991, -70.867578125000023], + [-61.513378906249997, -70.851171875], + [-61.7021484375, -70.856738281250017], + [-61.961083984374994, -70.900585937500011], + [-62.040429687499994, -70.801367187500006], + [-61.994140625, -70.728613281250006], + [-61.808935546874991, -70.708789062500017], + [-61.696484375, -70.67578125], + [-61.605322265624991, -70.61669921875], + [-61.49140625, -70.569921875], + [-61.504687499999989, -70.490527343750017], + [-62.000781249999989, -70.497167968750006], + [-62.232275390624991, -70.424414062500006], + [-62.377783203124991, -70.36484375], + [-62.331494140624997, -70.27890625], + [-62.217871093749991, -70.233203125000017], + [-62.013964843749989, -70.27890625], + [-61.934619140624989, -70.199511718750017], + [-61.961083984374994, -70.1201171875], + [-62.202441406249989, -70.027929687500006], + [-62.407128906249994, -69.827246093750006], + [-62.450537109374991, -69.584375], + [-62.586816406249994, -69.477246093750011], + [-62.839746093749994, -69.371875], + [-62.994091796874997, -69.328906250000017], + [-63.094384765624994, -69.253027343750006], + [-63.301464843749997, -69.141015625000023], + [-63.455957031249994, -69.041894531250023], + [-63.478222656249997, -68.951171875], + [-63.343505859375, -68.810449218750023], + [-63.442724609374991, -68.76416015625], + [-63.747021484374997, -68.70458984375], + [-63.7734375, -68.6318359375], + [-63.707324218749989, -68.592187500000023], + [-63.347509765624991, -68.499414062500023], + [-63.11474609375, -68.470605468750023], + [-62.9796875, -68.486328125], + [-62.933300781249997, -68.442578125000011], + [-63.056542968749994, -68.420703125000017], + [-63.216601562499989, -68.418847656250023], + [-63.796484375, -68.4697265625], + [-63.924462890624994, -68.49765625], + [-64.169238281249989, -68.58251953125], + [-64.156835937499991, -68.686914062500023], + [-64.078466796874991, -68.771191406250011], + [-64.42890625, -68.74609375], + [-64.898291015624991, -68.67333984375], + [-65.158349609374994, -68.617968750000017], + [-65.241601562499994, -68.583203125000011], + [-65.140087890624997, -68.4892578125], + [-65.054541015624991, -68.449316406250006], + [-64.996484375, -68.4078125], + [-65.089746093749994, -68.370214843750006], + [-65.331396484374991, -68.364160156250023], + [-65.452001953124991, -68.336718750000017], + [-65.365185546874997, -68.2875], + [-64.895947265624997, -68.168359375000023], + [-64.829492187499994, -68.12744140625], + [-64.853466796874997, -68.083105468750006], + [-64.884716796874997, -68.056347656250011], + [-64.958837890624991, -68.067578125000011], + [-65.218017578125, -68.140039062500023], + [-65.3875, -68.150390625], + [-65.546240234374991, -68.146679687500011], + [-65.639501953124991, -68.130566406250011], + [-65.551171875, -68.04833984375], + [-65.469433593749997, -68.009472656250011], + [-65.52783203125, -67.929980468750017], + [-65.600048828124997, -67.875683593750011], + [-65.589257812499994, -67.816308593750023], + [-65.574023437499989, -67.788378906250017], + [-65.418066406249991, -67.659570312500023], + [-65.44677734375, -67.610156250000017], + [-65.470800781249991, -67.587890625], + [-65.50390625, -67.528222656250023], + [-65.5234375, -67.444628906250017], + [-65.503125, -67.377246093750017], + [-65.443115234375, -67.326171875], + [-65.35009765625, -67.310937500000023], + [-65.24853515625, -67.341992187500011], + [-65.07958984375, -67.335351562500023], + [-64.819287109374997, -67.307324218750011], + [-64.826464843749989, -67.269140625], + [-64.858251953124991, -67.242773437500006], + [-65.026904296874989, -67.214062500000011], + [-64.950878906249997, -67.183203125], + [-64.838720703124991, -67.156054687500017], + [-64.785498046874991, -67.123730468750011], + [-64.854101562499991, -67.104785156250017], + [-64.878125, -67.024511718750006], + [-64.793359375, -66.971972656250017], + [-64.735449218749991, -66.894140625], + [-64.686279296875, -66.80625], + [-64.60693359375, -66.799609375000017], + [-64.554003906249989, -66.851757812500011], + [-64.400976562499991, -66.853320312500017], + [-64.042578125, -66.92724609375], + [-63.839599609375, -66.912011718750023], + [-63.754736328124991, -66.872949218750023], + [-63.76904296875, -66.80322265625], + [-63.808789062499997, -66.760937500000011], + [-64.077734375, -66.654101562500017], + [-64.015039062499994, -66.606640625000011], + [-63.96435546875, -66.588769531250023], + [-63.880419921874989, -66.505957031250006], + [-63.755664062499989, -66.408984375000017], + [-63.654394531249991, -66.382910156250006], + [-63.687548828124989, -66.31982421875], + [-63.752539062499991, -66.277734375000023], + [-63.586621093749997, -66.24169921875], + [-63.448535156249989, -66.24375], + [-63.257519531249997, -66.263769531250006], + [-63.179541015624991, -66.3525390625], + [-62.996728515624994, -66.452832031250011], + [-62.704785156249997, -66.680078125000023], + [-62.62890625, -66.706152343750006], + [-62.536523437499994, -66.70703125], + [-62.543164062499997, -66.620996093750023], + [-62.655078124999989, -66.556054687500023], + [-62.637548828124991, -66.511132812500023], + [-62.617919921875, -66.489648437500023], + [-62.615380859374994, -66.435742187500011], + [-62.650292968749994, -66.363671875000023], + [-62.754833984374997, -66.31015625], + [-62.68203125, -66.2373046875], + [-62.582812499999989, -66.217480468750011], + [-62.494140625, -66.219335937500006], + [-62.241259765624989, -66.197070312500017], + [-62.116503906249989, -66.208984375], + [-61.875439453124997, -66.296093750000011], + [-61.841992187499997, -66.402734375000023], + [-61.756005859374994, -66.42919921875], + [-61.696484375, -66.343164062500023], + [-61.675634765624991, -66.24951171875], + [-61.526123046875, -66.225683593750006], + [-61.431933593749989, -66.144726562500011], + [-61.29296875, -66.16455078125], + [-61.149755859374991, -66.211718750000017], + [-61.13427734375, -66.290234375000011], + [-61.028417968749991, -66.336523437500006], + [-60.942431640624989, -66.263769531250006], + [-60.902734375, -66.191015625], + [-61.00927734375, -66.110546875000011], + [-60.955664062499991, -66.071972656250011], + [-60.8564453125, -66.065332031250023], + [-60.743994140624991, -66.105078125], + [-60.624902343749994, -66.032324218750006], + [-60.565380859374997, -65.979394531250023], + [-60.618310546874994, -65.93310546875], + [-60.81298828125, -65.93408203125], + [-60.912792968749997, -65.9208984375], + [-60.988134765624991, -65.940234375000017], + [-61.039257812499997, -65.991992187500017], + [-61.137597656249994, -65.988671875000023], + [-61.198144531249994, -65.974511718750023], + [-61.26611328125, -65.97998046875], + [-61.359130859375, -66.058789062500011], + [-61.57470703125, -66.071484375000011], + [-61.624804687499989, -66.0947265625], + [-61.8390625, -66.119531250000023], + [-62.005029296874994, -66.112890625], + [-62.169140625, -66.031347656250006], + [-62.293261718749989, -65.916406250000023], + [-62.305029296874991, -65.840429687500006], + [-62.222412109375, -65.775], + [-62.150585937499997, -65.698828125], + [-61.99140625, -65.589160156250017], + [-61.756005859374994, -65.569238281250023], + [-61.795703124999989, -65.52294921875], + [-61.903369140624989, -65.513476562500017], + [-62.053662109374997, -65.456835937500017], + [-62.145312499999989, -65.331738281250011], + [-62.084667968749997, -65.273242187500017], + [-62.024511718749991, -65.232519531250006], + [-61.947851562499991, -65.192285156250023], + [-61.855615234374994, -65.2353515625], + [-61.663427734374991, -65.238574218750017], + [-61.577441406249989, -65.185644531250006], + [-61.736181640624991, -65.033496093750017], + [-61.703125, -64.987207031250023], + [-61.603222656249997, -64.98779296875], + [-61.503027343749991, -64.999707031250011], + [-61.439453125, -65.017675781250006], + [-61.331835937499989, -65.023828125000023], + [-61.059863281249989, -64.98125], + [-60.915380859374991, -64.906835937500006], + [-60.659960937499989, -64.729199218750011], + [-60.555957031249989, -64.676562500000017], + [-60.393652343749991, -64.609375], + [-60.340527343749997, -64.550585937500017], + [-60.242480468749989, -64.546875], + [-59.963085937499997, -64.431347656250011], + [-59.850195312499991, -64.43359375], + [-59.765039062499994, -64.451367187500011], + [-59.734375, -64.558886718750017], + [-59.64599609375, -64.583691406250011], + [-59.573193359374997, -64.53076171875], + [-59.612158203124991, -64.440136718750011], + [-59.546777343749994, -64.358789062500023], + [-59.460742187499989, -64.345605468750023], + [-59.369677734374989, -64.403515625000011], + [-59.229394531249994, -64.443554687500011], + [-59.050683593749994, -64.451367187500011], + [-58.891894531249989, -64.537402343750017], + [-58.786083984374997, -64.524218750000017], + [-58.805908203125, -64.44482421875], + [-58.895458984374997, -64.388867187500011], + [-58.905126953124991, -64.352148437500006], + [-58.819140624999989, -64.338964843750006], + [-58.79931640625, -64.292675781250011], + [-58.922998046874994, -64.279296875], + [-58.977246093749997, -64.265917968750017], + [-59.047314453124997, -64.234472656250006], + [-59.005322265624997, -64.194921875], + [-58.838964843749991, -64.186816406250017], + [-58.722851562499997, -64.077441406250017], + [-58.531884765624994, -63.915429687500023], + [-58.262988281249989, -63.763378906250011], + [-57.856738281249989, -63.656835937500006], + [-57.736914062499991, -63.616601562500023], + [-57.581494140624997, -63.546582031250011], + [-57.460644531249997, -63.513574218749994], + [-57.283886718749997, -63.490625], + [-57.152246093749994, -63.479101562500006], + [-57.097705078124989, -63.523535156250006], + [-57.152246093749994, -63.571679687499994], + [-57.119189453124989, -63.637792968750006], + [-56.973681640624989, -63.624609375], + [-56.834765624999989, -63.63125], + [-56.781835937499991, -63.571679687499994], + [-56.92734375, -63.505566406250011], + [-57.020654296874994, -63.372851562500017] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 5, + "name": "Ashmore and Cartier Is.", + "iso_a2": "-99", + "iso_a3": "-99", + "iso_n3": "036", + "continent": "Oceania" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [123.59453124999999, -12.425683593750009], + [123.59521484375, -12.4359375], + [123.57314453125002, -12.434179687500006], + [123.57246093750001, -12.423925781250006], + [123.59453124999999, -12.425683593750009] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "Fr. S. Antarctic Lands", + "iso_a2": "TF", + "iso_a3": "ATF", + "iso_n3": "260", + "continent": "Seven seas (open ocean)" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [69.2824218750001, -49.05888671875002], + [69.22060546875, -49.06679687500003], + [69.20156250000005, -49.03427734374998], + [69.20390625000007, -48.9912109375], + [69.16953125, -48.957031249999964], + [69.15009765625004, -48.91904296875004], + [69.16718750000004, -48.88291015624996], + [69.26640625000002, -48.878808593750016], + [69.36875, -48.89042968749998], + [69.39472656250004, -48.951171875000014], + [69.32119140625, -49.03427734374998], + [69.2824218750001, -49.05888671875002] + ] + ], + [ + [ + [69.18486328125002, -49.10957031250004], + [69.26513671875003, -49.11542968749999], + [69.31425781250007, -49.10625], + [69.53496093750002, -48.97431640625002], + [69.59277343749997, -48.97099609375005], + [69.5873046875, -49.07197265625002], + [69.64404296875003, -49.11738281250003], + [69.57226562499997, -49.129003906250006], + [69.43623046875004, -49.124023437499964], + [69.40507812500002, -49.18173828125], + [69.5423828125, -49.25566406250005], + [69.6107421875, -49.26582031249999], + [69.6666015625, -49.26494140624999], + [69.7707031250001, -49.24814453125003], + [69.85439453125, -49.221582031249945], + [69.983984375, -49.15986328124998], + [70.06132812500002, -49.13603515625002], + [70.2083984375, -49.134960937499976], + [70.28496093750002, -49.076464843750045], + [70.32021484375005, -49.05859374999996], + [70.40625, -49.061132812500034], + [70.48427734375005, -49.08388671874996], + [70.53085937500006, -49.13691406250002], + [70.55546875000007, -49.201464843750024], + [70.5368164062501, -49.265527343750016], + [70.48505859375004, -49.32763671874997], + [70.3898437500001, -49.365625], + [70.41142578125007, -49.410937499999974], + [70.38613281250005, -49.433984374999966], + [70.33837890624997, -49.43525390625005], + [70.29765625000007, -49.42480468749996], + [70.23779296875003, -49.37158203124995], + [70.16582031250002, -49.34296874999998], + [69.99316406250003, -49.344921875000026], + [69.915625, -49.348535156249966], + [69.90214843750002, -49.3892578125], + [69.86113281250002, -49.42050781249997], + [69.81835937500003, -49.43769531250001], + [69.75996093750004, -49.430175781249986], + [69.74921875000004, -49.447558593749974], + [69.78027343749997, -49.490136718749945], + [69.85595703125003, -49.544042968750006], + [69.98642578125006, -49.58164062500003], + [70.062890625, -49.58935546875], + [70.07343750000004, -49.51777343749998], + [70.16582031250002, -49.50937], + [70.2477539062501, -49.53066406250003], + [70.30712890625003, -49.58349609374996], + [70.25878906250003, -49.60078125000002], + [70.2162109375, -49.62880859374995], + [70.20742187500005, -49.665039062499964], + [70.12431640625002, -49.70439453124999], + [70.07509765625, -49.70859375000004], + [69.91894531249997, -49.68935546875003], + [69.82607421875, -49.64492187499995], + [69.8039062500001, -49.613574218750045], + [69.74667968750006, -49.60175781250004], + [69.68203125000005, -49.64218750000001], + [69.612890625, -49.65097656250003], + [69.47763671875006, -49.617382812500026], + [69.3527343750001, -49.56318359375], + [69.2746093750001, -49.54277343750001], + [69.153125, -49.5296875], + [69.08593750000003, -49.652929687499984], + [68.99296875000007, -49.704980468750016], + [68.87265625, -49.709863281249945], + [68.81474609375002, -49.69960937499999], + [68.7828125, -49.65126953125], + [68.7912109375001, -49.59960937499996], + [68.81054687499997, -49.550195312500016], + [68.8483398437501, -49.49960937500001], + [68.87207031249997, -49.44433593750003], + [68.8619140625, -49.39218749999998], + [68.81845703125006, -49.35390625], + [68.84140625, -49.28535156249997], + [68.79882812499997, -49.23164062500004], + [68.81357421875006, -49.192089843749976], + [68.88339843750006, -49.16494140624995], + [68.85380859375007, -49.141308593750026], + [68.81669921875007, -49.135058593749996], + [68.79013671875006, -49.103710937500004], + [68.76953125000003, -49.06591796875003], + [68.79658203125004, -48.994726562500006], + [68.83691406249997, -48.92617187499998], + [68.83203124999997, -48.84873046875001], + [68.90029296875005, -48.77558593750003], + [68.95869140625004, -48.69384765624999], + [69.00244140624997, -48.661230468750006], + [69.0572265625, -48.65644531250001], + [69.08125, -48.679296874999956], + [69.09306640625007, -48.72392578124999], + [69.07158203125002, -48.752832031250016], + [69.12275390625004, -48.76601562499995], + [69.13613281250005, -48.86103515625003], + [69.1041015625, -48.89990234374996], + [69.09941406250002, -48.93759765625], + [69.03271484375003, -49.01757812499995], + [69.05214843750005, -49.08193359375001], + [69.18486328125002, -49.10957031250004] + ] + ], + [ + [ + [51.83457031250006, -46.43994140625], + [51.76171874999997, -46.448730468750014], + [51.69658203125002, -46.428125], + [51.65927734375006, -46.37363281249999], + [51.7418945312501, -46.32685546874997], + [51.78417968750003, -46.35888671875], + [51.81542968749997, -46.394726562500026], + [51.83457031250006, -46.43994140625] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Antigua and Barb.", + "iso_a2": "AG", + "iso_a3": "ATG", + "iso_n3": "028", + "continent": "North America" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-61.71606445312503, 17.037011718749994], + [-61.74814453124998, 16.997167968750034], + [-61.85966796874996, 17.013330078124966], + [-61.88203124999998, 17.063134765624994], + [-61.887109374999966, 17.09814453125], + [-61.81728515624994, 17.168945312500057], + [-61.73857421874999, 17.138476562500045], + [-61.70820312500001, 17.105078125], + [-61.68603515625003, 17.098437500000074], + [-61.686474609374926, 17.06982421875003], + [-61.694970703124994, 17.048925781250034], + [-61.71606445312503, 17.037011718749994] + ] + ], + [ + [ + [-61.74711914062496, 17.57495117187497], + [-61.76201171874996, 17.548681640625063], + [-61.84379882812502, 17.59614257812504], + [-61.86875, 17.685449218750023], + [-61.866162109374955, 17.704296874999955], + [-61.852441406249994, 17.714062499999983], + [-61.819921875000034, 17.696875], + [-61.77675781249994, 17.690478515625074], + [-61.749609375, 17.661328124999983], + [-61.74711914062496, 17.57495117187497] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Australia", + "iso_a2": "AU", + "iso_a3": "AUS", + "iso_n3": "036", + "continent": "Oceania" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [158.87880859375005, -54.709765625], + [158.84521484375003, -54.74921875000004], + [158.83593750000003, -54.70400390624998], + [158.89697265625003, -54.506054687499976], + [158.95888671875, -54.47236328125004], + [158.94560546875007, -54.575], + [158.87880859375005, -54.709765625] + ] + ], + [ + [ + [147.35605468750006, -43.396972656250014], + [147.30888671875007, -43.50078125000002], + [147.23144531250003, -43.48310546874997], + [147.15380859375003, -43.5001953125], + [147.10498046875003, -43.43115234374996], + [147.10468750000004, -43.412890624999974], + [147.16308593750003, -43.43027343749996], + [147.18466796875006, -43.4078125], + [147.19843750000004, -43.37919921875003], + [147.21972656250003, -43.371386718750045], + [147.23398437500006, -43.330468749999966], + [147.28388671875004, -43.278906250000034], + [147.3125, -43.28027343749996], + [147.3424804687501, -43.34628906249999], + [147.35605468750006, -43.396972656250014] + ] + ], + [ + [ + [147.43457031250003, -43.24072265624997], + [147.371875, -43.24082031249999], + [147.34882812500004, -43.23242187499997], + [147.33759765625004, -43.18330078125], + [147.29609375000004, -43.16171874999996], + [147.31914062500002, -43.14531249999999], + [147.3273437500001, -43.114648437499966], + [147.35253906249997, -43.08027343749997], + [147.39726562500007, -43.11826171874999], + [147.43457031250003, -43.24072265624997] + ] + ], + [ + [ + [148.10429687500002, -42.71044921875004], + [148.04814453125002, -42.71923828124996], + [148.0296875, -42.71484374999996], + [148.03085937500006, -42.663378906250045], + [148.02275390625002, -42.64042968749999], + [148.07255859375002, -42.59316406249995], + [148.14277343750004, -42.61591796874997], + [148.16953125000006, -42.65175781249998], + [148.10058593749997, -42.680566406249994], + [148.10429687500002, -42.71044921875004] + ] + ], + [ + [ + [145.04296875000003, -40.78671875], + [145.15869140624997, -40.79062], + [145.22431640625004, -40.76513671875003], + [145.28300781250002, -40.76992187500002], + [145.34941406250002, -40.82636718749998], + [145.42939453125004, -40.85820312499999], + [145.48515625000007, -40.85234375000003], + [145.53349609375002, -40.86396484375], + [145.57646484375002, -40.9041015625], + [145.68603515625003, -40.93906250000002], + [145.7337890625, -40.96201171874999], + [145.77539062500003, -40.99716796874996], + [145.8214843750001, -41.02460937500004], + [146.11113281250002, -41.118066406249994], + [146.31748046875006, -41.16347656250001], + [146.5744140625001, -41.142382812499974], + [146.6505859375001, -41.11621093749997], + [146.72343750000002, -41.07802734375001], + [146.78603515625005, -41.11367187499998], + [146.84814453124997, -41.16806640624996], + [146.83603515625012, -41.109375], + [146.85664062500004, -41.05830078124998], + [146.91943359374997, -41.01777343749998], + [146.98984375000006, -40.99238281249997], + [147.10576171875007, -40.99423828124999], + [147.21884765625012, -40.9833984375], + [147.2689453125, -40.959765624999974], + [147.32050781250004, -40.95644531250001], + [147.38769531249997, -40.985546875], + [147.45478515625004, -41.00166015624998], + [147.50078125000002, -40.96416015624999], + [147.5792968750001, -40.87558593749998], + [147.62167968750012, -40.844726562499986], + [147.81767578125007, -40.87167968749998], + [147.87294921875005, -40.87255859374997], + [147.96875, -40.779589843750045], + [148.03281250000012, -40.78095703124997], + [148.215234375, -40.85488281250002], + [148.29287109375, -40.947070312499974], + [148.28544921875007, -41.11533203124996], + [148.29160156250006, -41.174609375000045], + [148.30625, -41.23310546874998], + [148.31220703125004, -41.34970703125002], + [148.28984375000007, -41.46503906249998], + [148.28691406250002, -41.55498046875], + [148.29658203125004, -41.646191406250026], + [148.28759765624997, -41.81572265625002], + [148.31572265625002, -41.927734375], + [148.30166015625, -42.004199218750045], + [148.30146484375004, -42.03994140624995], + [148.32802734375005, -42.07373046875], + [148.34082031249997, -42.111132812499974], + [148.33105468749997, -42.1591796875], + [148.34257812500007, -42.21533203124997], + [148.33125, -42.261621093749994], + [148.29033203125002, -42.25498046874998], + [148.27695312500012, -42.21943359375001], + [148.2845703125, -42.17343749999996], + [148.27714843750007, -42.13642578124998], + [148.25576171875, -42.10263671875002], + [148.18310546875003, -42.06474609375003], + [148.20439453125007, -42.041992187500014], + [148.2416015625, -42.021875], + [148.21367187500002, -41.97001953125], + [148.16718750000004, -42.012304687500006], + [148.14121093750006, -42.06982421875], + [148.15625, -42.08828125000002], + [148.12753906250006, -42.10371093749997], + [148.0666015625001, -42.17031249999995], + [148.02275390625002, -42.25947265625], + [148.00488281250003, -42.34511718749995], + [148.009375, -42.4359375], + [147.97353515625005, -42.505859375000014], + [147.92441406250006, -42.5724609375], + [147.91210937499997, -42.65849609375002], + [147.91503906250003, -42.81640624999996], + [147.9577148437501, -42.960449218749986], + [147.980859375, -43.157031249999974], + [147.94541015625006, -43.18183593749997], + [147.8385742187501, -43.19511718750002], + [147.7858398437501, -43.22001953125002], + [147.69892578125004, -43.12255859374997], + [147.64794921874997, -43.02060546874999], + [147.68730468750007, -42.97988281249995], + [147.77392578124997, -43.00341796875004], + [147.80039062500012, -42.98027343750003], + [147.80742187500002, -42.95410156250003], + [147.8, -42.928125], + [147.69345703125006, -42.871972656249994], + [147.57382812500006, -42.84570312499997], + [147.53583984375004, -42.87802734374998], + [147.54902343750004, -42.97451171875001], + [147.53671875000012, -42.99648437499995], + [147.4523437500001, -43.03339843750001], + [147.40800781250002, -42.89384765625], + [147.29794921875006, -42.790917968749994], + [147.3019531250001, -42.84052734374998], + [147.34765624999997, -42.92656250000002], + [147.34267578125005, -42.964453125], + [147.325, -43.013476562500045], + [147.28076171875003, -43.03173828125003], + [147.25976562500003, -43.071093749999974], + [147.25976562500003, -43.12646484374997], + [147.24501953125005, -43.21591796874999], + [147.17285156249997, -43.25585937499996], + [146.99697265625005, -43.15634765625002], + [146.98486328124997, -43.18984375], + [146.9875, -43.21875], + [147.07734375000004, -43.27587890625003], + [147.03593750000007, -43.31904296875004], + [147.00468750000002, -43.36962890625004], + [146.95468750000012, -43.50244140625], + [146.87392578125, -43.6125], + [146.83427734375002, -43.61933593750001], + [146.69921875000003, -43.60195312500002], + [146.54853515625004, -43.50888671874999], + [146.41318359375012, -43.51953125000003], + [146.1867187500001, -43.51279296874998], + [146.04316406250004, -43.547167968749974], + [146.01308593750005, -43.444824218749986], + [145.98173828125007, -43.408398437500026], + [145.99443359375007, -43.37607421875002], + [146.1087890625, -43.35439453124995], + [146.22636718750007, -43.355273437500045], + [146.20800781249997, -43.31621093749999], + [146.17646484375004, -43.30175781249997], + [146.12509765625006, -43.31123046875004], + [145.9752929687501, -43.27714843750003], + [145.8732421875001, -43.29238281250002], + [145.80273437500003, -43.24404296875004], + [145.68154296875, -43.07597656249999], + [145.60996093750006, -42.998242187500054], + [145.56738281250003, -42.96796875000001], + [145.51757812499997, -42.9513671875], + [145.48759765625002, -42.92666015625004], + [145.26816406250006, -42.54433593749995], + [145.23710937500007, -42.455566406249986], + [145.19882812500006, -42.23085937500004], + [145.37294921875, -42.33847656250002], + [145.43486328125002, -42.40654296875003], + [145.46826171874997, -42.492871093750026], + [145.52724609375, -42.388183593750014], + [145.51660156249997, -42.3544921875], + [145.36035156250003, -42.22753906249997], + [145.33964843750007, -42.19072265625003], + [145.33105468750003, -42.14707031250002], + [145.29443359375003, -42.191015625], + [145.23486328124997, -42.19697265624997], + [145.2589843750001, -42.107324218749994], + [145.23818359375, -42.01962890624999], + [145.0553710937501, -41.826757812500034], + [144.91552734375003, -41.64404296875003], + [144.77792968750012, -41.41884765624998], + [144.76611328125003, -41.39003906249998], + [144.76435546875004, -41.34150390625004], + [144.69775390624997, -41.190722656250045], + [144.66240234375002, -41.07890625], + [144.64609375000006, -40.980859375], + [144.7096679687501, -40.78291015625001], + [144.71855468750002, -40.67226562500002], + [144.81855468750004, -40.72167968749997], + [145.04296875000003, -40.78671875] + ] + ], + [ + [ + [148.23691406250006, -40.515136718749986], + [148.18779296875007, -40.592578125000045], + [148.12695312500003, -40.5439453125], + [148.11728515625012, -40.52148437499996], + [148.19316406250002, -40.503125], + [148.21835937500006, -40.50507812499998], + [148.23691406250006, -40.515136718749986] + ] + ], + [ + [ + [144.784375, -40.506738281249966], + [144.74804687499997, -40.589453125000034], + [144.7101562500001, -40.48525390625004], + [144.7511718750001, -40.470214843749986], + [144.7833984375001, -40.434863281249974], + [144.79082031250002, -40.44033203125002], + [144.784375, -40.506738281249966] + ] + ], + [ + [ + [148.32626953125006, -40.30693359375003], + [148.42070312500002, -40.36718749999996], + [148.47421875000006, -40.43242187500002], + [148.40400390625004, -40.486523437500026], + [148.3527343750001, -40.497265625], + [148.31943359375006, -40.434570312500014], + [148.2140625000001, -40.45751953124997], + [148.10253906250003, -40.45166015625003], + [148.02011718750012, -40.40419921874995], + [148.0104492187501, -40.380566406250026], + [148.0587890625001, -40.35683593749998], + [148.19814453125005, -40.35791015625003], + [148.32626953125006, -40.30693359375003] + ] + ], + [ + [ + [148.000390625, -39.75761718750003], + [148.17792968750004, -39.938476562500014], + [148.27001953124997, -39.966699218749994], + [148.29736328125003, -39.985742187499966], + [148.28984375000007, -40.06542968750003], + [148.25078125000002, -40.099511718749966], + [148.32324218749997, -40.144433593749966], + [148.31357421875012, -40.173535156250026], + [148.29941406250006, -40.17246093749999], + [148.21035156250005, -40.23369140625003], + [148.10566406250004, -40.26210937499995], + [148.0736328125, -40.24082031249998], + [148.04687, -40.21279296874995], + [148.0248046875, -40.17197265624998], + [147.89052734375, -40.014550781249966], + [147.90595703125004, -39.97138671874997], + [147.87626953125002, -39.90546875000004], + [147.81230468750007, -39.91044921874999], + [147.76718750000012, -39.87031249999998], + [147.83916015625002, -39.831542968749986], + [147.93300781250005, -39.72597656249998], + [148.000390625, -39.75761718750003] + ] + ], + [ + [ + [143.92792968750004, -40.116113281249966], + [143.89873046875007, -40.120214843750006], + [143.87578125000002, -40.06396484375], + [143.88759765625, -39.98359374999997], + [143.83857421875004, -39.90410156250003], + [143.86523437499997, -39.824218750000014], + [143.86181640625003, -39.737988281250026], + [143.87939453125003, -39.7], + [143.93935546875, -39.65810546875001], + [143.94882812500006, -39.58369140625004], + [144.00078125000007, -39.580175781250034], + [144.09130859374997, -39.63808593750001], + [144.12089843750002, -39.78525390624998], + [144.10605468750012, -39.87402343750003], + [144.14101562500005, -39.953808593750026], + [144.11191406250006, -40.02207031249999], + [144.03505859375005, -40.07822265624998], + [143.92792968750004, -40.116113281249966] + ] + ], + [ + [ + [145.31445312500003, -38.49082031249996], + [145.34921875000006, -38.53818359375002], + [145.35507812500012, -38.55703124999995], + [145.2708984375, -38.5197265625], + [145.12841796875003, -38.52763671875], + [145.21777343750003, -38.45859374999998], + [145.28789062500002, -38.472167968749986], + [145.31445312500003, -38.49082031249996] + ] + ], + [ + [ + [145.48652343750004, -38.35488281249998], + [145.33583984375, -38.420996093750034], + [145.28027343749997, -38.39062], + [145.28583984375004, -38.341015625], + [145.2953125, -38.318945312500034], + [145.42656250000002, -38.31416015625004], + [145.48652343750004, -38.35488281249998] + ] + ], + [ + [ + [137.59648437500007, -35.73867187499998], + [137.83593750000003, -35.762109374999966], + [137.92890625000004, -35.72607421875], + [138.04658203125004, -35.755175781249974], + [138.12343750000005, -35.85234375], + [138.06650390625006, -35.900585937500026], + [138.0119140625001, -35.90761718750004], + [137.83554687500012, -35.86777343749999], + [137.67089843749997, -35.897949218750014], + [137.6222656250001, -35.93808593750002], + [137.59023437500005, -36.02714843749996], + [137.44843750000004, -36.07480468749999], + [137.38222656250005, -36.02089843750002], + [137.20957031250012, -35.982421875], + [137.14775390625007, -36.039062499999986], + [137.02587890625003, -36.023925781250014], + [136.91269531250006, -36.04667968750003], + [136.7550781250001, -36.03310546875002], + [136.58925781250005, -35.9353515625], + [136.540625, -35.89013671875003], + [136.57910156250003, -35.808691406250034], + [136.63867187499997, -35.74882812500002], + [137.09179687500003, -35.66386718750002], + [137.33408203125006, -35.59248046875004], + [137.53046875000004, -35.605078125000034], + [137.58496093749997, -35.620214843750006], + [137.63544921875004, -35.656445312500026], + [137.59814453124997, -35.72226562500002], + [137.59648437500007, -35.73867187499998] + ] + ], + [ + [ + [153.53876953125004, -27.436425781250037], + [153.45273437500012, -27.71171874999999], + [153.42656250000002, -27.70644531249998], + [153.39580078125007, -27.665039062499986], + [153.40087890625003, -27.50566406250003], + [153.43544921875, -27.40537109375002], + [153.521875, -27.422460937500034], + [153.53876953125004, -27.436425781250037] + ] + ], + [ + [ + [153.44248046875006, -27.31601562500002], + [153.42089843750003, -27.330957031249966], + [153.37656250000006, -27.23535156250003], + [153.36503906250002, -27.138867187499997], + [153.37988281250003, -27.049414062499977], + [153.43232421875004, -27.02988281249999], + [153.46679687499997, -27.038085937499986], + [153.42636718750006, -27.20146484374996], + [153.44248046875006, -27.31601562500002] + ] + ], + [ + [ + [113.18300781250005, -26.053125], + [113.15644531250004, -26.09453125], + [112.96425781250005, -25.78310546875001], + [112.90820312499997, -25.56982421875], + [112.94707031250002, -25.531542968750017], + [112.98242187500003, -25.52021484375001], + [113.09628906250012, -25.815039062500034], + [113.13154296875004, -25.88261718750003], + [113.13183593749997, -25.951953125000045], + [113.14833984375, -25.97382812499997], + [113.18300781250005, -26.053125] + ] + ], + [ + [ + [153.07744140625002, -25.75078125], + [153.0519531250001, -25.778320312500014], + [153.00693359375006, -25.72890625], + [152.97666015625012, -25.551367187499963], + [152.99902343749997, -25.44843750000004], + [153.05156250000002, -25.35429687499996], + [153.06074218750004, -25.302246093750014], + [153.03808593750003, -25.193164062500003], + [153.18925781250002, -25.07050781249997], + [153.22753906249997, -25.00576171875001], + [153.24199218750002, -24.922558593750026], + [153.18632812500002, -24.83261718749999], + [153.14375, -24.814843750000023], + [153.18095703125002, -24.76484375000004], + [153.22314453124997, -24.73955078124996], + [153.25693359375012, -24.72890625], + [153.28212890625, -24.738281249999957], + [153.29794921875012, -24.91523437500004], + [153.35927734375, -24.977734374999983], + [153.35019531250012, -25.063085937499963], + [153.14140625000002, -25.512792968750006], + [153.08378906250002, -25.682519531250037], + [153.07744140625002, -25.75078125] + ] + ], + [ + [ + [151.14658203125006, -23.49082031250002], + [151.18076171875006, -23.516210937500034], + [151.21201171875006, -23.513085937500023], + [151.24013671875, -23.529687500000037], + [151.22880859375002, -23.594921875], + [151.27431640625005, -23.66845703124997], + [151.29580078125, -23.720312499999963], + [151.26152343750002, -23.76230468749999], + [151.23828124999997, -23.77578125], + [151.18417968750006, -23.740722656250043], + [151.03330078125006, -23.530175781250037], + [151.0599609375, -23.460546874999977], + [151.14658203125006, -23.49082031250002] + ] + ], + [ + [ + [150.51669921875006, -22.32255859374996], + [150.4884765625001, -22.324707031250043], + [150.46240234375003, -22.307714843750034], + [150.48466796875002, -22.267871093750003], + [150.4884765625001, -22.210742187500003], + [150.52148437499997, -22.22832031250003], + [150.54882812499997, -22.306933593749974], + [150.51669921875006, -22.32255859374996] + ] + ], + [ + [ + [149.92832031250012, -22.19306640625004], + [149.89365234375006, -22.223242187499977], + [149.86953125000005, -22.150390624999957], + [149.875390625, -22.07402343750003], + [149.91230468750004, -22.048730468750037], + [149.92792968750004, -22.14931640625001], + [149.92832031250012, -22.19306640625004] + ] + ], + [ + [ + [115.44619140625005, -20.78779296875001], + [115.3880859375, -20.86601562499996], + [115.31806640625004, -20.850585937500014], + [115.30859374999997, -20.811132812499963], + [115.35429687500007, -20.746289062499997], + [115.43457031249997, -20.66796875000003], + [115.45761718750006, -20.716308593750014], + [115.44619140625005, -20.78779296875001] + ] + ], + [ + [ + [149.04375, -20.29150390624997], + [149.01992187500005, -20.302539062500003], + [148.98740234375006, -20.30175781250003], + [148.93886718750005, -20.283691406249986], + [148.98105468750012, -20.153515625000026], + [149.00439453124997, -20.221484375000017], + [149.0453125, -20.27753906249997], + [149.04375, -20.29150390624997] + ] + ], + [ + [ + [148.93554687499997, -20.14990234375], + [148.91347656250005, -20.154296875], + [148.88691406250004, -20.14355468750003], + [148.90644531250004, -20.101953125], + [148.93164062500003, -20.06894531250002], + [148.96787109375012, -20.04433593749998], + [148.95625, -20.134667968749994], + [148.93554687499997, -20.14990234375] + ] + ], + [ + [ + [146.27832031249997, -18.23125], + [146.29882812499997, -18.32607421875005], + [146.3419921875001, -18.400097656250026], + [146.32705078125, -18.448632812499966], + [146.29882812499997, -18.48476562500005], + [146.23564453125002, -18.450781249999963], + [146.19130859375005, -18.362890625], + [146.11621093750003, -18.292382812500023], + [146.09882812500004, -18.251757812500003], + [146.1867187500001, -18.25517578124999], + [146.230859375, -18.241406250000026], + [146.24912109375006, -18.225878906249974], + [146.27832031249997, -18.23125] + ] + ], + [ + [ + [139.45917968750004, -17.11455078124996], + [139.42167968750002, -17.131640624999974], + [139.40820312499997, -17.09062], + [139.45917968750004, -17.04912109374996], + [139.49277343750006, -16.990429687499983], + [139.56005859374997, -17.041992187500014], + [139.57089843750006, -17.09443359375004], + [139.45917968750004, -17.11455078124996] + ] + ], + [ + [ + [139.50781250000003, -16.57304687499996], + [139.43056640625, -16.661035156250023], + [139.39150390625, -16.648632812499983], + [139.35429687500007, -16.69658203124999], + [139.28300781250002, -16.719433593750026], + [139.23906250000007, -16.718652343750037], + [139.1595703125, -16.74169921875003], + [139.1476562500001, -16.713867187499957], + [139.16269531250012, -16.625878906249966], + [139.2287109375001, -16.52753906250001], + [139.29296875000003, -16.467285156249986], + [139.45888671875, -16.438476562499986], + [139.58789062499997, -16.39521484374997], + [139.60449218749997, -16.403222656249994], + [139.69775390624997, -16.514941406250017], + [139.55966796875006, -16.52949218749997], + [139.50781250000003, -16.57304687499996] + ] + ], + [ + [ + [137.09365234375005, -15.778125], + [137.05087890625012, -15.824414062500026], + [136.99648437500005, -15.77578125], + [136.98505859375004, -15.725976562500051], + [136.94267578125002, -15.711718749999989], + [136.96337890624997, -15.665722656250026], + [136.9857421875, -15.652441406249991], + [137.00957031250007, -15.594824218749977], + [137.06455078125006, -15.662890624999989], + [137.07109375000007, -15.738085937500031], + [137.09365234375005, -15.778125] + ] + ], + [ + [ + [136.59101562500004, -15.628222656250031], + [136.53115234375005, -15.632421875], + [136.51425781250006, -15.627343750000023], + [136.50273437500002, -15.583105468749977], + [136.52255859375006, -15.543164062500011], + [136.58603515625012, -15.533691406249957], + [136.61230468749997, -15.54414062500004], + [136.59101562500004, -15.628222656250031] + ] + ], + [ + [ + [136.8626953125, -15.619921875000017], + [136.84677734375012, -15.627343750000023], + [136.84560546875005, -15.54404296875002], + [136.87685546875, -15.502539062500006], + [136.89023437500006, -15.5888671875], + [136.8626953125, -15.619921875000017] + ] + ], + [ + [ + [124.59726562500006, -15.40195312500002], + [124.55957031250003, -15.43017578125], + [124.52421875000002, -15.421484375], + [124.52373046875002, -15.382421875000048], + [124.48281250000005, -15.34033203125], + [124.5041015625001, -15.292480468750014], + [124.51933593750002, -15.26748046874998], + [124.55087890625012, -15.270312500000031], + [124.56455078125006, -15.310839843750031], + [124.60507812500006, -15.356542968750006], + [124.59726562500006, -15.40195312500002] + ] + ], + [ + [ + [125.19882812500006, -14.57949218749998], + [125.13476562499997, -14.641699218750034], + [125.0912109375, -14.59169921874998], + [125.1173828125001, -14.491992187500003], + [125.15996093750002, -14.456054687499972], + [125.19814453125, -14.474804687499969], + [125.19355468750004, -14.552636718750009], + [125.19882812500006, -14.57949218749998] + ] + ], + [ + [ + [136.71464843750002, -13.803906249999983], + [136.75800781250004, -13.845410156249997], + [136.80449218750002, -13.842480468750026], + [136.84531250000006, -13.750976562500028], + [136.87070312500012, -13.763671874999957], + [136.89082031250004, -13.786621093750014], + [136.90556640625002, -13.82695312499996], + [136.84296875000004, -13.896582031250034], + [136.81494140625003, -13.907324218749991], + [136.78818359375006, -13.945800781250014], + [136.74531250000004, -14.072656250000023], + [136.74990234375, -14.115234374999986], + [136.78701171875, -14.157812499999963], + [136.8854492187501, -14.197265625], + [136.93388671875002, -14.179003906250017], + [136.95078125000006, -14.184277343750026], + [136.93134765625004, -14.24599609374998], + [136.89433593750002, -14.293066406249977], + [136.76318359374997, -14.273437499999972], + [136.64970703125002, -14.280468749999983], + [136.46054687500012, -14.234570312499969], + [136.36328125000003, -14.228906249999966], + [136.33544921875003, -14.211816406250037], + [136.39218750000006, -14.175488281250011], + [136.42773437500003, -14.126464843749972], + [136.41113281249997, -14.011132812500009], + [136.42470703125, -13.864843749999963], + [136.53378906250012, -13.79375], + [136.58281250000007, -13.72109375], + [136.6556640625, -13.675878906250006], + [136.70195312500002, -13.681640625000028], + [136.69599609375004, -13.726171875000034], + [136.71464843750002, -13.803906249999983] + ] + ], + [ + [ + [136.23740234375006, -13.824511718750003], + [136.21367187500002, -13.835937500000014], + [136.12265625000012, -13.816601562499983], + [136.12226562500004, -13.780566406250017], + [136.13437500000012, -13.753125], + [136.1595703125, -13.736718749999966], + [136.21542968750012, -13.664746093750054], + [136.25742187500012, -13.706640624999963], + [136.27539062499997, -13.791113281250034], + [136.23740234375006, -13.824511718750003] + ] + ], + [ + [ + [136.33867187500007, -11.602343749999989], + [136.18027343750006, -11.676757812499957], + [136.26738281250002, -11.57646484374996], + [136.44921875000003, -11.48710937499996], + [136.47929687500002, -11.465917968749991], + [136.47050781250002, -11.509277343749943], + [136.37939453125003, -11.583203125], + [136.33867187500007, -11.602343749999989] + ] + ], + [ + [ + [130.45927734375007, -11.679296875000034], + [130.54179687500002, -11.703125], + [130.57988281250002, -11.737109375], + [130.6027343750001, -11.773242187499989], + [130.60625, -11.816601562500026], + [130.50253906250012, -11.835644531249997], + [130.31748046875006, -11.77177734374996], + [130.13125, -11.82451171874996], + [130.0765625, -11.825488281249974], + [130.04326171875007, -11.787304687500011], + [130.07207031250007, -11.680761718749977], + [130.13906250000005, -11.697070312500017], + [130.19755859375007, -11.658203125], + [130.18710937500006, -11.541210937499969], + [130.15283203124997, -11.477539062499972], + [130.25117187500004, -11.360546875000026], + [130.29492187499997, -11.33681640624998], + [130.33925781250005, -11.33701171875002], + [130.37675781250007, -11.420117187499997], + [130.38564453125, -11.509863281249977], + [130.4328125000001, -11.592187499999966], + [130.45927734375007, -11.679296875000034] + ] + ], + [ + [ + [130.6188476562501, -11.376074218749991], + [130.75224609375007, -11.384375], + [130.9127929687501, -11.309277343749969], + [130.98740234375012, -11.339843749999986], + [131.02304687500006, -11.334375], + [131.14062, -11.26308593749998], + [131.21718750000005, -11.242578124999966], + [131.26826171875004, -11.18984375], + [131.32050781250004, -11.246875], + [131.43691406250005, -11.313183593749969], + [131.4733398437501, -11.382519531249969], + [131.52226562500002, -11.415234374999969], + [131.53857421874997, -11.436914062500037], + [131.46787109375012, -11.509570312500003], + [131.45859375000012, -11.587890624999972], + [131.38281250000003, -11.582519531249943], + [131.29208984375012, -11.7109375], + [130.95097656250007, -11.926464843750026], + [130.644921875, -11.742382812500011], + [130.51191406250004, -11.617871093749955], + [130.42275390625, -11.445800781249986], + [130.40478515624997, -11.304980468749989], + [130.3685546875, -11.21494140625002], + [130.38457031250002, -11.1921875], + [130.40292968750006, -11.180468750000017], + [130.42666015625, -11.183105468750028], + [130.51914062500012, -11.279492187500026], + [130.55976562500004, -11.305957031250003], + [130.6188476562501, -11.376074218749991] + ] + ], + [ + [ + [136.59853515625, -11.378906249999943], + [136.52656250000004, -11.438867187499994], + [136.52167968750004, -11.393847656249974], + [136.5597656250001, -11.357910156250014], + [136.64902343750006, -11.211621093749969], + [136.68798828125003, -11.17763671874998], + [136.71054687500006, -11.158398437499969], + [136.72734375000002, -11.10478515624996], + [136.73173828125002, -11.024609374999969], + [136.78027343749997, -11.0125], + [136.74140625000004, -11.194628906249974], + [136.59853515625, -11.378906249999943] + ] + ], + [ + [ + [132.59335937500006, -11.302832031249991], + [132.5736328125, -11.318359374999957], + [132.49375, -11.163671874999977], + [132.51630859375004, -11.116015625000031], + [132.48378906250005, -11.037304687499983], + [132.53779296875004, -11.028417968749949], + [132.57880859375004, -10.968847656249977], + [132.59326171874997, -10.99765625], + [132.596875, -11.106445312499943], + [132.6291015625001, -11.169140625000026], + [132.59335937500006, -11.302832031249991] + ] + ], + [ + [ + [143.17890625000004, -11.954492187499966], + [143.15292968750012, -12.075878906250011], + [143.10468750000004, -12.169628906250011], + [143.09902343750005, -12.225976562500037], + [143.11025390625, -12.303515625000017], + [143.190625, -12.361230468749966], + [143.2541015625001, -12.397656250000011], + [143.28964843750006, -12.498828125000017], + [143.40156250000004, -12.639941406249989], + [143.39755859375012, -12.73613281249996], + [143.4577148437501, -12.855761718749989], + [143.51201171875007, -13.09453125], + [143.5294921875001, -13.303808593749963], + [143.5866210937501, -13.443652343750031], + [143.54843750000012, -13.74101562499996], + [143.5892578125, -13.862792968749986], + [143.64335937500002, -13.963671875000017], + [143.70722656250004, -14.16455078125], + [143.75634765625003, -14.348828124999969], + [143.82236328125006, -14.40107421875004], + [143.96181640625005, -14.462890625000028], + [144.105859375, -14.394531249999957], + [144.20986328125005, -14.301953125000011], + [144.3216796875, -14.279394531250034], + [144.473046875, -14.231835937500023], + [144.58642578125003, -14.354687500000011], + [144.64804687500006, -14.492480468750017], + [144.91572265625004, -14.674316406250028], + [145.06445312499997, -14.791015625], + [145.17998046875007, -14.856933593750014], + [145.28769531250006, -14.943164062499989], + [145.27695312500012, -15.029394531249977], + [145.2516601562501, -15.097460937499989], + [145.27617187500002, -15.20390625], + [145.29306640625006, -15.327246093749991], + [145.27158203125006, -15.476660156249963], + [145.34951171875005, -15.701562500000051], + [145.375390625, -15.881054687500026], + [145.45800781250003, -16.05644531249996], + [145.45185546875004, -16.23691406250005], + [145.43642578125, -16.30498046874996], + [145.42607421875002, -16.406152343749966], + [145.49042968750004, -16.532128906249966], + [145.54990234375012, -16.62509765624999], + [145.63828125000006, -16.726074218749957], + [145.75478515625, -16.879492187500034], + [145.83789062499997, -16.91035156250001], + [145.91210937499997, -16.9125], + [145.90195312500006, -17.070214843749994], + [146.04980468749997, -17.381054687499983], + [146.12587890625005, -17.63525390625], + [146.07402343750002, -17.97734375], + [146.0228515625, -18.175781249999986], + [146.03222656249997, -18.272851562500037], + [146.223046875, -18.509863281250006], + [146.3332031250001, -18.55371093749997], + [146.31171875000004, -18.666699218749983], + [146.29687, -18.84121093750001], + [146.38339843750006, -18.97705078124997], + [146.48115234375004, -19.07871093749999], + [146.5873046875, -19.139453125000017], + [146.69199218750006, -19.187402343750023], + [146.82900390625, -19.23574218750001], + [147.00263671875004, -19.25605468749997], + [147.09277343750003, -19.33261718750002], + [147.13876953125006, -19.39316406250002], + [147.278125, -19.414160156250034], + [147.34150390625004, -19.402929687499963], + [147.41855468750012, -19.37812], + [147.47089843750004, -19.419335937500023], + [147.50976562499997, -19.474121093749986], + [147.58603515625006, -19.622753906249983], + [147.7423828125001, -19.770117187499977], + [147.85322265625004, -19.794726562500017], + [147.915625, -19.86923828125002], + [148.00449218750012, -19.88955078124998], + [148.08105468749997, -19.89863281249997], + [148.1896484375001, -19.95585937499999], + [148.36689453125004, -20.0875], + [148.52675781250005, -20.108886718749986], + [148.60048828125005, -20.14521484375001], + [148.759375, -20.28955078125003], + [148.82099609375004, -20.366406250000054], + [148.88476562499997, -20.480859375], + [148.805078125, -20.49169921875], + [148.72998046874997, -20.4677734375], + [148.68369140625012, -20.58017578124999], + [148.789453125, -20.73564453124996], + [148.91240234375007, -20.845214843749986], + [149.06054687499997, -20.96113281249997], + [149.20488281250007, -21.125097656249977], + [149.24140625000004, -21.250195312499983], + [149.28027343749997, -21.299511718749983], + [149.3292968750001, -21.476074218749986], + [149.45410156249997, -21.57871093750002], + [149.46005859375012, -21.76542968749996], + [149.52402343750006, -22.023632812499983], + [149.59570312500003, -22.25761718749996], + [149.64531250000002, -22.32832031249997], + [149.70390625000002, -22.440527343750006], + [149.77158203125006, -22.42626953125003], + [149.82246093750004, -22.389843749999983], + [149.9203125, -22.501367187499966], + [149.97441406250007, -22.55068359374998], + [150.00556640625004, -22.521582031250006], + [149.94189453125003, -22.30810546875003], + [149.98125, -22.184277343750026], + [150.02060546875006, -22.16835937499998], + [150.07617187500003, -22.16445312499998], + [150.14296875000005, -22.265429687500045], + [150.23486328125003, -22.37294921875001], + [150.40507812500007, -22.468945312500026], + [150.54130859375002, -22.55908203125], + [150.57958984375003, -22.555761718750034], + [150.56435546875, -22.486132812499974], + [150.56855468750004, -22.38398437500004], + [150.62285156250002, -22.367285156250006], + [150.67246093750012, -22.418164062499983], + [150.76386718750004, -22.576171875000014], + [150.78281250000012, -22.902929687499977], + [150.78300781250007, -23.17656250000003], + [150.84316406250005, -23.4580078125], + [150.9310546875, -23.53193359375004], + [150.98876953124997, -23.60175781249997], + [151.08769531250002, -23.69609375], + [151.15380859375003, -23.784082031249994], + [151.23632812499997, -23.825], + [151.50078125000002, -24.01240234374997], + [151.5753906250001, -24.033593750000023], + [151.69091796875003, -24.038378906250017], + [151.83164062500006, -24.12294921875001], + [151.902734375, -24.200976562500017], + [152.0553710937501, -24.494433593750017], + [152.12988281250003, -24.59755859374998], + [152.28203125000002, -24.69931640625002], + [152.35312500000012, -24.732519531250034], + [152.45634765625007, -24.802441406249983], + [152.49316406250003, -24.90400390624997], + [152.50205078125006, -24.96396484375002], + [152.56328125000002, -25.072070312500017], + [152.65429687499997, -25.201953125000017], + [152.78916015625012, -25.27412109374997], + [152.91347656250005, -25.432128906250014], + [152.92050781250006, -25.688574218750034], + [152.98496093750012, -25.816210937500003], + [153.02822265625005, -25.87031250000001], + [153.12548828124997, -25.922656250000017], + [153.16494140625, -25.964160156250045], + [153.0841796875001, -26.303808593749963], + [153.16210937499997, -26.982714843749974], + [153.11679687500006, -27.194433593750034], + [153.1979492187501, -27.404687499999966], + [153.38574218749997, -27.76855468750003], + [153.42841796875004, -27.89765625000004], + [153.45488281250002, -28.04833984375], + [153.57568359375003, -28.24052734374999], + [153.56914062500002, -28.53339843749997], + [153.6168945312501, -28.673046875], + [153.60458984375006, -28.854492187500014], + [153.46220703125002, -29.05019531250001], + [153.348046875, -29.29042968750001], + [153.34697265625007, -29.49658203125], + [153.27236328125005, -29.89248046875001], + [153.22382812500004, -29.998632812499963], + [153.18818359375004, -30.16386718749996], + [153.03056640625002, -30.563378906249994], + [153.02373046875002, -30.720117187500037], + [153.04785156249997, -30.907128906250037], + [153.02158203125012, -31.08662109375001], + [152.98222656250002, -31.20878906250003], + [152.94394531250012, -31.43486328124999], + [152.78583984375004, -31.78632812500001], + [152.5592773437501, -32.045703125], + [152.5453125, -32.24306640624998], + [152.51660156250003, -32.33017578124996], + [152.4704101562501, -32.439062500000034], + [152.33125, -32.55751953125001], + [152.2474609375, -32.60869140625003], + [152.21572265625, -32.67812], + [152.13652343750002, -32.67812], + [152.13457031250007, -32.69990234374997], + [152.18808593750006, -32.72167968749996], + [152.1642578125001, -32.75742187499996], + [151.95429687500004, -32.820312499999986], + [151.812890625, -32.90107421875001], + [151.66835937500005, -33.098632812500014], + [151.60771484375002, -33.20185546875], + [151.53007812500002, -33.300976562500026], + [151.4837890625, -33.3474609375], + [151.46337890625003, -33.39736328125004], + [151.43203125000005, -33.521582031250034], + [151.35751953125012, -33.54394531249997], + [151.29208984375012, -33.580957031249966], + [151.32275390624997, -33.699316406250006], + [151.28837890625007, -33.834863281249994], + [151.28027343750003, -33.92666015625005], + [151.24462890624997, -33.98505859375004], + [151.20166015624997, -33.964062500000026], + [151.16787109375005, -33.97343749999999], + [151.12480468750007, -34.00527343749998], + [151.19121093750002, -34.01523437499998], + [151.23154296875006, -34.0296875], + [151.08994140625006, -34.1625], + [150.96035156250005, -34.29707031250001], + [150.9274414062501, -34.386621093749966], + [150.8712890625001, -34.49912109374996], + [150.821875, -34.749218750000026], + [150.78105468750002, -34.89218750000002], + [150.80917968750006, -34.99384765625004], + [150.80458984375, -35.01289062500001], + [150.77460937500004, -35.02041015625002], + [150.7560546875001, -35.00712890624999], + [150.69736328125012, -35.041894531249966], + [150.68095703125007, -35.07666015625003], + [150.70566406250012, -35.119726562500006], + [150.72216796875003, -35.13457031250002], + [150.71464843750007, -35.15517578125004], + [150.69033203125, -35.177734375000014], + [150.6344726562501, -35.177636718749994], + [150.56748046875012, -35.214257812499994], + [150.37412109375006, -35.58417968750004], + [150.2921875000001, -35.68232421874997], + [150.19531249999997, -35.83359374999996], + [150.15849609375002, -35.97060546874998], + [150.12890625000003, -36.120410156250045], + [150.09531250000012, -36.37265625], + [150.06279296875007, -36.55039062499998], + [149.98818359375005, -36.722753906250006], + [149.96025390625002, -36.845507812499974], + [149.9505859375, -37.08027343750001], + [149.98632812500003, -37.25839843749998], + [149.96289062499997, -37.353027343749986], + [149.9623046875, -37.443847656250014], + [149.93271484375012, -37.528515625000026], + [149.809375, -37.54785156249997], + [149.70898437500003, -37.61699218750002], + [149.56542968749997, -37.72998046875004], + [149.480859375, -37.77119140625], + [149.29843750000012, -37.802148437499994], + [148.94394531250012, -37.788476562499966], + [148.2625, -37.830664062500034], + [148.13066406250007, -37.85605468749996], + [147.87675781250002, -37.93417968749998], + [147.63144531250006, -38.05566406249996], + [147.39560546875006, -38.21914062499995], + [146.8568359375, -38.663476562499966], + [146.4357421875001, -38.71181640624995], + [146.35625, -38.71181640624995], + [146.29257812500006, -38.69980468749999], + [146.21748046875004, -38.72744140625004], + [146.21621093750005, -38.782714843750014], + [146.28554687500005, -38.840234375], + [146.33662109375004, -38.89423828125], + [146.4269531250001, -38.81962890624999], + [146.46660156250007, -38.84033203125003], + [146.48164062500004, -38.977929687499994], + [146.4837890625, -39.06503906249998], + [146.45664062500006, -39.112304687500014], + [146.40000000000012, -39.14550781250003], + [146.34003906250004, -39.123828125000045], + [146.33203125000003, -39.07666015625003], + [146.254296875, -38.964453125], + [146.1583984375001, -38.86572265624996], + [146.06992187500006, -38.83408203124999], + [146.01816406250012, -38.867089843749966], + [145.93535156250002, -38.90175781250002], + [145.86552734375002, -38.77597656249998], + [145.79082031250007, -38.66699218749997], + [145.69189453124997, -38.65566406249998], + [145.60634765625005, -38.656835937500034], + [145.53535156250004, -38.60966796875002], + [145.39726562500002, -38.53535156249998], + [145.42421875, -38.477343749999974], + [145.46279296875005, -38.416308593749974], + [145.54218750000004, -38.39384765625002], + [145.51835937500007, -38.31142578125001], + [145.4757812500001, -38.24375], + [145.36640625000004, -38.225683593750034], + [145.29277343750002, -38.237597656249974], + [145.24892578125, -38.29121093749998], + [145.19121093750002, -38.383593749999974], + [144.95957031250012, -38.500781250000045], + [144.84726562500006, -38.43632812500006], + [144.71777343749997, -38.34033203125004], + [144.78027343749997, -38.347363281250054], + [144.91142578125007, -38.34404296874999], + [145.02011718750006, -38.25839843750005], + [145.06699218750006, -38.204882812499974], + [145.11992187500007, -38.091308593750014], + [145.04960937500007, -38.01093749999998], + [144.98486328125003, -37.95224609375002], + [144.89130859375004, -37.899804687499994], + [144.5384765625, -38.07714843749997], + [144.46533203125003, -38.1025390625], + [144.39550781250003, -38.13691406249998], + [144.51777343750004, -38.16640624999995], + [144.58945312500012, -38.15761718750002], + [144.6652343750001, -38.20996093750003], + [144.5436523437501, -38.28408203124995], + [144.44785156250012, -38.30371093750004], + [144.32871093750006, -38.34824218749996], + [144.10156249999997, -38.46230468750002], + [143.8117187500001, -38.69882812499998], + [143.68671875000004, -38.76689453124999], + [143.53896484375005, -38.82089843749998], + [143.33847656250006, -38.7578125], + [143.22646484375, -38.74316406250004], + [143.08261718750006, -38.64589843750002], + [142.840234375, -38.58085937500002], + [142.61210937500007, -38.451660156249986], + [142.45585937500002, -38.386328125], + [142.34453125000007, -38.372167968750034], + [142.1876953125001, -38.3994140625], + [141.92470703125, -38.28378906249998], + [141.725, -38.27138671875002], + [141.5939453125001, -38.38779296875002], + [141.49179687500006, -38.379785156249994], + [141.42421875, -38.36347656250004], + [141.21386718750003, -38.17197265625002], + [141.0109375000001, -38.07695312500003], + [140.62724609375007, -38.02841796874999], + [140.39042968750007, -37.89667968749998], + [140.21210937500004, -37.6421875], + [139.87480468750007, -37.35205078124996], + [139.78427734375012, -37.24580078124998], + [139.74228515625006, -37.141699218750006], + [139.7384765625001, -37.05957031249997], + [139.78388671875004, -36.902636718749974], + [139.84658203125, -36.748046875000014], + [139.85732421875, -36.662109375], + [139.72900390625003, -36.37138671875002], + [139.54873046875, -36.0966796875], + [139.46591796875006, -36.010351562500006], + [139.24492187500002, -35.827343750000026], + [139.03769531250006, -35.68925781249996], + [138.9850585937501, -35.617578125], + [138.9689453125001, -35.58076171874997], + [139.06689453124997, -35.59843750000002], + [139.1125, -35.54228515625003], + [139.17802734375007, -35.52304687500002], + [139.23056640625012, -35.59765625000003], + [139.289453125, -35.61132812499997], + [139.29208984375012, -35.4859375], + [139.32509765625, -35.42666015625001], + [139.30253906250002, -35.39941406249997], + [139.28251953125002, -35.375390624999966], + [139.19277343750005, -35.347265625], + [139.09375, -35.38955078125001], + [139.01767578125006, -35.44326171875002], + [138.9152343750001, -35.48886718749999], + [138.87529296875002, -35.53681640624998], + [138.77099609374997, -35.53837890625003], + [138.72968750000004, -35.550781249999986], + [138.521875, -35.6423828125], + [138.38925781250012, -35.644726562500026], + [138.184375, -35.612695312499994], + [138.2521484375001, -35.48652343750004], + [138.33291015625, -35.41171875], + [138.39980468750005, -35.32578124999998], + [138.5111328125, -35.02441406249996], + [138.48994140625004, -34.76357421875002], + [138.4362304687501, -34.65625], + [138.2643554687501, -34.44033203124998], + [138.18623046875004, -34.307226562500034], + [138.0892578125, -34.16982421875002], + [138.04130859375002, -34.249804687499974], + [138.01230468750006, -34.334082031250006], + [137.91923828125002, -34.456054687499986], + [137.87412109375006, -34.72744140625002], + [137.69169921875002, -35.14296875000004], + [137.56640624999997, -35.148046875], + [137.45957031250006, -35.131347656249986], + [137.27236328125005, -35.17871093750004], + [137.14443359375, -35.23642578124998], + [137.02988281250012, -35.2365234375], + [136.96660156250002, -35.254882812500014], + [136.88359375000007, -35.23974609375004], + [137.01425781250012, -34.91582031250003], + [137.12841796875003, -34.92470703124998], + [137.25205078125006, -34.911523437499966], + [137.30839843750002, -34.916992187500014], + [137.39101562500005, -34.91328124999997], + [137.45429687500004, -34.76445312500002], + [137.49296875000002, -34.59775390624999], + [137.46855468750002, -34.490234375000014], + [137.45898437499997, -34.378906249999986], + [137.4835937500001, -34.25214843750001], + [137.49384765625004, -34.16113281250003], + [137.65039062499997, -33.85908203125004], + [137.78085937500006, -33.70312], + [137.9318359375001, -33.57910156250003], + [137.91396484375, -33.461328125], + [137.86601562500002, -33.314062500000034], + [137.85234375000007, -33.20078124999996], + [137.92431640624997, -33.16513671874998], + [137.99257812500005, -33.094238281250014], + [137.91318359375012, -32.770703125], + [137.86308593750002, -32.673730468749966], + [137.78320312500003, -32.578125], + [137.78183593750012, -32.70195312500003], + [137.79091796875, -32.82324218749996], + [137.68017578124997, -32.97802734374996], + [137.53623046875006, -33.08916015624996], + [137.44228515625, -33.1935546875], + [137.3541992187501, -33.43017578124997], + [137.23730468750003, -33.62949218749999], + [137.13027343750005, -33.703027343749966], + [137.03447265625007, -33.71953125000003], + [136.93652343750003, -33.75019531249998], + [136.78349609375002, -33.8296875], + [136.63554687500007, -33.89658203124996], + [136.52587890625003, -33.984179687500045], + [136.43066406249997, -34.02998046875004], + [136.12109374999997, -34.428710937500014], + [135.97968750000004, -34.561914062499966], + [135.95058593750005, -34.61572265625], + [135.891015625, -34.660937499999974], + [135.90263671875007, -34.723828125], + [135.95058593750005, -34.76679687499997], + [135.99853515624997, -34.94375], + [135.96972656249997, -34.98183593749998], + [135.91914062500004, -34.961914062500014], + [135.7923828125, -34.863281249999986], + [135.7125, -34.89921875000003], + [135.64755859375006, -34.93964843750001], + [135.480859375, -34.758203125], + [135.41171875000006, -34.71552734375], + [135.32421874999997, -34.64267578124999], + [135.23066406250004, -34.57978515624997], + [135.1908203125, -34.57265625000002], + [135.12304687499997, -34.58574218750003], + [135.12958984375004, -34.53652343750004], + [135.1759765625001, -34.496582031249986], + [135.21679687499997, -34.48730468749996], + [135.29248046875003, -34.545605468750026], + [135.37871093750007, -34.59765624999997], + [135.42734375000012, -34.60195312500004], + [135.45, -34.58105468749996], + [135.36796875000002, -34.37558593750002], + [135.31201171874997, -34.19550781250001], + [135.2863281250001, -34.14228515625001], + [135.21894531250004, -33.959765625000045], + [135.18544921875005, -33.906738281249986], + [135.04208984375006, -33.777734375], + [134.88876953125012, -33.62636718749998], + [134.84667968749997, -33.44462890624999], + [134.79101562499997, -33.32832031250001], + [134.71904296875007, -33.25517578125003], + [134.60771484375002, -33.19013671875001], + [134.30126953124997, -33.16503906249996], + [134.17353515625004, -32.979101562500006], + [134.10039062500007, -32.748632812500034], + [134.15839843750004, -32.73339843749996], + [134.22714843750006, -32.73056640624999], + [134.2492187500001, -32.658691406250014], + [134.23417968750007, -32.54853515625004], + [133.93017578125003, -32.41171874999996], + [133.78671875000012, -32.26884765624999], + [133.66533203125007, -32.207226562500054], + [133.55136718750012, -32.182910156249974], + [133.40058593750004, -32.18847656249996], + [133.21210937500004, -32.18378906249998], + [132.75742187500012, -31.95625], + [132.64863281250004, -31.94931640624999], + [132.3236328125, -32.020019531250014], + [132.21464843750002, -32.00712890624996], + [131.72119140625003, -31.696289062499957], + [131.39316406250006, -31.54853515624997], + [131.28496093750007, -31.520996093749957], + [131.14365234375006, -31.49570312500005], + [131.02929687500003, -31.531835937500034], + [130.94814453125, -31.565820312500023], + [130.78300781250002, -31.604003906249986], + [130.12978515625, -31.579101562499986], + [129.56884765624997, -31.627246093750017], + [129.1876953125001, -31.659960937500017], + [128.94619140625, -31.702636718750014], + [128.54609375000004, -31.88769531249997], + [128.06767578125002, -32.06650390624998], + [127.67802734375002, -32.15126953125002], + [127.31982421874997, -32.2640625], + [127.08408203125006, -32.296875], + [126.77929687499997, -32.31093750000004], + [126.13652343750002, -32.25683593750003], + [125.91718750000004, -32.296972656250034], + [125.56748046875012, -32.50585937499996], + [125.46367187500002, -32.55654296874998], + [125.26660156250003, -32.61445312499997], + [124.75878906250003, -32.882714843749994], + [124.5246093750001, -32.94013671874997], + [124.3732421875001, -32.958398437499966], + [124.24375, -33.015234375], + [124.12607421875006, -33.129394531249986], + [123.96718750000005, -33.44628906249997], + [123.8683593750001, -33.59638671875], + [123.65039062499997, -33.83632812500002], + [123.50683593749997, -33.916210937500054], + [123.36542968750004, -33.90537109374998], + [123.20761718750012, -33.988281249999986], + [123.0675781250001, -33.90058593749997], + [122.95566406250012, -33.883789062500014], + [122.7775390625001, -33.890820312500026], + [122.15097656250006, -33.991796875], + [122.06113281250006, -33.874414062499966], + [121.94638671875012, -33.85673828125002], + [121.72968750000004, -33.8625], + [121.40507812500007, -33.826757812500034], + [120.81455078125012, -33.87128906250004], + [120.53056640625007, -33.91972656249996], + [120.41835937500005, -33.96308593750001], + [120.209375, -33.935449218749966], + [119.85410156250012, -33.97470703124998], + [119.72910156250012, -34.04150390625], + [119.63515625, -34.10117187499998], + [119.45058593750005, -34.368261718750034], + [119.24765625000012, -34.45644531249998], + [119.08134765625007, -34.459375], + [118.89531250000007, -34.47988281250004], + [118.52011718750012, -34.73710937499996], + [118.13554687500002, -34.98662109374999], + [118.00644531250012, -35.01328125], + [117.86308593750002, -35.05498046874996], + [117.67539062500006, -35.074902343750026], + [117.58193359375005, -35.09775390624998], + [117.1439453125, -35.033691406249986], + [116.8654296875001, -35.02656250000004], + [116.51718750000012, -34.98789062499998], + [116.21708984375007, -34.86582031249998], + [115.98671875000005, -34.795019531250034], + [115.7262695312501, -34.52607421875004], + [115.56503906250012, -34.42578125000003], + [115.27763671875007, -34.30390624999998], + [115.19482421874997, -34.30849609375004], + [115.12792968749997, -34.34179687499997], + [115.00878906250003, -34.25585937499997], + [115.00566406250002, -34.14511718749996], + [114.97343750000002, -34.051171875], + [114.97568359375012, -33.80419921874997], + [114.9938476562501, -33.51533203125], + [115.09892578125007, -33.5802734375], + [115.18164062499997, -33.643457031249994], + [115.3587890625, -33.63994140624999], + [115.5153320312501, -33.53134765624998], + [115.60449218749997, -33.37226562499998], + [115.68300781250005, -33.19287109375003], + [115.67089843749997, -33.0021484375], + [115.6185546875, -32.666992187500014], + [115.65429687499997, -32.596582031249966], + [115.70791015625, -32.56796875], + [115.72539062500007, -32.40107421875001], + [115.73808593750002, -31.88789062500001], + [115.6984375000001, -31.694531250000054], + [115.45458984374997, -31.30253906250003], + [115.2943359375, -30.961816406249994], + [115.17685546875006, -30.80800781250001], + [115.07792968750007, -30.560449218750023], + [114.99453125000005, -30.216210937499966], + [114.96884765625006, -30.042285156249974], + [114.9420898437501, -29.72158203125001], + [114.97138671875004, -29.539746093749997], + [114.95898437499997, -29.433593749999957], + [114.85683593750005, -29.14296875], + [114.62841796874997, -28.871777343749983], + [114.590625, -28.771679687500026], + [114.59179687499997, -28.666210937500026], + [114.53740234375007, -28.542871093750037], + [114.35351562500003, -28.29492187499997], + [114.16513671875012, -28.08066406250002], + [114.13349609375004, -27.976464843750023], + [114.09843750000002, -27.544238281249974], + [114.028125, -27.347265625], + [113.709375, -26.84775390625002], + [113.33300781250003, -26.41738281250001], + [113.23105468750006, -26.24140625000004], + [113.18476562500004, -26.182226562499963], + [113.21074218750007, -26.174218750000023], + [113.253125, -26.197265625000014], + [113.30009765625007, -26.24023437499997], + [113.32324218749997, -26.243847656249997], + [113.34531250000006, -26.208300781250045], + [113.34287109375006, -26.12607421874999], + [113.35605468750012, -26.080468750000023], + [113.38896484375007, -26.105566406249977], + [113.4274414062501, -26.19804687499999], + [113.54658203125004, -26.43671875000004], + [113.58164062500006, -26.558105468749986], + [113.73369140625002, -26.59511718749998], + [113.78037109375006, -26.563281249999974], + [113.83642578125003, -26.50058593749999], + [113.85283203125007, -26.33212890625005], + [113.77578125, -26.255957031249977], + [113.7064453125, -26.22363281249997], + [113.58906250000004, -26.098632812499986], + [113.5133789062501, -25.898339843750037], + [113.39531250000002, -25.71328125], + [113.39736328125, -25.647167968750026], + [113.4513671875001, -25.599121093750014], + [113.539453125, -25.625195312499997], + [113.62119140625012, -25.73164062500001], + [113.7130859375001, -25.83076171875004], + [113.69785156250012, -26.00419921875003], + [113.68359374999997, -26.05166015625001], + [113.69169921875002, -26.091699218749994], + [113.72373046875006, -26.129785156250037], + [113.7658203125001, -26.159765625], + [113.81181640625007, -26.115820312500034], + [113.85390625, -26.01445312499999], + [113.87988281249997, -26.027636718750003], + [113.94238281250003, -26.25869140625001], + [113.99199218750007, -26.32148437500001], + [114.09033203124997, -26.393652343749963], + [114.1759765625001, -26.3375], + [114.21572265625, -26.289453124999966], + [114.20332031250004, -26.12636718750005], + [114.22851562500003, -25.96875], + [114.2142578125, -25.851562500000014], + [113.99277343750006, -25.544824218749966], + [113.7923828125, -25.165722656249997], + [113.67080078125, -24.97705078125003], + [113.56923828125, -24.692968749999963], + [113.50351562500012, -24.59462890625001], + [113.41767578125004, -24.435644531250034], + [113.41298828125, -24.254003906249977], + [113.4212890625, -24.13232421874997], + [113.48984375000012, -23.869628906250014], + [113.5529296875001, -23.732812500000023], + [113.7570312500001, -23.418164062500054], + [113.7669921875, -23.28251953125003], + [113.7648437500001, -23.18046875000003], + [113.79492187499997, -23.02363281249997], + [113.79511718750004, -22.91455078125003], + [113.76787109375007, -22.812890625000023], + [113.68281250000004, -22.637792968749963], + [113.79501953125012, -22.332128906250034], + [113.9583984375, -21.93916015625001], + [114.02285156250005, -21.881445312499977], + [114.12392578125005, -21.828613281249957], + [114.14257812500003, -21.909765624999963], + [114.09277343750003, -22.18134765624997], + [114.16386718750002, -22.32333984375002], + [114.14160156250003, -22.483105468749983], + [114.20517578125006, -22.455859375000017], + [114.30351562500002, -22.425390625000034], + [114.37773437500007, -22.341503906249997], + [114.41699218749997, -22.26103515625003], + [114.60283203125002, -21.9421875], + [114.70927734375002, -21.82343749999997], + [114.85908203125004, -21.7359375], + [115.16171875000006, -21.630566406250026], + [115.45615234375012, -21.49169921874997], + [115.59609375000005, -21.358105468750026], + [115.77148437499997, -21.242285156249963], + [115.89355468749997, -21.116699218749957], + [116.0109375000001, -21.030371093749963], + [116.60585937500005, -20.713378906250043], + [116.7067382812501, -20.653808593749986], + [116.836328125, -20.647070312500034], + [116.99531250000004, -20.65761718750005], + [117.13906250000005, -20.640917968750017], + [117.29277343750002, -20.713085937499983], + [117.40625, -20.72119140625003], + [117.68388671875002, -20.64277343750004], + [117.83232421875007, -20.57255859375003], + [118.08730468750005, -20.41904296875002], + [118.19921875000003, -20.37519531249997], + [118.45830078125002, -20.32666015625003], + [118.75146484374997, -20.261914062499983], + [119.10449218749997, -19.995312500000026], + [119.3587890625, -20.012304687500034], + [119.58593750000003, -20.03828125], + [119.7677734375001, -19.958398437499966], + [120.19628906250003, -19.909472656250045], + [120.43369140625006, -19.84199218749997], + [120.87841796874997, -19.665039062499986], + [120.99794921875, -19.604394531249966], + [121.17978515625006, -19.477929687499966], + [121.33769531250002, -19.31992187500002], + [121.49355468750005, -19.106445312499957], + [121.58945312500006, -18.915136718749977], + [121.63066406250002, -18.81660156249997], + [121.72197265625007, -18.65996093750003], + [121.7848632812501, -18.53593749999999], + [121.83378906250002, -18.477050781249986], + [122.00625, -18.393652343749963], + [122.26210937500005, -18.159082031250037], + [122.34541015625004, -18.11191406250002], + [122.36093750000012, -18.036914062500017], + [122.30576171875006, -17.99492187499999], + [122.23740234375006, -17.968554687500045], + [122.19130859375, -17.7203125], + [122.14746093749997, -17.54902343750001], + [122.14316406250006, -17.42841796875004], + [122.16025390625006, -17.313671875000026], + [122.2609375000001, -17.135742187500014], + [122.33271484375004, -17.059375], + [122.43203125000005, -16.970410156249997], + [122.52255859375006, -16.942871093749986], + [122.59794921875007, -16.864941406249997], + [122.72041015625004, -16.78769531249999], + [122.77207031250012, -16.71015625], + [122.84804687500005, -16.552441406250026], + [122.91679687500002, -16.43261718750003], + [122.97070312499997, -16.436816406250003], + [123.07441406250004, -16.715332031249986], + [123.14208984374997, -16.863085937499974], + [123.26591796875002, -17.036816406250026], + [123.383203125, -17.29277343750003], + [123.47880859375002, -17.409960937500017], + [123.52519531250007, -17.485742187499994], + [123.56308593750006, -17.520898437499966], + [123.5714843750001, -17.472265625], + [123.56181640625007, -17.41542968749998], + [123.60791015624997, -17.219921875000026], + [123.586328125, -17.082714843750054], + [123.59355468750007, -17.03037109375005], + [123.61767578124997, -17.008300781249986], + [123.66406250000003, -17.023242187500017], + [123.75380859375, -17.099804687499983], + [123.7990234375001, -17.12714843750004], + [123.83105468750003, -17.120800781249997], + [123.8294921875, -16.99687], + [123.8744140625, -16.918652343750026], + [123.85634765625005, -16.864746093749957], + [123.778125, -16.867773437499963], + [123.74501953125, -16.800976562500026], + [123.68046875000007, -16.723632812499986], + [123.60712890625004, -16.668066406250034], + [123.51796875, -16.540722656250026], + [123.4904296875001, -16.49072265624997], + [123.52509765625004, -16.46757812499996], + [123.58134765625007, -16.47089843750001], + [123.62597656249997, -16.416308593750003], + [123.64648437499997, -16.343066406250003], + [123.60703125000006, -16.224023437499994], + [123.64746093750003, -16.17988281249997], + [123.72890625, -16.192480468749963], + [123.85917968750007, -16.38232421875], + [123.91523437500004, -16.363574218750003], + [123.961328125, -16.286914062500017], + [124.04443359374997, -16.264941406249974], + [124.12978515625005, -16.278808593749957], + [124.18603515624997, -16.33359375000002], + [124.30039062500006, -16.388281249999977], + [124.45273437500012, -16.382031250000026], + [124.52998046875004, -16.39521484374997], + [124.69238281249997, -16.38613281249998], + [124.77197265624997, -16.40263671874996], + [124.75703125000004, -16.37333984375003], + [124.66923828125007, -16.33876953125001], + [124.57031249999997, -16.331835937500017], + [124.45449218750005, -16.335253906250003], + [124.40488281250006, -16.298925781249977], + [124.38828125000006, -16.20302734374998], + [124.41640625, -16.133496093750026], + [124.43457031249997, -16.103808593750017], + [124.50996093750004, -16.11630859374999], + [124.5768554687501, -16.11367187499998], + [124.58505859375006, -16.02011718750002], + [124.6085937500001, -15.9375], + [124.64853515625012, -15.870214843750034], + [124.64833984375, -15.805468749999989], + [124.60664062500004, -15.822656250000023], + [124.50429687500005, -15.972460937499989], + [124.4552734375001, -15.850585937500028], + [124.38164062500002, -15.758203125000037], + [124.39658203125006, -15.625878906249994], + [124.43955078125012, -15.493554687500037], + [124.50566406250007, -15.475390624999974], + [124.56162109375012, -15.496289062499969], + [124.64433593750007, -15.418847656250009], + [124.69091796874997, -15.359667968750031], + [124.68017578124997, -15.311035156249972], + [124.69257812500004, -15.273632812499997], + [124.75048828125003, -15.285253906249963], + [124.97207031250005, -15.404296874999972], + [125.01640625000002, -15.466503906250026], + [125.06298828125003, -15.44228515624998], + [125.07792968750002, -15.374511718750028], + [125.0729492187501, -15.306738281249991], + [125.02402343750006, -15.316992187500034], + [124.90917968750003, -15.310058593749957], + [124.88271484375005, -15.271972656250014], + [124.89267578125012, -15.240527343750003], + [124.83906250000004, -15.160742187500006], + [124.91416015625006, -15.109960937499963], + [124.97871093750004, -15.106640625], + [125.02333984375, -15.071875], + [125.02402343750006, -15.024414062500028], + [125.03818359375012, -15.004101562499969], + [125.0729492187501, -15.032324218750034], + [125.18867187500004, -15.045410156249957], + [125.30234375000012, -15.106835937500037], + [125.35566406250004, -15.119824218750011], + [125.37558593750012, -15.086816406250037], + [125.38378906249997, -15.015625], + [125.24326171875006, -14.944531250000011], + [125.2394531250001, -14.874609374999977], + [125.18037109375004, -14.794042968749991], + [125.17871093749997, -14.714746093749994], + [125.26650390625, -14.648437499999986], + [125.28457031250005, -14.58408203125002], + [125.33544921875003, -14.557910156250017], + [125.43593750000005, -14.556835937499983], + [125.50371093750002, -14.50224609374996], + [125.57978515625004, -14.483203124999989], + [125.5983398437501, -14.361621093750003], + [125.5970703125, -14.278125], + [125.62773437500002, -14.256640625000017], + [125.70458984374997, -14.29140625], + [125.68125000000012, -14.38798828124996], + [125.68095703125007, -14.480175781249997], + [125.66162109375003, -14.529492187500011], + [125.69052734375006, -14.525390624999972], + [125.70839843750005, -14.504882812499972], + [125.73847656250004, -14.444335937499972], + [125.81953125000004, -14.469140624999966], + [125.83955078125004, -14.533886718750011], + [125.85009765624997, -14.597265624999963], + [125.89062, -14.61796875], + [125.94609375000007, -14.520410156250023], + [126.0207031250001, -14.49453125], + [126.01660156249997, -14.371289062500011], + [126.04482421875, -14.283007812499974], + [126.05361328125005, -14.216699218749966], + [126.10087890625007, -14.184375], + [126.11132812499997, -14.114062500000017], + [126.0734375000001, -14.065527343749991], + [126.0539062500001, -13.977246093750026], + [126.11904296875005, -13.957714843750054], + [126.1842773437501, -14.00205078125002], + [126.2282226562501, -14.113378906249963], + [126.25849609375004, -14.163574218749972], + [126.29882812499997, -14.13623046875], + [126.32304687500002, -14.062109375], + [126.403125, -14.018945312499994], + [126.48242187499997, -14.07890625], + [126.5697265625, -14.160937499999974], + [126.6791015625, -14.089355468749957], + [126.7806640625, -13.955175781249977], + [126.76445312500007, -13.873046875000028], + [126.77558593750004, -13.788476562500037], + [126.90322265625, -13.744140624999972], + [127.0060546875001, -13.776757812500037], + [127.09921875000006, -13.867382812500026], + [127.29306640625012, -13.934765625], + [127.45761718750006, -14.031445312499969], + [127.53105468750002, -14.094628906249966], + [127.67285156249997, -14.195117187500003], + [127.76347656250002, -14.299414062500034], + [127.88759765625, -14.485156250000031], + [128.18046875000007, -14.711621093749983], + [128.19941406250004, -14.751757812499989], + [128.15986328125004, -14.827343750000026], + [128.1244140625, -14.924121093750017], + [128.08046875000005, -15.087988281250006], + [128.06943359375012, -15.329296874999969], + [128.11171875, -15.31201171875], + [128.15546875000004, -15.225585937499972], + [128.20175781250006, -15.24335937500004], + [128.25468750000002, -15.298535156250011], + [128.2589843750001, -15.245605468749972], + [128.2272460937501, -15.213574218750011], + [128.17294921875006, -15.102246093749983], + [128.175, -15.043164062500026], + [128.21835937500006, -14.995703125000034], + [128.28515624999997, -14.938867187500009], + [128.35820312500002, -14.901660156249974], + [128.40322265625, -14.869140625000014], + [128.4098632812501, -14.828906249999989], + [128.47744140625, -14.787988281249994], + [128.57578125000006, -14.774511718750006], + [128.63554687500007, -14.780957031249983], + [129.05820312500012, -14.884375], + [129.16513671875012, -14.987597656249989], + [129.17519531250005, -15.115039062500017], + [129.21582031249997, -15.160253906249991], + [129.23789062500012, -15.08017578125002], + [129.23359375000004, -14.906054687499989], + [129.26757812500003, -14.871484375000051], + [129.38125, -14.898437500000028], + [129.45898437499997, -14.933203125], + [129.56708984375004, -15.04736328125], + [129.58769531250007, -15.103320312500031], + [129.63476562499997, -15.139746093749991], + [129.65029296875, -15.086816406250037], + [129.62822265625007, -15.011816406250034], + [129.6126953125, -14.92587890625002], + [129.637109375, -14.850976562500037], + [129.76347656250007, -14.845019531249989], + [129.84873046875012, -14.828906249999989], + [129.80839843750007, -14.799707031249994], + [129.75351562500006, -14.789550781249957], + [129.66298828125005, -14.720898437500011], + [129.60468750000004, -14.647070312499977], + [129.6986328125, -14.575292968750006], + [129.69794921875004, -14.557421875000017], + [129.60791015625003, -14.55966796875002], + [129.48388671874997, -14.489746093749986], + [129.37871093750002, -14.39248046874998], + [129.4591796875001, -14.21347656250002], + [129.61962890624997, -14.03837890624996], + [129.70986328125, -13.979980468749972], + [129.71835937500012, -13.920898437500014], + [129.76171874999997, -13.811914062500009], + [129.7892578125001, -13.719921875000011], + [129.79716796875002, -13.648437500000014], + [129.83886718749997, -13.572949218749997], + [129.937890625, -13.50166015625004], + [130.07265625, -13.476171875], + [130.13593750000004, -13.44833984375002], + [130.19931640625006, -13.382617187500031], + [130.25976562500003, -13.30224609375], + [130.1349609375001, -13.145507812499957], + [130.14531250000007, -13.059179687499963], + [130.1681640625001, -12.957421875], + [130.31796875000006, -12.88291015625002], + [130.39990234374997, -12.687890625], + [130.45419921875012, -12.658593749999966], + [130.57187500000012, -12.664355468749989], + [130.61748046875007, -12.646875], + [130.60957031250004, -12.491308593749991], + [130.62265625000006, -12.43105468749998], + [130.67236328124997, -12.40693359375004], + [130.73613281250007, -12.427734375000014], + [130.77656250000004, -12.495312500000011], + [130.8673828125001, -12.557812499999955], + [130.89824218750007, -12.523632812500011], + [130.88291015625006, -12.455078124999986], + [130.87382812500007, -12.367187500000028], + [130.95664062500006, -12.348242187499977], + [131.02343749999997, -12.342871093749949], + [131.03007812500002, -12.27109375], + [131.01953124999997, -12.213867187499957], + [131.04570312500002, -12.189648437499997], + [131.21992187500004, -12.177929687500011], + [131.26542968750002, -12.119042968750009], + [131.29160156250006, -12.067871093749972], + [131.31376953125007, -12.095898437499997], + [131.34208984375007, -12.210058593749991], + [131.43828125000002, -12.27695312500002], + [131.7262695312501, -12.278125], + [131.88798828125002, -12.23193359375], + [131.95673828125004, -12.259277343749972], + [132.06406250000006, -12.28076171875], + [132.1823242187501, -12.226953124999966], + [132.25322265625007, -12.186035156249972], + [132.37207031250003, -12.239160156249966], + [132.41103515625, -12.295117187499997], + [132.4416015625001, -12.176367187499963], + [132.51054687500002, -12.134863281250034], + [132.58378906250002, -12.110253906249994], + [132.67636718750012, -12.13007812500004], + [132.71279296875, -12.1234375], + [132.63046875000012, -12.035156249999972], + [132.63525390625003, -11.9546875], + [132.62988281249997, -11.835839843749952], + [132.64472656250004, -11.72714843750002], + [132.67421875000005, -11.649023437499991], + [132.47519531250006, -11.491503906249974], + [132.27792968750012, -11.467675781249994], + [132.13359375000002, -11.500683593749969], + [132.07285156250006, -11.474707031250006], + [131.94462890625007, -11.34853515624998], + [131.82246093750004, -11.302441406249997], + [131.81181640625002, -11.27138671874998], + [131.96152343750006, -11.180859375000011], + [132.01855468749997, -11.196386718749977], + [132.10576171875002, -11.281152343750009], + [132.15546875000004, -11.311132812499991], + [132.19775390624997, -11.304980468749989], + [132.225, -11.23876953125], + [132.26269531249997, -11.204003906250023], + [132.33398437499997, -11.223535156249994], + [132.55732421875004, -11.366894531249983], + [132.6828125000001, -11.505566406249997], + [132.74707031249997, -11.468945312499997], + [132.8571289062501, -11.391113281249943], + [132.96103515625012, -11.407324218749963], + [133.02490234374997, -11.452832031249997], + [133.11435546875006, -11.62177734375004], + [133.18525390625004, -11.705664062499991], + [133.35615234375004, -11.728222656249969], + [133.44316406250002, -11.760351562500034], + [133.53320312499997, -11.816210937499946], + [133.6544921875001, -11.811328125000017], + [133.90419921875, -11.832031249999972], + [134.13945312500002, -11.940136718749969], + [134.23710937500002, -12.00771484374998], + [134.35107421874997, -12.02578125], + [134.4173828125, -12.052734375], + [134.53808593749997, -12.06083984374996], + [134.73027343750002, -11.984375], + [134.81640625000003, -12.054687499999957], + [134.8546875000001, -12.102539062500014], + [135.02968750000005, -12.19375], + [135.2179687500001, -12.221679687499957], + [135.35234375000002, -12.129199218750031], + [135.54873046875, -12.060644531250006], + [135.68554687499997, -11.956152343749949], + [135.7884765625, -11.907031249999974], + [135.88525390624997, -11.821679687499994], + [135.92246093750012, -11.825781250000034], + [135.84355468750002, -11.905468750000011], + [135.83398437500003, -11.950683593749986], + [135.89580078125002, -11.969531250000017], + [135.88945312500002, -11.992773437499949], + [135.80429687500012, -12.054785156249977], + [135.70253906250005, -12.151562499999969], + [135.70439453125007, -12.209863281250037], + [135.74394531250007, -12.241699218749943], + [135.79082031250002, -12.2275390625], + [135.85742187499997, -12.17851562499996], + [135.93779296875002, -12.152148437500003], + [136.00849609375004, -12.19140625], + [136.0314453125001, -12.330859374999989], + [136.08183593750007, -12.422460937500006], + [136.19267578125007, -12.43515625000002], + [136.26064453125, -12.433789062499997], + [136.32851562500005, -12.305566406249994], + [136.29189453125005, -12.196386718749949], + [136.24990234375, -12.173046875], + [136.27011718750006, -12.131640625], + [136.44335937499997, -11.951464843749974], + [136.5402343750001, -11.957617187499977], + [136.60976562500005, -12.133593749999946], + [136.7194335937501, -12.226464843749952], + [136.83642578124997, -12.219140624999966], + [136.89746093749997, -12.243554687499966], + [136.94746093750004, -12.34990234374996], + [136.53701171875, -12.784277343749991], + [136.51777343750004, -12.832812500000031], + [136.57304687500002, -12.91162109375], + [136.59433593750012, -13.003808593750051], + [136.46103515625006, -13.225195312500034], + [136.41191406250007, -13.236132812500031], + [136.36455078125002, -13.176367187500034], + [136.29414062500004, -13.137988281250031], + [136.23232421875, -13.164941406250009], + [136.16611328125006, -13.181054687500009], + [135.92734375000012, -13.304296874999977], + [135.92919921874997, -13.621582031249957], + [135.98955078125002, -13.81015625], + [135.95449218750005, -13.934863281250017], + [135.88339843750006, -14.15312], + [135.80634765625004, -14.234179687499974], + [135.74453125, -14.28662109375], + [135.53886718750002, -14.584960937500028], + [135.47324218750006, -14.65664062499998], + [135.40517578125005, -14.758203124999966], + [135.42802734375002, -14.855664062500026], + [135.4533203125001, -14.923144531250003], + [135.53076171874997, -15.000390625000023], + [135.83261718750006, -15.160156249999972], + [135.96953125000002, -15.270214843750011], + [136.20537109375002, -15.403417968749963], + [136.25927734374997, -15.49521484375002], + [136.29140625000005, -15.570117187500003], + [136.46191406249997, -15.655273437500028], + [136.58359375000006, -15.70654296875], + [136.61875000000012, -15.693359374999972], + [136.64414062500006, -15.675585937499989], + [136.67460937500002, -15.675390625000048], + [136.70488281250007, -15.685253906250011], + [136.70009765625, -15.751953125000014], + [136.6867187500001, -15.788476562499994], + [136.69814453125005, -15.834960937499957], + [136.78466796874997, -15.89423828125004], + [136.92265625000002, -15.892382812500017], + [137.00214843750004, -15.878320312499994], + [137.08984374999997, -15.941308593750037], + [137.16894531250003, -15.982128906250011], + [137.29931640625003, -16.06630859375001], + [137.52636718750003, -16.167089843750034], + [137.70371093750006, -16.233007812499963], + [137.91289062500007, -16.476562500000014], + [138.07158203125007, -16.61699218750003], + [138.24501953125005, -16.718359374999977], + [138.50566406250002, -16.789550781250014], + [138.62568359375004, -16.777832031250014], + [138.82031250000003, -16.860644531250017], + [139.00986328125006, -16.899316406249994], + [139.11035156250003, -17.0140625], + [139.14453124999997, -17.10107421874997], + [139.15410156250007, -17.167773437499974], + [139.2484375, -17.328613281249957], + [139.44052734375006, -17.380566406249983], + [139.6896484375001, -17.54072265625001], + [139.89453125000003, -17.611328125], + [139.9459960937501, -17.653613281250003], + [140.03583984375004, -17.702636718749957], + [140.2096679687501, -17.70439453124996], + [140.51113281250005, -17.62451171875003], + [140.64843750000003, -17.54375], + [140.83046875, -17.414453125000037], + [140.91582031250007, -17.192578125000054], + [140.9660156250001, -17.014550781250023], + [141.21914062500005, -16.646191406250026], + [141.29140625, -16.46347656250002], + [141.35566406250004, -16.221093750000023], + [141.41191406250007, -16.069531250000054], + [141.39316406250006, -15.904687500000037], + [141.45156250000005, -15.605273437499974], + [141.58144531250005, -15.195410156249963], + [141.62548828124997, -15.056640625000014], + [141.60351562500003, -14.85273437500004], + [141.52294921875003, -14.470117187499994], + [141.558984375, -14.337890624999957], + [141.59433593750006, -14.152832031250014], + [141.53544921875002, -14.018652343750034], + [141.48066406250004, -13.926757812499957], + [141.47255859375, -13.797558593750011], + [141.53417968750003, -13.553808593750006], + [141.58876953125, -13.425097656249989], + [141.64541015625, -13.259082031250003], + [141.61357421875002, -12.943457031250006], + [141.73457031250004, -12.833496093749986], + [141.78222656249997, -12.778710937500023], + [141.87578125000007, -12.778222656250009], + [141.9203125, -12.802929687499983], + [141.92978515625006, -12.73984375], + [141.89287109375007, -12.681347656249983], + [141.87832031250005, -12.613281249999972], + [141.85214843750012, -12.578710937500034], + [141.79453125000012, -12.566601562499969], + [141.74667968750006, -12.529394531250034], + [141.67773437500003, -12.491406250000011], + [141.68857421875012, -12.351074218750028], + [141.80576171875006, -12.080078124999972], + [141.87050781250005, -11.9755859375], + [141.91298828125, -12.019238281250011], + [141.96113281250004, -12.054296874999963], + [141.96777343749997, -11.976269531249969], + [141.95156250000005, -11.896191406249997], + [142.04052734374997, -11.631738281250023], + [142.13896484375002, -11.273242187500003], + [142.168359375, -10.946582031249974], + [142.32646484375002, -10.884179687499966], + [142.40683593750006, -10.802246093749972], + [142.45644531250005, -10.707324218749989], + [142.54482421875, -10.707324218749989], + [142.60507812500012, -10.748242187499983], + [142.56542968749997, -10.819433593750006], + [142.55273437500003, -10.874414062500023], + [142.723046875, -11.010449218750026], + [142.7796875, -11.115332031249977], + [142.80332031250012, -11.213964843750006], + [142.83681640625, -11.306933593750031], + [142.8529296875, -11.432226562499977], + [142.85058593749997, -11.632324218749972], + [142.87255859374997, -11.821386718750034], + [142.933984375, -11.880761718749952], + [142.9884765625001, -11.919042968750034], + [143.06640624999997, -11.924121093750003], + [143.17890625000004, -11.954492187499966] + ] + ], + [ + [ + [142.2748046875, -10.704785156250011], + [142.19140624999997, -10.762011718750031], + [142.13720703125003, -10.731933593749943], + [142.12548828125003, -10.668457031249986], + [142.1310546875001, -10.640625], + [142.19794921875004, -10.59199218750004], + [142.2748046875, -10.704785156250011] + ] + ], + [ + [ + [142.33896484375006, -10.192187500000031], + [142.27939453125012, -10.25419921874996], + [142.21621093750005, -10.235644531250003], + [142.19511718750002, -10.199316406249977], + [142.21875, -10.149414062500014], + [142.29873046875, -10.14042968749996], + [142.33896484375006, -10.192187500000031] + ] + ], + [ + [ + [142.16757812500006, -10.154101562500003], + [142.1419921875, -10.18125], + [142.09765624999997, -10.121777343749983], + [142.148828125, -10.051757812500014], + [142.19199218750006, -10.085253906250003], + [142.16757812500006, -10.154101562500003] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Austria", + "iso_a2": "AT", + "iso_a3": "AUT", + "iso_n3": "040", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [16.953125, 48.598828125], + [16.948828125, 48.58857421875], + [16.943359375, 48.550927734374994], + [16.90449218750001, 48.503515625], + [16.862695312500023, 48.44140625], + [16.86542968750001, 48.3869140625], + [16.97265625, 48.198095703125], + [17.06787109375, 48.083251953125], + [17.0859375, 48.03955078125], + [17.147363281250023, 48.00595703125], + [17.08906250000001, 47.963623046875], + [17.077734375, 47.90087890625], + [17.039941406250023, 47.872949218749994], + [17.030078125000017, 47.837109375], + [17.0458984375, 47.804541015625], + [17.04560546875001, 47.76376953125], + [17.06660156250001, 47.707568359374996], + [16.973437500000017, 47.6953125], + [16.862695312500023, 47.697265625], + [16.823046875000017, 47.693994140624994], + [16.785937500000017, 47.678662109375], + [16.74755859375, 47.686279296875], + [16.6474609375, 47.739013671875], + [16.590917968750006, 47.750537109374996], + [16.55097656250001, 47.747363281249996], + [16.52109375, 47.724462890625], + [16.469628906250023, 47.695068359375], + [16.421289062500023, 47.674462890624994], + [16.43212890625, 47.656298828124996], + [16.639746093750006, 47.60888671875], + [16.676562500000017, 47.536035156249994], + [16.636621093750023, 47.476611328124996], + [16.623046875, 47.447558593749996], + [16.57441406250001, 47.424658203125], + [16.514746093750006, 47.404541015625], + [16.44287109375, 47.39951171875], + [16.434375, 47.367431640625], + [16.46259765625001, 47.27314453125], + [16.439746093750017, 47.252734375], + [16.416894531250023, 47.2234375], + [16.438378906250023, 47.145898437499994], + [16.482812500000023, 47.140380859375], + [16.49267578125, 47.12265625], + [16.484765625000023, 47.091259765625], + [16.476953125000023, 47.057861328125], + [16.461230468750017, 47.0224609375], + [16.453417968750017, 47.006787109375], + [16.423925781250006, 46.996972656249994], + [16.331835937500017, 47.002197265625], + [16.252539062500006, 46.971923828125], + [16.093066406250017, 46.86328125], + [16.037207031250006, 46.84482421875], + [15.976855468750017, 46.8013671875], + [15.98046875, 46.705859375], + [15.972265625, 46.697216796875], + [15.957617187500006, 46.677636718749994], + [15.766894531250017, 46.711279296875], + [15.76025390625, 46.710742187499996], + [15.632617187500017, 46.6984375], + [15.545312500000023, 46.654638671875], + [15.439257812500017, 46.629638671875], + [15.216992187500011, 46.64296875], + [15.000683593750011, 46.6259765625], + [14.949414062500011, 46.613232421875], + [14.893261718750011, 46.605908203125], + [14.840625, 46.58046875], + [14.810546875, 46.544580078124994], + [14.756738281250023, 46.49912109375], + [14.68017578125, 46.463427734374996], + [14.596972656250017, 46.436083984374996], + [14.5771484375, 46.412939453125], + [14.5498046875, 46.399707031249996], + [14.503515625, 46.417041015624996], + [14.465917968750006, 46.41611328125], + [14.419921875, 46.4279296875], + [14.267285156250011, 46.440722656249996], + [14.099511718750023, 46.4619140625], + [14.019628906250006, 46.482177734375], + [13.928808593750006, 46.498193359374994], + [13.831347656250017, 46.51123046875], + [13.743945312500017, 46.514306640624994], + [13.7, 46.520263671875], + [13.490039062500017, 46.555566406249994], + [13.3515625, 46.557910156249996], + [13.16875, 46.57265625], + [12.805566406250023, 46.625878906249994], + [12.699804687500006, 46.6474609375], + [12.5986328125, 46.654101562499996], + [12.479199218750011, 46.672509765624994], + [12.38828125, 46.70263671875], + [12.330078125, 46.759814453124996], + [12.267968750000023, 46.835888671875], + [12.154101562500017, 46.93525390625], + [12.130761718750023, 46.984765625], + [12.16552734375, 47.028173828125], + [12.201269531250006, 47.060888671875], + [12.197167968750023, 47.075], + [12.16943359375, 47.08212890625], + [11.969531250000017, 47.039697265624994], + [11.775683593750017, 46.986083984375], + [11.699414062500011, 46.984667968749996], + [11.62548828125, 46.99658203125], + [11.527539062500011, 46.997412109375], + [11.433203125, 46.983056640624994], + [11.244433593750017, 46.97568359375], + [11.133886718750006, 46.936181640624994], + [11.0634765625, 46.859130859375], + [11.025097656250011, 46.79697265625], + [10.993261718750006, 46.777001953124994], + [10.92734375, 46.769482421875], + [10.828906250000017, 46.775244140625], + [10.759765625, 46.793310546875], + [10.689257812500017, 46.84638671875], + [10.579785156250011, 46.8537109375], + [10.479394531250023, 46.855126953124994], + [10.452832031250011, 46.86494140625], + [10.45458984375, 46.8994140625], + [10.414941406250023, 46.964404296874996], + [10.349414062500017, 46.984765625], + [10.179785156250006, 46.862353515624996], + [10.133496093750011, 46.851513671875], + [9.996875, 46.8853515625], + [9.877734375000017, 46.9376953125], + [9.864648437500023, 46.975976562499994], + [9.8453125, 47.007373046874996], + [9.745019531250023, 47.037109375], + [9.619921875000017, 47.057470703125], + [9.580273437500011, 47.057373046875], + [9.595703125, 47.075830078124994], + [9.610546875000011, 47.10712890625], + [9.601171875, 47.132080078125], + [9.571875, 47.15791015625], + [9.555761718750006, 47.185498046875], + [9.551074218750017, 47.212255859375], + [9.542187500000011, 47.234130859375], + [9.536816406250011, 47.254638671875], + [9.527539062500011, 47.270751953125], + [9.609082031250011, 47.391796875], + [9.625878906250023, 47.467041015625], + [9.554394531250011, 47.511132812499994], + [9.524023437500006, 47.52421875], + [9.548925781250006, 47.534033203125], + [9.650585937500011, 47.52587890625], + [9.715136718750017, 47.55078125], + [9.748925781250023, 47.575537109375], + [9.839160156250017, 47.552294921874996], + [9.971582031250023, 47.505322265625], + [10.034082031250023, 47.473583984375], + [10.059863281250017, 47.449072265625], + [10.07421875, 47.428515625], + [10.066308593750023, 47.393359375], + [10.096484375000017, 47.37958984375], + [10.158789062500006, 47.374267578125], + [10.200292968750006, 47.363427734374994], + [10.185742187500011, 47.3171875], + [10.183007812500023, 47.27880859375], + [10.240625, 47.284130859375], + [10.312792968750017, 47.313427734375], + [10.369140625, 47.366064453125], + [10.40390625, 47.4169921875], + [10.430371093750011, 47.541064453124996], + [10.439453125, 47.5515625], + [10.482812500000023, 47.541796875], + [10.65869140625, 47.547216796875], + [10.741601562500023, 47.52412109375], + [10.873046875, 47.52021484375], + [10.87060546875, 47.50078125], + [10.893945312500023, 47.470458984375], + [10.9521484375, 47.426708984375], + [10.980859375000023, 47.39814453125], + [11.0419921875, 47.393115234374996], + [11.136035156250017, 47.40888671875], + [11.191210937500017, 47.425195312499994], + [11.2119140625, 47.413623046874996], + [11.297949218750006, 47.42490234375], + [11.374121093750006, 47.460253906249996], + [11.392968750000023, 47.487158203125], + [11.469921875000011, 47.506103515625], + [11.573925781250011, 47.549755859375], + [11.716796875, 47.58349609375], + [12.185644531250006, 47.61953125], + [12.203808593750011, 47.646728515625], + [12.196875, 47.70908203125], + [12.209277343750017, 47.71826171875], + [12.268359375000017, 47.702734375], + [12.363183593750023, 47.68818359375], + [12.435742187500011, 47.66611328125], + [12.48291015625, 47.6373046875], + [12.526562500000011, 47.636132812499994], + [12.59423828125, 47.656298828124996], + [12.685839843750017, 47.669335937499994], + [12.771386718750023, 47.639404296875], + [12.796191406250017, 47.60703125], + [12.781152343750023, 47.5904296875], + [12.7828125, 47.56416015625], + [12.809375, 47.5421875], + [12.87890625, 47.5064453125], + [12.968066406250017, 47.47568359375], + [13.014355468750011, 47.478076171874996], + [13.031542968750017, 47.5080078125], + [13.047949218750006, 47.579150390624996], + [13.054101562500023, 47.655126953125], + [13.033593750000023, 47.69873046875], + [12.985546875000011, 47.709423828125], + [12.928125, 47.712841796875], + [12.897656250000011, 47.721875], + [12.908300781250006, 47.74580078125], + [12.954199218750006, 47.807763671874994], + [12.953515625000023, 47.890625], + [12.849902343750017, 47.984814453125], + [12.760058593750017, 48.075976562499996], + [12.760351562500006, 48.106982421874996], + [12.814257812500017, 48.16083984375], + [12.8974609375, 48.2037109375], + [13.082128906250006, 48.27509765625], + [13.140429687500017, 48.289941406249994], + [13.215234375000023, 48.301904296874994], + [13.322851562500006, 48.33125], + [13.374609375, 48.361376953124996], + [13.409375, 48.394140625], + [13.459863281250023, 48.56455078125], + [13.4716796875, 48.571826171874996], + [13.486621093750017, 48.581835937499996], + [13.675195312500023, 48.523046875], + [13.692187500000017, 48.532763671874996], + [13.723925781250017, 48.542382812499994], + [13.785351562500011, 48.587451171874996], + [13.798828125, 48.6216796875], + [13.797460937500006, 48.686425781249994], + [13.802929687500011, 48.747509765625], + [13.814746093750017, 48.766943359375], + [13.843164062500023, 48.75986328125], + [13.92431640625, 48.72802734375], + [13.98876953125, 48.692431640624996], + [14.049121093750017, 48.602490234375], + [14.189843750000023, 48.578564453125], + [14.367578125000023, 48.576220703124996], + [14.431054687500023, 48.616259765624996], + [14.488671875000023, 48.625537109374996], + [14.553906250000011, 48.613330078124996], + [14.691308593750023, 48.59921875], + [14.706640625, 48.671923828124996], + [14.785937500000017, 48.747363281249996], + [14.821875, 48.7740234375], + [14.922558593750011, 48.771386718749994], + [14.947363281250006, 48.827734375], + [14.97216796875, 48.983935546874996], + [14.993457031250017, 49.001123046874994], + [15.066796875000023, 48.997851562499996], + [15.139746093750006, 48.9693359375], + [15.16171875, 48.9462890625], + [15.199609375000023, 48.948144531249994], + [15.252734375000017, 48.9638671875], + [15.310937500000023, 48.974023437499994], + [15.402929687500006, 48.957373046875], + [15.599414062500017, 48.886376953124994], + [15.70078125, 48.86044921875], + [15.765039062500023, 48.8654296875], + [15.8251953125, 48.864453125], + [16.057226562500006, 48.754785156249994], + [16.219335937500006, 48.739404296874994], + [16.367285156250006, 48.73896484375], + [16.414843750000017, 48.7720703125], + [16.477929687500023, 48.800097656249996], + [16.543554687500006, 48.796240234375], + [16.600976562500023, 48.781884765624994], + [16.712695312500017, 48.734228515625], + [16.764453125000017, 48.722021484375], + [16.83320312500001, 48.714306640625], + [16.883691406250023, 48.7037109375], + [16.928320312500006, 48.620898437499996], + [16.953125, 48.598828125] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Azerbaijan", + "iso_a2": "AZ", + "iso_a3": "AZE", + "iso_n3": "031", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [45.15283203125003, 39.58266601562502], + [45.17255859375004, 39.57060546874996], + [45.252539062500006, 39.59545898437506], + [45.2882812500001, 39.565576171874994], + [45.34990234375002, 39.529882812500006], + [45.456835937500074, 39.494482421875006], + [45.610742187499994, 39.5498046875], + [45.68740234375005, 39.56406250000006], + [45.75048828125003, 39.56293945312501], + [45.78447265625002, 39.54560546875001], + [45.79648437500006, 39.488134765625034], + [45.78417968749997, 39.41723632812497], + [45.76630859375004, 39.37846679687499], + [45.798632812500074, 39.350195312500006], + [45.925, 39.28193359375004], + [45.977441406249994, 39.24389648437503], + [45.9518554687501, 39.178125], + [46.04589843749997, 39.01752929687498], + [46.07744140625002, 38.95488281250002], + [46.1144531250001, 38.877783203125034], + [45.921875, 38.907910156249955], + [45.575, 38.97280273437502], + [45.4796875000001, 39.00625], + [45.38925781250006, 39.09589843749998], + [45.33554687500006, 39.13916015625], + [45.255957031250006, 39.194677734375034], + [45.190625, 39.215625], + [45.14121093750006, 39.254296875], + [45.11308593750002, 39.311572265625045], + [45.071679687499994, 39.362890625], + [45.00019531250004, 39.42353515625001], + [44.838183593750074, 39.62910156249998], + [44.81718750000002, 39.65043945312496], + [44.7833984375001, 39.684667968750006], + [44.76826171875004, 39.70351562500005], + [44.86718750000003, 39.71914062500002], + [45.03164062500005, 39.76513671874997], + [45.07646484375002, 39.742822265624966], + [45.12460937500006, 39.69633789062499], + [45.14863281250004, 39.65659179687498], + [45.15283203125003, 39.58266601562502] + ] + ], + [ + [ + [45.0236328125001, 41.027246093749966], + [45.00205078125006, 41.015820312499955], + [44.969042968750074, 41.027246093749966], + [44.95888671875005, 41.052636718749994], + [44.96142578125003, 41.079248046874994], + [44.9943359375001, 41.085595703124966], + [45.02109375, 41.077978515625006], + [45.02871093750005, 41.053857421874994], + [45.0236328125001, 41.027246093749966] + ] + ], + [ + [ + [46.552148437499994, 41.812304687500045], + [46.57128906249997, 41.800097656250045], + [46.616015625000074, 41.80693359375002], + [46.690332031249994, 41.83134765625002], + [46.74931640625002, 41.812597656250006], + [46.82558593750005, 41.74340820312503], + [46.93085937500004, 41.67041015625], + [46.98779296875003, 41.62138671874996], + [47.01015625000005, 41.5875], + [47.06396484375003, 41.55468750000006], + [47.14257812500003, 41.51606445312501], + [47.2052734375001, 41.45561523437502], + [47.26113281250005, 41.315087890624994], + [47.31767578125002, 41.28242187500001], + [47.52060546875006, 41.22905273437496], + [47.59179687499997, 41.21811523437506], + [47.79101562499997, 41.19926757812502], + [47.861132812500074, 41.212744140625034], + [47.963671875000074, 41.33398437500003], + [48.05605468750005, 41.45869140625004], + [48.14228515625004, 41.48476562500002], + [48.29814453125002, 41.545019531250034], + [48.391406250000074, 41.60190429687498], + [48.43066406249997, 41.66333007812497], + [48.51865234375006, 41.77934570312499], + [48.572851562500006, 41.84448242187503], + [48.66464843750006, 41.78662109375006], + [48.8239257812501, 41.62958984375004], + [49.05087890625006, 41.37397460937501], + [49.10664062500004, 41.30170898437504], + [49.14326171875004, 41.21777343749997], + [49.17470703125005, 41.116113281249966], + [49.22646484375005, 41.026220703125034], + [49.45673828125004, 40.79985351562502], + [49.55615234374997, 40.71630859375006], + [49.71835937500006, 40.60810546875004], + [49.77597656250006, 40.583984375], + [49.85175781250004, 40.577197265625045], + [49.990625, 40.57680664062505], + [50.11914062499997, 40.53452148437506], + [50.18251953125005, 40.50478515625002], + [50.24804687499997, 40.46176757812506], + [50.30683593750004, 40.412207031250006], + [50.3659179687501, 40.279492187499955], + [50.143164062500006, 40.3232421875], + [49.91884765625005, 40.31640625000003], + [49.79199218749997, 40.28789062499999], + [49.66904296875006, 40.24902343749997], + [49.551171875, 40.19414062499999], + [49.477343750000074, 40.08725585937506], + [49.415136718750006, 39.83984375], + [49.3244140625001, 39.60834960937501], + [49.327539062499994, 39.50122070312503], + [49.36738281250004, 39.398388671874955], + [49.36279296875003, 39.349560546874955], + [49.32119140625005, 39.32890625000002], + [49.269335937500074, 39.28515624999997], + [49.199804687500006, 39.07265625000002], + [49.16533203125002, 39.03027343750003], + [49.12099609375005, 39.00390624999997], + [49.10869140625002, 39.02905273437503], + [49.11132812500003, 39.084716796875], + [49.013476562500074, 39.13398437500001], + [48.96171875000002, 39.07875976562502], + [48.92617187500005, 38.961767578125006], + [48.85449218750003, 38.83881835937501], + [48.850878906250074, 38.81533203125002], + [48.86875, 38.43549804687498], + [48.84033203124997, 38.437255859375], + [48.635546875000074, 38.39873046874996], + [48.59267578125005, 38.41108398437498], + [48.41738281250005, 38.58623046874996], + [48.38125, 38.60561523437502], + [48.305566406249994, 38.61347656250001], + [48.26132812500006, 38.64228515625001], + [48.22519531250006, 38.689208984375], + [48.20468750000006, 38.72412109375], + [48.02324218750002, 38.81904296874998], + [47.996484375, 38.85375976562503], + [47.99267578125003, 38.88427734375003], + [48.01933593750002, 38.911816406249955], + [48.05009765625002, 38.93500976562498], + [48.138574218749994, 38.958642578124994], + [48.24199218750002, 38.978955078124955], + [48.2750976562501, 38.99360351562501], + [48.292089843750006, 39.01884765624999], + [48.29101562499997, 39.05927734374998], + [48.2741210937501, 39.09912109375], + [48.12548828124997, 39.17163085937503], + [48.109179687500074, 39.20283203125001], + [48.10439453125005, 39.241113281249994], + [48.112890625, 39.281103515625034], + [48.13603515625002, 39.312353515625006], + [48.257226562499994, 39.35498046875], + [48.322167968749994, 39.39907226562502], + [48.28173828125003, 39.448339843750006], + [48.15107421875004, 39.56054687500006], + [47.995898437500074, 39.683935546875034], + [47.8922851562501, 39.68505859375], + [47.772851562499994, 39.64858398437505], + [47.581835937500074, 39.543359375], + [47.47617187500006, 39.49833984374999], + [47.33847656250006, 39.42387695312499], + [47.18837890625005, 39.340966796874994], + [47.06542968750003, 39.25288085937498], + [46.98886718750006, 39.18017578125], + [46.85253906250003, 39.14843750000003], + [46.78320312500003, 39.08740234375003], + [46.554785156250006, 38.904394531250034], + [46.490625, 38.90668945312498], + [46.48671875, 38.997460937499994], + [46.48984375, 39.069433593750006], + [46.47539062500002, 39.11088867187502], + [46.40146484375006, 39.16767578125004], + [46.400292968749994, 39.1921875], + [46.42031250000005, 39.207373046875034], + [46.477148437500006, 39.19819335937504], + [46.55, 39.20141601562497], + [46.584765625000074, 39.22368164062499], + [46.506640625000074, 39.298535156249955], + [46.437304687500074, 39.34853515625002], + [46.37841796874997, 39.382275390624955], + [46.36523437500003, 39.402490234374994], + [46.365136718749994, 39.41679687499999], + [46.3776367187501, 39.43388671874999], + [46.478125, 39.47509765625006], + [46.48808593750002, 39.512841796874994], + [46.48144531249997, 39.55517578125003], + [46.32167968750005, 39.617431640625], + [46.202050781249994, 39.59448242187503], + [46.094824218750006, 39.664453125], + [46.02587890624997, 39.71855468749999], + [45.93994140624997, 39.77656250000001], + [45.863183593749994, 39.808349609375], + [45.789648437500006, 39.88110351562497], + [45.6618164062501, 39.956201171874994], + [45.57978515625004, 39.9775390625], + [45.58095703125005, 39.98901367187503], + [45.595996093750074, 40.002832031249994], + [45.63017578125002, 40.01420898437502], + [45.8581054687501, 40.011279296875045], + [45.8859375000001, 40.024853515624955], + [45.90009765625004, 40.05708007812504], + [45.93125, 40.104687499999955], + [45.96757812500002, 40.17480468750003], + [45.96464843750002, 40.233789062499966], + [45.73574218750005, 40.32910156250003], + [45.5695312500001, 40.41684570312506], + [45.45439453125002, 40.532373046874966], + [45.37617187500004, 40.63808593750002], + [45.37890624999997, 40.67358398437506], + [45.40136718749997, 40.707128906250034], + [45.579394531250074, 40.80449218749999], + [45.59140625, 40.829736328124966], + [45.5875, 40.846923828125], + [45.52402343750006, 40.89672851562503], + [45.444238281249994, 40.947998046875], + [45.41914062500004, 40.985693359375034], + [45.36894531250002, 41.00488281250003], + [45.27343750000003, 41.00625], + [45.106054687500006, 41.06933593750003], + [45.07050781250004, 41.075585937499966], + [45.06259765625006, 41.08813476562503], + [45.070703125, 41.10083007812506], + [45.19023437500002, 41.12636718750002], + [45.188574218750006, 41.14741210937504], + [45.15234375000003, 41.175146484375006], + [45.08476562500002, 41.195458984374966], + [45.02294921874997, 41.24570312499998], + [45.001367187499994, 41.29096679687498], + [45.2171875, 41.423193359375006], + [45.28095703125004, 41.449560546875034], + [45.42226562500005, 41.42529296874997], + [45.715625, 41.33764648437497], + [45.69570312500005, 41.28901367187501], + [45.725488281249994, 41.26162109375002], + [45.79277343750002, 41.22441406249999], + [45.92197265625006, 41.186718749999955], + [46.03125, 41.16728515624999], + [46.086523437500006, 41.183837890625], + [46.17070312500002, 41.197851562500006], + [46.2799804687501, 41.15444335937505], + [46.380761718749994, 41.09931640625001], + [46.43095703125002, 41.077050781249994], + [46.457910156249994, 41.07021484375002], + [46.534375, 41.08857421875004], + [46.62636718750005, 41.15966796875006], + [46.66240234375002, 41.24550781250002], + [46.67255859375004, 41.28681640625001], + [46.61894531250002, 41.34375], + [46.50878906249997, 41.40556640624996], + [46.38496093750004, 41.459863281249994], + [46.30546875000002, 41.507714843749994], + [46.254687500000074, 41.602148437500034], + [46.20351562500005, 41.612597656250045], + [46.19052734375006, 41.624853515625034], + [46.18212890625003, 41.657080078125034], + [46.18427734375004, 41.70214843749997], + [46.20185546875004, 41.736865234375045], + [46.25185546875005, 41.75175781249996], + [46.302539062500074, 41.75708007812497], + [46.348242187500006, 41.790185546874966], + [46.40546875000004, 41.85507812500006], + [46.42988281250004, 41.890966796875006], + [46.537695312500006, 41.87041015624999], + [46.552148437499994, 41.812304687500045] + ], + [ + [45.47880859375002, 40.60698242187499], + [45.51435546875004, 40.59956054687498], + [45.55234375000006, 40.61606445312506], + [45.562304687500074, 40.64916992187506], + [45.53417968750003, 40.664013671874955], + [45.504492187500006, 40.664843750000045], + [45.47880859375002, 40.648339843749966], + [45.47880859375002, 40.60698242187499] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Burundi", + "iso_a2": "BI", + "iso_a3": "BDI", + "iso_n3": "108", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [30.553613281250023, -2.400097656250011], + [30.53369140625, -2.42626953125], + [30.441992187500006, -2.613476562500011], + [30.424218750000023, -2.6416015625], + [30.434375, -2.658886718750011], + [30.47333984375001, -2.6943359375], + [30.450488281250017, -2.753222656250003], + [30.441308593750023, -2.76904296875], + [30.42402343750001, -2.824023437500003], + [30.433496093750023, -2.87451171875], + [30.45556640625, -2.893164062500006], + [30.515039062500023, -2.917578125], + [30.604296875000017, -2.935253906250011], + [30.70947265625, -2.977246093750011], + [30.7802734375, -2.98486328125], + [30.796875, -3.01513671875], + [30.793554687500006, -3.0693359375], + [30.811132812500006, -3.116406250000011], + [30.811425781250023, -3.200585937500009], + [30.79023437500001, -3.274609375000011], + [30.68183593750001, -3.309375], + [30.626074218750006, -3.347363281250011], + [30.6109375, -3.366406250000011], + [30.624609375, -3.388671875], + [30.631933593750006, -3.418652343750011], + [30.529882812500006, -3.492480468750003], + [30.425, -3.5888671875], + [30.4, -3.65390625], + [30.37910156250001, -3.730761718750003], + [30.348437500000017, -3.77978515625], + [30.2685546875, -3.850488281250009], + [30.187109375, -3.992871093750011], + [30.14716796875001, -4.085351562500009], + [29.947265625, -4.307324218750011], + [29.76953125, -4.418066406250006], + [29.7177734375, -4.455859375], + [29.403222656250023, -4.449316406250006], + [29.379199218750017, -4.299707031250009], + [29.331347656250017, -4.095410156250011], + [29.223242187500006, -3.910839843750011], + [29.211816406250023, -3.833789062500003], + [29.216796875, -3.684960937500009], + [29.217187500000023, -3.475683593750006], + [29.210058593750006, -3.36328125], + [29.212304687500023, -3.28125], + [29.22607421875, -3.138671875], + [29.224414062500017, -3.053515625], + [29.153222656250023, -2.955273437500011], + [29.064746093750017, -2.850781250000011], + [29.0166015625, -2.799609375], + [29.01416015625, -2.75830078125], + [29.01435546875001, -2.72021484375], + [29.028613281250017, -2.66455078125], + [29.06318359375001, -2.6025390625], + [29.10205078125, -2.595703125], + [29.197558593750017, -2.620312500000011], + [29.29707031250001, -2.673046875000011], + [29.34980468750001, -2.79150390625], + [29.390234375, -2.80859375], + [29.463671875000017, -2.808398437500003], + [29.6513671875, -2.792773437500003], + [29.698046875000017, -2.794726562500003], + [29.78339843750001, -2.76640625], + [29.8681640625, -2.71640625], + [29.892578125, -2.664648437500006], + [29.912402343750017, -2.548632812500003], + [29.93017578125, -2.339550781250011], + [29.973437500000017, -2.337109375000011], + [30.091894531250006, -2.411523437500009], + [30.117285156250006, -2.416601562500006], + [30.14228515625001, -2.413964843750009], + [30.18330078125001, -2.377050781250006], + [30.233789062500023, -2.347070312500009], + [30.27099609375, -2.347851562500011], + [30.408496093750017, -2.31298828125], + [30.482226562500017, -2.376074218750006], + [30.52890625, -2.395605468750006], + [30.553613281250023, -2.400097656250011] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Belgium", + "iso_a2": "BE", + "iso_a3": "BEL", + "iso_n3": "056", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [4.816015625000034, 51.432812499999955], + [4.820703125000023, 51.41206054687501], + [4.84804687500008, 51.40327148437498], + [4.943945312499977, 51.40776367187502], + [4.992578125000023, 51.445361328125045], + [5.03095703125004, 51.46909179687498], + [5.05947265625008, 51.453125], + [5.073437500000068, 51.406835937500006], + [5.099902343750045, 51.34648437499996], + [5.214160156250045, 51.278955078124966], + [5.310839843750045, 51.259716796874955], + [5.429785156250034, 51.27299804687502], + [5.476855468750017, 51.285058593749966], + [5.508789062500028, 51.275], + [5.540429687499994, 51.23930664062499], + [5.60878906250008, 51.19843750000001], + [5.752343750000023, 51.16948242187496], + [5.796484375000034, 51.153076171875], + [5.827148437500057, 51.125634765624994], + [5.818261718750023, 51.08642578125], + [5.749804687500017, 50.98876953125], + [5.740820312500063, 50.95991210937498], + [5.75, 50.95024414062499], + [5.736621093750017, 50.93212890625003], + [5.647558593750063, 50.86665039062501], + [5.639453125000017, 50.843603515625006], + [5.669140625000011, 50.80595703124999], + [5.693554687500011, 50.774755859375006], + [5.69453125000004, 50.78105468749996], + [5.830957031250051, 50.80913085937502], + [5.89246112249532, 50.75255685798351], + [5.993945312500017, 50.75043945312504], + [6.005957031249977, 50.73222656249996], + [6.119433593750017, 50.67924804687502], + [6.15449218750004, 50.63725585937499], + [6.235937500000034, 50.59667968749997], + [6.168457031250057, 50.54536132812501], + [6.1787109375, 50.52250976562496], + [6.20302734375008, 50.499121093750006], + [6.294921875000057, 50.485498046874966], + [6.340917968750006, 50.451757812500034], + [6.343652343750051, 50.400244140625006], + [6.364453125000011, 50.31616210937503], + [6.175097656250074, 50.23266601562497], + [6.12128906250004, 50.13935546874998], + [6.116503906250045, 50.120996093749966], + [6.110058593750068, 50.123779296875], + [6.08906250000004, 50.15458984374996], + [6.054785156249977, 50.154296875], + [5.976269531250068, 50.167187499999955], + [5.866894531250068, 50.08281250000002], + [5.817382812500028, 50.01269531250003], + [5.7880859375, 49.96123046875002], + [5.744042968749994, 49.91962890624998], + [5.73525390625008, 49.875634765624994], + [5.740820312500063, 49.85717773437506], + [5.725781250000011, 49.83334960937498], + [5.725, 49.80830078125004], + [5.78798828125008, 49.758886718750006], + [5.8037109375, 49.73217773437497], + [5.880371093749972, 49.64477539062503], + [5.856542968750006, 49.61284179687502], + [5.837597656250068, 49.57832031249998], + [5.815429687499972, 49.55380859375006], + [5.789746093749983, 49.53828125000001], + [5.71044921875, 49.53920898437502], + [5.610058593750068, 49.528222656249994], + [5.542382812500051, 49.51103515624996], + [5.50732421875, 49.51088867187502], + [5.434667968750034, 49.55449218750002], + [5.353515625000028, 49.61982421875001], + [5.301953125000011, 49.650976562500034], + [5.27880859375, 49.67792968750004], + [5.215039062500068, 49.68925781250002], + [5.124121093750006, 49.72148437500002], + [5.061035156250028, 49.75654296874998], + [5.006933593750034, 49.77836914062499], + [4.930566406250023, 49.78925781249998], + [4.867578125000051, 49.78813476562502], + [4.849121093750028, 49.84711914062504], + [4.841503906250068, 49.91450195312501], + [4.790039062499972, 49.959570312500034], + [4.86054687500004, 50.135888671874994], + [4.818652343750045, 50.153173828125034], + [4.772851562500023, 50.1390625], + [4.706640625000034, 50.097070312499966], + [4.675097656250017, 50.046875], + [4.656152343750051, 50.00244140624997], + [4.545019531250063, 49.96025390624999], + [4.36875, 49.944970703124994], + [4.176074218750045, 49.96025390624999], + [4.149316406250023, 49.971582031249994], + [4.137011718750074, 49.984472656250034], + [4.136816406250034, 50], + [4.150292968750023, 50.02387695312498], + [4.183886718750045, 50.052832031250034], + [4.192187500000045, 50.094140625], + [4.157714843750028, 50.1298828125], + [4.13525390625, 50.143798828125], + [4.144140625000034, 50.17841796875004], + [4.169628906250068, 50.22177734374998], + [4.174609375000017, 50.24648437500005], + [4.044140624999983, 50.32133789062502], + [3.949707031250028, 50.33593749999997], + [3.858105468750011, 50.33857421874998], + [3.788574218750057, 50.34697265624999], + [3.748046875000057, 50.343505859375], + [3.718847656250063, 50.321679687499994], + [3.689355468750023, 50.30605468750002], + [3.667285156250045, 50.324804687500006], + [3.626757812500045, 50.45732421875002], + [3.595410156250068, 50.47734374999999], + [3.47695312500008, 50.49946289062498], + [3.316210937500017, 50.50737304687499], + [3.27333984375008, 50.53154296875002], + [3.249804687500074, 50.591162109375006], + [3.234960937499977, 50.66293945312498], + [3.182031250000051, 50.73168945312503], + [3.154882812500006, 50.748925781249994], + [3.10683593750008, 50.779443359374994], + [3.022851562500023, 50.76689453125002], + [2.921972656250006, 50.72705078124997], + [2.862402343750034, 50.716015624999955], + [2.839746093750023, 50.71176757812498], + [2.759375, 50.750634765624994], + [2.669140625000011, 50.81142578125002], + [2.596777343750006, 50.87592773437501], + [2.579296874999983, 50.91176757812505], + [2.60146484375008, 50.95527343750001], + [2.574804687500063, 50.98857421874996], + [2.536035156250051, 51.04951171875004], + [2.52490234375, 51.097119140624955], + [2.96015625000004, 51.26542968749996], + [3.225195312500034, 51.351611328125045], + [3.35009765625, 51.37768554687503], + [3.380078125000068, 51.29111328125006], + [3.40283203125, 51.263623046874955], + [3.43251953125008, 51.24575195312505], + [3.471972656250045, 51.242236328125045], + [3.51708984375, 51.263623046874955], + [3.580273437499983, 51.28618164062502], + [3.681835937500068, 51.27568359375002], + [3.755664062500017, 51.25483398437504], + [3.78193359375004, 51.23320312499999], + [3.83076171875004, 51.212597656249955], + [3.902050781250011, 51.20766601562502], + [4.040039062500057, 51.24707031250006], + [4.17255859375004, 51.30708007812501], + [4.211425781250057, 51.34873046874998], + [4.226171875000034, 51.38647460937503], + [4.304492187500017, 51.36152343750001], + [4.373730468749983, 51.356005859375045], + [4.40400390625004, 51.367089843749994], + [4.384765625000028, 51.42758789062506], + [4.44091796875, 51.45981445312506], + [4.503417968750028, 51.47470703124998], + [4.531640625000023, 51.44858398437498], + [4.588769531250023, 51.42192382812496], + [4.633984375000068, 51.421728515625006], + [4.755664062499989, 51.49111328125002], + [4.784179687500028, 51.47739257812498], + [4.810546875, 51.452734375000034], + [4.816015625000034, 51.432812499999955] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Benin", + "iso_a2": "BJ", + "iso_a3": "BEN", + "iso_n3": "204", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [3.595410156250011, 11.6962890625], + [3.553906250000011, 11.631884765624989], + [3.490527343750017, 11.49921875], + [3.48779296875, 11.395410156249994], + [3.638867187500011, 11.176855468749991], + [3.65625, 11.154589843749989], + [3.6953125, 11.1203125], + [3.71640625, 11.07958984375], + [3.734179687500017, 10.971923828125], + [3.744921875000017, 10.850439453124991], + [3.7568359375, 10.76875], + [3.8296875, 10.653759765624997], + [3.83447265625, 10.607421875], + [3.783789062500006, 10.435888671874991], + [3.771777343750017, 10.417626953124994], + [3.758496093750011, 10.412695312499991], + [3.680273437500006, 10.427783203124989], + [3.646582031250006, 10.408984374999989], + [3.604101562500006, 10.350683593749991], + [3.577929687500017, 10.29248046875], + [3.576562500000023, 10.268359374999989], + [3.645898437500023, 10.16015625], + [3.60205078125, 10.004541015624994], + [3.557226562500006, 9.907324218749991], + [3.476757812500011, 9.851904296874991], + [3.40478515625, 9.838623046875], + [3.3544921875, 9.812792968749989], + [3.3251953125, 9.778466796874994], + [3.329492187500023, 9.667041015624989], + [3.223437500000017, 9.565625], + [3.164648437500006, 9.494677734374989], + [3.136132812500023, 9.451611328124997], + [3.148046875, 9.320605468749989], + [3.110449218750006, 9.188281249999989], + [3.044921875, 9.083837890624991], + [2.898046875, 9.061376953124991], + [2.774804687500023, 9.048535156249997], + [2.73291015625, 8.782519531249989], + [2.734667968750017, 8.614013671875], + [2.7236328125, 8.44189453125], + [2.703125, 8.371826171875], + [2.711523437500006, 8.272998046874989], + [2.702343750000011, 8.0498046875], + [2.68603515625, 7.873730468749997], + [2.707714843750011, 7.826611328124997], + [2.720410156250011, 7.723095703124997], + [2.719335937500006, 7.616259765624989], + [2.7509765625, 7.541894531249994], + [2.78515625, 7.476855468749989], + [2.783984375000017, 7.443408203124989], + [2.765820312500011, 7.422509765624994], + [2.75048828125, 7.395068359374989], + [2.750585937500006, 7.143212890624994], + [2.756738281250023, 7.067919921874989], + [2.747753906250011, 7.019824218749989], + [2.721386718750011, 6.980273437499989], + [2.731738281250017, 6.852832031249989], + [2.7529296875, 6.771630859374994], + [2.774609375000011, 6.711718749999989], + [2.753710937500017, 6.661767578124994], + [2.735644531250017, 6.595703125], + [2.7080078125, 6.427685546874997], + [2.706445312500023, 6.369238281249991], + [2.286914062500017, 6.328076171874997], + [1.818164062500017, 6.260644531249994], + [1.62265625, 6.216796875], + [1.6109375, 6.250830078124991], + [1.777929687500006, 6.294628906249997], + [1.7431640625, 6.42626953125], + [1.639257812500006, 6.58154296875], + [1.598535156250023, 6.610205078124991], + [1.577539062500023, 6.687402343749994], + [1.602929687500023, 6.738085937499989], + [1.5908203125, 6.772265624999989], + [1.58203125, 6.877001953124989], + [1.530957031250011, 6.992431640625], + [1.624707031250011, 6.997314453125], + [1.624707031250011, 7.369189453124989], + [1.624609375, 7.725878906249989], + [1.624609375, 8.030224609374997], + [1.624609375, 8.27099609375], + [1.606640625000011, 8.559277343749997], + [1.603808593750017, 8.77099609375], + [1.600195312500006, 9.050048828125], + [1.566308593750023, 9.137255859374989], + [1.42431640625, 9.285009765624991], + [1.3857421875, 9.361669921874991], + [1.37890625, 9.462988281249991], + [1.347070312500023, 9.567529296874994], + [1.345117187500023, 9.750195312499997], + [1.342871093750006, 9.962939453124989], + [1.330078125, 9.996972656249994], + [1.176171875000023, 10.098388671875], + [0.958300781250017, 10.242041015624991], + [0.792187500000011, 10.3515625], + [0.779980468750011, 10.359570312499997], + [0.763378906250011, 10.386669921874997], + [0.7875, 10.710253906249989], + [0.821875, 10.752587890624994], + [0.874804687500017, 10.8857421875], + [0.900488281250006, 10.993261718749991], + [0.924609375000017, 10.992822265624994], + [0.9580078125, 11.027783203124997], + [0.985058593750011, 11.079003906249994], + [1.013867187500011, 11.068115234375], + [1.062304687500017, 11.058203125], + [1.084570312500006, 11.076367187499997], + [1.08154296875, 11.116015624999989], + [1.097558593750023, 11.156347656249991], + [1.135546875000017, 11.174365234374989], + [1.1455078125, 11.210400390624997], + [1.145800781250017, 11.251904296874997], + [1.1787109375, 11.262744140624989], + [1.234667968750017, 11.261035156249989], + [1.280468750000011, 11.273974609374989], + [1.3173828125, 11.295263671874991], + [1.36484375, 11.37890625], + [1.391503906250023, 11.408007812499989], + [1.399707031250017, 11.4287109375], + [1.4267578125, 11.447119140624991], + [1.501367187500023, 11.45556640625], + [1.561425781250023, 11.449121093749994], + [1.6, 11.400634765625], + [1.857617187500011, 11.443359375], + [1.980371093750023, 11.418408203124997], + [2.230859375000023, 11.629150390625], + [2.287207031250006, 11.691259765624991], + [2.36328125, 11.840087890625], + [2.38916015625, 11.897070312499991], + [2.412695312500006, 11.999316406249989], + [2.36328125, 12.188427734374997], + [2.366015625000017, 12.221923828125], + [2.469335937500006, 12.262792968749991], + [2.598437500000017, 12.294335937499994], + [2.6484375, 12.296777343749994], + [2.681347656250011, 12.312792968749989], + [2.728515625, 12.353613281249991], + [2.805273437500006, 12.383837890624989], + [2.850195312500006, 12.373681640624994], + [2.878125, 12.367724609374989], + [3.149609375000011, 12.118066406249994], + [3.267382812500017, 11.991894531249997], + [3.299121093750017, 11.927148437499994], + [3.359960937500006, 11.88046875], + [3.449804687500006, 11.851953125], + [3.53173828125, 11.787451171874991], + [3.595410156250011, 11.6962890625] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Burkina Faso", + "iso_a2": "BF", + "iso_a3": "BFA", + "iso_n3": "854", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [0.217480468750011, 14.911474609374991], + [0.203808593750011, 14.865039062500003], + [0.202734375, 14.7828125], + [0.18505859375, 14.652929687499991], + [0.163867187500017, 14.497216796874994], + [0.250585937500006, 14.396435546874997], + [0.354589843750006, 14.288037109374997], + [0.382519531250011, 14.245800781249997], + [0.354882812500023, 14.139013671874991], + [0.3740234375, 14.076367187499997], + [0.42919921875, 13.972119140624997], + [0.522363281250023, 13.839746093749994], + [0.6181640625, 13.703417968750003], + [0.6845703125, 13.685400390624991], + [0.747753906250011, 13.674511718749997], + [0.786035156250023, 13.650048828124994], + [0.84228515625, 13.626416015624997], + [0.89794921875, 13.6109375], + [0.946582031250017, 13.581152343749991], + [0.977734375000011, 13.551953125], + [1.017871093750017, 13.467871093749991], + [1.1259765625, 13.412353515625], + [1.201171875, 13.357519531249991], + [1.1708984375, 13.32958984375], + [1.076855468750011, 13.340771484374997], + [0.988476562500011, 13.36484375], + [0.976757812500011, 13.324511718750003], + [0.973046875000023, 13.170361328124997], + [0.9873046875, 13.041894531249994], + [1.007910156250006, 13.024804687499994], + [1.096777343750006, 13.001123046874994], + [1.308691406250006, 12.834277343749989], + [1.50048828125, 12.676464843749997], + [1.56494140625, 12.635400390624994], + [1.671093750000011, 12.619824218749997], + [1.789843750000017, 12.61328125], + [1.840917968750006, 12.627880859374997], + [1.956152343750006, 12.707421875], + [2.017382812500017, 12.716210937499994], + [2.073828125, 12.713964843749991], + [2.104589843750006, 12.701269531249991], + [2.159765625, 12.636425781249997], + [2.211523437500006, 12.538427734374991], + [2.226269531250011, 12.466064453125], + [2.221386718750011, 12.42724609375], + [2.203808593750011, 12.41259765625], + [2.109375, 12.393847656249989], + [2.068554687500011, 12.379150390625], + [2.058398437500017, 12.357958984374989], + [2.072949218750011, 12.30937], + [2.09140625, 12.277978515624994], + [2.194433593750006, 12.136474609375], + [2.343359375, 11.945996093749997], + [2.38916015625, 11.897070312499991], + [2.36328125, 11.840087890625], + [2.287207031250006, 11.691259765624991], + [2.230859375000023, 11.629150390625], + [1.980371093750023, 11.418408203124997], + [1.857617187500011, 11.443359375], + [1.6, 11.400634765625], + [1.561425781250023, 11.449121093749994], + [1.501367187500023, 11.45556640625], + [1.4267578125, 11.447119140624991], + [1.399707031250017, 11.4287109375], + [1.391503906250023, 11.408007812499989], + [1.36484375, 11.37890625], + [1.3173828125, 11.295263671874991], + [1.280468750000011, 11.273974609374989], + [1.234667968750017, 11.261035156249989], + [1.1787109375, 11.262744140624989], + [1.145800781250017, 11.251904296874997], + [1.1455078125, 11.210400390624997], + [1.135546875000017, 11.174365234374989], + [1.097558593750023, 11.156347656249991], + [1.08154296875, 11.116015624999989], + [1.084570312500006, 11.076367187499997], + [1.062304687500017, 11.058203125], + [1.013867187500011, 11.068115234375], + [0.985058593750011, 11.079003906249994], + [0.9580078125, 11.027783203124997], + [0.924609375000017, 10.992822265624994], + [0.900488281250006, 10.993261718749991], + [0.642968750000023, 10.983056640624994], + [0.549121093750017, 10.955419921874991], + [0.49267578125, 10.954980468749994], + [0.49072265625, 10.978173828124994], + [0.484179687500017, 10.991992187499989], + [0.159277343750006, 11.069628906249989], + [-0.068603515625, 11.115625], + [-0.299462890624994, 11.166894531249994], + [-0.312548828124989, 11.118896484375], + [-0.345751953124989, 11.087939453124989], + [-0.395605468749977, 11.085693359375], + [-0.430322265624994, 11.09326171875], + [-0.453515625, 11.056298828124994], + [-0.49169921875, 11.007617187499989], + [-0.545214843749989, 10.983691406249989], + [-0.59765625, 10.953662109374989], + [-0.627148437499983, 10.927392578124994], + [-0.648535156249977, 10.9267578125], + [-0.701416015625, 10.988964843749997], + [-0.771582031249977, 10.995263671874994], + [-0.902929687499977, 10.984716796874991], + [-0.961816406249994, 11.001708984375], + [-1.04248046875, 11.010058593749989], + [-1.232617187499983, 10.997216796874994], + [-1.536767578124994, 11.02265625], + [-1.586474609374989, 11.008886718749991], + [-1.599658203124989, 10.99765625], + [-1.900634765625, 10.994677734374989], + [-2.23193359375, 10.99140625], + [-2.509179687499994, 10.988720703124997], + [-2.751660156249983, 10.986376953124989], + [-2.752099609374994, 10.996972656249994], + [-2.829931640624977, 10.998388671874991], + [-2.838574218749983, 10.977490234374997], + [-2.907324218749977, 10.727978515624997], + [-2.914892578124977, 10.592333984374989], + [-2.87841796875, 10.507958984374994], + [-2.837207031249989, 10.454638671874989], + [-2.791162109374994, 10.432421874999989], + [-2.78662109375, 10.401904296874989], + [-2.823437499999983, 10.362939453124994], + [-2.8203125, 10.322851562499991], + [-2.777099609375, 10.281591796874991], + [-2.766503906249994, 10.238183593749994], + [-2.788476562499994, 10.192578125], + [-2.783203125, 10.083105468749991], + [-2.750732421875, 9.90966796875], + [-2.749804687499989, 9.797216796874991], + [-2.780517578125, 9.745849609375], + [-2.765966796874977, 9.658056640624991], + [-2.706201171874994, 9.533935546875], + [-2.695849609374989, 9.481347656249994], + [-2.7171875, 9.457128906249991], + [-2.7666015625, 9.424707031249994], + [-2.816748046874977, 9.425830078124989], + [-2.875146484374994, 9.500927734374997], + [-2.90087890625, 9.534619140624997], + [-2.948144531249994, 9.610742187499994], + [-2.98828125, 9.687353515624991], + [-3.042626953124994, 9.720898437499997], + [-3.095800781249977, 9.752099609374994], + [-3.160693359374989, 9.849169921874989], + [-3.223535156249994, 9.895458984374997], + [-3.289697265624994, 9.882226562499994], + [-3.386279296874989, 9.900292968749994], + [-3.581152343749977, 9.92431640625], + [-3.79062, 9.9171875], + [-3.877636718749983, 9.894921875], + [-3.963476562499977, 9.859619140625], + [-4.18115234375, 9.78173828125], + [-4.267187499999977, 9.743261718749991], + [-4.332226562499983, 9.645703125], + [-4.406201171874983, 9.647998046874989], + [-4.480273437499989, 9.679248046874989], + [-4.526611328125, 9.723486328124991], + [-4.625830078124977, 9.713574218749997], + [-4.721777343749977, 9.756542968749997], + [-4.814453125, 9.841162109374991], + [-4.882714843749994, 9.868945312499989], + [-4.969921874999983, 9.930078125], + [-4.994042968749994, 10.046484375], + [-5.04931640625, 10.128320312499994], + [-5.099853515625, 10.241601562499994], + [-5.17529296875, 10.292626953124994], + [-5.262304687499977, 10.319677734374991], + [-5.382275390624983, 10.314013671874989], + [-5.461279296874977, 10.359570312499997], + [-5.523535156249977, 10.426025390625], + [-5.507031249999983, 10.483447265624989], + [-5.47900390625, 10.565087890624994], + [-5.475683593749977, 10.643945312499994], + [-5.457080078124989, 10.771386718749994], + [-5.468554687499989, 10.931054687499994], + [-5.490478515625, 11.042382812499994], + [-5.42421875, 11.088720703124991], + [-5.347412109375, 11.130273437499994], + [-5.299853515624989, 11.205957031249994], + [-5.250244140625, 11.375781249999989], + [-5.229394531249994, 11.5224609375], + [-5.244775390624994, 11.576757812499991], + [-5.270312499999989, 11.619873046875], + [-5.29052734375, 11.683300781249997], + [-5.302001953125, 11.760449218749997], + [-5.288134765624989, 11.827929687499989], + [-5.230175781249983, 11.890283203124994], + [-5.157519531249989, 11.9423828125], + [-5.105908203124983, 11.967529296875], + [-4.968994140625, 11.993310546874994], + [-4.797949218749977, 12.032128906249994], + [-4.699316406249977, 12.076171875], + [-4.627246093749989, 12.120214843749991], + [-4.5869140625, 12.155029296875], + [-4.546044921874994, 12.226464843749994], + [-4.479882812499994, 12.281787109374989], + [-4.4287109375, 12.337597656249997], + [-4.421582031249983, 12.493066406249994], + [-4.421923828124989, 12.581591796874989], + [-4.459863281249994, 12.63037109375], + [-4.480615234374994, 12.672216796874991], + [-4.227099609374989, 12.793701171875], + [-4.225244140624994, 12.879492187499991], + [-4.260644531249994, 12.975341796875], + [-4.310253906249983, 13.052490234375], + [-4.328710937499977, 13.119042968749994], + [-4.258691406249994, 13.197314453124989], + [-4.196191406249994, 13.256152343750003], + [-4.151025390624994, 13.306201171875003], + [-4.051171875, 13.382421875], + [-3.947314453124989, 13.402197265624991], + [-3.853466796874983, 13.37353515625], + [-3.575781249999977, 13.194189453124991], + [-3.527636718749989, 13.182714843749991], + [-3.469921874999983, 13.196386718749991], + [-3.396728515625, 13.243701171875003], + [-3.3017578125, 13.28076171875], + [-3.266748046874994, 13.40078125], + [-3.270166015624994, 13.577441406250003], + [-3.248632812499977, 13.658349609374994], + [-3.198437499999983, 13.6728515625], + [-3.038671874999977, 13.639111328124997], + [-2.997216796874994, 13.637109375], + [-2.950830078124994, 13.6484375], + [-2.917089843749977, 13.679492187500003], + [-2.918505859374989, 13.736376953125003], + [-2.925878906249977, 13.786767578124994], + [-2.873925781249994, 13.950732421875003], + [-2.778857421874989, 14.07373046875], + [-2.586718749999989, 14.227587890625003], + [-2.526904296874989, 14.25830078125], + [-2.457226562499983, 14.274121093749997], + [-2.113232421874983, 14.16845703125], + [-2.05712890625, 14.194628906250003], + [-1.973046875, 14.45654296875], + [-1.879785156249994, 14.481494140625003], + [-1.767773437499983, 14.486035156249997], + [-1.695068359375, 14.508496093749997], + [-1.657324218749977, 14.526806640624997], + [-1.49365234375, 14.626074218749991], + [-1.204980468749994, 14.761523437500003], + [-1.049560546875, 14.81953125], + [-1.019189453124994, 14.841357421875003], + [-0.907958984375, 14.937402343749994], + [-0.760449218749983, 15.047753906249994], + [-0.666455078124983, 15.069775390624997], + [-0.536523437499994, 15.077880859375], + [-0.454492187499994, 15.059667968749991], + [-0.432275390624994, 15.028515625], + [-0.405419921874994, 15.0125], + [-0.235888671874989, 15.059423828124991], + [0.00732421875, 14.984814453124997], + [0.217480468750011, 14.911474609374991] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Bangladesh", + "iso_a2": "BD", + "iso_a3": "BGD", + "iso_n3": "050", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [91.94921875000003, 21.50805664062503], + [91.88886718750004, 21.50332031250005], + [91.85947265625012, 21.532958984375057], + [91.8732421875001, 21.574414062499955], + [91.85703125000006, 21.70878906249999], + [91.90771484374997, 21.722949218750017], + [91.933984375, 21.722167968750057], + [91.9486328125, 21.682568359374983], + [91.96191406250003, 21.609765624999966], + [91.94921875000003, 21.50805664062503] + ] + ], + [ + [ + [91.87382812500002, 21.832128906249977], + [91.8375976562501, 21.750244140625], + [91.8197265625, 21.809814453125057], + [91.83515625000004, 21.885351562499977], + [91.85068359375012, 21.927050781250045], + [91.86132812499997, 21.926660156249966], + [91.8825195312501, 21.883642578125006], + [91.87382812500002, 21.832128906249977] + ] + ], + [ + [ + [91.15078125000005, 22.175195312499966], + [91.04472656250002, 22.10517578125001], + [91.0794921875, 22.519726562499983], + [91.15830078125006, 22.36542968750001], + [91.17822265624997, 22.28300781249999], + [91.15078125000005, 22.175195312499966] + ] + ], + [ + [ + [91.55673828125006, 22.38222656250005], + [91.51044921875004, 22.352783203125], + [91.46689453125006, 22.37841796874997], + [91.41132812500004, 22.475683593750006], + [91.43886718750005, 22.59882812500004], + [91.45605468749997, 22.61650390624999], + [91.48398437500006, 22.576562500000023], + [91.52304687500006, 22.49072265625003], + [91.54833984374997, 22.425390625000063], + [91.55673828125006, 22.38222656250005] + ] + ], + [ + [ + [90.77763671875007, 22.089306640624983], + [90.60361328125006, 22.05419921875], + [90.51503906250005, 22.06513671875001], + [90.68046875000007, 22.327490234375006], + [90.67490234375012, 22.44497070312505], + [90.64921875000002, 22.540673828124994], + [90.56494140624997, 22.617626953124955], + [90.56035156250002, 22.672558593749955], + [90.52255859375006, 22.74750976562504], + [90.50292968749997, 22.835351562499994], + [90.59648437500002, 22.863525390625057], + [90.672265625, 22.81318359375001], + [90.68300781250005, 22.785302734375023], + [90.69921874999997, 22.71352539062505], + [90.73691406250012, 22.63872070312499], + [90.86816406250003, 22.48486328125], + [90.86582031250006, 22.390576171874983], + [90.82988281250007, 22.159960937500074], + [90.77763671875007, 22.089306640624983] + ] + ], + [ + [ + [90.6417968750001, 22.962988281250063], + [90.6595703125, 22.920019531250006], + [90.60390625, 22.94555664062497], + [90.56230468750007, 22.975439453125034], + [90.53632812500004, 23.01489257812497], + [90.57988281250002, 23.03544921874999], + [90.6417968750001, 22.962988281250063] + ] + ], + [ + [ + [88.7619140625001, 26.279394531249977], + [88.82802734375, 26.25219726562503], + [88.89648437499997, 26.26049804687503], + [88.94072265625002, 26.24536132812497], + [88.97041015625004, 26.250878906250023], + [88.98154296875006, 26.28613281250003], + [88.94824218749997, 26.337988281250006], + [88.92412109375002, 26.375097656250034], + [88.95195312500002, 26.412109375], + [88.98339843750003, 26.41953125], + [89.01865234375012, 26.410253906249977], + [89.06679687500005, 26.37690429687504], + [89.101953125, 26.308349609375], + [89.10830078125005, 26.202246093749977], + [89.18642578125, 26.10595703125], + [89.28925781250004, 26.03759765625], + [89.36972656250012, 26.006103515625], + [89.46689453125012, 25.983544921875023], + [89.54990234375006, 26.005273437499994], + [89.59140625000006, 26.072412109374994], + [89.57275390625003, 26.13232421875003], + [89.58574218750007, 26.186035156250057], + [89.61904296875, 26.215673828125063], + [89.67089843750003, 26.21381835937504], + [89.70986328125005, 26.171240234375063], + [89.8229492187501, 25.94140625000003], + [89.79960937500002, 25.839599609375], + [89.82490234375004, 25.56015625], + [89.7962890625, 25.375830078125006], + [89.80087890625012, 25.33613281250001], + [89.81406250000006, 25.305371093749955], + [89.83330078125007, 25.292773437500045], + [89.86630859375012, 25.293164062499955], + [90.00380859375, 25.258349609375074], + [90.11962890625003, 25.21997070312497], + [90.25039062500005, 25.184960937500023], + [90.43935546875, 25.15771484375], + [90.55527343750006, 25.166601562500034], + [90.61308593750002, 25.16772460937497], + [90.7301757812501, 25.15947265624999], + [91.03828125000004, 25.17407226562503], + [91.29316406250004, 25.17797851562503], + [91.39667968750004, 25.151611328125], + [91.4796875000001, 25.142138671875017], + [91.76347656250002, 25.160644531250057], + [92.04970703125005, 25.16948242187499], + [92.20468750000012, 25.110937500000063], + [92.3734375, 25.01513671874997], + [92.46835937500006, 24.94414062499999], + [92.48544921875012, 24.90332031250003], + [92.475, 24.868505859375034], + [92.44316406250002, 24.849414062500074], + [92.38496093750004, 24.848779296875023], + [92.25126953125007, 24.895068359375045], + [92.22832031250002, 24.88134765625], + [92.23056640625012, 24.786230468749977], + [92.22666015625012, 24.77099609374997], + [92.19804687500007, 24.68574218750001], + [92.11748046875002, 24.493945312500017], + [92.10195312500005, 24.408056640625034], + [92.08505859375006, 24.38618164062501], + [92.06416015625004, 24.374365234375006], + [92.00107421875006, 24.370898437500017], + [91.95166015624997, 24.356738281250045], + [91.93105468750005, 24.325537109375006], + [91.89902343750006, 24.26069335937504], + [91.87695312500003, 24.19531250000003], + [91.84619140624997, 24.17529296875003], + [91.77246093749997, 24.210644531249955], + [91.72656250000003, 24.20507812499997], + [91.66875, 24.190087890625023], + [91.61113281250007, 24.15283203125], + [91.57138671875012, 24.106591796874994], + [91.52636718750003, 24.090771484374955], + [91.39267578125006, 24.10009765625], + [91.36708984375, 24.09350585937497], + [91.35019531250012, 24.06049804687501], + [91.33642578124997, 24.01879882812503], + [91.23203125000006, 23.92045898437499], + [91.19248046875012, 23.762890624999955], + [91.16044921875007, 23.66064453125], + [91.16552734374997, 23.58105468750003], + [91.25380859375, 23.373632812500063], + [91.31523437500007, 23.104394531249994], + [91.33886718750003, 23.077001953125006], + [91.359375, 23.06835937500003], + [91.36865234375003, 23.074560546875063], + [91.36679687500012, 23.130468749999977], + [91.37060546874997, 23.19799804687497], + [91.39941406249997, 23.2138671875], + [91.43623046875004, 23.19990234375001], + [91.4713867187501, 23.141259765624966], + [91.51123046875003, 23.03369140625], + [91.55351562500002, 22.991552734375006], + [91.61953125, 22.97968750000001], + [91.69492187500006, 23.004833984374983], + [91.75097656250003, 23.053515625000017], + [91.773828125, 23.106103515624994], + [91.75791015625012, 23.209814453124977], + [91.75419921875007, 23.287304687499955], + [91.79003906249997, 23.361035156249983], + [91.9191406250001, 23.471044921875006], + [91.937890625, 23.504687500000017], + [91.92949218750007, 23.598242187499977], + [91.92958984375, 23.68598632812501], + [91.97851562500003, 23.691992187499977], + [92.04404296875006, 23.677783203125017], + [92.12705078125006, 23.720996093750045], + [92.15234374999997, 23.721875], + [92.18710937500006, 23.675537109375], + [92.24609375000003, 23.683593750000057], + [92.28935546875002, 23.492480468750017], + [92.3341796875001, 23.323828125000034], + [92.33378906250002, 23.242382812499955], + [92.3412109375, 23.06982421874997], + [92.36162109375002, 22.929003906250074], + [92.39316406250012, 22.897021484375045], + [92.43046875000007, 22.82182617187499], + [92.46445312500006, 22.734423828125045], + [92.49140625000004, 22.685400390625006], + [92.50957031250002, 22.525683593750045], + [92.53183593750012, 22.410302734374994], + [92.5612304687501, 22.04804687500001], + [92.57490234375004, 21.978076171875045], + [92.58281250000002, 21.940332031249994], + [92.58427734375007, 21.609033203124994], + [92.5934570312501, 21.46733398437499], + [92.62529296875007, 21.35073242187505], + [92.63164062500002, 21.306201171875045], + [92.59980468750004, 21.270166015624966], + [92.56855468750004, 21.263330078124994], + [92.53916015625012, 21.31982421874997], + [92.471875, 21.362988281249983], + [92.37265625000012, 21.409033203125034], + [92.33056640624997, 21.439794921874977], + [92.2796875, 21.427587890624977], + [92.2082031250001, 21.357861328124983], + [92.17958984375005, 21.293115234375023], + [92.19199218750006, 21.202246093750006], + [92.21474609375, 21.11269531250005], + [92.26445312500002, 21.06147460937501], + [92.26845703125005, 21.004687500000074], + [92.28623046875012, 20.93159179687501], + [92.3119140625, 20.86445312500001], + [92.32412109375, 20.791845703125063], + [92.30781250000004, 20.790429687500023], + [92.24814453125006, 20.883593750000017], + [92.19462890625002, 20.984277343749994], + [92.0560546875, 21.1748046875], + [92.01093750000004, 21.516259765625023], + [92.0080078125001, 21.684765624999983], + [91.91318359375012, 21.883056640625057], + [91.85, 22.157373046874994], + [91.82480468750006, 22.228662109375023], + [91.85781250000005, 22.317333984374983], + [91.86337890625012, 22.350488281249966], + [91.8454101562501, 22.343115234374977], + [91.7970703125001, 22.297460937500006], + [91.73408203125004, 22.406689453124983], + [91.69296875000012, 22.504785156249966], + [91.5296875, 22.707666015624994], + [91.48212890625004, 22.79741210937499], + [91.48007812500006, 22.884814453125045], + [91.4095703125, 22.797021484374994], + [91.31376953125002, 22.735156250000017], + [91.2162109375, 22.642236328124994], + [91.15136718749997, 22.614062500000017], + [90.94560546875002, 22.597021484375034], + [90.82675781250012, 22.721386718749955], + [90.65625, 23.025488281250006], + [90.63359375000002, 23.09423828124997], + [90.65605468750007, 23.273046874999977], + [90.615625, 23.44233398437501], + [90.61611328125, 23.531640625], + [90.60400390624997, 23.59135742187499], + [90.57343750000004, 23.57812], + [90.56162109375012, 23.537109375000057], + [90.5680664062501, 23.47426757812505], + [90.55566406249997, 23.42153320312505], + [90.40800781250007, 23.43188476562503], + [90.26914062500012, 23.455859375000017], + [90.39150390625, 23.36694335937503], + [90.52275390625002, 23.346142578124955], + [90.59091796875012, 23.266406250000045], + [90.59921875000006, 23.20415039062499], + [90.5951171875, 23.133935546874994], + [90.52773437500005, 23.08496093750003], + [90.4660156250001, 23.05390625000001], + [90.47753906250003, 22.98676757812501], + [90.55224609374997, 22.904882812500034], + [90.4616210937501, 22.88178710937504], + [90.4369140625, 22.828173828125045], + [90.43505859374997, 22.751904296874955], + [90.48066406250004, 22.684667968750034], + [90.49843750000005, 22.63481445312499], + [90.48740234375006, 22.588720703125006], + [90.53173828124997, 22.539306640625], + [90.59550781250002, 22.435839843750045], + [90.61611328125, 22.362158203125034], + [90.58945312500012, 22.258447265624966], + [90.55283203125012, 22.218164062500023], + [90.49414062499997, 22.17890625000001], + [90.35576171875002, 22.04824218750005], + [90.28818359375012, 21.8994140625], + [90.23056640625006, 21.82978515625004], + [90.15878906250012, 21.816845703124983], + [90.13076171875, 21.84741210937497], + [90.07119140625005, 21.887255859375017], + [90.07001953125004, 21.959912109374983], + [90.08789062499997, 22.017480468749994], + [90.20957031250006, 22.156591796875006], + [90.14345703125, 22.13789062500001], + [90.06855468750004, 22.098193359375017], + [89.95419921875006, 22.022851562500023], + [89.91806640625012, 22.11616210937501], + [89.89404296874997, 22.202587890624955], + [89.89384765625007, 22.308398437500017], + [89.98515625000002, 22.466406250000063], + [89.88183593749997, 22.387597656249994], + [89.85322265625004, 22.288964843749966], + [89.86582031250012, 22.173046874999983], + [89.85253906249997, 22.090917968750034], + [89.81191406250005, 21.983496093750006], + [89.75683593750003, 21.919042968750006], + [89.66777343750002, 21.87768554687503], + [89.628125, 21.814160156249955], + [89.56855468750004, 21.767431640625034], + [89.5666015625001, 21.860595703125], + [89.54746093750006, 21.983691406250045], + [89.48320312500007, 22.275537109374994], + [89.46933593750006, 22.212939453125017], + [89.50253906250006, 22.031884765624994], + [89.50058593750006, 21.914355468750045], + [89.45195312500007, 21.821093750000045], + [89.35371093750004, 21.72109375], + [89.27861328125002, 21.706982421874983], + [89.23427734375005, 21.72236328125001], + [89.16708984375006, 21.784277343750006], + [89.09394531250004, 21.872753906249983], + [89.08164062500006, 22.014941406250017], + [89.05146484375004, 22.09316406250005], + [89.05585937500004, 22.18623046875001], + [89.05, 22.274609374999983], + [88.97148437500007, 22.510937499999983], + [88.92070312500002, 22.632031249999955], + [88.92695312500004, 22.67114257812503], + [88.92343750000006, 22.68754882812499], + [88.89970703125002, 22.843505859375057], + [88.86699218750002, 22.938867187500023], + [88.85058593749997, 23.040527343750057], + [88.928125, 23.186621093750063], + [88.89707031250012, 23.21040039062501], + [88.80761718749997, 23.22968750000004], + [88.72441406250002, 23.254980468750034], + [88.70400390625005, 23.292822265625034], + [88.74082031250006, 23.436621093750006], + [88.69765625, 23.493017578125034], + [88.63574218749997, 23.55], + [88.61640625000004, 23.57275390625003], + [88.59599609375007, 23.602197265624994], + [88.56738281249997, 23.674414062500034], + [88.62255859374997, 23.82636718750001], + [88.69980468750006, 24.002539062500006], + [88.71376953125, 24.069628906250017], + [88.72656250000003, 24.186230468749955], + [88.7335937500001, 24.23090820312501], + [88.72353515625, 24.27490234375], + [88.64228515625004, 24.325976562500017], + [88.49853515625003, 24.34663085937504], + [88.39697265625003, 24.389257812500006], + [88.3375, 24.45385742187503], + [88.28710937500003, 24.47973632812497], + [88.225, 24.460644531249983], + [88.14550781250003, 24.485791015624955], + [88.07910156249997, 24.549902343750063], + [88.02343750000003, 24.62783203125005], + [88.03027343749997, 24.66445312500005], + [88.0451171875001, 24.713037109374994], + [88.1498046875, 24.914648437500034], + [88.1888671875, 24.92060546875001], + [88.27949218750004, 24.881933593750034], + [88.31337890625005, 24.8818359375], + [88.37294921875, 24.961523437499977], + [88.45625, 25.18842773437504], + [88.57382812500006, 25.187890625], + [88.67753906250007, 25.180468750000017], + [88.74755859375003, 25.168945312500057], + [88.81728515625, 25.17622070312504], + [88.89013671875003, 25.19438476562499], + [88.92978515625012, 25.222998046875063], + [88.95166015625003, 25.25927734374997], + [88.94414062500002, 25.290771484375], + [88.85478515625002, 25.333544921875017], + [88.82031250000003, 25.365527343750045], + [88.79541015624997, 25.45625], + [88.76914062500006, 25.490478515625], + [88.59345703125004, 25.49531250000001], + [88.50244140624997, 25.537011718749994], + [88.4523437500001, 25.574414062499983], + [88.36308593750002, 25.698193359374955], + [88.25292968749997, 25.78979492187497], + [88.14746093749997, 25.811425781250023], + [88.1066406250001, 25.841113281250045], + [88.08457031250006, 25.888232421875045], + [88.0973632812501, 25.956347656250074], + [88.12900390625012, 26.018212890624966], + [88.15078125000005, 26.08715820312497], + [88.23515625000007, 26.178076171875034], + [88.33398437499997, 26.257519531249955], + [88.37802734375006, 26.312011718750057], + [88.44042968749997, 26.369482421875034], + [88.44785156250006, 26.401025390624966], + [88.43671875000004, 26.437109375000034], + [88.38623046875003, 26.471533203125034], + [88.35146484375005, 26.482568359374966], + [88.3458984375001, 26.504785156249966], + [88.36992187500002, 26.564111328124994], + [88.41816406250004, 26.57153320312497], + [88.51826171875004, 26.517773437499955], + [88.62011718749997, 26.43066406249997], + [88.68066406249997, 26.352978515624955], + [88.68281250000004, 26.291699218749983], + [88.72216796874997, 26.281835937500034], + [88.7619140625001, 26.279394531249977] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Bulgaria", + "iso_a2": "BG", + "iso_a3": "BGR", + "iso_n3": "100", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [28.585351562500023, 43.742236328124996], + [28.561816406250017, 43.501318359375], + [28.465429687500006, 43.389306640624994], + [28.319628906250017, 43.42685546875], + [28.133691406250023, 43.39560546875], + [28.03515625, 43.26826171875], + [27.979296875000017, 43.230517578124996], + [27.92890625000001, 43.1861328125], + [27.896484375, 43.020703125], + [27.88886718750001, 42.74970703125], + [27.818359375, 42.716650390625], + [27.753710937500017, 42.70654296875], + [27.484765625000023, 42.468066406249996], + [27.639550781250023, 42.4009765625], + [27.70820312500001, 42.349951171875], + [27.821386718750006, 42.2080078125], + [27.982714843750017, 42.047412109374996], + [28.014453125000017, 41.969042968749996], + [27.879199218750017, 41.986621093749996], + [27.831933593750023, 41.981298828125], + [27.801660156250023, 41.95654296875], + [27.738867187500006, 41.9615234375], + [27.6611328125, 41.961328125], + [27.579882812500017, 41.932910156249996], + [27.53486328125001, 41.920800781249994], + [27.47480468750001, 41.946875], + [27.362890625, 42.025048828124994], + [27.294921875, 42.079541015625], + [27.24433593750001, 42.09326171875], + [27.193359375, 42.077099609375], + [27.01171875, 42.058642578124996], + [26.96875, 42.02685546875], + [26.884863281250006, 41.991845703124994], + [26.800390625, 41.975146484374996], + [26.67919921875, 41.963330078125], + [26.615332031250006, 41.964892578124996], + [26.5796875, 41.94794921875], + [26.549707031250023, 41.896728515625], + [26.529296875, 41.8466796875], + [26.51142578125001, 41.8263671875], + [26.3603515625, 41.8015625], + [26.327246093750006, 41.772802734375], + [26.31796875, 41.744677734374996], + [26.320898437500006, 41.716552734375], + [26.200585937500023, 41.743798828124994], + [26.107421875, 41.72568359375], + [26.085546875, 41.704150390624996], + [26.066015625, 41.673242187499994], + [26.076953125000017, 41.640185546874996], + [26.111230468750023, 41.608203125], + [26.1435546875, 41.521533203124996], + [26.155175781250023, 41.434863281249996], + [26.135351562500006, 41.3857421875], + [26.06640625, 41.35068359375], + [25.92333984375, 41.311914062499994], + [25.784960937500017, 41.330419921875], + [25.723925781250017, 41.3150390625], + [25.621484375000023, 41.310107421874996], + [25.52705078125001, 41.2998046875], + [25.381933593750006, 41.26435546875], + [25.25117187500001, 41.243554687499994], + [25.133398437500006, 41.315771484375], + [24.993554687500023, 41.364990234375], + [24.846875, 41.39423828125], + [24.795800781250023, 41.372900390625], + [24.773730468750017, 41.356103515624994], + [24.65107421875001, 41.419970703124996], + [24.595996093750017, 41.442724609375], + [24.5693359375, 41.4673828125], + [24.51826171875001, 41.552539062499996], + [24.487890625, 41.555224609374996], + [24.38671875, 41.52353515625], + [24.289453125000023, 41.525048828124994], + [24.230371093750023, 41.530810546874996], + [24.056054687500023, 41.527246093749994], + [24.03291015625001, 41.469091796875], + [24.011328125, 41.46005859375], + [23.973535156250023, 41.452294921874994], + [23.880859375, 41.455957031249994], + [23.762304687500006, 41.412988281249994], + [23.635156250000023, 41.386767578124996], + [23.53583984375001, 41.386035156249996], + [23.433398437500017, 41.398730468749996], + [23.3720703125, 41.3896484375], + [23.23984375, 41.3849609375], + [23.15595703125001, 41.322070312499996], + [23.02558593750001, 41.325634765625], + [22.916015625, 41.336279296875], + [22.9296875, 41.356103515624994], + [22.951464843750017, 41.605615234374994], + [23.005664062500017, 41.716943359374994], + [23.00361328125001, 41.73984375], + [22.991992187500017, 41.757177734375], + [22.943945312500006, 41.77509765625], + [22.9091796875, 41.835205078125], + [22.836816406250023, 41.993603515625], + [22.79609375000001, 42.025683593749996], + [22.68232421875001, 42.059130859374996], + [22.58271484375001, 42.104833984375], + [22.49824218750001, 42.165087890624996], + [22.344042968750017, 42.31396484375], + [22.42207031250001, 42.328857421875], + [22.445703125000023, 42.359130859375], + [22.523535156250006, 42.440966796874996], + [22.53242187500001, 42.481201171875], + [22.524218750000017, 42.50390625], + [22.472070312500023, 42.543310546875], + [22.43623046875001, 42.6291015625], + [22.463281250000023, 42.70947265625], + [22.465625, 42.75078125], + [22.439257812500017, 42.791650390624994], + [22.466796875, 42.84248046875], + [22.522753906250017, 42.8703125], + [22.55810546875, 42.878466796874996], + [22.706152343750006, 42.883935546874994], + [22.799902343750006, 42.985742187499994], + [22.856835937500023, 43.01826171875], + [22.91523437500001, 43.075976562499996], + [22.942285156250023, 43.097070312499994], + [22.96796875000001, 43.142041015625], + [22.976855468750017, 43.18798828125], + [22.85957031250001, 43.25234375], + [22.819726562500023, 43.300732421875], + [22.767578125, 43.354150390624994], + [22.69697265625001, 43.391064453125], + [22.554589843750023, 43.454492187499994], + [22.499121093750006, 43.518847656249996], + [22.47412109375, 43.60224609375], + [22.436328125000017, 43.665478515625], + [22.394824218750017, 43.706640625], + [22.38691406250001, 43.740136718749994], + [22.36962890625, 43.781298828124996], + [22.36542968750001, 43.862109375], + [22.399023437500006, 43.96953125], + [22.420800781250023, 44.007421875], + [22.469042968750017, 44.018017578125], + [22.597460937500017, 44.07529296875], + [22.603417968750023, 44.148583984374994], + [22.6265625, 44.194091796875], + [22.66748046875, 44.22021484375], + [22.705078125, 44.23779296875], + [22.775195312500017, 44.195214843749994], + [22.945410156250006, 44.127294921875], + [23.02851562500001, 44.077978515625], + [23.0244140625, 44.047216796875], + [22.9853515625, 44.016992187499994], + [22.91132812500001, 43.987207031249994], + [22.868261718750006, 43.947900390624994], + [22.8564453125, 43.8990234375], + [22.86767578125, 43.864550781249996], + [22.919042968750006, 43.83447265625], + [23.224609375, 43.873876953125], + [23.534570312500023, 43.853564453124996], + [23.95078125, 43.786669921874996], + [24.22675781250001, 43.763476562499996], + [24.430566406250023, 43.794384765625], + [24.808203125, 43.738427734374994], + [25.15966796875, 43.686328125], + [25.4970703125, 43.670800781249994], + [25.686132812500006, 43.711767578125], + [25.81884765625, 43.766845703125], + [25.933398437500017, 43.870556640625], + [26.2158203125, 44.007275390625], + [26.4892578125, 44.083984375], + [26.847753906250006, 44.14619140625], + [27.0869140625, 44.167382812499994], + [27.120703125, 44.146142578124994], + [27.425390625, 44.0205078125], + [27.56103515625, 44.020068359374996], + [27.6708984375, 43.997802734375], + [27.710742187500017, 43.964599609375], + [27.738574218750017, 43.956298828125], + [27.88427734375, 43.987353515624996], + [27.94892578125001, 43.918603515624994], + [28.05, 43.822412109374994], + [28.221972656250017, 43.772851562499994], + [28.37519531250001, 43.744775390624994], + [28.4234375, 43.740478515625], + [28.585351562500023, 43.742236328124996] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Bahrain", + "iso_a2": "BH", + "iso_a3": "BHR", + "iso_n3": "048", + "continent": "Asia" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [50.60722656250002, 25.883105468750003], + [50.57490234375001, 25.806787109374994], + [50.544042968750006, 25.83349609375], + [50.465917968750006, 25.965527343749997], + [50.48945312500001, 26.058447265625], + [50.45244140625002, 26.190820312499994], + [50.46992187500001, 26.228955078124997], + [50.5640625, 26.246435546875], + [50.5859375, 26.24072265625], + [50.55781250000001, 26.198291015624996], + [50.60976562500002, 26.124462890624997], + [50.61748046875002, 26.00234375], + [50.60722656250002, 25.883105468750003] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Bahamas", + "iso_a2": "BS", + "iso_a3": "BHS", + "iso_n3": "044", + "continent": "North America" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-73.02685546874994, 21.19238281250003], + [-73.05874023437497, 21.119042968750023], + [-73.16455078125003, 20.979150390625023], + [-73.40078125000002, 20.943896484375045], + [-73.66103515625, 20.93740234375005], + [-73.68115234375003, 20.9755859375], + [-73.68681640625002, 21.009130859375006], + [-73.66782226562498, 21.061572265625017], + [-73.66958007812497, 21.082226562499983], + [-73.68037109374995, 21.103320312500017], + [-73.58505859374998, 21.125927734374983], + [-73.52309570312497, 21.190820312499966], + [-73.42451171874995, 21.201757812499977], + [-73.3015625, 21.156152343750023], + [-73.23535156249997, 21.15449218750004], + [-73.13730468749998, 21.204785156249983], + [-73.05849609375, 21.313378906249994], + [-73.01166992187495, 21.29951171875001], + [-73.02685546874994, 21.19238281250003] + ] + ], + [ + [ + [-72.91611328125003, 21.506689453125034], + [-73.04931640625, 21.457617187499977], + [-73.06269531249995, 21.51533203125001], + [-72.994775390625, 21.561621093750034], + [-72.91611328125003, 21.506689453125034] + ] + ], + [ + [ + [-73.041015625, 22.429052734375006], + [-72.97895507812495, 22.414599609375074], + [-72.94521484375002, 22.415625], + [-72.83076171874995, 22.385595703125034], + [-72.76259765625002, 22.344384765624966], + [-72.74726562500001, 22.32739257812497], + [-72.78388671875001, 22.290625], + [-72.88916015624997, 22.360253906250023], + [-72.98105468750003, 22.369238281249977], + [-73.11020507812498, 22.367578125], + [-73.16191406250002, 22.380712890625006], + [-73.12739257812501, 22.45532226562503], + [-73.041015625, 22.429052734375006] + ] + ], + [ + [ + [-74.20673828124998, 22.213769531250023], + [-74.27690429687499, 22.183691406250006], + [-74.261328125, 22.23554687500001], + [-74.12675781249993, 22.323388671874966], + [-74.05234374999998, 22.40063476562497], + [-74.01005859374996, 22.427978515625057], + [-73.994970703125, 22.44921875000003], + [-73.93598632812498, 22.477734374999955], + [-73.906396484375, 22.527441406250063], + [-73.91455078124997, 22.568017578124966], + [-73.97636718749993, 22.635058593750045], + [-73.97548828124994, 22.682275390624994], + [-73.95419921874995, 22.71552734375001], + [-73.84995117187503, 22.731054687500063], + [-73.87749023437496, 22.680761718750034], + [-73.83652343749998, 22.538427734374977], + [-73.97460937500003, 22.361181640625034], + [-74.09291992187497, 22.30625], + [-74.20673828124998, 22.213769531250023] + ] + ], + [ + [ + [-74.05751953124997, 22.723486328125034], + [-74.03476562500003, 22.70556640625003], + [-74.09858398437498, 22.665429687500023], + [-74.24223632812502, 22.715087890625], + [-74.27460937499995, 22.71166992187503], + [-74.303125, 22.764453125000017], + [-74.31396484374997, 22.803564453125006], + [-74.30703125, 22.83959960937497], + [-74.22148437499996, 22.811572265625045], + [-74.17539062499998, 22.759912109374994], + [-74.05751953124997, 22.723486328125034] + ] + ], + [ + [ + [-74.84047851562494, 22.894335937500017], + [-74.846875, 22.868701171875045], + [-74.97333984374993, 23.068554687499983], + [-75.13212890624996, 23.117089843750023], + [-75.22333984374995, 23.165332031250074], + [-75.20439453125002, 23.192724609375063], + [-75.14111328125, 23.20463867187499], + [-75.13056640624998, 23.267919921875006], + [-75.15756835937498, 23.33637695312501], + [-75.24125976562499, 23.47460937500003], + [-75.28823242187497, 23.568261718749994], + [-75.309814453125, 23.589843750000057], + [-75.31596679687502, 23.668359374999966], + [-75.21660156250002, 23.546777343749966], + [-75.17529296874994, 23.438671874999983], + [-75.1087890625, 23.33281249999999], + [-75.06420898437497, 23.150195312500017], + [-74.937109375, 23.08813476562497], + [-74.84560546875002, 22.999902343750023], + [-74.84047851562494, 22.894335937500017] + ] + ], + [ + [ + [-75.66455078124997, 23.45014648437501], + [-75.70634765624996, 23.44423828125005], + [-75.78100585937497, 23.47065429687501], + [-75.95595703125, 23.59228515625], + [-76.03710937500003, 23.60278320312503], + [-76.01044921875001, 23.671386718750057], + [-75.94863281250002, 23.647412109374955], + [-75.80751953124997, 23.54252929687499], + [-75.75424804687503, 23.489990234375057], + [-75.66455078124997, 23.45014648437501] + ] + ], + [ + [ + [-74.42944335937497, 24.068066406249955], + [-74.50869140624994, 23.959716796875], + [-74.55092773437502, 23.96894531250001], + [-74.52690429687502, 24.105078125000034], + [-74.47202148437503, 24.126660156249983], + [-74.45048828124999, 24.12548828125003], + [-74.42944335937497, 24.068066406249955] + ] + ], + [ + [ + [-77.65771484374994, 24.249462890624955], + [-77.65615234375, 24.2265625], + [-77.75527343750002, 24.163476562500023], + [-77.683251953125, 24.118457031250017], + [-77.61538085937494, 24.216357421875045], + [-77.5615234375, 24.136816406250006], + [-77.53203125000002, 23.987646484375006], + [-77.53681640624993, 23.96166992187503], + [-77.531884765625, 23.93940429687504], + [-77.52133789062498, 23.910839843749983], + [-77.51875, 23.86943359374999], + [-77.57373046875, 23.739160156249994], + [-77.77128906249999, 23.752539062499977], + [-77.77578124999994, 23.862353515625045], + [-77.80629882812494, 23.88354492187503], + [-77.85224609374998, 24.040380859375006], + [-77.91406249999994, 24.090917968749977], + [-77.99990234374994, 24.219824218750063], + [-77.950048828125, 24.253076171874994], + [-77.88359375, 24.241992187500045], + [-77.84956054687495, 24.25751953125001], + [-77.757421875, 24.26992187500005], + [-77.70146484374999, 24.287548828124983], + [-77.65771484374994, 24.249462890624955] + ] + ], + [ + [ + [-75.30839843749999, 24.2], + [-75.30175781249994, 24.149169921875057], + [-75.36875, 24.159472656250017], + [-75.467626953125, 24.139599609374955], + [-75.50322265624996, 24.139062500000023], + [-75.48105468749998, 24.173876953125017], + [-75.41240234374993, 24.220947265625], + [-75.40893554687503, 24.265771484374994], + [-75.49389648437503, 24.330419921875034], + [-75.5927734375, 24.491259765625017], + [-75.63906250000002, 24.529394531250063], + [-75.66103515624997, 24.58984375000003], + [-75.74399414062498, 24.6546875], + [-75.72666015625, 24.68935546875005], + [-75.709619140625, 24.69750976562503], + [-75.65351562499995, 24.68085937500001], + [-75.52646484375, 24.449511718750045], + [-75.51816406249998, 24.427343750000063], + [-75.30839843749999, 24.2] + ] + ], + [ + [ + [-77.34755859375, 25.013867187499983], + [-77.46049804687502, 24.99311523437504], + [-77.54121093749993, 25.013574218750023], + [-77.56191406249997, 25.030029296875], + [-77.52734374999994, 25.057666015625045], + [-77.45126953125, 25.080712890625023], + [-77.32910156249997, 25.083007812500057], + [-77.27558593750001, 25.055761718750006], + [-77.269140625, 25.043847656249966], + [-77.34755859375, 25.013867187499983] + ] + ], + [ + [ + [-77.74384765625001, 24.707421875], + [-77.74604492187501, 24.586328125000023], + [-77.735107421875, 24.49575195312505], + [-77.74521484375, 24.463476562500034], + [-77.85341796874994, 24.402929687500063], + [-77.881201171875, 24.369091796874983], + [-77.98320312500002, 24.33496093749997], + [-78.04492187499997, 24.287451171875063], + [-78.07583007812497, 24.364648437499966], + [-78.1357421875, 24.41235351562503], + [-78.14580078125002, 24.493457031250017], + [-78.19160156250001, 24.46606445312503], + [-78.25761718749996, 24.482763671875063], + [-78.36650390624993, 24.544189453125057], + [-78.435302734375, 24.627587890624994], + [-78.33891601562499, 24.64204101562501], + [-78.31899414062494, 24.590234375000023], + [-78.24272460937493, 24.65380859375], + [-78.26005859375002, 24.68730468749999], + [-78.27382812499997, 24.691601562499983], + [-78.298828125, 24.753906250000057], + [-78.18408203125, 24.917089843750006], + [-78.159326171875, 25.022363281250023], + [-78.21137695312495, 25.191259765624977], + [-78.16279296875001, 25.20234375000001], + [-78.03330078125, 25.143115234375045], + [-77.97529296874998, 25.084814453125063], + [-77.97338867187497, 25.004785156249994], + [-77.91894531249997, 24.942822265624983], + [-77.84013671874999, 24.794384765624955], + [-77.74384765625001, 24.707421875] + ] + ], + [ + [ + [-76.64882812499994, 25.487402343750006], + [-76.48422851562498, 25.374609375000034], + [-76.34379882812496, 25.33203124999997], + [-76.19199218749995, 25.190820312499994], + [-76.12661132812497, 25.14052734375005], + [-76.11494140624998, 25.09472656250003], + [-76.14052734374994, 24.885644531249994], + [-76.17465820312498, 24.759765625], + [-76.16953125, 24.6494140625], + [-76.20517578124998, 24.682080078124983], + [-76.24121093749994, 24.754345703124955], + [-76.30029296875, 24.7958984375], + [-76.319970703125, 24.81767578124999], + [-76.21376953124994, 24.822460937499983], + [-76.20434570312497, 24.936230468749983], + [-76.15253906250001, 25.025976562500063], + [-76.160400390625, 25.119335937499983], + [-76.28432617187502, 25.222119140624955], + [-76.36928710937502, 25.312597656250006], + [-76.49990234374997, 25.341552734375057], + [-76.62070312499998, 25.43164062500003], + [-76.69277343750002, 25.442724609375063], + [-76.78066406249997, 25.426855468750006], + [-76.74892578125, 25.480566406250034], + [-76.72695312499997, 25.551611328125034], + [-76.71083984374997, 25.564892578124983], + [-76.64882812499994, 25.487402343750006] + ] + ], + [ + [ + [-78.49287109375001, 26.729052734375017], + [-78.37172851562502, 26.697949218749983], + [-78.30683593749995, 26.70219726562496], + [-78.267919921875, 26.72265625000003], + [-78.08867187499999, 26.71430664062504], + [-77.9439453125, 26.744238281250006], + [-77.92246093749998, 26.69111328125001], + [-77.926123046875, 26.663378906250045], + [-78.23388671875, 26.637353515624994], + [-78.51621093749998, 26.55937], + [-78.67094726562496, 26.506542968749983], + [-78.74365234374994, 26.50068359375004], + [-78.79921875, 26.528466796874994], + [-78.98564453124996, 26.689501953125045], + [-78.935791015625, 26.673437500000063], + [-78.79804687500001, 26.582421875], + [-78.7125, 26.599023437499994], + [-78.63325195312501, 26.6591796875], + [-78.62114257812493, 26.704638671875017], + [-78.63295898437497, 26.726171875000034], + [-78.59711914062493, 26.797949218750006], + [-78.49287109375001, 26.729052734375017] + ] + ], + [ + [ + [-77.22563476562496, 25.904199218750023], + [-77.246435546875, 25.89545898437501], + [-77.33325195312503, 25.99560546874997], + [-77.40317382812498, 26.02470703124996], + [-77.2939453125, 26.09550781249999], + [-77.24677734374998, 26.156347656250034], + [-77.24775390625001, 26.2890625], + [-77.22109375, 26.361767578124983], + [-77.23012695312497, 26.424707031249994], + [-77.20605468749994, 26.48896484375004], + [-77.238623046875, 26.561132812500006], + [-77.32993164062498, 26.61835937500001], + [-77.510595703125, 26.845996093750045], + [-77.79599609374998, 26.901269531250023], + [-77.94375, 26.90356445312503], + [-77.86254882812503, 26.940087890625023], + [-77.78754882812493, 26.935644531250006], + [-77.67211914062497, 26.913916015625006], + [-77.53388671874995, 26.903417968750006], + [-77.44941406249998, 26.83642578125003], + [-77.36875, 26.74760742187496], + [-77.29589843749997, 26.71166992187503], + [-77.26591796874999, 26.688818359374977], + [-77.26928710937497, 26.663037109374983], + [-77.25717773437498, 26.638818359375023], + [-77.16210937499997, 26.597265624999977], + [-77.06635742187501, 26.530175781249994], + [-77.03828124999998, 26.333447265624983], + [-77.16728515624996, 26.240332031250006], + [-77.191015625, 25.955468749999966], + [-77.22563476562496, 25.904199218750023] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Bosnia and Herz.", + "iso_a2": "BA", + "iso_a3": "BIH", + "iso_n3": "070", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [16.918652343749983, 45.27656249999998], + [17.125390625000023, 45.17177734375002], + [17.210644531250068, 45.15605468750002], + [17.25869140625008, 45.17055664062505], + [17.32412109375008, 45.16396484375002], + [17.46914062500005, 45.13330078125], + [17.50263671875004, 45.12036132812503], + [17.54628906250005, 45.12255859375003], + [17.65351562500004, 45.16347656250002], + [17.69013671875004, 45.158398437499955], + [17.812792968750074, 45.078125], + [17.874414062500023, 45.077246093750034], + [17.94863281250005, 45.11186523437499], + [17.996289062500068, 45.141796874999955], + [18.13720703125, 45.119384765625], + [18.21796875000001, 45.132910156250006], + [18.284960937500074, 45.13427734375003], + [18.35761718750004, 45.12055664062498], + [18.423925781250063, 45.10200195312501], + [18.48828125000003, 45.08583984375002], + [18.66259765625, 45.07744140624999], + [18.746093750000057, 45.02651367187502], + [18.779394531250006, 44.97724609375001], + [18.78017578125008, 44.94721679687501], + [18.788378906250045, 44.914892578125006], + [18.83642578125, 44.883251953124955], + [18.94130859375005, 44.86518554687501], + [19.007128906250045, 44.86918945312502], + [19.042089843750063, 44.87133789062503], + [19.131542968750068, 44.89960937500001], + [19.23681640625003, 44.914257812499955], + [19.31269531250004, 44.8974609375], + [19.348632812500057, 44.88090820312502], + [19.35683593750005, 44.858544921874994], + [19.33447265625003, 44.78066406250002], + [19.29189453125005, 44.69677734374997], + [19.22314453125, 44.60957031249998], + [19.15136718750003, 44.52734375], + [19.132421875000063, 44.48378906250002], + [19.127343750000023, 44.41455078125003], + [19.118457031250074, 44.359960937500006], + [19.128320312500023, 44.33027343750001], + [19.15185546875003, 44.302539062500045], + [19.231542968750006, 44.28056640625002], + [19.33886718750003, 44.22583007812506], + [19.43017578124997, 44.15449218749998], + [19.547167968750017, 44.073486328125], + [19.583789062500017, 44.04345703125003], + [19.583691406249983, 44.011083984375006], + [19.54951171875004, 43.98710937499999], + [19.449414062499983, 43.97802734375], + [19.34521484375, 43.98510742187503], + [19.305273437500034, 43.99335937500004], + [19.26806640625, 43.98344726562496], + [19.245019531249994, 43.96503906250004], + [19.257226562499994, 43.943310546874955], + [19.364062500000017, 43.844775390625045], + [19.48818359375008, 43.703564453124955], + [19.495117187500057, 43.642871093750045], + [19.47998046875, 43.59516601562498], + [19.451269531250006, 43.56206054687499], + [19.399609375000068, 43.56757812499998], + [19.360351562500057, 43.59345703125001], + [19.30078125, 43.59179687500003], + [19.254492187500063, 43.584375], + [19.19433593749997, 43.533300781250006], + [19.164355468750017, 43.53544921874999], + [19.11279296874997, 43.52773437500002], + [19.080078125000057, 43.51772460937502], + [19.0283203125, 43.53251953125002], + [18.97421875, 43.54233398437498], + [18.95068359375, 43.52666015624999], + [18.94023437499999, 43.49672851562502], + [18.97382812500001, 43.44238281250006], + [19.036718750000034, 43.35732421875002], + [19.026660156250017, 43.292431640624955], + [18.97871093750001, 43.28540039062503], + [18.934667968750006, 43.339453125000034], + [18.895605468750063, 43.348193359375045], + [18.85107421875003, 43.34633789062502], + [18.749218750000068, 43.283544921875006], + [18.67421875000008, 43.230810546875006], + [18.656835937500006, 43.19394531250006], + [18.629980468750034, 43.153662109375034], + [18.621875, 43.12460937500006], + [18.623632812500063, 43.027685546875034], + [18.488476562500068, 43.01215820312498], + [18.460156250000068, 42.997900390625006], + [18.44384765625003, 42.96845703125004], + [18.455078125, 42.844091796875006], + [18.46601562500001, 42.777246093749994], + [18.543261718750045, 42.674169921875034], + [18.54589843750003, 42.64160156249997], + [18.534960937500045, 42.62011718750003], + [18.480078125000034, 42.57919921875006], + [18.453906250000045, 42.56450195312499], + [18.436328125000017, 42.559716796874994], + [18.346582031250023, 42.58666992187497], + [18.304003906250045, 42.59941406249999], + [18.12392578125005, 42.690576171874994], + [18.044531250000034, 42.74125976562502], + [17.918847656250023, 42.80742187500002], + [17.84130859375003, 42.845068359375034], + [17.80195312500001, 42.90224609375005], + [17.74023437500003, 42.91547851562498], + [17.667578125000063, 42.897119140624994], + [17.585156250000068, 42.93837890625005], + [17.64345703125005, 42.959765625000045], + [17.657812500000034, 42.980078125], + [17.650488281250063, 43.006591796875], + [17.624804687500074, 43.04277343749999], + [17.402246093750023, 43.19892578125001], + [17.293066406250063, 43.30561523437498], + [17.27529296875008, 43.343847656250034], + [17.27382812500005, 43.44575195312501], + [17.248046875000057, 43.47021484375003], + [17.084570312500034, 43.516552734374955], + [16.90185546875003, 43.649023437500034], + [16.713476562500034, 43.77880859375003], + [16.68769531250001, 43.815039062500034], + [16.59052734375004, 43.913183593750034], + [16.47207031250005, 44.00258789062505], + [16.377539062500063, 44.05961914062502], + [16.300097656250017, 44.12451171875], + [16.214257812500023, 44.21513671874999], + [16.169824218750023, 44.35200195312498], + [16.13027343750005, 44.473730468750006], + [16.10341796875008, 44.52099609375006], + [16.04902343750001, 44.53759765624997], + [15.880078125000068, 44.68193359374999], + [15.736621093750045, 44.76582031250001], + [15.737988281250068, 44.85639648437498], + [15.761523437500074, 45.007519531249955], + [15.788085937500057, 45.17895507812497], + [15.822851562500034, 45.20278320312505], + [15.888281250000034, 45.21572265625002], + [15.963183593750017, 45.21079101562498], + [16.028320312500057, 45.18959960937502], + [16.157324218750063, 45.07221679687498], + [16.231054687500063, 45.02661132812503], + [16.29335937500005, 45.00883789062496], + [16.365039062500017, 45.058349609375], + [16.453515625, 45.162011718749994], + [16.53066406250008, 45.21669921875002], + [16.790820312500074, 45.19687], + [16.918652343749983, 45.27656249999998] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "St-Barthélemy", + "iso_a2": "BL", + "iso_a3": "BLM", + "iso_n3": "652", + "continent": "North America" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-62.831933593749994, 17.87646484375], + [-62.846923828125, 17.875195312499997], + [-62.85893554687499, 17.88364257812499], + [-62.869384765625, 17.898583984374994], + [-62.875439453125, 17.91357421875], + [-62.87421875, 17.922265625], + [-62.8654296875, 17.918261718750003], + [-62.799707031249994, 17.90869140625], + [-62.80703125, 17.89765625], + [-62.81816406249999, 17.885449218749997], + [-62.831933593749994, 17.87646484375] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Belarus", + "iso_a2": "BY", + "iso_a3": "BLR", + "iso_n3": "112", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [28.14794921875, 56.142919921875], + [28.284277343750006, 56.055908203125], + [28.316308593750023, 56.052539062499996], + [28.39208984375, 56.08671875], + [28.407031250000017, 56.089013671875], + [28.56396484375, 56.0919921875], + [28.63691406250001, 56.061767578125], + [28.690820312500023, 56.00263671875], + [28.740820312500006, 55.955371093749996], + [28.794726562500017, 55.942578125], + [28.94746093750001, 56.002099609375], + [29.03173828125, 56.021777343749996], + [29.08740234375, 56.021142578125], + [29.283007812500017, 55.96787109375], + [29.375, 55.938720703125], + [29.39609375, 55.91220703125], + [29.39794921875, 55.8810546875], + [29.373144531250006, 55.834716796875], + [29.353417968750023, 55.784375], + [29.412988281250023, 55.724853515625], + [29.482226562500017, 55.6845703125], + [29.63007812500001, 55.751171875], + [29.6845703125, 55.7697265625], + [29.744140625, 55.77041015625], + [29.82392578125001, 55.7951171875], + [29.881640625000017, 55.832324218749996], + [29.93701171875, 55.845263671874996], + [30.04267578125001, 55.83642578125], + [30.23359375000001, 55.84521484375], + [30.45625, 55.78681640625], + [30.475390625000017, 55.768798828125], + [30.586718750000017, 55.70029296875], + [30.625585937500006, 55.666259765625], + [30.66230468750001, 55.65546875], + [30.7216796875, 55.622119140624996], + [30.80078125, 55.601123046874996], + [30.85595703125, 55.60751953125], + [30.882226562500023, 55.59638671875], + [30.906835937500006, 55.57001953125], + [30.908789062500006, 55.525341796875], + [30.90058593750001, 55.397412109375], + [30.86181640625, 55.360400390624996], + [30.82099609375001, 55.3302734375], + [30.810546875, 55.306982421875], + [30.814453125, 55.2787109375], + [30.87744140625, 55.2234375], + [30.958886718750023, 55.13759765625], + [30.97773437500001, 55.08779296875], + [30.97773437500001, 55.05048828125], + [30.866796875, 54.940722656249996], + [30.829882812500017, 54.914990234375], + [30.804492187500017, 54.8609375], + [30.791015625, 54.806005859375], + [30.798828125, 54.783251953124996], + [30.984179687500017, 54.6958984375], + [31.12128906250001, 54.648486328124996], + [31.152148437500017, 54.625341796875], + [31.154882812500006, 54.6109375], + [31.081933593750023, 54.51708984375], + [31.074804687500006, 54.491796875], + [31.18476562500001, 54.452978515625], + [31.245507812500023, 54.391650390624996], + [31.299121093750017, 54.29169921875], + [31.403613281250017, 54.195947265625], + [31.62841796875, 54.111181640625], + [31.7919921875, 54.055908203125], + [31.825976562500017, 54.030712890625], + [31.837792968750023, 54.00078125], + [31.825292968750006, 53.935009765625], + [31.783007812500017, 53.85498046875], + [31.754199218750017, 53.81044921875], + [31.82080078125, 53.791943359375], + [31.9921875, 53.796875], + [32.20039062500001, 53.78125], + [32.4501953125, 53.692919921874996], + [32.45097656250002, 53.6533203125], + [32.42519531250002, 53.61728515625], + [32.4423828125, 53.579248046875], + [32.46962890625002, 53.54697265625], + [32.68574218750001, 53.44814453125], + [32.70644531250002, 53.41943359375], + [32.71025390625002, 53.371435546875], + [32.70429687500001, 53.336328125], + [32.64443359375002, 53.32890625], + [32.57802734375002, 53.31240234375], + [32.469335937500006, 53.2703125], + [32.42626953125, 53.210595703125], + [32.25068359375001, 53.128369140625], + [32.14199218750002, 53.091162109375], + [32.05546875000002, 53.089453125], + [31.849707031250006, 53.106201171875], + [31.777441406250006, 53.146875], + [31.747460937500023, 53.1841796875], + [31.668261718750017, 53.200927734375], + [31.56298828125, 53.202490234375], + [31.417871093750023, 53.196044921875], + [31.38837890625001, 53.184814453125], + [31.364550781250017, 53.138964843749996], + [31.30292968750001, 53.060888671875], + [31.2587890625, 53.01669921875], + [31.29511718750001, 52.989794921874996], + [31.35302734375, 52.933447265625], + [31.442773437500023, 52.86181640625], + [31.53515625, 52.7982421875], + [31.564843750000023, 52.759228515625], + [31.5634765625, 52.7314453125], + [31.519433593750023, 52.69873046875], + [31.526171875000017, 52.6330078125], + [31.61591796875001, 52.546191406249996], + [31.585546875, 52.532470703125], + [31.576562500000023, 52.426025390625], + [31.57734375000001, 52.312304687499996], + [31.6015625, 52.284814453125], + [31.64990234375, 52.26220703125], + [31.690625, 52.220654296875], + [31.758593750000017, 52.125830078125], + [31.76337890625001, 52.10107421875], + [31.57373046875, 52.10810546875], + [31.345996093750017, 52.10537109375], + [31.21796875000001, 52.050244140625], + [31.16845703125, 52.062939453125], + [31.07929687500001, 52.076953125], + [30.98066406250001, 52.046191406249996], + [30.845703125, 51.953076171875], + [30.755273437500023, 51.895166015625], + [30.667285156250017, 51.814111328125], + [30.639453125000017, 51.770068359374996], + [30.583886718750023, 51.68896484375], + [30.533007812500017, 51.596337890624994], + [30.56074218750001, 51.531494140625], + [30.602343750000017, 51.471240234374996], + [30.611718750000023, 51.40634765625], + [30.63251953125001, 51.355419921875], + [30.576953125000017, 51.318359375], + [30.54453125, 51.265039062499994], + [30.449511718750017, 51.274316406249994], + [30.333398437500023, 51.325537109375], + [30.308984375000023, 51.399609375], + [30.219531250000017, 51.451220703124996], + [30.160742187500006, 51.477880859375], + [30.063769531250017, 51.48203125], + [29.908789062500006, 51.4580078125], + [29.7060546875, 51.43955078125], + [29.553125, 51.4345703125], + [29.469628906250023, 51.408349609374994], + [29.346484375000017, 51.382568359375], + [29.298828125, 51.413037109375], + [29.23046875, 51.497021484375], + [29.174218750000023, 51.580615234374996], + [29.135644531250023, 51.61728515625], + [29.10205078125, 51.6275390625], + [29.06074218750001, 51.625439453125], + [29.013085937500023, 51.598925781249996], + [28.97773437500001, 51.57177734375], + [28.927539062500017, 51.562158203124994], + [28.849511718750023, 51.540185546874994], + [28.793261718750017, 51.5103515625], + [28.73125, 51.433398437499996], + [28.690234375000017, 51.438867187499994], + [28.647753906250017, 51.45654296875], + [28.599023437500023, 51.542626953124994], + [28.532031250000017, 51.562451171875], + [28.424609375000017, 51.563623046874994], + [28.291601562500006, 51.581835937499996], + [28.18378906250001, 51.607861328125], + [28.144433593750023, 51.60166015625], + [28.08027343750001, 51.5650390625], + [28.0107421875, 51.559765625], + [27.85859375000001, 51.5923828125], + [27.82880859375001, 51.577441406249996], + [27.788867187500017, 51.529150390625], + [27.741308593750006, 51.482568359374994], + [27.7, 51.477978515625], + [27.6767578125, 51.48994140625], + [27.689746093750017, 51.572412109374994], + [27.601367187500017, 51.601611328124996], + [27.45234375000001, 51.606103515625], + [27.34765625, 51.594140625], + [27.296289062500023, 51.597412109375], + [27.270117187500006, 51.613574218749996], + [27.141992187500023, 51.75205078125], + [27.074121093750023, 51.76083984375], + [26.95283203125001, 51.75400390625], + [26.7734375, 51.770703125], + [26.56689453125, 51.801904296875], + [26.453417968750017, 51.813427734375], + [26.394335937500017, 51.84443359375], + [26.26708984375, 51.855029296874996], + [25.92529296875, 51.913525390625], + [25.785742187500006, 51.923828125], + [25.58027343750001, 51.924755859375], + [25.2671875, 51.937744140625], + [25.066699218750017, 51.930517578125], + [24.97382812500001, 51.9111328125], + [24.86640625000001, 51.89912109375], + [24.68515625, 51.88828125], + [24.611328125, 51.889501953125], + [24.495214843750006, 51.883056640625], + [24.361914062500006, 51.867529296875], + [24.32373046875, 51.838427734374996], + [24.280078125000017, 51.774707031249996], + [24.126855468750023, 51.6646484375], + [23.978320312500017, 51.59130859375], + [23.951171875, 51.58505859375], + [23.8642578125, 51.623974609375], + [23.79169921875001, 51.637109375], + [23.706835937500017, 51.64130859375], + [23.64667968750001, 51.628857421875], + [23.60859375000001, 51.610498046875], + [23.61376953125, 51.525390625], + [23.605273437500017, 51.517919921875], + [23.539648437500006, 51.618896484375], + [23.544824218750023, 51.710253906249996], + [23.581347656250017, 51.76240234375], + [23.62568359375001, 51.809326171875], + [23.607421875, 51.87978515625], + [23.65107421875001, 51.972998046875], + [23.652441406250006, 52.040380859375], + [23.63330078125, 52.069580078125], + [23.597949218750017, 52.103076171874996], + [23.50117187500001, 52.140380859375], + [23.458398437500023, 52.16953125], + [23.3271484375, 52.208447265625], + [23.19697265625001, 52.25693359375], + [23.175097656250017, 52.28662109375], + [23.18125, 52.306982421875], + [23.2041015625, 52.337890625], + [23.303320312500006, 52.428369140625], + [23.410937500000017, 52.5162109375], + [23.479589843750006, 52.5515625], + [23.8447265625, 52.664208984375], + [23.901269531250023, 52.70361328125], + [23.915429687500023, 52.770263671875], + [23.916308593750017, 52.81875], + [23.909375, 52.9048828125], + [23.887109375000023, 53.0275390625], + [23.859179687500017, 53.112109375], + [23.78925781250001, 53.270947265625], + [23.598925781250017, 53.59921875], + [23.484667968750017, 53.939794921875], + [23.55908203125, 53.91982421875], + [23.733691406250017, 53.912255859375], + [23.87255859375, 53.935693359375], + [23.944433593750006, 53.93896484375], + [24.00849609375001, 53.931640625], + [24.103906250000023, 53.94501953125], + [24.191308593750023, 53.950439453125], + [24.236621093750017, 53.919970703124996], + [24.31796875, 53.89296875], + [24.478515625, 53.9318359375], + [24.620703125, 53.979833984375], + [24.768164062500006, 53.974658203124996], + [24.78925781250001, 53.9982421875], + [24.82568359375, 54.118994140625], + [24.869531250000023, 54.145166015625], + [25.04609375000001, 54.133056640625], + [25.111425781250006, 54.154931640625], + [25.179492187500017, 54.2142578125], + [25.28369140625, 54.251269531249996], + [25.37060546875, 54.251220703125], + [25.46113281250001, 54.292773437499996], + [25.505664062500017, 54.264941406249996], + [25.52734375, 54.215136718749996], + [25.497363281250017, 54.175244140625], + [25.510351562500006, 54.159619140625], + [25.573046875000017, 54.139892578125], + [25.680566406250023, 54.140478515625], + [25.74921875000001, 54.156982421875], + [25.765234375, 54.17978515625], + [25.765039062500023, 54.22119140625], + [25.748144531250006, 54.25966796875], + [25.702539062500023, 54.29296875], + [25.61689453125001, 54.310107421874996], + [25.557519531250023, 54.310693359375], + [25.54736328125, 54.331835937499996], + [25.56757812500001, 54.37705078125], + [25.62031250000001, 54.460400390625], + [25.68515625, 54.535791015625], + [25.72480468750001, 54.564257812499996], + [25.73164062500001, 54.590380859374996], + [25.723925781250017, 54.636035156249996], + [25.722460937500017, 54.71787109375], + [25.780859375, 54.833251953125], + [25.859277343750023, 54.919287109375], + [25.964453125, 54.94716796875], + [26.09296875000001, 54.9623046875], + [26.175195312500023, 55.003271484375], + [26.2158203125, 55.050390625], + [26.23125, 55.090136718749996], + [26.250781250000017, 55.12451171875], + [26.291796875000017, 55.139599609375], + [26.601171875, 55.130175781249996], + [26.6484375, 55.20419921875], + [26.675, 55.224902343749996], + [26.734375, 55.24677734375], + [26.775683593750017, 55.273095703125], + [26.760156250000023, 55.293359375], + [26.68125, 55.306445312499996], + [26.49531250000001, 55.318017578125], + [26.457617187500006, 55.34248046875], + [26.469531250000017, 55.371923828125], + [26.51923828125001, 55.44814453125], + [26.56660156250001, 55.546484375], + [26.5908203125, 55.62265625], + [26.593554687500017, 55.667529296874996], + [26.620214843750006, 55.679638671875], + [26.771875, 55.693994140625], + [26.82246093750001, 55.709228515625], + [26.953027343750023, 55.812939453125], + [27.052539062500017, 55.83056640625], + [27.309179687500006, 55.80390625], + [27.427148437500023, 55.805957031249996], + [27.45917968750001, 55.803515625], + [27.576757812500006, 55.798779296875], + [27.589453125, 55.8091796875], + [27.64228515625001, 55.91171875], + [27.694238281250023, 55.941552734375], + [27.896289062500017, 56.076171875], + [28.032031250000017, 56.13330078125], + [28.11787109375001, 56.145800781249996], + [28.14794921875, 56.142919921875] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Belize", + "iso_a2": "BZ", + "iso_a3": "BLZ", + "iso_n3": "084", + "continent": "North America" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-87.8529296875, 17.4228515625], + [-87.92998046874996, 17.283007812500017], + [-87.93486328124999, 17.322949218749983], + [-87.90283203125003, 17.42646484375001], + [-87.85942382812499, 17.46279296875005], + [-87.83251953125, 17.501074218750034], + [-87.826416015625, 17.546289062499994], + [-87.78862304687493, 17.524218750000045], + [-87.79814453125002, 17.479589843750006], + [-87.8529296875, 17.4228515625] + ] + ], + [ + [ + [-87.9505859375, 17.924951171874966], + [-87.99809570312499, 17.906347656250006], + [-87.95903320312493, 17.964013671875023], + [-87.95332031250001, 18.001074218750034], + [-87.89833984375, 18.154931640625023], + [-87.85893554687496, 18.154052734375], + [-87.84853515625, 18.14038085937497], + [-87.9505859375, 17.924951171874966] + ] + ], + [ + [ + [-88.34926757812494, 18.358837890624983], + [-88.29565429687494, 18.344091796875006], + [-88.24726562499995, 18.35468750000004], + [-88.1302734375, 18.350732421875023], + [-88.08525390624999, 18.226123046875045], + [-88.09721679687502, 18.121630859375074], + [-88.20747070312501, 17.846093749999966], + [-88.221435546875, 17.75136718750005], + [-88.27172851562494, 17.60986328125], + [-88.203466796875, 17.5166015625], + [-88.2671875, 17.392578125000057], + [-88.28881835937497, 17.31269531250001], + [-88.29399414062496, 17.19213867187497], + [-88.26181640624998, 16.963037109375023], + [-88.31342773437501, 16.632763671874983], + [-88.404541015625, 16.488623046875006], + [-88.46113281249998, 16.43378906250001], + [-88.56230468749999, 16.29042968750005], + [-88.69516601562498, 16.247656250000034], + [-88.87910156249998, 16.016650390625045], + [-88.91171874999995, 15.95600585937504], + [-88.89404296875, 15.890625], + [-88.937158203125, 15.889843749999955], + [-89.11357421874996, 15.900683593750045], + [-89.2328125, 15.888671875], + [-89.2375, 15.894433593750023], + [-89.22763671875, 16.142822265625], + [-89.21245117187493, 16.527148437500045], + [-89.20126953124998, 16.808984375], + [-89.19038085937498, 17.08466796875001], + [-89.18217773437499, 17.29121093750001], + [-89.17109374999995, 17.57226562499997], + [-89.16147460937503, 17.81484375], + [-89.16235351562494, 17.901953124999977], + [-89.13354492187503, 17.970800781249977], + [-89.05043945312497, 17.99970703125001], + [-88.94262695312494, 17.93964843750004], + [-88.89780273437495, 17.91455078124997], + [-88.85737304687498, 17.928808593750034], + [-88.80634765624998, 17.965527343749983], + [-88.74360351562498, 18.071630859375006], + [-88.58618164062497, 18.29052734375003], + [-88.52299804687499, 18.445898437500063], + [-88.46127929687503, 18.47675781250004], + [-88.37241210937495, 18.482324218750023], + [-88.29565429687494, 18.47241210937503], + [-88.34926757812494, 18.358837890624983] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "Bermuda", + "iso_a2": "BM", + "iso_a3": "BMU", + "iso_n3": "060", + "continent": "North America" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-64.73027343749999, 32.29345703125], + [-64.82011718749999, 32.259619140625], + [-64.84506835937499, 32.2623046875], + [-64.86284179687499, 32.273876953125], + [-64.77119140625, 32.30771484375], + [-64.69462890624999, 32.3869140625], + [-64.66831054687499, 32.38193359375], + [-64.73027343749999, 32.29345703125] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Bolivia", + "iso_a2": "BO", + "iso_a3": "BOL", + "iso_n3": "068", + "continent": "South America" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-58.159765625, -20.164648437500006], + [-58.13994140624999, -19.998828125], + [-58.160058593749994, -19.85488281250001], + [-58.18017578125, -19.81787109375], + [-58.47421875, -19.64609375], + [-58.741113281249994, -19.490234375], + [-59.09052734375, -19.286230468750006], + [-59.54086914062499, -19.291796875], + [-60.00737304687499, -19.29755859375001], + [-60.451611328125, -19.388769531250006], + [-60.88876953124999, -19.478515625], + [-61.09599609374999, -19.52099609375], + [-61.51181640624999, -19.6064453125], + [-61.7568359375, -19.6453125], + [-61.82089843749999, -19.80947265625001], + [-61.916943359375, -20.05537109375001], + [-62.01181640624999, -20.199023437500003], + [-62.12163085937499, -20.349902343750003], + [-62.276318359375, -20.5625], + [-62.276513671874994, -20.82080078125], + [-62.27666015624999, -21.066015625], + [-62.38544921875, -21.41171875], + [-62.47783203124999, -21.70527343750001], + [-62.56694335937499, -21.988671875], + [-62.628515625, -22.183984375], + [-62.65097656249999, -22.233691406250003], + [-62.665283203125, -22.21796875000001], + [-62.744580078125, -22.15986328125001], + [-62.815087890624994, -22.049609375], + [-62.83427734374999, -21.999121093750006], + [-62.843359375, -21.99726562500001], + [-63.2671875, -22.000585937500006], + [-63.67534179687499, -22.004296875], + [-63.716943359374994, -22.02753906250001], + [-63.7755859375, -22.02724609375001], + [-63.81865234374999, -22.00546875], + [-63.86103515625, -22.00722656250001], + [-63.92167968749999, -22.028613281250003], + [-63.97612304687499, -22.072558593750003], + [-64.1318359375, -22.365820312500006], + [-64.20908203124999, -22.491308593750006], + [-64.26640624999999, -22.603320312500003], + [-64.30791015624999, -22.7953125], + [-64.32529296874999, -22.82763671875], + [-64.373974609375, -22.761035156250003], + [-64.4455078125, -22.58535156250001], + [-64.477734375, -22.4853515625], + [-64.5236328125, -22.37158203125], + [-64.60551757812499, -22.228808593750003], + [-64.70009765625, -22.185546875], + [-64.75864257812499, -22.17128906250001], + [-64.84306640624999, -22.14394531250001], + [-64.992626953125, -22.109667968750003], + [-65.0578125, -22.10273437500001], + [-65.48486328125, -22.09814453125], + [-65.518798828125, -22.09453125], + [-65.686181640625, -22.11025390625001], + [-65.77104492187499, -22.099609375], + [-65.86015624999999, -22.01972656250001], + [-66.05859375, -21.879492187500006], + [-66.098583984375, -21.835058593750006], + [-66.17465820312499, -21.8056640625], + [-66.220166015625, -21.802539062500003], + [-66.24760742187499, -21.83046875], + [-66.28212890625, -21.94746093750001], + [-66.3224609375, -22.053125], + [-66.365185546875, -22.11376953125], + [-66.506982421875, -22.15839843750001], + [-66.63901367187499, -22.205371093750003], + [-66.71171874999999, -22.21630859375], + [-66.750634765625, -22.269335937500003], + [-66.76748046875, -22.343066406250003], + [-66.80029296875, -22.40966796875], + [-66.99111328125, -22.509863281250006], + [-67.03354492187499, -22.55224609375], + [-67.055419921875, -22.65087890625], + [-67.16191406249999, -22.773828125], + [-67.19487304687499, -22.82167968750001], + [-67.362255859375, -22.85517578125001], + [-67.57993164062499, -22.891699218750006], + [-67.70732421874999, -22.88916015625], + [-67.79443359375, -22.879492187500006], + [-67.8205078125, -22.857714843750003], + [-67.87944335937499, -22.82294921875001], + [-67.88916015625, -22.7841796875], + [-67.88999023437499, -22.72919921875001], + [-67.87373046875, -22.63056640625001], + [-67.88173828125, -22.49335937500001], + [-67.950390625, -22.33369140625001], + [-67.944921875, -22.2822265625], + [-67.95390624999999, -22.20400390625001], + [-67.98837890624999, -22.05712890625], + [-68.07675781249999, -21.9828125], + [-68.101806640625, -21.860644531250003], + [-68.11215820312499, -21.753027343750006], + [-68.18642578125, -21.61855468750001], + [-68.19853515624999, -21.447265625], + [-68.197021484375, -21.30029296875], + [-68.3138671875, -21.1296875], + [-68.435498046875, -20.9482421875], + [-68.533837890625, -20.923632812500003], + [-68.558251953125, -20.901953125], + [-68.56894531249999, -20.84980468750001], + [-68.571044921875, -20.769140625], + [-68.56318359375, -20.72011718750001], + [-68.48740234374999, -20.640722656250006], + [-68.484326171875, -20.62841796875], + [-68.49985351562499, -20.61201171875001], + [-68.69580078125, -20.49296875], + [-68.74516601562499, -20.45859375], + [-68.76054687499999, -20.41621093750001], + [-68.759228515625, -20.378027343750006], + [-68.7123046875, -20.338964843750006], + [-68.68857421874999, -20.31005859375], + [-68.7345703125, -20.225195312500006], + [-68.73002929687499, -20.1484375], + [-68.75932617187499, -20.115527343750003], + [-68.755810546875, -20.0908203125], + [-68.727490234375, -20.069628906250003], + [-68.60019531249999, -20.044921875], + [-68.560693359375, -19.967089843750003], + [-68.55937, -19.90234375], + [-68.578271484375, -19.856542968750006], + [-68.69619140625, -19.74072265625], + [-68.69829101562499, -19.72109375], + [-68.57529296874999, -19.56015625], + [-68.48701171875, -19.454394531250003], + [-68.462890625, -19.43281250000001], + [-68.470166015625, -19.409960937500003], + [-68.49199218749999, -19.381933593750006], + [-68.5478515625, -19.341113281250003], + [-68.620556640625, -19.296679687500003], + [-68.6806640625, -19.24238281250001], + [-68.75908203124999, -19.162207031250006], + [-68.85795898437499, -19.093359375], + [-68.93100585937499, -19.025195312500003], + [-68.96831054687499, -18.96796875000001], + [-68.96909179687499, -18.90966796875], + [-68.97885742187499, -18.81298828125], + [-69.026806640625, -18.65625], + [-69.03940429687499, -18.550097656250003], + [-69.06015625, -18.43300781250001], + [-69.08095703125, -18.35664062500001], + [-69.09228515625, -18.28242187500001], + [-69.1263671875, -18.202441406250003], + [-69.145458984375, -18.14404296875], + [-69.11806640625, -18.10273437500001], + [-69.09042968749999, -18.070703125], + [-69.0939453125, -18.05048828125001], + [-69.28232421874999, -17.96484375], + [-69.31337890625, -17.943164062500003], + [-69.35800781249999, -17.77167968750001], + [-69.49501953125, -17.61953125], + [-69.5109375, -17.50605468750001], + [-69.51108398437499, -17.5048828125], + [-69.510986328125, -17.46035156250001], + [-69.521923828125, -17.388964843750003], + [-69.56381835937499, -17.33291015625001], + [-69.62587890625, -17.29443359375], + [-69.645703125, -17.24853515625], + [-69.62485351562499, -17.2001953125], + [-69.5033203125, -17.104785156250003], + [-69.43833007812499, -17.08837890625], + [-69.42109375, -17.0400390625], + [-69.38154296875, -17.00136718750001], + [-69.267236328125, -16.8609375], + [-69.19980468749999, -16.76845703125001], + [-69.13251953125, -16.71308593750001], + [-69.05454101562499, -16.67431640625], + [-69.020703125, -16.6421875], + [-69.03837890624999, -16.54267578125001], + [-69.03291015625, -16.47597656250001], + [-69.00625, -16.433691406250006], + [-68.92802734374999, -16.3890625], + [-68.8578125, -16.354785156250003], + [-68.8427734375, -16.337890625], + [-68.848828125, -16.312792968750003], + [-68.9134765625, -16.26191406250001], + [-69.04624023437499, -16.21767578125001], + [-69.1341796875, -16.221972656250003], + [-69.18798828125, -16.18281250000001], + [-69.21757812499999, -16.14912109375001], + [-69.39189453124999, -15.736914062500006], + [-69.4208984375, -15.640625], + [-69.41850585937499, -15.603417968750009], + [-69.301904296875, -15.3994140625], + [-69.254296875, -15.332910156250009], + [-69.17246093749999, -15.236621093750003], + [-69.187109375, -15.19873046875], + [-69.330712890625, -15.038964843750009], + [-69.37470703125, -14.962988281250006], + [-69.37373046875, -14.8875], + [-69.35947265624999, -14.7953125], + [-69.276025390625, -14.745898437500003], + [-69.25234375, -14.671093750000011], + [-69.23491210937499, -14.597070312500009], + [-69.19926757812499, -14.572558593750003], + [-69.16269531249999, -14.530957031250011], + [-69.11972656249999, -14.4703125], + [-69.05278320312499, -14.417578125], + [-69.013134765625, -14.377246093750003], + [-69.00449218749999, -14.265039062500009], + [-68.97177734374999, -14.234375], + [-68.880322265625, -14.198828125], + [-68.87089843749999, -14.169726562500003], + [-68.89169921874999, -14.094335937500006], + [-68.937451171875, -14.0146484375], + [-68.974267578125, -13.975976562500009], + [-69.023046875, -13.7802734375], + [-69.07412109375, -13.682812500000011], + [-69.05283203124999, -13.643945312500009], + [-69.017529296875, -13.594433593750011], + [-68.98344726562499, -13.496386718750003], + [-68.972265625, -13.38232421875], + [-68.98051757812499, -12.962597656250011], + [-68.97861328124999, -12.880078125000011], + [-68.933740234375, -12.822070312500003], + [-68.86767578125, -12.755175781250003], + [-68.81181640624999, -12.729589843750006], + [-68.75908203124999, -12.687207031250011], + [-68.762890625, -12.607714843750003], + [-68.728125, -12.560742187500011], + [-68.68525390625, -12.501953125], + [-68.81870117187499, -12.270410156250009], + [-68.93603515625, -12.066796875], + [-69.04619140624999, -11.875683593750011], + [-69.17373046875, -11.654296875], + [-69.25771484375, -11.50859375], + [-69.36201171875, -11.327539062500009], + [-69.45361328125, -11.16875], + [-69.57861328125, -10.951757812500006], + [-69.462548828125, -10.948144531250009], + [-69.228515625, -10.955664062500006], + [-69.00166015625, -10.994335937500011], + [-68.84833984375, -11.011132812500009], + [-68.78408203125, -11.044628906250011], + [-68.769921875, -11.09765625], + [-68.727490234375, -11.122460937500009], + [-68.678369140625, -11.11279296875], + [-68.62265625, -11.109179687500003], + [-68.49833984374999, -11.054785156250006], + [-68.39799804687499, -11.01875], + [-68.31113281249999, -10.975195312500006], + [-68.2666015625, -10.93310546875], + [-68.158642578125, -10.785058593750009], + [-68.0716796875, -10.703125], + [-67.99169921875, -10.674414062500006], + [-67.83500976562499, -10.662792968750011], + [-67.78569335937499, -10.68603515625], + [-67.72177734374999, -10.68310546875], + [-67.666650390625, -10.598925781250003], + [-67.582421875, -10.505957031250006], + [-67.416943359375, -10.389843750000011], + [-67.33271484375, -10.35791015625], + [-67.28046875, -10.317285156250009], + [-67.19047851562499, -10.311425781250009], + [-67.1115234375, -10.268945312500009], + [-66.72998046875, -9.975488281250009], + [-66.575341796875, -9.89990234375], + [-66.47890625, -9.886132812500009], + [-66.39921874999999, -9.8681640625], + [-66.26357421875, -9.826074218750009], + [-65.92470703125, -9.785449218750003], + [-65.706787109375, -9.768457031250009], + [-65.637109375, -9.80908203125], + [-65.55869140624999, -9.797460937500006], + [-65.49199218749999, -9.731738281250003], + [-65.436767578125, -9.71044921875], + [-65.396142578125, -9.71240234375], + [-65.337890625, -9.790234375000011], + [-65.309326171875, -9.87265625], + [-65.328125, -9.935546875], + [-65.32456054687499, -10.026953125], + [-65.298583984375, -10.146777343750003], + [-65.31308593749999, -10.253027343750006], + [-65.395458984375, -10.392285156250011], + [-65.4369140625, -10.449023437500003], + [-65.44711914062499, -10.507421875], + [-65.43999023437499, -10.586230468750003], + [-65.402294921875, -10.714746093750009], + [-65.33403320312499, -10.892773437500011], + [-65.32377929687499, -11.024804687500009], + [-65.37158203125, -11.1103515625], + [-65.39360351562499, -11.184277343750011], + [-65.389892578125, -11.246289062500011], + [-65.37285156249999, -11.289941406250009], + [-65.34238281249999, -11.315039062500006], + [-65.32548828124999, -11.36474609375], + [-65.322021484375, -11.439160156250011], + [-65.28227539062499, -11.511035156250003], + [-65.206201171875, -11.58056640625], + [-65.175390625, -11.646875], + [-65.18974609374999, -11.710058593750006], + [-65.1857421875, -11.74951171875], + [-65.16337890624999, -11.76513671875], + [-65.14267578124999, -11.75234375], + [-65.11513671875, -11.735058593750011], + [-65.090283203125, -11.7412109375], + [-65.037109375, -11.829394531250003], + [-65.0302734375, -11.847363281250011], + [-65.001220703125, -11.920019531250006], + [-64.99252929687499, -11.975195312500006], + [-64.91435546874999, -12.005957031250006], + [-64.82988281249999, -12.0302734375], + [-64.783447265625, -12.059375], + [-64.69003906249999, -12.146484375], + [-64.61166992187499, -12.20390625], + [-64.513427734375, -12.2509765625], + [-64.48076171874999, -12.326171875], + [-64.42050781249999, -12.439746093750003], + [-64.255029296875, -12.483300781250009], + [-64.06162109374999, -12.505078125000011], + [-63.93857421874999, -12.5296875], + [-63.7880859375, -12.469433593750011], + [-63.68857421874999, -12.47802734375], + [-63.58564453125, -12.518945312500009], + [-63.541894531249994, -12.546679687500003], + [-63.465234375, -12.605175781250011], + [-63.3466796875, -12.680078125], + [-63.249755859375, -12.707910156250009], + [-63.1806640625, -12.666210937500011], + [-63.116796875, -12.651660156250003], + [-63.06748046874999, -12.669140625000011], + [-63.04135742187499, -12.750390625], + [-63.01518554687499, -12.805566406250009], + [-62.957910156249994, -12.847070312500009], + [-62.83515625, -12.953710937500006], + [-62.76547851562499, -12.997265625000011], + [-62.68706054687499, -12.994335937500011], + [-62.525537109374994, -13.064257812500003], + [-62.35283203124999, -13.132421875], + [-62.263916015625, -13.143652343750006], + [-62.17607421874999, -13.133691406250009], + [-62.11801757812499, -13.159765625], + [-62.09477539062499, -13.241992187500003], + [-61.944726562499994, -13.40625], + [-61.87412109374999, -13.470410156250011], + [-61.789941406249994, -13.525585937500011], + [-61.57568359375, -13.524804687500009], + [-61.51157226562499, -13.541210937500011], + [-61.41606445312499, -13.526562500000011], + [-61.129150390625, -13.49853515625], + [-61.07700195312499, -13.48974609375], + [-60.914501953125, -13.561425781250009], + [-60.72236328125, -13.664355468750003], + [-60.5953125, -13.745312500000011], + [-60.506591796875, -13.78984375], + [-60.46015625, -13.862402343750006], + [-60.42236328125, -13.93798828125], + [-60.40498046875, -14.019238281250011], + [-60.42807617187499, -14.1], + [-60.46298828124999, -14.132421875], + [-60.47465820312499, -14.184765625000011], + [-60.46015625, -14.263085937500009], + [-60.396240234375, -14.3328125], + [-60.372705078124994, -14.41875], + [-60.338037109374994, -14.570507812500011], + [-60.29887695312499, -14.618554687500009], + [-60.273339843749994, -15.088769531250009], + [-60.402001953124994, -15.0927734375], + [-60.583203125, -15.098339843750011], + [-60.53046875, -15.143164062500006], + [-60.38046875, -15.318261718750009], + [-60.242333984374994, -15.479589843750006], + [-60.22041015625, -15.738671875], + [-60.206640625, -15.901953125], + [-60.18720703125, -16.132128906250003], + [-60.17558593749999, -16.269335937500003], + [-59.83115234374999, -16.28173828125], + [-59.43427734375, -16.295996093750006], + [-58.957275390625, -16.31318359375001], + [-58.53793945312499, -16.328222656250006], + [-58.49658203125, -16.32666015625], + [-58.42368164062499, -16.307910156250003], + [-58.375390625, -16.28359375], + [-58.345605468749994, -16.284375], + [-58.340576171875, -16.339941406250006], + [-58.35078125, -16.410253906250006], + [-58.35039062499999, -16.490820312500006], + [-58.470605468749994, -16.650195312500003], + [-58.478125, -16.70068359375], + [-58.45981445312499, -16.910742187500006], + [-58.417382812499994, -17.08056640625], + [-58.39599609375, -17.23427734375001], + [-58.34775390624999, -17.28212890625001], + [-58.20556640625, -17.363085937500003], + [-57.99091796875, -17.51289062500001], + [-57.905029296875, -17.532324218750006], + [-57.832470703125, -17.512109375], + [-57.78886718749999, -17.573046875], + [-57.780175781249994, -17.67177734375001], + [-57.66166992187499, -17.947363281250006], + [-57.58647460937499, -18.12226562500001], + [-57.55205078124999, -18.18310546875], + [-57.49565429687499, -18.214648437500003], + [-57.50615234374999, -18.2373046875], + [-57.553125, -18.246484375], + [-57.57402343749999, -18.279296875], + [-57.63916015625, -18.475], + [-57.725, -18.733203125], + [-57.783105468749994, -18.91425781250001], + [-57.730859375, -18.91718750000001], + [-57.72861328124999, -18.967382812500006], + [-57.716796875, -19.044042968750006], + [-57.7814453125, -19.053515625], + [-57.800390625, -19.08095703125001], + [-57.87451171875, -19.2294921875], + [-57.9716796875, -19.42421875], + [-58.072021484375, -19.625292968750003], + [-58.131494140624994, -19.74453125], + [-58.029931640624994, -19.83271484375001], + [-57.860742187499994, -19.979589843750006], + [-57.887597656249994, -20.02041015625001], + [-57.96015625, -20.04072265625001], + [-58.021142578124994, -20.05517578125], + [-58.067626953125, -20.1103515625], + [-58.09375, -20.15107421875001], + [-58.159765625, -20.164648437500006] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Brazil", + "iso_a2": "BR", + "iso_a3": "BRA", + "iso_n3": "076", + "continent": "South America" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-48.48588867187493, -27.76699218749998], + [-48.554589843749994, -27.81220703125004], + [-48.542187499999955, -27.57480468749999], + [-48.50517578124996, -27.495507812499994], + [-48.464746093749994, -27.436328125000017], + [-48.41489257812495, -27.399609375], + [-48.37792968749997, -27.451464843750003], + [-48.40957031250002, -27.566308593750037], + [-48.496777343749955, -27.707031250000014], + [-48.48588867187493, -27.76699218749998] + ] + ], + [ + [ + [-48.584423828124955, -26.401562499999983], + [-48.60307617187502, -26.413769531249983], + [-48.665771484375, -26.289648437500006], + [-48.53974609374998, -26.170312500000023], + [-48.49760742187502, -26.21875], + [-48.531103515625006, -26.313183593749997], + [-48.56806640624998, -26.3796875], + [-48.584423828124955, -26.401562499999983] + ] + ], + [ + [ + [-45.26025390624997, -23.889160156249986], + [-45.260888671874994, -23.94130859375005], + [-45.30253906249996, -23.91474609374997], + [-45.41284179687497, -23.934960937499994], + [-45.451416015625, -23.895605468749977], + [-45.30234375, -23.727539062500014], + [-45.27226562500002, -23.751953125000014], + [-45.24907226562499, -23.78261718750005], + [-45.233105468749926, -23.82539062499997], + [-45.25029296874996, -23.85302734375], + [-45.26025390624997, -23.889160156249986] + ] + ], + [ + [ + [-44.12929687499994, -23.14189453124999], + [-44.098046874999966, -23.16933593749998], + [-44.15576171875, -23.166601562499963], + [-44.22050781249996, -23.19082031250001], + [-44.320068359375, -23.212304687500037], + [-44.36015624999999, -23.17207031250001], + [-44.274121093749955, -23.1162109375], + [-44.24287109374998, -23.074121093750037], + [-44.220410156249955, -23.082910156249966], + [-44.191601562499926, -23.113281250000014], + [-44.12929687499994, -23.14189453124999] + ] + ], + [ + [ + [-38.90356445312497, -13.473437499999974], + [-38.937890624999966, -13.532324218749977], + [-38.97758789062496, -13.523535156249963], + [-38.99321289062496, -13.484082031250011], + [-39.02216796874998, -13.445605468749989], + [-39.006591796875, -13.415527343749986], + [-38.98012695312494, -13.398437499999972], + [-38.907128906249994, -13.401074218749983], + [-38.90356445312497, -13.473437499999974] + ] + ], + [ + [ + [-38.743847656249955, -13.097070312500037], + [-38.78300781249993, -13.11865234375], + [-38.786962890625034, -13.055078125], + [-38.68486328125002, -12.974902343750017], + [-38.668115234374966, -12.880175781249989], + [-38.61455078124999, -12.92402343750004], + [-38.60029296875001, -12.97246093749996], + [-38.601171875, -12.99257812499998], + [-38.743847656249955, -13.097070312500037] + ] + ], + [ + [ + [-44.49931640625002, -2.939648437499983], + [-44.597753906250006, -3.037597656249943], + [-44.565332031249966, -2.923925781249977], + [-44.58188476562495, -2.845605468750009], + [-44.56909179687503, -2.784960937499989], + [-44.50195312500003, -2.726269531250026], + [-44.4814453125, -2.717578125000031], + [-44.48730468749997, -2.789746093749997], + [-44.482568359374966, -2.81191406249998], + [-44.49931640625002, -2.939648437499983] + ] + ], + [ + [ + [-44.88310546874996, -1.317871093749986], + [-44.947119140625034, -1.366015625000017], + [-44.96787109374998, -1.390820312500011], + [-45.020849609375034, -1.372363281249974], + [-45.01123046875003, -1.344726562499943], + [-44.99560546874994, -1.347558593749994], + [-44.978662109374966, -1.267285156249983], + [-44.888281250000034, -1.276855468749972], + [-44.88310546874996, -1.317871093749986] + ] + ], + [ + [ + [-51.83251953124997, -1.433789062499969], + [-51.938378906249966, -1.452636718749986], + [-51.80205078124999, -1.202539062500023], + [-51.680029296875006, -1.086132812500026], + [-51.67827148437499, -0.85507812500002], + [-51.546044921874966, -0.649609375], + [-51.424462890624966, -0.56591796875], + [-51.25400390624998, -0.54140625], + [-51.16074218749998, -0.666699218750011], + [-51.27631835937498, -1.02177734374996], + [-51.31010742187496, -1.023828125000023], + [-51.46513671875002, -1.211132812499997], + [-51.6376953125, -1.341894531249991], + [-51.83251953124997, -1.433789062499969] + ] + ], + [ + [ + [-49.62866210937497, -0.229199218749969], + [-49.53520507812502, -0.233593749999969], + [-49.40288085937499, -0.214648437500017], + [-49.31425781249996, -0.167871093749994], + [-49.215087890625, -0.158691406249986], + [-49.11699218749999, -0.163574218750014], + [-48.78657226562501, -0.215527343750026], + [-48.588037109374966, -0.231640625000026], + [-48.51542968750002, -0.248242187500026], + [-48.44448242187494, -0.27187], + [-48.39267578124995, -0.29736328125], + [-48.37968749999999, -0.352832031250017], + [-48.42802734374996, -0.441503906249963], + [-48.463964843750006, -0.534765624999963], + [-48.497460937499994, -0.664941406250009], + [-48.52333984375002, -0.691406249999986], + [-48.56665039062497, -0.684472656249994], + [-48.539697265624994, -0.800976562500011], + [-48.549511718749926, -0.847558593749994], + [-48.570947265624966, -0.892871093749989], + [-48.62407226562493, -0.986914062499963], + [-48.70458984375, -1.106640625000026], + [-48.728515625, -1.13173828124998], + [-48.78984375, -1.173339843750028], + [-48.839697265625006, -1.226562500000028], + [-48.82900390624994, -1.2765625], + [-48.804052734375006, -1.32695312499996], + [-48.83359375, -1.390039062500023], + [-48.928906249999955, -1.482324218749994], + [-48.985937500000034, -1.504687500000031], + [-49.038476562499994, -1.5140625], + [-49.08686523437498, -1.505078125000011], + [-49.17270507812498, -1.41259765625], + [-49.18168945312493, -1.484960937500006], + [-49.204785156249955, -1.55898437499998], + [-49.233984375000034, -1.59951171874998], + [-49.34482421874995, -1.59521484375], + [-49.406591796875034, -1.555566406249994], + [-49.50664062499999, -1.511621093750023], + [-49.52568359374996, -1.630468749999977], + [-49.587890625, -1.712402343749972], + [-49.65058593749998, -1.738085937499974], + [-49.748779296875, -1.755371093750028], + [-49.805126953124955, -1.790234375000026], + [-49.91132812500001, -1.762988281249974], + [-50.009960937499926, -1.708496093749986], + [-50.06572265625002, -1.703808593749997], + [-50.109277343749994, -1.747851562500003], + [-50.33842773437496, -1.755957031249963], + [-50.44345703124995, -1.800683593750023], + [-50.50761718749999, -1.787988281250009], + [-50.60205078125003, -1.697753906250014], + [-50.6171875, -1.637695312499943], + [-50.67338867187499, -1.516015625000023], + [-50.72382812499998, -1.37148437499998], + [-50.759765625, -1.240234374999972], + [-50.72949218749997, -1.126757812499946], + [-50.668310546875034, -1.130566406250011], + [-50.595898437499926, -1.147460937499986], + [-50.58051757812498, -1.13945312499996], + [-50.57695312499999, -1.103125], + [-50.59291992187494, -1.072949218749997], + [-50.709619140624994, -1.077734375], + [-50.783300781250006, -1.010351562500034], + [-50.796093749999955, -0.90625], + [-50.78095703124998, -0.689843750000023], + [-50.771386718749966, -0.645410156250023], + [-50.71992187499998, -0.583398437500009], + [-50.70307617187501, -0.528515625000011], + [-50.71582031250003, -0.470214843749957], + [-50.69370117187495, -0.364453124999983], + [-50.6455078125, -0.27285156249998], + [-50.46157226562502, -0.157421875], + [-50.24824218749998, -0.11640625], + [-49.62866210937497, -0.229199218749969] + ] + ], + [ + [ + [-50.65288085937499, -0.131640624999989], + [-50.926367187500034, -0.327343749999983], + [-51.01899414062498, -0.263085937500037], + [-51.03808593749994, -0.225878906250003], + [-51.02236328124994, -0.188378906249994], + [-51.025732421875006, -0.172363281250028], + [-50.99506835937498, -0.105273437500031], + [-50.84218750000002, -0.050195312500009], + [-50.765283203124966, -0.040869140624963], + [-50.66699218750003, -0.058007812499994], + [-50.65058593749998, -0.10585937499998], + [-50.65288085937499, -0.131640624999989] + ] + ], + [ + [ + [-49.44389648437499, -0.112402343749977], + [-49.70883789062495, -0.14375], + [-49.83007812499997, -0.093896484375023], + [-49.80268554687498, -0.051855468749991], + [-49.712304687499966, 0.015136718749986], + [-49.602197265624994, 0.062695312499997], + [-49.50346679687496, 0.083691406250011], + [-49.400488281250034, 0.057226562500034], + [-49.37231445312497, 0.001074218749963], + [-49.38085937500003, -0.055468750000017], + [-49.44389648437499, -0.112402343749977] + ] + ], + [ + [ + [-49.73823242187498, 0.26816406250002], + [-49.697265625, 0.215966796875037], + [-49.838964843750006, 0.006884765624989], + [-49.917089843750006, -0.023193359375014], + [-50.00249023437502, -0.029296875000014], + [-50.11313476562498, 0.033007812499989], + [-50.285595703124955, 0.028564453125057], + [-50.339453125, 0.043359375000051], + [-50.345117187499994, 0.134472656250054], + [-50.27265624999998, 0.231738281249974], + [-50.12797851562499, 0.226513671874969], + [-49.87900390624998, 0.304541015624963], + [-49.73823242187498, 0.26816406250002] + ] + ], + [ + [ + [-50.42612304687498, 0.139257812500048], + [-50.44394531249998, -0.007666015624949], + [-50.623925781249966, 0.054394531249983], + [-50.61044921874998, 0.204785156249983], + [-50.526220703125034, 0.246923828125048], + [-50.45156250000002, 0.326904296875], + [-50.42607421874996, 0.42495117187498], + [-50.42456054687503, 0.558251953124966], + [-50.39687, 0.581396484374977], + [-50.372753906249955, 0.590869140625031], + [-50.35097656249994, 0.58173828125004], + [-50.342529296875, 0.381591796875028], + [-50.33227539062497, 0.259033203125028], + [-50.42612304687498, 0.139257812500048] + ] + ], + [ + [ + [-50.152929687500006, 0.393017578125054], + [-50.26132812499998, 0.359179687500003], + [-50.28154296875002, 0.390820312500054], + [-50.281689453124955, 0.51650390624998], + [-50.251171874999955, 0.58544921875], + [-50.11279296875, 0.604736328125014], + [-50.09863281249997, 0.625], + [-50.05883789062503, 0.638037109374963], + [-50.03681640624998, 0.594824218750048], + [-50.04003906250003, 0.52280273437502], + [-50.152929687500006, 0.393017578125054] + ] + ], + [ + [ + [-50.29897460937502, 1.93852539062496], + [-50.398779296875006, 1.892871093749989], + [-50.45610351562496, 1.910498046875034], + [-50.50898437499998, 2.029541015625028], + [-50.49101562499996, 2.128613281249969], + [-50.41875, 2.161474609375006], + [-50.362646484375006, 2.154443359374994], + [-50.34199218749998, 2.14174804687498], + [-50.292089843750034, 1.979589843749977], + [-50.29897460937502, 1.93852539062496] + ] + ], + [ + [ + [-60.241650390624926, 5.257958984374966], + [-60.18173828124998, 5.238818359374974], + [-60.14204101562498, 5.238818359374974], + [-60.10595703125, 5.194238281250037], + [-60.07807617187501, 5.143994140625011], + [-59.990673828124955, 5.082861328124991], + [-59.99936523437495, 4.989843749999963], + [-60.01547851562495, 4.907519531249974], + [-60.02675781249994, 4.812695312500026], + [-60.03178710937499, 4.740527343749974], + [-60.068945312500006, 4.666650390625023], + [-60.12456054687496, 4.59765625], + [-60.14091796875002, 4.569628906249974], + [-60.14863281249998, 4.533251953125031], + [-60.11113281249999, 4.511181640624969], + [-60.045019531250006, 4.504589843750054], + [-59.962353515624955, 4.501708984375], + [-59.90610351562495, 4.480322265624991], + [-59.83334960937498, 4.475927734374977], + [-59.74580078124998, 4.41665039062498], + [-59.70327148437494, 4.381103515625028], + [-59.69970703125, 4.353515625], + [-59.72749023437498, 4.287646484374989], + [-59.73857421874993, 4.226757812500026], + [-59.71689453124995, 4.188183593749983], + [-59.69121093749996, 4.160400390625], + [-59.62021484374998, 4.023144531250026], + [-59.58642578125003, 3.975390624999974], + [-59.557763671874966, 3.960009765625031], + [-59.551123046875034, 3.933544921874969], + [-59.57539062500001, 3.88344726562498], + [-59.604443359374955, 3.819677734375048], + [-59.67021484374996, 3.752734375], + [-59.67900390624996, 3.699804687499963], + [-59.731640624999955, 3.666552734375031], + [-59.854394531249994, 3.5875], + [-59.83305664062499, 3.462158203125043], + [-59.828808593749926, 3.398583984374966], + [-59.83115234374998, 3.349218750000034], + [-59.87304687499997, 3.28310546874998], + [-59.945654296875034, 3.087841796874983], + [-59.97231445312494, 2.990478515625043], + [-59.99589843749996, 2.765429687500031], + [-59.99433593749998, 2.689990234375031], + [-59.960791015625006, 2.588378906250014], + [-59.88964843749997, 2.362939453125009], + [-59.84912109375, 2.32705078124998], + [-59.75522460937495, 2.27412109375004], + [-59.74350585937498, 2.12163085937496], + [-59.75175781249996, 1.962402343750028], + [-59.75620117187498, 1.900634765624972], + [-59.74072265625003, 1.874169921874994], + [-59.69853515624996, 1.861474609374994], + [-59.66850585937496, 1.842333984375003], + [-59.66376953124998, 1.795214843749989], + [-59.666601562500006, 1.746289062499969], + [-59.59663085937498, 1.718017578124986], + [-59.53569335937499, 1.7], + [-59.47944335937498, 1.632421875000048], + [-59.37768554687494, 1.527343750000043], + [-59.33725585937498, 1.508203125000051], + [-59.316992187500034, 1.464599609375043], + [-59.23120117187494, 1.376025390625031], + [-59.10039062499996, 1.343652343750009], + [-58.968505859375, 1.304589843750051], + [-58.91660156249998, 1.248876953124977], + [-58.8625, 1.203613281249986], + [-58.82177734374994, 1.201220703125031], + [-58.787207031250006, 1.208496093750014], + [-58.73032226562498, 1.247509765625054], + [-58.68461914062499, 1.28105468749996], + [-58.605078125000034, 1.27915039062502], + [-58.511865234374966, 1.284667968749986], + [-58.49570312499995, 1.312255859375014], + [-58.48686523437502, 1.347753906250048], + [-58.506054687499926, 1.438671875000011], + [-58.47294921874993, 1.466259765625026], + [-58.39580078124993, 1.481738281249989], + [-58.38037109375, 1.530224609375011], + [-58.36269531249994, 1.556689453124974], + [-58.34067382812498, 1.587548828125051], + [-58.314208984375, 1.591943359374966], + [-58.28115234374994, 1.57431640625002], + [-58.23041992187498, 1.563281249999989], + [-58.17309570312494, 1.547851562500043], + [-58.142236328124966, 1.51699218749998], + [-58.09130859375, 1.514355468749969], + [-58.03466796875, 1.520263671875014], + [-58.01176757812496, 1.539941406250037], + [-57.99511718750003, 1.57431640625002], + [-57.9828125, 1.648437500000014], + [-57.94633789062493, 1.650585937500011], + [-57.87343750000002, 1.667285156250045], + [-57.79565429687497, 1.7], + [-57.691748046875034, 1.70478515625004], + [-57.59443359375001, 1.704101562499986], + [-57.54575195312495, 1.726074218750028], + [-57.500439453124955, 1.77382812499998], + [-57.412695312500034, 1.908935546874972], + [-57.366796875, 1.940136718750026], + [-57.31748046874998, 1.963476562499991], + [-57.27558593749998, 1.959228515625014], + [-57.189599609374966, 1.981591796875037], + [-57.11889648437494, 2.013964843749974], + [-57.09267578125002, 2.005810546874997], + [-57.03759765625, 1.936474609374997], + [-57.01005859374999, 1.921240234374991], + [-56.96953124999999, 1.91640625], + [-56.83671875000002, 1.88125], + [-56.766259765624966, 1.892187500000034], + [-56.68984375000002, 1.914306640625], + [-56.616455078125, 1.922656250000017], + [-56.56357421874998, 1.907226562499986], + [-56.525488281250034, 1.927246093749972], + [-56.48281249999994, 1.942138671874986], + [-56.452832031249955, 1.93232421875004], + [-56.385839843750006, 1.923876953125003], + [-56.227148437500006, 1.885351562499963], + [-56.019921874999966, 1.842236328124983], + [-55.96333007812498, 1.85708007812498], + [-55.929638671874955, 1.8875], + [-55.92163085937503, 1.976660156250006], + [-55.91533203124999, 2.039550781250028], + [-55.96196289062496, 2.09511718749998], + [-56.02006835937499, 2.15815429687504], + [-56.073632812499994, 2.236767578124969], + [-56.13769531249997, 2.259033203124986], + [-56.12939453124997, 2.299511718749969], + [-56.08779296875002, 2.341308593750043], + [-56.045117187499955, 2.364404296875037], + [-56.02036132812498, 2.392773437500054], + [-55.993505859375006, 2.497509765624983], + [-55.9755859375, 2.515966796875006], + [-55.957470703124955, 2.52045898437504], + [-55.9359375, 2.516601562500057], + [-55.89375, 2.489501953125043], + [-55.730566406250006, 2.406152343750023], + [-55.65893554687497, 2.41875], + [-55.385351562500006, 2.440625], + [-55.34399414062503, 2.488769531249972], + [-55.28603515625002, 2.49965820312498], + [-55.18769531249998, 2.547509765625037], + [-55.148828124999966, 2.55078125], + [-55.114111328125006, 2.539208984375037], + [-55.07031249999994, 2.548339843750028], + [-55.005810546874955, 2.592968749999983], + [-54.97866210937502, 2.597656250000043], + [-54.968408203124966, 2.548339843750028], + [-54.92656249999999, 2.497363281250045], + [-54.876074218750006, 2.450390624999969], + [-54.851660156250006, 2.439550781249991], + [-54.76684570312503, 2.454736328124966], + [-54.72221679687499, 2.441650390624972], + [-54.70292968749999, 2.397949218750043], + [-54.69741210937502, 2.359814453124997], + [-54.66186523437497, 2.327539062499994], + [-54.61625976562499, 2.326757812500006], + [-54.59194335937502, 2.313769531250031], + [-54.55048828125001, 2.293066406249991], + [-54.51508789062498, 2.245458984374963], + [-54.43310546875, 2.207519531250057], + [-54.29306640624998, 2.15424804687504], + [-54.227978515624955, 2.153320312500028], + [-54.16738281249994, 2.137060546875006], + [-54.13007812499998, 2.121044921875026], + [-54.08974609375002, 2.150488281249977], + [-53.946435546874966, 2.232568359375009], + [-53.87661132812494, 2.278271484374997], + [-53.829541015624955, 2.31293945312504], + [-53.79423828124996, 2.345996093750017], + [-53.76777343749998, 2.354833984375048], + [-53.75014648437502, 2.335009765625003], + [-53.734716796875006, 2.308544921875026], + [-53.68369140624998, 2.29291992187504], + [-53.56396484375003, 2.26191406250004], + [-53.50898437500001, 2.253125], + [-53.43183593750001, 2.279443359374966], + [-53.36601562500002, 2.324218750000028], + [-53.33442382812498, 2.339746093749994], + [-53.28549804687495, 2.295214843749974], + [-53.252197265625, 2.232275390625034], + [-53.22978515624999, 2.20488281249996], + [-53.180078124999966, 2.211328125000037], + [-53.08227539062503, 2.201708984375031], + [-53.00971679687498, 2.181738281250048], + [-52.96484375, 2.183544921874969], + [-52.90346679687502, 2.211523437499977], + [-52.87041015624996, 2.266650390625017], + [-52.78339843749998, 2.317187500000017], + [-52.70063476562501, 2.36367187499998], + [-52.653173828125006, 2.425732421875011], + [-52.58300781250003, 2.528906249999977], + [-52.55947265625002, 2.573144531250023], + [-52.55468750000003, 2.647656250000011], + [-52.45585937499996, 2.86416015624998], + [-52.418408203124955, 2.903857421874989], + [-52.39638671875002, 2.972216796874974], + [-52.35664062499998, 3.051562499999974], + [-52.35664062499998, 3.117724609375031], + [-52.327880859375, 3.18173828125002], + [-52.271240234375, 3.237109375000017], + [-52.22944335937501, 3.271679687500054], + [-52.16259765625, 3.364697265624997], + [-52.11611328125002, 3.45229492187498], + [-51.99951171874997, 3.646875], + [-51.99062, 3.702001953124963], + [-51.94433593750003, 3.735107421875043], + [-51.92890624999998, 3.776953125000048], + [-51.87949218749995, 3.828564453124997], + [-51.827490234375006, 3.869580078124997], + [-51.805273437500034, 3.929931640625043], + [-51.76708984374997, 3.992675781250028], + [-51.68344726562498, 4.039697265625023], + [-51.65253906249998, 4.061279296874972], + [-51.557812499999955, 4.233789062500037], + [-51.54707031250001, 4.31088867187502], + [-51.46152343749998, 4.313769531249989], + [-51.327099609374955, 4.224755859374966], + [-51.219921874999955, 4.093603515624991], + [-51.076269531250006, 3.671679687500003], + [-51.05239257812502, 3.281835937499991], + [-50.99414062499997, 3.077539062500023], + [-50.82719726562499, 2.651855468749986], + [-50.816503906250034, 2.573046875], + [-50.789697265624966, 2.477783203125043], + [-50.736962890624994, 2.376757812499989], + [-50.67875976562493, 2.210351562500009], + [-50.67656250000002, 2.179443359375014], + [-50.71440429687502, 2.134033203125], + [-50.65893554687497, 2.130957031250006], + [-50.60869140624996, 2.104101562500034], + [-50.575878906249926, 1.998583984375031], + [-50.53442382812503, 1.927246093749972], + [-50.458886718749994, 1.829589843749972], + [-50.304296875000034, 1.797656250000045], + [-50.18759765624998, 1.785986328124977], + [-50.05468749999997, 1.730712890625], + [-49.957128906250006, 1.65986328125004], + [-49.88159179687497, 1.419921875], + [-49.90625, 1.26904296875], + [-49.898876953124955, 1.16298828124998], + [-49.93793945312501, 1.121435546875034], + [-50.04721679687498, 1.051953125], + [-50.070996093749926, 1.01508789062504], + [-50.29443359374997, 0.835742187500003], + [-50.34326171874997, 0.751025390624974], + [-50.462988281250034, 0.637304687499991], + [-50.58154296875003, 0.420507812499963], + [-50.755078124999955, 0.222558593749966], + [-50.81635742187498, 0.172558593749997], + [-50.91015625, 0.160986328125034], + [-50.96708984374996, 0.130273437499994], + [-51.101953125, -0.03125], + [-51.28291015625001, -0.085205078125028], + [-51.29956054687503, -0.178808593750006], + [-51.404150390625006, -0.392675781249963], + [-51.496289062499955, -0.509472656249955], + [-51.555029296875034, -0.549121093749946], + [-51.70263671874997, -0.762304687499949], + [-51.721533203125006, -0.855468750000014], + [-51.720605468749994, -1.018457031249994], + [-51.81914062500002, -1.117773437499977], + [-51.921630859375, -1.180859374999955], + [-51.934472656249966, -1.320312499999943], + [-51.98081054687498, -1.367968749999974], + [-52.02045898437498, -1.399023437499991], + [-52.22924804687497, -1.3625], + [-52.553417968749926, -1.5140625], + [-52.664160156250034, -1.551757812500028], + [-52.31030273437497, -1.559570312500014], + [-52.196679687499994, -1.64013671875], + [-51.94755859374996, -1.586718749999946], + [-51.64628906249996, -1.394335937500017], + [-51.531201171874955, -1.354101562499991], + [-51.29736328125003, -1.223535156250037], + [-51.202343749999926, -1.136523437499989], + [-51.028955078124966, -1.032128906250037], + [-50.99204101562498, -0.986328125000028], + [-50.89492187500002, -0.937597656249963], + [-50.84228515625003, -0.999609374999977], + [-50.83818359374999, -1.038867187499989], + [-50.917871093749966, -1.115234375], + [-50.897167968749926, -1.164453125], + [-50.84458007812498, -1.226269531249969], + [-50.825537109375006, -1.311425781249994], + [-50.81865234375002, -1.376269531249974], + [-50.78613281249997, -1.48994140625004], + [-50.67895507812497, -1.64384765624996], + [-50.67529296875003, -1.694726562500023], + [-50.690039062500006, -1.761718749999986], + [-50.63876953124995, -1.817089843749983], + [-50.585595703124966, -1.849902343750017], + [-50.40322265625002, -2.015527343750009], + [-50.26044921874998, -1.922949218749977], + [-50.17270507812495, -1.896191406250026], + [-50.116601562499994, -1.857519531249963], + [-49.999218749999955, -1.831835937499974], + [-49.902978515624994, -1.870605468749972], + [-49.71953125000002, -1.926367187499963], + [-49.58535156250002, -1.867187499999986], + [-49.31367187500001, -1.731738281250003], + [-49.39863281250001, -1.971582031250023], + [-49.46015625000001, -2.191503906249977], + [-49.506982421874966, -2.280273437500028], + [-49.553369140624994, -2.519921875], + [-49.599316406249926, -2.58388671874998], + [-49.63652343749996, -2.656933593750026], + [-49.575878906249955, -2.631445312499977], + [-49.52392578125003, -2.59687], + [-49.45751953125, -2.504589843749983], + [-49.40766601562498, -2.34433593750002], + [-49.21103515624998, -1.916503906249986], + [-49.15478515624997, -1.878515624999977], + [-48.99130859374998, -1.829785156249997], + [-48.71000976562496, -1.487695312500023], + [-48.6, -1.488769531249986], + [-48.52958984374996, -1.567480468750034], + [-48.46293945312499, -1.613964843749997], + [-48.44584960937496, -1.520410156250037], + [-48.349804687499926, -1.482128906249955], + [-48.45146484374996, -1.435839843750031], + [-48.46806640624996, -1.393847656250003], + [-48.47773437499998, -1.323828124999949], + [-48.40859375, -1.22919921875004], + [-48.44980468749998, -1.145507812499943], + [-48.30649414062498, -1.03984375], + [-48.317578124999926, -0.96054687500002], + [-48.266455078125006, -0.895117187500006], + [-48.20175781249998, -0.827929687500003], + [-48.12846679687496, -0.795214843749989], + [-48.11508789062498, -0.7375], + [-48.06884765624997, -0.713671874999989], + [-48.03256835937495, -0.705078125000014], + [-47.96093750000003, -0.76962890625002], + [-47.883398437500034, -0.693359375000028], + [-47.80766601562496, -0.66347656249998], + [-47.77373046874999, -0.676757812500014], + [-47.73149414062499, -0.710449218749957], + [-47.687109375, -0.72480468750004], + [-47.651074218749955, -0.71875], + [-47.557324218749955, -0.669921874999957], + [-47.47070312499997, -0.748535156249986], + [-47.418652343749955, -0.765917968749974], + [-47.43291015625002, -0.72187], + [-47.460351562499994, -0.680957031249989], + [-47.4390625, -0.64765625000004], + [-47.39809570312502, -0.626660156250026], + [-47.26860351562502, -0.645410156250023], + [-47.200537109375006, -0.680468749999974], + [-47.12690429687501, -0.745410156249974], + [-47.024609374999955, -0.750195312499969], + [-46.94433593749994, -0.743359375], + [-46.893652343750006, -0.779882812499977], + [-46.81123046875001, -0.779687500000023], + [-46.76992187499994, -0.836523437499977], + [-46.644433593749966, -0.91640625], + [-46.61723632812502, -0.970605468750023], + [-46.516308593749955, -0.996875], + [-46.42172851562498, -1.030078124999974], + [-46.32084960937493, -1.039160156249949], + [-46.219140625, -1.03125], + [-46.214990234374966, -1.099804687499969], + [-46.14038085937503, -1.118359375000011], + [-46.04462890624998, -1.10302734375], + [-45.97226562499998, -1.187402343749952], + [-45.77880859375, -1.250781249999989], + [-45.64477539062497, -1.347851562499955], + [-45.55693359375002, -1.330664062500006], + [-45.45859374999995, -1.35625], + [-45.35302734375003, -1.567382812500014], + [-45.32915039062496, -1.71728515625], + [-45.282128906249966, -1.696582031249946], + [-45.23857421874999, -1.629492187499963], + [-45.182080078124926, -1.507031249999969], + [-45.07636718749998, -1.466406249999949], + [-45.025781249999966, -1.513476562499946], + [-44.91977539062495, -1.588867187499943], + [-44.828369140625, -1.671679687500031], + [-44.78984375, -1.724804687500011], + [-44.72114257812498, -1.733496093750006], + [-44.778515624999955, -1.798828125], + [-44.72094726562494, -1.792285156250003], + [-44.651269531249966, -1.745800781250026], + [-44.591650390625006, -1.841796874999957], + [-44.546777343749994, -1.946289062500014], + [-44.537792968749955, -2.052734374999943], + [-44.580029296874926, -2.113867187499963], + [-44.61728515624998, -2.152148437499946], + [-44.658642578124955, -2.227539062500028], + [-44.70751953124997, -2.241113281249952], + [-44.75634765624997, -2.265527343749952], + [-44.70063476562498, -2.320410156250034], + [-44.66240234375002, -2.373242187499955], + [-44.579003906249994, -2.23046875], + [-44.520361328125034, -2.190332031249994], + [-44.435449218749966, -2.168066406249991], + [-44.391308593749955, -2.269628906249991], + [-44.38183593749997, -2.365527343749989], + [-44.52011718749998, -2.40546875000004], + [-44.520654296874994, -2.48125], + [-44.56201171875, -2.524218749999989], + [-44.589013671874994, -2.573437499999983], + [-44.61079101562498, -2.676855468749991], + [-44.63896484374996, -2.7625], + [-44.721386718749955, -3.142285156249955], + [-44.72304687500002, -3.204785156249997], + [-44.62265625, -3.13789062500004], + [-44.43754882812496, -2.944433593749977], + [-44.38115234375002, -2.738378906250006], + [-44.30815429687496, -2.53515625], + [-44.228613281250006, -2.471289062499949], + [-44.179394531249926, -2.471191406250014], + [-44.105566406250006, -2.493457031250031], + [-44.10136718749993, -2.56005859375], + [-44.112646484375006, -2.598535156250023], + [-44.191601562499926, -2.699609375], + [-44.225195312500034, -2.75498046875002], + [-44.19267578124999, -2.809570312499943], + [-44.01323242187502, -2.642187499999949], + [-43.93291015624999, -2.583496093749986], + [-43.86445312499998, -2.595410156250011], + [-43.728613281250034, -2.518164062499991], + [-43.45512695312499, -2.502050781250006], + [-43.43461914062499, -2.41367187500002], + [-43.38007812499998, -2.376074218750006], + [-43.22968749999998, -2.386035156249989], + [-42.93671874999998, -2.465039062500011], + [-42.83227539062503, -2.529589843750017], + [-42.67587890624998, -2.589648437499989], + [-42.59355468749999, -2.661035156249966], + [-42.24960937499998, -2.7919921875], + [-41.999853515625006, -2.806054687500023], + [-41.876171874999926, -2.746582031249986], + [-41.72187, -2.808886718749989], + [-41.64013671875, -2.878613281249983], + [-41.479931640624955, -2.916503906249972], + [-41.318212890625034, -2.936230468749997], + [-41.19453124999998, -2.886132812499994], + [-40.875585937500006, -2.869628906250014], + [-40.474560546874926, -2.795605468750026], + [-40.23535156249997, -2.813183593749969], + [-39.96469726562498, -2.861523437499955], + [-39.771826171875034, -2.985839843749972], + [-39.60942382812499, -3.05625], + [-39.511181640624955, -3.12558593750002], + [-39.352685546874994, -3.197363281249991], + [-39.01435546874998, -3.39023437500002], + [-38.89599609374994, -3.501757812500003], + [-38.686230468749926, -3.653710937499966], + [-38.475781249999955, -3.717480468749997], + [-38.361914062500034, -3.876464843749957], + [-38.271875, -3.948046874999974], + [-38.04882812500003, -4.216406250000034], + [-37.79565429687497, -4.404296875000028], + [-37.626318359375006, -4.592089843750003], + [-37.30146484375001, -4.713085937499969], + [-37.174658203125006, -4.912402343749974], + [-36.95488281249999, -4.936718749999955], + [-36.86113281249999, -4.966601562500003], + [-36.74736328124999, -5.050683593749994], + [-36.590722656249966, -5.097558593749952], + [-36.38671874999997, -5.084277343750003], + [-36.161767578124994, -5.09375], + [-35.979882812499966, -5.05439453125004], + [-35.549414062500006, -5.129394531249957], + [-35.481689453125, -5.166015624999957], + [-35.39257812499994, -5.250878906250009], + [-35.235449218750006, -5.56669921874996], + [-35.14174804687502, -5.917187499999955], + [-35.095458984375, -6.18535156249996], + [-34.988183593749994, -6.39375], + [-34.929589843749966, -6.785058593750023], + [-34.87988281249994, -6.908203124999972], + [-34.87597656249994, -7.0029296875], + [-34.833886718749994, -7.024414062500014], + [-34.80546874999999, -7.288378906249974], + [-34.816601562499926, -7.394824218749989], + [-34.85776367187498, -7.533300781249949], + [-34.86083984374997, -7.595019531250003], + [-34.85478515624999, -7.634277343750014], + [-34.87299804687498, -7.692089843749969], + [-34.878613281249955, -7.74746093749998], + [-34.8369140625, -7.871777343749983], + [-34.83466796874998, -7.97148437499996], + [-34.890527343749994, -8.092187500000037], + [-34.96665039062495, -8.407617187499994], + [-35.15776367187499, -8.930566406249952], + [-35.34086914062499, -9.230664062499983], + [-35.597070312499966, -9.54062], + [-35.76396484374993, -9.702539062500023], + [-35.83012695312502, -9.719042968750003], + [-35.890820312499926, -9.687011718749957], + [-35.84775390624995, -9.772460937499957], + [-35.88544921875001, -9.84765625], + [-36.05498046874999, -10.075781250000034], + [-36.223535156249966, -10.225097656249986], + [-36.39833984374994, -10.484082031249983], + [-36.41162109375, -10.489941406250026], + [-36.6357421875, -10.589941406249977], + [-36.768310546875, -10.671679687500017], + [-36.93779296874999, -10.820410156250034], + [-37.09335937499998, -11.054785156249991], + [-37.12548828125003, -11.084960937500014], + [-37.18281249999998, -11.06845703125002], + [-37.18120117187502, -11.1875], + [-37.315136718749955, -11.375976562499972], + [-37.35600585937502, -11.403906249999977], + [-37.354882812499966, -11.350488281250023], + [-37.331640625, -11.309863281250003], + [-37.32080078125003, -11.266601562499986], + [-37.32177734374997, -11.215136718749974], + [-37.35922851562495, -11.252539062499963], + [-37.43847656250003, -11.39375], + [-37.41181640625001, -11.497265624999983], + [-37.469335937500006, -11.65361328124996], + [-37.68872070312503, -12.1], + [-37.95732421874993, -12.475488281249966], + [-38.019238281249955, -12.591308593750028], + [-38.23974609375003, -12.844238281249957], + [-38.401757812499994, -12.966210937500023], + [-38.44731445312493, -12.967089843750031], + [-38.498925781249966, -12.956640625000034], + [-38.52490234375003, -12.762304687499963], + [-38.654003906249955, -12.644628906249963], + [-38.69096679687502, -12.623925781250009], + [-38.74389648437497, -12.74853515625], + [-38.787988281249966, -12.782714843750028], + [-38.85175781250001, -12.790136718750034], + [-38.783593749999966, -12.844433593749997], + [-38.76372070312502, -12.9072265625], + [-38.83315429687502, -13.032910156250026], + [-38.835302734375034, -13.147167968750026], + [-38.959179687499955, -13.273046875], + [-39.030908203124994, -13.365136718750023], + [-39.06738281249997, -13.480468749999986], + [-39.08935546875, -13.588183593749989], + [-39.034912109375, -13.55878906250004], + [-39.00908203124999, -13.581445312500037], + [-38.988623046875006, -13.61503906249996], + [-39.00122070312497, -13.664550781250014], + [-39.041113281250034, -13.758105468749974], + [-39.034912109375, -13.991015624999989], + [-39.04814453124996, -14.043945312500028], + [-39.008496093749955, -14.101171874999963], + [-38.96650390625001, -14.003417968750028], + [-38.94233398437498, -14.030664062499994], + [-39.05957031249997, -14.654785156249957], + [-39.01337890624998, -14.935644531249977], + [-38.996191406250034, -15.253808593750037], + [-38.94321289062498, -15.56435546874998], + [-38.88525390624997, -15.841992187499969], + [-38.88061523437503, -15.864257812499972], + [-38.960791015625006, -16.186523437499986], + [-39.063232421875, -16.50439453125], + [-39.12504882812499, -16.76357421875005], + [-39.16396484375002, -17.043554687499977], + [-39.20288085937503, -17.178125], + [-39.215234374999966, -17.315820312500023], + [-39.170605468749955, -17.64208984374997], + [-39.154003906249926, -17.70390625000003], + [-39.27836914062496, -17.849414062500017], + [-39.41259765624994, -17.920019531250006], + [-39.486767578124955, -17.990136718749994], + [-39.650781249999966, -18.252343750000037], + [-39.73979492187499, -18.639843750000026], + [-39.741943359375, -18.845996093750003], + [-39.69985351562502, -19.27783203124997], + [-39.73144531249997, -19.45390625], + [-39.78330078124998, -19.571777343749986], + [-39.84472656249997, -19.649121093750026], + [-40.001367187499994, -19.74199218750003], + [-40.14169921874998, -19.96826171875003], + [-40.20273437499998, -20.20605468749997], + [-40.29887695312493, -20.29267578125004], + [-40.318554687499955, -20.42578124999997], + [-40.39594726562501, -20.56943359375002], + [-40.59658203125002, -20.78378906249999], + [-40.72705078124994, -20.84619140625], + [-40.78925781250001, -20.90605468750003], + [-40.828759765624966, -21.031347656249977], + [-40.954541015624926, -21.237890624999963], + [-41.047265625, -21.505664062499974], + [-41.023144531249955, -21.596875], + [-41.021582031250006, -21.61083984375], + [-40.98784179687496, -21.9203125], + [-41.00029296875002, -21.99902343750003], + [-41.122509765624955, -22.084375], + [-41.582910156249966, -22.243652343749957], + [-41.70551757812498, -22.30966796874999], + [-41.980419921874955, -22.580664062499963], + [-41.99755859374997, -22.64462890625002], + [-41.98613281249996, -22.735839843749957], + [-41.94091796874997, -22.788281249999983], + [-41.9875, -22.84511718750001], + [-42.042382812499966, -22.947070312500003], + [-42.12246093750002, -22.940820312499966], + [-42.5810546875, -22.941015625], + [-42.829296874999955, -22.973339843750026], + [-42.95830078124996, -22.96708984374999], + [-43.016210937500034, -22.94257812499997], + [-43.081152343750006, -22.902539062499983], + [-43.100683593750006, -22.850097656249957], + [-43.0654296875, -22.77070312500004], + [-43.086279296875006, -22.723339843749983], + [-43.154296875, -22.725195312500006], + [-43.22900390625003, -22.747656249999963], + [-43.241943359375, -22.79511718750004], + [-43.23662109374999, -22.82880859374997], + [-43.208837890625006, -22.87812], + [-43.193603515625, -22.93857421875005], + [-43.22416992187502, -22.991210937500014], + [-43.36948242187495, -22.998046874999986], + [-43.5328125, -23.046386718749986], + [-43.736523437499955, -23.06660156250001], + [-43.898828124999966, -23.10146484375001], + [-43.97382812499998, -23.057324218749983], + [-43.898828124999966, -23.03525390625002], + [-43.79140624999994, -23.04599609374999], + [-43.675976562499955, -23.00947265625001], + [-43.70292968749996, -22.966308593750014], + [-43.86616210937498, -22.910546875000023], + [-44.04746093749998, -22.944726562499966], + [-44.14799804687493, -23.011035156249974], + [-44.36791992187497, -23.004980468749977], + [-44.63725585937496, -23.05546875], + [-44.68115234375003, -23.10693359374997], + [-44.67382812499994, -23.206640625000034], + [-44.62109374999994, -23.228515624999957], + [-44.56967773437495, -23.27402343749999], + [-44.61909179687498, -23.316406250000014], + [-44.66718750000001, -23.33515625000001], + [-44.95166015624997, -23.381445312500034], + [-45.21542968749998, -23.575585937499966], + [-45.32539062499998, -23.59970703124999], + [-45.423291015624955, -23.68535156250003], + [-45.43339843749996, -23.75849609375001], + [-45.464306640624955, -23.802539062500017], + [-45.52709960937497, -23.804785156250034], + [-45.664648437500006, -23.764843749999983], + [-45.843164062499966, -23.763671875], + [-45.97207031250002, -23.795507812500006], + [-46.63076171875002, -24.11035156250003], + [-46.86728515624998, -24.236328125000014], + [-47.13720703124997, -24.49316406250003], + [-47.59218749999994, -24.781054687499974], + [-47.83115234374995, -24.95292968749999], + [-47.87656249999998, -24.99746093750001], + [-47.91430664062503, -24.999902343749966], + [-47.989160156249994, -25.03574218749999], + [-47.95937, -25.0654296875], + [-47.908349609374966, -25.068164062500017], + [-47.92939453124998, -25.16826171874999], + [-48.02436523437498, -25.23671875], + [-48.20273437499998, -25.41650390625003], + [-48.242431640625, -25.4033203125], + [-48.18593749999994, -25.309863281249974], + [-48.27348632812502, -25.30634765624997], + [-48.402490234374994, -25.27207031249999], + [-48.45849609374997, -25.31074218749997], + [-48.427636718749966, -25.4033203125], + [-48.47612304687499, -25.44296875], + [-48.56416015624998, -25.447460937500026], + [-48.64399414062501, -25.436523437500014], + [-48.73173828124993, -25.36875], + [-48.6921875, -25.49150390625003], + [-48.50703124999998, -25.52128906249996], + [-48.42988281249998, -25.550195312499994], + [-48.40117187500002, -25.59736328125001], + [-48.54516601562503, -25.815917968750043], + [-48.665771484375, -25.844335937499963], + [-48.67900390624993, -25.87519531250004], + [-48.61284179687496, -25.875], + [-48.576318359374994, -25.935449218749966], + [-48.61943359374996, -26.17939453125001], + [-48.67900390624993, -26.225781250000054], + [-48.713769531249994, -26.226953125000023], + [-48.74829101562503, -26.26865234374999], + [-48.70068359375, -26.34833984374997], + [-48.65161132812494, -26.406445312499997], + [-48.658154296874955, -26.519140625000034], + [-48.67651367187497, -26.612402343750034], + [-48.67773437499994, -26.702929687500003], + [-48.61567382812501, -26.87812], + [-48.593408203124994, -27.058007812500037], + [-48.56835937499997, -27.123437499999966], + [-48.55415039062498, -27.195996093749997], + [-48.59550781249999, -27.26386718749997], + [-48.57197265624998, -27.37275390625004], + [-48.64257812499997, -27.557910156250017], + [-48.60566406250001, -27.825195312500014], + [-48.62080078124998, -28.075585937499966], + [-48.64843750000003, -28.20722656250004], + [-48.693212890625006, -28.310156249999963], + [-48.797265624999966, -28.44267578124996], + [-48.799658203125006, -28.575292968749977], + [-49.023583984374966, -28.698632812499966], + [-49.27128906249999, -28.87119140625005], + [-49.49990234375002, -29.075390624999983], + [-49.745996093749966, -29.363183593749994], + [-50.033349609374994, -29.80097656250001], + [-50.299511718749955, -30.42578125000003], + [-50.619970703125034, -30.89765624999997], + [-50.748144531250034, -31.06806640624997], + [-50.92138671874997, -31.25839843750002], + [-51.15175781250002, -31.480371093750023], + [-51.46040039062501, -31.702441406249974], + [-51.79814453124999, -31.90029296875005], + [-51.92021484374999, -31.989550781250017], + [-52.039208984374994, -32.11484374999996], + [-52.068945312500006, -32.06308593749999], + [-52.04316406249998, -31.97753906249997], + [-52.05957031249997, -31.91347656249998], + [-52.063232421875, -31.830371093750017], + [-51.99511718749997, -31.81503906249999], + [-51.89316406249998, -31.86777343749999], + [-51.841210937499966, -31.83203125], + [-51.80341796875001, -31.79667968749999], + [-51.68066406249994, -31.774609375000026], + [-51.446191406249966, -31.557324218749983], + [-51.272167968749955, -31.476953125000037], + [-51.17431640625, -31.33974609374998], + [-51.15751953124996, -31.26679687500004], + [-51.16142578124996, -31.11884765625001], + [-51.10595703125003, -31.081347656250003], + [-50.980078125000034, -31.09423828124997], + [-50.95439453124996, -31.05214843750001], + [-50.96533203124997, -31.00546875], + [-50.94082031249994, -30.903710937499966], + [-50.770166015624994, -30.813378906250037], + [-50.68930664062495, -30.70419921874999], + [-50.71630859374994, -30.425976562499983], + [-50.68505859374997, -30.41347656250001], + [-50.61484374999998, -30.45683593749996], + [-50.58193359375002, -30.438867187500037], + [-50.546533203124994, -30.316894531249957], + [-50.56352539062499, -30.25361328125004], + [-50.646191406249955, -30.236816406249986], + [-50.931884765625, -30.37431640625003], + [-51.02495117187493, -30.36865234375003], + [-51.04038085937498, -30.260644531249966], + [-51.179296875000034, -30.211035156249977], + [-51.23359374999998, -30.121386718750017], + [-51.249853515625034, -30.059960937500023], + [-51.29804687499998, -30.03486328124997], + [-51.29501953124998, -30.141015625], + [-51.28178710937496, -30.24414062499997], + [-51.15727539062499, -30.364257812500014], + [-51.18754882812493, -30.41191406249996], + [-51.24658203124997, -30.467578125000017], + [-51.287695312500006, -30.59121093749998], + [-51.283056640625034, -30.751562499999963], + [-51.31640625, -30.702734374999963], + [-51.35908203124998, -30.674511718749983], + [-51.37646484374997, -30.846875], + [-51.45913085937502, -30.91279296875004], + [-51.48525390625002, -30.9775390625], + [-51.46367187499996, -31.052636718750023], + [-51.506298828124955, -31.104492187500014], + [-51.71689453124995, -31.24375], + [-51.92680664062499, -31.33886718749997], + [-51.97246093749999, -31.383789062499986], + [-51.994873046875, -31.489941406250026], + [-52.02695312499998, -31.599023437500037], + [-52.11982421874998, -31.694921875000034], + [-52.19355468749998, -31.885546874999974], + [-52.19155273437502, -31.96757812499999], + [-52.167089843750006, -32.08847656250002], + [-52.12739257812501, -32.1677734375], + [-52.190185546875, -32.22080078124998], + [-52.27460937499998, -32.323730468749986], + [-52.34165039062495, -32.43974609374999], + [-52.508496093749926, -32.87529296874999], + [-52.652246093749994, -33.137792968750006], + [-52.76289062499998, -33.26640625], + [-52.92084960937501, -33.401953125], + [-53.37060546874997, -33.74218750000003], + [-53.39755859374995, -33.737304687500014], + [-53.46357421875001, -33.70986328125002], + [-53.51884765624999, -33.67724609375004], + [-53.531347656250034, -33.65546875000004], + [-53.53764648437499, -33.622851562499974], + [-53.530371093750006, -33.50029296874996], + [-53.531347656250034, -33.1708984375], + [-53.511865234374966, -33.10869140625003], + [-53.482861328124926, -33.068554687500026], + [-53.39521484375001, -33.01035156249998], + [-53.31010742187499, -32.927050781249974], + [-53.21406249999998, -32.82109375], + [-53.12558593749998, -32.73671875], + [-53.15727539062496, -32.680078125], + [-53.23125, -32.62539062499998], + [-53.36274414062498, -32.58115234375002], + [-53.48940429687502, -32.50322265624996], + [-53.601708984374994, -32.40302734374997], + [-53.65361328124999, -32.29873046875004], + [-53.70112304687498, -32.18632812499996], + [-53.74658203125, -32.097460937499974], + [-53.76171875, -32.05683593749997], + [-53.80610351562498, -32.03994140624998], + [-53.87651367187502, -31.994531249999966], + [-53.920605468749926, -31.95234375], + [-53.98515624999993, -31.928125], + [-54.10043945312498, -31.90156250000004], + [-54.220556640625034, -31.855175781249997], + [-54.36992187499999, -31.745019531250037], + [-54.47768554687502, -31.622753906249997], + [-54.53090820312502, -31.54199218749997], + [-54.58764648437503, -31.48515625000003], + [-54.89599609374997, -31.391210937499977], + [-55.036035156249994, -31.27900390625004], + [-55.091162109375034, -31.31396484374997], + [-55.173535156249926, -31.279589843749974], + [-55.25463867187503, -31.225585937499986], + [-55.278955078124994, -31.18417968749999], + [-55.31328124999999, -31.14169921875005], + [-55.34550781249996, -31.09296874999997], + [-55.36606445312498, -31.04619140625003], + [-55.449560546875034, -30.964453125], + [-55.557324218749955, -30.8759765625], + [-55.60302734375003, -30.85078125000001], + [-55.62714843749998, -30.858105468749997], + [-55.650488281250034, -30.89208984375], + [-55.66523437500001, -30.92490234375002], + [-55.705957031249966, -30.94658203124999], + [-55.75634765625, -30.98710937499999], + [-55.807763671874994, -31.036718749999977], + [-55.87368164062502, -31.069628906250017], + [-55.95200195312498, -31.08085937499999], + [-56.0046875, -31.079199218750006], + [-56.015527343749966, -31.059667968750034], + [-56.01845703125002, -30.991894531249983], + [-55.998974609374955, -30.837207031250003], + [-56.044824218749966, -30.77763671875003], + [-56.105859374999966, -30.713769531249994], + [-56.176171875, -30.628417968750014], + [-56.4072265625, -30.44746093750001], + [-56.72167968750003, -30.186914062500037], + [-56.83271484374998, -30.107226562499974], + [-56.93725585937497, -30.101074218749957], + [-57.03271484374997, -30.10996093749999], + [-57.120507812499994, -30.144433593749994], + [-57.18691406249994, -30.26484375000001], + [-57.21445312499995, -30.283398437499983], + [-57.38383789062502, -30.280664062500037], + [-57.55229492187496, -30.261230468749986], + [-57.60888671875003, -30.187792968750045], + [-57.563867187499994, -30.139941406249974], + [-57.40522460937501, -30.03388671875004], + [-57.31748046874998, -29.939453124999986], + [-57.30068359374994, -29.856542968749963], + [-57.22465820312499, -29.782128906249994], + [-57.08935546874997, -29.71621093749998], + [-56.938623046874994, -29.594824218750034], + [-56.77246093749997, -29.417871093750037], + [-56.67153320312502, -29.287304687499997], + [-56.635839843750034, -29.203027343749966], + [-56.570703125, -29.138085937499966], + [-56.475976562499966, -29.09248046875001], + [-56.39326171874998, -28.99726562499997], + [-56.322363281250034, -28.852441406250037], + [-56.225537109374926, -28.73720703125001], + [-56.102880859375006, -28.65175781250001], + [-56.03422851562496, -28.58085937499996], + [-56.019628906250006, -28.52460937500004], + [-55.98491210937493, -28.48857421874999], + [-55.93017578124997, -28.472851562499983], + [-55.903662109375006, -28.443261718749994], + [-55.905419921874994, -28.399609374999983], + [-55.890527343749994, -28.370019531249994], + [-55.85888671875003, -28.35419921874997], + [-55.806054687499994, -28.359765625000037], + [-55.73198242187502, -28.386621093749994], + [-55.68725585937497, -28.38164062499996], + [-55.67197265624995, -28.344921875000026], + [-55.691503906250034, -28.302832031249977], + [-55.74599609375002, -28.25546875000002], + [-55.72548828125002, -28.20410156250003], + [-55.582373046875006, -28.12099609374998], + [-55.47666015624995, -28.089355468750014], + [-55.40981445312502, -28.037792968749983], + [-55.34648437499999, -27.95595703125001], + [-55.24375, -27.898828125], + [-55.10151367187501, -27.866796874999963], + [-55.063867187499966, -27.835937499999986], + [-55.06899414062494, -27.796289062499994], + [-55.039941406249994, -27.76777343750004], + [-54.955908203125006, -27.74716796875002], + [-54.91020507812502, -27.708593749999977], + [-54.90278320312501, -27.651953125], + [-54.875732421875, -27.59921875], + [-54.82910156250003, -27.55058593750003], + [-54.777099609375, -27.53251953124999], + [-54.71972656250003, -27.54492187500003], + [-54.66586914062498, -27.526562500000026], + [-54.61542968750001, -27.47714843749999], + [-54.55493164062503, -27.4541015625], + [-54.484326171874955, -27.45732421875003], + [-54.44814453124994, -27.446484375000054], + [-54.32700195312495, -27.423535156249997], + [-54.26015625000002, -27.38203124999997], + [-54.20522460937502, -27.289648437499977], + [-54.156445312499926, -27.253808593749966], + [-54.11381835937496, -27.27470703124996], + [-54.04013671874995, -27.24375], + [-53.93535156250002, -27.1611328125], + [-53.91562, -27.159570312500037], + [-53.83818359375002, -27.121093750000014], + [-53.758496093749955, -26.978320312499974], + [-53.71728515625, -26.88281249999997], + [-53.72714843749995, -26.804687500000043], + [-53.753320312499966, -26.74863281249999], + [-53.744580078124955, -26.666503906249957], + [-53.718164062499994, -26.443164062500017], + [-53.71093750000003, -26.351855468749974], + [-53.668554687500006, -26.288183593749977], + [-53.67128906249994, -26.22509765625], + [-53.746923828125006, -26.08369140624997], + [-53.8232421875, -25.95957031249999], + [-53.86420898437498, -25.74882812499996], + [-53.89116210937499, -25.66884765625001], + [-53.95478515624998, -25.64765625000004], + [-54.01230468749998, -25.57792968749996], + [-54.08500976562496, -25.57187], + [-54.119238281250006, -25.54521484374996], + [-54.15458984374999, -25.523046874999963], + [-54.206152343750034, -25.529589843749974], + [-54.250097656250006, -25.57041015625002], + [-54.33188476562498, -25.57187], + [-54.38334960937499, -25.588671875000017], + [-54.44394531249998, -25.625], + [-54.50151367187499, -25.608300781250023], + [-54.537841796875, -25.576464843750017], + [-54.615869140624994, -25.576074218750023], + [-54.61054687499998, -25.432714843750034], + [-54.47314453124997, -25.22021484375], + [-54.43623046875001, -25.12128906250001], + [-54.4541015625, -25.06523437499996], + [-54.412988281249966, -24.86748046874999], + [-54.312939453124926, -24.528125], + [-54.281005859375, -24.30605468750001], + [-54.31728515625002, -24.201269531249977], + [-54.31826171874994, -24.128125], + [-54.26689453124996, -24.06582031250001], + [-54.241796875, -24.047265624999966], + [-54.37080078124998, -23.97119140625], + [-54.44023437500002, -23.90175781249998], + [-54.52958984375002, -23.852148437500006], + [-54.62548828125, -23.8125], + [-54.67177734375002, -23.829003906249994], + [-54.72138671875001, -23.852148437500006], + [-54.817285156249994, -23.88847656250003], + [-54.926464843749955, -23.95136718749997], + [-54.98266601562494, -23.974511718749966], + [-55.081884765625006, -23.997656249999977], + [-55.1943359375, -24.017480468750023], + [-55.28691406249993, -24.004296875], + [-55.366308593750034, -23.99101562499996], + [-55.41591796875002, -23.95136718749997], + [-55.4423828125, -23.86533203125002], + [-55.4423828125, -23.792578125000034], + [-55.458886718749966, -23.686718750000054], + [-55.51845703124994, -23.627246093750017], + [-55.53828124999998, -23.580957031249994], + [-55.54160156249995, -23.52470703124999], + [-55.53496093750002, -23.461914062499986], + [-55.51845703124994, -23.41562], + [-55.52836914062502, -23.35937], + [-55.554833984374994, -23.31962890624996], + [-55.54819335937498, -23.250195312500026], + [-55.561425781249994, -23.15429687500003], + [-55.60112304687499, -23.09472656249997], + [-55.620996093749966, -23.025292968750037], + [-55.620996093749966, -22.955859375000017], + [-55.65073242187498, -22.886425781249983], + [-55.65405273437494, -22.81035156250003], + [-55.627587890624966, -22.74091796875001], + [-55.61767578125, -22.671484375], + [-55.64741210937501, -22.621875], + [-55.70366210937502, -22.592089843749974], + [-55.74663085937499, -22.51269531249997], + [-55.753271484375006, -22.410156250000043], + [-55.79956054687503, -22.353906250000037], + [-55.84916992187499, -22.307617187500014], + [-55.90537109374998, -22.307617187500014], + [-55.991406249999926, -22.28115234375005], + [-56.06748046874998, -22.284472656250017], + [-56.18984374999994, -22.28115234375005], + [-56.246044921874926, -22.26464843749997], + [-56.275781249999966, -22.22822265625001], + [-56.35185546874999, -22.178613281250023], + [-56.39487304687498, -22.092675781250023], + [-56.44780273437502, -22.07617187500003], + [-56.52382812499994, -22.102539062499986], + [-56.55029296875, -22.13564453124998], + [-56.58007812499994, -22.18193359374999], + [-56.63300781249998, -22.23486328125003], + [-56.70244140625002, -22.231542968749977], + [-56.77519531249999, -22.261328125], + [-56.844677734374955, -22.26464843749997], + [-56.93725585937497, -22.27128906249999], + [-57.029882812500006, -22.24482421875001], + [-57.142333984375, -22.215039062499983], + [-57.23823242187501, -22.195214843750037], + [-57.33085937499996, -22.215039062499983], + [-57.39365234374998, -22.198437499999983], + [-57.47636718749993, -22.18857421875002], + [-57.56894531249998, -22.18193359374999], + [-57.64169921874995, -22.129003906249963], + [-57.721093749999966, -22.09921875000002], + [-57.76406250000002, -22.109179687500003], + [-57.82031250000003, -22.142285156249997], + [-57.87983398437498, -22.13564453124998], + [-57.955908203125034, -22.109179687500003], + [-57.98569335937498, -22.04638671875], + [-57.97905273437493, -22.00664062499999], + [-57.9625, -21.966992187499997], + [-57.93276367187502, -21.91074218749999], + [-57.949316406250006, -21.85117187500002], + [-57.94267578124999, -21.79833984375], + [-57.92944335937497, -21.75195312499997], + [-57.916210937499926, -21.699121093750037], + [-57.926171875, -21.649511718749977], + [-57.92944335937497, -21.596582031250023], + [-57.93608398437499, -21.54697265625005], + [-57.945996093749955, -21.49404296875001], + [-57.90629882812496, -21.417968749999957], + [-57.87324218749998, -21.355078125000034], + [-57.89306640625, -21.302246093750014], + [-57.886474609375, -21.26582031249997], + [-57.86000976562494, -21.20625], + [-57.82695312499996, -21.13359375000003], + [-57.830224609374994, -20.99794921875001], + [-57.86000976562494, -20.918554687500006], + [-57.89223632812502, -20.897070312499977], + [-57.900488281250006, -20.87304687499997], + [-57.88481445312502, -20.84169921874998], + [-57.90190429687496, -20.809375], + [-57.90849609374996, -20.776367187499986], + [-57.89140624999993, -20.747460937499966], + [-57.91513671874998, -20.690332031249966], + [-57.9625, -20.67382812499997], + [-57.97905273437493, -20.65732421874999], + [-57.99560546875003, -20.59443359374997], + [-58.00883789062496, -20.52167968749997], + [-58.00224609374996, -20.465429687499977], + [-58.02539062499997, -20.41582031249999], + [-58.05844726562495, -20.38613281249998], + [-58.091503906249926, -20.33320312500004], + [-58.124609375000034, -20.293457031250014], + [-58.13779296874995, -20.237304687500043], + [-58.15976562499998, -20.164648437499977], + [-58.09375, -20.15107421874997], + [-58.06762695312497, -20.110351562500014], + [-58.021142578124994, -20.05517578124997], + [-57.96015625000001, -20.04072265625004], + [-57.887597656249966, -20.020410156249994], + [-57.860742187499994, -19.97958984375002], + [-58.029931640624994, -19.83271484375004], + [-58.131494140624994, -19.74453125], + [-58.07202148437497, -19.62529296874996], + [-57.97167968749994, -19.424218750000037], + [-57.87451171874997, -19.22949218749997], + [-57.80039062499995, -19.08095703125001], + [-57.78144531250001, -19.053515625], + [-57.71679687499997, -19.044042968750034], + [-57.728613281250006, -18.967382812499963], + [-57.730859375, -18.91718750000004], + [-57.783105468749994, -18.91425781249997], + [-57.725, -18.73320312500003], + [-57.63916015624997, -18.475], + [-57.57402343749993, -18.279296875000014], + [-57.55312, -18.246484375], + [-57.50615234374996, -18.237304687499986], + [-57.49565429687496, -18.21464843749999], + [-57.55205078124999, -18.183105468749957], + [-57.58647460937499, -18.122265625], + [-57.66166992187493, -17.94736328124999], + [-57.78017578125002, -17.67177734374998], + [-57.78886718750002, -17.573046875000017], + [-57.83247070312501, -17.512109375000037], + [-57.90502929687497, -17.53232421874999], + [-57.990917968749955, -17.512890625000026], + [-58.20556640625, -17.363085937499974], + [-58.347753906250006, -17.282128906249994], + [-58.39599609374997, -17.234277343750023], + [-58.417382812499994, -17.08056640624997], + [-58.459814453125006, -16.910742187500006], + [-58.478125, -16.70068359375003], + [-58.470605468749994, -16.650195312500045], + [-58.35039062500002, -16.49082031249999], + [-58.35078125000001, -16.410253906250006], + [-58.34057617187497, -16.339941406249977], + [-58.34560546875002, -16.284375], + [-58.375390624999966, -16.283593749999966], + [-58.423681640625034, -16.30791015625003], + [-58.49658203124994, -16.32666015625003], + [-58.537939453125034, -16.32822265624999], + [-58.95727539062503, -16.31318359375004], + [-59.434277343749926, -16.295996093750006], + [-59.83115234374998, -16.28173828125003], + [-60.17558593749996, -16.26933593749999], + [-60.187207031249955, -16.132128906250017], + [-60.206640625, -15.90195312500002], + [-60.220410156249955, -15.738671874999966], + [-60.242333984374994, -15.479589843750034], + [-60.38046874999998, -15.318261718750023], + [-60.53046874999998, -15.143164062499977], + [-60.58320312499998, -15.098339843749983], + [-60.402001953124994, -15.092773437500014], + [-60.273339843749994, -15.088769531249994], + [-60.29887695312496, -14.618554687500037], + [-60.33803710937494, -14.570507812500011], + [-60.372705078124994, -14.41875], + [-60.39624023437497, -14.332812499999989], + [-60.460156249999955, -14.263085937499994], + [-60.47465820312496, -14.184765625000026], + [-60.462988281250006, -14.13242187500002], + [-60.42807617187498, -14.1], + [-60.40498046874998, -14.019238281249969], + [-60.42236328124997, -13.937988281250028], + [-60.460156249999955, -13.862402343749991], + [-60.506591796875, -13.78984375], + [-60.59531249999995, -13.745312500000026], + [-60.72236328124998, -13.664355468749974], + [-60.914501953124955, -13.561425781249966], + [-61.077001953125034, -13.489746093750014], + [-61.129150390625, -13.498535156250028], + [-61.41606445312502, -13.526562499999969], + [-61.511572265625006, -13.541210937500011], + [-61.57568359375003, -13.524804687499966], + [-61.789941406249966, -13.525585937500026], + [-61.87412109374998, -13.470410156249983], + [-61.944726562499966, -13.40625], + [-62.09477539062499, -13.241992187499989], + [-62.118017578125006, -13.15976562500002], + [-62.17607421874993, -13.133691406250037], + [-62.26391601562497, -13.14365234375002], + [-62.35283203124999, -13.132421874999963], + [-62.525537109374994, -13.064257812500017], + [-62.68706054687496, -12.994335937499983], + [-62.765478515625034, -12.99726562500004], + [-62.83515625000001, -12.953710937499963], + [-62.957910156249966, -12.847070312499994], + [-63.01518554687502, -12.80556640624998], + [-63.041357421875006, -12.750390625000023], + [-63.067480468750006, -12.669140624999983], + [-63.116796875, -12.651660156249974], + [-63.18066406249997, -12.666210937500011], + [-63.249755859375, -12.70791015624998], + [-63.34667968749994, -12.680078125], + [-63.46523437499994, -12.605175781250011], + [-63.54189453125002, -12.546679687500003], + [-63.585644531249955, -12.518945312500037], + [-63.68857421874998, -12.478027343749957], + [-63.7880859375, -12.469433593749983], + [-63.938574218750006, -12.5296875], + [-64.06162109375003, -12.505078124999955], + [-64.255029296875, -12.483300781249966], + [-64.42050781249995, -12.439746093749974], + [-64.48076171874999, -12.326171875000014], + [-64.51342773437497, -12.250976562499972], + [-64.611669921875, -12.203906249999974], + [-64.69003906249998, -12.146484375], + [-64.783447265625, -12.059375], + [-64.82988281249996, -12.030273437499957], + [-64.91435546874993, -12.005957031249977], + [-64.99252929687498, -11.975195312500006], + [-65.00122070312497, -11.920019531249963], + [-65.03027343750003, -11.847363281249997], + [-65.037109375, -11.829394531249974], + [-65.09028320312498, -11.741210937499943], + [-65.11513671875, -11.735058593750026], + [-65.14267578125, -11.75234375], + [-65.16337890624996, -11.765136718750028], + [-65.18574218749998, -11.749511718749957], + [-65.18974609374999, -11.710058593749991], + [-65.175390625, -11.646875], + [-65.20620117187497, -11.58056640625], + [-65.28227539062502, -11.511035156249946], + [-65.32202148437494, -11.439160156249969], + [-65.32548828124993, -11.364746093749986], + [-65.3423828125, -11.315039062499991], + [-65.37285156249999, -11.289941406250023], + [-65.389892578125, -11.246289062500011], + [-65.39360351562496, -11.184277343749997], + [-65.37158203125, -11.110351562499943], + [-65.32377929687496, -11.024804687500009], + [-65.33403320312499, -10.892773437500026], + [-65.40229492187495, -10.714746093749994], + [-65.43999023437499, -10.586230468750017], + [-65.44711914062503, -10.507421875000034], + [-65.4369140625, -10.449023437499946], + [-65.39545898437498, -10.392285156250026], + [-65.31308593749998, -10.253027343749991], + [-65.29858398437497, -10.146777343750017], + [-65.324560546875, -10.026953125000034], + [-65.32812, -9.935546874999972], + [-65.30932617187503, -9.872656250000034], + [-65.33789062499997, -9.790234375000026], + [-65.39614257812494, -9.712402343749986], + [-65.43676757812497, -9.710449218750028], + [-65.49199218749993, -9.731738281250017], + [-65.55869140625003, -9.797460937499991], + [-65.63710937500002, -9.809082031249957], + [-65.706787109375, -9.768457031250037], + [-65.92470703125, -9.785449218750031], + [-66.26357421875, -9.826074218749966], + [-66.39921875000002, -9.868164062500014], + [-66.47890625, -9.886132812500023], + [-66.57534179687502, -9.899902343749986], + [-66.72998046875, -9.975488281250023], + [-67.11152343750001, -10.268945312500037], + [-67.19047851562502, -10.31142578124998], + [-67.28046874999995, -10.317285156250023], + [-67.33271484374995, -10.357910156249957], + [-67.41694335937495, -10.389843749999969], + [-67.58242187500002, -10.505957031250006], + [-67.66665039062494, -10.598925781250031], + [-67.72177734374998, -10.683105468749943], + [-67.78569335937496, -10.686035156250014], + [-67.83500976562496, -10.662792968749983], + [-67.99169921875, -10.674414062499949], + [-68.07167968749994, -10.703125], + [-68.15864257812498, -10.785058593750023], + [-68.26660156249997, -10.933105468749986], + [-68.31113281249998, -10.975195312500034], + [-68.39799804687499, -11.01875], + [-68.49833984375002, -11.054785156249991], + [-68.62265625000003, -11.109179687499974], + [-68.678369140625, -11.11279296875], + [-68.72749023437498, -11.122460937500009], + [-68.769921875, -11.097656250000028], + [-68.78408203124997, -11.044628906249969], + [-68.84833984374998, -11.01113281249998], + [-69.00166015624995, -10.994335937500026], + [-69.228515625, -10.955664062499963], + [-69.46254882812497, -10.948144531250023], + [-69.57861328125, -10.951757812499963], + [-69.67402343749998, -10.9541015625], + [-69.83979492187501, -10.93339843749996], + [-69.96035156249997, -10.92988281250004], + [-70.06630859374997, -10.982421875], + [-70.22006835937503, -11.04765625], + [-70.29038085937498, -11.064257812499974], + [-70.34199218750001, -11.066699218750017], + [-70.39228515624995, -11.058593749999972], + [-70.45087890624998, -11.024804687500009], + [-70.53325195312496, -10.946875], + [-70.59653320312498, -10.976855468750017], + [-70.642333984375, -11.010253906249986], + [-70.64155273437501, -10.840820312500014], + [-70.64033203124993, -10.586035156249977], + [-70.63935546875001, -10.361328125000028], + [-70.638525390625, -10.181542968749994], + [-70.63759765625, -9.971777343749977], + [-70.63691406249995, -9.823730468750014], + [-70.59379882812496, -9.767480468750009], + [-70.56723632812498, -9.704589843749986], + [-70.59916992187499, -9.620507812500009], + [-70.59223632812501, -9.543457031250028], + [-70.57016601562503, -9.489843750000034], + [-70.54111328124998, -9.4375], + [-70.60791015625, -9.463671875000031], + [-70.63691406249995, -9.478222656249969], + [-70.6724609375, -9.51796875], + [-70.75849609374995, -9.571679687500009], + [-70.81625976562498, -9.625292968750003], + [-70.88452148437494, -9.669042968750034], + [-70.97075195312502, -9.765722656250006], + [-71.041748046875, -9.81875], + [-71.11528320312499, -9.852441406250009], + [-71.237939453125, -9.966015624999955], + [-71.33940429687499, -9.988574218750031], + [-71.6080078125, -10.00605468750004], + [-71.887451171875, -10.005566406250026], + [-72.14296875, -10.005175781250031], + [-72.18159179687495, -10.003710937500003], + [-72.1791015625, -9.910156249999943], + [-72.17285156249997, -9.844042968749974], + [-72.25996093749995, -9.77431640624998], + [-72.26582031249998, -9.6884765625], + [-72.28901367187501, -9.629199218750003], + [-72.31806640624995, -9.556640624999957], + [-72.37905273437497, -9.51015625], + [-72.46474609375, -9.492187499999972], + [-72.60546875, -9.452050781249966], + [-72.81425781249999, -9.410351562499997], + [-73.01376953125003, -9.407421875000026], + [-73.20942382812493, -9.411425781249946], + [-73.08984375, -9.26572265625002], + [-72.970361328125, -9.120117187500028], + [-72.97402343750002, -8.9931640625], + [-73.07050781249995, -8.8828125], + [-73.12255859375, -8.81406250000002], + [-73.20312, -8.719335937499991], + [-73.30244140624995, -8.654003906250011], + [-73.35673828125002, -8.566992187499963], + [-73.35170898437497, -8.514160156250028], + [-73.36040039062496, -8.479296875000031], + [-73.39814453125001, -8.458984374999986], + [-73.43588867187498, -8.42705078124996], + [-73.48813476562495, -8.392187499999963], + [-73.54912109374993, -8.34580078125002], + [-73.54912109374993, -8.299316406249957], + [-73.57236328124998, -8.249902343750023], + [-73.61010742187503, -8.191894531250014], + [-73.61010742187503, -8.145410156249952], + [-73.64492187500002, -8.072851562500006], + [-73.68266601562496, -8.02060546875002], + [-73.72041015624993, -7.985742187500023], + [-73.77558593749998, -7.936425781250009], + [-73.77270507812503, -7.895703124999983], + [-73.73203125, -7.875390625], + [-73.714599609375, -7.82900390624998], + [-73.72041015624993, -7.782519531250017], + [-73.76689453124999, -7.753515624999963], + [-73.82207031249996, -7.738964843750026], + [-73.89462890624998, -7.654785156250014], + [-73.94687, -7.611230468750023], + [-73.98173828124996, -7.58505859375002], + [-74.00205078125003, -7.556054687499966], + [-73.98173828124996, -7.535742187500006], + [-73.95849609374994, -7.506640625000031], + [-73.95268554687502, -7.460253906249989], + [-73.96430664062498, -7.416699218749997], + [-73.96430664062498, -7.378906250000028], + [-73.92944335937497, -7.367285156249977], + [-73.89174804687502, -7.373144531250006], + [-73.85400390624997, -7.349902343749989], + [-73.80463867187495, -7.341210937499994], + [-73.74946289062498, -7.335351562500037], + [-73.72041015624993, -7.309277343749969], + [-73.72333984375001, -7.262792968750006], + [-73.758203125, -7.172753906249952], + [-73.79301757812499, -7.135058593750003], + [-73.80463867187495, -7.079882812499946], + [-73.77626953124994, -6.973535156249952], + [-73.75810546874999, -6.90576171875], + [-73.69453124999998, -6.833789062500003], + [-73.49990234374997, -6.679492187500003], + [-73.32548828124996, -6.574707031249972], + [-73.24033203125, -6.56406250000002], + [-73.17744140624998, -6.525195312500017], + [-73.137353515625, -6.4658203125], + [-73.12631835937495, -6.40087890625], + [-73.13535156250003, -6.34433593750002], + [-73.16772460937497, -6.260644531250023], + [-73.20649414062495, -6.156445312500026], + [-73.23554687500001, -6.098437500000017], + [-73.209375, -6.028710937500023], + [-73.16289062499996, -5.933398437499974], + [-73.06806640624998, -5.789550781249972], + [-72.97988281249997, -5.634863281249991], + [-72.97021484374994, -5.589648437500017], + [-72.95893554687495, -5.495214843749963], + [-72.91826171874993, -5.302539062499974], + [-72.89580078124999, -5.198242187499943], + [-72.90747070312497, -5.157714843749957], + [-72.88706054687498, -5.122753906250026], + [-72.83193359374994, -5.09375], + [-72.69873046874997, -5.067187499999989], + [-72.60834960937495, -5.009570312499974], + [-72.46899414062497, -4.901269531250023], + [-72.35283203124993, -4.786035156249994], + [-72.25678710937501, -4.74892578124998], + [-72.08251953125003, -4.642285156250011], + [-71.98242187499997, -4.574609375], + [-71.94316406249996, -4.553320312500006], + [-71.8447265625, -4.504394531249986], + [-71.66835937499994, -4.487304687499972], + [-71.521337890625, -4.469726562499943], + [-71.43828125, -4.437597656249977], + [-71.316796875, -4.424316406250014], + [-71.23500976562494, -4.388183593750028], + [-71.14423828125001, -4.387207031250014], + [-70.97368164062499, -4.350488281249994], + [-70.91562, -4.295312500000023], + [-70.86601562499999, -4.229589843749963], + [-70.79951171874995, -4.173339843749957], + [-70.72158203124997, -4.15888671875004], + [-70.63457031250002, -4.168652343749983], + [-70.53066406249997, -4.167578125000034], + [-70.40463867187498, -4.150097656250026], + [-70.34365234375, -4.193652343750017], + [-70.31689453124994, -4.246972656250037], + [-70.23916015625002, -4.30117187499998], + [-70.18398437499997, -4.298144531249989], + [-70.12880859375, -4.286621093749943], + [-70.05332031249998, -4.333105468750006], + [-70.00395507812496, -4.327246093749963], + [-69.97202148437503, -4.30117187499998], + [-69.96591796875003, -4.2359375], + [-69.94819335937498, -4.200585937500009], + [-69.91103515624997, -3.996582031250014], + [-69.849755859375, -3.659863281249983], + [-69.79414062499995, -3.354589843749963], + [-69.73261718749993, -3.016699218749949], + [-69.66904296875003, -2.667675781249997], + [-69.60468749999998, -2.314257812500017], + [-69.55185546874998, -2.02421875], + [-69.50644531249995, -1.774902343750014], + [-69.47861328124998, -1.621972656250023], + [-69.43491210937503, -1.421679687499989], + [-69.41787109375002, -1.24570312500002], + [-69.40024414062498, -1.194921874999977], + [-69.41142578124996, -1.152246093749994], + [-69.44912109375, -1.091601562499974], + [-69.44873046875, -1.064941406249972], + [-69.4443359375, -1.02958984374996], + [-69.44873046875, -0.998730468749983], + [-69.48842773437502, -0.965722656250009], + [-69.519287109375, -0.945800781250028], + [-69.54355468749995, -0.917187499999969], + [-69.55458984375, -0.877441406249957], + [-69.57441406249995, -0.837792968749966], + [-69.58325195312497, -0.795898437499957], + [-69.61191406250003, -0.762792968749963], + [-69.62070312499995, -0.72089843750004], + [-69.60087890625002, -0.68125], + [-69.59204101562497, -0.63935546875004], + [-69.60087890625002, -0.599609375000028], + [-69.61191406250003, -0.553320312500006], + [-69.63398437500001, -0.50927734375], + [-69.66748046874997, -0.482421874999957], + [-69.74746093750002, -0.452539062499994], + [-69.82792968749999, -0.381347656249972], + [-69.92275390624994, -0.317480468750006], + [-70.04404296874995, -0.196191406249994], + [-70.07050781249993, -0.13886718750004], + [-70.07094726562502, 0.018554687499972], + [-70.06572265624993, 0.189355468750037], + [-70.05791015624993, 0.44736328125002], + [-70.05390624999993, 0.578613281250028], + [-69.98544921875, 0.585839843749994], + [-69.92509765624999, 0.589404296875003], + [-69.862060546875, 0.598486328124991], + [-69.80712890625, 0.607470703125045], + [-69.75673828124997, 0.62636718749998], + [-69.71889648437497, 0.649804687499966], + [-69.67382812499994, 0.665087890624974], + [-69.63872070312499, 0.659667968750014], + [-69.60361328125003, 0.680371093749969], + [-69.56484374999994, 0.700195312500014], + [-69.52705078124998, 0.716406250000034], + [-69.47211914062498, 0.72993164062504], + [-69.42080078125, 0.698388671875009], + [-69.3919921875, 0.66689453124998], + [-69.35864257812494, 0.651562499999969], + [-69.32714843750003, 0.655175781249994], + [-69.30551757812495, 0.652441406249963], + [-69.28300781249999, 0.627246093749989], + [-69.25419921874999, 0.625439453124969], + [-69.21279296875, 0.629931640625003], + [-69.174072265625, 0.635351562500034], + [-69.15605468749999, 0.642529296874997], + [-69.15332031249994, 0.65878906250002], + [-69.16323242187502, 0.686669921875009], + [-69.17675781250003, 0.712841796875011], + [-69.16596679687495, 0.753320312500009], + [-69.16503906250003, 0.801953125000054], + [-69.16323242187502, 0.8640625], + [-69.19384765624994, 0.898291015624963], + [-69.22446289062498, 0.963134765625028], + [-69.25869140625002, 1.015380859375014], + [-69.31181640624999, 1.050488281249969], + [-69.36137695312496, 1.064013671874974], + [-69.40278320312498, 1.042382812500009], + [-69.44150390624995, 1.038818359374986], + [-69.47031249999995, 1.058593750000028], + [-69.51713867187499, 1.059472656250023], + [-69.56757812499998, 1.065771484374977], + [-69.62089843749999, 1.073242187499986], + [-69.71699218749995, 1.059082031250028], + [-69.751318359375, 1.076611328125054], + [-69.79814453124996, 1.078417968749974], + [-69.85214843750003, 1.05952148437504], + [-69.85078124999993, 1.308789062500011], + [-69.84946289062503, 1.54389648437504], + [-69.84858398437493, 1.708740234375043], + [-69.79995117187497, 1.705175781250034], + [-69.73959960937503, 1.734863281250043], + [-69.650048828125, 1.739453125], + [-69.58125, 1.770751953124986], + [-69.54291992187501, 1.773242187500045], + [-69.47016601562493, 1.757910156250034], + [-69.39433593749993, 1.725781249999969], + [-69.31972656250002, 1.721240234375017], + [-69.12426757812497, 1.721289062500034], + [-68.91318359374998, 1.721386718750054], + [-68.67846679687503, 1.721484374999974], + [-68.44345703125, 1.721582031249994], + [-68.23955078124996, 1.721679687500014], + [-68.17656249999999, 1.719824218749991], + [-68.21328125000002, 1.774560546875051], + [-68.25595703125, 1.845507812500017], + [-68.23945312499993, 1.901367187500028], + [-68.21835937499998, 1.957617187500034], + [-68.19379882812495, 1.987011718749983], + [-68.1302734375, 1.955761718750011], + [-68.07705078124997, 1.860107421874972], + [-68.03286132812494, 1.78803710937504], + [-67.98974609374994, 1.752539062500006], + [-67.93623046874998, 1.748486328124969], + [-67.87553710937496, 1.760595703125048], + [-67.815087890625, 1.790087890625017], + [-67.71186523437501, 1.922119140625], + [-67.60922851562498, 2.035058593750009], + [-67.55605468749997, 2.072998046875], + [-67.49965820312494, 2.107910156250014], + [-67.45776367187503, 2.121142578125045], + [-67.40043945312499, 2.116699218750028], + [-67.35195312499997, 2.085839843750051], + [-67.32060546874996, 2.03208007812502], + [-67.20581054687503, 1.844824218749977], + [-67.11923828124998, 1.703613281249986], + [-67.09013671874999, 1.615576171874991], + [-67.08828124999997, 1.400585937499969], + [-67.09365234375, 1.21000976562496], + [-67.082275390625, 1.185400390625006], + [-67.06523437499999, 1.178369140624994], + [-66.87602539062499, 1.223046875000037], + [-66.61904296874994, 0.992138671874983], + [-66.42924804687502, 0.82167968749998], + [-66.34711914062498, 0.7671875], + [-66.30166015624994, 0.751953124999986], + [-66.19121093750002, 0.76328125], + [-66.06005859375003, 0.78535156250004], + [-65.996337890625, 0.80976562500004], + [-65.92587890624995, 0.863134765624991], + [-65.81132812499999, 0.937255859375], + [-65.718115234375, 0.978027343750043], + [-65.68144531249999, 0.983447265624989], + [-65.64467773437497, 0.970361328124994], + [-65.566015625, 0.926074218750031], + [-65.52299804687493, 0.843408203124966], + [-65.56269531249995, 0.747509765624969], + [-65.55605468750002, 0.687988281250014], + [-65.47338867187497, 0.691259765624977], + [-65.40722656249997, 0.790478515625026], + [-65.36083984374994, 0.868652343750057], + [-65.26396484375002, 0.931884765625057], + [-65.16962890624998, 1.022216796874986], + [-65.10375976562497, 1.108105468749983], + [-65.02656249999998, 1.158447265625028], + [-64.91010742187495, 1.219726562499986], + [-64.81796875, 1.257128906249974], + [-64.73154296875, 1.253320312499994], + [-64.66743164062498, 1.293847656249994], + [-64.58437, 1.369873046875028], + [-64.52626953125002, 1.431005859375048], + [-64.48603515624998, 1.452783203125037], + [-64.40512695312503, 1.446875], + [-64.30419921874997, 1.455273437500011], + [-64.20502929687493, 1.52949218750004], + [-64.11484375000003, 1.619287109375037], + [-64.06704101562497, 1.770507812500014], + [-64.03544921874993, 1.904443359375037], + [-64.00849609374995, 1.931591796874969], + [-63.975781249999955, 1.953027343749994], + [-63.937158203124994, 1.966992187499997], + [-63.84448242187503, 1.976708984375023], + [-63.68212890625, 2.048144531250003], + [-63.570263671874926, 2.120507812500009], + [-63.46391601562493, 2.136035156249974], + [-63.43251953124994, 2.155566406250045], + [-63.393945312499994, 2.222509765625006], + [-63.374853515625006, 2.340429687500048], + [-63.389257812500006, 2.411914062500045], + [-63.58461914062502, 2.433935546874991], + [-63.712548828124966, 2.434033203125011], + [-63.924169921875006, 2.452441406250031], + [-64.02490234375, 2.481884765624997], + [-64.04658203124998, 2.502392578124997], + [-64.048828125, 2.525097656250011], + [-64.0287109375, 2.576074218749994], + [-64.00903320312497, 2.67187], + [-64.03779296874998, 2.801513671875014], + [-64.14355468750003, 3.004882812500057], + [-64.21884765625, 3.2046875], + [-64.22875976562497, 3.343994140625043], + [-64.22705078124997, 3.491210937500014], + [-64.22109375000002, 3.587402343749972], + [-64.27529296874994, 3.662695312500034], + [-64.56791992187496, 3.899804687500023], + [-64.66899414062496, 4.01181640625002], + [-64.70258789062495, 4.089306640624997], + [-64.81787109375, 4.232275390624991], + [-64.788671875, 4.276025390625023], + [-64.72226562499998, 4.274414062500057], + [-64.66552734374997, 4.237109375], + [-64.61367187499997, 4.157714843749986], + [-64.57636718750001, 4.139892578125], + [-64.52553710937494, 4.13999023437502], + [-64.25566406249996, 4.140332031249997], + [-64.19248046874995, 4.126855468750009], + [-64.154296875, 4.100146484374989], + [-64.12172851562502, 4.066992187499977], + [-64.07338867187494, 3.974414062500045], + [-64.02148437500003, 3.929101562500051], + [-63.914648437500006, 3.930664062500014], + [-63.746972656249966, 3.93256835937504], + [-63.65292968749998, 3.940820312500037], + [-63.59663085937498, 3.915039062500028], + [-63.526806640624955, 3.893701171875023], + [-63.37978515624994, 3.942871093750014], + [-63.33867187500002, 3.943896484375045], + [-63.29472656249993, 3.92226562499998], + [-63.13623046874997, 3.756445312500048], + [-63.04531250000002, 3.686474609374997], + [-62.96865234374994, 3.593945312499983], + [-62.85698242187502, 3.593457031249969], + [-62.764599609374926, 3.672949218749991], + [-62.73994140624998, 3.940332031250023], + [-62.71210937499998, 4.01791992187502], + [-62.66533203124996, 4.039648437500006], + [-62.60976562500002, 4.042285156250017], + [-62.5439453125, 4.084326171874963], + [-62.47255859374994, 4.138525390624991], + [-62.41064453124994, 4.156738281249972], + [-62.153125, 4.098388671874986], + [-62.08159179687496, 4.126318359374991], + [-61.82084960937496, 4.197021484375], + [-61.55424804687499, 4.287792968750026], + [-61.47939453124994, 4.40224609374998], + [-61.36752929687498, 4.433007812500037], + [-61.28007812500002, 4.516894531249974], + [-61.20942382812501, 4.508056640625043], + [-61.102441406249966, 4.504687499999974], + [-61.036279296874994, 4.519335937500031], + [-61.00283203125002, 4.535253906249991], + [-60.96640624999998, 4.574707031250028], + [-60.90625, 4.68681640624996], + [-60.833398437499966, 4.729199218749983], + [-60.74174804687493, 4.774121093749983], + [-60.67915039062498, 4.827099609375026], + [-60.627587890624966, 4.89252929687504], + [-60.603857421875006, 4.94936523437498], + [-60.60449218749994, 4.99458007812504], + [-60.63500976562494, 5.081982421874997], + [-60.671972656250034, 5.164355468749989], + [-60.71196289062499, 5.191552734375023], + [-60.742138671874926, 5.202050781250037], + [-60.6513671875, 5.221142578125011], + [-60.576416015625, 5.192480468750034], + [-60.45952148437499, 5.188085937500034], + [-60.40878906249998, 5.21015625], + [-60.33520507812497, 5.199316406250006], + [-60.241650390624926, 5.257958984374966] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Barbados", + "iso_a2": "BB", + "iso_a3": "BRB", + "iso_n3": "052", + "continent": "North America" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-59.493310546874994, 13.081982421874997], + [-59.521875, 13.062207031249997], + [-59.611328125, 13.102099609374989], + [-59.6427734375, 13.150292968749994], + [-59.6466796875, 13.303125], + [-59.59160156249999, 13.317675781250003], + [-59.487890625, 13.196826171874989], + [-59.427636718749994, 13.152783203124997], + [-59.493310546874994, 13.081982421874997] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Brunei", + "iso_a2": "BN", + "iso_a3": "BRN", + "iso_n3": "096", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [115.02675781250005, 4.899707031249989], + [115.1400390625, 4.899755859374991], + [115.16845703125003, 4.866699218750014], + [115.2279296875, 4.750585937499977], + [115.26669921875006, 4.633984375000026], + [115.27929687499997, 4.456347656249989], + [115.32675781250006, 4.380761718750051], + [115.31923828125, 4.365283203125003], + [115.290625, 4.352587890624989], + [115.24667968750006, 4.34721679687496], + [115.17060546875004, 4.364208984375054], + [115.10703125000006, 4.390429687499974], + [115.05156250000002, 4.582666015624966], + [115.02675781250005, 4.691357421874997], + [115.02880859375003, 4.821142578124963], + [115.02675781250005, 4.899707031249989] + ] + ], + [ + [ + [115.02675781250005, 4.899707031249989], + [114.9447265625, 4.85625], + [114.86455078125002, 4.801757812500014], + [114.78417968749997, 4.754833984375054], + [114.74667968750006, 4.718066406250017], + [114.75996093750004, 4.66650390625], + [114.77929687499997, 4.553027343749974], + [114.79013671875006, 4.463916015625017], + [114.81826171875, 4.42875976562496], + [114.84023437500005, 4.393212890625009], + [114.83105468749997, 4.354492187500028], + [114.78349609375002, 4.280761718750014], + [114.81044921875, 4.266503906250037], + [114.77617187500007, 4.168798828125034], + [114.725, 4.096533203124963], + [114.65410156250007, 4.037646484375045], + [114.60830078125005, 4.023974609375017], + [114.57177734374997, 4.049072265624972], + [114.51220703125003, 4.113574218749974], + [114.44707031250007, 4.203564453125011], + [114.41660156250006, 4.255859375], + [114.3229492187501, 4.262792968749991], + [114.28964843750006, 4.304199218749986], + [114.28759765624997, 4.354736328124986], + [114.26103515625002, 4.414257812500026], + [114.22412109375003, 4.47788085937502], + [114.16884765625005, 4.526953125], + [114.09511718750005, 4.565234374999974], + [114.0638671875, 4.592675781249966], + [114.17792968750004, 4.590966796874966], + [114.29941406250012, 4.607177734374986], + [114.42441406250006, 4.660400390625], + [114.54472656250007, 4.724560546875011], + [114.6458984375, 4.798144531249989], + [114.74082031250006, 4.881005859374994], + [114.840625, 4.946386718749991], + [114.99541015625002, 5.022363281250023], + [115.04765625000002, 5.016357421875043], + [115.0470703125001, 4.962451171874974], + [115.02675781250005, 4.899707031249989] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Bhutan", + "iso_a2": "BT", + "iso_a3": "BTN", + "iso_n3": "064", + "continent": "Asia" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [91.63193359375003, 27.759960937499997], + [91.62587890625002, 27.7373046875], + [91.59765625, 27.677001953125], + [91.57929687500001, 27.61142578125], + [91.5947265625, 27.557666015624996], + [91.65810546875002, 27.493603515624997], + [91.74306640625002, 27.442529296874994], + [91.85126953125001, 27.438623046874994], + [91.95097656249999, 27.458300781249996], + [91.99082031250003, 27.4501953125], + [92.044921875, 27.364697265624997], + [92.08339843750002, 27.290625], + [92.03115234375002, 27.214306640624997], + [92.00253906250003, 27.147363281249994], + [91.99228515625003, 27.099902343749996], + [91.99863281250003, 27.079296875], + [92.03085937500003, 27.040820312499996], + [92.06816406249999, 26.9751953125], + [92.07343750000001, 26.91484375], + [92.04970703125002, 26.874853515625], + [91.99833984374999, 26.85498046875], + [91.94375, 26.86083984375], + [91.89863281250001, 26.860058593749997], + [91.84208984374999, 26.852978515624997], + [91.75371093749999, 26.830761718749997], + [91.67158203125001, 26.802001953125], + [91.517578125, 26.807324218749997], + [91.45585937499999, 26.866894531249997], + [91.4267578125, 26.867089843749994], + [91.28652343750002, 26.789941406249994], + [91.13388671875003, 26.803417968749997], + [90.85576171874999, 26.777734375], + [90.73964843750002, 26.771679687499997], + [90.62031250000001, 26.780224609374997], + [90.55986328124999, 26.796582031249997], + [90.44765625000002, 26.85078125], + [90.34589843750001, 26.890332031249997], + [90.24238281250001, 26.854150390624994], + [90.2060546875, 26.847509765625], + [90.12294921875002, 26.754589843749997], + [89.94316406249999, 26.723925781249996], + [89.76386718750001, 26.7015625], + [89.7109375, 26.713916015624996], + [89.60996093750003, 26.719433593749997], + [89.60615234375001, 26.741113281249994], + [89.60917968749999, 26.76220703125], + [89.58613281250001, 26.778955078124994], + [89.54511718750001, 26.796240234375], + [89.474609375, 26.803417968749997], + [89.38417968750002, 26.8265625], + [89.33212890625003, 26.8486328125], + [89.14824218749999, 26.816162109375], + [89.04091796875002, 26.865039062499996], + [88.91914062500001, 26.9322265625], + [88.85761718750001, 26.961474609374996], + [88.83515625000001, 27.065576171874994], + [88.81357421875003, 27.099023437499994], + [88.765625, 27.134228515624997], + [88.73876953125, 27.175585937499996], + [88.76035156250003, 27.218115234375], + [88.88164062499999, 27.2974609375], + [88.89140624999999, 27.316064453124994], + [88.94755859374999, 27.464013671874994], + [89.02548828125003, 27.517871093749996], + [89.10234374999999, 27.592578125], + [89.16044921874999, 27.711279296875], + [89.27265625000001, 27.833154296874994], + [89.39589843750002, 27.958154296874994], + [89.48066406250001, 28.059960937499994], + [89.53691406249999, 28.107421875], + [89.65273437500002, 28.15830078125], + [89.74980468749999, 28.188183593749997], + [89.81689453125, 28.256298828124997], + [89.89785156250002, 28.294140625], + [89.98105468750003, 28.311181640624994], + [90.1044921875, 28.302050781249996], + [90.22080078125003, 28.277734375], + [90.34824218750003, 28.243945312499996], + [90.36298828125001, 28.216503906249997], + [90.35214843750003, 28.168164062499997], + [90.33378906249999, 28.119140625], + [90.33310546875003, 28.093994140625], + [90.35273437500001, 28.080224609374994], + [90.47734374999999, 28.070849609374996], + [90.63007812500001, 28.078564453124997], + [90.71572265625002, 28.071728515624997], + [90.90664062500002, 28.026513671874994], + [90.9625, 27.994580078124997], + [91.02080078124999, 27.970068359375], + [91.07773437500003, 27.974462890625], + [91.14990234375, 28.026757812499994], + [91.22587890624999, 28.071240234374997], + [91.27304687500003, 28.078369140625], + [91.30683593750001, 28.064013671874996], + [91.36757812500002, 28.021630859374994], + [91.49335937500001, 27.981787109375], + [91.60556640625003, 27.951708984374996], + [91.64189453124999, 27.923242187499994], + [91.62939453125, 27.80087890625], + [91.63193359375003, 27.759960937499997] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Botswana", + "iso_a2": "BW", + "iso_a3": "BWA", + "iso_n3": "072", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [25.2587890625, -17.793554687500006], + [25.239062500000017, -17.843066406250003], + [25.224023437500023, -17.91523437500001], + [25.242285156250006, -17.969042968750003], + [25.28242187500001, -18.04121093750001], + [25.340234375000023, -18.1044921875], + [25.384375, -18.14199218750001], + [25.43671875000001, -18.234960937500006], + [25.4892578125, -18.35126953125001], + [25.55830078125001, -18.441796875], + [25.76123046875, -18.64921875], + [25.78369140625, -18.72353515625001], + [25.811914062500023, -18.79707031250001], + [25.939355468750023, -18.93867187500001], + [25.95917968750001, -18.985644531250003], + [25.95068359375, -19.08173828125001], + [26.081933593750023, -19.369921875], + [26.168066406250006, -19.53828125000001], + [26.241015625000017, -19.5693359375], + [26.474609375, -19.748632812500006], + [26.67822265625, -19.89277343750001], + [26.91669921875001, -19.99013671875001], + [27.091796875, -20.05419921875], + [27.17822265625, -20.10097656250001], + [27.221484375000017, -20.145800781250003], + [27.256738281250023, -20.23203125], + [27.27460937500001, -20.3818359375], + [27.28076171875, -20.47871093750001], + [27.46894531250001, -20.47480468750001], + [27.624609375, -20.48359375000001], + [27.679296875, -20.503027343750006], + [27.699609375000023, -20.53066406250001], + [27.69482421875, -20.59453125], + [27.69697265625001, -20.689746093750003], + [27.70429687500001, -20.76640625], + [27.688085937500006, -20.84833984375001], + [27.67695312500001, -20.94482421875], + [27.66943359375, -21.064257812500003], + [27.693457031250006, -21.11103515625001], + [27.844140625000023, -21.261523437500003], + [27.90742187500001, -21.35908203125001], + [27.974609375, -21.50673828125001], + [28.014062500000023, -21.55419921875], + [28.04560546875001, -21.573046875], + [28.181640625, -21.58935546875], + [28.532031250000017, -21.65126953125001], + [28.74775390625001, -21.707617187500006], + [28.919335937500023, -21.766015625], + [28.99072265625, -21.78144531250001], + [29.02558593750001, -21.796875], + [29.03730468750001, -21.811328125], + [29.01582031250001, -21.93994140625], + [29.023339843750023, -21.98125], + [29.042382812500023, -22.018359375], + [29.07148437500001, -22.047460937500006], + [29.106835937500023, -22.065722656250003], + [29.237207031250023, -22.07949218750001], + [29.315234375000017, -22.15771484375], + [29.36484375, -22.193945312500006], + [29.1298828125, -22.21328125], + [29.013476562500017, -22.278417968750006], + [28.94580078125, -22.395117187500006], + [28.83984375, -22.480859375], + [28.69550781250001, -22.535449218750003], + [28.542871093750023, -22.57294921875001], + [28.381738281250023, -22.593359375], + [28.21015625000001, -22.693652343750003], + [28.027929687500006, -22.87373046875001], + [27.93505859375, -22.98701171875001], + [27.93134765625001, -23.03359375], + [27.890527343750023, -23.07392578125001], + [27.812597656250006, -23.108007812500006], + [27.7685546875, -23.14892578125], + [27.75830078125, -23.19677734375], + [27.716796875, -23.21962890625001], + [27.643847656250017, -23.21767578125001], + [27.592675781250023, -23.25263671875001], + [27.56318359375001, -23.324609375], + [27.49873046875001, -23.36835937500001], + [27.399218750000017, -23.38359375], + [27.313378906250023, -23.42421875], + [27.2412109375, -23.490039062500003], + [27.185546875, -23.5234375], + [27.146386718750023, -23.5244140625], + [27.085546875, -23.577929687500003], + [26.98701171875001, -23.70458984375], + [26.970605468750023, -23.763476562500003], + [26.835058593750006, -24.240820312500006], + [26.761132812500023, -24.297167968750003], + [26.617773437500006, -24.3955078125], + [26.5015625, -24.51328125], + [26.451757812500006, -24.58271484375001], + [26.39716796875001, -24.613574218750003], + [26.130859375, -24.671484375], + [26.031835937500006, -24.702441406250003], + [25.912109375, -24.74746093750001], + [25.8818359375, -24.78798828125001], + [25.852441406250023, -24.93525390625001], + [25.769921875000023, -25.146484375], + [25.70263671875, -25.30234375], + [25.6591796875, -25.437890625], + [25.583789062500017, -25.60625], + [25.518164062500006, -25.66279296875001], + [25.443652343750017, -25.714453125], + [25.34619140625, -25.73994140625001], + [25.21337890625, -25.75625], + [25.09248046875001, -25.75146484375], + [24.998925781250023, -25.754003906250006], + [24.869238281250006, -25.8134765625], + [24.748144531250006, -25.8173828125], + [24.55585937500001, -25.78310546875001], + [24.400195312500017, -25.749804687500003], + [24.33056640625, -25.74287109375001], + [24.19296875, -25.632910156250006], + [24.1044921875, -25.634863281250006], + [23.969531250000017, -25.626074218750006], + [23.89375, -25.600878906250003], + [23.82343750000001, -25.54462890625001], + [23.670703125000017, -25.433984375], + [23.521484375, -25.34443359375001], + [23.389257812500006, -25.29140625], + [23.266015625000023, -25.2666015625], + [23.148730468750017, -25.288671875], + [23.057519531250023, -25.312304687500003], + [23.022070312500006, -25.32412109375001], + [22.951269531250006, -25.37031250000001], + [22.878808593750023, -25.45791015625001], + [22.818945312500006, -25.59511718750001], + [22.79609375000001, -25.67910156250001], + [22.72900390625, -25.85732421875001], + [22.640234375, -26.07119140625001], + [22.59765625, -26.13271484375001], + [22.548632812500017, -26.17841796875001], + [22.47089843750001, -26.219042968750003], + [22.217578125000017, -26.38886718750001], + [22.090917968750006, -26.580175781250006], + [22.01093750000001, -26.635839843750006], + [21.91455078125, -26.661914062500003], + [21.83320312500001, -26.678320312500006], + [21.78828125000001, -26.710058593750006], + [21.738085937500017, -26.80683593750001], + [21.694726562500023, -26.840917968750006], + [21.646289062500017, -26.85419921875001], + [21.501367187500023, -26.84267578125001], + [21.454980468750023, -26.8328125], + [21.07099609375001, -26.85175781250001], + [20.953906250000017, -26.82109375], + [20.870898437500017, -26.80878906250001], + [20.73984375, -26.84882812500001], + [20.68505859375, -26.82246093750001], + [20.641406250000017, -26.7421875], + [20.619921875000017, -26.580859375], + [20.626757812500017, -26.44384765625], + [20.697851562500006, -26.340136718750003], + [20.75703125000001, -26.26416015625], + [20.815039062500006, -26.16494140625001], + [20.822656250000023, -26.12060546875], + [20.81103515625, -26.08056640625], + [20.799414062500006, -25.9990234375], + [20.79316406250001, -25.915625], + [20.710742187500017, -25.733203125], + [20.609277343750023, -25.4912109375], + [20.47314453125, -25.221289062500006], + [20.4306640625, -25.147070312500006], + [20.34521484375, -25.029882812500006], + [20.028613281250017, -24.80703125], + [19.98046875, -24.77675781250001], + [19.98046875, -24.751953125], + [19.98017578125001, -24.535742187500006], + [19.979882812500023, -24.2490234375], + [19.979589843750006, -23.96240234375], + [19.979296875000017, -23.67578125], + [19.978906250000023, -23.38916015625], + [19.978515625, -23.1025390625], + [19.97822265625001, -22.81591796875], + [19.977929687500023, -22.529296875], + [19.977636718750006, -22.242578125], + [19.977343750000017, -22.00019531250001], + [20.205371093750017, -22.00019531250001], + [20.4875, -22.00019531250001], + [20.82275390625, -22.00019531250001], + [20.970996093750017, -22.00019531250001], + [20.9794921875, -21.9619140625], + [20.979296875000017, -21.78408203125001], + [20.97871093750001, -21.376074218750006], + [20.978125, -20.96816406250001], + [20.977441406250023, -20.56025390625001], + [20.976855468750017, -20.15234375], + [20.976171875, -19.74433593750001], + [20.9755859375, -19.33642578125], + [20.975, -18.928515625], + [20.97431640625001, -18.5205078125], + [20.97412109375, -18.31884765625], + [21.232519531250006, -18.30683593750001], + [21.529687500000023, -18.265625], + [22.01142578125001, -18.19863281250001], + [22.460058593750006, -18.11572265625], + [22.752734375000017, -18.0671875], + [23.099902343750017, -18.009570312500003], + [23.219335937500006, -17.99970703125001], + [23.2515625, -18.00751953125001], + [23.298632812500017, -18.02734375], + [23.459765625000017, -18.231054687500006], + [23.56015625, -18.38642578125001], + [23.58056640625, -18.452929687500003], + [23.599707031250006, -18.4599609375], + [23.64716796875001, -18.44941406250001], + [23.700488281250017, -18.42431640625], + [23.8642578125, -18.26953125], + [23.898339843750023, -18.22919921875001], + [24.00263671875001, -18.154101562500003], + [24.129296875000023, -18.07753906250001], + [24.243945312500017, -18.0234375], + [24.358984375, -17.97822265625001], + [24.412207031250006, -17.98945312500001], + [24.474902343750017, -18.02851562500001], + [24.530566406250017, -18.052734375], + [24.79218750000001, -17.86464843750001], + [24.909082031250023, -17.821386718750006], + [25.21601562500001, -17.78759765625], + [25.2587890625, -17.793554687500006] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Central African Rep.", + "iso_a2": "CF", + "iso_a3": "CAF", + "iso_n3": "140", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [22.86005859375001, 10.919677734375], + [22.930761718750006, 10.7953125], + [22.96435546875, 10.751806640624991], + [23.255859375, 10.457812499999989], + [23.312304687500017, 10.387939453125], + [23.456640625, 10.174267578124997], + [23.545019531250006, 10.030078124999989], + [23.646289062500017, 9.822900390624994], + [23.65625, 9.710351562499994], + [23.64277343750001, 9.613916015624994], + [23.62265625, 9.34062], + [23.596093750000023, 9.261914062499997], + [23.46826171875, 9.11474609375], + [23.462792968750023, 9.048486328124994], + [23.489062500000017, 8.993310546874994], + [23.52802734375001, 8.970605468749994], + [23.551855468750006, 8.943212890624991], + [23.53730468750001, 8.815820312499994], + [23.58320312500001, 8.765820312499997], + [23.679296875, 8.732470703124989], + [23.921972656250006, 8.709716796875], + [24.048144531250017, 8.691308593749994], + [24.147363281250023, 8.665625], + [24.19482421875, 8.653369140624989], + [24.22089843750001, 8.608251953124991], + [24.179980468750017, 8.461132812499997], + [24.208398437500023, 8.369140625], + [24.291406250000023, 8.29140625], + [24.37548828125, 8.258447265624994], + [24.4560546875, 8.239453125], + [24.736718750000023, 8.191552734374994], + [24.853320312500017, 8.137548828124991], + [25.007226562500023, 7.96484375], + [25.20039062500001, 7.807910156249989], + [25.247363281250017, 7.724560546874997], + [25.238671875000023, 7.648974609374989], + [25.18134765625001, 7.557226562499991], + [25.19013671875001, 7.519335937499989], + [25.27890625, 7.427490234375], + [25.380664062500017, 7.333398437499994], + [25.56660156250001, 7.228710937499997], + [25.888964843750017, 7.06494140625], + [26.036523437500023, 6.955224609374994], + [26.0869140625, 6.872119140624989], + [26.169335937500023, 6.78173828125], + [26.284570312500023, 6.699023437499989], + [26.36181640625, 6.635302734374989], + [26.30859375, 6.455322265625], + [26.324609375000023, 6.396240234375], + [26.353320312500017, 6.344921875], + [26.420507812500006, 6.274169921875], + [26.44746093750001, 6.183007812499994], + [26.514257812500006, 6.069238281249994], + [26.593652343750023, 6.017529296874997], + [26.726367187500017, 5.998242187499997], + [26.796484375, 5.945507812499997], + [26.942285156250023, 5.854931640624997], + [27.083398437500023, 5.77685546875], + [27.143945312500023, 5.722949218749989], + [27.18125, 5.675146484374991], + [27.21337890625, 5.618798828124994], + [27.229101562500006, 5.5625], + [27.232519531250006, 5.440771484374991], + [27.256738281250023, 5.289648437499991], + [27.332421875000023, 5.186328124999989], + [27.4033203125, 5.109179687499989], + [27.11494140625001, 5.197851562499991], + [27.071875, 5.199755859374989], + [27.020605468750006, 5.18437], + [26.8701171875, 5.07568359375], + [26.822070312500017, 5.062402343749994], + [26.767578125, 5.071923828124994], + [26.632617187500017, 5.085205078125], + [26.17353515625001, 5.171142578125], + [25.819921875, 5.253710937499989], + [25.7138671875, 5.28369140625], + [25.52509765625001, 5.312109375], + [25.400195312500017, 5.255908203124989], + [25.283105468750023, 5.062695312499997], + [25.249316406250017, 5.024560546874994], + [25.065234375000017, 4.967431640624994], + [24.978417968750023, 4.982958984374989], + [24.765527343750023, 4.930078125], + [24.437109375, 5.009960937499997], + [24.31982421875, 4.994140625], + [24.22773437500001, 4.953857421875], + [23.99169921875, 4.866259765624989], + [23.848437500000017, 4.816357421874997], + [23.68183593750001, 4.770800781249989], + [23.52363281250001, 4.701269531249991], + [23.41718750000001, 4.663134765624989], + [23.312890625000023, 4.663525390624997], + [23.218847656250006, 4.702978515624991], + [23.11591796875001, 4.736914062499991], + [22.99287109375001, 4.743847656249997], + [22.864550781250017, 4.723876953125], + [22.755761718750023, 4.646679687499997], + [22.711718750000017, 4.591748046874997], + [22.6171875, 4.445556640625], + [22.505664062500017, 4.207666015624994], + [22.461816406250023, 4.159765625], + [22.44970703125, 4.155126953124991], + [22.422167968750017, 4.134960937499997], + [21.908203125, 4.25390625], + [21.68701171875, 4.281396484374994], + [21.53759765625, 4.244824218749997], + [21.350195312500006, 4.311376953124991], + [21.268359375000017, 4.323095703124991], + [21.229785156250017, 4.302197265624997], + [21.125585937500006, 4.332177734374994], + [20.95576171875001, 4.413134765624989], + [20.79296875, 4.447314453124989], + [20.6474609375, 4.435644531249991], + [20.55810546875, 4.462695312499989], + [20.48652343750001, 4.541552734374989], + [20.3935546875, 4.686181640624994], + [20.226367187500017, 4.829638671874989], + [20.002343750000023, 4.944726562499994], + [19.8625, 5.031298828124989], + [19.806542968750023, 5.089306640624997], + [19.68603515625, 5.121386718749989], + [19.5009765625, 5.127490234374989], + [19.32343750000001, 5.070751953124997], + [19.06855468750001, 4.891406249999989], + [18.83173828125001, 4.5234375], + [18.69990234375001, 4.382617187499989], + [18.594140625000023, 4.346240234374989], + [18.567480468750006, 4.257568359375], + [18.619921875000017, 4.116601562499994], + [18.633691406250023, 3.954296875], + [18.5966796875, 3.6787109375], + [18.6103515625, 3.478417968749994], + [18.553808593750006, 3.510205078124997], + [18.499804687500017, 3.604101562499991], + [18.474414062500017, 3.622998046874997], + [18.318164062500017, 3.580810546875], + [18.237109375000017, 3.542675781249997], + [18.193945312500006, 3.505419921874989], + [18.160937500000017, 3.499804687499989], + [18.111328125, 3.551074218749989], + [18.072265625, 3.560302734375], + [18.0107421875, 3.550830078124989], + [17.94794921875001, 3.5517578125], + [17.907128906250023, 3.558398437499989], + [17.88037109375, 3.553857421874994], + [17.806640625, 3.584179687499997], + [17.537695312500006, 3.66162109375], + [17.491601562500023, 3.687304687499989], + [17.43798828125, 3.684619140624989], + [17.2984375, 3.6171875], + [17.224707031250006, 3.598437499999989], + [17.002539062500006, 3.556689453124989], + [16.76435546875001, 3.536279296874994], + [16.67333984375, 3.535205078124989], + [16.610742187500023, 3.50537109375], + [16.570410156250006, 3.463085937499997], + [16.543066406250006, 3.36953125], + [16.49628906250001, 3.208837890624991], + [16.47675781250001, 3.165136718749991], + [16.480078125, 3.100976562499994], + [16.466210937500023, 2.993212890624989], + [16.459570312500006, 2.896533203124989], + [16.468554687500017, 2.831738281249997], + [16.401269531250023, 2.701025390624991], + [16.319628906250017, 2.542773437499989], + [16.251757812500017, 2.406787109374989], + [16.183398437500017, 2.270068359374989], + [16.136132812500023, 2.36376953125], + [16.106738281250017, 2.473486328124991], + [16.095507812500017, 2.59921875], + [16.101855468750017, 2.632666015624991], + [16.08349609375, 2.670019531249991], + [16.082128906250006, 2.678173828124997], + [16.05927734375001, 2.772998046874989], + [16.082421875000023, 2.839111328125], + [16.0634765625, 2.90859375], + [16.008203125000023, 2.976660156249991], + [15.9580078125, 3.028710937499994], + [15.9287109375, 3.07578125], + [15.904882812500006, 3.095849609374994], + [15.849316406250011, 3.103076171874989], + [15.775, 3.127197265625], + [15.676562500000017, 3.2296875], + [15.580859375000017, 3.329296875], + [15.458398437500023, 3.456835937499989], + [15.360156250000017, 3.567138671875], + [15.23984375, 3.7021484375], + [15.128710937500017, 3.826904296875], + [15.062109375, 3.947216796874997], + [15.034863281250011, 4.016357421875], + [15.0673828125, 4.02294921875], + [15.115429687500011, 4.024462890624989], + [15.135839843750006, 4.036914062499989], + [15.136914062500011, 4.069140624999989], + [15.0875, 4.163964843749994], + [15.063574218750006, 4.284863281249997], + [15.022753906250017, 4.358544921874994], + [14.8935546875, 4.471875], + [14.770410156250023, 4.55810546875], + [14.73125, 4.602392578124991], + [14.708984375, 4.665576171874989], + [14.66171875, 5.065527343749991], + [14.640625, 5.179052734374991], + [14.601757812500011, 5.228808593749989], + [14.573535156250017, 5.251708984375], + [14.56298828125, 5.279931640624994], + [14.568066406250011, 5.35107421875], + [14.584375, 5.414746093749997], + [14.58359375, 5.439648437499997], + [14.616894531250011, 5.495507812499994], + [14.616894531250011, 5.865136718749994], + [14.598828125000011, 5.883984375], + [14.577246093750006, 5.916015625], + [14.54248046875, 5.91357421875], + [14.503125, 5.916894531249994], + [14.4638671875, 5.970703125], + [14.43115234375, 6.038720703124994], + [14.440722656250017, 6.086718749999989], + [14.475, 6.126806640624991], + [14.512109375000023, 6.161914062499989], + [14.559375, 6.191210937499989], + [14.699511718750017, 6.250244140625], + [14.7392578125, 6.27978515625], + [14.764062500000023, 6.316357421874997], + [14.780371093750006, 6.36572265625], + [14.861914062500006, 6.555712890624989], + [14.982714843750017, 6.7453125], + [15.034570312500023, 6.784423828125], + [15.086328125000023, 6.909912109375], + [15.157128906250023, 7.063574218749991], + [15.185839843750017, 7.134912109374994], + [15.206738281250011, 7.206152343749991], + [15.245898437500017, 7.263574218749994], + [15.379101562500011, 7.358154296875], + [15.480078125, 7.523779296874991], + [15.589257812500023, 7.515039062499994], + [15.701269531250006, 7.488427734374994], + [15.845019531250017, 7.475292968749997], + [15.957617187500006, 7.507568359375], + [16.030664062500023, 7.572119140624991], + [16.19111328125001, 7.6234375], + [16.37890625, 7.683544921874997], + [16.404394531250006, 7.772363281249994], + [16.459375, 7.818994140624994], + [16.523242187500017, 7.859960937499991], + [16.545312500000023, 7.865478515625], + [16.550195312500023, 7.835888671874997], + [16.588964843750006, 7.743359375], + [16.668359375000023, 7.651757812499994], + [16.784765625, 7.550976562499997], + [16.818164062500017, 7.557324218749997], + [16.89033203125001, 7.633691406249994], + [17.07197265625001, 7.680810546874994], + [17.117968750000017, 7.701904296875], + [17.246972656250023, 7.81298828125], + [17.402148437500017, 7.884570312499989], + [17.436425781250023, 7.890917968749989], + [17.49267578125, 7.909814453124994], + [17.6494140625, 7.98359375], + [17.760839843750006, 7.973828125], + [17.94013671875001, 7.985449218749991], + [18.238867187500006, 8.020361328124991], + [18.455078125, 8.032031249999989], + [18.56416015625001, 8.0458984375], + [18.591601562500017, 8.060791015625], + [18.633593750000017, 8.167724609375], + [18.66621093750001, 8.197705078124997], + [18.747460937500023, 8.243798828124994], + [18.90644531250001, 8.405078124999989], + [19.010839843750006, 8.541210937499997], + [19.039843750000017, 8.5869140625], + [19.042382812500023, 8.590283203124997], + [19.063867187500023, 8.598828125], + [19.108691406250017, 8.656152343749994], + [19.06416015625001, 8.715429687499991], + [18.886035156250017, 8.836035156249991], + [18.888574218750023, 8.852490234374997], + [18.878320312500023, 8.873193359374994], + [18.88828125, 8.889746093749991], + [18.95625, 8.938867187499994], + [19.0478515625, 8.995019531249994], + [19.1455078125, 9.015966796874991], + [19.400292968750023, 9.011621093749994], + [19.617480468750017, 9.023583984374994], + [19.668359375000023, 9.020898437499994], + [19.837695312500017, 9.049365234374989], + [19.953515625000023, 9.075146484374997], + [20.072656250000023, 9.133203125], + [20.342089843750017, 9.127099609374994], + [20.56689453125, 9.274951171874989], + [20.631445312500006, 9.301367187499991], + [20.65966796875, 9.324511718749989], + [20.66816406250001, 9.347119140624997], + [20.773242187500017, 9.405664062499994], + [20.891015625000023, 9.527148437499989], + [20.984179687500017, 9.636279296874989], + [21.00947265625001, 9.713232421874991], + [21.26386718750001, 9.974609375], + [21.352441406250023, 9.969140625], + [21.39599609375, 10.001367187499994], + [21.496875, 10.175683593749994], + [21.52802734375001, 10.207812499999989], + [21.57578125, 10.218554687499989], + [21.632714843750023, 10.23828125], + [21.682714843750006, 10.289843749999989], + [21.72578125000001, 10.366552734374991], + [21.726171875, 10.461621093749997], + [21.70654296875, 10.537890624999989], + [21.70654296875, 10.574804687499991], + [21.73066406250001, 10.608691406249989], + [21.771484375, 10.642822265625], + [21.96484375, 10.736669921874991], + [22.013769531250006, 10.782031249999989], + [22.04316406250001, 10.822705078124997], + [22.09716796875, 10.830078125], + [22.15625, 10.826074218749994], + [22.193652343750017, 10.851367187499989], + [22.2359375, 10.894140625], + [22.36982421875001, 10.951513671874991], + [22.49384765625001, 10.996240234374994], + [22.6240234375, 10.977343749999989], + [22.73017578125001, 10.954052734374997], + [22.8173828125, 10.927197265624997], + [22.86005859375001, 10.919677734375] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Canada", + "iso_a2": "CA", + "iso_a3": "CAN", + "iso_n3": "124", + "continent": "North America" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-59.78759765624997, 43.939599609374994], + [-59.922265624999966, 43.90390625], + [-60.037744140624966, 43.90664062500002], + [-60.1142578125, 43.939111328124994], + [-60.11748046874996, 43.95336914062506], + [-59.93603515625003, 43.939599609374994], + [-59.86635742187494, 43.94716796875002], + [-59.727148437500006, 44.002832031249994], + [-59.78759765624997, 43.939599609374994] + ] + ], + [ + [ + [-66.27377929687495, 44.29228515624999], + [-66.32412109375, 44.25732421874997], + [-66.3119140625, 44.291601562500034], + [-66.25048828125, 44.37900390624998], + [-66.2103515625, 44.39204101562498], + [-66.27377929687495, 44.29228515624999] + ] + ], + [ + [ + [-66.7625, 44.68178710937502], + [-66.8970703125, 44.62890625], + [-66.8447265625, 44.76391601562497], + [-66.80214843749994, 44.80537109374998], + [-66.74541015624993, 44.79140625], + [-66.75336914062495, 44.70981445312506], + [-66.7625, 44.68178710937502] + ] + ], + [ + [ + [-60.961572265624966, 45.48994140625001], + [-61.002880859374926, 45.48173828125002], + [-61.0125, 45.49604492187501], + [-61.07617187499994, 45.53730468749998], + [-61.081738281249926, 45.55781249999998], + [-61.025976562500034, 45.577343749999955], + [-60.91245117187498, 45.56728515625005], + [-60.953027343749994, 45.515527343749994], + [-60.961572265624966, 45.48994140625001] + ] + ], + [ + [ + [-73.69531249999997, 45.58549804687502], + [-73.81591796875003, 45.56489257812501], + [-73.85771484375002, 45.573583984375006], + [-73.72465820312499, 45.67182617187504], + [-73.57236328124998, 45.69448242187502], + [-73.69531249999997, 45.58549804687502] + ] + ], + [ + [ + [-73.56650390625003, 45.469091796875034], + [-73.6435546875, 45.44912109375005], + [-73.77534179687493, 45.467626953125006], + [-73.92021484374996, 45.44194335937499], + [-73.960546875, 45.44140624999997], + [-73.85292968750002, 45.515722656250034], + [-73.68745117187498, 45.561425781249994], + [-73.52246093750003, 45.70117187500006], + [-73.47607421874997, 45.704736328124994], + [-73.53886718749999, 45.54643554687496], + [-73.55166015625002, 45.48984374999998], + [-73.56650390625003, 45.469091796875034] + ] + ], + [ + [ + [-71.02573242187503, 46.87294921875002], + [-71.11665039062498, 46.86484374999998], + [-71.094970703125, 46.89956054687505], + [-70.97084960937494, 46.96142578125003], + [-70.87963867187503, 46.99609375], + [-70.82578124999998, 46.99536132812503], + [-70.9134765625, 46.919531250000034], + [-71.02573242187503, 46.87294921875002] + ] + ], + [ + [ + [-61.10517578124998, 45.94472656250002], + [-61.07133789062493, 45.93710937499998], + [-60.93657226562502, 45.98554687499998], + [-60.86523437499997, 45.983496093750006], + [-60.868408203125, 45.94863281250002], + [-60.984277343749966, 45.91069335937502], + [-61.03754882812498, 45.882226562499994], + [-60.97060546875002, 45.855810546875034], + [-60.971533203125034, 45.837988281250034], + [-61.05195312499998, 45.79501953124998], + [-61.09208984374999, 45.748388671875006], + [-61.05903320312501, 45.70336914062497], + [-60.93037109375001, 45.74770507812502], + [-60.877587890624994, 45.74809570312502], + [-60.80610351562498, 45.73808593750002], + [-60.73789062499995, 45.75141601562498], + [-60.69907226562495, 45.77333984375002], + [-60.472363281249955, 45.94653320312503], + [-60.46059570312494, 45.96870117187501], + [-60.70488281249999, 45.93291015625002], + [-60.733300781249994, 45.956591796875045], + [-60.57319335937498, 46.061425781249994], + [-60.58574218749996, 46.116650390624955], + [-60.50493164062502, 46.20385742187497], + [-60.430859374999926, 46.25561523437503], + [-60.37651367187496, 46.284570312499994], + [-60.297949218750034, 46.31123046874998], + [-60.243847656249926, 46.27011718750006], + [-60.22646484374994, 46.19555664062506], + [-60.09248046875001, 46.206005859374955], + [-59.96142578124994, 46.19096679687502], + [-59.86503906249993, 46.159521484375006], + [-59.85, 46.141406250000045], + [-59.848779296874994, 46.11293945312502], + [-59.88090820312499, 46.061621093750034], + [-59.934033203124955, 46.019433593749966], + [-59.828027343749966, 45.96513671875002], + [-59.8421875, 45.941552734374994], + [-60.015820312499926, 45.88046874999998], + [-60.114453124999955, 45.81889648437496], + [-60.20507812500003, 45.74301757812506], + [-60.38608398437495, 45.65463867187498], + [-60.67294921874995, 45.59082031250006], + [-60.76372070312499, 45.59082031250006], + [-60.87158203125, 45.610693359375006], + [-60.97861328124998, 45.60615234374998], + [-61.08369140624998, 45.582373046875006], + [-61.18642578124994, 45.58500976562502], + [-61.23632812499997, 45.57250976562506], + [-61.28369140624994, 45.573876953124966], + [-61.323437499999955, 45.598486328125006], + [-61.40834960937494, 45.669091796874994], + [-61.44980468749995, 45.71621093750002], + [-61.49531249999998, 45.94145507812499], + [-61.48061523437502, 46.05976562500001], + [-61.40864257812501, 46.17036132812498], + [-61.30219726562498, 46.24384765625004], + [-61.24052734374996, 46.30253906249999], + [-60.98251953124998, 46.650488281250006], + [-60.93198242187498, 46.72944335937501], + [-60.87016601562499, 46.796777343749966], + [-60.75966796874994, 46.863378906250034], + [-60.616650390624955, 46.97578125000001], + [-60.57104492187497, 46.99882812500002], + [-60.48906249999999, 47.00971679687501], + [-60.40820312500003, 47.00351562499998], + [-60.431347656249955, 46.96293945312499], + [-60.425439453124994, 46.92319335937506], + [-60.33173828124998, 46.76782226562503], + [-60.332910156249966, 46.737011718749955], + [-60.38408203124999, 46.61333007812499], + [-60.48242187499994, 46.413525390624955], + [-60.507714843749966, 46.303369140624994], + [-60.49453125000002, 46.270263671875], + [-60.53442382812497, 46.21455078125001], + [-60.57685546875001, 46.17216796874999], + [-60.744824218749955, 46.092675781249966], + [-60.83056640625, 46.074121093749994], + [-60.912207031250034, 46.04458007812502], + [-61.10517578124998, 45.94472656250002] + ] + ], + [ + [ + [-63.811279296875, 46.46870117187501], + [-63.78422851562502, 46.45463867187499], + [-63.73701171874998, 46.48051757812502], + [-63.68144531249993, 46.561914062499994], + [-63.53437, 46.540625], + [-63.456494140624926, 46.50390625], + [-63.41313476562499, 46.512011718750045], + [-63.36865234374997, 46.50825195312498], + [-63.286083984374955, 46.46020507812497], + [-63.12939453125, 46.422216796875034], + [-62.964013671874966, 46.42773437500003], + [-62.71201171874998, 46.450292968750006], + [-62.68193359374996, 46.45942382812498], + [-62.423095703125, 46.478271484375], + [-62.16357421874997, 46.487207031249966], + [-62.07426757812499, 46.46572265625002], + [-62.040869140625006, 46.44570312500002], + [-62.02373046874999, 46.42158203125001], + [-62.171777343749966, 46.35537109375002], + [-62.31997070312494, 46.27832031250003], + [-62.52607421875001, 46.20288085937503], + [-62.55200195312497, 46.165917968749966], + [-62.53920898437502, 46.09794921874999], + [-62.54326171874996, 46.02866210937498], + [-62.50258789062502, 46.02294921874997], + [-62.47807617187502, 45.99970703125004], + [-62.531347656250034, 45.977294921875], + [-62.7431640625, 45.966894531250006], + [-62.80488281249998, 45.97319335937496], + [-62.878369140624926, 46.00136718750002], + [-62.90351562499998, 46.068261718749966], + [-62.99462890625, 46.058447265625006], + [-63.02207031249998, 46.06660156249998], + [-62.89453125000003, 46.12358398437496], + [-62.95263671874997, 46.19516601562498], + [-63.015039062499966, 46.18994140624997], + [-63.056347656249955, 46.22392578124996], + [-63.052929687499955, 46.26982421874999], + [-62.9951171875, 46.29213867187502], + [-62.97846679687498, 46.31635742187498], + [-63.05688476562497, 46.295361328124955], + [-63.11699218749996, 46.252832031249994], + [-63.194726562499994, 46.23671875], + [-63.27080078124993, 46.2], + [-63.15278320312498, 46.188330078125006], + [-63.21347656249998, 46.15986328124998], + [-63.27661132812497, 46.153271484374955], + [-63.56889648437502, 46.209228515625], + [-63.641015624999966, 46.23046874999997], + [-63.73178710937498, 46.2890625], + [-63.80053710937494, 46.367333984374966], + [-63.76323242187499, 46.37036132812506], + [-63.75053710937499, 46.38437], + [-63.758642578125034, 46.397607421874994], + [-63.86054687500001, 46.40815429687501], + [-64.01972656249993, 46.40483398437496], + [-64.11083984375003, 46.425439453124994], + [-64.10654296875003, 46.562109375000034], + [-64.13603515624999, 46.59970703125006], + [-64.23564453124996, 46.631445312500034], + [-64.388037109375, 46.640869140625], + [-64.403125, 46.69160156250004], + [-64.35458984375003, 46.769238281249955], + [-64.27998046874993, 46.83574218750002], + [-64.2232421875, 46.90126953125002], + [-64.15693359374998, 46.95488281250002], + [-63.99355468750002, 47.06157226562502], + [-63.99726562499998, 46.98173828124999], + [-63.98149414062496, 46.91298828125002], + [-64.08789062499997, 46.77543945312499], + [-63.903027343749955, 46.63911132812501], + [-63.87929687500002, 46.608984375], + [-63.863720703124955, 46.572363281250006], + [-63.875634765624966, 46.53867187500006], + [-63.90556640624993, 46.5087890625], + [-63.833593750000034, 46.493896484375], + [-63.811279296875, 46.46870117187501] + ] + ], + [ + [ + [-61.91411132812496, 47.284521484375034], + [-61.87871093749993, 47.265527343749994], + [-61.81547851562502, 47.26757812500006], + [-61.77255859374998, 47.25981445312499], + [-61.833740234375, 47.22260742187504], + [-61.950830078124966, 47.218994140625], + [-62.00830078124994, 47.23427734375002], + [-61.924707031249966, 47.425146484375006], + [-61.82729492187494, 47.46909179687498], + [-61.627832031249994, 47.593847656250006], + [-61.54804687499998, 47.63178710937501], + [-61.47407226562501, 47.646777343750045], + [-61.3955078125, 47.63764648437504], + [-61.475537109374955, 47.56396484375003], + [-61.582226562499926, 47.56000976562504], + [-61.68408203124997, 47.49873046874998], + [-61.750878906249994, 47.430810546874994], + [-61.83125, 47.39204101562501], + [-61.88662109374994, 47.34462890625002], + [-61.91411132812496, 47.284521484375034] + ] + ], + [ + [ + [-54.227148437500034, 47.44135742187501], + [-54.27607421874998, 47.40654296875002], + [-54.32597656250002, 47.408105468749994], + [-54.32011718749996, 47.43852539062496], + [-54.258691406249994, 47.497656250000034], + [-54.227392578125006, 47.53999023437504], + [-54.226269531249955, 47.565527343750006], + [-54.214941406250034, 47.585107421874994], + [-54.168359374999966, 47.60708007812502], + [-54.12817382812494, 47.646826171875034], + [-54.14755859374998, 47.573095703125034], + [-54.227148437500034, 47.44135742187501] + ] + ], + [ + [ + [-64.50859375, 47.88671874999997], + [-64.53388671874995, 47.813769531250045], + [-64.62128906250001, 47.751904296874955], + [-64.66464843749995, 47.74760742187496], + [-64.68457031250003, 47.75361328125004], + [-64.660498046875, 47.793554687500006], + [-64.66328124999995, 47.86303710937503], + [-64.59111328124999, 47.872460937499994], + [-64.56484374999997, 47.86625976562499], + [-64.50859375, 47.88671874999997] + ] + ], + [ + [ + [-64.47607421875, 47.95888671875002], + [-64.59130859375003, 47.90722656249997], + [-64.54072265624993, 47.984960937500006], + [-64.51958007812499, 48.00507812500001], + [-64.50019531249993, 48.013769531250006], + [-64.48125, 48.006933593750034], + [-64.47607421875, 47.95888671875002] + ] + ], + [ + [ + [-123.43540039062496, 48.75444335937502], + [-123.47724609374995, 48.72875976562503], + [-123.49960937499998, 48.732177734375], + [-123.517529296875, 48.75014648437502], + [-123.58232421874996, 48.92578125], + [-123.55468750000001, 48.922070312499955], + [-123.46787109375, 48.86738281250001], + [-123.48754882812501, 48.84570312500003], + [-123.42275390624995, 48.79335937500002], + [-123.40678710937499, 48.75605468749998], + [-123.43540039062496, 48.75444335937502] + ] + ], + [ + [ + [-123.37236328124999, 48.88613281250002], + [-123.38481445312496, 48.87519531250001], + [-123.54101562499999, 48.94594726562502], + [-123.64560546874998, 49.03862304687499], + [-123.68925781249999, 49.09511718750005], + [-123.48232421875001, 48.954687500000034], + [-123.37792968749997, 48.90825195312499], + [-123.37236328124999, 48.88613281250002] + ] + ], + [ + [ + [-74.70888671874997, 45.0038574218751], + [-74.56630859374997, 45.04160156249998], + [-74.26904296874997, 45.18828125000002], + [-74.04980468749997, 45.24140625000001], + [-73.76464843749997, 45.39545898437504], + [-73.55810546875, 45.425097656250045], + [-73.51879882812497, 45.458984375], + [-73.48417968749996, 45.586767578125006], + [-73.46528320312501, 45.63232421874997], + [-73.36884765624998, 45.75781250000006], + [-73.25302734375, 45.86367187500002], + [-73.1595703125, 46.01005859375002], + [-72.98994140624998, 46.10361328124998], + [-72.73344726562496, 46.18183593750001], + [-72.49619140625, 46.352685546874994], + [-72.36616210937498, 46.40478515625006], + [-72.24013671875, 46.44208984375001], + [-72.18720703124995, 46.511523437500045], + [-72.10927734374997, 46.55122070312504], + [-71.90092773437499, 46.63193359375006], + [-71.6712890625, 46.653759765624955], + [-71.43920898437497, 46.72075195312502], + [-71.26118164062495, 46.75625], + [-71.152001953125, 46.819091796875], + [-70.99326171874998, 46.852197265624994], + [-70.51948242187501, 47.032519531250045], + [-70.38808593749997, 47.116943359375], + [-70.2177734375, 47.28984375], + [-70.069580078125, 47.377783203125034], + [-70.01713867187499, 47.47143554687503], + [-69.80224609375, 47.6234375], + [-69.58105468749997, 47.82368164062501], + [-69.47104492187503, 47.96728515625006], + [-69.30634765624995, 48.04702148437505], + [-68.987060546875, 48.275], + [-68.815673828125, 48.36601562500002], + [-68.74604492187493, 48.37641601562501], + [-68.55200195312503, 48.45732421874996], + [-68.43149414062498, 48.54169921875001], + [-68.23818359374994, 48.62641601562504], + [-67.88901367187495, 48.73090820312501], + [-67.56088867187498, 48.85595703125], + [-67.11748046874999, 48.96416015625002], + [-66.59809570312495, 49.12636718750002], + [-66.17817382812493, 49.21313476562503], + [-65.88281249999997, 49.225683593750006], + [-65.52338867187493, 49.26616210937499], + [-65.39614257812494, 49.262060546875034], + [-64.83632812499994, 49.191748046875006], + [-64.567724609375, 49.10478515624996], + [-64.26181640624995, 48.921875], + [-64.2162109375, 48.873632812500034], + [-64.20878906249999, 48.80620117187499], + [-64.37075195312494, 48.838964843750006], + [-64.51372070312493, 48.84111328124999], + [-64.41455078125, 48.803613281249994], + [-64.24609374999994, 48.69111328124998], + [-64.253759765625, 48.550390625], + [-64.34882812500001, 48.423193359375034], + [-64.63315429687503, 48.36049804687505], + [-64.70576171874998, 48.31059570312499], + [-64.76450195312495, 48.22807617187499], + [-64.82207031249996, 48.19648437500001], + [-64.95991210937498, 48.15986328125001], + [-65.03608398437495, 48.10625], + [-65.259423828125, 48.02124023437503], + [-65.36000976562497, 48.01113281250002], + [-65.47587890624993, 48.03149414062497], + [-65.75468749999999, 48.11166992187498], + [-65.92670898437495, 48.188867187499994], + [-66.01254882812503, 48.14667968750001], + [-66.08310546875, 48.10268554687502], + [-66.24863281249998, 48.117333984374966], + [-66.32426757812493, 48.097900390625], + [-66.44897460937503, 48.11962890625], + [-66.70439453125002, 48.0224609375], + [-66.63154296875001, 48.011083984375006], + [-66.42880859375, 48.06694335937502], + [-66.35961914062494, 48.06064453125006], + [-66.21020507812497, 47.988574218750045], + [-65.84941406250002, 47.91103515625005], + [-65.755712890625, 47.859765625], + [-65.66645507812495, 47.69614257812506], + [-65.60722656249996, 47.67001953125006], + [-65.48349609374998, 47.68701171874997], + [-65.34394531249998, 47.767919921875034], + [-65.22817382812502, 47.81127929687497], + [-65.00166015624995, 47.84682617187502], + [-65.04638671875, 47.79301757812499], + [-64.87397460937498, 47.797216796875034], + [-64.70322265625, 47.72485351562503], + [-64.76630859374998, 47.673486328124966], + [-64.85214843749998, 47.56987304687499], + [-64.91220703125003, 47.36865234375003], + [-65.08613281249993, 47.233789062499994], + [-65.31889648437502, 47.101220703124994], + [-65.26020507812495, 47.069238281249966], + [-65.19208984374995, 47.04956054687506], + [-65.0423828125, 47.088818359374955], + [-64.94243164062496, 47.08618164062506], + [-64.831396484375, 47.06079101562503], + [-64.865869140625, 46.95781250000002], + [-64.90576171874997, 46.88793945312497], + [-64.88251953124993, 46.822851562500034], + [-64.81669921874993, 46.69868164062498], + [-64.72587890624999, 46.67143554687502], + [-64.68950195312496, 46.512304687500006], + [-64.641357421875, 46.42558593750002], + [-64.6478515625, 46.35595703125006], + [-64.55683593749993, 46.31142578125002], + [-64.54150390625, 46.240332031250034], + [-64.21181640625, 46.22021484375003], + [-64.14501953124997, 46.19287109375003], + [-63.91591796875002, 46.165820312500045], + [-63.87265624999998, 46.14619140625004], + [-63.831933593749966, 46.107177734375], + [-64.05639648437503, 46.021337890625006], + [-63.874707031249955, 45.95922851562506], + [-63.70288085937494, 45.858007812500034], + [-63.56767578124993, 45.8779296875], + [-63.509228515624926, 45.87470703124998], + [-63.358007812500034, 45.81127929687503], + [-63.31591796875, 45.779882812500006], + [-63.29277343749999, 45.751953125], + [-63.21689453124998, 45.757958984374994], + [-63.10791015624997, 45.78242187500001], + [-62.910791015624966, 45.7763671875], + [-62.70068359374997, 45.740576171875006], + [-62.718359375, 45.68598632812498], + [-62.750097656250006, 45.64824218750002], + [-62.58564453124998, 45.66069335937499], + [-62.483056640624966, 45.62182617187506], + [-62.44726562499994, 45.64052734375005], + [-62.421875, 45.66464843749998], + [-62.21772460937498, 45.730859374999966], + [-61.955517578124955, 45.86816406249997], + [-61.92358398437503, 45.85117187500006], + [-61.91162109374997, 45.79912109375002], + [-61.87724609374999, 45.714208984375034], + [-61.776513671874994, 45.655615234375006], + [-61.65688476562494, 45.642187500000034], + [-61.49228515624998, 45.68701171875], + [-61.427636718749966, 45.648291015625034], + [-61.350488281249966, 45.57368164062501], + [-61.277050781249926, 45.47602539062501], + [-61.28198242187494, 45.441064453124994], + [-61.37612304687494, 45.41059570312501], + [-61.46098632812502, 45.36669921875003], + [-61.10673828124996, 45.3486328125], + [-61.07080078125, 45.33017578125006], + [-61.03154296875002, 45.29174804687506], + [-61.06767578124999, 45.25283203125002], + [-61.10107421874997, 45.23344726562499], + [-61.16533203124999, 45.25610351562497], + [-61.28378906249998, 45.23549804687505], + [-61.38725585937499, 45.18505859374997], + [-61.49790039062498, 45.157031250000045], + [-61.56875, 45.15380859375], + [-61.64741210937498, 45.130517578124966], + [-61.71923828124994, 45.094482421875], + [-61.79389648437498, 45.08442382812498], + [-62.02680664062498, 44.99448242187506], + [-62.264990234375034, 44.936474609374955], + [-62.51401367187495, 44.843652343749966], + [-62.76806640625003, 44.78510742187504], + [-63.031835937500034, 44.71479492187501], + [-63.08920898437498, 44.70854492187499], + [-63.155712890624955, 44.71132812500002], + [-63.306298828124994, 44.64257812500003], + [-63.38081054687498, 44.65190429687499], + [-63.45683593750002, 44.639941406250045], + [-63.544335937499994, 44.65507812500002], + [-63.60400390624997, 44.68320312500006], + [-63.558251953124966, 44.610595703125], + [-63.544824218749994, 44.54375], + [-63.56767578124993, 44.51445312499996], + [-63.609765625, 44.47998046875006], + [-63.761132812499994, 44.486425781250034], + [-63.82065429687498, 44.510644531249994], + [-63.89130859374998, 44.54633789062498], + [-63.923681640625006, 44.60385742187506], + [-63.999707031249926, 44.644921875], + [-64.044921875, 44.587890625], + [-64.04462890624995, 44.54541015625006], + [-64.10087890624993, 44.487451171874966], + [-64.1669921875, 44.58666992187503], + [-64.28608398437493, 44.55034179687499], + [-64.33852539062497, 44.44487304687499], + [-64.31225585937503, 44.41474609374998], + [-64.27568359374993, 44.33408203124998], + [-64.33457031250003, 44.29199218750003], + [-64.37822265624996, 44.30356445312498], + [-64.46879882812493, 44.185156250000034], + [-64.57846679687498, 44.14204101562504], + [-64.69160156249995, 44.021337890625034], + [-64.82563476562498, 43.92934570312505], + [-64.86235351562499, 43.867871093749955], + [-65.08681640625, 43.727197265624994], + [-65.17207031249995, 43.73139648437504], + [-65.23491210937496, 43.72675781249998], + [-65.32958984374997, 43.66811523437502], + [-65.34428710937496, 43.549609375000045], + [-65.38608398437503, 43.565283203125034], + [-65.42851562499996, 43.56142578125005], + [-65.450439453125, 43.52421875000002], + [-65.48168945312497, 43.51806640625], + [-65.56445312499994, 43.55327148437499], + [-65.66191406249999, 43.53403320312498], + [-65.73813476562498, 43.56074218750001], + [-65.83530273437498, 43.734375], + [-65.88691406250001, 43.79521484374999], + [-65.97841796875, 43.81484375], + [-66.00214843749995, 43.778125], + [-66.03764648437499, 43.74218750000003], + [-66.125732421875, 43.813818359375034], + [-66.19252929687502, 44.079687500000034], + [-66.19306640624995, 44.143847656250045], + [-66.09956054687498, 44.367480468750045], + [-65.86801757812498, 44.56879882812501], + [-65.94194335937493, 44.57553710937506], + [-66.14638671875002, 44.43593750000005], + [-66.12529296874999, 44.4697265625], + [-66.09062, 44.50493164062499], + [-66.02167968749993, 44.56171875000001], + [-65.91704101562502, 44.615087890625034], + [-65.77768554687495, 44.64619140624998], + [-65.68183593749998, 44.65092773437496], + [-65.61577148437502, 44.68041992187503], + [-65.52001953124997, 44.732666015625], + [-65.50224609374999, 44.760400390624966], + [-65.58715820312497, 44.72851562500006], + [-65.72822265625001, 44.69711914062506], + [-65.69204101562502, 44.73828125], + [-65.65673828125, 44.760302734375045], + [-64.9029296875, 45.12080078125004], + [-64.75126953125002, 45.18022460937496], + [-64.44882812499995, 45.256054687499955], + [-64.40688476562502, 45.30571289062496], + [-64.44814453125, 45.33745117187502], + [-64.33076171874998, 45.30932617187497], + [-64.34042968749998, 45.26821289062505], + [-64.35883789062501, 45.23823242187498], + [-64.36572265625, 45.18725585937497], + [-64.35424804687497, 45.138232421875045], + [-64.235009765625, 45.114306640625045], + [-64.13549804687497, 45.023046875], + [-64.18271484375, 45.14702148437496], + [-64.09316406249997, 45.21708984375002], + [-63.74833984374999, 45.310888671875034], + [-63.46025390624999, 45.32109374999999], + [-63.368017578125034, 45.36479492187502], + [-63.614453124999955, 45.394140625000034], + [-63.906445312499955, 45.37817382812497], + [-64.087158203125, 45.41088867187497], + [-64.33642578124997, 45.389550781249994], + [-64.60019531249998, 45.410058593749994], + [-64.68110351562493, 45.382958984374966], + [-64.74667968749998, 45.32436523437502], + [-64.83193359375002, 45.350244140624966], + [-64.87314453124998, 45.35458984375006], + [-64.91289062499999, 45.37480468749999], + [-64.82739257812497, 45.47553710937501], + [-64.56005859374997, 45.62548828125], + [-64.39707031249998, 45.755859375], + [-64.35112304687493, 45.78320312499997], + [-64.31464843749998, 45.83569335937503], + [-64.40405273437497, 45.826904296875], + [-64.48222656250002, 45.80634765624998], + [-64.53632812499993, 45.866601562499994], + [-64.63271484375002, 45.94663085937506], + [-64.64204101562498, 45.91333007812503], + [-64.59365234374997, 45.81367187499998], + [-64.77851562499998, 45.63842773437497], + [-64.89790039062495, 45.6259765625], + [-65.05727539062502, 45.54423828124996], + [-65.28232421875003, 45.473095703124955], + [-65.54501953124998, 45.337304687499994], + [-65.88447265624995, 45.22290039062506], + [-65.95561523437496, 45.22246093749996], + [-66.10976562500002, 45.316601562499955], + [-66.06665039062494, 45.35947265624998], + [-66.02656249999995, 45.417578125], + [-66.06489257812495, 45.40083007812498], + [-66.08974609374994, 45.375634765624994], + [-66.18271484374998, 45.33520507812503], + [-66.10732421874997, 45.25693359375006], + [-66.14375, 45.22758789062502], + [-66.25156249999995, 45.18901367187499], + [-66.351953125, 45.133203125], + [-66.43984374999994, 45.09589843750001], + [-66.51093749999995, 45.14335937500002], + [-66.70717773437497, 45.083398437499966], + [-66.87246093749997, 45.067285156249966], + [-66.90820312499997, 45.09765625000003], + [-66.91870117187497, 45.145605468750034], + [-66.97656249999994, 45.15717773437498], + [-67.08408203125, 45.14394531250005], + [-67.12485351562498, 45.16943359375], + [-67.17099609374995, 45.18198242187498], + [-67.21323242187503, 45.192529296874994], + [-67.24960937499998, 45.20078124999998], + [-67.27070312499993, 45.186718749999955], + [-67.290673828125, 45.167919921874955], + [-67.31528320312495, 45.15380859375], + [-67.366943359375, 45.17377929687498], + [-67.39980468749994, 45.21015625000004], + [-67.45258789062495, 45.247656250000034], + [-67.47255859375002, 45.27587890625], + [-67.46196289062499, 45.308691406250034], + [-67.43852539062502, 45.34038085937502], + [-67.42792968749998, 45.37792968750003], + [-67.453759765625, 45.421240234375034], + [-67.47724609374998, 45.445898437500006], + [-67.49365234374997, 45.47407226562498], + [-67.48779296875, 45.50102539062496], + [-67.45493164062498, 45.51396484375002], + [-67.42441406249998, 45.530419921874994], + [-67.41386718749996, 45.565576171874966], + [-67.43266601562496, 45.60312], + [-67.48662109374996, 45.61840820312497], + [-67.53120117187498, 45.61254882812503], + [-67.59575195312499, 45.62075195312502], + [-67.65791015624995, 45.644189453124994], + [-67.69897460937497, 45.67119140624999], + [-67.73066406249993, 45.68647460937498], + [-67.75532226562498, 45.68647460937498], + [-67.78466796875, 45.70170898437499], + [-67.80224609374994, 45.7275390625], + [-67.79990234375, 45.769775390625], + [-67.79169921874993, 45.79555664062502], + [-67.77529296874997, 45.81787109375003], + [-67.77412109374998, 45.842529296875], + [-67.78115234375, 45.86015625000002], + [-67.78227539062496, 45.87416992187505], + [-67.77763671874999, 45.89179687499998], + [-67.76704101562498, 45.92700195312506], + [-67.78466796875, 45.952783203124966], + [-67.78647460937503, 46.042138671874966], + [-67.78994140625002, 46.209326171875006], + [-67.79252929687502, 46.33740234375], + [-67.79580078124997, 46.498388671875034], + [-67.797705078125, 46.615625], + [-67.80034179687502, 46.779882812500006], + [-67.80283203124998, 46.93574218750004], + [-67.806787109375, 47.08281249999999], + [-67.93486328124996, 47.16762695312502], + [-68.09677734375, 47.27485351562501], + [-68.23549804687502, 47.34594726562503], + [-68.310888671875, 47.3544921875], + [-68.3580078125, 47.34453125000002], + [-68.37690429687495, 47.316162109375], + [-68.48037109375, 47.28579101562502], + [-68.66855468749995, 47.25346679687502], + [-68.82871093749998, 47.20332031250001], + [-68.88740234374995, 47.20283203125001], + [-68.93720703124998, 47.21123046875002], + [-69.00312, 47.236425781250006], + [-69.04858398437503, 47.273632812499955], + [-69.06425781250002, 47.33813476562503], + [-69.0501953125, 47.426611328125034], + [-69.14628906249993, 47.44477539062501], + [-69.24287109374998, 47.46298828124998], + [-69.3021484375, 47.402001953124994], + [-69.35888671875, 47.35063476562502], + [-69.47148437499993, 47.23867187500002], + [-69.62978515624994, 47.081347656250045], + [-69.71752929687497, 46.994873046875], + [-69.87172851562494, 46.84291992187505], + [-70.00771484375002, 46.70893554687501], + [-70.03823242187502, 46.571435546874994], + [-70.0671875, 46.441064453124966], + [-70.17968749999997, 46.34184570312502], + [-70.248291015625, 46.25087890625005], + [-70.27890625000003, 46.15], + [-70.30449218749999, 46.05737304687497], + [-70.30644531249996, 45.97983398437498], + [-70.28715820312502, 45.939160156249955], + [-70.296240234375, 45.90610351562506], + [-70.33344726562495, 45.86806640625005], + [-70.407861328125, 45.801904296874966], + [-70.42109374999995, 45.738232421874955], + [-70.46660156249999, 45.70683593749996], + [-70.59638671874995, 45.643994140624955], + [-70.70224609375003, 45.551367187500006], + [-70.70742187500002, 45.498925781249966], + [-70.692138671875, 45.45537109374999], + [-70.68979492187498, 45.42832031249998], + [-70.71093750000003, 45.40947265624996], + [-70.75332031249997, 45.41069335937502], + [-70.79916992187498, 45.40478515624997], + [-70.83779296875002, 45.36616210937501], + [-70.83681640625, 45.310693359374994], + [-70.86503906249999, 45.27070312500001], + [-70.89799804687493, 45.26245117187503], + [-70.92622070312501, 45.29072265625001], + [-70.96015624999998, 45.333105468750034], + [-70.99990234375, 45.33725585937498], + [-71.06025390624995, 45.309130859375045], + [-71.13466796875002, 45.26284179687502], + [-71.20161132812498, 45.260351562500034], + [-71.327294921875, 45.29008789062496], + [-71.41904296874995, 45.200341796874994], + [-71.51752929687495, 45.00756835937497], + [-71.93364257812499, 45.00708007812506], + [-72.34975585937494, 45.00659179687503], + [-72.76591796874999, 45.00610351562503], + [-73.18203124999994, 45.00561523437503], + [-73.59814453124997, 45.00517578125002], + [-74.01425781250003, 45.00468750000002], + [-74.43037109374998, 45.00419921874999], + [-74.663232421875, 45.00390625000003], + [-74.70888671874997, 45.0038574218751] + ] + ], + [ + [ + [-126.09208984374995, 49.35400390625003], + [-126.06401367187499, 49.26362304687501], + [-126.18681640624996, 49.278125], + [-126.22963867187498, 49.29565429687506], + [-126.2314453125, 49.33906250000001], + [-126.20854492187495, 49.37978515625005], + [-126.11528320312496, 49.36503906249996], + [-126.09208984374995, 49.35400390625003] + ] + ], + [ + [ + [-54.55439453125001, 49.5888671875], + [-54.70869140625001, 49.53066406250005], + [-54.743847656249955, 49.50776367187501], + [-54.786523437499966, 49.496142578125045], + [-54.818505859374994, 49.514453125000045], + [-54.86357421875002, 49.576074218749966], + [-54.855419921874955, 49.596582031249966], + [-54.813085937500034, 49.599365234375], + [-54.78876953124998, 49.59121093750005], + [-54.782617187499966, 49.57207031249996], + [-54.7640625, 49.562353515625034], + [-54.73310546875001, 49.562158203124994], + [-54.61875, 49.62207031250003], + [-54.559179687500006, 49.631494140624994], + [-54.53769531249998, 49.619970703125034], + [-54.55439453125001, 49.5888671875] + ] + ], + [ + [ + [-54.093701171874955, 49.74443359374999], + [-54.01992187500002, 49.67949218749999], + [-53.98066406250001, 49.66196289062498], + [-54.238378906250006, 49.591650390625034], + [-54.26923828125001, 49.58701171874998], + [-54.28613281249997, 49.595361328124994], + [-54.28876953124998, 49.66083984375001], + [-54.27763671875002, 49.71147460937502], + [-54.258984374999955, 49.71899414062506], + [-54.199365234374966, 49.68852539062496], + [-54.13769531250003, 49.75117187500004], + [-54.093701171874955, 49.74443359374999] + ] + ], + [ + [ + [-124.153662109375, 49.531152343749966], + [-124.13979492187502, 49.510351562500006], + [-124.36230468749997, 49.588183593750045], + [-124.45722656249994, 49.63422851562501], + [-124.49394531249996, 49.66748046875003], + [-124.51782226562503, 49.68632812499996], + [-124.63095703124999, 49.73569335937498], + [-124.64985351562501, 49.75834960937499], + [-124.62329101562503, 49.77509765625001], + [-124.54716796874997, 49.76494140624999], + [-124.42148437500003, 49.72778320312497], + [-124.30913085937497, 49.66728515624999], + [-124.153662109375, 49.531152343749966] + ] + ], + [ + [ + [-126.64121093749999, 49.605810546875006], + [-126.68041992187499, 49.60136718749999], + [-126.74340820312503, 49.613476562499955], + [-126.81420898437497, 49.64208984375], + [-126.93857421874999, 49.71845703125004], + [-126.95126953125, 49.73569335937498], + [-126.94003906250003, 49.75048828124997], + [-126.90488281249998, 49.762792968750006], + [-126.896875, 49.78291015625001], + [-126.92583007812497, 49.837744140625006], + [-126.82607421875, 49.87236328125002], + [-126.73813476562502, 49.84365234375005], + [-126.69814453124995, 49.808496093749994], + [-126.64990234374999, 49.74580078125001], + [-126.628173828125, 49.675146484375006], + [-126.62578125, 49.626806640625006], + [-126.64121093749999, 49.605810546875006] + ] + ], + [ + [ + [-61.801123046875034, 49.093896484374966], + [-62.21953124999999, 49.07910156249997], + [-62.552636718749994, 49.14086914062503], + [-62.79960937499996, 49.17070312499999], + [-63.04150390624994, 49.224951171875034], + [-63.565869140624926, 49.39931640625002], + [-63.625878906249994, 49.45991210937501], + [-63.676220703124926, 49.534326171874994], + [-63.77661132812497, 49.60200195312501], + [-63.884912109374994, 49.65771484375], + [-64.44003906250003, 49.827734375], + [-64.485205078125, 49.88696289062497], + [-64.37294921874994, 49.92592773437502], + [-64.24375, 49.94438476562496], + [-64.13144531249995, 49.94165039062503], + [-63.76015625, 49.875244140625], + [-63.2919921875, 49.81684570312501], + [-63.08881835937498, 49.77270507812497], + [-62.858544921874966, 49.70546875000005], + [-62.63344726562494, 49.62392578125005], + [-62.133007812499955, 49.407080078125006], + [-62.043066406250034, 49.38979492187505], + [-61.817138671875, 49.28354492187498], + [-61.73583984374997, 49.203759765624966], + [-61.69614257812495, 49.139013671875006], + [-61.745507812499966, 49.10576171874999], + [-61.801123046875034, 49.093896484374966] + ] + ], + [ + [ + [-124.97773437500003, 50.02958984374999], + [-125.0015625, 50.02075195312497], + [-125.02597656249999, 50.13408203124996], + [-124.99565429687495, 50.175195312499994], + [-124.98701171874995, 50.19584960937502], + [-124.99082031250002, 50.217138671875006], + [-124.93784179687498, 50.165917968749966], + [-124.91640624999997, 50.13154296874998], + [-124.90747070312501, 50.08398437499997], + [-124.90844726562503, 50.07128906250006], + [-124.97773437500003, 50.02958984374999] + ] + ], + [ + [ + [-125.18413085937497, 50.09711914062498], + [-125.19511718749999, 50.044335937499994], + [-125.25957031249997, 50.13002929687502], + [-125.35844726562496, 50.31152343749997], + [-125.34531250000003, 50.35395507812501], + [-125.301171875, 50.4140625], + [-125.26093749999998, 50.417822265625034], + [-125.19599609375, 50.389746093750006], + [-125.13950195312503, 50.339697265625034], + [-125.12646484374994, 50.32026367187498], + [-125.09140625, 50.26777343750004], + [-125.07402343750002, 50.22065429687501], + [-125.11298828124995, 50.163476562499994], + [-125.18413085937497, 50.09711914062498] + ] + ], + [ + [ + [-55.5361328125, 50.71967773437498], + [-55.56967773437498, 50.70869140624998], + [-55.600781249999926, 50.709033203125045], + [-55.62934570312498, 50.720800781250034], + [-55.633886718750006, 50.74018554687498], + [-55.60449218749997, 50.78071289062498], + [-55.527197265625034, 50.80122070312498], + [-55.46928710937496, 50.79638671874997], + [-55.47275390624995, 50.77592773437499], + [-55.503808593749994, 50.74213867187504], + [-55.5361328125, 50.71967773437498] + ] + ], + [ + [ + [-127.19731445312495, 50.640380859375], + [-126.70092773437499, 50.515527343749966], + [-126.20385742187497, 50.453857421875], + [-125.83916015625002, 50.380810546874955], + [-125.61523437499996, 50.35854492187505], + [-125.534326171875, 50.34248046874998], + [-125.48208007812501, 50.316796874999966], + [-125.42045898437497, 50.25463867187503], + [-125.31396484374996, 50.10668945312497], + [-125.23320312499993, 50.01220703125], + [-125.06640624999997, 49.84819335937499], + [-124.93466796874995, 49.731640624999955], + [-124.90463867187496, 49.685351562500045], + [-124.93242187499995, 49.67045898437502], + [-124.93066406250003, 49.64316406250006], + [-124.83061523437499, 49.53007812500002], + [-124.64287109375002, 49.428662109374955], + [-124.49594726562502, 49.380273437499966], + [-124.18588867187499, 49.30058593749999], + [-123.99580078125, 49.22402343750002], + [-123.93715820312495, 49.17080078125002], + [-123.85449218749999, 49.11918945312499], + [-123.82001953124998, 49.08349609375], + [-123.75229492187503, 48.951220703125045], + [-123.6265625, 48.82402343749996], + [-123.49702148437498, 48.58208007812499], + [-123.47285156249995, 48.602294921875], + [-123.45795898437503, 48.674414062500034], + [-123.44306640625001, 48.690478515625045], + [-123.41547851562498, 48.69819335937501], + [-123.38989257812501, 48.67021484374999], + [-123.36630859375, 48.60644531250006], + [-123.28378906249998, 48.45517578125006], + [-123.31064453125003, 48.41103515625002], + [-123.33452148437502, 48.406494140625], + [-123.44589843749996, 48.42724609375006], + [-123.48457031250003, 48.40009765625004], + [-123.53647460937503, 48.344970703125], + [-123.57314453124995, 48.32280273437499], + [-123.59462890624998, 48.33354492187496], + [-123.91694335937501, 48.386572265625034], + [-124.11523437499999, 48.436425781249966], + [-124.37622070312496, 48.515234375000034], + [-124.689404296875, 48.597314453124966], + [-124.86826171875002, 48.65361328124999], + [-125.017236328125, 48.71147460937496], + [-125.12070312500002, 48.76079101562496], + [-125.14028320312501, 48.802636718749966], + [-125.13569335937497, 48.822412109374994], + [-124.93476562499997, 48.95634765625002], + [-124.84965820312496, 49.02827148437501], + [-124.81704101562497, 49.083300781250045], + [-124.80024414062501, 49.14155273437501], + [-124.81264648437497, 49.212646484375], + [-124.82075195312501, 49.207128906250034], + [-124.83872070312503, 49.13906250000002], + [-124.86831054687502, 49.07851562500005], + [-124.90444335937501, 49.03100585937503], + [-124.92734374999998, 49.01420898437499], + [-125.16821289062501, 48.99101562499999], + [-125.36274414062494, 48.99824218750004], + [-125.46030273437502, 48.94106445312502], + [-125.489453125, 48.933789062499955], + [-125.54311523437501, 48.95283203125001], + [-125.66049804687503, 49.029150390625006], + [-125.82851562499998, 49.09184570312499], + [-125.81196289062498, 49.10722656250002], + [-125.70229492187502, 49.13920898437496], + [-125.64423828125001, 49.18579101562506], + [-125.65463867187499, 49.193212890625034], + [-125.69370117187496, 49.19038085937501], + [-125.72802734375003, 49.199853515624966], + [-125.79638671875, 49.26020507812501], + [-125.83544921874997, 49.27666015624999], + [-125.91835937499998, 49.24951171874997], + [-125.95166015625001, 49.24804687500003], + [-125.983837890625, 49.28789062499996], + [-125.93769531250001, 49.37978515625005], + [-125.93540039062499, 49.401464843750006], + [-126.02031249999997, 49.368017578125034], + [-126.04833984375, 49.37900390625006], + [-126.07490234375, 49.408789062500006], + [-126.09985351562501, 49.421289062499966], + [-126.16884765624995, 49.415185546874966], + [-126.24360351562498, 49.44267578124999], + [-126.26972656249998, 49.431884765625], + [-126.27963867187496, 49.3921875], + [-126.30449218749996, 49.382031249999955], + [-126.41860351562502, 49.44902343750002], + [-126.44453124999998, 49.45112304687501], + [-126.49985351562496, 49.39995117187499], + [-126.519140625, 49.396777343750045], + [-126.54853515625003, 49.41894531250003], + [-126.56372070312501, 49.543261718750045], + [-126.55747070312498, 49.57861328125006], + [-126.54189453125001, 49.590478515624966], + [-126.44277343749998, 49.619287109374994], + [-126.1578125, 49.65014648437506], + [-126.13408203124997, 49.672314453124955], + [-126.34755859374994, 49.66083984375001], + [-126.40317382812499, 49.677734375], + [-126.46279296874997, 49.72021484375003], + [-126.52524414062499, 49.71958007812498], + [-126.55825195312497, 49.73339843750006], + [-126.59287109375, 49.76411132812501], + [-126.68310546875, 49.87646484374997], + [-126.74462890625001, 49.904931640624994], + [-126.84936523437503, 49.92280273437501], + [-126.90332031250001, 49.94414062499999], + [-126.92607421875003, 49.93471679687502], + [-126.94794921874995, 49.90268554687498], + [-126.97709960937495, 49.88281250000003], + [-127.04873046874997, 49.87153320312504], + [-127.114306640625, 49.879736328125034], + [-127.16552734374996, 49.91044921874996], + [-127.19589843750002, 49.949169921874955], + [-127.20751953124999, 49.99243164062497], + [-127.17910156249997, 50.05029296875003], + [-127.179638671875, 50.073144531249994], + [-127.192333984375, 50.09990234375002], + [-127.21567382812496, 50.121484374999966], + [-127.24980468749999, 50.13798828124996], + [-127.26840820312496, 50.12934570312498], + [-127.27153320312497, 50.095556640625034], + [-127.29003906250001, 50.07084960937496], + [-127.34941406249995, 50.05195312500001], + [-127.39790039062495, 50.08500976562502], + [-127.42978515624998, 50.13085937500003], + [-127.46713867187503, 50.163427734375006], + [-127.67485351562499, 50.16333007812497], + [-127.77045898437501, 50.12114257812499], + [-127.81630859375002, 50.11772460937502], + [-127.86391601562495, 50.12773437500002], + [-127.87299804687503, 50.15009765625004], + [-127.82817382812496, 50.21142578125], + [-127.83916015624997, 50.29321289062497], + [-127.85083007812496, 50.31372070312497], + [-127.94667968750002, 50.326220703125045], + [-127.96293945312496, 50.34599609374999], + [-127.90585937499998, 50.44521484375002], + [-127.87402343749997, 50.463964843750034], + [-127.83154296875001, 50.47104492187506], + [-127.64140625, 50.479101562500006], + [-127.578125, 50.46494140625006], + [-127.48652343749998, 50.404638671875034], + [-127.48935546875003, 50.427343750000034], + [-127.52402343749999, 50.49575195312502], + [-127.52900390625003, 50.53676757812502], + [-127.46591796874996, 50.58310546875006], + [-127.52622070312499, 50.59667968749997], + [-127.75146484374996, 50.60737304687501], + [-127.74970703124995, 50.577734375000034], + [-127.73115234375, 50.535742187500006], + [-127.86469726562503, 50.498876953125034], + [-127.96367187500003, 50.49262695312501], + [-128.05834960937494, 50.498486328124955], + [-128.13564453124997, 50.52055664062502], + [-128.267431640625, 50.609277343749966], + [-128.34990234375002, 50.69658203124999], + [-128.34604492187503, 50.744238281250006], + [-128.300830078125, 50.79414062499998], + [-128.24155273437498, 50.82817382812499], + [-128.101318359375, 50.85776367187506], + [-127.91806640624998, 50.86054687500001], + [-127.71303710937495, 50.82075195312498], + [-127.19731445312495, 50.640380859375] + ] + ], + [ + [ + [-55.45874023437494, 51.53652343750005], + [-55.532421874999955, 51.43696289062501], + [-55.58339843749994, 51.38857421875002], + [-55.630761718749994, 51.372900390625006], + [-55.73071289062503, 51.35869140624996], + [-55.941162109375, 51.34301757812497], + [-56.031103515625034, 51.328369140625], + [-56.04394531249997, 51.26186523437505], + [-56.03066406250002, 51.226904296875034], + [-55.999902343749966, 51.19926757812499], + [-55.96083984375002, 51.19140625], + [-55.87353515625, 51.207910156249966], + [-55.84111328124996, 51.20507812500003], + [-55.815087890624994, 51.19116210937503], + [-55.79550781249998, 51.166162109374994], + [-55.785351562499955, 51.131445312500034], + [-55.78471679687502, 51.08706054687505], + [-55.8, 51.033300781250034], + [-55.87138671874999, 50.90737304687502], + [-55.96201171874998, 50.83769531249996], + [-56.078125, 50.78095703125004], + [-56.106542968750034, 50.75927734374997], + [-56.121191406250006, 50.73378906250002], + [-56.135644531249994, 50.650976562500034], + [-56.19575195312498, 50.584765625000045], + [-56.382421875, 50.41699218750006], + [-56.454345703125, 50.380029296874994], + [-56.45478515625001, 50.350488281249994], + [-56.48393554687499, 50.270849609375034], + [-56.53935546875002, 50.20673828125004], + [-56.693994140624966, 50.059667968750006], + [-56.732324218749966, 50.007714843749994], + [-56.74956054687502, 49.96655273437503], + [-56.74716796874998, 49.90849609375002], + [-56.754101562499955, 49.882910156250034], + [-56.78950195312498, 49.83374023437497], + [-56.8388671875, 49.78774414062502], + [-56.84863281249994, 49.76533203124998], + [-56.82919921874998, 49.72460937500003], + [-56.809228515624994, 49.71040039062498], + [-56.80688476562497, 49.67333984374997], + [-56.822167968749966, 49.613476562499955], + [-56.75678710937498, 49.651611328125], + [-56.61064453124996, 49.787695312500006], + [-56.50092773437498, 49.86962890625], + [-56.42758789062498, 49.89741210937498], + [-56.376416015624926, 49.933691406250006], + [-56.32182617187502, 50.01376953125006], + [-56.24707031249997, 50.09008789062497], + [-56.179394531249955, 50.114990234375], + [-56.148388671874926, 50.10034179687503], + [-56.122167968750006, 50.062841796875034], + [-56.12744140625003, 50.01513671874997], + [-56.16416015624995, 49.957275390625], + [-56.161279296874994, 49.94013671874998], + [-56.075, 49.98261718750001], + [-55.92700195312494, 50.01777343749998], + [-55.87333984374996, 50.01313476562501], + [-55.764746093750034, 49.96044921875003], + [-55.67446289062502, 49.96655273437503], + [-55.530029296875, 49.99716796875006], + [-55.50292968749997, 49.98315429687503], + [-55.527001953124994, 49.936767578125], + [-55.58369140625001, 49.89238281250002], + [-55.717626953125034, 49.829003906249994], + [-56.03999023437498, 49.70468749999998], + [-56.14018554687496, 49.61914062500006], + [-56.121191406250006, 49.62172851562505], + [-56.051611328125034, 49.658398437499955], + [-55.97851562499997, 49.678125], + [-55.90185546874997, 49.68085937500001], + [-55.869824218749955, 49.67016601562506], + [-55.88232421875, 49.64594726562501], + [-55.892041015624926, 49.58027343750004], + [-56.08730468750002, 49.45195312499999], + [-56.041210937499955, 49.45683593750002], + [-55.81523437500002, 49.51528320312502], + [-55.67812, 49.43461914062502], + [-55.48974609374997, 49.4625], + [-55.375927734374955, 49.48974609374997], + [-55.379150390625, 49.472900390625], + [-55.35449218750003, 49.43769531250004], + [-55.35537109375002, 49.380859375], + [-55.34384765624998, 49.37290039062506], + [-55.28994140625002, 49.391943359375034], + [-55.280175781249994, 49.412744140624994], + [-55.28300781249993, 49.513818359374994], + [-55.266357421875, 49.52392578125], + [-55.22954101562496, 49.508154296875006], + [-55.20703125, 49.48203125], + [-55.20029296874998, 49.40849609375002], + [-55.225, 49.33466796875001], + [-55.25932617187499, 49.266992187499966], + [-55.34248046874998, 49.168115234374994], + [-55.331933593749966, 49.125585937500034], + [-55.35317382812502, 49.07944335937506], + [-55.33476562500002, 49.077880859375], + [-55.25234375, 49.12089843749996], + [-55.24736328124996, 49.13857421875002], + [-55.25380859374994, 49.17963867187504], + [-55.24453125, 49.19980468750006], + [-55.176123046875006, 49.24443359374999], + [-55.06318359375001, 49.29736328125003], + [-55.02617187500002, 49.30537109374998], + [-55.010400390624994, 49.293017578125045], + [-55.01591796874996, 49.260351562500034], + [-54.982617187499926, 49.26811523437502], + [-54.910546875, 49.31625976562498], + [-54.843652343749966, 49.345410156249955], + [-54.781884765624994, 49.35546874999997], + [-54.71762695312495, 49.388574218749966], + [-54.65087890625003, 49.44453125000001], + [-54.579052734374955, 49.490820312500006], + [-54.50219726562503, 49.52734375], + [-54.469189453124955, 49.52978515625006], + [-54.480615234374994, 49.46933593749998], + [-54.465429687500006, 49.400537109374994], + [-54.46347656249995, 49.34174804687501], + [-54.44824218749997, 49.329443359375006], + [-54.3890625, 49.39213867187499], + [-54.356152343749955, 49.41503906250003], + [-54.316748046875006, 49.42412109375002], + [-54.27080078124996, 49.419287109375006], + [-53.957714843749955, 49.44184570312498], + [-53.862451171874994, 49.42631835937502], + [-53.754980468750034, 49.38530273437502], + [-53.61943359374996, 49.321630859375006], + [-53.569580078125, 49.26416015625003], + [-53.56005859375003, 49.19169921875002], + [-53.57343750000001, 49.141210937500034], + [-53.671142578125, 49.07753906250002], + [-53.75805664062494, 49.03540039062506], + [-53.809326171875, 48.99340820312503], + [-53.82490234374998, 48.95136718749998], + [-53.84521484375003, 48.92543945312502], + [-53.90322265624994, 48.88916015625], + [-54.16127929687494, 48.787695312500034], + [-54.099511718749966, 48.78476562500006], + [-53.95068359375003, 48.80678710937502], + [-53.852880859375006, 48.81132812499996], + [-53.847753906250006, 48.79667968749999], + [-53.88681640624998, 48.76782226562497], + [-53.961523437500006, 48.738867187500034], + [-53.96958007812498, 48.72490234375002], + [-53.966015624999955, 48.70668945312505], + [-53.88613281250002, 48.684667968750006], + [-53.78408203125002, 48.69541015625006], + [-53.69804687499999, 48.679833984374994], + [-53.70634765624999, 48.65551757812503], + [-53.774609374999955, 48.57631835937505], + [-53.794628906249955, 48.5263671875], + [-53.88554687499999, 48.48457031250001], + [-54.067773437499994, 48.41884765625002], + [-54.11445312499998, 48.393603515625045], + [-54.10424804687497, 48.38837890625004], + [-53.93701171875, 48.436621093750006], + [-53.852734374999955, 48.448828125], + [-53.79931640625, 48.44921875], + [-53.738867187500034, 48.49580078124998], + [-53.644433593749994, 48.51123046875003], + [-53.55205078124999, 48.48178710937506], + [-53.41132812500001, 48.562158203124994], + [-53.361083984375, 48.572607421875006], + [-53.27543945312496, 48.56333007812498], + [-53.22026367187499, 48.577880859375], + [-53.127343749999966, 48.63256835937506], + [-53.057275390624994, 48.659033203125034], + [-53.042675781249955, 48.656640624999966], + [-53.027587890625, 48.634716796874955], + [-53.02075195312503, 48.57163085937498], + [-53.037304687499926, 48.515869140625], + [-53.060205078124966, 48.480322265625034], + [-53.1357421875, 48.40185546875003], + [-53.18212890624994, 48.374365234375034], + [-53.22509765625, 48.36401367187506], + [-53.301171874999966, 48.3681640625], + [-53.33432617187495, 48.35595703125], + [-53.40551757812497, 48.294335937499966], + [-53.53120117187501, 48.231884765624955], + [-53.60976562500002, 48.20771484375001], + [-53.560205078124966, 48.17382812500003], + [-53.54184570312495, 48.10844726562502], + [-53.56943359374998, 48.088085937499955], + [-53.70429687500001, 48.067919921875045], + [-53.710156249999955, 48.05683593749998], + [-53.758203125, 48.042382812499994], + [-53.869580078124926, 48.019677734374966], + [-53.79355468749998, 48.00971679687498], + [-53.653027343749955, 48.02573242187506], + [-53.63823242187496, 48.01464843750003], + [-53.657617187499994, 47.968652343749966], + [-53.69501953124998, 47.92119140624999], + [-53.861669921875006, 47.79926757812501], + [-53.863671874999966, 47.787011718749994], + [-53.837744140625034, 47.72724609374998], + [-53.80537109375001, 47.68203125000002], + [-53.76513671874997, 47.65009765625001], + [-53.67236328125, 47.64824218749999], + [-53.60375976562497, 47.66230468750001], + [-53.503759765625006, 47.74384765625001], + [-53.28271484375, 47.99785156249996], + [-53.08544921874997, 48.068505859374966], + [-52.920996093750034, 48.147070312500006], + [-52.88330078125, 48.131152343750045], + [-52.86601562499993, 48.11298828124998], + [-52.87202148437501, 48.09394531250001], + [-52.95498046874994, 48.02929687499997], + [-52.998242187499955, 47.975927734375034], + [-53.11083984375, 47.81191406250002], + [-53.15385742187496, 47.73457031249998], + [-53.17553710937503, 47.652978515624966], + [-53.16982421875002, 47.51210937500005], + [-53.157666015624926, 47.48779296874997], + [-53.122460937499966, 47.45512695312499], + [-53.05683593750001, 47.48310546874998], + [-52.945019531249955, 47.55283203124998], + [-52.873193359374994, 47.61943359374996], + [-52.81694335937499, 47.727880859375034], + [-52.782421874999955, 47.769433593749966], + [-52.74492187499996, 47.768945312499966], + [-52.71142578124997, 47.74531250000004], + [-52.703271484374994, 47.69301757812505], + [-52.67216796874996, 47.62177734375001], + [-52.653662109375034, 47.549414062500006], + [-52.66850585937493, 47.469824218750034], + [-52.68364257812499, 47.42631835937496], + [-52.91240234374999, 47.103222656249955], + [-52.88813476562501, 47.04584960937501], + [-52.88208007812503, 47.011083984375034], + [-52.88920898437496, 46.97412109375003], + [-52.96171874999999, 46.81943359375006], + [-53.03193359374998, 46.72275390624998], + [-53.06977539062498, 46.68125], + [-53.11484375, 46.65581054687502], + [-53.16699218749997, 46.646484375], + [-53.21367187499999, 46.660498046875006], + [-53.25488281250003, 46.69770507812504], + [-53.29130859374999, 46.71704101562497], + [-53.32304687499996, 46.71835937499998], + [-53.38173828125002, 46.71142578125], + [-53.53613281249994, 46.63251953124998], + [-53.567773437499994, 46.628271484375006], + [-53.589794921874955, 46.638867187499955], + [-53.61635742187494, 46.680273437500034], + [-53.59516601562498, 46.88847656249999], + [-53.58134765625002, 46.95727539062497], + [-53.61215820312498, 47.01035156250006], + [-53.57963867187502, 47.09941406249999], + [-53.57846679687495, 47.133251953124955], + [-53.59736328124998, 47.14599609374997], + [-53.63637695312494, 47.13769531249997], + [-53.69536132812496, 47.092919921874994], + [-53.774316406249966, 47.011816406250006], + [-53.86000976562502, 46.939453125], + [-54.00957031249993, 46.839599609375], + [-54.07602539062498, 46.819970703124994], + [-54.102392578125034, 46.82490234375001], + [-54.1328125, 46.838574218749955], + [-54.173730468749994, 46.88037109375003], + [-54.17329101562498, 46.91718749999998], + [-54.155224609374955, 46.96748046875001], + [-54.092675781249994, 47.08623046874996], + [-53.97050781249999, 47.26196289062497], + [-53.86909179687501, 47.38701171874996], + [-53.84951171875002, 47.440332031249994], + [-53.877880859374926, 47.46357421875001], + [-53.90083007812498, 47.50932617187502], + [-53.93974609375002, 47.64467773437505], + [-53.98901367187503, 47.756201171875034], + [-54.047265625, 47.80561523437498], + [-54.191845703124955, 47.85981445312501], + [-54.21840820312494, 47.84672851562499], + [-54.23388671875, 47.77167968749998], + [-54.404687499999966, 47.555908203125], + [-54.434472656249994, 47.46230468750002], + [-54.455908203125006, 47.42758789062506], + [-54.488134765625006, 47.40385742187502], + [-54.56254882812499, 47.37519531250004], + [-54.542382812499966, 47.42509765624999], + [-54.463232421875006, 47.53623046874998], + [-54.47392578124996, 47.54707031249998], + [-54.57451171875002, 47.45776367187497], + [-54.65117187500002, 47.408203125], + [-54.74467773437496, 47.39545898437498], + [-54.801513671875, 47.39863281250001], + [-54.856640624999955, 47.385009765625], + [-55.09042968749998, 47.17392578124998], + [-55.09921874999998, 47.103564453125045], + [-55.13964843749994, 47.04594726562502], + [-55.25493164062499, 46.941748046875006], + [-55.31572265624993, 46.905712890624955], + [-55.401269531249966, 46.89926757812498], + [-55.47929687499996, 46.91728515625002], + [-55.530712890624955, 46.914013671874955], + [-55.65234374999994, 46.88144531249998], + [-55.78852539062498, 46.86723632812502], + [-55.84472656249997, 46.873828125000045], + [-55.880615234375, 46.88720703125], + [-55.94990234375001, 46.92768554687498], + [-55.95820312500001, 46.95639648437498], + [-55.954492187499966, 46.973242187500034], + [-55.91923828124996, 47.01689453124996], + [-55.83837890625003, 47.071630859375006], + [-55.77182617187495, 47.09208984375002], + [-55.610058593749955, 47.11962890625003], + [-55.49150390624996, 47.16064453125003], + [-55.40122070312495, 47.22148437499999], + [-55.36088867187499, 47.25859374999999], + [-55.190820312499994, 47.44897460937497], + [-54.97563476562493, 47.51616210937499], + [-54.86953125, 47.570898437500034], + [-54.79536132812498, 47.640332031249955], + [-54.78461914062501, 47.664746093749955], + [-54.89101562500002, 47.62949218749998], + [-54.94594726562502, 47.620849609375], + [-55.03500976562495, 47.63388671874998], + [-55.074560546875006, 47.657568359375006], + [-55.19658203125002, 47.650048828124994], + [-55.366308593750034, 47.66108398437501], + [-55.390771484374966, 47.642871093750045], + [-55.41269531249998, 47.550390625000034], + [-55.434667968750006, 47.50126953124996], + [-55.46064453124998, 47.484765624999966], + [-55.498632812500006, 47.475048828124955], + [-55.57612304687498, 47.465234375], + [-55.77470703125002, 47.49829101562497], + [-55.811376953125034, 47.51635742187503], + [-55.86206054687497, 47.53007812499996], + [-56.08134765624996, 47.499951171874955], + [-56.12724609374999, 47.50283203125002], + [-56.08369140624998, 47.524511718750006], + [-55.867089843749994, 47.592333984375045], + [-55.844384765624994, 47.787841796875], + [-55.85791015625, 47.81918945312498], + [-55.91845703125, 47.79189453125002], + [-56.020117187500006, 47.76372070312496], + [-56.08964843749996, 47.771875], + [-56.12143554687495, 47.789160156250006], + [-56.150585937499926, 47.774511718750034], + [-56.22128906249995, 47.67138671874997], + [-56.26298828125002, 47.658447265625], + [-56.32578125, 47.65449218750001], + [-56.459570312500006, 47.616943359375], + [-56.722314453124966, 47.59228515625003], + [-56.774121093749955, 47.56499023437499], + [-56.95249023437498, 47.57446289062506], + [-57.4734375, 47.63110351562503], + [-57.65981445312502, 47.62539062500002], + [-57.88408203124996, 47.66000976562498], + [-57.92553710937497, 47.67490234374998], + [-58.23930664062493, 47.668847656249994], + [-58.33320312499998, 47.676855468750034], + [-58.32695312499993, 47.719873046874994], + [-58.33686523437501, 47.73085937500002], + [-58.42802734375002, 47.683398437500045], + [-58.50888671874998, 47.65258789062497], + [-58.61313476562498, 47.62622070312503], + [-58.94116210937503, 47.58046875000002], + [-59.11694335937494, 47.570703125], + [-59.21928710937502, 47.6025390625], + [-59.259765625, 47.63417968750005], + [-59.32065429687498, 47.736914062500006], + [-59.36240234374995, 47.865673828124955], + [-59.36206054687497, 47.88896484374999], + [-59.34086914062502, 47.933642578125045], + [-59.272070312500034, 47.99555664062504], + [-58.96083984374994, 48.159375], + [-58.71059570312494, 48.325048828125006], + [-58.60498046875, 48.41132812500001], + [-58.502636718749955, 48.44204101562505], + [-58.335546875, 48.51367187499997], + [-58.330224609374994, 48.52211914062502], + [-58.49223632812496, 48.513037109375034], + [-58.60615234374998, 48.532861328124994], + [-58.722558593749994, 48.54072265624998], + [-58.943798828124926, 48.521777343750045], + [-59.16679687499999, 48.521777343750045], + [-59.16767578124998, 48.558496093749966], + [-59.06342773437498, 48.62768554687503], + [-58.84179687500003, 48.74643554687498], + [-58.81918945312495, 48.74682617187506], + [-58.88710937500002, 48.691552734374994], + [-58.906445312499955, 48.65019531249999], + [-58.87724609374996, 48.622705078124994], + [-58.843408203124994, 48.605322265625006], + [-58.716455078124994, 48.59804687500002], + [-58.687353515625006, 48.62207031250003], + [-58.6416015625, 48.74941406250005], + [-58.54560546874998, 48.896875], + [-58.49375, 49.00322265624999], + [-58.403662109375034, 49.08432617187498], + [-58.35869140625002, 49.09653320312498], + [-58.31875, 49.08134765624999], + [-58.186132812500034, 49.06191406250002], + [-58.049658203125034, 48.98754882812497], + [-58.005566406249926, 48.98125], + [-57.99052734374996, 48.987939453124966], + [-58.04057617187496, 49.00976562499997], + [-58.08183593750002, 49.04472656249999], + [-58.09892578124993, 49.07744140624999], + [-58.049072265625, 49.17998046875002], + [-57.99067382812501, 49.20947265624997], + [-57.98007812499998, 49.229638671874994], + [-58.09687, 49.230078125], + [-58.19091796875003, 49.25874023437498], + [-58.218896484374966, 49.30512695312501], + [-58.21337890625, 49.38666992187501], + [-58.18271484374995, 49.435400390625006], + [-58.10742187499997, 49.499707031249955], + [-58.01582031249998, 49.54248046874997], + [-57.96123046874996, 49.53154296874996], + [-57.856054687500034, 49.47382812500001], + [-57.79130859374999, 49.48999023437503], + [-57.798828125, 49.50854492187497], + [-57.89746093750003, 49.600390625000045], + [-57.92905273437498, 49.668408203124955], + [-57.926171875, 49.700830078124994], + [-57.7125, 50.02490234375003], + [-57.60795898437502, 50.19877929687502], + [-57.465527343749955, 50.46367187499996], + [-57.4326171875, 50.50581054687504], + [-57.36044921874995, 50.583935546874955], + [-57.33056640625, 50.60517578125001], + [-57.237402343750006, 50.605371093749966], + [-57.179589843749966, 50.614843750000034], + [-57.26416015624997, 50.649365234374955], + [-57.29443359375, 50.67338867187496], + [-57.29799804687502, 50.69873046874997], + [-57.27490234375003, 50.72529296874998], + [-57.24213867187501, 50.74492187499999], + [-57.13164062499996, 50.78740234375002], + [-57.05327148437499, 50.857324218749966], + [-57.00566406249996, 50.93964843750004], + [-57.01274414062499, 50.96772460937498], + [-57.037304687499926, 50.99565429687499], + [-57.03593750000002, 51.01083984374998], + [-56.97636718749996, 51.027978515624994], + [-56.825146484374955, 51.12573242187503], + [-56.80546875, 51.14448242187501], + [-56.75019531249998, 51.27490234375003], + [-56.68242187500002, 51.332763671875], + [-56.619042968749994, 51.36245117187502], + [-56.51796875, 51.399316406249994], + [-56.20737304687495, 51.48862304687506], + [-56.025585937499955, 51.56835937500006], + [-55.90209960937503, 51.56391601562504], + [-55.865820312500006, 51.50830078124997], + [-55.6904296875, 51.471337890624994], + [-55.659570312499994, 51.51103515625002], + [-55.700634765624926, 51.559423828125006], + [-55.666406249999966, 51.57890624999999], + [-55.521630859374966, 51.59638671874998], + [-55.49643554687498, 51.58984374999997], + [-55.45322265624998, 51.56230468749996], + [-55.45874023437494, 51.53652343750005] + ] + ], + [ + [ + [-127.92465820312498, 51.47387695312497], + [-127.94125976562499, 51.45717773437505], + [-127.98125, 51.457226562499955], + [-128.04453124999998, 51.47402343750002], + [-128.091796875, 51.51113281250002], + [-128.14877929687498, 51.62670898437503], + [-128.14238281250002, 51.646582031250006], + [-128.12275390625, 51.66679687500002], + [-128.03173828125006, 51.708398437499966], + [-127.99868164062497, 51.70380859375001], + [-127.98681640625003, 51.673583984375], + [-127.93251953124998, 51.60546874999997], + [-127.91635742187498, 51.58544921874997], + [-127.91630859374997, 51.506201171875006], + [-127.92465820312498, 51.47387695312497] + ] + ], + [ + [ + [-55.361230468749966, 51.88964843750006], + [-55.40888671875001, 51.888818359374966], + [-55.41962890624998, 51.90004882812502], + [-55.39980468750002, 51.93847656250006], + [-55.34648437499999, 51.98286132812504], + [-55.274072265624994, 51.99516601562496], + [-55.29355468749995, 51.92998046874999], + [-55.361230468749966, 51.88964843750006] + ] + ], + [ + [ + [-79.38427734374997, 51.951953125000045], + [-79.42558593749996, 51.94487304687502], + [-79.52060546874995, 51.95292968749996], + [-79.59687, 51.97802734375003], + [-79.64375, 52.01005859374996], + [-79.33486328124997, 52.09814453124997], + [-79.27128906249996, 52.086816406249966], + [-79.27021484374993, 52.07109375], + [-79.31660156249995, 52.02392578125006], + [-79.328955078125, 51.992285156250006], + [-79.35151367187498, 51.96831054687499], + [-79.38427734374997, 51.951953125000045] + ] + ], + [ + [ + [-131.029296875, 51.961621093749955], + [-131.04726562500002, 51.95971679687503], + [-131.08051757812495, 51.98041992187498], + [-131.10341796875002, 52.01386718750004], + [-131.11733398437502, 52.10102539062504], + [-131.10712890624995, 52.13657226562498], + [-131.098095703125, 52.150634765625], + [-131.01064453125002, 52.09526367187502], + [-131.029296875, 51.961621093749955] + ] + ], + [ + [ + [-128.36875, 52.40087890625], + [-128.44541015625003, 52.3875], + [-128.41987304687495, 52.44111328125004], + [-128.4125, 52.47285156250001], + [-128.42626953125003, 52.50273437499999], + [-128.43593749999997, 52.56035156249999], + [-128.43979492187503, 52.696386718750006], + [-128.36489257812497, 52.781884765624994], + [-128.24726562499998, 52.78437], + [-128.24843749999997, 52.74121093749997], + [-128.29814453124996, 52.54824218750002], + [-128.32377929687505, 52.45898437500003], + [-128.3435546875, 52.42607421874999], + [-128.36875, 52.40087890625] + ] + ], + [ + [ + [-128.93686523437498, 52.51000976562503], + [-128.96870117187495, 52.46425781250005], + [-129.10234375000002, 52.574365234374994], + [-129.15102539062497, 52.605322265625006], + [-129.25048828125, 52.72216796875], + [-129.26777343749995, 52.77236328125002], + [-129.26352539062498, 52.80078125000003], + [-129.24594726562498, 52.81123046875004], + [-129.21503906249995, 52.80385742187505], + [-129.18618164062497, 52.79125976562506], + [-128.99399414062498, 52.661718750000034], + [-128.94033203124997, 52.60073242187505], + [-128.93686523437498, 52.51000976562503] + ] + ], + [ + [ + [-129.313720703125, 52.99218750000003], + [-129.32871093750003, 52.984228515625006], + [-129.37001953125002, 52.99760742187499], + [-129.40971679687502, 53.02373046874999], + [-129.47778320312503, 53.09775390625006], + [-129.50014648437497, 53.12890625], + [-129.51474609375, 53.17939453124998], + [-129.50107421874998, 53.188330078125034], + [-129.47143554687497, 53.18300781250002], + [-129.45073242187502, 53.17470703125002], + [-129.34350585937503, 53.052783203125045], + [-129.313720703125, 52.99218750000003] + ] + ], + [ + [ + [-80.73168945312494, 52.74726562499998], + [-80.80234374999995, 52.733984375], + [-81.00986328124995, 52.76064453125002], + [-81.09658203124994, 52.779882812500034], + [-81.35224609374998, 52.85200195312498], + [-81.83906249999995, 52.957910156249994], + [-82.00502929687502, 53.01049804687503], + [-82.03925781249998, 53.04990234374998], + [-81.95112304687495, 53.132226562499966], + [-81.90136718749994, 53.16557617187502], + [-81.84731445312494, 53.18627929687497], + [-81.33535156250002, 53.224267578124994], + [-81.135595703125, 53.20581054687503], + [-80.90039062499994, 53.03715820312496], + [-80.76533203124995, 52.92324218750002], + [-80.71044921874997, 52.83159179687502], + [-80.70952148437496, 52.78740234374999], + [-80.73168945312494, 52.74726562499998] + ] + ], + [ + [ + [-131.7537109375, 53.195556640625], + [-131.65234375, 53.102978515624955], + [-131.62216796875, 53.020068359375045], + [-131.63466796874997, 52.92216796874999], + [-131.795263671875, 52.88505859374999], + [-131.8796875, 52.91464843750006], + [-131.91635742187498, 52.90913085937498], + [-131.97177734374998, 52.87983398437498], + [-131.90439453125003, 52.86669921875006], + [-131.81005859375, 52.818701171875034], + [-131.727294921875, 52.75639648437496], + [-131.61059570312494, 52.745214843750006], + [-131.45522460937502, 52.70170898437502], + [-131.572802734375, 52.623339843750045], + [-131.59057617187494, 52.578222656250006], + [-131.443896484375, 52.45332031250004], + [-131.42998046875002, 52.422119140625], + [-131.38300781250004, 52.41572265625001], + [-131.27363281250007, 52.425830078125045], + [-131.25971679687495, 52.415917968749966], + [-131.2599609375, 52.39003906250002], + [-131.32705078125002, 52.317529296874994], + [-131.31992187499998, 52.30307617187498], + [-131.25917968749997, 52.291650390624966], + [-131.142626953125, 52.291113281250034], + [-131.116162109375, 52.219091796875006], + [-131.221533203125, 52.15361328124999], + [-131.42187, 52.237988281249955], + [-131.51113281250002, 52.322070312500045], + [-131.56206054687502, 52.39995117187499], + [-131.62368164062497, 52.443994140624994], + [-131.80966796875, 52.54169921875001], + [-132.092236328125, 52.752783203125034], + [-132.16508789062493, 52.783300781250034], + [-132.23857421875, 52.86679687499998], + [-132.2599609375, 52.906982421875], + [-132.25810546875, 52.93388671874999], + [-132.22954101562502, 52.948095703125034], + [-132.14492187500002, 52.95747070312498], + [-132.14375, 52.99931640624999], + [-132.46870117187498, 53.071875], + [-132.50483398437495, 53.08671875000002], + [-132.54677734374997, 53.1375], + [-132.52421875, 53.144921875], + [-132.34541015625, 53.136083984375034], + [-132.15390624999998, 53.160498046875034], + [-132.0359375, 53.17915039062504], + [-131.98950195312494, 53.20195312499996], + [-131.89311523437496, 53.23144531250003], + [-131.85346679687507, 53.22973632812503], + [-131.7537109375, 53.195556640625] + ] + ], + [ + [ + [-128.55244140624998, 52.93974609375002], + [-128.50654296875004, 52.620703125000034], + [-128.50991210937502, 52.51860351562502], + [-128.57680664062497, 52.451806640624994], + [-128.6240234375, 52.33989257812502], + [-128.678955078125, 52.289648437500006], + [-128.730908203125, 52.356542968750034], + [-128.73554687499998, 52.467724609374955], + [-128.74941406249997, 52.556054687499994], + [-128.76645507812498, 52.59838867187503], + [-128.74633789062494, 52.763378906249955], + [-128.76962890624998, 52.75122070312497], + [-128.83120117187502, 52.67880859375006], + [-128.89980468749997, 52.67382812500003], + [-129.02285156249997, 52.75595703125006], + [-129.08471679687497, 52.82246093750001], + [-129.094873046875, 52.89184570312503], + [-129.175927734375, 52.964941406250006], + [-129.184326171875, 52.99067382812501], + [-129.177685546875, 53.017919921875034], + [-129.111083984375, 53.090673828125034], + [-129.08408203125003, 53.13969726562499], + [-129.0603515625, 53.240625], + [-129.033251953125, 53.27993164062505], + [-128.97021484375, 53.27436523437498], + [-128.85771484375, 53.22856445312496], + [-128.740380859375, 53.178857421874966], + [-128.63266601562498, 53.1125], + [-128.55244140624998, 52.93974609375002] + ] + ], + [ + [ + [-129.167724609375, 53.11787109374998], + [-129.17324218749997, 53.11074218750002], + [-129.27685546875006, 53.11093749999998], + [-129.30571289062496, 53.12114257812502], + [-129.32387695312502, 53.142138671875045], + [-129.33125, 53.17397460937505], + [-129.31435546874997, 53.21230468750002], + [-129.253076171875, 53.285498046875034], + [-129.25117187500004, 53.31669921874999], + [-129.23818359374997, 53.33007812500006], + [-129.19521484375002, 53.293212890625], + [-129.17700195312503, 53.25913085937498], + [-129.167724609375, 53.11787109374998] + ] + ], + [ + [ + [-79.93823242187494, 53.30415039062501], + [-79.939306640625, 53.274267578125034], + [-80.00410156249995, 53.28007812499999], + [-80.03935546874996, 53.29716796874999], + [-80.06787109374997, 53.32407226562498], + [-80.07402343749999, 53.34428710937502], + [-80.04970703125002, 53.36445312500004], + [-79.97456054687498, 53.35224609375004], + [-79.93823242187494, 53.30415039062501] + ] + ], + [ + [ + [-129.84858398437498, 53.167919921874955], + [-129.86855468749997, 53.16450195312498], + [-129.934375, 53.176660156249966], + [-130.15141601562493, 53.34570312500003], + [-130.30566406250003, 53.407373046874994], + [-130.41074218750003, 53.490820312500006], + [-130.51757812500003, 53.54423828124999], + [-130.45200195312498, 53.63115234375002], + [-130.39482421875, 53.620410156250045], + [-130.19501953125004, 53.549658203125006], + [-130.03540039062503, 53.481103515624994], + [-129.94472656250002, 53.436376953125034], + [-129.75483398437498, 53.244775390624994], + [-129.76894531250002, 53.21728515624997], + [-129.84858398437498, 53.167919921874955] + ] + ], + [ + [ + [-130.236279296875, 53.95854492187502], + [-130.26723632812502, 53.92260742187506], + [-130.33754882812497, 53.866259765625045], + [-130.38422851562504, 53.84394531250001], + [-130.4072265625, 53.85551757812499], + [-130.470263671875, 53.86176757812501], + [-130.5375, 53.917871093749966], + [-130.58984375, 53.940283203125006], + [-130.62460937499998, 53.94140624999997], + [-130.64184570312503, 53.92114257812503], + [-130.64628906249996, 53.89404296875], + [-130.637890625, 53.860009765624994], + [-130.64370117187497, 53.84453125], + [-130.66357421875, 53.84755859375005], + [-130.68344726562498, 53.86347656250001], + [-130.703173828125, 53.892236328124994], + [-130.70727539062494, 53.921484375], + [-130.695703125, 53.951269531250034], + [-130.646923828125, 53.99125976562502], + [-130.49462890624997, 54.07416992187501], + [-130.44799804687497, 54.08901367187502], + [-130.39731445312503, 54.08569335937497], + [-130.31586914062495, 54.04692382812499], + [-130.29848632812497, 54.03564453125], + [-130.236279296875, 53.95854492187502] + ] + ], + [ + [ + [-132.65551757812503, 54.12749023437496], + [-132.56406250000003, 54.06865234374996], + [-132.34443359374995, 54.106054687500034], + [-132.30336914062497, 54.098876953125], + [-132.26162109374997, 54.07631835937502], + [-132.21591796874998, 54.028417968750034], + [-132.16611328124998, 53.95522460937505], + [-132.15512695312503, 53.87519531249998], + [-132.17509765625005, 53.846533203125006], + [-132.21450195312497, 53.81474609375002], + [-132.56489257812504, 53.687646484374966], + [-132.57412109374997, 53.67539062500006], + [-132.56713867187494, 53.66396484375002], + [-132.53466796875, 53.651708984375034], + [-132.464404296875, 53.6533203125], + [-132.18696289062504, 53.68481445312503], + [-132.17167968749993, 53.70683593749996], + [-132.15224609375, 53.806982421875034], + [-132.114013671875, 53.860156250000045], + [-132.11059570312503, 53.90029296875005], + [-132.13588867187502, 53.99584960937506], + [-132.134423828125, 54.03427734374998], + [-131.9408203125, 54.04199218750003], + [-131.81962890625, 54.077343749999955], + [-131.69594726562502, 54.143164062500034], + [-131.66762695312502, 54.14135742187503], + [-131.685400390625, 54.022802734375034], + [-131.70253906250002, 53.98637695312499], + [-131.82114257812503, 53.841503906249955], + [-131.88916015625006, 53.713964843750006], + [-131.92231445312504, 53.587890625], + [-131.92807617187498, 53.37919921875002], + [-131.957421875, 53.308691406250034], + [-132.01132812499998, 53.26518554687496], + [-132.34726562500003, 53.18920898437503], + [-132.52045898437504, 53.194042968749955], + [-132.67480468749994, 53.26318359375], + [-132.747509765625, 53.310498046874955], + [-132.692578125, 53.36787109375001], + [-132.65478515624994, 53.37055664062504], + [-132.54624023437498, 53.35927734375005], + [-132.46240234375003, 53.33789062500003], + [-132.425, 53.33696289062502], + [-132.43134765625, 53.350439453125006], + [-132.670166015625, 53.458593750000034], + [-132.84501953125, 53.507714843749994], + [-132.89799804687493, 53.56269531250001], + [-132.89956054687502, 53.605371093749994], + [-132.91337890625, 53.62919921874996], + [-133.05224609375003, 53.778125], + [-133.07949218749997, 53.837011718750034], + [-133.09765625000006, 53.920263671875034], + [-133.09794921875, 54.005615234375], + [-133.0638671875, 54.14404296875006], + [-133.04838867187493, 54.15893554687497], + [-132.991455078125, 54.1578125], + [-132.89306640625, 54.140771484374994], + [-132.65551757812503, 54.12749023437496] + ] + ], + [ + [ + [-130.92714843749997, 54.47905273437499], + [-130.95029296874998, 54.477783203125], + [-130.959033203125, 54.498681640624994], + [-130.95346679687503, 54.541845703125006], + [-130.92177734374997, 54.61489257812505], + [-130.90683593750003, 54.63178710937504], + [-130.77705078125004, 54.61889648437497], + [-130.75800781249998, 54.61376953125], + [-130.75341796875003, 54.59970703124998], + [-130.76337890625, 54.57670898437499], + [-130.805126953125, 54.543798828125034], + [-130.92714843749997, 54.47905273437499] + ] + ], + [ + [ + [-130.34941406249996, 54.814550781250034], + [-130.53549804687503, 54.748730468749955], + [-130.57534179687497, 54.769677734374966], + [-130.49326171874998, 54.834179687499955], + [-130.312548828125, 54.945947265624994], + [-130.2140625, 55.02587890625003], + [-130.20390625, 54.94702148437503], + [-130.34941406249996, 54.814550781250034] + ] + ], + [ + [ + [-60.994482421875006, 56.03930664062497], + [-60.98271484375002, 56.01513671875003], + [-61.13701171874999, 56.032568359375034], + [-61.191308593749966, 56.04785156250003], + [-61.19584960937499, 56.06391601562501], + [-61.188183593749955, 56.08896484374998], + [-61.157568359375006, 56.11835937500001], + [-61.0869140625, 56.14082031249998], + [-61.04853515625001, 56.129248046875006], + [-60.96640624999998, 56.09882812500004], + [-60.95537109374993, 56.080419921875006], + [-60.994482421875006, 56.03930664062497] + ] + ], + [ + [ + [-78.82651367187495, 56.14531249999999], + [-78.877294921875, 56.131445312500006], + [-78.91381835937497, 56.13281250000003], + [-78.90703125000002, 56.166357421875034], + [-78.85688476562501, 56.232080078124994], + [-78.82841796874999, 56.289843750000045], + [-78.82158203125002, 56.33964843749999], + [-78.79941406250003, 56.38330078125], + [-78.76186523437502, 56.42070312499996], + [-78.72451171874997, 56.439208984375], + [-78.66875, 56.438623046874966], + [-78.65717773437501, 56.31738281249997], + [-78.67280273437498, 56.26049804687503], + [-78.71015624999995, 56.212890625], + [-78.761376953125, 56.17451171874998], + [-78.82651367187495, 56.14531249999999] + ] + ], + [ + [ + [-79.97758789062499, 56.20703125000006], + [-80.02861328124999, 56.19941406250001], + [-80.0888671875, 56.21386718750003], + [-80.057470703125, 56.28735351562497], + [-80.00507812499998, 56.31791992187499], + [-79.87446289062493, 56.34843749999999], + [-79.8521484375, 56.3671875], + [-79.81040039062503, 56.37651367187502], + [-79.749169921875, 56.37651367187502], + [-79.68100585937495, 56.40395507812502], + [-79.605859375, 56.458837890625006], + [-79.57973632812502, 56.466357421875045], + [-79.63256835937503, 56.38652343750002], + [-79.68793945312495, 56.32680664062502], + [-79.97758789062499, 56.20703125000006] + ] + ], + [ + [ + [-78.93559570312496, 56.26606445312498], + [-79.01796874999997, 56.16499023437501], + [-79.08388671875, 56.06787109375003], + [-79.17548828124998, 55.88505859374999], + [-79.22783203124999, 55.878515625], + [-79.27363281250001, 55.92246093749998], + [-79.14228515624998, 56.136425781249955], + [-79.13608398437495, 56.160253906250034], + [-79.14228515624998, 56.18071289062502], + [-79.18212890625, 56.21215820312503], + [-79.22182617187502, 56.17597656250004], + [-79.40742187499998, 55.93486328125002], + [-79.45532226562497, 55.896191406249955], + [-79.4951171875, 55.87475585937503], + [-79.52675781249997, 55.87065429687499], + [-79.60571289062497, 55.875683593749955], + [-79.76474609374995, 55.80678710937505], + [-79.49746093749994, 56.09316406250002], + [-79.49467773437502, 56.11499023437503], + [-79.54472656249999, 56.12836914062501], + [-79.56455078125003, 56.120947265625006], + [-79.781103515625, 55.94057617187502], + [-79.90458984374993, 55.87104492187498], + [-79.9875, 55.89213867187502], + [-80.00825195312501, 55.911035156249966], + [-80.00078124999999, 55.93208007812498], + [-79.79003906249997, 56.11416015625005], + [-79.59633789062502, 56.244482421875034], + [-79.51528320312494, 56.32651367187506], + [-79.48237304687498, 56.40380859375], + [-79.46791992187497, 56.460351562499966], + [-79.46894531250001, 56.52260742187502], + [-79.45888671875, 56.53974609374998], + [-79.44765625000002, 56.53657226562504], + [-79.435302734375, 56.513037109375034], + [-79.43203124999994, 56.44746093750001], + [-79.47626953124998, 56.312841796875034], + [-79.51181640625003, 56.24658203125003], + [-79.55419921874997, 56.191992187500006], + [-79.53632812499995, 56.180078124999966], + [-79.45830078124996, 56.211083984374994], + [-79.39262695312499, 56.27646484374998], + [-79.33935546874997, 56.37631835937498], + [-79.30532226562497, 56.46308593749998], + [-79.27241210937493, 56.600439453125006], + [-79.26113281249994, 56.59565429687498], + [-79.245751953125, 56.56826171875002], + [-79.21044921875, 56.54892578124998], + [-79.15517578124994, 56.53759765624997], + [-79.12353515624997, 56.51997070312504], + [-79.10024414062494, 56.47392578124999], + [-79.07773437499998, 56.45361328125], + [-78.99497070312498, 56.436425781249966], + [-78.96318359374999, 56.421728515625006], + [-78.94033203124997, 56.37143554687506], + [-78.94243164062493, 56.34492187499998], + [-78.93120117187496, 56.32792968749999], + [-78.90664062500002, 56.32041015625006], + [-78.93559570312496, 56.26606445312498] + ] + ], + [ + [ + [-79.5181640625, 56.65668945312498], + [-79.553466796875, 56.643847656250045], + [-79.57739257812497, 56.644921875], + [-79.55073242187495, 56.733496093750006], + [-79.58173828124998, 56.76484375000001], + [-79.58354492187499, 56.78095703125001], + [-79.57011718750002, 56.79570312499999], + [-79.55288085937497, 56.798730468749966], + [-79.51123046875, 56.77143554687501], + [-79.49106445312498, 56.74267578125003], + [-79.48217773437494, 56.71440429687502], + [-79.48457031249998, 56.68652343750003], + [-79.49653320312493, 56.66728515625002], + [-79.5181640625, 56.65668945312498] + ] + ], + [ + [ + [-79.86699218750002, 56.77456054687502], + [-79.89448242187501, 56.75712890625002], + [-79.94365234374999, 56.77675781250002], + [-79.94570312499997, 56.82690429687503], + [-79.89814453124995, 56.865283203125045], + [-79.86054687499993, 56.86352539062503], + [-79.82666015624997, 56.84311523437506], + [-79.83500976562496, 56.816015625000034], + [-79.86699218750002, 56.77456054687502] + ] + ], + [ + [ + [-61.743603515624955, 57.55458984375005], + [-61.65952148437495, 57.52495117187496], + [-61.6375, 57.41606445312499], + [-61.79526367187498, 57.422460937500034], + [-61.97548828125002, 57.49541015624999], + [-62.01123046875003, 57.54848632812505], + [-62.007226562499994, 57.55761718750003], + [-61.98330078125002, 57.566748046875034], + [-61.9375, 57.55410156250002], + [-61.89306640625003, 57.573144531249994], + [-61.848339843749955, 57.57934570312503], + [-61.743603515624955, 57.55458984375005] + ] + ], + [ + [ + [-79.71650390624998, 57.515527343749994], + [-79.73222656249999, 57.507519531249955], + [-79.77519531249996, 57.514453125000045], + [-79.79204101562502, 57.448583984375034], + [-79.80844726562498, 57.44243164062502], + [-79.838232421875, 57.483007812500034], + [-79.81591796875, 57.517724609374994], + [-79.81914062499993, 57.54160156249998], + [-79.81083984374993, 57.55927734375001], + [-79.76787109374996, 57.59873046874998], + [-79.74257812499997, 57.60795898437499], + [-79.72670898437502, 57.604589843750006], + [-79.7134765625, 57.555029296875034], + [-79.71650390624998, 57.515527343749994] + ] + ], + [ + [ + [-69.16005859375, 59.04023437500001], + [-69.22084960937494, 58.967578125000045], + [-69.30170898437498, 58.97661132812502], + [-69.33081054687497, 58.96162109374998], + [-69.35283203125002, 58.96074218749999], + [-69.31630859374994, 59.02895507812502], + [-69.31152343750003, 59.074804687500034], + [-69.32998046874997, 59.121240234374994], + [-69.30322265625003, 59.144873046875006], + [-69.19516601562495, 59.14614257812502], + [-69.19379882812493, 59.09277343749997], + [-69.18066406250003, 59.07270507812498], + [-69.15517578124997, 59.06357421874998], + [-69.16005859375, 59.04023437500001] + ] + ], + [ + [ + [-80.28525390624995, 59.624121093750034], + [-80.31723632812498, 59.621044921874955], + [-80.32465820312498, 59.63320312500002], + [-80.298974609375, 59.674169921875034], + [-80.25664062499999, 59.67915039062498], + [-80.20996093749997, 59.724609375], + [-80.16723632812497, 59.708886718749994], + [-80.18305664062501, 59.683496093749966], + [-80.24052734374999, 59.64492187500002], + [-80.28525390624995, 59.624121093750034] + ] + ], + [ + [ + [-80.06420898437494, 59.77080078124999], + [-80.16708984375003, 59.76386718750001], + [-80.12221679687497, 59.82319335937501], + [-80.083642578125, 59.85185546874999], + [-80.04116210937497, 59.87016601562499], + [-79.95585937499999, 59.87695312500003], + [-79.89863281249995, 59.85312], + [-79.94960937499997, 59.80991210937506], + [-80.06420898437494, 59.77080078124999] + ] + ], + [ + [ + [-64.40703125, 60.367089843749966], + [-64.44194335937496, 60.2978515625], + [-64.55820312500003, 60.3232421875], + [-64.73793945312497, 60.37563476562502], + [-64.80898437499997, 60.410400390625], + [-64.83378906249996, 60.44843750000001], + [-64.83642578124997, 60.50102539062499], + [-64.782568359375, 60.50961914062506], + [-64.64628906249996, 60.51459960937501], + [-64.53251953124996, 60.44140625], + [-64.49980468749996, 60.430224609375045], + [-64.40703125, 60.367089843749966] + ] + ], + [ + [ + [-68.23378906250002, 60.24091796875001], + [-68.32412109374997, 60.23291015625], + [-68.36523437499997, 60.25405273437502], + [-68.36787109374998, 60.314746093750045], + [-68.33828125, 60.36059570312497], + [-68.23476562499997, 60.45556640624997], + [-68.14189453124996, 60.56201171874997], + [-68.08759765624998, 60.58784179687501], + [-67.97802734374997, 60.570410156250006], + [-67.91420898437502, 60.53984374999999], + [-67.84755859374994, 60.48881835937499], + [-67.81884765624994, 60.449511718750074], + [-67.84423828124997, 60.39165039062499], + [-67.92231445312498, 60.33989257812502], + [-68.01230468750003, 60.304638671874955], + [-68.23378906250002, 60.24091796875001] + ] + ], + [ + [ + [-78.531640625, 60.72856445312499], + [-78.66889648437498, 60.716894531250006], + [-78.66909179687494, 60.73134765625002], + [-78.61201171874995, 60.772314453125006], + [-78.39956054687502, 60.80810546875003], + [-78.24169921875, 60.818652343750045], + [-78.27885742187493, 60.78388671874998], + [-78.3724609375, 60.756396484375045], + [-78.531640625, 60.72856445312499] + ] + ], + [ + [ + [-64.83261718749998, 61.366064453125006], + [-64.85683593749994, 61.354443359374955], + [-64.87978515625, 61.35708007812505], + [-64.954248046875, 61.41040039062497], + [-65.05439453124995, 61.43203125000002], + [-65.09150390624995, 61.452978515625034], + [-65.39389648437503, 61.562841796875034], + [-65.42680664062499, 61.61103515625001], + [-65.43212890625, 61.649511718750034], + [-65.33164062499995, 61.66826171875002], + [-65.12978515624994, 61.68569335937502], + [-64.95444335937503, 61.68510742187499], + [-64.78964843750003, 61.662207031250034], + [-64.75634765625, 61.63764648437501], + [-64.669580078125, 61.59301757812497], + [-64.69096679687499, 61.539355468750045], + [-64.69638671875003, 61.47148437499999], + [-64.73232421874997, 61.43842773437501], + [-64.78759765624997, 61.41328125000004], + [-64.83261718749998, 61.366064453125006] + ] + ], + [ + [ + [-93.04394531249997, 61.84409179687506], + [-93.08481445312495, 61.841699218749994], + [-93.17656249999999, 61.89272460937502], + [-93.19667968750002, 61.918554687500034], + [-93.07578124999998, 61.93500976562501], + [-92.993017578125, 61.88969726562502], + [-92.99995117187498, 61.86748046875002], + [-93.04394531249997, 61.84409179687506] + ] + ], + [ + [ + [-65.03056640624999, 61.879052734374966], + [-65.00805664062503, 61.870263671874966], + [-64.98105468750003, 61.88061523437503], + [-64.96054687500003, 61.87167968749998], + [-64.94667968749994, 61.84335937499998], + [-64.92353515624995, 61.82373046875], + [-64.86513671874994, 61.79814453125002], + [-64.84550781249993, 61.779882812500034], + [-64.8470703125, 61.76152343750002], + [-64.89658203124995, 61.73330078125005], + [-64.927734375, 61.73251953125006], + [-65.16591796874994, 61.79765625000002], + [-65.23027343749999, 61.86401367187503], + [-65.23535156249997, 61.89770507812506], + [-65.21054687499998, 61.928369140624994], + [-65.17392578124998, 61.943212890625006], + [-65.125634765625, 61.94223632812498], + [-65.06835937499997, 61.92602539062506], + [-65.03056640624999, 61.879052734374966] + ] + ], + [ + [ + [-79.54531250000002, 62.41171875000006], + [-79.46621093749997, 62.38452148437503], + [-79.33603515625, 62.293701171875], + [-79.28647460937495, 62.247656250000034], + [-79.27202148437493, 62.18598632812498], + [-79.30644531249993, 62.10351562499997], + [-79.32392578124995, 62.02607421875001], + [-79.37226562499993, 61.96777343750003], + [-79.46215820312494, 61.89409179687502], + [-79.54184570312503, 61.808007812499994], + [-79.61132812499997, 61.70961914062502], + [-79.66875, 61.644433593749966], + [-79.71425781249997, 61.61254882812503], + [-79.76333007812502, 61.59594726562503], + [-79.81611328124995, 61.59462890625002], + [-79.89633789062503, 61.63012695312497], + [-80.00415039062497, 61.702539062499994], + [-80.09199218750001, 61.74682617187503], + [-80.204931640625, 61.77724609375002], + [-80.26518554687496, 61.818212890625006], + [-80.27617187499996, 61.85859374999998], + [-80.27983398437499, 61.989501953125], + [-80.27509765625001, 62.054638671874955], + [-80.26005859374996, 62.10903320312502], + [-80.23466796874996, 62.152685546875034], + [-80.17856445312498, 62.21279296875002], + [-80.02158203124998, 62.34296874999998], + [-79.9267578125, 62.39287109375002], + [-79.86806640624997, 62.404345703125045], + [-79.712548828125, 62.39501953125003], + [-79.64956054687494, 62.39829101562498], + [-79.59765625000003, 62.413232421874994], + [-79.54531250000002, 62.41171875000006] + ] + ], + [ + [ + [-64.82382812499998, 62.558740234374994], + [-64.63183593750003, 62.54799804687502], + [-64.51533203125001, 62.55180664062499], + [-64.46503906249998, 62.535937500000045], + [-64.41806640625, 62.487402343750006], + [-64.47832031250002, 62.417871093749966], + [-64.54648437499995, 62.39140624999999], + [-64.65742187499998, 62.38359375000002], + [-64.83730468749997, 62.40625], + [-64.901220703125, 62.421044921874994], + [-64.95649414062498, 62.458349609375034], + [-64.93076171875, 62.485009765624966], + [-64.84194335937502, 62.49414062499997], + [-64.82709960937501, 62.504980468750034], + [-64.84985351562503, 62.525439453125045], + [-64.848779296875, 62.543310546875034], + [-64.82382812499998, 62.558740234374994] + ] + ], + [ + [ + [-74.00043945312495, 62.61840820312497], + [-74.05356445312495, 62.609667968750045], + [-74.253515625, 62.621972656249994], + [-74.49951171875003, 62.668798828125034], + [-74.62646484374997, 62.712744140625006], + [-74.61997070312498, 62.72631835937503], + [-74.56420898437497, 62.73330078125002], + [-74.50092773437495, 62.726513671874955], + [-74.394775390625, 62.69580078125003], + [-74.10893554687496, 62.680322265624966], + [-74.01679687500001, 62.662695312500034], + [-73.98818359374997, 62.636083984375006], + [-74.00043945312495, 62.61840820312497] + ] + ], + [ + [ + [-70.33706054687497, 62.548730468749994], + [-70.40634765624998, 62.544824218749994], + [-70.54150390624997, 62.55234375], + [-70.68657226562493, 62.57319335937498], + [-70.76606445312498, 62.596875], + [-70.83754882812497, 62.648095703124966], + [-70.85126953125001, 62.70434570312497], + [-70.98613281249996, 62.78779296875001], + [-71.13691406249995, 62.81591796874997], + [-71.22011718750002, 62.873925781249966], + [-71.13486328124998, 62.87797851562502], + [-71.01367187499997, 62.865332031250006], + [-70.834619140625, 62.840087890625], + [-70.67431640625003, 62.80703125000002], + [-70.44262695312497, 62.73378906250002], + [-70.36679687499998, 62.665820312500045], + [-70.29150390625003, 62.615966796875], + [-70.26884765625002, 62.57807617187501], + [-70.28857421874994, 62.56157226562502], + [-70.33706054687497, 62.548730468749994] + ] + ], + [ + [ + [-82.00048828124997, 62.95419921874998], + [-81.960546875, 62.92622070312498], + [-81.94858398437498, 62.884033203125], + [-81.96440429687499, 62.82763671875006], + [-81.99018554687501, 62.77631835937498], + [-82.02583007812498, 62.73007812499998], + [-82.11372070312495, 62.65224609375002], + [-82.38803710937498, 62.519140625], + [-82.49096679687497, 62.446582031250045], + [-82.56826171875002, 62.403222656249994], + [-83.01582031249998, 62.20991210937498], + [-83.07138671875, 62.20039062499998], + [-83.12968749999999, 62.20410156250003], + [-83.25239257812495, 62.232958984375045], + [-83.37680664062498, 62.238134765625034], + [-83.69887695312497, 62.16025390624998], + [-83.71440429687502, 62.17358398437503], + [-83.72861328124998, 62.257177734375006], + [-83.76093749999998, 62.303515625000045], + [-83.90312, 62.40249023437502], + [-83.91240234374993, 62.42553710937503], + [-83.91049804687498, 62.45415039062499], + [-83.899267578125, 62.476464843749994], + [-83.7390625, 62.56884765625], + [-83.37641601562498, 62.904931640624994], + [-83.28945312499994, 62.92158203125001], + [-83.11093749999998, 62.884130859375006], + [-83.02626953124997, 62.87207031250006], + [-82.96577148437498, 62.873925781249966], + [-82.7064453125, 62.94453124999998], + [-82.459716796875, 62.936181640624966], + [-82.23476562500002, 62.97744140625002], + [-82.129248046875, 62.977685546874966], + [-82.047607421875, 62.970556640625034], + [-82.00048828124997, 62.95419921874998] + ] + ], + [ + [ + [-77.87670898437497, 63.470556640625034], + [-77.79208984374998, 63.427832031250034], + [-77.7037109375, 63.43085937500001], + [-77.65478515624997, 63.39599609375003], + [-77.5384765625, 63.28706054687504], + [-77.52729492187495, 63.268945312499994], + [-77.53271484374997, 63.233642578125], + [-77.59389648437502, 63.18842773437501], + [-77.65766601562495, 63.164599609375045], + [-77.79145507812493, 63.12958984375001], + [-77.94243164062496, 63.11440429687502], + [-78.02441406249997, 63.138867187499955], + [-78.25595703124998, 63.23984375], + [-78.46875, 63.35791015625], + [-78.536767578125, 63.423730468749994], + [-78.50732421875003, 63.45112304687498], + [-78.41728515624999, 63.469970703125], + [-78.23491210937496, 63.48955078124999], + [-77.933935546875, 63.478955078124955], + [-77.87670898437497, 63.470556640625034] + ] + ], + [ + [ + [-76.67758789062503, 63.393945312499966], + [-76.78315429687495, 63.38403320312497], + [-76.92187, 63.406347656250006], + [-77.0572265625, 63.449755859375045], + [-77.36474609374994, 63.588330078124955], + [-77.13369140624997, 63.68203125000002], + [-76.76362304687498, 63.57358398437506], + [-76.65244140624998, 63.503564453124994], + [-76.67758789062503, 63.393945312499966] + ] + ], + [ + [ + [-77.64208984374997, 63.99189453125001], + [-77.71406249999998, 63.94570312500002], + [-77.92880859375003, 63.96201171875006], + [-77.95791015625, 63.97602539062498], + [-77.96596679687497, 63.99291992187503], + [-77.93134765625001, 64.01479492187497], + [-77.71079101562503, 64.03564453125003], + [-77.61728515624998, 64.03720703125], + [-77.56938476562499, 64.03041992187505], + [-77.56362304687497, 64.02207031250003], + [-77.64208984374997, 63.99189453125001] + ] + ], + [ + [ + [-84.91962890624995, 65.26108398437503], + [-84.88510742187503, 65.24897460937495], + [-84.84208984374999, 65.25590820312505], + [-84.77128906249993, 65.30527343749998], + [-84.6125, 65.44731445312505], + [-84.56791992187499, 65.46064453125001], + [-84.50112304687497, 65.45844726562501], + [-84.26640624999993, 65.36723632812499], + [-84.17998046874999, 65.31630859375], + [-84.13349609374995, 65.24545898437503], + [-84.08486328125, 65.21782226562502], + [-83.90009765625001, 65.18125], + [-83.72255859375, 65.16899414062502], + [-83.49077148437502, 65.13178710937498], + [-83.40712890625002, 65.10390625], + [-83.22226562500003, 64.96796875000001], + [-83.20097656249996, 64.95966796874998], + [-82.99057617187498, 64.90410156250005], + [-82.667626953125, 64.78032226562505], + [-82.58579101562503, 64.76191406250004], + [-82.27167968749998, 64.72114257812498], + [-82.15888671875001, 64.690673828125], + [-82.05, 64.64428710937506], + [-81.92890624999995, 64.55942382812498], + [-81.78720703124995, 64.42597656249998], + [-81.67612304687498, 64.21264648437503], + [-81.66738281249997, 64.17050781249998], + [-81.68090820312497, 64.14555664062505], + [-81.72094726562497, 64.11889648437503], + [-81.90263671874993, 64.03125], + [-81.88710937499997, 64.01640625000002], + [-81.71611328124996, 64.021875], + [-81.33564453124998, 64.07578125000003], + [-81.10405273437496, 64.03710937499997], + [-81.023583984375, 64.03105468749999], + [-81.00502929687494, 64.03330078125], + [-80.921142578125, 64.10048828125002], + [-80.82895507812495, 64.08994140625], + [-80.69428710937498, 64.02475585937503], + [-80.60756835937497, 63.972070312499966], + [-80.56884765625, 63.931933593750045], + [-80.57919921874998, 63.909228515625045], + [-80.66826171874999, 63.90146484374998], + [-80.45058593749997, 63.86293945312502], + [-80.26132812499995, 63.801953124999955], + [-80.30205078124999, 63.76220703125003], + [-80.50405273437494, 63.673779296874955], + [-80.71176757812498, 63.59638671874998], + [-80.95351562500002, 63.480273437500045], + [-81.01386718749998, 63.462548828124994], + [-81.04638671875003, 63.461572265624966], + [-81.1796875, 63.48320312500002], + [-81.37172851562497, 63.53808593750003], + [-81.96333007812495, 63.664453125], + [-82.14599609374997, 63.69116210937503], + [-82.378125, 63.706787109375], + [-82.41171875, 63.73652343750004], + [-82.46708984375002, 63.92695312500001], + [-82.57148437499995, 63.96069335937506], + [-82.9296875, 64.00043945312498], + [-83.03388671875001, 64.02324218749999], + [-83.038671875, 64.06142578124997], + [-83.01616210937496, 64.12700195312499], + [-83.06513671874998, 64.15903320312503], + [-83.185546875, 64.15751953124999], + [-83.30395507812497, 64.14379882812506], + [-83.49433593749993, 64.09921875000003], + [-83.58359375, 64.05810546875], + [-83.61708984375, 64.01342773437506], + [-83.63798828124999, 63.917822265625006], + [-83.66162109375, 63.872607421875045], + [-83.728271484375, 63.813378906249966], + [-84.022119140625, 63.659863281249955], + [-84.1416015625, 63.61372070312498], + [-84.26044921874995, 63.60048828125002], + [-84.30761718749997, 63.58579101562506], + [-84.3875, 63.529101562500045], + [-84.50620117187503, 63.390039062499966], + [-84.55458984375002, 63.35], + [-84.63291015625, 63.30922851562502], + [-84.795556640625, 63.246923828125034], + [-84.96152343749998, 63.19721679687504], + [-85.238134765625, 63.13930664062505], + [-85.39262695312496, 63.119677734375045], + [-85.49550781249997, 63.13911132812501], + [-85.56611328124995, 63.27089843750002], + [-85.71416015625002, 63.657958984375], + [-85.73872070312495, 63.68413085937502], + [-85.76894531249997, 63.70034179687502], + [-85.80468749999997, 63.70654296875006], + [-86.3015625, 63.656787109375045], + [-86.57568359375003, 63.66230468750001], + [-86.84687, 63.575292968750034], + [-86.91523437500001, 63.568994140624994], + [-87.05292968749998, 63.57177734375003], + [-87.15190429687499, 63.58564453125001], + [-87.1771484375, 63.595117187499994], + [-87.19384765625, 63.63281250000003], + [-87.18891601562498, 63.672265625], + [-87.15439453124998, 63.714892578125074], + [-87.03193359374998, 63.83041992187498], + [-86.93203124999997, 63.90166015625002], + [-86.88603515625002, 63.923730468749966], + [-86.421728515625, 64.05156249999999], + [-86.30859374999997, 64.09365234375005], + [-86.252099609375, 64.13686523437497], + [-86.25219726562503, 64.18125], + [-86.27416992187497, 64.23803710937497], + [-86.35449218749997, 64.37651367187502], + [-86.37490234374997, 64.50297851562505], + [-86.37426757812503, 64.56582031249997], + [-86.34384765625003, 64.662353515625], + [-86.22763671874998, 64.89633789062498], + [-86.18828125, 65.01030273437502], + [-86.11420898437498, 65.41728515625005], + [-86.074609375, 65.533837890625], + [-86.01708984375, 65.64028320312502], + [-85.96166992187497, 65.704248046875], + [-85.81396484375, 65.83193359374997], + [-85.69907226562495, 65.883154296875], + [-85.55468750000003, 65.91865234374995], + [-85.52304687499998, 65.91455078125003], + [-85.49550781249997, 65.89970703125002], + [-85.44243164062499, 65.845556640625], + [-85.24111328125, 65.7955078125], + [-85.17622070312501, 65.746875], + [-85.13037109375, 65.69291992187499], + [-85.10537109374997, 65.622705078125], + [-85.13032226562498, 65.59208984375005], + [-85.226318359375, 65.54575195312503], + [-85.24277343749998, 65.52622070312503], + [-85.23994140624993, 65.51030273437499], + [-85.05605468749997, 65.43740234374997], + [-84.91962890624995, 65.26108398437503] + ] + ], + [ + [ + [-84.67475585937498, 65.575], + [-84.72700195312498, 65.56372070312506], + [-84.78291015625001, 65.570068359375], + [-84.83027343749995, 65.59897460937503], + [-84.86894531249993, 65.65053710937497], + [-84.93115234375, 65.68916015625001], + [-85.07197265625001, 65.73735351562507], + [-85.096337890625, 65.756201171875], + [-85.13627929687496, 65.82084960937502], + [-85.14404296875003, 65.88535156250003], + [-85.17416992187495, 65.94375], + [-85.17568359375, 65.972412109375], + [-85.14960937500001, 66.01538085937506], + [-85.031396484375, 66.02548828124998], + [-84.93857421875, 66.00854492187497], + [-84.91982421875, 65.99702148437504], + [-84.88945312499993, 65.97207031250002], + [-84.86953124999997, 65.94150390625], + [-84.75737304687496, 65.85893554687505], + [-84.69174804687498, 65.79316406249998], + [-84.60263671874995, 65.65737304687502], + [-84.60224609374995, 65.631494140625], + [-84.62626953124996, 65.60405273437499], + [-84.67475585937498, 65.575] + ] + ], + [ + [ + [-83.72597656249997, 65.796728515625], + [-83.597509765625, 65.757470703125], + [-83.46943359374993, 65.73520507812498], + [-83.26318359375, 65.72329101562505], + [-83.23374023437495, 65.71503906249995], + [-83.23393554687499, 65.69658203125002], + [-83.26367187500003, 65.66782226562503], + [-83.332421875, 65.63105468749998], + [-83.38144531250003, 65.62998046875003], + [-83.49541015624999, 65.65595703125001], + [-83.53710937499994, 65.66918945312503], + [-83.58320312500001, 65.6986328125], + [-83.60654296874998, 65.70136718750001], + [-83.63637695312502, 65.69150390625006], + [-83.64438476562495, 65.67851562499999], + [-83.63066406249999, 65.66235351562497], + [-83.64951171875003, 65.65776367187502], + [-83.78754882812498, 65.66889648437498], + [-83.80922851562497, 65.67832031250003], + [-83.79819335937503, 65.71000976562502], + [-83.70190429687494, 65.756201171875], + [-83.78652343749997, 65.77041015624997], + [-83.81357421874995, 65.7875], + [-83.93896484375003, 65.75844726562502], + [-84.00849609374998, 65.75151367187502], + [-84.11826171874995, 65.77177734375007], + [-84.12993164062502, 65.87744140625], + [-84.14321289062497, 65.91596679687495], + [-84.19321289062503, 65.94213867187506], + [-84.22294921874996, 65.96977539062499], + [-84.27089843749997, 65.99062], + [-84.3701171875, 66.01181640625003], + [-84.45058593749997, 66.06440429687498], + [-84.46738281250003, 66.08828124999997], + [-84.45634765624999, 66.10625], + [-84.40717773437501, 66.13100585937497], + [-84.12226562499995, 66.07783203124998], + [-83.95039062499995, 66.02749023437502], + [-83.78696289062495, 65.96577148437498], + [-83.70136718749993, 65.92011718750001], + [-83.69365234374996, 65.89038085937497], + [-83.71489257812502, 65.8607421875], + [-83.76513671874994, 65.83115234375], + [-83.72597656249997, 65.796728515625] + ] + ], + [ + [ + [-83.12348632812498, 66.2828125], + [-83.02387695312493, 66.270654296875], + [-82.94814453124997, 66.27192382812498], + [-82.93134765624998, 66.25732421875003], + [-83.01083984375003, 66.20844726562504], + [-83.05986328124999, 66.19926757812502], + [-83.14790039062498, 66.23422851562503], + [-83.21391601562502, 66.27705078124998], + [-83.232568359375, 66.30297851562503], + [-83.23784179687499, 66.33154296874997], + [-83.22226562500003, 66.33647460937499], + [-83.12348632812498, 66.2828125] + ] + ], + [ + [ + [-108.09272460937501, 67.00517578124999], + [-107.96645507812495, 66.99726562499998], + [-107.80551757812493, 66.99858398437507], + [-107.83334960937502, 66.92133789062495], + [-107.895166015625, 66.871875], + [-107.94394531249999, 66.8578125], + [-107.96513671874995, 66.88486328124998], + [-108.05971679687495, 66.946875], + [-108.09272460937501, 67.00517578124999] + ] + ], + [ + [ + [-62.681542968749966, 67.05629882812502], + [-62.805419921875, 67.02880859375], + [-62.87163085937499, 67.06259765625006], + [-62.825097656249994, 67.07211914062503], + [-62.756982421874994, 67.112548828125], + [-62.66440429687495, 67.14824218749999], + [-62.62529296874999, 67.17695312499998], + [-62.4697265625, 67.19003906249998], + [-62.41679687499996, 67.18847656250003], + [-62.39633789062495, 67.1783203125], + [-62.484619140625, 67.13422851562498], + [-62.681542968749966, 67.05629882812502] + ] + ], + [ + [ + [-107.89985351562497, 67.40180664062495], + [-107.95024414062503, 67.31821289062498], + [-107.96953125, 67.32602539062498], + [-108.00395507812496, 67.36591796875004], + [-108.07333984374996, 67.38505859375002], + [-108.15224609374997, 67.429443359375], + [-108.151123046875, 67.52480468749997], + [-108.12084960937497, 67.56816406250002], + [-108.12753906249999, 67.62856445312497], + [-108.04897460937498, 67.664892578125], + [-107.99086914062495, 67.62211914062499], + [-107.97490234374999, 67.54936523437502], + [-107.98935546875, 67.51357421875], + [-107.931787109375, 67.47646484375], + [-107.90517578125, 67.46704101562503], + [-107.89096679687493, 67.43720703124998], + [-107.89985351562497, 67.40180664062495] + ] + ], + [ + [ + [-109.16640625, 67.98237304687504], + [-109.05390624999998, 67.971875], + [-108.97050781249996, 67.97973632812503], + [-108.90961914062498, 67.93940429687498], + [-108.88603515624997, 67.89853515625], + [-108.89384765624997, 67.88447265624998], + [-108.920166015625, 67.87880859374997], + [-109.09624023437499, 67.92402343749995], + [-109.16152343749997, 67.95170898437499], + [-109.18359375000003, 67.975], + [-109.16640625, 67.98237304687504] + ] + ], + [ + [ + [-73.621728515625, 67.783837890625], + [-74.10908203124998, 67.78251953124999], + [-74.37407226562496, 67.78959960937502], + [-74.48071289062503, 67.80488281250001], + [-74.573388671875, 67.82866210937507], + [-74.67861328125002, 67.90556640625002], + [-74.74599609374997, 67.98481445312498], + [-74.74926757812503, 68.01845703125], + [-74.73144531250003, 68.04877929687495], + [-74.70654296875003, 68.06708984374995], + [-74.37939453124997, 68.09345703125001], + [-74.11137695312502, 68.06059570312507], + [-73.880712890625, 68.02192382812501], + [-73.58403320312496, 68.01533203124998], + [-73.49375, 68.00063476562502], + [-73.45922851562503, 67.98989257812497], + [-73.43525390624993, 67.97001953124999], + [-73.40156249999998, 67.87871093750005], + [-73.39819335937503, 67.82993164062506], + [-73.40717773437498, 67.79306640625], + [-73.621728515625, 67.783837890625] + ] + ], + [ + [ + [-109.32314453124995, 67.990869140625], + [-109.36083984374999, 67.98759765625002], + [-109.49794921874994, 68.04702148437497], + [-109.46914062500002, 68.09799804687503], + [-109.34169921875, 68.04584960937498], + [-109.32353515625003, 68.01333007812502], + [-109.32314453124995, 67.990869140625] + ] + ], + [ + [ + [-86.59555664062498, 67.7359375], + [-86.63818359374997, 67.73486328125006], + [-86.70595703125, 67.75014648437497], + [-86.86108398437497, 67.81049804687501], + [-86.89252929687498, 67.836572265625], + [-86.90830078125, 67.86704101562498], + [-86.90844726562494, 67.90195312499998], + [-86.89458007812496, 67.93808593749998], + [-86.84707031249997, 68.01025390625003], + [-86.93774414062497, 68.06757812499998], + [-86.95981445312503, 68.10024414062497], + [-86.94916992187498, 68.11870117187499], + [-86.898681640625, 68.16289062500005], + [-86.88486328125003, 68.19052734374998], + [-86.83398437499997, 68.22968749999995], + [-86.70209960937501, 68.30561523437498], + [-86.569921875, 68.28769531250006], + [-86.45195312499993, 68.22548828125], + [-86.42114257812497, 68.18344726562503], + [-86.43032226562497, 68.13872070312499], + [-86.42001953125, 68.07392578125004], + [-86.39033203125001, 67.98891601562502], + [-86.38242187499998, 67.92729492187499], + [-86.39643554687501, 67.88896484375002], + [-86.446923828125, 67.8169921875], + [-86.4896484375, 67.78359375000002], + [-86.54604492187502, 67.75219726562503], + [-86.59555664062498, 67.7359375] + ] + ], + [ + [ + [-75.67587890624998, 68.32250976562506], + [-75.15380859375, 68.23403320312497], + [-75.10312, 68.201904296875], + [-75.07812, 68.17314453124999], + [-75.0634765625, 68.14121093750006], + [-75.06235351562503, 68.07539062499998], + [-75.07285156249995, 68.04902343750001], + [-75.12387695312495, 67.98525390625], + [-75.12734374999994, 67.965234375], + [-75.08637695312495, 67.75141601562495], + [-75.09052734375001, 67.634765625], + [-75.12729492187503, 67.53730468749995], + [-75.20195312499996, 67.45917968750001], + [-75.31450195312499, 67.40043945312505], + [-75.40009765625001, 67.36669921875], + [-75.78007812499996, 67.28354492187503], + [-76.04897460937494, 67.26201171874999], + [-76.33276367187494, 67.25810546874999], + [-76.69394531249998, 67.23583984375], + [-76.85883789062501, 67.24047851562506], + [-76.94418945312498, 67.25029296875002], + [-77.0048828125, 67.26694335937503], + [-77.075927734375, 67.31962890625002], + [-77.157080078125, 67.40834960937497], + [-77.22421875, 67.50820312499997], + [-77.30439453125001, 67.68510742187505], + [-77.30590820312497, 67.70610351562505], + [-77.22856445312502, 67.85009765625], + [-77.12587890624997, 67.94707031250002], + [-76.9447265625, 68.09096679687502], + [-76.740234375, 68.23125], + [-76.68823242187497, 68.25439453125003], + [-76.59580078124998, 68.27895507812497], + [-76.36445312500001, 68.31870117187498], + [-76.17280273437495, 68.30878906250001], + [-76.08828124999997, 68.31381835937506], + [-75.98276367187495, 68.33232421874999], + [-75.86650390624999, 68.33681640625002], + [-75.67587890624998, 68.32250976562506] + ] + ], + [ + [ + [-78.98271484374999, 68.19282226562501], + [-79.06406250000003, 68.18178710937497], + [-79.17402343749995, 68.23496093749998], + [-79.17475585937493, 68.26445312500002], + [-79.15346679687494, 68.33525390625007], + [-78.95258789062495, 68.35302734375006], + [-78.86870117187502, 68.31030273437506], + [-78.828515625, 68.26816406249998], + [-78.98271484374999, 68.19282226562501] + ] + ], + [ + [ + [-104.54067382812497, 68.405908203125], + [-104.59599609374995, 68.40219726562503], + [-104.69946289062499, 68.41826171875002], + [-104.85112304687497, 68.453955078125], + [-104.96523437499995, 68.49174804687507], + [-105.04174804687499, 68.53154296874999], + [-105.05136718749999, 68.55903320312501], + [-104.99399414062495, 68.57421875], + [-104.90727539062495, 68.58178710937503], + [-104.700390625, 68.57670898437505], + [-104.60200195312503, 68.56152343749997], + [-104.47211914062503, 68.50351562499998], + [-104.44453125, 68.47070312500003], + [-104.44047851562497, 68.44951171874999], + [-104.45712890624999, 68.43115234374997], + [-104.54067382812497, 68.405908203125] + ] + ], + [ + [ + [-74.880859375, 68.34868164062505], + [-74.959326171875, 68.34223632812498], + [-75.07250976562497, 68.40415039062498], + [-75.31015624999998, 68.474462890625], + [-75.40024414062503, 68.52548828125], + [-75.40341796874998, 68.55014648437506], + [-75.39619140625001, 68.58881835937504], + [-75.37016601562496, 68.63608398437498], + [-75.28740234374996, 68.68774414062503], + [-75.19975585937496, 68.69609375000005], + [-75.07470703124997, 68.68471679687502], + [-74.98364257812497, 68.64760742187502], + [-74.884765625, 68.54462890625001], + [-74.8189453125, 68.49443359374999], + [-74.79824218749997, 68.45795898437501], + [-74.83095703124997, 68.44072265625005], + [-74.82792968749996, 68.42377929687498], + [-74.81289062500002, 68.41333007812497], + [-74.81855468750001, 68.39409179687507], + [-74.84497070312497, 68.36596679687503], + [-74.880859375, 68.34868164062505] + ] + ], + [ + [ + [-101.84589843749994, 68.58632812499997], + [-101.88720703125001, 68.58496093750006], + [-101.94462890624999, 68.60283203125005], + [-102.26635742187499, 68.663671875], + [-102.30815429687497, 68.681982421875], + [-102.27050781250003, 68.70756835937507], + [-102.15332031249996, 68.74047851562503], + [-102.07436523437495, 68.7740234375], + [-102.01337890624995, 68.82539062500001], + [-101.82836914062501, 68.79897460937502], + [-101.75932617187499, 68.77460937499995], + [-101.73295898437495, 68.75341796875], + [-101.72163085937494, 68.72412109374997], + [-101.73203125000002, 68.65214843750005], + [-101.794287109375, 68.63686523437497], + [-101.84589843749994, 68.58632812499997] + ] + ], + [ + [ + [-100.21723632812497, 68.80668945312502], + [-100.248779296875, 68.77504882812505], + [-100.28793945312498, 68.76606445312498], + [-100.36572265625001, 68.72880859375005], + [-100.39731445312498, 68.72382812500001], + [-100.44257812499995, 68.74755859375003], + [-100.48066406249998, 68.78618164062502], + [-100.49692382812502, 68.792236328125], + [-100.52104492187496, 68.79067382812502], + [-100.57338867187497, 68.76606445312498], + [-100.59653320312496, 68.76640625000007], + [-100.61596679687501, 68.78291015624995], + [-100.62539062499998, 68.81591796875003], + [-100.62465820312501, 68.86528320312505], + [-100.59990234374995, 68.94135742187501], + [-100.59833984374998, 68.96909179687506], + [-100.61157226562501, 68.99018554687501], + [-100.600634765625, 69.00942382812502], + [-100.56547851562495, 69.02680664062501], + [-100.52031249999999, 69.03505859375], + [-100.41396484375, 69.028076171875], + [-100.329931640625, 68.99755859375], + [-100.28896484375001, 68.95766601562502], + [-100.20688476562499, 68.92617187500002], + [-100.17846679687497, 68.90390625], + [-100.21723632812497, 68.80668945312502] + ] + ], + [ + [ + [-99.99467773437502, 69.01352539062503], + [-100.01801757812497, 68.95400390625], + [-100.14130859374995, 68.96992187499995], + [-100.19570312500002, 68.991455078125], + [-100.24199218749995, 69.040380859375], + [-100.24736328124997, 69.05278320312505], + [-100.23706054687501, 69.07148437499995], + [-100.18696289062501, 69.114013671875], + [-100.153125, 69.12949218750003], + [-100.07280273437495, 69.11147460937502], + [-100.03535156249995, 69.086572265625], + [-100.00561523437501, 69.04711914062506], + [-99.99467773437502, 69.01352539062503] + ] + ], + [ + [ + [-90.49257812499997, 69.22109374999997], + [-90.57441406249993, 69.20942382812498], + [-90.62578125000002, 69.25092773437501], + [-90.66743164062498, 69.25947265624998], + [-90.685888671875, 69.28715820312502], + [-90.77158203124995, 69.29257812500006], + [-90.76567382812499, 69.33598632812502], + [-90.74238281249995, 69.35732421875002], + [-90.66279296875001, 69.37416992187497], + [-90.59970703125003, 69.36782226562502], + [-90.53984374999999, 69.324609375], + [-90.51064453125, 69.29042968749997], + [-90.4853515625, 69.24663085937502], + [-90.49257812499997, 69.22109374999997] + ] + ], + [ + [ + [-79.21064453124995, 68.845458984375], + [-79.27973632812501, 68.83872070312506], + [-79.36137695312493, 68.857666015625], + [-79.390478515625, 68.89018554687505], + [-79.40576171875, 68.92304687500001], + [-79.39116210937496, 68.93994140624997], + [-79.354736328125, 68.95590820312503], + [-79.30522460937496, 68.992333984375], + [-79.24267578125, 69.04926757812495], + [-79.14497070312498, 69.08745117187502], + [-78.93046874999999, 69.12290039062503], + [-78.9, 69.135400390625], + [-78.8041015625, 69.23510742187497], + [-78.771826171875, 69.252197265625], + [-78.66201171875002, 69.26235351562502], + [-78.65019531249999, 69.27519531250007], + [-78.6890625, 69.29975585937501], + [-78.6890625, 69.32509765625002], + [-78.65019531249999, 69.35122070312502], + [-78.59667968750003, 69.37060546875006], + [-78.45791015625, 69.389501953125], + [-78.33256835937496, 69.38603515624999], + [-78.30048828124998, 69.37871093750002], + [-78.27246093749997, 69.36123046875], + [-78.23408203124995, 69.31459960937502], + [-78.22895507812498, 69.30400390624999], + [-78.28701171875, 69.2626953125], + [-78.43896484374994, 69.19916992187504], + [-78.53291015625001, 69.14604492187505], + [-78.55175781250003, 69.12866210937497], + [-78.56030273437497, 69.10625], + [-78.59565429687498, 69.07905273437498], + [-78.70537109374996, 69.013671875], + [-78.77919921875, 68.95048828124999], + [-78.85268554687497, 68.915673828125], + [-79.05361328124994, 68.88291015625], + [-79.21064453124995, 68.845458984375] + ] + ], + [ + [ + [-90.1998046875, 69.419091796875], + [-90.17739257812497, 69.35708007812497], + [-90.26728515624998, 69.27290039062495], + [-90.29545898437496, 69.2578125], + [-90.33027343749993, 69.252197265625], + [-90.36406249999999, 69.26259765625], + [-90.46469726562498, 69.32871093750003], + [-90.49204101562503, 69.369873046875], + [-90.45512695312496, 69.390478515625], + [-90.37724609375002, 69.41621093750001], + [-90.32207031249996, 69.4287109375], + [-90.25283203124997, 69.41791992187501], + [-90.22856445312499, 69.43603515624997], + [-90.1998046875, 69.419091796875] + ] + ], + [ + [ + [-76.99536132812503, 69.14375], + [-77.12163085937499, 69.13212890625005], + [-77.21503906250001, 69.13808593750002], + [-77.27558593750001, 69.16166992187502], + [-77.32192382812502, 69.19360351562506], + [-77.37939453125, 69.2740234375], + [-77.35805664062502, 69.3115234375], + [-77.35151367187501, 69.378662109375], + [-77.34091796874998, 69.40385742187499], + [-77.31870117187498, 69.41630859375005], + [-77.18754882812502, 69.440087890625], + [-77.10917968749993, 69.43740234375], + [-76.99409179687493, 69.411767578125], + [-76.74570312499995, 69.40400390625001], + [-76.68408203125003, 69.38041992187502], + [-76.66884765625002, 69.36616210937504], + [-76.67001953125, 69.34858398437501], + [-76.68745117187498, 69.32768554687502], + [-76.81030273437497, 69.26674804687502], + [-76.86933593750001, 69.22485351562503], + [-76.91123046875003, 69.174658203125], + [-76.99536132812503, 69.14375] + ] + ], + [ + [ + [-101.171728515625, 69.39707031250003], + [-101.25351562499996, 69.38847656250005], + [-101.268505859375, 69.39057617187504], + [-101.2615234375, 69.41782226562498], + [-101.267626953125, 69.43149414062503], + [-101.28950195312501, 69.44125976562506], + [-101.21777343749997, 69.46293945312505], + [-101.20732421874997, 69.479833984375], + [-101.230126953125, 69.492822265625], + [-101.32846679687496, 69.51743164062503], + [-101.35649414062499, 69.53969726562505], + [-101.351318359375, 69.55922851562502], + [-101.31289062499998, 69.57607421875], + [-101.24487304687499, 69.57353515625002], + [-101.09833984374997, 69.540771484375], + [-101.03115234374997, 69.495458984375], + [-101.00063476562497, 69.4619140625], + [-101.04916992187499, 69.45693359374997], + [-101.08686523437494, 69.44335937500003], + [-101.12695312500003, 69.41469726562497], + [-101.171728515625, 69.39707031250003] + ] + ], + [ + [ + [-95.51367187499997, 69.57363281250002], + [-95.38090820312493, 69.50659179687506], + [-95.382080078125, 69.47407226562498], + [-95.39941406249997, 69.41977539062503], + [-95.43745117187498, 69.37846679687505], + [-95.496240234375, 69.35009765625006], + [-95.57851562499997, 69.33583984375], + [-95.68437, 69.33569335937506], + [-95.73012695312502, 69.34755859374997], + [-95.69589843749998, 69.38955078125], + [-95.67016601562497, 69.40200195312497], + [-95.66582031249999, 69.43896484375003], + [-95.68281249999998, 69.50029296875002], + [-95.70410156249997, 69.53803710937495], + [-95.76362304687501, 69.55961914062502], + [-95.80620117187499, 69.56049804687501], + [-95.81777343749994, 69.54057617187505], + [-95.79833984374997, 69.49980468749999], + [-95.81181640624996, 69.447021484375], + [-95.85820312500002, 69.38222656250002], + [-95.89345703125, 69.35175781250004], + [-95.95605468749994, 69.36713867187495], + [-95.9859375, 69.39189453125005], + [-95.97792968749997, 69.43271484375], + [-95.99477539062494, 69.46967773437498], + [-95.97885742187498, 69.50883789062505], + [-95.93623046875001, 69.56704101562502], + [-95.87583007812495, 69.60600585937505], + [-95.79775390624994, 69.62573242187497], + [-95.70664062500003, 69.62431640625005], + [-95.60249023437495, 69.601806640625], + [-95.51367187499997, 69.57363281250002] + ] + ], + [ + [ + [-139.043115234375, 69.57690429687497], + [-139.12573242187503, 69.53930664062506], + [-139.25698242187497, 69.57856445312495], + [-139.29140624999997, 69.59785156249998], + [-139.139599609375, 69.64960937499995], + [-139.07265624999997, 69.64765625000001], + [-138.93154296875, 69.61694335937497], + [-138.878857421875, 69.589697265625], + [-139.043115234375, 69.57690429687497] + ] + ], + [ + [ + [-67.91469726562494, 69.54096679687504], + [-67.940283203125, 69.53486328125004], + [-68.20234375000001, 69.58041992187498], + [-68.22138671874998, 69.61674804687502], + [-68.09326171875, 69.65703125000005], + [-67.989111328125, 69.67875976562505], + [-67.908837890625, 69.68183593749995], + [-67.8291015625, 69.675], + [-67.75458984375001, 69.63144531249998], + [-67.84492187499993, 69.59174804687498], + [-67.91469726562494, 69.54096679687504] + ] + ], + [ + [ + [-78.02910156249993, 69.71489257812502], + [-77.97783203124999, 69.66489257812506], + [-77.969140625, 69.63896484375002], + [-78.03999023437495, 69.6083984375], + [-78.30722656250003, 69.55180664062502], + [-78.47006835937498, 69.5025390625], + [-78.55239257812497, 69.491552734375], + [-78.66206054687493, 69.50263671874995], + [-78.7953125, 69.479736328125], + [-78.84819335937502, 69.4828125], + [-78.789306640625, 69.52314453124995], + [-78.57856445312498, 69.638818359375], + [-78.40185546874994, 69.650634765625], + [-78.34418945312501, 69.67480468750003], + [-78.29550781249995, 69.66713867187497], + [-78.26733398437497, 69.68715820312497], + [-78.26245117187497, 69.71684570312507], + [-78.20073242187502, 69.73950195312497], + [-78.14521484374998, 69.73920898437501], + [-78.02910156249993, 69.71489257812502] + ] + ], + [ + [ + [-79.43066406250003, 69.78779296874995], + [-79.39028320312497, 69.73041992187498], + [-79.36499023437497, 69.71235351562495], + [-79.40244140624995, 69.68515625], + [-79.55283203124995, 69.63085937500006], + [-79.88168945312498, 69.60869140625007], + [-80.04750976562502, 69.63432617187505], + [-79.97114257812498, 69.55634765624995], + [-79.95449218749997, 69.52348632812502], + [-79.97783203124993, 69.50966796874997], + [-80.04687, 69.51386718750001], + [-80.16147460937495, 69.53593749999999], + [-80.22734375, 69.56240234375005], + [-80.244482421875, 69.5931640625], + [-80.26865234375003, 69.6], + [-80.29970703124997, 69.58286132812503], + [-80.32958984375, 69.58676757812503], + [-80.39785156249997, 69.63261718750005], + [-80.44804687499999, 69.64970703125007], + [-80.77822265625002, 69.67700195312503], + [-80.794775390625, 69.68925781250005], + [-80.77753906249995, 69.7103515625], + [-80.72661132812499, 69.74042968749998], + [-80.65253906249998, 69.7505859375], + [-80.46591796874998, 69.73710937500002], + [-80.45068359375, 69.744775390625], + [-80.43833007812495, 69.78271484375], + [-80.42421875000002, 69.797607421875], + [-80.29492187499997, 69.79379882812503], + [-80.21367187499993, 69.80195312500001], + [-80.16884765624994, 69.78242187500001], + [-80.124609375, 69.73725585937495], + [-80.06176757812497, 69.74550781250005], + [-79.97084960937502, 69.73896484374995], + [-79.86958007812501, 69.75551757812505], + [-79.71484375, 69.79570312500005], + [-79.593994140625, 69.81049804687495], + [-79.43066406250003, 69.78779296874995] + ] + ], + [ + [ + [-97.439453125, 69.64267578125006], + [-97.40864257812495, 69.63076171875002], + [-97.35068359374995, 69.64086914062506], + [-97.30576171875003, 69.67348632812502], + [-97.278466796875, 69.67963867187495], + [-97.23608398437497, 69.67348632812502], + [-97.096337890625, 69.614990234375], + [-96.98906249999999, 69.55361328125002], + [-96.87519531249998, 69.51000976562503], + [-96.69453124999995, 69.47109375], + [-96.29995117187494, 69.34438476562505], + [-96.18374023437497, 69.25869140625], + [-96.06098632812493, 69.12543945312501], + [-95.95136718749998, 69.02373046874999], + [-95.85488281249994, 68.95356445312501], + [-95.7513671875, 68.89765624999998], + [-95.58549804687496, 68.83510742187502], + [-95.43754882812502, 68.88061523437497], + [-95.374169921875, 68.89213867187502], + [-95.31953124999995, 68.87319335937497], + [-95.26777343749998, 68.82607421874997], + [-95.29516601562497, 68.80502929687503], + [-95.35947265625, 68.77836914062502], + [-95.46557617187494, 68.74726562499998], + [-95.61420898437495, 68.74501953124997], + [-95.68564453125003, 68.73583984375006], + [-95.80214843749997, 68.68647460937504], + [-95.89462890624998, 68.62724609375005], + [-96.02402343750003, 68.60727539062498], + [-96.26762695312502, 68.50791015624998], + [-96.40156249999995, 68.47070312500003], + [-96.59882812499998, 68.46083984375], + [-97.00839843750003, 68.53867187500003], + [-97.263671875, 68.52773437500002], + [-97.47202148437498, 68.543701171875], + [-97.70478515624998, 68.62592773437495], + [-97.88535156249998, 68.6724609375], + [-98.23505859375001, 68.73935546875006], + [-98.25795898437497, 68.74926757812503], + [-98.273046875, 68.771875], + [-98.28017578124997, 68.80717773437502], + [-98.296044921875, 68.83076171875004], + [-98.320556640625, 68.84272460937498], + [-98.37558593750003, 68.84169921875002], + [-98.43183593749995, 68.818359375], + [-98.53964843749998, 68.79824218749997], + [-98.70380859374993, 68.80278320312502], + [-98.775244140625, 68.816748046875], + [-98.82963867187499, 68.83862304687503], + [-98.85913085937496, 68.86435546875003], + [-98.863720703125, 68.893798828125], + [-98.87885742187497, 68.91645507812498], + [-98.90449218749995, 68.93242187500005], + [-98.96401367187501, 68.93286132812506], + [-99.05737304687501, 68.91767578124998], + [-99.09384765624999, 68.89887695312495], + [-99.073388671875, 68.87656250000003], + [-99.09062, 68.86333007812499], + [-99.25400390625002, 68.86318359374997], + [-99.31796875, 68.87626953125007], + [-99.44086914062498, 68.91767578124998], + [-99.49467773437493, 68.95957031249998], + [-99.56406249999995, 69.03413085937498], + [-99.557373046875, 69.054296875], + [-99.51328125, 69.099609375], + [-99.455712890625, 69.13120117187503], + [-99.08544921874996, 69.149755859375], + [-98.91220703125002, 69.16757812499998], + [-98.72363281249997, 69.21914062500002], + [-98.50351562499998, 69.30830078124998], + [-98.45595703124997, 69.33466796875001], + [-98.45039062499998, 69.35405273437505], + [-98.46660156250002, 69.375], + [-98.53535156249998, 69.42631835937505], + [-98.55854492187501, 69.46142578125], + [-98.53671875, 69.47802734375], + [-98.44838867187494, 69.47954101562505], + [-98.494873046875, 69.499365234375], + [-98.53437, 69.52744140625003], + [-98.54824218749994, 69.54497070312505], + [-98.54599609375, 69.57290039062497], + [-98.47583007812503, 69.57905273437498], + [-98.38935546874998, 69.56503906250006], + [-98.22231445312497, 69.484521484375], + [-98.15576171875, 69.46884765625], + [-98.04135742187498, 69.456640625], + [-98.16298828124997, 69.51220703125003], + [-98.28881835937503, 69.62900390625003], + [-98.30449218749993, 69.66928710937498], + [-98.30122070312498, 69.69169921875002], + [-98.268212890625, 69.75444335937499], + [-98.23867187500002, 69.78002929687497], + [-98.20048828124996, 69.79697265625006], + [-98.08076171875001, 69.83305664062502], + [-97.88896484375002, 69.858251953125], + [-97.79072265624998, 69.86162109374999], + [-97.69121093749996, 69.84125976562501], + [-97.60434570312503, 69.80219726562495], + [-97.41137695312497, 69.73847656250004], + [-97.38256835937497, 69.71240234375006], + [-97.38569335937498, 69.70024414062507], + [-97.46015624999995, 69.68271484375003], + [-97.46943359374998, 69.66679687499999], + [-97.439453125, 69.64267578125006] + ] + ], + [ + [ + [-86.91303710937501, 70.11323242187501], + [-86.79877929687498, 70.10527343750007], + [-86.69121093750002, 70.11503906250002], + [-86.61274414062493, 70.10571289062497], + [-86.56337890625, 70.07724609375003], + [-86.53090820312497, 70.04765625000005], + [-86.51523437499995, 70.01704101562504], + [-86.55766601562499, 69.99531249999995], + [-86.73432617187501, 69.976318359375], + [-86.85493164062498, 69.98574218749997], + [-86.98398437499998, 70.0111328125], + [-87.043798828125, 69.999853515625], + [-87.19082031250002, 70.01855468749997], + [-87.26391601562497, 70.0439453125], + [-87.3232421875, 70.08012695312502], + [-87.32314453124997, 70.10224609374998], + [-87.168115234375, 70.12724609375002], + [-87.10727539062495, 70.14667968749998], + [-86.91303710937501, 70.11323242187501] + ] + ], + [ + [ + [-100.30834960937497, 70.49580078124995], + [-100.32124023437501, 70.4876953125], + [-100.53725585937497, 70.525], + [-100.620654296875, 70.54692382812507], + [-100.64775390625002, 70.563134765625], + [-100.66694335937501, 70.59624023437499], + [-100.67832031250002, 70.64619140624995], + [-100.63530273437496, 70.6703125], + [-100.53793945312502, 70.668603515625], + [-100.43393554687498, 70.6494140625], + [-100.27612304687497, 70.59462890625002], + [-100.32109374999999, 70.578369140625], + [-100.32324218749999, 70.54243164062495], + [-100.305517578125, 70.50839843750003], + [-100.30834960937497, 70.49580078124995] + ] + ], + [ + [ + [-74.70888671874997, 45.0038574218751], + [-74.76245117187494, 44.99907226562502], + [-74.85664062499995, 45.003906250000114], + [-74.99614257812496, 44.970117187499966], + [-75.17939453124998, 44.899365234375125], + [-75.40126953124997, 44.77226562499999], + [-75.79194335937498, 44.49707031250006], + [-75.81933593749997, 44.468017578125], + [-75.87592773437495, 44.416992187500085], + [-76.02021484375004, 44.36259765625002], + [-76.1511718749999, 44.30395507812497], + [-76.18579101562503, 44.24223632812502], + [-76.24853515624991, 44.21411132812497], + [-76.46459960937497, 44.05761718750006], + [-76.58613281249995, 43.924316406250085], + [-76.69648437499998, 43.78481445312508], + [-76.819970703125, 43.62880859375011], + [-77.07333984375, 43.62685546875005], + [-77.26669921874986, 43.62749023437502], + [-77.59653320312492, 43.62861328125007], + [-77.87924804687489, 43.62954101562508], + [-78.21479492187493, 43.63066406249993], + [-78.45825195312497, 43.63149414062511], + [-78.72041015624993, 43.62495117187501], + [-78.84555664062492, 43.58334960937506], + [-79.00249023437493, 43.52714843749999], + [-79.17187, 43.466552734375085], + [-79.0830566406249, 43.33139648437509], + [-79.05922851562494, 43.27807617187506], + [-79.066064453125, 43.10610351562502], + [-79.04799804687497, 43.08730468750008], + [-79.02905273437491, 43.06176757812503], + [-79.02617187499996, 43.01733398437506], + [-79.01166992187493, 42.99702148437498], + [-78.98076171874993, 42.98061523437502], + [-78.94599609374995, 42.961328125], + [-78.92084960937498, 42.93520507812502], + [-78.91508789062496, 42.90913085937504], + [-78.9392578124999, 42.86372070312501], + [-79.03671874999986, 42.80234374999995], + [-79.17373046875, 42.74853515625], + [-79.4462402343749, 42.65146484374995], + [-79.76201171874993, 42.53896484375011], + [-80.03574218749992, 42.44145507812496], + [-80.24755859374991, 42.366015625000045], + [-80.68261718749991, 42.29975585937504], + [-81.02822265624997, 42.247167968750006], + [-81.27763671874987, 42.20917968750007], + [-81.50732421874997, 42.10346679687504], + [-81.76093749999993, 41.98681640625006], + [-81.97416992187496, 41.88872070312499], + [-82.2133300781249, 41.778710937500136], + [-82.43906249999989, 41.6748535156251], + [-82.69003906249995, 41.675195312499994], + [-82.86621093749997, 41.753027343750034], + [-83.02998046874993, 41.83295898437498], + [-83.141943359375, 41.97587890624996], + [-83.14965820312497, 42.14194335937506], + [-83.10952148437497, 42.25068359375001], + [-83.07314453124994, 42.30029296874997], + [-83.0037109374999, 42.33173828124998], + [-82.86777343749992, 42.38520507812504], + [-82.74418945312496, 42.493457031250074], + [-82.64511718749995, 42.5580566406251], + [-82.54531249999997, 42.62470703124998], + [-82.4883300781249, 42.739501953125114], + [-82.41723632812497, 43.017382812500045], + [-82.40820312499991, 43.072656250000136], + [-82.30478515624989, 43.263232421875045], + [-82.19038085937495, 43.47407226562501], + [-82.137841796875, 43.570898437500034], + [-82.19658203124996, 43.82221679687507], + [-82.2407714843749, 44.01533203124998], + [-82.28125, 44.19223632812495], + [-82.32680664062494, 44.39155273437507], + [-82.36826171874995, 44.572998046875085], + [-82.40737304687491, 44.743945312500074], + [-82.4465820312499, 44.91552734375006], + [-82.48505859374993, 45.08374023437503], + [-82.51523437499995, 45.2043945312501], + [-82.55107421874987, 45.3473632812501], + [-82.760400390625, 45.4477050781251], + [-82.91933593749994, 45.51796875000002], + [-83.17929687499989, 45.63276367187498], + [-83.39731445312489, 45.729052734375045], + [-83.59267578125, 45.81713867187506], + [-83.46948242187503, 45.99467773437499], + [-83.48012695312497, 46.023730468750045], + [-83.524755859375, 46.05869140625006], + [-83.61596679687503, 46.116845703124994], + [-83.66928710937486, 46.122753906249955], + [-83.76318359374991, 46.10908203125001], + [-83.91303710937498, 46.07290039062511], + [-83.97778320312494, 46.08491210937507], + [-84.02919921874994, 46.1470214843751], + [-84.08837890624991, 46.226513671874955], + [-84.10776367187495, 46.28862304687502], + [-84.11518554687504, 46.37080078125004], + [-84.15048828124995, 46.44477539062501], + [-84.12812, 46.483593750000125], + [-84.12319335937497, 46.50292968749997], + [-84.12519531249995, 46.527246093750136], + [-84.1494628906249, 46.5427734375001], + [-84.1921874999999, 46.54956054687506], + [-84.33671875, 46.518505859375125], + [-84.40170898437486, 46.515625], + [-84.44047851562496, 46.49814453125006], + [-84.50156249999989, 46.461865234375125], + [-84.56176757812497, 46.45737304687509], + [-84.66577148437503, 46.54326171875002], + [-84.77939453124989, 46.63730468749998], + [-84.82705078124994, 46.766845703125085], + [-84.87597656249994, 46.89990234375003], + [-85.07006835937497, 46.97993164062498], + [-85.26411132812498, 47.05996093750011], + [-85.4582031249999, 47.139941406250074], + [-85.65224609375, 47.21997070312503], + [-85.84633789062494, 47.3], + [-86.04038085937495, 47.380029296875136], + [-86.23447265624995, 47.46005859375009], + [-86.42856445312489, 47.540087890625045], + [-86.49555664062504, 47.566601562500125], + [-86.67216796874996, 47.636425781249955], + [-86.92182617187493, 47.735205078125006], + [-87.20800781249997, 47.848486328125006], + [-87.49423828124992, 47.96176757812498], + [-87.74389648437497, 48.06054687500003], + [-87.92050781249989, 48.13037109375006], + [-87.98745117187494, 48.156884765625136], + [-88.16064453124997, 48.225390625000045], + [-88.37817382812497, 48.30307617187506], + [-88.61176757812504, 48.26401367187509], + [-88.89868164062497, 48.15571289062507], + [-89.06259765624986, 48.093798828125074], + [-89.18564453124989, 48.04741210937502], + [-89.27319335937497, 48.019970703125125], + [-89.45566406249992, 47.99624023437508], + [-89.5505859374999, 47.99990234375011], + [-89.77539062499997, 48.01533203125007], + [-89.90102539062497, 47.99545898437509], + [-89.99365234374991, 48.01533203125007], + [-90.03994140624994, 48.078173828125074], + [-90.09179687500003, 48.11811523437504], + [-90.3201171874999, 48.0991699218751], + [-90.60708007812494, 48.11259765624999], + [-90.74438476562491, 48.10458984374995], + [-90.79731445312495, 48.13105468750001], + [-90.84033203125003, 48.20053710937495], + [-90.9160644531249, 48.20913085937511], + [-91.04345703124991, 48.19370117187498], + [-91.22065429687495, 48.10458984374995], + [-91.38720703124997, 48.05854492187498], + [-91.51831054687494, 48.058300781250125], + [-91.64731445312495, 48.10458984374995], + [-91.85839843749994, 48.197558593750074], + [-92.00517578125002, 48.301855468750006], + [-92.17177734374994, 48.33837890624997], + [-92.29868164062495, 48.32890624999999], + [-92.3484375, 48.276611328125], + [-92.41459960937493, 48.276611328125], + [-92.46088867187504, 48.36586914062508], + [-92.50058593749995, 48.43535156250002], + [-92.58325195312491, 48.46508789062503], + [-92.73266601562489, 48.53183593749995], + [-92.83671875, 48.567773437499994], + [-92.99624023437494, 48.611816406250085], + [-93.05170898437495, 48.619873046875114], + [-93.15522460937493, 48.625341796875006], + [-93.25795898437497, 48.62885742187501], + [-93.37788085937498, 48.61655273437498], + [-93.46362304687494, 48.561279296875085], + [-93.56425781249993, 48.5369140625001], + [-93.70771484374995, 48.525439453125074], + [-93.80356445312492, 48.54892578125006], + [-93.85161132812496, 48.607275390625034], + [-94.05517578125003, 48.65903320312492], + [-94.41416015624989, 48.70410156250006], + [-94.6208984374999, 48.7426269531251], + [-94.6753417968749, 48.7744140625], + [-94.70507812499991, 48.808496093749994], + [-94.71254882812494, 48.8629882812501], + [-94.71279296874997, 48.863427734374994], + [-94.80346679687497, 49.0029296875], + [-94.84257812499996, 49.119189453125074], + [-94.86040039062493, 49.258593750000045], + [-94.85434570312495, 49.304589843749994], + [-94.87480468749993, 49.3190429687501], + [-94.93935546874994, 49.349414062500074], + [-95.15527343749997, 49.3696777343751], + [-95.15825195312496, 49.2030761718751], + [-95.16206054687493, 48.991748046875045], + [-95.39790039062493, 48.99316406249997], + [-95.82431640624995, 48.99316406249997], + [-96.25068359374993, 48.99316406249997], + [-96.67705078124993, 48.99316406249997], + [-97.10346679687504, 48.99316406249997], + [-97.52983398437493, 48.99316406249997], + [-97.95620117187494, 48.99316406249997], + [-98.38261718749996, 48.99316406249997], + [-98.80898437499995, 48.99316406249997], + [-99.23535156249994, 48.993115234375125], + [-99.66171874999995, 48.993115234375125], + [-100.08813476562496, 48.993115234375125], + [-100.51450195312495, 48.993115234375125], + [-100.94086914062504, 48.993115234375125], + [-101.36728515624988, 48.993115234375125], + [-101.79365234374995, 48.993115234375125], + [-102.22001953124996, 48.993115234375125], + [-102.64643554687497, 48.993115234375125], + [-103.07280273437496, 48.993115234375125], + [-103.49916992187505, 48.993115234375125], + [-103.92558593749989, 48.993115234375125], + [-104.35195312499997, 48.993115234375125], + [-104.77832031249997, 48.993115234375125], + [-105.20468749999988, 48.993115234375125], + [-105.63110351562497, 48.993115234375125], + [-106.05747070312489, 48.993115234375125], + [-106.48383789062497, 48.993115234375125], + [-106.91025390624989, 48.993115234375125], + [-107.33662109374998, 48.993115234375125], + [-107.76298828124989, 48.993115234375125], + [-108.18940429687498, 48.993115234375125], + [-108.6157714843749, 48.993115234375125], + [-109.04213867187498, 48.993115234375125], + [-109.4685546874999, 48.993066406250136], + [-109.894921875, 48.993066406250136], + [-110.3212890624999, 48.993066406250136], + [-110.7476562499999, 48.993066406250136], + [-111.17407226562491, 48.993066406250136], + [-111.6004394531249, 48.993066406250136], + [-112.02680664062491, 48.993066406250136], + [-112.45322265625, 48.993066406250136], + [-112.87958984374991, 48.993066406250136], + [-113.30595703124992, 48.993066406250136], + [-113.73237304687493, 48.993066406250136], + [-114.15874023437492, 48.993066406250136], + [-114.58510742187492, 48.993066406250136], + [-115.01152343750002, 48.993066406250136], + [-115.43789062499992, 48.993066406250136], + [-115.86425781249993, 48.993066406250136], + [-116.290625, 48.993066406250136], + [-116.71704101562493, 48.993066406250136], + [-117.14340820312493, 48.993066406250136], + [-117.56977539062493, 48.993066406250136], + [-117.99619140624993, 48.993066406250136], + [-118.42255859374994, 48.993066406250136], + [-118.84892578124993, 48.993066406250136], + [-119.27534179687494, 48.993066406250136], + [-119.70170898437495, 48.99301757812495], + [-120.12807617187494, 48.99301757812495], + [-120.55449218749995, 48.99301757812495], + [-120.98085937499995, 48.99301757812495], + [-121.40722656249994, 48.99301757812495], + [-121.83359374999995, 48.99301757812495], + [-122.26000976562496, 48.99301757812495], + [-122.68637695312495, 48.99301757812495], + [-122.78876953124994, 48.99301757812495], + [-122.82670898437495, 49.028417968750034], + [-122.9241699218749, 49.07465820312504], + [-122.96269531249993, 49.07460937500005], + [-123.002294921875, 49.06088867187509], + [-123.02724609374994, 49.03852539062498], + [-123.04921875, 48.993017578125034], + [-123.06328125, 48.97773437500001], + [-123.07729492187501, 48.980224609375], + [-123.08642578124991, 48.993017578125034], + [-123.11762695312497, 49.05634765625004], + [-123.10932617187497, 49.084619140625136], + [-123.07729492187492, 49.11835937500007], + [-123.07954101562494, 49.130615234375085], + [-123.15014648437493, 49.1210449218751], + [-123.18188476562491, 49.129492187500034], + [-123.19633789062502, 49.147705078125], + [-123.19106445312492, 49.219531250000074], + [-123.22944335937493, 49.260498046875085], + [-123.18393554687489, 49.27773437500002], + [-123.06728515624992, 49.29155273437502], + [-122.94765625, 49.29326171874999], + [-122.91298828124994, 49.32319335937507], + [-122.87910156249995, 49.39892578125003], + [-122.96445312499993, 49.32934570312506], + [-123.01552734374995, 49.32216796875002], + [-123.17426757812495, 49.34819335937499], + [-123.27675781249997, 49.34394531250001], + [-123.29052734374993, 49.35947265624998], + [-123.28627929687495, 49.374951171875125], + [-123.26406250000005, 49.39047851562509], + [-123.247705078125, 49.443017578125136], + [-123.22299804687493, 49.590478515624966], + [-123.19067382812493, 49.644287109375114], + [-123.17958984374998, 49.67353515625001], + [-123.1875, 49.680322265624994], + [-123.325, 49.577685546875045], + [-123.33666992187491, 49.54511718749998], + [-123.32241210937494, 49.51699218750011], + [-123.33564453124997, 49.45917968750004], + [-123.3989746093749, 49.441894531250085], + [-123.43696289062493, 49.45131835937505], + [-123.50820312500005, 49.402441406250034], + [-123.53056640624989, 49.39731445312506], + [-123.85893554687492, 49.48286132812507], + [-123.89184570312496, 49.494726562500006], + [-123.94838867187492, 49.53471679687499], + [-124.02861328125002, 49.602880859375006], + [-124.05380859375, 49.66171875000009], + [-124.02402343749988, 49.71132812500008], + [-123.99262695312497, 49.736181640625006], + [-123.95952148437489, 49.736181640625006], + [-123.92275390624995, 49.717529296875114], + [-123.847119140625, 49.63666992187498], + [-123.81718749999993, 49.58657226562508], + [-123.73906249999992, 49.593554687500074], + [-123.61274414062494, 49.65756835937498], + [-123.58247070312498, 49.68125], + [-123.70830078124996, 49.65693359375001], + [-123.76269531250003, 49.65849609374999], + [-123.81801757812492, 49.68515625000009], + [-123.87441406250005, 49.736816406250114], + [-123.9038085937499, 49.79545898437499], + [-123.90424804687491, 49.98115234374998], + [-123.88496093749997, 50.01704101562501], + [-123.82382812499995, 50.043701171875114], + [-123.78466796874997, 50.08798828125009], + [-123.78769531249988, 50.10673828124999], + [-123.82543945312493, 50.14423828124998], + [-123.88012695312497, 50.17363281249993], + [-123.93359375000003, 50.188281250000074], + [-123.94589843749995, 50.18393554687509], + [-123.86303710937494, 50.102587890625045], + [-123.86572265624996, 50.072070312500045], + [-123.957421875, 49.992773437500034], + [-123.97138671874991, 49.9695312500001], + [-123.97211914062497, 49.892041015625125], + [-123.9849121093749, 49.87558593749998], + [-124.05878906250004, 49.853662109375136], + [-124.14160156249994, 49.792675781250125], + [-124.28125, 49.77211914062502], + [-124.41259765624991, 49.778125], + [-124.483251953125, 49.80820312500009], + [-124.70229492187495, 49.957666015624994], + [-124.78237304687492, 50.02011718749992], + [-124.78427734374996, 50.07280273437502], + [-124.93417968749995, 50.258056640625085], + [-124.93334960937496, 50.297900390625045], + [-124.98559570312503, 50.35561523437508], + [-125.04360351562494, 50.36376953124994], + [-125.05668945312495, 50.418652343750125], + [-124.93681640624995, 50.53740234374999], + [-124.86264648437493, 50.63730468750009], + [-124.85424804687491, 50.66865234375007], + [-124.85751953124996, 50.717333984375045], + [-124.87543945312497, 50.82563476562507], + [-124.8598632812499, 50.872412109375006], + [-124.93359374999991, 50.810595703125045], + [-124.9492675781249, 50.7646972656251], + [-124.93105468749992, 50.71840820312508], + [-124.94252929687505, 50.665673828124994], + [-124.9854003906249, 50.59194335937508], + [-125.05878906249993, 50.51386718749998], + [-125.20986328124998, 50.47631835937497], + [-125.4763183593749, 50.49716796874995], + [-125.50717773437488, 50.50727539062507], + [-125.52597656249989, 50.53413085937501], + [-125.53935546874996, 50.64902343749998], + [-125.55556640624997, 50.63486328124995], + [-125.58583984374992, 50.57363281250008], + [-125.6101562499999, 50.48603515624998], + [-125.64130859374994, 50.46621093750005], + [-125.69755859374995, 50.46455078125007], + [-125.74121093749996, 50.478564453125074], + [-125.77241210937491, 50.50820312500008], + [-125.83959960937493, 50.51064453125002], + [-125.9650390625, 50.487353515625074], + [-126.02412109375004, 50.49672851562505], + [-126.09433593749995, 50.497607421875045], + [-126.23657226562497, 50.52329101562495], + [-126.4044921875, 50.529882812500034], + [-126.44995117187493, 50.549707031249994], + [-126.44746093750004, 50.58774414062492], + [-126.41611328124988, 50.60698242187493], + [-126.23891601562492, 50.62382812499999], + [-126.06723632812493, 50.664306640625085], + [-125.89760742187494, 50.684375], + [-125.90410156250002, 50.704931640625006], + [-125.9807128906249, 50.71137695312507], + [-126.37031249999995, 50.66674804687503], + [-126.4929687499999, 50.67211914062506], + [-126.51435546875, 50.679394531250125], + [-126.51733398437497, 50.72446289062506], + [-126.47221679687493, 50.7672851562501], + [-126.397119140625, 50.80708007812504], + [-126.37460937499995, 50.83735351562498], + [-126.41821289062494, 50.85019531249992], + [-126.48818359375, 50.84184570312502], + [-126.5217773437499, 50.86606445312498], + [-126.48461914062497, 50.96049804687502], + [-126.51733398437497, 51.0568359375001], + [-126.56289062499994, 50.965478515625136], + [-126.63178710937494, 50.915136718750006], + [-126.96040039062491, 50.89370117187508], + [-127.01406249999992, 50.86679687499995], + [-127.057568359375, 50.86752929687509], + [-127.26748046874995, 50.91606445312502], + [-127.35693359374996, 50.945556640625], + [-127.4412109374999, 50.98940429687505], + [-127.59086914062502, 51.087548828125136], + [-127.70810546875, 51.15117187499996], + [-127.71430664062494, 51.26865234375009], + [-127.68916015624997, 51.34345703125007], + [-127.63271484374992, 51.427294921875074], + [-127.41967773437496, 51.608056640625136], + [-127.34658203124998, 51.64238281250002], + [-127.28066406250005, 51.6541015625001], + [-126.96811523437489, 51.66992187499994], + [-126.7354003906249, 51.69262695312497], + [-126.69145507812502, 51.70341796875002], + [-127.03408203125001, 51.71669921875008], + [-127.33872070312489, 51.70737304687495], + [-127.44272460937495, 51.67895507812503], + [-127.57573242187495, 51.56293945312501], + [-127.60957031249991, 51.5140625], + [-127.644873046875, 51.47846679687504], + [-127.66870117187497, 51.47758789062502], + [-127.71406249999998, 51.4901855468751], + [-127.72871093749994, 51.50551757812502], + [-127.74750976562504, 51.54355468749998], + [-127.81894531249993, 51.60390625], + [-127.85053710937498, 51.67319335937509], + [-127.86914062499996, 51.77524414062509], + [-127.863232421875, 51.82080078124997], + [-127.82998046875005, 51.87900390625009], + [-127.7276367187499, 51.9932128906251], + [-127.85878906249998, 51.99028320312502], + [-127.84331054687502, 52.086474609375074], + [-127.79536132812493, 52.19101562500006], + [-127.67333984375003, 52.25292968750006], + [-127.54970703124998, 52.297607421875114], + [-127.43793945312504, 52.356152343750125], + [-127.24223632812496, 52.39511718750009], + [-127.17573242187491, 52.31484375000008], + [-127.00795898437492, 52.29067382812511], + [-126.9594726562499, 52.25454101562505], + [-126.9, 52.18833007812506], + [-126.82631835937495, 52.125146484375136], + [-126.73857421875002, 52.06494140624997], + [-126.71396484374989, 52.060693359374994], + [-126.75263671875004, 52.11235351562502], + [-126.89521484375004, 52.225488281249994], + [-126.90141601562489, 52.2653320312501], + [-126.93818359374991, 52.30859375000003], + [-127.12705078124993, 52.37094726562495], + [-127.16059570312493, 52.394873046875034], + [-127.19399414062498, 52.45766601562502], + [-127.20825195312496, 52.498242187500125], + [-127.187109375, 52.537695312500006], + [-126.9952148437499, 52.65791015624998], + [-126.95131835937492, 52.721240234375074], + [-126.95136718749994, 52.7510253906251], + [-126.96640624999989, 52.78466796875003], + [-127.00825195312498, 52.8425781250001], + [-127.01933593750002, 52.8424804687501], + [-127.00639648437496, 52.754589843750125], + [-127.01323242187502, 52.719970703125], + [-127.03486328124998, 52.681738281250034], + [-127.06621093749989, 52.65268554687498], + [-127.10708007812495, 52.6328125], + [-127.51923828124998, 52.35927734375005], + [-127.56030273437491, 52.34321289062498], + [-127.71337890624993, 52.31850585937511], + [-127.79189453124994, 52.28935546875002], + [-127.83432617187488, 52.25097656250003], + [-127.90219726562493, 52.15087890625006], + [-127.99541015624992, 51.95053710937509], + [-128.10224609374993, 51.78842773437495], + [-128.19355468749995, 51.99829101562506], + [-128.3576171875, 52.1588867187501], + [-128.0375, 52.318164062500045], + [-128.02915039062495, 52.34248046875001], + [-128.0603027343749, 52.4275390625001], + [-128.0515624999999, 52.45332031250004], + [-128.02128906249993, 52.49067382812501], + [-127.94023437499996, 52.545166015625085], + [-127.94335937499997, 52.55073242187498], + [-128.03823242187494, 52.53115234375008], + [-128.18398437500005, 52.40791015625001], + [-128.24096679687503, 52.36826171874995], + [-128.27153320312493, 52.3629882812501], + [-128.27514648437497, 52.435498046875125], + [-128.19677734374991, 52.62329101562503], + [-128.13237304687502, 52.80581054687508], + [-128.1087890624999, 52.85805664062508], + [-128.05327148437487, 52.91069335937496], + [-128.10595703124997, 52.90688476562508], + [-128.3650390624999, 52.82578125000006], + [-128.45195312500005, 52.87661132812511], + [-128.52470703125002, 53.1406738281251], + [-128.6523437499999, 53.24384765624998], + [-128.8685546875, 53.328125], + [-129.08090820312492, 53.36728515625006], + [-129.12954101562505, 53.44228515625008], + [-129.1715820312499, 53.53359375000002], + [-129.114453125, 53.641113281250085], + [-129.02143554687507, 53.692138671875], + [-128.935595703125, 53.71518554687506], + [-128.8545898437499, 53.70454101562504], + [-128.85043945312492, 53.66518554687502], + [-128.90561523437492, 53.559326171875114], + [-128.83305664062493, 53.54941406250006], + [-128.5421386718749, 53.420654296875114], + [-128.47861328124995, 53.410302734375136], + [-128.358056640625, 53.45981445312509], + [-128.29106445312502, 53.45786132812506], + [-128.13271484375002, 53.417773437500045], + [-128.07919921874992, 53.36943359374999], + [-127.92783203125, 53.274707031250045], + [-127.950048828125, 53.329833984375085], + [-128.11513671874997, 53.44594726562511], + [-128.2072265624999, 53.483203125000074], + [-128.36914062500003, 53.49038085937511], + [-128.46962890624997, 53.47089843750004], + [-128.51176757812496, 53.47656249999994], + [-128.60034179687497, 53.506103515625114], + [-128.67553710937494, 53.55458984375005], + [-128.75078124999987, 53.66083984375001], + [-128.7678710937499, 53.710205078125114], + [-128.76367187500003, 53.746875], + [-128.74594726562486, 53.780175781249994], + [-128.7147460937499, 53.81000976562504], + [-128.65288085937502, 53.831640625], + [-128.5604492187499, 53.84506835937506], + [-128.5321289062499, 53.85810546875007], + [-128.65087890624994, 53.918847656249994], + [-128.70478515624993, 53.918603515625136], + [-128.89018554687496, 53.82978515624998], + [-128.9278320312499, 53.82280273437496], + [-128.943994140625, 53.8400390625001], + [-128.95937, 53.84145507812505], + [-129.01396484374993, 53.79746093749995], + [-129.05639648437497, 53.77778320312504], + [-129.2081054687499, 53.6416015625], + [-129.2317382812499, 53.57641601562506], + [-129.24033203124986, 53.4790527343751], + [-129.2578613281249, 53.417968750000085], + [-129.28427734374995, 53.393164062500006], + [-129.46240234374991, 53.34658203125011], + [-129.56372070312506, 53.251464843750114], + [-129.68671875000007, 53.33354492187496], + [-129.82177734375003, 53.41274414062511], + [-129.91186523437491, 53.55136718750009], + [-130.07436523437497, 53.57563476562507], + [-130.26328125, 53.65415039062506], + [-130.33525390625002, 53.723925781250074], + [-130.23286132812495, 53.867431640625], + [-130.08593750000003, 53.97578125000004], + [-130.0635253906249, 54.10566406250004], + [-130.04331054687495, 54.13354492187503], + [-129.79077148437494, 54.16577148437503], + [-129.62602539062493, 54.23027343750002], + [-129.7949707031249, 54.23613281249999], + [-129.89843749999994, 54.22636718749993], + [-130.08422851562503, 54.18139648437503], + [-130.29033203124993, 54.270361328125034], + [-130.39677734375002, 54.35166015625006], + [-130.4302734375, 54.42099609374998], + [-130.39345703125005, 54.47963867187502], + [-130.38862304687507, 54.5393554687501], + [-130.37001953125, 54.62001953125002], + [-130.3504882812499, 54.6553222656251], + [-130.3072265624999, 54.700292968750034], + [-130.21894531249995, 54.7302734375001], + [-130.14086914062503, 54.822753906250114], + [-130.10864257812503, 54.8872558593751], + [-129.94853515624993, 55.08105468749997], + [-129.89013671874994, 55.16464843749995], + [-129.78076171875003, 55.2804687500001], + [-129.56064453124995, 55.46254882812508], + [-129.63012695312497, 55.45224609374992], + [-129.66665039062505, 55.436669921875136], + [-129.70131835937502, 55.43857421874998], + [-129.73417968749993, 55.45800781250003], + [-129.76547851562492, 55.49824218750007], + [-129.79516601562503, 55.559570312500114], + [-129.81191406249997, 55.532617187500136], + [-129.81562, 55.41757812499998], + [-129.83774414062492, 55.31909179687497], + [-129.87714843749995, 55.25063476562508], + [-129.98520507812492, 55.111474609375136], + [-130.04848632812494, 55.05727539062511], + [-130.09179687499997, 55.10776367187509], + [-130.05839843749993, 55.19477539062507], + [-129.99584960937497, 55.264062500000136], + [-129.98515624999993, 55.3588378906251], + [-130.04404296875003, 55.47192382812503], + [-130.07998046875005, 55.56289062500008], + [-130.09296875000004, 55.631835937500114], + [-130.09467773437495, 55.694775390625125], + [-130.08510742187494, 55.751708984375], + [-130.06035156249996, 55.81372070312503], + [-130.02031249999987, 55.88076171875002], + [-130.02509765624995, 55.8882324218751], + [-130.01406249999997, 55.950537109375006], + [-130.02290039062495, 56.01450195312509], + [-130.05595703124996, 56.0652343750001], + [-130.09785156249995, 56.10927734375002], + [-130.21469726562486, 56.0828125], + [-130.41313476562487, 56.12250976562507], + [-130.47709960937496, 56.230566406250034], + [-130.649072265625, 56.26367187500003], + [-130.74169921875006, 56.340820312500114], + [-130.9302246093749, 56.37861328125001], + [-131.0829101562499, 56.40483398437502], + [-131.19941406249995, 56.44921875], + [-131.335791015625, 56.501220703125114], + [-131.47187, 56.55673828125006], + [-131.57509765625002, 56.5988281250001], + [-131.65151367187494, 56.59609375000008], + [-131.82426757812496, 56.58999023437508], + [-131.8331054687499, 56.68481445312503], + [-131.88598632812494, 56.74213867187498], + [-131.86616210937495, 56.792822265625006], + [-131.96249999999986, 56.81870117187495], + [-132.1042968749999, 56.85678710937509], + [-132.062890625, 56.95336914062503], + [-132.03154296874993, 57.02656250000004], + [-132.1570312499999, 57.048193359375006], + [-132.33798828124992, 57.07944335937498], + [-132.27939453124998, 57.14536132812506], + [-132.23217773437494, 57.198535156250074], + [-132.30166015625005, 57.2763183593751], + [-132.44248046874986, 57.40673828125003], + [-132.55048828124995, 57.499902343749994], + [-132.6915039062499, 57.64511718750009], + [-132.81552734374992, 57.77270507812497], + [-132.91684570312486, 57.8770019531251], + [-133.00141601562495, 57.948974609375], + [-133.12041015624996, 58.07773437499995], + [-133.27529296875, 58.22285156250004], + [-133.42255859374995, 58.33706054687502], + [-133.40112304687494, 58.41088867187497], + [-133.54638671874997, 58.50346679687499], + [-133.67392578124992, 58.597167968750085], + [-133.8207519531249, 58.70502929687504], + [-133.96572265625005, 58.75786132812496], + [-134.06918945312492, 58.79550781249998], + [-134.21850585937503, 58.849902343750045], + [-134.29697265624995, 58.89848632812502], + [-134.32963867187505, 58.93969726562506], + [-134.36352539062491, 58.968750000000114], + [-134.39306640625, 59.009179687499994], + [-134.41020507812493, 59.05625], + [-134.44077148437492, 59.08535156250005], + [-134.62197265624997, 59.1553222656251], + [-134.67724609374997, 59.19926757812499], + [-134.80239257812508, 59.25], + [-134.90722656249994, 59.2711914062501], + [-134.94375, 59.28828125000001], + [-135.07128906249994, 59.44145507812496], + [-135.05083007812496, 59.49604492187507], + [-135.03666992187493, 59.550683593749994], + [-135.05102539062491, 59.57866210937502], + [-135.26079101562502, 59.6950195312501], + [-135.36787109374998, 59.743310546874994], + [-135.47592773437486, 59.793261718750045], + [-135.70258789062504, 59.72875976562506], + [-135.9346679687499, 59.662646484375074], + [-136.09716796874994, 59.6383789062501], + [-136.3218261718749, 59.604833984375034], + [-136.24711914062496, 59.532910156250125], + [-136.27797851562494, 59.48032226562506], + [-136.34785156249995, 59.456054687500085], + [-136.46635742187493, 59.459082031250006], + [-136.46674804687495, 59.27993164062508], + [-136.57875976562494, 59.15224609375002], + [-136.81328125000002, 59.15004882812511], + [-136.93930664062492, 59.10610351562502], + [-137.12622070312491, 59.04096679687507], + [-137.2775390624999, 58.988183593749994], + [-137.43857421874995, 58.903125], + [-137.52089843749994, 58.91538085937506], + [-137.48417968749993, 58.99121093750006], + [-137.54370117187494, 59.119433593750074], + [-137.59331054687493, 59.22626953124998], + [-137.69663085937495, 59.281152343749994], + [-137.87055664062495, 59.37358398437499], + [-138.00112304687497, 59.442919921875074], + [-138.18745117187493, 59.54194335937501], + [-138.317626953125, 59.611132812500074], + [-138.45361328124997, 59.683398437500045], + [-138.63227539062504, 59.77827148437501], + [-138.70546874999997, 59.90131835937504], + [-138.86875, 59.94575195312501], + [-139.04345703124997, 59.99326171874992], + [-139.18515624999986, 60.083593750000034], + [-139.13696289062494, 60.17270507812506], + [-139.07924804687497, 60.279443359375136], + [-139.07924804687497, 60.3437011718751], + [-139.23476562499997, 60.339746093749994], + [-139.46796875000004, 60.33369140625001], + [-139.67631835937505, 60.32832031249998], + [-139.83066406249992, 60.25288085937507], + [-139.97329101562497, 60.183154296875074], + [-140.19692382812497, 60.237500000000125], + [-140.45283203125004, 60.29970703125002], + [-140.5254394531249, 60.21835937499995], + [-140.76274414062505, 60.25913085937509], + [-141.00214843750004, 60.300244140625125], + [-141.00214843750004, 60.592431640625136], + [-141.00214843750004, 60.884667968749994], + [-141.00214843750004, 61.176855468750006], + [-141.00214843750004, 61.46904296875002], + [-141.00214843750004, 61.761279296875045], + [-141.00214843750004, 62.053466796875085], + [-141.00214843750004, 62.345703125000114], + [-141.00214843750004, 62.637890625000125], + [-141.00214843750004, 62.930078125000136], + [-141.00214843750004, 63.22226562499998], + [-141.00214843750004, 63.51445312499999], + [-141.00214843750004, 63.80668945312502], + [-141.00214843750004, 64.09887695312506], + [-141.00214843750004, 64.39111328125009], + [-141.00214843750004, 64.6833007812501], + [-141.00214843750004, 64.97553710937513], + [-141.00214843750004, 65.26772460937514], + [-141.00214843750004, 65.55991210937498], + [-141.00214843750004, 65.8521484375], + [-141.00214843750004, 66.14433593750002], + [-141.00214843750004, 66.43652343750006], + [-141.00214843750004, 66.72875976562509], + [-141.00214843750004, 67.0209472656251], + [-141.00214843750004, 67.31313476562511], + [-141.00214843750004, 67.60537109375014], + [-141.00214843750004, 67.89755859374998], + [-141.00214843750004, 68.18974609374999], + [-141.00214843750004, 68.48198242187502], + [-141.00214843750004, 68.77416992187506], + [-141.00214843750004, 69.06635742187507], + [-141.00214843750004, 69.3585937500001], + [-141.00214843750004, 69.65078125000011], + [-140.86000976562497, 69.63525390624997], + [-140.405126953125, 69.60249023437504], + [-139.97661132812493, 69.62172851562505], + [-139.18154296874997, 69.51552734375008], + [-138.68989257812495, 69.31679687500011], + [-138.29101562499997, 69.21904296875007], + [-138.12836914062495, 69.15195312500009], + [-137.86943359374987, 69.09282226562496], + [-137.25996093749998, 68.96411132812503], + [-137.07041015624992, 68.95087890624998], + [-136.71733398437493, 68.88916015625003], + [-136.49868164062505, 68.89731445312509], + [-136.12236328124993, 68.88222656250002], + [-135.86665039062498, 68.83261718750006], + [-135.36215820312486, 68.69643554687502], + [-135.258837890625, 68.68432617187503], + [-135.23120117187503, 68.69428710937513], + [-135.40693359374995, 68.828955078125], + [-135.43457031249997, 68.84199218750001], + [-135.63798828124993, 68.89223632812511], + [-135.876318359375, 68.9169921875], + [-135.89472656249993, 68.92670898437504], + [-135.93901367187487, 68.9741699218751], + [-135.92475585937493, 68.99262695312495], + [-135.87285156249993, 69.00102539062507], + [-135.69521484375005, 69.000634765625], + [-135.58999023437494, 69.00825195312513], + [-135.575537109375, 69.02695312500003], + [-135.65126953124997, 69.03129882812502], + [-135.74262695312495, 69.04941406249998], + [-135.84970703124992, 69.08139648437492], + [-135.91020507812487, 69.11147460937502], + [-135.6914550781249, 69.31118164062502], + [-135.61494140625004, 69.291015625], + [-135.49956054687487, 69.337158203125], + [-135.29282226562486, 69.30786132812506], + [-135.2549804687499, 69.32382812499995], + [-135.22978515624993, 69.4251953125], + [-135.19902343749993, 69.449609375], + [-135.1408203124999, 69.46782226562496], + [-134.85288085937495, 69.4858886718751], + [-134.4938476562499, 69.467919921875], + [-134.45683593749993, 69.47763671875], + [-134.4912109374999, 69.54531250000011], + [-134.49536132812506, 69.57192382812502], + [-134.47368164062487, 69.6328125], + [-134.45146484374987, 69.6654785156251], + [-134.40893554687494, 69.68178710937502], + [-134.24204101562495, 69.66884765625005], + [-134.18989257812498, 69.638818359375], + [-134.13403320312497, 69.58725585937495], + [-134.07749023437492, 69.557861328125], + [-133.89995117187487, 69.52822265625002], + [-133.87978515624997, 69.50771484375011], + [-133.94746093749995, 69.42949218749996], + [-134.01840820312495, 69.38847656249996], + [-134.16503906249997, 69.28056640625002], + [-134.17431640624991, 69.25283203125005], + [-133.94804687499993, 69.30131835937496], + [-133.69404296875004, 69.36840820312497], + [-133.475927734375, 69.40537109375003], + [-133.2936523437499, 69.41215820312499], + [-133.16313476562496, 69.43388671874999], + [-133.0844238281249, 69.47065429687501], + [-133.02827148437495, 69.50825195312504], + [-132.91533203125002, 69.62963867187506], + [-132.84033203124994, 69.6506835937501], + [-132.5268066406249, 69.64326171875001], + [-132.45234374999993, 69.64692382812504], + [-132.40390625, 69.65874023437496], + [-132.41274414062497, 69.67407226562506], + [-132.47895507812495, 69.69287109374997], + [-132.56835937500003, 69.69814453125], + [-132.57060546874996, 69.70668945312514], + [-132.53754882812495, 69.72656250000009], + [-132.48847656249993, 69.73808593749996], + [-132.33398437499997, 69.75180664062509], + [-132.232421875, 69.70815429687508], + [-132.16342773437498, 69.70498046875014], + [-131.93413085937496, 69.75346679687507], + [-131.58183593749996, 69.88212890624999], + [-131.44091796875003, 69.91791992187501], + [-131.31894531249995, 69.92416992187503], + [-131.21586914062493, 69.90078125000005], + [-131.13637695312497, 69.90688476562505], + [-131.03183593749992, 69.97949218750011], + [-130.99062, 70.01811523437499], + [-130.92617187500005, 70.05161132812506], + [-130.66547851562495, 70.12705078124998], + [-130.49843749999997, 70.14316406250006], + [-130.39638671874994, 70.12924804687506], + [-130.27495117187487, 70.09799804687509], + [-130.17495117187497, 70.08588867187513], + [-130.04331054687495, 70.09506835937503], + [-129.944970703125, 70.09091796875006], + [-129.89804687499992, 70.10615234374998], + [-129.730078125, 70.19208984375007], + [-129.675634765625, 70.19296875000009], + [-129.62299804687504, 70.16762695312508], + [-129.53842773437495, 70.10517578125013], + [-129.5381835937499, 70.07392578124998], + [-129.64829101562495, 69.9977539062501], + [-130.45883789062486, 69.77998046874995], + [-130.70854492187493, 69.68598632812501], + [-130.83208007812487, 69.65146484375006], + [-130.96010742187497, 69.63203125000001], + [-131.207958984375, 69.61577148437507], + [-131.30634765624995, 69.5966308593751], + [-131.47294921874987, 69.57949218749997], + [-131.8627929687499, 69.54936523437505], + [-131.9377929687499, 69.5347167968751], + [-131.9887695312499, 69.51762695312499], + [-132.128759765625, 69.40234375000011], + [-132.19682617187502, 69.3646972656251], + [-132.33076171874995, 69.30795898437509], + [-132.48120117187506, 69.2731445312501], + [-132.68671874999998, 69.25986328125006], + [-132.8174804687499, 69.20576171875004], + [-132.9679687499999, 69.10141601562509], + [-133.08945312499986, 69.02875976562504], + [-133.22822265625, 68.96713867187509], + [-133.378955078125, 68.88666992187504], + [-133.41831054687492, 68.84428710937493], + [-133.37338867187492, 68.78847656250011], + [-133.34838867187494, 68.76987304687506], + [-133.1968261718749, 68.73984374999998], + [-133.138037109375, 68.74658203125011], + [-133.19218750000002, 68.776513671875], + [-133.31953124999995, 68.81972656250008], + [-133.33666992187497, 68.83525390625005], + [-133.30400390624987, 68.84741210937506], + [-132.7060058593749, 68.81489257812498], + [-132.57763671874997, 68.84780273437514], + [-132.53266601562504, 68.87563476562511], + [-132.54223632812506, 68.88994140625002], + [-132.70434570312503, 68.89589843749997], + [-132.739111328125, 68.92246093750006], + [-132.76469726562487, 68.97246093749993], + [-132.7701171875, 69.01215820312504], + [-132.75546874999998, 69.0416015625], + [-132.71894531249998, 69.07919921875], + [-132.54516601562494, 69.140625], + [-132.358056640625, 69.16694335937513], + [-132.21396484374995, 69.20166015625009], + [-132.134375, 69.23447265625003], + [-131.91962890624995, 69.29052734375009], + [-131.83339843750005, 69.3359863281251], + [-131.7869140624999, 69.37128906250001], + [-131.78105468749993, 69.38886718750004], + [-131.82016601562503, 69.40161132812497], + [-131.78837890625002, 69.43198242187495], + [-131.6317871093749, 69.45908203124995], + [-131.56293945312493, 69.46137695312507], + [-131.34291992187497, 69.43540039062492], + [-131.3030273437499, 69.41508789062505], + [-131.32470703124997, 69.36118164062509], + [-131.2938964843749, 69.36372070312507], + [-131.20903320312493, 69.43217773437499], + [-131.1617187499999, 69.45498046875002], + [-131.11284179687487, 69.45947265625003], + [-131.06342773437504, 69.45068359375003], + [-131.01342773437497, 69.4287109375], + [-130.98627929687504, 69.36289062500009], + [-130.98198242187496, 69.25327148437495], + [-130.97065429687495, 69.20908203125], + [-130.91430664062503, 69.28486328124998], + [-130.87504882812505, 69.32001953125004], + [-130.66069335937496, 69.48129882812503], + [-130.51596679687486, 69.56967773437492], + [-130.35361328124992, 69.65581054687507], + [-130.1176269531249, 69.720068359375], + [-129.57211914062486, 69.82670898437507], + [-129.26484374999998, 69.85541992187507], + [-129.10913085937497, 69.88193359374995], + [-129.03291015624998, 69.90498046875004], + [-128.98432617187504, 69.93344726562498], + [-128.89892578124994, 69.96616210937506], + [-128.88369140625005, 69.96347656250003], + [-128.91679687499996, 69.89487304687509], + [-128.93862304687505, 69.875], + [-129.13833007812508, 69.83251953125], + [-129.15791015624995, 69.80009765624999], + [-129.1362304687499, 69.75004882812507], + [-129.10170898437508, 69.71704101562511], + [-129.05434570312502, 69.70107421875005], + [-128.9714355468749, 69.71240234375006], + [-128.85302734375003, 69.7510253906251], + [-128.705517578125, 69.81015625000006], + [-128.38671874999997, 69.96015625000007], + [-128.35917968749996, 69.98759765624999], + [-128.27861328124987, 70.10810546875001], + [-128.09584960937497, 70.16132812500004], + [-127.76494140624995, 70.221875], + [-127.68378906249994, 70.26035156249995], + [-127.97402343750001, 70.29291992187501], + [-128.03417968749991, 70.31533203125014], + [-128.04365234374998, 70.32875976562502], + [-127.98891601562492, 70.36313476562492], + [-128.12148437499994, 70.39736328124997], + [-128.17011718749998, 70.41845703125], + [-128.16806640625, 70.47978515625007], + [-128.12729492187486, 70.523828125], + [-128.04047851562504, 70.56640624999994], + [-127.99101562499992, 70.57382812500003], + [-127.86162109375002, 70.54907226562497], + [-127.75283203125007, 70.51713867187505], + [-127.37685546874994, 70.36875], + [-127.22597656249992, 70.29614257812497], + [-127.13847656249996, 70.23935546874995], + [-126.9268066406249, 70.06171874999998], + [-126.8334960937499, 69.95908203125003], + [-126.75869140624994, 69.853369140625], + [-126.68491210937492, 69.77709960937509], + [-126.61215820312493, 69.73032226562498], + [-126.25043945312495, 69.54526367187492], + [-126.06381835937495, 69.46708984374999], + [-125.90742187499998, 69.41855468750006], + [-125.72778320312497, 69.37998046875], + [-125.52495117187495, 69.35156250000009], + [-125.38676757812496, 69.34921874999995], + [-125.17187, 69.42797851562503], + [-125.166845703125, 69.4797851562501], + [-125.26157226562493, 69.56616210937511], + [-125.35693359374991, 69.62597656250003], + [-125.3455078124999, 69.662451171875], + [-125.21938476562505, 69.73237304687504], + [-125.227880859375, 69.75673828125002], + [-125.20117187499999, 69.82880859374995], + [-125.1140136718749, 69.8150390625], + [-125.0795898437499, 69.81782226562504], + [-125.03100585937496, 69.8442871093751], + [-124.96826171874996, 69.894384765625], + [-124.88916015624991, 69.93579101562509], + [-124.79365234374991, 69.968505859375], + [-124.767919921875, 69.99003906249996], + [-124.86259765625002, 70.00551757812508], + [-124.9200195312499, 70.0055664062501], + [-124.96259765624995, 70.01259765625011], + [-124.99038085937494, 70.02661132812511], + [-124.95244140624993, 70.041748046875], + [-124.74511718749997, 70.08017578125], + [-124.70634765624989, 70.11699218750005], + [-124.63994140624995, 70.14145507812506], + [-124.55502929687488, 70.15122070312509], + [-124.50258789062495, 70.14111328125], + [-124.44448242187492, 70.110595703125], + [-124.44150390624993, 70.06191406250002], + [-124.46718749999992, 69.98256835937502], + [-124.47192382812491, 69.91850585937493], + [-124.40693359374991, 69.76743164062506], + [-124.3493652343749, 69.73452148437511], + [-124.12460937499995, 69.6899902343751], + [-124.13847656250002, 69.65317382812506], + [-124.39838867187504, 69.49384765625013], + [-124.45390624999989, 69.45483398437497], + [-124.48134765624997, 69.42514648437498], + [-124.47207031249995, 69.40004882812502], + [-124.42617187499992, 69.37944335937507], + [-124.33808593749991, 69.36484374999995], + [-124.11171875, 69.35888671874997], + [-124.04965820312495, 69.37285156249999], + [-123.60913085937491, 69.37744140625003], + [-123.5284179687499, 69.38935546874995], + [-123.46044921874991, 69.42001953125], + [-123.361474609375, 69.49663085937496], + [-123.248974609375, 69.52001953125011], + [-123.2136718749999, 69.54150390625006], + [-123.14448242187493, 69.63247070312511], + [-123.11040039062492, 69.73813476562498], + [-123.07661132812495, 69.78247070312511], + [-123.02578125, 69.81000976562504], + [-122.95668945312495, 69.81884765625006], + [-122.78540039062496, 69.80844726562509], + [-122.7048828124999, 69.81738281250011], + [-122.3875, 69.80844726562509], + [-122.07006835937499, 69.81616210937506], + [-121.741845703125, 69.797509765625], + [-121.53110351562496, 69.77578125], + [-121.33623046874996, 69.74155273437495], + [-120.96245117187502, 69.66040039062511], + [-120.81464843749993, 69.61684570312514], + [-120.29252929687496, 69.42055664062511], + [-120.13999023437488, 69.38056640625013], + [-119.8528320312499, 69.34233398437499], + [-118.86870117187496, 69.25717773437503], + [-118.74487304687496, 69.23427734375], + [-118.4855957031249, 69.14487304687506], + [-118.30698242187492, 69.0927246093751], + [-118.09521484374994, 69.0429199218751], + [-117.8303222656249, 68.99990234375002], + [-117.31127929687503, 68.93491210937492], + [-117.22695312499998, 68.913427734375], + [-117.13173828124995, 68.90712890625014], + [-117.02573242187493, 68.91596679687498], + [-116.549951171875, 68.87880859375005], + [-116.42456054687503, 68.88061523437506], + [-116.33408203124989, 68.87363281250006], + [-116.22270507812495, 68.84682617187511], + [-116.05947265625, 68.83701171875006], + [-116.06523437500002, 68.85541992187507], + [-116.25161132812497, 68.95791015625], + [-116.2434082031249, 68.9740722656251], + [-116.16674804687491, 68.975341796875], + [-115.9360839843749, 68.95810546875003], + [-115.88325195312497, 68.98730468750011], + [-115.80634765624994, 68.98662109374999], + [-115.63115234374995, 68.97255859375014], + [-115.44228515624994, 68.94091796875009], + [-115.2398437499999, 68.89184570312503], + [-114.99375, 68.85004882812504], + [-114.62016601562496, 68.74609375], + [-114.41386718749993, 68.65957031250014], + [-114.21816406249995, 68.5520507812501], + [-114.11083984374993, 68.47734375], + [-114.09204101562491, 68.43540039062495], + [-114.05112304687493, 68.41464843749998], + [-113.98818359375, 68.41499023437507], + [-113.96440429687495, 68.39907226562502], + [-114.02080078124989, 68.30649414062498], + [-114.05322265624991, 68.28339843750007], + [-114.09594726562491, 68.26679687500007], + [-114.27475585937493, 68.2478515625001], + [-114.76528320312494, 68.27021484375004], + [-114.85219726562498, 68.19526367187507], + [-115.12705078124992, 68.13203124999995], + [-115.17592773437494, 68.10439453125002], + [-115.18676757812493, 68.08417968749998], + [-115.16708984375, 68.01855468750011], + [-115.20185546874998, 67.99843750000011], + [-115.42685546874989, 67.92353515625013], + [-115.43447265624994, 67.90234375000006], + [-115.28847656249995, 67.87167968750003], + [-115.13320312499994, 67.819189453125], + [-115.01118164062504, 67.80639648437506], + [-114.85673828125002, 67.81357421875009], + [-114.66289062499996, 67.7952148437501], + [-114.42939453125, 67.751220703125], + [-114.26704101562495, 67.73115234375001], + [-114.17573242187491, 67.73500976562508], + [-114.05107421875002, 67.72690429687503], + [-113.89321289062501, 67.70688476562503], + [-113.68193359374995, 67.69995117187506], + [-113.21499023437494, 67.70175781250006], + [-113.07495117187493, 67.686669921875], + [-112.87944335937489, 67.67988281250004], + [-112.50302734374993, 67.6819335937501], + [-112.43515624999988, 67.68476562499998], + [-112.3145507812499, 67.71958007812495], + [-112.23671874999995, 67.731103515625], + [-112.1013183593749, 67.73173828124996], + [-111.71088867187494, 67.75732421875], + [-111.57573242187493, 67.75683593750009], + [-111.45068359374996, 67.77617187499993], + [-111.29082031249989, 67.81523437500007], + [-111.1921875, 67.82255859374999], + [-111.15478515624997, 67.7982421875], + [-111.08740234374993, 67.78764648437496], + [-110.9900390624999, 67.79082031250007], + [-110.80488281249993, 67.83232421875002], + [-110.37197265624992, 67.95419921874998], + [-110.21625976562491, 67.95400390625011], + [-110.10195312499998, 67.99223632812507], + [-110.07392578124995, 67.99291992187506], + [-110.04248046874994, 67.97719726562505], + [-109.93652343750003, 67.88789062499995], + [-109.90424804687494, 67.87353515625006], + [-109.83134765624992, 67.86582031250009], + [-109.76015625, 67.82011718750002], + [-109.68603515624999, 67.75175781249993], + [-109.63037109374991, 67.73271484374996], + [-109.22431640624997, 67.72978515625007], + [-109.08125, 67.7107421875001], + [-109.03803710937504, 67.69116210937503], + [-108.99448242187496, 67.63710937500002], + [-108.96767578125001, 67.53237304687502], + [-108.94990234374994, 67.49394531249999], + [-108.890966796875, 67.43808593749998], + [-108.85200195312497, 67.42197265625009], + [-108.81518554687503, 67.4375], + [-108.71513671874989, 67.58281249999999], + [-108.68022460937489, 67.60620117187494], + [-108.61333007812493, 67.59804687500008], + [-108.59291992187495, 67.59086914062502], + [-108.49150390624989, 67.48330078125014], + [-108.34697265624993, 67.40341796875003], + [-107.98872070312495, 67.2563964843751], + [-107.930517578125, 67.20249023437495], + [-107.90917968749991, 67.16254882812498], + [-107.92944335937496, 67.12680664062498], + [-107.99130859374995, 67.09516601562513], + [-108.08842773437493, 67.0697753906251], + [-108.2208007812499, 67.0505859375001], + [-108.34433593749993, 67.05751953125008], + [-108.45908203124995, 67.09042968750003], + [-108.49604492187493, 67.09228515625006], + [-108.45527343749997, 67.06298828124994], + [-108.21816406249998, 66.94125976562503], + [-108.15766601562491, 66.89262695312507], + [-108.10146484374992, 66.86035156250006], + [-108.04960937500002, 66.8443359375], + [-108.00175781249995, 66.81801757812514], + [-107.95795898437491, 66.78129882812493], + [-107.76093749999991, 66.68369140624995], + [-107.70488281249996, 66.63710937500005], + [-107.48032226562495, 66.49179687499995], + [-107.37368164062498, 66.43466796875003], + [-107.2913574218749, 66.40180664062507], + [-107.25947265624998, 66.39853515624995], + [-107.27807617187496, 66.42490234374998], + [-107.56445312499994, 66.618505859375], + [-107.71035156250001, 66.74003906250007], + [-107.73085937499992, 66.76918945312514], + [-107.74023437499996, 66.81376953124999], + [-107.74599609374998, 66.96147460937505], + [-107.7250976562499, 66.98413085937506], + [-107.62617187499991, 67.003125], + [-107.49921874999998, 66.93618164062505], + [-107.45126953124989, 66.92675781250009], + [-107.41884765624995, 66.93071289062502], + [-107.40209960937491, 66.94799804687497], + [-107.32919921874989, 66.93198242187509], + [-107.2001953124999, 66.88256835937497], + [-107.15649414062497, 66.88173828124997], + [-107.25375976562489, 66.97636718750007], + [-107.32333984374993, 67.02255859375006], + [-107.34785156249995, 67.05478515625006], + [-107.28315429687493, 67.103271484375], + [-107.31845703124992, 67.127783203125], + [-107.48237304687493, 67.19912109374997], + [-107.56748046874993, 67.27304687499995], + [-107.6440429687499, 67.38476562499997], + [-107.65092773437489, 67.42822265625011], + [-107.63837890624991, 67.47421875000006], + [-107.64990234374994, 67.51127929687499], + [-107.7530273437499, 67.5868652343751], + [-107.8650878906249, 67.6392089843751], + [-107.95405273437491, 67.7], + [-107.97211914062504, 67.73203125], + [-107.9583984375, 67.81860351562506], + [-107.89091796875002, 67.85634765625011], + [-107.7630859375, 67.90683593750009], + [-107.7286132812499, 67.95883789062503], + [-107.7874511718749, 68.0125], + [-107.79829101562498, 68.03691406249996], + [-107.76103515624993, 68.03217773437504], + [-107.509375, 68.05913085937505], + [-107.44619140624992, 68.04965820312506], + [-107.35112304687492, 68.06118164062511], + [-107.22412109374997, 68.09379882812499], + [-107.1248046874999, 68.10844726562496], + [-106.99365234374991, 68.10629882812506], + [-106.92255859374991, 68.11416015625005], + [-106.83564453124997, 68.12861328124998], + [-106.79072265624997, 68.14482421875007], + [-106.71098632812489, 68.20678710937509], + [-106.66840820312491, 68.21601562500001], + [-106.53486328124998, 68.20927734375007], + [-106.4594726562499, 68.19565429687495], + [-106.42426757812491, 68.20058593750008], + [-106.42949218749992, 68.28847656250005], + [-106.40439453124995, 68.31933593750011], + [-106.27124023437491, 68.38320312499997], + [-106.1321289062499, 68.38989257812509], + [-106.03930664062491, 68.40732421875009], + [-105.93305664062494, 68.44311523437511], + [-105.85693359374997, 68.47514648437505], + [-105.78120117187491, 68.52656250000004], + [-105.7501953125, 68.59228515625011], + [-105.77431640624994, 68.61113281250005], + [-105.93222656249995, 68.63652343750007], + [-106.02714843750002, 68.62333984375005], + [-106.23730468749993, 68.57656250000011], + [-106.45805664062496, 68.51645507812495], + [-106.54331054687492, 68.46059570312511], + [-106.56665039062497, 68.38896484375007], + [-106.60849609374988, 68.35737304687504], + [-106.780419921875, 68.38730468750009], + [-106.85371093749993, 68.38681640625], + [-106.94580078125003, 68.37436523437495], + [-107.043310546875, 68.34682617187502], + [-107.14619140624991, 68.30419921875006], + [-107.29814453124996, 68.29643554687507], + [-107.49912109374996, 68.32353515625007], + [-107.61933593749994, 68.3310546875], + [-107.74150390624996, 68.2857421875], + [-107.73422851562489, 68.25205078125009], + [-107.67763671875, 68.20292968750002], + [-107.73417968749989, 68.17373046875011], + [-108.02719726562489, 68.16293945312503], + [-108.10458984374993, 68.16928710937509], + [-108.26103515625002, 68.14990234375006], + [-108.3228027343749, 68.15410156250002], + [-108.36791992187503, 68.17753906249999], + [-108.68657226562493, 68.27734375000009], + [-108.71811523437488, 68.29746093750009], + [-108.64091796874996, 68.37851562500009], + [-108.34575195312496, 68.597802734375], + [-108.31347656249996, 68.61079101562498], + [-107.76635742187496, 68.64892578125011], + [-107.43593750000005, 68.68886718750008], + [-106.83066406249993, 68.80947265625014], + [-106.71347656249995, 68.81948242187505], + [-106.32426757812489, 68.89946289062499], + [-106.16445312499992, 68.91987304687507], + [-106.0156738281249, 68.9060546875001], + [-105.79794921874995, 68.86479492187505], + [-105.68559570312489, 68.82817382812505], + [-105.60605468749993, 68.78242187500013], + [-105.53984374999995, 68.71865234375011], + [-105.45693359374994, 68.57807617187507], + [-105.42861328124994, 68.458251953125], + [-105.3774414062499, 68.413818359375], + [-105.19497070312494, 68.33037109375005], + [-105.10131835937496, 68.29799804687502], + [-105.04360351562492, 68.2878906250001], + [-104.993798828125, 68.30742187499999], + [-104.9598144531249, 68.31054687500009], + [-104.93671874999991, 68.30302734374999], + [-104.91196289062493, 68.25048828125011], + [-104.87944335937496, 68.24526367187511], + [-104.76962890624989, 68.25175781250002], + [-104.65317382812488, 68.23007812500003], + [-104.63637695312492, 68.21391601562496], + [-104.6611328124999, 68.148779296875], + [-104.62817382812503, 68.12148437500014], + [-104.48681640624991, 68.06318359374998], + [-104.350732421875, 68.04121093750013], + [-104.19355468749994, 68.03120117187504], + [-103.90156249999997, 68.04106445312507], + [-103.65722656249993, 68.06909179687511], + [-103.47412109374993, 68.11503906250005], + [-103.32324218749991, 68.06381835937509], + [-103.02177734374996, 67.94023437499996], + [-102.84155273437493, 67.8527343750001], + [-102.69199218749992, 67.81157226562505], + [-102.38911132812504, 67.76220703125011], + [-102.32036132812489, 67.73564453125005], + [-102.20976562499992, 67.73271484374996], + [-102.05722656249992, 67.75332031250008], + [-101.8836425781249, 67.74531250000004], + [-101.68886718749992, 67.70864257812505], + [-101.55498046874992, 67.69316406250007], + [-101.09638671874993, 67.76235351562514], + [-101.02641601562489, 67.7656738281251], + [-100.855615234375, 67.79897460937514], + [-100.74560546874996, 67.80908203125009], + [-100.61611328125005, 67.80825195312508], + [-100.51962890624993, 67.81840820312502], + [-100.45610351562496, 67.83945312500003], + [-100.21293945312489, 67.83857421875004], + [-99.77294921874996, 67.81484375], + [-99.47226562499989, 67.78408203125014], + [-99.2935546874999, 67.74531250000004], + [-99.14687, 67.72363281250009], + [-99.03217773437504, 67.71884765624998], + [-98.92045898437502, 67.72578124999998], + [-98.81171874999997, 67.74443359375005], + [-98.69726562499991, 67.77973632812513], + [-98.45278320312494, 67.7979003906251], + [-98.41210937499991, 67.80717773437505], + [-98.41713867187497, 67.82646484375007], + [-98.4678222656249, 67.855810546875], + [-98.6064941406249, 67.91142578124996], + [-98.70356445312495, 67.96572265625002], + [-98.72221679687496, 68.0001953125001], + [-98.72006835937495, 68.04199218750009], + [-98.68984374999994, 68.06611328125004], + [-98.63154296875004, 68.0725585937501], + [-98.53984374999993, 68.04663085937497], + [-98.41479492187503, 67.98842773437502], + [-98.06254882812493, 67.76967773437505], + [-97.97763671874995, 67.73862304687492], + [-97.93076171875, 67.71079101562495], + [-97.60742187500003, 67.63105468750004], + [-97.45493164062486, 67.61699218750002], + [-97.27426757812492, 67.66625976562511], + [-97.19443359375, 67.69692382812514], + [-97.15541992187505, 67.72641601562492], + [-97.15717773437495, 67.75483398437504], + [-97.13984374999998, 67.79624023437495], + [-97.15805664062486, 67.82192382812502], + [-97.20654296874989, 67.85507812500003], + [-97.33613281249993, 67.90136718750006], + [-97.54663085937491, 67.96074218750007], + [-97.73911132812495, 67.97817382812505], + [-97.91333007812491, 67.95356445312501], + [-98.11049804687494, 67.90302734375004], + [-98.19252929687494, 67.92299804687502], + [-98.43837890624994, 68.06469726562511], + [-98.50029296874993, 68.11767578125006], + [-98.50024414062503, 68.13227539062501], + [-98.38608398437495, 68.11533203124995], + [-98.38085937499994, 68.13247070312505], + [-98.44916992187493, 68.20078124999995], + [-98.49125976562496, 68.22363281249997], + [-98.63300781249998, 68.33115234375003], + [-98.65048828124989, 68.36352539062506], + [-98.56225585937494, 68.37084960937511], + [-98.52221679687497, 68.3833984375], + [-98.46855468749996, 68.3821289062501], + [-98.21855468750002, 68.31743164062507], + [-98.09052734375004, 68.34633789062511], + [-97.7942382812499, 68.38759765625], + [-97.91103515624997, 68.44951171874999], + [-97.93886718750005, 68.51044921874995], + [-97.9250976562499, 68.523681640625], + [-97.82856445312495, 68.53276367187507], + [-97.63955078125, 68.48198242187502], + [-97.54804687499993, 68.474951171875], + [-97.48110351562505, 68.49516601562505], + [-97.41035156249993, 68.49653320312498], + [-97.33579101562495, 68.479150390625], + [-97.2659179687499, 68.45292968749996], + [-97.13598632812491, 68.37797851562499], + [-97.07177734374997, 68.33286132812503], + [-96.9995605468749, 68.26494140625005], + [-96.97670898437497, 68.25541992187505], + [-96.62817382812491, 68.25029296875007], + [-96.43066406249991, 68.3105957031251], + [-96.4349609375, 68.29008789062502], + [-96.48022460937489, 68.24282226562497], + [-96.72514648437496, 68.0612304687501], + [-96.72207031250005, 68.03876953124998], + [-96.59218749999997, 68.04843749999998], + [-96.5312988281249, 68.06313476562514], + [-96.49370117187487, 68.08496093749997], + [-96.46118164062491, 68.13583984375003], + [-96.43935546874991, 68.15087890625009], + [-96.07558593749997, 68.23652343750013], + [-95.9703125, 68.24912109375], + [-96.03603515625, 68.15776367187505], + [-96.17133789062493, 67.83168945312505], + [-96.19882812499995, 67.71782226562496], + [-96.22846679687495, 67.67919921875009], + [-96.37138671875002, 67.55385742187514], + [-96.36914062499991, 67.50976562500003], + [-96.21284179687495, 67.40429687500003], + [-96.18500976562498, 67.37558593750003], + [-96.16923828124996, 67.28896484375], + [-96.14145507812489, 67.27182617187503], + [-96.01259765624994, 67.27089843750002], + [-95.8791015624999, 67.29848632812514], + [-95.71992187499998, 67.31679687500014], + [-95.695166015625, 67.29873046875002], + [-95.78251953124996, 67.19379882812513], + [-95.77768554687495, 67.18461914062505], + [-95.62641601562504, 67.21157226562502], + [-95.55703124999994, 67.21528320312507], + [-95.52871093749994, 67.20917968750007], + [-95.41591796875005, 67.15556640624999], + [-95.40458984374996, 67.115576171875], + [-95.40698242187491, 67.05610351562498], + [-95.41889648437504, 67.01323242187493], + [-95.45698242187498, 66.98945312500007], + [-95.50224609374996, 66.97988281250008], + [-95.559375, 66.97275390625003], + [-95.61064453125002, 66.97568359374992], + [-95.76865234374989, 66.96669921875005], + [-95.86181640625003, 66.97817382812508], + [-95.95405273437498, 67.010888671875], + [-96.01953124999991, 67.01875], + [-96.09545898437503, 66.99355468750002], + [-96.21557617187497, 66.99770507812497], + [-96.35043945312492, 67.07001953124995], + [-96.40424804687495, 67.063232421875], + [-96.42255859374995, 67.05175781249997], + [-96.42026367187495, 67.03618164062499], + [-96.359521484375, 66.98940429687505], + [-95.88530273437502, 66.74135742187497], + [-95.8132812499999, 66.69013671875001], + [-95.79736328124994, 66.61655273437495], + [-95.7875488281249, 66.616796875], + [-95.74316406249991, 66.69042968750009], + [-95.77211914062505, 66.72607421875006], + [-96.01611328125003, 66.87045898437498], + [-96.04536132812495, 66.92314453125007], + [-96.03686523437489, 66.9375], + [-95.97236328124998, 66.95224609374995], + [-95.62504882812493, 66.91625976562509], + [-95.49038085937494, 66.92412109375007], + [-95.39965820312503, 66.94946289062509], + [-95.35410156249989, 66.98071289062506], + [-95.3210937499999, 67.15249023437508], + [-95.25874023437493, 67.26254882812492], + [-95.29560546874995, 67.3610351562501], + [-95.38955078124991, 67.51782226562506], + [-95.46337890624994, 67.61020507812506], + [-95.63369140624991, 67.70385742187494], + [-95.65048828124986, 67.73745117187505], + [-95.46069335937503, 68.02138671875], + [-95.42651367187489, 68.04526367187506], + [-95.38408203124996, 68.05556640625002], + [-95.23471679687489, 68.05971679687497], + [-95.12587890624994, 68.08330078124999], + [-94.955224609375, 68.05029296875], + [-94.86103515624998, 68.04165039062502], + [-94.74443359374993, 68.07089843749995], + [-94.4853027343749, 68.19008789062508], + [-94.38383789062502, 68.22700195312513], + [-94.25478515624994, 68.29682617187495], + [-94.09814453124991, 68.39941406250009], + [-93.92773437499991, 68.47382812499995], + [-93.65170898437489, 68.54311523437505], + [-93.48300781249989, 68.59887695312503], + [-93.44892578124998, 68.61889648437503], + [-93.60581054687486, 68.62368164062511], + [-93.64394531249991, 68.63310546875007], + [-93.676171875, 68.68598632812501], + [-93.65986328124995, 68.78374023437505], + [-93.66279296874993, 68.83818359374993], + [-93.68144531249993, 68.88725585937499], + [-93.71577148437498, 68.93105468750002], + [-93.76572265624995, 68.96958007812506], + [-93.8113281249999, 68.99267578124997], + [-93.85244140624994, 69.00034179687495], + [-93.88071289062492, 68.99682617187511], + [-93.89609374999995, 68.98217773437497], + [-93.93808593749989, 68.8890625], + [-93.99155273437495, 68.8206054687501], + [-94.06489257812495, 68.78476562500006], + [-94.21694335937494, 68.7605468750001], + [-94.4783203124999, 68.74277343750003], + [-94.58676757812489, 68.77553710937514], + [-94.600439453125, 68.80322265625011], + [-94.56254882812502, 68.91166992187499], + [-94.4756347656249, 68.95815429687505], + [-94.23662109374996, 69.04975585937507], + [-94.08364257812497, 69.12309570312507], + [-94.08115234374989, 69.13583984375], + [-94.22182617187505, 69.13637695312511], + [-94.25537109374997, 69.15146484375], + [-94.28496093749996, 69.24160156250005], + [-94.27675781250005, 69.27524414062498], + [-94.254736328125, 69.31376953125002], + [-94.15634765624995, 69.34174804687504], + [-93.85439453125, 69.3763671875], + [-93.61948242187492, 69.41699218750009], + [-93.61264648437495, 69.40283203125006], + [-93.80097656249993, 69.28090820312508], + [-93.820458984375, 69.25263671875001], + [-93.74853515624991, 69.2261230468751], + [-93.56748046874989, 69.29687], + [-93.45058593750005, 69.3551757812501], + [-93.43095703124996, 69.37504882812507], + [-93.53706054687498, 69.38232421874994], + [-93.54287109374994, 69.40644531250007], + [-93.52241210937493, 69.45068359375003], + [-93.5322753906249, 69.48090820312495], + [-93.64980468750005, 69.51904296875009], + [-93.79438476562493, 69.49785156250005], + [-93.9150878906249, 69.45766601562502], + [-94.015283203125, 69.4467285156251], + [-94.16318359375, 69.44594726562514], + [-94.2708007812499, 69.45512695312505], + [-94.33813476562494, 69.47426757812502], + [-94.41918945312503, 69.51704101562504], + [-94.51391601562497, 69.58344726562507], + [-94.63383789062496, 69.64965820312506], + [-94.67626953124991, 69.65688476562511], + [-94.71269531249996, 69.6494140625], + [-94.78925781249993, 69.58544921875011], + [-94.82250976562494, 69.577783203125], + [-95.29208984374995, 69.66738281250011], + [-95.49125976562493, 69.71762695312506], + [-95.58759765624995, 69.755712890625], + [-95.70742187499994, 69.77822265625014], + [-95.85068359374989, 69.78510742187513], + [-95.96494140624989, 69.80278320312499], + [-96.05014648437495, 69.83115234375009], + [-96.11909179687504, 69.871875], + [-96.17177734374994, 69.92495117187502], + [-96.26938476562492, 69.99179687499995], + [-96.49238281249998, 70.12490234375008], + [-96.5513671875, 70.21030273437506], + [-96.55957031249989, 70.24301757812498], + [-96.54560546874998, 70.32724609375009], + [-96.33657226562494, 70.47016601562507], + [-96.29770507812492, 70.51137695312511], + [-96.22641601562489, 70.54169921875007], + [-96.12275390624998, 70.56123046874995], + [-96.04814453124987, 70.5670898437501], + [-95.87861328124998, 70.54897460937514], + [-95.98017578124998, 70.5932128906251], + [-95.98818359374994, 70.61684570312511], + [-95.88632812499986, 70.69428710937507], + [-95.90639648437505, 70.69775390625006], + [-96.18642578125, 70.63828125000003], + [-96.25800781249993, 70.64228515625013], + [-96.35888671874994, 70.6786621093751], + [-96.54892578124995, 70.80874023437511], + [-96.55107421874993, 70.88974609375009], + [-96.49130859374992, 71.00234375000014], + [-96.47041015624993, 71.0697265625], + [-96.52475585937492, 71.12705078124995], + [-96.50444335937493, 71.14316406250003], + [-96.44545898437491, 71.1592285156251], + [-96.42075195312495, 71.17646484375007], + [-96.44658203124996, 71.23989257812502], + [-96.4056640625, 71.27363281249998], + [-96.27133789062489, 71.339111328125], + [-96.13964843749997, 71.39638671875011], + [-96.06201171874997, 71.41386718749993], + [-95.99443359374996, 71.41064453125], + [-95.92407226562491, 71.39306640624997], + [-95.85087890624993, 71.36108398437503], + [-95.72539062499996, 71.32817382812507], + [-95.63256835937494, 71.31879882812513], + [-95.5642578124999, 71.33676757812503], + [-95.44750976562491, 71.46005859374995], + [-95.40625, 71.49165039062498], + [-95.44541015624992, 71.50537109375011], + [-95.67421875, 71.50405273437502], + [-95.77338867187495, 71.51425781249998], + [-95.83037109375002, 71.52607421875007], + [-95.87231445312494, 71.57314453125005], + [-95.83774414062492, 71.59824218750003], + [-95.61591796874993, 71.685400390625], + [-95.51166992187493, 71.77680664062498], + [-95.20122070312493, 71.90371093750008], + [-94.88696289062503, 71.96337890624997], + [-94.73486328124994, 71.98295898437507], + [-94.61113281249996, 71.98686523437496], + [-94.55708007812495, 71.97895507812513], + [-94.49106445312492, 71.91552734375], + [-94.4788085937499, 71.84858398437504], + [-94.30834960937491, 71.76489257812506], + [-94.17124023437486, 71.75844726562497], + [-94.0859863281249, 71.77114257812508], + [-93.81020507812494, 71.76625976562514], + [-93.74628906249998, 71.742822265625], + [-93.75087890624994, 71.71665039062498], + [-93.781640625, 71.67431640625006], + [-93.762841796875, 71.63803710937495], + [-93.5758789062499, 71.56870117187503], + [-93.40747070312497, 71.52070312500004], + [-93.25634765624991, 71.46083984375011], + [-93.0312988281249, 71.335693359375], + [-92.982568359375, 71.30034179687507], + [-92.94868164062493, 71.26210937500011], + [-92.89018554687502, 71.12236328125007], + [-92.88271484375, 71.06933593750009], + [-92.90419921874994, 70.91606445312496], + [-92.92197265625, 70.88710937500011], + [-92.98144531249994, 70.8522460937501], + [-92.96088867187493, 70.83813476562506], + [-92.78300781249993, 70.7981445312501], + [-92.64169921874992, 70.7187988281251], + [-92.56748046874989, 70.69321289062503], + [-92.38847656249993, 70.65043945312502], + [-92.35581054687495, 70.63427734375011], + [-92.31538085937498, 70.60751953124998], + [-92.21445312499992, 70.49291992187509], + [-92.0491210937499, 70.3896484375], + [-92.03720703124986, 70.3673828125001], + [-92.07260742187489, 70.31875000000014], + [-92.04736328124991, 70.3033203125], + [-91.98354492187505, 70.28554687500011], + [-91.92622070312493, 70.29477539062503], + [-91.8755371093749, 70.33115234374998], + [-91.82041015624995, 70.341650390625], + [-91.76083984374989, 70.32626953125006], + [-91.71562, 70.29921875000005], + [-91.65405273437497, 70.23295898437505], + [-91.56406249999995, 70.1782714843751], + [-91.57163085937489, 70.16157226562507], + [-91.61611328124997, 70.14785156250014], + [-91.85859374999998, 70.13266601562506], + [-91.99497070312489, 70.14321289062508], + [-92.12104492187498, 70.169921875], + [-92.208642578125, 70.19750976562511], + [-92.29033203125002, 70.23984375000003], + [-92.32050781250004, 70.2353515625], + [-92.36328124999997, 70.20083007812508], + [-92.4546875, 70.15043945312493], + [-92.51186523437494, 70.10385742187503], + [-92.44575195312498, 70.08315429687508], + [-92.12700195312496, 70.08452148437502], + [-92.05771484374989, 70.07143554687502], + [-91.976708984375, 70.03867187500009], + [-92.06904296874995, 69.98398437499995], + [-92.28476562499995, 69.89213867187507], + [-92.75092773437498, 69.71391601562502], + [-92.88779296874989, 69.66821289062511], + [-92.85454101562493, 69.65488281250006], + [-92.80263671874994, 69.65146484375006], + [-92.64282226562497, 69.65927734375006], + [-92.49345703125002, 69.68320312499998], + [-92.31166992187494, 69.67290039062499], + [-92.23076171874996, 69.6533691406251], + [-92.25830078124997, 69.63432617187496], + [-92.20908203124989, 69.60332031250005], + [-91.91196289062495, 69.53125], + [-91.72412109374994, 69.54560546875001], + [-91.53237304687497, 69.6150390625001], + [-91.38422851562498, 69.64946289062502], + [-91.20180664062494, 69.64477539062494], + [-91.15087890624997, 69.63715820312501], + [-91.17031249999994, 69.62031250000013], + [-91.30502929687492, 69.581298828125], + [-91.42685546874986, 69.53793945312503], + [-91.43994140624997, 69.52568359375002], + [-91.28813476562496, 69.54321289062506], + [-90.95019531250003, 69.51547851562509], + [-90.7857421875, 69.5085937500001], + [-90.666650390625, 69.51552734375008], + [-90.55493164062497, 69.50449218749998], + [-90.45053710937492, 69.47543945312509], + [-90.4155761718749, 69.45698242187507], + [-90.51328125, 69.44511718749996], + [-90.60556640624989, 69.4453125], + [-90.68398437499997, 69.42773437499997], + [-90.74853515624997, 69.39248046875008], + [-90.79458007812494, 69.34672851562499], + [-90.82211914062495, 69.29047851562507], + [-90.89228515625004, 69.26728515624995], + [-91.00498046874989, 69.277099609375], + [-91.04921874999994, 69.29301757812505], + [-91.02485351562495, 69.31523437499996], + [-91.057763671875, 69.31840820312507], + [-91.14785156249997, 69.30258789062506], + [-91.21796875000004, 69.30209960937495], + [-91.23720703125005, 69.28554687500014], + [-90.74477539062491, 69.10590820312513], + [-90.5873046875, 68.946875], + [-90.47900390624994, 68.88115234374999], + [-90.468359375, 68.86376953125], + [-90.53896484375, 68.81958007812506], + [-90.54252929687502, 68.78598632812498], + [-90.51015625, 68.68886718750008], + [-90.52524414062495, 68.61127929687507], + [-90.57363281250005, 68.47470703124998], + [-90.52832031249997, 68.4322265625], + [-90.42304687499993, 68.39472656250001], + [-90.36005859374995, 68.34672851562502], + [-90.31723632812495, 68.33032226562503], + [-90.28525390625, 68.29165039062497], + [-90.24775390624993, 68.267431640625], + [-90.20478515625004, 68.25747070312511], + [-90.17441406249989, 68.27021484375004], + [-90.15683593749995, 68.30551757812495], + [-90.11640624999998, 68.33857421875013], + [-90.0053222656249, 68.39804687499998], + [-89.89770507812491, 68.49077148437505], + [-89.87949218749995, 68.5215332031251], + [-89.89658203124995, 68.59438476562502], + [-89.88422851562493, 68.62558593749998], + [-89.78310546874994, 68.73593750000006], + [-89.75083007812492, 68.81245117187504], + [-89.72016601562498, 68.93159179687495], + [-89.6666015625, 69.01459960937501], + [-89.55200195312491, 69.08491210937513], + [-89.35190429687492, 69.2270019531251], + [-89.27954101562491, 69.25546875000003], + [-89.19848632812503, 69.26948242187507], + [-89.05673828124992, 69.26611328125009], + [-88.95351562499994, 69.22041015625001], + [-88.81455078124986, 69.13588867187502], + [-88.6377441406249, 69.05883789062494], + [-88.31552734374992, 68.954443359375], + [-88.22353515625, 68.91503906249997], + [-88.041357421875, 68.81171875000007], + [-87.96435546874994, 68.70927734374996], + [-87.91152343749994, 68.564697265625], + [-87.86596679687497, 68.47763671875003], + [-87.827734375, 68.44809570312506], + [-87.81030273437491, 68.40415039062498], + [-87.81357421874986, 68.34570312499997], + [-87.82792968749996, 68.29995117187508], + [-87.85327148437497, 68.26689453125007], + [-87.89267578125, 68.24814453125], + [-87.99096679687494, 68.242041015625], + [-88.11113281250002, 68.25117187500007], + [-88.14580078124996, 68.26601562500008], + [-88.20908203124989, 68.33486328125008], + [-88.23525390625, 68.33906250000004], + [-88.34697265624993, 68.28828125000001], + [-88.36069335937486, 68.25986328125006], + [-88.31962890624993, 68.16577148437509], + [-88.32509765625, 67.98876953125009], + [-88.313818359375, 67.95034179687508], + [-88.19589843749986, 67.76582031249995], + [-87.99716796874989, 67.62568359375001], + [-87.49912109374995, 67.355322265625], + [-87.47080078124995, 67.32460937500014], + [-87.41791992187493, 67.21416015625002], + [-87.39194335937495, 67.19106445312511], + [-87.35937, 67.17724609374997], + [-87.32026367187493, 67.17285156249994], + [-87.26625976562494, 67.18383789062506], + [-87.08320312499993, 67.2677734375001], + [-86.92392578124992, 67.35625], + [-86.8127929687499, 67.40239257812499], + [-86.74985351562489, 67.40610351562503], + [-86.68203124999991, 67.42231445312498], + [-86.60937, 67.45083007812511], + [-86.56079101562491, 67.48212890625007], + [-86.53642578125002, 67.51616210937507], + [-86.50351562499989, 67.64946289062507], + [-86.47553710937504, 67.71313476562506], + [-86.39804687499989, 67.80009765625002], + [-86.36967773437496, 67.82480468750009], + [-85.98447265625, 68.04536132812507], + [-85.9525878906249, 68.0724609375001], + [-85.78886718749996, 68.32802734375011], + [-85.731103515625, 68.44501953125013], + [-85.722802734375, 68.51547851562509], + [-85.74487304687494, 68.57827148437511], + [-85.73383789062493, 68.630126953125], + [-85.68979492187492, 68.67094726562499], + [-85.64316406249992, 68.69970703124997], + [-85.56245117187493, 68.72880859375005], + [-85.51777343749995, 68.76982421875005], + [-85.49106445312495, 68.77397460937502], + [-85.42504882812491, 68.77426757812506], + [-85.33808593750004, 68.74628906250004], + [-85.2750976562499, 68.74135742187511], + [-84.86757812499994, 68.77333984375005], + [-84.8674804687499, 68.79038085937498], + [-85.10664062499995, 68.84404296875007], + [-85.10434570312495, 68.87094726562503], + [-85.08339843749994, 68.90791015625013], + [-85.00830078124991, 68.94921875], + [-84.91606445312496, 68.962255859375], + [-84.8953124999999, 68.98852539062503], + [-84.892724609375, 69.02099609375006], + [-84.86220703125, 69.07397460937503], + [-84.89003906249997, 69.09277343750011], + [-85.11352539062503, 69.16586914062509], + [-85.24262695312504, 69.162744140625], + [-85.27548828124989, 69.17231445312498], + [-85.38676757812493, 69.23188476562504], + [-85.42753906249996, 69.31840820312507], + [-85.43193359374987, 69.353857421875], + [-85.41640624999991, 69.41088867187509], + [-85.40224609375005, 69.42675781250011], + [-85.40917968749994, 69.45249023437503], + [-85.43720703124998, 69.48823242187504], + [-85.4395019531249, 69.51992187500011], + [-85.41596679687493, 69.54775390625008], + [-85.43012695312495, 69.58066406250003], + [-85.48203124999986, 69.61875], + [-85.50244140624994, 69.65151367187508], + [-85.44790039062494, 69.74814453125006], + [-85.44609375000002, 69.77778320312504], + [-85.4974609375, 69.8190429687501], + [-85.53481445312497, 69.83505859375], + [-85.50737304687487, 69.84526367187493], + [-85.41513671874992, 69.84951171875011], + [-85.30498046874996, 69.83613281250004], + [-85.17680664062496, 69.80512695312513], + [-85.01982421874996, 69.80478515625003], + [-84.83398437499991, 69.83505859375], + [-84.64511718749989, 69.84970703124995], + [-84.31879882812504, 69.84370117187498], + [-84.24165039062504, 69.83500976562499], + [-83.91718749999993, 69.74536132812503], + [-83.66533203124996, 69.69970703124994], + [-83.55170898437498, 69.70395507812492], + [-82.99135742187505, 69.68588867187498], + [-82.74560546874991, 69.69511718750007], + [-82.61835937499993, 69.69106445312514], + [-82.374169921875, 69.64179687500007], + [-82.39023437499989, 69.60087890625007], + [-82.49570312499989, 69.53222656250011], + [-82.63330078125003, 69.51811523437507], + [-82.75483398437493, 69.49438476562506], + [-82.64204101562495, 69.4583984375], + [-82.30986328124996, 69.41000976562509], + [-82.23183593749994, 69.33256835937493], + [-82.20815429687491, 69.297021484375], + [-82.24677734374998, 69.26499023437503], + [-82.22753906249997, 69.24887695312495], + [-82.150537109375, 69.24887695312495], + [-81.95180664062491, 69.27607421874998], + [-81.73217773437503, 69.25810546875005], + [-81.41230468749995, 69.19814453125008], + [-81.37783203125005, 69.18564453125003], + [-81.32158203124996, 69.13891601562511], + [-81.3286621093749, 69.11992187499996], + [-81.61142578124995, 69.00302734374995], + [-81.75834960937493, 68.95673828125013], + [-81.95166015624997, 68.90908203125], + [-81.95791015624991, 68.88364257812498], + [-81.68691406250005, 68.87895507812507], + [-81.47602539062498, 68.865576171875], + [-81.38090820312496, 68.85004882812504], + [-81.33129882812489, 68.827978515625], + [-81.26352539062495, 68.78061523437495], + [-81.2524902343749, 68.74316406250011], + [-81.25913085937495, 68.6924316406251], + [-81.28154296874987, 68.65722656250003], + [-81.52685546874994, 68.55595703124999], + [-81.63950195312489, 68.52436523437513], + [-81.83139648437489, 68.48686523437496], + [-81.91484374999993, 68.4587890625001], + [-82.00649414062505, 68.462646484375], + [-82.10634765625005, 68.49853515625003], + [-82.21015624999998, 68.50625], + [-82.39721679687497, 68.47758789062502], + [-82.49873046874995, 68.47861328125006], + [-82.54863281249993, 68.46860351562498], + [-82.55268554687504, 68.44648437500007], + [-82.46416015624993, 68.382421875], + [-82.41298828125, 68.357177734375], + [-82.3928710937499, 68.33833007812507], + [-82.43066406249994, 68.30659179687501], + [-82.42270507812492, 68.2965820312501], + [-82.39252929687493, 68.28525390625009], + [-82.22241210937489, 68.145263671875], + [-82.18657226562496, 68.13442382812511], + [-82.15131835937498, 68.1396972656251], + [-82.07763671874997, 68.17968750000009], + [-82.03388671875004, 68.19594726562502], + [-82.0125, 68.19389648437496], + [-82.01337890624995, 68.17338867187505], + [-82.09189453124995, 68.05146484375007], + [-82.10214843749992, 68.018896484375], + [-82.10048828124994, 67.98984374999995], + [-82.06254882812502, 67.92817382812501], + [-81.97646484374997, 67.86201171875001], + [-81.8693359374999, 67.80249023437497], + [-81.70859375, 67.72236328124998], + [-81.49277343749992, 67.63691406249998], + [-81.41230468749995, 67.59536132812505], + [-81.2943359375, 67.497412109375], + [-81.27011718749995, 67.45991210937498], + [-81.30107421874996, 67.35698242187499], + [-81.38720703124991, 67.18857421874995], + [-81.44272460937495, 67.09287109375], + [-81.46757812499996, 67.0698730468751], + [-81.63007812499993, 67.00200195312496], + [-81.72236328124998, 66.98608398437509], + [-81.87446289062498, 66.98793945312511], + [-81.92553710937489, 66.97470703125009], + [-82.00507812499993, 66.92041015625003], + [-82.11318359374994, 66.82509765625], + [-82.19833984374986, 66.76464843750011], + [-82.26054687499993, 66.73911132812506], + [-82.37475585937503, 66.70942382812504], + [-82.55366210937495, 66.62138671875005], + [-82.64150390624991, 66.5875], + [-82.94887695312494, 66.55083007812507], + [-83.19877929687493, 66.43149414062509], + [-83.2983886718749, 66.39213867187507], + [-83.40644531249998, 66.37124023437508], + [-83.52309570312494, 66.36875], + [-83.59028320312504, 66.38784179687508], + [-83.62836914062498, 66.460693359375], + [-83.65107421874998, 66.48461914062509], + [-83.7392089843749, 66.534375], + [-83.92021484375002, 66.67905273437506], + [-83.99804687499997, 66.72851562500003], + [-84.05, 66.73950195312494], + [-84.15444335937494, 66.73168945312497], + [-84.20800781250003, 66.73632812500003], + [-84.32436523437494, 66.78178710937505], + [-84.36625976562493, 66.81113281249998], + [-84.36108398437494, 66.82255859374999], + [-84.27255859374995, 66.839208984375], + [-84.3103515624999, 66.86274414062501], + [-84.46606445312494, 66.92744140625004], + [-84.53066406249994, 66.96132812500002], + [-84.53847656249994, 66.97280273437505], + [-84.69257812499998, 67.01660156250009], + [-84.84575195312502, 67.02871093750008], + [-85.04003906249997, 66.95605468750003], + [-85.11372070312498, 66.90693359375013], + [-85.11127929687493, 66.89091796875007], + [-85.01826171874998, 66.87207031249997], + [-84.97797851562504, 66.88125], + [-84.89902343749995, 66.92656250000005], + [-84.85737304687498, 66.94067382812509], + [-84.73774414062504, 66.93359375000006], + [-84.63857421875, 66.90234375000009], + [-84.60253906250003, 66.87514648437505], + [-84.58950195312494, 66.85664062500001], + [-84.31894531249989, 66.71181640625], + [-84.223046875, 66.68247070312506], + [-84.18310546874991, 66.64785156250011], + [-84.15273437500005, 66.59023437500011], + [-84.09423828125003, 66.52622070312503], + [-83.964208984375, 66.420556640625], + [-83.82583007812497, 66.28999023437504], + [-83.79755859374998, 66.23847656250001], + [-83.86904296875, 66.2135742187501], + [-83.90507812499996, 66.21176757812509], + [-84.0116699218749, 66.23120117187497], + [-84.29306640624995, 66.29179687500005], + [-84.3242675781249, 66.290673828125], + [-84.39843749999991, 66.25874023437507], + [-84.459375, 66.18623046875004], + [-84.47841796875005, 66.17929687500003], + [-84.628076171875, 66.20771484374998], + [-84.90839843749998, 66.27133789062498], + [-85.09619140624997, 66.32534179687514], + [-85.19150390624992, 66.3696777343751], + [-85.30683593749998, 66.44033203125011], + [-85.44223632812495, 66.53735351562497], + [-85.603857421875, 66.56826171875005], + [-85.79174804687491, 66.53295898437497], + [-86.06323242187497, 66.52036132812506], + [-86.63320312499991, 66.53134765625], + [-86.708154296875, 66.52304687500009], + [-86.73710937499996, 66.51088867187511], + [-86.68862304687494, 66.45747070312504], + [-86.70014648437498, 66.44277343750008], + [-86.73837890624995, 66.432861328125], + [-86.74697265624991, 66.41708984375], + [-86.68510742187502, 66.36040039062499], + [-86.5847656249999, 66.32192382812514], + [-86.30102539062491, 66.26992187500002], + [-86.11308593749993, 66.22529296875001], + [-86.00083007812486, 66.18681640624999], + [-85.96425781249997, 66.15444335937514], + [-85.95874023437491, 66.11904296875002], + [-86.0122558593749, 66.04848632812505], + [-86.04287109375, 66.02255859375009], + [-86.7019531249999, 65.67055664062514], + [-86.9531738281249, 65.5282714843751], + [-87.08110351562496, 65.44082031250005], + [-87.1937988281249, 65.383056640625], + [-87.2914550781249, 65.35483398437495], + [-87.45288085937503, 65.33896484375009], + [-87.678125, 65.33535156250005], + [-87.96997070312503, 65.34892578124999], + [-88.12099609374997, 65.39458007812505], + [-88.39487304687492, 65.51621093749995], + [-88.5867187499999, 65.58764648437511], + [-88.67246093749989, 65.61157226562503], + [-88.74394531249996, 65.67875976562505], + [-88.80849609374997, 65.691650390625], + [-88.94614257812495, 65.70302734375], + [-89.08774414062492, 65.73896484375004], + [-89.42036132812493, 65.86079101562498], + [-89.59267578124994, 65.90932617187511], + [-89.7494140625, 65.93603515625006], + [-89.89047851562495, 65.94082031250014], + [-89.94399414062494, 65.93359375000009], + [-89.84775390624995, 65.87226562500001], + [-89.88969726562487, 65.86855468749997], + [-90.00380859374997, 65.882568359375], + [-90.11660156249994, 65.88242187499995], + [-90.31625976562492, 65.92636718750003], + [-90.51328125, 65.92050781250009], + [-90.65546874999993, 65.92934570312511], + [-90.8257324218749, 65.95385742187511], + [-91.00952148437503, 65.96572265625005], + [-91.30546875000002, 65.96455078124998], + [-91.41152343749994, 65.959375], + [-91.42724609374994, 65.94790039062497], + [-91.28515624999997, 65.89443359375011], + [-91.04111328124989, 65.82983398437509], + [-91.07363281249994, 65.88554687500007], + [-91.06494140624994, 65.89990234374997], + [-90.98344726562496, 65.91923828124999], + [-90.59682617187497, 65.8848144531251], + [-90.15864257812495, 65.81269531249995], + [-90.04755859374998, 65.80561523437513], + [-89.92407226562497, 65.78027343750011], + [-89.78798828124994, 65.73671875000011], + [-89.60039062500002, 65.6477539062501], + [-89.24174804687496, 65.44638671874995], + [-89.12656249999995, 65.39560546875009], + [-88.97402343749994, 65.34829101562502], + [-88.1978027343749, 65.27988281249995], + [-87.92954101562486, 65.28032226562505], + [-87.39194335937495, 65.2605468750001], + [-87.10800781249992, 65.2248046875001], + [-87.02753906249995, 65.19809570312498], + [-87.00268554687497, 65.10859375000004], + [-87.02851562499998, 65.06362304687514], + [-87.1829101562499, 64.92680664062496], + [-87.28051757812491, 64.82617187500006], + [-87.88500976562494, 64.40043945312502], + [-87.96357421874998, 64.30249023437497], + [-87.99755859374997, 64.2439453125001], + [-88.10561523437497, 64.18330078125001], + [-88.37895507812496, 64.08925781250005], + [-88.65302734374993, 64.009375], + [-88.81772460937489, 63.99223632812499], + [-88.96440429687493, 64.01123046874994], + [-89.05961914062487, 64.03442382812506], + [-89.20063476562493, 64.11376953125006], + [-89.20942382812495, 64.10541992187513], + [-89.10766601562491, 63.98110351562502], + [-89.13154296874998, 63.96850585937494], + [-89.21455078124993, 63.984130859375114], + [-89.40351562499995, 64.03999023437513], + [-89.46474609375, 64.0296875], + [-89.5009277343749, 64.01450195312509], + [-89.55131835937496, 64.01479492187514], + [-89.61582031249995, 64.030615234375], + [-89.73271484374996, 64.07695312500002], + [-89.763818359375, 64.09951171875], + [-89.79208984374989, 64.16826171874996], + [-89.8113281249999, 64.18056640625], + [-90.04165039062494, 64.14086914062509], + [-90.08002929687493, 64.12773437500007], + [-89.98559570312497, 64.10019531249995], + [-89.95356445312493, 64.08061523437505], + [-89.86059570312491, 63.9788085937501], + [-89.85571289062497, 63.9569824218751], + [-89.92187, 63.94355468750001], + [-90.14189453125002, 63.981982421875045], + [-90.16816406250004, 63.978759765625085], + [-90.05961914062496, 63.877490234375074], + [-90.01796875, 63.82934570312503], + [-90.01342773437497, 63.80429687500006], + [-90.15473632812498, 63.68964843749998], + [-90.24531250000004, 63.64189453125002], + [-90.36884765624998, 63.62441406250002], + [-90.44624023437493, 63.6361816406251], + [-90.53349609374996, 63.66542968750002], + [-90.59638671874998, 63.66127929687508], + [-90.63500976562503, 63.62377929687506], + [-90.7068359374999, 63.596923828125114], + [-90.81191406249991, 63.580908203125034], + [-90.94565429687489, 63.58784179687504], + [-91.10805664062494, 63.61782226562511], + [-91.53881835937494, 63.72558593750003], + [-91.674658203125, 63.742236328125045], + [-91.92602539062497, 63.75708007812506], + [-91.95600585937495, 63.77231445312495], + [-91.95380859374993, 63.78681640625007], + [-91.91943359374994, 63.80058593750002], + [-91.92890624999993, 63.812451171875125], + [-91.98222656249996, 63.82241210937502], + [-92.03759765624994, 63.813037109375074], + [-92.094873046875, 63.784423828125114], + [-92.19521484375, 63.77597656249998], + [-92.33842773437496, 63.787646484375045], + [-92.5500976562499, 63.82954101562507], + [-92.97021484374997, 63.93764648437505], + [-93.42968749999997, 64.02880859374997], + [-93.69633789062493, 64.14716796875013], + [-93.5967285156249, 64.04057617187507], + [-93.60488281249997, 64.0044921875], + [-93.65581054687493, 63.97280273437511], + [-93.66416015624995, 63.941406250000114], + [-93.55981445312491, 63.865283203125074], + [-93.41557617187493, 63.837988281250006], + [-93.27021484374998, 63.840869140625074], + [-93.26621093749989, 63.8533203125001], + [-93.32685546874998, 63.87226562500007], + [-93.38027343749994, 63.90004882812505], + [-93.40585937499992, 63.941210937500074], + [-93.37851562499992, 63.94848632812497], + [-93.25043945312504, 63.926904296874994], + [-93.16591796875005, 63.90175781250002], + [-92.52924804687493, 63.76123046875], + [-92.33920898437495, 63.73491210937496], + [-92.1964843749999, 63.7078125], + [-92.15688476562491, 63.691699218750045], + [-92.20502929687495, 63.656787109375045], + [-92.46103515624989, 63.569433593750006], + [-92.46508789062491, 63.55507812500011], + [-92.28955078124994, 63.562988281250114], + [-92.0766113281249, 63.639990234375006], + [-91.95683593749993, 63.67563476562498], + [-91.84184570312496, 63.69755859374999], + [-91.68603515624991, 63.6597167968751], + [-91.4893066406249, 63.562207031250125], + [-91.33007812499997, 63.50683593750006], + [-91.1030761718749, 63.47587890624996], + [-90.97006835937489, 63.442773437500136], + [-90.74658203124994, 63.35156250000003], + [-90.71127929687492, 63.30405273437495], + [-90.69072265624993, 63.110546875000125], + [-90.69858398437492, 63.06386718750005], + [-90.72763671874989, 63.017480468749994], + [-90.7778808593749, 62.97163085937507], + [-90.87119140625, 62.945947265624994], + [-91.00771484374994, 62.940429687500114], + [-91.114892578125, 62.92158203125001], + [-91.349462890625, 62.818896484375045], + [-91.44897460937503, 62.804052734375034], + [-91.86962890624994, 62.834716796875085], + [-92.0342285156249, 62.86342773437505], + [-92.11005859374998, 62.86171875000008], + [-92.15209960937491, 62.83906250000007], + [-92.19614257812492, 62.828808593750125], + [-92.3612792968749, 62.81938476562496], + [-92.38813476562495, 62.80087890624992], + [-92.37773437499987, 62.77241210937498], + [-92.34526367187502, 62.733837890625125], + [-92.30517578125003, 62.71166992187506], + [-92.24316406249991, 62.68364257812502], + [-92.14912109374993, 62.66528320312503], + [-91.9558593749999, 62.644775390625114], + [-91.93583984374993, 62.59238281250009], + [-91.94443359374989, 62.57548828125002], + [-92.00786132812493, 62.54052734375], + [-92.08115234374995, 62.54409179687502], + [-92.20722656249995, 62.58535156250008], + [-92.26953124999994, 62.586962890625045], + [-92.32407226562486, 62.56459960937511], + [-92.39999999999989, 62.557226562500034], + [-92.49736328124993, 62.56484375], + [-92.55141601562491, 62.546728515625034], + [-92.56220703124998, 62.50288085937498], + [-92.59497070312491, 62.470068359375034], + [-92.707421875, 62.41821289062494], + [-92.76796875, 62.37998046874998], + [-92.76596679687492, 62.34995117187509], + [-92.70146484374993, 62.32822265625009], + [-92.62744140624994, 62.27905273437503], + [-92.54404296874992, 62.20229492187502], + [-92.52797851562494, 62.16840820312504], + [-92.57919921874989, 62.17734375000009], + [-92.648095703125, 62.20776367187506], + [-92.73476562499997, 62.25971679687498], + [-92.86582031249992, 62.306201171875045], + [-93.15444335937494, 62.366845703125136], + [-93.20537109374993, 62.364941406250125], + [-93.17924804687502, 62.34956054687501], + [-92.98779296874991, 62.28593750000002], + [-92.914453125, 62.244970703125006], + [-92.90551757812503, 62.21513671874996], + [-93.06586914062493, 62.14975585937498], + [-93.07026367187493, 62.127832031250136], + [-93.02773437499997, 62.108642578125114], + [-93.01625976562494, 62.09267578125008], + [-93.07338867187494, 62.060546875000085], + [-93.16748046874991, 62.033642578125125], + [-93.34975585937494, 62.02978515625006], + [-93.36635742187494, 62.014550781250136], + [-93.29687, 61.981591796874994], + [-93.27343749999994, 61.96108398437508], + [-93.3330566406249, 61.93291015625002], + [-93.37202148437495, 61.928955078125114], + [-93.58178710937494, 61.94204101562511], + [-93.52670898437492, 61.87163085937499], + [-93.49423828124989, 61.846923828125085], + [-93.42993164062491, 61.81210937499992], + [-93.31440429687493, 61.779785156250085], + [-93.31201171874997, 61.76728515625004], + [-93.35234375000002, 61.739550781250074], + [-93.42060546874998, 61.705810546875114], + [-93.70966796874998, 61.60253906250006], + [-93.91274414062497, 61.48144531250006], + [-93.94086914062493, 61.44365234375002], + [-93.88925781249989, 61.3640625], + [-93.88881835937497, 61.34404296874996], + [-93.94199218749989, 61.30800781250008], + [-94.06074218749993, 61.317822265625125], + [-94.08344726562493, 61.3036621093751], + [-94.05522460937496, 61.266162109375074], + [-94.04995117187494, 61.21127929687509], + [-94.06777343749994, 61.1388671875001], + [-94.15405273437491, 61.025439453125074], + [-94.30869140624989, 60.87099609375005], + [-94.42719726562498, 60.73071289062506], + [-94.509375, 60.60454101562493], + [-94.56889648437487, 60.5419921875], + [-94.67875976562487, 60.537695312500006], + [-94.76171874999991, 60.498242187500125], + [-94.70527343749995, 60.4775390625], + [-94.67065429687491, 60.45332031250004], + [-94.64677734374993, 60.41640625], + [-94.67041015624997, 60.3010742187501], + [-94.7416015625, 60.1073730468751], + [-94.78579101562494, 59.953320312499955], + [-94.77666015624993, 59.47812], + [-94.78828124999998, 59.26787109374993], + [-94.81953124999995, 59.15131835937501], + [-94.870263671875, 59.08798828125006], + [-94.95732421874996, 59.068847656250085], + [-94.84658203124997, 59.050341796875045], + [-94.77617187500002, 59.020605468750006], + [-94.74374999999989, 58.97543945312506], + [-94.71337890624991, 58.903320312500114], + [-94.67338867187493, 58.870117187500085], + [-94.62373046875004, 58.875732421875], + [-94.57919921874995, 58.8684570312501], + [-94.53969726562497, 58.848388671875114], + [-94.41923828124996, 58.74550781250011], + [-94.28706054687493, 58.716015625000125], + [-94.2808105468749, 58.65893554687506], + [-94.33261718749989, 58.339111328125085], + [-94.33222656249998, 58.297363281250114], + [-94.27216796874993, 58.378027343750034], + [-94.20893554687493, 58.626367187499994], + [-94.12319335937494, 58.73671875000008], + [-94.05576171874989, 58.76000976562503], + [-93.78002929687494, 58.77255859374992], + [-93.48618164062492, 58.74448242187506], + [-93.37504882812493, 58.741015625000074], + [-93.27812, 58.75639648437502], + [-93.1787597656249, 58.72563476562496], + [-93.15458984374996, 58.69458007812503], + [-93.12651367187502, 58.56440429687498], + [-93.10019531249989, 58.48984375000006], + [-92.92514648437495, 58.22451171875002], + [-92.84174804687493, 58.0758789062501], + [-92.73984374999995, 57.84404296874996], + [-92.70166015624997, 57.777783203125125], + [-92.48964843749994, 57.468603515625034], + [-92.44941406249993, 57.384863281250006], + [-92.43281249999993, 57.3203125], + [-92.439794921875, 57.27504882812502], + [-92.47836914062495, 57.20527343750001], + [-92.54848632812494, 57.11093749999998], + [-92.61411132812489, 57.03901367187507], + [-92.67524414062493, 56.98955078124996], + [-92.73798828124993, 56.95263671875006], + [-92.80239257812497, 56.92832031250009], + [-92.7981445312499, 56.921972656250034], + [-92.72529296874998, 56.9335449218751], + [-92.65097656249995, 56.95830078124999], + [-92.5103027343749, 57.02231445312506], + [-92.45629882812491, 57.03671874999998], + [-92.30336914062491, 57.04584960937504], + [-92.29829101562504, 57.02275390624996], + [-92.3721191406249, 56.975146484375045], + [-92.35571289062491, 56.970605468749994], + [-92.24902343749994, 57.00898437500001], + [-92.01801757812495, 57.06376953124996], + [-91.11127929687498, 57.24121093750006], + [-90.89746093750003, 57.25693359375006], + [-90.59218749999991, 57.224462890625034], + [-90.34482421874989, 57.14907226562511], + [-90.07519531249994, 57.05190429687505], + [-89.7908203124999, 56.98134765625005], + [-89.34233398437502, 56.915429687500136], + [-89.21157226562494, 56.883837890625074], + [-88.94848632812489, 56.85131835937503], + [-88.8264648437499, 56.81425781249993], + [-88.67988281249998, 56.72504882812507], + [-88.44707031249987, 56.60869140624999], + [-88.27133789062486, 56.535693359375045], + [-88.07509765624997, 56.46728515624994], + [-87.87812, 56.3416015625001], + [-87.560888671875, 56.05634765625007], + [-87.48242187499991, 56.021289062500045], + [-87.28686523437494, 55.97465820312496], + [-86.91938476562495, 55.91455078124997], + [-86.37695312500003, 55.77324218749996], + [-86.13867187499997, 55.717871093750034], + [-85.98447265625, 55.695898437500006], + [-85.8305175781249, 55.65693359375007], + [-85.67666015625, 55.60107421875006], + [-85.55932617187491, 55.54018554687508], + [-85.47846679687504, 55.474267578124966], + [-85.40727539062502, 55.431152343750085], + [-85.28271484374994, 55.383300781250085], + [-85.21801757812491, 55.348974609375034], + [-85.21201171874992, 55.297460937500006], + [-85.36201171874993, 55.095458984375085], + [-85.3652832031249, 55.07929687499998], + [-85.21357421874998, 55.22436523437506], + [-85.12885742187495, 55.266210937500034], + [-85.06093749999997, 55.285644531250085], + [-84.91992187500003, 55.283349609374994], + [-84.70576171874993, 55.25922851562504], + [-84.51796874999994, 55.25888671874998], + [-84.3564941406249, 55.28251953124999], + [-84.21894531250004, 55.29311523437502], + [-84.10537109375, 55.290820312500074], + [-84.0229980468749, 55.2978027343751], + [-83.97177734374995, 55.31416015625004], + [-83.91059570312493, 55.314648437499955], + [-83.66767578124998, 55.26450195312506], + [-83.56948242187497, 55.261816406250034], + [-83.21435546874991, 55.214599609375], + [-82.9862792968749, 55.23139648437507], + [-82.94702148437491, 55.22221679687496], + [-82.86777343749992, 55.160693359375045], + [-82.80068359374994, 55.155908203125136], + [-82.6875, 55.16552734374997], + [-82.57744140625002, 55.1487304687501], + [-82.39326171874998, 55.067822265625125], + [-82.30825195312497, 54.99814453124998], + [-82.22661132812496, 54.855908203125125], + [-82.219384765625, 54.8134765625], + [-82.37060546874997, 54.48349609375009], + [-82.41806640624986, 54.355810546875034], + [-82.42416992187486, 54.2445800781251], + [-82.39414062499989, 54.18046875000002], + [-82.26357421874994, 54.07299804687497], + [-82.239892578125, 54.04482421875008], + [-82.16264648437487, 53.88569335937498], + [-82.14145507812492, 53.81762695312497], + [-82.14999999999989, 53.739550781250074], + [-82.19062, 53.61093749999998], + [-82.18037109375004, 53.51284179687505], + [-82.1461914062499, 53.36459960937506], + [-82.15917968749997, 53.26416015625003], + [-82.21923828124997, 53.21147460937496], + [-82.259912109375, 53.15981445312508], + [-82.29160156249995, 53.06611328125001], + [-82.29155273437496, 53.03071289062507], + [-82.26044921874993, 52.9611328125001], + [-82.20268554687496, 52.921679687500074], + [-82.10795898437493, 52.8773925781251], + [-82.02001953124997, 52.811621093750034], + [-81.85927734375, 52.651416015625074], + [-81.74233398437497, 52.563623046875136], + [-81.5994140624999, 52.432617187500085], + [-81.57167968749994, 52.36728515625009], + [-81.61152343749995, 52.324072265625006], + [-81.66123046874986, 52.29389648437507], + [-81.77636718749997, 52.25361328125004], + [-81.82788085937489, 52.22421875000009], + [-81.81455078124995, 52.21718750000008], + [-81.64799804687493, 52.239062500000074], + [-81.54951171874995, 52.23676757812498], + [-81.46621093749994, 52.204492187500136], + [-81.398095703125, 52.14223632812508], + [-81.28505859374997, 52.08920898437492], + [-81.12719726562497, 52.04541015625006], + [-80.96850585937497, 51.972216796875074], + [-80.70551757812504, 51.79833984375], + [-80.65795898437503, 51.75834960937502], + [-80.588037109375, 51.667236328125114], + [-80.49584960937494, 51.525097656250125], + [-80.44760742187489, 51.432226562500034], + [-80.4433105468749, 51.38857421875002], + [-80.49550781249997, 51.344677734375125], + [-80.67270507812492, 51.264746093750006], + [-80.85122070312497, 51.125], + [-80.79497070312496, 51.131835937500114], + [-80.67724609374997, 51.19086914062507], + [-80.47832031249993, 51.30732421874998], + [-80.36796875000002, 51.32988281249996], + [-80.26567382812496, 51.31635742187504], + [-80.10356445312487, 51.282861328125136], + [-79.96040039062493, 51.23515625000002], + [-79.83623046874996, 51.17333984375003], + [-79.651513671875, 51.00781250000006], + [-79.45615234374989, 50.87558593749995], + [-79.34790039062494, 50.76264648437504], + [-79.38071289062489, 50.8345214843751], + [-79.45263671874997, 50.9172851562501], + [-79.63618164062495, 51.049023437500125], + [-79.71445312499992, 51.11757812500005], + [-79.73139648437493, 51.150488281250006], + [-79.737451171875, 51.186279296875], + [-79.72324218749995, 51.25166015625001], + [-79.68881835937495, 51.346582031249994], + [-79.64296874999994, 51.413525390625125], + [-79.5857421874999, 51.452441406250045], + [-79.54746093749992, 51.493847656249955], + [-79.52802734374995, 51.537695312500006], + [-79.49755859374997, 51.569921875], + [-79.33867187500002, 51.62817382812497], + [-79.29697265624986, 51.622802734375114], + [-79.26425781249995, 51.552001953125085], + [-79.2261230468749, 51.537304687500125], + [-79.15273437499997, 51.52622070312498], + [-79.0908691406249, 51.50170898437497], + [-79.04052734375003, 51.46376953125005], + [-79.005029296875, 51.425341796875045], + [-78.98432617187504, 51.38637695312511], + [-78.93691406249997, 51.25913085937492], + [-78.90317382812495, 51.200292968750034], + [-78.89750976562493, 51.27167968750001], + [-78.85800781249989, 51.383935546875136], + [-78.82744140624996, 51.4299804687501], + [-78.73134765624994, 51.497460937499994], + [-78.73642578124989, 51.52661132812506], + [-78.77631835937493, 51.56577148437506], + [-78.97773437499993, 51.733789062499994], + [-78.98164062499993, 51.774560546875136], + [-78.927880859375, 51.798828125000114], + [-78.89111328124997, 51.84511718750011], + [-78.871240234375, 51.913427734375006], + [-78.82822265624995, 51.96298828124998], + [-78.70200195312489, 52.03271484374997], + [-78.59331054687496, 52.1396972656251], + [-78.53735351562491, 52.21328125], + [-78.49165039062495, 52.25209960937508], + [-78.44809570312495, 52.26137695312502], + [-78.51308593750005, 52.291113281250034], + [-78.52607421874993, 52.31069335937511], + [-78.52910156249993, 52.39916992187503], + [-78.55708007812504, 52.49189453125007], + [-78.60058593749994, 52.53510742187501], + [-78.723779296875, 52.627734375000045], + [-78.74414062499994, 52.65537109374998], + [-78.76577148437491, 52.76005859374999], + [-78.75361328124993, 52.812402343749994], + [-78.72167968749991, 52.856445312500085], + [-78.73984374999989, 52.898974609375045], + [-78.85410156249989, 52.97607421874994], + [-78.8982421874999, 53.043359375], + [-78.947119140625, 53.20620117187511], + [-78.99204101562492, 53.410351562499955], + [-79.04311523437494, 53.56049804687501], + [-79.10034179687497, 53.65664062500005], + [-79.11313476562489, 53.717187500000136], + [-79.08144531249994, 53.74228515625009], + [-79.0403320312499, 53.81796875000006], + [-79.00317382812497, 53.83657226562511], + [-78.945703125, 53.83159179687499], + [-78.9443847656249, 53.840234375000136], + [-79.0320312499999, 53.881054687500125], + [-79.07514648437498, 53.932373046875085], + [-79.07329101562496, 53.95141601562506], + [-78.99604492187493, 54.00249023437499], + [-79.00991210937491, 54.0239746093751], + [-79.06713867187494, 54.051953125000125], + [-79.241796875, 54.098876953125085], + [-79.17880859374995, 54.11694335937503], + [-79.138818359375, 54.15722656250006], + [-79.14672851562491, 54.16923828125002], + [-79.21596679687497, 54.185693359374994], + [-79.29565429687497, 54.21684570312496], + [-79.35615234374993, 54.26337890625001], + [-79.43056640625, 54.33662109375001], + [-79.47597656249994, 54.39477539062497], + [-79.52065429687497, 54.49155273437498], + [-79.5979492187499, 54.601660156250006], + [-79.63173828124994, 54.6291015625001], + [-79.67041015624991, 54.64682617187498], + [-79.71396484375, 54.65498046875004], + [-79.71235351562495, 54.6718261718751], + [-79.66552734374991, 54.69746093749998], + [-78.90922851562502, 54.881494140624994], + [-78.84624023437487, 54.908007812500074], + [-78.47504882812493, 55.0110351562501], + [-78.30361328125, 55.0685546875001], + [-78.12885742187493, 55.1513183593751], + [-77.89111328124989, 55.236425781250006], + [-77.77529296874994, 55.291259765625], + [-77.70214843749994, 55.344189453125125], + [-77.32495117187494, 55.555517578125006], + [-77.16508789062496, 55.66352539062498], + [-77.07255859374993, 55.75629882812507], + [-76.93808593749989, 55.8672363281251], + [-76.76181640624995, 55.99643554687495], + [-76.65048828124992, 56.10722656249996], + [-76.60405273437496, 56.19956054687495], + [-76.54638671874994, 56.35878906250005], + [-76.52983398437496, 56.49995117187504], + [-76.51962890625, 56.706982421875125], + [-76.52558593749998, 56.8917968750001], + [-76.5728515625, 57.1812011718751], + [-76.60141601562486, 57.27226562499999], + [-76.65541992187497, 57.38056640625004], + [-76.78627929687497, 57.59858398437504], + [-76.80981445312497, 57.65795898437506], + [-76.89091796874996, 57.75810546875002], + [-77.15678710937496, 58.018896484375034], + [-77.48916015625, 58.195312500000114], + [-77.55244140624993, 58.23959960937506], + [-77.68408203124991, 58.29135742187495], + [-77.88413085937489, 58.350732421875136], + [-78.01357421874997, 58.39916992187506], + [-78.35170898437494, 58.58066406250009], + [-78.46298828124986, 58.60244140625008], + [-78.5059082031249, 58.64912109375001], + [-78.51508789062493, 58.68237304687503], + [-78.50229492187489, 58.7690917968751], + [-78.48261718749995, 58.829101562500085], + [-78.45869140624998, 58.87329101562503], + [-78.43051757812492, 58.901757812500136], + [-78.24443359374993, 59.03505859375011], + [-78.14023437499995, 59.141748046874994], + [-78.0676757812499, 59.2001953125], + [-77.98764648437495, 59.245507812499994], + [-77.84282226562493, 59.30502929687506], + [-77.76069335937498, 59.38002929687505], + [-77.77944335937497, 59.41040039062503], + [-77.84467773437495, 59.44350585937502], + [-77.85903320312494, 59.47578125000001], + [-77.74902343749991, 59.5581542968751], + [-77.73349609374995, 59.580957031250136], + [-77.74750976562504, 59.65849609374993], + [-77.72617187499995, 59.67587890624992], + [-77.59042968749992, 59.68051757812498], + [-77.39667968749998, 59.56923828125005], + [-77.34907226562495, 59.57895507812509], + [-77.41103515624997, 59.609619140625114], + [-77.48530273437493, 59.684570312500114], + [-77.47456054687504, 59.715673828125034], + [-77.33164062499986, 59.79663085937503], + [-77.32763671874994, 59.83339843750005], + [-77.36840820312491, 59.88437], + [-77.37294921874994, 59.925097656250074], + [-77.28920898437494, 60.0220214843751], + [-77.31181640624993, 60.042382812499994], + [-77.5471679687499, 60.06113281250009], + [-77.58588867187498, 60.088183593750074], + [-77.57216796874994, 60.10097656250002], + [-77.46137695312493, 60.13349609375007], + [-77.45288085937497, 60.1458007812501], + [-77.64863281249998, 60.3625], + [-77.6814453124999, 60.427099609375034], + [-77.59814453124989, 60.50673828125008], + [-77.503564453125, 60.54272460937497], + [-77.51557617187504, 60.56318359375004], + [-77.63945312499996, 60.566894531250085], + [-77.714990234375, 60.577783203124994], + [-77.7908203124999, 60.63984375000004], + [-77.76123046874991, 60.679052734375034], + [-77.734228515625, 60.696972656250125], + [-77.66064453124994, 60.789501953124955], + [-77.58955078124993, 60.808593750000114], + [-77.60302734374991, 60.82519531249994], + [-77.8715332031249, 60.7858398437501], + [-77.99814453124995, 60.81821289062495], + [-78.12246093750005, 60.80961914062499], + [-78.18134765624995, 60.81914062499996], + [-78.15966796874989, 60.852197265625136], + [-77.93417968749989, 61.00263671875004], + [-77.8301269531249, 61.0840332031251], + [-77.76503906249997, 61.15751953124999], + [-77.73061523437497, 61.20639648437498], + [-77.72680664062491, 61.230664062500125], + [-77.74960937499995, 61.39301757812498], + [-77.73618164062495, 61.43735351562498], + [-77.64887695312493, 61.47866210937502], + [-77.51435546874998, 61.55629882812505], + [-77.69843749999998, 61.626416015625125], + [-77.81376953124996, 61.69477539062501], + [-77.88989257812491, 61.72871093749998], + [-77.94755859374993, 61.761865234374994], + [-78.02138671874997, 61.8320800781251], + [-78.07749023437495, 61.923388671875045], + [-78.13715820312493, 62.10737304687504], + [-78.14697265624997, 62.20869140625007], + [-78.13339843749986, 62.28227539062496], + [-78.10859374999998, 62.318115234375], + [-78.06811523437489, 62.355419921875125], + [-77.89990234374991, 62.426562500000045], + [-77.60395507812493, 62.53139648437511], + [-77.372412109375, 62.572509765625114], + [-77.20527343749998, 62.549951171875136], + [-76.87939453124994, 62.525390625000114], + [-76.616357421875, 62.465673828125034], + [-75.81689453124991, 62.31586914062507], + [-75.67553710937489, 62.24951171875006], + [-75.80922851562505, 62.19340820312499], + [-75.7898437499999, 62.17958984375002], + [-75.48881835937496, 62.2864257812501], + [-75.4092285156249, 62.30708007812504], + [-75.3412109375, 62.312109375], + [-75.11401367187489, 62.270751953125114], + [-75.02275390624996, 62.264453125000074], + [-74.90756835937495, 62.23002929687499], + [-74.63256835937497, 62.115673828125125], + [-74.61289062499995, 62.125195312500125], + [-74.68989257812493, 62.18344726562509], + [-74.6458007812499, 62.21113281250004], + [-74.42919921874991, 62.27182617187498], + [-74.20546875, 62.32138671874995], + [-74.04648437499992, 62.37001953125008], + [-73.87783203124994, 62.434375], + [-73.76396484375002, 62.468750000000114], + [-73.70507812499991, 62.47314453124994], + [-73.62998046874989, 62.454199218750006], + [-73.42836914062494, 62.36884765625001], + [-73.29897460937505, 62.32504882812498], + [-73.19516601562495, 62.279150390625034], + [-73.0493652343749, 62.198242187500085], + [-72.99238281249995, 62.180419921875], + [-72.88183593749997, 62.125390625], + [-72.73496093749989, 62.131103515625085], + [-72.68696289062498, 62.12456054687499], + [-72.67080078124997, 62.11386718749995], + [-72.64599609374989, 62.07661132812498], + [-72.63310546874993, 62.0527832031251], + [-72.6321289062499, 62.02724609375005], + [-72.66601562499997, 61.95532226562497], + [-72.771630859375, 61.840429687500006], + [-72.72739257812495, 61.838623046875], + [-72.66064453124994, 61.86323242187504], + [-72.57387695312494, 61.90712890625011], + [-72.50556640624998, 61.922656250000074], + [-72.36074218750005, 61.88779296875006], + [-72.22612304687487, 61.83159179687499], + [-72.17846679687494, 61.80180664062496], + [-72.12612304687494, 61.75322265625002], + [-72.0814453125, 61.728271484375085], + [-72.04003906249991, 61.68027343750006], + [-72.04296874999997, 61.66469726562511], + [-72.08203124999994, 61.64140625], + [-72.24707031249997, 61.602050781250114], + [-72.21586914062502, 61.58725585937495], + [-72.023095703125, 61.61196289062502], + [-71.96440429687496, 61.63627929687499], + [-71.92226562499997, 61.6769531250001], + [-71.86611328125, 61.68852539062499], + [-71.63828124999995, 61.6171875], + [-71.60478515624996, 61.59238281249992], + [-71.61943359375002, 61.57290039062505], + [-71.65620117187504, 61.55092773437502], + [-71.75576171875, 61.52675781250005], + [-71.84101562500004, 61.466015625000125], + [-71.85439453124991, 61.43979492187492], + [-71.79365234374998, 61.421191406250045], + [-71.6453125, 61.41313476562502], + [-71.64643554687493, 61.3987304687501], + [-71.73212890624995, 61.3720703125], + [-71.74345703124996, 61.337255859375006], + [-71.55151367187503, 61.213281250000136], + [-71.42270507812489, 61.158935546875085], + [-71.3484375, 61.14897460937502], + [-71.175146484375, 61.146533203125045], + [-71.03496093749996, 61.125537109375045], + [-70.72324218749995, 61.055175781250085], + [-70.54077148437491, 61.04248046875], + [-70.38364257812495, 61.063964843750114], + [-70.27929687499991, 61.06865234374999], + [-70.1872070312499, 61.040527343750114], + [-70.15795898437489, 61.020654296874994], + [-70.14414062499992, 60.98110351562511], + [-70.14589843749994, 60.9218261718751], + [-70.0953125, 60.880273437499994], + [-69.99243164062491, 60.8564941406251], + [-69.90922851562493, 60.86010742187497], + [-69.800439453125, 60.90668945312504], + [-69.70839843749997, 60.91464843750006], + [-69.677587890625, 60.94956054687506], + [-69.65043945312487, 61.014160156250085], + [-69.62363281249992, 61.04951171875001], + [-69.55698242187495, 61.05966796874995], + [-69.50332031249994, 61.04042968750011], + [-69.47192382812503, 61.010937500000125], + [-69.41435546875002, 60.92246093750006], + [-69.39833984374997, 60.88286132812499], + [-69.40473632812493, 60.84677734375009], + [-69.433447265625, 60.814257812500045], + [-69.48994140624995, 60.779589843750074], + [-69.57421874999991, 60.74272460937502], + [-69.64047851562489, 60.68979492187509], + [-69.72138671875004, 60.56743164062502], + [-69.7512695312499, 60.48745117187508], + [-69.75947265624998, 60.440234375000045], + [-69.75590820312496, 60.38852539062498], + [-69.74057617187495, 60.332275390625085], + [-69.70849609374991, 60.285937500000045], + [-69.6331054687499, 60.22036132812502], + [-69.628759765625, 60.198583984375006], + [-69.62314453124992, 60.14545898437504], + [-69.62978515624994, 60.122119140625074], + [-69.67373046874994, 60.07587890625007], + [-69.79565429687489, 60.02973632812507], + [-69.96284179687493, 60.01782226562497], + [-70.5093261718749, 60.01518554687496], + [-70.65483398437496, 60.02622070312506], + [-70.6197265625, 59.98427734375005], + [-70.46665039062489, 59.970849609374994], + [-70.32685546874993, 59.9713867187501], + [-69.80566406249997, 59.94487304687502], + [-69.73393554687493, 59.918017578125045], + [-69.67343749999995, 59.87075195312502], + [-69.63022460937495, 59.82182617187499], + [-69.58740234374991, 59.722314453124966], + [-69.5793945312499, 59.67509765624996], + [-69.60234375, 59.62270507812511], + [-69.6562011718749, 59.56508789062511], + [-69.69238281249991, 59.48842773437511], + [-69.71088867187504, 59.392529296875125], + [-69.68188476562489, 59.34174804687507], + [-69.4, 59.337792968749966], + [-69.3440429687499, 59.303076171875006], + [-69.35043945312486, 59.27719726562506], + [-69.45048828124993, 59.18002929687498], + [-69.45976562499993, 59.15244140625006], + [-69.41411132812496, 59.08686523437501], + [-69.4203125, 59.06821289062495], + [-69.44809570312486, 59.04916992187498], + [-69.47465820312496, 59], + [-69.50009765624989, 58.920654296875085], + [-69.53164062499994, 58.86923828125009], + [-69.6082031249999, 58.829492187499994], + [-69.64838867187493, 58.82080078125], + [-69.67734374999995, 58.83134765625002], + [-69.75302734375, 58.93959960937502], + [-69.78417968749994, 58.95571289062511], + [-69.81367187499993, 58.945556640625], + [-69.82851562499994, 58.92875976562496], + [-69.82861328124994, 58.90537109374998], + [-69.84160156250002, 58.88115234375002], + [-69.867578125, 58.8561523437501], + [-69.97915039062497, 58.81635742187498], + [-70.15996093749996, 58.78940429687498], + [-70.15434570312496, 58.76059570312498], + [-70.03300781249993, 58.745166015625045], + [-69.878564453125, 58.69697265624998], + [-69.78989257812486, 58.689306640625034], + [-69.650537109375, 58.72827148437497], + [-69.38183593749997, 58.85073242187505], + [-69.27109374999986, 58.88393554687505], + [-69.17348632812497, 58.896630859374994], + [-69.06362304687497, 58.89824218749996], + [-68.94150390624986, 58.888916015625], + [-68.69819335937495, 58.904541015625], + [-68.63730468749989, 58.8928710937501], + [-68.56289062499994, 58.865917968750125], + [-68.47490234374993, 58.823486328125], + [-68.41430664062503, 58.78271484375006], + [-68.38115234374993, 58.74350585937506], + [-68.3264648437499, 58.59541015625007], + [-68.25297851562493, 58.556640625], + [-68.23515625, 58.52817382812506], + [-68.22939453124994, 58.48457031250007], + [-68.23388671874994, 58.399218750000074], + [-68.31469726562489, 58.22690429687498], + [-68.35654296874989, 58.163232421875136], + [-68.4681640625, 58.07631835937502], + [-68.59687, 58.03686523437497], + [-68.82578125, 57.99985351562506], + [-68.94531250000003, 57.96879882812496], + [-69.03544921874993, 57.92602539062494], + [-69.04082031249996, 57.902490234375136], + [-68.78095703124995, 57.97583007812497], + [-68.49506835937495, 58.01166992187498], + [-68.41357421874997, 58.0517578125], + [-68.35185546874993, 58.09072265625011], + [-68.28911132812502, 58.17768554687507], + [-68.17553710937497, 58.40258789062506], + [-68.11103515624998, 58.47333984375007], + [-68.02104492187493, 58.48530273437504], + [-67.98115234374998, 58.4612304687501], + [-67.88779296874989, 58.329394531250074], + [-67.88828124999989, 58.29575195312495], + [-67.9114257812499, 58.26723632812502], + [-68.06386718750005, 58.13896484374999], + [-68.00898437499995, 58.15205078124998], + [-67.85585937499994, 58.27260742187505], + [-67.82333984374989, 58.31025390625007], + [-67.80522460937493, 58.36547851562494], + [-67.75595703124992, 58.4045898437501], + [-67.73706054687491, 58.385449218750125], + [-67.68969726562503, 58.24379882812502], + [-67.68818359374998, 58.14023437500006], + [-67.68056640624994, 58.10703125000006], + [-67.69765625000005, 58.0087402343751], + [-67.6782714843749, 57.99111328125008], + [-67.63222656249994, 58.07612304687498], + [-67.61718749999991, 58.1403320312501], + [-67.59633789062491, 58.186132812500006], + [-67.5696289062499, 58.21347656250006], + [-67.38198242187494, 58.300000000000125], + [-67.16284179687497, 58.37036132812506], + [-67.01943359375, 58.43291015625002], + [-66.90039062499997, 58.46279296875005], + [-66.72216796874991, 58.49101562499996], + [-66.60791015624991, 58.548925781250034], + [-66.55771484374989, 58.636621093750136], + [-66.5150390625, 58.697314453125045], + [-66.47998046874994, 58.73090820312498], + [-66.36240234374989, 58.791162109374994], + [-66.29853515624993, 58.79453124999998], + [-66.23740234375, 58.772265625000045], + [-66.16821289062503, 58.727099609375074], + [-66.09091796875, 58.65903320312506], + [-66.04462890624998, 58.60561523437502], + [-66.02954101562503, 58.56679687500011], + [-66.01704101562495, 58.43081054687511], + [-66.0023925781249, 58.43120117187502], + [-65.93124999999989, 58.53505859375005], + [-65.92290039062496, 58.5719726562501], + [-65.92792968749993, 58.610937500000034], + [-65.94965820312493, 58.64985351562498], + [-66.02128906249993, 58.73476562500005], + [-66.04936523437487, 58.787890625000045], + [-66.04306640624995, 58.82065429687495], + [-65.96704101562491, 58.839208984375006], + [-65.85483398437495, 58.8466308593751], + [-65.83593749999991, 58.86049804687508], + [-65.91840820312495, 58.89560546874995], + [-65.92070312499996, 58.91464843750009], + [-65.84140624999989, 58.97705078125003], + [-65.79482421875, 58.98046875], + [-65.70356445312495, 58.970605468750136], + [-65.72192382812497, 59.00258789062508], + [-65.72099609374996, 59.02377929687495], + [-65.69526367187495, 59.032031250000045], + [-65.54399414062496, 59.01186523437502], + [-65.5263183593749, 59.036230468750006], + [-65.39624023437497, 59.03842773437509], + [-65.38354492187494, 59.06020507812508], + [-65.49599609374994, 59.09130859375003], + [-65.60625, 59.11074218750008], + [-65.63984375000004, 59.12773437499999], + [-65.66562, 59.152783203125125], + [-65.7, 59.21333007812501], + [-65.69169921874993, 59.22939453125011], + [-65.66074218749995, 59.22968749999998], + [-65.60712890624995, 59.21313476562497], + [-65.57802734375005, 59.24497070312506], + [-65.54531250000005, 59.31972656250002], + [-65.51279296874992, 59.350390625000045], + [-65.41171875, 59.31499023437496], + [-65.4072753906249, 59.33022460937502], + [-65.48935546874992, 59.44775390625], + [-65.47509765624994, 59.47031249999998], + [-65.34970703124989, 59.4788085937501], + [-65.27377929687489, 59.46416015624996], + [-65.07431640624992, 59.378027343750006], + [-65.03823242187494, 59.38789062500007], + [-65.06884765624997, 59.41147460937506], + [-65.1709472656249, 59.46225585937492], + [-65.26318359374994, 59.49545898437495], + [-65.34550781249993, 59.5110351562501], + [-65.40742187499993, 59.53935546875002], + [-65.47519531249989, 59.61679687499998], + [-65.48647460937505, 59.648681640625085], + [-65.48085937499997, 59.69023437500002], + [-65.4333984374999, 59.776513671874994], + [-65.40615234374994, 59.795214843750074], + [-65.35791015624997, 59.80908203125006], + [-65.28876953124993, 59.818066406250125], + [-65.21225585937486, 59.80952148437498], + [-65.05449218749987, 59.75278320312498], + [-65.02817382812495, 59.77070312500007], + [-65.11328124999997, 59.80161132812498], + [-65.1592285156249, 59.8301269531251], + [-65.18139648437489, 59.86665039062507], + [-65.17172851562489, 59.90800781249996], + [-65.10488281249994, 59.99340820312497], + [-65.07338867187491, 60.062207031250125], + [-64.93125, 60.252001953125074], + [-64.88955078124994, 60.286523437499994], + [-64.84501953124993, 60.30830078124998], + [-64.81733398437498, 60.3310546875], + [-64.7058593749999, 60.33613281249998], + [-64.49941406250005, 60.26826171875001], + [-64.4363281249999, 60.228125], + [-64.41958007812494, 60.17138671874997], + [-64.52773437499997, 60.09453125], + [-64.71328124999991, 60.03715820312499], + [-64.76845703124997, 60.01210937500005], + [-64.73256835937494, 59.997558593750085], + [-64.55917968749986, 60.04340820312501], + [-64.40771484374991, 60.06479492187495], + [-64.28349609374993, 60.06406249999998], + [-64.18286132812494, 59.972949218750045], + [-64.16879882812492, 59.84653320312506], + [-64.22631835937491, 59.741210937500085], + [-64.15068359374996, 59.79360351562511], + [-64.05605468750005, 59.82255859374996], + [-63.978710937499926, 59.75371093749999], + [-63.969482421874915, 59.69760742187509], + [-63.92880859374989, 59.64492187500002], + [-63.84125976562498, 59.57441406250004], + [-63.7501953124999, 59.51259765625005], + [-63.8503906249999, 59.44780273437502], + [-63.97070312499997, 59.40908203125011], + [-63.945458984374994, 59.380175781250074], + [-63.78085937499995, 59.349267578124994], + [-63.75859374999993, 59.31865234374999], + [-63.775878906249915, 59.277148437500045], + [-63.75200195312502, 59.277343750000085], + [-63.6375, 59.34145507812502], + [-63.539892578124864, 59.332861328125034], + [-63.41513671874995, 59.194384765625074], + [-63.50620117187495, 59.1151855468751], + [-63.645507812499886, 59.07890624999999], + [-63.75639648437502, 59.06347656250006], + [-63.91049804687489, 59.06557617187511], + [-63.97114257812498, 59.053808593750034], + [-63.94101562499989, 59.02739257812499], + [-63.79365234374998, 59.02700195312508], + [-63.56787109374997, 59.04702148437508], + [-63.39897460937493, 59.07963867187496], + [-63.32553710937489, 59.08159179687502], + [-63.24843749999991, 59.068310546874955], + [-63.222509765624864, 59.05717773437502], + [-63.303710937499886, 59.034423828125], + [-63.3098632812499, 59.02646484374998], + [-63.27944335937494, 59.00317382812503], + [-63.216406249999864, 58.92797851562497], + [-63.22192382812503, 58.91103515625008], + [-63.28212890624994, 58.86738281250007], + [-63.18535156249993, 58.85776367187506], + [-63.05029296874997, 58.87817382812494], + [-63.00834960937493, 58.855419921875125], + [-62.92607421874996, 58.765039062499994], + [-62.87387695312489, 58.67246093749998], + [-63.1023437499999, 58.54575195312509], + [-63.218652343749966, 58.519531250000085], + [-63.38994140624996, 58.45253906250011], + [-63.43793945312498, 58.398828125], + [-63.537060546874926, 58.329931640625006], + [-63.47363281249997, 58.33066406249998], + [-63.29648437499995, 58.4412109375001], + [-63.209960937499886, 58.46694335937502], + [-63.145507812499915, 58.460449218750114], + [-63.11953124999994, 58.441748046875034], + [-63.13212890624993, 58.410839843750125], + [-63.075683593749886, 58.41479492187506], + [-62.83740234375003, 58.47939453125008], + [-62.73730468749997, 58.4921875], + [-62.60786132812498, 58.49638671874999], + [-62.593847656249864, 58.47402343750005], + [-62.674316406249915, 58.31918945312495], + [-62.81206054687502, 58.20039062500007], + [-63.06279296874993, 58.12709960937505], + [-63.15166015624993, 58.08417968750001], + [-63.26152343749993, 58.014697265625074], + [-63.2200195312499, 58.00214843750001], + [-62.98090820312504, 58.0933105468751], + [-62.817529296874966, 58.12924804687498], + [-62.58808593750004, 58.158105468749994], + [-62.486230468749966, 58.15405273437506], + [-62.30566406249997, 57.97226562499995], + [-62.20151367187489, 57.9546386718751], + [-62.117431640624886, 57.964111328125085], + [-61.95864257812505, 57.91176757812508], + [-61.899072265624994, 57.861328125000085], + [-61.91406250000003, 57.82504882812498], + [-61.96777343749997, 57.803320312500006], + [-61.9949218749999, 57.76943359375002], + [-61.93124999999989, 57.66855468750009], + [-61.9679687499999, 57.61191406250009], + [-62.083984374999915, 57.56191406250002], + [-62.16689453124994, 57.53657226562501], + [-62.253613281249926, 57.52875976562501], + [-62.338574218749926, 57.48452148437508], + [-62.377148437499955, 57.47797851562498], + [-62.495556640624926, 57.489208984375125], + [-62.45498046874991, 57.4619628906251], + [-62.396484374999915, 57.448193359375125], + [-62.303222656249915, 57.44067382812503], + [-62.194238281249994, 57.45458984375], + [-62.088085937499955, 57.45283203125001], + [-61.92114257812497, 57.42080078125005], + [-61.851074218749886, 57.38129882812501], + [-61.8498046874999, 57.3704101562501], + [-61.885839843749864, 57.347851562500125], + [-61.93886718749994, 57.27436523437507], + [-61.977441406249966, 57.24794921875002], + [-61.944531249999926, 57.228125], + [-61.86083984375003, 57.197558593750045], + [-61.798339843749915, 57.18623046875004], + [-61.71630859374997, 57.196191406250136], + [-61.62851562499995, 57.18315429687496], + [-61.33374023437494, 57.01059570312498], + [-61.3457519531249, 56.921582031250125], + [-61.39047851562495, 56.85297851562501], + [-61.372802734374886, 56.7758300781251], + [-61.37163085937502, 56.68081054687511], + [-61.531689453124926, 56.6545898437501], + [-62.062499999999886, 56.69907226562509], + [-62.36611328124994, 56.76699218750008], + [-62.38173828124991, 56.787695312500034], + [-62.295800781249994, 56.83281249999999], + [-62.37202148437498, 56.83618164062497], + [-62.460205078124915, 56.81845703125009], + [-62.497265624999926, 56.80170898437504], + [-62.39550781249997, 56.73002929687502], + [-62.116503906249875, 56.66684570312492], + [-61.99160156249994, 56.590820312500085], + [-61.85493164062498, 56.58427734374999], + [-61.81337890624994, 56.57050781250001], + [-61.73774414062498, 56.52602539062502], + [-61.76005859374993, 56.510742187500114], + [-61.89941406249997, 56.505419921875074], + [-62.009667968749966, 56.45385742187506], + [-61.940429687499886, 56.423583984375114], + [-61.692480468750006, 56.397070312500034], + [-61.514599609374926, 56.3903320312501], + [-61.42529296874994, 56.360644531250074], + [-61.49868164062505, 56.3275878906251], + [-61.70712890624989, 56.288720703124994], + [-61.713085937499955, 56.230957031250114], + [-61.558593749999915, 56.20781250000002], + [-61.421093749999955, 56.22182617187505], + [-61.364697265624926, 56.2160156250001], + [-61.32441406249998, 56.076220703125045], + [-61.30112304687495, 56.04716796874999], + [-61.44892578125004, 56.02236328125008], + [-61.4495117187499, 55.99570312499998], + [-61.35126953125004, 55.9736816406251], + [-61.187890624999966, 55.9553710937501], + [-61.13388671874989, 55.93027343749998], + [-61.12299804687498, 55.888574218749994], + [-61.08935546874997, 55.86635742187511], + [-60.995751953124994, 55.86235351562499], + [-60.89267578124995, 55.91420898437508], + [-60.8318359374999, 55.95786132812509], + [-60.74326171874989, 55.94145507812493], + [-60.73662109374996, 55.88696289062503], + [-60.63095703124992, 55.825], + [-60.59257812500002, 55.81484375000008], + [-60.56210937499995, 55.727001953125125], + [-60.47583007812494, 55.80512695312507], + [-60.41259765625003, 55.78857421875006], + [-60.341015624999926, 55.78466796874997], + [-60.365429687499926, 55.709082031250034], + [-60.40830078124995, 55.649560546874994], + [-60.35195312499994, 55.612353515625045], + [-60.308300781249926, 55.55698242187495], + [-60.19238281249994, 55.4809082031251], + [-60.224023437499994, 55.4443847656251], + [-60.36093749999989, 55.366308593750006], + [-60.43310546874994, 55.24277343750006], + [-60.45009765624994, 55.19995117187506], + [-60.520507812499886, 55.12900390624998], + [-60.617138671874955, 55.060205078124994], + [-60.55654296875005, 55.06748046875006], + [-60.340771484374955, 55.19394531250006], + [-60.212548828124966, 55.236425781250006], + [-59.93032226562491, 55.25942382812508], + [-59.86210937499996, 55.29487304687501], + [-59.75878906249997, 55.3095703125], + [-59.695507812499955, 55.26914062499992], + [-59.68906249999989, 55.19633789062502], + [-59.605468749999915, 55.17333984374994], + [-59.517675781249864, 55.19736328125006], + [-59.43789062500005, 55.175927734375136], + [-59.48583984374997, 55.130175781250045], + [-59.74169921874994, 54.94257812500001], + [-59.816406249999886, 54.86723632812493], + [-59.837792968749994, 54.813964843750114], + [-59.74990234374994, 54.887011718750074], + [-59.42856445312492, 55.05551757812492], + [-59.39418945312494, 55.08071289062508], + [-59.32416992187498, 55.15283203125003], + [-59.25957031249996, 55.19995117187506], + [-59.08632812499994, 55.18325195312502], + [-58.99711914062496, 55.149462890625074], + [-58.955810546874886, 55.05507812500002], + [-58.88579101562502, 54.952246093750034], + [-58.780175781249994, 54.838378906250114], + [-58.49990234374991, 54.78310546875002], + [-58.39814453124998, 54.77412109374998], + [-58.222851562499955, 54.81269531250001], + [-58.195263671874926, 54.86591796875004], + [-58.05849609375005, 54.882226562499966], + [-57.96245117187493, 54.875732421875085], + [-57.92929687499992, 54.773144531250125], + [-57.826855468749926, 54.71865234375005], + [-57.72490234374996, 54.673730468750136], + [-57.626611328124994, 54.65034179687498], + [-57.483007812499864, 54.64028320312508], + [-57.40449218750004, 54.59086914062496], + [-57.40444335937494, 54.570410156250034], + [-57.485351562499915, 54.51748046875011], + [-57.56323242187497, 54.44042968750003], + [-57.69926757812496, 54.38657226562506], + [-57.889111328124926, 54.3840820312501], + [-58.15136718749997, 54.350439453125006], + [-58.1619140624999, 54.319970703124994], + [-58.21972656249994, 54.28647460937492], + [-58.359130859374915, 54.25332031250011], + [-58.435205078124966, 54.22812], + [-58.55839843749993, 54.10297851562504], + [-58.633203125, 54.04956054687497], + [-58.719433593749955, 54.039404296875034], + [-58.840820312499915, 54.04448242187502], + [-58.92021484375002, 54.033105468749994], + [-58.97846679687498, 54.01025390624997], + [-59.012646484374926, 53.97626953124998], + [-59.03881835937494, 53.96362304687506], + [-59.201416015624915, 53.929101562500136], + [-59.496533203124926, 53.83417968749998], + [-59.65268554687495, 53.83125], + [-59.749462890624926, 53.84228515625003], + [-59.8230468749999, 53.83442382812504], + [-59.87333984374996, 53.80776367187511], + [-60.01416015624994, 53.76157226562492], + [-60.056542968749966, 53.73334960937504], + [-60.08134765624996, 53.701025390625034], + [-60.10048828124994, 53.6342285156251], + [-60.11728515624992, 53.61010742187497], + [-60.14492187499994, 53.59614257812498], + [-60.263330078124994, 53.61005859374998], + [-60.395410156249994, 53.653320312500085], + [-60.36953125000005, 53.60747070312499], + [-60.16025390624995, 53.52998046875001], + [-60.1002929687499, 53.48696289062511], + [-60.15712890624994, 53.449804687500006], + [-60.29028320312497, 53.391455078125034], + [-60.30576171874995, 53.36010742187503], + [-60.251171874999926, 53.343554687500045], + [-60.27270507812494, 53.31708984374998], + [-60.345703124999915, 53.289013671875125], + [-60.3375, 53.27744140625006], + [-60.329492187499966, 53.26611328125006], + [-60.14833984374994, 53.306542968750136], + [-59.98710937499993, 53.392822265625114], + [-59.881738281249966, 53.48007812499995], + [-59.82905273437498, 53.504541015625136], + [-59.621093749999886, 53.53681640624998], + [-59.49814453124989, 53.574755859375074], + [-59.32226562499994, 53.64375], + [-59.129394531249915, 53.743945312500074], + [-58.919580078124966, 53.87529296875002], + [-58.652050781249926, 53.97788085937495], + [-58.3267089843749, 54.051806640625074], + [-58.08808593750004, 54.089501953125136], + [-57.935986328124955, 54.09116210937492], + [-57.9282714843749, 54.10356445312496], + [-58.06484374999994, 54.126757812500074], + [-58.17744140625004, 54.131298828125125], + [-58.31748046874989, 54.11445312500007], + [-58.3607910156249, 54.15449218750004], + [-58.35615234375004, 54.171923828125045], + [-58.30996093749994, 54.20166015625006], + [-58.192089843749926, 54.228173828125136], + [-57.614941406249926, 54.19111328125004], + [-57.4160644531249, 54.162744140625136], + [-57.198876953124994, 53.924365234375045], + [-57.14897460937493, 53.847705078125074], + [-57.134960937499926, 53.79184570312506], + [-57.156933593749955, 53.756884765625045], + [-57.24399414062495, 53.715478515625136], + [-57.48945312500004, 53.633105468750045], + [-57.524072265624966, 53.61142578125006], + [-57.52734375000003, 53.599902343750045], + [-57.42021484374996, 53.58325195312503], + [-57.38613281249994, 53.560546875], + [-57.331738281249955, 53.469091796875034], + [-57.22138671875004, 53.52851562500007], + [-57.012158203124955, 53.672607421875114], + [-56.84086914062496, 53.73945312500004], + [-56.696582031249875, 53.757666015625034], + [-56.52431640625005, 53.766455078125034], + [-56.46499023437505, 53.76503906250011], + [-56.444335937499915, 53.71831054687499], + [-56.354003906249915, 53.62446289062507], + [-56.27021484374998, 53.600097656250085], + [-56.11015625, 53.58759765625001], + [-55.96611328125002, 53.4711425781251], + [-55.91123046874995, 53.39082031250007], + [-55.859375, 53.34389648437511], + [-55.86337890624995, 53.31225585937506], + [-55.8547851562499, 53.28583984375001], + [-55.816894531249915, 53.245751953124994], + [-55.79794921874995, 53.211962890625045], + [-55.808203125, 53.13466796875011], + [-55.892333984374915, 53.000439453125125], + [-55.829882812499875, 52.87841796874994], + [-55.857910156249915, 52.82338867187511], + [-55.87250976562504, 52.735693359375006], + [-55.8186523437499, 52.677148437499994], + [-55.80283203124989, 52.64316406249998], + [-55.84843749999993, 52.623339843750045], + [-56.166992187499915, 52.574755859375074], + [-56.29238281250005, 52.573779296875074], + [-56.324902343749926, 52.54453124999998], + [-56.228417968749994, 52.535986328125006], + [-56.05258789062495, 52.5374023437501], + [-55.84018554687495, 52.507617187500074], + [-55.74648437499994, 52.4745605468751], + [-55.705957031249966, 52.428271484375074], + [-55.716210937499994, 52.39150390625005], + [-55.7771484374999, 52.3642578125], + [-55.89667968749998, 52.36958007812504], + [-56.01171874999997, 52.394482421875125], + [-56.00463867187497, 52.37041015625002], + [-55.83364257812494, 52.31040039062506], + [-55.78349609374993, 52.27993164062505], + [-55.69106445312494, 52.24160156250008], + [-55.67280273437504, 52.19013671875007], + [-55.695214843749994, 52.13779296875006], + [-56.017480468749994, 51.929296875000034], + [-56.282568359375006, 51.7970703125001], + [-56.54858398437503, 51.68100585937509], + [-56.97597656250005, 51.45766601562505], + [-57.018261718749955, 51.44677734374997], + [-57.095605468749994, 51.442529296874994], + [-57.29921875, 51.478271484375], + [-57.46166992187497, 51.46909179687506], + [-57.7695800781249, 51.425927734374994], + [-57.853759765624915, 51.39951171874992], + [-58.02265625000004, 51.32207031249996], + [-58.08940429687496, 51.31098632812501], + [-58.27045898437498, 51.29521484374999], + [-58.442285156249994, 51.30590820312506], + [-58.510351562500006, 51.295068359375136], + [-58.59326171875003, 51.257128906250045], + [-58.61474609374994, 51.23706054687506], + [-58.637597656249994, 51.171679687500045], + [-59.054931640624915, 50.879101562500125], + [-59.16538085937495, 50.779882812500006], + [-59.37802734374995, 50.67543945312502], + [-59.61191406249989, 50.492089843749994], + [-59.81533203124994, 50.418261718750045], + [-59.88632812499992, 50.316406250000085], + [-60.08017578124989, 50.2545898437501], + [-60.43808593749989, 50.23886718750009], + [-60.6082031249999, 50.22114257812504], + [-60.80722656249995, 50.24980468750002], + [-60.95629882812494, 50.205419921875034], + [-61.18071289062502, 50.191503906250034], + [-61.289746093749926, 50.20195312500002], + [-61.72485351562503, 50.10405273437499], + [-61.835351562499994, 50.19697265625007], + [-61.91953124999989, 50.2328613281251], + [-62.16523437500004, 50.23891601562511], + [-62.361669921875006, 50.2772949218751], + [-62.54091796874994, 50.28452148437498], + [-62.71542968749995, 50.30166015625008], + [-62.830224609374994, 50.30146484375004], + [-62.9497558593749, 50.29135742187495], + [-63.13564453124994, 50.29379882812509], + [-63.238623046874864, 50.242578125000136], + [-63.586669921874915, 50.25820312500011], + [-63.73359374999998, 50.30463867187498], + [-63.8539550781249, 50.31435546875002], + [-64.01582031249993, 50.30395507812503], + [-64.17041015624989, 50.26943359375011], + [-64.50893554687494, 50.30893554687498], + [-64.86787109374998, 50.27548828125009], + [-65.18090820312497, 50.297900390625045], + [-65.2686035156249, 50.3200195312501], + [-65.76245117187497, 50.25927734374997], + [-65.95537109375002, 50.29414062499998], + [-66.12553710937496, 50.201025390625006], + [-66.24218749999991, 50.22036132812505], + [-66.36884765624995, 50.20664062500009], + [-66.41108398437504, 50.224267578125136], + [-66.49550781249991, 50.2118652343751], + [-66.55004882812491, 50.161181640625074], + [-66.62172851562505, 50.155419921875136], + [-66.740869140625, 50.06552734374995], + [-66.94116210937503, 49.993701171875045], + [-67.23437499999989, 49.601757812499955], + [-67.26191406249993, 49.45117187500003], + [-67.37202148437495, 49.348437500000045], + [-67.46923828124997, 49.33461914062508], + [-67.54926757812493, 49.33227539062494], + [-68.05625, 49.25678710937504], + [-68.28193359374998, 49.197167968750136], + [-68.22060546875, 49.14965820312506], + [-68.29453124999986, 49.11435546874998], + [-68.41440429687486, 49.099511718750136], + [-68.54384765624997, 49.05615234375], + [-68.62788085937493, 49.00717773437498], + [-68.66904296874989, 48.939501953125045], + [-68.929052734375, 48.82895507812509], + [-69.23076171874993, 48.57363281250011], + [-69.37495117187498, 48.38642578124998], + [-69.55009765624996, 48.250781250000074], + [-69.67387695312496, 48.19916992187504], + [-69.76191406250004, 48.191162109375], + [-69.85170898437494, 48.20737304687492], + [-70.0010253906249, 48.2709472656251], + [-70.11064453124993, 48.27797851562511], + [-70.38369140624997, 48.36650390625002], + [-71.01826171874993, 48.455615234375045], + [-70.92260742187497, 48.42231445312501], + [-70.83876953124997, 48.36738281250001], + [-70.67109374999998, 48.35322265624998], + [-70.500634765625, 48.354345703125034], + [-70.1453124999999, 48.24355468750002], + [-69.97119140624994, 48.205761718750125], + [-69.86552734374993, 48.17226562500005], + [-69.775, 48.09809570312504], + [-69.83984374999991, 47.95258789062507], + [-69.9055664062499, 47.83222656250007], + [-69.9944335937499, 47.73989257812508], + [-70.3000976562499, 47.50302734374998], + [-70.44804687499993, 47.42343750000009], + [-70.70585937499996, 47.13979492187505], + [-70.97270507812487, 47.00668945312509], + [-71.115625, 46.924951171875136], + [-71.26777343749995, 46.79594726562499], + [-71.62475585937503, 46.698388671874994], + [-71.75727539062493, 46.673583984375085], + [-71.87958984374998, 46.68681640624996], + [-72.02846679687494, 46.607421875000114], + [-72.20463867187496, 46.55888671874999], + [-72.25664062499987, 46.48505859375007], + [-72.68012695312493, 46.2873046875001], + [-72.84267578125, 46.26240234374998], + [-72.98100585937493, 46.209716796875085], + [-73.02192382812493, 46.120263671874994], + [-73.14541015624994, 46.06630859375002], + [-73.17968749999991, 46.025], + [-73.28354492187492, 45.89985351562504], + [-73.4766113281249, 45.738232421874955], + [-73.71186523437498, 45.71118164062497], + [-73.79785156249991, 45.65493164062505], + [-73.89741210937493, 45.56416015625004], + [-74.03784179687494, 45.501855468750136], + [-74.31508789062494, 45.531054687500045], + [-74.24765624999989, 45.49287109375007], + [-73.99960937499989, 45.43334960937503], + [-73.97382812499995, 45.345117187499994], + [-74.09809570312495, 45.32402343749996], + [-74.35830078124994, 45.20639648437498], + [-74.70888671874997, 45.0038574218751] + ] + ], + [ + [ + [-96.78232421874998, 72.93662109375], + [-96.94379882812501, 72.92670898437495], + [-97.0927734375, 72.99692382812503], + [-97.09765625, 73.06240234374997], + [-97.08769531250002, 73.09848632812503], + [-97.06923828125, 73.13017578125002], + [-97.01499023437495, 73.15727539062502], + [-96.86240234374995, 73.18881835937506], + [-96.79316406249995, 73.16547851562501], + [-96.76777343749995, 73.13730468750003], + [-96.74443359374999, 73.12626953125002], + [-96.64599609375, 73.10190429687503], + [-96.598486328125, 73.07382812499998], + [-96.60351562499997, 73.04155273437499], + [-96.63540039062497, 72.99243164062503], + [-96.67060546874995, 72.9609375], + [-96.709228515625, 72.94697265624998], + [-96.78232421874998, 72.93662109375] + ] + ], + [ + [ + [-114.52153320312502, 72.592919921875], + [-114.45810546874998, 72.58037109374999], + [-114.34243164062495, 72.59077148437498], + [-114.17446289062501, 72.62407226562502], + [-113.95781250000002, 72.65146484375], + [-113.69243164062496, 72.67280273437501], + [-113.62216796874993, 72.64682617187503], + [-113.57807617187501, 72.65209960937506], + [-113.50004882812502, 72.69443359375006], + [-113.48613281250003, 72.72226562500003], + [-113.49589843749997, 72.75366210937506], + [-113.49140625, 72.82207031250005], + [-113.44985351562501, 72.86323242187498], + [-113.2923828125, 72.94980468750003], + [-113.20800781250003, 72.98100585937499], + [-113.07353515624999, 72.99526367187497], + [-112.75361328125001, 72.98603515624995], + [-112.45375976562502, 72.93662109375], + [-112.04809570312499, 72.88803710937498], + [-111.45541992187493, 72.76591796875005], + [-111.26972656249994, 72.71372070312498], + [-111.250390625, 72.66855468750003], + [-111.35551757812502, 72.572119140625], + [-111.61088867187499, 72.43559570312499], + [-111.81601562499995, 72.386328125], + [-111.895166015625, 72.35610351562497], + [-111.76162109374997, 72.33525390625007], + [-111.67509765625002, 72.30014648437503], + [-111.54355468749995, 72.35092773437498], + [-111.44736328124999, 72.40771484375], + [-111.31118164062495, 72.454833984375], + [-111.26479492187501, 72.45903320312507], + [-111.25341796875, 72.44907226562498], + [-111.27714843749995, 72.42485351562502], + [-111.28725585937497, 72.401123046875], + [-111.28374023437496, 72.37797851562507], + [-111.26806640624996, 72.36386718750003], + [-111.18461914062502, 72.35664062499998], + [-111.13989257812496, 72.36533203124998], + [-110.95898437499997, 72.43198242187506], + [-110.78154296874996, 72.53388671875004], + [-110.51254882812496, 72.59970703125003], + [-110.43930664062496, 72.63334960937505], + [-110.20512695312495, 72.66127929687497], + [-110.207958984375, 72.6810546875], + [-110.19716796875002, 72.75888671875003], + [-110.27910156250002, 72.79204101562505], + [-110.55361328124998, 72.86142578124998], + [-110.68940429687503, 72.94453125000004], + [-110.66083984374998, 73.00820312500002], + [-110.50927734375001, 72.99892578125], + [-110.09462890625, 72.99213867187495], + [-110.00844726562494, 72.983642578125], + [-109.60996093749993, 72.87568359375004], + [-109.46909179687502, 72.808447265625], + [-109.35712890624994, 72.77504882812497], + [-109.12192382812499, 72.726416015625], + [-109.04301757812499, 72.68686523437503], + [-108.98740234374993, 72.67080078125005], + [-108.96816406250001, 72.65410156250002], + [-108.98540039062497, 72.63681640625003], + [-108.99443359374995, 72.59599609374999], + [-108.95078124999993, 72.58286132812498], + [-108.79785156249996, 72.56752929687497], + [-108.75498046875002, 72.55107421874999], + [-108.69829101562502, 72.499267578125], + [-108.62773437500003, 72.41201171875], + [-108.56635742187495, 72.31733398437498], + [-108.46958007812496, 72.13876953125], + [-108.27641601562495, 71.90039062500003], + [-108.210400390625, 71.75117187500001], + [-108.18823242187501, 71.72377929687502], + [-108.14467773437502, 71.704931640625], + [-108.02080078125002, 71.677490234375], + [-107.92534179687502, 71.638671875], + [-107.812841796875, 71.62617187500004], + [-107.78544921875003, 71.62968750000005], + [-107.75747070312501, 71.66303710937498], + [-107.687255859375, 71.71611328125005], + [-107.34692382812494, 71.81923828125002], + [-107.329296875, 71.83525390624999], + [-107.36943359375, 71.85898437500003], + [-107.38178710937494, 71.87514648437502], + [-107.37685546875001, 71.88608398437503], + [-107.30600585937496, 71.89467773437502], + [-107.54262695312494, 72.02534179687498], + [-107.69584960937497, 72.14931640625002], + [-107.79404296875, 72.30263671875], + [-107.80903320312494, 72.34746093750007], + [-107.82373046875001, 72.44277343750002], + [-107.85561523437502, 72.46782226562499], + [-107.90981445312497, 72.49077148437505], + [-107.93251953124997, 72.52041015625005], + [-107.92368164062495, 72.55664062500006], + [-107.93437, 72.587744140625], + [-107.99716796874999, 72.65268554687498], + [-108.23823242187498, 73.10581054687503], + [-108.23740234374999, 73.14990234375003], + [-108.20415039062497, 73.18305664062495], + [-108.11831054687498, 73.20205078125], + [-107.97993164062494, 73.20673828124998], + [-107.93618164062501, 73.21713867187506], + [-107.98706054687497, 73.23310546875001], + [-108.07749023437502, 73.281396484375], + [-108.08940429687496, 73.30371093750003], + [-108.029052734375, 73.34873046875003], + [-107.72001953125002, 73.32905273437504], + [-107.4962890625, 73.28837890624999], + [-107.1134765625, 73.19213867187503], + [-107.07441406249994, 73.19741210937502], + [-107.03251953125002, 73.24531250000001], + [-106.95078124999998, 73.27602539062497], + [-106.828369140625, 73.26591796875005], + [-106.48212890624998, 73.19619140624997], + [-106.08164062500002, 73.07192382812505], + [-105.81269531250003, 73.01064453125], + [-105.62416992187498, 72.92749023437503], + [-105.49594726562498, 72.848974609375], + [-105.41513671874995, 72.788330078125], + [-105.41166992187495, 72.76464843749997], + [-105.43007812499997, 72.740380859375], + [-105.41108398437501, 72.70874023437503], + [-105.35454101562503, 72.66972656249999], + [-105.32319335937495, 72.63481445312499], + [-105.29755859374997, 72.56044921875002], + [-105.24692382812496, 72.46357421875001], + [-105.23408203125001, 72.41508789062499], + [-104.87832031250001, 71.97998046875], + [-104.810302734375, 71.90317382812498], + [-104.76699218749997, 71.867578125], + [-104.51831054687503, 71.69921875], + [-104.38593749999997, 71.57695312500005], + [-104.37314453124993, 71.49511718749997], + [-104.35537109374995, 71.4716796875], + [-104.34956054687501, 71.43398437500005], + [-104.35581054687496, 71.38208007812503], + [-104.38486328125002, 71.33754882812502], + [-104.43681640625003, 71.30029296874997], + [-104.48706054687496, 71.24790039062506], + [-104.56308593749999, 71.13242187499998], + [-104.56958007812499, 71.10405273437507], + [-104.51479492187502, 71.06425781250005], + [-104.166845703125, 70.92719726562501], + [-103.95346679687496, 70.76264648437495], + [-103.85346679687503, 70.73378906250002], + [-103.58457031249995, 70.63085937500003], + [-103.29467773437496, 70.57246093750004], + [-103.19716796875, 70.54731445312498], + [-103.10498046874994, 70.51025390624997], + [-103.07719726562497, 70.50883789062505], + [-103.02119140625003, 70.51582031249995], + [-103.00517578124996, 70.52592773437505], + [-103.00122070312494, 70.54096679687501], + [-103.0828125, 70.61909179687504], + [-103.08857421874998, 70.64970703125005], + [-103.04956054687503, 70.65507812499999], + [-102.75048828125003, 70.521875], + [-102.58916015624993, 70.46884765624998], + [-102.36875, 70.41323242187502], + [-101.98984374999996, 70.28505859375002], + [-101.93720703124998, 70.274560546875], + [-101.73222656249997, 70.286376953125], + [-101.67631835937495, 70.27827148437495], + [-101.64116210937497, 70.26557617187495], + [-101.62680664062499, 70.24833984374999], + [-101.61845703124997, 70.17241210937507], + [-101.56240234375001, 70.135009765625], + [-101.23916015624997, 70.15097656250006], + [-101.14853515624998, 70.147607421875], + [-101.09077148437503, 70.13569335937495], + [-101.04267578125, 70.11079101562504], + [-100.97333984375, 70.02949218749998], + [-100.90908203124997, 69.86918945312502], + [-100.90571289062498, 69.81171875000004], + [-100.93510742187493, 69.71533203125003], + [-100.98237304687497, 69.67988281250001], + [-101.04370117187503, 69.66870117187503], + [-101.21621093750001, 69.67963867187495], + [-101.33725585937498, 69.71025390625005], + [-101.40009765624998, 69.749267578125], + [-101.45673828124998, 69.83388671875002], + [-101.483837890625, 69.85019531250006], + [-101.50839843750002, 69.83315429687497], + [-101.56508789062502, 69.75566406249999], + [-101.60249023437501, 69.7212890625], + [-101.64765624999997, 69.69853515625007], + [-101.73359374999998, 69.70415039062505], + [-101.86025390624994, 69.73808593750005], + [-102.09794921874996, 69.824609375], + [-102.18212890624997, 69.845947265625], + [-102.23432617187494, 69.84223632812504], + [-102.34809570312503, 69.81298828125003], + [-102.52348632812496, 69.75820312499997], + [-102.59589843749997, 69.71791992187502], + [-102.56523437499995, 69.69218750000002], + [-102.54492187499999, 69.659814453125], + [-102.53486328124997, 69.62080078124995], + [-102.54091796874997, 69.59208984375005], + [-102.56313476562497, 69.573583984375], + [-102.62109374999996, 69.55151367187506], + [-102.74360351562495, 69.54775390625], + [-102.91977539062496, 69.56464843749998], + [-103.05917968749995, 69.59467773437495], + [-103.30322265625001, 69.67431640625003], + [-103.35927734374998, 69.68535156250005], + [-103.43476562499998, 69.66767578125001], + [-103.464892578125, 69.64448242187498], + [-103.41801757812495, 69.61142578125], + [-103.29404296875, 69.56845703125003], + [-103.14243164062493, 69.49726562500001], + [-103.10185546874993, 69.48334960937501], + [-103.06274414062496, 69.48491210937507], + [-103.04892578124999, 69.47177734375006], + [-103.03183593749996, 69.43349609375], + [-103.03979492187499, 69.36757812499997], + [-103.11269531250001, 69.235986328125], + [-103.12021484374995, 69.20458984374997], + [-103.09033203124999, 69.21201171874998], + [-102.88408203124997, 69.34130859375003], + [-102.77744140625, 69.37758789062497], + [-102.54648437499995, 69.43447265625], + [-102.44677734374997, 69.476318359375], + [-102.15141601562502, 69.48769531250002], + [-102.04594726562493, 69.46484374999997], + [-101.97822265625, 69.42509765625005], + [-101.97553710937498, 69.40703125000002], + [-102.05288085937501, 69.36044921875003], + [-102.06689453125003, 69.33710937499998], + [-102.07089843749995, 69.3076171875], + [-102.06401367187497, 69.28115234375002], + [-102.04609374999997, 69.25766601562503], + [-101.99296874999997, 69.23603515624998], + [-101.89912109374995, 69.24550781249997], + [-101.87285156250002, 69.23994140624998], + [-101.82250976562497, 69.21708984375005], + [-101.78925781249995, 69.181640625], + [-101.78779296875001, 69.13227539062498], + [-101.85712890625001, 69.02397460937505], + [-101.98056640624993, 68.98852539062503], + [-102.35878906249998, 68.92285156250006], + [-102.48842773437502, 68.88891601562497], + [-102.73833007812495, 68.86499023437497], + [-102.83486328124998, 68.833251953125], + [-102.89506835937499, 68.8236328125], + [-103.16225585937498, 68.82871093750006], + [-103.46821289062497, 68.80854492187504], + [-103.82036132812503, 68.84799804687498], + [-104.06733398437498, 68.865576171875], + [-104.35268554687494, 68.92817382812498], + [-104.46015624999998, 68.91240234375005], + [-104.57143554687501, 68.87211914062502], + [-105.105859375, 68.92041015625], + [-105.16928710937495, 68.95537109375002], + [-105.14833984374995, 68.978125], + [-105.02163085937498, 69.052490234375], + [-105.01357421875002, 69.06806640624995], + [-105.019580078125, 69.08125], + [-105.262353515625, 69.093994140625], + [-105.53300781249997, 69.13354492187497], + [-105.80498046874996, 69.15317382812498], + [-106.00839843750002, 69.147607421875], + [-106.140869140625, 69.16201171875002], + [-106.27016601562497, 69.19458007812497], + [-106.34116210937495, 69.224365234375], + [-106.35395507812498, 69.25122070312497], + [-106.35571289062499, 69.280615234375], + [-106.34423828124996, 69.33964843750005], + [-106.36137695312499, 69.38105468749995], + [-106.41997070312502, 69.41376953124995], + [-106.539794921875, 69.44306640624998], + [-106.65908203124997, 69.439599609375], + [-106.75996093750001, 69.40712890625002], + [-106.85581054687499, 69.34731445312502], + [-107.03344726562494, 69.18076171875], + [-107.12250976562497, 69.15229492187498], + [-107.35336914062502, 69.03168945312501], + [-107.43989257812497, 69.00214843749995], + [-107.86337890625, 68.95434570312497], + [-108.36499023437497, 68.93476562499998], + [-108.55253906249999, 68.89741210937501], + [-108.73041992187498, 68.82744140625007], + [-108.9458984375, 68.75981445312505], + [-109.47211914062501, 68.67670898437498], + [-109.95854492187499, 68.63027343750005], + [-110.46762695312496, 68.610009765625], + [-110.84809570312503, 68.57841796875005], + [-110.95722656249997, 68.59418945312498], + [-111.12758789062494, 68.58833007812501], + [-111.3109375, 68.54204101562502], + [-111.51806640625, 68.53305664062503], + [-112.30493164062499, 68.51621093749998], + [-112.66621093749997, 68.48525390625], + [-112.86425781249999, 68.47709960937502], + [-113.01953125, 68.48134765625], + [-113.12773437500002, 68.49414062500003], + [-113.231396484375, 68.53540039062497], + [-113.33808593749997, 68.59877929687502], + [-113.554833984375, 68.76757812500003], + [-113.61684570312501, 68.8384765625], + [-113.59252929687503, 68.95986328125005], + [-113.60854492187501, 69.03017578124997], + [-113.68066406249996, 69.181982421875], + [-113.69414062499995, 69.19501953124998], + [-114.07343749999995, 69.251318359375], + [-114.32294921874998, 69.26914062499998], + [-114.69907226562495, 69.27275390625002], + [-115.15903320312496, 69.26474609374998], + [-115.61811523437495, 69.28295898437506], + [-115.86074218750001, 69.30356445312498], + [-116.10156249999996, 69.337158203125], + [-116.51347656249993, 69.42460937500005], + [-116.53681640624998, 69.43354492187498], + [-116.56879882812501, 69.46269531249999], + [-116.60947265624995, 69.51201171874999], + [-116.71201171874998, 69.57622070312502], + [-116.99277343749998, 69.71938476562497], + [-117.10400390624999, 69.80424804687502], + [-117.12197265625001, 69.82587890624998], + [-117.14863281250001, 69.88813476562498], + [-117.18403320312494, 69.99106445312498], + [-117.19541015624995, 70.05405273437503], + [-117.16274414062497, 70.09248046875004], + [-117.13544921875, 70.10014648437499], + [-116.55380859374998, 70.17504882812497], + [-115.52910156250003, 70.25712890625002], + [-114.59233398437497, 70.31245117187498], + [-114.1669921875, 70.30747070312503], + [-113.91660156249998, 70.28154296875002], + [-113.66552734374999, 70.269677734375], + [-113.21074218749996, 70.26381835937502], + [-112.63789062499997, 70.225244140625], + [-112.52275390624996, 70.22856445312505], + [-112.26596679687496, 70.25468750000005], + [-112.18964843749995, 70.27558593750004], + [-111.78369140625003, 70.27290039062501], + [-111.70488281249996, 70.28574218749998], + [-111.63256835937497, 70.30883789062497], + [-111.72583007812496, 70.35205078124997], + [-112.11416015624994, 70.446875], + [-113.1455078125, 70.616357421875], + [-113.39702148437499, 70.65239257812507], + [-113.75727539062503, 70.69072265625005], + [-113.96606445312501, 70.69619140625002], + [-114.23217773437496, 70.67426757812498], + [-114.331396484375, 70.67524414062501], + [-114.59262695312493, 70.64223632812502], + [-114.84072265624995, 70.62138671875005], + [-115.31123046874997, 70.601171875], + [-115.99091796874997, 70.586279296875], + [-116.086083984375, 70.590673828125], + [-116.22587890624996, 70.61640625000001], + [-116.32729492187502, 70.62373046874998], + [-116.992529296875, 70.603662109375], + [-117.58706054687498, 70.62954101562502], + [-118.2640625, 70.888330078125], + [-118.37651367187497, 70.96772460937501], + [-118.35253906249997, 71.00004882812502], + [-118.26909179687493, 71.03471679687505], + [-117.93383789062503, 71.13466796875], + [-117.81406249999996, 71.15844726562503], + [-117.31396484374994, 71.21210937499995], + [-116.81528320312496, 71.27695312500003], + [-116.42153320312495, 71.33798828125003], + [-116.22822265625, 71.35917968749999], + [-116.04208984375, 71.36166992187506], + [-115.891650390625, 71.38178710937498], + [-115.92226562500002, 71.40107421875001], + [-116.04531249999995, 71.42309570312506], + [-116.04394531250003, 71.45429687500001], + [-115.98027343750002, 71.46928710937505], + [-115.73374023437498, 71.48510742187497], + [-115.471875, 71.46582031250006], + [-115.341015625, 71.47241210937497], + [-115.30341796874997, 71.49370117187505], + [-115.33813476562503, 71.510888671875], + [-115.58666992187494, 71.54638671875003], + [-116.78027343750003, 71.44418945312498], + [-117.33710937499995, 71.43461914062499], + [-117.72333984374995, 71.39067382812502], + [-117.93564453125003, 71.39208984375003], + [-118.18818359374997, 71.4359375], + [-118.221875, 71.449072265625], + [-118.22646484374995, 71.46708984375005], + [-118.14833984375002, 71.525732421875], + [-117.87841796875001, 71.56083984375005], + [-117.742333984375, 71.65932617187502], + [-117.88759765625002, 71.66103515625002], + [-118.37153320312503, 71.63994140624999], + [-118.58300781250003, 71.64902343749998], + [-118.868408203125, 71.68676757812503], + [-118.952099609375, 71.73173828125005], + [-118.98769531249997, 71.7642578125], + [-118.99375, 71.80302734374999], + [-118.98417968749996, 71.91308593750003], + [-118.95981445312496, 71.97221679687502], + [-118.94462890624997, 71.98554687499995], + [-118.58984375, 72.16748046875], + [-118.36865234374997, 72.20546875], + [-118.21347656249998, 72.26289062499998], + [-118.207470703125, 72.28691406249999], + [-118.2458984375, 72.31103515625003], + [-118.39047851562498, 72.36953125000002], + [-118.44863281250001, 72.39921875000005], + [-118.481298828125, 72.42768554687498], + [-118.45659179687495, 72.47250976562506], + [-118.37451171875, 72.53388671875004], + [-118.13310546874995, 72.63281250000003], + [-117.55170898437498, 72.83110351562502], + [-117.25644531249995, 72.914404296875], + [-116.97167968750003, 72.95932617187503], + [-116.57324218749994, 73.05493164062506], + [-115.55219726562494, 73.2134765625], + [-114.63823242187499, 73.37265625000003], + [-114.30190429687495, 73.33071289062502], + [-114.20639648437495, 73.29780273437495], + [-114.16396484375001, 73.26982421875005], + [-114.12705078124995, 73.23071289062497], + [-114.095458984375, 73.1802734375], + [-114.05170898437497, 73.07099609375004], + [-114.04614257812499, 73.01459960937501], + [-114.05375976562503, 72.95805664062502], + [-114.07475585937495, 72.90683593749998], + [-114.10917968749995, 72.86098632812497], + [-114.17768554687495, 72.80507812500005], + [-114.280322265625, 72.73906249999999], + [-114.49785156249999, 72.62587890625002], + [-114.52153320312502, 72.592919921875] + ] + ], + [ + [ + [-105.28891601562499, 72.919921875], + [-105.33935546874996, 72.91489257812503], + [-105.43408203124999, 72.93798828125003], + [-105.57299804687496, 72.98930664062499], + [-105.80014648437495, 73.09331054687505], + [-106.07104492187499, 73.19638671875], + [-106.11264648437493, 73.25810546875005], + [-106.18002929687499, 73.3041015625], + [-106.52573242187498, 73.41337890625007], + [-106.750390625, 73.45771484374995], + [-106.92153320312497, 73.479833984375], + [-106.94965820312501, 73.5103515625], + [-106.831005859375, 73.59907226562498], + [-106.69482421874997, 73.66992187500003], + [-106.61396484375001, 73.69560546875002], + [-106.36210937499996, 73.71860351562498], + [-105.51230468750002, 73.765771484375], + [-105.31796874999995, 73.76713867187502], + [-105.11445312499997, 73.74443359375002], + [-104.83466796875, 73.64726562500002], + [-104.71826171874999, 73.63627929687499], + [-104.64877929687496, 73.614404296875], + [-104.5875, 73.57807617187495], + [-104.55507812499997, 73.54111328124998], + [-104.55234374999993, 73.46557617187503], + [-104.58286132812493, 73.35390625000002], + [-104.62172851562495, 73.3111328125], + [-104.79101562499999, 73.167626953125], + [-104.96865234375002, 73.08867187499999], + [-105.00258789062501, 73.03754882812498], + [-105.07460937500002, 72.99702148437498], + [-105.20063476562494, 72.94731445312507], + [-105.28891601562499, 72.919921875] + ] + ], + [ + [ + [-79.53730468749998, 73.65449218749998], + [-79.36679687499998, 73.64135742187497], + [-78.2865234375, 73.66582031250007], + [-78.06293945312501, 73.64765625000001], + [-77.38212890624993, 73.53666992187505], + [-77.20654296874997, 73.49956054687505], + [-77.11977539062497, 73.45048828124999], + [-77.04150390625, 73.37304687500003], + [-77.00532226562501, 73.35605468750003], + [-76.75869140624994, 73.31000976562495], + [-76.65727539062499, 73.25419921875005], + [-76.62158203125, 73.22534179687503], + [-76.56977539062501, 73.15927734374998], + [-76.45844726562498, 73.121826171875], + [-76.33115234374998, 73.10048828125], + [-76.28955078125003, 73.08100585937504], + [-76.30957031250003, 72.99790039062498], + [-76.25527343749997, 72.959228515625], + [-76.13505859374999, 72.91240234375005], + [-76.08999023437497, 72.881201171875], + [-76.18339843749999, 72.84306640625005], + [-76.400537109375, 72.820654296875], + [-77.01357421875, 72.84399414062497], + [-77.83593750000003, 72.89682617187498], + [-78.31420898437503, 72.88183593750006], + [-78.55405273437495, 72.85771484375002], + [-79.13417968750002, 72.77163085937497], + [-79.3193359375, 72.75771484375], + [-79.50053710937496, 72.75595703124998], + [-79.820703125, 72.82631835937502], + [-79.93686523437503, 72.86362304687498], + [-79.97529296874995, 72.89248046875], + [-80.05161132812495, 72.97700195312498], + [-80.11445312499998, 73.07822265625], + [-80.14643554687501, 73.16132812499995], + [-80.18330078124995, 73.22465820312499], + [-80.29272460937497, 73.24560546875], + [-80.61791992187494, 73.27080078125007], + [-80.72685546874993, 73.30546875000002], + [-80.77641601562502, 73.33417968750001], + [-80.82416992187495, 73.38066406250007], + [-80.82294921874998, 73.42895507812503], + [-80.79799804687497, 73.471533203125], + [-80.77695312500003, 73.48198242187502], + [-80.73583984375, 73.48310546874998], + [-80.827001953125, 73.53466796875], + [-80.85849609375003, 73.59140625], + [-80.86074218749997, 73.67055664062497], + [-80.84887695312503, 73.72124023437499], + [-80.82285156249995, 73.74345703124999], + [-80.76274414062496, 73.75776367187498], + [-80.62138671874996, 73.76733398437497], + [-80.41230468749998, 73.76542968750002], + [-80.120263671875, 73.70708007812505], + [-79.88935546874995, 73.70151367187506], + [-79.53730468749998, 73.65449218749998] + ] + ], + [ + [ + [-86.58935546874997, 71.01079101562507], + [-86.54965820312495, 70.98876953125003], + [-86.32128906249997, 71.01679687499995], + [-86.12714843749995, 71.04897460937502], + [-85.82456054687503, 71.12573242187503], + [-85.64384765624999, 71.15244140624998], + [-85.09487304687497, 71.15195312500006], + [-85.00156249999995, 71.13745117187503], + [-85.04277343750002, 71.09160156250002], + [-85.06577148437498, 71.07861328125003], + [-85.04765624999993, 71.05869140625006], + [-84.98847656249995, 71.03173828124997], + [-84.87031249999995, 71.001806640625], + [-84.82373046874997, 71.02861328125005], + [-84.78959960937493, 71.09326171875], + [-84.70859374999995, 71.35869140625007], + [-84.67431640625, 71.43876953125005], + [-84.65810546874997, 71.51459960937504], + [-84.65996093749999, 71.58613281249995], + [-84.69941406249995, 71.63144531250003], + [-84.84013671874993, 71.65864257812498], + [-85.0322265625, 71.65405273437503], + [-85.13090820312502, 71.66123046874998], + [-85.25048828124994, 71.67529296875], + [-85.33906249999998, 71.69726562500003], + [-85.39667968749998, 71.72705078124997], + [-85.51152343749993, 71.816552734375], + [-85.59619140624994, 71.86640625000004], + [-85.81333007812495, 71.9564453125], + [-85.91162109375, 71.98652343749998], + [-85.86210937499996, 72.02197265625003], + [-85.66479492187497, 72.06279296874999], + [-85.54580078125, 72.10156249999997], + [-85.405908203125, 72.21484375000006], + [-85.321875, 72.23315429687506], + [-85.01875, 72.21816406250002], + [-84.60849609375, 72.12949218749998], + [-84.35166015624998, 72.05263671875005], + [-84.28374023437499, 72.04448242187499], + [-84.28232421874998, 72.05844726562498], + [-84.34746093750002, 72.09443359375004], + [-84.64296875, 72.18955078125006], + [-84.77753906249998, 72.25878906250003], + [-84.84199218749995, 72.30815429687505], + [-84.81103515624994, 72.32954101562498], + [-84.644677734375, 72.35141601562498], + [-84.62304687500003, 72.37656250000003], + [-84.84941406249996, 72.40625], + [-84.96416015624999, 72.405615234375], + [-85.05683593749993, 72.384375], + [-85.15639648437497, 72.38291015625], + [-85.34111328124993, 72.42153320312497], + [-85.39130859374995, 72.44399414062502], + [-85.49775390624998, 72.510595703125], + [-85.5537109375, 72.568603515625], + [-85.615576171875, 72.60463867187497], + [-85.63789062500001, 72.63320312500002], + [-85.64990234374997, 72.72216796875003], + [-85.64453125000003, 72.77446289062502], + [-85.61943359374999, 72.81918945312498], + [-85.574609375, 72.85639648437501], + [-85.45478515625001, 72.92514648437498], + [-85.38759765625, 72.94501953124995], + [-85.26210937500002, 72.95400390625], + [-84.98955078124999, 72.91987304687498], + [-84.25664062499999, 72.79672851562503], + [-84.27426757812503, 72.83642578125003], + [-85.09404296874996, 73.00263671874995], + [-85.38388671874995, 73.04541015624997], + [-85.454736328125, 73.10546875000003], + [-85.018408203125, 73.33549804687502], + [-84.61606445312503, 73.38955078125], + [-84.41606445312496, 73.45649414062495], + [-84.08896484375003, 73.459375], + [-83.781884765625, 73.41689453125], + [-83.77651367187497, 73.42846679687503], + [-83.91499023437493, 73.50839843749998], + [-83.904052734375, 73.52832031250003], + [-83.72983398437495, 73.57587890624995], + [-83.41035156249998, 73.63168945312503], + [-83.02045898437495, 73.67602539062503], + [-82.943212890625, 73.69912109375002], + [-82.84331054687499, 73.71542968750006], + [-82.65961914062498, 73.72958984375], + [-82.202783203125, 73.736474609375], + [-81.946142578125, 73.72983398437506], + [-81.60537109374997, 73.69599609375001], + [-81.40615234374997, 73.634521484375], + [-81.344091796875, 73.59775390625006], + [-81.23833007812496, 73.47954101562505], + [-81.1517578125, 73.31401367187499], + [-81.02514648437497, 73.24521484375], + [-80.82172851562501, 73.20717773437497], + [-80.68115234374997, 73.16582031249999], + [-80.60346679687495, 73.12119140625003], + [-80.582763671875, 73.06494140625006], + [-80.61914062500003, 72.99716796875], + [-80.59189453124998, 72.92768554687498], + [-80.50092773437501, 72.85659179687497], + [-80.43081054687494, 72.816259765625], + [-80.27724609375, 72.77016601562502], + [-80.27470703124993, 72.74555664062498], + [-80.32265625000002, 72.71748046874995], + [-80.42431640624994, 72.67890625000001], + [-80.67509765624996, 72.55864257812502], + [-80.99873046875001, 72.42622070312495], + [-81.229345703125, 72.31171874999998], + [-81.24057617187498, 72.27792968750003], + [-80.76079101562502, 72.45717773437505], + [-80.61147460937497, 72.450830078125], + [-80.60468750000001, 72.42578125000003], + [-80.70244140624993, 72.33828124999997], + [-80.82148437499995, 72.26025390624997], + [-80.94121093750002, 72.21015624999998], + [-80.9193359375, 72.19125976562503], + [-80.69140625, 72.10346679687501], + [-80.733251953125, 72.089013671875], + [-80.84326171874994, 72.09619140625003], + [-80.88837890624998, 72.08828125000002], + [-80.92109374999998, 72.07231445312505], + [-80.94140624999994, 72.04824218750005], + [-80.94267578124996, 72.01435546874998], + [-80.925048828125, 71.97070312500006], + [-80.92680664062499, 71.93808593749998], + [-80.94790039062494, 71.91655273437505], + [-80.925146484375, 71.90766601562501], + [-80.85844726562502, 71.91142578125005], + [-80.80224609375003, 71.92919921875003], + [-80.705419921875, 71.98813476562506], + [-80.3861328125, 72.148779296875], + [-80.18193359374996, 72.20878906250007], + [-80.11611328124997, 72.21406249999998], + [-79.92832031249998, 72.174951171875], + [-79.884375, 72.17719726562501], + [-80.09091796874998, 72.30087890625], + [-80.10893554687499, 72.33217773437497], + [-80.06699218749998, 72.37832031249997], + [-80.04179687499999, 72.39423828125001], + [-79.92670898437501, 72.42817382812498], + [-79.83129882812503, 72.44628906250003], + [-79.77788085937496, 72.438720703125], + [-79.69331054687498, 72.37592773437501], + [-79.65385742187502, 72.33217773437497], + [-79.58369140624993, 72.31464843749995], + [-79.42744140624998, 72.33730468750005], + [-79.32333984375, 72.39082031250001], + [-79.19438476562493, 72.35571289062497], + [-79.000244140625, 72.27202148437507], + [-79.01796874999997, 72.18823242187506], + [-79.01777343750001, 72.104345703125], + [-79.00781250000003, 72.04291992187501], + [-78.77592773437496, 71.93037109375001], + [-78.61445312500001, 71.881005859375], + [-78.58510742187497, 71.880615234375], + [-78.58886718750003, 71.89750976562507], + [-78.62255859374997, 71.93496093749997], + [-78.71113281249998, 71.97241210937506], + [-78.79082031249996, 72.03027343750003], + [-78.86274414062495, 72.100830078125], + [-78.82011718749999, 72.26542968750005], + [-78.69926757812496, 72.35141601562498], + [-78.58247070312498, 72.32934570312503], + [-78.42880859375, 72.27978515625006], + [-78.30747070312498, 72.275146484375], + [-78.11635742187497, 72.28032226562507], + [-77.72602539062493, 72.17998046875005], + [-77.51650390624997, 72.17778320312505], + [-77.53574218749998, 72.21875], + [-77.694482421875, 72.23842773437497], + [-77.92617187500002, 72.29384765625], + [-78.28720703125003, 72.35981445312501], + [-78.45307617187498, 72.435205078125], + [-78.48427734374994, 72.47060546875002], + [-78.47949218749994, 72.50874023437498], + [-78.458837890625, 72.54233398437498], + [-78.42241210937496, 72.57153320312497], + [-78.350244140625, 72.60019531250003], + [-78.00102539062499, 72.68759765625], + [-77.75322265624996, 72.72475585937502], + [-77.566796875, 72.73686523437499], + [-77.25537109374997, 72.73588867187507], + [-76.89350585937495, 72.72065429687498], + [-76.69794921875001, 72.695068359375], + [-76.47324218749998, 72.63334960937505], + [-76.18876953125002, 72.57221679687504], + [-76.08730468749994, 72.56132812500002], + [-75.96875, 72.56274414062506], + [-75.83320312499995, 72.576513671875], + [-75.70429687499998, 72.57153320312497], + [-75.29423828124993, 72.48085937499997], + [-75.18579101562494, 72.434228515625], + [-75.12006835937498, 72.37773437500002], + [-75.07148437499993, 72.32285156250003], + [-75.03984374999999, 72.26958007812502], + [-75.05268554687493, 72.22636718749999], + [-75.39414062500003, 72.039794921875], + [-75.54277343749993, 72.007958984375], + [-75.64096679687495, 71.93715820312497], + [-75.78740234374996, 71.803076171875], + [-75.91127929687497, 71.73129882812503], + [-75.92280273437501, 71.71723632812501], + [-75.89682617187495, 71.713720703125], + [-75.82207031249999, 71.74589843749999], + [-75.69335937499997, 71.83857421874995], + [-75.59990234374993, 71.91845703124997], + [-75.428369140625, 71.984375], + [-75.14765625000001, 72.06298828125003], + [-74.90317382812503, 72.10048828125002], + [-74.69492187499995, 72.096923828125], + [-74.51967773437497, 72.08564453125001], + [-74.37744140625003, 72.06655273437505], + [-74.29296874999997, 72.05058593749999], + [-74.26635742187497, 72.03769531250003], + [-74.20932617187498, 71.978662109375], + [-74.21259765624993, 71.93867187500001], + [-74.24824218750001, 71.89365234374998], + [-74.31572265624999, 71.84267578125], + [-74.62148437500002, 71.78627929687497], + [-74.78906249999994, 71.74199218749999], + [-74.89296875, 71.72553710937501], + [-75.20478515625001, 71.70913085937497], + [-75.19106445312497, 71.69160156250004], + [-74.95947265624994, 71.66748046875], + [-74.70078125, 71.67558593750005], + [-74.707373046875, 71.64692382812498], + [-74.828955078125, 71.57089843750003], + [-74.86831054687502, 71.50473632812498], + [-74.83447265624997, 71.45058593749997], + [-74.84072265625, 71.40659179687506], + [-74.93129882812497, 71.31406250000003], + [-75.03535156249995, 71.23051757812507], + [-74.99619140624998, 71.21811523437503], + [-74.75893554687494, 71.33813476562497], + [-74.69531249999994, 71.46943359374998], + [-74.59956054687498, 71.58486328124997], + [-74.48808593750002, 71.64838867187501], + [-74.40410156249996, 71.67250976562497], + [-74.13906249999997, 71.68222656249998], + [-73.99208984374994, 71.74960937500003], + [-73.86660156249997, 71.77104492187505], + [-73.8140625, 71.77143554687495], + [-73.70722656250001, 71.746337890625], + [-73.71357421874995, 71.71987304687502], + [-73.86860351562493, 71.59936523437497], + [-74.197265625, 71.404150390625], + [-74.06333007812498, 71.42646484375001], + [-73.97250976562495, 71.47285156249995], + [-73.85087890624996, 71.51914062499998], + [-73.71284179687498, 71.58759765624998], + [-73.62167968749998, 71.52553710937505], + [-73.48159179687497, 71.47924804687503], + [-73.39780273437503, 71.37343749999997], + [-73.26240234374998, 71.32246093749998], + [-73.18061523437501, 71.282861328125], + [-73.1921875, 71.34985351562506], + [-73.31044921875, 71.48427734375], + [-73.27822265625, 71.53798828125], + [-73.18681640624993, 71.56489257812498], + [-72.901953125, 71.67778320312507], + [-72.70302734374997, 71.64013671875003], + [-72.58061523437499, 71.60678710937498], + [-72.51928710937503, 71.615625], + [-72.36459960937503, 71.61098632812505], + [-72.11650390624993, 71.59277343749997], + [-71.87519531249998, 71.56123046875004], + [-71.64067382812499, 71.51625976562502], + [-71.45991210937493, 71.46372070312498], + [-71.33295898437501, 71.40346679687505], + [-71.25605468749995, 71.36181640625], + [-71.22939453124997, 71.33876953125], + [-71.1865234375, 71.27871093750002], + [-71.21938476562497, 71.23881835937499], + [-71.39658203125, 71.146875], + [-71.49501953124997, 71.10512695312502], + [-71.59306640624996, 71.08637695312501], + [-71.85615234375001, 71.10478515625005], + [-71.93793945312498, 71.09428710937502], + [-72.02387695312498, 71.06533203125], + [-72.297705078125, 70.93881835937498], + [-72.44912109375002, 70.88408203125002], + [-72.598046875, 70.84921875], + [-72.63271484374994, 70.83076171874998], + [-72.31254882812499, 70.83251953125], + [-72.22392578124996, 70.87016601562502], + [-72.15, 70.940673828125], + [-72.00917968750002, 71.01342773437497], + [-71.74252929687495, 71.046875], + [-71.370849609375, 70.97514648437499], + [-71.18623046874995, 70.97802734374997], + [-71.04536132812495, 71.05], + [-70.88803710937495, 71.09902343750002], + [-70.82607421874994, 71.10874023437503], + [-70.79248046875003, 71.10332031249999], + [-70.67265625, 71.05219726562498], + [-70.63647460937494, 71.006591796875], + [-70.63911132812495, 70.90244140625003], + [-70.65522460937495, 70.87089843749999], + [-70.76171874999997, 70.79223632812503], + [-71.02177734374993, 70.67412109375005], + [-71.19179687500002, 70.62978515625], + [-71.38046875, 70.60595703125003], + [-71.58593750000003, 70.56586914062501], + [-71.65844726562497, 70.533544921875], + [-71.72939453124994, 70.4876953125], + [-71.80014648437498, 70.45703125000006], + [-71.89018554687502, 70.43154296875002], + [-71.77236328125, 70.39418945312505], + [-71.72724609374995, 70.39521484374998], + [-71.68369140624995, 70.417578125], + [-71.56499023437493, 70.50566406250002], + [-71.47666015624998, 70.54404296875], + [-71.42666015625, 70.55209960937506], + [-71.37509765624998, 70.54843750000003], + [-71.32485351562494, 70.53115234374997], + [-71.27587890625, 70.50029296874999], + [-71.27958984374996, 70.42519531249997], + [-71.42944335937503, 70.12778320312503], + [-71.40512695312495, 70.12866210937503], + [-71.31308593749995, 70.20932617187503], + [-71.045263671875, 70.51904296874997], + [-70.97978515624999, 70.5810546875], + [-70.85053710937495, 70.64360351562505], + [-70.56093750000002, 70.73828124999997], + [-70.337255859375, 70.78784179687503], + [-70.084716796875, 70.82954101562501], + [-69.94980468750003, 70.84501953125005], + [-69.79570312499999, 70.83457031250006], + [-69.69550781250001, 70.785888671875], + [-69.56010742187496, 70.77714843749999], + [-69.39536132812498, 70.78925781249995], + [-69.28906249999997, 70.78344726562503], + [-69.16870117187497, 70.76416015625], + [-69.06572265624996, 70.72807617187502], + [-68.89072265625, 70.68710937500003], + [-68.49575195312502, 70.61025390625], + [-68.44667968749997, 70.594091796875], + [-68.40083007812495, 70.56499023437502], + [-68.35825195312498, 70.52290039062498], + [-68.363525390625, 70.48125], + [-68.41665039062497, 70.43999023437505], + [-68.482568359375, 70.41484374999999], + [-68.56132812499996, 70.40566406249997], + [-68.64282226562494, 70.38320312500002], + [-68.79365234374995, 70.32441406250004], + [-68.84291992187497, 70.31445312500006], + [-69.079443359375, 70.28916015625003], + [-69.29873046875, 70.27680664062501], + [-69.43569335937502, 70.25312], + [-69.698974609375, 70.18930664062503], + [-70.06142578124994, 70.07084960937507], + [-70.05771484375, 70.042626953125], + [-69.91308593750003, 70.029052734375], + [-69.79584960937493, 70.04692382812499], + [-69.63457031249993, 70.12875976562506], + [-69.48300781249998, 70.16005859375002], + [-69.24619140624995, 70.18510742187499], + [-68.9185546875, 70.20698242187501], + [-68.77822265625, 70.20356445312501], + [-68.7529296875, 70.19916992187501], + [-68.734619140625, 70.17983398437497], + [-68.723291015625, 70.14565429687502], + [-68.776953125, 70.10102539062501], + [-68.83911132812497, 70.07993164062506], + [-69.00830078124997, 69.97895507812501], + [-68.89702148437496, 69.95273437499998], + [-68.74404296874997, 69.94140625], + [-68.65673828124994, 69.96845703124998], + [-68.57783203124995, 70.03046875000001], + [-68.48935546874995, 70.06484375], + [-68.39125976562497, 70.07163085937506], + [-68.305078125, 70.08740234374997], + [-68.23066406250001, 70.11220703124997], + [-68.21044921874997, 70.12841796874997], + [-68.31860351562497, 70.16059570312495], + [-68.32719726562496, 70.18017578125006], + [-68.28310546874994, 70.228271484375], + [-68.203515625, 70.281494140625], + [-68.12065429687499, 70.314599609375], + [-68.05908203124997, 70.317236328125], + [-67.855322265625, 70.28178710937505], + [-67.71601562499995, 70.21982421875003], + [-67.36367187499994, 70.03442382812503], + [-67.31840820312496, 69.99843749999997], + [-67.19589843749998, 69.86069335937498], + [-67.17265624999993, 69.79946289062502], + [-67.19277343749994, 69.75683593750006], + [-67.22163085937495, 69.73071289062506], + [-67.25927734375, 69.7212890625], + [-67.33671875, 69.72099609375002], + [-67.80620117187496, 69.77739257812505], + [-68.02041015625, 69.77006835937499], + [-68.11396484374995, 69.75429687499997], + [-68.18945312499997, 69.73061523437502], + [-68.24809570312502, 69.70078125], + [-68.28979492187497, 69.66469726562502], + [-68.37207031249994, 69.64438476562506], + [-68.66992187499997, 69.64365234374998], + [-68.83710937500001, 69.62353515624997], + [-69.12451171874994, 69.57451171875002], + [-69.227685546875, 69.54741210937502], + [-69.25078124999999, 69.51191406249998], + [-69.07490234374995, 69.51811523437499], + [-68.78525390625, 69.56420898437497], + [-68.51303710937498, 69.57729492187497], + [-68.05815429687496, 69.47587890625002], + [-67.90825195312496, 69.460107421875], + [-67.82485351562502, 69.47470703125003], + [-67.72451171875002, 69.47924804687497], + [-67.3609375, 69.47250976562503], + [-67.236962890625, 69.460107421875], + [-67.05268554687501, 69.42119140625005], + [-66.77084960937498, 69.33666992187497], + [-66.71674804687495, 69.31186523437498], + [-66.68525390624993, 69.2857421875], + [-66.67626953124997, 69.25844726562502], + [-66.67929687499998, 69.19106445312497], + [-66.70742187500002, 69.16821289062503], + [-66.80288085937502, 69.152734375], + [-67.20800781249994, 69.170654296875], + [-67.331640625, 69.18471679687502], + [-67.4837890625, 69.16699218750006], + [-67.60722656250002, 69.17319335937498], + [-67.7650390625, 69.20024414062499], + [-67.9384765625, 69.24814453124998], + [-68.19819335937495, 69.20268554687505], + [-68.40629882812499, 69.23222656250002], + [-68.61889648437497, 69.20600585937501], + [-69.040625, 69.09799804687503], + [-68.99345703124999, 69.07934570312506], + [-68.41552734375, 69.17207031250001], + [-68.30395507812503, 69.16640625000002], + [-68.12128906249993, 69.13261718750007], + [-67.8326171875, 69.06596679687499], + [-67.75170898437494, 69.038671875], + [-67.75102539062499, 68.93383789062497], + [-67.79511718750001, 68.86333007812499], + [-67.88320312500002, 68.78398437499999], + [-68.015625, 68.79467773437506], + [-68.32421874999997, 68.84404296875007], + [-68.45039062500001, 68.85083007812503], + [-68.54277343749999, 68.8427734375], + [-68.66669921874993, 68.81132812500007], + [-68.72529296874998, 68.81020507812502], + [-69.21884765624998, 68.87280273437497], + [-69.32978515624993, 68.87578125000005], + [-69.34267578125, 68.869384765625], + [-69.31909179687497, 68.85698242187505], + [-68.87143554687498, 68.75996093749998], + [-68.540625, 68.74936523437506], + [-68.33320312499993, 68.732568359375], + [-68.21040039062495, 68.702978515625], + [-68.152490234375, 68.6810546875], + [-68.14833984375002, 68.61611328125], + [-68.037939453125, 68.55073242187501], + [-67.9384765625, 68.524169921875], + [-67.87504882812496, 68.52294921875003], + [-67.76601562499994, 68.54702148437505], + [-67.65595703124998, 68.55073242187501], + [-67.56694335937496, 68.53398437500005], + [-67.45551757812501, 68.49790039062498], + [-67.320703125, 68.48779296874997], + [-67.20249023437498, 68.46586914062502], + [-67.11118164062503, 68.46147460937502], + [-66.85419921874998, 68.47163085937495], + [-66.74272460937502, 68.45776367187497], + [-66.71391601562502, 68.445703125], + [-66.76240234374993, 68.42465820312498], + [-66.99726562500001, 68.374169921875], + [-67.032958984375, 68.32607421874997], + [-66.90039062499997, 68.263525390625], + [-66.83095703124997, 68.215625], + [-66.83432617187503, 68.17988281250004], + [-66.90512695312498, 68.09848632812506], + [-66.923095703125, 68.06572265625005], + [-66.89980468749994, 68.06308593750003], + [-66.72900390624997, 68.12900390625006], + [-66.70234374999995, 68.12055664062501], + [-66.68457031249997, 68.02924804687498], + [-66.66269531249995, 68.03442382812497], + [-66.60546875000003, 68.110009765625], + [-66.63095703124998, 68.21064453124998], + [-66.53076171875, 68.250341796875], + [-66.21240234374997, 68.280419921875], + [-66.26630859374995, 68.12270507812502], + [-66.27470703124996, 68.04077148437503], + [-66.41386718749999, 67.90429687500003], + [-66.52998046875001, 67.86030273437504], + [-66.52646484375, 67.85117187500003], + [-66.44394531249998, 67.83383789062506], + [-66.39238281249996, 67.83193359375002], + [-66.34296874999993, 67.85327148437503], + [-66.2251953125, 67.958740234375], + [-65.98583984375, 68.06855468750001], + [-65.94238281250003, 68.07094726562505], + [-65.943994140625, 68.03120117187504], + [-65.97490234374999, 67.957421875], + [-65.86435546875003, 67.92285156249997], + [-65.75893554687497, 67.95708007812502], + [-65.70170898437493, 67.986669921875], + [-65.56933593749997, 67.98232421875002], + [-65.50908203124996, 67.96826171875], + [-65.49111328125002, 67.93569335937502], + [-65.552001953125, 67.79936523437505], + [-65.54086914062503, 67.765625], + [-65.40126953125002, 67.67485351562499], + [-65.38710937499997, 67.68027343750003], + [-65.41347656250002, 67.72407226562498], + [-65.442236328125, 67.83232421875002], + [-65.41533203124996, 67.87924804687498], + [-65.30034179687496, 67.93950195312499], + [-65.06440429687495, 68.02622070312498], + [-64.97690429687498, 68.04340820312504], + [-64.92231445312495, 68.03164062500002], + [-64.83544921875003, 67.98999023437497], + [-64.86254882812494, 67.96513671875007], + [-64.95639648437498, 67.939111328125], + [-65.02602539062494, 67.89204101562501], + [-65.07143554687497, 67.82382812500006], + [-65.02109375, 67.78754882812495], + [-64.82988281249996, 67.78427734375], + [-64.63779296875, 67.84023437500002], + [-64.52753906250001, 67.81269531250001], + [-64.39643554687493, 67.73994140625001], + [-64.15625, 67.62299804687501], + [-64.01943359374997, 67.6548828125], + [-63.850195312500034, 67.56606445312502], + [-64.07749023437498, 67.49560546874997], + [-64.00795898437502, 67.34731445312497], + [-64.30327148437496, 67.35346679687498], + [-64.46928710937496, 67.34184570312502], + [-64.58046874999994, 67.35517578124998], + [-64.69995117187494, 67.35053710937501], + [-64.58925781249997, 67.31552734374998], + [-64.37592773437493, 67.30107421875005], + [-64.35644531249997, 67.25615234375005], + [-64.18896484374994, 67.25727539062501], + [-64.063232421875, 67.26591796874999], + [-63.83623046874993, 67.26411132812498], + [-63.824121093749966, 67.315673828125], + [-63.67646484374998, 67.34511718749997], + [-63.59160156250002, 67.3775390625], + [-63.52109374999995, 67.35834960937498], + [-63.315820312499966, 67.33632812500005], + [-63.040136718750034, 67.235009765625], + [-63.16162109375, 67.17436523437499], + [-63.19467773437498, 67.11704101562503], + [-63.235546874999955, 67.06850585937502], + [-63.258398437500006, 67.02465820312506], + [-63.306787109374994, 66.99448242187503], + [-63.70156249999994, 66.82236328125003], + [-63.63623046874997, 66.82080078125], + [-63.469189453124955, 66.86240234375003], + [-63.143701171874994, 66.92431640625003], + [-62.962304687499966, 66.94926757812505], + [-62.833349609375006, 66.93271484375006], + [-62.76816406249995, 66.931982421875], + [-62.71044921875, 66.95410156249997], + [-62.602880859375034, 66.92861328125002], + [-62.37973632812495, 66.90537109375], + [-62.12358398437499, 67.046728515625], + [-61.96855468749993, 67.01904296874997], + [-61.824121093749994, 66.93173828125003], + [-61.51469726562493, 66.778466796875], + [-61.35341796874994, 66.689208984375], + [-61.29970703125002, 66.64873046875002], + [-61.307226562500034, 66.60883789062498], + [-61.45307617187498, 66.56660156249998], + [-61.52783203124994, 66.55810546875003], + [-61.72412109374997, 66.63779296875], + [-61.904492187499955, 66.67812], + [-62.014257812500006, 66.67377929687498], + [-62.12333984374993, 66.64306640625003], + [-62.089306640624926, 66.62592773437498], + [-61.65263671874996, 66.503125], + [-61.576416015625, 66.4125], + [-61.57080078125, 66.37290039062506], + [-61.862695312499966, 66.31284179687498], + [-61.95634765624993, 66.30932617187497], + [-62.158447265625, 66.33798828125003], + [-62.27690429687496, 66.39150390625002], + [-62.37451171874994, 66.41083984374995], + [-62.50981445312499, 66.41718750000001], + [-62.553125, 66.40683593750003], + [-62.405664062499994, 66.31591796875], + [-62.41982421874994, 66.28857421875], + [-62.49599609375002, 66.27089843749997], + [-62.53359374999994, 66.22700195312498], + [-62.242089843749966, 66.14794921875006], + [-62.02392578125003, 66.06752929687502], + [-61.99160156250002, 66.03530273437502], + [-62.13867187499997, 66.01137695312502], + [-62.24433593749998, 66.00585937499997], + [-62.46777343749994, 66.01748046875002], + [-62.59033203124997, 66.03442382812503], + [-62.624121093750006, 66.01625976562505], + [-62.49736328124993, 65.97402343749997], + [-62.448388671874994, 65.94550781250001], + [-62.410302734374966, 65.90576171875], + [-62.38818359375, 65.86831054687502], + [-62.381982421874966, 65.83330078124999], + [-62.48564453124996, 65.80449218750007], + [-62.61025390625002, 65.72363281250003], + [-62.65888671874998, 65.63994140625002], + [-62.77172851562497, 65.631982421875], + [-62.81728515625002, 65.647705078125], + [-62.968896484374994, 65.62236328124999], + [-63.16894531249997, 65.65732421875], + [-63.240673828124926, 65.695556640625], + [-63.45874023437494, 65.85302734375], + [-63.46435546875003, 65.83535156249997], + [-63.409765625, 65.75581054687501], + [-63.42089843749997, 65.70859374999998], + [-63.65195312499998, 65.67431640625003], + [-63.651074218749955, 65.66098632812506], + [-63.509228515624926, 65.63603515625005], + [-63.33745117187493, 65.61674804687502], + [-63.36425781249997, 65.54321289062503], + [-63.36337890624998, 65.22973632812503], + [-63.40180664062498, 65.11845703125002], + [-63.48583984374997, 65.02124023437503], + [-63.606591796874966, 64.92807617187503], + [-63.737158203125006, 64.98911132812503], + [-63.78935546874999, 65.05136718750003], + [-63.833203124999955, 65.08330078125005], + [-63.89560546874995, 65.10927734375002], + [-63.976269531249955, 65.12148437500002], + [-64.06142578125, 65.121923828125], + [-64.15185546875003, 65.06616210937503], + [-64.25043945312495, 65.11430664062505], + [-64.345703125, 65.17241210937499], + [-64.30976562499995, 65.324560546875], + [-64.26967773437497, 65.40078124999997], + [-64.28574218750003, 65.40019531250005], + [-64.33994140624998, 65.36416015624997], + [-64.46982421874998, 65.25273437500002], + [-64.55507812500002, 65.1166015625], + [-64.66533203125002, 65.1689453125], + [-64.76479492187502, 65.23408203125004], + [-64.84692382812497, 65.29956054687506], + [-64.979638671875, 65.37509765624998], + [-65.10849609374998, 65.46376953125002], + [-65.17568359374997, 65.56816406250007], + [-65.20698242187495, 65.58964843749999], + [-65.28203125, 65.67666015624997], + [-65.31147460937493, 65.70151367187506], + [-65.33740234374997, 65.70976562500005], + [-65.401611328125, 65.764013671875], + [-65.378125, 65.82207031250002], + [-65.276953125, 65.89067382812505], + [-65.18486328124999, 65.93994140625003], + [-65.03222656249997, 65.988525390625], + [-64.85371093749993, 66.01591796875007], + [-64.77250976562499, 66.07856445312495], + [-64.67299804687497, 66.19272460937503], + [-64.56396484374997, 66.27216796874995], + [-64.44536132812496, 66.31713867187497], + [-64.50439453125, 66.32548828124999], + [-64.65517578125, 66.28701171874997], + [-64.7611328125, 66.23090820312498], + [-64.88725585937502, 66.13740234375004], + [-65.0044921875, 66.07773437500003], + [-65.30537109374993, 66.00844726562497], + [-65.41557617187499, 65.99458007812498], + [-65.543701171875, 65.98720703125], + [-65.82573242187499, 65.996923828125], + [-65.89106445312495, 66.02021484374995], + [-65.857177734375, 66.08642578125003], + [-65.65634765625003, 66.204736328125], + [-65.68837890624997, 66.21308593750001], + [-65.75898437499998, 66.17119140624999], + [-65.85595703125, 66.14223632812505], + [-65.9400390625, 66.12744140625006], + [-66.06372070312497, 66.13271484374997], + [-66.20859375, 66.20639648437506], + [-66.27739257812499, 66.22910156249998], + [-66.419189453125, 66.2544921875], + [-66.47695312499997, 66.27973632812498], + [-66.71230468749994, 66.46044921875003], + [-66.75976562500003, 66.50849609374995], + [-66.78740234374996, 66.55566406249997], + [-66.86289062499998, 66.59531249999998], + [-66.986328125, 66.62749023437505], + [-67.01479492187502, 66.62221679687505], + [-66.97041015624995, 66.581884765625], + [-66.968994140625, 66.54716796875002], + [-67.07685546874995, 66.52548828125006], + [-67.18964843749993, 66.53300781249999], + [-67.30732421874993, 66.5697265625], + [-67.31767578124999, 66.52036132812498], + [-67.191748046875, 66.432763671875], + [-67.18974609374996, 66.32172851562501], + [-67.22539062499993, 66.31025390624998], + [-67.31123046875001, 66.30375976562499], + [-67.36884765624993, 66.31748046875003], + [-67.55976562499993, 66.40043945312507], + [-67.74077148437496, 66.45820312500001], + [-67.86845703124993, 66.49013671875005], + [-67.88339843749995, 66.46743164062502], + [-67.80058593749996, 66.367333984375], + [-67.70449218750002, 66.26860351562502], + [-67.54721679687495, 66.18720703124995], + [-67.29672851562498, 66.09028320312504], + [-67.18320312499995, 66.03442382812503], + [-67.27265624999998, 65.95556640625003], + [-67.350439453125, 65.92973632812502], + [-67.398779296875, 65.92172851562498], + [-67.55078124999997, 65.92163085937503], + [-67.82802734374997, 65.96518554687503], + [-67.95820312500001, 66.013818359375], + [-68.14726562499999, 66.12983398437501], + [-68.45991210937498, 66.249267578125], + [-68.52778320312495, 66.24863281250003], + [-68.74892578125, 66.200048828125], + [-68.71420898437503, 66.192236328125], + [-68.57167968749994, 66.188720703125], + [-68.46708984374996, 66.17319335937503], + [-68.21718750000002, 66.078857421875], + [-68.19833984375, 66.03896484374997], + [-68.26069335937501, 65.99458007812498], + [-68.2568359375, 65.93862304687505], + [-68.18671874999993, 65.87099609375002], + [-68.11503906249999, 65.82778320312502], + [-67.96806640624999, 65.79726562500002], + [-67.89418945312494, 65.79326171874999], + [-67.86645507812497, 65.773681640625], + [-67.95434570312503, 65.62309570312507], + [-67.96181640624994, 65.58193359375002], + [-67.936767578125, 65.56489257812501], + [-67.90605468749996, 65.5634765625], + [-67.717138671875, 65.62534179687498], + [-67.6380859375, 65.64042968750005], + [-67.56962890624999, 65.64355468749997], + [-67.49013671874997, 65.626220703125], + [-67.39970703125002, 65.58837890625], + [-67.34638671874998, 65.54936523437505], + [-67.330322265625, 65.50917968750002], + [-67.30341796874993, 65.48291015625], + [-67.11796874999999, 65.44038085937495], + [-67.13496093749998, 65.4205078125], + [-67.32607421875002, 65.35664062499995], + [-67.3365234375, 65.34658203125005], + [-67.29833984374997, 65.341943359375], + [-67.17758789062498, 65.30380859375003], + [-67.06650390624998, 65.24409179687504], + [-66.99858398437499, 65.17299804687502], + [-66.98491210937496, 65.138037109375], + [-66.98564453124993, 65.104833984375], + [-66.97036132812502, 65.08491210937501], + [-66.91152343749994, 65.08134765625002], + [-66.8875, 65.093994140625], + [-66.86064453124996, 65.09160156250005], + [-66.83090820312503, 65.07416992187495], + [-66.79960937499996, 65.01967773437497], + [-66.73276367187503, 64.86005859374995], + [-66.69741210937502, 64.81518554687506], + [-66.67714843749997, 64.81367187500001], + [-66.66669921874998, 64.97382812499995], + [-66.63549804687503, 65.00034179687503], + [-66.51777343750001, 64.97197265625002], + [-66.34521484375003, 64.90961914062501], + [-66.22373046874998, 64.85410156249998], + [-66.20971679687497, 64.828125], + [-66.301513671875, 64.77773437499997], + [-66.28212890624997, 64.75532226562501], + [-66.21464843749999, 64.72241210937497], + [-66.15249023437502, 64.73491210937505], + [-66.10751953125, 64.79121093749995], + [-66.03017578124997, 64.84658203124997], + [-65.93852539062496, 64.88574218750003], + [-65.76806640624994, 64.85356445312505], + [-65.62675781249993, 64.77075195312497], + [-65.60527343750002, 64.74233398437505], + [-65.51318359375, 64.70649414062501], + [-65.43193359374996, 64.726416015625], + [-65.2748046875, 64.63154296875004], + [-65.34931640625001, 64.58852539062497], + [-65.51279296875, 64.5259765625], + [-65.52934570312499, 64.50478515624997], + [-65.48999023437497, 64.50961914062506], + [-65.17861328124994, 64.50971679687498], + [-65.09453125, 64.48457031250001], + [-65.074609375, 64.43666992187502], + [-65.21298828125003, 64.30327148437502], + [-65.33989257812493, 64.31508789062505], + [-65.50747070312497, 64.31831054687498], + [-65.59365234374994, 64.31113281250003], + [-65.580322265625, 64.29384765624997], + [-65.34780273437497, 64.23232421874997], + [-65.28198242187497, 64.18164062500003], + [-65.1927734375, 64.12983398437495], + [-65.14960937499998, 64.08715820312497], + [-65.15063476562503, 64.06752929687497], + [-65.18730468749993, 64.03798828125], + [-65.16987304687495, 64.02817382812503], + [-65.010595703125, 64.00883789062499], + [-64.91181640624995, 64.02617187500007], + [-64.78779296875001, 64.03276367187499], + [-64.67846679687503, 64.027978515625], + [-64.66972656250002, 64.00957031250005], + [-64.686181640625, 63.9609375], + [-64.79814453124999, 63.91596679687498], + [-64.7681640625, 63.905419921874966], + [-64.63671874999994, 63.91835937500005], + [-64.576318359375, 63.89736328125002], + [-64.49848632812495, 63.790332031250074], + [-64.4109375, 63.70634765625002], + [-64.48222656250002, 63.68706054687499], + [-64.56157226562502, 63.6796875], + [-64.55029296875003, 63.57255859375002], + [-64.49863281249998, 63.46279296875005], + [-64.49809570312496, 63.35756835937502], + [-64.51435546874998, 63.263964843750045], + [-64.58691406250003, 63.24316406249997], + [-64.66464843749995, 63.24536132812497], + [-64.69560546874996, 63.268847656250045], + [-64.88627929687499, 63.548730468749966], + [-64.93330078124998, 63.59926757812505], + [-64.98969726562501, 63.643359375000045], + [-65.19184570312498, 63.764257812500006], + [-65.18393554687498, 63.74482421875004], + [-65.13383789062499, 63.689062500000034], + [-65.08940429687499, 63.60595703125], + [-65.03134765624998, 63.440136718749955], + [-65.00478515624997, 63.333398437499966], + [-65.01669921875, 63.29282226562506], + [-65.05805664062498, 63.282861328124966], + [-65.06894531249998, 63.26347656250002], + [-65.04931640625, 63.234619140625], + [-64.89482421874996, 63.12563476562502], + [-64.82016601562503, 63.060009765624955], + [-64.76738281250002, 62.991796875], + [-64.718115234375, 62.94580078124997], + [-64.67236328125003, 62.921972656250006], + [-64.68364257812502, 62.90239257812502], + [-64.75185546874997, 62.88715820312501], + [-64.86870117187496, 62.87988281250003], + [-64.92324218749997, 62.88916015624997], + [-65.13295898437497, 62.952343749999955], + [-65.16279296875001, 62.93261718750003], + [-65.04658203124995, 62.70146484375002], + [-65.0501953125, 62.64614257812502], + [-65.10849609374998, 62.62646484375], + [-65.18032226562494, 62.64946289062499], + [-65.26582031249995, 62.71508789062503], + [-65.39653320312493, 62.788183593750006], + [-65.57241210937497, 62.86889648437503], + [-65.740380859375, 62.931982421875006], + [-65.77988281249998, 62.930273437500006], + [-65.80566406249997, 62.91157226562501], + [-65.83369140625001, 62.908544921875006], + [-65.8640625, 62.921142578125], + [-65.92026367187498, 62.96850585937497], + [-65.978857421875, 63.000683593749955], + [-66.22402343749994, 63.10717773437497], + [-66.24921875000001, 63.108251953125034], + [-66.22607421875, 63.076318359374994], + [-66.20107421874997, 63.00625], + [-66.228662109375, 62.99096679687503], + [-66.29277343750002, 62.996679687500034], + [-66.41445312500002, 63.027197265625034], + [-66.49638671875002, 63.097265625], + [-66.60048828125, 63.218896484374994], + [-66.65498046874998, 63.264746093750006], + [-66.659814453125, 63.234912109375074], + [-66.63085937499997, 63.119042968749994], + [-66.63642578124993, 63.080126953125074], + [-66.69746093749993, 63.069531249999955], + [-66.72324218749995, 63.08017578124998], + [-66.74853515624994, 63.11108398437497], + [-66.77324218750002, 63.16225585937502], + [-66.83144531249997, 63.20112304687501], + [-66.92329101562493, 63.22768554687502], + [-66.97470703125003, 63.25556640625001], + [-67.00014648437497, 63.30512695312498], + [-67.01791992187503, 63.316503906250006], + [-67.17978515624998, 63.30502929687506], + [-67.26093749999998, 63.34072265625005], + [-67.49501953124997, 63.48144531250003], + [-67.709228515625, 63.633935546874994], + [-67.84423828124997, 63.71455078124998], + [-67.89326171874993, 63.733740234375006], + [-67.82143554687494, 63.63500976562506], + [-67.74252929687495, 63.48925781250003], + [-67.72255859374997, 63.422753906249966], + [-67.75878906249997, 63.419726562500074], + [-67.83789062500003, 63.44921875000003], + [-68.24355468749997, 63.637060546875006], + [-68.49375, 63.725488281249994], + [-68.63286132812496, 63.741113281249994], + [-68.85893554687502, 63.75185546875005], + [-68.91108398437498, 63.703222656250006], + [-68.78925781249995, 63.595117187499994], + [-68.67055664062502, 63.51367187500003], + [-68.55512695312495, 63.458935546874955], + [-68.37392578124997, 63.352197265624994], + [-68.20805664062493, 63.214697265625034], + [-68.141259765625, 63.17231445312501], + [-67.91533203124999, 63.113671874999966], + [-67.79746093749995, 63.09809570312498], + [-67.67597656249998, 63.093554687500045], + [-67.66489257812503, 63.072656249999966], + [-67.72377929687494, 63.03369140625003], + [-67.73696289062497, 63.00957031249999], + [-67.46821289062493, 62.94824218750003], + [-67.36665039062493, 62.914160156250006], + [-67.26850585937501, 62.85756835937502], + [-67.21269531250002, 62.843505859375], + [-66.97954101562493, 62.700830078124966], + [-66.92153320312502, 62.678076171875034], + [-66.71401367187502, 62.63178710937504], + [-66.64487304687498, 62.60205078125], + [-66.53051757812494, 62.50996093749998], + [-66.45874023437497, 62.46313476562506], + [-66.357275390625, 62.351904296875034], + [-66.28125, 62.302685546874955], + [-66.09501953124996, 62.24638671875002], + [-66.015625, 62.230273437500045], + [-65.98017578125001, 62.20888671875002], + [-66.00434570312495, 62.158300781250034], + [-66.02695312500003, 62.13720703125], + [-66.133154296875, 62.102392578125006], + [-66.11640624999995, 62.05390624999998], + [-66.05644531249999, 61.967480468749955], + [-66.05888671874996, 61.913867187500045], + [-66.12387695312498, 61.89306640625], + [-66.25668945312503, 61.868261718750006], + [-66.32373046875, 61.870263671874966], + [-66.42451171874993, 61.890722656250034], + [-66.55131835937502, 61.925585937500045], + [-66.80312, 62.012597656249994], + [-67.18105468749997, 62.072851562500034], + [-67.322021484375, 62.10502929687502], + [-67.36899414062498, 62.134082031250074], + [-67.44013671874998, 62.15126953125002], + [-68.37861328124995, 62.235156250000045], + [-68.53588867187503, 62.25561523437506], + [-68.63364257812495, 62.281298828125045], + [-68.72436523437497, 62.318994140624994], + [-69.08232421874996, 62.405175781249966], + [-69.12558593749998, 62.423974609374966], + [-69.36601562499993, 62.571875], + [-69.54516601562503, 62.74458007812501], + [-69.604736328125, 62.76772460937502], + [-69.79951171874998, 62.79047851562504], + [-69.96210937499995, 62.776171875000045], + [-70.07094726562502, 62.757226562499994], + [-70.23613281250002, 62.76337890625001], + [-70.34404296874996, 62.79150390624997], + [-70.57133789062502, 62.86918945312499], + [-70.801416015625, 62.91049804687506], + [-71.00214843749993, 62.978271484375], + [-71.10576171874999, 63.00224609375002], + [-71.09619140625, 63.019677734374994], + [-70.94604492187497, 63.12070312499998], + [-70.99267578124994, 63.119287109374966], + [-71.25371093749993, 63.042529296875045], + [-71.34726562499998, 63.066113281249955], + [-71.50126953125002, 63.12641601562498], + [-71.61713867187498, 63.18720703125004], + [-71.85546874999997, 63.35527343749999], + [-71.99223632812493, 63.41616210937505], + [-71.97304687500002, 63.42988281250001], + [-71.81918945312503, 63.435449218749966], + [-71.696533203125, 63.430224609375074], + [-71.61425781250003, 63.44409179687506], + [-71.45585937499999, 63.51225585937499], + [-71.38740234374998, 63.555029296875006], + [-71.380859375, 63.580322265625], + [-71.51347656250002, 63.58657226562502], + [-71.54189453125002, 63.598828124999955], + [-71.56562, 63.626757812500045], + [-71.62675781249999, 63.66259765624997], + [-71.72529296874998, 63.70615234374998], + [-71.83754882812494, 63.72495117187498], + [-72.22294921874996, 63.708886718749994], + [-72.29013671874995, 63.72797851562498], + [-72.28876953124995, 63.75698242187502], + [-72.21347656249998, 63.83872070312498], + [-72.17246093749998, 63.871679687500034], + [-72.15937, 63.889892578125], + [-72.17426757812498, 63.893408203125006], + [-72.22646484374997, 63.89135742187506], + [-72.45, 63.81811523437506], + [-72.49843749999994, 63.82348632812497], + [-72.58613281249995, 63.90078125000002], + [-72.63930664062497, 63.989062500000045], + [-72.67807617187503, 64.02001953124997], + [-72.72958984374995, 64.03046874999995], + [-72.91318359374998, 64.11718750000006], + [-73.17431640624997, 64.28188476562502], + [-73.27031249999999, 64.33349609374997], + [-73.377099609375, 64.37958984375004], + [-73.45454101562495, 64.39926757812503], + [-73.44365234374996, 64.423486328125], + [-73.27817382812498, 64.56025390624998], + [-73.27128906250002, 64.58251953125], + [-73.41308593750003, 64.57416992187498], + [-73.626953125, 64.60253906249997], + [-73.72841796874997, 64.56826171875002], + [-73.79277343749993, 64.56621093750005], + [-73.86787109374995, 64.58535156250002], + [-73.91035156249998, 64.57812], + [-73.95039062499998, 64.46582031250003], + [-73.98110351562502, 64.43774414062497], + [-74.02558593749993, 64.42265625000002], + [-74.064794921875, 64.42465820312498], + [-74.09873046875, 64.44370117187503], + [-74.097900390625, 64.46992187499995], + [-74.13046874999998, 64.6078125], + [-74.205078125, 64.62812], + [-74.41586914062495, 64.63349609374998], + [-74.46123046874996, 64.64467773437505], + [-74.512451171875, 64.670166015625], + [-74.55625, 64.71733398437502], + [-74.59257812499999, 64.78618164062499], + [-74.63427734374994, 64.82392578124995], + [-74.68139648437497, 64.8306640625], + [-74.71918945312493, 64.82514648437504], + [-74.74775390624998, 64.80732421874995], + [-74.81342773437495, 64.796240234375], + [-74.91625976562503, 64.79199218750003], + [-74.91943359374997, 64.76552734374997], + [-74.82304687499996, 64.71689453125], + [-74.72983398437498, 64.64736328124997], + [-74.64003906249997, 64.55708007812495], + [-74.69472656250002, 64.49658203124997], + [-74.8939453125, 64.46572265625], + [-75.0673828125, 64.45668945312502], + [-75.21503906249995, 64.46938476562502], + [-75.32841796874996, 64.49042968749995], + [-75.48779296875003, 64.540771484375], + [-75.71503906249995, 64.52436523437495], + [-75.76669921875, 64.39194335937498], + [-75.81523437499993, 64.38466796875], + [-76.0318359375, 64.3880859375], + [-76.11806640625, 64.37631835937498], + [-76.40683593750003, 64.30317382812501], + [-76.49472656249998, 64.29296874999997], + [-76.5615234375, 64.30161132812503], + [-76.62651367187502, 64.283935546875], + [-76.72382812499995, 64.24204101562498], + [-76.85615234374998, 64.23764648437498], + [-77.02353515624998, 64.270849609375], + [-77.165673828125, 64.28505859374997], + [-77.28251953124999, 64.28037109374998], + [-77.40288085937499, 64.29990234375006], + [-77.52675781250002, 64.34375], + [-77.62778320312498, 64.36347656249995], + [-77.76049804687503, 64.36015624999999], + [-77.79116210937497, 64.36708984374997], + [-77.98486328125, 64.46108398437502], + [-78.04521484374993, 64.499267578125], + [-78.174560546875, 64.61772460937505], + [-78.19755859374999, 64.66464843750003], + [-78.20087890624995, 64.71474609375002], + [-78.18969726562497, 64.751806640625], + [-78.14462890625003, 64.80771484375003], + [-78.09560546875, 64.93925781250002], + [-78.05527343750003, 64.98291015625003], + [-77.99458007812493, 65.02260742187502], + [-77.87617187499995, 65.07294921874998], + [-77.44746093749993, 65.16157226562501], + [-77.36088867187496, 65.19653320312503], + [-77.36386718749995, 65.21977539062505], + [-77.46147460937493, 65.32817382812502], + [-77.46040039062498, 65.35590820312498], + [-77.42768554687498, 65.37211914062499], + [-77.3580078125, 65.43544921875002], + [-77.32670898437493, 65.45312], + [-77.25117187500001, 65.46289062500003], + [-77.094140625, 65.43085937499998], + [-76.95859374999998, 65.41801757812502], + [-76.77890624999998, 65.41386718750007], + [-76.481689453125, 65.36972656250003], + [-76.06699218749998, 65.28544921875002], + [-75.82832031249993, 65.22705078125003], + [-75.64814453125001, 65.14082031249995], + [-75.519921875, 65.056005859375], + [-75.50156249999998, 65.01308593750005], + [-75.5609375, 64.947021484375], + [-75.59086914062496, 64.92768554687495], + [-75.58911132812497, 64.90502929687497], + [-75.55576171875, 64.87919921875005], + [-75.45209960937495, 64.84160156250002], + [-75.42714843750002, 64.855859375], + [-75.43515624999995, 64.90078125], + [-75.413671875, 64.93852539062505], + [-75.36279296874994, 64.96904296875005], + [-75.35712890624995, 65.00874023437495], + [-75.39667968749993, 65.05756835937495], + [-75.44580078125, 65.09970703125], + [-75.50468749999999, 65.13515625000005], + [-75.77294921875003, 65.25703125000001], + [-75.79868164062503, 65.297509765625], + [-75.70859374999998, 65.31572265625005], + [-75.31665039062497, 65.2748046875], + [-75.16630859374999, 65.28393554687497], + [-75.10927734375, 65.33144531249997], + [-75.04775390625, 65.36396484375004], + [-74.98173828124996, 65.38144531250003], + [-74.849853515625, 65.3890625], + [-74.66547851562501, 65.366943359375], + [-74.57490234374993, 65.36367187499997], + [-74.49477539062497, 65.3716796875], + [-74.39072265624998, 65.39755859375003], + [-74.23686523437499, 65.48388671875003], + [-74.13847656250002, 65.50346679687502], + [-73.98959960937498, 65.51699218750002], + [-73.87792968749997, 65.51884765625005], + [-73.675390625, 65.48432617187504], + [-73.55078125000003, 65.48525390625005], + [-73.56074218750001, 65.54291992187498], + [-73.64340820312498, 65.65322265625], + [-73.74609375000003, 65.76669921875], + [-73.82607421874997, 65.80517578125003], + [-74.03310546874997, 65.87705078125], + [-74.27617187500002, 66.01274414062505], + [-74.40107421874995, 66.09697265625005], + [-74.433935546875, 66.139013671875], + [-74.41640624999997, 66.16708984375003], + [-74.37490234374997, 66.20815429687497], + [-73.93369140624995, 66.35805664062505], + [-73.584228515625, 66.50693359375], + [-73.43095703124993, 66.583154296875], + [-73.35737304687495, 66.63627929687507], + [-73.28081054687499, 66.67495117187502], + [-73.20112304687501, 66.69916992187498], + [-73.03325195312502, 66.72817382812505], + [-72.98535156250003, 66.76538085937497], + [-72.974853515625, 66.82851562499997], + [-72.94677734374997, 66.88325195312501], + [-72.78881835937494, 67.030615234375], + [-72.66772460937497, 67.07045898437497], + [-72.48515624999999, 67.09809570312501], + [-72.36494140625001, 67.1333984375], + [-72.22001953124999, 67.25429687500002], + [-72.234130859375, 67.28442382812503], + [-72.30107421874996, 67.307275390625], + [-72.35288085937495, 67.34189453125], + [-72.57646484374993, 67.65864257812498], + [-72.72529296874998, 67.81162109375006], + [-72.90395507812497, 67.94477539062501], + [-73.06342773437493, 68.10698242187502], + [-73.32822265624998, 68.26674804687497], + [-73.3314453125, 68.30898437500005], + [-73.28447265624993, 68.35698242187505], + [-73.30688476562497, 68.36782226562505], + [-73.58017578124998, 68.29775390624997], + [-73.64448242187501, 68.29453125000003], + [-73.74946289062498, 68.325], + [-73.82050781249998, 68.36293945312502], + [-73.87934570312498, 68.42939453124998], + [-73.87333984375002, 68.46416015625005], + [-73.83442382812498, 68.4970703125], + [-73.78251953124999, 68.57802734374997], + [-73.78061523437503, 68.61928710937502], + [-73.79843750000003, 68.65864257812495], + [-73.82211914062495, 68.68598632812501], + [-73.8515625, 68.70136718749995], + [-73.93515624999998, 68.71098632812505], + [-74.072998046875, 68.71494140625006], + [-74.11796875000002, 68.70092773437506], + [-73.96606445312497, 68.57875976562502], + [-73.9892578125, 68.54863281250002], + [-74.18281249999998, 68.53544921874999], + [-74.2701171875, 68.54121093750001], + [-74.35, 68.55605468750002], + [-74.42241210937496, 68.579931640625], + [-74.64794921874997, 68.70751953124997], + [-74.69580078124997, 68.75556640624998], + [-74.68051757812495, 68.79028320312503], + [-74.699951171875, 68.808349609375], + [-74.74599609374997, 68.79672851562503], + [-74.80834960937497, 68.79589843750003], + [-74.89296875, 68.80815429687505], + [-74.91040039062497, 68.82314453125], + [-74.75239257812495, 68.89208984375], + [-74.74326171874995, 68.91337890624999], + [-74.81611328124995, 68.9361328125], + [-74.92509765624996, 68.94072265625005], + [-74.95400390625, 68.96108398437502], + [-74.91728515624996, 68.98286132812501], + [-74.76933593749993, 69.020654296875], + [-74.71669921874997, 69.04550781249998], + [-74.80546875000002, 69.06425781249999], + [-74.85488281249997, 69.06582031250005], + [-74.95444335937498, 69.02460937499998], + [-75.10424804687494, 68.94057617187502], + [-75.21328124999997, 68.90937], + [-75.36274414062495, 68.94829101562499], + [-75.45698242187495, 68.96127929687498], + [-75.52265624999993, 68.952734375], + [-75.62304687499994, 68.88774414062499], + [-75.84223632812493, 68.840185546875], + [-76.23471679687495, 68.72802734374997], + [-76.40341796874995, 68.69233398437498], + [-76.58505859375, 68.69873046875003], + [-76.61943359374999, 68.72138671874995], + [-76.61625976562496, 68.75986328124998], + [-76.60366210937497, 68.79155273437505], + [-76.58173828124995, 68.81630859375002], + [-76.574560546875, 68.84667968749997], + [-76.58769531250002, 68.974462890625], + [-76.55722656250003, 69.00947265625001], + [-76.49516601562499, 69.03041992187502], + [-76.38090820312499, 69.05244140624998], + [-76.08920898437498, 69.02617187500005], + [-75.9537109375, 69.03081054687502], + [-75.85859374999998, 69.06030273437497], + [-75.76337890624995, 69.10292968749997], + [-75.66796874999994, 69.158837890625], + [-75.64775390625002, 69.212548828125], + [-75.74907226562496, 69.29956054687497], + [-75.78715820312499, 69.31865234375005], + [-76.04648437499998, 69.38637695312497], + [-76.18979492187495, 69.410986328125], + [-76.31621093749996, 69.42163085937497], + [-76.407958984375, 69.44111328125004], + [-76.46494140624995, 69.46943359375001], + [-76.52036132812498, 69.51660156250003], + [-76.52495117187502, 69.548681640625], + [-76.51611328125, 69.59091796875], + [-76.46328124999997, 69.61997070312506], + [-76.23110351562502, 69.65346679687502], + [-76.23408203125001, 69.66210937500003], + [-76.42382812500003, 69.68681640624999], + [-76.51328124999995, 69.68393554687503], + [-76.59003906249995, 69.65625], + [-76.68652343749997, 69.59125976562498], + [-76.742333984375, 69.57290039062497], + [-76.91557617187502, 69.61118164062503], + [-77.01962890624998, 69.61684570312502], + [-77.08994140625, 69.63510742187503], + [-77.12880859374994, 69.65273437499997], + [-77.10507812499998, 69.670751953125], + [-77.01870117187497, 69.6890625], + [-76.86860351562495, 69.74516601562507], + [-76.85859374999995, 69.775390625], + [-76.96225585937503, 69.82485351562505], + [-77.01596679687495, 69.83613281250004], + [-77.23247070312502, 69.85458984374998], + [-77.49428710937497, 69.83623046875005], + [-77.591650390625, 69.84560546875002], + [-77.63530273437502, 69.90043945312499], + [-77.66298828124997, 69.96572265624997], + [-77.67475585937495, 70.04150390625003], + [-77.72192382812497, 70.17080078125], + [-77.77402343750003, 70.23852539062503], + [-77.84252929687494, 70.2470703125], + [-78.15678710937493, 70.219140625], + [-78.23144531249994, 70.21879882812502], + [-78.28281250000003, 70.229150390625], + [-78.49072265625003, 70.31557617187502], + [-78.5748046875, 70.34619140625003], + [-78.621435546875, 70.35341796875], + [-78.77265624999998, 70.44531249999997], + [-78.83085937499996, 70.46318359375007], + [-78.89990234374997, 70.50854492187497], + [-78.97978515624999, 70.58134765625007], + [-79.06640624999997, 70.60356445312507], + [-79.15976562499998, 70.57524414062507], + [-79.253173828125, 70.53471679687507], + [-79.34663085937495, 70.48188476562495], + [-79.39731445312498, 70.43725585937503], + [-79.40522460937498, 70.40073242187503], + [-79.34741210937503, 70.37231445312503], + [-79.01752929687495, 70.32519531250003], + [-78.93383789062497, 70.293701171875], + [-78.86284179687499, 70.24189453125001], + [-78.809814453125, 70.17856445312498], + [-78.77485351562498, 70.10361328125], + [-78.77783203124997, 70.04765625000005], + [-78.81879882812498, 70.01044921875001], + [-78.88964843750003, 69.97749023437495], + [-79.09287109375003, 69.92534179687499], + [-79.3033203125, 69.89482421874999], + [-79.51542968749996, 69.88759765625005], + [-79.61591796875001, 69.89472656249998], + [-80.162109375, 69.99599609375], + [-80.26040039062494, 69.99677734374998], + [-80.38681640625003, 70.01044921875001], + [-80.67031249999997, 70.05209960937498], + [-80.82578125000003, 70.05664062500003], + [-81.09829101562494, 70.09116210937503], + [-81.55957031249994, 70.11123046875002], + [-81.65195312500003, 70.09462890625002], + [-81.52924804687498, 70.04804687499995], + [-81.42172851562503, 70.02460937499998], + [-81.32949218749997, 70.02436523437501], + [-81.19682617187493, 69.9828125], + [-81.02373046874993, 69.9], + [-80.92480468749994, 69.85058593750006], + [-80.84287109374995, 69.79165039062502], + [-80.84028320312495, 69.77138671875], + [-80.92172851562503, 69.73090820312501], + [-81.56469726562503, 69.94272460937498], + [-81.95771484374998, 69.86875], + [-82.13872070312499, 69.8412109375], + [-82.29384765624997, 69.83691406250003], + [-82.48774414062495, 69.86596679687497], + [-82.92539062500003, 69.96816406250002], + [-83.09116210937495, 70.00390625000003], + [-83.14995117187493, 70.00908203125002], + [-83.53076171875, 69.96479492187495], + [-83.85908203124998, 69.96274414062498], + [-84.521875, 70.00522460937503], + [-84.76513671875003, 70.03364257812495], + [-84.82919921875, 70.06333007812503], + [-84.90908203124994, 70.07822265624998], + [-85.05263671874997, 70.07822265624998], + [-85.43237304687497, 70.11137695312507], + [-85.780029296875, 70.03666992187505], + [-86.19819335937493, 70.10512695312502], + [-86.32202148437503, 70.14541015625], + [-86.36142578124998, 70.17304687500001], + [-86.48310546874998, 70.28857421875003], + [-86.49980468750002, 70.35039062499999], + [-86.46538085937502, 70.40625], + [-86.43100585937503, 70.44453124999998], + [-86.396875, 70.46533203124997], + [-86.62431640624999, 70.40126953124997], + [-86.70415039062499, 70.39072265625003], + [-86.80927734375001, 70.38828124999998], + [-87.12246093749994, 70.411962890625], + [-87.17197265625, 70.39985351562495], + [-87.15581054687499, 70.37744140625], + [-87.07402343749993, 70.34482421875], + [-87.06328125, 70.32509765625], + [-87.237890625, 70.30971679687497], + [-87.50244140625, 70.32568359375003], + [-87.61777343749995, 70.31875], + [-87.67021484374999, 70.309814453125], + [-87.78945312500002, 70.25825195312495], + [-87.838134765625, 70.24658203125], + [-87.90068359374996, 70.25190429687501], + [-88.17832031250003, 70.36860351562498], + [-88.40209960937497, 70.44248046875], + [-88.66298828125, 70.47084960937502], + [-88.78271484374997, 70.49448242187503], + [-88.84843749999993, 70.52290039062498], + [-89.20830078124999, 70.75971679687498], + [-89.25751953124998, 70.810693359375], + [-89.37153320312493, 70.99614257812502], + [-89.40976562499998, 71.03569335937499], + [-89.45590820312498, 71.06171874999995], + [-89.36552734374996, 71.06718750000002], + [-89.02514648437497, 71.04462890625004], + [-88.69565429687498, 71.04560546874995], + [-88.51665039062493, 71.03056640625002], + [-88.30908203125003, 70.98432617187501], + [-88.03857421874997, 70.95131835937502], + [-87.84492187499995, 70.94438476562505], + [-87.53442382812503, 70.95659179687505], + [-87.18159179687501, 70.98754882812503], + [-87.14008789062498, 71.01162109374997], + [-87.36860351562498, 71.05283203125], + [-87.57231445312502, 71.10756835937497], + [-87.76025390625003, 71.17851562500005], + [-87.87246093749997, 71.20854492187505], + [-88.06064453125003, 71.22724609375001], + [-88.58950195312494, 71.24028320312502], + [-89.079345703125, 71.28793945312503], + [-89.41767578125001, 71.352197265625], + [-89.69331054687493, 71.42348632812502], + [-89.80537109374993, 71.46230468750005], + [-89.84575195312499, 71.49228515625], + [-89.888525390625, 71.58574218750005], + [-89.93369140624998, 71.74272460937505], + [-89.97734374999999, 71.84804687500002], + [-90.01953124999997, 71.90180664062495], + [-90.02519531249996, 71.94877929687502], + [-89.93149414062498, 72.04902343750001], + [-89.66381835937497, 72.157958984375], + [-89.65727539062496, 72.17504882812503], + [-89.71054687499998, 72.18012695312498], + [-89.82290039062497, 72.20781250000005], + [-89.85869140624996, 72.24833984375005], + [-89.87309570312496, 72.312646484375], + [-89.87402343749997, 72.3671875], + [-89.86152343750001, 72.41191406250005], + [-89.81684570312495, 72.46772460937495], + [-89.701513671875, 72.56806640624998], + [-89.53642578124996, 72.68984375000002], + [-89.35771484374996, 72.80415039062504], + [-89.32709960937493, 72.841552734375], + [-89.311376953125, 72.94296874999998], + [-89.28769531249998, 73.01694335937503], + [-89.26323242187499, 73.068994140625], + [-89.225341796875, 73.10805664062502], + [-89.11474609375003, 73.18217773437505], + [-88.97680664062497, 73.25249023437507], + [-88.76093749999995, 73.31240234375002], + [-88.74252929687503, 73.3345703125], + [-88.73959960937498, 73.36528320312505], + [-88.7271484375, 73.38818359375], + [-88.70517578124998, 73.40327148437495], + [-88.17001953125, 73.5953125], + [-87.92641601562494, 73.67333984375], + [-87.71977539062496, 73.72290039062497], + [-87.47236328124998, 73.75942382812505], + [-86.76875, 73.83398437500006], + [-86.406396484375, 73.85478515625002], + [-85.95078124999998, 73.85014648437505], + [-85.11049804687494, 73.80815429687502], + [-85.00932617187493, 73.77861328125005], + [-84.98359374999993, 73.76372070312502], + [-84.94677734375, 73.72163085937498], + [-84.97451171874997, 73.69477539062501], + [-85.20429687499995, 73.60356445312499], + [-85.49360351562501, 73.527685546875], + [-85.681884765625, 73.46147460937502], + [-86.00053710937499, 73.31254882812505], + [-86.08647460937502, 73.26025390625006], + [-86.48139648437498, 72.96025390625005], + [-86.57465820312498, 72.91054687500002], + [-86.62934570312493, 72.87080078125001], + [-86.66777343749996, 72.76254882812498], + [-86.65629882812502, 72.72402343750005], + [-86.59462890624997, 72.66113281250003], + [-86.38032226562501, 72.52465820312503], + [-86.32255859374996, 72.46083984375], + [-86.32402343749999, 72.40214843750002], + [-86.348046875, 72.26225585937502], + [-86.35097656249997, 72.19130859374997], + [-86.34135742187496, 72.12319335937502], + [-86.29716796874993, 72.02578125], + [-86.21845703124998, 71.89912109375004], + [-86.03613281249997, 71.77094726562504], + [-85.75009765624995, 71.641357421875], + [-85.53715820312502, 71.555419921875], + [-85.32719726562496, 71.49213867187498], + [-85.07871093749995, 71.39848632812502], + [-85.02338867187495, 71.35322265625001], + [-85.13759765624997, 71.30341796875001], + [-85.40537109374998, 71.22675781250001], + [-85.75727539062498, 71.19394531249998], + [-85.94541015624995, 71.16264648437502], + [-86.17944335937503, 71.09589843750001], + [-86.4732421875, 71.042626953125], + [-86.58935546874997, 71.01079101562507] + ] + ], + [ + [ + [-100.00190429687497, 73.9458984375], + [-99.15795898437499, 73.73159179687497], + [-99.03964843749996, 73.74926757812503], + [-98.78452148437503, 73.76054687500002], + [-98.51933593750002, 73.79208984375003], + [-98.15185546875, 73.81821289062503], + [-97.927734375, 73.86577148437505], + [-97.832177734375, 73.87934570312495], + [-97.66997070312499, 73.88774414062499], + [-97.58183593749996, 73.88754882812503], + [-97.32705078125002, 73.86186523437505], + [-97.22475585937497, 73.84379882812499], + [-97.1705078125, 73.82485351562497], + [-97.11171874999994, 73.79033203125005], + [-97.01127929687499, 73.70615234375003], + [-96.99658203125003, 73.67490234375006], + [-97.001708984375, 73.66650390625003], + [-97.094580078125, 73.61474609374997], + [-97.156396484375, 73.5921875], + [-97.2841796875, 73.57075195312498], + [-97.39477539062497, 73.56420898437497], + [-97.48979492187496, 73.52661132812503], + [-97.59697265624993, 73.53662109375003], + [-97.62587890624997, 73.50229492187498], + [-97.61459960937498, 73.48134765624997], + [-97.58583984375, 73.47114257812501], + [-97.5318359375, 73.47358398437498], + [-97.47011718749994, 73.48823242187495], + [-97.35029296874995, 73.48095703124997], + [-97.28710937499997, 73.45844726562501], + [-97.23037109374997, 73.4212890625], + [-97.27250976562502, 73.38681640624998], + [-97.48408203124995, 73.33920898437506], + [-97.79589843749997, 73.285302734375], + [-98.17583007812502, 73.11577148437502], + [-98.37558593750003, 73.044677734375], + [-98.416845703125, 73.02250976562502], + [-98.43696289062501, 73.000244140625], + [-98.43090820312503, 72.95805664062502], + [-98.42177734375002, 72.94101562500003], + [-98.36665039062498, 72.93413085937505], + [-98.18081054687497, 72.99306640624997], + [-98.06103515624997, 73.02050781250006], + [-97.93940429687498, 73.03559570312501], + [-97.72480468749995, 73.03666992187505], + [-97.63632812499998, 73.02763671874999], + [-97.47568359375, 72.99228515624998], + [-97.32875976562502, 72.937841796875], + [-97.29584960937498, 72.91801757812505], + [-97.309912109375, 72.89814453124998], + [-97.37099609375, 72.878125], + [-97.37768554687494, 72.86494140624998], + [-97.23759765625002, 72.83745117187507], + [-97.08300781249994, 72.76284179687497], + [-97.07290039062502, 72.71757812500007], + [-97.14047851562503, 72.67275390625], + [-97.15893554687497, 72.64277343750001], + [-97.12812, 72.62758789062502], + [-97.05180664062499, 72.63681640625003], + [-96.86904296874997, 72.68701171874997], + [-96.6712890625, 72.71318359375005], + [-96.59208984374996, 72.71025390624999], + [-96.54208984374998, 72.69873046875006], + [-96.48920898437495, 72.62988281250006], + [-96.44560546874996, 72.55244140624998], + [-96.44013671874998, 72.48730468750006], + [-96.47285156249998, 72.434375], + [-96.51987304687498, 72.39311523437505], + [-96.63828125000003, 72.34204101562503], + [-96.74550781249994, 72.32260742187498], + [-96.80146484374998, 72.32241210937502], + [-96.7958984375, 72.31376953125005], + [-96.66875, 72.271240234375], + [-96.61557617187503, 72.23725585937501], + [-96.59287109375, 72.2044921875], + [-96.6005859375, 72.17285156250003], + [-96.61811523437501, 72.14589843750005], + [-96.76630859375001, 72.04594726562502], + [-96.75830078124997, 72.03168945312495], + [-96.71728515624997, 72.02514648437503], + [-96.62436523437495, 71.96757812500005], + [-96.61342773437494, 71.83383789062506], + [-96.94648437499993, 71.79189453125005], + [-97.02465820312497, 71.7607421875], + [-97.11669921874997, 71.71083984375005], + [-97.22221679687499, 71.673486328125], + [-97.46123046874999, 71.63422851562498], + [-97.58227539062497, 71.62968750000005], + [-98.18134765624998, 71.66245117187503], + [-98.24194335937497, 71.681494140625], + [-98.28388671875001, 71.71552734375001], + [-98.30708007812493, 71.76450195312506], + [-98.31337890624997, 71.803076171875], + [-98.30268554687501, 71.83110351562505], + [-98.30581054687502, 71.84755859375002], + [-98.32270507812501, 71.85234375000002], + [-98.389306640625, 71.82426757812507], + [-98.45883789062503, 71.77319335937506], + [-98.42080078125, 71.71650390624995], + [-98.23144531249997, 71.558935546875], + [-98.19531249999997, 71.49121093749997], + [-98.19013671874998, 71.46245117187507], + [-98.19863281249994, 71.44086914062501], + [-98.41230468749995, 71.34882812500001], + [-98.53593750000002, 71.31762695312506], + [-98.66289062499993, 71.302099609375], + [-98.78383789062497, 71.31367187499995], + [-98.89877929687495, 71.35234375000002], + [-98.98623046875, 71.36948242187503], + [-99.167138671875, 71.36718750000003], + [-99.22363281249996, 71.387109375], + [-99.276171875, 71.42421875], + [-99.40366210937495, 71.55717773437502], + [-99.58144531250002, 71.65156249999995], + [-99.73471679687499, 71.7572265625], + [-100.12412109375, 71.9115234375], + [-100.32568359374994, 72.00385742187495], + [-100.594482421875, 72.15234375000003], + [-100.70683593749997, 72.18593750000002], + [-100.80019531249998, 72.19941406250001], + [-100.98364257812496, 72.21005859375006], + [-101.02622070312502, 72.22856445312502], + [-101.09311523437498, 72.279052734375], + [-101.20854492187495, 72.31699218749998], + [-101.25068359375001, 72.32177734375], + [-101.318701171875, 72.31284179687503], + [-101.49833984375002, 72.27788085937502], + [-101.72392578124996, 72.31489257812501], + [-101.77451171874996, 72.34091796874998], + [-101.80444335937503, 72.38505859374999], + [-101.83291015624997, 72.40927734375006], + [-101.909326171875, 72.43105468750005], + [-101.97368164062496, 72.48613281249999], + [-102.40224609374995, 72.5947265625], + [-102.657080078125, 72.71943359375001], + [-102.70874023437496, 72.76450195312503], + [-102.71367187499999, 72.78291015624995], + [-102.6875, 72.84282226562499], + [-102.62846679687495, 72.910791015625], + [-102.55107421874999, 72.97827148437497], + [-102.50380859374995, 73.00590820312502], + [-102.33613281249998, 73.06411132812497], + [-102.20400390624998, 73.077294921875], + [-102.01962890624999, 73.069921875], + [-101.9224609375, 73.05698242187503], + [-101.83540039062503, 73.01801757812498], + [-101.79804687499997, 72.97309570312498], + [-101.75454101562498, 72.94282226562504], + [-101.6177734375, 72.90971679687505], + [-101.543603515625, 72.88305664062503], + [-101.434619140625, 72.821044921875], + [-101.35058593750003, 72.74628906249995], + [-101.27319335937497, 72.7216796875], + [-101.08759765625, 72.71328125], + [-100.89604492187497, 72.72592773437498], + [-100.48476562500002, 72.77294921874997], + [-100.46801757812499, 72.77880859375003], + [-100.44257812499995, 72.80683593749995], + [-100.395703125, 72.97700195312498], + [-100.36752929687495, 72.97773437499995], + [-100.22792968750001, 72.89892578124997], + [-100.18833007812493, 72.890283203125], + [-100.128125, 72.90668945312495], + [-100.09238281250002, 72.94497070312502], + [-100.09672851562502, 72.963134765625], + [-100.18447265624995, 73.05532226562505], + [-100.236181640625, 73.09541015625004], + [-100.28266601562497, 73.12031249999995], + [-100.33437, 73.12846679687502], + [-100.44619140624998, 73.12055664062501], + [-100.53139648437502, 73.13828124999998], + [-100.55019531249994, 73.163720703125], + [-100.53637695312497, 73.19785156250003], + [-100.48930664062497, 73.23393554687502], + [-100.43881835937499, 73.25458984374995], + [-100.34072265625, 73.26518554687499], + [-100.22587890624995, 73.25468750000007], + [-100.0669921875, 73.21108398437497], + [-99.96640624999993, 73.20141601562506], + [-99.82514648437503, 73.2138671875], + [-100.00590820312499, 73.239501953125], + [-100.25795898437501, 73.340234375], + [-100.36611328125001, 73.359033203125], + [-100.49799804687497, 73.3158203125], + [-100.58701171874998, 73.29956054687497], + [-100.75532226562498, 73.27846679687502], + [-100.88935546875003, 73.27534179687501], + [-101.45087890625003, 73.43095703125002], + [-101.482080078125, 73.44584960937502], + [-101.52319335937501, 73.48637695312502], + [-101.51845703124994, 73.505029296875], + [-101.46303710937502, 73.533837890625], + [-101.32314453124994, 73.57197265624995], + [-101.11494140624998, 73.59584960937502], + [-100.97578124999995, 73.59975585937502], + [-100.85410156249995, 73.5712890625], + [-100.67680664062497, 73.49428710937502], + [-100.5216796875, 73.44931640625], + [-100.50893554687498, 73.46547851562502], + [-100.53632812499995, 73.50971679687498], + [-100.60712890625, 73.57539062500004], + [-100.65791015624995, 73.59335937500006], + [-100.78271484374997, 73.61293945312505], + [-100.89824218749997, 73.658056640625], + [-100.95258789062494, 73.69140625000003], + [-100.98154296874998, 73.72719726562497], + [-100.985107421875, 73.76533203125001], + [-100.96298828125002, 73.79140625], + [-100.91513671874995, 73.80537109374998], + [-100.48364257812497, 73.84350585937503], + [-100.18232421874995, 73.80126953125003], + [-99.99111328125, 73.79516601562503], + [-99.91186523437501, 73.84702148437503], + [-99.93950195312496, 73.85712890624995], + [-100.04008789062493, 73.84379882812499], + [-100.15380859375001, 73.84409179687498], + [-100.2248046875, 73.87250976562498], + [-100.22705078125001, 73.88911132812498], + [-100.1384765625, 73.92885742187502], + [-100.00190429687497, 73.9458984375] + ] + ], + [ + [ + [-98.270361328125, 73.86850585937498], + [-98.558203125, 73.84741210937503], + [-98.691064453125, 73.85649414062502], + [-98.76137695312502, 73.82885742187497], + [-98.8166015625, 73.817138671875], + [-98.97392578124997, 73.81206054687502], + [-99.29804687500003, 73.86196289062497], + [-99.38515625, 73.87929687500005], + [-99.4169921875, 73.89541015625002], + [-99.40380859374999, 73.910888671875], + [-99.34560546874994, 73.92573242187498], + [-99.09687, 73.94829101562507], + [-99.00468749999995, 73.96494140624998], + [-98.96669921875002, 73.98818359375002], + [-98.90449218749995, 74.00688476562502], + [-98.81816406249996, 74.02099609375003], + [-98.58496093749997, 74.03452148437503], + [-98.06103515624997, 74.10468749999995], + [-97.800439453125, 74.11464843750002], + [-97.69824218749997, 74.10869140625005], + [-97.66743164062501, 74.09013671875002], + [-97.65913085937498, 74.07163085937506], + [-97.67333984374997, 74.05302734374999], + [-97.75473632812503, 74.005517578125], + [-97.86108398437503, 73.96845703124998], + [-98.14697265625, 73.88881835937502], + [-98.270361328125, 73.86850585937498] + ] + ], + [ + [ + [-93.17084960937498, 74.16098632812506], + [-92.77802734374998, 74.11372070312501], + [-92.58681640625002, 74.08271484375001], + [-92.49282226562497, 74.06206054687505], + [-92.31386718750002, 73.99238281249998], + [-92.22270507812502, 73.97236328124998], + [-91.87416992187497, 74.01279296875006], + [-91.63041992187496, 74.02778320312501], + [-91.08798828125003, 74.00927734375006], + [-90.62744140625, 73.95170898437505], + [-90.45800781250003, 73.90839843750001], + [-90.35458984375, 73.86865234375], + [-90.38139648437496, 73.82475585937502], + [-90.466162109375, 73.75385742187498], + [-90.565576171875, 73.68642578125], + [-90.76455078124994, 73.58061523437502], + [-90.93369140625003, 73.527685546875], + [-90.97548828125002, 73.50229492187498], + [-91.001953125, 73.46708984374999], + [-91.06762695312497, 73.41552734374997], + [-91.24931640624993, 73.30400390624999], + [-91.29780273437495, 73.284912109375], + [-91.55371093749997, 73.236083984375], + [-91.46601562499995, 73.21420898437498], + [-91.42592773437497, 73.19487304687505], + [-91.45961914062497, 73.145361328125], + [-91.62099609375, 73.02587890625], + [-91.78833007812497, 72.91538085937503], + [-91.90532226562502, 72.84931640624998], + [-92.11791992187497, 72.75380859375], + [-92.23491210937502, 72.726806640625], + [-92.39194335937503, 72.71845703124998], + [-93.34062, 72.80185546875], + [-93.57866210937493, 72.800537109375], + [-94.21132812499997, 72.75693359375], + [-94.15170898437498, 72.73564453125002], + [-93.92001953125003, 72.703369140625], + [-93.77055664062496, 72.66821289062506], + [-93.57226562499997, 72.55864257812502], + [-93.54648437499995, 72.53129882812505], + [-93.53393554687497, 72.49946289062495], + [-93.54160156250003, 72.43701171875003], + [-93.55517578124994, 72.42114257812497], + [-93.87060546875, 72.25263671875001], + [-93.97255859375, 72.12998046875], + [-94.03754882812498, 72.02875976562498], + [-94.14375, 72.00083007812498], + [-94.49716796875, 72.043603515625], + [-94.61123046875, 72.04233398437498], + [-95.00786132812496, 72.01279296875], + [-95.19296875, 72.02744140624998], + [-95.16679687500002, 72.18002929687498], + [-95.19267578124996, 72.34477539062505], + [-95.25102539062493, 72.501953125], + [-95.54760742187497, 72.78154296875005], + [-95.58032226562497, 72.83115234375003], + [-95.60214843749998, 72.88447265624995], + [-95.61318359375, 72.94160156249995], + [-95.61220703125, 72.99907226562505], + [-95.59160156249996, 73.11528320312499], + [-95.58925781250002, 73.174169921875], + [-95.6041015625, 73.32773437500003], + [-95.64423828124993, 73.55747070312503], + [-95.64799804687499, 73.638525390625], + [-95.64526367187497, 73.67080078125002], + [-95.63291015625003, 73.69545898437497], + [-95.56943359374998, 73.728173828125], + [-95.447412109375, 73.75166015624998], + [-95.385986328125, 73.75512695312497], + [-94.99614257812496, 73.68574218749995], + [-94.81684570312495, 73.66254882812501], + [-94.697607421875, 73.66357421874997], + [-94.69101562499998, 73.67143554687505], + [-94.79716796874993, 73.68608398437502], + [-94.89692382812501, 73.71601562499998], + [-95.05947265625, 73.80507812500002], + [-95.134130859375, 73.88125], + [-95.14902343750003, 73.90639648437497], + [-95.15258789062497, 73.932763671875], + [-95.14477539062497, 73.96030273437503], + [-95.12119140624995, 73.98505859375001], + [-95.03984374999999, 74.02387695312501], + [-94.97353515625, 74.04140625000002], + [-94.72895507812498, 74.08598632812505], + [-94.48256835937497, 74.11313476562498], + [-93.93881835937495, 74.131591796875], + [-93.78461914062498, 74.11835937499998], + [-93.54921875, 74.16713867187497], + [-93.41030273437502, 74.17875976562502], + [-93.17084960937498, 74.16098632812506] + ] + ], + [ + [ + [-119.73632812499997, 74.11264648437498], + [-119.72856445312499, 74.10844726562502], + [-119.47109374999994, 74.20122070312499], + [-119.31484375, 74.20625], + [-119.20595703125002, 74.19799804687503], + [-119.171435546875, 74.18618164062502], + [-119.149609375, 74.16787109375002], + [-119.13876953125, 74.127587890625], + [-119.13188476562493, 74.02788085937502], + [-119.11796874999995, 74.01552734375], + [-119.08251953125, 74.02119140624998], + [-119.02568359374997, 74.04472656249999], + [-118.74414062499999, 74.19208984374998], + [-118.62529296874993, 74.23251953125006], + [-118.54399414062499, 74.24462890625003], + [-118.199658203125, 74.26674804687502], + [-117.96586914062497, 74.26606445312495], + [-117.707470703125, 74.25234375000002], + [-117.51484375000001, 74.23173828124999], + [-117.19882812500003, 74.171142578125], + [-116.95039062499995, 74.101416015625], + [-116.72236328124995, 74.02714843750005], + [-115.95771484374995, 73.74794921875002], + [-115.63432617187497, 73.66552734375], + [-115.51069335937501, 73.61875], + [-115.45566406249999, 73.58466796874995], + [-115.40751953124996, 73.54189453125005], + [-115.39282226562499, 73.501953125], + [-115.41157226562498, 73.46479492187498], + [-115.44687, 73.43886718750002], + [-115.52446289062497, 73.41674804687503], + [-115.99228515624998, 73.3232421875], + [-116.23862304687499, 73.29458007812502], + [-116.48251953125002, 73.25322265625005], + [-117.06542968750003, 73.10727539062506], + [-117.46445312499996, 73.03774414062502], + [-117.98320312499996, 72.902197265625], + [-118.96157226562497, 72.68413085937499], + [-119.07797851562496, 72.64033203124995], + [-119.13154296874995, 72.60883789062504], + [-119.407763671875, 72.36040039062505], + [-119.51284179687501, 72.30268554687501], + [-119.76748046875002, 72.24384765625001], + [-120.08974609374995, 72.22915039062502], + [-120.17988281250001, 72.21264648437506], + [-120.19443359374996, 72.12675781250005], + [-120.31000976562497, 71.98408203125001], + [-120.36625976562497, 71.888037109375], + [-120.4431640625, 71.63081054687498], + [-120.46093749999999, 71.605078125], + [-120.51967773437497, 71.55742187500005], + [-120.61933593750001, 71.50576171875002], + [-120.93032226562495, 71.44624023437495], + [-121.159814453125, 71.41499023437498], + [-121.47216796875003, 71.38901367187503], + [-121.54682617187497, 71.40678710937502], + [-121.62216796875003, 71.44760742187498], + [-121.70068359374996, 71.451171875], + [-121.74936523437502, 71.44477539062501], + [-122.15664062499994, 71.26591796874999], + [-122.54951171874995, 71.19355468750001], + [-122.719775390625, 71.128173828125], + [-122.83994140624998, 71.09746093750005], + [-122.93652343750001, 71.08798828124998], + [-123.09565429687503, 71.09379882812502], + [-123.210595703125, 71.12343750000002], + [-123.31474609374997, 71.169189453125], + [-123.393359375, 71.21884765625], + [-123.595166015625, 71.42319335937498], + [-123.68183593749998, 71.49311523437501], + [-123.75556640625, 71.52802734375001], + [-123.95327148437495, 71.65249023437497], + [-124.00776367187494, 71.67744140624998], + [-124.75996093749998, 71.83515624999998], + [-125.12612304687497, 71.92363281250005], + [-125.21464843749997, 71.95478515625001], + [-125.29667968749999, 71.973046875], + [-125.76689453124995, 71.96083984375], + [-125.82910156250001, 71.96562], + [-125.84531250000002, 71.978662109375], + [-125.78964843749996, 72.025], + [-125.76772460937494, 72.05424804687502], + [-125.76049804687497, 72.08291015625], + [-125.76860351562495, 72.129150390625], + [-125.76259765624997, 72.1375], + [-125.58378906249995, 72.18305664062498], + [-125.61279296875, 72.19252929687502], + [-125.63378906250001, 72.210302734375], + [-125.64677734374999, 72.23652343750004], + [-125.62729492187502, 72.25483398437504], + [-125.57548828124995, 72.26528320312502], + [-125.51240234374997, 72.30771484375006], + [-125.43808593750002, 72.38208007812503], + [-125.38276367187503, 72.423828125], + [-125.30600585937502, 72.45073242187505], + [-125.16831054687503, 72.52260742187505], + [-125.07021484374995, 72.551611328125], + [-124.98710937499997, 72.58798828125003], + [-124.98466796875002, 72.60439453125002], + [-125.01855468749999, 72.61699218749999], + [-125.03022460937497, 72.64477539062497], + [-125.01474609375002, 72.73144531250006], + [-125.01542968749997, 72.77607421874998], + [-125.00039062500002, 72.81333007812503], + [-124.96967773437498, 72.84331054687502], + [-124.93085937499998, 72.86318359374997], + [-124.58256835937499, 72.92592773437497], + [-124.56494140624994, 72.94414062500005], + [-124.56083984375, 72.96503906250004], + [-124.57021484374995, 72.98872070312498], + [-124.58828125, 73.00532226562498], + [-124.64331054687501, 73.0189453125], + [-124.73642578124998, 73.02270507812497], + [-124.81708984374998, 73.05878906250004], + [-124.83642578125001, 73.07626953125003], + [-124.80405273437499, 73.12568359374998], + [-124.64692382812495, 73.20444335937503], + [-124.593994140625, 73.24331054687497], + [-124.42421874999997, 73.418701171875], + [-124.11416015624995, 73.52739257812502], + [-124.03017578124998, 73.64423828125001], + [-123.79726562499997, 73.76816406250003], + [-123.79780273437498, 73.785302734375], + [-123.87304687499994, 73.82758789062498], + [-124.08803710937495, 73.85688476562501], + [-124.19150390624999, 73.90200195312505], + [-124.26074218749997, 73.95327148437502], + [-124.57534179687502, 74.24814453125003], + [-124.62910156249997, 74.27001953124997], + [-124.64501953125001, 74.30434570312502], + [-124.70932617187496, 74.32700195312503], + [-124.69624023437497, 74.34819335937499], + [-123.468310546875, 74.43613281249998], + [-122.62314453125003, 74.46416015624999], + [-121.74790039062498, 74.540625], + [-121.50415039062497, 74.54511718749998], + [-121.31523437499995, 74.52998046874998], + [-121.12871093749996, 74.49023437499997], + [-120.88164062499999, 74.42075195312503], + [-120.55449218749995, 74.3529296875], + [-119.94360351562501, 74.25371093750002], + [-119.56264648437494, 74.23281250000002], + [-119.71538085937497, 74.15366210937498], + [-119.7369140625, 74.12993164062502], + [-119.73632812499997, 74.11264648437498] + ] + ], + [ + [ + [-97.35551757812496, 74.52631835937495], + [-97.656103515625, 74.46567382812503], + [-97.72158203125002, 74.48920898437495], + [-97.75, 74.51054687500005], + [-97.51630859374995, 74.60249023437501], + [-97.41650390624994, 74.62656250000003], + [-97.318212890625, 74.597998046875], + [-97.29130859374993, 74.57636718750004], + [-97.303857421875, 74.55966796875], + [-97.35551757812496, 74.52631835937495] + ] + ], + [ + [ + [-95.306640625, 74.50541992187505], + [-95.35244140625, 74.500390625], + [-95.44150390625003, 74.50610351562503], + [-95.77719726562503, 74.55073242187495], + [-95.83437, 74.56904296874995], + [-95.850732421875, 74.58247070312504], + [-95.7744140625, 74.59868164062505], + [-95.74560546874997, 74.61596679687503], + [-95.66044921874996, 74.63691406250001], + [-95.51020507812498, 74.63676757812499], + [-95.35253906250003, 74.58569335937497], + [-95.27836914062502, 74.53955078125], + [-95.27446289062502, 74.51918945312502], + [-95.306640625, 74.50541992187505] + ] + ], + [ + [ + [-104.11992187499995, 75.03632812500004], + [-104.30869140624995, 75.03095703125001], + [-104.63432617187503, 75.06127929687497], + [-104.82812, 75.11972656249998], + [-104.88740234374998, 75.14775390624999], + [-104.88164062499997, 75.160498046875], + [-104.84809570312497, 75.17304687500001], + [-104.80131835937495, 75.21103515625], + [-104.690380859375, 75.32070312499997], + [-104.64882812499997, 75.34975585937502], + [-104.474169921875, 75.41303710937495], + [-104.34619140624996, 75.42993164062503], + [-104.07465820312497, 75.42451171874998], + [-103.9169921875, 75.391845703125], + [-103.851171875, 75.37080078124995], + [-103.80410156250001, 75.34550781250005], + [-103.75791015625, 75.2890625], + [-103.746484375, 75.25244140625], + [-103.66723632812501, 75.21069335937503], + [-103.64350585937497, 75.18657226562499], + [-103.64213867187496, 75.16293945312498], + [-103.66425781250003, 75.1390625], + [-103.70971679687496, 75.11499023437497], + [-103.81391601562495, 75.079736328125], + [-104.11992187499995, 75.03632812500004] + ] + ], + [ + [ + [-93.54257812499995, 75.0279296875], + [-93.478271484375, 74.95195312499999], + [-93.46660156249993, 74.92133789062495], + [-93.4634765625, 74.85649414062499], + [-93.490869140625, 74.77197265625], + [-93.5091796875, 74.75649414062505], + [-93.53564453124997, 74.74931640625002], + [-93.54829101562498, 74.7275390625], + [-93.54716796875002, 74.69106445312505], + [-93.57309570312495, 74.66884765625005], + [-93.62617187499993, 74.66088867187503], + [-93.98457031249995, 74.644189453125], + [-94.20605468749994, 74.64741210937504], + [-94.53452148437498, 74.63671874999997], + [-94.697265625, 74.64218750000003], + [-94.80385742187497, 74.66010742187495], + [-94.958740234375, 74.69995117187497], + [-95.28608398437498, 74.79409179687497], + [-95.45122070312496, 74.79736328125003], + [-95.86542968749995, 74.830419921875], + [-96.09423828124994, 74.93251953125002], + [-96.18173828125, 74.95078125], + [-96.27011718749998, 74.92031250000002], + [-96.294189453125, 74.92719726562501], + [-96.31855468750001, 74.94770507812501], + [-96.34316406249994, 74.98193359374997], + [-96.38632812499995, 74.99946289062498], + [-96.55986328124996, 74.990380859375], + [-96.59116210937503, 75.00185546875002], + [-96.59960937499997, 75.03178710937499], + [-96.59692382812494, 75.05786132812497], + [-96.565771484375, 75.09873046875003], + [-96.38286132812496, 75.21137695312498], + [-96.2923828125, 75.21928710937502], + [-96.18037109375001, 75.24008789062498], + [-96.118408203125, 75.30092773437502], + [-96.12490234375, 75.35830078125], + [-95.95463867187493, 75.44379882812501], + [-95.85317382812497, 75.46904296874999], + [-95.67080078125002, 75.52866210937498], + [-95.04951171875001, 75.62182617187503], + [-94.878173828125, 75.63002929687502], + [-94.64863281249995, 75.62304687500003], + [-94.42724609374997, 75.593359375], + [-94.25668945312495, 75.544091796875], + [-93.90908203125002, 75.42250976562502], + [-93.75083007812503, 75.34902343749997], + [-93.66684570312498, 75.27353515625003], + [-93.59121093750002, 75.230224609375], + [-93.49755859375003, 75.136865234375], + [-93.53173828124997, 75.10034179687503], + [-93.55180664062499, 75.05117187500005], + [-93.54257812499995, 75.0279296875] + ] + ], + [ + [ + [-96.07856445312495, 75.510107421875], + [-96.156396484375, 75.47724609374998], + [-96.23662109375002, 75.47480468750001], + [-96.34448242187494, 75.50595703125006], + [-96.46162109375001, 75.49423828124998], + [-96.62197265625, 75.43129882812502], + [-96.67900390624999, 75.39418945312502], + [-96.72285156249995, 75.38076171875005], + [-96.85712890624995, 75.36914062499997], + [-96.91513671875003, 75.37968749999999], + [-96.96962890624994, 75.41264648437505], + [-97.02065429687494, 75.46806640625007], + [-96.98281249999997, 75.50981445312505], + [-96.85615234375001, 75.537939453125], + [-96.52290039062498, 75.583642578125], + [-96.42768554687493, 75.60634765625], + [-96.41723632812503, 75.63071289062498], + [-96.39726562499996, 75.64682617187498], + [-96.367822265625, 75.65463867187506], + [-96.14541015625, 75.61352539062503], + [-96.03984375, 75.58579101562498], + [-95.95986328125002, 75.55434570312497], + [-95.96860351562503, 75.541845703125], + [-96.07856445312495, 75.510107421875] + ] + ], + [ + [ + [-121.07622070312502, 75.74526367187505], + [-121.15429687500001, 75.740625], + [-121.24091796875, 75.75185546874997], + [-121.22109374999995, 75.77749023437505], + [-121.02631835937497, 75.847509765625], + [-121.01542968749997, 75.867529296875], + [-121.01806640624997, 75.88383789062505], + [-121.04228515624993, 75.90297851562502], + [-120.99301757812502, 75.92744140625004], + [-120.91396484375, 75.9375], + [-120.88779296874999, 75.92797851562497], + [-120.8787109375, 75.90668945312498], + [-120.896875, 75.84453125000002], + [-120.92124023437496, 75.81445312500003], + [-120.95493164062499, 75.78876953125004], + [-121.00664062499996, 75.76572265625003], + [-121.07622070312502, 75.74526367187505] + ] + ], + [ + [ + [-94.52656249999995, 75.74931640624999], + [-94.624365234375, 75.74887695312498], + [-94.75146484374994, 75.76967773437505], + [-94.78735351562497, 75.79140625000002], + [-94.81474609374996, 75.82119140624997], + [-94.833642578125, 75.85898437500003], + [-94.86010742187497, 75.88920898437507], + [-94.89409179687496, 75.91186523437497], + [-94.901220703125, 75.93076171875], + [-94.88134765624994, 75.945947265625], + [-94.83979492187501, 75.95444335937503], + [-94.74482421874993, 75.95722656249998], + [-94.53789062499996, 75.99643554687506], + [-94.49868164062497, 75.9921875], + [-94.47128906249998, 75.97143554687503], + [-94.44335937499997, 75.91708984375006], + [-94.41376953124998, 75.88486328124998], + [-94.33222656249998, 75.82597656250005], + [-94.29628906249994, 75.78808593749997], + [-94.30400390625002, 75.77631835937498], + [-94.32954101562498, 75.76591796874999], + [-94.52656249999995, 75.74931640624999] + ] + ], + [ + [ + [-118.32812, 75.57968749999998], + [-118.6138671875, 75.51542968750002], + [-118.81713867187503, 75.52211914062497], + [-119.08666992187496, 75.5693359375], + [-119.30605468749998, 75.58535156249997], + [-119.38325195312498, 75.60102539062498], + [-119.39458007812499, 75.617333984375], + [-119.32016601562502, 75.66254882812498], + [-119.226806640625, 75.69863281249997], + [-119.00346679687497, 75.76958007812502], + [-118.62607421875, 75.90625], + [-118.37900390625003, 75.95795898437504], + [-118.13666992187495, 75.994482421875], + [-117.88935546875003, 76.07607421875002], + [-117.75249023437493, 76.11245117187497], + [-117.63369140624998, 76.11508789062498], + [-117.51259765625001, 76.09941406249999], + [-117.49912109375, 76.07719726562499], + [-117.6263671875, 75.96596679687497], + [-117.71596679687495, 75.921142578125], + [-117.89082031249997, 75.80546875000005], + [-118.22651367187497, 75.611181640625], + [-118.32812, 75.57968749999998] + ] + ], + [ + [ + [-79.0630859375, 75.92587890624998], + [-79.0517578125, 75.86699218750007], + [-79.12441406249997, 75.86967773437499], + [-79.35566406249993, 75.83115234375003], + [-79.54453125000003, 75.82563476562498], + [-79.63876953124995, 75.84291992187505], + [-79.69873046875, 75.88325195312501], + [-79.55126953125, 75.95834960937503], + [-79.38178710937501, 76.01083984374998], + [-79.17832031250003, 76.09238281249998], + [-79.00932617187499, 76.14589843750005], + [-78.92587890625003, 76.13466796874997], + [-78.84516601562493, 76.10629882812506], + [-78.94643554687497, 76.02543945312502], + [-79.05664062500003, 75.98515625000007], + [-79.0630859375, 75.92587890624998] + ] + ], + [ + [ + [-102.22734374999995, 76.014892578125], + [-102.01787109374999, 75.95351562500002], + [-102.00800781250003, 75.93940429687498], + [-102.04746093749998, 75.927734375], + [-102.31811523437496, 75.89516601562502], + [-102.4234375, 75.86918945312507], + [-102.51137695312498, 75.80839843750002], + [-102.57958984375003, 75.78022460937498], + [-102.94355468750001, 75.76342773437503], + [-103.31474609374996, 75.76420898437499], + [-103.24472656249999, 75.82294921874998], + [-103.04150390624999, 75.91884765624997], + [-103.2015625, 75.95849609374997], + [-103.76977539062503, 75.89238281249999], + [-103.98525390624997, 75.93310546875003], + [-103.80078124999994, 76.03701171874997], + [-103.984521484375, 76.04653320312497], + [-104.24248046874996, 76.04697265625006], + [-104.40605468749997, 76.10849609374998], + [-104.35063476562497, 76.18232421875001], + [-104.012060546875, 76.22299804687503], + [-103.57143554687494, 76.258203125], + [-103.09824218749999, 76.31147460937501], + [-102.72802734374999, 76.30703125], + [-102.58408203124996, 76.281640625], + [-102.53613281249997, 76.19643554687502], + [-102.49003906249999, 76.09506835937498], + [-102.42568359375002, 76.08642578125], + [-102.22734374999995, 76.014892578125] + ] + ], + [ + [ + [-104.02285156249998, 76.58310546875003], + [-103.97348632812496, 76.57758789062498], + [-103.82109375, 76.59750976562503], + [-103.72275390624995, 76.60107421875006], + [-103.613134765625, 76.56342773437501], + [-103.58461914062497, 76.53886718749999], + [-103.19013671874998, 76.47744140625], + [-103.05131835937495, 76.44985351562497], + [-103.03354492187496, 76.43149414062506], + [-103.082958984375, 76.40517578125002], + [-103.19951171874993, 76.37084960937503], + [-103.31137695312499, 76.34755859375], + [-103.47221679687497, 76.32905273437495], + [-104.27065429687502, 76.32626953125], + [-104.35751953124995, 76.33461914062502], + [-104.40766601562495, 76.36513671875002], + [-104.5064453125, 76.47895507812495], + [-104.576611328125, 76.540185546875], + [-104.60302734374996, 76.58271484374995], + [-104.58569335937499, 76.60649414062499], + [-104.500390625, 76.63037109374997], + [-104.20512695312499, 76.66611328124998], + [-104.07451171875003, 76.66611328124998], + [-103.99248046875002, 76.65698242187497], + [-103.95908203124996, 76.63876953125], + [-103.96918945312497, 76.61416015624997], + [-104.02285156249998, 76.58310546875003] + ] + ], + [ + [ + [-97.70092773437497, 76.46650390624998], + [-97.68974609375002, 76.42182617187504], + [-97.70185546874998, 76.38740234374995], + [-97.73710937499999, 76.36313476562498], + [-97.73876953124997, 76.33525390624999], + [-97.70683593749993, 76.30371093750003], + [-97.57314453124997, 76.22421875], + [-97.53066406250002, 76.18154296875002], + [-97.52426757812498, 76.13872070312499], + [-97.53105468750002, 76.10942382812499], + [-97.61347656249993, 76.05263671874997], + [-97.65, 75.979150390625], + [-97.65214843749999, 75.94018554687497], + [-97.60302734375003, 75.87934570312501], + [-97.60166015625, 75.85107421875003], + [-97.69423828124997, 75.802587890625], + [-97.89052734374997, 75.7603515625], + [-97.86279296875, 75.73808593750002], + [-97.43955078125003, 75.68457031250003], + [-97.40751953124999, 75.67250976562497], + [-97.40961914062495, 75.55209960937503], + [-97.33603515624998, 75.41982421875], + [-97.36347656249998, 75.417236328125], + [-97.46523437500002, 75.458642578125], + [-97.65332031249997, 75.50776367187498], + [-97.87822265624996, 75.41611328125003], + [-97.85273437500001, 75.26030273437502], + [-97.70488281249999, 75.19082031249997], + [-97.65991210937497, 75.15117187499999], + [-97.67431640624997, 75.127294921875], + [-97.79936523437496, 75.11665039062495], + [-97.84272460937501, 75.12182617187506], + [-97.970849609375, 75.15327148437495], + [-98.04531249999997, 75.20083007812497], + [-98.06875, 75.19916992187498], + [-98.09169921875002, 75.17622070312501], + [-98.07675781249998, 75.152978515625], + [-97.989990234375, 75.110693359375], + [-97.95332031249998, 75.06015625], + [-97.991796875, 75.04580078125002], + [-98.12094726562503, 75.03271484375], + [-98.295166015625, 75.03217773437498], + [-98.56865234375002, 75.00932617187505], + [-98.70351562499997, 75.00581054687504], + [-98.83481445312498, 75.01816406249998], + [-99.01005859374997, 75.02109375000003], + [-99.155810546875, 75.01572265625], + [-99.24492187499995, 75.02578125000002], + [-99.32612304687497, 75.04941406250003], + [-99.42060546874994, 75.04375], + [-99.62690429687495, 74.98374023437498], + [-99.94663085937499, 75.00283203124997], + [-100.234375, 75.00771484374997], + [-100.29228515624997, 75.02773437499997], + [-100.35664062499994, 75.066748046875], + [-100.48349609374995, 75.18842773437501], + [-100.45947265625003, 75.21909179687506], + [-100.15205078125001, 75.23564453125005], + [-100.14570312499995, 75.24614257812505], + [-100.36411132812496, 75.28955078125003], + [-100.61489257812498, 75.32143554687502], + [-100.73115234374995, 75.346533203125], + [-100.70424804687498, 75.39433593750005], + [-100.71191406250003, 75.40634765625], + [-100.27963867187498, 75.46098632812505], + [-99.96528320312497, 75.568505859375], + [-99.77021484375003, 75.61225585937495], + [-99.75600585937497, 75.6333984375], + [-99.59116210937496, 75.65537109375003], + [-99.209423828125, 75.66860351562497], + [-99.19458007812499, 75.698388671875], + [-99.91513671874998, 75.68125], + [-100.90175781249998, 75.62041015625002], + [-101.20683593749996, 75.59042968750003], + [-101.46132812500002, 75.60791015625003], + [-102.54140625, 75.51362304687501], + [-102.58740234375001, 75.51367187500003], + [-102.70039062499994, 75.543603515625], + [-102.79750976562501, 75.59965820312505], + [-102.72783203124995, 75.63872070312502], + [-102.41069335937499, 75.71284179687501], + [-102.25205078125, 75.777734375], + [-102.27065429687497, 75.81279296875005], + [-102.14472656249998, 75.87504882812502], + [-101.94282226562497, 75.88383789062505], + [-101.59965820312496, 75.832666015625], + [-101.42124023437493, 75.78193359374995], + [-101.26142578124998, 75.75820312500002], + [-101.119384765625, 75.76289062499998], + [-100.97280273437498, 75.79843750000003], + [-101.00991210937498, 75.80239257812497], + [-101.25883789062499, 75.78364257812495], + [-101.28803710937498, 75.78911132812502], + [-101.414990234375, 75.84584960937502], + [-101.4703125, 75.88193359375], + [-101.50590820312496, 75.91806640624998], + [-101.507861328125, 75.94360351562503], + [-101.43134765624995, 75.99199218750005], + [-101.71679687500003, 76.00791015625], + [-101.82338867187498, 76.04135742187498], + [-101.87211914062496, 76.08310546875003], + [-101.86137695312499, 76.10126953125001], + [-101.77138671874995, 76.15009765625001], + [-101.52895507812495, 76.21728515625003], + [-101.55703125, 76.23583984374997], + [-101.909814453125, 76.234375], + [-101.98745117187501, 76.24311523437495], + [-102.13774414062499, 76.28486328125001], + [-102.1046875, 76.33120117187505], + [-101.96420898437498, 76.3990234375], + [-101.85849609374993, 76.43901367187499], + [-101.78754882812495, 76.45126953125], + [-101.67724609374996, 76.45102539062503], + [-101.41518554687495, 76.42490234375003], + [-101.33974609374995, 76.41049804687503], + [-101.1390625, 76.34516601562495], + [-101.08789062499997, 76.307861328125], + [-101.09418945312501, 76.27192382812495], + [-101.05581054687501, 76.24555664062501], + [-100.90009765625, 76.20708007812499], + [-100.23066406249995, 76.00766601562503], + [-100.10571289062499, 75.96044921875], + [-100.02011718749995, 75.93955078125], + [-99.86547851562499, 75.92421875], + [-99.774853515625, 75.92739257812502], + [-99.70126953125, 75.94145507812505], + [-99.68891601562498, 75.95971679687503], + [-99.97832031249996, 76.02949218749995], + [-100.05097656250003, 76.06660156249995], + [-100.11284179687502, 76.11723632812507], + [-100.085791015625, 76.133544921875], + [-100.00175781249995, 76.13920898437502], + [-99.79018554687501, 76.13261718749999], + [-99.54106445312497, 76.14628906250005], + [-99.817236328125, 76.167578125], + [-99.99760742187499, 76.19584960937502], + [-100.18276367187497, 76.19721679687501], + [-100.41420898437495, 76.242529296875], + [-100.41435546874997, 76.25668945312506], + [-100.35761718749997, 76.27114257812497], + [-100.04272460937503, 76.291259765625], + [-99.98310546874997, 76.29990234374998], + [-99.97773437500003, 76.31245117187495], + [-100.08188476562502, 76.3427734375], + [-100.17465820312499, 76.35927734375], + [-100.65068359374999, 76.39594726562501], + [-100.81987304687499, 76.43701171875003], + [-100.87363281250002, 76.45659179687502], + [-100.89077148437497, 76.47548828125005], + [-100.82973632812497, 76.52387695312495], + [-100.57373046875003, 76.584619140625], + [-100.38793945312501, 76.61357421875002], + [-100.06870117187499, 76.63476562499997], + [-99.8140625, 76.6322265625], + [-99.66904296875002, 76.62412109375003], + [-99.32949218749994, 76.52128906250005], + [-99.16962890624997, 76.45366210937505], + [-98.89033203125, 76.46557617187497], + [-98.97099609375, 76.53657226562495], + [-99.02363281249998, 76.61455078125005], + [-98.940869140625, 76.6431640625], + [-98.71083984374994, 76.69384765625003], + [-98.527587890625, 76.66738281249997], + [-98.288671875, 76.59873046875], + [-98.23618164062495, 76.57534179687505], + [-97.96733398437499, 76.53291015625001], + [-97.80839843749993, 76.51879882812497], + [-97.72587890625002, 76.49609374999997], + [-97.70092773437497, 76.46650390624998] + ] + ], + [ + [ + [-101.22612304687497, 76.57934570312497], + [-101.485205078125, 76.575], + [-101.60498046874999, 76.58701171875003], + [-101.61308593749995, 76.60458984375006], + [-101.50947265624997, 76.62773437500007], + [-101.16503906249997, 76.66542968750002], + [-100.96215820312503, 76.73417968749999], + [-100.88647460937497, 76.74267578125003], + [-100.62158203125001, 76.75249023437499], + [-100.46723632812501, 76.750341796875], + [-100.26914062499998, 76.73413085937497], + [-100.74658203124999, 76.649169921875], + [-101.22612304687497, 76.57934570312497] + ] + ], + [ + [ + [-108.29238281250001, 76.05712890625], + [-108.16630859374999, 76.05429687500003], + [-108.01875, 76.06523437500005], + [-107.85229492187497, 76.05771484375], + [-107.77685546874996, 76.035302734375], + [-107.72348632812502, 75.99541015625002], + [-107.7212890625, 75.97402343750002], + [-107.73183593749994, 75.95561523437499], + [-107.75517578124999, 75.94028320312498], + [-107.97041015624995, 75.839599609375], + [-108.020703125, 75.80478515625], + [-107.95107421875002, 75.79628906249997], + [-107.91752929687502, 75.8021484375], + [-107.70258789062503, 75.877587890625], + [-107.54091796874995, 75.90117187500002], + [-107.41826171875, 75.90659179687506], + [-107.21621093749997, 75.89155273437501], + [-107.135693359375, 75.87856445312502], + [-107.080419921875, 75.86318359375], + [-107.05039062500002, 75.84541015625001], + [-106.970947265625, 75.77309570312502], + [-106.91352539062503, 75.67963867187501], + [-106.90419921875, 75.68925781250002], + [-106.90278320312497, 75.74165039062501], + [-106.89169921875002, 75.78242187499998], + [-106.69311523437497, 75.8099609375], + [-106.68808593750002, 75.81904296874998], + [-106.75937, 75.84160156250005], + [-106.820068359375, 75.872412109375], + [-106.86206054687503, 75.93007812500005], + [-106.84565429687497, 75.95156249999997], + [-106.80410156249994, 75.97465820312507], + [-106.67700195312499, 76.02373046875002], + [-106.52861328124995, 76.05302734375005], + [-106.39658203124996, 76.06010742187507], + [-105.90483398437496, 76.00898437499995], + [-105.71132812499998, 75.96699218750001], + [-105.63266601562493, 75.94536132812505], + [-105.60444335937497, 75.929931640625], + [-105.56328125000002, 75.88066406250002], + [-105.48090820312503, 75.74565429687505], + [-105.48144531249996, 75.70224609374998], + [-105.51948242187497, 75.63237304687505], + [-105.67841796875003, 75.5013671875], + [-105.70263671874999, 75.4125], + [-105.86259765624997, 75.19155273437505], + [-105.97197265624996, 75.13149414062497], + [-106.09262695312495, 75.08945312500003], + [-106.58823242187502, 75.01542968750005], + [-106.96113281249995, 74.94008789062497], + [-107.05561523437503, 74.92817382812504], + [-107.15341796874996, 74.9271484375], + [-107.46191406250001, 74.95214843750003], + [-107.82006835937497, 75.00004882812502], + [-108.02363281249997, 74.986474609375], + [-108.22661132812502, 74.95190429687497], + [-108.35444335937495, 74.94262695312503], + [-108.47475585937495, 74.94721679687501], + [-108.59418945312494, 74.95957031250003], + [-108.75131835937498, 74.99194335937506], + [-108.67026367187499, 75.00673828125005], + [-108.63330078125, 75.02329101562503], + [-108.66601562500001, 75.04033203125005], + [-108.83129882812501, 75.06489257812498], + [-109.0025390625, 75.01030273437507], + [-109.503125, 74.88276367187501], + [-110.17578125000001, 74.839990234375], + [-110.38671875, 74.81396484375003], + [-110.54340820312494, 74.78037109375003], + [-110.624755859375, 74.75268554687497], + [-110.74931640624997, 74.68769531249998], + [-110.94086914062501, 74.63872070312505], + [-111.28754882812503, 74.58515624999995], + [-111.72871093750001, 74.50195312499997], + [-112.51933593749997, 74.41684570312503], + [-113.01689453125, 74.40190429687502], + [-113.51406249999994, 74.430078125], + [-113.67158203124997, 74.45302734375005], + [-113.83681640624997, 74.48896484374998], + [-114.17475585937498, 74.57373046875003], + [-114.26826171875003, 74.60434570312503], + [-114.37695312499997, 74.67084960937501], + [-114.31269531250003, 74.71508789062506], + [-114.13247070312498, 74.76611328125006], + [-113.86289062499995, 74.81254882812502], + [-113.32431640625, 74.87529296874999], + [-112.835986328125, 74.9755859375], + [-112.66303710937503, 74.99443359375002], + [-112.19282226562498, 75.00976562500003], + [-111.95576171875, 75.000390625], + [-111.78422851562496, 75.00566406250002], + [-111.67109375, 75.01943359374997], + [-111.503271484375, 75.05561523437495], + [-111.25795898437495, 75.12773437500002], + [-111.07890624999997, 75.19521484375], + [-111.03349609374996, 75.22675781250001], + [-111.09345703125001, 75.25629882812498], + [-111.18120117187503, 75.26044921874995], + [-111.47392578124997, 75.19111328124995], + [-111.62084960937499, 75.16777343749999], + [-111.78085937499998, 75.16616210937502], + [-112.00048828124996, 75.14243164062498], + [-112.21416015624997, 75.13291015625], + [-112.25551757812497, 75.13369140624997], + [-112.478076171875, 75.2], + [-112.5970703125, 75.21166992187506], + [-112.65239257812499, 75.20468750000006], + [-112.703125, 75.18715820312502], + [-112.79960937499996, 75.13818359375], + [-112.85532226562495, 75.12060546874997], + [-112.95136718749997, 75.10781250000002], + [-113.33964843750003, 75.09326171875], + [-113.71176757812499, 75.06860351562503], + [-113.79462890625, 75.08383789062503], + [-113.84497070312494, 75.11220703125005], + [-113.85537109375002, 75.1294921875], + [-113.8609375, 75.18774414062497], + [-113.88603515624996, 75.2109375], + [-113.85332031249996, 75.259375], + [-113.81088867187502, 75.29633789062498], + [-113.75878906249997, 75.32172851562501], + [-113.50302734375, 75.39667968749998], + [-113.46708984374996, 75.41611328125003], + [-113.58896484375002, 75.41210937500003], + [-113.87851562499993, 75.37543945312501], + [-113.916357421875, 75.38818359375003], + [-113.98413085937496, 75.43007812499997], + [-114.01650390624998, 75.43427734375001], + [-114.05341796874995, 75.41689453125002], + [-114.07490234374998, 75.39238281250002], + [-114.124658203125, 75.29121093750001], + [-114.16845703124994, 75.23950195312503], + [-114.28496093749996, 75.24995117187504], + [-114.42900390625, 75.28115234375], + [-114.48281249999995, 75.28540039062497], + [-114.51381835937497, 75.27548828125], + [-114.50395507812499, 75.25800781249998], + [-114.35776367187496, 75.1712890625], + [-114.35610351562498, 75.14096679687503], + [-114.45175781250002, 75.08789062499997], + [-114.85917968749997, 74.99975585937506], + [-115.02011718749999, 74.97617187500003], + [-115.07705078124995, 74.98530273437504], + [-115.12832031250001, 75.00947265624998], + [-115.17382812499996, 75.048828125], + [-115.27963867187502, 75.1015625], + [-115.34262695312496, 75.11337890625], + [-115.41318359374995, 75.11499023437497], + [-115.47807617187503, 75.10410156249998], + [-115.53730468750001, 75.08071289062502], + [-115.57407226562496, 75.05585937500001], + [-115.60898437499996, 75.00957031249999], + [-115.68315429687497, 74.97416992187499], + [-115.72885742187496, 74.968115234375], + [-116.14262695312497, 75.04155273437505], + [-116.47607421874996, 75.17177734375], + [-116.84101562499997, 75.15151367187497], + [-117.00483398437494, 75.156103515625], + [-117.50195312499997, 75.20385742187497], + [-117.56523437499997, 75.23334960937504], + [-117.60009765624997, 75.27167968750001], + [-117.596728515625, 75.29252929687502], + [-117.57607421874997, 75.31406250000003], + [-117.51313476562503, 75.35678710937503], + [-117.38779296874998, 75.42148437499998], + [-117.335546875, 75.44233398437498], + [-117.25761718750002, 75.45952148437502], + [-117.15419921875, 75.472998046875], + [-116.89077148437498, 75.48051757812502], + [-116.21274414062495, 75.48295898437499], + [-116.07714843749996, 75.49296874999999], + [-115.3353515625, 75.61806640624997], + [-115.25068359374998, 75.63857421875], + [-115.14184570312501, 75.67851562500005], + [-115.11723632812497, 75.69501953125001], + [-115.121875, 75.705810546875], + [-116.03432617187502, 75.60668945312497], + [-116.42563476562498, 75.58535156249997], + [-117.0251953125, 75.60151367187498], + [-117.13793945312497, 75.61713867187495], + [-117.16362304687496, 75.64487304687503], + [-117.03857421874997, 75.718408203125], + [-116.97265624999996, 75.74575195312497], + [-116.80214843749995, 75.77158203124998], + [-116.38964843750003, 75.80820312499998], + [-115.83808593750001, 75.840576171875], + [-115.47685546874996, 75.84130859374997], + [-115.17373046875002, 75.86699218750007], + [-114.99150390625002, 75.896337890625], + [-115.60224609375001, 75.89482421875005], + [-116.33789062499996, 75.88105468750001], + [-116.44423828124995, 75.890625], + [-116.65429687500003, 75.92929687500006], + [-116.66455078124999, 75.95756835937505], + [-116.58046875, 75.99155273437503], + [-116.54965820312502, 76.01684570312503], + [-116.609765625, 76.07373046875], + [-116.59130859374999, 76.09580078125006], + [-116.45424804687495, 76.14321289062502], + [-116.20986328125, 76.19443359374998], + [-116.05913085937502, 76.20170898437505], + [-115.76826171875, 76.18422851562502], + [-114.93940429687498, 76.16611328124998], + [-114.77861328124999, 76.17260742187497], + [-114.88017578124999, 76.19487304687499], + [-115.02456054687501, 76.21147460937499], + [-115.66445312499998, 76.23984375], + [-115.79687, 76.2525390625], + [-115.82216796874997, 76.27001953125003], + [-115.83173828124995, 76.29580078125002], + [-115.82558593749995, 76.32983398437503], + [-115.77929687500003, 76.36469726562504], + [-115.58066406249996, 76.4375], + [-114.99848632812503, 76.4974609375], + [-114.766845703125, 76.50571289062498], + [-114.53476562499996, 76.50175781250007], + [-114.29897460937498, 76.47480468749998], + [-114.19394531249999, 76.45146484375005], + [-114.141259765625, 76.42265625000002], + [-114.11577148437496, 76.39584960937498], + [-114.11279296874997, 76.34946289062503], + [-114.10146484374998, 76.33120117187505], + [-114.058837890625, 76.30073242187495], + [-113.923291015625, 76.22915039062505], + [-113.82348632812501, 76.20683593750002], + [-113.36298828124998, 76.24843749999997], + [-113.17128906250001, 76.25776367187501], + [-112.97846679687498, 76.24467773437502], + [-112.69760742187496, 76.20170898437505], + [-112.33388671874994, 76.07187], + [-111.86523437500003, 75.93930664062506], + [-111.86762695312498, 75.9107421875], + [-112.04716796874997, 75.86640625000004], + [-112.080908203125, 75.84741210937497], + [-112.05668945312496, 75.83422851562506], + [-111.87739257812503, 75.82553710937506], + [-111.709375, 75.83208007812505], + [-111.54912109375002, 75.82211914062498], + [-111.51323242187499, 75.81069335937497], + [-111.454443359375, 75.76215820312501], + [-111.37275390624997, 75.67646484374998], + [-111.27568359375, 75.6125], + [-111.16328125000003, 75.57021484375], + [-111.05268554687495, 75.54853515625001], + [-110.88959960937495, 75.54692382812505], + [-110.72558593750003, 75.55952148437495], + [-110.45937, 75.555322265625], + [-109.08637695312503, 75.506494140625], + [-109.00502929687498, 75.51499023437503], + [-108.94716796875, 75.54179687499999], + [-108.91259765624997, 75.58696289062505], + [-108.89951171874998, 75.62407226562505], + [-108.91821289062496, 75.67475585937498], + [-108.94477539062495, 75.69897460937503], + [-109.79604492187501, 75.86303710937497], + [-109.8705078125, 75.929052734375], + [-109.454638671875, 76.02124023437506], + [-109.42475585937495, 76.04252929687505], + [-109.41660156249998, 76.07182617187505], + [-109.43037109374994, 76.109130859375], + [-109.48681640624999, 76.14467773437497], + [-109.71015625000001, 76.21245117187502], + [-109.90781249999995, 76.22265625000006], + [-110.20078124999995, 76.28945312499997], + [-110.24702148437495, 76.30634765624995], + [-110.28486328124994, 76.33295898437495], + [-110.31445312500001, 76.369384765625], + [-110.30947265624998, 76.39741210937504], + [-110.27001953125003, 76.41699218750003], + [-109.98159179687498, 76.48476562499997], + [-109.86484375, 76.52236328125], + [-109.50502929687497, 76.69165039062503], + [-109.33852539062497, 76.75996093750001], + [-109.21953124999997, 76.79199218750003], + [-109.09824218749996, 76.811865234375], + [-108.831640625, 76.82114257812503], + [-108.55390625, 76.75805664062497], + [-108.49238281249998, 76.75419921875007], + [-108.46699218749997, 76.73759765625007], + [-108.47778320312503, 76.70825195312503], + [-108.51245117187499, 76.6802734375], + [-108.61181640624999, 76.62973632812503], + [-108.63515624999994, 76.60854492187497], + [-108.62763671875001, 76.58671875000005], + [-108.55952148437498, 76.53632812500001], + [-108.53862304687499, 76.50312], + [-108.52353515624993, 76.44716796875005], + [-108.5125, 76.43891601562495], + [-108.34545898437499, 76.39165039062502], + [-108.19355468749994, 76.330078125], + [-108.123193359375, 76.23344726562502], + [-108.17792968749995, 76.20004882812498], + [-108.305810546875, 76.15405273437503], + [-108.38188476562503, 76.11572265625003], + [-108.40615234375001, 76.08505859375], + [-108.38681640624998, 76.06655273437505], + [-108.29238281250001, 76.05712890625] + ] + ], + [ + [ + [-89.72646484374994, 76.50742187499998], + [-89.77329101562498, 76.49384765624995], + [-89.92412109374996, 76.50087890624997], + [-89.97412109374994, 76.487548828125], + [-90.05429687500003, 76.49511718750006], + [-90.16455078125003, 76.523583984375], + [-90.29350585937499, 76.5794921875], + [-90.44096679687502, 76.66279296875001], + [-90.55625, 76.73457031249998], + [-90.5625, 76.754296875], + [-90.52480468749997, 76.787841796875], + [-90.409521484375, 76.81015625], + [-90.13632812499995, 76.83696289062505], + [-89.94877929687493, 76.83623046874999], + [-89.77456054687497, 76.78203125000005], + [-89.72529296874995, 76.763427734375], + [-89.69541015625, 76.74116210937498], + [-89.69443359374998, 76.71982421875], + [-89.70864257812494, 76.701171875], + [-89.78754882812495, 76.65961914062498], + [-89.82211914062498, 76.63061523437503], + [-89.82192382812502, 76.60219726562502], + [-89.80478515625, 76.56108398437499], + [-89.77294921875, 76.53393554687506], + [-89.72636718750002, 76.52080078125005], + [-89.72646484374994, 76.50742187499998] + ] + ], + [ + [ + [-113.56069335937494, 76.74326171874998], + [-113.71245117187495, 76.71054687500006], + [-114.75146484374997, 76.75888671875003], + [-114.80830078125, 76.77407226562502], + [-114.83525390624999, 76.79467773437497], + [-114.64707031250002, 76.85102539062498], + [-114.41987304687501, 76.87534179687506], + [-113.89165039062495, 76.89487304687503], + [-113.70751953125001, 76.87294921875002], + [-113.585400390625, 76.84731445312502], + [-113.51650390625, 76.82504882812503], + [-113.48759765624997, 76.78325195312505], + [-113.56069335937494, 76.74326171874998] + ] + ], + [ + [ + [-94.29497070312493, 76.91245117187498], + [-94.10795898437496, 76.90375976562498], + [-93.94804687499996, 76.91708984375003], + [-93.81093750000002, 76.91416015624998], + [-93.60839843749997, 76.87382812500002], + [-93.420751953125, 76.81220703124998], + [-93.27656249999995, 76.784326171875], + [-93.23002929687496, 76.77026367187497], + [-93.21186523437501, 76.75468749999999], + [-93.18925781250002, 76.70800781249997], + [-93.18999023437499, 76.686376953125], + [-93.20058593750002, 76.66909179687497], + [-93.26367187499997, 76.62646484374997], + [-93.31674804687495, 76.57368164062498], + [-93.42626953124997, 76.52714843749999], + [-93.48457031249995, 76.49204101562503], + [-93.53457031250002, 76.44770507812498], + [-93.42187, 76.47412109375003], + [-92.99536132812494, 76.62041015624999], + [-92.71625976562493, 76.60297851562498], + [-92.29702148437497, 76.61601562499999], + [-91.78945312499994, 76.67578125], + [-91.54843749999995, 76.68510742187502], + [-91.305029296875, 76.68076171875003], + [-91.12426757812497, 76.66191406250002], + [-90.73842773437497, 76.58134765625002], + [-90.60478515624999, 76.54296875000003], + [-90.55463867187498, 76.515771484375], + [-90.54262695312494, 76.495751953125], + [-90.62163085937496, 76.46469726562498], + [-90.8640625, 76.48359375000001], + [-91.26303710937498, 76.50024414062503], + [-91.33598632812502, 76.510595703125], + [-91.39809570312497, 76.509765625], + [-91.44326171875002, 76.49853515625003], + [-91.41508789062496, 76.45585937500005], + [-91.33388671874994, 76.44648437499998], + [-90.85478515624996, 76.43730468749999], + [-89.28452148437498, 76.30161132812506], + [-89.21909179687495, 76.258203125], + [-89.23652343749995, 76.239013671875], + [-89.29208984375, 76.21772460937501], + [-89.40659179687498, 76.18916015624998], + [-90.31206054687496, 76.15800781250002], + [-90.82734374999995, 76.18559570312505], + [-91.260400390625, 76.22998046875003], + [-91.40732421874998, 76.22006835937506], + [-91.27944335937497, 76.15991210937497], + [-91.019775390625, 76.14155273437495], + [-90.80239257812502, 76.10595703125], + [-90.71210937500001, 76.07617187500006], + [-90.25136718749994, 76.05346679687503], + [-90.17602539062494, 76.03027343750003], + [-90.03276367187499, 75.97089843750001], + [-89.91254882812501, 75.96630859375006], + [-89.79340820312498, 75.92485351562505], + [-89.6953125, 75.85361328125], + [-89.650048828125, 75.844091796875], + [-89.51123046874997, 75.85693359374997], + [-89.27758789062497, 75.79506835937497], + [-89.20488281249999, 75.76201171874999], + [-89.20454101562501, 75.73725585937501], + [-89.25664062499996, 75.69848632812503], + [-89.36123046874997, 75.64580078125005], + [-89.62543945312495, 75.583740234375], + [-89.64604492187499, 75.5650390625], + [-89.33730468749997, 75.57236328125], + [-89.28041992187502, 75.564111328125], + [-88.91669921874998, 75.45395507812503], + [-88.86884765625001, 75.45195312500007], + [-88.83891601562496, 75.4634765625], + [-88.80410156249997, 75.50249023437505], + [-88.81962890624993, 75.53857421875003], + [-88.86406250000002, 75.58862304687503], + [-88.85214843749998, 75.62490234375005], + [-88.78393554687494, 75.64746093750003], + [-88.71489257812499, 75.65864257812498], + [-88.64497070312495, 75.65844726562503], + [-88.56904296874995, 75.64511718749998], + [-88.201318359375, 75.51201171875005], + [-87.72973632812503, 75.57563476562495], + [-87.64365234374998, 75.54707031249998], + [-87.57241210937494, 75.49365234375003], + [-87.53911132812502, 75.48486328125003], + [-87.3646484375, 75.59130859375003], + [-87.25693359374998, 75.61772460937499], + [-86.814453125, 75.49135742187502], + [-86.54472656250002, 75.46337890625], + [-86.4365234375, 75.43627929687497], + [-86.23632812499997, 75.40634765625], + [-85.95146484374993, 75.39501953125], + [-85.90454101562497, 75.44194335937507], + [-86.06875, 75.50224609375002], + [-85.97299804687498, 75.5287109375], + [-85.58125, 75.57978515624998], + [-85.372314453125, 75.57260742187503], + [-84.98676757812495, 75.64492187500002], + [-84.75019531249998, 75.65468749999997], + [-84.60488281249997, 75.653466796875], + [-84.12763671874998, 75.76264648437504], + [-84.01425781249998, 75.779931640625], + [-83.931982421875, 75.81894531250003], + [-83.74458007812493, 75.81284179687503], + [-83.23710937499993, 75.75083007812503], + [-83.09340820312497, 75.7564453125], + [-82.55346679687503, 75.81826171875], + [-82.35385742187503, 75.83334960937506], + [-82.153662109375, 75.83105468750003], + [-81.64736328125, 75.79492187500003], + [-81.2685546875, 75.75600585937502], + [-81.15078124999997, 75.73554687500001], + [-81.19267578124999, 75.68437], + [-81.17353515624998, 75.66923828125002], + [-81.12441406250002, 75.65815429687498], + [-81.00078125, 75.64311523437502], + [-80.52773437499997, 75.64213867187499], + [-80.32197265624998, 75.62910156250001], + [-80.15834960937494, 75.58115234375], + [-80.11918945312496, 75.56206054687502], + [-80.12573242187497, 75.54213867187497], + [-80.28662109374997, 75.490380859375], + [-80.26044921874995, 75.47944335937498], + [-80.09960937499997, 75.46743164062502], + [-79.73769531249997, 75.46147460937505], + [-79.66020507812499, 75.44951171875002], + [-79.58574218749999, 75.38486328124998], + [-79.50781250000003, 75.29536132812495], + [-79.50908203125002, 75.25981445312499], + [-79.63442382812497, 75.19931640625003], + [-79.97714843749998, 75.11860351562501], + [-80.35756835937494, 75.05156250000002], + [-80.38198242187494, 75.03417968750003], + [-80.26064453125, 75.00214843750001], + [-80.13525390624994, 74.98808593750007], + [-80.03642578124996, 74.99091796875001], + [-79.73300781249998, 75.02143554687501], + [-79.66406249999997, 75.02084960937498], + [-79.52480468750002, 74.98969726562495], + [-79.46040039062495, 74.95878906250005], + [-79.40141601562502, 74.91762695312502], + [-79.50795898437497, 74.880126953125], + [-79.944482421875, 74.83364257812505], + [-80.20244140624996, 74.89482421874999], + [-80.28920898437497, 74.90830078124998], + [-80.34775390624998, 74.90297851562505], + [-80.31455078124998, 74.87617187500001], + [-80.18974609374993, 74.82768554687499], + [-80.14892578124997, 74.79570312500005], + [-80.192236328125, 74.78017578125], + [-80.21269531249999, 74.74946289062504], + [-80.21025390624996, 74.70361328125003], + [-80.22060546875002, 74.65703125000005], + [-80.26274414062499, 74.58447265625], + [-80.27773437500002, 74.58159179687502], + [-81.226220703125, 74.566650390625], + [-81.340478515625, 74.55351562499999], + [-81.60717773437497, 74.50234374999997], + [-81.80883789062503, 74.47661132812505], + [-81.94018554687494, 74.47270507812505], + [-82.068505859375, 74.482080078125], + [-82.41474609375001, 74.53520507812499], + [-82.64541015625, 74.52519531249999], + [-82.73579101562495, 74.53027343749997], + [-82.93105468750002, 74.56557617187497], + [-82.97841796875, 74.58344726562495], + [-83.05761718749997, 74.62978515625], + [-83.11699218749999, 74.693115234375], + [-83.1123046875, 74.73212890624995], + [-83.08730468749997, 74.78837890625005], + [-83.10263671874998, 74.81655273437502], + [-83.15830078124995, 74.81674804687498], + [-83.22031249999998, 74.82841796875005], + [-83.40703125000002, 74.88481445312499], + [-83.5220703125, 74.90146484375], + [-83.5435546875, 74.89228515625001], + [-83.50976562499997, 74.84819335937499], + [-83.48730468750003, 74.83413085937497], + [-83.36420898437498, 74.80190429687497], + [-83.34130859375003, 74.76459960937501], + [-83.39370117187497, 74.67016601562506], + [-83.41220703125, 74.65498046874998], + [-83.53188476562494, 74.58569335937497], + [-83.62187, 74.56591796875003], + [-83.86806640624997, 74.56440429687498], + [-84.24516601562496, 74.51518554687499], + [-84.42553710937503, 74.50810546875007], + [-84.66708984375003, 74.51958007812502], + [-84.81826171875, 74.54199218750006], + [-84.91630859374999, 74.56767578125005], + [-85.01152343749993, 74.60419921875001], + [-85.06142578125, 74.60693359375003], + [-85.086767578125, 74.52768554687498], + [-85.133447265625, 74.517431640625], + [-85.21430664062495, 74.51865234375], + [-85.33925781250002, 74.54331054687503], + [-85.44233398437495, 74.6005859375], + [-85.47441406250002, 74.60034179687503], + [-85.488671875, 74.56699218749998], + [-85.51171874999997, 74.54511718749998], + [-85.54350585937496, 74.534765625], + [-85.80800781249994, 74.49897460937498], + [-85.95561523437499, 74.49877929687503], + [-86.10986328124997, 74.53974609375004], + [-86.21093749999997, 74.53559570312498], + [-86.340576171875, 74.51347656250002], + [-86.655419921875, 74.55541992187503], + [-86.73076171874999, 74.55703125], + [-86.66611328124998, 74.489111328125], + [-86.77016601562502, 74.47861328125], + [-86.99472656250003, 74.480322265625], + [-87.36376953125, 74.50219726562503], + [-87.59257812499996, 74.47036132812502], + [-88.00585937499997, 74.48935546874998], + [-88.42304687499995, 74.49414062499997], + [-88.50073242187497, 74.50971679687495], + [-88.55566406249997, 74.54145507812501], + [-88.55786132812497, 74.56972656250002], + [-88.53764648437496, 74.60878906249997], + [-88.47661132812496, 74.66689453125], + [-88.37470703124998, 74.74414062500003], + [-88.33955078125001, 74.78486328124995], + [-88.43144531249999, 74.80371093749997], + [-88.48818359375, 74.82890625000005], + [-88.53496093749993, 74.83173828125001], + [-88.68203124999997, 74.802001953125], + [-88.77783203124994, 74.71518554687498], + [-88.85107421874994, 74.68999023437499], + [-88.88339843749995, 74.71108398437502], + [-88.90781249999995, 74.76381835937502], + [-88.94013671874998, 74.78950195312501], + [-88.98037109375, 74.7880859375], + [-89.01962890625, 74.77402343749998], + [-89.05786132812497, 74.74726562500004], + [-89.11528320312496, 74.73759765625002], + [-89.19194335937493, 74.744873046875], + [-89.21914062499997, 74.73178710937498], + [-89.19682617187496, 74.6982421875], + [-89.18906249999998, 74.66684570312498], + [-89.19580078125, 74.63754882812498], + [-89.26186523437497, 74.60917968750005], + [-89.45, 74.56791992187499], + [-89.55869140624995, 74.55473632812507], + [-89.844384765625, 74.54858398437497], + [-90.01533203124998, 74.56088867187498], + [-90.36162109375002, 74.61044921875003], + [-90.55327148437499, 74.61274414062498], + [-90.78408203125002, 74.69589843750003], + [-90.96679687500003, 74.71508789062506], + [-90.95751953125, 74.74516601562505], + [-90.87763671874998, 74.80107421875007], + [-90.88022460937498, 74.8177734375], + [-91.12988281249994, 74.73627929687501], + [-91.163720703125, 74.71025390625005], + [-91.13457031250002, 74.64985351562498], + [-91.16772460937503, 74.6455078125], + [-91.339453125, 74.66723632812497], + [-91.50834960937496, 74.65068359374999], + [-91.54912109375002, 74.65556640624999], + [-91.66577148437497, 74.69916992187501], + [-91.87104492187495, 74.74350585937498], + [-91.96157226562502, 74.79321289062497], + [-92.10253906249994, 74.94838867187497], + [-92.17416992187498, 75.05107421875002], + [-92.16523437499993, 75.07202148437503], + [-92.06049804687501, 75.10097656249997], + [-92.07631835937494, 75.12353515625003], + [-92.20683593749996, 75.18125], + [-92.34746093749993, 75.22978515625002], + [-92.3892578125, 75.263330078125], + [-92.408349609375, 75.297265625], + [-92.427099609375, 75.34638671874995], + [-92.427978515625, 75.38271484375], + [-92.41108398437493, 75.40625], + [-92.33066406249998, 75.47944335937498], + [-92.11044921874998, 75.61064453125007], + [-92.08071289062494, 75.63447265625004], + [-92.06884765625003, 75.65791015625001], + [-92.09916992187499, 75.72729492187503], + [-92.14184570312497, 75.79682617187498], + [-92.18510742187499, 75.84653320312498], + [-92.30659179687495, 75.91513671875], + [-92.47373046874998, 75.986474609375], + [-92.70888671875002, 76.11445312500004], + [-92.88330078125003, 76.21396484375006], + [-93.09174804687495, 76.35400390624997], + [-93.19228515625, 76.36601562500005], + [-93.30859375, 76.35961914062497], + [-93.55996093749994, 76.31142578125002], + [-93.64443359375002, 76.28852539062495], + [-93.665185546875, 76.27314453125004], + [-93.85234375000002, 76.26967773437502], + [-94.38256835937503, 76.28232421875003], + [-94.58535156249994, 76.29716796875005], + [-94.73671874999997, 76.29326171875005], + [-94.99663085937499, 76.25771484375], + [-95.27387695312498, 76.26440429687503], + [-95.447412109375, 76.36303710937506], + [-95.841650390625, 76.41616210937502], + [-95.95927734374999, 76.44599609374998], + [-96.03969726562494, 76.48671875000002], + [-96.01308593749994, 76.51333007812502], + [-95.78886718749999, 76.53720703125], + [-95.69570312499994, 76.56342773437501], + [-95.65097656249998, 76.58466796874998], + [-95.87319335937494, 76.56640625], + [-95.97133789062497, 76.56962890625005], + [-96.63969726562496, 76.70292968750002], + [-96.84565429687501, 76.726416015625], + [-96.88071289062495, 76.73833007812505], + [-96.89799804687502, 76.75400390625003], + [-96.89755859375, 76.77348632812499], + [-96.87802734375003, 76.80278320312502], + [-96.67939453124998, 76.76577148437502], + [-96.59028320312493, 76.763037109375], + [-96.45117187500003, 76.77407226562502], + [-96.40156249999995, 76.79721679687503], + [-96.433203125, 76.81069335937502], + [-96.66103515624997, 76.85517578125004], + [-96.77114257812502, 76.88891601562497], + [-96.81352539062493, 76.91347656250002], + [-96.76982421875002, 76.9482421875], + [-96.75830078124997, 76.97177734374998], + [-96.68510742187499, 76.98500976562502], + [-96.55009765625002, 76.987939453125], + [-96.37729492187498, 77.00458984375001], + [-96.06123046874998, 77.05004882812503], + [-95.84951171875002, 77.06621093750005], + [-95.63823242187496, 77.06376953124999], + [-95.12641601562495, 77.01733398437503], + [-94.61611328125, 76.958349609375], + [-94.29497070312493, 76.91245117187498] + ] + ], + [ + [ + [-115.55126953125001, 77.36328125], + [-115.47558593749997, 77.32431640625003], + [-115.47021484375003, 77.30864257812505], + [-115.50664062499999, 77.29213867187497], + [-115.62392578125, 77.26591796875005], + [-116.21372070312498, 77.17822265625003], + [-116.32919921874996, 77.137060546875], + [-116.28574218749999, 77.10166015624998], + [-116.07309570312502, 77.02998046875004], + [-115.85683593750001, 76.96923828125], + [-115.81005859374999, 76.939111328125], + [-115.91289062499997, 76.90844726562506], + [-116.10976562500002, 76.918212890625], + [-116.18325195312498, 76.91557617187499], + [-116.25273437500002, 76.90141601562505], + [-116.23398437500002, 76.87431640625002], + [-116.01621093749998, 76.78452148437503], + [-115.94458007812494, 76.73623046874997], + [-115.94628906250003, 76.71127929687503], + [-115.98481445312497, 76.68691406250005], + [-116.07622070312495, 76.65351562499998], + [-116.22045898437501, 76.61108398437506], + [-116.467626953125, 76.57714843749997], + [-116.99921874999995, 76.531591796875], + [-117.01679687499998, 76.49609374999997], + [-117.01328124999998, 76.46909179687498], + [-117.02617187499993, 76.40351562500004], + [-117.04448242187493, 76.37309570312505], + [-117.10776367187495, 76.32192382812502], + [-117.15390625000002, 76.29799804687502], + [-117.23359375000001, 76.28154296875005], + [-117.346923828125, 76.27255859375], + [-117.49238281249997, 76.27270507812503], + [-117.73242187500003, 76.31674804687503], + [-117.84140625000002, 76.34482421874998], + [-117.99296874999999, 76.40581054687505], + [-118.02021484374994, 76.446533203125], + [-118.00541992187495, 76.4966796875], + [-117.96542968749998, 76.57402343750005], + [-117.89951171874996, 76.65307617187497], + [-117.80761718749997, 76.73393554687502], + [-117.78046874999995, 76.78427734374998], + [-117.81791992187495, 76.80410156250002], + [-117.88081054687497, 76.80507812500005], + [-118.07641601562503, 76.77236328125005], + [-118.20278320312501, 76.76049804687503], + [-118.30058593749996, 76.73666992187506], + [-118.36987304687494, 76.70097656250007], + [-118.40913085937495, 76.66230468750001], + [-118.43100585937496, 76.58798828125003], + [-118.4681640625, 76.54736328125003], + [-118.573681640625, 76.52519531250005], + [-118.73154296875, 76.52558593750004], + [-118.79140624999994, 76.51298828125005], + [-118.82075195312497, 76.48583984375003], + [-118.799560546875, 76.46376953124997], + [-118.64389648437499, 76.41752929687505], + [-118.62451171874996, 76.365869140625], + [-118.64340820312499, 76.33466796874995], + [-118.81157226562496, 76.27709960937503], + [-118.85112304687493, 76.25781250000003], + [-118.95546874999997, 76.16767578124995], + [-118.99394531249999, 76.144873046875], + [-119.080712890625, 76.12407226562505], + [-119.16821289062497, 76.12651367187499], + [-119.24926757812496, 76.15947265625005], + [-119.36791992187497, 76.22177734375003], + [-119.44780273437499, 76.27539062500006], + [-119.488818359375, 76.32031250000006], + [-119.52373046875, 76.34028320312504], + [-119.58037109375, 76.32651367187498], + [-119.64892578125003, 76.27988281249998], + [-119.65078124999995, 76.24370117187499], + [-119.63583984375002, 76.18989257812504], + [-119.6396484375, 76.15668945312501], + [-119.73964843749994, 76.11772460937499], + [-119.72519531250002, 76.099951171875], + [-119.54970703124997, 76.05205078125002], + [-119.52714843749999, 76.03056640624999], + [-119.52612304687496, 75.99721679687505], + [-119.53774414062502, 75.982177734375], + [-119.60795898437493, 75.98457031249995], + [-119.66713867187501, 75.94599609374998], + [-119.73481445312503, 75.9154296875], + [-119.91289062499997, 75.85883789062501], + [-120.16054687499998, 75.85195312500002], + [-120.36538085937497, 75.82475585937499], + [-120.40888671874995, 75.82563476562498], + [-120.45830078124997, 75.87016601562499], + [-120.51381835937501, 75.95834960937503], + [-120.56328125, 76.00844726562502], + [-120.637158203125, 76.03403320312498], + [-120.728662109375, 76.13408203125005], + [-120.77158203125003, 76.16630859375002], + [-120.81337890625002, 76.179296875], + [-120.84838867187496, 76.18266601562499], + [-120.90009765625001, 76.16342773437498], + [-121.01928710937496, 76.02026367187503], + [-121.21347656249999, 75.98369140625005], + [-121.32016601562498, 75.97700195312501], + [-121.427978515625, 75.98110351562505], + [-121.69453125, 76.02031250000005], + [-121.90820312499996, 76.03476562500006], + [-122.05742187499997, 76.01821289062497], + [-122.30273437499996, 75.95981445312506], + [-122.40048828124998, 75.94423828125], + [-122.53305664062498, 75.95092773437503], + [-122.59111328124999, 75.97299804687498], + [-122.64047851562502, 76.00908203125005], + [-122.64594726562497, 76.031005859375], + [-122.60737304687503, 76.03867187500003], + [-122.546240234375, 76.08051757812495], + [-122.54819335937495, 76.097314453125], + [-122.60864257812501, 76.12143554687503], + [-122.60947265625, 76.14028320312497], + [-122.58789062499996, 76.15297851562497], + [-122.59272460937497, 76.16206054687495], + [-122.62392578125002, 76.16748046875], + [-122.68466796874996, 76.16240234375002], + [-122.90278320312498, 76.13471679687498], + [-122.87827148437496, 76.16479492187497], + [-122.77402343749995, 76.227685546875], + [-122.51938476562503, 76.353173828125], + [-122.42304687499995, 76.39008789062495], + [-122.36538085937501, 76.401220703125], + [-121.61376953125001, 76.44145507812505], + [-121.56113281250003, 76.453466796875], + [-121.20390625, 76.62216796875], + [-121.10200195312503, 76.66074218750003], + [-120.99760742187499, 76.69145507812499], + [-120.48535156249999, 76.79321289062503], + [-120.43759765625002, 76.81645507812505], + [-120.357666015625, 76.88691406250001], + [-120.3109375, 76.90458984375007], + [-120.20034179687501, 76.93134765625001], + [-119.83115234375002, 77.073876953125], + [-119.49482421874998, 77.17690429687502], + [-119.32397460937499, 77.24067382812495], + [-119.09018554687496, 77.30507812500002], + [-118.82001953125, 77.33271484374998], + [-118.00517578124999, 77.381201171875], + [-117.41860351562495, 77.31738281250006], + [-117.27910156249995, 77.31337890625002], + [-117.21079101562498, 77.3314453125], + [-117.148974609375, 77.36083984375003], + [-117.061376953125, 77.348486328125], + [-116.84355468749995, 77.33955078124995], + [-116.7953125, 77.34658203124997], + [-116.70361328124994, 77.37993164062502], + [-116.76625976562501, 77.39824218750002], + [-117.02978515624996, 77.43188476562503], + [-117.04575195312502, 77.44897460937503], + [-117.03974609374995, 77.46513671875005], + [-116.94716796875001, 77.50385742187504], + [-116.83530273437495, 77.52885742187505], + [-116.51132812500003, 77.54760742187497], + [-116.36259765625002, 77.54282226562498], + [-116.20888671874997, 77.51601562500002], + [-116.00800781249998, 77.46064453125001], + [-115.55126953125001, 77.36328125] + ] + ], + [ + [ + [-89.83325195312503, 77.26762695312505], + [-90.0947265625, 77.21040039062501], + [-90.22827148437503, 77.21245117187499], + [-90.99321289062499, 77.32949218750002], + [-91.14726562499993, 77.3873046875], + [-91.17661132812498, 77.42626953125003], + [-91.18505859375, 77.48154296875], + [-91.18266601562496, 77.55717773437505], + [-91.14946289062493, 77.60805664062502], + [-91.10913085937497, 77.625732421875], + [-91.01904296875003, 77.64389648437503], + [-90.84257812499996, 77.65498046874998], + [-90.67485351562496, 77.64863281250004], + [-90.42275390624994, 77.62836914062498], + [-90.17192382812502, 77.59467773437495], + [-89.83896484375003, 77.49140624999998], + [-89.71948242187503, 77.44213867187497], + [-89.69418945312503, 77.37812], + [-89.69458007812503, 77.33896484375], + [-89.71201171875, 77.31040039062506], + [-89.74667968749998, 77.29257812499998], + [-89.83325195312503, 77.26762695312505] + ] + ], + [ + [ + [-104.55815429687497, 77.14174804687497], + [-104.71137695312501, 77.12397460937498], + [-105.01557617187498, 77.16459960937502], + [-105.21508789062496, 77.18208007812501], + [-105.37993164062496, 77.25424804687498], + [-105.55634765625003, 77.35263671875003], + [-105.69511718749996, 77.46137695312498], + [-105.74721679687501, 77.52539062499997], + [-105.84814453124996, 77.56342773437498], + [-105.88315429687499, 77.62651367187505], + [-106.06611328124995, 77.72539062500005], + [-106.03559570312495, 77.73984375000006], + [-105.86298828124997, 77.75439453125], + [-105.58789062499997, 77.73598632812497], + [-105.45610351562503, 77.70092773437503], + [-105.28964843749996, 77.64208984375003], + [-105.07387695312497, 77.54829101562501], + [-105.00722656249998, 77.50673828125], + [-104.99428710937501, 77.44965820312501], + [-104.95532226562497, 77.418701171875], + [-104.77021484375001, 77.41323242187505], + [-104.54223632812501, 77.33774414062503], + [-104.50078125, 77.30854492187504], + [-104.4537109375, 77.24912109375], + [-104.45698242187497, 77.22080078125], + [-104.493359375, 77.162353515625], + [-104.55815429687497, 77.14174804687497] + ] + ], + [ + [ + [-95.48437, 77.79199218750003], + [-95.23305664062502, 77.75380859374997], + [-94.95991210937495, 77.77407226562502], + [-94.66679687499993, 77.776220703125], + [-94.01474609374998, 77.75991210937497], + [-93.582861328125, 77.77075195312506], + [-93.47109374999997, 77.76430664062497], + [-93.30097656249995, 77.73979492187505], + [-93.21074218749996, 77.71020507812497], + [-93.12871093749993, 77.66015624999997], + [-93.33916015624999, 77.62968749999999], + [-93.51958007812499, 77.47441406250007], + [-93.54394531249997, 77.466650390625], + [-93.74018554687498, 77.46455078125001], + [-93.836181640625, 77.45224609375], + [-94.40898437499999, 77.47421875000003], + [-95.98706054687497, 77.484130859375], + [-96.05610351562501, 77.50346679687505], + [-96.26386718749995, 77.59453125000002], + [-96.27661132812497, 77.63056640624998], + [-96.23916015625, 77.67255859375001], + [-96.19458007812497, 77.70053710937503], + [-96.14296875000002, 77.71435546875], + [-95.68393554687503, 77.78227539062499], + [-95.48437, 77.79199218750003] + ] + ], + [ + [ + [-101.6935546875, 77.69658203125005], + [-101.83105468750003, 77.687353515625], + [-102.079833984375, 77.69218750000002], + [-102.37783203124995, 77.72812], + [-102.45820312499998, 77.77016601562502], + [-102.47504882812495, 77.83666992187497], + [-102.47153320312495, 77.87348632812501], + [-102.44770507812498, 77.88061523437506], + [-102.26318359374996, 77.88935546874995], + [-101.91787109374995, 77.89960937500001], + [-101.63940429687497, 77.89208984374997], + [-101.32202148437497, 77.854150390625], + [-101.19321289062493, 77.82978515624998], + [-101.12758789062498, 77.81259765625003], + [-101.04624023437502, 77.77783203124997], + [-101.019580078125, 77.76245117187503], + [-101.00205078124998, 77.73510742187497], + [-101.39765625000003, 77.72905273437499], + [-101.58457031249999, 77.71831054687502], + [-101.6935546875, 77.69658203125005] + ] + ], + [ + [ + [-113.83247070312497, 77.75463867187506], + [-114.105908203125, 77.72070312499997], + [-114.28720703124998, 77.72148437500005], + [-114.60834960937494, 77.76933593750002], + [-114.98041992187498, 77.91542968750002], + [-115.029345703125, 77.967529296875], + [-114.89042968749995, 77.97690429687503], + [-114.789501953125, 77.992919921875], + [-114.72646484374994, 78.01552734375], + [-114.606884765625, 78.04033203124999], + [-114.33037109374997, 78.07753906250002], + [-114.296875, 78.06318359375001], + [-114.30288085937498, 78.03271484375003], + [-114.27983398437499, 78.00429687500002], + [-114.18095703125, 77.99824218750004], + [-114.08720703125, 77.97792968749997], + [-113.89775390624995, 77.91557617187507], + [-113.76801757812498, 77.903564453125], + [-113.72138671875, 77.88989257812497], + [-113.69667968750002, 77.86894531250007], + [-113.61791992187496, 77.832421875], + [-113.619384765625, 77.81347656250006], + [-113.72583007812501, 77.77578125], + [-113.83247070312497, 77.75463867187506] + ] + ], + [ + [ + [-110.45805664062496, 78.10322265625001], + [-109.656884765625, 78.07924804687502], + [-109.62226562499995, 78.07475585937499], + [-109.61904296875001, 78.05683593749998], + [-109.67939453124995, 77.99931640625007], + [-109.77177734374995, 77.95742187499997], + [-110.19951171874996, 77.90483398437502], + [-110.75112304687498, 77.85722656249999], + [-110.86562, 77.834130859375], + [-110.85654296874996, 77.82036132812502], + [-110.81162109374996, 77.80317382812498], + [-110.71938476562501, 77.78144531250001], + [-110.29218750000001, 77.78637695312503], + [-110.189208984375, 77.777001953125], + [-110.15273437500002, 77.76293945312506], + [-110.13085937500001, 77.74238281249995], + [-110.11757812499997, 77.715576171875], + [-110.11689453125001, 77.62470703124995], + [-110.13945312499999, 77.57211914062498], + [-110.19848632812501, 77.52451171874998], + [-110.37153320312501, 77.490625], + [-110.68286132812503, 77.44589843750003], + [-110.89399414062495, 77.42597656249998], + [-111.06044921874994, 77.43315429687502], + [-111.22622070312497, 77.42851562500005], + [-111.95195312500002, 77.34418945312501], + [-112.17651367187503, 77.34375], + [-112.37265625000002, 77.36411132812498], + [-112.64379882812501, 77.44370117187503], + [-112.92563476562496, 77.474951171875], + [-113.04604492187498, 77.5107421875], + [-113.16435546875002, 77.5302734375], + [-113.19711914062495, 77.55883789062503], + [-113.20854492187496, 77.58017578125003], + [-113.188623046875, 77.59975585937502], + [-113.13740234374994, 77.617529296875], + [-113.120654296875, 77.63261718750005], + [-113.1677734375, 77.67646484375001], + [-113.18950195312499, 77.71831054687502], + [-113.27128906249996, 77.77841796875], + [-113.28344726562494, 77.81303710937505], + [-113.28295898437503, 77.83564453125004], + [-113.2693359375, 77.86005859375004], + [-113.21518554687498, 77.90351562500001], + [-113.18706054687503, 77.91235351562503], + [-113.02163085937498, 77.91914062499998], + [-112.80454101562499, 77.94160156250004], + [-112.30458984375001, 78.00678710937498], + [-111.20659179687496, 78.08813476562506], + [-110.8732421875, 78.08061523437502], + [-110.72734375000003, 78.09658203125], + [-110.45805664062496, 78.10322265625001] + ] + ], + [ + [ + [-103.00336914062494, 78.14643554687501], + [-103.11821289062497, 78.12636718750002], + [-103.25224609375002, 78.13813476562501], + [-103.27099609375001, 78.150634765625], + [-103.27358398437501, 78.16577148437506], + [-103.26005859375002, 78.18349609375002], + [-103.11044921874999, 78.24584960937503], + [-102.97329101562494, 78.26723632812502], + [-102.89179687499995, 78.27124023437506], + [-102.82553710937495, 78.25004882812499], + [-102.78828125, 78.21816406249997], + [-103.00336914062494, 78.14643554687501] + ] + ], + [ + [ + [-109.81596679687499, 78.65039062500003], + [-109.64096679687495, 78.59208984375005], + [-109.58085937499996, 78.59326171875], + [-109.50415039062496, 78.58247070312504], + [-109.46728515625, 78.56718750000002], + [-109.36220703125, 78.49287109374998], + [-109.34213867187499, 78.45600585937504], + [-109.33603515624999, 78.40844726562503], + [-109.35209960937499, 78.36865234375], + [-109.39052734375, 78.33666992187506], + [-109.48447265624995, 78.31640625], + [-109.7087890625, 78.30375976562502], + [-110.021875, 78.32280273437507], + [-110.29345703125, 78.29819335937503], + [-110.41835937499997, 78.29497070312499], + [-110.755078125, 78.31074218750001], + [-110.84003906249998, 78.32231445312505], + [-111.02675781250001, 78.36762695312495], + [-111.16918945312499, 78.38627929687505], + [-111.22900390625, 78.37631835937503], + [-111.30048828125, 78.33657226562502], + [-111.43505859374997, 78.28735351562503], + [-111.51748046874997, 78.27470703125005], + [-111.75971679687503, 78.28295898437503], + [-112.13125, 78.366064453125], + [-112.5578125, 78.34150390624998], + [-112.99990234375, 78.29291992187501], + [-113.172509765625, 78.28378906250003], + [-113.22304687499998, 78.29790039062505], + [-113.29257812499993, 78.334375], + [-113.28168945312494, 78.35278320312506], + [-113.14995117187502, 78.40839843750001], + [-112.85585937499997, 78.46684570312502], + [-112.64082031249994, 78.49980468750007], + [-112.21401367187494, 78.54780273437498], + [-111.70878906249996, 78.57470703125006], + [-111.51987304687502, 78.60322265625001], + [-111.400341796875, 78.64404296874997], + [-111.07148437499997, 78.70839843750002], + [-110.877587890625, 78.73505859375004], + [-110.61806640624997, 78.75781250000006], + [-110.40781249999995, 78.75664062499999], + [-110.14047851562502, 78.704443359375], + [-109.94086914062503, 78.67846679687506], + [-109.81596679687499, 78.65039062500003] + ] + ], + [ + [ + [-96.20449218749994, 78.53129882812499], + [-95.96845703124998, 78.505126953125], + [-95.56113281249998, 78.51660156250003], + [-95.41293945312498, 78.49755859374997], + [-95.03120117187501, 78.43027343750003], + [-94.91538085937495, 78.39052734375002], + [-94.88774414062502, 78.36049804687502], + [-94.88715820312498, 78.34521484375003], + [-95.01386718749995, 78.31259765625003], + [-95.26787109374999, 78.26264648437498], + [-95.32924804687497, 78.22504882812495], + [-95.10273437499993, 78.17807617187498], + [-94.98779296874997, 78.13627929687499], + [-94.93603515624997, 78.10639648437504], + [-94.93427734374998, 78.07563476562498], + [-95.08701171875, 77.99262695312495], + [-95.19912109375002, 77.96816406250002], + [-95.37050781249994, 77.97080078125003], + [-95.45156249999994, 77.963232421875], + [-95.67080078125002, 77.924462890625], + [-96.01157226562498, 77.88740234375001], + [-96.47685546875002, 77.87216796875], + [-96.60302734374994, 77.84931640624998], + [-96.83398437500003, 77.8119140625], + [-96.98964843749994, 77.80600585937503], + [-97.04047851562498, 77.82744140625005], + [-97.06381835937495, 77.85908203125001], + [-97.05195312499993, 77.88095703125003], + [-97.01909179687499, 77.90810546874997], + [-97.09331054687502, 77.93349609375], + [-97.42666015624997, 77.98227539062498], + [-97.620849609375, 78.05024414062495], + [-97.64838867187493, 78.07163085937506], + [-97.65815429687498, 78.090625], + [-97.22661132812499, 78.10322265625001], + [-97.04091796875, 78.11694335937506], + [-96.95834960937495, 78.139013671875], + [-96.944677734375, 78.15185546874997], + [-97.02734374999997, 78.15742187499995], + [-97.32304687500002, 78.20322265625003], + [-97.81904296874998, 78.23061523437502], + [-97.84272460937501, 78.26235351562502], + [-98.04951171874995, 78.325927734375], + [-98.06928710937498, 78.38632812500003], + [-98.11430664062499, 78.40302734374998], + [-98.25493164062496, 78.42924804687499], + [-98.27568359375002, 78.43789062499997], + [-98.31733398437498, 78.47685546875002], + [-98.32373046874994, 78.49814453125], + [-98.31562, 78.51748046875002], + [-98.06035156249993, 78.558349609375], + [-98.09599609374999, 78.586669921875], + [-98.28989257812498, 78.69238281250006], + [-98.34082031249997, 78.75122070312503], + [-98.33261718749998, 78.77353515625006], + [-98.21210937499995, 78.80454101562498], + [-98.04287109375002, 78.80522460937502], + [-97.59589843749998, 78.79580078124997], + [-97.38232421875, 78.78291015625001], + [-97.16933593749997, 78.75766601562503], + [-96.93579101562497, 78.72026367187505], + [-96.587060546875, 78.68710937500003], + [-96.47534179687497, 78.66518554687502], + [-96.265283203125, 78.595361328125], + [-96.24262695312498, 78.57319335937501], + [-96.25649414062497, 78.55112304687503], + [-96.20449218749994, 78.53129882812499] + ] + ], + [ + [ + [-103.42602539062499, 79.315625], + [-103.19165039062501, 79.29531250000005], + [-102.91435546875002, 79.23110351562502], + [-102.65229492187501, 79.09501953125002], + [-102.63896484374996, 79.07758789062501], + [-102.63759765624994, 79.05498046875002], + [-102.64819335937497, 79.02714843750005], + [-102.68286132812501, 78.99101562500005], + [-102.73051757812496, 78.96933593749998], + [-102.59560546875001, 78.94296875000003], + [-102.58076171875, 78.93012695312498], + [-102.59277343749996, 78.90092773437499], + [-102.57617187499996, 78.87939453125003], + [-102.49458007812503, 78.90068359375002], + [-102.42480468750003, 78.93320312499998], + [-102.40732421875002, 78.95410156249997], + [-102.39316406249998, 79.01030273437507], + [-102.18857421874995, 79.03837890625002], + [-101.97363281249994, 79.07919921874998], + [-101.87260742187497, 79.08837890624997], + [-101.70366210937502, 79.07890625000002], + [-101.2990234375, 78.98217773437503], + [-101.14458007812497, 78.972900390625], + [-101.0884765625, 78.96152343749998], + [-101.03715820312495, 78.93901367187502], + [-101.03369140624994, 78.91469726562505], + [-101.11591796875, 78.85830078125], + [-101.14746093750003, 78.82397460937503], + [-101.128125, 78.80166015625002], + [-100.91699218749997, 78.78291015625001], + [-100.43549804687503, 78.8203125], + [-100.01474609375002, 78.72861328125006], + [-99.78183593749999, 78.61962890624997], + [-99.60942382812495, 78.58305664062507], + [-99.58212890624999, 78.56328125000005], + [-99.63110351562501, 78.54467773437497], + [-99.68017578124997, 78.49350585937503], + [-99.81831054687497, 78.45537109374999], + [-99.84780273437502, 78.43823242187506], + [-99.77412109375003, 78.39296874999997], + [-99.76865234374998, 78.36455078125005], + [-99.77822265624997, 78.32509765625], + [-99.75136718750001, 78.30297851562503], + [-99.56245117187497, 78.27934570312502], + [-99.13154296875003, 78.117529296875], + [-99.05312, 78.07236328125003], + [-99.00458984375001, 78.015966796875], + [-98.99960937499998, 77.996875], + [-99.061181640625, 77.965625], + [-99.128369140625, 77.87714843749995], + [-99.16640625000002, 77.85693359375003], + [-99.34130859374996, 77.83964843750005], + [-99.65913085937495, 77.82407226562498], + [-99.95590820312502, 77.79379882812503], + [-100.27465820312503, 77.83271484374995], + [-100.58603515624996, 77.89179687500001], + [-100.68027343749998, 77.93066406250003], + [-100.75791015624998, 77.97768554687502], + [-100.77822265624995, 77.99604492187501], + [-100.80957031250003, 78.07163085937506], + [-100.82617187499994, 78.08774414062506], + [-100.95761718749999, 78.130224609375], + [-101.07412109375001, 78.19384765625], + [-101.29799804687497, 78.19936523437497], + [-101.82949218749998, 78.26411132812501], + [-102.05698242187496, 78.27954101562506], + [-102.28447265624995, 78.275], + [-102.60698242187502, 78.24892578125002], + [-102.66767578124994, 78.25590820312502], + [-102.72270507812496, 78.27524414062498], + [-102.77207031249998, 78.30688476562503], + [-102.784326171875, 78.33017578124998], + [-102.73134765624995, 78.37104492187495], + [-103.67724609375, 78.31958007812503], + [-103.94658203124999, 78.26000976562497], + [-104.32421875, 78.26948242187495], + [-104.51264648437503, 78.29462890625001], + [-104.76357421874998, 78.35166015625], + [-104.87934570312494, 78.40126953124997], + [-104.98540039062497, 78.468017578125], + [-104.995556640625, 78.51850585937498], + [-104.90961914062498, 78.55263671875], + [-104.82011718749996, 78.57290039062505], + [-104.72705078125, 78.57939453125002], + [-104.21396484375002, 78.53974609375004], + [-103.76435546874998, 78.51953125], + [-103.57050781250003, 78.53984375000005], + [-103.48256835937495, 78.59394531249998], + [-103.58798828124993, 78.62299804687504], + [-104.02084960937502, 78.63491210937497], + [-103.92851562499995, 78.66337890624999], + [-103.56269531250003, 78.69267578125002], + [-103.37158203125, 78.73632812500003], + [-103.40839843749994, 78.75161132812502], + [-103.51835937499996, 78.76914062500006], + [-104.00874023437495, 78.76401367187498], + [-104.18500976562498, 78.78129882812505], + [-104.19458007812497, 78.79560546875001], + [-104.15498046874998, 78.81396484375003], + [-103.87563476562501, 78.90268554687498], + [-103.88715820312495, 78.91879882812498], + [-104.0072265625, 78.94785156250003], + [-104.112744140625, 78.985595703125], + [-104.151953125, 78.989892578125], + [-104.39482421875, 78.95615234375003], + [-104.73603515624997, 78.82592773437497], + [-104.81743164062503, 78.80708007812495], + [-104.89550781249996, 78.80815429687502], + [-104.97021484374999, 78.82915039062502], + [-104.96953125000002, 78.85649414062499], + [-104.89340820312496, 78.89018554687502], + [-104.73525390625, 78.99111328124997], + [-104.74677734375003, 79.02709960937503], + [-104.90136718749999, 79.05112304687503], + [-105.30878906249995, 79.03320312500003], + [-105.53564453124999, 79.03251953125007], + [-105.57075195312503, 79.06098632812501], + [-105.58017578124999, 79.11420898437501], + [-105.571044921875, 79.16420898437497], + [-105.51455078124995, 79.24248046875002], + [-105.43569335937495, 79.30224609375003], + [-105.38769531249994, 79.32358398437503], + [-104.84736328125, 79.31098632812495], + [-103.96459960937501, 79.34814453124997], + [-103.70639648437499, 79.35205078124997], + [-103.42602539062499, 79.315625] + ] + ], + [ + [ + [-98.79160156249995, 79.98110351562505], + [-98.76894531249997, 79.85087890624999], + [-98.78979492187494, 79.78540039062497], + [-98.840625, 79.73706054687497], + [-98.88520507812503, 79.72568359375006], + [-98.94521484375, 79.72407226562498], + [-99.21845703124997, 79.76186523437497], + [-99.30175781249997, 79.78408203124997], + [-99.30625, 79.80288085937497], + [-99.33300781249994, 79.83955078124998], + [-99.515625, 79.88715820312501], + [-99.85747070312495, 79.87949218750003], + [-99.99990234375001, 79.884033203125], + [-100.05683593749997, 79.89824218750005], + [-100.09243164062494, 79.91865234375001], + [-100.12602539062495, 80.00126953125007], + [-100.12036132812494, 80.03041992187497], + [-100.07851562499995, 80.08110351562499], + [-100.05327148437496, 80.093359375], + [-99.802783203125, 80.14013671875003], + [-99.73120117187499, 80.14409179687505], + [-99.424853515625, 80.12641601562498], + [-99.15322265625001, 80.12421874999998], + [-99.01660156249997, 80.11113281250007], + [-98.894677734375, 80.08178710937503], + [-98.823193359375, 80.03735351562506], + [-98.79160156249995, 79.98110351562505] + ] + ], + [ + [ + [-91.88554687499999, 81.13286132812505], + [-91.75498046875003, 81.04931640624997], + [-91.27246093749994, 80.85009765624997], + [-91.05390625000001, 80.77768554687498], + [-90.68291015625002, 80.68769531250001], + [-90.63671875000003, 80.65532226562499], + [-90.63247070312497, 80.64169921874998], + [-90.64301757812498, 80.59370117187498], + [-90.537255859375, 80.575927734375], + [-90.217626953125, 80.54824218750002], + [-89.86186523437499, 80.49843750000002], + [-89.7978515625, 80.50126953125005], + [-89.67382812499997, 80.53076171875003], + [-89.52480468749997, 80.53881835937497], + [-89.32905273437498, 80.53173828125006], + [-89.23559570312494, 80.51064453125002], + [-89.16689453125, 80.479638671875], + [-89.13828125, 80.457421875], + [-89.13417968749997, 80.44023437500005], + [-89.20439453124999, 80.40693359375001], + [-89.19658203124999, 80.39404296874997], + [-89.1546875, 80.378515625], + [-89.14726562499999, 80.36035156250003], + [-89.21767578125002, 80.28925781250004], + [-89.19833984375, 80.26318359375006], + [-89.01923828125001, 80.198486328125], + [-88.85732421874997, 80.16621093750001], + [-88.53754882812493, 80.13115234375007], + [-88.32924804687494, 80.13369140625005], + [-88.19990234374998, 80.11147460937497], + [-88.19682617187496, 80.12519531250001], + [-88.25537109375, 80.16650390624997], + [-88.38076171874997, 80.22519531250003], + [-88.6125, 80.25537109374997], + [-88.64624023437497, 80.28974609374995], + [-88.663427734375, 80.34829101562497], + [-88.64365234374998, 80.38686523437502], + [-88.5248046875, 80.41801757812507], + [-88.42436523437496, 80.42807617187498], + [-88.12524414062494, 80.42949218749999], + [-87.96000976562496, 80.415625], + [-87.675, 80.37211914062505], + [-87.6455078125, 80.34843750000002], + [-87.63027343750002, 80.30161132812498], + [-87.61835937499998, 80.20747070312498], + [-87.62548828125003, 80.18720703125001], + [-87.869140625, 80.13388671875], + [-87.92231445312501, 80.09770507812499], + [-87.86069335937498, 80.0875], + [-87.65136718749997, 80.079443359375], + [-87.328515625, 80.04653320312497], + [-87.20205078125, 80.043212890625], + [-87.07617187500003, 79.966943359375], + [-86.97719726562502, 79.89423828125001], + [-87.04951171875001, 79.80541992187506], + [-87.14423828124993, 79.66264648437502], + [-87.22026367187496, 79.62993164062499], + [-87.29516601562494, 79.58017578124998], + [-87.24287109374995, 79.571142578125], + [-86.92524414062501, 79.59096679687497], + [-86.86103515624998, 79.59770507812502], + [-86.648828125, 79.64624023437503], + [-86.33696289062496, 79.63496093749995], + [-86.23222656249993, 79.62241210937498], + [-86.18046875, 79.60541992187498], + [-86.085546875, 79.55122070312495], + [-86.00703124999998, 79.47944335937498], + [-85.94897460937497, 79.485986328125], + [-85.803857421875, 79.57304687500005], + [-85.75092773437495, 79.59453124999999], + [-85.67861328124997, 79.61528320312505], + [-85.6478515625, 79.61142578125006], + [-85.5013671875, 79.53032226562505], + [-85.17558593749996, 79.38725585937505], + [-85.06376953125002, 79.32817382812499], + [-85.04213867187497, 79.2845703125], + [-85.18134765624998, 79.23374023437503], + [-85.28984374999999, 79.208349609375], + [-86.091650390625, 79.1], + [-86.450537109375, 79.03867187499998], + [-86.62944335937496, 78.99130859375], + [-86.72080078125, 78.97548828125], + [-86.9134765625, 78.98281249999997], + [-86.95717773437502, 78.97490234375005], + [-87.016455078125, 78.89868164062497], + [-87.08037109374999, 78.86611328125], + [-87.24638671874996, 78.81347656250003], + [-87.47875976562497, 78.71816406249997], + [-87.61738281249995, 78.67631835937505], + [-87.86147460937497, 78.70683593750005], + [-87.92231445312501, 78.7513671875], + [-87.95625, 78.85161132812507], + [-87.96074218750002, 78.89311523437499], + [-87.95317382812499, 78.91503906250003], + [-87.92260742187497, 78.95058593749997], + [-87.81674804687498, 79.03632812499995], + [-87.82939453124999, 79.0453125], + [-87.87836914062493, 79.03818359374998], + [-88.04018554687494, 78.99531250000004], + [-88.10405273437499, 78.97280273437497], + [-88.163818359375, 78.93349609374997], + [-88.19023437499996, 78.867431640625], + [-88.16660156250003, 78.74550781250002], + [-88.18969726562503, 78.69638671874998], + [-88.25375976562503, 78.67197265624998], + [-88.227880859375, 78.65302734375001], + [-88.03701171875002, 78.62695312500003], + [-88.00312, 78.61552734375002], + [-87.98198242187499, 78.59472656250006], + [-87.97363281249997, 78.56474609375007], + [-87.98286132812498, 78.53706054687501], + [-88.04023437499995, 78.49443359375005], + [-88.14755859374998, 78.47709960937507], + [-88.2845703125, 78.49653320312501], + [-88.5806640625, 78.601904296875], + [-88.70927734375002, 78.59609374999997], + [-88.74160156250002, 78.58403320312499], + [-88.71396484374998, 78.54643554687507], + [-88.62304687500003, 78.46210937500004], + [-88.60644531250003, 78.39199218750005], + [-88.64838867187495, 78.333740234375], + [-88.73295898437496, 78.24169921874997], + [-88.79101562499997, 78.19243164062507], + [-88.82241210937497, 78.18588867187498], + [-88.96962890624994, 78.18442382812503], + [-89.09570312499994, 78.20922851562503], + [-89.47001953125002, 78.37021484375003], + [-89.6552734375, 78.4388671875], + [-89.92622070312495, 78.57304687500007], + [-89.995361328125, 78.60068359375], + [-90.037109375, 78.60683593750002], + [-90.076318359375, 78.549169921875], + [-90.00102539062502, 78.49580078124995], + [-89.75727539062501, 78.37021484375003], + [-89.611669921875, 78.27890625], + [-89.50683593749997, 78.20327148437497], + [-89.48984374999995, 78.17192382812507], + [-89.52568359374999, 78.15961914062495], + [-89.57949218750002, 78.16660156250003], + [-89.65112304687494, 78.193017578125], + [-89.87304687499997, 78.23759765625002], + [-89.96518554687498, 78.26245117187503], + [-90.02543945312502, 78.29125976562503], + [-90.13608398437498, 78.31308593750003], + [-90.29721679687495, 78.32802734374997], + [-90.45903320312496, 78.33090820312503], + [-90.62158203124994, 78.32172851562504], + [-90.65239257812502, 78.30771484375], + [-90.46918945312498, 78.26855468750003], + [-90.40541992187497, 78.2466796875], + [-90.35795898437499, 78.21875], + [-90.32675781250003, 78.18476562500001], + [-90.38696289062503, 78.16328124999998], + [-90.614404296875, 78.14985351562501], + [-90.91811523437497, 78.15839843749998], + [-91.40961914062501, 78.18798828125006], + [-91.899169921875, 78.23686523437505], + [-92.35126953125001, 78.312890625], + [-92.67827148437502, 78.38911132812498], + [-92.80761718749997, 78.42973632812502], + [-92.8482421875, 78.46010742187497], + [-92.72558593749997, 78.48666992187506], + [-92.29672851562498, 78.52080078124999], + [-91.86689453124998, 78.54267578125001], + [-91.9349609375, 78.56171874999998], + [-92.71552734374995, 78.60502929687502], + [-92.972509765625, 78.61293945312502], + [-93.109375, 78.60156250000003], + [-93.26660156249997, 78.60830078124997], + [-93.38945312499993, 78.64267578125003], + [-93.55205078124993, 78.70781249999999], + [-93.63442382812502, 78.75092773437498], + [-93.62333984374999, 78.76777343749995], + [-93.56142578125, 78.77734375000003], + [-93.208349609375, 78.76918945312497], + [-93.15986328124998, 78.77563476562503], + [-93.33647460937499, 78.80805664062498], + [-93.90224609374997, 78.872216796875], + [-94.11459960937498, 78.92890625000001], + [-94.15361328125002, 78.95102539062498], + [-94.169677734375, 78.97280273437497], + [-94.16279296874993, 78.99418945312507], + [-93.95019531249997, 79.03740234374999], + [-93.29389648437501, 79.139501953125], + [-93.06845703125, 79.15537109375003], + [-92.84160156249996, 79.156396484375], + [-92.68364257812493, 79.18579101562503], + [-92.54721679687495, 79.28261718750002], + [-91.86757812499997, 79.31743164062502], + [-91.34365234374997, 79.36088867187499], + [-91.29990234375003, 79.372705078125], + [-91.69262695312503, 79.36474609374997], + [-92.24794921875, 79.37343749999997], + [-92.48457031249998, 79.43925781250005], + [-92.64472656250001, 79.45043945312503], + [-92.82192382812497, 79.44990234375001], + [-93.028125, 79.42924804687507], + [-93.38085937499997, 79.36816406250006], + [-93.55043945312497, 79.35395507812501], + [-93.93315429687496, 79.29072265624998], + [-94.03984375000002, 79.29521484375002], + [-94.093359375, 79.30273437500006], + [-94.10937, 79.315087890625], + [-94.04028320312503, 79.35703125], + [-93.93969726562494, 79.38569335937498], + [-93.96025390624996, 79.39550781250003], + [-94.11030273437498, 79.40156250000001], + [-94.28413085937495, 79.40043945312505], + [-94.40488281249995, 79.39052734375], + [-94.84604492187503, 79.33505859375006], + [-95.04370117187497, 79.29355468750003], + [-95.10317382812502, 79.289892578125], + [-95.31660156249998, 79.35473632812497], + [-95.65703125, 79.39038085937506], + [-95.73300781249998, 79.41821289062503], + [-95.66289062500002, 79.52734374999997], + [-95.5634765625, 79.54975585937501], + [-95.30234375, 79.56806640625001], + [-94.519677734375, 79.66713867187502], + [-94.47553710937495, 79.686181640625], + [-94.40185546874997, 79.736328125], + [-94.58085937500002, 79.72563476562505], + [-94.97304687499997, 79.67719726562495], + [-95.29697265624998, 79.653076171875], + [-95.55249023437497, 79.65322265625005], + [-95.73935546874995, 79.66015625000003], + [-95.85751953124995, 79.67377929687495], + [-95.99965820312497, 79.70468750000003], + [-96.46274414062498, 79.847509765625], + [-96.58906249999995, 79.91665039062497], + [-96.60673828124999, 79.97768554687497], + [-96.63920898437496, 80.02416992187503], + [-96.77324218749999, 80.13579101562502], + [-95.78198242187503, 80.06640625000003], + [-95.39384765624999, 80.05327148437502], + [-94.64589843749994, 80.04873046874997], + [-94.61083984375, 80.055517578125], + [-94.59980468749995, 80.07363281249997], + [-94.61269531250002, 80.10297851562501], + [-94.60698242187502, 80.1255859375], + [-94.5826171875, 80.14140625000002], + [-94.304443359375, 80.18164062500006], + [-94.26259765625002, 80.19487304687499], + [-94.59013671874996, 80.201513671875], + [-95.19238281249997, 80.134375], + [-95.40507812499996, 80.13500976562506], + [-95.646240234375, 80.23095703124997], + [-95.90400390625001, 80.214111328125], + [-96.02568359375002, 80.22172851562505], + [-96.21508789062497, 80.24589843749999], + [-96.30830078124995, 80.26699218750002], + [-96.36840820312503, 80.29306640625], + [-96.39409179687493, 80.31503906250003], + [-96.3853515625, 80.33286132812503], + [-96.334375, 80.352783203125], + [-96.11215820312495, 80.38041992187505], + [-96.01186523437497, 80.38305664062506], + [-95.74736328124999, 80.36528320312507], + [-95.549072265625, 80.36660156249997], + [-95.61445312499998, 80.39624023437497], + [-95.90107421874995, 80.470849609375], + [-96.15180664062495, 80.55346679687503], + [-96.1328125, 80.69140624999997], + [-95.92695312499998, 80.72065429687498], + [-95.71362304687494, 80.72543945312498], + [-95.50527343749997, 80.690576171875], + [-95.22583007812497, 80.685791015625], + [-95.02573242187495, 80.64643554687495], + [-94.892578125, 80.57089843750003], + [-94.73447265624995, 80.57236328124998], + [-94.48540039062502, 80.55805664062498], + [-93.92792968749995, 80.55917968750003], + [-94.02871093749997, 80.58618164062503], + [-94.20214843749994, 80.60971679687503], + [-94.59628906249995, 80.640625], + [-94.78847656249994, 80.75126953125002], + [-95.19584960937499, 80.80830078124998], + [-95.51474609375003, 80.83813476562503], + [-95.50927734374997, 80.86323242187498], + [-95.26977539062503, 81.00078125000005], + [-94.98051757812499, 81.04965820312503], + [-94.51943359375002, 81.03120117187501], + [-94.21630859375, 81.05717773437507], + [-93.82597656249996, 81.105712890625], + [-93.44375, 81.08325195312506], + [-93.34511718749997, 81.08535156250002], + [-93.28671874999998, 81.10029296874998], + [-93.23564453124996, 81.12885742187501], + [-93.23540039062499, 81.15512695312503], + [-93.28593749999999, 81.17924804687507], + [-93.40654296874996, 81.20908203125], + [-93.89443359374997, 81.21328125], + [-94.1103515625, 81.225], + [-94.19443359374998, 81.24091796875001], + [-94.21865234374994, 81.26494140625002], + [-94.23149414062499, 81.28969726562502], + [-94.23295898437502, 81.31513671874995], + [-94.22011718749997, 81.33076171875004], + [-94.17934570312502, 81.3392578125], + [-94.05971679687497, 81.34931640624998], + [-93.60488281249997, 81.35058593749997], + [-93.33276367187503, 81.36440429687505], + [-93.03466796874997, 81.3462890625], + [-92.41259765624997, 81.27827148437498], + [-92.211767578125, 81.24360351562504], + [-91.99785156249993, 81.18549804687501], + [-91.88554687499999, 81.13286132812505] + ] + ], + [ + [ + [-69.4888671875, 83.01679687499998], + [-68.67324218750002, 82.99877929687503], + [-68.40903320312503, 83.00527343750002], + [-68.10688476562493, 82.961181640625], + [-67.92460937500002, 82.95600585937501], + [-67.62446289062495, 82.96440429687505], + [-67.40566406249997, 82.95390625000005], + [-66.59165039062498, 82.94404296874998], + [-66.42255859374998, 82.92685546875003], + [-66.4248046875, 82.90615234375], + [-66.60039062499996, 82.86123046875], + [-66.836328125, 82.81791992187505], + [-68.35756835937502, 82.67680664062499], + [-68.46933593749995, 82.65336914062502], + [-68.17285156249994, 82.64594726562501], + [-67.73588867187502, 82.65244140625], + [-67.3970703125, 82.668115234375], + [-66.997705078125, 82.716064453125], + [-66.86572265625003, 82.71884765625003], + [-66.61186523437499, 82.74208984374997], + [-66.12045898437498, 82.80712890624997], + [-65.72744140624994, 82.84243164062497], + [-65.54960937499996, 82.82695312500002], + [-65.4, 82.802392578125], + [-65.29902343749995, 82.79960937500005], + [-65.24658203125003, 82.818505859375], + [-65.16240234374993, 82.87011718750003], + [-65.11318359374994, 82.88891601562503], + [-64.98388671874997, 82.90229492187501], + [-64.90488281249995, 82.90083007812498], + [-64.77675781249997, 82.87646484374997], + [-64.634765625, 82.818603515625], + [-64.50400390625, 82.77841796874998], + [-64.43339843750002, 82.77773437500002], + [-64.13422851562498, 82.82319335937495], + [-63.983593749999955, 82.8291015625], + [-63.641015624999966, 82.81259765625003], + [-63.498730468749926, 82.79257812500003], + [-63.47304687500002, 82.77124023437503], + [-63.5640625, 82.74873046874998], + [-63.62060546874997, 82.72929687500002], + [-63.64252929687501, 82.71298828124998], + [-63.592675781249966, 82.69404296875004], + [-63.38540039062502, 82.65346679687502], + [-63.085351562499994, 82.56523437499999], + [-63.087060546874994, 82.53281250000003], + [-63.25083007812495, 82.46684570312502], + [-63.246777343749926, 82.4501953125], + [-62.47519531249995, 82.51958007812502], + [-61.697167968749994, 82.488623046875], + [-61.47705078125, 82.46743164062497], + [-61.392480468749994, 82.44189453125], + [-61.30249023437497, 82.39975585937503], + [-61.20722656250001, 82.34106445312497], + [-61.273535156250006, 82.27983398437502], + [-61.61538085937502, 82.18442382812503], + [-61.968652343749966, 82.11025390625002], + [-62.17670898437498, 82.04340820312498], + [-62.49648437500002, 82.00678710937498], + [-63.59228515624997, 81.84550781249999], + [-64.12792968749994, 81.79365234375001], + [-64.43579101562497, 81.74262695312501], + [-64.57402343749996, 81.73374023437506], + [-65.22617187499995, 81.743505859375], + [-65.39916992187503, 81.71538085937505], + [-65.49541015625002, 81.66806640625], + [-65.70107421875, 81.64555664062505], + [-66.00473632812503, 81.62944335937505], + [-66.62573242187497, 81.61640624999995], + [-66.76503906249994, 81.56303710937502], + [-66.80058593749999, 81.52680664062501], + [-66.86113281249999, 81.49868164062505], + [-66.9140625, 81.48510742187503], + [-68.68852539062493, 81.29331054687503], + [-68.72119140625003, 81.26123046874997], + [-68.54257812499995, 81.24799804687495], + [-68.31767578124996, 81.26123046874997], + [-65.73569335937503, 81.49423828125003], + [-65.23999023437503, 81.50966796874997], + [-64.78007812499993, 81.49287109375001], + [-64.832763671875, 81.43862304687497], + [-65.48398437499998, 81.28476562499998], + [-66.312841796875, 81.146142578125], + [-66.72685546874999, 81.04091796875005], + [-67.77436523437495, 80.85942382812502], + [-68.63046875, 80.67871093749997], + [-68.95937, 80.58686523437501], + [-69.40009765624995, 80.42285156249997], + [-69.55068359375, 80.38325195312498], + [-69.7337890625, 80.36694335937506], + [-69.94931640625003, 80.37377929687503], + [-70.14350585937498, 80.39765625000001], + [-70.40263671875002, 80.45898437499997], + [-70.63867187499994, 80.52753906249998], + [-70.71259765625001, 80.53959960937505], + [-70.66782226562503, 80.50556640624995], + [-70.21279296874997, 80.277734375], + [-70.264892578125, 80.23359374999998], + [-71.10029296874995, 80.18706054687499], + [-71.47006835937495, 80.14589843750005], + [-71.66083984375001, 80.13593749999998], + [-71.7958984375, 80.14335937500007], + [-71.92763671875, 80.13916015625], + [-72.05595703124996, 80.12324218749995], + [-72.06298828124997, 80.10556640625], + [-71.94868164062495, 80.08618164062506], + [-71.61611328124997, 80.07104492187497], + [-70.87705078125003, 80.12231445312503], + [-70.75849609374995, 80.11865234375], + [-70.56840820312493, 80.09370117187498], + [-70.55908203125, 80.07099609374998], + [-70.75751953125001, 79.99824218749998], + [-71.35581054687495, 79.91127929687502], + [-71.27763671875002, 79.90634765625], + [-71.10634765625002, 79.87553710937505], + [-71.11015624999999, 79.84780273437497], + [-71.29858398437503, 79.782568359375], + [-71.387841796875, 79.76176757812505], + [-71.96455078124998, 79.70107421875002], + [-72.21552734374995, 79.68681640625005], + [-72.43652343750003, 79.69438476562499], + [-73.44814453124997, 79.82709960937501], + [-73.80507812499997, 79.84628906250003], + [-74.14423828124995, 79.87978515625002], + [-74.39448242187495, 79.87407226562499], + [-74.66020507812499, 79.83515624999998], + [-74.54072265624998, 79.815576171875], + [-74.05102539062497, 79.77822265625002], + [-73.64208984374997, 79.77099609375006], + [-73.47246093749996, 79.7564453125], + [-73.405908203125, 79.73217773437506], + [-73.22939453125, 79.64399414062501], + [-73.20112304687501, 79.59658203125005], + [-73.24013671874997, 79.55249023437503], + [-73.2935546875, 79.52158203125003], + [-73.36152343750001, 79.50400390625], + [-73.466064453125, 79.49516601562499], + [-73.865966796875, 79.50141601562501], + [-74.015380859375, 79.49052734375002], + [-74.18867187499995, 79.46474609375002], + [-74.406005859375, 79.45356445312495], + [-74.79794921874998, 79.45869140625001], + [-75.25947265624995, 79.421044921875], + [-75.50341796875, 79.41416015625], + [-75.77382812499994, 79.43115234375], + [-76.06689453124997, 79.47319335937505], + [-76.37607421874998, 79.49443359375002], + [-76.898828125, 79.5123046875], + [-76.85507812499995, 79.48823242187501], + [-76.6708984375, 79.47807617187507], + [-76.29570312499993, 79.41362304687499], + [-76.116357421875, 79.32612304687501], + [-75.94750976562497, 79.31132812500002], + [-75.60273437499998, 79.23955078125005], + [-75.35366210937497, 79.22832031249999], + [-75.093603515625, 79.20390624999999], + [-74.72724609374998, 79.2353515625], + [-74.48120117187503, 79.22949218750006], + [-74.53232421874998, 79.052734375], + [-74.64091796874996, 79.03554687499997], + [-75.233154296875, 79.03554687499997], + [-75.51464843749997, 79.06123046874995], + [-75.63896484374999, 79.08774414062503], + [-75.91181640624998, 79.11777343750003], + [-76.15756835937495, 79.10039062500005], + [-76.38037109374997, 79.104150390625], + [-76.53144531250001, 79.08652343750006], + [-76.771142578125, 79.087158203125], + [-77.39804687499998, 79.05727539062505], + [-77.72924804687497, 79.05693359375007], + [-77.97377929687497, 79.07622070312499], + [-78.25791015625, 79.08217773437497], + [-78.58164062499998, 79.075], + [-78.558984375, 79.05458984375002], + [-78.42177734375, 79.04838867187502], + [-78.22197265624999, 79.01513671874997], + [-78.03681640625001, 78.96391601562502], + [-77.88276367187498, 78.9423828125], + [-77.69824218749994, 78.95454101562498], + [-77.51040039062497, 78.97846679687498], + [-76.8248046875, 79.01787109375002], + [-76.52412109374993, 79.02421875000005], + [-76.255859375, 79.00683593749997], + [-76.07734374999995, 78.98515625000002], + [-75.95268554687496, 78.95903320312502], + [-75.795068359375, 78.88974609375], + [-75.39985351562495, 78.88129882812498], + [-75.09853515624994, 78.85830078125], + [-74.618408203125, 78.75771484375002], + [-74.486328125, 78.75009765624998], + [-74.43310546875, 78.72412109375003], + [-74.53505859375, 78.65927734375006], + [-74.54658203124993, 78.62031250000001], + [-74.87861328124998, 78.54482421875], + [-75.39658203125, 78.52285156249997], + [-75.96582031249997, 78.52983398437505], + [-76.37348632812498, 78.52109375000006], + [-76.41611328124995, 78.51152343750005], + [-76.13652343749993, 78.49169921875003], + [-75.48837890624995, 78.40351562499998], + [-75.23720703124994, 78.35571289062503], + [-75.19345703125, 78.327734375], + [-75.55068359374997, 78.22109375000005], + [-75.86596679687497, 78.00981445312499], + [-75.96962890624994, 77.99311523437495], + [-76.0775390625, 77.98730468750003], + [-76.35556640624998, 77.99101562500007], + [-76.70810546875003, 77.937890625], + [-76.97402343750002, 77.92724609375003], + [-77.45595703124997, 77.94716796875002], + [-78.01259765624997, 77.94604492187506], + [-78.056396484375, 77.91171874999998], + [-78.08413085937497, 77.84609375000002], + [-78.08105468749997, 77.74736328124999], + [-78.04716796874999, 77.61547851562503], + [-78.07617187500003, 77.51904296875], + [-78.16796875, 77.45810546875003], + [-78.28374023437496, 77.4130859375], + [-78.49321289062499, 77.369384765625], + [-78.70849609374997, 77.34213867187503], + [-78.86953125000002, 77.33251953125003], + [-79.13759765625, 77.33100585937498], + [-79.90639648437494, 77.29956054687497], + [-80.28168945312493, 77.30146484375001], + [-80.57304687499996, 77.31479492187506], + [-80.87460937500003, 77.35859375000001], + [-81.37685546874994, 77.48212890624995], + [-81.519287109375, 77.50957031250005], + [-81.65908203124997, 77.52543945312499], + [-81.65380859374997, 77.49882812500007], + [-81.503564453125, 77.42978515625003], + [-81.37817382812503, 77.38520507812501], + [-81.277734375, 77.36518554687501], + [-81.3013671875, 77.34404296875007], + [-81.52294921874994, 77.31083984375005], + [-81.767333984375, 77.29594726562505], + [-82.056787109375, 77.29653320312497], + [-82.066015625, 77.28364257812501], + [-81.96782226562499, 77.24785156250002], + [-81.84023437500002, 77.21411132812497], + [-81.75634765624997, 77.20400390625005], + [-81.53447265624999, 77.21445312500003], + [-81.27744140625003, 77.25708007812503], + [-81.11718749999997, 77.26962890625], + [-80.798193359375, 77.25947265624998], + [-80.67255859374998, 77.244287109375], + [-80.27421875000002, 77.15092773437507], + [-80.21870117187498, 77.14658203124998], + [-79.92373046875002, 77.19360351562497], + [-79.49726562500001, 77.19609375000005], + [-79.34086914062493, 77.15839843749998], + [-79.281103515625, 77.08515624999998], + [-79.27382812499997, 77.02578124999997], + [-79.3189453125, 76.98037109374997], + [-79.22075195312499, 76.93603515625], + [-78.97919921874998, 76.89287109374999], + [-78.79179687499999, 76.88359375000005], + [-78.658544921875, 76.90800781250005], + [-78.45595703124997, 76.96723632812495], + [-78.37001953124994, 76.98125], + [-78.28886718750002, 76.97797851562501], + [-78.16508789062493, 76.93491210937503], + [-77.99873046874998, 76.851953125], + [-77.98330078124994, 76.75498046875006], + [-78.11870117187499, 76.64404296875], + [-78.284326171875, 76.57124023437501], + [-78.93427734374995, 76.45117187499997], + [-79.130712890625, 76.40395507812502], + [-79.285888671875, 76.35478515625005], + [-79.51103515624996, 76.31049804687501], + [-79.95356445312495, 76.25126953125002], + [-80.18681640624996, 76.24018554687498], + [-80.69028320312495, 76.17646484374995], + [-80.79970703124997, 76.173583984375], + [-80.96293945312499, 76.18393554687498], + [-80.99667968750003, 76.214990234375], + [-80.95517578125, 76.27016601562505], + [-80.90122070312503, 76.32153320312503], + [-80.834814453125, 76.36914062500006], + [-80.83237304687503, 76.40864257812501], + [-80.97451171874994, 76.470068359375], + [-81.07436523437497, 76.49848632812501], + [-81.17070312499996, 76.51274414062499], + [-81.36479492187496, 76.5044921875], + [-81.474462890625, 76.48764648437503], + [-81.59199218749998, 76.48442382812499], + [-81.71738281250003, 76.494970703125], + [-81.82294921874995, 76.52084960937503], + [-82.0341796875, 76.62939453125006], + [-82.11372070312495, 76.64321289062502], + [-82.21791992187497, 76.63979492187502], + [-82.31113281250003, 76.65537109375], + [-82.39345703125002, 76.68989257812501], + [-82.52983398437499, 76.723291015625], + [-82.49340820312494, 76.69780273437505], + [-82.35698242187496, 76.63603515625007], + [-82.26196289062497, 76.57470703125], + [-82.20834960937495, 76.51376953125003], + [-82.23315429687494, 76.46582031250003], + [-83.38896484374996, 76.43925781250005], + [-83.88569335937501, 76.453125], + [-83.98632812499997, 76.49501953125002], + [-84.22377929687497, 76.67534179687499], + [-84.27534179687498, 76.35654296875006], + [-85.141259765625, 76.30458984375005], + [-85.343603515625, 76.31337890624997], + [-85.68056640625, 76.34902343750002], + [-86.11582031250003, 76.43491210937503], + [-86.29619140625002, 76.491845703125], + [-86.36684570312502, 76.54863281250002], + [-86.41943359374997, 76.57963867187505], + [-86.45371093750003, 76.58486328125002], + [-86.56191406249997, 76.51650390624997], + [-86.68022460937499, 76.37661132812497], + [-86.97768554687502, 76.41274414062497], + [-87.35419921874998, 76.44804687500005], + [-87.48979492187499, 76.58583984374997], + [-87.49755859374997, 76.38627929687499], + [-88.10434570312495, 76.41274414062497], + [-88.39599609374997, 76.40527343750003], + [-88.48164062500001, 76.58007812500003], + [-88.49584960937497, 76.77285156249997], + [-88.61411132812498, 76.65087890624997], + [-88.56254882812496, 76.547216796875], + [-88.54580078125002, 76.42089843750003], + [-88.80371093749997, 76.45683593750007], + [-89.36962890624997, 76.474462890625], + [-89.57006835937497, 76.49194335937503], + [-89.54433593749997, 76.65966796875], + [-89.49975585937503, 76.82680664062502], + [-88.77089843749997, 76.99335937500004], + [-88.55620117187499, 77.07221679687501], + [-88.39814453124995, 77.10395507812501], + [-88.14794921874997, 77.1240234375], + [-87.82841796874996, 77.13647460937497], + [-87.610498046875, 77.12685546874997], + [-87.36171875000002, 77.13623046875], + [-87.06445312500003, 77.165869140625], + [-86.85219726562494, 77.17441406250006], + [-86.81225585937497, 77.18491210937498], + [-86.873779296875, 77.20029296875], + [-87.10087890624999, 77.30771484375003], + [-87.18242187499999, 77.33212890625003], + [-87.26538085937503, 77.34301757812503], + [-87.4296875, 77.34780273437502], + [-87.58916015624999, 77.39482421875002], + [-87.68144531249996, 77.43637695312503], + [-87.78017578125, 77.492822265625], + [-87.93793945312498, 77.59980468750004], + [-88.09467773437495, 77.71918945312501], + [-88.01699218750002, 77.78471679687505], + [-87.75712890625002, 77.83623046875007], + [-87.49677734374998, 77.87192382812506], + [-87.23603515624998, 77.89179687500001], + [-87.01796874999997, 77.89223632812502], + [-86.75507812499998, 77.86372070312498], + [-86.385107421875, 77.80859375000003], + [-86.17299804687497, 77.74614257812502], + [-85.90664062499997, 77.61391601562497], + [-85.731201171875, 77.50864257812503], + [-85.58847656249998, 77.46113281250004], + [-84.95087890624993, 77.37495117187495], + [-84.73867187499997, 77.36103515624998], + [-84.48701171874993, 77.36796875000005], + [-83.97358398437495, 77.39052734375002], + [-83.72128906249998, 77.41420898437497], + [-83.60805664062502, 77.442236328125], + [-83.54980468749997, 77.48256835937505], + [-83.47734374999993, 77.51362304687498], + [-83.25029296874996, 77.584814453125], + [-82.90273437499994, 77.73271484375002], + [-82.7103515625, 77.84951171875002], + [-82.66469726562494, 77.88881835937502], + [-82.62631835937503, 77.93632812500002], + [-82.5953125, 77.99213867187504], + [-82.70356445312495, 77.96240234375], + [-83.30375976562502, 77.67373046875], + [-83.42822265624997, 77.62128906249998], + [-83.77939453125, 77.53261718750002], + [-83.92817382812495, 77.51831054687503], + [-84.167822265625, 77.52270507812506], + [-84.48583984374997, 77.56196289062495], + [-84.86054687500001, 77.49951171875003], + [-85.08789062499997, 77.51538085937497], + [-85.28935546874996, 77.55903320312498], + [-85.29204101562499, 77.76386718749998], + [-85.54755859374998, 77.92768554687495], + [-85.26533203124995, 78.01059570312506], + [-85.03149414062503, 78.06201171875006], + [-84.61542968749998, 78.19570312500002], + [-84.52416992187494, 78.19707031250005], + [-84.22270507812499, 78.176025390625], + [-84.38813476562495, 78.20634765625005], + [-84.55, 78.2513671875], + [-84.91035156249993, 78.23969726562501], + [-84.78320312499997, 78.52758789062506], + [-85.02431640624997, 78.31240234375], + [-85.27016601562497, 78.19951171874999], + [-85.41899414062499, 78.142431640625], + [-85.5859375, 78.10957031249998], + [-86.21777343750003, 78.08120117187497], + [-86.06259765625003, 78.18696289062501], + [-85.92006835937494, 78.34287109374998], + [-86.07094726562494, 78.28461914062501], + [-86.42705078124993, 78.19702148437503], + [-86.69360351562497, 78.15102539062497], + [-86.91323242187494, 78.126806640625], + [-87.33935546875, 78.13266601562506], + [-87.5517578125, 78.17661132812503], + [-87.49111328125, 78.28442382812497], + [-87.49130859375003, 78.41718750000001], + [-87.36127929687501, 78.47871093750004], + [-87.16430664062503, 78.55761718750003], + [-86.95292968749996, 78.663916015625], + [-86.80791015624999, 78.77436523437495], + [-86.24189453124995, 78.82363281249997], + [-85.691015625, 78.84370117187495], + [-85.22968749999998, 78.90200195312502], + [-85.00375976562495, 78.912255859375], + [-84.787255859375, 78.88457031250002], + [-83.90791015624998, 78.83916015625002], + [-83.54702148437502, 78.80449218750005], + [-83.38872070312502, 78.77934570312499], + [-83.27143554687501, 78.77031250000002], + [-83.14741210937495, 78.80786132812503], + [-82.98979492187499, 78.84414062499997], + [-82.441796875, 78.8404296875], + [-82.29067382812494, 78.84707031250002], + [-82.15107421874993, 78.86411132812503], + [-81.98110351562494, 78.89848632812502], + [-81.78081054687499, 78.95034179687502], + [-81.75009765624995, 78.97578124999995], + [-81.88911132812493, 78.97485351562503], + [-82.02832031249997, 78.96186523437495], + [-82.23740234375, 78.924072265625], + [-82.43876953125002, 78.903662109375], + [-82.64409179687502, 78.90751953124999], + [-83.05854492187498, 78.93950195312502], + [-83.77861328124993, 78.94526367187495], + [-84.14580078124996, 78.959814453125], + [-84.31611328124993, 78.97529296874995], + [-84.41201171875002, 78.99658203125003], + [-84.49584960937497, 79.02856445312497], + [-84.56777343749997, 79.07128906249997], + [-84.53027343749994, 79.10126953125004], + [-84.38359375000002, 79.1185546875], + [-84.25664062499999, 79.12216796875003], + [-84.05302734374999, 79.09868164062505], + [-83.824609375, 79.058837890625], + [-83.57587890624995, 79.05366210937501], + [-83.66201171875, 79.09003906249995], + [-83.978125, 79.16313476562502], + [-84.19736328124998, 79.22509765625003], + [-84.38105468749993, 79.30126953125], + [-84.52241210937495, 79.376611328125], + [-84.83642578124997, 79.49472656249998], + [-85.08979492187498, 79.61215820312503], + [-85.26850585937498, 79.66411132812505], + [-85.45693359375, 79.68984375000005], + [-86.031494140625, 79.721923828125], + [-86.146630859375, 79.742822265625], + [-86.42075195312498, 79.84521484374997], + [-86.49433593749995, 80.01816406250003], + [-86.61450195312503, 80.12353515625003], + [-86.49853515625003, 80.25825195312501], + [-86.30717773437493, 80.31933593750003], + [-85.15961914062501, 80.27177734375002], + [-84.67543945312497, 80.27890625000006], + [-84.05654296875, 80.26196289062497], + [-83.72363281250003, 80.22895507812501], + [-83.34375, 80.14697265625], + [-83.00429687500002, 80.05458984375], + [-82.67749023437497, 79.99277343750003], + [-82.37700195312496, 79.90825195312505], + [-82.04877929687495, 79.78276367187505], + [-81.85571289062497, 79.72255859375005], + [-81.68837890625, 79.685791015625], + [-81.463037109375, 79.65415039062506], + [-81.03808593750003, 79.61420898437498], + [-80.667822265625, 79.60102539062498], + [-80.47592773437498, 79.60625], + [-80.27060546874998, 79.63520507812501], + [-80.12446289062495, 79.66948242187507], + [-80.28745117187495, 79.67895507812503], + [-80.714013671875, 79.67495117187502], + [-81.01015625000002, 79.693115234375], + [-81.17905273437498, 79.73344726562505], + [-81.35869140624996, 79.78779296875001], + [-81.64423828124995, 79.890234375], + [-81.86025390625002, 79.95717773437497], + [-82.332373046875, 80.06635742187501], + [-82.68129882812494, 80.17490234375], + [-82.96113281249993, 80.27788085937502], + [-82.98701171874995, 80.32260742187498], + [-82.784814453125, 80.35375976562503], + [-82.53613281249994, 80.37553710937502], + [-80.97963867187502, 80.44526367187501], + [-80.05107421874993, 80.52856445312503], + [-79.67436523437502, 80.625244140625], + [-79.62934570312498, 80.6478515625], + [-78.38618164062495, 80.784375], + [-77.50712890625002, 80.83476562500005], + [-77.16914062499998, 80.84291992187502], + [-76.86298828124995, 80.86479492187505], + [-76.85034179687497, 80.87817382812503], + [-77.1185546875, 80.89643554687501], + [-77.38945312500002, 80.90541992187497], + [-78.00380859374994, 80.90483398437502], + [-78.55097656249995, 80.92143554687505], + [-78.71621093749994, 80.95166015624997], + [-78.68193359374999, 81.00107421875], + [-78.629296875, 81.04345703125003], + [-78.46396484374998, 81.11435546875], + [-78.28681640624995, 81.16762695312502], + [-77.53603515624994, 81.32109375000002], + [-77.03071289062493, 81.38569335937504], + [-76.88510742187503, 81.43027343750006], + [-77.97236328124993, 81.33081054687503], + [-78.35214843750003, 81.25893554687497], + [-78.73388671875, 81.151025390625], + [-78.93154296874994, 81.11923828125], + [-79.07246093749995, 81.12763671875004], + [-79.19833984375003, 81.11757812500002], + [-79.30917968749995, 81.08906249999998], + [-79.40214843749999, 81.03686523437503], + [-79.47724609375001, 80.96098632812502], + [-79.54541015624994, 80.90932617187497], + [-79.60664062499998, 80.88178710937495], + [-79.76132812499998, 80.841943359375], + [-80.13354492187494, 80.763916015625], + [-81.00703125000001, 80.6548828125], + [-81.30097656249993, 80.62719726562506], + [-81.55268554687495, 80.62280273437503], + [-82.36821289062493, 80.56132812500005], + [-82.61303710937497, 80.55888671874999], + [-82.88432617187502, 80.57753906249997], + [-82.768310546875, 80.63066406250005], + [-82.336767578125, 80.72866210937502], + [-82.22236328124998, 80.77231445312503], + [-82.4984375, 80.76279296875003], + [-82.77998046874998, 80.73603515625001], + [-83.40141601562502, 80.71396484375003], + [-83.64711914062497, 80.674072265625], + [-83.8853515625, 80.60175781250001], + [-84.07626953125, 80.55625], + [-84.21977539062493, 80.53779296874995], + [-84.41782226562495, 80.52675781250002], + [-85.14584960937495, 80.52114257812502], + [-85.30742187500002, 80.52597656250003], + [-85.72622070312497, 80.58115234374998], + [-86.09716796874997, 80.562109375], + [-86.250341796875, 80.56577148437506], + [-86.531591796875, 80.604736328125], + [-86.61542968749995, 80.630029296875], + [-86.60307617187499, 80.66401367187498], + [-86.44047851562502, 80.72802734374997], + [-86.252099609375, 80.78955078125], + [-85.63930664062494, 80.92460937500007], + [-85.24628906249998, 80.98789062499998], + [-84.67993164062497, 81.0423828125], + [-83.34921874999995, 81.10332031250005], + [-83.288818359375, 81.14794921875], + [-84.63544921874998, 81.09809570312495], + [-85.780859375, 81.03505859375], + [-85.96679687499997, 81.01191406249998], + [-86.23344726562502, 80.95009765625002], + [-87.08027343749995, 80.72626953124998], + [-87.32988281250002, 80.669775390625], + [-87.711669921875, 80.65625], + [-88.00366210937497, 80.675390625], + [-88.23198242187493, 80.70380859375001], + [-88.62509765625, 80.77006835937502], + [-88.92143554687499, 80.80561523437498], + [-89.06166992187494, 80.82954101562495], + [-89.14458007812496, 80.853662109375], + [-89.21176757812498, 80.88193359374998], + [-89.26328124999998, 80.914306640625], + [-89.16689453125, 80.94130859375], + [-88.41308593749997, 80.999755859375], + [-87.388671875, 80.98837890625], + [-86.92900390624996, 81.00043945312495], + [-86.47675781249993, 81.03574218750006], + [-85.8095703125, 81.12358398437502], + [-85.08330078124999, 81.24687], + [-84.94121093750002, 81.28623046875], + [-85.206298828125, 81.29487304687501], + [-85.40249023437502, 81.285302734375], + [-85.87504882812502, 81.2412109375], + [-86.62275390625001, 81.12265625], + [-87.27509765624995, 81.080810546875], + [-88.88681640625003, 81.05849609375], + [-89.39838867187498, 81.02534179687498], + [-89.623046875, 81.032470703125], + [-89.79228515624993, 81.06484375000002], + [-89.98095703125, 81.12470703124998], + [-89.94731445312499, 81.17265625000005], + [-89.56337890625002, 81.22646484375], + [-89.262548828125, 81.23906249999999], + [-89.20869140624998, 81.25009765625003], + [-89.63569335937501, 81.30205078125005], + [-89.67368164062503, 81.32861328125003], + [-89.42700195312494, 81.38745117187503], + [-88.89228515624998, 81.47412109375], + [-88.62192382812498, 81.50141601562498], + [-88.12651367187496, 81.51879882812497], + [-87.61669921875, 81.50932617187499], + [-87.59702148437498, 81.52583007812498], + [-88.10136718749999, 81.55864257812499], + [-88.47905273437502, 81.56464843749998], + [-88.97836914062503, 81.54150390624997], + [-90.30351562499999, 81.40112304687497], + [-90.41630859374996, 81.40537109375003], + [-90.60903320312497, 81.42954101562498], + [-90.55375976562499, 81.46420898437503], + [-89.84521484374997, 81.61166992187506], + [-89.82167968749997, 81.63486328124998], + [-90.33085937499996, 81.63154296875001], + [-90.48037109374997, 81.63852539062503], + [-90.62631835937503, 81.65600585937503], + [-90.833740234375, 81.64047851562498], + [-91.10273437500001, 81.59199218749995], + [-91.29238281250002, 81.57124023437498], + [-91.40278320312495, 81.57822265625], + [-91.68408203124997, 81.63569335937498], + [-91.64755859374998, 81.68383789062503], + [-91.42382812499997, 81.74423828124998], + [-91.219482421875, 81.78774414062505], + [-90.94194335937493, 81.82744140625005], + [-90.49018554687501, 81.87724609374999], + [-90.16303710937498, 81.89404296875003], + [-89.63334960937499, 81.89453125000003], + [-89.381005859375, 81.91674804687503], + [-89.15634765624998, 81.955419921875], + [-88.87524414062497, 82.01801757812498], + [-88.56684570312495, 82.06108398437505], + [-88.06318359375001, 82.09648437500007], + [-87.638916015625, 82.08505859375003], + [-87.40439453125, 82.05419921874997], + [-87.2181640625, 82.00009765625006], + [-87.01821289062502, 81.95874023437497], + [-86.99921874999998, 81.99213867187504], + [-86.83403320312499, 82.033349609375], + [-86.62680664062495, 82.05102539062503], + [-86.37753906249998, 82.04511718749998], + [-86.158349609375, 82.025537109375], + [-85.87480468749996, 81.97568359375006], + [-85.645654296875, 81.95327148437502], + [-85.53798828125, 81.95463867187502], + [-85.40317382812498, 81.98222656250005], + [-85.04482421874997, 81.9828125], + [-85.05224609374997, 81.99453125], + [-85.16923828125002, 82.02338867187501], + [-85.31059570312493, 82.04399414062502], + [-86.58061523437496, 82.18720703124998], + [-86.615625, 82.21855468750007], + [-86.18759765625, 82.24794921875002], + [-85.92001953125003, 82.28305664062506], + [-85.79443359375003, 82.29160156250003], + [-85.480859375, 82.36630859375006], + [-85.2759765625, 82.40522460937498], + [-84.89682617187503, 82.44941406250001], + [-84.74472656250003, 82.43735351562506], + [-84.55336914062497, 82.39833984375], + [-84.36811523437495, 82.37392578125], + [-83.82363281249997, 82.35068359374998], + [-83.59067382812503, 82.32646484375002], + [-83.17568359374994, 82.18720703124998], + [-83.01015624999997, 82.14169921875003], + [-82.77421875, 82.09492187500001], + [-82.63369140625002, 82.07729492187497], + [-82.35600585937493, 82.06601562499998], + [-82.32744140624999, 82.09248046874995], + [-82.65708007812498, 82.15830078125003], + [-82.74746093750002, 82.196435546875], + [-82.70859375, 82.22871093750001], + [-82.63837890624998, 82.245751953125], + [-82.53691406250002, 82.24726562499995], + [-82.27656250000001, 82.21845703124995], + [-81.58447265624997, 82.12055664062498], + [-80.54990234374995, 82.00458984374998], + [-80.15336914062499, 81.97763671875], + [-79.90864257812495, 81.93623046875001], + [-79.685546875, 81.88588867187497], + [-79.465625, 81.85112304687499], + [-79.42485351562499, 81.85444335937495], + [-79.62949218750003, 81.93232421875001], + [-80.12983398437498, 82.02836914062505], + [-81.46826171875, 82.19238281249997], + [-81.99760742187502, 82.27827148437498], + [-82.25366210937494, 82.336328125], + [-82.44755859374993, 82.39501953125003], + [-82.45136718750001, 82.427099609375], + [-82.26889648437495, 82.46464843750002], + [-82.02324218749999, 82.49438476562503], + [-81.71777343750003, 82.50625], + [-81.68115234375003, 82.51865234375], + [-81.95859374999998, 82.56323242187503], + [-82.12250976562498, 82.60175781249998], + [-82.11684570312497, 82.62866210937503], + [-81.78535156249993, 82.64921875000005], + [-81.57968749999995, 82.64301757812504], + [-81.18886718750002, 82.594482421875], + [-80.8625, 82.57153320312503], + [-80.80966796875003, 82.58637695312504], + [-81.14663085937502, 82.71557617187497], + [-81.17807617187503, 82.74467773437505], + [-81.128173828125, 82.76171875000006], + [-81.01015625000002, 82.77905273437503], + [-80.65712890624994, 82.76909179687505], + [-80.07578125, 82.70620117187502], + [-79.03505859375, 82.67465820312498], + [-78.748779296875, 82.67939453124998], + [-78.79179687499999, 82.69389648437499], + [-79.20722656249998, 82.732763671875], + [-79.6419921875, 82.78496093749999], + [-79.83378906249999, 82.81650390625003], + [-79.97431640624993, 82.85898437499998], + [-80.14116210937499, 82.89423828124995], + [-80.15493164062497, 82.91113281250003], + [-79.88632812500003, 82.93852539062502], + [-79.18056640624997, 82.933203125], + [-78.52495117187499, 82.89111328125003], + [-77.96865234374997, 82.90634765625003], + [-77.61806640624997, 82.89584960937503], + [-77.47958984375, 82.883154296875], + [-77.22587890624999, 82.83720703125007], + [-76.42099609374998, 82.67089843750003], + [-76.33554687499998, 82.64443359374997], + [-76.24404296875, 82.6041015625], + [-76.146484375, 82.54985351562505], + [-76.00937, 82.53515625], + [-75.74433593749998, 82.57241210937502], + [-75.56562, 82.60854492187502], + [-75.64287109374999, 82.64350585937495], + [-76.08696289062496, 82.72363281250003], + [-76.18779296874999, 82.75791015624998], + [-76.40996093749996, 82.81582031249997], + [-76.908447265625, 82.91943359375003], + [-77.04121093749995, 82.96752929687497], + [-77.12490234374994, 83.00854492187497], + [-75.74492187499999, 83.04716796875002], + [-74.41416015624995, 83.01313476562501], + [-74.19775390625003, 82.989013671875], + [-74.05585937499998, 82.95537109375007], + [-73.91650390625, 82.90419921875002], + [-73.70312, 82.85185546875002], + [-73.27202148437499, 82.77158203125], + [-72.65869140625, 82.72163085937495], + [-72.77592773437499, 82.75566406250007], + [-73.23466796875002, 82.84423828125], + [-73.44189453124994, 82.90483398437499], + [-73.44072265624999, 82.94584960937499], + [-73.40380859375, 82.97714843749998], + [-73.33115234375003, 82.99877929687503], + [-72.811669921875, 83.08120117187502], + [-72.06923828125, 83.10605468750003], + [-71.98320312499996, 83.10141601562498], + [-71.40595703124995, 82.97485351562503], + [-71.13203125000001, 82.92304687499995], + [-70.94038085937495, 82.90224609375], + [-70.93300781249997, 82.91127929687497], + [-71.19833984375003, 82.96958007812503], + [-71.40239257812493, 83.00126953125002], + [-71.42353515624998, 83.02114257812497], + [-71.08481445312498, 83.08266601562497], + [-70.87055664062495, 83.09814453125003], + [-69.96992187499995, 83.11611328125005], + [-69.86767578125, 83.10961914062506], + [-69.78212890625, 83.09252929687503], + [-69.56938476562499, 83.02490234375003], + [-69.4888671875, 83.01679687499998] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Switzerland", + "iso_a2": "CH", + "iso_a3": "CHE", + "iso_n3": "756", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [9.524023437500006, 47.52421875], + [9.554394531250011, 47.511132812499994], + [9.625878906250023, 47.467041015625], + [9.609082031250011, 47.391796875], + [9.527539062500011, 47.270751953125], + [9.484277343750023, 47.17265625], + [9.4794921875, 47.097509765625], + [9.487695312500023, 47.062255859375], + [9.502343750000023, 47.062744140625], + [9.580273437500011, 47.057373046875], + [9.619921875000017, 47.057470703125], + [9.745019531250023, 47.037109375], + [9.8453125, 47.007373046874996], + [9.864648437500023, 46.975976562499994], + [9.877734375000017, 46.9376953125], + [9.996875, 46.8853515625], + [10.133496093750011, 46.851513671875], + [10.179785156250006, 46.862353515624996], + [10.349414062500017, 46.984765625], + [10.414941406250023, 46.964404296874996], + [10.45458984375, 46.8994140625], + [10.452832031250011, 46.86494140625], + [10.406054687500017, 46.73486328125], + [10.39794921875, 46.6650390625], + [10.438281250000017, 46.61884765625], + [10.442480468750006, 46.582861328125], + [10.4306640625, 46.550048828125], + [10.363085937500017, 46.5470703125], + [10.272265625000017, 46.56484375], + [10.195507812500011, 46.62109375], + [10.1375, 46.61435546875], + [10.087011718750006, 46.599902343749996], + [10.061230468750011, 46.546777343749994], + [10.038281250000011, 46.483203125], + [10.045605468750011, 46.447900390624994], + [10.081933593750023, 46.420751953125], + [10.109667968750017, 46.362841796874996], + [10.1298828125, 46.287988281249994], + [10.145214843750011, 46.253515625], + [10.128320312500023, 46.238232421875], + [10.08056640625, 46.227978515625], + [10.041015625, 46.238085937499996], + [9.9716796875, 46.327685546874996], + [9.939257812500017, 46.36181640625], + [9.884472656250011, 46.3677734375], + [9.787792968750011, 46.346044921875], + [9.639453125000017, 46.2958984375], + [9.57958984375, 46.29609375], + [9.528710937500023, 46.306201171874996], + [9.481054687500006, 46.348779296874994], + [9.440625, 46.430810546874994], + [9.427636718750023, 46.482324218749994], + [9.399316406250023, 46.4806640625], + [9.304394531250011, 46.495556640625], + [9.260156250000023, 46.4751953125], + [9.259765625, 46.391259765624994], + [9.251074218750006, 46.286767578124994], + [9.203417968750017, 46.21923828125], + [9.070996093750011, 46.102441406249994], + [9.022363281250023, 46.05146484375], + [9.003027343750006, 46.014892578125], + [8.998925781250023, 45.98310546875], + [9.019140625, 45.928125], + [9.046679687500017, 45.8755859375], + [9.023730468750017, 45.845703125], + [8.953710937500006, 45.830029296875], + [8.904296875, 45.861962890624994], + [8.885156250000023, 45.918701171875], + [8.778027343750011, 45.99619140625], + [8.826757812500006, 46.06103515625], + [8.818554687500011, 46.0771484375], + [8.641699218750006, 46.110791015625], + [8.5654296875, 46.159814453124994], + [8.458398437500023, 46.245898437499996], + [8.4384765625, 46.282861328124994], + [8.44296875, 46.402783203125], + [8.436816406250017, 46.431884765625], + [8.422558593750011, 46.446044921875], + [8.370703125, 46.445117187499996], + [8.298535156250011, 46.40341796875], + [8.23193359375, 46.341210937499994], + [8.095703125, 46.271044921874996], + [8.08154296875, 46.256005859374994], + [8.127246093750017, 46.18759765625], + [8.125195312500011, 46.1609375], + [8.014257812500006, 46.051904296874994], + [7.9931640625, 46.015917968749996], + [7.852343750000017, 45.9474609375], + [7.787890625000017, 45.921826171875], + [7.592578125000017, 45.972216796874996], + [7.53857421875, 45.978173828124994], + [7.451562500000023, 45.94443359375], + [7.327929687500017, 45.912353515625], + [7.129003906250006, 45.880419921874996], + [7.055761718750006, 45.90380859375], + [7.02109375, 45.92578125], + [7.00390625, 45.958837890625], + [6.953710937500006, 46.017138671874996], + [6.897265625000017, 46.0517578125], + [6.858007812500006, 46.089404296874996], + [6.8056640625, 46.130664062499996], + [6.772070312500006, 46.16513671875], + [6.816796875000023, 46.275195312499996], + [6.7841796875, 46.31396484375], + [6.767382812500017, 46.369189453124996], + [6.776074218750011, 46.406640625], + [6.758105468750017, 46.415771484375], + [6.578222656250006, 46.437353515625], + [6.428906250000011, 46.430517578125], + [6.321875, 46.393701171874994], + [6.234667968750017, 46.3326171875], + [6.22421875, 46.31943359375], + [6.229589843750006, 46.308447265625], + [6.27294921875, 46.252246093749996], + [6.199414062500011, 46.19306640625], + [6.086621093750011, 46.147021484374996], + [6.006640625000017, 46.142333984375], + [5.971484375000017, 46.151220703125], + [5.970019531250017, 46.214697265625], + [6.0361328125, 46.238085937499996], + [6.095898437500011, 46.27939453125], + [6.115917968750011, 46.337646484375], + [6.123242187500011, 46.37861328125], + [6.060253906250011, 46.428173828125], + [6.06796875, 46.458544921874996], + [6.10703125, 46.516064453125], + [6.129687500000017, 46.5669921875], + [6.160742187500006, 46.61103515625], + [6.28515625, 46.683056640625], + [6.41015625, 46.755419921874996], + [6.429003906250017, 46.832275390625], + [6.438574218750006, 46.92587890625], + [6.45625, 46.94833984375], + [6.624804687500017, 47.004345703125], + [6.666894531250023, 47.026513671874994], + [6.688085937500006, 47.058251953124994], + [6.820703125000023, 47.16318359375], + [6.952050781250023, 47.2671875], + [6.978515625, 47.302050781249996], + [7.000585937500006, 47.322509765625], + [7.000585937500006, 47.339453125], + [6.984082031250011, 47.3525390625], + [6.921484375, 47.361230468749994], + [6.900390625, 47.39423828125], + [6.968359375, 47.45322265625], + [7.053417968750011, 47.48935546875], + [7.136035156250017, 47.48984375], + [7.169238281250017, 47.4732421875], + [7.16748046875, 47.4537109375], + [7.203125, 47.43271484375], + [7.265722656250006, 47.42578125], + [7.343164062500023, 47.43310546875], + [7.420019531250006, 47.45517578125], + [7.467382812500006, 47.507666015625], + [7.494921875000017, 47.54736328125], + [7.615625, 47.592724609375], + [7.698046875000017, 47.569873046874996], + [7.927050781250017, 47.563867187499994], + [8.09375, 47.576171875], + [8.1982421875, 47.60693359375], + [8.327832031250011, 47.60693359375], + [8.414746093750011, 47.589599609375], + [8.430078125000023, 47.592138671875], + [8.454003906250023, 47.59619140625], + [8.477636718750006, 47.612695312499994], + [8.559472656250023, 47.6240234375], + [8.570507812500011, 47.63779296875], + [8.567089843750011, 47.651904296874996], + [8.55234375, 47.659130859375], + [8.451757812500006, 47.651806640625], + [8.413281250000011, 47.6626953125], + [8.403417968750006, 47.687792968749996], + [8.435742187500011, 47.731347656249994], + [8.509863281250006, 47.766894531249996], + [8.572656250000023, 47.775634765625], + [8.617871093750011, 47.76611328125], + [8.728320312500017, 47.700048828125], + [8.754785156250023, 47.698046875], + [8.770117187500006, 47.709912109375], + [8.793066406250006, 47.716552734375], + [8.831152343750006, 47.70361328125], + [8.8740234375, 47.6626953125], + [8.881152343750017, 47.656396484374994], + [9.127539062500006, 47.670703125], + [9.182812500000011, 47.670703125], + [9.35, 47.598925781249996], + [9.524023437500006, 47.52421875] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Chile", + "iso_a2": "CL", + "iso_a3": "CHL", + "iso_n3": "152", + "continent": "South America" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-67.57519531249997, -55.88964843750003], + [-67.61142578124998, -55.891699218750006], + [-67.69951171874999, -55.87314453125004], + [-67.83154296874997, -55.86484375000004], + [-67.84643554687497, -55.857226562499996], + [-67.84970703125003, -55.84257812500003], + [-67.83408203124995, -55.82753906249999], + [-67.76206054687503, -55.81611328124997], + [-67.54482421875, -55.825976562500024], + [-67.51728515624998, -55.8328125], + [-67.50981445312496, -55.844335937500034], + [-67.545263671875, -55.87744140625003], + [-67.57519531249997, -55.88964843750003] + ] + ], + [ + [ + [-67.28886718749999, -55.776855468749964], + [-67.32529296875003, -55.78476562499998], + [-67.35224609374993, -55.76601562499998], + [-67.39335937499996, -55.752734375000024], + [-67.55996093749997, -55.72480468750002], + [-67.56347656249997, -55.707812500000024], + [-67.546142578125, -55.68369140624999], + [-67.51279296874995, -55.662011718750016], + [-67.44882812499998, -55.640625], + [-67.39736328124997, -55.58515625], + [-67.37407226562493, -55.58935546874996], + [-67.35058593749994, -55.612109374999974], + [-67.31044921874994, -55.68867187500003], + [-67.26245117187503, -55.74375], + [-67.26728515624995, -55.762792968750034], + [-67.28886718749999, -55.776855468749964] + ] + ], + [ + [ + [-66.47211914062495, -55.22910156250002], + [-66.55170898437501, -55.27285156249996], + [-66.61113281249993, -55.26992187499999], + [-66.63017578124999, -55.25410156250005], + [-66.63662109374997, -55.234375], + [-66.62475585937497, -55.21308593750004], + [-66.59970703125, -55.19365234374999], + [-66.54155273437496, -55.16943359375003], + [-66.52314453124995, -55.165527343750036], + [-66.435791015625, -55.189746093749996], + [-66.47211914062495, -55.22910156250002] + ] + ], + [ + [ + [-67.07993164062498, -55.15380859374996], + [-67.10947265625003, -55.192089843750026], + [-67.17255859375001, -55.242578125], + [-67.25742187499998, -55.28183593750001], + [-67.33969726562495, -55.292578124999984], + [-67.399267578125, -55.27226562500002], + [-67.42939453124993, -55.23652343750002], + [-67.44326171875, -55.201171875000014], + [-67.46347656250003, -55.18173828124996], + [-67.4947265625, -55.177441406249976], + [-67.53525390625, -55.17851562500002], + [-67.58520507812497, -55.191992187500006], + [-67.69145507812493, -55.24296875], + [-67.73696289062497, -55.25644531249999], + [-67.76777343749995, -55.25957031250001], + [-68.07001953124995, -55.22109374999999], + [-68.09951171875002, -55.20683593750001], + [-68.135107421875, -55.172656249999974], + [-68.17431640625, -55.07128906250002], + [-68.30136718750003, -54.98066406250003], + [-68.10693359375003, -54.929394531249976], + [-67.87412109375003, -54.929687500000036], + [-67.424560546875, -54.96894531250004], + [-67.245263671875, -54.977636718750034], + [-67.10732421874994, -55.063574218749956], + [-67.08549804687493, -55.115234375], + [-67.07993164062498, -55.15380859374996] + ] + ], + [ + [ + [-69.70297851562503, -54.91904296875], + [-68.90078125000002, -55.01777343750004], + [-68.65351562500001, -54.957910156250016], + [-68.45800781249997, -54.95966796875002], + [-68.3998046875, -55.0419921875], + [-68.59809570312498, -55.1283203125], + [-68.61328124999997, -55.155566406250045], + [-68.585546875, -55.177734375000036], + [-68.38173828124997, -55.19160156250002], + [-68.330078125, -55.219433593750004], + [-68.28266601562495, -55.25517578125], + [-68.32275390625003, -55.30820312499997], + [-68.3265625, -55.33271484374999], + [-68.30541992187497, -55.356640624999976], + [-68.152587890625, -55.43691406249999], + [-68.08989257812502, -55.47832031249999], + [-68.05830078124998, -55.51796875], + [-68.04555664062497, -55.5875], + [-68.04833984375, -55.6431640625], + [-68.08266601562497, -55.6505859375], + [-68.15708007812503, -55.63369140625002], + [-68.22963867187497, -55.60156249999996], + [-68.293359375, -55.521386718749966], + [-68.33803710937494, -55.50527343749997], + [-68.46669921874997, -55.489062500000045], + [-68.59418945312498, -55.45], + [-68.69355468749998, -55.452246093750006], + [-68.78500976562498, -55.43564453125], + [-68.86704101562498, -55.45019531250003], + [-68.89614257812497, -55.423828124999986], + [-68.93129882812502, -55.37060546874998], + [-68.93208007812501, -55.34736328125004], + [-68.88896484375002, -55.26328124999996], + [-68.89008789062498, -55.2412109375], + [-68.91264648437496, -55.238574218749996], + [-69.00820312499997, -55.25576171875003], + [-69.04682617187493, -55.24433593750001], + [-69.15078124999997, -55.18339843750003], + [-69.19262695312497, -55.171875], + [-69.29707031249993, -55.1658203125], + [-69.35615234374998, -55.27392578125], + [-69.35922851562498, -55.300683593749945], + [-69.29902343749998, -55.36933593749999], + [-69.18085937499995, -55.47480468749998], + [-69.2408203125, -55.476757812500026], + [-69.41181640624995, -55.44423828124997], + [-69.455712890625, -55.424023437500026], + [-69.50869140624997, -55.37089843750004], + [-69.61025390624997, -55.33994140625004], + [-69.64589843749994, -55.32089843749998], + [-69.65629882812502, -55.29843750000002], + [-69.65737304687497, -55.22900390625], + [-69.67983398437502, -55.21894531249999], + [-69.82402343749999, -55.23652343750002], + [-69.85371093750001, -55.21982421874999], + [-69.86577148437496, -55.190625], + [-69.88676757812499, -55.17412109375001], + [-69.97978515625002, -55.14746093749999], + [-69.98798828125001, -55.130761718749966], + [-69.946533203125, -55.11103515625003], + [-69.92084960937501, -55.06113281249999], + [-69.88442382812494, -54.88203125000001], + [-69.70297851562503, -54.91904296875] + ] + ], + [ + [ + [-70.9916015625, -54.86796874999999], + [-70.94511718749996, -54.93134765625002], + [-70.92792968750001, -54.94296875], + [-70.80483398437497, -54.96767578124996], + [-70.74931640624993, -54.95273437500003], + [-70.61528320312499, -54.945605468749996], + [-70.534765625, -54.921289062500016], + [-70.41752929687493, -54.908886718749976], + [-70.28305664062498, -55.06591796874999], + [-70.29785156249997, -55.11376953124997], + [-70.40415039062495, -55.16562], + [-70.47558593749994, -55.17705078124998], + [-70.54345703125, -55.161328124999976], + [-70.53872070312502, -55.134960937500026], + [-70.55107421874996, -55.111914062500034], + [-70.59746093749999, -55.082031249999986], + [-70.64091796874996, -55.08486328125003], + [-70.71098632812493, -55.10693359375], + [-70.74443359375002, -55.104199218749976], + [-70.81547851562502, -55.079882812499996], + [-70.93984374999994, -55.06191406249997], + [-70.964501953125, -55.03964843749997], + [-70.96728515625003, -55.006835937500036], + [-70.99072265625, -54.990429687499976], + [-71.12036132812494, -54.93779296875], + [-71.20332031249998, -54.892968750000016], + [-71.27363281249998, -54.886914062500026], + [-71.29931640625, -54.89228515624997], + [-71.32534179687497, -54.91376953124999], + [-71.38857421874997, -54.93427734375], + [-71.406640625, -54.93085937500001], + [-71.42690429687497, -54.91376953124999], + [-71.43720703125001, -54.88925781249997], + [-71.410546875, -54.83935546875002], + [-71.37426757812497, -54.83457031250002], + [-71.19707031249993, -54.84443359374999], + [-71.08862304687497, -54.867480468749974], + [-70.9916015625, -54.86796874999999] + ] + ], + [ + [ + [-71.390478515625, -54.03281250000002], + [-71.16875, -54.11259765625002], + [-71.02192382812495, -54.111816406250036], + [-71.02285156249997, -54.16171875], + [-71.00488281249994, -54.24667968749998], + [-71.02802734374995, -54.28115234374999], + [-71.08295898437495, -54.31630859374995], + [-71.11752929687498, -54.36630859375001], + [-71.14326171874998, -54.374023437499986], + [-71.30463867187501, -54.31357421875002], + [-71.473291015625, -54.23115234375001], + [-71.55810546874994, -54.24560546875003], + [-71.67060546874995, -54.225390625], + [-71.76123046874994, -54.22978515625], + [-71.81757812499995, -54.276464843750006], + [-71.94853515624999, -54.300878906250006], + [-71.97236328124998, -54.207226562500026], + [-72.091552734375, -54.11875], + [-72.21044921874997, -54.04775390624995], + [-72.14604492187502, -53.93886718749997], + [-72.0689453125, -53.921289062499945], + [-71.996484375, -53.884863281249984], + [-71.70512695312496, -53.92333984375001], + [-71.55415039062495, -53.956054687500014], + [-71.390478515625, -54.03281250000002] + ] + ], + [ + [ + [-72.92324218749997, -53.481640625], + [-72.89628906249999, -53.56279296875001], + [-72.88222656249997, -53.578320312499976], + [-72.809375, -53.565332031249994], + [-72.68549804687495, -53.55791015624999], + [-72.48227539062503, -53.58808593750001], + [-72.45922851562494, -53.598828124999976], + [-72.37290039062503, -53.6875], + [-72.30668945312496, -53.725390625], + [-72.20541992187503, -53.80742187500002], + [-72.30625, -53.86210937499997], + [-72.36596679687494, -53.940820312500016], + [-72.36914062499997, -53.98076171874998], + [-72.408544921875, -54.00380859374997], + [-72.47050781249993, -54.02773437499996], + [-72.56289062500002, -54.07373046875001], + [-72.67656249999999, -54.07890625], + [-72.78862304687499, -54.103125], + [-72.84038085937496, -54.12509765624999], + [-72.87099609375, -54.12656250000002], + [-72.90727539062502, -54.114648437499994], + [-72.94609375000002, -54.09208984375002], + [-72.95859374999998, -54.065917968750014], + [-72.88173828124997, -54.041601562500034], + [-72.78168945312501, -53.95478515625002], + [-72.76376953125, -53.86484375], + [-72.87172851562497, -53.84853515624996], + [-72.93613281250003, -53.86083984374998], + [-72.98422851562498, -53.860546875], + [-73.03945312499994, -53.83281250000004], + [-73.07304687499993, -53.87529296874999], + [-73.085546875, -53.91591796875001], + [-73.07084960937493, -53.97802734374996], + [-73.08076171875001, -53.99804687499995], + [-73.119970703125, -54.009375], + [-73.21064453125001, -53.98583984374995], + [-73.30473632812499, -53.943945312500034], + [-73.312158203125, -53.91962890624996], + [-73.29287109374997, -53.835839843749945], + [-73.29492187500003, -53.792089843750006], + [-73.31435546875, -53.72919921874998], + [-73.32480468749998, -53.72265624999998], + [-73.36010742187497, -53.724023437499994], + [-73.470947265625, -53.736132812499974], + [-73.581640625, -53.65546874999997], + [-73.64150390625002, -53.57031250000003], + [-73.845458984375, -53.54580078125001], + [-73.68652343749997, -53.42685546875003], + [-73.44707031249993, -53.41005859374998], + [-73.365869140625, -53.47021484374998], + [-73.09936523437497, -53.51191406250003], + [-73.11533203125003, -53.44804687499999], + [-73.11088867187502, -53.42519531249995], + [-73.07431640625003, -53.396777343750024], + [-73.05361328125, -53.394433593749994], + [-73.02207031249995, -53.41455078125001], + [-72.97094726562503, -53.42304687500005], + [-72.947265625, -53.44248046875001], + [-72.92324218749997, -53.481640625] + ] + ], + [ + [ + [-74.38574218749994, -52.92236328125001], + [-74.36933593749998, -52.931445312499996], + [-74.32998046874997, -52.929296875], + [-74.27460937499995, -52.94550781250002], + [-74.06596679687499, -52.96533203124997], + [-73.87919921874996, -53.012207031250014], + [-73.78178710937502, -53.05605468749998], + [-73.65400390624998, -53.06982421875003], + [-73.54926757812498, -53.12568359375004], + [-73.50454101562502, -53.140039062499945], + [-73.45058593749994, -53.144335937500024], + [-73.31035156249996, -53.24765625000002], + [-73.30249023437497, -53.25947265625003], + [-73.14335937499996, -53.34091796875001], + [-73.13520507812498, -53.35390625], + [-73.22573242187497, -53.35839843750002], + [-73.40937, -53.32050781250003], + [-73.50102539062502, -53.31845703124997], + [-73.56728515625, -53.3068359375], + [-73.5828125, -53.30019531249998], + [-73.59594726562497, -53.25292968750003], + [-73.61708984375002, -53.2296875], + [-73.79350585937499, -53.120703125], + [-73.86694335937494, -53.096875], + [-73.99399414062498, -53.07578125], + [-74.13857421874994, -53.09052734374998], + [-74.23637695312499, -53.07646484375005], + [-74.27021484374995, -53.08154296875002], + [-74.414404296875, -52.994921875000045], + [-74.55830078124993, -52.921875], + [-74.61992187499996, -52.83476562500002], + [-74.71152343749998, -52.768164062500034], + [-74.71201171874998, -52.74873046874998], + [-74.66997070312493, -52.73388671874998], + [-74.57153320312497, -52.77128906250005], + [-74.47456054687501, -52.83564453125002], + [-74.42226562500002, -52.86005859375002], + [-74.38574218749994, -52.92236328125001] + ] + ], + [ + [ + [-69.16704101562499, -52.66757812499997], + [-69.079931640625, -52.674316406250014], + [-68.78979492187497, -52.576757812500034], + [-68.75751953124995, -52.58203125], + [-68.65922851562502, -52.631542968750004], + [-68.62993164062499, -52.65263671875004], + [-68.631689453125, -52.94951171875003], + [-68.633447265625, -53.241894531250004], + [-68.63505859374996, -53.51542968750004], + [-68.63666992187495, -53.78886718749997], + [-68.63823242187499, -54.05292968750003], + [-68.63979492187497, -54.32402343750002], + [-68.64750976562493, -54.62783203125], + [-68.65322265624994, -54.85361328124999], + [-68.803857421875, -54.85361328124999], + [-68.84355468749999, -54.8767578125], + [-69.081640625, -54.90986328125], + [-69.48627929687493, -54.85888671875], + [-69.58754882812497, -54.812792968750024], + [-69.72343750000002, -54.71210937500003], + [-69.771826171875, -54.739160156249945], + [-69.89946289062499, -54.78183593750003], + [-70.03051757812497, -54.81552734374996], + [-70.13808593750002, -54.81923828125001], + [-70.23779296875, -54.77753906250004], + [-70.25908203124999, -54.756347656249986], + [-70.28173828124997, -54.751757812500024], + [-70.49716796875, -54.80957031249999], + [-70.73515624999999, -54.75058593749996], + [-70.92470703124997, -54.71435546874996], + [-71.229248046875, -54.69414062500001], + [-71.44091796874997, -54.61962890625002], + [-71.83154296874997, -54.62617187500002], + [-71.90156249999993, -54.60156249999998], + [-71.92773437500003, -54.52871093749997], + [-71.90698242187497, -54.49482421875], + [-71.82343750000001, -54.47441406250001], + [-71.80014648437498, -54.433984374999945], + [-71.71582031250003, -54.44365234375005], + [-71.606298828125, -54.49716796875003], + [-71.57275390625, -54.4953125], + [-71.500390625, -54.44492187500004], + [-71.39340820312498, -54.40019531249999], + [-71.355224609375, -54.395410156249994], + [-71.15883789062497, -54.45058593749995], + [-71.07993164062498, -54.444238281249994], + [-70.96645507812494, -54.41953125000002], + [-70.94619140625, -54.398046875], + [-70.92817382812495, -54.36005859374998], + [-70.89824218749999, -54.337890625], + [-70.79726562500002, -54.32724609374996], + [-70.69882812499995, -54.348828125], + [-70.68754882812496, -54.414746093750026], + [-70.70112304687498, -54.48544921875004], + [-70.572998046875, -54.50439453124999], + [-70.41791992187501, -54.502246093749996], + [-70.31098632812498, -54.52851562500002], + [-70.29765624999993, -54.48554687499997], + [-70.46831054687499, -54.373242187500004], + [-70.53999023437501, -54.30341796874999], + [-70.63613281249997, -54.26230468749996], + [-70.75986328124995, -54.24130859375004], + [-70.86308593749993, -54.11044921875003], + [-70.85673828124996, -53.995800781250026], + [-70.86772460937499, -53.88417968750002], + [-70.64448242187498, -53.82285156249996], + [-70.69560546875002, -53.72744140624998], + [-70.61875, -53.65507812499998], + [-70.53129882812502, -53.627343750000016], + [-70.44316406250002, -53.89345703124996], + [-70.37973632812495, -53.98671874999995], + [-70.460546875, -54.005664062499996], + [-70.62983398437493, -54.005566406249976], + [-70.53530273437494, -54.136132812500016], + [-70.37998046875, -54.18066406250003], + [-70.24609375, -54.27744140625003], + [-70.24335937499998, -54.347656250000036], + [-70.16899414062502, -54.379296875], + [-69.99013671875, -54.38134765624997], + [-69.86699218749996, -54.36748046874999], + [-69.80908203124997, -54.32080078124998], + [-69.74184570312494, -54.30585937500005], + [-69.62167968749998, -54.3640625], + [-69.41928710937495, -54.40712890624998], + [-69.36479492187496, -54.43759765624997], + [-69.32509765624997, -54.48818359374997], + [-69.32246093749995, -54.542675781249976], + [-69.31206054687496, -54.57148437499998], + [-69.25317382812494, -54.557421875000045], + [-69.169189453125, -54.48330078124996], + [-69.12788085937501, -54.45761718749996], + [-69.07724609375, -54.445019531249976], + [-69.04521484374996, -54.42841796874997], + [-69.04433593749997, -54.40673828124999], + [-69.19565429687495, -54.35439453124999], + [-69.98813476562503, -54.10908203125001], + [-70.085595703125, -54.01113281249995], + [-70.15112304687503, -53.88808593750002], + [-70.148828125, -53.7611328125], + [-70.09111328124996, -53.72177734374998], + [-69.94970703125003, -53.67158203124997], + [-69.68974609374999, -53.60087890625004], + [-69.38994140625002, -53.49941406249997], + [-69.35244140625002, -53.479980468750014], + [-69.35595703125003, -53.41630859375001], + [-69.39355468749994, -53.3734375], + [-69.51254882812495, -53.34199218749997], + [-69.63701171874999, -53.33408203125004], + [-69.755615234375, -53.33720703124997], + [-69.87412109374998, -53.35048828125001], + [-70.09038085937499, -53.41816406250003], + [-70.21284179687498, -53.41396484374997], + [-70.32929687499998, -53.37763671875003], + [-70.415673828125, -53.30478515625003], + [-70.46025390624993, -53.20625], + [-70.45996093749997, -53.143359375], + [-70.44335937499994, -53.085546875000034], + [-70.39067382812496, -53.02646484374999], + [-70.32001953124995, -53.000683593749976], + [-70.25634765624997, -53.00410156249996], + [-70.19648437499993, -52.99023437499998], + [-70.16088867187497, -52.96992187500002], + [-70.130615234375, -52.942773437499994], + [-70.13955078124997, -52.919335937500016], + [-70.162744140625, -52.89902343749996], + [-70.2591796875, -52.857226562499974], + [-70.29736328124997, -52.816992187500034], + [-70.38012695312494, -52.75195312500002], + [-70.33491210937498, -52.73378906249996], + [-70.18964843749995, -52.72363281250002], + [-70.088232421875, -52.76855468750003], + [-69.99355468749997, -52.82128906250002], + [-69.93544921874997, -52.82109374999998], + [-69.88320312499997, -52.79902343750002], + [-69.76357421875002, -52.731347656249994], + [-69.66328124999993, -52.64628906249999], + [-69.57187, -52.549316406250036], + [-69.498388671875, -52.49140624999996], + [-69.41406249999997, -52.48623046874997], + [-69.16704101562499, -52.66757812499997] + ] + ], + [ + [ + [-74.14218749999998, -51.93105468750002], + [-74.17207031249993, -51.94208984374996], + [-74.28310546875, -51.91875], + [-74.33867187499996, -51.89794921875003], + [-74.42363281249993, -51.845117187500016], + [-74.437109375, -51.790625], + [-74.47539062499999, -51.72568359375002], + [-74.45078124999995, -51.72490234375004], + [-74.36210937500002, -51.75068359375005], + [-74.32568359374997, -51.77021484375003], + [-74.27705078125001, -51.81162109375003], + [-74.13339843749995, -51.870898437500024], + [-74.11542968749995, -51.88847656250005], + [-74.11889648437503, -51.911132812499964], + [-74.14218749999998, -51.93105468750002] + ] + ], + [ + [ + [-74.82294921874993, -51.63017578125001], + [-74.780126953125, -51.82470703125003], + [-74.74951171874997, -51.85185546875005], + [-74.64746093749997, -51.86621093749996], + [-74.53681640624998, -51.96513671875004], + [-74.53183593749995, -51.9919921875], + [-74.66596679687501, -52.16005859374996], + [-74.69448242187497, -52.27919921874999], + [-74.85180664062494, -52.27070312500003], + [-74.91772460937497, -52.152246093749966], + [-75.01713867187496, -52.03789062500003], + [-75.05068359374997, -51.90390625], + [-75.10537109375, -51.78886718750001], + [-75.00810546874999, -51.72373046874998], + [-74.915185546875, -51.73828125], + [-74.90966796875, -51.65], + [-74.82294921874993, -51.63017578125001] + ] + ], + [ + [ + [-74.55864257812499, -51.27705078125001], + [-74.560888671875, -51.36083984375003], + [-74.59257812499999, -51.3875], + [-74.62036132812497, -51.395703125000026], + [-74.69072265624999, -51.370214843749984], + [-74.73090820312501, -51.36738281250003], + [-74.79736328124997, -51.41171875], + [-74.85332031249999, -51.43417968749996], + [-74.936669921875, -51.42832031250001], + [-75.04736328125, -51.39833984375003], + [-75.14628906249999, -51.52431640625003], + [-75.19243164062499, -51.566699218750045], + [-75.28911132812496, -51.625390625000016], + [-75.30004882812497, -51.5564453125], + [-75.23847656249995, -51.453515625], + [-75.21000976562502, -51.383300781249986], + [-75.15366210937498, -51.278808593750014], + [-75.04033203124999, -51.31816406250004], + [-74.88144531250003, -51.279492187499976], + [-74.73666992187503, -51.20761718749999], + [-74.61157226562494, -51.20712890624998], + [-74.57050781249993, -51.24541015625005], + [-74.55864257812499, -51.27705078125001] + ] + ], + [ + [ + [-75.302001953125, -50.67998046875005], + [-75.33046874999994, -50.77236328124996], + [-75.411376953125, -50.76435546875001], + [-75.43852539062502, -50.74111328124999], + [-75.45263671874997, -50.68251953124995], + [-75.47739257812503, -50.65419921874995], + [-75.44267578124999, -50.59550781249999], + [-75.419775390625, -50.53037109375004], + [-75.42763671875002, -50.48056640625002], + [-75.3037109375, -50.483984375], + [-75.15615234374997, -50.49677734375003], + [-75.11533203124998, -50.510449218749976], + [-75.16044921874993, -50.55439453125005], + [-75.20341796874999, -50.580664062499984], + [-75.29233398437498, -50.596875], + [-75.302001953125, -50.67998046875005] + ] + ], + [ + [ + [-75.05478515625, -50.29609375], + [-75.25039062499997, -50.376269531249996], + [-75.30786132812494, -50.34306640624998], + [-75.44912109374997, -50.34335937500004], + [-75.41210937499997, -50.25664062500005], + [-75.3978515625, -50.19267578124999], + [-75.37670898437494, -50.167968750000014], + [-75.36884765624995, -50.112695312499945], + [-75.32666015624997, -50.01181640625], + [-75.20966796874993, -50.04541015625001], + [-75.12255859374994, -50.05527343749997], + [-75.004248046875, -50.088671875000024], + [-74.8759765625, -50.10996093750001], + [-74.83857421875001, -50.197265625000036], + [-74.96337890625003, -50.23730468750002], + [-75.05478515625, -50.29609375] + ] + ], + [ + [ + [-75.106689453125, -48.83652343750001], + [-75.11508789062503, -48.91601562499996], + [-75.2626953125, -49.06894531250003], + [-75.38994140624999, -49.15917968750002], + [-75.50610351562503, -49.23066406250002], + [-75.58037109374996, -49.22998046874997], + [-75.64116210937499, -49.195410156250034], + [-75.57285156250003, -49.13886718749997], + [-75.48764648437498, -49.082421875000016], + [-75.51455078124997, -49.00957031250001], + [-75.54013671875003, -48.988476562499976], + [-75.576171875, -48.98076171875], + [-75.63784179687494, -48.94257812500004], + [-75.61914062499994, -48.88593750000005], + [-75.58310546874998, -48.85888671874995], + [-75.53525390625, -48.838183593749996], + [-75.49047851562494, -48.850488281250016], + [-75.29726562500002, -48.810644531249984], + [-75.236181640625, -48.77861328125003], + [-75.11860351562495, -48.77294921875003], + [-75.106689453125, -48.83652343750001] + ] + ], + [ + [ + [-74.47617187499998, -49.14785156250002], + [-74.46679687500003, -49.29453124999998], + [-74.48359374999998, -49.44189453124998], + [-74.5220703125, -49.62294921875], + [-74.51577148437497, -49.6595703125], + [-74.47084960937497, -49.66855468749997], + [-74.458837890625, -49.69111328125003], + [-74.47197265625002, -49.78623046874996], + [-74.49609374999994, -49.85947265624996], + [-74.542578125, -49.91914062500004], + [-74.56982421874997, -49.990722656249964], + [-74.59472656249997, -50.00664062500001], + [-74.703369140625, -50.019238281250004], + [-74.76298828124996, -50.01142578125001], + [-74.81083984374996, -49.929687499999964], + [-74.82470703125003, -49.87949218750004], + [-74.821923828125, -49.813867187499994], + [-74.88041992187502, -49.72587890625001], + [-74.88222656250002, -49.69218749999999], + [-74.85932617187498, -49.63417968749998], + [-74.81201171875, -49.605273437500045], + [-74.80483398437497, -49.51601562499998], + [-74.781005859375, -49.489257812500036], + [-74.72705078125003, -49.452343749999976], + [-74.71884765624995, -49.43701171874996], + [-74.72382812499998, -49.42382812500003], + [-74.74384765624998, -49.42246093750001], + [-74.960107421875, -49.533007812499974], + [-74.98129882812495, -49.56416015625002], + [-74.99082031250003, -49.60566406250003], + [-74.99350585937495, -49.751757812500045], + [-75.03154296874996, -49.836230468750024], + [-75.06601562499998, -49.85234375000002], + [-75.16694335937493, -49.85595703124996], + [-75.30009765624996, -49.8474609375], + [-75.45117187500003, -49.769921875000016], + [-75.54980468749994, -49.79130859375002], + [-75.57011718750002, -49.6970703125], + [-75.52075195312497, -49.62167968750001], + [-75.33706054687497, -49.62822265625001], + [-75.30585937499998, -49.49404296875003], + [-75.36420898437498, -49.4625], + [-75.428857421875, -49.40839843749999], + [-75.46748046874995, -49.35888671875003], + [-75.43315429687499, -49.32207031249999], + [-75.32666015624997, -49.268652343750034], + [-75.26962890624998, -49.26289062500001], + [-75.21684570312499, -49.292773437499974], + [-75.08603515624998, -49.27021484375], + [-75.09370117187493, -49.185351562500024], + [-75.21015624999995, -49.14804687499998], + [-75.184228515625, -49.08359375], + [-75.03710937499994, -49.02207031249998], + [-74.94921875, -48.960156249999976], + [-74.94521484374997, -48.88945312500005], + [-74.98076171875002, -48.818847656249964], + [-74.96953125, -48.79130859375004], + [-74.89624023437503, -48.73320312500002], + [-74.79345703124997, -48.70507812499997], + [-74.74667968750003, -48.708886718749945], + [-74.65156250000001, -48.74990234374995], + [-74.56660156249993, -48.75478515624997], + [-74.54609374999993, -48.76689453125004], + [-74.5306640625, -48.81259765625003], + [-74.47617187499998, -49.14785156250002] + ] + ], + [ + [ + [-75.51025390624997, -48.76347656250005], + [-75.62285156249999, -48.76464843750003], + [-75.65092773437496, -48.58632812500002], + [-75.51845703124997, -48.32880859374997], + [-75.509033203125, -48.23066406250004], + [-75.55351562499999, -48.156738281249986], + [-75.57148437499993, -48.095898437500026], + [-75.56069335937494, -48.070898437500006], + [-75.39140625000002, -48.01972656249997], + [-75.33837890624994, -48.07402343750002], + [-75.27548828125003, -48.21845703125004], + [-75.155517578125, -48.425195312499966], + [-75.15849609374999, -48.62265624999996], + [-75.22509765624997, -48.671386718750036], + [-75.433984375, -48.721191406249964], + [-75.51025390624997, -48.76347656250005] + ] + ], + [ + [ + [-74.56728515625, -48.591992187500026], + [-74.58627929687503, -48.61572265624997], + [-74.7095703125, -48.60117187500003], + [-74.92304687499998, -48.62646484375003], + [-75.012841796875, -48.53574218750002], + [-75.0521484375, -48.39140625000002], + [-75.07890624999993, -48.36152343749997], + [-75.13193359375, -48.279296875], + [-75.15849609374999, -48.22529296875001], + [-75.21289062499997, -48.141699218750034], + [-75.23388671874997, -48.05341796875], + [-75.24726562499995, -48.02675781249998], + [-75.19829101562502, -47.974609375000014], + [-74.97509765625003, -47.92285156250004], + [-74.895654296875, -47.839355468749986], + [-74.82744140624996, -47.85039062500002], + [-74.84619140624997, -48.02080078125], + [-74.80522460937496, -48.07822265624998], + [-74.72929687499996, -48.12587890625001], + [-74.71523437500002, -48.145507812500014], + [-74.70239257812497, -48.205859375000045], + [-74.66435546874996, -48.29931640625], + [-74.61513671874997, -48.34306640625003], + [-74.60244140624994, -48.37031249999998], + [-74.60014648437502, -48.39306640625], + [-74.61821289062496, -48.425195312499966], + [-74.56728515625, -48.591992187500026] + ] + ], + [ + [ + [-75.11220703124997, -47.8376953125], + [-75.18583984374996, -47.85068359374999], + [-75.1943359375, -47.81806640625001], + [-75.26103515625002, -47.76386718749998], + [-75.203125, -47.72802734374996], + [-75.08984374999994, -47.69062], + [-75.00395507812496, -47.69472656250001], + [-74.92646484374998, -47.72314453125003], + [-74.91601562499997, -47.75664062500002], + [-75.05126953125, -47.80048828124998], + [-75.08447265625, -47.82451171874999], + [-75.11220703124997, -47.8376953125] + ] + ], + [ + [ + [-74.31289062500002, -45.69150390625002], + [-74.36845703124999, -45.73583984375], + [-74.46552734374995, -45.757226562499994], + [-74.56162109374998, -45.72246093750002], + [-74.677734375, -45.73857421875002], + [-74.68984375, -45.66259765625], + [-74.64643554687495, -45.6], + [-74.55839843749996, -45.52558593749997], + [-74.49467773437493, -45.42587890624999], + [-74.50234375, -45.285156250000014], + [-74.45, -45.25292968750003], + [-74.421875, -45.20322265625002], + [-74.310546875, -45.17265625000002], + [-74.28540039062503, -45.27724609375001], + [-74.3154296875, -45.464062500000054], + [-74.24003906250002, -45.57451171874999], + [-74.22919921874993, -45.61132812500003], + [-74.243896484375, -45.65361328125003], + [-74.31289062500002, -45.69150390625002] + ] + ], + [ + [ + [-75.04248046874997, -44.890136718750014], + [-75.06748046875, -44.906542968749974], + [-75.09873046874998, -44.90175781249998], + [-75.12421874999993, -44.869921874999974], + [-75.14213867187493, -44.815625], + [-75.10742187499997, -44.79511718750001], + [-75.07949218749997, -44.79511718750001], + [-75.04843749999995, -44.823925781250026], + [-75.03222656250003, -44.87050781250001], + [-75.04248046874997, -44.890136718750014] + ] + ], + [ + [ + [-73.63217773437498, -44.82148437499997], + [-73.66484374999999, -44.83291015624998], + [-73.694580078125, -44.83115234374998], + [-73.72475585937502, -44.796875], + [-73.73486328124994, -44.75166015625004], + [-73.800146484375, -44.68408203124996], + [-73.81845703125, -44.65214843750002], + [-73.81699218749998, -44.61396484374997], + [-73.77949218749998, -44.55917968749999], + [-73.72392578124993, -44.544238281249974], + [-73.68647460937495, -44.54628906249995], + [-73.64121093749998, -44.61083984374996], + [-73.62822265624999, -44.68076171874999], + [-73.61660156250002, -44.75292968750003], + [-73.63217773437498, -44.82148437499997] + ] + ], + [ + [ + [-72.98613281249999, -44.780078124999974], + [-73.22846679687498, -44.85996093749999], + [-73.35, -44.83320312500004], + [-73.39707031249998, -44.77431640624995], + [-73.42006835937494, -44.72480468749998], + [-73.44506835937497, -44.641015624999966], + [-73.40366210937498, -44.596093749999966], + [-73.31494140625003, -44.531347656250006], + [-73.28198242187497, -44.48955078125002], + [-73.266015625, -44.44023437500002], + [-73.27158203124998, -44.394140625000034], + [-73.26000976562503, -44.35029296874998], + [-73.20771484374993, -44.33496093749997], + [-73.02841796875, -44.38408203125003], + [-72.84243164062494, -44.457714843750026], + [-72.7763671875, -44.50859374999999], + [-72.76406249999997, -44.54902343749997], + [-72.8453125, -44.63847656249999], + [-72.89716796874998, -44.71201171874996], + [-72.98613281249999, -44.780078124999974] + ] + ], + [ + [ + [-73.73535156249997, -44.39453125000003], + [-73.78457031249994, -44.4375], + [-73.86230468749997, -44.44511718750003], + [-73.98330078125002, -44.494824218750026], + [-73.99604492187495, -44.53798828125004], + [-74.00205078125003, -44.59091796874998], + [-73.91855468749998, -44.6546875], + [-73.87739257812495, -44.72880859375], + [-73.82788085937497, -44.83984374999997], + [-73.792138671875, -44.945800781249986], + [-73.79536132812493, -44.978613281250006], + [-73.78647460937498, -45.03359375], + [-73.72714843749998, -45.11904296875001], + [-73.72167968750003, -45.157617187499966], + [-73.728173828125, -45.195898437500034], + [-73.752099609375, -45.26679687500001], + [-73.77099609375003, -45.27656250000004], + [-73.82988281249993, -45.28349609375003], + [-73.83447265625, -45.3265625], + [-73.848974609375, -45.340625], + [-74.016259765625, -45.344921875000026], + [-74.09907226562498, -45.32539062500004], + [-74.08925781249994, -45.195703125], + [-74.19521484374994, -45.14482421875003], + [-74.26796875000002, -45.05898437499995], + [-74.34990234375002, -44.91083984374997], + [-74.41875, -44.865234375], + [-74.49882812499999, -44.748144531250034], + [-74.61777343749998, -44.64794921874996], + [-74.48051757812499, -44.58457031250002], + [-74.50180664062498, -44.47353515624995], + [-74.42167968749999, -44.43544921875001], + [-74.30122070312495, -44.395703125], + [-74.2125, -44.42695312499997], + [-74.13281250000003, -44.41591796875004], + [-74.09721679687496, -44.38935546875004], + [-74.10810546874995, -44.275878906250014], + [-74.0828125, -44.186425781249994], + [-73.99492187499999, -44.140234375], + [-73.90019531249996, -44.13486328124998], + [-73.86455078124999, -44.185351562500045], + [-73.81777343749997, -44.23496093750002], + [-73.70322265624998, -44.27412109375001], + [-73.7037109375, -44.32539062499997], + [-73.73535156249997, -44.39453125000003] + ] + ], + [ + [ + [-73.81064453125003, -43.827246093750006], + [-73.7896484375, -43.87646484375], + [-73.833642578125, -43.88320312499995], + [-73.90415039062498, -43.87539062499995], + [-73.93828124999999, -43.91425781249997], + [-73.95566406249998, -43.921972656250034], + [-74.11777343749998, -43.8875], + [-74.14296874999997, -43.872167968750006], + [-74.13994140624996, -43.82099609374998], + [-73.96718749999994, -43.816503906250034], + [-73.85693359374994, -43.783789062500034], + [-73.84140624999998, -43.78896484375002], + [-73.81064453125003, -43.827246093750006] + ] + ], + [ + [ + [-74.66875, -43.6078125], + [-74.81044921874997, -43.625390625], + [-74.84267578124997, -43.595507812500045], + [-74.84199218749998, -43.57031249999997], + [-74.81767578125002, -43.54941406249998], + [-74.74501953124997, -43.53593749999999], + [-74.69746093749995, -43.55302734375], + [-74.67265625, -43.57744140625], + [-74.66479492187494, -43.599609375], + [-74.66875, -43.6078125] + ] + ], + [ + [ + [-73.77338867187498, -43.3458984375], + [-73.84858398437493, -43.366796875], + [-73.918701171875, -43.37197265624998], + [-73.98994140624995, -43.35664062499997], + [-74.114404296875, -43.35791015624996], + [-74.23857421874999, -43.31884765625], + [-74.35493164062498, -43.26357421875001], + [-74.387353515625, -43.231640625], + [-74.37314453124995, -43.18574218749997], + [-74.28935546874993, -43.079492187499994], + [-74.20947265625, -42.87871093750003], + [-74.15629882812502, -42.590527343750026], + [-74.19882812499998, -42.481347656249994], + [-74.19355468749995, -42.43603515625], + [-74.174072265625, -42.38154296875], + [-74.16435546874996, -42.32548828125003], + [-74.17031250000002, -42.26894531249998], + [-74.16020507812502, -42.21640625000002], + [-74.07231445312496, -42.105859374999966], + [-74.05937, -42.05625], + [-74.05683593749998, -42.00234375000002], + [-74.01879882812497, -41.89091796875006], + [-74.03051757812497, -41.85400390625], + [-74.06303710937502, -41.82275390625003], + [-74.03666992187496, -41.79550781249998], + [-73.73095703124994, -41.87724609375002], + [-73.52783203124997, -41.89628906249999], + [-73.51694335937495, -41.980859375], + [-73.47778320312497, -42.04716796875], + [-73.45449218749994, -42.16591796874995], + [-73.42290039062499, -42.192871093750014], + [-73.43925781249993, -42.277832031250014], + [-73.5328125, -42.314453125000014], + [-73.524560546875, -42.39257812500003], + [-73.47080078124998, -42.46630859375004], + [-73.54926757812498, -42.492578124999966], + [-73.63388671874998, -42.50820312499995], + [-73.65346679687497, -42.528710937499966], + [-73.71474609375002, -42.54472656250003], + [-73.78925781249993, -42.58574218750003], + [-73.76684570312497, -42.621875], + [-73.67304687499995, -42.704394531250045], + [-73.56826171875002, -42.76162109374998], + [-73.51074218750003, -42.84716796875], + [-73.43632812499996, -42.9365234375], + [-73.47265625, -42.993261718750006], + [-73.54082031249993, -43.07373046874997], + [-73.64960937499998, -43.127148437500026], + [-73.74965820312494, -43.15908203124995], + [-73.73789062500003, -43.29140625], + [-73.77338867187498, -43.3458984375] + ] + ], + [ + [ + [-78.80415039062501, -33.646484374999986], + [-78.98334960937493, -33.667773437499974], + [-78.98945312499993, -33.66171874999998], + [-78.97929687499999, -33.64414062500005], + [-78.93813476562497, -33.61357421875003], + [-78.88828125, -33.5763671875], + [-78.87744140625003, -33.57519531250003], + [-78.859033203125, -33.578125], + [-78.83818359375002, -33.58505859374999], + [-78.78466796874994, -33.61015625], + [-78.76894531249994, -33.62734375], + [-78.77470703124996, -33.64160156249997], + [-78.80415039062501, -33.646484374999986] + ] + ], + [ + [ + [-109.27998046874994, -27.14042968749996], + [-109.434130859375, -27.171289062500023], + [-109.42915039062495, -27.1162109375], + [-109.39047851562499, -27.068359375000014], + [-109.27646484374993, -27.09589843750004], + [-109.22285156249994, -27.10107421875003], + [-109.27998046874994, -27.14042968749996] + ] + ], + [ + [ + [-67.70732421874996, -22.889160156250014], + [-67.57993164062495, -22.89169921874999], + [-67.36225585937493, -22.85517578125001], + [-67.19487304687493, -22.821679687500037], + [-67.00878906249994, -23.00136718750005], + [-67.08974609375002, -23.24511718749997], + [-67.219140625, -23.63398437499997], + [-67.31914062499993, -23.93466796875002], + [-67.335595703125, -23.974804687500026], + [-67.35620117187503, -24.033789062499963], + [-67.57177734374997, -24.118945312500003], + [-67.88623046875, -24.243359375000026], + [-68.04736328124997, -24.308300781250026], + [-68.25029296875002, -24.391992187500023], + [-68.29951171875001, -24.46035156250001], + [-68.35810546874995, -24.497265624999983], + [-68.42255859374993, -24.54511718750004], + [-68.44711914062498, -24.596972656250045], + [-68.50727539062495, -24.62978515624998], + [-68.56201171875, -24.74736328125003], + [-68.56201171875, -24.83769531249996], + [-68.52705078124998, -24.899218749999974], + [-68.46630859374997, -24.925195312500023], + [-68.44711914062498, -24.998925781250037], + [-68.42802734374999, -25.050976562499983], + [-68.38422851562495, -25.091894531249977], + [-68.39521484374995, -25.124707031249997], + [-68.43071289062499, -25.149316406250037], + [-68.49633789062494, -25.16298828124998], + [-68.54082031249996, -25.23671875], + [-68.59208984375002, -25.420019531250034], + [-68.60029296874998, -25.48564453124999], + [-68.54189453125, -25.65156250000004], + [-68.51083984374998, -25.74101562499996], + [-68.4267578125, -26.06542968749997], + [-68.41450195312498, -26.153710937500023], + [-68.52983398437493, -26.276953125], + [-68.57578124999998, -26.351953125], + [-68.59218749999994, -26.418066406249963], + [-68.59160156249999, -26.47041015624997], + [-68.58115234375, -26.518359374999974], + [-68.48510742187497, -26.670312500000023], + [-68.37333984374993, -26.806445312500045], + [-68.31865234374999, -26.877539062499963], + [-68.31865234374999, -26.973242187500006], + [-68.34599609374996, -27.02792968750005], + [-68.40537109374998, -27.04814453124999], + [-68.53735351562497, -27.085351562500023], + [-68.59208984375002, -27.140039062499966], + [-68.652197265625, -27.148339843749966], + [-68.70961914062497, -27.104492187500014], + [-68.76977539062497, -27.11542968750001], + [-68.84633789062494, -27.153710937499994], + [-68.87509765625003, -27.24667968750002], + [-68.94199218749998, -27.40517578124998], + [-68.99941406249994, -27.44902343750003], + [-69.04218749999995, -27.570019531249997], + [-69.11850585937498, -27.743554687499994], + [-69.1552734375, -27.848144531249986], + [-69.17441406249998, -27.924707031250037], + [-69.251220703125, -27.97363281249997], + [-69.34072265624994, -28.070800781249957], + [-69.40957031250002, -28.16533203125003], + [-69.4369140625, -28.192675781250017], + [-69.4888671875, -28.200878906249997], + [-69.52714843749999, -28.28564453125003], + [-69.65693359374995, -28.413574218749986], + [-69.68789062499997, -28.56201171875003], + [-69.73491210937496, -28.64111328124997], + [-69.74316406249994, -28.783886718750026], + [-69.81484375, -29.045507812500034], + [-69.82788085937497, -29.10322265624997], + [-69.90034179687498, -29.148828125000023], + [-69.99560546874994, -29.25], + [-70.02680664062501, -29.324023437500017], + [-69.98261718749998, -29.54541015625], + [-69.92763671874997, -29.76914062500002], + [-69.92412109374996, -29.87402343749997], + [-69.94545898437494, -30.01640625000003], + [-69.95996093749997, -30.078320312500026], + [-69.92353515625001, -30.10390625], + [-69.86337890625, -30.12031249999997], + [-69.84428710937493, -30.175], + [-69.88803710937498, -30.21328125], + [-69.90712890624997, -30.28164062499998], + [-69.95634765624996, -30.35820312500003], + [-70.10200195312495, -30.388281250000034], + [-70.15322265625, -30.360937499999963], + [-70.16962890624995, -30.385546875], + [-70.16142578124999, -30.44023437499996], + [-70.19394531250003, -30.50468750000003], + [-70.26938476562495, -30.677246093750014], + [-70.31923828125, -30.83398437499997], + [-70.34814453125, -30.902343749999957], + [-70.33642578125003, -30.959765625000017], + [-70.31181640624999, -30.992578125000037], + [-70.30908203124994, -31.02265625000004], + [-70.35058593749997, -31.06044921875001], + [-70.38837890624995, -31.121093750000014], + [-70.42939453124995, -31.129296875], + [-70.47309570312498, -31.112792968750014], + [-70.51958007812493, -31.1484375], + [-70.529052734375, -31.22285156249997], + [-70.5546875, -31.317382812499957], + [-70.56640624999997, -31.427929687499997], + [-70.585205078125, -31.569433593749963], + [-70.52563476562503, -31.66640625], + [-70.45014648437501, -31.841894531249963], + [-70.39384765624999, -31.88378906249997], + [-70.33095703124997, -31.88105468750004], + [-70.28173828124997, -31.91660156249999], + [-70.25439453125, -31.957714843750026], + [-70.29091796875, -32.031054687500045], + [-70.35556640625, -32.04238281250004], + [-70.36376953125, -32.08349609374997], + [-70.34462890625, -32.17646484375], + [-70.32001953124995, -32.26669921874999], + [-70.2578125, -32.30996093750002], + [-70.22978515624996, -32.4306640625], + [-70.16962890624995, -32.471679687500014], + [-70.17695312499995, -32.62607421875002], + [-70.11616210937501, -32.80742187500002], + [-70.05205078124999, -32.85996093749998], + [-70.02197265625, -32.88457031250002], + [-70.04213867187502, -32.963671874999974], + [-70.09306640624999, -33.02675781250004], + [-70.10400390625, -33.12792968750004], + [-70.08486328125002, -33.20175781249998], + [-70.01982421874999, -33.27148437499997], + [-69.96904296874996, -33.27939453124999], + [-69.89619140624995, -33.25097656249997], + [-69.81962890624999, -33.28378906249999], + [-69.80869140624998, -33.3439453125], + [-69.79775390624997, -33.398632812500026], + [-69.83876953124997, -33.46972656250004], + [-69.88256835937503, -33.60097656250004], + [-69.89433593750002, -33.73134765625005], + [-69.88149414062497, -33.92978515624998], + [-69.86152343749998, -34.08359375000005], + [-69.85737304687495, -34.180468749999974], + [-69.85244140625, -34.224316406250026], + [-69.87978515625, -34.25439453125003], + [-69.94633789062496, -34.269921875], + [-70.00283203125, -34.27626953125004], + [-70.05205078124999, -34.30078124999997], + [-70.06298828125, -34.35], + [-70.10146484375002, -34.43203125], + [-70.14125976562497, -34.492871093750026], + [-70.21069335937497, -34.58125], + [-70.25468749999999, -34.672656249999974], + [-70.28994140624997, -34.732812499999966], + [-70.28676757812494, -34.77451171875002], + [-70.31210937499995, -34.854980468749986], + [-70.338134765625, -34.92177734375001], + [-70.39316406250003, -35.146875], + [-70.46660156249999, -35.193652343749974], + [-70.52509765625001, -35.216796874999986], + [-70.55517578125, -35.24687], + [-70.53232421874995, -35.307910156249974], + [-70.47041015624995, -35.32617187499997], + [-70.44853515624993, -35.375390624999966], + [-70.45673828124993, -35.45195312500002], + [-70.41572265625001, -35.52304687500002], + [-70.41972656249993, -35.60917968749999], + [-70.38017578124996, -35.771875], + [-70.41572265625001, -35.87851562499996], + [-70.40366210937495, -35.97050781249996], + [-70.40478515625, -36.06171874999998], + [-70.45673828124993, -36.132714843749966], + [-70.56337890625, -36.14638671875001], + [-70.62187, -36.21191406250003], + [-70.72192382812494, -36.283203124999986], + [-70.73286132812495, -36.340625], + [-70.74926757812503, -36.39257812499997], + [-70.79028320312503, -36.41171874999996], + [-70.85317382812497, -36.41171874999996], + [-70.90512695312498, -36.41992187499996], + [-70.97792968749997, -36.4873046875], + [-71.05551757812498, -36.52373046874996], + [-71.07324218750003, -36.57802734375001], + [-71.06640624999997, -36.64404296874996], + [-71.10742187499997, -36.68505859374997], + [-71.15937, -36.76162109375002], + [-71.19218750000002, -36.84365234375004], + [-71.15937, -36.92021484375], + [-71.12382812499993, -37.05693359374996], + [-71.118408203125, -37.114355468750034], + [-71.16347656250002, -37.22744140624998], + [-71.20039062499998, -37.300292968749986], + [-71.16489257812495, -37.39326171875001], + [-71.13481445312496, -37.4451171875], + [-71.16284179687497, -37.55917968749996], + [-71.18671874999995, -37.63105468750004], + [-71.16757812499998, -37.76230468749996], + [-71.09619140625, -37.90996093750002], + [-71.028173828125, -38.041210937500026], + [-71.0181640625, -38.19394531249996], + [-71.00048828124994, -38.31484375], + [-70.96796874999998, -38.44589843749996], + [-70.899658203125, -38.497851562499974], + [-70.84765625, -38.541601562500006], + [-70.858642578125, -38.60449218750003], + [-70.89692382812498, -38.681054687499994], + [-70.95161132812493, -38.73847656249997], + [-71.08710937500001, -38.757519531250026], + [-71.19726562499997, -38.809375], + [-71.28574218749998, -38.84541015625], + [-71.35317382812494, -38.88886718749997], + [-71.40156249999995, -38.93505859374996], + [-71.42558593749996, -38.98564453125006], + [-71.40937, -39.205957031249994], + [-71.42001953124998, -39.287207031250034], + [-71.46538085937499, -39.40234375000004], + [-71.50776367187501, -39.495214843750034], + [-71.52578124999994, -39.52314453125004], + [-71.53125, -39.56416015624997], + [-71.53945312499997, -39.60244140624995], + [-71.58701171874998, -39.61113281250003], + [-71.654296875, -39.59423828124996], + [-71.69257812499998, -39.60517578124997], + [-71.71992187499995, -39.63525390624997], + [-71.69682617187496, -39.70703125000003], + [-71.67207031249998, -39.83330078124999], + [-71.63789062499995, -39.88681640624998], + [-71.64711914062497, -39.929199218749986], + [-71.65976562499998, -40.02080078125], + [-71.70439453124999, -40.094921875], + [-71.763671875, -40.09462890625004], + [-71.80195312499998, -40.124707031250026], + [-71.81831054687493, -40.17666015624995], + [-71.80058593749996, -40.24433593749998], + [-71.72265625, -40.29970703124998], + [-71.69531250000003, -40.33525390625003], + [-71.70898437499997, -40.381738281249994], + [-71.76914062499995, -40.400878906249986], + [-71.80463867187498, -40.43916015624997], + [-71.83852539062497, -40.524414062500014], + [-71.88378906249994, -40.620605468749986], + [-71.93212890624994, -40.69169921874999], + [-71.94135742187495, -40.789160156250034], + [-71.873046875, -40.892968749999966], + [-71.88071289062495, -40.99462890624997], + [-71.88559570312498, -41.29238281249998], + [-71.89218749999998, -41.39335937500003], + [-71.87114257812496, -41.560546874999986], + [-71.89760742187502, -41.606640625000054], + [-71.91127929687497, -41.650390624999986], + [-71.84448242187503, -41.771972656249986], + [-71.77001953124997, -41.968554687499974], + [-71.75, -42.04677734375001], + [-71.76093749999998, -42.101464843749966], + [-71.86079101562498, -42.147851562499994], + [-71.94409179687497, -42.167089843750006], + [-71.99331054687497, -42.134277343749986], + [-72.026123046875, -42.147949218750014], + [-72.06440429687498, -42.20537109374999], + [-72.10820312499993, -42.25185546874995], + [-72.12460937499998, -42.298339843750014], + [-72.078125, -42.358496093750006], + [-72.05346679687497, -42.473242187500034], + [-72.10541992187498, -42.522460937500014], + [-72.14370117187497, -42.57714843749997], + [-72.13002929687494, -42.648242187499974], + [-72.11362304687498, -42.77675781249995], + [-72.14643554687498, -42.990039062499974], + [-72.102392578125, -43.065625], + [-72.05468749999994, -43.10195312499995], + [-71.89858398437494, -43.14531249999999], + [-71.781494140625, -43.16679687500002], + [-71.750634765625, -43.237304687499986], + [-71.76386718749995, -43.29462890625004], + [-71.82021484374997, -43.322949218750026], + [-71.90498046875001, -43.34755859374998], + [-71.90498046875001, -43.44013671875001], + [-71.83242187499997, -43.527148437499974], + [-71.750634765625, -43.59013671875002], + [-71.732763671875, -43.64677734375002], + [-71.73740234374998, -43.7046875], + [-71.79472656250002, -43.75322265625003], + [-71.71596679687497, -43.85839843749996], + [-71.68007812500002, -43.92958984374998], + [-71.716162109375, -43.98447265624998], + [-71.7671875, -44.06669921875003], + [-71.81235351562498, -44.10605468749996], + [-71.812109375, -44.15078125000002], + [-71.83076171874998, -44.24140625000001], + [-71.83505859374998, -44.33017578124998], + [-71.82001953124993, -44.38310546875], + [-71.32573242187496, -44.42490234374999], + [-71.21259765624998, -44.44121093750003], + [-71.15087890624994, -44.494042968749966], + [-71.15971679687496, -44.56025390625004], + [-71.22148437499993, -44.63076171875001], + [-71.26113281250002, -44.763085937499966], + [-71.35815429687497, -44.78515625000003], + [-71.45517578125003, -44.74980468750002], + [-71.56040039062498, -44.76201171875002], + [-71.65166015625002, -44.77041015624995], + [-71.78281249999998, -44.77441406249997], + [-71.95703124999994, -44.791503906249986], + [-72.06372070312503, -44.771875], + [-72.07250976562494, -44.82041015625002], + [-72.04169921874998, -44.90419921875004], + [-71.81235351562498, -44.9306640625], + [-71.5962890625, -44.97919921875004], + [-71.53129882812499, -45.067871093749986], + [-71.44345703124995, -45.16826171875], + [-71.35375976562497, -45.23046874999997], + [-71.34931640624995, -45.33193359374995], + [-71.49042968749993, -45.43769531250001], + [-71.50810546874999, -45.512695312500014], + [-71.69331054687495, -45.53476562499998], + [-71.74619140624998, -45.57890625], + [-71.77265624999995, -45.724414062499974], + [-71.750634765625, -45.83906249999997], + [-71.68007812500002, -45.878710937499974], + [-71.63154296874998, -45.95371093749998], + [-71.68447265624994, -46.041894531249994], + [-71.80927734374995, -46.10273437500004], + [-71.87568359374998, -46.160546875], + [-71.83413085937497, -46.20673828125001], + [-71.77763671874999, -46.27998046875001], + [-71.76210937499994, -46.31982421874996], + [-71.73129882812498, -46.42783203125002], + [-71.69521484375, -46.57841796875006], + [-71.69965820312501, -46.6513671875], + [-71.73271484374999, -46.70585937499999], + [-71.85644531249997, -46.79160156249996], + [-71.94023437499999, -46.83125], + [-71.95664062499998, -46.936816406249974], + [-71.96298828125, -47.01601562500004], + [-71.95424804687502, -47.0875], + [-71.900537109375, -47.144335937499974], + [-71.90498046875001, -47.201660156250014], + [-71.97851562499997, -47.213867187500014], + [-72.04169921874998, -47.241406250000026], + [-72.10341796875002, -47.342773437499986], + [-72.28291015625001, -47.44628906250003], + [-72.34594726562497, -47.49267578124997], + [-72.34150390624995, -47.57207031249999], + [-72.41259765624994, -47.685546875000014], + [-72.47221679687502, -47.78417968750003], + [-72.517919921875, -47.87636718749998], + [-72.50908203124999, -47.973339843750026], + [-72.40791015624998, -48.01591796874999], + [-72.32832031250001, -48.11005859374998], + [-72.29301757812502, -48.22910156249999], + [-72.35473632812497, -48.36582031250005], + [-72.49814453124998, -48.41738281249998], + [-72.582861328125, -48.47539062499999], + [-72.60839843749997, -48.51933593750006], + [-72.5859375, -48.6625], + [-72.59174804687495, -48.72968750000001], + [-72.61440429687494, -48.79287109375], + [-72.65126953125, -48.84160156249998], + [-72.72846679687501, -48.896289062500024], + [-72.86542968750001, -48.94394531249996], + [-72.98173828124999, -48.97675781249998], + [-73.03364257812501, -49.014355468750004], + [-73.09458007812498, -49.096875], + [-73.14887695312493, -49.18798828125003], + [-73.13525390625, -49.30068359374999], + [-73.46157226562497, -49.31386718750001], + [-73.48364257812503, -49.397656250000026], + [-73.55419921875, -49.463867187500014], + [-73.57626953124998, -49.582910156250016], + [-73.50454101562502, -49.698046875000024], + [-73.47041015624998, -49.79453124999996], + [-73.52890625, -49.91093750000005], + [-73.50771484374994, -50.03027343750003], + [-73.50126953124996, -50.125292968750024], + [-73.38662109374997, -50.23115234375001], + [-73.31171874999998, -50.361914062500006], + [-73.27416992187497, -50.47255859374999], + [-73.251611328125, -50.558496093749994], + [-73.22163085937493, -50.61074218749998], + [-73.17451171875001, -50.67001953124998], + [-73.15292968749998, -50.73828125000003], + [-73.08237304687498, -50.7603515625], + [-72.95556640625, -50.69648437500004], + [-72.86591796874993, -50.653125], + [-72.80361328124994, -50.637695312499964], + [-72.62041015625002, -50.64765625000004], + [-72.50981445312496, -50.607519531250034], + [-72.46015624999995, -50.61171875], + [-72.39257812499997, -50.63427734374998], + [-72.34023437499997, -50.68183593749999], + [-72.30063476562498, -50.78955078124999], + [-72.27631835937498, -50.910253906249984], + [-72.307373046875, -51.033398437500026], + [-72.35917968749999, -51.06015625], + [-72.37680664062503, -51.09541015625005], + [-72.35917968749999, -51.17041015624996], + [-72.30185546874995, -51.22333984375], + [-72.30322265624997, -51.29892578125003], + [-72.36640624999995, -51.47031250000004], + [-72.40766601562501, -51.54082031250002], + [-72.33452148437493, -51.62031250000005], + [-72.26899414062501, -51.69111328124999], + [-72.13696289062503, -51.74404296875003], + [-72.02841796875003, -51.81865234375004], + [-71.95346679687503, -51.88037109375], + [-71.97109374999997, -51.96416015625002], + [-71.91865234374995, -51.98955078125004], + [-71.71660156249999, -51.99130859375004], + [-71.41474609374995, -51.993945312500045], + [-70.94316406249999, -51.99814453125001], + [-70.48286132812501, -52.00224609375005], + [-69.96025390624993, -52.00820312500002], + [-69.71259765624993, -52.07539062500003], + [-69.48842773437502, -52.13613281249997], + [-69.20620117187497, -52.13613281249997], + [-68.92456054687497, -52.20810546874998], + [-68.71518554687495, -52.255468750000034], + [-68.58979492187498, -52.273339843749945], + [-68.46098632812496, -52.290429687499966], + [-68.443359375, -52.35664062500004], + [-69.00722656249994, -52.2626953125], + [-69.13378906249997, -52.211425781250036], + [-69.24101562499996, -52.20546874999997], + [-69.44687, -52.26943359374995], + [-69.56059570312496, -52.42158203125004], + [-69.62031249999995, -52.46474609374995], + [-69.76333007812497, -52.505566406250004], + [-69.90722656249997, -52.51357421874995], + [-70.39096679687503, -52.66083984375002], + [-70.56293945312498, -52.67343750000001], + [-70.680322265625, -52.7125], + [-70.79511718749995, -52.76875], + [-70.83906250000001, -52.88955078124999], + [-70.82119140625002, -52.96308593750005], + [-70.95205078124994, -53.22695312499998], + [-70.98432617187495, -53.37363281250002], + [-70.985107421875, -53.44833984374996], + [-70.94780273437496, -53.57041015624996], + [-70.99584960937497, -53.77929687499997], + [-71.08281249999993, -53.825], + [-71.29775390625002, -53.88339843750004], + [-71.44389648437496, -53.840917968750006], + [-71.69379882812498, -53.803125], + [-71.871875, -53.72265624999998], + [-72.10092773437495, -53.66582031250004], + [-72.1744140625, -53.632324218749964], + [-72.37680664062503, -53.47119140625], + [-72.39824218749996, -53.41777343750004], + [-72.41289062500002, -53.35019531250004], + [-72.3060546875, -53.25371093750001], + [-72.24863281250003, -53.2466796875], + [-72.08115234375, -53.24960937499998], + [-71.94169921874993, -53.23408203125001], + [-71.85273437499993, -53.28574218749996], + [-71.82822265625, -53.39833984374999], + [-71.86733398437497, -53.458398437499966], + [-71.90278320312501, -53.49550781249998], + [-71.89169921874998, -53.523535156250006], + [-71.79145507812498, -53.48457031249997], + [-71.74052734374999, -53.232617187499976], + [-71.40034179687495, -53.10703125], + [-71.28896484375002, -53.03369140624995], + [-71.18022460937496, -52.920507812499984], + [-71.16328124999998, -52.88808593749995], + [-71.15507812499999, -52.84560546875], + [-71.22714843750003, -52.810644531249984], + [-71.38774414062496, -52.76425781250004], + [-71.89799804687502, -53.00175781250002], + [-72.12910156249993, -53.06435546874998], + [-72.27802734374998, -53.13232421874997], + [-72.45830078124993, -53.25449218749999], + [-72.492578125, -53.29062], + [-72.53081054687496, -53.37167968749998], + [-72.54892578125, -53.4607421875], + [-72.72680664062503, -53.42001953124996], + [-72.998388671875, -53.290722656250004], + [-73.05273437499997, -53.24345703125005], + [-72.99824218749998, -53.17724609374998], + [-72.91552734375, -53.121972656249994], + [-72.90991210937503, -52.936523437499964], + [-72.88916015624997, -52.871582031249964], + [-72.831884765625, -52.81953125000002], + [-72.72768554687502, -52.7623046875], + [-72.67597656249995, -52.74902343749996], + [-72.632080078125, -52.773828124999945], + [-72.62661132812494, -52.817578124999976], + [-72.453466796875, -52.814453124999964], + [-72.11757812499997, -52.65], + [-71.97929687499996, -52.646093750000034], + [-71.79707031249995, -52.68281249999997], + [-71.59121093749994, -52.6607421875], + [-71.55415039062495, -52.64394531249995], + [-71.51127929687502, -52.60537109375], + [-71.66474609375001, -52.56005859375001], + [-71.81191406249997, -52.537011718750016], + [-72.22568359374998, -52.52099609374995], + [-72.31538085937495, -52.53857421874998], + [-72.43769531250001, -52.62578124999998], + [-72.478271484375, -52.604003906249986], + [-72.50439453125, -52.56005859375001], + [-72.64482421875002, -52.5291015625], + [-72.71210937499995, -52.53554687499999], + [-72.77656249999993, -52.577441406249996], + [-72.76601562500002, -52.64257812500003], + [-72.80190429687494, -52.71240234374996], + [-72.93188476562497, -52.78164062500003], + [-73.02026367187503, -52.891796875], + [-73.01611328124997, -52.97744140624995], + [-73.02299804687496, -53.022070312499984], + [-73.05546875000002, -53.04560546874998], + [-73.12246093749997, -53.073925781249976], + [-73.33818359374996, -53.054687499999964], + [-73.45986328124997, -52.96484374999996], + [-73.50751953124998, -52.90351562499999], + [-73.64521484374998, -52.83701171875003], + [-73.34594726562503, -52.754296874999966], + [-73.2408203125, -52.707128906250034], + [-73.14482421874999, -52.601953125000016], + [-73.07319335937498, -52.53505859374997], + [-73.12392578125, -52.487988281249976], + [-73.18378906249995, -52.487890624999956], + [-73.17817382812495, -52.56269531250001], + [-73.24414062499997, -52.62402343749998], + [-73.38212890624993, -52.59511718749995], + [-73.58569335937503, -52.68574218750003], + [-73.71083984374994, -52.66152343749998], + [-73.914697265625, -52.68818359375], + [-74.01445312499999, -52.63935546875], + [-74.03583984374998, -52.57724609375004], + [-73.99990234374994, -52.512597656250016], + [-74.03735351562503, -52.40292968749997], + [-74.093505859375, -52.376269531250045], + [-74.15083007812495, -52.38251953124998], + [-74.1765625, -52.3171875], + [-74.23847656249995, -52.20234375000005], + [-74.26596679687498, -52.17128906250003], + [-74.29565429687497, -52.11787109374998], + [-74.26494140624993, -52.1048828125], + [-74.19492187499998, -52.12021484375001], + [-74.133544921875, -52.15478515624995], + [-74.04023437499998, -52.15917968749996], + [-73.83447265625, -52.23398437500001], + [-73.74912109375, -52.21601562499999], + [-73.702783203125, -52.19882812500004], + [-73.685400390625, -52.13671875], + [-73.68432617187494, -52.07773437499998], + [-73.64902343749995, -52.07773437499998], + [-73.53222656249997, -52.15312], + [-73.45795898437493, -52.14599609375003], + [-73.32675781250003, -52.16591796875], + [-73.26044921874993, -52.157812500000034], + [-73.137353515625, -52.12968749999999], + [-72.94370117187498, -52.046875], + [-72.84321289062493, -51.961132812500026], + [-72.79501953124998, -51.94951171875005], + [-72.73540039062499, -51.960546875], + [-72.69545898437502, -51.98515625000003], + [-72.69482421874997, -52.0447265625], + [-72.649560546875, -52.09990234375005], + [-72.58798828124998, -52.14511718750003], + [-72.57084960937496, -52.200097656249945], + [-72.58344726562495, -52.254199218750045], + [-72.693603515625, -52.3302734375], + [-72.714013671875, -52.356738281249974], + [-72.67705078125002, -52.38466796874998], + [-72.63149414062497, -52.37158203124998], + [-72.56870117187495, -52.33398437499996], + [-72.53291015624995, -52.28232421875], + [-72.52333984374997, -52.255468750000034], + [-72.51933593749993, -52.21708984375003], + [-72.52412109374993, -52.1703125], + [-72.61357421874996, -52.03701171875003], + [-72.624755859375, -52.00693359375003], + [-72.62460937499998, -51.94648437499997], + [-72.52285156249994, -51.89091796875002], + [-72.49414062499994, -51.84755859374998], + [-72.48964843750002, -51.76367187500003], + [-72.54252929687496, -51.706152343750034], + [-72.76123046875, -51.57324218749996], + [-73.12675781249996, -51.43994140624998], + [-73.16875, -51.45390624999998], + [-73.19702148437497, -51.478027343750014], + [-73.16337890624996, -51.49560546874995], + [-73.11499023437497, -51.504492187499984], + [-72.78935546874996, -51.614257812499964], + [-72.70458984375003, -51.67792968749997], + [-72.649072265625, -51.69501953124999], + [-72.58330078124999, -51.737304687499986], + [-72.60004882812495, -51.79912109374997], + [-72.92836914062497, -51.85986328125], + [-73.18867187499995, -51.990625], + [-73.38325195312498, -52.070019531250004], + [-73.51816406250003, -52.04101562499996], + [-73.58232421874996, -51.96035156249995], + [-73.65029296874994, -51.85625], + [-73.75263671874993, -51.795507812500034], + [-73.81064453125003, -51.80117187500003], + [-73.857568359375, -51.789941406249966], + [-73.89443359374994, -51.7578125], + [-73.9732421875, -51.78447265625], + [-74.14643554687495, -51.712109375], + [-74.19667968749997, -51.68056640624997], + [-74.06958007812503, -51.578710937500006], + [-73.92978515624995, -51.61787109374999], + [-73.8958984375, -51.331445312499994], + [-73.93950195312499, -51.26630859375005], + [-74.12124023437497, -51.19541015624999], + [-74.21049804687496, -51.20458984374999], + [-74.33232421874999, -51.19501953125], + [-74.41435546874999, -51.1625], + [-74.50786132812496, -51.14960937499998], + [-74.58686523437498, -51.13066406250003], + [-74.69008789062497, -51.08652343750001], + [-74.81474609374996, -51.062890625], + [-74.98310546874995, -50.88105468749998], + [-75.05532226562502, -50.78554687499998], + [-75.09467773437495, -50.68125], + [-74.83662109374995, -50.67890625000001], + [-74.68574218749995, -50.662011718749945], + [-74.64892578125, -50.618457031250045], + [-74.70205078125, -50.53535156249999], + [-74.77587890625003, -50.46992187499998], + [-74.7216796875, -50.40849609374999], + [-74.64448242187498, -50.360937499999984], + [-74.56411132812497, -50.38203125000002], + [-74.365576171875, -50.487890625], + [-74.3314453125, -50.559570312500036], + [-74.19018554687497, -50.77802734375005], + [-74.15610351562498, -50.797460937500006], + [-74.13940429687503, -50.81777343749997], + [-73.84746093749996, -50.94003906250001], + [-73.80654296875, -50.93837890625003], + [-73.82460937500002, -50.83583984375001], + [-73.74057617187495, -50.696679687499994], + [-73.65903320312495, -50.65068359375004], + [-73.61816406249997, -50.651171875000045], + [-73.61396484375001, -50.62792968750002], + [-73.69326171875, -50.57001953125003], + [-73.654443359375, -50.49267578125], + [-73.67993164062494, -50.490234375000036], + [-73.75019531249995, -50.53984375000002], + [-73.89150390624997, -50.78271484375002], + [-73.97802734375003, -50.827050781249994], + [-74.09672851562496, -50.717089843749974], + [-74.16411132812499, -50.637890625], + [-74.19721679687498, -50.60976562499996], + [-74.18559570312493, -50.485351562500014], + [-73.95034179687497, -50.510546875], + [-74.03105468749999, -50.46982421874996], + [-74.30556640624997, -50.398046875], + [-74.37412109374998, -50.36298828125005], + [-74.42509765624996, -50.35019531250001], + [-74.51640625000002, -50.265625], + [-74.62958984374998, -50.19404296875], + [-74.43432617187497, -50.065234375000045], + [-74.333740234375, -49.97460937499997], + [-74.01943359375002, -50.02275390625001], + [-73.95859374999998, -49.994726562499984], + [-74.01123046875003, -49.928515625], + [-74.07329101562496, -49.94853515624999], + [-74.17133789062495, -49.90732421875003], + [-74.32392578124995, -49.783398437500004], + [-74.31875, -49.720117187499994], + [-74.29082031249996, -49.604101562499984], + [-74.23037109375, -49.57929687499999], + [-74.10200195312495, -49.555371093750004], + [-73.95551757812495, -49.593066406250045], + [-73.89155273437498, -49.62373046874998], + [-73.83637695312493, -49.609375], + [-73.89248046875, -49.52343749999998], + [-73.988037109375, -49.49091796875002], + [-74.09443359374993, -49.42968749999998], + [-74.08349609375, -49.36181640625001], + [-74.04921874999997, -49.30566406250002], + [-74.02343750000003, -49.244140625000014], + [-74.00561523437494, -49.15800781250005], + [-74.015380859375, -49.09091796874997], + [-73.98476562499997, -49.05996093749997], + [-73.93789062500002, -49.04609375], + [-73.93496093749994, -49.02089843750001], + [-74.02773437500002, -49.02617187500002], + [-74.06132812499993, -49.11103515624998], + [-74.073876953125, -49.18837890625002], + [-74.13979492187502, -49.25048828124997], + [-74.16787109374997, -49.320507812500026], + [-74.1845703125, -49.40439453124998], + [-74.2212890625, -49.500585937500034], + [-74.30151367187503, -49.463964843750034], + [-74.34853515625, -49.42626953124999], + [-74.36655273437503, -49.40048828124998], + [-74.358154296875, -49.35136718750001], + [-74.37998046875, -49.04785156249999], + [-74.38212890625002, -48.79365234374998], + [-74.34101562499998, -48.59570312499998], + [-74.227685546875, -48.51699218750002], + [-74.17622070312498, -48.494140624999986], + [-74.12929687500002, -48.50419921874999], + [-74.05693359375002, -48.503613281250054], + [-74.00908203124996, -48.475], + [-74.171533203125, -48.42744140624998], + [-74.27006835937502, -48.454589843750014], + [-74.34296874999993, -48.49257812500002], + [-74.47441406249999, -48.46396484374996], + [-74.49941406250002, -48.36230468750004], + [-74.57719726562496, -48.274414062499986], + [-74.59072265624997, -48.161914062499974], + [-74.58466796874998, -47.999023437500014], + [-74.40048828125, -48.01308593749995], + [-74.25043945312501, -48.04492187500004], + [-73.85380859374993, -48.04218750000001], + [-73.52817382812503, -48.198242187500014], + [-73.38447265624998, -48.17734375000002], + [-73.39106445312498, -48.14589843750001], + [-73.5009765625, -48.106640625], + [-73.56958007812503, -48.019335937499974], + [-73.60991210937499, -47.993945312500045], + [-73.62890624999994, -47.94150390625002], + [-73.63510742187498, -47.88037109375], + [-73.71586914062499, -47.65546875000001], + [-73.74824218750001, -47.661328125000054], + [-73.77924804687493, -47.73847656250004], + [-73.8466796875, -47.86699218750003], + [-73.94086914062498, -47.92939453125004], + [-74.08476562499999, -47.954687500000034], + [-74.22705078124994, -47.96894531250001], + [-74.35058593749997, -47.94433593749997], + [-74.37934570312498, -47.89121093749999], + [-74.37622070312497, -47.82968749999998], + [-74.42968750000003, -47.799609374999974], + [-74.56923828125002, -47.77294921874996], + [-74.60888671875003, -47.758007812500026], + [-74.654931640625, -47.702246093750034], + [-74.58842773437493, -47.61796875], + [-74.5337890625, -47.567675781249974], + [-74.46689453124995, -47.57763671874996], + [-74.40356445312503, -47.600390624999974], + [-74.32255859374996, -47.66669921874998], + [-74.24296874999999, -47.67929687499998], + [-74.151953125, -47.62666015625], + [-74.13408203125002, -47.590820312499986], + [-74.19101562499998, -47.56835937500003], + [-74.24291992187497, -47.559667968750034], + [-74.32368164062501, -47.53144531249997], + [-74.48266601562497, -47.43046875], + [-74.40327148437495, -47.327539062499994], + [-74.21567382812503, -47.209570312500034], + [-74.15839843749998, -47.18251953125002], + [-74.20805664062499, -47.08310546875002], + [-74.15190429687499, -46.97441406249999], + [-74.20947265625, -46.88476562500003], + [-74.31357421874998, -46.78818359374998], + [-74.45419921875003, -46.76679687499997], + [-74.48442382812499, -46.795019531250034], + [-74.48935546875, -46.83457031250002], + [-74.46699218749998, -46.86435546875005], + [-74.48017578125001, -46.88583984374998], + [-74.51225585937496, -46.88515625000002], + [-74.69082031250002, -46.86396484374997], + [-74.81064453125, -46.79970703125002], + [-75.00595703125, -46.74111328124998], + [-75.03144531249995, -46.69531249999997], + [-75.05253906249999, -46.628027343750034], + [-74.98417968750002, -46.51210937499995], + [-75.01875, -46.51054687499999], + [-75.14575195312497, -46.60009765625003], + [-75.33740234375003, -46.647070312500006], + [-75.47841796874997, -46.66240234375002], + [-75.54033203124999, -46.69873046874996], + [-75.56508789062497, -46.728710937500026], + [-75.52758789062494, -46.74638671874999], + [-75.44599609374995, -46.75078125], + [-75.38642578124998, -46.862695312499966], + [-75.40122070312498, -46.90566406250002], + [-75.43037109374995, -46.93457031249996], + [-75.49663085937496, -46.940136718750026], + [-75.63525390624994, -46.862792968749986], + [-75.70810546874995, -46.775], + [-75.70639648437498, -46.70527343749997], + [-75.65678710937499, -46.610351562499986], + [-75.43691406249997, -46.48300781249998], + [-75.37602539062499, -46.42910156250001], + [-75.24702148437498, -46.3693359375], + [-75.074853515625, -46.2345703125], + [-74.924462890625, -46.159667968750014], + [-74.99765625, -46.097656249999986], + [-75.07451171874993, -46.00449218750002], + [-75.06669921874993, -45.874902343749994], + [-74.76313476562501, -45.82363281250002], + [-74.63066406250002, -45.84472656249997], + [-74.46279296875002, -45.84072265624995], + [-74.36914062500003, -45.80966796875002], + [-74.30117187499994, -45.80302734375], + [-74.15786132812497, -45.7671875], + [-74.09619140625003, -45.71679687500003], + [-74.08183593749993, -45.678320312500006], + [-74.08251953125, -45.6447265625], + [-74.09926757812502, -45.60341796875002], + [-74.122705078125, -45.49619140625002], + [-74.09892578124996, -45.46035156250001], + [-74.03754882812498, -45.41767578125001], + [-73.95717773437494, -45.40439453124998], + [-73.9203125, -45.40771484375003], + [-73.825, -45.446875], + [-73.844140625, -45.50244140624996], + [-73.88232421874997, -45.5693359375], + [-73.96025390624996, -45.83525390625], + [-73.99951171874994, -45.895312499999974], + [-74.06103515624997, -45.947363281250006], + [-74.01992187500002, -46.055859375], + [-74.08154296874997, -46.13183593750003], + [-74.356787109375, -46.212695312499974], + [-74.39296875, -46.21738281250005], + [-74.3724609375, -46.24628906249998], + [-74.21313476562494, -46.23945312500001], + [-74.08974609374994, -46.22236328125], + [-73.96757812500002, -46.15410156250003], + [-73.92919921875003, -46.049902343750034], + [-73.87871093749993, -45.84687], + [-73.81254882812496, -45.818164062499974], + [-73.73525390624994, -45.81171875], + [-73.69487304687496, -45.85957031249998], + [-73.70791015624997, -45.96669921874995], + [-73.70815429687502, -46.070312500000014], + [-73.81064453125003, -46.37734374999995], + [-73.934814453125, -46.500683593750026], + [-73.94863281249997, -46.533105468749966], + [-73.94375, -46.57158203124999], + [-73.845361328125, -46.56601562500002], + [-73.77026367187497, -46.49980468750003], + [-73.71621093749997, -46.415234375000026], + [-73.66206054687495, -46.29746093750002], + [-73.66821289062497, -46.21210937500004], + [-73.65166015624996, -46.15927734375002], + [-73.62944335937496, -45.9865234375], + [-73.59184570312493, -45.89912109375004], + [-73.5943359375, -45.77685546875], + [-73.661962890625, -45.73076171875003], + [-73.75659179687503, -45.702832031250026], + [-73.78037109374998, -45.62792968750004], + [-73.73076171874999, -45.47998046875], + [-73.54990234375, -45.48378906249998], + [-73.37856445312502, -45.382812500000014], + [-73.26621093749995, -45.346191406250014], + [-73.20234374999998, -45.353808593749974], + [-72.97817382812497, -45.451171875], + [-72.933837890625, -45.45234374999997], + [-72.9408203125, -45.41728515625002], + [-72.97553710937498, -45.39257812499996], + [-73.06386718749994, -45.35976562500002], + [-73.22636718750002, -45.25517578125003], + [-73.44497070312497, -45.23818359374995], + [-73.40488281249995, -45.10234374999999], + [-73.36245117187502, -44.97822265625001], + [-73.2564453125, -44.96103515624998], + [-73.07841796874996, -44.92021484375], + [-72.73896484375001, -44.73417968750003], + [-72.680078125, -44.59394531249997], + [-72.66386718749999, -44.43642578124995], + [-72.82753906250002, -44.39541015625002], + [-73.00102539062502, -44.292382812499994], + [-73.140966796875, -44.2375], + [-73.26508789062498, -44.16865234375001], + [-73.24072265625, -44.06572265625], + [-73.22446289062498, -43.89794921875003], + [-73.06879882812495, -43.86201171874998], + [-72.99658203125, -43.63154296875001], + [-73.10097656249994, -43.45517578124996], + [-73.07597656250002, -43.323632812499994], + [-72.93999023437502, -43.21132812500002], + [-72.91547851562498, -43.13359375], + [-72.87802734375, -43.04814453125], + [-72.75800781249998, -43.039453125], + [-72.75537109374997, -42.992968750000045], + [-72.76601562500002, -42.908203125], + [-72.84497070312503, -42.80800781250002], + [-72.84804687500002, -42.66914062499997], + [-72.77392578125003, -42.505175781250045], + [-72.65483398437502, -42.516601562499986], + [-72.63183593750003, -42.509667968749994], + [-72.71630859375, -42.41044921875003], + [-72.78515625, -42.301269531249986], + [-72.77324218749996, -42.257714843749994], + [-72.70737304687498, -42.22050781250006], + [-72.63105468749995, -42.199804687500006], + [-72.5484375, -42.25576171874995], + [-72.4302734375, -42.43388671875], + [-72.412353515625, -42.388183593750014], + [-72.46010742187494, -42.20664062499998], + [-72.49941406249997, -41.980859375], + [-72.62397460937493, -42.010546875], + [-72.73818359375002, -41.99462890624996], + [-72.78120117187498, -41.959570312500006], + [-72.82407226562503, -41.90878906249996], + [-72.783837890625, -41.846777343750034], + [-72.74370117187499, -41.80058593750003], + [-72.65986328124995, -41.74248046875002], + [-72.48603515624998, -41.72207031250002], + [-72.36040039062499, -41.64912109375], + [-72.31826171875, -41.49902343749997], + [-72.35947265624998, -41.51386718749998], + [-72.42773437500003, -41.645898437499966], + [-72.54238281250002, -41.690625], + [-72.60083007812503, -41.684082031250014], + [-72.66977539062503, -41.659375], + [-72.80512695312498, -41.544335937499966], + [-72.87998046874995, -41.51757812500003], + [-72.95283203124995, -41.51474609374998], + [-73.014990234375, -41.54384765624995], + [-73.174072265625, -41.74658203124996], + [-73.24179687499995, -41.78085937500002], + [-73.52128906249996, -41.797070312500026], + [-73.62402343750003, -41.77363281249997], + [-73.73515625000002, -41.74248046875002], + [-73.72187, -41.692480468750034], + [-73.6880859375, -41.639257812500034], + [-73.62504882812496, -41.61191406249996], + [-73.62392578125, -41.581347656250045], + [-73.71064453124998, -41.57363281249998], + [-73.81074218749995, -41.51748046875001], + [-73.85502929687502, -41.44638671874999], + [-73.87617187499995, -41.31933593749996], + [-73.96586914062493, -41.118261718750034], + [-73.98359374999998, -40.97431640625001], + [-73.9203125, -40.87158203124996], + [-73.784033203125, -40.46845703124998], + [-73.74248046874999, -40.262988281250045], + [-73.66943359375003, -40.08232421875002], + [-73.67099609375, -39.96318359374999], + [-73.48222656249999, -39.854296875], + [-73.41040039062503, -39.78916015624998], + [-73.24990234375, -39.42236328125003], + [-73.22646484375002, -39.22441406250003], + [-73.48076171874996, -38.624023437500014], + [-73.52021484375001, -38.509375], + [-73.53256835937503, -38.366796875], + [-73.47187, -38.13007812500001], + [-73.46479492187498, -38.04033203125003], + [-73.51674804687502, -37.910546874999966], + [-73.66181640624998, -37.69853515625003], + [-73.66459960937493, -37.590429687500034], + [-73.60341796875, -37.47910156249999], + [-73.66240234375002, -37.341015625000026], + [-73.63364257812503, -37.25546875], + [-73.60166015624998, -37.18847656250003], + [-73.37456054687499, -37.224316406250054], + [-73.27109374999998, -37.20742187499998], + [-73.21596679687502, -37.16689453124998], + [-73.17285156250003, -37.053515624999974], + [-73.15126953125, -36.876171875], + [-73.13779296874998, -36.799902343750006], + [-73.11806640624997, -36.68837890625002], + [-73.006591796875, -36.64345703125002], + [-72.96782226562499, -36.53779296874998], + [-72.87456054687502, -36.39042968749999], + [-72.77841796874995, -35.978515625], + [-72.68339843749996, -35.876953125], + [-72.58735351562493, -35.759667968749994], + [-72.62392578125002, -35.5857421875], + [-72.56206054687493, -35.50537109374997], + [-72.50517578124999, -35.44697265624998], + [-72.45498046874997, -35.34082031250003], + [-72.38671875, -35.2404296875], + [-72.22377929687494, -35.096191406250014], + [-72.18242187499996, -34.92021484374996], + [-72.05595703124996, -34.61582031250002], + [-72.03076171874997, -34.42050781250002], + [-71.99150390624996, -34.28847656250004], + [-72.00283203124997, -34.16533203125], + [-71.92685546875003, -34.01562], + [-71.85395507812501, -33.88955078125004], + [-71.83095703124994, -33.81953124999998], + [-71.66435546875002, -33.65263671875], + [-71.63627929687499, -33.51923828125], + [-71.69550781249995, -33.42900390625], + [-71.69658203125002, -33.2890625], + [-71.74296875, -33.09511718750001], + [-71.63554687500002, -33.02255859374998], + [-71.59204101562503, -32.96953125], + [-71.45224609374998, -32.65957031250001], + [-71.46142578124997, -32.537890625], + [-71.42128906249997, -32.38681640625005], + [-71.513037109375, -32.20791015625001], + [-71.52587890624997, -31.805859375], + [-71.57729492187497, -31.496386718750003], + [-71.66196289062498, -31.169531250000034], + [-71.65390625, -30.986621093749974], + [-71.7056640625, -30.75927734375003], + [-71.70893554687495, -30.62802734375002], + [-71.66948242187499, -30.33037109374996], + [-71.40039062499997, -30.142968749999966], + [-71.34804687499997, -29.93320312500005], + [-71.31572265624996, -29.649707031250017], + [-71.32670898437496, -29.443164062500045], + [-71.35327148437497, -29.350390624999974], + [-71.48583984374997, -29.19824218749997], + [-71.51923828124993, -28.926464843750026], + [-71.49360351562495, -28.855273437500003], + [-71.38408203124993, -28.778710937500037], + [-71.30673828124998, -28.672460937499963], + [-71.26684570312494, -28.507519531250026], + [-71.18642578125, -28.37783203124998], + [-71.15449218749998, -28.0640625], + [-71.08652343749998, -27.814453124999957], + [-71.05263671875, -27.727343749999974], + [-70.94580078125, -27.61787109374997], + [-70.92578125, -27.588671874999974], + [-70.90927734375, -27.505175781250017], + [-70.91425781249995, -27.307910156249974], + [-70.89790039062501, -27.1875], + [-70.81274414062497, -26.95058593750001], + [-70.80292968749993, -26.840917968749963], + [-70.70839843749994, -26.596972656250003], + [-70.68696289062493, -26.42177734375001], + [-70.64658203124998, -26.329394531250017], + [-70.66225585937497, -26.225390624999974], + [-70.63544921875001, -25.992675781249986], + [-70.69960937500002, -25.861132812500017], + [-70.71372070312498, -25.78417968749997], + [-70.63300781249995, -25.54560546875004], + [-70.57812, -25.4875], + [-70.48950195312503, -25.376464843750043], + [-70.45219726562499, -25.251855468749966], + [-70.44536132812502, -25.17265624999999], + [-70.55864257812499, -24.778515624999983], + [-70.57412109374994, -24.644335937500003], + [-70.54643554687499, -24.331640625], + [-70.50742187499995, -24.1296875], + [-70.52006835937496, -23.968554687500003], + [-70.50742187499995, -23.8857421875], + [-70.48779296874994, -23.781738281249957], + [-70.40996093749999, -23.655566406250003], + [-70.39233398437494, -23.565917968749957], + [-70.41962890625001, -23.52851562499997], + [-70.511962890625, -23.4828125], + [-70.58813476562497, -23.368359375000026], + [-70.59335937499995, -23.255468750000034], + [-70.56884765625003, -23.17333984375], + [-70.56318359374995, -23.057031250000023], + [-70.44965820312498, -23.034179687499986], + [-70.38916015625003, -22.96962890624998], + [-70.33168945312494, -22.848632812500014], + [-70.25952148437497, -22.55605468750001], + [-70.22851562499997, -22.193164062499974], + [-70.18544921875, -21.97460937500003], + [-70.15507812499993, -21.866601562499966], + [-70.12958984374998, -21.640820312499983], + [-70.08754882812494, -21.49306640624998], + [-70.08002929687501, -21.356835937500037], + [-70.08837890625003, -21.253222656249974], + [-70.19702148437494, -20.725390625], + [-70.19365234374999, -20.53144531250001], + [-70.14746093749997, -20.229785156250017], + [-70.14814453124995, -19.805078125], + [-70.15742187499995, -19.70585937500003], + [-70.19833984374995, -19.61298828125004], + [-70.21040039062501, -19.48691406250002], + [-70.27578125000002, -19.267578125000014], + [-70.33486328124997, -18.82753906249998], + [-70.33608398437494, -18.595214843749986], + [-70.36162109374999, -18.398046874999963], + [-70.41826171874999, -18.345605468750023], + [-70.37749023437496, -18.333593749999977], + [-70.28227539062499, -18.325390625], + [-70.18378906250001, -18.325195312499957], + [-70.05908203125, -18.28349609374999], + [-69.92636718749998, -18.206054687500014], + [-69.83969726562498, -18.093457031249997], + [-69.80258789062498, -17.990234375000014], + [-69.80244140624995, -17.9], + [-69.84150390625001, -17.785156249999986], + [-69.85209960937493, -17.70380859375001], + [-69.80610351562498, -17.66494140625001], + [-69.68476562499995, -17.649804687500023], + [-69.58642578125, -17.57324218749997], + [-69.51093749999998, -17.50605468749997], + [-69.49501953125002, -17.61953125], + [-69.3580078125, -17.771679687499983], + [-69.31337890624997, -17.943164062500017], + [-69.28232421875003, -17.96484375], + [-69.09394531249993, -18.05048828125004], + [-69.0904296875, -18.07070312499998], + [-69.11806640624997, -18.102734375000026], + [-69.14545898437495, -18.14404296875], + [-69.12636718749997, -18.20244140624999], + [-69.09228515624994, -18.28242187500004], + [-69.08095703124997, -18.35664062499997], + [-69.06015624999998, -18.43300781249998], + [-69.039404296875, -18.55009765625003], + [-69.02680664062493, -18.65625], + [-68.97885742187503, -18.81298828125003], + [-68.96909179687498, -18.909667968750014], + [-68.96831054687502, -18.967968749999983], + [-68.93100585937495, -19.025195312500017], + [-68.85795898437499, -19.09335937500005], + [-68.75908203125002, -19.162207031250034], + [-68.68066406250003, -19.242382812500026], + [-68.62055664062495, -19.29667968749999], + [-68.54785156249997, -19.341113281249974], + [-68.49199218749996, -19.381933593750034], + [-68.47016601562495, -19.409960937499974], + [-68.46289062499997, -19.43281250000001], + [-68.48701171875001, -19.45439453124996], + [-68.57529296874998, -19.56015625000002], + [-68.69829101562499, -19.721093750000037], + [-68.69619140625, -19.74072265625003], + [-68.57827148437494, -19.856542968750006], + [-68.559375, -19.902343750000014], + [-68.56069335937502, -19.96708984374996], + [-68.60019531249998, -20.044921875000014], + [-68.72749023437498, -20.06962890624999], + [-68.75581054687498, -20.090820312500043], + [-68.75932617187499, -20.115527343750003], + [-68.73002929687496, -20.148437499999957], + [-68.73457031249998, -20.225195312499963], + [-68.68857421874995, -20.31005859375003], + [-68.7123046875, -20.338964843749963], + [-68.75922851562495, -20.37802734375002], + [-68.76054687499996, -20.416210937499983], + [-68.74516601562493, -20.45859375], + [-68.69580078125, -20.49296874999999], + [-68.49985351562495, -20.612011718749997], + [-68.48432617187498, -20.628417968749957], + [-68.48740234375, -20.640722656249977], + [-68.56318359374998, -20.720117187499994], + [-68.571044921875, -20.769140625000034], + [-68.5689453125, -20.849804687500026], + [-68.55825195312497, -20.901953125], + [-68.53383789062497, -20.923632812499974], + [-68.43549804687498, -20.948242187500014], + [-68.3138671875, -21.12968750000003], + [-68.197021484375, -21.30029296874997], + [-68.19853515624996, -21.447265624999986], + [-68.18642578124997, -21.618554687499966], + [-68.11215820312503, -21.753027343750006], + [-68.10180664062497, -21.860644531250003], + [-68.0767578125, -21.982812500000023], + [-67.98837890625003, -22.05712890624997], + [-67.95390624999993, -22.204003906249966], + [-67.94492187499998, -22.2822265625], + [-67.95039062499993, -22.333691406249997], + [-67.88173828124997, -22.493359375000026], + [-67.87373046874995, -22.630566406249997], + [-67.88999023437498, -22.729199218750026], + [-67.88916015624997, -22.78417968750003], + [-67.87944335937496, -22.822949218750026], + [-67.82050781249993, -22.857714843750003], + [-67.79443359374994, -22.87949218749999], + [-67.70732421874996, -22.889160156250014] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "China", + "iso_a2": "CN", + "iso_a3": "CHN", + "iso_n3": "156", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [110.88876953125006, 19.99194335937497], + [110.93828125000002, 19.94755859374999], + [110.97070312499997, 19.883300781250057], + [110.99765625000006, 19.764697265625045], + [111.01367187500003, 19.65546875000001], + [110.91269531250006, 19.586083984374994], + [110.82226562500003, 19.557910156250017], + [110.64091796875002, 19.291210937499955], + [110.603125, 19.20703125000003], + [110.57216796875005, 19.17187], + [110.5625, 19.13515625000005], + [110.56601562500006, 19.09853515625005], + [110.51933593750002, 18.97021484375003], + [110.47763671875006, 18.812597656250063], + [110.45126953125012, 18.747949218750023], + [110.39951171875006, 18.698339843750063], + [110.33369140625004, 18.67329101562501], + [110.29082031250002, 18.669531250000034], + [110.25175781250007, 18.65576171875], + [110.15625, 18.56982421874997], + [110.04853515625004, 18.505224609375063], + [110.06640624999997, 18.475634765625074], + [110.06738281249997, 18.447558593750045], + [110.02021484375004, 18.416259765625057], + [109.96767578125, 18.422070312499983], + [109.815625, 18.396679687499983], + [109.75976562500003, 18.348291015624966], + [109.70273437500012, 18.259130859375006], + [109.68105468750005, 18.247119140625045], + [109.58955078125004, 18.226318359375], + [109.51933593750007, 18.21826171875003], + [109.4000976562501, 18.281103515625063], + [109.34091796875012, 18.29960937499999], + [109.18320312500006, 18.325146484374955], + [109.02988281250006, 18.367773437500034], + [108.922265625, 18.416113281250034], + [108.7015625, 18.535253906250034], + [108.67607421875002, 18.75024414062497], + [108.63808593750005, 18.866308593749977], + [108.63564453125, 18.90771484375], + [108.65, 19.26503906250005], + [108.66552734375003, 19.304101562499994], + [108.69355468750004, 19.33828125000005], + [108.79101562500003, 19.418164062499983], + [108.90283203124997, 19.481347656249966], + [109.062890625, 19.61357421874999], + [109.17910156250005, 19.674121093750074], + [109.27666015625002, 19.761132812500023], + [109.21953125000002, 19.757470703124994], + [109.17744140625004, 19.768457031250023], + [109.21894531250004, 19.842822265625074], + [109.26347656250007, 19.882666015625006], + [109.31484375000005, 19.904394531250006], + [109.41816406250004, 19.888818359375023], + [109.51367187499997, 19.904248046874983], + [109.58427734375007, 19.9703125], + [109.65136718749997, 19.984375], + [109.90625, 19.962744140624977], + [110.08300781249997, 19.992919921875], + [110.1715820312501, 20.053710937500057], + [110.21337890624997, 20.056054687499994], + [110.3439453125001, 20.03881835937503], + [110.3922851562501, 19.97558593750003], + [110.38798828125002, 20.018017578124955], + [110.39355468749997, 20.059228515625023], + [110.41757812500012, 20.05473632812499], + [110.58818359375002, 19.976367187500017], + [110.58876953125, 20.072460937499955], + [110.59833984375004, 20.09760742187501], + [110.6517578125, 20.137744140625017], + [110.67851562500007, 20.137060546875063], + [110.74453125, 20.059472656249966], + [110.80908203125003, 20.01440429687503], + [110.88876953125006, 19.99194335937497] + ] + ], + [ + [ + [110.38515625000005, 21.093164062499966], + [110.42236328125003, 21.05859375000003], + [110.52158203125006, 21.083105468750063], + [110.53955078124997, 21.039013671874955], + [110.53886718750002, 21.018457031250023], + [110.50390625000003, 20.96772460937501], + [110.42187, 21.00688476562499], + [110.33994140625006, 20.997753906249983], + [110.28095703125004, 21.001171874999983], + [110.26464843750003, 21.02519531249999], + [110.30986328125002, 21.074755859375045], + [110.38515625000005, 21.093164062499966] + ] + ], + [ + [ + [112.64375, 21.63964843750003], + [112.54560546875004, 21.618505859374977], + [112.525, 21.62304687500003], + [112.558984375, 21.674755859374983], + [112.64765625000004, 21.710253906250017], + [112.64375, 21.63964843750003] + ] + ], + [ + [ + [112.79023437500004, 21.601855468750045], + [112.77109375000012, 21.581835937500045], + [112.74199218750007, 21.618066406249966], + [112.73349609375012, 21.66992187499997], + [112.71269531250002, 21.69794921875001], + [112.76054687500002, 21.733251953125006], + [112.78203125000007, 21.772265625000045], + [112.83906250000004, 21.764501953125063], + [112.86259765625002, 21.75263671875004], + [112.81259765625006, 21.712158203125057], + [112.80068359375005, 21.69487304687499], + [112.79023437500004, 21.601855468750045] + ] + ], + [ + [ + [113.55527343750012, 22.80419921875003], + [113.56367187500004, 22.757910156250034], + [113.48564453125002, 22.828320312499983], + [113.46337890625003, 22.832373046875006], + [113.42607421875007, 22.85859375000001], + [113.40439453125012, 22.90283203124997], + [113.46494140625006, 22.904541015625057], + [113.52050781250003, 22.85205078125003], + [113.55527343750012, 22.80419921875003] + ] + ], + [ + [ + [118.1830078125, 24.496289062499983], + [118.14951171875012, 24.436132812499977], + [118.0905273437501, 24.446142578125063], + [118.08876953125, 24.488867187500063], + [118.07675781250012, 24.501416015624955], + [118.09296875000004, 24.541210937499983], + [118.10380859375002, 24.552343750000034], + [118.17070312500007, 24.518505859374983], + [118.1830078125, 24.496289062499983] + ] + ], + [ + [ + [119.82089843750006, 25.45698242187504], + [119.74667968750006, 25.410693359375017], + [119.70029296875012, 25.432714843750063], + [119.69941406250004, 25.494726562499977], + [119.72304687500005, 25.55058593749999], + [119.69599609375004, 25.590869140625045], + [119.72255859375005, 25.638818359375023], + [119.77792968750012, 25.653173828125034], + [119.79746093750012, 25.623242187499983], + [119.82871093750006, 25.60737304687501], + [119.83837890625003, 25.591064453125], + [119.83867187500007, 25.559667968749977], + [119.80908203124997, 25.5078125], + [119.83242187500005, 25.479589843750006], + [119.82089843750006, 25.45698242187504] + ] + ], + [ + [ + [121.2513671875, 28.086425781250057], + [121.16425781250004, 28.0625], + [121.13154296875004, 28.062597656250006], + [121.1339843750001, 28.135253906250057], + [121.20546875, 28.204394531250017], + [121.234375, 28.181298828125023], + [121.25097656250003, 28.145214843749955], + [121.2513671875, 28.086425781250057] + ] + ], + [ + [ + [122.1725585937501, 29.67900390624996], + [122.16904296875012, 29.660253906250063], + [122.08378906250002, 29.725341796875], + [122.04267578125004, 29.7359375], + [122.06230468750002, 29.77275390624996], + [122.11962890624997, 29.78222656250003], + [122.16503906249997, 29.700781250000063], + [122.1725585937501, 29.67900390624996] + ] + ], + [ + [ + [122.40390625000006, 29.892382812500017], + [122.39404296875003, 29.84609375], + [122.36757812500005, 29.852685546874994], + [122.33183593750002, 29.934960937499966], + [122.35097656250005, 29.955224609375023], + [122.40156250000004, 29.95024414062499], + [122.40390625000006, 29.892382812500017] + ] + ], + [ + [ + [122.29589843750003, 29.96342773437499], + [122.28154296875002, 29.94384765625], + [122.15781250000012, 30.00126953124999], + [122.02402343750012, 30.01333007812505], + [121.97783203125002, 30.063818359375034], + [121.96943359375004, 30.143115234375017], + [122.1105468750001, 30.139746093750034], + [122.28447265625007, 30.068017578124994], + [122.32226562499997, 30.031396484374994], + [122.29589843750003, 29.96342773437499] + ] + ], + [ + [ + [121.86269531250005, 31.492285156249977], + [121.78046875000004, 31.46376953125005], + [121.519921875, 31.549609375000017], + [121.33642578125003, 31.64375], + [121.22685546875007, 31.75810546874996], + [121.2111328125001, 31.80537109375001], + [121.33896484375012, 31.797363281250057], + [121.46416015625002, 31.756445312499977], + [121.49179687500006, 31.69365234374999], + [121.54228515625002, 31.673925781250034], + [121.5765625, 31.637304687500034], + [121.80830078125004, 31.552148437500023], + [121.84365234375, 31.5263671875], + [121.86269531250005, 31.492285156249977] + ] + ], + [ + [ + [123.48945312500004, 53.529443359374994], + [123.53476562500006, 53.526464843750006], + [123.5597656250001, 53.526660156250045], + [123.6078125, 53.546533203124994], + [123.74091796875004, 53.51098632812503], + [123.99472656250006, 53.40561523437498], + [124.15429687499997, 53.35869140625002], + [124.21992187500004, 53.37011718750003], + [124.29140625, 53.34086914062502], + [124.36914062499997, 53.27094726562498], + [124.46591796875006, 53.22963867187502], + [124.63984375000004, 53.210644531249955], + [124.81230468750002, 53.133837890625045], + [124.88212890625002, 53.129736328125006], + [124.90664062500005, 53.172656250000045], + [124.9708984375001, 53.19731445312499], + [125.075, 53.20366210937496], + [125.22558593750003, 53.16582031249999], + [125.42246093750006, 53.08374023437503], + [125.54599609375006, 53.04760742187506], + [125.59599609375007, 53.057470703125006], + [125.64902343750012, 53.042285156250045], + [125.69169921875002, 53.00371093749999], + [125.69531249999997, 52.956298828125], + [125.68076171875012, 52.930810546874966], + [125.728125, 52.89072265624998], + [125.78281250000012, 52.89072265624998], + [125.871875, 52.87153320312498], + [125.94160156250004, 52.80068359375002], + [126.004296875, 52.76787109374999], + [126.04814453125007, 52.73945312499998], + [126.0560546875, 52.71586914062496], + [126.06015625000012, 52.69199218749998], + [126.04707031250004, 52.67348632812505], + [126.02324218750007, 52.643017578124955], + [126.016015625, 52.610205078125034], + [126.04589843749997, 52.57333984374998], + [126.15664062500005, 52.54663085937503], + [126.19443359375012, 52.519140625000034], + [126.20292968750007, 52.48383789062504], + [126.23759765625002, 52.44482421875], + [126.312890625, 52.39975585937506], + [126.34169921875, 52.36201171875001], + [126.32421875000003, 52.331640625000034], + [126.34628906250006, 52.30625], + [126.3834960937501, 52.286523437499994], + [126.39150390625005, 52.214501953124966], + [126.39482421875002, 52.17299804687505], + [126.45556640625003, 52.12646484374997], + [126.46806640625002, 52.031298828125045], + [126.51054687500002, 51.925830078125045], + [126.6537109375, 51.78129882812499], + [126.70078125000006, 51.70302734375005], + [126.6886718750001, 51.60991210937499], + [126.7091796875001, 51.566308593749994], + [126.77451171875006, 51.54506835937502], + [126.80546875000007, 51.50566406249999], + [126.80175781250003, 51.44804687499996], + [126.8273437500001, 51.41225585937505], + [126.84775390625006, 51.37416992187502], + [126.83378906250007, 51.31489257812501], + [126.85439453125, 51.26137695312502], + [126.88769531249997, 51.230126953124966], + [126.9115234375, 51.17231445312501], + [126.92480468749997, 51.10014648437496], + [127.02041015625, 50.985888671875045], + [127.19824218749997, 50.82944335937506], + [127.30703125000005, 50.70795898437501], + [127.346875, 50.62133789062503], + [127.34716796874997, 50.55009765624999], + [127.30820312500012, 50.49418945312496], + [127.3060546875, 50.45351562500002], + [127.34082031249997, 50.428076171875006], + [127.35117187500006, 50.39360351562499], + [127.33720703125007, 50.35014648437502], + [127.39531250000007, 50.298583984375], + [127.590234375, 50.20898437500003], + [127.51230468750012, 50.07167968750005], + [127.49179687500012, 49.97504882812498], + [127.50244140624997, 49.8734375], + [127.55078124999997, 49.801806640625045], + [127.63671874999997, 49.76020507812501], + [127.6901367187501, 49.71674804687504], + [127.71113281250004, 49.671533203124966], + [127.81425781250007, 49.62211914062502], + [127.99960937500006, 49.56860351562506], + [128.23710937500007, 49.55927734375001], + [128.5267578125, 49.59423828125003], + [128.70400390625, 49.60014648437499], + [128.76904296874997, 49.57695312499999], + [128.79101562500003, 49.541845703125006], + [128.77031250000007, 49.494726562500006], + [128.81933593750003, 49.46376953125002], + [128.93828125000002, 49.44892578125001], + [129.02031250000002, 49.41923828124999], + [129.0651367187501, 49.374658203124966], + [129.12011718750003, 49.36206054687497], + [129.18515625000012, 49.38139648437502], + [129.24843750000005, 49.378662109375], + [129.30986328125002, 49.353857421875006], + [129.35009765624997, 49.362353515625045], + [129.38466796875, 49.38945312499996], + [129.44072265625007, 49.38945312499996], + [129.49814453125012, 49.38881835937502], + [129.53369140624997, 49.32343750000001], + [129.59140625000012, 49.28666992187499], + [129.6710937500001, 49.27851562500001], + [129.79257812500006, 49.19887695312505], + [130.03710937499997, 48.97226562499998], + [130.1959960937501, 48.89165039062499], + [130.35527343750002, 48.866357421874994], + [130.553125, 48.861181640625006], + [130.61718750000003, 48.773193359375], + [130.565625, 48.680126953124955], + [130.5521484375, 48.602490234374955], + [130.59726562500012, 48.57465820312498], + [130.65917968750003, 48.48339843750003], + [130.746875, 48.43037109374998], + [130.76347656250007, 48.38842773437506], + [130.80429687500012, 48.34150390624998], + [130.78720703125012, 48.254589843749955], + [130.7121093750001, 48.12763671875004], + [130.7326171875001, 48.01923828124998], + [130.84863281249997, 47.92944335937497], + [130.9154296875, 47.84291992187502], + [130.9328125000001, 47.75981445312496], + [130.96191406249997, 47.70932617187498], + [131.00273437500002, 47.69145507812499], + [131.121875, 47.69765625], + [131.31933593749997, 47.72783203125002], + [131.4642578125, 47.72260742187504], + [131.55673828125012, 47.68203125000002], + [131.78525390625012, 47.68051757812498], + [132.14980468750005, 47.71796874999998], + [132.38017578125002, 47.7294921875], + [132.47626953125004, 47.714990234374994], + [132.5619140625, 47.768505859374955], + [132.6369140625001, 47.890087890624955], + [132.7072265625001, 47.94726562500006], + [132.77285156250005, 47.94008789062502], + [132.8771484375001, 47.97910156250006], + [133.02011718750006, 48.06440429687504], + [133.14404296875003, 48.10566406249998], + [133.30117187500005, 48.10151367187504], + [133.46835937500006, 48.09716796875003], + [133.57324218749997, 48.13300781249998], + [133.67177734375005, 48.20771484375001], + [133.84218750000005, 48.273730468750045], + [134.20585937500007, 48.35991210937502], + [134.29335937500005, 48.37343750000002], + [134.33496093749997, 48.368847656249955], + [134.45615234375006, 48.35532226562506], + [134.56357421875012, 48.321728515624955], + [134.66523437500004, 48.25390625], + [134.6808593750001, 48.21044921875003], + [134.6693359375, 48.15332031250003], + [134.64726562500002, 48.12016601562502], + [134.60537109375, 48.082910156249966], + [134.56601562500006, 48.02250976562502], + [134.59130859374997, 47.97519531250006], + [134.65029296875, 47.87426757812503], + [134.6986328125, 47.801416015624994], + [134.75234375, 47.71542968749998], + [134.728125, 47.684472656249994], + [134.69580078124997, 47.624853515625006], + [134.59619140624997, 47.523876953124955], + [134.54189453125005, 47.48515625], + [134.48349609375006, 47.447363281250006], + [134.3825195312501, 47.438232421875], + [134.33945312500012, 47.42949218749999], + [134.29082031250002, 47.41357421875003], + [134.26005859375002, 47.37773437500002], + [134.22519531250006, 47.35263671875006], + [134.1676757812501, 47.30219726562501], + [134.16298828125005, 47.25874023437504], + [134.18925781250007, 47.19423828125002], + [134.20214843750003, 47.128076171874966], + [134.13691406250004, 47.068994140624994], + [134.08642578124997, 46.978125], + [134.07138671875012, 46.95078125], + [134.04599609375006, 46.88198242187502], + [134.03857421874997, 46.85815429687503], + [134.02265625000004, 46.71318359374999], + [133.95751953124997, 46.6142578125], + [133.86660156250005, 46.499121093750006], + [133.88671874999997, 46.430566406249966], + [133.90273437500005, 46.36694335937497], + [133.8802734375, 46.33603515624998], + [133.87480468750002, 46.30908203125], + [133.86132812500003, 46.24775390625004], + [133.83281250000002, 46.22426757812505], + [133.75019531250004, 46.18593750000005], + [133.70068359374997, 46.13974609375006], + [133.7111328125001, 46.06962890624999], + [133.68574218750004, 46.00893554687505], + [133.6478515625, 45.95522460937502], + [133.60800781250012, 45.92031250000002], + [133.551171875, 45.89780273437506], + [133.51308593750005, 45.878808593749994], + [133.48466796875002, 45.81044921875002], + [133.4757812500001, 45.757666015625006], + [133.44912109375, 45.70507812500006], + [133.465625, 45.651220703125006], + [133.43642578125, 45.60468750000004], + [133.35546875000003, 45.57221679687498], + [133.30957031249997, 45.553076171875006], + [133.2669921875, 45.545263671875006], + [133.18603515625003, 45.49482421875004], + [133.11337890625006, 45.321435546874966], + [133.096875, 45.220458984375], + [133.1134765625001, 45.130712890625006], + [133.01171874999997, 45.074560546875034], + [132.93603515624997, 45.029931640624994], + [132.88876953125006, 45.046044921874994], + [132.83867187500007, 45.061132812500034], + [132.72314453124997, 45.08056640625], + [132.665625, 45.09370117187501], + [132.54902343750004, 45.122802734375], + [132.36298828125004, 45.15996093750002], + [132.1813476562501, 45.20327148437505], + [132.06738281249997, 45.225976562499966], + [131.97753906250003, 45.243994140625006], + [131.90927734375006, 45.27373046875002], + [131.85185546875002, 45.32685546875001], + [131.79492187499997, 45.305273437500034], + [131.74208984375005, 45.24262695312498], + [131.65400390625004, 45.205371093750045], + [131.61396484375004, 45.13657226562506], + [131.57871093750006, 45.08364257812502], + [131.4875, 45.01313476562504], + [131.44687500000012, 44.984033203124966], + [131.26826171875004, 44.93613281249998], + [131.2279296875, 44.92016601562503], + [131.08232421875002, 44.91000976562498], + [131.03300781250007, 44.88886718750004], + [130.9816406250001, 44.844335937500034], + [130.96777343750003, 44.79995117187505], + [131.00390625000003, 44.75322265625002], + [131.06064453125012, 44.65966796874997], + [131.08691406249997, 44.59565429687498], + [131.12578125000007, 44.46918945312498], + [131.2552734375, 44.07158203124999], + [131.21328125000005, 44.00292968750003], + [131.17421875, 43.70473632812502], + [131.18359375000003, 43.65087890624997], + [131.180078125, 43.567089843749955], + [131.18242187500007, 43.50556640625004], + [131.2091796875001, 43.49042968749998], + [131.24394531250007, 43.46904296874996], + [131.26181640625006, 43.43305664062501], + [131.25732421875003, 43.378076171874994], + [131.23935546875012, 43.33764648437503], + [131.21191406250003, 43.25776367187501], + [131.17558593750007, 43.1421875], + [131.13554687500002, 43.09760742187498], + [131.10898437500012, 43.06245117187501], + [131.08613281250004, 43.0380859375], + [131.08349609374997, 42.95629882812506], + [131.06855468750004, 42.90224609375005], + [131.0055664062501, 42.88310546874996], + [130.94287109375003, 42.85175781249998], + [130.86855468750005, 42.86333007812502], + [130.80332031250006, 42.85683593750002], + [130.72246093750007, 42.83583984375002], + [130.57724609375006, 42.81162109375006], + [130.49296875000002, 42.77910156250002], + [130.45273437500006, 42.75541992187499], + [130.42480468749997, 42.72705078124997], + [130.41992187499997, 42.69985351562502], + [130.43925781250002, 42.68554687500006], + [130.52060546875006, 42.67431640624997], + [130.5765625, 42.623242187499955], + [130.58447265625003, 42.56733398437504], + [130.52695312500012, 42.535400390625], + [130.49824218750004, 42.570507812499955], + [130.45029296875012, 42.58168945312502], + [130.3607421875, 42.630859375], + [130.29560546875004, 42.68496093750002], + [130.24667968750012, 42.744824218749955], + [130.24882812500002, 42.87260742187496], + [130.24033203125006, 42.891796874999955], + [130.15126953125005, 42.91796875000006], + [130.12480468750007, 42.95600585937498], + [130.08261718750006, 42.97416992187496], + [130.02226562500002, 42.96259765625001], + [129.97695312500005, 42.974853515625], + [129.94121093750007, 42.99565429687499], + [129.89824218750002, 42.998144531250034], + [129.86103515625004, 42.96508789062497], + [129.8415039062501, 42.89423828125001], + [129.77919921875, 42.77656250000001], + [129.77343749999997, 42.70546875000002], + [129.746484375, 42.60380859374999], + [129.71972656249997, 42.475], + [129.69785156250012, 42.448144531249994], + [129.62792968749997, 42.44428710937501], + [129.60390625, 42.43588867187498], + [129.56757812500004, 42.39208984375003], + [129.52373046875002, 42.38466796875002], + [129.48486328124997, 42.41030273437502], + [129.42363281250002, 42.43588867187498], + [129.36582031250006, 42.43920898437503], + [129.3136718750001, 42.41357421874997], + [129.25253906250006, 42.35786132812498], + [129.21777343750003, 42.31269531250001], + [129.20537109375007, 42.27055664062496], + [129.1955078125001, 42.21845703125001], + [129.13369140625005, 42.16850585937496], + [129.07724609375006, 42.14238281249996], + [128.96064453125004, 42.06879882812498], + [128.92343750000006, 42.038232421874966], + [128.83984375000003, 42.03784179687497], + [128.74902343749997, 42.04067382812502], + [128.62675781250002, 42.02084960937498], + [128.42724609374997, 42.01074218749997], + [128.3078125000001, 42.02563476562497], + [128.16015625000003, 42.011621093749966], + [128.04521484375007, 41.9875], + [128.0287109375, 41.95161132812501], + [128.03291015625004, 41.89848632812502], + [128.05605468750005, 41.86376953125006], + [128.0841796875001, 41.84057617187503], + [128.13193359375006, 41.769140625000034], + [128.18173828125006, 41.700048828125006], + [128.25781250000003, 41.655371093750034], + [128.28925781250004, 41.60742187500006], + [128.29091796875, 41.56279296875002], + [128.25488281249997, 41.50654296875001], + [128.20029296875012, 41.43300781250005], + [128.14941406249997, 41.38774414062496], + [128.11123046875, 41.389257812500006], + [128.05273437499997, 41.415625], + [128.0130859375, 41.44868164062504], + [127.91865234375004, 41.46113281250001], + [127.68769531250004, 41.439990234375045], + [127.57216796875005, 41.45473632812502], + [127.5169921875, 41.48173828125002], + [127.4203125, 41.483789062499994], + [127.27080078125002, 41.51982421874996], + [127.17968750000003, 41.531347656250006], + [127.13671874999997, 41.554541015625034], + [127.12841796874997, 41.60742187500006], + [127.0853515625, 41.643798828125], + [127.06132812500007, 41.68735351562498], + [127.00693359375006, 41.742041015625034], + [126.95478515625004, 41.76948242187501], + [126.9035156250001, 41.78105468749999], + [126.84726562500006, 41.74799804687501], + [126.78769531250012, 41.71821289062498], + [126.74306640625, 41.724853515625], + [126.72158203125005, 41.716552734375], + [126.6969726562501, 41.69189453125003], + [126.60126953125004, 41.640966796875034], + [126.5783203125001, 41.594335937500034], + [126.54013671875012, 41.49555664062498], + [126.51357421875005, 41.39399414062501], + [126.49042968750004, 41.35805664062505], + [126.45146484375007, 41.35185546875002], + [126.4118164062501, 41.32133789062502], + [126.32871093750012, 41.225683593750006], + [126.2536132812501, 41.137792968750034], + [126.14453124999997, 41.078271484374994], + [126.0931640625, 41.02368164062506], + [126.06679687500005, 40.97407226562498], + [125.98906250000002, 40.904638671875034], + [125.87490234375005, 40.892236328124994], + [125.78398437500007, 40.87202148437498], + [125.72832031250002, 40.86669921875006], + [125.68828125000002, 40.83867187500002], + [125.65917968749997, 40.7958984375], + [125.64511718750012, 40.77895507812502], + [125.59384765625006, 40.77895507812502], + [125.54257812500012, 40.742578125], + [125.41689453125, 40.65991210937503], + [125.31445312499997, 40.644628906250006], + [125.1859375, 40.589404296875045], + [125.0729492187501, 40.547460937500034], + [125.02597656250012, 40.52387695312501], + [125.01337890625004, 40.497851562500045], + [124.996875, 40.46474609375005], + [124.94228515625, 40.45815429687502], + [124.8893554687501, 40.459814453125006], + [124.77197265624997, 40.38374023437498], + [124.71240234374997, 40.319238281249966], + [124.48105468750012, 40.181640625], + [124.38662109375005, 40.10424804687506], + [124.36210937500002, 40.004052734374994], + [124.35, 40.011572265625006], + [124.26748046875005, 39.92416992187506], + [124.10576171875002, 39.84101562499998], + [123.76015625, 39.82241210937502], + [123.65087890625003, 39.881591796875], + [123.61123046875, 39.84082031250003], + [123.58066406250006, 39.7861328125], + [123.49003906250002, 39.76787109375002], + [123.34814453124997, 39.76293945312497], + [123.2689453125, 39.726904296875006], + [123.22656249999997, 39.68662109375006], + [123.03222656249997, 39.67353515624998], + [122.96093749999997, 39.61992187499996], + [122.8400390625001, 39.600830078125], + [122.33486328125005, 39.36611328125005], + [122.225, 39.267333984375], + [122.12089843750007, 39.15190429687502], + [122.04765625000007, 39.09379882812499], + [121.98232421875, 39.05317382812498], + [121.92265625000007, 39.03652343750005], + [121.86435546875012, 38.996484374999966], + [121.80517578124997, 38.99140625000001], + [121.7448242187501, 39.009667968749994], + [121.67724609374997, 39.00341796875006], + [121.63281250000003, 38.954833984375], + [121.67041015625003, 38.891796874999955], + [121.64990234375003, 38.865087890625034], + [121.51718750000006, 38.830761718749955], + [121.32011718750007, 38.80820312499998], + [121.23632812499997, 38.766943359375006], + [121.20742187500005, 38.743505859375034], + [121.16357421874997, 38.73164062500001], + [121.12167968750006, 38.813281250000045], + [121.10673828125002, 38.920800781249994], + [121.18828125000002, 38.94667968750005], + [121.26328125000006, 38.96025390624996], + [121.6798828125001, 39.10869140625002], + [121.62763671875004, 39.22016601562498], + [121.66455078124997, 39.26875], + [121.75781249999997, 39.347558593749994], + [121.81845703125006, 39.38652343750002], + [121.78544921875002, 39.40083007812501], + [121.5125, 39.37485351562506], + [121.35566406250004, 39.376806640625006], + [121.27548828125006, 39.38476562500003], + [121.29980468750003, 39.45219726562499], + [121.28632812500004, 39.51943359375002], + [121.26748046875, 39.544677734375], + [121.4064453125001, 39.621240234374966], + [121.46953125000007, 39.64013671875], + [121.51757812499997, 39.638964843750045], + [121.51425781250012, 39.685253906249955], + [121.47421875000012, 39.75488281250003], + [121.51738281250002, 39.84482421875006], + [121.8009765625001, 39.950537109375006], + [121.86894531250007, 40.04638671875], + [121.9828125, 40.135839843750006], + [122.19091796875003, 40.358251953125034], + [122.20332031250004, 40.39604492187499], + [122.26386718750004, 40.50019531249998], + [122.27500000000012, 40.541845703125034], + [122.17871093750003, 40.60273437500001], + [122.14042968750002, 40.68818359375001], + [121.85878906250005, 40.84208984375002], + [121.83486328125005, 40.97426757812502], + [121.80859375000003, 40.968505859375], + [121.76562, 40.87587890625005], + [121.72929687500002, 40.84614257812504], + [121.59892578125002, 40.843408203124994], + [121.53710937499997, 40.87841796875003], + [121.1745117187501, 40.901269531249994], + [121.08593749999997, 40.84160156249999], + [121.00292968750003, 40.74912109374998], + [120.922265625, 40.68310546875003], + [120.84130859374997, 40.64921875], + [120.77070312500004, 40.58906249999998], + [120.47910156250006, 40.23095703125003], + [120.36894531250002, 40.203857421875], + [119.85039062500007, 39.987451171874966], + [119.59111328125007, 39.90263671875002], + [119.39111328125003, 39.75249023437499], + [119.32236328125006, 39.66162109375003], + [119.26132812500006, 39.560888671875034], + [119.22460937500003, 39.40805664062498], + [119.04013671875012, 39.22236328124998], + [118.976953125, 39.182568359374955], + [118.9123046875001, 39.16640625000005], + [118.82646484375002, 39.17211914062506], + [118.75244140625003, 39.16049804687498], + [118.6263671875, 39.176855468750034], + [118.47197265625007, 39.118017578125034], + [118.29785156249997, 39.067089843749955], + [118.14785156250005, 39.19506835937503], + [118.04091796875, 39.22675781249998], + [117.86572265625003, 39.191259765625034], + [117.78466796875003, 39.13447265625001], + [117.61669921875003, 38.852880859375034], + [117.55380859375006, 38.69145507812499], + [117.5578125000001, 38.625146484374994], + [117.65605468750002, 38.42421875], + [117.76669921875012, 38.311669921874994], + [118.01494140625007, 38.18339843749996], + [118.54326171875002, 38.09492187499998], + [118.66708984375012, 38.126367187499994], + [118.8, 38.126660156249955], + [118.94003906250006, 38.04277343750002], + [119.02753906250004, 37.90400390624998], + [119.03564453124997, 37.809179687500034], + [119.03847656250005, 37.77651367187502], + [119.07031250000003, 37.74858398437502], + [119.08916015625007, 37.70073242187496], + [119.03349609375007, 37.66103515625005], + [118.99082031250006, 37.64135742187503], + [118.95488281250007, 37.494091796874955], + [118.95263671875003, 37.33115234374998], + [118.99814453125006, 37.27709960937497], + [119.11181640624997, 37.20117187499997], + [119.28740234375002, 37.138281250000034], + [119.4499023437501, 37.12475585937503], + [119.76054687500007, 37.15507812499999], + [119.8875, 37.25336914062504], + [119.87998046875006, 37.295800781249966], + [119.88291015625012, 37.350830078125], + [120.15585937500012, 37.495019531249966], + [120.31152343750003, 37.62270507812505], + [120.28710937500003, 37.656494140625], + [120.2572265625, 37.67900390624996], + [120.28466796874997, 37.69208984374998], + [120.37011718749997, 37.701025390625006], + [120.75, 37.83393554687501], + [121.0490234375001, 37.72519531250006], + [121.21953125000002, 37.60014648437499], + [121.3880859375, 37.578955078125006], + [121.50527343750005, 37.515039062499966], + [121.64023437500012, 37.46035156250002], + [121.81640625000003, 37.45664062500006], + [121.96484374999997, 37.44531249999997], + [122.01015625000005, 37.49575195312502], + [122.05664062500003, 37.528906250000034], + [122.10957031250004, 37.522314453125034], + [122.16914062500004, 37.456152343750034], + [122.33769531250007, 37.40527343749997], + [122.49326171875006, 37.407958984375], + [122.60234375000002, 37.42641601562502], + [122.66699218750003, 37.40283203125003], + [122.57333984375012, 37.317919921875045], + [122.58730468750005, 37.181103515624955], + [122.51552734375, 37.13784179687502], + [122.4466796875, 37.06811523437503], + [122.48740234375012, 37.02226562500002], + [122.52343749999997, 37.00263671875001], + [122.51972656250004, 36.94682617187502], + [122.45703124999997, 36.91513671875006], + [122.34091796875012, 36.83222656250004], + [122.27421875000002, 36.833837890625006], + [122.24228515625012, 36.84985351562497], + [122.21972656250003, 36.879541015624994], + [122.20322265625006, 36.92719726562501], + [122.16240234375007, 36.95864257812502], + [122.0495117187501, 36.97075195312502], + [121.93271484375006, 36.95947265625003], + [121.66962890625004, 36.83637695312498], + [121.41308593750003, 36.738378906250006], + [121.14404296874997, 36.660449218750045], + [121.05380859375006, 36.61137695312499], + [120.98994140625004, 36.59794921874999], + [120.87851562500006, 36.63515625000002], + [120.81083984375007, 36.6328125], + [120.79667968750002, 36.60722656250002], + [120.88261718750002, 36.53891601562506], + [120.90498046875004, 36.485302734374955], + [120.89580078125007, 36.44414062500002], + [120.8470703125, 36.42607421874999], + [120.77617187500002, 36.456298828125], + [120.71152343750006, 36.41328125000004], + [120.68222656250006, 36.340722656249994], + [120.68095703125007, 36.168359374999966], + [120.6378906250001, 36.129931640625045], + [120.51933593750002, 36.10869140624999], + [120.39306640625003, 36.053857421874994], + [120.34824218750006, 36.079199218750006], + [120.33027343750004, 36.110107421875], + [120.34345703125004, 36.189453125], + [120.32773437500006, 36.228173828124994], + [120.27011718750012, 36.226171875000034], + [120.18330078125004, 36.20244140624999], + [120.11699218750002, 36.15029296875002], + [120.094140625, 36.11889648437503], + [120.18144531250002, 36.01748046875005], + [120.26474609375012, 36.007226562499994], + [120.28476562500006, 35.98442382812499], + [120.21904296875002, 35.934912109375006], + [120.05468750000003, 35.86113281249999], + [120.02744140625006, 35.79936523437502], + [119.9787109375001, 35.74023437500006], + [119.91171875000012, 35.69321289062498], + [119.86621093749997, 35.643652343750006], + [119.81054687500003, 35.61772460937496], + [119.71972656249997, 35.588720703125006], + [119.60839843749997, 35.46987304687505], + [119.52646484375006, 35.35859375000001], + [119.42968749999997, 35.301416015624994], + [119.35283203125002, 35.11381835937499], + [119.21582031250003, 35.01176757812496], + [119.16533203125002, 34.84882812499998], + [119.20097656250002, 34.748437499999966], + [119.35136718750002, 34.749414062499994], + [119.42675781249997, 34.71416015625002], + [119.58291015625, 34.58222656250004], + [119.76972656250004, 34.496191406250006], + [119.96367187500002, 34.44780273437502], + [120.20146484375007, 34.32568359375], + [120.26669921875006, 34.274023437500034], + [120.32265625, 34.16899414062496], + [120.42568359375, 33.866308593750034], + [120.49980468750002, 33.71645507812505], + [120.50478515625005, 33.63818359375], + [120.615625, 33.49052734375002], + [120.73447265625006, 33.23662109374999], + [120.87109374999997, 33.016503906249994], + [120.89736328125, 32.843212890624955], + [120.85302734374997, 32.76411132812501], + [120.8532226562501, 32.66137695312503], + [120.98994140625004, 32.567041015624994], + [121.29335937500005, 32.457324218750045], + [121.34169921875005, 32.42504882812503], + [121.40097656250012, 32.371923828125034], + [121.40390625000006, 32.20625], + [121.45078125000006, 32.1533203125], + [121.49052734375007, 32.12109375000003], + [121.67421875, 32.05102539062503], + [121.75107421875012, 31.99287109375001], + [121.832421875, 31.899755859375034], + [121.85634765625, 31.816455078125045], + [121.86630859375006, 31.703564453124955], + [121.76357421875, 31.699511718750017], + [121.68085937500004, 31.71215820312503], + [121.351953125, 31.85878906250005], + [121.26640625000007, 31.86269531250005], + [121.14580078125002, 31.84233398437499], + [120.97353515625, 31.86938476562497], + [120.79169921875004, 32.03173828125003], + [120.660546875, 32.08105468750003], + [120.52011718750006, 32.10585937500002], + [120.18408203125003, 31.966162109374977], + [120.09873046875012, 31.975976562500023], + [120.07392578125004, 31.960253906250017], + [120.03593750000002, 31.93627929687503], + [120.19160156250004, 31.906347656250063], + [120.34746093750007, 31.952099609374955], + [120.49716796875012, 32.01982421874999], + [120.7155273437501, 31.983740234375006], + [120.75224609375002, 31.92285156250003], + [120.7877929687501, 31.81977539062501], + [120.9375, 31.75019531250004], + [121.05537109375004, 31.719433593749983], + [121.20488281250002, 31.628076171875023], + [121.35097656250005, 31.4853515625], + [121.66064453124997, 31.319726562499994], + [121.78593750000002, 31.162890625000017], + [121.83447265624997, 31.061621093750006], + [121.87792968750003, 30.91699218750003], + [121.76943359375005, 30.87036132812503], + [121.67519531250005, 30.86376953125003], + [121.52753906250004, 30.840966796874994], + [121.41894531249997, 30.789794921875057], + [121.30996093750005, 30.69970703125], + [120.99765625000012, 30.558251953125023], + [120.93828125000002, 30.46972656250003], + [120.89746093750003, 30.392626953125045], + [120.8214843750001, 30.354638671875023], + [120.62998046875006, 30.39086914062503], + [120.44980468750006, 30.38784179687505], + [120.2455078125, 30.283544921875034], + [120.19462890625002, 30.241308593750034], + [120.22851562499997, 30.249560546875017], + [120.26054687500002, 30.263037109375034], + [120.35253906249997, 30.247412109375034], + [120.49453125, 30.303076171875006], + [120.63339843750006, 30.133154296875034], + [120.90449218750004, 30.16064453125003], + [121.159375, 30.3017578125], + [121.25800781250004, 30.30410156250005], + [121.340625, 30.282373046874966], + [121.43271484375012, 30.226660156249977], + [121.67792968750004, 29.979101562500006], + [121.81230468750007, 29.9521484375], + [121.94433593749997, 29.89409179687499], + [122.0172851562501, 29.88769531250003], + [122.08291015625005, 29.870361328125057], + [121.90576171875003, 29.77968750000005], + [121.67656250000002, 29.583789062500017], + [121.57460937500005, 29.537011718749994], + [121.50625, 29.484570312499955], + [121.69042968750003, 29.51098632812503], + [121.821875, 29.604638671874994], + [121.88798828125002, 29.627783203125006], + [121.94121093750002, 29.605908203124983], + [121.96835937500006, 29.490625], + [121.91777343750007, 29.13500976562497], + [121.85351562500003, 29.12890624999997], + [121.79082031250002, 29.225683593749977], + [121.71748046875004, 29.25634765625], + [121.6559570312501, 29.23613281249999], + [121.53369140624997, 29.236718750000023], + [121.48710937500007, 29.193164062500017], + [121.44765625000005, 29.13134765625003], + [121.52089843750005, 29.11845703124999], + [121.66494140625, 29.010595703125034], + [121.67968749999997, 28.953125], + [121.641015625, 28.915917968750023], + [121.54003906250003, 28.931884765625], + [121.6625, 28.851416015625034], + [121.6300781250001, 28.767919921874977], + [121.59033203124997, 28.734814453124983], + [121.51914062500012, 28.713671875000045], + [121.47519531250006, 28.64140625], + [121.53808593749997, 28.521093750000063], + [121.60205078124997, 28.366601562500023], + [121.60996093750006, 28.29213867187505], + [121.50996093750004, 28.324267578125017], + [121.35458984375006, 28.229882812499966], + [121.27226562500002, 28.222119140624983], + [121.21679687499997, 28.34619140625003], + [121.14570312500004, 28.32666015624997], + [121.09843750000002, 28.29052734374997], + [121.03544921875007, 28.157275390625017], + [120.95859375000006, 28.037011718750023], + [120.89248046875, 28.00390625000003], + [120.81298828124997, 28.01337890625001], + [120.74765625000006, 28.00996093750001], + [120.76347656250002, 27.977441406249966], + [120.83300781249997, 27.93779296874996], + [120.83300781249997, 27.891455078125034], + [120.68515625000012, 27.744580078124955], + [120.66132812500004, 27.68789062500005], + [120.66484375000007, 27.639453125000045], + [120.58750000000012, 27.580761718749983], + [120.6291015625001, 27.482128906249955], + [120.60751953125012, 27.41240234374996], + [120.53984375000002, 27.318359375], + [120.46865234375, 27.25625], + [120.38457031250007, 27.15551757812503], + [120.2787109375, 27.097070312500023], + [120.13857421875005, 26.88613281250005], + [120.09746093750002, 26.78066406250005], + [120.08671875000007, 26.67158203125004], + [120.04296875000003, 26.63383789062499], + [119.96777343749997, 26.586376953124983], + [119.88222656250005, 26.610449218750006], + [119.87949218750012, 26.68300781250005], + [119.84238281250012, 26.689306640625006], + [119.82128906249997, 26.736914062500006], + [119.81513671875004, 26.79760742187503], + [119.82421874999997, 26.84638671875001], + [119.78867187500012, 26.83149414062501], + [119.76669921875006, 26.77470703124999], + [119.71044921874997, 26.728662109375023], + [119.65156250000004, 26.747265624999983], + [119.58818359375002, 26.784960937500045], + [119.58994140625012, 26.73046875000003], + [119.62363281250006, 26.675878906250006], + [119.63818359374997, 26.621191406249977], + [119.7259765625, 26.60942382812499], + [119.78476562500012, 26.54663085937497], + [119.83115234375006, 26.450195312500057], + [119.84033203124997, 26.414160156249977], + [119.87646484374997, 26.370947265624977], + [119.8810546875001, 26.33417968750004], + [119.797265625, 26.300146484375034], + [119.69267578125007, 26.236425781250006], + [119.5670898437501, 26.12734375], + [119.46308593750004, 26.05468750000003], + [119.36972656250012, 26.054052734374977], + [119.31308593750012, 26.062548828125017], + [119.23212890625004, 26.104394531250023], + [119.13945312500007, 26.12177734375001], + [119.26376953125012, 25.97480468750001], + [119.33203124999997, 25.94873046875003], + [119.41777343750002, 25.954345703125], + [119.50087890625, 26.009179687499994], + [119.61875000000012, 26.003564453124994], + [119.64824218750002, 25.91870117187503], + [119.6168945312501, 25.822900390624966], + [119.55283203125012, 25.698681640624983], + [119.53945312500005, 25.59125976562504], + [119.61914062500003, 25.437451171874955], + [119.6224609375, 25.391162109375017], + [119.59277343749997, 25.368017578125034], + [119.4992187500001, 25.40864257812504], + [119.42177734375005, 25.459619140625023], + [119.34375, 25.44628906249997], + [119.26308593750005, 25.468017578125057], + [119.180078125, 25.449804687499977], + [119.14628906250007, 25.41430664062503], + [119.16933593750005, 25.355712890625], + [119.2435546875, 25.307031250000023], + [119.285546875, 25.232226562500074], + [119.23554687500004, 25.20595703125005], + [119.02460937500004, 25.223437500000045], + [118.97753906249997, 25.209277343750017], + [118.914453125, 25.126806640625006], + [118.95566406250012, 25.004785156249994], + [118.90908203125005, 24.92890625000001], + [118.82207031250007, 24.91113281250003], + [118.70751953125003, 24.849804687499955], + [118.63691406250004, 24.835546874999977], + [118.64023437500006, 24.80908203125003], + [118.691796875, 24.782324218749977], + [118.719140625, 24.746142578125074], + [118.65703125000002, 24.621435546874977], + [118.56035156250007, 24.580371093750045], + [118.41201171875005, 24.600732421875023], + [118.29531250000005, 24.57275390625], + [118.19453125000004, 24.625830078124977], + [118.0871093750001, 24.627001953125045], + [118.0138671875001, 24.559912109375063], + [118.00595703125006, 24.48198242187499], + [117.93505859375003, 24.47421875], + [117.896875, 24.479833984375006], + [117.84267578125005, 24.47431640625004], + [117.84824218750012, 24.432470703125034], + [117.87900390625006, 24.39589843750005], + [118.02421875000007, 24.379638671875], + [118.05058593750002, 24.32714843749997], + [118.0560546875, 24.24609374999997], + [117.90410156250002, 24.106445312500057], + [117.83945312500006, 24.012304687500063], + [117.74169921874997, 24.014794921875023], + [117.66787109375005, 23.93925781249999], + [117.62822265625002, 23.836718750000074], + [117.57919921875012, 23.856982421875017], + [117.46640625000012, 23.84057617187497], + [117.43310546874997, 23.791699218749955], + [117.45957031250006, 23.77148437500003], + [117.46220703125007, 23.736230468750023], + [117.41699218749997, 23.620996093749994], + [117.36767578124997, 23.58862304687497], + [117.34667968749997, 23.63574218749997], + [117.33076171875004, 23.708789062500045], + [117.29082031250007, 23.71435546875], + [117.225, 23.647021484375074], + [117.14814453125004, 23.598779296874994], + [117.08251953124997, 23.578759765625023], + [117.03281250000006, 23.623437499999966], + [116.91064453124997, 23.646679687499983], + [116.86093750000006, 23.453076171874983], + [116.75957031250002, 23.38251953125001], + [116.7121093750001, 23.36049804687505], + [116.62939453124997, 23.353857421875034], + [116.6823242187501, 23.327392578125057], + [116.69882812500006, 23.277783203124983], + [116.66914062500004, 23.228173828124994], + [116.58642578124997, 23.21826171875003], + [116.53828125000004, 23.17968749999997], + [116.51982421875002, 23.00659179687497], + [116.47070312499997, 22.945898437500034], + [116.34550781250002, 22.941064453125023], + [116.25185546875005, 22.981347656249994], + [116.2220703125, 22.949560546874977], + [116.20634765625002, 22.91865234375001], + [116.1574218750001, 22.88745117187503], + [116.06259765625012, 22.87910156250001], + [115.85214843750006, 22.801562500000045], + [115.75585937499997, 22.823925781249983], + [115.64042968750002, 22.853417968750023], + [115.56113281250012, 22.824707031250057], + [115.53466796875003, 22.76518554687499], + [115.49833984375002, 22.718847656250063], + [115.38251953125004, 22.718847656250063], + [115.28994140625, 22.775976562499977], + [115.19580078125003, 22.81728515625005], + [115.0915039062501, 22.781689453124983], + [115.012109375, 22.708935546874983], + [114.914453125, 22.684619140625017], + [114.89638671875005, 22.639501953125063], + [114.85380859375007, 22.616796875000063], + [114.75039062500005, 22.626318359375034], + [114.71113281250004, 22.73872070312501], + [114.65166015625002, 22.755273437500023], + [114.59277343749997, 22.698437499999983], + [114.57197265625004, 22.654052734375], + [114.54443359375003, 22.62060546875003], + [114.55419921874997, 22.52890625], + [114.49619140625012, 22.527050781249983], + [114.4201171875001, 22.58325195312497], + [114.340625, 22.593212890624955], + [114.26601562500005, 22.540966796874983], + [114.22822265625004, 22.55395507812503], + [114.1881835937501, 22.564990234375074], + [114.12285156250002, 22.564990234375074], + [114.09785156250004, 22.55126953125003], + [114.05039062500006, 22.54296875000003], + [114.0182617187501, 22.51445312499999], + [114.01542968750007, 22.51191406250001], + [113.93115234375003, 22.53105468749999], + [113.82832031250004, 22.607226562500045], + [113.75449218750012, 22.733642578125057], + [113.66113281249997, 22.801660156249966], + [113.61962890624997, 22.861425781249977], + [113.60341796875005, 22.968896484375023], + [113.58632812500005, 23.020019531250057], + [113.5921875, 23.076953125000017], + [113.6205078125, 23.12749023437499], + [113.51972656250004, 23.102099609375074], + [113.44531249999997, 23.055078125], + [113.46035156250005, 22.995703124999977], + [113.44189453125003, 22.940576171875023], + [113.33105468749997, 22.912011718749966], + [113.33779296875005, 22.88881835937505], + [113.34482421875012, 22.864599609375006], + [113.43203125000005, 22.789404296875034], + [113.44980468750012, 22.726123046875045], + [113.48476562500005, 22.6923828125], + [113.55302734375002, 22.594042968750045], + [113.55146484375004, 22.404150390624977], + [113.58886718750003, 22.350488281249966], + [113.57646484375007, 22.297265624999966], + [113.54912109375002, 22.225195312500034], + [113.54677734375005, 22.22412109375], + [113.52705078125004, 22.245947265625006], + [113.49414062499997, 22.241552734374977], + [113.48105468750006, 22.217480468749983], + [113.47890625, 22.19555664062503], + [113.47343750000002, 22.194433593749977], + [113.4157226562501, 22.178369140624994], + [113.3673828125001, 22.16484374999999], + [113.32773437500012, 22.145410156250023], + [113.26640625000007, 22.08876953125005], + [113.14902343750012, 22.075], + [113.08876953125, 22.207958984374983], + [113.00820312500005, 22.119335937499955], + [112.98378906250005, 21.938232421875], + [112.95390625000007, 21.907324218750034], + [112.90380859374997, 21.881445312499977], + [112.80859374999997, 21.944628906250074], + [112.72539062500007, 21.90234374999997], + [112.66074218750012, 21.859472656250034], + [112.63408203125002, 21.819873046875045], + [112.58632812500005, 21.77685546875], + [112.49472656250006, 21.81831054687501], + [112.4212890625, 21.880615234375], + [112.43945312499997, 21.92734375], + [112.42929687500012, 21.958105468749977], + [112.39609375000012, 21.981347656249994], + [112.35966796875007, 21.97802734375003], + [112.37744140624997, 21.917480468750057], + [112.38974609375006, 21.801220703124983], + [112.35644531250003, 21.76757812499997], + [112.30498046875002, 21.74169921875003], + [112.19335937500003, 21.763134765624955], + [112.11718749999997, 21.806494140625006], + [112.02519531250007, 21.84301757812497], + [111.94394531250012, 21.84965820312499], + [111.9264648437501, 21.776269531249966], + [111.87343750000005, 21.717138671875006], + [111.82460937500005, 21.709765625000017], + [111.77597656250006, 21.71923828124997], + [111.71191406249997, 21.65522460937501], + [111.68164062499997, 21.608496093749977], + [111.60273437500004, 21.55908203125003], + [111.39238281250002, 21.535107421874955], + [111.31914062500002, 21.486132812500017], + [111.22060546875, 21.493896484375], + [111.1442382812501, 21.482226562500017], + [111.10058593749997, 21.484716796874977], + [111.06113281250012, 21.510986328125], + [111.01689453125007, 21.51171874999997], + [110.99677734375004, 21.430273437500006], + [110.87802734375012, 21.39594726562501], + [110.77109375000006, 21.386523437500045], + [110.65214843750002, 21.279101562500017], + [110.56718750000002, 21.21406250000001], + [110.504296875, 21.207421875], + [110.45800781249997, 21.230566406250006], + [110.43457031250003, 21.326904296875], + [110.41093750000007, 21.33813476562497], + [110.39746093749997, 21.247705078125023], + [110.37460937500006, 21.17236328125003], + [110.33115234375006, 21.13134765625003], + [110.1935546875001, 21.037646484375045], + [110.15400390625004, 20.944628906250017], + [110.1803710937501, 20.858593749999983], + [110.36542968750004, 20.837597656249955], + [110.38847656250002, 20.790527343750057], + [110.3705078125, 20.752050781250034], + [110.32617187500003, 20.719921874999955], + [110.31308593750012, 20.67167968749999], + [110.51152343750007, 20.51826171875001], + [110.51757812500003, 20.460009765625045], + [110.48691406250012, 20.426855468750034], + [110.44951171875002, 20.355419921874955], + [110.34472656249997, 20.29482421875005], + [110.12314453125006, 20.263720703125017], + [109.93847656250003, 20.29511718750001], + [109.88251953125004, 20.364062500000045], + [109.88583984375012, 20.41313476562499], + [109.93164062500003, 20.39887695312501], + [109.98388671875003, 20.40327148437504], + [109.96835937500006, 20.448144531250023], + [109.94638671875012, 20.47436523437503], + [109.86103515625004, 20.514306640624994], + [109.79199218750003, 20.621875], + [109.80527343750006, 20.711474609375017], + [109.76738281250007, 20.78071289062501], + [109.72626953125004, 20.838769531250023], + [109.6847656250001, 20.873632812500006], + [109.66259765625003, 20.91689453125005], + [109.70449218750005, 21.052734375], + [109.68125000000012, 21.13164062499999], + [109.76015625, 21.228369140624977], + [109.77958984375007, 21.337451171875017], + [109.92109375000004, 21.376464843750057], + [109.93076171875012, 21.480566406250034], + [109.82958984375003, 21.48359375000004], + [109.75937500000012, 21.56005859374997], + [109.74335937500004, 21.527978515625023], + [109.6869140625, 21.52460937500004], + [109.59433593750006, 21.671972656250034], + [109.56640624999997, 21.690576171874994], + [109.52148437499997, 21.693408203125045], + [109.54404296875012, 21.537939453125006], + [109.43554687499997, 21.4794921875], + [109.34667968749997, 21.453955078125034], + [109.2204101562501, 21.443408203125017], + [109.14863281250004, 21.425537109375], + [109.08154296874997, 21.440283203125006], + [109.09814453124997, 21.48735351562499], + [109.13349609375004, 21.543603515624994], + [109.1017578125001, 21.59047851562505], + [109.03056640625007, 21.626513671875017], + [108.92177734375, 21.624414062500023], + [108.8463867187501, 21.63447265625004], + [108.77167968750004, 21.63046875], + [108.74394531250002, 21.651269531249994], + [108.6745117187501, 21.724658203125017], + [108.61582031250012, 21.77045898437504], + [108.58935546874997, 21.815966796875074], + [108.61582031250012, 21.868896484375], + [108.59375, 21.901025390624994], + [108.47988281250005, 21.904638671875006], + [108.48085937500005, 21.82880859375001], + [108.49257812500005, 21.739404296874994], + [108.52568359375002, 21.67138671875], + [108.50214843750004, 21.633447265624994], + [108.44433593749997, 21.607324218750023], + [108.38281249999997, 21.67919921875], + [108.35458984375012, 21.696923828124966], + [108.32480468750006, 21.693505859374994], + [108.3021484375, 21.621923828125063], + [108.24628906250004, 21.55839843749999], + [108.14560546875006, 21.56518554687503], + [108.06738281250003, 21.525976562500034], + [107.97265624999997, 21.507958984375023], + [107.90839843750004, 21.560400390625034], + [107.80205078125007, 21.645166015624994], + [107.75927734374997, 21.655029296875057], + [107.64101562500005, 21.613916015625023], + [107.4713867187501, 21.598339843749955], + [107.43349609375005, 21.64228515625004], + [107.35117187500012, 21.60888671874997], + [107.27207031250006, 21.71064453125001], + [107.17851562500002, 21.71708984374999], + [107.06162109375012, 21.79418945312497], + [107.01982421875002, 21.834863281249994], + [107.00644531250006, 21.893408203125034], + [106.97099609375002, 21.923925781250034], + [106.92519531250005, 21.920117187499955], + [106.87451171875003, 21.951269531250006], + [106.79414062500004, 21.981982421875045], + [106.72949218749997, 22.000341796875063], + [106.69765625000005, 21.986181640625006], + [106.66357421875003, 21.97890625000005], + [106.65771484374997, 22.018212890624966], + [106.66005859375, 22.136474609375], + [106.65419921875, 22.24145507812497], + [106.63652343750002, 22.28862304687499], + [106.5931640625, 22.324511718750017], + [106.55361328125, 22.341699218749966], + [106.53632812500004, 22.395410156249994], + [106.55039062500006, 22.501367187499994], + [106.582421875, 22.57324218749997], + [106.63310546875002, 22.586035156250006], + [106.70156250000005, 22.637744140625045], + [106.73632812500003, 22.710937500000057], + [106.78027343749997, 22.778906250000034], + [106.62402343749997, 22.87426757812503], + [106.54179687500007, 22.908349609375023], + [106.45087890625004, 22.893896484375006], + [106.33808593750004, 22.86347656250004], + [106.2790039062501, 22.857470703125045], + [106.24941406250005, 22.869433593750017], + [106.183984375, 22.955126953125045], + [106.14843749999997, 22.970068359375006], + [106.06845703125012, 22.975537109374955], + [106.00097656250003, 22.974755859374966], + [105.9623046875, 22.93745117187501], + [105.90263671875007, 22.92495117187505], + [105.8429687500001, 22.922802734374955], + [105.78232421875006, 22.969335937500034], + [105.69121093750007, 23.029931640625023], + [105.54814453125007, 23.072656250000023], + [105.53085937500012, 23.121972656250023], + [105.49453125, 23.18085937500004], + [105.4401367187501, 23.23535156250003], + [105.35048828125005, 23.307666015625017], + [105.27539062500003, 23.34521484375003], + [105.23876953125003, 23.322119140625034], + [105.18906250000012, 23.281054687500017], + [104.99570312500006, 23.19433593750003], + [104.91015625000003, 23.160546875], + [104.86474609375003, 23.136376953125023], + [104.82656250000005, 23.100195312500034], + [104.81474609375002, 23.010791015625017], + [104.79570312500007, 22.91113281249997], + [104.74003906250002, 22.860498046874966], + [104.68730468750002, 22.822216796874983], + [104.63173828125, 22.818212890625063], + [104.57753906250005, 22.820019531249983], + [104.52685546875003, 22.804101562500023], + [104.37177734375004, 22.704052734374983], + [104.29833984374997, 22.712011718750006], + [104.23828125000003, 22.768505859374955], + [104.21250000000012, 22.809423828125034], + [104.14306640624997, 22.800146484375006], + [104.05390625000004, 22.752294921875034], + [104.01269531249997, 22.666357421875034], + [103.99082031250006, 22.58613281250001], + [103.9713867187501, 22.550488281249955], + [103.94150390625006, 22.540087890625045], + [103.91503906249997, 22.538232421875023], + [103.63730468750006, 22.77001953125], + [103.62021484375006, 22.782031250000045], + [103.570703125, 22.734423828125045], + [103.52539062500003, 22.611572265625057], + [103.49296875000007, 22.587988281250034], + [103.47099609375002, 22.597412109375], + [103.35605468750006, 22.75468749999999], + [103.32666015625003, 22.769775390625057], + [103.30058593750002, 22.76440429687503], + [103.26630859375004, 22.71352539062505], + [103.19335937500003, 22.638525390625034], + [103.13759765625005, 22.592968749999983], + [103.13632812500006, 22.542236328125057], + [103.0758789062501, 22.49750976562501], + [103.00537109375003, 22.452978515624977], + [102.98193359374997, 22.4482421875], + [102.93515625000012, 22.466162109375006], + [102.87421875000004, 22.525390625], + [102.83007812500003, 22.587158203125057], + [102.72099609375007, 22.648486328125017], + [102.59853515625, 22.70039062500004], + [102.51718750000012, 22.741015625000045], + [102.47089843750004, 22.75092773437501], + [102.42792968750004, 22.732812499999966], + [102.40644531250004, 22.70800781249997], + [102.37578125000002, 22.646630859374994], + [102.30224609375003, 22.545996093750006], + [102.2370117187501, 22.466015624999983], + [102.1759765625001, 22.414648437500006], + [102.12744140624997, 22.379199218750045], + [102.0915039062501, 22.41225585937505], + [102.02441406250003, 22.43920898437503], + [101.94541015625006, 22.439404296874983], + [101.84179687500003, 22.38847656249999], + [101.75996093750004, 22.490332031250034], + [101.73876953124997, 22.495263671874994], + [101.70751953125003, 22.486572265625], + [101.67148437500006, 22.462304687500023], + [101.64619140625004, 22.405419921874966], + [101.61992187500002, 22.32744140624999], + [101.56787109374997, 22.27636718749997], + [101.52451171875006, 22.25366210937497], + [101.5373046875001, 22.209863281250023], + [101.56181640625002, 22.162402343750017], + [101.56025390625004, 22.120898437500017], + [101.57578125000012, 22.055273437500063], + [101.60292968750005, 21.98969726562501], + [101.699609375, 21.882470703125023], + [101.7365234375001, 21.826513671874977], + [101.74394531250007, 21.77797851562505], + [101.74726562500004, 21.605761718750045], + [101.74345703125007, 21.53383789062505], + [101.72421875000006, 21.39501953125], + [101.72294921875007, 21.31494140625003], + [101.7630859375, 21.278906249999977], + [101.80205078125002, 21.235986328125023], + [101.80058593750007, 21.212597656249983], + [101.78349609375007, 21.204150390625017], + [101.728125, 21.156396484374994], + [101.7047851562501, 21.15014648437503], + [101.66855468750006, 21.16962890625001], + [101.62167968750012, 21.184423828125006], + [101.58388671875005, 21.20356445312501], + [101.54238281250005, 21.23427734375005], + [101.4435546875001, 21.230810546875034], + [101.2814453125001, 21.184130859375045], + [101.24785156250007, 21.197314453125045], + [101.22441406250002, 21.223730468750034], + [101.21181640625, 21.278222656250023], + [101.2199218750001, 21.34243164062505], + [101.20556640624997, 21.38330078125003], + [101.17539062500006, 21.407519531250074], + [101.19667968750005, 21.522070312500063], + [101.1388671875001, 21.567480468749977], + [101.14726562500002, 21.581640625], + [101.128125, 21.705126953125045], + [101.13085937499997, 21.73554687500001], + [101.12070312500012, 21.74609375000003], + [101.07978515625004, 21.75585937499997], + [101.01933593750007, 21.736376953125017], + [100.83515625000004, 21.655175781249994], + [100.6771484375, 21.504931640625017], + [100.60458984375012, 21.471777343750006], + [100.53134765625012, 21.458105468749977], + [100.445703125, 21.48408203125004], + [100.35058593749997, 21.501025390625017], + [100.21474609375, 21.462988281250006], + [100.14765625000004, 21.480517578125017], + [100.11679687500006, 21.511181640624955], + [100.08925781250005, 21.557910156250074], + [100.10576171875002, 21.617041015625034], + [100.09550781250007, 21.66064453125003], + [100.0412109375001, 21.682763671875023], + [99.97822265625004, 21.70161132812504], + [99.94072265625007, 21.75874023437504], + [99.92558593750007, 21.82080078124997], + [99.94042968749997, 21.901611328125], + [99.94785156250006, 21.988330078125017], + [99.9176757812501, 22.02802734375001], + [99.8253906250001, 22.049707031249994], + [99.59267578125005, 22.089160156250017], + [99.38867187500003, 22.110791015624983], + [99.303125, 22.100634765625045], + [99.23339843750003, 22.110156250000045], + [99.19296875000006, 22.12597656249997], + [99.17343750000006, 22.153320312500057], + [99.17236328125003, 22.192480468750034], + [99.20537109375007, 22.282568359375006], + [99.24306640625005, 22.37036132812503], + [99.33769531250002, 22.49804687500003], + [99.3431640625, 22.586523437500006], + [99.33828125, 22.688671874999955], + [99.38515625000005, 22.825097656250023], + [99.46679687499997, 22.927294921875074], + [99.50712890625002, 22.959130859374994], + [99.49726562500004, 23.00458984375001], + [99.46455078125004, 23.046240234375063], + [99.41806640625006, 23.069238281250023], + [99.34082031249997, 23.095898437499955], + [99.22031250000012, 23.103320312500045], + [99.055078125, 23.13056640625001], + [98.86376953125003, 23.191259765625034], + [98.88554687500002, 23.307470703124977], + [98.88261718750007, 23.380322265624983], + [98.85888671875003, 23.440087890624994], + [98.81972656250005, 23.482519531250034], + [98.79785156250003, 23.520410156250023], + [98.8322265625001, 23.624365234374977], + [98.78769531250006, 23.73784179687499], + [98.7350585937501, 23.783105468749994], + [98.6808593750001, 23.84179687500003], + [98.67675781250003, 23.905078125000045], + [98.70156250000005, 23.964062499999983], + [98.83398437500003, 24.090576171875], + [98.83505859375006, 24.121191406250034], + [98.80234375000006, 24.118701171875045], + [98.76435546875004, 24.116064453125063], + [98.58339843750005, 24.069824218750057], + [98.5641601562501, 24.09882812500001], + [98.49941406250005, 24.115673828124983], + [98.36728515625006, 24.119042968750023], + [98.2125, 24.110644531250017], + [98.01689453125007, 24.06542968750003], + [97.83769531250007, 23.986279296874983], + [97.75566406250007, 23.931884765625], + [97.68603515624997, 23.898095703124966], + [97.62968750000007, 23.887158203124955], + [97.56455078125012, 23.911035156250023], + [97.56826171875, 23.988476562499983], + [97.690625, 24.13081054687504], + [97.7082031250001, 24.228759765625], + [97.67070312500007, 24.31274414062497], + [97.66660156250012, 24.379980468750006], + [97.62363281250006, 24.422949218750034], + [97.56328125000002, 24.44384765625003], + [97.53144531250004, 24.49169921875003], + [97.52939453125006, 24.631201171875006], + [97.58330078125002, 24.77480468750005], + [97.67070312500007, 24.820117187500045], + [97.72382812500004, 24.841992187499983], + [97.73789062500006, 24.869873046875057], + [97.71074218750007, 24.970361328125023], + [97.71494140625012, 25.034326171874994], + [97.76738281250007, 25.158056640625063], + [97.8195312500001, 25.251855468749994], + [97.91796874999997, 25.236132812500074], + [97.96201171875006, 25.25932617187499], + [98.01074218749997, 25.292529296875017], + [98.06406250000012, 25.348974609375063], + [98.09960937499997, 25.415722656249983], + [98.14287109375007, 25.571093750000017], + [98.1725585937501, 25.594531250000074], + [98.29658203125004, 25.56884765625], + [98.33378906250007, 25.586767578125006], + [98.40166015625002, 25.67797851562503], + [98.4655273437501, 25.788867187500045], + [98.55839843750007, 25.82324218750003], + [98.62539062500005, 25.826708984375045], + [98.65625, 25.86357421874999], + [98.6546875, 25.917773437500017], + [98.59101562500004, 26.003710937500045], + [98.56406250000006, 26.072412109374994], + [98.5719726562501, 26.114062500000045], + [98.66318359375012, 26.13945312499999], + [98.68554687499997, 26.189355468750023], + [98.671875, 26.298535156249955], + [98.70947265624997, 26.42968750000003], + [98.7318359375, 26.583398437499994], + [98.73935546875006, 26.698144531250023], + [98.7384765625001, 26.785742187500006], + [98.72949218750003, 26.87739257812504], + [98.71650390625004, 27.04492187499997], + [98.67480468749997, 27.19062], + [98.68242187500002, 27.24531250000004], + [98.67675781250003, 27.421923828125045], + [98.65117187500007, 27.572460937499983], + [98.5998046875001, 27.59882812500001], + [98.50449218750012, 27.64765625000001], + [98.4525390625, 27.6572265625], + [98.4088867187501, 27.639453125000045], + [98.39238281250002, 27.587060546875023], + [98.35048828125, 27.5380859375], + [98.29882812499997, 27.550097656250045], + [98.27421875000002, 27.599072265624983], + [98.24101562500007, 27.663183593749977], + [98.13046875000012, 27.96757812499999], + [98.11835937500004, 28.055224609375017], + [98.09892578125002, 28.142285156249983], + [98.06162109375012, 28.185888671874977], + [98.02226562500002, 28.211523437500063], + [97.93408203124997, 28.313818359375006], + [97.88759765625005, 28.356494140625017], + [97.86494140625004, 28.363574218750017], + [97.81650390625012, 28.356347656249966], + [97.76904296875003, 28.35615234375004], + [97.73007812500006, 28.407128906250023], + [97.69462890625007, 28.469335937500006], + [97.65888671875004, 28.5], + [97.59921875000006, 28.51704101562504], + [97.53789062500002, 28.510205078124983], + [97.5021484375001, 28.456347656250017], + [97.4777343750001, 28.425634765625063], + [97.43144531250002, 28.353906250000023], + [97.35644531249997, 28.254492187500006], + [97.3224609375001, 28.21796875000004], + [97.28945312500005, 28.236816406250057], + [97.14511718750012, 28.34033203125], + [97.07539062500004, 28.36894531249996], + [96.98085937500005, 28.33769531249999], + [96.83300781250003, 28.362402343750063], + [96.77578125, 28.367041015625034], + [96.65283203125003, 28.44975585937499], + [96.60263671875006, 28.45991210937504], + [96.42773437499997, 28.40600585937497], + [96.3890625, 28.36791992187503], + [96.3664062500001, 28.367285156249977], + [96.31982421875003, 28.38652343749999], + [96.2814453125001, 28.412060546874955], + [96.27890625000012, 28.428173828124955], + [96.32617187499997, 28.468554687500017], + [96.32988281250002, 28.496826171875], + [96.32734375000004, 28.525390625000057], + [96.39560546875006, 28.606542968750063], + [96.58085937500007, 28.763671875], + [96.55, 28.82958984375003], + [96.47714843750012, 28.959326171874977], + [96.46708984375002, 29.022265625000017], + [96.4357421875001, 29.050683593750023], + [96.346875, 29.027441406250006], + [96.16220703125006, 28.909716796875017], + [96.137109375, 28.922607421875057], + [96.14140625000007, 28.963476562500034], + [96.12236328125002, 29.082080078125045], + [96.18085937500004, 29.11767578125], + [96.27050781250003, 29.161230468750006], + [96.33974609375, 29.209814453125034], + [96.355859375, 29.249072265625045], + [96.33720703125002, 29.26098632812497], + [96.23496093750006, 29.245800781249983], + [96.1947265625, 29.2724609375], + [96.12851562500012, 29.38139648437499], + [96.07958984375003, 29.42412109374999], + [96.03535156250004, 29.447167968749994], + [95.88505859375007, 29.39091796874999], + [95.7103515625, 29.313818359375006], + [95.5158203125001, 29.206347656250045], + [95.51699218750005, 29.15117187499999], + [95.49375000000012, 29.137011718750045], + [95.45654296875003, 29.10229492187497], + [95.42021484375007, 29.054296875000063], + [95.38925781250006, 29.03740234374999], + [95.353125, 29.03588867187503], + [95.27910156250002, 29.04956054687497], + [95.1447265625001, 29.10405273437499], + [94.99882812500002, 29.14916992187503], + [94.96748046875004, 29.144042968750057], + [94.76943359375, 29.175878906250063], + [94.76308593750005, 29.201269531249977], + [94.73339843750003, 29.251611328125023], + [94.67705078125002, 29.29702148437505], + [94.62304687500003, 29.312402343749966], + [94.46806640625007, 29.216210937499994], + [94.29326171875007, 29.144628906249977], + [94.19345703125006, 29.059912109375063], + [94.1115234375001, 28.97587890624999], + [94.01767578125006, 28.959521484375017], + [94.01328125000006, 28.90751953124999], + [93.97363281249997, 28.860791015624983], + [93.90224609375, 28.80322265624997], + [93.76074218750003, 28.729785156250017], + [93.66494140625005, 28.69023437499996], + [93.36054687500004, 28.654052734375057], + [93.25195312500003, 28.629492187500034], + [93.20654296875003, 28.590820312500057], + [93.15781250000012, 28.49272460937496], + [93.11923828125006, 28.40229492187501], + [93.03496093750002, 28.32763671875], + [92.88183593750003, 28.228125], + [92.70185546875004, 28.147119140624994], + [92.65253906250004, 28.093359375000034], + [92.64345703125005, 28.061523437500057], + [92.66562500000012, 28.04985351562499], + [92.6875, 28.025732421875034], + [92.68779296875002, 27.98896484375001], + [92.66435546875002, 27.94892578125001], + [92.54667968750002, 27.879199218750017], + [92.4806640625001, 27.845947265625], + [92.41484375000002, 27.824609375], + [92.34101562500004, 27.82075195312501], + [92.27011718750012, 27.830224609374994], + [92.25048828125003, 27.841503906249983], + [92.22226562500012, 27.826953125000045], + [92.1576171875, 27.81225585937497], + [92.1012695312501, 27.8076171875], + [91.97763671875012, 27.730371093749994], + [91.909375, 27.72968750000004], + [91.82470703124997, 27.746435546874977], + [91.71259765625004, 27.759814453125045], + [91.63193359375012, 27.759960937499983], + [91.62939453124997, 27.800878906250063], + [91.64189453125002, 27.923242187500023], + [91.60556640625006, 27.95170898437496], + [91.49335937500004, 27.981787109375063], + [91.367578125, 28.021630859374994], + [91.30683593750004, 28.064013671875017], + [91.27304687500012, 28.078369140625], + [91.22587890625007, 28.071240234374983], + [91.14990234374997, 28.026757812499966], + [91.07773437500012, 27.974462890624977], + [91.02080078125002, 27.970068359374977], + [90.9625, 27.994580078124983], + [90.90664062500005, 28.026513671875023], + [90.71572265625, 28.071728515624983], + [90.63007812500004, 28.078564453124955], + [90.47734375000007, 28.07084960937499], + [90.3527343750001, 28.080224609375023], + [90.33310546875012, 28.093994140625], + [90.33378906250007, 28.11914062499997], + [90.35214843750006, 28.16816406250001], + [90.36298828125004, 28.21650390625001], + [90.34824218750006, 28.24394531249999], + [90.22080078125006, 28.27773437500005], + [90.10449218749997, 28.302050781250017], + [89.98105468750006, 28.311181640625023], + [89.8978515625, 28.29414062500001], + [89.81689453125003, 28.25629882812501], + [89.74980468750002, 28.18818359375001], + [89.65273437500005, 28.158300781250034], + [89.53691406250007, 28.10742187499997], + [89.4806640625001, 28.059960937499994], + [89.39589843750005, 27.958154296875023], + [89.27265625000004, 27.833154296874966], + [89.16044921875002, 27.711279296875006], + [89.10234375000002, 27.59257812499999], + [89.02548828125006, 27.517871093750045], + [88.94755859375002, 27.464013671874994], + [88.89140625000002, 27.316064453124966], + [88.83251953125003, 27.36284179687499], + [88.7648437500001, 27.429882812499983], + [88.74902343749997, 27.52187], + [88.82988281250002, 27.76738281249999], + [88.84882812500004, 27.86865234375], + [88.82861328125003, 27.90727539062496], + [88.80371093750003, 28.006933593750034], + [88.75625, 28.03969726562505], + [88.62109375000003, 28.091845703125017], + [88.57792968750002, 28.093359375000034], + [88.531640625, 28.057373046875], + [88.48613281250007, 28.034472656250045], + [88.42597656250004, 28.01166992187501], + [88.27519531250007, 27.968847656250006], + [88.14111328125003, 27.94892578125001], + [88.10898437500006, 27.933007812499966], + [88.09892578125002, 27.90454101562503], + [88.10976562500005, 27.870605468750057], + [88.02333984375, 27.883398437500006], + [87.93339843750007, 27.890820312499983], + [87.8607421875, 27.886083984375006], + [87.68271484375006, 27.821386718750063], + [87.62255859374997, 27.81518554687503], + [87.55527343750012, 27.82182617187496], + [87.46416015625002, 27.823828125000034], + [87.29072265625004, 27.821923828124994], + [87.14140625000002, 27.838330078124955], + [87.02011718750006, 27.928662109374983], + [86.9337890625001, 27.96845703125001], + [86.84238281250012, 27.99916992187505], + [86.750390625, 28.022070312500006], + [86.71962890625005, 28.070654296875034], + [86.69052734375006, 28.09492187500001], + [86.61445312500004, 28.10302734374997], + [86.55449218750007, 28.08520507812497], + [86.51689453125007, 27.963525390624966], + [86.48496093750012, 27.939550781249977], + [86.40869140625003, 27.928662109374983], + [86.32861328124997, 27.95952148437496], + [86.2179687500001, 28.022070312500006], + [86.17421875000005, 28.091699218749966], + [86.13701171875002, 28.114355468750063], + [86.07871093750006, 28.08359375], + [86.07548828125002, 27.994580078124983], + [86.0641601562501, 27.934716796874966], + [85.99453125000005, 27.910400390625], + [85.95410156249997, 27.92822265624997], + [85.92167968750002, 27.989697265624983], + [85.84023437500005, 28.135351562499977], + [85.75947265625004, 28.220654296874955], + [85.67832031250012, 28.277441406249977], + [85.41064453125003, 28.27602539062505], + [85.21210937500004, 28.292626953124966], + [85.1224609375, 28.315966796875017], + [85.08857421875004, 28.37226562500001], + [85.121484375, 28.484277343750023], + [85.16015624999997, 28.571875], + [85.15908203125, 28.592236328124983], + [85.1263671875, 28.602636718750063], + [85.06914062500007, 28.60966796874999], + [84.85507812500006, 28.553613281250023], + [84.796875, 28.560205078125023], + [84.75937500000012, 28.579248046874994], + [84.7142578125, 28.595556640625034], + [84.67675781249997, 28.62153320312501], + [84.65058593750004, 28.659570312500023], + [84.46542968750012, 28.75292968750003], + [84.41074218750006, 28.80390625000004], + [84.31210937500012, 28.868115234374955], + [84.2287109375001, 28.911767578124966], + [84.17558593750002, 29.036376953125057], + [84.12783203125005, 29.15629882812496], + [84.10136718750002, 29.21997070312497], + [84.02197265624997, 29.25385742187504], + [83.93593750000005, 29.27949218750001], + [83.7904296875, 29.227441406249994], + [83.6710937500001, 29.187597656250034], + [83.58349609375003, 29.18359375000003], + [83.45664062500012, 29.306347656249983], + [83.35517578125004, 29.439160156249955], + [83.23515625000002, 29.554589843750023], + [83.15546875000004, 29.612646484375034], + [83.01396484375007, 29.618066406249994], + [82.85429687500002, 29.68339843749996], + [82.6408203125001, 29.831201171874966], + [82.4865234375001, 29.941503906249977], + [82.22070312500003, 30.063867187500023], + [82.15898437500007, 30.11518554687501], + [82.13535156250012, 30.15898437499996], + [82.09892578125007, 30.24506835937501], + [82.04335937500005, 30.326757812500034], + [81.8548828125, 30.362402343750006], + [81.64189453125007, 30.3875], + [81.4171875000001, 30.33759765625001], + [81.25507812500004, 30.09331054687499], + [81.17714843750005, 30.039892578125034], + [81.11035156250003, 30.03681640625004], + [81.05556640625005, 30.098974609375006], + [81.01025390624997, 30.16450195312501], + [80.98544921875006, 30.23710937499999], + [80.87353515625003, 30.290576171875045], + [80.74677734375004, 30.36040039062496], + [80.68212890625003, 30.414843750000045], + [80.60888671875003, 30.44887695312505], + [80.54101562500003, 30.463525390625023], + [80.4095703125, 30.509472656249955], + [80.2609375000001, 30.561328125000045], + [80.19121093750002, 30.56840820312496], + [80.18623046875004, 30.605322265625034], + [80.20712890625006, 30.683740234375023], + [80.19433593750003, 30.75922851562504], + [80.14941406250003, 30.78984375], + [80.0814453125, 30.781933593749955], + [79.92451171875004, 30.888769531250034], + [79.91660156250012, 30.894189453124994], + [79.871875, 30.92460937499999], + [79.79462890625004, 30.96826171875], + [79.66425781250004, 30.965234375], + [79.56542968749997, 30.949072265624977], + [79.49316406249997, 30.993701171875017], + [79.38847656250007, 31.064208984375], + [79.36962890624997, 31.079931640625006], + [79.33876953125, 31.105712890625], + [79.23261718750004, 31.241748046875017], + [79.10712890625004, 31.402636718750017], + [79.04375, 31.42622070312504], + [79.0111328125, 31.41411132812496], + [78.97392578125007, 31.32861328125003], + [78.9459960937501, 31.337207031250017], + [78.89951171875012, 31.33134765624996], + [78.84453125000002, 31.30151367187503], + [78.79160156250006, 31.29365234375001], + [78.75781250000003, 31.302490234375057], + [78.74355468750005, 31.323779296875017], + [78.75859375000007, 31.436572265625017], + [78.7267578125001, 31.471826171874994], + [78.7550781250001, 31.55029296875], + [78.80292968750004, 31.618066406250023], + [78.75390625000003, 31.668359374999966], + [78.69345703125006, 31.740380859374994], + [78.68701171874997, 31.805517578125034], + [78.71972656249997, 31.887646484374983], + [78.73544921875006, 31.95795898437501], + [78.72558593750003, 31.983789062500023], + [78.67773437499997, 32.023046875000034], + [78.49589843750002, 32.21577148437504], + [78.48613281250002, 32.23623046875002], + [78.4552734375001, 32.30034179687502], + [78.44130859375, 32.397363281249994], + [78.41748046874997, 32.466699218749994], + [78.38964843749997, 32.51987304687498], + [78.39169921875012, 32.54472656249999], + [78.4125, 32.55771484375006], + [78.52636718750003, 32.57080078124997], + [78.63154296875004, 32.578955078125034], + [78.70087890625004, 32.59702148437498], + [78.73671875, 32.55839843750002], + [78.75351562500012, 32.49926757812506], + [78.77128906250002, 32.46806640625002], + [78.83789062499997, 32.411962890625034], + [78.91894531249997, 32.35820312500002], + [78.99765625000012, 32.365136718749994], + [79.06699218750012, 32.38818359374997], + [79.12734375, 32.47578124999998], + [79.16992187500003, 32.497216796874994], + [79.21933593750006, 32.50107421874998], + [79.21904296875002, 32.50756835937497], + [79.21650390625004, 32.56401367187502], + [79.23388671875003, 32.70307617187501], + [79.22792968750005, 32.7587890625], + [79.20556640625003, 32.80903320312501], + [79.20957031250012, 32.86484375], + [79.20224609375006, 32.94604492187503], + [79.14550781250003, 33.00146484375006], + [79.10859375000004, 33.02265625000001], + [79.10283203125007, 33.05253906249996], + [79.12167968750006, 33.10810546875001], + [79.13515625000005, 33.17192382812496], + [79.115625, 33.21894531250004], + [79.1125, 33.22626953125001], + [79.06650390625012, 33.25039062500005], + [79.01259765625005, 33.29145507812498], + [78.94843750000004, 33.346533203125006], + [78.91669921875004, 33.38676757812502], + [78.86503906250002, 33.43110351562501], + [78.80185546875012, 33.49970703125004], + [78.78994140625, 33.65034179687498], + [78.78378906250006, 33.80878906250004], + [78.76171875000003, 33.88759765625002], + [78.72666015625006, 34.013378906249955], + [78.73173828125002, 34.05556640625002], + [78.75302734375012, 34.08769531250002], + [78.93173828125012, 34.18896484375003], + [78.97060546875, 34.22822265625004], + [78.976953125, 34.25810546874999], + [78.9701171875, 34.30263671875002], + [78.93642578125, 34.35195312500002], + [78.86484375000006, 34.39033203125001], + [78.7630859375, 34.45292968749999], + [78.67080078125005, 34.518164062500034], + [78.51572265625006, 34.55795898437498], + [78.32695312500007, 34.60639648437498], + [78.28203125000007, 34.65390624999998], + [78.23613281250007, 34.76982421874999], + [78.15849609375002, 34.94648437499998], + [78.07578125000006, 35.13491210937502], + [78.01220703124997, 35.251025390625045], + [78.0091796875, 35.30693359374999], + [78.04746093750006, 35.449414062499955], + [78.0426757812501, 35.47978515625002], + [78.00947265625004, 35.49023437500003], + [77.94589843750006, 35.471630859374955], + [77.894921875, 35.44902343749996], + [77.85156250000003, 35.46079101562506], + [77.8109375, 35.484521484374994], + [77.80253906250002, 35.492773437500006], + [77.79941406250006, 35.49589843750002], + [77.7240234375, 35.480566406250006], + [77.57255859375002, 35.471826171874994], + [77.52001953124997, 35.4734375], + [77.44648437500004, 35.47558593750006], + [77.29482421875005, 35.508154296875034], + [77.09003906250004, 35.55205078124999], + [76.87890625000003, 35.61328125000003], + [76.76689453125002, 35.661718750000034], + [76.72753906250003, 35.67866210937504], + [76.63183593749997, 35.729394531249966], + [76.56347656249997, 35.77299804687499], + [76.55126953124997, 35.887060546875034], + [76.50205078125006, 35.87822265625002], + [76.38574218750003, 35.837158203125], + [76.25166015625004, 35.8109375], + [76.17783203125012, 35.810546875], + [76.14785156250005, 35.82900390625002], + [76.10332031250002, 35.94921875], + [76.07089843750006, 35.983007812500034], + [76.01044921875004, 35.996337890625], + [75.94511718750002, 36.01757812499997], + [75.91230468750004, 36.048974609374994], + [75.9048828125, 36.088476562500034], + [75.93408203125003, 36.133935546874966], + [75.96865234375005, 36.168847656249966], + [75.97441406250007, 36.38242187500006], + [75.9518554687501, 36.458105468750034], + [75.9330078125, 36.52158203124998], + [75.88496093750004, 36.60073242187502], + [75.840234375, 36.64970703124999], + [75.7721679687501, 36.694921875000034], + [75.6671875000001, 36.741992187500045], + [75.57373046874997, 36.75932617187502], + [75.46025390625002, 36.725048828124955], + [75.42421875000005, 36.73823242187498], + [75.37685546875, 36.88369140625005], + [75.34667968749997, 36.913476562499966], + [75.14521484375004, 36.97324218749998], + [75.05390625000004, 36.98715820312498], + [74.94912109375, 36.96835937500006], + [74.88925781250006, 36.95244140625002], + [74.84121093750005, 36.979101562500034], + [74.766015625, 37.012744140625045], + [74.69218750000007, 37.035742187500006], + [74.60058593749997, 37.03666992187502], + [74.54140625, 37.02216796875001], + [74.52646484375006, 37.03066406250005], + [74.49794921875, 37.057226562500034], + [74.37617187500004, 37.13735351562502], + [74.37216796875006, 37.15771484375], + [74.558984375, 37.23662109374999], + [74.66894531250003, 37.266699218750006], + [74.72666015625006, 37.29072265625001], + [74.7389648437501, 37.28564453125003], + [74.76738281250002, 37.249169921874966], + [74.840234375, 37.22504882812504], + [74.89130859375004, 37.231640624999955], + [74.9181640625001, 37.25], + [75.0083984375, 37.29355468750006], + [75.07900390625, 37.344042968750045], + [75.11875, 37.38569335937498], + [75.09746093750002, 37.451269531250034], + [74.98642578125006, 37.53037109374998], + [74.91582031250007, 37.57280273437502], + [74.8942382812501, 37.60141601562498], + [74.91230468750004, 37.68730468749999], + [74.93828125000002, 37.77250976562502], + [74.9212890625, 37.80498046874996], + [74.90029296875, 37.83271484375001], + [74.8908203125001, 37.92578124999997], + [74.84248046875004, 38.03808593750003], + [74.7896484375, 38.10361328125006], + [74.77509765625004, 38.19189453125], + [74.77207031250006, 38.274755859375006], + [74.83593750000003, 38.40429687500003], + [74.81230468750002, 38.46030273437498], + [74.74501953125, 38.51000976562497], + [74.5140625, 38.6], + [74.27744140625, 38.659765625000034], + [74.18730468750002, 38.65751953125002], + [74.13134765625003, 38.66118164062496], + [74.06533203125, 38.60849609374998], + [74.02558593750004, 38.53984375000002], + [73.97001953125002, 38.53369140625], + [73.86914062499997, 38.56289062500002], + [73.80166015625, 38.60688476562501], + [73.7541015625001, 38.69892578125001], + [73.71679687500003, 38.817236328125034], + [73.69609375000007, 38.85429687499996], + [73.70683593750002, 38.88623046874997], + [73.72998046874997, 38.914697265624994], + [73.79453125000006, 38.94130859375002], + [73.8052734375, 38.968652343749994], + [73.7956054687501, 39.00214843749998], + [73.74375, 39.04453124999998], + [73.69042968749997, 39.10454101562496], + [73.60732421875, 39.229199218749955], + [73.62314453125006, 39.2978515625], + [73.63632812500006, 39.396679687499955], + [73.63164062500007, 39.44887695312502], + [73.71572265625, 39.462255859375006], + [73.82294921875004, 39.48896484375004], + [73.8727539062501, 39.533300781250006], + [73.90712890625, 39.578515624999966], + [73.9146484375, 39.60649414062499], + [73.88251953125004, 39.71455078124998], + [73.83974609375005, 39.76284179687505], + [73.8353515625, 39.800146484375006], + [73.85625, 39.828662109375045], + [73.88457031250002, 39.87792968750006], + [73.93876953125002, 39.97880859374999], + [73.99160156250005, 40.04311523437502], + [74.02050781249997, 40.059375], + [74.0851562500001, 40.074316406250006], + [74.24267578124997, 40.09204101562506], + [74.41191406250007, 40.13720703125003], + [74.61308593750002, 40.27216796874998], + [74.67988281250004, 40.31059570312499], + [74.7677734375001, 40.32988281250002], + [74.83046875, 40.328515625], + [74.84179687499997, 40.34497070312497], + [74.80126953124997, 40.428515625000045], + [74.81113281250006, 40.45878906249999], + [74.83515625000004, 40.482617187499955], + [74.865625, 40.493505859375034], + [75.0044921875, 40.44951171874996], + [75.11132812499997, 40.4541015625], + [75.24101562500002, 40.48027343750002], + [75.52080078125002, 40.627539062500006], + [75.55556640625, 40.625195312499955], + [75.58349609375003, 40.605322265625006], + [75.61738281250004, 40.51660156250003], + [75.65595703125004, 40.329248046874966], + [75.6771484375, 40.305810546874994], + [75.87197265625, 40.30322265625], + [76.004296875, 40.371435546875034], + [76.06230468750002, 40.387548828125034], + [76.15664062500005, 40.37646484375], + [76.20605468750003, 40.40839843750001], + [76.25830078124997, 40.43076171875006], + [76.3185546875001, 40.352246093749955], + [76.39638671875005, 40.389794921874966], + [76.4801757812501, 40.44951171874996], + [76.5208984375, 40.51123046875], + [76.57792968750002, 40.577880859375], + [76.62216796875006, 40.66235351562497], + [76.6398437500001, 40.74223632812499], + [76.66113281249997, 40.77963867187498], + [76.70839843750005, 40.818115234375], + [76.82402343750002, 40.982324218749966], + [76.90771484374997, 41.02416992187497], + [76.98662109375002, 41.039160156250006], + [77.18203125000005, 41.0107421875], + [77.28398437500007, 41.01435546875001], + [77.58173828125004, 40.99277343750006], + [77.71933593750012, 41.024316406249994], + [77.81523437500002, 41.05561523437498], + [77.9564453125, 41.05068359375005], + [78.1234375, 41.07563476562498], + [78.34628906250012, 41.28144531249998], + [78.3488281250001, 41.32519531250003], + [78.36240234375012, 41.37163085937496], + [78.44287109374997, 41.41752929687499], + [78.5431640625001, 41.459570312500034], + [78.742578125, 41.56005859375], + [79.14843750000003, 41.719140625], + [79.29355468750006, 41.78281249999998], + [79.35439453125005, 41.78105468749999], + [79.50390624999997, 41.82099609375004], + [79.76611328124997, 41.89887695312501], + [79.84042968750012, 41.99575195312502], + [79.90966796875003, 42.014990234375034], + [80.21621093750005, 42.03242187500004], + [80.23515625000007, 42.04345703124997], + [80.24619140625012, 42.05981445312503], + [80.2291992187501, 42.12983398437498], + [80.209375, 42.190039062500006], + [80.23300781250006, 42.2078125], + [80.25908203125007, 42.23540039062499], + [80.25507812500004, 42.274169921875], + [80.20576171875004, 42.39941406250003], + [80.17929687500006, 42.51835937499999], + [80.16191406250007, 42.62553710937499], + [80.16503906249997, 42.66552734375006], + [80.20224609375012, 42.73447265624998], + [80.25029296875007, 42.797265624999966], + [80.4240234375001, 42.85576171874999], + [80.53896484375005, 42.873486328124955], + [80.54375, 42.911718750000034], + [80.45068359375003, 42.935546875], + [80.38339843750006, 42.973779296874966], + [80.3712890625001, 42.99560546874997], + [80.37451171874997, 43.020410156249966], + [80.39023437500006, 43.043115234374966], + [80.50703125000004, 43.08579101562506], + [80.61699218750007, 43.128271484375006], + [80.75117187500004, 43.10249023437498], + [80.77773437500005, 43.11894531249996], + [80.78574218750006, 43.16157226562504], + [80.7570312500001, 43.20434570312506], + [80.72978515625002, 43.27426757812498], + [80.66777343750002, 43.31005859375], + [80.6654296875, 43.35297851562504], + [80.7038085937501, 43.42705078125002], + [80.65078125, 43.56416015624998], + [80.59345703125004, 43.68510742187502], + [80.49599609375, 43.89208984375], + [80.43154296875005, 43.95175781249998], + [80.39580078125002, 44.04716796874999], + [80.35527343750002, 44.09726562500006], + [80.35898437500006, 44.17128906250005], + [80.36533203125012, 44.223291015624966], + [80.35488281250005, 44.326513671875034], + [80.336328125, 44.438378906249994], + [80.35507812500006, 44.55200195312497], + [80.39101562500005, 44.626806640625034], + [80.38144531250012, 44.655419921874994], + [80.40058593750004, 44.67690429687502], + [80.45546875, 44.68408203124997], + [80.48154296875006, 44.71464843749999], + [80.45546875, 44.74609375], + [80.36083984375003, 44.770312500000045], + [80.25507812500004, 44.80810546875], + [80.12783203125005, 44.80375976562502], + [79.99716796875006, 44.797216796875006], + [79.93212890624997, 44.82519531250003], + [79.87529296875002, 44.86083984375], + [79.871875, 44.88378906249997], + [79.95019531250003, 44.944091796875], + [80.05917968750012, 45.006445312500006], + [80.2282226562501, 45.03398437500002], + [80.41494140625, 45.07509765625005], + [80.50917968750005, 45.10498046875], + [80.63476562500003, 45.126513671875045], + [80.78007812500007, 45.13554687500002], + [80.85332031250007, 45.129296875], + [81.04033203125007, 45.16914062500001], + [81.33476562500002, 45.246191406250006], + [81.60205078125003, 45.31083984375002], + [81.69199218750012, 45.34936523437497], + [81.75888671875006, 45.31083984375002], + [81.78964843750012, 45.22602539062498], + [81.86748046875002, 45.18208007812498], + [81.94492187500006, 45.16083984375001], + [81.98925781250003, 45.16186523437506], + [82.12275390625004, 45.19487304687502], + [82.26660156249997, 45.21909179687498], + [82.3234375000001, 45.205859375000045], + [82.3966796875001, 45.162451171875006], + [82.4787109375001, 45.12358398437499], + [82.52148437500003, 45.12548828125], + [82.558984375, 45.155419921874994], + [82.59697265625002, 45.215966796874966], + [82.62109374999997, 45.293115234374966], + [82.62578125000002, 45.37441406250002], + [82.61162109375007, 45.424267578124955], + [82.58251953125003, 45.442578124999955], + [82.45166015624997, 45.47197265624999], + [82.32666015625003, 45.519921875], + [82.3122070312501, 45.56372070312503], + [82.31523437500002, 45.59492187499998], + [82.34814453124997, 45.671533203124966], + [82.42968749999997, 45.811914062499966], + [82.51171874999997, 46.00581054687504], + [82.555078125, 46.15869140625], + [82.69218750000007, 46.38666992187501], + [82.8, 46.62446289062504], + [82.97490234375002, 46.96601562499998], + [83.0041015625001, 47.03349609374996], + [83.02011718750006, 47.141455078125034], + [83.02949218750004, 47.18593750000002], + [83.09033203124997, 47.209375], + [83.19306640625004, 47.18657226562499], + [83.4435546875001, 47.108642578125], + [83.63408203125002, 47.043212890625], + [83.71396484375012, 47.02104492187502], + [83.83261718750006, 46.99785156249999], + [84.016015625, 46.97050781250002], + [84.12207031249997, 46.97861328124998], + [84.21513671875007, 46.99472656249998], + [84.33886718749997, 46.99614257812499], + [84.53242187500004, 46.97578125000001], + [84.59228515625003, 46.974951171875034], + [84.66660156250006, 46.97236328125004], + [84.71953125000007, 46.939355468749966], + [84.74599609375005, 46.86435546875006], + [84.78613281249997, 46.83071289062505], + [84.85820312500002, 46.843164062499994], + [85.01220703125003, 46.90922851562496], + [85.1105468750001, 46.96123046874999], + [85.23349609375006, 47.03637695312503], + [85.35537109375005, 47.046728515625006], + [85.484765625, 47.06352539062496], + [85.5296875, 47.10078125000001], + [85.57724609375012, 47.1884765625], + [85.65664062500005, 47.254638671875], + [85.66982421875005, 47.33837890625], + [85.64179687500004, 47.39741210937504], + [85.5866210937501, 47.49365234375], + [85.58828125000005, 47.558496093749994], + [85.56162109375012, 47.746484375], + [85.52597656250006, 47.915625], + [85.56230468750002, 48.051855468750034], + [85.6263671875, 48.20400390625005], + [85.65156250000004, 48.25053710937502], + [85.69218750000007, 48.31181640624999], + [85.7494140625, 48.38505859374999], + [85.82988281250007, 48.40805664062506], + [86.05615234374997, 48.42373046875005], + [86.265625, 48.45454101562501], + [86.37255859374997, 48.486230468749994], + [86.48330078125005, 48.50537109374997], + [86.54941406250012, 48.52861328125002], + [86.66376953125004, 48.635546875000045], + [86.7179687500001, 48.697167968749966], + [86.75781250000003, 48.860742187499994], + [86.72861328125012, 48.93935546875002], + [86.753125, 49.00883789062496], + [86.8083007812501, 49.04970703125002], + [86.8859375000001, 49.090576171875], + [86.93798828124997, 49.09755859375002], + [87.0485351562501, 49.109912109375045], + [87.22998046875003, 49.10585937500002], + [87.32285156250012, 49.085791015625006], + [87.41669921875004, 49.07661132812501], + [87.47617187500006, 49.09145507812502], + [87.5158203125001, 49.122412109375006], + [87.5765625, 49.13237304687499], + [87.668359375, 49.147216796875], + [87.7625, 49.16582031249996], + [87.81425781250002, 49.162304687499955], + [87.82519531249997, 49.116308593750006], + [87.81630859375, 49.080273437499955], + [87.83466796875004, 49.031933593749955], + [87.87216796875012, 49.000146484374966], + [87.85986328125003, 48.96552734375001], + [87.80683593750004, 48.94550781250004], + [87.75468750000007, 48.918554687500034], + [87.74316406250003, 48.88164062499999], + [87.80917968750006, 48.83574218749996], + [87.83183593750007, 48.79165039062505], + [87.94218750000007, 48.765283203124994], + [88.02792968750006, 48.735595703125], + [88.06005859375003, 48.707177734374966], + [88.05019531250005, 48.675048828125], + [88.01064453125, 48.64042968749996], + [87.97226562500006, 48.603320312500045], + [87.96738281250006, 48.58105468750003], + [87.9796875000001, 48.55512695312498], + [88.06259765625012, 48.53784179687503], + [88.15820312500003, 48.50908203125002], + [88.30996093750005, 48.47207031250002], + [88.41396484375, 48.403417968750006], + [88.51708984374997, 48.384472656249955], + [88.56679687500005, 48.31743164062496], + [88.57597656250007, 48.220166015624955], + [88.68183593750004, 48.170556640624994], + [88.83828125000005, 48.101708984374994], + [88.91777343750007, 48.089013671874966], + [88.97109375, 48.04995117187502], + [89.04765625000007, 48.002539062500034], + [89.115625, 47.98769531250002], + [89.19628906249997, 47.98090820312498], + [89.32988281250007, 48.024853515624955], + [89.47919921875004, 48.02905273437503], + [89.5609375, 48.00395507812496], + [89.63847656250007, 47.909082031249994], + [89.69316406250002, 47.87915039062503], + [89.72558593749997, 47.85249023437501], + [89.778125, 47.82700195312498], + [89.83134765625002, 47.82329101562502], + [89.91044921875007, 47.844335937500034], + [89.95869140625004, 47.88632812499998], + [90.02792968750012, 47.877685546875], + [90.05390625000004, 47.850488281249966], + [90.0666015625001, 47.803564453125006], + [90.1032226562501, 47.74541015624996], + [90.19101562500012, 47.70209960937501], + [90.31328125000007, 47.676171875], + [90.33066406250006, 47.655175781249966], + [90.34746093750002, 47.59697265625002], + [90.38066406250002, 47.55664062500006], + [90.42519531250005, 47.50410156250001], + [90.46748046875004, 47.40815429687501], + [90.47646484375, 47.32880859375001], + [90.49619140625012, 47.28515625], + [90.55292968750004, 47.214013671874966], + [90.64335937500007, 47.10029296874998], + [90.71552734375004, 47.00385742187498], + [90.7990234375001, 46.98515624999999], + [90.86992187500002, 46.95449218750005], + [90.91054687500005, 46.88325195312501], + [90.9857421875, 46.7490234375], + [90.99785156250007, 46.66108398437504], + [91.00429687500005, 46.59575195312496], + [91.02890625000012, 46.56606445312505], + [91.03388671875004, 46.529003906249955], + [90.97148437500002, 46.38798828124999], + [90.91826171875002, 46.32426757812499], + [90.9115234375, 46.270654296874994], + [90.94755859375002, 46.17729492187499], + [90.99677734375004, 46.10498046875], + [91.00175781250007, 46.03579101562502], + [90.95976562500002, 45.98505859374998], + [90.887109375, 45.92163085937503], + [90.85244140625005, 45.88540039062502], + [90.79589843749997, 45.853515625], + [90.7096679687501, 45.73081054687506], + [90.67070312500002, 45.595166015624955], + [90.6618164062501, 45.525244140625006], + [90.69443359375006, 45.47465820312502], + [90.74960937500012, 45.41894531250003], + [90.76318359374997, 45.370654296875045], + [90.8532226562501, 45.26289062500004], + [90.87724609375002, 45.19609375000002], + [90.91396484375005, 45.193945312500006], + [90.95361328125003, 45.21591796875006], + [91.05, 45.217431640624994], + [91.13769531249997, 45.193945312500006], + [91.22177734375006, 45.14453124999997], + [91.31210937500006, 45.11811523437501], + [91.44101562500012, 45.12475585937503], + [91.51005859375007, 45.09824218750006], + [91.584375, 45.07651367187498], + [91.73779296875003, 45.068945312500034], + [91.85283203125002, 45.06933593750003], + [92.02978515624997, 45.06850585937505], + [92.17265625000007, 45.035253906250006], + [92.42382812499997, 45.008935546874994], + [92.57890625000002, 45.01098632812506], + [92.78789062500007, 45.035742187500034], + [92.91601562499997, 45.02016601562505], + [93.29433593750005, 44.98315429687497], + [93.51621093750012, 44.944482421874994], + [93.6564453125001, 44.900976562500006], + [93.7552734375, 44.831933593749994], + [93.86816406249997, 44.72421874999998], + [93.95791015625005, 44.674951171874966], + [94.19931640625012, 44.64516601562502], + [94.36474609374997, 44.51948242187501], + [94.4943359375001, 44.472509765625034], + [94.71201171875012, 44.35083007812503], + [94.86601562500002, 44.303320312500034], + [95.04980468750003, 44.259423828124966], + [95.35029296875004, 44.27807617187503], + [95.36679687500012, 44.261523437500045], + [95.34365234375, 44.19541015624998], + [95.32558593750005, 44.10488281250002], + [95.32558593750005, 44.03935546874999], + [95.35644531250003, 44.005957031250006], + [95.47128906250006, 43.98618164062498], + [95.52558593750004, 43.953955078125006], + [95.56718750000007, 43.89223632812502], + [95.5912109375, 43.85361328124998], + [95.68730468750002, 43.6640625], + [95.8419921875001, 43.383691406249994], + [95.85957031250004, 43.27597656249998], + [95.9125, 43.20649414062504], + [96.08027343750004, 43.09614257812504], + [96.16845703124997, 43.014501953125006], + [96.29951171875004, 42.92871093750003], + [96.3424804687501, 42.84931640625001], + [96.35234375000007, 42.74677734374998], + [96.38544921875004, 42.72036132812502], + [96.62529296875007, 42.74384765625001], + [96.83300781250003, 42.76025390625], + [97.20566406250012, 42.78979492187506], + [97.71894531250004, 42.73627929687498], + [98.24824218750004, 42.68452148437501], + [98.71630859375003, 42.63872070312502], + [98.946875, 42.61621093750003], + [99.46787109375012, 42.568212890625034], + [99.75742187500012, 42.62944335937499], + [99.98378906250005, 42.67734375000006], + [100.08632812500005, 42.67075195312506], + [100.51904296875003, 42.61679687499998], + [100.77255859375006, 42.58779296875002], + [101.09199218750004, 42.55131835937496], + [101.31376953125002, 42.53789062499999], + [101.49531250000004, 42.53876953124998], + [101.57910156249997, 42.52353515624998], + [101.65996093750002, 42.50004882812499], + [101.71386718749997, 42.46582031250006], + [101.87988281249997, 42.29233398437506], + [101.97294921875002, 42.21586914062502], + [102.15664062500005, 42.158105468749966], + [102.57519531249997, 42.09208984375002], + [102.8068359375001, 42.05200195312503], + [103.07285156250006, 42.00595703125006], + [103.24785156250002, 41.93657226562496], + [103.44970703125003, 41.85585937500002], + [103.7111328125001, 41.75131835937506], + [103.99726562500004, 41.796972656250034], + [104.30517578124997, 41.84614257812501], + [104.49824218750004, 41.87700195312499], + [104.49824218750004, 41.65869140625], + [104.7736328125001, 41.64116210937499], + [104.86035156250003, 41.64375], + [104.98203125000012, 41.59550781250002], + [105.05058593750002, 41.61591796875001], + [105.1154296875001, 41.66328124999998], + [105.19707031250002, 41.738037109375], + [105.31435546875005, 41.77089843750005], + [105.51708984374997, 41.85473632812497], + [105.56640624999997, 41.875097656250034], + [105.86757812500005, 41.993994140625034], + [106.31718750000007, 42.140576171874955], + [106.51875, 42.21157226562502], + [106.57910156249997, 42.227343750000045], + [106.69316406250002, 42.263574218749966], + [106.77001953125003, 42.28872070312502], + [106.90605468750002, 42.30888671874996], + [107.09072265625, 42.32153320312506], + [107.29238281250005, 42.34926757812502], + [107.74873046875004, 42.40097656249998], + [107.80595703125007, 42.405859375], + [108.06230468750007, 42.42719726562498], + [108.17119140625002, 42.44731445312502], + [108.33398437499997, 42.436767578125], + [108.54648437500012, 42.42929687499998], + [108.68730468750002, 42.416113281250034], + [108.87451171874997, 42.42646484375001], + [109.13164062500002, 42.440576171874966], + [109.33984374999997, 42.43837890625005], + [109.44316406250002, 42.455957031249994], + [109.59550781250002, 42.51054687500002], + [109.69804687500007, 42.553808593750034], + [109.85878906250005, 42.60625], + [110.05800781250005, 42.66059570312501], + [110.196875, 42.71000976562496], + [110.28886718750007, 42.74272460937496], + [110.40039062499997, 42.77368164062497], + [110.42958984375005, 42.813574218750006], + [110.46171875000002, 42.84414062500002], + [110.5208984375, 42.89526367187506], + [110.62753906250006, 42.99052734375002], + [110.70859375000006, 43.07387695312502], + [110.74853515625003, 43.11079101562498], + [110.8395507812501, 43.194091796875], + [110.9132812500001, 43.25688476562499], + [111.00722656250005, 43.34140624999998], + [111.08652343750012, 43.36875], + [111.18681640625002, 43.391992187499994], + [111.45107421875005, 43.47490234375002], + [111.50351562500006, 43.492773437500006], + [111.54736328124997, 43.49628906250001], + [111.6408203125001, 43.563183593749955], + [111.71972656249997, 43.62114257812496], + [111.77109375000006, 43.66459960937502], + [111.878125, 43.68017578125], + [111.93320312500006, 43.71142578125006], + [111.94287109374997, 43.75244140624997], + [111.93173828125012, 43.81494140625], + [111.8802734375, 43.87890624999997], + [111.83691406249997, 43.93466796875006], + [111.68378906250004, 44.04111328124998], + [111.60263671875012, 44.10712890625001], + [111.5197265625001, 44.19189453124997], + [111.48623046875005, 44.271630859374966], + [111.42958984375005, 44.322363281250006], + [111.40224609375005, 44.367285156250006], + [111.41093750000007, 44.419189453125], + [111.48945312500004, 44.511572265625006], + [111.51474609375006, 44.56982421875006], + [111.54746093750006, 44.67290039062499], + [111.6212890625001, 44.82714843749997], + [111.68144531250002, 44.899169921875], + [111.75107421875006, 44.969531250000045], + [111.89804687500006, 45.064062500000034], + [112.03261718750005, 45.08164062500006], + [112.11289062500006, 45.06293945312498], + [112.29208984375006, 45.06303710937499], + [112.41132812500004, 45.05820312499998], + [112.49931640625002, 45.01093750000004], + [112.59677734375006, 44.917675781249955], + [112.7067382812501, 44.883447265624994], + [113.04941406250006, 44.81035156250002], + [113.19609375000002, 44.794824218749966], + [113.3009765625001, 44.79165039062502], + [113.45566406250006, 44.76743164062498], + [113.50791015625006, 44.76235351562502], + [113.58701171875006, 44.745703125], + [113.65263671875002, 44.76347656249999], + [113.75214843750004, 44.825927734375], + [113.87705078125012, 44.89619140625001], + [113.93085937500004, 44.91230468750001], + [114.03027343749997, 44.942578124999955], + [114.08027343750004, 44.97114257812501], + [114.1673828125, 45.04985351562496], + [114.28105468750007, 45.11088867187496], + [114.41914062500004, 45.20258789062501], + [114.48730468750003, 45.27172851562506], + [114.50224609375002, 45.316308593749994], + [114.51718750000006, 45.36459960937506], + [114.56015625000012, 45.38999023437498], + [114.64433593750002, 45.41328125000001], + [114.73876953124997, 45.41962890624998], + [114.91923828125007, 45.378271484375006], + [115.16259765624997, 45.390234375000034], + [115.2174804687501, 45.39619140625001], + [115.43945312499997, 45.41997070312496], + [115.53945312500005, 45.439501953125045], + [115.6810546875, 45.45825195312503], + [115.78916015625012, 45.534814453124994], + [115.93417968750006, 45.626171874999955], + [116.03955078124997, 45.67695312500001], + [116.10986328124997, 45.686718749999955], + [116.19765625, 45.739355468750006], + [116.240625, 45.795996093750006], + [116.22910156250012, 45.84575195312502], + [116.21298828125012, 45.88691406249998], + [116.26455078125005, 45.96303710937502], + [116.3576171875001, 46.096582031249966], + [116.44482421875003, 46.158789062500034], + [116.51669921875006, 46.20908203125006], + [116.56259765625012, 46.28979492187497], + [116.61933593750004, 46.313085937500006], + [116.6888671875, 46.321972656249955], + [116.78701171875, 46.37666015625001], + [116.85908203125004, 46.387939453125], + [116.97880859375007, 46.36176757812498], + [117.15595703125004, 46.355078125000034], + [117.26904296874997, 46.35224609375001], + [117.3333984375, 46.36201171875004], + [117.35693359375003, 46.391308593749955], + [117.35634765625, 46.436669921874966], + [117.39218750000012, 46.53759765625003], + [117.40556640625007, 46.57089843750006], + [117.43808593750012, 46.58623046874999], + [117.54687, 46.58828125000005], + [117.6205078125, 46.55200195312503], + [117.6710937500001, 46.52207031250006], + [117.74121093749997, 46.51816406250006], + [117.81347656249997, 46.537695312500034], + [117.91044921875007, 46.61933593749998], + [118.07128906249997, 46.666601562500006], + [118.15683593750006, 46.678564453125034], + [118.30869140625012, 46.71704101562497], + [118.40439453125006, 46.70317382812499], + [118.58046875, 46.69189453125], + [118.64873046875002, 46.70166015625006], + [118.72294921875007, 46.69189453125], + [118.79033203125002, 46.74707031249997], + [118.8439453125001, 46.76020507812498], + [118.95712890625006, 46.73486328124997], + [119.02851562500004, 46.69218749999999], + [119.16210937499997, 46.638671875], + [119.33183593750002, 46.61381835937499], + [119.47402343750005, 46.626660156249955], + [119.62021484375006, 46.60395507812504], + [119.70664062500006, 46.60600585937502], + [119.74746093750005, 46.62719726562497], + [119.86718750000003, 46.67216796874999], + [119.8958984375, 46.73286132812501], + [119.8841796875, 46.791455078124955], + [119.89785156250005, 46.857812499999966], + [119.8626953125, 46.90659179687506], + [119.78847656250005, 46.97880859375002], + [119.75986328125006, 47.027001953124966], + [119.7572265625, 47.09003906250004], + [119.71113281250004, 47.15], + [119.60019531250006, 47.22246093750002], + [119.52695312500006, 47.25590820312499], + [119.3766601562501, 47.38085937500003], + [119.32597656250007, 47.41015625000006], + [119.30859374999997, 47.43071289062499], + [119.29082031250002, 47.47265625], + [119.23525390625005, 47.492578124999966], + [119.16240234375007, 47.525195312500045], + [119.12294921875, 47.558496093749994], + [119.09726562500012, 47.616259765625045], + [119.08193359375, 47.654150390625034], + [119.01757812500003, 47.68535156249999], + [118.95312, 47.70292968750002], + [118.88027343750005, 47.72509765625], + [118.75996093750004, 47.75761718749996], + [118.69052734375012, 47.822265625], + [118.56777343750005, 47.94326171875005], + [118.49843750000005, 47.98398437499998], + [118.2396484375, 47.99951171875003], + [118.14707031250006, 48.02890624999998], + [118.04189453125005, 48.018945312499994], + [117.97919921875004, 47.99960937500006], + [117.84042968750012, 47.999853515625034], + [117.76835937500002, 47.98789062499998], + [117.67666015625005, 47.908300781250034], + [117.55537109375004, 47.80468750000006], + [117.45507812500003, 47.74135742187502], + [117.38398437500004, 47.67573242187498], + [117.3507812500001, 47.65219726562498], + [117.28593750000002, 47.666357421875034], + [117.19707031250007, 47.74028320312499], + [117.06972656250005, 47.80639648437506], + [116.95166015624997, 47.836572265624966], + [116.90117187500007, 47.85307617187496], + [116.76054687500002, 47.869775390624994], + [116.65195312500012, 47.86450195312497], + [116.51347656250007, 47.839550781249955], + [116.37822265625002, 47.84404296874999], + [116.31718750000002, 47.85986328125], + [116.2311523437501, 47.85820312500002], + [116.07480468750012, 47.78955078125], + [115.99384765625004, 47.71132812500005], + [115.89824218750002, 47.68691406250005], + [115.8117187500001, 47.73823242187501], + [115.71171875000002, 47.798925781250034], + [115.6164062500001, 47.874804687500045], + [115.55761718750003, 47.945019531249955], + [115.52509765625004, 48.13085937499997], + [115.63945312500007, 48.18623046874998], + [115.785546875, 48.24824218750001], + [115.7965820312501, 48.346337890624994], + [115.7916992187501, 48.455712890624994], + [115.8205078125001, 48.57724609375006], + [115.9538085937501, 48.689355468749994], + [116.02548828125012, 48.78227539062499], + [116.034375, 48.84003906250004], + [116.09824218750012, 48.93613281249998], + [116.15966796874997, 49.037451171875034], + [116.2433593750001, 49.17036132812501], + [116.40214843750002, 49.40620117187501], + [116.58974609375005, 49.684814453125], + [116.6833007812501, 49.82377929687499], + [116.88896484375007, 49.73779296874997], + [117.02167968750004, 49.69296874999998], + [117.24560546874997, 49.62485351562506], + [117.47714843750006, 49.60942382812502], + [117.69843750000004, 49.53583984375004], + [117.81259765625012, 49.513525390625034], + [117.8734375, 49.51347656250002], + [118.18662109375012, 49.69277343750002], + [118.4515625, 49.84448242187503], + [118.75595703125012, 49.96284179687498], + [118.97949218749997, 49.97885742187506], + [119.14746093750003, 50.01337890624998], + [119.25986328125012, 50.06640625000003], + [119.32607421875, 50.15493164062505], + [119.34628906250012, 50.278955078124994], + [119.30156250000007, 50.35390625], + [119.19189453125003, 50.37983398437504], + [119.16367187500006, 50.40600585937503], + [119.21669921875, 50.43251953125002], + [119.25585937499997, 50.48417968749996], + [119.2806640625, 50.56098632812498], + [119.34404296875002, 50.633886718750006], + [119.44570312500005, 50.70283203125001], + [119.50175781250002, 50.779248046874955], + [119.51230468750012, 50.863134765625006], + [119.57343750000004, 50.94677734374997], + [119.6849609375, 51.030126953125006], + [119.74599609375, 51.10771484374999], + [119.75664062500007, 51.17949218749996], + [119.81318359375004, 51.26704101562504], + [119.9669921875001, 51.422119140625], + [120.06689453125003, 51.60068359375006], + [120.23701171875004, 51.722998046875034], + [120.51054687500007, 51.84853515625002], + [120.68144531250007, 51.973046875], + [120.74980468750007, 52.096533203125006], + [120.74453125000005, 52.20546875], + [120.6654296875, 52.299902343750034], + [120.65039062499997, 52.395898437499966], + [120.69921874999997, 52.49360351562498], + [120.65615234375, 52.56665039062503], + [120.52109375000012, 52.615039062500045], + [120.36005859375004, 52.62700195312499], + [120.17275390625, 52.602490234374955], + [120.0675781250001, 52.632910156250034], + [120.04433593750005, 52.71821289062501], + [120.09453125000007, 52.787207031250034], + [120.2181640625, 52.83989257812502], + [120.4212890625, 52.96806640625002], + [120.70410156249997, 53.171826171874955], + [120.98544921875012, 53.28457031250002], + [121.40546875000004, 53.317041015624966], + [121.74394531250002, 53.38359375000002], + [122.08886718750003, 53.45146484374999], + [122.33779296875, 53.485009765624994], + [122.38017578125002, 53.4625], + [122.51582031250004, 53.456982421874955], + [122.74472656250006, 53.468505859375], + [122.95761718750006, 53.497705078124994], + [123.15410156250007, 53.54458007812505], + [123.30957031250003, 53.55561523437498], + [123.42402343750004, 53.53076171874997], + [123.48945312500004, 53.529443359374994] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Côte d'Ivoire", + "iso_a2": "CI", + "iso_a3": "CIV", + "iso_n3": "384", + "continent": "Africa" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-3.08671875, 5.128320312500023], + [-3.114013671875028, 5.088671875000031], + [-3.246386718749989, 5.1140625], + [-3.21489257812496, 5.147216796875057], + [-3.08671875, 5.128320312500023] + ] + ], + [ + [ + [-6.230664062500011, 10.59750976562502], + [-6.23974609375, 10.558105468749986], + [-6.217773437499943, 10.476269531250011], + [-6.190673828124943, 10.400292968749994], + [-6.192626953124972, 10.369433593750003], + [-6.214990234374994, 10.322363281250006], + [-6.241308593749949, 10.279199218750009], + [-6.238378906249977, 10.26162109374998], + [-6.19687, 10.232128906250011], + [-6.117187499999972, 10.201904296874986], + [-6.034570312499937, 10.194824218750057], + [-5.988671875, 10.23911132812502], + [-5.940673828125, 10.275097656249969], + [-5.907568359375006, 10.307226562500034], + [-5.896191406249983, 10.354736328125028], + [-5.843847656249977, 10.389550781250023], + [-5.694287109374983, 10.433203125000034], + [-5.556591796874983, 10.439941406249986], + [-5.52353515624992, 10.426025390624986], + [-5.46127929687492, 10.35957031250004], + [-5.382275390625011, 10.314013671875003], + [-5.262304687499977, 10.319677734374991], + [-5.175292968749943, 10.292626953124994], + [-5.099853515625028, 10.241601562499994], + [-5.049316406249943, 10.128320312500009], + [-4.994042968749966, 10.046484375000034], + [-4.969921874999926, 9.930078125000023], + [-4.882714843750023, 9.868945312500003], + [-4.814453124999972, 9.841162109375034], + [-4.72177734374992, 9.756542968750026], + [-4.625830078125006, 9.713574218749969], + [-4.526611328124943, 9.723486328125034], + [-4.480273437500017, 9.679248046875003], + [-4.406201171874926, 9.647998046875031], + [-4.332226562499955, 9.645703125], + [-4.267187499999949, 9.743261718749977], + [-4.18115234375, 9.78173828125], + [-3.963476562499977, 9.859619140624972], + [-3.877636718749983, 9.894921874999966], + [-3.790625, 9.917187499999983], + [-3.581152343749977, 9.924316406250014], + [-3.38627929687496, 9.900292968749994], + [-3.289697265625023, 9.882226562500051], + [-3.223535156249937, 9.895458984374997], + [-3.160693359374932, 9.849169921874974], + [-3.095800781249949, 9.752099609375009], + [-3.042626953124937, 9.72089843750004], + [-2.988281249999972, 9.687353515624963], + [-2.948144531249966, 9.61074218749998], + [-2.900878906249943, 9.534619140625026], + [-2.875146484374937, 9.500927734374997], + [-2.816748046874949, 9.425830078124974], + [-2.766601562499943, 9.424707031250009], + [-2.7171875, 9.457128906250048], + [-2.695849609374989, 9.481347656250009], + [-2.686132812499977, 9.43173828125002], + [-2.705761718749983, 9.351367187499989], + [-2.701806640624966, 9.301660156249994], + [-2.674218749999937, 9.282617187500023], + [-2.689208984374972, 9.218603515625034], + [-2.746679687499977, 9.109619140625028], + [-2.74692382812492, 9.04511718750004], + [-2.689892578124955, 9.02509765625004], + [-2.649218750000017, 8.956591796875031], + [-2.624902343749937, 8.839599609375], + [-2.600390625000017, 8.800439453125023], + [-2.597998046874949, 8.7763671875], + [-2.556884765624943, 8.493017578125006], + [-2.505859375000028, 8.208740234375], + [-2.538281249999955, 8.171630859374986], + [-2.582763671874972, 8.160791015624994], + [-2.61171875, 8.147558593749963], + [-2.619970703125006, 8.12109375], + [-2.600976562499937, 8.082226562499983], + [-2.613378906249977, 8.046679687500017], + [-2.668847656249994, 8.022216796875014], + [-2.789746093749955, 7.931933593750003], + [-2.79814453124996, 7.895996093750057], + [-2.830126953124989, 7.819042968750011], + [-2.856884765624955, 7.772070312500034], + [-2.896337890624977, 7.685009765624969], + [-2.959082031249977, 7.454541015624997], + [-2.982324218750023, 7.263623046875011], + [-2.985791015624926, 7.204882812500031], + [-3.01015625, 7.163769531250011], + [-3.03769531249992, 7.104589843750034], + [-3.168896484374926, 6.940966796875003], + [-3.235791015624955, 6.80722656250002], + [-3.227148437499977, 6.749121093749991], + [-3.224121093749972, 6.690771484375006], + [-3.243896484375, 6.648681640625057], + [-3.240283203124989, 6.535644531250028], + [-3.224023437499966, 6.441064453125037], + [-3.200585937499966, 6.348242187500034], + [-3.105566406249977, 6.085644531250011], + [-3.056152343749943, 5.926269531250043], + [-3.025292968749966, 5.79775390624998], + [-2.998291015624972, 5.711328125000051], + [-2.972802734374937, 5.676269531250014], + [-2.96225585937492, 5.643017578124983], + [-2.821191406249966, 5.619189453125017], + [-2.793652343749955, 5.600097656250028], + [-2.754980468749977, 5.432519531249994], + [-2.761914062499955, 5.356933593750057], + [-2.789599609375017, 5.328222656249977], + [-2.788671875, 5.264111328124969], + [-2.795214843749989, 5.184521484375011], + [-2.815673828125, 5.153027343749997], + [-2.894726562499926, 5.149023437499977], + [-2.94833984374992, 5.11884765625004], + [-3.019140624999949, 5.130810546874997], + [-3.02587890625, 5.150537109375023], + [-3.063964843749943, 5.157714843749972], + [-3.168701171874972, 5.203027343749966], + [-3.151416015624989, 5.34829101562498], + [-3.199951171874943, 5.3544921875], + [-3.23759765624996, 5.335400390625026], + [-3.312011718749943, 5.16079101562498], + [-3.347558593749994, 5.13066406249996], + [-3.870605468749972, 5.220703125000014], + [-3.984179687499932, 5.293164062500026], + [-4.120166015625017, 5.309716796875023], + [-4.357275390625006, 5.301416015625023], + [-4.552832031249949, 5.279882812499991], + [-4.60888671875, 5.235888671875003], + [-4.115185546874955, 5.261621093749994], + [-4.062060546874989, 5.25664062499996], + [-4.037207031249977, 5.23012695312498], + [-4.661523437499994, 5.172558593749969], + [-4.899707031249932, 5.138330078125023], + [-4.970117187499966, 5.147753906249989], + [-5.023681640624943, 5.20361328125], + [-5.282373046874994, 5.210253906250017], + [-5.335449218749972, 5.19199218750002], + [-5.36752929687492, 5.15078125], + [-5.265771484374994, 5.159716796875017], + [-5.104882812499966, 5.162158203124989], + [-5.061816406249989, 5.13066406249996], + [-5.56474609374996, 5.089453125], + [-5.913769531249926, 5.0109375], + [-6.061718749999955, 4.952832031249969], + [-6.5484375, 4.761767578125045], + [-6.845166015624955, 4.671484375000034], + [-6.922900390624989, 4.638330078125023], + [-7.057958984374977, 4.54472656249996], + [-7.231396484374955, 4.485986328124994], + [-7.426074218749989, 4.376025390624974], + [-7.544970703124989, 4.351318359375], + [-7.571582031249989, 4.38642578125004], + [-7.574658203124983, 4.572314453124989], + [-7.591210937499994, 4.821533203125043], + [-7.585058593749977, 4.916748046875], + [-7.569335937499972, 5.006445312499977], + [-7.56889648437496, 5.080664062499991], + [-7.509765625, 5.108496093749977], + [-7.494140625, 5.139794921875051], + [-7.485205078124977, 5.23642578125002], + [-7.429833984374966, 5.324511718750017], + [-7.428906249999955, 5.477880859375006], + [-7.412451171874977, 5.509912109375051], + [-7.39990234375, 5.550585937499989], + [-7.423730468749966, 5.651318359374983], + [-7.454394531249989, 5.841308593749972], + [-7.469433593749955, 5.853710937500011], + [-7.482812500000023, 5.845507812500031], + [-7.513916015624943, 5.842041015625028], + [-7.636132812499994, 5.90771484375], + [-7.730371093749994, 5.919042968749991], + [-7.796533203124966, 5.975097656250043], + [-7.800927734374994, 6.038916015624991], + [-7.833251953125, 6.076367187499983], + [-7.855517578125017, 6.150146484375], + [-7.888623046875011, 6.234863281250028], + [-7.981591796874937, 6.2861328125], + [-8.068945312499977, 6.298388671875003], + [-8.131005859374994, 6.287548828125026], + [-8.203857421875, 6.29072265625004], + [-8.287109375, 6.31904296875004], + [-8.344873046874966, 6.35126953125004], + [-8.399316406249937, 6.413183593750034], + [-8.449902343749955, 6.4625], + [-8.49033203124992, 6.456396484375048], + [-8.53955078125, 6.468066406250031], + [-8.587890625, 6.490527343749989], + [-8.603564453124989, 6.507812500000043], + [-8.401220703124977, 6.705126953125003], + [-8.332568359374932, 6.801562500000017], + [-8.325097656250023, 6.860400390625017], + [-8.324511718749989, 6.920019531249991], + [-8.30234375, 6.980957031249972], + [-8.296630859375, 7.074023437500017], + [-8.408740234374989, 7.411816406249997], + [-8.437158203124937, 7.516406249999989], + [-8.467285156249943, 7.547021484375009], + [-8.48642578124992, 7.558496093750037], + [-8.429980468749989, 7.601855468749989], + [-8.351757812499926, 7.590576171875], + [-8.231884765624955, 7.556738281250034], + [-8.205957031249994, 7.590234375000023], + [-8.115429687499926, 7.760742187500028], + [-8.117822265624966, 7.82402343749996], + [-8.126855468749937, 7.867724609374974], + [-8.073828124999977, 7.984423828125045], + [-8.031738281249943, 8.02973632812504], + [-8.00986328124992, 8.078515625000023], + [-8.016748046874994, 8.144921874999966], + [-8.048583984375, 8.169726562500045], + [-8.090527343749926, 8.165136718749991], + [-8.140625, 8.181445312500031], + [-8.217138671874949, 8.219677734375011], + [-8.256103515625, 8.253710937500017], + [-8.244140624999943, 8.407910156249983], + [-8.236962890624994, 8.455664062500034], + [-8.2099609375, 8.483251953124963], + [-8.167773437499932, 8.490673828124969], + [-8.049121093749932, 8.495312500000026], + [-7.953125, 8.477734375], + [-7.86875, 8.467529296875057], + [-7.823583984374977, 8.467675781249994], + [-7.787402343749989, 8.421972656250006], + [-7.738964843749983, 8.375244140624986], + [-7.696093749999932, 8.375585937499977], + [-7.681201171874932, 8.41035156250004], + [-7.69096679687496, 8.5625], + [-7.71958007812492, 8.643017578125011], + [-7.78403320312492, 8.720605468750009], + [-7.950976562499989, 8.786816406249997], + [-7.954980468749937, 8.879443359375031], + [-7.938183593749983, 8.97978515624996], + [-7.902099609375, 9.017089843750014], + [-7.777978515624937, 9.080859375000031], + [-7.799804687499943, 9.115039062499989], + [-7.839404296875017, 9.151611328124972], + [-7.918066406249949, 9.188525390625031], + [-7.9, 9.308691406250006], + [-7.896191406249955, 9.415869140624991], + [-7.962695312499989, 9.403857421875031], + [-8.031005859374972, 9.397656250000011], + [-8.088671874999989, 9.430664062499986], + [-8.136962890624972, 9.495703125], + [-8.14604492187496, 9.674804687499986], + [-8.14584960937492, 9.881738281250037], + [-8.155175781249937, 9.973193359375017], + [-8.136621093749994, 10.022070312500034], + [-8.077832031250011, 10.067089843750054], + [-8.013525390624949, 10.125292968750003], + [-7.990625, 10.1625], + [-7.9609375, 10.163476562499966], + [-7.88408203124996, 10.185742187499983], + [-7.814208984374943, 10.236572265625028], + [-7.749072265624989, 10.342285156249986], + [-7.661132812500028, 10.427441406250011], + [-7.56210937499992, 10.421240234374991], + [-7.532812499999977, 10.436816406249974], + [-7.497949218749994, 10.439794921875048], + [-7.45654296875, 10.383935546875037], + [-7.414794921875, 10.341308593750057], + [-7.385058593749989, 10.340136718749989], + [-7.363183593749966, 10.25937], + [-7.182324218749983, 10.225683593750034], + [-7.104882812499937, 10.203515625000051], + [-7.039746093749983, 10.144775390624986], + [-7.01708984375, 10.143261718750026], + [-6.989453124999955, 10.15566406249998], + [-6.968164062499966, 10.176220703124997], + [-6.963818359374983, 10.198730468750043], + [-6.991748046874989, 10.251855468750037], + [-6.979492187499972, 10.299560546874986], + [-6.950341796874994, 10.342333984374989], + [-6.90380859375, 10.34506835937502], + [-6.833642578125023, 10.35698242187496], + [-6.75322265624996, 10.357128906249983], + [-6.693261718750023, 10.34946289062502], + [-6.669335937499937, 10.39218750000002], + [-6.69199218749992, 10.512011718750017], + [-6.686132812499977, 10.578027343750051], + [-6.676367187499949, 10.633789062500043], + [-6.654150390624949, 10.65644531250004], + [-6.564599609374994, 10.586425781249986], + [-6.482617187499983, 10.561230468749997], + [-6.423925781249949, 10.559130859375017], + [-6.40751953124996, 10.572363281249963], + [-6.432617187499943, 10.648730468749974], + [-6.425878906249977, 10.671777343749966], + [-6.404150390625006, 10.685107421875017], + [-6.36562, 10.692822265624983], + [-6.261132812499994, 10.724072265625054], + [-6.250244140625, 10.717919921875037], + [-6.230664062500011, 10.59750976562502] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Cameroon", + "iso_a2": "CM", + "iso_a3": "CMR", + "iso_n3": "120", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [15.480078125, 7.523779296874991], + [15.379101562500011, 7.358154296875], + [15.245898437500017, 7.263574218749994], + [15.206738281250011, 7.206152343749991], + [15.185839843750017, 7.134912109374994], + [15.157128906250023, 7.063574218749991], + [15.086328125000023, 6.909912109375], + [15.034570312500023, 6.784423828125], + [14.982714843750017, 6.7453125], + [14.861914062500006, 6.555712890624989], + [14.780371093750006, 6.36572265625], + [14.764062500000023, 6.316357421874997], + [14.7392578125, 6.27978515625], + [14.699511718750017, 6.250244140625], + [14.559375, 6.191210937499989], + [14.512109375000023, 6.161914062499989], + [14.475, 6.126806640624991], + [14.440722656250017, 6.086718749999989], + [14.43115234375, 6.038720703124994], + [14.4638671875, 5.970703125], + [14.503125, 5.916894531249994], + [14.54248046875, 5.91357421875], + [14.577246093750006, 5.916015625], + [14.598828125000011, 5.883984375], + [14.616894531250011, 5.865136718749994], + [14.616894531250011, 5.495507812499994], + [14.58359375, 5.439648437499997], + [14.584375, 5.414746093749997], + [14.568066406250011, 5.35107421875], + [14.56298828125, 5.279931640624994], + [14.573535156250017, 5.251708984375], + [14.601757812500011, 5.228808593749989], + [14.640625, 5.179052734374991], + [14.66171875, 5.065527343749991], + [14.708984375, 4.665576171874989], + [14.73125, 4.602392578124991], + [14.770410156250023, 4.55810546875], + [14.8935546875, 4.471875], + [15.022753906250017, 4.358544921874994], + [15.063574218750006, 4.284863281249997], + [15.0875, 4.163964843749994], + [15.136914062500011, 4.069140624999989], + [15.135839843750006, 4.036914062499989], + [15.115429687500011, 4.024462890624989], + [15.0673828125, 4.02294921875], + [15.034863281250011, 4.016357421875], + [15.062109375, 3.947216796874997], + [15.128710937500017, 3.826904296875], + [15.23984375, 3.7021484375], + [15.360156250000017, 3.567138671875], + [15.458398437500023, 3.456835937499989], + [15.580859375000017, 3.329296875], + [15.676562500000017, 3.2296875], + [15.775, 3.127197265625], + [15.849316406250011, 3.103076171874989], + [15.904882812500006, 3.095849609374994], + [15.9287109375, 3.07578125], + [15.9580078125, 3.028710937499994], + [16.008203125000023, 2.976660156249991], + [16.0634765625, 2.90859375], + [16.082421875000023, 2.839111328125], + [16.05927734375001, 2.772998046874989], + [16.082128906250006, 2.678173828124997], + [16.08349609375, 2.670019531249991], + [16.101855468750017, 2.632666015624991], + [16.095507812500017, 2.59921875], + [16.106738281250017, 2.473486328124991], + [16.136132812500023, 2.36376953125], + [16.183398437500017, 2.270068359374989], + [16.1826171875, 2.262451171875], + [16.176562500000017, 2.204785156249997], + [16.11572265625, 2.167822265624991], + [16.080078125, 2.106787109374991], + [16.069628906250017, 2.021679687499997], + [16.087890625, 1.918066406249991], + [16.13496093750001, 1.795947265624989], + [16.136132812500023, 1.72421875], + [16.119531250000023, 1.714111328125], + [16.09033203125, 1.691259765624991], + [16.059375, 1.676220703124997], + [15.975195312500006, 1.760009765625], + [15.881640625000017, 1.816601562499997], + [15.741601562500023, 1.914990234374997], + [15.600292968750011, 1.950390625], + [15.41748046875, 1.956738281249997], + [15.338769531250023, 1.944726562499994], + [15.282421875000011, 1.981738281249989], + [15.203515625000023, 2.024462890624989], + [15.160058593750023, 2.035595703124997], + [15.099609375, 2.00234375], + [15.057812500000011, 2.000878906249994], + [15.006445312500006, 2.013769531249991], + [14.902441406250006, 2.012304687499991], + [14.892773437500011, 2.0693359375], + [14.875, 2.08046875], + [14.762890625000011, 2.0751953125], + [14.728320312500017, 2.122412109374991], + [14.713281250000023, 2.117138671874997], + [14.669140625000011, 2.132080078125], + [14.578906250000017, 2.199121093749994], + [14.484082031250011, 2.154736328124997], + [14.287011718750023, 2.160351562499997], + [14.034375, 2.158886718749997], + [13.772753906250017, 2.157421875], + [13.533496093750017, 2.159521484374991], + [13.293554687500006, 2.161572265624997], + [13.269921875000023, 2.22421875], + [13.2203125, 2.256445312499991], + [13.130859375, 2.259423828124994], + [12.867480468750017, 2.246777343749997], + [12.665722656250011, 2.256787109374997], + [12.601367187500017, 2.265039062499994], + [12.52978515625, 2.281347656249991], + [12.361328125, 2.295996093749991], + [12.153417968750006, 2.284375], + [12.106152343750011, 2.2875], + [11.939746093750017, 2.28515625], + [11.558984375000023, 2.302197265624997], + [11.348437500000017, 2.299707031249994], + [11.353320312500017, 2.261425781249997], + [11.339941406250006, 2.233837890624997], + [11.328710937500006, 2.167431640624997], + [11.096582031250023, 2.16748046875], + [10.790917968750023, 2.167578125], + [10.502246093750017, 2.167626953124994], + [10.307031250000023, 2.167724609375], + [9.979882812500023, 2.167773437499989], + [9.8701171875, 2.21328125], + [9.8369140625, 2.242382812499997], + [9.830371093750017, 2.275488281249991], + [9.826171875, 2.297802734374997], + [9.80078125, 2.304443359375], + [9.82177734375, 2.539257812499997], + [9.867578125000023, 2.734960937499991], + [9.885449218750011, 2.916552734374989], + [9.948437500000011, 3.079052734374997], + [9.9150390625, 3.239648437499994], + [9.876171875000011, 3.309765625], + [9.672070312500011, 3.53759765625], + [9.765722656250006, 3.623828124999989], + [9.642382812500017, 3.611767578124997], + [9.615917968750011, 3.696484375], + [9.55615234375, 3.798046875], + [9.5927734375, 3.814306640624991], + [9.628125, 3.870019531249994], + [9.739648437500023, 3.852929687499994], + [9.736132812500017, 3.880126953125], + [9.639941406250017, 3.96533203125], + [9.649218750000017, 4.008349609374989], + [9.688867187500023, 4.056396484375], + [9.66953125, 4.07666015625], + [9.600390625000017, 4.026904296874989], + [9.550585937500017, 4.028417968749991], + [9.511816406250006, 4.060644531249991], + [9.483691406250017, 4.066113281249997], + [9.500781250000017, 4.000732421875], + [9.462011718750006, 3.942529296874994], + [9.42529296875, 3.922314453124997], + [9.3623046875, 3.925732421874997], + [9.310937500000023, 3.940380859374997], + [9.29736328125, 3.972949218749989], + [9.249121093750006, 3.997851562499989], + [9.113867187500006, 4.041064453124989], + [9.000097656250006, 4.091601562499989], + [8.97705078125, 4.230419921874997], + [8.932031250000023, 4.290234375], + [8.91357421875, 4.3578125], + [8.90283203125, 4.43515625], + [8.918261718750017, 4.553759765624989], + [8.889453125000017, 4.57275390625], + [8.8564453125, 4.579248046874994], + [8.80712890625, 4.5734375], + [8.761914062500011, 4.580029296874997], + [8.707910156250023, 4.645703125], + [8.660351562500011, 4.670996093749991], + [8.689648437500011, 4.550244140624997], + [8.65625, 4.516357421875], + [8.574414062500011, 4.526220703124991], + [8.53955078125, 4.571875], + [8.5328125, 4.605859375], + [8.570507812500011, 4.752099609374994], + [8.555859375000011, 4.755224609374991], + [8.585156250000011, 4.832812499999989], + [8.640527343750023, 4.927001953125], + [8.715625, 5.046875], + [8.800976562500011, 5.197460937499997], + [8.859179687500017, 5.463769531249994], + [8.898828125000023, 5.629687499999989], + [8.93505859375, 5.781005859375], + [8.997167968750006, 5.917724609375], + [9.06015625, 6.009082031249989], + [9.23876953125, 6.186132812499991], + [9.373339843750017, 6.319628906249989], + [9.442187500000017, 6.373388671874991], + [9.490234375, 6.418652343749997], + [9.574023437500017, 6.470410156249997], + [9.659960937500017, 6.531982421875], + [9.7255859375, 6.65], + [9.779882812500006, 6.76015625], + [9.820703125000023, 6.783935546875], + [9.874218750000011, 6.803271484374989], + [10.038867187500017, 6.92138671875], + [10.1435546875, 6.996435546874991], + [10.167773437500017, 6.959179687499997], + [10.185546875, 6.912792968749997], + [10.205468750000023, 6.8916015625], + [10.293066406250006, 6.876757812499989], + [10.413183593750006, 6.877734374999989], + [10.482324218750023, 6.891259765624994], + [10.51904296875, 6.930468749999989], + [10.556347656250011, 7.037451171874991], + [10.578125, 7.057714843749991], + [10.60625, 7.063085937499991], + [10.737597656250017, 6.98828125], + [10.846484375000017, 6.881787109374997], + [10.954199218750006, 6.7765625], + [11.008691406250023, 6.739111328124991], + [11.032519531250017, 6.697900390624994], + [11.0796875, 6.505517578124994], + [11.1064453125, 6.457714843749997], + [11.1533203125, 6.437939453124997], + [11.2373046875, 6.450537109374991], + [11.324609375000023, 6.484667968749989], + [11.401757812500023, 6.533935546875], + [11.4775390625, 6.597412109375], + [11.529101562500017, 6.655029296875], + [11.551660156250023, 6.697265625], + [11.56298828125, 6.854638671874994], + [11.580078125, 6.888867187499997], + [11.657519531250017, 6.9515625], + [11.787011718750023, 7.056201171874989], + [11.861425781250006, 7.11640625], + [11.854785156250017, 7.137988281249989], + [11.80859375, 7.201953124999989], + [11.767382812500017, 7.272265624999989], + [11.809179687500006, 7.345068359374991], + [11.852441406250023, 7.400732421874991], + [12.016015625000023, 7.589746093749994], + [12.0166015625, 7.652001953124994], + [12.025195312500017, 7.727783203125], + [12.155957031250011, 7.942480468749991], + [12.231152343750011, 8.227392578124991], + [12.2333984375, 8.282324218749991], + [12.311328125000017, 8.419726562499989], + [12.403515625000011, 8.595556640624991], + [12.582714843750011, 8.624121093749991], + [12.651562500000011, 8.667773437499989], + [12.731152343750011, 8.745654296874989], + [12.7822265625, 8.81787109375], + [12.806542968750023, 8.886621093749994], + [12.824414062500011, 9.019433593749994], + [12.85595703125, 9.170751953124991], + [12.875683593750011, 9.303515624999989], + [12.929492187500017, 9.42626953125], + [13.019433593750023, 9.488330078124989], + [13.175488281250011, 9.539648437499991], + [13.19873046875, 9.563769531249989], + [13.22119140625, 9.645166015624994], + [13.23876953125, 9.814013671874989], + [13.24375, 9.915917968749994], + [13.249804687500017, 9.960058593749991], + [13.269921875000023, 10.036181640624989], + [13.41455078125, 10.171435546874989], + [13.478515625, 10.383251953124997], + [13.535351562500011, 10.605078125], + [13.699902343750011, 10.873144531249991], + [13.89208984375, 11.140087890624997], + [13.9814453125, 11.211865234374997], + [14.056738281250006, 11.245019531249994], + [14.143261718750011, 11.24853515625], + [14.202343750000011, 11.268164062499991], + [14.409472656250017, 11.401171874999989], + [14.49609375, 11.446142578124991], + [14.559765625000011, 11.492285156249991], + [14.575390625000011, 11.532421875], + [14.581640625, 11.591162109374991], + [14.561816406250017, 11.728710937499997], + [14.597363281250011, 11.829833984375], + [14.6181640625, 11.986621093749989], + [14.627148437500011, 12.108691406249989], + [14.619726562500006, 12.150976562499991], + [14.587011718750006, 12.209423828124997], + [14.580957031250023, 12.222070312499994], + [14.518945312500023, 12.298242187499994], + [14.415429687500023, 12.344140625], + [14.272851562500023, 12.356494140624989], + [14.197460937500011, 12.3837890625], + [14.184863281250017, 12.447216796874997], + [14.177636718750023, 12.484082031249997], + [14.170312500000023, 12.524072265624994], + [14.160058593750023, 12.61279296875], + [14.06396484375, 13.078515625], + [14.244824218750011, 13.07734375], + [14.461718750000017, 13.021777343749989], + [14.516210937500006, 12.979736328125], + [14.544726562500017, 12.820214843749994], + [14.623242187500011, 12.729931640624997], + [14.76123046875, 12.655615234374991], + [14.847070312500023, 12.502099609374994], + [14.880664062500017, 12.269384765624991], + [14.956738281250011, 12.13037109375], + [14.973828125000011, 12.108349609374997], + [15.059863281250017, 11.907128906249994], + [15.08125, 11.845507812499989], + [15.087695312500017, 11.724365234375], + [15.078027343750023, 11.642578125], + [15.121972656250023, 11.541259765625], + [15.055468750000017, 11.368554687499994], + [15.035742187500006, 11.2625], + [15.029882812500006, 11.113671875], + [15.068652343750017, 10.85107421875], + [15.132226562500023, 10.648486328124989], + [15.200976562500017, 10.484521484374994], + [15.276074218750011, 10.357373046874997], + [15.39990234375, 10.216894531249991], + [15.531933593750011, 10.088476562499991], + [15.654882812500006, 10.0078125], + [15.540917968750023, 9.960302734374991], + [15.320019531250011, 9.954296875], + [15.193164062500017, 9.981494140624989], + [15.132714843750023, 9.982861328124997], + [15.071582031250017, 9.965966796874994], + [14.835839843750023, 9.941699218749989], + [14.597949218750017, 9.953076171874997], + [14.377246093750017, 9.985058593749997], + [14.243261718750006, 9.979736328125], + [14.139746093750006, 9.901806640624997], + [14.055957031250017, 9.784375], + [13.977246093750011, 9.691552734374994], + [14.004980468750006, 9.588720703124991], + [14.064160156250011, 9.53173828125], + [14.177929687500011, 9.406494140625], + [14.280078125000017, 9.285058593749994], + [14.332324218750017, 9.203515625], + [14.5361328125, 9.025244140624991], + [14.732812500000023, 8.865673828124997], + [14.771289062500017, 8.839160156249989], + [14.826269531250006, 8.810302734375], + [14.860742187500023, 8.798632812499989], + [14.967968750000011, 8.707275390625], + [15.1162109375, 8.557324218749997], + [15.252343750000023, 8.322363281249991], + [15.349023437500023, 8.083837890624991], + [15.44296875, 7.851855468749989], + [15.484472656250006, 7.812744140625], + [15.5498046875, 7.787890624999989], + [15.557812500000011, 7.738037109375], + [15.552636718750023, 7.664501953124997], + [15.532421875000011, 7.604394531249994], + [15.480078125, 7.523779296874991] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Dem. Rep. Congo", + "iso_a2": "CD", + "iso_a3": "COD", + "iso_n3": "180", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [27.4033203125, 5.109179687499989], + [27.439257812500017, 5.039208984374994], + [27.491015625000017, 4.967578124999989], + [27.664160156250006, 4.845996093749989], + [27.71923828125, 4.7783203125], + [27.76142578125001, 4.703222656249991], + [27.7880859375, 4.644677734374994], + [27.841601562500017, 4.597753906249991], + [27.916601562500006, 4.567919921874989], + [27.98066406250001, 4.532080078124991], + [28.019824218750017, 4.479394531249994], + [28.07861328125, 4.4248046875], + [28.19208984375001, 4.350244140624994], + [28.24726562500001, 4.348535156249994], + [28.31103515625, 4.338037109374994], + [28.3671875, 4.318652343749989], + [28.427539062500017, 4.324169921874997], + [28.524804687500023, 4.372851562499989], + [28.639550781250023, 4.454492187499994], + [28.72705078125, 4.504980468749991], + [28.939355468750023, 4.487060546875], + [29.057421875000017, 4.445947265624994], + [29.151464843750006, 4.38818359375], + [29.224902343750017, 4.391894531249989], + [29.384863281250006, 4.498388671874991], + [29.469628906250023, 4.61181640625], + [29.552050781250017, 4.636035156249989], + [29.676855468750006, 4.5869140625], + [29.779882812500006, 4.48095703125], + [29.870214843750006, 4.3271484375], + [29.933984375000023, 4.268505859374997], + [30.021386718750023, 4.177636718749994], + [30.194921875, 3.98193359375], + [30.420703125000017, 3.883886718749991], + [30.50830078125, 3.835693359375], + [30.536914062500017, 3.787207031249991], + [30.553515625000017, 3.722949218749989], + [30.559375, 3.652783203124997], + [30.586718750000017, 3.62421875], + [30.64765625000001, 3.634130859374991], + [30.69990234375001, 3.644091796874989], + [30.757226562500023, 3.62421875], + [30.796972656250006, 3.573144531249994], + [30.81689453125, 3.533349609374994], + [30.83857421875001, 3.49072265625], + [30.895312500000017, 3.463671874999989], + [30.90644531250001, 3.408935546875], + [30.867578125000023, 3.342138671874991], + [30.82783203125001, 3.282617187499994], + [30.779296875, 3.163378906249989], + [30.754003906250006, 3.041796874999989], + [30.786523437500023, 3.001367187499994], + [30.821386718750006, 2.967578124999989], + [30.839941406250006, 2.933496093749994], + [30.85078125000001, 2.893652343749991], + [30.8466796875, 2.847021484374991], + [30.76953125, 2.677978515625], + [30.729882812500023, 2.5302734375], + [30.728613281250006, 2.455371093749989], + [30.830078125, 2.400439453124989], + [30.9619140625, 2.403271484374997], + [31.00361328125001, 2.369384765625], + [31.045312500000023, 2.315527343749991], + [31.082128906250006, 2.2880859375], + [31.137597656250023, 2.288867187499989], + [31.176367187500006, 2.270068359374989], + [31.19140625, 2.232275390624991], + [31.236328125, 2.191357421874997], + [31.274023437500006, 2.146289062499989], + [31.25605468750001, 2.088476562499991], + [31.252734375000017, 2.044580078124994], + [31.158789062500006, 1.922021484374994], + [30.94257812500001, 1.6828125], + [30.478125, 1.239062499999989], + [30.477832031250017, 1.238818359374989], + [30.321093750000017, 1.185302734375], + [30.240136718750023, 1.102783203125], + [30.182910156250017, 0.973486328124991], + [30.04736328125, 0.863525390625], + [29.94287109375, 0.819238281249994], + [29.931640625, 0.792871093749994], + [29.923828125, 0.673925781249991], + [29.934472656250023, 0.4990234375], + [29.88544921875001, 0.4189453125], + [29.81464843750001, 0.263623046874997], + [29.77783203125, 0.166357421874991], + [29.74970703125001, 0.147216796875], + [29.717675781250023, 0.098339843749997], + [29.697851562500006, -0.060205078125009], + [29.684375, -0.113574218750003], + [29.633203125000023, -0.441699218750003], + [29.647851562500023, -0.535253906250006], + [29.608203125000017, -0.691308593750009], + [29.6064453125, -0.783105468750009], + [29.59003906250001, -0.887109375], + [29.561914062500023, -0.97734375], + [29.5640625, -1.121386718750003], + [29.579980468750023, -1.356738281250003], + [29.576953125000017, -1.387890625000011], + [29.53779296875001, -1.409765625], + [29.46796875000001, -1.468066406250003], + [29.401953125, -1.507421875], + [29.351660156250006, -1.517578125], + [29.268164062500006, -1.62158203125], + [29.196582031250017, -1.719921875000011], + [29.14326171875001, -1.816015625], + [29.12939453125, -1.860253906250009], + [29.140625, -1.984570312500011], + [29.148046875, -2.1318359375], + [29.13154296875001, -2.195117187500003], + [29.1064453125, -2.233203125], + [28.989550781250017, -2.312792968750003], + [28.912695312500006, -2.370312500000011], + [28.876367187500023, -2.400292968750009], + [28.85761718750001, -2.446679687500009], + [28.891406250000017, -2.555566406250009], + [28.893945312500023, -2.635058593750003], + [28.921777343750023, -2.68203125], + [29.01435546875001, -2.72021484375], + [29.01416015625, -2.75830078125], + [29.0166015625, -2.799609375], + [29.064746093750017, -2.850781250000011], + [29.153222656250023, -2.955273437500011], + [29.224414062500017, -3.053515625], + [29.22607421875, -3.138671875], + [29.212304687500023, -3.28125], + [29.210058593750006, -3.36328125], + [29.217187500000023, -3.475683593750006], + [29.216796875, -3.684960937500009], + [29.211816406250023, -3.833789062500003], + [29.223242187500006, -3.910839843750011], + [29.331347656250017, -4.095410156250011], + [29.379199218750017, -4.299707031250009], + [29.403222656250023, -4.449316406250006], + [29.404199218750023, -4.496679687500006], + [29.367578125000023, -4.668847656250009], + [29.32568359375, -4.835644531250011], + [29.32343750000001, -4.898828125], + [29.3427734375, -4.983105468750011], + [29.42011718750001, -5.176171875], + [29.476464843750023, -5.316601562500011], + [29.503710937500017, -5.400976562500006], + [29.542382812500023, -5.499804687500003], + [29.594140625000023, -5.65078125], + [29.60703125, -5.72265625], + [29.59638671875001, -5.775976562500006], + [29.490820312500006, -5.965429687500006], + [29.480078125, -6.025], + [29.50625, -6.172070312500011], + [29.540820312500017, -6.313867187500009], + [29.590625, -6.394433593750009], + [29.70966796875001, -6.616894531250011], + [29.798144531250017, -6.69189453125], + [29.961816406250023, -6.803125], + [30.10625, -6.9150390625], + [30.16181640625001, -6.973046875], + [30.212695312500017, -7.037890625], + [30.31318359375001, -7.203710937500006], + [30.37451171875, -7.338671875], + [30.40673828125, -7.460644531250011], + [30.485644531250017, -7.627148437500011], + [30.558886718750017, -7.781933593750011], + [30.65380859375, -7.970898437500011], + [30.72089843750001, -8.104394531250009], + [30.75117187500001, -8.193652343750003], + [30.577929687500017, -8.220019531250003], + [30.327539062500023, -8.258203125], + [30.051367187500006, -8.30029296875], + [29.766210937500006, -8.34375], + [29.483789062500023, -8.386914062500011], + [29.215625, -8.427832031250006], + [28.972265625, -8.464941406250006], + [28.89814453125001, -8.485449218750006], + [28.934472656250023, -8.590234375], + [28.917773437500017, -8.700585937500009], + [28.869531250000023, -8.785839843750011], + [28.793554687500006, -8.891015625], + [28.7587890625, -8.9326171875], + [28.68125, -9.0146484375], + [28.616503906250017, -9.072265625], + [28.484277343750023, -9.16943359375], + [28.400683593750017, -9.224804687500011], + [28.400195312500017, -9.275], + [28.54052734375, -9.510058593750003], + [28.60419921875001, -9.678808593750006], + [28.63007812500001, -9.83125], + [28.62890625, -9.91875], + [28.62353515625, -10.098828125000011], + [28.6171875, -10.31298828125], + [28.607421875, -10.397363281250009], + [28.6455078125, -10.550195312500009], + [28.63886718750001, -10.669238281250003], + [28.544238281250017, -10.80234375], + [28.517968750000023, -10.933203125], + [28.4703125, -11.109570312500011], + [28.404199218750023, -11.354394531250009], + [28.357226562500017, -11.483007812500006], + [28.383398437500006, -11.566699218750003], + [28.407031250000017, -11.622851562500003], + [28.43183593750001, -11.698339843750006], + [28.482519531250006, -11.812109375], + [28.541601562500006, -11.879199218750003], + [28.574609375000023, -11.908105468750009], + [28.769433593750023, -12.05126953125], + [28.85, -12.120507812500009], + [28.973437500000017, -12.2578125], + [29.064355468750023, -12.348828125000011], + [29.191210937500017, -12.370214843750006], + [29.34375, -12.40478515625], + [29.427539062500017, -12.43125], + [29.48554687500001, -12.41845703125], + [29.5048828125, -12.386132812500009], + [29.502246093750017, -12.317578125000011], + [29.491992187500017, -12.266894531250003], + [29.508203125000023, -12.228222656250011], + [29.55976562500001, -12.202441406250003], + [29.691992187500006, -12.198339843750006], + [29.749609375, -12.1640625], + [29.79511718750001, -12.155468750000011], + [29.795312500000023, -12.30615234375], + [29.795507812500006, -12.450585937500009], + [29.79560546875001, -12.625878906250009], + [29.795800781250023, -12.827050781250009], + [29.79609375000001, -12.992089843750009], + [29.796289062500023, -13.16748046875], + [29.796484375, -13.369726562500006], + [29.795312500000023, -13.392773437500011], + [29.775195312500017, -13.438085937500006], + [29.72265625, -13.453808593750011], + [29.651757812500023, -13.414355468750003], + [29.64765625000001, -13.372949218750009], + [29.630273437500023, -13.298535156250011], + [29.59716796875, -13.260546875], + [29.55419921875, -13.248925781250009], + [29.4814453125, -13.26796875], + [29.3818359375, -13.322851562500006], + [29.253710937500017, -13.370800781250011], + [29.20185546875001, -13.398339843750009], + [29.111621093750017, -13.395117187500006], + [29.014257812500006, -13.368847656250011], + [28.942285156250023, -13.30712890625], + [28.921679687500017, -13.214648437500003], + [28.858789062500023, -13.119433593750003], + [28.77314453125001, -12.98193359375], + [28.730078125, -12.925488281250011], + [28.672949218750006, -12.861328125], + [28.61542968750001, -12.854101562500006], + [28.550878906250006, -12.836132812500011], + [28.51123046875, -12.7421875], + [28.474414062500017, -12.623339843750003], + [28.451464843750017, -12.577441406250003], + [28.412890625000017, -12.51806640625], + [28.357714843750017, -12.48203125], + [28.2373046875, -12.4345703125], + [28.06884765625, -12.3681640625], + [27.857421875, -12.284863281250011], + [27.7568359375, -12.280859375], + [27.644335937500017, -12.266796875000011], + [27.573828125, -12.22705078125], + [27.53339843750001, -12.1953125], + [27.48701171875001, -12.0796875], + [27.423632812500017, -11.944531250000011], + [27.238085937500017, -11.783496093750003], + [27.196386718750006, -11.605078125], + [27.1591796875, -11.579199218750006], + [27.09541015625001, -11.59375], + [27.04609375000001, -11.615917968750011], + [27.026660156250017, -11.663769531250011], + [26.976855468750017, -11.824609375], + [26.949609375000023, -11.898828125], + [26.93085937500001, -11.919335937500009], + [26.890429687500017, -11.943554687500011], + [26.824023437500017, -11.965234375], + [26.72968750000001, -11.975976562500009], + [26.59638671875001, -11.972070312500009], + [26.4296875, -11.947851562500006], + [26.339648437500017, -11.929882812500011], + [26.09638671875001, -11.903222656250009], + [26.025976562500006, -11.89013671875], + [25.926562500000017, -11.855273437500003], + [25.854882812500023, -11.820117187500003], + [25.61884765625001, -11.744140625], + [25.51191406250001, -11.75341796875], + [25.4599609375, -11.699804687500006], + [25.413378906250017, -11.673535156250011], + [25.349414062500017, -11.623046875], + [25.320703125000023, -11.553515625], + [25.282617187500023, -11.404980468750011], + [25.291796875000017, -11.325488281250003], + [25.3193359375, -11.236914062500006], + [25.28876953125001, -11.21240234375], + [25.245996093750023, -11.21240234375], + [25.184863281250017, -11.24296875], + [25.075976562500017, -11.260058593750003], + [24.876855468750023, -11.299121093750003], + [24.80634765625001, -11.321191406250009], + [24.728125, -11.337792968750009], + [24.668261718750017, -11.352929687500009], + [24.5185546875, -11.4384765625], + [24.466601562500017, -11.44765625], + [24.3779296875, -11.417089843750006], + [24.33515625000001, -11.371289062500011], + [24.3779296875, -11.3193359375], + [24.396289062500017, -11.255175781250003], + [24.36572265625, -11.1298828125], + [24.319921875, -11.07177734375], + [24.18720703125001, -11.029980468750011], + [24.136523437500017, -11.025976562500006], + [24.115136718750023, -10.955664062500006], + [24.078417968750017, -10.891503906250009], + [24.002734375000017, -10.879101562500011], + [23.96650390625001, -10.871777343750011], + [23.9287109375, -10.891503906250009], + [23.907324218750006, -10.943457031250006], + [23.901171875000017, -10.983203125], + [23.833886718750023, -11.013671875], + [23.696386718750006, -11.007617187500003], + [23.559960937500023, -10.978613281250006], + [23.463964843750006, -10.969335937500006], + [23.400195312500017, -10.976464843750009], + [23.15673828125, -11.074804687500006], + [23.076269531250006, -11.087890625], + [22.814746093750017, -11.080273437500011], + [22.66650390625, -11.059765625000011], + [22.56103515625, -11.055859375000011], + [22.486132812500017, -11.08671875], + [22.392968750000023, -11.159472656250003], + [22.31494140625, -11.198632812500009], + [22.27880859375, -11.194140625], + [22.256640625000017, -11.163671875], + [22.226171875, -11.121972656250009], + [22.216699218750023, -11.0126953125], + [22.17792968750001, -10.892285156250011], + [22.203515625000023, -10.829492187500009], + [22.28046875000001, -10.783984375], + [22.307031250000023, -10.691308593750009], + [22.283203125, -10.5515625], + [22.281640625000023, -10.453320312500011], + [22.30244140625001, -10.396679687500011], + [22.274511718750006, -10.259082031250003], + [22.19775390625, -10.040625], + [22.089160156250017, -9.86279296875], + [21.948632812500023, -9.7255859375], + [21.85664062500001, -9.59423828125], + [21.81318359375001, -9.46875], + [21.829492187500023, -9.16845703125], + [21.871875, -8.903515625000011], + [21.905371093750006, -8.693359375], + [21.895898437500023, -8.341113281250003], + [21.800878906250006, -8.111914062500006], + [21.780078125000017, -7.865429687500011], + [21.83359375, -7.601660156250006], + [21.841601562500017, -7.420996093750006], + [21.806054687500023, -7.32861328125], + [21.781640625000023, -7.314648437500011], + [21.751074218750006, -7.30546875], + [21.510839843750006, -7.296679687500003], + [21.190332031250023, -7.284960937500003], + [20.910937500000017, -7.281445312500011], + [20.607812500000023, -7.277734375], + [20.558398437500017, -7.244433593750003], + [20.53583984375001, -7.182812500000011], + [20.536914062500017, -7.121777343750011], + [20.598730468750006, -6.93515625], + [20.59003906250001, -6.919921875], + [20.482226562500017, -6.915820312500003], + [20.190039062500006, -6.9462890625], + [19.997460937500023, -6.976464843750009], + [19.87519531250001, -6.986328125], + [19.66035156250001, -7.037109375], + [19.527636718750017, -7.144433593750009], + [19.483789062500023, -7.279492187500011], + [19.487402343750006, -7.390722656250006], + [19.479882812500023, -7.47216796875], + [19.419335937500023, -7.557324218750011], + [19.371679687500006, -7.655078125], + [19.369921875000017, -7.70654296875], + [19.3408203125, -7.966601562500003], + [19.142675781250006, -8.00146484375], + [18.944433593750006, -8.00146484375], + [18.898339843750023, -7.998144531250006], + [18.653417968750006, -7.93603515625], + [18.56269531250001, -7.9359375], + [18.484667968750017, -7.968554687500003], + [18.334863281250023, -8.000292968750003], + [18.191503906250006, -8.023828125], + [18.047167968750017, -8.100781250000011], + [18.0087890625, -8.107617187500011], + [17.9130859375, -8.067675781250003], + [17.77880859375, -8.071386718750006], + [17.643359375000017, -8.090722656250009], + [17.57958984375, -8.099023437500009], + [17.536035156250023, -8.075878906250011], + [17.41132812500001, -7.881933593750006], + [17.245019531250023, -7.623339843750003], + [17.155078125000017, -7.461328125], + [17.12158203125, -7.419042968750006], + [17.063769531250017, -7.363085937500003], + [16.984765625000023, -7.257421875], + [16.952050781250023, -7.15703125], + [16.9658203125, -7.062109375], + [16.91943359375, -6.933984375], + [16.813085937500006, -6.772558593750006], + [16.742968750000017, -6.618457031250003], + [16.709375, -6.4716796875], + [16.700976562500017, -6.345996093750003], + [16.7177734375, -6.241406250000011], + [16.697265625, -6.164257812500011], + [16.639550781250023, -6.114550781250003], + [16.608007812500006, -6.0515625], + [16.58515625000001, -6.025292968750009], + [16.537109375, -5.9658203125], + [16.431445312500017, -5.900195312500003], + [16.315234375000017, -5.865625], + [16.06015625, -5.864941406250011], + [15.726953125000023, -5.863867187500006], + [15.425, -5.868847656250011], + [15.08935546875, -5.87451171875], + [14.749414062500023, -5.880078125000011], + [14.657910156250011, -5.888867187500011], + [14.398632812500011, -5.892675781250006], + [14.190820312500023, -5.8759765625], + [14.11376953125, -5.865136718750009], + [13.978515625, -5.857226562500003], + [13.764550781250023, -5.855175781250011], + [13.649023437500006, -5.86171875], + [13.371484375000023, -5.86181640625], + [13.346484375000017, -5.863378906250006], + [13.302636718750023, -5.8818359375], + [13.184375, -5.85625], + [13.068164062500017, -5.86484375], + [13.003320312500023, -5.836132812500011], + [12.86083984375, -5.854101562500006], + [12.791601562500006, -5.877734375], + [12.6806640625, -5.960839843750009], + [12.514550781250023, -6.004199218750003], + [12.452929687500017, -6.00048828125], + [12.41171875, -5.986328125], + [12.315039062500006, -5.8953125], + [12.240429687500011, -5.807324218750011], + [12.213671875000017, -5.758691406250009], + [12.255273437500023, -5.746484375], + [12.386035156250017, -5.727734375000011], + [12.484570312500011, -5.71875], + [12.503710937500017, -5.69580078125], + [12.518945312500023, -5.424609375], + [12.522363281250023, -5.14892578125], + [12.487402343750006, -5.112695312500009], + [12.453222656250006, -5.090625], + [12.451464843750017, -5.071484375000011], + [12.502734375000017, -5.036914062500003], + [12.573535156250017, -4.99658203125], + [12.59619140625, -4.978417968750009], + [12.6748046875, -4.905371093750006], + [12.8296875, -4.736621093750003], + [12.947460937500011, -4.6953125], + [13.057324218750011, -4.651074218750011], + [13.07275390625, -4.634765625], + [13.08740234375, -4.601953125], + [13.136621093750023, -4.604296875], + [13.15234375, -4.620312500000011], + [13.176464843750011, -4.655859375], + [13.219628906250023, -4.705859375], + [13.297265625000023, -4.765234375], + [13.375781250000017, -4.829394531250003], + [13.414941406250023, -4.83740234375], + [13.478417968750023, -4.804980468750003], + [13.551660156250023, -4.756738281250009], + [13.659570312500023, -4.721484375], + [13.685351562500017, -4.688671875000011], + [13.699414062500011, -4.618359375000011], + [13.707617187500006, -4.543261718750003], + [13.717089843750017, -4.454492187500009], + [13.739062500000017, -4.442480468750006], + [13.778027343750011, -4.433886718750003], + [13.849511718750023, -4.458886718750009], + [13.88232421875, -4.484667968750003], + [13.94091796875, -4.484667968750003], + [13.978417968750023, -4.461230468750003], + [14.046875, -4.41748046875], + [14.133886718750006, -4.4], + [14.22705078125, -4.358105468750011], + [14.316210937500017, -4.304101562500009], + [14.358300781250023, -4.299414062500006], + [14.402929687500006, -4.369726562500006], + [14.442773437500023, -4.419042968750006], + [14.449804687500006, -4.449511718750003], + [14.409960937500017, -4.508105468750003], + [14.365429687500011, -4.585546875], + [14.402929687500006, -4.681640625], + [14.411914062500017, -4.775], + [14.410742187500006, -4.83125], + [14.44091796875, -4.854101562500006], + [14.461621093750011, -4.864941406250011], + [14.493945312500017, -4.851660156250006], + [14.5576171875, -4.855761718750003], + [14.633984375000011, -4.885058593750003], + [14.707910156250023, -4.881738281250009], + [14.779296875, -4.845703125], + [14.912109375, -4.70556640625], + [15.10625, -4.461035156250006], + [15.2671875, -4.3076171875], + [15.394628906250006, -4.244921875], + [15.48095703125, -4.171777343750009], + [15.525976562500006, -4.087988281250006], + [15.60009765625, -4.030957031250011], + [15.754589843750011, -3.985546875000011], + [15.872460937500023, -3.934277343750011], + [15.990039062500017, -3.766210937500006], + [16.146777343750017, -3.464160156250003], + [16.190625, -3.194433593750006], + [16.217382812500006, -3.0302734375], + [16.20185546875001, -2.464746093750009], + [16.19160156250001, -2.279101562500003], + [16.21533203125, -2.177832031250006], + [16.27392578125, -2.108203125], + [16.43359375, -1.960839843750009], + [16.54072265625001, -1.840136718750003], + [16.622460937500023, -1.698925781250011], + [16.780078125000017, -1.376367187500009], + [16.84912109375, -1.2724609375], + [16.8798828125, -1.225878906250003], + [16.974707031250006, -1.139941406250003], + [17.10761718750001, -1.064453125], + [17.27880859375, -0.999609375], + [17.542871093750023, -0.775], + [17.752832031250023, -0.549023437500011], + [17.72412109375, -0.277539062500011], + [17.77314453125001, -0.052392578125009], + [17.8876953125, 0.234130859375], + [17.925195312500023, 0.537304687499997], + [17.8857421875, 0.856884765624997], + [17.902441406250006, 1.118066406249994], + [18.01171875, 1.422119140625], + [18.05781250000001, 1.534863281249997], + [18.072851562500006, 1.719384765624994], + [18.072167968750023, 2.01328125], + [18.21162109375001, 2.414941406249994], + [18.34345703125001, 2.655419921874994], + [18.49091796875001, 2.924414062499991], + [18.54707031250001, 3.087011718749991], + [18.622167968750006, 3.304052734374991], + [18.6103515625, 3.478417968749994], + [18.5966796875, 3.6787109375], + [18.633691406250023, 3.954296875], + [18.619921875000017, 4.116601562499994], + [18.567480468750006, 4.257568359375], + [18.594140625000023, 4.346240234374989], + [18.69990234375001, 4.382617187499989], + [18.83173828125001, 4.5234375], + [19.06855468750001, 4.891406249999989], + [19.32343750000001, 5.070751953124997], + [19.5009765625, 5.127490234374989], + [19.68603515625, 5.121386718749989], + [19.806542968750023, 5.089306640624997], + [19.8625, 5.031298828124989], + [20.002343750000023, 4.944726562499994], + [20.226367187500017, 4.829638671874989], + [20.3935546875, 4.686181640624994], + [20.48652343750001, 4.541552734374989], + [20.55810546875, 4.462695312499989], + [20.6474609375, 4.435644531249991], + [20.79296875, 4.447314453124989], + [20.95576171875001, 4.413134765624989], + [21.125585937500006, 4.332177734374994], + [21.229785156250017, 4.302197265624997], + [21.268359375000017, 4.323095703124991], + [21.350195312500006, 4.311376953124991], + [21.53759765625, 4.244824218749997], + [21.68701171875, 4.281396484374994], + [21.908203125, 4.25390625], + [22.422167968750017, 4.134960937499997], + [22.44970703125, 4.155126953124991], + [22.461816406250023, 4.159765625], + [22.505664062500017, 4.207666015624994], + [22.6171875, 4.445556640625], + [22.711718750000017, 4.591748046874997], + [22.755761718750023, 4.646679687499997], + [22.864550781250017, 4.723876953125], + [22.99287109375001, 4.743847656249997], + [23.11591796875001, 4.736914062499991], + [23.218847656250006, 4.702978515624991], + [23.312890625000023, 4.663525390624997], + [23.41718750000001, 4.663134765624989], + [23.52363281250001, 4.701269531249991], + [23.68183593750001, 4.770800781249989], + [23.848437500000017, 4.816357421874997], + [23.99169921875, 4.866259765624989], + [24.22773437500001, 4.953857421875], + [24.31982421875, 4.994140625], + [24.437109375, 5.009960937499997], + [24.765527343750023, 4.930078125], + [24.978417968750023, 4.982958984374989], + [25.065234375000017, 4.967431640624994], + [25.249316406250017, 5.024560546874994], + [25.283105468750023, 5.062695312499997], + [25.400195312500017, 5.255908203124989], + [25.52509765625001, 5.312109375], + [25.7138671875, 5.28369140625], + [25.819921875, 5.253710937499989], + [26.17353515625001, 5.171142578125], + [26.632617187500017, 5.085205078125], + [26.767578125, 5.071923828124994], + [26.822070312500017, 5.062402343749994], + [26.8701171875, 5.07568359375], + [27.020605468750006, 5.18437], + [27.071875, 5.199755859374989], + [27.11494140625001, 5.197851562499991], + [27.4033203125, 5.109179687499989] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Congo", + "iso_a2": "CG", + "iso_a3": "COG", + "iso_n3": "178", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [18.6103515625, 3.478417968749994], + [18.622167968750006, 3.304052734374991], + [18.54707031250001, 3.087011718749991], + [18.49091796875001, 2.924414062499991], + [18.34345703125001, 2.655419921874994], + [18.21162109375001, 2.414941406249994], + [18.072167968750023, 2.01328125], + [18.072851562500006, 1.719384765624994], + [18.05781250000001, 1.534863281249997], + [18.01171875, 1.422119140625], + [17.902441406250006, 1.118066406249994], + [17.8857421875, 0.856884765624997], + [17.925195312500023, 0.537304687499997], + [17.8876953125, 0.234130859375], + [17.77314453125001, -0.052392578125009], + [17.72412109375, -0.277539062500011], + [17.752832031250023, -0.549023437500011], + [17.542871093750023, -0.775], + [17.27880859375, -0.999609375], + [17.10761718750001, -1.064453125], + [16.974707031250006, -1.139941406250003], + [16.8798828125, -1.225878906250003], + [16.84912109375, -1.2724609375], + [16.780078125000017, -1.376367187500009], + [16.622460937500023, -1.698925781250011], + [16.54072265625001, -1.840136718750003], + [16.43359375, -1.960839843750009], + [16.27392578125, -2.108203125], + [16.21533203125, -2.177832031250006], + [16.19160156250001, -2.279101562500003], + [16.20185546875001, -2.464746093750009], + [16.217382812500006, -3.0302734375], + [16.190625, -3.194433593750006], + [16.146777343750017, -3.464160156250003], + [15.990039062500017, -3.766210937500006], + [15.872460937500023, -3.934277343750011], + [15.754589843750011, -3.985546875000011], + [15.60009765625, -4.030957031250011], + [15.525976562500006, -4.087988281250006], + [15.48095703125, -4.171777343750009], + [15.394628906250006, -4.244921875], + [15.2671875, -4.3076171875], + [15.10625, -4.461035156250006], + [14.912109375, -4.70556640625], + [14.779296875, -4.845703125], + [14.707910156250023, -4.881738281250009], + [14.633984375000011, -4.885058593750003], + [14.5576171875, -4.855761718750003], + [14.493945312500017, -4.851660156250006], + [14.461621093750011, -4.864941406250011], + [14.44091796875, -4.854101562500006], + [14.410742187500006, -4.83125], + [14.411914062500017, -4.775], + [14.402929687500006, -4.681640625], + [14.365429687500011, -4.585546875], + [14.409960937500017, -4.508105468750003], + [14.449804687500006, -4.449511718750003], + [14.442773437500023, -4.419042968750006], + [14.402929687500006, -4.369726562500006], + [14.358300781250023, -4.299414062500006], + [14.316210937500017, -4.304101562500009], + [14.22705078125, -4.358105468750011], + [14.133886718750006, -4.4], + [14.046875, -4.41748046875], + [13.978417968750023, -4.461230468750003], + [13.94091796875, -4.484667968750003], + [13.88232421875, -4.484667968750003], + [13.849511718750023, -4.458886718750009], + [13.778027343750011, -4.433886718750003], + [13.739062500000017, -4.442480468750006], + [13.717089843750017, -4.454492187500009], + [13.707617187500006, -4.543261718750003], + [13.699414062500011, -4.618359375000011], + [13.685351562500017, -4.688671875000011], + [13.659570312500023, -4.721484375], + [13.551660156250023, -4.756738281250009], + [13.478417968750023, -4.804980468750003], + [13.414941406250023, -4.83740234375], + [13.375781250000017, -4.829394531250003], + [13.297265625000023, -4.765234375], + [13.219628906250023, -4.705859375], + [13.176464843750011, -4.655859375], + [13.15234375, -4.620312500000011], + [13.136621093750023, -4.604296875], + [13.08740234375, -4.601953125], + [13.07275390625, -4.634765625], + [13.048046875000011, -4.619238281250006], + [12.971386718750011, -4.5517578125], + [12.881054687500011, -4.445117187500003], + [12.84814453125, -4.428906250000011], + [12.798242187500023, -4.430566406250009], + [12.719433593750011, -4.4697265625], + [12.641699218750006, -4.531152343750009], + [12.50146484375, -4.5875], + [12.384570312500017, -4.619140625], + [12.3740234375, -4.65771484375], + [12.3466796875, -4.72412109375], + [12.307910156250017, -4.765527343750009], + [12.204296875000011, -4.778613281250003], + [12.167089843750006, -4.837695312500003], + [12.077539062500023, -4.9521484375], + [12.018359375000017, -5.004296875], + [12.002734375000017, -4.98203125], + [11.966796875, -4.954394531250003], + [11.893261718750011, -4.86572265625], + [11.820703125000023, -4.75546875], + [11.80126953125, -4.705175781250006], + [11.780859375, -4.6765625], + [11.777539062500011, -4.565820312500009], + [11.668066406250006, -4.434277343750011], + [11.393847656250017, -4.200292968750006], + [11.364453125000011, -4.130566406250011], + [11.130175781250017, -3.916308593750003], + [11.190039062500006, -3.762011718750003], + [11.234472656250006, -3.690820312500009], + [11.288281250000011, -3.64111328125], + [11.504296875000023, -3.5203125], + [11.536816406250011, -3.525], + [11.685742187500011, -3.68203125], + [11.7333984375, -3.694531250000011], + [11.786425781250017, -3.690234375], + [11.84912109375, -3.696679687500009], + [11.8798828125, -3.665917968750009], + [11.884765625, -3.625390625], + [11.839453125, -3.580078125], + [11.832910156250023, -3.531445312500011], + [11.86474609375, -3.478613281250006], + [11.8828125, -3.420214843750003], + [11.929296875, -3.350976562500009], + [11.934179687500006, -3.318554687500011], + [11.885058593750017, -3.283203125], + [11.784375, -3.229101562500006], + [11.715429687500006, -3.176953125000011], + [11.6890625, -3.126953125], + [11.7080078125, -3.063085937500006], + [11.763476562500017, -3.01123046875], + [11.760156250000023, -2.983105468750011], + [11.711328125000023, -2.9365234375], + [11.675683593750023, -2.886621093750009], + [11.639062500000023, -2.855371093750009], + [11.537792968750011, -2.83671875], + [11.55712890625, -2.769628906250006], + [11.594531250000017, -2.670996093750006], + [11.603417968750023, -2.595410156250011], + [11.5751953125, -2.397070312500006], + [11.577734375, -2.3609375], + [11.60546875, -2.342578125], + [11.665917968750023, -2.364550781250003], + [11.726757812500011, -2.394726562500011], + [11.892382812500017, -2.351464843750009], + [11.950292968750006, -2.344824218750006], + [11.998242187500011, -2.3828125], + [12.064453125, -2.41259765625], + [12.446386718750006, -2.329980468750009], + [12.453808593750011, -2.24560546875], + [12.475683593750006, -2.169238281250003], + [12.478515625, -2.112011718750011], + [12.462597656250011, -2.075292968750006], + [12.44375, -2.047558593750011], + [12.432421875000017, -1.990332031250006], + [12.43212890625, -1.928906250000011], + [12.468652343750023, -1.9], + [12.590429687500006, -1.826855468750011], + [12.62841796875, -1.82958984375], + [12.713671875000017, -1.869433593750003], + [12.793554687500006, -1.931835937500011], + [12.864453125000011, -2.06328125], + [12.91357421875, -2.17626953125], + [12.991992187500017, -2.313378906250009], + [13.158593750000023, -2.369140625], + [13.357324218750023, -2.40478515625], + [13.464941406250006, -2.395410156250009], + [13.618554687500023, -2.278613281250003], + [13.70556640625, -2.1875], + [13.733789062500023, -2.138476562500003], + [13.784375, -2.163769531250011], + [13.841601562500017, -2.28369140625], + [13.878515625, -2.330175781250006], + [13.8876953125, -2.37451171875], + [13.86181640625, -2.429882812500011], + [13.886914062500011, -2.465429687500006], + [13.993847656250011, -2.490625], + [14.08740234375, -2.466894531250006], + [14.129785156250023, -2.41796875], + [14.199804687500006, -2.354199218750011], + [14.200390625000011, -2.300585937500003], + [14.162890625000017, -2.265527343750009], + [14.162890625000017, -2.217578125], + [14.201757812500006, -2.179882812500011], + [14.239648437500023, -2.076757812500006], + [14.25146484375, -2.00146484375], + [14.288378906250017, -1.953515625], + [14.358593750000011, -1.920214843750003], + [14.383984375000011, -1.890039062500009], + [14.423242187500023, -1.711523437500006], + [14.402929687500006, -1.64697265625], + [14.402929687500006, -1.593359375], + [14.447265625, -1.525097656250011], + [14.45556640625, -1.413183593750006], + [14.436914062500023, -1.229785156250003], + [14.424023437500011, -1.10390625], + [14.41064453125, -0.972070312500009], + [14.444921875, -0.798828125], + [14.480566406250006, -0.618359375000011], + [14.47412109375, -0.573437500000011], + [14.424707031250023, -0.518652343750006], + [14.36376953125, -0.468554687500003], + [14.206738281250011, -0.42734375], + [14.148339843750023, -0.361914062500006], + [14.102832031250017, -0.292382812500009], + [14.069433593750006, -0.270117187500006], + [13.898046875, -0.242578125], + [13.860058593750011, -0.203320312500011], + [13.87548828125, -0.0908203125], + [13.890625, 0.075292968749991], + [13.884570312500017, 0.190820312499994], + [13.915136718750006, 0.283984374999989], + [13.949609375000023, 0.353808593749989], + [14.025292968750023, 0.427734375], + [14.065527343750006, 0.514990234374991], + [14.0875, 0.536572265624997], + [14.23095703125, 0.551123046874991], + [14.283105468750023, 0.587451171874989], + [14.32421875, 0.62421875], + [14.341503906250011, 0.673828125], + [14.390625, 0.755712890624991], + [14.434472656250023, 0.811474609374997], + [14.439160156250011, 0.84912109375], + [14.429882812500011, 0.901464843749991], + [14.386425781250011, 1.004443359374989], + [14.33447265625, 1.090234375], + [14.303027343750017, 1.120849609375], + [14.23974609375, 1.322558593749989], + [14.180859375000011, 1.370214843749991], + [14.066210937500017, 1.395898437499994], + [13.851367187500017, 1.41875], + [13.72119140625, 1.382275390624997], + [13.523339843750023, 1.314599609374994], + [13.372363281250017, 1.267773437499997], + [13.274121093750011, 1.241015624999989], + [13.21630859375, 1.2484375], + [13.190136718750011, 1.279248046874997], + [13.228320312500017, 1.305419921875], + [13.247363281250017, 1.36669921875], + [13.222753906250006, 1.45458984375], + [13.1845703125, 1.535058593749994], + [13.162695312500006, 1.648095703124994], + [13.172167968750017, 1.78857421875], + [13.20947265625, 1.92041015625], + [13.288671875, 2.091699218749994], + [13.293554687500006, 2.161572265624997], + [13.533496093750017, 2.159521484374991], + [13.772753906250017, 2.157421875], + [14.034375, 2.158886718749997], + [14.287011718750023, 2.160351562499997], + [14.484082031250011, 2.154736328124997], + [14.578906250000017, 2.199121093749994], + [14.669140625000011, 2.132080078125], + [14.713281250000023, 2.117138671874997], + [14.728320312500017, 2.122412109374991], + [14.762890625000011, 2.0751953125], + [14.875, 2.08046875], + [14.892773437500011, 2.0693359375], + [14.902441406250006, 2.012304687499991], + [15.006445312500006, 2.013769531249991], + [15.057812500000011, 2.000878906249994], + [15.099609375, 2.00234375], + [15.160058593750023, 2.035595703124997], + [15.203515625000023, 2.024462890624989], + [15.282421875000011, 1.981738281249989], + [15.338769531250023, 1.944726562499994], + [15.41748046875, 1.956738281249997], + [15.600292968750011, 1.950390625], + [15.741601562500023, 1.914990234374997], + [15.881640625000017, 1.816601562499997], + [15.975195312500006, 1.760009765625], + [16.059375, 1.676220703124997], + [16.09033203125, 1.691259765624991], + [16.119531250000023, 1.714111328125], + [16.136132812500023, 1.72421875], + [16.13496093750001, 1.795947265624989], + [16.087890625, 1.918066406249991], + [16.069628906250017, 2.021679687499997], + [16.080078125, 2.106787109374991], + [16.11572265625, 2.167822265624991], + [16.176562500000017, 2.204785156249997], + [16.1826171875, 2.262451171875], + [16.183398437500017, 2.270068359374989], + [16.251757812500017, 2.406787109374989], + [16.319628906250017, 2.542773437499989], + [16.401269531250023, 2.701025390624991], + [16.468554687500017, 2.831738281249997], + [16.459570312500006, 2.896533203124989], + [16.466210937500023, 2.993212890624989], + [16.480078125, 3.100976562499994], + [16.47675781250001, 3.165136718749991], + [16.49628906250001, 3.208837890624991], + [16.543066406250006, 3.36953125], + [16.570410156250006, 3.463085937499997], + [16.610742187500023, 3.50537109375], + [16.67333984375, 3.535205078124989], + [16.76435546875001, 3.536279296874994], + [17.002539062500006, 3.556689453124989], + [17.224707031250006, 3.598437499999989], + [17.2984375, 3.6171875], + [17.43798828125, 3.684619140624989], + [17.491601562500023, 3.687304687499989], + [17.537695312500006, 3.66162109375], + [17.806640625, 3.584179687499997], + [17.88037109375, 3.553857421874994], + [17.907128906250023, 3.558398437499989], + [17.94794921875001, 3.5517578125], + [18.0107421875, 3.550830078124989], + [18.072265625, 3.560302734375], + [18.111328125, 3.551074218749989], + [18.160937500000017, 3.499804687499989], + [18.193945312500006, 3.505419921874989], + [18.237109375000017, 3.542675781249997], + [18.318164062500017, 3.580810546875], + [18.474414062500017, 3.622998046874997], + [18.499804687500017, 3.604101562499991], + [18.553808593750006, 3.510205078124997], + [18.6103515625, 3.478417968749994] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "Cook Is.", + "iso_a2": "CK", + "iso_a3": "COK", + "iso_n3": "184", + "continent": "Oceania" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-159.74052734375, -21.24921875000001], + [-159.77255859375, -21.24951171875], + [-159.8130859375, -21.24208984375001], + [-159.839599609375, -21.238085937500003], + [-159.84248046875, -21.229101562500006], + [-159.83203125, -21.200488281250003], + [-159.810595703125, -21.18642578125001], + [-159.768359375, -21.1884765625], + [-159.739501953125, -21.208105468750006], + [-159.736865234375, -21.240625], + [-159.74052734375, -21.24921875000001] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Colombia", + "iso_a2": "CO", + "iso_a3": "COL", + "iso_n3": "170", + "continent": "South America" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-78.11372070312495, 2.541748046875028], + [-78.14082031249995, 2.519677734374966], + [-78.19248046875, 2.55927734375004], + [-78.21010742187497, 2.609179687499989], + [-78.17841796874998, 2.64633789062502], + [-78.13764648437495, 2.634179687500023], + [-78.119140625, 2.60361328125002], + [-78.11372070312495, 2.541748046875028] + ] + ], + [ + [ + [-71.26210937499997, 12.335302734375034], + [-71.155029296875, 12.164160156249977], + [-71.13730468750003, 12.04633789062504], + [-71.2841796875, 11.918310546874991], + [-71.31972656249997, 11.861914062500048], + [-71.35556640624998, 11.849755859374966], + [-71.40019531249993, 11.823535156250045], + [-71.53608398437498, 11.774072265624994], + [-71.71948242187497, 11.726855468749974], + [-71.95810546875, 11.66640625], + [-72.01230468750003, 11.601953125000023], + [-72.24848632812501, 11.196435546875009], + [-72.44609374999993, 11.114257812500043], + [-72.51801757812493, 11.053906250000011], + [-72.57226562499997, 10.977148437500006], + [-72.690087890625, 10.835839843749994], + [-72.73916015624997, 10.72719726562498], + [-72.86933593750001, 10.49125976562496], + [-72.94038085937501, 10.195751953124969], + [-72.9673828125, 10.029736328124997], + [-73.00654296874998, 9.789160156250006], + [-73.06406249999998, 9.668212890624972], + [-73.141259765625, 9.554638671875011], + [-73.22426757812502, 9.443603515625043], + [-73.295654296875, 9.322021484375057], + [-73.35634765625002, 9.226855468750031], + [-73.36621093749997, 9.194140625000017], + [-73.33671875000002, 9.167919921875011], + [-73.19316406249999, 9.194140625000017], + [-73.13671874999994, 9.222802734374994], + [-73.05839843749999, 9.259570312500031], + [-73.00927734375, 9.239941406250026], + [-72.96015624999995, 9.13515625], + [-72.90444335937497, 9.1220703125], + [-72.85209960937496, 9.13515625], + [-72.79638671874997, 9.108984375], + [-72.72553710937493, 8.848291015624994], + [-72.66542968749994, 8.62758789062498], + [-72.525732421875, 8.48969726562504], + [-72.41655273437496, 8.381982421875037], + [-72.39033203124995, 8.287060546874969], + [-72.36416015624994, 8.152783203124969], + [-72.35761718749995, 8.087304687500037], + [-72.39169921874995, 8.047705078124963], + [-72.44604492187503, 7.966113281250045], + [-72.4595703125, 7.809863281250003], + [-72.46889648437497, 7.757958984374994], + [-72.47895507812498, 7.613232421874997], + [-72.47197265624996, 7.524267578124991], + [-72.44296875, 7.454882812499989], + [-72.39462890625003, 7.41508789062496], + [-72.29633789062498, 7.394531250000028], + [-72.20771484374995, 7.37026367187498], + [-72.15668945312495, 7.249707031250011], + [-72.08427734374993, 7.09687], + [-72.00664062499993, 7.032617187500023], + [-71.89267578124998, 6.99033203125002], + [-71.81127929687503, 7.005810546874983], + [-71.62089843749996, 7.032910156249997], + [-71.45712890624998, 7.026367187499986], + [-71.21782226562499, 6.985205078125048], + [-71.12861328124993, 6.98671875], + [-71.01328124999998, 6.994433593749974], + [-70.810693359375, 7.07758789062504], + [-70.73715820312503, 7.090039062499997], + [-70.65507812500002, 7.082763671875028], + [-70.535546875, 7.040527343750028], + [-70.47065429687501, 7.007128906249974], + [-70.3875, 6.972607421875054], + [-70.26611328125, 6.947949218749997], + [-70.188134765625, 6.952050781250037], + [-70.12919921874999, 6.95361328125], + [-70.09501953124996, 6.937939453125011], + [-69.90419921875, 6.700244140624989], + [-69.73896484374998, 6.494384765624972], + [-69.59482421875, 6.321484375000011], + [-69.43925781249993, 6.134912109375009], + [-69.42714843749997, 6.123974609374997], + [-69.357080078125, 6.147998046875017], + [-69.31083984374999, 6.137597656250023], + [-69.26816406249998, 6.099707031250034], + [-69.19453125000001, 6.11533203125002], + [-69.08994140625, 6.184375], + [-68.93720703124998, 6.198193359375026], + [-68.73647460937494, 6.156787109375031], + [-68.47177734375, 6.156542968749974], + [-68.14306640625003, 6.197509765624972], + [-67.9388671875, 6.241943359375057], + [-67.85917968749999, 6.289892578124963], + [-67.7271484375, 6.284960937500031], + [-67.56806640624993, 6.24179687500002], + [-67.48198242187499, 6.18027343750002], + [-67.47158203125, 6.119775390625037], + [-67.43935546875, 6.025537109375023], + [-67.47387695312503, 5.929980468750003], + [-67.57519531249997, 5.833105468749991], + [-67.63134765624994, 5.709375], + [-67.64228515624995, 5.558789062499969], + [-67.69462890624996, 5.447509765625028], + [-67.78842773437498, 5.375488281250014], + [-67.82490234374995, 5.270458984375026], + [-67.80419921875, 5.132519531249983], + [-67.814306640625, 4.930810546875023], + [-67.85527343750002, 4.665478515625054], + [-67.85527343750002, 4.506884765624989], + [-67.814306640625, 4.455078125], + [-67.79541015624997, 4.380712890625034], + [-67.79863281250002, 4.283886718750026], + [-67.78320312499997, 4.198242187499986], + [-67.73232421875, 4.086523437499963], + [-67.66162109375, 3.864257812499986], + [-67.60253906250003, 3.768798828124986], + [-67.55112304687503, 3.733837890624969], + [-67.49868164062502, 3.691113281249969], + [-67.34770507812499, 3.463769531250009], + [-67.3111328125, 3.41586914062502], + [-67.32216796875002, 3.373974609375011], + [-67.33627929687498, 3.34262695312502], + [-67.35361328125003, 3.322656250000037], + [-67.51484374999993, 3.187255859374986], + [-67.83476562499999, 2.892822265625043], + [-67.86123046874997, 2.855322265625048], + [-67.85908203124998, 2.793603515624994], + [-67.76645507812503, 2.833300781250003], + [-67.66723632812497, 2.800195312500009], + [-67.61870117187496, 2.793603515624994], + [-67.5966796875, 2.769335937500031], + [-67.56801757812502, 2.689941406250014], + [-67.53496093749993, 2.6767578125], + [-67.48642578125, 2.643652343750006], + [-67.39160156249994, 2.559912109374991], + [-67.31225585937494, 2.471679687500043], + [-67.25273437499999, 2.429443359374972], + [-67.21083984375, 2.390136718750043], + [-67.19760742187495, 2.332763671874986], + [-67.215234375, 2.275488281250048], + [-67.16547851562498, 2.142578124999972], + [-67.13144531249998, 2.101269531249997], + [-67.11381835937493, 2.050585937499974], + [-67.13144531249998, 1.99985351562502], + [-67.08955078124998, 1.94033203124998], + [-67.04389648437498, 1.823193359375011], + [-66.988134765625, 1.68017578125], + [-66.98154296875, 1.60078125], + [-66.95834960937498, 1.564208984375], + [-66.93110351562493, 1.458007812500043], + [-66.88447265624993, 1.358251953124963], + [-66.89550781249997, 1.289892578124977], + [-66.87602539062499, 1.223046875000037], + [-67.06523437499999, 1.178369140624994], + [-67.082275390625, 1.185400390625006], + [-67.09365234375, 1.21000976562496], + [-67.08828124999997, 1.400585937499969], + [-67.09013671874999, 1.615576171874991], + [-67.11923828124998, 1.703613281249986], + [-67.20581054687503, 1.844824218749977], + [-67.32060546874996, 2.03208007812502], + [-67.35195312499997, 2.085839843750051], + [-67.40043945312499, 2.116699218750028], + [-67.45776367187503, 2.121142578125045], + [-67.49965820312494, 2.107910156250014], + [-67.55605468749997, 2.072998046875], + [-67.60922851562498, 2.035058593750009], + [-67.71186523437501, 1.922119140625], + [-67.815087890625, 1.790087890625017], + [-67.87553710937496, 1.760595703125048], + [-67.93623046874998, 1.748486328124969], + [-67.98974609374994, 1.752539062500006], + [-68.03286132812494, 1.78803710937504], + [-68.07705078124997, 1.860107421874972], + [-68.1302734375, 1.955761718750011], + [-68.19379882812495, 1.987011718749983], + [-68.21835937499998, 1.957617187500034], + [-68.23945312499993, 1.901367187500028], + [-68.25595703125, 1.845507812500017], + [-68.21328125000002, 1.774560546875051], + [-68.17656249999999, 1.719824218749991], + [-68.23955078124996, 1.721679687500014], + [-68.44345703125, 1.721582031249994], + [-68.67846679687503, 1.721484374999974], + [-68.91318359374998, 1.721386718750054], + [-69.12426757812497, 1.721289062500034], + [-69.31972656250002, 1.721240234375017], + [-69.39433593749993, 1.725781249999969], + [-69.47016601562493, 1.757910156250034], + [-69.54291992187501, 1.773242187500045], + [-69.58125, 1.770751953124986], + [-69.650048828125, 1.739453125], + [-69.73959960937503, 1.734863281250043], + [-69.79995117187497, 1.705175781250034], + [-69.84858398437493, 1.708740234375043], + [-69.84946289062503, 1.54389648437504], + [-69.85078124999993, 1.308789062500011], + [-69.85214843750003, 1.05952148437504], + [-69.79814453124996, 1.078417968749974], + [-69.751318359375, 1.076611328125054], + [-69.71699218749995, 1.059082031250028], + [-69.62089843749999, 1.073242187499986], + [-69.56757812499998, 1.065771484374977], + [-69.51713867187499, 1.059472656250023], + [-69.47031249999995, 1.058593750000028], + [-69.44150390624995, 1.038818359374986], + [-69.40278320312498, 1.042382812500009], + [-69.36137695312496, 1.064013671874974], + [-69.31181640624999, 1.050488281249969], + [-69.25869140625002, 1.015380859375014], + [-69.22446289062498, 0.963134765625028], + [-69.19384765624994, 0.898291015624963], + [-69.16323242187502, 0.8640625], + [-69.16503906250003, 0.801953125000054], + [-69.16596679687495, 0.753320312500009], + [-69.17675781250003, 0.712841796875011], + [-69.16323242187502, 0.686669921875009], + [-69.15332031249994, 0.65878906250002], + [-69.15605468749999, 0.642529296874997], + [-69.174072265625, 0.635351562500034], + [-69.21279296875, 0.629931640625003], + [-69.25419921874999, 0.625439453124969], + [-69.28300781249999, 0.627246093749989], + [-69.30551757812495, 0.652441406249963], + [-69.32714843750003, 0.655175781249994], + [-69.35864257812494, 0.651562499999969], + [-69.3919921875, 0.66689453124998], + [-69.42080078125, 0.698388671875009], + [-69.47211914062498, 0.72993164062504], + [-69.52705078124998, 0.716406250000034], + [-69.56484374999994, 0.700195312500014], + [-69.60361328125003, 0.680371093749969], + [-69.63872070312499, 0.659667968750014], + [-69.67382812499994, 0.665087890624974], + [-69.71889648437497, 0.649804687499966], + [-69.75673828124997, 0.62636718749998], + [-69.80712890625, 0.607470703125045], + [-69.862060546875, 0.598486328124991], + [-69.92509765624999, 0.589404296875003], + [-69.98544921875, 0.585839843749994], + [-70.05390624999993, 0.578613281250028], + [-70.05791015624993, 0.44736328125002], + [-70.06572265624993, 0.189355468750037], + [-70.07094726562502, 0.018554687499972], + [-70.07050781249993, -0.13886718750004], + [-70.04404296874995, -0.196191406249994], + [-69.92275390624994, -0.317480468750006], + [-69.82792968749999, -0.381347656249972], + [-69.74746093750002, -0.452539062499994], + [-69.66748046874997, -0.482421874999957], + [-69.63398437500001, -0.50927734375], + [-69.61191406250003, -0.553320312500006], + [-69.60087890625002, -0.599609375000028], + [-69.59204101562497, -0.63935546875004], + [-69.60087890625002, -0.68125], + [-69.62070312499995, -0.72089843750004], + [-69.61191406250003, -0.762792968749963], + [-69.58325195312497, -0.795898437499957], + [-69.57441406249995, -0.837792968749966], + [-69.55458984375, -0.877441406249957], + [-69.54355468749995, -0.917187499999969], + [-69.519287109375, -0.945800781250028], + [-69.48842773437502, -0.965722656250009], + [-69.44873046875, -0.998730468749983], + [-69.4443359375, -1.02958984374996], + [-69.44873046875, -1.064941406249972], + [-69.44912109375, -1.091601562499974], + [-69.41142578124996, -1.152246093749994], + [-69.40024414062498, -1.194921874999977], + [-69.41787109375002, -1.24570312500002], + [-69.43491210937503, -1.421679687499989], + [-69.47861328124998, -1.621972656250023], + [-69.50644531249995, -1.774902343750014], + [-69.55185546874998, -2.02421875], + [-69.60468749999998, -2.314257812500017], + [-69.66904296875003, -2.667675781249997], + [-69.73261718749993, -3.016699218749949], + [-69.79414062499995, -3.354589843749963], + [-69.849755859375, -3.659863281249983], + [-69.91103515624997, -3.996582031250014], + [-69.94819335937498, -4.200585937500009], + [-69.96591796875003, -4.2359375], + [-70.0171875, -4.162011718749966], + [-70.09477539062499, -4.092187500000037], + [-70.16752929687499, -4.050195312500009], + [-70.19838867187497, -3.995117187499972], + [-70.24028320312496, -3.882714843749994], + [-70.2984375, -3.844238281249972], + [-70.33950195312502, -3.814355468750009], + [-70.37919921874993, -3.81875], + [-70.42109374999995, -3.849609375], + [-70.48583984375, -3.869335937500026], + [-70.52968749999997, -3.866406249999955], + [-70.70620117187494, -3.788964843749994], + [-70.73510742187497, -3.781542968749989], + [-70.62167968749995, -3.604589843749991], + [-70.41899414062496, -3.28828125000004], + [-70.29013671875, -3.087304687500037], + [-70.14707031249998, -2.864062500000031], + [-70.07402343749993, -2.750195312500011], + [-70.06445312499994, -2.73076171874996], + [-70.06474609375002, -2.701660156249986], + [-70.09584960937494, -2.658203125000014], + [-70.16474609374995, -2.639843750000011], + [-70.24443359375002, -2.606542968749977], + [-70.29462890624995, -2.552539062499989], + [-70.36416015625, -2.529296874999957], + [-70.41821289062497, -2.49072265625], + [-70.51679687499998, -2.45312], + [-70.57587890624995, -2.418261718749989], + [-70.64799804687499, -2.405761718750014], + [-70.70537109374996, -2.341992187499983], + [-70.91455078125003, -2.218554687499974], + [-70.96855468750002, -2.206835937499989], + [-71.02729492187498, -2.225781250000026], + [-71.11337890625003, -2.245410156250031], + [-71.19638671874998, -2.313085937499963], + [-71.30009765624996, -2.334863281249952], + [-71.39697265625, -2.334082031249977], + [-71.44746093749998, -2.29375], + [-71.49609375000003, -2.27919921874998], + [-71.55947265624997, -2.224218749999977], + [-71.67148437499995, -2.182128906250014], + [-71.75253906249995, -2.15273437499998], + [-71.80273437499997, -2.166308593749989], + [-71.86728515624998, -2.227734374999983], + [-71.932470703125, -2.288671874999963], + [-71.98427734375, -2.326562499999952], + [-72.05380859374995, -2.324609375], + [-72.13681640624998, -2.38066406249996], + [-72.21845703125001, -2.400488281250006], + [-72.30073242187498, -2.40927734375002], + [-72.39560546874995, -2.428906250000026], + [-72.50068359374995, -2.395019531249957], + [-72.58671874999999, -2.365136718749994], + [-72.62534179687495, -2.351660156250006], + [-72.66015625000003, -2.361035156249955], + [-72.71416015625002, -2.3921875], + [-72.81123046874998, -2.40546875000004], + [-72.88715820312501, -2.408496093749946], + [-72.94111328124998, -2.394042968750028], + [-72.9896484375, -2.33974609374998], + [-73.06816406250002, -2.312011718750014], + [-73.15449218749993, -2.278222656249966], + [-73.17265624999999, -2.208398437500037], + [-73.16020507812493, -2.156347656250006], + [-73.12651367187499, -2.081054687500028], + [-73.14521484374998, -2.003320312500009], + [-73.181494140625, -1.88037109375], + [-73.19697265624995, -1.830273437500011], + [-73.22397460937495, -1.787695312499949], + [-73.266455078125, -1.772265625], + [-73.34951171874997, -1.783886718749969], + [-73.44028320312498, -1.737402343750006], + [-73.49628906249993, -1.69306640625004], + [-73.52524414062498, -1.638867187500011], + [-73.49433593749998, -1.536621093749957], + [-73.52138671874997, -1.449707031250014], + [-73.57548828124999, -1.401367187500028], + [-73.61025390624997, -1.316406249999943], + [-73.66430664062497, -1.248828124999946], + [-73.73574218749994, -1.214160156249989], + [-73.80717773437493, -1.217968749999969], + [-73.86318359374997, -1.19667968749998], + [-73.92695312500001, -1.125195312499983], + [-73.98681640625003, -1.098144531249986], + [-74.05439453124995, -1.028613281250031], + [-74.18076171875, -0.997753906249955], + [-74.24638671874999, -0.970605468750023], + [-74.28388671874998, -0.927832031250006], + [-74.33442382812498, -0.85087890624996], + [-74.32861328125003, -0.808398437500017], + [-74.35312, -0.766601562500028], + [-74.37490234374997, -0.691406249999986], + [-74.41787109375, -0.580664062499977], + [-74.46518554687498, -0.517675781250034], + [-74.51386718749993, -0.470117187500023], + [-74.555078125, -0.429882812499997], + [-74.61635742187494, -0.370019531249966], + [-74.691650390625, -0.335253906249989], + [-74.75537109375003, -0.298632812499989], + [-74.78046874999998, -0.24453125], + [-74.80175781249997, -0.200097656249994], + [-74.8375, -0.203320312500026], + [-74.88881835937494, -0.199414062500026], + [-74.9453125, -0.188183593749955], + [-75.00498046874998, -0.155859375000034], + [-75.05468749999997, -0.116699218749957], + [-75.13837890624998, -0.050488281249969], + [-75.18408203124997, -0.041748046874972], + [-75.22460937499997, -0.041748046874972], + [-75.28447265624999, -0.10654296875002], + [-75.46396484374995, -0.038427734375006], + [-75.61733398437494, 0.062890625000037], + [-75.77666015624999, 0.08925781249998], + [-75.87978515624994, 0.150976562500034], + [-75.97485351562494, 0.24775390625004], + [-76.02617187500002, 0.31308593750002], + [-76.06791992187499, 0.345556640624977], + [-76.27060546874998, 0.439404296874997], + [-76.31103515624997, 0.448486328124986], + [-76.38818359374994, 0.404980468749997], + [-76.41337890624993, 0.378857421875011], + [-76.41796874999997, 0.303906250000011], + [-76.42729492187502, 0.261230468750028], + [-76.49462890624997, 0.23544921875002], + [-76.60302734375003, 0.240966796874986], + [-76.67851562499996, 0.26816406250002], + [-76.72900390625003, 0.272119140625023], + [-76.73930664062499, 0.250830078125034], + [-76.767724609375, 0.24165039062504], + [-76.82934570312494, 0.24775390625004], + [-76.92011718749995, 0.268505859374997], + [-77.00244140624994, 0.296240234374963], + [-77.11411132812498, 0.355078124999963], + [-77.16572265625001, 0.347753906249977], + [-77.29267578124993, 0.360400390624974], + [-77.396337890625, 0.393896484374963], + [-77.42275390624997, 0.42485351562496], + [-77.46767578124997, 0.636523437500017], + [-77.48139648437501, 0.651171874999974], + [-77.52612304687497, 0.660351562499983], + [-77.601318359375, 0.689501953124974], + [-77.64863281249998, 0.7236328125], + [-77.673193359375, 0.782226562500028], + [-77.702880859375, 0.837841796874997], + [-77.82954101562495, 0.825390625000026], + [-78.03701171874997, 0.89873046874996], + [-78.1806640625, 0.968554687499974], + [-78.31210937499995, 1.046093750000054], + [-78.51152343749999, 1.198828125], + [-78.58764648437497, 1.236669921874977], + [-78.681640625, 1.283447265625], + [-78.73710937499993, 1.35869140624996], + [-78.82885742187497, 1.434667968749991], + [-78.85966796874996, 1.455371093750031], + [-78.88847656249996, 1.524072265624994], + [-79.02543945312499, 1.623681640625037], + [-78.95766601562502, 1.752197265625014], + [-78.79296874999994, 1.848730468749963], + [-78.576904296875, 1.773779296874977], + [-78.55043945312502, 1.923632812500045], + [-78.62861328124995, 2.05625], + [-78.617041015625, 2.306787109375023], + [-78.59169921875, 2.356640624999969], + [-78.53471679687502, 2.423681640625034], + [-78.46044921874997, 2.470068359374991], + [-78.41689453125, 2.483496093749963], + [-78.34287109375, 2.460546875], + [-78.296142578125, 2.510498046875057], + [-78.12001953125, 2.488183593750037], + [-78.06665039062494, 2.509130859375034], + [-78.03017578125, 2.54306640625002], + [-77.98720703125002, 2.56899414062498], + [-77.93227539062502, 2.629248046874991], + [-77.90078125, 2.698828124999963], + [-77.87451171874997, 2.72587890624996], + [-77.81357421875, 2.716357421874974], + [-77.807958984375, 2.746386718749974], + [-77.77666015624993, 2.78730468750004], + [-77.67001953124998, 2.87885742187504], + [-77.67109374999993, 2.919335937500037], + [-77.70097656249999, 3.007568359374972], + [-77.69365234374999, 3.039941406249994], + [-77.63203124999995, 3.05117187499998], + [-77.55913085937493, 3.075976562499974], + [-77.52026367187503, 3.160253906249991], + [-77.47221679687499, 3.233789062499966], + [-77.41713867187497, 3.341796875000028], + [-77.35654296874998, 3.348583984374997], + [-77.32441406250001, 3.474755859375037], + [-77.24277343749998, 3.585351562500009], + [-77.076806640625, 3.913281250000026], + [-77.12685546875, 3.906054687499974], + [-77.1666015625, 3.862255859375011], + [-77.21201171875, 3.867431640625], + [-77.26352539062503, 3.893212890625023], + [-77.24838867187498, 4.040966796875011], + [-77.27802734374995, 4.058496093750023], + [-77.35820312499996, 3.944726562500037], + [-77.42729492187499, 4.06044921874998], + [-77.43354492187493, 4.130957031250048], + [-77.40449218749998, 4.200781249999977], + [-77.40874023437496, 4.24775390625004], + [-77.52070312499993, 4.212792968750023], + [-77.51552734374994, 4.256298828124997], + [-77.44584960937496, 4.301025390625057], + [-77.41425781250001, 4.34760742187504], + [-77.35351562499997, 4.398291015624977], + [-77.32832031249998, 4.475], + [-77.31367187499995, 4.59384765625002], + [-77.28632812499995, 4.72172851562496], + [-77.30654296875, 4.78466796875], + [-77.33945312499995, 4.838525390625051], + [-77.36674804687502, 5.076562500000051], + [-77.35917968749999, 5.215185546875048], + [-77.373291015625, 5.323974609375], + [-77.40175781249994, 5.416162109375037], + [-77.53442382812497, 5.537109374999986], + [-77.32460937499994, 5.675634765624963], + [-77.24926757812497, 5.780175781250037], + [-77.34467773437495, 5.995361328125], + [-77.46943359374995, 6.176757812500014], + [-77.473046875, 6.285644531249986], + [-77.44008789062494, 6.271728515625], + [-77.39824218749993, 6.275], + [-77.35986328125003, 6.504492187499991], + [-77.368798828125, 6.575585937499994], + [-77.43886718749997, 6.690332031250009], + [-77.52597656250003, 6.693115234375043], + [-77.6021484375, 6.837304687500023], + [-77.64584960937503, 6.869628906250028], + [-77.68095703124999, 6.960400390625054], + [-77.80371093749994, 7.137255859375017], + [-77.90117187499999, 7.229345703125048], + [-77.82832031249998, 7.442822265625011], + [-77.76469726562499, 7.483691406249989], + [-77.74389648437503, 7.536962890625006], + [-77.76875, 7.668066406249977], + [-77.76191406249995, 7.698828125000034], + [-77.746923828125, 7.711865234375026], + [-77.73203125, 7.710937500000014], + [-77.70634765625002, 7.691210937499989], + [-77.65859374999997, 7.634619140625006], + [-77.61860351562498, 7.564550781250034], + [-77.58657226562494, 7.543066406250006], + [-77.53828124999995, 7.56625976562502], + [-77.35078124999995, 7.705859375000045], + [-77.36274414062498, 7.74907226562496], + [-77.34560546874997, 7.83652343750002], + [-77.282958984375, 7.90815429687504], + [-77.21596679687502, 7.932519531250037], + [-77.19599609374995, 7.972460937500003], + [-77.2123046875, 8.033886718749997], + [-77.28261718750002, 8.187060546875017], + [-77.34550781249993, 8.269531250000043], + [-77.385888671875, 8.351660156249977], + [-77.40727539062502, 8.427246093750014], + [-77.47851562499994, 8.498437500000037], + [-77.44833984375003, 8.565869140625011], + [-77.39306640624994, 8.644677734374994], + [-77.37421874999993, 8.65830078125002], + [-77.34414062500002, 8.636718749999972], + [-77.26157226562498, 8.49370117187496], + [-77.13012695312503, 8.400585937499997], + [-76.99228515625, 8.250341796875034], + [-76.93583984374996, 8.146826171874991], + [-76.89096679687498, 8.127978515624974], + [-76.85185546875002, 8.09047851562498], + [-76.86909179687495, 8.062695312499997], + [-76.91220703124995, 8.033398437499983], + [-76.924658203125, 7.973193359374974], + [-76.89663085937497, 7.939453125000028], + [-76.86689453124995, 7.91796875], + [-76.78657226562493, 7.931591796875026], + [-76.742333984375, 8.002148437500011], + [-76.7720703125, 8.310546875000043], + [-76.81860351562497, 8.464697265625006], + [-76.87221679687497, 8.512744140625031], + [-76.92045898437496, 8.573730468750014], + [-76.88798828124999, 8.619873046875], + [-76.80224609375003, 8.640673828124974], + [-76.68935546874994, 8.69472656249998], + [-76.27685546875, 8.989111328124991], + [-76.135498046875, 9.265625], + [-76.02724609374997, 9.365771484374989], + [-75.90502929687503, 9.430908203125028], + [-75.75556640624995, 9.415625], + [-75.63935546874998, 9.450439453125014], + [-75.60361328124998, 9.538476562500009], + [-75.63535156249998, 9.657812499999977], + [-75.680029296875, 9.729785156249989], + [-75.63710937499997, 9.83427734374996], + [-75.59267578125, 9.992724609375003], + [-75.59589843749993, 10.125830078125034], + [-75.53857421874997, 10.205175781250034], + [-75.55839843750002, 10.236425781250006], + [-75.64218750000003, 10.17216796874996], + [-75.708349609375, 10.143408203124963], + [-75.67089843750003, 10.196337890625003], + [-75.55371093749994, 10.327734375000034], + [-75.49277343749998, 10.527636718750003], + [-75.44599609374995, 10.610888671874989], + [-75.280615234375, 10.72719726562498], + [-75.24794921875, 10.783251953125031], + [-75.12304687499997, 10.870410156250017], + [-74.92158203124995, 11.05756835937504], + [-74.84458007812498, 11.109716796875006], + [-74.45424804687497, 10.989062500000031], + [-74.330224609375, 10.996679687499991], + [-74.35239257812498, 10.974658203125031], + [-74.4095703125, 10.967187500000023], + [-74.49228515624998, 10.934472656250009], + [-74.51625976562497, 10.8625], + [-74.46025390624993, 10.787060546874997], + [-74.40087890625, 10.765234375], + [-74.35019531249998, 10.813720703125014], + [-74.29995117187497, 10.952246093749991], + [-74.21914062500002, 11.105322265625006], + [-74.20019531249997, 11.265722656249991], + [-74.14291992187503, 11.320849609375031], + [-74.05913085937502, 11.34062], + [-73.90957031250002, 11.308886718750003], + [-73.79570312499999, 11.275683593749989], + [-73.67690429687497, 11.271484375000014], + [-73.31337890624997, 11.295751953124991], + [-72.72182617187497, 11.712158203125], + [-72.44707031249996, 11.80170898437504], + [-72.275, 11.88925781250002], + [-72.16523437500001, 12.060205078125023], + [-72.13574218749994, 12.188574218749977], + [-72.05507812499994, 12.238427734375009], + [-71.97011718749997, 12.238281249999986], + [-71.93125, 12.269531250000043], + [-71.91914062499995, 12.309082031250014], + [-71.71455078124993, 12.41997070312496], + [-71.59746093749999, 12.434375], + [-71.49399414062503, 12.43227539062498], + [-71.26210937499997, 12.335302734375034] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Comoros", + "iso_a2": "KM", + "iso_a3": "COM", + "iso_n3": "174", + "continent": "Africa" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [43.788671875, -12.307031250000023], + [43.85898437500006, -12.368261718749977], + [43.66367187500006, -12.342871093749949], + [43.632910156250006, -12.287695312499991], + [43.63134765624997, -12.247070312499972], + [43.7042968750001, -12.255957031250006], + [43.788671875, -12.307031250000023] + ] + ], + [ + [ + [44.476367187500074, -12.08154296875], + [44.52675781250005, -12.21953125], + [44.526269531249994, -12.323535156250017], + [44.504980468750006, -12.356542968749991], + [44.46015625000004, -12.335156249999983], + [44.37744140624997, -12.25224609374996], + [44.220117187499994, -12.171386718750014], + [44.29228515625002, -12.164746093749997], + [44.33447265625003, -12.173046875], + [44.37910156250004, -12.165625], + [44.407031250000074, -12.120117187499957], + [44.41259765624997, -12.092968750000026], + [44.45185546875004, -12.071386718749977], + [44.476367187500074, -12.08154296875] + ] + ], + [ + [ + [43.46582031249997, -11.901269531249966], + [43.44677734375003, -11.91455078125], + [43.35546874999997, -11.85751953125002], + [43.303320312500006, -11.844042968750031], + [43.226660156250006, -11.75185546874998], + [43.25605468750004, -11.432128906249957], + [43.280664062499994, -11.391210937499963], + [43.2990234375001, -11.374511718750028], + [43.34150390625004, -11.368457031249946], + [43.39296875000005, -11.408593749999952], + [43.37939453124997, -11.614160156249994], + [43.44765625, -11.752539062500034], + [43.491503906250074, -11.862109374999974], + [43.46582031249997, -11.901269531249966] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Cape Verde", + "iso_a2": "CV", + "iso_a3": "CPV", + "iso_n3": "132", + "continent": "Africa" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-24.308251953124966, 14.856298828124991], + [-24.386132812499937, 14.818212890625048], + [-24.44052734374992, 14.834814453124963], + [-24.49218749999997, 14.87421875], + [-24.51708984374997, 14.93125], + [-24.49687, 14.980273437500017], + [-24.391992187499966, 15.038281250000026], + [-24.329492187499937, 15.019482421875011], + [-24.295800781250023, 14.929541015624991], + [-24.308251953124966, 14.856298828124991] + ] + ], + [ + [ + [-23.18212890624997, 15.136767578125017], + [-23.209960937499943, 15.133105468749989], + [-23.25180664062495, 15.178125], + [-23.242480468750017, 15.240527343750017], + [-23.247167968749977, 15.256982421874994], + [-23.210253906250017, 15.32353515625006], + [-23.13774414062499, 15.31772460937502], + [-23.119335937499955, 15.26840820312502], + [-23.115869140624966, 15.16665039062498], + [-23.18212890624997, 15.136767578125017] + ] + ], + [ + [ + [-23.444238281249994, 15.00795898437498], + [-23.5046875, 14.916113281250006], + [-23.637207031249943, 14.923486328124994], + [-23.70537109374999, 14.96132812499998], + [-23.78500976562495, 15.076904296874986], + [-23.78251953124999, 15.166113281250048], + [-23.75449218749995, 15.243554687500009], + [-23.75937, 15.310791015625028], + [-23.74809570312499, 15.328515625], + [-23.70722656250001, 15.316894531250028], + [-23.700634765624983, 15.271630859375051], + [-23.579980468750023, 15.160888671875043], + [-23.535253906249977, 15.139257812499991], + [-23.444238281249994, 15.00795898437498] + ] + ], + [ + [ + [-22.917724609375, 16.237255859374955], + [-22.834326171874977, 16.218994140625057], + [-22.802636718750023, 16.225537109374955], + [-22.749414062499994, 16.221533203125034], + [-22.69262695312497, 16.169042968750006], + [-22.68188476562503, 16.11328125], + [-22.710107421874994, 16.043359374999966], + [-22.820507812499926, 15.986035156250011], + [-22.88408203124999, 15.992724609375045], + [-22.95927734374996, 16.045117187499983], + [-22.91611328124995, 16.14843749999997], + [-22.917724609375, 16.237255859374955] + ] + ], + [ + [ + [-24.08769531249999, 16.62250976562501], + [-24.04638671875, 16.593066406250045], + [-24.03271484374997, 16.57202148437503], + [-24.094140624999966, 16.56103515625], + [-24.243066406250023, 16.599414062500017], + [-24.28281249999995, 16.57592773437503], + [-24.32236328124992, 16.49311523437504], + [-24.398095703124966, 16.61840820312497], + [-24.392919921874977, 16.664453125000023], + [-24.37670898437497, 16.67778320312499], + [-24.27109374999995, 16.644873046875034], + [-24.08769531249999, 16.62250976562501] + ] + ], + [ + [ + [-22.888330078124966, 16.659082031249994], + [-22.920263671875006, 16.60791015624997], + [-22.959423828124983, 16.68305664062501], + [-22.980615234374937, 16.700878906249983], + [-22.99091796875001, 16.808837890625057], + [-22.93291015624999, 16.84101562500004], + [-22.904736328124955, 16.84375], + [-22.90390624999995, 16.732128906249955], + [-22.888330078124966, 16.659082031249994] + ] + ], + [ + [ + [-24.88706054687495, 16.81811523437497], + [-24.969140624999966, 16.794189453125], + [-25.019970703124926, 16.797216796874977], + [-25.09306640624999, 16.83251953125], + [-25.070117187499932, 16.870703125000034], + [-24.99101562499999, 16.913232421874994], + [-24.936474609374983, 16.92211914062503], + [-24.89189453124996, 16.84648437499999], + [-24.88706054687495, 16.81811523437497] + ] + ], + [ + [ + [-25.169824218749994, 16.94648437500001], + [-25.267236328124937, 16.925927734375023], + [-25.308300781249955, 16.93583984374999], + [-25.321923828124994, 17.01538085937503], + [-25.34155273437497, 17.067724609375034], + [-25.337109374999955, 17.091015624999983], + [-25.113476562499983, 17.193652343750017], + [-25.03466796875, 17.176464843749983], + [-24.979687499999983, 17.09472656250003], + [-25.01708984374997, 17.04931640625], + [-25.169824218749994, 16.94648437500001] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Costa Rica", + "iso_a2": "CR", + "iso_a3": "CRI", + "iso_n3": "188", + "continent": "North America" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-83.6419921875, 10.917236328125], + [-83.61728515624999, 10.877490234374989], + [-83.58818359374999, 10.814990234374989], + [-83.57529296874999, 10.734716796874991], + [-83.4482421875, 10.465917968749991], + [-83.346826171875, 10.315380859374997], + [-83.124609375, 10.041601562499991], + [-83.028515625, 9.991259765624989], + [-82.86630859374999, 9.770947265624997], + [-82.810302734375, 9.734570312499997], + [-82.77841796874999, 9.66953125], + [-82.61015624999999, 9.616015624999989], + [-82.56357421874999, 9.57666015625], + [-82.56923828125, 9.558203125], + [-82.58652343749999, 9.538818359375], + [-82.611279296875, 9.519238281249997], + [-82.64409179687499, 9.505859375], + [-82.723388671875, 9.54609375], + [-82.801025390625, 9.591796875], + [-82.843994140625, 9.57080078125], + [-82.86015624999999, 9.511474609375], + [-82.88896484374999, 9.481005859374989], + [-82.925048828125, 9.469042968749989], + [-82.93984375, 9.449169921874997], + [-82.942822265625, 9.248876953124991], + [-82.94033203125, 9.060107421874989], + [-82.88134765625, 9.055859375], + [-82.78305664062499, 8.990283203124989], + [-82.741162109375, 8.951708984374989], + [-82.72783203124999, 8.916064453124989], + [-82.739990234375, 8.898583984374994], + [-82.8119140625, 8.857421875], + [-82.881982421875, 8.805322265624994], + [-82.91704101562499, 8.740332031249991], + [-82.855712890625, 8.635302734374989], + [-82.84262695312499, 8.56396484375], + [-82.84477539062499, 8.489355468749991], + [-82.86162109374999, 8.453515625], + [-82.99755859375, 8.367773437499991], + [-83.02734375, 8.337744140624991], + [-83.023388671875, 8.316015625], + [-82.9484375, 8.2568359375], + [-82.91289062499999, 8.199609375], + [-82.88330078125, 8.130566406249997], + [-82.879345703125, 8.070654296874991], + [-82.947265625, 8.181738281249991], + [-83.041455078125, 8.287744140624994], + [-83.12333984374999, 8.353076171874989], + [-83.12958984375, 8.50546875], + [-83.16240234374999, 8.588183593749989], + [-83.285791015625, 8.664355468749989], + [-83.39140624999999, 8.717724609374997], + [-83.4697265625, 8.706835937499989], + [-83.42177734375, 8.619238281249991], + [-83.29775390625, 8.506884765624989], + [-83.28955078125, 8.463818359374997], + [-83.29150390625, 8.406005859375], + [-83.37680664062499, 8.414892578124991], + [-83.45205078125, 8.4384765625], + [-83.54375, 8.445849609374989], + [-83.604736328125, 8.480322265624991], + [-83.73408203125, 8.614453125], + [-83.6421875, 8.72890625], + [-83.613720703125, 8.804052734374991], + [-83.616162109375, 8.959814453124991], + [-83.63725585937499, 9.035351562499997], + [-83.73691406249999, 9.150292968749994], + [-83.89555664062499, 9.276416015624989], + [-84.11787109375, 9.379443359374989], + [-84.22236328125, 9.4625], + [-84.482666015625, 9.526171874999989], + [-84.58159179687499, 9.568359375], + [-84.65888671875, 9.646679687499997], + [-84.67045898437499, 9.702880859375], + [-84.64306640625, 9.789404296874991], + [-84.71494140624999, 9.8994140625], + [-85.025048828125, 10.11572265625], + [-85.1984375, 10.1953125], + [-85.23564453124999, 10.242089843749994], + [-85.26318359375, 10.256640624999989], + [-85.2365234375, 10.107373046874997], + [-85.16074218749999, 10.017431640624991], + [-84.96279296875, 9.933447265624991], + [-84.908349609375, 9.884570312499989], + [-84.88642578125, 9.820947265624994], + [-85.00126953124999, 9.699267578124989], + [-85.059716796875, 9.668310546874991], + [-85.07705078125, 9.601953125], + [-85.114501953125, 9.581787109375], + [-85.15400390625, 9.620068359374997], + [-85.31455078124999, 9.8109375], + [-85.62485351562499, 9.902441406249991], + [-85.68100585937499, 9.95859375], + [-85.796484375, 10.132861328124989], + [-85.84965820312499, 10.292041015624989], + [-85.83061523437499, 10.398144531249997], + [-85.703125, 10.5634765625], + [-85.663330078125, 10.635449218749997], + [-85.67143554687499, 10.679785156249991], + [-85.667236328125, 10.745019531249994], + [-85.71484375, 10.790576171874989], + [-85.83286132812499, 10.849951171874991], + [-85.90800781249999, 10.897558593749991], + [-85.88740234375, 10.921289062499994], + [-85.75224609374999, 10.985253906249994], + [-85.74370117187499, 11.04296875], + [-85.7443359375, 11.062109375], + [-85.722265625, 11.066259765624991], + [-85.70263671875, 11.08154296875], + [-85.69052734374999, 11.097460937499989], + [-85.65366210937499, 11.153076171875], + [-85.62138671874999, 11.184472656249994], + [-85.5841796875, 11.189453125], + [-85.538720703125, 11.166308593749989], + [-85.368359375, 11.1064453125], + [-85.178955078125, 11.039941406249994], + [-84.9091796875, 10.9453125], + [-84.79736328125, 11.005908203124989], + [-84.701171875, 11.052197265624997], + [-84.6341796875, 11.045605468749997], + [-84.48916015625, 10.991650390624997], + [-84.40185546875, 10.974462890624991], + [-84.348291015625, 10.979882812499994], + [-84.25556640625, 10.900732421874991], + [-84.20498046875, 10.84130859375], + [-84.19658203124999, 10.801708984374997], + [-84.168359375, 10.780371093749991], + [-84.09619140625, 10.775683593749989], + [-83.91928710937499, 10.7353515625], + [-83.811181640625, 10.743261718749991], + [-83.71293945312499, 10.785888671875], + [-83.658935546875, 10.836865234374997], + [-83.6419921875, 10.917236328125] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Cuba", + "iso_a2": "CU", + "iso_a3": "CUB", + "iso_n3": "192", + "continent": "North America" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-82.56176757812503, 21.571679687500023], + [-82.65483398437496, 21.518652343749977], + [-82.85317382812497, 21.443896484375017], + [-82.959619140625, 21.441308593750023], + [-83.06728515624997, 21.469384765624966], + [-83.14150390625, 21.531884765624994], + [-83.18378906250001, 21.59345703125004], + [-83.18022460937499, 21.62304687500003], + [-83.11293945312497, 21.573681640624983], + [-83.05488281249993, 21.549414062500034], + [-83.0072265625, 21.565576171875023], + [-82.97358398437498, 21.592285156250057], + [-83.08251953124997, 21.791406250000023], + [-83.07773437499998, 21.83349609375], + [-82.99121093750003, 21.942724609375034], + [-82.75576171875002, 21.909521484375034], + [-82.71455078124998, 21.890283203125023], + [-82.68183593749995, 21.821142578125063], + [-82.62939453125003, 21.766894531250017], + [-82.56782226562501, 21.62182617187503], + [-82.56176757812503, 21.571679687500023] + ] + ], + [ + [ + [-77.66899414062493, 21.951953125000045], + [-77.71005859374995, 21.92133789062504], + [-77.75502929687497, 21.965576171875], + [-77.78364257812495, 21.970410156249983], + [-77.82319335937501, 21.987939453125023], + [-77.9, 22.037158203125017], + [-77.91855468749998, 22.088085937499983], + [-77.85473632812494, 22.091943359374966], + [-77.77441406250003, 22.08295898437501], + [-77.63369140624994, 22.054003906250074], + [-77.64599609374997, 21.996484374999966], + [-77.66899414062493, 21.951953125000045] + ] + ], + [ + [ + [-77.87939453125, 22.127539062500034], + [-77.91235351562497, 22.124707031249983], + [-78.01191406249998, 22.16640625000005], + [-78.04165039062502, 22.201269531250034], + [-78.006689453125, 22.247998046874983], + [-77.99921874999998, 22.298730468749994], + [-77.98564453124996, 22.302099609374977], + [-77.96958007812498, 22.240673828124983], + [-77.89365234374998, 22.214550781249983], + [-77.88911132812493, 22.201074218749994], + [-77.84248046874993, 22.148974609375045], + [-77.87939453125, 22.127539062500034] + ] + ], + [ + [ + [-78.02709960937497, 22.28515625], + [-78.04750976562497, 22.268505859374983], + [-78.10166015624998, 22.305761718750006], + [-78.18002929687495, 22.32197265625004], + [-78.22612304687493, 22.379980468750034], + [-78.27001953125, 22.40224609375005], + [-78.27353515625, 22.42358398437503], + [-78.20097656249996, 22.437646484374966], + [-78.15058593750001, 22.431494140625063], + [-78.09414062499997, 22.38720703125], + [-78.061669921875, 22.305908203125057], + [-78.02709960937497, 22.28515625] + ] + ], + [ + [ + [-78.630126953125, 22.552246093750057], + [-78.49287109375001, 22.53105468749999], + [-78.4453125, 22.54375], + [-78.39956054687502, 22.547460937500063], + [-78.35122070312502, 22.538623046875017], + [-78.28388671874998, 22.45546875000005], + [-78.34301757812494, 22.445117187500074], + [-78.38994140625002, 22.445117187500074], + [-78.42456054687494, 22.460107421875023], + [-78.54765624999999, 22.464013671875023], + [-78.62900390625003, 22.488183593749966], + [-78.67363281249999, 22.50883789062499], + [-78.69550781249998, 22.533984375000045], + [-78.630126953125, 22.552246093750057] + ] + ], + [ + [ + [-79.34956054687493, 22.663916015625063], + [-79.34790039062494, 22.637695312500057], + [-79.52275390624996, 22.71113281250001], + [-79.59785156249998, 22.787646484375045], + [-79.62817382812503, 22.805224609375074], + [-79.57915039062499, 22.806738281250034], + [-79.382177734375, 22.681347656249983], + [-79.34956054687493, 22.663916015625063] + ] + ], + [ + [ + [-81.83745117187499, 23.163037109374955], + [-81.57543945312497, 23.116503906250074], + [-81.363623046875, 23.129687500000017], + [-81.26235351562497, 23.156835937500034], + [-81.271630859375, 23.128613281249955], + [-81.17861328124997, 23.059667968750034], + [-81.14462890624998, 23.054931640625057], + [-81.00766601562495, 23.08984374999997], + [-80.65014648437494, 23.10307617187499], + [-80.61342773437502, 23.08374023437497], + [-80.55048828124998, 23.01660156249997], + [-80.45922851562494, 22.975], + [-80.36489257812502, 22.943408203125074], + [-80.26616210937496, 22.934960937500023], + [-80.16762695312497, 22.94936523437505], + [-80.07524414062499, 22.94233398437504], + [-79.95991210937493, 22.87690429687501], + [-79.92353515624998, 22.86914062500003], + [-79.82026367187498, 22.887011718750045], + [-79.85073242187497, 22.827197265625017], + [-79.67666015624997, 22.743066406250023], + [-79.54921875000002, 22.577783203125023], + [-79.45649414062495, 22.509863281250034], + [-79.35830078125002, 22.448925781249955], + [-79.27568359374999, 22.407617187499994], + [-79.18300781250002, 22.387890624999955], + [-78.90190429687493, 22.39599609375], + [-78.83544921875, 22.390917968750045], + [-78.77597656249995, 22.367333984375023], + [-78.71923828124994, 22.358056640625023], + [-78.68647460937493, 22.366845703125023], + [-78.14311523437499, 22.109423828125074], + [-77.97050781249999, 21.971972656250045], + [-77.86503906250002, 21.900585937499983], + [-77.63681640624995, 21.79736328125], + [-77.54511718749993, 21.774609374999983], + [-77.49711914062502, 21.78833007812503], + [-77.50654296874998, 21.81103515625003], + [-77.57333984375, 21.868310546874966], + [-77.58315429687497, 21.889257812499977], + [-77.49726562499995, 21.871630859375045], + [-77.34213867187498, 21.75527343750005], + [-77.29951171874998, 21.712255859374977], + [-77.22207031250002, 21.672412109375045], + [-77.14414062499995, 21.643603515625017], + [-77.18125, 21.59765625], + [-77.24453124999997, 21.59375], + [-77.36616210937498, 21.612646484375034], + [-77.26958007812502, 21.53789062499999], + [-77.25288085937498, 21.483496093750006], + [-77.20791015624997, 21.478857421875034], + [-77.140966796875, 21.538623046875045], + [-77.0986328125, 21.589013671875023], + [-76.92807617187498, 21.458984375], + [-76.83632812499994, 21.399511718750034], + [-76.85981445312493, 21.364794921875074], + [-76.86743164062497, 21.330419921875006], + [-76.76499023437498, 21.362402343750034], + [-76.72607421874997, 21.35888671875003], + [-76.68852539062496, 21.340429687500006], + [-76.64741210937501, 21.284521484375063], + [-76.55170898437495, 21.272119140625023], + [-76.45517578125, 21.273632812499983], + [-76.25922851562498, 21.227392578125063], + [-76.0736328125, 21.133447265625023], + [-75.89902343749995, 21.1142578125], + [-75.72294921874996, 21.111035156249983], + [-75.63374023437501, 21.061328125000074], + [-75.59580078125, 20.99467773437499], + [-75.638525390625, 20.947460937499955], + [-75.662939453125, 20.89814453125004], + [-75.59726562500003, 20.83764648437497], + [-75.74023437500003, 20.811962890624983], + [-75.76040039062497, 20.775537109375023], + [-75.75297851562496, 20.736181640625006], + [-75.72456054687493, 20.71455078125004], + [-75.64277343749998, 20.733496093749977], + [-75.52460937499998, 20.716650390625006], + [-75.338134765625, 20.701611328124955], + [-75.21328124999997, 20.71386718749997], + [-74.959716796875, 20.672656250000017], + [-74.882568359375, 20.65063476562497], + [-74.732080078125, 20.57319335937501], + [-74.662451171875, 20.522119140624994], + [-74.51313476562495, 20.384570312500045], + [-74.384375, 20.330468750000023], + [-74.27280273437503, 20.31738281250003], + [-74.23388671875, 20.326416015625], + [-74.198486328125, 20.311474609374983], + [-74.16748046874997, 20.292187499999955], + [-74.13681640625003, 20.23193359375003], + [-74.15371093750002, 20.168554687500006], + [-74.21743164062494, 20.11713867187501], + [-74.25283203124997, 20.0796875], + [-74.41215820312499, 20.075341796875023], + [-74.63476562499997, 20.058154296875074], + [-74.85004882812495, 20.002294921875063], + [-74.95512695312496, 19.957910156249966], + [-75.00317382812497, 19.928564453125034], + [-75.11640624999995, 19.901416015625017], + [-75.12412109375, 19.924658203125034], + [-75.12197265625002, 19.953906250000045], + [-75.151611328125, 20.008349609375045], + [-75.17729492187499, 19.959375], + [-75.21943359374998, 19.923632812500017], + [-75.29047851562495, 19.893115234375017], + [-75.55195312499995, 19.891113281250057], + [-75.6572265625, 19.932226562499977], + [-75.76513671874994, 19.960400390624955], + [-76.15844726562497, 19.98974609374997], + [-76.25283203125, 19.987158203124977], + [-76.51562, 19.956689453124994], + [-76.77973632812495, 19.940185546875], + [-76.890234375, 19.921337890624983], + [-76.99946289062495, 19.89282226562503], + [-77.21196289062502, 19.89375], + [-77.46318359374993, 19.861376953125017], + [-77.715087890625, 19.85546874999997], + [-77.55375976562502, 20.082128906250063], + [-77.21337890625003, 20.300390625000034], + [-77.14941406249997, 20.347265624999977], + [-77.10380859374999, 20.407519531250017], + [-77.09301757812503, 20.452929687500017], + [-77.10791015624994, 20.49165039062501], + [-77.18896484375003, 20.559960937499966], + [-77.20546875000002, 20.61083984375003], + [-77.22958984374995, 20.64375], + [-77.34755859375, 20.672363281250057], + [-77.467041015625, 20.68950195312499], + [-77.59272460937495, 20.690087890625023], + [-77.85688476562495, 20.71362304687503], + [-77.99731445312494, 20.715380859375017], + [-78.11635742187497, 20.761865234374994], + [-78.31386718749997, 20.92749023437497], + [-78.40634765624998, 20.973876953125], + [-78.45385742187497, 21.01098632812503], + [-78.49077148437493, 21.05371093750003], + [-78.537255859375, 21.296826171874983], + [-78.57656250000002, 21.41381835937503], + [-78.63647460937497, 21.51552734375005], + [-78.72768554687497, 21.592724609374955], + [-78.82294921874993, 21.618945312500074], + [-79.18920898437494, 21.552832031250006], + [-79.27441406249997, 21.562646484374966], + [-79.35742187500003, 21.58515625000001], + [-79.91030273437494, 21.742578125000023], + [-80.13833007812494, 21.829248046875023], + [-80.23134765625, 21.872167968750063], + [-80.310693359375, 21.933398437500017], + [-80.39291992187503, 22.033740234375017], + [-80.48544921874998, 22.1234375], + [-80.48481445312493, 22.08715820312497], + [-80.49907226562499, 22.063525390625045], + [-80.96191406249997, 22.052880859375023], + [-81.03564453124997, 22.073583984375063], + [-81.08310546874995, 22.097949218750045], + [-81.11665039062495, 22.134228515624983], + [-81.14140624999993, 22.20693359375005], + [-81.18549804687495, 22.26796875000005], + [-81.19956054687498, 22.202929687500017], + [-81.222412109375, 22.142919921875063], + [-81.28437, 22.109423828125074], + [-81.35527343749999, 22.104101562500063], + [-81.44111328124998, 22.18378906250004], + [-81.81621093750002, 22.2001953125], + [-81.84941406249993, 22.21367187499999], + [-81.97260742187498, 22.290869140625006], + [-82.077734375, 22.3876953125], + [-81.973046875, 22.42182617187504], + [-81.75708007812494, 22.46674804687504], + [-81.71035156250002, 22.496679687500006], + [-81.68325195312502, 22.53481445312505], + [-81.70273437499998, 22.591894531250034], + [-81.74565429687493, 22.632910156250063], + [-81.78989257812498, 22.65703124999999], + [-81.83881835937498, 22.672460937500034], + [-81.90341796875, 22.679003906250017], + [-82.73803710937497, 22.689257812500074], + [-82.78637695312494, 22.658349609374994], + [-82.86123046875002, 22.595117187499994], + [-83.009423828125, 22.514013671874977], + [-83.10712890625001, 22.429882812499983], + [-83.14375, 22.38647460937503], + [-83.18940429687498, 22.35541992187501], + [-83.29213867187497, 22.30322265625003], + [-83.37963867187503, 22.222998046875034], + [-83.4859375, 22.187109375], + [-83.54404296875003, 22.20893554687501], + [-83.60151367187501, 22.208740234375057], + [-83.64306640624994, 22.18896484375003], + [-83.68662109375003, 22.179931640625057], + [-83.90073242187495, 22.17011718750001], + [-83.93271484374998, 22.149658203125], + [-83.96333007812501, 22.092089843750017], + [-83.99804687499997, 21.980126953125023], + [-84.03095703124993, 21.94311523437503], + [-84.13833007812497, 21.92900390624999], + [-84.24067382812493, 21.898339843749966], + [-84.44882812499998, 21.791650390624994], + [-84.502587890625, 21.776171875000045], + [-84.49091796874993, 21.854296875000045], + [-84.50136718750002, 21.930273437499977], + [-84.56000976562498, 21.933007812500023], + [-84.62690429687501, 21.92036132812501], + [-84.68266601562502, 21.899072265625023], + [-84.78583984374998, 21.84228515625], + [-84.83823242187498, 21.827929687500017], + [-84.88720703125003, 21.856982421875074], + [-84.87724609374993, 21.894140625], + [-84.53276367187502, 22.031152343750023], + [-84.49423828124998, 22.041601562500034], + [-84.43305664062495, 22.031298828125045], + [-84.37314453125, 22.035937500000017], + [-84.32636718749998, 22.074316406250034], + [-84.38300781249998, 22.25556640625001], + [-84.36127929687498, 22.37890625], + [-84.28134765624995, 22.474218750000063], + [-84.12177734374995, 22.618554687499966], + [-84.04492187500003, 22.666015625000057], + [-83.25781249999997, 22.967578125000017], + [-83.17724609375, 22.983007812500063], + [-82.66582031249999, 23.043554687500034], + [-82.58779296875, 23.064550781250063], + [-82.35053710937498, 23.153955078124966], + [-82.10136718750002, 23.19042968750003], + [-81.83745117187499, 23.163037109374955] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "Curaçao", + "iso_a2": "CW", + "iso_a3": "CUW", + "iso_n3": "531", + "continent": "North America" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-68.75107421874999, 12.059765625], + [-68.80332031249999, 12.045458984374989], + [-68.9951171875, 12.141845703125], + [-69.15380859375, 12.2984375], + [-69.15888671875, 12.380273437499994], + [-69.11845703124999, 12.373242187499997], + [-69.07675781249999, 12.342041015625], + [-69.013134765625, 12.231347656249994], + [-68.827392578125, 12.158544921874991], + [-68.75107421874999, 12.059765625] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Cayman Is.", + "iso_a2": "KY", + "iso_a3": "CYM", + "iso_n3": "136", + "continent": "North America" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-81.36953124999997, 19.34887695312497], + [-81.33725585937495, 19.329492187500023], + [-81.296484375, 19.341357421875045], + [-81.28481445312502, 19.362548828125], + [-81.13046875, 19.346777343750006], + [-81.10712890624995, 19.305175781250057], + [-81.224609375, 19.304101562499994], + [-81.27729492187498, 19.277392578125074], + [-81.30371093749997, 19.271875], + [-81.40478515624994, 19.278417968750006], + [-81.41909179687502, 19.374755859375], + [-81.391015625, 19.38491210937505], + [-81.36953124999997, 19.34887695312497] + ] + ], + [ + [ + [-79.97900390625, 19.70820312500001], + [-79.98876953124994, 19.702539062499994], + [-80.02075195312497, 19.70683593749999], + [-80.09418945312493, 19.665917968749994], + [-80.12587890625, 19.668359374999966], + [-80.11611328124997, 19.682666015625045], + [-80.10092773437498, 19.696093750000017], + [-80.083642578125, 19.706103515625017], + [-80.06757812500001, 19.7099609375], + [-80.01621093750003, 19.71826171875], + [-79.99184570312494, 19.719287109375045], + [-79.97509765625, 19.7099609375], + [-79.97900390625, 19.70820312500001] + ] + ], + [ + [ + [-79.823388671875, 19.711914062500057], + [-79.87006835937501, 19.69667968750005], + [-79.90620117187501, 19.702539062499994], + [-79.82421875, 19.74409179687504], + [-79.80312, 19.758105468750045], + [-79.78515625000003, 19.76562], + [-79.76635742187503, 19.765722656250006], + [-79.74228515625, 19.757128906250017], + [-79.74228515625, 19.750878906249994], + [-79.823388671875, 19.711914062500057] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "N. Cyprus", + "iso_a2": "-99", + "iso_a3": "-99", + "iso_n3": "-99", + "continent": "Asia" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [34.004492187500006, 35.065234375], + [33.96572265625002, 35.056787109374994], + [33.9033203125, 35.08544921875], + [33.86640625000001, 35.093603515625], + [33.83203125, 35.0671875], + [33.79228515625002, 35.048193359375], + [33.756933593750006, 35.03974609375], + [33.72578125000001, 35.0373046875], + [33.675390625, 35.017871093749996], + [33.61445312500001, 35.022753906249996], + [33.52568359375002, 35.038671875], + [33.47578125000001, 35.000341796875], + [33.4638671875, 35.004931640624996], + [33.45595703125002, 35.101416015625], + [33.42421875000002, 35.140917968749996], + [33.3837890625, 35.1626953125], + [33.32558593750002, 35.153613281249996], + [33.24833984375002, 35.15693359375], + [33.191015625, 35.173144531249996], + [33.07753906250002, 35.14619140625], + [32.9859375, 35.11640625], + [32.91953125, 35.087841796875], + [32.86943359375002, 35.089404296874996], + [32.78408203125002, 35.115771484374996], + [32.72021484375, 35.145361328125], + [32.71269531250002, 35.171044921874994], + [32.77236328125002, 35.159570312499994], + [32.8798828125, 35.180566406249994], + [32.926367187500006, 35.278076171875], + [32.94160156250001, 35.390429687499996], + [33.12343750000002, 35.358203125], + [33.30781250000001, 35.34150390625], + [33.45878906250002, 35.335888671875], + [33.60761718750001, 35.354150390624994], + [34.0634765625, 35.473974609375], + [34.192480468750006, 35.545703125], + [34.27236328125002, 35.569970703124994], + [34.4111328125, 35.629296875], + [34.55605468750002, 35.662060546875], + [34.46318359375002, 35.593505859375], + [33.941992187500006, 35.292041015624996], + [33.90791015625001, 35.202392578125], + [33.93125, 35.140380859375], + [34.004492187500006, 35.065234375] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Cyprus", + "iso_a2": "CY", + "iso_a3": "CYP", + "iso_n3": "196", + "continent": "Asia" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [32.71269531250002, 35.171044921874994], + [32.72021484375, 35.145361328125], + [32.78408203125002, 35.115771484374996], + [32.86943359375002, 35.089404296874996], + [32.91953125, 35.087841796875], + [32.9859375, 35.11640625], + [33.07753906250002, 35.14619140625], + [33.191015625, 35.173144531249996], + [33.24833984375002, 35.15693359375], + [33.32558593750002, 35.153613281249996], + [33.3837890625, 35.1626953125], + [33.42421875000002, 35.140917968749996], + [33.45595703125002, 35.101416015625], + [33.4638671875, 35.004931640624996], + [33.47578125000001, 35.000341796875], + [33.52568359375002, 35.038671875], + [33.61445312500001, 35.022753906249996], + [33.675390625, 35.017871093749996], + [33.72578125000001, 35.0373046875], + [33.756933593750006, 35.03974609375], + [33.79228515625002, 35.048193359375], + [33.83203125, 35.0671875], + [33.86640625000001, 35.093603515625], + [33.9033203125, 35.08544921875], + [33.96572265625002, 35.056787109374994], + [34.004492187500006, 35.065234375], + [34.02363281250001, 35.045556640624994], + [34.05019531250002, 34.98837890625], + [33.9365234375, 34.971484375], + [33.82246093750001, 34.96591796875], + [33.75898437500001, 34.9732421875], + [33.69941406250001, 34.969873046874994], + [33.51445312500002, 34.806445312499996], + [33.41494140625002, 34.750878906249994], + [33.29658203125001, 34.717724609375], + [33.17607421875002, 34.698046875], + [33.11552734375002, 34.695556640625], + [33.06230468750002, 34.6748046875], + [33.02490234375, 34.6369140625], + [33.02392578125, 34.6], + [33.007910156250006, 34.569580078125], + [32.94179687500002, 34.57587890625], + [32.91425781250001, 34.635498046875], + [32.8671875, 34.6611328125], + [32.750097656250006, 34.647802734375], + [32.69296875, 34.649365234375], + [32.50556640625001, 34.70625], + [32.44902343750002, 34.729443359375], + [32.41376953125001, 34.77802734375], + [32.31718750000002, 34.9533203125], + [32.30097656250001, 35.082958984375], + [32.39091796875002, 35.0498046875], + [32.475, 35.089990234374994], + [32.55595703125002, 35.15576171875], + [32.65234375, 35.182666015624996], + [32.71269531250002, 35.171044921874994] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Czech Rep.", + "iso_a2": "CZ", + "iso_a3": "CZE", + "iso_n3": "203", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [14.809375, 50.858984375], + [14.895800781250017, 50.861376953124996], + [14.98291015625, 50.886572265625], + [14.989941406250011, 50.92724609375], + [14.984472656250006, 51.00341796875], + [14.99375, 51.01435546875], + [15.1259765625, 50.99287109375], + [15.258593750000017, 50.958544921874996], + [15.277050781250011, 50.8830078125], + [15.312597656250006, 50.845751953124996], + [15.354394531250023, 50.811767578125], + [15.394628906250006, 50.796289062499994], + [15.463964843750006, 50.793847656249994], + [15.643945312500023, 50.748876953125], + [15.730566406250006, 50.739697265625], + [15.819238281250023, 50.70869140625], + [15.893945312500023, 50.676904296874994], + [15.948535156250017, 50.670263671875], + [15.973828125000011, 50.63544921875], + [16.007226562500023, 50.611621093749996], + [16.06640625, 50.629931640624996], + [16.2822265625, 50.655615234375], + [16.359960937500006, 50.621386718749996], + [16.4125, 50.58515625], + [16.419726562500017, 50.573632812499994], + [16.39228515625001, 50.541650390624994], + [16.37910156250001, 50.516894531249996], + [16.35664062500001, 50.50048828125], + [16.282519531250017, 50.4830078125], + [16.24072265625, 50.4546875], + [16.210351562500023, 50.423730468749994], + [16.230761718750017, 50.394091796874996], + [16.291308593750017, 50.371875], + [16.33417968750001, 50.36689453125], + [16.350488281250023, 50.34521484375], + [16.487597656250017, 50.248388671875], + [16.5966796875, 50.121923828125], + [16.63916015625, 50.1021484375], + [16.679101562500023, 50.097460937499996], + [16.72529296875001, 50.116064453125], + [16.778613281250017, 50.15703125], + [16.841796875, 50.18671875], + [16.895312500000017, 50.201953125], + [16.989648437500023, 50.2369140625], + [16.99335937500001, 50.259716796875], + [16.91474609375001, 50.34521484375], + [16.869140625, 50.414501953125], + [16.88007812500001, 50.427050781249996], + [16.980761718750017, 50.41611328125], + [17.151953125, 50.378320312499994], + [17.41523437500001, 50.254785156249994], + [17.462304687500023, 50.254785156249994], + [17.554589843750023, 50.2640625], + [17.654687500000023, 50.284228515624996], + [17.702246093750006, 50.307177734374996], + [17.720117187500023, 50.298632812499996], + [17.735449218750006, 50.230761718749996], + [17.709277343750017, 50.1935546875], + [17.58935546875, 50.157470703125], + [17.596289062500006, 50.139501953125], + [17.627050781250006, 50.11640625], + [17.681054687500023, 50.10078125], + [17.74658203125, 50.056787109374994], + [17.79169921875001, 50.006591796875], + [17.83125, 49.983300781249994], + [17.874804687500017, 49.972265625], + [17.983789062500023, 49.999072265624996], + [18.0146484375, 50.020263671875], + [18.0283203125, 50.03525390625], + [18.04951171875001, 50.03193359375], + [18.087695312500017, 50.007275390625], + [18.09921875, 49.9927734375], + [18.20527343750001, 49.964746093749994], + [18.26630859375001, 49.9302734375], + [18.305273437500006, 49.9140625], + [18.348437500000017, 49.929833984374994], + [18.516210937500006, 49.902392578124996], + [18.562402343750023, 49.879345703125], + [18.5771484375, 49.841113281249996], + [18.56884765625, 49.817919921874996], + [18.594628906250023, 49.7578125], + [18.806933593750017, 49.613720703125], + [18.82929687500001, 49.54013671875], + [18.83222656250001, 49.510791015624996], + [18.807031250000023, 49.509228515625], + [18.74970703125001, 49.493994140625], + [18.676171875000023, 49.4884765625], + [18.596484375000017, 49.491455078125], + [18.534570312500023, 49.464697265625], + [18.47607421875, 49.42109375], + [18.415820312500017, 49.390917968749996], + [18.383105468750017, 49.363916015624994], + [18.36484375, 49.336230468749996], + [18.160937500000017, 49.257373046874996], + [18.132617187500017, 49.224560546875], + [18.109960937500006, 49.17978515625], + [18.100390625000017, 49.1193359375], + [18.0859375, 49.06513671875], + [18.050878906250006, 49.036523437499994], + [17.940722656250017, 49.011962890625], + [17.91328125000001, 48.99873046875], + [17.892675781250006, 48.971142578125], + [17.830859375000017, 48.928613281249994], + [17.75849609375001, 48.888134765625], + [17.625390625000023, 48.841845703124996], + [17.48261718750001, 48.827783203124994], + [17.296875, 48.842822265624996], + [17.1884765625, 48.8609375], + [17.135644531250023, 48.841064453125], + [17.063281250000017, 48.78076171875], + [16.985253906250023, 48.676904296874994], + [16.953125, 48.598828125], + [16.928320312500006, 48.620898437499996], + [16.883691406250023, 48.7037109375], + [16.83320312500001, 48.714306640625], + [16.764453125000017, 48.722021484375], + [16.712695312500017, 48.734228515625], + [16.600976562500023, 48.781884765624994], + [16.543554687500006, 48.796240234375], + [16.477929687500023, 48.800097656249996], + [16.414843750000017, 48.7720703125], + [16.367285156250006, 48.73896484375], + [16.219335937500006, 48.739404296874994], + [16.057226562500006, 48.754785156249994], + [15.8251953125, 48.864453125], + [15.765039062500023, 48.8654296875], + [15.70078125, 48.86044921875], + [15.599414062500017, 48.886376953124994], + [15.402929687500006, 48.957373046875], + [15.310937500000023, 48.974023437499994], + [15.252734375000017, 48.9638671875], + [15.199609375000023, 48.948144531249994], + [15.16171875, 48.9462890625], + [15.139746093750006, 48.9693359375], + [15.066796875000023, 48.997851562499996], + [14.993457031250017, 49.001123046874994], + [14.97216796875, 48.983935546874996], + [14.947363281250006, 48.827734375], + [14.922558593750011, 48.771386718749994], + [14.821875, 48.7740234375], + [14.785937500000017, 48.747363281249996], + [14.706640625, 48.671923828124996], + [14.691308593750023, 48.59921875], + [14.553906250000011, 48.613330078124996], + [14.488671875000023, 48.625537109374996], + [14.431054687500023, 48.616259765624996], + [14.367578125000023, 48.576220703124996], + [14.189843750000023, 48.578564453125], + [14.049121093750017, 48.602490234375], + [13.98876953125, 48.692431640624996], + [13.92431640625, 48.72802734375], + [13.843164062500023, 48.75986328125], + [13.814746093750017, 48.766943359375], + [13.769921875000023, 48.815966796874996], + [13.684960937500023, 48.876708984375], + [13.547656250000017, 48.95966796875], + [13.440722656250017, 48.95556640625], + [13.401171875000017, 48.977587890624996], + [13.383691406250023, 49.008105468749996], + [13.339062500000011, 49.060791015625], + [13.288769531250011, 49.097460937499996], + [13.227832031250017, 49.111669921875], + [13.140527343750023, 49.158349609374994], + [13.023730468750017, 49.260107421875], + [12.916699218750011, 49.33046875], + [12.813378906250023, 49.329345703125], + [12.747851562500017, 49.3662109375], + [12.68115234375, 49.414501953125], + [12.632031250000011, 49.461230468749996], + [12.555761718750006, 49.574853515624994], + [12.500292968750017, 49.639697265624996], + [12.45703125, 49.67978515625], + [12.408203125, 49.713183593749996], + [12.390527343750023, 49.739648437499994], + [12.4501953125, 49.800146484375], + [12.471875, 49.830078125], + [12.49755859375, 49.853076171874996], + [12.5125, 49.87744140625], + [12.512011718750017, 49.895800781249996], + [12.457617187500006, 49.955517578125], + [12.384179687500023, 49.998583984374996], + [12.276464843750006, 50.042333984375], + [12.207812500000017, 50.097509765625], + [12.182519531250023, 50.148046875], + [12.175, 50.175830078124996], + [12.127832031250023, 50.213427734374996], + [12.089746093750023, 50.2685546875], + [12.08984375, 50.3017578125], + [12.09921875, 50.310986328125], + [12.134863281250006, 50.3109375], + [12.1748046875, 50.288378906249996], + [12.231152343750011, 50.244873046875], + [12.27734375, 50.181445312499996], + [12.3056640625, 50.205712890624994], + [12.358593750000011, 50.273242187499996], + [12.45263671875, 50.3498046875], + [12.549023437500011, 50.393408203125], + [12.635546875000017, 50.3970703125], + [12.706445312500023, 50.409130859375], + [12.765429687500017, 50.430957031249996], + [12.868261718750006, 50.422216796875], + [12.942675781250017, 50.4064453125], + [12.966796875, 50.4162109375], + [12.9970703125, 50.4560546875], + [13.016406250000017, 50.490380859374994], + [13.18115234375, 50.510498046875], + [13.237695312500023, 50.5767578125], + [13.26953125, 50.576416015625], + [13.306054687500023, 50.586328125], + [13.341015625000011, 50.61142578125], + [13.374609375, 50.621728515624994], + [13.401171875000017, 50.609326171875], + [13.436132812500006, 50.60107421875], + [13.472558593750023, 50.616943359375], + [13.526562500000011, 50.692822265625], + [13.556738281250006, 50.704638671874996], + [13.701367187500011, 50.71650390625], + [13.898535156250006, 50.761279296874996], + [13.998437500000023, 50.801123046875], + [14.096484375000017, 50.82275390625], + [14.201757812500006, 50.861230468749994], + [14.369042968750023, 50.898730468749996], + [14.377050781250006, 50.9140625], + [14.299414062500006, 50.952587890625], + [14.273339843750023, 50.976904296875], + [14.255859375, 51.001855468749994], + [14.283203125, 51.0294921875], + [14.319726562500023, 51.03779296875], + [14.367285156250006, 51.026269531249994], + [14.50732421875, 51.00986328125], + [14.545703125000017, 50.993945312499996], + [14.559667968750006, 50.954931640625], + [14.59521484375, 50.918603515624994], + [14.623828125000017, 50.91474609375], + [14.613574218750017, 50.85556640625], + [14.658203125, 50.8326171875], + [14.723339843750011, 50.814697265625], + [14.766503906250023, 50.818310546875], + [14.797460937500006, 50.842333984374996], + [14.809375, 50.858984375] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Germany", + "iso_a2": "DE", + "iso_a3": "DEU", + "iso_n3": "276", + "continent": "Europe" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [14.1982421875, 53.919042968750034], + [14.213671875000045, 53.870751953124966], + [14.172167968750017, 53.874365234375006], + [14.04833984375, 53.86308593750002], + [13.92578125, 53.879052734374966], + [13.902148437500074, 53.93896484375], + [13.921679687500045, 53.996630859375045], + [13.872460937500051, 54.03627929687502], + [13.827148437499972, 54.05957031249997], + [13.820410156250034, 54.09282226562502], + [13.827734375, 54.12724609374999], + [14.038867187500045, 54.03457031250005], + [14.211425781250028, 53.95034179687502], + [14.1982421875, 53.919042968750034] + ] + ], + [ + [ + [11.282812500000063, 54.41796875], + [11.129296875000051, 54.41601562500003], + [11.070703125000023, 54.45600585937501], + [11.01171875, 54.466162109375034], + [11.043457031250057, 54.515478515625034], + [11.0849609375, 54.533398437499955], + [11.233593750000068, 54.50126953124999], + [11.2802734375, 54.438378906249966], + [11.282812500000063, 54.41796875] + ] + ], + [ + [ + [13.709179687500011, 54.382714843749994], + [13.734179687500045, 54.31542968749997], + [13.707324218750074, 54.281152343749994], + [13.594921875000011, 54.33818359374999], + [13.48203125, 54.33740234375], + [13.414550781250028, 54.24956054687496], + [13.364355468750034, 54.245849609375], + [13.190039062500034, 54.32563476562501], + [13.162109375000028, 54.36455078125002], + [13.156347656250006, 54.396923828124955], + [13.18125, 54.508984374999955], + [13.176660156250051, 54.544238281250045], + [13.231445312500028, 54.582763671875], + [13.239941406250068, 54.63842773437506], + [13.336816406249994, 54.697119140625006], + [13.422753906250023, 54.699316406250006], + [13.45009765625008, 54.64960937500001], + [13.491210937500028, 54.615380859374966], + [13.636035156250045, 54.57700195312506], + [13.65761718750008, 54.55957031249997], + [13.670703125000074, 54.53544921875002], + [13.603320312500045, 54.488183593749994], + [13.58046875000008, 54.463964843750034], + [13.601855468749989, 54.425146484375034], + [13.709179687500011, 54.382714843749994] + ] + ], + [ + [ + [8.587890625000028, 54.71269531249999], + [8.548925781250063, 54.68818359374998], + [8.453808593750068, 54.69106445312502], + [8.400390625, 54.714111328125], + [8.417675781250068, 54.73867187500005], + [8.468164062500051, 54.757421875000034], + [8.50996093750004, 54.76030273437502], + [8.573437500000011, 54.748730468749955], + [8.587890625000028, 54.71269531249999] + ] + ], + [ + [ + [9.254980468750034, 54.80800781250005], + [9.341992187499983, 54.806298828124966], + [9.49873046875004, 54.84042968749998], + [9.615820312500006, 54.85541992187501], + [9.661230468750006, 54.834375], + [9.725, 54.82553710937498], + [9.739746093750028, 54.82553710937498], + [9.745898437500045, 54.80717773437496], + [9.892285156250011, 54.78061523437506], + [9.953808593750011, 54.73828125000006], + [10.022167968750011, 54.673925781250006], + [10.028808593750028, 54.58129882812506], + [9.941308593750051, 54.51464843750006], + [9.86865234375, 54.47246093749999], + [10.143457031250023, 54.48842773437505], + [10.17080078125008, 54.45019531249997], + [10.212402343750028, 54.408935546875], + [10.360449218750006, 54.43833007812506], + [10.731542968750006, 54.31625976562506], + [10.95595703125008, 54.37568359374998], + [11.013378906250068, 54.37915039062497], + [11.064355468750051, 54.28051757812506], + [11.008593750000074, 54.18115234374997], + [10.810742187500068, 54.075146484374955], + [10.854589843750034, 54.00981445312496], + [10.917773437500045, 53.99531250000004], + [11.104296875000017, 54.00917968750002], + [11.39960937500004, 53.94462890625002], + [11.461132812500068, 53.96474609375002], + [11.70058593750008, 54.11352539062506], + [11.796289062500051, 54.14545898437498], + [12.111328125, 54.168310546875006], + [12.16865234375004, 54.22587890625002], + [12.296289062500023, 54.283789062500006], + [12.378515625, 54.347021484375006], + [12.57539062500004, 54.467382812500006], + [12.779101562500074, 54.44570312500005], + [12.898046875000063, 54.42265625], + [13.028613281250017, 54.411035156249994], + [13.147460937500057, 54.28271484375006], + [13.448046875000017, 54.14086914062503], + [13.724218750000063, 54.153222656249966], + [13.822265625000057, 54.01904296874997], + [13.865527343750074, 53.85336914062498], + [13.95039062500004, 53.801367187500034], + [14.025, 53.76743164062506], + [14.25, 53.73188476562501], + [14.258886718750006, 53.729638671874994], + [14.266113281250057, 53.707128906250034], + [14.279882812500034, 53.62475585937503], + [14.298730468750051, 53.55644531249999], + [14.41455078125, 53.28349609374996], + [14.412304687500011, 53.216748046874955], + [14.410937500000074, 53.19902343749999], + [14.368554687500051, 53.105566406250034], + [14.293164062500068, 53.026757812499966], + [14.193652343750045, 52.982324218749994], + [14.138867187500068, 52.93286132812503], + [14.128613281250011, 52.87822265625002], + [14.253710937500017, 52.78251953124996], + [14.514062500000023, 52.645605468750034], + [14.619433593750017, 52.52851562499998], + [14.569726562499994, 52.431103515624955], + [14.554589843750023, 52.35966796874996], + [14.573925781250068, 52.31416015625001], + [14.615625, 52.277636718750045], + [14.679882812500068, 52.25], + [14.705371093750017, 52.207470703124955], + [14.692382812500028, 52.150048828124994], + [14.704589843750028, 52.110205078125034], + [14.752539062500034, 52.08183593750002], + [14.748144531250034, 52.07080078125], + [14.724804687500068, 52.030859375000034], + [14.692968750000063, 51.95800781250003], + [14.674902343750034, 51.90483398437502], + [14.601660156250034, 51.832373046875006], + [14.623925781250023, 51.77080078124999], + [14.681347656250011, 51.69819335937504], + [14.724902343749989, 51.66171875000006], + [14.738671875000051, 51.62714843750004], + [14.7109375, 51.54492187499997], + [14.724707031250063, 51.523876953124955], + [14.90595703125004, 51.463330078124955], + [14.935546875000028, 51.435351562500045], + [14.953125, 51.37714843749998], + [15.0166015625, 51.25273437499996], + [14.9638671875, 51.095117187499994], + [14.917480468750057, 51.00874023437498], + [14.814257812499989, 50.871630859375045], + [14.809375, 50.858984375000034], + [14.797460937500034, 50.84233398437502], + [14.766503906250051, 50.81831054687501], + [14.72333984375004, 50.81469726562497], + [14.658203125, 50.832617187500006], + [14.613574218750045, 50.85556640625006], + [14.623828125000017, 50.91474609375004], + [14.595214843750057, 50.91860351562502], + [14.559667968750006, 50.954931640625034], + [14.545703124999989, 50.99394531249999], + [14.50732421875, 51.009863281250034], + [14.367285156250063, 51.02626953125002], + [14.319726562500051, 51.037792968749955], + [14.283203125, 51.029492187499955], + [14.255859375, 51.00185546875002], + [14.273339843750023, 50.97690429687498], + [14.299414062500006, 50.95258789062501], + [14.377050781250006, 50.91406249999997], + [14.36904296875008, 50.89873046874996], + [14.201757812500006, 50.86123046875005], + [14.096484375000045, 50.82275390625003], + [13.998437500000051, 50.80112304687506], + [13.898535156250034, 50.76127929687502], + [13.701367187500011, 50.716503906249955], + [13.556738281250034, 50.704638671875045], + [13.52656250000004, 50.69282226562501], + [13.472558593750051, 50.61694335937503], + [13.436132812499977, 50.60107421874997], + [13.401171875000074, 50.60932617187498], + [13.374609375000063, 50.62172851562502], + [13.341015625000068, 50.61142578125006], + [13.306054687500051, 50.586328125], + [13.269531250000057, 50.57641601562503], + [13.237695312500051, 50.576757812500006], + [13.18115234375, 50.510498046875], + [13.016406250000017, 50.490380859374994], + [12.997070312499972, 50.45605468750003], + [12.966796875000028, 50.41621093749998], + [12.942675781249989, 50.40644531250004], + [12.868261718750034, 50.42221679687506], + [12.765429687500045, 50.43095703124996], + [12.706445312500023, 50.409130859374955], + [12.635546875000045, 50.39707031249998], + [12.549023437500011, 50.393408203125034], + [12.45263671875, 50.349804687499955], + [12.358593750000011, 50.27324218749999], + [12.3056640625, 50.205712890624994], + [12.27734375, 50.18144531250002], + [12.231152343749983, 50.24487304687497], + [12.174804687500057, 50.28837890624996], + [12.134863281250006, 50.31093750000002], + [12.099218750000034, 50.31098632812504], + [12.089843749999972, 50.30175781250003], + [12.089746093750051, 50.2685546875], + [12.12783203125008, 50.21342773437496], + [12.175, 50.175830078125045], + [12.182519531250023, 50.14804687500006], + [12.207812500000045, 50.09750976562498], + [12.276464843749977, 50.042333984375006], + [12.38417968750008, 49.99858398437499], + [12.457617187500034, 49.95551757812501], + [12.512011718750017, 49.89580078125002], + [12.5125, 49.87744140625], + [12.49755859375, 49.85307617187502], + [12.471875, 49.83007812500003], + [12.450195312500028, 49.80014648437506], + [12.390527343750051, 49.739648437499994], + [12.408203125, 49.71318359375002], + [12.45703125, 49.67978515625006], + [12.500292968750017, 49.63969726562496], + [12.555761718750034, 49.574853515624994], + [12.63203125000004, 49.46123046875002], + [12.68115234375, 49.41450195312501], + [12.747851562500017, 49.36621093750003], + [12.813378906250051, 49.32934570312497], + [12.91669921875004, 49.33046875000002], + [13.023730468750074, 49.260107421875006], + [13.14052734375008, 49.15834960937505], + [13.227832031250017, 49.111669921875034], + [13.288769531250068, 49.09746093749999], + [13.339062500000011, 49.06079101562497], + [13.383691406250051, 49.00810546874999], + [13.401171875000074, 48.97758789062499], + [13.440722656250045, 48.95556640625003], + [13.547656250000074, 48.95966796874998], + [13.684960937500051, 48.87670898437506], + [13.769921875000051, 48.81596679687502], + [13.814746093750017, 48.76694335937498], + [13.802929687500011, 48.74750976562501], + [13.797460937500063, 48.686425781249994], + [13.798828124999972, 48.62167968750006], + [13.785351562499983, 48.58745117187502], + [13.723925781249989, 48.542382812499966], + [13.692187500000017, 48.53276367187496], + [13.675195312500023, 48.523046875000034], + [13.486621093750074, 48.58183593750002], + [13.471679687500028, 48.57182617187502], + [13.459863281250023, 48.564550781250034], + [13.409375, 48.39414062500006], + [13.374609375000063, 48.361376953125045], + [13.322851562500006, 48.33125], + [13.215234375000023, 48.301904296874994], + [13.140429687500045, 48.289941406249966], + [13.082128906249977, 48.275097656249955], + [12.897460937500028, 48.20371093749998], + [12.814257812500045, 48.160839843749955], + [12.760351562500063, 48.10698242187499], + [12.760058593750017, 48.07597656249999], + [12.849902343750017, 47.98481445312498], + [12.95351562500008, 47.89062], + [12.954199218750034, 47.807763671874966], + [12.908300781250006, 47.745800781249955], + [12.897656250000068, 47.72187], + [12.928125, 47.71284179687498], + [12.98554687500004, 47.70942382812501], + [13.033593750000051, 47.69873046875006], + [13.054101562500051, 47.655126953125034], + [13.047949218750034, 47.57915039062502], + [13.031542968750074, 47.50800781250001], + [13.01435546875004, 47.478076171875045], + [12.968066406250017, 47.475683593750006], + [12.878906250000057, 47.506445312500034], + [12.809375, 47.542187499999955], + [12.782812500000034, 47.56416015624998], + [12.781152343750051, 47.590429687500006], + [12.796191406249989, 47.60703125], + [12.771386718750023, 47.63940429687503], + [12.685839843750074, 47.66933593750002], + [12.594238281249972, 47.65629882812502], + [12.52656250000004, 47.636132812499994], + [12.482910156250028, 47.63730468750006], + [12.435742187500011, 47.66611328124998], + [12.36318359375008, 47.68818359375004], + [12.268359375000017, 47.70273437499998], + [12.209277343750074, 47.71826171875003], + [12.196875, 47.709082031250034], + [12.203808593750011, 47.64672851562503], + [12.185644531250063, 47.61953125], + [11.716796875, 47.58349609375003], + [11.57392578125004, 47.54975585937498], + [11.469921875000068, 47.50610351562497], + [11.392968750000023, 47.487158203125034], + [11.374121093750006, 47.46025390624996], + [11.297949218750034, 47.424902343750034], + [11.2119140625, 47.41362304687496], + [11.191210937500045, 47.42519531250002], + [11.136035156249989, 47.40888671874998], + [11.041992187500028, 47.39311523437496], + [10.980859375, 47.39814453125001], + [10.952148437500028, 47.426708984374955], + [10.893945312500051, 47.470458984375], + [10.870605468750028, 47.500781250000045], + [10.873046874999972, 47.52021484375001], + [10.741601562500023, 47.52412109375001], + [10.65869140625, 47.547216796875006], + [10.482812500000051, 47.54179687499996], + [10.439453125000028, 47.55156249999999], + [10.43037109375004, 47.54106445312499], + [10.403906250000063, 47.41699218750003], + [10.369140625, 47.366064453125034], + [10.312792968750074, 47.31342773437498], + [10.240625, 47.284130859374955], + [10.18300781250008, 47.27880859375003], + [10.185742187500011, 47.317187500000045], + [10.200292968750063, 47.36342773437505], + [10.158789062500034, 47.37426757812503], + [10.096484375000045, 47.379589843749955], + [10.066308593750023, 47.39335937500002], + [10.074218750000028, 47.42851562499999], + [10.059863281250045, 47.44907226562498], + [10.034082031250023, 47.47358398437501], + [9.971582031249994, 47.50532226562498], + [9.839160156250017, 47.55229492187496], + [9.748925781250023, 47.575537109375006], + [9.715136718750074, 47.55078125000003], + [9.650585937500068, 47.52587890625], + [9.548925781250063, 47.53403320312498], + [9.524023437500034, 47.52421875000002], + [9.35, 47.59892578124996], + [9.182812500000068, 47.67070312500002], + [9.127539062500006, 47.67070312500002], + [8.881152343750074, 47.65639648437505], + [8.874023437500057, 47.66269531249998], + [8.831152343750006, 47.70361328124997], + [8.793066406250063, 47.71655273437503], + [8.770117187500006, 47.70991210937501], + [8.75478515625008, 47.69804687499999], + [8.728320312500017, 47.70004882812506], + [8.617871093749983, 47.76611328125], + [8.572656250000023, 47.775634765625], + [8.509863281250006, 47.76689453124999], + [8.435742187500011, 47.73134765625002], + [8.403417968750006, 47.687792968750045], + [8.413281250000068, 47.66269531249998], + [8.451757812500006, 47.65180664062498], + [8.552343750000063, 47.65913085937498], + [8.56708984375004, 47.65190429687502], + [8.57050781250004, 47.63779296874998], + [8.55947265625008, 47.62402343750003], + [8.477636718750034, 47.61269531250002], + [8.454003906249994, 47.59619140625003], + [8.430078125000023, 47.592138671875006], + [8.414746093750011, 47.58959960937503], + [8.327832031250068, 47.60693359375], + [8.198242187500028, 47.60693359375], + [8.09375, 47.57617187500003], + [7.927050781250045, 47.56386718750002], + [7.698046875000017, 47.56987304687499], + [7.615625, 47.59272460937504], + [7.5654296875, 47.606542968750006], + [7.529394531250034, 47.67387695312496], + [7.538574218750028, 47.77363281250004], + [7.593261718750057, 47.90566406250002], + [7.608496093750063, 48.00258789062505], + [7.584179687499983, 48.064306640625006], + [7.616601562500023, 48.15678710937502], + [7.705664062500063, 48.280029296875], + [7.76513671875, 48.410009765625006], + [7.794824218749994, 48.54682617187498], + [7.837988281250006, 48.636035156250045], + [7.922753906250051, 48.69853515624999], + [8.124023437500028, 48.87329101562497], + [8.14033203125004, 48.88642578124998], + [8.134863281250006, 48.97358398437498], + [8.080664062500063, 48.98588867187499], + [8.001269531250045, 49.01093750000004], + [7.799218750000023, 49.04189453125005], + [7.610937500000034, 49.061767578125], + [7.525488281250034, 49.086376953124955], + [7.450585937500051, 49.152197265625034], + [7.404199218749994, 49.15307617187503], + [7.31337890625008, 49.12954101562505], + [7.19990234375004, 49.113623046875006], + [7.117382812500011, 49.12753906249998], + [7.065722656250074, 49.12485351562498], + [7.03671875, 49.112695312499994], + [7.022167968750068, 49.12343750000005], + [7.001464843750028, 49.17988281249998], + [6.958300781250017, 49.19462890624999], + [6.891210937500034, 49.20751953125003], + [6.84951171875008, 49.20195312499996], + [6.820703125000051, 49.173925781250034], + [6.77626953125008, 49.154150390625006], + [6.735449218750006, 49.16059570312498], + [6.607617187499983, 49.290869140625034], + [6.574707031250028, 49.31967773437506], + [6.566308593750023, 49.34619140625003], + [6.534277343750063, 49.394677734374966], + [6.458105468750006, 49.44287109375003], + [6.38222656250008, 49.45815429687502], + [6.344335937500006, 49.45273437499998], + [6.348437500000045, 49.51269531250003], + [6.37832031250008, 49.59960937499997], + [6.40673828125, 49.64497070312498], + [6.444628906250017, 49.682031249999966], + [6.484765625000023, 49.70781249999999], + [6.49375, 49.75439453124997], + [6.4873046875, 49.798486328124994], + [6.440917968750057, 49.80532226562505], + [6.32460937500008, 49.83789062500003], + [6.25605468750004, 49.87216796874998], + [6.204882812500017, 49.915136718750034], + [6.13818359375, 49.97431640625001], + [6.10976562500008, 50.03437], + [6.108300781250051, 50.09423828125003], + [6.116503906250045, 50.120996093749966], + [6.12128906250004, 50.13935546874998], + [6.175097656250074, 50.23266601562497], + [6.364453125000011, 50.31616210937503], + [6.343652343750051, 50.400244140625006], + [6.340917968750006, 50.451757812500034], + [6.294921875000057, 50.485498046874966], + [6.20302734375008, 50.499121093750006], + [6.1787109375, 50.52250976562496], + [6.168457031250057, 50.54536132812501], + [6.235937500000034, 50.59667968749997], + [6.15449218750004, 50.63725585937499], + [6.119433593750017, 50.67924804687502], + [6.005957031249977, 50.73222656249996], + [5.993945312500017, 50.75043945312504], + [6.048437500000034, 50.90488281250006], + [6.0068359375, 50.949951171875], + [5.955078125, 50.97294921874999], + [5.894726562500068, 50.98422851562506], + [5.867187500000057, 51.00566406249999], + [5.857519531250034, 51.030126953125006], + [5.868359375000011, 51.0453125], + [5.939257812500074, 51.040820312500045], + [5.961035156250063, 51.05668945312499], + [6.129980468750034, 51.14741210937501], + [6.136914062500011, 51.16484374999999], + [6.113378906250034, 51.174707031249966], + [6.082421875000023, 51.17998046874996], + [6.074804687500063, 51.199023437500045], + [6.075878906250011, 51.22412109375], + [6.16621093750004, 51.35483398437498], + [6.192871093750057, 51.41059570312498], + [6.198828125000034, 51.45], + [6.193261718750051, 51.48891601562502], + [6.1416015625, 51.55009765624996], + [6.091113281250017, 51.59892578124996], + [6.08935546875, 51.63779296874998], + [6.052734375, 51.65825195312499], + [5.948535156250017, 51.762402343749955], + [5.948730468750057, 51.80268554687501], + [6.007617187500045, 51.83398437499997], + [6.089843750000028, 51.853955078124955], + [6.1171875, 51.870410156250045], + [6.16650390625, 51.88076171875002], + [6.29707031250004, 51.85073242187502], + [6.355664062500011, 51.82465820312504], + [6.372167968749977, 51.83002929687498], + [6.425, 51.85839843749997], + [6.517578125000028, 51.853955078124955], + [6.741796875000063, 51.91088867187503], + [6.775195312500017, 51.93828125000002], + [6.800390625, 51.96738281249998], + [6.802441406250068, 51.98017578125001], + [6.715625, 52.03618164062496], + [6.712988281250063, 52.056884765625], + [6.724511718749994, 52.080224609374966], + [6.749023437500028, 52.09868164062499], + [6.800390625, 52.111230468749966], + [6.855078125000034, 52.13579101562502], + [6.977246093750068, 52.20551757812501], + [7.019628906250006, 52.266015625], + [7.03261718750008, 52.33149414062501], + [7.035156250000057, 52.38022460937498], + [7.001855468750023, 52.41899414062496], + [6.96816406250008, 52.44409179687503], + [6.922070312500011, 52.440283203125034], + [6.832519531249972, 52.44228515625002], + [6.748828125000074, 52.464013671874994], + [6.702929687500045, 52.49921874999998], + [6.69160156250004, 52.530175781249966], + [6.712402343750028, 52.549658203125034], + [6.71875, 52.573583984375034], + [6.705371093750017, 52.59765625000006], + [6.710742187500045, 52.61787109374998], + [6.74843750000008, 52.63408203125002], + [7.013183593750028, 52.63354492187497], + [7.033007812500045, 52.65136718749997], + [7.050878906250063, 52.744775390624994], + [7.117089843750051, 52.88701171875002], + [7.179492187500045, 52.966210937499994], + [7.189941406250057, 52.99951171875003], + [7.188964843750028, 53.18720703124998], + [7.197265625000028, 53.28227539062499], + [7.152050781250068, 53.32695312500002], + [7.053320312500034, 53.375830078125034], + [7.074316406250034, 53.477636718750006], + [7.107128906250068, 53.556982421875006], + [7.206445312500051, 53.65454101562497], + [7.285253906250034, 53.68134765625001], + [7.629199218750017, 53.69726562499997], + [8.00927734375, 53.69072265624999], + [8.167089843750006, 53.54340820312498], + [8.108496093750063, 53.46767578125002], + [8.200781250000034, 53.43242187500002], + [8.245214843750006, 53.44531249999997], + [8.279003906250068, 53.51118164062498], + [8.301562500000045, 53.58413085937502], + [8.333886718750051, 53.606201171875], + [8.451367187500011, 53.55170898437498], + [8.492675781249972, 53.51435546875001], + [8.495214843750063, 53.39423828124998], + [8.53847656250008, 53.55688476562497], + [8.50625, 53.670751953125006], + [8.528417968750063, 53.781103515625006], + [8.57558593750008, 53.83847656250006], + [8.618945312500045, 53.875], + [8.897753906250074, 53.83569335937503], + [9.20556640625, 53.85595703124997], + [9.321972656250011, 53.81347656250003], + [9.585351562500023, 53.600488281249966], + [9.673144531250045, 53.56562], + [9.783984375000074, 53.554638671874955], + [9.63125, 53.600195312500006], + [9.31201171875, 53.859130859375], + [9.216406249999977, 53.89121093750006], + [9.069628906250017, 53.90092773437499], + [8.978125, 53.92622070312498], + [8.92041015625, 53.96533203125006], + [8.903515625000011, 54.00029296874999], + [8.906640625000023, 54.26079101562502], + [8.8515625, 54.29956054687503], + [8.780371093750063, 54.31303710937502], + [8.736035156250011, 54.29521484375002], + [8.64492187500008, 54.29497070312499], + [8.625781250000017, 54.35395507812501], + [8.648046875, 54.39765625000001], + [8.831152343750006, 54.42753906249999], + [8.951855468750011, 54.46757812499996], + [8.95722656250004, 54.538330078125], + [8.880957031250034, 54.593945312499955], + [8.789648437500006, 54.69594726562505], + [8.682324218750068, 54.791845703125034], + [8.670312500000023, 54.903417968750034], + [8.670703125000017, 54.9033203125], + [8.857226562499989, 54.901123046875], + [8.902929687500063, 54.896923828124955], + [9.185839843750074, 54.844677734374955], + [9.254980468750034, 54.80800781250005] + ] + ], + [ + [ + [8.307714843750034, 54.786962890625034], + [8.284667968750057, 54.76708984374997], + [8.295703124999989, 54.90830078125006], + [8.405175781249994, 55.058740234374966], + [8.451464843750017, 55.05537109374998], + [8.404101562500045, 55.01474609374998], + [8.390429687500017, 54.98627929687504], + [8.371191406250006, 54.92939453124998], + [8.3798828125, 54.89985351562501], + [8.629589843750068, 54.891748046874966], + [8.600585937500028, 54.86538085937502], + [8.34736328125004, 54.84760742187504], + [8.307714843750034, 54.786962890625034] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Djibouti", + "iso_a2": "DJ", + "iso_a3": "DJI", + "iso_n3": "262", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [43.24599609375002, 11.499804687499989], + [43.159375, 11.36572265625], + [43.04863281250002, 11.1943359375], + [42.92275390625002, 10.999316406249989], + [42.84414062500002, 10.997949218749994], + [42.78300781250002, 11.00927734375], + [42.7412109375, 11.042382812499994], + [42.65498046875001, 11.078320312499997], + [42.557714843750006, 11.080761718749997], + [42.46513671875002, 11.047070312499997], + [42.30810546875, 11.005224609374991], + [42.16621093750001, 10.991601562499994], + [42.05214843750002, 10.968359375], + [41.95742187500002, 10.941015625], + [41.872167968750006, 10.955810546875], + [41.79824218750002, 10.98046875], + [41.78203125000002, 11.187792968749989], + [41.7646484375, 11.412890624999989], + [41.76650390625002, 11.589111328125], + [41.79267578125001, 11.68603515625], + [41.815625, 11.723779296874994], + [41.94960937500002, 11.857861328124997], + [41.99589843750002, 11.912353515625], + [42.14912109375001, 12.134130859374991], + [42.280371093750006, 12.324267578124989], + [42.378515625, 12.46640625], + [42.40859375000002, 12.494384765625], + [42.45, 12.521337890624991], + [42.47939453125002, 12.513623046874997], + [42.67011718750001, 12.3765625], + [42.703710937500006, 12.380322265624997], + [42.76748046875002, 12.4228515625], + [42.825292968750006, 12.5693359375], + [42.86591796875001, 12.622802734375], + [42.88330078125, 12.621289062499997], + [43.00566406250002, 12.662304687499997], + [43.11669921875, 12.70859375], + [43.130859375, 12.660449218749989], + [43.29863281250002, 12.4638671875], + [43.353515625, 12.367041015624991], + [43.409765625, 12.18994140625], + [43.38027343750002, 12.091259765624997], + [43.33671875000002, 12.027001953124994], + [43.272070312500006, 11.969531249999989], + [43.04804687500001, 11.829052734374997], + [42.79902343750001, 11.739404296874994], + [42.64003906250002, 11.560107421874989], + [42.52177734375002, 11.572167968749994], + [42.53974609375001, 11.504296875], + [42.58378906250002, 11.496777343749997], + [42.65273437500002, 11.509570312499989], + [42.78974609375001, 11.56171875], + [42.91152343750002, 11.586621093749997], + [43.04277343750002, 11.588476562499991], + [43.16171875, 11.566015625], + [43.24599609375002, 11.499804687499989] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Dominica", + "iso_a2": "DM", + "iso_a3": "DMA", + "iso_n3": "212", + "continent": "North America" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-61.281689453125, 15.2490234375], + [-61.375390625, 15.227294921875], + [-61.41572265625, 15.399853515624997], + [-61.48115234375, 15.525146484375], + [-61.469921875, 15.603466796874997], + [-61.45810546874999, 15.633105468750003], + [-61.32001953125, 15.585058593749991], + [-61.277246093749994, 15.526708984374991], + [-61.25107421874999, 15.373144531249991], + [-61.281689453125, 15.2490234375] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Denmark", + "iso_a2": "DK", + "iso_a3": "DNK", + "iso_n3": "208", + "continent": "Europe" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [11.361425781250006, 54.891650390625045], + [11.538378906250074, 54.82958984375], + [11.658105468750051, 54.83315429687502], + [11.739550781250017, 54.80742187500002], + [11.758984374999983, 54.767675781250006], + [11.765917968750074, 54.67944335937506], + [11.68037109375004, 54.653710937499966], + [11.5859375, 54.66245117187506], + [11.457421875000023, 54.628857421874955], + [11.035546875000051, 54.77309570312505], + [11.041699218750068, 54.89335937500002], + [11.058593750000028, 54.940576171874966], + [11.258496093749983, 54.95180664062502], + [11.361425781250006, 54.891650390625045] + ] + ], + [ + [ + [10.484375, 54.84755859375002], + [10.417285156250045, 54.83715820312503], + [10.34052734375004, 54.85893554687502], + [10.215625, 54.940966796875045], + [10.199902343750068, 54.962744140625034], + [10.265527343750023, 54.948828125000034], + [10.346972656250017, 54.90595703125001], + [10.413671875, 54.896826171875034], + [10.504882812500028, 54.86054687500001], + [10.484375, 54.84755859375002] + ] + ], + [ + [ + [12.549218750000051, 54.96577148437504], + [12.511035156250074, 54.95087890625001], + [12.357519531250063, 54.96181640625002], + [12.18447265625008, 54.89248046875002], + [12.11884765625004, 54.91440429687506], + [12.143652343750034, 54.95869140625001], + [12.161718750000063, 54.97480468750001], + [12.219921875000011, 54.99360351562501], + [12.258789062500028, 55.021093750000034], + [12.274023437500034, 55.064111328124994], + [12.31005859375, 55.040917968749966], + [12.417187500000068, 55.031201171874955], + [12.469531250000074, 55.017480468749994], + [12.51328125, 54.99731445312497], + [12.549218750000051, 54.96577148437504] + ] + ], + [ + [ + [10.061230468750068, 54.88637695312502], + [9.957128906249977, 54.87246093750002], + [9.903906250000063, 54.896630859374994], + [9.80625, 54.90600585937503], + [9.77119140625004, 55.059912109375034], + [9.78125, 55.06904296875001], + [9.830371093750017, 55.05825195312505], + [9.998828125000045, 54.986474609374994], + [10.057714843750063, 54.90791015624998], + [10.061230468750068, 54.88637695312502] + ] + ], + [ + [ + [10.734082031250011, 54.750732421875], + [10.689746093750017, 54.74506835937501], + [10.629492187500006, 54.826074218749994], + [10.621679687500006, 54.851416015625006], + [10.692480468750063, 54.90327148437501], + [10.738281250000057, 54.96201171874998], + [10.856738281250045, 55.052197265624955], + [10.925, 55.157861328124994], + [10.95107421875008, 55.15620117187501], + [10.920800781250023, 55.062109375000034], + [10.765234375000034, 54.799658203125034], + [10.734082031250011, 54.750732421875] + ] + ], + [ + [ + [15.087695312500017, 55.021875], + [15.050781250000057, 55.00493164062502], + [14.885546875000045, 55.03295898437506], + [14.684179687500063, 55.10224609375004], + [14.713671875000017, 55.238037109375], + [14.765332031250068, 55.296728515625034], + [15.132617187500017, 55.14453125000003], + [15.137109375000051, 55.08715820312497], + [15.087695312500017, 55.021875] + ] + ], + [ + [ + [10.645117187500006, 55.60981445312498], + [10.686816406250045, 55.5576171875], + [10.738085937500017, 55.44633789062496], + [10.819238281250023, 55.321875], + [10.785351562500068, 55.26977539062497], + [10.808398437500045, 55.203027343749966], + [10.785253906250034, 55.13339843749998], + [10.623828125000017, 55.05244140625001], + [10.44277343750008, 55.04877929687498], + [10.254589843750011, 55.08789062500006], + [9.988769531250028, 55.163183593750006], + [9.967382812500034, 55.20546875000002], + [9.93007812500008, 55.22890625], + [9.858984375000063, 55.35722656250002], + [9.860644531250045, 55.515478515625034], + [9.994238281250006, 55.535302734374966], + [10.286132812500057, 55.61083984375], + [10.353613281250034, 55.59897460937498], + [10.424023437500068, 55.56035156250002], + [10.505078125000068, 55.55805664062498], + [10.622753906250068, 55.61284179687496], + [10.645117187500006, 55.60981445312498] + ] + ], + [ + [ + [12.665722656250068, 55.596533203125006], + [12.571582031250074, 55.55400390624996], + [12.550878906250034, 55.55625], + [12.520312500000017, 55.61459960937506], + [12.569921875, 55.65009765625001], + [12.59921875, 55.68022460937502], + [12.62001953125008, 55.67934570312502], + [12.6484375, 55.646777343750045], + [12.665722656250068, 55.596533203125006] + ] + ], + [ + [ + [10.607324218750023, 55.783056640625006], + [10.590332031250028, 55.76508789062498], + [10.526953125, 55.78378906249998], + [10.520312500000074, 55.848486328125006], + [10.54433593750008, 55.906591796875034], + [10.51611328125, 55.95854492187496], + [10.547167968750017, 55.99194335937503], + [10.636328125000063, 55.91416015624998], + [10.66171875, 55.877587890624994], + [10.627343750000023, 55.833886718749966], + [10.607324218750023, 55.783056640625006] + ] + ], + [ + [ + [12.56875, 55.785058593749966], + [12.57119140625008, 55.684960937499994], + [12.545214843750017, 55.65581054687502], + [12.507031250000068, 55.63662109375002], + [12.407128906250051, 55.616259765625045], + [12.320605468750017, 55.58784179687501], + [12.243457031250017, 55.53789062499996], + [12.215039062500011, 55.46650390624998], + [12.275390625000028, 55.41425781250001], + [12.385156250000023, 55.38564453125005], + [12.413085937500028, 55.28618164062502], + [12.32246093750004, 55.23710937499999], + [12.089941406250006, 55.18813476562505], + [12.065527343750006, 55.069921875000034], + [12.073046875000017, 54.976757812499955], + [12.068847656250057, 54.909033203125034], + [12.050390625000034, 54.81533203125002], + [11.8623046875, 54.77260742187502], + [11.74091796875004, 54.91533203124996], + [11.73984375, 54.97246093749999], + [11.70361328125, 55.03916015624998], + [11.696777343750028, 55.09599609375002], + [11.653808593750057, 55.186914062499966], + [11.475878906250045, 55.211523437500006], + [11.406835937500006, 55.21474609375005], + [11.310253906250068, 55.19785156249998], + [11.286328125000068, 55.20444335937498], + [11.170703125000045, 55.32861328124997], + [11.189746093750017, 55.46562], + [11.128027343750063, 55.534765625000034], + [11.119531250000023, 55.56606445312502], + [11.120996093750051, 55.600732421874994], + [11.070312500000028, 55.62929687500002], + [11.0087890625, 55.644433593749994], + [10.978906250000051, 55.721533203125006], + [11.049609375000074, 55.74023437499997], + [11.224414062500074, 55.731201171875], + [11.275488281249977, 55.73647460937502], + [11.322265625000028, 55.752539062500006], + [11.463671875000045, 55.879296875], + [11.459570312500006, 55.9072265625], + [11.474707031249977, 55.943457031250006], + [11.627734375000074, 55.95688476562498], + [11.695898437500006, 55.90791015625004], + [11.682226562499977, 55.82949218750005], + [11.690917968749972, 55.72900390625], + [11.783593750000023, 55.70166015625003], + [11.819726562500023, 55.69765625000002], + [11.858300781250051, 55.771875], + [11.885351562500063, 55.807958984375006], + [11.922070312500011, 55.82807617187504], + [11.934570312500057, 55.895898437499994], + [11.912792968750068, 55.93730468749999], + [11.86640625000004, 55.968164062499966], + [12.039648437500063, 56.05214843750002], + [12.218945312499983, 56.11865234374997], + [12.323242187500028, 56.12211914062499], + [12.42822265625, 56.10585937500005], + [12.52578125000008, 56.083398437499994], + [12.578710937500006, 56.06406250000006], + [12.608398437500028, 56.033007812500045], + [12.542968750000028, 55.95898437500006], + [12.524804687500051, 55.91845703125006], + [12.56875, 55.785058593749966] + ] + ], + [ + [ + [11.052148437500051, 57.25253906250006], + [11.011425781250011, 57.229101562500006], + [10.873828125000045, 57.26225585937499], + [10.9345703125, 57.30859375000003], + [11.085742187500045, 57.329931640625006], + [11.174511718750011, 57.322900390624994], + [11.076855468750011, 57.27690429687496], + [11.052148437500051, 57.25253906250006] + ] + ], + [ + [ + [10.436914062500023, 57.17226562500005], + [10.338476562500063, 57.021337890625034], + [10.29609375000004, 56.999121093750034], + [10.287011718750051, 56.82294921875004], + [10.296679687500074, 56.780908203124994], + [10.282714843750057, 56.620507812499994], + [10.383593750000017, 56.55483398437502], + [10.490234375000057, 56.52050781250006], + [10.84589843750004, 56.52172851562503], + [10.882812500000028, 56.49287109375001], + [10.926171875000051, 56.44326171875002], + [10.89443359375008, 56.35903320312502], + [10.856445312500057, 56.295507812500034], + [10.753417968750028, 56.24199218749999], + [10.621191406250006, 56.20209960937501], + [10.538964843750051, 56.20034179687502], + [10.42695312500004, 56.27617187500002], + [10.37373046875004, 56.25156250000006], + [10.31875, 56.212890625], + [10.226660156250006, 56.00537109375], + [10.18300781250008, 55.86518554687504], + [10.159375, 55.85380859375002], + [10.107324218750023, 55.87446289062498], + [10.017382812500017, 55.876074218750034], + [9.903710937500023, 55.84282226562502], + [9.962011718750006, 55.813085937500006], + [10.02363281250004, 55.76142578125004], + [9.9990234375, 55.73554687500001], + [9.899023437500063, 55.70756835937499], + [9.810351562500017, 55.650976562500006], + [9.773242187500017, 55.608154296875], + [9.661425781250045, 55.55747070312506], + [9.591113281250017, 55.49321289062502], + [9.625585937500034, 55.41357421875006], + [9.640234375, 55.34365234375002], + [9.670996093750063, 55.26640624999999], + [9.643261718749983, 55.20473632812505], + [9.504785156250023, 55.11625976562496], + [9.453710937500006, 55.03955078125006], + [9.572363281250034, 55.04052734375], + [9.64541015625008, 55.022802734375006], + [9.688183593750011, 55.00014648437502], + [9.732324218750023, 54.96801757812506], + [9.705273437500011, 54.928320312500034], + [9.739746093750028, 54.82553710937498], + [9.725, 54.82553710937498], + [9.661230468750006, 54.834375], + [9.615820312500006, 54.85541992187501], + [9.49873046875004, 54.84042968749998], + [9.341992187499983, 54.806298828124966], + [9.254980468750034, 54.80800781250005], + [9.185839843750074, 54.844677734374955], + [8.902929687500063, 54.896923828124955], + [8.857226562499989, 54.901123046875], + [8.670703125000017, 54.9033203125], + [8.670312500000023, 54.903417968750034], + [8.661425781250074, 54.98593750000006], + [8.638281250000063, 55.04555664062502], + [8.572949218749983, 55.13427734375], + [8.669824218750023, 55.155664062499994], + [8.651074218750011, 55.328564453124955], + [8.61591796875004, 55.41821289062503], + [8.345312500000063, 55.510302734375045], + [8.132128906250074, 55.59980468749998], + [8.181347656250068, 55.90117187499999], + [8.202343750000068, 55.98237304687501], + [8.121484375000023, 56.13989257812506], + [8.129882812500057, 56.32119140625002], + [8.16396484375008, 56.60688476562498], + [8.231738281250017, 56.61806640625002], + [8.281445312500011, 56.61669921875003], + [8.47314453125, 56.56542968750006], + [8.552929687500011, 56.560302734375], + [8.60761718750004, 56.51450195312498], + [8.671679687500045, 56.49565429687496], + [8.718066406250074, 56.544287109375006], + [8.736132812500017, 56.62744140625], + [8.88808593750008, 56.73505859374998], + [8.99453125000008, 56.774804687499994], + [9.06708984375004, 56.79384765625005], + [9.14033203125004, 56.75043945312501], + [9.196386718750006, 56.70166015625], + [9.20966796875004, 56.80839843749999], + [9.2548828125, 57.01171875000003], + [9.110449218750063, 57.043652343749955], + [8.992773437499977, 57.01611328125003], + [8.876074218750006, 56.88725585937499], + [8.771972656250028, 56.72529296875004], + [8.603125, 56.71040039062501], + [8.468359375, 56.66455078125], + [8.3466796875, 56.71210937500001], + [8.268261718750011, 56.754003906250006], + [8.26630859375004, 56.815332031249994], + [8.284082031250023, 56.85234374999999], + [8.427050781250017, 56.98442382812496], + [8.618554687500051, 57.11127929687498], + [8.8115234375, 57.11005859374998], + [8.952246093750006, 57.15058593749998], + [9.036328125000068, 57.155419921874994], + [9.298828125, 57.14653320312496], + [9.43359375, 57.17431640625003], + [9.554296874999977, 57.23247070312496], + [9.815136718750011, 57.478417968749994], + [9.96230468750008, 57.580957031249994], + [10.259082031250045, 57.61704101562498], + [10.533300781250034, 57.73540039062502], + [10.609960937500034, 57.73691406249998], + [10.480957031250028, 57.64868164062503], + [10.460253906250074, 57.61455078125002], + [10.444628906250017, 57.56220703125001], + [10.537109375000028, 57.44853515625002], + [10.517578125000028, 57.379345703124955], + [10.52412109375004, 57.24321289062502], + [10.436914062500023, 57.17226562500005] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Dominican Rep.", + "iso_a2": "DO", + "iso_a3": "DOM", + "iso_n3": "214", + "continent": "North America" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-71.768310546875, 18.03916015624999], + [-71.76376953124999, 18.20395507812499], + [-71.737255859375, 18.270800781250003], + [-71.7619140625, 18.34130859375], + [-71.87255859375, 18.416210937499997], + [-71.940380859375, 18.512597656249994], + [-72.000390625, 18.597900390625], + [-71.98686523437499, 18.6103515625], + [-71.86650390624999, 18.614160156249994], + [-71.82421875, 18.6455078125], + [-71.74321289062499, 18.73291015625], + [-71.72705078125, 18.80322265625], + [-71.733642578125, 18.856396484374997], + [-71.786376953125, 18.92001953124999], + [-71.80712890625, 18.987011718749997], + [-71.74204101562499, 19.04550781249999], + [-71.65703124999999, 19.130761718749994], + [-71.64531249999999, 19.163525390624997], + [-71.647216796875, 19.195947265624994], + [-71.746484375, 19.285839843749997], + [-71.753173828125, 19.324462890625], + [-71.70693359375, 19.42197265624999], + [-71.71147460937499, 19.486572265625], + [-71.757421875, 19.688183593749997], + [-71.779248046875, 19.718164062499994], + [-71.735107421875, 19.735107421875], + [-71.7060546875, 19.795166015625], + [-71.6673828125, 19.8486328125], + [-71.615966796875, 19.87744140625], + [-71.557763671875, 19.89536132812499], + [-71.44169921874999, 19.893994140624997], + [-71.28134765624999, 19.847363281249997], + [-71.2359375, 19.84814453125], + [-71.08193359375, 19.89047851562499], + [-70.95415039062499, 19.913964843749994], + [-70.83388671875, 19.887255859375003], + [-70.78525390624999, 19.850878906250003], + [-70.6859375, 19.793261718750003], + [-70.636181640625, 19.775634765625], + [-70.47934570312499, 19.776953125], + [-70.43642578125, 19.771240234375], + [-70.30473632812499, 19.676074218750003], + [-70.19384765625, 19.63803710937499], + [-70.12944335937499, 19.636132812499994], + [-70.0140625, 19.67294921874999], + [-69.95683593749999, 19.671875], + [-69.89121093749999, 19.589746093749994], + [-69.8783203125, 19.473291015624994], + [-69.8234375, 19.367138671874997], + [-69.739404296875, 19.29921875], + [-69.324951171875, 19.327734375], + [-69.23247070312499, 19.27182617187499], + [-69.26425781249999, 19.22568359374999], + [-69.32275390625, 19.201074218749994], + [-69.5197265625, 19.21201171874999], + [-69.60595703125, 19.206494140624997], + [-69.6232421875, 19.16049804687499], + [-69.62363281249999, 19.117822265624994], + [-69.50834960937499, 19.107617187499997], + [-69.395263671875, 19.086083984374994], + [-69.280224609375, 19.051904296874994], + [-69.163037109375, 19.028466796874994], + [-69.03129882812499, 19.01318359375], + [-68.9013671875, 18.988476562499997], + [-68.684765625, 18.90478515625], + [-68.44541015624999, 18.714453125], + [-68.38139648437499, 18.671142578125], + [-68.33916015624999, 18.611523437499997], + [-68.35927734375, 18.5380859375], + [-68.44482421875, 18.417724609375], + [-68.49321289062499, 18.37900390624999], + [-68.56376953124999, 18.35546875], + [-68.61220703125, 18.30625], + [-68.658837890625, 18.22202148437499], + [-68.68740234375, 18.21494140624999], + [-68.72099609374999, 18.218408203124994], + [-68.778466796875, 18.26611328125], + [-68.81953125, 18.339306640624997], + [-68.9349609375, 18.408007812500003], + [-69.072265625, 18.39921875], + [-69.27451171874999, 18.43984375], + [-69.39697265625, 18.420117187499997], + [-69.51943359375, 18.415673828124994], + [-69.6447265625, 18.43637695312499], + [-69.770654296875, 18.443554687499997], + [-69.89638671875, 18.417724609375], + [-70.018310546875, 18.37363281249999], + [-70.06333007812499, 18.345654296874997], + [-70.1416015625, 18.277099609375], + [-70.18310546875, 18.251757812500003], + [-70.479931640625, 18.21728515625], + [-70.5654296875, 18.267578125], + [-70.644677734375, 18.336230468750003], + [-70.75883789062499, 18.345605468749994], + [-70.92431640625, 18.29248046875], + [-71.02783203125, 18.273193359375], + [-71.069970703125, 18.25034179687499], + [-71.0822265625, 18.224365234375], + [-71.08261718749999, 18.128369140624997], + [-71.10600585937499, 18.070019531249997], + [-71.26728515625, 17.849609375], + [-71.35830078125, 17.694140625], + [-71.395703125, 17.64609375], + [-71.43896484375, 17.63559570312499], + [-71.51835937499999, 17.725], + [-71.56904296875, 17.757373046875003], + [-71.63173828125, 17.773632812499997], + [-71.65830078124999, 17.82114257812499], + [-71.6572265625, 17.888671875], + [-71.67373046875, 17.9541015625], + [-71.71245117187499, 18.00546875], + [-71.768310546875, 18.03916015624999] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Algeria", + "iso_a2": "DZ", + "iso_a3": "DZA", + "iso_n3": "012", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [8.576562500000023, 36.93720703125], + [8.59765625, 36.88388671875], + [8.601269531250011, 36.833935546875], + [8.506738281250023, 36.7875], + [8.444238281250023, 36.7607421875], + [8.36962890625, 36.63251953125], + [8.230761718750017, 36.545263671875], + [8.207617187500006, 36.518945312499994], + [8.208789062500017, 36.4951171875], + [8.302734375, 36.455615234374996], + [8.333984375, 36.4181640625], + [8.348730468750006, 36.36796875], + [8.306738281250006, 36.188769531249996], + [8.2802734375, 36.0509765625], + [8.245703125, 35.870556640625], + [8.2470703125, 35.801806640624996], + [8.282910156250011, 35.719287109374996], + [8.318066406250011, 35.654931640624994], + [8.329003906250023, 35.5822265625], + [8.31640625, 35.403125], + [8.35986328125, 35.299609375], + [8.394238281250011, 35.203857421875], + [8.312109375, 35.084619140624994], + [8.27685546875, 34.9794921875], + [8.254687500000017, 34.828955078125], + [8.24560546875, 34.73408203125], + [8.192773437500023, 34.646289062499996], + [8.123437500000023, 34.563916015625], + [8.045605468750011, 34.5126953125], + [7.949414062500011, 34.468701171875], + [7.838281250000023, 34.410302734374994], + [7.74853515625, 34.2544921875], + [7.554492187500017, 34.125], + [7.513867187500011, 34.080517578125], + [7.49560546875, 33.976513671875], + [7.500195312500011, 33.832470703125], + [7.534375, 33.717919921874994], + [7.627539062500006, 33.548632812499996], + [7.709179687500011, 33.3623046875], + [7.731347656250023, 33.268505859375], + [7.7626953125, 33.23310546875], + [7.877246093750017, 33.172119140625], + [8.075585937500023, 33.0890625], + [8.1125, 33.055322265624994], + [8.2109375, 32.926708984375], + [8.30419921875, 32.6962890625], + [8.333398437500023, 32.543603515624994], + [8.51513671875, 32.422314453125], + [8.682910156250017, 32.310449218749994], + [8.844042968750017, 32.212109375], + [9.018945312500023, 32.105371093749994], + [9.044042968750006, 32.07236328125], + [9.102343750000017, 31.846142578124997], + [9.160253906250006, 31.621337890625], + [9.224023437500023, 31.373681640624994], + [9.287890625000017, 31.125341796875], + [9.36328125, 30.832910156249994], + [9.406054687500017, 30.666796875], + [9.4580078125, 30.465380859374996], + [9.51875, 30.229394531249994], + [9.420996093750006, 30.179296875], + [9.310253906250011, 30.115234375], + [9.391015625000023, 29.99365234375], + [9.546191406250017, 29.795947265624996], + [9.64013671875, 29.636425781249997], + [9.672656250000017, 29.5669921875], + [9.745898437500017, 29.368945312499996], + [9.805273437500006, 29.176953125], + [9.820703125000023, 29.114794921874996], + [9.842578125000017, 28.966992187499997], + [9.815625, 28.560205078124994], + [9.858203125000017, 28.043310546875], + [9.916015625, 27.785693359374996], + [9.825292968750006, 27.552978515625], + [9.74755859375, 27.330859375], + [9.752539062500006, 27.2193359375], + [9.79541015625, 27.044775390625], + [9.837109375000011, 26.915820312499996], + [9.894433593750023, 26.847949218749996], + [9.883203125000023, 26.630810546874997], + [9.859375, 26.551953125], + [9.684960937500023, 26.438232421875], + [9.491406250000011, 26.333740234375], + [9.437890625000023, 26.245507812499994], + [9.42236328125, 26.1470703125], + [9.4482421875, 26.067138671875], + [9.58125, 25.89013671875], + [9.781054687500017, 25.624267578125], + [10.000683593750011, 25.332080078125003], + [10.01904296875, 25.258544921875], + [10.028125, 25.051025390625], + [10.119531250000023, 24.790234375], + [10.218652343750023, 24.676220703124997], + [10.255859375, 24.591015625], + [10.32578125, 24.530224609374997], + [10.395898437500023, 24.485595703125], + [10.43896484375, 24.480224609375], + [10.686132812500006, 24.55136718749999], + [11.108203125000017, 24.434033203124997], + [11.507617187500017, 24.314355468749994], + [11.536914062500017, 24.290820312500003], + [11.624218750000011, 24.139697265625003], + [11.766992187500023, 23.892578125], + [11.873046875, 23.69482421875], + [11.967871093750006, 23.517871093750003], + [11.45, 23.212597656249997], + [10.932226562500006, 22.907275390625003], + [10.414355468750017, 22.602001953124997], + [9.896484375, 22.29672851562499], + [9.378710937500017, 21.99140625], + [8.8609375, 21.68613281249999], + [8.343066406250017, 21.380859375], + [7.8251953125, 21.075585937499994], + [7.481738281250017, 20.873095703125003], + [7.263378906250011, 20.694482421874994], + [6.989355468750006, 20.470507812500003], + [6.730664062500011, 20.248046875], + [6.527050781250011, 20.072949218749997], + [6.263378906250011, 19.846142578124997], + [6.130664062500017, 19.731982421875003], + [5.836621093750011, 19.479150390624994], + [5.748339843750017, 19.434228515624994], + [5.358691406250017, 19.359521484374994], + [5.001367187500023, 19.291064453125003], + [4.671289062500023, 19.227783203125], + [4.445703125000023, 19.184521484374997], + [4.227636718750006, 19.142773437499997], + [3.91015625, 19.083740234375], + [3.683496093750023, 19.04160156249999], + [3.438769531250017, 18.996142578125003], + [3.40087890625, 18.988427734374994], + [3.3564453125, 18.986621093750003], + [3.323437500000011, 18.98837890624999], + [3.255957031250006, 19.01328125], + [3.174218750000023, 19.072900390624994], + [3.119726562500006, 19.103173828124994], + [3.106054687500006, 19.150097656249997], + [3.137890625000011, 19.212158203125], + [3.17724609375, 19.26816406249999], + [3.1923828125, 19.312060546875003], + [3.219628906250023, 19.345410156249997], + [3.25439453125, 19.372607421875003], + [3.255859375, 19.4109375], + [3.22705078125, 19.473583984374997], + [3.20166015625, 19.56040039062499], + [3.202734375, 19.718310546875003], + [3.203417968750017, 19.770751953125], + [3.203710937500006, 19.789697265624994], + [3.130273437500023, 19.85019531249999], + [2.992480468750017, 19.91660156249999], + [2.86572265625, 19.955957031249994], + [2.807910156250017, 19.969433593749997], + [2.667773437500017, 19.992919921875], + [2.47421875, 20.03500976562499], + [2.406152343750023, 20.063867187499994], + [2.280859375, 20.21030273437499], + [2.219335937500006, 20.247802734375], + [1.928808593750006, 20.272705078125], + [1.832421875000023, 20.296875], + [1.753222656250017, 20.331591796875003], + [1.685449218750023, 20.378369140624997], + [1.647363281250023, 20.45883789062499], + [1.636035156250017, 20.524365234374997], + [1.610644531250017, 20.555566406249994], + [1.290234375000011, 20.713574218749997], + [1.208886718750023, 20.767285156249997], + [1.165722656250011, 20.817431640625003], + [1.1640625, 20.891308593749997], + [1.172753906250023, 20.981982421875003], + [1.1591796875, 21.0625], + [1.1455078125, 21.102246093749997], + [0.999414062500023, 21.19775390625], + [0.671875, 21.411865234375], + [0.344433593750011, 21.6259765625], + [0.016992187500023, 21.840136718750003], + [-0.310546875, 22.05419921875], + [-0.637988281249989, 22.268310546875], + [-0.965478515624994, 22.482470703125003], + [-1.29296875, 22.696533203125], + [-1.620410156249989, 22.91064453125], + [-1.947900390624994, 23.124804687500003], + [-2.275390625, 23.3388671875], + [-2.602929687499994, 23.553027343750003], + [-2.930371093749983, 23.767138671875003], + [-3.257861328124989, 23.98125], + [-3.585351562499994, 24.195361328125003], + [-3.912792968749983, 24.409472656250003], + [-4.240332031249977, 24.62353515625], + [-4.516992187499994, 24.804492187500003], + [-4.822607421874977, 24.99560546875], + [-5.049511718749983, 25.135449218749997], + [-5.275, 25.27451171874999], + [-5.516943359374977, 25.423779296874997], + [-5.674511718749983, 25.51640625], + [-5.862548828125, 25.627001953125003], + [-6.050585937499989, 25.737597656250003], + [-6.238671875, 25.848193359375003], + [-6.426708984374983, 25.958789062500003], + [-6.61474609375, 26.06943359375], + [-6.802832031249977, 26.179980468749996], + [-6.990869140624994, 26.290576171874996], + [-7.178906249999983, 26.401171875], + [-7.366992187499989, 26.511767578124996], + [-7.555078125, 26.622363281249996], + [-7.743115234374983, 26.732958984374996], + [-7.93115234375, 26.843554687499996], + [-8.119238281249977, 26.954150390624996], + [-8.307275390624994, 27.064746093749996], + [-8.495312499999983, 27.175341796874996], + [-8.683349609375, 27.2859375], + [-8.683349609375, 27.490234375], + [-8.683349609375, 27.656445312499997], + [-8.683349609375, 27.900390625], + [-8.683349609375, 28.112011718749997], + [-8.683349609375, 28.323681640624997], + [-8.683349609375, 28.46923828125], + [-8.683349609375, 28.620751953124994], + [-8.678417968749983, 28.689404296874997], + [-8.659912109375, 28.718603515625], + [-8.558349609375, 28.767871093749996], + [-8.399316406249994, 28.880175781249996], + [-8.340478515624994, 28.93017578125], + [-8.265185546874989, 28.980517578124996], + [-7.998925781249994, 29.132421875], + [-7.94384765625, 29.174755859374997], + [-7.685156249999977, 29.349511718749994], + [-7.624609374999977, 29.375195312499997], + [-7.485742187499994, 29.392236328124994], + [-7.427685546874983, 29.425], + [-7.349755859374994, 29.4947265625], + [-7.234912109374989, 29.574902343749997], + [-7.160205078124989, 29.612646484375], + [-7.142431640624977, 29.619580078124997], + [-7.094921874999983, 29.625195312499997], + [-6.855566406249977, 29.601611328124996], + [-6.755126953125, 29.583837890625], + [-6.635351562499977, 29.568798828124997], + [-6.597753906249977, 29.578955078125], + [-6.565673828125, 29.603857421875], + [-6.520556640624989, 29.659863281249997], + [-6.510693359374983, 29.726025390624997], + [-6.507910156249977, 29.7837890625], + [-6.500878906249994, 29.809130859374996], + [-6.479736328125, 29.820361328124996], + [-6.427636718749994, 29.816113281249997], + [-6.357617187499983, 29.808300781249997], + [-6.214794921874983, 29.810693359374994], + [-6.16650390625, 29.8189453125], + [-6.004296875, 29.83125], + [-5.775, 29.869042968749994], + [-5.593310546874989, 29.91796875], + [-5.448779296874989, 29.956933593749994], + [-5.293652343749983, 30.058642578124996], + [-5.180126953124983, 30.166162109374994], + [-5.061914062499994, 30.326416015625], + [-4.96826171875, 30.465380859374996], + [-4.778515624999983, 30.552392578124994], + [-4.61962890625, 30.604785156249996], + [-4.529150390624977, 30.625537109374996], + [-4.322851562499977, 30.698876953124994], + [-4.148779296874977, 30.8095703125], + [-3.9853515625, 30.913525390624997], + [-3.860058593749983, 30.92724609375], + [-3.702001953124977, 30.944482421874994], + [-3.666796874999989, 30.964013671874994], + [-3.626904296874983, 31.000927734374997], + [-3.62451171875, 31.065771484375], + [-3.672509765624994, 31.111376953124996], + [-3.730175781249983, 31.135400390624994], + [-3.77099609375, 31.161816406249997], + [-3.811816406249989, 31.1666015625], + [-3.833398437499994, 31.197802734374996], + [-3.821386718749977, 31.25546875], + [-3.815136718749983, 31.308837890625], + [-3.789160156249977, 31.36181640625], + [-3.796435546874989, 31.437109375], + [-3.837109374999983, 31.512353515624994], + [-3.849560546874983, 31.56640625], + [-3.8466796875, 31.619873046875], + [-3.826757812499977, 31.661914062499996], + [-3.768164062499977, 31.68955078125], + [-3.700244140624989, 31.700097656249994], + [-3.604589843749977, 31.686767578125], + [-3.439794921874977, 31.704541015624997], + [-3.017382812499989, 31.834277343749996], + [-2.988232421874983, 31.87421875], + [-2.961132812499983, 31.96396484375], + [-2.930859374999983, 32.042529296874996], + [-2.88720703125, 32.06884765625], + [-2.863427734374994, 32.07470703125], + [-2.722607421874983, 32.095751953124996], + [-2.523242187499989, 32.12568359375], + [-2.448388671874994, 32.12998046875], + [-2.23125, 32.121337890625], + [-2.072802734374989, 32.115039062499996], + [-1.816992187499977, 32.104785156249996], + [-1.63515625, 32.099560546875], + [-1.47705078125, 32.094873046874994], + [-1.275341796874983, 32.089013671874994], + [-1.225927734374977, 32.107226562499996], + [-1.225927734374977, 32.16455078125], + [-1.262109375, 32.271142578124994], + [-1.240332031249977, 32.33759765625], + [-1.16259765625, 32.399169921875], + [-1.065527343749977, 32.468310546874996], + [-1.111035156249983, 32.552294921874996], + [-1.188232421875, 32.60849609375], + [-1.29638671875, 32.675683593749994], + [-1.352148437499977, 32.703369140625], + [-1.45, 32.784814453124994], + [-1.510009765625, 32.87763671875], + [-1.550732421874983, 33.073583984375], + [-1.625097656249977, 33.183349609375], + [-1.67919921875, 33.318652343749996], + [-1.63125, 33.566748046875], + [-1.702978515624977, 33.716845703124996], + [-1.714111328125, 33.7818359375], + [-1.714697265624977, 33.858203125], + [-1.692675781249989, 33.990283203124996], + [-1.706933593749994, 34.176074218749996], + [-1.791796874999989, 34.367919921875], + [-1.751855468749994, 34.433251953124994], + [-1.733300781249994, 34.467041015625], + [-1.739453124999983, 34.49609375], + [-1.816601562499983, 34.557080078125], + [-1.849658203124989, 34.607324218749994], + [-1.832421875, 34.654638671875], + [-1.792187499999983, 34.723193359374996], + [-1.795605468749983, 34.751904296875], + [-1.9208984375, 34.835546875], + [-2.131787109374983, 34.970849609374994], + [-2.190771484374977, 35.02978515625], + [-2.219628906249994, 35.10419921875], + [-2.017773437499983, 35.08505859375], + [-1.913281249999983, 35.09423828125], + [-1.673632812499989, 35.18310546875], + [-1.483740234374977, 35.303076171875], + [-1.335839843749994, 35.3642578125], + [-1.205371093749989, 35.495751953124994], + [-1.087695312499989, 35.578857421875], + [-0.91748046875, 35.668408203125], + [-0.426123046874977, 35.8615234375], + [-0.350781249999983, 35.863183593749994], + [-0.189160156249983, 35.819091796875], + [-0.048242187499994, 35.8328125], + [0.047949218750006, 35.900537109374994], + [0.151660156250017, 36.063134765624994], + [0.312207031250011, 36.162353515625], + [0.514941406250017, 36.26181640625], + [0.790820312500017, 36.35654296875], + [0.9716796875, 36.4439453125], + [1.257226562500023, 36.519580078124996], + [1.974511718750023, 36.567578125], + [2.342871093750006, 36.610302734375], + [2.593359375, 36.60068359375], + [2.846484375000017, 36.7388671875], + [2.972851562500011, 36.784472656249996], + [3.5205078125, 36.7951171875], + [3.779003906250011, 36.89619140625], + [4.758105468750017, 36.896337890625], + [4.877832031250023, 36.86240234375], + [4.995410156250017, 36.808056640625], + [5.195605468750017, 36.676806640624996], + [5.29541015625, 36.648242187499996], + [5.424609375000017, 36.675439453124994], + [5.725488281250023, 36.799609375], + [6.064746093750017, 36.8642578125], + [6.249121093750006, 36.938330078125], + [6.327832031250011, 37.046044921874994], + [6.486523437500011, 37.085742187499996], + [6.575878906250011, 37.00302734375], + [6.927539062500017, 36.91943359375], + [7.143457031250023, 36.943359375], + [7.238476562500011, 36.968505859375], + [7.204296875000011, 37.0923828125], + [7.432421875000017, 37.05927734375], + [7.607714843750017, 36.999755859375], + [7.791601562500006, 36.880273437499994], + [7.910449218750017, 36.856347656249994], + [8.127148437500011, 36.9103515625], + [8.576562500000023, 36.93720703125] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Ecuador", + "iso_a2": "EC", + "iso_a3": "ECU", + "iso_n3": "218", + "continent": "South America" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-80.131591796875, -2.973144531249957], + [-80.15068359374999, -3.01171875], + [-80.24570312499998, -3.008300781250014], + [-80.27294921875003, -2.995898437499974], + [-80.27216796874995, -2.951757812499963], + [-80.24980468750002, -2.81191406249998], + [-80.22368164062502, -2.753125], + [-80.14570312499995, -2.696289062499957], + [-80.08076171874995, -2.668847656249966], + [-79.99726562499998, -2.673828125], + [-79.90903320312495, -2.725585937499972], + [-80.01323242187496, -2.819531250000026], + [-80.07119140624994, -2.833789062499989], + [-80.09340820312494, -2.845898437499969], + [-80.131591796875, -2.973144531249957] + ] + ], + [ + [ + [-90.42392578125, -1.339941406250034], + [-90.46440429687499, -1.341992187500011], + [-90.51953124999994, -1.299121093749974], + [-90.47719726562494, -1.22099609374996], + [-90.43198242187498, -1.239843749999977], + [-90.39873046874993, -1.262304687500034], + [-90.37915039062494, -1.292285156250003], + [-90.42392578125, -1.339941406250034] + ] + ], + [ + [ + [-89.41889648437498, -0.911035156249966], + [-89.53662109375, -0.952343750000026], + [-89.57729492187502, -0.933789062499983], + [-89.60263671875003, -0.913476562500023], + [-89.60859374999998, -0.888574218750009], + [-89.54345703124997, -0.826855468749955], + [-89.47993164062498, -0.793359374999966], + [-89.42314453124996, -0.722265624999963], + [-89.31840820312493, -0.68007812499998], + [-89.28784179687503, -0.689843750000023], + [-89.26743164062503, -0.70458984375], + [-89.259375, -0.72841796874998], + [-89.29487304687495, -0.785937499999974], + [-89.35834960937498, -0.82607421874998], + [-89.41889648437498, -0.911035156249966] + ] + ], + [ + [ + [-90.33486328125, -0.771582031249977], + [-90.38710937499997, -0.77333984374998], + [-90.54213867187502, -0.676464843749955], + [-90.53168945312493, -0.581445312499966], + [-90.46972656250003, -0.517382812499974], + [-90.26938476562498, -0.48466796874996], + [-90.18530273437497, -0.544824218749966], + [-90.19272460937498, -0.658789062500006], + [-90.26108398437498, -0.741992187499989], + [-90.31542968750003, -0.75722656249998], + [-90.33486328125, -0.771582031249977] + ] + ], + [ + [ + [-91.42597656249995, -0.460839843749994], + [-91.5263671875, -0.478222656249983], + [-91.61074218749994, -0.44394531250002], + [-91.64658203124998, -0.390820312500026], + [-91.654150390625, -0.3109375], + [-91.64667968749998, -0.284472656249946], + [-91.46015625000001, -0.255664062500031], + [-91.39936523437495, -0.322460937499955], + [-91.39995117187499, -0.420898437500028], + [-91.42597656249995, -0.460839843749994] + ] + ], + [ + [ + [-90.57392578124993, -0.333984375], + [-90.620458984375, -0.364257812499943], + [-90.80903320312495, -0.329394531249946], + [-90.8677734375, -0.271386718750037], + [-90.82036132812496, -0.192187499999974], + [-90.78037109374998, -0.160449218749989], + [-90.66752929687499, -0.189843750000037], + [-90.5533203125, -0.278417968749963], + [-90.57392578124993, -0.333984375] + ] + ], + [ + [ + [-91.27216796874998, 0.025146484374986], + [-91.21005859375003, -0.039306640625], + [-91.17622070312498, -0.223046874999952], + [-90.97553710937495, -0.416894531250009], + [-90.95063476562493, -0.52519531249996], + [-90.96845703125001, -0.575585937500009], + [-90.95893554687493, -0.595312500000034], + [-90.86254882812503, -0.67177734374998], + [-90.799658203125, -0.752050781249991], + [-90.90551757812497, -0.94052734375002], + [-91.13105468750001, -1.019628906249977], + [-91.37153320312498, -1.016992187499966], + [-91.41904296874998, -0.996679687500006], + [-91.48354492187497, -0.924609374999974], + [-91.49541015624999, -0.860937499999977], + [-91.45830078124999, -0.799511718749983], + [-91.33408203124998, -0.70625], + [-91.14467773437494, -0.62285156249996], + [-91.120947265625, -0.559082031250028], + [-91.19702148437494, -0.49697265624998], + [-91.24951171874997, -0.373632812499991], + [-91.36918945312493, -0.287207031249977], + [-91.42885742187502, -0.023388671874955], + [-91.46870117187495, -0.01030273437496], + [-91.55, -0.046679687500003], + [-91.590087890625, -0.01479492187498], + [-91.59682617187497, 0.002099609374994], + [-91.50917968749994, 0.062255859374986], + [-91.49101562499999, 0.105175781250026], + [-91.36137695312496, 0.125830078124977], + [-91.30576171874998, 0.091406249999977], + [-91.27216796874998, 0.025146484374986] + ] + ], + [ + [ + [-78.90922851562502, 1.252783203124977], + [-78.965625, 1.245361328124972], + [-78.99169921875003, 1.293212890625043], + [-78.92324218749994, 1.348925781250017], + [-78.89980468749997, 1.359765625], + [-78.90922851562502, 1.252783203124977] + ] + ], + [ + [ + [-78.31210937499995, 1.046093750000054], + [-78.1806640625, 0.968554687499974], + [-78.03701171874997, 0.89873046874996], + [-77.82954101562495, 0.825390625000026], + [-77.702880859375, 0.837841796874997], + [-77.673193359375, 0.782226562500028], + [-77.64863281249998, 0.7236328125], + [-77.601318359375, 0.689501953124974], + [-77.52612304687497, 0.660351562499983], + [-77.48139648437501, 0.651171874999974], + [-77.46767578124997, 0.636523437500017], + [-77.42275390624997, 0.42485351562496], + [-77.396337890625, 0.393896484374963], + [-77.29267578124993, 0.360400390624974], + [-77.16572265625001, 0.347753906249977], + [-77.11411132812498, 0.355078124999963], + [-77.00244140624994, 0.296240234374963], + [-76.92011718749995, 0.268505859374997], + [-76.82934570312494, 0.24775390625004], + [-76.767724609375, 0.24165039062504], + [-76.73930664062499, 0.250830078125034], + [-76.72900390625003, 0.272119140625023], + [-76.67851562499996, 0.26816406250002], + [-76.60302734375003, 0.240966796874986], + [-76.49462890624997, 0.23544921875002], + [-76.42729492187502, 0.261230468750028], + [-76.41796874999997, 0.303906250000011], + [-76.41337890624993, 0.378857421875011], + [-76.38818359374994, 0.404980468749997], + [-76.31103515624997, 0.448486328124986], + [-76.27060546874998, 0.439404296874997], + [-76.06791992187499, 0.345556640624977], + [-76.02617187500002, 0.31308593750002], + [-75.97485351562494, 0.24775390625004], + [-75.87978515624994, 0.150976562500034], + [-75.77666015624999, 0.08925781249998], + [-75.61733398437494, 0.062890625000037], + [-75.46396484374995, -0.038427734375006], + [-75.28447265624999, -0.10654296875002], + [-75.34047851562494, -0.1421875], + [-75.39838867187501, -0.145996093749986], + [-75.47597656250002, -0.157128906250023], + [-75.58374023437503, -0.122851562499974], + [-75.62626953124999, -0.122851562499974], + [-75.63203125000001, -0.157617187500037], + [-75.56059570312502, -0.200097656249994], + [-75.49106445312498, -0.24833984374996], + [-75.46596679687502, -0.32177734375], + [-75.42470703124997, -0.408886718749983], + [-75.32524414062493, -0.506542968749983], + [-75.26323242187502, -0.555371093749983], + [-75.259375, -0.59013671874996], + [-75.27871093749997, -0.653906249999977], + [-75.28359375, -0.707128906249991], + [-75.24960937499998, -0.951855468750026], + [-75.27241210937493, -0.966796874999957], + [-75.30917968749995, -0.968066406249946], + [-75.34819335937499, -0.966796874999957], + [-75.38012695312503, -0.94023437499996], + [-75.40805664062503, -0.92431640625], + [-75.42041015624997, -0.962207031250003], + [-75.44916992187495, -1.071191406249994], + [-75.51386718750001, -1.316308593750023], + [-75.570556640625, -1.53125], + [-75.64165039062502, -1.60732421874998], + [-75.74453125000002, -1.72812], + [-75.88544921874995, -1.893457031250009], + [-76.08979492187501, -2.133105468749974], + [-76.24091796874998, -2.243945312500003], + [-76.36015625000002, -2.331347656249946], + [-76.49936523437495, -2.432324218750011], + [-76.6791015625, -2.562597656249991], + [-76.88076171874994, -2.635937500000011], + [-77.16147460937503, -2.737695312499952], + [-77.36005859374998, -2.809667968749963], + [-77.50649414062497, -2.859960937499991], + [-77.65898437499996, -2.912402343750017], + [-77.860595703125, -2.981640625000011], + [-77.93847656249994, -3.046972656249991], + [-78.06791992187496, -3.20683593749996], + [-78.12822265624999, -3.283886718750026], + [-78.18330078125001, -3.350195312499949], + [-78.19462890625002, -3.38046875], + [-78.18745117187495, -3.399804687500023], + [-78.16098632812498, -3.432128906249943], + [-78.15849609375002, -3.465136718750003], + [-78.19487304687496, -3.485839843749957], + [-78.22631835937497, -3.489160156250023], + [-78.240380859375, -3.472558593750009], + [-78.25073242187497, -3.436132812499963], + [-78.28417968749994, -3.399023437499949], + [-78.32304687499996, -3.388281249999977], + [-78.345361328125, -3.397363281249966], + [-78.347265625, -3.43125], + [-78.39804687499998, -3.594824218749963], + [-78.39995117187499, -3.674316406249986], + [-78.42143554687493, -3.705761718749997], + [-78.41977539062495, -3.776855468750014], + [-78.471044921875, -3.843066406250003], + [-78.49345703124996, -3.902050781250026], + [-78.50908203124993, -3.952148437500014], + [-78.55043945312502, -3.986914062499991], + [-78.56513671874998, -4.041601562500034], + [-78.60336914062498, -4.157324218749977], + [-78.64799804687499, -4.248144531250006], + [-78.67939453125001, -4.32587890625004], + [-78.68515625, -4.383984374999969], + [-78.66123046875003, -4.425097656250003], + [-78.65292968750003, -4.458203125], + [-78.67446289062497, -4.517675781250034], + [-78.68603515625003, -4.562402343749994], + [-78.74306640625, -4.592675781250037], + [-78.86152343749998, -4.665039062499943], + [-78.90761718749997, -4.714453124999977], + [-78.92578125, -4.770703124999983], + [-78.91420898437497, -4.818652343749974], + [-78.919189453125, -4.858398437499986], + [-78.97539062499999, -4.873242187499997], + [-78.99526367187497, -4.908007812499974], + [-79.03330078124998, -4.969140625], + [-79.07626953125003, -4.990625], + [-79.18666992187497, -4.958203124999983], + [-79.26811523437493, -4.957617187499949], + [-79.33095703124997, -4.92783203125002], + [-79.39941406249997, -4.840039062499983], + [-79.45576171874998, -4.766210937499949], + [-79.50190429687495, -4.670605468750011], + [-79.51616210937493, -4.539160156249963], + [-79.57768554687496, -4.50058593750002], + [-79.638525390625, -4.454882812500031], + [-79.71098632812502, -4.467578124999946], + [-79.79726562500002, -4.47636718749996], + [-79.8451171875, -4.445898437499977], + [-79.962890625, -4.390332031250026], + [-80.06352539062499, -4.327539062500023], + [-80.13955078125002, -4.296093750000011], + [-80.19746093750001, -4.311035156249943], + [-80.23217773437497, -4.349023437499952], + [-80.293359375, -4.416796875], + [-80.38349609374998, -4.46367187499996], + [-80.424169921875, -4.461425781250028], + [-80.47856445312499, -4.430078125000037], + [-80.48847656249995, -4.393652343749991], + [-80.44384765625003, -4.335839843750023], + [-80.35288085937495, -4.208496093750014], + [-80.453759765625, -4.205175781249963], + [-80.48847656249995, -4.165527343749972], + [-80.49345703124999, -4.119140625000014], + [-80.510009765625, -4.06953125000004], + [-80.49013671874994, -4.010058593750003], + [-80.43720703125001, -3.978613281249991], + [-80.35786132812501, -4.003417968749986], + [-80.30327148437499, -4.005078124999969], + [-80.26689453124993, -3.948828124999963], + [-80.23051757812499, -3.924023437499969], + [-80.19414062499996, -3.905859375], + [-80.17924804687493, -3.87773437499996], + [-80.21757812500002, -3.787695312499991], + [-80.228857421875, -3.738867187499991], + [-80.21728515624997, -3.710742187499946], + [-80.21894531249995, -3.65449218750004], + [-80.22060546875002, -3.613183593749966], + [-80.24375, -3.576757812500006], + [-80.24541015625002, -3.522167968749997], + [-80.26523437499995, -3.492480468749989], + [-80.27187, -3.461035156249977], + [-80.27353515624995, -3.424609375000017], + [-80.29833984374994, -3.40644531250004], + [-80.32465820312498, -3.387890625], + [-80.30312, -3.374804687499989], + [-80.15986328124998, -3.324316406250006], + [-80.10034179687503, -3.274023437499977], + [-80.02666015624993, -3.22812], + [-79.96333007812501, -3.15771484375], + [-79.92158203124993, -3.090136718749989], + [-79.82270507812495, -2.776953124999963], + [-79.72988281249997, -2.579101562499972], + [-79.74550781249994, -2.484667968750017], + [-79.822412109375, -2.35654296875002], + [-79.83974609374997, -2.167871093749952], + [-79.8326171875, -2.110546875], + [-79.842138671875, -2.0673828125], + [-79.89340820312498, -2.145703124999969], + [-79.88032226562495, -2.423632812500017], + [-79.92558593749996, -2.548535156249969], + [-79.989013671875, -2.578710937499991], + [-80.03017578124994, -2.556738281249949], + [-80.00664062499993, -2.353808593750003], + [-80.05307617187498, -2.390722656249963], + [-80.12714843749998, -2.528417968749949], + [-80.24863281249995, -2.630566406249983], + [-80.25527343749997, -2.664648437499991], + [-80.28471679687502, -2.706738281249955], + [-80.37856445312497, -2.667968749999957], + [-80.45009765624997, -2.625976562500028], + [-80.68486328125002, -2.396875], + [-80.83906249999998, -2.349023437499994], + [-80.93217773437493, -2.269140624999977], + [-80.95161132812498, -2.235449218749949], + [-80.96279296874997, -2.18925781249996], + [-80.86762695312493, -2.141210937500034], + [-80.770361328125, -2.076660156250028], + [-80.76059570312498, -1.934570312500028], + [-80.76313476562495, -1.822949218750026], + [-80.83500976562496, -1.63242187500002], + [-80.80141601562494, -1.383398437500006], + [-80.82001953125001, -1.285839843750026], + [-80.90239257812499, -1.078906249999974], + [-80.84140625, -0.974707031249963], + [-80.62368164062497, -0.898730468750031], + [-80.55390624999998, -0.847949218749989], + [-80.50507812499998, -0.683789062500026], + [-80.45546875, -0.585449218749986], + [-80.35839843750003, -0.625097656249977], + [-80.282373046875, -0.620507812500023], + [-80.38476562499997, -0.583984374999943], + [-80.46831054687493, -0.43603515625], + [-80.48227539062503, -0.368261718749963], + [-80.3212890625, -0.165820312500017], + [-80.23701171874998, -0.113085937500031], + [-80.1333984375, -0.006054687499983], + [-80.046142578125, 0.155371093750048], + [-80.025, 0.410156249999986], + [-80.06103515625, 0.592285156249972], + [-80.08828124999997, 0.78476562500002], + [-80.0359375, 0.834570312500034], + [-79.90351562499998, 0.86020507812502], + [-79.79584960937498, 0.922265625000051], + [-79.74121093749997, 0.979785156250045], + [-79.61318359375, 0.971142578124969], + [-79.46538085937499, 1.060058593750057], + [-79.22905273437499, 1.104589843749977], + [-78.89965820312503, 1.20625], + [-78.82705078124997, 1.295947265624974], + [-78.85966796874996, 1.455371093750031], + [-78.82885742187497, 1.434667968749991], + [-78.73710937499993, 1.35869140624996], + [-78.681640625, 1.283447265625], + [-78.58764648437497, 1.236669921874977], + [-78.51152343749999, 1.198828125], + [-78.31210937499995, 1.046093750000054] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Egypt", + "iso_a2": "EG", + "iso_a3": "EGY", + "iso_n3": "818", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [34.19814453125002, 31.322607421875], + [34.2125, 31.292285156249996], + [34.24531250000001, 31.208300781249996], + [34.32851562500002, 30.995019531249994], + [34.400976562500006, 30.827832031249997], + [34.48994140625001, 30.5962890625], + [34.51777343750001, 30.507373046874996], + [34.52968750000002, 30.446044921875], + [34.65859375000002, 30.191455078124996], + [34.73505859375001, 29.98203125], + [34.791113281250006, 29.812109375], + [34.86982421875001, 29.563916015624997], + [34.904296875, 29.47734375], + [34.84853515625002, 29.43212890625], + [34.736425781250006, 29.27060546875], + [34.6171875, 28.75791015625], + [34.44648437500001, 28.357324218749994], + [34.42714843750002, 28.106494140624996], + [34.39970703125002, 28.016015625], + [34.31855468750001, 27.888964843749996], + [34.22011718750002, 27.764306640624994], + [34.04511718750001, 27.828857421875], + [33.76025390625, 28.04765625], + [33.59414062500002, 28.255566406249997], + [33.416113281250006, 28.38984375], + [33.24775390625001, 28.567724609375], + [33.20195312500002, 28.695703125], + [33.203710937500006, 28.777783203124997], + [33.13017578125002, 28.978271484375], + [33.07578125, 29.073046875], + [32.87060546875, 29.28623046875], + [32.81171875000001, 29.4], + [32.766699218750006, 29.45], + [32.72148437500002, 29.521777343749996], + [32.64716796875001, 29.7984375], + [32.56572265625002, 29.973974609375], + [32.47304687500002, 29.925439453124994], + [32.48945312500001, 29.851513671874997], + [32.40859375000002, 29.749316406249996], + [32.35976562500002, 29.630664062499996], + [32.39726562500002, 29.5337890625], + [32.565039062500006, 29.386328125], + [32.59902343750002, 29.321923828124994], + [32.63808593750002, 29.182177734374996], + [32.6318359375, 28.992236328124996], + [32.65888671875001, 28.927734375], + [32.78447265625002, 28.78662109375], + [32.82949218750002, 28.702880859375], + [32.856542968750006, 28.630615234375], + [32.89824218750002, 28.565234375], + [33.02285156250002, 28.442285156249994], + [33.2021484375, 28.208300781249996], + [33.37226562500001, 28.050585937499996], + [33.49492187500002, 27.974462890625], + [33.54707031250001, 27.898144531249997], + [33.55878906250001, 27.701220703124996], + [33.5498046875, 27.607373046874997], + [33.65742187500001, 27.430566406249994], + [33.697265625, 27.341113281249996], + [33.80166015625002, 27.2681640625], + [33.84931640625001, 27.184912109375], + [33.89306640625, 27.049462890624994], + [33.959082031250006, 26.6490234375], + [34.04951171875001, 26.550732421874997], + [34.32929687500001, 26.024365234374997], + [34.56513671875001, 25.691162109375], + [34.679296875, 25.442529296874994], + [34.85322265625001, 25.139794921874994], + [35.19414062500002, 24.475146484375003], + [35.397070312500006, 24.269970703124997], + [35.47783203125002, 24.15478515625], + [35.62470703125001, 24.066015625], + [35.78388671875001, 23.937792968750003], + [35.63203125000001, 23.950341796874994], + [35.593847656250006, 23.942578125], + [35.54082031250002, 23.920654296875], + [35.515234375, 23.84287109374999], + [35.50439453125, 23.779296875], + [35.52275390625002, 23.442529296874994], + [35.56435546875002, 23.27109375], + [35.697851562500006, 22.946191406249994], + [35.79736328125, 22.84873046874999], + [35.845800781250006, 22.785693359375003], + [35.91337890625002, 22.739648437499994], + [36.22968750000001, 22.628808593749994], + [36.41455078125, 22.394189453124994], + [36.8296875, 22.09765625], + [36.87041015625002, 22.015771484374994], + [36.87138671875002, 21.996728515624994], + [36.54326171875002, 21.996630859375003], + [36.21523437500002, 21.99658203125], + [35.88701171875002, 21.996533203124997], + [35.55898437500002, 21.996484375], + [35.23085937500002, 21.99643554687499], + [34.90273437500002, 21.996386718750003], + [34.57460937500002, 21.996337890625], + [34.24648437500002, 21.996289062499997], + [33.91845703125, 21.996240234374994], + [33.59033203125, 21.99619140624999], + [33.26220703125, 21.996142578125003], + [32.93408203125, 21.99609375], + [32.606054687500006, 21.995996093749994], + [32.27783203125, 21.995996093749994], + [31.949804687500006, 21.995898437500003], + [31.621679687500006, 21.995849609375], + [31.434472656250023, 21.995849609375], + [31.46640625, 22.084667968749997], + [31.486132812500017, 22.14780273437499], + [31.464257812500023, 22.19150390624999], + [31.400292968750023, 22.202441406250003], + [31.358496093750006, 22.188623046874994], + [31.260644531250023, 22.00229492187499], + [31.20917968750001, 21.994873046875], + [31.092675781250023, 21.994873046875], + [30.71064453125001, 21.994921875], + [30.32861328125, 21.995019531249994], + [29.946679687500023, 21.9951171875], + [29.564550781250006, 21.9951171875], + [29.182519531250023, 21.99521484374999], + [28.800585937500017, 21.995263671874994], + [28.418554687500006, 21.9953125], + [28.036425781250017, 21.995361328125], + [27.65449218750001, 21.99545898437499], + [27.2724609375, 21.995507812499994], + [26.890429687500017, 21.995556640624997], + [26.508398437500006, 21.99560546875], + [26.126367187500023, 21.995654296875003], + [25.74433593750001, 21.995751953124994], + [25.3623046875, 21.995800781249997], + [24.980273437500017, 21.995849609375], + [24.980273437500017, 22.220410156249997], + [24.980273437500017, 22.444970703124994], + [24.980273437500017, 22.66953125], + [24.980273437500017, 22.894091796875003], + [24.980273437500017, 23.11865234375], + [24.980273437500017, 23.343212890624997], + [24.980273437500017, 23.567822265624997], + [24.980273437500017, 23.792382812499994], + [24.980273437500017, 24.01694335937499], + [24.980273437500017, 24.241503906250003], + [24.980273437500017, 24.466064453125], + [24.980273437500017, 24.690625], + [24.980273437500017, 24.915185546874994], + [24.980273437500017, 25.13974609374999], + [24.980273437500017, 25.364306640625003], + [24.980273437500017, 25.5888671875], + [24.980273437500017, 25.813427734374997], + [24.980273437500017, 26.037988281249994], + [24.980273437500017, 26.262548828125], + [24.980273437500017, 26.487109375], + [24.980273437500017, 26.711669921875], + [24.980273437500017, 26.936230468749997], + [24.980273437500017, 27.160839843749997], + [24.980273437500017, 27.385400390624994], + [24.980273437500017, 27.6099609375], + [24.980273437500017, 27.834521484374996], + [24.980273437500017, 28.05908203125], + [24.980273437500017, 28.283642578124997], + [24.980273437500017, 28.508203125], + [24.980273437500017, 28.732763671875], + [24.980273437500017, 28.957324218749996], + [24.980273437500017, 29.181884765625], + [24.9716796875, 29.223828125], + [24.916113281250006, 29.376269531249996], + [24.86591796875001, 29.570263671874997], + [24.810839843750017, 29.808740234374994], + [24.8037109375, 29.886035156249996], + [24.71162109375001, 30.131542968749997], + [24.703222656250006, 30.201074218749994], + [24.726464843750023, 30.2505859375], + [24.877539062500006, 30.45751953125], + [24.92304687500001, 30.558007812499994], + [24.96142578125, 30.678515625], + [24.973925781250017, 30.7765625], + [24.929492187500017, 30.926464843749997], + [24.877539062500006, 31.061230468749997], + [24.859960937500006, 31.199169921874997], + [24.85273437500001, 31.334814453125], + [24.929980468750017, 31.427490234375], + [25.02265625000001, 31.514013671875], + [25.057226562500006, 31.5671875], + [25.11201171875001, 31.626904296874997], + [25.150488281250006, 31.654980468749997], + [25.225488281250023, 31.5337890625], + [25.382226562500023, 31.51279296875], + [25.89326171875001, 31.620898437499996], + [26.457324218750017, 31.512109375], + [26.768652343750006, 31.470361328124994], + [27.248046875, 31.377880859374997], + [27.5400390625, 31.212695312499996], + [27.6201171875, 31.191748046875], + [27.829980468750023, 31.195019531249997], + [27.967578125000017, 31.097412109375], + [28.51484375000001, 31.050439453124994], + [28.806933593750017, 30.942675781249996], + [28.972753906250006, 30.856738281249996], + [29.072070312500017, 30.830273437499997], + [29.159960937500017, 30.8345703125], + [29.27890625, 30.866943359375], + [29.428515625000017, 30.927441406249997], + [29.591601562500017, 31.011523437499996], + [29.929785156250006, 31.227490234374997], + [30.049414062500006, 31.265429687499996], + [30.127539062500006, 31.255664062499996], + [30.22265625, 31.2583984375], + [30.262304687500006, 31.316845703124997], + [30.312304687500017, 31.35703125], + [30.34375, 31.402734375], + [30.395117187500006, 31.4576171875], + [30.57099609375001, 31.472998046875], + [30.92353515625001, 31.566845703124997], + [30.884179687500023, 31.522363281249994], + [30.56298828125, 31.4169921875], + [30.700488281250017, 31.403857421874996], + [30.84140625, 31.439892578124997], + [31.001757812500017, 31.462792968749994], + [31.030859375, 31.507568359375], + [31.05195312500001, 31.591552734375], + [31.082910156250023, 31.603320312499996], + [31.193945312500006, 31.587597656249997], + [31.5244140625, 31.458251953125], + [31.606542968750006, 31.455761718749997], + [31.839257812500023, 31.526318359374997], + [31.888964843750017, 31.54140625], + [31.964257812500023, 31.502099609374994], + [32.13603515625002, 31.341064453125], + [32.07607421875002, 31.344482421875], + [31.8921875, 31.482470703124996], + [31.875878906250023, 31.413720703124994], + [31.77109375, 31.292578125], + [31.90205078125001, 31.240185546874997], + [32.00849609375001, 31.220507812499996], + [32.065625, 31.152978515624994], + [32.10175781250001, 31.092822265624996], + [32.20654296875, 31.119042968749994], + [32.281835937500006, 31.200878906249997], + [32.242773437500006, 31.246533203124997], + [32.21621093750002, 31.29375], + [32.250585937500006, 31.294921875], + [32.32353515625002, 31.256054687499997], + [32.5328125, 31.100732421874994], + [32.60332031250002, 31.06875], + [32.6845703125, 31.074023437499996], + [32.8544921875, 31.117724609374996], + [32.90156250000001, 31.1109375], + [33.1298828125, 31.168164062499997], + [33.15673828125, 31.126220703125], + [33.1943359375, 31.084521484374996], + [33.3779296875, 31.13095703125], + [33.66650390625, 31.130419921874996], + [33.90253906250001, 31.180957031249996], + [34.17626953125, 31.30390625], + [34.19814453125002, 31.322607421875] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Eritrea", + "iso_a2": "ER", + "iso_a3": "ERI", + "iso_n3": "232", + "continent": "Africa" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [40.141210937500006, 15.696142578125034], + [40.18251953125005, 15.642919921875006], + [40.21142578124997, 15.648144531250011], + [40.2340820312501, 15.665869140624977], + [40.25009765625006, 15.703466796875006], + [40.40820312500003, 15.629199218750074], + [40.399023437500006, 15.579882812500045], + [40.30468749999997, 15.577343749999983], + [40.19580078125003, 15.598144531250057], + [40.095117187499994, 15.590917968750006], + [39.975195312500006, 15.612451171875023], + [39.94746093750004, 15.696142578125034], + [40.02392578124997, 15.655615234375034], + [40.06347656249997, 15.665869140624977], + [40.07050781250004, 15.676611328125034], + [40.01630859375004, 15.733251953125034], + [39.93994140625003, 15.744531250000023], + [39.94521484375005, 15.789062500000028], + [39.979394531249994, 15.806591796874955], + [40.00048828125003, 15.828271484375023], + [39.9567382812501, 15.889404296875057], + [40.04257812500006, 15.875488281249972], + [40.096777343750006, 15.838476562499977], + [40.13242187500006, 15.795263671875063], + [40.141210937500006, 15.696142578125034] + ] + ], + [ + [ + [40.07646484375002, 16.082421875000023], + [40.11005859375004, 15.985742187500051], + [40.01240234375004, 16.02265625000001], + [39.99609375000003, 16.04267578125001], + [40.03906249999997, 16.080957031249994], + [40.04814453125002, 16.1044921875], + [40.07646484375002, 16.082421875000023] + ] + ], + [ + [ + [38.60947265625006, 18.00507812500004], + [38.91171875000006, 17.427148437499994], + [39.03447265625002, 17.085546875000034], + [39.14257812500003, 16.729150390624966], + [39.222558593749994, 16.193701171875063], + [39.298925781250006, 15.921093750000011], + [39.422265625, 15.786669921874989], + [39.5065429687501, 15.532128906249994], + [39.5788085937501, 15.522509765624989], + [39.63125, 15.452539062500051], + [39.72080078125006, 15.21367187500006], + [39.785546875, 15.124853515624991], + [39.819433593750006, 15.20126953125002], + [39.815625, 15.245312500000011], + [39.79033203125002, 15.318847656249986], + [39.81347656250003, 15.413574218750014], + [39.86376953124997, 15.470312500000034], + [39.97832031250002, 15.393115234375017], + [40.04101562500003, 15.334521484374989], + [40.05781250000004, 15.217089843750045], + [40.084082031250006, 15.151953125], + [40.20410156250003, 15.014111328124983], + [40.305273437500006, 14.974023437499994], + [40.43652343750003, 14.963964843749991], + [40.546289062499994, 14.933593750000014], + [40.634375, 14.883007812500011], + [40.79931640624997, 14.743017578125006], + [41.17646484375004, 14.620312500000054], + [41.4796875000001, 14.243896484375014], + [41.65820312499997, 13.983056640624994], + [42.24511718749997, 13.587646484374986], + [42.34648437500002, 13.398095703125009], + [42.39931640625005, 13.212597656249969], + [42.522851562499994, 13.221484375], + [42.734472656250006, 13.018603515624974], + [42.796191406250074, 12.864257812500057], + [42.96953125000002, 12.808349609375028], + [42.99902343750003, 12.899511718750048], + [43.08291015625005, 12.824609374999966], + [43.11669921874997, 12.708593749999963], + [43.00566406250002, 12.66230468750004], + [42.88330078124997, 12.621289062500026], + [42.86591796875004, 12.622802734374986], + [42.82529296875006, 12.569335937500014], + [42.767480468749994, 12.422851562500014], + [42.70371093750006, 12.380322265625054], + [42.67011718750004, 12.3765625], + [42.479394531249994, 12.513623046875026], + [42.45, 12.521337890625006], + [42.40859375, 12.494384765625014], + [42.37851562500006, 12.46640625], + [42.28994140625005, 12.570214843750009], + [42.225, 12.661962890624963], + [42.13427734374997, 12.771435546874969], + [42.04658203125004, 12.820605468750045], + [41.95214843749997, 12.88232421875], + [41.85957031250004, 13.025878906250028], + [41.76503906250005, 13.183935546874991], + [41.625, 13.313232421875043], + [41.362890625, 13.499804687500031], + [41.12236328125002, 13.736132812500045], + [40.938574218750006, 13.983105468749997], + [40.82011718750002, 14.111669921874991], + [40.76953125000003, 14.144482421875011], + [40.52441406249997, 14.22519531250002], + [40.353125, 14.338085937500026], + [40.22148437500002, 14.431152343749972], + [40.14062, 14.456054687499986], + [40.06210937500006, 14.459130859374994], + [39.89511718750006, 14.440673828125043], + [39.756152343750074, 14.499023437500028], + [39.6979492187501, 14.499023437500028], + [39.604882812499994, 14.51606445312504], + [39.531835937500006, 14.53671875], + [39.44609375000002, 14.51186523437498], + [39.270117187500006, 14.470312500000048], + [39.198046875000074, 14.479394531250037], + [39.15859375, 14.5375], + [39.1354492187501, 14.581884765625034], + [39.07421874999997, 14.628222656249974], + [39.023828125, 14.628222656249974], + [38.99570312500006, 14.586865234374983], + [38.81201171875003, 14.482324218750009], + [38.50439453124997, 14.42441406250002], + [38.43144531250002, 14.428613281249994], + [38.37695312500003, 14.470410156249983], + [38.221484375000074, 14.649658203124986], + [38.177050781250074, 14.678808593749977], + [38.141992187499994, 14.681494140624991], + [38.069921875, 14.702734374999963], + [38.002539062500006, 14.737109375000045], + [37.94345703125006, 14.810546875], + [37.884179687499994, 14.852294921874972], + [37.82031250000003, 14.708496093749986], + [37.70839843750005, 14.45722656250004], + [37.64843750000003, 14.32255859375006], + [37.571191406249994, 14.149072265624966], + [37.546777343749994, 14.143847656249974], + [37.507226562499994, 14.156396484375037], + [37.3537109375001, 14.372460937500009], + [37.257226562499994, 14.453759765625051], + [37.18515625000006, 14.445996093749983], + [37.132617187500074, 14.406054687500017], + [37.099414062500074, 14.333984374999986], + [37.06347656250003, 14.289257812500026], + [37.024511718750006, 14.271972656250057], + [36.940722656250074, 14.280566406250031], + [36.81191406250005, 14.315039062500034], + [36.67910156250005, 14.307568359375026], + [36.542382812499994, 14.258203125], + [36.52431640625005, 14.256835937499986], + [36.492285156250006, 14.544335937500023], + [36.470800781250006, 14.736474609375009], + [36.448144531249994, 14.940087890625009], + [36.42675781249997, 15.132080078125043], + [36.521777343750074, 15.250146484375023], + [36.566015625, 15.362109375], + [36.67919921874997, 15.726367187500045], + [36.724511718749994, 15.798876953124989], + [36.81347656249997, 15.993945312500045], + [36.82587890625004, 16.050292968750057], + [36.9137695312501, 16.296191406250045], + [36.9054687500001, 16.459521484375017], + [36.887792968750006, 16.624658203124994], + [36.93574218750004, 16.72236328125001], + [36.9787109375001, 16.800585937500045], + [36.9757812500001, 16.866552734375006], + [36.99521484375006, 17.020556640625017], + [37.00898437500004, 17.058886718750017], + [37.06152343749997, 17.061279296875057], + [37.16953125000006, 17.04140625], + [37.24882812500002, 17.056884765625057], + [37.34042968750006, 17.057080078124983], + [37.41103515625005, 17.061718749999955], + [37.452929687500074, 17.108691406250017], + [37.51015625, 17.28813476562499], + [37.54746093750006, 17.32412109375005], + [37.575976562500074, 17.335009765625045], + [37.65673828125003, 17.368261718749977], + [37.725976562499994, 17.420507812500063], + [37.78242187500004, 17.458007812500057], + [37.803320312500006, 17.465527343749983], + [37.86298828125004, 17.470263671875074], + [37.9225585937501, 17.492333984375023], + [37.950097656249994, 17.517675781250034], + [38.02529296875005, 17.537792968749955], + [38.09892578125002, 17.526464843750063], + [38.148535156250006, 17.54853515625001], + [38.181542968749994, 17.562841796875006], + [38.219042968750074, 17.563964843750057], + [38.253515625, 17.584765625000017], + [38.26728515625004, 17.616699218750057], + [38.28984375000002, 17.637011718750017], + [38.34736328125004, 17.68359375], + [38.37373046875004, 17.717333984375045], + [38.385546875000074, 17.751269531250017], + [38.39716796875004, 17.778369140625045], + [38.42246093750006, 17.823925781249983], + [38.522851562499994, 17.938525390625074], + [38.60947265625006, 18.00507812500004] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Spain", + "iso_a2": "ES", + "iso_a3": "ESP", + "iso_n3": "724", + "continent": "Europe" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-17.887939453125, 27.809570312500057], + [-17.984765625000023, 27.646386718750023], + [-18.106591796874966, 27.70747070312504], + [-18.135937499999983, 27.727929687500023], + [-18.160546874999937, 27.76147460937503], + [-18.043359374999966, 27.768115234375045], + [-17.924511718749983, 27.85014648437496], + [-17.887939453125, 27.809570312500057] + ] + ], + [ + [ + [-15.400585937499955, 28.147363281250023], + [-15.406689453124955, 28.07050781250001], + [-15.383154296874977, 27.992822265624994], + [-15.389160156249943, 27.87470703125001], + [-15.436767578124972, 27.810693359375023], + [-15.55937, 27.746972656249994], + [-15.65576171875, 27.758398437500006], + [-15.71030273437492, 27.784082031250023], + [-15.807324218749955, 27.887548828125034], + [-15.809472656249966, 27.994482421874977], + [-15.720947265624943, 28.064160156249955], + [-15.682763671874994, 28.15405273437497], + [-15.452783203124937, 28.13691406250004], + [-15.432714843749949, 28.15424804687501], + [-15.415478515624983, 28.159326171874994], + [-15.400585937499955, 28.147363281250023] + ] + ], + [ + [ + [-17.184667968749977, 28.02197265624997], + [-17.225390624999932, 28.013525390625034], + [-17.27392578124997, 28.03828125000001], + [-17.324902343749955, 28.11767578125003], + [-17.290332031249932, 28.17631835937499], + [-17.25859375, 28.203173828125045], + [-17.21435546875, 28.199267578125045], + [-17.12963867187497, 28.15595703125001], + [-17.103759765624943, 28.111132812500017], + [-17.10107421875, 28.083447265624983], + [-17.184667968749977, 28.02197265624997] + ] + ], + [ + [ + [-16.33447265624997, 28.37993164062499], + [-16.41821289062497, 28.15141601562496], + [-16.496240234374994, 28.061914062500023], + [-16.54277343749996, 28.032080078125006], + [-16.65800781249999, 28.007177734374977], + [-16.79472656249996, 28.149169921875057], + [-16.86601562499999, 28.293261718750017], + [-16.905322265625017, 28.33959960937503], + [-16.843066406249932, 28.376123046875023], + [-16.75205078124995, 28.369824218749983], + [-16.556835937499983, 28.400488281250006], + [-16.51743164062495, 28.412695312500006], + [-16.318994140624937, 28.558203124999977], + [-16.12363281249992, 28.57597656249996], + [-16.11914062499997, 28.52827148437501], + [-16.33447265624997, 28.37993164062499] + ] + ], + [ + [ + [-14.196777343749943, 28.169287109375063], + [-14.332617187500006, 28.056005859374977], + [-14.468603515624977, 28.082373046875034], + [-14.49179687499992, 28.100927734374977], + [-14.355566406249977, 28.12968749999999], + [-14.231982421875017, 28.21582031250003], + [-14.152587890625, 28.406640625000023], + [-14.028369140625017, 28.617431640625057], + [-14.003369140624983, 28.706689453125023], + [-13.954150390624989, 28.741455078125], + [-13.886279296874932, 28.744677734375045], + [-13.85722656249996, 28.73803710937503], + [-13.827148437499972, 28.69121093749999], + [-13.827587890624955, 28.585156249999955], + [-13.862988281249983, 28.409326171875023], + [-13.928027343749989, 28.25346679687499], + [-14.196777343749943, 28.169287109375063] + ] + ], + [ + [ + [-17.83427734374999, 28.49321289062496], + [-17.85937, 28.485693359375034], + [-17.88212890624996, 28.56459960937505], + [-18.00078124999999, 28.758251953124955], + [-17.928808593749977, 28.844580078125063], + [-17.797558593749983, 28.846777343750063], + [-17.74453125, 28.786572265624955], + [-17.7265625, 28.724462890625006], + [-17.751611328124937, 28.688574218749977], + [-17.74438476562497, 28.616015625000045], + [-17.75800781250001, 28.56909179687497], + [-17.83427734374999, 28.49321289062496] + ] + ], + [ + [ + [-13.715966796874966, 28.911230468750034], + [-13.78398437499996, 28.84545898437497], + [-13.85991210937496, 28.869091796874983], + [-13.823632812499966, 29.013330078124966], + [-13.78818359374992, 29.056103515624983], + [-13.650097656249955, 29.118994140625006], + [-13.535058593749966, 29.144287109375], + [-13.501416015624955, 29.21123046874996], + [-13.463574218749955, 29.237207031250023], + [-13.422949218749949, 29.19750976562503], + [-13.453759765624994, 29.15136718750003], + [-13.477929687499966, 29.00659179687503], + [-13.554687499999972, 28.960205078125], + [-13.715966796874966, 28.911230468750034] + ] + ], + [ + [ + [1.593945312500068, 38.672070312499955], + [1.571191406250051, 38.65883789062502], + [1.504980468750063, 38.670996093750006], + [1.40576171875, 38.670996093750006], + [1.401953125000034, 38.71142578124997], + [1.41718750000004, 38.73964843750005], + [1.436328125000017, 38.768212890624994], + [1.496875, 38.7119140625], + [1.59267578125008, 38.70146484374999], + [1.593945312500068, 38.672070312499955] + ] + ], + [ + [ + [1.445214843750051, 38.91870117187503], + [1.408984375000045, 38.857275390625034], + [1.256933593750063, 38.879003906250006], + [1.223339843750068, 38.90385742187502], + [1.25625, 38.97338867187497], + [1.2998046875, 38.98173828124999], + [1.302539062500017, 39.03115234375002], + [1.3486328125, 39.080810546875], + [1.564453125, 39.12104492187504], + [1.61318359375008, 39.08740234375003], + [1.623632812499977, 39.03881835937497], + [1.494531250000051, 38.932519531249994], + [1.445214843750051, 38.91870117187503] + ] + ], + [ + [ + [3.145312500000017, 39.79008789062499], + [3.24111328125008, 39.756689453125034], + [3.34218750000008, 39.786718750000034], + [3.39589843750008, 39.77729492187498], + [3.448925781250068, 39.76123046874997], + [3.461816406250023, 39.69775390625003], + [3.414648437500006, 39.62714843750001], + [3.348730468750063, 39.55566406250003], + [3.29296875, 39.47705078125], + [3.244726562500034, 39.38662109375005], + [3.154589843750045, 39.333251953125], + [3.072851562500006, 39.30126953124997], + [2.900097656250068, 39.36835937499998], + [2.799804687500057, 39.38505859374999], + [2.769824218750074, 39.41025390624998], + [2.745996093750023, 39.51025390625], + [2.700585937500023, 39.54213867187502], + [2.634082031250045, 39.55620117187496], + [2.575878906250011, 39.530664062499994], + [2.49951171875, 39.47788085937498], + [2.458789062500045, 39.530468749999955], + [2.394335937500045, 39.540380859375034], + [2.37001953125008, 39.57207031249999], + [2.371289062500068, 39.61308593749999], + [2.784960937500045, 39.854833984375034], + [2.904785156250057, 39.908300781250006], + [3.15869140625, 39.97050781249999], + [3.197558593750017, 39.96108398437502], + [3.164453125000023, 39.924218749999966], + [3.1669921875, 39.90771484374997], + [3.198632812500051, 39.88984374999998], + [3.190917968749972, 39.86137695312496], + [3.15869140625, 39.836572265624966], + [3.145312500000017, 39.79008789062499] + ] + ], + [ + [ + [4.293652343750011, 39.84184570312499], + [4.275292968750023, 39.83027343750001], + [3.967675781250051, 39.94584960937502], + [3.8671875, 39.958740234375], + [3.84267578125008, 39.97636718750002], + [3.845410156250011, 40.036474609375006], + [3.853417968750051, 40.06303710937502], + [4.059179687500034, 40.075097656249966], + [4.22578125000004, 40.032373046874966], + [4.31513671875004, 39.91723632812497], + [4.322070312500045, 39.897509765625045], + [4.293652343750011, 39.84184570312499] + ] + ], + [ + [ + [-7.698144531249994, 43.76455078125005], + [-7.594580078124949, 43.72734375000002], + [-7.503613281249983, 43.73994140625001], + [-7.399316406249966, 43.69580078124997], + [-7.261962890624972, 43.594628906249966], + [-7.060986328124955, 43.55395507812503], + [-6.900683593749989, 43.58564453125001], + [-6.617285156249977, 43.59238281250006], + [-6.47568359374992, 43.57890625], + [-6.22412109375, 43.60385742187498], + [-6.080126953124989, 43.59492187500004], + [-5.846679687499943, 43.645068359375045], + [-5.66582031249996, 43.58247070312498], + [-5.315722656249932, 43.553173828124955], + [-5.10527343749996, 43.501855468749994], + [-4.52304687499992, 43.41572265625004], + [-4.312792968749989, 43.41474609375001], + [-4.015332031249955, 43.46308593750001], + [-3.889355468749955, 43.49941406250002], + [-3.77402343749992, 43.477880859375006], + [-3.604638671874966, 43.51948242187504], + [-3.523632812499983, 43.51103515624999], + [-3.417871093750023, 43.45170898437499], + [-3.045605468749926, 43.37158203125], + [-2.947705078124983, 43.43969726562503], + [-2.875048828125017, 43.454443359375006], + [-2.607080078124937, 43.41274414062505], + [-2.337109374999926, 43.32802734375002], + [-2.196679687499994, 43.32192382812502], + [-1.991308593750006, 43.345068359375034], + [-1.828515624999966, 43.40083007812501], + [-1.794042968749949, 43.407324218750006], + [-1.792724609374943, 43.37255859375003], + [-1.753271484375006, 43.32470703125006], + [-1.712841796874926, 43.30703125], + [-1.627148437499983, 43.28247070312497], + [-1.561474609375011, 43.27919921875002], + [-1.471728515624932, 43.26767578124998], + [-1.410693359374932, 43.240087890625034], + [-1.407324218749949, 43.197119140625006], + [-1.422607421874943, 43.14912109374998], + [-1.459423828124983, 43.10498046875006], + [-1.480468750000028, 43.071142578125006], + [-1.460839843749937, 43.05175781250006], + [-1.42875976562496, 43.03676757812502], + [-1.39404296875, 43.032617187499966], + [-1.370507812499994, 43.03759765625], + [-1.352734374999926, 43.06425781250002], + [-1.318847656249943, 43.09697265625002], + [-1.300048828124943, 43.10097656250002], + [-1.301562499999989, 43.08247070312498], + [-1.285449218749989, 43.05961914062496], + [-1.175439453124966, 43.02114257812502], + [-0.933837890624943, 42.94951171874999], + [-0.839208984374949, 42.94819335937498], + [-0.762646484374983, 42.93979492187506], + [-0.740185546874926, 42.909521484375034], + [-0.586425781249943, 42.798974609374966], + [-0.549804687499943, 42.80200195312506], + [-0.481152343750011, 42.79931640625003], + [-0.398437499999943, 42.80810546875006], + [-0.338574218750011, 42.82880859375001], + [-0.29931640625, 42.82534179687502], + [-0.256054687499983, 42.803955078125], + [-0.205322265624943, 42.78530273437502], + [-0.140039062499966, 42.748925781249994], + [-0.081494140624926, 42.70385742187506], + [-0.041162109374994, 42.689111328124966], + [0.20136718750004, 42.719335937500006], + [0.255468750000063, 42.692919921875045], + [0.312890625000023, 42.69326171875002], + [0.377246093750074, 42.70014648437501], + [0.517675781250006, 42.68627929687503], + [0.631640625000045, 42.689599609374994], + [0.641992187500023, 42.70063476562501], + [0.651757812500051, 42.800439453124994], + [0.669824218749994, 42.83574218749999], + [0.696875, 42.84511718750005], + [0.764453125000017, 42.83803710937502], + [1.010058593750045, 42.778955078124966], + [1.111132812500017, 42.742041015625006], + [1.208300781250017, 42.71313476562497], + [1.293261718750017, 42.70996093750006], + [1.349414062500074, 42.69067382812503], + [1.428320312499977, 42.59589843749998], + [1.414843750000074, 42.54838867187499], + [1.421972656250034, 42.53081054687496], + [1.430273437500034, 42.49785156249999], + [1.428125, 42.46132812500002], + [1.448828124999977, 42.43745117187504], + [1.486230468750051, 42.434472656249966], + [1.534082031250051, 42.44169921875002], + [1.586425781250057, 42.455957031249994], + [1.678515625000074, 42.496679687500034], + [1.7060546875, 42.50332031250005], + [1.859765625000051, 42.457080078125045], + [1.927929687500068, 42.42631835937499], + [1.951464843750074, 42.39277343749998], + [1.986523437500011, 42.358496093750034], + [2.032714843750028, 42.353515625], + [2.098339843750068, 42.38608398437506], + [2.200390625000068, 42.42094726562496], + [2.37441406250008, 42.39028320312502], + [2.56796875, 42.345800781250006], + [2.651660156250074, 42.340478515624994], + [2.65478515625, 42.36210937499996], + [2.670019531250006, 42.393017578124955], + [2.701855468750011, 42.40849609374999], + [2.749414062500023, 42.41303710937504], + [2.815625, 42.42924804687496], + [2.891406250000074, 42.4560546875], + [2.970019531250017, 42.46723632812498], + [3.052636718750051, 42.44721679687498], + [3.152148437500074, 42.43100585937506], + [3.21142578125, 42.43115234375], + [3.23984375, 42.36787109374998], + [3.287890625000017, 42.34370117187504], + [3.306738281250034, 42.288964843749994], + [3.218652343750051, 42.260351562500006], + [3.166406250000051, 42.25649414062502], + [3.150390625, 42.16245117187506], + [3.17519531250008, 42.135986328125], + [3.224609375, 42.11113281249999], + [3.238085937499989, 42.082226562499955], + [3.248046875, 41.94423828125002], + [3.146875, 41.86103515625001], + [3.0048828125, 41.76743164062506], + [2.310937500000023, 41.46650390625004], + [2.145605468750006, 41.32075195312501], + [2.082617187500063, 41.287402343750045], + [1.566601562500011, 41.19560546874999], + [1.205859375000045, 41.097558593749994], + [1.032910156250068, 41.06206054687496], + [0.816894531250028, 40.89160156250006], + [0.714648437500074, 40.822851562500006], + [0.796093750000068, 40.803808593750034], + [0.891113281250057, 40.72236328125004], + [0.859179687500045, 40.686230468749955], + [0.720605468750051, 40.63046875000006], + [0.660058593750051, 40.61333007812502], + [0.627148437500011, 40.622216796874966], + [0.59609375000008, 40.614501953125], + [0.36367187500008, 40.31904296875004], + [0.158398437499983, 40.106591796874994], + [0.043066406250034, 40.01396484374996], + [-0.075146484374983, 39.87592773437498], + [-0.327001953124949, 39.519873046875006], + [-0.328955078125006, 39.417089843750034], + [-0.204931640624949, 39.062597656250034], + [-0.133789062499943, 38.96948242187497], + [-0.034130859374983, 38.891210937500006], + [0.154882812499977, 38.824658203124955], + [0.20156250000008, 38.75917968750002], + [0.136328125000034, 38.69677734375003], + [-0.052734374999943, 38.58569335937503], + [-0.38125, 38.435644531250034], + [-0.520800781249989, 38.317285156249966], + [-0.550683593749966, 38.203125], + [-0.646777343749989, 38.15185546875003], + [-0.683203124999949, 37.99204101562498], + [-0.741552734374949, 37.886132812499994], + [-0.752734374999989, 37.85024414062505], + [-0.814648437500011, 37.76992187500002], + [-0.823095703124949, 37.711621093749955], + [-0.721582031249966, 37.63105468749998], + [-0.771875, 37.59624023437499], + [-0.822167968749937, 37.58076171875004], + [-0.93808593749992, 37.57133789062499], + [-1.327539062499937, 37.561132812500034], + [-1.640966796874949, 37.38696289062497], + [-1.797607421874972, 37.23286132812504], + [-1.939306640624977, 36.94584960937499], + [-2.111523437499983, 36.77666015624999], + [-2.187695312499955, 36.745458984375034], + [-2.305566406249994, 36.81982421875], + [-2.452832031249955, 36.831152343750006], + [-2.595703124999943, 36.806494140625034], + [-2.670605468749926, 36.74755859375003], + [-2.787548828124955, 36.714746093749994], + [-2.901855468749972, 36.7431640625], + [-3.149169921874972, 36.75849609375001], + [-3.25913085937492, 36.755761718749994], + [-3.43125, 36.70791015625002], + [-3.578808593749926, 36.739843750000034], + [-3.827783203124937, 36.75605468749998], + [-4.366845703124994, 36.71811523437506], + [-4.434863281249989, 36.70024414062496], + [-4.50224609374996, 36.62915039062506], + [-4.67412109374996, 36.506445312500006], + [-4.935302734374972, 36.502050781250006], + [-5.171484374999949, 36.423779296874955], + [-5.230517578124989, 36.373632812500034], + [-5.329687499999949, 36.23574218750002], + [-5.3609375, 36.134912109374994], + [-5.381591796874943, 36.13408203124999], + [-5.407226562499943, 36.15888671874998], + [-5.443603515624972, 36.15058593749998], + [-5.4625, 36.07377929687496], + [-5.551269531249972, 36.03881835937506], + [-5.62548828125, 36.02592773437499], + [-5.80839843749996, 36.08833007812501], + [-5.960693359374972, 36.181738281250034], + [-6.040673828124937, 36.18842773437498], + [-6.170458984374989, 36.33378906250002], + [-6.226269531249983, 36.42646484374998], + [-6.265917968749989, 36.52651367187502], + [-6.257714843749994, 36.56484375], + [-6.268945312499994, 36.59672851562502], + [-6.38413085937492, 36.63701171874996], + [-6.412255859374966, 36.728857421875034], + [-6.328320312500011, 36.84814453125], + [-6.259423828124994, 36.898974609375045], + [-6.216796875000028, 36.91357421875], + [-6.320947265625023, 36.90849609375002], + [-6.396191406249983, 36.831640625], + [-6.492431640624943, 36.95463867187502], + [-6.88461914062492, 37.194238281249966], + [-6.859375, 37.249169921874966], + [-6.863769531250028, 37.27890625], + [-6.929492187499989, 37.214941406250034], + [-6.97465820312496, 37.19843750000004], + [-7.174951171874994, 37.20878906250002], + [-7.406152343749937, 37.17944335937497], + [-7.467187499999937, 37.42802734374999], + [-7.496044921874955, 37.52358398437502], + [-7.503515624999977, 37.58549804687502], + [-7.44394531249992, 37.72827148437497], + [-7.378906249999972, 37.786376953125], + [-7.292236328125, 37.90644531250004], + [-7.185449218749994, 38.00634765625006], + [-7.072509765625, 38.030029296875], + [-7.022851562500023, 38.04472656249996], + [-6.981103515624937, 38.121972656249966], + [-6.957568359374932, 38.187890625], + [-6.974804687499983, 38.194433593750006], + [-7.106396484374983, 38.181005859375006], + [-7.343017578124943, 38.45742187500002], + [-7.335791015625006, 38.50146484375003], + [-7.30595703124996, 38.56684570312501], + [-7.286376953124972, 38.649365234374955], + [-7.28154296874996, 38.71455078125001], + [-7.219921874999926, 38.77050781250003], + [-7.125488281249972, 38.82695312499999], + [-7.046044921874937, 38.907031250000045], + [-7.00625, 38.985253906249994], + [-6.997949218749994, 39.05644531250002], + [-7.042968749999943, 39.10708007812502], + [-7.172412109374932, 39.13520507812498], + [-7.30576171874992, 39.33813476562503], + [-7.33544921875, 39.46513671874996], + [-7.362695312499966, 39.47832031249999], + [-7.44511718749996, 39.53618164062496], + [-7.524218749999932, 39.644726562499955], + [-7.53569335937496, 39.66157226562501], + [-7.454101562499943, 39.6806640625], + [-7.117675781249972, 39.681689453125045], + [-7.04741210937496, 39.70556640625], + [-7.03671875, 39.713964843750034], + [-6.975390624999932, 39.79838867187502], + [-6.911181640624989, 39.937109375000034], + [-6.896093749999949, 40.02182617187506], + [-6.91640625, 40.05683593749998], + [-7.027832031249972, 40.14262695312496], + [-7.032617187499966, 40.16791992187498], + [-7.01469726562496, 40.208349609375034], + [-6.948437499999955, 40.251611328124966], + [-6.85888671875, 40.30073242187504], + [-6.81015625, 40.343115234375034], + [-6.82177734375, 40.37626953124996], + [-6.847949218749989, 40.410986328125006], + [-6.852050781249943, 40.44326171875002], + [-6.835693359374972, 40.48315429687497], + [-6.829833984374943, 40.619091796874955], + [-6.818359375, 40.65405273437497], + [-6.835888671874926, 40.777490234374994], + [-6.857714843749932, 40.87832031250002], + [-6.928466796874972, 41.009130859375006], + [-6.91552734375, 41.038037109374955], + [-6.8828125, 41.06240234375002], + [-6.775781249999937, 41.10771484375002], + [-6.690136718749983, 41.21450195312502], + [-6.56591796875, 41.3037109375], + [-6.403125, 41.37539062500002], + [-6.28935546874996, 41.45502929687501], + [-6.244335937499955, 41.51591796874996], + [-6.2125, 41.53203125], + [-6.221679687499943, 41.560449218749994], + [-6.243115234374955, 41.60180664062497], + [-6.308056640624955, 41.642187500000034], + [-6.391699218749949, 41.665380859375034], + [-6.48466796874996, 41.664404296875034], + [-6.542187499999955, 41.672509765624994], + [-6.558984375000023, 41.70405273437501], + [-6.552587890624949, 41.78955078125003], + [-6.557519531249966, 41.874121093750034], + [-6.575341796874966, 41.91308593749997], + [-6.61826171874992, 41.9423828125], + [-6.70361328125, 41.9345703125], + [-6.777294921874983, 41.95849609374997], + [-6.833203124999926, 41.96416015624999], + [-6.865527343749932, 41.945263671874955], + [-7.030468749999955, 41.95063476562498], + [-7.09912109375, 41.964208984375006], + [-7.147119140625023, 41.98115234374998], + [-7.177929687499983, 41.9716796875], + [-7.195361328124989, 41.95522460937502], + [-7.198339843749977, 41.92939453125001], + [-7.209619140624966, 41.89526367187497], + [-7.268554687499972, 41.864404296874994], + [-7.40361328124996, 41.833691406249955], + [-7.512597656249966, 41.83598632812499], + [-7.612597656249989, 41.85795898437502], + [-7.644677734374937, 41.87397460937498], + [-7.693066406249955, 41.88847656250002], + [-7.896386718749994, 41.87055664062501], + [-7.920849609374983, 41.883642578125006], + [-7.990966796874972, 41.851904296875034], + [-8.094433593749926, 41.814208984375], + [-8.152490234374937, 41.81196289062498], + [-8.173535156249955, 41.819970703124994], + [-8.18125, 41.83696289062502], + [-8.224755859374994, 41.895849609375006], + [-8.213330078124983, 41.92709960937498], + [-8.129980468749977, 42.01816406250006], + [-8.139306640624994, 42.039941406249966], + [-8.173583984374972, 42.06938476562502], + [-8.204199218749977, 42.11186523437496], + [-8.213085937499926, 42.133691406249966], + [-8.266064453124983, 42.13740234375001], + [-8.322558593749932, 42.115087890625006], + [-8.538085937499972, 42.0693359375], + [-8.589648437499989, 42.052734375], + [-8.68295898437492, 42.008496093749955], + [-8.777148437500017, 41.941064453124994], + [-8.85234375, 41.92690429687502], + [-8.878320312500023, 41.946875], + [-8.887207031249943, 42.105273437500045], + [-8.772460937499943, 42.210595703124994], + [-8.690917968749943, 42.274169921875], + [-8.729199218749926, 42.28701171875002], + [-8.815820312499966, 42.285253906250034], + [-8.809960937499937, 42.33447265625003], + [-8.76938476562492, 42.35815429687506], + [-8.730029296874989, 42.411718750000034], + [-8.776171874999989, 42.43481445312503], + [-8.81210937499992, 42.470068359375034], + [-8.80991210937492, 42.562353515625006], + [-8.79990234374992, 42.59990234375002], + [-8.8115234375, 42.64033203124998], + [-8.987792968750028, 42.58564453125004], + [-9.033105468750023, 42.593847656250006], + [-9.035058593749966, 42.66235351562503], + [-8.937207031249926, 42.76669921875006], + [-8.927197265624926, 42.79858398437497], + [-9.041601562499977, 42.81401367187502], + [-9.127197265625, 42.86523437499997], + [-9.179443359374972, 42.91098632812506], + [-9.235205078124977, 42.97690429687498], + [-9.235644531249989, 43.035791015624994], + [-9.178076171874977, 43.17402343749998], + [-9.095556640624949, 43.214208984375006], + [-9.024511718749949, 43.23896484374998], + [-8.873681640624966, 43.33442382812498], + [-8.665625, 43.31660156250001], + [-8.537060546874955, 43.337060546874994], + [-8.421582031249955, 43.38583984374998], + [-8.355468749999972, 43.396826171875006], + [-8.248925781249937, 43.43940429687498], + [-8.25229492187492, 43.49692382812506], + [-8.288867187500017, 43.539599609375045], + [-8.256738281249937, 43.57988281249999], + [-8.137158203124926, 43.629052734374966], + [-8.004687499999932, 43.69438476562496], + [-7.852734374999983, 43.70698242187504], + [-7.698144531249994, 43.76455078125005] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Estonia", + "iso_a2": "EE", + "iso_a3": "EST", + "iso_n3": "233", + "continent": "Europe" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [22.61738281250004, 58.62124023437502], + [22.688378906250023, 58.59702148437506], + [22.753808593750023, 58.60468750000001], + [22.820117187500045, 58.62153320312498], + [22.964257812500023, 58.60571289062506], + [23.29287109375008, 58.483496093750006], + [23.323242187500057, 58.45083007812502], + [23.127148437500068, 58.43598632812501], + [23.082617187500063, 58.39848632812502], + [23.035449218750045, 58.372314453125], + [22.97988281250008, 58.36386718749998], + [22.88515625000005, 58.311279296875], + [22.757031250000068, 58.260888671874966], + [22.730273437500045, 58.23066406250001], + [22.49843750000005, 58.236230468749994], + [22.371679687499977, 58.217138671875006], + [22.269335937500017, 58.16074218749998], + [22.227343750000074, 58.05180664062499], + [22.152441406250006, 57.966796875], + [22.076269531250034, 57.93603515625003], + [21.996875, 57.93134765624998], + [21.97802734375, 57.96328125], + [21.98554687500001, 57.99516601562502], + [22.152929687500006, 58.11533203124998], + [22.187695312500068, 58.15434570312502], + [22.10439453125008, 58.17167968749999], + [22.03457031250005, 58.21337890625006], + [21.88212890624999, 58.262353515624994], + [21.854492187500057, 58.301660156249994], + [21.891015625000023, 58.304589843749994], + [21.924414062500006, 58.31586914062498], + [21.96503906250001, 58.34882812500001], + [21.984082031250068, 58.38666992187501], + [21.862304687500057, 58.497167968750034], + [21.924414062500006, 58.51425781249998], + [22.00185546875005, 58.51025390625006], + [22.081347656250074, 58.47812], + [22.168554687500006, 58.51582031250004], + [22.20556640625, 58.521386718749994], + [22.2666015625, 58.50795898437502], + [22.328125, 58.580859375000045], + [22.474414062500045, 58.604882812499966], + [22.546972656250006, 58.62739257812501], + [22.61738281250004, 58.62124023437502] + ] + ], + [ + [ + [23.343554687500017, 58.550341796875045], + [23.260351562500034, 58.53999023437498], + [23.063476562500057, 58.61108398437497], + [23.10908203125004, 58.65922851562502], + [23.16542968750005, 58.67812], + [23.332812500000045, 58.648583984374994], + [23.356445312500057, 58.575537109375034], + [23.343554687500017, 58.550341796875045] + ] + ], + [ + [ + [22.923730468750023, 58.826904296875], + [22.84169921875008, 58.777441406250034], + [22.79287109375008, 58.79721679687498], + [22.76728515625004, 58.820898437500006], + [22.661425781250045, 58.70917968749998], + [22.54218750000001, 58.68999023437499], + [22.472656250000057, 58.71206054687505], + [22.47890625000008, 58.75380859375002], + [22.411035156250023, 58.863378906250034], + [22.307421875000045, 58.89545898437501], + [22.161914062500074, 58.89848632812502], + [22.05625, 58.94360351562506], + [22.46259765625004, 58.97431640625001], + [22.504589843750068, 59.02646484375006], + [22.587207031250017, 59.08120117187502], + [22.6494140625, 59.08710937499998], + [22.702246093750006, 59.074414062499955], + [22.71220703124999, 59.03198242187503], + [22.72548828125005, 59.015087890624955], + [22.90986328125004, 58.99121093749997], + [22.98164062500001, 58.919824218749994], + [23.008691406249994, 58.83393554687501], + [22.923730468750023, 58.826904296875] + ] + ], + [ + [ + [25.50927734374997, 59.63901367187506], + [25.61572265625, 59.627539062500034], + [25.79375, 59.634667968749966], + [26.46083984375005, 59.553906249999955], + [26.625, 59.553906249999955], + [26.85205078124997, 59.471777343750006], + [26.974707031250006, 59.450634765624955], + [27.33583984375005, 59.45048828125002], + [27.892578125000057, 59.414208984374994], + [28.001855468750023, 59.46982421875006], + [28.0125, 59.484277343749966], + [28.06582031250008, 59.453173828125045], + [28.13300781250001, 59.40307617187503], + [28.15107421875004, 59.374414062499966], + [28.128320312500023, 59.357568359374994], + [28.061328125000045, 59.34326171875003], + [28.046093750000068, 59.32783203124998], + [28.016406250000045, 59.30170898437498], + [27.93818359375001, 59.29702148437502], + [27.89765625000001, 59.277636718750074], + [27.84951171875005, 59.19267578124999], + [27.757617187500074, 59.05200195312503], + [27.62177734375004, 58.944970703124966], + [27.513085937499994, 58.88627929687502], + [27.464453125000034, 58.84130859375], + [27.434179687500006, 58.787255859374994], + [27.427050781250074, 58.733056640624966], + [27.531347656250006, 58.435253906249955], + [27.53007812499999, 58.38149414062502], + [27.505566406250068, 58.326269531250034], + [27.48779296875, 58.270068359375045], + [27.502441406250057, 58.221337890624994], + [27.571093750000017, 58.138085937499994], + [27.644140625000063, 58.013916015625], + [27.673437499999977, 57.93461914062502], + [27.721972656250017, 57.90546875000004], + [27.76875, 57.884130859375034], + [27.778515625000068, 57.87070312500006], + [27.776953125000034, 57.85673828124996], + [27.75283203125008, 57.841015624999955], + [27.542089843750063, 57.799414062500006], + [27.514746093749977, 57.76420898437502], + [27.491992187500045, 57.724951171875034], + [27.4, 57.66679687499999], + [27.371777343749983, 57.61254882812503], + [27.354296875000074, 57.55029296874997], + [27.35195312500005, 57.52812], + [27.326562500000023, 57.52548828124998], + [27.187109375000034, 57.53833007812503], + [27.033398437500068, 57.578759765624994], + [26.96601562500001, 57.60913085937506], + [26.899804687500023, 57.608789062499994], + [26.81972656250005, 57.58872070312498], + [26.532617187499994, 57.53100585937503], + [26.46210937500004, 57.54448242187502], + [26.29804687500001, 57.60107421875], + [26.215039062500068, 57.662744140624966], + [26.030371093750006, 57.78554687500002], + [26.015234375000034, 57.81474609375002], + [25.99111328125008, 57.83818359374999], + [25.79375, 57.868554687499966], + [25.72089843750001, 57.91381835937506], + [25.66015625, 57.920166015625], + [25.5712890625, 57.942773437499994], + [25.34003906250004, 58.039453124999966], + [25.28261718750008, 58.04848632812502], + [25.268652343749977, 58.0322265625], + [25.27265625000001, 58.009375], + [25.25830078125, 57.99614257812502], + [25.22871093750001, 57.99658203125003], + [25.17519531250005, 58.032128906249994], + [25.11103515625004, 58.06342773437498], + [24.91132812500001, 58.00458984374998], + [24.83906250000004, 57.98872070312504], + [24.775781250000023, 57.98525390625002], + [24.45888671875005, 57.907861328124994], + [24.3625, 57.86616210937501], + [24.322558593750074, 57.87060546875003], + [24.33203125000003, 57.909765625], + [24.4638671875, 58.10595703125003], + [24.4875, 58.26162109375002], + [24.535742187500063, 58.28300781250002], + [24.54970703125008, 58.304589843749994], + [24.529101562500045, 58.35424804687497], + [24.392187500000034, 58.38608398437498], + [24.336914062500057, 58.38139648437499], + [24.287207031250063, 58.328027343749966], + [24.235644531250045, 58.28955078125003], + [24.114843750000034, 58.26611328125006], + [24.010937499999983, 58.30664062500006], + [23.767578125000057, 58.36083984374997], + [23.706054687500057, 58.43300781250002], + [23.691503906250034, 58.505615234375], + [23.56279296874999, 58.575830078124994], + [23.50927734375003, 58.65854492187498], + [23.530664062500023, 58.71625976562501], + [23.64746093750003, 58.754150390625], + [23.680761718750063, 58.787158203125074], + [23.53359375, 58.78193359374998], + [23.50361328125001, 58.78984374999999], + [23.497167968750034, 58.81953124999998], + [23.43203125, 58.920654296875], + [23.489648437500023, 58.96049804687502], + [23.51503906250005, 58.99921875000001], + [23.4677734375, 59.03217773437498], + [23.48017578125004, 59.06967773437498], + [23.51699218750008, 59.107568359374966], + [23.494433593750017, 59.19565429687498], + [23.640527343750023, 59.242333984374966], + [23.78251953124999, 59.275146484375], + [24.083398437500023, 59.29189453125005], + [24.05361328125008, 59.372314453125], + [24.175390625, 59.37592773437501], + [24.38037109375003, 59.47265625], + [24.583593750000034, 59.455664062500006], + [24.877539062500063, 59.522070312500034], + [25.44375, 59.52114257812502], + [25.52089843750005, 59.55947265625002], + [25.507421875000034, 59.59799804687506], + [25.50927734374997, 59.63901367187506] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Ethiopia", + "iso_a2": "ET", + "iso_a3": "ETH", + "iso_n3": "231", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [38.43144531250002, 14.428613281249994], + [38.50439453125, 14.424414062499991], + [38.81201171875, 14.482324218749994], + [38.995703125, 14.586865234374997], + [39.02382812500002, 14.628222656250003], + [39.07421875, 14.628222656250003], + [39.13544921875001, 14.581884765624991], + [39.15859375000002, 14.5375], + [39.19804687500002, 14.479394531249994], + [39.270117187500006, 14.4703125], + [39.44609375000002, 14.511865234374994], + [39.531835937500006, 14.53671875], + [39.60488281250002, 14.516064453124997], + [39.69794921875001, 14.4990234375], + [39.75615234375002, 14.4990234375], + [39.895117187500006, 14.440673828125], + [40.062109375, 14.459130859374994], + [40.140625, 14.4560546875], + [40.22148437500002, 14.43115234375], + [40.353125, 14.338085937499997], + [40.5244140625, 14.225195312499991], + [40.76953125, 14.144482421874997], + [40.82011718750002, 14.111669921874991], + [40.938574218750006, 13.983105468749997], + [41.12236328125002, 13.736132812500003], + [41.362890625, 13.499804687500003], + [41.625, 13.313232421875], + [41.76503906250002, 13.183935546874991], + [41.85957031250001, 13.02587890625], + [41.9521484375, 12.88232421875], + [42.04658203125001, 12.820605468749989], + [42.13427734375, 12.771435546874997], + [42.225, 12.661962890624991], + [42.28994140625002, 12.570214843749994], + [42.378515625, 12.46640625], + [42.280371093750006, 12.324267578124989], + [42.14912109375001, 12.134130859374991], + [41.99589843750002, 11.912353515625], + [41.94960937500002, 11.857861328124997], + [41.815625, 11.723779296874994], + [41.79267578125001, 11.68603515625], + [41.76650390625002, 11.589111328125], + [41.7646484375, 11.412890624999989], + [41.78203125000002, 11.187792968749989], + [41.79824218750002, 10.98046875], + [41.872167968750006, 10.955810546875], + [41.95742187500002, 10.941015625], + [42.05214843750002, 10.968359375], + [42.16621093750001, 10.991601562499994], + [42.30810546875, 11.005224609374991], + [42.46513671875002, 11.047070312499997], + [42.557714843750006, 11.080761718749997], + [42.65498046875001, 11.078320312499997], + [42.7412109375, 11.042382812499994], + [42.78300781250002, 11.00927734375], + [42.84414062500002, 10.997949218749994], + [42.92275390625002, 10.999316406249989], + [42.90615234375002, 10.960253906249989], + [42.862890625, 10.903222656249994], + [42.80976562500001, 10.845996093749989], + [42.76308593750002, 10.786914062499989], + [42.65957031250002, 10.621386718749989], + [42.65644531250001, 10.6], + [42.66923828125002, 10.567578125], + [42.725195312500006, 10.491748046874989], + [42.78369140625, 10.36962890625], + [42.81640625, 10.257373046874989], + [42.84160156250002, 10.203076171874997], + [42.9125, 10.140820312499997], + [43.014746093750006, 10.012597656249994], + [43.068945312500006, 9.926220703124997], + [43.181640625, 9.879980468749991], + [43.21845703125001, 9.770166015624994], + [43.303125, 9.609082031249997], + [43.39433593750002, 9.480273437499989], + [43.482519531250006, 9.379492187499991], + [43.5810546875, 9.340722656249994], + [43.62050781250002, 9.33740234375], + [43.826757812500006, 9.15078125], + [43.98378906250002, 9.008837890624989], + [44.02285156250002, 8.986035156249997], + [44.30625, 8.89306640625], + [44.63203125000001, 8.786083984374997], + [44.8935546875, 8.7001953125], + [45.22695312500002, 8.5908203125], + [45.55546875000002, 8.483007812499991], + [45.86328125, 8.3798828125], + [46.295996093750006, 8.234960937499991], + [46.64472656250001, 8.1181640625], + [46.91953125, 8.026123046875], + [46.97822265625001, 7.9970703125], + [47.3056640625, 7.9970703125], + [47.6376953125, 7.9970703125], + [47.97822265625001, 7.9970703125], + [47.73164062500001, 7.759326171874989], + [47.45283203125001, 7.490478515625], + [47.159765625, 7.207861328124991], + [46.97119140625, 7.026025390624994], + [46.67177734375002, 6.737255859374997], + [46.422949218750006, 6.497265625], + [46.16679687500002, 6.234667968749989], + [45.93496093750002, 5.997216796874994], + [45.63359375000002, 5.668261718749989], + [45.4384765625, 5.455419921874991], + [45.1328125, 5.121679687499991], + [44.940527343750006, 4.912011718749994], + [44.91162109375, 4.89990234375], + [44.63662109375002, 4.915771484375], + [44.36953125000002, 4.931201171874989], + [44.028125, 4.950976562499989], + [43.988867187500006, 4.950537109374991], + [43.88945312500002, 4.930761718749991], + [43.829199218750006, 4.911425781249989], + [43.58349609375, 4.85498046875], + [43.53828125000001, 4.84033203125], + [43.333984375, 4.750390625], + [43.12568359375001, 4.644482421874997], + [43.01601562500002, 4.563330078124991], + [42.93095703125002, 4.4453125], + [42.89472656250001, 4.361083984375], + [42.85664062500001, 4.32421875], + [42.791601562500006, 4.2919921875], + [42.35517578125001, 4.212255859374991], + [42.22841796875002, 4.20166015625], + [42.02412109375001, 4.137939453125], + [41.91533203125002, 4.031298828124989], + [41.88398437500001, 3.977734375], + [41.73769531250002, 3.979052734374989], + [41.48193359375, 3.96328125], + [41.37246093750002, 3.946191406249994], + [41.318945312500006, 3.943066406249997], + [41.22089843750001, 3.943554687499997], + [41.14042968750002, 3.962988281249991], + [41.08720703125002, 3.991943359375], + [41.02080078125002, 4.057470703124991], + [40.87265625, 4.190332031249994], + [40.765234375, 4.273046875], + [40.52871093750002, 4.177636718749994], + [40.316015625, 4.082714843749997], + [40.01416015625, 3.947949218749997], + [39.84218750000002, 3.851464843749994], + [39.79033203125002, 3.754248046874991], + [39.65751953125002, 3.577832031249997], + [39.53886718750002, 3.469189453124997], + [39.49443359375002, 3.456103515624989], + [39.22548828125002, 3.478759765625], + [39.12832031250002, 3.500878906249994], + [38.9677734375, 3.520605468749991], + [38.75273437500002, 3.558984375], + [38.608007812500006, 3.60009765625], + [38.45156250000002, 3.604833984374991], + [38.22529296875001, 3.618994140624991], + [38.08613281250001, 3.648828125], + [37.944921875, 3.746728515624994], + [37.76289062500001, 3.864648437499994], + [37.57548828125002, 3.9859375], + [37.38251953125001, 4.11083984375], + [37.15458984375002, 4.254541015624994], + [36.90556640625002, 4.411474609374991], + [36.848242187500006, 4.42734375], + [36.82363281250002, 4.430126953124997], + [36.55302734375002, 4.437255859375], + [36.271875, 4.444726562499994], + [36.08193359375002, 4.44970703125], + [36.02197265625, 4.468115234374991], + [35.97871093750001, 4.503808593749994], + [35.91982421875002, 4.619824218749997], + [35.84560546875002, 4.70263671875], + [35.76308593750002, 4.808007812499994], + [35.75615234375002, 4.950488281249989], + [35.779296875, 5.105566406249991], + [35.80029296875, 5.156933593749997], + [35.78847656250002, 5.208105468749991], + [35.79140625000002, 5.278564453125], + [35.74501953125002, 5.343994140625], + [35.46865234375002, 5.419091796874994], + [35.42402343750001, 5.41328125], + [35.3779296875, 5.38515625], + [35.325292968750006, 5.364892578124994], + [35.28759765625, 5.384082031249989], + [35.2646484375, 5.412060546874997], + [35.26386718750001, 5.457910156249994], + [35.26835937500002, 5.492285156249991], + [35.25244140625, 5.511035156249989], + [35.16445312500002, 5.581201171874994], + [35.08193359375002, 5.673144531249989], + [35.03193359375001, 5.77490234375], + [34.98359375000001, 5.858300781249994], + [34.958984375, 6.045068359374994], + [34.89785156250002, 6.159814453124994], + [34.83808593750001, 6.300146484374991], + [34.74921875000001, 6.56787109375], + [34.71064453125001, 6.660302734374994], + [34.638769531250006, 6.72216796875], + [34.56279296875002, 6.779833984374989], + [34.484375, 6.898388671874997], + [34.279296875, 7.002832031249994], + [34.20039062500001, 7.084570312499991], + [34.06425781250002, 7.225732421874994], + [34.03017578125002, 7.296972656249991], + [34.02041015625002, 7.367968749999989], + [33.97792968750002, 7.4345703125], + [33.902441406250006, 7.509521484375], + [33.666113281250006, 7.670996093749991], + [33.60097656250002, 7.6904296875], + [33.51630859375001, 7.707763671875], + [33.39228515625001, 7.723730468749991], + [33.22597656250002, 7.760644531249994], + [33.08076171875001, 7.82373046875], + [33.0146484375, 7.868554687499994], + [32.99892578125002, 7.899511718749991], + [33.01259765625002, 7.951513671874991], + [33.06523437500002, 8.040478515624997], + [33.16523437500001, 8.251074218749991], + [33.23427734375002, 8.396386718749994], + [33.28105468750002, 8.437255859375], + [33.409375, 8.44775390625], + [33.54531250000002, 8.443408203124989], + [33.64482421875002, 8.432568359374997], + [33.78505859375002, 8.431103515624997], + [33.95332031250001, 8.443505859374994], + [34.01972656250001, 8.492089843749994], + [34.07275390625, 8.545263671874991], + [34.09453125000002, 8.582226562499997], + [34.10175781250001, 8.676367187499991], + [34.1015625, 8.751855468749994], + [34.09101562500001, 9.041259765625], + [34.084570312500006, 9.218505859375], + [34.0771484375, 9.420996093749991], + [34.078125, 9.461523437499991], + [34.07929687500001, 9.513476562499989], + [34.12031250000001, 9.7296875], + [34.15908203125002, 9.853417968749994], + [34.18525390625001, 9.918554687499991], + [34.29150390625, 10.124755859375], + [34.31123046875001, 10.190869140624997], + [34.31484375000002, 10.2515625], + [34.27568359375002, 10.52812], + [34.34394531250001, 10.658642578124997], + [34.43144531250002, 10.787841796875], + [34.50800781250001, 10.842871093749991], + [34.571875, 10.880175781249989], + [34.60175781250001, 10.864550781249989], + [34.675, 10.804931640625], + [34.77128906250002, 10.746191406249991], + [34.81621093750002, 10.759179687499994], + [34.88232421875, 10.810546875], + [34.93144531250002, 10.864794921874989], + [34.924902343750006, 10.962109375], + [34.96914062500002, 11.161767578124994], + [34.96074218750002, 11.276757812499994], + [35.007910156250006, 11.419873046874997], + [35.059667968750006, 11.621044921874997], + [35.08271484375001, 11.748291015625], + [35.1123046875, 11.816552734374994], + [35.25244140625, 11.95703125], + [35.37275390625001, 12.155566406249989], + [35.44960937500002, 12.300585937499989], + [35.59609375000002, 12.537304687499997], + [35.67021484375002, 12.623730468749997], + [35.730566406250006, 12.661035156249994], + [35.82060546875002, 12.684863281249989], + [35.98759765625002, 12.706298828125], + [36.107519531250006, 12.726464843749994], + [36.12519531250001, 12.75703125], + [36.135351562500006, 12.805322265624994], + [36.13710937500002, 12.9111328125], + [36.16015625, 13.093310546874989], + [36.21220703125002, 13.27109375], + [36.273535156250006, 13.40576171875], + [36.30683593750001, 13.466845703125003], + [36.346289062500006, 13.526269531249994], + [36.390625, 13.626074218749991], + [36.44707031250002, 13.842041015625], + [36.443945312500006, 13.988427734374994], + [36.52431640625002, 14.2568359375], + [36.54238281250002, 14.258203125], + [36.67910156250002, 14.307568359374997], + [36.81191406250002, 14.315039062499991], + [36.94072265625002, 14.280566406250003], + [37.024511718750006, 14.27197265625], + [37.0634765625, 14.289257812499997], + [37.09941406250002, 14.333984375], + [37.13261718750002, 14.406054687500003], + [37.18515625, 14.445996093749997], + [37.25722656250002, 14.453759765624994], + [37.35371093750001, 14.372460937499994], + [37.50722656250002, 14.156396484374994], + [37.54677734375002, 14.143847656250003], + [37.57119140625002, 14.149072265624994], + [37.6484375, 14.322558593750003], + [37.70839843750002, 14.457226562499997], + [37.8203125, 14.70849609375], + [37.88417968750002, 14.852294921875], + [37.943457031250006, 14.810546875], + [38.002539062500006, 14.737109375], + [38.069921875, 14.702734375], + [38.14199218750002, 14.681494140624991], + [38.17705078125002, 14.678808593749991], + [38.22148437500002, 14.649658203125], + [38.376953125, 14.470410156249997], + [38.43144531250002, 14.428613281249994] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Finland", + "iso_a2": "FI", + "iso_a3": "FIN", + "iso_n3": "246", + "continent": "Europe" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [21.62832031250008, 60.1078125], + [21.540625, 60.09790039062503], + [21.48603515625004, 60.126806640625034], + [21.50673828125008, 60.148339843749994], + [21.567968750000034, 60.17231445312498], + [21.63408203124999, 60.16899414062502], + [21.64814453125001, 60.14086914062497], + [21.62832031250008, 60.1078125] + ] + ], + [ + [ + [21.833203125000068, 60.140527343749994], + [21.73310546875001, 60.10615234375001], + [21.695019531250068, 60.114355468750006], + [21.70478515625001, 60.17231445312498], + [21.764257812500063, 60.19882812499998], + [21.864355468750006, 60.201806640624966], + [21.833203125000068, 60.140527343749994] + ] + ], + [ + [ + [22.17509765624999, 60.370751953124994], + [22.301757812500057, 60.347558593749994], + [22.354980468750057, 60.355859375], + [22.41552734375003, 60.30336914062505], + [22.312890625, 60.26997070312498], + [22.305761718750063, 60.22856445312499], + [22.346289062500063, 60.20283203124998], + [22.36054687500004, 60.165576171875045], + [22.25830078124997, 60.165625], + [22.209375, 60.196972656249955], + [22.188085937500063, 60.23676757812498], + [22.14052734375005, 60.26489257812503], + [22.07714843750003, 60.286328124999955], + [22.108203125000045, 60.31489257812498], + [22.125878906249994, 60.355859375], + [22.17509765624999, 60.370751953124994] + ] + ], + [ + [ + [21.994238281250006, 60.336669921875], + [21.921484375000034, 60.33227539062497], + [21.818652343750045, 60.38183593750006], + [21.805664062500057, 60.401220703125006], + [21.845996093750017, 60.41245117187498], + [21.8193359375, 60.45229492187502], + [21.827246093750006, 60.469921874999955], + [21.906835937500063, 60.43847656250003], + [21.950292968750034, 60.401708984375006], + [21.907812499999977, 60.393164062500034], + [21.97978515624999, 60.35522460937503], + [21.994238281250006, 60.336669921875] + ] + ], + [ + [ + [21.450878906250068, 60.529589843750045], + [21.43691406250008, 60.483056640624966], + [21.369042968749994, 60.488232421874955], + [21.3, 60.47978515625002], + [21.24433593750001, 60.525976562500006], + [21.214550781250068, 60.60385742187498], + [21.224707031250006, 60.62060546875003], + [21.26806640625003, 60.63828124999998], + [21.301269531250057, 60.59555664062498], + [21.450878906250068, 60.529589843750045] + ] + ], + [ + [ + [21.2177734375, 63.241308593750034], + [21.228515625000057, 63.22265624999997], + [21.287109375, 63.22778320312503], + [21.366015625000017, 63.261767578125045], + [21.421972656250034, 63.24589843749999], + [21.415625, 63.19736328125006], + [21.377636718750068, 63.19921875], + [21.36718749999997, 63.20722656250001], + [21.318457031250006, 63.179492187500045], + [21.30976562500001, 63.162695312500006], + [21.25341796875, 63.152001953124966], + [21.149316406249994, 63.19946289062503], + [21.08388671875008, 63.277539062499955], + [21.236328125000057, 63.277734375], + [21.221777343750034, 63.259130859375034], + [21.2177734375, 63.241308593750034] + ] + ], + [ + [ + [24.848242187500034, 64.99101562499999], + [24.69892578125001, 64.95781250000007], + [24.57861328125, 64.97856445312502], + [24.576562500000023, 65.04287109375], + [24.651171875000045, 65.073974609375], + [24.78603515625008, 65.08642578124997], + [24.970605468750023, 65.05532226562502], + [24.99755859375, 65.03872070312502], + [24.89179687500004, 65.02626953124997], + [24.848242187500034, 64.99101562499999] + ] + ], + [ + [ + [28.047265625000023, 69.97167968750003], + [28.269140625000034, 69.87143554687503], + [28.411718750000034, 69.82275390624997], + [28.800390625000063, 69.73149414062505], + [29.14160156250003, 69.67143554687505], + [29.33339843750005, 69.47299804687503], + [29.238867187500063, 69.39394531250002], + [29.19179687500005, 69.36669921874997], + [29.02490234374997, 69.28798828125], + [28.846289062500006, 69.17690429687502], + [28.832617187500063, 69.11899414062503], + [28.891894531250074, 69.06059570312505], + [28.96582031250003, 69.02197265625], + [28.89892578124997, 69.00966796874997], + [28.692187500000045, 68.96103515625], + [28.566015625, 68.92822265625], + [28.414062500000057, 68.90415039062506], + [28.453515625000023, 68.87226562499995], + [28.705957031250023, 68.86552734375002], + [28.74482421875004, 68.85644531250003], + [28.77285156250005, 68.84003906249995], + [28.777636718750045, 68.81381835937503], + [28.752050781250006, 68.77143554687501], + [28.479296875000017, 68.53764648437499], + [28.470703125000057, 68.48837890625], + [28.560156250000063, 68.35136718750007], + [28.685156250000034, 68.189794921875], + [29.06298828125, 68.11796875000002], + [29.343847656250006, 68.06186523437506], + [29.524218750000017, 67.92910156250002], + [29.821582031250017, 67.75400390625003], + [29.97919921875004, 67.68857421875003], + [29.988085937500017, 67.66826171874999], + [29.941210937500074, 67.54746093749998], + [29.750585937500006, 67.426416015625], + [29.57226562500003, 67.324365234375], + [29.38769531249997, 67.201416015625], + [29.243359375000097, 67.09658203125005], + [29.087011718750034, 66.97094726562503], + [29.06904296875001, 66.93022460937499], + [29.066210937500045, 66.89174804687497], + [29.093066406250017, 66.84921875], + [29.293261718750017, 66.69550781249995], + [29.371191406250006, 66.61704101562506], + [29.46435546874997, 66.53217773437498], + [29.544335937499994, 66.43969726562497], + [29.59072265625005, 66.35683593749997], + [29.67089843749997, 66.27612304687506], + [29.72070312499997, 66.23486328125], + [29.803515625000074, 66.17705078125002], + [29.903417968750006, 66.091064453125], + [29.936621093750006, 66.02294921875], + [30.0875, 65.78652343749997], + [30.102734375000097, 65.72626953125004], + [30.0953125, 65.68168945312502], + [30.029003906250097, 65.67070312499999], + [29.882617187500017, 65.66362304687505], + [29.723925781250017, 65.634375], + [29.715917968750063, 65.62456054687502], + [29.819433593750006, 65.56875], + [29.72802734374997, 65.47343750000005], + [29.71484375000003, 65.33696289062505], + [29.61718750000003, 65.26533203125001], + [29.608007812500006, 65.248681640625], + [29.612402343750006, 65.234765625], + [29.629687500000017, 65.223876953125], + [29.81054687499997, 65.204736328125], + [29.82617187499997, 65.18530273437506], + [29.826953125000017, 65.14506835937502], + [29.810839843750074, 65.10791015625], + [29.720019531250017, 65.08032226562497], + [29.62246093750005, 65.03950195312501], + [29.600878906250074, 65.001953125], + [29.60419921875004, 64.968408203125], + [29.6375, 64.911767578125], + [29.70166015625003, 64.84575195312505], + [29.78320312500003, 64.80429687500006], + [30.072851562500063, 64.76503906250005], + [30.11025390625005, 64.732568359375], + [30.126171875000097, 64.6880859375], + [30.12011718749997, 64.64462890625003], + [29.98554687500004, 64.55771484375], + [29.986621093750074, 64.52426757812503], + [30.04189453125005, 64.44335937499997], + [30.10810546875004, 64.36611328125005], + [30.390625, 64.28242187499995], + [30.487890625000063, 64.23652343750001], + [30.513769531250006, 64.2], + [30.527929687500006, 64.14111328125003], + [30.526074218750097, 64.077294921875], + [30.50390625000003, 64.02060546875], + [30.415332031250017, 63.94750976562503], + [30.210253906250074, 63.80332031250006], + [30.004101562500097, 63.747314453125], + [29.991503906250074, 63.73515625000002], + [30.05537109375004, 63.689013671875045], + [30.418554687500063, 63.50405273437502], + [30.65527343749997, 63.41748046875006], + [30.97480468750004, 63.300634765625034], + [31.180859375000097, 63.208300781250074], + [31.247460937499994, 63.141894531250045], + [31.336718750000074, 63.06806640625001], + [31.43701171874997, 63.007714843749966], + [31.50927734375003, 62.95532226562503], + [31.536523437499994, 62.92163085937503], + [31.533984375000017, 62.885400390624994], + [31.437304687500017, 62.77612304687503], + [31.382421875, 62.69165039062497], + [31.28564453125003, 62.567822265624955], + [31.18671875000004, 62.48139648437504], + [30.935742187500097, 62.32377929687499], + [30.565625, 62.127587890624994], + [30.47968750000004, 62.06821289062506], + [30.306445312500017, 61.96484375000006], + [30.00996093750004, 61.757373046875045], + [29.933203125, 61.711572265624966], + [29.69013671875004, 61.54609375000001], + [29.579394531250074, 61.49345703125002], + [29.492382812500097, 61.44423828125002], + [29.251660156250097, 61.287792968749955], + [28.992968750000045, 61.169042968750006], + [28.739062500000017, 61.05874023437502], + [28.662890625000045, 61.002832031249994], + [28.568164062500017, 60.960205078125], + [28.455078125000057, 60.91962890625001], + [28.40742187500004, 60.89692382812501], + [28.151953125000034, 60.74584960937503], + [27.797656250000074, 60.53613281250003], + [27.761621093750023, 60.532861328124994], + [27.66933593750005, 60.49897460937501], + [27.52509765625004, 60.490771484375045], + [27.46240234374997, 60.46484375], + [27.24189453125001, 60.538671875000034], + [27.20527343750001, 60.54345703125003], + [27.07558593750005, 60.52514648437503], + [26.951171875, 60.47148437500002], + [26.721484375000017, 60.45507812500006], + [26.607421875000057, 60.437695312499955], + [26.53466796874997, 60.412890625000074], + [26.51972656250004, 60.47158203125002], + [26.55117187500005, 60.545996093750006], + [26.601757812500068, 60.595605468749994], + [26.60644531250003, 60.6279296875], + [26.56933593750003, 60.62456054687502], + [26.495800781250068, 60.551806640625045], + [26.456445312500023, 60.46679687500003], + [26.377734375000074, 60.42407226562503], + [26.204687499999977, 60.406591796875034], + [26.036035156249994, 60.47490234374999], + [25.955957031250023, 60.474218750000034], + [26.00625, 60.42529296875003], + [26.040234375000068, 60.37158203125], + [26.03583984375004, 60.34150390625001], + [25.945898437500034, 60.346777343750006], + [25.845800781250063, 60.31459960937502], + [25.75800781250004, 60.26752929687504], + [25.715429687500063, 60.267431640625006], + [25.65644531250004, 60.33320312499998], + [25.548242187500023, 60.30249023437506], + [25.45576171875001, 60.26123046875], + [25.267871093750017, 60.24833984375002], + [25.155859375, 60.194091796875], + [24.957617187500034, 60.157470703125], + [24.848730468750063, 60.158349609374994], + [24.600488281250023, 60.11425781249997], + [24.51796875000008, 60.046289062499994], + [24.44560546874999, 60.021289062500045], + [24.342578125000045, 60.04233398437498], + [24.025195312500045, 60.009179687499966], + [23.721777343750063, 59.965673828125006], + [23.59267578125005, 59.968164062499966], + [23.46357421875004, 59.986230468749994], + [23.326757812500063, 59.92578125000003], + [23.181445312500017, 59.84492187499998], + [23.021289062500074, 59.81601562500006], + [22.96386718750003, 59.82636718750004], + [23.009765625000057, 59.868798828124966], + [23.115722656250057, 59.912695312500034], + [23.18847656250003, 59.97221679687499], + [23.19843750000001, 60.02182617187498], + [23.148437500000057, 60.041308593750045], + [23.080175781250006, 60.047265625], + [22.994140625000057, 60.098535156249966], + [22.911718750000063, 60.20971679687497], + [22.867089843750023, 60.21582031249997], + [22.84443359375001, 60.18662109374998], + [22.819140625000017, 60.10136718750002], + [22.79345703125003, 60.076806640624994], + [22.749804687500017, 60.057275390624994], + [22.697363281250006, 60.03759765625], + [22.64619140625004, 60.02802734374998], + [22.462695312500045, 60.029199218749966], + [22.438574218750034, 60.07226562500003], + [22.438574218750034, 60.09028320312498], + [22.47109375000008, 60.14697265624997], + [22.442675781250074, 60.15688476562505], + [22.46972656249997, 60.20131835937505], + [22.51298828124999, 60.19892578124998], + [22.564257812500045, 60.20551757812501], + [22.589941406250034, 60.228369140625034], + [22.587988281250006, 60.25566406250002], + [22.516699218750034, 60.26274414062502], + [22.512304687500034, 60.281347656250006], + [22.57587890625001, 60.35908203125004], + [22.5849609375, 60.380566406249955], + [22.560351562500045, 60.38500976562497], + [22.52050781250003, 60.376562500000034], + [22.257910156250006, 60.40092773437502], + [21.93398437500008, 60.50029296875002], + [21.854296875000017, 60.50541992187499], + [21.805273437500063, 60.59414062500005], + [21.727148437500034, 60.582910156249966], + [21.61328125000003, 60.530957031249955], + [21.52783203125003, 60.570410156250006], + [21.436035156250057, 60.596386718749955], + [21.410644531250057, 60.63696289062497], + [21.411914062500045, 60.69682617187499], + [21.40400390625001, 60.767431640625006], + [21.378906250000057, 60.850048828124955], + [21.36054687500004, 60.96748046874998], + [21.37773437499999, 61.05922851562502], + [21.45097656249999, 61.12714843750001], + [21.479101562500034, 61.170507812500034], + [21.513476562500045, 61.281201171874955], + [21.52119140625001, 61.41083984374998], + [21.501757812500045, 61.454980468749994], + [21.506640625000074, 61.48432617187504], + [21.565039062500063, 61.48432617187504], + [21.552343750000034, 61.509521484375], + [21.526660156250045, 61.52329101562498], + [21.49824218750004, 61.551953124999955], + [21.5224609375, 61.56713867187503], + [21.592382812500034, 61.56821289062498], + [21.598046875000023, 61.577880859375], + [21.605957031250057, 61.59155273437503], + [21.551855468750034, 61.666845703125006], + [21.54560546875001, 61.702734375000034], + [21.470507812500074, 61.81166992187502], + [21.384863281250034, 61.914941406249994], + [21.255957031250063, 61.98964843750005], + [21.30166015625005, 62.11264648437506], + [21.353710937499983, 62.223828124999955], + [21.343359375, 62.277392578125045], + [21.32343750000004, 62.34257812499999], + [21.165625, 62.4140625], + [21.142187500000063, 62.514794921874994], + [21.103613281250034, 62.622949218749994], + [21.118164062500057, 62.68925781250002], + [21.143847656250045, 62.73999023437506], + [21.19570312500005, 62.79052734375003], + [21.45751953125, 62.95], + [21.47353515625008, 63.03325195312502], + [21.650976562500063, 63.039306640625], + [21.568652343750074, 63.11372070312498], + [21.549218750000023, 63.15551757812497], + [21.545117187499983, 63.204296874999955], + [21.800390625000034, 63.23769531250002], + [21.89570312500001, 63.21025390625002], + [22.12031250000004, 63.244140625], + [22.31972656250005, 63.310449218749994], + [22.316210937500045, 63.34565429687498], + [22.285546875000023, 63.377197265625], + [22.243261718750034, 63.437939453124955], + [22.273242187500017, 63.45478515625001], + [22.34599609374999, 63.44238281249997], + [22.312597656250034, 63.472558593749994], + [22.318652343750017, 63.50439453125], + [22.398046875000034, 63.491162109374955], + [22.527636718750045, 63.57998046875002], + [22.532324218750034, 63.647851562499994], + [22.75625, 63.68334960937503], + [23.014453125000017, 63.82182617187499], + [23.133593750000045, 63.86494140624998], + [23.248730468750068, 63.89614257812505], + [23.493945312500017, 64.03447265625007], + [23.598925781250074, 64.04091796874997], + [23.652929687500063, 64.13417968750005], + [23.861425781250006, 64.25825195312501], + [23.92480468750003, 64.27412109374995], + [24.022265625000074, 64.385986328125], + [24.27832031250003, 64.51528320312497], + [24.440625, 64.68012695312498], + [24.53017578125008, 64.738671875], + [24.557910156250045, 64.801025390625], + [24.657617187500023, 64.80629882812502], + [24.747558593750057, 64.85209960937502], + [24.94218749999999, 64.88403320312503], + [25.134277343750057, 64.87519531250001], + [25.214257812499994, 64.85346679687504], + [25.288183593750063, 64.8603515625], + [25.280761718750057, 64.91640624999997], + [25.228027343750057, 64.951025390625], + [25.271093750000034, 64.98427734375002], + [25.372656250000034, 65.00947265625001], + [25.362304687500057, 65.06513671874998], + [25.340234375, 65.09863281249997], + [25.255859375000057, 65.14326171875001], + [25.29785156249997, 65.24321289062502], + [25.307910156250074, 65.35273437499995], + [25.34785156250004, 65.47924804687497], + [25.241796875000034, 65.54628906250005], + [24.83935546875, 65.66035156250001], + [24.764257812499977, 65.656396484375], + [24.674902343750006, 65.67070312499999], + [24.58154296874997, 65.75712890625002], + [24.62324218750004, 65.83168945312502], + [24.628027343750034, 65.85917968750002], + [24.591601562500074, 65.85834960937504], + [24.53261718750005, 65.822021484375], + [24.40429687500003, 65.78046874999998], + [24.2375, 65.81235351562498], + [24.15546875000004, 65.80527343750006], + [24.04902343750004, 65.98984375], + [23.994628906250057, 66.06035156250005], + [23.907324218750034, 66.14824218750002], + [23.75146484374997, 66.19116210937497], + [23.720996093750074, 66.21542968750003], + [23.700292968750034, 66.25263671874998], + [23.693554687499983, 66.304296875], + [23.673828125000057, 66.38071289062503], + [23.68203125000005, 66.44340820312502], + [23.70117187500003, 66.48076171874999], + [23.768359375000045, 66.50585937500006], + [23.865527343750045, 66.57661132812498], + [23.885839843750006, 66.62802734374998], + [23.894140625, 66.70688476562506], + [23.93886718750005, 66.77573242187506], + [23.988574218750045, 66.81054687500003], + [23.97607421875, 66.838232421875], + [23.941796875000023, 66.87783203124997], + [23.86933593750001, 66.93403320312498], + [23.75898437500001, 67.002587890625], + [23.677343750000063, 67.06811523437503], + [23.64150390625005, 67.12939453124997], + [23.62304687500003, 67.18413085937502], + [23.626074218750006, 67.23393554687505], + [23.656640625000023, 67.26782226562503], + [23.76093750000004, 67.31049804687501], + [23.774902343750057, 67.32861328124997], + [23.733593750000068, 67.42290039062499], + [23.660839843749983, 67.44003906250003], + [23.537109375, 67.44916992187501], + [23.468066406250074, 67.449951171875], + [23.454882812500045, 67.46025390625007], + [23.451464843750045, 67.47919921875001], + [23.465429687500063, 67.51787109374999], + [23.504492187500034, 67.56215820312505], + [23.53701171875008, 67.59038085937502], + [23.541308593750074, 67.61430664062502], + [23.50019531250004, 67.69619140625], + [23.48779296875, 67.79658203125001], + [23.501855468750023, 67.87519531249995], + [23.632910156249977, 67.93320312500003], + [23.63886718750004, 67.95439453125002], + [23.474218749999977, 68.01733398437506], + [23.35546875000003, 68.08867187500002], + [23.318554687500068, 68.13032226562498], + [23.18251953125008, 68.13662109375002], + [23.09785156250004, 68.25756835937506], + [22.975390625000045, 68.31645507812505], + [22.854101562500034, 68.36733398437502], + [22.78242187500001, 68.39101562499997], + [22.362109375000074, 68.46406250000001], + [22.195117187500074, 68.47797851562501], + [21.99746093750005, 68.52060546874998], + [21.850195312500063, 68.57412109374997], + [21.724023437500023, 68.60854492187497], + [21.616015625000045, 68.6509765625], + [21.465429687500006, 68.690673828125], + [21.42236328125003, 68.72460937499997], + [21.25976562500003, 68.787451171875], + [21.183398437500017, 68.82880859374998], + [20.918554687500063, 68.90693359375001], + [20.908984375000074, 68.93774414062497], + [20.907031250000017, 68.96748046874998], + [20.895117187500006, 68.97983398437503], + [20.622167968750006, 69.036865234375], + [20.675878906250006, 69.069482421875], + [20.889257812500063, 69.07143554687502], + [21.065722656250017, 69.04174804687503], + [21.10449218750003, 69.05444335937503], + [21.12783203125008, 69.080810546875], + [21.052636718750023, 69.18657226562505], + [21.06611328125001, 69.21411132812497], + [21.14375, 69.24726562499998], + [21.26679687500004, 69.27368164062503], + [21.461230468750045, 69.277490234375], + [21.59375, 69.273583984375], + [21.621777343750068, 69.27070312499995], + [21.81972656250008, 69.15449218749998], + [21.98945312500001, 69.04111328124998], + [22.0796875, 68.9927734375], + [22.300390625000034, 68.855859375], + [22.382910156250063, 68.776611328125], + [22.410937500000074, 68.719873046875], + [22.500683593750068, 68.72021484374997], + [22.811035156250057, 68.69531249999997], + [23.07167968750005, 68.67436523437505], + [23.144335937500017, 68.64257812499997], + [23.324023437500017, 68.64897460937502], + [23.4625, 68.67763671875], + [23.70703125, 68.71386718750003], + [23.772558593750006, 68.75839843750003], + [23.85400390625, 68.80590820312503], + [23.997363281250074, 68.7984375], + [24.154101562500017, 68.760888671875], + [24.33203125000003, 68.71152343749998], + [24.49052734374999, 68.68867187500004], + [24.703222656249977, 68.65283203125003], + [24.80244140625004, 68.60649414062499], + [24.94140625000003, 68.59326171875006], + [25.0869140625, 68.63959960937498], + [25.1728515625, 68.76528320312502], + [25.249121093750006, 68.82133789062507], + [25.357128906250068, 68.862451171875], + [25.48085937500005, 68.88061523437497], + [25.575292968750006, 68.88715820312498], + [25.646679687499983, 68.91914062500001], + [25.748339843750017, 68.99013671875], + [25.768164062500063, 69.07612304687501], + [25.748632812500063, 69.23144531250003], + [25.767187500000034, 69.28266601562498], + [25.850195312500063, 69.36650390625002], + [25.961523437500006, 69.58862304687497], + [26.011523437500074, 69.65263671875005], + [26.07246093750004, 69.69155273437497], + [26.15615234375005, 69.71469726562498], + [26.308203125000034, 69.78193359375001], + [26.525390625000057, 69.91503906250003], + [26.584277343750045, 69.92631835937502], + [26.74023437500003, 69.93305664062498], + [26.93427734375004, 69.928125], + [27.108691406250045, 69.90468749999997], + [27.127539062500063, 69.90649414062497], + [27.205664062499977, 69.91870117187497], + [27.34804687500005, 69.96005859375006], + [27.591699218750023, 70.042236328125], + [27.747851562500045, 70.06484375], + [27.889941406250045, 70.06166992187497], + [28.047265625000023, 69.97167968750003] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Fiji", + "iso_a2": "FJ", + "iso_a3": "FJI", + "iso_n3": "242", + "continent": "Oceania" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [174.62968750000002, -21.69501953125001], + [174.621875, -21.70585937499999], + [174.59296874999998, -21.702343749999983], + [174.58720703125007, -21.68007812499998], + [174.60419921875015, -21.667480468749986], + [174.62773437499996, -21.67597656250004], + [174.62968750000002, -21.69501953125001] + ] + ], + [ + [ + [-178.71162109374998, -20.66777343749999], + [-178.70952148437502, -20.670507812500006], + [-178.71494140625003, -20.670312499999966], + [-178.723095703125, -20.66679687499996], + [-178.7291015625, -20.66015625000003], + [-178.73056640625003, -20.652832031249957], + [-178.72753906250003, -20.64521484375001], + [-178.72456054687507, -20.64570312500001], + [-178.719189453125, -20.652343750000043], + [-178.71420898437498, -20.659765625000034], + [-178.71162109374998, -20.66777343749999] + ] + ], + [ + [ + [-178.535107421875, -19.166015625000014], + [-178.54633789062498, -19.175], + [-178.57373046874997, -19.164941406249966], + [-178.59594726562497, -19.151367187499957], + [-178.598681640625, -19.13710937499998], + [-178.58930664062504, -19.118847656249997], + [-178.56767578125, -19.109277343749994], + [-178.55668945312496, -19.11298828125004], + [-178.56298828125, -19.11875], + [-178.57617187500003, -19.12519531250004], + [-178.57407226562503, -19.143164062499977], + [-178.55712890624994, -19.15410156249999], + [-178.54062, -19.15703125], + [-178.535107421875, -19.166015625000014] + ] + ], + [ + [ + [178.48789062500018, -18.97412109375], + [178.48769531249994, -19.017089843749957], + [178.358984375, -19.045605468749997], + [178.315625, -19.010156249999966], + [178.28798828124994, -19.00371093749999], + [178.21132812499994, -19.06650390624999], + [178.18916015625004, -19.09228515625], + [178.18183593749998, -19.111718749999966], + [178.16210937500009, -19.121484375], + [178.02080078125007, -19.151660156250017], + [177.95869140624998, -19.121582031250014], + [178.00078125000007, -19.101074218750014], + [178.05195312499998, -19.060156250000034], + [178.10410156250012, -19.066210937500017], + [178.156640625, -19.027929687500034], + [178.20839843750005, -18.969628906249966], + [178.28222656250003, -18.957031249999986], + [178.33427734375013, -18.93447265625001], + [178.4203125000001, -18.950781250000034], + [178.48789062500018, -18.97412109375] + ] + ], + [ + [ + [-179.799853515625, -18.940332031250037], + [-179.797607421875, -18.969824218750006], + [-179.812451171875, -18.968164062500023], + [-179.83022460937497, -18.955566406250043], + [-179.83935546874997, -18.96171875], + [-179.8455078125, -18.970800781250034], + [-179.84858398437498, -18.991308593750034], + [-179.851220703125, -19.0029296875], + [-179.86503906249996, -18.99873046875004], + [-179.867333984375, -18.97841796874998], + [-179.86279296875003, -18.964160156250017], + [-179.85620117187503, -18.943261718750023], + [-179.831103515625, -18.92421875000005], + [-179.799853515625, -18.940332031250037] + ] + ], + [ + [ + [-178.7619140625, -18.23388671875], + [-178.7736328125, -18.25244140624997], + [-178.82734375000004, -18.222167968750014], + [-178.84790039062494, -18.20205078125001], + [-178.79086914062498, -18.186328125], + [-178.7630859375, -18.19140624999997], + [-178.7619140625, -18.23388671875] + ] + ], + [ + [ + [179.34931640625015, -18.10234375000003], + [179.34042968750012, -18.11044921874999], + [179.25351562500018, -18.030566406249974], + [179.25644531250006, -17.99902343750003], + [179.27177734375002, -17.97070312500003], + [179.30644531250013, -17.944042968750026], + [179.33789062499997, -17.98955078124996], + [179.36240234375018, -18.065234375000017], + [179.34931640625015, -18.10234375000003] + ] + ], + [ + [ + [-178.9880859375, -17.976660156250006], + [-179.01840820312498, -17.991796874999977], + [-179.03920898437502, -17.98837890624999], + [-179.06381835937498, -17.97236328125001], + [-179.07900390624997, -17.944140625000045], + [-179.04760742187497, -17.92041015625], + [-178.99912109375003, -17.94736328124999], + [-178.9880859375, -17.976660156250006] + ] + ], + [ + [ + [-178.25112304687497, -17.95273437500002], + [-178.30683593750004, -17.963281250000037], + [-178.3572265625, -17.920898437500014], + [-178.325390625, -17.875781249999974], + [-178.28032226562496, -17.88642578125001], + [-178.25458984375007, -17.929980468750003], + [-178.25112304687497, -17.95273437500002] + ] + ], + [ + [ + [178.8275390625001, -17.72900390625], + [178.7760742187501, -17.746777343749983], + [178.74765625000018, -17.685742187499983], + [178.78710937500003, -17.62441406250001], + [178.83105468750009, -17.618847656250026], + [178.85253906250003, -17.68125], + [178.8275390625001, -17.72900390625] + ] + ], + [ + [ + [178.28017578124994, -17.37197265625001], + [178.28017578124994, -17.41621093750004], + [178.30947265625005, -17.43535156250003], + [178.33857421875015, -17.438476562499957], + [178.41093750000013, -17.523046874999963], + [178.52324218750007, -17.595800781250034], + [178.59160156249996, -17.651464843750006], + [178.59570312499991, -17.699023437500017], + [178.57490234375015, -17.74931640624996], + [178.60380859374996, -17.839355468750014], + [178.61787109374998, -17.93281250000004], + [178.66767578125004, -18.080859375], + [178.5973632812501, -18.108984374999963], + [178.4867187500001, -18.112304687500014], + [178.46113281250004, -18.13896484375003], + [178.42343750000018, -18.12421875000004], + [178.33154296874991, -18.135253906249986], + [178.24375000000018, -18.183984374999966], + [178.16015625000003, -18.25019531250004], + [178.06396484374997, -18.250390625], + [177.95546875000005, -18.264062500000023], + [177.8470703125, -18.254882812500014], + [177.77080078125007, -18.219531250000017], + [177.6364257812501, -18.181054687499994], + [177.45732421875002, -18.14824218749996], + [177.383203125, -18.120703125000034], + [177.32138671875, -18.077539062500037], + [177.26347656250013, -17.968652343749966], + [177.25488281249997, -17.914941406250037], + [177.26396484375007, -17.86347656250004], + [177.31630859375005, -17.846093749999966], + [177.36015625000013, -17.820019531249983], + [177.36640625000015, -17.78603515624998], + [177.38574218749997, -17.762304687500034], + [177.4109375, -17.753710937499974], + [177.4232421875, -17.7373046875], + [177.40556640625013, -17.682128906249957], + [177.40068359375002, -17.631640624999974], + [177.5044921875, -17.539550781250043], + [177.61796875000007, -17.461035156250034], + [177.81796875000012, -17.38847656249999], + [177.94023437499996, -17.395117187500006], + [178.12763671875015, -17.339257812499994], + [178.18759765625012, -17.31298828124997], + [178.24716796875018, -17.32910156249997], + [178.28017578124994, -17.37197265625001] + ] + ], + [ + [ + [179.42236328124997, -17.36679687500002], + [179.38896484375007, -17.393847656250017], + [179.37314453125006, -17.25615234375003], + [179.40761718749994, -17.25732421875], + [179.4328125000001, -17.271582031249977], + [179.44716796875005, -17.30625], + [179.42236328124997, -17.36679687500002] + ] + ], + [ + [ + [-178.95649414062507, -17.272851562499966], + [-178.98183593749997, -17.30703125], + [-179.00390625000003, -17.29492187500003], + [-178.975537109375, -17.2375], + [-178.971484375, -17.212695312499974], + [-179.01494140624996, -17.182421875000017], + [-179.01767578124998, -17.161328124999983], + [-179.005029296875, -17.14833984375001], + [-178.95283203125, -17.182031250000037], + [-178.92114257812494, -17.20839843749998], + [-178.91484375, -17.223046875000037], + [-178.92456054687503, -17.248632812500006], + [-178.95649414062507, -17.272851562499966] + ] + ], + [ + [ + [177.23417968750002, -17.14707031250002], + [177.18281250000004, -17.163867187499974], + [177.2101562500001, -17.084277343750017], + [177.23925781249997, -17.059375], + [177.25751953125015, -17.054199218750014], + [177.28740234375002, -17.04863281250003], + [177.27578125, -17.104882812500037], + [177.23417968750002, -17.14707031250002] + ] + ], + [ + [ + [180, -16.96308593750001], + [179.92587890625, -17.00029296874996], + [179.89697265625003, -16.96406250000004], + [179.93095703125002, -16.87597656250003], + [180, -16.785742187500034], + [179.99921875000004, -16.858789062499994], + [180, -16.96308593750001] + ] + ], + [ + [ + [-179.97490234374996, -16.92480468750003], + [-180, -16.96298828124999], + [-180, -16.907812500000034], + [-179.999951171875, -16.858789062499994], + [-180, -16.82431640624999], + [-180, -16.785546875], + [-179.89360351562502, -16.70039062499997], + [-179.86098632812502, -16.68828124999999], + [-179.82231445312496, -16.765332031250054], + [-179.86777343749998, -16.85029296875004], + [-179.97490234374996, -16.92480468750003] + ] + ], + [ + [ + [180, -16.540039062499986], + [179.9872070312501, -16.54121093750004], + [179.98466796875013, -16.522167968749983], + [180, -16.488867187500034], + [180, -16.540039062499986] + ] + ], + [ + [ + [-179.92944335937503, -16.502832031250037], + [-179.999951171875, -16.540039062499986], + [-179.999951171875, -16.488867187500034], + [-179.94365234375, -16.441406249999957], + [-179.900927734375, -16.431542968749994], + [-179.92734375000003, -16.479101562500006], + [-179.92944335937503, -16.502832031250037] + ] + ], + [ + [ + [179.99921875000004, -16.168554687499977], + [179.8482421875, -16.301660156249994], + [179.79384765624994, -16.37031250000004], + [179.74814453125006, -16.44628906249997], + [179.61914062500009, -16.527734374999966], + [179.56416015625004, -16.636914062499997], + [179.56816406249996, -16.747460937499966], + [179.69707031250013, -16.631933593749963], + [179.84101562500015, -16.5375], + [179.88496093750004, -16.518457031250023], + [179.93037109375004, -16.51943359375005], + [179.92656250000002, -16.551660156250037], + [179.90595703125004, -16.583593749999977], + [179.8900390625, -16.6669921875], + [179.9279296875001, -16.74443359374996], + [179.82080078124991, -16.736914062500034], + [179.71474609375, -16.743554687499966], + [179.58896484375012, -16.787011718750023], + [179.4654296875, -16.806054687499994], + [179.41933593750005, -16.80654296875001], + [179.375, -16.79199218749997], + [179.34599609375002, -16.76972656249997], + [179.32333984375, -16.718066406250017], + [179.30048828125015, -16.710351562500037], + [179.20234375000004, -16.71269531249999], + [179.05546875, -16.81357421875002], + [179.00683593750003, -16.90019531249999], + [178.9503906250001, -16.90400390624997], + [178.88369140625, -16.88603515625003], + [178.80292968750004, -16.9521484375], + [178.70664062500018, -16.97617187500002], + [178.66503906250003, -16.920019531250034], + [178.63808593750005, -16.85126953124997], + [178.60371093750015, -16.80058593750003], + [178.4974609375, -16.78789062500003], + [178.51376953125012, -16.726074218749957], + [178.54199218750003, -16.70048828124999], + [178.5677734375001, -16.66386718749999], + [178.58359375000012, -16.621875], + [178.63427734374997, -16.648535156249963], + [178.68632812500007, -16.665625], + [178.74453125000005, -16.63417968749998], + [178.80507812499994, -16.631445312500034], + [178.86572265625003, -16.540039062499986], + [178.96054687500018, -16.48281250000005], + [179.09140625, -16.4375], + [179.22460937499997, -16.405175781250037], + [179.29355468750018, -16.39863281250004], + [179.35917968750002, -16.379882812500043], + [179.47509765625003, -16.294140624999983], + [179.55175781250003, -16.249902343750023], + [179.63525390624997, -16.223242187500006], + [179.71503906250004, -16.20761718750002], + [179.78886718750002, -16.221484375], + [179.84814453125003, -16.21425781250005], + [180, -16.15292968749999], + [179.99921875000004, -16.168554687499977] + ] + ], + [ + [ + [-179.95615234374998, -16.14921875000003], + [-180, -16.168261718750003], + [-180, -16.156054687500003], + [-180, -16.15292968749999], + [-179.969384765625, -16.12607421875002], + [-179.944580078125, -16.12607421875002], + [-179.95615234374998, -16.14921875000003] + ] + ], + [ + [ + [177.121484375, -12.505468749999949], + [177.082421875, -12.51562], + [177.01933593750013, -12.507324218749972], + [177.00625, -12.491113281249952], + [177.02636718749997, -12.4875], + [177.06757812499998, -12.476953125], + [177.11806640625, -12.482324218750037], + [177.12695312500003, -12.492871093749955], + [177.121484375, -12.505468749999949] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Falkland Is.", + "iso_a2": "FK", + "iso_a3": "FLK", + "iso_n3": "238", + "continent": "South America" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-59.68266601562502, -52.231640624999976], + [-59.74658203124997, -52.25087890624999], + [-59.76445312499996, -52.2421875], + [-59.784863281249955, -52.2046875], + [-59.78593749999999, -52.156152343749966], + [-59.79331054687498, -52.134179687500016], + [-59.75322265624999, -52.14140624999998], + [-59.681005859375034, -52.18007812499995], + [-59.68266601562502, -52.231640624999976] + ] + ], + [ + [ + [-58.438818359375006, -52.011035156249974], + [-58.432714843750006, -52.09902343749996], + [-58.512841796874966, -52.071093750000045], + [-58.54140625000002, -52.02841796874996], + [-58.49707031249997, -51.99941406250001], + [-58.46054687499998, -52.0015625], + [-58.438818359375006, -52.011035156249974] + ] + ], + [ + [ + [-61.01875, -51.7857421875], + [-60.94726562499997, -51.79951171875005], + [-60.87597656250003, -51.79423828125004], + [-60.91616210937494, -51.89697265625001], + [-60.94755859374996, -51.94628906250002], + [-61.031982421875, -51.94248046875004], + [-61.11577148437493, -51.87529296875003], + [-61.14501953125003, -51.83945312500001], + [-61.05166015625002, -51.81396484374997], + [-61.01875, -51.7857421875] + ] + ], + [ + [ + [-60.28623046874995, -51.461914062500014], + [-60.141552734374955, -51.480957031249986], + [-60.008691406249994, -51.41054687500003], + [-59.91708984374998, -51.38808593749999], + [-59.84160156249996, -51.40332031249998], + [-59.78842773437498, -51.44599609374997], + [-59.711328125, -51.43925781250002], + [-59.49345703125002, -51.395703125000026], + [-59.465087890625, -51.41054687500003], + [-59.38759765625002, -51.35996093750003], + [-59.32084960937502, -51.383593750000045], + [-59.26806640625, -51.42753906250003], + [-59.29394531249994, -51.47851562500002], + [-59.354199218749955, -51.51093749999997], + [-59.392431640625034, -51.55615234375003], + [-59.43701171874997, -51.59267578125001], + [-59.51420898437496, -51.626562499999984], + [-59.57319335937498, -51.68085937500003], + [-59.71489257812499, -51.807714843750034], + [-59.92138671874997, -51.969531250000045], + [-59.98974609374994, -51.98408203124999], + [-60.132275390624955, -51.993847656250026], + [-60.19375, -51.98271484374998], + [-60.246337890625, -51.98642578125003], + [-60.288281249999926, -52.07373046874996], + [-60.35346679687498, -52.13994140625004], + [-60.384228515624926, -52.15400390624997], + [-60.45200195312498, -52.16025390625], + [-60.484082031249926, -52.1703125], + [-60.508398437500006, -52.19472656250001], + [-60.686376953125034, -52.18837890624996], + [-60.81220703124998, -52.14775390625003], + [-60.96142578125003, -52.05732421874999], + [-60.7625, -51.94648437499997], + [-60.59106445312497, -51.95156250000003], + [-60.44975585937496, -51.87714843749997], + [-60.33447265625, -51.83955078125003], + [-60.288671875, -51.801269531249964], + [-60.23847656249998, -51.771972656250036], + [-60.238134765625006, -51.73378906249998], + [-60.27651367187502, -51.71660156250003], + [-60.32832031250001, -51.718359375000034], + [-60.379589843749955, -51.73515625], + [-60.500097656250006, -51.75654296875], + [-60.58251953125, -51.71269531250004], + [-60.52807617187503, -51.69638671875], + [-60.46723632812498, -51.69716796874998], + [-60.280957031249955, -51.656054687500045], + [-60.24516601562493, -51.638867187500004], + [-60.30263671875002, -51.58046875], + [-60.414941406249966, -51.545019531249984], + [-60.50581054687501, -51.48544921875001], + [-60.52275390624999, -51.46318359375001], + [-60.51826171874998, -51.42783203125], + [-60.56845703124998, -51.357812499999945], + [-60.51572265624998, -51.35429687500003], + [-60.445458984374966, -51.399414062499986], + [-60.28623046874995, -51.461914062500014] + ] + ], + [ + [ + [-60.11171875000002, -51.39589843749998], + [-60.24882812499996, -51.39599609375], + [-60.27587890624997, -51.36318359374997], + [-60.275341796874955, -51.28056640625002], + [-60.17138671875, -51.273437499999986], + [-60.06982421875, -51.307910156249996], + [-60.07646484374993, -51.34257812500004], + [-60.11171875000002, -51.39589843749998] + ] + ], + [ + [ + [-58.85019531249995, -51.26992187499998], + [-58.69750976562503, -51.328515625000016], + [-58.50625, -51.308105468750036], + [-58.42583007812502, -51.32421875000003], + [-58.37871093750002, -51.37304687500003], + [-58.40673828124994, -51.41835937500002], + [-58.467431640624966, -51.411816406250026], + [-58.519238281249955, -51.423925781250006], + [-58.508935546874994, -51.48359375], + [-58.473730468750006, -51.50908203125003], + [-58.271582031250034, -51.57470703124999], + [-58.23452148437494, -51.578613281249986], + [-58.241113281249966, -51.551074218749974], + [-58.276220703125006, -51.50605468750004], + [-58.289306640625, -51.45751953125001], + [-58.25922851562501, -51.417089843750034], + [-58.206445312499994, -51.4046875], + [-57.976513671874955, -51.384375], + [-57.922509765624966, -51.40351562500002], + [-57.80849609375002, -51.51796875], + [-57.91542968749994, -51.533789062500006], + [-57.96044921874997, -51.58320312500003], + [-57.866357421874994, -51.60458984375004], + [-57.79179687499999, -51.63613281249998], + [-57.831152343750006, -51.68457031249999], + [-57.83818359374993, -51.70917968750003], + [-58.00395507812496, -51.743457031249996], + [-58.15092773437496, -51.76542968750003], + [-58.21762695312498, -51.82246093750002], + [-58.33598632812502, -51.86376953124999], + [-58.68349609375002, -51.93623046875001], + [-58.64306640624994, -51.99482421875005], + [-58.6376953125, -52.02304687500003], + [-58.65278320312498, -52.09921875], + [-59.13125, -52.00791015624996], + [-59.19584960937496, -52.01767578125], + [-59.06801757812502, -52.17304687500003], + [-59.162792968749955, -52.20175781250002], + [-59.25634765625003, -52.183105468750036], + [-59.341503906249955, -52.19599609375], + [-59.395654296874966, -52.308007812499994], + [-59.5322265625, -52.23642578124998], + [-59.64873046875002, -52.134375], + [-59.64916992187503, -52.07724609374996], + [-59.53666992187502, -51.97060546875], + [-59.57080078124994, -51.92539062500003], + [-59.30874023437494, -51.78046875], + [-59.26176757812496, -51.737304687499986], + [-59.180029296875006, -51.7125], + [-59.09541015625001, -51.70410156249997], + [-59.05952148437498, -51.685449218749994], + [-59.06538085937501, -51.6501953125], + [-59.099462890625034, -51.589746093749945], + [-59.09663085937498, -51.49140624999998], + [-58.886669921874926, -51.357910156249964], + [-58.91748046875, -51.27207031249998], + [-58.85019531249995, -51.26992187499998] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "France", + "iso_a2": "FR", + "iso_a3": "FRA", + "iso_n3": "250", + "continent": "Europe" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [55.79736328125003, -21.33935546875003], + [55.65615234375005, -21.369042968750037], + [55.55761718749997, -21.35830078124998], + [55.36269531250005, -21.27363281250004], + [55.31035156250002, -21.21738281250005], + [55.23281250000005, -21.05839843749999], + [55.25, -21.002441406249957], + [55.311328125000074, -20.90410156249999], + [55.450488281250074, -20.86513671875005], + [55.596484375000074, -20.87958984374997], + [55.661914062500074, -20.90625], + [55.739160156249994, -21.021484375000014], + [55.8390625000001, -21.13857421874998], + [55.8224609375001, -21.277832031250014], + [55.79736328125003, -21.33935546875003] + ] + ], + [ + [ + [45.180273437500006, -12.97675781250004], + [45.11757812500005, -12.98496093750002], + [45.08769531250002, -12.958496093749957], + [45.069433593750006, -12.895605468750034], + [45.08828125000005, -12.835058593750034], + [45.09355468750002, -12.786132812500014], + [45.04257812500006, -12.701269531249963], + [45.09238281250006, -12.653027343749997], + [45.13476562499997, -12.709179687499969], + [45.158789062500006, -12.712988281250034], + [45.22314453124997, -12.752148437500026], + [45.20429687500004, -12.824316406249977], + [45.20859375, -12.847949218750003], + [45.17939453125004, -12.920214843749974], + [45.180273437500006, -12.97675781250004] + ] + ], + [ + [ + [-52.28891601562498, 4.87612304687498], + [-52.324609374999966, 4.770898437500037], + [-52.21997070312494, 4.862792968750014], + [-52.05810546875003, 4.717382812499963], + [-52.012304687500006, 4.645996093749986], + [-51.96191406249997, 4.514404296875], + [-51.97934570312495, 4.429882812500011], + [-52.00170898437497, 4.38623046875], + [-52.00292968749997, 4.352294921875014], + [-51.95478515625001, 4.399072265625051], + [-51.92768554687501, 4.436132812500048], + [-51.91958007812494, 4.52431640624998], + [-51.88027343750002, 4.633740234374983], + [-51.82753906250002, 4.635693359375026], + [-51.78564453125003, 4.570507812499983], + [-51.698632812499966, 4.286816406249997], + [-51.66582031249993, 4.228808593750003], + [-51.653271484374955, 4.138769531250034], + [-51.658105468749966, 4.098486328125006], + [-51.65253906249998, 4.061279296874972], + [-51.68344726562498, 4.039697265625023], + [-51.76708984374997, 3.992675781250028], + [-51.805273437500034, 3.929931640625043], + [-51.827490234375006, 3.869580078124997], + [-51.87949218749995, 3.828564453124997], + [-51.92890624999998, 3.776953125000048], + [-51.94433593750003, 3.735107421875043], + [-51.99062, 3.702001953124963], + [-51.99951171874997, 3.646875], + [-52.11611328125002, 3.45229492187498], + [-52.16259765625, 3.364697265624997], + [-52.22944335937501, 3.271679687500054], + [-52.271240234375, 3.237109375000017], + [-52.327880859375, 3.18173828125002], + [-52.35664062499998, 3.117724609375031], + [-52.35664062499998, 3.051562499999974], + [-52.39638671875002, 2.972216796874974], + [-52.418408203124955, 2.903857421874989], + [-52.45585937499996, 2.86416015624998], + [-52.55468750000003, 2.647656250000011], + [-52.55947265625002, 2.573144531250023], + [-52.58300781250003, 2.528906249999977], + [-52.653173828125006, 2.425732421875011], + [-52.70063476562501, 2.36367187499998], + [-52.78339843749998, 2.317187500000017], + [-52.87041015624996, 2.266650390625017], + [-52.90346679687502, 2.211523437499977], + [-52.96484375, 2.183544921874969], + [-53.00971679687498, 2.181738281250048], + [-53.08227539062503, 2.201708984375031], + [-53.180078124999966, 2.211328125000037], + [-53.22978515624999, 2.20488281249996], + [-53.252197265625, 2.232275390625034], + [-53.28549804687495, 2.295214843749974], + [-53.33442382812498, 2.339746093749994], + [-53.36601562500002, 2.324218750000028], + [-53.43183593750001, 2.279443359374966], + [-53.50898437500001, 2.253125], + [-53.56396484375003, 2.26191406250004], + [-53.68369140624998, 2.29291992187504], + [-53.734716796875006, 2.308544921875026], + [-53.75014648437502, 2.335009765625003], + [-53.76777343749998, 2.354833984375048], + [-53.79423828124996, 2.345996093750017], + [-53.829541015624955, 2.31293945312504], + [-53.87661132812494, 2.278271484374997], + [-53.946435546874966, 2.232568359375009], + [-54.08974609375002, 2.150488281249977], + [-54.13007812499998, 2.121044921875026], + [-54.16738281249994, 2.137060546875006], + [-54.227978515624955, 2.153320312500028], + [-54.29306640624998, 2.15424804687504], + [-54.43310546875, 2.207519531250057], + [-54.51508789062498, 2.245458984374963], + [-54.55048828125001, 2.293066406249991], + [-54.59194335937502, 2.313769531250031], + [-54.61625976562499, 2.326757812500006], + [-54.60473632812497, 2.335791015624991], + [-54.56840820312502, 2.342578125000031], + [-54.53593749999999, 2.343310546875003], + [-54.48554687500001, 2.416113281250006], + [-54.402001953124966, 2.46152343750002], + [-54.25673828125002, 2.713720703124977], + [-54.19550781249998, 2.817871093750057], + [-54.18808593749998, 2.874853515625034], + [-54.17070312499999, 2.993603515624969], + [-54.203125, 3.138183593750028], + [-54.18803710937499, 3.178759765625031], + [-54.063183593749955, 3.353320312499989], + [-54.00957031249993, 3.448535156250017], + [-54.005957031250006, 3.530517578125028], + [-53.99047851562497, 3.589550781249969], + [-54.00590820312499, 3.620410156250045], + [-54.03422851562499, 3.62939453125], + [-54.081982421874955, 3.705957031249966], + [-54.11279296875, 3.769433593750023], + [-54.197460937499955, 3.834423828125026], + [-54.255517578124966, 3.901074218750026], + [-54.350732421874994, 4.054101562500023], + [-54.342138671875006, 4.140039062500037], + [-54.369140625, 4.170947265625017], + [-54.398388671874926, 4.202490234374963], + [-54.39624023437503, 4.241406249999983], + [-54.41601562499997, 4.337646484375057], + [-54.44067382812503, 4.428027343749989], + [-54.449609374999966, 4.485009765624966], + [-54.42607421874999, 4.583007812500043], + [-54.44023437500002, 4.691992187500034], + [-54.47114257812501, 4.749316406249989], + [-54.47968749999998, 4.836523437499991], + [-54.47333984375001, 4.914697265625023], + [-54.446875, 4.958789062500031], + [-54.45219726562496, 5.013476562499989], + [-54.331640625, 5.18740234374998], + [-54.240185546874955, 5.288232421875009], + [-54.15595703125001, 5.358984375000034], + [-54.085302734375006, 5.41181640625004], + [-53.98959960937495, 5.676025390625043], + [-53.91992187499997, 5.768994140624983], + [-53.84716796875, 5.782226562500014], + [-53.454443359375006, 5.563476562500028], + [-53.27036132812498, 5.543261718750003], + [-52.899316406249966, 5.425048828124986], + [-52.76499023437498, 5.273486328125017], + [-52.453955078125006, 5.021337890624991], + [-52.29052734375003, 4.942187500000031], + [-52.28891601562498, 4.87612304687498] + ] + ], + [ + [ + [-60.826269531250006, 14.494482421874991], + [-60.83662109374998, 14.437402343750009], + [-60.86210937499996, 14.426269531250043], + [-60.8994140625, 14.473779296875037], + [-61.063720703125, 14.467089843750017], + [-61.08886718749997, 14.509570312500045], + [-61.09033203125, 14.5296875], + [-61.01132812499998, 14.601904296875034], + [-61.10429687499999, 14.62124023437498], + [-61.14111328124994, 14.652392578125017], + [-61.21972656249997, 14.804394531249983], + [-61.21333007812501, 14.848583984375011], + [-61.18081054687494, 14.871923828124977], + [-61.12739257812498, 14.875292968750045], + [-61.027099609375, 14.826171874999986], + [-60.952539062499994, 14.75625], + [-60.927148437499966, 14.755175781249989], + [-60.91865234375001, 14.735351562500043], + [-60.93369140624998, 14.686181640624966], + [-60.88916015624994, 14.644531250000014], + [-60.86997070312495, 14.61372070312504], + [-60.826269531250006, 14.494482421874991] + ] + ], + [ + [ + [-61.23046875000003, 15.889941406250074], + [-61.286230468750034, 15.886035156249989], + [-61.310742187499955, 15.894677734374966], + [-61.31840820312502, 15.954882812500074], + [-61.27529296875002, 15.996240234374966], + [-61.25, 16.006298828124983], + [-61.21235351562498, 15.95991210937504], + [-61.20341796874993, 15.921240234375063], + [-61.23046875000003, 15.889941406250074] + ] + ], + [ + [ + [-61.58955078125001, 16.006933593750006], + [-61.67045898437496, 15.962060546875023], + [-61.71025390624999, 15.975927734375006], + [-61.759423828124966, 16.062060546875045], + [-61.79409179687502, 16.300976562499955], + [-61.76713867187493, 16.340478515625023], + [-61.74804687499997, 16.355273437500017], + [-61.64150390625002, 16.32597656249999], + [-61.597021484375006, 16.292187499999955], + [-61.55234374999998, 16.270898437499966], + [-61.57504882812498, 16.227148437500034], + [-61.563867187499994, 16.047753906249994], + [-61.58955078125001, 16.006933593750006] + ] + ], + [ + [ + [-61.3271484375, 16.230419921874983], + [-61.44482421875, 16.219287109375017], + [-61.522167968749955, 16.22802734375003], + [-61.539990234374926, 16.299609375000045], + [-61.500585937500006, 16.360205078125034], + [-61.52890624999998, 16.43378906250001], + [-61.510644531249994, 16.477685546874994], + [-61.47119140624994, 16.506640625000045], + [-61.40644531250001, 16.468310546875045], + [-61.39614257812494, 16.413427734375063], + [-61.35546875, 16.363183593750023], + [-61.17260742187497, 16.25610351562497], + [-61.3271484375, 16.230419921874983] + ] + ], + [ + [ + [9.480371093750023, 42.80541992187503], + [9.454199218750034, 42.658593749999966], + [9.473242187500006, 42.615576171875006], + [9.50937, 42.58559570312502], + [9.526171875000045, 42.552636718749966], + [9.556445312500074, 42.16093750000002], + [9.550683593750051, 42.12973632812506], + [9.428417968750011, 41.97241210937497], + [9.40087890625, 41.92622070312498], + [9.394824218750017, 41.73120117187503], + [9.374218750000068, 41.678808593750034], + [9.330859375000045, 41.62714843749998], + [9.253417968750057, 41.460058593750034], + [9.186132812500034, 41.38491210937502], + [9.003027343750034, 41.47656250000003], + [8.895019531250057, 41.51616210937502], + [8.842089843750017, 41.55888671875002], + [8.80751953125008, 41.58837890625], + [8.829785156250011, 41.627685546875], + [8.879003906250006, 41.66855468749998], + [8.886816406249977, 41.70068359375003], + [8.770996093750028, 41.73710937499999], + [8.71796875000004, 41.76142578124998], + [8.718652343750023, 41.804003906250045], + [8.75869140625008, 41.87041015624999], + [8.740429687500011, 41.925146484375034], + [8.673632812500074, 41.92236328125], + [8.621875, 41.93071289062502], + [8.615136718750051, 41.95913085937502], + [8.653417968750034, 41.99555664062498], + [8.702539062500023, 42.043115234374994], + [8.700976562500045, 42.09560546875002], + [8.641601562500028, 42.11821289062502], + [8.58779296875008, 42.16083984374998], + [8.566210937500045, 42.21879882812499], + [8.60791015625, 42.258447265624994], + [8.675488281250011, 42.284033203125034], + [8.625878906250023, 42.343408203124966], + [8.592382812500034, 42.34472656249997], + [8.565625, 42.35771484374996], + [8.5875, 42.38530273437499], + [8.64003906250008, 42.426562500000045], + [8.71308593750004, 42.54975585937501], + [8.81484375000008, 42.60791015625003], + [8.994921875000074, 42.64531250000002], + [9.04365234375004, 42.66166992187499], + [9.088378906250028, 42.704980468749994], + [9.137890625000068, 42.73291015625], + [9.198046875000074, 42.729199218749955], + [9.253515625, 42.71245117187502], + [9.287695312500034, 42.69462890625002], + [9.313378906250023, 42.71318359374999], + [9.338378906250057, 42.76689453125002], + [9.323046875000045, 42.814062500000034], + [9.330957031250051, 42.94379882812498], + [9.363183593750051, 43.01738281249996], + [9.415234374999983, 43.021484375], + [9.463281250000023, 42.98100585937502], + [9.460839843750051, 42.94521484375002], + [9.478613281250034, 42.860498046874994], + [9.480371093750023, 42.80541992187503] + ] + ], + [ + [ + [-1.17832031249992, 45.904052734375], + [-1.213574218750011, 45.81660156250004], + [-1.2802734375, 45.897119140624994], + [-1.368701171874989, 45.967675781249994], + [-1.388867187499926, 46.03295898437497], + [-1.388671874999972, 46.05039062500006], + [-1.285058593749994, 46.00268554687503], + [-1.17832031249992, 45.904052734375] + ] + ], + [ + [ + [2.759375, 50.750634765624994], + [2.839746093750023, 50.71176757812498], + [2.862402343750034, 50.716015624999955], + [2.921972656250006, 50.72705078124997], + [3.022851562500023, 50.76689453125002], + [3.10683593750008, 50.779443359374994], + [3.154882812500006, 50.748925781249994], + [3.182031250000051, 50.73168945312503], + [3.234960937499977, 50.66293945312498], + [3.249804687500074, 50.591162109375006], + [3.27333984375008, 50.53154296875002], + [3.316210937500017, 50.50737304687499], + [3.47695312500008, 50.49946289062498], + [3.595410156250068, 50.47734374999999], + [3.626757812500045, 50.45732421875002], + [3.667285156250045, 50.324804687500006], + [3.689355468750023, 50.30605468750002], + [3.718847656250063, 50.321679687499994], + [3.748046875000057, 50.343505859375], + [3.788574218750057, 50.34697265624999], + [3.858105468750011, 50.33857421874998], + [3.949707031250028, 50.33593749999997], + [4.044140624999983, 50.32133789062502], + [4.174609375000017, 50.24648437500005], + [4.169628906250068, 50.22177734374998], + [4.144140625000034, 50.17841796875004], + [4.13525390625, 50.143798828125], + [4.157714843750028, 50.1298828125], + [4.192187500000045, 50.094140625], + [4.183886718750045, 50.052832031250034], + [4.150292968750023, 50.02387695312498], + [4.136816406250034, 50], + [4.137011718750074, 49.984472656250034], + [4.149316406250023, 49.971582031249994], + [4.176074218750045, 49.96025390624999], + [4.36875, 49.944970703124994], + [4.545019531250063, 49.96025390624999], + [4.656152343750051, 50.00244140624997], + [4.675097656250017, 50.046875], + [4.706640625000034, 50.097070312499966], + [4.772851562500023, 50.1390625], + [4.818652343750045, 50.153173828125034], + [4.86054687500004, 50.135888671874994], + [4.790039062499972, 49.959570312500034], + [4.841503906250068, 49.91450195312501], + [4.849121093750028, 49.84711914062504], + [4.867578125000051, 49.78813476562502], + [4.930566406250023, 49.78925781249998], + [5.006933593750034, 49.77836914062499], + [5.061035156250028, 49.75654296874998], + [5.124121093750006, 49.72148437500002], + [5.215039062500068, 49.68925781250002], + [5.27880859375, 49.67792968750004], + [5.301953125000011, 49.650976562500034], + [5.353515625000028, 49.61982421875001], + [5.434667968750034, 49.55449218750002], + [5.50732421875, 49.51088867187502], + [5.542382812500051, 49.51103515624996], + [5.610058593750068, 49.528222656249994], + [5.71044921875, 49.53920898437502], + [5.789746093749983, 49.53828125000001], + [5.823437500000011, 49.50507812499998], + [5.9013671875, 49.48974609374997], + [5.928906250000011, 49.47753906249997], + [5.959472656250028, 49.45463867187502], + [6.01142578125004, 49.44545898437502], + [6.074121093750023, 49.45463867187502], + [6.119921875000017, 49.485205078125034], + [6.181054687500051, 49.498925781249966], + [6.242187500000057, 49.49433593750001], + [6.277343750000028, 49.47753906249997], + [6.344335937500006, 49.45273437499998], + [6.38222656250008, 49.45815429687502], + [6.458105468750006, 49.44287109375003], + [6.534277343750063, 49.394677734374966], + [6.566308593750023, 49.34619140625003], + [6.574707031250028, 49.31967773437506], + [6.607617187499983, 49.290869140625034], + [6.735449218750006, 49.16059570312498], + [6.77626953125008, 49.154150390625006], + [6.820703125000051, 49.173925781250034], + [6.84951171875008, 49.20195312499996], + [6.891210937500034, 49.20751953125003], + [6.958300781250017, 49.19462890624999], + [7.001464843750028, 49.17988281249998], + [7.022167968750068, 49.12343750000005], + [7.03671875, 49.112695312499994], + [7.065722656250074, 49.12485351562498], + [7.117382812500011, 49.12753906249998], + [7.19990234375004, 49.113623046875006], + [7.31337890625008, 49.12954101562505], + [7.404199218749994, 49.15307617187503], + [7.450585937500051, 49.152197265625034], + [7.525488281250034, 49.086376953124955], + [7.610937500000034, 49.061767578125], + [7.799218750000023, 49.04189453125005], + [8.001269531250045, 49.01093750000004], + [8.080664062500063, 48.98588867187499], + [8.134863281250006, 48.97358398437498], + [8.14033203125004, 48.88642578124998], + [8.124023437500028, 48.87329101562497], + [7.922753906250051, 48.69853515624999], + [7.837988281250006, 48.636035156250045], + [7.794824218749994, 48.54682617187498], + [7.76513671875, 48.410009765625006], + [7.705664062500063, 48.280029296875], + [7.616601562500023, 48.15678710937502], + [7.584179687499983, 48.064306640625006], + [7.608496093750063, 48.00258789062505], + [7.593261718750057, 47.90566406250002], + [7.538574218750028, 47.77363281250004], + [7.529394531250034, 47.67387695312496], + [7.5654296875, 47.606542968750006], + [7.615625, 47.59272460937504], + [7.494921875000017, 47.54736328125003], + [7.467382812500006, 47.507666015625034], + [7.420019531250034, 47.45517578124998], + [7.343164062499994, 47.43310546875003], + [7.265722656250034, 47.42578125000003], + [7.203125, 47.432714843750034], + [7.16748046875, 47.453710937500034], + [7.169238281250017, 47.473242187500034], + [7.136035156249989, 47.489843750000034], + [7.05341796875004, 47.489355468750034], + [6.968359375000034, 47.453222656250034], + [6.900390625000028, 47.39423828125001], + [6.921484374999977, 47.36123046875002], + [6.98408203125004, 47.35253906250003], + [7.000585937500034, 47.339453125000034], + [7.000585937500034, 47.32250976562506], + [6.978515625000057, 47.30205078124996], + [6.95205078125008, 47.26718750000006], + [6.820703125000051, 47.163183593750006], + [6.688085937500034, 47.05825195312505], + [6.66689453125008, 47.026513671874966], + [6.624804687500017, 47.00434570312498], + [6.45625, 46.948339843750034], + [6.438574218750006, 46.92587890624998], + [6.429003906250017, 46.832275390625], + [6.41015625, 46.75541992187499], + [6.285156250000028, 46.68305664062498], + [6.160742187499977, 46.611035156249955], + [6.129687500000045, 46.56699218750006], + [6.107031250000063, 46.51606445312498], + [6.06796875, 46.45854492187499], + [6.06025390625004, 46.42817382812501], + [6.123242187500068, 46.378613281249955], + [6.115917968750011, 46.33764648437506], + [6.095898437500011, 46.279394531250006], + [6.0361328125, 46.23808593750002], + [5.970019531250045, 46.214697265625034], + [5.971484375000074, 46.151220703125006], + [6.006640625000045, 46.14233398437506], + [6.086621093750068, 46.14702148437502], + [6.19941406250004, 46.19306640624998], + [6.272949218750028, 46.25224609374996], + [6.229589843750063, 46.30844726562506], + [6.224218750000034, 46.31943359374998], + [6.234667968750045, 46.332617187500006], + [6.321875, 46.39370117187502], + [6.428906250000011, 46.43051757812506], + [6.578222656250034, 46.437353515625034], + [6.758105468750017, 46.41577148437497], + [6.77607421875004, 46.406640625], + [6.767382812500045, 46.36918945312499], + [6.7841796875, 46.31396484375003], + [6.816796875000051, 46.27519531250002], + [6.772070312500006, 46.16513671874998], + [6.805664062500028, 46.13066406249999], + [6.858007812500034, 46.08940429687502], + [6.897265625000017, 46.05175781249997], + [6.953710937500063, 46.017138671875045], + [7.00390625, 45.95883789062506], + [7.021093750000034, 45.92578124999997], + [6.940820312500023, 45.86835937500001], + [6.804492187500045, 45.81455078125006], + [6.789160156250034, 45.78007812499996], + [6.790917968750023, 45.740869140624966], + [6.80625, 45.71000976562499], + [6.881445312500006, 45.67036132812498], + [6.962402343750057, 45.58056640625], + [7.013671875000028, 45.50048828125003], + [7.126074218750006, 45.423681640625006], + [7.153417968749977, 45.40092773437499], + [7.146386718750051, 45.381738281249994], + [7.116796874999977, 45.349023437499994], + [7.07832031250004, 45.23994140624998], + [7.03242187500004, 45.22260742187498], + [6.98125, 45.21557617187497], + [6.842285156250028, 45.13564453125005], + [6.780371093750006, 45.1453125], + [6.692285156250023, 45.14428710937503], + [6.627734375000017, 45.11796874999999], + [6.634765625000028, 45.06816406249996], + [6.69140625, 45.02260742187502], + [6.724707031250034, 44.972998046875034], + [6.738183593750023, 44.92138671875], + [6.801074218750045, 44.883154296875034], + [6.889355468750011, 44.86030273437498], + [6.93984375000008, 44.858740234375034], + [6.972851562500068, 44.84501953124999], + [6.99267578125, 44.82729492187502], + [7.030664062500023, 44.71669921875005], + [7.007910156250006, 44.68896484375], + [6.96035156250008, 44.677148437499966], + [6.931933593750074, 44.631640625000045], + [6.875195312500068, 44.564550781250034], + [6.842968750000068, 44.51069335937498], + [6.87861328125004, 44.46328125000002], + [6.893847656250045, 44.42817382812498], + [6.874804687500074, 44.39204101562498], + [6.900195312499989, 44.33574218749996], + [6.96728515625, 44.280029296875], + [7.149414062500057, 44.20170898437502], + [7.318554687500068, 44.13798828125002], + [7.370898437500074, 44.12739257812498], + [7.599414062500074, 44.168359374999966], + [7.637207031250057, 44.16484375], + [7.665039062500028, 44.11601562499996], + [7.677148437500023, 44.08315429687502], + [7.651464843750034, 44.03364257812498], + [7.589648437500045, 43.965429687500034], + [7.522656250000068, 43.911083984374955], + [7.482031250000063, 43.864892578124966], + [7.490527343750017, 43.82294921875004], + [7.4931640625, 43.767138671875045], + [7.438671875000011, 43.75043945312501], + [7.436914062500023, 43.76147460937503], + [7.414453125000051, 43.770898437499994], + [7.39501953125, 43.76533203125001], + [7.380078125000068, 43.753222656250045], + [7.377734375000045, 43.73173828125002], + [7.261523437500074, 43.696093750000045], + [7.181445312500017, 43.65913085937498], + [6.864746093750057, 43.438330078125006], + [6.716601562500074, 43.37358398437496], + [6.68740234375008, 43.334570312500006], + [6.657226562500057, 43.26166992187501], + [6.570214843750023, 43.199072265625034], + [6.494042968750023, 43.169287109375006], + [6.305371093750068, 43.13872070312499], + [6.115917968750011, 43.07236328124998], + [6.030566406250017, 43.10097656250002], + [5.809472656250023, 43.09790039062503], + [5.671582031250068, 43.17783203125006], + [5.406542968750074, 43.228515625], + [5.32021484375008, 43.34492187499998], + [5.199511718750017, 43.35249023437504], + [5.120410156250045, 43.348974609375034], + [5.073144531250023, 43.366601562499966], + [5.060839843749989, 43.40629882812499], + [5.05976562500004, 43.44453125000004], + [4.975976562500023, 43.42695312500001], + [4.911914062500045, 43.42695312500001], + [4.873730468750068, 43.41162109375], + [4.843554687500045, 43.39394531250002], + [4.807910156250074, 43.40522460937501], + [4.787207031250034, 43.40141601562496], + [4.789062500000057, 43.37890625], + [4.712109375000011, 43.373291015625], + [4.628710937500074, 43.387109374999966], + [4.409765625000063, 43.447216796874955], + [4.37617187500004, 43.45639648437506], + [4.22421875, 43.479638671874994], + [4.162792968750011, 43.503662109375], + [4.113085937500017, 43.56303710937502], + [4.07509765625008, 43.581835937500045], + [4.052636718750023, 43.59306640625002], + [3.910839843750011, 43.563085937500034], + [3.861621093750017, 43.51635742187503], + [3.784765625, 43.461621093749955], + [3.258886718750063, 43.193212890625006], + [3.162890625000045, 43.08076171875001], + [3.051757812500057, 42.915136718750006], + [3.043066406250063, 42.837890625], + [3.090917968750034, 42.59086914062502], + [3.197851562500063, 42.461181640625], + [3.21142578125, 42.43115234375], + [3.152148437500074, 42.43100585937506], + [3.052636718750051, 42.44721679687498], + [2.970019531250017, 42.46723632812498], + [2.891406250000074, 42.4560546875], + [2.815625, 42.42924804687496], + [2.749414062500023, 42.41303710937504], + [2.701855468750011, 42.40849609374999], + [2.670019531250006, 42.393017578124955], + [2.65478515625, 42.36210937499996], + [2.651660156250074, 42.340478515624994], + [2.56796875, 42.345800781250006], + [2.37441406250008, 42.39028320312502], + [2.200390625000068, 42.42094726562496], + [2.098339843750068, 42.38608398437506], + [2.032714843750028, 42.353515625], + [1.986523437500011, 42.358496093750034], + [1.951464843750074, 42.39277343749998], + [1.927929687500068, 42.42631835937499], + [1.859765625000051, 42.457080078125045], + [1.7060546875, 42.50332031250005], + [1.713964843750006, 42.52563476562497], + [1.740234375000028, 42.556738281250006], + [1.73945312500004, 42.575927734375], + [1.709863281250051, 42.604443359374955], + [1.568164062500045, 42.63500976562506], + [1.501367187500023, 42.64272460937502], + [1.45888671875008, 42.621679687500006], + [1.428320312499977, 42.59589843749998], + [1.349414062500074, 42.69067382812503], + [1.293261718750017, 42.70996093750006], + [1.208300781250017, 42.71313476562497], + [1.111132812500017, 42.742041015625006], + [1.010058593750045, 42.778955078124966], + [0.764453125000017, 42.83803710937502], + [0.696875, 42.84511718750005], + [0.669824218749994, 42.83574218749999], + [0.651757812500051, 42.800439453124994], + [0.641992187500023, 42.70063476562501], + [0.631640625000045, 42.689599609374994], + [0.517675781250006, 42.68627929687503], + [0.377246093750074, 42.70014648437501], + [0.312890625000023, 42.69326171875002], + [0.255468750000063, 42.692919921875045], + [0.20136718750004, 42.719335937500006], + [-0.041162109374994, 42.689111328124966], + [-0.081494140624926, 42.70385742187506], + [-0.140039062499966, 42.748925781249994], + [-0.205322265624943, 42.78530273437502], + [-0.256054687499983, 42.803955078125], + [-0.29931640625, 42.82534179687502], + [-0.338574218750011, 42.82880859375001], + [-0.398437499999943, 42.80810546875006], + [-0.481152343750011, 42.79931640625003], + [-0.549804687499943, 42.80200195312506], + [-0.586425781249943, 42.798974609374966], + [-0.740185546874926, 42.909521484375034], + [-0.762646484374983, 42.93979492187506], + [-0.839208984374949, 42.94819335937498], + [-0.933837890624943, 42.94951171874999], + [-1.175439453124966, 43.02114257812502], + [-1.285449218749989, 43.05961914062496], + [-1.301562499999989, 43.08247070312498], + [-1.300048828124943, 43.10097656250002], + [-1.318847656249943, 43.09697265625002], + [-1.352734374999926, 43.06425781250002], + [-1.370507812499994, 43.03759765625], + [-1.39404296875, 43.032617187499966], + [-1.42875976562496, 43.03676757812502], + [-1.460839843749937, 43.05175781250006], + [-1.480468750000028, 43.071142578125006], + [-1.459423828124983, 43.10498046875006], + [-1.422607421874943, 43.14912109374998], + [-1.407324218749949, 43.197119140625006], + [-1.410693359374932, 43.240087890625034], + [-1.471728515624932, 43.26767578124998], + [-1.561474609375011, 43.27919921875002], + [-1.627148437499983, 43.28247070312497], + [-1.712841796874926, 43.30703125], + [-1.753271484375006, 43.32470703125006], + [-1.792724609374943, 43.37255859375003], + [-1.794042968749949, 43.407324218750006], + [-1.631445312499949, 43.43803710937496], + [-1.484863281249943, 43.56376953124999], + [-1.345996093749989, 44.02021484374998], + [-1.245507812499937, 44.55986328124999], + [-1.170800781249994, 44.661816406249955], + [-1.07695312499996, 44.68984375], + [-1.152880859374989, 44.764013671875006], + [-1.200390624999983, 44.726464843749994], + [-1.220312499999949, 44.686621093750034], + [-1.245214843749977, 44.66669921874998], + [-1.189062499999977, 45.16147460937506], + [-1.149072265624994, 45.342626953125006], + [-1.081005859374983, 45.532421874999955], + [-0.941748046874949, 45.45708007812499], + [-0.826318359374966, 45.380664062500045], + [-0.766650390624989, 45.31435546875002], + [-0.691113281249955, 45.09345703124998], + [-0.633984374999955, 45.04711914062503], + [-0.548486328124966, 45.00058593750006], + [-0.582275390625, 45.051367187500006], + [-0.64111328125, 45.090185546875006], + [-0.733105468749983, 45.384619140625034], + [-0.790771484375028, 45.46801757812497], + [-0.88066406249996, 45.53818359374998], + [-1.169970703124989, 45.685937499999966], + [-1.195996093749983, 45.714453125], + [-1.209960937499972, 45.77089843750005], + [-1.114355468749949, 45.76850585937501], + [-1.03173828125, 45.741064453125006], + [-1.041503906249943, 45.772656249999955], + [-1.066015624999949, 45.80566406250003], + [-1.104394531249966, 45.92534179687499], + [-1.136376953124994, 46.204833984375], + [-1.132031250000011, 46.25268554687497], + [-1.14628906249996, 46.311376953125034], + [-1.238818359374989, 46.324511718750045], + [-1.31279296874996, 46.326904296875], + [-1.392480468749937, 46.35009765625], + [-1.786523437499937, 46.51484375000001], + [-1.92143554687496, 46.684814453125], + [-2.059375, 46.81030273437497], + [-2.092480468750011, 46.86503906250002], + [-2.090283203125011, 46.920507812500034], + [-2.01889648437492, 47.03764648437502], + [-2.081933593749994, 47.11162109374999], + [-2.143554687500028, 47.12631835937506], + [-2.197070312499989, 47.16293945312506], + [-2.148583984374966, 47.223925781250045], + [-2.108300781249937, 47.262939453125], + [-2.027587890625028, 47.27358398437502], + [-1.921728515624949, 47.260644531249966], + [-1.8212890625, 47.22534179687497], + [-1.742529296874949, 47.21596679687502], + [-1.97539062499996, 47.31069335937505], + [-2.353027343749972, 47.27875976562501], + [-2.434423828124949, 47.29096679687501], + [-2.50312, 47.31206054687496], + [-2.530029296874972, 47.381591796875], + [-2.476318359374943, 47.412939453125006], + [-2.427685546874983, 47.47089843749998], + [-2.482714843749932, 47.51162109375002], + [-2.554052734374977, 47.52705078124998], + [-2.665917968749937, 47.52617187499999], + [-2.770312499999989, 47.513867187499955], + [-2.796777343749966, 47.53725585937502], + [-2.733105468749955, 47.60180664062503], + [-2.787207031249949, 47.62553710937496], + [-2.859375, 47.61445312500001], + [-2.964062499999926, 47.60107421875006], + [-3.064208984375, 47.621337890625], + [-3.158837890624994, 47.694677734375034], + [-3.221582031249994, 47.69414062499999], + [-3.264697265624989, 47.68510742187502], + [-3.328613281249943, 47.71333007812501], + [-3.395898437499966, 47.72041015625001], + [-3.443945312500006, 47.71103515624998], + [-3.507812499999943, 47.753125], + [-3.900927734374932, 47.837548828124994], + [-4.070703124999966, 47.847851562499955], + [-4.226416015624977, 47.80961914062499], + [-4.312109374999949, 47.82290039062502], + [-4.375097656249977, 47.87744140625003], + [-4.427978515625, 47.96894531250004], + [-4.678808593749949, 48.03950195312501], + [-4.62919921874996, 48.085791015625034], + [-4.512402343749983, 48.096728515625045], + [-4.377832031249994, 48.128808593749994], + [-4.32944335937492, 48.169970703125045], + [-4.434619140624932, 48.217968749999955], + [-4.512207031249943, 48.22973632812506], + [-4.544335937499994, 48.246972656249994], + [-4.577148437499943, 48.2900390625], + [-4.530664062499966, 48.309716796874994], + [-4.497900390624949, 48.29926757812501], + [-4.403320312499972, 48.29306640624998], + [-4.241406249999926, 48.30366210937501], + [-4.301757812499972, 48.347070312499966], + [-4.364404296874937, 48.35673828124999], + [-4.39316406249992, 48.36762695312498], + [-4.524804687499937, 48.37231445312506], + [-4.584716796874972, 48.35751953125006], + [-4.719384765624966, 48.363134765625034], + [-4.748535156249943, 48.410009765625006], + [-4.7625, 48.45024414062502], + [-4.72075195312496, 48.539892578125006], + [-4.531201171874983, 48.61997070312506], + [-4.05888671874996, 48.70751953125003], + [-3.855664062499955, 48.69472656250002], + [-3.714794921874926, 48.71049804687502], + [-3.54599609374992, 48.76567382812499], + [-3.471484374999932, 48.81293945312501], + [-3.231445312499972, 48.84082031250003], + [-3.003222656250017, 48.79067382812502], + [-2.792871093749966, 48.60107421875003], + [-2.692333984374983, 48.53681640624998], + [-2.446191406249937, 48.64829101562506], + [-2.07944335937492, 48.64501953125], + [-2.00371093749996, 48.58208007812499], + [-1.973144531249943, 48.635107421875034], + [-1.905712890624955, 48.69711914062506], + [-1.851953124999937, 48.668847656249966], + [-1.824707031249972, 48.630517578124994], + [-1.437646484374994, 48.64140624999999], + [-1.376464843749972, 48.65258789062503], + [-1.480468750000028, 48.69760742187498], + [-1.565478515624932, 48.805517578125034], + [-1.583105468749977, 49.20239257812506], + [-1.690332031249966, 49.31318359374998], + [-1.813427734374983, 49.490136718749966], + [-1.870068359374983, 49.59511718750002], + [-1.875390625, 49.63139648437496], + [-1.856445312499972, 49.68378906249998], + [-1.70512695312496, 49.68095703125002], + [-1.588232421874949, 49.66767578124998], + [-1.36572265625, 49.70727539062497], + [-1.258642578124949, 49.68017578125006], + [-1.264941406249989, 49.59824218750006], + [-1.232275390625006, 49.49487304687503], + [-1.194970703124937, 49.44482421874997], + [-1.138525390624977, 49.38789062500001], + [-0.959130859374937, 49.393164062500006], + [-0.765527343749937, 49.359716796875034], + [-0.520898437499937, 49.35454101562496], + [-0.163476562499937, 49.296777343749994], + [-0.011181640625011, 49.330224609374994], + [0.13613281250008, 49.40151367187502], + [0.41689453125008, 49.448388671874994], + [0.439257812500017, 49.47319335937499], + [0.277636718750045, 49.46328125], + [0.129394531250028, 49.508447265624966], + [0.109375, 49.55751953125002], + [0.1265625, 49.60156250000003], + [0.186718749999983, 49.703027343749994], + [0.6162109375, 49.862939453124966], + [0.924121093750017, 49.91020507812502], + [1.245507812500051, 49.99824218750001], + [1.407226562500028, 50.08852539062502], + [1.514062500000051, 50.20507812500006], + [1.548437500000034, 50.23071289062503], + [1.5927734375, 50.25219726562506], + [1.551562500000045, 50.29394531250003], + [1.579492187500051, 50.73925781249997], + [1.60957031250004, 50.819482421874994], + [1.672265625000023, 50.885009765625], + [1.767675781250034, 50.93569335937502], + [1.9125, 50.990625], + [2.445703125000051, 51.066503906250034], + [2.52490234375, 51.097119140624955], + [2.536035156250051, 51.04951171875004], + [2.574804687500063, 50.98857421874996], + [2.60146484375008, 50.95527343750001], + [2.579296874999983, 50.91176757812505], + [2.596777343750006, 50.87592773437501], + [2.669140625000011, 50.81142578125002], + [2.759375, 50.750634765624994] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "Faeroe Is.", + "iso_a2": "FO", + "iso_a3": "FRO", + "iso_n3": "234", + "continent": "Europe" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-6.699462890624943, 61.44462890625002], + [-6.6796875, 61.41430664062497], + [-6.703027343749966, 61.417675781249955], + [-6.770507812499943, 61.45224609374998], + [-6.888134765624926, 61.534765625], + [-6.92924804687496, 61.60292968750002], + [-6.934863281249932, 61.634326171875045], + [-6.905908203124994, 61.63081054687504], + [-6.881640624999932, 61.602783203125], + [-6.770019531250028, 61.584375], + [-6.74062, 61.57050781250001], + [-6.741064453124977, 61.53637695312497], + [-6.703515624999966, 61.495947265625006], + [-6.699462890624943, 61.44462890625002] + ] + ], + [ + [ + [-6.623193359374937, 61.80595703125002], + [-6.642773437499926, 61.76831054687497], + [-6.670166015625, 61.768652343750034], + [-6.764257812500006, 61.815332031249966], + [-6.839160156249989, 61.84077148437498], + [-6.863964843749983, 61.86225585937501], + [-6.884765624999943, 61.89912109374998], + [-6.841796874999972, 61.90371093750002], + [-6.790771484374972, 61.895361328125006], + [-6.662109374999972, 61.86176757812501], + [-6.625830078124949, 61.826708984375074], + [-6.623193359374937, 61.80595703125002] + ] + ], + [ + [ + [-7.186865234374949, 62.139306640624966], + [-7.097119140624955, 62.10053710937498], + [-7.065185546875028, 62.07324218750003], + [-7.116796874999977, 62.046826171874955], + [-7.179394531249926, 62.0400390625], + [-7.25493164062496, 62.046142578125], + [-7.379101562499926, 62.07480468749998], + [-7.422607421875, 62.140283203124994], + [-7.33676757812492, 62.13867187500003], + [-7.235302734374955, 62.151220703125006], + [-7.186865234374949, 62.139306640624966] + ] + ], + [ + [ + [-6.631054687499955, 62.22788085937498], + [-6.655810546874932, 62.09360351562498], + [-6.696435546874937, 62.09433593750006], + [-6.768896484374977, 62.131494140624994], + [-6.823437499999983, 62.13911132812501], + [-6.840527343749983, 62.119287109374994], + [-6.83769531249996, 62.09541015625001], + [-6.809472656249966, 62.08041992187506], + [-6.722558593749937, 61.99038085937502], + [-6.71440429687496, 61.96416015624999], + [-6.725195312499949, 61.95146484374999], + [-6.809716796874937, 61.97744140625005], + [-7.013574218749994, 62.09399414062497], + [-7.17216796874996, 62.28559570312501], + [-6.958642578124994, 62.31625976562506], + [-6.803662109374955, 62.265966796875034], + [-6.631054687499955, 62.22788085937498] + ] + ], + [ + [ + [-6.406054687499932, 62.258642578125034], + [-6.453857421875, 62.1865234375], + [-6.52470703124996, 62.197851562500006], + [-6.544140624999926, 62.20561523437499], + [-6.559472656249937, 62.22451171875002], + [-6.552050781249932, 62.278125], + [-6.554589843749994, 62.35566406250001], + [-6.473046875, 62.291894531249966], + [-6.406054687499932, 62.258642578125034] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "Micronesia", + "iso_a2": "FM", + "iso_a3": "FSM", + "iso_n3": "583", + "continent": "Oceania" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [162.98320312500007, 5.325732421875003], + [162.99345703125002, 5.27724609374998], + [162.92988281250004, 5.300781249999986], + [162.92109375000004, 5.317919921875017], + [162.95820312500004, 5.335009765625031], + [162.98320312500007, 5.325732421875003] + ] + ], + [ + [ + [158.31484375, 6.813671875], + [158.2565429687501, 6.791015625], + [158.18339843750002, 6.801269531250057], + [158.16083984375004, 6.882812500000057], + [158.12763671875004, 6.904638671874977], + [158.13476562499997, 6.944824218749986], + [158.18613281250006, 6.977734375000026], + [158.29462890625004, 6.951074218750023], + [158.33496093749997, 6.893164062500034], + [158.309375, 6.854638671874994], + [158.31484375, 6.813671875] + ] + ], + [ + [ + [151.64775390625002, 7.346191406250043], + [151.63945312500002, 7.333007812500028], + [151.5783203125001, 7.338085937499997], + [151.5697265625, 7.345507812499989], + [151.57509765625005, 7.351318359375028], + [151.60429687500002, 7.357226562499989], + [151.60781250000005, 7.375390625000037], + [151.59287109375012, 7.379248046875034], + [151.60566406250004, 7.388720703125003], + [151.62949218750012, 7.390429687500003], + [151.6432617187501, 7.379248046875034], + [151.65048828125012, 7.362841796874974], + [151.64775390625002, 7.346191406250043] + ] + ], + [ + [ + [151.88144531250012, 7.432031250000037], + [151.86425781249997, 7.426757812500028], + [151.85595703124997, 7.43178710937498], + [151.85996093750006, 7.457373046875048], + [151.86533203125012, 7.466162109374977], + [151.88183593750003, 7.467089843749989], + [151.910546875, 7.46015625], + [151.91259765624997, 7.453857421875043], + [151.88144531250012, 7.432031250000037] + ] + ], + [ + [ + [138.14267578125006, 9.50068359375004], + [138.06708984375004, 9.419042968750006], + [138.06191406250005, 9.44575195312504], + [138.08505859375006, 9.49458007812504], + [138.11689453125004, 9.550195312499994], + [138.14697265624997, 9.583593749999963], + [138.18583984375007, 9.593310546874989], + [138.21357421875004, 9.547216796875006], + [138.18251953125, 9.507373046874974], + [138.14267578125006, 9.50068359375004] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Gabon", + "iso_a2": "GA", + "iso_a3": "GAB", + "iso_n3": "266", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [13.293554687500006, 2.161572265624997], + [13.288671875, 2.091699218749994], + [13.20947265625, 1.92041015625], + [13.172167968750017, 1.78857421875], + [13.162695312500006, 1.648095703124994], + [13.1845703125, 1.535058593749994], + [13.222753906250006, 1.45458984375], + [13.247363281250017, 1.36669921875], + [13.228320312500017, 1.305419921875], + [13.190136718750011, 1.279248046874997], + [13.21630859375, 1.2484375], + [13.274121093750011, 1.241015624999989], + [13.372363281250017, 1.267773437499997], + [13.523339843750023, 1.314599609374994], + [13.72119140625, 1.382275390624997], + [13.851367187500017, 1.41875], + [14.066210937500017, 1.395898437499994], + [14.180859375000011, 1.370214843749991], + [14.23974609375, 1.322558593749989], + [14.303027343750017, 1.120849609375], + [14.33447265625, 1.090234375], + [14.386425781250011, 1.004443359374989], + [14.429882812500011, 0.901464843749991], + [14.439160156250011, 0.84912109375], + [14.434472656250023, 0.811474609374997], + [14.390625, 0.755712890624991], + [14.341503906250011, 0.673828125], + [14.32421875, 0.62421875], + [14.283105468750023, 0.587451171874989], + [14.23095703125, 0.551123046874991], + [14.0875, 0.536572265624997], + [14.065527343750006, 0.514990234374991], + [14.025292968750023, 0.427734375], + [13.949609375000023, 0.353808593749989], + [13.915136718750006, 0.283984374999989], + [13.884570312500017, 0.190820312499994], + [13.890625, 0.075292968749991], + [13.87548828125, -0.0908203125], + [13.860058593750011, -0.203320312500011], + [13.898046875, -0.242578125], + [14.069433593750006, -0.270117187500006], + [14.102832031250017, -0.292382812500009], + [14.148339843750023, -0.361914062500006], + [14.206738281250011, -0.42734375], + [14.36376953125, -0.468554687500003], + [14.424707031250023, -0.518652343750006], + [14.47412109375, -0.573437500000011], + [14.480566406250006, -0.618359375000011], + [14.444921875, -0.798828125], + [14.41064453125, -0.972070312500009], + [14.424023437500011, -1.10390625], + [14.436914062500023, -1.229785156250003], + [14.45556640625, -1.413183593750006], + [14.447265625, -1.525097656250011], + [14.402929687500006, -1.593359375], + [14.402929687500006, -1.64697265625], + [14.423242187500023, -1.711523437500006], + [14.383984375000011, -1.890039062500009], + [14.358593750000011, -1.920214843750003], + [14.288378906250017, -1.953515625], + [14.25146484375, -2.00146484375], + [14.239648437500023, -2.076757812500006], + [14.201757812500006, -2.179882812500011], + [14.162890625000017, -2.217578125], + [14.162890625000017, -2.265527343750009], + [14.200390625000011, -2.300585937500003], + [14.199804687500006, -2.354199218750011], + [14.129785156250023, -2.41796875], + [14.08740234375, -2.466894531250006], + [13.993847656250011, -2.490625], + [13.886914062500011, -2.465429687500006], + [13.86181640625, -2.429882812500011], + [13.8876953125, -2.37451171875], + [13.878515625, -2.330175781250006], + [13.841601562500017, -2.28369140625], + [13.784375, -2.163769531250011], + [13.733789062500023, -2.138476562500003], + [13.70556640625, -2.1875], + [13.618554687500023, -2.278613281250003], + [13.464941406250006, -2.395410156250009], + [13.357324218750023, -2.40478515625], + [13.158593750000023, -2.369140625], + [12.991992187500017, -2.313378906250009], + [12.91357421875, -2.17626953125], + [12.864453125000011, -2.06328125], + [12.793554687500006, -1.931835937500011], + [12.713671875000017, -1.869433593750003], + [12.62841796875, -1.82958984375], + [12.590429687500006, -1.826855468750011], + [12.468652343750023, -1.9], + [12.43212890625, -1.928906250000011], + [12.432421875000017, -1.990332031250006], + [12.44375, -2.047558593750011], + [12.462597656250011, -2.075292968750006], + [12.478515625, -2.112011718750011], + [12.475683593750006, -2.169238281250003], + [12.453808593750011, -2.24560546875], + [12.446386718750006, -2.329980468750009], + [12.064453125, -2.41259765625], + [11.998242187500011, -2.3828125], + [11.950292968750006, -2.344824218750006], + [11.892382812500017, -2.351464843750009], + [11.726757812500011, -2.394726562500011], + [11.665917968750023, -2.364550781250003], + [11.60546875, -2.342578125], + [11.577734375, -2.3609375], + [11.5751953125, -2.397070312500006], + [11.603417968750023, -2.595410156250011], + [11.594531250000017, -2.670996093750006], + [11.55712890625, -2.769628906250006], + [11.537792968750011, -2.83671875], + [11.639062500000023, -2.855371093750009], + [11.675683593750023, -2.886621093750009], + [11.711328125000023, -2.9365234375], + [11.760156250000023, -2.983105468750011], + [11.763476562500017, -3.01123046875], + [11.7080078125, -3.063085937500006], + [11.6890625, -3.126953125], + [11.715429687500006, -3.176953125000011], + [11.784375, -3.229101562500006], + [11.885058593750017, -3.283203125], + [11.934179687500006, -3.318554687500011], + [11.929296875, -3.350976562500009], + [11.8828125, -3.420214843750003], + [11.86474609375, -3.478613281250006], + [11.832910156250023, -3.531445312500011], + [11.839453125, -3.580078125], + [11.884765625, -3.625390625], + [11.8798828125, -3.665917968750009], + [11.84912109375, -3.696679687500009], + [11.786425781250017, -3.690234375], + [11.7333984375, -3.694531250000011], + [11.685742187500011, -3.68203125], + [11.536816406250011, -3.525], + [11.504296875000023, -3.5203125], + [11.288281250000011, -3.64111328125], + [11.234472656250006, -3.690820312500009], + [11.190039062500006, -3.762011718750003], + [11.130175781250017, -3.916308593750003], + [11.032031250000017, -3.826464843750003], + [10.947265625, -3.662109375], + [10.848535156250023, -3.561328125], + [10.640722656250006, -3.398046875], + [10.58544921875, -3.278027343750011], + [10.34765625, -3.013085937500009], + [10.006152343750017, -2.748339843750003], + [9.759472656250011, -2.5185546875], + [9.722070312500023, -2.467578125], + [9.763671875, -2.473828125000011], + [10.001953125, -2.58837890625], + [10.034472656250017, -2.575585937500009], + [10.06201171875, -2.549902343750006], + [9.959082031250006, -2.48984375], + [9.86083984375, -2.442578125000011], + [9.768652343750006, -2.4130859375], + [9.676367187500006, -2.415625], + [9.624609375, -2.367089843750009], + [9.591015625000011, -2.293164062500011], + [9.574023437500017, -2.22998046875], + [9.533203125, -2.163867187500003], + [9.402246093750023, -2.027636718750003], + [9.370507812500023, -1.975], + [9.298925781250006, -1.903027343750011], + [9.342480468750011, -1.893652343750006], + [9.482812500000023, -1.962304687500009], + [9.495312500000011, -1.934960937500009], + [9.483203125000017, -1.894628906250006], + [9.342187500000023, -1.829394531250003], + [9.265625, -1.825097656250009], + [9.247949218750023, -1.779296875], + [9.258398437500006, -1.726269531250011], + [9.157519531250017, -1.527734375], + [9.052832031250006, -1.379101562500011], + [9.036328125000011, -1.308886718750003], + [9.31884765625, -1.632031250000011], + [9.356640625000011, -1.637597656250009], + [9.406347656250006, -1.634570312500003], + [9.523339843750023, -1.598339843750011], + [9.501074218750006, -1.55517578125], + [9.448339843750006, -1.508886718750006], + [9.397167968750011, -1.530175781250009], + [9.330664062500006, -1.534570312500009], + [9.295800781250023, -1.515234375], + [9.280175781250023, -1.48193359375], + [9.3466796875, -1.325], + [9.31787109375, -1.332910156250009], + [9.296679687500017, -1.3609375], + [9.260156250000023, -1.374218750000011], + [9.203808593750011, -1.382421875], + [9.064648437500011, -1.29833984375], + [8.94189453125, -1.071484375000011], + [8.909375, -1.025], + [8.8765625, -0.94609375], + [8.84423828125, -0.91357421875], + [8.703125, -0.591015625000011], + [8.757226562500023, -0.614941406250011], + [8.821386718750006, -0.708398437500009], + [8.946386718750006, -0.688769531250003], + [8.995214843750006, -0.634667968750009], + [9.037890625000017, -0.63671875], + [9.08154296875, -0.624316406250003], + [9.136523437500017, -0.573339843750006], + [9.296679687500017, -0.351269531250011], + [9.339062500000011, -0.058251953125009], + [9.325292968750006, 0.115820312499991], + [9.301855468750006, 0.288525390624997], + [9.354882812500023, 0.343603515624991], + [9.375781250000017, 0.307226562499991], + [9.386132812500023, 0.245898437499989], + [9.4111328125, 0.200439453125], + [9.468164062500023, 0.159765625], + [9.574316406250006, 0.14892578125], + [9.738378906250006, 0.0849609375], + [9.796777343750023, 0.044238281249989], + [9.812695312500011, 0.125585937499991], + [10.00146484375, 0.194970703124994], + [9.944433593750006, 0.219873046874994], + [9.776660156250017, 0.192480468749991], + [9.546484375, 0.295947265624989], + [9.470117187500023, 0.361914062499991], + [9.398828125000023, 0.48671875], + [9.324804687500006, 0.552099609374991], + [9.329980468750023, 0.61083984375], + [9.495312500000011, 0.664843749999989], + [9.538964843750023, 0.65869140625], + [9.556640625, 0.594189453124997], + [9.60107421875, 0.567724609374991], + [9.617968750000017, 0.576513671874991], + [9.625292968750017, 0.631640624999989], + [9.625878906250023, 0.779443359374994], + [9.575390625000011, 0.991308593749991], + [9.5908203125, 1.031982421875], + [9.636132812500023, 1.046679687499989], + [9.676464843750011, 1.07470703125], + [9.70458984375, 1.079980468749994], + [9.760546875000017, 1.07470703125], + [9.788671875, 1.025683593749989], + [9.803906250000011, 0.998730468749997], + [9.8603515625, 0.986230468749994], + [9.90673828125, 0.960107421874994], + [9.946679687500023, 0.967138671874991], + [9.979785156250017, 0.997705078124994], + [10.028515625000011, 1.004003906249991], + [10.178906250000011, 1.003564453124994], + [10.3154296875, 1.003076171874994], + [10.587207031250017, 1.002148437499997], + [10.85888671875, 1.001269531249989], + [11.130664062500017, 1.000390625], + [11.335351562500023, 0.999707031249997], + [11.334667968750011, 1.120751953124994], + [11.33359375, 1.3076171875], + [11.332324218750017, 1.528369140624989], + [11.331152343750006, 1.740185546874997], + [11.330078125, 1.935888671874991], + [11.328710937500006, 2.167431640624997], + [11.339941406250006, 2.233837890624997], + [11.353320312500017, 2.261425781249997], + [11.348437500000017, 2.299707031249994], + [11.558984375000023, 2.302197265624997], + [11.939746093750017, 2.28515625], + [12.106152343750011, 2.2875], + [12.153417968750006, 2.284375], + [12.361328125, 2.295996093749991], + [12.52978515625, 2.281347656249991], + [12.601367187500017, 2.265039062499994], + [12.665722656250011, 2.256787109374997], + [12.867480468750017, 2.246777343749997], + [13.130859375, 2.259423828124994], + [13.2203125, 2.256445312499991], + [13.269921875000023, 2.22421875], + [13.293554687500006, 2.161572265624997] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "United Kingdom", + "iso_a2": "GB", + "iso_a3": "GBR", + "iso_n3": "826", + "continent": "Europe" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-1.065576171874966, 50.69023437500002], + [-1.149365234374983, 50.65571289062501], + [-1.17583007812496, 50.61523437500003], + [-1.196093749999989, 50.59921875000006], + [-1.25146484375, 50.58881835937498], + [-1.306298828124966, 50.588525390624994], + [-1.515332031249926, 50.669775390625034], + [-1.563427734374955, 50.666113281250006], + [-1.515673828124989, 50.70332031250004], + [-1.38583984374992, 50.733544921874966], + [-1.31279296874996, 50.77348632812502], + [-1.144238281250011, 50.734716796875034], + [-1.065576171874966, 50.69023437500002] + ] + ], + [ + [ + [-4.196777343749972, 53.321435546874966], + [-4.154882812499977, 53.302832031250006], + [-4.04936523437496, 53.30576171874998], + [-4.084277343749989, 53.264306640624966], + [-4.200390624999926, 53.21806640624996], + [-4.27861328124996, 53.17241210937499], + [-4.373046875, 53.13417968750002], + [-4.418847656250023, 53.17802734374999], + [-4.471972656249989, 53.176367187500006], + [-4.553222656249943, 53.26044921874998], + [-4.56787109375, 53.386474609375], + [-4.46171875, 53.419287109375006], + [-4.315087890625023, 53.41723632812503], + [-4.196777343749972, 53.321435546874966] + ] + ], + [ + [ + [-6.375292968749989, 55.241796875000034], + [-6.23422851562492, 55.21684570312502], + [-6.129150390625028, 55.217382812500034], + [-6.035791015624994, 55.14453125000003], + [-5.985742187499937, 55.0296875], + [-5.869189453124989, 54.91621093749998], + [-5.71684570312496, 54.817480468750034], + [-5.71074218749996, 54.75708007812497], + [-5.765185546874932, 54.72465820312502], + [-5.879101562499955, 54.68437], + [-5.878613281249955, 54.64130859375001], + [-5.803466796875, 54.66303710937501], + [-5.738623046874949, 54.67304687499998], + [-5.582519531249943, 54.66342773437498], + [-5.52792968749992, 54.61962890625003], + [-5.490185546874955, 54.554052734375006], + [-5.470410156249926, 54.500195312499955], + [-5.48388671875, 54.44165039062503], + [-5.525878906249943, 54.46020507812497], + [-5.568554687499926, 54.512597656249994], + [-5.615966796875, 54.536718750000034], + [-5.671093749999955, 54.54975585937501], + [-5.64609375, 54.477880859375034], + [-5.655957031249983, 54.381738281249966], + [-5.63188476562496, 54.37265625], + [-5.557812499999983, 54.37099609375002], + [-5.60678710937492, 54.272558593750034], + [-5.708056640624932, 54.245849609375], + [-5.826171875000028, 54.23583984375], + [-5.854638671874966, 54.20097656250002], + [-5.876074218749977, 54.15605468750002], + [-5.937744140625, 54.08906250000004], + [-6.019042968749972, 54.05126953124997], + [-6.119531250000023, 54.05888671875002], + [-6.218017578125, 54.08872070312506], + [-6.303662109374955, 54.094873046874966], + [-6.363671875000023, 54.07709960937501], + [-6.402587890624943, 54.060644531250034], + [-6.440283203124977, 54.063623046874994], + [-6.548144531249932, 54.05727539062505], + [-6.649804687499937, 54.05864257812496], + [-6.664208984374966, 54.08476562499996], + [-6.64687, 54.163427734375006], + [-6.669531249999977, 54.184716796874994], + [-6.766601562499943, 54.19560546874999], + [-6.802587890624977, 54.21435546874997], + [-6.858349609374983, 54.268652343750034], + [-6.869238281249977, 54.29404296875006], + [-6.877246093749932, 54.3291015625], + [-6.93613281249992, 54.37431640624999], + [-7.007714843749937, 54.40668945312501], + [-7.049707031249966, 54.40825195312496], + [-7.133496093749983, 54.35537109375002], + [-7.202587890624955, 54.301806640625045], + [-7.17807617187492, 54.27490234374997], + [-7.155468749999926, 54.23950195312506], + [-7.193066406249955, 54.21411132812503], + [-7.306738281249949, 54.156005859375], + [-7.324511718750017, 54.13344726562502], + [-7.355175781249955, 54.12124023437502], + [-7.409423828124972, 54.137304687500006], + [-7.544433593749943, 54.13359375], + [-7.606542968750006, 54.14384765625002], + [-7.67875976562496, 54.18666992187502], + [-7.854931640624983, 54.21528320312498], + [-7.884472656249955, 54.283789062500006], + [-7.918457031249943, 54.29658203125004], + [-8.118261718749977, 54.41425781250004], + [-8.14482421874996, 54.45351562500002], + [-8.118945312499932, 54.47695312500002], + [-8.044335937500023, 54.51245117187506], + [-7.793798828124949, 54.57124023437504], + [-7.75439453125, 54.59492187499998], + [-7.746289062499955, 54.61582031250006], + [-7.819824218750028, 54.639697265625045], + [-7.886132812499937, 54.66606445312499], + [-7.908740234374932, 54.68334960937506], + [-7.910595703124955, 54.698339843750006], + [-7.872949218749994, 54.71787109374998], + [-7.797265624999937, 54.71928710937499], + [-7.7375, 54.71044921874997], + [-7.689990234374932, 54.72802734375], + [-7.606445312499972, 54.74570312500006], + [-7.55039062499992, 54.767968749999966], + [-7.502197265624972, 54.82543945312506], + [-7.451269531249977, 54.877099609374994], + [-7.445996093749983, 54.905126953125034], + [-7.40141601562496, 55.00332031250005], + [-7.376904296874926, 55.027685546875034], + [-7.218652343749937, 55.09199218749998], + [-7.178613281249937, 55.05688476562503], + [-7.10063476562496, 55.04829101562498], + [-7.030761718749943, 55.08061523437499], + [-6.947167968749966, 55.18251953125005], + [-6.888964843749989, 55.18891601562501], + [-6.824853515624994, 55.18066406250003], + [-6.698828124999977, 55.19345703125006], + [-6.475048828124955, 55.24101562499999], + [-6.375292968749989, 55.241796875000034] + ] + ], + [ + [ + [-5.105419921875011, 55.448828125000034], + [-5.231494140624932, 55.44809570312498], + [-5.277050781249983, 55.456738281249955], + [-5.331494140624955, 55.481054687500034], + [-5.392675781249977, 55.61835937500001], + [-5.370800781249983, 55.66694335937498], + [-5.345703125, 55.69072265625002], + [-5.318115234375, 55.709179687499955], + [-5.251611328124937, 55.71694335937502], + [-5.185449218749966, 55.69096679687499], + [-5.160400390625, 55.666796875000045], + [-5.10498046875, 55.57397460937503], + [-5.094726562499943, 55.49433593749998], + [-5.105419921875011, 55.448828125000034] + ] + ], + [ + [ + [-6.128906249999972, 55.93056640625002], + [-6.092822265624989, 55.802148437499994], + [-6.0576171875, 55.722509765625006], + [-6.055322265624994, 55.69531249999997], + [-6.088378906249972, 55.65751953125002], + [-6.253173828124972, 55.60722656249999], + [-6.305078124999966, 55.60693359375], + [-6.307226562499977, 55.619140625], + [-6.270019531249943, 55.67031250000005], + [-6.302050781249989, 55.72836914062506], + [-6.286425781249989, 55.77250976562499], + [-6.3017578125, 55.780615234375034], + [-6.333886718749994, 55.77436523437501], + [-6.45195312499996, 55.70424804687502], + [-6.491357421874994, 55.697314453125045], + [-6.495654296874989, 55.711572265624994], + [-6.466455078124994, 55.76899414062498], + [-6.462841796874955, 55.808251953124994], + [-6.445263671874926, 55.832373046875006], + [-6.413183593749977, 55.85463867187502], + [-6.374951171875011, 55.87133789062506], + [-6.344140624999937, 55.87373046875001], + [-6.311279296875, 55.856494140625045], + [-6.215673828124977, 55.90458984374999], + [-6.128906249999972, 55.93056640625002] + ] + ], + [ + [ + [-5.970068359374949, 55.814550781250034], + [-5.990917968749926, 55.80380859375006], + [-6.041552734374932, 55.80678710937505], + [-6.060351562499932, 55.82290039062505], + [-6.070703125000023, 55.84765625000003], + [-6.071972656250011, 55.893115234375045], + [-6.04130859374996, 55.925634765625006], + [-5.911767578124966, 55.974755859374966], + [-5.970312499999977, 55.99218749999997], + [-5.972656250000028, 56.00444335937499], + [-5.9390625, 56.045263671875034], + [-5.799609374999932, 56.10878906250002], + [-5.76225585937496, 56.120312499999955], + [-5.72514648437496, 56.118554687499966], + [-5.797216796874977, 56.00561523437506], + [-5.970068359374949, 55.814550781250034] + ] + ], + [ + [ + [-5.77788085937496, 56.344335937500034], + [-6.176171875, 56.288720703124994], + [-6.313427734374983, 56.29365234375001], + [-6.325830078124937, 56.320947265624994], + [-6.298486328124966, 56.33916015624996], + [-6.184863281249989, 56.35688476562501], + [-6.138867187499955, 56.490625], + [-6.310644531249949, 56.55214843750002], + [-6.31967773437492, 56.56943359374998], + [-6.30625, 56.59877929687502], + [-6.286328124999983, 56.61186523437502], + [-6.182080078124955, 56.64296875000005], + [-6.13828125, 56.64985351562501], + [-6.102734374999955, 56.645654296874966], + [-6.029589843749989, 56.60981445312504], + [-5.946679687499966, 56.53452148437498], + [-5.836035156249977, 56.522558593750034], + [-5.760839843749949, 56.49067382812501], + [-5.77788085937496, 56.344335937500034] + ] + ], + [ + [ + [-6.607617187499983, 56.58500976562496], + [-6.664453125, 56.57944335937498], + [-6.668554687499949, 56.593603515625034], + [-6.56992187499992, 56.661230468750034], + [-6.506054687499983, 56.67236328125], + [-6.48369140624996, 56.66577148437497], + [-6.530078124999989, 56.626611328124994], + [-6.607617187499983, 56.58500976562496] + ] + ], + [ + [ + [-7.416894531249994, 56.965429687500006], + [-7.504785156249966, 56.95166015625006], + [-7.537402343749932, 56.959716796875], + [-7.54296875, 56.97236328125001], + [-7.522949218750028, 57.00678710937501], + [-7.455468749999937, 57.018945312499994], + [-7.406689453124955, 57.00029296875002], + [-7.398925781249972, 56.98334960937501], + [-7.416894531249994, 56.965429687500006] + ] + ], + [ + [ + [-6.279052734375, 56.964697265625034], + [-6.308740234375023, 56.951806640624994], + [-6.346240234374932, 56.954296874999955], + [-6.383398437499949, 56.97089843749998], + [-6.432617187499943, 57.017919921875034], + [-6.322363281249949, 57.05053710937503], + [-6.278222656250023, 57.03139648437505], + [-6.261279296874932, 57.00952148437503], + [-6.26054687499996, 56.985253906249966], + [-6.279052734375, 56.964697265625034] + ] + ], + [ + [ + [-7.249853515624977, 57.115332031250006], + [-7.29204101562496, 57.10976562500002], + [-7.347412109374972, 57.11513671875005], + [-7.381494140624966, 57.13066406250002], + [-7.415917968749966, 57.192138671875], + [-7.422363281249943, 57.229345703125034], + [-7.407031249999932, 57.298486328124994], + [-7.410546874999937, 57.38110351562506], + [-7.296386718749972, 57.38369140625005], + [-7.26713867187496, 57.37177734375001], + [-7.247558593749972, 57.12636718750002], + [-7.249853515624977, 57.115332031250006] + ] + ], + [ + [ + [-6.144726562499983, 57.50498046874998], + [-6.146142578125023, 57.460791015625034], + [-6.163769531249955, 57.40883789062502], + [-6.140820312499983, 57.353662109374966], + [-6.135546874999989, 57.31425781250002], + [-6.093408203124937, 57.301708984374955], + [-6.067626953125, 57.28354492187498], + [-5.880273437499937, 57.26323242187502], + [-5.706005859374955, 57.26894531250002], + [-5.672460937499977, 57.252685546875], + [-5.668652343749983, 57.22690429687498], + [-5.696191406249994, 57.198437499999955], + [-5.795410156249972, 57.14653320312496], + [-5.913769531249926, 57.06264648437502], + [-5.94907226562492, 57.045166015625], + [-5.987304687499972, 57.04443359375003], + [-6.014746093749977, 57.051953124999955], + [-6.03437, 57.20122070312499], + [-6.162744140624937, 57.18212890625003], + [-6.266113281249943, 57.18432617187503], + [-6.322705078124926, 57.20249023437498], + [-6.36240234374992, 57.2375], + [-6.442431640624989, 57.32749023437506], + [-6.675439453124937, 57.36289062499998], + [-6.741308593749949, 57.412451171875034], + [-6.761132812499994, 57.4423828125], + [-6.75273437499996, 57.45893554687501], + [-6.70419921874992, 57.49575195312505], + [-6.643457031249994, 57.48261718750004], + [-6.605859374999966, 57.49067382812498], + [-6.583007812500028, 57.50712890624996], + [-6.583496093749943, 57.520654296874966], + [-6.615283203124932, 57.55273437500003], + [-6.616796874999977, 57.56269531250001], + [-6.37851562499992, 57.60332031250002], + [-6.357666015624943, 57.66679687499999], + [-6.305957031249989, 57.67197265624998], + [-6.246923828124949, 57.651220703125006], + [-6.166064453124989, 57.585302734375006], + [-6.144726562499983, 57.50498046874998] + ] + ], + [ + [ + [-7.205566406250028, 57.682958984375006], + [-7.092773437499943, 57.62666015624998], + [-7.182617187499972, 57.53330078125006], + [-7.320556640625, 57.53374023437496], + [-7.514746093749949, 57.60195312500002], + [-7.51562, 57.615869140624994], + [-7.499414062499937, 57.636328125], + [-7.470312499999949, 57.65253906250001], + [-7.44003906249992, 57.656396484374994], + [-7.39189453124996, 57.64521484375004], + [-7.324853515624994, 57.663134765625045], + [-7.271191406249983, 57.65747070312506], + [-7.205566406250028, 57.682958984375006] + ] + ], + [ + [ + [-6.198681640624983, 58.36328125000003], + [-6.325830078124937, 58.18886718750002], + [-6.375585937499949, 58.18457031250006], + [-6.419287109374977, 58.140966796875034], + [-6.554589843749994, 58.092871093750006], + [-6.436523437500028, 58.091894531250006], + [-6.403369140624932, 58.07587890625001], + [-6.40244140624992, 58.041357421875006], + [-6.425195312499937, 58.02128906249999], + [-6.578125, 57.94135742187498], + [-6.683300781249926, 57.91103515625002], + [-6.796582031249926, 57.827539062499966], + [-6.853759765624943, 57.826513671875034], + [-6.910351562499926, 57.77338867187504], + [-6.956933593749994, 57.75004882812499], + [-6.983105468749983, 57.75], + [-7.01318359375, 57.76176757812499], + [-7.083447265624926, 57.81376953124999], + [-6.955957031249966, 57.86489257812502], + [-6.94414062499996, 57.893652343750034], + [-6.856835937499937, 57.92353515624998], + [-6.864160156250023, 57.93286132812503], + [-7.002539062499949, 57.97490234374996], + [-7.057080078124955, 58.00317382812503], + [-7.051904296874966, 58.01796875000002], + [-6.985302734375011, 58.05048828125001], + [-7.01689453124996, 58.05478515624998], + [-7.038232421874937, 58.07231445312502], + [-7.076904296875, 58.07900390625002], + [-7.088476562499977, 58.095361328124994], + [-7.095605468749994, 58.138281250000034], + [-7.085253906249932, 58.18217773437499], + [-7.044921874999972, 58.20156250000005], + [-7.028417968749977, 58.222314453124994], + [-7.012060546874949, 58.22871093749998], + [-6.94956054687492, 58.21767578125005], + [-6.886230468749972, 58.18256835937498], + [-6.812304687499932, 58.19609374999999], + [-6.726464843749937, 58.189404296874955], + [-6.72470703124992, 58.19755859375002], + [-6.787744140624994, 58.28388671875004], + [-6.776464843750006, 58.30151367187497], + [-6.742285156249949, 58.32163085937498], + [-6.544189453125028, 58.383154296875006], + [-6.29716796874996, 58.48662109375002], + [-6.237451171874966, 58.50283203125005], + [-6.219433593749926, 58.48872070312501], + [-6.194238281249966, 58.43510742187502], + [-6.198681640624983, 58.36328125000003] + ] + ], + [ + [ + [-3.109667968749932, 58.515478515625034], + [-3.10112304687496, 58.433691406250006], + [-3.112890624999977, 58.40888671875001], + [-3.136767578124932, 58.378320312499994], + [-3.212353515624983, 58.32124023437501], + [-3.410986328124949, 58.239648437499994], + [-3.775, 58.05209960937506], + [-3.99003906249996, 57.95903320312502], + [-4.019628906249949, 57.914257812499955], + [-4.035595703124926, 57.85200195312498], + [-3.906835937499977, 57.839648437500045], + [-3.857128906249983, 57.81855468750001], + [-3.887939453124943, 57.786914062500045], + [-4.078417968749932, 57.677050781250045], + [-4.134521484375, 57.57773437500006], + [-3.988476562500011, 57.58125], + [-3.8681640625, 57.60034179687503], + [-3.62822265624996, 57.66225585937505], + [-3.402783203124955, 57.708251953125], + [-3.29453125, 57.71015625000004], + [-3.083935546874926, 57.67348632812502], + [-3.036035156249937, 57.672314453124955], + [-2.946679687499937, 57.689257812500045], + [-2.85629882812492, 57.69228515625002], + [-2.244140625, 57.68085937500001], + [-2.074072265624977, 57.70239257812506], + [-1.961523437499977, 57.67666015625005], + [-1.867382812499983, 57.61235351562499], + [-1.777929687499949, 57.49375], + [-1.780664062499994, 57.474023437499966], + [-1.834716796874972, 57.41997070312499], + [-1.934472656249966, 57.35219726562502], + [-2.0203125, 57.258886718750034], + [-2.045507812499949, 57.20854492187499], + [-2.062353515625006, 57.15346679687505], + [-2.089550781249926, 57.10253906250006], + [-2.26025390625, 56.86333007812499], + [-2.426660156249966, 56.73071289062497], + [-2.5009765625, 56.63657226562498], + [-2.592675781249937, 56.56157226562499], + [-2.680957031249989, 56.51440429687506], + [-2.775195312499989, 56.482958984375045], + [-3.04741210937496, 56.44936523437502], + [-3.123583984374932, 56.42529296875003], + [-3.214453124999949, 56.38393554687502], + [-3.309960937499966, 56.36347656250004], + [-3.197998046874972, 56.366064453125034], + [-3.08701171874992, 56.3890625], + [-2.885156249999937, 56.397509765625045], + [-2.652734375000023, 56.318261718749966], + [-2.674267578124955, 56.25341796875], + [-2.767578124999972, 56.20214843750003], + [-2.979785156249932, 56.194091796875], + [-3.178222656249943, 56.080126953125045], + [-3.267773437499983, 56.045068359374994], + [-3.362255859374955, 56.02763671875002], + [-3.480419921874955, 56.0328125], + [-3.695117187500017, 56.063330078125006], + [-3.789062499999972, 56.09521484375], + [-3.704150390624989, 56.04316406249998], + [-3.6078125, 56.01601562500002], + [-3.048730468749937, 55.951953125000045], + [-3.015087890624926, 55.95859375000006], + [-2.836865234374955, 56.026269531249994], + [-2.599316406249955, 56.02729492187501], + [-2.14707031249992, 55.90297851562502], + [-2.016845703124972, 55.807958984375006], + [-1.830273437499955, 55.67172851562506], + [-1.728759765624972, 55.618554687499966], + [-1.655371093749949, 55.57036132812502], + [-1.61015625, 55.498095703125045], + [-1.522558593749977, 55.25952148437503], + [-1.42265625, 55.026416015625045], + [-1.291748046874943, 54.77387695312501], + [-1.232421874999943, 54.703710937500034], + [-1.154394531249949, 54.65449218750004], + [-0.759326171875017, 54.54140625], + [-0.671386718749943, 54.50390625], + [-0.518115234374989, 54.395117187500034], + [-0.370361328125, 54.27919921875005], + [-0.232861328124955, 54.19013671875001], + [-0.084375, 54.118066406249994], + [-0.156298828124989, 54.08061523437502], + [-0.20556640625, 54.021728515625], + [-0.16875, 53.94165039062503], + [-0.108251953124977, 53.86518554687498], + [0.010546875000074, 53.74282226562502], + [0.115332031250006, 53.609277343749994], + [0.076708984375045, 53.62944335937502], + [0.03608398437504, 53.640527343749966], + [-0.019433593749994, 53.63720703125], + [-0.073730468749943, 53.64365234374998], + [-0.173828125, 53.685449218749966], + [-0.270019531249972, 53.73676757812504], + [-0.461376953124983, 53.716162109375006], + [-0.56767578124996, 53.72539062500002], + [-0.659912109375, 53.72402343750002], + [-0.485058593750011, 53.69438476562502], + [-0.293701171875, 53.69233398437504], + [0.12832031250008, 53.46826171875003], + [0.270996093750028, 53.33549804687499], + [0.355761718750045, 53.15996093750002], + [0.298046875000011, 53.081103515625045], + [0.208203125000011, 53.03002929687503], + [0.12441406250008, 52.97158203125002], + [0.0458984375, 52.90561523437498], + [0.279785156250028, 52.80869140625006], + [0.330175781250006, 52.811621093750034], + [0.381933593750063, 52.82519531250003], + [0.431640625000057, 52.858154296875], + [0.515527343750023, 52.938378906249994], + [0.55878906250004, 52.96694335937505], + [0.704492187500051, 52.97724609375001], + [0.826757812500006, 52.97109375], + [0.948535156250017, 52.95336914062503], + [1.05556640625008, 52.95898437500003], + [1.271289062500045, 52.92456054687503], + [1.382128906250074, 52.89350585937501], + [1.656738281249972, 52.753710937500045], + [1.716113281249989, 52.67724609375], + [1.74335937500004, 52.578515624999966], + [1.74658203125, 52.46899414062503], + [1.700390624999983, 52.36889648437497], + [1.647363281250023, 52.278515624999955], + [1.614648437500023, 52.16181640624998], + [1.59140625, 52.11977539062502], + [1.558984375000051, 52.08686523437498], + [1.41347656250008, 51.994775390624966], + [1.316796875, 51.956933593749994], + [1.275976562500034, 51.973535156249994], + [1.232421875000057, 51.97124023437496], + [1.227832031249989, 51.949121093749994], + [1.273828125000051, 51.902099609375], + [1.274414062499972, 51.845361328124994], + [1.188476562500057, 51.803369140624966], + [1.101171875000034, 51.785449218750045], + [0.955078125000028, 51.80781249999998], + [0.752246093750017, 51.729589843750034], + [0.898046875000034, 51.68940429687501], + [0.927441406249983, 51.646630859374994], + [0.890917968750017, 51.571435546874966], + [0.79921875000008, 51.53789062499996], + [0.697558593750045, 51.52304687500006], + [0.593457031250068, 51.51948242187504], + [0.507226562499994, 51.501074218750006], + [0.42451171875004, 51.46562], + [0.528320312500028, 51.484472656250006], + [0.60029296875004, 51.46796875000001], + [0.645507812500028, 51.40468750000002], + [0.686523437500028, 51.38657226562506], + [0.88935546875004, 51.35952148437505], + [1.014941406250045, 51.359716796875006], + [1.257128906250017, 51.375097656250034], + [1.37343750000008, 51.37470703125004], + [1.414941406250023, 51.36328125], + [1.415625, 51.31083984374999], + [1.397558593750034, 51.18203125000002], + [1.365527343750074, 51.155468749999955], + [1.044433593750028, 51.04726562500002], + [0.978613281250034, 50.9716796875], + [0.960156250000011, 50.92587890624998], + [0.772363281250023, 50.93398437500005], + [0.684375, 50.88554687500002], + [0.532324218750063, 50.853417968749966], + [0.414746093749983, 50.819189453125006], + [0.299707031249994, 50.775976562500006], + [0.205078125, 50.763037109375034], + [-0.203906250000017, 50.814355468749994], + [-0.450781249999949, 50.810156250000034], + [-0.785253906249949, 50.76542968749999], + [-0.871386718749932, 50.77280273437498], + [-1.000585937499949, 50.81562], + [-1.132861328124989, 50.844580078125034], + [-1.285058593749994, 50.857324218749966], + [-1.416455078124955, 50.896875], + [-1.334472656249943, 50.82080078124997], + [-1.516748046874937, 50.747460937499966], + [-1.600830078124943, 50.73286132812501], + [-1.687890625, 50.735156250000045], + [-1.86601562499996, 50.715234374999966], + [-2.031054687499932, 50.72539062499999], + [-2.00625, 50.67324218750002], + [-1.962060546874994, 50.627783203125006], + [-1.99790039062492, 50.60800781249998], + [-2.035839843749926, 50.603076171875045], + [-2.350146484375017, 50.63740234375001], + [-2.394677734374937, 50.63090820312502], + [-2.43344726562492, 50.59921875000006], + [-2.547753906249937, 50.61630859374998], + [-2.658837890625023, 50.66972656250002], + [-2.77695312499992, 50.70556640625006], + [-2.900878906249943, 50.722412109375], + [-2.999414062499937, 50.71660156249999], + [-3.40458984374996, 50.63242187499998], + [-3.48544921874992, 50.547949218750006], + [-3.52587890625, 50.42817382812501], + [-3.584375, 50.32182617187502], + [-3.679785156250006, 50.239941406249955], + [-3.793359374999937, 50.229248046875], + [-3.90019531249996, 50.28593749999999], + [-4.103417968749966, 50.34853515625005], + [-4.172558593749926, 50.390820312499955], + [-4.194580078124972, 50.39331054687503], + [-4.217285156249972, 50.37817382812506], + [-4.296972656249977, 50.35908203124998], + [-4.379492187499977, 50.35820312499999], + [-4.506689453124977, 50.34135742187502], + [-4.727978515624926, 50.29047851562504], + [-4.817382812499943, 50.255957031250006], + [-5.009521484375, 50.16074218749998], + [-5.048632812499989, 50.134375], + [-5.11850585937492, 50.038330078125], + [-5.225244140624994, 50.02138671875002], + [-5.322851562499977, 50.08295898437504], + [-5.433984374999966, 50.10444335937498], + [-5.551220703124955, 50.08339843750002], + [-5.622119140624932, 50.05068359375002], + [-5.655175781249994, 50.077246093750034], + [-5.65625, 50.13188476562496], + [-5.57065429687492, 50.19697265624998], + [-5.342285156249943, 50.24614257812496], + [-5.141796874999955, 50.37373046875004], + [-5.04345703125, 50.45151367187498], + [-5.004443359374932, 50.49526367187502], + [-4.95639648437492, 50.52314453125001], + [-4.8935546875, 50.53369140625003], + [-4.861279296875011, 50.58203125], + [-4.582910156249966, 50.7763671875], + [-4.559960937499994, 50.82094726562502], + [-4.546093750000011, 50.90068359375002], + [-4.523095703124937, 50.97744140625002], + [-4.296484374999949, 51.02714843750002], + [-4.188183593749926, 51.18852539062502], + [-4.158398437499983, 51.201318359374966], + [-3.842333984374989, 51.230908203124955], + [-3.60791015625, 51.22856445312502], + [-3.37509765624992, 51.19697265624998], + [-3.255761718749937, 51.19414062500002], + [-3.135986328124972, 51.20502929687501], + [-3.042041015625017, 51.24858398437502], + [-2.88125, 51.40566406250002], + [-2.790820312499989, 51.47480468749998], + [-2.687207031249926, 51.53725585937502], + [-2.590283203124983, 51.60859374999998], + [-2.433056640624926, 51.74072265625], + [-2.539355468750017, 51.69521484375005], + [-2.667675781249955, 51.62299804687498], + [-2.742138671874926, 51.58110351562499], + [-2.978515624999943, 51.53886718749999], + [-3.080371093749989, 51.49580078125001], + [-3.258789062499943, 51.39848632812499], + [-3.293115234374994, 51.390429687500045], + [-3.562353515624949, 51.413818359375], + [-3.7626953125, 51.53994140625002], + [-3.890771484374994, 51.591650390625006], + [-3.943652343749932, 51.597509765625034], + [-3.99833984374996, 51.582128906250006], + [-4.115283203124989, 51.56640625], + [-4.234570312499955, 51.56909179687503], + [-4.173681640624977, 51.62734375], + [-4.091015624999926, 51.65991210937506], + [-4.276171874999989, 51.68251953125002], + [-4.32763671875, 51.70024414062502], + [-4.38627929687496, 51.74106445312506], + [-4.531494140624972, 51.74804687499997], + [-4.600781249999955, 51.73764648437498], + [-4.717626953124949, 51.683691406250006], + [-4.902294921874926, 51.626269531250045], + [-5.124755859374943, 51.70585937499999], + [-5.168359374999937, 51.74072265625], + [-5.167236328124972, 51.80805664062504], + [-5.200585937499937, 51.86137695312496], + [-5.262304687499977, 51.88017578124999], + [-5.183349609374972, 51.94965820312501], + [-5.088085937499926, 51.99589843750002], + [-4.878515624999949, 52.04184570312506], + [-4.561132812499949, 52.15087890624997], + [-4.383154296874949, 52.19731445312502], + [-4.217724609374983, 52.277441406250006], + [-4.149365234375011, 52.326269531250006], + [-4.099755859374937, 52.39311523437502], + [-4.050537109374943, 52.475146484375045], + [-3.980322265624949, 52.54174804687503], + [-4.048437499999949, 52.55761718749997], + [-4.07890625, 52.60786132812498], + [-4.070703124999966, 52.658837890624994], + [-4.039257812499955, 52.704052734374955], + [-4.067431640625017, 52.76074218750006], + [-4.11752929687492, 52.820019531249955], + [-4.114746093749972, 52.86616210937504], + [-4.101464843750023, 52.915478515624955], + [-4.229150390624994, 52.91284179687503], + [-4.3564453125, 52.89741210937501], + [-4.471826171874966, 52.862451171874994], + [-4.583691406249926, 52.81494140625], + [-4.683056640624926, 52.80615234374997], + [-4.68144531249996, 52.844140625], + [-4.638330078124966, 52.89111328125006], + [-4.525683593749932, 52.958203124999955], + [-4.40507812499996, 53.013818359374994], + [-4.362207031249937, 53.056054687499994], + [-4.328417968749989, 53.10512695312505], + [-4.268554687499943, 53.14453125], + [-4.111035156249926, 53.218945312499955], + [-3.809277343749983, 53.30268554687498], + [-3.76420898437496, 53.3076171875], + [-3.645898437499937, 53.29790039062496], + [-3.52958984374996, 53.31054687499997], + [-3.427734374999972, 53.34067382812498], + [-3.326171874999972, 53.34716796874997], + [-3.097558593749937, 53.260302734375045], + [-3.16557617187496, 53.394677734374966], + [-3.064746093749932, 53.426855468750034], + [-2.918554687499977, 53.30537109374998], + [-2.864160156249994, 53.292578125000034], + [-2.74951171875, 53.310205078124994], + [-2.79375, 53.330712890624994], + [-2.845410156249926, 53.331933593749966], + [-2.913085937499943, 53.350244140624966], + [-2.969970703124972, 53.38920898437502], + [-3.064599609374994, 53.512841796874966], + [-3.059472656249994, 53.58623046875002], + [-2.995703124999977, 53.66254882812501], + [-2.925097656249989, 53.732763671875006], + [-2.984326171874983, 53.74672851562502], + [-3.03178710937496, 53.773583984374994], + [-3.045361328124983, 53.843847656250006], + [-3.026757812499994, 53.90590820312502], + [-2.899853515624983, 53.960693359375], + [-2.86240234374992, 54.043847656249966], + [-2.84648437499996, 54.135302734375045], + [-2.867578125, 54.17724609374997], + [-2.993505859374977, 54.170507812500034], + [-3.054736328124932, 54.153417968750006], + [-3.109667968749932, 54.12631835937498], + [-3.165966796874955, 54.12792968750006], + [-3.321533203125028, 54.22910156250006], + [-3.410253906249977, 54.30561523437501], + [-3.56938476562496, 54.46757812499996], + [-3.592041015624972, 54.564355468749966], + [-3.464599609374943, 54.77309570312505], + [-3.26791992187492, 54.90659179687506], + [-3.036230468749977, 54.95307617187501], + [-3.081054687499972, 54.96196289062496], + [-3.434082031249943, 54.963769531249994], + [-3.550439453124937, 54.94741210937502], + [-3.658300781249977, 54.89287109375002], + [-3.719238281249943, 54.876123046874966], + [-3.783251953124932, 54.86992187499996], + [-3.841601562500017, 54.84277343750003], + [-3.898583984374994, 54.805078125], + [-3.957910156249994, 54.780957031249955], + [-4.07578125, 54.78720703124998], + [-4.132958984374937, 54.779248046874955], + [-4.174023437499955, 54.80107421874996], + [-4.208398437499937, 54.83715820312503], + [-4.253417968749972, 54.846777343750034], + [-4.303662109374983, 54.835693359375], + [-4.409912109374972, 54.787060546874955], + [-4.517480468749937, 54.75834960937496], + [-4.647558593749977, 54.78901367187498], + [-4.818066406249983, 54.84614257812501], + [-4.851708984374994, 54.825292968750006], + [-4.889501953124977, 54.77226562499996], + [-4.911230468749949, 54.68945312500006], + [-5.032324218749949, 54.76137695312505], + [-5.135498046875, 54.857519531250006], + [-5.170117187499955, 54.917919921874955], + [-5.172705078124949, 54.98588867187496], + [-5.11669921875, 55.01225585937499], + [-5.055859374999926, 54.98813476562506], + [-4.965185546874949, 55.14946289062499], + [-4.784814453124966, 55.35942382812502], + [-4.721142578124955, 55.42099609375006], + [-4.676757812499972, 55.50131835937498], + [-4.68437, 55.55390625000004], + [-4.72416992187496, 55.59829101562502], + [-4.891845703125, 55.69912109375005], + [-4.8896484375, 55.78120117187498], + [-4.871679687499977, 55.87392578125005], + [-4.826074218749937, 55.929541015625006], + [-4.806835937499926, 55.94013671875004], + [-4.58408203124992, 55.93867187500001], + [-4.67094726562496, 55.96738281249998], + [-4.844091796874949, 56.051171875], + [-4.841015624999955, 56.08085937500002], + [-4.80029296875, 56.158349609374994], + [-4.819140624999932, 56.15048828124998], + [-4.85625, 56.11469726562498], + [-4.927099609375006, 56.028076171875], + [-4.970361328124937, 56.00786132812496], + [-5.092822265625017, 55.98730468750006], + [-5.114990234375, 55.94462890624996], + [-5.134667968749994, 55.93349609375002], + [-5.19584960937496, 55.92866210937501], + [-5.214599609374943, 55.88886718749998], + [-5.228222656249983, 55.886328125], + [-5.245605468749972, 55.929248046875045], + [-5.247314453124943, 56.00039062500005], + [-5.22294921874996, 56.065820312499966], + [-5.176416015624994, 56.11699218749999], + [-4.996972656249937, 56.23334960937498], + [-5.084326171874977, 56.197460937499955], + [-5.282324218749977, 56.089941406250006], + [-5.383447265624966, 56.01923828124998], + [-5.41044921874996, 55.995361328125], + [-5.418896484375011, 55.975244140624994], + [-5.418310546874977, 55.952050781249966], + [-5.372900390624949, 55.827685546875045], + [-5.38583984374992, 55.770117187500034], + [-5.55644531249996, 55.389599609374955], + [-5.588769531249966, 55.351416015625006], + [-5.618457031249989, 55.33144531250002], + [-5.646533203124932, 55.326855468749955], + [-5.730664062499926, 55.33413085937502], + [-5.768212890624937, 55.36264648437498], + [-5.76787109374996, 55.39497070312498], + [-5.752099609374937, 55.443457031250006], + [-5.681347656250011, 55.62397460937501], + [-5.650634765624972, 55.67412109375002], + [-5.605029296874989, 55.72075195312502], + [-5.504492187499949, 55.80239257812502], + [-5.506933593750006, 55.80771484375006], + [-5.573876953124966, 55.79169921874998], + [-5.602392578125006, 55.796972656250006], + [-5.622851562499989, 55.813134765624994], + [-5.609570312499955, 56.055273437500034], + [-5.555273437499977, 56.13496093750001], + [-5.534960937499932, 56.250830078125006], + [-5.487890624999949, 56.350048828124955], + [-5.433398437499932, 56.42231445312504], + [-5.39194335937492, 56.51479492187505], + [-5.329443359374977, 56.55590820312497], + [-5.312695312499955, 56.618798828124994], + [-5.242578124999966, 56.686865234375006], + [-5.188378906249937, 56.75805664062503], + [-5.217578124999932, 56.75102539062502], + [-5.564208984374943, 56.56572265625002], + [-5.652441406249977, 56.531982421875], + [-5.772802734374977, 56.54101562500006], + [-5.86484375, 56.561865234375034], + [-5.936767578125, 56.605712890625], + [-5.968896484374966, 56.68989257812501], + [-6.057714843749949, 56.69213867187503], + [-6.133691406249966, 56.706689453124966], + [-6.132763671874955, 56.71801757812506], + [-6.03471679687496, 56.763916015625], + [-5.877636718749926, 56.779638671875006], + [-5.730615234374994, 56.853076171875045], + [-5.86142578124992, 56.902685546875006], + [-5.850390624999989, 56.91840820312501], + [-5.736279296875011, 56.96064453125001], + [-5.591308593749943, 57.10234375000002], + [-5.561914062499994, 57.23271484375002], + [-5.63125, 57.29394531249997], + [-5.656347656249977, 57.33408203124998], + [-5.794921874999972, 57.37880859375002], + [-5.818066406249955, 57.43608398437496], + [-5.801953124999983, 57.468017578125], + [-5.756738281249994, 57.499218749999955], + [-5.688623046874966, 57.523535156250034], + [-5.581787109374972, 57.546777343749966], + [-5.678759765625017, 57.571679687499966], + [-5.71494140624992, 57.60107421875], + [-5.742382812500011, 57.64365234374998], + [-5.744921874999989, 57.668310546875034], + [-5.694726562499966, 57.77822265625005], + [-5.665478515624955, 57.823535156250045], + [-5.608349609374955, 57.88134765625], + [-5.349023437499966, 57.87807617187505], + [-5.319189453124949, 57.90361328125002], + [-5.289794921875, 57.90458984375002], + [-5.157226562499972, 57.88134765625], + [-5.176904296874994, 57.90639648437505], + [-5.39375, 58.04360351562502], + [-5.413183593750006, 58.06972656250002], + [-5.351367187499932, 58.143701171874966], + [-5.34687, 58.17666015625002], + [-5.355957031249972, 58.21191406250003], + [-5.338281250000023, 58.23872070312498], + [-5.269531249999943, 58.25141601562498], + [-5.059960937499966, 58.250146484374994], + [-5.008300781250028, 58.262646484374955], + [-5.03183593749992, 58.29829101562504], + [-5.080615234375017, 58.34516601562498], + [-5.090136718749989, 58.384521484375], + [-5.078710937499977, 58.41928710937498], + [-5.076025390624949, 58.48925781250003], + [-5.066503906249977, 58.52021484375004], + [-5.016748046874966, 58.566552734374966], + [-4.975634765624932, 58.58032226562503], + [-4.924658203124949, 58.58837890624997], + [-4.80961914062496, 58.57290039062502], + [-4.765771484374994, 58.55419921875003], + [-4.715429687499949, 58.510009765625], + [-4.67822265625, 58.51357421875002], + [-4.53496093749996, 58.56157226562502], + [-4.491894531249983, 58.568457031250006], + [-4.433251953124937, 58.51284179687505], + [-4.188623046874994, 58.557226562500034], + [-3.859521484374937, 58.57709960937498], + [-3.661816406249983, 58.60629882812498], + [-3.453564453125011, 58.61689453125001], + [-3.25913085937492, 58.65], + [-3.053076171874949, 58.63481445312502], + [-3.04619140624996, 58.61552734374999], + [-3.056982421874949, 58.588769531249966], + [-3.109667968749932, 58.515478515625034] + ] + ], + [ + [ + [-2.929394531249983, 58.74160156250002], + [-2.938964843749972, 58.738623046875034], + [-2.975390624999932, 58.756933593750034], + [-3.035449218749989, 58.82265625000002], + [-2.941210937499989, 58.835693359375], + [-2.896435546874926, 58.827587890624955], + [-2.913085937499943, 58.79960937500002], + [-2.929394531249983, 58.74160156250002] + ] + ], + [ + [ + [-3.164941406249994, 58.79418945312497], + [-3.222119140624926, 58.780957031249955], + [-3.278808593750028, 58.78193359374998], + [-3.3671875, 58.83974609375002], + [-3.400830078124926, 58.88178710937498], + [-3.394726562499926, 58.909619140624955], + [-3.357421874999943, 58.91899414062502], + [-3.271923828124955, 58.90527343749997], + [-3.227636718749977, 58.85717773437503], + [-3.222119140624926, 58.825878906249955], + [-3.211621093749926, 58.813574218750034], + [-3.158544921874949, 58.80122070312498], + [-3.164941406249994, 58.79418945312497] + ] + ], + [ + [ + [-3.057421874999932, 59.02963867187498], + [-3.070703125, 59.004980468750034], + [-2.99467773437496, 59.00556640624998], + [-2.884570312499989, 58.98452148437502], + [-2.817919921874989, 58.98188476562504], + [-2.762451171874972, 58.95581054687506], + [-2.793017578124989, 58.906933593749955], + [-2.826220703125017, 58.89326171875001], + [-2.863769531250028, 58.890527343749994], + [-2.994824218749983, 58.939355468749994], + [-3.166601562499977, 58.91909179687502], + [-3.20078125, 58.92529296875006], + [-3.223339843749983, 58.938769531250045], + [-3.232617187499926, 58.95551757812498], + [-3.232812499999966, 58.98964843750002], + [-3.242138671874926, 58.99970703125001], + [-3.304345703124966, 58.96743164062502], + [-3.331640624999949, 58.97124023437499], + [-3.347070312499966, 58.98671875000005], + [-3.353710937500011, 59.01875], + [-3.346826171874937, 59.06499023437499], + [-3.31035156249996, 59.13081054687498], + [-3.248583984374989, 59.143945312499994], + [-3.156494140624972, 59.13632812500006], + [-3.051123046875006, 59.099023437499994], + [-3.019238281249983, 59.076025390625034], + [-3.020019531249972, 59.05766601562502], + [-3.057421874999932, 59.02963867187498] + ] + ], + [ + [ + [-2.548876953124989, 59.231347656249966], + [-2.662060546874955, 59.23017578124998], + [-2.603613281249949, 59.28930664062506], + [-2.535644531249972, 59.304150390624955], + [-2.406982421874943, 59.297558593749955], + [-2.429833984374994, 59.271044921875045], + [-2.548876953124989, 59.231347656249966] + ] + ], + [ + [ + [-2.729394531249994, 59.18676757812503], + [-2.815234374999989, 59.16191406250002], + [-2.851855468749989, 59.182470703125034], + [-2.861425781249977, 59.246826171875], + [-2.963769531249966, 59.27436523437501], + [-3.01347656249996, 59.291455078124955], + [-3.052050781250017, 59.323876953124994], + [-3.042236328124972, 59.33383789062506], + [-2.975537109374955, 59.34711914062501], + [-2.861621093749932, 59.28833007812503], + [-2.815039062499949, 59.240820312500034], + [-2.730664062499983, 59.22675781250001], + [-2.719921874999926, 59.21948242187503], + [-2.729394531249994, 59.18676757812503] + ] + ], + [ + [ + [-1.30810546875, 60.5375], + [-1.287402343749932, 60.467041015625], + [-1.235742187499994, 60.48530273437498], + [-1.157763671874989, 60.41772460937497], + [-1.117968749999989, 60.417626953124966], + [-1.052441406249955, 60.44448242187502], + [-1.065673828124972, 60.381591796875], + [-1.133691406249994, 60.206982421874955], + [-1.152783203124955, 60.177343750000034], + [-1.165722656249926, 60.12426757812497], + [-1.179248046874932, 60.113916015624994], + [-1.199316406249949, 60.00659179687497], + [-1.245312499999983, 59.971240234375074], + [-1.28378906249992, 59.88691406250001], + [-1.299462890624994, 59.87866210937503], + [-1.355859374999937, 59.91113281249997], + [-1.299511718749926, 60.03984375000002], + [-1.27617187499996, 60.114648437499966], + [-1.290917968749937, 60.153466796874966], + [-1.32280273437496, 60.188378906249966], + [-1.409033203124949, 60.18950195312502], + [-1.48149414062496, 60.173388671875045], + [-1.49687, 60.193994140624966], + [-1.49912109374992, 60.221777343750034], + [-1.5166015625, 60.231005859375045], + [-1.613037109374943, 60.229101562500006], + [-1.641357421874943, 60.23676757812498], + [-1.660058593750023, 60.26225585937502], + [-1.663769531249983, 60.282519531250074], + [-1.57666015625, 60.29838867187502], + [-1.494433593749932, 60.29248046875006], + [-1.374609374999949, 60.33291015625002], + [-1.449560546874949, 60.468554687500045], + [-1.548828125, 60.48129882812506], + [-1.571777343749972, 60.494433593750074], + [-1.552636718749966, 60.517431640625034], + [-1.498144531249977, 60.52983398437499], + [-1.414208984374937, 60.598730468750006], + [-1.363964843750011, 60.60957031249998], + [-1.301708984374926, 60.60766601562506], + [-1.30810546875, 60.5375] + ] + ], + [ + [ + [-1.04252929687496, 60.51386718750004], + [-1.067871093749972, 60.50229492187498], + [-1.165527343749972, 60.60390625], + [-1.093310546874932, 60.72021484374997], + [-1.005615234375, 60.71650390625001], + [-0.991650390625011, 60.68603515625003], + [-1.000341796875006, 60.65800781249999], + [-1.045019531249949, 60.65551757812503], + [-1.049023437499955, 60.646923828124955], + [-1.035107421874983, 60.592919921874966], + [-1.03422851562496, 60.530175781249966], + [-1.04252929687496, 60.51386718750004] + ] + ], + [ + [ + [-0.774267578124949, 60.81196289062501], + [-0.774316406249966, 60.80048828124998], + [-0.826171874999943, 60.716162109375034], + [-0.825488281249989, 60.683935546875034], + [-0.909130859374983, 60.68701171875006], + [-0.922265625, 60.697265625], + [-0.93808593749992, 60.74565429687499], + [-0.927539062499989, 60.79716796875002], + [-0.915820312500017, 60.810449218749966], + [-0.891406250000017, 60.81591796875003], + [-0.864941406249955, 60.805810546874994], + [-0.823437499999926, 60.83188476562498], + [-0.80180664062496, 60.83125], + [-0.774267578124949, 60.81196289062501] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Georgia", + "iso_a2": "GE", + "iso_a3": "GEO", + "iso_n3": "268", + "continent": "Asia" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [46.42988281250001, 41.890966796875], + [46.40546875000001, 41.855078125], + [46.348242187500006, 41.790185546874994], + [46.30253906250002, 41.757080078125], + [46.25185546875002, 41.751757812499996], + [46.20185546875001, 41.736865234374996], + [46.18427734375001, 41.7021484375], + [46.18212890625, 41.657080078125], + [46.190527343750006, 41.624853515625], + [46.20351562500002, 41.612597656249996], + [46.25468750000002, 41.6021484375], + [46.30546875000002, 41.507714843749994], + [46.38496093750001, 41.459863281249994], + [46.5087890625, 41.405566406249996], + [46.61894531250002, 41.34375], + [46.67255859375001, 41.28681640625], + [46.66240234375002, 41.245507812499994], + [46.62636718750002, 41.15966796875], + [46.534375, 41.08857421875], + [46.45791015625002, 41.070214843749994], + [46.43095703125002, 41.077050781249994], + [46.38076171875002, 41.09931640625], + [46.27998046875001, 41.154443359374994], + [46.17070312500002, 41.1978515625], + [46.086523437500006, 41.183837890625], + [46.03125, 41.167285156249996], + [45.921972656250006, 41.18671875], + [45.79277343750002, 41.224414062499996], + [45.72548828125002, 41.261621093749994], + [45.69570312500002, 41.289013671875], + [45.715625, 41.337646484375], + [45.42226562500002, 41.42529296875], + [45.28095703125001, 41.449560546875], + [45.21718750000002, 41.423193359375], + [45.00136718750002, 41.290966796875], + [44.97587890625002, 41.277490234374994], + [44.81132812500002, 41.259375], + [44.81093750000002, 41.248583984374996], + [44.84853515625002, 41.220166015625], + [44.84140625, 41.211376953125], + [44.56484375000002, 41.208203125], + [44.47304687500002, 41.191015625], + [44.22734375000002, 41.213330078125], + [44.146484375, 41.203369140625], + [44.077246093750006, 41.182519531249994], + [43.9091796875, 41.158984375], + [43.79316406250001, 41.131103515625], + [43.64501953125, 41.116650390625], + [43.49199218750002, 41.115527343749996], + [43.439453125, 41.10712890625], + [43.44160156250001, 41.1259765625], + [43.43339843750002, 41.155517578125], + [43.40234375, 41.1765625], + [43.358984375, 41.19013671875], + [43.279296875, 41.185205078124994], + [43.20546875000002, 41.199169921875], + [43.15283203125, 41.23642578125], + [43.14101562500002, 41.26484375], + [43.17128906250002, 41.287939453125], + [43.149023437500006, 41.30712890625], + [43.05712890625, 41.352832031249996], + [42.90673828125, 41.466845703124996], + [42.82167968750002, 41.4923828125], + [42.78789062500002, 41.563720703125], + [42.75410156250001, 41.57890625], + [42.68242187500002, 41.585742187499996], + [42.60683593750002, 41.57880859375], + [42.590429687500006, 41.570703125], + [42.5673828125, 41.55927734375], + [42.507910156250006, 41.470068359375], + [42.46640625, 41.43984375], + [42.364355468750006, 41.454003906249994], + [42.27998046875001, 41.475], + [42.21113281250001, 41.48671875], + [42.077734375, 41.494091796875], + [41.92578125, 41.495654296874996], + [41.82353515625002, 41.432373046875], + [41.779394531250006, 41.44052734375], + [41.701757812500006, 41.471582031249994], + [41.57656250000002, 41.497314453125], + [41.51005859375002, 41.517480468749994], + [41.701757812500006, 41.705419921875], + [41.7587890625, 41.817138671875], + [41.7607421875, 41.88486328125], + [41.76298828125002, 41.970019531249996], + [41.66328125000001, 42.146875], + [41.577734375, 42.397851562499994], + [41.48876953125, 42.659326171874994], + [41.41943359375, 42.737646484375], + [41.12871093750002, 42.828125], + [41.061621093750006, 42.930859375], + [40.83662109375001, 43.0634765625], + [40.524023437500006, 43.121044921875], + [40.46210937500001, 43.145703125], + [40.190625, 43.312402343749994], + [39.97832031250002, 43.419824218749994], + [40.02373046875002, 43.48486328125], + [40.084570312500006, 43.553125], + [40.15019531250002, 43.569775390625], + [40.34228515625, 43.542724609375], + [40.51894531250002, 43.512011718749996], + [40.648046875, 43.53388671875], + [40.80166015625002, 43.479931640625], + [40.941992187500006, 43.41806640625], + [41.083105468750006, 43.374462890625], + [41.35820312500002, 43.333398437499994], + [41.46074218750002, 43.276318359375], + [41.58056640625, 43.21923828125], + [42.05, 43.19013671875], + [42.08779296875002, 43.199121093749994], + [42.12226562500001, 43.207324218749996], + [42.27968750000002, 43.228076171874996], + [42.419042968750006, 43.22421875], + [42.566015625, 43.155126953125], + [42.660253906250006, 43.159082031249994], + [42.76064453125002, 43.169580078124994], + [42.89003906250002, 43.132617187499996], + [42.99160156250002, 43.09150390625], + [43.00019531250001, 43.049658203125], + [43.08916015625002, 42.9890625], + [43.34794921875002, 42.8966796875], + [43.55781250000001, 42.844482421875], + [43.623046875, 42.80771484375], + [43.78261718750002, 42.747021484375], + [43.79873046875002, 42.727783203125], + [43.79541015625, 42.702978515625], + [43.74990234375002, 42.657519531249996], + [43.738378906250006, 42.616992187499996], + [43.759863281250006, 42.59384765625], + [43.82597656250002, 42.571533203125], + [43.95742187500002, 42.566552734374994], + [44.00468750000002, 42.595605468749994], + [44.10273437500001, 42.616357421874994], + [44.19970703125, 42.653613281249996], + [44.32949218750002, 42.703515625], + [44.505859375, 42.7486328125], + [44.57646484375002, 42.748486328125], + [44.64433593750002, 42.734716796875], + [44.69179687500002, 42.709619140624994], + [44.77109375, 42.616796875], + [44.85048828125002, 42.746826171875], + [44.87099609375002, 42.756396484374996], + [44.943359375, 42.730273437499996], + [45.07158203125002, 42.694140625], + [45.160253906250006, 42.675], + [45.20820312500001, 42.648242187499996], + [45.34375, 42.52978515625], + [45.56289062500002, 42.5357421875], + [45.65556640625002, 42.51767578125], + [45.70527343750001, 42.498095703124996], + [45.7275390625, 42.475048828125], + [45.68837890625002, 42.357373046875], + [45.63427734375, 42.234716796875], + [45.63857421875002, 42.205078125], + [45.7265625, 42.15888671875], + [45.84599609375002, 42.1099609375], + [45.91035156250001, 42.070703125], + [45.95400390625002, 42.035400390625], + [46.0484375, 42.008740234375], + [46.159765625, 41.992041015625], + [46.21269531250002, 41.989892578124994], + [46.26777343750001, 41.960351562499994], + [46.41152343750002, 41.904638671875], + [46.42988281250001, 41.890966796875] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 4, + "name": "Guernsey", + "iso_a2": "GG", + "iso_a3": "GGY", + "iso_n3": "831", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-2.512304687499977, 49.49453125], + [-2.54736328125, 49.4287109375], + [-2.639013671874977, 49.450927734375], + [-2.646142578124994, 49.468212890625], + [-2.542187499999983, 49.506591796875], + [-2.520898437499994, 49.506298828125], + [-2.512304687499977, 49.49453125] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Ghana", + "iso_a2": "GH", + "iso_a3": "GHA", + "iso_n3": "288", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-0.068603515625, 11.115625], + [-0.004736328124977, 11.055566406249994], + [0.009423828125023, 11.02099609375], + [-0.013867187499983, 10.891357421875], + [-0.060595703124989, 10.800585937499989], + [-0.090185546874977, 10.715527343749997], + [-0.086328125, 10.673046875], + [-0.057714843749977, 10.630615234375], + [0.039453125000023, 10.563867187499994], + [0.089257812500023, 10.520605468749991], + [0.148242187500017, 10.454785156249997], + [0.216015625000011, 10.390527343749994], + [0.331835937500017, 10.306933593749989], + [0.380859375, 10.291845703124991], + [0.378613281250011, 10.2685546875], + [0.362695312500023, 10.236474609374994], + [0.351855468750017, 9.924902343749991], + [0.343066406250017, 9.844580078124991], + [0.334570312500006, 9.803955078125], + [0.323925781250011, 9.687597656249991], + [0.311718750000011, 9.670996093749991], + [0.289648437500006, 9.672314453124997], + [0.26953125, 9.667919921874997], + [0.264550781250023, 9.644726562499997], + [0.272753906250017, 9.620947265624991], + [0.342578125000017, 9.604150390624994], + [0.327343750000011, 9.586572265624994], + [0.275488281250006, 9.570605468749989], + [0.2515625, 9.53564453125], + [0.261914062500011, 9.49560546875], + [0.2333984375, 9.463525390624994], + [0.241503906250017, 9.44189453125], + [0.259960937500011, 9.426025390625], + [0.289355468750017, 9.431835937499997], + [0.370996093750023, 9.485546875], + [0.4052734375, 9.491455078125], + [0.447558593750017, 9.480273437499989], + [0.525683593750017, 9.398486328124989], + [0.529003906250011, 9.358300781249994], + [0.497167968750006, 9.221240234374989], + [0.466113281250017, 9.115332031249991], + [0.460351562500023, 8.97421875], + [0.493261718750006, 8.894921875], + [0.48876953125, 8.851464843749994], + [0.453125, 8.813769531249989], + [0.37255859375, 8.75927734375], + [0.378613281250011, 8.722021484374991], + [0.415332031250017, 8.652734375], + [0.483300781250023, 8.575292968749991], + [0.6162109375, 8.479638671874994], + [0.686328125000017, 8.354882812499994], + [0.688085937500006, 8.304248046874989], + [0.647070312500006, 8.253466796874989], + [0.59921875, 8.209570312499991], + [0.58359375, 8.145800781249989], + [0.605175781250011, 7.728222656249997], + [0.5, 7.546875], + [0.498925781250023, 7.4951171875], + [0.509570312500017, 7.435107421874989], + [0.537304687500011, 7.398730468749989], + [0.591015625000011, 7.388818359374994], + [0.634765625, 7.353662109374994], + [0.619531250000023, 7.2265625], + [0.59619140625, 7.096630859374997], + [0.592480468750011, 7.033984374999989], + [0.579492187500023, 7.004101562499997], + [0.5380859375, 6.9796875], + [0.523046875, 6.938867187499994], + [0.533398437500011, 6.888330078124994], + [0.525585937500011, 6.850927734374991], + [0.548046875000011, 6.802490234375], + [0.595703125, 6.7421875], + [0.672753906250023, 6.592529296875], + [0.702246093750006, 6.580761718749997], + [0.715429687500006, 6.54931640625], + [0.707226562500011, 6.51875], + [0.736914062500006, 6.452587890624997], + [0.822460937500011, 6.386376953124994], + [0.912207031250006, 6.328564453124997], + [0.984960937500006, 6.3203125], + [1.002148437500011, 6.2685546875], + [1.049902343750006, 6.20263671875], + [1.08447265625, 6.173779296874997], + [1.1396484375, 6.155029296875], + [1.18505859375, 6.14501953125], + [1.187207031250011, 6.089404296874989], + [1.105566406250006, 6.051367187499991], + [1.05029296875, 5.993994140624991], + [1.008007812500011, 5.906396484374994], + [0.94970703125, 5.810253906249997], + [0.748828125000017, 5.760107421874991], + [0.671875, 5.759716796874997], + [0.259667968750023, 5.75732421875], + [-0.126513671874989, 5.568164062499989], + [-0.348730468749977, 5.500781249999989], + [-0.485449218749977, 5.394238281249997], + [-0.66943359375, 5.318554687499997], + [-0.797705078124977, 5.226708984374994], + [-1.064306640624977, 5.182666015624989], + [-1.501660156249983, 5.037988281249994], + [-1.638476562499989, 4.980859375], + [-1.77685546875, 4.88037109375], + [-2.001855468749994, 4.762451171875], + [-2.090185546874977, 4.7640625], + [-2.266406249999989, 4.874072265624989], + [-2.39892578125, 4.929345703124994], + [-2.723046875, 5.013720703124989], + [-2.964990234374994, 5.046289062499994], + [-3.081884765624977, 5.082470703124997], + [-3.114013671875, 5.088671874999989], + [-3.086718749999989, 5.128320312499994], + [-3.019140624999977, 5.130810546874997], + [-2.948339843749977, 5.118847656249997], + [-2.894726562499983, 5.149023437499991], + [-2.815673828125, 5.153027343749997], + [-2.795214843749989, 5.184521484374997], + [-2.788671874999977, 5.264111328124997], + [-2.789599609374989, 5.328222656249991], + [-2.761914062499983, 5.35693359375], + [-2.754980468749977, 5.432519531249994], + [-2.793652343749983, 5.60009765625], + [-2.821191406249994, 5.619189453124989], + [-2.962255859374977, 5.643017578124997], + [-2.972802734374994, 5.67626953125], + [-2.998291015625, 5.711328125], + [-3.025292968749994, 5.797753906249994], + [-3.05615234375, 5.92626953125], + [-3.105566406249977, 6.085644531249997], + [-3.200585937499994, 6.348242187499991], + [-3.224023437499994, 6.441064453124994], + [-3.240283203124989, 6.53564453125], + [-3.243896484375, 6.648681640625], + [-3.22412109375, 6.690771484374991], + [-3.227148437499977, 6.749121093749991], + [-3.235791015624983, 6.807226562499991], + [-3.168896484374983, 6.940966796874989], + [-3.037695312499977, 7.104589843749991], + [-3.01015625, 7.163769531249997], + [-2.985791015624983, 7.204882812499989], + [-2.982324218749994, 7.263623046874997], + [-2.959082031249977, 7.454541015624997], + [-2.896337890624977, 7.685009765624997], + [-2.856884765624983, 7.772070312499991], + [-2.830126953124989, 7.819042968749997], + [-2.798144531249989, 7.89599609375], + [-2.789746093749983, 7.931933593749989], + [-2.668847656249994, 8.022216796875], + [-2.613378906249977, 8.046679687499989], + [-2.600976562499994, 8.082226562499997], + [-2.619970703124977, 8.12109375], + [-2.61171875, 8.147558593749991], + [-2.582763671875, 8.160791015624994], + [-2.538281249999983, 8.171630859375], + [-2.505859375, 8.208740234375], + [-2.556884765625, 8.493017578124991], + [-2.597998046874977, 8.7763671875], + [-2.600390624999989, 8.800439453124994], + [-2.624902343749994, 8.839599609375], + [-2.649218749999989, 8.956591796874989], + [-2.689892578124983, 9.025097656249997], + [-2.746923828124977, 9.045117187499997], + [-2.746679687499977, 9.109619140625], + [-2.689208984375, 9.218603515624991], + [-2.67421875, 9.282617187499994], + [-2.701806640624994, 9.301660156249994], + [-2.705761718749983, 9.351367187499989], + [-2.686132812499977, 9.431738281249991], + [-2.695849609374989, 9.481347656249994], + [-2.706201171874994, 9.533935546875], + [-2.765966796874977, 9.658056640624991], + [-2.780517578125, 9.745849609375], + [-2.749804687499989, 9.797216796874991], + [-2.750732421875, 9.90966796875], + [-2.783203125, 10.083105468749991], + [-2.788476562499994, 10.192578125], + [-2.766503906249994, 10.238183593749994], + [-2.777099609375, 10.281591796874991], + [-2.8203125, 10.322851562499991], + [-2.823437499999983, 10.362939453124994], + [-2.78662109375, 10.401904296874989], + [-2.791162109374994, 10.432421874999989], + [-2.837207031249989, 10.454638671874989], + [-2.87841796875, 10.507958984374994], + [-2.914892578124977, 10.592333984374989], + [-2.907324218749977, 10.727978515624997], + [-2.838574218749983, 10.977490234374997], + [-2.829931640624977, 10.998388671874991], + [-2.752099609374994, 10.996972656249994], + [-2.751660156249983, 10.986376953124989], + [-2.509179687499994, 10.988720703124997], + [-2.23193359375, 10.99140625], + [-1.900634765625, 10.994677734374989], + [-1.599658203124989, 10.99765625], + [-1.586474609374989, 11.008886718749991], + [-1.536767578124994, 11.02265625], + [-1.232617187499983, 10.997216796874994], + [-1.04248046875, 11.010058593749989], + [-0.961816406249994, 11.001708984375], + [-0.902929687499977, 10.984716796874991], + [-0.771582031249977, 10.995263671874994], + [-0.701416015625, 10.988964843749997], + [-0.648535156249977, 10.9267578125], + [-0.627148437499983, 10.927392578124994], + [-0.59765625, 10.953662109374989], + [-0.545214843749989, 10.983691406249989], + [-0.49169921875, 11.007617187499989], + [-0.453515625, 11.056298828124994], + [-0.430322265624994, 11.09326171875], + [-0.395605468749977, 11.085693359375], + [-0.345751953124989, 11.087939453124989], + [-0.312548828124989, 11.118896484375], + [-0.299462890624994, 11.166894531249994], + [-0.068603515625, 11.115625] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Guinea", + "iso_a2": "GN", + "iso_a3": "GIN", + "iso_n3": "324", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-11.389404296875, 12.404394531249991], + [-11.418066406249977, 12.377685546875], + [-11.447558593749989, 12.319238281249994], + [-11.474560546874983, 12.247167968749991], + [-11.502197265625, 12.198632812499994], + [-11.492431640625, 12.166943359374997], + [-11.414648437499977, 12.10400390625], + [-11.30517578125, 12.015429687499989], + [-11.260693359374983, 12.004052734374994], + [-11.209667968749983, 12.024853515624997], + [-11.129248046874977, 12.095019531249989], + [-11.065820312499994, 12.170800781249994], + [-11.004541015624994, 12.20751953125], + [-10.933203124999977, 12.205175781249991], + [-10.876171874999983, 12.15185546875], + [-10.806494140624977, 12.034277343749991], + [-10.743017578124977, 11.92724609375], + [-10.734912109374989, 11.916455078124997], + [-10.709228515625, 11.898730468749989], + [-10.677343749999977, 11.8994140625], + [-10.643701171874994, 11.925537109375], + [-10.618994140624977, 11.941210937499989], + [-10.589501953124994, 11.990283203124989], + [-10.4658203125, 12.138671875], + [-10.372753906249983, 12.179541015624991], + [-10.339892578124989, 12.190283203124991], + [-10.274853515624983, 12.212646484375], + [-10.167089843749977, 12.177441406249997], + [-10.010644531249994, 12.116455078125], + [-9.820703125, 12.04248046875], + [-9.754003906249977, 12.029931640624994], + [-9.714746093749994, 12.04248046875], + [-9.658300781249977, 12.143115234374989], + [-9.587744140624977, 12.182470703124991], + [-9.48681640625, 12.228662109374994], + [-9.404980468749983, 12.25244140625], + [-9.358105468749983, 12.255419921874989], + [-9.340185546874977, 12.282763671874989], + [-9.33154296875, 12.32373046875], + [-9.3408203125, 12.366015624999989], + [-9.393652343749977, 12.442236328124991], + [-9.395361328124977, 12.464648437499989], + [-9.365185546874983, 12.479296874999989], + [-9.3, 12.490283203124989], + [-9.215527343749983, 12.482861328124997], + [-9.120458984374977, 12.449951171875], + [-9.043066406249977, 12.40234375], + [-8.998925781249994, 12.345898437499997], + [-8.950830078124994, 12.2255859375], + [-8.913867187499989, 12.108544921874994], + [-8.818310546874983, 11.922509765624994], + [-8.820068359375, 11.80712890625], + [-8.822021484375, 11.673242187499994], + [-8.779736328124983, 11.648242187499989], + [-8.733105468749983, 11.6375], + [-8.71142578125, 11.617773437499991], + [-8.664941406249994, 11.514990234374991], + [-8.621142578124989, 11.485107421875], + [-8.56875, 11.478076171874989], + [-8.470703125, 11.412207031249991], + [-8.407470703125, 11.386279296874989], + [-8.398535156249977, 11.366552734374991], + [-8.400683593749989, 11.339404296874989], + [-8.42529296875, 11.304736328124989], + [-8.463525390624994, 11.280712890624997], + [-8.520312499999989, 11.2359375], + [-8.567285156249994, 11.177001953125], + [-8.663916015624977, 11.035839843749997], + [-8.666699218749983, 11.009472656249997], + [-8.646191406249983, 10.990478515625], + [-8.606201171875, 10.986962890624994], + [-8.563525390624989, 10.996679687499991], + [-8.474707031249977, 11.048388671874989], + [-8.404492187499983, 11.029931640624994], + [-8.33740234375, 10.990625], + [-8.312744140625, 10.949755859374989], + [-8.306347656249983, 10.89609375], + [-8.321679687499994, 10.826953124999989], + [-8.324121093749994, 10.74951171875], + [-8.301562499999989, 10.617578125], + [-8.266650390624989, 10.485986328124994], + [-8.231494140624989, 10.43798828125], + [-8.007275390624983, 10.321875], + [-7.985693359374977, 10.278417968749991], + [-7.974462890624977, 10.229541015624989], + [-7.990625, 10.1625], + [-8.013525390624977, 10.125292968749989], + [-8.077832031249983, 10.067089843749997], + [-8.136621093749994, 10.022070312499991], + [-8.155175781249994, 9.973193359374989], + [-8.145849609374977, 9.881738281249994], + [-8.146044921874989, 9.6748046875], + [-8.136962890625, 9.495703125], + [-8.088671874999989, 9.4306640625], + [-8.031005859375, 9.39765625], + [-7.962695312499989, 9.403857421874989], + [-7.896191406249983, 9.415869140624991], + [-7.9, 9.308691406249991], + [-7.918066406249977, 9.188525390624989], + [-7.839404296874989, 9.151611328125], + [-7.7998046875, 9.115039062499989], + [-7.777978515624994, 9.080859374999989], + [-7.902099609375, 9.01708984375], + [-7.938183593749983, 8.979785156249989], + [-7.954980468749994, 8.879443359374989], + [-7.950976562499989, 8.786816406249997], + [-7.784033203124977, 8.720605468749994], + [-7.719580078124977, 8.643017578124997], + [-7.690966796874989, 8.5625], + [-7.681201171874989, 8.410351562499997], + [-7.696093749999989, 8.375585937499991], + [-7.738964843749983, 8.375244140625], + [-7.787402343749989, 8.421972656249991], + [-7.823583984374977, 8.467675781249994], + [-7.86875, 8.467529296875], + [-7.953125, 8.477734375], + [-8.049121093749989, 8.4953125], + [-8.167773437499989, 8.490673828124997], + [-8.2099609375, 8.483251953124991], + [-8.236962890624994, 8.455664062499991], + [-8.244140625, 8.407910156249997], + [-8.256103515625, 8.253710937499989], + [-8.217138671874977, 8.219677734374997], + [-8.140625, 8.181445312499989], + [-8.090527343749983, 8.165136718749991], + [-8.048583984375, 8.169726562499989], + [-8.016748046874994, 8.144921875], + [-8.009863281249977, 8.078515625], + [-8.03173828125, 8.029736328124997], + [-8.073828124999977, 7.984423828124989], + [-8.126855468749994, 7.867724609374989], + [-8.117822265624994, 7.824023437499989], + [-8.115429687499983, 7.7607421875], + [-8.205957031249994, 7.590234375], + [-8.231884765624983, 7.556738281249991], + [-8.351757812499983, 7.590576171875], + [-8.429980468749989, 7.601855468749989], + [-8.486425781249977, 7.558496093749994], + [-8.522265624999989, 7.585546875], + [-8.564404296874983, 7.625097656249991], + [-8.578857421875, 7.677050781249989], + [-8.607324218749994, 7.687939453124997], + [-8.659765624999977, 7.688378906249994], + [-8.708300781249989, 7.658886718749997], + [-8.729443359374983, 7.605273437499989], + [-8.732617187499983, 7.543554687499991], + [-8.740234375, 7.495703125], + [-8.769140624999977, 7.466796875], + [-8.827929687499989, 7.391943359374991], + [-8.855517578124989, 7.322802734374989], + [-8.8896484375, 7.2626953125], + [-8.938427734374983, 7.266162109374989], + [-8.960986328124989, 7.274609375], + [-8.9765625, 7.258886718749991], + [-9.052343749999977, 7.225488281249994], + [-9.117578125, 7.215917968749991], + [-9.134814453124989, 7.250585937499991], + [-9.1728515625, 7.278417968749991], + [-9.215185546874977, 7.333300781249989], + [-9.263281249999977, 7.377734374999989], + [-9.355322265624977, 7.40869140625], + [-9.391650390624989, 7.394921875], + [-9.435107421874989, 7.3984375], + [-9.463818359374983, 7.415869140624991], + [-9.459765624999989, 7.442529296874994], + [-9.411474609374977, 7.509960937499997], + [-9.383984374999983, 7.571875], + [-9.368945312499989, 7.639550781249994], + [-9.369140625, 7.703808593749997], + [-9.394921875, 7.794628906249997], + [-9.436328124999989, 7.86669921875], + [-9.446386718749977, 7.908496093749989], + [-9.441552734374994, 7.967919921874994], + [-9.451123046874983, 8.023242187499989], + [-9.464550781249983, 8.052099609374991], + [-9.471142578124983, 8.106982421874989], + [-9.484130859375, 8.156982421875], + [-9.508496093749983, 8.17626953125], + [-9.522216796875, 8.260009765625], + [-9.518261718749983, 8.34609375], + [-9.553906249999983, 8.378613281249997], + [-9.610156249999989, 8.40234375], + [-9.643212890624994, 8.43603515625], + [-9.66357421875, 8.473535156249994], + [-9.683886718749989, 8.484423828124989], + [-9.701171875, 8.482177734375], + [-9.716894531249977, 8.458886718749994], + [-9.735595703125, 8.453955078124991], + [-9.768261718749983, 8.534570312499994], + [-9.781982421875, 8.537695312499991], + [-9.804736328124989, 8.519189453124994], + [-10.064355468749994, 8.429882812499997], + [-10.07568359375, 8.464599609375], + [-10.09765625, 8.505859375], + [-10.147412109374983, 8.519726562499997], + [-10.233056640624994, 8.488818359374989], + [-10.283203125, 8.485156249999989], + [-10.360058593749983, 8.495507812499994], + [-10.394433593749994, 8.48095703125], + [-10.496435546874977, 8.362109374999989], + [-10.557714843749977, 8.315673828125], + [-10.60400390625, 8.319482421874994], + [-10.652636718749989, 8.330273437499997], + [-10.686962890624983, 8.321679687499994], + [-10.712109374999983, 8.335253906249989], + [-10.7021484375, 8.364208984374997], + [-10.677343749999977, 8.400585937499997], + [-10.628466796874989, 8.529980468749997], + [-10.50312, 8.660302734374994], + [-10.500537109374989, 8.687548828124989], + [-10.5517578125, 8.763769531249991], + [-10.605615234374994, 8.867578125], + [-10.605761718749989, 8.978808593749989], + [-10.615966796875, 9.059179687499991], + [-10.726855468749989, 9.081689453124994], + [-10.747021484374983, 9.095263671874989], + [-10.749951171874983, 9.122363281249989], + [-10.721240234374989, 9.194482421874994], + [-10.687646484374994, 9.261132812499994], + [-10.682714843749977, 9.289355468749989], + [-10.690527343749977, 9.314257812499989], + [-10.758593749999989, 9.385351562499991], + [-10.864794921874989, 9.516455078124991], + [-10.963085937499983, 9.66162109375], + [-11.047460937499977, 9.786328125], + [-11.115673828124983, 9.843164062499994], + [-11.180859374999983, 9.925341796874989], + [-11.205664062499977, 9.977734375], + [-11.273632812499983, 9.996533203124997], + [-11.471923828125, 9.995458984374991], + [-11.710058593749977, 9.994189453124989], + [-11.911083984374983, 9.993017578124991], + [-11.922753906249994, 9.922753906249994], + [-12.142333984375, 9.875390625], + [-12.277734375, 9.929785156249991], + [-12.427978515625, 9.898144531249997], + [-12.50146484375, 9.862158203124991], + [-12.524365234374983, 9.787207031249991], + [-12.557861328125, 9.704980468749994], + [-12.58984375, 9.671142578125], + [-12.603613281249977, 9.634228515624997], + [-12.622167968749977, 9.600634765624989], + [-12.651660156249989, 9.561914062499994], + [-12.684423828124977, 9.484179687499989], + [-12.755859375, 9.373583984374989], + [-12.831103515624989, 9.30224609375], + [-12.958789062499989, 9.263330078124994], + [-12.998632812499977, 9.146923828124997], + [-13.028027343749983, 9.103564453124989], + [-13.077294921874994, 9.069628906249989], + [-13.1298828125, 9.047558593749997], + [-13.178369140624994, 9.060888671874991], + [-13.234228515624977, 9.070117187499989], + [-13.292675781249983, 9.04921875], + [-13.302636718749994, 9.078369140625], + [-13.269482421874983, 9.170556640624994], + [-13.2958984375, 9.218505859375], + [-13.396093749999977, 9.314306640624991], + [-13.405566406249989, 9.360644531249989], + [-13.436279296875, 9.4203125], + [-13.568261718749994, 9.543408203124997], + [-13.691357421874983, 9.535791015624994], + [-13.657128906249994, 9.639111328124997], + [-13.65869140625, 9.7763671875], + [-13.700488281249989, 9.851269531249997], + [-13.689794921874977, 9.927783203124989], + [-13.712646484375, 9.922949218749991], + [-13.753710937499989, 9.870263671874994], + [-13.820117187499989, 9.88720703125], + [-13.954638671874989, 9.968701171874997], + [-14.021875, 10.0478515625], + [-14.029931640624994, 10.115136718749994], + [-14.045019531249977, 10.141259765624994], + [-14.086279296874977, 10.127246093749989], + [-14.17041015625, 10.128613281249997], + [-14.426904296874994, 10.248339843749989], + [-14.609570312499983, 10.549853515624989], + [-14.613623046874977, 10.617822265624994], + [-14.58740234375, 10.734912109374989], + [-14.593505859375, 10.766699218749991], + [-14.677343749999977, 10.68896484375], + [-14.693359375, 10.741015624999989], + [-14.757373046874989, 10.862060546875], + [-14.775927734374989, 10.931640625], + [-14.837451171874989, 10.962548828124994], + [-14.88671875, 10.968066406249989], + [-14.9248046875, 10.944921875], + [-14.975, 10.803417968749997], + [-15.012402343749983, 10.804345703124994], + [-15.051220703124983, 10.834570312499991], + [-15.043017578124989, 10.940136718749997], + [-14.9990234375, 10.9921875], + [-14.944433593749977, 11.072167968749994], + [-14.779296875, 11.405517578125], + [-14.720263671874989, 11.48193359375], + [-14.682958984374977, 11.508496093749997], + [-14.604785156249989, 11.511621093749994], + [-14.452441406249989, 11.556201171874989], + [-14.327832031249983, 11.629785156249994], + [-14.265576171874983, 11.659912109375], + [-14.122314453125, 11.651953125], + [-13.953222656249977, 11.664599609374989], + [-13.732763671874977, 11.736035156249997], + [-13.728564453124989, 11.834130859374994], + [-13.730664062499983, 11.959863281249994], + [-13.737988281249983, 12.009667968749994], + [-13.816308593749994, 12.054492187499989], + [-13.861914062499977, 12.093310546874989], + [-13.901171874999989, 12.142871093749989], + [-13.948876953124994, 12.178173828124997], + [-13.947314453124989, 12.215234375], + [-13.8875, 12.24687], + [-13.849462890624977, 12.262988281249989], + [-13.759765625, 12.262353515624994], + [-13.730078124999977, 12.280810546874989], + [-13.707910156249994, 12.312695312499997], + [-13.682373046875, 12.393408203124991], + [-13.673535156249983, 12.478515625], + [-13.732617187499983, 12.592822265624989], + [-13.729248046875, 12.673925781249991], + [-13.40576171875, 12.662255859374994], + [-13.37255859375, 12.653613281249989], + [-13.228076171874989, 12.639599609374997], + [-13.138476562499989, 12.639746093749991], + [-13.082910156249994, 12.633544921875], + [-13.059765624999983, 12.615039062499989], + [-13.064404296874983, 12.5810546875], + [-13.079833984375, 12.536279296874994], + [-13.061279296875, 12.489990234375], + [-13.011914062499983, 12.477636718749991], + [-12.985644531249989, 12.491650390624997], + [-12.960546874999977, 12.514355468749997], + [-12.930712890624989, 12.532275390624989], + [-12.88818359375, 12.52001953125], + [-12.797314453124983, 12.451904296875], + [-12.713037109374994, 12.433154296874989], + [-12.620800781249983, 12.396191406249997], + [-12.534228515624989, 12.375781249999989], + [-12.457373046874977, 12.378369140624997], + [-12.399072265624994, 12.340087890625], + [-12.291210937499983, 12.328027343749994], + [-12.151953124999977, 12.376611328124994], + [-12.042382812499994, 12.398046875], + [-11.888574218749994, 12.4033203125], + [-11.80810546875, 12.387304687499991], + [-11.573681640624983, 12.426318359374989], + [-11.456738281249983, 12.417578125], + [-11.389404296875, 12.404394531249991] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Gambia", + "iso_a2": "GM", + "iso_a3": "GMB", + "iso_n3": "270", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-16.763330078124994, 13.064160156249997], + [-16.76933593749999, 13.148486328124989], + [-16.824804687499977, 13.341064453125], + [-16.750390625, 13.425390625], + [-16.669335937499994, 13.475], + [-16.61479492187499, 13.435302734375], + [-16.598339843749983, 13.356835937499994], + [-16.55644531249999, 13.30322265625], + [-16.41337890624999, 13.269726562499997], + [-16.271679687499983, 13.293798828124991], + [-16.18505859375, 13.28271484375], + [-16.187890625, 13.326171875], + [-16.158398437499983, 13.384033203125], + [-15.986425781249977, 13.408837890624994], + [-15.804492187499989, 13.425390625], + [-15.61767578125, 13.460107421874994], + [-15.471289062499977, 13.458642578124994], + [-15.427490234375, 13.468359375], + [-15.438134765624994, 13.483203125], + [-15.569531249999983, 13.499853515624991], + [-15.849902343749989, 13.4599609375], + [-16.135449218749983, 13.4482421875], + [-16.351806640625, 13.343359375], + [-16.440527343749977, 13.353173828124994], + [-16.53007812499999, 13.457958984374997], + [-16.56230468749999, 13.587304687499994], + [-16.308740234374994, 13.596875], + [-16.001611328124994, 13.5927734375], + [-15.667187499999983, 13.58828125], + [-15.509667968749994, 13.586230468750003], + [-15.426855468749977, 13.727001953124997], + [-15.26953125, 13.789111328125003], + [-15.108349609374983, 13.812109375], + [-15.024462890624989, 13.806005859374991], + [-14.935791015625, 13.785205078125003], + [-14.766015625, 13.669091796874994], + [-14.66015625, 13.642626953125003], + [-14.570849609374989, 13.616162109374997], + [-14.506982421874994, 13.559716796874994], + [-14.405468749999983, 13.503710937500003], + [-14.325537109374977, 13.488574218750003], + [-14.278027343749983, 13.497167968749991], + [-14.199023437499989, 13.51875], + [-14.14697265625, 13.5361328125], + [-13.977392578124977, 13.54345703125], + [-13.852832031249989, 13.478564453125003], + [-13.826708984374989, 13.4078125], + [-13.847509765624977, 13.335302734374991], + [-14.014892578125, 13.29638671875], + [-14.246777343749983, 13.23583984375], + [-14.438574218749977, 13.268896484374991], + [-14.671923828124989, 13.351708984374994], + [-14.808251953124994, 13.4111328125], + [-14.865039062499989, 13.434863281250003], + [-14.950292968749977, 13.472607421874997], + [-15.024609374999983, 13.513330078124994], + [-15.096386718749983, 13.539648437499991], + [-15.151123046875, 13.556494140624991], + [-15.191601562499983, 13.535253906249991], + [-15.212109374999983, 13.485058593749997], + [-15.24453125, 13.429101562499994], + [-15.286230468749977, 13.39599609375], + [-15.481835937499994, 13.376367187499994], + [-15.657324218749977, 13.355810546874991], + [-15.751562499999977, 13.33837890625], + [-15.814404296874983, 13.325146484374997], + [-15.834277343749989, 13.156445312499997], + [-16.033056640624977, 13.158349609374994], + [-16.22832031249999, 13.160302734374994], + [-16.430859374999983, 13.157324218749991], + [-16.648779296874977, 13.154150390624991], + [-16.704541015624983, 13.119726562499991], + [-16.763330078124994, 13.064160156249997] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Guinea-Bissau", + "iso_a2": "GW", + "iso_a3": "GNB", + "iso_n3": "624", + "continent": "Africa" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-15.895898437499966, 11.082470703124969], + [-15.905175781249994, 11.054736328125003], + [-15.963964843749977, 11.05898437499998], + [-15.950634765624926, 11.087109375000026], + [-15.963476562499977, 11.0953125], + [-15.946484374999983, 11.179736328124974], + [-15.937695312499955, 11.192773437499966], + [-15.909130859374926, 11.16132812500004], + [-15.905273437500028, 11.14833984374998], + [-15.895898437499966, 11.082470703124969] + ] + ], + [ + [ + [-16.11450195312503, 11.059423828124977], + [-16.194531249999983, 11.04458007812498], + [-16.23100585937496, 11.094238281250057], + [-16.236425781249977, 11.113427734374966], + [-16.19462890624999, 11.130126953125], + [-16.175878906250006, 11.13081054687504], + [-16.14404296875, 11.16684570312502], + [-16.10478515624999, 11.191015624999963], + [-16.087451171875017, 11.198779296875031], + [-16.06733398437501, 11.197216796874983], + [-16.05278320312496, 11.117529296875006], + [-16.072216796874926, 11.084082031250034], + [-16.11450195312503, 11.059423828124977] + ] + ], + [ + [ + [-15.725146484375017, 11.21547851562498], + [-15.725146484375017, 11.174511718749983], + [-15.767480468750023, 11.182275390625051], + [-15.779785156249943, 11.194531249999969], + [-15.754687499999989, 11.26870117187498], + [-15.717480468749955, 11.301757812500057], + [-15.671923828124989, 11.296484375000048], + [-15.658349609374994, 11.286474609374963], + [-15.667187499999926, 11.257861328124989], + [-15.687109374999977, 11.234326171874997], + [-15.725146484375017, 11.21547851562498] + ] + ], + [ + [ + [-15.901806640624926, 11.4658203125], + [-15.94873046875, 11.434423828124991], + [-15.997216796875023, 11.449169921874983], + [-16.02319335937497, 11.477148437499991], + [-16.01933593749999, 11.527294921874997], + [-15.964550781249926, 11.59829101562498], + [-15.915332031249932, 11.589111328124972], + [-15.901806640624926, 11.4658203125] + ] + ], + [ + [ + [-15.553417968749926, 11.537011718750023], + [-15.56279296874996, 11.513769531249991], + [-15.61962890625, 11.533496093750017], + [-15.536572265624955, 11.617626953125011], + [-15.48247070312496, 11.632324218749986], + [-15.484423828124989, 11.567529296875023], + [-15.526220703124977, 11.553857421874994], + [-15.553417968749926, 11.537011718750023] + ] + ], + [ + [ + [-15.986425781249949, 11.882031249999969], + [-16.038330078124943, 11.759716796875011], + [-16.102441406249966, 11.773193359375], + [-16.147363281249966, 11.845996093750003], + [-16.15244140624992, 11.876806640624963], + [-16.02187, 11.886669921875026], + [-15.986425781249949, 11.882031249999969] + ] + ], + [ + [ + [-13.673535156249926, 12.478515624999986], + [-13.682373046874943, 12.393408203124963], + [-13.707910156249994, 12.31269531250004], + [-13.730078124999977, 12.280810546875031], + [-13.759765625, 12.262353515624994], + [-13.849462890624977, 12.262988281250045], + [-13.8875, 12.246875], + [-13.947314453124932, 12.215234375], + [-13.948876953124966, 12.178173828124997], + [-13.901171874999932, 12.142871093749989], + [-13.861914062499949, 12.093310546875017], + [-13.816308593749966, 12.054492187500017], + [-13.737988281250011, 12.009667968750037], + [-13.730664062499926, 11.959863281250009], + [-13.72856445312496, 11.83413085937498], + [-13.73276367187492, 11.736035156249983], + [-13.953222656249977, 11.664599609374989], + [-14.122314453124972, 11.651953125], + [-14.265576171874926, 11.659912109375014], + [-14.327832031250011, 11.629785156250009], + [-14.452441406249989, 11.556201171875017], + [-14.604785156249932, 11.511621093749994], + [-14.682958984374949, 11.508496093749983], + [-14.720263671875017, 11.481933593749986], + [-14.779296874999972, 11.405517578125057], + [-14.944433593749949, 11.072167968749994], + [-14.999023437499972, 10.992187500000043], + [-15.04301757812496, 10.940136718750011], + [-15.09375, 11.011035156249974], + [-15.054589843749994, 11.141943359375006], + [-15.096777343749977, 11.140039062499966], + [-15.181054687499994, 11.034228515625003], + [-15.222119140624926, 11.030908203125037], + [-15.216699218749994, 11.15625], + [-15.263378906249983, 11.160888671875043], + [-15.317480468750006, 11.152001953125009], + [-15.39311523437496, 11.217236328124983], + [-15.400585937499955, 11.266210937500006], + [-15.394531249999972, 11.334472656249972], + [-15.348437499999989, 11.378076171874966], + [-15.354687499999955, 11.396337890624963], + [-15.399169921874943, 11.401464843750034], + [-15.448974609374972, 11.389746093750034], + [-15.479492187499972, 11.410302734374966], + [-15.429101562499994, 11.498876953124977], + [-15.252587890625023, 11.573291015625045], + [-15.163769531249955, 11.580957031250009], + [-15.072656249999937, 11.597802734374966], + [-15.122412109374949, 11.661572265624997], + [-15.230371093750023, 11.686767578124972], + [-15.316699218749932, 11.669189453125043], + [-15.359667968749989, 11.62290039062502], + [-15.412988281249994, 11.615234374999972], + [-15.501904296875011, 11.723779296874966], + [-15.500244140625028, 11.778369140624989], + [-15.467187499999937, 11.842822265624974], + [-15.415722656249955, 11.871777343750011], + [-15.210839843749937, 11.87094726562502], + [-15.133105468750017, 11.907324218749963], + [-15.101708984374994, 11.913964843749994], + [-15.071972656249983, 11.947021484374972], + [-15.078271484374937, 11.968994140625014], + [-15.111523437499955, 11.970263671875003], + [-15.18808593749992, 11.927294921875045], + [-15.434765625000011, 11.943554687499983], + [-15.51347656249996, 11.91757812500002], + [-15.650683593749932, 11.818359375000057], + [-15.819384765624932, 11.763476562499974], + [-15.941748046875006, 11.786621093749986], + [-15.902734374999937, 11.919677734375], + [-15.92021484374996, 11.93779296874996], + [-15.958789062499989, 11.959619140624966], + [-16.138427734375, 11.917285156250045], + [-16.274316406249966, 11.978125], + [-16.32807617187501, 12.051611328124963], + [-16.31884765625, 12.14375], + [-16.254736328124977, 12.206054687499986], + [-16.244580078124955, 12.237109375], + [-16.31230468749999, 12.243017578124963], + [-16.43681640624996, 12.204150390625045], + [-16.711816406249937, 12.354833984375006], + [-16.656933593749955, 12.364355468749991], + [-16.52133789062495, 12.348632812499986], + [-16.41630859374996, 12.367675781250057], + [-16.34228515624997, 12.399511718749963], + [-16.24150390624996, 12.443310546875011], + [-16.144189453124937, 12.457421875000037], + [-15.839550781249955, 12.437890624999966], + [-15.57480468749992, 12.490380859375009], + [-15.377929687499972, 12.58896484375002], + [-15.19609375, 12.679931640624986], + [-14.960595703124937, 12.678955078125057], + [-14.708154296874937, 12.677978515625028], + [-14.34921875, 12.67641601562498], + [-14.064843749999966, 12.675292968750014], + [-13.729248046875, 12.673925781250006], + [-13.732617187499983, 12.592822265625003], + [-13.673535156249926, 12.478515624999986] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Eq. Guinea", + "iso_a2": "GQ", + "iso_a3": "GNQ", + "iso_n3": "226", + "continent": "Africa" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [11.334667968750068, 1.12075195312498], + [11.335351562500023, 0.999707031250011], + [11.130664062500074, 1.00039062499998], + [10.858886718750028, 1.001269531249974], + [10.587207031250017, 1.002148437499983], + [10.315429687500057, 1.003076171874994], + [10.17890625000004, 1.003564453125009], + [10.028515625000068, 1.004003906250006], + [9.979785156250074, 0.997705078124966], + [9.94667968750008, 0.967138671875048], + [9.906738281250028, 0.960107421875037], + [9.8603515625, 0.986230468750023], + [9.80390625000004, 0.998730468749997], + [9.788671875000034, 1.025683593749974], + [9.760546874999989, 1.074707031250014], + [9.704589843750057, 1.079980468750023], + [9.676464843750011, 1.074707031250014], + [9.636132812500051, 1.046679687499989], + [9.590820312500057, 1.031982421875014], + [9.599414062500045, 1.054443359374972], + [9.509863281250006, 1.114794921875017], + [9.4453125, 1.12065429687496], + [9.385937500000068, 1.13925781250002], + [9.43408203125, 1.296386718749972], + [9.494238281250006, 1.435302734375028], + [9.584277343750045, 1.540234375], + [9.632128906250045, 1.565527343750006], + [9.647656250000011, 1.617578125000037], + [9.718847656250034, 1.788671875], + [9.807031250000051, 1.927490234375028], + [9.77968750000008, 2.068212890625006], + [9.800781250000028, 2.304443359375], + [9.826171875000057, 2.297802734374969], + [9.830371093750017, 2.275488281250048], + [9.8369140625, 2.242382812500054], + [9.870117187500028, 2.21328125], + [9.979882812499994, 2.167773437500045], + [10.307031250000051, 2.167724609375028], + [10.502246093750017, 2.167626953125009], + [10.790917968750023, 2.167578125], + [11.096582031250051, 2.167480468749986], + [11.328710937500006, 2.167431640624969], + [11.330078125, 1.935888671874963], + [11.331152343750063, 1.740185546874969], + [11.332324218750017, 1.528369140624989], + [11.33359375, 1.307617187500043], + [11.334667968750068, 1.12075195312498] + ] + ], + [ + [ + [8.735742187500023, 3.758300781249972], + [8.760449218750011, 3.754345703124969], + [8.910058593750023, 3.758203125000051], + [8.950683593750028, 3.705322265625014], + [8.946093750000074, 3.627539062499977], + [8.792187500000068, 3.400390624999986], + [8.763476562500074, 3.304638671875011], + [8.704003906250051, 3.223632812500028], + [8.65234375, 3.217089843750031], + [8.474902343749989, 3.264648437500043], + [8.444921875000034, 3.29350585937496], + [8.434277343750068, 3.332421875], + [8.451757812500006, 3.422900390625031], + [8.464648437500045, 3.450585937499994], + [8.549804687499972, 3.467626953125006], + [8.577246093750063, 3.482373046874983], + [8.622753906250011, 3.57998046874998], + [8.637695312500028, 3.668847656250051], + [8.675878906250006, 3.735937500000034], + [8.735742187500023, 3.758300781249972] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Greece", + "iso_a2": "GR", + "iso_a3": "GRC", + "iso_n3": "300", + "continent": "Europe" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [23.852246093749983, 35.53544921874999], + [23.920605468750068, 35.528173828125006], + [24.013281250000034, 35.52944335937502], + [24.034375, 35.53540039062497], + [24.093359375, 35.59384765624998], + [24.166015625000057, 35.59521484375], + [24.19775390625003, 35.537451171875034], + [24.12402343750003, 35.510839843750034], + [24.108984374999977, 35.49580078124998], + [24.123144531250034, 35.483642578125], + [24.178515625000017, 35.45952148437499], + [24.255371093750057, 35.46860351562506], + [24.25771484375008, 35.42314453125002], + [24.27490234375003, 35.385986328125], + [24.31289062500005, 35.36381835937502], + [24.35400390625, 35.359472656250034], + [24.444921875000034, 35.36601562500002], + [24.534570312499994, 35.380761718749994], + [24.626953125, 35.409912109375], + [24.721289062500034, 35.4248046875], + [25.003125, 35.40986328124998], + [25.104296875000074, 35.34692382812503], + [25.296777343750023, 35.33935546875], + [25.475683593750063, 35.30620117187502], + [25.569628906250017, 35.32807617187501], + [25.73017578125004, 35.34858398437501], + [25.75585937500003, 35.32636718750004], + [25.735156250000074, 35.18403320312498], + [25.74501953125005, 35.142724609374994], + [25.791308593750074, 35.122851562500045], + [25.837109375000068, 35.13256835937497], + [25.893359375000074, 35.17919921874997], + [26.028027343750068, 35.215283203124955], + [26.16787109375005, 35.215087890625], + [26.285546875000023, 35.30976562500001], + [26.32021484375008, 35.315136718749955], + [26.298632812500045, 35.26860351562499], + [26.280859375000063, 35.15922851562499], + [26.25556640625004, 35.09516601562501], + [26.244335937500068, 35.04467773437503], + [26.165625, 35.018603515625045], + [26.046679687500045, 35.01416015625003], + [25.829687500000063, 35.025195312500045], + [25.6109375, 35.00732421875006], + [25.20576171875004, 34.95927734375002], + [24.79980468750003, 34.93447265625002], + [24.745214843750006, 34.950634765624955], + [24.743945312500017, 35.014355468749955], + [24.735156250000017, 35.05830078125004], + [24.70888671875008, 35.08906250000001], + [24.583398437499994, 35.115332031250034], + [24.463671875000045, 35.160351562499955], + [23.994335937500068, 35.22192382812497], + [23.883593750000074, 35.24609375000003], + [23.703906250000074, 35.233496093750034], + [23.63808593750005, 35.23515625000002], + [23.59277343749997, 35.257226562499966], + [23.561621093750034, 35.29516601562497], + [23.54755859375001, 35.41557617187499], + [23.56982421875, 35.534765625000034], + [23.608691406250017, 35.56625976562506], + [23.626562500000034, 35.530371093750034], + [23.67265624999999, 35.51391601562506], + [23.715429687500006, 35.55014648437506], + [23.71503906250001, 35.60473632812497], + [23.736914062500034, 35.65551757812503], + [23.770800781250017, 35.634228515624955], + [23.79335937500008, 35.556201171875045], + [23.852246093749983, 35.53544921874999] + ] + ], + [ + [ + [27.17607421874999, 35.46528320312498], + [27.13789062500004, 35.409082031249994], + [27.099121093750057, 35.456445312499966], + [27.115820312500063, 35.51113281250002], + [27.070703125000023, 35.59775390624998], + [27.156054687500017, 35.726269531249955], + [27.158007812500045, 35.78867187499998], + [27.22314453125, 35.820458984374966], + [27.20703125, 35.714453125000034], + [27.15722656249997, 35.62949218750006], + [27.208886718750023, 35.55893554687498], + [27.233593749999983, 35.478564453125045], + [27.17607421874999, 35.46528320312498] + ] + ], + [ + [ + [23.053808593750034, 36.18979492187498], + [23.042187500000068, 36.14638671875002], + [22.93945312500003, 36.17622070312498], + [22.91083984375004, 36.220996093750045], + [22.90566406250005, 36.32031250000003], + [22.932617187500057, 36.36875], + [22.950488281250045, 36.38393554687502], + [22.997851562500017, 36.328125], + [23.09707031250008, 36.24658203125], + [23.053808593750034, 36.18979492187498] + ] + ], + [ + [ + [27.84277343750003, 35.929296875000034], + [27.770605468750063, 35.908300781250006], + [27.745703125000063, 35.91103515625002], + [27.71552734375004, 35.95732421874996], + [27.75732421875003, 36.069189453125006], + [27.71865234375005, 36.14111328125], + [27.71630859375003, 36.17158203125001], + [27.77441406250003, 36.213769531249994], + [27.815234375000017, 36.27695312499998], + [27.91445312500005, 36.345312500000034], + [28.171484375000034, 36.42622070312501], + [28.23183593750005, 36.43364257812502], + [28.230078125000063, 36.370263671874966], + [28.14404296875003, 36.209863281249994], + [28.067675781250017, 36.12968749999999], + [28.087792968750023, 36.06533203125002], + [27.965527343750068, 36.04750976562505], + [27.84277343750003, 35.929296875000034] + ] + ], + [ + [ + [25.48242187500003, 36.39262695312502], + [25.43593750000005, 36.34008789062506], + [25.37050781250005, 36.35893554687499], + [25.397167968750068, 36.37895507812496], + [25.412890625000074, 36.404882812500006], + [25.414648437500063, 36.442285156249994], + [25.396875, 36.46533203124997], + [25.408984375000074, 36.473730468750006], + [25.467382812500063, 36.43505859375003], + [25.48242187500003, 36.39262695312502] + ] + ], + [ + [ + [26.46064453125001, 36.58540039062501], + [26.381640625000074, 36.56152343750003], + [26.33144531250005, 36.51137695312505], + [26.270019531250057, 36.54692382812499], + [26.269824218750017, 36.59541015625001], + [26.337011718750034, 36.58056640625], + [26.38417968750005, 36.60786132812498], + [26.370019531250023, 36.63857421875002], + [26.42128906250005, 36.62421875000001], + [26.46064453125001, 36.58540039062501] + ] + ], + [ + [ + [27.860156250000017, 36.55390625000001], + [27.83828125000008, 36.53798828125005], + [27.78808593749997, 36.58369140625004], + [27.785742187500034, 36.607519531250006], + [27.83681640625005, 36.63486328125006], + [27.8625, 36.64116210937502], + [27.86982421875004, 36.62250976562504], + [27.86904296875005, 36.582666015624994], + [27.860156250000017, 36.55390625000001] + ] + ], + [ + [ + [24.535742187500063, 36.763769531250034], + [24.5375, 36.705029296874955], + [24.530664062499994, 36.68398437500002], + [24.325976562500045, 36.655615234375034], + [24.34492187500001, 36.72299804687498], + [24.357421875000057, 36.744287109374966], + [24.425195312500023, 36.71293945312499], + [24.450195312500057, 36.728955078124955], + [24.46035156250008, 36.747460937499994], + [24.535742187500063, 36.763769531250034] + ] + ], + [ + [ + [25.381738281250023, 36.674023437499955], + [25.364355468750034, 36.65834960937505], + [25.288671875000063, 36.721533203125034], + [25.259960937499983, 36.75844726562502], + [25.29589843750003, 36.78916015625006], + [25.40693359375001, 36.71733398437499], + [25.381738281250023, 36.674023437499955] + ] + ], + [ + [ + [26.94960937500005, 36.72709960937502], + [26.91835937500008, 36.72592773437506], + [26.95556640625003, 36.77421875000002], + [27.061132812500034, 36.84038085937502], + [27.214941406250006, 36.89863281249998], + [27.265625, 36.90512695312506], + [27.352148437499977, 36.86889648437506], + [27.193164062500017, 36.809130859375045], + [27.150976562500034, 36.777587890625], + [27.033593750000023, 36.77075195312503], + [26.94960937500005, 36.72709960937502] + ] + ], + [ + [ + [25.85937, 36.79042968750005], + [25.771093750000034, 36.78222656249997], + [25.74316406250003, 36.78974609374998], + [25.796777343750023, 36.807031249999966], + [25.834375, 36.82539062499998], + [25.85244140625008, 36.84755859375005], + [25.941992187500034, 36.886572265625006], + [26.000683593749983, 36.937402343749966], + [26.06445312500003, 36.90273437500002], + [25.984667968750017, 36.87968750000002], + [25.85937, 36.79042968750005] + ] + ], + [ + [ + [24.72089843750004, 36.92143554687499], + [24.702636718750057, 36.917089843750006], + [24.67646484375004, 36.95927734374999], + [24.670996093750006, 36.99858398437499], + [24.681445312500074, 37.021630859374994], + [24.716113281250045, 37.023828125], + [24.76318359375003, 36.94921874999997], + [24.72089843750004, 36.92143554687499] + ] + ], + [ + [ + [27.01972656250004, 36.95903320312502], + [26.91992187500003, 36.94521484375005], + [26.93769531250001, 37.02460937499998], + [26.88867187499997, 37.087255859375034], + [26.966601562500045, 37.05209960937498], + [27.01601562500008, 37.00966796875002], + [27.040136718750006, 37.00156249999998], + [27.03457031250005, 36.97597656250002], + [27.01972656250004, 36.95903320312502] + ] + ], + [ + [ + [25.278906250000034, 37.06840820312502], + [25.19941406250001, 36.991308593750034], + [25.13330078125003, 36.99965820312505], + [25.105468750000057, 37.034960937500045], + [25.146484375000057, 37.10742187500006], + [25.235058593750068, 37.148535156250006], + [25.275292968749994, 37.13784179687502], + [25.27148437500003, 37.08417968750004], + [25.278906250000034, 37.06840820312502] + ] + ], + [ + [ + [25.54589843749997, 36.96757812499999], + [25.45673828125001, 36.9296875], + [25.39589843750005, 36.984375], + [25.361914062500063, 37.07041015624998], + [25.52529296875005, 37.19638671875006], + [25.564355468750023, 37.18510742187499], + [25.587890625, 37.15253906250001], + [25.584277343750074, 37.03930664062503], + [25.54589843749997, 36.96757812499999] + ] + ], + [ + [ + [24.523535156250063, 37.125097656250006], + [24.486523437500068, 37.11005859374998], + [24.42480468750003, 37.131982421874994], + [24.441210937500074, 37.18686523437498], + [24.48378906250005, 37.21020507812503], + [24.529101562500045, 37.19233398437504], + [24.535937500000017, 37.16767578124998], + [24.523535156250063, 37.125097656250006] + ] + ], + [ + [ + [24.43574218750004, 37.34443359375001], + [24.37890625, 37.314111328124966], + [24.397753906250017, 37.383447265624966], + [24.369726562500006, 37.41962890624998], + [24.394824218750045, 37.45039062500004], + [24.43125, 37.475195312500006], + [24.448535156250074, 37.449560546875034], + [24.48144531250003, 37.40800781250002], + [24.43574218750004, 37.34443359375001] + ] + ], + [ + [ + [24.942871093750057, 37.493505859375006], + [24.937890625000023, 37.38969726562502], + [24.91152343750005, 37.39057617187501], + [24.89619140625004, 37.40659179687498], + [24.895312500000045, 37.44633789062499], + [24.906542968750017, 37.508886718750034], + [24.942871093750057, 37.493505859375006] + ] + ], + [ + [ + [25.402734375000023, 37.419140624999955], + [25.30712890625, 37.41298828125005], + [25.312695312500068, 37.48930664062496], + [25.34814453125003, 37.50917968750002], + [25.462988281250063, 37.47109375], + [25.45742187500008, 37.44707031249996], + [25.402734375000023, 37.419140624999955] + ] + ], + [ + [ + [26.029296875000057, 37.529394531250034], + [25.982421875, 37.52558593749998], + [25.99677734375001, 37.56557617187505], + [26.086328125000023, 37.63491210937505], + [26.211523437500063, 37.638281250000034], + [26.325585937500023, 37.67304687500001], + [26.351367187500017, 37.67431640625], + [26.296875, 37.61958007812504], + [26.204882812500017, 37.56850585937502], + [26.029296875000057, 37.529394531250034] + ] + ], + [ + [ + [25.255859375000057, 37.59960937500006], + [25.21875, 37.535107421874955], + [25.156347656250034, 37.54506835937505], + [25.051953125000068, 37.614453124999955], + [25.01630859375001, 37.64594726562498], + [24.99648437500005, 37.676904296874994], + [25.039355468750074, 37.68066406250006], + [25.09179687500003, 37.64799804687496], + [25.225390625000045, 37.63066406249999], + [25.255859375000057, 37.59960937500006] + ] + ], + [ + [ + [24.35595703125003, 37.57685546875004], + [24.28896484375005, 37.52827148437498], + [24.277441406250034, 37.60112304687502], + [24.320410156250063, 37.67773437499997], + [24.37910156250004, 37.682714843750006], + [24.400781250000023, 37.649023437500006], + [24.35595703125003, 37.57685546875004] + ] + ], + [ + [ + [26.82441406250004, 37.81142578125005], + [26.947363281250034, 37.778466796874994], + [26.981542968750063, 37.781982421875], + [27.039648437500006, 37.77001953125003], + [27.05507812500005, 37.70927734375002], + [26.978125, 37.70048828124999], + [26.84492187500004, 37.64472656250001], + [26.78828125000004, 37.65698242187503], + [26.720507812500017, 37.70546875000002], + [26.612890625, 37.71049804687499], + [26.58105468750003, 37.723730468750034], + [26.63867187500003, 37.780859375000034], + [26.74335937500004, 37.809765624999955], + [26.82441406250004, 37.81142578125005] + ] + ], + [ + [ + [20.888476562500074, 37.805371093749955], + [20.993945312500074, 37.70800781250003], + [20.909082031249994, 37.732128906249955], + [20.81855468750004, 37.66474609375001], + [20.70380859375001, 37.74345703124996], + [20.635058593750045, 37.82314453125002], + [20.61953125000008, 37.855029296875045], + [20.691503906250006, 37.929541015625034], + [20.758691406249994, 37.85297851562498], + [20.83984375000003, 37.840722656249966], + [20.888476562500074, 37.805371093749955] + ] + ], + [ + [ + [24.991699218750057, 37.75961914062506], + [24.962207031250074, 37.69238281250003], + [24.884082031250074, 37.77050781250006], + [24.79853515625004, 37.82402343750002], + [24.766503906249994, 37.870703125000034], + [24.71435546875003, 37.89887695312501], + [24.7001953125, 37.961669921875], + [24.763378906250068, 37.9875], + [24.79042968750008, 37.99013671875002], + [24.855078125, 37.913671875], + [24.956347656250045, 37.90478515625006], + [24.94843750000004, 37.85766601562506], + [24.98046874999997, 37.79692382812502], + [24.991699218750057, 37.75961914062506] + ] + ], + [ + [ + [23.550976562499983, 37.925878906250006], + [23.51142578125001, 37.90117187500002], + [23.46679687499997, 37.90239257812502], + [23.43525390625004, 37.911474609375006], + [23.41933593750008, 37.93125], + [23.4390625, 37.940673828125], + [23.462207031250017, 37.980371093749994], + [23.483691406250045, 37.991113281249966], + [23.51552734375005, 37.98603515624998], + [23.534863281249983, 37.97021484374997], + [23.550976562499983, 37.925878906250006] + ] + ], + [ + [ + [20.61230468750003, 38.38334960937502], + [20.624707031250068, 38.267871093750045], + [20.69521484375005, 38.24619140625006], + [20.788867187500017, 38.14208984375], + [20.780761718750057, 38.08881835937498], + [20.761328125, 38.07055664062497], + [20.60615234375001, 38.11972656250006], + [20.568945312499977, 38.09765625], + [20.523535156250063, 38.106640624999955], + [20.495507812500023, 38.164160156250034], + [20.498730468750068, 38.18437], + [20.47333984375004, 38.21879882812499], + [20.4521484375, 38.23417968750002], + [20.39101562500005, 38.18842773437501], + [20.35253906250003, 38.179882812499955], + [20.352246093750068, 38.22172851562496], + [20.40869140625003, 38.336767578125034], + [20.435058593750057, 38.356201171875], + [20.4814453125, 38.31821289062498], + [20.519628906250063, 38.33232421875002], + [20.548339843750057, 38.39453125], + [20.55029296875, 38.45654296875003], + [20.563183593750068, 38.474951171875034], + [20.61230468750003, 38.38334960937502] + ] + ], + [ + [ + [20.758691406249994, 38.32944335937506], + [20.709277343750074, 38.31860351562497], + [20.64638671875005, 38.41430664062503], + [20.623632812500034, 38.48032226562498], + [20.649707031250017, 38.483984375], + [20.674804687500057, 38.47631835937506], + [20.701269531250034, 38.45141601562503], + [20.70107421875008, 38.425927734374994], + [20.71162109375001, 38.39863281250004], + [20.739160156250023, 38.36577148437499], + [20.758691406249994, 38.32944335937506] + ] + ], + [ + [ + [26.094042968750017, 38.21806640625002], + [25.99853515625, 38.16152343750005], + [25.891894531250045, 38.243310546874994], + [25.874316406250017, 38.269628906250034], + [25.952636718750057, 38.30263671875002], + [25.991406250000068, 38.353515625], + [25.959960937500057, 38.41601562500003], + [25.85126953125001, 38.508398437500006], + [25.846093750000023, 38.57402343749996], + [26.0125, 38.60170898437502], + [26.110449218750063, 38.54462890625001], + [26.16035156250001, 38.54072265625001], + [26.141210937500034, 38.486181640625006], + [26.14960937500004, 38.468457031249955], + [26.157031250000045, 38.30292968749998], + [26.110742187500023, 38.279638671875034], + [26.103125, 38.23417968750002], + [26.094042968750017, 38.21806640625002] + ] + ], + [ + [ + [20.68671875000001, 38.60869140625002], + [20.64785156250008, 38.60097656250005], + [20.614355468750006, 38.60625], + [20.58398437500003, 38.60170898437502], + [20.5546875, 38.58256835937502], + [20.557910156250045, 38.661865234375], + [20.592480468750068, 38.760156249999966], + [20.63466796875005, 38.81757812500004], + [20.69414062499999, 38.84423828125003], + [20.71962890625005, 38.799169921875006], + [20.714843750000057, 38.63833007812502], + [20.68671875000001, 38.60869140625002] + ] + ], + [ + [ + [24.67470703125005, 38.80922851562502], + [24.56904296875001, 38.78481445312502], + [24.54101562499997, 38.788671875], + [24.564550781250063, 38.81943359375006], + [24.56640625, 38.832373046875034], + [24.461035156250034, 38.88862304687501], + [24.473437500000074, 38.96166992187497], + [24.485644531250074, 38.980273437500045], + [24.564062500000063, 38.942236328125034], + [24.58125, 38.87885742187498], + [24.67470703125005, 38.80922851562502] + ] + ], + [ + [ + [23.41542968750008, 38.958642578124994], + [23.471972656250074, 38.85009765625], + [23.525, 38.8134765625], + [23.63623046875003, 38.77021484374998], + [23.68847656250003, 38.76469726562499], + [23.878222656250045, 38.68657226562499], + [24.09902343750008, 38.670996093750006], + [24.127539062500034, 38.648486328125045], + [24.15468750000005, 38.58828125000002], + [24.19970703125, 38.541015625], + [24.211035156250006, 38.50424804687506], + [24.1875, 38.46342773437499], + [24.22011718750008, 38.33862304687497], + [24.27578125000005, 38.22001953124996], + [24.359667968750074, 38.1625], + [24.463964843750006, 38.14511718749998], + [24.563281250000074, 38.14750976562502], + [24.58837890625003, 38.12397460937504], + [24.57851562500008, 38.02016601562502], + [24.53652343750005, 37.97973632812506], + [24.502343750000023, 37.96992187500001], + [24.47265625, 37.98051757812502], + [24.44580078125003, 38.004980468750034], + [24.41650390625003, 38.01655273437498], + [24.359472656250034, 38.01855468750006], + [24.31777343750008, 38.060351562500045], + [24.212011718750006, 38.11752929687506], + [24.19257812500004, 38.15166015624999], + [24.189062500000034, 38.204296874999955], + [24.144140625000034, 38.24306640625005], + [24.102832031250074, 38.31684570312498], + [24.063574218750063, 38.337207031250045], + [24.04189453125008, 38.374121093750006], + [24.040136718750006, 38.389990234375034], + [23.88623046875, 38.400732421875006], + [23.758789062500057, 38.401220703125034], + [23.65078125000008, 38.44306640625001], + [23.61738281250001, 38.552539062500045], + [23.553320312500034, 38.58198242187498], + [23.505273437499994, 38.612939453124994], + [23.465234375000023, 38.655859375000034], + [23.364062500000017, 38.735009765624994], + [23.25214843750004, 38.80122070312498], + [23.143945312500023, 38.84482421874998], + [23.029101562500074, 38.873388671875034], + [22.935742187500068, 38.83964843749999], + [22.88134765625, 38.84765625000003], + [22.870312500000068, 38.870507812499966], + [22.986328125000057, 38.915917968749994], + [23.145800781250045, 39.002685546875], + [23.258203125000023, 39.03134765625006], + [23.31269531250004, 39.03491210937497], + [23.41542968750008, 38.958642578124994] + ] + ], + [ + [ + [23.779785156250057, 39.11440429687502], + [23.735156250000045, 39.08056640625006], + [23.666113281250006, 39.09536132812505], + [23.59394531250004, 39.20859375], + [23.779785156250057, 39.11440429687502] + ] + ], + [ + [ + [23.887988281250074, 39.15830078124998], + [23.84121093750005, 39.146582031250006], + [23.888085937500023, 39.22636718749999], + [23.97089843750001, 39.267724609374994], + [23.939746093750045, 39.20053710937498], + [23.887988281250074, 39.15830078124998] + ] + ], + [ + [ + [26.41015625000003, 39.329443359375034], + [26.39277343750004, 39.270117187500034], + [26.531054687500045, 39.171777343749966], + [26.578222656250063, 39.109521484374994], + [26.59560546875005, 39.04882812499997], + [26.583984375, 39.03144531249998], + [26.531542968750045, 39.06435546875002], + [26.488671875000023, 39.074804687500034], + [26.503125, 39.03144531249998], + [26.547167968750045, 38.99414062500003], + [26.46875, 38.97280273437502], + [26.39013671875003, 38.97392578124999], + [26.16083984375004, 39.02587890625], + [26.10791015625, 39.08105468749997], + [26.245117187500057, 39.16411132812502], + [26.273144531249983, 39.19755859374999], + [26.17597656250001, 39.19428710937504], + [26.072363281250034, 39.095605468749994], + [25.90625, 39.138964843750045], + [25.85546875, 39.178662109374955], + [25.84414062500008, 39.20004882812506], + [25.90957031250008, 39.28754882812504], + [26.026464843750006, 39.284619140624955], + [26.08837890625, 39.30429687499998], + [26.164843750000045, 39.33198242187501], + [26.16542968750008, 39.37353515625006], + [26.347753906250006, 39.38300781250001], + [26.41015625000003, 39.329443359375034] + ] + ], + [ + [ + [20.077929687500045, 39.432714843750034], + [20.09960937500003, 39.376611328124966], + [19.975, 39.411425781250045], + [19.883984375000068, 39.461523437500034], + [19.808886718750045, 39.585302734375034], + [19.648925781250057, 39.726171875000034], + [19.646484375, 39.76708984375003], + [19.707324218750045, 39.79809570312503], + [19.83857421875004, 39.82011718749999], + [19.891699218750034, 39.79726562500005], + [19.926074218750017, 39.773730468750045], + [19.936816406250074, 39.74672851562505], + [19.86220703125008, 39.69262695312503], + [19.8466796875, 39.66811523437502], + [19.904101562500074, 39.61948242187506], + [19.903125, 39.6], + [19.92734375, 39.50590820312502], + [19.95527343750001, 39.47041015624998], + [20.02773437500005, 39.44208984374998], + [20.077929687500045, 39.432714843750034] + ] + ], + [ + [ + [25.43769531250004, 39.98330078125002], + [25.39990234375, 39.94956054687498], + [25.3720703125, 39.89130859375001], + [25.357031250000063, 39.80810546875003], + [25.29873046875008, 39.80610351562498], + [25.263378906250068, 39.82294921875004], + [25.251757812500017, 39.85439453125005], + [25.24941406250005, 39.89414062500006], + [25.22382812500001, 39.892578125], + [25.203222656250063, 39.84941406250002], + [25.185156250000034, 39.829931640625034], + [25.126464843750057, 39.825830078124994], + [25.06220703125004, 39.852392578125006], + [25.065234375000017, 39.90986328124998], + [25.052343750000063, 39.97636718750002], + [25.05800781250005, 39.999658203124966], + [25.234179687500074, 40.00541992187499], + [25.285742187500006, 39.95629882812503], + [25.34804687500008, 39.98476562500005], + [25.373632812500063, 40.01552734375002], + [25.44912109375008, 40.03481445312502], + [25.43769531250004, 39.98330078125002] + ] + ], + [ + [ + [25.68574218750004, 40.42656249999999], + [25.572656250000023, 40.40043945312499], + [25.448046875000017, 40.4828125], + [25.568554687500068, 40.51586914062497], + [25.624316406250045, 40.49199218749999], + [25.66425781250001, 40.46386718750006], + [25.68574218750004, 40.42656249999999] + ] + ], + [ + [ + [24.774218750000074, 40.615185546874955], + [24.645898437500023, 40.57944335937506], + [24.515527343750023, 40.64702148437496], + [24.516699218750006, 40.68720703124998], + [24.585546875, 40.76875], + [24.623339843750045, 40.79291992187501], + [24.719140625000023, 40.786279296874994], + [24.77363281250004, 40.73027343749996], + [24.78632812500004, 40.703857421875], + [24.768652343750006, 40.65888671874998], + [24.774218750000074, 40.615185546874955] + ] + ], + [ + [ + [26.536425781250074, 41.343115234375034], + [26.330664062499977, 41.23876953125], + [26.32568359375003, 41.14326171874998], + [26.328417968750074, 41.09702148437498], + [26.332617187500034, 41.06430664062498], + [26.354101562500063, 41.036767578124966], + [26.354101562500063, 40.99707031250006], + [26.331054687500057, 40.954492187499994], + [26.241210937500057, 40.88320312500002], + [26.178906250000068, 40.826513671875034], + [26.109179687500074, 40.749658203124994], + [26.069726562500023, 40.74028320312496], + [26.03896484375008, 40.726757812499955], + [26.0107421875, 40.76914062499998], + [25.85566406250004, 40.84409179687506], + [25.49677734375001, 40.88779296874998], + [25.325292968750063, 40.94311523437497], + [25.250097656250034, 40.93281250000001], + [25.10449218750003, 40.994726562500006], + [25.004687500000045, 40.96752929687497], + [24.792968750000057, 40.857519531250034], + [24.678710937500057, 40.86948242187498], + [24.55654296875005, 40.93559570312496], + [24.47705078125, 40.94775390625003], + [24.38378906250003, 40.91274414062502], + [24.234375, 40.78613281249997], + [24.082324218750074, 40.72407226562504], + [23.946093750000017, 40.74833984374999], + [23.762792968750063, 40.74780273437497], + [23.743261718750006, 40.67700195312503], + [23.778710937500023, 40.62797851562499], + [23.87890625, 40.54438476562501], + [23.831933593750023, 40.481542968750006], + [23.866796875000034, 40.41855468750006], + [23.93203125000008, 40.40576171875003], + [24.03056640624999, 40.40932617187502], + [24.21279296875008, 40.32778320312502], + [24.292480468750057, 40.241796875], + [24.343359375000034, 40.14770507812503], + [24.232421875, 40.215185546875006], + [24.158789062500006, 40.28002929687497], + [24.05605468750005, 40.30356445312498], + [23.913183593750063, 40.35878906250005], + [23.823437500000068, 40.36801757812506], + [23.72792968750008, 40.329736328124994], + [23.720507812500074, 40.28627929687502], + [23.823437500000068, 40.20512695312499], + [23.917578125000063, 40.155224609374955], + [23.96748046875001, 40.11455078125002], + [24.000781250000045, 40.02460937499998], + [23.981835937500023, 39.994042968749994], + [23.947070312500045, 39.96557617187506], + [23.835351562500023, 40.02226562499996], + [23.66455078125003, 40.22382812499998], + [23.42626953125, 40.26396484374999], + [23.38642578125004, 40.22197265624996], + [23.433203125000063, 40.11542968750001], + [23.467089843750045, 40.07392578125001], + [23.674121093750045, 39.95888671875002], + [23.657519531250017, 39.93447265625002], + [23.62734375, 39.92407226562503], + [23.395605468750034, 39.98984375], + [23.328222656250006, 40.08994140624998], + [23.31201171874997, 40.216455078124994], + [23.09814453125003, 40.304296875000034], + [22.896484375000057, 40.39990234374997], + [22.851367187500017, 40.490625], + [22.892871093750045, 40.524267578125006], + [22.92226562500008, 40.59086914062499], + [22.81142578125005, 40.57861328124997], + [22.74189453125001, 40.536474609375006], + [22.629492187500034, 40.49555664062501], + [22.62490234375005, 40.428613281249966], + [22.642675781250034, 40.36660156250002], + [22.60546875, 40.27641601562496], + [22.56933593750003, 40.11933593750001], + [22.59218750000005, 40.03691406250002], + [22.835742187500017, 39.80058593750002], + [22.919042968750034, 39.62890625000003], + [22.978808593750045, 39.563818359375006], + [23.103417968750023, 39.492041015625034], + [23.23339843750003, 39.35844726562499], + [23.28847656250008, 39.28881835937503], + [23.327734374999977, 39.174902343750006], + [23.218359375, 39.10439453125002], + [23.15468750000008, 39.10146484375005], + [23.119433593750017, 39.13276367187501], + [23.16875, 39.21044921875003], + [23.16171875, 39.25776367187501], + [22.992871093750068, 39.3310546875], + [22.92138671874997, 39.30634765625004], + [22.838964843750063, 39.25859374999999], + [22.886035156250074, 39.16997070312496], + [22.93896484375, 39.111523437499955], + [22.96552734375001, 39.030908203124966], + [23.066699218750017, 39.03793945312498], + [22.930468750000045, 38.94770507812498], + [22.802636718750023, 38.901611328125], + [22.676855468749977, 38.89892578125], + [22.596777343750006, 38.89057617187498], + [22.569140625000074, 38.86748046874999], + [22.63427734375003, 38.850683593750034], + [22.6875, 38.84916992187499], + [22.774023437500063, 38.80039062499998], + [23.020312500000074, 38.74189453124998], + [23.1376953125, 38.66796875], + [23.25292968750003, 38.66123046875006], + [23.368945312500045, 38.52553710937505], + [23.569628906250074, 38.48940429687505], + [23.68398437500008, 38.35244140625002], + [23.836035156250063, 38.32548828124996], + [23.96699218750001, 38.275], + [24.00537109375003, 38.22680664062503], + [24.024511718750006, 38.139794921874966], + [24.033007812500045, 37.95532226562506], + [24.061328125000045, 37.81791992187502], + [24.062304687500074, 37.77451171874998], + [24.055371093750068, 37.709619140624994], + [24.01972656250001, 37.67773437499997], + [23.97158203125005, 37.67675781250006], + [23.87734375000005, 37.77778320312501], + [23.73281250000008, 37.88408203125002], + [23.58046875000005, 38.01054687500002], + [23.537207031250034, 38.03276367187502], + [23.50175781249999, 38.03486328124998], + [23.42021484374999, 37.992089843749994], + [23.193652343750017, 37.95903320312499], + [23.087402343750057, 37.912841796875], + [23.047460937500006, 37.90263671874996], + [23.03632812500004, 37.87836914062501], + [23.086132812500068, 37.853125], + [23.147167968750068, 37.79531250000005], + [23.147167968750068, 37.71625976562501], + [23.197558593750017, 37.62021484374998], + [23.262695312500057, 37.59541015624998], + [23.347558593750023, 37.597558593749994], + [23.396191406250068, 37.57978515625001], + [23.408789062500063, 37.541552734375045], + [23.458105468749977, 37.496923828125006], + [23.490625, 37.46386718750003], + [23.48925781250003, 37.440185546875], + [23.252539062500034, 37.37729492187506], + [23.20302734375008, 37.348535156249966], + [23.16152343750005, 37.333837890625006], + [23.1, 37.36376953125006], + [23.096484375000045, 37.440576171874994], + [23.01513671874997, 37.481787109375034], + [22.940527343750063, 37.51708984375003], + [22.851074218750057, 37.5322265625], + [22.775, 37.58510742187502], + [22.725390625000017, 37.542138671874966], + [22.765039062500023, 37.39331054687503], + [22.851074218750057, 37.29082031250002], + [22.99501953125005, 37.01586914062506], + [23.060351562500045, 36.85351562500003], + [23.073535156250074, 36.77495117187499], + [23.04101562500003, 36.64453125], + [23.111718750000023, 36.54760742187506], + [23.16015625000003, 36.448095703125034], + [23.106835937500023, 36.45185546874998], + [23.060546875, 36.48696289062505], + [22.98291015625, 36.528369140625045], + [22.832324218750045, 36.687109375000034], + [22.779882812500006, 36.78618164062499], + [22.717187500000023, 36.79394531250006], + [22.6083984375, 36.77973632812501], + [22.489062500000017, 36.56816406249996], + [22.48945312500001, 36.446923828124966], + [22.42773437500003, 36.47578124999998], + [22.374804687500017, 36.51357421875005], + [22.38125, 36.64619140624998], + [22.375976562500057, 36.70190429687503], + [22.23115234375004, 36.882568359375], + [22.16474609375001, 36.90283203125003], + [22.13378906250003, 36.963916015625045], + [22.08046875000008, 37.028955078124966], + [22.01171875000003, 37.016503906249994], + [21.95556640625003, 36.990087890625034], + [21.940039062500063, 36.89179687500001], + [21.93427734375004, 36.80366210937498], + [21.892382812500045, 36.73730468749997], + [21.738085937500045, 36.863232421874955], + [21.58291015625005, 37.080957031249994], + [21.57880859375001, 37.20039062499998], + [21.692480468750006, 37.309277343749955], + [21.678906250000068, 37.38720703125003], + [21.5712890625, 37.54101562500003], + [21.41621093750001, 37.63994140625002], + [21.329296874999983, 37.66933593750005], + [21.288476562500023, 37.77451171874998], + [21.20527343750004, 37.82885742187503], + [21.137988281250017, 37.85415039062505], + [21.124707031250068, 37.89160156250003], + [21.14501953125003, 37.91928710937498], + [21.30810546875003, 38.027441406250006], + [21.40371093750005, 38.19667968750002], + [21.45117187500003, 38.204736328124966], + [21.548730468750023, 38.16459960937496], + [21.658398437500068, 38.17509765624996], + [21.748437500000023, 38.27421874999999], + [21.82470703125003, 38.328125], + [21.95332031250001, 38.321191406249966], + [22.24375, 38.188720703125], + [22.55585937500004, 38.11323242187498], + [22.711523437500034, 38.04692382812496], + [22.799609375000045, 37.981201171875], + [22.846386718750068, 37.96757812499996], + [22.920312500000023, 37.95830078125002], + [22.916992187500057, 38.00747070312502], + [22.893164062500006, 38.050927734374994], + [22.95478515625004, 38.07460937500002], + [23.1220703125, 38.073339843750006], + [23.15253906250001, 38.09638671875001], + [23.18349609375008, 38.133691406249966], + [23.148925781250057, 38.17607421874999], + [23.093554687500074, 38.19643554687505], + [23.03437, 38.202099609374955], + [22.995410156250045, 38.21552734375004], + [22.932519531250023, 38.20195312500002], + [22.834375, 38.234716796875034], + [22.78369140625, 38.26171875000003], + [22.753906250000057, 38.28950195312501], + [22.58339843750005, 38.34492187500001], + [22.421679687500045, 38.43852539062499], + [22.38525390625, 38.38554687500002], + [22.319921875, 38.35683593750005], + [22.226855468750074, 38.35283203125002], + [21.96533203124997, 38.412451171875006], + [21.80468750000003, 38.36694335937497], + [21.717089843750045, 38.35502929687502], + [21.650097656250068, 38.35400390625], + [21.567675781250074, 38.33359375], + [21.47255859375005, 38.321386718750006], + [21.39013671875003, 38.407812500000034], + [21.35546875, 38.47480468750001], + [21.3310546875, 38.48730468749997], + [21.32978515625001, 38.424365234375045], + [21.303320312500034, 38.373925781249966], + [21.18261718750003, 38.34555664062506], + [21.113183593750023, 38.38466796875002], + [21.059765625000068, 38.503271484375034], + [20.992187500000057, 38.65400390625001], + [20.873242187500068, 38.775732421875034], + [20.776855468750057, 38.80751953125002], + [20.768554687500057, 38.874414062499966], + [20.77734375, 38.92788085937502], + [20.893164062500034, 38.94111328124998], + [21.07421874999997, 38.88515625000002], + [21.111621093750045, 38.89628906249999], + [21.15234375, 38.92207031250001], + [21.14453125, 38.97919921875001], + [21.11835937500001, 39.029980468749955], + [21.068554687500068, 39.03227539062499], + [21.03408203125008, 39.026269531249994], + [20.922753906250023, 39.036767578124994], + [20.779687500000023, 39.00854492187503], + [20.71337890625, 39.03515625000003], + [20.69130859375005, 39.067480468750034], + [20.571679687500023, 39.14770507812506], + [20.46826171875, 39.25527343750002], + [20.300781250000057, 39.32709960937501], + [20.19140625, 39.545800781249966], + [20.099414062500074, 39.641259765624966], + [20.001269531250074, 39.70942382812501], + [20.022558593750063, 39.710693359375], + [20.059765624999983, 39.69912109375002], + [20.13105468750004, 39.66162109375003], + [20.206835937500017, 39.65351562499998], + [20.24824218750001, 39.678369140624966], + [20.272070312499977, 39.701171875], + [20.287597656250057, 39.73857421874999], + [20.29384765625008, 39.7822265625], + [20.30615234375, 39.79667968750002], + [20.364062500000074, 39.79174804687497], + [20.382421875, 39.802636718749994], + [20.381640625000017, 39.84179687500006], + [20.34423828125003, 39.890625], + [20.311328125000074, 39.95078125000006], + [20.311132812500034, 39.97944335937504], + [20.338476562500006, 39.991064453125006], + [20.38369140625008, 40.0171875], + [20.408007812500074, 40.049462890624994], + [20.4560546875, 40.065576171874994], + [20.527050781250068, 40.068505859374966], + [20.60625, 40.08266601562502], + [20.657421875000068, 40.11738281249998], + [20.664941406249994, 40.151757812499966], + [20.69697265625004, 40.24638671874996], + [20.717871093750034, 40.29267578124998], + [20.751660156249983, 40.33491210937498], + [20.77001953125, 40.391894531250045], + [20.80605468750005, 40.44545898437502], + [20.881640625000017, 40.467919921874994], + [20.95019531250003, 40.49438476562506], + [21.001953125, 40.563378906249966], + [21.030859375000034, 40.62246093750002], + [21.031054687500074, 40.65864257812501], + [20.987890625000063, 40.7177734375], + [20.95576171875001, 40.775292968749994], + [20.96425781250005, 40.84990234374999], + [21.1, 40.85615234375004], + [21.147558593750006, 40.863134765625034], + [21.32373046875, 40.867138671874955], + [21.404101562500045, 40.90717773437504], + [21.459667968749983, 40.90361328125002], + [21.575781250000034, 40.86894531249996], + [21.627539062500006, 40.896337890625034], + [21.77949218750004, 40.95043945312506], + [21.929492187500045, 41.10742187499997], + [21.99335937500001, 41.13095703125006], + [22.138867187500068, 41.140527343749966], + [22.18447265625005, 41.15864257812501], + [22.23769531250005, 41.15517578125002], + [22.40078125000005, 41.123388671875034], + [22.49355468750005, 41.118505859375006], + [22.603613281249977, 41.14018554687499], + [22.724804687500068, 41.17851562499999], + [22.75507812500004, 41.31274414062506], + [22.78388671875004, 41.33198242187498], + [22.859277343750023, 41.33735351562501], + [22.91601562500003, 41.33627929687506], + [23.025585937500068, 41.32563476562501], + [23.155957031250068, 41.32207031249999], + [23.239843750000034, 41.38496093750001], + [23.372070312500057, 41.3896484375], + [23.433398437500017, 41.39873046874999], + [23.53583984375001, 41.38603515624999], + [23.63515625000008, 41.386767578125045], + [23.762304687500063, 41.41298828125005], + [23.880859375000057, 41.45595703125002], + [23.973535156250023, 41.452294921874966], + [24.011328124999977, 41.460058593750034], + [24.03291015625004, 41.469091796875034], + [24.05605468750005, 41.527246093749966], + [24.230371093750023, 41.53081054687499], + [24.28945312500008, 41.525048828124966], + [24.38671875, 41.523535156250006], + [24.487890625, 41.55522460937499], + [24.518261718750068, 41.55253906249996], + [24.56933593749997, 41.467382812500034], + [24.595996093750074, 41.44272460937498], + [24.65107421875001, 41.41997070312496], + [24.773730468750045, 41.356103515624994], + [24.795800781250023, 41.37290039062506], + [24.846875, 41.394238281249955], + [24.99355468750008, 41.36499023437503], + [25.133398437500063, 41.31577148437506], + [25.251171875000068, 41.243554687499994], + [25.381933593750063, 41.264355468749955], + [25.52705078125004, 41.2998046875], + [25.621484375000023, 41.31010742187496], + [25.723925781250017, 41.31503906249998], + [25.784960937500017, 41.330419921875006], + [25.923339843750057, 41.311914062499966], + [26.066406250000057, 41.35068359375006], + [26.135351562499977, 41.3857421875], + [26.155175781250023, 41.43486328124999], + [26.143554687500057, 41.52153320312496], + [26.11123046875005, 41.60820312500002], + [26.076953125000074, 41.64018554687496], + [26.066015625000063, 41.67324218750005], + [26.085546875000063, 41.704150390625045], + [26.10742187499997, 41.72568359374998], + [26.20058593750005, 41.74379882812502], + [26.320898437500034, 41.716552734375], + [26.410546875, 41.696337890625045], + [26.4625, 41.66337890624999], + [26.49501953125008, 41.63325195312498], + [26.544531250000034, 41.60722656250002], + [26.581347656250074, 41.60126953125004], + [26.609765625, 41.51215820312501], + [26.62490234375008, 41.401757812499994], + [26.60234374999999, 41.354150390624966], + [26.536425781250074, 41.343115234375034] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Grenada", + "iso_a2": "GD", + "iso_a3": "GRD", + "iso_n3": "308", + "continent": "North America" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-61.71552734375, 12.012646484374997], + [-61.782177734375, 12.008447265624994], + [-61.755761718749994, 12.045458984374989], + [-61.749902343749994, 12.108447265624989], + [-61.714990234374994, 12.18515625], + [-61.66044921874999, 12.237011718749997], + [-61.60703125, 12.223291015624994], + [-61.6271484375, 12.053955078125], + [-61.71552734375, 12.012646484374997] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Greenland", + "iso_a2": "GL", + "iso_a3": "GRL", + "iso_n3": "304", + "continent": "North America" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-46.266699218750006, 60.781396484374994], + [-46.381542968749955, 60.66030273437502], + [-46.49633789062497, 60.686669921874966], + [-46.553125, 60.74077148437499], + [-46.666210937499955, 60.765917968750045], + [-46.7880859375, 60.758398437500034], + [-46.789990234374955, 60.779833984375045], + [-46.39389648437498, 60.908789062500006], + [-46.205224609374994, 60.943505859374994], + [-46.21860351562498, 60.88916015625003], + [-46.254492187500006, 60.841552734375], + [-46.266699218750006, 60.781396484374994] + ] + ], + [ + [ + [-37.03125, 65.53198242187497], + [-37.18681640624999, 65.53134765625003], + [-37.23842773437494, 65.60986328125003], + [-37.22290039062497, 65.69545898437497], + [-37.047509765624966, 65.722265625], + [-36.95307617187498, 65.663330078125], + [-36.98691406249995, 65.57558593749997], + [-37.03125, 65.53198242187497] + ] + ], + [ + [ + [-51.01367187499994, 69.55249023437497], + [-51.17041015625, 69.51713867187507], + [-51.202050781249966, 69.525], + [-51.23398437499998, 69.55185546875003], + [-51.314892578124955, 69.67407226562497], + [-51.33886718749994, 69.73203125000006], + [-51.31894531249998, 69.80405273437498], + [-51.350292968749955, 69.85478515625002], + [-51.20888671875002, 69.91391601562498], + [-51.094580078125006, 69.92416992187503], + [-50.94023437500002, 69.90869140624997], + [-50.67900390624999, 69.84853515625], + [-50.69790039062502, 69.82905273437501], + [-50.75439453124997, 69.79765625000002], + [-50.91171874999998, 69.756689453125], + [-50.96723632812501, 69.66425781250001], + [-50.977880859375034, 69.61782226562497], + [-50.970410156249926, 69.58300781249997], + [-51.01367187499994, 69.55249023437497] + ] + ], + [ + [ + [-52.73115234375001, 69.94472656250005], + [-52.39824218749993, 69.863427734375], + [-52.0453125, 69.8072265625], + [-52.01079101562496, 69.78154296875002], + [-51.98339843749997, 69.74267578125], + [-51.97705078125003, 69.72241210937506], + [-51.98510742187497, 69.70361328125003], + [-52.007470703124994, 69.68627929687497], + [-51.981689453125, 69.66396484375005], + [-51.90776367187493, 69.63666992187498], + [-51.90019531249999, 69.60478515625007], + [-51.98842773437494, 69.55], + [-52.11259765625002, 69.48911132812503], + [-52.77045898437501, 69.36391601562502], + [-53.00312, 69.34262695312503], + [-53.57841796874996, 69.25664062500002], + [-53.75434570312498, 69.26015625000002], + [-53.79316406250001, 69.26420898437505], + [-53.90205078124998, 69.30200195312503], + [-54.051171875, 69.337158203125], + [-54.12104492187501, 69.36440429687502], + [-54.18271484374995, 69.40351562500001], + [-54.15815429687501, 69.42778320312507], + [-54.04736328125, 69.43730468750005], + [-53.88959960937501, 69.43666992187502], + [-53.65830078124998, 69.46513671875005], + [-53.722265625000034, 69.49072265625], + [-53.78305664062498, 69.50629882812498], + [-53.825, 69.54033203124999], + [-53.921484375000034, 69.53369140624997], + [-53.99375, 69.55317382812504], + [-54.133203125, 69.56542968750003], + [-54.49697265624994, 69.57719726562505], + [-54.73413085937503, 69.61054687499998], + [-54.804101562499994, 69.63051757812497], + [-54.86577148437493, 69.6650390625], + [-54.91914062499998, 69.71362304687503], + [-54.84125976562501, 69.90190429687502], + [-54.78789062499996, 69.94985351562502], + [-54.66459960937499, 69.96567382812503], + [-54.36308593750002, 69.92382812500006], + [-54.322607421875034, 69.94189453125], + [-54.652441406250006, 70.01118164062498], + [-54.77363281249998, 70.05253906250007], + [-54.80932617187497, 70.08510742187505], + [-54.83076171875001, 70.13295898437502], + [-54.83046875000002, 70.16108398437498], + [-54.81557617187502, 70.18940429687498], + [-54.78623046874998, 70.21777343749997], + [-54.705957031249966, 70.25615234374999], + [-54.37163085937499, 70.31728515625], + [-54.007226562499994, 70.29643554687502], + [-53.37514648437502, 70.22128906249998], + [-53.296728515625034, 70.20537109375002], + [-53.102929687499966, 70.14086914062503], + [-52.73115234375001, 69.94472656250005] + ] + ], + [ + [ + [-51.67514648437498, 70.855224609375], + [-51.808691406250006, 70.85253906249997], + [-52.11938476562497, 70.87065429687502], + [-52.144189453124966, 70.88227539062501], + [-52.14804687499995, 70.90439453124998], + [-52.10673828124999, 70.96801757812497], + [-51.96982421874998, 70.97646484375], + [-51.80693359375002, 70.94165039062503], + [-51.63134765625003, 70.89213867187505], + [-51.60693359375003, 70.86884765625001], + [-51.67514648437498, 70.855224609375] + ] + ], + [ + [ + [-25.43232421875001, 70.92133789062495], + [-25.397216796874943, 70.86245117187505], + [-25.39365234374995, 70.83466796874998], + [-25.4013671875, 70.811279296875], + [-25.420800781249966, 70.794580078125], + [-25.467773437499943, 70.77968749999997], + [-25.380126953124943, 70.740576171875], + [-25.351660156250006, 70.71430664062498], + [-25.346337890624994, 70.69331054687495], + [-25.402246093749994, 70.65268554687503], + [-25.80058593749999, 70.59892578125002], + [-25.911328124999983, 70.57304687500007], + [-26.049707031250023, 70.509130859375], + [-26.217871093749977, 70.45405273437498], + [-26.273876953124955, 70.45434570312503], + [-26.339160156250017, 70.51142578125004], + [-26.604687499999926, 70.55336914062497], + [-27.104785156250017, 70.53149414062503], + [-27.690039062499977, 70.47866210937502], + [-27.89799804687496, 70.45400390624997], + [-28.003027343749977, 70.46713867187498], + [-28.03525390624995, 70.48681640625], + [-28.03681640625001, 70.51435546875001], + [-27.96752929687503, 70.59482421875006], + [-27.939550781250006, 70.61528320312505], + [-27.805273437500006, 70.64204101562498], + [-27.714208984375006, 70.71279296875002], + [-27.743994140625034, 70.78974609374998], + [-27.70893554687501, 70.897119140625], + [-27.61723632812496, 70.91376953125001], + [-27.3875, 70.87563476562497], + [-27.238867187499977, 70.86757812500002], + [-26.9755859375, 70.8626953125], + [-26.621777343749955, 70.87563476562497], + [-26.337451171874932, 70.91923828125007], + [-25.81889648437499, 71.04365234375001], + [-25.726806640624943, 71.04204101562505], + [-25.660839843749926, 70.99794921875002], + [-25.6123046875, 70.97631835937497], + [-25.458251953124943, 70.94252929687502], + [-25.43232421875001, 70.92133789062495] + ] + ], + [ + [ + [-53.53520507812493, 71.04082031250005], + [-53.628808593749994, 71.03427734375006], + [-53.897558593750034, 71.08515625000004], + [-53.94116210937494, 71.10429687500002], + [-53.9578125, 71.12773437499999], + [-53.94746093749998, 71.15551757812497], + [-53.86186523437496, 71.20722656250004], + [-53.70097656249996, 71.28300781250002], + [-53.58447265625003, 71.29707031249995], + [-53.512353515624994, 71.24960937500006], + [-53.44140625, 71.18583984375002], + [-53.43212890625, 71.15341796875], + [-53.436914062499994, 71.11523437500003], + [-53.45546874999994, 71.08291015625002], + [-53.48779296874997, 71.05629882812502], + [-53.53520507812493, 71.04082031250005] + ] + ], + [ + [ + [-55.01689453124999, 72.79111328125003], + [-55.158203125, 72.723291015625], + [-55.273583984374966, 72.68432617187503], + [-55.523632812499926, 72.56840820312505], + [-55.56660156249998, 72.56435546875002], + [-55.63413085937498, 72.57944335937498], + [-55.6865234375, 72.60991210937507], + [-55.78100585937497, 72.61723632812505], + [-55.81391601562501, 72.63647460937497], + [-55.82714843749994, 72.65214843750005], + [-55.869042968749966, 72.66210937500006], + [-55.93569335937494, 72.668359375], + [-56.04267578124998, 72.65644531249995], + [-56.140869140625, 72.66845703125], + [-56.214794921874955, 72.71918945312495], + [-56.07807617187501, 72.75322265625005], + [-55.99355468750002, 72.78227539062502], + [-55.66645507812498, 72.79370117187503], + [-55.57421875000003, 72.78037109374998], + [-55.51625976562494, 72.78071289062495], + [-55.42792968749998, 72.78862304687507], + [-55.23466796874996, 72.82480468749998], + [-55.20581054687503, 72.84165039062503], + [-55.03300781249999, 72.82050781249998], + [-55.01689453124999, 72.79111328125003] + ] + ], + [ + [ + [-18.000537109374932, 75.40732421875003], + [-17.921191406249932, 75.30151367187497], + [-17.885888671874937, 75.204443359375], + [-17.76240234375001, 75.14277343749995], + [-17.497851562499932, 75.15151367187497], + [-17.391992187499937, 75.03691406250007], + [-17.58603515624995, 74.99277343750003], + [-18.35332031249996, 75.01044921875001], + [-18.670800781249966, 75.00166015624998], + [-18.891308593749955, 75.07216796874997], + [-18.882470703124937, 75.19565429687498], + [-18.856054687499977, 75.31914062500002], + [-18.63554687499999, 75.38964843749997], + [-18.450341796874994, 75.32797851562503], + [-18.229882812499937, 75.37207031250006], + [-18.000537109374932, 75.40732421875003] + ] + ], + [ + [ + [-18.58261718749995, 76.042333984375], + [-18.697265624999943, 76.01586914062503], + [-19.085351562499966, 76.43037109375001], + [-19.085351562499966, 76.58027343749998], + [-19.05888671874999, 76.694970703125], + [-18.882470703124937, 76.70380859375001], + [-18.732617187499955, 76.64204101562495], + [-18.662011718749966, 76.40390625000003], + [-18.58261718749995, 76.042333984375] + ] + ], + [ + [ + [-71.667333984375, 77.32529296874998], + [-72.02353515625, 77.31645507812505], + [-72.3744140625, 77.35541992187498], + [-72.49492187499993, 77.38554687499999], + [-72.48955078124999, 77.43164062499997], + [-72.43642578125002, 77.44755859375002], + [-72.24677734375001, 77.463525390625], + [-72.08906249999995, 77.46708984374999], + [-71.98276367187495, 77.45996093749997], + [-71.73291015624994, 77.43164062499997], + [-71.5521484375, 77.40327148437495], + [-71.43344726562495, 77.394384765625], + [-71.46708984374996, 77.353662109375], + [-71.667333984375, 77.32529296874998] + ] + ], + [ + [ + [-17.953710937499977, 77.642333984375], + [-18.14799804687496, 77.642333984375], + [-18.22001953124999, 77.66835937499997], + [-18.174023437499926, 77.71435546875], + [-17.903710937500023, 77.86259765625002], + [-17.81357421874995, 77.87460937499998], + [-17.681445312499932, 77.85859375000001], + [-17.641357421874943, 77.78247070312503], + [-17.72949218749997, 77.70639648437498], + [-17.953710937499977, 77.642333984375] + ] + ], + [ + [ + [-18.99716796874995, 77.97377929687502], + [-19.129492187499977, 77.93852539062502], + [-19.217626953125006, 78.0443359375], + [-19.297021484375023, 78.18544921874997], + [-19.31469726562497, 78.34418945312498], + [-19.111816406249943, 78.423583984375], + [-19.00595703124995, 78.44121093750005], + [-18.935400390624977, 78.423583984375], + [-18.953027343749994, 78.35297851562501], + [-18.953027343749994, 78.21191406250003], + [-18.882470703124937, 78.114892578125], + [-18.99716796874995, 77.97377929687502] + ] + ], + [ + [ + [-17.6125, 79.82587890624995], + [-18.035839843749926, 79.71123046875005], + [-18.662011718749966, 79.72001953125005], + [-19.032421874999926, 79.77294921875], + [-19.13828125, 79.85234375000002], + [-18.99716796874995, 79.94047851562502], + [-18.54736328124997, 80.01108398437503], + [-17.98291015625, 80.05517578125003], + [-17.471386718749955, 80.02871093749997], + [-17.400830078124983, 79.94047851562502], + [-17.6125, 79.82587890624995] + ] + ], + [ + [ + [-18.664746093749983, 81.84648437500002], + [-18.767675781250006, 81.81430664062503], + [-19.031445312499983, 81.82719726562499], + [-19.369287109374994, 81.91728515625005], + [-19.594482421874943, 81.99125976562502], + [-19.610546874999926, 82.078125], + [-19.494726562499977, 82.11669921875], + [-19.31455078124995, 82.123193359375], + [-19.06689453125003, 82.049169921875], + [-18.812695312499926, 81.94946289062503], + [-18.664746093749983, 81.84648437500002] + ] + ], + [ + [ + [-44.86455078124999, 82.08364257812502], + [-45.06743164062502, 82.06601562499998], + [-45.49077148437493, 82.17182617187495], + [-46.161035156249966, 82.27768554687503], + [-46.75190429687501, 82.34819335937502], + [-47.307519531249966, 82.53339843749998], + [-47.351220703124966, 82.59921874999998], + [-47.27226562499996, 82.65693359375001], + [-46.787207031250006, 82.66572265625004], + [-46.399169921875, 82.692138671875], + [-45.41137695312503, 82.57753906250002], + [-44.91748046875003, 82.48051757812505], + [-44.749902343749994, 82.40112304687503], + [-44.77636718749997, 82.24238281250004], + [-44.86455078124999, 82.08364257812502] + ] + ], + [ + [ + [-29.952880859375, 83.56484374999997], + [-28.991992187500017, 83.50478515625], + [-28.483789062499937, 83.43491210937498], + [-28.37705078124995, 83.43720703125001], + [-27.688378906249994, 83.41040039062506], + [-27.034423828125, 83.37690429687498], + [-25.947412109374966, 83.28964843750003], + [-25.795068359374994, 83.26098632812497], + [-25.91245117187495, 83.2375], + [-26.18271484374992, 83.22138671874998], + [-27.57187, 83.192626953125], + [-30.09199218750001, 83.15742187500001], + [-31.53398437499999, 83.08891601562502], + [-31.99267578125, 83.0853515625], + [-32.03271484374997, 82.98344726562502], + [-31.836767578125034, 82.97788085937503], + [-31.515576171874955, 82.99165039062501], + [-30.38603515624996, 83.09370117187501], + [-29.963574218749955, 83.11049804687497], + [-29.175, 83.10200195312501], + [-28.151464843750006, 83.06372070312503], + [-27.738525390625, 83.07719726562502], + [-27.002050781249977, 83.06718750000002], + [-26.140820312499926, 83.09643554687503], + [-25.12338867187495, 83.15961914062501], + [-24.845166015624926, 83.01855468749997], + [-24.47031249999995, 82.87739257812498], + [-24.17363281249999, 82.89301757812498], + [-23.91953125, 82.88510742187506], + [-23.83354492187499, 82.83876953125002], + [-23.694628906249932, 82.81914062500002], + [-23.406933593749926, 82.82968750000003], + [-22.52490234375, 82.78916015625003], + [-21.919677734375, 82.71640625000006], + [-21.691796875000023, 82.68251953125], + [-21.582519531249943, 82.6341796875], + [-21.520654296874966, 82.59541015625001], + [-21.61577148437499, 82.54770507812498], + [-21.993945312499932, 82.46279296875], + [-22.472558593749994, 82.38471679687498], + [-23.118066406249966, 82.32470703125003], + [-23.862207031249966, 82.28706054687498], + [-29.57939453124996, 82.16118164062502], + [-29.77275390624999, 82.13125], + [-29.887402343749983, 82.05483398437502], + [-29.810986328124955, 81.95546875000002], + [-29.543847656249994, 81.93994140624997], + [-28.91943359374997, 81.99589843749999], + [-27.839501953124966, 82.04887695312505], + [-27.045947265624932, 82.04633789062498], + [-25.148828124999966, 82.001123046875], + [-24.58916015624999, 81.88281250000006], + [-24.293066406249977, 81.70097656250005], + [-23.63652343749999, 81.74184570312502], + [-23.49614257812499, 81.77304687499998], + [-23.392968749999937, 81.82719726562499], + [-23.31054687500003, 81.88530273437502], + [-23.248779296874943, 81.94726562500003], + [-23.179833984374937, 81.98945312500001], + [-23.103710937499983, 82.01181640625003], + [-22.940087890624937, 82.03051757812503], + [-22.563378906249937, 82.05302734374999], + [-21.57553710937495, 82.07495117187503], + [-21.337988281249977, 82.068701171875], + [-21.167382812499937, 81.98383789062504], + [-21.130322265624926, 81.93422851562505], + [-21.11796874999999, 81.86962890625003], + [-21.123437499999966, 81.78994140624997], + [-21.14658203124995, 81.695166015625], + [-21.230517578125017, 81.60136718749999], + [-21.50390625000003, 81.4375], + [-21.72363281250003, 81.34824218750003], + [-21.960742187500017, 81.283935546875], + [-22.41528320312497, 81.13710937500002], + [-22.57275390625, 81.09790039062503], + [-23.07246093750001, 80.92670898437495], + [-23.19638671874995, 80.84736328124995], + [-23.20366210937499, 80.78925781250001], + [-23.11772460937499, 80.77817382812498], + [-22.972851562499955, 80.83281250000002], + [-22.9189453125, 80.87182617187497], + [-22.82568359375, 80.91264648437502], + [-22.089404296874932, 81.02021484375001], + [-21.931347656249955, 81.05019531249997], + [-21.44975585937499, 81.17817382812504], + [-21.14243164062492, 81.22617187500003], + [-20.88974609374995, 81.27636718750006], + [-20.755859374999943, 81.31201171875003], + [-20.015722656249977, 81.56435546875002], + [-19.62993164062499, 81.63989257812503], + [-19.224755859374937, 81.64003906249997], + [-19.152978515624966, 81.51220703125006], + [-18.667382812499994, 81.492431640625], + [-18.45654296875003, 81.49794921875], + [-18.117871093749955, 81.46684570312505], + [-17.969384765624994, 81.44116210937506], + [-17.71665039062492, 81.42817382812498], + [-17.456054687499943, 81.397705078125], + [-17.226220703125023, 81.430419921875], + [-17.15903320312492, 81.450927734375], + [-16.93706054687499, 81.54389648437501], + [-16.637109375, 81.626220703125], + [-16.358984375, 81.72905273437499], + [-16.266796874999955, 81.75395507812499], + [-16.12070312499995, 81.776611328125], + [-15.968896484375023, 81.78549804687503], + [-15.555517578125006, 81.83359374999998], + [-15.450634765624955, 81.83696289062505], + [-15.227490234374955, 81.82177734375006], + [-14.241992187500017, 81.81386718750005], + [-13.704492187500023, 81.78906250000006], + [-12.956005859374955, 81.72021484374997], + [-12.434423828125006, 81.68251953125002], + [-12.19287109375, 81.64912109374995], + [-11.841113281250017, 81.57753906250002], + [-11.557470703124949, 81.50263671874995], + [-11.425537109374972, 81.480615234375], + [-11.430664062499972, 81.45683593750005], + [-11.528808593749972, 81.42402343750001], + [-12.231347656250023, 81.309228515625], + [-12.46123046874996, 81.23251953125], + [-13.126220703124972, 81.08779296875], + [-13.451171875, 81.0380859375], + [-13.80429687499992, 81.01860351562502], + [-14.197363281249977, 81.01391601562506], + [-14.452343749999955, 80.99311523437498], + [-14.490136718749937, 80.97329101562502], + [-14.308496093749966, 80.91323242187497], + [-14.228564453124932, 80.87045898437503], + [-14.240185546874983, 80.83242187500002], + [-14.43125, 80.77607421875001], + [-14.503564453124994, 80.76328125000006], + [-15.194238281249937, 80.72143554687497], + [-15.542675781249955, 80.65039062499997], + [-15.997509765624983, 80.64169921874998], + [-16.31894531249992, 80.64980468750002], + [-16.76059570312492, 80.573388671875], + [-16.587792968749994, 80.51123046875006], + [-16.42944335937497, 80.48422851562506], + [-15.937255859374972, 80.42763671874997], + [-15.9326171875, 80.3951171875], + [-16.167773437499932, 80.32939453125005], + [-16.48876953124997, 80.25195312499997], + [-16.868408203124943, 80.19824218750006], + [-17.011132812499994, 80.190185546875], + [-17.19116210937497, 80.20366210937499], + [-17.35722656249996, 80.20078125000003], + [-17.722851562499955, 80.17602539062497], + [-18.070947265624994, 80.17207031249995], + [-18.692578124999983, 80.20708007812499], + [-19.029003906249955, 80.24760742187499], + [-19.206005859374955, 80.26162109375], + [-19.429199218749943, 80.25771484375], + [-19.515039062500023, 80.24140624999995], + [-19.86679687499992, 80.14472656249998], + [-20.039501953124926, 80.07871093750003], + [-20.150146484375, 80.01123046874997], + [-20.197412109374937, 79.937646484375], + [-20.181347656249955, 79.85795898437502], + [-20.138476562499932, 79.803369140625], + [-20.068847656249943, 79.773779296875], + [-19.985400390625017, 79.755859375], + [-19.83930664062501, 79.74648437500002], + [-19.51787109374996, 79.75537109374997], + [-19.391503906249994, 79.750341796875], + [-19.35302734374997, 79.73417968750002], + [-19.283593749999937, 79.68315429687502], + [-19.295996093749977, 79.63500976562497], + [-19.354199218749926, 79.56733398437495], + [-19.399316406249966, 79.48837890625003], + [-19.43120117187499, 79.39814453125004], + [-19.414013671874955, 79.34882812500001], + [-19.283984374999932, 79.33803710937505], + [-19.222949218749932, 79.34160156250005], + [-19.152197265625006, 79.32539062499995], + [-19.071777343749943, 79.289453125], + [-19.011328124999977, 79.25146484375], + [-18.970800781249977, 79.21137695312498], + [-18.99199218749996, 79.17836914062502], + [-19.07495117187497, 79.15234375000006], + [-19.26220703125003, 79.12299804687501], + [-19.723046874999937, 79.06503906250003], + [-19.76982421874996, 79.04736328124997], + [-19.806054687499966, 79.012109375], + [-19.831591796874932, 78.95913085937502], + [-19.88720703125, 78.91093749999999], + [-19.972900390624943, 78.86762695312495], + [-20.050488281249955, 78.84179687500003], + [-20.199902343749926, 78.830322265625], + [-20.395703124999926, 78.82880859374995], + [-20.61557617187495, 78.80390625000004], + [-21.133740234374926, 78.65864257812501], + [-21.141455078124977, 78.64252929687501], + [-20.947460937499983, 78.59589843750001], + [-20.955664062499977, 78.55502929687503], + [-21.194775390624926, 78.37983398437495], + [-21.260205078124926, 78.29301757812505], + [-21.31201171875, 78.17397460937502], + [-21.39726562499996, 78.073583984375], + [-21.515966796874977, 77.99184570312497], + [-21.63266601562495, 77.8974609375], + [-21.74755859375, 77.790625], + [-21.729589843749977, 77.70854492187499], + [-21.578906249999932, 77.65136718749997], + [-21.379687499999932, 77.69755859375005], + [-21.13188476562499, 77.84721679687499], + [-20.862597656249932, 77.91186523437503], + [-20.571826171874932, 77.89155273437495], + [-20.318603515624943, 77.86196289062497], + [-19.995117187499943, 77.80341796874995], + [-19.724316406249926, 77.76694335937498], + [-19.490429687499983, 77.71889648437497], + [-19.393994140624955, 77.67836914062497], + [-19.29687, 77.62128906249998], + [-19.29609375000001, 77.58525390624999], + [-19.46752929687503, 77.56582031250005], + [-19.52412109375001, 77.57197265624995], + [-19.95322265624995, 77.666357421875], + [-20.162060546874926, 77.68984375], + [-20.439208984375, 77.66162109375003], + [-20.680810546875023, 77.61899414062503], + [-20.463769531249937, 77.44731445312505], + [-20.23193359374997, 77.36840820312497], + [-19.80864257812496, 77.332373046875], + [-19.587597656249955, 77.29443359375], + [-19.426416015624994, 77.24599609375], + [-19.30029296874997, 77.22236328124995], + [-19.131005859374937, 77.23276367187503], + [-18.90341796874995, 77.28046874999998], + [-18.585888671874983, 77.28305664062498], + [-18.442626953124943, 77.259375], + [-18.339013671874966, 77.21528320312504], + [-18.292382812499966, 77.13286132812502], + [-18.302734374999943, 77.01210937500002], + [-18.337255859374977, 76.92119140624999], + [-18.39604492187496, 76.86005859374995], + [-18.51030273437496, 76.77817382812498], + [-18.60576171874996, 76.76328125000006], + [-18.740283203125017, 76.767724609375], + [-18.865332031250006, 76.78452148437503], + [-18.981005859374932, 76.81376953125005], + [-19.15634765624995, 76.83657226562497], + [-19.5087890625, 76.861083984375], + [-19.864941406249983, 76.91440429687503], + [-20.064355468750023, 76.92758789062503], + [-20.48671875, 76.92080078125], + [-20.942089843749955, 76.88701171875005], + [-20.959912109374955, 76.84267578124997], + [-21.614697265624926, 76.68789062499997], + [-21.749023437499943, 76.68999023437505], + [-21.930810546874937, 76.74316406250003], + [-22.18525390625001, 76.79409179687502], + [-22.334326171875006, 76.79370117187503], + [-22.55454101562492, 76.72924804687506], + [-22.609326171874983, 76.70429687500004], + [-22.606640624999955, 76.68076171875003], + [-22.44443359374995, 76.62504882812505], + [-22.378613281249955, 76.61220703125], + [-22.294873046874955, 76.60146484375005], + [-22.00371093749996, 76.58808593749998], + [-21.877343749999966, 76.57348632812503], + [-21.758105468749932, 76.40053710937497], + [-21.56909179687497, 76.29370117187506], + [-21.488232421874926, 76.271875], + [-21.41684570312495, 76.26401367187503], + [-21.185449218749966, 76.26796875000005], + [-20.88740234375001, 76.30400390625002], + [-20.78330078124995, 76.275146484375], + [-20.563818359374977, 76.23984375], + [-20.43540039062495, 76.23105468749998], + [-20.27929687500003, 76.23247070312502], + [-20.10361328124992, 76.21909179687503], + [-19.86289062499992, 76.12065429687505], + [-19.957714843749955, 75.9966796875], + [-19.80688476562497, 75.89736328125002], + [-19.56601562499992, 75.79497070312505], + [-19.508984374999926, 75.75751953124995], + [-19.485693359374977, 75.689599609375], + [-19.48027343749996, 75.644775390625], + [-19.462158203125, 75.603857421875], + [-19.43144531249996, 75.56689453125003], + [-19.39951171874992, 75.49443359375002], + [-19.366455078124943, 75.38642578124995], + [-19.37529296874996, 75.298193359375], + [-19.425976562499983, 75.22983398437503], + [-19.52636718750003, 75.18022460937505], + [-19.67626953125, 75.14936523437498], + [-19.798486328124937, 75.15747070312503], + [-19.89316406249995, 75.20454101562501], + [-20.026562499999955, 75.25468750000002], + [-20.198681640624926, 75.30795898437503], + [-20.484960937500006, 75.31425781249999], + [-20.90585937499995, 75.15693359375001], + [-21.093847656249977, 75.149072265625], + [-21.246533203124983, 75.1333984375], + [-21.409423828124943, 75.06479492187498], + [-21.649316406249966, 75.02343749999997], + [-21.861035156249955, 75.03984375000005], + [-22.232861328124926, 75.11972656249998], + [-22.09775390624995, 75.06635742187501], + [-21.90434570312496, 75.00390625], + [-21.783935546874943, 74.97148437500005], + [-21.69511718749999, 74.96445312500003], + [-21.59765625000003, 74.97197265625007], + [-21.457324218749932, 74.99755859375003], + [-21.140576171874983, 75.06855468750004], + [-21.056689453124932, 75.07939453125002], + [-20.985791015624983, 75.07436523437497], + [-20.92778320312496, 75.05341796874995], + [-20.86108398437497, 74.992578125], + [-20.78569335937499, 74.89174804687497], + [-20.7953125, 74.80595703124999], + [-20.889990234375006, 74.73520507812498], + [-20.97099609374999, 74.68984374999997], + [-21.038281249999926, 74.66987304687498], + [-21.038476562499966, 74.65415039062498], + [-20.86157226562497, 74.63593750000001], + [-20.611132812499932, 74.72822265624998], + [-20.53173828125003, 74.84291992187497], + [-20.41708984374995, 74.9751953125], + [-20.214257812499994, 75.01923828125001], + [-19.98491210937499, 74.9751953125], + [-19.799707031250023, 74.851708984375], + [-19.537792968749955, 74.62456054687499], + [-19.42734375, 74.60092773437498], + [-19.287011718750023, 74.54638671875006], + [-19.22509765625, 74.4794921875], + [-19.241650390624926, 74.40019531250002], + [-19.271582031249977, 74.342626953125], + [-19.31494140625003, 74.306787109375], + [-19.36914062499997, 74.28403320312498], + [-19.466748046874955, 74.26948242187495], + [-19.646240234375, 74.257958984375], + [-20.047558593749983, 74.28227539062507], + [-20.256445312499977, 74.2828125], + [-20.23056640624995, 74.20463867187507], + [-20.653125, 74.13735351562502], + [-21.129443359374932, 74.11088867187505], + [-21.58056640625, 74.16347656250002], + [-21.954931640624977, 74.24428710937497], + [-21.83203124999997, 74.35727539062498], + [-21.761962890625, 74.48276367187506], + [-21.942919921874932, 74.56572265624999], + [-21.982617187499926, 74.56748046875], + [-21.920166015625, 74.43920898437497], + [-21.97270507812496, 74.3900390625], + [-22.177197265624955, 74.33017578125006], + [-22.32158203124999, 74.30253906250002], + [-22.334326171875006, 74.28637695312503], + [-22.26352539062495, 74.27241210937501], + [-22.21733398437496, 74.24550781250005], + [-22.195654296874977, 74.20571289062502], + [-22.22001953124999, 74.16552734375], + [-22.29057617187496, 74.125], + [-22.328955078124977, 74.090966796875], + [-22.335253906250017, 74.06342773437498], + [-22.27055664062496, 74.02988281249998], + [-22.134814453124932, 73.99047851562503], + [-21.987695312499994, 73.97099609375007], + [-21.298291015624955, 73.96245117187502], + [-21.022216796874943, 73.94125976562506], + [-20.36728515624992, 73.8482421875], + [-20.337988281249977, 73.81967773437498], + [-20.448925781249926, 73.65302734374995], + [-20.509667968749966, 73.49287109375001], + [-20.63671875, 73.46357421874998], + [-21.325878906249983, 73.456640625], + [-21.547998046874937, 73.43168945312507], + [-21.87285156249996, 73.35810546874998], + [-22.18505859374997, 73.26987304687506], + [-22.34687, 73.26923828125001], + [-22.9875, 73.34624023437507], + [-23.23320312499999, 73.39770507812497], + [-23.76059570312495, 73.54311523437502], + [-24.157714843749943, 73.76445312499999], + [-24.339892578124932, 73.67241210937499], + [-24.451269531249977, 73.628515625], + [-24.566308593749966, 73.60576171874999], + [-24.67724609375, 73.602197265625], + [-24.784179687499943, 73.617919921875], + [-24.905468749999955, 73.65278320312498], + [-25.10883789062501, 73.73369140625005], + [-25.351464843749966, 73.813623046875], + [-25.521289062500017, 73.85161132812499], + [-25.527734375, 73.84082031250003], + [-25.427441406249983, 73.79379882812503], + [-25.28051757812497, 73.739599609375], + [-24.908886718749955, 73.58017578125003], + [-24.7783203125, 73.539892578125], + [-24.79125976562497, 73.51127929687502], + [-25.02587890624997, 73.48579101562498], + [-25.310742187499926, 73.431005859375], + [-25.450097656249994, 73.39067382812505], + [-25.665429687499966, 73.292822265625], + [-25.740185546874926, 73.27763671875005], + [-26.062304687500017, 73.25302734375], + [-26.168554687499977, 73.25903320312497], + [-26.40673828125, 73.31293945312504], + [-26.765478515625006, 73.34819335937502], + [-26.976708984374966, 73.37954101562502], + [-27.270410156250023, 73.43627929687503], + [-27.169384765624955, 73.374169921875], + [-26.603613281249977, 73.27949218749995], + [-26.541845703125006, 73.24897460937495], + [-26.657617187499966, 73.19213867187503], + [-26.72861328124995, 73.17138671874997], + [-26.86333007812496, 73.16699218750006], + [-27.061865234374977, 73.17890624999998], + [-27.264892578124943, 73.17646484375004], + [-27.472363281249955, 73.15981445312502], + [-27.561621093750006, 73.13847656250002], + [-27.53256835937495, 73.11254882812497], + [-27.483154296875, 73.08891601562505], + [-27.413330078125, 73.06762695312497], + [-27.348046875000023, 73.06782226562501], + [-27.189892578124955, 73.13242187500003], + [-27.070019531249955, 73.13701171874999], + [-26.75322265624999, 73.12109375000003], + [-26.432861328125, 73.17148437499998], + [-26.20200195312495, 73.19321289062498], + [-26.028759765624926, 73.19877929687505], + [-25.399023437499977, 73.27578125000002], + [-25.26831054687497, 73.361962890625], + [-25.057031250000023, 73.396484375], + [-24.58720703124996, 73.42294921874998], + [-24.132666015625006, 73.40937], + [-23.89897460937499, 73.398291015625], + [-23.709619140624966, 73.31679687500002], + [-23.455761718749926, 73.25908203124999], + [-23.244091796874983, 73.19326171875], + [-22.996044921874983, 73.17158203125001], + [-22.852294921875, 73.08398437500003], + [-22.45019531249997, 72.98608398437497], + [-22.194238281249966, 72.96503906250004], + [-22.036328124999955, 72.91845703125006], + [-22.02348632812499, 72.72080078125], + [-22.006738281249966, 72.63544921875004], + [-22.074804687499977, 72.39921875000005], + [-22.280224609374983, 72.34477539062505], + [-22.2392578125, 72.22026367187499], + [-22.29321289062497, 72.11953125], + [-22.497509765624926, 72.15776367187505], + [-22.70683593749996, 72.22392578125005], + [-23.2080078125, 72.3265625], + [-23.67436523437496, 72.39257812500003], + [-23.85556640624995, 72.45244140625005], + [-24.06904296875001, 72.49873046874998], + [-24.358593749999926, 72.68730468750002], + [-24.547216796874977, 72.921728515625], + [-24.629980468749977, 73.03764648437499], + [-24.788574218749943, 73.04414062499998], + [-24.992480468750017, 73.01308593749997], + [-25.170556640624966, 72.98027343750002], + [-25.25585937500003, 72.92412109375005], + [-25.86083984375, 72.846875], + [-26.080468749999966, 72.79399414062499], + [-26.205761718749926, 72.79555664062497], + [-26.657617187499966, 72.71582031249997], + [-26.47656250000003, 72.67763671875002], + [-26.392089843749943, 72.67280273437501], + [-26.20947265624997, 72.69438476562505], + [-26.09980468750001, 72.72192382812497], + [-25.687988281249943, 72.79736328124997], + [-25.35742187500003, 72.81025390625004], + [-25.2375, 72.8427734375], + [-24.984814453124955, 72.88920898437505], + [-24.81333007812492, 72.90151367187497], + [-24.789453124999937, 72.88974609375006], + [-24.771044921874932, 72.86865234375003], + [-24.65, 72.58251953125], + [-24.70068359374997, 72.50634765625003], + [-24.836914062499943, 72.47333984374995], + [-25.12802734374992, 72.41918945312503], + [-25.203710937499977, 72.39296875000002], + [-25.117871093749983, 72.34697265625005], + [-24.84418945312501, 72.39033203125001], + [-24.66684570312492, 72.437353515625], + [-24.57236328124995, 72.42021484375005], + [-24.417187499999955, 72.34824218750006], + [-24.24228515624995, 72.31132812499999], + [-23.797705078124977, 72.20073242187502], + [-23.587109374999955, 72.13979492187505], + [-23.290917968750023, 72.08100585937495], + [-22.955761718749955, 71.99941406250005], + [-22.86850585937492, 71.97065429687495], + [-22.562158203124966, 71.92827148437502], + [-22.49687, 71.913818359375], + [-22.37021484374995, 71.76982421874999], + [-22.264501953124977, 71.75380859375], + [-21.959667968749955, 71.74467773437502], + [-22.013330078124966, 71.688818359375], + [-22.31103515624997, 71.56455078125], + [-22.464990234374966, 71.52490234375], + [-22.503222656249932, 71.50043945312498], + [-22.48857421874999, 71.45668945312497], + [-22.479638671874937, 71.38344726562497], + [-22.417578125, 71.24868164062505], + [-22.347753906249977, 71.37348632812498], + [-22.29902343750001, 71.43232421874998], + [-22.233789062499937, 71.449951171875], + [-22.169580078124994, 71.4525390625], + [-21.96142578124997, 71.50820312499997], + [-21.75224609374999, 71.47832031250002], + [-21.697949218749926, 71.33745117187502], + [-21.67119140624999, 71.20595703125005], + [-21.689648437499926, 71.0923828125], + [-21.66660156249995, 70.915869140625], + [-21.674511718749955, 70.85629882812503], + [-21.625146484374937, 70.80463867187498], + [-21.573925781249983, 70.59047851562497], + [-21.522656249999926, 70.52622070312503], + [-21.625537109374932, 70.46855468749999], + [-21.943505859374966, 70.44345703125003], + [-22.06928710937501, 70.47187], + [-22.38413085937492, 70.46240234375], + [-22.384521484375, 70.51313476562501], + [-22.399853515624926, 70.57128906249997], + [-22.40112304687503, 70.61191406249998], + [-22.422119140624943, 70.64868164062503], + [-22.437011718749943, 70.860009765625], + [-22.526074218749983, 70.80781250000001], + [-22.531347656249977, 70.764990234375], + [-22.55502929687492, 70.721435546875], + [-22.60966796874996, 70.493310546875], + [-22.690673828124943, 70.43730468750002], + [-22.942578124999926, 70.45078125000003], + [-23.19062, 70.44248046875], + [-23.327832031249983, 70.45097656250007], + [-23.791796875000017, 70.55517578124997], + [-23.97138671875001, 70.64946289062499], + [-24.13037109374997, 70.79106445312507], + [-24.22851562499997, 70.92338867187502], + [-24.26572265624992, 71.04633789062504], + [-24.377001953124932, 71.14638671875], + [-24.562207031249926, 71.22353515624997], + [-24.781005859375, 71.28608398437501], + [-25.03339843750001, 71.33393554687501], + [-25.25498046874992, 71.39570312499998], + [-25.44580078125, 71.47124023437499], + [-25.655859374999977, 71.53002929687497], + [-25.885156249999966, 71.571923828125], + [-26.21142578125, 71.58994140625], + [-26.68852539062496, 71.583349609375], + [-27.010644531250023, 71.63056640625004], + [-27.08720703124999, 71.6265625], + [-27.16230468750001, 71.60219726562502], + [-27.107031250000034, 71.53266601562498], + [-26.737207031250023, 71.50078125000007], + [-26.452001953125006, 71.493505859375], + [-26.07407226562492, 71.49804687500003], + [-25.842724609374955, 71.48017578124995], + [-25.75781249999997, 71.43994140625], + [-25.699414062499983, 71.368310546875], + [-25.667578124999977, 71.26533203124995], + [-25.74223632812499, 71.18359375], + [-26.014111328124955, 71.09282226562499], + [-26.15751953124996, 71.05029296875003], + [-26.575976562499932, 70.96870117187501], + [-26.717919921874994, 70.95048828125005], + [-27.067333984374955, 70.94492187499998], + [-27.335693359375, 70.95278320312497], + [-27.68876953124999, 70.99345703124999], + [-27.888916015625, 71.001708984375], + [-28.303125, 71.00717773437503], + [-28.39843749999997, 70.99291992187497], + [-28.29155273437496, 70.94931640624998], + [-28.115869140624937, 70.92460937500002], + [-27.99218749999997, 70.89521484374998], + [-27.979296875000017, 70.839501953125], + [-28.023876953124955, 70.75678710937501], + [-28.06987304687499, 70.69902343750005], + [-28.145654296874966, 70.65566406250002], + [-28.41748046875003, 70.57353515624999], + [-28.53007812499996, 70.54755859375001], + [-29.036816406249983, 70.46152343749998], + [-29.07207031249999, 70.444970703125], + [-28.953466796874977, 70.44721679687501], + [-28.63310546874999, 70.47778320312503], + [-28.540917968749937, 70.476904296875], + [-28.015039062500023, 70.40224609375], + [-27.596093750000023, 70.40668945312501], + [-26.747265624999926, 70.47553710937501], + [-26.677490234375, 70.47421875], + [-26.621777343749955, 70.46337890625], + [-26.5654296875, 70.43754882812499], + [-26.508398437500034, 70.396630859375], + [-26.576806640625023, 70.35708007812502], + [-26.770654296874994, 70.31889648437507], + [-27.07250976562503, 70.28120117187501], + [-27.203222656250006, 70.25571289062498], + [-27.32812, 70.21713867187503], + [-27.560839843749932, 70.12446289062498], + [-27.628857421874955, 70.02822265625], + [-27.384179687500023, 69.9916015625], + [-27.27421874999999, 70.03793945312503], + [-27.144482421874926, 70.14082031250001], + [-27.027734374999966, 70.20122070312499], + [-26.752148437499955, 70.24218749999997], + [-26.415673828124966, 70.221337890625], + [-26.155712890624926, 70.24560546874997], + [-25.624853515624977, 70.34697265625002], + [-25.529882812499977, 70.35317382812502], + [-24.748828124999932, 70.295068359375], + [-24.04101562499997, 70.18120117187499], + [-23.66733398437495, 70.139306640625], + [-23.173242187499937, 70.114599609375], + [-22.28447265624996, 70.12583007812498], + [-22.20659179687499, 70.10791015624997], + [-22.23544921874992, 70.06757812500001], + [-22.287060546874955, 70.03339843749998], + [-22.435107421875017, 69.98574218749997], + [-22.614941406249955, 69.95424804687502], + [-22.726220703124994, 69.94536132812499], + [-22.82089843749992, 69.92285156250003], + [-23.03364257812501, 69.90083007812498], + [-23.08823242187492, 69.882958984375], + [-23.014550781249937, 69.80483398437497], + [-23.04956054687497, 69.79272460937497], + [-23.236962890624937, 69.79145507812498], + [-23.552539062499932, 69.74052734375002], + [-23.81162109374995, 69.74418945312505], + [-23.86572265624997, 69.73671875000002], + [-23.816552734374994, 69.71782226562499], + [-23.764257812499977, 69.68134765625004], + [-23.708984375, 69.62724609375002], + [-23.739404296874994, 69.58862304687497], + [-23.85556640624995, 69.565576171875], + [-23.943652343749932, 69.55805664062495], + [-24.247509765624955, 69.59038085937507], + [-24.296679687500017, 69.58554687500006], + [-24.25229492187495, 69.56235351562503], + [-24.227050781249943, 69.526953125], + [-24.220898437499926, 69.47929687499999], + [-24.295556640624966, 69.439306640625], + [-24.451074218749937, 69.40708007812503], + [-24.74057617187495, 69.31840820312499], + [-24.866601562499937, 69.29306640624998], + [-25.132519531249955, 69.27211914062497], + [-25.188574218750006, 69.26054687500002], + [-25.08046875, 69.19248046875], + [-25.092431640624937, 69.16518554687502], + [-25.27221679687497, 69.09160156250005], + [-25.54404296874995, 69.04570312500002], + [-25.58115234374995, 69.02094726562495], + [-25.606347656250023, 68.954443359375], + [-25.626123046874966, 68.92797851562503], + [-25.697998046874943, 68.889892578125], + [-25.95585937499999, 68.81728515625002], + [-26.138623046874926, 68.78115234375005], + [-26.229248046875, 68.75156250000006], + [-26.34140625, 68.70214843750003], + [-26.48291015624997, 68.67592773437502], + [-26.653710937499966, 68.6728515625], + [-26.815332031250023, 68.65434570312505], + [-27.081152343750006, 68.601806640625], + [-27.266259765624966, 68.584326171875], + [-27.851220703124937, 68.49350585937498], + [-28.12646484374997, 68.47900390625003], + [-28.36455078124999, 68.446533203125], + [-28.854345703125034, 68.35981445312501], + [-29.08769531249996, 68.33193359375002], + [-29.24951171874997, 68.29877929687501], + [-29.42622070312501, 68.28930664062503], + [-29.71357421875001, 68.31083984375007], + [-29.86850585937495, 68.31157226562505], + [-29.963769531249994, 68.29853515624995], + [-30.051123046875034, 68.27192382812495], + [-30.195507812499955, 68.198974609375], + [-30.318115234375, 68.19331054687501], + [-30.72001953124999, 68.25117187499998], + [-30.71186523437501, 68.22495117187498], + [-30.605664062499955, 68.162353515625], + [-30.610742187499994, 68.11791992187503], + [-30.849755859375023, 68.07285156249998], + [-30.97856445312499, 68.06132812500005], + [-31.16845703125003, 68.079833984375], + [-31.419482421875017, 68.12846679687505], + [-31.74199218749999, 68.22998046875003], + [-32.13725585937496, 68.38491210937497], + [-32.32744140624999, 68.43730468749999], + [-32.31367187500001, 68.38759765625], + [-32.269628906250006, 68.33901367187502], + [-32.195214843749966, 68.29165039062497], + [-32.18012695312498, 68.25727539062498], + [-32.22421875, 68.235986328125], + [-32.28237304687494, 68.22524414062502], + [-32.354589843750006, 68.22509765625], + [-32.36684570312502, 68.21303710937502], + [-32.248925781249966, 68.13911132812498], + [-32.155957031249955, 68.06318359374998], + [-32.16455078125, 67.99111328125002], + [-32.274804687499994, 67.92285156249997], + [-32.36953125000002, 67.88276367187498], + [-32.44873046875, 67.87094726562498], + [-32.91801757812496, 67.70068359375003], + [-33.04873046875002, 67.67924804687499], + [-33.10815429687497, 67.65820312499997], + [-33.15698242187497, 67.62670898437506], + [-33.293603515624994, 67.48574218750002], + [-33.34887695312497, 67.44272460937503], + [-33.45849609375, 67.38671875], + [-33.50444335937496, 67.37700195312507], + [-33.51757812499997, 67.35419921874995], + [-33.49775390625001, 67.31816406250007], + [-33.527978515624966, 67.258154296875], + [-33.60820312499996, 67.17421874999997], + [-33.88134765625, 66.94228515624997], + [-34.101660156250034, 66.72592773437503], + [-34.1982421875, 66.65507812499999], + [-34.268896484375006, 66.62504882812499], + [-34.313623046874966, 66.63579101562505], + [-34.4228515625, 66.63017578125007], + [-34.47587890624999, 66.59213867187503], + [-34.52392578125, 66.52333984374997], + [-34.576269531250006, 66.47089843750004], + [-34.63281249999997, 66.43476562499995], + [-35.074658203124926, 66.27915039062503], + [-35.18857421874995, 66.25029296875002], + [-35.290869140625006, 66.26855468750003], + [-35.411718750000034, 66.26152343750002], + [-35.662060546874955, 66.34375], + [-35.70546875000002, 66.37397460937501], + [-35.86723632812502, 66.44140624999997], + [-35.86186523437499, 66.40625], + [-35.83471679687497, 66.38686523437497], + [-35.81210937499998, 66.35839843750003], + [-35.755517578124994, 66.32353515625002], + [-35.630078124999926, 66.13994140625002], + [-35.72929687499999, 66.10224609374998], + [-35.81791992187502, 66.059228515625], + [-36.044189453125, 65.98662109375005], + [-36.288720703124994, 65.86484375], + [-36.37919921874996, 65.830810546875], + [-36.39921875, 65.930078125], + [-36.38896484374999, 65.95971679687497], + [-36.52724609375002, 66.00771484375], + [-36.52275390624999, 65.97314453124997], + [-36.537011718749966, 65.94086914062495], + [-36.63725585937496, 65.81230468750007], + [-36.665185546874966, 65.79008789062507], + [-36.714501953124966, 65.79506835937502], + [-36.822167968749966, 65.77133789062498], + [-36.93242187499996, 65.78256835937503], + [-37.02587890625, 65.84111328125007], + [-37.06279296874996, 65.87143554687503], + [-37.23320312499996, 65.7880859375], + [-37.316015625000034, 65.79023437500001], + [-37.329833984375, 65.72016601562504], + [-37.410058593749994, 65.65634765625], + [-37.516064453124926, 65.62871093750005], + [-37.66376953125001, 65.63085937500006], + [-37.75419921874996, 65.59306640624999], + [-37.954785156249955, 65.63359375000007], + [-38.00126953125002, 65.70961914062502], + [-37.84228515624994, 65.813818359375], + [-37.79736328124994, 65.85678710937498], + [-37.826513671875034, 65.90966796875], + [-37.78784179687497, 65.97797851562498], + [-37.48447265624998, 66.19462890625005], + [-37.278710937499994, 66.30439453124995], + [-37.29067382812502, 66.32392578125001], + [-37.56992187499998, 66.34785156250001], + [-37.813916015624955, 66.38549804687503], + [-38.051660156249966, 66.3984375], + [-38.156640624999966, 66.38559570312498], + [-37.98916015624994, 66.32265625000002], + [-37.75234375000002, 66.26152343750002], + [-37.86889648437497, 66.203125], + [-37.96943359375001, 66.14111328125], + [-38.07343749999998, 65.97255859375002], + [-38.13994140625002, 65.90351562499998], + [-38.398144531249955, 65.98286132812498], + [-38.52036132812498, 66.00966796875002], + [-38.44267578124996, 65.92167968750005], + [-38.21635742187496, 65.83833007812504], + [-38.201855468749926, 65.81088867187503], + [-38.20336914062497, 65.71171874999999], + [-38.63671874999997, 65.62436523437506], + [-39.088964843750006, 65.61113281250002], + [-39.41337890625002, 65.58627929687503], + [-39.96093750000003, 65.55620117187502], + [-40.17353515624998, 65.55615234375], + [-40.19155273437502, 65.52250976562499], + [-39.655957031249955, 65.36889648437497], + [-39.57792968749996, 65.34077148437501], + [-39.65253906249998, 65.28784179687497], + [-39.76318359374997, 65.25493164062502], + [-39.937255859375, 65.14160156250003], + [-40.02802734375001, 65.10253906249997], + [-40.25312, 65.04887695312505], + [-40.667578125, 65.10874023437498], + [-40.880566406249955, 65.08198242187495], + [-41.08442382812501, 65.10083007812497], + [-41.08867187499999, 65.03535156249995], + [-41.02773437500002, 64.987548828125], + [-40.966015624999955, 64.86884765624995], + [-40.82929687500001, 64.878076171875], + [-40.655468749999926, 64.91533203125002], + [-40.52109375, 64.82548828125002], + [-40.432714843750034, 64.67319335937498], + [-40.278417968750034, 64.59594726562497], + [-40.20986328125002, 64.536279296875], + [-40.18222656249998, 64.47993164062495], + [-40.278466796874966, 64.423828125], + [-40.477636718750034, 64.34443359374998], + [-40.69853515625002, 64.329736328125], + [-40.68642578125002, 64.266943359375], + [-40.78173828125, 64.22177734375003], + [-40.98457031250001, 64.23500976562497], + [-41.07939453124996, 64.26650390625], + [-41.17773437500003, 64.28144531250001], + [-41.581005859374926, 64.29833984375], + [-41.175, 64.17739257812497], + [-41.03056640624996, 64.12104492187504], + [-40.96630859375003, 64.154443359375], + [-40.82568359374997, 64.16254882812495], + [-40.61777343749998, 64.13173828125], + [-40.65234375, 63.927734375], + [-40.56127929687503, 63.762353515624966], + [-40.550390625000034, 63.72524414062505], + [-40.77153320312496, 63.62617187500001], + [-40.77519531249999, 63.53364257812501], + [-40.90683593749998, 63.50786132812499], + [-41.04873046875002, 63.51381835937505], + [-41.05615234375003, 63.412255859374966], + [-41.152246093749966, 63.34892578125002], + [-41.13520507812498, 63.30927734375004], + [-41.10771484374996, 63.273779296875006], + [-41.195458984374994, 63.209228515625], + [-41.27470703124996, 63.130664062500045], + [-41.387890624999926, 63.06186523437498], + [-41.44785156249998, 63.068945312500006], + [-41.6279296875, 63.06450195312499], + [-41.84448242187497, 63.07026367187501], + [-42.019726562499955, 63.15961914062501], + [-42.092382812500006, 63.18935546875002], + [-42.174511718749955, 63.20878906249999], + [-42.14296875000002, 63.15131835937501], + [-42.093994140625, 63.116748046875074], + [-41.932275390624994, 63.05224609374997], + [-41.63447265624998, 62.972460937500074], + [-41.64360351562499, 62.915869140625006], + [-41.72324218749995, 62.89125976562505], + [-41.90898437499996, 62.73710937499999], + [-41.97490234374999, 62.73378906250002], + [-42.058251953124994, 62.693994140624994], + [-42.31562, 62.707324218750045], + [-42.42373046875002, 62.72314453125], + [-42.74111328125002, 62.713037109374966], + [-42.84907226562498, 62.726660156250006], + [-42.94165039062503, 62.72021484375003], + [-42.85527343750002, 62.67670898437504], + [-42.67368164062495, 62.6375], + [-42.46713867187498, 62.59819335937502], + [-42.15297851562502, 62.568457031250006], + [-42.16435546874993, 62.51220703125], + [-42.2431640625, 62.46606445312503], + [-42.197949218749955, 62.397119140624994], + [-42.23310546875001, 62.347705078125074], + [-42.24814453124995, 62.28906250000003], + [-42.32148437499998, 62.15273437500005], + [-42.23613281249999, 62.059179687500006], + [-42.14306640624994, 62.013525390625006], + [-42.15385742187502, 61.95341796875002], + [-42.110205078125006, 61.857226562500074], + [-42.24970703125001, 61.771386718749994], + [-42.365429687499955, 61.77460937500001], + [-42.530419921874994, 61.75532226562498], + [-42.58530273437498, 61.71748046875001], + [-42.323632812499966, 61.681738281250006], + [-42.34736328125001, 61.61743164062497], + [-42.41875, 61.53701171875002], + [-42.49375, 61.36279296875006], + [-42.64599609375, 61.06411132812505], + [-42.717041015625, 60.767480468749994], + [-43.04409179687502, 60.523681640625], + [-43.15996093749999, 60.516943359375034], + [-43.18906249999998, 60.50727539062501], + [-43.34833984375001, 60.519775390625], + [-43.598339843749955, 60.576025390625006], + [-43.79199218749997, 60.594580078125034], + [-43.92270507812495, 60.59536132812502], + [-43.939550781250006, 60.5673828125], + [-43.83115234374995, 60.52197265625], + [-43.665478515624955, 60.502978515625045], + [-43.53305664062498, 60.47299804687506], + [-43.29565429687503, 60.44497070312502], + [-43.21298828124998, 60.390673828125074], + [-43.156494140625, 60.332861328125006], + [-43.16484375000002, 60.301025390625], + [-43.16533203124993, 60.263427734375], + [-43.122900390625006, 60.06123046875001], + [-43.23481445312498, 59.99130859374998], + [-43.32011718749993, 59.928125], + [-43.61689453125001, 59.936914062499994], + [-43.66850585937496, 59.958935546874955], + [-43.95502929687498, 60.025488281250006], + [-43.93740234375002, 59.994238281250034], + [-43.730126953124994, 59.90375976562498], + [-43.65791015625001, 59.85864257812503], + [-43.706201171874994, 59.84931640625001], + [-43.78984374999999, 59.84594726562503], + [-43.90654296874996, 59.815478515625045], + [-44.11699218750002, 59.83193359375002], + [-44.105419921874955, 59.87773437500002], + [-44.06547851562499, 59.92480468750003], + [-44.16171874999998, 59.91679687499999], + [-44.268945312499966, 59.892919921875006], + [-44.33125, 59.901708984375006], + [-44.38359375, 59.89907226562502], + [-44.412939453125006, 59.922607421875], + [-44.453466796875006, 60.014550781249994], + [-44.404931640624966, 60.060791015625], + [-44.231347656249966, 60.180273437500006], + [-44.17612304687498, 60.24438476562503], + [-44.22436523437494, 60.273535156250006], + [-44.34833984374998, 60.20478515625004], + [-44.47636718749996, 60.095507812500074], + [-44.53315429687498, 60.02949218750004], + [-44.61328124999997, 60.01665039062499], + [-44.81220703124998, 60.049902343750006], + [-45.37924804687495, 60.20292968750002], + [-45.36235351562499, 60.295947265625045], + [-45.367773437500006, 60.37294921875002], + [-45.202490234375006, 60.38271484375005], + [-45.08227539062503, 60.41621093750004], + [-44.97470703124995, 60.457226562499955], + [-44.85351562499997, 60.53193359374998], + [-44.74243164062497, 60.65527343749997], + [-44.756738281249966, 60.66459960937502], + [-45.082714843749926, 60.507177734375006], + [-45.283300781250034, 60.45454101562501], + [-45.38051757812494, 60.444921875], + [-45.42885742187502, 60.46826171874997], + [-45.590283203124955, 60.518847656250074], + [-45.69521484375002, 60.541845703125034], + [-45.93432617187497, 60.57944335937498], + [-45.976513671874955, 60.599707031250034], + [-46.04663085937503, 60.61572265625], + [-46.141943359375006, 60.776513671874994], + [-46.018652343750006, 60.97177734374998], + [-45.93374023437494, 61.02841796875006], + [-45.87988281249997, 61.09414062500002], + [-45.84941406249999, 61.18115234375], + [-45.87021484374998, 61.21831054687502], + [-45.942285156249994, 61.20556640625], + [-45.97568359374995, 61.17578124999997], + [-45.970410156249955, 61.129199218750074], + [-46.01171875000003, 61.09682617187505], + [-46.29667968749999, 61.022363281249966], + [-46.58242187500002, 60.96206054687502], + [-46.71777343749997, 60.90493164062502], + [-46.80566406250003, 60.86030273437501], + [-46.87446289062501, 60.81640625000003], + [-46.979687499999955, 60.820361328125045], + [-47.12485351562495, 60.811328125000045], + [-47.22441406249999, 60.78286132812502], + [-47.369726562500006, 60.800341796875045], + [-47.46464843749999, 60.842626953125034], + [-47.579052734374926, 60.847460937500045], + [-47.70747070312498, 60.82709960937498], + [-47.79624023437495, 60.828857421875], + [-47.78886718749996, 60.800146484375006], + [-47.729931640624955, 60.7294921875], + [-47.82792968750002, 60.724755859374994], + [-48.01396484374999, 60.721972656250074], + [-48.10751953124995, 60.74243164062497], + [-48.180810546874966, 60.76923828125001], + [-48.24194335937497, 60.80683593750004], + [-48.20517578124995, 60.85590820312498], + [-47.90595703125001, 60.94575195312501], + [-47.77031249999999, 60.99775390625001], + [-47.858789062499994, 61.015673828125045], + [-48.146142578124994, 60.99946289062501], + [-48.19394531249998, 61.012939453125], + [-48.386425781249926, 61.004736328125034], + [-48.378125, 61.13847656250002], + [-48.424951171874966, 61.17167968750002], + [-48.42817382812501, 61.18740234375002], + [-48.49482421874998, 61.22470703124998], + [-48.55791015624996, 61.233984375], + [-48.59716796874997, 61.247412109375006], + [-48.92207031249998, 61.27744140624998], + [-48.96450195312502, 61.35200195312498], + [-48.98720703125002, 61.42871093749997], + [-49.049218749999966, 61.52387695312501], + [-49.20473632812502, 61.548681640625006], + [-49.28906249999997, 61.58994140625006], + [-49.222265625000034, 61.632128906250045], + [-49.19311523437497, 61.685644531250006], + [-49.265234375, 61.710058593750006], + [-49.311230468749955, 61.74780273437497], + [-49.30449218750002, 61.772314453125006], + [-49.362890625, 61.838525390624994], + [-49.380273437499994, 61.89018554687502], + [-49.31347656249997, 61.93862304687502], + [-49.12978515625002, 61.993408203125], + [-49.07055664062494, 62.01547851562498], + [-49.03964843749995, 62.039355468750045], + [-48.82871093749998, 62.0796875], + [-49.008154296875034, 62.108203125000045], + [-49.120458984375006, 62.112597656250045], + [-49.202294921874966, 62.09931640625001], + [-49.277929687500006, 62.045751953125006], + [-49.348535156249994, 62.010205078124955], + [-49.62377929687494, 61.99858398437499], + [-49.664257812499926, 62.016943359375006], + [-49.68339843750002, 62.092578125000045], + [-49.66772460937503, 62.15087890625003], + [-49.553466796875, 62.23271484374999], + [-49.685253906249955, 62.27333984375002], + [-49.806054687499966, 62.28652343750002], + [-49.94335937499994, 62.32446289062503], + [-50.07021484374994, 62.36450195312503], + [-50.179150390624926, 62.41113281250003], + [-50.28520507812496, 62.466210937499966], + [-50.319238281249966, 62.473193359375045], + [-50.280908203124966, 62.53076171874997], + [-50.25932617187502, 62.57807617187501], + [-50.256005859374966, 62.679785156250034], + [-50.298730468749966, 62.72197265625002], + [-50.203759765624966, 62.80878906250004], + [-50.07602539062498, 62.90375976562501], + [-49.793115234374994, 63.04462890625004], + [-50.09223632812498, 62.976757812499955], + [-50.338330078124955, 62.82875976562502], + [-50.39008789062501, 62.82202148437497], + [-50.40820312499997, 62.84882812500001], + [-50.50156249999998, 62.94492187500006], + [-50.57202148437494, 62.97114257812498], + [-50.60351562499997, 63.00004882812502], + [-50.74350585937498, 63.05126953125006], + [-50.804296875000034, 63.09077148437501], + [-50.890478515625006, 63.16694335937498], + [-51.01308593750002, 63.25756835937497], + [-51.187597656250034, 63.436425781249994], + [-51.46884765624995, 63.64228515625001], + [-51.53818359374998, 63.758007812499955], + [-51.451074218749994, 63.90478515625003], + [-51.547509765624994, 64.00610351562497], + [-51.28007812499996, 64.05297851562503], + [-50.897558593750006, 64.10556640624998], + [-50.699365234374966, 64.149267578125], + [-50.58500976562502, 64.162353515625], + [-50.34189453124998, 64.17036132812495], + [-50.260693359374955, 64.21425781250002], + [-50.395947265624955, 64.20317382812507], + [-50.48662109374996, 64.20888671875], + [-50.49228515624995, 64.22934570312498], + [-50.45874023437497, 64.26582031249995], + [-50.43706054687499, 64.31284179687503], + [-50.48339843750003, 64.304345703125], + [-50.721044921875034, 64.22333984375001], + [-51.07231445312499, 64.15903320312503], + [-51.34667968750003, 64.12309570312502], + [-51.39111328125003, 64.125], + [-51.48710937499996, 64.10327148437506], + [-51.54228515624999, 64.09702148437503], + [-51.58491210937498, 64.10317382812502], + [-51.682031249999966, 64.16474609374995], + [-51.70786132812498, 64.205078125], + [-51.53378906249995, 64.31420898437503], + [-51.403759765624926, 64.46318359375002], + [-51.231542968750034, 64.56059570312505], + [-51.10991210937502, 64.57280273437505], + [-50.90654296874999, 64.56757812499995], + [-50.834912109374955, 64.558984375], + [-50.85771484374999, 64.61679687500003], + [-50.849218750000034, 64.64467773437505], + [-50.684326171875, 64.67817382812501], + [-50.49208984375002, 64.69316406250005], + [-50.355126953124994, 64.68256835937504], + [-50.26894531250002, 64.61474609374997], + [-50.15820312500003, 64.48955078125005], + [-50.00898437500001, 64.44726562499997], + [-50.015527343749994, 64.50742187500006], + [-50.092968749999955, 64.58491210937504], + [-50.12163085937493, 64.703759765625], + [-50.21992187499998, 64.75385742187498], + [-50.29887695312499, 64.77856445312506], + [-50.51699218750002, 64.76650390625], + [-50.64814453125001, 64.85332031249999], + [-50.67788085937502, 64.88520507812501], + [-50.68129882812502, 64.92753906250002], + [-50.81215820312502, 65.05185546875003], + [-50.85424804687497, 65.11396484374998], + [-50.92373046875002, 65.19672851562498], + [-50.96064453124998, 65.20112304687498], + [-50.91372070312502, 65.09697265624999], + [-50.85234375, 65.02368164062497], + [-50.76484374999998, 64.86254882812503], + [-50.721582031249966, 64.79760742187503], + [-50.780175781249994, 64.74614257812502], + [-50.891064453124926, 64.69521484375002], + [-50.98906250000002, 64.66484375000007], + [-51.22060546875002, 64.62846679687502], + [-51.17084960937501, 64.707763671875], + [-51.13896484374999, 64.7857421875], + [-51.25537109375, 64.75810546875005], + [-51.363623046875006, 64.7015625], + [-51.40092773437499, 64.62309570312499], + [-51.47045898437503, 64.55180664062505], + [-51.67675781249994, 64.37705078125006], + [-51.75810546875002, 64.279931640625], + [-51.83496093750003, 64.23198242187499], + [-51.92260742187503, 64.21875], + [-51.998681640624994, 64.25678710937498], + [-52.06318359374998, 64.34609374999997], + [-52.09340820312502, 64.41591796874997], + [-52.097021484375034, 64.59707031250002], + [-52.08886718749997, 64.68154296875], + [-52.12402343750003, 64.79541015625003], + [-52.235449218750006, 65.06054687500003], + [-52.259033203125, 65.154931640625], + [-52.44760742187498, 65.20512695312499], + [-52.450341796874994, 65.22133789062502], + [-52.49970703125001, 65.27504882812502], + [-52.537695312500034, 65.32880859374998], + [-52.50625, 65.34848632812498], + [-52.46142578125003, 65.36269531250002], + [-52.179589843749994, 65.44194335937502], + [-51.97070312499997, 65.53071289062498], + [-51.72109375000002, 65.669921875], + [-51.61914062500003, 65.71318359375002], + [-51.25292968750003, 65.74648437499997], + [-51.09038085937496, 65.75102539062502], + [-51.091894531250006, 65.77578125], + [-51.146386718749994, 65.78564453125006], + [-51.39379882812494, 65.77915039062506], + [-51.7234375, 65.723486328125], + [-51.779882812500006, 65.70341796874999], + [-51.92412109374999, 65.61679687500003], + [-52.03535156250001, 65.56948242187497], + [-52.34824218749998, 65.46132812499997], + [-52.55126953125003, 65.46137695312498], + [-52.760937499999926, 65.59082031249997], + [-52.99492187499999, 65.56601562499998], + [-53.152929687500034, 65.57456054687503], + [-53.198974609375, 65.59404296875002], + [-53.23374023437498, 65.77084960937506], + [-53.106347656249966, 65.97714843749998], + [-53.24375, 65.97905273437502], + [-53.272216796875, 65.98740234375003], + [-53.34472656250003, 66.034375], + [-53.39204101562498, 66.04833984375], + [-53.35693359375003, 66.07329101562502], + [-53.01787109374996, 66.17089843750003], + [-52.510888671874966, 66.36240234375003], + [-52.29262695312502, 66.437646484375], + [-52.15791015625001, 66.47011718749997], + [-52.056103515624955, 66.50732421875], + [-51.93217773437493, 66.58789062499997], + [-51.891210937500034, 66.62314453125006], + [-51.82211914062498, 66.65156249999998], + [-51.67636718749995, 66.68359375000003], + [-51.51708984375003, 66.73203125000003], + [-51.25859374999993, 66.84121093749997], + [-51.225, 66.88154296875001], + [-51.28105468749999, 66.89096679687498], + [-51.401953125, 66.85375976562506], + [-51.64770507812497, 66.75400390624998], + [-51.82304687499999, 66.6978515625], + [-52.421240234375006, 66.4466796875], + [-52.675878906250006, 66.355224609375], + [-52.814453125, 66.296875], + [-52.92192382812496, 66.24111328125002], + [-53.035791015624966, 66.20141601562503], + [-53.15605468749996, 66.177734375], + [-53.41274414062494, 66.15996093750002], + [-53.538769531249955, 66.13935546874998], + [-53.614697265624955, 66.15449218749995], + [-53.64809570312502, 66.27353515625006], + [-53.62260742187499, 66.34404296875005], + [-53.634716796874955, 66.413671875], + [-53.570703124999966, 66.51328125000006], + [-53.47568359374998, 66.58383789062503], + [-53.43579101562503, 66.62216796875003], + [-53.41875, 66.64853515624998], + [-53.22270507812496, 66.721435546875], + [-53.114648437499966, 66.75380859375002], + [-53.038281249999955, 66.82680664062497], + [-52.603125, 66.85273437500001], + [-52.491064453125034, 66.85014648437502], + [-52.43144531249996, 66.85991210937505], + [-52.38686523437502, 66.88115234375005], + [-52.42973632812496, 66.89755859375], + [-52.56010742187496, 66.90908203125005], + [-52.906689453124955, 66.90688476562502], + [-53.22695312500002, 66.91938476562501], + [-53.37309570312496, 66.93193359374999], + [-53.44360351562503, 66.924658203125], + [-53.56000976562501, 66.945947265625], + [-53.687158203124994, 66.986474609375], + [-53.88442382812502, 67.13554687499999], + [-53.80546875000002, 67.32690429687497], + [-53.79858398437494, 67.41816406250001], + [-53.54790039062496, 67.49819335937497], + [-53.41386718749999, 67.52470703125005], + [-53.223583984374955, 67.58496093749997], + [-52.96953124999999, 67.68725585937503], + [-52.666455078124955, 67.74970703124995], + [-52.51201171874993, 67.76127929687502], + [-52.38359374999999, 67.75234374999997], + [-51.90908203124994, 67.66372070312502], + [-51.66503906249997, 67.64638671874997], + [-51.450585937499966, 67.66772460937506], + [-51.18144531249993, 67.63652343749999], + [-50.70537109374993, 67.50888671875003], + [-50.613476562499955, 67.5279296875], + [-50.64013671874997, 67.55883789062497], + [-51.171044921874966, 67.693603515625], + [-51.16796874999994, 67.73383789062501], + [-51.03208007812498, 67.74438476562503], + [-50.88701171874999, 67.78354492187503], + [-50.96884765624998, 67.80664062500003], + [-51.321484374999955, 67.78657226562501], + [-51.423242187499994, 67.75449218750006], + [-51.765234375000034, 67.73784179687505], + [-51.94384765625, 67.76518554687502], + [-52.10419921874998, 67.77871093750002], + [-52.34482421874998, 67.83691406249997], + [-52.54619140624999, 67.81791992187502], + [-52.67324218750002, 67.79497070312505], + [-52.898339843749966, 67.77324218750005], + [-52.97958984374998, 67.75776367187501], + [-53.418798828125034, 67.57456054687498], + [-53.603613281250006, 67.53647460937503], + [-53.735205078125006, 67.54902343750004], + [-53.642822265625, 67.66826171874999], + [-53.6162109375, 67.71533203124997], + [-53.61635742187494, 67.76660156250003], + [-53.577978515625034, 67.83681640625005], + [-53.35292968750002, 67.97050781250002], + [-53.211376953124955, 68.116943359375], + [-53.151562499999926, 68.20776367187503], + [-53.040966796874955, 68.21791992187497], + [-52.88984375000001, 68.20454101562498], + [-52.43608398437502, 68.145654296875], + [-52.058496093749994, 68.07548828124999], + [-51.779980468749926, 68.05673828124998], + [-51.59687, 68.05478515625003], + [-51.51835937500002, 68.07714843749997], + [-51.456494140624926, 68.116064453125], + [-51.43266601562496, 68.14301757812498], + [-51.41469726562494, 68.19819335937504], + [-51.39370117187502, 68.21777343750003], + [-51.33251953125, 68.24184570312505], + [-51.20727539062497, 68.32553710937503], + [-51.16914062500001, 68.38520507812504], + [-51.21015625000001, 68.419921875], + [-51.29345703125003, 68.41635742187498], + [-51.45610351562493, 68.39350585937504], + [-51.47802734374997, 68.38398437499995], + [-51.47504882812498, 68.365380859375], + [-51.63242187499998, 68.273046875], + [-51.80400390624993, 68.25180664062503], + [-52.19853515624993, 68.22080078125], + [-52.378515625, 68.218603515625], + [-52.698388671874994, 68.26152343750005], + [-52.74677734374998, 68.27836914062502], + [-52.780029296875, 68.30986328125005], + [-53.17250976562494, 68.302734375], + [-53.28984375, 68.29326171875005], + [-53.38315429687495, 68.29736328124997], + [-53.33740234374997, 68.35214843750003], + [-53.21328125, 68.41298828125], + [-53.03945312500002, 68.61088867187499], + [-52.89384765625002, 68.66152343750002], + [-52.60458984374998, 68.70874023437503], + [-52.30278320312496, 68.70112304687498], + [-51.780664062499994, 68.548193359375], + [-51.62314453124995, 68.53481445312505], + [-51.47871093750001, 68.54716796874999], + [-51.13330078125, 68.59843750000005], + [-51.06992187499995, 68.61918945312499], + [-50.945703124999966, 68.68266601562505], + [-50.80063476562498, 68.79125976562497], + [-50.807714843750006, 68.81699218749998], + [-51.030224609374955, 68.75629882812495], + [-51.148876953124955, 68.73994140625001], + [-51.24941406250002, 68.73994140625001], + [-51.15605468750002, 68.93842773437501], + [-51.11972656249998, 69.09052734375001], + [-51.084863281249994, 69.12827148437498], + [-50.79228515624996, 69.11684570312505], + [-50.392675781250006, 69.13740234374998], + [-50.29736328124994, 69.17060546874998], + [-50.29887695312499, 69.18535156250005], + [-50.459375, 69.20551757812498], + [-50.53662109375003, 69.24785156249999], + [-50.671044921874966, 69.23447265625003], + [-50.85107421874997, 69.20625], + [-51.07695312499996, 69.20947265625], + [-51.05781249999998, 69.2748046875], + [-50.892236328124994, 69.411767578125], + [-50.87519531249998, 69.47421875000003], + [-50.81059570312496, 69.59902343750005], + [-50.804101562499994, 69.66303710937504], + [-50.72026367187496, 69.72534179687503], + [-50.459082031250034, 69.76972656250001], + [-50.349462890625006, 69.79624023437498], + [-50.34345703125001, 69.82524414062505], + [-50.5, 69.935791015625], + [-50.46025390625002, 69.96630859375], + [-50.3375, 69.99414062499997], + [-50.291699218749955, 70.01445312500005], + [-50.32294921875001, 70.02714843750005], + [-50.43608398437496, 70.03935546875005], + [-50.60986328125003, 70.01494140625005], + [-50.80234374999998, 70.00322265625005], + [-50.97270507812496, 70.03989257812498], + [-51.10571289062497, 70.05742187499999], + [-51.18994140624997, 70.05190429687502], + [-51.418847656249994, 69.98920898437495], + [-51.49907226562499, 69.98715820312498], + [-51.59809570312501, 70.00454101562497], + [-52.254638671875, 70.05893554687503], + [-52.33603515624998, 70.078125], + [-52.57124023437501, 70.172119140625], + [-52.765039062499966, 70.23413085937503], + [-53.02304687499995, 70.30190429687497], + [-53.35751953124998, 70.35332031250007], + [-53.768505859374955, 70.38852539062503], + [-54.01445312499996, 70.42167968750005], + [-54.135644531249966, 70.46840820312497], + [-54.34331054687499, 70.57119140625005], + [-54.50117187500001, 70.656884765625], + [-54.53076171875, 70.69926757812502], + [-54.43798828125, 70.75161132812502], + [-54.34355468749996, 70.78920898437505], + [-54.16582031249999, 70.82011718750005], + [-53.85917968749996, 70.809912109375], + [-53.69443359374995, 70.79609375000004], + [-53.513085937499966, 70.76660156249997], + [-53.37602539062502, 70.76103515624999], + [-53.09130859375, 70.769384765625], + [-52.801953124999955, 70.7505859375], + [-52.63041992187499, 70.72993164062495], + [-52.405224609374955, 70.68676757812506], + [-51.783789062500006, 70.50322265625005], + [-51.52446289062502, 70.43945312500003], + [-51.41171874999995, 70.43178710937497], + [-50.946875, 70.36362304687503], + [-50.87236328124993, 70.36489257812502], + [-50.68212890625, 70.39687], + [-50.66328124999998, 70.417578125], + [-50.72753906250003, 70.43798828125], + [-50.93266601562496, 70.45385742187503], + [-51.17333984374997, 70.52910156249999], + [-51.32285156249998, 70.58876953124997], + [-51.33989257812499, 70.68754882812502], + [-51.320410156250006, 70.74287109375001], + [-51.28281249999998, 70.76801757812498], + [-51.25659179687497, 70.85268554687502], + [-51.39609374999998, 70.90302734374995], + [-51.49355468750002, 70.91889648437501], + [-51.75268554687497, 70.99223632812502], + [-51.77431640625002, 71.01044921875001], + [-51.650097656249926, 71.01904296874997], + [-51.528417968750006, 71.014013671875], + [-51.26708984374997, 70.97685546874999], + [-51.130078124999955, 70.97172851562502], + [-51.030419921874994, 70.98627929687495], + [-51.018945312499966, 71.001318359375], + [-51.17778320312499, 71.04345703124997], + [-51.37666015625001, 71.11904296875], + [-51.791894531249966, 71.13012695312506], + [-52.06137695312498, 71.12163085937499], + [-52.23359374999998, 71.14755859375003], + [-52.41689453125002, 71.189697265625], + [-52.534570312499994, 71.20043945312497], + [-52.775, 71.17402343750001], + [-52.89667968749998, 71.17070312500005], + [-53.007568359375, 71.17998046874999], + [-53.117041015625006, 71.31289062499997], + [-53.08789062500003, 71.35273437500001], + [-53.002099609374966, 71.36997070312506], + [-52.93730468749999, 71.412841796875], + [-52.89184570312497, 71.457666015625], + [-52.749414062499994, 71.50151367187505], + [-51.96728515625, 71.59912109375003], + [-51.76992187500002, 71.67172851562498], + [-51.77861328125002, 71.68291015625005], + [-51.911718750000034, 71.66943359375006], + [-52.081933593749994, 71.63671875000006], + [-52.19580078125, 71.62998046875], + [-52.65629882812493, 71.672265625], + [-52.72807617187499, 71.66264648437499], + [-52.91455078124997, 71.60190429687506], + [-53.16752929687499, 71.53593750000002], + [-53.28408203125002, 71.53994140625005], + [-53.44008789062502, 71.57900390625002], + [-53.46484375, 71.60678710937498], + [-53.476025390624955, 71.64018554687505], + [-53.30473632812496, 71.68588867187503], + [-53.249707031249955, 71.71015624999998], + [-53.13886718750001, 71.77519531250002], + [-53.14453125000003, 71.80742187500002], + [-53.33369140625001, 71.78974609374995], + [-53.358349609374955, 71.81962890625002], + [-53.35527343749996, 71.87089843750005], + [-53.37363281249998, 71.93574218750004], + [-53.420117187499926, 71.99975585937503], + [-53.575390624999955, 72.09804687499997], + [-53.63979492187502, 72.12333984375007], + [-53.69287109375, 72.15966796875], + [-53.80986328124993, 72.29257812499998], + [-53.77597656249995, 72.32583007812502], + [-53.67202148437502, 72.35102539062498], + [-53.65214843749996, 72.36264648437506], + [-53.90053710937502, 72.34174804687498], + [-53.92773437499997, 72.31879882812501], + [-53.88090820312502, 72.28496093750005], + [-53.84746093749996, 72.23984375], + [-53.827539062499994, 72.18344726562506], + [-53.79287109375002, 72.13408203125002], + [-53.70292968749999, 72.08002929687504], + [-53.630957031250006, 72.051513671875], + [-53.513671875, 71.97626953125004], + [-53.4625, 71.89355468749997], + [-53.47758789062502, 71.84995117187506], + [-53.56865234374999, 71.80556640625], + [-53.71542968749998, 71.757666015625], + [-53.75986328124998, 71.718017578125], + [-53.7796875, 71.67851562500005], + [-53.89409179687496, 71.64199218749997], + [-53.96435546874997, 71.6556640625], + [-54.01992187500002, 71.657861328125], + [-53.954296874999955, 71.59267578125005], + [-53.91206054687498, 71.52592773437505], + [-53.96298828124995, 71.45898437499997], + [-54.09892578124993, 71.41850585937499], + [-54.17270507812495, 71.41728515625002], + [-54.317724609375006, 71.38447265624998], + [-54.6890625, 71.36723632812505], + [-54.818310546874955, 71.37529296874999], + [-55.05537109375001, 71.40859375000002], + [-55.33642578125, 71.4267578125], + [-55.447900390624966, 71.47177734375], + [-55.59404296874999, 71.55351562500005], + [-55.667822265625006, 71.62675781250005], + [-55.669335937499966, 71.69150390625], + [-55.629785156249966, 71.73862304687503], + [-55.54921875, 71.76826171875001], + [-55.45244140624999, 71.95766601562497], + [-55.315576171874994, 72.11069335937498], + [-54.970898437499955, 72.26840820312503], + [-54.87260742187499, 72.32543945312503], + [-54.84013671874996, 72.35610351562497], + [-54.840625, 72.37939453125], + [-54.896337890625034, 72.394189453125], + [-55.32011718749996, 72.19956054687503], + [-55.581445312499994, 72.178857421875], + [-55.65947265624999, 72.22260742187504], + [-55.63583984374998, 72.300439453125], + [-55.58930664062498, 72.31850585937502], + [-55.3779296875, 72.31113281250003], + [-55.29570312499996, 72.35439453124997], + [-55.427978515625, 72.41987304687498], + [-55.56875, 72.43701171875003], + [-55.60170898437494, 72.453466796875], + [-55.456787109375, 72.503271484375], + [-55.12187, 72.49960937499998], + [-55.046240234375034, 72.53442382812497], + [-54.924951171874994, 72.57197265624998], + [-54.790380859375034, 72.64160156250003], + [-54.74003906249999, 72.7001953125], + [-54.72871093749998, 72.75048828125003], + [-54.75771484374994, 72.79106445312502], + [-54.76083984374998, 72.83173828124995], + [-54.737939453124994, 72.87250976562501], + [-54.773095703124966, 72.91757812500003], + [-54.86621093750003, 72.96684570312505], + [-55.07309570312498, 73.01513671875003], + [-55.133984374999955, 72.96064453125001], + [-55.198437499999955, 72.938232421875], + [-55.28891601562498, 72.93320312500003], + [-55.372412109375034, 72.95615234375], + [-55.45952148437502, 72.96440429687499], + [-55.545117187499955, 72.98491210937499], + [-55.633984374999955, 72.99140624999998], + [-55.66855468749998, 73.00791015624998], + [-55.690820312499966, 73.05410156249997], + [-55.69277343750002, 73.11284179687505], + [-55.59228515624997, 73.14028320312502], + [-55.45234374999998, 73.16191406249999], + [-55.35869140624999, 73.20292968749999], + [-55.29716796874999, 73.2623046875], + [-55.288281249999955, 73.32709960937498], + [-55.33203124999997, 73.39736328125], + [-55.445703124999966, 73.46049804687499], + [-55.656201171874955, 73.399072265625], + [-55.738867187500006, 73.38398437500004], + [-55.75791015624998, 73.42792968750001], + [-55.787060546874955, 73.46049804687499], + [-55.87553710937496, 73.504638671875], + [-55.99199218749996, 73.53681640624998], + [-56.10405273437496, 73.55815429687499], + [-56.10917968749993, 73.59077148437495], + [-56.082617187500034, 73.62749023437499], + [-56.03300781249996, 73.6703125], + [-55.968408203124966, 73.75957031249999], + [-55.897314453125034, 73.75161132812497], + [-55.83828125, 73.75971679687501], + [-55.872412109375034, 73.83344726562501], + [-55.92949218750002, 73.89541015625002], + [-55.99653320312501, 73.93061523437501], + [-55.998925781249966, 73.94594726562502], + [-56.01445312500002, 73.96386718750003], + [-56.06621093749999, 74.00727539062501], + [-56.12421874999998, 74.0390625], + [-56.22539062499999, 74.12910156249995], + [-56.298486328124966, 74.163427734375], + [-56.39218749999995, 74.18120117187499], + [-56.4931640625, 74.18217773437502], + [-56.655175781249966, 74.158544921875], + [-56.95429687499998, 74.13120117187503], + [-57.19111328125001, 74.11821289062505], + [-57.23056640624995, 74.12529296875007], + [-57.11210937499999, 74.15947265625002], + [-56.9375, 74.19506835937497], + [-56.70634765625002, 74.21918945312501], + [-56.63896484374996, 74.27836914062499], + [-56.66391601562498, 74.32958984375003], + [-56.65429687499997, 74.37812], + [-56.717675781249994, 74.42924804687499], + [-56.65600585937497, 74.45756835937499], + [-56.445556640625, 74.48608398437503], + [-56.350292968749955, 74.49047851562503], + [-56.25546874999998, 74.52680664062498], + [-56.522070312500034, 74.61430664062505], + [-56.80131835937499, 74.67167968749999], + [-56.87114257812502, 74.69497070312502], + [-56.93256835937501, 74.73334960937495], + [-56.985546874999955, 74.786767578125], + [-57.071679687499994, 74.84023437499997], + [-57.190869140624955, 74.89375], + [-57.36479492187496, 74.945458984375], + [-57.81318359374998, 75.03999023437498], + [-57.96708984374999, 75.10517578125004], + [-58.10883789062501, 75.204931640625], + [-58.17968749999997, 75.24746093749997], + [-58.253320312499966, 75.278955078125], + [-58.56552734374998, 75.35273437500001], + [-58.603466796874955, 75.38530273437499], + [-58.281201171874955, 75.4720703125], + [-58.249658203124994, 75.50668945312503], + [-58.38129882812501, 75.61201171874998], + [-58.51621093749995, 75.68906250000006], + [-58.66308593749994, 75.71640625000003], + [-58.881445312500034, 75.73046875000006], + [-59.08159179687493, 75.76469726562502], + [-59.26362304687498, 75.81889648437505], + [-59.44531249999997, 75.85859374999995], + [-59.717431640624994, 75.89628906249999], + [-60.17275390625002, 75.99331054687505], + [-60.874609375, 76.09716796874997], + [-61.18823242187494, 76.157861328125], + [-61.37480468749996, 76.17998046875005], + [-61.62084960937497, 76.18564453125006], + [-62.09667968750003, 76.24233398437497], + [-62.49619140624998, 76.26044921875001], + [-62.742871093749955, 76.25214843750001], + [-62.823437499999926, 76.26152343750007], + [-63.005810546874955, 76.31909179687497], + [-63.29130859374996, 76.35205078125003], + [-63.438867187499994, 76.33945312500003], + [-63.621972656249994, 76.27788085937502], + [-63.84306640624999, 76.21713867187498], + [-63.960351562499994, 76.20893554687501], + [-64.13520507812501, 76.26450195312503], + [-64.22319335937499, 76.30332031250006], + [-64.307275390625, 76.31650390624998], + [-64.38730468750003, 76.30400390625002], + [-64.54340820312495, 76.25307617187502], + [-64.69208984374995, 76.21625976562498], + [-64.91196289062498, 76.17250976562505], + [-65.08764648437497, 76.15151367187502], + [-65.31323242187503, 76.14638671874997], + [-65.36992187499993, 76.13056640625004], + [-65.45678710937494, 76.12983398437495], + [-65.57373046874997, 76.14423828124998], + [-65.68330078125001, 76.172705078125], + [-65.78544921874993, 76.21533203124997], + [-65.87573242187494, 76.23833007812505], + [-65.95405273437501, 76.24169921875003], + [-66.134033203125, 76.21962890624997], + [-66.36176757812493, 76.15478515625], + [-66.46577148437498, 76.13916015625], + [-66.55322265624994, 76.14594726562495], + [-66.65996093749993, 76.166162109375], + [-66.87402343750003, 76.21787109375006], + [-66.99257812500002, 76.21293945312502], + [-67.07871093749998, 76.19482421874997], + [-67.05478515625, 76.15185546875], + [-66.85390625000002, 76.05], + [-66.67480468750003, 75.977392578125], + [-66.82617187499997, 75.96879882812502], + [-68.14873046875002, 76.06704101562497], + [-68.31728515625, 76.09077148437501], + [-68.56064453125, 76.15019531250002], + [-68.76308593749994, 76.18662109374998], + [-69.10756835937497, 76.280859375], + [-69.372900390625, 76.331884765625], + [-69.46088867187498, 76.37172851562505], + [-69.48408203125001, 76.39916992187503], + [-69.39965820312494, 76.43627929687506], + [-68.864990234375, 76.56137695312503], + [-68.66074218749998, 76.58662109375004], + [-68.24541015624999, 76.61674804687505], + [-68.14721679687497, 76.63564453125], + [-68.1142578125, 76.65063476562503], + [-68.22338867187494, 76.67768554687501], + [-68.76738281250002, 76.66801757812502], + [-69.25205078125, 76.68613281250006], + [-69.67382812499994, 76.73588867187507], + [-69.74721679687497, 76.75239257812495], + [-69.81865234374996, 76.78276367187502], + [-69.8880859375, 76.82705078125], + [-69.87221679687494, 76.87661132812497], + [-69.77104492187493, 76.93144531250002], + [-69.71171874999993, 76.96904296875005], + [-69.69423828125002, 76.98945312500004], + [-70.22446289062503, 76.85458984375], + [-70.44130859375, 76.80737304687497], + [-70.613134765625, 76.82182617187499], + [-70.73369140624996, 76.84418945312501], + [-70.792822265625, 76.86909179687504], + [-70.790625, 76.896484375], + [-70.77124023437497, 76.91650390625], + [-70.73466796874996, 76.92900390625007], + [-71.0150390625, 76.98486328125], + [-71.14145507812498, 77.02866210937503], + [-71.15488281249995, 77.073876953125], + [-71.05546875, 77.1205078125], + [-70.95810546875, 77.15434570312505], + [-70.86284179687496, 77.175439453125], + [-70.60371093749993, 77.19384765625003], + [-69.65654296874999, 77.22900390625], + [-68.97832031250002, 77.19531250000006], + [-68.74746093749997, 77.30693359375005], + [-68.59160156249999, 77.34252929687503], + [-68.13554687499999, 77.37958984375001], + [-67.43378906249993, 77.38466796875], + [-66.93798828125, 77.36420898437501], + [-66.70576171874995, 77.338037109375], + [-66.38945312499999, 77.28027343750003], + [-66.37128906250001, 77.29770507812503], + [-66.44765624999994, 77.34980468749998], + [-66.45307617187498, 77.39306640625003], + [-66.32529296874998, 77.46821289062495], + [-66.26645507812498, 77.51538085937497], + [-66.30644531249996, 77.56450195312505], + [-66.44536132812502, 77.61567382812498], + [-66.69121093749999, 77.68120117187502], + [-66.82353515624996, 77.68662109375003], + [-66.97065429687498, 77.67084960937504], + [-67.14736328125002, 77.634521484375], + [-67.51464843749997, 77.54291992187498], + [-67.68808593749995, 77.523779296875], + [-67.97734375000002, 77.51889648437498], + [-68.1373046875, 77.53046875000004], + [-68.29189453124997, 77.54418945312497], + [-68.53349609374999, 77.59277343750003], + [-68.62153320312498, 77.60185546875002], + [-68.72822265624995, 77.58056640625003], + [-68.85366210937502, 77.52885742187505], + [-68.97456054687495, 77.49262695312495], + [-69.09091796875003, 77.471923828125], + [-69.19965820312498, 77.46293945312505], + [-69.35136718749999, 77.467138671875], + [-69.97675781249993, 77.54765625000007], + [-70.11816406249997, 77.58349609375], + [-70.12636718749994, 77.63779296875003], + [-70.31831054687498, 77.69038085937501], + [-70.53540039062497, 77.699560546875], + [-70.56191406249994, 77.71718749999997], + [-70.28662109375, 77.79824218749997], + [-70.08149414062495, 77.83139648437506], + [-70.11445312500001, 77.84135742187505], + [-70.41240234374996, 77.84311523437503], + [-70.61352539062497, 77.8], + [-70.72871093750001, 77.792724609375], + [-70.99360351562495, 77.79155273437502], + [-71.27163085937494, 77.81313476562497], + [-71.38984374999995, 77.83203125], + [-71.51240234374995, 77.87539062500005], + [-71.64990234375, 77.89980468750005], + [-72.06494140625, 77.93681640625005], + [-72.15854492187498, 77.95693359374997], + [-72.24726562499993, 77.99042968750004], + [-72.586328125, 78.08520507812497], + [-72.79150390624997, 78.15488281250006], + [-72.81806640624995, 78.1943359375], + [-72.58129882812494, 78.27910156250005], + [-72.57094726562497, 78.29873046874997], + [-72.67246093749995, 78.33530273437503], + [-72.71479492187495, 78.36230468750003], + [-72.67973632812502, 78.399560546875], + [-72.47250976562498, 78.48203125], + [-72.39560546874995, 78.50434570312501], + [-72.02368164062494, 78.55278320312502], + [-71.65131835937493, 78.62314453124998], + [-71.515625, 78.63896484374999], + [-71.39477539062497, 78.64262695312505], + [-70.90576171875, 78.63847656249999], + [-70.75410156249993, 78.65581054687505], + [-70.625390625, 78.69013671875004], + [-70.41420898437497, 78.72490234375002], + [-69.97353515625, 78.777685546875], + [-68.99345703124999, 78.857421875], + [-68.92963867187495, 78.86679687500006], + [-68.92392578125003, 78.88193359375003], + [-69.01196289062503, 78.92304687499995], + [-69.03051757812497, 78.94287109375], + [-68.82983398437494, 78.97973632812497], + [-68.37705078124998, 79.037841796875], + [-68.067529296875, 79.0658203125], + [-67.86835937500001, 79.06787109374997], + [-67.70776367187497, 79.08037109375005], + [-67.48222656249993, 79.11689453125001], + [-67.35454101562496, 79.12333984374999], + [-66.58374023437494, 79.1376953125], + [-66.24277343750003, 79.11782226562502], + [-66.07534179687494, 79.11821289062502], + [-65.96787109374998, 79.13237304687507], + [-65.82553710937503, 79.17373046874997], + [-65.55976562499998, 79.27646484375003], + [-65.41987304687498, 79.34023437500005], + [-65.28779296874998, 79.43730468750002], + [-65.116943359375, 79.58901367187502], + [-64.9892578125, 79.73696289062505], + [-64.904638671875, 79.88125], + [-64.83896484375003, 79.96918945312501], + [-64.79228515624993, 80.00063476562502], + [-64.63242187499998, 80.04057617187499], + [-64.46572265625002, 80.07167968750002], + [-64.17915039062498, 80.09926757812497], + [-64.20527343749998, 80.11210937499999], + [-64.32680664062497, 80.13359375000002], + [-64.43994140625, 80.14184570312503], + [-64.54462890624993, 80.13691406249998], + [-64.73525390624997, 80.10444335937495], + [-64.98222656249999, 80.08247070312501], + [-65.22211914062493, 80.0859375], + [-65.39492187499997, 80.077734375], + [-65.55341796875001, 80.047998046875], + [-65.81044921874997, 80.024072265625], + [-65.98193359375, 80.02949218749995], + [-66.29150390625, 80.07226562499997], + [-66.44770507812495, 80.08027343750001], + [-66.84365234374997, 80.07622070312507], + [-66.95947265625003, 80.092041015625], + [-67.06064453125003, 80.12314453125003], + [-67.14130859374995, 80.16645507812498], + [-67.20146484374993, 80.22216796875003], + [-67.19316406249993, 80.28007812500002], + [-67.05063476562503, 80.384521484375], + [-66.99589843749999, 80.41298828125002], + [-66.61005859374998, 80.52958984375005], + [-66.37231445312494, 80.58417968749998], + [-66.13569335937498, 80.625], + [-65.96328125000002, 80.64897460937505], + [-65.80097656250001, 80.65971679687502], + [-65.64521484374998, 80.68505859375003], + [-65.35820312499993, 80.76650390625], + [-65.06215820312494, 80.83632812500002], + [-64.69379882812495, 80.96601562499998], + [-64.51552734374997, 81], + [-63.891552734374926, 81.05644531250002], + [-63.72197265624993, 81.05732421875001], + [-63.578027343749994, 81.04326171874999], + [-63.44169921874993, 81.01386718749995], + [-63.05859374999997, 80.885595703125], + [-63.028662109375006, 80.88955078125002], + [-63.09545898437503, 80.93808593750006], + [-63.23520507812498, 81.08334960937498], + [-63.2125, 81.14311523437499], + [-62.99326171874998, 81.20698242187504], + [-62.90336914062496, 81.21835937500003], + [-62.67192382812496, 81.21411132812497], + [-62.29887695312499, 81.19438476562505], + [-62.04941406249998, 81.17275390625], + [-61.8603515625, 81.13759765625002], + [-61.63559570312498, 81.11572265625], + [-61.51909179687493, 81.11679687500003], + [-61.43598632812498, 81.13359375000002], + [-61.31699218749998, 81.1884765625], + [-61.162060546874955, 81.28149414062503], + [-61.1, 81.39609375], + [-61.130761718749966, 81.53232421875006], + [-61.175976562499955, 81.63188476562499], + [-61.235693359375034, 81.69458007812497], + [-61.20292968750002, 81.746875], + [-61.01503906250002, 81.80957031250006], + [-60.842871093750034, 81.85537109374997], + [-60.43237304687497, 81.92016601562503], + [-60.099462890625006, 81.93735351562498], + [-59.90190429687499, 81.93300781249997], + [-59.642285156249955, 81.90263671875002], + [-59.28193359374998, 81.88403320312503], + [-58.956787109375, 81.82519531250003], + [-58.429785156250034, 81.69003906250003], + [-58.07993164062498, 81.622216796875], + [-57.79033203124996, 81.59174804687498], + [-57.50488281249997, 81.539892578125], + [-57.08286132812498, 81.42993164062497], + [-56.86206054687503, 81.38271484375005], + [-56.73066406249998, 81.365625], + [-56.615136718749994, 81.362890625], + [-56.658154296874955, 81.394287109375], + [-56.85966796874999, 81.45996093749997], + [-57.16840820312498, 81.53217773437504], + [-57.85302734375003, 81.66201171875002], + [-58.230078125, 81.75366210937503], + [-58.56821289062498, 81.85820312500002], + [-58.81674804687498, 81.92041015624997], + [-59.26801757812498, 81.98208007812502], + [-59.26181640624998, 82.00664062500005], + [-58.717382812500006, 82.09306640624999], + [-57.716894531250006, 82.16831054687503], + [-56.58935546874997, 82.22714843750003], + [-56.21196289062502, 82.22114257812495], + [-55.54868164062498, 82.245751953125], + [-55.486230468749966, 82.28286132812502], + [-55.343603515625034, 82.29956054687506], + [-54.72587890624996, 82.35136718750002], + [-54.54887695312496, 82.35063476562505], + [-54.27705078124998, 82.32607421875002], + [-53.98730468750003, 82.27924804687498], + [-53.85322265624998, 82.23686523437507], + [-53.671337890624955, 82.16406249999997], + [-53.58203124999997, 82.06157226562505], + [-53.59550781249996, 81.73803710937506], + [-53.59077148437498, 81.67685546875], + [-53.55566406250003, 81.65327148437501], + [-53.430126953124926, 81.68837890624997], + [-53.27998046874998, 81.75361328125001], + [-53.14501953125003, 81.79975585937501], + [-53.04121093750001, 81.87099609375005], + [-52.96850585937494, 81.967138671875], + [-52.925537109375, 82.03837890625005], + [-53.101953124999966, 82.11894531250002], + [-53.110742187499966, 82.25122070312497], + [-53.022558593750034, 82.32172851562504], + [-52.77558593749998, 82.32172851562504], + [-51.75400390624998, 82.07822265624998], + [-51.35185546875002, 82.02563476562503], + [-50.894433593749994, 81.89521484375001], + [-50.360058593749926, 81.90908203125], + [-49.867041015625034, 81.89301757812501], + [-49.648828125, 81.897802734375], + [-49.54106445312496, 81.91806640625003], + [-49.69428710937501, 81.97211914062495], + [-50.39482421874999, 82.12070312500003], + [-50.713134765625, 82.23735351562499], + [-50.93554687500003, 82.38281250000003], + [-50.98994140625001, 82.46015624999998], + [-50.81953125000001, 82.47407226562498], + [-50.03710937499994, 82.472412109375], + [-48.861181640625006, 82.40541992187502], + [-47.357421875, 82.17363281250005], + [-46.61733398437494, 82.09697265624999], + [-45.29106445312502, 81.82880859374998], + [-44.89096679687495, 81.78828124999998], + [-44.7294921875, 81.77983398437505], + [-44.607617187499955, 81.81293945312504], + [-44.53242187500001, 81.84892578124999], + [-44.52690429687496, 81.89682617187498], + [-44.591015624999955, 81.956689453125], + [-44.62773437499996, 82.02587890624997], + [-44.63710937500002, 82.10444335937498], + [-44.54707031249998, 82.26005859374999], + [-44.33320312500001, 82.31079101562503], + [-44.23886718749998, 82.3681640625], + [-44.3265625, 82.47172851562505], + [-44.57724609374998, 82.542626953125], + [-45.55244140624998, 82.725244140625], + [-45.55654296875002, 82.74702148437498], + [-45.35961914062494, 82.77094726562498], + [-45.06743164062502, 82.78496093749999], + [-42.650732421875006, 82.741455078125], + [-42.23295898437496, 82.72548828125005], + [-42.054638671874955, 82.70981445312503], + [-41.97656249999997, 82.68916015625001], + [-41.87646484375, 82.680322265625], + [-41.357275390625006, 82.70498046875005], + [-41.36962890625003, 82.75], + [-41.434423828125006, 82.77861328125002], + [-44.239208984374955, 82.85678710937506], + [-44.76196289062497, 82.883544921875], + [-45.02792968749998, 82.88559570312498], + [-45.30297851562497, 82.86508789062498], + [-45.87333984374999, 82.85488281250002], + [-46.136816406250006, 82.85883789062504], + [-46.47817382812502, 82.95190429687497], + [-46.169042968750006, 83.06386718749997], + [-45.908886718749955, 83.06132812499999], + [-45.41459960937496, 83.01767578124998], + [-45.12177734374998, 83.07866210937505], + [-44.65693359374998, 83.12905273437502], + [-44.19731445312496, 83.146826171875], + [-43.19458007812503, 83.25512695312503], + [-43.00927734375003, 83.26459960937501], + [-42.77553710937502, 83.25878906249997], + [-42.25952148437497, 83.23198242187502], + [-42.054589843749966, 83.20517578124998], + [-41.81977539062498, 83.14775390625002], + [-41.68349609375002, 83.13002929687502], + [-41.52197265624997, 83.12675781249999], + [-41.300146484375006, 83.10078125000004], + [-40.97939453125002, 83.18486328125002], + [-40.68945312500003, 83.27519531250005], + [-40.35683593750002, 83.332177734375], + [-39.886328125, 83.29892578124998], + [-39.58842773437499, 83.25556640625004], + [-39.31601562499998, 83.20390624999999], + [-38.93110351562501, 83.17534179687502], + [-38.27836914062499, 82.99887695312506], + [-38.15625, 82.9986328125], + [-38.098583984374955, 83.01357421875002], + [-38.03701171875002, 83.04628906250002], + [-38.01489257812494, 83.09482421875006], + [-37.934765624999955, 83.16074218749998], + [-37.99277343749998, 83.18510742187507], + [-38.53955078125, 83.25815429687503], + [-38.642919921875006, 83.286279296875], + [-38.74780273437497, 83.33256835937499], + [-38.74956054687496, 83.37084960937497], + [-38.64824218750002, 83.401025390625], + [-38.541455078124926, 83.41479492187506], + [-38.187939453124955, 83.40229492187498], + [-38.07109374999993, 83.41210937500003], + [-37.96083984374994, 83.437646484375], + [-37.828027343749994, 83.48554687499998], + [-37.72333984374998, 83.49775390624998], + [-37.486914062500034, 83.49912109375], + [-37.122998046874955, 83.46840820312497], + [-36.80449218750002, 83.46582031249997], + [-36.689599609374966, 83.47993164062501], + [-36.67211914062494, 83.50991210937497], + [-36.644433593749994, 83.52895507812505], + [-36.60649414062499, 83.53696289062498], + [-35.451855468749955, 83.53862304687505], + [-35.16552734374997, 83.545751953125], + [-34.941650390625, 83.56845703125], + [-34.66777343749999, 83.571142578125], + [-34.42832031249998, 83.55756835937501], + [-34.13193359374998, 83.52866210937498], + [-33.83735351562501, 83.52998046874998], + [-33.39833984375002, 83.57724609375], + [-32.98442382812499, 83.59960937500006], + [-30.70292968749996, 83.59340820312502], + [-29.952880859375, 83.56484374999997] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Guatemala", + "iso_a2": "GT", + "iso_a3": "GTM", + "iso_n3": "320", + "continent": "North America" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-89.16147460937499, 17.81484375], + [-89.17109375, 17.572265625], + [-89.18217773437499, 17.291210937499997], + [-89.190380859375, 17.084667968749997], + [-89.20126953124999, 16.808984375], + [-89.21245117187499, 16.527148437500003], + [-89.22763671874999, 16.142822265625], + [-89.2375, 15.894433593749994], + [-89.2328125, 15.888671875], + [-89.11357421874999, 15.900683593750003], + [-88.937158203125, 15.88984375], + [-88.89404296875, 15.890625], + [-88.839990234375, 15.868994140624991], + [-88.79833984375, 15.8625], + [-88.708642578125, 15.806542968749994], + [-88.60336914062499, 15.76416015625], + [-88.53623046874999, 15.849609375], + [-88.57158203124999, 15.901074218749997], + [-88.59799804687499, 15.92734375], + [-88.5939453125, 15.950292968749991], + [-88.22832031249999, 15.72900390625], + [-88.271435546875, 15.694873046875003], + [-88.36455078124999, 15.616015625], + [-88.53330078124999, 15.481201171875], + [-88.68447265625, 15.360498046874994], + [-88.82993164062499, 15.251025390625003], + [-88.96098632812499, 15.152441406249991], + [-88.97641601562499, 15.142675781249991], + [-89.142578125, 15.072314453125003], + [-89.1703125, 15.039892578124991], + [-89.20610351562499, 14.900585937499997], + [-89.22236328125, 14.866064453124991], + [-89.19223632812499, 14.788720703124994], + [-89.16220703124999, 14.669238281250003], + [-89.17177734375, 14.606884765624997], + [-89.28671875, 14.529980468749997], + [-89.33940429687499, 14.460742187500003], + [-89.36259765624999, 14.416015625], + [-89.383251953125, 14.427636718749994], + [-89.41884765625, 14.431103515624997], + [-89.50087890625, 14.413769531249997], + [-89.54052734375, 14.409912109375], + [-89.5736328125, 14.390087890624997], + [-89.57695312499999, 14.347070312499994], + [-89.55502929687499, 14.277246093749994], + [-89.54716796874999, 14.241259765625003], + [-89.570263671875, 14.224658203125003], + [-89.6712890625, 14.182714843749991], + [-89.7111328125, 14.141308593749997], + [-89.74936523437499, 14.077001953124991], + [-89.793701171875, 14.050097656250003], + [-89.83994140624999, 14.055078125], + [-89.872705078125, 14.045605468749997], + [-89.94267578124999, 13.997363281250003], + [-90.04814453124999, 13.904052734375], + [-90.104736328125, 13.834765625], + [-90.105908203125, 13.783007812500003], + [-90.09521484375, 13.736523437499997], + [-90.47910156249999, 13.900927734375003], + [-90.60693359375, 13.929003906250003], + [-91.14604492187499, 13.925585937500003], + [-91.37734375, 13.990185546874997], + [-91.64091796874999, 14.114941406249997], + [-91.819091796875, 14.228222656249997], + [-92.23515624999999, 14.54541015625], + [-92.20903320312499, 14.570996093749997], + [-92.18706054687499, 14.630078125], + [-92.159912109375, 14.691015625], + [-92.17646484375, 14.761328125], + [-92.18637695312499, 14.818359375], + [-92.1556640625, 14.901318359374997], + [-92.15854492187499, 14.963574218749997], + [-92.14423828125, 15.001953125], + [-92.09873046874999, 15.026757812499994], + [-92.07480468749999, 15.07421875], + [-92.204345703125, 15.237695312499994], + [-92.204248046875, 15.275], + [-92.187158203125, 15.320898437499991], + [-92.08212890624999, 15.495556640624997], + [-91.9572265625, 15.703222656249991], + [-91.81943359374999, 15.932373046875], + [-91.736572265625, 16.07016601562499], + [-91.433984375, 16.070458984374994], + [-91.2337890625, 16.07065429687499], + [-90.97958984374999, 16.07080078125], + [-90.70322265624999, 16.071044921875], + [-90.52197265625, 16.071191406249994], + [-90.44716796875, 16.072705078124997], + [-90.45986328125, 16.162353515625], + [-90.450146484375, 16.261376953124994], + [-90.4169921875, 16.351318359375], + [-90.4169921875, 16.391015625], + [-90.47109375, 16.43955078124999], + [-90.57578125, 16.467822265625003], + [-90.63408203124999, 16.5107421875], + [-90.634375, 16.565136718749997], + [-90.65996093749999, 16.630908203125003], + [-90.710693359375, 16.70810546874999], + [-90.816015625, 16.787109375], + [-90.975830078125, 16.867822265624994], + [-91.11186523437499, 16.976171875], + [-91.22416992187499, 17.112255859374997], + [-91.31918945312499, 17.19980468749999], + [-91.392333984375, 17.23642578124999], + [-91.409619140625, 17.255859375], + [-91.1955078125, 17.254101562499997], + [-90.99296874999999, 17.25244140625], + [-90.9916015625, 17.447460937499997], + [-90.9904296875, 17.620751953124994], + [-90.98916015625, 17.81640625], + [-90.622021484375, 17.816113281249997], + [-90.18359375, 17.815722656250003], + [-89.72880859374999, 17.815332031249994], + [-89.371533203125, 17.814990234375003], + [-89.16147460937499, 17.81484375] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "Guam", + "iso_a2": "GU", + "iso_a3": "GUM", + "iso_n3": "316", + "continent": "Oceania" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [144.74179687500003, 13.25927734375], + [144.69951171875005, 13.257519531249997], + [144.66279296875, 13.291064453125003], + [144.65, 13.3134765625], + [144.64931640625002, 13.4287109375], + [144.79033203125005, 13.52685546875], + [144.83671875000005, 13.622363281250003], + [144.87539062500002, 13.614648437499994], + [144.90966796875, 13.599023437499994], + [144.94082031250002, 13.5703125], + [144.77988281250003, 13.4111328125], + [144.74179687500003, 13.25927734375] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Guyana", + "iso_a2": "GY", + "iso_a3": "GUY", + "iso_n3": "328", + "continent": "South America" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-57.194775390625, 5.5484375], + [-57.24790039062499, 5.485253906249994], + [-57.25751953125, 5.445166015624991], + [-57.291894531249994, 5.373974609374997], + [-57.3185546875, 5.335351562499994], + [-57.27963867187499, 5.246777343749997], + [-57.235302734375, 5.242871093749997], + [-57.21845703125, 5.231542968749991], + [-57.20732421874999, 5.214208984374991], + [-57.20981445312499, 5.195410156249991], + [-57.22685546874999, 5.178515624999989], + [-57.269287109375, 5.157031249999989], + [-57.3095703125, 5.105859375], + [-57.30576171874999, 5.049560546875], + [-57.331005859375, 5.020166015624994], + [-57.41215820312499, 5.004589843749997], + [-57.57089843749999, 5.004492187499991], + [-57.648828125, 5.000683593749997], + [-57.711083984374994, 4.991064453124991], + [-57.75200195312499, 4.954492187499994], + [-57.804101562499994, 4.929052734374991], + [-57.844921875, 4.923046875], + [-57.881103515625, 4.880615234375], + [-57.91704101562499, 4.820410156249991], + [-57.90488281249999, 4.779296875], + [-57.86787109375, 4.724316406249997], + [-57.84599609374999, 4.668164062499997], + [-57.87470703125, 4.577099609374997], + [-57.90625, 4.506787109374997], + [-57.924707031249994, 4.453125], + [-57.94975585937499, 4.349951171874991], + [-58.0107421875, 4.236474609374994], + [-58.05449218749999, 4.171923828124989], + [-58.054296875, 4.101660156249991], + [-58.0322265625, 4.001953125], + [-57.90771484375, 3.856689453125], + [-57.86655273437499, 3.787255859374994], + [-57.832666015624994, 3.675976562499997], + [-57.720361328124994, 3.58828125], + [-57.64946289062499, 3.517382812499989], + [-57.65610351562499, 3.423730468749994], + [-57.646728515625, 3.39453125], + [-57.602734375, 3.370947265624991], + [-57.54960937499999, 3.352832031249989], + [-57.49057617187499, 3.354296874999989], + [-57.437890625, 3.362255859374997], + [-57.42558593749999, 3.375439453124997], + [-57.303662109375, 3.377099609374994], + [-57.289941406249994, 3.353613281249991], + [-57.28291015625, 3.218847656249991], + [-57.27792968749999, 3.164306640625], + [-57.248974609375, 3.142285156249997], + [-57.231640625, 3.10888671875], + [-57.23056640624999, 3.078564453124997], + [-57.225, 3.003076171874994], + [-57.206933593749994, 2.96337890625], + [-57.20981445312499, 2.8828125], + [-57.19736328124999, 2.853271484375], + [-57.16362304687499, 2.833251953125], + [-57.12114257812499, 2.775537109374994], + [-57.105126953124994, 2.768261718749997], + [-57.096875, 2.747851562499989], + [-57.060449218749994, 2.665673828124994], + [-57.041943359375, 2.64111328125], + [-57.028955078124994, 2.6375], + [-57.02348632812499, 2.608984375], + [-56.99711914062499, 2.532177734374997], + [-56.97929687499999, 2.513232421874989], + [-56.945214843749994, 2.456835937499989], + [-56.93149414062499, 2.395361328124991], + [-56.88642578125, 2.325976562499989], + [-56.84052734375, 2.277148437499989], + [-56.81982421875, 2.226660156249991], + [-56.761132812499994, 2.114892578124994], + [-56.704345703125, 2.036474609374991], + [-56.627197265625, 2.016015625], + [-56.5626953125, 2.005078125], + [-56.522363281249994, 1.974804687499997], + [-56.4828125, 1.942138671875], + [-56.52548828124999, 1.92724609375], + [-56.56357421874999, 1.9072265625], + [-56.616455078125, 1.922656249999989], + [-56.68984375, 1.914306640625], + [-56.766259765624994, 1.8921875], + [-56.83671874999999, 1.88125], + [-56.96953124999999, 1.91640625], + [-57.01005859374999, 1.921240234374991], + [-57.03759765625, 1.936474609374997], + [-57.092675781249994, 2.005810546874997], + [-57.118896484375, 2.013964843749989], + [-57.189599609374994, 1.981591796874994], + [-57.2755859375, 1.959228515625], + [-57.31748046874999, 1.963476562499991], + [-57.366796875, 1.940136718749997], + [-57.41269531249999, 1.908935546875], + [-57.500439453125, 1.773828125], + [-57.54575195312499, 1.72607421875], + [-57.59443359375, 1.7041015625], + [-57.69174804687499, 1.704785156249997], + [-57.795654296875, 1.7], + [-57.8734375, 1.667285156249989], + [-57.94633789062499, 1.650585937499997], + [-57.9828125, 1.6484375], + [-57.9951171875, 1.574316406249991], + [-58.01176757812499, 1.539941406249994], + [-58.03466796875, 1.520263671875], + [-58.09130859375, 1.514355468749997], + [-58.142236328124994, 1.516992187499994], + [-58.173095703125, 1.5478515625], + [-58.230419921875, 1.563281249999989], + [-58.281152343749994, 1.574316406249991], + [-58.314208984375, 1.591943359374994], + [-58.34067382812499, 1.587548828124994], + [-58.362695312499994, 1.556689453124989], + [-58.38037109375, 1.530224609374997], + [-58.39580078124999, 1.481738281249989], + [-58.47294921874999, 1.466259765624997], + [-58.5060546875, 1.438671875], + [-58.48686523437499, 1.347753906249991], + [-58.495703125, 1.312255859375], + [-58.511865234374994, 1.28466796875], + [-58.605078125, 1.279150390624991], + [-58.68461914062499, 1.281054687499989], + [-58.73032226562499, 1.247509765624997], + [-58.78720703124999, 1.20849609375], + [-58.82177734375, 1.201220703124989], + [-58.8625, 1.20361328125], + [-58.91660156249999, 1.248876953124991], + [-58.968505859375, 1.304589843749994], + [-59.10039062499999, 1.343652343749994], + [-59.231201171875, 1.376025390624989], + [-59.31699218749999, 1.464599609375], + [-59.33725585937499, 1.508203125], + [-59.377685546875, 1.52734375], + [-59.479443359375, 1.632421875], + [-59.53569335937499, 1.7], + [-59.596630859375, 1.718017578125], + [-59.66660156249999, 1.746289062499997], + [-59.66376953125, 1.795214843749989], + [-59.66850585937499, 1.842333984374989], + [-59.69853515624999, 1.861474609374994], + [-59.74072265625, 1.874169921874994], + [-59.75620117187499, 1.900634765625], + [-59.75175781249999, 1.96240234375], + [-59.74350585937499, 2.121630859374989], + [-59.75522460937499, 2.274121093749997], + [-59.84912109375, 2.327050781249994], + [-59.8896484375, 2.362939453124994], + [-59.96079101562499, 2.58837890625], + [-59.9943359375, 2.689990234374989], + [-59.99589843749999, 2.765429687499989], + [-59.972314453124994, 2.990478515625], + [-59.94565429687499, 3.087841796874997], + [-59.873046875, 3.283105468749994], + [-59.83115234374999, 3.34921875], + [-59.82880859375, 3.398583984374994], + [-59.83305664062499, 3.462158203125], + [-59.854394531249994, 3.5875], + [-59.731640625, 3.666552734374989], + [-59.67900390624999, 3.699804687499991], + [-59.67021484374999, 3.752734374999989], + [-59.604443359375, 3.819677734374991], + [-59.575390625, 3.883447265624994], + [-59.55112304687499, 3.933544921874997], + [-59.557763671874994, 3.960009765624989], + [-59.58642578125, 3.975390624999989], + [-59.62021484374999, 4.023144531249997], + [-59.69121093749999, 4.160400390625], + [-59.71689453124999, 4.188183593749997], + [-59.73857421874999, 4.226757812499997], + [-59.727490234375, 4.287646484374989], + [-59.69970703125, 4.353515625], + [-59.703271484374994, 4.381103515625], + [-59.74580078125, 4.416650390624994], + [-59.83334960937499, 4.475927734374991], + [-59.90610351562499, 4.480322265624991], + [-59.962353515625, 4.501708984375], + [-60.04501953124999, 4.504589843749997], + [-60.11113281249999, 4.511181640624997], + [-60.1486328125, 4.533251953124989], + [-60.14091796874999, 4.569628906249989], + [-60.12456054687499, 4.59765625], + [-60.06894531249999, 4.666650390624994], + [-60.03178710937499, 4.740527343749989], + [-60.026757812499994, 4.812695312499997], + [-60.01547851562499, 4.907519531249989], + [-59.99936523437499, 4.98984375], + [-59.990673828125, 5.082861328124991], + [-60.078076171875, 5.143994140624997], + [-60.10595703125, 5.194238281249994], + [-60.142041015625, 5.238818359374989], + [-60.18173828124999, 5.238818359374989], + [-60.241650390625, 5.257958984374994], + [-60.335205078125, 5.199316406249991], + [-60.40878906249999, 5.21015625], + [-60.45952148437499, 5.188085937499991], + [-60.576416015625, 5.192480468749991], + [-60.6513671875, 5.221142578124997], + [-60.742138671875, 5.202050781249994], + [-60.954003906249994, 5.437402343749994], + [-61.1671875, 5.67421875], + [-61.37680664062499, 5.906982421875], + [-61.3908203125, 5.938769531249989], + [-61.303125, 6.049511718749997], + [-61.22495117187499, 6.129199218749989], + [-61.15947265624999, 6.174414062499991], + [-61.12871093749999, 6.214306640624997], + [-61.152294921875, 6.385107421874991], + [-61.151025390624994, 6.446533203125], + [-61.181591796875, 6.513378906249997], + [-61.20361328125, 6.58837890625], + [-61.17724609375, 6.650927734374989], + [-61.14560546874999, 6.69453125], + [-61.10478515624999, 6.711376953124997], + [-61.007080078125, 6.726611328124989], + [-60.93798828125, 6.732763671874991], + [-60.91357421875, 6.7578125], + [-60.87333984374999, 6.786914062499989], + [-60.82084960937499, 6.788476562499994], + [-60.717919921874994, 6.768310546875], + [-60.671044921874994, 6.805957031249989], + [-60.586083984374994, 6.857080078124994], + [-60.39501953125, 6.945361328124989], + [-60.35209960937499, 7.002880859374997], + [-60.32207031249999, 7.092041015625], + [-60.32548828124999, 7.133984375], + [-60.34506835937499, 7.15], + [-60.39238281249999, 7.16455078125], + [-60.46494140624999, 7.166552734374989], + [-60.523193359375, 7.143701171874994], + [-60.583203125, 7.156201171874997], + [-60.63330078125, 7.211083984374994], + [-60.636181640625, 7.256591796875], + [-60.60654296874999, 7.320849609374989], + [-60.62373046875, 7.363330078124989], + [-60.71923828125, 7.498681640624994], + [-60.718652343749994, 7.535937499999989], + [-60.64946289062499, 7.596630859374997], + [-60.610107421875, 7.648339843749994], + [-60.55634765625, 7.772021484374989], + [-60.513623046875, 7.813183593749997], + [-60.380615234375, 7.82763671875], + [-60.34677734374999, 7.85400390625], + [-60.27890625, 7.91943359375], + [-60.178173828125, 7.994042968749994], + [-60.032421875, 8.053564453124991], + [-59.99072265625, 8.162011718749994], + [-59.96484375, 8.191601562499997], + [-59.849072265625, 8.248681640624994], + [-59.82890624999999, 8.279150390624991], + [-59.831640625, 8.305957031249989], + [-60.017529296875, 8.54931640625], + [-59.980615234374994, 8.532617187499994], + [-59.83652343749999, 8.373828124999989], + [-59.756738281249994, 8.339501953124994], + [-59.73994140625, 8.338720703124991], + [-59.73930664062499, 8.379980468749991], + [-59.66611328124999, 8.362597656249989], + [-59.47690429687499, 8.254003906249991], + [-59.20024414062499, 8.074609375], + [-58.81157226562499, 7.735595703125], + [-58.701074218749994, 7.606640625], + [-58.626611328124994, 7.5458984375], + [-58.51108398437499, 7.398046875], + [-58.477294921875, 7.32578125], + [-58.48056640624999, 7.038134765624989], + [-58.582910156249994, 6.843652343749994], + [-58.60791015625, 6.697314453124989], + [-58.6134765625, 6.502539062499991], + [-58.67294921874999, 6.390771484374994], + [-58.593994140625, 6.451513671874991], + [-58.569482421874994, 6.627246093749989], + [-58.50229492187499, 6.733984375], + [-58.414990234375, 6.851171875], + [-58.2984375, 6.879296875], + [-58.1728515625, 6.829394531249989], + [-58.07177734375, 6.820605468749989], + [-57.982568359374994, 6.785888671875], + [-57.792871093749994, 6.598535156249994], + [-57.607568359374994, 6.450390625], + [-57.54013671874999, 6.33154296875], + [-57.343652343749994, 6.272119140624994], + [-57.2275390625, 6.178417968749997], + [-57.19023437499999, 6.097314453124994], + [-57.167236328125, 5.885009765625], + [-57.2052734375, 5.564599609374994], + [-57.194775390625, 5.5484375] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "Hong Kong", + "iso_a2": "HK", + "iso_a3": "HKG", + "iso_n3": "344", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [114.23203125000006, 22.210546874999977], + [114.20722656250004, 22.195166015625034], + [114.13876953125006, 22.268359375000045], + [114.13447265625004, 22.292236328125], + [114.18740234375, 22.29663085937503], + [114.246875, 22.263574218750023], + [114.2435546875, 22.23354492187505], + [114.23203125000006, 22.210546874999977] + ] + ], + [ + [ + [113.9977539062501, 22.210498046875045], + [113.87734375, 22.210449218750057], + [113.85156249999997, 22.220458984375057], + [113.83886718749997, 22.24169921875003], + [113.88154296875004, 22.28027343749997], + [114.04394531250003, 22.33339843750005], + [114.0033203125, 22.27753906250004], + [113.9977539062501, 22.210498046875045] + ] + ], + [ + [ + [114.33525390625002, 22.39624023437497], + [114.29052734374997, 22.37377929687503], + [114.28789062500007, 22.325292968750006], + [114.26796875, 22.295556640624966], + [114.1390625, 22.348437500000017], + [114.03281250000006, 22.375878906249994], + [113.93730468750002, 22.364990234375], + [113.90253906250004, 22.396093750000034], + [113.89648437499997, 22.428173828124983], + [114.00673828125, 22.484033203124994], + [114.01542968750007, 22.51191406250001], + [114.0182617187501, 22.51445312499999], + [114.05039062500006, 22.54296875000003], + [114.09785156250004, 22.55126953125003], + [114.12285156250002, 22.564990234375074], + [114.1881835937501, 22.564990234375074], + [114.22822265625004, 22.55395507812503], + [114.26601562500005, 22.540966796874983], + [114.26962890625006, 22.536767578124994], + [114.29111328125006, 22.499462890624955], + [114.2845703125, 22.457617187500034], + [114.32519531250003, 22.437402343750023], + [114.33525390625002, 22.39624023437497] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 5, + "name": "Heard I. and McDonald Is.", + "iso_a2": "HM", + "iso_a3": "HMD", + "iso_n3": "334", + "continent": "Seven seas (open ocean)" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [73.70742187500002, -53.137109375], + [73.58798828125, -53.1845703125], + [73.46513671875002, -53.184179687500006], + [73.41328125000001, -53.14677734375002], + [73.33632812500002, -53.029882812500006], + [73.28544921875002, -53.021484375], + [73.25390625, -52.989355468750006], + [73.25117187500001, -52.97578125000001], + [73.3052734375, -52.96630859375], + [73.38808593750002, -52.999902343749994], + [73.58574218750002, -53.02714843750002], + [73.73125, -53.091210937499994], + [73.83779296875002, -53.11279296875], + [73.79511718750001, -53.1298828125], + [73.70742187500002, -53.137109375] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Honduras", + "iso_a2": "HN", + "iso_a3": "HND", + "iso_n3": "340", + "continent": "North America" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-85.78398437500002, 16.002832031249966], + [-85.48369140624996, 15.899511718749977], + [-85.16367187500003, 15.918164062499955], + [-85.04824218749997, 15.973974609375063], + [-84.97373046874998, 15.989892578124994], + [-84.64609375, 15.883593750000017], + [-84.55966796875, 15.802001953125], + [-84.49228515625003, 15.793945312500057], + [-84.44003906249995, 15.812597656250034], + [-84.42597656249993, 15.829492187500023], + [-84.490380859375, 15.847265625], + [-84.51962890625, 15.87275390625004], + [-84.26142578124998, 15.822607421875034], + [-83.77548828125, 15.436865234375063], + [-83.765283203125, 15.405468750000054], + [-83.972802734375, 15.519628906250034], + [-84.082763671875, 15.510888671875023], + [-84.11132812499997, 15.492431640625], + [-84.10517578124995, 15.430126953125011], + [-84.09506835937503, 15.400927734375017], + [-84.04794921875, 15.397607421875051], + [-84.01318359374994, 15.414404296875006], + [-83.92744140624998, 15.394042968750028], + [-83.87065429687496, 15.352734375000054], + [-83.80166015625002, 15.289257812499997], + [-83.76044921874998, 15.220361328124994], + [-83.71591796874995, 15.219238281250028], + [-83.67216796875002, 15.260742187500057], + [-83.58964843749999, 15.265771484375009], + [-83.53593749999999, 15.21938476562498], + [-83.49794921874997, 15.222119140624997], + [-83.55107421874996, 15.293994140624989], + [-83.67612304687503, 15.365429687499969], + [-83.64638671875, 15.368408203125043], + [-83.36918945312493, 15.239990234375], + [-83.29086914062498, 15.078906250000045], + [-83.2255859375, 15.042285156250045], + [-83.15751953124999, 14.993066406249966], + [-83.41503906249994, 15.008056640625], + [-83.5365234375, 14.977001953124983], + [-83.58974609375002, 14.907568359375048], + [-83.635498046875, 14.876416015624997], + [-83.67363281249996, 14.883544921875028], + [-83.75092773437498, 14.85625], + [-83.86728515624998, 14.794482421875003], + [-83.97226562499995, 14.771093750000034], + [-84.06582031250002, 14.786083984374983], + [-84.09296874999995, 14.770898437499994], + [-84.10029296874993, 14.750634765625051], + [-84.11440429687497, 14.731005859375045], + [-84.15078125, 14.720410156250011], + [-84.19238281249994, 14.726025390625011], + [-84.23920898437498, 14.747851562500017], + [-84.26396484374996, 14.738525390624972], + [-84.26665039062499, 14.698144531250009], + [-84.29194335937498, 14.687353515625034], + [-84.33979492187495, 14.706347656249989], + [-84.39365234375, 14.691748046875034], + [-84.45356445312495, 14.643701171875023], + [-84.53764648437496, 14.633398437499963], + [-84.64594726562498, 14.661083984375011], + [-84.72978515625002, 14.71337890625], + [-84.78916015625003, 14.790380859374977], + [-84.86044921874998, 14.809765625000011], + [-84.98515624999999, 14.752441406249972], + [-85.03735351562497, 14.685546875000014], + [-85.04863281249996, 14.644726562500054], + [-85.03652343749997, 14.607666015625057], + [-85.059375, 14.582958984374997], + [-85.11728515625, 14.570605468750045], + [-85.16132812500001, 14.525146484375028], + [-85.19150390625, 14.44663085937502], + [-85.19755859375002, 14.385986328125014], + [-85.17949218749996, 14.343310546875017], + [-85.20834960937498, 14.311816406250003], + [-85.28417968749997, 14.29165039062498], + [-85.37377929687503, 14.223876953125028], + [-85.47705078125003, 14.108691406250003], + [-85.57978515624998, 14.028222656250037], + [-85.68193359375002, 13.98256835937498], + [-85.731201171875, 13.93183593750004], + [-85.72773437499993, 13.876074218750048], + [-85.73393554687496, 13.85869140625006], + [-85.75341796875, 13.852050781250028], + [-85.78671874999995, 13.844433593749997], + [-85.98378906249997, 13.965673828125006], + [-86.04038085937503, 14.050146484374977], + [-86.08925781249994, 14.037207031250006], + [-86.15122070312495, 13.994580078125026], + [-86.23823242187501, 13.899462890625017], + [-86.33173828124995, 13.770068359375031], + [-86.37695312500003, 13.755664062500031], + [-86.61025390624997, 13.774853515625026], + [-86.73364257812494, 13.763476562500017], + [-86.75898437499995, 13.746142578125045], + [-86.77060546875003, 13.698730468749972], + [-86.763525390625, 13.635253906250014], + [-86.72958984375, 13.4072265625], + [-86.710693359375, 13.31337890624998], + [-86.72929687499996, 13.284375], + [-86.79213867187497, 13.279785156249972], + [-86.87353515624994, 13.266503906250023], + [-86.918212890625, 13.223583984374983], + [-86.92880859375, 13.17939453125004], + [-86.93315429687502, 13.117529296874963], + [-86.95888671875002, 13.053710937500014], + [-87.00932617187499, 13.007812499999986], + [-87.0591796875, 12.991455078125028], + [-87.337255859375, 12.979248046875028], + [-87.33251953125003, 13.084716796875028], + [-87.41279296874993, 13.127441406250028], + [-87.45844726562501, 13.215429687500006], + [-87.49838867187498, 13.274902343750043], + [-87.48515624999993, 13.310595703125031], + [-87.48911132812503, 13.352929687500051], + [-87.60224609374998, 13.385595703125034], + [-87.70834960937503, 13.360058593749983], + [-87.76938476562503, 13.376660156249997], + [-87.814208984375, 13.399169921875057], + [-87.73701171875001, 13.451367187500026], + [-87.73164062499998, 13.483105468750011], + [-87.75644531249995, 13.506005859374966], + [-87.781884765625, 13.521386718749994], + [-87.77421874999993, 13.580322265625014], + [-87.75854492187494, 13.649951171874989], + [-87.71533203125003, 13.812695312500011], + [-87.73144531250003, 13.841064453125014], + [-87.80224609374997, 13.889990234375034], + [-87.89199218749997, 13.894970703124983], + [-87.99101562499996, 13.879638671874972], + [-88.038720703125, 13.904638671875006], + [-88.08046875, 13.960595703125037], + [-88.15102539062497, 13.987353515624974], + [-88.27622070312498, 13.942675781250017], + [-88.40849609375002, 13.875390625], + [-88.44912109374994, 13.850976562499994], + [-88.48266601562503, 13.854248046875043], + [-88.49765624999998, 13.904541015624986], + [-88.50434570312501, 13.964208984374963], + [-88.51254882812498, 13.97895507812504], + [-88.583154296875, 14.000146484375009], + [-88.665625, 14.015527343750037], + [-88.70761718750003, 14.032080078125034], + [-88.74736328124996, 14.072265625000043], + [-88.84594726562497, 14.124755859374986], + [-88.868310546875, 14.16367187500002], + [-89.00019531249995, 14.252734375000045], + [-89.02685546874997, 14.296972656249991], + [-89.05712890625, 14.329150390624974], + [-89.12050781249994, 14.370214843749991], + [-89.17011718749993, 14.360302734375011], + [-89.33725585937495, 14.411376953125028], + [-89.36259765624996, 14.416015625], + [-89.33940429687496, 14.460742187500045], + [-89.28671874999998, 14.52998046875004], + [-89.17177734375, 14.606884765624983], + [-89.16220703125, 14.669238281249989], + [-89.192236328125, 14.788720703124994], + [-89.22236328125001, 14.86606445312502], + [-89.20610351562499, 14.90058593750004], + [-89.17031249999997, 15.039892578125006], + [-89.142578125, 15.072314453125031], + [-88.97641601562498, 15.142675781249977], + [-88.96098632812496, 15.15244140625002], + [-88.82993164062498, 15.251025390625031], + [-88.68447265625002, 15.360498046875037], + [-88.53330078124995, 15.481201171875028], + [-88.36455078124996, 15.616015625000045], + [-88.27143554687498, 15.694873046875045], + [-88.22832031249999, 15.729003906249972], + [-88.131103515625, 15.701025390625034], + [-88.05458984374994, 15.764843749999983], + [-88.010400390625, 15.786181640625074], + [-87.90703124999999, 15.862597656250017], + [-87.87495117187495, 15.879345703124955], + [-87.70185546874995, 15.910644531250028], + [-87.61816406249994, 15.909863281249955], + [-87.54497070312496, 15.832373046874977], + [-87.48691406250003, 15.790185546874994], + [-87.37749023437493, 15.826464843750017], + [-87.28588867187503, 15.834423828124955], + [-86.90722656249997, 15.762353515625023], + [-86.75703125000001, 15.794238281250017], + [-86.48081054687495, 15.801074218749989], + [-86.35664062499998, 15.783203125], + [-86.18120117187493, 15.88515625], + [-86.06855468749998, 15.905664062499994], + [-85.93627929687497, 15.953417968750045], + [-85.95390624999999, 16.002246093750045], + [-85.98564453124999, 16.02416992187497], + [-85.78398437500002, 16.002832031249966] + ] + ], + [ + [ + [-86.419921875, 16.37836914062501], + [-86.58027343749998, 16.300244140624983], + [-86.63041992187499, 16.30175781250003], + [-86.55693359375002, 16.36210937499999], + [-86.43828124999999, 16.413867187500045], + [-86.33784179687495, 16.43920898437497], + [-86.255517578125, 16.428222656250057], + [-86.419921875, 16.37836914062501] + ] + ], + [ + [ + [-85.87094726562498, 16.461523437499977], + [-85.94721679687495, 16.403613281250017], + [-85.96098632812502, 16.4296875], + [-85.92421875, 16.483300781249994], + [-85.87822265624993, 16.513964843750017], + [-85.83378906249996, 16.510888671875023], + [-85.84443359374998, 16.48774414062501], + [-85.87094726562498, 16.461523437499977] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Croatia", + "iso_a2": "HR", + "iso_a3": "HRV", + "iso_n3": "191", + "continent": "Europe" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [17.60781250000005, 42.76904296875], + [17.744238281250063, 42.70034179687505], + [17.34414062500008, 42.790380859375006], + [17.389550781249994, 42.79863281249999], + [17.431933593750017, 42.800390625], + [17.60781250000005, 42.76904296875] + ] + ], + [ + [ + [16.650683593750017, 42.99658203125], + [16.835546875000034, 42.968652343749994], + [16.971093750000023, 42.98149414062502], + [17.093652343750023, 42.96435546875], + [17.169824218749994, 42.93261718750003], + [17.188281250000045, 42.917041015625045], + [17.089355468750057, 42.91489257812506], + [16.9775390625, 42.92778320312502], + [16.850683593750006, 42.8955078125], + [16.738867187500063, 42.912744140624966], + [16.696386718750006, 42.93369140625006], + [16.666308593750017, 42.95991210937498], + [16.650683593750017, 42.99658203125] + ] + ], + [ + [ + [17.219824218750063, 43.02587890625], + [17.72363281250003, 42.850683593750034], + [17.667578125000063, 42.897119140624994], + [17.74023437500003, 42.91547851562498], + [17.80195312500001, 42.90224609375005], + [17.84130859375003, 42.845068359375034], + [17.918847656250023, 42.80742187500002], + [18.044531250000034, 42.74125976562502], + [18.12392578125005, 42.690576171874994], + [18.304003906250045, 42.59941406249999], + [18.346582031250023, 42.58666992187497], + [18.436328125000017, 42.559716796874994], + [18.438085937500006, 42.52294921875006], + [18.476660156250063, 42.48110351562505], + [18.517480468750023, 42.43291015624999], + [18.3330078125, 42.52788085937499], + [18.16064453124997, 42.63403320312503], + [17.823828125, 42.79741210937502], + [17.58496093750003, 42.83715820312503], + [17.25820312500008, 42.96845703125004], + [17.045410156250057, 43.014892578125], + [17.126464843750057, 43.025585937499955], + [17.219824218750063, 43.02587890625] + ] + ], + [ + [ + [17.194042968750068, 43.12578125000002], + [17.124121093750034, 43.115429687499955], + [16.679199218750057, 43.123144531250034], + [16.5498046875, 43.14389648437498], + [16.405859375000063, 43.197363281250034], + [16.37646484375003, 43.21376953125002], + [16.52138671875005, 43.22924804687506], + [16.65595703125004, 43.21376953125002], + [16.697265625, 43.174951171874994], + [17.061132812500063, 43.14389648437498], + [17.194042968750068, 43.12578125000002] + ] + ], + [ + [ + [16.785253906250006, 43.270654296874966], + [16.62744140625, 43.26806640624997], + [16.490332031250034, 43.28618164062502], + [16.423144531250045, 43.317236328125034], + [16.428125, 43.34340820312505], + [16.44892578125004, 43.38706054687506], + [16.601562500000057, 43.38188476562499], + [16.834375, 43.35083007812506], + [16.89130859375001, 43.314648437499955], + [16.873632812500063, 43.297949218750006], + [16.785253906250006, 43.270654296874966] + ] + ], + [ + [ + [15.371386718750074, 43.973828124999955], + [15.437207031250068, 43.899511718750006], + [15.37421875000004, 43.914794921875], + [15.30859375, 43.96079101562506], + [15.270019531250028, 44.01074218750003], + [15.371386718750074, 43.973828124999955] + ] + ], + [ + [ + [15.231054687500006, 44.062304687500045], + [15.246679687499977, 44.027050781249955], + [15.121875, 44.09331054687496], + [15.074609375000023, 44.137841796874966], + [15.06582031250008, 44.15766601562501], + [15.231054687500006, 44.062304687500045] + ] + ], + [ + [ + [15.188769531249989, 43.92236328125003], + [15.203027343750051, 43.90771484375], + [15.201660156250057, 43.89775390624999], + [15.149804687500051, 43.91181640625001], + [15.135839843750063, 43.90727539062499], + [14.891308593750068, 44.125537109375045], + [14.865039062500045, 44.16796874999997], + [14.952539062500023, 44.11718750000003], + [15.188769531249989, 43.92236328125003] + ] + ], + [ + [ + [15.188476562500028, 44.33574218749996], + [15.16259765625, 44.30917968749998], + [15.097949218750074, 44.358154296875], + [15.038574218750057, 44.39301757812501], + [14.99609375, 44.43432617187497], + [14.912792968750011, 44.48583984375], + [14.884667968750051, 44.54472656249999], + [14.76044921875004, 44.66474609375004], + [14.741894531250011, 44.697363281250006], + [14.803808593750006, 44.64868164062503], + [14.855371093750023, 44.61826171875006], + [14.898046875, 44.61083984374997], + [15.006445312500063, 44.53422851562499], + [15.112988281250011, 44.43574218750001], + [15.23994140625004, 44.35019531249998], + [15.213574218749983, 44.347558593749966], + [15.188476562500028, 44.33574218749996] + ] + ], + [ + [ + [14.831445312500023, 44.75893554687502], + [14.856640625000011, 44.71484375000003], + [14.7625, 44.75463867187506], + [14.67822265625, 44.769873046875034], + [14.660351562499983, 44.7998046875], + [14.672460937500063, 44.82436523437505], + [14.690527343750006, 44.84814453125], + [14.754199218750017, 44.844824218750034], + [14.763769531250006, 44.82138671875006], + [14.831445312500023, 44.75893554687502] + ] + ], + [ + [ + [14.488085937500074, 44.66005859375005], + [14.480371093750023, 44.62124023437505], + [14.419531250000063, 44.6703125], + [14.388867187500011, 44.75830078125], + [14.31240234375008, 44.90039062499997], + [14.302539062500017, 44.94042968749997], + [14.342187500000023, 44.97993164062501], + [14.340039062500011, 45.01997070312501], + [14.285839843749983, 45.144628906250006], + [14.33125, 45.16499023437498], + [14.358203125000074, 45.16743164062504], + [14.369140625, 45.080957031249994], + [14.39375, 45.03125], + [14.467382812500034, 44.97021484375], + [14.452539062500023, 44.86918945312502], + [14.467578125000074, 44.72534179687503], + [14.482519531250006, 44.693359375], + [14.488085937500074, 44.66005859375005] + ] + ], + [ + [ + [14.810253906250068, 44.97705078124997], + [14.68701171875, 44.955615234375045], + [14.628320312500051, 44.993945312500045], + [14.61298828125004, 45.02543945312496], + [14.51171875, 45.03540039062506], + [14.45039062500004, 45.079199218750006], + [14.437890625000051, 45.09863281250006], + [14.52460937500004, 45.146826171875006], + [14.571093750000017, 45.224755859374994], + [14.629980468750034, 45.17802734374996], + [14.701171875000057, 45.09003906249998], + [14.739160156250051, 45.065478515625045], + [14.810253906250068, 44.97705078124997] + ] + ], + [ + [ + [16.748046875000057, 46.41640625000002], + [16.87148437500008, 46.33930664062504], + [16.93994140624997, 46.253662109375], + [17.032714843750057, 46.18730468749996], + [17.149609375000068, 46.14033203124998], + [17.2421875, 46.07661132812498], + [17.310644531250006, 45.99614257812502], + [17.406347656250063, 45.951074218749994], + [17.529199218750023, 45.94130859375005], + [17.60703125, 45.91376953125001], + [17.639648437500057, 45.86835937500001], + [17.70644531250008, 45.82724609374998], + [17.80712890625, 45.79042968750002], + [17.96386718750003, 45.770263671875], + [18.263964843750074, 45.765478515625006], + [18.290625, 45.76445312499999], + [18.358300781250023, 45.75302734375006], + [18.437304687500045, 45.76733398437503], + [18.533593750000023, 45.79614257812503], + [18.56464843750004, 45.81328124999999], + [18.666015625, 45.90747070312497], + [18.721777343749977, 45.89936523437501], + [18.8330078125, 45.910839843749955], + [18.900292968750023, 45.931738281250034], + [18.905371093750006, 45.931738281250034], + [18.90107421875001, 45.90761718750002], + [18.8935546875, 45.86552734374996], + [18.839062499999983, 45.83574218750002], + [18.89453125, 45.76708984374997], + [18.947265625, 45.65581054687496], + [18.91787109375005, 45.60083007812503], + [18.953710937499977, 45.55800781250002], + [19.055078125000023, 45.527246093749966], + [19.064257812500045, 45.51499023437506], + [19.033300781250034, 45.50219726562503], + [19.007617187500045, 45.46582031249997], + [19.004687500000074, 45.39951171875006], + [19.093066406250045, 45.3369140625], + [19.27285156250008, 45.277978515624994], + [19.330273437500068, 45.26806640625003], + [19.35224609375001, 45.24541015625002], + [19.38232421875, 45.23061523437502], + [19.4, 45.2125], + [19.400976562500063, 45.1890625], + [19.388085937500023, 45.17299804687502], + [19.303027343750017, 45.16728515624999], + [19.20595703125005, 45.16777343750002], + [19.13691406250001, 45.19624023437504], + [19.13076171875008, 45.17548828124998], + [19.129687500000045, 45.151708984375034], + [19.062890625000023, 45.13720703125], + [19.1, 44.97377929687502], + [19.085253906250045, 44.92675781250003], + [19.060546875, 44.910986328125006], + [19.03759765625003, 44.91752929687502], + [19.00957031249999, 44.91938476562504], + [18.99550781250008, 44.90400390625001], + [19.007128906250045, 44.86918945312502], + [18.94130859375005, 44.86518554687501], + [18.83642578125, 44.883251953124955], + [18.788378906250045, 44.914892578125006], + [18.78017578125008, 44.94721679687501], + [18.779394531250006, 44.97724609375001], + [18.746093750000057, 45.02651367187502], + [18.66259765625, 45.07744140624999], + [18.48828125000003, 45.08583984375002], + [18.423925781250063, 45.10200195312501], + [18.35761718750004, 45.12055664062498], + [18.284960937500074, 45.13427734375003], + [18.21796875000001, 45.132910156250006], + [18.13720703125, 45.119384765625], + [17.996289062500068, 45.141796874999955], + [17.94863281250005, 45.11186523437499], + [17.874414062500023, 45.077246093750034], + [17.812792968750074, 45.078125], + [17.69013671875004, 45.158398437499955], + [17.65351562500004, 45.16347656250002], + [17.54628906250005, 45.12255859375003], + [17.50263671875004, 45.12036132812503], + [17.46914062500005, 45.13330078125], + [17.32412109375008, 45.16396484375002], + [17.25869140625008, 45.17055664062505], + [17.210644531250068, 45.15605468750002], + [17.125390625000023, 45.17177734375002], + [16.918652343749983, 45.27656249999998], + [16.790820312500074, 45.19687], + [16.53066406250008, 45.21669921875002], + [16.453515625, 45.162011718749994], + [16.365039062500017, 45.058349609375], + [16.29335937500005, 45.00883789062496], + [16.231054687500063, 45.02661132812503], + [16.157324218750063, 45.07221679687498], + [16.028320312500057, 45.18959960937502], + [15.963183593750017, 45.21079101562498], + [15.888281250000034, 45.21572265625002], + [15.822851562500034, 45.20278320312505], + [15.788085937500057, 45.17895507812497], + [15.761523437500074, 45.007519531249955], + [15.737988281250068, 44.85639648437498], + [15.736621093750045, 44.76582031250001], + [15.880078125000068, 44.68193359374999], + [16.04902343750001, 44.53759765624997], + [16.10341796875008, 44.52099609375006], + [16.13027343750005, 44.473730468750006], + [16.169824218750023, 44.35200195312498], + [16.214257812500023, 44.21513671874999], + [16.300097656250017, 44.12451171875], + [16.377539062500063, 44.05961914062502], + [16.47207031250005, 44.00258789062505], + [16.59052734375004, 43.913183593750034], + [16.68769531250001, 43.815039062500034], + [16.713476562500034, 43.77880859375003], + [16.90185546875003, 43.649023437500034], + [17.084570312500034, 43.516552734374955], + [17.248046875000057, 43.47021484375003], + [17.27382812500005, 43.44575195312501], + [17.27529296875008, 43.343847656250034], + [17.293066406250063, 43.30561523437498], + [17.402246093750023, 43.19892578125001], + [17.624804687500074, 43.04277343749999], + [17.650488281250063, 43.006591796875], + [17.657812500000034, 42.980078125], + [17.64345703125005, 42.959765625000045], + [17.585156250000068, 42.93837890625005], + [17.53730468750001, 42.962255859375006], + [17.329882812500017, 43.11489257812502], + [17.12939453125003, 43.21113281250001], + [16.903125, 43.392431640625006], + [16.600292968750068, 43.46406250000001], + [16.393945312500023, 43.54335937500002], + [16.26894531250005, 43.53125], + [16.13105468750004, 43.50629882812501], + [16.045996093750034, 43.50551757812502], + [15.985546875000068, 43.519775390625], + [15.942578125000011, 43.56894531249998], + [15.949121093749994, 43.60698242187502], + [15.941503906250063, 43.656640625], + [15.820605468750017, 43.73593749999998], + [15.65566406250008, 43.81127929687497], + [15.499414062500051, 43.908789062500034], + [15.185839843750017, 44.17211914062503], + [15.122949218749994, 44.256787109374955], + [15.184667968750063, 44.272900390624955], + [15.231347656250051, 44.27143554687501], + [15.284277343750006, 44.288818359375], + [15.369726562500006, 44.28925781250001], + [15.470996093750045, 44.27197265625003], + [15.381347656250057, 44.32827148437505], + [15.269824218750074, 44.38349609375001], + [14.981347656250023, 44.60292968750005], + [14.895214843750068, 44.70659179687502], + [14.885253906249972, 44.81826171875005], + [14.906542968750045, 44.97138671874998], + [14.854589843750034, 45.08100585937501], + [14.632031250000011, 45.22290039062506], + [14.550488281249983, 45.297705078125006], + [14.38613281250008, 45.342138671875006], + [14.31269531250004, 45.33779296875002], + [14.268554687500028, 45.28251953125002], + [14.236328125000028, 45.15966796875006], + [14.090625, 44.99760742187499], + [14.041992187500057, 44.92719726562504], + [13.9658203125, 44.83564453125004], + [13.899804687500051, 44.829345703125], + [13.86074218750008, 44.83740234375003], + [13.742480468750045, 44.99150390624999], + [13.62929687500008, 45.108203125000045], + [13.613476562500068, 45.163427734375006], + [13.603320312500045, 45.23139648437501], + [13.517187500000063, 45.481787109375034], + [13.577929687500017, 45.51689453124999], + [13.615234375000057, 45.47675781249998], + [13.878710937500017, 45.428369140624994], + [13.935644531250063, 45.449804687500006], + [13.970117187500051, 45.48261718750004], + [13.9703125, 45.50336914062498], + [13.992773437500063, 45.509423828124994], + [14.085546875000034, 45.47783203125002], + [14.161230468750006, 45.48515625000002], + [14.283007812500045, 45.486621093750045], + [14.369921875000074, 45.48144531250006], + [14.427343750000034, 45.50576171875002], + [14.505175781249989, 45.59521484375006], + [14.533984375000017, 45.64526367187503], + [14.56884765625, 45.65722656249997], + [14.591796875000057, 45.65126953125002], + [14.608593750000011, 45.61010742187497], + [14.649511718750006, 45.57148437500001], + [14.733593749999983, 45.50849609374998], + [14.793066406250034, 45.47822265625001], + [14.847070312500023, 45.46733398437502], + [14.9, 45.49267578125003], + [14.95458984375, 45.499902343749994], + [15.110449218750034, 45.450781250000034], + [15.242089843750023, 45.44140624999997], + [15.339453125000063, 45.46704101562506], + [15.326660156250028, 45.502294921875034], + [15.291210937500011, 45.541552734375045], + [15.283593750000051, 45.5796875], + [15.290136718750034, 45.61264648437506], + [15.356933593750057, 45.6455078125], + [15.35371093750004, 45.659912109375], + [15.27294921875, 45.717724609374955], + [15.27705078125004, 45.73261718749998], + [15.454101562500057, 45.79760742187497], + [15.624804687500017, 45.834033203125045], + [15.652148437500074, 45.86215820312498], + [15.668066406250034, 45.904443359374994], + [15.675585937500045, 45.98369140624996], + [15.666210937500011, 46.04848632812502], + [15.596875, 46.10922851562506], + [15.592578125000017, 46.139990234375006], + [15.608984374999977, 46.171923828125045], + [15.635937500000068, 46.200732421875045], + [15.704199218750034, 46.213232421875006], + [15.784277343750006, 46.23398437499998], + [15.847558593750023, 46.25786132812496], + [15.933300781250068, 46.27763671874999], + [16.00068359375004, 46.305371093749955], + [16.066503906250034, 46.37133789062497], + [16.1064453125, 46.382226562499994], + [16.22744140625005, 46.37285156250002], + [16.25332031250008, 46.389111328124955], + [16.23671875000008, 46.48383789062498], + [16.258398437500034, 46.507910156250006], + [16.30117187500005, 46.521386718749994], + [16.32119140625005, 46.53461914062504], + [16.42763671875005, 46.5244140625], + [16.516210937499977, 46.499902343749966], + [16.569921875, 46.48500976562505], + [16.748046875000057, 46.41640625000002] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Haiti", + "iso_a2": "HT", + "iso_a3": "HTI", + "iso_n3": "332", + "continent": "North America" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-72.80458984374997, 18.777685546875063], + [-72.82221679687501, 18.707128906249977], + [-73.07797851562498, 18.790917968749994], + [-73.28525390625, 18.89672851562497], + [-73.27641601562499, 18.95405273437501], + [-73.17060546875001, 18.967285156250057], + [-73.06914062499996, 18.932031249999966], + [-72.91923828124996, 18.861474609374994], + [-72.80458984374997, 18.777685546875063] + ] + ], + [ + [ + [-71.95429687499993, 19.7216796875], + [-71.834716796875, 19.696728515624983], + [-71.77924804687498, 19.718164062499994], + [-71.75742187499998, 19.68818359375001], + [-71.71147460937493, 19.486572265625057], + [-71.70693359375, 19.421972656250034], + [-71.753173828125, 19.32446289062497], + [-71.74648437499997, 19.28583984375001], + [-71.647216796875, 19.195947265624994], + [-71.6453125, 19.163525390624955], + [-71.65703124999993, 19.13076171875005], + [-71.74204101562503, 19.045507812500006], + [-71.80712890624997, 18.987011718749983], + [-71.786376953125, 18.920019531250006], + [-71.733642578125, 18.85639648437501], + [-71.72705078125, 18.80322265625003], + [-71.74321289062502, 18.73291015625], + [-71.82421875, 18.64550781250003], + [-71.86650390624999, 18.61416015625005], + [-71.98686523437499, 18.61035156249997], + [-72.000390625, 18.59790039062503], + [-71.94038085937493, 18.51259765625005], + [-71.87255859374997, 18.416210937499955], + [-71.76191406249998, 18.34130859374997], + [-71.73725585937495, 18.27080078124999], + [-71.76376953125, 18.203955078125063], + [-71.76831054687497, 18.039160156250063], + [-71.85292968749997, 18.119140625], + [-71.94609375, 18.186083984375045], + [-72.00205078124998, 18.212011718750006], + [-72.05986328124993, 18.228564453125017], + [-72.50356445312502, 18.21992187500001], + [-72.55322265625, 18.208398437499994], + [-72.59189453124998, 18.18691406250005], + [-72.63330078124997, 18.17622070312501], + [-72.75527343749997, 18.156152343749994], + [-72.87666015624998, 18.151757812499994], + [-73.16005859375, 18.205615234375045], + [-73.27226562499993, 18.23354492187505], + [-73.38515625000002, 18.251171874999983], + [-73.51484374999998, 18.245361328125057], + [-73.64404296875, 18.229052734375017], + [-73.747314453125, 18.190234375000017], + [-73.82470703124994, 18.12177734375001], + [-73.83916015624996, 18.058203125000034], + [-73.88496093749998, 18.041894531249994], + [-73.98945312499995, 18.143164062500006], + [-74.08540039062495, 18.215136718750017], + [-74.19462890624999, 18.269189453125023], + [-74.41904296874998, 18.34619140625], + [-74.45996093749997, 18.39306640625003], + [-74.478125, 18.45], + [-74.3875, 18.624707031249983], + [-74.28447265625002, 18.65668945312501], + [-74.22773437499998, 18.662695312499977], + [-74.10034179687497, 18.64111328125003], + [-73.97597656249997, 18.601416015625034], + [-73.8625, 18.57543945312497], + [-73.68701171874997, 18.56533203125005], + [-73.59160156249999, 18.522363281249994], + [-72.91728515625002, 18.455712890624994], + [-72.78935546874996, 18.434814453125], + [-72.73945312499993, 18.442138671875], + [-72.69599609374995, 18.468212890624983], + [-72.65976562500003, 18.515332031249983], + [-72.61806640624997, 18.55078125], + [-72.41811523437502, 18.558691406250034], + [-72.37607421874998, 18.57446289062503], + [-72.34672851562493, 18.623730468749955], + [-72.34765624999994, 18.674951171874994], + [-72.46523437500002, 18.743554687500023], + [-72.64912109375001, 18.894140624999977], + [-72.81108398437496, 19.071582031250074], + [-72.74121093750003, 19.13134765624997], + [-72.76796874999997, 19.240625], + [-72.74179687499995, 19.341845703125045], + [-72.70322265625, 19.441064453125023], + [-72.86342773437497, 19.52607421875001], + [-73.05273437499997, 19.61074218750005], + [-73.31552734374995, 19.637304687500034], + [-73.396337890625, 19.65869140625003], + [-73.43837890624994, 19.722119140624983], + [-73.40053710937497, 19.807421875000045], + [-73.31533203125002, 19.854589843749977], + [-73.21777343750003, 19.88369140625005], + [-73.1177734375, 19.90380859374997], + [-72.87651367187496, 19.928076171875034], + [-72.63701171875002, 19.90087890625], + [-72.42993164062503, 19.81328124999999], + [-72.21982421875003, 19.744628906250057], + [-71.95429687499993, 19.7216796875] + ] + ], + [ + [ + [-72.66406250000003, 20.0375], + [-72.62348632812493, 20.01416015624997], + [-72.63886718749995, 19.98583984374997], + [-72.73979492187499, 20.00341796875], + [-72.84423828124997, 20.035449218750045], + [-72.87841796875, 20.027441406250034], + [-72.89931640625, 20.03144531250004], + [-72.9603515625, 20.062255859375], + [-72.90673828125, 20.085839843750023], + [-72.85146484375002, 20.093652343750023], + [-72.79101562499994, 20.091894531250006], + [-72.66406250000003, 20.0375] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Hungary", + "iso_a2": "HU", + "iso_a3": "HUN", + "iso_n3": "348", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [22.1318359375, 48.405322265624996], + [22.227148437500006, 48.413427734375], + [22.23115234375001, 48.412158203124996], + [22.253710937500017, 48.407373046874994], + [22.269433593750023, 48.360888671874996], + [22.27216796875001, 48.3580078125], + [22.29511718750001, 48.327294921874994], + [22.316699218750017, 48.28662109375], + [22.350195312500006, 48.2560546875], + [22.423828125, 48.243310546874994], + [22.520117187500006, 48.205371093749996], + [22.582421875000023, 48.134033203125], + [22.676367187500006, 48.104394531249994], + [22.68310546875, 48.10361328125], + [22.701562500000023, 48.10703125], + [22.769140625, 48.109619140625], + [22.7822265625, 48.09521484375], + [22.836230468750017, 48.060302734375], + [22.857226562500017, 48.029541015625], + [22.846484375000017, 47.9970703125], + [22.856054687500006, 47.960302734375], + [22.87666015625001, 47.947265625], + [22.85175781250001, 47.92255859375], + [22.6767578125, 47.7990234375], + [22.6083984375, 47.76630859375], + [22.562890625000023, 47.759570312499996], + [22.49140625000001, 47.77255859375], + [22.41748046875, 47.762646484375], + [22.351464843750023, 47.736230468749994], + [22.290625, 47.727832031249996], + [22.24462890625, 47.69638671875], + [22.18505859375, 47.629052734374994], + [22.111914062500006, 47.572021484375], + [22.037988281250023, 47.53662109375], + [21.99970703125001, 47.505029296874994], + [21.99531250000001, 47.395703125], + [21.95429687500001, 47.3642578125], + [21.899218750000017, 47.332568359374996], + [21.86933593750001, 47.304589843749994], + [21.785449218750017, 47.138134765625], + [21.721777343750006, 47.084814453125], + [21.661425781250017, 47.043896484375], + [21.651464843750006, 47.00654296875], + [21.652636718750017, 46.963769531249994], + [21.58417968750001, 46.878369140625], + [21.494433593750017, 46.78974609375], + [21.47705078125, 46.753369140625], + [21.4970703125, 46.704296875], + [21.411035156250023, 46.647851562499994], + [21.361328125, 46.620751953124994], + [21.320214843750023, 46.6078125], + [21.29453125, 46.5724609375], + [21.252246093750017, 46.486376953124996], + [21.26328125, 46.44775390625], + [21.264550781250023, 46.4123046875], + [21.191796875000023, 46.391552734375], + [21.17041015625, 46.352685546874994], + [21.151953125, 46.304345703124994], + [21.121679687500006, 46.282421875], + [21.039843750000017, 46.242236328124996], + [20.837011718750006, 46.259716796875], + [20.76025390625, 46.246240234374994], + [20.737402343750006, 46.21748046875], + [20.732714843750017, 46.19443359375], + [20.707421875000023, 46.172802734375], + [20.661035156250023, 46.145654296874994], + [20.613671875000023, 46.13349609375], + [20.508105468750017, 46.166943359375], + [20.28095703125001, 46.1330078125], + [20.241796875, 46.10859375], + [20.21015625000001, 46.126025390624996], + [20.161425781250017, 46.141894531249996], + [19.93408203125, 46.161474609375], + [19.84443359375001, 46.145898437499994], + [19.724511718750023, 46.151904296874996], + [19.61347656250001, 46.169189453125], + [19.53076171875, 46.155175781249994], + [19.45751953125, 46.087353515625], + [19.421289062500023, 46.064453125], + [19.392871093750017, 46.0498046875], + [19.33027343750001, 46.028515625], + [19.278125, 46.002880859375], + [19.208398437500023, 45.984423828124996], + [19.146289062500017, 45.98701171875], + [19.087304687500023, 46.016162109374996], + [19.066210937500017, 46.009521484375], + [19.047656250000017, 45.982666015625], + [19.015722656250006, 45.959716796875], + [18.927832031250006, 45.931396484375], + [18.905371093750006, 45.93173828125], + [18.900292968750023, 45.93173828125], + [18.8330078125, 45.91083984375], + [18.721777343750006, 45.899365234375], + [18.666015625, 45.907470703125], + [18.56464843750001, 45.81328125], + [18.533593750000023, 45.796142578125], + [18.437304687500017, 45.767333984375], + [18.358300781250023, 45.75302734375], + [18.290625, 45.764453125], + [18.263964843750017, 45.765478515625], + [17.9638671875, 45.770263671875], + [17.80712890625, 45.790429687499994], + [17.706445312500023, 45.82724609375], + [17.6396484375, 45.868359375], + [17.60703125, 45.91376953125], + [17.529199218750023, 45.941308593749994], + [17.406347656250006, 45.951074218749994], + [17.310644531250006, 45.996142578124996], + [17.2421875, 46.076611328125], + [17.14960937500001, 46.14033203125], + [17.03271484375, 46.187304687499996], + [16.93994140625, 46.253662109375], + [16.871484375000023, 46.339306640625], + [16.748046875, 46.41640625], + [16.569921875, 46.485009765624994], + [16.516210937500006, 46.499902343749994], + [16.505664062500017, 46.5220703125], + [16.41845703125, 46.607226562499996], + [16.38125, 46.638671875], + [16.384570312500017, 46.680810546874994], + [16.3671875, 46.70478515625], + [16.33544921875, 46.721630859375], + [16.318457031250006, 46.782519531249996], + [16.308496093750023, 46.827978515625], + [16.283593750000023, 46.857275390625], + [16.093066406250017, 46.86328125], + [16.252539062500006, 46.971923828125], + [16.331835937500017, 47.002197265625], + [16.423925781250006, 46.996972656249994], + [16.453417968750017, 47.006787109375], + [16.461230468750017, 47.0224609375], + [16.476953125000023, 47.057861328125], + [16.484765625000023, 47.091259765625], + [16.49267578125, 47.12265625], + [16.482812500000023, 47.140380859375], + [16.438378906250023, 47.145898437499994], + [16.416894531250023, 47.2234375], + [16.439746093750017, 47.252734375], + [16.46259765625001, 47.27314453125], + [16.434375, 47.367431640625], + [16.44287109375, 47.39951171875], + [16.514746093750006, 47.404541015625], + [16.57441406250001, 47.424658203125], + [16.623046875, 47.447558593749996], + [16.636621093750023, 47.476611328124996], + [16.676562500000017, 47.536035156249994], + [16.639746093750006, 47.60888671875], + [16.43212890625, 47.656298828124996], + [16.421289062500023, 47.674462890624994], + [16.469628906250023, 47.695068359375], + [16.52109375, 47.724462890625], + [16.55097656250001, 47.747363281249996], + [16.590917968750006, 47.750537109374996], + [16.6474609375, 47.739013671875], + [16.74755859375, 47.686279296875], + [16.785937500000017, 47.678662109375], + [16.823046875000017, 47.693994140624994], + [16.862695312500023, 47.697265625], + [16.973437500000017, 47.6953125], + [17.06660156250001, 47.707568359374996], + [17.04560546875001, 47.76376953125], + [17.0458984375, 47.804541015625], + [17.030078125000017, 47.837109375], + [17.039941406250023, 47.872949218749994], + [17.077734375, 47.90087890625], + [17.08906250000001, 47.963623046875], + [17.147363281250023, 48.00595703125], + [17.174609375000017, 48.012060546875], + [17.277246093750023, 48.004345703125], + [17.301562500000017, 47.993359375], + [17.317285156250023, 47.99091796875], + [17.48066406250001, 47.887597656249994], + [17.63525390625, 47.809912109375], + [17.76191406250001, 47.770166015624994], + [17.94794921875001, 47.766894531249996], + [18.145605468750006, 47.763427734375], + [18.47626953125001, 47.777001953124994], + [18.72421875, 47.787158203124996], + [18.740625, 47.806494140625], + [18.77802734375001, 47.852880859375], + [18.748339843750017, 47.89267578125], + [18.750097656250006, 47.939453125], + [18.791894531250023, 48.000292968749996], + [18.914160156250006, 48.050830078124996], + [19.26513671875, 48.073046875], + [19.46699218750001, 48.110693359375], + [19.497460937500023, 48.162109375], + [19.564257812500017, 48.212841796875], + [19.625390625000023, 48.223095703125], + [19.70917968750001, 48.1998046875], + [19.81005859375, 48.155029296875], + [19.89863281250001, 48.13134765625], + [19.95039062500001, 48.146630859374994], + [20.12861328125001, 48.222021484375], + [20.333789062500017, 48.295556640624994], + [20.475, 48.4951171875], + [20.490039062500017, 48.526904296874996], + [20.643164062500006, 48.549707031249994], + [20.866601562500023, 48.545654296875], + [20.98115234375001, 48.519677734374994], + [21.067285156250023, 48.505908203124996], + [21.196386718750006, 48.510595703125], + [21.382421875, 48.553466796875], + [21.45136718750001, 48.55224609375], + [21.504687500000017, 48.521875], + [21.56318359375001, 48.495703125], + [21.602636718750006, 48.463671875], + [21.63251953125001, 48.418505859374996], + [21.64863281250001, 48.40146484375], + [21.674609375000017, 48.378369140625], + [21.721484375000017, 48.346582031249994], + [21.766992187500023, 48.3380859375], + [22.111328125, 48.393359375], + [22.1318359375, 48.405322265624996] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Indonesia", + "iso_a2": "ID", + "iso_a3": "IDN", + "iso_n3": "360", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [122.9489257812501, -10.90927734375002], + [122.85585937500005, -10.90966796875], + [122.82617187500003, -10.899121093749983], + [122.81845703125006, -10.811035156249986], + [122.84570312500003, -10.761816406249991], + [123.06142578125, -10.698437499999955], + [123.14580078125002, -10.639941406250031], + [123.26542968750007, -10.518164062500006], + [123.33964843750002, -10.48623046874998], + [123.35849609375012, -10.472460937500017], + [123.37109375000003, -10.474902343749989], + [123.38310546875007, -10.56757812500004], + [123.41289062500002, -10.622656249999977], + [123.41816406250004, -10.651269531250037], + [123.3107421875001, -10.698437499999955], + [123.21484374999997, -10.806152343749972], + [123.0052734375, -10.876367187499966], + [122.9489257812501, -10.90927734375002] + ] + ], + [ + [ + [121.8830078125001, -10.590332031249957], + [121.83310546875006, -10.602148437499977], + [121.72617187500012, -10.573144531250009], + [121.70468750000006, -10.5556640625], + [121.7962890625, -10.507421875000034], + [121.86699218750002, -10.438867187500009], + [121.94951171875002, -10.43300781249998], + [121.99833984375002, -10.446972656249983], + [121.98134765625005, -10.528417968749963], + [121.8830078125001, -10.590332031249957] + ] + ], + [ + [ + [123.41621093750004, -10.302636718749966], + [123.32597656250007, -10.3375], + [123.3255859375, -10.264160156249943], + [123.39531250000007, -10.171386718749972], + [123.45878906250002, -10.13994140624996], + [123.49394531250002, -10.17695312500004], + [123.49677734375004, -10.193945312500034], + [123.40507812500002, -10.227148437499963], + [123.41621093750004, -10.302636718749966] + ] + ], + [ + [ + [120.0125, -9.374707031250026], + [120.05761718749997, -9.41972656249996], + [120.22109375, -9.506347656250014], + [120.24804687499997, -9.542871093749994], + [120.25830078125003, -9.603125], + [120.29111328125006, -9.64785156249998], + [120.36474609374997, -9.654687500000037], + [120.44365234375002, -9.645605468749963], + [120.50371093750002, -9.674023437499983], + [120.55556640625, -9.719042968750003], + [120.63261718750007, -9.80644531249996], + [120.70039062500004, -9.903125], + [120.78447265625002, -9.95703125], + [120.83261718750006, -10.0375], + [120.80419921874997, -10.108496093750034], + [120.69804687500002, -10.206640624999949], + [120.64042968750007, -10.227929687500023], + [120.56171875000004, -10.235644531250003], + [120.4391601562501, -10.294042968749991], + [120.39453124999997, -10.263476562499989], + [120.25546875000006, -10.24228515625002], + [120.14482421875002, -10.200097656249952], + [120.0519531250001, -10.122851562500031], + [119.9984375, -10.039746093749969], + [119.93066406249997, -9.966503906249969], + [119.81279296875002, -9.917480468750014], + [119.60107421874997, -9.773535156250006], + [119.47031250000006, -9.760546875000017], + [119.41650390625003, -9.771093749999949], + [119.36259765625007, -9.771777343750003], + [119.08544921875003, -9.706933593750023], + [119.0423828125, -9.669042968750034], + [119.00839843750012, -9.620507812500009], + [118.97734375000002, -9.572851562499977], + [118.95878906250002, -9.519335937500003], + [118.99414062499997, -9.472070312499966], + [119.0314453125001, -9.44023437499996], + [119.18564453125006, -9.384472656249969], + [119.29589843749997, -9.3671875], + [119.42392578125012, -9.369824218749997], + [119.61474609375003, -9.352441406250009], + [119.7951171875001, -9.380468749999949], + [119.85078125000004, -9.359570312499955], + [119.9420898437501, -9.301464843750026], + [119.97382812500004, -9.321582031250031], + [120.0125, -9.374707031250026] + ] + ], + [ + [ + [124.93681640625007, -9.053417968750026], + [124.97324218750012, -9.064257812500017], + [125.10039062500007, -9.004003906249991], + [125.1244140625, -9.015429687500017], + [125.14902343750012, -9.042578125000034], + [125.14941406250003, -9.12294921874998], + [125.10048828125, -9.189843750000023], + [124.97753906250003, -9.194921875], + [124.96015625000004, -9.213769531250009], + [124.95859375000006, -9.254687499999989], + [124.96826171874997, -9.294238281249974], + [124.99697265625005, -9.325976562499946], + [125.03359375000005, -9.381835937499957], + [125.06816406250002, -9.511914062499997], + [124.99794921875, -9.565332031249952], + [124.9630859375001, -9.66562], + [124.84179687499997, -9.759765624999957], + [124.7083984375, -9.914160156249963], + [124.60185546875002, -9.992968750000031], + [124.50820312500005, -10.086132812500011], + [124.42753906250002, -10.14863281250004], + [124.32675781250012, -10.169824218750009], + [124.17597656250004, -10.183300781249997], + [123.97109375000005, -10.29482421874998], + [123.85761718750004, -10.34355468749996], + [123.7472656250001, -10.347167968749986], + [123.64414062500006, -10.3109375], + [123.60478515625002, -10.270117187500006], + [123.61406250000007, -10.215039062499983], + [123.64824218750002, -10.167773437500031], + [123.6901367187501, -10.128808593749994], + [123.71640625000012, -10.078613281249986], + [123.59941406250002, -10.015136718750014], + [123.5892578125, -9.966796875000028], + [123.63574218750003, -9.838085937500011], + [123.66582031250002, -9.70527343750004], + [123.709375, -9.61484375], + [123.87675781250002, -9.453125], + [123.97714843750012, -9.372949218750023], + [124.0363281250001, -9.341601562500031], + [124.0524414062501, -9.37539062499998], + [124.09013671875007, -9.41640625], + [124.11552734375007, -9.423144531250031], + [124.13457031250002, -9.413867187500003], + [124.28232421875012, -9.427929687500026], + [124.31933593750003, -9.413769531249983], + [124.37568359375004, -9.349902343750031], + [124.41298828125, -9.31435546874998], + [124.43828125000002, -9.238574218750003], + [124.44443359375012, -9.190332031250023], + [124.57548828125007, -9.155371093750006], + [124.64589843750005, -9.116699218749943], + [124.70820312500004, -9.06181640624996], + [124.88974609375006, -8.96845703125004], + [124.92226562500005, -8.942480468749977], + [124.91503906249997, -9.031542968750003], + [124.93681640625007, -9.053417968750026] + ] + ], + [ + [ + [115.60996093750012, -8.769824218749974], + [115.58193359375, -8.804199218749972], + [115.50087890625, -8.742871093749997], + [115.48046875000003, -8.715429687500006], + [115.54062500000012, -8.67539062500002], + [115.56142578125, -8.669921874999972], + [115.61328124999997, -8.713183593749989], + [115.60996093750012, -8.769824218749974] + ] + ], + [ + [ + [122.97734375000002, -8.54521484374996], + [122.9455078125001, -8.604003906249943], + [122.88779296875006, -8.587304687500009], + [122.90351562500004, -8.530664062500023], + [122.9328125000001, -8.497070312500014], + [123.01054687500002, -8.448339843750034], + [123.08945312500012, -8.43984375], + [123.13789062500004, -8.456933593750009], + [123.153125, -8.475781250000026], + [123.03007812500002, -8.494824218749997], + [122.97734375000002, -8.54521484374996] + ] + ], + [ + [ + [119.46406250000004, -8.741015624999974], + [119.42490234375006, -8.750488281249943], + [119.38554687500002, -8.736035156250026], + [119.40166015625002, -8.64707031250002], + [119.37890625000003, -8.586523437500034], + [119.41992187500003, -8.539062499999957], + [119.43017578124997, -8.454980468749966], + [119.4464843750001, -8.429199218749957], + [119.47050781250002, -8.45566406250002], + [119.48173828125002, -8.472949218749989], + [119.5021484375001, -8.481054687500034], + [119.54697265625006, -8.482617187499997], + [119.55722656250012, -8.518847656250003], + [119.55546875000002, -8.55341796875004], + [119.53632812500004, -8.589355468749986], + [119.48281250000005, -8.628222656250003], + [119.44404296875004, -8.671777343749994], + [119.46406250000004, -8.741015624999974] + ] + ], + [ + [ + [123.31748046875012, -8.354785156249974], + [123.297265625, -8.398632812500026], + [123.02500000000012, -8.395507812500014], + [123.0326171875, -8.33779296874998], + [123.10830078125005, -8.274804687500023], + [123.13349609375004, -8.253808593750009], + [123.21708984375002, -8.235449218750006], + [123.33603515625006, -8.269042968750014], + [123.31748046875012, -8.354785156249974] + ] + ], + [ + [ + [116.64082031250004, -8.613867187500006], + [116.51425781250012, -8.820996093750011], + [116.559375, -8.85439453124998], + [116.58652343750012, -8.886132812499966], + [116.37724609375002, -8.929003906249989], + [116.28984375000007, -8.906152343749952], + [116.23935546875006, -8.912109375000014], + [116.0267578125, -8.873144531249977], + [115.87460937500012, -8.825585937499966], + [115.85732421875005, -8.787890625000017], + [115.8693359375001, -8.742773437499977], + [115.91445312500005, -8.758007812499969], + [116.03164062500005, -8.76523437500002], + [116.07646484375002, -8.744921874999974], + [116.07773437500012, -8.611328125000014], + [116.06113281250006, -8.437402343750023], + [116.21982421875006, -8.295214843750017], + [116.30429687500006, -8.237988281249983], + [116.4015625000001, -8.204199218750034], + [116.64697265624997, -8.282714843749957], + [116.6875, -8.304101562499952], + [116.7189453125001, -8.336035156249977], + [116.73408203125004, -8.38691406250004], + [116.64082031250004, -8.613867187500006] + ] + ], + [ + [ + [124.28662109375003, -8.32949218749998], + [124.22578125000004, -8.391308593749955], + [124.184375, -8.498730468749997], + [124.14667968750004, -8.531445312499997], + [124.06572265625007, -8.551660156250037], + [124.01728515625004, -8.44384765625], + [123.92773437500003, -8.448925781249969], + [123.97148437500002, -8.35410156250002], + [124.01376953125012, -8.318652343749989], + [124.06875, -8.317773437499994], + [124.09580078125006, -8.356152343749997], + [124.11054687500004, -8.364257812499957], + [124.23955078125002, -8.20341796874996], + [124.265625, -8.201757812499977], + [124.28710937500003, -8.208691406249969], + [124.30449218750002, -8.228808593749989], + [124.28662109375003, -8.32949218749998] + ] + ], + [ + [ + [123.92480468750003, -8.2724609375], + [123.7838867187501, -8.299609375000017], + [123.69785156250006, -8.424414062499949], + [123.62919921875002, -8.422460937500006], + [123.59160156250002, -8.477929687500023], + [123.58261718750006, -8.501660156249969], + [123.58789062499997, -8.523828124999952], + [123.58017578125006, -8.544921874999986], + [123.55302734375007, -8.566796875], + [123.488671875, -8.532324218750006], + [123.4337890625001, -8.576074218750037], + [123.41074218750012, -8.586621093749955], + [123.32998046875, -8.535644531249972], + [123.2533203125, -8.538574218750028], + [123.23007812500006, -8.530664062500023], + [123.325, -8.4390625], + [123.45458984374997, -8.353710937500026], + [123.47587890625007, -8.322265625000014], + [123.42519531250005, -8.31337890624998], + [123.394921875, -8.300585937499946], + [123.39121093750012, -8.280468750000026], + [123.47324218750006, -8.267089843749972], + [123.52998046875004, -8.265234375000034], + [123.57314453125, -8.291503906249972], + [123.60058593749997, -8.291308593750017], + [123.77597656250006, -8.190429687499986], + [123.84550781250002, -8.213378906249943], + [123.89609375000006, -8.239257812499986], + [123.92480468750003, -8.2724609375] + ] + ], + [ + [ + [138.89511718750006, -8.388671874999957], + [138.84550781250007, -8.401757812499952], + [138.59423828124997, -8.371484375], + [138.56718750000002, -8.330273437499955], + [138.56337890625, -8.30908203125], + [138.62099609375, -8.26845703124998], + [138.67666015625005, -8.19921875], + [138.76269531249997, -8.173437499999977], + [138.79619140625007, -8.173632812500017], + [138.89765625000004, -8.3375], + [138.89511718750006, -8.388671874999957] + ] + ], + [ + [ + [117.55634765625004, -8.367285156249949], + [117.53359375000005, -8.36796875], + [117.49042968750004, -8.348730468749991], + [117.50595703125012, -8.307031250000023], + [117.48212890625004, -8.239257812499986], + [117.49052734375007, -8.183398437499974], + [117.5460937500001, -8.151953124999963], + [117.66503906249997, -8.148242187500003], + [117.66923828125007, -8.189257812500003], + [117.55634765625004, -8.367285156249949] + ] + ], + [ + [ + [119.07382812500012, -8.238867187499991], + [119.0299804687501, -8.24003906249996], + [119.0208984375, -8.199902343749955], + [119.03662109375003, -8.1578125], + [119.07871093750006, -8.140234374999963], + [119.09775390625012, -8.139160156250014], + [119.12832031250005, -8.177148437500023], + [119.13486328125012, -8.197070312500003], + [119.10673828125007, -8.2234375], + [119.07382812500012, -8.238867187499991] + ] + ], + [ + [ + [124.5755859375, -8.140820312499997], + [124.59960937500003, -8.201757812499977], + [124.67685546875012, -8.168066406249949], + [124.75224609375002, -8.159570312499994], + [124.92412109375007, -8.166015624999986], + [125.05029296874997, -8.179589843749994], + [125.12460937500012, -8.204785156249969], + [125.13173828125, -8.326464843749989], + [125.09677734375006, -8.352832031250031], + [124.44423828125, -8.444628906249989], + [124.38066406250002, -8.41513671875002], + [124.35556640625012, -8.385937500000026], + [124.4259765625001, -8.295800781249952], + [124.39355468749997, -8.253027343750034], + [124.43066406249997, -8.18320312500002], + [124.50859375000002, -8.135449218749969], + [124.5755859375, -8.140820312499997] + ] + ], + [ + [ + [127.8234375000001, -8.098828124999969], + [127.99843750000005, -8.1390625], + [128.09882812500004, -8.134863281250034], + [128.11923828125012, -8.17070312499996], + [128.02353515625006, -8.255371093749972], + [127.82089843750012, -8.190234375000031], + [127.78623046875006, -8.1203125], + [127.8234375000001, -8.098828124999969] + ] + ], + [ + [ + [122.7829101562501, -8.61171875], + [122.64150390625, -8.647265624999974], + [122.55380859375006, -8.680957031249989], + [122.47021484374997, -8.725488281250009], + [122.41728515625002, -8.734667968750017], + [122.32148437500004, -8.738281249999943], + [122.18574218750004, -8.730273437500003], + [122.094140625, -8.74472656250002], + [121.83867187500002, -8.860351562499943], + [121.73828124999997, -8.87041015624996], + [121.65136718749997, -8.898730468749946], + [121.62128906250004, -8.853808593749946], + [121.58457031250012, -8.820605468750017], + [121.49960937500006, -8.812207031249997], + [121.41464843750006, -8.81484375], + [121.32832031250004, -8.916894531250009], + [121.1908203125, -8.8955078125], + [121.1375, -8.904492187499969], + [121.0861328125001, -8.925976562499997], + [121.03525390625012, -8.935449218749966], + [120.9818359375, -8.928320312500034], + [120.7809570312501, -8.848828125], + [120.55048828125004, -8.80185546875002], + [120.31953125000004, -8.820312499999957], + [120.12089843750002, -8.776953125], + [120.01210937500005, -8.81015625000002], + [119.909375, -8.857617187500011], + [119.87910156250004, -8.807617187499957], + [119.84140625000006, -8.763574218750037], + [119.80791015625002, -8.697656250000023], + [119.80703125, -8.622949218749994], + [119.81816406250007, -8.570507812499969], + [119.84765625000003, -8.522851562500023], + [119.86611328125, -8.473144531250028], + [119.87480468750007, -8.419824218749994], + [119.91826171875002, -8.445117187500003], + [119.96376953125, -8.435546875], + [120.09921875000012, -8.377539062499991], + [120.2311523437501, -8.289843749999989], + [120.35410156250006, -8.257812500000028], + [120.42490234375012, -8.248925781249994], + [120.48554687500004, -8.266113281249943], + [120.54716796875007, -8.259863281250006], + [120.61025390625005, -8.24042968750004], + [120.70957031250012, -8.3078125], + [120.7513671875, -8.32148437500004], + [120.88613281250005, -8.326660156250028], + [121.00869140625005, -8.365527343749946], + [121.11816406249997, -8.42353515625004], + [121.27666015625002, -8.477929687500023], + [121.37197265625, -8.550878906249963], + [121.44453125000004, -8.57783203125004], + [121.4984375, -8.585156250000011], + [121.54794921875012, -8.575292968749963], + [121.61035156249997, -8.526171874999989], + [121.68339843750002, -8.505859375000028], + [121.74707031250003, -8.506640625], + [121.86289062500006, -8.493945312500003], + [121.91171875000006, -8.482128906249983], + [121.96650390625004, -8.455175781250006], + [122.02011718750006, -8.471875], + [122.06708984375004, -8.49667968750002], + [122.2630859375, -8.624902343750037], + [122.32324218749997, -8.628320312500023], + [122.43349609375005, -8.60078125], + [122.46660156250007, -8.566406250000014], + [122.48359375000004, -8.513574218749994], + [122.51376953125006, -8.469628906250023], + [122.55585937500004, -8.43154296874998], + [122.60351562499997, -8.402441406250006], + [122.75, -8.353125], + [122.85048828125, -8.304394531250011], + [122.91914062500004, -8.221875], + [122.75859375000002, -8.185937499999952], + [122.7923828125, -8.12656250000002], + [122.84570312500003, -8.093261718749986], + [122.91699218749997, -8.105566406250006], + [122.97832031250002, -8.151953124999963], + [123.00595703125006, -8.329101562499986], + [122.95546875, -8.35410156250002], + [122.92363281250007, -8.380957031249977], + [122.90214843750007, -8.416308593749989], + [122.81113281250006, -8.481152343749969], + [122.84677734375006, -8.562207031249955], + [122.82001953125004, -8.595703124999943], + [122.7829101562501, -8.61171875] + ] + ], + [ + [ + [130.86220703125, -8.31875], + [130.77519531250002, -8.34990234374996], + [130.8333984375, -8.270800781250017], + [131.02011718750012, -8.091308593749943], + [131.08740234374997, -8.124511718749957], + [131.17636718750006, -8.130761718749994], + [131.04375, -8.21201171875002], + [130.90810546875005, -8.245703124999963], + [130.86220703125, -8.31875] + ] + ], + [ + [ + [118.24238281250004, -8.317773437499994], + [118.2923828125, -8.357226562500031], + [118.33789062500003, -8.353515624999986], + [118.43320312500006, -8.293261718749974], + [118.490625, -8.271484374999972], + [118.5521484375, -8.270410156250023], + [118.61191406250006, -8.28066406249998], + [118.67060546875004, -8.323437499999983], + [118.691796875, -8.393457031249952], + [118.71386718749997, -8.41494140624998], + [118.74833984375007, -8.331152343749963], + [118.79423828125002, -8.305859374999955], + [118.84570312500003, -8.29306640625002], + [118.926171875, -8.297656249999974], + [118.98779296875003, -8.33769531249996], + [119.04384765625005, -8.456738281249969], + [119.04208984375006, -8.560937499999966], + [119.0625, -8.599804687499983], + [119.10107421874997, -8.628222656250003], + [119.12968750000002, -8.668164062499969], + [119.1041992187501, -8.709960937499957], + [119.07890625000002, -8.730468749999957], + [119.00625, -8.749609375000034], + [118.97148437500007, -8.741210937500014], + [118.93935546875, -8.713085937499969], + [118.90332031250003, -8.702734375], + [118.82119140625, -8.71210937500004], + [118.74589843750002, -8.735449218749991], + [118.75625, -8.773632812499955], + [118.81806640625004, -8.790820312499989], + [118.83671875000002, -8.808886718750031], + [118.83261718750012, -8.833398437499966], + [118.80830078125004, -8.83828125], + [118.7279296875, -8.805273437500006], + [118.67363281250002, -8.811914062500023], + [118.47861328125012, -8.856445312499957], + [118.42695312500004, -8.855468750000014], + [118.3978515625, -8.813378906249966], + [118.39990234374997, -8.703710937500006], + [118.37890625000003, -8.674609375000031], + [118.23398437500006, -8.8078125], + [118.18994140624997, -8.840527343749997], + [118.1315429687501, -8.855957031250028], + [118.07070312500005, -8.8505859375], + [117.86123046875, -8.93144531249996], + [117.79541015624997, -8.920117187499955], + [117.73164062500004, -8.919921875], + [117.50791015625006, -9.007519531249997], + [117.38789062500004, -9.031933593749997], + [117.3263671875001, -9.03369140625], + [117.26503906250005, -9.026171874999974], + [117.21025390625007, -9.034082031249994], + [117.16123046875012, -9.069238281249966], + [117.06132812500002, -9.099023437499994], + [116.95820312500004, -9.076367187499997], + [116.87109374999997, -9.046191406249974], + [116.78847656250005, -9.006347656250028], + [116.76796875000005, -8.955468749999966], + [116.77207031250006, -8.894335937500031], + [116.80693359375007, -8.8109375], + [116.78310546875, -8.664648437499963], + [116.80126953124997, -8.59794921874996], + [116.83505859375012, -8.532421875000026], + [116.88623046874997, -8.508300781249986], + [116.95312, -8.503417968749972], + [117.06367187500004, -8.444433593750034], + [117.16484375000007, -8.367187500000014], + [117.22363281249997, -8.37451171875], + [117.35664062500004, -8.428515624999989], + [117.43457031250003, -8.434960937499966], + [117.56708984375004, -8.426367187499991], + [117.62177734375004, -8.459570312500006], + [117.64335937500002, -8.535546875000037], + [117.67285156249997, -8.56328125], + [117.7121093750001, -8.582617187500034], + [117.80605468750005, -8.711132812500011], + [117.89316406250012, -8.704394531249974], + [117.96953125000002, -8.728027343749986], + [118.10410156250012, -8.650292968749966], + [118.20595703125, -8.652148437499989], + [118.23486328124997, -8.591894531249963], + [118.17402343750004, -8.527539062499997], + [118.10048828125, -8.475195312499991], + [118.06103515625003, -8.464257812499994], + [118.01787109375002, -8.467382812500006], + [117.97910156250012, -8.458886718749966], + [117.81484375000005, -8.342089843749974], + [117.76640625000002, -8.279003906249997], + [117.73837890625012, -8.204589843750028], + [117.7552734375, -8.149511718749991], + [117.86826171875012, -8.100878906250031], + [117.92099609375012, -8.089062500000026], + [118.11748046875007, -8.12226562500004], + [118.15068359375007, -8.15], + [118.20283203125004, -8.267285156250011], + [118.24238281250004, -8.317773437499994] + ] + ], + [ + [ + [115.44785156250012, -8.155175781249994], + [115.54941406250012, -8.208300781249974], + [115.69091796874997, -8.363574218749989], + [115.70429687500004, -8.40712890624998], + [115.66142578125002, -8.448242187500014], + [115.55996093750005, -8.514160156250028], + [115.33378906250007, -8.615722656250028], + [115.29501953125006, -8.66367187500002], + [115.24716796875006, -8.757519531249955], + [115.23613281250007, -8.79755859375004], + [115.22021484375003, -8.819531249999983], + [115.19423828125005, -8.835449218750028], + [115.14492187500005, -8.849023437500037], + [115.0915039062501, -8.829394531249946], + [115.13974609375006, -8.76894531249998], + [115.14160156249997, -8.69687], + [115.10566406250004, -8.629492187499991], + [115.05507812500005, -8.573046874999946], + [114.95205078125, -8.49638671874996], + [114.84208984375007, -8.428515624999989], + [114.73134765625, -8.393945312499966], + [114.61318359375, -8.37832031249998], + [114.57089843750006, -8.345410156250026], + [114.50175781250002, -8.26083984375002], + [114.47890625, -8.214746093749966], + [114.46757812500007, -8.166308593749946], + [114.47529296875004, -8.119433593749989], + [114.504296875, -8.116601562500037], + [114.62001953125005, -8.127734375], + [114.83300781249997, -8.182617187499986], + [114.93847656249997, -8.18710937500002], + [114.99814453125006, -8.174414062500006], + [115.15400390625004, -8.065722656249974], + [115.19101562500012, -8.067480468749977], + [115.34023437500005, -8.115429687499983], + [115.44785156250012, -8.155175781249994] + ] + ], + [ + [ + [129.83886718749997, -7.954589843749986], + [129.77978515625003, -8.046484374999963], + [129.71347656250012, -8.04072265625004], + [129.59189453125012, -7.917382812499952], + [129.59873046875006, -7.831347656250017], + [129.60898437500006, -7.803417968750011], + [129.6554687500001, -7.794824218750037], + [129.81298828124997, -7.819726562499952], + [129.84355468750007, -7.889355468750011], + [129.83886718749997, -7.954589843749986] + ] + ], + [ + [ + [126.80097656250004, -7.667871093750009], + [126.81445312499997, -7.716503906249969], + [126.81269531250004, -7.737890624999977], + [126.69287109374997, -7.753515624999963], + [126.57734375000004, -7.807617187499972], + [126.51816406250006, -7.86992187499996], + [126.4720703125, -7.950390625000011], + [126.312890625, -7.917675781250011], + [126.1710937500001, -7.912304687499983], + [126.10839843749997, -7.883984374999983], + [126.04003906250003, -7.885839843750006], + [125.9515625, -7.910937499999974], + [125.82617187499997, -7.97929687499996], + [125.79824218750005, -7.984570312499969], + [125.80839843750007, -7.880664062500017], + [125.84316406250005, -7.81669921874996], + [125.97529296875004, -7.663378906249989], + [126.0853515625, -7.697363281249977], + [126.21367187500002, -7.706738281250026], + [126.35937, -7.676757812499957], + [126.46289062500003, -7.607812500000037], + [126.60957031250004, -7.571777343749972], + [126.72636718750002, -7.66220703125002], + [126.80097656250004, -7.667871093750009] + ] + ], + [ + [ + [127.41943359375003, -7.623046875000028], + [127.35527343750002, -7.646484375000014], + [127.375, -7.572460937500026], + [127.37070312500012, -7.512792968749949], + [127.47519531250012, -7.531054687500031], + [127.47402343750005, -7.578515625000023], + [127.46396484375012, -7.596875], + [127.41943359375003, -7.623046875000028] + ] + ], + [ + [ + [138.53535156250004, -8.273632812499969], + [138.2962890625, -8.405175781250037], + [137.9828125, -8.381933593750006], + [137.871875, -8.379687499999989], + [137.6876953125001, -8.411718750000034], + [137.65039062499997, -8.386132812499966], + [137.68515625000012, -8.262207031249943], + [137.83251953125003, -7.932226562499963], + [138.00751953125004, -7.641601562499986], + [138.08183593750002, -7.566210937500003], + [138.18535156250007, -7.495312500000026], + [138.29550781250012, -7.4384765625], + [138.54384765625, -7.379589843749997], + [138.76982421875002, -7.390429687499974], + [138.8019531250001, -7.414648437500034], + [138.89941406249997, -7.51162109374998], + [138.96259765625004, -7.587988281249991], + [138.98906250000002, -7.696093749999989], + [138.89296875, -7.88212890624996], + [138.78593750000002, -8.059082031249957], + [138.61171875000005, -8.198339843749991], + [138.53535156250004, -8.273632812499969] + ] + ], + [ + [ + [131.3255859375, -7.999511718749986], + [131.30917968750012, -8.010839843749991], + [131.18496093750005, -7.997851562500003], + [131.11376953125003, -7.997363281249989], + [131.12343750000005, -7.92187], + [131.08681640625005, -7.865039062499946], + [131.13681640625006, -7.781738281250028], + [131.13779296875012, -7.684863281250017], + [131.19003906250012, -7.671875], + [131.19736328125006, -7.616699218749986], + [131.26005859375007, -7.470507812499946], + [131.296875, -7.438085937500006], + [131.34921875000012, -7.425390625], + [131.41103515625, -7.340136718749946], + [131.44619140625005, -7.315332031249952], + [131.4826171875001, -7.250683593750026], + [131.53525390625006, -7.220605468750023], + [131.53085937500006, -7.165136718750006], + [131.56074218750004, -7.135742187499957], + [131.64345703125, -7.11279296875], + [131.70078125000006, -7.140234375], + [131.73613281250007, -7.197070312500017], + [131.64384765625002, -7.266894531249946], + [131.69111328125004, -7.438867187499994], + [131.62441406250005, -7.626171874999955], + [131.5802734375001, -7.682226562500006], + [131.49843750000005, -7.730664062500011], + [131.47353515625005, -7.776660156249974], + [131.37705078125006, -7.869140624999986], + [131.34775390625006, -7.948046874999989], + [131.3434570312501, -7.981445312499943], + [131.3255859375, -7.999511718749986] + ] + ], + [ + [ + [131.98203125000006, -7.202050781249966], + [131.96953125000002, -7.25136718749998], + [131.92685546875012, -7.225], + [131.8844726562501, -7.167480468749943], + [131.82285156250006, -7.159179687500028], + [131.77753906250004, -7.143945312500037], + [131.75078125000002, -7.116796875], + [131.92226562500005, -7.104492187499986], + [131.98203125000006, -7.202050781249966] + ] + ], + [ + [ + [114.41259765624997, -7.13349609375004], + [114.39765625000004, -7.173144531250031], + [114.346875, -7.163281249999983], + [114.29882812499997, -7.097558593749994], + [114.32216796875, -7.08037109374996], + [114.34892578125007, -7.073437499999969], + [114.38359375000002, -7.08066406250002], + [114.41259765624997, -7.13349609375004] + ] + ], + [ + [ + [128.6701171875001, -7.183300781249969], + [128.625, -7.208593749999977], + [128.5501953125, -7.156347656249991], + [128.52978515625003, -7.134570312499989], + [128.5773437500001, -7.083203125000011], + [128.62773437500007, -7.06875], + [128.65830078125006, -7.091113281250017], + [128.6732421875, -7.11337890625002], + [128.66689453125005, -7.137988281249974], + [128.6701171875001, -7.183300781249969] + ] + ], + [ + [ + [120.77441406250003, -7.118945312500003], + [120.67236328125003, -7.124707031250026], + [120.64082031250004, -7.115820312499991], + [120.63339843750006, -7.018261718750011], + [120.7455078125, -7.06015625000002], + [120.78173828124997, -7.063085937499991], + [120.77441406250003, -7.118945312500003] + ] + ], + [ + [ + [113.84453125000007, -7.105371093749994], + [113.8255859375, -7.119921875000031], + [113.65585937500006, -7.111718749999952], + [113.54638671874997, -7.193359374999972], + [113.47070312500003, -7.218457031250026], + [113.19843750000004, -7.218359375], + [113.16601562500003, -7.207324218749974], + [113.14189453125002, -7.207617187499949], + [113.12695312499997, -7.224121093750028], + [113.0404296875, -7.211816406250009], + [112.76376953125006, -7.139648437499957], + [112.72587890625007, -7.072753906250014], + [112.76875, -7.001269531250017], + [112.86806640625, -6.899902343749972], + [113.06738281250003, -6.879980468749991], + [113.97470703125012, -6.873046875], + [114.0736328125, -6.960156249999983], + [114.08300781249997, -6.989355468749977], + [113.88535156250012, -7.049023437499969], + [113.84453125000007, -7.105371093749994] + ] + ], + [ + [ + [115.37705078125006, -6.97080078125002], + [115.29580078125005, -6.987792968750014], + [115.22031250000012, -6.952539062500037], + [115.22216796874997, -6.90517578124998], + [115.24052734375007, -6.861230468749994], + [115.35371093750004, -6.838476562499977], + [115.41445312500005, -6.839746093749966], + [115.4791992187501, -6.870214843749963], + [115.52421875000002, -6.901855468750014], + [115.54609375000004, -6.938671874999955], + [115.42412109375007, -6.940625], + [115.37705078125006, -6.97080078125002] + ] + ], + [ + [ + [134.67441406250012, -6.749804687500031], + [134.65742187500004, -6.765332031249997], + [134.63144531250006, -6.732910156249957], + [134.62910156250004, -6.712792968750037], + [134.66347656250005, -6.657714843750014], + [134.69765625, -6.625683593749969], + [134.7357421875, -6.623339843750017], + [134.72607421874997, -6.668652343750011], + [134.67441406250012, -6.749804687500031] + ] + ], + [ + [ + [105.25283203125005, -6.640429687499946], + [105.19042968750003, -6.6625], + [105.1427734375001, -6.643066406249957], + [105.12138671875007, -6.614941406249997], + [105.19228515625005, -6.545605468749997], + [105.22568359375012, -6.529101562500003], + [105.26054687500002, -6.523925781250014], + [105.27744140625006, -6.561425781250023], + [105.25283203125005, -6.640429687499946] + ] + ], + [ + [ + [134.71611328125002, -6.549414062499977], + [134.66083984375004, -6.558886718749946], + [134.63369140625, -6.477246093750011], + [134.6791015625, -6.456054687499957], + [134.72851562499997, -6.505859374999986], + [134.71611328125002, -6.549414062499977] + ] + ], + [ + [ + [134.81953125000004, -6.434179687500034], + [134.79511718750004, -6.442382812500014], + [134.7953125, -6.39306640625], + [134.8229492187501, -6.349609374999943], + [134.85185546875002, -6.324609375], + [134.88583984375012, -6.32353515624996], + [134.81953125000004, -6.434179687500034] + ] + ], + [ + [ + [134.53681640625004, -6.442285156249994], + [134.52041015625, -6.512695312499957], + [134.504296875, -6.59140625], + [134.4125, -6.679687499999957], + [134.35595703124997, -6.814843749999952], + [134.32275390624997, -6.84873046875002], + [134.2, -6.908789062500006], + [134.09082031249997, -6.833789062500003], + [134.05917968750012, -6.769335937500017], + [134.10703125000006, -6.471582031250009], + [134.15419921875, -6.481445312499986], + [134.18476562500004, -6.479296874999989], + [134.19462890625007, -6.459765625], + [134.12460937500012, -6.426464843749969], + [134.11123046875005, -6.255371093750014], + [134.11464843750005, -6.190820312500009], + [134.16806640625006, -6.176269531249986], + [134.23417968750007, -6.226367187499974], + [134.31777343750005, -6.316113281249955], + [134.41503906249997, -6.386718749999957], + [134.53681640625004, -6.442285156249994] + ] + ], + [ + [ + [107.37392578125005, -6.007617187499989], + [107.47470703125006, -6.121777343749983], + [107.56298828125003, -6.182714843749963], + [107.66679687500002, -6.215820312499957], + [107.7760742187501, -6.218945312499969], + [107.88378906250003, -6.233300781249966], + [108.00878906249997, -6.276953124999977], + [108.13759765625005, -6.296679687500003], + [108.19746093750004, -6.289062499999957], + [108.25449218750012, -6.2666015625], + [108.29501953125012, -6.265039062500037], + [108.33017578125012, -6.286035156249966], + [108.4191406250001, -6.382812499999957], + [108.51591796875002, -6.471191406250028], + [108.53798828125, -6.516210937499963], + [108.60361328125012, -6.729199218750011], + [108.67783203125006, -6.790527343749972], + [108.7796875, -6.808300781249955], + [108.89941406249997, -6.808398437499974], + [109.01835937500007, -6.817285156250009], + [109.29423828125002, -6.866992187500017], + [109.40371093750005, -6.860156249999946], + [109.50058593750006, -6.810156249999977], + [109.58691406249997, -6.842578125000017], + [109.82099609375004, -6.902441406249949], + [109.9362304687501, -6.915820312500017], + [110.0670898437501, -6.898730468749989], + [110.19843750000004, -6.895117187499963], + [110.26093750000004, -6.912402343750031], + [110.32109375000007, -6.938378906249994], + [110.37275390625004, -6.947753906249943], + [110.42626953124997, -6.947265625000028], + [110.5208984375, -6.89726562499996], + [110.58359375000006, -6.805664062499957], + [110.63427734375003, -6.69013671875004], + [110.67402343750004, -6.569824218749957], + [110.70078125000006, -6.518066406249986], + [110.73691406250006, -6.472363281249997], + [110.78417968749997, -6.442675781249989], + [110.83476562500002, -6.424218749999952], + [110.97226562500012, -6.435644531249977], + [111.00068359375004, -6.464746093749952], + [111.15439453125012, -6.669042968750006], + [111.18154296875005, -6.686718749999969], + [111.34208984375007, -6.699511718750003], + [111.38652343750007, -6.692871093749972], + [111.48447265625012, -6.651855468749972], + [111.54033203125002, -6.648242187500031], + [111.64355468750003, -6.698730468750014], + [111.68808593750012, -6.741699218749972], + [111.73759765625007, -6.773437499999957], + [111.98984375000012, -6.805957031250017], + [112.0873046875, -6.89335937499996], + [112.13671875000003, -6.90507812499996], + [112.31230468750002, -6.894433593750009], + [112.43359375000003, -6.903027343749983], + [112.53925781250004, -6.926464843749955], + [112.58691406249997, -7.050585937500017], + [112.62597656249997, -7.17802734374996], + [112.64873046875007, -7.221289062499977], + [112.75195312499997, -7.265039062500009], + [112.7943359375, -7.304492187499974], + [112.78291015625004, -7.431640625000028], + [112.79453125000012, -7.55244140625004], + [113.01357421875005, -7.657714843749986], + [113.24843750000005, -7.718164062499952], + [113.49765625000006, -7.723828124999955], + [113.7474609375, -7.70302734374998], + [113.87626953125002, -7.677246093749972], + [114.0373046875001, -7.632128906250017], + [114.07070312500005, -7.633007812500011], + [114.38271484375, -7.77109375], + [114.40927734375012, -7.79248046875], + [114.44423828125, -7.895605468749963], + [114.44326171875, -8.004589843749955], + [114.38496093750004, -8.26328125], + [114.38134765624997, -8.334277343749974], + [114.38691406250004, -8.405175781250037], + [114.44882812500006, -8.559277343749983], + [114.48173828125002, -8.603808593750003], + [114.59501953125002, -8.684765624999969], + [114.59921875000006, -8.727246093750011], + [114.58378906250002, -8.769628906250034], + [114.45917968750004, -8.74052734374996], + [114.383203125, -8.705371093749989], + [114.33925781250005, -8.647363281249994], + [114.27695312500006, -8.61464843749998], + [114.15966796874997, -8.62646484375], + [113.94033203125005, -8.568359374999972], + [113.6925781250001, -8.478027343749957], + [113.25332031250005, -8.286718749999963], + [113.13369140625, -8.288281250000026], + [113.0189453125, -8.312695312500026], + [112.89775390625002, -8.361425781250006], + [112.7716796875001, -8.396093749999963], + [112.67880859375006, -8.409179687499957], + [112.58603515625006, -8.399609374999969], + [112.35156250000003, -8.353613281250006], + [112.11513671875, -8.323925781249997], + [111.50996093750004, -8.30507812499998], + [111.33857421875004, -8.261718750000028], + [111.0553710937501, -8.239550781249946], + [110.83017578125012, -8.201953125000017], + [110.60722656250002, -8.149414062499972], + [110.03867187500006, -7.890527343749994], + [109.85263671875012, -7.828417968749946], + [109.28164062500005, -7.704882812500003], + [109.19355468750004, -7.69492187500002], + [108.98671875, -7.704101562500028], + [108.85625, -7.667871093750009], + [108.74121093749997, -7.667089843750034], + [108.57050781250004, -7.70722656250004], + [108.51796875, -7.736035156249955], + [108.45175781250006, -7.79697265625002], + [108.33554687500012, -7.794042968749963], + [108.22050781250002, -7.782324218749977], + [107.91748046875003, -7.724121093750014], + [107.8043945312501, -7.688378906250023], + [107.69580078124997, -7.635546875], + [107.59785156250004, -7.566699218750003], + [107.546875, -7.541894531250023], + [107.28496093750007, -7.471679687500014], + [107.07119140625, -7.447460937499969], + [106.63144531250006, -7.415527343750028], + [106.5353515625001, -7.394238281249955], + [106.45527343750004, -7.368652343749986], + [106.41132812500004, -7.311718750000026], + [106.41689453125005, -7.23935546875002], + [106.4484375000001, -7.176757812499972], + [106.49150390625007, -7.113867187500034], + [106.51972656250004, -7.053710937499943], + [106.19824218749997, -6.927832031249977], + [105.94433593749997, -6.858984374999977], + [105.83476562500002, -6.845800781249963], + [105.7248046875001, -6.846093750000023], + [105.6009765625, -6.860351562499986], + [105.47841796875, -6.853710937499969], + [105.42080078125005, -6.833203124999969], + [105.36191406250006, -6.826171874999957], + [105.30292968750004, -6.841015624999955], + [105.25546875000012, -6.835253906250031], + [105.24316406250003, -6.778027343750011], + [105.27343749999997, -6.729394531249952], + [105.33564453125004, -6.674121093749974], + [105.37089843750002, -6.664355468750031], + [105.38701171875002, -6.75078125], + [105.40468750000005, -6.76796875], + [105.45976562500002, -6.786914062499946], + [105.48369140625007, -6.781542968750017], + [105.58085937500007, -6.670996093749963], + [105.60800781250012, -6.61669921875], + [105.65507812500002, -6.469531249999946], + [105.70605468749997, -6.497949218749966], + [105.75742187500006, -6.480371093750023], + [105.78691406250002, -6.456933593749966], + [105.86826171875006, -6.11640625000004], + [105.93613281250006, -6.016992187500037], + [106.02880859375003, -5.934277343749969], + [106.075, -5.914160156249963], + [106.16582031250007, -5.964746093749966], + [106.34970703125012, -5.984082031249997], + [106.45908203125012, -6.017578124999986], + [106.56875, -6.02187], + [106.67587890625006, -6.03837890624996], + [106.82519531249997, -6.098242187499977], + [106.87792968749997, -6.09199218750004], + [106.93164062500003, -6.0734375], + [107.01162109375005, -6.008496093749997], + [107.0462890625, -5.90419921874998], + [107.16210937499997, -5.957128906250006], + [107.33183593750002, -5.978125], + [107.37392578125005, -6.007617187499989] + ] + ], + [ + [ + [124.05126953124997, -5.97373046875002], + [124.04208984375012, -6.021582031249991], + [124.00566406250007, -5.966699218750009], + [123.97226562500012, -5.939355468750037], + [123.97578125000004, -5.88017578124996], + [124.02294921874997, -5.902148437500003], + [124.05126953124997, -5.97373046875002] + ] + ], + [ + [ + [120.52832031249997, -6.2984375], + [120.48730468749997, -6.464843749999972], + [120.46796875000004, -6.406152343750009], + [120.46074218750007, -6.254003906250006], + [120.43554687499997, -6.180175781249972], + [120.45156250000005, -6.094921875000011], + [120.4464843750001, -5.876269531249974], + [120.47734375000007, -5.775292968750009], + [120.53417968750003, -5.903808593749986], + [120.54921875000005, -5.969238281249986], + [120.52832031249997, -6.2984375] + ] + ], + [ + [ + [112.7194335937501, -5.81103515625], + [112.69794921875004, -5.846484375000031], + [112.60214843750006, -5.84365234374998], + [112.58603515625006, -5.803613281249994], + [112.64853515625012, -5.730859375], + [112.69003906250006, -5.726171875000034], + [112.72734375000002, -5.752734375000031], + [112.7194335937501, -5.81103515625] + ] + ], + [ + [ + [132.80712890625003, -5.850781250000011], + [132.74628906250004, -5.947070312500003], + [132.70488281250007, -5.913085937500014], + [132.68144531250002, -5.91259765625], + [132.66728515625002, -5.85605468750002], + [132.68134765625004, -5.738867187499949], + [132.63017578125002, -5.60703125], + [132.69785156250006, -5.608984374999963], + [132.71650390625004, -5.64833984374998], + [132.73779296875003, -5.661718749999963], + [132.80429687500006, -5.788867187500017], + [132.80712890625003, -5.850781250000011] + ] + ], + [ + [ + [134.74697265625, -5.707031249999957], + [134.73906250000007, -5.74560546875], + [134.73837890625012, -5.816796875000023], + [134.75498046875012, -5.882714843750037], + [134.71220703125002, -5.949707031250014], + [134.75214843750004, -6.050097656250031], + [134.75810546875002, -6.1], + [134.75585937500003, -6.170605468749983], + [134.74443359375002, -6.202343749999969], + [134.71416015625007, -6.29511718750004], + [134.68388671875002, -6.328125], + [134.66113281249997, -6.337304687500009], + [134.63759765625, -6.365332031249949], + [134.44111328125004, -6.334863281249966], + [134.35615234375004, -6.2705078125], + [134.28046875000004, -6.20078125], + [134.26445312500002, -6.171679687500017], + [134.17539062500006, -6.090332031249972], + [134.15488281250006, -6.06289062499998], + [134.153125, -6.019531250000028], + [134.22509765624997, -6.008496093749997], + [134.3019531250001, -6.009765624999986], + [134.29863281250002, -5.970703125000028], + [134.34306640625002, -5.833007812499943], + [134.22617187500012, -5.744433593750017], + [134.20537109375002, -5.707226562499997], + [134.24726562500004, -5.681933593749989], + [134.34130859375003, -5.712890624999986], + [134.45634765625002, -5.557519531249952], + [134.49033203125012, -5.525097656250011], + [134.50644531250012, -5.438476562499957], + [134.57080078124997, -5.42734375], + [134.61650390625007, -5.438574218749977], + [134.64609375000012, -5.492382812500011], + [134.65781250000012, -5.539257812499969], + [134.64550781250003, -5.581347656250017], + [134.70078125000006, -5.603027343749986], + [134.74697265625, -5.707031249999957] + ] + ], + [ + [ + [132.92626953124997, -5.902050781249983], + [132.84501953125002, -5.987988281249997], + [132.92167968750002, -5.785253906249991], + [132.93769531250004, -5.682617187499957], + [133.00878906249997, -5.621386718750003], + [133.11464843750005, -5.31064453125002], + [133.13847656250002, -5.317871093749986], + [133.17285156250003, -5.348144531250028], + [133.11962890625003, -5.575976562499989], + [132.97109375000005, -5.735839843749957], + [132.92626953124997, -5.902050781249983] + ] + ], + [ + [ + [102.36718750000003, -5.478710937499983], + [102.28593750000002, -5.483496093749977], + [102.13554687500002, -5.360546874999969], + [102.1107421875, -5.32255859374996], + [102.15351562500004, -5.28623046875002], + [102.19843750000004, -5.288867187500031], + [102.3717773437501, -5.366406250000011], + [102.4054687500001, -5.404785156250014], + [102.36718750000003, -5.478710937499983] + ] + ], + [ + [ + [123.62675781250007, -5.271582031249963], + [123.62275390625004, -5.373046874999943], + [123.58261718750006, -5.36738281250004], + [123.55009765625007, -5.331835937499989], + [123.54091796875, -5.29833984375], + [123.54277343750002, -5.271093749999963], + [123.56064453125012, -5.249804687499974], + [123.62675781250007, -5.271582031249963] + ] + ], + [ + [ + [122.04296874999997, -5.437988281250028], + [121.97958984375006, -5.46474609374998], + [121.85937, -5.350292968750011], + [121.80849609375, -5.256152343750017], + [121.820703125, -5.202929687500017], + [121.85664062500004, -5.15625], + [121.87373046875004, -5.144628906249949], + [121.86630859375006, -5.095996093749989], + [121.91367187500012, -5.072265624999957], + [121.96572265625, -5.075585937500009], + [121.99990234375, -5.140820312499969], + [122.04101562500003, -5.158789062499991], + [122.06181640625002, -5.22128906250002], + [122.04296874999997, -5.437988281250028] + ] + ], + [ + [ + [122.64511718750012, -5.26943359374998], + [122.6193359375001, -5.335839843750009], + [122.5638671875, -5.3875], + [122.51972656250004, -5.391210937500006], + [122.47363281249997, -5.380664062499989], + [122.39199218750005, -5.335449218750014], + [122.3712890625001, -5.383105468749946], + [122.30703125000005, -5.380957031249963], + [122.28310546875, -5.319531249999969], + [122.32900390625, -5.137695312499957], + [122.39628906250002, -5.069824218749986], + [122.3900390625, -4.998535156250028], + [122.33447265624997, -4.84658203124998], + [122.36894531250007, -4.767187499999977], + [122.52441406250003, -4.707128906249991], + [122.65996093750002, -4.633886718749991], + [122.70195312500002, -4.61865234375], + [122.73974609375003, -4.675], + [122.75986328125012, -4.933886718750003], + [122.61406250000007, -5.138671874999986], + [122.64511718750012, -5.26943359374998] + ] + ], + [ + [ + [123.17978515625006, -4.551171875000023], + [123.20302734375, -4.766210937499949], + [123.195703125, -4.82265625], + [123.13945312500002, -4.739941406250011], + [123.11923828125006, -4.723437500000031], + [123.10380859375002, -4.739941406250011], + [123.08388671875005, -4.7490234375], + [123.05517578124997, -4.748242187500026], + [123.01796875000005, -4.831738281249983], + [123.01464843749997, -4.910253906249991], + [122.9865234375001, -4.963085937499997], + [122.97167968750003, -5.138476562500031], + [122.98105468750006, -5.185742187499983], + [123.02460937500004, -5.162402343750017], + [123.0514648437501, -5.156445312499955], + [123.14990234374997, -5.224023437499966], + [123.20195312500002, -5.273339843749966], + [123.18730468750007, -5.333007812499957], + [123.12070312500006, -5.393164062499963], + [123.04335937500005, -5.419335937499966], + [122.98574218750005, -5.393554687499943], + [122.96875, -5.405761718749943], + [122.93466796875012, -5.43671875000004], + [122.90878906250006, -5.47744140624998], + [122.9162109375001, -5.519335937499989], + [122.85019531250006, -5.637988281250003], + [122.81210937500012, -5.671289062499952], + [122.7331054687501, -5.634960937500011], + [122.684375, -5.666210937499983], + [122.64501953124997, -5.663378906250031], + [122.58496093750003, -5.544628906249997], + [122.58642578124997, -5.488867187500006], + [122.64218750000012, -5.426269531249957], + [122.64257812500003, -5.381152343750003], + [122.67011718750004, -5.33085937499996], + [122.73144531250003, -5.26191406250004], + [122.76650390625005, -5.210156249999983], + [122.76757812499997, -5.177246093750028], + [122.79365234375004, -5.052441406249997], + [122.80380859375012, -5.000097656249991], + [122.82148437500004, -4.94443359375002], + [122.84941406250007, -4.83125], + [122.85332031250007, -4.618359375000026], + [122.94687500000012, -4.442675781250031], + [123.0382812500001, -4.394726562500026], + [123.074609375, -4.38691406250004], + [123.06894531250012, -4.433593749999957], + [123.17978515625006, -4.551171875000023] + ] + ], + [ + [ + [133.57080078124997, -4.245898437500003], + [133.621875, -4.299316406249957], + [133.50292968750003, -4.257421875000034], + [133.33300781249997, -4.169628906249997], + [133.32089843750006, -4.111035156249969], + [133.46435546874997, -4.19980468750002], + [133.57080078124997, -4.245898437500003] + ] + ], + [ + [ + [123.2423828125001, -4.112988281250011], + [123.14453124999997, -4.233300781250009], + [123.07617187499997, -4.227148437499991], + [122.99472656250006, -4.148046874999963], + [122.97089843750004, -4.06132812499996], + [122.96904296875002, -4.029980468749969], + [123.02490234375003, -3.980957031250028], + [123.21191406250003, -3.997558593750028], + [123.24697265625005, -4.04091796874998], + [123.2423828125001, -4.112988281250011] + ] + ], + [ + [ + [128.56259765625012, -3.58544921875], + [128.39160156250003, -3.637890625000026], + [128.42832031250012, -3.54042968749998], + [128.45156250000005, -3.514746093749991], + [128.5363281250001, -3.541308593749989], + [128.56259765625012, -3.58544921875] + ] + ], + [ + [ + [128.2755859375001, -3.67460937499996], + [128.24990234375, -3.711132812500026], + [128.191796875, -3.735253906249966], + [128.14316406250012, -3.732714843749989], + [128.15898437500007, -3.697656250000037], + [128.146875, -3.677148437500037], + [128.11083984375003, -3.686425781249966], + [128.05224609374997, -3.714550781250011], + [127.97802734374997, -3.770996093749972], + [127.934375, -3.743066406249966], + [127.925, -3.69931640625002], + [127.92753906250007, -3.679394531249955], + [128.01621093750012, -3.600878906249946], + [128.11914062500003, -3.5875], + [128.26435546875004, -3.51230468750002], + [128.32910156249997, -3.51591796874996], + [128.31367187500004, -3.563671875000011], + [128.29101562500003, -3.59765625], + [128.27744140625012, -3.633203124999966], + [128.2755859375001, -3.67460937499996] + ] + ], + [ + [ + [128.72246093750002, -3.54687], + [128.72011718750005, -3.58916015624996], + [128.71328125, -3.602539062500028], + [128.65878906250006, -3.587792968750037], + [128.61953125, -3.588574218750026], + [128.5851562500001, -3.51220703125], + [128.59492187500004, -3.494824218750011], + [128.66650390624997, -3.516699218750034], + [128.69355468750004, -3.52451171875002], + [128.72246093750002, -3.54687] + ] + ], + [ + [ + [116.42412109375007, -3.464453124999963], + [116.38779296875012, -3.636718749999972], + [116.3265625, -3.539062499999972], + [116.39531250000002, -3.423339843750014], + [116.4269531250001, -3.399902343749957], + [116.42412109375007, -3.464453124999963] + ] + ], + [ + [ + [127.60625, -3.315136718749997], + [127.62929687500005, -3.359179687500003], + [127.53105468750002, -3.331347656250017], + [127.4876953125, -3.28818359375002], + [127.5304687500001, -3.261523437500003], + [127.55449218750002, -3.254296874999952], + [127.60625, -3.315136718749997] + ] + ], + [ + [ + [116.30332031250006, -3.868164062499957], + [116.09335937500006, -4.054101562500009], + [116.05878906250004, -4.006933593749991], + [116.07695312500002, -3.81748046875002], + [116.01835937500007, -3.699902343749969], + [116.02246093750003, -3.612402343749991], + [116.06357421875006, -3.457910156249952], + [116.1173828125001, -3.339550781249997], + [116.23935546875006, -3.260351562500034], + [116.26972656250004, -3.251074218750006], + [116.262109375, -3.394824218749989], + [116.2865234375, -3.448828124999977], + [116.29511718750004, -3.495019531249966], + [116.28203125000007, -3.534765624999977], + [116.30517578124997, -3.718554687500031], + [116.31865234375007, -3.762988281250031], + [116.28925781250004, -3.820898437500006], + [116.30332031250006, -3.868164062499957] + ] + ], + [ + [ + [126.86113281250007, -3.087890624999986], + [127.02548828125006, -3.166015625], + [127.06289062500005, -3.216992187499997], + [127.09238281250006, -3.277539062499983], + [127.1247070312501, -3.310839843750017], + [127.1634765625, -3.338085937499969], + [127.22734375000007, -3.391015625], + [127.24423828125012, -3.47109375], + [127.22958984375006, -3.633007812500011], + [127.15517578125, -3.647265624999989], + [127.08505859375012, -3.6708984375], + [126.94091796874997, -3.764550781249994], + [126.86992187500007, -3.782910156249997], + [126.7941406250001, -3.789160156250034], + [126.74033203125006, -3.813671874999955], + [126.68632812500007, -3.823632812500037], + [126.54667968750002, -3.771679687500026], + [126.41113281250003, -3.710644531250026], + [126.21455078125004, -3.605175781250026], + [126.17832031250012, -3.579394531250017], + [126.1466796875001, -3.522753906250017], + [126.05654296875, -3.420996093749991], + [126.03398437500002, -3.355859375000037], + [126.02646484375012, -3.17050781250002], + [126.05009765625002, -3.128125], + [126.08828125, -3.105468750000014], + [126.21962890625, -3.148144531249997], + [126.30625, -3.103222656249997], + [126.55507812500005, -3.065234374999989], + [126.80830078125004, -3.069140624999974], + [126.86113281250007, -3.087890624999986] + ] + ], + [ + [ + [127.98789062500012, -2.936523437499957], + [127.9376953125001, -3.020019531250014], + [127.84960937499997, -3.016308593749969], + [127.83427734375007, -3.004394531250028], + [127.93837890625005, -2.952343749999983], + [127.98789062500012, -2.936523437499957] + ] + ], + [ + [ + [106.88642578125004, -3.005273437500023], + [106.86972656250012, -3.025292968750023], + [106.81425781250007, -3.014453125000031], + [106.77431640625005, -2.98681640625], + [106.74921875000004, -2.960449218749957], + [106.7428710937501, -2.932812500000011], + [106.796875, -2.898925781250028], + [106.91064453124997, -2.93398437499998], + [106.88642578125004, -3.005273437500023] + ] + ], + [ + [ + [107.47333984375004, -2.899511718749977], + [107.43281250000004, -2.925292968749986], + [107.40927734375006, -2.900585937500011], + [107.40244140625012, -2.87294921874998], + [107.4193359375, -2.838085937499983], + [107.47441406250002, -2.834667968749997], + [107.4997070312501, -2.845019531249974], + [107.47333984375004, -2.899511718749977] + ] + ], + [ + [ + [129.75468750000007, -2.865820312500034], + [129.98437, -2.976660156249963], + [130.10341796875005, -2.99296875], + [130.30361328125, -2.978515624999986], + [130.3791015625001, -2.989355468749977], + [130.56992187500006, -3.130859375000028], + [130.62558593750012, -3.228027343750014], + [130.64169921875012, -3.311914062499966], + [130.67109375000004, -3.391503906250023], + [130.71806640625002, -3.411328124999969], + [130.77343749999997, -3.41875], + [130.84560546875, -3.533300781249949], + [130.85996093750006, -3.570312500000028], + [130.805078125, -3.85771484374996], + [130.58037109375007, -3.748828124999989], + [130.36308593750002, -3.625195312500026], + [130.2697265625001, -3.579296875], + [130.01953125000003, -3.474707031250006], + [129.9811523437501, -3.43886718749998], + [129.95312, -3.391601562499943], + [129.844140625, -3.327148437499957], + [129.6266601562501, -3.317187499999974], + [129.54501953125006, -3.318847656249957], + [129.51171875000003, -3.32851562499998], + [129.52041015625005, -3.363183593750023], + [129.52167968750004, -3.433691406249991], + [129.46767578125005, -3.453222656249977], + [129.33281250000002, -3.408691406249972], + [129.2121093750001, -3.392675781249991], + [129.10761718750004, -3.34921875000002], + [128.9674804687501, -3.326074218750009], + [128.95205078125005, -3.30419921875], + [128.96406250000004, -3.271679687500026], + [128.95781250000007, -3.241113281250023], + [128.92539062500006, -3.229296875000017], + [128.8625, -3.234960937500006], + [128.80175781249997, -3.26562], + [128.75126953125002, -3.30048828125004], + [128.67695312500004, -3.396582031249991], + [128.63896484375002, -3.433398437500031], + [128.51660156249997, -3.449121093750037], + [128.46591796875006, -3.43984375], + [128.41923828125002, -3.416015624999943], + [128.2799804687501, -3.240527343749989], + [128.23300781250012, -3.20263671875], + [128.18066406250003, -3.171679687500003], + [128.13203125000004, -3.157421875000026], + [128.08212890625012, -3.184082031249943], + [128.05576171875006, -3.238574218749946], + [128.04394531249997, -3.303320312499991], + [128.03007812500007, -3.340527343750026], + [127.97001953125002, -3.444335937499943], + [127.92041015625003, -3.506054687499997], + [127.90234374999997, -3.496289062499955], + [127.92783203125012, -3.397265624999946], + [127.92792968750004, -3.34140625000002], + [127.8971679687501, -3.282324218749977], + [127.87792968749997, -3.222070312499966], + [128.11337890625006, -2.934570312500014], + [128.19853515625002, -2.865917968749969], + [128.56982421874997, -2.842187500000023], + [128.79052734375003, -2.856640625000026], + [128.91074218750006, -2.849609375000014], + [128.99111328125, -2.82851562499998], + [129.05771484375006, -2.838476562499977], + [129.07431640625012, -2.895117187499963], + [129.11630859375012, -2.937011718749972], + [129.17441406250006, -2.933496093749966], + [129.27958984375002, -2.8890625], + [129.37109374999997, -2.82050781250004], + [129.42734375000006, -2.790722656250011], + [129.48417968750002, -2.785742187499977], + [129.54296875000003, -2.790332031250017], + [129.60048828125, -2.806152343749957], + [129.75468750000007, -2.865820312500034] + ] + ], + [ + [ + [100.42509765625007, -3.182910156249974], + [100.46513671875007, -3.32851562499998], + [100.34609375000005, -3.229199218749997], + [100.34843750000007, -3.158789062500034], + [100.33203125000003, -3.11308593749996], + [100.2599609375001, -3.056933593749974], + [100.20429687500004, -2.98681640625], + [100.17929687500006, -2.82021484374998], + [100.19853515625002, -2.785546875000023], + [100.24560546874997, -2.783203124999986], + [100.45458984375003, -3.001953124999972], + [100.46884765625012, -3.038964843749966], + [100.46425781250005, -3.116894531250026], + [100.43388671875007, -3.141308593750026], + [100.42509765625007, -3.182910156249974] + ] + ], + [ + [ + [108.2072265625001, -2.997656249999977], + [108.19179687500005, -3.103027343749957], + [108.16728515625002, -3.142773437499969], + [108.08359375000012, -3.19492187500002], + [108.05527343750006, -3.22685546874996], + [107.97714843750012, -3.221777343749991], + [107.96728515624997, -3.166601562500034], + [107.94111328125004, -3.12929687499998], + [107.85820312500002, -3.086328125000023], + [107.8366210937501, -3.0966796875], + [107.82177734374997, -3.160742187499991], + [107.6595703125, -3.205566406249972], + [107.61445312500004, -3.209375], + [107.63671875000003, -3.124804687499946], + [107.59492187500004, -3.058398437500017], + [107.59160156250007, -2.976562499999943], + [107.58388671875, -2.940722656250017], + [107.56347656250003, -2.920117187499997], + [107.60488281250005, -2.863085937500017], + [107.59814453124997, -2.79970703124998], + [107.64160156249997, -2.731542968750034], + [107.66630859375002, -2.566308593750037], + [107.83779296875005, -2.530273437499972], + [107.87470703125004, -2.55966796875002], + [108.07441406250004, -2.596972656249974], + [108.21513671875002, -2.696972656250011], + [108.29062500000012, -2.829980468750023], + [108.2072265625001, -2.997656249999977] + ] + ], + [ + [ + [100.20410156249997, -2.741015625000017], + [100.13271484375, -2.821386718749949], + [100.01494140625007, -2.819726562499966], + [99.9918945312501, -2.769824218750017], + [99.996875, -2.64931640624998], + [99.96816406250005, -2.609765625], + [99.96933593750012, -2.594140625000023], + [99.98789062500006, -2.525390624999957], + [100.0119140625001, -2.510253906249986], + [100.20195312500007, -2.679687499999957], + [100.20410156249997, -2.741015625000017] + ] + ], + [ + [ + [134.3742187500001, -2.123535156249986], + [134.34521484375003, -2.138769531249977], + [134.33505859375006, -2.095214843749986], + [134.3507812500001, -2.036914062500003], + [134.36953125, -2.027636718749989], + [134.39101562500005, -2.03076171875], + [134.41904296875006, -2.051757812500014], + [134.3742187500001, -2.123535156249986] + ] + ], + [ + [ + [99.84306640625007, -2.343066406250031], + [99.84785156250004, -2.369726562499949], + [99.68515625000012, -2.281738281249972], + [99.60703125000012, -2.257519531250011], + [99.53740234375007, -2.161523437499994], + [99.55888671875007, -2.115429687500011], + [99.56181640625007, -2.05117187499998], + [99.57216796875005, -2.025781249999966], + [99.62207031249997, -2.016601562499957], + [99.68642578125005, -2.06337890624998], + [99.734765625, -2.177734375000014], + [99.81572265625007, -2.28437], + [99.84306640625007, -2.343066406250031] + ] + ], + [ + [ + [126.055078125, -2.451269531249963], + [126.03789062500002, -2.469433593750011], + [125.9779296875, -2.415429687500023], + [125.93759765625012, -2.26279296875002], + [125.90322265625005, -2.22216796875], + [125.86289062500006, -2.077148437499943], + [125.87324218750004, -2.035937499999989], + [125.92275390625, -1.974804687499969], + [125.96279296875, -1.975781249999983], + [125.99267578124997, -2.011816406249963], + [125.9759765625, -2.168066406249991], + [126.06572265625002, -2.365820312499963], + [126.055078125, -2.451269531249963] + ] + ], + [ + [ + [123.84824218750006, -1.955468750000023], + [123.86601562500002, -1.995703124999963], + [123.80351562500002, -1.99433593750004], + [123.77724609375, -1.918652343749983], + [123.78349609375002, -1.878320312500023], + [123.84824218750006, -1.955468750000023] + ] + ], + [ + [ + [126.02421875000007, -1.789746093750011], + [126.33173828125004, -1.822851562500006], + [126.28808593750003, -1.858886718749972], + [125.95644531250005, -1.916601562500006], + [125.83886718749997, -1.906152343750009], + [125.47919921875004, -1.940039062499991], + [125.43261718749997, -1.938085937500034], + [125.42597656250004, -1.882226562500023], + [125.38720703124997, -1.843066406249946], + [125.4447265625, -1.808984375000023], + [125.52089843750005, -1.800878906249977], + [125.72031250000006, -1.813769531250017], + [126.02421875000007, -1.789746093750011] + ] + ], + [ + [ + [123.1525390625001, -1.816503906249963], + [123.0788085937501, -1.898925781249957], + [123.07089843750006, -1.854882812499966], + [123.08583984375, -1.81484375], + [123.10644531250003, -1.78671875000002], + [123.1375, -1.77265625], + [123.1525390625001, -1.816503906249963] + ] + ], + [ + [ + [130.35332031250007, -1.690527343749963], + [130.36542968750004, -1.74980468749996], + [130.425, -1.804589843750023], + [130.40429687499997, -1.889843749999983], + [130.38056640625004, -1.902636718750003], + [130.39335937500007, -1.94160156250004], + [130.41884765625, -1.971289062499963], + [130.37265625000012, -1.991894531249983], + [130.33896484375006, -1.98183593749998], + [130.28417968750003, -2.009375], + [130.24804687500003, -2.047753906249994], + [130.13349609375004, -2.063867187499994], + [130.09335937500006, -2.028320312499943], + [129.88652343750002, -1.98642578125002], + [129.75439453125003, -1.894433593750023], + [129.7376953125, -1.866894531250011], + [129.99365234374997, -1.758886718750034], + [130.10576171875002, -1.730468750000014], + [130.199609375, -1.732226562500017], + [130.31796875000006, -1.691992187499991], + [130.35332031250007, -1.690527343749963] + ] + ], + [ + [ + [124.96953125000007, -1.70546875], + [125.06298828125003, -1.741015625000031], + [125.09589843750004, -1.740820312499991], + [125.12675781250002, -1.699316406249977], + [125.14580078125002, -1.692578125000026], + [125.18789062500005, -1.712890624999986], + [125.19765625, -1.780273437499943], + [125.258203125, -1.770898437499994], + [125.3053710937501, -1.793945312499986], + [125.32021484375, -1.810058593749972], + [125.31406250000006, -1.877148437499969], + [125.13476562499997, -1.888964843749974], + [125.00673828125, -1.943066406249983], + [124.83447265624997, -1.894433593750023], + [124.63916015624997, -1.97822265625004], + [124.52060546875006, -2.006933593750034], + [124.41777343750002, -2.005175781250031], + [124.32968750000012, -1.858886718749972], + [124.38085937499997, -1.6875], + [124.41757812500006, -1.659277343749991], + [124.48300781250006, -1.64433593749996], + [124.66396484375, -1.635937500000026], + [124.96953125000007, -1.70546875] + ] + ], + [ + [ + [135.47421875000006, -1.591796875000014], + [135.86914062499997, -1.641992187500023], + [135.97617187500012, -1.635546874999946], + [136.20156250000005, -1.654980468749997], + [136.38964843749997, -1.72158203124998], + [136.71855468750002, -1.73398437500002], + [136.81669921875002, -1.75380859374998], + [136.89257812500003, -1.799707031249994], + [136.70859375000012, -1.837695312500017], + [136.621875, -1.873046875000014], + [136.46083984375, -1.890429687500003], + [136.32607421875, -1.872460937499994], + [136.22812500000012, -1.893652343749949], + [136.19257812500004, -1.859179687499946], + [136.04921875, -1.824121093749994], + [135.86572265624997, -1.752148437499997], + [135.48759765625007, -1.66835937499998], + [135.46972656249997, -1.616210937500014], + [135.47421875000006, -1.591796875000014] + ] + ], + [ + [ + [108.95312, -1.61962890625], + [108.83789062499997, -1.661621093750028], + [108.80371093750003, -1.567773437499994], + [108.87724609375007, -1.539843749999989], + [108.95683593750002, -1.564062499999949], + [108.95312, -1.61962890625] + ] + ], + [ + [ + [106.04570312500002, -1.669433593750014], + [106.08007812499997, -1.738281250000014], + [106.1271484375001, -1.800195312500009], + [106.16171875000012, -1.866992187500031], + [106.20878906250002, -2.188671875000011], + [106.36591796875004, -2.464843749999972], + [106.81845703125006, -2.573339843749963], + [106.74433593750004, -2.617968749999989], + [106.70664062500012, -2.658007812499974], + [106.67880859375012, -2.704003906250023], + [106.6120117187501, -2.895507812499957], + [106.6185546875, -2.936132812499977], + [106.65761718750005, -3.001171874999983], + [106.66718750000004, -3.071777343749986], + [106.61054687500004, -3.071386718749991], + [106.54677734375005, -3.055566406249966], + [106.49609375000003, -3.029003906249969], + [106.44873046874997, -2.994238281249991], + [106.39736328125005, -2.96660156249996], + [106.34160156250007, -2.948730468749957], + [106.25009765625006, -2.894042968750014], + [106.12587890625, -2.855371093750037], + [105.99873046875004, -2.824902343749955], + [105.9372070312501, -2.743554687499994], + [105.90800781250002, -2.643261718749997], + [105.93906250000012, -2.493457031250031], + [105.90761718750005, -2.451953125], + [105.86240234375006, -2.415429687500023], + [105.8068359375001, -2.30742187499996], + [105.7858398437501, -2.18134765625004], + [105.7052734375001, -2.13261718749996], + [105.59902343750005, -2.103125], + [105.55273437500003, -2.079003906249966], + [105.34287109375006, -2.125097656250034], + [105.29257812500006, -2.114257812499957], + [105.24765625000006, -2.07939453124996], + [105.13339843750012, -2.042578125], + [105.13769531250003, -1.972656249999972], + [105.19101562500006, -1.91689453124998], + [105.31621093750007, -1.860546874999955], + [105.37480468750002, -1.813183593749997], + [105.38652343750002, -1.750781249999974], + [105.36425781249997, -1.705078125], + [105.37314453125012, -1.657324218750034], + [105.41269531250012, -1.611035156250026], + [105.45957031250006, -1.574707031249986], + [105.58544921875003, -1.526757812499994], + [105.64042968750002, -1.610449218749991], + [105.66757812500006, -1.680371093750026], + [105.7008789062501, -1.731054687499963], + [105.75449218750012, -1.658691406249957], + [105.7204101562501, -1.533886718750026], + [105.81611328125004, -1.50605468750004], + [105.91005859375, -1.504980468749991], + [105.98095703124997, -1.539160156250034], + [106.02734374999997, -1.593164062500023], + [106.04570312500002, -1.669433593750014] + ] + ], + [ + [ + [123.59755859375, -1.704296875000011], + [123.52861328125007, -1.710839843750009], + [123.48251953125006, -1.681445312499974], + [123.48662109375002, -1.534863281249955], + [123.52851562500004, -1.502832031250009], + [123.54853515625004, -1.508203125000037], + [123.56132812500007, -1.551855468749949], + [123.58203125000003, -1.590917968750006], + [123.6164062500001, -1.627441406249986], + [123.59755859375, -1.704296875000011] + ] + ], + [ + [ + [128.1530273437501, -1.66054687499998], + [128.09179687499997, -1.701171875], + [128.06123046875004, -1.712402343749972], + [127.9137695312501, -1.68515625000002], + [127.74101562500007, -1.690820312500023], + [127.56162109375012, -1.728515624999972], + [127.45761718750006, -1.696679687499966], + [127.39218750000006, -1.644824218749974], + [127.39501953125003, -1.589843749999972], + [127.45673828125004, -1.453710937500034], + [127.59179687499997, -1.350781250000026], + [127.64667968750004, -1.332421875], + [127.74296875000002, -1.360253906249994], + [127.90507812500002, -1.439062499999977], + [128.03281250000012, -1.531640625], + [128.14873046875002, -1.60371093750004], + [128.1530273437501, -1.66054687499998] + ] + ], + [ + [ + [123.2123046875, -1.171289062499966], + [123.23427734375005, -1.233691406249974], + [123.19804687500002, -1.287695312499963], + [123.23779296874997, -1.389355468749983], + [123.33857421875004, -1.25400390625002], + [123.43476562500004, -1.236816406249986], + [123.48935546875006, -1.259277343749943], + [123.52685546874997, -1.28603515624998], + [123.54726562500005, -1.337402343749957], + [123.51191406250004, -1.447363281249977], + [123.44873046875003, -1.498828124999989], + [123.36699218750007, -1.507128906249989], + [123.32861328124997, -1.443066406249997], + [123.27490234374997, -1.437207031249955], + [123.23740234375006, -1.576953125], + [123.22050781250007, -1.598339843750011], + [123.17294921875006, -1.616015624999974], + [123.13037109375003, -1.577441406250017], + [123.12294921875, -1.556054687500009], + [123.18291015625007, -1.492773437499991], + [123.15039062500003, -1.304492187500003], + [123.10517578125004, -1.339843750000014], + [122.984375, -1.510644531249994], + [122.89042968750007, -1.58720703124996], + [122.85849609375006, -1.548242187500023], + [122.81083984375002, -1.432128906249986], + [122.83222656250004, -1.283007812499989], + [122.90800781250002, -1.182226562499963], + [122.97246093750007, -1.189160156249955], + [123.15830078125012, -1.157519531250003], + [123.2123046875, -1.171289062499966] + ] + ], + [ + [ + [109.71025390625007, -1.1806640625], + [109.51083984375012, -1.282812500000034], + [109.46367187500002, -1.277539062500026], + [109.428125, -1.2412109375], + [109.45029296875012, -1.044140625], + [109.4759765625, -0.9853515625], + [109.61464843750005, -0.979101562499977], + [109.69951171875002, -1.007324218749957], + [109.74335937500004, -1.039355468749989], + [109.76054687500002, -1.105175781249997], + [109.75078125000007, -1.145019531250028], + [109.71025390625007, -1.1806640625] + ] + ], + [ + [ + [134.96533203124997, -1.116015624999974], + [134.9173828125, -1.134277343749972], + [134.86171875, -1.114160156249952], + [134.80888671875007, -1.037597656249986], + [134.82792968750002, -0.978808593750003], + [134.88925781250012, -0.938476562499957], + [134.94082031250005, -0.978906250000023], + [134.9567382812501, -1.030566406249974], + [134.99628906250004, -1.03408203124998], + [134.96533203124997, -1.116015624999974] + ] + ], + [ + [ + [99.16386718750007, -1.777929687500006], + [99.07177734374997, -1.783496093749989], + [98.87431640625007, -1.663671875], + [98.82773437500006, -1.609960937499977], + [98.81630859375005, -1.538281250000026], + [98.62695312500003, -1.261328125], + [98.60175781250004, -1.197851562499949], + [98.67607421875007, -0.970507812500003], + [98.86904296875005, -0.915625], + [98.93261718750003, -0.954003906250009], + [98.9547851562501, -1.05625], + [99.06503906250012, -1.240722656249986], + [99.10146484375005, -1.340136718749989], + [99.12890624999997, -1.384179687499994], + [99.14042968750002, -1.418457031249957], + [99.13066406250007, -1.442382812499943], + [99.21035156250005, -1.559277343749955], + [99.2672851562501, -1.62773437499996], + [99.27148437499997, -1.738476562499955], + [99.16386718750007, -1.777929687500006] + ] + ], + [ + [ + [131.00185546875005, -1.315527343750034], + [130.96660156250007, -1.34345703125004], + [130.8451171875, -1.317285156250037], + [130.78232421875006, -1.255468749999963], + [130.73935546875012, -1.17255859375004], + [130.7121093750001, -1.104394531250009], + [130.70439453125002, -1.05019531249998], + [130.66796874999997, -0.983984375], + [130.67294921875006, -0.959765625000031], + [130.89716796875004, -0.890039062500037], + [130.93945312500003, -0.915332031249946], + [131.03300781250007, -0.917578124999963], + [131.07392578125004, -0.968261718749986], + [131.04619140625002, -1.188183593750026], + [131.00185546875005, -1.315527343750034] + ] + ], + [ + [ + [130.90527343749997, -0.77744140625002], + [130.87978515625005, -0.828417968750003], + [130.832421875, -0.86289062500002], + [130.40244140625006, -0.92392578125002], + [130.43906250000006, -0.88740234375004], + [130.45732421875002, -0.85117187500002], + [130.48427734375, -0.832519531249957], + [130.52695312500012, -0.837304687499952], + [130.54814453125007, -0.82626953125002], + [130.56953125000004, -0.821875], + [130.59375, -0.82666015625], + [130.6354492187501, -0.811621093749963], + [130.72324218750012, -0.82246093750004], + [130.81347656250003, -0.81386718749998], + [130.80703125000005, -0.76503906249998], + [130.90527343749997, -0.77744140625002] + ] + ], + [ + [ + [135.38300781250004, -0.6513671875], + [135.59570312499997, -0.690429687499957], + [135.67324218750005, -0.688281249999974], + [135.74902343750003, -0.732519531250006], + [135.8412109375, -0.711621093750011], + [135.89355468749997, -0.725781249999969], + [136.06875, -0.877734375000017], + [136.1546875, -0.978320312499989], + [136.2826171875, -1.064648437499997], + [136.37529296875007, -1.094042968750031], + [136.30537109375004, -1.173144531249989], + [136.1647460937501, -1.214746093750023], + [136.11035156250003, -1.216796875], + [136.00253906250006, -1.169726562500003], + [135.91503906250003, -1.178417968749997], + [135.83876953125, -1.11943359374996], + [135.8255859375, -1.028320312499972], + [135.74707031249997, -0.823046874999974], + [135.64570312500004, -0.881933593749991], + [135.523828125, -0.787304687499983], + [135.49111328125, -0.785058593749966], + [135.48339843749997, -0.801074218750031], + [135.43164062500003, -0.768847656249946], + [135.38769531249997, -0.704882812499974], + [135.38300781250004, -0.6513671875] + ] + ], + [ + [ + [127.30039062500012, -0.780957031250026], + [127.28906250000003, -0.8015625], + [127.18457031249997, -0.775292968750023], + [127.1564453125001, -0.760937500000026], + [127.20908203125006, -0.619335937499955], + [127.25820312500005, -0.6234375], + [127.30126953125003, -0.758398437499949], + [127.30039062500012, -0.780957031250026] + ] + ], + [ + [ + [130.6266601562501, -0.528710937499966], + [130.56914062500007, -0.529980468749955], + [130.46542968750006, -0.486523437499983], + [130.52587890624997, -0.448730468750014], + [130.56416015625004, -0.440917968750028], + [130.59746093750007, -0.418261718750031], + [130.6159179687501, -0.417285156250003], + [130.65693359375004, -0.436523437500014], + [130.6842773437501, -0.469140625], + [130.6266601562501, -0.528710937499966] + ] + ], + [ + [ + [121.86435546875012, -0.406835937500006], + [121.90683593750006, -0.451269531250006], + [121.88125, -0.502636718749983], + [121.846875, -0.489843749999949], + [121.75605468750004, -0.490820312499977], + [121.72177734375012, -0.494726562499977], + [121.68095703125002, -0.525], + [121.65527343749997, -0.526171874999989], + [121.67236328124997, -0.478808593750017], + [121.74931640625002, -0.40703125], + [121.79736328124997, -0.417675781249997], + [121.86435546875012, -0.406835937500006] + ] + ], + [ + [ + [133.47265624999997, -0.726171874999963], + [133.72363281249997, -0.741406249999955], + [133.8502929687501, -0.731445312499972], + [133.97451171875, -0.744335937500026], + [134.02490234374997, -0.76972656250004], + [134.11152343750004, -0.84677734375002], + [134.08671875000002, -0.897363281250023], + [134.07197265625004, -1.001855468749994], + [134.11621093749997, -1.102441406249966], + [134.18828125000002, -1.20312], + [134.24716796875012, -1.310546875], + [134.25957031250007, -1.362988281250026], + [134.23720703125005, -1.474121093750014], + [134.2169921875001, -1.529101562500031], + [134.14541015625, -1.620800781249969], + [134.105859375, -1.720996093749946], + [134.13125, -1.844531249999989], + [134.14541015625, -1.96875], + [134.1427734375001, -2.082910156249966], + [134.15566406250005, -2.195214843750023], + [134.19482421875003, -2.309082031249943], + [134.36210937500002, -2.62099609374998], + [134.45996093749997, -2.83232421874996], + [134.49121093750003, -2.71425781249998], + [134.48330078125, -2.583007812499972], + [134.51796875000005, -2.53564453125], + [134.56689453124997, -2.510449218750026], + [134.62744140624997, -2.536718749999963], + [134.64472656250004, -2.589843749999943], + [134.64902343750012, -2.70585937499996], + [134.70214843749997, -2.933593749999986], + [134.76982421875002, -2.944042968749983], + [134.84335937500006, -2.909179687499986], + [134.85537109375005, -2.97880859374996], + [134.85273437500004, -3.107617187499997], + [134.88681640625006, -3.209863281249966], + [134.91718750000004, -3.249902343750037], + [135.03740234375002, -3.33310546875002], + [135.09218750000005, -3.348535156249966], + [135.25156250000012, -3.368554687499966], + [135.37158203124997, -3.374902343750009], + [135.48662109375002, -3.34511718749998], + [135.56074218750004, -3.26875], + [135.62773437500002, -3.186035156249986], + [135.85917968750002, -2.99531250000004], + [135.92617187500005, -2.904101562500017], + [135.99072265624997, -2.764257812499949], + [136.01298828125007, -2.734277343749966], + [136.24326171875006, -2.583105468749991], + [136.26953125000003, -2.529492187499997], + [136.30253906250007, -2.42568359374998], + [136.35244140625005, -2.325195312500028], + [136.38994140625002, -2.273339843750037], + [136.61230468749997, -2.224316406249997], + [136.84326171875003, -2.19765625], + [137.07207031250002, -2.105078124999949], + [137.1710937500001, -2.025488281249991], + [137.17578124999997, -1.973144531249986], + [137.12548828124997, -1.88125], + [137.1234375, -1.840917968749963], + [137.17646484375004, -1.802148437499966], + [137.38056640625004, -1.685644531250034], + [137.6166015625, -1.565820312499952], + [137.80625000000012, -1.483203125], + [137.91113281249997, -1.483789062500037], + [138.00781250000003, -1.556542968750023], + [138.11093750000006, -1.61591796875004], + [138.6498046875, -1.79111328125002], + [138.73613281250002, -1.845507812500003], + [138.81142578125, -1.917773437499989], + [138.91914062500004, -1.967871093749977], + [139.039453125, -1.992089843750023], + [139.14882812500005, -2.03886718749996], + [139.25263671875004, -2.09921875], + [139.48183593750005, -2.211816406250023], + [139.78955078125003, -2.34824218750002], + [139.8683593750001, -2.3564453125], + [140.15458984375007, -2.35], + [140.20400390625, -2.375683593750011], + [140.25097656249997, -2.412011718749952], + [140.2946289062501, -2.420410156249972], + [140.62255859374997, -2.44580078125], + [140.6730468750001, -2.472070312500023], + [140.72050781250007, -2.508105468749989], + [140.74746093750005, -2.607128906249997], + [140.97343750000007, -2.609765625], + [140.97353515625, -2.803417968750026], + [140.97363281250003, -3.006640624999946], + [140.97373046875006, -3.209960937499986], + [140.97382812500004, -3.413281250000011], + [140.97392578125002, -3.616601562499952], + [140.9740234375, -3.819824218749972], + [140.9740234375, -4.023144531249997], + [140.97421875000006, -4.226464843750037], + [140.97421875000006, -4.429785156249977], + [140.9743164062501, -4.633007812499997], + [140.97441406250002, -4.836328125000023], + [140.97451171875005, -5.039648437499963], + [140.97460937499997, -5.24296875], + [140.97460937499997, -5.446191406250009], + [140.97470703125006, -5.649511718749963], + [140.9748046875001, -5.852832031249989], + [140.97490234375002, -6.056152343750028], + [140.975, -6.259375], + [140.975, -6.346093750000023], + [140.94404296875004, -6.452246093749977], + [140.87460937500012, -6.611523437500011], + [140.86230468749997, -6.740039062499989], + [140.91953125000012, -6.840039062500026], + [140.97519531250006, -6.90537109375002], + [140.97519531250006, -7.072558593749974], + [140.9752929687501, -7.27587890625], + [140.97539062500002, -7.47919921875004], + [140.97548828125005, -7.68251953124998], + [140.97558593749997, -7.885742187499986], + [140.97558593749997, -8.089062500000026], + [140.97568359375006, -8.292382812499966], + [140.97578125000004, -8.495703125], + [140.97587890625002, -8.698925781250011], + [140.97597656250005, -8.902246093749952], + [140.97597656250005, -9.105566406249991], + [140.97617187500012, -9.11875], + [140.92460937500007, -9.085058593749991], + [140.7865234375, -8.973730468749949], + [140.66152343750005, -8.84677734375002], + [140.58105468749997, -8.72832031249996], + [140.48974609375003, -8.620410156250003], + [140.10166015625012, -8.300585937499946], + [140.00292968749997, -8.19550781250004], + [139.98330078125, -8.166503906249986], + [139.992578125, -8.139355468749969], + [140.03740234375007, -8.083984374999972], + [140.11699218750002, -7.923730468750009], + [140.03378906250006, -8.022753906250017], + [139.93476562500004, -8.101171875], + [139.79082031250002, -8.106347656249994], + [139.64941406249997, -8.125390624999966], + [139.51855468749997, -8.172753906250023], + [139.38564453125, -8.189062499999963], + [139.31914062500002, -8.165820312500031], + [139.27910156250002, -8.106933593750028], + [139.25830078124997, -8.046582031249983], + [139.24882812500002, -7.982421874999972], + [139.19296875000006, -8.086132812499955], + [139.0832031250001, -8.142871093749974], + [138.93349609375, -8.262402343749983], + [138.890625, -8.237792968749943], + [138.86474609374997, -8.192285156250009], + [138.85615234375004, -8.145117187499991], + [138.88505859375007, -8.094726562500028], + [138.90546875000004, -8.041210937499955], + [138.93593750000005, -7.913085937499972], + [139.00302734375012, -7.83759765625004], + [139.04570312500002, -7.691406250000014], + [139.0736328125, -7.639257812499963], + [139.08798828125012, -7.587207031250017], + [139.04892578125006, -7.5283203125], + [138.98300781250012, -7.508203125], + [138.937890625, -7.472460937499989], + [138.88554687500007, -7.373242187500026], + [138.85312500000012, -7.339648437500031], + [138.7936523437501, -7.298925781249991], + [138.74794921875, -7.25146484375], + [138.79843750000006, -7.215722656250009], + [138.86484375000012, -7.201367187500011], + [138.9193359375, -7.203613281250028], + [139.01796875000005, -7.225878906250031], + [139.0625, -7.22714843750002], + [139.17685546875006, -7.1904296875], + [139.11259765625002, -7.201757812500006], + [139.04902343750004, -7.200585937500023], + [138.84570312500003, -7.136328125], + [138.72001953125002, -7.069824218749943], + [138.60136718750007, -6.936523437499972], + [138.60019531250012, -6.910742187499949], + [138.6837890625001, -6.886523437499989], + [138.86455078125007, -6.858398437499943], + [138.80849609375, -6.790429687499952], + [138.72666015625012, -6.731152343749955], + [138.69814453125, -6.625683593749969], + [138.64218750000006, -6.560449218749994], + [138.52158203125006, -6.45380859375004], + [138.43867187500004, -6.343359375], + [138.36835937500004, -6.118554687500037], + [138.2962890625, -5.94902343749996], + [138.31386718750005, -5.8875], + [138.37460937500006, -5.84365234374998], + [138.28281250000012, -5.838574218750011], + [138.19960937500005, -5.80703125], + [138.2435546875, -5.724414062500031], + [138.33964843750007, -5.675683593749966], + [138.2521484375001, -5.688183593750026], + [138.16650390625003, -5.712011718749991], + [138.12744140624997, -5.716503906250011], + [138.08710937500004, -5.70917968750004], + [138.06591796874997, -5.675976562500026], + [138.06308593750012, -5.628906250000028], + [138.0755859375, -5.545800781249966], + [138.06083984375002, -5.46523437499998], + [137.98496093750006, -5.427636718749966], + [137.922265625, -5.370117187499972], + [137.88681640625006, -5.348828124999983], + [137.84033203125003, -5.350488281249966], + [137.79521484375007, -5.312011718749943], + [137.75908203125007, -5.256152343750017], + [137.30664062500003, -5.014355468749969], + [137.27978515624997, -4.945410156249949], + [137.23789062500012, -4.975683593749991], + [137.19589843750012, -4.990429687499983], + [137.14375, -4.950781249999977], + [137.08925781250005, -4.924414062500034], + [137.0296875, -4.928710937500014], + [136.97460937499997, -4.907324218750006], + [136.91699218750003, -4.895117187500006], + [136.85683593750005, -4.893164062499963], + [136.61884765625004, -4.81875], + [136.39375, -4.701269531249949], + [136.2106445312501, -4.650683593749946], + [136.09746093750002, -4.584765625000017], + [135.97968750000004, -4.530859374999963], + [135.71660156250007, -4.478417968750023], + [135.45019531249997, -4.443066406250026], + [135.35390625, -4.441796875000023], + [135.27314453125004, -4.453125], + [135.19560546875007, -4.450683593749972], + [134.75419921875002, -4.19541015625002], + [134.67968749999997, -4.079101562499943], + [134.6869140625, -4.011132812499952], + [134.70654296875003, -3.954785156250026], + [134.88652343750007, -3.938476562499986], + [134.75976562500003, -3.922167968749946], + [134.70761718750006, -3.929882812500011], + [134.60341796875005, -3.97607421875], + [134.54687, -3.979296874999946], + [134.4671875, -3.948632812500009], + [134.39101562500005, -3.909960937499946], + [134.26621093750012, -3.945800781249972], + [134.20234375000004, -3.887011718749974], + [134.18046875000002, -3.82509765624998], + [134.14707031250006, -3.79677734374998], + [134.1, -3.799707031249952], + [134.03691406250002, -3.821972656249969], + [133.97382812500004, -3.817968750000034], + [133.93320312500012, -3.775585937500011], + [133.90400390625004, -3.720117187499994], + [133.8607421875, -3.680371093749983], + [133.80849609375, -3.65], + [133.723046875, -3.577929687499989], + [133.67832031250006, -3.4794921875], + [133.68339843750002, -3.309179687500034], + [133.69716796875, -3.248144531250034], + [133.78164062500005, -3.148925781249986], + [133.8415039062501, -3.054785156249991], + [133.76738281250007, -3.044335937499994], + [133.70039062500004, -3.0875], + [133.67197265625006, -3.131835937499957], + [133.66074218750012, -3.185546874999986], + [133.653125, -3.364355468749991], + [133.59941406250007, -3.416113281249963], + [133.51816406250012, -3.411914062500003], + [133.54228515625007, -3.516406249999974], + [133.50917968750005, -3.615527343750003], + [133.41513671875006, -3.732128906249955], + [133.40722656249997, -3.785156250000014], + [133.422265625, -3.842578124999989], + [133.40087890625003, -3.899023437500034], + [133.24873046875004, -4.062304687499989], + [133.19804687500002, -4.070117187499974], + [133.0851562500001, -4.069042968750026], + [132.96855468750007, -4.094921874999969], + [132.91445312500005, -4.05693359374996], + [132.87011718749997, -4.007421875], + [132.8371093750001, -3.948925781249983], + [132.79091796875, -3.82812], + [132.75390625000003, -3.703613281250014], + [132.86972656250006, -3.550976562499997], + [132.82978515625004, -3.412988281249952], + [132.75136718750005, -3.294628906249997], + [132.55351562500007, -3.130664062499989], + [132.34824218750006, -2.97509765625], + [132.25498046875006, -2.943457031249949], + [132.10205078124997, -2.929589843749966], + [132.05390625000004, -2.914550781250014], + [132.00634765624997, -2.856054687500006], + [131.97119140624997, -2.788574218750014], + [132.06689453125003, -2.759570312499974], + [132.2306640625001, -2.680371093749997], + [132.32333984375006, -2.684179687499977], + [132.57548828125002, -2.727148437500034], + [132.65292968750006, -2.766210937499991], + [132.725, -2.789062500000028], + [132.89726562500002, -2.658203125000014], + [133.03378906250012, -2.487402343750034], + [133.11884765625004, -2.45029296875002], + [133.19101562500006, -2.43779296874996], + [133.26494140625002, -2.45429687500004], + [133.41142578125002, -2.513964843750031], + [133.52656250000004, -2.541699218749997], + [133.60869140625007, -2.54716796874996], + [133.65156250000004, -2.6005859375], + [133.70009765625005, -2.624609375], + [133.71093750000003, -2.544042968750034], + [133.75332031250005, -2.450683593750014], + [133.83466796875004, -2.421679687499974], + [133.87763671875004, -2.415039062499943], + [133.90488281250012, -2.390917968750003], + [133.89892578124997, -2.304492187499989], + [133.79101562500003, -2.293652343749997], + [133.84970703125006, -2.219628906250023], + [133.90244140625006, -2.183593749999957], + [133.92050781250012, -2.147460937499972], + [133.92158203125004, -2.102050781249957], + [133.7103515625, -2.189160156250026], + [133.48779296874997, -2.225585937499986], + [133.35625, -2.215722656250023], + [133.22490234375007, -2.214453125000034], + [132.96279296875005, -2.272558593749963], + [132.86328125000003, -2.270214843750026], + [132.63105468750004, -2.24667968750002], + [132.5026367187501, -2.218457031249955], + [132.40332031250003, -2.240429687499997], + [132.30761718749997, -2.24228515625002], + [132.207421875, -2.175781249999972], + [132.12216796875012, -2.092382812500034], + [132.07988281250002, -2.033203124999957], + [132.02343749999997, -1.99033203125002], + [131.99843750000005, -1.932519531249966], + [131.93613281250012, -1.714941406249963], + [131.93037109375004, -1.559667968750034], + [131.82978515625004, -1.556542968750023], + [131.73144531249997, -1.541210937500011], + [131.29375, -1.393457031250009], + [131.24082031250006, -1.429687500000028], + [131.17919921875003, -1.448339843750006], + [131.11777343750012, -1.455273437499997], + [131.05673828125012, -1.447656249999952], + [130.99589843750007, -1.42470703124998], + [131.00097656250003, -1.38398437500004], + [131.04619140625002, -1.284082031250023], + [131.0905273437501, -1.247265624999983], + [131.15185546874997, -1.218847656249963], + [131.1908203125, -1.165820312500003], + [131.2541015625001, -1.006933593749963], + [131.25898437500004, -0.95263671875], + [131.25205078125012, -0.897167968749983], + [131.2572265625, -0.855468750000014], + [131.29638671874997, -0.83359375], + [131.46152343750006, -0.78183593750002], + [131.80429687500006, -0.703808593750026], + [131.89091796875007, -0.657128906250023], + [131.96240234374997, -0.58242187499998], + [132.04599609375012, -0.537011718749966], + [132.08447265624997, -0.491113281250037], + [132.12841796874997, -0.454101562499957], + [132.39375, -0.355468750000028], + [132.5080078125001, -0.347460937499989], + [132.62509765625006, -0.358886718750014], + [132.85644531250003, -0.417382812500023], + [133.07714843749997, -0.511816406249991], + [133.26845703125005, -0.635742187500014], + [133.47265624999997, -0.726171874999963] + ] + ], + [ + [ + [104.47421875000012, -0.334667968749955], + [104.5677734375, -0.43183593750004], + [104.59013671875002, -0.466601562500017], + [104.54394531250003, -0.520507812499986], + [104.50654296875004, -0.596679687499957], + [104.48535156249997, -0.612890624999977], + [104.41386718750002, -0.583691406249983], + [104.36318359375, -0.658593749999966], + [104.3297851562501, -0.539062499999943], + [104.25712890625002, -0.463281249999966], + [104.30234375000012, -0.385742187499972], + [104.31875, -0.380175781249989], + [104.34072265625, -0.38261718749996], + [104.36357421875007, -0.402832031249986], + [104.47421875000012, -0.334667968749955] + ] + ], + [ + [ + [127.56699218750006, -0.318945312499949], + [127.68242187500002, -0.46835937500002], + [127.60498046874997, -0.610156249999946], + [127.65859375, -0.689453125000028], + [127.80429687500006, -0.694433593749977], + [127.83789062500003, -0.724121093749986], + [127.86328125000003, -0.759863281249991], + [127.88017578125002, -0.808691406249991], + [127.84228515625003, -0.847753906249949], + [127.7611328125, -0.883691406249994], + [127.66757812500012, -0.832031249999943], + [127.64287109375007, -0.783984375000017], + [127.62382812500002, -0.766015625], + [127.49785156250002, -0.802441406249955], + [127.46269531250002, -0.80595703124996], + [127.43828125000002, -0.739062500000017], + [127.46865234375, -0.64296875], + [127.3805664062501, -0.599609375000028], + [127.3, -0.500292968749946], + [127.29707031250004, -0.46025390624996], + [127.3294921875, -0.39091796874996], + [127.32509765625, -0.335839843750023], + [127.37119140625006, -0.331640624999963], + [127.45517578125012, -0.406347656249991], + [127.49169921874997, -0.335937499999957], + [127.52734374999997, -0.306640625000028], + [127.56699218750006, -0.318945312499949] + ] + ], + [ + [ + [127.24990234375005, -0.4953125], + [127.18730468750007, -0.52119140625004], + [127.11914062500003, -0.520507812499986], + [127.10439453125005, -0.413867187500017], + [127.12646484375003, -0.278613281250003], + [127.1896484375001, -0.255761718749966], + [127.29003906250003, -0.284375], + [127.25302734375006, -0.318652343749989], + [127.28056640625007, -0.39101562499998], + [127.24990234375005, -0.4953125] + ] + ], + [ + [ + [103.73652343750004, -0.347949218750003], + [103.60634765625, -0.38291015625002], + [103.461328125, -0.357617187500011], + [103.47900390624997, -0.29746093750002], + [103.54892578125006, -0.227539062499986], + [103.61093750000012, -0.230566406249977], + [103.72392578125002, -0.27666015624996], + [103.76425781250006, -0.31777343749998], + [103.73652343750004, -0.347949218750003] + ] + ], + [ + [ + [130.81328125000007, -0.004101562500026], + [130.98652343750004, -0.046582031249983], + [131.02578125000005, -0.039941406249952], + [131.27685546875003, -0.149804687499952], + [131.31689453125003, -0.204296874999955], + [131.30273437499997, -0.241113281249994], + [131.33974609375005, -0.290332031249989], + [131.2575195312501, -0.365722656249986], + [131.21787109375006, -0.374121093750006], + [131.17773437499997, -0.34599609374996], + [131.09775390625012, -0.330078125], + [131.00537109374997, -0.360742187500037], + [130.94648437500004, -0.337597656250026], + [130.8966796875001, -0.268457031249966], + [130.80839843750007, -0.226464843750037], + [130.68349609375, -0.080664062499991], + [130.62216796875006, -0.0859375], + [130.63828125000006, -0.14296875], + [130.69130859375, -0.180566406250009], + [130.76132812500006, -0.291406250000023], + [130.80156250000002, -0.302148437499994], + [130.84316406250005, -0.298339843750014], + [130.89921875000002, -0.344433593749997], + [130.89628906250002, -0.416015625000014], + [130.7501953125001, -0.44384765625], + [130.69980468750006, -0.391601562500014], + [130.6886718750001, -0.296582031250011], + [130.60654296875006, -0.328613281249972], + [130.5749023437501, -0.361816406249986], + [130.55078124999997, -0.366406250000026], + [130.49628906250004, -0.267382812500017], + [130.34052734375004, -0.262304687499963], + [130.23662109375002, -0.209667968749983], + [130.28769531250012, -0.1546875], + [130.29492187499997, -0.101464843749966], + [130.3625, -0.072851562500006], + [130.43095703125007, -0.098486328124977], + [130.49960937500012, -0.060107421874974], + [130.54833984375003, -0.06992187500002], + [130.58427734375007, -0.04541015625], + [130.72236328125004, -0.029833984375031], + [130.81328125000007, -0.004101562500026] + ] + ], + [ + [ + [98.45927734375007, -0.530468749999969], + [98.39970703125007, -0.576855468750011], + [98.30966796875012, -0.531835937499977], + [98.33994140625006, -0.467871093750006], + [98.35478515625007, -0.379296875], + [98.40878906250006, -0.308984374999966], + [98.4271484375, -0.226464843750037], + [98.3229492187501, -0.000781249999974], + [98.37451171875003, 0.007080078125028], + [98.4154296875, -0.017529296875011], + [98.484375, -0.167675781249955], + [98.54414062500004, -0.257617187499989], + [98.52011718750012, -0.379687499999989], + [98.45927734375007, -0.530468749999969] + ] + ], + [ + [ + [104.77861328125007, -0.175976562499955], + [104.80751953125, -0.192480468750034], + [104.84316406250005, -0.14062], + [104.90898437500007, -0.21171875], + [104.94970703125003, -0.247265625000011], + [105.00537109374997, -0.282812499999963], + [104.9505859375, -0.284472656249946], + [104.92851562500002, -0.316992187500006], + [104.91425781250004, -0.323339843749963], + [104.70224609375012, -0.208691406249969], + [104.56660156250004, -0.245605468750028], + [104.47353515625, -0.21210937500004], + [104.44707031250002, -0.189160156249983], + [104.49707031249997, -0.12636718749998], + [104.54267578125004, 0.01772460937498], + [104.63564453125005, -0.018457031250023], + [104.6583984375001, -0.062841796875006], + [104.652734375, -0.07602539062502], + [104.71347656250012, -0.103027343750014], + [104.77861328125007, -0.175976562499955] + ] + ], + [ + [ + [129.54892578125006, -0.187011718749986], + [129.50566406250002, -0.189843750000037], + [129.46923828124997, -0.131445312500034], + [129.37011718749997, -0.066406250000014], + [129.3087890625001, 0.045410156250028], + [129.54199218749997, -0.139257812500034], + [129.54892578125006, -0.187011718749986] + ] + ], + [ + [ + [127.45341796875002, -0.005859375000028], + [127.4486328125, -0.036621093749986], + [127.41787109375005, 0.006347656249972], + [127.39677734375002, 0.016601562500014], + [127.41953125000012, 0.124414062500037], + [127.43134765625004, 0.142578125000014], + [127.4494140625001, 0.068994140625037], + [127.45341796875002, -0.005859375000028] + ] + ], + [ + [ + [104.68925781250007, 0.059521484374969], + [104.69814453125, 0.034667968750057], + [104.65087890624997, 0.062695312499997], + [104.62236328125002, 0.079638671874974], + [104.60351562499997, 0.095214843750043], + [104.49921875000004, 0.232080078125037], + [104.54384765625, 0.223291015625023], + [104.65986328125004, 0.10307617187496], + [104.68925781250007, 0.059521484374969] + ] + ], + [ + [ + [103.28447265625002, 0.541943359375011], + [103.17216796875007, 0.536181640625003], + [103.13955078125, 0.549072265625043], + [103.15332031249997, 0.643115234375017], + [103.18740234375, 0.699755859375017], + [103.23818359375, 0.698632812499966], + [103.2951171875001, 0.61396484375004], + [103.28447265625002, 0.541943359375011] + ] + ], + [ + [ + [127.41972656250007, 0.642089843749986], + [127.3839843750001, 0.631005859375037], + [127.37363281250012, 0.634863281250034], + [127.36289062500006, 0.675146484374977], + [127.38261718750007, 0.743554687499966], + [127.42480468749997, 0.744384765625043], + [127.44257812500004, 0.733447265625045], + [127.44589843750006, 0.68330078125004], + [127.41972656250007, 0.642089843749986] + ] + ], + [ + [ + [127.37265625000006, 0.791308593750017], + [127.33837890625003, 0.75844726562498], + [127.3060546875, 0.769433593749994], + [127.28642578125002, 0.811914062500037], + [127.29277343750007, 0.842480468750054], + [127.31982421874997, 0.862011718750026], + [127.35380859375007, 0.847460937500003], + [127.37265625000006, 0.791308593750017] + ] + ], + [ + [ + [103.45019531249997, 0.664453125000023], + [103.42968749999997, 0.65087890625], + [103.3444335937501, 0.777880859375031], + [103.36572265624997, 0.851123046875031], + [103.38613281250005, 0.869580078124969], + [103.43310546875003, 0.825], + [103.47031250000006, 0.77812], + [103.4974609375, 0.722705078124989], + [103.45019531249997, 0.664453125000023] + ] + ], + [ + [ + [103.82861328124997, 0.801025390625043], + [103.83398437499997, 0.772216796875028], + [103.74238281250004, 0.829980468749994], + [103.74003906250002, 0.871826171874986], + [103.75195312499997, 0.891357421874972], + [103.80664062500003, 0.846337890625037], + [103.82861328124997, 0.801025390625043] + ] + ], + [ + [ + [104.23935546875006, 0.833984375], + [104.17675781250003, 0.804882812500026], + [104.09814453124997, 0.896240234374986], + [104.10107421874997, 0.917480468750057], + [104.10830078125, 0.93354492187504], + [104.12275390625004, 0.943994140625037], + [104.17050781250006, 0.896728515625], + [104.22705078124997, 0.879882812500028], + [104.23935546875006, 0.833984375] + ] + ], + [ + [ + [103.0275390625001, 0.746630859374974], + [103.00878906250003, 0.708105468750034], + [102.97148437500002, 0.73652343750004], + [102.77626953125, 0.779589843750031], + [102.71054687500006, 0.784375], + [102.54160156250012, 0.83159179687496], + [102.4904296875001, 0.856640625], + [102.45390625000002, 0.889501953125034], + [102.46640625000006, 0.950341796874994], + [102.49140625000004, 0.986865234374974], + [102.50664062500002, 1.088769531250037], + [102.54921875, 1.130224609374963], + [102.63320312500005, 1.054394531249969], + [102.72617187500006, 0.989208984375011], + [102.78007812500002, 0.95937], + [102.94414062500007, 0.89272460937498], + [103.00244140624997, 0.859277343750009], + [103.0275390625001, 0.746630859374974] + ] + ], + [ + [ + [103.42392578125012, 1.048339843749972], + [103.42968749999997, 0.993359374999969], + [103.36328125000003, 1.006835937500043], + [103.31542968750003, 1.071289062500028], + [103.35498046875003, 1.117236328124974], + [103.37998046875006, 1.133642578125034], + [103.40488281250006, 1.072558593750031], + [103.42392578125012, 1.048339843749972] + ] + ], + [ + [ + [103.16640625000005, 0.870166015625003], + [103.13720703124997, 0.841650390624963], + [103.08671875000007, 0.848144531250043], + [103.03339843750004, 0.882031250000026], + [102.96396484375012, 0.942675781250031], + [102.88632812500012, 0.99677734375004], + [102.78798828125005, 1.030957031249983], + [102.72646484375005, 1.041259765625043], + [102.7018554687501, 1.0537109375], + [102.72558593749997, 1.158837890625023], + [102.79013671875006, 1.16547851562504], + [102.99941406250005, 1.067773437500023], + [103.0675781250001, 1.014746093749977], + [103.16640625000005, 0.870166015625003] + ] + ], + [ + [ + [104.02480468750005, 1.180566406250009], + [104.08808593750004, 1.137011718750017], + [104.13984375000004, 1.165576171874974], + [104.13779296875006, 1.128222656250003], + [104.12734375, 1.092382812499977], + [104.06611328125004, 0.989550781249989], + [103.9635742187501, 1.013232421875017], + [103.93984375000005, 1.046484375000048], + [103.93222656250012, 1.071386718749963], + [103.9469726562501, 1.087011718750034], + [103.95537109375002, 1.137451171875014], + [103.99980468750002, 1.137255859374974], + [104.02480468750005, 1.180566406250009] + ] + ], + [ + [ + [104.58535156250005, 1.21611328124996], + [104.59101562500004, 1.14106445312504], + [104.64814453125004, 1.104589843749977], + [104.66289062500002, 1.04951171875004], + [104.65283203125003, 0.961035156250048], + [104.59912109374997, 0.858984375000034], + [104.57519531250003, 0.831933593750037], + [104.50429687500005, 0.852636718749991], + [104.4806640625001, 0.886767578125017], + [104.47119140624997, 0.913476562500037], + [104.48105468750012, 0.932519531250009], + [104.42861328125, 0.956494140625011], + [104.46240234375003, 0.995556640624969], + [104.43925781250002, 1.050439453125051], + [104.29394531249997, 1.016113281249986], + [104.25195312499997, 1.014892578125], + [104.24423828125006, 1.077392578125028], + [104.25019531250004, 1.10263671875002], + [104.36181640624997, 1.18149414062502], + [104.42841796875004, 1.196044921875043], + [104.50009765625006, 1.180224609375017], + [104.58535156250005, 1.21611328124996] + ] + ], + [ + [ + [102.4271484375, 0.990136718750023], + [102.38085937499997, 0.95976562499996], + [102.32529296875012, 1.00703125], + [102.27958984375002, 1.075683593750043], + [102.25546875000012, 1.14716796875004], + [102.23417968750002, 1.263964843750031], + [102.22861328125006, 1.347851562499983], + [102.25634765625003, 1.397070312499963], + [102.27646484375012, 1.395263671875043], + [102.35859375000004, 1.345654296874969], + [102.41289062500002, 1.260791015625003], + [102.44287109374997, 1.234228515625006], + [102.44882812500006, 1.15625], + [102.4289062500001, 1.067285156250023], + [102.4271484375, 0.990136718750023] + ] + ], + [ + [ + [97.48154296875006, 1.465087890624972], + [97.69833984375012, 1.183740234375023], + [97.78642578125002, 1.145898437500051], + [97.90322265625, 1.018261718749983], + [97.93193359375002, 0.973925781250003], + [97.90205078125004, 0.884228515625026], + [97.87646484374997, 0.628320312500023], + [97.82041015625012, 0.564453124999986], + [97.683984375, 0.596093750000037], + [97.68251953125, 0.641064453125054], + [97.60390625000005, 0.83388671874998], + [97.46123046875002, 0.941406250000043], + [97.40537109375012, 0.946972656250026], + [97.36884765625004, 1.056933593750045], + [97.296875, 1.187353515624963], + [97.07919921875006, 1.425488281249983], + [97.24423828125006, 1.42363281249996], + [97.32441406250004, 1.481640624999969], + [97.34277343749997, 1.527929687499977], + [97.35595703124997, 1.539746093749997], + [97.48154296875006, 1.465087890624972] + ] + ], + [ + [ + [102.49189453125004, 1.459179687500011], + [102.49941406250005, 1.330908203124991], + [102.42519531250005, 1.364453124999983], + [102.36689453125004, 1.415478515624983], + [102.27421875000002, 1.453125], + [102.1613281250001, 1.465429687500034], + [102.07871093750006, 1.498583984375045], + [102.0208984375, 1.55820312500002], + [102.01835937500002, 1.585644531250011], + [102.02402343750012, 1.607958984375031], + [102.0421875000001, 1.625390625000037], + [102.46953125000002, 1.510058593749989], + [102.49189453125004, 1.459179687500011] + ] + ], + [ + [ + [124.88886718750004, 0.995312500000011], + [124.69814453125, 0.82558593749998], + [124.63984375000004, 0.743554687499966], + [124.5890625000001, 0.655273437500014], + [124.5140625, 0.55712890625], + [124.42753906250002, 0.470605468750051], + [124.384375, 0.44497070312498], + [124.27802734375004, 0.3984375], + [124.21679687500003, 0.380371093750057], + [124.10136718750002, 0.374560546875017], + [123.75380859375, 0.305517578124991], + [123.63964843750003, 0.297460937500034], + [123.52597656250006, 0.300341796875003], + [123.31044921875, 0.317578125000054], + [123.26542968750007, 0.326611328125026], + [123.17949218750007, 0.415527343750014], + [123.08251953125003, 0.485839843750043], + [122.996875, 0.493505859375006], + [122.90957031250005, 0.48598632812498], + [122.28076171875003, 0.481054687500048], + [122.0609375, 0.468017578125057], + [121.8419921875001, 0.436572265625045], + [121.72275390625012, 0.450878906250026], + [121.60458984375012, 0.486132812500017], + [121.51572265625006, 0.498437500000037], + [121.42578125000003, 0.494824218750011], + [121.01298828125002, 0.441699218750017], + [120.90917968750003, 0.446777343749986], + [120.70039062500004, 0.514697265624974], + [120.57900390625, 0.5283203125], + [120.45996093749997, 0.51030273437496], + [120.34902343750005, 0.449218750000043], + [120.30703125, 0.40825195312496], + [120.19228515625, 0.268505859374997], + [120.12734375, 0.166552734375017], + [120.07832031250004, 0.039746093750026], + [120.03603515625005, -0.08994140625002], + [120.01328125000012, -0.196191406249994], + [120.01210937500005, -0.307128906249943], + [120.03173828124997, -0.43203125], + [120.062890625, -0.555566406250023], + [120.09746093750002, -0.649902343749972], + [120.240625, -0.868261718749949], + [120.26982421875007, -0.89921875], + [120.42539062500006, -0.96064453125004], + [120.51757812499997, -1.039453125], + [120.60507812500006, -1.258496093749969], + [120.66738281250005, -1.370117187499972], + [120.72861328125012, -1.37148437499998], + [120.79697265625006, -1.36367187499998], + [120.91582031250002, -1.377832031250023], + [121.03369140624997, -1.406542968750017], + [121.14853515625012, -1.33945312500002], + [121.21259765625004, -1.2125], + [121.27685546874997, -1.118164062499972], + [121.4313476562501, -0.938574218749977], + [121.51933593750007, -0.855566406250034], + [121.5755859375, -0.828515625000023], + [121.63271484375, -0.840332031249943], + [121.68115234374997, -0.887890624999955], + [121.73769531250005, -0.925683593750023], + [121.85312500000012, -0.945996093749983], + [121.96962890625005, -0.933300781249969], + [122.09365234375, -0.875], + [122.1380859375, -0.839257812499994], + [122.17490234375006, -0.79375], + [122.27998046875004, -0.757031250000026], + [122.52968750000005, -0.756640624999946], + [122.65878906250012, -0.769824218749974], + [122.88876953125006, -0.755175781250003], + [122.88554687500007, -0.722070312500009], + [122.84111328125007, -0.687011718749972], + [122.8294921875, -0.658886718750026], + [122.8722656250001, -0.640722656249963], + [123.02041015625, -0.599804687499969], + [123.17148437500012, -0.570703125], + [123.28144531250004, -0.591503906249969], + [123.37968750000002, -0.648535156249949], + [123.41738281250005, -0.707421874999966], + [123.43417968750006, -0.778222656249994], + [123.39628906250002, -0.961621093749969], + [123.37792968749997, -1.004101562500011], + [123.29960937500002, -1.02607421875004], + [123.2257812500001, -1.001757812499974], + [123.15273437500005, -0.907031249999946], + [123.04941406250012, -0.872363281249989], + [122.90283203125003, -0.900976562499963], + [122.85253906249997, -0.928125], + [122.80742187500002, -0.966015624999969], + [122.72460937500003, -1.064257812500003], + [122.6556640625, -1.175195312499952], + [122.50664062500002, -1.347851562499955], + [122.3341796875001, -1.49785156249996], + [122.25068359375004, -1.555273437500034], + [122.1576171875, -1.593945312499997], + [121.8585937500001, -1.69326171874998], + [121.77988281250012, -1.766992187499994], + [121.71875, -1.862792968749972], + [121.65097656250006, -1.895410156249952], + [121.57265625, -1.905761718750028], + [121.51386718750004, -1.887792968750006], + [121.3947265625001, -1.833789062500017], + [121.35546874999997, -1.878222656250003], + [121.34882812500004, -1.945996093749955], + [121.40751953125002, -1.970117187499994], + [121.50195312499997, -2.045019531249977], + [121.575, -2.150878906249957], + [121.621875, -2.173632812499974], + [121.7259765625, -2.208007812499957], + [121.7697265625001, -2.240917968749997], + [121.84824218750012, -2.331542968749986], + [121.971875, -2.542382812499952], + [122.01396484375002, -2.656445312500011], + [122.08261718750006, -2.749511718749972], + [122.29169921875004, -2.907617187500023], + [122.30332031250012, -2.952246093749963], + [122.29042968750005, -3.004199218749989], + [122.30654296875005, -3.051562499999946], + [122.38125, -3.142382812499974], + [122.39902343750006, -3.200878906249997], + [122.31728515625, -3.275097656250011], + [122.31279296875007, -3.382714843750009], + [122.26269531249997, -3.527441406250006], + [122.2513671875, -3.576269531250006], + [122.25292968749997, -3.620410156250017], + [122.28808593750003, -3.661621093749986], + [122.32910156250003, -3.694238281249966], + [122.38535156250012, -3.71142578125], + [122.43457031250003, -3.73984375000002], + [122.52919921875, -3.852636718749991], + [122.57861328124997, -3.88232421875], + [122.60996093750012, -3.923437500000034], + [122.60673828125002, -3.984667968749974], + [122.64990234375003, -4.0205078125], + [122.68964843750004, -4.084472656249972], + [122.75039062500005, -4.1], + [122.77880859374997, -4.08164062500002], + [122.79824218750005, -4.054199218750028], + [122.84794921875002, -4.064550781250006], + [122.87734375, -4.109082031250011], + [122.89433593750007, -4.166308593749946], + [122.8998046875, -4.229394531250009], + [122.89736328125005, -4.349121093749972], + [122.8722656250001, -4.391992187500009], + [122.81757812500004, -4.389941406250031], + [122.71972656250003, -4.340722656249952], + [122.71503906250004, -4.376269531250003], + [122.72167968749997, -4.410742187500006], + [122.67187, -4.422167968750031], + [122.61474609375003, -4.417382812500023], + [122.47138671875004, -4.422070312500011], + [122.20712890625012, -4.49638671874996], + [122.11425781250003, -4.540234375000011], + [122.05419921874997, -4.620117187500028], + [122.05, -4.675292968749986], + [122.07324218750003, -4.791699218749997], + [122.03808593749997, -4.832421875000023], + [121.91699218749997, -4.847949218749989], + [121.74804687500003, -4.816699218750017], + [121.64570312500004, -4.78564453125], + [121.58867187500007, -4.759570312500017], + [121.51435546875004, -4.68125], + [121.48652343750004, -4.581054687499972], + [121.5412109375001, -4.282910156249983], + [121.55673828125006, -4.24462890625], + [121.5833984375, -4.210546875], + [121.61152343750004, -4.156347656249963], + [121.61806640625, -4.092675781249952], + [121.53740234375002, -4.01484375], + [121.41582031250002, -3.984277343749994], + [121.3126953125001, -3.919433593750014], + [120.9142578125001, -3.555761718749991], + [120.89179687500004, -3.520605468750034], + [120.89091796875002, -3.460351562500009], + [120.9069335937501, -3.404003906249983], + [121.03789062500002, -3.205175781249977], + [121.05429687500012, -3.167089843749949], + [121.07031249999997, -3.010156249999952], + [121.066796875, -2.880957031250006], + [121.0521484375, -2.751660156249955], + [120.99013671875, -2.6703125], + [120.87939453124997, -2.64560546875002], + [120.76503906250005, -2.641601562500014], + [120.65361328125002, -2.667578124999977], + [120.54394531249997, -2.732617187499983], + [120.34140625000006, -2.869628906250014], + [120.26103515625007, -2.949316406249991], + [120.25410156250004, -3.052832031250034], + [120.3004882812501, -3.154296875000014], + [120.36044921875006, -3.24687], + [120.39238281250007, -3.348144531249972], + [120.43662109375012, -3.70732421874996], + [120.43515625000006, -3.74785156249996], + [120.38300781250004, -3.852343750000017], + [120.3625, -4.08574218749996], + [120.38457031250007, -4.41513671875002], + [120.42011718750004, -4.617382812500011], + [120.40498046875004, -4.727246093750011], + [120.31015625000012, -4.963183593750017], + [120.28144531250004, -5.092675781250023], + [120.27929687499997, -5.146093749999977], + [120.39091796875002, -5.392578125000014], + [120.41660156250012, -5.490039062499974], + [120.4303710937501, -5.591015625000026], + [120.31162109375006, -5.541601562500006], + [120.25644531250006, -5.544140624999983], + [120.20078125000012, -5.55937], + [120.07705078125005, -5.575488281249974], + [119.9515625, -5.577636718749972], + [119.9076171875, -5.596289062499949], + [119.81845703125012, -5.661816406249983], + [119.76445312500002, -5.688281249999946], + [119.71728515625003, -5.693359375000014], + [119.55742187500007, -5.611035156250026], + [119.46308593750004, -5.521679687500026], + [119.3761718750001, -5.424804687500014], + [119.36035156249997, -5.314160156250026], + [119.390625, -5.20058593749998], + [119.43359374999997, -5.079199218750034], + [119.51953124999997, -4.877343750000037], + [119.51552734375005, -4.741894531249969], + [119.54492187499997, -4.630859375], + [119.59404296875007, -4.523144531249997], + [119.61171875, -4.42353515625004], + [119.62363281250006, -4.03437], + [119.61142578125006, -3.99980468749996], + [119.49365234375003, -3.7685546875], + [119.48007812500012, -3.729785156250017], + [119.47929687500002, -3.667382812499994], + [119.49199218750007, -3.607812500000037], + [119.49453125000005, -3.554101562500009], + [119.46748046875004, -3.512988281249989], + [119.41982421875, -3.47539062499996], + [119.36210937500007, -3.458984375], + [119.24003906250007, -3.47529296875004], + [118.99462890624997, -3.537597656250028], + [118.92216796875002, -3.482714843749946], + [118.86767578124997, -3.39804687500002], + [118.83281250000007, -3.28017578124998], + [118.8125, -3.156640624999952], + [118.821875, -3.040625], + [118.85810546875004, -2.928515625000017], + [118.82890625000007, -2.850097656250028], + [118.78369140624997, -2.764746093749963], + [118.78330078125006, -2.720800781249977], + [118.808984375, -2.682324218749955], + [118.85332031250007, -2.650195312499989], + [118.90751953125007, -2.631445312499977], + [118.9582031250001, -2.597460937499989], + [119.09218750000005, -2.482910156250014], + [119.13535156250006, -2.382324218749943], + [119.13818359374997, -2.258496093750026], + [119.172265625, -2.140039062499966], + [119.24082031250012, -2.03095703125004], + [119.32187500000012, -1.929687500000014], + [119.34824218750006, -1.825292968749977], + [119.30830078125004, -1.659667968749986], + [119.32412109375005, -1.584277343749989], + [119.31035156250007, -1.495703124999977], + [119.308984375, -1.408203125], + [119.35917968750007, -1.243457031250003], + [119.508203125, -0.906738281249972], + [119.6535156250001, -0.727929687499966], + [119.71132812500005, -0.680761718750034], + [119.78671875000006, -0.763964843750017], + [119.84433593750006, -0.861914062499991], + [119.84521484374997, -0.77324218749996], + [119.82988281250007, -0.686328125000017], + [119.7716796875001, -0.483593750000011], + [119.721875, -0.088476562499991], + [119.73583984374997, -0.051025390625], + [119.7865234375, -0.056982421874963], + [119.83828125, -0.022119140624966], + [119.865625, 0.040087890625003], + [119.8117187500001, 0.18691406249998], + [119.80927734375004, 0.238671875000051], + [119.9132812500001, 0.445068359375], + [119.99804687500003, 0.520214843750026], + [120.03515624999997, 0.566601562499983], + [120.05644531250002, 0.692529296874966], + [120.10058593749997, 0.74013671874998], + [120.15654296875007, 0.774169921874986], + [120.22978515625007, 0.861230468750051], + [120.26953125000003, 0.970800781249991], + [120.29384765625, 0.979150390625009], + [120.32246093750004, 0.983154296875014], + [120.36650390625002, 0.887548828124991], + [120.41601562500003, 0.848681640624974], + [120.51660156249997, 0.817529296875023], + [120.60253906249997, 0.854394531249994], + [120.62646484374997, 0.902392578125003], + [120.6588867187501, 0.94365234374996], + [120.71103515625006, 0.98666992187502], + [120.75488281250003, 1.035644531250057], + [120.80361328125, 1.14926757812502], + [120.86796875000007, 1.25283203124998], + [120.91210937499997, 1.288964843749966], + [120.96542968750012, 1.311816406250003], + [121.0246093750001, 1.32578125], + [121.0817382812501, 1.327636718750028], + [121.20839843750005, 1.2625], + [121.28173828124997, 1.249804687499989], + [121.35673828125007, 1.25454101562498], + [121.40410156250002, 1.243603515624969], + [121.44003906250006, 1.214404296874974], + [121.47275390625006, 1.155517578125057], + [121.51328125000006, 1.104736328125014], + [121.55068359375, 1.079687499999963], + [121.59179687499997, 1.067968749999977], + [121.8673828125001, 1.088525390624994], + [122.10820312500002, 1.031152343750023], + [122.43662109375006, 1.018066406250028], + [122.54931640625003, 0.98447265625002], + [122.65742187500004, 0.940576171875051], + [122.78984375000002, 0.862890625000034], + [122.83828125, 0.845703125], + [122.89248046875005, 0.85], + [122.96005859375006, 0.922998046875023], + [123.01279296875012, 0.938964843749986], + [123.06650390625006, 0.941796875000037], + [123.278125, 0.928076171874991], + [123.84667968750003, 0.838183593749974], + [123.93076171875006, 0.850439453124977], + [124.27363281250004, 1.022265624999989], + [124.41083984375004, 1.185107421875045], + [124.53369140624997, 1.230468750000043], + [124.57539062500004, 1.30405273437502], + [124.60019531250006, 1.392431640625006], + [124.64375, 1.416162109375037], + [124.74667968750006, 1.441406250000028], + [124.78769531250006, 1.467578125000031], + [124.86064453125002, 1.576025390625006], + [124.94707031250002, 1.672167968749974], + [124.98925781249997, 1.701025390624991], + [125.11093750000012, 1.685693359374966], + [125.16484375000007, 1.64365234375002], + [125.2337890625, 1.502294921875006], + [125.22167968750003, 1.478710937499997], + [125.14091796875007, 1.408398437499969], + [125.11748046875002, 1.37890625], + [125.0280273437501, 1.180224609375017], + [124.96679687499997, 1.082617187500034], + [124.88886718750004, 0.995312500000011] + ] + ], + [ + [ + [101.70810546875006, 2.078417968750045], + [101.76230468750006, 1.996533203124969], + [101.77353515625006, 1.943457031249991], + [101.7340820312501, 1.882568359375028], + [101.71943359375004, 1.789160156250006], + [101.6027343750001, 1.715722656250051], + [101.50078125000002, 1.733203124999974], + [101.46777343750003, 1.75937], + [101.40341796875006, 1.901318359375026], + [101.40966796875003, 2.021679687500026], + [101.45029296875012, 2.067822265625011], + [101.54472656250007, 2.060742187499997], + [101.64072265625012, 2.126708984375028], + [101.70810546875006, 2.078417968750045] + ] + ], + [ + [ + [127.73271484375007, 0.848144531250043], + [127.80537109375004, 0.825927734375057], + [127.8810546875001, 0.832128906249977], + [127.91865234375004, 0.87680664062502], + [127.9291015625, 0.934716796875009], + [127.96728515624997, 1.042578125000048], + [128.05527343750006, 1.115625], + [128.11699218750002, 1.12705078125002], + [128.16074218750006, 1.1578125], + [128.153125, 1.237890625000048], + [128.1574218750001, 1.316601562500011], + [128.22246093750002, 1.400634765624986], + [128.42412109375007, 1.517529296874997], + [128.5392578125001, 1.559228515624966], + [128.68837890625, 1.572558593750017], + [128.70517578125012, 1.527734375000037], + [128.68808593750012, 1.463720703125048], + [128.71689453125012, 1.367285156250034], + [128.70263671874997, 1.106396484374997], + [128.66875, 1.069433593750006], + [128.51455078125, 0.979248046875028], + [128.34599609375002, 0.90712890624998], + [128.29882812500003, 0.87680664062502], + [128.2572265625, 0.80498046874996], + [128.26064453125, 0.733789062500023], + [128.39794921874997, 0.638818359375037], + [128.61123046875, 0.549951171875051], + [128.65527343749997, 0.508251953124997], + [128.68378906250004, 0.438476562499986], + [128.69160156250004, 0.360351562499972], + [128.74326171875006, 0.323242187500043], + [128.81542968750003, 0.305371093750054], + [128.86328125000003, 0.268359374999974], + [128.89960937500004, 0.216259765625011], + [128.54042968750005, 0.337890625000014], + [128.4464843750001, 0.391552734375026], + [128.33281250000002, 0.397949218749986], + [128.22060546875, 0.414257812500026], + [128.10605468750012, 0.460888671875026], + [127.9831054687501, 0.471875], + [127.92441406250006, 0.438085937499991], + [127.90136718749997, 0.372265625], + [127.88740234375004, 0.298339843750043], + [127.91464843750012, 0.206298828125028], + [127.91220703125006, 0.150537109375037], + [127.88896484375002, 0.049511718749969], + [127.97783203125002, -0.24833984374996], + [128.08945312500012, -0.485253906249994], + [128.25351562500012, -0.731640625000011], + [128.33457031250012, -0.816308593750023], + [128.4254882812501, -0.892675781249949], + [128.278125, -0.870019531249952], + [128.23339843750003, -0.787695312499977], + [128.04638671875003, -0.706054687499943], + [128.01083984375006, -0.657324218749963], + [127.88896484375002, -0.42353515625004], + [127.85332031250002, -0.379882812500028], + [127.74082031250012, -0.300390625], + [127.69160156250004, -0.241894531249983], + [127.67480468749997, -0.16289062499996], + [127.68740234375, -0.07993164062502], + [127.6813476562501, 0.034863281250011], + [127.68544921875005, 0.149023437499991], + [127.70869140625004, 0.288085937499986], + [127.6686523437501, 0.336767578124963], + [127.61621093749997, 0.382910156250034], + [127.5553710937501, 0.489648437500023], + [127.53710937500003, 0.610888671875031], + [127.54179687500007, 0.680664062500028], + [127.56699218750006, 0.74252929687502], + [127.60068359375006, 0.796044921875009], + [127.60800781250006, 0.848242187499977], + [127.52041015625, 0.924023437500054], + [127.42851562500002, 1.139990234374991], + [127.4203125, 1.251953124999986], + [127.53710937500003, 1.467480468750011], + [127.53466796874997, 1.572070312500003], + [127.55791015625007, 1.634228515624969], + [127.570703125, 1.700146484374983], + [127.63173828125, 1.843701171875011], + [127.73144531249997, 1.966113281249989], + [127.89990234375003, 2.137353515624966], + [127.9642578125, 2.174707031250037], + [128.03642578125002, 2.199023437500017], + [128.04277343750002, 2.157080078124991], + [128.03125, 2.119873046875057], + [127.90673828124997, 1.945654296874991], + [127.89013671874997, 1.906298828124974], + [127.88681640625012, 1.83295898437504], + [127.9464843750001, 1.789648437500006], + [128.0109375000001, 1.701220703125031], + [128.02373046875002, 1.583496093750028], + [128.02587890625003, 1.458105468749963], + [128.01171874999997, 1.331738281249983], + [127.98769531250005, 1.289599609375017], + [127.88535156250006, 1.162792968750026], + [127.65283203124997, 1.013867187499969], + [127.6330078125001, 0.977197265625051], + [127.63437500000012, 0.936132812500034], + [127.6774414062501, 0.886572265624977], + [127.73271484375007, 0.848144531250043] + ] + ], + [ + [ + [97.3341796875001, 2.075634765625011], + [97.32832031250004, 2.053271484374989], + [97.22509765624997, 2.158496093750017], + [97.10830078125, 2.216894531250006], + [97.15664062500005, 2.232226562500031], + [97.25283203125005, 2.216015625000011], + [97.29140625, 2.200830078125023], + [97.32871093750012, 2.148535156250034], + [97.3341796875001, 2.075634765625011] + ] + ], + [ + [ + [128.45390625000002, 2.051757812500028], + [128.29589843749997, 2.034716796875017], + [128.2599609375001, 2.082519531249986], + [128.2179687500001, 2.297460937499991], + [128.33037109375007, 2.46933593750002], + [128.4720703125, 2.570507812500026], + [128.56865234375002, 2.59609375], + [128.60214843750012, 2.59760742187504], + [128.68847656250003, 2.473681640625017], + [128.62324218750004, 2.224414062500031], + [128.5475585937501, 2.097070312500023], + [128.45390625000002, 2.051757812500028] + ] + ], + [ + [ + [125.4074218750001, 2.651611328125028], + [125.39726562500007, 2.629541015624966], + [125.36005859375004, 2.746826171874972], + [125.3908203125001, 2.805371093749997], + [125.4352539062501, 2.783886718749969], + [125.44648437500004, 2.762988281249974], + [125.40390625000012, 2.707031250000028], + [125.4074218750001, 2.651611328125028] + ] + ], + [ + [ + [96.46367187500002, 2.360009765625037], + [96.40097656250012, 2.350683593750006], + [96.340625, 2.3720703125], + [96.2904296875, 2.429589843749994], + [96.02197265624997, 2.595751953125017], + [95.93847656249997, 2.598437500000031], + [95.87978515625, 2.640917968749974], + [95.80859374999997, 2.655615234375034], + [95.73300781250012, 2.76650390624998], + [95.7171875, 2.825976562500017], + [95.7721679687501, 2.854980468749972], + [95.80625000000012, 2.916015624999972], + [95.89580078125007, 2.8890625], + [95.99785156250007, 2.781396484374994], + [96.10156249999997, 2.741210937499986], + [96.12978515625005, 2.720898437500011], + [96.17998046875002, 2.661328125000054], + [96.41728515625007, 2.515185546875031], + [96.4430664062501, 2.46562], + [96.459375, 2.415820312500031], + [96.46367187500002, 2.360009765625037] + ] + ], + [ + [ + [108.8875, 2.905419921875037], + [108.83886718749997, 2.853027343750028], + [108.7865234375, 2.885644531250009], + [108.86708984375005, 2.991894531249983], + [108.88574218750003, 2.998974609374997], + [108.8875, 2.905419921875037] + ] + ], + [ + [ + [105.76035156250006, 2.863037109375014], + [105.71855468750007, 2.859179687500031], + [105.70615234375012, 2.88886718750004], + [105.70791015625, 2.940087890624994], + [105.70419921875006, 2.980908203125054], + [105.69218750000002, 3.011328125000034], + [105.69218750000002, 3.0625], + [105.73066406250004, 3.03696289062502], + [105.76035156250006, 3.01303710937502], + [105.79453125000006, 2.995947265625006], + [105.82216796875005, 2.984375], + [105.83671875000007, 2.97651367187504], + [105.809375, 2.903955078125009], + [105.76035156250006, 2.863037109375014] + ] + ], + [ + [ + [106.28525390625006, 3.15712890624998], + [106.28369140624997, 3.088232421874977], + [106.21455078125004, 3.128564453125023], + [106.20097656250002, 3.204882812500031], + [106.22373046875012, 3.229589843750006], + [106.27119140625004, 3.216308593750043], + [106.28525390625006, 3.15712890624998] + ] + ], + [ + [ + [117.65839843750004, 3.280517578124986], + [117.64580078125007, 3.247753906249969], + [117.56035156250007, 3.32822265625002], + [117.5375, 3.386376953124966], + [117.54785156250003, 3.43198242187502], + [117.63671874999997, 3.436083984374974], + [117.68085937500004, 3.407519531250017], + [117.65839843750004, 3.280517578124986] + ] + ], + [ + [ + [125.65810546875, 3.436035156250043], + [125.633203125, 3.405419921875023], + [125.51152343750007, 3.461132812500011], + [125.51757812499997, 3.549609375], + [125.5011718750001, 3.593212890625011], + [125.46855468750002, 3.639111328125026], + [125.4552734375001, 3.684179687499977], + [125.46884765625006, 3.73325195312502], + [125.54345703125003, 3.670410156250014], + [125.5856445312501, 3.571093750000031], + [125.64355468749997, 3.47651367187504], + [125.65810546875, 3.436035156250043] + ] + ], + [ + [ + [126.85185546875002, 3.768457031250009], + [126.83554687500006, 3.756933593749963], + [126.79960937500002, 3.78388671875004], + [126.7775390625001, 3.813427734375011], + [126.77890625000006, 3.843164062500037], + [126.80449218750007, 3.857910156250014], + [126.85703125000012, 3.81240234374998], + [126.8578125, 3.787207031250006], + [126.85185546875002, 3.768457031250009] + ] + ], + [ + [ + [126.71933593750012, 3.874658203124966], + [126.72177734375006, 3.83251953125], + [126.66123046875012, 3.928417968749997], + [126.6375, 4.041943359375026], + [126.68554687499997, 4.00141601562504], + [126.7396484375, 3.917724609375043], + [126.71933593750012, 3.874658203124966] + ] + ], + [ + [ + [117.88476562499997, 4.186132812500006], + [117.91787109375, 4.090527343749983], + [117.92285156250003, 4.054296874999977], + [117.73681640624997, 4.004003906250034], + [117.62509765625012, 4.12148437499998], + [117.64902343750012, 4.168994140624974], + [117.74541015625002, 4.166943359375011], + [117.88476562499997, 4.186132812500006] + ] + ], + [ + [ + [108.31601562500006, 3.689648437500026], + [108.17958984375005, 3.653076171875028], + [108.10039062500002, 3.70454101562504], + [108.18613281250006, 3.76796875], + [108.21640625000012, 3.772167968750054], + [108.23613281250002, 3.784570312499994], + [108.24326171875006, 3.810351562500017], + [108.08847656250006, 3.852099609374989], + [108.04453125000006, 3.888964843750045], + [108.00234375, 3.982861328124983], + [108.00351562500006, 4.042578124999977], + [108.20195312500007, 4.200488281250003], + [108.24833984375002, 4.21713867187502], + [108.2555664062501, 4.151757812500023], + [108.39287109375007, 3.986181640625034], + [108.39882812500005, 3.875976562499972], + [108.39355468750003, 3.836181640625028], + [108.31601562500006, 3.689648437500026] + ] + ], + [ + [ + [116.553125, 4.359863281250057], + [116.5890625000001, 4.338427734375031], + [116.63867187499997, 4.339111328125], + [116.69785156250006, 4.354980468750028], + [116.84355468750007, 4.340136718750031], + [117.10058593750003, 4.337060546875023], + [117.2775390625001, 4.299316406249972], + [117.45087890625004, 4.192871093750043], + [117.5373046875001, 4.171386718750028], + [117.5744140625001, 4.17060546875004], + [117.56621093750002, 4.16230468750004], + [117.49746093750005, 4.133398437500006], + [117.46533203124997, 4.076074218749966], + [117.559375, 3.988330078125031], + [117.56601562500006, 3.929931640625043], + [117.63906250000005, 3.877978515625017], + [117.7282226562501, 3.796728515624991], + [117.73173828125002, 3.770263671875014], + [117.76201171875002, 3.733886718749972], + [117.77724609375005, 3.689257812500031], + [117.71445312500012, 3.644824218750045], + [117.62988281250003, 3.636328125], + [117.56738281249997, 3.678271484375017], + [117.50966796875005, 3.730371093749966], + [117.49492187500007, 3.665576171875003], + [117.45039062500004, 3.628515625], + [117.28789062500007, 3.63930664062498], + [117.1715820312501, 3.638964843750003], + [117.05595703125007, 3.622656249999963], + [117.11386718750006, 3.612646484374963], + [117.16640625, 3.591992187500026], + [117.34628906250006, 3.426611328124991], + [117.38466796875, 3.365380859375037], + [117.321875, 3.243554687500009], + [117.35244140625, 3.19375], + [117.42207031250004, 3.165185546875023], + [117.50683593750003, 3.10458984375002], + [117.56718750000002, 3.09848632812502], + [117.61064453125002, 3.064355468749994], + [117.61240234375012, 3.004882812500057], + [117.63789062500004, 2.950830078124966], + [117.56914062500002, 2.92929687500002], + [117.63720703125003, 2.914941406250023], + [117.69765625, 2.887304687499991], + [117.66455078124997, 2.859277343749966], + [117.6388671875001, 2.825292968749963], + [117.66679687500002, 2.80693359374996], + [117.7497070312501, 2.775585937499969], + [117.78593750000002, 2.746777343750054], + [117.80488281250004, 2.6689453125], + [117.88574218750003, 2.541748046875028], + [118.03417968749997, 2.377636718749983], + [118.0666015625001, 2.317822265624969], + [118.06630859375005, 2.262744140625031], + [118.04160156250006, 2.215429687499977], + [117.95703124999997, 2.15996093749996], + [117.88925781250012, 2.08701171875002], + [117.88105468750004, 2.060644531249977], + [117.7892578125001, 2.026855468750014], + [117.83125, 2.002001953125017], + [117.8646484375, 1.968408203125009], + [117.9284179687501, 1.866796875], + [118.08037109375007, 1.701855468749983], + [118.15683593750006, 1.640332031249969], + [118.47167968750003, 1.416455078125011], + [118.63896484375007, 1.318994140625051], + [118.85253906249997, 1.09584960937498], + [118.96347656250012, 1.044287109375034], + [118.98496093750006, 0.982128906249983], + [118.89238281250002, 0.886865234375037], + [118.75742187500006, 0.839208984375006], + [118.53476562500006, 0.813525390625017], + [118.31152343749997, 0.847070312500009], + [118.19609375000002, 0.874365234374977], + [118.09550781250002, 0.929150390625026], + [118.01630859375004, 1.039160156249977], + [117.91162109374997, 1.098681640625017], + [117.95195312500002, 1.031982421875014], + [117.97734375000002, 0.963818359374983], + [117.96425781250005, 0.889550781250051], + [117.92304687500004, 0.831347656250003], + [117.85253906250003, 0.788671875], + [117.77695312500006, 0.754003906249963], + [117.74511718749997, 0.72963867187498], + [117.55332031250006, 0.341015625000026], + [117.52216796875004, 0.235888671875017], + [117.46376953125005, -0.200488281249974], + [117.46289062500003, -0.323730468749957], + [117.54892578125006, -0.554394531249955], + [117.55683593750004, -0.675292968749986], + [117.57382812500006, -0.727539062499972], + [117.5625, -0.770898437500009], + [117.52177734375002, -0.796679687500031], + [117.35712890625004, -0.8671875], + [117.24072265624997, -0.925683593750023], + [117.14648437499997, -1.008984375000026], + [117.07021484375005, -1.112695312500009], + [117.00322265625007, -1.187695312500011], + [116.91396484375, -1.223632812499972], + [116.84941406250002, -1.218261718750028], + [116.7970703125001, -1.183789062500026], + [116.76054687500002, -1.117187499999957], + [116.73984375000006, -1.044238281250017], + [116.72617187500012, -1.098144531249986], + [116.72871093750004, -1.150781249999952], + [116.75927734375003, -1.207128906249977], + [116.77099609375003, -1.266601562500014], + [116.75341796874997, -1.327343749999955], + [116.71523437500005, -1.37578125], + [116.61162109375007, -1.42861328124998], + [116.55449218750007, -1.473925781249974], + [116.5451171875001, -1.553125], + [116.51757812499997, -1.598046875000037], + [116.4779296875, -1.632812500000014], + [116.33212890625006, -1.7125], + [116.29960937500002, -1.744335937499997], + [116.27548828125006, -1.784863281249997], + [116.3532226562501, -1.77861328124996], + [116.42431640625003, -1.784863281249997], + [116.42958984375, -1.86416015624998], + [116.45195312500002, -1.923144531250017], + [116.42353515625004, -2.052539062499989], + [116.31396484374997, -2.139843750000011], + [116.36865234375003, -2.158203125000028], + [116.4181640625001, -2.186718749999969], + [116.528125, -2.207910156250023], + [116.56542968749997, -2.299707031249994], + [116.54921875000005, -2.410839843749983], + [116.52929687499997, -2.51054687499996], + [116.4503906250001, -2.538281250000011], + [116.40126953125, -2.519824218749974], + [116.35253906250003, -2.521582031249977], + [116.31679687500005, -2.55185546875002], + [116.30722656250006, -2.603320312500031], + [116.37548828125003, -2.578027343750023], + [116.37167968750012, -2.706835937499974], + [116.3532226562501, -2.83271484375004], + [116.33066406250012, -2.902148437499974], + [116.28886718750002, -2.958789062499974], + [116.22578125000004, -2.976953125000023], + [116.16630859375002, -2.934570312500014], + [116.15410156250002, -2.983789062499994], + [116.172265625, -3.025292968750023], + [116.2572265625, -3.126367187500009], + [116.20507812500003, -3.148535156249991], + [116.16708984375006, -3.183007812499994], + [116.15, -3.233203125], + [116.05751953125, -3.348242187499991], + [116.01669921875012, -3.4328125], + [115.99941406250005, -3.523339843749966], + [115.95615234375012, -3.595019531250003], + [115.258203125, -3.90683593750002], + [114.6935546875001, -4.169726562500017], + [114.6525390625001, -4.151855468750028], + [114.62529296875002, -4.111718750000023], + [114.60595703125003, -3.70332031250004], + [114.53613281249997, -3.494433593750031], + [114.5255859375001, -3.376660156250011], + [114.44599609375004, -3.481835937500037], + [114.39716796875004, -3.47119140625], + [114.34433593750012, -3.444433593749963], + [114.30458984375, -3.41005859374998], + [114.30166015625, -3.364746093749986], + [114.34433593750012, -3.23515625], + [114.29267578125004, -3.30625], + [114.23632812500003, -3.36113281249996], + [114.17792968750004, -3.354394531250009], + [114.1276367187501, -3.327246093749977], + [114.10898437500012, -3.285156250000028], + [114.0822265625001, -3.27890625], + [113.95878906250007, -3.394335937499974], + [113.79580078125, -3.45625], + [113.70507812499997, -3.45527343750004], + [113.63359375000007, -3.419921874999943], + [113.63730468750012, -3.332031249999986], + [113.63007812500004, -3.246093749999972], + [113.6100585937501, -3.195703125], + [113.56630859375005, -3.177734374999986], + [113.52597656250006, -3.184082031249943], + [113.40898437500007, -3.228906250000023], + [113.36718749999997, -3.223632812500014], + [113.34316406250005, -3.246484374999966], + [113.03398437500002, -2.933496093749966], + [112.97148437500002, -3.187109375000034], + [112.75800781250004, -3.322167968750009], + [112.60029296875004, -3.400488281249977], + [112.44394531250012, -3.371093749999943], + [112.28496093750002, -3.32099609375004], + [112.12666015625004, -3.381445312500006], + [111.95488281250002, -3.5296875], + [111.90742187500004, -3.55253906249996], + [111.85810546875004, -3.551855468750006], + [111.82207031250007, -3.532519531249974], + [111.834375, -3.420117187499983], + [111.83593750000003, -3.307714843750006], + [111.82304687500007, -3.057226562499949], + [111.809375, -3.008007812499955], + [111.76015625000005, -2.939160156249969], + [111.69472656250005, -2.88945312499996], + [111.65830078125006, -2.92578125], + [111.62548828124997, -2.975488281249994], + [111.49492187500002, -2.973339843749997], + [111.367578125, -2.933691406250006], + [111.25917968750005, -2.956445312500023], + [111.04433593750005, -3.055761718750006], + [110.93007812500005, -3.071093750000017], + [110.86875, -3.048730468749994], + [110.82968750000012, -2.9951171875], + [110.85205078124997, -2.94619140624998], + [110.89931640625, -2.908593749999952], + [110.81113281250006, -2.9384765625], + [110.73583984375003, -2.988671875000023], + [110.703125, -3.020898437500009], + [110.6681640625001, -3.004785156250009], + [110.57402343750007, -2.89140625], + [110.37753906250012, -2.933789062500026], + [110.35097656250005, -2.946777343750014], + [110.30253906250002, -2.985351562499957], + [110.25605468750004, -2.966113281249946], + [110.2326171875001, -2.925097656250031], + [110.22431640625004, -2.688671875000011], + [110.12441406250005, -2.233886718749986], + [110.09658203125, -2.001367187499966], + [110.075, -1.946386718749949], + [109.95986328125, -1.862792968749972], + [109.96376953125, -1.742871093749969], + [110.02343749999997, -1.642578124999957], + [110.03613281250003, -1.525683593749946], + [110.01923828125004, -1.398828124999952], + [109.98330078125, -1.274804687499994], + [109.93808593750012, -1.181152343750014], + [109.8734375, -1.101074218749957], + [109.78740234375007, -1.011328124999963], + [109.68173828125012, -0.94423828124998], + [109.45380859375004, -0.86875], + [109.33349609375003, -0.87539062499998], + [109.28886718750002, -0.845800781249991], + [109.25878906250003, -0.807421874999989], + [109.27099609375003, -0.73203125], + [109.31171875000004, -0.68017578125], + [109.36630859375006, -0.66738281249998], + [109.37275390625004, -0.638183593749972], + [109.2570312500001, -0.577441406249946], + [109.160546875, -0.494921875000017], + [109.13027343750005, -0.445410156249963], + [109.12109375000003, -0.39091796874996], + [109.1217773437501, -0.26503906249998], + [109.14960937500004, -0.185546874999957], + [109.16474609375004, -0.14248046874998], + [109.19462890625007, -0.009423828124952], + [109.2575195312501, 0.031152343750051], + [109.24726562500004, 0.055761718750006], + [109.22021484374997, 0.073828125000034], + [109.18076171875012, 0.11748046874996], + [109.14853515625012, 0.167675781249969], + [109.07480468750012, 0.252832031250009], + [108.94453125000004, 0.355664062499997], + [108.92275390625005, 0.53281250000002], + [108.90585937500006, 0.793945312500014], + [108.91679687500007, 0.912646484375045], + [108.95859375000006, 1.134619140624963], + [109.03085937500012, 1.204492187499994], + [109.08847656250012, 1.223925781250045], + [109.1315429687501, 1.253857421875011], + [109.09609375, 1.258154296875006], + [109.06542968749997, 1.247167968749977], + [109.01025390624997, 1.239648437500051], + [109.05546875000007, 1.438476562500057], + [109.07587890625004, 1.495898437500031], + [109.1666992187501, 1.607080078125037], + [109.2731445312501, 1.70546875], + [109.31816406250002, 1.821093750000017], + [109.37851562500006, 1.922705078125034], + [109.62890625000003, 2.027539062499983], + [109.53896484375, 1.89619140625004], + [109.54892578125006, 1.848339843749983], + [109.57080078124997, 1.806298828125023], + [109.63583984375006, 1.776660156250031], + [109.65400390625004, 1.614892578125023], + [109.7357421875, 1.522949218750028], + [109.8180664062501, 1.438964843749972], + [109.87851562500006, 1.397851562500037], + [109.94492187500006, 1.338037109375023], + [109.99169921875003, 1.282568359375006], + [110.04082031250007, 1.235742187499966], + [110.11474609375003, 1.190136718749997], + [110.31523437500002, 0.995996093749966], + [110.39902343750006, 0.9390625], + [110.46142578124997, 0.882080078125028], + [110.50576171875005, 0.861962890625023], + [110.61474609375003, 0.878125], + [110.93808593750006, 1.017333984375057], + [110.99609375000003, 1.026367187500028], + [111.10136718750002, 1.050537109374986], + [111.28671875000006, 1.043212890625], + [111.48320312500002, 0.995751953125009], + [111.54667968750007, 0.994335937499983], + [111.60742187500003, 1.02260742187498], + [111.69130859375005, 1.014208984375045], + [111.76972656250004, 0.999462890624969], + [111.80898437500005, 1.011669921874969], + [111.92314453125002, 1.113281249999972], + [112.078515625, 1.143359374999974], + [112.12861328125004, 1.243603515624969], + [112.16738281250005, 1.33818359374996], + [112.1857421875001, 1.4390625], + [112.25068359375004, 1.479638671875009], + [112.34160156250002, 1.514746093749963], + [112.47617187500006, 1.559082031250028], + [112.94296875000006, 1.566992187500034], + [112.98828124999997, 1.547558593749983], + [112.99804687500003, 1.496240234375009], + [112.98828124999997, 1.457128906250034], + [113.00654296875004, 1.433886718750003], + [113.06865234375002, 1.431787109375023], + [113.12626953125002, 1.408105468749994], + [113.35898437500006, 1.327148437500028], + [113.45820312500004, 1.302148437499994], + [113.51318359374997, 1.308398437500017], + [113.6222656250001, 1.2359375], + [113.68164062500003, 1.260595703124963], + [113.76035156250006, 1.311376953125006], + [113.83525390625002, 1.379882812500014], + [113.90234375000003, 1.434277343749997], + [114, 1.455273437500011], + [114.12597656250003, 1.45234375000004], + [114.27470703125002, 1.470898437499997], + [114.387109375, 1.500048828124989], + [114.5125, 1.452001953124963], + [114.54589843750003, 1.467138671875034], + [114.56748046875006, 1.514160156250014], + [114.63222656250005, 1.61704101562502], + [114.66093750000002, 1.686279296875], + [114.68613281250012, 1.819042968750054], + [114.703515625, 1.850781250000026], + [114.75107421875006, 1.868994140625006], + [114.8, 1.893945312500037], + [114.81269531250004, 1.933789062499983], + [114.83056640625003, 1.980029296874989], + [114.81582031250005, 2.018945312500009], + [114.78798828125, 2.051611328125006], + [114.75869140625005, 2.162402343750017], + [114.76835937500007, 2.212939453125003], + [114.78642578125002, 2.250488281250014], + [114.83632812500005, 2.269384765625048], + [114.969140625, 2.350830078125028], + [115.08652343750006, 2.446142578124991], + [115.15078125, 2.492919921875028], + [115.1791015625, 2.523193359374972], + [115.1808593750001, 2.56689453125], + [115.12988281249997, 2.612402343750034], + [115.08076171875004, 2.63422851562504], + [115.07705078125, 2.687011718750043], + [115.07890625000002, 2.7234375], + [115.09365234375, 2.757812499999986], + [115.08652343750006, 2.79121093750004], + [115.086328125, 2.841113281249989], + [115.117578125, 2.89487304687502], + [115.18994140624997, 2.974462890624977], + [115.24697265625005, 3.025927734374989], + [115.31015625000012, 2.993945312500045], + [115.3841796875, 3.00874023437504], + [115.45439453125002, 3.034326171875009], + [115.49316406250003, 3.128125], + [115.49912109375006, 3.17314453124996], + [115.48974609375003, 3.208642578124994], + [115.51425781250006, 3.342382812499977], + [115.51992187500005, 3.361669921874991], + [115.56611328125004, 3.445751953124983], + [115.570703125, 3.502294921875048], + [115.54453125000006, 3.633691406249994], + [115.56093750000005, 3.73305664062498], + [115.56845703125006, 3.938769531249974], + [115.59609375000005, 3.975537109374997], + [115.62753906250012, 4.081982421875011], + [115.67880859375006, 4.193017578124994], + [115.78242187500004, 4.25375976562502], + [115.83681640625005, 4.333300781249974], + [115.86074218750005, 4.348046875000037], + [115.89619140625004, 4.348681640624989], + [116.02158203125012, 4.290673828124994], + [116.13447265625004, 4.355175781249983], + [116.23623046875005, 4.362548828124972], + [116.32031249999997, 4.35371093750004], + [116.36767578125003, 4.32734375], + [116.41455078124997, 4.308203125], + [116.51474609375006, 4.370800781249969], + [116.553125, 4.359863281250057] + ] + ], + [ + [ + [126.81660156250004, 4.033496093750003], + [126.77626953125, 4.012597656250009], + [126.71123046875007, 4.020263671875057], + [126.70449218750005, 4.070996093749997], + [126.77011718750006, 4.16220703125002], + [126.81357421875006, 4.258496093750011], + [126.76728515625004, 4.28256835937502], + [126.72207031250005, 4.344189453124969], + [126.72050781250002, 4.415820312499989], + [126.75732421874997, 4.547900390624989], + [126.8125, 4.537207031250034], + [126.86513671875, 4.479833984374977], + [126.88671875000003, 4.372509765625054], + [126.9210937500001, 4.291015624999972], + [126.84765624999997, 4.179980468750003], + [126.81660156250004, 4.033496093750003] + ] + ], + [ + [ + [96.49257812500005, 5.229345703124991], + [96.61523437499997, 5.22021484375], + [96.84267578125005, 5.274462890625045], + [96.96777343750003, 5.26914062500002], + [97.08574218750002, 5.229931640625026], + [97.19042968750003, 5.207324218750045], + [97.45117187500003, 5.236035156250026], + [97.50019531250004, 5.22832031249996], + [97.54716796875002, 5.205859375], + [97.5875, 5.170361328124969], + [97.70673828125004, 5.040136718749991], + [97.9083984375001, 4.879980468749963], + [97.96660156250002, 4.777490234375051], + [97.99980468750007, 4.662255859375023], + [98.02070312500004, 4.635205078125011], + [98.2484375, 4.41455078125], + [98.27333984375, 4.322314453125045], + [98.24121093750003, 4.194531250000026], + [98.3073242187501, 4.09287109375002], + [98.52832031249997, 3.997558593750043], + [98.65869140624997, 3.928125], + [98.68652343749997, 3.88554687499996], + [98.7057617187501, 3.834765625000017], + [98.77792968750006, 3.759423828125023], + [98.86865234374997, 3.71035156249998], + [99.15117187500007, 3.58125], + [99.52148437500003, 3.311181640625009], + [99.73232421875005, 3.183056640625026], + [99.90664062500005, 2.988183593750023], + [99.96943359375004, 2.894921875000037], + [100.02128906250002, 2.794238281250031], + [100.12724609375002, 2.647607421875009], + [100.30722656250012, 2.466601562499989], + [100.35273437500004, 2.411474609375034], + [100.40117187500007, 2.331640625000034], + [100.45703124999997, 2.257421875], + [100.523828125, 2.18916015625004], + [100.60361328125012, 2.136962890624986], + [100.68525390625004, 2.120068359374997], + [100.816796875, 1.9892578125], + [100.88789062500004, 1.948242187499986], + [100.87666015625004, 2.050585937499974], + [100.81689453125003, 2.140185546875017], + [100.81777343750005, 2.194238281250009], + [100.82822265625012, 2.242578125], + [100.87705078125012, 2.283300781250034], + [100.93593750000005, 2.294726562499974], + [101.04619140625002, 2.257470703125023], + [101.22519531250006, 2.102246093750011], + [101.30078125000003, 2.011816406249977], + [101.35761718750004, 1.887011718750045], + [101.40507812500007, 1.75742187500002], + [101.47666015625006, 1.693066406250054], + [101.575, 1.670556640624994], + [101.6842773437501, 1.661230468749963], + [101.78476562500012, 1.621386718750017], + [102.019921875, 1.442138671875], + [102.098046875, 1.357910156249986], + [102.15722656249997, 1.258886718749977], + [102.1979492187501, 1.141699218749991], + [102.22333984375004, 1.01870117187498], + [102.23906250000002, 0.990332031249977], + [102.38994140625007, 0.84199218750004], + [102.46923828124997, 0.779296875000057], + [102.56640625000003, 0.748828124999974], + [102.84941406250002, 0.715478515625023], + [102.94931640625006, 0.664208984374966], + [103.03183593750006, 0.57890625], + [103.06650390625012, 0.49199218749996], + [103.0075195312501, 0.415332031249974], + [102.7863281250001, 0.297753906250009], + [102.55, 0.216455078124966], + [102.77958984375002, 0.244482421874991], + [102.8958984375, 0.278613281250017], + [103.00283203125005, 0.331982421875054], + [103.10869140625002, 0.399804687500009], + [103.27656250000004, 0.494531250000037], + [103.33896484375012, 0.513720703125045], + [103.41230468750004, 0.506933593749991], + [103.47890625000005, 0.48017578125004], + [103.57871093750012, 0.387060546874991], + [103.67265625000007, 0.288916015624977], + [103.74277343750006, 0.17441406250002], + [103.78671875000012, 0.046972656249991], + [103.70644531250005, -0.019580078124989], + [103.58945312500006, -0.06875], + [103.42851562500007, -0.19179687499998], + [103.41162109375003, -0.24042968750004], + [103.44443359375012, -0.271679687500011], + [103.40517578125005, -0.36220703124998], + [103.49541015625002, -0.418066406249991], + [103.5091796875, -0.465527343749969], + [103.43115234374997, -0.53359375], + [103.43857421875006, -0.575585937500009], + [103.53271484374997, -0.7546875], + [103.57753906250005, -0.795703125], + [103.72109375, -0.886718749999986], + [103.94003906250012, -0.979101562499977], + [104.06113281250006, -1.02138671874998], + [104.19853515625002, -1.05429687500002], + [104.25751953125004, -1.053417968750011], + [104.36054687500004, -1.038378906249974], + [104.38125, -1.074218749999986], + [104.42568359375, -1.250683593749969], + [104.446875, -1.362402343749991], + [104.47832031250007, -1.600097656250014], + [104.51855468750003, -1.698730468749943], + [104.51591796875002, -1.81943359375002], + [104.56875, -1.921777343749994], + [104.67636718750012, -1.987207031250009], + [104.79101562500003, -2.040820312500003], + [104.84521484375003, -2.092968749999969], + [104.84453125000007, -2.171777343750037], + [104.82607421875005, -2.23417968749996], + [104.78730468750004, -2.282714843749986], + [104.66845703124997, -2.385546874999974], + [104.64726562500002, -2.42988281250004], + [104.6305664062501, -2.54335937499998], + [104.65078125000005, -2.595214843749972], + [104.69833984375006, -2.598144531249943], + [104.73574218750005, -2.570898437499991], + [104.87841796874997, -2.418847656250009], + [104.91699218750003, -2.3921875], + [104.97080078125012, -2.370898437500017], + [105.02587890624997, -2.357519531249949], + [105.28652343750005, -2.35625], + [105.39697265624997, -2.380175781249946], + [105.49531250000004, -2.4296875], + [105.58203124999997, -2.491992187499989], + [105.8991210937501, -2.887792968749977], + [106.0443359375, -3.10625], + [106.05576171875012, -3.160644531249972], + [106.05839843750002, -3.217187500000037], + [106.03369140624997, -3.260937499999969], + [105.90146484375012, -3.41005859374998], + [105.88505859375007, -3.45126953125002], + [105.84375, -3.61367187499998], + [105.85156249999997, -3.730566406249991], + [105.89550781249997, -3.779687499999966], + [105.93046875000007, -3.833007812499986], + [105.92773437500003, -3.881347656249986], + [105.840625, -4.121777343750026], + [105.83144531250005, -4.16289062499996], + [105.88652343750007, -4.55390625000004], + [105.89052734375, -4.65976562500002], + [105.87929687500005, -4.79365234375004], + [105.88720703124997, -5.009570312499974], + [105.81611328125004, -5.6765625], + [105.80273437499997, -5.71640625], + [105.74833984375007, -5.818261718749966], + [105.67656250000002, -5.817578125], + [105.6185546875, -5.799609374999989], + [105.57792968750002, -5.760644531250037], + [105.55556640625, -5.712304687499966], + [105.52265625000004, -5.67275390624998], + [105.34941406250007, -5.549511718750011], + [105.30400390625007, -5.570019531250011], + [105.128125, -5.722851562499983], + [105.08134765625002, -5.74550781249998], + [105.02265625000004, -5.726855468749989], + [104.93027343750006, -5.681152343750014], + [104.63955078125005, -5.520410156250037], + [104.62167968750006, -5.571777343750014], + [104.61816406249997, -5.641503906250009], + [104.6759765625001, -5.816210937499989], + [104.68398437500005, -5.89267578125002], + [104.6310546875001, -5.907910156250026], + [104.60156249999997, -5.90458984374996], + [104.48085937500005, -5.803125], + [104.36953125000005, -5.690722656250003], + [104.24296875000002, -5.538867187499974], + [104.15048828125006, -5.466601562500003], + [104.066796875, -5.3859375], + [103.8314453125, -5.079589843750028], + [103.77031250000007, -5.0328125], + [103.40566406250005, -4.816406249999957], + [103.33212890625006, -4.76523437500002], + [103.23886718750006, -4.67568359374998], + [103.13867187499997, -4.596191406249957], + [102.91894531249997, -4.470703124999972], + [102.53769531250006, -4.152148437499989], + [102.37197265625005, -3.969238281249943], + [102.18769531250004, -3.674511718750026], + [102.12753906250006, -3.599218749999963], + [101.81787109375003, -3.37802734375002], + [101.64902343750012, -3.244042968749994], + [101.57861328124997, -3.166992187500014], + [101.41425781250004, -2.898828125], + [101.36621093750003, -2.808496093749994], + [101.30566406249997, -2.728710937499997], + [101.20625, -2.663964843750037], + [101.11855468750005, -2.587792968749966], + [100.94443359375006, -2.345214843750028], + [100.88955078125, -2.248535156249957], + [100.848046875, -2.143945312499966], + [100.85527343750002, -1.934179687499949], + [100.48652343750004, -1.299121093749974], + [100.3939453125, -1.101269531249997], + [100.30820312500006, -0.82666015625], + [100.28906249999997, -0.798828125000014], + [100.08789062500003, -0.552929687500011], + [100.01669921875006, -0.474218749999963], + [99.93066406249997, -0.400195312499989], + [99.86005859375004, -0.31376953124996], + [99.72128906250012, -0.032958984374957], + [99.66982421875005, 0.045068359375037], + [99.59765624999997, 0.102441406250009], + [99.33457031250012, 0.208593749999963], + [99.23642578125012, 0.267773437500026], + [99.15917968749997, 0.351757812499997], + [99.11171875, 0.458935546874983], + [99.05957031249997, 0.686376953125048], + [98.93554687500003, 1.031933593750011], + [98.79638671874997, 1.494628906250043], + [98.70253906250005, 1.701953125], + [98.59531250000006, 1.864599609375006], + [98.56425781250002, 1.902148437500017], + [98.08652343750006, 2.195068359375], + [98.00507812500004, 2.238183593749994], + [97.91855468750012, 2.264208984374974], + [97.79501953125006, 2.282861328125037], + [97.70078125000006, 2.358544921875009], + [97.66201171875, 2.494287109375037], + [97.64062, 2.676416015625009], + [97.61679687500012, 2.78510742187504], + [97.59082031249997, 2.846582031250037], + [97.3913085937501, 2.975292968749969], + [97.31318359375004, 3.077050781250009], + [97.24794921875, 3.189013671874989], + [97.18837890625005, 3.275732421874991], + [96.9689453125001, 3.575146484374969], + [96.8939453125, 3.65371093749998], + [96.8009765625001, 3.70854492187496], + [96.52539062499997, 3.766601562499986], + [96.44472656250005, 3.81630859374998], + [96.31083984375007, 3.986328124999986], + [96.23007812500012, 4.07275390625], + [95.9879882812501, 4.26328125], + [95.57861328125003, 4.661962890625048], + [95.49472656250006, 4.761376953125051], + [95.43193359375007, 4.865039062500031], + [95.38125, 4.97617187500002], + [95.20664062500006, 5.284033203125034], + [95.22070312500003, 5.346240234375003], + [95.24707031249997, 5.410791015625009], + [95.24296875000002, 5.464306640624997], + [95.22382812500004, 5.51708984375], + [95.22783203125002, 5.564794921875034], + [95.27958984375002, 5.592871093749977], + [95.39609375000012, 5.628808593750023], + [95.51699218750005, 5.624609374999963], + [95.62890625000003, 5.609082031249997], + [95.73730468750003, 5.579296874999969], + [95.84130859374997, 5.514501953125006], + [96.02734375000003, 5.351171875000034], + [96.13330078125003, 5.294287109374991], + [96.25087890625, 5.266992187500023], + [96.49257812500005, 5.229345703124991] + ] + ], + [ + [ + [95.36210937500002, 5.812402343750037], + [95.34257812500007, 5.78413085937504], + [95.28320312500003, 5.798535156250054], + [95.21767578125, 5.88950195312502], + [95.24199218750007, 5.907031250000031], + [95.28251953125007, 5.897753906250017], + [95.35917968750007, 5.876757812500003], + [95.36601562500002, 5.84267578124998], + [95.36210937500002, 5.812402343750037] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "Isle of Man", + "iso_a2": "IM", + "iso_a3": "IMN", + "iso_n3": "833", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-4.412060546874983, 54.185351562499996], + [-4.6142578125, 54.05869140625], + [-4.696093749999989, 54.0814453125], + [-4.765771484374994, 54.06943359375], + [-4.785351562499983, 54.073046875], + [-4.745556640624983, 54.118798828125], + [-4.69873046875, 54.224902343749996], + [-4.614843749999977, 54.266943359375], + [-4.508642578124977, 54.376708984375], + [-4.424707031249994, 54.407177734375], + [-4.395556640624989, 54.4029296875], + [-4.377197265625, 54.392578125], + [-4.337988281249977, 54.269091796874996], + [-4.392285156249983, 54.225390625], + [-4.412060546874983, 54.185351562499996] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "India", + "iso_a2": "IN", + "iso_a3": "IND", + "iso_n3": "356", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [93.8900390625, 6.831054687499986], + [93.82880859375004, 6.748681640624994], + [93.70927734375002, 7.000683593749997], + [93.65800781250007, 7.016064453125026], + [93.65634765625006, 7.136230468749986], + [93.68417968750006, 7.183593750000043], + [93.8224609375001, 7.236621093750017], + [93.85898437500006, 7.206835937499989], + [93.92958984375005, 6.973486328124963], + [93.8900390625, 6.831054687499986] + ] + ], + [ + [ + [93.7335937500001, 7.356494140625017], + [93.63847656250007, 7.261865234375009], + [93.59726562500012, 7.31875], + [93.61425781250003, 7.358105468749983], + [93.6546875, 7.379931640624989], + [93.69248046875006, 7.410595703125026], + [93.7335937500001, 7.356494140625017] + ] + ], + [ + [ + [93.44257812500004, 7.877832031249994], + [93.36503906250007, 7.8765625], + [93.34199218750004, 7.919335937500009], + [93.309375, 7.964013671874966], + [93.33447265624997, 8.006933593750006], + [93.37548828124997, 8.01791992187502], + [93.43369140625012, 7.94838867187498], + [93.44736328125012, 7.899121093749983], + [93.44257812500004, 7.877832031249994] + ] + ], + [ + [ + [93.53691406250007, 8.056640625000014], + [93.49003906250002, 8.01943359374998], + [93.47822265625004, 8.024462890625031], + [93.47177734375012, 8.052685546874997], + [93.46972656249997, 8.07265625], + [93.46123046875002, 8.108593750000026], + [93.45644531250005, 8.171875], + [93.49404296875005, 8.224658203125045], + [93.531640625, 8.213769531250051], + [93.51162109375, 8.159765624999963], + [93.53691406250007, 8.056640625000014] + ] + ], + [ + [ + [73.06738281249997, 8.269091796875031], + [73.05332031250006, 8.256689453124991], + [73.03886718750002, 8.251953125000014], + [73.02851562500004, 8.253515624999977], + [73.02343749999997, 8.265917968750017], + [73.0260742187501, 8.275292968749966], + [73.03896484375005, 8.264843749999969], + [73.05585937500004, 8.274560546874994], + [73.07519531249997, 8.306347656249983], + [73.07949218750005, 8.31650390625002], + [73.08359375, 8.311035156250057], + [73.0797851562501, 8.293066406250034], + [73.06738281249997, 8.269091796875031] + ] + ], + [ + [ + [93.14072265625012, 8.249511718750043], + [93.17060546875004, 8.212060546874966], + [93.11523437499997, 8.218505859375028], + [93.06425781250007, 8.274951171874989], + [93.0775390625, 8.327880859375028], + [93.09697265625007, 8.349365234375043], + [93.14072265625012, 8.249511718750043] + ] + ], + [ + [ + [92.7875, 9.13666992187504], + [92.7435546875, 9.130957031250034], + [92.71660156250002, 9.16508789062496], + [92.71328125000005, 9.204882812499989], + [92.73857421875007, 9.230664062499997], + [92.76210937500005, 9.243896484375028], + [92.78574218750006, 9.240527343749974], + [92.8092773437501, 9.173388671874974], + [92.7875, 9.13666992187504] + ] + ], + [ + [ + [92.50283203125, 10.55488281250004], + [92.47265624999997, 10.520751953125014], + [92.36953125, 10.547412109375031], + [92.37714843750004, 10.650585937499997], + [92.35283203125007, 10.751123046874966], + [92.37070312500006, 10.793505859374989], + [92.44785156250006, 10.865527343750003], + [92.51035156250012, 10.897460937500028], + [92.55400390625002, 10.799804687500028], + [92.57431640625006, 10.704248046875009], + [92.50283203125, 10.55488281250004] + ] + ], + [ + [ + [72.78037109375, 11.202490234374991], + [72.77304687500006, 11.196093750000017], + [72.77246093750003, 11.214257812499994], + [72.78183593750006, 11.243310546875051], + [72.79267578125004, 11.262744140625017], + [72.79589843749997, 11.260449218749983], + [72.79287109375, 11.241552734375048], + [72.78789062500007, 11.215917968749977], + [72.78037109375, 11.202490234374991] + ] + ], + [ + [ + [92.69316406250002, 11.381152343749974], + [92.64453124999997, 11.361328125000028], + [92.59570312499997, 11.386425781249983], + [92.63388671875006, 11.426757812500028], + [92.64023437500012, 11.50913085937502], + [92.69003906250012, 11.463427734375045], + [92.6872070312501, 11.411230468749977], + [92.69316406250002, 11.381152343749974] + ] + ], + [ + [ + [93.01738281250002, 12.036816406249969], + [93.06210937500006, 11.899414062500043], + [92.98173828125002, 11.959472656250028], + [92.95537109375007, 12.002441406249986], + [92.99580078125004, 12.031787109375017], + [93.01738281250002, 12.036816406249969] + ] + ], + [ + [ + [92.71757812500002, 12.864892578125009], + [92.68574218750004, 12.799951171875009], + [92.67968749999997, 12.939257812499974], + [92.69443359375012, 12.956787109374986], + [92.71064453125004, 12.96157226562498], + [92.730859375, 12.948535156249989], + [92.71757812500002, 12.864892578125009] + ] + ], + [ + [ + [92.72275390625012, 11.536083984375011], + [92.70078125000006, 11.512548828125006], + [92.66835937500005, 11.538720703125009], + [92.5755859375, 11.718212890624983], + [92.55966796875012, 11.833447265625011], + [92.5338867187501, 11.873388671874977], + [92.56650390625006, 11.930517578124991], + [92.60751953125012, 11.949511718750031], + [92.63183593749997, 12.013867187499997], + [92.64062, 12.112207031249966], + [92.6764648437501, 12.192382812500043], + [92.6947265625, 12.214697265624977], + [92.7692382812501, 12.215576171874972], + [92.78828125000004, 12.225781250000011], + [92.77763671875002, 12.302539062500017], + [92.73408203125004, 12.335937499999986], + [92.71894531250004, 12.35732421874998], + [92.72070312499997, 12.541259765624972], + [92.73203125000006, 12.615625], + [92.7591796875, 12.669091796874994], + [92.74003906250002, 12.779638671875048], + [92.753125, 12.82089843750002], + [92.80703125000005, 12.878906250000014], + [92.83085937500002, 13.002636718749997], + [92.808984375, 13.039599609374989], + [92.86015625000007, 13.230566406249991], + [92.85732421875, 13.35810546875004], + [92.92460937500002, 13.485839843750028], + [93.02939453125006, 13.543847656250037], + [93.06230468750002, 13.545458984375017], + [93.06669921875002, 13.436474609375011], + [93.07666015625003, 13.400683593750003], + [93.016015625, 13.336181640625014], + [93.07382812500006, 13.252099609375023], + [93.0661132812501, 13.221582031250023], + [93.04296874999997, 13.15488281250002], + [93.00468750000002, 13.08935546875], + [92.95136718750004, 13.0625], + [92.90996093750007, 12.975195312500006], + [92.88623046875003, 12.942285156249966], + [92.9650390625001, 12.850488281250009], + [92.99023437499997, 12.53852539062504], + [92.93261718749997, 12.45307617187504], + [92.86367187500005, 12.436035156250028], + [92.87949218750006, 12.227929687500009], + [92.86718749999997, 12.181445312500031], + [92.79882812499997, 12.079248046874994], + [92.78623046875006, 12.034667968749972], + [92.74765625000006, 11.992773437499963], + [92.76396484375007, 11.940429687500057], + [92.79677734375, 11.917529296875003], + [92.7975585937501, 11.87465820312498], + [92.7669921875, 11.764648437500028], + [92.76464843749997, 11.639160156250043], + [92.72275390625012, 11.536083984375011] + ] + ], + [ + [ + [78.71972656250009, 31.887646484374983], + [78.71708984375013, 31.891015625000136], + [78.6583984375001, 31.96533203125], + [78.71972656250009, 31.887646484374983], + [78.68701171874997, 31.80551757812495], + [78.69345703125006, 31.740380859374994], + [78.75390625000003, 31.66835937500005], + [78.80292968750004, 31.618066406250108], + [78.7550781250001, 31.55029296875], + [78.72675781250015, 31.471826171874994], + [78.75859375000007, 31.436572265625102], + [78.74355468750005, 31.323779296875017], + [78.75781250000009, 31.302490234374943], + [78.79160156250006, 31.293652343750097], + [78.84453125000002, 31.301513671875114], + [78.89951171875018, 31.33134765624996], + [78.9459960937501, 31.337207031250102], + [78.97392578125007, 31.328613281250114], + [79.01113281250011, 31.41411132812496], + [79.04375, 31.426220703125125], + [79.10712890625004, 31.402636718750102], + [79.23261718749993, 31.241748046875017], + [79.33876953125016, 31.105712890625], + [79.36123046875011, 31.086962890625102], + [79.36962890624997, 31.07993164062509], + [79.38847656250013, 31.064208984375085], + [79.49316406250009, 30.993701171875102], + [79.56542968750014, 30.949072265625063], + [79.66425781250004, 30.965234375], + [79.79462890625004, 30.968261718750085], + [79.871875, 30.924609375000074], + [79.91660156250012, 30.89418945312508], + [79.91855468750006, 30.889892578125085], + [79.92451171875004, 30.888769531250034], + [79.92460937500013, 30.888769531250034], + [80.08144531250011, 30.781933593750125], + [80.14941406250009, 30.78984375], + [80.19433593750003, 30.759228515625125], + [80.20712890625006, 30.683740234375023], + [80.18623046875015, 30.605322265625034], + [80.19121093750002, 30.56840820312496], + [80.2609375000001, 30.56132812499996], + [80.40957031250016, 30.50947265625004], + [80.54101562500014, 30.463525390625108], + [80.60888671875009, 30.448876953125136], + [80.68212890625009, 30.41484375], + [80.74677734375004, 30.360400390625045], + [80.87353515625003, 30.290576171875045], + [80.98544921875006, 30.23710937499999], + [81.01025390625014, 30.164501953125097], + [80.96611328125002, 30.180029296875063], + [80.90761718750005, 30.171923828125017], + [80.84814453125009, 30.139746093750034], + [80.81992187500012, 30.119335937499955], + [80.68408203125014, 29.994335937500068], + [80.61289062500018, 29.955859375000045], + [80.54902343750015, 29.899804687499994], + [80.40185546875003, 29.730273437500102], + [80.31689453125014, 29.572070312500017], + [80.25488281250009, 29.423339843750114], + [80.25595703125006, 29.318017578125136], + [80.23300781250006, 29.194628906250045], + [80.16953125000012, 29.124316406250102], + [80.13046875000006, 29.100390625000045], + [80.08457031249995, 28.994189453125074], + [80.05166015625, 28.870312500000068], + [80.07070312500005, 28.830175781250063], + [80.14960937500015, 28.77607421875004], + [80.22656250000003, 28.723339843750125], + [80.32480468750012, 28.66640625000008], + [80.41855468749995, 28.61201171875001], + [80.47910156250012, 28.604882812499994], + [80.49580078125015, 28.635791015625074], + [80.51787109375002, 28.665185546875023], + [80.58701171875006, 28.64960937500004], + [80.67128906250011, 28.59624023437499], + [80.72617187500018, 28.553906250000068], + [80.75078125000007, 28.539697265625023], + [80.89609375000018, 28.468554687500102], + [81.01660156250003, 28.409570312499994], + [81.16894531250014, 28.335009765625074], + [81.20625, 28.289404296875006], + [81.23896484375004, 28.24086914062508], + [81.31083984375002, 28.17636718750009], + [81.4860351562501, 28.062207031250097], + [81.6355468749999, 27.98046874999997], + [81.75722656250011, 27.913818359375057], + [81.85263671875018, 27.867089843750136], + [81.89687500000011, 27.87446289062504], + [81.94521484375005, 27.89926757812495], + [81.98769531250016, 27.91376953125004], + [82.03701171875, 27.90058593750004], + [82.11191406250006, 27.86494140625004], + [82.28769531250018, 27.756542968749983], + [82.45136718750004, 27.671826171874955], + [82.62988281249997, 27.687060546875045], + [82.67734375000006, 27.67343749999995], + [82.71083984375005, 27.596679687500114], + [82.73339843750003, 27.518994140625097], + [82.93281250000015, 27.467675781250108], + [83.06406250000006, 27.44453125000001], + [83.21386718750003, 27.402294921875125], + [83.28974609375004, 27.370996093750136], + [83.36943359375002, 27.410253906249977], + [83.38398437500004, 27.444824218750085], + [83.44716796875011, 27.46533203125], + [83.55166015625011, 27.456347656249932], + [83.74697265625011, 27.395947265625068], + [83.8288085937501, 27.377832031250108], + [83.89716796875015, 27.435107421875045], + [84.02480468750005, 27.46166992187497], + [84.09101562499993, 27.491357421875136], + [84.22978515625007, 27.427832031250006], + [84.48085937500005, 27.348193359375102], + [84.61015625000002, 27.298681640624977], + [84.64072265625012, 27.249853515624977], + [84.65478515625014, 27.20366210937499], + [84.65380859375009, 27.09169921875008], + [84.68535156250013, 27.041015625000057], + [84.9372070312501, 26.92690429687508], + [85.02011718750012, 26.878515625], + [85.08730468750011, 26.862939453125023], + [85.125390625, 26.860986328124966], + [85.1515625000001, 26.846630859375068], + [85.17412109375007, 26.78154296874996], + [85.19179687500011, 26.766552734375097], + [85.24023437500003, 26.750341796875006], + [85.29296875000009, 26.741015625000045], + [85.45644531250011, 26.79721679687495], + [85.56845703125012, 26.839843750000114], + [85.64843749999997, 26.829003906250023], + [85.69990234375004, 26.781640624999966], + [85.70742187500016, 26.712646484374943], + [85.73730468750003, 26.639746093750034], + [85.79453125000006, 26.60415039062505], + [85.85566406250015, 26.60019531249995], + [86.00732421875009, 26.64936523437504], + [86.12939453125009, 26.61171875], + [86.24160156250011, 26.597998046875034], + [86.36611328125, 26.57441406250004], + [86.41445312500016, 26.55629882812508], + [86.54365234375015, 26.49599609375005], + [86.70136718750015, 26.435058593750057], + [86.7625, 26.441943359375045], + [87.01640625000002, 26.555419921875085], + [87.03789062500013, 26.54160156249992], + [87.08955078124993, 26.433203125000034], + [87.16679687500013, 26.394238281250097], + [87.2874023437499, 26.360302734375125], + [87.41357421875014, 26.42294921875009], + [87.51308593750016, 26.404980468749983], + [87.63339843750006, 26.39912109375004], + [87.74882812500002, 26.42929687499995], + [87.84921875000006, 26.43691406250008], + [87.99511718750014, 26.38237304687499], + [88.02695312500023, 26.395019531250085], + [88.05488281250004, 26.43002929687492], + [88.11152343750004, 26.58642578125], + [88.1615234375, 26.724804687500125], + [88.15722656250009, 26.807324218750068], + [88.1110351562501, 26.928466796875057], + [87.99316406250009, 27.086083984374994], + [87.98437, 27.133935546874994], + [88.02412109375015, 27.40888671875004], + [88.06787109375003, 27.5673828125], + [88.10556640625006, 27.642431640625006], + [88.14697265625014, 27.749218750000097], + [88.15429687500003, 27.798681640625063], + [88.15029296875011, 27.843310546875074], + [88.10976562500005, 27.87060546874997], + [88.09892578125013, 27.904541015625114], + [88.10898437499995, 27.93300781250005], + [88.14111328125003, 27.948925781250097], + [88.27519531250013, 27.96884765625009], + [88.42597656250015, 28.011669921875097], + [88.48613281250013, 28.03447265624996], + [88.53164062500016, 28.057373046875], + [88.57792968750002, 28.093359375000034], + [88.62109375000009, 28.091845703125102], + [88.75625000000011, 28.039697265625136], + [88.80371093750003, 28.006933593750034], + [88.82861328125009, 27.90727539062496], + [88.84882812500004, 27.868652343750085], + [88.82988281250002, 27.767382812500074], + [88.74902343749997, 27.521875000000136], + [88.7648437500001, 27.429882812500068], + [88.83251953125003, 27.362841796875074], + [88.89140625000002, 27.316064453125136], + [88.88164062500007, 27.29746093750009], + [88.76035156250006, 27.21811523437509], + [88.73876953125009, 27.175585937499932], + [88.76562, 27.13422851562504], + [88.81357421875006, 27.099023437499966], + [88.83515624999993, 27.06557617187508], + [88.85761718750015, 26.961474609375017], + [88.9191406250001, 26.93222656250009], + [89.04091796875011, 26.865039062500102], + [89.14824218750002, 26.816162109375085], + [89.33212890625018, 26.848632812500114], + [89.38417968750011, 26.82656250000008], + [89.47460937500009, 26.803417968749983], + [89.54511718750004, 26.79624023437492], + [89.58613281250004, 26.778955078125136], + [89.60917968750013, 26.762207031250114], + [89.60615234375004, 26.74111328125008], + [89.60996093750012, 26.719433593750097], + [89.71093750000009, 26.713916015625045], + [89.76386718750004, 26.7015625], + [89.94316406250013, 26.723925781249932], + [90.12294921875011, 26.754589843749983], + [90.20605468749997, 26.847509765625063], + [90.24238281250015, 26.854150390624994], + [90.34589843750004, 26.890332031250097], + [90.44765625, 26.85078125000004], + [90.55986328125002, 26.79658203125001], + [90.6203125000001, 26.78022460937504], + [90.73964843750005, 26.771679687500068], + [90.85576171875007, 26.77773437500008], + [91.13388671875006, 26.803417968749983], + [91.2865234375, 26.78994140625008], + [91.42675781249997, 26.867089843749966], + [91.45585937500013, 26.866894531250125], + [91.51757812500009, 26.807324218750068], + [91.67158203124993, 26.80200195312503], + [91.75371093750007, 26.83076171875004], + [91.84208984375013, 26.852978515625125], + [91.8986328125001, 26.860058593749955], + [91.94375, 26.860839843750114], + [91.99833984375013, 26.85498046875], + [92.04970703125016, 26.87485351562495], + [92.07343750000015, 26.914843750000102], + [92.0681640624999, 26.975195312499977], + [92.03085937500023, 27.040820312500017], + [91.99863281249995, 27.07929687500004], + [91.99228515625018, 27.09990234374999], + [92.00253906250012, 27.14736328125005], + [92.03115234375, 27.21430664062501], + [92.0833984375, 27.290625], + [92.04492187499997, 27.364697265625097], + [91.99082031249995, 27.450195312500114], + [91.95097656250002, 27.45830078124999], + [91.85126953125004, 27.43862304687505], + [91.74306640625011, 27.442529296875136], + [91.65810546875011, 27.493603515625068], + [91.59472656250009, 27.55766601562499], + [91.57929687500004, 27.61142578125009], + [91.59765624999997, 27.677001953124943], + [91.62587890625011, 27.73730468749997], + [91.63193359375012, 27.759960937499983], + [91.71259765625004, 27.75981445312496], + [91.82470703125014, 27.746435546875063], + [91.90937500000015, 27.72968750000004], + [91.97763671875018, 27.730371093749994], + [92.10126953125015, 27.807617187500085], + [92.15761718750011, 27.81225585937497], + [92.22226562500012, 27.82695312499996], + [92.25048828125003, 27.841503906250068], + [92.27011718750012, 27.83022460937508], + [92.34101562500015, 27.820751953125097], + [92.41484375000002, 27.824609375], + [92.48066406250021, 27.845947265625085], + [92.54667968750013, 27.879199218750102], + [92.66435546875013, 27.948925781250097], + [92.68779296875002, 27.988964843750097], + [92.6875, 28.02573242187495], + [92.66562500000023, 28.049853515625074], + [92.64345703125011, 28.061523437499943], + [92.65253906250004, 28.093359375000034], + [92.70185546875004, 28.147119140624994], + [92.88183593750003, 28.22812], + [93.03496093750013, 28.32763671875], + [93.11923828125006, 28.402294921875097], + [93.15781250000012, 28.492724609375045], + [93.20654296875009, 28.59082031249997], + [93.25195312500009, 28.629492187500034], + [93.36054687500004, 28.654052734375057], + [93.66494140625005, 28.69023437499996], + [93.76074218750003, 28.729785156250017], + [93.90224609375, 28.803222656250057], + [93.97363281249997, 28.860791015625068], + [94.01328125000006, 28.90751953124999], + [94.01767578125006, 28.959521484375102], + [94.1115234375001, 28.975878906250074], + [94.19345703125006, 29.05991210937495], + [94.29326171875013, 29.144628906249977], + [94.46806640625007, 29.216210937499994], + [94.62304687500003, 29.31240234375005], + [94.67705078125002, 29.297021484375136], + [94.73339843750014, 29.251611328125108], + [94.76308593750011, 29.201269531249977], + [94.76943359375016, 29.17587890624995], + [94.96748046874993, 29.144042968750057], + [94.99882812500002, 29.14916992187503], + [95.1447265625001, 29.104052734375074], + [95.27910156250002, 29.04956054687497], + [95.353125, 29.03588867187503], + [95.38925781250006, 29.03740234374999], + [95.42021484375007, 29.054296875000063], + [95.45654296875003, 29.102294921875057], + [95.49375000000012, 29.137011718750045], + [95.51699218750005, 29.151171875000074], + [95.51582031250015, 29.20634765624996], + [95.71035156250011, 29.313818359375006], + [95.88505859375007, 29.390917968750074], + [96.03535156250015, 29.447167968749994], + [96.07958984375009, 29.424121093750074], + [96.12851562500012, 29.381396484375074], + [96.19472656250011, 29.272460937500085], + [96.23496093750006, 29.245800781249983], + [96.33720703125002, 29.260986328125057], + [96.355859375, 29.24907226562496], + [96.33974609375016, 29.20981445312495], + [96.27050781250009, 29.161230468750006], + [96.18085937500004, 29.11767578125], + [96.12236328125002, 29.082080078125045], + [96.14140625000007, 28.963476562500034], + [96.13710937500011, 28.922607421875057], + [96.16220703125006, 28.909716796875102], + [96.34687, 29.02744140625009], + [96.43574218750021, 29.050683593750023], + [96.4670898437499, 29.022265625000102], + [96.47714843750012, 28.959326171875063], + [96.55, 28.829589843750114], + [96.58085937500007, 28.763671875], + [96.39560546875018, 28.606542968749977], + [96.32734375000004, 28.525390624999943], + [96.32988281250002, 28.496826171875], + [96.32617187499997, 28.468554687500102], + [96.27890625000023, 28.42817382812504], + [96.28144531249993, 28.412060546875125], + [96.31982421875003, 28.386523437500074], + [96.3664062500001, 28.367285156250063], + [96.3890625, 28.36791992187503], + [96.42773437500014, 28.40600585937497], + [96.60263671875006, 28.459912109375125], + [96.65283203125003, 28.44975585937499], + [96.77578125000011, 28.367041015625034], + [96.83300781250014, 28.362402343749977], + [96.98085937500005, 28.337695312500074], + [97.07539062500004, 28.368945312500045], + [97.14511718750012, 28.340332031250085], + [97.28945312500005, 28.23681640624997], + [97.32246093750015, 28.21796875000004], + [97.31025390625015, 28.15522460937504], + [97.30273437499997, 28.08598632812496], + [97.33916015625002, 28.03085937500009], + [97.34355468750002, 27.982324218749994], + [97.3351562500001, 27.93774414062497], + [97.30615234374997, 27.90708007812492], + [97.22607421875009, 27.890039062500023], + [97.15781250000023, 27.83686523437501], + [97.04970703125005, 27.760009765625], + [96.96279296875, 27.698291015625017], + [96.89970703125002, 27.64384765624996], + [96.87685546875016, 27.586718750000045], + [96.88359375000013, 27.514843750000125], + [96.90195312500012, 27.43959960937508], + [97.10371093749993, 27.163330078125114], + [97.10205078125003, 27.115429687500125], + [97.03808593750014, 27.102050781250057], + [96.95341796875013, 27.13330078125003], + [96.88027343750016, 27.177832031250034], + [96.79785156249997, 27.29619140624999], + [96.7316406250001, 27.331494140625097], + [96.66572265625015, 27.33925781250008], + [96.27421875000013, 27.278369140625102], + [96.19082031250005, 27.26127929687499], + [96.06142578125011, 27.217089843750045], + [95.97089843750015, 27.128076171875023], + [95.90527343750014, 27.04663085937497], + [95.83730468750011, 27.013818359375023], + [95.73837890624995, 26.950439453125085], + [95.46386718750009, 26.756054687500097], + [95.30507812500005, 26.67226562500008], + [95.20146484375007, 26.641406250000017], + [95.12871093750002, 26.597265625000063], + [95.08945312500018, 26.525488281250006], + [95.05976562500015, 26.473974609375006], + [95.05087890625006, 26.34726562499995], + [95.06894531250006, 26.191113281250097], + [95.10839843750014, 26.091406250000034], + [95.12929687500011, 26.070410156250034], + [95.13242187500006, 26.041259765624943], + [95.09296875000021, 25.98730468749997], + [95.04072265624993, 25.941308593750023], + [95.01523437500006, 25.91293945312492], + [94.99199218750002, 25.77045898437504], + [94.94570312500005, 25.700244140624932], + [94.86113281250002, 25.597216796875074], + [94.78583984375015, 25.519335937500017], + [94.66777343750007, 25.458886718749966], + [94.62285156250013, 25.41000976562495], + [94.57988281250002, 25.319824218750057], + [94.55439453125004, 25.24345703124996], + [94.55302734375013, 25.215722656249994], + [94.56650390624995, 25.191503906250034], + [94.61562500000011, 25.164599609375045], + [94.67529296875003, 25.13857421875008], + [94.70371093750012, 25.097851562499955], + [94.70761718750018, 25.04873046875008], + [94.66328125000004, 24.931005859375063], + [94.58408203125006, 24.767236328125108], + [94.49316406250003, 24.637646484374983], + [94.39941406250009, 24.51406250000005], + [94.37724609375002, 24.473730468750006], + [94.29306640625012, 24.32187], + [94.21972656250009, 24.11318359375008], + [94.17031250000016, 23.972656250000057], + [94.12763671875015, 23.87646484375], + [94.07480468750006, 23.8720703125], + [94.01083984375018, 23.902929687500063], + [93.85546875000014, 23.943896484375045], + [93.75585937500009, 23.976904296875034], + [93.68339843750007, 24.00654296875004], + [93.63330078125009, 24.00537109374997], + [93.56406250000012, 23.986083984374943], + [93.49375000000018, 23.972851562500097], + [93.45214843750003, 23.987402343750034], + [93.35556640625006, 24.074121093750108], + [93.32626953125006, 24.064208984375057], + [93.30732421874993, 24.021875000000136], + [93.37255859375009, 23.774169921875114], + [93.41494140625011, 23.68208007812501], + [93.40810546875011, 23.528027343750068], + [93.3913085937501, 23.33916015624996], + [93.36601562500007, 23.132519531249955], + [93.34941406250007, 23.08496093750003], + [93.30800781250016, 23.03037109374992], + [93.25351562500006, 23.01547851562509], + [93.20390625000002, 23.03701171875005], + [93.16416015625018, 23.032031250000102], + [93.15097656250006, 22.997314453124943], + [93.16250000000011, 22.90795898437503], + [93.11425781250014, 22.80571289062499], + [93.07871093750018, 22.718212890625097], + [93.08818359375013, 22.63325195312504], + [93.10507812500023, 22.547119140625057], + [93.16201171875, 22.360205078125006], + [93.16240234375019, 22.291894531250108], + [93.15117187500002, 22.23061523437508], + [93.12148437500016, 22.205175781250034], + [93.07060546875002, 22.20942382812501], + [93.04296875000009, 22.183984375], + [93.02197265625014, 22.14570312500001], + [92.96455078125015, 22.003759765625034], + [92.90947265625013, 21.988916015625023], + [92.85429687500002, 22.010156250000108], + [92.77138671875, 22.104785156250017], + [92.72099609375013, 22.13242187499995], + [92.68896484375009, 22.130957031250006], + [92.67470703125011, 22.106005859375074], + [92.65263671875007, 22.049316406250085], + [92.63037109375014, 22.011328124999977], + [92.57490234374993, 21.97807617187496], + [92.5612304687501, 22.04804687500001], + [92.53183593750012, 22.41030273437508], + [92.50957031250002, 22.52568359374996], + [92.49140625000004, 22.685400390625006], + [92.46445312500006, 22.734423828125045], + [92.43046875000007, 22.821826171875074], + [92.39316406250012, 22.897021484374932], + [92.36162109375002, 22.929003906250074], + [92.34121093750011, 23.06982421874997], + [92.33378906250002, 23.242382812499955], + [92.33417968750021, 23.323828125000034], + [92.28935546875002, 23.492480468750102], + [92.24609375000003, 23.68359374999997], + [92.18710937500006, 23.675537109375085], + [92.15234375000009, 23.721875000000125], + [92.12705078125006, 23.720996093749932], + [92.04404296875006, 23.677783203125017], + [91.97851562500003, 23.691992187500063], + [91.92958984375011, 23.685986328125097], + [91.92949218750019, 23.598242187499977], + [91.93789062500011, 23.504687500000102], + [91.91914062500021, 23.471044921875006], + [91.79003906250009, 23.361035156249983], + [91.75419921875013, 23.28730468750004], + [91.75791015625018, 23.209814453125063], + [91.773828125, 23.10610351562508], + [91.75097656250003, 23.053515625000017], + [91.69492187500006, 23.004833984375068], + [91.61953125, 22.979687500000097], + [91.55351562500013, 22.991552734375006], + [91.51123046875003, 23.033691406250085], + [91.4713867187501, 23.141259765625136], + [91.43623046875004, 23.19990234375001], + [91.39941406250009, 23.2138671875], + [91.37060546875009, 23.19799804687497], + [91.36679687500012, 23.130468750000063], + [91.36865234375014, 23.074560546875063], + [91.359375, 23.06835937500003], + [91.33886718750009, 23.077001953125006], + [91.31523437500007, 23.10439453125008], + [91.25380859375016, 23.373632812500063], + [91.16552734375014, 23.58105468750003], + [91.16044921875019, 23.660644531250085], + [91.19248046875012, 23.762890625000125], + [91.23203125000018, 23.920458984375074], + [91.33642578125014, 24.01879882812503], + [91.35019531250012, 24.06049804687501], + [91.36708984375016, 24.09350585937497], + [91.39267578124995, 24.100097656250085], + [91.52636718750009, 24.090771484374955], + [91.57138671874995, 24.106591796874994], + [91.61113281250013, 24.15283203125], + [91.66875000000013, 24.190087890625108], + [91.72656250000003, 24.20507812499997], + [91.77246093750014, 24.21064453125004], + [91.84619140624997, 24.175292968749943], + [91.87695312500014, 24.195312500000114], + [91.89902343750018, 24.260693359375125], + [91.93105468750011, 24.325537109375006], + [91.95166015624997, 24.35673828124996], + [92.00107421875018, 24.370898437500017], + [92.06416015625004, 24.374365234375006], + [92.08505859375006, 24.386181640625097], + [92.10195312500011, 24.40805664062495], + [92.11748046875002, 24.493945312500017], + [92.19804687500019, 24.68574218750001], + [92.22666015625012, 24.77099609374997], + [92.23056640624995, 24.786230468750063], + [92.22832031250002, 24.881347656250085], + [92.2512695312499, 24.895068359375045], + [92.38496093750004, 24.848779296875023], + [92.44316406250002, 24.84941406249996], + [92.47500000000011, 24.86850585937495], + [92.48544921875012, 24.903320312500114], + [92.46835937500018, 24.944140625000074], + [92.37343750000011, 25.01513671874997], + [92.20468750000012, 25.11093749999995], + [92.04970703125016, 25.16948242187499], + [91.76347656250002, 25.16064453124997], + [91.47968750000021, 25.142138671875102], + [91.39667968750015, 25.151611328125085], + [91.29316406249993, 25.177978515625114], + [91.03828125000015, 25.17407226562503], + [90.7301757812501, 25.159472656250074], + [90.61308593750002, 25.16772460937497], + [90.55527343750006, 25.16660156249992], + [90.43935546875016, 25.157714843750085], + [90.25039062500005, 25.184960937500108], + [90.11962890625003, 25.21997070312497], + [90.00380859375, 25.25834960937496], + [89.86630859375012, 25.293164062499955], + [89.83330078125013, 25.292773437500045], + [89.81406250000006, 25.305371093749955], + [89.80087890625012, 25.33613281250001], + [89.7962890625, 25.37583007812492], + [89.82490234375004, 25.56015625], + [89.79960937500002, 25.839599609375085], + [89.82294921875015, 25.94140625000003], + [89.70986328125005, 26.171240234374977], + [89.67089843750009, 26.213818359375125], + [89.61904296875011, 26.21567382812495], + [89.58574218750019, 26.18603515624997], + [89.57275390625003, 26.13232421875003], + [89.59140625000006, 26.07241210937508], + [89.54990234375006, 26.00527343750008], + [89.46689453125012, 25.983544921875108], + [89.36972656250023, 26.006103515625085], + [89.28925781250015, 26.037597656250085], + [89.18642578125016, 26.10595703125], + [89.10830078125005, 26.202246093750063], + [89.10195312500011, 26.308349609375], + [89.06679687500011, 26.376904296875125], + [89.01865234375012, 26.410253906249977], + [88.98339843750003, 26.41953125], + [88.95195312500002, 26.412109375], + [88.92412109375002, 26.37509765624992], + [88.94824218750014, 26.337988281250006], + [88.98154296875018, 26.286132812500114], + [88.97041015625004, 26.250878906250023], + [88.94072265625002, 26.24536132812497], + [88.89648437500009, 26.26049804687503], + [88.82802734375016, 26.252197265625114], + [88.76191406249993, 26.279394531249977], + [88.72216796875009, 26.28183593749995], + [88.68281250000004, 26.291699218749983], + [88.68066406250009, 26.35297851562504], + [88.62011718750009, 26.430664062500057], + [88.51826171875004, 26.51777343750004], + [88.41816406250015, 26.57153320312497], + [88.36992187500002, 26.56411132812508], + [88.34589843750015, 26.50478515625005], + [88.35146484375005, 26.482568359374966], + [88.38623046875003, 26.471533203125034], + [88.43671874999993, 26.43710937499995], + [88.44785156250006, 26.40102539062505], + [88.44042968749997, 26.369482421875034], + [88.37802734375006, 26.312011718750057], + [88.33398437499997, 26.257519531249955], + [88.2351562499999, 26.17807617187495], + [88.15078125000005, 26.087158203125057], + [88.12900390624995, 26.01821289062505], + [88.09736328125015, 25.956347656250074], + [88.08457031249995, 25.888232421875045], + [88.1066406250001, 25.841113281250045], + [88.14746093749997, 25.811425781250023], + [88.25292968749997, 25.789794921875057], + [88.36308593750013, 25.69819335937504], + [88.45234375000021, 25.574414062500068], + [88.50244140625009, 25.53701171875008], + [88.59345703125015, 25.495312500000097], + [88.76914062500006, 25.490478515625], + [88.79541015625009, 25.45625], + [88.82031250000003, 25.36552734374996], + [88.85478515625002, 25.333544921875017], + [88.94414062500002, 25.290771484375], + [88.95166015625014, 25.25927734374997], + [88.92978515625012, 25.222998046875063], + [88.89013671875003, 25.194384765625074], + [88.81728515625011, 25.176220703125125], + [88.74755859375009, 25.168945312500057], + [88.67753906250007, 25.180468750000102], + [88.57382812500006, 25.187890625], + [88.45625, 25.188427734375125], + [88.37294921875016, 24.961523437500063], + [88.31337890625011, 24.8818359375], + [88.27949218750015, 24.881933593750034], + [88.18886718750016, 24.920605468750097], + [88.14980468750011, 24.91464843749995], + [88.04511718750015, 24.71303710937508], + [88.03027343750009, 24.664453125000136], + [88.02343750000003, 24.627832031250136], + [88.07910156250009, 24.549902343750063], + [88.14550781250003, 24.485791015624955], + [88.225, 24.460644531249983], + [88.28710937500009, 24.47973632812497], + [88.3375, 24.45385742187503], + [88.39697265625009, 24.389257812500006], + [88.49853515625003, 24.34663085937504], + [88.64228515625015, 24.325976562500102], + [88.72353515625011, 24.27490234375], + [88.7335937500001, 24.230908203125097], + [88.72656250000009, 24.18623046875004], + [88.71376953125016, 24.069628906250102], + [88.69980468750006, 24.00253906249992], + [88.62255859374997, 23.826367187500097], + [88.56738281250009, 23.674414062500034], + [88.59599609375013, 23.60219726562508], + [88.61640625000004, 23.572753906250114], + [88.63574218749997, 23.55], + [88.69765625, 23.493017578125034], + [88.74082031250006, 23.43662109375009], + [88.70400390625011, 23.29282226562492], + [88.72441406250002, 23.254980468750034], + [88.80761718750009, 23.22968750000004], + [88.89707031250018, 23.21040039062501], + [88.92812500000011, 23.186621093749977], + [88.85058593750014, 23.040527343750057], + [88.86699218750002, 22.938867187500108], + [88.89970703125002, 22.843505859375057], + [88.92343750000006, 22.687548828125074], + [88.92695312500004, 22.671142578125114], + [88.92070312500002, 22.632031249999955], + [88.97148437500007, 22.510937499999983], + [89.05, 22.274609374999983], + [89.05585937500004, 22.186230468750097], + [89.05146484375004, 22.093164062500136], + [89.02792968750023, 21.937207031249983], + [88.94931640625018, 21.937939453125125], + [89.01962890625012, 21.833642578125023], + [89.04199218749997, 21.758691406250023], + [89.05166015625, 21.654101562500045], + [88.96708984375007, 21.641357421875114], + [88.90742187500015, 21.653076171875], + [88.85751953125012, 21.744677734375017], + [88.834375, 21.661376953125085], + [88.74501953125011, 21.584375], + [88.71298828125018, 21.62197265625005], + [88.69472656250011, 21.66240234374996], + [88.6912109374999, 21.733496093750034], + [88.74023437500003, 22.005419921875017], + [88.73027343750013, 22.03608398437504], + [88.70830078125002, 22.056152343750057], + [88.65957031250011, 22.066943359374932], + [88.64160156250003, 22.121972656250136], + [88.56679687500005, 21.832128906250063], + [88.59980468750004, 21.713769531250108], + [88.58466796875015, 21.659716796874932], + [88.44599609375004, 21.614257812500085], + [88.30546875000002, 21.723339843750097], + [88.28750000000016, 21.758203125000108], + [88.27919921875, 21.696875], + [88.25371093750002, 21.622314453124943], + [88.12207031249997, 21.635791015625045], + [88.0568359375001, 21.694140625000017], + [88.09941406250007, 21.793554687500034], + [88.18105468750016, 22.032910156250125], + [88.19628906249997, 22.139550781249994], + [88.08710937500004, 22.217724609375097], + [87.99443359375013, 22.265673828125102], + [87.94140625000003, 22.374316406250045], + [87.96162109375004, 22.25502929687508], + [88.01074218750009, 22.21264648437497], + [88.08300781250009, 22.18271484375009], + [88.15927734375018, 22.12172851562508], + [88.10410156250012, 22.04736328125003], + [88.05078125000009, 22.001074218750034], + [87.94843749999993, 21.825439453124943], + [87.82373046875003, 21.727343750000045], + [87.67822265625003, 21.653515625000097], + [87.20068359375009, 21.544873046874983], + [87.10068359375006, 21.500781250000074], + [86.95410156250014, 21.365332031250006], + [86.85957031250004, 21.23671875000008], + [86.84228515625009, 21.106347656249994], + [86.89580078125013, 20.965576171875085], + [86.93935546875016, 20.745068359375125], + [86.97548828125005, 20.70014648437501], + [86.92451171875015, 20.619775390624994], + [86.83593750000003, 20.534326171874994], + [86.7625, 20.419140624999983], + [86.76923828125004, 20.355908203125068], + [86.75039062500011, 20.313232421875057], + [86.4987304687501, 20.171630859375], + [86.44580078125014, 20.088916015625017], + [86.37656250000006, 20.006738281249966], + [86.29365234375004, 20.05375976562496], + [86.24521484375012, 20.05302734374999], + [86.31191406250005, 19.98779296875003], + [86.30292968750015, 19.94467773437495], + [86.27949218750021, 19.919433593749943], + [86.2162109375, 19.895800781249932], + [85.85292968750016, 19.791748046875057], + [85.575, 19.69291992187499], + [85.496875, 19.696923828125108], + [85.51113281250016, 19.726904296874977], + [85.5597656250001, 19.753466796875074], + [85.55507812500005, 19.866894531250097], + [85.50410156250004, 19.887695312500057], + [85.45996093750003, 19.895898437500136], + [85.24863281250006, 19.757666015625034], + [85.16279296875004, 19.620898437500074], + [85.18076171875018, 19.59487304687508], + [85.22851562500014, 19.60131835937497], + [85.3708984374999, 19.678906249999983], + [85.43691406250011, 19.656884765625108], + [85.44160156249993, 19.626562499999977], + [85.22558593749997, 19.508349609375045], + [84.77099609375009, 19.125390625000023], + [84.74980468750013, 19.05009765624996], + [84.69082031250011, 18.96469726562495], + [84.609375, 18.884326171875102], + [84.46279296875, 18.689746093750074], + [84.18173828125023, 18.400585937499955], + [84.10410156250018, 18.29267578125001], + [83.65429687499997, 18.069873046875102], + [83.57226562500003, 18.003613281250097], + [83.38798828125013, 17.78666992187496], + [83.19833984375006, 17.608984374999977], + [82.97685546875007, 17.461816406250023], + [82.59316406250005, 17.273925781250114], + [82.35957031250004, 17.09619140624997], + [82.28652343750011, 16.978076171875074], + [82.28193359375004, 16.936083984375045], + [82.30722656250006, 16.87856445312505], + [82.35, 16.8251953125], + [82.35976562500011, 16.782812500000063], + [82.33867187500007, 16.70654296875], + [82.32714843750003, 16.664355468750102], + [82.25878906250014, 16.55986328124996], + [82.14150390625005, 16.485351562500057], + [81.76191406250015, 16.32949218750008], + [81.71171875000007, 16.33447265625003], + [81.40185546875009, 16.365234375000085], + [81.28613281249997, 16.337060546875023], + [81.23857421875013, 16.263964843750074], + [81.13212890625002, 15.961767578124949], + [81.03007812500002, 15.881445312499949], + [80.99345703125002, 15.808740234375051], + [80.97871093750004, 15.758349609375074], + [80.91777343750013, 15.759667968749994], + [80.86474609375009, 15.782226562499972], + [80.82597656250002, 15.765917968750017], + [80.78183593750006, 15.86733398437508], + [80.7078124999999, 15.888085937500051], + [80.64658203125006, 15.895019531250028], + [80.38486328125012, 15.792773437499989], + [80.29345703125014, 15.710742187499989], + [80.10107421875003, 15.32363281249998], + [80.0534179687501, 15.074023437499932], + [80.09863281249997, 14.798242187500065], + [80.16542968750016, 14.577832031250097], + [80.17871093750003, 14.478320312500074], + [80.17011718750004, 14.349414062500102], + [80.13623046875009, 14.286572265625097], + [80.11171875000005, 14.212207031250045], + [80.14365234375018, 14.058935546875077], + [80.22441406250002, 13.858203125000045], + [80.24414062500003, 13.773486328125017], + [80.24580078124993, 13.685839843750102], + [80.30654296875016, 13.485058593750054], + [80.26562500000014, 13.521289062499974], + [80.23339843750009, 13.605761718749946], + [80.15625, 13.713769531250108], + [80.06210937500006, 13.60625], + [80.11425781249997, 13.528710937500065], + [80.29033203125002, 13.436718749999969], + [80.34238281250006, 13.361328125000071], + [80.22910156250018, 12.690332031249966], + [80.14306640624997, 12.452001953125091], + [80.0375, 12.295800781250065], + [79.98173828125007, 12.23544921875002], + [79.85849609375018, 11.988769531250043], + [79.77138671875011, 11.690234374999974], + [79.75410156250004, 11.575292968750006], + [79.79335937500005, 11.446679687500094], + [79.74892578125005, 11.370605468750043], + [79.69316406250007, 11.312548828124946], + [79.79902343750004, 11.338671874999932], + [79.83525390625007, 11.268847656250102], + [79.84863281250009, 11.196875], + [79.85019531250006, 10.768847656250017], + [79.83818359375002, 10.322558593750045], + [79.75693359375006, 10.304345703125065], + [79.66738281250011, 10.299707031250009], + [79.58857421875004, 10.31235351562492], + [79.53164062500011, 10.329638671875074], + [79.39052734375005, 10.305957031250045], + [79.31455078125018, 10.256689453124949], + [79.25361328125004, 10.174804687499972], + [79.25781250000003, 10.035205078124946], + [78.99628906249993, 9.683105468749986], + [78.93994140625009, 9.565771484375063], + [78.9191406250001, 9.452880859374972], + [78.953125, 9.393798828125014], + [79.01992187500005, 9.333349609374963], + [79.10703125000018, 9.308935546874963], + [79.27548828125006, 9.284619140624983], + [79.35634765625011, 9.25214843750011], + [79.41142578125002, 9.192382812500014], + [79.21289062500009, 9.256005859375009], + [78.97958984375018, 9.268554687500085], + [78.42148437500006, 9.105029296874989], + [78.27451171875006, 8.99018554687504], + [78.19248046874995, 8.890869140625057], + [78.13603515625007, 8.663378906250074], + [78.1263671875, 8.511328125], + [78.06015625000006, 8.384570312499932], + [77.77031250000002, 8.189843750000051], + [77.58720703125002, 8.1298828125001], + [77.51757812500003, 8.078320312500068], + [77.30146484375004, 8.145312500000045], + [77.06591796875003, 8.315917968749986], + [76.96689453125012, 8.407275390624946], + [76.61728515625012, 8.847070312500009], + [76.5534179687501, 8.902783203124997], + [76.48291015625009, 9.090771484375097], + [76.47177734375006, 9.160839843749983], + [76.4523437500001, 9.188769531249989], + [76.41904296875006, 9.2078125], + [76.403125, 9.236816406250014], + [76.32460937500016, 9.452099609374997], + [76.29238281250011, 9.676464843750054], + [76.24238281250004, 9.927099609374949], + [76.28466796875003, 9.909863281249997], + [76.34306640625002, 9.827343750000054], + [76.37226562500004, 9.707373046874949], + [76.37558593750006, 9.539892578124935], + [76.41953125000006, 9.520458984375068], + [76.45878906250013, 9.536230468750077], + [76.34648437500002, 9.922119140625], + [76.24873046875015, 10.01796875], + [76.22275390625023, 10.024267578125034], + [76.19560546875002, 10.086132812500026], + [76.19267578125013, 10.163769531250026], + [76.20146484375013, 10.200634765625082], + [76.12333984375002, 10.327001953125063], + [76.09609375000016, 10.402246093750122], + [75.92255859375015, 10.784082031250108], + [75.84462890625, 11.05756835937504], + [75.72382812500015, 11.361767578125026], + [75.64609375000006, 11.46840820312508], + [75.52451171875006, 11.703125000000114], + [75.42265625000002, 11.812207031250125], + [75.31464843750004, 11.958447265625082], + [75.22978515625007, 12.02333984374998], + [75.1966796875, 12.057519531250009], + [74.94550781250004, 12.56455078124992], + [74.86826171875012, 12.844580078124949], + [74.80292968750015, 12.976855468750074], + [74.77050781250009, 13.077343750000125], + [74.6823242187501, 13.506933593750063], + [74.68164062500014, 13.583740234375085], + [74.67089843749997, 13.667626953125122], + [74.60849609375006, 13.849658203125074], + [74.49853515625014, 14.046337890624997], + [74.46669921875005, 14.168847656250094], + [74.4669921875001, 14.216503906250026], + [74.3971679687501, 14.407421875000026], + [74.38222656250005, 14.494726562500048], + [74.33505859374995, 14.575439453124972], + [74.28037109375006, 14.649511718749963], + [74.22304687500011, 14.70888671874998], + [74.08876953125011, 14.90219726562492], + [74.04062500000012, 14.949365234375122], + [73.94921875000014, 15.074755859375088], + [73.88427734375003, 15.306445312500031], + [73.80078125000009, 15.39697265625], + [73.93193359375013, 15.39697265625], + [73.85195312500005, 15.482470703125017], + [73.8138671875, 15.538574218750085], + [73.77177734375013, 15.573046874999989], + [73.83281250000013, 15.65937], + [73.7328125, 15.65693359375004], + [73.67988281250015, 15.708886718750136], + [73.60771484375019, 15.871093749999972], + [73.47607421875003, 16.05424804687496], + [73.45371093750006, 16.152099609375], + [73.33759765625004, 16.459863281249994], + [73.23916015625005, 17.198535156250045], + [73.1490234375, 17.527441406250063], + [73.15605468750019, 17.62192382812495], + [73.04716796875013, 17.906738281250085], + [72.99394531250019, 18.097705078125074], + [72.97207031250011, 18.259277343749943], + [72.94316406250013, 18.365625000000136], + [72.91718749999993, 18.57612304687501], + [72.87548828124997, 18.642822265625114], + [72.87089843750019, 18.683056640624955], + [72.89873046875019, 18.778955078125136], + [72.97685546875002, 18.927197265624955], + [73.0055664062501, 19.02109375000009], + [72.97207031250011, 19.15332031250003], + [72.90068359375013, 19.014501953124977], + [72.8346679687501, 18.975585937500057], + [72.80302734375013, 19.07929687500004], + [72.80273437500014, 19.21875], + [72.79453125000006, 19.25209960937508], + [72.81162109375, 19.298925781250006], + [72.98720703125, 19.27744140625009], + [72.78789062500013, 19.362988281250097], + [72.76396484375007, 19.413183593750034], + [72.75644531250012, 19.450537109375006], + [72.7994140625, 19.519824218750074], + [72.72656250000009, 19.57827148437508], + [72.69746093749993, 19.757128906250102], + [72.6759765625001, 19.797949218750063], + [72.66777343750019, 19.83095703125005], + [72.70898437499997, 20.078027343750108], + [72.88115234375013, 20.56318359375001], + [72.89375, 20.672753906250136], + [72.87890625000003, 20.82851562500005], + [72.84052734375004, 20.95249023437509], + [72.82431640625012, 21.083593749999977], + [72.81386718750011, 21.117187500000085], + [72.75156249999995, 21.12915039062503], + [72.69238281249997, 21.177636718750136], + [72.62382812500002, 21.371972656250108], + [72.68652343750009, 21.435742187499955], + [72.73476562500016, 21.470800781250006], + [72.66835937500011, 21.455908203124977], + [72.61328125000009, 21.461816406250108], + [72.71757812500013, 21.551269531250057], + [72.81054687500014, 21.61992187499999], + [73.02246093750014, 21.69960937500008], + [73.1125, 21.750439453125125], + [72.9791015625, 21.704687500000034], + [72.83974609375005, 21.68725585937503], + [72.54306640625, 21.69658203124999], + [72.59248046875004, 21.87758789062508], + [72.64404296875014, 21.93798828124997], + [72.70019531250003, 21.971923828124943], + [72.61748046875007, 21.96171874999999], + [72.52226562500013, 21.976220703125108], + [72.55302734375007, 22.159960937500074], + [72.62792968749997, 22.199609374999966], + [72.70878906250019, 22.20717773437508], + [72.80917968749995, 22.23330078125008], + [72.70195312500013, 22.26362304687504], + [72.59013671875019, 22.27812], + [72.45595703125011, 22.248095703125074], + [72.33261718750012, 22.270214843749955], + [72.18281250000015, 22.26972656250004], + [72.242578125, 22.245166015625017], + [72.30644531250002, 22.18920898437497], + [72.27441406250009, 22.089746093749966], + [72.2443359375001, 22.027636718750102], + [72.16171875000012, 21.984814453125097], + [72.0944335937501, 21.919970703125017], + [72.07558593750016, 21.862988281249955], + [72.03720703125006, 21.82304687499999], + [72.10292968750005, 21.79458007812505], + [72.17089843750003, 21.774316406250023], + [72.2103515625, 21.72822265625004], + [72.25664062500002, 21.661230468750063], + [72.25400390625006, 21.531005859375], + [72.07656250000016, 21.22407226562501], + [72.01523437500012, 21.155712890625097], + [71.57109375000007, 20.970556640625034], + [71.39648437500003, 20.869775390625108], + [71.0246093750001, 20.73886718750009], + [70.87968750000007, 20.714501953125108], + [70.71933593750006, 20.740429687500068], + [70.48505859375004, 20.84018554687495], + [70.12734375, 21.094677734375097], + [70.03437500000015, 21.178808593750006], + [69.74843750000016, 21.505712890625006], + [69.54199218750003, 21.678564453125034], + [69.3854492187501, 21.839550781249983], + [69.19169921875007, 21.991503906250017], + [69.00878906250009, 22.196777343750114], + [68.96992187500021, 22.29028320312497], + [68.98349609375012, 22.385400390624994], + [69.05166015625016, 22.437304687500074], + [69.13134765625003, 22.416259765625057], + [69.19423828125005, 22.33608398437505], + [69.23886718750006, 22.300195312500023], + [69.27656250000004, 22.285498046875063], + [69.54921875, 22.40839843750004], + [69.65517578125016, 22.403515625000125], + [69.72753906250009, 22.465185546875063], + [69.81904296875015, 22.451757812500006], + [70.00585937500003, 22.547705078125006], + [70.08417968750015, 22.55351562499996], + [70.17724609375014, 22.57275390624997], + [70.32773437500006, 22.81577148437509], + [70.44042968750009, 22.97031249999995], + [70.51347656250007, 23.002490234374932], + [70.50937500000012, 23.040136718749977], + [70.48925781250009, 23.08950195312508], + [70.43457031250014, 23.07709960937504], + [70.39628906250019, 23.030126953125063], + [70.36796875000007, 22.973486328125063], + [70.33945312500012, 22.939746093749932], + [70.2511718750001, 22.970898437500068], + [70.19169921875007, 22.965673828125063], + [70.11826171875, 22.947021484375], + [69.84980468750004, 22.85644531250003], + [69.73964843750016, 22.77519531249999], + [69.66464843750006, 22.759082031250074], + [69.23593749999995, 22.848535156250023], + [68.81708984375004, 23.053710937500057], + [68.64072265625006, 23.189941406250114], + [68.52919921875011, 23.364062500000045], + [68.41748046875009, 23.57148437500004], + [68.45380859374993, 23.62949218749995], + [68.62714843750015, 23.754150390624943], + [68.7767578125, 23.852099609375017], + [68.64238281250007, 23.808496093749994], + [68.496875, 23.747998046875125], + [68.42490234375, 23.70556640625], + [68.34335937500006, 23.61684570312505], + [68.23496093749995, 23.596972656250074], + [68.19199218750006, 23.728906250000136], + [68.16503906250009, 23.857324218749994], + [68.23417968750013, 23.900537109375108], + [68.28251953125013, 23.927978515625], + [68.38125000000016, 23.950878906250068], + [68.48867187500011, 23.96723632812501], + [68.5866210937501, 23.966601562500074], + [68.72412109375003, 23.964697265625034], + [68.72812500000012, 24.265625], + [68.73964843750016, 24.291992187500085], + [68.75898437499993, 24.307226562500006], + [68.78115234375011, 24.313720703125085], + [68.8, 24.30908203125003], + [68.82832031250004, 24.26401367187509], + [68.86347656250015, 24.26650390625005], + [68.90078125000011, 24.29243164062501], + [68.98457031250015, 24.273095703124966], + [69.05156250000013, 24.28632812500001], + [69.11953125000011, 24.26865234374995], + [69.23505859374993, 24.268261718750068], + [69.44345703124995, 24.275390625000085], + [69.55917968750006, 24.273095703124966], + [69.63417968750016, 24.225195312499977], + [69.71621093750016, 24.172607421875114], + [69.80517578125009, 24.16523437500004], + [69.9337890625001, 24.17138671875003], + [70.02109375000012, 24.19155273437505], + [70.06513671874993, 24.24057617187492], + [70.0982421875, 24.2875], + [70.28906250000009, 24.356298828125063], + [70.48925781250009, 24.412158203125074], + [70.54677734375, 24.418310546875063], + [70.56503906250006, 24.385791015625017], + [70.55585937500015, 24.331103515625074], + [70.57929687500015, 24.279052734374943], + [70.65947265625013, 24.24609374999997], + [70.71630859375009, 24.237988281250097], + [70.7672851562501, 24.245410156250017], + [70.80507812500011, 24.26196289062503], + [70.88623046875014, 24.34375], + [70.92812500000016, 24.362353515625045], + [70.98281250000011, 24.361035156250125], + [71.04404296875006, 24.400097656250097], + [71.04531250000005, 24.42998046874996], + [71.00625, 24.444335937500057], + [70.97324218750012, 24.48740234374995], + [70.97929687500002, 24.52246093749997], + [70.96982421875012, 24.571875], + [70.97636718750013, 24.61875], + [71.00234375000016, 24.65390625], + [71.04785156250003, 24.687744140625085], + [71.02070312500021, 24.75766601562492], + [70.95087890625015, 24.89160156250003], + [70.87773437500019, 25.06298828124997], + [70.8004882812501, 25.205859374999932], + [70.70253906250005, 25.33105468750003], + [70.65205078125004, 25.422900390625102], + [70.65722656250003, 25.625781250000045], + [70.64843750000003, 25.666943359375068], + [70.61484375000012, 25.69189453125], + [70.5695312500001, 25.705957031250023], + [70.50585937500009, 25.685302734375085], + [70.44853515625013, 25.681347656249983], + [70.32519531249997, 25.68574218750001], + [70.26464843750009, 25.70654296874997], + [70.10019531250006, 25.91005859375005], + [70.07861328125009, 25.99003906249999], + [70.07773437500012, 26.071972656249983], + [70.13261718750002, 26.214794921874955], + [70.14921875000002, 26.347558593749994], + [70.15683593750006, 26.47143554687503], + [70.14765625000004, 26.506445312500034], + [70.11464843750016, 26.548046874999983], + [70.059375, 26.578759765625023], + [69.91142578125013, 26.586132812500125], + [69.73593750000012, 26.62705078124992], + [69.60058593749997, 26.69912109375005], + [69.50693359375, 26.74267578125003], + [69.48125, 26.770996093750114], + [69.47001953125002, 26.804443359375], + [69.49453125000011, 26.95415039062496], + [69.53701171875, 27.12294921875005], + [69.56796875, 27.174609375000102], + [69.62158203125009, 27.22807617187499], + [69.66132812500015, 27.26450195312495], + [69.72480468750015, 27.312695312499983], + [69.89628906250007, 27.473632812500085], + [70.04980468750009, 27.694726562500023], + [70.14453125000003, 27.849023437499994], + [70.19394531250006, 27.89487304687492], + [70.24433593750004, 27.934130859375102], + [70.31845703125012, 27.98164062500001], + [70.4037109375, 28.025048828124994], + [70.48857421875013, 28.023144531250125], + [70.56923828125005, 27.983789062500108], + [70.62910156250015, 27.937451171875068], + [70.64912109375015, 27.83535156250005], + [70.6916015625001, 27.76899414062504], + [70.73740234374995, 27.729003906250057], + [70.79794921875012, 27.709619140625023], + [70.87490234375016, 27.71445312499995], + [71.18476562500004, 27.831640625], + [71.29013671875, 27.855273437500045], + [71.54296875000003, 27.869873046875], + [71.71669921875005, 27.91508789062496], + [71.8703125000001, 27.9625], + [71.88886718750004, 28.04746093749992], + [71.94804687500002, 28.177294921875102], + [72.12851562500012, 28.34633789062508], + [72.17919921875014, 28.421777343749994], + [72.23388671875009, 28.565820312500023], + [72.29199218750003, 28.69726562499997], + [72.34189453125006, 28.751904296875097], + [72.62558593750012, 28.896142578124994], + [72.90332031250003, 29.02875976562501], + [72.94873046874997, 29.088818359374983], + [73.12832031250005, 29.36391601562508], + [73.23115234375004, 29.55063476562509], + [73.25781250000014, 29.61069335937509], + [73.31728515625016, 29.772998046875102], + [73.38164062500013, 29.93437], + [73.46748046875004, 29.971679687500085], + [73.65800781250013, 30.033203125], + [73.8091796875, 30.093359375], + [73.88652343750013, 30.162011718750136], + [73.93339843750002, 30.222070312500108], + [73.92460937500007, 30.281640625], + [73.88271484375, 30.352148437499977], + [73.89160156250009, 30.39404296874997], + [73.89931640625, 30.435351562500045], + [74.00898437500004, 30.519677734374994], + [74.21562500000013, 30.768994140624983], + [74.33935546875003, 30.893554687499943], + [74.38037109375003, 30.89340820312509], + [74.50976562500009, 30.959667968750097], + [74.63281250000014, 31.034667968750114], + [74.62578125000002, 31.068750000000108], + [74.61035156250009, 31.112841796875045], + [74.53974609375015, 31.132666015625006], + [74.51767578125012, 31.185595703124932], + [74.53496093750007, 31.261376953125108], + [74.59394531249993, 31.465380859375102], + [74.58183593750013, 31.523925781250114], + [74.50996093750015, 31.712939453125074], + [74.52597656249995, 31.765136718750057], + [74.55556640625011, 31.818554687500097], + [74.63574218750003, 31.889746093750034], + [74.73945312500015, 31.948828125], + [75.07148437500015, 32.08935546875003], + [75.13876953125, 32.10478515624999], + [75.25410156250004, 32.140332031250125], + [75.32470703125003, 32.2152832031251], + [75.33349609374997, 32.279199218749994], + [75.30263671875016, 32.318896484375074], + [75.23369140625013, 32.372119140625074], + [75.10410156249995, 32.420361328124955], + [74.98730468749997, 32.46220703124996], + [74.78886718750013, 32.4578125], + [74.6857421875001, 32.493798828124994], + [74.65781250000006, 32.518945312499966], + [74.64335937500013, 32.60771484374993], + [74.66328125000004, 32.75766601562495], + [74.63242187499995, 32.770898437500136], + [74.58828125000011, 32.7532226562501], + [74.48339843749997, 32.77099609375], + [74.35458984375012, 32.76870117187505], + [74.30546875000007, 32.81044921875002], + [74.32998046875, 32.86083984375], + [74.32275390625003, 32.927978515625], + [74.30361328125005, 32.991796875000034], + [74.28359375000005, 33.005126953125085], + [74.22207031250011, 33.02031249999999], + [74.12626953125013, 33.07543945312503], + [74.04912109375007, 33.143408203125006], + [74.00380859375005, 33.18945312499997], + [73.98984375000006, 33.22119140625006], + [73.99423828125006, 33.24218750000006], + [74.05039062500012, 33.30126953125003], + [74.1177734375, 33.384130859375034], + [74.14257812500009, 33.45537109374996], + [74.15, 33.506982421874994], + [74.13125, 33.545068359375136], + [74.06972656250016, 33.59169921875002], + [74.00400390625012, 33.63242187499998], + [73.97753906250003, 33.66782226562509], + [73.97646484375016, 33.72128906249998], + [74.00097656250003, 33.78818359375009], + [74.07841796875013, 33.838671875000074], + [74.21562500000013, 33.88657226562506], + [74.25087890625011, 33.9460937500001], + [74.24648437500011, 33.99018554687504], + [74.20898437500009, 34.00341796875006], + [74.11259765625019, 34.00371093749996], + [73.9499023437501, 34.018798828125], + [73.92236328125009, 34.04306640624998], + [73.90410156250019, 34.07568359375006], + [73.90390625000012, 34.10800781250006], + [73.93828125000013, 34.144775390625085], + [73.97949218750009, 34.191308593749966], + [73.97236328125004, 34.23662109374996], + [73.92460937500007, 34.287841796875114], + [73.80996093750016, 34.32534179687511], + [73.79453125000006, 34.378222656250045], + [73.81210937500006, 34.42236328124997], + [73.85009765625003, 34.48530273437501], + [73.88310546875013, 34.52905273437503], + [73.96123046875007, 34.653466796874994], + [74.05585937500015, 34.68066406250003], + [74.17197265624995, 34.72089843750004], + [74.30039062500006, 34.76538085937506], + [74.49794921875011, 34.73203125], + [74.59414062500005, 34.71577148437507], + [74.7887695312501, 34.67773437499994], + [74.9518554687501, 34.645849609375034], + [75.11845703125013, 34.63681640624998], + [75.18750000000014, 34.63901367187506], + [75.26406250000011, 34.60136718750002], + [75.45253906250016, 34.53671875], + [75.60556640625006, 34.50273437500002], + [75.70917968750004, 34.50307617187508], + [75.86210937500002, 34.56025390625001], + [75.93828125000019, 34.612548828125], + [76.04101562500014, 34.66992187499997], + [76.17246093750006, 34.66772460937506], + [76.4567382812501, 34.756103515625114], + [76.5099609375001, 34.74086914062502], + [76.5944335937501, 34.73583984375006], + [76.69628906249997, 34.78691406249999], + [76.74902343750014, 34.84755859375008], + [76.7575195312501, 34.87783203125005], + [76.7829101562501, 34.90019531249999], + [76.89169921875006, 34.938720703125], + [77.00087890625011, 34.99199218750002], + [77.03066406250011, 35.06235351562498], + [77.04863281250007, 35.109912109375074], + [77.16855468750006, 35.17153320312502], + [77.29296875000009, 35.2355468750001], + [77.42343749999995, 35.30258789062506], + [77.57158203125002, 35.37875976562495], + [77.69697265625015, 35.443261718750136], + [77.79941406250006, 35.49589843750002], + [77.81093750000011, 35.484521484374994], + [77.85156250000003, 35.46079101562498], + [77.89492187500016, 35.449023437500045], + [77.94589843750006, 35.47163085937504], + [78.00947265625004, 35.490234375000114], + [78.0426757812501, 35.4797851562501], + [78.04746093750006, 35.449414062500125], + [78.00917968750016, 35.306933593750074], + [78.01220703125009, 35.251025390625045], + [78.07578125000006, 35.13491210937502], + [78.15849609375002, 34.94648437499998], + [78.23613281250007, 34.769824218750074], + [78.28203125000019, 34.65390625000006], + [78.32695312500007, 34.60639648437498], + [78.51572265625018, 34.55795898437506], + [78.67080078125016, 34.51816406249995], + [78.76308593750011, 34.45292968749999], + [78.86484375000006, 34.39033203125001], + [78.93642578125, 34.35195312500002], + [78.97011718750011, 34.30263671875011], + [78.97695312500016, 34.258105468750074], + [78.97060546875011, 34.22822265625004], + [78.93173828125018, 34.18896484375003], + [78.75302734375018, 34.08769531250002], + [78.73173828125013, 34.05556640625002], + [78.72666015625006, 34.013378906249955], + [78.76171875000003, 33.88759765625011], + [78.78378906250006, 33.80878906250004], + [78.78994140625, 33.65034179687507], + [78.80185546875018, 33.499707031250125], + [78.86503906250002, 33.43110351562501], + [78.91669921875015, 33.38676757812502], + [78.94843750000004, 33.346533203125006], + [79.01259765625016, 33.29145507812498], + [79.06650390625012, 33.250390625000136], + [79.1125, 33.22626953125001], + [79.13515625000005, 33.17192382812496], + [79.12167968750006, 33.1081054687501], + [79.10283203125007, 33.05253906249996], + [79.10859375000015, 33.0226562500001], + [79.14550781250003, 33.00146484375006], + [79.20224609375006, 32.946044921875114], + [79.20957031250012, 32.86484375000009], + [79.20556640625003, 32.8090332031251], + [79.22792968750011, 32.7587890625], + [79.23388671875009, 32.70307617187501], + [79.21650390625004, 32.5640136718751], + [79.21933593750006, 32.50107421875006], + [79.16992187500003, 32.497216796874994], + [79.12734375, 32.47578125000007], + [79.06699218750023, 32.38818359374997], + [78.99765625000012, 32.36513671875008], + [78.91894531249997, 32.3582031250001], + [78.83789062500009, 32.411962890625034], + [78.77128906250002, 32.4680664062501], + [78.75351562500012, 32.49926757812506], + [78.73671875, 32.55839843750002], + [78.70087890625004, 32.59702148437506], + [78.63154296875004, 32.57895507812495], + [78.52636718750003, 32.57080078125006], + [78.41250000000011, 32.55771484375006], + [78.39169921875012, 32.544726562500074], + [78.38964843749997, 32.51987304687498], + [78.41748046874997, 32.466699218749994], + [78.44130859375011, 32.39736328125008], + [78.4552734375001, 32.30034179687502], + [78.4861328124999, 32.23623046875011], + [78.49589843750002, 32.21577148437504], + [78.67773437500014, 32.023046875000034], + [78.72558593750009, 31.983789062500023], + [78.73544921875018, 31.957958984375097], + [78.71972656250009, 31.887646484374983] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 5, + "name": "Indian Ocean Ter.", + "iso_a2": "-99", + "iso_a3": "-99", + "iso_n3": "-99", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [96.91826171875007, -12.194140625000031], + [96.90654296875002, -12.199804687500034], + [96.89677734375007, -12.19550781250004], + [96.8939453125, -12.192578124999983], + [96.89296875, -12.18720703125004], + [96.90439453125012, -12.186523437499986], + [96.91337890625007, -12.181835937500011], + [96.91894531250003, -12.173339843749972], + [96.92050781250006, -12.161523437499952], + [96.92529296874997, -12.173242187500037], + [96.92431640624997, -12.184667968749963], + [96.91826171875007, -12.194140625000031] + ] + ], + [ + [ + [96.84042968750012, -12.181835937500011], + [96.851953125, -12.18681640624996], + [96.8673828125001, -12.181445312500017], + [96.87363281250006, -12.187695312499955], + [96.84951171875, -12.197363281249977], + [96.83486328125005, -12.179687500000014], + [96.82773437500012, -12.150683593749974], + [96.8258789062501, -12.12617187500004], + [96.83261718750012, -12.12617187500004], + [96.83261718750012, -12.136035156250003], + [96.8341796875001, -12.144140624999963], + [96.83945312500012, -12.160253906249963], + [96.83564453125004, -12.171289062499994], + [96.84042968750012, -12.181835937500011] + ] + ], + [ + [ + [105.72539062500002, -10.492968750000017], + [105.696875, -10.564160156249955], + [105.64433593750002, -10.525], + [105.58408203125012, -10.5125], + [105.59570312499997, -10.459667968749983], + [105.64550781250003, -10.452246093749991], + [105.66982421875, -10.449414062500026], + [105.70546875000005, -10.430664062500028], + [105.72539062500002, -10.492968750000017] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "Br. Indian Ocean Ter.", + "iso_a2": "IO", + "iso_a3": "IOT", + "iso_n3": "086", + "continent": "Seven seas (open ocean)" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [72.49199218750002, -7.37744140625], + [72.46875, -7.417187500000011], + [72.42910156250002, -7.435351562500003], + [72.40761718750002, -7.33447265625], + [72.34970703125, -7.263378906250011], + [72.37285156250002, -7.263378906250011], + [72.42744140625001, -7.2998046875], + [72.447265625, -7.395703125000011], + [72.46718750000002, -7.367578125], + [72.46220703125002, -7.337792968750009], + [72.47373046875, -7.309667968750006], + [72.4654296875, -7.278222656250009], + [72.43574218750001, -7.230273437500003], + [72.44560546875002, -7.220410156250011], + [72.49355468750002, -7.26171875], + [72.49853515625, -7.294824218750009], + [72.49199218750002, -7.37744140625] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Ireland", + "iso_a2": "IE", + "iso_a3": "IRL", + "iso_n3": "372", + "continent": "Europe" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-9.948193359374926, 53.91313476562499], + [-9.952441406249989, 53.884570312500045], + [-10.026513671874994, 53.920556640624994], + [-10.0625, 53.95971679687497], + [-10.265722656249949, 53.977685546874994], + [-10.181054687499937, 54.01684570312497], + [-10.139746093749949, 54.005224609375006], + [-9.99638671874996, 54.00361328125004], + [-9.956152343749949, 53.987207031249994], + [-9.948193359374926, 53.91313476562499] + ] + ], + [ + [ + [-7.40141601562496, 55.00332031250005], + [-7.445996093749983, 54.905126953125034], + [-7.451269531249977, 54.877099609374994], + [-7.502197265624972, 54.82543945312506], + [-7.55039062499992, 54.767968749999966], + [-7.606445312499972, 54.74570312500006], + [-7.689990234374932, 54.72802734375], + [-7.7375, 54.71044921874997], + [-7.797265624999937, 54.71928710937499], + [-7.872949218749994, 54.71787109374998], + [-7.910595703124955, 54.698339843750006], + [-7.908740234374932, 54.68334960937506], + [-7.886132812499937, 54.66606445312499], + [-7.819824218750028, 54.639697265625045], + [-7.746289062499955, 54.61582031250006], + [-7.75439453125, 54.59492187499998], + [-7.793798828124949, 54.57124023437504], + [-8.044335937500023, 54.51245117187506], + [-8.118945312499932, 54.47695312500002], + [-8.14482421874996, 54.45351562500002], + [-8.118261718749977, 54.41425781250004], + [-7.918457031249943, 54.29658203125004], + [-7.884472656249955, 54.283789062500006], + [-7.854931640624983, 54.21528320312498], + [-7.67875976562496, 54.18666992187502], + [-7.606542968750006, 54.14384765625002], + [-7.544433593749943, 54.13359375], + [-7.409423828124972, 54.137304687500006], + [-7.355175781249955, 54.12124023437502], + [-7.324511718750017, 54.13344726562502], + [-7.306738281249949, 54.156005859375], + [-7.193066406249955, 54.21411132812503], + [-7.155468749999926, 54.23950195312506], + [-7.17807617187492, 54.27490234374997], + [-7.202587890624955, 54.301806640625045], + [-7.133496093749983, 54.35537109375002], + [-7.049707031249966, 54.40825195312496], + [-7.007714843749937, 54.40668945312501], + [-6.93613281249992, 54.37431640624999], + [-6.877246093749932, 54.3291015625], + [-6.869238281249977, 54.29404296875006], + [-6.858349609374983, 54.268652343750034], + [-6.802587890624977, 54.21435546874997], + [-6.766601562499943, 54.19560546874999], + [-6.669531249999977, 54.184716796874994], + [-6.64687, 54.163427734375006], + [-6.664208984374966, 54.08476562499996], + [-6.649804687499937, 54.05864257812496], + [-6.548144531249932, 54.05727539062505], + [-6.440283203124977, 54.063623046874994], + [-6.402587890624943, 54.060644531250034], + [-6.363671875000023, 54.07709960937501], + [-6.303662109374955, 54.094873046874966], + [-6.218017578125, 54.08872070312506], + [-6.175732421875011, 54.05351562499999], + [-6.156933593749983, 54.017236328124966], + [-6.230664062500011, 54.00361328125004], + [-6.307617187499972, 54.011035156250045], + [-6.345166015624983, 53.987207031249994], + [-6.347607421874926, 53.94130859375005], + [-6.32158203124996, 53.88217773437498], + [-6.270117187499949, 53.840234374999966], + [-6.229003906250028, 53.74570312499998], + [-6.194873046874989, 53.64086914062503], + [-6.141845703124943, 53.57753906250002], + [-6.130957031249949, 53.498925781249994], + [-6.13876953124992, 53.460302734375006], + [-6.129101562499926, 53.390869140625], + [-6.151660156249989, 53.36640624999998], + [-6.134716796874983, 53.30122070312504], + [-6.072265624999972, 53.16630859374999], + [-6.04501953124992, 53.091162109375034], + [-6.027392578124989, 52.927099609375006], + [-6.071484374999983, 52.865625], + [-6.13066406249996, 52.80727539062502], + [-6.169335937499937, 52.73813476562498], + [-6.19921875, 52.66347656250005], + [-6.217236328124926, 52.54311523437502], + [-6.345410156249926, 52.402001953124966], + [-6.399951171874932, 52.36694335937503], + [-6.463183593749932, 52.345361328124994], + [-6.325, 52.246679687500034], + [-6.437939453124955, 52.20268554687496], + [-6.561083984374989, 52.18881835937498], + [-6.69731445312496, 52.21352539062502], + [-6.782226562500028, 52.210498046875045], + [-6.859716796875006, 52.178564453125006], + [-6.890234375, 52.15922851562499], + [-6.914648437500006, 52.168554687500034], + [-6.965771484374926, 52.24951171875], + [-7.00327148437492, 52.16591796875002], + [-7.081787109374943, 52.13930664062502], + [-7.216210937499966, 52.14497070312501], + [-7.440869140624983, 52.122705078124994], + [-7.527294921874926, 52.09887695312503], + [-7.563183593749955, 52.061621093750006], + [-7.589843749999972, 52.01855468750003], + [-7.624902343749994, 51.99311523437498], + [-7.66455078125, 51.979736328125], + [-7.837988281249977, 51.94799804687503], + [-7.87216796874992, 51.93530273437503], + [-7.952490234374949, 51.86577148437499], + [-8.057812499999926, 51.82558593750005], + [-8.14501953125, 51.81352539062499], + [-8.222460937499989, 51.85400390624997], + [-8.254296874999966, 51.87832031250005], + [-8.290234374999926, 51.89067382812499], + [-8.4091796875, 51.888769531250034], + [-8.371630859374989, 51.87626953124999], + [-8.347363281249926, 51.84770507812502], + [-8.335595703124937, 51.79296874999997], + [-8.349121093749943, 51.73930664062496], + [-8.407812499999977, 51.71206054687502], + [-8.47783203124996, 51.70703125000006], + [-8.58828125, 51.6513671875], + [-8.73447265624992, 51.63618164062501], + [-8.813427734374926, 51.584912109374955], + [-9.296484374999949, 51.49824218749998], + [-9.323876953125023, 51.49721679687502], + [-9.390576171874926, 51.519287109375], + [-9.462890625, 51.52905273437503], + [-9.534863281249926, 51.522167968749955], + [-9.737304687499943, 51.473730468750034], + [-9.835351562499937, 51.483349609374955], + [-9.710351562499966, 51.603710937499955], + [-9.542382812499937, 51.664453125], + [-9.524902343750028, 51.68110351562501], + [-9.579833984375028, 51.68925781249999], + [-9.899023437499949, 51.647070312500006], + [-10.009912109374966, 51.61113281249996], + [-10.120751953124994, 51.60068359375006], + [-10.06943359374992, 51.65556640624996], + [-9.926416015624937, 51.730712890625], + [-9.84970703124992, 51.76611328125], + [-9.802880859374994, 51.780126953125034], + [-9.749511718749943, 51.82426757812496], + [-9.598828124999983, 51.87441406250005], + [-10.084228515625028, 51.77099609375003], + [-10.21171875, 51.78359375000002], + [-10.24174804687496, 51.81245117187504], + [-10.341064453124943, 51.798925781250034], + [-10.37871093749996, 51.86875], + [-10.231591796874937, 51.97451171875002], + [-10.145849609374949, 52.02001953125006], + [-10.04404296874992, 52.044580078124994], + [-9.946044921875028, 52.07983398437497], + [-9.909667968749972, 52.122949218749966], + [-9.955810546874972, 52.13666992187501], + [-10.249511718749943, 52.125732421875], + [-10.39023437499992, 52.134912109374994], + [-10.38261718749996, 52.16909179687505], + [-10.356689453125, 52.20693359375002], + [-10.210937499999972, 52.27167968749998], + [-10.132080078125, 52.28208007812506], + [-10.061767578124972, 52.27592773437496], + [-9.993115234374926, 52.259326171875045], + [-9.937304687499932, 52.23764648437498], + [-9.772119140624937, 52.250097656250034], + [-9.841064453124943, 52.29145507812501], + [-9.853222656249926, 52.37548828125], + [-9.90605468749996, 52.403710937499966], + [-9.838476562499949, 52.44267578124999], + [-9.761132812499994, 52.46635742187502], + [-9.632226562499937, 52.54692382812502], + [-9.586328125000023, 52.559179687500034], + [-9.33125, 52.57875976562502], + [-9.05615234375, 52.621142578125045], + [-8.783447265624943, 52.679638671874955], + [-8.923291015624926, 52.71230468750005], + [-8.990283203124989, 52.755419921875045], + [-9.097900390624972, 52.668261718750045], + [-9.175390624999949, 52.634912109374994], + [-9.394238281249955, 52.617089843749994], + [-9.463476562499949, 52.626904296874955], + [-9.56103515625, 52.653955078124966], + [-9.59135742187496, 52.643652343750006], + [-9.619531249999937, 52.62275390625001], + [-9.764355468749955, 52.579980468749994], + [-9.916601562499977, 52.56972656250005], + [-9.739599609374977, 52.64819335937503], + [-9.514990234374949, 52.78115234375002], + [-9.46489257812496, 52.82319335937498], + [-9.39365234374992, 52.89624023437503], + [-9.415722656249983, 52.92875976562499], + [-9.461962890624989, 52.94726562500003], + [-9.299218749999966, 53.09755859375002], + [-9.241894531249926, 53.12485351562498], + [-9.137597656249994, 53.12924804687498], + [-9.061132812499949, 53.15307617187506], + [-9.02744140624992, 53.15317382812498], + [-8.997167968749977, 53.16206054687501], + [-8.930126953124983, 53.207080078125045], + [-9.03354492187492, 53.23574218750002], + [-9.140332031249926, 53.25048828125], + [-9.470751953124989, 53.23486328125], + [-9.51420898437496, 53.23823242187498], + [-9.555175781249972, 53.252050781250034], + [-9.581738281249955, 53.27197265625003], + [-9.601757812499955, 53.323046875000045], + [-9.6259765625, 53.33447265625006], + [-9.700585937499937, 53.33447265625006], + [-9.774072265624966, 53.31884765624997], + [-9.825390624999955, 53.32036132812502], + [-9.875781250000017, 53.342724609374955], + [-9.795410156249972, 53.39497070312504], + [-9.899023437499949, 53.40727539062496], + [-10.00390625, 53.39702148437502], + [-10.091259765624926, 53.41284179687503], + [-10.093994140624972, 53.445605468750045], + [-10.054394531249983, 53.47832031249996], + [-10.10625, 53.50932617187496], + [-10.116992187499932, 53.548535156249955], + [-10.061718749999955, 53.56782226562498], + [-10.001367187500023, 53.56142578125002], + [-9.878271484374977, 53.59042968750006], + [-9.720654296874926, 53.6044921875], + [-9.855859374999937, 53.63310546874996], + [-9.909716796874989, 53.657617187499994], + [-9.912304687499983, 53.69511718749999], + [-9.901611328124943, 53.72719726562502], + [-9.745068359374926, 53.781494140625], + [-9.578222656249949, 53.80541992187497], + [-9.590527343749983, 53.84116210937498], + [-9.578857421875, 53.879833984374955], + [-9.747509765624983, 53.89101562500002], + [-9.9140625, 53.863720703124955], + [-9.896240234375, 53.937597656250006], + [-9.856347656249966, 54.004296875], + [-9.848486328124949, 54.04829101562498], + [-9.856445312499972, 54.095361328124994], + [-9.934472656249966, 54.07524414062499], + [-9.943603515624972, 54.1416015625], + [-9.97709960937496, 54.187109375000034], + [-10.092675781249966, 54.15576171875003], + [-10.089697265624977, 54.21582031250003], + [-10.056396484374943, 54.25781250000006], + [-9.995947265624977, 54.27602539062502], + [-9.9359375, 54.26811523437502], + [-9.824560546874949, 54.268896484375006], + [-9.71713867187492, 54.30043945312502], + [-9.562304687499989, 54.30854492187498], + [-9.315527343750006, 54.29863281250002], + [-9.145898437499994, 54.209619140624994], + [-9.10209960937496, 54.225537109374955], + [-9.034277343749977, 54.281787109375045], + [-9.002441406249972, 54.287988281249966], + [-8.746777343749955, 54.263476562500045], + [-8.588037109374937, 54.23110351562502], + [-8.545556640624994, 54.24121093750003], + [-8.568457031249949, 54.30361328125005], + [-8.623144531249977, 54.34687], + [-8.554443359375028, 54.40356445312497], + [-8.470996093749989, 54.44194335937499], + [-8.415234374999983, 54.461083984374966], + [-8.286523437499966, 54.48486328125003], + [-8.230371093749994, 54.50727539062498], + [-8.19296875, 54.58012695312499], + [-8.133447265624966, 54.64082031250001], + [-8.456542968749972, 54.609277343749966], + [-8.763916015624972, 54.68120117187496], + [-8.715185546875006, 54.732031250000034], + [-8.650292968749994, 54.76088867187505], + [-8.538281249999926, 54.782958984375], + [-8.527685546874977, 54.809472656249994], + [-8.470996093749989, 54.83154296875006], + [-8.377294921874977, 54.88945312500002], + [-8.411718749999977, 54.96508789062497], + [-8.393261718749955, 55.020410156249966], + [-8.325781249999977, 55.056445312500045], + [-8.304687499999943, 55.10820312500002], + [-8.274609374999955, 55.146289062500045], + [-8.137695312499943, 55.15991210937497], + [-8.006103515624943, 55.1953125], + [-7.958593749999949, 55.19189453125], + [-7.803173828125011, 55.20004882812498], + [-7.750537109374932, 55.185791015625], + [-7.762548828124977, 55.24833984374996], + [-7.667089843749977, 55.25649414062502], + [-7.629785156249937, 55.24399414062506], + [-7.613378906249977, 55.19965820312498], + [-7.570019531249926, 55.17138671875], + [-7.556640624999943, 55.12221679687502], + [-7.585693359375, 55.084228515625], + [-7.634277343749972, 55.05498046874999], + [-7.589843749999972, 55.02504882812502], + [-7.65874023437496, 54.97094726562503], + [-7.584375, 54.993994140625006], + [-7.478417968749994, 55.04697265625006], + [-7.483935546874989, 55.09028320312501], + [-7.501953125, 55.14472656249998], + [-7.531445312499983, 55.19384765625006], + [-7.51787109374996, 55.247949218749966], + [-7.458300781249989, 55.28178710937502], + [-7.3017578125, 55.29877929687501], + [-7.365966796875, 55.360205078125006], + [-7.308789062500011, 55.365820312500006], + [-7.246679687499949, 55.35302734374997], + [-7.155322265624989, 55.30517578125], + [-7.060253906249983, 55.26762695312499], + [-6.961669921874972, 55.23789062500006], + [-7.056396484375, 55.178320312500006], + [-7.172851562500028, 55.13701171875002], + [-7.218652343749937, 55.09199218749998], + [-7.376904296874926, 55.027685546875034], + [-7.40141601562496, 55.00332031250005] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Iran", + "iso_a2": "IR", + "iso_a3": "IRN", + "iso_n3": "364", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [56.18798828125003, 26.92114257812497], + [56.0949218750001, 26.80117187500005], + [55.95429687500004, 26.70112304687501], + [55.894140625, 26.732275390625034], + [55.84765624999997, 26.730810546875006], + [55.74726562500004, 26.692480468750034], + [55.674609375000074, 26.68583984374999], + [55.54316406250004, 26.617529296875034], + [55.42373046875005, 26.583105468750034], + [55.340429687500006, 26.585742187500045], + [55.31152343749997, 26.592626953125006], + [55.295019531250006, 26.639208984375017], + [55.29648437500006, 26.657568359375006], + [55.34697265625002, 26.64794921875], + [55.53173828125003, 26.710009765625045], + [55.76259765625005, 26.81196289062504], + [55.784570312499994, 26.857177734375], + [55.747460937499994, 26.930957031250017], + [55.75761718750002, 26.94765625000005], + [55.907128906249994, 26.909814453124966], + [56.074121093749994, 26.98334960937504], + [56.213964843750006, 27.003271484375006], + [56.279394531250006, 26.952099609374983], + [56.18798828125003, 26.92114257812497] + ] + ], + [ + [ + [45.00019531250004, 39.42353515625001], + [45.071679687499994, 39.362890625], + [45.11308593750002, 39.311572265625045], + [45.14121093750006, 39.254296875], + [45.190625, 39.215625], + [45.255957031250006, 39.194677734375034], + [45.33554687500006, 39.13916015625], + [45.38925781250006, 39.09589843749998], + [45.4796875000001, 39.00625], + [45.575, 38.97280273437502], + [45.921875, 38.907910156249955], + [46.1144531250001, 38.877783203125034], + [46.1701171875001, 38.86904296875002], + [46.31777343750005, 38.912646484375045], + [46.490625, 38.90668945312498], + [46.554785156250006, 38.904394531250034], + [46.78320312500003, 39.08740234375003], + [46.85253906250003, 39.14843750000003], + [46.98886718750006, 39.18017578125], + [47.06542968750003, 39.25288085937498], + [47.18837890625005, 39.340966796874994], + [47.33847656250006, 39.42387695312499], + [47.47617187500006, 39.49833984374999], + [47.581835937500074, 39.543359375], + [47.772851562499994, 39.64858398437505], + [47.8922851562501, 39.68505859375], + [47.995898437500074, 39.683935546875034], + [48.15107421875004, 39.56054687500006], + [48.28173828125003, 39.448339843750006], + [48.322167968749994, 39.39907226562502], + [48.257226562499994, 39.35498046875], + [48.13603515625002, 39.312353515625006], + [48.112890625, 39.281103515625034], + [48.10439453125005, 39.241113281249994], + [48.109179687500074, 39.20283203125001], + [48.12548828124997, 39.17163085937503], + [48.2741210937501, 39.09912109375], + [48.29101562499997, 39.05927734374998], + [48.292089843750006, 39.01884765624999], + [48.2750976562501, 38.99360351562501], + [48.24199218750002, 38.978955078124955], + [48.138574218749994, 38.958642578124994], + [48.05009765625002, 38.93500976562498], + [48.01933593750002, 38.911816406249955], + [47.99267578125003, 38.88427734375003], + [47.996484375, 38.85375976562503], + [48.02324218750002, 38.81904296874998], + [48.20468750000006, 38.72412109375], + [48.22519531250006, 38.689208984375], + [48.26132812500006, 38.64228515625001], + [48.305566406249994, 38.61347656250001], + [48.38125, 38.60561523437502], + [48.41738281250005, 38.58623046874996], + [48.59267578125005, 38.41108398437498], + [48.635546875000074, 38.39873046874996], + [48.84033203124997, 38.437255859375], + [48.86875, 38.43549804687498], + [48.870703125, 38.39252929687504], + [48.90136718749997, 38.143652343750034], + [48.92509765625002, 38.01513671874997], + [48.95996093750003, 37.89013671875], + [49.0153320312501, 37.77607421875004], + [49.08095703125005, 37.667578125000034], + [49.171191406250074, 37.60058593749997], + [49.372460937499994, 37.51997070312498], + [49.470117187499994, 37.496679687500034], + [49.72695312500005, 37.480517578125045], + [49.98066406250004, 37.44487304687496], + [50.13046875, 37.407128906249994], + [50.17626953124997, 37.380517578124994], + [50.21406250000004, 37.33959960937503], + [50.33789062499997, 37.14916992187503], + [50.53320312499997, 37.01367187500006], + [50.9274414062501, 36.810205078124994], + [51.11855468750005, 36.742578124999966], + [51.76201171875002, 36.614501953125], + [52.19013671875004, 36.62172851562505], + [53.374121093750006, 36.86875], + [53.76767578125006, 36.93032226562502], + [53.91542968750005, 36.93032226562502], + [53.827441406250074, 36.88120117187498], + [53.67949218750002, 36.853125], + [53.76875, 36.81845703124998], + [53.90625, 36.812695312499955], + [53.970117187499994, 36.818310546874955], + [54.016210937500006, 36.849658203125045], + [54.02382812500005, 36.90131835937498], + [54.0171875, 36.952490234375034], + [53.95195312500002, 37.181738281250006], + [53.91416015625006, 37.34355468750002], + [54.1916015625001, 37.33247070312498], + [54.29980468750003, 37.353613281250034], + [54.4586914062501, 37.407568359375006], + [54.578906250000074, 37.44023437499999], + [54.63964843749997, 37.44472656250002], + [54.6994140625001, 37.47016601562498], + [54.745214843750006, 37.501904296874955], + [54.84863281250003, 37.72265624999997], + [54.90009765625004, 37.77792968750006], + [55.075585937499994, 37.90249023437502], + [55.224707031250006, 37.98134765625002], + [55.38085937500003, 38.051123046875034], + [55.57841796875002, 38.099755859374994], + [55.84130859375003, 38.094628906249994], + [56.05029296874997, 38.077539062499994], + [56.171191406250074, 38.07836914062497], + [56.22880859375002, 38.07338867187502], + [56.272070312500006, 38.080419921875034], + [56.296972656250006, 38.094824218750034], + [56.32412109375005, 38.19111328125004], + [56.36689453125004, 38.222509765625034], + [56.440625, 38.249414062499994], + [56.544042968750006, 38.249609375000034], + [56.66992187499997, 38.25664062499996], + [56.7746093750001, 38.25004882812496], + [56.906640625, 38.213037109374966], + [57.079003906249994, 38.20996093750006], + [57.1935546875001, 38.216406250000034], + [57.26015625000005, 38.179589843749994], + [57.30810546874997, 38.13037109375], + [57.331445312499994, 38.08930664062498], + [57.33671875000002, 38.032910156249955], + [57.33574218750002, 37.98994140624998], + [57.35371093750004, 37.97333984374998], + [57.42382812500003, 37.94770507812501], + [57.52099609374997, 37.928466796875], + [57.71054687500006, 37.90527343749997], + [57.88818359375003, 37.86083984374997], + [57.980566406250006, 37.83046875000002], + [58.108789062499994, 37.783056640625034], + [58.261621093749994, 37.665820312500045], + [58.31816406250002, 37.64721679687497], + [58.38671874999997, 37.63535156250006], + [58.4357421875001, 37.63852539062498], + [58.55048828125004, 37.68818359374998], + [58.65019531250002, 37.65156249999998], + [58.70078125, 37.65625], + [58.81542968750003, 37.683496093749994], + [58.93720703125004, 37.64965820312503], + [59.240820312500006, 37.52075195312497], + [59.27412109375004, 37.52373046874996], + [59.30175781249997, 37.51064453125005], + [59.32695312500002, 37.48115234374998], + [59.34472656250003, 37.44472656250002], + [59.3673828125001, 37.33374023437497], + [59.454980468749994, 37.25283203125002], + [59.5622070312501, 37.178906249999955], + [59.68720703125004, 37.13847656249999], + [59.94863281250005, 37.04160156250006], + [60.06279296875002, 36.962890625], + [60.178320312500006, 36.829443359375006], + [60.320703125, 36.65356445312506], + [60.34130859375003, 36.63764648437501], + [60.707910156249994, 36.64296875000002], + [61.11962890625003, 36.64257812500003], + [61.16992187499997, 36.572265625], + [61.1603515625001, 36.432714843750006], + [61.175097656250074, 36.289697265624994], + [61.212011718750006, 36.190527343750034], + [61.21240234375003, 36.09912109374997], + [61.18261718749997, 36.05283203125006], + [61.159472656250074, 35.99990234375002], + [61.15292968750006, 35.97675781250001], + [61.20585937500002, 35.943701171875034], + [61.25214843750004, 35.86762695312498], + [61.25869140625005, 35.761816406250006], + [61.23554687500004, 35.70556640625], + [61.238867187500006, 35.659277343750006], + [61.26201171875002, 35.61958007812498], + [61.28183593750006, 35.55341796875001], + [61.2785156250001, 35.513769531250006], + [61.245507812499994, 35.47407226562501], + [61.22568359375006, 35.42446289062502], + [61.19921874999997, 35.36162109375002], + [61.18925781250002, 35.31201171875003], + [61.13964843750003, 35.28886718750002], + [61.1, 35.272314453125034], + [61.10664062500004, 35.20947265625003], + [61.12646484375003, 35.15654296874999], + [61.1496093750001, 35.09375], + [61.12314453125006, 35.05073242187501], + [61.10664062500004, 35.00112304687502], + [61.070214843749994, 34.921728515625006], + [61.08007812499997, 34.85561523437505], + [61.040429687499994, 34.799365234375045], + [60.990820312500006, 34.74975585937497], + [60.95781250000002, 34.71005859375006], + [60.95117187499997, 34.65385742187499], + [60.91474609375004, 34.63398437500001], + [60.8453125, 34.58769531249999], + [60.80234375000006, 34.55463867187501], + [60.73945312500004, 34.544726562500045], + [60.7262695312501, 34.51826171874998], + [60.736132812500074, 34.491796875], + [60.76259765625005, 34.475244140624994], + [60.8039062500001, 34.41801757812499], + [60.88945312500002, 34.31943359375006], + [60.642675781250006, 34.30717773437496], + [60.570214843749994, 34.219628906249966], + [60.48574218750005, 34.09477539062502], + [60.5270507812501, 33.841992187499955], + [60.4859375, 33.7119140625], + [60.510839843750006, 33.63891601562497], + [60.57382812500006, 33.58833007812498], + [60.654589843750074, 33.56040039062506], + [60.80644531250002, 33.55869140625006], + [60.90693359375004, 33.53896484375005], + [60.91699218749997, 33.505224609375006], + [60.859277343749994, 33.45625], + [60.76689453125002, 33.36381835937496], + [60.71806640625002, 33.32353515625002], + [60.56054687499997, 33.13784179687502], + [60.561914062499994, 33.05878906250001], + [60.5765625, 32.99487304687503], + [60.64453124999997, 32.794384765624955], + [60.71044921874997, 32.6], + [60.82929687500004, 32.24941406250005], + [60.82724609375006, 32.16796874999997], + [60.789941406249994, 31.98710937499999], + [60.7875, 31.87719726562497], + [60.804296875, 31.734472656250034], + [60.791601562500006, 31.660595703124983], + [60.820703125, 31.495166015625045], + [60.854101562500006, 31.483251953125006], + [61.110742187499994, 31.45112304687504], + [61.346484375000074, 31.42163085937497], + [61.66015625000003, 31.382421874999977], + [61.7550781250001, 31.285302734374994], + [61.814257812500074, 31.072558593750017], + [61.810839843750074, 30.913281249999983], + [61.78417968749997, 30.831933593750023], + [61.55947265625005, 30.59936523437497], + [61.33164062500006, 30.36372070312501], + [61.10410156250006, 30.12841796875003], + [60.86816406249997, 29.884375], + [60.84335937500006, 29.85869140624999], + [61.03417968750003, 29.663427734374977], + [61.15214843750002, 29.542724609375], + [61.31835937500003, 29.37260742187499], + [61.33945312500006, 29.33178710937503], + [61.33789062500003, 29.264990234375006], + [61.508593750000074, 29.00605468750001], + [61.56875, 28.87089843749999], + [61.62304687500003, 28.791601562500006], + [61.75800781250004, 28.667675781249983], + [61.8898437500001, 28.546533203124994], + [62.03300781250002, 28.49101562499996], + [62.13056640625004, 28.47880859374996], + [62.35302734374997, 28.414746093749983], + [62.43388671875002, 28.363867187500006], + [62.56455078125006, 28.23515624999999], + [62.717578125000074, 28.252783203125006], + [62.749414062499994, 28.25288085937504], + [62.75800781250004, 28.243554687499994], + [62.7625, 28.202050781249994], + [62.73974609374997, 28.002050781250006], + [62.782324218750006, 27.800537109375], + [62.81201171875003, 27.497021484374983], + [62.80087890625006, 27.44453125000001], + [62.76425781250006, 27.35673828124999], + [62.7625, 27.300195312500023], + [62.75273437500002, 27.265625], + [62.762988281250074, 27.250195312499955], + [62.81162109375006, 27.229443359374983], + [62.91542968750005, 27.218408203124966], + [63.16679687500002, 27.25249023437499], + [63.19609375000002, 27.243945312500017], + [63.25625, 27.20791015625005], + [63.30156250000002, 27.151464843750006], + [63.30517578124997, 27.124560546875017], + [63.242089843749994, 27.07768554687499], + [63.23144531250003, 26.998144531250034], + [63.250390625, 26.879248046875063], + [63.24160156250005, 26.86474609375003], + [63.18613281250006, 26.83759765625001], + [63.168066406250006, 26.66557617187496], + [63.15781250000006, 26.649755859375034], + [63.09296875000004, 26.63232421875003], + [62.78662109375003, 26.643896484374977], + [62.75156250000006, 26.63916015625], + [62.63642578125004, 26.59365234375005], + [62.43925781250002, 26.56103515624997], + [62.38505859375002, 26.54262695312505], + [62.31230468750002, 26.490869140624994], + [62.25966796875005, 26.42749023437503], + [62.249609375, 26.369238281249977], + [62.23935546875006, 26.357031249999977], + [62.12597656249997, 26.368994140625034], + [62.0890625000001, 26.318261718749994], + [61.8698242187501, 26.242431640625], + [61.842382812500006, 26.225927734375006], + [61.809960937499994, 26.165283203125], + [61.78076171874997, 25.99584960937503], + [61.75439453125003, 25.843359375000063], + [61.737695312499994, 25.821093750000045], + [61.66865234375004, 25.76899414062501], + [61.6618164062501, 25.751269531250017], + [61.67138671874997, 25.69238281250003], + [61.64013671875003, 25.584619140624994], + [61.61542968750004, 25.28613281250003], + [61.58789062499997, 25.20234375000001], + [61.533105468749994, 25.195507812499955], + [61.49033203125006, 25.153662109375063], + [61.41220703125006, 25.102099609375017], + [61.24296875000002, 25.141992187499994], + [61.1085937500001, 25.18388671874999], + [60.66386718750002, 25.28222656250003], + [60.615136718749994, 25.32983398437497], + [60.5875, 25.413525390624955], + [60.51054687500002, 25.437060546875045], + [60.40019531250002, 25.311572265625074], + [60.024707031250074, 25.384130859375006], + [59.897070312500006, 25.36181640625], + [59.81835937499997, 25.400878906250057], + [59.61601562500002, 25.40327148437501], + [59.45605468749997, 25.481494140625045], + [59.22724609375004, 25.42773437500003], + [59.0460937500001, 25.417285156250017], + [58.79785156249997, 25.554589843750023], + [58.530859375, 25.592431640624994], + [58.314257812500074, 25.580859375000045], + [58.20292968750002, 25.591601562500017], + [58.022363281249994, 25.64082031250001], + [57.936621093750006, 25.691650390625057], + [57.7960937500001, 25.65302734375001], + [57.732519531250006, 25.72490234374999], + [57.334570312500006, 25.791552734375074], + [57.26093750000004, 25.918847656249966], + [57.20556640624997, 26.037207031250006], + [57.2013671875001, 26.158837890625023], + [57.10429687500002, 26.371435546874977], + [57.0719726562501, 26.680078125], + [57.03603515625005, 26.80068359375005], + [56.98222656250002, 26.905468749999983], + [56.910449218750074, 26.99458007812501], + [56.812890625, 27.089990234374994], + [56.728125, 27.127685546875057], + [56.3561523437501, 27.20024414062499], + [56.284375, 27.19062], + [56.118066406249994, 27.14311523437499], + [55.9411132812501, 27.03759765625], + [55.650292968749994, 26.9775390625], + [55.59160156250002, 26.93212890625], + [55.51855468749997, 26.829931640625034], + [55.4240234375001, 26.770556640625017], + [55.2941406250001, 26.7859375], + [55.15458984375002, 26.72539062499999], + [54.89580078125002, 26.55668945312499], + [54.75927734375003, 26.50507812500004], + [54.644921875, 26.508935546875023], + [54.522070312500006, 26.589160156250017], + [54.24707031250003, 26.696630859374977], + [54.06933593749997, 26.732373046874983], + [53.822558593750074, 26.70771484375001], + [53.70576171875004, 26.72558593750003], + [53.50712890625002, 26.851757812499955], + [53.45498046875005, 26.94326171875005], + [53.34169921875005, 27.004492187500006], + [52.98251953125006, 27.141943359375006], + [52.69160156250004, 27.323388671875023], + [52.63818359374997, 27.391992187499966], + [52.60263671875006, 27.49335937500001], + [52.475878906250074, 27.61650390624999], + [52.19189453125003, 27.71728515625], + [52.03076171874997, 27.824414062499955], + [51.84199218750004, 27.848242187500034], + [51.666308593750074, 27.84497070312497], + [51.58906250000004, 27.864208984374983], + [51.51855468749997, 27.910009765625006], + [51.27890625, 28.13134765624997], + [51.27607421875004, 28.218847656250034], + [51.12841796874997, 28.435156250000034], + [51.09384765625006, 28.512109375], + [51.06201171874997, 28.72612304687499], + [51.0211914062501, 28.782080078125034], + [50.86699218750002, 28.870166015625017], + [50.8429687500001, 28.927832031250063], + [50.87578125000002, 29.00439453125003], + [50.87578125000002, 29.062695312499983], + [50.795507812500006, 29.117431640625057], + [50.67519531250005, 29.146582031250034], + [50.64609375000006, 29.21220703124999], + [50.66796874999997, 29.33984374999997], + [50.64960937500004, 29.420068359374966], + [50.54355468750006, 29.547998046875023], + [50.3869140625001, 29.679052734374977], + [50.23017578125004, 29.872900390625034], + [50.16894531250003, 29.921240234375034], + [50.12890625000003, 30.04809570312503], + [50.071582031250074, 30.198535156250017], + [49.9831054687501, 30.209375], + [49.55488281250004, 30.028955078125023], + [49.42998046875002, 30.13046875], + [49.05429687500006, 30.30693359374999], + [49.028125, 30.333447265624983], + [49.00195312500003, 30.373925781249966], + [49.04902343750004, 30.397265625000017], + [49.09619140624997, 30.40678710937499], + [49.19033203125005, 30.375390625], + [49.2472656250001, 30.4125], + [49.224511718749994, 30.472314453125023], + [49.13037109374997, 30.509423828125023], + [49.00195312500003, 30.506542968749983], + [49.03710937499997, 30.450488281250017], + [48.91679687500002, 30.397265625000017], + [48.891210937500006, 30.32763671875003], + [48.90869140625003, 30.24145507812497], + [48.91914062500004, 30.120898437500017], + [48.87011718749997, 30.062402343749994], + [48.83242187500005, 30.035498046875034], + [48.67089843749997, 30.0283203125], + [48.59550781250002, 29.975048828124983], + [48.54648437500006, 29.962353515624955], + [48.47851562499997, 30.003808593749966], + [48.43457031249997, 30.03759765625], + [48.39863281250004, 30.10961914062503], + [48.387597656249994, 30.159863281249955], + [48.40136718749997, 30.188330078124977], + [48.382617187500074, 30.230175781249983], + [48.33105468749997, 30.28544921874996], + [48.27890625, 30.315820312500023], + [48.226171875, 30.32133789062499], + [48.182421875000074, 30.355029296875017], + [48.14755859375006, 30.416845703125006], + [48.06611328125004, 30.457666015624966], + [48.01494140625002, 30.46562], + [48.01347656250002, 30.656445312499955], + [48.012011718750074, 30.823632812500023], + [48.01064453125005, 30.989794921875017], + [47.83632812500005, 30.996435546875034], + [47.679492187500074, 31.00239257812501], + [47.679492187500074, 31.141503906250023], + [47.679492187500074, 31.400585937499955], + [47.75390624999997, 31.601367187500017], + [47.829980468749994, 31.79443359375], + [47.71455078125004, 31.936425781249966], + [47.5915039062501, 32.087988281250034], + [47.51191406250004, 32.15083007812504], + [47.41816406250004, 32.34008789062506], + [47.3712890625001, 32.42373046875002], + [47.3297851562501, 32.45551757812501], + [47.28515625000003, 32.474023437499966], + [47.121386718750074, 32.46660156249996], + [46.96855468750002, 32.56840820312502], + [46.78906249999997, 32.68798828125006], + [46.569921875, 32.83393554687501], + [46.37705078125006, 32.92924804687499], + [46.29824218750005, 32.95024414062502], + [46.11279296875003, 32.957666015624994], + [46.09306640625002, 32.97587890624999], + [46.08046875, 33.028222656249994], + [46.0807617187501, 33.08652343750006], + [46.14111328125003, 33.174414062500034], + [46.145898437499994, 33.229638671874994], + [46.01992187500005, 33.41572265624998], + [45.981054687500006, 33.47011718750005], + [45.8732421875001, 33.49199218749996], + [45.8947265625001, 33.54565429687497], + [45.8947265625001, 33.58154296875], + [45.87939453124997, 33.609765625], + [45.85449218749997, 33.62333984374999], + [45.822851562500006, 33.62480468750002], + [45.73828125000003, 33.60283203124999], + [45.673730468749994, 33.68666992187502], + [45.473242187500006, 33.92548828125001], + [45.408984375000074, 33.95449218750005], + [45.39707031250006, 33.970849609374994], + [45.44609375000002, 34.044042968750006], + [45.52861328125002, 34.15253906249998], + [45.542773437500074, 34.21552734375004], + [45.52685546875003, 34.28466796875], + [45.43759765625006, 34.415136718750006], + [45.459375, 34.470361328124994], + [45.49775390625004, 34.533886718749955], + [45.50078125000002, 34.58159179687499], + [45.56083984375002, 34.57451171874999], + [45.6375, 34.573828125], + [45.661523437499994, 34.61269531250002], + [45.660058593749994, 34.74877929687503], + [45.678125, 34.798437500000034], + [45.92089843750003, 35.02851562500001], + [46.04179687500002, 35.08017578125006], + [46.13378906249997, 35.127636718749955], + [46.15468750000005, 35.19672851562498], + [46.13574218749997, 35.232275390625034], + [46.11777343750006, 35.28427734374998], + [46.112109375000074, 35.32167968750005], + [46.010644531249994, 35.4248046875], + [45.97539062500002, 35.47680664062503], + [45.97109375000005, 35.524169921875], + [45.995019531249994, 35.608105468749955], + [46.03740234375002, 35.67314453124999], + [46.180957031250074, 35.71137695312504], + [46.2625, 35.74414062500006], + [46.27343749999997, 35.77324218750002], + [46.16748046874997, 35.820556640625], + [45.94140625000003, 35.83540039062498], + [45.77636718749997, 35.82182617187499], + [45.72343750000002, 35.83666992187497], + [45.64501953125003, 35.92836914062502], + [45.561621093750006, 35.97719726562502], + [45.48378906250005, 36.008544921875], + [45.40771484375003, 36.00278320312498], + [45.36162109375002, 36.015332031249955], + [45.350878906250074, 36.05463867187498], + [45.241113281249994, 36.35595703125], + [45.20654296874997, 36.397167968749955], + [45.15527343749997, 36.407373046874994], + [45.11240234375006, 36.409277343750034], + [45.08378906250002, 36.43002929687498], + [45.053125, 36.47163085937501], + [45.03105468750002, 36.52607421875001], + [45.029394531250006, 36.59755859375002], + [45.033984375000074, 36.65888671874998], + [45.0192382812501, 36.69838867187502], + [44.98144531250003, 36.73769531250005], + [44.927832031250006, 36.76591796875002], + [44.88085937499997, 36.79931640625], + [44.79843750000006, 37.063867187499966], + [44.765429687500074, 37.135009765625], + [44.76513671875003, 37.142431640625006], + [44.76669921875006, 37.15634765624998], + [44.75830078125003, 37.21708984375002], + [44.79677734375005, 37.269775390625], + [44.79414062500004, 37.290380859375034], + [44.71513671875002, 37.35712890625004], + [44.60410156250006, 37.42373046875002], + [44.574023437500074, 37.435400390625006], + [44.573144531249994, 37.50639648437499], + [44.57714843749997, 37.56020507812502], + [44.56718750000002, 37.60864257812503], + [44.54609375000004, 37.63632812499998], + [44.5453125, 37.65815429687498], + [44.589941406250006, 37.710351562499966], + [44.56123046875004, 37.74462890625003], + [44.39775390625002, 37.82924804687502], + [44.33623046875002, 37.87177734374998], + [44.22294921875002, 37.88017578125002], + [44.211328125, 37.908056640625006], + [44.22890625, 37.967187499999966], + [44.26796875, 38.038818359375], + [44.329394531250074, 38.109277343749966], + [44.34892578125002, 38.146484375], + [44.3727539062501, 38.209716796875], + [44.38085937499997, 38.25458984374998], + [44.44960937500005, 38.317773437499994], + [44.4499023437501, 38.33422851562506], + [44.43085937500004, 38.356787109375034], + [44.37578125000002, 38.36958007812498], + [44.31962890625002, 38.374707031249955], + [44.2985351562501, 38.38627929687499], + [44.29082031250002, 38.420117187499955], + [44.29785156250003, 38.557812499999955], + [44.280175781249994, 38.64067382812496], + [44.25703125000004, 38.70063476562501], + [44.27167968750004, 38.83603515625006], + [44.23242187500003, 38.86323242187501], + [44.170800781249994, 38.934375], + [44.14453124999997, 38.994384765625], + [44.158789062500006, 39.01674804687502], + [44.171875, 39.05625], + [44.180566406249994, 39.108056640624966], + [44.17802734375002, 39.14482421874999], + [44.12128906250004, 39.18061523437501], + [44.07910156249997, 39.218310546875045], + [44.07431640625006, 39.25996093750001], + [44.057519531249994, 39.31083984374999], + [44.03378906250006, 39.35102539062498], + [44.02324218750002, 39.37744140625006], + [44.04394531249997, 39.39296875000002], + [44.12402343749997, 39.40522460937501], + [44.24042968750004, 39.39677734374999], + [44.33544921874997, 39.39604492187502], + [44.3893554687501, 39.422119140625], + [44.455957031249994, 39.666748046875], + [44.516699218750006, 39.73125], + [44.58710937500004, 39.76855468750006], + [44.725, 39.681738281250034], + [44.782128906249994, 39.65107421875001], + [44.81718750000002, 39.65043945312496], + [44.838183593750074, 39.62910156249998], + [45.00019531250004, 39.42353515625001] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Iraq", + "iso_a2": "IQ", + "iso_a3": "IRQ", + "iso_n3": "368", + "continent": "Asia" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [44.76513671875, 37.142431640625], + [44.76542968750002, 37.135009765625], + [44.7984375, 37.063867187499994], + [44.880859375, 36.79931640625], + [44.927832031250006, 36.765917968749996], + [44.9814453125, 36.737695312499994], + [45.01923828125001, 36.698388671874994], + [45.03398437500002, 36.65888671875], + [45.029394531250006, 36.597558593749994], + [45.03105468750002, 36.52607421875], + [45.053125, 36.471630859375], + [45.08378906250002, 36.430029296875], + [45.112402343750006, 36.40927734375], + [45.1552734375, 36.407373046874994], + [45.20654296875, 36.39716796875], + [45.24111328125002, 36.35595703125], + [45.35087890625002, 36.054638671875], + [45.36162109375002, 36.01533203125], + [45.40771484375, 36.002783203125], + [45.48378906250002, 36.008544921875], + [45.561621093750006, 35.977197265624994], + [45.64501953125, 35.928369140624994], + [45.72343750000002, 35.836669921875], + [45.7763671875, 35.821826171874996], + [45.94140625, 35.835400390625], + [46.16748046875, 35.820556640625], + [46.2734375, 35.773242187499996], + [46.2625, 35.744140625], + [46.18095703125002, 35.711376953125], + [46.03740234375002, 35.673144531249996], + [45.99501953125002, 35.60810546875], + [45.97109375000002, 35.524169921875], + [45.97539062500002, 35.476806640625], + [46.01064453125002, 35.4248046875], + [46.11210937500002, 35.321679687499994], + [46.117773437500006, 35.28427734375], + [46.1357421875, 35.232275390625], + [46.15468750000002, 35.196728515625], + [46.1337890625, 35.12763671875], + [46.04179687500002, 35.08017578125], + [45.9208984375, 35.028515625], + [45.678125, 34.7984375], + [45.66005859375002, 34.748779296875], + [45.66152343750002, 34.612695312499994], + [45.6375, 34.573828125], + [45.56083984375002, 34.574511718749996], + [45.50078125000002, 34.581591796874996], + [45.49775390625001, 34.53388671875], + [45.459375, 34.470361328124994], + [45.437597656250006, 34.41513671875], + [45.52685546875, 34.28466796875], + [45.54277343750002, 34.21552734375], + [45.52861328125002, 34.1525390625], + [45.44609375000002, 34.04404296875], + [45.397070312500006, 33.970849609374994], + [45.40898437500002, 33.954492187499994], + [45.473242187500006, 33.92548828125], + [45.67373046875002, 33.686669921874994], + [45.73828125, 33.602832031249996], + [45.822851562500006, 33.624804687499996], + [45.8544921875, 33.623339843749996], + [45.87939453125, 33.609765625], + [45.89472656250001, 33.58154296875], + [45.89472656250001, 33.545654296875], + [45.87324218750001, 33.491992187499996], + [45.981054687500006, 33.470117187499994], + [46.01992187500002, 33.41572265625], + [46.14589843750002, 33.229638671874994], + [46.14111328125, 33.1744140625], + [46.08076171875001, 33.0865234375], + [46.08046875000002, 33.028222656249994], + [46.09306640625002, 32.975878906249996], + [46.11279296875, 32.957666015624994], + [46.29824218750002, 32.950244140624996], + [46.377050781250006, 32.929248046874996], + [46.569921875, 32.833935546875], + [46.7890625, 32.68798828125], + [46.96855468750002, 32.568408203124996], + [47.12138671875002, 32.466601562499996], + [47.28515625, 32.474023437499994], + [47.32978515625001, 32.455517578125], + [47.37128906250001, 32.423730468749994], + [47.41816406250001, 32.340087890625], + [47.51191406250001, 32.150830078125], + [47.59150390625001, 32.08798828125], + [47.71455078125001, 31.936425781249994], + [47.82998046875002, 31.79443359375], + [47.75390625, 31.601367187499996], + [47.67949218750002, 31.400585937499997], + [47.67949218750002, 31.141503906249994], + [47.67949218750002, 31.002392578124997], + [47.83632812500002, 30.996435546875], + [48.01064453125002, 30.989794921874996], + [48.01201171875002, 30.823632812499994], + [48.01347656250002, 30.656445312499997], + [48.01494140625002, 30.465625], + [48.06611328125001, 30.457666015624994], + [48.147558593750006, 30.416845703125], + [48.18242187500002, 30.355029296874996], + [48.226171875, 30.321337890624996], + [48.27890625, 30.315820312499994], + [48.3310546875, 30.285449218749996], + [48.38261718750002, 30.230175781249997], + [48.4013671875, 30.188330078125], + [48.38759765625002, 30.159863281249997], + [48.39863281250001, 30.109619140625], + [48.4345703125, 30.03759765625], + [48.478515625, 30.003808593749994], + [48.546484375, 29.962353515624997], + [48.454199218750006, 29.9384765625], + [48.354589843750006, 29.956738281249997], + [48.141699218750006, 30.040917968749994], + [48.07275390625, 30.043212890625], + [47.982519531250006, 30.011328125], + [47.97871093750001, 29.9828125], + [47.75390625, 30.076611328124997], + [47.67275390625002, 30.095605468749994], + [47.64375, 30.097314453124994], + [47.51484375000001, 30.096484375], + [47.33134765625002, 30.0796875], + [47.223242187500006, 30.04150390625], + [47.14824218750002, 30.0009765625], + [47.114355468750006, 29.961328125], + [47.10205078125, 29.939990234374996], + [47.04365234375001, 29.822998046875], + [46.97597656250002, 29.6728515625], + [46.905859375, 29.5375], + [46.76933593750002, 29.347460937499996], + [46.69375, 29.259667968749994], + [46.53144531250001, 29.096240234374996], + [46.3564453125, 29.063671875], + [45.94970703125, 29.095849609374994], + [45.49892578125002, 29.131542968749997], + [45.05029296875, 29.16708984375], + [44.71650390625001, 29.193603515625], + [44.69082031250002, 29.20234375], + [44.36074218750002, 29.435253906249997], + [44.099609375, 29.619335937499997], + [43.77373046875002, 29.84921875], + [43.44082031250002, 30.083984375], + [43.103125, 30.322216796874997], + [42.85771484375002, 30.49521484375], + [42.55976562500001, 30.7177734375], + [42.28857421875, 30.92041015625], + [42.07441406250001, 31.080371093749996], + [41.79970703125002, 31.220361328124994], + [41.585058593750006, 31.329736328124994], + [41.2724609375, 31.489013671875], + [41.0224609375, 31.616357421874994], + [40.80839843750002, 31.725439453125], + [40.47890625000002, 31.893359375], + [40.36933593750001, 31.93896484375], + [40.02783203125, 31.995019531249994], + [39.7041015625, 32.042529296874996], + [39.36865234375, 32.091748046875], + [39.14541015625002, 32.12451171875], + [39.29277343750002, 32.24384765625], + [39.24746093750002, 32.350976562499994], + [39.14003906250002, 32.331201171874994], + [39.04140625000002, 32.3056640625], + [38.98164062500001, 32.472558593749994], + [39.05781250000001, 32.4931640625], + [38.987402343750006, 32.710693359375], + [38.91484375000002, 32.93466796875], + [38.84501953125002, 33.15087890625], + [38.773535156250006, 33.372216796874994], + [39.056738281250006, 33.514013671875], + [39.26835937500002, 33.620019531249994], + [39.564453125, 33.768359375], + [39.85, 33.911376953125], + [40.12197265625002, 34.04765625], + [40.421484375, 34.19775390625], + [40.689453125, 34.33203125], + [40.93505859375, 34.386572265625], + [40.98701171875001, 34.429052734375], + [41.09902343750002, 34.6123046875], + [41.19472656250002, 34.768994140625], + [41.19921875, 34.805322265624994], + [41.19960937500002, 35.027392578124996], + [41.21640625, 35.28818359375], + [41.24833984375002, 35.427490234375], + [41.303320312500006, 35.550634765625], + [41.354101562500006, 35.640429687499996], + [41.359375, 35.724609375], + [41.352636718750006, 35.809960937499994], + [41.30019531250002, 35.93896484375], + [41.24560546875, 36.073388671874994], + [41.25175781250002, 36.203027343749994], + [41.261816406250006, 36.2724609375], + [41.295996093750006, 36.383349609374996], + [41.35419921875001, 36.464404296874996], + [41.41679687500002, 36.5146484375], + [41.65019531250002, 36.56640625], + [41.78857421875, 36.59716796875], + [41.97402343750002, 36.7408203125], + [42.083984375, 36.826025390625], + [42.2373046875, 36.9611328125], + [42.35009765625, 37.060595703124996], + [42.35908203125001, 37.095019531249996], + [42.358984375, 37.10859375], + [42.45585937500002, 37.128710937499996], + [42.63544921875001, 37.249267578125], + [42.74111328125002, 37.3619140625], + [42.77460937500001, 37.371875], + [42.869140625, 37.334912109375], + [42.936621093750006, 37.324755859374996], + [43.09248046875001, 37.3673828125], + [43.18515625, 37.344873046874994], + [43.26308593750002, 37.31650390625], + [43.306738281250006, 37.3146484375], + [43.51582031250001, 37.24453125], + [43.56796875, 37.23583984375], + [43.67578125, 37.22724609375], + [43.83642578125, 37.223535156249994], + [43.940039062500006, 37.269287109375], + [44.01318359375, 37.313525390624996], + [44.06464843750001, 37.312451171875], + [44.11445312500001, 37.30185546875], + [44.15625, 37.282958984375], + [44.19179687500002, 37.249853515625], + [44.20839843750002, 37.20263671875], + [44.20166015625, 37.051806640624996], + [44.21748046875001, 37.011865234374994], + [44.245703125, 36.983300781249994], + [44.281835937500006, 36.97802734375], + [44.32558593750002, 37.0107421875], + [44.401953125, 37.058496093749994], + [44.49599609375002, 37.110546875], + [44.566015625, 37.158251953124996], + [44.60595703125, 37.176025390625], + [44.66933593750002, 37.173583984375], + [44.73095703125, 37.165283203125], + [44.76513671875, 37.142431640625] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Iceland", + "iso_a2": "IS", + "iso_a3": "ISL", + "iso_n3": "352", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-15.543115234374994, 66.228515625], + [-15.428466796875, 66.2248046875], + [-15.240917968749983, 66.259130859375], + [-15.162402343749989, 66.281689453125], + [-14.969970703125, 66.359716796875], + [-14.856103515624994, 66.3814453125], + [-14.6806640625, 66.376123046875], + [-14.595849609374994, 66.38154296875], + [-14.593896484374994, 66.373974609375], + [-14.70166015625, 66.34228515625], + [-14.788232421874994, 66.3314453125], + [-14.912207031249977, 66.28427734375], + [-15.029980468749983, 66.177880859375], + [-15.117382812499983, 66.125634765625], + [-15.116406249999983, 66.10244140625], + [-15.010302734374989, 66.061279296875], + [-14.89404296875, 66.037890625], + [-14.787158203124989, 66.05908203125], + [-14.740429687499983, 66.050830078125], + [-14.698193359374983, 66.02021484375], + [-14.674365234374989, 65.989892578125], + [-14.668994140624989, 65.95986328125], + [-14.688232421875, 65.89697265625], + [-14.752539062499977, 65.8337890625], + [-14.839306640624983, 65.780908203125], + [-14.827099609374983, 65.7642578125], + [-14.757519531249983, 65.7556640625], + [-14.426220703124983, 65.78994140625], + [-14.391845703125, 65.78740234375], + [-14.372802734375, 65.770361328125], + [-14.369091796874983, 65.738720703125], + [-14.350878906249989, 65.710107421875], + [-14.318164062499989, 65.68447265625], + [-14.328369140625, 65.658251953125], + [-14.473388671875, 65.575341796875], + [-14.302294921874989, 65.6275390625], + [-14.166943359374983, 65.64228515625], + [-13.935449218749994, 65.616064453125], + [-13.840722656249994, 65.5859375], + [-13.785253906249977, 65.5330078125], + [-13.705126953124989, 65.550537109375], + [-13.6703125, 65.54951171875], + [-13.617871093749983, 65.5193359375], + [-13.616015624999989, 65.487158203125], + [-13.654443359374994, 65.44130859375], + [-13.667773437499989, 65.398974609375], + [-13.7080078125, 65.381591796875], + [-13.783251953124989, 65.368994140625], + [-13.804785156249977, 65.35478515625], + [-13.771630859374994, 65.322509765625], + [-13.722851562499983, 65.290966796875], + [-13.653466796874994, 65.289501953125], + [-13.64111328125, 65.275], + [-13.639550781249994, 65.257470703125], + [-13.64892578125, 65.236962890625], + [-13.671582031249983, 65.2228515625], + [-13.707421875, 65.21513671875], + [-13.7548828125, 65.192529296875], + [-13.580810546875, 65.143017578125], + [-13.55859375, 65.124658203125], + [-13.556103515624983, 65.09765625], + [-13.569677734374977, 65.068115234375], + [-13.599316406249983, 65.0359375], + [-13.65185546875, 65.016845703125], + [-13.777246093749994, 65.013720703125], + [-13.85400390625, 64.99287109375], + [-13.827832031249983, 64.9580078125], + [-13.829833984375, 64.914013671875], + [-13.852929687499994, 64.862158203125], + [-13.95166015625, 64.783642578125], + [-14.04443359375, 64.74189453125], + [-14.13515625, 64.714794921875], + [-14.296972656249977, 64.724365234375], + [-14.385107421874977, 64.74521484375], + [-14.375292968749989, 64.67744140625], + [-14.465380859374989, 64.635693359375], + [-14.448339843749977, 64.600830078125], + [-14.4169921875, 64.58310546875], + [-14.432568359374983, 64.538330078125], + [-14.475390624999989, 64.493994140625], + [-14.547070312499983, 64.445947265625], + [-14.628222656249989, 64.415966796875], + [-14.78955078125, 64.379833984375], + [-14.927392578124994, 64.319677734375], + [-15.021582031249977, 64.2958984375], + [-15.255859375, 64.296923828125], + [-15.494970703124977, 64.258203125], + [-15.832910156249994, 64.17666015625], + [-16.060449218749994, 64.11123046875], + [-16.236035156249983, 64.03720703125], + [-16.46806640624999, 63.916357421875], + [-16.640332031249983, 63.865478515625], + [-16.739697265624983, 63.8517578125], + [-16.933056640624983, 63.84091796875], + [-17.095117187499994, 63.80810546875], + [-17.633447265624994, 63.74658203125], + [-17.81572265624999, 63.71298828125], + [-17.839257812499994, 63.682373046875], + [-17.91484374999999, 63.636376953124994], + [-17.919580078124994, 63.6197265625], + [-17.886376953124994, 63.606884765625], + [-17.880273437499994, 63.590185546875], + [-17.946923828124994, 63.5357421875], + [-18.080029296874983, 63.496337890625], + [-18.142919921874977, 63.496972656249994], + [-18.21904296874999, 63.530859375], + [-18.252197265625, 63.5296875], + [-18.265234374999977, 63.52451171875], + [-18.266015625, 63.5138671875], + [-18.222265624999977, 63.473193359375], + [-18.302832031249977, 63.454248046874994], + [-18.65361328124999, 63.406689453125], + [-19.250195312499983, 63.4419921875], + [-19.486572265625, 63.478515625], + [-19.778271484374983, 63.536572265625], + [-19.95195312499999, 63.55205078125], + [-20.198144531249994, 63.555810546874994], + [-20.40043945312499, 63.637109375], + [-20.494042968749994, 63.687353515625], + [-20.501562499999977, 63.708203125], + [-20.49101562499999, 63.731982421875], + [-20.469970703125, 63.748193359374994], + [-20.4384765625, 63.756982421874994], + [-20.371728515624994, 63.757861328125], + [-20.363037109375, 63.76494140625], + [-20.413964843749994, 63.80517578125], + [-20.46269531249999, 63.792138671874994], + [-20.592968749999983, 63.7353515625], + [-20.65092773437499, 63.73740234375], + [-20.72705078125, 63.765771484374994], + [-20.729931640624983, 63.793359375], + [-20.878759765624977, 63.80390625], + [-21.00810546874999, 63.83837890625], + [-21.136572265624977, 63.887939453125], + [-21.15576171875, 63.9068359375], + [-21.09404296874999, 63.934423828125], + [-21.10595703125, 63.93984375], + [-21.15239257812499, 63.94453125], + [-21.246240234374994, 63.935449218749994], + [-21.387597656249994, 63.872802734375], + [-21.448632812499994, 63.8583984375], + [-22.37255859375, 63.84375], + [-22.606884765624983, 63.837255859375], + [-22.652197265624977, 63.827734375], + [-22.693017578124994, 63.868505859375], + [-22.729394531249994, 63.95947265625], + [-22.74296874999999, 64.019384765625], + [-22.733642578125, 64.048388671875], + [-22.701171875, 64.083203125], + [-22.65092773437499, 64.077294921875], + [-22.60307617187499, 64.049609375], + [-22.559814453125, 64.0103515625], + [-22.51005859374999, 63.991455078125], + [-22.187597656249977, 64.039208984375], + [-22.056640625, 64.071337890625], + [-22.0009765625, 64.10185546875], + [-21.935449218749994, 64.153759765625], + [-21.865917968749983, 64.180322265625], + [-21.832763671875, 64.205419921875], + [-21.767578125, 64.28486328125], + [-21.722558593749994, 64.32177734375], + [-21.668652343749983, 64.3490234375], + [-21.60600585937499, 64.3666015625], + [-21.463330078124983, 64.379150390625], + [-21.55717773437499, 64.3978515625], + [-21.646679687499983, 64.3978515625], + [-21.95122070312499, 64.313916015625], + [-22.053369140624994, 64.313916015625], + [-22.049072265625, 64.327001953125], + [-22.006005859374994, 64.35068359375], + [-21.901269531249994, 64.3916015625], + [-21.97319335937499, 64.394677734375], + [-22.000683593749983, 64.41318359375], + [-22.003808593749994, 64.452197265625], + [-21.950341796874994, 64.514990234375], + [-21.702392578125, 64.597802734375], + [-21.616650390624983, 64.610009765625], + [-21.59062, 64.6263671875], + [-21.623144531249977, 64.63974609375], + [-21.674951171874994, 64.647705078125], + [-21.924414062499977, 64.562548828125], + [-22.10600585937499, 64.533056640625], + [-22.15996093749999, 64.538818359375], + [-22.25390625, 64.571875], + [-22.2841796875, 64.586572265625], + [-22.32470703125, 64.6244140625], + [-22.32011718749999, 64.647216796875], + [-22.233593749999983, 64.71396484375], + [-22.24755859375, 64.726904296875], + [-22.30703125, 64.73349609375], + [-22.467041015625, 64.794970703125], + [-22.720312499999977, 64.788818359375], + [-23.34697265624999, 64.824365234375], + [-23.476464843749994, 64.80927734375], + [-23.68994140625, 64.75654296875], + [-23.818994140624994, 64.73916015625], + [-23.878564453124994, 64.750634765625], + [-23.932763671874994, 64.778515625], + [-23.98198242187499, 64.81611328125], + [-24.02617187499999, 64.863427734375], + [-24.007031249999983, 64.896435546875], + [-23.924414062499977, 64.915234375], + [-23.86381835937499, 64.924169921875], + [-23.693212890624977, 64.912744140625], + [-23.485302734374983, 64.945849609375], + [-23.352685546874994, 64.952783203125], + [-23.314599609374994, 64.9580078125], + [-23.236523437499983, 64.99326171875], + [-23.197998046875, 65.0021484375], + [-23.137890624999983, 64.989794921875], + [-23.108837890624983, 64.965869140625], + [-22.899511718749977, 65.00302734375], + [-22.82768554687499, 65.0216796875], + [-22.819580078125, 65.03310546875], + [-22.7880859375, 65.046484375], + [-22.683984375, 65.0263671875], + [-22.599707031249977, 65.025732421875], + [-22.494482421874977, 65.03955078125], + [-22.308447265624977, 65.045654296875], + [-21.89213867187499, 65.048779296875], + [-21.829785156249983, 65.0791015625], + [-21.800439453124994, 65.105908203125], + [-21.76372070312499, 65.17373046875], + [-21.779980468749983, 65.1876953125], + [-22.039990234374983, 65.125244140625], + [-22.099316406249983, 65.126220703125], + [-22.400292968749994, 65.159326171875], + [-22.50908203124999, 65.19677734375], + [-22.47343749999999, 65.22685546875], + [-22.31396484375, 65.2916015625], + [-22.149316406249994, 65.3435546875], + [-21.906982421875, 65.39970703125], + [-21.850244140624994, 65.421533203125], + [-21.844384765624994, 65.44736328125], + [-22.005761718749994, 65.49345703125], + [-22.311474609374983, 65.480712890625], + [-22.38969726562499, 65.535400390625], + [-22.64360351562499, 65.5677734375], + [-22.812646484374994, 65.547412109375], + [-22.902490234374994, 65.58046875], + [-23.1220703125, 65.534765625], + [-23.60454101562499, 65.468603515625], + [-23.796484374999977, 65.42275390625], + [-23.89990234375, 65.407568359375], + [-24.018994140624983, 65.44501953125], + [-24.223974609374977, 65.48720703125], + [-24.454785156249983, 65.500341796875], + [-24.475683593749977, 65.5251953125], + [-24.341064453125, 65.601220703125], + [-24.248925781249994, 65.614990234375], + [-24.156103515624977, 65.6080078125], + [-23.97900390625, 65.55498046875], + [-23.85673828124999, 65.53837890625], + [-24.010009765625, 65.6162109375], + [-24.006005859374994, 65.646142578125], + [-24.017578125, 65.69091796875], + [-24.065039062499977, 65.71015625], + [-24.111914062499977, 65.759716796875], + [-24.092626953124977, 65.77646484375], + [-24.032421874999983, 65.78232421875], + [-23.909082031249994, 65.765576171875], + [-23.615917968749983, 65.67958984375], + [-23.47197265624999, 65.69482421875], + [-23.39296875, 65.726513671875], + [-23.285351562499983, 65.75], + [-23.31591796875, 65.762255859375], + [-23.569287109374983, 65.763720703125], + [-23.704736328124994, 65.781201171875], + [-23.77324218749999, 65.80634765625], + [-23.832617187499977, 65.84921875], + [-23.811718749999983, 65.868896484375], + [-23.741308593749977, 65.8845703125], + [-23.52495117187499, 65.880029296875], + [-23.66748046875, 65.954296875], + [-23.766552734374983, 65.99697265625], + [-23.77734375, 66.017578125], + [-23.77055664062499, 66.04345703125], + [-23.75712890624999, 66.060791015625], + [-23.737158203124977, 66.06943359375], + [-23.488867187499977, 66.02607421875], + [-23.434472656249994, 66.02421875], + [-23.48466796874999, 66.05224609375], + [-23.59355468749999, 66.093408203125], + [-23.598535156249994, 66.108837890625], + [-23.552636718749994, 66.12158203125], + [-23.529980468749983, 66.14501953125], + [-23.527929687499977, 66.164404296875], + [-23.452539062499994, 66.181005859375], + [-23.376562499999977, 66.18173828125], + [-23.3, 66.1666015625], + [-23.06254882812499, 66.08623046875], + [-23.028515624999983, 66.063671875], + [-23.017285156249983, 66.033935546875], + [-23.028906249999977, 65.9970703125], + [-23.018994140624983, 65.98212890625], + [-22.926220703124983, 65.99482421875], + [-22.852246093749983, 65.979296875], + [-22.815332031249994, 65.98349609375], + [-22.723339843749983, 66.039013671875], + [-22.659863281249983, 66.025927734375], + [-22.62158203125, 65.999951171875], + [-22.609716796874977, 65.97646484375], + [-22.60405273437499, 65.944189453125], + [-22.620214843749977, 65.876953125], + [-22.61601562499999, 65.86748046875], + [-22.55156249999999, 65.905419921875], + [-22.44169921874999, 65.90830078125], + [-22.42753906249999, 65.927392578125], + [-22.42421875, 65.998095703125], + [-22.43315429687499, 66.057666015625], + [-22.4453125, 66.07001953125], + [-22.80644531249999, 66.152587890625], + [-22.869238281249977, 66.1720703125], + [-22.947900390624994, 66.212744140625], + [-22.931982421874977, 66.233203125], + [-22.86162109374999, 66.25146484375], + [-22.755517578124994, 66.258740234375], + [-22.50937, 66.257763671875], + [-22.48442382812499, 66.26630859375], + [-22.532128906249994, 66.287744140625], + [-22.646093749999977, 66.3015625], + [-22.672753906249994, 66.313916015625], + [-22.686230468749983, 66.3376953125], + [-22.82133789062499, 66.32470703125], + [-22.972021484374977, 66.324169921875], + [-23.116943359375, 66.338720703125], + [-23.11992187499999, 66.3572265625], + [-23.062695312499983, 66.384375], + [-22.9443359375, 66.429443359375], + [-22.88920898437499, 66.440625], + [-22.723730468749977, 66.432763671875], + [-22.559326171875, 66.44541015625], + [-22.426123046874977, 66.430126953125], + [-22.320458984374994, 66.385498046875], + [-22.17021484374999, 66.30712890625], + [-21.966992187499983, 66.256982421875], + [-21.948388671874994, 66.241259765625], + [-21.840234375, 66.2001953125], + [-21.62529296874999, 66.089697265625], + [-21.406884765624994, 66.0255859375], + [-21.39677734374999, 66.00927734375], + [-21.432714843749977, 65.990087890625], + [-21.51665039062499, 65.967578125], + [-21.497460937499994, 65.955078125], + [-21.387792968749977, 65.93876953125], + [-21.308789062499983, 65.8953125], + [-21.303466796875, 65.87646484375], + [-21.374902343749994, 65.74189453125], + [-21.412841796875, 65.713330078125], + [-21.456640624999977, 65.6982421875], + [-21.658447265625, 65.723583984375], + [-21.6103515625, 65.68076171875], + [-21.466259765624983, 65.63515625], + [-21.43364257812499, 65.60966796875], + [-21.45512695312499, 65.58466796875], + [-21.439404296874983, 65.57890625], + [-21.386621093749994, 65.592431640625], + [-21.36474609375, 65.57822265625], + [-21.373876953124977, 65.536376953125], + [-21.396337890624977, 65.50166015625], + [-21.43217773437499, 65.474072265625], + [-21.421875, 65.462158203125], + [-21.365478515625, 65.4658203125], + [-21.31254882812499, 65.45869140625], + [-21.22998046875, 65.42060546875], + [-21.162988281249994, 65.304248046875], + [-21.12968749999999, 65.2666015625], + [-21.105712890625, 65.3], + [-21.075585937499994, 65.3849609375], + [-21.047314453124983, 65.428369140625], + [-21.020849609374977, 65.4302734375], + [-20.997998046874983, 65.44453125], + [-20.978857421874977, 65.47119140625], + [-20.93974609374999, 65.565185546875], + [-20.804345703124994, 65.63642578125], + [-20.739697265624983, 65.658251953125], + [-20.678955078125, 65.6630859375], + [-20.6494140625, 65.65419921875], + [-20.54814453124999, 65.5794921875], + [-20.486523437499983, 65.566943359375], + [-20.454833984375, 65.571044921875], + [-20.411523437499994, 65.621728515625], + [-20.356640624999983, 65.71904296875], + [-20.344091796874977, 65.827734375], + [-20.373925781249994, 65.947705078125], + [-20.356591796874994, 66.033251953125], + [-20.292138671874994, 66.084375], + [-20.20751953125, 66.10009765625], + [-20.102685546874994, 66.08046875], + [-20.026074218749983, 66.049267578125], + [-19.874755859375, 65.930126953125], + [-19.752636718749983, 65.8677734375], + [-19.647851562499994, 65.80078125], + [-19.59355468749999, 65.779052734375], + [-19.489697265624983, 65.76806640625], + [-19.461816406249994, 65.77236328125], + [-19.443261718749994, 65.787841796875], + [-19.43388671874999, 65.814453125], + [-19.45625, 65.984912109375], + [-19.42705078124999, 66.03798828125], + [-19.382958984374994, 66.07568359375], + [-19.1953125, 66.097900390625], + [-19.093212890624983, 66.121533203125], + [-18.99375, 66.1603515625], + [-18.911328124999983, 66.18115234375], + [-18.845898437499983, 66.183935546875], + [-18.777539062499983, 66.168798828125], + [-18.706201171874994, 66.1357421875], + [-18.594921874999983, 66.071337890625], + [-18.454931640624977, 65.96455078125], + [-18.276953124999977, 65.884716796875], + [-18.18364257812499, 65.7580078125], + [-18.163720703124994, 65.736572265625], + [-18.141943359374977, 65.73408203125], + [-18.118408203125, 65.750537109375], + [-18.10332031249999, 65.77392578125], + [-18.099023437499994, 65.8302734375], + [-18.148876953124983, 65.905029296875], + [-18.315332031249994, 66.0931640625], + [-18.318212890624977, 66.12880859375], + [-18.29716796874999, 66.157421875], + [-18.179882812499983, 66.160546875], + [-17.906982421875, 66.143310546875], + [-17.81982421875, 66.114111328125], + [-17.63432617187499, 65.999169921875], + [-17.582226562499983, 65.97138671875], + [-17.550439453124994, 65.964404296875], + [-17.539013671874983, 65.9783203125], + [-17.467041015625, 65.999658203125], + [-17.417236328125, 66.025537109375], + [-17.33427734374999, 66.0888671875], + [-17.153027343749983, 66.20283203125], + [-17.115380859374994, 66.206201171875], + [-17.062451171874983, 66.197216796875], + [-16.96953124999999, 66.1673828125], + [-16.925439453124994, 66.14345703125], + [-16.838037109374994, 66.125244140625], + [-16.7484375, 66.131640625], + [-16.624755859375, 66.17158203125], + [-16.485009765624994, 66.195947265625], + [-16.437109374999977, 66.2525390625], + [-16.428076171874977, 66.278369140625], + [-16.540673828124994, 66.446728515625], + [-16.493359374999983, 66.48115234375], + [-16.24931640624999, 66.522900390625], + [-16.035888671875, 66.52607421875], + [-15.985400390624989, 66.5146484375], + [-15.850927734374977, 66.432861328125], + [-15.759765625, 66.39169921875], + [-15.713769531249994, 66.35859375], + [-15.702783203124994, 66.2857421875], + [-15.647363281249994, 66.2587890625], + [-15.543115234374994, 66.228515625] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Israel", + "iso_a2": "IL", + "iso_a3": "ISR", + "iso_n3": "376", + "continent": "Asia" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [35.78730468750001, 32.734912109374996], + [35.734472656250006, 32.72890625], + [35.61123046875002, 32.682080078125], + [35.59453125000002, 32.668017578124996], + [35.572851562500006, 32.640869140625], + [35.56904296875001, 32.619873046875], + [35.55146484375001, 32.3955078125], + [35.484375, 32.401660156249996], + [35.40263671875002, 32.450634765625], + [35.38671875, 32.493017578125], + [35.36210937500002, 32.507470703124994], + [35.303808593750006, 32.512939453125], + [35.19326171875002, 32.534423828125], + [35.065039062500006, 32.46044921875], + [35.01054687500002, 32.338183593749996], + [34.99951171875, 32.281054687499996], + [34.95595703125002, 32.1609375], + [34.97138671875001, 32.087109375], + [34.97880859375002, 31.991601562499994], + [34.98974609375, 31.91328125], + [34.97832031250002, 31.86640625], + [34.95380859375001, 31.841259765624997], + [34.96113281250001, 31.82333984375], + [34.983007812500006, 31.816796875], + [35.05322265625, 31.837939453124996], + [35.12714843750001, 31.816748046875], + [35.19804687500002, 31.776318359374997], + [35.203710937500006, 31.75], + [35.153417968750006, 31.73447265625], + [35.03466796875, 31.673242187499994], + [34.95097656250002, 31.602294921875], + [34.92919921875, 31.536572265624997], + [34.87275390625001, 31.396875], + [34.88046875, 31.3681640625], + [34.9078125, 31.351318359375], + [35.101171875, 31.3662109375], + [35.27666015625002, 31.422802734374997], + [35.40869140625, 31.48291015625], + [35.45058593750002, 31.479296875], + [35.4228515625, 31.325390625], + [35.42353515625001, 31.324853515624994], + [35.40068359375002, 31.230517578124996], + [35.40966796875, 31.214453125], + [35.43925781250002, 31.132421875], + [35.38300781250001, 30.982275390625], + [35.32011718750002, 30.860205078125], + [35.2978515625, 30.80224609375], + [35.23662109375002, 30.673486328124994], + [35.17402343750001, 30.52392578125], + [35.140625, 30.4208984375], + [35.14814453125001, 30.384326171874996], + [35.13261718750002, 30.1953125], + [35.1416015625, 30.14169921875], + [35.06816406250002, 29.977880859375], + [35.05341796875001, 29.896923828124997], + [35.02392578125, 29.787060546874997], + [34.97343750000002, 29.555029296875], + [34.904296875, 29.47734375], + [34.86982421875001, 29.563916015624997], + [34.791113281250006, 29.812109375], + [34.73505859375001, 29.98203125], + [34.65859375000002, 30.191455078124996], + [34.52968750000002, 30.446044921875], + [34.51777343750001, 30.507373046874996], + [34.48994140625001, 30.5962890625], + [34.400976562500006, 30.827832031249997], + [34.32851562500002, 30.995019531249994], + [34.24531250000001, 31.208300781249996], + [34.34833984375001, 31.292919921874997], + [34.350195312500006, 31.362744140624997], + [34.52558593750001, 31.525634765625], + [34.52412109375001, 31.541650390624994], + [34.47734375000002, 31.584863281249994], + [34.483984375, 31.59228515625], + [34.67841796875001, 31.895703125], + [34.803808593750006, 32.196337890624996], + [34.921875, 32.6140625], + [35.005859375, 32.826611328125], + [35.07705078125002, 32.9671875], + [35.10859375000001, 33.08369140625], + [35.22333984375001, 33.0919921875], + [35.30888671875002, 33.079541015625], + [35.411230468750006, 33.07568359375], + [35.4931640625, 33.119482421875], + [35.53251953125002, 33.25048828125], + [35.57929687500001, 33.271484375], + [35.60292968750002, 33.240625], + [35.62724609375002, 33.275048828124994], + [35.734472656250006, 33.3326171875], + [35.7875, 33.369775390624994], + [35.84072265625002, 33.415673828124994], + [35.869140625, 33.43173828125], + [35.8515625, 33.370458984375], + [35.83710937500001, 33.330517578125], + [35.837011718750006, 33.278222656249994], + [35.85878906250002, 33.249560546874996], + [35.88847656250002, 33.19248046875], + [35.90664062500002, 33.135693359375], + [35.86806640625002, 33.08857421875], + [35.87177734375001, 33.039355468749996], + [35.88203125000001, 32.998095703124996], + [35.91347656250002, 32.949609375], + [35.85683593750002, 32.862353515624996], + [35.80146484375001, 32.78232421875], + [35.78730468750001, 32.734912109374996] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Italy", + "iso_a2": "IT", + "iso_a3": "ITA", + "iso_n3": "380", + "continent": "Europe" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [12.051269531250028, 36.75703124999998], + [12.003320312500023, 36.745996093749966], + [11.940625, 36.780371093750034], + [11.93642578125008, 36.82861328125], + [11.948046875000045, 36.84306640625002], + [12.024218750000017, 36.82094726562505], + [12.048046874999983, 36.77636718750003], + [12.051269531250028, 36.75703124999998] + ] + ], + [ + [ + [15.576562500000051, 38.220312500000034], + [15.508886718750034, 38.106640624999955], + [15.475683593750006, 38.06293945312504], + [15.234472656249977, 37.78481445312502], + [15.206835937500045, 37.720556640625006], + [15.189843750000051, 37.65073242187498], + [15.164843750000017, 37.589550781249955], + [15.131054687500068, 37.53188476562502], + [15.099511718750023, 37.45859375], + [15.10566406250004, 37.37548828125006], + [15.116992187500045, 37.334716796875], + [15.14599609375, 37.308007812499966], + [15.193652343750017, 37.282861328124994], + [15.230273437500017, 37.24433593749998], + [15.174121093750045, 37.20917968750001], + [15.23603515625004, 37.138720703125045], + [15.288671875, 37.09692382812506], + [15.295703125000017, 37.05517578124997], + [15.294531250000063, 37.01328125000006], + [15.185156250000063, 36.93481445312497], + [15.142382812500045, 36.89160156250006], + [15.115820312500063, 36.83925781250005], + [15.104296875000017, 36.78525390625006], + [15.116308593750063, 36.736474609374966], + [15.112597656250017, 36.687841796875006], + [15.002441406250057, 36.69389648437502], + [14.8896484375, 36.723535156249994], + [14.775976562500006, 36.71040039062498], + [14.614355468750034, 36.7666015625], + [14.555468750000045, 36.77675781250002], + [14.501855468750023, 36.798681640625034], + [14.367285156250063, 36.97285156249998], + [14.259082031250045, 37.04643554687499], + [14.142968750000023, 37.103662109374994], + [14.024316406249994, 37.10712890624998], + [13.90546875000004, 37.10063476562502], + [13.800585937500074, 37.135888671874994], + [13.587109375000011, 37.25415039062503], + [13.360937500000034, 37.348730468750006], + [13.264941406250017, 37.410351562499955], + [13.221093750000051, 37.45180664062505], + [13.169921875000028, 37.47929687499996], + [13.040332031249989, 37.50654296875001], + [12.924121093750045, 37.57050781249998], + [12.871191406250006, 37.57519531250006], + [12.75732421875, 37.56738281249997], + [12.699023437500017, 37.57182617187499], + [12.640234375000034, 37.594335937500034], + [12.52675781250008, 37.66953125], + [12.454394531249989, 37.773779296875006], + [12.435546874999972, 37.819775390624955], + [12.486816406250028, 37.93872070312503], + [12.547656250000074, 38.05292968750004], + [12.601660156250063, 38.0849609375], + [12.664355468750045, 38.10791015625006], + [12.702343750000068, 38.141699218750006], + [12.734375, 38.18305664062498], + [12.850683593750006, 38.063720703125], + [12.902734375000023, 38.03486328124998], + [12.955468750000023, 38.04130859374999], + [13.049023437499983, 38.08408203124998], + [13.056835937500068, 38.13090820312502], + [13.159960937500045, 38.19033203125005], + [13.291113281250034, 38.19145507812502], + [13.351660156250006, 38.180517578125006], + [13.383496093750011, 38.12680664062498], + [13.43349609375008, 38.110253906249994], + [13.491308593750034, 38.103125], + [13.68154296875008, 38.00073242187497], + [13.73486328125, 37.98403320312502], + [13.788867187499989, 37.981201171875], + [13.936621093749977, 38.02416992187503], + [14.05, 38.04052734375], + [14.287695312500006, 38.01684570312506], + [14.416210937499983, 38.04257812500006], + [14.505957031250063, 38.045507812500034], + [14.636718750000057, 38.085058593750006], + [14.737207031250023, 38.15078125], + [14.789648437500034, 38.1669921875], + [14.84589843750004, 38.17167968749999], + [14.981933593750057, 38.167578125000034], + [15.11875, 38.15273437500002], + [15.176074218750074, 38.168066406250034], + [15.22402343750008, 38.211035156250006], + [15.279589843750017, 38.23037109375002], + [15.340722656250051, 38.217333984375045], + [15.498730468750011, 38.290869140625006], + [15.568359375000057, 38.29589843749997], + [15.63466796875008, 38.26757812499997], + [15.576562500000051, 38.220312500000034] + ] + ], + [ + [ + [8.478906250000023, 39.067529296874966], + [8.421484375000034, 38.968652343749994], + [8.360937500000063, 39.038671875000034], + [8.358593750000011, 39.09877929687502], + [8.366796875, 39.115917968749955], + [8.440625, 39.090625], + [8.478906250000023, 39.067529296874966] + ] + ], + [ + [ + [13.938281250000074, 40.70561523437499], + [13.893652343750034, 40.69697265625001], + [13.867675781250057, 40.70874023437503], + [13.853515625000028, 40.72407226562504], + [13.871191406250063, 40.761816406250006], + [13.96210937500004, 40.73940429687505], + [13.960839843750051, 40.718164062499994], + [13.938281250000074, 40.70561523437499] + ] + ], + [ + [ + [8.28603515625008, 41.03984375], + [8.252734375000045, 40.99414062499997], + [8.205664062500034, 40.99746093750005], + [8.224023437500051, 41.03129882812502], + [8.267382812499989, 41.09912109375006], + [8.320214843750023, 41.12187], + [8.34375, 41.10161132812502], + [8.318945312500034, 41.06274414062503], + [8.28603515625008, 41.03984375] + ] + ], + [ + [ + [9.632031250000011, 40.88203124999998], + [9.68203125000008, 40.818115234375], + [9.794335937500051, 40.55620117187502], + [9.805273437500063, 40.499560546875045], + [9.7828125, 40.441503906250006], + [9.754199218750045, 40.400292968749966], + [9.642968750000023, 40.268408203125006], + [9.659472656250017, 40.15922851562499], + [9.700781249999977, 40.091796875], + [9.70673828125004, 40.017041015624955], + [9.68603515625, 39.92436523437499], + [9.616992187500074, 39.354394531249966], + [9.58359375, 39.25356445312502], + [9.5625, 39.16601562500006], + [9.486328125, 39.139550781249994], + [9.388085937500051, 39.16752929687499], + [9.264160156250028, 39.216796875], + [9.206933593750023, 39.21381835937501], + [9.14931640625008, 39.196972656249955], + [9.101757812500068, 39.211279296875034], + [9.056347656250068, 39.23916015625002], + [9.02265625000004, 39.04326171874999], + [8.966601562500074, 38.963720703125034], + [8.881347656250028, 38.91289062499999], + [8.801171875000023, 38.90966796875006], + [8.718554687500074, 38.926708984374955], + [8.648535156250034, 38.92656250000002], + [8.59541015625004, 38.96430664062498], + [8.553320312499977, 39.03032226562502], + [8.48623046875008, 39.11049804687502], + [8.418164062500068, 39.205712890624966], + [8.410742187499977, 39.29179687500002], + [8.399121093750011, 39.48159179687502], + [8.418652343750011, 39.523046875000034], + [8.447070312500017, 39.56279296874996], + [8.461035156250006, 39.64770507812503], + [8.451171875000057, 39.7216796875], + [8.471093750000023, 39.74809570312496], + [8.510742187500028, 39.7216796875], + [8.540527343750057, 39.731591796874994], + [8.538671875000034, 39.76967773437502], + [8.547753906250023, 39.83920898437506], + [8.495898437500017, 39.89746093750003], + [8.4078125, 39.91723632812497], + [8.399316406250051, 39.97817382812505], + [8.40859375000008, 40.03764648437499], + [8.455078125000057, 40.077587890624955], + [8.470800781250063, 40.130712890625034], + [8.471289062500063, 40.29267578124998], + [8.409179687500028, 40.35234375], + [8.385351562500063, 40.44267578124999], + [8.353222656249983, 40.50053710937496], + [8.295507812500034, 40.55864257812499], + [8.230273437500074, 40.60595703125003], + [8.189941406250028, 40.651611328125], + [8.18085937500004, 40.77104492187502], + [8.203808593750011, 40.87070312500006], + [8.22421875, 40.91333007812503], + [8.245214843750006, 40.90703124999999], + [8.31015625, 40.857519531250034], + [8.36328125, 40.846337890624994], + [8.468457031250011, 40.834326171875034], + [8.571875, 40.85019531250006], + [8.698925781250068, 40.895263671875], + [8.821191406250023, 40.94990234375004], + [8.998144531250006, 41.11035156250003], + [9.107226562500045, 41.142919921875006], + [9.163085937500057, 41.18515625], + [9.182128906250028, 41.24218749999997], + [9.228417968750023, 41.257080078125], + [9.283007812500045, 41.20166015624997], + [9.350781250000011, 41.19589843750006], + [9.455175781250034, 41.15014648437497], + [9.500195312500068, 41.10634765625002], + [9.538769531250011, 41.05366210937504], + [9.57568359375, 41.03051757812503], + [9.615332031249977, 41.01728515624998], + [9.621191406250034, 41.00488281250003], + [9.589746093750023, 40.99248046874999], + [9.553710937500057, 40.93212890625006], + [9.574023437500017, 40.91474609374998], + [9.632031250000011, 40.88203124999998] + ] + ], + [ + [ + [10.395117187500034, 42.85815429687503], + [10.428320312500063, 42.819189453125006], + [10.432226562500063, 42.79658203125001], + [10.409960937500045, 42.77099609375006], + [10.419335937499994, 42.71318359374999], + [10.335644531250011, 42.761132812499994], + [10.208984375000057, 42.736914062500034], + [10.13125, 42.742041015625006], + [10.10976562500008, 42.785058593749966], + [10.127539062500063, 42.81030273437497], + [10.248242187500068, 42.815771484375006], + [10.285742187500063, 42.82807617187504], + [10.358984375000063, 42.82231445312502], + [10.395117187500034, 42.85815429687503] + ] + ], + [ + [ + [12.130761718750051, 46.984765625], + [12.154101562500017, 46.93525390625004], + [12.267968750000023, 46.83588867187504], + [12.330078125, 46.75981445312499], + [12.388281250000034, 46.70263671874997], + [12.479199218749983, 46.672509765624966], + [12.5986328125, 46.654101562500045], + [12.699804687500006, 46.64746093750003], + [12.805566406250051, 46.625878906249966], + [13.16875, 46.572656249999966], + [13.3515625, 46.55791015624999], + [13.490039062500045, 46.55556640625002], + [13.7, 46.52026367187503], + [13.679687500000057, 46.46289062499997], + [13.63710937500008, 46.44853515624999], + [13.563281250000045, 46.41508789062502], + [13.478515625, 46.36918945312499], + [13.399511718749977, 46.31752929687502], + [13.378222656250017, 46.26162109375002], + [13.399609375000011, 46.224951171875006], + [13.420996093750006, 46.212304687499994], + [13.449804687500034, 46.223535156249994], + [13.491796875000063, 46.21660156249999], + [13.544726562499989, 46.19658203124999], + [13.63251953125004, 46.17705078125002], + [13.634960937499983, 46.15776367187499], + [13.61660156250008, 46.133105468750045], + [13.54804687500004, 46.08911132812503], + [13.486425781250034, 46.03955078124997], + [13.480273437500017, 46.00922851562501], + [13.487695312500023, 45.987109375000045], + [13.509179687500051, 45.973779296874994], + [13.6005859375, 45.97978515624996], + [13.613964843750068, 45.961669921875], + [13.569628906250017, 45.834130859374966], + [13.583398437500051, 45.81235351562506], + [13.663476562500023, 45.7919921875], + [13.7216796875, 45.761279296875045], + [13.831152343750006, 45.680419921875], + [13.874707031250068, 45.61484375000006], + [13.8447265625, 45.592871093750006], + [13.775976562500034, 45.58198242187501], + [13.719824218750063, 45.58759765625001], + [13.783300781250006, 45.62724609375002], + [13.628320312500051, 45.77094726562498], + [13.558203124999977, 45.77070312500001], + [13.465136718750045, 45.70996093749997], + [13.206347656250074, 45.771386718749966], + [13.15673828125, 45.74658203124997], + [13.1201171875, 45.69790039062502], + [13.0302734375, 45.6375], + [12.903027343750011, 45.61079101562504], + [12.761230468749972, 45.54428710937498], + [12.61171875000008, 45.497216796874994], + [12.49755859375, 45.46166992187503], + [12.43212890625, 45.467919921874966], + [12.536132812500057, 45.54492187500003], + [12.491796875000063, 45.54628906250002], + [12.353808593750017, 45.49199218749999], + [12.27431640625008, 45.44604492187503], + [12.248828125000045, 45.36884765625004], + [12.225683593750034, 45.24150390625002], + [12.28632812500004, 45.20771484374998], + [12.39248046875008, 45.03979492187506], + [12.523437500000028, 44.96796874999998], + [12.49794921875008, 44.89941406250006], + [12.463574218750011, 44.84521484375003], + [12.384472656250068, 44.79833984374997], + [12.31904296875004, 44.833105468750034], + [12.278906250000034, 44.832226562499955], + [12.248339843750045, 44.72250976562498], + [12.304980468750017, 44.42944335937506], + [12.396289062500074, 44.223876953125], + [12.486816406250028, 44.13422851562504], + [12.691113281250011, 43.994726562500034], + [12.907031250000017, 43.92119140624999], + [13.29531250000008, 43.686083984375045], + [13.508203125000023, 43.61166992187498], + [13.56416015625004, 43.57128906250003], + [13.693261718750051, 43.389892578125], + [13.804687500000028, 43.180371093749955], + [13.924902343750006, 42.85156250000003], + [14.010449218750011, 42.68955078125006], + [14.182714843750034, 42.50644531250006], + [14.54072265625004, 42.24428710937502], + [14.86611328125008, 42.05253906249996], + [15.16875, 41.93403320312498], + [15.404980468749983, 41.913232421874994], + [15.96406250000004, 41.939453125], + [16.0615234375, 41.928125], + [16.164648437500034, 41.89619140624998], + [16.189160156250068, 41.814013671875045], + [16.15126953125008, 41.75849609375001], + [16.03369140625, 41.70078125000006], + [15.913769531250011, 41.62084960937503], + [15.900488281250034, 41.51206054687498], + [16.01259765625005, 41.435400390625006], + [16.551855468750063, 41.232031250000034], + [17.10341796875008, 41.062158203124994], + [17.275195312500074, 40.975439453125006], + [17.474218750000034, 40.84057617187506], + [17.954980468749994, 40.65517578125002], + [18.03613281250003, 40.56494140625003], + [18.328222656250006, 40.370849609375], + [18.460644531249983, 40.221044921875034], + [18.485839843750057, 40.104833984375006], + [18.42255859375004, 39.986865234375045], + [18.39345703125008, 39.903613281250045], + [18.34375, 39.82138671874998], + [18.219335937500034, 39.85253906250003], + [18.077929687500017, 39.93696289062498], + [17.865039062500074, 40.28017578125002], + [17.476171875000063, 40.31494140625], + [17.395800781250045, 40.340234375], + [17.25771484375005, 40.399072265624994], + [17.24941406250005, 40.437890625], + [17.21533203125003, 40.486425781250034], + [17.179980468750045, 40.50278320312498], + [17.03125, 40.51347656250002], + [16.92822265625, 40.45805664062502], + [16.80703125000008, 40.32646484375002], + [16.669628906250068, 40.13720703125003], + [16.52998046875004, 39.85966796874996], + [16.521875, 39.74755859375003], + [16.597753906249977, 39.63891601562503], + [16.824316406250063, 39.57832031250001], + [16.999218750000068, 39.48159179687502], + [17.114550781250017, 39.38061523437497], + [17.12294921875005, 39.136572265625006], + [17.174609375000017, 38.998095703125045], + [17.09853515625005, 38.919335937499966], + [16.951464843750017, 38.93979492187506], + [16.755468750000063, 38.88969726562499], + [16.61669921875003, 38.800146484375034], + [16.55898437500008, 38.714794921874955], + [16.57421875, 38.493554687499994], + [16.54560546875001, 38.40908203125002], + [16.28242187500004, 38.249560546875045], + [16.144140625000034, 38.08637695312501], + [16.10976562500005, 38.01865234374998], + [16.05683593750001, 37.941845703124955], + [15.72451171875008, 37.93911132812502], + [15.645800781250017, 38.034228515625045], + [15.64306640625, 38.175390625000034], + [15.7001953125, 38.26230468750006], + [15.822363281250034, 38.302978515625], + [15.904785156250028, 38.483496093750006], + [15.87890625, 38.61391601562502], + [15.926953125000011, 38.67172851562498], + [15.97236328125004, 38.712597656249955], + [16.065527343750006, 38.736425781250006], + [16.19677734375, 38.759228515624955], + [16.20996093750003, 38.94111328124998], + [16.10742187500003, 39.02382812500002], + [16.071484375000068, 39.13945312499996], + [16.02363281250001, 39.35361328124998], + [15.85439453125008, 39.62651367187499], + [15.763671875000057, 39.870068359374955], + [15.692773437499994, 39.99018554687501], + [15.585156250000011, 40.05283203125006], + [15.390917968750074, 40.05214843750002], + [15.294531250000063, 40.07001953125001], + [14.95087890625004, 40.23901367187497], + [14.92695312500004, 40.26474609374998], + [14.929101562500023, 40.30957031250006], + [14.986132812500017, 40.377490234375045], + [14.94765625000008, 40.469335937500006], + [14.90693359375004, 40.556054687499994], + [14.839550781250011, 40.629980468750034], + [14.765722656250063, 40.66840820312498], + [14.611230468750023, 40.64477539062503], + [14.556933593750074, 40.62641601562504], + [14.459375, 40.632714843749994], + [14.382714843750023, 40.59985351562503], + [14.339941406250006, 40.59882812500001], + [14.460546875000063, 40.72871093750001], + [14.428125, 40.75932617187502], + [14.308886718750074, 40.81264648437505], + [14.147167968750068, 40.820703125], + [14.102343749999989, 40.82714843749997], + [14.07587890625004, 40.79394531250006], + [14.04433593750008, 40.81225585937506], + [14.047656250000045, 40.87031249999998], + [13.859765625000051, 41.129980468750034], + [13.733398437500057, 41.23564453124999], + [13.669726562500074, 41.254492187500006], + [13.554785156250006, 41.23217773437497], + [13.361914062500063, 41.27851562500001], + [13.246875, 41.28886718749999], + [13.183398437500017, 41.277685546875006], + [13.088671875000074, 41.243847656249955], + [13.041015625000057, 41.26621093749998], + [13.024218750000017, 41.30092773437505], + [12.849218750000063, 41.40874023437499], + [12.630859374999972, 41.469677734374955], + [12.205664062500034, 41.81264648437502], + [12.075292968750034, 41.94086914062504], + [11.807031250000023, 42.08203125000003], + [11.637304687500063, 42.287548828124955], + [11.498437500000023, 42.36293945312505], + [11.296289062500051, 42.42329101562498], + [11.249707031250068, 42.415722656249955], + [11.188867187500023, 42.39311523437499], + [11.141210937499977, 42.38989257812503], + [11.103222656250068, 42.41660156250006], + [11.141796875000011, 42.44409179687497], + [11.184765625000068, 42.45659179687502], + [11.167773437500074, 42.53515625000006], + [10.937792968750017, 42.738720703124955], + [10.803125, 42.80429687499998], + [10.765136718750028, 42.844677734374955], + [10.737109374999989, 42.89995117187502], + [10.708398437500023, 42.93632812499999], + [10.644628906249977, 42.95717773437505], + [10.590234375, 42.95361328125003], + [10.514843750000011, 42.96752929687503], + [10.517285156250068, 43.06513671875001], + [10.532324218750034, 43.14013671875003], + [10.520800781250074, 43.20380859375001], + [10.447558593750074, 43.371191406250006], + [10.32050781250004, 43.513085937499966], + [10.245800781250011, 43.85209960937502], + [10.188085937500063, 43.947509765625], + [10.047656250000045, 44.01997070312504], + [9.73085937500008, 44.10117187500006], + [9.289355468750017, 44.319238281249994], + [9.195996093750011, 44.32299804687503], + [8.930371093750068, 44.40776367187499], + [8.76582031250004, 44.42231445312501], + [8.551953125000068, 44.346142578124955], + [8.292382812500023, 44.13652343749996], + [8.081640625, 43.91894531250006], + [8.004980468750006, 43.87675781249999], + [7.73330078125008, 43.80258789062498], + [7.4931640625, 43.767138671875045], + [7.490527343750017, 43.82294921875004], + [7.482031250000063, 43.864892578124966], + [7.522656250000068, 43.911083984374955], + [7.589648437500045, 43.965429687500034], + [7.651464843750034, 44.03364257812498], + [7.677148437500023, 44.08315429687502], + [7.665039062500028, 44.11601562499996], + [7.637207031250057, 44.16484375], + [7.599414062500074, 44.168359374999966], + [7.370898437500074, 44.12739257812498], + [7.318554687500068, 44.13798828125002], + [7.149414062500057, 44.20170898437502], + [6.96728515625, 44.280029296875], + [6.900195312499989, 44.33574218749996], + [6.874804687500074, 44.39204101562498], + [6.893847656250045, 44.42817382812498], + [6.87861328125004, 44.46328125000002], + [6.842968750000068, 44.51069335937498], + [6.875195312500068, 44.564550781250034], + [6.931933593750074, 44.631640625000045], + [6.96035156250008, 44.677148437499966], + [7.007910156250006, 44.68896484375], + [7.030664062500023, 44.71669921875005], + [6.99267578125, 44.82729492187502], + [6.972851562500068, 44.84501953124999], + [6.93984375000008, 44.858740234375034], + [6.889355468750011, 44.86030273437498], + [6.801074218750045, 44.883154296875034], + [6.738183593750023, 44.92138671875], + [6.724707031250034, 44.972998046875034], + [6.69140625, 45.02260742187502], + [6.634765625000028, 45.06816406249996], + [6.627734375000017, 45.11796874999999], + [6.692285156250023, 45.14428710937503], + [6.780371093750006, 45.1453125], + [6.842285156250028, 45.13564453125005], + [6.98125, 45.21557617187497], + [7.03242187500004, 45.22260742187498], + [7.07832031250004, 45.23994140624998], + [7.116796874999977, 45.349023437499994], + [7.146386718750051, 45.381738281249994], + [7.153417968749977, 45.40092773437499], + [7.126074218750006, 45.423681640625006], + [7.013671875000028, 45.50048828125003], + [6.962402343750057, 45.58056640625], + [6.881445312500006, 45.67036132812498], + [6.80625, 45.71000976562499], + [6.790917968750023, 45.740869140624966], + [6.789160156250034, 45.78007812499996], + [6.804492187500045, 45.81455078125006], + [6.940820312500023, 45.86835937500001], + [7.021093750000034, 45.92578124999997], + [7.055761718749977, 45.90380859375003], + [7.129003906249977, 45.88041992187499], + [7.327929687500017, 45.912353515625], + [7.451562500000051, 45.94443359375006], + [7.538574218750028, 45.978173828124994], + [7.592578125000017, 45.97221679687502], + [7.787890625000017, 45.92182617187498], + [7.852343749999989, 45.947460937499955], + [7.9931640625, 46.01591796874996], + [8.014257812500034, 46.05190429687502], + [8.125195312500068, 46.16093750000002], + [8.127246093750045, 46.187597656250034], + [8.081542968750057, 46.25600585937502], + [8.095703125000028, 46.27104492187499], + [8.231933593750057, 46.341210937499966], + [8.29853515625004, 46.403417968750034], + [8.370703125, 46.44511718750002], + [8.422558593749983, 46.44604492187503], + [8.436816406250045, 46.43188476562497], + [8.442968750000063, 46.40278320312498], + [8.438476562500028, 46.282861328124994], + [8.458398437500023, 46.24589843750002], + [8.565429687500057, 46.159814453124966], + [8.641699218750063, 46.11079101562501], + [8.818554687500011, 46.0771484375], + [8.826757812500006, 46.06103515625], + [8.77802734375004, 45.996191406250034], + [8.88515625, 45.91870117187506], + [8.904296875, 45.86196289062505], + [8.953710937500034, 45.83002929687501], + [9.023730468750074, 45.845703125], + [9.046679687500045, 45.87558593750006], + [9.019140625000034, 45.928125], + [8.99892578125008, 45.98310546875004], + [9.003027343750034, 46.01489257812503], + [9.02236328125008, 46.05146484375001], + [9.07099609375004, 46.102441406249994], + [9.203417968750017, 46.21923828125], + [9.251074218750034, 46.286767578124994], + [9.259765625000028, 46.39125976562505], + [9.260156250000023, 46.475195312500006], + [9.304394531250068, 46.49555664062498], + [9.399316406250023, 46.480664062499955], + [9.427636718750023, 46.48232421875002], + [9.440625, 46.43081054687502], + [9.481054687499977, 46.348779296874994], + [9.528710937500023, 46.306201171875045], + [9.57958984375, 46.29609375000001], + [9.639453125000017, 46.29589843749997], + [9.78779296875004, 46.34604492187498], + [9.884472656250011, 46.36777343750006], + [9.939257812500074, 46.36181640625], + [9.971679687500028, 46.32768554687496], + [10.041015625000028, 46.23808593750002], + [10.08056640625, 46.22797851562501], + [10.128320312500051, 46.238232421874955], + [10.14521484375004, 46.25351562500006], + [10.1298828125, 46.287988281249966], + [10.109667968750074, 46.36284179687502], + [10.081933593750023, 46.420751953125006], + [10.045605468750068, 46.44790039062505], + [10.038281250000011, 46.483203125000045], + [10.061230468750068, 46.54677734375002], + [10.087011718750063, 46.59990234375002], + [10.1375, 46.614355468750034], + [10.195507812500068, 46.62109374999997], + [10.272265625000074, 46.564843749999966], + [10.363085937500017, 46.54707031249998], + [10.4306640625, 46.55004882812497], + [10.442480468750006, 46.582861328125006], + [10.438281250000045, 46.618847656249955], + [10.39794921875, 46.66503906250006], + [10.406054687500045, 46.73486328124997], + [10.452832031249983, 46.86494140625001], + [10.47939453125008, 46.85512695312505], + [10.579785156250011, 46.85371093750001], + [10.689257812500017, 46.846386718749955], + [10.759765625, 46.79331054687498], + [10.828906250000045, 46.775244140625034], + [10.927343750000034, 46.76948242187501], + [10.993261718750034, 46.77700195312502], + [11.02509765625004, 46.796972656250006], + [11.063476562500057, 46.85913085937497], + [11.133886718750006, 46.93618164062505], + [11.244433593750045, 46.975683593750006], + [11.433203125000063, 46.983056640624994], + [11.527539062500011, 46.99741210937498], + [11.625488281250057, 46.99658203125], + [11.699414062500011, 46.98466796874996], + [11.775683593750017, 46.986083984375], + [11.969531250000074, 47.039697265624994], + [12.169433593750028, 47.082128906250006], + [12.19716796875008, 47.075], + [12.201269531250034, 47.060888671875034], + [12.165527343750028, 47.028173828125034], + [12.130761718750051, 46.984765625] + ], + [ + [12.396875, 43.93457031250003], + [12.426367187500063, 43.89409179687496], + [12.48525390625008, 43.901416015625045], + [12.514648437500028, 43.95297851562506], + [12.503710937500017, 43.98974609375], + [12.44111328125004, 43.98242187500003], + [12.396875, 43.93457031250003] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Jamaica", + "iso_a2": "JM", + "iso_a3": "JAM", + "iso_n3": "388", + "continent": "North America" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-77.261474609375, 18.457421875], + [-77.13955078125, 18.421484375], + [-77.01376953124999, 18.40292968749999], + [-76.959375, 18.40185546875], + [-76.908203125, 18.390429687500003], + [-76.79326171874999, 18.304296875], + [-76.70073242187499, 18.25717773437499], + [-76.349853515625, 18.15185546875], + [-76.23276367187499, 17.9703125], + [-76.21079101562499, 17.913525390624997], + [-76.30146484375, 17.879833984374997], + [-76.41552734375, 17.868212890625003], + [-76.524609375, 17.8662109375], + [-76.625390625, 17.90097656249999], + [-76.669384765625, 17.927636718749994], + [-76.77431640625, 17.9404296875], + [-76.748291015625, 17.964892578125003], + [-76.79482421875, 17.976318359375], + [-76.85322265625, 17.97373046874999], + [-76.896240234375, 17.904101562500003], + [-76.94414062499999, 17.848779296874994], + [-77.03593749999999, 17.85410156249999], + [-77.0712890625, 17.901269531249994], + [-77.11948242187499, 17.880078125], + [-77.1583984375, 17.84506835937499], + [-77.20498046875, 17.71494140624999], + [-77.27988281249999, 17.779541015625], + [-77.36142578124999, 17.833691406249997], + [-77.4638671875, 17.85605468749999], + [-77.67075195312499, 17.85971679687499], + [-77.76816406249999, 17.877392578124997], + [-77.84941406249999, 17.9875], + [-77.881298828125, 18.01904296875], + [-77.96298828124999, 18.047558593749997], + [-78.04448242187499, 18.173828125], + [-78.0736328125, 18.191162109375], + [-78.294091796875, 18.218066406250003], + [-78.339501953125, 18.28720703124999], + [-78.32597656249999, 18.349755859374994], + [-78.25244140625, 18.42626953125], + [-78.21669921875, 18.44809570312499], + [-78.09453124999999, 18.44482421875], + [-77.978173828125, 18.467822265625003], + [-77.92685546874999, 18.500683593749997], + [-77.8734375, 18.522216796875], + [-77.451611328125, 18.467041015625], + [-77.354248046875, 18.466455078124994], + [-77.261474609375, 18.457421875] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 4, + "name": "Jersey", + "iso_a2": "JE", + "iso_a3": "JEY", + "iso_n3": "832", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-2.018652343749977, 49.23125], + [-2.009912109374994, 49.180810546874994], + [-2.053759765624989, 49.169824218749994], + [-2.091015624999983, 49.187402343749994], + [-2.165673828124994, 49.187402343749994], + [-2.23583984375, 49.1763671875], + [-2.220507812499989, 49.266357421875], + [-2.082226562499983, 49.25537109375], + [-2.018652343749977, 49.23125] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Jordan", + "iso_a2": "JO", + "iso_a3": "JOR", + "iso_n3": "400", + "continent": "Asia" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [39.14541015625002, 32.12451171875], + [38.9970703125, 32.007470703124994], + [38.96230468750002, 31.994921875], + [38.769628906250006, 31.946484375], + [38.37548828125, 31.847460937499996], + [38.111425781250006, 31.781152343749994], + [37.77382812500002, 31.696337890624996], + [37.49335937500001, 31.625878906249994], + [37.215625, 31.556103515624997], + [36.95859375, 31.491503906249996], + [37.10527343750002, 31.355175781249997], + [37.32949218750002, 31.146826171875], + [37.47900390625, 31.007763671874997], + [37.65546875000001, 30.828955078125], + [37.81298828125, 30.669287109375], + [37.980078125, 30.5], + [37.862890625, 30.442626953125], + [37.66972656250002, 30.34814453125], + [37.64990234375, 30.330957031249994], + [37.63359375000002, 30.31328125], + [37.55361328125002, 30.144580078124996], + [37.49072265625, 30.01171875], + [37.46923828125, 29.995068359374997], + [37.19941406250001, 29.9462890625], + [36.92705078125002, 29.8970703125], + [36.75527343750002, 29.866015625], + [36.70390625000002, 29.831640625], + [36.591796875, 29.66611328125], + [36.47607421875, 29.4951171875], + [36.2828125, 29.355371093749994], + [36.068457031250006, 29.200537109375], + [36.01542968750002, 29.190478515624996], + [35.8603515625, 29.214257812499994], + [35.5953125, 29.2548828125], + [35.33916015625002, 29.294091796874994], + [35.16376953125001, 29.320947265624994], + [34.95078125, 29.353515625], + [34.98222656250002, 29.48447265625], + [34.97343750000002, 29.555029296875], + [35.02392578125, 29.787060546874997], + [35.05341796875001, 29.896923828124997], + [35.06816406250002, 29.977880859375], + [35.1416015625, 30.14169921875], + [35.13261718750002, 30.1953125], + [35.14814453125001, 30.384326171874996], + [35.140625, 30.4208984375], + [35.17402343750001, 30.52392578125], + [35.23662109375002, 30.673486328124994], + [35.2978515625, 30.80224609375], + [35.32011718750002, 30.860205078125], + [35.38300781250001, 30.982275390625], + [35.43925781250002, 31.132421875], + [35.40966796875, 31.214453125], + [35.40068359375002, 31.230517578124996], + [35.42353515625001, 31.324853515624994], + [35.4228515625, 31.325390625], + [35.45058593750002, 31.479296875], + [35.465429687500006, 31.562353515625], + [35.49941406250002, 31.67236328125], + [35.55898437500002, 31.765527343749994], + [35.53144531250001, 31.984912109374996], + [35.534765625, 32.10302734375], + [35.57207031250002, 32.237890625], + [35.55146484375001, 32.3955078125], + [35.56904296875001, 32.619873046875], + [35.572851562500006, 32.640869140625], + [35.59453125000002, 32.668017578124996], + [35.61123046875002, 32.682080078125], + [35.734472656250006, 32.72890625], + [35.78730468750001, 32.734912109374996], + [35.89472656250001, 32.713769531249994], + [35.95644531250002, 32.66669921875], + [36.05947265625002, 32.5337890625], + [36.2197265625, 32.4951171875], + [36.284277343750006, 32.457470703125], + [36.3720703125, 32.3869140625], + [36.47919921875001, 32.361328125], + [36.818359375, 32.317285156249994], + [37.088964843750006, 32.46552734375], + [37.31757812500001, 32.590771484375], + [37.57744140625002, 32.733056640624994], + [37.75410156250001, 32.829833984375], + [38.055761718750006, 32.994873046875], + [38.25429687500002, 33.09921875], + [38.515625, 33.236621093749996], + [38.773535156250006, 33.372216796874994], + [38.84501953125002, 33.15087890625], + [38.91484375000002, 32.93466796875], + [38.987402343750006, 32.710693359375], + [39.05781250000001, 32.4931640625], + [38.98164062500001, 32.472558593749994], + [39.04140625000002, 32.3056640625], + [39.14003906250002, 32.331201171874994], + [39.24746093750002, 32.350976562499994], + [39.29277343750002, 32.24384765625], + [39.14541015625002, 32.12451171875] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Japan", + "iso_a2": "JP", + "iso_a3": "JPN", + "iso_n3": "392", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [123.88867187499997, 24.280126953124977], + [123.8255859375, 24.266064453124955], + [123.74980468750002, 24.283300781250006], + [123.68066406250003, 24.28803710937501], + [123.67978515625012, 24.317773437500023], + [123.75234375, 24.348486328125063], + [123.75371093750007, 24.391308593749983], + [123.77148437499997, 24.414453125], + [123.93486328125002, 24.362011718749983], + [123.928125, 24.323632812499966], + [123.88867187499997, 24.280126953124977] + ] + ], + [ + [ + [124.29316406250004, 24.515917968750074], + [124.23427734375, 24.358056640624966], + [124.18564453125006, 24.335058593749977], + [124.13574218750003, 24.347607421874983], + [124.08476562500002, 24.435839843750017], + [124.12041015625002, 24.46962890625005], + [124.17021484375002, 24.451855468749983], + [124.21054687500006, 24.458642578125023], + [124.30195312500004, 24.58710937500001], + [124.32402343750002, 24.56635742187504], + [124.29316406250004, 24.515917968750074] + ] + ], + [ + [ + [125.44414062500002, 24.7431640625], + [125.35937, 24.717089843750017], + [125.26894531250005, 24.732519531250063], + [125.28359375, 24.871923828125034], + [125.31494140624997, 24.852392578125034], + [125.33457031250006, 24.8046875], + [125.40185546875003, 24.77685546875003], + [125.44414062500002, 24.7431640625] + ] + ], + [ + [ + [142.1881835937501, 26.61650390624999], + [142.16992187500003, 26.61567382812501], + [142.10712890625004, 26.721533203124977], + [142.12529296875007, 26.726464843750023], + [142.16171875000006, 26.70996093750003], + [142.20214843750003, 26.648779296875006], + [142.1881835937501, 26.61650390624999] + ] + ], + [ + [ + [128.25878906249997, 26.65278320312501], + [128.1625, 26.60693359375], + [128.12695312500003, 26.552246093750057], + [128.03789062500007, 26.53359375], + [127.95126953125012, 26.456494140624983], + [127.86708984375, 26.442480468749977], + [127.86923828125006, 26.380566406249983], + [127.90478515624997, 26.328125], + [127.84873046875006, 26.318945312500034], + [127.79013671875006, 26.255078124999983], + [127.785546875, 26.208691406249955], + [127.80644531250007, 26.171240234375063], + [127.80361328125005, 26.152539062499983], + [127.72939453125, 26.09716796874997], + [127.653125, 26.0947265625], + [127.64970703125002, 26.15449218750001], + [127.65488281250012, 26.199169921874983], + [127.72705078124997, 26.307910156250017], + [127.72890625, 26.433935546875006], + [127.79589843749997, 26.44853515624996], + [127.82041015625006, 26.466064453125], + [127.9259765625001, 26.55571289062496], + [127.9455078125001, 26.59394531250001], + [127.89082031250004, 26.63105468750004], + [127.89482421875007, 26.674951171874994], + [127.90722656250003, 26.69360351562497], + [127.9943359375001, 26.67944335937503], + [128.0296875, 26.64687], + [128.04677734375, 26.64331054687503], + [128.09765624999997, 26.66777343749996], + [128.12158203124997, 26.71142578124997], + [128.21650390625004, 26.79687], + [128.25488281249997, 26.88188476562496], + [128.33164062500006, 26.812109375000063], + [128.3109375, 26.720703125], + [128.25878906249997, 26.65278320312501] + ] + ], + [ + [ + [128.99814453125012, 27.720800781250006], + [128.95625, 27.702490234375006], + [128.90000000000012, 27.727783203125], + [128.88281249999997, 27.842431640624994], + [128.9076171875, 27.897998046875045], + [128.95166015624997, 27.910253906250034], + [128.98974609375003, 27.811132812500006], + [129.01640625000002, 27.77021484375004], + [128.99814453125012, 27.720800781250006] + ] + ], + [ + [ + [129.32402343750007, 28.10493164062501], + [129.33056640624997, 28.08159179687496], + [129.23242187499997, 28.101123046875017], + [129.19248046875012, 28.192480468749977], + [129.25742187500012, 28.17617187500005], + [129.27734374999997, 28.14472656250004], + [129.32402343750007, 28.10493164062501] + ] + ], + [ + [ + [129.45253906250005, 28.20898437499997], + [129.3664062500001, 28.127734375000045], + [129.27490234375003, 28.20087890625001], + [129.16464843750012, 28.24975585937503], + [129.21708984375007, 28.262939453125057], + [129.24785156250002, 28.282519531250045], + [129.25087890625, 28.313574218750063], + [129.32246093750004, 28.35961914062503], + [129.46455078125004, 28.395263671875], + [129.50966796875, 28.397509765625017], + [129.56054687500003, 28.431054687500023], + [129.57714843749997, 28.461279296875034], + [129.59804687500005, 28.47587890624999], + [129.68955078125012, 28.517480468750023], + [129.71464843750007, 28.469628906249966], + [129.71044921875003, 28.432128906250057], + [129.64169921875006, 28.411279296874966], + [129.57460937500005, 28.361181640624977], + [129.51269531249997, 28.298730468749966], + [129.45673828125004, 28.272314453125006], + [129.43906250000006, 28.254785156249994], + [129.45253906250005, 28.20898437499997] + ] + ], + [ + [ + [130.6227539062501, 30.262988281250017], + [130.508203125, 30.241406249999955], + [130.44560546875002, 30.264697265625017], + [130.38808593750005, 30.38818359375003], + [130.49716796875006, 30.465527343749983], + [130.64355468749997, 30.388964843750017], + [130.67324218750005, 30.366894531249955], + [130.6227539062501, 30.262988281250017] + ] + ], + [ + [ + [130.95976562500007, 30.39692382812504], + [130.87216796875006, 30.386328125], + [130.87031250000004, 30.444238281249994], + [130.93994140625003, 30.575097656249994], + [130.94736328125012, 30.671191406250045], + [131.01220703125003, 30.792285156250017], + [131.03984375000007, 30.818896484375017], + [131.06035156250007, 30.828466796875006], + [131.08261718750006, 30.790869140625006], + [131.05742187500007, 30.642480468749966], + [130.992578125, 30.529980468749955], + [130.95976562500007, 30.39692382812504] + ] + ], + [ + [ + [129.71796875000004, 31.657128906249994], + [129.68681640625002, 31.6396484375], + [129.70683593750002, 31.71826171875003], + [129.78730468750004, 31.787109375], + [129.7936523437501, 31.74248046874999], + [129.71796875000004, 31.657128906249994] + ] + ], + [ + [ + [130.38105468750004, 32.42373046875002], + [130.29257812500006, 32.41933593750002], + [130.25605468750004, 32.431005859375006], + [130.24169921874997, 32.462792968749994], + [130.36542968750004, 32.52719726562506], + [130.46142578124997, 32.515722656250034], + [130.41855468750006, 32.45771484375004], + [130.38105468750004, 32.42373046875002] + ] + ], + [ + [ + [130.08251953124997, 32.22968750000001], + [130.00351562500006, 32.19399414062502], + [129.9933593750001, 32.228173828124994], + [129.9601562500001, 32.24375], + [130.0172851562501, 32.29184570312498], + [130.01533203125004, 32.31367187499998], + [129.97929687500007, 32.34619140625006], + [130.02128906250002, 32.46884765624998], + [130.00976562499997, 32.521630859374994], + [130.16777343750002, 32.54121093749998], + [130.19667968750005, 32.491601562499994], + [130.19951171875002, 32.34057617187506], + [130.08251953124997, 32.22968750000001] + ] + ], + [ + [ + [128.66533203125002, 32.783886718749955], + [128.70410156249997, 32.75688476562496], + [128.76103515625002, 32.772363281249994], + [128.8060546875, 32.775976562500034], + [128.83857421875004, 32.76289062500004], + [128.87939453124997, 32.69331054687498], + [128.89453124999997, 32.65214843750002], + [128.82128906249997, 32.646337890625006], + [128.7904296875, 32.63671875], + [128.75048828125003, 32.58613281249998], + [128.69296875000012, 32.60473632812506], + [128.65732421875006, 32.62841796875], + [128.6491210937501, 32.662011718749994], + [128.66533203125002, 32.783886718749955] + ] + ], + [ + [ + [139.84111328125007, 33.056054687499966], + [139.82382812500006, 33.045458984375045], + [139.77568359375002, 33.07822265625006], + [139.7689453125, 33.107177734375], + [139.77744140625006, 33.12514648437502], + [139.80888671875007, 33.12924804687506], + [139.87363281250012, 33.09350585937497], + [139.84111328125007, 33.056054687499966] + ] + ], + [ + [ + [129.07695312500002, 32.84028320312498], + [129.0519531250001, 32.829492187499994], + [129.01962890625006, 32.91962890624998], + [128.99726562500004, 32.95185546874998], + [129.03496093750007, 32.969091796875034], + [129.10976562500005, 33.13256835937503], + [129.12363281250012, 33.067675781250045], + [129.152734375, 33.003320312499994], + [129.18193359375002, 32.99311523437504], + [129.15351562500004, 32.946191406249966], + [129.11162109375007, 32.928857421874994], + [129.07695312500002, 32.84028320312498] + ] + ], + [ + [ + [129.49179687500006, 33.223046875], + [129.42138671875003, 33.175830078125045], + [129.37041015625002, 33.176025390625], + [129.41699218750003, 33.23110351562502], + [129.42314453125002, 33.25737304687496], + [129.46191406250003, 33.33125], + [129.53798828125005, 33.35776367187498], + [129.56992187500006, 33.36103515625004], + [129.50810546875002, 33.28432617187502], + [129.49179687500006, 33.223046875] + ] + ], + [ + [ + [129.79570312500007, 33.74882812499999], + [129.72656250000003, 33.70732421874996], + [129.67480468749997, 33.73969726562498], + [129.7, 33.828906250000045], + [129.71728515624997, 33.8583984375], + [129.77636718749997, 33.829199218750006], + [129.79570312500007, 33.74882812499999] + ] + ], + [ + [ + [131.17460937500007, 33.602587890625045], + [131.30917968750012, 33.57275390625], + [131.36601562500007, 33.57089843750006], + [131.41875, 33.58442382812498], + [131.49882812500002, 33.62358398437496], + [131.58300781249997, 33.65239257812496], + [131.64306640625003, 33.637792968750006], + [131.69628906250003, 33.60283203124999], + [131.72421875000012, 33.553808593750034], + [131.71064453125004, 33.50234375000005], + [131.61552734375002, 33.391845703125], + [131.53740234375007, 33.274072265624994], + [131.71708984375002, 33.25209960937505], + [131.89658203125006, 33.25458984375001], + [131.85468750000004, 33.18164062499997], + [131.8478515625001, 33.118066406249994], + [131.902734375, 33.08779296875005], + [131.94931640625006, 33.04707031250001], + [131.9372070312501, 33.01015625000005], + [131.91044921875002, 32.97368164062499], + [132.00859375000007, 32.919042968750034], + [132.0021484375001, 32.882373046875045], + [131.97666015625012, 32.84394531250001], + [131.73212890625004, 32.59282226562502], + [131.6603515625001, 32.465625], + [131.61035156250003, 32.32548828124999], + [131.56464843750004, 32.223046875], + [131.53115234375005, 32.11674804687502], + [131.50566406250002, 32.001953125], + [131.46025390625007, 31.88349609375001], + [131.47529296875004, 31.778417968750006], + [131.45996093750003, 31.670800781250023], + [131.33720703125007, 31.4046875], + [131.2497070312501, 31.40961914062501], + [131.13974609375006, 31.44184570312501], + [131.07080078124997, 31.436865234374977], + [131.03515624999997, 31.377685546875], + [131.09843750000002, 31.256152343750017], + [130.90224609375, 31.11206054687497], + [130.68574218750004, 31.01513671875003], + [130.68417968750006, 31.059277343749955], + [130.70449218750005, 31.094091796875034], + [130.7357421875, 31.12207031249997], + [130.75839843750006, 31.155810546875017], + [130.7897460937501, 31.26909179687499], + [130.77421875000002, 31.383203124999966], + [130.70898437499997, 31.52607421875004], + [130.70419921875006, 31.577441406250017], + [130.74941406250005, 31.59819335937499], + [130.77978515625003, 31.604101562500034], + [130.7962890625, 31.624072265625017], + [130.796875, 31.67128906250005], + [130.77626953125, 31.70629882812497], + [130.71455078125004, 31.717675781249994], + [130.65507812500002, 31.71840820312505], + [130.61347656250004, 31.665429687499994], + [130.5560546875, 31.563085937500034], + [130.528125, 31.45966796875001], + [130.5404296875, 31.40307617187503], + [130.56591796874997, 31.352392578125006], + [130.64453124999997, 31.267480468750023], + [130.621484375, 31.217529296875057], + [130.58876953125, 31.178515625000017], + [130.31064453125006, 31.26689453124999], + [130.25058593750012, 31.27319335937503], + [130.20068359374997, 31.291894531250023], + [130.14726562500002, 31.40849609374996], + [130.26054687500002, 31.436572265625017], + [130.2941406250001, 31.45068359375003], + [130.30664062499997, 31.487792968750057], + [130.3219726562501, 31.601464843750023], + [130.26894531250005, 31.69633789062499], + [130.22421875000006, 31.730078125000034], + [130.18789062500005, 31.768847656250017], + [130.21093750000003, 31.848974609375006], + [130.19580078124997, 31.949853515625023], + [130.19443359375012, 32.090771484374955], + [130.21406250000004, 32.11503906250002], + [130.31914062500002, 32.143505859374955], + [130.394921875, 32.21899414062497], + [130.46201171875012, 32.304931640625], + [130.56035156250007, 32.45605468750006], + [130.64052734375005, 32.61923828124998], + [130.56328125000002, 32.62636718750002], + [130.49785156250002, 32.65693359375001], + [130.56943359375006, 32.73413085937503], + [130.547265625, 32.83159179687499], + [130.44042968749997, 32.951367187499955], + [130.38173828125, 33.09257812499996], + [130.28730468750004, 33.15478515625003], + [130.2375, 33.177636718749966], + [130.17685546875012, 33.14453124999997], + [130.12685546875005, 33.10483398437506], + [130.17314453125007, 33.01298828124999], + [130.16777343750002, 32.931787109374966], + [130.175, 32.851318359375], + [130.22216796874997, 32.846826171874994], + [130.28007812500007, 32.866845703124966], + [130.32646484375002, 32.852636718750006], + [130.35351562500003, 32.81035156250002], + [130.36083984375003, 32.75585937500003], + [130.34042968750012, 32.70185546875004], + [130.29765625000002, 32.675], + [130.24550781250005, 32.677148437499966], + [130.19296875000006, 32.70629882812506], + [130.1520507812501, 32.74785156249999], + [130.05410156250005, 32.770800781250045], + [129.95078125000006, 32.72172851562499], + [129.85253906250003, 32.62172851562505], + [129.76855468749997, 32.57099609375001], + [129.80810546875003, 32.64526367187506], + [129.82675781250006, 32.72534179687503], + [129.78593750000002, 32.78164062500002], + [129.69003906250012, 32.875244140625], + [129.66777343750002, 32.92939453125001], + [129.6623046875001, 32.99492187499996], + [129.67910156250005, 33.059960937499966], + [129.77773437500005, 32.98554687500001], + [129.82832031250004, 32.892675781250006], + [129.90078125, 32.851904296875034], + [129.99169921875003, 32.85156249999997], + [129.921875, 32.987988281249955], + [129.89677734375007, 33.02236328125005], + [129.79873046875, 33.08359375], + [129.66503906250003, 33.186621093750034], + [129.58007812500003, 33.23627929687501], + [129.61015625000002, 33.34365234375005], + [129.65996093750002, 33.36499023437503], + [129.70214843750003, 33.359814453124955], + [129.844140625, 33.32177734375003], + [129.85751953125006, 33.375244140625], + [129.83662109375004, 33.40380859375003], + [129.82568359374997, 33.43701171875006], + [129.9191406250001, 33.483496093750006], + [130.07207031250007, 33.52177734374999], + [130.10341796875005, 33.53969726562502], + [130.1305664062501, 33.578173828125045], + [130.16796874999997, 33.59829101562505], + [130.27509765625004, 33.59770507812502], + [130.36503906250007, 33.634472656249955], + [130.43945312500003, 33.734228515625034], + [130.4572265625001, 33.788964843749994], + [130.4837890625, 33.834619140624966], + [130.66953125000012, 33.91547851562501], + [130.715625, 33.92778320312502], + [130.83964843750002, 33.91777343750002], + [130.95312, 33.87202148437504], + [131.00908203125002, 33.77583007812498], + [131.05810546874997, 33.67285156250006], + [131.17460937500007, 33.602587890625045] + ] + ], + [ + [ + [132.266015625, 33.945166015625006], + [132.31455078125012, 33.90859375000002], + [132.43046875000002, 33.923535156249955], + [132.44492187500006, 33.91318359374998], + [132.41103515625, 33.87993164062496], + [132.35996093750006, 33.847021484375006], + [132.2672851562501, 33.87148437500002], + [132.20878906250007, 33.87285156250002], + [132.2005859375, 33.92778320312502], + [132.20800781250003, 33.94780273437502], + [132.266015625, 33.945166015625006] + ] + ], + [ + [ + [132.57841796875007, 34.11518554687501], + [132.54941406250012, 34.07509765625002], + [132.46093750000003, 34.087255859375006], + [132.49628906250004, 34.121972656249966], + [132.52353515625006, 34.16406250000003], + [132.54345703124997, 34.17265624999999], + [132.56015625000006, 34.12690429687501], + [132.57841796875007, 34.11518554687501] + ] + ], + [ + [ + [129.27949218750004, 34.123388671875006], + [129.21445312500006, 34.08281249999999], + [129.18642578125, 34.14501953125006], + [129.21484374999997, 34.320654296875034], + [129.3371093750001, 34.284765625], + [129.33505859375012, 34.230810546875034], + [129.27949218750004, 34.123388671875006] + ] + ], + [ + [ + [134.35742187500003, 34.25634765625], + [134.49570312500006, 34.21474609375005], + [134.6375, 34.22661132812499], + [134.63525390624997, 34.04394531249997], + [134.65537109375006, 33.98261718750001], + [134.69531250000003, 33.92773437500003], + [134.67480468750003, 33.847802734374994], + [134.73886718750012, 33.82050781250001], + [134.54873046875, 33.72929687499999], + [134.37705078125012, 33.60839843749997], + [134.30654296875005, 33.526806640624955], + [134.24267578125003, 33.43945312500003], + [134.20566406250012, 33.34697265625002], + [134.18164062500003, 33.24721679687502], + [134.12412109375012, 33.286767578124994], + [133.95869140625004, 33.44833984375006], + [133.85400390624997, 33.49267578125003], + [133.68564453125012, 33.516308593749955], + [133.63203125000004, 33.51098632812503], + [133.28593750000007, 33.35996093749998], + [133.2399414062501, 33.24960937499998], + [133.14560546875006, 33.083154296874994], + [133.10087890625002, 33.028222656249994], + [133.051171875, 33.01245117187497], + [133.01601562500005, 32.98388671875003], + [132.97724609375004, 32.84199218749998], + [132.86992187500002, 32.75458984375001], + [132.80429687500006, 32.75200195312502], + [132.69218750000007, 32.77592773437502], + [132.6417968750001, 32.76245117187503], + [132.70898437500003, 32.90249023437505], + [132.60195312500005, 32.91953125000006], + [132.49511718749997, 32.91660156249998], + [132.492578125, 33.00766601562498], + [132.42783203125012, 33.059375], + [132.47578125000004, 33.12646484375003], + [132.47714843750012, 33.18115234374997], + [132.5052734375, 33.21127929687498], + [132.51503906250005, 33.25537109375], + [132.5114257812501, 33.293066406250034], + [132.44541015625006, 33.304589843749994], + [132.40517578125005, 33.33125], + [132.41279296875004, 33.43046875], + [132.37490234375, 33.43408203125], + [132.28105468750007, 33.41679687500002], + [132.08583984375, 33.340136718750045], + [132.0326171875, 33.339990234374994], + [132.11445312500004, 33.39458007812502], + [132.28789062500002, 33.46953125000002], + [132.36591796875004, 33.51245117187506], + [132.53603515625005, 33.632910156250006], + [132.64306640624997, 33.68994140624997], + [132.6989257812501, 33.79091796875002], + [132.7162109375, 33.85224609375001], + [132.75234375000005, 33.906152343749966], + [132.78427734375006, 33.99243164062506], + [132.83945312500012, 34.02124023437497], + [132.93515625000006, 34.09531250000006], + [132.99013671875, 34.088134765625], + [133.05126953125003, 33.99711914062502], + [133.13369140625005, 33.92729492187502], + [133.19306640625004, 33.93320312499998], + [133.29882812500003, 33.96899414062497], + [133.3498046875001, 33.97705078125003], + [133.47207031250005, 33.97280273437505], + [133.58203124999997, 34.01713867187502], + [133.62675781250002, 34.06938476562502], + [133.64345703125005, 34.134667968749994], + [133.60263671875006, 34.24384765625001], + [133.65556640625002, 34.23286132812501], + [133.70625, 34.237353515625045], + [133.82558593750005, 34.30683593749998], + [133.94833984375006, 34.34804687500002], + [134.07587890625004, 34.3583984375], + [134.21923828125003, 34.31904296874998], + [134.35742187500003, 34.25634765625] + ] + ], + [ + [ + [134.35185546875002, 34.48364257812503], + [134.33320312500004, 34.463769531249966], + [134.31533203125, 34.468945312499955], + [134.25185546875, 34.42304687500004], + [134.23808593750007, 34.46704101562503], + [134.18828125000002, 34.49633789062503], + [134.18212890625003, 34.51923828124998], + [134.32597656250002, 34.53437], + [134.37226562500004, 34.52236328125002], + [134.35185546875002, 34.48364257812503] + ] + ], + [ + [ + [134.9328125000001, 34.28813476562499], + [134.82441406250004, 34.202929687500045], + [134.73066406250004, 34.208886718749994], + [134.68349609375, 34.24697265625005], + [134.66787109375005, 34.294140624999955], + [134.75722656250005, 34.36816406250003], + [134.83427734375002, 34.47265625], + [134.90410156250002, 34.51909179687496], + [134.96074218750002, 34.544921875], + [135.00468750000002, 34.54404296874998], + [134.90546875000004, 34.398291015625034], + [134.9328125000001, 34.28813476562499] + ] + ], + [ + [ + [129.38564453125, 34.35366210937502], + [129.36533203125006, 34.30551757812498], + [129.29746093750006, 34.339599609375], + [129.26669921875012, 34.37045898437506], + [129.32939453125002, 34.521875], + [129.32207031250002, 34.57929687499998], + [129.3258789062501, 34.60727539062498], + [129.45107421875005, 34.68657226562499], + [129.47246093750002, 34.67133789062498], + [129.4801757812501, 34.64946289062496], + [129.469140625, 34.61552734374999], + [129.47539062500002, 34.54042968750005], + [129.38144531250006, 34.41645507812501], + [129.38564453125, 34.35366210937502] + ] + ], + [ + [ + [139.4564453125, 34.72651367187504], + [139.44570312500005, 34.67954101562506], + [139.39238281250002, 34.68989257812504], + [139.3668945312501, 34.72050781249996], + [139.37001953125, 34.77543945312496], + [139.426171875, 34.77587890625006], + [139.4564453125, 34.72651367187504] + ] + ], + [ + [ + [133.37050781250005, 36.203857421875], + [133.32470703124997, 36.16650390625003], + [133.23925781249997, 36.178759765625045], + [133.18994140625003, 36.23261718750001], + [133.20615234375006, 36.293408203124955], + [133.29570312500002, 36.34013671874996], + [133.38125, 36.24638671874996], + [133.37050781250005, 36.203857421875] + ] + ], + [ + [ + [138.34404296875007, 37.822119140625006], + [138.24902343749997, 37.819580078125], + [138.22519531250006, 37.82939453124996], + [138.28281250000012, 37.854199218749955], + [138.28789062500007, 37.89580078124999], + [138.32226562499997, 37.96953125000002], + [138.32167968750005, 37.990820312500006], + [138.24619140625012, 37.994580078124955], + [138.25, 38.078466796875006], + [138.3063476562501, 38.16113281250006], + [138.46132812500005, 38.291455078124955], + [138.50361328125004, 38.31591796875006], + [138.51005859375002, 38.25898437500001], + [138.46279296875, 38.12431640625002], + [138.45361328124997, 38.07568359375006], + [138.57519531249997, 38.065527343750034], + [138.49697265625005, 37.90390625000006], + [138.34404296875007, 37.822119140625006] + ] + ], + [ + [ + [141.22929687500007, 41.37265625], + [141.26875, 41.35380859374999], + [141.45546875000005, 41.404736328124955], + [141.41992187499997, 41.25117187500004], + [141.40000000000012, 41.09633789062502], + [141.41367187500006, 40.83935546874997], + [141.43046875000002, 40.72333984374998], + [141.46279296875005, 40.61113281250002], + [141.54228515625007, 40.53071289062498], + [141.64628906250002, 40.4736328125], + [141.7970703125001, 40.29116210937502], + [141.87792968749997, 40.06723632812498], + [141.93505859374997, 39.95849609375003], + [141.97783203125007, 39.84443359374998], + [141.99082031250006, 39.792236328125], + [141.9918945312501, 39.739892578124994], + [141.97910156250006, 39.668359375], + [141.99316406249997, 39.61054687500001], + [141.97695312500005, 39.428808593750034], + [141.90947265625007, 39.21870117187504], + [141.90078125, 39.111328125], + [141.84208984375002, 39.09003906250001], + [141.80654296875, 39.04042968750005], + [141.77617187500002, 39.01743164062498], + [141.74248046875007, 38.99960937499998], + [141.69355468750004, 38.99516601562496], + [141.65859375000005, 38.974853515625], + [141.64472656250004, 38.917919921874955], + [141.6222656250001, 38.86513671875002], + [141.57968750000012, 38.81650390624998], + [141.5462890625, 38.762841796874966], + [141.51875, 38.63203124999998], + [141.50878906249997, 38.49785156249999], + [141.4674804687501, 38.404150390625006], + [141.36816406250003, 38.379736328125006], + [141.254296875, 38.38139648437499], + [141.10839843750003, 38.33793945312502], + [141.0773437500001, 38.31254882812499], + [140.9621093750001, 38.148876953124955], + [140.92900390625007, 38.05288085937502], + [140.92792968750004, 37.94960937500002], + [140.95996093749997, 37.822607421875006], + [141.00341796874997, 37.69843750000001], + [141.0363281250001, 37.46723632812498], + [141.00166015625004, 37.11464843750002], + [140.96835937500012, 37.002050781250006], + [140.89511718750012, 36.92573242187498], + [140.83964843750002, 36.89033203124998], + [140.79179687500002, 36.846875], + [140.7298828125, 36.73188476562501], + [140.62734375, 36.50278320312498], + [140.61884765625004, 36.4453125], + [140.61923828125012, 36.385595703125006], + [140.59160156250002, 36.307812499999955], + [140.57353515625007, 36.23134765625002], + [140.59042968750012, 36.142431640625006], + [140.62197265625005, 36.05922851562502], + [140.75957031250002, 35.84570312500006], + [140.81347656249997, 35.78251953124996], + [140.87402343749997, 35.72495117187506], + [140.63925781250012, 35.66127929687505], + [140.596875, 35.63203125000004], + [140.457421875, 35.51025390625], + [140.41289062500002, 35.39477539062503], + [140.41650390625003, 35.26699218750002], + [140.39296875000005, 35.22114257812498], + [140.35468750000004, 35.18144531249999], + [140.31474609375002, 35.15502929687503], + [140.15888671875004, 35.09648437499999], + [140.05917968750006, 35.038281249999955], + [139.95976562500007, 34.94731445312499], + [139.92041015624997, 34.89960937500004], + [139.8439453125001, 34.914892578125034], + [139.79921875000005, 34.956933593749994], + [139.84326171874997, 35.009863281250034], + [139.82968750000012, 35.07216796875002], + [139.85146484375005, 35.232324218749966], + [139.82646484375002, 35.29667968750002], + [139.90615234375, 35.34526367187496], + [139.94414062500007, 35.422998046874994], + [140.02714843750002, 35.48520507812506], + [140.086328125, 35.54042968750002], + [140.096875, 35.58515624999998], + [140.0436523437501, 35.633349609375045], + [139.9875, 35.66821289062503], + [139.90976562500006, 35.668359374999966], + [139.83476562500002, 35.658056640625006], + [139.7863281250001, 35.61210937499999], + [139.77011718750006, 35.54956054687503], + [139.77392578124997, 35.520361328125034], + [139.76777343750004, 35.49482421874998], + [139.65000000000012, 35.40913085937501], + [139.66552734374997, 35.31948242187505], + [139.7, 35.27397460937502], + [139.74404296875, 35.252392578124955], + [139.73085937500005, 35.22153320312498], + [139.675, 35.149267578125006], + [139.6359375000001, 35.14213867187499], + [139.56406250000012, 35.24326171875006], + [139.47441406250002, 35.298535156249955], + [139.3634765625001, 35.29809570312503], + [139.24941406250005, 35.27802734375004], + [139.16269531250012, 35.21074218750002], + [139.13408203125007, 35.154882812500006], + [139.11582031250006, 35.097119140624955], + [139.12197265625, 34.95649414062498], + [139.08603515625006, 34.83916015624999], + [139.015625, 34.73603515625001], + [138.98261718750004, 34.698388671874994], + [138.89667968750004, 34.62841796875003], + [138.8375, 34.619238281250034], + [138.79511718750004, 34.65102539062502], + [138.76103515625002, 34.69921874999997], + [138.80449218750007, 34.87573242187497], + [138.80273437499997, 34.97480468749998], + [138.90361328125002, 35.02524414062506], + [138.82089843750012, 35.09570312500003], + [138.71962890625, 35.12407226562502], + [138.57714843750003, 35.08647460937502], + [138.53701171875, 35.04414062499998], + [138.50957031250002, 34.987158203125034], + [138.43310546874997, 34.91518554687502], + [138.34863281250003, 34.847705078125045], + [138.25322265625002, 34.73266601562506], + [138.18906250000012, 34.596337890624994], + [137.97900390625003, 34.64091796875002], + [137.86425781250003, 34.65087890625], + [137.74853515624997, 34.64741210937498], + [137.543359375, 34.66420898437505], + [137.31806640625004, 34.636376953124966], + [137.06171875000004, 34.58281249999999], + [137.07705078125005, 34.621435546875034], + [137.2877929687501, 34.703515624999966], + [137.29541015625003, 34.72758789062499], + [137.27519531250002, 34.77250976562499], + [137.22265624999997, 34.77470703124999], + [137.09658203125, 34.759033203125], + [137.03222656249997, 34.76591796874999], + [137.00595703125012, 34.81411132812502], + [136.96328125000005, 34.83491210937501], + [136.9347656250001, 34.81518554687497], + [136.94414062500007, 34.721533203125006], + [136.91289062500007, 34.70903320312502], + [136.87128906250004, 34.733105468749955], + [136.88457031250002, 34.80585937500004], + [136.85615234375004, 34.9125], + [136.85292968750005, 34.97871093749998], + [136.89707031250006, 35.03554687500002], + [136.85185546875007, 35.05952148437501], + [136.80419921874997, 35.05029296875], + [136.74355468750005, 35.022998046875045], + [136.69003906250006, 34.98413085937503], + [136.57695312500002, 34.78955078125], + [136.53300781250007, 34.678369140624994], + [136.61582031250006, 34.58906250000001], + [136.84160156250002, 34.46420898437498], + [136.8802734375, 34.43359375000006], + [136.88115234375002, 34.38046875000006], + [136.8537109375001, 34.324072265625034], + [136.7921875000001, 34.29926757812504], + [136.54443359374997, 34.257714843749994], + [136.32988281250007, 34.17685546875006], + [136.26787109375002, 34.09487304687505], + [136.07255859375002, 33.77822265625002], + [135.91621093750004, 33.561718749999955], + [135.69531250000003, 33.48696289062502], + [135.4528320312501, 33.55336914062505], + [135.39423828125004, 33.628759765625034], + [135.34677734375006, 33.72197265625002], + [135.25664062500007, 33.80625], + [135.17539062500006, 33.898046875], + [135.12792968749997, 34.006982421874994], + [135.13535156250006, 34.18261718749997], + [135.10009765624997, 34.288378906250045], + [135.13193359375006, 34.316552734374994], + [135.26562, 34.38081054687504], + [135.30927734375004, 34.41679687499999], + [135.38476562499997, 34.50043945312498], + [135.4118164062501, 34.54697265625006], + [135.41591796875, 34.61748046875002], + [135.3551757812501, 34.65429687499997], + [135.19824218749997, 34.65292968750006], + [135.0416992187501, 34.63100585937502], + [134.92988281250004, 34.66181640625001], + [134.78496093750002, 34.74707031250006], + [134.74003906250007, 34.765234375], + [134.58378906250002, 34.770605468750034], + [134.47226562500006, 34.75478515625002], + [134.36269531250005, 34.72368164062499], + [134.246875, 34.71386718750003], + [134.20830078125002, 34.69765625000002], + [134.07451171875002, 34.593115234375034], + [133.96826171874997, 34.52729492187504], + [133.8763671875, 34.49462890625006], + [133.67792968750004, 34.485888671875045], + [133.57861328124997, 34.46469726562498], + [133.47441406250007, 34.430126953124955], + [133.44531250000003, 34.433154296875045], + [133.33564453125004, 34.38535156249998], + [133.20976562500007, 34.343994140625], + [133.14238281250002, 34.30244140624998], + [133.0189453125, 34.32958984375], + [132.77460937500004, 34.255224609375034], + [132.65654296875007, 34.24609375000003], + [132.53447265625007, 34.28706054687504], + [132.4212890625, 34.353369140625034], + [132.31259765625006, 34.32495117187503], + [132.23808593750002, 34.227001953124955], + [132.20195312500002, 34.032031250000045], + [132.159375, 33.944238281249994], + [132.14648437499997, 33.83876953125002], + [132.090234375, 33.85546875000003], + [131.76318359374997, 34.04526367187498], + [131.74052734375007, 34.05205078125002], + [131.47617187500012, 34.019384765625034], + [131.4079101562501, 34.00361328125001], + [131.32275390624997, 33.965185546875006], + [131.23261718750004, 33.94799804687497], + [131.15039062500003, 33.97563476562502], + [131.071875, 34.02065429687502], + [130.99638671875007, 34.007275390624955], + [130.91884765625, 33.97573242187502], + [130.88925781250012, 34.261816406250034], + [130.90429687499997, 34.299560546875], + [130.95185546875004, 34.349707031250006], + [131.00419921875007, 34.39257812500003], + [131.13222656250005, 34.40737304687502], + [131.26181640625006, 34.39345703125005], + [131.35439453125, 34.41318359375006], + [131.43251953125, 34.46982421875006], + [131.51503906250005, 34.55014648437498], + [131.60800781250006, 34.61547851562497], + [131.7340820312501, 34.667089843750006], + [131.85605468750006, 34.726318359375], + [131.96308593750004, 34.809375], + [132.06474609375002, 34.9], + [132.15820312499997, 34.96650390624998], + [132.25957031250002, 35.02231445312498], + [132.41406249999997, 35.15629882812502], + [132.61904296875, 35.306835937499955], + [132.69765625, 35.418310546875006], + [132.74658203125003, 35.44902343749996], + [132.92294921875006, 35.511279296875045], + [133.15693359375004, 35.55883789062506], + [133.26718750000006, 35.55654296875002], + [133.37646484375003, 35.458837890625006], + [133.43535156250002, 35.47221679687499], + [133.49492187500007, 35.497460937499966], + [133.61542968750004, 35.51142578124998], + [133.73935546875006, 35.495263671874966], + [133.86025390625, 35.49487304687497], + [133.98125, 35.50722656250002], + [134.21406250000004, 35.539257812499955], + [134.33652343750012, 35.57792968750002], + [134.45605468749997, 35.6279296875], + [134.8822265625, 35.663232421874994], + [135.17431640625003, 35.74707031250003], + [135.22050781250002, 35.741113281249966], + [135.26542968750002, 35.721777343750034], + [135.26875, 35.65966796874997], + [135.23203125000012, 35.591894531250034], + [135.26777343750004, 35.550878906250034], + [135.32695312500002, 35.52553710937502], + [135.60185546875007, 35.51772460937502], + [135.68027343750006, 35.50312], + [135.79501953125006, 35.54951171875001], + [135.903125, 35.60688476562498], + [136.01621093750012, 35.68251953125002], + [136.09531250000006, 35.767626953125045], + [136.02226562500002, 35.87412109374998], + [136.00625, 35.99057617187498], + [136.06748046875006, 36.11684570312505], + [136.15625, 36.22333984374998], + [136.26181640625006, 36.287695312500034], + [136.35898437500012, 36.36176757812501], + [136.5558593750001, 36.57197265625004], + [136.69814453125005, 36.742041015625034], + [136.74931640625007, 36.95102539062498], + [136.71923828124997, 37.19838867187502], + [136.84345703125004, 37.38212890624999], + [136.9623046875, 37.413671875], + [137.19863281250005, 37.49746093750002], + [137.32265625, 37.52207031249998], + [137.34121093750005, 37.48544921874998], + [137.3375, 37.437451171874955], + [137.15205078125004, 37.28315429687498], + [137.04580078125, 37.21972656250003], + [136.98222656250002, 37.200048828125006], + [136.92402343750004, 37.17197265625006], + [136.89990234375003, 37.11767578125], + [136.99443359375002, 37.026757812499966], + [137.01855468750003, 36.959619140624966], + [137.01269531249997, 36.89511718750006], + [137.01669921875006, 36.83720703124999], + [137.12373046875004, 36.774072265624994], + [137.24628906250004, 36.753173828125], + [137.29765625000002, 36.753759765625034], + [137.34257812500002, 36.770361328125034], + [137.48261718750004, 36.924755859374955], + [137.5140625, 36.95156250000002], + [137.91318359375012, 37.06459960937502], + [138.1095703125001, 37.15107421874998], + [138.21806640625007, 37.17338867187499], + [138.31992187500012, 37.21840820312502], + [138.54833984375003, 37.39213867187496], + [138.63281249999997, 37.47216796875003], + [138.709375, 37.560644531250006], + [138.77060546875012, 37.663427734375006], + [138.81884765624997, 37.77470703125002], + [138.88505859375007, 37.84394531250001], + [139.24716796875012, 38.00908203124999], + [139.36386718750006, 38.09902343750002], + [139.40097656250006, 38.142578125], + [139.44580078124997, 38.26875], + [139.4767578125001, 38.399804687499994], + [139.52080078125007, 38.50253906250006], + [139.58017578125006, 38.59887695312497], + [139.65976562500006, 38.69702148437497], + [139.74912109375006, 38.78813476562499], + [139.80195312500004, 38.881591796875], + [139.87861328125004, 39.10493164062504], + [139.9123046875001, 39.22856445312499], + [139.93857421875012, 39.27314453125001], + [139.97714843750006, 39.310644531250034], + [140.01083984375006, 39.358056640624994], + [140.0365234375, 39.41113281249997], + [140.04814453125002, 39.463720703125034], + [140.06474609375002, 39.624414062499994], + [140.05468749999997, 39.74926757812503], + [139.99472656250006, 39.855078125], + [139.94521484375005, 39.885107421875006], + [139.89121093750006, 39.886865234374994], + [139.81035156250002, 39.87773437500002], + [139.74150390625002, 39.92084960937498], + [139.75546875000012, 39.95893554687504], + [139.82568359375003, 39.966015624999955], + [139.87363281250012, 39.98569335937506], + [139.90800781250002, 40.02172851562503], + [139.97246093750007, 40.13696289062497], + [140.01113281250005, 40.26035156250006], + [140.01445312500002, 40.31489257812498], + [139.96406250000004, 40.41430664062497], + [139.92392578125006, 40.53388671875001], + [139.92285156250003, 40.59843750000002], + [139.96669921875005, 40.672753906249966], + [140.02929687500003, 40.73315429687503], + [140.0853515625, 40.74736328124999], + [140.14609375000012, 40.751562500000034], + [140.20126953125006, 40.77490234375], + [140.25234375, 40.80878906249998], + [140.28125, 40.84609375000002], + [140.32626953125012, 40.94765625000002], + [140.34355468750002, 41.00566406250002], + [140.31523437500002, 41.16088867187503], + [140.3444335937501, 41.203320312499955], + [140.38593750000004, 41.22978515625002], + [140.44130859375, 41.20966796875001], + [140.49804687500003, 41.205664062500006], + [140.5641601562501, 41.21181640625002], + [140.62763671875004, 41.195410156250034], + [140.63964843750003, 41.155615234375006], + [140.67939453125004, 40.89326171875004], + [140.70244140625002, 40.85781250000002], + [140.74863281250012, 40.830322265625], + [140.80078124999997, 40.834326171875034], + [140.84580078125012, 40.875146484374994], + [140.87617187500004, 40.92954101562506], + [140.93603515625003, 40.940771484375034], + [141.1185546875, 40.88227539062501], + [141.18320312500006, 40.92402343750001], + [141.22539062500007, 40.98847656249998], + [141.262109375, 41.102685546874994], + [141.24423828125006, 41.20561523437499], + [141.20039062500004, 41.24360351562501], + [141.15507812500002, 41.23671875000002], + [141.11503906250007, 41.20849609375006], + [141.07041015625012, 41.19306640625001], + [140.80058593750002, 41.138818359374966], + [140.80185546875012, 41.253662109375], + [140.85957031250004, 41.42543945312502], + [140.89150390625, 41.47978515624999], + [140.9369140625, 41.50556640624998], + [141.0501953125, 41.47573242187505], + [141.10585937500005, 41.45585937499999], + [141.22929687500007, 41.37265625] + ] + ], + [ + [ + [139.48125, 42.08100585937498], + [139.4583984375, 42.075634765624955], + [139.43457031250003, 42.08408203124998], + [139.4115234375, 42.15966796875003], + [139.43134765625004, 42.19956054687498], + [139.49580078125004, 42.227441406249966], + [139.55839843750002, 42.235205078125034], + [139.50507812500004, 42.09638671875001], + [139.48125, 42.08100585937498] + ] + ], + [ + [ + [141.29541015625003, 45.11933593750001], + [141.2259765625, 45.112207031249966], + [141.14531250000002, 45.153906250000034], + [141.13535156250012, 45.20620117187502], + [141.19375, 45.24785156249999], + [141.25185546875005, 45.23247070312496], + [141.31005859374997, 45.17856445312498], + [141.32919921875006, 45.150488281250034], + [141.29541015625003, 45.11933593750001] + ] + ], + [ + [ + [141.07275390624997, 45.33286132812498], + [141.03398437500007, 45.26933593750002], + [140.98212890625004, 45.36376953124997], + [140.97167968749997, 45.465478515624994], + [141.00166015625004, 45.46484375000006], + [141.05673828125006, 45.449560546875034], + [141.06992187500012, 45.4], + [141.07275390624997, 45.33286132812498] + ] + ], + [ + [ + [143.82431640625012, 44.11699218749999], + [143.94951171875002, 44.111914062500034], + [144.00546875000006, 44.11665039062501], + [144.10136718750007, 44.10156250000006], + [144.4818359375, 43.94956054687498], + [144.59667968749997, 43.930224609375045], + [144.71523437500005, 43.92797851562503], + [144.79853515625004, 43.940234375000045], + [144.871875, 43.98193359375], + [145.10156249999997, 44.166162109374966], + [145.34277343750003, 44.33388671875002], + [145.36953125000005, 44.32739257812506], + [145.36962890624997, 44.28129882812499], + [145.351953125, 44.22978515624996], + [145.24521484375012, 44.07617187500003], + [145.12636718750005, 43.869384765625], + [145.10107421874997, 43.76455078125005], + [145.13964843750003, 43.6625], + [145.2140625000001, 43.578222656250006], + [145.27294921874997, 43.46289062500006], + [145.34082031249997, 43.30253906249999], + [145.43613281250012, 43.2822265625], + [145.48789062500006, 43.27973632812504], + [145.58330078125007, 43.327783203124966], + [145.67363281250002, 43.38886718749998], + [145.75126953125002, 43.39628906249999], + [145.83300781249997, 43.38593750000001], + [145.72558593750003, 43.343457031249955], + [145.62421875000004, 43.29130859374999], + [145.53740234375002, 43.19267578124999], + [145.50507812500004, 43.17421875000002], + [145.40478515625003, 43.180273437500034], + [145.34746093750007, 43.17670898437501], + [145.23007812500006, 43.13549804687506], + [145.12714843750004, 43.08886718750006], + [145.02880859374997, 43.03164062500002], + [144.92138671874997, 43.00092773437498], + [144.80712890625003, 42.99370117187502], + [144.63076171875, 42.946923828124994], + [144.51621093750012, 42.94360351562503], + [144.30156250000007, 42.98442382812502], + [144.19726562499997, 42.97363281250003], + [143.96933593750006, 42.88139648437499], + [143.76210937500005, 42.748144531250006], + [143.58095703125, 42.598730468750034], + [143.42949218750002, 42.41889648437498], + [143.36865234374997, 42.32514648437498], + [143.33212890625012, 42.22036132812505], + [143.32714843749997, 42.15102539062505], + [143.31367187500004, 42.084326171875034], + [143.27871093750005, 42.03784179687497], + [143.2365234375001, 42.000195312499955], + [143.11171875000005, 42.022216796875], + [142.90634765625006, 42.118359374999955], + [142.508203125, 42.257958984374966], + [142.08789062500003, 42.47172851562502], + [141.85136718750007, 42.57905273437501], + [141.40664062500005, 42.54692382812496], + [140.98613281250002, 42.34213867187498], + [140.94843750000004, 42.35957031249998], + [140.78759765624997, 42.5], + [140.70976562500002, 42.555615234374955], + [140.61679687500006, 42.57133789062496], + [140.54765625000002, 42.56953125000004], + [140.48046875000003, 42.559375], + [140.3854492187501, 42.487158203125034], + [140.35058593750003, 42.43510742187502], + [140.32353515625002, 42.37607421875006], + [140.31523437500002, 42.33427734374999], + [140.32666015625003, 42.293359375], + [140.41660156250006, 42.200732421875045], + [140.5275390625001, 42.13178710937504], + [140.57773437500012, 42.11865234375003], + [140.68427734375004, 42.12348632812501], + [140.7337890625, 42.116357421874994], + [140.91230468750004, 41.977783203125], + [141.10771484375007, 41.84804687500005], + [141.15097656250012, 41.805078125], + [141.07871093750012, 41.75981445312502], + [140.99951171874997, 41.73740234375006], + [140.90751953125007, 41.743261718750006], + [140.81640624999997, 41.76040039062505], + [140.65986328125004, 41.815576171874994], + [140.5929687500001, 41.7685546875], + [140.48916015625, 41.67216796875002], + [140.43164062500003, 41.56738281249997], + [140.3849609375001, 41.51928710937503], + [140.27011718750006, 41.45600585937501], + [140.1486328125001, 41.423242187499994], + [140.08515625000004, 41.43408203125], + [140.03662109374997, 41.473779296874994], + [140.0091796875, 41.521337890625006], + [139.99531250000004, 41.57641601562503], + [140.02128906250007, 41.69575195312501], + [140.0841796875001, 41.80322265624997], + [140.10839843749997, 41.912939453125034], + [140.05683593750004, 42.067333984374955], + [140.02412109375004, 42.09956054687504], + [139.89511718750012, 42.190039062500006], + [139.83544921874997, 42.278076171875], + [139.82089843750012, 42.387597656249994], + [139.82851562500005, 42.448144531249994], + [139.86015625000002, 42.58173828125004], + [139.89111328125003, 42.64921875000002], + [139.95058593750005, 42.67143554687502], + [140.01503906250005, 42.68476562499998], + [140.1146484375, 42.73295898437502], + [140.22412109375003, 42.79550781249998], + [140.32861328124997, 42.86684570312502], + [140.43222656250012, 42.95410156250006], + [140.48642578125006, 43.049902343750034], + [140.39746093749997, 43.16733398437506], + [140.379296875, 43.23710937499996], + [140.39238281250002, 43.303125], + [140.48691406250006, 43.338183593750045], + [140.58457031250006, 43.31171874999998], + [140.78066406250005, 43.214990234374994], + [140.81914062500007, 43.20546875], + [140.9538085937501, 43.20097656249999], + [141.13818359374997, 43.17993164062506], + [141.24501953125, 43.18505859375003], + [141.29628906250005, 43.19965820312498], + [141.37412109375006, 43.279638671875006], + [141.41230468750004, 43.381494140624994], + [141.39833984375005, 43.5125], + [141.3976562500001, 43.64262695312499], + [141.44677734374997, 43.748632812500006], + [141.60068359375006, 43.91899414062499], + [141.64472656250004, 44.01943359375002], + [141.66083984375004, 44.26362304687501], + [141.71630859374997, 44.371191406250006], + [141.7609375000001, 44.482519531250034], + [141.78222656249997, 44.71635742187496], + [141.71904296875002, 44.94106445312502], + [141.65576171874997, 45.05122070312498], + [141.58300781250003, 45.15595703125001], + [141.59375, 45.255957031250034], + [141.65253906250004, 45.3486328125], + [141.6540039062501, 45.3765625], + [141.66796874999997, 45.401269531249966], + [141.778125, 45.41889648437501], + [141.82949218750005, 45.43876953124999], + [141.87871093750002, 45.483300781249994], + [141.93769531250004, 45.509521484375], + [141.98085937500005, 45.483496093750034], + [142.01640625000002, 45.43793945312498], + [142.1715820312501, 45.32563476562501], + [142.41601562499997, 45.125], + [142.70410156249997, 44.81918945312506], + [142.88476562499997, 44.670117187499955], + [143.07509765625005, 44.53491210937506], + [143.28857421875003, 44.39663085937502], + [143.51191406250004, 44.27753906250001], + [143.65458984375007, 44.22133789062502], + [143.75908203125002, 44.131640625000045], + [143.82431640625012, 44.11699218749999] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Siachen Glacier", + "iso_a2": "-99", + "iso_a3": "-99", + "iso_n3": "-99", + "continent": "Asia" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [77.79941406250003, 35.495898437499996], + [77.69697265625001, 35.443261718749994], + [77.57158203124999, 35.378759765625], + [77.42343750000003, 35.302587890625], + [77.29296875, 35.235546875], + [77.16855468750003, 35.171533203124994], + [77.04863281249999, 35.109912109374996], + [77.00449218750003, 35.196337890624996], + [76.97890625000002, 35.246435546875], + [76.927734375, 35.346630859375], + [76.88222656250002, 35.4357421875], + [76.81279296874999, 35.571826171874996], + [76.76689453124999, 35.66171875], + [76.87890625, 35.61328125], + [77.09003906250001, 35.552050781249996], + [77.29482421875002, 35.508154296875], + [77.44648437500001, 35.4755859375], + [77.52001953125, 35.4734375], + [77.57255859374999, 35.471826171874994], + [77.72402343750002, 35.48056640625], + [77.79941406250003, 35.495898437499996] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Kazakhstan", + "iso_a2": "KZ", + "iso_a3": "KAZ", + "iso_n3": "398", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [50.184472656249994, 44.854638671874994], + [50.148730468750074, 44.82646484375002], + [50.0953125, 44.83061523437499], + [49.99511718750003, 44.93696289062498], + [50.02304687500006, 45.04472656249999], + [50.059375, 45.06679687500005], + [50.10986328124997, 45.08193359375002], + [50.116601562499994, 45.058251953124994], + [50.04531250000005, 45.01000976562503], + [50.038867187500074, 44.949121093749966], + [50.09814453124997, 44.881542968749955], + [50.184472656249994, 44.854638671874994] + ] + ], + [ + [ + [50.31171875000004, 44.97207031250002], + [50.27724609375005, 44.958593750000034], + [50.25615234375002, 45.02241210937498], + [50.29492187500003, 45.07592773437503], + [50.34970703125006, 45.08300781249997], + [50.330859375000074, 44.998437499999966], + [50.31171875000004, 44.97207031250002] + ] + ], + [ + [ + [52.68242187500002, 45.41181640624998], + [52.66484375000002, 45.40131835937498], + [52.59833984375004, 45.42817382812504], + [52.55429687500006, 45.473974609375034], + [52.60888671874997, 45.528027343749955], + [52.659570312499994, 45.51806640625006], + [52.69296875000006, 45.46074218750002], + [52.68242187500002, 45.41181640624998] + ] + ], + [ + [ + [70.08740234375003, 55.17675781250003], + [70.18242187500002, 55.162451171875034], + [70.293359375, 55.18359375], + [70.371484375, 55.21225585937498], + [70.41718750000004, 55.25317382812506], + [70.48632812500003, 55.282373046874966], + [70.73808593750007, 55.30517578125], + [70.79033203125007, 55.261132812499994], + [70.91015624999997, 55.127978515625045], + [70.99179687500006, 54.95048828125002], + [71.12626953125002, 54.71503906250001], + [71.18554687500003, 54.59931640624998], + [71.15917968749997, 54.53862304687496], + [71.159765625, 54.45541992187498], + [71.15214843750007, 54.36406250000002], + [71.05273437499997, 54.26049804687497], + [71.09316406250005, 54.21220703124999], + [71.33642578125003, 54.15834960937502], + [71.6771484375, 54.178027343750045], + [71.8874023437501, 54.22148437500002], + [72.00449218750006, 54.20566406249998], + [72.065625, 54.231640624999955], + [72.10537109375, 54.30844726562506], + [72.18603515625003, 54.32563476562501], + [72.26914062500006, 54.27211914062502], + [72.3294921875, 54.18144531250002], + [72.38730468750006, 54.12304687500003], + [72.3830078125001, 54.05366210937501], + [72.40429687499997, 53.96445312500006], + [72.44677734375003, 53.94184570312498], + [72.53027343749997, 53.975781249999955], + [72.58593750000003, 53.99594726562498], + [72.59921875000006, 54.023046875], + [72.57558593750005, 54.05649414062498], + [72.56425781250007, 54.09042968750006], + [72.5827148437501, 54.12158203125], + [72.62226562500004, 54.13432617187502], + [72.74101562500002, 54.12451171874997], + [72.91406249999997, 54.10732421875002], + [73.1193359375001, 53.98076171874999], + [73.22988281250005, 53.957812500000045], + [73.27656250000004, 53.95561523437502], + [73.38066406250002, 53.96284179687498], + [73.50566406250002, 53.99931640624996], + [73.58994140625, 54.04497070312502], + [73.61796875000007, 54.06738281249997], + [73.66640625000005, 54.06347656249997], + [73.71240234375003, 54.04238281250002], + [73.71552734375004, 53.996191406250034], + [73.67890625000004, 53.92944335937503], + [73.55419921875003, 53.868310546874994], + [73.39941406250003, 53.81147460937498], + [73.30566406250003, 53.707226562499955], + [73.28574218750006, 53.598388671875], + [73.3268554687501, 53.54316406250001], + [73.3619140625, 53.506201171875034], + [73.371875, 53.45439453124996], + [73.40693359375004, 53.44755859374999], + [73.4699218750001, 53.468896484374994], + [73.64296875, 53.576269531250006], + [73.7311523437501, 53.602783203125], + [73.85898437500006, 53.61972656249998], + [74.06865234375002, 53.61142578124998], + [74.20996093749997, 53.57646484374996], + [74.27734375000003, 53.527734375], + [74.35156250000003, 53.487646484375006], + [74.40273437500005, 53.504443359375045], + [74.42929687500006, 53.550732421874955], + [74.43046875000002, 53.60371093750001], + [74.45195312500007, 53.64726562500002], + [74.68144531250007, 53.75439453124997], + [74.83417968750004, 53.82568359375003], + [74.88681640625, 53.834033203125045], + [74.98896484375004, 53.81923828125005], + [75.0521484375, 53.82670898437496], + [75.22021484374997, 53.89379882812506], + [75.37705078125006, 53.970117187499966], + [75.39238281250007, 54.021728515625], + [75.3981445312501, 54.06850585937502], + [75.43720703125004, 54.08964843749999], + [75.6568359375, 54.10600585937502], + [75.69287109374997, 54.114794921875045], + [75.88066406250007, 54.16796875000003], + [76.14052734375, 54.25854492187503], + [76.26660156249997, 54.31196289062498], + [76.496484375, 54.335693359375], + [76.53916015625012, 54.35107421875003], + [76.61552734375002, 54.387109375], + [76.75937500000012, 54.436865234375006], + [76.8373046875, 54.4423828125], + [76.78896484375, 54.321875], + [76.70302734375, 54.18247070312506], + [76.65458984375007, 54.14526367187503], + [76.42167968750007, 54.151513671874966], + [76.42207031250004, 54.11352539062506], + [76.45859375000012, 54.055273437500006], + [76.48476562500005, 54.02255859374998], + [76.51308593750005, 53.99321289062496], + [76.57568359374997, 53.94252929687502], + [76.820703125, 53.82265625000002], + [77.13242187500006, 53.670117187499955], + [77.46923828124997, 53.49877929687503], + [77.70439453125007, 53.379150390625], + [77.79941406250006, 53.317431640625045], + [77.85996093750006, 53.269189453124994], + [78.03349609375007, 53.09497070312503], + [78.19804687500002, 52.9296875], + [78.47548828125005, 52.638427734375], + [78.72148437500007, 52.35703125000006], + [78.99208984375005, 52.047412109375045], + [79.14873046875007, 51.86811523437501], + [79.46884765625012, 51.49311523437498], + [79.55429687500012, 51.37797851562499], + [79.71640625000006, 51.16000976562498], + [79.85966796875007, 50.955468749999966], + [79.98623046875, 50.774560546874966], + [80.06591796874997, 50.75820312500002], + [80.07207031250007, 50.807275390624994], + [80.08632812500005, 50.839990234374994], + [80.12724609375002, 50.85834960937498], + [80.22021484374997, 50.91176757812505], + [80.27041015625005, 50.92460937499999], + [80.34521484375003, 50.91909179687502], + [80.42363281250002, 50.94628906249997], + [80.45224609375006, 50.997607421875045], + [80.43359374999997, 51.092626953125034], + [80.42148437500012, 51.136376953124966], + [80.44804687500002, 51.18334960937503], + [80.49101562500007, 51.20175781250006], + [80.55068359375005, 51.21660156249996], + [80.60546875000003, 51.22421875], + [80.65048828125006, 51.27734375], + [80.73525390625, 51.29340820312498], + [80.81308593750012, 51.28349609375002], + [80.87734375, 51.28144531250004], + [80.93408203124997, 51.24277343749998], + [80.965625, 51.189794921875006], + [81.02675781250005, 51.185693359374994], + [81.12724609375002, 51.19106445312502], + [81.14101562500005, 51.146582031250006], + [81.11240234375006, 51.07236328124998], + [81.0775390625, 51.01494140625002], + [81.0714843750001, 50.96875], + [81.12460937500006, 50.94628906249997], + [81.31914062500002, 50.96640624999998], + [81.38828125000006, 50.95649414062501], + [81.41015624999997, 50.90976562499998], + [81.4376953125001, 50.87104492187501], + [81.4515625, 50.82368164062504], + [81.43144531250007, 50.771142578124994], + [81.46591796875006, 50.73984375], + [81.63388671875012, 50.739111328125034], + [81.75205078125012, 50.76440429687503], + [81.93369140625006, 50.766357421875], + [82.098046875, 50.710839843749966], + [82.21191406250003, 50.71943359375004], + [82.32636718750004, 50.74189453124998], + [82.49394531250007, 50.72758789062499], + [82.61171875, 50.77148437499997], + [82.69296875000012, 50.82631835937505], + [82.71855468750002, 50.869482421875034], + [82.76083984375012, 50.89335937500002], + [82.91904296875006, 50.89311523437496], + [83.0192382812501, 50.89726562500002], + [83.09277343749997, 50.96059570312505], + [83.16025390625012, 50.98920898437501], + [83.27373046875007, 50.99458007812504], + [83.35732421875005, 50.99458007812504], + [83.58144531250005, 50.935742187499955], + [83.71777343750003, 50.88715820312501], + [83.859765625, 50.81801757812505], + [83.94511718750007, 50.774658203125], + [84.00234375, 50.67685546875006], + [84.09931640625004, 50.60473632812503], + [84.1759765625001, 50.52055664062502], + [84.19453125000004, 50.437451171874955], + [84.25781249999997, 50.28823242187502], + [84.32324218749997, 50.239160156249966], + [84.40097656250012, 50.239160156249966], + [84.49902343750003, 50.21875], + [84.60732421875005, 50.20239257812503], + [84.83896484375006, 50.09130859375006], + [84.9240234375001, 50.087988281250006], + [84.9894531250001, 50.061425781249994], + [84.99970703125004, 50.01030273437499], + [84.97519531250012, 49.951074218749994], + [85.00078125000002, 49.894140625000034], + [85.07646484375007, 49.821630859375006], + [85.13652343750002, 49.75073242187503], + [85.21015625000004, 49.66484375000002], + [85.2326171875001, 49.61582031249998], + [85.29189453125, 49.599462890625034], + [85.37158203124997, 49.62392578125005], + [85.49843750000005, 49.605371093749994], + [85.88046875000006, 49.556542968749994], + [85.93359374999997, 49.550439453124994], + [85.97441406250002, 49.49931640624996], + [86.02958984375007, 49.50341796875], + [86.09296875000004, 49.50546874999998], + [86.1808593750001, 49.49931640624996], + [86.24218749999997, 49.546337890624955], + [86.29238281250005, 49.5875], + [86.41796874999997, 49.63847656249999], + [86.52226562500007, 49.70776367187497], + [86.61015625000007, 49.76914062500006], + [86.67548828125004, 49.77729492187501], + [86.72871093750004, 49.748681640624966], + [86.7306640625001, 49.69555664062497], + [86.66533203125002, 49.656689453124955], + [86.61425781249997, 49.60971679687498], + [86.62646484374997, 49.56269531250001], + [86.71435546874997, 49.55859375000006], + [86.81210937500006, 49.487890625000034], + [86.95292968750007, 49.32207031250002], + [87.00097656249997, 49.28730468750004], + [87.07060546875007, 49.25458984375004], + [87.14804687500012, 49.239794921875045], + [87.23369140625007, 49.216162109375006], + [87.29687, 49.14765625000001], + [87.32285156250012, 49.085791015625006], + [87.22998046875003, 49.10585937500002], + [87.0485351562501, 49.109912109375045], + [86.93798828124997, 49.09755859375002], + [86.8859375000001, 49.090576171875], + [86.8083007812501, 49.04970703125002], + [86.753125, 49.00883789062496], + [86.72861328125012, 48.93935546875002], + [86.75781250000003, 48.860742187499994], + [86.7179687500001, 48.697167968749966], + [86.66376953125004, 48.635546875000045], + [86.54941406250012, 48.52861328125002], + [86.48330078125005, 48.50537109374997], + [86.37255859374997, 48.486230468749994], + [86.265625, 48.45454101562501], + [86.05615234374997, 48.42373046875005], + [85.82988281250007, 48.40805664062506], + [85.7494140625, 48.38505859374999], + [85.69218750000007, 48.31181640624999], + [85.65156250000004, 48.25053710937502], + [85.6263671875, 48.20400390625005], + [85.56230468750002, 48.051855468750034], + [85.52597656250006, 47.915625], + [85.56162109375012, 47.746484375], + [85.58828125000005, 47.558496093749994], + [85.5866210937501, 47.49365234375], + [85.64179687500004, 47.39741210937504], + [85.66982421875005, 47.33837890625], + [85.65664062500005, 47.254638671875], + [85.57724609375012, 47.1884765625], + [85.5296875, 47.10078125000001], + [85.484765625, 47.06352539062496], + [85.35537109375005, 47.046728515625006], + [85.23349609375006, 47.03637695312503], + [85.1105468750001, 46.96123046874999], + [85.01220703125003, 46.90922851562496], + [84.85820312500002, 46.843164062499994], + [84.78613281249997, 46.83071289062505], + [84.74599609375005, 46.86435546875006], + [84.71953125000007, 46.939355468749966], + [84.66660156250006, 46.97236328125004], + [84.59228515625003, 46.974951171875034], + [84.53242187500004, 46.97578125000001], + [84.33886718749997, 46.99614257812499], + [84.21513671875007, 46.99472656249998], + [84.12207031249997, 46.97861328124998], + [84.016015625, 46.97050781250002], + [83.83261718750006, 46.99785156249999], + [83.71396484375012, 47.02104492187502], + [83.63408203125002, 47.043212890625], + [83.4435546875001, 47.108642578125], + [83.19306640625004, 47.18657226562499], + [83.09033203124997, 47.209375], + [83.02949218750004, 47.18593750000002], + [83.02011718750006, 47.141455078125034], + [83.0041015625001, 47.03349609374996], + [82.97490234375002, 46.96601562499998], + [82.8, 46.62446289062504], + [82.69218750000007, 46.38666992187501], + [82.555078125, 46.15869140625], + [82.51171874999997, 46.00581054687504], + [82.42968749999997, 45.811914062499966], + [82.34814453124997, 45.671533203124966], + [82.31523437500002, 45.59492187499998], + [82.3122070312501, 45.56372070312503], + [82.32666015625003, 45.519921875], + [82.45166015624997, 45.47197265624999], + [82.58251953125003, 45.442578124999955], + [82.61162109375007, 45.424267578124955], + [82.62578125000002, 45.37441406250002], + [82.62109374999997, 45.293115234374966], + [82.59697265625002, 45.215966796874966], + [82.558984375, 45.155419921874994], + [82.52148437500003, 45.12548828125], + [82.4787109375001, 45.12358398437499], + [82.3966796875001, 45.162451171875006], + [82.3234375000001, 45.205859375000045], + [82.26660156249997, 45.21909179687498], + [82.12275390625004, 45.19487304687502], + [81.98925781250003, 45.16186523437506], + [81.94492187500006, 45.16083984375001], + [81.86748046875002, 45.18208007812498], + [81.78964843750012, 45.22602539062498], + [81.75888671875006, 45.31083984375002], + [81.69199218750012, 45.34936523437497], + [81.60205078125003, 45.31083984375002], + [81.33476562500002, 45.246191406250006], + [81.04033203125007, 45.16914062500001], + [80.85332031250007, 45.129296875], + [80.78007812500007, 45.13554687500002], + [80.63476562500003, 45.126513671875045], + [80.50917968750005, 45.10498046875], + [80.41494140625, 45.07509765625005], + [80.2282226562501, 45.03398437500002], + [80.05917968750012, 45.006445312500006], + [79.95019531250003, 44.944091796875], + [79.871875, 44.88378906249997], + [79.87529296875002, 44.86083984375], + [79.93212890624997, 44.82519531250003], + [79.99716796875006, 44.797216796875006], + [80.12783203125005, 44.80375976562502], + [80.25507812500004, 44.80810546875], + [80.36083984375003, 44.770312500000045], + [80.45546875, 44.74609375], + [80.48154296875006, 44.71464843749999], + [80.45546875, 44.68408203124997], + [80.40058593750004, 44.67690429687502], + [80.38144531250012, 44.655419921874994], + [80.39101562500005, 44.626806640625034], + [80.35507812500006, 44.55200195312497], + [80.336328125, 44.438378906249994], + [80.35488281250005, 44.326513671875034], + [80.36533203125012, 44.223291015624966], + [80.35898437500006, 44.17128906250005], + [80.35527343750002, 44.09726562500006], + [80.39580078125002, 44.04716796874999], + [80.43154296875005, 43.95175781249998], + [80.49599609375, 43.89208984375], + [80.59345703125004, 43.68510742187502], + [80.65078125, 43.56416015624998], + [80.7038085937501, 43.42705078125002], + [80.6654296875, 43.35297851562504], + [80.66777343750002, 43.31005859375], + [80.72978515625002, 43.27426757812498], + [80.7570312500001, 43.20434570312506], + [80.78574218750006, 43.16157226562504], + [80.77773437500005, 43.11894531249996], + [80.75117187500004, 43.10249023437498], + [80.61699218750007, 43.128271484375006], + [80.50703125000004, 43.08579101562506], + [80.39023437500006, 43.043115234374966], + [80.37451171874997, 43.020410156249966], + [80.3712890625001, 42.99560546874997], + [80.38339843750006, 42.973779296874966], + [80.45068359375003, 42.935546875], + [80.54375, 42.911718750000034], + [80.53896484375005, 42.873486328124955], + [80.4240234375001, 42.85576171874999], + [80.25029296875007, 42.797265624999966], + [80.20224609375012, 42.73447265624998], + [80.16503906249997, 42.66552734375006], + [80.16191406250007, 42.62553710937499], + [80.17929687500006, 42.51835937499999], + [80.20576171875004, 42.39941406250003], + [80.25507812500004, 42.274169921875], + [80.25908203125007, 42.23540039062499], + [80.23300781250006, 42.2078125], + [80.209375, 42.190039062500006], + [80.07128906249997, 42.302978515625], + [79.92109375000004, 42.41313476562496], + [79.80341796875004, 42.43847656249997], + [79.59843750000002, 42.456640625000034], + [79.49013671875, 42.45756835937496], + [79.42822265624997, 42.483496093750006], + [79.36777343750012, 42.547216796875006], + [79.29550781250006, 42.604833984375034], + [79.20302734375005, 42.66601562499997], + [79.16484375000007, 42.759033203125], + [79.1266601562501, 42.775732421875034], + [79.05986328125002, 42.763818359374994], + [78.94794921875004, 42.76669921875006], + [78.88515625, 42.77490234375003], + [78.79150390625003, 42.79082031249999], + [78.6422851562501, 42.82871093749998], + [78.52421875000002, 42.86464843750002], + [78.37597656250003, 42.871484375], + [78.29003906250003, 42.86435546875006], + [78.0231445312501, 42.857519531250006], + [77.80166015625, 42.89521484375004], + [77.6224609375, 42.90224609375005], + [77.51220703125003, 42.90004882812505], + [77.45927734375007, 42.90473632812501], + [77.36855468750005, 42.904443359374966], + [77.23554687500004, 42.912646484375045], + [77.05732421875004, 42.970654296874955], + [76.98808593750007, 42.97358398437501], + [76.9440429687501, 42.971484375000045], + [76.64648437500003, 42.928808593750034], + [76.50917968750005, 42.91889648437498], + [76.2181640625, 42.923730468749994], + [75.9322265625, 42.92851562499999], + [75.84033203125003, 42.9375], + [75.78955078124997, 42.93291015624999], + [75.68173828125, 42.83046875], + [75.63564453125005, 42.81459960937505], + [75.36621093749997, 42.83696289062499], + [75.04765625000007, 42.904394531250034], + [74.8175781250001, 42.978173828124966], + [74.6222656250001, 43.05620117187496], + [74.36386718750006, 43.17944335937503], + [74.20908203125006, 43.24038085937502], + [74.18681640625002, 43.205273437499955], + [74.14589843750005, 43.194091796875], + [74.08623046875007, 43.18862304687505], + [73.94921875000003, 43.19501953125001], + [73.88603515625002, 43.132568359375], + [73.71855468750002, 43.08789062500003], + [73.6120117187501, 43.04790039062496], + [73.55625, 43.002783203125006], + [73.45019531249997, 42.703027343749966], + [73.42187, 42.59350585937503], + [73.49296875000007, 42.409033203125034], + [73.41162109375003, 42.41977539062498], + [73.316015625, 42.46699218750001], + [73.2829101562501, 42.50410156250004], + [73.1908203125, 42.52685546875006], + [72.85507812500006, 42.561132812500006], + [72.7923828125, 42.60346679687501], + [72.75292968750003, 42.63789062500001], + [72.66611328125, 42.66040039062497], + [72.54316406250004, 42.67773437500006], + [72.27578125, 42.757666015625006], + [72.16181640625004, 42.76069335937498], + [71.816796875, 42.822167968749994], + [71.76054687500002, 42.82148437500004], + [71.734765625, 42.818896484375045], + [71.60078125000004, 42.778662109375006], + [71.5142578125, 42.766943359375006], + [71.42207031250004, 42.78315429687504], + [71.25664062500002, 42.733544921874966], + [71.16738281250005, 42.66743164062498], + [71.09355468750002, 42.586523437500034], + [71.02275390625007, 42.53544921875002], + [71.00195312500003, 42.459082031250006], + [70.95234375000004, 42.41938476562501], + [70.89287109375007, 42.339990234374994], + [70.89287109375007, 42.29370117187497], + [70.94677734374997, 42.24868164062505], + [70.86035156250003, 42.20722656250004], + [70.76455078125005, 42.194189453125034], + [70.71523437500005, 42.16865234374998], + [70.6625, 42.10747070312496], + [70.61328124999997, 42.05473632812496], + [70.58427734375002, 42.036035156249966], + [70.54013671875006, 42.03945312500005], + [70.48906250000007, 42.08027343750001], + [70.41601562500003, 42.07856445312501], + [70.32890625000002, 42.02797851562502], + [70.22587890625007, 41.94599609375001], + [70.09560546875, 41.82050781250004], + [69.95996093749997, 41.754052734374994], + [69.78808593749997, 41.69731445312499], + [69.66386718750007, 41.672119140625], + [69.56513671875004, 41.62905273437502], + [69.40097656250006, 41.54189453125002], + [69.3683593750001, 41.490576171875034], + [69.24931640625007, 41.46025390624999], + [69.15361328125002, 41.42524414062498], + [69.06494140625003, 41.366943359375], + [69.04345703124997, 41.26411132812501], + [68.9869140625, 41.205029296874955], + [68.85117187500006, 41.12382812500002], + [68.73710937500002, 41.04189453125002], + [68.66279296875004, 40.961523437500006], + [68.58408203125, 40.876269531250045], + [68.5592773437501, 40.82929687499998], + [68.55654296875, 40.76513671875006], + [68.59365234375, 40.711279296875006], + [68.60068359375, 40.65996093750002], + [68.57265625, 40.62265624999998], + [68.495703125, 40.60864257812506], + [68.41503906250003, 40.61943359375002], + [68.29189453125, 40.656103515625034], + [68.16025390625, 40.721777343750006], + [68.11230468749997, 40.75405273437502], + [68.04765625000007, 40.80927734374998], + [68.05703125, 40.86059570312506], + [68.09033203124997, 40.96025390625002], + [68.11308593750007, 41.02861328124999], + [68.059375, 41.06127929687497], + [68.01972656250004, 41.09624023437499], + [67.99140625000004, 41.13002929687505], + [67.9357421875001, 41.19658203125002], + [67.86572265625003, 41.18027343749998], + [67.805078125, 41.163916015625034], + [67.73505859375004, 41.18725585937497], + [67.52802734375004, 41.177148437499966], + [67.37158203124997, 41.16953125], + [67.225, 41.16235351562497], + [67.038671875, 41.1533203125], + [66.81425781250002, 41.14238281249999], + [66.74980468750007, 41.15708007812506], + [66.70966796875004, 41.17915039062501], + [66.66865234375004, 41.27075195312503], + [66.64531250000002, 41.3486328125], + [66.60166015625, 41.49433593750001], + [66.57255859375002, 41.60698242187496], + [66.53789062500007, 41.74125976562496], + [66.5150390625, 41.88940429687503], + [66.49863281250006, 41.99487304687503], + [66.3288085937501, 41.99833984375002], + [66.19316406250007, 42.001123046874966], + [66.00957031250007, 42.00488281250003], + [66.01123046874997, 42.088769531249966], + [66.01318359375003, 42.19448242187502], + [66.01552734375005, 42.314794921875006], + [66.04980468750003, 42.472753906250034], + [66.06269531250004, 42.60517578125001], + [66.078515625, 42.76665039062496], + [66.08886718749997, 42.873388671875034], + [66.1002929687501, 42.99082031249998], + [66.00566406250007, 42.95458984375006], + [65.9010742187501, 42.91450195312498], + [65.80302734375002, 42.87695312500006], + [65.73564453125002, 42.97211914062498], + [65.67021484375002, 43.064599609374994], + [65.570703125, 43.205175781250034], + [65.49619140625, 43.310546875], + [65.36650390625007, 43.37202148437501], + [65.27050781249997, 43.417529296875045], + [65.17089843750003, 43.49418945312502], + [65.08486328125005, 43.57368164062498], + [65.003125, 43.649072265624966], + [64.9054687500001, 43.714697265625006], + [64.81181640625002, 43.693945312500034], + [64.70605468749997, 43.65297851562505], + [64.6041015625, 43.61347656249998], + [64.49609375000003, 43.571630859375006], + [64.44316406250007, 43.551171875], + [64.31816406250002, 43.55893554687498], + [64.20878906250002, 43.565722656250045], + [64.01328125000006, 43.57783203125001], + [63.84814453124997, 43.58813476562497], + [63.67968749999997, 43.5986328125], + [63.44482421874997, 43.61323242187504], + [63.20703125000003, 43.62797851562502], + [63.047656250000074, 43.608496093750034], + [62.84619140624997, 43.583886718749994], + [62.6344726562501, 43.558007812499966], + [62.459375, 43.53662109374997], + [62.23789062500006, 43.50957031249996], + [62.0719726562501, 43.489355468750034], + [61.99023437500003, 43.492138671874955], + [61.887597656249994, 43.57724609374998], + [61.723242187500006, 43.713574218749955], + [61.62363281250006, 43.79619140625002], + [61.52587890625003, 43.877197265625], + [61.38505859375002, 43.99394531249996], + [61.27148437499997, 44.08227539062503], + [61.16074218750006, 44.16860351562502], + [61.09707031250005, 44.24824218749998], + [61.065332031249994, 44.34838867187497], + [61.007910156250006, 44.39379882812497], + [60.879199218750074, 44.45507812500003], + [60.741113281249994, 44.520849609375034], + [60.602929687499994, 44.58662109375001], + [60.464746093749994, 44.652441406250006], + [60.32666015624997, 44.71821289062498], + [60.18847656249997, 44.78398437499999], + [60.05029296874997, 44.849755859374966], + [59.912207031250006, 44.91557617187496], + [59.774023437500006, 44.981298828125034], + [59.6359375000001, 45.04707031250001], + [59.49785156250002, 45.11284179687502], + [59.35957031250004, 45.178613281249994], + [59.22148437500002, 45.24443359374999], + [59.083398437499994, 45.310205078124994], + [58.945117187500074, 45.37597656249997], + [58.80703125, 45.441796874999966], + [58.66894531250003, 45.50756835937506], + [58.555273437500006, 45.55537109375001], + [58.44941406250004, 45.542919921874955], + [58.29111328125006, 45.509423828124994], + [58.1251953125001, 45.47436523437503], + [57.961035156250006, 45.439697265625], + [57.6666992187501, 45.37744140625], + [57.477343750000074, 45.33745117187502], + [57.32929687500004, 45.30366210937498], + [57.171679687500074, 45.26772460937502], + [56.96503906250004, 45.22060546875002], + [56.79189453125005, 45.181054687499966], + [56.58876953125005, 45.13476562500003], + [56.40917968749997, 45.093798828125045], + [56.25791015625006, 45.05932617187503], + [56.10048828125005, 45.02338867187498], + [55.97568359375006, 44.99492187499996], + [55.97578125000004, 44.765380859375], + [55.975976562499994, 44.535839843749955], + [55.97607421875003, 44.30629882812502], + [55.97617187500006, 44.07675781250006], + [55.97626953125004, 43.84721679687502], + [55.97636718750002, 43.617626953124955], + [55.976464843749994, 43.388085937499994], + [55.97656250000003, 43.15859375000005], + [55.97666015625006, 42.929052734375006], + [55.9767578125001, 42.69951171874996], + [55.97685546875002, 42.469970703125], + [55.97695312500005, 42.240429687499955], + [55.97705078124997, 42.010888671874994], + [55.97714843750006, 41.781347656250034], + [55.97734375000002, 41.5517578125], + [55.97744140625005, 41.32221679687504], + [55.934960937499994, 41.324121093749966], + [55.8390625000001, 41.310791015625], + [55.678613281249994, 41.27880859374997], + [55.54521484375002, 41.26274414062499], + [55.48701171875004, 41.27226562499999], + [55.434375, 41.296289062499994], + [55.38837890625004, 41.346923828125], + [55.319726562499994, 41.40839843750001], + [55.249609375, 41.458105468750006], + [55.16230468750004, 41.56025390625004], + [55.10185546875002, 41.63872070312502], + [54.9523437500001, 41.81000976562501], + [54.93164062499997, 41.864013671875], + [54.90371093750005, 41.91909179687505], + [54.85380859375002, 41.965185546875006], + [54.67792968750004, 42.078222656250034], + [54.47285156250004, 42.18017578125003], + [54.271875, 42.27998046875001], + [54.21494140625006, 42.30419921874997], + [54.120996093749994, 42.335205078125], + [54.005175781250074, 42.335888671874955], + [53.92636718750006, 42.329785156249955], + [53.685351562500074, 42.296875], + [53.500781250000074, 42.25825195312504], + [53.25009765625006, 42.20585937500002], + [53.0558593750001, 42.14775390624999], + [53.0125, 42.13071289062498], + [52.870507812499994, 42.06059570312499], + [52.696875, 41.944384765625045], + [52.4938476562501, 41.780371093750034], + [52.467578125000074, 41.88588867187502], + [52.45859375, 42.04833984375], + [52.4621093750001, 42.10063476562499], + [52.51718750000006, 42.237158203125006], + [52.57324218750003, 42.33085937499999], + [52.61835937500004, 42.42822265625003], + [52.638476562500074, 42.55566406250006], + [52.59658203125005, 42.760156249999966], + [52.55, 42.80546875], + [52.49394531250002, 42.820263671874955], + [52.43427734375004, 42.824462890625], + [52.32441406250004, 42.816162109375], + [52.27304687500006, 42.79980468750006], + [52.18369140625006, 42.86875], + [52.07558593750005, 42.879785156249994], + [52.01855468749997, 42.86054687499998], + [51.96074218750002, 42.8505859375], + [51.898242187500074, 42.86962890624997], + [51.84414062500005, 42.910449218750045], + [51.81103515624997, 42.954443359375034], + [51.78515625000003, 43.00434570312498], + [51.7003906250001, 43.104052734375045], + [51.61601562500002, 43.15844726562503], + [51.51406250000005, 43.17050781249998], + [51.34785156250004, 43.167382812499966], + [51.29541015624997, 43.17412109375002], + [51.292382812499994, 43.230712890625], + [51.313378906249994, 43.355664062499955], + [51.31386718750005, 43.42084960937501], + [51.30175781249997, 43.48237304687501], + [51.2741210937501, 43.53291015625001], + [51.23896484375004, 43.57670898437496], + [51.13964843749997, 43.648779296875006], + [51.06484375, 43.75014648437505], + [50.93984375000005, 43.958544921875045], + [50.8307617187501, 44.192773437499966], + [50.782617187499994, 44.22802734375006], + [50.684960937499994, 44.265087890624955], + [50.47177734375006, 44.29477539062506], + [50.331152343750006, 44.32548828125002], + [50.27558593750004, 44.35512695312502], + [50.252539062500006, 44.406494140625], + [50.25292968749997, 44.461523437500006], + [50.26455078125005, 44.52656250000004], + [50.297460937500006, 44.58154296875003], + [50.409472656250074, 44.6240234375], + [50.652441406250006, 44.63334960937502], + [50.86035156250003, 44.62875976562498], + [51.04882812500003, 44.53046875000004], + [51.11074218750005, 44.50781250000003], + [51.177148437499994, 44.50136718750005], + [51.3107421875001, 44.53242187499998], + [51.37666015625004, 44.54121093749998], + [51.543554687500006, 44.53100585937506], + [51.49375, 44.57753906250002], + [51.431054687499994, 44.60195312500002], + [51.36630859375006, 44.59985351562503], + [51.3102539062501, 44.61875], + [51.218164062499994, 44.70898437499997], + [51.05791015625002, 44.81157226562502], + [51.0207031250001, 44.85400390625003], + [51.009375, 44.92182617187501], + [51.040332031250074, 44.980322265625006], + [51.153710937499994, 45.040234374999955], + [51.24990234375005, 45.121679687500034], + [51.294042968750006, 45.229785156250045], + [51.333398437499994, 45.27958984374996], + [51.4157226562501, 45.35786132812501], + [51.539648437500006, 45.34287109374998], + [51.7326171875001, 45.39946289062496], + [52.048730468749994, 45.38837890625001], + [52.42675781250003, 45.404638671875034], + [52.53105468750002, 45.39863281249998], + [52.77197265624997, 45.34350585937503], + [52.910742187500006, 45.319726562499966], + [53.078906250000074, 45.307519531249966], + [53.20039062500004, 45.33198242187498], + [53.085742187500074, 45.407373046874966], + [52.8375, 45.496728515624966], + [52.773828125, 45.57275390625], + [52.8875, 45.77954101562503], + [53.041601562500006, 45.967871093750034], + [53.13525390625003, 46.19165039062497], + [53.108984375, 46.41406249999997], + [53.06396484374997, 46.47529296875001], + [53.078515625, 46.54746093749998], + [53.13242187500006, 46.608349609374955], + [53.17021484375002, 46.66904296875006], + [53.1375, 46.742041015625006], + [53.069433593750006, 46.85605468750006], + [53.034570312499994, 46.892919921875006], + [52.91601562500003, 46.95439453125002], + [52.67763671875005, 46.957128906250034], + [52.48320312500002, 46.99067382812504], + [52.4203125, 46.963671875000045], + [52.384863281250006, 46.92211914062503], + [52.34033203124997, 46.89477539062503], + [52.18876953125002, 46.839501953124966], + [52.13828125, 46.82861328124997], + [52.085546875, 46.839599609375], + [52.01113281250005, 46.90190429687499], + [51.94511718750002, 46.89487304687506], + [51.74453125, 46.933740234374994], + [51.65009765625004, 47.01806640625003], + [51.61523437499997, 47.02993164062505], + [51.29082031250002, 47.097314453124994], + [51.178027343750074, 47.110156250000045], + [50.920019531250006, 47.04067382812502], + [50.73271484375002, 46.95166015625], + [50.6798828125001, 46.93872070312503], + [50.58291015625005, 46.88227539062498], + [50.52841796875006, 46.87329101562503], + [50.472265625, 46.882910156250034], + [50.41933593750005, 46.879492187500034], + [50.30625, 46.79492187500003], + [50.10156249999997, 46.69643554687505], + [49.99980468750002, 46.63427734375], + [49.886328125, 46.59565429687504], + [49.76054687500002, 46.57148437499998], + [49.63154296875004, 46.56757812499998], + [49.584375, 46.54521484374996], + [49.43720703125004, 46.53725585937502], + [49.347460937500074, 46.51914062499998], + [49.34423828124997, 46.48554687499998], + [49.36210937500002, 46.41020507812499], + [49.28583984375004, 46.43681640624999], + [49.20566406250006, 46.38569335937498], + [49.232226562500074, 46.33715820312503], + [49.18427734375004, 46.34882812500001], + [48.95898437499997, 46.44213867187503], + [48.774316406249994, 46.50795898437502], + [48.610156250000074, 46.566455078125045], + [48.586035156250006, 46.57709960937498], + [48.54121093750004, 46.60561523437502], + [48.509179687499994, 46.64995117187499], + [48.50234375000005, 46.69863281250005], + [48.51855468749997, 46.73432617187504], + [48.558398437500074, 46.75712890624999], + [48.60527343750002, 46.76591796874999], + [48.647070312500006, 46.75869140625002], + [48.6935546875001, 46.73681640625], + [48.77636718749997, 46.71035156250005], + [48.883593750000074, 46.705419921875006], + [48.950292968750006, 46.72578124999998], + [48.959375, 46.77460937499998], + [48.83183593750002, 46.954931640625034], + [48.71435546874997, 47.10048828125002], + [48.600683593750006, 47.262304687500034], + [48.55253906250002, 47.32099609375001], + [48.41308593749997, 47.45649414062498], + [48.27568359375002, 47.589941406250006], + [48.16699218750003, 47.70878906249996], + [48.109960937500006, 47.74541015624996], + [47.934667968750006, 47.76069335937498], + [47.600195312500006, 47.78999023437498], + [47.48193359374997, 47.80390624999998], + [47.38730468750006, 47.768652343750006], + [47.292382812499994, 47.74091796875004], + [47.202050781249994, 47.79248046875006], + [47.13076171875005, 47.87675781249999], + [47.09326171875003, 47.947705078124955], + [47.1115234375001, 48.02011718749998], + [47.11904296875005, 48.12700195312499], + [47.06464843750004, 48.23247070312499], + [47.004296875, 48.28447265625002], + [46.853125, 48.32358398437498], + [46.660937500000074, 48.41225585937502], + [46.609179687500074, 48.573876953124994], + [46.70263671875003, 48.80556640625002], + [46.852929687499994, 48.969628906249966], + [46.962207031250074, 49.03833007812503], + [47.014257812500006, 49.09833984374998], + [47.031347656250006, 49.150292968749994], + [47.018164062500006, 49.19990234374998], + [46.95341796875002, 49.252587890624966], + [46.852929687499994, 49.30385742187502], + [46.80205078125002, 49.36708984375002], + [46.82314453125005, 49.502246093750045], + [46.889550781249994, 49.69697265625001], + [46.99199218750002, 49.85273437500004], + [47.12958984375004, 49.939062500000034], + [47.24833984375002, 50.00087890625002], + [47.29521484375002, 50.05849609375002], + [47.29765625000002, 50.14023437499998], + [47.29472656250002, 50.21748046874998], + [47.32646484375002, 50.273535156250034], + [47.37636718750005, 50.31811523437497], + [47.42919921874997, 50.35795898437502], + [47.50361328125004, 50.402734375], + [47.59960937499997, 50.41357421874997], + [47.7057617187501, 50.37797851562502], + [47.84960937500003, 50.28232421875006], + [48.06074218750004, 50.09360351562498], + [48.1813476562501, 49.97001953125002], + [48.22480468750004, 49.93193359374999], + [48.33496093750003, 49.858251953125006], + [48.43427734375004, 49.828515624999966], + [48.6, 49.87470703124998], + [48.7589843750001, 49.92832031250006], + [48.81025390625004, 49.96240234375], + [48.84326171875003, 50.01313476562501], + [48.81796875, 50.099853515625], + [48.784765625, 50.15644531249998], + [48.749414062499994, 50.22846679687501], + [48.700488281250074, 50.35375976562506], + [48.66601562499997, 50.550341796875045], + [48.625097656250006, 50.61269531250005], + [48.655175781249994, 50.619873046875], + [48.73476562500005, 50.60688476562501], + [48.80839843750002, 50.60131835937503], + [48.9137695312501, 50.64458007812496], + [49.05869140625006, 50.72607421875006], + [49.32343750000004, 50.851708984374966], + [49.379492187500006, 50.934667968750006], + [49.424609375000074, 51.027001953124994], + [49.49804687500003, 51.08359375000006], + [49.66630859375002, 51.10229492187506], + [49.82226562499997, 51.131884765625045], + [49.93232421875004, 51.19716796875002], + [50.104882812499994, 51.25458984374998], + [50.246875, 51.28950195312498], + [50.3092773437501, 51.321582031250045], + [50.3537109375001, 51.369726562500006], + [50.5163085937501, 51.50561523437506], + [50.64394531250005, 51.58916015625002], + [50.75615234375002, 51.675146484375034], + [50.79394531249997, 51.729199218749955], + [50.88242187500006, 51.719189453124955], + [51.01787109375002, 51.68164062500003], + [51.16347656250005, 51.6474609375], + [51.26992187500005, 51.59448242187503], + [51.29072265625004, 51.540185546874994], + [51.30107421875002, 51.49741210937498], + [51.344531250000074, 51.47534179687503], + [51.39599609374997, 51.47128906249998], + [51.47343750000002, 51.482031250000034], + [51.60908203125004, 51.483984375], + [51.77539062499997, 51.55424804687502], + [52.00712890625002, 51.67270507812498], + [52.219140625, 51.709375], + [52.33105468749997, 51.681298828124966], + [52.42304687500004, 51.59423828125], + [52.496191406250006, 51.512158203124955], + [52.57119140625005, 51.481640624999955], + [52.617773437500006, 51.48076171874996], + [52.63515625, 51.47954101562499], + [52.728125, 51.498144531250034], + [52.7350585937501, 51.497900390625006], + [52.8205078125001, 51.49458007812504], + [52.902636718750074, 51.466943359374994], + [53.038378906250074, 51.463720703125034], + [53.22734375000002, 51.484960937500034], + [53.2472656250001, 51.49360351562501], + [53.33808593750004, 51.48237304687504], + [53.448632812499994, 51.444531249999955], + [53.53466796875003, 51.39956054687502], + [53.688085937500006, 51.251806640625034], + [53.776464843750006, 51.213720703125006], + [53.956835937500074, 51.16118164062496], + [54.04150390624997, 51.11518554687501], + [54.139746093750006, 51.04077148437503], + [54.1911132812501, 50.995703125], + [54.29785156249997, 50.91406249999997], + [54.42148437500006, 50.78032226562499], + [54.44335937499997, 50.673925781250006], + [54.47148437500002, 50.58378906250002], + [54.51738281250002, 50.54116210937502], + [54.555273437500006, 50.535791015624994], + [54.59619140625003, 50.55068359375002], + [54.636132812499994, 50.59160156250002], + [54.65, 50.66015625000003], + [54.6378906250001, 50.78105468749996], + [54.60625, 50.87988281250003], + [54.565625, 50.91127929687502], + [54.54609375000004, 50.946044921875], + [54.5729492187501, 50.99023437500003], + [54.64160156250003, 51.011572265625034], + [54.72714843750006, 50.998095703125045], + [54.867968750000074, 50.94135742187504], + [55.01484375000004, 50.86977539062502], + [55.195214843749994, 50.744726562500034], + [55.361132812500074, 50.665283203125], + [55.54228515625002, 50.60180664062506], + [55.68623046875004, 50.582861328125006], + [55.79765625000002, 50.60205078125], + [55.92919921874997, 50.65375976562498], + [56.049707031249994, 50.713525390624966], + [56.10449218749997, 50.776269531249966], + [56.14394531250005, 50.84462890625005], + [56.325585937499994, 50.93608398437502], + [56.49140625000004, 51.01953124999997], + [56.56689453124997, 51.004492187500006], + [56.62021484375006, 50.980859375], + [56.79033203125002, 51.031591796875034], + [56.84960937499997, 51.04555664062502], + [57.01171874999997, 51.06518554687503], + [57.179003906250074, 51.03603515625005], + [57.3125, 50.94653320312503], + [57.44218750000002, 50.88886718749998], + [57.55781250000004, 50.89555664062502], + [57.65380859374997, 50.925146484375006], + [57.71699218750004, 50.98095703125003], + [57.76484375000004, 51.046875], + [57.82890625000002, 51.089013671874994], + [57.83886718750003, 51.091650390625006], + [58.0451171875001, 51.06884765624997], + [58.17470703125005, 51.07226562500006], + [58.18847656250003, 51.08173828125004], + [58.359179687500074, 51.063818359375034], + [58.54746093750006, 50.971044921875034], + [58.66455078125003, 50.868310546874994], + [58.8140625, 50.737207031249994], + [58.88369140625005, 50.694433593750006], + [58.98486328124997, 50.676123046875006], + [59.064355468749994, 50.66821289062497], + [59.17089843749997, 50.64790039062501], + [59.4523437500001, 50.62041015625002], + [59.49511718750003, 50.60429687500002], + [59.52392578125003, 50.58281249999999], + [59.49785156250002, 50.511083984375034], + [59.523046875, 50.492871093749955], + [59.75117187500004, 50.54394531249997], + [59.812402343749994, 50.58203125], + [59.887792968750006, 50.69018554687503], + [59.95517578125006, 50.79926757812504], + [60.00527343750005, 50.839697265625006], + [60.05859374999997, 50.850292968749955], + [60.11210937500002, 50.834179687499955], + [60.18671875000004, 50.76977539062497], + [60.28808593750003, 50.70415039062502], + [60.42480468749997, 50.67915039062498], + [60.50849609375004, 50.669189453125], + [60.637988281250074, 50.66372070312505], + [60.94228515625005, 50.69550781250004], + [61.22685546875002, 50.77480468750002], + [61.38945312500002, 50.86103515625001], + [61.46503906250004, 50.99023437500003], + [61.51220703124997, 51.13701171875002], + [61.585058593750006, 51.22968749999998], + [61.55468750000003, 51.32460937500005], + [61.41132812500004, 51.41474609375001], + [61.363085937500074, 51.44189453125003], + [61.0148437500001, 51.49238281250001], + [60.99335937500004, 51.528710937499966], + [60.97353515625005, 51.53706054687498], + [60.63037109375003, 51.616943359375], + [60.464746093749994, 51.651171875000045], + [60.418359375, 51.703906250000045], + [60.3875, 51.77299804687499], + [60.280371093750006, 51.83461914062502], + [60.067480468750006, 51.89062], + [60.03027343749997, 51.93325195312505], + [60.06552734375006, 51.976464843749966], + [60.23369140625002, 52.02451171874998], + [60.4254882812501, 52.12558593750006], + [60.499316406250074, 52.146337890625034], + [60.6703125, 52.150830078124955], + [60.82841796875002, 52.2333984375], + [60.937597656250006, 52.28056640625002], + [60.99453125000005, 52.33686523437504], + [60.97949218749997, 52.394775390625], + [60.82128906250003, 52.56982421874997], + [60.77441406249997, 52.67578124999997], + [60.80234375000006, 52.74472656249998], + [60.8932617187501, 52.819433593750006], + [60.944726562499994, 52.86015625], + [61.0065429687501, 52.93334960937506], + [61.047460937500006, 52.97246093750002], + [61.20693359375005, 52.98906250000002], + [61.40078125000005, 52.99599609375002], + [61.53359375, 52.978515625], + [61.719335937500006, 52.96938476562502], + [61.888574218749994, 52.955908203125034], + [61.97421875000006, 52.94375], + [62.03710937499997, 52.96611328124996], + [62.08271484375004, 53.00541992187499], + [62.08105468749997, 53.05742187500002], + [62.01464843750003, 53.10786132812498], + [61.76621093750006, 53.173925781250034], + [61.65986328125004, 53.22846679687504], + [61.57617187499997, 53.22246093749996], + [61.436816406250074, 53.23940429687505], + [61.3109375, 53.27519531249996], + [61.19921874999997, 53.28715820312502], + [61.16279296875004, 53.33676757812498], + [61.18593750000005, 53.40620117187501], + [61.22890625, 53.445898437500006], + [61.31162109375006, 53.465722656249966], + [61.40097656250006, 53.455810546875], + [61.49853515624997, 53.48466796875002], + [61.5265625000001, 53.50156249999998], + [61.53496093750002, 53.52329101562506], + [61.51914062500006, 53.55449218750002], + [61.47412109374997, 53.58027343750004], + [61.40996093750002, 53.587060546874994], + [61.3361328125001, 53.56518554687497], + [61.247949218749994, 53.55097656250001], + [61.098535156249994, 53.58310546874998], + [60.97949218749997, 53.62172851562505], + [60.9855468750001, 53.65742187500004], + [61.073535156250074, 53.71044921875], + [61.11318359375005, 53.75346679687496], + [61.11318359375005, 53.81298828125003], + [61.11318359375005, 53.88247070312505], + [61.14375, 53.96381835937501], + [61.231054687500006, 54.01948242187498], + [61.33369140625004, 54.04926757812501], + [61.59814453124997, 53.994921875000045], + [61.92871093750003, 53.94648437500004], + [61.985644531250074, 53.95439453124996], + [62.00234375, 53.97993164062501], + [62.0402343750001, 54.00263671875001], + [62.49902343750003, 54.01318359375003], + [62.58828125, 54.04443359375], + [62.632714843749994, 54.06928710937501], + [63.0739257812501, 54.10522460937506], + [63.12656250000006, 54.13925781250006], + [63.19130859375005, 54.17104492187505], + [63.2926757812501, 54.17045898437502], + [63.413671875, 54.183203125000034], + [63.58203124999997, 54.22192382812503], + [63.70136718750004, 54.24321289062499], + [63.72119140624997, 54.24501953125002], + [63.84707031250005, 54.23647460937505], + [64.00390625000003, 54.26708984374997], + [64.03740234375002, 54.27973632812498], + [64.06289062500005, 54.30292968750001], + [64.19941406250004, 54.347412109375], + [64.46123046875002, 54.38417968750002], + [64.52509765625004, 54.36215820312498], + [64.64990234374997, 54.35224609375001], + [64.80927734375004, 54.36855468750005], + [64.92675781250003, 54.396630859374994], + [64.99541015625002, 54.36875], + [65.08837890624997, 54.340185546875034], + [65.1578125, 54.364404296874994], + [65.19218750000007, 54.44111328124998], + [65.23740234375006, 54.51606445312498], + [65.31591796874997, 54.55156250000002], + [65.378125, 54.564453125], + [65.434375, 54.59331054687502], + [65.476953125, 54.62329101562497], + [65.70781250000007, 54.61870117187502], + [65.9142578125001, 54.69331054687504], + [65.9546875, 54.659521484375006], + [66.22265624999997, 54.667382812499994], + [66.55537109375004, 54.715429687500006], + [66.75449218750006, 54.73789062500006], + [67.0983398437501, 54.788183593750006], + [67.25732421874997, 54.82880859375001], + [67.48466796875002, 54.8544921875], + [67.69335937499997, 54.872412109375034], + [67.82988281250002, 54.94355468750004], + [67.93994140624997, 54.95371093749998], + [68.07382812500006, 54.959570312500006], + [68.15585937500006, 54.97670898437505], + [68.209375, 55.00302734374998], + [68.24404296875, 55.05244140625001], + [68.2252929687501, 55.11523437500003], + [68.20625, 55.16093750000002], + [68.3019531250001, 55.18652343749997], + [68.43847656250003, 55.19443359374998], + [68.5248046875, 55.20483398437497], + [68.71289062499997, 55.30849609375005], + [68.8429687500001, 55.35834960937498], + [68.9772460937501, 55.389599609374955], + [69.24697265625005, 55.37250976562504], + [69.49326171875006, 55.356884765624955], + [69.74023437499997, 55.307373046875], + [69.87021484375, 55.245654296875045], + [69.98173828125007, 55.199072265625034], + [70.08740234375003, 55.17675781250003] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Kenya", + "iso_a2": "KE", + "iso_a3": "KEN", + "iso_n3": "404", + "continent": "Africa" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [40.99443359375002, -2.158398437499983], + [40.957324218750074, -2.167285156250017], + [40.976464843749994, -2.109765625000023], + [41.086035156250006, -2.036523437500023], + [41.13066406250002, -2.053027343750003], + [41.139257812500006, -2.069824218749957], + [41.13681640625006, -2.085058593749963], + [41.11816406249997, -2.10009765625], + [40.99443359375002, -2.158398437499983] + ] + ], + [ + [ + [35.28759765624997, 5.384082031249989], + [35.325292968750006, 5.364892578124994], + [35.37792968750003, 5.385156250000037], + [35.4240234375001, 5.413281249999983], + [35.468652343749994, 5.419091796875023], + [35.745019531249994, 5.343994140625], + [35.79140625000005, 5.278564453124986], + [35.788476562499994, 5.20810546875002], + [35.80029296874997, 5.156933593749983], + [35.77929687499997, 5.105566406250006], + [35.756152343750074, 4.950488281250031], + [35.76308593750005, 4.808007812500051], + [35.845605468749994, 4.702636718749986], + [35.919824218749994, 4.619824218749983], + [35.9787109375001, 4.50380859374998], + [36.02197265625003, 4.468115234374991], + [36.081933593749994, 4.449707031249972], + [36.271875, 4.444726562500023], + [36.55302734375002, 4.437255859375014], + [36.823632812499994, 4.430126953124983], + [36.84824218750006, 4.427343750000034], + [36.90556640625002, 4.411474609374991], + [37.15458984375002, 4.254541015624994], + [37.3825195312501, 4.110839843750028], + [37.575488281250074, 3.9859375], + [37.76289062500004, 3.864648437499966], + [37.944921875, 3.746728515625023], + [38.0861328125001, 3.648828124999966], + [38.22529296875004, 3.61899414062502], + [38.45156250000005, 3.604833984374977], + [38.608007812500006, 3.600097656249986], + [38.75273437500002, 3.558984375000051], + [38.96777343750003, 3.520605468750048], + [39.12832031250005, 3.500878906250023], + [39.22548828125005, 3.478759765625043], + [39.49443359375002, 3.45610351562496], + [39.53886718750002, 3.469189453125054], + [39.65751953125002, 3.577832031249983], + [39.79033203125002, 3.754248046875034], + [39.8421875, 3.851464843750037], + [40.01416015624997, 3.947949218749983], + [40.316015625, 4.082714843749983], + [40.528710937499994, 4.177636718749966], + [40.765234375, 4.273046875000034], + [40.87265625000006, 4.19033203124998], + [41.02080078125002, 4.057470703124991], + [41.087207031250074, 3.991943359374972], + [41.140429687500074, 3.96298828125002], + [41.22089843750004, 3.943554687499969], + [41.318945312500006, 3.943066406250054], + [41.372460937499994, 3.94619140624998], + [41.48193359375003, 3.96328125], + [41.737695312499994, 3.979052734375003], + [41.88398437500004, 3.977734375000011], + [41.7609375000001, 3.801611328125006], + [41.6134765625001, 3.59047851562498], + [41.34179687499997, 3.20166015625], + [41.13496093750004, 2.997070312499972], + [40.9787109375001, 2.842431640624994], + [40.964453125, 2.814648437500026], + [40.96503906250004, 2.642333984375], + [40.96669921875005, 2.220947265625043], + [40.97001953125002, 1.378173828125028], + [40.97324218750006, 0.535400390625014], + [40.97656250000003, -0.307324218749983], + [40.9782226562501, -0.72871093750004], + [40.9787109375001, -0.870312500000011], + [41.11582031250006, -1.047460937499963], + [41.249804687500074, -1.220507812499946], + [41.4269531250001, -1.449511718749974], + [41.521875, -1.572265625000028], + [41.53759765624997, -1.613183593750009], + [41.53271484374997, -1.695312499999957], + [41.38691406250004, -1.866992187500031], + [41.26748046875005, -1.945019531250026], + [41.106835937499994, -1.982324218749994], + [41.05869140625006, -1.975195312499963], + [40.99550781250005, -1.950585937500009], + [40.97070312499997, -1.991796874999963], + [40.95214843750003, -2.055957031249974], + [40.91660156250006, -2.042480468749986], + [40.889746093750006, -2.023535156250034], + [40.905859375, -2.1375], + [40.92236328124997, -2.19375], + [40.89824218750002, -2.269921874999966], + [40.82011718750002, -2.336328125], + [40.81318359375004, -2.392382812499946], + [40.64414062500006, -2.53945312499998], + [40.4044921875001, -2.5556640625], + [40.2785156250001, -2.628613281250026], + [40.22246093750002, -2.688378906250037], + [40.17978515625006, -2.819042968750011], + [40.19472656250005, -3.019238281250026], + [40.128125, -3.173339843749986], + [40.1154296875001, -3.250585937499991], + [39.99169921874997, -3.350683593749963], + [39.93681640625002, -3.442480468750006], + [39.89628906250002, -3.535839843750026], + [39.8609375, -3.576757812500006], + [39.81914062500002, -3.786035156250009], + [39.7614257812501, -3.913085937499957], + [39.7458007812501, -3.955175781250006], + [39.73164062500004, -3.993261718749949], + [39.686914062499994, -4.067871093749972], + [39.658007812500074, -4.119140625000014], + [39.63710937500005, -4.152832031249957], + [39.49091796875004, -4.478417968750023], + [39.37695312499997, -4.625488281249972], + [39.2875, -4.60859375], + [39.228125, -4.665527343749957], + [39.221777343750006, -4.692382812500014], + [39.19013671875004, -4.677246093749943], + [39.1154296875001, -4.623535156250014], + [38.96191406249997, -4.51298828124996], + [38.808398437500074, -4.402441406250006], + [38.65488281250006, -4.291894531249952], + [38.50136718750005, -4.181445312500017], + [38.34785156250004, -4.070898437499963], + [38.19433593750003, -3.960351562499994], + [38.04082031250002, -3.84980468750004], + [37.887304687500006, -3.739257812499986], + [37.79726562500005, -3.674414062500006], + [37.757421875, -3.636132812500023], + [37.72617187500006, -3.559765625000011], + [37.71103515625006, -3.540820312499974], + [37.6701171875001, -3.516796874999969], + [37.62207031249997, -3.51152343749996], + [37.608203125000074, -3.497070312500028], + [37.608691406250074, -3.460253906249989], + [37.625390625, -3.407226562500028], + [37.68183593750004, -3.305761718749963], + [37.68798828124997, -3.246191406249991], + [37.676855468750006, -3.17841796875004], + [37.65917968749997, -3.070019531249983], + [37.643847656250074, -3.045410156250028], + [37.54218750000004, -2.988574218750003], + [37.32900390625005, -2.869628906250014], + [37.11582031250006, -2.750585937500006], + [36.90263671875002, -2.631640625000017], + [36.68945312500003, -2.512597656250023], + [36.476367187500074, -2.393554687500014], + [36.26308593750005, -2.274609375000026], + [36.05, -2.155664062499952], + [35.83691406249997, -2.036621093749943], + [35.6237304687501, -1.917578125000034], + [35.410546875, -1.79863281249996], + [35.1974609375001, -1.679589843749952], + [34.984277343749994, -1.560546874999943], + [34.77109375, -1.441601562499969], + [34.55791015625002, -1.32255859374996], + [34.34472656250003, -1.203613281249972], + [34.13164062500002, -1.084570312499963], + [34.051562500000074, -1.03984375], + [33.979394531249994, -1.002050781250034], + [33.90322265625005, -1.002050781250034], + [33.9, -0.831640624999949], + [33.924414062500006, -0.397851562499952], + [33.921484375, -0.016992187499994], + [33.94316406250002, 0.173779296874969], + [34.03720703125006, 0.294531249999977], + [34.08056640625003, 0.382470703125037], + [34.11171875, 0.505126953124972], + [34.160937500000074, 0.605175781250026], + [34.27255859375006, 0.686425781249966], + [34.29257812500006, 0.73125], + [34.4108398437501, 0.867285156250034], + [34.48173828125002, 1.042138671875051], + [34.535253906250006, 1.101562499999986], + [34.601953125, 1.156445312499969], + [34.64912109375004, 1.185302734374986], + [34.72675781250004, 1.214257812500023], + [34.78759765625003, 1.230712890625], + [34.79863281250002, 1.24453125], + [34.803808593750006, 1.27285156249998], + [34.78359375, 1.381152343750017], + [34.80957031250003, 1.416699218749969], + [34.85097656250005, 1.489013671875043], + [34.898339843749994, 1.556494140625034], + [34.94121093750002, 1.599267578125037], + [34.96523437500005, 1.64335937499996], + [34.976464843749994, 1.719628906250051], + [34.97822265625004, 1.77363281250004], + [34.97753906249997, 1.861914062499991], + [34.9640625000001, 2.06240234374998], + [34.913964843749994, 2.230175781250054], + [34.8830078125001, 2.417919921875026], + [34.90576171875003, 2.4796875], + [34.86621093750003, 2.58969726562502], + [34.84667968749997, 2.595751953125017], + [34.81445312499997, 2.619824218750026], + [34.77343749999997, 2.7234375], + [34.742480468750074, 2.818115234375014], + [34.72324218750006, 2.84194335937498], + [34.589160156250074, 2.924755859374983], + [34.522558593750006, 3.119970703124963], + [34.44785156250006, 3.163476562500037], + [34.40722656249997, 3.357519531250034], + [34.39941406249997, 3.412695312500006], + [34.441796875, 3.60625], + [34.43769531250004, 3.650585937499969], + [34.392871093750074, 3.691503906250048], + [34.26708984375003, 3.733154296875], + [34.16503906250003, 3.812988281250014], + [34.17822265625003, 3.840869140625017], + [34.18574218750004, 3.869775390625037], + [34.13203125000004, 3.889160156249986], + [33.97607421874997, 4.220214843750028], + [34.176855468750006, 4.419091796875037], + [34.38017578125002, 4.620654296874974], + [34.6398437500001, 4.875488281250028], + [34.878320312499994, 5.109570312500026], + [35.08447265624997, 5.31186523437502], + [35.268359375000074, 5.492285156250006], + [35.26386718750004, 5.457910156250023], + [35.26464843750003, 5.412060546875011], + [35.28759765624997, 5.384082031249989] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Kyrgyzstan", + "iso_a2": "KG", + "iso_a3": "KGZ", + "iso_n3": "417", + "continent": "Asia" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [80.209375, 42.1900390625], + [80.22919921875001, 42.129833984375], + [80.24619140625003, 42.059814453125], + [80.23515624999999, 42.04345703125], + [80.21621093750002, 42.032421875], + [79.90966796875, 42.014990234375], + [79.84042968750003, 41.995751953124994], + [79.76611328125, 41.898876953125], + [79.50390625, 41.82099609375], + [79.35439453125002, 41.781054687499996], + [79.29355468750003, 41.7828125], + [79.1484375, 41.719140625], + [78.74257812500002, 41.56005859375], + [78.54316406250001, 41.4595703125], + [78.44287109375, 41.417529296874996], + [78.36240234375003, 41.371630859374996], + [78.34882812500001, 41.3251953125], + [78.34628906250003, 41.2814453125], + [78.12343750000002, 41.075634765625], + [77.95644531250002, 41.050683593749994], + [77.81523437499999, 41.055615234375], + [77.71933593750003, 41.024316406249994], + [77.58173828125001, 40.9927734375], + [77.28398437499999, 41.01435546875], + [77.18203125000002, 41.0107421875], + [76.98662109374999, 41.03916015625], + [76.90771484375, 41.024169921875], + [76.82402343749999, 40.982324218749994], + [76.70839843750002, 40.818115234375], + [76.6611328125, 40.779638671875], + [76.63984375000001, 40.742236328124996], + [76.62216796875003, 40.662353515625], + [76.57792968749999, 40.577880859375], + [76.52089843750002, 40.51123046875], + [76.48017578125001, 40.449511718749996], + [76.39638671875002, 40.389794921874994], + [76.31855468750001, 40.35224609375], + [76.25830078125, 40.43076171875], + [76.2060546875, 40.4083984375], + [76.15664062500002, 40.37646484375], + [76.06230468749999, 40.387548828125], + [76.00429687500002, 40.371435546875], + [75.87197265625002, 40.30322265625], + [75.67714843750002, 40.305810546874994], + [75.65595703125001, 40.329248046874994], + [75.61738281250001, 40.5166015625], + [75.58349609375, 40.605322265625], + [75.55556640625002, 40.6251953125], + [75.52080078125002, 40.6275390625], + [75.24101562500002, 40.480273437499996], + [75.111328125, 40.4541015625], + [75.0044921875, 40.449511718749996], + [74.865625, 40.493505859375], + [74.83515625000001, 40.4826171875], + [74.8111328125, 40.458789062499996], + [74.80126953125, 40.428515625], + [74.841796875, 40.344970703125], + [74.83046875000002, 40.328515625], + [74.76777343750001, 40.329882812499996], + [74.67988281250001, 40.310595703124996], + [74.61308593750002, 40.27216796875], + [74.41191406250002, 40.13720703125], + [74.24267578125, 40.092041015625], + [74.08515625000001, 40.07431640625], + [74.0205078125, 40.059375], + [73.99160156250002, 40.043115234374994], + [73.93876953125002, 39.978808593749996], + [73.88457031250002, 39.8779296875], + [73.85625, 39.828662109374996], + [73.83535156250002, 39.800146484375], + [73.83974609375002, 39.762841796874994], + [73.88251953125001, 39.71455078125], + [73.9146484375, 39.606494140624996], + [73.90712890625002, 39.578515625], + [73.87275390625001, 39.53330078125], + [73.82294921875001, 39.48896484375], + [73.71572265625002, 39.462255859375], + [73.63164062500002, 39.448876953124994], + [73.57558593750002, 39.4576171875], + [73.47041015625001, 39.460595703124994], + [73.38740234375001, 39.442724609375], + [73.33613281250001, 39.412353515625], + [73.2349609375, 39.374560546874996], + [73.10927734375002, 39.3619140625], + [72.94941406250001, 39.357080078124994], + [72.87246093750002, 39.360400390624996], + [72.63994140625002, 39.385986328125], + [72.56337890625002, 39.377197265625], + [72.490234375, 39.357373046875], + [72.35771484375002, 39.336865234375], + [72.28720703125, 39.273730468749996], + [72.24980468750002, 39.215673828125], + [72.22998046875, 39.20751953125], + [72.14736328125002, 39.2607421875], + [72.08417968750001, 39.31064453125], + [72.04277343750002, 39.3521484375], + [71.99101562500002, 39.350927734375], + [71.80595703125002, 39.2755859375], + [71.77861328125002, 39.277978515624994], + [71.72568359375, 39.306591796875], + [71.7353515625, 39.377734375], + [71.73222656250002, 39.422998046874994], + [71.67265625000002, 39.447070312499996], + [71.54628906250002, 39.453076171875], + [71.50332031250002, 39.478808593749996], + [71.505859375, 39.51708984375], + [71.51738281250002, 39.553857421874994], + [71.50302734375, 39.582177734374994], + [71.4703125, 39.603662109374994], + [71.404296875, 39.5978515625], + [71.32851562500002, 39.568701171875], + [71.27285156250002, 39.535302734374994], + [71.202734375, 39.519824218749996], + [71.11806640625002, 39.513574218749994], + [71.0650390625, 39.493408203125], + [71.0048828125, 39.411865234375], + [70.79931640625, 39.3947265625], + [70.73310546875001, 39.41328125], + [70.67861328125002, 39.4712890625], + [70.60781250000002, 39.564404296875], + [70.56796875, 39.57587890625], + [70.50117187500001, 39.587353515625], + [70.39208984375, 39.581884765625], + [70.24482421875001, 39.542626953124994], + [70.20927734375002, 39.575], + [70.17109375000001, 39.5841796875], + [70.13681640625, 39.557568359375], + [70.10166015625, 39.560595703124996], + [69.95595703125002, 39.553076171875], + [69.7720703125, 39.55673828125], + [69.6669921875, 39.57490234375], + [69.59882812500001, 39.573779296874996], + [69.46328125000002, 39.532080078125], + [69.39150390625002, 39.532470703125], + [69.29765625000002, 39.524804687499994], + [69.2802734375, 39.665869140625], + [69.2291015625, 39.761083984375], + [69.2447265625, 39.827099609375], + [69.27880859375, 39.917773437499996], + [69.3072265625, 39.968554687499996], + [69.36542968750001, 39.947070312499996], + [69.43193359375002, 39.909765625], + [69.47626953125001, 39.919726562499996], + [69.487890625, 39.950439453125], + [69.47099609375002, 39.990625], + [69.46875, 40.020751953125], + [69.49365234375, 40.060351562499996], + [69.5302734375, 40.097314453124994], + [69.765234375, 40.158007812499996], + [69.966796875, 40.20224609375], + [70.07148437500001, 40.172753906249994], + [70.2744140625, 40.104833984375], + [70.37890625, 40.069873046874996], + [70.45136718750001, 40.04921875], + [70.51513671875, 39.94990234375], + [70.55683593750001, 39.954492187499994], + [70.59921875, 39.974511718749994], + [70.62412109375, 39.998974609375], + [70.64433593750002, 40.083447265625], + [70.73857421875002, 40.131152343749996], + [70.94638671875, 40.18759765625], + [70.9609375, 40.220654296875], + [70.9580078125, 40.2388671875], + [70.990625, 40.2548828125], + [71.09453125000002, 40.271240234375], + [71.3046875, 40.286914062499996], + [71.37617187500001, 40.275195312499996], + [71.45742187500002, 40.241992187499996], + [71.52041015625002, 40.208984375], + [71.58046875000002, 40.210253906249996], + [71.6298828125, 40.217138671875], + [71.65087890625, 40.2080078125], + [71.66679687500002, 40.178613281249994], + [71.69248046875, 40.15234375], + [71.77265625000001, 40.188037109374996], + [71.84541015625001, 40.234326171875], + [71.90273437500002, 40.240966796875], + [71.9556640625, 40.25859375], + [71.97109375000002, 40.289501953125], + [72.01259765625002, 40.340722656249994], + [72.13125, 40.438623046874994], + [72.19287109375, 40.454443359375], + [72.23281250000002, 40.454394531249996], + [72.23466796875002, 40.438623046874994], + [72.25400390625, 40.42421875], + [72.35771484375002, 40.401660156249996], + [72.3892578125, 40.427392578124994], + [72.40595703125001, 40.4630859375], + [72.3697265625, 40.5197265625], + [72.36904296875002, 40.54345703125], + [72.38261718750002, 40.56513671875], + [72.40205078125001, 40.578076171875], + [72.56748046875, 40.524365234375], + [72.6041015625, 40.525439453124996], + [72.67958984375002, 40.555615234375], + [72.74882812500002, 40.608691406249996], + [72.77382812500002, 40.650390625], + [73.112890625, 40.786035156249994], + [73.13691406250001, 40.81064453125], + [73.13212890625002, 40.828515625], + [72.99003906250002, 40.860107421875], + [72.92597656250001, 40.842431640624994], + [72.86660156250002, 40.842333984374996], + [72.83095703125002, 40.862158203125], + [72.65830078125, 40.869921875], + [72.62041015625002, 40.8837890625], + [72.50595703125, 40.981689453125], + [72.42734375, 41.018945312499994], + [72.36406250000002, 41.04345703125], + [72.294921875, 41.039941406249994], + [72.21308593750001, 41.0142578125], + [72.18730468750002, 41.025927734374996], + [72.1806640625, 41.066845703125], + [72.18095703125002, 41.118457031249996], + [72.16425781250001, 41.173730468749994], + [72.11542968750001, 41.186572265624996], + [72.05244140625001, 41.16474609375], + [71.95849609375, 41.187060546874996], + [71.87861328125001, 41.19501953125], + [71.8580078125, 41.311376953125], + [71.82578125, 41.36103515625], + [71.79248046875, 41.413134765624996], + [71.75771484375002, 41.428027343749996], + [71.70068359375, 41.454003906249994], + [71.697265625, 41.515576171875], + [71.68515625, 41.533007812499996], + [71.66494140625002, 41.5412109375], + [71.6375, 41.5341796875], + [71.60224609375001, 41.503271484375], + [71.61962890625, 41.435449218749994], + [71.60625, 41.367431640625], + [71.585546875, 41.333251953125], + [71.54560546875001, 41.308056640625], + [71.5, 41.307470703125], + [71.4208984375, 41.34189453125], + [71.40839843750001, 41.136035156249996], + [71.39306640625, 41.123388671875], + [71.298828125, 41.152490234374994], + [71.22343750000002, 41.139941406249996], + [71.11074218750002, 41.152636718749996], + [71.0259765625, 41.186572265624996], + [70.96259765625001, 41.19599609375], + [70.86044921875, 41.224902343749996], + [70.78242187500001, 41.2625], + [70.734375, 41.400537109374994], + [70.68886718750002, 41.4498046875], + [70.64589843750002, 41.460351562499994], + [70.47138671875001, 41.412646484374996], + [70.4078125, 41.449560546875], + [70.2900390625, 41.496826171875], + [70.20087890625001, 41.514453125], + [70.17695312500001, 41.539990234375], + [70.18095703125002, 41.571435546874994], + [70.45498046875002, 41.725048828125], + [70.56289062500002, 41.830810546875], + [70.630859375, 41.87548828125], + [70.72773437500001, 41.905224609375], + [70.8033203125, 41.92265625], + [70.84189453125, 42.01962890625], + [70.85664062500001, 42.030810546874996], + [70.91035156250001, 42.037988281249994], + [71.0322265625, 42.077783203124994], + [71.228515625, 42.162890625], + [71.23232421875002, 42.186279296875], + [71.21269531250002, 42.206445312499994], + [71.12998046875, 42.25], + [71.03603515625002, 42.28466796875], + [70.97900390625, 42.266552734375], + [70.94677734375, 42.248681640624994], + [70.89287109375002, 42.293701171875], + [70.89287109375002, 42.339990234374994], + [70.95234375000001, 42.419384765625], + [71.001953125, 42.45908203125], + [71.02275390625002, 42.535449218749996], + [71.09355468750002, 42.5865234375], + [71.16738281250002, 42.667431640625], + [71.25664062500002, 42.733544921874994], + [71.42207031250001, 42.783154296875], + [71.5142578125, 42.766943359375], + [71.60078125000001, 42.778662109375], + [71.73476562500002, 42.818896484374996], + [71.76054687500002, 42.821484375], + [71.81679687500002, 42.822167968749994], + [72.16181640625001, 42.760693359375], + [72.27578125000002, 42.757666015625], + [72.54316406250001, 42.677734375], + [72.66611328125, 42.660400390625], + [72.7529296875, 42.637890625], + [72.79238281250002, 42.603466796875], + [72.855078125, 42.5611328125], + [73.19082031250002, 42.52685546875], + [73.28291015625001, 42.5041015625], + [73.316015625, 42.4669921875], + [73.41162109375, 42.419775390625], + [73.49296875000002, 42.409033203125], + [73.421875, 42.593505859375], + [73.4501953125, 42.703027343749994], + [73.55625, 43.002783203125], + [73.61201171875001, 43.047900390624996], + [73.71855468750002, 43.087890625], + [73.88603515625002, 43.132568359375], + [73.94921875, 43.19501953125], + [74.08623046875002, 43.188623046874994], + [74.14589843750002, 43.194091796875], + [74.18681640625002, 43.2052734375], + [74.20908203125, 43.240380859374994], + [74.3638671875, 43.179443359375], + [74.62226562500001, 43.056201171874996], + [74.81757812500001, 42.978173828124994], + [75.04765625000002, 42.90439453125], + [75.3662109375, 42.836962890624996], + [75.63564453125002, 42.814599609374994], + [75.68173828125, 42.83046875], + [75.78955078125, 42.932910156249996], + [75.84033203125, 42.9375], + [75.9322265625, 42.928515625], + [76.21816406250002, 42.923730468749994], + [76.50917968750002, 42.918896484375], + [76.646484375, 42.92880859375], + [76.94404296875001, 42.971484375], + [76.98808593749999, 42.973583984375], + [77.05732421875001, 42.970654296875], + [77.23554687500001, 42.912646484374996], + [77.36855468750002, 42.904443359374994], + [77.45927734374999, 42.904736328125], + [77.51220703125, 42.900048828124994], + [77.62246093750002, 42.902246093749994], + [77.80166015625002, 42.89521484375], + [78.02314453125001, 42.85751953125], + [78.2900390625, 42.86435546875], + [78.3759765625, 42.871484375], + [78.52421874999999, 42.864648437499994], + [78.64228515625001, 42.8287109375], + [78.79150390625, 42.790820312499996], + [78.88515625000002, 42.77490234375], + [78.94794921875001, 42.76669921875], + [79.05986328124999, 42.763818359374994], + [79.12666015625001, 42.775732421875], + [79.16484374999999, 42.759033203125], + [79.20302734375002, 42.666015625], + [79.29550781250003, 42.604833984375], + [79.36777343750003, 42.547216796875], + [79.42822265625, 42.48349609375], + [79.49013671875002, 42.457568359374996], + [79.59843749999999, 42.456640625], + [79.80341796875001, 42.4384765625], + [79.92109375000001, 42.413134765624996], + [80.0712890625, 42.302978515625], + [80.209375, 42.1900390625] + ], + [ + [70.70166015625, 39.82529296875], + [70.6982421875, 39.845849609374994], + [70.66416015625, 39.85546875], + [70.56708984375001, 39.866601562499994], + [70.49775390625001, 39.882421875], + [70.48281250000002, 39.882714843749994], + [70.4892578125, 39.863037109375], + [70.51865234375, 39.828173828124996], + [70.5595703125, 39.790917968749994], + [70.61210937500002, 39.786767578124994], + [70.70166015625, 39.82529296875] + ], + [ + [71.77968750000002, 39.950244140624996], + [71.78994140625002, 39.9953125], + [71.76533203125001, 39.99326171875], + [71.73652343750001, 39.98095703125], + [71.68125, 39.968652343749994], + [71.6689453125, 39.94609375], + [71.70585937500002, 39.917431640625], + [71.7529296875, 39.907128906249994], + [71.77968750000002, 39.950244140624996] + ], + [ + [71.20615234375, 39.892578125], + [71.215625, 39.906787109374996], + [71.179296875, 39.979833984375], + [71.22871093750001, 40.048144531249996], + [71.13027343750002, 40.05966796875], + [71.08037109375002, 40.079882812499996], + [71.02412109375001, 40.149169921875], + [71.00546875, 40.152294921875], + [70.97626953125001, 40.133251953125], + [70.96064453125001, 40.08798828125], + [70.97441406250002, 40.038867187499996], + [71.01445312500002, 40.005761718749994], + [71.041015625, 39.994921875], + [71.04482421875002, 39.992529296875], + [71.04365234375001, 39.976318359375], + [71.01171875, 39.8951171875], + [71.06425781250002, 39.884912109374994], + [71.15625, 39.883447265624994], + [71.20615234375, 39.892578125] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Cambodia", + "iso_a2": "KH", + "iso_a3": "KHM", + "iso_n3": "116", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [103.3177734375, 10.718505859374986], + [103.28125, 10.679687499999972], + [103.22294921875002, 10.759570312500003], + [103.22343750000002, 10.781982421875028], + [103.3177734375, 10.718505859374986] + ] + ], + [ + [ + [103.04511718750004, 11.285058593750023], + [103.02734374999997, 11.275488281250034], + [103.01054687500002, 11.27578125], + [102.99335937500004, 11.290429687499966], + [102.99501953125005, 11.348095703124997], + [103.0075195312501, 11.383300781249972], + [103.03681640625004, 11.389941406249989], + [103.04511718750004, 11.285058593750023] + ] + ], + [ + [ + [107.53525390625006, 14.649951171875045], + [107.49316406250003, 14.545751953124963], + [107.44843750000004, 14.451220703124974], + [107.3644531250001, 14.368701171875045], + [107.36035156249997, 14.307861328124986], + [107.3314453125, 14.126611328125009], + [107.34257812500007, 14.068896484374974], + [107.36210937500007, 14.01948242187504], + [107.38945312500002, 13.993017578124977], + [107.46230468750005, 13.81562], + [107.52861328125002, 13.654199218750051], + [107.59394531250004, 13.521679687500054], + [107.60546874999997, 13.437792968750017], + [107.54550781250012, 13.225439453125006], + [107.47539062500002, 13.030371093749963], + [107.48154296875006, 12.933105468750043], + [107.51152343750002, 12.835742187500017], + [107.54355468750006, 12.705908203125034], + [107.55546875000002, 12.539990234374983], + [107.53808593750003, 12.431787109374966], + [107.50644531250006, 12.364550781250031], + [107.4459960937501, 12.295703125000045], + [107.39335937500002, 12.260498046874972], + [107.33007812500003, 12.319042968749997], + [107.27968750000005, 12.321582031249989], + [107.21210937500004, 12.30400390624996], + [107.15898437500007, 12.277050781249969], + [107.05068359375, 12.175878906249963], + [106.93066406249997, 12.077490234374991], + [106.76464843750003, 12.05234375000002], + [106.70009765625, 11.979296874999974], + [106.63095703125012, 11.969189453125054], + [106.49960937500012, 11.965527343750011], + [106.41386718750002, 11.9484375], + [106.41777343750002, 11.911718749999977], + [106.41074218750012, 11.738378906250006], + [106.4125, 11.697802734375003], + [106.39921875000007, 11.687011718750028], + [106.33984374999997, 11.68183593750004], + [106.23916015625, 11.70834960937502], + [106.10292968750005, 11.751269531249974], + [106.0060546875001, 11.758007812500011], + [105.95625, 11.682470703124991], + [105.92656250000007, 11.652929687500006], + [105.88984375000004, 11.648388671874969], + [105.85146484375005, 11.635009765625], + [105.83847656250006, 11.601318359374972], + [105.83535156250005, 11.559130859375003], + [105.85400390625003, 11.487060546874972], + [105.86093750000012, 11.372412109374977], + [105.85605468750006, 11.294287109375048], + [105.89160156249997, 11.244824218749997], + [106.09951171875005, 11.078662109374989], + [106.16093750000002, 11.037109375000057], + [106.16796874999997, 11.012304687499977], + [106.1315429687501, 10.921972656250048], + [106.16396484375005, 10.794921875], + [106.0988281250001, 10.797265625000037], + [105.99013671875005, 10.851806640625043], + [105.93818359375004, 10.88515625], + [105.8751953125001, 10.858496093749991], + [105.85332031250007, 10.86357421874996], + [105.8107421875001, 10.926074218749989], + [105.75507812500004, 10.989990234375043], + [105.69775390624997, 10.99404296874998], + [105.5765625, 10.968896484375009], + [105.45273437500006, 10.951416015625], + [105.40576171875003, 10.95161132812504], + [105.38652343750002, 10.940087890625009], + [105.3146484375001, 10.845166015625026], + [105.28427734375006, 10.86147460937498], + [105.15947265625002, 10.897558593750048], + [105.04570312500002, 10.911376953125014], + [105.02226562500002, 10.886865234374994], + [105.03613281250003, 10.809375], + [105.06113281250006, 10.73378906249998], + [105.04638671874997, 10.701660156250014], + [104.98388671874997, 10.661914062500003], + [104.90126953125, 10.590234375000051], + [104.85058593749997, 10.534472656249974], + [104.81542968750003, 10.520800781250031], + [104.68964843750004, 10.523242187499989], + [104.56425781250007, 10.51596679687502], + [104.5140625, 10.46333007812504], + [104.4669921875001, 10.422363281250043], + [104.42636718750006, 10.411230468749991], + [104.26240234375004, 10.541259765625014], + [103.93710937500012, 10.586621093750026], + [103.90175781250005, 10.64394531249998], + [103.87050781250005, 10.655126953125034], + [103.8405273437501, 10.580566406250028], + [103.66191406250002, 10.508935546875009], + [103.58710937500004, 10.552197265625026], + [103.53222656249997, 10.604638671874966], + [103.54042968750005, 10.668701171875043], + [103.59208984375002, 10.721044921874963], + [103.68085937500004, 10.758593749999974], + [103.721875, 10.890136718750043], + [103.65429687499997, 11.058691406250006], + [103.59501953125007, 11.107763671874963], + [103.5324218750001, 11.146679687499997], + [103.46669921875005, 11.083984375000014], + [103.41132812500004, 10.976757812500011], + [103.35361328125006, 10.921582031250054], + [103.2721679687501, 10.909277343750034], + [103.15283203124997, 10.913720703125051], + [103.10644531250003, 11.073779296874974], + [103.09111328125007, 11.211083984374966], + [103.10742187500003, 11.367773437500006], + [103.12548828124997, 11.460644531250011], + [103.01054687500002, 11.588671874999974], + [103.00419921875007, 11.710595703125037], + [102.9486328125, 11.773486328124974], + [102.93232421875004, 11.741699218749972], + [102.93388671875002, 11.706689453125037], + [102.91806640625006, 11.732080078124966], + [102.73662109375007, 12.089794921875011], + [102.70625, 12.255664062499974], + [102.73740234375006, 12.383398437499963], + [102.75566406250002, 12.42626953125], + [102.70332031250004, 12.49350585937502], + [102.62968750000002, 12.569921875000048], + [102.49960937500012, 12.669970703125003], + [102.49072265624997, 12.828320312500011], + [102.46171875000002, 13.015039062500037], + [102.42265625000007, 13.077978515624991], + [102.36298828125004, 13.192968749999963], + [102.3307617187501, 13.288232421875009], + [102.31972656250005, 13.539990234375054], + [102.33632812500005, 13.560302734375014], + [102.42851562500002, 13.567578124999983], + [102.54687, 13.585693359375043], + [102.56552734375012, 13.62636718749998], + [102.54472656250007, 13.659960937499974], + [102.62041015625002, 13.716943359375037], + [102.72890625, 13.841894531250006], + [102.81279296875002, 13.972460937500045], + [102.8732421875001, 14.054882812499969], + [102.90927734375006, 14.136718750000028], + [103.03105468750002, 14.252539062500006], + [103.19941406250004, 14.332617187499977], + [103.31347656249997, 14.351318359375057], + [103.43242187500007, 14.378613281250011], + [103.54638671875003, 14.417431640625026], + [103.60039062500002, 14.421093749999969], + [103.74189453125004, 14.374169921874994], + [103.81835937500003, 14.362158203125034], + [103.8986328125001, 14.362792968749986], + [103.9818359375, 14.357910156249972], + [104.05429687500012, 14.362744140624983], + [104.2277343750001, 14.3955078125], + [104.41162109374997, 14.36958007812504], + [104.57578125000012, 14.390039062500037], + [104.77900390625004, 14.427832031250006], + [104.87880859375005, 14.40400390625004], + [104.96972656249997, 14.366113281250051], + [104.98242187500003, 14.289453124999966], + [105.00341796875003, 14.254443359375031], + [105.03369140624997, 14.227392578125034], + [105.07412109375005, 14.227441406250037], + [105.12597656250003, 14.280957031250011], + [105.16914062500004, 14.336083984374966], + [105.1833007812501, 14.346240234374989], + [105.18554687500003, 14.319091796874972], + [105.20703125000003, 14.25937], + [105.24570312500006, 14.200537109374977], + [105.2848632812501, 14.161474609375006], + [105.35019531250006, 14.109570312500011], + [105.39267578125012, 14.107080078125037], + [105.53154296875007, 14.156152343749994], + [105.73974609375003, 14.084960937500057], + [105.7640625, 14.049072265625028], + [105.83144531250005, 13.976611328125003], + [105.9044921875001, 13.924511718750054], + [106.06679687500005, 13.921191406250003], + [106.12470703125004, 14.049121093750031], + [106.09667968749997, 14.127099609375023], + [106.00410156250004, 14.262890624999983], + [105.97890625, 14.343017578125043], + [106.00839843750012, 14.357177734375], + [106.1652343750001, 14.372363281249989], + [106.19072265625007, 14.388134765624997], + [106.22539062500002, 14.476220703125009], + [106.26796875, 14.466210937500009], + [106.35498046875003, 14.454785156249997], + [106.44697265625004, 14.515039062500009], + [106.50146484375003, 14.578222656250006], + [106.53115234375005, 14.549414062499991], + [106.5636718750001, 14.505078125000026], + [106.59921875000006, 14.479394531250037], + [106.66542968750005, 14.441308593749994], + [106.73818359375005, 14.387744140625017], + [106.78349609375002, 14.335107421875037], + [106.81992187500006, 14.314697265625057], + [106.91318359375006, 14.329394531250031], + [106.93808593750006, 14.327343750000054], + [106.99218750000003, 14.391015624999966], + [107.03017578125, 14.425683593750009], + [107.06240234375, 14.415771484375043], + [107.10937, 14.416699218750054], + [107.20664062500006, 14.497900390624977], + [107.26230468750006, 14.572119140625006], + [107.29267578125004, 14.592382812500048], + [107.37988281250003, 14.555322265625051], + [107.41474609375004, 14.562890625], + [107.46513671875007, 14.664990234375011], + [107.51943359375005, 14.705078125], + [107.53525390625006, 14.649951171875045] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Kiribati", + "iso_a2": "KI", + "iso_a3": "KIR", + "iso_n3": "296", + "continent": "Oceania" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-151.78261718750002, -11.441015625], + [-151.79086914062503, -11.456835937500017], + [-151.80668945312493, -11.451269531250034], + [-151.815966796875, -11.431152343750014], + [-151.819140625, -11.409277343750006], + [-151.81328125, -11.391796875], + [-151.80278320312496, -11.392675781249991], + [-151.79111328124998, -11.414355468749974], + [-151.78261718750002, -11.441015625] + ] + ], + [ + [ + [-155.86381835937496, -5.626660156250011], + [-155.887109375, -5.6318359375], + [-155.91435546874993, -5.63164062499996], + [-155.92792968749995, -5.618554687499952], + [-155.92861328125002, -5.60761718750004], + [-155.919384765625, -5.60751953125002], + [-155.91079101562502, -5.609472656249977], + [-155.872265625, -5.611328125], + [-155.86235351562502, -5.619140624999986], + [-155.86381835937496, -5.626660156250011] + ] + ], + [ + [ + [-174.512939453125, -4.675097656249946], + [-174.501123046875, -4.688378906249994], + [-174.501025390625, -4.694726562499952], + [-174.50673828125, -4.693652343750003], + [-174.523876953125, -4.689648437499983], + [-174.52924804687504, -4.681640624999957], + [-174.516748046875, -4.686816406250031], + [-174.51147460937497, -4.685644531249963], + [-174.52304687500003, -4.674023437499997], + [-174.53310546874994, -4.665332031250003], + [-174.54067382812497, -4.661718749999977], + [-174.54082031250002, -4.657324218749977], + [-174.53139648437497, -4.65947265624996], + [-174.512939453125, -4.675097656249946] + ] + ], + [ + [ + [-172.21455078125, -4.511132812500037], + [-172.20830078125, -4.51796875], + [-172.193896484375, -4.516015624999966], + [-172.18095703125002, -4.514843749999983], + [-172.188818359375, -4.521679687499955], + [-172.21523437499997, -4.524414062499986], + [-172.2283203125, -4.50703125], + [-172.21220703125, -4.493945312499989], + [-172.19785156249998, -4.491699218749986], + [-172.19638671874995, -4.495410156250031], + [-172.19721679687504, -4.499511718749972], + [-172.20385742187497, -4.499511718749972], + [-172.21474609374997, -4.502636718749983], + [-172.21455078125, -4.511132812500037] + ] + ], + [ + [ + [-171.23320312500002, -4.463476562500006], + [-171.24301757812498, -4.46806640624996], + [-171.25454101562502, -4.466503906249997], + [-171.261767578125, -4.45976562499996], + [-171.261962890625, -4.449218750000028], + [-171.252392578125, -4.441601562499983], + [-171.23940429687497, -4.444140624999974], + [-171.231884765625, -4.453710937499963], + [-171.23320312500002, -4.463476562500006] + ] + ], + [ + [ + [-154.95625, -4.087988281249977], + [-154.95903320312502, -4.09384765625002], + [-154.97109374999997, -4.08583984374998], + [-154.99462890625, -4.07109375], + [-155.01459960937495, -4.054882812499983], + [-155.01503906249997, -4.048046875000011], + [-154.98696289062502, -4.038574218749943], + [-154.95122070312502, -4.031054687500017], + [-154.943359375, -4.041601562500034], + [-154.95004882812498, -4.055957031250031], + [-154.95625, -4.087988281249977] + ] + ], + [ + [ + [-171.08515624999995, -3.135449218749983], + [-171.089794921875, -3.143261718749983], + [-171.09672851562502, -3.136914062500026], + [-171.09174804687498, -3.125097656250006], + [-171.08769531249996, -3.115039062500003], + [-171.081005859375, -3.120410156250031], + [-171.08515624999995, -3.135449218749983] + ] + ], + [ + [ + [-171.69760742187503, -2.766406250000031], + [-171.66499023437495, -2.785546875000023], + [-171.63964843749994, -2.811230468750011], + [-171.62763671875, -2.846972656250017], + [-171.62841796874997, -2.855859374999966], + [-171.64736328125002, -2.855566406249991], + [-171.67060546875004, -2.844433593750026], + [-171.6873046875, -2.829785156249983], + [-171.69609375, -2.825683593750028], + [-171.698291015625, -2.822265624999957], + [-171.67836914062502, -2.824511718749974], + [-171.65537109374998, -2.839843749999986], + [-171.63852539062498, -2.846679687499957], + [-171.63974609374998, -2.829199218750034], + [-171.66020507812496, -2.798535156250011], + [-171.67265625000002, -2.787988281249994], + [-171.68803710937496, -2.77910156249996], + [-171.70595703124997, -2.773144531249983], + [-171.71816406249997, -2.778613281250031], + [-171.72480468749998, -2.781347656249963], + [-171.72763671875003, -2.774121093750011], + [-171.72514648437496, -2.767871093749974], + [-171.71889648437502, -2.761425781249997], + [-171.69760742187503, -2.766406250000031] + ] + ], + [ + [ + [174.77324218750013, -1.211914062499972], + [174.77890625000006, -1.263378906249983], + [174.75595703125018, -1.256445312499991], + [174.74843750000005, -1.236425781249991], + [174.74101562500013, -1.1845703125], + [174.71679687499997, -1.133691406250023], + [174.74414062500009, -1.147363281249966], + [174.76660156250003, -1.187109375], + [174.77324218750013, -1.211914062499972] + ] + ], + [ + [ + [169.55107421875002, -0.873730468749997], + [169.54169921875004, -0.875976562500014], + [169.52294921874997, -0.865625], + [169.52558593750004, -0.852636718749963], + [169.53867187500006, -0.846875], + [169.55527343750006, -0.856542968749963], + [169.55107421875002, -0.873730468749997] + ] + ], + [ + [ + [174.50869140625005, -0.8017578125], + [174.47636718750002, -0.829003906250037], + [174.46406250000004, -0.804199218749957], + [174.47968749999998, -0.77363281250004], + [174.452734375, -0.647070312500006], + [174.40781250000012, -0.629785156249952], + [174.38105468750015, -0.591796875000028], + [174.39404296874997, -0.591796875000028], + [174.43876953125002, -0.6265625], + [174.4748046875001, -0.6421875], + [174.49541015625002, -0.725683593749949], + [174.50869140625005, -0.8017578125] + ] + ], + [ + [ + [173.03281250000012, 1.013134765624997], + [173.08652343750006, 0.973437499999989], + [173.07949218750005, 0.946240234375054], + [173.06142578125, 0.91523437500004], + [172.99111328125005, 0.835449218750043], + [172.9699218750001, 0.842773437500014], + [173.03857421874997, 0.914746093750026], + [173.06503906250012, 0.962695312500031], + [173.02558593750004, 0.999072265624974], + [173.0099609375001, 0.990966796875014], + [173.00371093750007, 0.990966796875014], + [172.99003906250002, 1.02509765625004], + [173.00371093750007, 1.02509765625004], + [173.03281250000012, 1.013134765624997] + ] + ], + [ + [ + [173.03837890625002, 1.34208984374996], + [173.01132812500012, 1.33837890625], + [173.02861328125007, 1.358740234374977], + [173.14335937500007, 1.381347656250057], + [173.15332031249997, 1.387548828124977], + [173.171875, 1.375146484375037], + [173.17148437500012, 1.363378906250034], + [173.16308593750003, 1.357519531249991], + [173.10634765625, 1.357080078124994], + [173.06171875000004, 1.346337890625023], + [173.03837890625002, 1.34208984374996] + ] + ], + [ + [ + [173.02939453125006, 1.717382812500034], + [172.99326171875006, 1.71308593750004], + [173.02041015625, 1.727490234375054], + [173.02783203124997, 1.747314453125], + [173.02363281250004, 1.809326171875028], + [173.03769531250006, 1.804394531249997], + [173.0426757812501, 1.778759765625011], + [173.04521484375007, 1.741552734374977], + [173.02939453125006, 1.717382812500034] + ] + ], + [ + [ + [173.01875, 1.845703124999972], + [173.02363281250004, 1.82255859374996], + [172.96660156250002, 1.88540039062498], + [172.93271484375006, 1.92592773437498], + [172.93476562500004, 1.943701171875048], + [172.95009765625005, 1.93251953124998], + [172.96914062500005, 1.912695312500034], + [172.98154296875006, 1.896972656250028], + [173.01875, 1.845703124999972] + ] + ], + [ + [ + [-157.34213867187503, 1.855566406250034], + [-157.17578125, 1.73984375], + [-157.24614257812502, 1.731738281250031], + [-157.4201171875, 1.787548828125026], + [-157.57895507812498, 1.902050781249997], + [-157.531494140625, 1.926855468749991], + [-157.50820312500002, 1.88569335937504], + [-157.43583984374993, 1.84726562500002], + [-157.39321289062497, 1.927685546874983], + [-157.365185546875, 1.94609375], + [-157.49218749999997, 2.029296874999986], + [-157.44189453125003, 2.025048828125009], + [-157.32187, 1.968554687500045], + [-157.34213867187503, 1.855566406250034] + ] + ], + [ + [ + [172.84423828124997, 3.051220703124983], + [172.77031250000002, 3.01254882812502], + [172.75048828124997, 3.03305664062502], + [172.77734375000003, 3.033886718750011], + [172.82695312500002, 3.071093750000045], + [172.887109375, 3.073974609375], + [172.88027343750005, 3.053515625000017], + [172.84423828124997, 3.051220703124983] + ] + ], + [ + [ + [172.96962890625005, 3.129199218749974], + [172.90625, 3.095898437500026], + [172.887109375, 3.101269531249969], + [172.96250000000012, 3.148779296874963], + [172.96220703125002, 3.14291992187502], + [172.96962890625005, 3.129199218749974] + ] + ], + [ + [ + [-159.3390625, 3.923535156249983], + [-159.259326171875, 3.839208984375034], + [-159.27475585937503, 3.796582031250054], + [-159.33227539062503, 3.80048828125004], + [-159.358740234375, 3.815332031250051], + [-159.31367187499995, 3.822656250000037], + [-159.30625, 3.838378906250043], + [-159.32680664062497, 3.863183593750023], + [-159.35419921874995, 3.880517578125009], + [-159.37319335937502, 3.880517578125009], + [-159.37778320312498, 3.846630859375026], + [-159.40903320312503, 3.87324218750004], + [-159.39096679687498, 3.89956054687498], + [-159.36904296874997, 3.916992187499972], + [-159.3390625, 3.923535156249983] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "St. Kitts and Nevis", + "iso_a2": "KN", + "iso_a3": "KNA", + "iso_n3": "659", + "continent": "North America" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-62.53222656250003, 17.121875], + [-62.58242187499994, 17.10058593749997], + [-62.624902343749994, 17.12958984375001], + [-62.61528320312499, 17.199121093749966], + [-62.57470703124997, 17.201025390625006], + [-62.53417968749997, 17.17011718750001], + [-62.53222656250003, 17.121875] + ] + ], + [ + [ + [-62.63066406250002, 17.239990234375057], + [-62.65649414062503, 17.224414062500074], + [-62.70200195312498, 17.286035156250023], + [-62.77553710937494, 17.302832031250063], + [-62.83891601562499, 17.339257812500023], + [-62.84047851562494, 17.347070312500023], + [-62.83940429687499, 17.365332031250006], + [-62.827050781249966, 17.38642578125004], + [-62.79462890625001, 17.40258789062503], + [-62.71372070312495, 17.35327148437503], + [-62.67578124999997, 17.290917968750023], + [-62.640527343749966, 17.262304687500063], + [-62.63066406250002, 17.239990234375057] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Korea", + "iso_a2": "KR", + "iso_a3": "KOR", + "iso_n3": "410", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [126.32695312500002, 33.2236328125], + [126.28203125000002, 33.201513671875034], + [126.24023437500003, 33.21484375], + [126.22900390624997, 33.225244140624994], + [126.17871093750003, 33.282568359375034], + [126.16562500000012, 33.31201171875], + [126.19941406250004, 33.36806640625005], + [126.33769531250002, 33.46040039062501], + [126.69550781250004, 33.54931640625003], + [126.75986328125012, 33.55322265625], + [126.90117187500002, 33.51513671874997], + [126.93125000000012, 33.44384765625003], + [126.90537109375012, 33.38237304687502], + [126.87285156250002, 33.34116210937498], + [126.7091796875001, 33.27167968750004], + [126.58173828125004, 33.23833007812499], + [126.32695312500002, 33.2236328125] + ] + ], + [ + [ + [126.75302734375006, 34.343994140625], + [126.76992187500005, 34.29643554687499], + [126.68906250000006, 34.30541992187506], + [126.64609375000012, 34.35112304687502], + [126.65185546874997, 34.39033203125001], + [126.7, 34.395898437499994], + [126.75302734375006, 34.343994140625] + ] + ], + [ + [ + [126.23369140625002, 34.370507812499994], + [126.16972656250007, 34.355175781249955], + [126.13378906250003, 34.389599609374955], + [126.10859375000004, 34.39873046874996], + [126.12285156250002, 34.443945312500034], + [126.22705078125003, 34.53271484375], + [126.2474609375, 34.563330078125006], + [126.34384765625012, 34.544921875], + [126.37988281249997, 34.49794921875002], + [126.33544921874997, 34.426416015624994], + [126.23369140625002, 34.370507812499994] + ] + ], + [ + [ + [127.7990234375001, 34.61503906249996], + [127.7877929687501, 34.58408203125006], + [127.73730468750003, 34.63090820312502], + [127.78710937499997, 34.68212890625006], + [127.7990234375001, 34.61503906249996] + ] + ], + [ + [ + [126.17197265625006, 34.73115234375001], + [126.15878906250006, 34.706982421874955], + [126.11523437499997, 34.714208984375006], + [126.07060546875002, 34.783056640625006], + [126.05205078125007, 34.837548828124994], + [126.00751953125004, 34.86748046874999], + [126.07841796875002, 34.914843750000045], + [126.16855468750006, 34.8296875], + [126.17197265625006, 34.73115234375001] + ] + ], + [ + [ + [128.0658203125, 34.80585937500004], + [128.05468750000003, 34.70805664062502], + [127.98398437500012, 34.703222656250006], + [127.94179687500005, 34.76625976562505], + [127.896875, 34.735498046874994], + [127.87343750000005, 34.73496093749998], + [127.83828125, 34.813330078125034], + [127.8322265625001, 34.87451171875], + [127.9154296875, 34.920996093750034], + [127.965625, 34.89301757812504], + [128.03798828125, 34.87861328125001], + [128.0658203125, 34.80585937500004] + ] + ], + [ + [ + [128.74101562500007, 34.798535156249955], + [128.64667968750004, 34.73686523437502], + [128.51953124999997, 34.819580078125], + [128.48925781250003, 34.86528320312496], + [128.58593749999997, 34.93227539062502], + [128.66796875000003, 35.0087890625], + [128.721875, 35.013574218749994], + [128.74101562500007, 34.798535156249955] + ] + ], + [ + [ + [126.41757812500012, 36.49257812500002], + [126.40380859374997, 36.427880859374994], + [126.3375, 36.47055664062498], + [126.3185546875001, 36.61254882812506], + [126.38662109375, 36.571142578125034], + [126.41757812500012, 36.49257812500002] + ] + ], + [ + [ + [130.91601562499997, 37.47846679687498], + [130.87060546875003, 37.44873046875006], + [130.816796875, 37.47846679687498], + [130.8102539062501, 37.509912109374994], + [130.83837890624997, 37.537207031250034], + [130.90371093750005, 37.55371093750003], + [130.93427734375004, 37.52973632812504], + [130.91601562499997, 37.47846679687498] + ] + ], + [ + [ + [126.52070312500004, 37.73681640625003], + [126.516015625, 37.60468750000001], + [126.46083984375005, 37.61035156250003], + [126.42333984375003, 37.62363281250006], + [126.40722656249997, 37.64941406249997], + [126.36933593750004, 37.77202148437502], + [126.41162109374997, 37.82265625000002], + [126.49355468750005, 37.782568359375034], + [126.52070312500004, 37.73681640625003] + ] + ], + [ + [ + [128.37460937500012, 38.6234375], + [128.61884765625004, 38.17607421874999], + [128.85244140625, 37.887060546875006], + [129.05156250000007, 37.67763671875005], + [129.33515625000004, 37.274560546874994], + [129.41826171875002, 37.059033203124955], + [129.426171875, 36.92553710937503], + [129.47343750000007, 36.74189453125001], + [129.4330078125, 36.636621093749966], + [129.44501953125004, 36.470703125], + [129.42714843750005, 36.38549804687497], + [129.39257812500003, 36.32270507812498], + [129.39130859375004, 36.2021484375], + [129.40244140625006, 36.13764648437501], + [129.40351562500004, 36.052148437499994], + [129.42578125000003, 36.01879882812506], + [129.45830078125007, 36.006445312500034], + [129.50976562499997, 36.03759765624997], + [129.57285156250006, 36.05053710937503], + [129.5617187500001, 35.94765625000002], + [129.48544921875012, 35.68740234375005], + [129.4191406250001, 35.49785156249996], + [129.32900390625005, 35.332763671875], + [129.21416015625007, 35.18183593749998], + [129.07675781250006, 35.12270507812502], + [128.98007812500006, 35.101513671874955], + [128.79570312500002, 35.093896484374994], + [128.64257812499997, 35.11958007812501], + [128.5109375000001, 35.10097656250002], + [128.45810546875006, 35.069433593750006], + [128.41884765625005, 35.01567382812496], + [128.44765625, 34.93208007812498], + [128.44394531250012, 34.87036132812503], + [128.38769531250003, 34.875097656250006], + [128.27597656250006, 34.910986328125034], + [128.15234375000003, 34.91586914062498], + [128.09453125000007, 34.93359375000003], + [128.03623046875006, 35.02197265625], + [127.97675781250004, 35.018701171874966], + [127.8732421875001, 34.96630859375003], + [127.71484374999997, 34.95468749999998], + [127.65908203125, 34.92636718749998], + [127.63935546875004, 34.88969726562496], + [127.6625, 34.84340820312505], + [127.74218749999997, 34.782568359375006], + [127.71542968750012, 34.72104492187498], + [127.63242187500006, 34.69023437500002], + [127.56542968750003, 34.76591796874999], + [127.52363281250004, 34.840087890625], + [127.476953125, 34.84428710937496], + [127.40429687499997, 34.823095703125006], + [127.38964843749997, 34.743017578125034], + [127.42343750000012, 34.6884765625], + [127.47910156250012, 34.625244140625], + [127.40117187500002, 34.55253906250002], + [127.3805664062501, 34.50063476562502], + [127.324609375, 34.463281249999966], + [127.17343750000006, 34.54614257812497], + [127.19492187500012, 34.60502929687499], + [127.26054687500007, 34.66166992187496], + [127.26865234375012, 34.72036132812502], + [127.24707031249997, 34.755126953125], + [127.03076171874997, 34.60688476562501], + [126.89746093749997, 34.438867187499966], + [126.82626953125006, 34.451074218749966], + [126.79648437500012, 34.494287109374966], + [126.75478515625005, 34.511865234374994], + [126.61083984374997, 34.403515624999955], + [126.584375, 34.31752929687502], + [126.53144531250004, 34.31425781249999], + [126.50830078125003, 34.35063476562502], + [126.50644531250006, 34.42836914062505], + [126.48173828125002, 34.49394531249999], + [126.33261718750012, 34.589648437500045], + [126.26445312500002, 34.67324218750002], + [126.30107421875002, 34.71997070312503], + [126.42558593750007, 34.694580078125], + [126.52451171875006, 34.697900390624966], + [126.50498046875006, 34.73754882812497], + [126.4728515625001, 34.75634765624997], + [126.53857421874997, 34.778662109375006], + [126.59335937500012, 34.824365234374994], + [126.54794921875012, 34.836767578125034], + [126.47851562499997, 34.81035156249996], + [126.42070312500002, 34.823388671874966], + [126.3978515625, 34.932812499999955], + [126.32744140625002, 35.04511718750001], + [126.29111328125012, 35.154150390625034], + [126.36054687500004, 35.216894531250006], + [126.39589843750005, 35.31440429687498], + [126.46044921874997, 35.45561523437499], + [126.49277343750006, 35.501269531250045], + [126.5822265625001, 35.53447265624996], + [126.61406250000007, 35.57099609375004], + [126.56494140625003, 35.58974609375005], + [126.48652343750004, 35.60634765625005], + [126.4884765625001, 35.647070312500006], + [126.54189453125005, 35.669335937499994], + [126.60156250000003, 35.714208984375006], + [126.71738281250006, 35.76884765625002], + [126.75302734375006, 35.871972656249994], + [126.71962890625, 35.89790039062501], + [126.64746093749997, 35.922412109375045], + [126.66367187500006, 35.974511718749994], + [126.69345703125006, 36.01416015625], + [126.68232421875004, 36.037939453125034], + [126.5970703125, 36.105029296875045], + [126.5404296875, 36.166162109374966], + [126.55722656250006, 36.23583984375003], + [126.54423828125007, 36.34121093750002], + [126.55195312500004, 36.4296875], + [126.5482421875, 36.477636718750006], + [126.50664062500002, 36.58564453124998], + [126.4876953125, 36.69379882812498], + [126.43300781250005, 36.67802734374996], + [126.38876953125012, 36.65117187500002], + [126.23066406250004, 36.689257812500045], + [126.18085937500004, 36.69160156249998], + [126.16054687500005, 36.77192382812501], + [126.21718750000005, 36.870947265625006], + [126.35156249999997, 36.95820312500004], + [126.42871093749997, 36.96904296875002], + [126.48701171875004, 37.00747070312502], + [126.57773437500006, 37.01958007812502], + [126.68671875000004, 36.96035156250002], + [126.78447265625007, 36.94843749999998], + [126.83876953125005, 36.84609375000002], + [126.87207031249997, 36.82446289062506], + [126.8791015625001, 36.86206054687497], + [126.95800781249997, 36.906152343749994], + [126.97685546875002, 36.93940429687501], + [126.95976562500007, 36.957617187500006], + [126.86894531250002, 36.97573242187505], + [126.78740234375002, 37.10273437499998], + [126.77607421875004, 37.158203125], + [126.74638671875002, 37.19355468750001], + [126.79052734374997, 37.29492187499997], + [126.69619140625, 37.41069335937502], + [126.65029296875, 37.44711914062498], + [126.65683593750006, 37.55117187500005], + [126.6076171875001, 37.61743164062503], + [126.58017578125012, 37.65375976562498], + [126.56337890625005, 37.71650390624998], + [126.57773437500006, 37.744726562500034], + [126.62070312500012, 37.75546875], + [126.63388671875012, 37.78183593750006], + [126.66455078124997, 37.80073242187498], + [126.66650390625003, 37.82792968750002], + [126.66679687500007, 37.91718750000001], + [126.75429687500005, 37.97895507812498], + [126.87890625000003, 38.106054687500034], + [126.94003906250006, 38.17558593749999], + [127.00966796875005, 38.24052734374996], + [127.09033203125003, 38.28388671875001], + [127.16953125000006, 38.304541015625034], + [127.29404296875006, 38.31328125], + [127.53271484375003, 38.30498046874996], + [127.57949218750005, 38.3125], + [127.7455078125, 38.31923828125002], + [127.78466796874997, 38.30771484374998], + [127.90527343749997, 38.30043945312502], + [128.03896484375, 38.30854492187498], + [128.10625, 38.32734374999998], + [128.16865234375004, 38.35932617187501], + [128.22314453124997, 38.41699218750003], + [128.27929687499997, 38.523779296875034], + [128.33945312500006, 38.60786132812501], + [128.37460937500012, 38.6234375] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Kosovo", + "iso_a2": "-99", + "iso_a3": "-99", + "iso_n3": "-99", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [21.5625, 42.247509765625], + [21.560839843750017, 42.24765625], + [21.389550781250023, 42.21982421875], + [21.33173828125001, 42.187158203124994], + [21.29755859375001, 42.130078125], + [21.28662109375, 42.100390625], + [21.25634765625, 42.099511718749994], + [21.2060546875, 42.128955078124996], + [21.142480468750023, 42.175], + [21.05976562500001, 42.171289062499994], + [20.778125, 42.071044921875], + [20.750390625000023, 42.018359375], + [20.744140625, 41.904296875], + [20.725, 41.87353515625], + [20.694921875, 41.853808593749996], + [20.578515625000023, 41.8662109375], + [20.566210937500017, 41.873681640624994], + [20.581445312500023, 41.917431640625], + [20.57539062500001, 42.013085937499994], + [20.522851562500023, 42.171484375], + [20.485449218750006, 42.223388671875], + [20.408300781250006, 42.274951171874996], + [20.348242187500006, 42.3087890625], + [20.240527343750017, 42.33896484375], + [20.18574218750001, 42.42587890625], + [20.103515625, 42.524658203125], + [20.06396484375, 42.547265625], + [20.0703125, 42.557080078125], + [20.089257812500023, 42.63154296875], + [20.065722656250017, 42.685839843749996], + [20.02949218750001, 42.73203125], + [20.054296875, 42.760058593749996], + [20.129980468750006, 42.759765625], + [20.19257812500001, 42.754638671875], + [20.215136718750017, 42.798828125], + [20.344335937500006, 42.827929687499996], + [20.468847656250006, 42.85791015625], + [20.48681640625, 42.879052734374994], + [20.458398437500023, 42.924560546875], + [20.47509765625, 42.953027343749994], + [20.6240234375, 43.0341796875], + [20.648535156250006, 43.070947265624994], + [20.657617187500023, 43.099853515625], + [20.637597656250023, 43.13037109375], + [20.609667968750017, 43.17841796875], + [20.623144531250006, 43.198632812499994], + [20.700585937500023, 43.226367187499996], + [20.76337890625001, 43.25859375], + [20.800585937500017, 43.261083984375], + [20.823828125, 43.237939453124994], + [20.823828125, 43.21396484375], + [20.84443359375001, 43.1734375], + [20.890722656250006, 43.151660156249996], + [20.967675781250023, 43.116015625], + [21.057031250000023, 43.091699218749994], + [21.127050781250006, 43.043017578124996], + [21.22265625, 42.956201171874994], + [21.237109375000017, 42.913232421874994], + [21.323144531250023, 42.87470703125], + [21.40302734375001, 42.83154296875], + [21.390625, 42.751416015625], + [21.6625, 42.681494140625], + [21.72382812500001, 42.681982421875], + [21.7529296875, 42.669824218749994], + [21.75214843750001, 42.651513671874994], + [21.73066406250001, 42.595458984375], + [21.619042968750023, 42.423242187499994], + [21.60986328125, 42.387451171875], + [21.52998046875001, 42.35], + [21.518945312500023, 42.328417968749996], + [21.541601562500006, 42.280810546874996], + [21.5625, 42.247509765625] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Kuwait", + "iso_a2": "KW", + "iso_a3": "KWT", + "iso_n3": "414", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [48.27539062499997, 29.624316406250017], + [48.21826171874997, 29.601953125], + [48.17968750000003, 29.611425781250063], + [48.14257812500003, 29.665283203125], + [48.081445312499994, 29.798925781250063], + [48.11474609375003, 29.848779296874994], + [48.11347656250004, 29.870214843750006], + [48.12011718749997, 29.886328125], + [48.13886718750004, 29.896582031250063], + [48.15859375, 29.959570312500006], + [48.1847656250001, 29.978857421875034], + [48.22773437500004, 29.93632812499999], + [48.348242187500006, 29.78266601562504], + [48.3473632812501, 29.719970703125057], + [48.34023437500005, 29.694726562499966], + [48.27539062499997, 29.624316406250017] + ] + ], + [ + [ + [48.13613281250005, 29.618115234374983], + [48.143457031249994, 29.57246093750001], + [48.089453125, 29.57910156250003], + [48.04833984374997, 29.597509765625063], + [47.96962890625005, 29.61669921874997], + [47.81748046875006, 29.487402343750006], + [47.7252929687501, 29.416943359374955], + [47.72265624999997, 29.393017578124955], + [47.8453125, 29.36572265625], + [47.935351562500074, 29.366601562499994], + [47.998144531250006, 29.385546875000045], + [48.0514648437501, 29.355371093750023], + [48.086328125, 29.275488281250006], + [48.10039062500002, 29.21074218749996], + [48.18378906250004, 28.979394531249994], + [48.25292968750003, 28.901269531249966], + [48.33925781250005, 28.76328125], + [48.37128906250004, 28.69184570312504], + [48.38964843749997, 28.631591796875], + [48.442480468750006, 28.542919921874983], + [48.26875, 28.54052734375003], + [48.049609375000074, 28.5375], + [47.87197265625005, 28.53544921874996], + [47.671289062499994, 28.53315429687504], + [47.583105468750006, 28.62797851562499], + [47.55322265625003, 28.731542968750034], + [47.52128906250002, 28.83784179687501], + [47.433203125, 28.989550781250017], + [47.13876953125006, 29.026171875000017], + [46.982226562500074, 29.045654296875], + [46.7248046875001, 29.074609375000023], + [46.53144531250004, 29.09624023437499], + [46.69375, 29.259667968749966], + [46.76933593750002, 29.347460937500017], + [46.90585937500006, 29.5375], + [46.975976562499994, 29.672851562500057], + [47.04365234375004, 29.822998046875], + [47.10205078125003, 29.939990234375017], + [47.11435546875006, 29.961328125000023], + [47.14824218750002, 30.0009765625], + [47.22324218750006, 30.04150390625], + [47.33134765625002, 30.079687500000063], + [47.51484375000004, 30.096484375000017], + [47.64375, 30.097314453125023], + [47.67275390625005, 30.095605468750023], + [47.75390624999997, 30.076611328124955], + [47.97871093750004, 29.98281250000005], + [47.97363281249997, 29.945898437499977], + [48.00566406250002, 29.835791015625034], + [48.07734375000004, 29.715576171875057], + [48.13613281250005, 29.618115234374983] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Lao PDR", + "iso_a2": "LA", + "iso_a3": "LAO", + "iso_n3": "418", + "continent": "Asia" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [102.12744140625011, 22.37919921874999], + [102.18300781250002, 22.28403320312492], + [102.30136718749998, 22.178173828125068], + [102.44267578124999, 22.02714843749999], + [102.4875, 21.957763671875114], + [102.58251953125006, 21.904296875000057], + [102.6096679687501, 21.85175781250001], + [102.63125, 21.77133789062492], + [102.64082031250007, 21.71142578125], + [102.66201171875008, 21.676025390625057], + [102.69531249999994, 21.662109375000057], + [102.73857421875005, 21.677929687500125], + [102.77109375000015, 21.70966796875001], + [102.79824218750014, 21.797949218750034], + [102.81591796875, 21.807373046875], + [102.84521484375011, 21.734765625000136], + [102.87617187500001, 21.72226562500009], + [102.91767578125013, 21.712939453124932], + [102.94960937500008, 21.681347656250068], + [102.95917968750007, 21.626220703125057], + [102.94863281250008, 21.569775390625068], + [102.90957031250008, 21.506347656249943], + [102.8875, 21.439941406250114], + [102.87226562500013, 21.3375], + [102.85117187500009, 21.26591796874999], + [102.8837890625, 21.202587890625068], + [103.1044921875, 20.89165039062499], + [103.21074218749999, 20.840625], + [103.46357421874995, 20.779833984375102], + [103.55468750000006, 20.737841796875045], + [103.6350585937501, 20.697070312500102], + [103.71445312500009, 20.71694335937508], + [103.79052734375, 20.809521484375125], + [103.88203125000013, 20.861425781250034], + [104.05205078124999, 20.941210937500102], + [104.10136718750005, 20.945507812500125], + [104.1953125, 20.91396484375008], + [104.349609375, 20.82109374999999], + [104.46142578125006, 20.73374023437492], + [104.53037109375009, 20.687988281250057], + [104.58320312500001, 20.646679687499955], + [104.57519531249994, 20.60024414062508], + [104.53271484375, 20.554882812500125], + [104.47861328124998, 20.529589843750102], + [104.40781250000015, 20.485742187500023], + [104.36777343750015, 20.441406250000057], + [104.39218750000015, 20.424755859375068], + [104.49619140625003, 20.41367187499992], + [104.61884765624995, 20.374511718750114], + [104.65644531250001, 20.328515624999966], + [104.66191406250005, 20.289013671875125], + [104.67695312500007, 20.224707031249977], + [104.69873046875006, 20.205322265625114], + [104.81269531250001, 20.21684570312499], + [104.84785156250007, 20.202441406250045], + [104.88867187500006, 20.169091796875023], + [104.92919921874994, 20.082812500000045], + [104.92792968750007, 20.01811523437499], + [104.84580078125003, 19.94716796875008], + [104.81513671875001, 19.90400390625001], + [104.80175781250011, 19.836132812500068], + [104.74316406250006, 19.754736328124977], + [104.58789062500006, 19.61875], + [104.54628906250014, 19.610546875000068], + [104.25986328125003, 19.685498046875068], + [104.12714843750001, 19.68085937500001], + [104.06279296875005, 19.678417968750068], + [104.03203124999999, 19.67514648437492], + [104.0134765625001, 19.646484374999943], + [104.05156250000005, 19.564160156250068], + [104.06289062500002, 19.482568359375136], + [104.02753906250013, 19.420458984375102], + [103.93203125000002, 19.366064453125034], + [103.89638671875002, 19.339990234375023], + [103.89160156249994, 19.30498046874999], + [103.91835937500008, 19.268505859375068], + [104.00634765625006, 19.23090820312501], + [104.10859375000013, 19.195556640625114], + [104.44580078125006, 18.983837890625125], + [104.51796875000002, 18.934082031250114], + [104.61328125000006, 18.860644531250102], + [104.71650390624995, 18.803417968749955], + [104.9931640625, 18.728320312499932], + [105.11513671875002, 18.678857421875023], + [105.146484375, 18.650976562499977], + [105.14541015625014, 18.616796874999977], + [105.11347656250001, 18.573046875000102], + [105.08701171875015, 18.49624023437508], + [105.08583984375008, 18.450097656250136], + [105.11455078125005, 18.405273437500057], + [105.16328125000007, 18.338720703124977], + [105.27324218750005, 18.235351562500057], + [105.33349609375006, 18.18964843750001], + [105.40000000000015, 18.17924804687499], + [105.45820312500007, 18.154296875000057], + [105.51855468750011, 18.077441406250045], + [105.58847656250015, 17.983691406249932], + [105.59765625000006, 17.918261718749932], + [105.62724609375005, 17.834423828125068], + [105.69140625, 17.737841796874932], + [105.77949218750001, 17.644433593750136], + [105.90273437500008, 17.528662109374977], + [105.97353515625008, 17.44697265625001], + [106.00625, 17.415283203124943], + [106.26953125, 17.216796875000057], + [106.33339843750002, 17.14370117187508], + [106.42597656250007, 17.00253906250009], + [106.46533203125011, 16.981835937500136], + [106.50224609374999, 16.9541015625], + [106.52597656250003, 16.876611328125023], + [106.53369140625, 16.821044921875057], + [106.54619140625005, 16.650732421874977], + [106.59365234375014, 16.60009765625], + [106.6375, 16.53793945312492], + [106.65644531250013, 16.492626953125125], + [106.69609375000005, 16.458984375], + [106.73955078124999, 16.452539062500136], + [106.79160156250015, 16.490332031249977], + [106.83242187500008, 16.526269531250023], + [106.85107421875, 16.515625], + [106.89277343750013, 16.396533203125102], + [106.93066406250006, 16.353125], + [107.001953125, 16.311816406250045], + [107.06972656250014, 16.279833984375102], + [107.21738281250003, 16.136328124999977], + [107.29648437500015, 16.08403320312499], + [107.35009765625006, 16.0673828125], + [107.39638671875008, 16.04301757812499], + [107.41015625, 15.997851562500045], + [107.39199218750008, 15.951660156250057], + [107.36064453125005, 15.921728515624977], + [107.18886718750008, 15.838623046875114], + [107.16591796875002, 15.802490234375], + [107.18955078125003, 15.747265624999955], + [107.23261718750007, 15.678076171875091], + [107.27939453125003, 15.618701171875045], + [107.33876953125002, 15.560498046875125], + [107.45957031250015, 15.4658203125], + [107.56425781249999, 15.3916015625], + [107.62167968750015, 15.309863281250045], + [107.65312, 15.255224609375091], + [107.63369140625008, 15.18984375000008], + [107.58964843749999, 15.118457031250102], + [107.55527343750009, 15.057031250000023], + [107.49628906250001, 15.021435546875068], + [107.48037109375014, 14.979882812500136], + [107.5046875000001, 14.91591796875008], + [107.52451171875003, 14.871826171874943], + [107.51376953124998, 14.817382812500057], + [107.51943359375008, 14.705078125000114], + [107.46513671875005, 14.664990234375125], + [107.41474609375007, 14.56289062500008], + [107.37988281250006, 14.555322265625136], + [107.29267578125007, 14.592382812500034], + [107.26230468750009, 14.572119140625034], + [107.20664062500015, 14.497900390624977], + [107.109375, 14.416699218749955], + [107.06240234375008, 14.415771484374943], + [107.03017578125008, 14.425683593750023], + [106.99218749999994, 14.39101562500008], + [106.93808593750015, 14.327343750000068], + [106.91318359375003, 14.329394531249932], + [106.81992187500003, 14.314697265624943], + [106.7834960937501, 14.335107421875023], + [106.73818359375008, 14.387744140625102], + [106.66542968750002, 14.441308593750023], + [106.59921875000003, 14.479394531250136], + [106.56367187500007, 14.505078125000011], + [106.53115234375002, 14.549414062499977], + [106.50146484375, 14.578222656250034], + [106.44697265625007, 14.51503906250008], + [106.35498046875, 14.454785156250068], + [106.26796875000002, 14.46621093750008], + [106.22539062500005, 14.476220703125023], + [106.1907226562501, 14.388134765625011], + [106.16523437500007, 14.372363281249989], + [106.00839843750009, 14.357177734375114], + [105.97890625000014, 14.343017578125057], + [106.00410156250013, 14.262890625000068], + [106.09667968750011, 14.127099609375136], + [106.12470703124995, 14.049121093750045], + [106.06679687500008, 13.921191406250102], + [105.90449218750007, 13.924511718750068], + [105.83144531250008, 13.976611328124989], + [105.76406250000002, 14.049072265625057], + [105.73974609375006, 14.084960937500057], + [105.5315429687501, 14.156152343750023], + [105.39267578125003, 14.107080078125136], + [105.35019531250009, 14.109570312500125], + [105.28486328125013, 14.161474609375034], + [105.24570312500015, 14.200537109374977], + [105.20703125000006, 14.259375], + [105.18554687499994, 14.319091796875], + [105.18330078125001, 14.346240234374989], + [105.24365234375006, 14.367871093749955], + [105.34218750000008, 14.416699218749955], + [105.42265624999993, 14.471630859374955], + [105.47558593750006, 14.530126953124977], + [105.49736328125005, 14.590673828125034], + [105.50019531250013, 14.661230468750034], + [105.52304687500015, 14.843310546874989], + [105.54667968749999, 14.932470703125034], + [105.53339843750013, 15.041601562500091], + [105.49042968750007, 15.127587890625023], + [105.49042968750007, 15.256591796875], + [105.505859375, 15.319628906250045], + [105.51318359375011, 15.360888671874932], + [105.57373046875, 15.413232421875136], + [105.615625, 15.488281249999943], + [105.63886718750013, 15.585937499999943], + [105.64101562500002, 15.656542968749932], + [105.62207031250006, 15.699951171875114], + [105.56240234375002, 15.741259765624989], + [105.46201171875015, 15.780419921875136], + [105.39892578125011, 15.829882812500102], + [105.37324218750001, 15.889697265625045], + [105.37558593750015, 15.942187500000045], + [105.40625, 15.987451171875023], + [105.33066406250003, 16.037890625000045], + [105.1487304687501, 16.09355468749999], + [105.04716796874999, 16.16025390625009], + [105.02578125000008, 16.237988281250125], + [104.94990234375007, 16.33994140625009], + [104.81933593749994, 16.466064453125057], + [104.75058593750015, 16.647558593750034], + [104.74355468750014, 16.88437], + [104.75898437500013, 17.0771484375], + [104.81601562499998, 17.30029296875], + [104.73964843750008, 17.461669921875], + [104.65585937500003, 17.54672851562509], + [104.53925781250013, 17.60927734375008], + [104.428125, 17.698974609375057], + [104.32265625000002, 17.815820312500023], + [104.19619140625002, 17.988378906250034], + [104.04873046875002, 18.216699218749966], + [103.94960937500008, 18.318994140625023], + [103.89882812500002, 18.295312500000023], + [103.79228515624999, 18.31650390625009], + [103.62968750000005, 18.382568359375057], + [103.48798828124995, 18.41816406250001], + [103.36699218750005, 18.42333984375], + [103.28828124999995, 18.408398437499955], + [103.25175781249999, 18.373486328125125], + [103.24892578125014, 18.338964843750034], + [103.27958984374999, 18.304980468750045], + [103.26318359375, 18.278466796875136], + [103.19970703125006, 18.25947265625001], + [103.14853515625009, 18.221728515624932], + [103.09121093750014, 18.13823242187499], + [103.05136718750003, 18.02851562500001], + [102.99140625000007, 17.986230468750136], + [102.89863281250001, 17.976904296874977], + [102.80742187500005, 17.945556640625], + [102.71757812500005, 17.892236328125136], + [102.67519531250014, 17.851757812500068], + [102.68007812500008, 17.824121093750136], + [102.66064453125, 17.81796875], + [102.61679687500015, 17.833349609375034], + [102.59609375000002, 17.86962890625], + [102.59824218750009, 17.926757812500057], + [102.55253906249999, 17.965087890625057], + [102.4587890625001, 17.984619140624943], + [102.35185546874999, 18.045947265625045], + [102.23164062500001, 18.148974609375045], + [102.14824218750005, 18.203857421875057], + [102.10146484375014, 18.21064453125001], + [102.03457031250002, 18.169824218750023], + [101.94746093750001, 18.081494140624955], + [101.87548828125011, 18.046435546874932], + [101.81865234375005, 18.064648437500125], + [101.77480468750002, 18.033398437500125], + [101.744140625, 17.952685546875045], + [101.6875, 17.889404296875114], + [101.56367187500001, 17.820507812500125], + [101.55507812500002, 17.812353515625034], + [101.41367187500015, 17.71875], + [101.29970703125002, 17.625], + [101.16748046875011, 17.4990234375], + [101.10517578125001, 17.479541015625102], + [101.04570312499999, 17.509960937500068], + [100.95585937499999, 17.541113281250034], + [100.9084960937501, 17.583886718750023], + [100.99902343750006, 17.79716796874999], + [101.11328125000006, 18.033544921874977], + [101.14394531250008, 18.14262695312499], + [101.14873046874999, 18.222167968750057], + [101.1375, 18.286865234375057], + [101.0927734375, 18.35454101562499], + [101.0505859375001, 18.407031250000045], + [101.04697265625003, 18.441992187500034], + [101.06044921875014, 18.479003906249943], + [101.10634765625008, 18.533544921875034], + [101.16552734375006, 18.61831054687508], + [101.22050781250005, 18.792773437500102], + [101.28632812499995, 18.977148437500034], + [101.27988281250009, 19.088916015625045], + [101.22656250000006, 19.211523437499977], + [101.19755859374999, 19.327929687500045], + [101.22080078125015, 19.486621093750045], + [101.21191406250011, 19.548339843750057], + [101.15468750000014, 19.57919921875009], + [100.96650390625001, 19.610791015624955], + [100.90605468749993, 19.60537109375008], + [100.85820312499999, 19.585058593750034], + [100.80683593750001, 19.541943359374955], + [100.74394531249999, 19.51474609374992], + [100.62548828125, 19.49985351562509], + [100.51357421875008, 19.553466796875], + [100.42011718750007, 19.644482421875068], + [100.39765625000013, 19.756103515625057], + [100.46621093750002, 19.888916015624943], + [100.51455078125014, 19.996337890625], + [100.54306640625009, 20.08867187499999], + [100.53994140625014, 20.13237304687499], + [100.51953125000006, 20.177929687500068], + [100.49160156250008, 20.184082031250057], + [100.43154296875008, 20.240722656250057], + [100.37314453125009, 20.340380859375102], + [100.31796875000003, 20.385888671875136], + [100.26601562500014, 20.377294921874977], + [100.2180664062501, 20.339599609375114], + [100.17412109375005, 20.27275390624999], + [100.13974609375015, 20.245410156250102], + [100.11494140625007, 20.25766601562492], + [100.12246093750002, 20.316650390625057], + [100.12968750000005, 20.372216796875023], + [100.1838867187501, 20.589111328124943], + [100.2493164062501, 20.730273437499932], + [100.32607421875008, 20.795703124999932], + [100.40742187499995, 20.823242187500057], + [100.49335937500007, 20.812988281250114], + [100.56513671875013, 20.82509765625008], + [100.62294921875002, 20.85957031250001], + [100.61767578125, 20.87924804687509], + [100.54931640625011, 20.884228515625068], + [100.5222656250001, 20.921923828125102], + [100.53613281250006, 20.992382812500068], + [100.56660156250007, 21.038183593749977], + [100.61367187500008, 21.059326171875], + [100.65917968750011, 21.130371093750114], + [100.703125, 21.25136718750008], + [100.75664062500005, 21.312646484375136], + [100.81953125000007, 21.314208984375057], + [100.92753906250005, 21.3662109375], + [101.0803710937501, 21.46865234375008], + [101.13886718750013, 21.567480468749977], + [101.19667968750002, 21.522070312499977], + [101.17539062500009, 21.407519531250102], + [101.20556640625006, 21.383300781250114], + [101.21992187500013, 21.342431640625136], + [101.21181640625008, 21.278222656250023], + [101.22441406249999, 21.22373046874992], + [101.24785156249993, 21.197314453125045], + [101.28144531250007, 21.184130859375045], + [101.44355468750001, 21.230810546874977], + [101.54238281250008, 21.234277343750136], + [101.58388671875002, 21.203564453125068], + [101.62167968750009, 21.18442382812509], + [101.66855468750003, 21.169628906250125], + [101.70478515625013, 21.150146484375057], + [101.728125, 21.15639648437508], + [101.78349609374999, 21.204150390625045], + [101.8005859375001, 21.212597656249955], + [101.80205078125005, 21.235986328125136], + [101.76308593750014, 21.278906249999977], + [101.7229492187501, 21.314941406250057], + [101.72421875000003, 21.39501953125], + [101.74345703125005, 21.53383789062508], + [101.74726562500007, 21.60576171874999], + [101.7439453125001, 21.77797851562508], + [101.73652343750001, 21.826513671874977], + [101.69960937500014, 21.882470703125023], + [101.60292968749997, 21.98969726562501], + [101.57578125000015, 22.055273437500034], + [101.56025390625001, 22.120898437500102], + [101.56181640624999, 22.162402343750045], + [101.53730468750013, 22.209863281250136], + [101.52451171874998, 22.253662109375], + [101.56787109375011, 22.2763671875], + [101.6199218750001, 22.327441406250102], + [101.64619140625013, 22.405419921874966], + [101.67148437500009, 22.462304687500023], + [101.70751953125, 22.486572265625], + [101.73876953125011, 22.495263671874966], + [101.75996093750001, 22.490332031250034], + [101.841796875, 22.388476562500102], + [101.94541015625015, 22.439404296874955], + [102.02441406250006, 22.439208984375114], + [102.09150390625007, 22.412255859375136], + [102.12744140625011, 22.37919921874999] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Lebanon", + "iso_a2": "LB", + "iso_a3": "LBN", + "iso_n3": "422", + "continent": "Asia" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [35.869140625, 33.43173828125], + [35.84072265625002, 33.415673828124994], + [35.7875, 33.369775390624994], + [35.734472656250006, 33.3326171875], + [35.62724609375002, 33.275048828124994], + [35.60292968750002, 33.240625], + [35.57929687500001, 33.271484375], + [35.53251953125002, 33.25048828125], + [35.4931640625, 33.119482421875], + [35.411230468750006, 33.07568359375], + [35.30888671875002, 33.079541015625], + [35.22333984375001, 33.0919921875], + [35.10859375000001, 33.08369140625], + [35.15507812500002, 33.160009765625], + [35.20351562500002, 33.258984375], + [35.25136718750002, 33.392626953124996], + [35.33574218750002, 33.503466796874996], + [35.510839843750006, 33.879736328125], + [35.61181640625, 34.032177734375], + [35.64785156250002, 34.2482421875], + [35.804296875, 34.437402343749994], + [35.92138671875, 34.493310546874994], + [35.97792968750002, 34.547412109374996], + [35.97626953125001, 34.629199218749996], + [36.15107421875001, 34.62861328125], + [36.26357421875002, 34.632861328124996], + [36.29628906250002, 34.6787109375], + [36.383886718750006, 34.65791015625], + [36.43300781250002, 34.6134765625], + [36.388671875, 34.56689453125], + [36.326269531250006, 34.513330078124994], + [36.32988281250002, 34.499609375], + [36.37646484375, 34.495166015624996], + [36.45556640625, 34.466162109375], + [36.50439453125, 34.432373046875], + [36.5849609375, 34.221240234374996], + [36.53515625, 34.134326171874996], + [36.45751953125, 34.0568359375], + [36.4228515625, 34.049853515624996], + [36.35488281250002, 34.011328125], + [36.2978515625, 33.958642578124994], + [36.27783203125, 33.92529296875], + [36.2822265625, 33.894189453124994], + [36.36279296875, 33.855126953124994], + [36.36503906250002, 33.83935546875], + [36.34853515625002, 33.827050781249994], + [36.28339843750001, 33.835595703124994], + [36.19941406250001, 33.83955078125], + [36.14980468750002, 33.839501953124994], + [36.09218750000002, 33.831591796874996], + [36.01884765625002, 33.783935546875], + [35.98613281250002, 33.75263671875], + [35.96845703125001, 33.732421875], + [35.9423828125, 33.667578125], + [35.9716796875, 33.623095703124996], + [36.02666015625002, 33.597949218749996], + [36.03447265625002, 33.58505859375], + [36.02226562500002, 33.5625], + [35.96757812500002, 33.534570312499994], + [35.92656250000002, 33.500292968749996], + [35.91474609375001, 33.465380859374996], + [35.869140625, 33.43173828125] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Liberia", + "iso_a2": "LR", + "iso_a3": "LBR", + "iso_n3": "430", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-8.486425781249977, 7.558496093749994], + [-8.46728515625, 7.547021484374994], + [-8.437158203124994, 7.516406249999989], + [-8.408740234374989, 7.411816406249997], + [-8.296630859375, 7.074023437499989], + [-8.302343749999977, 6.98095703125], + [-8.324511718749989, 6.920019531249991], + [-8.325097656249994, 6.860400390624989], + [-8.332568359374989, 6.801562499999989], + [-8.401220703124977, 6.705126953124989], + [-8.603564453124989, 6.5078125], + [-8.587890625, 6.490527343749989], + [-8.53955078125, 6.468066406249989], + [-8.490332031249977, 6.456396484374991], + [-8.449902343749983, 6.4625], + [-8.399316406249994, 6.413183593749991], + [-8.344873046874994, 6.351269531249997], + [-8.287109375, 6.319042968749997], + [-8.203857421875, 6.290722656249997], + [-8.131005859374994, 6.287548828124997], + [-8.068945312499977, 6.298388671874989], + [-7.981591796874994, 6.2861328125], + [-7.888623046874983, 6.23486328125], + [-7.855517578124989, 6.150146484375], + [-7.833251953125, 6.076367187499997], + [-7.800927734374994, 6.038916015624991], + [-7.796533203124994, 5.97509765625], + [-7.730371093749994, 5.919042968749991], + [-7.636132812499994, 5.90771484375], + [-7.513916015625, 5.842041015625], + [-7.4828125, 5.845507812499989], + [-7.469433593749983, 5.853710937499997], + [-7.454394531249989, 5.84130859375], + [-7.423730468749994, 5.651318359374997], + [-7.39990234375, 5.550585937499989], + [-7.412451171874977, 5.509912109374994], + [-7.428906249999983, 5.477880859374991], + [-7.429833984374994, 5.324511718749989], + [-7.485205078124977, 5.236425781249991], + [-7.494140625, 5.139794921874994], + [-7.509765625, 5.108496093749991], + [-7.568896484374989, 5.080664062499991], + [-7.5693359375, 5.006445312499991], + [-7.585058593749977, 4.916748046875], + [-7.591210937499994, 4.821533203125], + [-7.574658203124983, 4.572314453124989], + [-7.571582031249989, 4.386425781249997], + [-7.544970703124989, 4.351318359375], + [-7.660009765624977, 4.366796875], + [-7.998242187499983, 4.508691406249994], + [-8.259033203125, 4.589990234374994], + [-9.132177734374977, 5.054638671874997], + [-9.374755859375, 5.241064453124991], + [-9.654394531249977, 5.518701171874994], + [-10.2763671875, 6.07763671875], + [-10.418164062499983, 6.167333984374991], + [-10.597070312499994, 6.2109375], + [-10.707617187499977, 6.258496093749997], + [-10.785595703124983, 6.31015625], + [-10.849023437499994, 6.465087890625], + [-11.004541015624994, 6.557373046875], + [-11.291601562499977, 6.688232421875], + [-11.507519531249983, 6.906542968749989], + [-11.454541015624983, 6.951220703124989], + [-11.376660156249983, 7.094677734374997], + [-11.267675781249977, 7.232617187499997], + [-11.166113281249977, 7.314404296874997], + [-11.085400390624983, 7.398583984374994], + [-11.000244140625, 7.463037109374994], + [-10.878076171874994, 7.538232421874994], + [-10.691308593749994, 7.736425781249991], + [-10.6474609375, 7.759375], + [-10.617578125, 7.896435546874997], + [-10.570849609374989, 8.071142578124991], + [-10.516748046874994, 8.125292968749989], + [-10.389550781249994, 8.157617187499994], + [-10.359814453124983, 8.187939453124997], + [-10.314648437499983, 8.310839843749989], + [-10.285742187499977, 8.4541015625], + [-10.283203125, 8.485156249999989], + [-10.233056640624994, 8.488818359374989], + [-10.147412109374983, 8.519726562499997], + [-10.09765625, 8.505859375], + [-10.07568359375, 8.464599609375], + [-10.064355468749994, 8.429882812499997], + [-9.804736328124989, 8.519189453124994], + [-9.781982421875, 8.537695312499991], + [-9.768261718749983, 8.534570312499994], + [-9.735595703125, 8.453955078124991], + [-9.716894531249977, 8.458886718749994], + [-9.701171875, 8.482177734375], + [-9.683886718749989, 8.484423828124989], + [-9.66357421875, 8.473535156249994], + [-9.643212890624994, 8.43603515625], + [-9.610156249999989, 8.40234375], + [-9.553906249999983, 8.378613281249997], + [-9.518261718749983, 8.34609375], + [-9.522216796875, 8.260009765625], + [-9.508496093749983, 8.17626953125], + [-9.484130859375, 8.156982421875], + [-9.471142578124983, 8.106982421874989], + [-9.464550781249983, 8.052099609374991], + [-9.451123046874983, 8.023242187499989], + [-9.441552734374994, 7.967919921874994], + [-9.446386718749977, 7.908496093749989], + [-9.436328124999989, 7.86669921875], + [-9.394921875, 7.794628906249997], + [-9.369140625, 7.703808593749997], + [-9.368945312499989, 7.639550781249994], + [-9.383984374999983, 7.571875], + [-9.411474609374977, 7.509960937499997], + [-9.459765624999989, 7.442529296874994], + [-9.463818359374983, 7.415869140624991], + [-9.435107421874989, 7.3984375], + [-9.391650390624989, 7.394921875], + [-9.355322265624977, 7.40869140625], + [-9.263281249999977, 7.377734374999989], + [-9.215185546874977, 7.333300781249989], + [-9.1728515625, 7.278417968749991], + [-9.134814453124989, 7.250585937499991], + [-9.117578125, 7.215917968749991], + [-9.052343749999977, 7.225488281249994], + [-8.9765625, 7.258886718749991], + [-8.960986328124989, 7.274609375], + [-8.938427734374983, 7.266162109374989], + [-8.8896484375, 7.2626953125], + [-8.855517578124989, 7.322802734374989], + [-8.827929687499989, 7.391943359374991], + [-8.769140624999977, 7.466796875], + [-8.740234375, 7.495703125], + [-8.732617187499983, 7.543554687499991], + [-8.729443359374983, 7.605273437499989], + [-8.708300781249989, 7.658886718749997], + [-8.659765624999977, 7.688378906249994], + [-8.607324218749994, 7.687939453124997], + [-8.578857421875, 7.677050781249989], + [-8.564404296874983, 7.625097656249991], + [-8.522265624999989, 7.585546875], + [-8.486425781249977, 7.558496093749994] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Libya", + "iso_a2": "LY", + "iso_a3": "LBY", + "iso_n3": "434", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [25.150488281250006, 31.654980468749997], + [25.11201171875001, 31.626904296874997], + [25.057226562500006, 31.5671875], + [25.02265625000001, 31.514013671875], + [24.929980468750017, 31.427490234375], + [24.85273437500001, 31.334814453125], + [24.859960937500006, 31.199169921874997], + [24.877539062500006, 31.061230468749997], + [24.929492187500017, 30.926464843749997], + [24.973925781250017, 30.7765625], + [24.96142578125, 30.678515625], + [24.92304687500001, 30.558007812499994], + [24.877539062500006, 30.45751953125], + [24.726464843750023, 30.2505859375], + [24.703222656250006, 30.201074218749994], + [24.71162109375001, 30.131542968749997], + [24.8037109375, 29.886035156249996], + [24.810839843750017, 29.808740234374994], + [24.86591796875001, 29.570263671874997], + [24.916113281250006, 29.376269531249996], + [24.9716796875, 29.223828125], + [24.980273437500017, 29.181884765625], + [24.980273437500017, 28.957324218749996], + [24.980273437500017, 28.732763671875], + [24.980273437500017, 28.508203125], + [24.980273437500017, 28.283642578124997], + [24.980273437500017, 28.05908203125], + [24.980273437500017, 27.834521484374996], + [24.980273437500017, 27.6099609375], + [24.980273437500017, 27.385400390624994], + [24.980273437500017, 27.160839843749997], + [24.980273437500017, 26.936230468749997], + [24.980273437500017, 26.711669921875], + [24.980273437500017, 26.487109375], + [24.980273437500017, 26.262548828125], + [24.980273437500017, 26.037988281249994], + [24.980273437500017, 25.813427734374997], + [24.980273437500017, 25.5888671875], + [24.980273437500017, 25.364306640625003], + [24.980273437500017, 25.13974609374999], + [24.980273437500017, 24.915185546874994], + [24.980273437500017, 24.690625], + [24.980273437500017, 24.466064453125], + [24.980273437500017, 24.241503906250003], + [24.980273437500017, 24.01694335937499], + [24.980273437500017, 23.792382812499994], + [24.980273437500017, 23.567822265624997], + [24.980273437500017, 23.343212890624997], + [24.980273437500017, 23.11865234375], + [24.980273437500017, 22.894091796875003], + [24.980273437500017, 22.66953125], + [24.980273437500017, 22.444970703124994], + [24.980273437500017, 22.220410156249997], + [24.980273437500017, 21.995849609375], + [24.980078125, 21.49755859375], + [24.979882812500023, 20.99921875], + [24.97968750000001, 20.500927734374997], + [24.9794921875, 20.002587890624994], + [24.976367187500017, 20.00078125], + [24.973242187500006, 19.9990234375], + [24.97021484375, 19.997265625], + [24.96699218750001, 19.99545898437499], + [24.72041015625001, 19.995556640624997], + [24.4736328125, 19.995703125], + [24.226953125000023, 19.995849609375], + [23.980273437500017, 19.99594726562499], + [23.980273437500017, 19.87109375], + [23.980273437500017, 19.746289062499997], + [23.980273437500017, 19.621484375], + [23.980273437500017, 19.496630859375003], + [23.501269531250017, 19.733203125], + [23.02216796875001, 19.969775390625003], + [22.543066406250006, 20.206347656250003], + [22.0640625, 20.442919921875003], + [21.5849609375, 20.679492187500003], + [21.105859375000023, 20.91611328124999], + [20.626757812500017, 21.152636718750003], + [20.14765625000001, 21.38925781249999], + [19.668554687500006, 21.62583007812499], + [19.189453125, 21.86240234374999], + [18.71044921875, 22.09897460937499], + [18.231347656250023, 22.335546875], + [17.752246093750017, 22.57211914062499], + [17.273242187500017, 22.80869140624999], + [16.79414062500001, 23.04526367187499], + [16.315039062500006, 23.28183593749999], + [15.984082031250011, 23.445214843749994], + [15.627148437500011, 23.28574218749999], + [15.347460937500017, 23.160693359375003], + [14.97900390625, 22.99619140624999], + [14.978906250000023, 22.996289062499997], + [14.5556640625, 22.782519531250003], + [14.230761718750017, 22.618457031250003], + [14.215527343750011, 22.619677734375003], + [14.20068359375, 22.623730468749997], + [13.862695312500023, 22.902099609375], + [13.5986328125, 23.11953125], + [13.48125, 23.18017578125], + [12.983593750000011, 23.291259765625], + [12.48876953125, 23.401660156250003], + [11.967871093750006, 23.517871093750003], + [11.873046875, 23.69482421875], + [11.766992187500023, 23.892578125], + [11.624218750000011, 24.139697265625003], + [11.536914062500017, 24.290820312500003], + [11.507617187500017, 24.314355468749994], + [11.108203125000017, 24.434033203124997], + [10.686132812500006, 24.55136718749999], + [10.43896484375, 24.480224609375], + [10.395898437500023, 24.485595703125], + [10.32578125, 24.530224609374997], + [10.255859375, 24.591015625], + [10.218652343750023, 24.676220703124997], + [10.119531250000023, 24.790234375], + [10.028125, 25.051025390625], + [10.01904296875, 25.258544921875], + [10.000683593750011, 25.332080078125003], + [9.781054687500017, 25.624267578125], + [9.58125, 25.89013671875], + [9.4482421875, 26.067138671875], + [9.42236328125, 26.1470703125], + [9.437890625000023, 26.245507812499994], + [9.491406250000011, 26.333740234375], + [9.684960937500023, 26.438232421875], + [9.859375, 26.551953125], + [9.883203125000023, 26.630810546874997], + [9.894433593750023, 26.847949218749996], + [9.837109375000011, 26.915820312499996], + [9.79541015625, 27.044775390625], + [9.752539062500006, 27.2193359375], + [9.74755859375, 27.330859375], + [9.825292968750006, 27.552978515625], + [9.916015625, 27.785693359374996], + [9.858203125000017, 28.043310546875], + [9.815625, 28.560205078124994], + [9.842578125000017, 28.966992187499997], + [9.820703125000023, 29.114794921874996], + [9.805273437500006, 29.176953125], + [9.745898437500017, 29.368945312499996], + [9.672656250000017, 29.5669921875], + [9.64013671875, 29.636425781249997], + [9.546191406250017, 29.795947265624996], + [9.391015625000023, 29.99365234375], + [9.310253906250011, 30.115234375], + [9.420996093750006, 30.179296875], + [9.51875, 30.229394531249994], + [9.637988281250017, 30.28232421875], + [9.807421875000017, 30.342236328124997], + [9.89501953125, 30.3873046875], + [9.932519531250023, 30.425341796874996], + [10.059765625000011, 30.580078125], + [10.1259765625, 30.665966796874997], + [10.21640625, 30.783203125], + [10.256054687500011, 30.864941406249997], + [10.257031250000011, 30.940820312499994], + [10.243359375000011, 31.032128906249994], + [10.172656250000017, 31.2509765625], + [10.114941406250011, 31.463769531249994], + [10.159863281250011, 31.545800781249994], + [10.195996093750011, 31.585107421874994], + [10.274609375000011, 31.684960937499994], + [10.306054687500023, 31.704833984375], + [10.475781250000011, 31.736035156249997], + [10.543652343750011, 31.802539062499996], + [10.595507812500017, 31.8857421875], + [10.60888671875, 31.929541015625], + [10.683007812500023, 31.975390625], + [10.771582031250006, 32.02119140625], + [10.826367187500011, 32.0806640625], + [11.005175781250017, 32.172705078125], + [11.168261718750017, 32.256738281249994], + [11.358007812500006, 32.34521484375], + [11.504980468750006, 32.413671875], + [11.535937500000017, 32.47333984375], + [11.533789062500006, 32.524951171874996], + [11.453906250000017, 32.642578125], + [11.453906250000017, 32.781689453125], + [11.459179687500011, 32.897363281249994], + [11.467187500000023, 32.965722656249994], + [11.50244140625, 33.155566406249996], + [11.504589843750011, 33.181933593749996], + [11.657128906250023, 33.118896484375], + [11.8134765625, 33.093701171875], + [12.279882812500006, 32.858544921874994], + [12.427050781250017, 32.8291015625], + [12.753515625, 32.801074218749996], + [13.138085937500023, 32.897363281249994], + [13.283496093750017, 32.9146484375], + [13.536328125000011, 32.824267578124996], + [13.647753906250017, 32.798828125], + [13.835351562500023, 32.791796875], + [14.155664062500023, 32.709765625], + [14.237109375000017, 32.68125], + [14.423828125, 32.55029296875], + [14.513378906250011, 32.511083984375], + [15.176562500000017, 32.391162109374996], + [15.266894531250017, 32.311669921874994], + [15.359082031250011, 32.15966796875], + [15.363085937500017, 31.97119140625], + [15.4140625, 31.834228515625], + [15.496386718750017, 31.656787109374996], + [15.595800781250006, 31.531103515625], + [15.705957031250023, 31.426416015624994], + [15.832226562500011, 31.360986328124994], + [16.123046875, 31.264453125], + [16.450976562500017, 31.227294921875], + [16.781542968750017, 31.214746093749994], + [17.34921875, 31.081494140624997], + [17.830468750000023, 30.927587890625], + [17.949316406250006, 30.851904296875], + [18.1904296875, 30.777294921874997], + [18.669824218750023, 30.415673828124994], + [18.936425781250023, 30.290429687499994], + [19.12373046875001, 30.26611328125], + [19.29169921875001, 30.2880859375], + [19.58984375, 30.413769531249997], + [19.713281250000023, 30.48837890625], + [20.01318359375, 30.800683593749994], + [20.11152343750001, 30.963720703125], + [20.150976562500006, 31.07861328125], + [20.14111328125, 31.195507812499997], + [20.103808593750017, 31.300537109375], + [20.02001953125, 31.41064453125], + [19.961230468750017, 31.556005859375], + [19.926367187500006, 31.817529296874994], + [19.973437500000017, 31.999072265624996], + [20.03095703125001, 32.107861328125], + [20.121484375000023, 32.21875], + [20.37060546875, 32.43076171875], + [20.62109375, 32.58017578125], + [21.062304687500017, 32.775537109374994], + [21.31875, 32.777685546875], + [21.424707031250023, 32.799169921875], + [21.63593750000001, 32.937304687499996], + [21.72138671875001, 32.94248046875], + [21.839453125, 32.908642578125], + [22.187402343750023, 32.918261718749996], + [22.340625, 32.8798828125], + [22.5234375, 32.7939453125], + [22.75410156250001, 32.740527343749996], + [22.916894531250023, 32.687158203124994], + [23.090625, 32.61875], + [23.129687500000017, 32.448144531249994], + [23.110449218750006, 32.397412109375], + [23.10625, 32.331445312499994], + [23.28632812500001, 32.213818359375], + [23.797656250000017, 32.15869140625], + [23.8984375, 32.127197265625], + [24.038964843750023, 32.037011718749994], + [24.129687500000017, 32.009228515625], + [24.479785156250017, 31.996533203124997], + [24.683886718750017, 32.015966796875], + [24.878515625, 31.984277343749994], + [24.95068359375, 31.9537109375], + [25.025, 31.883349609374996], + [25.115039062500017, 31.712304687499994], + [25.150488281250006, 31.654980468749997] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Saint Lucia", + "iso_a2": "LC", + "iso_a3": "LCA", + "iso_n3": "662", + "continent": "North America" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-60.89521484375, 13.821972656249997], + [-60.951416015625, 13.717578125], + [-61.06064453124999, 13.783105468749994], + [-61.073144531249994, 13.865576171874991], + [-61.06357421874999, 13.915576171875003], + [-60.99667968749999, 14.0109375], + [-60.944580078125, 14.072851562499991], + [-60.908105468749994, 14.093359375], + [-60.88676757812499, 14.011132812499994], + [-60.89521484375, 13.821972656249997] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Liechtenstein", + "iso_a2": "LI", + "iso_a3": "LIE", + "iso_n3": "438", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [9.580273437500011, 47.057373046875], + [9.502343750000023, 47.062744140625], + [9.487695312500023, 47.062255859375], + [9.4794921875, 47.097509765625], + [9.484277343750023, 47.17265625], + [9.527539062500011, 47.270751953125], + [9.536816406250011, 47.254638671875], + [9.542187500000011, 47.234130859375], + [9.551074218750017, 47.212255859375], + [9.555761718750006, 47.185498046875], + [9.571875, 47.15791015625], + [9.601171875, 47.132080078125], + [9.610546875000011, 47.10712890625], + [9.595703125, 47.075830078124994], + [9.580273437500011, 47.057373046875] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Sri Lanka", + "iso_a2": "LK", + "iso_a3": "LKA", + "iso_n3": "144", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [79.87480468750002, 9.050732421875026], + [79.90371093750005, 8.975], + [79.82109375000002, 9.026855468750043], + [79.76679687500004, 9.069775390624997], + [79.74765625000006, 9.104589843749991], + [79.85996093750012, 9.065722656249974], + [79.87480468750002, 9.050732421875026] + ] + ], + [ + [ + [79.96953125000007, 9.63066406249996], + [79.90683593750006, 9.619824218749969], + [79.85742187500003, 9.686376953125034], + [79.84570312499997, 9.714648437500017], + [79.8585937500001, 9.734375], + [79.87226562500004, 9.744335937500026], + [79.88847656250007, 9.741162109374997], + [79.91191406250002, 9.679150390624983], + [79.96953125000007, 9.63066406249996] + ] + ], + [ + [ + [79.98232421875, 9.812695312500011], + [80.07841796875002, 9.807470703125006], + [80.18095703125002, 9.810009765624997], + [80.25283203125005, 9.796337890625054], + [80.37597656249997, 9.642333984375028], + [80.71113281250004, 9.366357421875023], + [80.89345703125, 9.085888671874997], + [80.91005859375, 9.02451171875002], + [80.93544921875, 8.97148437499996], + [80.97919921875004, 8.956933593750009], + [81.016015625, 8.932617187500028], + [81.19824218749997, 8.661962890624963], + [81.21923828125003, 8.608398437499972], + [81.2162109375, 8.549414062500034], + [81.226953125, 8.50551757812498], + [81.2746093750001, 8.48359375000004], + [81.33398437500003, 8.472070312499994], + [81.37285156250002, 8.431445312499989], + [81.42216796875007, 8.215234375], + [81.42216796875007, 8.147851562500023], + [81.4359375, 8.118896484374986], + [81.66542968750005, 7.782470703125014], + [81.67871093749997, 7.741552734375034], + [81.67626953125003, 7.710937500000014], + [81.68291015625007, 7.684472656250037], + [81.72734375000007, 7.625], + [81.79667968750007, 7.464794921875054], + [81.83203124999997, 7.428417968750011], + [81.87412109375012, 7.288330078124986], + [81.87695312499997, 7.020458984375026], + [81.86142578125012, 6.901269531249994], + [81.81855468750004, 6.75620117187502], + [81.76777343750004, 6.614306640624974], + [81.71269531250007, 6.51186523437498], + [81.63740234375004, 6.425146484374991], + [81.37998046875006, 6.240917968750026], + [81.30625, 6.203857421875028], + [80.97109375, 6.088378906250028], + [80.72412109375003, 5.97905273437496], + [80.49580078125004, 5.949365234375051], + [80.26738281250007, 6.009765625], + [80.09531250000012, 6.153173828125006], + [80.0072265625, 6.364404296875051], + [79.9469726562501, 6.584521484375031], + [79.85937, 6.829296874999983], + [79.79208984375006, 7.585205078124972], + [79.7599609375001, 7.796484375000034], + [79.70781250000002, 8.065673828124986], + [79.71298828125012, 8.18232421875004], + [79.74980468750007, 8.294238281250003], + [79.74970703125004, 8.048876953125031], + [79.78349609375007, 8.018457031250051], + [79.80888671875002, 8.05], + [79.83193359375, 8.304052734374963], + [79.85087890625002, 8.411572265625026], + [79.941796875, 8.691503906250034], + [79.94365234375002, 8.741162109375026], + [79.9279296875001, 8.846435546874972], + [79.92890625000004, 8.899218749999974], + [80.06484375, 9.095654296875026], + [80.09960937499997, 9.209960937500043], + [80.1183593750001, 9.326855468749969], + [80.11093750000006, 9.453271484374966], + [80.08632812500005, 9.577832031250026], + [80.19609375000002, 9.538134765625031], + [80.25644531250006, 9.49477539062498], + [80.31796875000006, 9.465429687500048], + [80.36796875000002, 9.48046875], + [80.42832031250006, 9.480957031250014], + [80.38535156250012, 9.548779296874969], + [80.25761718750002, 9.611279296875011], + [80.04580078125005, 9.649902343749972], + [79.97949218750003, 9.699365234375009], + [79.95400390625, 9.742333984374966], + [79.96699218750004, 9.792626953125009], + [79.98232421875, 9.812695312500011] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Lesotho", + "iso_a2": "LS", + "iso_a3": "LSO", + "iso_n3": "426", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [28.736914062500006, -30.101953125], + [28.646875, -30.1265625], + [28.634375, -30.128710937500003], + [28.57666015625, -30.123046875], + [28.499609375, -30.12890625], + [28.4390625, -30.14248046875001], + [28.39208984375, -30.147558593750006], + [28.3154296875, -30.21845703125001], + [28.176171875000023, -30.40986328125001], + [28.139062500000023, -30.44990234375001], + [28.128710937500017, -30.52509765625001], + [28.09638671875001, -30.584570312500006], + [28.05683593750001, -30.63105468750001], + [28.018164062500006, -30.64228515625001], + [27.90185546875, -30.623828125], + [27.753125, -30.6], + [27.666601562500006, -30.542285156250003], + [27.589648437500017, -30.46640625], + [27.54902343750001, -30.411230468750006], + [27.50654296875001, -30.380957031250006], + [27.491992187500017, -30.36396484375001], + [27.431445312500017, -30.338476562500006], + [27.408593750000023, -30.325292968750006], + [27.388476562500017, -30.31591796875], + [27.364062500000017, -30.27919921875001], + [27.349707031250006, -30.247363281250003], + [27.355371093750023, -30.15859375], + [27.31269531250001, -30.10566406250001], + [27.23974609375, -30.01533203125001], + [27.19355468750001, -29.94130859375001], + [27.13046875, -29.840234375], + [27.091796875, -29.753710937500003], + [27.0517578125, -29.6640625], + [27.056933593750017, -29.625585937500006], + [27.09521484375, -29.59931640625001], + [27.207421875000023, -29.55419921875], + [27.29453125, -29.519335937500003], + [27.356835937500023, -29.45527343750001], + [27.424902343750006, -29.36005859375001], + [27.4580078125, -29.302734375], + [27.491015625000017, -29.27656250000001], + [27.527148437500017, -29.236132812500003], + [27.590234375000023, -29.146484375], + [27.660449218750017, -29.046972656250006], + [27.73554687500001, -28.940039062500006], + [27.830371093750017, -28.90908203125001], + [27.959863281250023, -28.873339843750003], + [28.084375, -28.77998046875001], + [28.23261718750001, -28.701269531250006], + [28.471875, -28.615820312500006], + [28.583398437500023, -28.594140625], + [28.625781250000017, -28.58173828125001], + [28.652636718750017, -28.59785156250001], + [28.68115234375, -28.646777343750003], + [28.721777343750006, -28.68769531250001], + [28.816210937500017, -28.758886718750006], + [28.85625, -28.77607421875001], + [28.953710937500006, -28.881445312500006], + [29.058007812500023, -28.953710937500006], + [29.178027343750017, -29.036914062500003], + [29.259765625, -29.07832031250001], + [29.301367187500006, -29.08984375], + [29.3359375, -29.163671875], + [29.370898437500017, -29.21845703125001], + [29.390722656250006, -29.26972656250001], + [29.38671875, -29.31972656250001], + [29.34882812500001, -29.441992187500006], + [29.293554687500006, -29.56689453125], + [29.24921875000001, -29.61884765625001], + [29.195117187500017, -29.651660156250003], + [29.1421875, -29.700976562500003], + [29.121972656250023, -29.801171875], + [29.098046875000023, -29.919042968750006], + [29.02900390625001, -29.967578125], + [28.97529296875001, -29.99941406250001], + [28.90107421875001, -30.03847656250001], + [28.736914062500006, -30.101953125] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Lithuania", + "iso_a2": "LT", + "iso_a3": "LTU", + "iso_n3": "440", + "continent": "Europe" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [21.03173828125003, 55.350488281249994], + [20.957812500000074, 55.27890625000006], + [20.89980468750008, 55.286669921875045], + [21.01406250000008, 55.40195312499998], + [21.057617187500057, 55.47680664062506], + [21.08789062500003, 55.583105468750034], + [21.11484375, 55.61650390624999], + [21.11572265625, 55.56816406250002], + [21.10390625000008, 55.48774414062498], + [21.03173828125003, 55.350488281249994] + ] + ], + [ + [ + [24.94384765624997, 56.32558593750005], + [25.069921875, 56.20039062500004], + [25.206933593750023, 56.17841796874998], + [25.585742187500017, 56.13017578125002], + [25.663183593750063, 56.104833984375006], + [25.87636718750008, 55.99433593749998], + [26.00419921874999, 55.94013671875004], + [26.085546875000063, 55.896875], + [26.209570312500006, 55.81210937500006], + [26.28125, 55.75043945312501], + [26.40107421875004, 55.70380859375001], + [26.54287109375005, 55.67241210937502], + [26.593554687500074, 55.66752929687502], + [26.590820312500057, 55.62265625], + [26.56660156250001, 55.546484375000034], + [26.51923828125004, 55.448144531249994], + [26.469531250000045, 55.371923828125006], + [26.457617187500006, 55.342480468749955], + [26.49531250000004, 55.31801757812502], + [26.68125, 55.30644531249999], + [26.76015625000008, 55.293359375], + [26.775683593750045, 55.27309570312502], + [26.734375, 55.24677734374998], + [26.675, 55.22490234374999], + [26.648437500000057, 55.204199218750034], + [26.601171875000034, 55.130175781250045], + [26.291796875000074, 55.13959960937501], + [26.250781250000045, 55.12451171875006], + [26.23125, 55.09013671874996], + [26.21582031250003, 55.050390625000034], + [26.175195312500023, 55.003271484375034], + [26.092968750000068, 54.96230468750005], + [25.964453124999977, 54.947167968749966], + [25.85927734375005, 54.91928710937498], + [25.780859375000063, 54.83325195312503], + [25.722460937500074, 54.71787109374998], + [25.723925781250017, 54.63603515625002], + [25.731640625000068, 54.59038085937502], + [25.72480468750001, 54.564257812500045], + [25.68515625, 54.53579101562502], + [25.62031250000004, 54.46040039062501], + [25.56757812500004, 54.377050781250006], + [25.54736328125, 54.33183593750002], + [25.55751953125005, 54.310693359374994], + [25.616894531250068, 54.310107421875045], + [25.702539062499994, 54.29296875], + [25.748144531250063, 54.259667968749966], + [25.76503906250005, 54.22119140625006], + [25.765234374999977, 54.179785156250034], + [25.74921875000001, 54.15698242187503], + [25.68056640625005, 54.140478515625034], + [25.573046875000017, 54.139892578125], + [25.510351562500034, 54.15961914062501], + [25.497363281250045, 54.17524414062501], + [25.52734375000003, 54.21513671874996], + [25.505664062500045, 54.26494140624999], + [25.46113281250004, 54.29277343749996], + [25.370605468750057, 54.25122070312503], + [25.28369140625003, 54.251269531250045], + [25.179492187500017, 54.214257812499966], + [25.111425781250006, 54.15493164062505], + [25.04609375000004, 54.13305664062503], + [24.869531250000023, 54.14516601562502], + [24.82568359374997, 54.118994140625006], + [24.78925781250001, 53.99824218750001], + [24.768164062499977, 53.97465820312499], + [24.620703125000063, 53.97983398437498], + [24.47851562500003, 53.93183593749998], + [24.31796875, 53.892968749999966], + [24.236621093750045, 53.91997070312496], + [24.19130859375005, 53.95043945312503], + [24.103906250000023, 53.94501953125001], + [24.00849609375004, 53.93164062500003], + [23.944433593750034, 53.93896484375], + [23.872558593750057, 53.935693359374966], + [23.73369140624999, 53.912255859374994], + [23.559082031250057, 53.91982421875002], + [23.484667968750074, 53.939794921875006], + [23.477636718750063, 53.95893554687498], + [23.483007812500006, 54.00595703124998], + [23.481347656250023, 54.07900390625002], + [23.453613281250057, 54.14345703125002], + [23.3701171875, 54.20048828124999], + [23.282324218750063, 54.240332031250034], + [23.17031250000008, 54.28144531249998], + [23.0875, 54.299462890624994], + [23.042187500000068, 54.30419921875], + [23.03193359375004, 54.32788085937503], + [23.01552734375005, 54.34833984375001], + [22.976757812500068, 54.36635742187505], + [22.89394531250008, 54.390527343749994], + [22.82373046874997, 54.39580078124999], + [22.766210937499977, 54.356787109375034], + [22.724316406250068, 54.405615234375034], + [22.679882812500068, 54.493017578125006], + [22.684472656250023, 54.56293945312504], + [22.70966796875001, 54.63261718750002], + [22.83125, 54.838476562500034], + [22.82470703125, 54.87128906249998], + [22.736523437500068, 54.928857421874966], + [22.627441406250057, 54.97070312499997], + [22.56728515625005, 55.05913085937496], + [22.346386718750068, 55.06425781250002], + [22.137890625000068, 55.059375], + [22.072363281250034, 55.06367187499998], + [21.873925781250023, 55.100732421874994], + [21.682714843750063, 55.16035156249998], + [21.5546875, 55.1953125], + [21.447070312500017, 55.23442382812496], + [21.389257812500034, 55.275537109374994], + [21.29755859375001, 55.264453125000045], + [21.235742187500023, 55.26411132812498], + [21.236328125000057, 55.27119140624998], + [21.20107421875008, 55.343798828125045], + [21.237890625000034, 55.455029296874955], + [21.17109375000001, 55.61772460937499], + [21.06191406250005, 55.81342773437498], + [21.053808593750006, 56.02294921875003], + [21.04609375000004, 56.07006835937503], + [21.31464843750004, 56.18813476562502], + [21.65351562500004, 56.314550781250006], + [21.730566406250034, 56.325976562500045], + [22.04287109375005, 56.40078125], + [22.084570312500034, 56.40673828125006], + [22.365917968750068, 56.39287109374999], + [22.586914062500057, 56.375097656250006], + [22.77324218749999, 56.377294921875006], + [22.875585937500063, 56.39643554687501], + [22.96826171875003, 56.38041992187502], + [23.042968750000057, 56.324072265625006], + [23.119824218749983, 56.330664062500006], + [23.195898437500034, 56.36713867187498], + [23.61269531250005, 56.333837890625034], + [23.70673828125001, 56.33461914062502], + [23.81269531250001, 56.329248046874994], + [24.00820312500005, 56.295263671875006], + [24.120703125000063, 56.26425781249998], + [24.367871093750068, 56.28300781249999], + [24.47363281250003, 56.28408203125002], + [24.52900390625001, 56.29628906250002], + [24.699511718750045, 56.38129882812501], + [24.773242187500045, 56.395898437499966], + [24.841015624999983, 56.41118164062499], + [24.90302734375001, 56.398193359375], + [24.94384765624997, 56.32558593750005] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Luxembourg", + "iso_a2": "LU", + "iso_a3": "LUX", + "iso_n3": "442", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [6.116503906250017, 50.120996093749994], + [6.108300781250023, 50.09423828125], + [6.109765625000023, 50.034375], + [6.13818359375, 49.97431640625], + [6.204882812500017, 49.91513671875], + [6.256054687500011, 49.87216796875], + [6.324609375000023, 49.837890625], + [6.44091796875, 49.805322265624994], + [6.4873046875, 49.798486328124994], + [6.49375, 49.75439453125], + [6.484765625000023, 49.7078125], + [6.444628906250017, 49.68203125], + [6.40673828125, 49.644970703125], + [6.378320312500023, 49.599609375], + [6.348437500000017, 49.5126953125], + [6.344335937500006, 49.452734375], + [6.27734375, 49.4775390625], + [6.2421875, 49.4943359375], + [6.181054687500023, 49.498925781249994], + [6.119921875000017, 49.485205078125], + [6.074121093750023, 49.454638671874996], + [6.011425781250011, 49.445458984374994], + [5.95947265625, 49.454638671874996], + [5.928906250000011, 49.4775390625], + [5.9013671875, 49.48974609375], + [5.823437500000011, 49.505078125], + [5.789746093750011, 49.53828125], + [5.8154296875, 49.55380859375], + [5.837597656250011, 49.5783203125], + [5.856542968750006, 49.612841796874996], + [5.88037109375, 49.644775390625], + [5.8037109375, 49.732177734375], + [5.787988281250023, 49.75888671875], + [5.725, 49.80830078125], + [5.725781250000011, 49.833349609375], + [5.740820312500006, 49.857177734375], + [5.735253906250023, 49.875634765624994], + [5.744042968750023, 49.91962890625], + [5.7880859375, 49.961230468749996], + [5.8173828125, 50.0126953125], + [5.866894531250011, 50.0828125], + [5.976269531250011, 50.1671875], + [6.054785156250006, 50.154296875], + [6.089062500000011, 50.154589843749996], + [6.110058593750011, 50.123779296875], + [6.116503906250017, 50.120996093749994] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Latvia", + "iso_a2": "LV", + "iso_a3": "LVA", + "iso_n3": "428", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [27.351953125000023, 57.528125], + [27.4697265625, 57.5240234375], + [27.511132812500023, 57.508154296875], + [27.538671875, 57.42978515625], + [27.672753906250023, 57.368115234375], + [27.796875, 57.316943359374996], + [27.82861328125, 57.293310546875], + [27.838281250000023, 57.247705078125], + [27.83027343750001, 57.194482421875], + [27.814550781250006, 57.16689453125], + [27.762792968750006, 57.135107421875], + [27.717382812500006, 57.054638671875], + [27.71113281250001, 56.978076171874996], + [27.639453125000017, 56.845654296875], + [27.655664062500023, 56.843212890625], + [27.806054687500023, 56.86708984375], + [27.8486328125, 56.85341796875], + [27.88154296875001, 56.824169921875], + [27.89208984375, 56.741064453125], + [27.94140625, 56.7037109375], + [27.991601562500023, 56.6453125], + [28.00751953125001, 56.599853515625], + [28.103125, 56.545703125], + [28.11083984375, 56.510693359375], + [28.169238281250017, 56.386865234375], + [28.191699218750017, 56.315576171875], + [28.202050781250023, 56.260400390625], + [28.17333984375, 56.19033203125], + [28.14794921875, 56.142919921875], + [28.11787109375001, 56.145800781249996], + [28.032031250000017, 56.13330078125], + [27.896289062500017, 56.076171875], + [27.694238281250023, 55.941552734375], + [27.64228515625001, 55.91171875], + [27.589453125, 55.8091796875], + [27.576757812500006, 55.798779296875], + [27.45917968750001, 55.803515625], + [27.427148437500023, 55.805957031249996], + [27.309179687500006, 55.80390625], + [27.052539062500017, 55.83056640625], + [26.953027343750023, 55.812939453125], + [26.82246093750001, 55.709228515625], + [26.771875, 55.693994140625], + [26.620214843750006, 55.679638671875], + [26.593554687500017, 55.667529296874996], + [26.542871093750023, 55.672412109374996], + [26.40107421875001, 55.70380859375], + [26.28125, 55.750439453125], + [26.209570312500006, 55.812109375], + [26.085546875, 55.896875], + [26.004199218750017, 55.94013671875], + [25.876367187500023, 55.9943359375], + [25.663183593750006, 56.104833984375], + [25.585742187500017, 56.130175781249996], + [25.206933593750023, 56.17841796875], + [25.069921875, 56.200390625], + [24.94384765625, 56.3255859375], + [24.90302734375001, 56.398193359375], + [24.84101562500001, 56.411181640624996], + [24.773242187500017, 56.3958984375], + [24.699511718750017, 56.381298828125], + [24.52900390625001, 56.2962890625], + [24.4736328125, 56.28408203125], + [24.36787109375001, 56.283007812499996], + [24.120703125, 56.2642578125], + [24.008203125000023, 56.295263671875], + [23.81269531250001, 56.329248046875], + [23.70673828125001, 56.334619140625], + [23.612695312500023, 56.333837890625], + [23.195898437500006, 56.367138671875], + [23.11982421875001, 56.3306640625], + [23.04296875, 56.324072265625], + [22.96826171875, 56.380419921874996], + [22.875585937500006, 56.396435546875], + [22.773242187500017, 56.377294921875], + [22.5869140625, 56.37509765625], + [22.36591796875001, 56.392871093749996], + [22.084570312500006, 56.40673828125], + [22.042871093750023, 56.40078125], + [21.730566406250006, 56.325976562499996], + [21.65351562500001, 56.31455078125], + [21.31464843750001, 56.188134765625], + [21.04609375000001, 56.070068359375], + [21.014941406250017, 56.258935546875], + [21.03144531250001, 56.636572265625], + [21.0712890625, 56.82373046875], + [21.257421875, 56.932763671875], + [21.35078125000001, 57.01767578125], + [21.405078125000017, 57.131005859375], + [21.421484375, 57.23583984375], + [21.45917968750001, 57.3224609375], + [21.72871093750001, 57.57099609375], + [21.9423828125, 57.5978515625], + [22.2314453125, 57.666796875], + [22.554589843750023, 57.724267578125], + [22.616992187500017, 57.651171875], + [22.64863281250001, 57.595361328125], + [23.03779296875001, 57.39208984375], + [23.136816406250006, 57.323828125], + [23.28730468750001, 57.08974609375], + [23.647753906250017, 56.971044921875], + [23.93115234375, 57.00849609375], + [24.054296875, 57.06611328125], + [24.28125, 57.172314453125], + [24.382617187500017, 57.250048828124996], + [24.403222656250023, 57.325], + [24.36298828125001, 57.6453125], + [24.301562500000017, 57.784130859375], + [24.322558593750017, 57.87060546875], + [24.3625, 57.866162109375], + [24.458886718750023, 57.907861328125], + [24.775781250000023, 57.98525390625], + [24.83906250000001, 57.988720703125], + [24.91132812500001, 58.00458984375], + [25.11103515625001, 58.063427734375], + [25.175195312500023, 58.032128906249994], + [25.22871093750001, 57.99658203125], + [25.25830078125, 57.996142578124996], + [25.27265625000001, 58.009375], + [25.268652343750006, 58.0322265625], + [25.282617187500023, 58.048486328124994], + [25.34003906250001, 58.039453125], + [25.5712890625, 57.9427734375], + [25.66015625, 57.920166015625], + [25.72089843750001, 57.913818359375], + [25.79375, 57.8685546875], + [25.991113281250023, 57.838183593749996], + [26.015234375, 57.814746093749996], + [26.030371093750006, 57.785546875], + [26.21503906250001, 57.662744140625], + [26.29804687500001, 57.60107421875], + [26.46210937500001, 57.544482421874996], + [26.532617187500023, 57.531005859375], + [26.819726562500023, 57.588720703125], + [26.899804687500023, 57.6087890625], + [26.96601562500001, 57.609130859375], + [27.03339843750001, 57.578759765625], + [27.187109375, 57.538330078125], + [27.326562500000023, 57.52548828125], + [27.351953125000023, 57.528125] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "Macao", + "iso_a2": "MO", + "iso_a3": "MAC", + "iso_n3": "446", + "continent": "Asia" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [113.47890625000002, 22.195556640625], + [113.48105468750003, 22.217480468749997], + [113.494140625, 22.24155273437499], + [113.52705078125001, 22.24594726562499], + [113.54814453124999, 22.222607421874997], + [113.54550781250003, 22.221484375], + [113.49882812499999, 22.20166015625], + [113.48417968749999, 22.19775390625], + [113.47890625000002, 22.195556640625] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "St-Martin", + "iso_a2": "MF", + "iso_a3": "MAF", + "iso_n3": "663", + "continent": "North America" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-63.011181640625, 18.06894531249999], + [-63.123046875, 18.06894531249999], + [-63.114990234375, 18.090722656249994], + [-63.06308593749999, 18.11533203124999], + [-63.024804687499994, 18.113085937500003], + [-63.009423828124994, 18.104296875], + [-63.011181640625, 18.06894531249999] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Morocco", + "iso_a2": "MA", + "iso_a3": "MAR", + "iso_n3": "504", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-4.628320312499966, 35.206396484375006], + [-4.329980468749937, 35.161474609375006], + [-3.982421875, 35.243408203125], + [-3.787988281250023, 35.244921875000045], + [-3.693261718749994, 35.27998046874998], + [-3.590625, 35.228320312500045], + [-3.394726562499926, 35.21181640625005], + [-3.206005859374926, 35.239111328125006], + [-3.063085937499949, 35.317236328125034], + [-2.972216796874989, 35.40727539062499], + [-2.957958984374926, 35.36308593749996], + [-2.953613281249943, 35.315136718749955], + [-2.925976562499983, 35.28710937500003], + [-2.869531249999937, 35.17265624999999], + [-2.839941406249949, 35.127832031249994], + [-2.731396484374955, 35.13520507812498], + [-2.636816406249977, 35.11269531250002], + [-2.423730468749994, 35.12348632812498], + [-2.219628906249966, 35.10419921874998], + [-2.190771484374949, 35.02978515625], + [-2.131787109374926, 34.970849609374994], + [-1.920898437499943, 34.835546875000034], + [-1.795605468749926, 34.751904296874955], + [-1.792187499999926, 34.72319335937499], + [-1.832421874999966, 34.654638671875034], + [-1.849658203125017, 34.607324218749994], + [-1.816601562499926, 34.55708007812498], + [-1.739453124999926, 34.49609375], + [-1.733300781250023, 34.46704101562503], + [-1.751855468749966, 34.433251953124966], + [-1.791796874999932, 34.367919921875], + [-1.706933593749966, 34.17607421874999], + [-1.692675781249989, 33.99028320312496], + [-1.714697265624949, 33.85820312499996], + [-1.714111328125, 33.781835937500034], + [-1.702978515624977, 33.716845703125045], + [-1.63125, 33.566748046875006], + [-1.67919921875, 33.31865234375002], + [-1.625097656250006, 33.18334960937497], + [-1.550732421874955, 33.073583984375006], + [-1.510009765625, 32.877636718749955], + [-1.45, 32.784814453124966], + [-1.352148437499977, 32.70336914062497], + [-1.29638671875, 32.67568359375002], + [-1.188232421875, 32.608496093750006], + [-1.111035156249983, 32.55229492187502], + [-1.065527343749949, 32.46831054687496], + [-1.16259765625, 32.399169921875], + [-1.240332031249949, 32.33759765624998], + [-1.262109374999937, 32.27114257812502], + [-1.225927734374949, 32.16455078125], + [-1.225927734374949, 32.107226562500045], + [-1.275341796874983, 32.089013671874966], + [-1.477050781249943, 32.094873046874994], + [-1.63515625, 32.09956054687498], + [-1.81699218749992, 32.10478515624999], + [-2.072802734374989, 32.11503906250002], + [-2.23125, 32.12133789062497], + [-2.448388671874937, 32.12998046875006], + [-2.523242187500017, 32.12568359374998], + [-2.722607421874955, 32.09575195312502], + [-2.863427734374937, 32.07470703124997], + [-2.88720703125, 32.06884765625003], + [-2.930859374999926, 32.04252929687499], + [-2.961132812499955, 31.963964843749977], + [-2.988232421874983, 31.874218749999983], + [-3.01738281249996, 31.834277343750017], + [-3.439794921874949, 31.704541015624983], + [-3.604589843749949, 31.686767578125], + [-3.700244140624989, 31.70009765625005], + [-3.768164062499977, 31.689550781250034], + [-3.82675781249992, 31.66191406249999], + [-3.846679687499972, 31.619873046875057], + [-3.849560546874955, 31.56640625], + [-3.837109374999983, 31.512353515624994], + [-3.79643554687496, 31.437109375000034], + [-3.789160156249977, 31.361816406250057], + [-3.815136718749955, 31.308837890625], + [-3.821386718749977, 31.255468750000063], + [-3.833398437499937, 31.197802734375045], + [-3.811816406249989, 31.166601562499977], + [-3.77099609375, 31.161816406249983], + [-3.730175781249955, 31.135400390625023], + [-3.672509765624937, 31.111376953125017], + [-3.62451171875, 31.065771484375034], + [-3.626904296874955, 31.000927734374983], + [-3.666796874999932, 30.964013671875023], + [-3.702001953124977, 30.944482421875023], + [-3.860058593749955, 30.92724609374997], + [-3.985351562499972, 30.91352539062504], + [-4.148779296874977, 30.8095703125], + [-4.322851562500006, 30.698876953124994], + [-4.52915039062492, 30.62553710937499], + [-4.619628906249972, 30.604785156250017], + [-4.778515624999926, 30.552392578124994], + [-4.968261718749943, 30.465380859375045], + [-5.061914062499937, 30.326416015625057], + [-5.180126953124955, 30.166162109374994], + [-5.293652343749983, 30.058642578125045], + [-5.44877929687496, 29.956933593750023], + [-5.593310546875017, 29.91796874999997], + [-5.775, 29.86904296875005], + [-6.004296875, 29.83125], + [-6.16650390625, 29.818945312500063], + [-6.214794921874955, 29.810693359374966], + [-6.357617187499926, 29.80830078125001], + [-6.427636718749994, 29.81611328125001], + [-6.479736328124943, 29.82036132812499], + [-6.500878906249994, 29.809130859375017], + [-6.507910156250006, 29.783789062500006], + [-6.510693359374955, 29.726025390624955], + [-6.520556640624989, 29.659863281249983], + [-6.565673828124943, 29.603857421875034], + [-6.59775390624992, 29.578955078125006], + [-6.635351562499949, 29.568798828124983], + [-6.755126953125, 29.583837890625034], + [-6.855566406249949, 29.601611328125017], + [-7.094921874999955, 29.62519531250001], + [-7.142431640624949, 29.61958007812504], + [-7.160205078124932, 29.612646484375034], + [-7.23491210937496, 29.574902343749983], + [-7.349755859374994, 29.494726562500006], + [-7.427685546874983, 29.425], + [-7.485742187499994, 29.392236328124994], + [-7.624609374999949, 29.375195312499983], + [-7.685156249999949, 29.349511718749994], + [-7.943847656249972, 29.17475585937501], + [-7.998925781249994, 29.132421874999977], + [-8.265185546874989, 28.980517578125045], + [-8.340478515624937, 28.93017578125], + [-8.399316406249937, 28.880175781250017], + [-8.558349609375028, 28.76787109374996], + [-8.659912109375, 28.718603515625063], + [-8.678417968749955, 28.689404296874983], + [-8.683349609375, 28.620751953125023], + [-8.683349609375, 28.46923828124997], + [-8.683349609375, 28.323681640624983], + [-8.683349609375, 28.11201171875004], + [-8.683349609375, 27.900390625], + [-8.683349609375, 27.65644531250004], + [-8.817822265624955, 27.65644531250004], + [-8.817773437499937, 27.655908203125023], + [-8.813916015624955, 27.613867187500063], + [-8.784570312499994, 27.530859375000034], + [-8.774365234374983, 27.460546875], + [-8.788964843750023, 27.416552734375017], + [-8.802685546874955, 27.360937500000034], + [-8.796826171874926, 27.308203125000063], + [-8.774365234374983, 27.250585937500034], + [-8.753857421874955, 27.191015624999977], + [-8.753857421874955, 27.150976562500006], + [-8.794873046874983, 27.120703125000034], + [-8.889062499999966, 27.104101562500034], + [-9.001904296874955, 27.090429687500006], + [-9.084423828124983, 27.090429687500006], + [-9.208447265624955, 27.100195312500034], + [-9.285595703124926, 27.098242187500006], + [-9.352978515624983, 27.098242187500006], + [-9.413037109374955, 27.088476562500063], + [-9.4873046875, 27.050390625], + [-9.569824218749943, 26.990820312500063], + [-9.673339843749972, 26.910742187499977], + [-9.7353515625, 26.860937500000063], + [-9.817871093750028, 26.850195312500006], + [-9.900341796874955, 26.850195312500006], + [-9.980908203124926, 26.890234374999977], + [-10.03271484375, 26.910742187499977], + [-10.066845703124926, 26.908789062500034], + [-10.123046875000028, 26.880468750000034], + [-10.189453124999972, 26.860937500000063], + [-10.251464843749972, 26.860937500000063], + [-10.354931640624926, 26.900976562500034], + [-10.478955078124955, 26.960546875], + [-10.551269531249943, 26.990820312500063], + [-10.654248046874983, 27.000585937500006], + [-10.757763671874926, 27.020117187499977], + [-10.830078125, 27.010351562500034], + [-10.922802734374983, 27.010351562500034], + [-11.046826171874926, 26.970312500000034], + [-11.150341796874955, 26.941015625000034], + [-11.263623046874955, 26.910742187499977], + [-11.392578125000028, 26.883398437500006], + [-11.361279296874955, 26.793554687500006], + [-11.316845703124955, 26.744726562500006], + [-11.316845703124955, 26.684179687500006], + [-11.337890624999972, 26.633398437499977], + [-11.39990234375, 26.583593750000034], + [-11.470703124999943, 26.520117187499977], + [-11.511669921874955, 26.470312500000063], + [-11.553173828124955, 26.400976562500063], + [-11.583984374999943, 26.360937499999977], + [-11.637207031249943, 26.295507812500063], + [-11.684521484374983, 26.213476562500034], + [-11.699218749999972, 26.162695312500006], + [-11.718212890624926, 26.104101562500063], + [-11.754882812499943, 26.086523437500034], + [-11.880859375000028, 26.070898437500034], + [-11.960888671874983, 26.050390625000034], + [-12.03076171875, 26.030859375000063], + [-12.056787109374966, 25.99633789062503], + [-12.060986328124955, 25.990820312499977], + [-12.081054687499943, 25.920507812500034], + [-12.081054687499943, 25.870703125000034], + [-12.101025390624926, 25.830664062500034], + [-12.130859374999972, 25.731054687500006], + [-12.170849609374955, 25.640234375000063], + [-12.201123046874983, 25.520117187500006], + [-12.230957031249943, 25.420507812500063], + [-12.270947265625011, 25.260302734375017], + [-12.310986328124983, 25.110937500000063], + [-12.360839843750028, 24.9703125], + [-12.40087890625, 24.88046875], + [-12.431152343749943, 24.830664062500063], + [-12.500976562499972, 24.770117187499977], + [-12.561035156249943, 24.731054687500006], + [-12.630810546874955, 24.680273437499977], + [-12.710937500000028, 24.630468750000034], + [-12.820751953124926, 24.570898437499977], + [-12.911132812499943, 24.520117187500034], + [-12.947851562499977, 24.497265624999983], + [-12.991162109375011, 24.4703125], + [-13.061035156249943, 24.400976562500006], + [-13.12109375, 24.300390625000034], + [-13.1611328125, 24.220312500000063], + [-13.23095703125, 24.090429687499977], + [-13.280761718749943, 24.020117187500034], + [-13.310986328124955, 23.981054687499977], + [-13.391113281249943, 23.941015625], + [-13.480957031249943, 23.910742187500063], + [-13.5810546875, 23.870703124999977], + [-13.661083984374955, 23.830664062500006], + [-13.770947265624955, 23.790625], + [-13.840771484374983, 23.750585937500034], + [-13.891113281250028, 23.691015625000063], + [-13.931103515625011, 23.620703125000034], + [-13.980908203124926, 23.520117187500063], + [-14.020996093750028, 23.410742187499977], + [-14.040966796875011, 23.340429687500034], + [-14.10107421875, 23.100195312500034], + [-14.121093749999972, 22.960546875], + [-14.141064453124955, 22.870703125], + [-14.1708984375, 22.760351562499977], + [-14.190869140624983, 22.590429687500006], + [-14.190869140624983, 22.450781249999977], + [-14.2109375, 22.370703125], + [-14.221191406249943, 22.310156250000034], + [-14.270996093749972, 22.240820312500006], + [-14.311035156249943, 22.191015625], + [-14.380810546874955, 22.120703125000063], + [-14.440917968749943, 22.080664062499977], + [-14.460888671874926, 22.040625], + [-14.52099609375, 21.990869140624994], + [-14.581005859374983, 21.910742187500006], + [-14.630859375, 21.860937499999977], + [-14.621093749999972, 21.820898437500006], + [-14.610791015625011, 21.750585937499977], + [-14.641113281249972, 21.680273437500034], + [-14.670849609374983, 21.600195312499977], + [-14.750976562499972, 21.500585937500034], + [-14.840820312499972, 21.45078125], + [-14.971142578124955, 21.441015625000063], + [-15.15087890625, 21.441015625000063], + [-15.290966796874926, 21.45078125], + [-15.4609375, 21.45078125], + [-15.610791015624983, 21.470312499999977], + [-15.750927734374926, 21.490820312499977], + [-15.920849609375011, 21.500585937500034], + [-16.04101562499997, 21.500585937500034], + [-16.190869140624955, 21.481054687500034], + [-16.581005859374926, 21.481054687500034], + [-16.73095703125003, 21.470312499999977], + [-16.951123046874926, 21.430273437500006], + [-17.002978515625017, 21.420751953125006], + [-17.003076171874937, 21.420703125000017], + [-16.930859374999983, 21.9], + [-16.793261718750017, 22.159716796875017], + [-16.683984374999937, 22.27436523437501], + [-16.514404296874943, 22.33349609374997], + [-16.35874023437495, 22.594531250000045], + [-16.30429687499995, 22.834814453125063], + [-16.201855468749955, 22.945361328125017], + [-16.16972656249999, 23.031933593749983], + [-16.21025390624999, 23.097900390625], + [-16.113671874999937, 23.227539062500057], + [-15.996728515624994, 23.425488281249955], + [-15.942626953125, 23.552636718750023], + [-15.80595703124996, 23.74951171874997], + [-15.789257812499926, 23.792871093750023], + [-15.801660156249966, 23.842236328124955], + [-15.855175781249955, 23.800341796875045], + [-15.912548828124983, 23.727587890625045], + [-15.980712890624943, 23.670312500000023], + [-15.952832031249955, 23.740820312499977], + [-15.899316406249966, 23.844433593749955], + [-15.777783203124983, 23.952929687500045], + [-15.586328124999966, 24.07275390625003], + [-15.188623046874937, 24.478808593750045], + [-15.038867187499989, 24.54882812500003], + [-14.904296875000028, 24.719775390625017], + [-14.856054687499977, 24.871582031250057], + [-14.842919921874966, 25.220117187499994], + [-14.794921874999943, 25.404150390625006], + [-14.707031249999972, 25.547705078125034], + [-14.602294921874972, 25.808544921874983], + [-14.522753906250017, 25.92524414062504], + [-14.470556640624949, 26.163037109374983], + [-14.413867187499932, 26.25371093749999], + [-14.312451171874983, 26.296728515625034], + [-14.168359375000023, 26.415429687499966], + [-13.952099609374926, 26.48876953125], + [-13.695898437499949, 26.642919921875063], + [-13.57578125, 26.735107421875], + [-13.495751953124937, 26.872656250000034], + [-13.409814453124937, 27.146630859374994], + [-13.256152343749989, 27.43461914062496], + [-13.177392578125023, 27.65185546874997], + [-13.175976562499983, 27.655712890624983], + [-13.040722656249983, 27.769824218750045], + [-12.948925781249926, 27.914160156250034], + [-12.793652343749983, 27.978417968749994], + [-12.468896484374994, 28.009423828124994], + [-11.986083984374972, 28.129296875], + [-11.552685546874955, 28.31010742187496], + [-11.430175781249943, 28.382031249999983], + [-11.299072265624972, 28.52607421875001], + [-11.080957031249937, 28.713769531249966], + [-10.673828124999972, 28.93920898437497], + [-10.486474609374994, 29.06494140625], + [-10.200585937499994, 29.380371093750057], + [-10.010498046875, 29.641406250000045], + [-9.852636718750006, 29.809228515625023], + [-9.74345703124996, 29.95820312500001], + [-9.667089843749949, 30.10927734375005], + [-9.623828124999932, 30.352636718749977], + [-9.652929687499977, 30.447558593750045], + [-9.773144531249955, 30.603125], + [-9.85390625, 30.644580078125045], + [-9.875488281249943, 30.717919921874966], + [-9.832421874999966, 30.847265625000034], + [-9.833349609374977, 31.069628906250045], + [-9.80869140624992, 31.42460937499996], + [-9.674951171874937, 31.710986328125045], + [-9.347460937499932, 32.086376953124955], + [-9.286572265624955, 32.240576171875034], + [-9.249121093749977, 32.48583984374997], + [-9.245849609375, 32.572460937499955], + [-8.83623046874996, 32.92045898437499], + [-8.59628906249992, 33.18715820312505], + [-8.512841796874994, 33.25244140625003], + [-8.301171874999937, 33.37436523437498], + [-7.562353515624977, 33.640283203124994], + [-7.144677734374966, 33.83032226562497], + [-6.900976562499949, 33.96904296874999], + [-6.755761718749966, 34.13291015624998], + [-6.353125, 34.77607421875001], + [-5.95756835937496, 35.68115234375], + [-5.924804687499943, 35.78579101562502], + [-5.747949218749994, 35.81596679687502], + [-5.622851562499989, 35.82890624999999], + [-5.522265624999932, 35.86201171874998], + [-5.397363281249966, 35.929882812499955], + [-5.277832031249943, 35.90273437500002], + [-5.337646484374972, 35.856542968750034], + [-5.337646484374972, 35.745214843750006], + [-5.252685546874972, 35.61474609374997], + [-5.105371093749994, 35.46777343749997], + [-4.837207031249989, 35.28129882812499], + [-4.628320312499966, 35.206396484375006] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 6, + "name": "Monaco", + "iso_a2": "MC", + "iso_a3": "MCO", + "iso_n3": "492", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [7.438671875000011, 43.750439453125], + [7.377734375000017, 43.731738281249996], + [7.380078125000011, 43.753222656249996], + [7.39501953125, 43.76533203125], + [7.414453125000023, 43.770898437499994], + [7.436914062500023, 43.761474609375], + [7.438671875000011, 43.750439453125] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Moldova", + "iso_a2": "MD", + "iso_a3": "MDA", + "iso_n3": "498", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [28.2125, 45.450439453125], + [28.1625, 45.51376953125], + [28.111914062500006, 45.569140625], + [28.07470703125, 45.598974609375], + [28.09033203125, 45.612744140625], + [28.130859375, 45.628271484375], + [28.159765625, 45.647119140624994], + [28.15625, 45.7130859375], + [28.13496093750001, 45.788867187499996], + [28.115527343750017, 45.825537109375], + [28.113574218750017, 45.883056640625], + [28.099707031250006, 45.972607421875], + [28.119140625, 46.138671875], + [28.199609375000023, 46.347558593749994], + [28.24433593750001, 46.45126953125], + [28.22265625, 46.508056640625], + [28.23945312500001, 46.6408203125], + [28.2046875, 46.706396484375], + [28.15, 46.79208984375], + [28.07177734375, 46.978417968749994], + [27.97421875, 47.043212890625], + [27.853808593750017, 47.114501953125], + [27.80234375, 47.168310546875], + [27.767968750000023, 47.227587890624996], + [27.696191406250023, 47.286425781249996], + [27.614062500000017, 47.34052734375], + [27.51582031250001, 47.475634765624996], + [27.46484375, 47.536669921874996], + [27.44921875, 47.553125], + [27.3369140625, 47.63974609375], + [27.277929687500006, 47.71796875], + [27.248144531250006, 47.7822265625], + [27.230859375000023, 47.841748046875], + [27.15205078125001, 47.959277343749996], + [27.080371093750017, 48.04765625], + [27.01220703125, 48.110498046874994], + [26.980761718750017, 48.155029296875], + [26.900976562500006, 48.2111328125], + [26.78730468750001, 48.255810546875], + [26.713769531250023, 48.263476562499996], + [26.618945312500017, 48.25986328125], + [26.640429687500017, 48.294140625], + [26.847070312500023, 48.387158203125], + [26.90058593750001, 48.371923828125], + [27.00849609375001, 48.36826171875], + [27.228515625, 48.371435546875], + [27.3369140625, 48.43271484375], + [27.40380859375, 48.415625], + [27.458398437500023, 48.44306640625], + [27.549218750000023, 48.477734375], + [27.56220703125001, 48.47041015625], + [27.57373046875, 48.464892578124996], + [27.714453125, 48.449511718749996], + [27.82001953125001, 48.416259765625], + [27.890625, 48.365234375], + [27.96337890625, 48.333544921874996], + [28.038476562500023, 48.3212890625], + [28.080078125, 48.295800781249994], + [28.088476562500006, 48.25703125], + [28.158789062500006, 48.23798828125], + [28.291015625, 48.238574218749996], + [28.34716796875, 48.213037109374994], + [28.326953125000017, 48.161425781249996], + [28.34052734375001, 48.144433593749994], + [28.3875, 48.162109375], + [28.42304687500001, 48.146875], + [28.441992187500006, 48.108691406249996], + [28.46308593750001, 48.09052734375], + [28.53046875000001, 48.150292968749994], + [28.601660156250006, 48.144384765625], + [28.773828125000023, 48.119580078125], + [28.865820312500006, 47.995654296874996], + [28.923144531250017, 47.951123046875], + [28.97333984375001, 47.933007812499994], + [29.036914062500017, 47.95234375], + [29.09296875000001, 47.975439453125], + [29.125390625000023, 47.96455078125], + [29.19482421875, 47.882421875], + [29.21113281250001, 47.775], + [29.210742187500017, 47.73154296875], + [29.18603515625, 47.65859375], + [29.15087890625, 47.580859375], + [29.122949218750023, 47.53037109375], + [29.134863281250006, 47.489697265625], + [29.159765625, 47.4556640625], + [29.200585937500023, 47.444482421874994], + [29.333789062500017, 47.375732421875], + [29.383398437500006, 47.328027343749994], + [29.455664062500006, 47.292626953124994], + [29.510644531250023, 47.29072265625], + [29.539160156250006, 47.27099609375], + [29.54931640625, 47.246826171875], + [29.541796875000017, 47.185546875], + [29.51093750000001, 47.12802734375], + [29.515039062500023, 47.091113281249996], + [29.5634765625, 47.047509765624994], + [29.568652343750017, 46.996728515624994], + [29.57197265625001, 46.964013671874994], + [29.597753906250006, 46.938818359375], + [29.7197265625, 46.88291015625], + [29.877832031250023, 46.82890625], + [29.918066406250006, 46.782421875], + [29.942480468750006, 46.723779296874994], + [29.93476562500001, 46.625], + [29.92431640625, 46.538867187499996], + [30.13105468750001, 46.423095703125], + [30.107519531250006, 46.4015625], + [30.07568359375, 46.377832031249994], + [29.878027343750006, 46.360205078125], + [29.837890625, 46.350537109375], + [29.751953125, 46.437792968749996], + [29.706835937500017, 46.44873046875], + [29.66455078125, 46.416748046875], + [29.61494140625001, 46.398828125], + [29.555078125000023, 46.407763671874996], + [29.491015625000017, 46.43466796875], + [29.458789062500017, 46.453759765624994], + [29.43281250000001, 46.455957031249994], + [29.392871093750017, 46.436914062499994], + [29.33955078125001, 46.445068359375], + [29.30488281250001, 46.466601562499996], + [29.25458984375001, 46.392626953124996], + [29.22382812500001, 46.376953125], + [29.20458984375, 46.379345703125], + [29.20078125, 46.50498046875], + [29.18623046875001, 46.523974609374996], + [29.146289062500017, 46.526904296874996], + [29.049902343750006, 46.497021484375], + [28.958398437500023, 46.45849609375], + [28.92744140625001, 46.424121093749996], + [28.930566406250023, 46.362255859375], + [28.94375, 46.288427734375], + [29.00625, 46.17646484375], + [28.971875, 46.12763671875], + [28.94775390625, 46.049951171874994], + [28.849511718750023, 45.978662109374994], + [28.73876953125, 45.937158203124994], + [28.729296875000017, 45.852001953125], + [28.667578125, 45.793847656249994], + [28.562304687500017, 45.735791015625], + [28.491601562500023, 45.665771484375], + [28.50947265625001, 45.617822265624994], + [28.513769531250006, 45.572412109374994], + [28.501757812500017, 45.541552734374996], + [28.4990234375, 45.517724609374994], + [28.47138671875001, 45.507177734375], + [28.310351562500017, 45.498583984374996], + [28.26484375000001, 45.48388671875], + [28.2125, 45.450439453125] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Madagascar", + "iso_a2": "MG", + "iso_a3": "MDG", + "iso_n3": "450", + "continent": "Africa" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [49.936425781249994, -16.90292968750002], + [49.82402343750002, -17.08652343750002], + [49.85566406250004, -16.933203124999963], + [49.9859375, -16.712402343750014], + [50.02304687500006, -16.6953125], + [49.936425781249994, -16.90292968750002] + ] + ], + [ + [ + [48.3421875, -13.363867187500034], + [48.34355468750002, -13.400390625000014], + [48.21191406250003, -13.385253906249957], + [48.191210937500074, -13.259960937500011], + [48.255664062500074, -13.256054687500011], + [48.2697265625001, -13.20458984375], + [48.308886718750074, -13.198242187499957], + [48.35107421875003, -13.309570312499986], + [48.3421875, -13.363867187500034] + ] + ], + [ + [ + [49.53828125000004, -12.432128906250014], + [49.5841796875001, -12.53671875], + [49.63779296875006, -12.637109375000037], + [49.80498046875002, -12.879687499999989], + [49.87646484375003, -12.973046875], + [49.9375, -13.072265624999957], + [49.96718750000005, -13.270214843749969], + [50.0734375000001, -13.577929687500031], + [50.17382812500003, -14.040234374999983], + [50.20458984374997, -14.51445312499996], + [50.23535156249997, -14.732031249999963], + [50.31347656249997, -14.936816406250031], + [50.441308593749994, -15.14931640624998], + [50.482714843750074, -15.385644531249994], + [50.404589843750074, -15.629101562500026], + [50.29150390625003, -15.858496093750048], + [50.262304687500006, -15.901562500000026], + [50.20898437499997, -15.960449218750028], + [50.184960937499994, -15.957812500000031], + [50.09443359375004, -15.898632812500054], + [50.02041015625005, -15.801757812500028], + [49.92656250000002, -15.573535156249989], + [49.89257812500003, -15.457714843750011], + [49.85332031250002, -15.439453125000028], + [49.74375, -15.449511718750031], + [49.664355468750074, -15.521582031249977], + [49.64990234374997, -15.566992187499991], + [49.66699218749997, -15.695703125], + [49.697070312500074, -15.811425781250051], + [49.71044921874997, -15.92890625], + [49.712792968749994, -16.076757812500006], + [49.74228515625006, -16.12148437499998], + [49.785937500000074, -16.159082031249994], + [49.83105468750003, -16.255859375], + [49.83906250000004, -16.486523437499997], + [49.811328125000074, -16.60302734375003], + [49.73398437500006, -16.703027343749966], + [49.73857421875002, -16.758398437499963], + [49.76718750000006, -16.815136718749983], + [49.73974609374997, -16.84941406250003], + [49.6369140625001, -16.892871093750003], + [49.59521484375003, -16.931152343749986], + [49.53955078124997, -17.032910156250026], + [49.44931640625006, -17.240625], + [49.43710937500006, -17.3466796875], + [49.49365234375003, -17.669531249999963], + [49.477832031250074, -17.89853515624999], + [49.362890625, -18.336328125], + [49.29687, -18.54404296875005], + [49.20332031250004, -18.79228515624999], + [49.06005859374997, -19.11962890624997], + [48.918066406250006, -19.53046875000001], + [48.797460937500006, -19.953222656249977], + [48.708300781250074, -20.207324218749974], + [48.60703125000006, -20.457519531249957], + [48.468554687500074, -20.9], + [48.35078125000004, -21.349023437500037], + [48.17587890625006, -21.843066406249974], + [47.934472656249994, -22.393945312500023], + [47.9083984375001, -22.465820312500014], + [47.858300781249994, -22.74726562499997], + [47.804101562499994, -22.99150390624999], + [47.73945312500004, -23.23339843749997], + [47.604101562500006, -23.63310546874996], + [47.588671875000074, -23.75634765625003], + [47.55800781250005, -23.874609374999963], + [47.427636718749994, -24.125195312500026], + [47.37255859374997, -24.218457031250026], + [47.33359375000006, -24.31757812499997], + [47.31171875000004, -24.443164062499974], + [47.272851562499994, -24.564355468749966], + [47.17734375, -24.787207031249977], + [47.034960937500074, -24.97900390624997], + [46.93818359375004, -25.048730468749966], + [46.72851562499997, -25.14990234374997], + [46.6222656250001, -25.170410156249986], + [46.38671874999997, -25.17275390625001], + [46.15869140624997, -25.230371093750023], + [45.92089843750003, -25.341308593749986], + [45.692187500000074, -25.46845703125004], + [45.60458984375006, -25.528710937499966], + [45.5080078125001, -25.56318359374997], + [45.2057617187501, -25.57050781250004], + [45.11523437500003, -25.543066406249963], + [44.81289062500005, -25.33417968750004], + [44.69580078125003, -25.299707031250037], + [44.4738281250001, -25.271093749999977], + [44.40673828125003, -25.253320312499994], + [44.34589843750004, -25.226074218749957], + [44.256152343750074, -25.116894531249997], + [44.078125, -25.024609375000026], + [44.0353515625001, -24.995703125], + [44.00830078125003, -24.93203125], + [43.98984375000006, -24.863476562499983], + [43.94375, -24.786718749999977], + [43.90957031250005, -24.64062], + [43.85156249999997, -24.538378906250003], + [43.6875, -24.357910156250014], + [43.670019531250006, -24.30029296875], + [43.656835937500006, -24.108789062499966], + [43.66210937500003, -23.97919921875004], + [43.64609375, -23.74189453125001], + [43.6647460937501, -23.63027343750001], + [43.722265625, -23.529687500000037], + [43.69873046875003, -23.420898437499986], + [43.637597656249994, -23.30654296875005], + [43.614648437499994, -23.188183593749997], + [43.56953125000004, -23.08046875], + [43.397851562499994, -22.886328124999963], + [43.357519531250006, -22.79082031249996], + [43.32958984375003, -22.69189453124997], + [43.2648437500001, -22.38359375], + [43.25712890625002, -22.276367187499957], + [43.26660156249997, -22.04931640624997], + [43.29052734374997, -21.93251953124998], + [43.33222656250004, -21.85117187500002], + [43.34267578125005, -21.790429687499994], + [43.369726562500006, -21.73828125000003], + [43.410546875, -21.69648437500004], + [43.43779296875002, -21.64667968750001], + [43.50185546875005, -21.356445312499957], + [43.58310546875006, -21.29199218749997], + [43.70361328125003, -21.254980468749977], + [43.800195312499994, -21.179199218749986], + [43.8556640625001, -21.07685546875001], + [43.91113281250003, -20.865820312500006], + [44.06308593750006, -20.65625], + [44.11718749999997, -20.54609374999997], + [44.239648437499994, -20.3796875], + [44.34814453124997, -20.145507812499986], + [44.3810546875001, -20.03515624999997], + [44.40468750000005, -19.922070312500026], + [44.43222656250006, -19.67421875], + [44.45292968750002, -19.55087890624999], + [44.44882812500006, -19.42871093749997], + [44.386523437500074, -19.30312], + [44.23876953124997, -19.075195312499986], + [44.23398437500006, -19.03261718750001], + [44.24570312500006, -18.86318359375005], + [44.23310546875004, -18.740625], + [44.17871093749997, -18.618554687500037], + [44.10878906250005, -18.503515624999963], + [44.04003906249997, -18.288476562500023], + [44.00664062500002, -17.933007812499994], + [44.01367187500003, -17.804492187500017], + [43.99355468750005, -17.690332031250023], + [43.94355468750004, -17.58144531250005], + [43.979394531249994, -17.3916015625], + [44.42138671874997, -16.70263671874997], + [44.43574218750004, -16.621484374999966], + [44.41796874999997, -16.411328125000054], + [44.427050781250074, -16.289062500000014], + [44.442480468750006, -16.24375], + [44.476171875, -16.217285156249957], + [44.551855468750006, -16.20449218750001], + [44.90917968749997, -16.174511718750026], + [44.95507812499997, -16.15332031249997], + [45.04423828125002, -16.095117187500023], + [45.16679687500002, -15.982812499999966], + [45.2228515625001, -15.95048828124996], + [45.27128906250002, -15.962304687499966], + [45.30234375, -16.010449218749997], + [45.3421875, -16.03671875000002], + [45.48632812500003, -15.985839843749957], + [45.541796875000074, -15.984277343749994], + [45.598242187500006, -15.992578125], + [45.62470703125004, -15.945800781249972], + [45.640527343749994, -15.883105468749989], + [45.661523437499994, -15.838867187499957], + [45.70019531249997, -15.813769531249989], + [45.8859375000001, -15.80009765624996], + [46.00429687500005, -15.782128906250023], + [46.157519531250074, -15.738281249999972], + [46.19052734375006, -15.746875], + [46.3140625, -15.904589843750017], + [46.35156249999997, -15.918164062500026], + [46.3996093750001, -15.924609375000017], + [46.44160156250004, -15.895898437500023], + [46.34130859374997, -15.813378906249994], + [46.32617187499997, -15.766699218749991], + [46.331445312499994, -15.713671875000031], + [46.38515625, -15.600097656249986], + [46.47509765625003, -15.513476562500003], + [46.674707031249994, -15.381835937500014], + [46.88203125000004, -15.229589843749991], + [46.942285156249994, -15.219042968749974], + [46.993261718750006, -15.2431640625], + [47.03232421875006, -15.422656249999974], + [47.027441406250006, -15.452246093749963], + [47.06054687500003, -15.456347656250003], + [47.09921875, -15.43417968750002], + [47.133398437500006, -15.36171875], + [47.13515625000005, -15.3015625], + [47.10732421875005, -15.243847656249969], + [47.09375, -15.195019531249969], + [47.092578125000074, -15.150097656249969], + [47.19765625, -15.044042968750034], + [47.28046875000004, -14.942675781249989], + [47.31875, -14.821777343749957], + [47.35195312500005, -14.766113281249986], + [47.43906250000006, -14.703320312499983], + [47.46474609375005, -14.713281249999966], + [47.4850585937501, -14.764355468749983], + [47.496386718750074, -14.818359374999972], + [47.47402343750005, -14.871972656249966], + [47.44208984375004, -14.925], + [47.42919921874997, -14.995703125000034], + [47.47832031250002, -15.00937], + [47.524707031250074, -14.992187500000028], + [47.592578125000074, -14.8642578125], + [47.670019531250006, -14.743261718750034], + [47.71601562500004, -14.680371093750011], + [47.77402343750006, -14.63671875], + [47.870410156250074, -14.645507812500014], + [47.964160156250074, -14.672558593750026], + [47.81152343749997, -14.544824218750023], + [47.773339843749994, -14.369921875], + [47.955175781250006, -14.067285156249994], + [47.95693359375005, -14.004296875000037], + [47.983203125000074, -13.984863281249986], + [47.995507812499994, -13.960449218749986], + [47.90136718749997, -13.858203125000031], + [47.88359375000002, -13.807519531250009], + [47.89599609374997, -13.730664062499983], + [47.94101562500006, -13.662402343750017], + [47.98183593750005, -13.614648437499966], + [48.03984375000002, -13.596289062499963], + [48.08593750000003, -13.622558593749986], + [48.187109375, -13.706542968750043], + [48.25527343750005, -13.719335937499977], + [48.337695312500074, -13.638671874999972], + [48.40507812500002, -13.53798828124998], + [48.50644531250006, -13.46875], + [48.62138671875002, -13.425976562499983], + [48.796484375, -13.267480468750023], + [48.91035156250004, -12.93583984374996], + [48.91943359375003, -12.839062499999969], + [48.89423828125004, -12.721679687500028], + [48.853808593750074, -12.61015625], + [48.78632812500004, -12.470898437500011], + [48.8039062500001, -12.440039062500034], + [48.89960937500004, -12.458496093749972], + [48.931738281250006, -12.4390625], + [49.035742187500006, -12.315820312500037], + [49.20703124999997, -12.079589843749957], + [49.26347656250002, -12.080175781249991], + [49.31210937500006, -12.123925781250023], + [49.330175781250006, -12.188671874999983], + [49.36396484375004, -12.236328125000014], + [49.47978515625002, -12.348437500000017], + [49.53828125000004, -12.432128906250014] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "Maldives", + "iso_a2": "MV", + "iso_a3": "MDV", + "iso_n3": "462", + "continent": "Seven seas (open ocean)" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [73.41660156250006, 3.23125], + [73.39531250000007, 3.229394531250051], + [73.38203125000004, 3.24648437499998], + [73.3849609375001, 3.271386718749994], + [73.4015625000001, 3.288769531249983], + [73.42773437500003, 3.289843750000017], + [73.4427734375, 3.274316406249966], + [73.4349609375, 3.250146484375009], + [73.41660156250006, 3.23125] + ] + ], + [ + [ + [73.51220703124997, 4.164550781250057], + [73.4948242187501, 4.155175781250009], + [73.47861328125, 4.158935546874972], + [73.473046875, 4.170703124999974], + [73.48115234375004, 4.188134765624966], + [73.4947265625, 4.210449218749986], + [73.50410156250004, 4.234619140625028], + [73.51777343750004, 4.24765625000002], + [73.52832031249997, 4.243310546875023], + [73.52714843750002, 4.2296875], + [73.5221679687501, 4.21103515625002], + [73.51904296874997, 4.186865234374977], + [73.51220703124997, 4.164550781250057] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Mexico", + "iso_a2": "MX", + "iso_a3": "MEX", + "iso_n3": "484", + "continent": "North America" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-91.68369140624998, 18.677343750000034], + [-91.79614257812497, 18.654199218750023], + [-91.81611328124995, 18.675878906250006], + [-91.58911132812497, 18.77802734375004], + [-91.55029296874997, 18.77368164062503], + [-91.53671874999998, 18.760009765625], + [-91.65424804687493, 18.711474609375074], + [-91.68369140624998, 18.677343750000034] + ] + ], + [ + [ + [-110.91445312499995, 18.741455078125057], + [-110.9748046875, 18.720361328125023], + [-111.06367187499998, 18.781640624999966], + [-111.03994140624994, 18.83012695312499], + [-110.98940429687495, 18.863134765625063], + [-110.94208984374998, 18.801708984374983], + [-110.91445312499995, 18.741455078125057] + ] + ], + [ + [ + [-86.93964843750001, 20.303320312500006], + [-86.99140624999998, 20.272167968749955], + [-87.01943359375, 20.38232421875003], + [-86.97797851562498, 20.489794921875074], + [-86.92783203125, 20.55151367187503], + [-86.82856445312493, 20.55878906250001], + [-86.76328124999995, 20.579052734374955], + [-86.75502929687497, 20.5517578125], + [-86.80878906249998, 20.468457031249983], + [-86.93964843750001, 20.303320312500006] + ] + ], + [ + [ + [-86.71401367187497, 21.23930664062499], + [-86.69628906249997, 21.191015625], + [-86.71362304687497, 21.19677734375003], + [-86.73637695312499, 21.233300781250023], + [-86.75288085937495, 21.278808593750057], + [-86.73906249999999, 21.27998046875001], + [-86.726904296875, 21.264306640625023], + [-86.71401367187497, 21.23930664062499] + ] + ], + [ + [ + [-106.50224609374999, 21.61083984375003], + [-106.53134765624998, 21.52851562500004], + [-106.60703124999993, 21.561474609374983], + [-106.63417968749997, 21.613134765625034], + [-106.63935546874995, 21.697851562499977], + [-106.59736328125001, 21.712158203125057], + [-106.53642578125003, 21.676367187500034], + [-106.52382812499995, 21.65234375000003], + [-106.50224609374999, 21.61083984375003] + ] + ], + [ + [ + [-109.80507812499998, 24.151074218749983], + [-109.82675781249996, 24.147558593749977], + [-109.8779296875, 24.200634765624955], + [-109.90048828124998, 24.330908203125034], + [-109.89033203124994, 24.344824218750034], + [-109.79379882812499, 24.18339843749999], + [-109.79560546875001, 24.163574218750057], + [-109.80507812499998, 24.151074218749983] + ] + ], + [ + [ + [-111.69887695312498, 24.393603515625017], + [-111.71230468749997, 24.346386718749983], + [-112.01328125, 24.533398437499983], + [-111.94086914062498, 24.551123046875034], + [-111.85683593750001, 24.537988281250023], + [-111.69887695312498, 24.393603515625017] + ] + ], + [ + [ + [-110.56738281249994, 25.003466796875017], + [-110.5388671875, 24.89155273437504], + [-110.59018554687498, 24.908056640625006], + [-110.657421875, 24.968847656250063], + [-110.70341796874995, 25.046630859375], + [-110.69926757812499, 25.081445312499994], + [-110.69023437500002, 25.087841796874955], + [-110.59521484375001, 25.042138671874966], + [-110.56738281249994, 25.003466796875017] + ] + ], + [ + [ + [-112.05727539062498, 24.545703125000017], + [-112.07734374999998, 24.53457031250005], + [-112.162890625, 24.650292968749994], + [-112.17548828125, 24.729589843749977], + [-112.21049804687503, 24.763134765624983], + [-112.29677734375002, 24.789648437500063], + [-112.22231445312495, 24.95112304687501], + [-112.15942382812501, 25.28564453125003], + [-112.13168945312496, 25.22436523437497], + [-112.19838867187495, 24.88544921875004], + [-112.19501953124998, 24.841064453125057], + [-112.16376953125001, 24.799658203125063], + [-112.13022460937502, 24.729589843749977], + [-112.12626953125, 24.654003906249955], + [-112.06748046875002, 24.583642578124994], + [-112.05727539062498, 24.545703125000017] + ] + ], + [ + [ + [-111.10029296874998, 26.020605468750006], + [-111.08774414062499, 25.984521484375023], + [-111.09443359375003, 25.97407226562504], + [-111.13525390625, 25.999169921874994], + [-111.20449218749998, 25.849707031250006], + [-111.224658203125, 25.83588867187504], + [-111.18291015625002, 26.040625], + [-111.1392578125, 26.06982421875], + [-111.09086914062502, 26.07568359375003], + [-111.10029296874998, 26.020605468750006] + ] + ], + [ + [ + [-115.17060546875001, 28.06938476562496], + [-115.18427734374995, 28.037255859374994], + [-115.35292968750002, 28.103955078124983], + [-115.26040039062501, 28.220556640625034], + [-115.27397460937502, 28.342773437500057], + [-115.23354492187495, 28.36835937500004], + [-115.19697265624995, 28.32788085937503], + [-115.14853515624995, 28.17211914062503], + [-115.17060546875001, 28.06938476562496] + ] + ], + [ + [ + [-118.24277343749999, 28.94194335937499], + [-118.28549804687499, 28.90375976562504], + [-118.40009765624998, 29.11230468749997], + [-118.40136718749997, 29.16274414062505], + [-118.36782226562498, 29.187597656250034], + [-118.31230468749995, 29.182861328125057], + [-118.31206054687499, 29.13051757812505], + [-118.26552734375001, 29.08642578125003], + [-118.24736328124995, 29.043359374999966], + [-118.24277343749999, 28.94194335937499] + ] + ], + [ + [ + [-112.20307617187503, 29.00532226562504], + [-112.27841796875, 28.769335937500017], + [-112.35527343750003, 28.773144531249983], + [-112.51406249999997, 28.847607421874955], + [-112.53100585937496, 28.89399414062501], + [-112.46982421875, 29.167724609375], + [-112.42353515625, 29.203662109375017], + [-112.28505859374994, 29.240429687499955], + [-112.26342773437497, 29.20678710937503], + [-112.24873046875, 29.1259765625], + [-112.20307617187503, 29.00532226562504] + ] + ], + [ + [ + [-113.15561523437502, 29.05224609375], + [-113.16279296874997, 29.034765624999977], + [-113.26474609374995, 29.09672851562499], + [-113.49633789062497, 29.30761718749997], + [-113.580615234375, 29.413232421874994], + [-113.59438476562497, 29.462695312500045], + [-113.58720703125002, 29.57304687499996], + [-113.50795898437494, 29.559912109375034], + [-113.41591796875002, 29.485937499999977], + [-113.37583007812493, 29.41748046874997], + [-113.37382812499997, 29.33891601562496], + [-113.20214843749999, 29.301855468750034], + [-113.17792968749994, 29.131933593749977], + [-113.15561523437502, 29.05224609375] + ] + ], + [ + [ + [-114.69414062500002, 31.705615234375017], + [-114.72724609375001, 31.70136718750004], + [-114.78920898437502, 31.747412109375006], + [-114.78457031249997, 31.78979492187503], + [-114.77109374999998, 31.794091796875023], + [-114.70908203124995, 31.75688476562499], + [-114.687939453125, 31.724218749999977], + [-114.69414062500002, 31.705615234375017] + ] + ], + [ + [ + [-112.93896484375001, 31.91625976562503], + [-112.46474609374995, 31.768261718749983], + [-111.99047851562497, 31.620214843750034], + [-111.51621093749998, 31.472265625], + [-111.0419921875, 31.32421875000003], + [-110.68852539062502, 31.324853515624994], + [-110.33510742187497, 31.325537109375034], + [-109.98164062499998, 31.32617187499997], + [-109.62822265625002, 31.326806640625023], + [-109.27475585937495, 31.32744140624999], + [-108.92133789062498, 31.328125], + [-108.56787109375, 31.328808593749983], + [-108.21445312499993, 31.329443359375034], + [-108.21381835937498, 31.44189453125003], + [-108.21318359374995, 31.55439453125004], + [-108.2125, 31.666845703125034], + [-108.21181640625002, 31.779345703125017], + [-107.99204101562502, 31.778173828125063], + [-107.772216796875, 31.77705078125001], + [-107.55234374999996, 31.77587890625003], + [-107.33251953124994, 31.774755859374977], + [-107.11269531250001, 31.77363281250001], + [-106.89287109374999, 31.772460937500057], + [-106.67304687499997, 31.771337890625006], + [-106.45322265624995, 31.770166015625023], + [-106.44541015624996, 31.768408203125006], + [-106.43603515625, 31.764453125000017], + [-106.34697265624997, 31.679003906250017], + [-106.25571289062495, 31.544677734375], + [-106.14804687499995, 31.450927734375], + [-106.02407226562501, 31.39775390624999], + [-105.81269531250003, 31.241015625000045], + [-105.51401367187502, 30.98076171874996], + [-105.27583007812498, 30.807275390624966], + [-105.09814453125003, 30.720556640625063], + [-104.97880859374996, 30.645947265624955], + [-104.91787109374998, 30.583349609375006], + [-104.83588867187497, 30.447656249999966], + [-104.68134765625003, 30.134375], + [-104.68134765625003, 29.990527343750017], + [-104.62221679687497, 29.85429687499996], + [-104.50400390624995, 29.677685546874955], + [-104.40063476562503, 29.57373046875], + [-104.31220703124995, 29.54243164062504], + [-104.21552734374998, 29.479882812499994], + [-104.110595703125, 29.386132812499994], + [-103.98974609374999, 29.323144531250023], + [-103.85292968750001, 29.29106445312499], + [-103.66396484374997, 29.206884765625063], + [-103.42294921874998, 29.070703125000023], + [-103.25771484374998, 29.001123046874966], + [-103.16831054687498, 28.998193359374994], + [-103.08999023437501, 29.041894531250023], + [-103.02285156250001, 29.13222656250005], + [-102.95683593749996, 29.190380859374983], + [-102.8919921875, 29.216406250000034], + [-102.86567382812495, 29.258007812499983], + [-102.87783203124995, 29.31533203125005], + [-102.83398437499999, 29.443945312500034], + [-102.73417968749999, 29.643945312500023], + [-102.61494140624994, 29.75234375], + [-102.47626953125003, 29.769091796875017], + [-102.38564453124995, 29.80664062500003], + [-102.34306640624997, 29.86499023437503], + [-102.26894531249998, 29.871191406250034], + [-102.1630859375, 29.825244140625017], + [-101.99091796875, 29.795703125000017], + [-101.75234375, 29.782470703125], + [-101.61162109375, 29.786962890625034], + [-101.56870117187496, 29.809228515625023], + [-101.54638671874994, 29.808056640624955], + [-101.54462890624994, 29.783544921875034], + [-101.50927734375003, 29.773144531249955], + [-101.44038085937503, 29.77685546875], + [-101.38037109374996, 29.74257812500005], + [-101.30351562499993, 29.63408203124996], + [-101.03896484374995, 29.46040039062501], + [-101.03862304687497, 29.460302734375006], + [-101.01630859374995, 29.400683593750017], + [-100.92412109375, 29.314697265625], + [-100.75458984375001, 29.182519531249994], + [-100.65864257812501, 29.06855468750004], + [-100.636328125, 28.972802734374966], + [-100.54970703125002, 28.821337890625017], + [-100.39892578124994, 28.61420898437501], + [-100.33173828125003, 28.502539062500006], + [-100.34814453124999, 28.486425781250006], + [-100.33627929687498, 28.428125], + [-100.29604492187495, 28.32768554687499], + [-100.22128906249999, 28.242626953124983], + [-100.11196289062501, 28.172949218750006], + [-100.00141601562497, 28.0478515625], + [-99.88964843750001, 27.867285156250006], + [-99.75424804687496, 27.729931640624983], + [-99.5953125, 27.635888671875023], + [-99.50532226562497, 27.54833984375003], + [-99.48427734374995, 27.467382812500063], + [-99.48583984375, 27.398046875000063], + [-99.51005859374996, 27.34033203125003], + [-99.4998046875, 27.285498046875034], + [-99.45512695312496, 27.23369140624996], + [-99.44023437499995, 27.170117187499983], + [-99.45771484374995, 27.081689453124994], + [-99.45654296874999, 27.05668945312496], + [-99.45649414062497, 27.056640625000057], + [-99.4435546875, 27.03666992187499], + [-99.30244140625003, 26.88471679687501], + [-99.229931640625, 26.761914062499955], + [-99.17236328125, 26.56591796875], + [-99.17207031250003, 26.564160156249983], + [-99.10776367187498, 26.446923828124994], + [-99.01528320312497, 26.39897460937499], + [-98.87319335937498, 26.38125], + [-98.765234375, 26.340429687499977], + [-98.69140624999997, 26.276464843750006], + [-98.59829101562502, 26.237841796875045], + [-98.48588867187493, 26.224560546874983], + [-98.378125, 26.18237304687503], + [-98.27504882812497, 26.111181640624977], + [-98.08281249999999, 26.06445312499997], + [-97.80141601562494, 26.042041015625017], + [-97.587255859375, 25.984179687500045], + [-97.440283203125, 25.89082031250004], + [-97.37563476562497, 25.871826171875], + [-97.35815429687497, 25.870507812499994], + [-97.34975585937494, 25.884765625000057], + [-97.33867187499999, 25.911181640625017], + [-97.28178710937496, 25.941601562499983], + [-97.14624023437494, 25.961474609375045], + [-97.16445312500002, 25.754931640625074], + [-97.22490234374999, 25.58544921875], + [-97.42407226562497, 25.233105468749983], + [-97.50708007812503, 25.01455078125005], + [-97.66767578124995, 24.389990234374977], + [-97.71704101562497, 23.980615234374994], + [-97.72861328125003, 23.787939453125006], + [-97.74267578124997, 23.760644531250023], + [-97.72739257812495, 23.732226562500017], + [-97.76586914062497, 23.30615234374997], + [-97.74521484375003, 22.94238281250003], + [-97.75834960937496, 22.886035156250017], + [-97.81669921874993, 22.776318359374955], + [-97.85781249999997, 22.62451171875003], + [-97.84160156249996, 22.557080078124955], + [-97.84248046874995, 22.510302734375017], + [-97.78237304687497, 22.27929687500003], + [-97.76328124999998, 22.105859374999966], + [-97.58476562499993, 21.808544921874983], + [-97.48452148437494, 21.70483398437497], + [-97.36015625000002, 21.614941406249955], + [-97.31450195312496, 21.56420898437503], + [-97.33686523437498, 21.43789062500005], + [-97.387548828125, 21.373925781249966], + [-97.40917968749997, 21.272558593750034], + [-97.43413085937499, 21.356494140625074], + [-97.42441406249995, 21.46533203125003], + [-97.38481445312499, 21.523828124999966], + [-97.38344726562497, 21.56669921874999], + [-97.45659179687493, 21.612402343749977], + [-97.59038085937493, 21.76201171874999], + [-97.75380859375002, 22.02666015624999], + [-97.63754882812495, 21.603662109374966], + [-97.59760742187498, 21.53588867187503], + [-97.56655273437497, 21.507714843749966], + [-97.51455078124994, 21.47797851562504], + [-97.50107421875003, 21.43203125], + [-97.50058593750003, 21.398046875], + [-97.35712890624993, 21.104003906250057], + [-97.19497070312502, 20.800097656250045], + [-97.18632812499996, 20.717041015625], + [-97.12143554687498, 20.614990234375], + [-96.70869140624998, 20.188281250000017], + [-96.45605468749994, 19.869775390624966], + [-96.36835937499993, 19.567236328125063], + [-96.31533203124997, 19.47285156250001], + [-96.28955078124994, 19.34375], + [-96.12397460937498, 19.199072265625006], + [-96.07338867187497, 19.105664062499983], + [-95.98466796875002, 19.05375976562499], + [-95.91303710937498, 18.897167968749983], + [-95.77812, 18.805517578125034], + [-95.81035156249993, 18.803857421874966], + [-95.92822265624997, 18.85009765624997], + [-95.92036132812495, 18.81958007812497], + [-95.82109374999999, 18.75463867187497], + [-95.62680664062503, 18.690576171874994], + [-95.57832031250001, 18.69042968750003], + [-95.654931640625, 18.723681640625074], + [-95.71982421874998, 18.768359375000017], + [-95.69711914062495, 18.77490234375003], + [-95.56142578124994, 18.719140625000023], + [-95.18183593749995, 18.700732421875017], + [-95.01469726562493, 18.570605468750045], + [-94.79814453124996, 18.51459960937501], + [-94.68164062500003, 18.348486328125006], + [-94.54619140624996, 18.17485351562499], + [-94.45976562499993, 18.166650390624994], + [-94.39228515624995, 18.165966796874955], + [-94.18901367187493, 18.195263671874983], + [-93.87314453124998, 18.304443359375], + [-93.76440429687494, 18.35791015624997], + [-93.55234375, 18.430468750000017], + [-93.2279296875, 18.443798828124983], + [-93.12734375000002, 18.4234375], + [-92.88476562499997, 18.468652343749966], + [-92.76909179687493, 18.52412109375001], + [-92.72895507812493, 18.574511718750045], + [-92.710107421875, 18.611669921874977], + [-92.48530273437495, 18.66479492187497], + [-92.44101562499998, 18.67529296874997], + [-92.21318359374993, 18.684863281250074], + [-92.10322265625001, 18.704394531250045], + [-91.97377929687502, 18.715869140625074], + [-91.88037109375, 18.637792968749977], + [-91.88046875, 18.599658203125017], + [-91.94267578124999, 18.56342773437501], + [-91.91357421875, 18.52851562500001], + [-91.80297851562503, 18.470605468750023], + [-91.59970703125, 18.44716796875005], + [-91.53398437499993, 18.45654296875], + [-91.44047851562499, 18.541845703125063], + [-91.27524414062498, 18.62446289062501], + [-91.27875976562498, 18.720654296874983], + [-91.30830078124998, 18.773291015625034], + [-91.35629882812498, 18.77656250000001], + [-91.3677734375, 18.806103515624983], + [-91.334228515625, 18.876806640625006], + [-91.34306640624996, 18.900585937499955], + [-91.44555664062494, 18.832812500000017], + [-91.46918945312498, 18.833007812500057], + [-91.45786132812498, 18.864648437499994], + [-91.43666992187502, 18.889794921874966], + [-91.13593749999993, 19.0375], + [-91.05893554687498, 19.098193359375074], + [-90.95502929687495, 19.151660156250045], + [-90.73925781249994, 19.352246093749955], + [-90.69316406249996, 19.729882812499966], + [-90.65009765624998, 19.795947265625017], + [-90.507080078125, 19.911865234375], + [-90.49169921874997, 19.94677734375003], + [-90.48242187500003, 20.025732421875034], + [-90.48637695312493, 20.224023437500023], + [-90.47832031249999, 20.379980468749977], + [-90.48413085937503, 20.55634765625004], + [-90.45844726562493, 20.713720703125034], + [-90.43515624999998, 20.757519531249983], + [-90.35312, 21.009423828124966], + [-90.18291015624993, 21.120898437500045], + [-89.88764648437501, 21.252636718749955], + [-89.81977539062495, 21.274609374999983], + [-88.87871093749999, 21.41411132812499], + [-88.7466796875, 21.448144531249994], + [-88.58491210937498, 21.538671875000063], + [-88.46669921874997, 21.569384765625017], + [-88.25102539062499, 21.56689453125003], + [-88.18476562500001, 21.578955078125006], + [-88.171728515625, 21.591455078124966], + [-88.17138671875003, 21.60351562500003], + [-88.13164062500002, 21.615869140624966], + [-88.0068359375, 21.604052734375045], + [-87.77373046875002, 21.549511718749955], + [-87.68881835937495, 21.53583984375001], + [-87.48046874999997, 21.472460937500074], + [-87.25087890625, 21.44697265625004], + [-87.21791992187494, 21.458007812500057], + [-87.18759765624998, 21.477294921875], + [-87.16430664062503, 21.514208984375045], + [-87.18828124999993, 21.546435546875045], + [-87.21059570312497, 21.54394531249997], + [-87.24946289062498, 21.526611328125], + [-87.29575195312498, 21.524951171875017], + [-87.38666992187495, 21.55146484375001], + [-87.36850585937498, 21.57373046875], + [-87.275732421875, 21.571630859375034], + [-87.216455078125, 21.582421875], + [-87.12846679687502, 21.621484374999966], + [-87.034765625, 21.592236328124955], + [-86.91171875, 21.462841796874983], + [-86.824072265625, 21.421679687500017], + [-86.81708984374998, 21.234228515625034], + [-86.80385742187497, 21.200048828125006], + [-86.77177734374999, 21.150537109375023], + [-86.81552734375003, 21.005224609375006], + [-86.86469726562501, 20.885058593750045], + [-86.92622070312493, 20.786474609375034], + [-87.0595703125, 20.63125], + [-87.22124023437499, 20.507275390624983], + [-87.42138671875, 20.23139648437501], + [-87.4671875, 20.102148437500063], + [-87.4658203125, 19.99853515625], + [-87.43193359375002, 19.898486328125045], + [-87.44174804687498, 19.861523437499983], + [-87.4662109375, 19.82416992187501], + [-87.50688476562502, 19.827490234375063], + [-87.585791015625, 19.779492187499955], + [-87.68769531249998, 19.637109375], + [-87.69008789062494, 19.59370117187504], + [-87.6453125, 19.55390625000001], + [-87.58730468749997, 19.572998046875], + [-87.51166992187501, 19.57470703124997], + [-87.46938476562502, 19.586474609375074], + [-87.42475585937498, 19.583349609375063], + [-87.43471679687497, 19.50170898437503], + [-87.48266601562497, 19.44375], + [-87.51289062499998, 19.425585937500074], + [-87.5669921875, 19.41572265625001], + [-87.62753906249998, 19.382714843750023], + [-87.65869140625003, 19.352343750000074], + [-87.65576171874997, 19.25786132812499], + [-87.62207031250003, 19.25048828125], + [-87.55078124999997, 19.320947265624966], + [-87.50947265625001, 19.317480468749977], + [-87.50107421874998, 19.287792968749983], + [-87.59355468749999, 19.04638671875], + [-87.65302734374995, 18.79853515625004], + [-87.733544921875, 18.65502929687503], + [-87.76181640624998, 18.446142578125006], + [-87.8041015625, 18.357080078124994], + [-87.85322265624995, 18.268994140624983], + [-87.88198242187497, 18.27387695312501], + [-87.95966796874998, 18.44086914062501], + [-88.03906249999997, 18.48388671874997], + [-88.05644531249996, 18.524462890625074], + [-88.01113281249997, 18.72685546874999], + [-88.03173828125, 18.838916015625017], + [-88.07377929687496, 18.83447265625], + [-88.12675781249999, 18.773046875], + [-88.19677734374997, 18.719677734374955], + [-88.19531250000003, 18.642626953125074], + [-88.27573242187498, 18.514550781249994], + [-88.29565429687494, 18.47241210937503], + [-88.37241210937495, 18.482324218750023], + [-88.46127929687503, 18.47675781250004], + [-88.52299804687499, 18.445898437500063], + [-88.58618164062497, 18.29052734375003], + [-88.74360351562498, 18.071630859375006], + [-88.80634765624998, 17.965527343749983], + [-88.85737304687498, 17.928808593750034], + [-88.89780273437495, 17.91455078124997], + [-88.94262695312494, 17.93964843750004], + [-89.05043945312497, 17.99970703125001], + [-89.13354492187503, 17.970800781249977], + [-89.16235351562494, 17.901953124999977], + [-89.16147460937503, 17.81484375], + [-89.37153320312493, 17.814990234375045], + [-89.72880859374996, 17.815332031250023], + [-90.18359375, 17.815722656250017], + [-90.62202148437495, 17.81611328125001], + [-90.98916015624997, 17.81640624999997], + [-90.99042968749995, 17.620751953124994], + [-90.99160156250002, 17.44746093750004], + [-90.99296874999993, 17.25244140625], + [-91.19550781249998, 17.254101562499983], + [-91.40961914062501, 17.255859375], + [-91.39233398437494, 17.236425781250034], + [-91.31918945312498, 17.199804687500034], + [-91.22416992187496, 17.112255859374955], + [-91.11186523437502, 16.976171875000034], + [-90.975830078125, 16.867822265624994], + [-90.81601562499995, 16.78710937499997], + [-90.710693359375, 16.708105468750034], + [-90.65996093749996, 16.630908203125045], + [-90.63437, 16.565136718749955], + [-90.63408203125002, 16.51074218749997], + [-90.57578124999995, 16.467822265625017], + [-90.47109374999994, 16.439550781250034], + [-90.41699218750003, 16.391015625000023], + [-90.41699218750003, 16.351318359375], + [-90.45014648437493, 16.261376953124994], + [-90.45986328124997, 16.16235351562497], + [-90.44716796874994, 16.07270507812501], + [-90.52197265625, 16.07119140625005], + [-90.70322265624998, 16.07104492187503], + [-90.97958984374998, 16.07080078124997], + [-91.23378906249997, 16.070654296875034], + [-91.433984375, 16.070458984374994], + [-91.736572265625, 16.070166015625006], + [-91.81943359375, 15.932373046875], + [-91.95722656250001, 15.703222656250034], + [-92.08212890624998, 15.495556640625011], + [-92.18715820312497, 15.320898437499963], + [-92.20424804687497, 15.275], + [-92.204345703125, 15.23769531249998], + [-92.07480468749998, 15.074218749999972], + [-92.09873046874998, 15.026757812499994], + [-92.14423828125001, 15.001953125], + [-92.158544921875, 14.963574218749997], + [-92.15566406249994, 14.901318359375011], + [-92.18637695312498, 14.818359374999986], + [-92.17646484375001, 14.761328125], + [-92.159912109375, 14.691015624999977], + [-92.18706054687493, 14.630078125], + [-92.20903320312499, 14.57099609375004], + [-92.23515625, 14.545410156249986], + [-92.26455078125, 14.567773437500009], + [-92.53095703125001, 14.839648437499974], + [-92.80893554687498, 15.138574218750037], + [-92.91840820312498, 15.236132812500017], + [-93.0244140625, 15.310253906250011], + [-93.16689453125, 15.448046875000017], + [-93.54116210937494, 15.750390624999966], + [-93.73437, 15.888476562500045], + [-93.91606445312493, 16.053564453125006], + [-94.07895507812498, 16.14526367187503], + [-94.239892578125, 16.20507812499997], + [-94.31127929687497, 16.239355468750034], + [-94.374169921875, 16.284765625000034], + [-94.409033203125, 16.28735351562503], + [-94.426416015625, 16.22626953125001], + [-94.37016601562499, 16.195410156250034], + [-94.30283203125003, 16.169335937499966], + [-94.24951171875, 16.167529296875045], + [-94.19340820312496, 16.145605468750034], + [-94.02832031249997, 16.062060546875045], + [-94.00126953124996, 16.018945312499966], + [-94.47075195312496, 16.186572265625017], + [-94.66152343750002, 16.20190429687503], + [-94.68227539062497, 16.228222656249983], + [-94.58710937499995, 16.315820312499966], + [-94.61684570312497, 16.34755859375005], + [-94.65078124999997, 16.35180664062503], + [-94.75283203124997, 16.29121093750001], + [-94.79082031249999, 16.28715820312499], + [-94.7974609375, 16.32705078125005], + [-94.79291992187495, 16.364599609375063], + [-94.85869140624996, 16.41972656249999], + [-94.90043945312502, 16.41748046875], + [-94.934716796875, 16.379101562499983], + [-95.02353515624995, 16.30625], + [-95.02084960937503, 16.277636718750017], + [-94.84604492187503, 16.24658203125], + [-94.78579101562502, 16.229101562499977], + [-94.79941406249995, 16.20966796875001], + [-94.94931640625003, 16.21000976562499], + [-95.13437, 16.17695312500001], + [-95.46440429687499, 15.974707031250034], + [-95.77177734374999, 15.887792968749977], + [-96.21357421874993, 15.693066406250011], + [-96.40864257812495, 15.683105468750028], + [-96.51083984375, 15.651904296875074], + [-96.80795898437495, 15.726416015624977], + [-97.18466796874998, 15.909277343750006], + [-97.75478515624994, 15.966845703125017], + [-98.13896484374996, 16.20629882812503], + [-98.52031249999993, 16.30483398437505], + [-98.76220703125, 16.534765624999977], + [-98.90795898437496, 16.544580078125023], + [-99.00166015624994, 16.581445312499994], + [-99.348046875, 16.66474609375001], + [-99.69067382812499, 16.719628906249994], + [-100.02451171874996, 16.920507812500063], + [-100.24301757812498, 16.984179687500074], + [-100.431884765625, 17.0640625], + [-100.847802734375, 17.20048828124999], + [-101.00195312499996, 17.27612304687503], + [-101.14785156250002, 17.393115234375074], + [-101.38549804687503, 17.514208984375045], + [-101.48706054687503, 17.615332031250034], + [-101.60029296875, 17.651562499999955], + [-101.76240234374998, 17.84199218750004], + [-101.84707031250001, 17.92226562500005], + [-101.91870117187494, 17.959765625000045], + [-101.99550781249997, 17.972705078125017], + [-102.21660156249997, 17.957421875000023], + [-102.54697265624995, 18.041406249999966], + [-102.69956054687495, 18.062841796875006], + [-103.01850585937501, 18.186865234375034], + [-103.44160156249995, 18.32539062500001], + [-103.58027343749997, 18.48437], + [-103.69892578124998, 18.632958984374966], + [-103.91245117187496, 18.828466796875006], + [-104.04565429687501, 18.91181640625001], + [-104.27700195312498, 19.01098632812497], + [-104.40517578124998, 19.091210937499966], + [-104.60297851562495, 19.152880859375017], + [-104.9384765625, 19.309375], + [-105.04521484374999, 19.443261718750023], + [-105.10766601562501, 19.56220703125001], + [-105.286376953125, 19.70649414062501], + [-105.482080078125, 19.97607421875003], + [-105.53242187499994, 20.07539062500001], + [-105.57041015624996, 20.22783203124999], + [-105.61591796875, 20.316308593749994], + [-105.66943359374997, 20.385595703124977], + [-105.642138671875, 20.43598632812504], + [-105.54257812499998, 20.49794921875005], + [-105.37705078125, 20.511865234375023], + [-105.26015625, 20.579052734374955], + [-105.24467773437503, 20.634179687499994], + [-105.25229492187499, 20.668505859375074], + [-105.32705078124994, 20.752978515625045], + [-105.42011718749998, 20.775390625], + [-105.49238281249995, 20.77661132812497], + [-105.51083984374999, 20.808740234375023], + [-105.45634765624999, 20.843798828125074], + [-105.39399414062498, 20.926123046875063], + [-105.30195312499998, 21.02656250000001], + [-105.23706054687499, 21.119189453125045], + [-105.225, 21.249707031249983], + [-105.23325195312502, 21.380419921875045], + [-105.20869140624998, 21.490820312499977], + [-105.43144531249997, 21.618261718750006], + [-105.45742187499994, 21.672460937500034], + [-105.52744140624999, 21.818457031250034], + [-105.64912109375001, 21.988085937500045], + [-105.64550781249999, 22.32690429687497], + [-105.79179687500003, 22.627490234375017], + [-105.943359375, 22.777001953124994], + [-106.02172851562497, 22.829052734374955], + [-106.2345703125, 23.060937500000023], + [-106.40224609374997, 23.195605468750017], + [-106.56650390624993, 23.449462890625057], + [-106.72875976562496, 23.610693359375034], + [-106.93549804687497, 23.88125], + [-107.08486328124994, 24.01611328125003], + [-107.76494140625002, 24.47192382812497], + [-107.72661132812503, 24.47192382812497], + [-107.52724609375001, 24.36005859375001], + [-107.493701171875, 24.369384765625057], + [-107.48891601562501, 24.423974609374994], + [-107.51191406249998, 24.489160156250023], + [-107.54887695312497, 24.504785156250023], + [-107.60200195312495, 24.490136718749966], + [-107.67368164062499, 24.503564453125023], + [-107.70952148437502, 24.525048828124966], + [-107.81669921875, 24.539013671874983], + [-107.95117187499994, 24.614892578124966], + [-108.00878906249996, 24.69355468750001], + [-108.015087890625, 24.78339843750001], + [-108.20766601562498, 24.97480468750004], + [-108.28076171874994, 25.08154296875], + [-108.24331054687495, 25.07368164062501], + [-108.192041015625, 25.03066406250005], + [-108.14008789062498, 25.018408203125034], + [-108.079638671875, 25.018066406250057], + [-108.03569335937503, 25.03535156250001], + [-108.05146484374995, 25.067041015624994], + [-108.09282226562503, 25.093505859375057], + [-108.37368164062497, 25.1943359375], + [-108.466259765625, 25.26513671875003], + [-108.69638671874998, 25.382910156250034], + [-108.7509765625, 25.424218750000023], + [-108.78725585937502, 25.53803710937501], + [-108.84360351562495, 25.543310546875034], + [-108.8931640625, 25.511572265625034], + [-109.02880859375003, 25.48046875000003], + [-109.06347656249999, 25.516699218750034], + [-109.06845703125002, 25.551562500000017], + [-108.97275390624998, 25.588476562500006], + [-108.88486328125, 25.69604492187497], + [-108.886572265625, 25.733447265625045], + [-108.93515624999995, 25.690283203125034], + [-109.00834960937503, 25.641992187499966], + [-109.08408203125, 25.61503906249999], + [-109.19648437499998, 25.59252929687503], + [-109.25395507812497, 25.60878906250005], + [-109.30429687500002, 25.633154296875034], + [-109.38496093750001, 25.727148437500006], + [-109.42563476562495, 26.032568359375063], + [-109.35415039062495, 26.138476562500045], + [-109.270654296875, 26.243115234374955], + [-109.19970703125003, 26.30522460937499], + [-109.15878906249995, 26.258349609375045], + [-109.11669921874999, 26.25273437499996], + [-109.14633789062499, 26.305712890625017], + [-109.21601562499997, 26.35527343749999], + [-109.240625, 26.404687500000023], + [-109.24326171875002, 26.449951171875], + [-109.27626953125, 26.533886718749955], + [-109.48286132812498, 26.710351562500023], + [-109.67607421874999, 26.696826171875017], + [-109.75478515624995, 26.702929687500017], + [-109.82836914062503, 26.770117187500034], + [-109.89091796874997, 26.883398437500006], + [-109.92172851562495, 26.97817382812505], + [-109.92563476562495, 27.028662109375034], + [-109.94399414062495, 27.079345703125057], + [-110.27714843749997, 27.162207031250063], + [-110.37729492187495, 27.233300781249966], + [-110.47778320312499, 27.322656249999966], + [-110.51938476562493, 27.395605468750006], + [-110.56064453124999, 27.45014648437501], + [-110.59267578124995, 27.544335937500023], + [-110.61547851562497, 27.653906250000034], + [-110.57827148437494, 27.79565429687497], + [-110.52988281249995, 27.864208984374983], + [-110.759033203125, 27.915185546874994], + [-110.84863281249996, 27.917578125000034], + [-110.92080078125001, 27.888867187499955], + [-110.98608398437499, 27.925976562499955], + [-111.12138671875002, 27.966992187499983], + [-111.28242187499995, 28.11523437499997], + [-111.47167968749997, 28.38398437500001], + [-111.68007812499997, 28.470556640624977], + [-111.74721679687497, 28.56396484375], + [-111.832421875, 28.64814453125001], + [-111.90703125000002, 28.752490234375045], + [-111.91860351562498, 28.79790039062496], + [-111.94082031249998, 28.823193359374955], + [-112.04487304687494, 28.895898437500023], + [-112.16176757812495, 29.018896484375034], + [-112.192041015625, 29.11796874999999], + [-112.223486328125, 29.26948242187501], + [-112.30141601562498, 29.322900390624994], + [-112.37822265625, 29.34770507812496], + [-112.39321289062495, 29.41972656249999], + [-112.388671875, 29.46010742187505], + [-112.41455078125003, 29.53642578124996], + [-112.57290039062497, 29.71953125], + [-112.653125, 29.870068359374983], + [-112.69716796874997, 29.916845703125006], + [-112.73837890625, 29.985449218750034], + [-112.759228515625, 30.12568359375001], + [-112.82480468749995, 30.300146484375034], + [-112.95175781249996, 30.51000976562497], + [-113.05766601562496, 30.651025390625023], + [-113.11044921874996, 30.793310546875063], + [-113.08701171874998, 30.938085937500063], + [-113.10498046875, 31.027197265625006], + [-113.11860351562503, 31.048095703125], + [-113.10795898437499, 31.077294921874994], + [-113.07280273437502, 31.060888671875034], + [-113.04291992187497, 31.087011718750034], + [-113.04672851562495, 31.17924804687499], + [-113.08364257812501, 31.207177734374994], + [-113.18618164062502, 31.23603515625001], + [-113.23144531250001, 31.255957031249977], + [-113.480810546875, 31.293603515625023], + [-113.62348632812494, 31.34589843750001], + [-113.63300781250001, 31.467626953125034], + [-113.69995117187497, 31.523339843749994], + [-113.75942382812501, 31.557763671874994], + [-113.94775390625001, 31.62934570312501], + [-113.97749023437494, 31.59272460937501], + [-114.00268554687501, 31.52514648437503], + [-114.08090820312496, 31.510351562500034], + [-114.14931640624995, 31.507373046875045], + [-114.26406249999997, 31.55444335937503], + [-114.54868164062496, 31.733544921875023], + [-114.60878906249995, 31.762255859375017], + [-114.697607421875, 31.777441406250006], + [-114.74130859374995, 31.806494140625063], + [-114.93359374999994, 31.900732421874977], + [-114.895068359375, 31.85063476562499], + [-114.83950195312497, 31.79853515625004], + [-114.78989257812498, 31.647119140624994], + [-114.84814453124994, 31.537939453125063], + [-114.88188476562499, 31.156396484375023], + [-114.84467773437495, 31.080468750000023], + [-114.76103515624996, 30.958740234375], + [-114.70336914062503, 30.765185546875017], + [-114.68544921875002, 30.621191406249977], + [-114.63330078124997, 30.50688476562496], + [-114.64975585937495, 30.238134765625006], + [-114.62993164062499, 30.156298828125045], + [-114.55048828124997, 30.02226562499999], + [-114.40341796874993, 29.89648437500003], + [-114.37260742187497, 29.83022460937505], + [-114.17919921875, 29.734326171874955], + [-114.0619140625, 29.609521484375023], + [-113.82895507812496, 29.439453125], + [-113.75546875, 29.367480468750017], + [-113.5453125, 29.102246093749983], + [-113.53847656249994, 29.023388671874983], + [-113.49970703124995, 28.92670898437501], + [-113.3818359375, 28.946679687499994], + [-113.32890624999997, 28.873046875], + [-113.33500976562497, 28.83906250000001], + [-113.32070312499998, 28.81313476562505], + [-113.25888671875, 28.818847656250057], + [-113.20556640624997, 28.798779296874955], + [-113.09365234375001, 28.511767578125017], + [-113.03359375000002, 28.47260742187504], + [-112.95664062499998, 28.45585937499999], + [-112.870849609375, 28.42421875000005], + [-112.86523437500001, 28.35063476562496], + [-112.86845703124996, 28.2919921875], + [-112.79570312499996, 28.207128906250034], + [-112.808056640625, 28.0921875], + [-112.74931640625002, 27.994873046875057], + [-112.75820312499997, 27.90063476562503], + [-112.73403320312501, 27.825976562500017], + [-112.55263671875001, 27.65747070312497], + [-112.32919921874996, 27.52343750000003], + [-112.28261718749998, 27.34746093749996], + [-112.19145507812496, 27.186669921874994], + [-112.09814453124996, 27.14594726562504], + [-112.00395507812496, 27.0791015625], + [-112.01557617187501, 27.009716796874983], + [-112.00908203125003, 26.967089843750017], + [-111.88315429687495, 26.840185546875006], + [-111.86264648437495, 26.678515625000017], + [-111.75400390625002, 26.572705078124955], + [-111.723388671875, 26.564404296874955], + [-111.6994140625, 26.58095703125005], + [-111.77851562499995, 26.68725585937503], + [-111.81684570312494, 26.75625], + [-111.82177734374997, 26.865087890625006], + [-111.79526367187499, 26.8796875], + [-111.56967773437495, 26.707617187500006], + [-111.54589843749999, 26.579199218750034], + [-111.47016601562501, 26.50664062499999], + [-111.46450195312501, 26.40844726562497], + [-111.41850585937497, 26.349951171875063], + [-111.40458984374997, 26.265039062499994], + [-111.33212890624996, 26.125439453124955], + [-111.33037109374996, 25.93134765625004], + [-111.29160156249996, 25.78979492187497], + [-111.14956054687498, 25.572607421875034], + [-111.03442382812497, 25.526953124999977], + [-111.013623046875, 25.420312500000023], + [-110.89394531249995, 25.144238281249983], + [-110.75566406250002, 24.994580078124983], + [-110.68676757812501, 24.867675781250057], + [-110.67724609374994, 24.78852539062501], + [-110.72900390625001, 24.671533203124966], + [-110.73452148437498, 24.58984375000003], + [-110.65932617187502, 24.34145507812505], + [-110.54697265624996, 24.214160156250045], + [-110.42148437499998, 24.18339843749999], + [-110.39965820312497, 24.165136718750006], + [-110.40961914062495, 24.130957031249977], + [-110.36743164062497, 24.100488281249994], + [-110.319970703125, 24.139453125000017], + [-110.29682617187498, 24.194873046875017], + [-110.3208984375, 24.259179687499994], + [-110.32509765624997, 24.305957031250017], + [-110.30375976562497, 24.339453125], + [-110.262890625, 24.344531250000045], + [-110.02280273437502, 24.17460937499999], + [-109.98251953124999, 24.109375], + [-109.89316406249999, 24.033007812500017], + [-109.81132812500002, 23.939013671875045], + [-109.7759765625, 23.86489257812505], + [-109.710546875, 23.803808593750034], + [-109.6765625, 23.66157226562501], + [-109.509619140625, 23.597900390625], + [-109.42084960937495, 23.480126953124994], + [-109.41499023437501, 23.40556640624999], + [-109.45805664062499, 23.214746093750023], + [-109.49570312500002, 23.159814453125023], + [-109.63046874999993, 23.07866210937499], + [-109.72841796875, 22.981835937499994], + [-109.823046875, 22.922167968750017], + [-109.92343749999993, 22.885888671874994], + [-110.00625, 22.894042968750057], + [-110.08603515624993, 23.00546875], + [-110.18061523437503, 23.341503906249983], + [-110.24409179687498, 23.412255859375023], + [-110.28876953125003, 23.517675781250006], + [-110.3626953125, 23.60493164062501], + [-110.62998046874999, 23.73730468749997], + [-110.76489257812494, 23.877001953125017], + [-110.89555664062502, 23.970263671875017], + [-111.03618164062497, 24.105273437500074], + [-111.41933593749997, 24.329003906249994], + [-111.57822265625, 24.44301757812505], + [-111.68291015625002, 24.555810546875023], + [-111.750390625, 24.55415039062504], + [-111.80249023437494, 24.542529296875074], + [-111.82226562499999, 24.57338867187505], + [-111.82519531249996, 24.631787109374955], + [-111.84824218749995, 24.670068359375023], + [-112.07255859374999, 24.84003906250001], + [-112.11904296874995, 24.934033203124983], + [-112.12851562500002, 25.043115234374994], + [-112.07797851562493, 25.32397460937503], + [-112.05576171874995, 25.48823242187501], + [-112.06987304687497, 25.572851562500006], + [-112.09335937499996, 25.584375], + [-112.11459960937493, 25.63037109375], + [-112.11977539062502, 25.765527343749994], + [-112.17382812500001, 25.91259765625003], + [-112.37724609374997, 26.21391601562496], + [-112.52607421875001, 26.273486328125017], + [-112.65839843749997, 26.316748046875034], + [-113.02075195312499, 26.58325195312497], + [-113.11923828124998, 26.71650390625004], + [-113.14321289062498, 26.792187499999983], + [-113.15581054687496, 26.94624023437504], + [-113.20576171875001, 26.85698242187496], + [-113.27226562499997, 26.79096679687501], + [-113.42587890625, 26.795800781250023], + [-113.59853515625001, 26.721289062500034], + [-113.70126953124998, 26.791357421875006], + [-113.75664062499997, 26.87084960937503], + [-113.84096679687502, 26.966503906249983], + [-113.9359375, 26.985253906249994], + [-113.996484375, 26.987695312500023], + [-114.11005859374995, 27.10595703124997], + [-114.20185546875, 27.143505859374983], + [-114.33339843749998, 27.158007812500017], + [-114.44526367187503, 27.218164062499994], + [-114.47968750000003, 27.283593750000023], + [-114.498291015625, 27.376220703125057], + [-114.53989257812495, 27.431103515624955], + [-114.71562, 27.53955078125003], + [-114.85874023437498, 27.659179687500057], + [-114.99350585937499, 27.736035156249983], + [-115.03320312499999, 27.798876953125017], + [-115.03647460937495, 27.84184570312496], + [-114.82353515625, 27.829931640625034], + [-114.57001953124995, 27.78393554687497], + [-114.44848632812497, 27.796875], + [-114.372705078125, 27.841210937500023], + [-114.30058593749995, 27.87299804687501], + [-114.2890625, 27.83857421875001], + [-114.30224609375003, 27.775732421875006], + [-114.23266601562497, 27.718115234374977], + [-114.13720703124997, 27.67143554687499], + [-114.0693359375, 27.67568359375005], + [-114.13505859374997, 27.726611328125017], + [-114.17539062499993, 27.83056640624997], + [-114.15732421874999, 27.86796875], + [-114.15839843750003, 27.919677734375], + [-114.25263671874995, 27.908007812500045], + [-114.26586914062499, 27.934472656249994], + [-114.18525390625, 28.013281249999977], + [-114.09272460937497, 28.221337890624994], + [-114.04848632812502, 28.426171875], + [-114.14550781249997, 28.60541992187501], + [-114.30922851562502, 28.729931640624983], + [-114.66401367187501, 29.094580078125006], + [-114.87592773437501, 29.281884765624966], + [-114.93730468749999, 29.35161132812496], + [-114.99350585937499, 29.384423828124994], + [-115.16635742187493, 29.42724609375], + [-115.31118164062495, 29.53193359375001], + [-115.56528320312495, 29.680029296875006], + [-115.67382812500003, 29.756396484375017], + [-115.74868164062501, 29.935742187499955], + [-115.80830078124998, 29.960205078125057], + [-115.78955078124999, 30.08417968750001], + [-115.81562, 30.303613281250023], + [-115.85820312500002, 30.35981445312501], + [-115.99580078124998, 30.41445312500005], + [-116.028564453125, 30.563574218750063], + [-116.03535156249997, 30.70546875], + [-116.06215820312501, 30.80415039062504], + [-116.29628906250001, 30.97050781249999], + [-116.30961914062497, 31.050976562499955], + [-116.30966796874998, 31.127343749999966], + [-116.33344726562494, 31.202783203124994], + [-116.45849609375001, 31.360986328124966], + [-116.60957031249997, 31.499072265625045], + [-116.66215820312495, 31.56489257812504], + [-116.66845703124999, 31.698632812500023], + [-116.72207031249998, 31.734570312499955], + [-116.701708984375, 31.74365234375003], + [-116.65209960937503, 31.740332031249977], + [-116.62387695312496, 31.75800781250004], + [-116.62080078124995, 31.85107421874997], + [-116.84799804687496, 31.997363281250045], + [-116.91367187500002, 32.19853515624999], + [-117.034765625, 32.305029296875006], + [-117.06313476562501, 32.34360351562506], + [-117.12827148437495, 32.533349609374994], + [-116.84208984375, 32.554785156250006], + [-116.55595703124997, 32.57622070312502], + [-116.26982421874995, 32.59760742187501], + [-115.98369140625, 32.61904296875002], + [-115.69750976562497, 32.640478515625034], + [-115.41137695312503, 32.66186523437506], + [-115.1251953125, 32.68330078124998], + [-114.83906249999997, 32.704736328124994], + [-114.72475585937495, 32.71533203125003], + [-114.78798828124995, 32.564794921875006], + [-114.83593749999994, 32.50830078125003], + [-114.36171874999997, 32.36030273437498], + [-113.88745117187499, 32.21230468750002], + [-113.41318359374999, 32.064306640625006], + [-112.93896484375001, 31.91625976562503] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 5, + "name": "Marshall Is.", + "iso_a2": "MH", + "iso_a3": "MHL", + "iso_n3": "584", + "continent": "Oceania" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [169.63505859375007, 5.830078124999986], + [169.61542968750004, 5.799804687500043], + [169.59052734375004, 5.801904296875023], + [169.61220703125005, 5.824414062499997], + [169.62714843750004, 5.855810546874991], + [169.65107421875004, 5.945117187499974], + [169.70039062500004, 5.97705078125], + [169.7345703125001, 6.014160156250014], + [169.72636718750002, 5.975683593749991], + [169.67255859375004, 5.935205078125009], + [169.63505859375007, 5.830078124999986] + ] + ], + [ + [ + [171.5773437500001, 7.048242187500009], + [171.61474609374997, 7.026611328125043], + [171.68837890625005, 7.028271484375026], + [171.75683593749997, 6.973144531249986], + [171.73046875000003, 6.976611328124974], + [171.69335937499997, 7.00014648437498], + [171.659375, 7.010058593750045], + [171.61416015625005, 7.007177734374991], + [171.59277343750003, 7.01625976562498], + [171.5773437500001, 7.048242187500009] + ] + ], + [ + [ + [171.10195312500005, 7.138232421875045], + [171.226953125, 7.086962890624989], + [171.39375, 7.1109375], + [171.36699218750002, 7.095556640624963], + [171.30468750000003, 7.081152343749963], + [171.26328125000012, 7.06875], + [171.23535156250003, 7.06875], + [171.20234375000004, 7.073535156250003], + [171.09550781250007, 7.109277343750009], + [171.03574218750006, 7.156103515625048], + [171.05039062500012, 7.171777343750037], + [171.10195312500005, 7.138232421875045] + ] + ], + [ + [ + [168.83027343750004, 7.308984375], + [168.81542968749997, 7.293554687499977], + [168.71923828125003, 7.302734374999986], + [168.67509765625007, 7.32192382812498], + [168.67929687500012, 7.336230468749974], + [168.75546875000012, 7.322460937500011], + [168.83027343750004, 7.308984375] + ] + ], + [ + [ + [166.8903320312501, 11.153076171875057], + [166.86445312500004, 11.146240234374986], + [166.84472656250003, 11.153369140625017], + [166.85888671874997, 11.166308593749989], + [166.8880859375, 11.168652343750026], + [166.89941406249997, 11.1650390625], + [166.8903320312501, 11.153076171875057] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Macedonia", + "iso_a2": "MK", + "iso_a3": "MKD", + "iso_n3": "807", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [22.344042968750017, 42.31396484375], + [22.49824218750001, 42.165087890624996], + [22.58271484375001, 42.104833984375], + [22.68232421875001, 42.059130859374996], + [22.79609375000001, 42.025683593749996], + [22.836816406250023, 41.993603515625], + [22.9091796875, 41.835205078125], + [22.943945312500006, 41.77509765625], + [22.991992187500017, 41.757177734375], + [23.00361328125001, 41.73984375], + [23.005664062500017, 41.716943359374994], + [22.951464843750017, 41.605615234374994], + [22.9296875, 41.356103515624994], + [22.916015625, 41.336279296875], + [22.859277343750023, 41.337353515625], + [22.78388671875001, 41.331982421875], + [22.75507812500001, 41.312744140625], + [22.72480468750001, 41.178515625], + [22.603613281250006, 41.140185546874996], + [22.493554687500023, 41.118505859375], + [22.400781250000023, 41.123388671875], + [22.237695312500023, 41.155175781249994], + [22.184472656250023, 41.158642578125], + [22.13886718750001, 41.140527343749994], + [21.99335937500001, 41.13095703125], + [21.929492187500017, 41.107421875], + [21.77949218750001, 40.950439453125], + [21.627539062500006, 40.896337890625], + [21.57578125, 40.868945312499996], + [21.45966796875001, 40.903613281249996], + [21.404101562500017, 40.907177734375], + [21.32373046875, 40.867138671875], + [21.147558593750006, 40.863134765625], + [21.1, 40.85615234375], + [20.964257812500023, 40.849902343749996], + [20.95859375, 40.871533203125], + [20.933496093750023, 40.903125], + [20.870214843750006, 40.917919921875], + [20.740820312500006, 40.9052734375], + [20.709277343750017, 40.928369140624994], + [20.656054687500017, 41.061669921874994], + [20.61445312500001, 41.083056640624996], + [20.56787109375, 41.127832031249994], + [20.48896484375001, 41.272607421874994], + [20.48701171875001, 41.336083984374994], + [20.49238281250001, 41.39140625], + [20.448632812500023, 41.521289062499996], + [20.4755859375, 41.554101562499994], + [20.516210937500006, 41.574755859374996], + [20.5166015625, 41.62705078125], + [20.505175781250017, 41.706494140625], + [20.553125, 41.862353515624996], + [20.566210937500017, 41.873681640624994], + [20.578515625000023, 41.8662109375], + [20.694921875, 41.853808593749996], + [20.725, 41.87353515625], + [20.744140625, 41.904296875], + [20.750390625000023, 42.018359375], + [20.778125, 42.071044921875], + [21.05976562500001, 42.171289062499994], + [21.142480468750023, 42.175], + [21.2060546875, 42.128955078124996], + [21.25634765625, 42.099511718749994], + [21.28662109375, 42.100390625], + [21.29755859375001, 42.130078125], + [21.33173828125001, 42.187158203124994], + [21.389550781250023, 42.21982421875], + [21.560839843750017, 42.24765625], + [21.5625, 42.247509765625], + [21.618261718750006, 42.242138671875], + [21.7392578125, 42.267724609374994], + [21.81464843750001, 42.303125], + [21.85302734375, 42.308398437499996], + [21.904101562500017, 42.322070312499996], + [21.9775390625, 42.320068359375], + [22.052050781250017, 42.304638671875], + [22.14667968750001, 42.325], + [22.23974609375, 42.358154296875], + [22.27705078125001, 42.349853515625], + [22.3173828125, 42.321728515625], + [22.344042968750017, 42.31396484375] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Mali", + "iso_a2": "ML", + "iso_a3": "MLI", + "iso_n3": "466", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [4.227636718750006, 19.142773437499997], + [4.228222656250011, 18.968066406250003], + [4.22900390625, 18.704345703125], + [4.22998046875, 18.410595703124997], + [4.230859375000023, 18.139453125], + [4.23193359375, 17.830517578124997], + [4.232714843750017, 17.582177734374994], + [4.233691406250017, 17.28842773437499], + [4.234667968750017, 16.996386718750003], + [4.202929687500017, 16.962695312500003], + [4.191210937500017, 16.79819335937499], + [4.18212890625, 16.581787109375], + [4.121289062500011, 16.357714843750003], + [4.014843750000011, 16.19272460937499], + [3.976171875, 16.035546875], + [3.947070312500017, 15.945654296874991], + [3.9072265625, 15.896826171874991], + [3.89794921875, 15.837988281249991], + [3.876953125, 15.755273437499994], + [3.842968750000011, 15.701708984375003], + [3.816503906250006, 15.674023437499997], + [3.709570312500006, 15.641699218749991], + [3.5205078125, 15.483105468749997], + [3.504296875000023, 15.356347656249994], + [3.2890625, 15.39111328125], + [3.06015625, 15.427197265624997], + [3.029394531250006, 15.424853515625003], + [3.010546875000017, 15.408300781249991], + [3.001074218750006, 15.340966796874994], + [2.689648437500011, 15.329882812500003], + [2.420800781250023, 15.320410156249991], + [2.088183593750017, 15.309375], + [1.859375, 15.301708984374997], + [1.569140625000017, 15.286474609374991], + [1.300195312500023, 15.272265625], + [1.121289062500011, 15.126123046874994], + [0.960058593750006, 14.986914062499991], + [0.947460937500011, 14.982128906249997], + [0.718652343750023, 14.954882812500003], + [0.433007812500023, 14.97900390625], + [0.286230468750006, 14.980175781249997], + [0.228710937500011, 14.963671875], + [0.217480468750011, 14.911474609374991], + [0.00732421875, 14.984814453124997], + [-0.235888671874989, 15.059423828124991], + [-0.405419921874994, 15.0125], + [-0.432275390624994, 15.028515625], + [-0.454492187499994, 15.059667968749991], + [-0.536523437499994, 15.077880859375], + [-0.666455078124983, 15.069775390624997], + [-0.760449218749983, 15.047753906249994], + [-0.907958984375, 14.937402343749994], + [-1.019189453124994, 14.841357421875003], + [-1.049560546875, 14.81953125], + [-1.204980468749994, 14.761523437500003], + [-1.49365234375, 14.626074218749991], + [-1.657324218749977, 14.526806640624997], + [-1.695068359375, 14.508496093749997], + [-1.767773437499983, 14.486035156249997], + [-1.879785156249994, 14.481494140625003], + [-1.973046875, 14.45654296875], + [-2.05712890625, 14.194628906250003], + [-2.113232421874983, 14.16845703125], + [-2.457226562499983, 14.274121093749997], + [-2.526904296874989, 14.25830078125], + [-2.586718749999989, 14.227587890625003], + [-2.778857421874989, 14.07373046875], + [-2.873925781249994, 13.950732421875003], + [-2.925878906249977, 13.786767578124994], + [-2.918505859374989, 13.736376953125003], + [-2.917089843749977, 13.679492187500003], + [-2.950830078124994, 13.6484375], + [-2.997216796874994, 13.637109375], + [-3.038671874999977, 13.639111328124997], + [-3.198437499999983, 13.6728515625], + [-3.248632812499977, 13.658349609374994], + [-3.270166015624994, 13.577441406250003], + [-3.266748046874994, 13.40078125], + [-3.3017578125, 13.28076171875], + [-3.396728515625, 13.243701171875003], + [-3.469921874999983, 13.196386718749991], + [-3.527636718749989, 13.182714843749991], + [-3.575781249999977, 13.194189453124991], + [-3.853466796874983, 13.37353515625], + [-3.947314453124989, 13.402197265624991], + [-4.051171875, 13.382421875], + [-4.151025390624994, 13.306201171875003], + [-4.196191406249994, 13.256152343750003], + [-4.258691406249994, 13.197314453124989], + [-4.328710937499977, 13.119042968749994], + [-4.310253906249983, 13.052490234375], + [-4.260644531249994, 12.975341796875], + [-4.225244140624994, 12.879492187499991], + [-4.227099609374989, 12.793701171875], + [-4.480615234374994, 12.672216796874991], + [-4.459863281249994, 12.63037109375], + [-4.421923828124989, 12.581591796874989], + [-4.421582031249983, 12.493066406249994], + [-4.4287109375, 12.337597656249997], + [-4.479882812499994, 12.281787109374989], + [-4.546044921874994, 12.226464843749994], + [-4.5869140625, 12.155029296875], + [-4.627246093749989, 12.120214843749991], + [-4.699316406249977, 12.076171875], + [-4.797949218749977, 12.032128906249994], + [-4.968994140625, 11.993310546874994], + [-5.105908203124983, 11.967529296875], + [-5.157519531249989, 11.9423828125], + [-5.230175781249983, 11.890283203124994], + [-5.288134765624989, 11.827929687499989], + [-5.302001953125, 11.760449218749997], + [-5.29052734375, 11.683300781249997], + [-5.270312499999989, 11.619873046875], + [-5.244775390624994, 11.576757812499991], + [-5.229394531249994, 11.5224609375], + [-5.250244140625, 11.375781249999989], + [-5.299853515624989, 11.205957031249994], + [-5.347412109375, 11.130273437499994], + [-5.42421875, 11.088720703124991], + [-5.490478515625, 11.042382812499994], + [-5.468554687499989, 10.931054687499994], + [-5.457080078124989, 10.771386718749994], + [-5.475683593749977, 10.643945312499994], + [-5.47900390625, 10.565087890624994], + [-5.507031249999983, 10.483447265624989], + [-5.523535156249977, 10.426025390625], + [-5.556591796874983, 10.43994140625], + [-5.694287109374983, 10.433203125], + [-5.843847656249977, 10.389550781249994], + [-5.896191406249983, 10.354736328125], + [-5.907568359374977, 10.307226562499991], + [-5.940673828125, 10.275097656249997], + [-5.988671875, 10.239111328124991], + [-6.034570312499994, 10.19482421875], + [-6.1171875, 10.201904296875], + [-6.19687, 10.232128906249997], + [-6.238378906249977, 10.261621093749994], + [-6.241308593749977, 10.279199218749994], + [-6.214990234374994, 10.322363281249991], + [-6.192626953125, 10.369433593749989], + [-6.190673828125, 10.400292968749994], + [-6.2177734375, 10.476269531249997], + [-6.23974609375, 10.55810546875], + [-6.230664062499983, 10.597509765624991], + [-6.250244140625, 10.717919921874994], + [-6.261132812499994, 10.724072265624997], + [-6.365625, 10.692822265624997], + [-6.404150390624977, 10.685107421874989], + [-6.425878906249977, 10.671777343749994], + [-6.4326171875, 10.648730468749989], + [-6.407519531249989, 10.572363281249991], + [-6.423925781249977, 10.559130859374989], + [-6.482617187499983, 10.561230468749997], + [-6.564599609374994, 10.58642578125], + [-6.654150390624977, 10.656445312499997], + [-6.676367187499977, 10.6337890625], + [-6.686132812499977, 10.578027343749994], + [-6.691992187499977, 10.512011718749989], + [-6.669335937499994, 10.3921875], + [-6.693261718749994, 10.349462890624991], + [-6.753222656249989, 10.357128906249997], + [-6.833642578124994, 10.356982421874989], + [-6.90380859375, 10.345068359374991], + [-6.950341796874994, 10.342333984374989], + [-6.9794921875, 10.299560546875], + [-6.991748046874989, 10.251855468749994], + [-6.963818359374983, 10.19873046875], + [-6.968164062499994, 10.176220703124997], + [-6.989453124999983, 10.155664062499994], + [-7.01708984375, 10.143261718749997], + [-7.039746093749983, 10.144775390625], + [-7.104882812499994, 10.203515625], + [-7.182324218749983, 10.225683593749991], + [-7.363183593749994, 10.259375], + [-7.385058593749989, 10.340136718749989], + [-7.414794921875, 10.34130859375], + [-7.45654296875, 10.383935546874994], + [-7.497949218749994, 10.439794921874991], + [-7.532812499999977, 10.436816406249989], + [-7.562109374999977, 10.421240234374991], + [-7.6611328125, 10.427441406249997], + [-7.749072265624989, 10.34228515625], + [-7.814208984375, 10.236572265625], + [-7.884082031249989, 10.185742187499997], + [-7.9609375, 10.163476562499994], + [-7.990625, 10.1625], + [-7.974462890624977, 10.229541015624989], + [-7.985693359374977, 10.278417968749991], + [-8.007275390624983, 10.321875], + [-8.231494140624989, 10.43798828125], + [-8.266650390624989, 10.485986328124994], + [-8.301562499999989, 10.617578125], + [-8.324121093749994, 10.74951171875], + [-8.321679687499994, 10.826953124999989], + [-8.306347656249983, 10.89609375], + [-8.312744140625, 10.949755859374989], + [-8.33740234375, 10.990625], + [-8.404492187499983, 11.029931640624994], + [-8.474707031249977, 11.048388671874989], + [-8.563525390624989, 10.996679687499991], + [-8.606201171875, 10.986962890624994], + [-8.646191406249983, 10.990478515625], + [-8.666699218749983, 11.009472656249997], + [-8.663916015624977, 11.035839843749997], + [-8.567285156249994, 11.177001953125], + [-8.520312499999989, 11.2359375], + [-8.463525390624994, 11.280712890624997], + [-8.42529296875, 11.304736328124989], + [-8.400683593749989, 11.339404296874989], + [-8.398535156249977, 11.366552734374991], + [-8.407470703125, 11.386279296874989], + [-8.470703125, 11.412207031249991], + [-8.56875, 11.478076171874989], + [-8.621142578124989, 11.485107421875], + [-8.664941406249994, 11.514990234374991], + [-8.71142578125, 11.617773437499991], + [-8.733105468749983, 11.6375], + [-8.779736328124983, 11.648242187499989], + [-8.822021484375, 11.673242187499994], + [-8.820068359375, 11.80712890625], + [-8.818310546874983, 11.922509765624994], + [-8.913867187499989, 12.108544921874994], + [-8.950830078124994, 12.2255859375], + [-8.998925781249994, 12.345898437499997], + [-9.043066406249977, 12.40234375], + [-9.120458984374977, 12.449951171875], + [-9.215527343749983, 12.482861328124997], + [-9.3, 12.490283203124989], + [-9.365185546874983, 12.479296874999989], + [-9.395361328124977, 12.464648437499989], + [-9.393652343749977, 12.442236328124991], + [-9.3408203125, 12.366015624999989], + [-9.33154296875, 12.32373046875], + [-9.340185546874977, 12.282763671874989], + [-9.358105468749983, 12.255419921874989], + [-9.404980468749983, 12.25244140625], + [-9.48681640625, 12.228662109374994], + [-9.587744140624977, 12.182470703124991], + [-9.658300781249977, 12.143115234374989], + [-9.714746093749994, 12.04248046875], + [-9.754003906249977, 12.029931640624994], + [-9.820703125, 12.04248046875], + [-10.010644531249994, 12.116455078125], + [-10.167089843749977, 12.177441406249997], + [-10.274853515624983, 12.212646484375], + [-10.339892578124989, 12.190283203124991], + [-10.372753906249983, 12.179541015624991], + [-10.4658203125, 12.138671875], + [-10.589501953124994, 11.990283203124989], + [-10.618994140624977, 11.941210937499989], + [-10.643701171874994, 11.925537109375], + [-10.677343749999977, 11.8994140625], + [-10.709228515625, 11.898730468749989], + [-10.734912109374989, 11.916455078124997], + [-10.743017578124977, 11.92724609375], + [-10.806494140624977, 12.034277343749991], + [-10.876171874999983, 12.15185546875], + [-10.933203124999977, 12.205175781249991], + [-11.004541015624994, 12.20751953125], + [-11.065820312499994, 12.170800781249994], + [-11.129248046874977, 12.095019531249989], + [-11.209667968749983, 12.024853515624997], + [-11.260693359374983, 12.004052734374994], + [-11.30517578125, 12.015429687499989], + [-11.414648437499977, 12.10400390625], + [-11.492431640625, 12.166943359374997], + [-11.502197265625, 12.198632812499994], + [-11.474560546874983, 12.247167968749991], + [-11.447558593749989, 12.319238281249994], + [-11.418066406249977, 12.377685546875], + [-11.389404296875, 12.404394531249991], + [-11.382421874999977, 12.479248046875], + [-11.448779296874989, 12.531933593749997], + [-11.450585937499994, 12.557714843749991], + [-11.444091796875, 12.627587890624994], + [-11.414355468749989, 12.775488281249991], + [-11.417431640624983, 12.831884765624991], + [-11.390380859375, 12.941992187499991], + [-11.433935546874977, 12.991601562499994], + [-11.444140624999989, 13.028222656249994], + [-11.492822265624994, 13.086962890624989], + [-11.548779296874983, 13.170263671874991], + [-11.561669921874994, 13.236962890624994], + [-11.581347656249989, 13.2900390625], + [-11.634960937499983, 13.369873046875], + [-11.674462890624994, 13.382373046875003], + [-11.758251953124983, 13.39453125], + [-11.772216796875, 13.367089843749994], + [-11.803369140624994, 13.327294921874994], + [-11.831689453124994, 13.315820312499994], + [-11.877783203124977, 13.364550781250003], + [-11.895214843749983, 13.406298828125003], + [-11.894580078124989, 13.444433593749991], + [-11.957080078124989, 13.510888671874994], + [-12.05419921875, 13.633056640625], + [-12.044140624999983, 13.73388671875], + [-11.984179687499989, 13.7880859375], + [-11.966357421874989, 13.828955078124991], + [-11.960888671874983, 13.875292968750003], + [-11.988085937499989, 13.930761718749991], + [-12.020117187499977, 13.974658203125003], + [-12.011181640624983, 14.071826171875003], + [-12.019189453124994, 14.206494140624997], + [-12.068359375, 14.27421875], + [-12.112890624999977, 14.323291015625003], + [-12.175244140624983, 14.376660156249997], + [-12.228417968749994, 14.45859375], + [-12.206835937499989, 14.571142578124991], + [-12.1865234375, 14.648144531249997], + [-12.280615234374977, 14.809033203124997], + [-12.104687499999983, 14.745361328125], + [-12.08154296875, 14.766357421875], + [-12.021582031249977, 14.804931640625], + [-11.94091796875, 14.886914062499997], + [-11.872851562499989, 14.995166015625003], + [-11.842236328124983, 15.12939453125], + [-11.828759765624994, 15.244873046875], + [-11.798437499999977, 15.342724609374997], + [-11.76015625, 15.425537109375], + [-11.675878906249977, 15.512060546874991], + [-11.596728515624989, 15.5732421875], + [-11.502685546875, 15.636816406249991], + [-11.455224609374994, 15.625390625], + [-11.365625, 15.536767578124994], + [-11.169335937499994, 15.358642578125], + [-11.007421874999977, 15.222900390625], + [-10.9482421875, 15.151123046875], + [-10.895605468749977, 15.150488281249991], + [-10.815087890624994, 15.28173828125], + [-10.731982421874989, 15.394921875], + [-10.696582031249989, 15.42265625], + [-10.586572265624994, 15.434863281250003], + [-10.4931640625, 15.439794921874991], + [-10.411816406249983, 15.437939453124997], + [-10.262109375, 15.416015625], + [-10.19375, 15.396044921875003], + [-10.129541015624994, 15.383691406249994], + [-9.94140625, 15.373779296875], + [-9.755078124999983, 15.401464843749991], + [-9.577832031249983, 15.437255859375], + [-9.446923828124994, 15.458203125], + [-9.440332031249994, 15.511669921874997], + [-9.447705078124983, 15.574853515624994], + [-9.426562499999989, 15.623046875], + [-9.385351562499977, 15.667626953124994], + [-9.3505859375, 15.677392578124994], + [-9.33544921875, 15.525683593750003], + [-9.293701171875, 15.502832031249994], + [-9.176806640624989, 15.49609375], + [-8.987060546875, 15.49609375], + [-8.783105468749994, 15.49609375], + [-8.579150390624989, 15.496142578125003], + [-8.375195312499983, 15.496142578125003], + [-8.171240234374977, 15.496142578125003], + [-7.96728515625, 15.496142578125003], + [-7.763378906249983, 15.496142578125003], + [-7.55937, 15.496142578125003], + [-7.35546875, 15.496191406249991], + [-7.151513671874994, 15.496191406249991], + [-6.947558593749989, 15.496191406249991], + [-6.743603515624983, 15.496191406249991], + [-6.539648437499977, 15.496191406249991], + [-6.335742187499989, 15.496191406249991], + [-6.131787109374983, 15.496240234374994], + [-5.927832031249977, 15.496289062499997], + [-5.723876953125, 15.496289062499997], + [-5.5125, 15.496289062499997], + [-5.455615234374989, 15.789404296874991], + [-5.403564453125, 16.057910156250003], + [-5.359912109374989, 16.282861328124994], + [-5.509619140624977, 16.442041015624994], + [-5.628662109375, 16.568652343750003], + [-5.65625, 16.8095703125], + [-5.684765624999983, 17.058251953124994], + [-5.713183593749989, 17.306884765625], + [-5.74169921875, 17.555566406249994], + [-5.770166015624994, 17.804248046875003], + [-5.798632812499989, 18.052929687499997], + [-5.827099609374983, 18.3015625], + [-5.855566406249977, 18.550244140624997], + [-5.884082031249989, 18.798876953125003], + [-5.9125, 19.047509765624994], + [-5.941015624999977, 19.296191406250003], + [-5.969482421875, 19.544873046874997], + [-5.997949218749994, 19.793505859375003], + [-6.026416015624989, 20.0421875], + [-6.054882812499983, 20.29086914062499], + [-6.083398437499994, 20.539501953124997], + [-6.11181640625, 20.78818359374999], + [-6.140332031249983, 21.036865234375], + [-6.168798828124977, 21.285546875], + [-6.197265625, 21.5341796875], + [-6.225732421874994, 21.782861328124994], + [-6.254199218749989, 22.031542968750003], + [-6.28271484375, 22.280175781249994], + [-6.311132812499977, 22.528857421875003], + [-6.339648437499989, 22.777490234374994], + [-6.368115234374983, 23.026123046875], + [-6.396582031249977, 23.274804687499994], + [-6.425048828125, 23.523486328125003], + [-6.453515625, 23.772167968749997], + [-6.482031249999977, 24.020800781250003], + [-6.510449218749983, 24.269482421874997], + [-6.538964843749994, 24.51816406249999], + [-6.5673828125, 24.766796875], + [-6.594091796874977, 24.99462890625], + [-6.287207031249977, 24.994824218749997], + [-5.959814453124977, 24.99497070312499], + [-5.640771484374994, 24.995166015625003], + [-5.172900390624989, 24.995410156250003], + [-4.822607421874977, 24.99560546875], + [-4.516992187499994, 24.804492187500003], + [-4.240332031249977, 24.62353515625], + [-3.912792968749983, 24.409472656250003], + [-3.585351562499994, 24.195361328125003], + [-3.257861328124989, 23.98125], + [-2.930371093749983, 23.767138671875003], + [-2.602929687499994, 23.553027343750003], + [-2.275390625, 23.3388671875], + [-1.947900390624994, 23.124804687500003], + [-1.620410156249989, 22.91064453125], + [-1.29296875, 22.696533203125], + [-0.965478515624994, 22.482470703125003], + [-0.637988281249989, 22.268310546875], + [-0.310546875, 22.05419921875], + [0.016992187500023, 21.840136718750003], + [0.344433593750011, 21.6259765625], + [0.671875, 21.411865234375], + [0.999414062500023, 21.19775390625], + [1.1455078125, 21.102246093749997], + [1.1591796875, 21.0625], + [1.172753906250023, 20.981982421875003], + [1.1640625, 20.891308593749997], + [1.165722656250011, 20.817431640625003], + [1.208886718750023, 20.767285156249997], + [1.290234375000011, 20.713574218749997], + [1.610644531250017, 20.555566406249994], + [1.636035156250017, 20.524365234374997], + [1.647363281250023, 20.45883789062499], + [1.685449218750023, 20.378369140624997], + [1.753222656250017, 20.331591796875003], + [1.832421875000023, 20.296875], + [1.928808593750006, 20.272705078125], + [2.219335937500006, 20.247802734375], + [2.280859375, 20.21030273437499], + [2.406152343750023, 20.063867187499994], + [2.47421875, 20.03500976562499], + [2.667773437500017, 19.992919921875], + [2.807910156250017, 19.969433593749997], + [2.86572265625, 19.955957031249994], + [2.992480468750017, 19.91660156249999], + [3.130273437500023, 19.85019531249999], + [3.203710937500006, 19.789697265624994], + [3.203417968750017, 19.770751953125], + [3.202734375, 19.718310546875003], + [3.20166015625, 19.56040039062499], + [3.22705078125, 19.473583984374997], + [3.255859375, 19.4109375], + [3.25439453125, 19.372607421875003], + [3.219628906250023, 19.345410156249997], + [3.1923828125, 19.312060546875003], + [3.17724609375, 19.26816406249999], + [3.137890625000011, 19.212158203125], + [3.106054687500006, 19.150097656249997], + [3.119726562500006, 19.103173828124994], + [3.174218750000023, 19.072900390624994], + [3.255957031250006, 19.01328125], + [3.323437500000011, 18.98837890624999], + [3.3564453125, 18.986621093750003], + [3.40087890625, 18.988427734374994], + [3.438769531250017, 18.996142578125003], + [3.683496093750023, 19.04160156249999], + [3.91015625, 19.083740234375], + [4.227636718750006, 19.142773437499997] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "Malta", + "iso_a2": "MT", + "iso_a3": "MLT", + "iso_n3": "470", + "continent": "Europe" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [14.566210937499989, 35.85273437499998], + [14.532714843750028, 35.820214843749994], + [14.436425781250023, 35.82167968750005], + [14.352343750000045, 35.872265624999955], + [14.351269531250011, 35.978417968749994], + [14.448339843750063, 35.957421875], + [14.537011718749994, 35.88627929687496], + [14.566210937499989, 35.85273437499998] + ] + ], + [ + [ + [14.313476562500028, 36.02758789062497], + [14.253613281250011, 36.01215820312504], + [14.19423828125008, 36.04223632812503], + [14.180371093750011, 36.060400390625006], + [14.26328125, 36.075781250000034], + [14.3037109375, 36.062304687500045], + [14.320898437500034, 36.03623046875006], + [14.313476562500028, 36.02758789062497] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Myanmar", + "iso_a2": "MM", + "iso_a3": "MMR", + "iso_n3": "104", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [98.18261718749997, 9.933447265625006], + [98.13437500000012, 9.875390625], + [98.11806640625, 9.877880859375054], + [98.14023437500006, 9.97465820312496], + [98.22070312500003, 10.045214843750031], + [98.2916992187501, 10.051318359375031], + [98.2833984375001, 10.007617187500017], + [98.23125, 9.953955078125006], + [98.18261718749997, 9.933447265625006] + ] + ], + [ + [ + [98.20976562500002, 10.952734375], + [98.29345703125003, 10.7796875], + [98.284375, 10.753125], + [98.27148437499997, 10.73989257812498], + [98.25175781250007, 10.744433593750017], + [98.21816406250005, 10.83774414062502], + [98.15537109375006, 10.897949218750028], + [98.08046875000005, 10.886621093750037], + [98.14257812500003, 10.963134765624986], + [98.16728515625007, 10.980322265625034], + [98.20976562500002, 10.952734375] + ] + ], + [ + [ + [98.54169921875004, 10.96152343750002], + [98.51894531250005, 10.959375], + [98.49804687499997, 10.964257812500037], + [98.47744140625, 10.979736328125], + [98.5265625000001, 11.086962890624989], + [98.54169921875004, 10.96152343750002] + ] + ], + [ + [ + [98.22167968749997, 11.47822265625004], + [98.2162109375, 11.455761718749983], + [98.209375, 11.456542968749972], + [98.18730468750007, 11.472412109375], + [98.20107421875005, 11.567187500000045], + [98.23906250000002, 11.644726562500026], + [98.278125, 11.758398437500006], + [98.29960937500002, 11.783007812500045], + [98.30751953125005, 11.722900390625057], + [98.28378906250012, 11.59409179687502], + [98.26328125000006, 11.523632812500054], + [98.22167968749997, 11.47822265625004] + ] + ], + [ + [ + [98.55380859375012, 11.744873046875], + [98.52841796875012, 11.538671875], + [98.46484375000003, 11.567187500000045], + [98.43476562500004, 11.567089843750026], + [98.396875, 11.683544921875026], + [98.39951171875006, 11.714843750000014], + [98.37646484374997, 11.79150390625], + [98.52353515625006, 11.804931640624986], + [98.55380859375012, 11.744873046875] + ] + ], + [ + [ + [98.07548828125002, 11.692382812500057], + [98.08359375000006, 11.63681640625002], + [98.02109375000006, 11.695898437499977], + [98.01035156250006, 11.860253906249966], + [98.05957031249997, 11.756689453125006], + [98.08076171875004, 11.733203125000017], + [98.07548828125002, 11.692382812500057] + ] + ], + [ + [ + [98.516015625, 11.905029296875028], + [98.4743164062501, 11.899414062500043], + [98.45449218750005, 12.061279296874986], + [98.46621093750005, 12.08427734374996], + [98.52529296875, 12.005175781250003], + [98.60957031250004, 11.956640624999977], + [98.57646484375002, 11.925097656250031], + [98.516015625, 11.905029296875028] + ] + ], + [ + [ + [98.13671874999997, 12.150439453125031], + [98.12509765625012, 12.144873046875048], + [98.10849609375006, 12.148095703124994], + [98.0753906250001, 12.164453125000037], + [98.03730468750004, 12.232470703125045], + [98.05732421875004, 12.280078124999974], + [98.07138671875006, 12.29179687499996], + [98.10488281250005, 12.287792968750026], + [98.1224609375, 12.278710937500051], + [98.12841796874997, 12.261230468750043], + [98.11845703125007, 12.223388671875057], + [98.12011718749997, 12.191308593750009], + [98.13671874999997, 12.150439453125031] + ] + ], + [ + [ + [98.06611328125004, 12.389794921875023], + [98.06035156250007, 12.353515625000014], + [98.00234375000005, 12.279003906250011], + [97.95175781250012, 12.32231445312496], + [97.93867187500004, 12.34609375], + [97.99023437499997, 12.393798828125043], + [98.04511718750004, 12.387011718749989], + [98.05986328125002, 12.39785156249998], + [98.06611328125004, 12.389794921875023] + ] + ], + [ + [ + [98.41396484375005, 12.597949218749974], + [98.43642578125, 12.570507812499983], + [98.46826171875003, 12.571337890624974], + [98.45947265625003, 12.473730468749991], + [98.38085937499997, 12.353662109375037], + [98.33447265625003, 12.336181640625028], + [98.3138671875, 12.335986328124989], + [98.33144531250005, 12.511425781250026], + [98.30253906250002, 12.611572265625], + [98.31210937500006, 12.678173828124983], + [98.39648437499997, 12.647119140625051], + [98.41396484375005, 12.597949218749974] + ] + ], + [ + [ + [98.31542968749997, 13.099072265625026], + [98.30917968750012, 12.934716796875023], + [98.25927734374997, 13.014013671875006], + [98.25078125000002, 13.104394531250037], + [98.2545898437501, 13.188574218750048], + [98.26533203125004, 13.202246093749991], + [98.26855468750003, 13.189355468750023], + [98.29863281250002, 13.151660156249989], + [98.31542968749997, 13.099072265625026] + ] + ], + [ + [ + [94.80488281250004, 15.8193359375], + [94.784375, 15.793847656250023], + [94.7433593750001, 15.812109375000034], + [94.73349609375006, 15.823046875000045], + [94.82802734375005, 15.933007812499966], + [94.83818359375007, 15.892089843749972], + [94.80488281250004, 15.8193359375] + ] + ], + [ + [ + [94.47675781250004, 15.945947265625023], + [94.41191406250007, 15.848388671875057], + [94.3878906250001, 15.994140624999972], + [94.49375, 16.075341796874994], + [94.54599609375012, 16.15283203124997], + [94.60126953125004, 16.205517578124983], + [94.61865234375003, 16.14130859375004], + [94.56611328125004, 16.019287109375057], + [94.47675781250004, 15.945947265625023] + ] + ], + [ + [ + [97.575, 16.253222656250017], + [97.53720703125006, 16.240136718749994], + [97.48037109375, 16.305712890625045], + [97.46914062500005, 16.461035156249977], + [97.51640625000007, 16.49687], + [97.54199218749997, 16.505078124999983], + [97.57900390625005, 16.48603515625001], + [97.59326171875003, 16.460791015625006], + [97.59960937499997, 16.429541015625034], + [97.58935546875003, 16.397363281249966], + [97.575, 16.253222656250017] + ] + ], + [ + [ + [93.6908203125, 18.68427734375004], + [93.67402343750004, 18.675683593749966], + [93.56992187500006, 18.759570312500017], + [93.4875, 18.867529296875063], + [93.61826171875012, 18.88881835937505], + [93.74472656250006, 18.865527343750017], + [93.74550781250005, 18.80805664062501], + [93.71835937500012, 18.71572265625005], + [93.6908203125, 18.68427734375004] + ] + ], + [ + [ + [93.71484374999997, 19.558251953124994], + [93.8294921875, 19.475292968749983], + [93.87470703125004, 19.481054687500006], + [93.94570312500005, 19.428613281249966], + [93.94746093750004, 19.408154296874983], + [93.93398437500005, 19.365429687499983], + [93.90195312500012, 19.33203125], + [93.81523437500002, 19.298681640625063], + [93.75585937500003, 19.325683593750057], + [93.73232421875, 19.416308593750045], + [93.66220703125012, 19.45893554687501], + [93.64404296874997, 19.49506835937501], + [93.68837890625005, 19.54443359375003], + [93.71484374999997, 19.558251953124994] + ] + ], + [ + [ + [93.49179687500012, 19.892578125], + [93.51328125000006, 19.754785156249994], + [93.44462890625002, 19.806445312500017], + [93.41953125000006, 19.87758789062505], + [93.41289062500002, 19.950341796875023], + [93.49179687500012, 19.892578125] + ] + ], + [ + [ + [93.01015625000005, 19.923925781249977], + [93.02324218750007, 19.82885742187497], + [92.97519531250012, 19.868017578125063], + [92.91269531250012, 19.99980468749999], + [92.91464843750006, 20.086474609375045], + [92.95957031250006, 20.046191406250017], + [93.01015625000005, 19.923925781249977] + ] + ], + [ + [ + [97.73007812500006, 28.407128906250023], + [97.76904296875003, 28.35615234375004], + [97.81650390625012, 28.356347656249966], + [97.86494140625004, 28.363574218750017], + [97.88759765625005, 28.356494140625017], + [97.93408203124997, 28.313818359375006], + [98.02226562500002, 28.211523437500063], + [98.06162109375012, 28.185888671874977], + [98.09892578125002, 28.142285156249983], + [98.11835937500004, 28.055224609375017], + [98.13046875000012, 27.96757812499999], + [98.24101562500007, 27.663183593749977], + [98.27421875000002, 27.599072265624983], + [98.29882812499997, 27.550097656250045], + [98.35048828125, 27.5380859375], + [98.39238281250002, 27.587060546875023], + [98.4088867187501, 27.639453125000045], + [98.4525390625, 27.6572265625], + [98.50449218750012, 27.64765625000001], + [98.5998046875001, 27.59882812500001], + [98.65117187500007, 27.572460937499983], + [98.67675781250003, 27.421923828125045], + [98.68242187500002, 27.24531250000004], + [98.67480468749997, 27.19062], + [98.71650390625004, 27.04492187499997], + [98.72949218750003, 26.87739257812504], + [98.7384765625001, 26.785742187500006], + [98.73935546875006, 26.698144531250023], + [98.7318359375, 26.583398437499994], + [98.70947265624997, 26.42968750000003], + [98.671875, 26.298535156249955], + [98.68554687499997, 26.189355468750023], + [98.66318359375012, 26.13945312499999], + [98.5719726562501, 26.114062500000045], + [98.56406250000006, 26.072412109374994], + [98.59101562500004, 26.003710937500045], + [98.6546875, 25.917773437500017], + [98.65625, 25.86357421874999], + [98.62539062500005, 25.826708984375045], + [98.55839843750007, 25.82324218750003], + [98.4655273437501, 25.788867187500045], + [98.40166015625002, 25.67797851562503], + [98.33378906250007, 25.586767578125006], + [98.29658203125004, 25.56884765625], + [98.1725585937501, 25.594531250000074], + [98.14287109375007, 25.571093750000017], + [98.09960937499997, 25.415722656249983], + [98.06406250000012, 25.348974609375063], + [98.01074218749997, 25.292529296875017], + [97.96201171875006, 25.25932617187499], + [97.91796874999997, 25.236132812500074], + [97.8195312500001, 25.251855468749994], + [97.76738281250007, 25.158056640625063], + [97.71494140625012, 25.034326171874994], + [97.71074218750007, 24.970361328125023], + [97.73789062500006, 24.869873046875057], + [97.72382812500004, 24.841992187499983], + [97.67070312500007, 24.820117187500045], + [97.58330078125002, 24.77480468750005], + [97.52939453125006, 24.631201171875006], + [97.53144531250004, 24.49169921875003], + [97.56328125000002, 24.44384765625003], + [97.62363281250006, 24.422949218750034], + [97.66660156250012, 24.379980468750006], + [97.67070312500007, 24.31274414062497], + [97.7082031250001, 24.228759765625], + [97.690625, 24.13081054687504], + [97.56826171875, 23.988476562499983], + [97.56455078125012, 23.911035156250023], + [97.62968750000007, 23.887158203124955], + [97.68603515624997, 23.898095703124966], + [97.75566406250007, 23.931884765625], + [97.83769531250007, 23.986279296874983], + [98.01689453125007, 24.06542968750003], + [98.2125, 24.110644531250017], + [98.36728515625006, 24.119042968750023], + [98.49941406250005, 24.115673828124983], + [98.5641601562501, 24.09882812500001], + [98.58339843750005, 24.069824218750057], + [98.76435546875004, 24.116064453125063], + [98.80234375000006, 24.118701171875045], + [98.83505859375006, 24.121191406250034], + [98.83398437500003, 24.090576171875], + [98.70156250000005, 23.964062499999983], + [98.67675781250003, 23.905078125000045], + [98.6808593750001, 23.84179687500003], + [98.7350585937501, 23.783105468749994], + [98.78769531250006, 23.73784179687499], + [98.8322265625001, 23.624365234374977], + [98.79785156250003, 23.520410156250023], + [98.81972656250005, 23.482519531250034], + [98.85888671875003, 23.440087890624994], + [98.88261718750007, 23.380322265624983], + [98.88554687500002, 23.307470703124977], + [98.86376953125003, 23.191259765625034], + [99.055078125, 23.13056640625001], + [99.22031250000012, 23.103320312500045], + [99.34082031249997, 23.095898437499955], + [99.41806640625006, 23.069238281250023], + [99.46455078125004, 23.046240234375063], + [99.49726562500004, 23.00458984375001], + [99.50712890625002, 22.959130859374994], + [99.46679687499997, 22.927294921875074], + [99.38515625000005, 22.825097656250023], + [99.33828125, 22.688671874999955], + [99.3431640625, 22.586523437500006], + [99.33769531250002, 22.49804687500003], + [99.24306640625005, 22.37036132812503], + [99.20537109375007, 22.282568359375006], + [99.17236328125003, 22.192480468750034], + [99.17343750000006, 22.153320312500057], + [99.19296875000006, 22.12597656249997], + [99.23339843750003, 22.110156250000045], + [99.303125, 22.100634765625045], + [99.38867187500003, 22.110791015624983], + [99.59267578125005, 22.089160156250017], + [99.8253906250001, 22.049707031249994], + [99.9176757812501, 22.02802734375001], + [99.94785156250006, 21.988330078125017], + [99.94042968749997, 21.901611328125], + [99.92558593750007, 21.82080078124997], + [99.94072265625007, 21.75874023437504], + [99.97822265625004, 21.70161132812504], + [100.0412109375001, 21.682763671875023], + [100.09550781250007, 21.66064453125003], + [100.10576171875002, 21.617041015625034], + [100.08925781250005, 21.557910156250074], + [100.11679687500006, 21.511181640624955], + [100.14765625000004, 21.480517578125017], + [100.21474609375, 21.462988281250006], + [100.35058593749997, 21.501025390625017], + [100.445703125, 21.48408203125004], + [100.53134765625012, 21.458105468749977], + [100.60458984375012, 21.471777343750006], + [100.6771484375, 21.504931640625017], + [100.83515625000004, 21.655175781249994], + [101.01933593750007, 21.736376953125017], + [101.07978515625004, 21.75585937499997], + [101.12070312500012, 21.74609375000003], + [101.13085937499997, 21.73554687500001], + [101.128125, 21.705126953125045], + [101.14726562500002, 21.581640625], + [101.1388671875001, 21.567480468749977], + [101.08037109375007, 21.468652343749994], + [100.92753906250002, 21.3662109375], + [100.81953125000004, 21.31420898437497], + [100.75664062500002, 21.312646484375023], + [100.703125, 21.251367187499966], + [100.65917968749997, 21.13037109375], + [100.613671875, 21.059326171875], + [100.56660156250004, 21.038183593750063], + [100.53613281250003, 20.992382812499955], + [100.52226562500007, 20.92192382812499], + [100.54931640624997, 20.884228515624955], + [100.61767578125003, 20.879248046875006], + [100.62294921875005, 20.859570312499983], + [100.5651367187501, 20.825097656249994], + [100.49335937500004, 20.81298828125], + [100.4074218750001, 20.823242187500057], + [100.32607421875005, 20.795703125000045], + [100.24931640625002, 20.730273437500045], + [100.18388671875002, 20.589111328125057], + [100.12968750000002, 20.372216796874994], + [100.12246093750005, 20.316650390625057], + [100.0036132812501, 20.37958984375001], + [99.9542968750001, 20.415429687500023], + [99.8903320312501, 20.424414062499977], + [99.82519531249997, 20.38447265625001], + [99.77333984375, 20.34130859375003], + [99.72011718750005, 20.32543945312497], + [99.63867187499997, 20.320458984375023], + [99.53164062500005, 20.342822265625045], + [99.45888671875005, 20.363037109375], + [99.44794921875004, 20.35205078124997], + [99.4875, 20.260644531250023], + [99.50166015625004, 20.187744140625], + [99.48593750000006, 20.14985351562501], + [99.45156250000005, 20.118310546874966], + [99.39921875000007, 20.093457031249983], + [99.33789062499997, 20.078906250000017], + [99.28369140624997, 20.080419921874977], + [99.19687500000012, 20.115136718750023], + [99.13076171875, 20.116601562499966], + [99.07421875000003, 20.09936523437503], + [99.0397460937501, 20.073632812500023], + [99.02070312500004, 20.041796875000017], + [98.98740234375006, 19.861376953125017], + [98.95800781249997, 19.804931640625], + [98.9166992187501, 19.77290039062504], + [98.87578125000007, 19.769580078125074], + [98.8195312500001, 19.778466796875023], + [98.76064453125, 19.771093750000034], + [98.4938476562501, 19.701318359375023], + [98.45498046875, 19.694433593750034], + [98.37128906250004, 19.68916015625004], + [98.29365234375004, 19.687255859375], + [98.23906250000002, 19.69067382812497], + [98.1110351562501, 19.762158203124983], + [98.04902343750004, 19.76972656250001], + [98.01503906250005, 19.74951171874997], + [97.99121093749997, 19.653710937499994], + [97.91640625000005, 19.592871093750034], + [97.816796875, 19.459960937500057], + [97.79355468750006, 19.26586914062503], + [97.80390625000004, 19.130468749999977], + [97.71416015625002, 18.99648437500005], + [97.70605468749997, 18.931787109374994], + [97.75400390625006, 18.620800781249983], + [97.74589843750002, 18.58818359374999], + [97.72773437500004, 18.572021484375], + [97.6715820312501, 18.56123046875001], + [97.57734375000004, 18.52871093750005], + [97.51513671874997, 18.497753906249955], + [97.48496093750006, 18.494238281250034], + [97.39707031250012, 18.517529296874983], + [97.37392578125, 18.51796875], + [97.38066406250002, 18.49428710937505], + [97.45078125000012, 18.359667968750074], + [97.523828125, 18.295898437500057], + [97.5993164062501, 18.30297851562497], + [97.63222656250005, 18.290332031250074], + [97.6224609375, 18.258007812499955], + [97.6515625000001, 18.173730468750023], + [97.71972656250003, 18.037402343750045], + [97.73994140625004, 17.93530273437503], + [97.69853515625007, 17.83354492187499], + [97.7064453125, 17.79711914062503], + [97.72910156250006, 17.775830078124955], + [97.79296875000003, 17.68125], + [97.92929687500006, 17.533300781250034], + [98.06308593750006, 17.37329101562503], + [98.17460937500007, 17.239892578125023], + [98.25654296875004, 17.147656249999983], + [98.4388671875, 16.975683593750034], + [98.47119140624997, 16.89501953125003], + [98.478125, 16.732226562500074], + [98.5231445312501, 16.63818359375], + [98.56474609375002, 16.570947265624994], + [98.59365234375, 16.514794921874994], + [98.66074218750006, 16.330419921875006], + [98.68925781250002, 16.30541992187497], + [98.83544921875003, 16.417578125], + [98.8693359375001, 16.39418945312505], + [98.88828125000006, 16.351904296875034], + [98.88847656250002, 16.298095703125], + [98.86552734375002, 16.237060546875], + [98.81796875000012, 16.180810546874994], + [98.59238281250006, 16.05068359375005], + [98.57402343750007, 15.938623046875051], + [98.55820312500006, 15.768603515625045], + [98.55449218750002, 15.559765624999955], + [98.56523437500007, 15.403564453125014], + [98.55693359375007, 15.367675781249986], + [98.53730468750004, 15.350683593749991], + [98.45214843750003, 15.357373046875026], + [98.32939453125007, 15.278564453125043], + [98.28613281250003, 15.271582031250034], + [98.23222656250007, 15.241357421875009], + [98.19101562500012, 15.204101562499972], + [98.17792968750004, 15.147412109374969], + [98.20214843749997, 14.97592773437502], + [98.24599609375005, 14.814746093750045], + [98.33212890625006, 14.696484375000026], + [98.40019531250002, 14.602978515624983], + [98.49501953125005, 14.472900390625043], + [98.57001953125004, 14.359912109375031], + [98.72119140625003, 14.235742187500037], + [98.93359374999997, 14.049853515625003], + [99.01464843749997, 13.947167968750051], + [99.08623046875007, 13.822753906250014], + [99.13681640625006, 13.716699218749994], + [99.15605468750007, 13.575781249999977], + [99.17167968750007, 13.496923828124977], + [99.176171875, 13.233056640625051], + [99.13710937500005, 13.17299804687498], + [99.10742187500003, 13.103515625000043], + [99.12392578125, 13.030761718750043], + [99.1735351562501, 12.961328125000023], + [99.1735351562501, 12.88193359375002], + [99.21982421875012, 12.73974609375], + [99.29736328124997, 12.652880859374974], + [99.37197265625, 12.594238281250028], + [99.40507812500002, 12.547900390625003], + [99.3942382812501, 12.473632812500057], + [99.41630859375007, 12.394824218749989], + [99.43242187500007, 12.309033203125011], + [99.46289062499997, 12.19023437499996], + [99.52294921875003, 12.089648437499989], + [99.61474609374997, 11.781201171875026], + [99.6125, 11.749658203124994], + [99.57285156250006, 11.687158203124966], + [99.51523437500006, 11.630664062500003], + [99.4779296875, 11.6125], + [99.44267578125002, 11.554394531250011], + [99.3587890625, 11.389453124999974], + [99.1901367187501, 11.105273437499989], + [99.02539062500003, 10.919970703124989], + [98.887109375, 10.788330078125], + [98.78691406250002, 10.708447265624969], + [98.7572265625, 10.660937499999974], + [98.7572265625, 10.623583984375003], + [98.77539062499997, 10.557031250000037], + [98.76835937500007, 10.430859375], + [98.746875, 10.350830078125043], + [98.7184570312501, 10.266015625], + [98.70253906250005, 10.19038085937504], + [98.65800781250002, 10.179052734375034], + [98.56259765625006, 10.034960937499989], + [98.52128906250007, 10.107226562499974], + [98.496875, 10.182519531250037], + [98.52304687500006, 10.35312], + [98.46494140625006, 10.675830078124989], + [98.50097656250003, 10.718945312499983], + [98.53564453124997, 10.740673828124969], + [98.59882812500004, 10.864404296875037], + [98.67558593750007, 10.986914062500034], + [98.68261718749997, 11.133105468749974], + [98.74472656250012, 11.24038085937498], + [98.73007812500006, 11.329980468750037], + [98.73330078125, 11.435253906249983], + [98.74638671875002, 11.521289062500017], + [98.74140625000004, 11.591699218749966], + [98.7907226562501, 11.665087890625003], + [98.87597656250003, 11.719726562500028], + [98.84023437500005, 11.739257812500014], + [98.80478515625012, 11.779248046874983], + [98.69365234375002, 11.71835937500002], + [98.63632812500006, 11.738378906250006], + [98.62490234375005, 11.801464843749983], + [98.6390625, 11.869140625], + [98.64492187500005, 11.910302734375037], + [98.68945312499997, 11.956738281249997], + [98.68632812500002, 12.047119140625028], + [98.66386718750007, 12.126708984374986], + [98.69628906250003, 12.225244140624994], + [98.63056640625004, 12.225488281250037], + [98.6002929687501, 12.2453125], + [98.61914062500003, 12.3], + [98.67871093749997, 12.348486328124963], + [98.62441406250005, 12.440722656250017], + [98.66464843750006, 12.53994140624998], + [98.66318359375012, 12.66240234374996], + [98.63564453125, 12.770507812500057], + [98.63710937500005, 12.848242187499991], + [98.5951171875, 12.986035156249997], + [98.57597656250002, 13.161914062500031], + [98.48710937500002, 13.29306640625002], + [98.42128906250005, 13.483789062499966], + [98.24541015625002, 13.733496093750034], + [98.2484375, 13.84038085937506], + [98.23896484375004, 13.934472656250037], + [98.20039062500004, 13.980175781250026], + [98.14951171875012, 13.647607421875037], + [98.11064453125007, 13.712890625000014], + [98.09824218750012, 13.898339843750051], + [98.07265625, 13.98647460937498], + [98.10019531250006, 14.161523437500023], + [97.99843750000005, 14.335302734374991], + [97.97656250000003, 14.461474609375017], + [97.90976562500012, 14.652685546874991], + [97.92929687500006, 14.695556640625014], + [98.01875, 14.652587890625057], + [97.93652343749997, 14.763916015625], + [97.86914062499997, 14.738720703125011], + [97.81230468750007, 14.858935546874989], + [97.79980468749997, 15.184912109374963], + [97.74375000000012, 15.306787109375023], + [97.77421875000002, 15.430957031250003], + [97.7103515625, 15.875537109375074], + [97.58427734375007, 16.019580078125017], + [97.60927734375, 16.143847656250017], + [97.64062, 16.253857421874955], + [97.63369140625, 16.457666015624994], + [97.66464843750006, 16.52045898437501], + [97.72597656250005, 16.56855468750004], + [97.66845703124997, 16.551611328125034], + [97.61962890624997, 16.537207031250034], + [97.5050781250001, 16.525292968750023], + [97.37587890625005, 16.52294921874997], + [97.33105468749997, 16.671777343750023], + [97.26748046875, 16.743115234374983], + [97.21171875000002, 16.892578125000057], + [97.17832031250012, 17.06201171875003], + [97.20019531249997, 17.095410156249983], + [97.10019531250012, 17.16455078125003], + [97.07451171875002, 17.206933593749966], + [96.9701171875, 17.317333984374983], + [96.85146484375005, 17.401025390624994], + [96.87773437500007, 17.3421875], + [96.90976562500012, 17.304833984375023], + [96.85087890625002, 17.202929687500045], + [96.90859375000005, 17.03095703125001], + [96.85800781250006, 16.921191406250017], + [96.81064453125006, 16.778369140625045], + [96.76542968750002, 16.710351562499966], + [96.62246093750005, 16.563916015624983], + [96.50664062500007, 16.51435546875001], + [96.43115234374997, 16.504931640625045], + [96.36435546875012, 16.52050781250003], + [96.28222656249997, 16.595996093750017], + [96.262109375, 16.65913085937501], + [96.24892578125005, 16.765332031249983], + [96.22031250000006, 16.780566406250074], + [96.18906250000012, 16.768310546875057], + [96.2376953125, 16.63125], + [96.23671875000005, 16.567431640625074], + [96.32431640625006, 16.444433593750063], + [96.29306640625006, 16.410058593749994], + [96.13505859375002, 16.342529296875], + [96.08095703125005, 16.353369140624977], + [96.04287109375, 16.339941406250006], + [96.03212890625005, 16.28461914062501], + [96.01230468750006, 16.253710937500017], + [95.76328125000006, 16.169042968750006], + [95.71142578124997, 16.073388671874966], + [95.67949218750002, 15.976757812499983], + [95.55566406250003, 15.83784179687504], + [95.38955078125005, 15.722753906250034], + [95.34843750000002, 15.729296875000017], + [95.30146484375004, 15.756152343749989], + [95.3078125000001, 15.880419921874989], + [95.36474609374997, 15.985449218749977], + [95.34677734375012, 16.09760742187501], + [95.33300781249997, 16.033251953125045], + [95.22587890625007, 15.876806640625063], + [95.17695312500004, 15.825683593750028], + [95.07832031250004, 15.839160156250017], + [94.9425781250001, 15.818261718750023], + [94.89121093750012, 15.979101562500034], + [94.89218750000006, 16.038183593749977], + [94.88222656250005, 16.08793945312499], + [94.89785156250005, 16.14082031250001], + [94.89316406250006, 16.182812499999955], + [94.86015625000002, 16.102441406250023], + [94.84775390625006, 16.032861328124966], + [94.79814453125007, 15.97109375], + [94.66152343750005, 15.904394531250006], + [94.65625, 15.988769531250057], + [94.65136718750003, 16.06484375], + [94.68076171875006, 16.13330078125], + [94.67656250000007, 16.242041015625034], + [94.71992187500004, 16.39873046874999], + [94.71660156250007, 16.452490234375006], + [94.70332031250004, 16.511914062499955], + [94.67900390625007, 16.425585937500045], + [94.6652343750001, 16.33613281250001], + [94.63769531249997, 16.30908203125003], + [94.5875, 16.28881835937497], + [94.49570312500012, 16.186132812500006], + [94.4416015625001, 16.094384765624966], + [94.2990234375001, 16.007617187500074], + [94.22382812500004, 16.016455078125006], + [94.21425781250005, 16.126611328124966], + [94.27128906250002, 16.517285156249983], + [94.3273437500001, 16.572167968749966], + [94.35341796875, 16.639941406250017], + [94.4, 16.868164062500057], + [94.45244140625007, 16.954492187499966], + [94.47314453125003, 17.135449218749983], + [94.4943359375001, 17.166552734375017], + [94.56445312499997, 17.308544921874983], + [94.58896484375006, 17.5693359375], + [94.56005859374997, 17.69897460937503], + [94.4943359375001, 17.82460937500005], + [94.43076171875012, 18.20166015625003], + [94.2658203125001, 18.507226562500023], + [94.25214843750004, 18.609179687500017], + [94.17070312500007, 18.73242187499997], + [94.24570312500006, 18.741162109374983], + [94.09130859374997, 18.849218750000063], + [94.07001953125004, 18.893408203125006], + [94.03896484375005, 19.146191406249983], + [94.04492187500003, 19.287402343750074], + [94.02246093749997, 19.268798828125], + [94.00156250000006, 19.18178710937505], + [93.94101562500006, 19.146093750000063], + [93.96806640625007, 18.99506835937501], + [93.96132812500005, 18.958398437500023], + [93.92919921874997, 18.89965820312503], + [93.80009765625007, 18.960595703125023], + [93.70546875000005, 19.026904296875017], + [93.59814453125003, 19.1884765625], + [93.49306640625005, 19.369482421875006], + [93.53056640625002, 19.397558593750034], + [93.57861328124997, 19.401171875000074], + [93.72802734375003, 19.266503906249994], + [93.82490234375004, 19.238476562499955], + [93.8861328125, 19.27192382812501], + [93.96201171875006, 19.329345703125], + [93.99814453125006, 19.440869140624983], + [93.96074218750002, 19.48168945312503], + [93.8878906250001, 19.50390625000003], + [93.8395507812501, 19.534130859374983], + [93.76992187500005, 19.609570312499983], + [93.76103515625007, 19.648046875], + [93.73955078125007, 19.697265625], + [93.66875, 19.731982421875045], + [93.61171875000005, 19.776074218749983], + [93.6598632812501, 19.854150390624966], + [93.70703125000003, 19.912158203125074], + [93.58183593750007, 19.909570312499994], + [93.43906250000012, 20.009423828124994], + [93.4095703125, 20.03833007812503], + [93.36230468750003, 20.05830078125001], + [93.25, 20.070117187500017], + [93.15664062500005, 20.04077148437497], + [93.19902343750007, 19.898339843750023], + [93.190625, 19.851220703124994], + [93.12949218750012, 19.858007812500063], + [93.00195312499997, 20.074853515624994], + [93.04033203125007, 20.129785156249994], + [93.09550781250002, 20.18134765625001], + [93.06835937500003, 20.18867187500001], + [93.01513671875003, 20.18525390625001], + [93.06679687500005, 20.377636718749955], + [93.03535156250004, 20.406152343749994], + [93.01875, 20.346044921875006], + [92.99072265625003, 20.287988281249994], + [92.88212890625007, 20.152148437500017], + [92.82832031250004, 20.177587890625063], + [92.79121093750004, 20.21142578125003], + [92.84355468750002, 20.28261718750005], + [92.87167968750006, 20.30175781250003], + [92.89111328124997, 20.34033203125], + [92.85068359375006, 20.41484374999999], + [92.78691406250007, 20.469042968750017], + [92.73564453125007, 20.56269531250001], + [92.70898437499997, 20.56396484375], + [92.7326171875001, 20.45336914062503], + [92.72285156250004, 20.29560546875004], + [92.60800781250012, 20.469873046874994], + [92.37832031250005, 20.717578125000017], + [92.32412109375, 20.791845703125063], + [92.3119140625, 20.86445312500001], + [92.28623046875012, 20.93159179687501], + [92.26845703125005, 21.004687500000074], + [92.26445312500002, 21.06147460937501], + [92.21474609375, 21.11269531250005], + [92.19199218750006, 21.202246093750006], + [92.17958984375005, 21.293115234375023], + [92.2082031250001, 21.357861328124983], + [92.2796875, 21.427587890624977], + [92.33056640624997, 21.439794921874977], + [92.37265625000012, 21.409033203125034], + [92.471875, 21.362988281249983], + [92.53916015625012, 21.31982421874997], + [92.56855468750004, 21.263330078124994], + [92.59980468750004, 21.270166015624966], + [92.63164062500002, 21.306201171875045], + [92.62529296875007, 21.35073242187505], + [92.5934570312501, 21.46733398437499], + [92.58427734375007, 21.609033203124994], + [92.58281250000002, 21.940332031249994], + [92.57490234375004, 21.978076171875045], + [92.63037109374997, 22.011328124999977], + [92.65263671875007, 22.04931640625], + [92.67470703125, 22.10600585937499], + [92.68896484374997, 22.130957031250006], + [92.72099609375002, 22.132421875000063], + [92.77138671875, 22.104785156250017], + [92.85429687500002, 22.010156250000023], + [92.90947265625007, 21.988916015625023], + [92.9645507812501, 22.003759765625034], + [93.02197265624997, 22.14570312500001], + [93.04296874999997, 22.183984375], + [93.07060546875002, 22.20942382812501], + [93.121484375, 22.205175781250034], + [93.15117187500002, 22.230615234374994], + [93.16240234375007, 22.291894531250023], + [93.16201171875, 22.360205078125006], + [93.10507812500012, 22.54711914062497], + [93.08818359375007, 22.63325195312504], + [93.07871093750006, 22.71821289062501], + [93.11425781250003, 22.80571289062499], + [93.1625, 22.90795898437503], + [93.15097656250006, 22.99731445312503], + [93.16416015625006, 23.032031250000017], + [93.20390625000002, 23.03701171875005], + [93.25351562500006, 23.015478515625006], + [93.3080078125, 23.030371093750034], + [93.34941406250007, 23.08496093750003], + [93.36601562500007, 23.132519531249955], + [93.3913085937501, 23.339160156250045], + [93.40810546875005, 23.528027343749983], + [93.41494140625, 23.68208007812501], + [93.37255859374997, 23.77416992187503], + [93.30732421875004, 24.021875], + [93.32626953125006, 24.064208984375057], + [93.35556640625006, 24.074121093750023], + [93.45214843750003, 23.987402343750034], + [93.49375, 23.97285156250001], + [93.56406250000012, 23.98608398437503], + [93.63330078124997, 24.00537109374997], + [93.68339843750007, 24.00654296875004], + [93.75585937500003, 23.976904296875034], + [93.85546874999997, 23.943896484375045], + [94.01083984375006, 23.902929687500063], + [94.07480468750006, 23.8720703125], + [94.1276367187501, 23.87646484375], + [94.1703125, 23.972656250000057], + [94.21972656250003, 24.113183593749994], + [94.29306640625012, 24.321875], + [94.37724609375002, 24.473730468750006], + [94.39941406250003, 24.51406250000005], + [94.49316406250003, 24.637646484374983], + [94.58408203125006, 24.767236328125023], + [94.66328125000004, 24.931005859374977], + [94.70761718750012, 25.048730468749994], + [94.70371093750012, 25.097851562499955], + [94.67529296875003, 25.138574218749994], + [94.615625, 25.164599609375045], + [94.56650390625006, 25.191503906250034], + [94.55302734375007, 25.215722656249994], + [94.55439453125004, 25.243457031250045], + [94.57988281250002, 25.31982421874997], + [94.62285156250007, 25.410009765625063], + [94.66777343750007, 25.458886718749966], + [94.78583984375004, 25.519335937500017], + [94.86113281250002, 25.59721679687499], + [94.94570312500005, 25.700244140625017], + [94.99199218750002, 25.77045898437504], + [95.01523437500006, 25.912939453125006], + [95.04072265625004, 25.941308593750023], + [95.0929687500001, 25.98730468749997], + [95.13242187500006, 26.041259765625057], + [95.12929687500005, 26.070410156250034], + [95.10839843749997, 26.091406250000034], + [95.06894531250006, 26.19111328125001], + [95.05087890625006, 26.347265625000034], + [95.0597656250001, 26.473974609375006], + [95.08945312500006, 26.525488281250006], + [95.12871093750002, 26.597265624999977], + [95.20146484375007, 26.641406250000017], + [95.30507812500005, 26.672265625], + [95.46386718749997, 26.75605468750001], + [95.73837890625006, 26.950439453125], + [95.83730468750005, 27.013818359375023], + [95.90527343750003, 27.046630859375057], + [95.9708984375001, 27.128076171875023], + [96.06142578125005, 27.21708984374996], + [96.19082031250005, 27.26127929687499], + [96.27421875000007, 27.278369140625017], + [96.66572265625004, 27.339257812499994], + [96.7316406250001, 27.33149414062501], + [96.79785156249997, 27.29619140624999], + [96.8802734375, 27.177832031250034], + [96.95341796875002, 27.13330078125003], + [97.03808593749997, 27.10205078124997], + [97.10205078125003, 27.11542968750004], + [97.10371093750004, 27.16333007812503], + [96.90195312500012, 27.439599609374994], + [96.88359375000002, 27.514843749999955], + [96.87685546875, 27.586718750000045], + [96.89970703125002, 27.643847656250045], + [96.96279296875, 27.698291015625017], + [97.04970703125005, 27.760009765625], + [97.15781250000012, 27.83686523437501], + [97.22607421874997, 27.890039062500023], + [97.30615234374997, 27.907080078125034], + [97.3351562500001, 27.937744140625057], + [97.34355468750002, 27.982324218749994], + [97.33916015625002, 28.030859375], + [97.30273437499997, 28.08598632812496], + [97.3102539062501, 28.15522460937504], + [97.3224609375001, 28.21796875000004], + [97.35644531249997, 28.254492187500006], + [97.43144531250002, 28.353906250000023], + [97.4777343750001, 28.425634765625063], + [97.5021484375001, 28.456347656250017], + [97.53789062500002, 28.510205078124983], + [97.59921875000006, 28.51704101562504], + [97.65888671875004, 28.5], + [97.69462890625007, 28.469335937500006], + [97.73007812500006, 28.407128906250023] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Montenegro", + "iso_a2": "ME", + "iso_a3": "MNE", + "iso_n3": "499", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [19.1943359375, 43.53330078125], + [19.19160156250001, 43.521044921874996], + [19.19648437500001, 43.485009765624994], + [19.21875, 43.449951171875], + [19.298242187500023, 43.413964843749994], + [19.414648437500006, 43.342822265624996], + [19.551562500000017, 43.212255859375], + [19.61445312500001, 43.1734375], + [19.670996093750006, 43.163964843749994], + [19.781152343750023, 43.109765625], + [19.858007812500006, 43.096533203125], + [19.94404296875001, 43.081640625], + [20.167871093750023, 42.968505859375], + [20.268457031250023, 42.935449218749994], + [20.339941406250006, 42.892871093749996], + [20.34765625, 42.852783203125], + [20.344335937500006, 42.827929687499996], + [20.215136718750017, 42.798828125], + [20.19257812500001, 42.754638671875], + [20.129980468750006, 42.759765625], + [20.054296875, 42.760058593749996], + [20.02949218750001, 42.73203125], + [20.065722656250017, 42.685839843749996], + [20.089257812500023, 42.63154296875], + [20.0703125, 42.557080078125], + [20.06396484375, 42.547265625], + [20.045703125000017, 42.54990234375], + [19.9390625, 42.506689453125], + [19.859765625000023, 42.486328125], + [19.78828125000001, 42.476171875], + [19.754492187500006, 42.496923828125], + [19.73779296875, 42.525146484375], + [19.74072265625, 42.60693359375], + [19.727832031250017, 42.634521484375], + [19.703417968750017, 42.64794921875], + [19.65449218750001, 42.628564453124994], + [19.597460937500017, 42.5654296875], + [19.54453125, 42.491943359375], + [19.465136718750017, 42.415380859375], + [19.39960937500001, 42.34189453125], + [19.329003906250023, 42.249267578125], + [19.280664062500023, 42.17255859375], + [19.330859375000017, 42.129296875], + [19.361425781250006, 42.069091796875], + [19.352148437500006, 42.0240234375], + [19.361132812500017, 41.99775390625], + [19.345507812500017, 41.918847656249994], + [19.342382812500006, 41.869091796875], + [19.186425781250023, 41.948632812499994], + [19.12226562500001, 42.060498046875], + [18.89423828125001, 42.249462890625], + [18.632910156250006, 42.378076171874994], + [18.619042968750023, 42.398388671875], + [18.633398437500006, 42.423144531249996], + [18.645898437500023, 42.442724609375], + [18.591601562500017, 42.444189453125], + [18.553515625000017, 42.428515625], + [18.517480468750023, 42.432910156249996], + [18.476660156250006, 42.481103515624994], + [18.438085937500006, 42.52294921875], + [18.436328125000017, 42.559716796874994], + [18.453906250000017, 42.564501953124996], + [18.480078125, 42.57919921875], + [18.534960937500017, 42.6201171875], + [18.5458984375, 42.6416015625], + [18.543261718750017, 42.674169921875], + [18.46601562500001, 42.777246093749994], + [18.455078125, 42.844091796875], + [18.44384765625, 42.96845703125], + [18.46015625000001, 42.997900390625], + [18.48847656250001, 43.012158203125], + [18.623632812500006, 43.027685546875], + [18.621875, 43.124609375], + [18.629980468750006, 43.153662109375], + [18.656835937500006, 43.1939453125], + [18.674218750000023, 43.230810546875], + [18.74921875000001, 43.283544921875], + [18.85107421875, 43.346337890624994], + [18.895605468750006, 43.348193359374996], + [18.934667968750006, 43.339453125], + [18.97871093750001, 43.285400390625], + [19.026660156250017, 43.292431640625], + [19.03671875, 43.357324218749994], + [18.97382812500001, 43.4423828125], + [18.940234375000017, 43.496728515624994], + [18.95068359375, 43.526660156249996], + [18.97421875, 43.542333984375], + [19.0283203125, 43.532519531249996], + [19.080078125, 43.517724609374994], + [19.11279296875, 43.527734375], + [19.164355468750017, 43.535449218749996], + [19.1943359375, 43.53330078125] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Mongolia", + "iso_a2": "MN", + "iso_a3": "MNG", + "iso_n3": "496", + "continent": "Asia" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [116.68330078125001, 49.823779296874996], + [116.58974609375002, 49.684814453125], + [116.40214843749999, 49.406201171875], + [116.24335937500001, 49.170361328125], + [116.15966796875, 49.037451171875], + [116.09824218750003, 48.9361328125], + [116.034375, 48.8400390625], + [116.02548828125003, 48.782275390624996], + [115.95380859375001, 48.689355468749994], + [115.82050781250001, 48.57724609375], + [115.79169921875001, 48.455712890624994], + [115.79658203125001, 48.346337890624994], + [115.78554687500002, 48.2482421875], + [115.63945312499999, 48.18623046875], + [115.52509765625001, 48.130859375], + [115.5576171875, 47.94501953125], + [115.61640625000001, 47.874804687499996], + [115.71171874999999, 47.79892578125], + [115.81171875000001, 47.738232421875], + [115.89824218749999, 47.686914062499994], + [115.99384765625001, 47.711328125], + [116.07480468750003, 47.78955078125], + [116.23115234375001, 47.858203125], + [116.31718749999999, 47.85986328125], + [116.37822265624999, 47.844042968749996], + [116.51347656249999, 47.83955078125], + [116.65195312500003, 47.864501953125], + [116.76054687499999, 47.869775390624994], + [116.90117187499999, 47.853076171874996], + [116.95166015625, 47.836572265624994], + [117.06972656250002, 47.806396484375], + [117.19707031249999, 47.740283203124996], + [117.28593749999999, 47.666357421875], + [117.35078125000001, 47.652197265625], + [117.38398437500001, 47.675732421875], + [117.455078125, 47.741357421874994], + [117.55537109375001, 47.8046875], + [117.67666015625002, 47.90830078125], + [117.76835937499999, 47.987890625], + [117.84042968750003, 47.999853515625], + [117.97919921875001, 47.999609375], + [118.04189453125002, 48.018945312499994], + [118.14707031250003, 48.02890625], + [118.23964843750002, 47.99951171875], + [118.49843750000002, 47.983984375], + [118.56777343750002, 47.943261718749994], + [118.69052734375003, 47.822265625], + [118.75996093750001, 47.757617187499996], + [118.88027343750002, 47.72509765625], + [118.953125, 47.702929687499996], + [119.017578125, 47.685351562499996], + [119.08193359375002, 47.654150390625], + [119.09726562500003, 47.616259765624996], + [119.12294921875002, 47.558496093749994], + [119.16240234374999, 47.525195312499996], + [119.23525390625002, 47.492578125], + [119.29082031249999, 47.47265625], + [119.30859375, 47.430712890624996], + [119.32597656249999, 47.41015625], + [119.37666015625001, 47.380859375], + [119.52695312500003, 47.255908203124996], + [119.60019531250003, 47.222460937499996], + [119.71113281250001, 47.15], + [119.75722656250002, 47.0900390625], + [119.75986328125003, 47.027001953124994], + [119.78847656250002, 46.978808593749996], + [119.86269531250002, 46.906591796875], + [119.89785156250002, 46.8578125], + [119.88417968750002, 46.791455078125], + [119.89589843750002, 46.732861328125], + [119.8671875, 46.672167968749996], + [119.74746093750002, 46.627197265625], + [119.70664062500003, 46.606005859374996], + [119.62021484375003, 46.603955078125], + [119.47402343750002, 46.62666015625], + [119.33183593749999, 46.613818359374996], + [119.162109375, 46.638671875], + [119.02851562500001, 46.6921875], + [118.95712890625003, 46.73486328125], + [118.84394531250001, 46.760205078125], + [118.79033203124999, 46.7470703125], + [118.72294921874999, 46.69189453125], + [118.64873046874999, 46.70166015625], + [118.58046875000002, 46.69189453125], + [118.40439453125003, 46.703173828124996], + [118.30869140625003, 46.717041015625], + [118.15683593750003, 46.678564453125], + [118.0712890625, 46.6666015625], + [117.91044921874999, 46.6193359375], + [117.8134765625, 46.5376953125], + [117.7412109375, 46.5181640625], + [117.67109375000001, 46.5220703125], + [117.62050781250002, 46.552001953125], + [117.546875, 46.58828125], + [117.43808593750003, 46.586230468749996], + [117.40556640624999, 46.5708984375], + [117.39218750000003, 46.53759765625], + [117.35634765625002, 46.436669921874994], + [117.35693359375, 46.39130859375], + [117.33339843750002, 46.36201171875], + [117.26904296875, 46.35224609375], + [117.15595703125001, 46.355078125], + [116.97880859374999, 46.361767578125], + [116.85908203125001, 46.387939453125], + [116.78701171875002, 46.37666015625], + [116.68886718750002, 46.32197265625], + [116.61933593750001, 46.3130859375], + [116.56259765625003, 46.289794921875], + [116.51669921875003, 46.20908203125], + [116.44482421875, 46.1587890625], + [116.35761718750001, 46.096582031249994], + [116.26455078125002, 45.963037109374994], + [116.21298828125003, 45.8869140625], + [116.22910156250003, 45.845751953124996], + [116.240625, 45.79599609375], + [116.19765625000002, 45.73935546875], + [116.10986328125, 45.68671875], + [116.03955078125, 45.676953125], + [115.93417968750003, 45.626171875], + [115.78916015625003, 45.534814453124994], + [115.68105468750002, 45.458251953125], + [115.53945312500002, 45.439501953124996], + [115.439453125, 45.419970703124996], + [115.21748046875001, 45.39619140625], + [115.16259765625, 45.390234375], + [114.91923828124999, 45.378271484375], + [114.73876953125, 45.41962890625], + [114.64433593749999, 45.41328125], + [114.56015625000003, 45.389990234375], + [114.51718750000003, 45.364599609375], + [114.50224609374999, 45.316308593749994], + [114.4873046875, 45.271728515625], + [114.41914062500001, 45.202587890625], + [114.28105468749999, 45.110888671874996], + [114.16738281250002, 45.049853515624996], + [114.08027343750001, 44.971142578125], + [114.0302734375, 44.942578125], + [113.93085937500001, 44.9123046875], + [113.87705078125003, 44.89619140625], + [113.75214843750001, 44.825927734375], + [113.65263671874999, 44.763476562499996], + [113.58701171875003, 44.745703125], + [113.50791015625003, 44.762353515624994], + [113.45566406250003, 44.767431640625], + [113.30097656250001, 44.791650390624994], + [113.19609374999999, 44.794824218749994], + [113.04941406250003, 44.810351562499996], + [112.70673828125001, 44.883447265624994], + [112.59677734375003, 44.91767578125], + [112.49931640624999, 45.0109375], + [112.41132812500001, 45.058203125], + [112.29208984375003, 45.063037109374996], + [112.11289062500003, 45.062939453125], + [112.03261718750002, 45.081640625], + [111.89804687500003, 45.0640625], + [111.75107421875003, 44.96953125], + [111.68144531249999, 44.899169921875], + [111.62128906250001, 44.8271484375], + [111.54746093750003, 44.672900390624996], + [111.51474609375003, 44.56982421875], + [111.48945312500001, 44.511572265625], + [111.41093749999999, 44.419189453125], + [111.40224609375002, 44.36728515625], + [111.42958984375002, 44.32236328125], + [111.48623046875002, 44.271630859374994], + [111.51972656250001, 44.19189453125], + [111.60263671875003, 44.10712890625], + [111.68378906250001, 44.04111328125], + [111.8369140625, 43.93466796875], + [111.88027343750002, 43.87890625], + [111.93173828125003, 43.81494140625], + [111.94287109375, 43.75244140625], + [111.93320312500003, 43.71142578125], + [111.878125, 43.68017578125], + [111.77109375000003, 43.664599609374996], + [111.7197265625, 43.621142578124996], + [111.64082031250001, 43.56318359375], + [111.54736328125, 43.4962890625], + [111.50351562500003, 43.4927734375], + [111.45107421875002, 43.474902343749996], + [111.18681640624999, 43.391992187499994], + [111.08652343750003, 43.36875], + [111.00722656250002, 43.34140625], + [110.91328125000001, 43.256884765624996], + [110.83955078125001, 43.194091796875], + [110.74853515625, 43.110791015625], + [110.70859375000003, 43.073876953124994], + [110.62753906250003, 42.990527343749996], + [110.52089843750002, 42.895263671875], + [110.46171874999999, 42.844140625], + [110.42958984375002, 42.81357421875], + [110.400390625, 42.773681640625], + [110.28886718749999, 42.742724609374996], + [110.196875, 42.710009765624996], + [110.05800781250002, 42.660595703125], + [109.85878906250002, 42.60625], + [109.69804687499999, 42.55380859375], + [109.59550781249999, 42.510546875], + [109.44316406249999, 42.455957031249994], + [109.33984375, 42.438378906249994], + [109.13164062499999, 42.440576171874994], + [108.87451171875, 42.42646484375], + [108.68730468749999, 42.41611328125], + [108.54648437500003, 42.429296875], + [108.333984375, 42.436767578125], + [108.17119140624999, 42.447314453124996], + [108.06230468749999, 42.427197265625], + [107.80595703124999, 42.405859375], + [107.74873046875001, 42.4009765625], + [107.29238281250002, 42.349267578124994], + [107.09072265625002, 42.321533203125], + [106.90605468749999, 42.308886718749996], + [106.77001953125, 42.288720703124994], + [106.69316406249999, 42.263574218749994], + [106.5791015625, 42.22734375], + [106.51875, 42.211572265624994], + [106.31718749999999, 42.140576171875], + [105.86757812500002, 41.993994140625], + [105.56640625, 41.87509765625], + [105.51708984375, 41.854736328125], + [105.31435546875002, 41.770898437499994], + [105.19707031249999, 41.738037109375], + [105.11542968750001, 41.66328125], + [105.05058593749999, 41.61591796875], + [104.98203125000003, 41.595507812499996], + [104.8603515625, 41.64375], + [104.77363281250001, 41.641162109374996], + [104.49824218750001, 41.65869140625], + [104.49824218750001, 41.877001953124996], + [104.30517578125, 41.846142578125], + [103.99726562500001, 41.79697265625], + [103.71113281250001, 41.751318359375], + [103.44970703125, 41.855859375], + [103.24785156249999, 41.936572265624996], + [103.07285156250003, 42.00595703125], + [102.80683593750001, 42.052001953125], + [102.5751953125, 42.092089843749996], + [102.15664062500002, 42.158105468749994], + [101.97294921874999, 42.215869140624996], + [101.8798828125, 42.292333984375], + [101.7138671875, 42.4658203125], + [101.65996093749999, 42.500048828124996], + [101.5791015625, 42.52353515625], + [101.49531250000001, 42.53876953125], + [101.31376953124999, 42.537890625], + [101.09199218750001, 42.551318359374996], + [100.77255859375003, 42.587792968749994], + [100.51904296875, 42.616796875], + [100.08632812500002, 42.670751953125], + [99.98378906250002, 42.67734375], + [99.75742187500003, 42.629443359374996], + [99.46787109375003, 42.568212890625], + [98.946875, 42.6162109375], + [98.71630859375, 42.638720703124996], + [98.24824218750001, 42.684521484375], + [97.71894531250001, 42.736279296875], + [97.20566406250003, 42.789794921875], + [96.8330078125, 42.76025390625], + [96.62529296874999, 42.74384765625], + [96.38544921875001, 42.720361328124994], + [96.35234374999999, 42.74677734375], + [96.34248046875001, 42.84931640625], + [96.29951171875001, 42.9287109375], + [96.16845703125, 43.014501953125], + [96.08027343750001, 43.096142578125], + [95.9125, 43.206494140625], + [95.85957031250001, 43.2759765625], + [95.84199218750001, 43.383691406249994], + [95.68730468749999, 43.6640625], + [95.59121093750002, 43.85361328125], + [95.56718749999999, 43.892236328124994], + [95.52558593750001, 43.953955078125], + [95.47128906250003, 43.986181640625], + [95.3564453125, 44.00595703125], + [95.32558593750002, 44.039355468749996], + [95.32558593750002, 44.104882812499994], + [95.34365234375002, 44.19541015625], + [95.36679687500003, 44.261523437499996], + [95.35029296875001, 44.278076171875], + [95.0498046875, 44.259423828124994], + [94.86601562499999, 44.3033203125], + [94.71201171875003, 44.350830078125], + [94.49433593750001, 44.472509765625], + [94.36474609375, 44.519482421875], + [94.19931640625003, 44.645166015624994], + [93.95791015625002, 44.674951171874994], + [93.8681640625, 44.72421875], + [93.75527343750002, 44.831933593749994], + [93.65644531250001, 44.9009765625], + [93.51621093750003, 44.944482421874994], + [93.29433593750002, 44.983154296875], + [92.916015625, 45.020166015624994], + [92.78789062499999, 45.0357421875], + [92.57890624999999, 45.010986328125], + [92.423828125, 45.008935546874994], + [92.17265624999999, 45.03525390625], + [92.02978515625, 45.068505859374994], + [91.85283203124999, 45.0693359375], + [91.73779296875, 45.0689453125], + [91.584375, 45.076513671875], + [91.51005859374999, 45.0982421875], + [91.44101562500003, 45.124755859375], + [91.31210937500003, 45.118115234375], + [91.22177734375003, 45.14453125], + [91.1376953125, 45.1939453125], + [91.05, 45.217431640624994], + [90.95361328125, 45.21591796875], + [90.91396484375002, 45.1939453125], + [90.87724609374999, 45.19609375], + [90.85322265625001, 45.262890625], + [90.76318359375, 45.370654296874996], + [90.74960937500003, 45.4189453125], + [90.69443359375003, 45.474658203124996], + [90.66181640625001, 45.525244140625], + [90.67070312499999, 45.595166015625], + [90.70966796875001, 45.730810546875], + [90.7958984375, 45.853515625], + [90.85244140625002, 45.885400390624994], + [90.88710937500002, 45.921630859375], + [90.95976562499999, 45.98505859375], + [91.00175781249999, 46.035791015624994], + [90.99677734375001, 46.10498046875], + [90.94755859374999, 46.177294921874996], + [90.91152343750002, 46.270654296874994], + [90.91826171874999, 46.324267578124996], + [90.97148437499999, 46.387988281249996], + [91.03388671875001, 46.52900390625], + [91.02890625000003, 46.566064453124994], + [91.00429687500002, 46.595751953124996], + [90.99785156249999, 46.661083984375], + [90.98574218750002, 46.7490234375], + [90.91054687500002, 46.883251953125], + [90.86992187499999, 46.954492187499994], + [90.79902343750001, 46.98515625], + [90.71552734375001, 47.003857421875], + [90.64335937499999, 47.10029296875], + [90.55292968750001, 47.214013671874994], + [90.49619140625003, 47.28515625], + [90.47646484375002, 47.32880859375], + [90.46748046875001, 47.408154296875], + [90.42519531250002, 47.5041015625], + [90.38066406249999, 47.556640625], + [90.34746093749999, 47.596972656249996], + [90.33066406250003, 47.655175781249994], + [90.31328124999999, 47.676171875], + [90.19101562500003, 47.702099609375], + [90.10322265625001, 47.745410156249996], + [90.06660156250001, 47.803564453125], + [90.05390625000001, 47.850488281249994], + [90.02792968750003, 47.877685546875], + [89.95869140625001, 47.886328125], + [89.91044921874999, 47.8443359375], + [89.83134765624999, 47.823291015624996], + [89.77812, 47.827001953125], + [89.7255859375, 47.852490234375], + [89.69316406249999, 47.879150390625], + [89.63847656249999, 47.909082031249994], + [89.56093750000002, 48.003955078124996], + [89.47919921875001, 48.029052734375], + [89.32988281249999, 48.024853515625], + [89.1962890625, 47.980908203125], + [89.115625, 47.987695312499994], + [89.04765624999999, 48.0025390625], + [88.97109375000002, 48.049951171874994], + [88.91777343749999, 48.089013671874994], + [88.83828125000002, 48.101708984374994], + [88.68183593750001, 48.170556640624994], + [88.57597656249999, 48.220166015625], + [88.56679687500002, 48.317431640624996], + [88.51708984375, 48.38447265625], + [88.41396484375002, 48.40341796875], + [88.30996093750002, 48.472070312499994], + [88.158203125, 48.509082031249996], + [88.06259765625003, 48.537841796875], + [87.97968750000001, 48.555126953125], + [87.96738281250003, 48.5810546875], + [87.97226562500003, 48.603320312499996], + [88.01064453125002, 48.640429687499996], + [88.05019531250002, 48.675048828125], + [88.06005859375, 48.707177734374994], + [88.02792968750003, 48.735595703125], + [87.94218749999999, 48.765283203124994], + [87.83183593749999, 48.791650390624994], + [87.80917968750003, 48.835742187499996], + [87.7431640625, 48.881640625], + [87.75468749999999, 48.9185546875], + [87.80683593750001, 48.9455078125], + [87.85986328125, 48.96552734375], + [87.87216796875003, 49.000146484374994], + [87.83466796875001, 49.03193359375], + [87.81630859375002, 49.0802734375], + [87.8251953125, 49.11630859375], + [87.81425781249999, 49.1623046875], + [87.81826171875002, 49.162109375], + [87.93476562500001, 49.16455078125], + [87.98808593749999, 49.186914062499994], + [88.02851562500001, 49.219775390624996], + [88.11572265625, 49.256298828125], + [88.13427734375, 49.2984375], + [88.13554687499999, 49.381494140624994], + [88.19257812500001, 49.451708984374996], + [88.33779296875002, 49.472558593749994], + [88.39335937499999, 49.482861328125], + [88.45244140624999, 49.472705078124996], + [88.54433593750002, 49.482568359374994], + [88.63320312500002, 49.486132812499996], + [88.68271484375003, 49.46455078125], + [88.74785156249999, 49.446240234375], + [88.83164062500003, 49.4484375], + [88.8603515625, 49.48154296875], + [88.86386718750003, 49.527636718749996], + [88.90019531249999, 49.539697265624994], + [88.94541015625003, 49.507666015625], + [88.97060546875002, 49.483740234375], + [89.00839843750003, 49.472802734374994], + [89.10947265625003, 49.501367187499994], + [89.17998046874999, 49.5322265625], + [89.20292968749999, 49.595703125], + [89.24394531249999, 49.62705078125], + [89.29921875000002, 49.611132812499996], + [89.39560546875003, 49.6115234375], + [89.475, 49.660546875], + [89.57919921875003, 49.69970703125], + [89.65410156249999, 49.71748046875], + [89.66953125000003, 49.75048828125], + [89.63427734375, 49.823291015624996], + [89.64384765624999, 49.90302734375], + [89.74423828125003, 49.948095703125], + [89.87802734375003, 49.953515625], + [89.97734374999999, 49.984326171875], + [90.00498046875003, 50.069287109375], + [90.0537109375, 50.09375], + [90.10371093750001, 50.103320312499996], + [90.22451171875002, 50.11669921875], + [90.31132812499999, 50.151171875], + [90.36484375000003, 50.166894531249994], + [90.51689453124999, 50.213330078125], + [90.65507812499999, 50.22236328125], + [90.71435546875, 50.259423828124994], + [90.7607421875, 50.305957031249996], + [90.83808593750001, 50.32373046875], + [90.91718750000001, 50.364160156249994], + [91.02158203125003, 50.415478515625], + [91.06279296874999, 50.422607421875], + [91.23378906250002, 50.452392578125], + [91.30058593749999, 50.46337890625], + [91.3408203125, 50.470068359375], + [91.4150390625, 50.468017578125], + [91.44648437500001, 50.52216796875], + [91.52167968750001, 50.56201171875], + [91.596875, 50.575537109375], + [91.63417968750002, 50.615136718749994], + [91.70634765624999, 50.66552734375], + [91.80429687500003, 50.693603515625], + [91.95654296875, 50.697607421875], + [92.10400390625, 50.6919921875], + [92.1923828125, 50.700585937499994], + [92.26533203125001, 50.775195312499996], + [92.27900390625001, 50.81220703125], + [92.29580078125002, 50.8498046875], + [92.35478515624999, 50.864160156249994], + [92.42636718750003, 50.803076171875], + [92.48642578125003, 50.765087890625], + [92.57890624999999, 50.725439453125], + [92.62666015625001, 50.68828125], + [92.68134765625001, 50.683203125], + [92.73867187500002, 50.7109375], + [92.779296875, 50.778662109375], + [92.8564453125, 50.789111328124996], + [92.94130859375002, 50.778222656249994], + [92.96357421875001, 50.744921875], + [92.970703125, 50.7125], + [93.00986328125003, 50.654541015625], + [93.103125, 50.60390625], + [93.22255859375002, 50.60654296875], + [93.2705078125, 50.615576171875], + [93.38681640625003, 50.60849609375], + [93.50107421875003, 50.597460937499996], + [93.62558593750003, 50.585546875], + [93.66201171875002, 50.58369140625], + [93.79541015625, 50.57763671875], + [93.98984375000003, 50.56884765625], + [94.07578125000003, 50.5728515625], + [94.25107421875003, 50.556396484375], + [94.28701171875002, 50.511376953124994], + [94.3193359375, 50.4048828125], + [94.346875, 50.30341796875], + [94.35468750000001, 50.221826171874994], + [94.40019531249999, 50.179638671875], + [94.45849609375, 50.16572265625], + [94.49687, 50.1328125], + [94.56464843750001, 50.087939453124996], + [94.61474609375, 50.023730468749996], + [94.67548828125001, 50.028076171875], + [94.71806640624999, 50.043261718749996], + [94.81123046875001, 50.048193359375], + [94.93027343750003, 50.04375], + [95.01289062500001, 50.008251953125], + [95.04433593750002, 49.961572265624994], + [95.11142578125003, 49.935449218749994], + [95.16621093750001, 49.94384765625], + [95.32949218750002, 49.944140625], + [95.38564453125002, 49.941210937499996], + [95.44179687500002, 49.91552734375], + [95.52265625000001, 49.91123046875], + [95.56718749999999, 49.94384765625], + [95.70781249999999, 49.966015625], + [95.78935546874999, 50.0125], + [95.85195312500002, 50.012939453125], + [95.8994140625, 49.990576171875], + [95.93574218750001, 49.960009765624996], + [95.98955078124999, 49.973583984375], + [96.0185546875, 49.998779296875], + [96.06552734375003, 49.99873046875], + [96.11171875000002, 49.982470703124996], + [96.22968750000001, 49.9541015625], + [96.31503906250003, 49.901123046875], + [96.38115234374999, 49.896044921874996], + [96.46640625000003, 49.911523437499994], + [96.50576171875002, 49.918701171875], + [96.54326171874999, 49.892529296875], + [96.59843749999999, 49.87841796875], + [96.64023437500003, 49.897851562499994], + [96.71171874999999, 49.911572265625], + [96.98574218750002, 49.8828125], + [97.04912109374999, 49.829882812499996], + [97.09765625, 49.805029296875], + [97.13691406250001, 49.76171875], + [97.20859375000003, 49.730810546875], + [97.35976562500002, 49.741455078125], + [97.41835937500002, 49.773046875], + [97.54082031249999, 49.843115234375], + [97.58935546875, 49.911474609375], + [97.65097656250003, 49.93359375], + [97.720703125, 49.944628906249996], + [97.78554687500002, 49.94453125], + [97.85390625000002, 49.94677734375], + [97.93662109375003, 49.99677734375], + [98.00390625, 50.0142578125], + [98.10341796875002, 50.07783203125], + [98.12197265625002, 50.106591796874994], + [98.17011718750001, 50.180566406249994], + [98.2, 50.227685546874994], + [98.25029296874999, 50.30244140625], + [98.27734375, 50.422998046874994], + [98.29267578125001, 50.486962890624994], + [98.27949218750001, 50.533251953124996], + [98.22050781249999, 50.557177734374996], + [98.14501953125, 50.5685546875], + [98.07890624999999, 50.603808593749996], + [98.02978515625, 50.64462890625], + [98.00117187500001, 50.702050781249994], + [97.9619140625, 50.769140625], + [97.96416015624999, 50.817675781249996], + [97.953125, 50.85517578125], + [97.91982421875002, 50.887158203125], + [97.85615234375001, 50.943359375], + [97.82529296875003, 50.985253906249994], + [97.83574218749999, 51.051660156249994], + [97.91083984375001, 51.165185546874994], + [97.91787109375002, 51.21787109375], + [97.92734375000003, 51.250732421875], + [97.92324218750002, 51.28046875], + [97.946875, 51.3484375], + [97.98916015625002, 51.37705078125], + [98.03759765625, 51.449951171875], + [98.103125, 51.483544921874994], + [98.18466796875003, 51.485742187499994], + [98.21992187500001, 51.505615234375], + [98.2375, 51.578417968749996], + [98.27685546875, 51.634570312499996], + [98.303125, 51.674267578125], + [98.35273437500001, 51.717626953125], + [98.64052734375002, 51.801171875], + [98.76015625000002, 51.905078125], + [98.80253906249999, 51.957470703125], + [98.8486328125, 52.070068359375], + [98.89316406250003, 52.11728515625], + [98.95810546875003, 52.101708984375], + [99.03427734375003, 52.035400390625], + [99.09140625000003, 52.03486328125], + [99.17617187500002, 51.998876953125], + [99.40703124999999, 51.92353515625], + [99.53232421875003, 51.89990234375], + [99.61289062500003, 51.892529296875], + [99.71923828125, 51.871630859374996], + [99.78789062499999, 51.8275390625], + [99.92167968749999, 51.755517578125], + [100.03457031250002, 51.737109375], + [100.23037109375002, 51.729833984375], + [100.46894531250001, 51.72607421875], + [100.53623046875003, 51.7134765625], + [100.71074218749999, 51.661572265625], + [100.90361328124999, 51.604248046875], + [101.08535156250002, 51.553027343749996], + [101.22324218750003, 51.51328125], + [101.30449218749999, 51.474755859374994], + [101.38125, 51.45263671875], + [101.46435546875, 51.471484375], + [101.57089843750003, 51.4671875], + [101.82119140625002, 51.421044921874994], + [101.97919921875001, 51.382226562499994], + [102.11152343750001, 51.353466796875], + [102.15566406250002, 51.313769531249996], + [102.16005859375002, 51.26083984375], + [102.14238281249999, 51.216064453125], + [102.15195312500003, 51.10751953125], + [102.19453125000001, 51.050683593749994], + [102.21025390624999, 50.97431640625], + [102.22617187500003, 50.90146484375], + [102.21503906250001, 50.829443359375], + [102.23505859375001, 50.7912109375], + [102.27656250000001, 50.768701171874994], + [102.31660156250001, 50.71845703125], + [102.30332031250003, 50.66552734375], + [102.28574218750003, 50.634667968749994], + [102.28837890624999, 50.585107421874994], + [102.33642578125, 50.544238281249996], + [102.40683593750003, 50.536181640624996], + [102.46943359375001, 50.525683593749996], + [102.54628906250002, 50.461328125], + [102.68330078125001, 50.387158203125], + [102.76542968749999, 50.366552734375], + [102.85966796874999, 50.333251953125], + [103.03945312500002, 50.300634765625], + [103.16171875000003, 50.29072265625], + [103.23378906250002, 50.2642578125], + [103.30439453125001, 50.20029296875], + [103.42119140624999, 50.187060546874996], + [103.49628906250001, 50.164941406249994], + [103.63291015625003, 50.138574218749994], + [103.72324218750003, 50.153857421874996], + [103.80263671875002, 50.176074218749996], + [103.85615234375001, 50.171826171875], + [103.95849609375, 50.157275390624996], + [104.07871093750003, 50.154248046875], + [104.1796875, 50.16943359375], + [104.25996093750001, 50.214453125], + [104.35390625000002, 50.275292968749994], + [104.46630859375, 50.30615234375], + [104.59638671875001, 50.3171875], + [104.68535156249999, 50.341845703124996], + [104.97695312500002, 50.38291015625], + [105.0947265625, 50.389941406249996], + [105.18593750000002, 50.429589843749994], + [105.26669921875003, 50.460498046874996], + [105.38359374999999, 50.47373046875], + [105.54160156250003, 50.441259765625], + [105.69257812500001, 50.41416015625], + [105.87519531250001, 50.40537109375], + [105.99648437500002, 50.367919921875], + [106.08251953125, 50.332568359374996], + [106.21787109375003, 50.304589843749994], + [106.36845703124999, 50.317578125], + [106.57441406250001, 50.32880859375], + [106.71113281250001, 50.31259765625], + [106.85371093750001, 50.248291015625], + [106.94130859375002, 50.196679687499994], + [107.04023437500001, 50.086474609374996], + [107.14306640625, 50.033007812499996], + [107.23330078125002, 49.989404296874994], + [107.34707031250002, 49.986669921875], + [107.63095703125003, 49.98310546875], + [107.78681640625001, 49.960009765624996], + [107.91660156250003, 49.947802734374996], + [107.94785156250003, 49.924707031249994], + [107.93486328124999, 49.849023437499994], + [107.93876953124999, 49.74072265625], + [107.93671875000001, 49.691015625], + [107.96542968750003, 49.653515625], + [108.00957031249999, 49.646875], + [108.03378906250003, 49.593994140625], + [108.09804687500002, 49.562646484374994], + [108.21308593750001, 49.524804687499994], + [108.40693359375001, 49.396386718749994], + [108.5224609375, 49.34150390625], + [108.61367187500002, 49.322802734374996], + [108.73300781250003, 49.33564453125], + [108.919921875, 49.335351562499994], + [109.23671875000002, 49.334912109375], + [109.45371093750003, 49.296337890625], + [109.52871093750002, 49.269873046875], + [109.75039062500002, 49.239306640624996], + [109.99453125000002, 49.205615234374996], + [110.19990234375001, 49.17041015625], + [110.32138671875003, 49.215869140624996], + [110.42783203125003, 49.219970703125], + [110.52958984374999, 49.187060546874996], + [110.63105468750001, 49.137597656249994], + [110.70976562499999, 49.14296875], + [110.82792968749999, 49.166162109374994], + [111.20419921875003, 49.304296875], + [111.33662109375001, 49.355859375], + [111.42929687500003, 49.342626953125], + [111.51191406250001, 49.3609375], + [111.57480468750003, 49.376416015625], + [111.73554687500001, 49.397753906249996], + [111.83339843750002, 49.403613281249996], + [111.93447265625002, 49.416015625], + [112.07968750000003, 49.42421875], + [112.37519531250001, 49.514599609375], + [112.49492187499999, 49.53232421875], + [112.69736328125003, 49.507275390625], + [112.80644531249999, 49.523583984374994], + [112.91484374999999, 49.569238281249994], + [113.05556640625002, 49.616259765624996], + [113.09208984374999, 49.692529296874994], + [113.16416015625003, 49.797167968749996], + [113.31904296875001, 49.874316406249996], + [113.44550781250001, 49.9416015625], + [113.57421875, 50.00703125], + [113.732421875, 50.0615234375], + [113.88115234374999, 50.101123046874996], + [114.07070312500002, 50.204736328124994], + [114.22177734375003, 50.257275390625], + [114.29707031250001, 50.2744140625], + [114.38632812500003, 50.25546875], + [114.55400390624999, 50.241455078125], + [114.67490234375003, 50.245703125], + [114.7431640625, 50.233691406249996], + [114.87958984375001, 50.183056640625], + [115.00332031250002, 50.138574218749994], + [115.09804687500002, 50.059423828125], + [115.27451171875003, 49.948876953124994], + [115.36503906249999, 49.911767578124994], + [115.42919921875, 49.896484375], + [115.58798828125003, 49.886035156249996], + [115.7177734375, 49.880615234375], + [115.79521484374999, 49.905908203124994], + [115.92597656250001, 49.9521484375], + [116.13457031249999, 50.010791015624996], + [116.216796875, 50.00927734375], + [116.35117187500003, 49.978076171874996], + [116.55117187500002, 49.9203125], + [116.63154296875001, 49.87705078125], + [116.68330078125001, 49.823779296874996] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "N. Mariana Is.", + "iso_a2": "MP", + "iso_a3": "MNP", + "iso_n3": "580", + "continent": "Oceania" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [145.26484375000004, 14.158105468750037], + [145.21533203124997, 14.111328125000014], + [145.17958984375, 14.120996093750023], + [145.1574218750001, 14.136914062499983], + [145.15214843750007, 14.163623046875003], + [145.23242187499997, 14.189453125000028], + [145.26542968750007, 14.180224609375017], + [145.26484375000004, 14.158105468750037] + ] + ], + [ + [ + [145.6623046875001, 14.970507812499989], + [145.62099609375, 14.91953125], + [145.59160156250007, 14.998828124999989], + [145.58671875000007, 15.030810546875017], + [145.62480468750002, 15.060156250000048], + [145.64736328125, 15.059472656249994], + [145.6623046875001, 14.970507812499989] + ] + ], + [ + [ + [145.75195312499997, 15.133154296874991], + [145.74921875000004, 15.107226562500045], + [145.69824218750003, 15.113525390624986], + [145.68427734375004, 15.125097656250034], + [145.71318359375007, 15.215283203125026], + [145.78632812500004, 15.256884765624974], + [145.821875, 15.265380859375014], + [145.78857421874997, 15.222656250000014], + [145.78232421875012, 15.174609375], + [145.75195312499997, 15.133154296874991] + ] + ], + [ + [ + [145.71210937500004, 16.339111328125], + [145.69023437500002, 16.332128906250006], + [145.65830078125006, 16.335791015625034], + [145.63603515625007, 16.351513671874955], + [145.63105468750004, 16.377978515625017], + [145.6955078125001, 16.379638671875], + [145.71953125000002, 16.35976562500005], + [145.71210937500004, 16.339111328125] + ] + ], + [ + [ + [145.77753906250004, 18.078955078124977], + [145.72910156250012, 18.056933593750045], + [145.7892578125001, 18.155419921875023], + [145.80742187500007, 18.172656250000074], + [145.83544921875003, 18.136767578125045], + [145.77753906250004, 18.078955078124977] + ] + ], + [ + [ + [145.7083984375, 18.7625], + [145.678125, 18.725244140625023], + [145.65253906250004, 18.75263671875001], + [145.64550781249997, 18.806787109375023], + [145.6901367187501, 18.801611328125034], + [145.70664062500006, 18.790478515624983], + [145.7083984375, 18.7625] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Mozambique", + "iso_a2": "MZ", + "iso_a3": "MOZ", + "iso_n3": "508", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [32.88613281250002, -26.84931640625001], + [32.77656250000001, -26.85097656250001], + [32.58876953125002, -26.855761718750003], + [32.47773437500001, -26.858496093750006], + [32.353515625, -26.861621093750003], + [32.19960937500002, -26.83349609375], + [32.112890625, -26.839453125], + [32.10595703125, -26.52001953125], + [32.07792968750002, -26.449804687500006], + [32.04833984375, -26.34716796875], + [32.04140625000002, -26.28125], + [32.05996093750002, -26.21503906250001], + [32.06884765625, -26.11015625], + [32.060546875, -26.018359375], + [31.96845703125001, -25.972265625], + [31.9482421875, -25.957617187500006], + [31.928320312500006, -25.885351562500006], + [31.920312500000023, -25.77392578125], + [31.98457031250001, -25.631933593750006], + [31.979394531250023, -25.359472656250006], + [31.98701171875001, -25.263476562500003], + [31.985742187500023, -25.073828125], + [31.984375, -24.844042968750003], + [31.983203125000017, -24.63828125], + [31.98583984375, -24.46064453125001], + [31.966601562500017, -24.37646484375], + [31.950585937500023, -24.33027343750001], + [31.908007812500017, -24.23623046875001], + [31.858300781250023, -24.04023437500001], + [31.799609375000017, -23.8921875], + [31.724023437500023, -23.79453125], + [31.7, -23.74306640625001], + [31.675585937500017, -23.67421875], + [31.604101562500006, -23.55292968750001], + [31.54560546875001, -23.48232421875001], + [31.529687500000023, -23.42578125], + [31.53173828125, -23.27949218750001], + [31.466699218750023, -23.016699218750006], + [31.419335937500023, -22.82509765625001], + [31.348046875000023, -22.617578125], + [31.300195312500023, -22.478613281250006], + [31.29316406250001, -22.4546875], + [31.287890625000017, -22.40205078125001], + [31.429492187500017, -22.298828125], + [31.57148437500001, -22.15351562500001], + [31.737695312500023, -21.9833984375], + [31.88593750000001, -21.83154296875], + [32.01630859375001, -21.698046875], + [32.19472656250002, -21.515429687500003], + [32.37109375, -21.33486328125001], + [32.41240234375002, -21.311816406250003], + [32.429785156250006, -21.29707031250001], + [32.353613281250006, -21.136523437500003], + [32.476171875, -20.95009765625001], + [32.48281250000002, -20.82890625], + [32.477636718750006, -20.712988281250006], + [32.49238281250001, -20.659765625], + [32.529296875, -20.613085937500003], + [32.67255859375001, -20.51611328125], + [32.780859375, -20.36152343750001], + [32.86962890625, -20.2171875], + [32.992773437500006, -19.98486328125], + [33.0048828125, -19.93017578125], + [33.00673828125002, -19.873828125], + [32.97265625, -19.79541015625], + [32.89042968750002, -19.668066406250006], + [32.83076171875001, -19.558203125], + [32.77763671875002, -19.388769531250006], + [32.83095703125002, -19.24140625000001], + [32.85, -19.152441406250006], + [32.84980468750001, -19.10439453125001], + [32.826171875, -19.05878906250001], + [32.766210937500006, -19.02431640625001], + [32.71650390625001, -19.00185546875001], + [32.69970703125, -18.94091796875], + [32.69921875, -18.868457031250003], + [32.72197265625002, -18.828417968750003], + [32.8544921875, -18.763671875], + [32.88457031250002, -18.728515625], + [32.90029296875002, -18.6890625], + [32.90166015625002, -18.632910156250006], + [32.942480468750006, -18.49267578125], + [32.99306640625002, -18.35957031250001], + [32.99638671875002, -18.312597656250006], + [32.978515625, -18.271484375], + [32.96464843750002, -18.1962890625], + [32.95556640625, -18.08291015625001], + [32.9546875, -17.765429687500003], + [32.98076171875002, -17.4375], + [32.969335937500006, -17.2515625], + [32.884375, -17.03779296875001], + [32.87626953125002, -16.88359375], + [32.93789062500002, -16.775976562500006], + [32.94804687500002, -16.71230468750001], + [32.902929687500006, -16.704199218750006], + [32.81025390625001, -16.69765625], + [32.741796875, -16.67763671875001], + [32.635839843750006, -16.589453125], + [32.45195312500002, -16.515722656250006], + [32.243261718750006, -16.44873046875], + [31.939843750000023, -16.428808593750006], + [31.687597656250006, -16.214160156250003], + [31.48984375, -16.1796875], + [31.426171875000023, -16.15234375], + [31.236230468750023, -16.02363281250001], + [30.938769531250017, -16.01171875], + [30.630175781250017, -15.999218750000011], + [30.437792968750017, -15.995312500000011], + [30.409375, -15.978222656250011], + [30.39814453125001, -15.80078125], + [30.39609375, -15.64306640625], + [30.3798828125, -15.505859375], + [30.3505859375, -15.349707031250006], + [30.3056640625, -15.288867187500003], + [30.25214843750001, -15.183203125], + [30.225, -15.06689453125], + [30.221777343750006, -15.010546875], + [30.231835937500023, -14.990332031250006], + [30.446093750000017, -14.907519531250003], + [30.537695312500006, -14.866503906250003], + [30.67333984375, -14.819140625], + [30.915136718750006, -14.753320312500009], + [31.130859375, -14.694628906250003], + [31.328515625000023, -14.6376953125], + [31.537890625000017, -14.5771484375], + [31.623046875, -14.53671875], + [31.728906250000023, -14.49609375], + [31.98212890625001, -14.414453125], + [32.05449218750002, -14.386523437500003], + [32.19990234375001, -14.3408203125], + [32.27285156250002, -14.323046875], + [32.55322265625, -14.229589843750006], + [32.87451171875, -14.122460937500009], + [32.98710937500002, -14.0849609375], + [33.201757812500006, -14.013378906250011], + [33.24355468750002, -14.043066406250006], + [33.38994140625002, -14.289453125], + [33.50527343750002, -14.43408203125], + [33.63642578125001, -14.568164062500003], + [33.658300781250006, -14.561621093750006], + [33.69609375000002, -14.5302734375], + [33.76142578125001, -14.517285156250011], + [33.969824218750006, -14.487109375], + [34.049414062500006, -14.485253906250009], + [34.10185546875002, -14.449316406250006], + [34.20878906250002, -14.423730468750009], + [34.33251953125, -14.40859375], + [34.375, -14.4248046875], + [34.50527343750002, -14.59814453125], + [34.52412109375001, -14.730761718750003], + [34.55117187500002, -14.92236328125], + [34.5576171875, -15.015917968750003], + [34.55546875000002, -15.140917968750003], + [34.54082031250002, -15.297265625], + [34.43496093750002, -15.477148437500006], + [34.41474609375001, -15.566796875], + [34.358007812500006, -15.705273437500011], + [34.28300781250002, -15.7734375], + [34.24609375, -15.829394531250003], + [34.24824218750001, -15.8875], + [34.28828125000001, -15.936132812500006], + [34.3759765625, -16.023730468750003], + [34.40302734375001, -16.08027343750001], + [34.395117187500006, -16.130859375], + [34.3955078125, -16.19921875], + [34.41640625000002, -16.24677734375001], + [34.44130859375002, -16.2744140625], + [34.528125, -16.319140625], + [34.61269531250002, -16.43154296875001], + [34.7587890625, -16.56708984375001], + [34.93339843750002, -16.760351562500006], + [35.01533203125001, -16.81953125000001], + [35.07988281250002, -16.83388671875001], + [35.11210937500002, -16.898535156250006], + [35.09423828125, -16.97382812500001], + [35.0439453125, -17.016894531250003], + [35.06464843750001, -17.07861328125], + [35.09306640625002, -17.1109375], + [35.124609375, -17.127246093750003], + [35.20136718750001, -17.13105468750001], + [35.272558593750006, -17.118457031250003], + [35.29042968750002, -17.096972656250003], + [35.28115234375002, -16.80781250000001], + [35.22978515625002, -16.639257812500006], + [35.178320312500006, -16.573339843750006], + [35.16718750000001, -16.56025390625001], + [35.18525390625001, -16.5048828125], + [35.242773437500006, -16.375390625], + [35.29150390625, -16.247167968750006], + [35.32246093750001, -16.193164062500003], + [35.358496093750006, -16.160546875], + [35.59931640625001, -16.12587890625001], + [35.70888671875002, -16.095800781250006], + [35.75527343750002, -16.05830078125001], + [35.79121093750001, -15.958691406250011], + [35.819921875, -15.680371093750011], + [35.83027343750001, -15.4189453125], + [35.80537109375001, -15.265625], + [35.839941406250006, -15.03466796875], + [35.89277343750001, -14.891796875000011], + [35.86669921875, -14.86376953125], + [35.84716796875, -14.6708984375], + [35.6904296875, -14.465527343750011], + [35.48847656250001, -14.201074218750009], + [35.37578125000002, -14.058691406250006], + [35.24746093750002, -13.896875], + [35.01386718750001, -13.643457031250009], + [34.906835937500006, -13.551660156250009], + [34.85048828125002, -13.516015625], + [34.66162109375, -13.48671875], + [34.61152343750001, -13.437890625], + [34.56367187500001, -13.36015625], + [34.54570312500002, -13.21630859375], + [34.542578125, -13.108691406250003], + [34.52128906250002, -12.92578125], + [34.48291015625, -12.666796875], + [34.4658203125, -12.590722656250009], + [34.412109375, -12.395898437500009], + [34.36083984375, -12.210546875], + [34.35781250000002, -12.164746093750011], + [34.3759765625, -12.120214843750006], + [34.462890625, -11.983789062500009], + [34.52480468750002, -11.887011718750003], + [34.55390625000001, -11.834082031250006], + [34.60625, -11.690039062500006], + [34.61855468750002, -11.620214843750006], + [34.65957031250002, -11.588671875], + [34.82656250000002, -11.57568359375], + [34.95947265625, -11.578125], + [35.1826171875, -11.574804687500006], + [35.41826171875002, -11.583203125000011], + [35.45136718750001, -11.589550781250011], + [35.50439453125, -11.604785156250003], + [35.56435546875002, -11.60234375], + [35.630957031250006, -11.58203125], + [35.7046875, -11.532128906250009], + [35.78544921875002, -11.452929687500003], + [35.91132812500001, -11.4546875], + [36.08222656250001, -11.537304687500011], + [36.17548828125001, -11.609277343750009], + [36.19130859375002, -11.670703125], + [36.3056640625, -11.706347656250003], + [36.518652343750006, -11.716210937500009], + [36.673828125, -11.684277343750011], + [36.77109375, -11.6103515625], + [36.87265625, -11.5712890625], + [36.97890625000002, -11.566992187500006], + [37.059179687500006, -11.5921875], + [37.113867187500006, -11.647167968750011], + [37.218359375, -11.6865234375], + [37.37285156250002, -11.71044921875], + [37.54169921875001, -11.675097656250003], + [37.72480468750001, -11.580664062500006], + [37.82929687500001, -11.48193359375], + [37.855078125, -11.379101562500011], + [37.885351562500006, -11.316699218750003], + [37.92021484375002, -11.294726562500003], + [38.01728515625001, -11.282128906250009], + [38.17656250000002, -11.278710937500009], + [38.31513671875001, -11.311132812500006], + [38.491796875, -11.413281250000011], + [38.60332031250002, -11.3453125], + [38.79472656250002, -11.22890625], + [38.9875, -11.167285156250003], + [39.170996093750006, -11.166894531250009], + [39.32158203125002, -11.12255859375], + [39.43916015625001, -11.034570312500009], + [39.5634765625, -10.978515625], + [39.694433593750006, -10.954785156250011], + [39.81708984375001, -10.912402343750003], + [39.98867187500002, -10.82080078125], + [40.16621093750001, -10.6875], + [40.34746093750002, -10.5515625], + [40.46357421875001, -10.46435546875], + [40.516699218750006, -10.5673828125], + [40.61171875000002, -10.661523437500009], + [40.55507812500002, -10.716210937500009], + [40.48662109375002, -10.76513671875], + [40.59716796875, -10.830664062500006], + [40.51611328125, -10.929589843750009], + [40.50625, -10.9984375], + [40.52685546875, -11.025390625], + [40.54453125, -11.065625], + [40.49140625000001, -11.178906250000011], + [40.420996093750006, -11.265625], + [40.40283203125, -11.33203125], + [40.46513671875002, -11.449414062500011], + [40.43310546875, -11.657324218750006], + [40.49355468750002, -11.844433593750011], + [40.51044921875001, -11.9404296875], + [40.53154296875002, -12.004589843750011], + [40.50146484375, -12.119433593750003], + [40.50917968750002, -12.312890625], + [40.52314453125001, -12.392773437500011], + [40.48710937500002, -12.4921875], + [40.54833984375, -12.526562500000011], + [40.58085937500002, -12.635546875], + [40.57207031250002, -12.758398437500006], + [40.553320312500006, -12.824609375], + [40.44765625000002, -12.90478515625], + [40.43515625, -12.9359375], + [40.43681640625002, -12.983105468750011], + [40.56875, -12.984667968750003], + [40.5732421875, -13.057714843750006], + [40.564453125, -13.115234375], + [40.56953125000001, -13.2234375], + [40.55195312500001, -13.29375], + [40.58291015625002, -13.3740234375], + [40.54511718750001, -13.462890625], + [40.558203125, -13.531445312500011], + [40.55986328125002, -13.620312500000011], + [40.59052734375001, -13.845019531250003], + [40.595703125, -14.122851562500003], + [40.6025390625, -14.167382812500009], + [40.649511718750006, -14.198828125], + [40.715625, -14.214453125], + [40.71308593750001, -14.290625], + [40.63994140625002, -14.390039062500009], + [40.63554687500002, -14.451855468750011], + [40.64609375, -14.538671875], + [40.726660156250006, -14.420703125], + [40.775, -14.421289062500009], + [40.81816406250002, -14.467578125], + [40.812109375, -14.535546875], + [40.82695312500002, -14.569042968750011], + [40.82060546875002, -14.634960937500011], + [40.84453125000002, -14.718652343750009], + [40.83515625000001, -14.79150390625], + [40.775976562500006, -14.842480468750011], + [40.70068359375, -14.929785156250006], + [40.68740234375002, -15.011621093750009], + [40.6943359375, -15.065234375], + [40.6421875, -15.082421875], + [40.617773437500006, -15.115527343750003], + [40.653125, -15.192675781250003], + [40.650976562500006, -15.260937500000011], + [40.55898437500002, -15.4734375], + [40.31386718750002, -15.763964843750003], + [40.2080078125, -15.867089843750009], + [40.10878906250002, -15.979296875], + [40.10888671875, -16.02529296875001], + [40.09921875, -16.06533203125001], + [39.98359375000001, -16.22548828125001], + [39.85976562500002, -16.251757812500003], + [39.79091796875002, -16.29453125], + [39.84462890625002, -16.435644531250006], + [39.76455078125002, -16.46816406250001], + [39.62539062500002, -16.579394531250003], + [39.242285156250006, -16.792578125], + [39.181738281250006, -16.84199218750001], + [39.084375, -16.97285156250001], + [38.9560546875, -17.00458984375001], + [38.884765625, -17.041601562500006], + [38.75761718750002, -17.05517578125], + [38.71328125000002, -17.045703125], + [38.669921875, -17.05029296875], + [38.63330078125, -17.07832031250001], + [38.38076171875002, -17.17011718750001], + [38.14492187500002, -17.242773437500006], + [38.0869140625, -17.275976562500006], + [38.04824218750002, -17.321386718750006], + [37.839453125, -17.393164062500006], + [37.512304687500006, -17.570703125], + [37.24453125000002, -17.73994140625001], + [37.05058593750002, -17.909277343750006], + [36.99951171875, -17.93496093750001], + [36.93935546875002, -17.993457031250003], + [36.91923828125002, -18.080078125], + [36.89960937500001, -18.129003906250006], + [36.75615234375002, -18.30732421875001], + [36.540136718750006, -18.518164062500006], + [36.498046875, -18.57578125], + [36.412207031250006, -18.69296875], + [36.40371093750002, -18.76972656250001], + [36.327246093750006, -18.79316406250001], + [36.26289062500001, -18.71962890625001], + [36.23564453125002, -18.861328125], + [36.183203125, -18.871386718750003], + [36.125, -18.842382812500006], + [35.980078125, -18.9125], + [35.85371093750001, -18.99335937500001], + [35.65126953125002, -19.163867187500003], + [35.365332031250006, -19.493945312500003], + [34.947851562500006, -19.81269531250001], + [34.89082031250001, -19.82177734375], + [34.85234375000002, -19.82050781250001], + [34.72099609375002, -19.709570312500006], + [34.6494140625, -19.70136718750001], + [34.713476562500006, -19.7671875], + [34.75576171875002, -19.82197265625001], + [34.74501953125002, -19.929492187500003], + [34.75, -20.0908203125], + [34.69814453125002, -20.404394531250006], + [34.705078125, -20.473046875], + [34.764746093750006, -20.56191406250001], + [34.877050781250006, -20.67080078125001], + [34.98232421875002, -20.80625], + [35.11757812500002, -21.19521484375001], + [35.128027343750006, -21.3953125], + [35.267675781250006, -21.650976562500006], + [35.27294921875, -21.76171875], + [35.32929687500001, -22.037402343750003], + [35.32558593750002, -22.260351562500006], + [35.31572265625002, -22.396875], + [35.38300781250001, -22.45458984375], + [35.4078125, -22.40253906250001], + [35.40087890625, -22.316210937500003], + [35.41884765625002, -22.17763671875001], + [35.45634765625002, -22.11591796875001], + [35.49375, -22.12470703125001], + [35.5048828125, -22.19013671875001], + [35.53007812500002, -22.248144531250006], + [35.54023437500001, -22.30263671875001], + [35.5419921875, -22.3765625], + [35.490234375, -22.65771484375], + [35.50576171875002, -22.772070312500006], + [35.57539062500001, -22.96308593750001], + [35.49443359375002, -23.18515625], + [35.376953125, -23.7078125], + [35.37041015625002, -23.79824218750001], + [35.39882812500002, -23.837695312500003], + [35.46210937500001, -23.85107421875], + [35.4853515625, -23.784472656250003], + [35.5224609375, -23.784960937500003], + [35.5419921875, -23.82441406250001], + [35.48964843750002, -24.065527343750006], + [35.438085937500006, -24.171191406250003], + [35.2548828125, -24.430273437500006], + [35.15595703125001, -24.54140625], + [34.99208984375002, -24.65058593750001], + [34.60732421875002, -24.8212890625], + [33.836035156250006, -25.06796875], + [33.53007812500002, -25.18886718750001], + [33.34746093750002, -25.26093750000001], + [32.96113281250001, -25.49042968750001], + [32.79218750000001, -25.644335937500003], + [32.72255859375002, -25.820898437500006], + [32.655859375, -25.90175781250001], + [32.590429687500006, -26.00410156250001], + [32.6474609375, -26.09199218750001], + [32.70351562500002, -26.158496093750003], + [32.769628906250006, -26.20302734375001], + [32.80390625000001, -26.24140625000001], + [32.84882812500001, -26.26806640625], + [32.89404296875, -26.1298828125], + [32.91640625000002, -26.0869140625], + [32.95488281250002, -26.08359375], + [32.93359375, -26.25234375], + [32.88916015625, -26.83046875], + [32.88613281250002, -26.84931640625001] + ], + [ + [34.6416015625, -12.013671875], + [34.62421875000001, -11.984765625], + [34.59140625, -11.97109375], + [34.55400390625002, -11.982226562500003], + [34.541601562500006, -12.018652343750006], + [34.58046875000002, -12.065820312500009], + [34.62177734375001, -12.066601562500011], + [34.6416015625, -12.013671875] + ], + [ + [34.719335937500006, -12.110644531250003], + [34.74599609375002, -12.08837890625], + [34.75625, -12.05908203125], + [34.755957031250006, -12.03076171875], + [34.73896484375001, -12.013085937500009], + [34.714941406250006, -12.002734375], + [34.67988281250001, -12.008886718750006], + [34.66748046875, -12.047558593750011], + [34.662109375, -12.100781250000011], + [34.684179687500006, -12.11865234375], + [34.719335937500006, -12.110644531250003] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Mauritania", + "iso_a2": "MR", + "iso_a3": "MRT", + "iso_n3": "478", + "continent": "Africa" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-16.37333984374999, 19.706445312499994], + [-16.437548828124932, 19.609277343749994], + [-16.465966796874937, 19.646386718750023], + [-16.477001953124983, 19.710351562499994], + [-16.420166015624943, 19.80195312500001], + [-16.393261718749955, 19.84926757812505], + [-16.343652343749994, 19.86621093750003], + [-16.37333984374999, 19.706445312499994] + ] + ], + [ + [ + [-6.16879882812492, 21.285546875], + [-6.140332031249983, 21.036865234375057], + [-6.111816406249943, 20.788183593750006], + [-6.083398437499937, 20.539501953124983], + [-6.054882812499983, 20.290869140625034], + [-6.02641601562496, 20.04218750000001], + [-5.997949218749937, 19.793505859375045], + [-5.969482421875, 19.54487304687504], + [-5.941015624999977, 19.29619140624999], + [-5.9125, 19.04750976562505], + [-5.884082031250017, 18.798876953125017], + [-5.855566406249977, 18.550244140624983], + [-5.827099609374955, 18.301562500000045], + [-5.798632812500017, 18.05292968750001], + [-5.770166015624966, 17.804248046875074], + [-5.741699218749943, 17.555566406250023], + [-5.713183593750017, 17.306884765625], + [-5.684765624999983, 17.058251953124966], + [-5.65625, 16.80957031250003], + [-5.628662109375028, 16.568652343750045], + [-5.50961914062492, 16.442041015625023], + [-5.359912109374989, 16.282861328124994], + [-5.403564453125, 16.057910156250017], + [-5.455615234374932, 15.789404296875006], + [-5.5125, 15.496289062499983], + [-5.723876953124972, 15.496289062499983], + [-5.927832031249949, 15.496289062499983], + [-6.131787109374926, 15.496240234374966], + [-6.335742187500017, 15.496191406250063], + [-6.539648437499977, 15.496191406250063], + [-6.743603515624955, 15.496191406250063], + [-6.94755859374996, 15.496191406250063], + [-7.151513671874937, 15.496191406250063], + [-7.35546875, 15.496191406250063], + [-7.55937, 15.496142578125045], + [-7.763378906249983, 15.496142578125045], + [-7.967285156249943, 15.496142578125045], + [-8.17124023437492, 15.496142578125045], + [-8.375195312499926, 15.496142578125045], + [-8.579150390624989, 15.496142578125045], + [-8.783105468749966, 15.496093750000028], + [-8.987060546874972, 15.496093750000028], + [-9.176806640624989, 15.496093750000028], + [-9.293701171875, 15.502832031249994], + [-9.335449218749972, 15.525683593750017], + [-9.350585937499943, 15.677392578125023], + [-9.38535156249992, 15.667626953124994], + [-9.4265625, 15.623046875000057], + [-9.447705078124926, 15.574853515624994], + [-9.440332031249937, 15.511669921875011], + [-9.446923828124937, 15.458203124999955], + [-9.577832031249955, 15.437255859375028], + [-9.755078124999926, 15.401464843750034], + [-9.941406249999972, 15.373779296874986], + [-10.129541015625023, 15.383691406249966], + [-10.19375, 15.396044921874989], + [-10.262109374999937, 15.416015624999972], + [-10.411816406249955, 15.437939453125011], + [-10.493164062500028, 15.439794921875034], + [-10.586572265624937, 15.434863281249989], + [-10.696582031249989, 15.42265625], + [-10.731982421874989, 15.394921875000037], + [-10.815087890624966, 15.281738281249972], + [-10.895605468749949, 15.150488281249977], + [-10.9482421875, 15.151123046875014], + [-11.007421874999977, 15.222900390624986], + [-11.169335937500023, 15.358642578125014], + [-11.36562, 15.536767578124966], + [-11.455224609374994, 15.625390625], + [-11.502685546874972, 15.636816406250006], + [-11.59672851562496, 15.573242187500028], + [-11.67587890624992, 15.512060546875006], + [-11.760156249999937, 15.425537109375057], + [-11.7984375, 15.342724609374969], + [-11.828759765624966, 15.244873046875014], + [-11.842236328124955, 15.129394531250028], + [-11.872851562499989, 14.995166015625031], + [-11.94091796875, 14.886914062500011], + [-12.02158203124992, 14.804931640625], + [-12.081542968749972, 14.766357421875057], + [-12.104687499999955, 14.745361328125043], + [-12.28061523437492, 14.80903320312504], + [-12.30253906249996, 14.816992187499977], + [-12.40869140625, 14.889013671874991], + [-12.459863281249937, 14.974658203125031], + [-12.543554687499949, 15.039013671874997], + [-12.659619140624955, 15.082080078124974], + [-12.735253906249994, 15.13125], + [-12.7703125, 15.186669921874966], + [-12.813183593749983, 15.223535156250023], + [-12.858496093749977, 15.242529296874977], + [-12.86264648437492, 15.26240234375004], + [-12.851904296874949, 15.289648437499991], + [-12.862695312499937, 15.340429687500034], + [-12.930859374999983, 15.453027343749966], + [-12.994335937499926, 15.504882812500057], + [-13.048535156249955, 15.496630859375045], + [-13.079296874999926, 15.51044921875004], + [-13.097900390624972, 15.535253906250034], + [-13.105273437499989, 15.57177734375], + [-13.142382812499989, 15.603320312500045], + [-13.206445312499994, 15.616894531249955], + [-13.258007812499926, 15.700390625000011], + [-13.297021484374966, 15.853857421875006], + [-13.347558593749966, 15.973486328125034], + [-13.40966796875, 16.059179687500006], + [-13.4541015625, 16.091113281250017], + [-13.486962890624937, 16.097021484374977], + [-13.498144531249977, 16.11030273437501], + [-13.506982421875023, 16.13520507812504], + [-13.555517578124949, 16.14404296874997], + [-13.623535156249943, 16.118310546874966], + [-13.684667968749977, 16.12690429687504], + [-13.71494140624992, 16.168798828125034], + [-13.756640624999989, 16.172509765624994], + [-13.809814453124972, 16.138037109374977], + [-13.868457031249932, 16.14814453125001], + [-13.932617187499943, 16.202880859375057], + [-13.968164062499994, 16.257226562500023], + [-13.975048828124983, 16.311132812500006], + [-14.085644531249955, 16.418847656249994], + [-14.300097656249932, 16.58027343750001], + [-14.533740234374932, 16.655957031249983], + [-14.786718749999949, 16.645898437499994], + [-14.928613281249994, 16.65351562500001], + [-14.959521484374989, 16.678906249999955], + [-14.99062, 16.676904296874994], + [-15.021923828125011, 16.64746093750003], + [-15.05522460937496, 16.640966796875034], + [-15.090576171874972, 16.657373046875023], + [-15.11264648437492, 16.64492187500005], + [-15.121435546874949, 16.603613281249977], + [-15.210546874999977, 16.582617187500063], + [-15.379980468749949, 16.58198242187501], + [-15.516699218750006, 16.556591796874983], + [-15.620800781249983, 16.50659179687503], + [-15.768212890624994, 16.485107421875], + [-15.958984374999943, 16.49213867187501], + [-16.074023437499932, 16.51044921875001], + [-16.113281249999943, 16.540136718750006], + [-16.168359374999966, 16.54707031250001], + [-16.23901367187497, 16.53129882812499], + [-16.30229492187499, 16.45131835937505], + [-16.358105468749983, 16.30717773437499], + [-16.40434570312499, 16.224902343750017], + [-16.44101562499992, 16.20454101562504], + [-16.480078124999977, 16.097216796875017], + [-16.50205078124992, 15.917333984375063], + [-16.53525390624995, 15.838378906250057], + [-16.53574218749995, 16.28681640625001], + [-16.48129882812495, 16.454248046875023], + [-16.463623046875, 16.60151367187501], + [-16.34667968749997, 16.926416015625023], + [-16.207470703124955, 17.192578124999983], + [-16.07890625, 17.54584960937501], + [-16.030322265625017, 17.88793945312497], + [-16.046728515624977, 18.223144531250057], + [-16.084960937499943, 18.52119140625001], + [-16.150097656249983, 18.718164062499994], + [-16.213085937499926, 19.003320312500023], + [-16.30590820312503, 19.15380859375003], + [-16.476171874999977, 19.285058593750023], + [-16.51445312499996, 19.361962890624994], + [-16.474804687499955, 19.390625], + [-16.371289062499926, 19.410253906250063], + [-16.305273437499977, 19.51264648437504], + [-16.44487304687499, 19.47314453124997], + [-16.283398437499955, 19.787158203125017], + [-16.23320312499996, 20.000976562500057], + [-16.241162109374983, 20.141259765625023], + [-16.21044921875003, 20.227929687500023], + [-16.333740234375, 20.415869140625006], + [-16.42978515624995, 20.652343750000057], + [-16.479199218749983, 20.689794921875034], + [-16.530419921875023, 20.709521484375074], + [-16.534912109374943, 20.65400390625004], + [-16.562695312499926, 20.604150390624994], + [-16.622509765624955, 20.634179687499994], + [-16.72836914062492, 20.80615234375003], + [-16.87607421874992, 21.086132812499955], + [-16.92792968750001, 21.114794921875045], + [-16.971142578124926, 21.076464843750045], + [-16.998242187499926, 21.039697265625023], + [-17.048046874999955, 20.80615234375003], + [-17.06396484375, 20.898828125], + [-17.042382812499966, 21.00800781250004], + [-17.00590820312499, 21.142431640624977], + [-16.96455078125001, 21.329248046875023], + [-16.836328125, 21.329394531250045], + [-16.60703125, 21.329638671875017], + [-16.37773437499999, 21.329931640624977], + [-16.1484375, 21.33022460937505], + [-15.919140625000011, 21.33046875], + [-15.689794921875006, 21.330761718749983], + [-15.46054687499992, 21.33105468750003], + [-15.231201171875, 21.331298828125], + [-15.001904296874926, 21.331591796875045], + [-14.772607421875023, 21.331884765625034], + [-14.543261718750017, 21.332128906249977], + [-14.313964843750028, 21.33242187500005], + [-14.084667968749926, 21.33271484375001], + [-13.855371093749937, 21.332958984374983], + [-13.626025390624932, 21.33325195312503], + [-13.396728515624943, 21.333544921875017], + [-13.167431640624926, 21.333789062500074], + [-13.016210937499949, 21.33393554687501], + [-13.025097656249983, 21.46679687499997], + [-13.032226562500028, 21.572070312500017], + [-13.041748046875, 21.71381835937504], + [-13.051220703124983, 21.854785156250074], + [-13.060644531249949, 21.995751953124994], + [-13.069580078125, 22.12817382812497], + [-13.07846679687492, 22.26044921875001], + [-13.086767578124949, 22.383251953124983], + [-13.094335937499977, 22.49599609375005], + [-13.107324218749937, 22.56074218750001], + [-13.155957031250011, 22.689306640625006], + [-13.166503906250028, 22.753222656250045], + [-13.153271484374983, 22.820507812499983], + [-13.12089843749996, 22.884082031250074], + [-13.031494140624943, 23.000244140625], + [-12.895996093749972, 23.08955078125001], + [-12.739599609375006, 23.192724609375063], + [-12.62041015624996, 23.271337890625006], + [-12.559375, 23.290820312500045], + [-12.372900390624977, 23.318017578124994], + [-12.226171874999949, 23.377490234375045], + [-12.083349609374977, 23.435449218750023], + [-12.023437499999943, 23.467578125000017], + [-12.016308593749983, 23.57646484374999], + [-12.016308593749983, 23.697900390625023], + [-12.016308593749983, 23.834033203125045], + [-12.016308593749983, 23.97021484375], + [-12.016308593749983, 24.106347656250023], + [-12.016308593749983, 24.242480468750045], + [-12.016308593749983, 24.378662109375], + [-12.016308593749983, 24.514794921875023], + [-12.016308593749983, 24.650976562500034], + [-12.016308593749983, 24.78710937499997], + [-12.016308593749983, 24.923242187499994], + [-12.016308593749983, 25.059375], + [-12.016308593749983, 25.19555664062497], + [-12.016308593749983, 25.331689453124994], + [-12.016308593749983, 25.467871093750034], + [-12.016308593749983, 25.604003906250057], + [-12.016308593749983, 25.740136718749994], + [-12.016308593749983, 25.876318359375006], + [-12.016308593749983, 25.995410156250017], + [-11.866650390624955, 25.995410156250017], + [-11.680371093749955, 25.995410156250017], + [-11.494042968749994, 25.995410156250017], + [-11.307714843749949, 25.995410156250017], + [-11.121386718749932, 25.995458984375034], + [-10.935107421874989, 25.995458984375034], + [-10.748779296874943, 25.995458984375034], + [-10.562451171874926, 25.995458984375034], + [-10.376123046874966, 25.995458984375034], + [-10.189794921874949, 25.995458984375034], + [-10.00351562499992, 25.995458984375034], + [-9.8171875, 25.995458984375034], + [-9.630859374999943, 25.99550781250005], + [-9.444531249999983, 25.99550781250005], + [-9.258203124999966, 25.99550781250005], + [-9.071923828124937, 25.99550781250005], + [-8.885644531249994, 25.99550781250005], + [-8.682226562499949, 25.99550781250005], + [-8.68212890625, 26.109472656250006], + [-8.68212890625, 26.273193359375057], + [-8.682324218749955, 26.49770507812505], + [-8.682617187500028, 26.723144531250057], + [-8.682861328124972, 26.92133789062501], + [-8.683105468749943, 27.119287109375023], + [-8.683349609375, 27.285937500000045], + [-8.495312499999955, 27.17534179687499], + [-8.307275390624937, 27.064746093750017], + [-8.119238281250006, 26.954150390625045], + [-7.931152343749972, 26.84355468749999], + [-7.743115234374926, 26.732958984375017], + [-7.555078125, 26.622363281250045], + [-7.36699218749996, 26.51176757812499], + [-7.178906249999926, 26.401171875000017], + [-6.990869140624966, 26.290576171875045], + [-6.802832031249949, 26.17998046874996], + [-6.61474609375, 26.069433593750006], + [-6.426708984374983, 25.958789062500017], + [-6.238671874999937, 25.848193359375045], + [-6.050585937499989, 25.73759765624999], + [-5.862548828124972, 25.627001953125017], + [-5.674511718749955, 25.516406250000045], + [-5.516943359375006, 25.42377929687501], + [-5.275, 25.274511718749977], + [-5.049511718749983, 25.135449218749983], + [-4.822607421874949, 24.99560546875], + [-5.172900390624989, 24.995410156250045], + [-5.640771484374994, 24.99516601562499], + [-5.959814453124977, 24.994970703125063], + [-6.287207031249977, 24.99482421875001], + [-6.594091796874977, 24.99462890624997], + [-6.567382812499943, 24.76679687500001], + [-6.538964843749937, 24.518164062499977], + [-6.510449218749983, 24.269482421874955], + [-6.482031249999977, 24.020800781250017], + [-6.453515624999937, 23.772167968749983], + [-6.425048828125, 23.523486328125017], + [-6.396582031249977, 23.274804687499994], + [-6.368115234374926, 23.026123046875057], + [-6.339648437499989, 22.777490234375023], + [-6.311132812499977, 22.52885742187499], + [-6.282714843749943, 22.28017578125005], + [-6.254199218749989, 22.031542968750017], + [-6.225732421874966, 21.782861328124966], + [-6.197265624999943, 21.53417968750003], + [-6.16879882812492, 21.285546875] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "Montserrat", + "iso_a2": "MS", + "iso_a3": "MSR", + "iso_n3": "500", + "continent": "North America" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-62.1484375, 16.74033203124999], + [-62.154248046875, 16.681201171875003], + [-62.221630859375, 16.699511718750003], + [-62.223046875, 16.7515625], + [-62.191357421875, 16.804394531249997], + [-62.17578125, 16.8095703125], + [-62.1484375, 16.74033203124999] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Mauritius", + "iso_a2": "MU", + "iso_a3": "MUS", + "iso_n3": "480", + "continent": "Seven seas (open ocean)" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [57.65126953125002, -20.48486328125], + [57.52480468750002, -20.51318359375], + [57.38330078125, -20.503710937500003], + [57.32832031250001, -20.45], + [57.31767578125002, -20.42763671875001], + [57.36513671875002, -20.40644531250001], + [57.36210937500002, -20.33759765625001], + [57.3857421875, -20.228613281250006], + [57.416015625, -20.18378906250001], + [57.486425781250006, -20.14394531250001], + [57.51503906250002, -20.055957031250003], + [57.57578125, -19.997167968750006], + [57.65654296875002, -19.98994140625001], + [57.73720703125002, -20.0984375], + [57.7919921875, -20.21259765625001], + [57.78066406250002, -20.326953125], + [57.725, -20.36884765625001], + [57.706640625, -20.434863281250003], + [57.65126953125002, -20.48486328125] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Malawi", + "iso_a2": "MW", + "iso_a3": "MWI", + "iso_n3": "454", + "continent": "Africa" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [34.71933593750006, -12.110644531249989], + [34.68417968750006, -12.118652343750014], + [34.66210937500003, -12.100781250000011], + [34.66748046874997, -12.047558593750011], + [34.6798828125001, -12.008886718750034], + [34.714941406250006, -12.002734375000031], + [34.73896484375004, -12.013085937500009], + [34.75595703125006, -12.030761718749957], + [34.75625, -12.059082031249957], + [34.74599609375005, -12.088378906249972], + [34.71933593750006, -12.110644531249989] + ] + ], + [ + [ + [34.64160156250003, -12.013671874999943], + [34.62177734375004, -12.066601562499983], + [34.58046875, -12.065820312499994], + [34.54160156250006, -12.018652343749977], + [34.55400390625002, -11.982226562500017], + [34.59140625, -11.97109375], + [34.62421875000004, -11.984765625], + [34.64160156250003, -12.013671874999943] + ] + ], + [ + [ + [33.330859375000074, -9.519140624999963], + [33.42089843750003, -9.608007812500034], + [33.46777343749997, -9.61972656250002], + [33.52753906250004, -9.60751953125002], + [33.69765625, -9.598144531249972], + [33.766210937500006, -9.6109375], + [33.8541992187501, -9.662988281249952], + [33.88886718750004, -9.670117187499983], + [33.943945312500006, -9.67216796874996], + [33.953710937500006, -9.658203124999957], + [33.959375, -9.62734375], + [33.949609375, -9.565332031249952], + [33.96210937500004, -9.531738281249943], + [33.99560546875003, -9.495410156250003], + [34.08857421875004, -9.537792968750026], + [34.32089843750006, -9.731542968749977], + [34.32783203125004, -9.756542968750011], + [34.475976562499994, -9.948828125], + [34.524218750000074, -10.03017578124998], + [34.524218750000074, -10.073144531250023], + [34.56992187500006, -10.241113281249966], + [34.579980468749994, -10.319824218750014], + [34.56972656250005, -10.379687499999946], + [34.571582031250074, -10.427636718750037], + [34.58955078125004, -10.496191406249963], + [34.58359375, -10.525097656249997], + [34.63652343750002, -10.625585937499949], + [34.66181640625004, -10.71005859375002], + [34.66708984375006, -10.792480468750028], + [34.65234374999997, -10.87285156249996], + [34.60566406250004, -10.990234374999986], + [34.59765625000003, -11.0375], + [34.60791015624997, -11.08046875], + [34.638085937499994, -11.127148437499997], + [34.68847656249997, -11.177441406250026], + [34.726464843749994, -11.238183593749966], + [34.75214843750004, -11.309472656250009], + [34.77382812500005, -11.341699218750009], + [34.80087890625006, -11.34091796875002], + [34.85058593749997, -11.351953124999966], + [34.890625, -11.3935546875], + [34.93701171874997, -11.463476562500034], + [34.95263671874997, -11.54375], + [34.95947265625003, -11.578125], + [34.82656250000005, -11.575683593749972], + [34.65957031250005, -11.58867187499996], + [34.61855468750005, -11.620214843749991], + [34.60625, -11.690039062500006], + [34.5539062500001, -11.834082031249949], + [34.524804687499994, -11.887011718749989], + [34.46289062500003, -11.98378906249998], + [34.37597656249997, -12.120214843749977], + [34.3578125, -12.164746093749997], + [34.36083984375003, -12.210546875], + [34.41210937499997, -12.395898437500009], + [34.46582031249997, -12.590722656249994], + [34.48291015625003, -12.66679687499996], + [34.52128906250002, -12.925781249999957], + [34.542578125, -13.108691406250003], + [34.54570312500002, -13.21630859375], + [34.56367187500004, -13.360156249999989], + [34.6115234375001, -13.437890625000023], + [34.66162109375003, -13.486718750000023], + [34.85048828125005, -13.516015625000037], + [34.90683593750006, -13.551660156250009], + [35.0138671875001, -13.64345703124998], + [35.247460937499994, -13.896875], + [35.37578125000002, -14.05869140625002], + [35.48847656250004, -14.20107421874998], + [35.69042968749997, -14.465527343750026], + [35.84716796875003, -14.670898437500043], + [35.86669921875003, -14.863769531249986], + [35.8927734375001, -14.891796875000011], + [35.839941406250006, -15.034667968749986], + [35.80537109375004, -15.26562], + [35.83027343750004, -15.418945312500028], + [35.819921875, -15.680371093749997], + [35.7912109375001, -15.958691406250026], + [35.75527343750005, -16.058300781249983], + [35.708886718749994, -16.095800781249977], + [35.5993164062501, -16.12587890624998], + [35.35849609375006, -16.160546875000023], + [35.3224609375001, -16.193164062500017], + [35.29150390624997, -16.247167968750006], + [35.242773437500006, -16.375390625], + [35.1852539062501, -16.504882812500014], + [35.16718750000004, -16.56025390625001], + [35.178320312500006, -16.57333984375002], + [35.22978515625002, -16.639257812500034], + [35.281152343749994, -16.8078125], + [35.29042968750005, -17.096972656250017], + [35.27255859375006, -17.11845703124996], + [35.2013671875001, -17.13105468750004], + [35.124609375, -17.127246093749974], + [35.093066406250074, -17.11093750000002], + [35.06464843750004, -17.078613281250014], + [35.04394531250003, -17.01689453124996], + [35.09423828125003, -16.973828124999983], + [35.11210937500002, -16.898535156250006], + [35.07988281250002, -16.83388671874998], + [35.01533203125004, -16.819531249999983], + [34.93339843750002, -16.760351562500006], + [34.75878906249997, -16.567089843749983], + [34.612695312499994, -16.431542968749994], + [34.528125, -16.319140625], + [34.441308593749994, -16.274414062499957], + [34.41640625000005, -16.24677734375001], + [34.39550781249997, -16.19921875], + [34.39511718750006, -16.130859375000014], + [34.4030273437501, -16.08027343750001], + [34.37597656249997, -16.02373046874996], + [34.28828125000004, -15.936132812499963], + [34.2482421875001, -15.8875], + [34.24609374999997, -15.829394531249974], + [34.283007812500074, -15.773437500000028], + [34.35800781250006, -15.705273437499997], + [34.4147460937501, -15.566796875000037], + [34.434960937499994, -15.477148437499977], + [34.54082031250002, -15.297265625], + [34.555468750000074, -15.14091796874996], + [34.55761718749997, -15.015917968749989], + [34.551171875, -14.922363281250014], + [34.52412109375004, -14.730761718749974], + [34.50527343750005, -14.598144531249957], + [34.375, -14.4248046875], + [34.33251953125003, -14.40859375], + [34.20878906250002, -14.423730468750037], + [34.10185546875002, -14.44931640625002], + [34.04941406250006, -14.485253906249966], + [33.969824218750006, -14.487109374999989], + [33.76142578125004, -14.517285156250011], + [33.69609375000002, -14.530273437499986], + [33.65830078125006, -14.561621093749977], + [33.63642578125004, -14.568164062499974], + [33.50527343750005, -14.434082031250014], + [33.38994140625002, -14.289453125000037], + [33.24355468750005, -14.043066406250034], + [33.20175781250006, -14.013378906250026], + [33.148046875, -13.94091796875], + [33.103613281250006, -13.959179687499997], + [33.042382812499994, -14.01005859374996], + [33.00927734374997, -14.023730468750003], + [32.99208984375005, -14.02216796875004], + [32.98125, -14.009375], + [32.96757812500002, -13.976855468750045], + [32.9203125, -13.88388671875002], + [32.86718750000003, -13.817382812499972], + [32.81103515625003, -13.791601562499963], + [32.76513671874997, -13.761035156250031], + [32.78535156250004, -13.731445312499957], + [32.80673828125006, -13.710253906249989], + [32.797460937500006, -13.6884765625], + [32.77177734375002, -13.656542968749974], + [32.67207031250004, -13.610351562499986], + [32.67041015624997, -13.590429687500006], + [32.75839843750006, -13.55029296875], + [32.8140625, -13.502734374999989], + [32.851855468750074, -13.457031250000014], + [32.899707031250074, -13.357031249999977], + [32.93857421875006, -13.25742187500002], + [32.96757812500002, -13.225], + [32.97763671875006, -13.158886718750026], + [32.97109375000005, -13.084277343750003], + [32.99042968750004, -12.989453124999969], + [33, -12.89960937500004], + [32.97050781250002, -12.864746093749957], + [32.945605468750074, -12.804394531250011], + [32.97519531250006, -12.701367187499983], + [33.021582031250006, -12.63046875000002], + [33.24345703125002, -12.556542968749966], + [33.39794921874997, -12.489843749999963], + [33.43066406249997, -12.460449218750014], + [33.48320312500002, -12.403417968750034], + [33.51230468750006, -12.347753906249977], + [33.4914062500001, -12.331054687499943], + [33.37001953125005, -12.32968750000002], + [33.340136718750074, -12.308300781250011], + [33.25234375000005, -12.112597656250031], + [33.3009765625001, -11.888183593749957], + [33.30507812500005, -11.8], + [33.3039062500001, -11.69082031249998], + [33.2882812500001, -11.611132812500003], + [33.25, -11.577636718750014], + [33.226367187500074, -11.534863281250011], + [33.23271484375002, -11.417675781250026], + [33.26835937500002, -11.403906249999977], + [33.34550781250002, -11.249121093749977], + [33.379785156249994, -11.15791015625004], + [33.338671875000074, -11.085156249999969], + [33.29326171875002, -10.981152343749997], + [33.27275390625002, -10.915039062499943], + [33.261328125, -10.893359374999974], + [33.29277343750002, -10.85234375], + [33.3449218750001, -10.812695312499969], + [33.403125, -10.801757812499957], + [33.464746093749994, -10.78310546874998], + [33.65908203125005, -10.590527343749997], + [33.661523437499994, -10.553125], + [33.6261718750001, -10.488574218750017], + [33.55371093749997, -10.391308593750011], + [33.53759765624997, -10.351562499999986], + [33.52890625, -10.234667968749974], + [33.50009765625006, -10.199707031249957], + [33.39355468750003, -10.120898437499989], + [33.31152343750003, -10.037988281249966], + [33.3371093750001, -9.954003906249994], + [33.350976562499994, -9.862207031250037], + [33.310449218749994, -9.811816406249989], + [33.25, -9.759570312500003], + [33.212695312500074, -9.683007812500037], + [33.19570312500005, -9.626171875], + [33.148046875, -9.603515625], + [33.10449218750003, -9.602636718750006], + [33.0724609375001, -9.638183593749957], + [33.03779296875004, -9.635058593749946], + [32.99599609375005, -9.622851562499946], + [32.98212890625004, -9.573632812499952], + [32.97988281250005, -9.520312500000017], + [32.95107421875005, -9.484179687500031], + [32.92333984374997, -9.433984375000023], + [32.91992187500003, -9.407421875000026], + [32.937304687500074, -9.39970703124996], + [32.974023437499994, -9.395019531249986], + [33.13046875, -9.495898437500017], + [33.22529296875004, -9.500488281249972], + [33.330859375000074, -9.519140624999963] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Malaysia", + "iso_a2": "MY", + "iso_a3": "MYS", + "iso_n3": "458", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [111.38925781250006, 2.415332031250031], + [111.35869140625007, 2.40219726562502], + [111.31152343749997, 2.437597656250034], + [111.30039062500006, 2.741162109374969], + [111.33349609374997, 2.768310546875], + [111.35507812500012, 2.764453125], + [111.3783203125, 2.709326171874963], + [111.37626953125002, 2.576318359375051], + [111.38046875000006, 2.458935546875026], + [111.38925781250006, 2.415332031250031] + ] + ], + [ + [ + [104.22158203125, 2.731738281250003], + [104.17333984375003, 2.721337890625023], + [104.146875, 2.728222656249997], + [104.1291015625001, 2.767236328125037], + [104.16982421875, 2.856835937499994], + [104.18476562500004, 2.871728515625009], + [104.22324218750006, 2.774218750000045], + [104.22158203125, 2.731738281250003] + ] + ], + [ + [ + [101.3185546875001, 2.988476562499997], + [101.26806640625003, 2.97041015625004], + [101.26542968750002, 2.996484375000023], + [101.27421875000002, 3.032812499999963], + [101.31123046875004, 3.0673828125], + [101.32841796875007, 3.047607421875057], + [101.3185546875001, 2.988476562499997] + ] + ], + [ + [ + [117.88476562499997, 4.186132812500006], + [117.74541015625002, 4.166943359375011], + [117.64902343750012, 4.168994140624974], + [117.66679687500002, 4.204003906250009], + [117.66210937500003, 4.250195312499997], + [117.70800781249997, 4.262402343749997], + [117.7614257812501, 4.25234375], + [117.88476562499997, 4.186132812500006] + ] + ], + [ + [ + [100.28896484375005, 5.294726562499989], + [100.26376953125006, 5.266992187500023], + [100.19101562500006, 5.28286132812498], + [100.20390625000002, 5.446875], + [100.2455078125, 5.467773437499986], + [100.31015625000012, 5.43793945312504], + [100.33886718749997, 5.410058593750037], + [100.28896484375005, 5.294726562499989] + ] + ], + [ + [ + [99.848046875, 6.465722656249994], + [99.9186523437501, 6.358593750000011], + [99.88339843750012, 6.310839843749974], + [99.86582031250006, 6.297070312500011], + [99.82324218750003, 6.312744140625], + [99.7826171875, 6.271582031249963], + [99.74375, 6.263281249999963], + [99.70468750000012, 6.337548828124994], + [99.656640625, 6.367138671874983], + [99.64628906250002, 6.418359375000023], + [99.71054687500006, 6.42734375], + [99.74921875000004, 6.409619140625026], + [99.82167968750005, 6.44501953125004], + [99.848046875, 6.465722656249994] + ] + ], + [ + [ + [100.5638671875, 6.467529296875], + [100.62949218750006, 6.447998046875028], + [100.715625, 6.480664062500011], + [100.75449218750012, 6.460058593749991], + [100.79375, 6.426171875000023], + [100.81650390625006, 6.331640625000034], + [100.87392578125, 6.24541015624996], + [100.98876953124997, 6.257666015624977], + [101.02939453125006, 6.245312500000026], + [101.05351562500002, 6.242578125], + [101.07597656250007, 6.16606445312496], + [101.08652343750006, 6.03369140625], + [101.0755859375, 5.956494140624983], + [100.99277343750006, 5.846191406249986], + [100.98164062500004, 5.771044921875045], + [101.02519531250002, 5.72451171874998], + [101.0817382812501, 5.674902343749991], + [101.1139648437501, 5.636767578125045], + [101.1476562500001, 5.64306640625], + [101.190625, 5.66875], + [101.22978515625002, 5.733691406249989], + [101.2570312500001, 5.789355468750045], + [101.40419921875005, 5.851660156250034], + [101.5560546875, 5.907763671875003], + [101.57675781250012, 5.902001953124994], + [101.60136718750007, 5.877148437499983], + [101.65000000000012, 5.795996093749977], + [101.67841796875004, 5.778808593750028], + [101.71953125000007, 5.770605468750048], + [101.7907226562501, 5.77934570312496], + [101.87363281250012, 5.825292968749991], + [101.9171875000001, 5.911376953125028], + [101.93613281250006, 5.97934570312502], + [102.05517578124997, 6.096679687500043], + [102.06835937499997, 6.18466796875002], + [102.10107421874997, 6.242236328125031], + [102.27402343750006, 6.203417968750017], + [102.34013671875002, 6.172021484375023], + [102.534375, 5.862548828125028], + [102.79023437500004, 5.644921875000023], + [102.89853515625012, 5.563769531250003], + [102.98242187499997, 5.524951171875003], + [103.09707031250005, 5.408447265624986], + [103.19697265625004, 5.262158203125026], + [103.41582031250007, 4.85029296875004], + [103.45390625000002, 4.669482421874974], + [103.46875, 4.393261718750011], + [103.42050781250012, 3.976855468750003], + [103.36201171875004, 3.769140624999963], + [103.37333984375002, 3.671093749999969], + [103.453515625, 3.520605468750048], + [103.42949218750002, 3.37856445312498], + [103.44501953125004, 3.260595703125006], + [103.43945312499997, 2.93310546875], + [103.48515625000007, 2.836572265625051], + [103.53730468750004, 2.774755859374977], + [103.8122070312501, 2.58046875], + [103.83232421875002, 2.508496093749997], + [103.96777343749997, 2.261230468749986], + [104.21855468750002, 1.722851562499997], + [104.28847656250005, 1.48066406250004], + [104.28037109375006, 1.415576171875003], + [104.25009765625012, 1.388574218750009], + [104.17636718750012, 1.36489257812498], + [104.11494140625004, 1.412255859375037], + [104.09423828124997, 1.446191406250023], + [104.10058593750003, 1.488330078125003], + [104.07617187500003, 1.52978515625], + [104.01601562500005, 1.579296874999969], + [103.98144531250003, 1.623632812500034], + [103.99121093749997, 1.550048828125043], + [103.99150390625002, 1.454785156249997], + [103.91513671875006, 1.446679687500037], + [103.81679687500005, 1.4765625], + [103.6945312500001, 1.449658203125026], + [103.54980468750003, 1.332812500000017], + [103.48027343750007, 1.329492187499966], + [103.42734375000012, 1.42983398437498], + [103.40000000000012, 1.497851562499989], + [103.35683593750005, 1.546142578125057], + [102.896875, 1.79233398437502], + [102.72714843750012, 1.855566406250034], + [102.54824218750005, 2.04238281249998], + [102.14560546875012, 2.248486328125054], + [101.88994140625007, 2.44941406250004], + [101.78125, 2.57358398437502], + [101.51972656250004, 2.683642578124974], + [101.40683593750006, 2.813476562500043], + [101.35136718750002, 2.838964843750006], + [101.29550781250012, 2.885205078125011], + [101.35429687500002, 3.011132812499994], + [101.33017578125006, 3.142480468750023], + [101.29990234375012, 3.253271484375034], + [101.1154296875001, 3.472021484375006], + [101.02480468750005, 3.624707031250026], + [100.85126953125004, 3.776708984374991], + [100.78183593750006, 3.864453125000026], + [100.71542968750006, 3.966210937499966], + [100.7570312500001, 4.00180664062502], + [100.79550781250012, 4.023388671874983], + [100.76025390624997, 4.097216796875017], + [100.66103515625, 4.225732421874994], + [100.61455078125002, 4.3734375], + [100.61455078125002, 4.652246093750023], + [100.47343750000007, 5.044287109375048], + [100.35263671875006, 5.587695312499989], + [100.37402343749997, 5.777978515625037], + [100.34326171874997, 5.984179687500031], + [100.26328125000006, 6.182519531250023], + [100.1583984375001, 6.324218750000028], + [100.11914062499997, 6.441992187500048], + [100.13798828125002, 6.488671875000051], + [100.16123046875012, 6.641601562500028], + [100.17675781250003, 6.671826171874969], + [100.21660156250002, 6.686621093749963], + [100.26142578125004, 6.682714843749963], + [100.3454101562501, 6.549902343750006], + [100.5638671875, 6.467529296875] + ] + ], + [ + [ + [116.80771484375006, 6.69106445312498], + [116.78808593749997, 6.606103515624994], + [116.81240234375, 6.60791015625], + [116.91328125000004, 6.659667968749986], + [117.01855468750003, 6.797363281250057], + [117.07792968750002, 6.916845703124977], + [117.12851562500012, 6.968896484375009], + [117.2298828125, 6.939990234374974], + [117.25244140624997, 6.919238281250017], + [117.24531250000004, 6.833398437500023], + [117.25498046875012, 6.783447265624972], + [117.29404296875006, 6.676904296875023], + [117.38037109374997, 6.612255859374997], + [117.49921875000004, 6.57148437500004], + [117.60966796875002, 6.512646484375054], + [117.64570312500004, 6.473681640625017], + [117.66962890625004, 6.426757812500043], + [117.69375, 6.35], + [117.69560546875002, 6.27231445312502], + [117.61591796875004, 6.196533203125043], + [117.6498046875, 6.073583984375034], + [117.64453124999997, 6.001855468749994], + [117.61718750000003, 5.940722656249974], + [117.5011718750001, 5.884667968750009], + [117.81767578125002, 5.9404296875], + [117.89580078125002, 5.972265625], + [118.00380859375, 6.053320312499991], + [118.0617187500001, 5.983447265624974], + [118.11582031250006, 5.8625], + [118.07226562500003, 5.832080078125045], + [117.93476562500004, 5.7875], + [117.92802734375002, 5.769189453125023], + [117.97363281249997, 5.70625], + [118.03115234375, 5.712109375000026], + [118.14462890625006, 5.754199218749989], + [118.24912109375006, 5.820556640625], + [118.29980468749997, 5.819726562500009], + [118.35312500000012, 5.80605468749998], + [118.45634765625002, 5.763427734375], + [118.51416015624997, 5.72890625], + [118.56308593750006, 5.684521484374997], + [118.59482421875006, 5.592089843750003], + [118.71367187500002, 5.558544921875011], + [118.95732421875002, 5.429003906249989], + [119.00253906250006, 5.41782226562502], + [119.05, 5.415234375000026], + [119.17841796875004, 5.430908203125028], + [119.22343750000007, 5.412646484375031], + [119.25556640625004, 5.365917968750026], + [119.2663085937501, 5.308105468750057], + [119.26279296875006, 5.245898437499989], + [119.2497070312501, 5.198730468749972], + [119.21962890625, 5.159814453125037], + [119.13222656250005, 5.100488281250037], + [118.9125, 5.02290039062504], + [118.6720703125001, 4.96406250000004], + [118.55136718750006, 4.968115234374977], + [118.38183593750003, 5.018505859375026], + [118.32001953125004, 5.012011718750045], + [118.26054687500007, 4.988867187500034], + [118.18535156250002, 4.828515625000051], + [118.32421874999997, 4.668701171875], + [118.5625, 4.502148437499997], + [118.59511718750005, 4.460644531249983], + [118.586328125, 4.409667968749986], + [118.54833984375003, 4.379248046875006], + [118.49804687499997, 4.362353515625031], + [118.36406250000002, 4.335742187500017], + [118.2287109375001, 4.316015625], + [118.11728515625012, 4.287597656249986], + [118.008203125, 4.250244140625014], + [117.89560546875006, 4.262939453125028], + [117.74101562500002, 4.337548828125037], + [117.6964843750001, 4.342822265625045], + [117.6498046875, 4.30449218749996], + [117.60380859375002, 4.2], + [117.5744140625001, 4.17060546875004], + [117.5373046875001, 4.171386718750028], + [117.45087890625004, 4.192871093750043], + [117.2775390625001, 4.299316406249972], + [117.10058593750003, 4.337060546875023], + [116.84355468750007, 4.340136718750031], + [116.69785156250006, 4.354980468750028], + [116.63867187499997, 4.339111328125], + [116.5890625000001, 4.338427734375031], + [116.553125, 4.359863281250057], + [116.51474609375006, 4.370800781249969], + [116.41455078124997, 4.308203125], + [116.36767578125003, 4.32734375], + [116.32031249999997, 4.35371093750004], + [116.23623046875005, 4.362548828124972], + [116.13447265625004, 4.355175781249983], + [116.02158203125012, 4.290673828124994], + [115.89619140625004, 4.348681640624989], + [115.86074218750005, 4.348046875000037], + [115.83681640625005, 4.333300781249974], + [115.78242187500004, 4.25375976562502], + [115.67880859375006, 4.193017578124994], + [115.62753906250012, 4.081982421875011], + [115.59609375000005, 3.975537109374997], + [115.56845703125006, 3.938769531249974], + [115.56093750000005, 3.73305664062498], + [115.54453125000006, 3.633691406249994], + [115.570703125, 3.502294921875048], + [115.56611328125004, 3.445751953124983], + [115.51992187500005, 3.361669921874991], + [115.51425781250006, 3.342382812499977], + [115.48974609375003, 3.208642578124994], + [115.49912109375006, 3.17314453124996], + [115.49316406250003, 3.128125], + [115.45439453125002, 3.034326171875009], + [115.3841796875, 3.00874023437504], + [115.31015625000012, 2.993945312500045], + [115.24697265625005, 3.025927734374989], + [115.18994140624997, 2.974462890624977], + [115.117578125, 2.89487304687502], + [115.086328125, 2.841113281249989], + [115.08652343750006, 2.79121093750004], + [115.09365234375, 2.757812499999986], + [115.07890625000002, 2.7234375], + [115.07705078125, 2.687011718750043], + [115.08076171875004, 2.63422851562504], + [115.12988281249997, 2.612402343750034], + [115.1808593750001, 2.56689453125], + [115.1791015625, 2.523193359374972], + [115.15078125, 2.492919921875028], + [115.08652343750006, 2.446142578124991], + [114.969140625, 2.350830078125028], + [114.83632812500005, 2.269384765625048], + [114.78642578125002, 2.250488281250014], + [114.76835937500007, 2.212939453125003], + [114.75869140625005, 2.162402343750017], + [114.78798828125, 2.051611328125006], + [114.81582031250005, 2.018945312500009], + [114.83056640625003, 1.980029296874989], + [114.81269531250004, 1.933789062499983], + [114.8, 1.893945312500037], + [114.75107421875006, 1.868994140625006], + [114.703515625, 1.850781250000026], + [114.68613281250012, 1.819042968750054], + [114.66093750000002, 1.686279296875], + [114.63222656250005, 1.61704101562502], + [114.56748046875006, 1.514160156250014], + [114.54589843750003, 1.467138671875034], + [114.5125, 1.452001953124963], + [114.387109375, 1.500048828124989], + [114.27470703125002, 1.470898437499997], + [114.12597656250003, 1.45234375000004], + [114, 1.455273437500011], + [113.90234375000003, 1.434277343749997], + [113.83525390625002, 1.379882812500014], + [113.76035156250006, 1.311376953125006], + [113.68164062500003, 1.260595703124963], + [113.6222656250001, 1.2359375], + [113.51318359374997, 1.308398437500017], + [113.45820312500004, 1.302148437499994], + [113.35898437500006, 1.327148437500028], + [113.12626953125002, 1.408105468749994], + [113.06865234375002, 1.431787109375023], + [113.00654296875004, 1.433886718750003], + [112.98828124999997, 1.457128906250034], + [112.99804687500003, 1.496240234375009], + [112.98828124999997, 1.547558593749983], + [112.94296875000006, 1.566992187500034], + [112.47617187500006, 1.559082031250028], + [112.34160156250002, 1.514746093749963], + [112.25068359375004, 1.479638671875009], + [112.1857421875001, 1.4390625], + [112.16738281250005, 1.33818359374996], + [112.12861328125004, 1.243603515624969], + [112.078515625, 1.143359374999974], + [111.92314453125002, 1.113281249999972], + [111.80898437500005, 1.011669921874969], + [111.76972656250004, 0.999462890624969], + [111.69130859375005, 1.014208984375045], + [111.60742187500003, 1.02260742187498], + [111.54667968750007, 0.994335937499983], + [111.48320312500002, 0.995751953125009], + [111.28671875000006, 1.043212890625], + [111.10136718750002, 1.050537109374986], + [110.99609375000003, 1.026367187500028], + [110.93808593750006, 1.017333984375057], + [110.61474609375003, 0.878125], + [110.50576171875005, 0.861962890625023], + [110.46142578124997, 0.882080078125028], + [110.39902343750006, 0.9390625], + [110.31523437500002, 0.995996093749966], + [110.11474609375003, 1.190136718749997], + [110.04082031250007, 1.235742187499966], + [109.99169921875003, 1.282568359375006], + [109.94492187500006, 1.338037109375023], + [109.87851562500006, 1.397851562500037], + [109.8180664062501, 1.438964843749972], + [109.7357421875, 1.522949218750028], + [109.65400390625004, 1.614892578125023], + [109.63583984375006, 1.776660156250031], + [109.57080078124997, 1.806298828125023], + [109.54892578125006, 1.848339843749983], + [109.53896484375, 1.89619140625004], + [109.62890625000003, 2.027539062499983], + [109.69433593750003, 1.888769531250048], + [109.71962890625, 1.857812500000037], + [109.86484375000012, 1.764453125000031], + [109.9845703125001, 1.717626953124991], + [110.11406250000007, 1.69858398437502], + [110.24589843750002, 1.694726562500037], + [110.29833984374997, 1.701171875000014], + [110.34921875000012, 1.719726562499972], + [110.39951171875006, 1.699853515625009], + [110.6751953125, 1.548046875], + [110.78203125000002, 1.520849609374963], + [110.894921875, 1.532470703125014], + [110.93994140625003, 1.517333984375043], + [111.09843750000007, 1.400878906250028], + [111.1452148437501, 1.386962890625043], + [111.22324218750012, 1.395849609374991], + [111.1234375, 1.449023437499989], + [111.0580078125, 1.48666992187502], + [111.0287109375, 1.557812500000026], + [111.0465820312501, 1.63364257812502], + [111.11015625000007, 1.68408203125], + [111.15419921875005, 1.738769531250043], + [111.17001953125006, 1.90229492187504], + [111.19804687500002, 1.985107421875043], + [111.25087890625005, 2.063867187500009], + [111.26816406250012, 2.13974609375002], + [111.20888671875, 2.19765625], + [111.19550781250004, 2.297167968750017], + [111.20859375000012, 2.379638671875043], + [111.24218749999997, 2.435742187500011], + [111.29589843749997, 2.398779296875034], + [111.35136718750007, 2.364453125000054], + [111.40615234375005, 2.36787109375004], + [111.44384765625003, 2.381542968749983], + [111.45078125000006, 2.424072265625028], + [111.44042968750003, 2.498095703125017], + [111.44326171875, 2.63432617187496], + [111.5125, 2.743017578124991], + [111.62324218750004, 2.81796875], + [111.72773437500004, 2.853808593750003], + [112.11884765625004, 2.91469726562498], + [112.73730468749997, 3.070458984374994], + [112.92050781250012, 3.13071289062502], + [112.98789062500006, 3.161914062499974], + [113.04472656250002, 3.205224609375009], + [113.14023437500012, 3.343505859375028], + [113.32011718750007, 3.561474609375026], + [113.44609375000007, 3.740576171875006], + [113.7121093750001, 4.00141601562504], + [113.92392578125006, 4.243212890625003], + [113.95253906250005, 4.288720703125037], + [113.98779296875003, 4.420703125000017], + [113.99042968750004, 4.482812499999966], + [113.98427734375, 4.545800781250009], + [114.0125, 4.57524414062496], + [114.05361328125, 4.592871093750006], + [114.0638671875, 4.592675781249966], + [114.09511718750005, 4.565234374999974], + [114.16884765625005, 4.526953125], + [114.22412109375003, 4.47788085937502], + [114.26103515625002, 4.414257812500026], + [114.28759765624997, 4.354736328124986], + [114.28964843750006, 4.304199218749986], + [114.3229492187501, 4.262792968749991], + [114.41660156250006, 4.255859375], + [114.44707031250007, 4.203564453125011], + [114.51220703125003, 4.113574218749974], + [114.57177734374997, 4.049072265624972], + [114.60830078125005, 4.023974609375017], + [114.65410156250007, 4.037646484375045], + [114.725, 4.096533203124963], + [114.77617187500007, 4.168798828125034], + [114.81044921875, 4.266503906250037], + [114.78349609375002, 4.280761718750014], + [114.83105468749997, 4.354492187500028], + [114.84023437500005, 4.393212890625009], + [114.81826171875, 4.42875976562496], + [114.79013671875006, 4.463916015625017], + [114.77929687499997, 4.553027343749974], + [114.75996093750004, 4.66650390625], + [114.74667968750006, 4.718066406250017], + [114.78417968749997, 4.754833984375054], + [114.86455078125002, 4.801757812500014], + [114.9447265625, 4.85625], + [115.02675781250005, 4.899707031249989], + [115.02880859375003, 4.821142578124963], + [115.02675781250005, 4.691357421874997], + [115.05156250000002, 4.582666015624966], + [115.10703125000006, 4.390429687499974], + [115.17060546875004, 4.364208984375054], + [115.24667968750006, 4.34721679687496], + [115.290625, 4.352587890624989], + [115.31923828125, 4.365283203125003], + [115.32675781250006, 4.380761718750051], + [115.27929687499997, 4.456347656249989], + [115.26669921875006, 4.633984375000026], + [115.2279296875, 4.750585937499977], + [115.16845703125003, 4.866699218750014], + [115.1400390625, 4.899755859374991], + [115.37490234375, 4.932763671874966], + [115.42763671875, 4.969189453125026], + [115.51982421875002, 5.048925781250006], + [115.55449218750007, 5.093554687500045], + [115.58203125000003, 5.194140625000017], + [115.46689453125006, 5.254101562499983], + [115.42167968750002, 5.330517578124997], + [115.41904296875012, 5.413183593749963], + [115.55644531250002, 5.566699218749974], + [115.60390625, 5.603417968749994], + [115.62451171874997, 5.548876953124989], + [115.68505859375003, 5.535107421875026], + [115.74082031250012, 5.533007812500045], + [115.79687, 5.536132812499972], + [115.8771484375001, 5.613525390625014], + [115.91845703124997, 5.724951171874977], + [116.0597656250001, 5.882373046874989], + [116.11005859375004, 6.00327148437502], + [116.1383789062501, 6.12954101562498], + [116.49472656250006, 6.521679687500026], + [116.53828125000004, 6.582714843750026], + [116.74980468750007, 6.977099609374989], + [116.77617187500002, 6.990234375], + [116.83300781249997, 6.952050781250037], + [116.8498046875001, 6.826708984374989], + [116.8419921875001, 6.772070312499963], + [116.80771484375006, 6.69106445312498] + ] + ], + [ + [ + [117.14160156250003, 7.168212890625028], + [117.08066406250006, 7.115283203124989], + [117.06015625000006, 7.178857421874966], + [117.06425781250007, 7.26069335937504], + [117.146875, 7.337011718750034], + [117.2640625, 7.351660156250006], + [117.28076171874997, 7.290625], + [117.26679687500004, 7.220800781249991], + [117.23935546875006, 7.184765625000026], + [117.14160156250003, 7.168212890625028] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Namibia", + "iso_a2": "NA", + "iso_a3": "NAM", + "iso_n3": "516", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [23.380664062500017, -17.640625], + [23.59492187500001, -17.599414062500003], + [23.799218750000023, -17.56015625], + [24.036914062500017, -17.52089843750001], + [24.227148437500006, -17.489550781250003], + [24.27490234375, -17.481054687500006], + [24.73291015625, -17.51777343750001], + [24.932421875000017, -17.54345703125], + [25.001757812500017, -17.56855468750001], + [25.092187500000023, -17.634375], + [25.2587890625, -17.793554687500006], + [25.21601562500001, -17.78759765625], + [24.909082031250023, -17.821386718750006], + [24.79218750000001, -17.86464843750001], + [24.530566406250017, -18.052734375], + [24.474902343750017, -18.02851562500001], + [24.412207031250006, -17.98945312500001], + [24.358984375, -17.97822265625001], + [24.243945312500017, -18.0234375], + [24.129296875000023, -18.07753906250001], + [24.00263671875001, -18.154101562500003], + [23.898339843750023, -18.22919921875001], + [23.8642578125, -18.26953125], + [23.700488281250017, -18.42431640625], + [23.64716796875001, -18.44941406250001], + [23.599707031250006, -18.4599609375], + [23.58056640625, -18.452929687500003], + [23.56015625, -18.38642578125001], + [23.459765625000017, -18.231054687500006], + [23.298632812500017, -18.02734375], + [23.2515625, -18.00751953125001], + [23.219335937500006, -17.99970703125001], + [23.099902343750017, -18.009570312500003], + [22.752734375000017, -18.0671875], + [22.460058593750006, -18.11572265625], + [22.01142578125001, -18.19863281250001], + [21.529687500000023, -18.265625], + [21.232519531250006, -18.30683593750001], + [20.97412109375, -18.31884765625], + [20.97431640625001, -18.5205078125], + [20.975, -18.928515625], + [20.9755859375, -19.33642578125], + [20.976171875, -19.74433593750001], + [20.976855468750017, -20.15234375], + [20.977441406250023, -20.56025390625001], + [20.978125, -20.96816406250001], + [20.97871093750001, -21.376074218750006], + [20.979296875000017, -21.78408203125001], + [20.9794921875, -21.9619140625], + [20.970996093750017, -22.00019531250001], + [20.82275390625, -22.00019531250001], + [20.4875, -22.00019531250001], + [20.205371093750017, -22.00019531250001], + [19.977343750000017, -22.00019531250001], + [19.977636718750006, -22.242578125], + [19.977929687500023, -22.529296875], + [19.97822265625001, -22.81591796875], + [19.978515625, -23.1025390625], + [19.978906250000023, -23.38916015625], + [19.979296875000017, -23.67578125], + [19.979589843750006, -23.96240234375], + [19.979882812500023, -24.2490234375], + [19.98017578125001, -24.535742187500006], + [19.98046875, -24.751953125], + [19.98046875, -24.77675781250001], + [19.98046875, -25.19677734375], + [19.98046875, -25.6416015625], + [19.98046875, -26.086328125], + [19.98046875, -26.53115234375001], + [19.98046875, -26.97597656250001], + [19.98046875, -27.420703125], + [19.98046875, -27.865527343750003], + [19.98046875, -28.310351562500003], + [19.98046875, -28.451269531250006], + [19.877832031250023, -28.44941406250001], + [19.671484375, -28.50390625], + [19.539843750000017, -28.574609375], + [19.48291015625, -28.66162109375], + [19.4072265625, -28.714453125], + [19.31269531250001, -28.73330078125001], + [19.27099609375, -28.777734375], + [19.2822265625, -28.847949218750003], + [19.24580078125001, -28.901660156250003], + [19.16171875, -28.938769531250003], + [19.02607421875001, -28.92792968750001], + [18.838769531250023, -28.869140625], + [18.600390625000017, -28.855273437500003], + [18.310839843750017, -28.88623046875], + [18.10273437500001, -28.871679687500006], + [17.97607421875, -28.811328125], + [17.841601562500017, -28.776953125], + [17.699316406250006, -28.768359375], + [17.616796875, -28.74306640625001], + [17.44794921875001, -28.69814453125001], + [17.41572265625001, -28.62109375], + [17.395898437500023, -28.56269531250001], + [17.34785156250001, -28.50117187500001], + [17.342578125000017, -28.45166015625], + [17.380273437500023, -28.41396484375001], + [17.3857421875, -28.35322265625001], + [17.358691406250017, -28.26943359375001], + [17.31201171875, -28.228613281250006], + [17.24580078125001, -28.230859375], + [17.20458984375, -28.198828125], + [17.1884765625, -28.13251953125001], + [17.1494140625, -28.08222656250001], + [17.05625, -28.031054687500003], + [16.93330078125001, -28.069628906250003], + [16.875292968750017, -28.1279296875], + [16.841210937500023, -28.21894531250001], + [16.81015625, -28.26455078125001], + [16.79453125, -28.3408203125], + [16.7875, -28.39472656250001], + [16.755761718750023, -28.4521484375], + [16.723046875000023, -28.47548828125001], + [16.689453125, -28.464941406250006], + [16.62617187500001, -28.487890625], + [16.487109375000017, -28.572851562500006], + [16.447558593750017, -28.617578125], + [16.335058593750006, -28.53652343750001], + [16.007128906250017, -28.231738281250003], + [15.890917968750017, -28.15253906250001], + [15.719042968750017, -27.9658203125], + [15.341503906250011, -27.386523437500003], + [15.28759765625, -27.275], + [15.215722656250023, -26.9951171875], + [15.1328125, -26.78759765625], + [15.123730468750011, -26.66787109375001], + [15.163281250000011, -26.600195312500006], + [15.139062500000023, -26.50800781250001], + [15.096582031250023, -26.42578125], + [14.9677734375, -26.31806640625001], + [14.93125, -25.95820312500001], + [14.84521484375, -25.725683593750006], + [14.863671875000023, -25.53359375], + [14.822558593750017, -25.35859375000001], + [14.818554687500011, -25.246386718750003], + [14.837109375000011, -25.033203125], + [14.767968750000023, -24.78798828125001], + [14.6279296875, -24.54804687500001], + [14.5015625, -24.201953125], + [14.4833984375, -24.050390625], + [14.496875, -23.642871093750003], + [14.472460937500017, -23.476660156250006], + [14.473828125000011, -23.28115234375001], + [14.423828125, -23.07861328125], + [14.4033203125, -22.968066406250003], + [14.4384765625, -22.88056640625001], + [14.459277343750017, -22.908203125], + [14.495703125, -22.92138671875], + [14.519921875000023, -22.80517578125], + [14.525976562500006, -22.70253906250001], + [14.462792968750023, -22.44912109375001], + [14.321875, -22.18994140625], + [13.973242187500006, -21.767578125], + [13.888085937500023, -21.60664062500001], + [13.83935546875, -21.473242187500006], + [13.450585937500023, -20.91669921875001], + [13.284375, -20.52392578125], + [13.168359375000023, -20.184667968750006], + [13.042089843750006, -20.02822265625001], + [12.458203125000011, -18.9267578125], + [12.328710937500006, -18.751074218750006], + [12.095703125, -18.54091796875001], + [12.041210937500011, -18.470703125], + [11.951367187500011, -18.2705078125], + [11.77587890625, -18.001757812500003], + [11.733496093750006, -17.7509765625], + [11.7216796875, -17.466796875], + [11.743066406250023, -17.24921875000001], + [11.902539062500011, -17.2265625], + [12.013964843750017, -17.168554687500006], + [12.114355468750006, -17.16455078125], + [12.21337890625, -17.2099609375], + [12.318457031250006, -17.21337890625], + [12.359277343750023, -17.205859375], + [12.548144531250017, -17.212695312500003], + [12.656542968750017, -17.160546875], + [12.78515625, -17.108203125], + [12.859277343750023, -17.062597656250006], + [12.963183593750017, -17.015429687500003], + [13.101171875, -16.96767578125001], + [13.179492187500017, -16.9716796875], + [13.275683593750017, -16.989550781250003], + [13.403710937500023, -17.0078125], + [13.475976562500023, -17.0400390625], + [13.561718750000011, -17.141210937500006], + [13.6943359375, -17.233496093750006], + [13.7919921875, -17.288378906250003], + [13.904199218750023, -17.36074218750001], + [13.93798828125, -17.388769531250006], + [13.987402343750006, -17.40419921875001], + [14.017480468750023, -17.40888671875001], + [14.225878906250017, -17.397753906250003], + [14.414746093750011, -17.3876953125], + [14.617968750000017, -17.387988281250003], + [15.000585937500006, -17.38857421875001], + [15.383203125000023, -17.38916015625], + [15.765820312500011, -17.3896484375], + [16.1484375, -17.390234375], + [16.531054687500017, -17.39082031250001], + [16.913671875, -17.39140625], + [17.296289062500023, -17.39199218750001], + [17.678808593750006, -17.392578125], + [17.835351562500023, -17.39277343750001], + [18.108789062500023, -17.39599609375], + [18.396386718750023, -17.3994140625], + [18.42822265625, -17.40517578125001], + [18.460351562500023, -17.424609375], + [18.486621093750017, -17.44277343750001], + [18.588183593750017, -17.57001953125001], + [18.718066406250017, -17.703222656250006], + [18.825976562500017, -17.76630859375001], + [18.95527343750001, -17.803515625], + [19.076464843750017, -17.817675781250003], + [19.189453125, -17.80849609375001], + [19.37714843750001, -17.825488281250003], + [19.63935546875001, -17.86865234375], + [19.91181640625001, -17.88134765625], + [20.1943359375, -17.863671875], + [20.392968750000023, -17.88740234375001], + [20.507617187500017, -17.95253906250001], + [20.625097656250006, -17.996679687500006], + [20.745507812500023, -18.01972656250001], + [20.908300781250006, -18.00605468750001], + [21.11347656250001, -17.95576171875001], + [21.287890625000017, -17.962988281250006], + [21.36875, -17.99951171875], + [21.416894531250023, -18.00068359375001], + [21.71845703125001, -17.94775390625], + [21.960839843750023, -17.90517578125001], + [22.32421875, -17.8375], + [22.6240234375, -17.781640625], + [23.068261718750023, -17.698828125], + [23.380664062500017, -17.640625] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "New Caledonia", + "iso_a2": "NC", + "iso_a3": "NCL", + "iso_n3": "540", + "continent": "Oceania" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [167.54443359375003, -22.62324218750001], + [167.51269531249997, -22.661132812500014], + [167.47343750000002, -22.653320312500014], + [167.44375, -22.63916015624997], + [167.42207031250004, -22.618554687500037], + [167.44345703125006, -22.541406250000037], + [167.5294921875001, -22.57919921875002], + [167.54443359375003, -22.62324218750001] + ] + ], + [ + [ + [168.01093750000004, -21.429980468750017], + [168.05791015625002, -21.44843750000004], + [168.1390625, -21.44521484375001], + [168.12070312500012, -21.615820312500034], + [168.00644531250012, -21.643164062500006], + [167.96679687500003, -21.641601562499957], + [167.94130859375005, -21.60576171875003], + [167.87587890625005, -21.582128906250006], + [167.8791015625001, -21.523632812499997], + [167.81542968749997, -21.392675781249963], + [167.92597656250004, -21.372851562500003], + [167.9884765625001, -21.337890624999986], + [167.98496093750006, -21.36972656249999], + [167.99462890624997, -21.406933593750026], + [168.01093750000004, -21.429980468750017] + ] + ], + [ + [ + [167.40087890625003, -21.16064453125003], + [167.34619140624997, -21.16875], + [167.27324218750002, -21.09677734374999], + [167.13388671875006, -21.06064453124999], + [167.07265625, -20.99726562499997], + [167.03271484374997, -20.922558593750026], + [167.11171875, -20.90410156249999], + [167.18945312500003, -20.803515625000017], + [167.13642578125004, -20.76611328125003], + [167.04501953125006, -20.75947265625001], + [167.05576171875012, -20.720214843750014], + [167.20400390625005, -20.673535156249997], + [167.26894531250005, -20.70058593750001], + [167.29794921875006, -20.732519531250034], + [167.29345703124997, -20.891503906249994], + [167.36083984375003, -20.942089843749997], + [167.43056640625, -21.055273437499963], + [167.43027343750012, -21.087011718750034], + [167.40087890625003, -21.16064453125003] + ] + ], + [ + [ + [166.54677734375, -20.698730468749986], + [166.4935546875, -20.708593750000034], + [166.55781250000004, -20.617089843749966], + [166.55966796875006, -20.56113281250002], + [166.58544921874997, -20.45048828125003], + [166.58251953124997, -20.41337890625003], + [166.62470703125004, -20.41826171874996], + [166.67080078125005, -20.45019531249997], + [166.6178710937501, -20.477539062499957], + [166.60029296875004, -20.525390625000014], + [166.60214843750006, -20.58535156249998], + [166.62255859374997, -20.59628906249999], + [166.58886718749997, -20.66191406250003], + [166.54677734375, -20.698730468749986] + ] + ], + [ + [ + [164.20234375000004, -20.246093749999957], + [164.3151367187501, -20.30888671874996], + [164.4359375, -20.282226562499957], + [164.5880859375001, -20.38115234375003], + [164.97568359375012, -20.681054687500023], + [165.11191406250006, -20.74453125], + [165.191796875, -20.768847656249974], + [165.25234375, -20.817968750000034], + [165.30664062500003, -20.887011718749974], + [165.3805664062501, -20.935839843749974], + [165.4125, -20.98134765625001], + [165.42050781250006, -21.042773437500003], + [165.44716796875005, -21.08056640624997], + [165.582421875, -21.179980468749974], + [165.66279296875004, -21.267187499999977], + [165.77460937500004, -21.311718749999983], + [165.82285156250012, -21.36376953125003], + [165.88535156250006, -21.389160156249957], + [165.94951171875007, -21.442382812499957], + [166.05781250000004, -21.483886718749986], + [166.30332031250006, -21.637207031249957], + [166.49296875000002, -21.782812500000034], + [166.58750000000012, -21.872851562500003], + [166.68964843750004, -21.953027343749994], + [166.82011718750007, -22.016992187499966], + [166.94238281250003, -22.09013671875003], + [167.00429687500005, -22.26152343749996], + [166.97031250000012, -22.32285156250002], + [166.90000000000012, -22.353320312500003], + [166.83496093749997, -22.35546875], + [166.77412109375004, -22.37617187500004], + [166.57060546875007, -22.265527343749966], + [166.52216796875004, -22.249218750000026], + [166.4679687500001, -22.256054687499997], + [166.43769531250004, -22.231542968749977], + [166.41640625, -22.196191406249966], + [166.29228515625002, -22.15507812500003], + [166.17666015625, -22.089160156250017], + [166.14316406250012, -22.044433593749957], + [166.12373046875004, -21.988769531249986], + [166.09609375, -21.95664062500002], + [165.9330078125, -21.90800781249996], + [165.82343750000004, -21.85380859375003], + [165.7438476562501, -21.777343749999986], + [165.62021484375006, -21.72421875], + [165.42763671875, -21.61503906249996], + [165.32861328124997, -21.580078125000043], + [165.24199218750002, -21.52548828125002], + [165.01015625000005, -21.32685546874997], + [164.92744140625004, -21.289843749999974], + [164.85527343750002, -21.201562500000023], + [164.6556640625, -20.99208984374998], + [164.55947265625005, -20.905859375], + [164.45468750000012, -20.829101562499986], + [164.37451171875003, -20.739257812499986], + [164.312890625, -20.632714843750037], + [164.16972656250007, -20.48017578125004], + [164.15214843750002, -20.414941406249994], + [164.15810546875, -20.347949218750017], + [164.12363281250006, -20.30488281250004], + [164.06503906250012, -20.278613281250017], + [164.0373046875001, -20.23359375], + [164.04052734375003, -20.172851562499957], + [164.05966796875012, -20.141503906249966], + [164.20234375000004, -20.246093749999957] + ] + ], + [ + [ + [159.95175781250006, -19.311718750000026], + [159.93642578125005, -19.333105468750034], + [159.92822265624997, -19.174316406250014], + [159.95986328125, -19.114648437500023], + [159.97509765625003, -19.238281249999986], + [159.95175781250006, -19.311718750000026] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Niger", + "iso_a2": "NE", + "iso_a3": "NER", + "iso_n3": "562", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [14.97900390625, 22.99619140624999], + [15.088964843750006, 22.418359375], + [15.172265625000023, 21.922070312499997], + [15.177832031250006, 21.60581054687499], + [15.181835937500011, 21.523388671874997], + [15.2158203125, 21.467431640624994], + [15.293652343750011, 21.411523437499994], + [15.607324218750023, 20.954394531250003], + [15.540332031250017, 20.874902343749994], + [15.587109375000011, 20.733300781249994], + [15.66845703125, 20.67236328125], + [15.929296875, 20.399853515624997], + [15.963183593750017, 20.34619140625], + [15.948828125, 20.303173828124997], + [15.766210937500006, 19.982568359374994], + [15.735058593750011, 19.904052734375], + [15.698632812500023, 19.49521484374999], + [15.672949218750006, 19.206787109375], + [15.637597656250023, 18.810839843750003], + [15.595507812500017, 18.337060546874994], + [15.5615234375, 17.937255859375], + [15.516699218750006, 17.408496093750003], + [15.474316406250011, 16.908398437499997], + [15.212109375000011, 16.63388671874999], + [14.746679687500006, 16.146630859374994], + [14.367968750000017, 15.750146484374994], + [14.17822265625, 15.484765625], + [13.80712890625, 14.966113281250003], + [13.642382812500017, 14.630761718749994], + [13.513671875, 14.455517578124997], + [13.4482421875, 14.380664062500003], + [13.505761718750023, 14.134423828124994], + [13.606347656250023, 13.70458984375], + [13.426953125000011, 13.701757812499991], + [13.323828125, 13.670849609374997], + [13.19384765625, 13.573046875], + [13.0484375, 13.534521484374991], + [12.871679687500006, 13.449023437500003], + [12.759960937500011, 13.38037109375], + [12.65478515625, 13.3265625], + [12.510156250000023, 13.1943359375], + [12.463183593750017, 13.09375], + [12.319042968750011, 13.073681640624997], + [12.117968750000017, 13.090429687499991], + [11.990039062500017, 13.191796875], + [11.693359375, 13.297705078124991], + [11.501074218750006, 13.340527343749997], + [11.411914062500017, 13.353613281249991], + [10.958886718750023, 13.371533203124997], + [10.475878906250017, 13.330224609374994], + [10.229589843750006, 13.281005859375], + [10.184667968750006, 13.270117187499991], + [10.045117187500011, 13.206152343749991], + [9.929296875, 13.13525390625], + [9.615917968750011, 12.810644531249991], + [9.201562500000023, 12.821484375], + [8.957617187500006, 12.857470703124989], + [8.750585937500006, 12.908154296874997], + [8.4560546875, 13.059667968749991], + [8.095019531250017, 13.291162109374994], + [7.955761718750011, 13.32275390625], + [7.830468750000023, 13.340917968749991], + [7.788671875, 13.337890625], + [7.357812500000023, 13.107177734375], + [7.274707031250017, 13.112255859374997], + [7.173046875000011, 13.086328125], + [7.106054687500006, 13.029101562499989], + [7.056738281250006, 13.000195312499997], + [7.005078125000011, 12.995556640624997], + [6.937207031250011, 13.008203125], + [6.87060546875, 13.043261718749989], + [6.804296875, 13.107666015625], + [6.6265625, 13.3642578125], + [6.589941406250006, 13.409130859374997], + [6.514062500000023, 13.485400390625003], + [6.386328125, 13.603613281249991], + [6.2998046875, 13.658789062499991], + [6.247167968750006, 13.672998046874994], + [6.184277343750011, 13.663671875], + [5.838183593750017, 13.765380859375], + [5.491992187500017, 13.872851562500003], + [5.415820312500017, 13.859179687500003], + [5.361621093750017, 13.836865234374997], + [5.241894531250011, 13.757226562499994], + [5.100878906250017, 13.742724609375003], + [4.921679687500017, 13.749121093749991], + [4.823339843750006, 13.759765625], + [4.664843750000017, 13.733203125], + [4.559472656250023, 13.701806640624994], + [4.42138671875, 13.647509765625003], + [4.2421875, 13.501074218749991], + [4.190820312500023, 13.482128906249997], + [4.147558593750006, 13.457714843749997], + [4.08740234375, 13.055468749999989], + [4.038769531250011, 12.934667968749991], + [3.947851562500006, 12.775048828124994], + [3.769238281250011, 12.622167968749991], + [3.646679687500011, 12.529980468749997], + [3.643847656250017, 12.4052734375], + [3.634179687500023, 12.201611328124997], + [3.632519531250011, 12.061572265624989], + [3.640625, 11.970361328124994], + [3.6201171875, 11.926953125], + [3.61181640625, 11.887304687499991], + [3.618457031250017, 11.827734375], + [3.647363281250023, 11.799658203124991], + [3.664746093750011, 11.762451171875], + [3.653125, 11.731835937499994], + [3.595410156250011, 11.6962890625], + [3.53173828125, 11.787451171874991], + [3.449804687500006, 11.851953125], + [3.359960937500006, 11.88046875], + [3.299121093750017, 11.927148437499994], + [3.267382812500017, 11.991894531249997], + [3.149609375000011, 12.118066406249994], + [2.878125, 12.367724609374989], + [2.850195312500006, 12.373681640624994], + [2.805273437500006, 12.383837890624989], + [2.728515625, 12.353613281249991], + [2.681347656250011, 12.312792968749989], + [2.6484375, 12.296777343749994], + [2.598437500000017, 12.294335937499994], + [2.469335937500006, 12.262792968749991], + [2.366015625000017, 12.221923828125], + [2.36328125, 12.188427734374997], + [2.412695312500006, 11.999316406249989], + [2.38916015625, 11.897070312499991], + [2.343359375, 11.945996093749997], + [2.194433593750006, 12.136474609375], + [2.09140625, 12.277978515624994], + [2.072949218750011, 12.30937], + [2.058398437500017, 12.357958984374989], + [2.068554687500011, 12.379150390625], + [2.109375, 12.393847656249989], + [2.203808593750011, 12.41259765625], + [2.221386718750011, 12.42724609375], + [2.226269531250011, 12.466064453125], + [2.211523437500006, 12.538427734374991], + [2.159765625, 12.636425781249997], + [2.104589843750006, 12.701269531249991], + [2.073828125, 12.713964843749991], + [2.017382812500017, 12.716210937499994], + [1.956152343750006, 12.707421875], + [1.840917968750006, 12.627880859374997], + [1.789843750000017, 12.61328125], + [1.671093750000011, 12.619824218749997], + [1.56494140625, 12.635400390624994], + [1.50048828125, 12.676464843749997], + [1.308691406250006, 12.834277343749989], + [1.096777343750006, 13.001123046874994], + [1.007910156250006, 13.024804687499994], + [0.9873046875, 13.041894531249994], + [0.973046875000023, 13.170361328124997], + [0.976757812500011, 13.324511718750003], + [0.988476562500011, 13.36484375], + [1.076855468750011, 13.340771484374997], + [1.1708984375, 13.32958984375], + [1.201171875, 13.357519531249991], + [1.1259765625, 13.412353515625], + [1.017871093750017, 13.467871093749991], + [0.977734375000011, 13.551953125], + [0.946582031250017, 13.581152343749991], + [0.89794921875, 13.6109375], + [0.84228515625, 13.626416015624997], + [0.786035156250023, 13.650048828124994], + [0.747753906250011, 13.674511718749997], + [0.6845703125, 13.685400390624991], + [0.6181640625, 13.703417968750003], + [0.522363281250023, 13.839746093749994], + [0.42919921875, 13.972119140624997], + [0.3740234375, 14.076367187499997], + [0.354882812500023, 14.139013671874991], + [0.382519531250011, 14.245800781249997], + [0.354589843750006, 14.288037109374997], + [0.250585937500006, 14.396435546874997], + [0.163867187500017, 14.497216796874994], + [0.18505859375, 14.652929687499991], + [0.202734375, 14.7828125], + [0.203808593750011, 14.865039062500003], + [0.217480468750011, 14.911474609374991], + [0.228710937500011, 14.963671875], + [0.286230468750006, 14.980175781249997], + [0.433007812500023, 14.97900390625], + [0.718652343750023, 14.954882812500003], + [0.947460937500011, 14.982128906249997], + [0.960058593750006, 14.986914062499991], + [1.121289062500011, 15.126123046874994], + [1.300195312500023, 15.272265625], + [1.569140625000017, 15.286474609374991], + [1.859375, 15.301708984374997], + [2.088183593750017, 15.309375], + [2.420800781250023, 15.320410156249991], + [2.689648437500011, 15.329882812500003], + [3.001074218750006, 15.340966796874994], + [3.010546875000017, 15.408300781249991], + [3.029394531250006, 15.424853515625003], + [3.06015625, 15.427197265624997], + [3.2890625, 15.39111328125], + [3.504296875000023, 15.356347656249994], + [3.5205078125, 15.483105468749997], + [3.709570312500006, 15.641699218749991], + [3.816503906250006, 15.674023437499997], + [3.842968750000011, 15.701708984375003], + [3.876953125, 15.755273437499994], + [3.89794921875, 15.837988281249991], + [3.9072265625, 15.896826171874991], + [3.947070312500017, 15.945654296874991], + [3.976171875, 16.035546875], + [4.014843750000011, 16.19272460937499], + [4.121289062500011, 16.357714843750003], + [4.18212890625, 16.581787109375], + [4.191210937500017, 16.79819335937499], + [4.202929687500017, 16.962695312500003], + [4.234667968750017, 16.996386718750003], + [4.233691406250017, 17.28842773437499], + [4.232714843750017, 17.582177734374994], + [4.23193359375, 17.830517578124997], + [4.230859375000023, 18.139453125], + [4.22998046875, 18.410595703124997], + [4.22900390625, 18.704345703125], + [4.228222656250011, 18.968066406250003], + [4.227636718750006, 19.142773437499997], + [4.445703125000023, 19.184521484374997], + [4.671289062500023, 19.227783203125], + [5.001367187500023, 19.291064453125003], + [5.358691406250017, 19.359521484374994], + [5.748339843750017, 19.434228515624994], + [5.836621093750011, 19.479150390624994], + [6.130664062500017, 19.731982421875003], + [6.263378906250011, 19.846142578124997], + [6.527050781250011, 20.072949218749997], + [6.730664062500011, 20.248046875], + [6.989355468750006, 20.470507812500003], + [7.263378906250011, 20.694482421874994], + [7.481738281250017, 20.873095703125003], + [7.8251953125, 21.075585937499994], + [8.343066406250017, 21.380859375], + [8.8609375, 21.68613281249999], + [9.378710937500017, 21.99140625], + [9.896484375, 22.29672851562499], + [10.414355468750017, 22.602001953124997], + [10.932226562500006, 22.907275390625003], + [11.45, 23.212597656249997], + [11.967871093750006, 23.517871093750003], + [12.48876953125, 23.401660156250003], + [12.983593750000011, 23.291259765625], + [13.48125, 23.18017578125], + [13.5986328125, 23.11953125], + [13.862695312500023, 22.902099609375], + [14.20068359375, 22.623730468749997], + [14.215527343750011, 22.619677734375003], + [14.230761718750017, 22.618457031250003], + [14.5556640625, 22.782519531250003], + [14.978906250000023, 22.996289062499997], + [14.97900390625, 22.99619140624999] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 5, + "name": "Norfolk Island", + "iso_a2": "NF", + "iso_a3": "NFK", + "iso_n3": "574", + "continent": "Oceania" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [167.939453125, -29.017675781250006], + [167.95976562500005, -29.0283203125], + [167.978125, -29.034277343750006], + [167.9904296875, -29.042089843750006], + [167.98867187500002, -29.058984375], + [167.97900390625, -29.07568359375], + [167.96767578125002, -29.0828125], + [167.96416015625005, -29.08535156250001], + [167.9619140625, -29.088476562500006], + [167.96064453125, -29.0921875], + [167.96074218750005, -29.096289062500006], + [167.95468750000003, -29.082128906250006], + [167.94443359375003, -29.07294921875001], + [167.9337890625, -29.07216796875001], + [167.92656250000005, -29.0828125], + [167.92041015625, -29.0828125], + [167.91826171875005, -29.071875], + [167.9142578125, -29.06191406250001], + [167.91240234375005, -29.052832031250006], + [167.91640625000002, -29.04511718750001], + [167.9240234375, -29.03583984375001], + [167.92460937500005, -29.02851562500001], + [167.91855468750003, -29.02509765625001], + [167.90615234375002, -29.028125], + [167.92060546875, -29.013964843750003], + [167.939453125, -29.017675781250006] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Nigeria", + "iso_a2": "NG", + "iso_a3": "NGA", + "iso_n3": "566", + "continent": "Africa" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [7.30078125, 4.418164062500026], + [7.203906250000045, 4.387646484375026], + [7.140429687500017, 4.395117187500034], + [7.227343750000045, 4.527343749999972], + [7.271386718750051, 4.498925781250051], + [7.327929687500017, 4.487207031249966], + [7.30078125, 4.418164062500026] + ] + ], + [ + [ + [5.838183593749989, 13.765380859375057], + [6.184277343750068, 13.66367187500002], + [6.247167968750006, 13.672998046874966], + [6.2998046875, 13.658789062500006], + [6.386328125000034, 13.603613281250048], + [6.514062500000023, 13.485400390625031], + [6.589941406250034, 13.40913085937504], + [6.626562500000034, 13.364257812500043], + [6.804296875, 13.107666015625], + [6.87060546875, 13.043261718750017], + [6.937207031249983, 13.00820312499998], + [7.00507812500004, 12.995556640624983], + [7.056738281250006, 13.00019531250004], + [7.106054687500006, 13.029101562499974], + [7.173046875000068, 13.086328125], + [7.274707031250017, 13.11225585937504], + [7.357812500000051, 13.107177734374986], + [7.788671875, 13.337890625], + [7.83046875000008, 13.340917968749991], + [7.955761718750011, 13.322753906250028], + [8.095019531250045, 13.29116210937498], + [8.456054687499972, 13.059667968749991], + [8.750585937500034, 12.908154296875026], + [8.957617187500034, 12.857470703125003], + [9.20156250000008, 12.82148437500004], + [9.615917968750011, 12.810644531249963], + [9.929296875, 13.135253906250014], + [10.045117187500068, 13.206152343749991], + [10.184667968750063, 13.270117187499963], + [10.229589843749977, 13.281005859375043], + [10.475878906250074, 13.330224609375037], + [10.958886718750051, 13.371533203125011], + [11.411914062500074, 13.353613281250006], + [11.501074218750034, 13.340527343750011], + [11.693359375000028, 13.297705078124991], + [11.990039062500074, 13.191796875], + [12.117968750000017, 13.090429687500034], + [12.31904296875004, 13.073681640624997], + [12.463183593750017, 13.09375], + [12.51015625000008, 13.194335937499972], + [12.654785156250057, 13.3265625], + [12.759960937499983, 13.380371093750043], + [12.871679687500006, 13.449023437499989], + [13.048437500000063, 13.534521484375006], + [13.19384765625, 13.573046875000031], + [13.323828125000034, 13.670849609374983], + [13.426953125000068, 13.701757812499963], + [13.606347656250023, 13.704589843750014], + [13.763476562500074, 13.489550781249989], + [13.932324218750011, 13.258496093749997], + [14.06396484375, 13.078515625], + [14.160058593750023, 12.612792968749986], + [14.17031250000008, 12.524072265625023], + [14.177636718750051, 12.484082031250054], + [14.184863281250017, 12.447216796874997], + [14.197460937500011, 12.383789062500043], + [14.272851562500023, 12.356494140624989], + [14.415429687500023, 12.344140624999966], + [14.518945312500051, 12.298242187500023], + [14.58095703125008, 12.222070312499966], + [14.587011718750063, 12.209423828125054], + [14.619726562500063, 12.150976562500048], + [14.627148437500068, 12.10869140624996], + [14.618164062500028, 11.98662109374996], + [14.59736328125004, 11.829833984374986], + [14.561816406250074, 11.728710937499997], + [14.581640625000034, 11.591162109375034], + [14.575390625000011, 11.532421874999969], + [14.559765625000011, 11.492285156249963], + [14.496093750000028, 11.446142578124977], + [14.409472656250045, 11.401171874999974], + [14.20234375000004, 11.268164062499963], + [14.143261718750068, 11.248535156250043], + [14.056738281250034, 11.245019531250037], + [13.981445312500057, 11.21186523437504], + [13.892089843750057, 11.140087890624983], + [13.699902343749983, 10.873144531250048], + [13.53535156250004, 10.605078124999963], + [13.478515625, 10.383251953124983], + [13.414550781250028, 10.171435546874989], + [13.269921875000051, 10.036181640624974], + [13.249804687500045, 9.960058593750006], + [13.24375, 9.91591796874998], + [13.238769531250028, 9.814013671875003], + [13.22119140625, 9.64516601562498], + [13.198730468750028, 9.563769531250003], + [13.175488281250011, 9.539648437499977], + [13.019433593749994, 9.488330078125003], + [12.929492187500074, 9.426269531249972], + [12.87568359375004, 9.303515625000017], + [12.85595703125, 9.170751953124963], + [12.824414062500068, 9.019433593750051], + [12.80654296875008, 8.886621093749994], + [12.7822265625, 8.817871093750014], + [12.731152343750068, 8.74565429687496], + [12.651562500000011, 8.667773437499989], + [12.58271484375004, 8.624121093749977], + [12.40351562500004, 8.59555664062502], + [12.311328125000074, 8.419726562499989], + [12.2333984375, 8.282324218749977], + [12.231152343749983, 8.227392578124977], + [12.15595703125004, 7.94248046875002], + [12.025195312500045, 7.727783203124986], + [12.016601562499972, 7.652001953124994], + [12.016015625000051, 7.589746093750009], + [11.852441406250023, 7.400732421874963], + [11.809179687500006, 7.345068359374991], + [11.767382812500017, 7.272265624999989], + [11.808593750000057, 7.201953124999974], + [11.854785156250045, 7.137988281249989], + [11.861425781249977, 7.11640625000004], + [11.787011718750023, 7.056201171875031], + [11.657519531250017, 6.951562500000023], + [11.580078125000057, 6.88886718750004], + [11.562988281250028, 6.854638671874994], + [11.551660156250023, 6.697265625], + [11.529101562500045, 6.655029296875014], + [11.477539062500028, 6.597412109375], + [11.401757812500051, 6.533935546875028], + [11.324609375000051, 6.484667968750031], + [11.237304687500028, 6.450537109375006], + [11.153320312500057, 6.437939453125011], + [11.1064453125, 6.457714843750054], + [11.079687500000063, 6.505517578125023], + [11.032519531250045, 6.697900390625037], + [11.00869140625008, 6.739111328125006], + [10.954199218750006, 6.7765625], + [10.846484375000074, 6.881787109375026], + [10.737597656250017, 6.988281250000043], + [10.60625, 7.063085937500006], + [10.578125, 7.057714843749977], + [10.55634765625004, 7.037451171875034], + [10.519042968749972, 6.930468749999989], + [10.482324218750051, 6.891259765624994], + [10.413183593750006, 6.877734375], + [10.293066406250034, 6.876757812499974], + [10.205468750000051, 6.891601562499986], + [10.185546874999972, 6.91279296875004], + [10.167773437500017, 6.959179687499983], + [10.143554687500057, 6.99643554687502], + [10.038867187500045, 6.921386718750014], + [9.874218750000068, 6.803271484375017], + [9.82070312500008, 6.783935546874986], + [9.779882812500034, 6.760156250000023], + [9.725585937499972, 6.65], + [9.659960937500017, 6.531982421874986], + [9.574023437500017, 6.470410156249969], + [9.490234375, 6.418652343749997], + [9.442187500000074, 6.373388671875006], + [9.373339843750074, 6.319628906249989], + [9.23876953125, 6.186132812499963], + [9.060156250000034, 6.009082031250045], + [8.997167968750006, 5.917724609375], + [8.935058593750057, 5.781005859375028], + [8.898828125000023, 5.629687500000017], + [8.859179687500045, 5.463769531249966], + [8.800976562499983, 5.197460937499983], + [8.715625, 5.046875], + [8.64052734375008, 4.927001953125043], + [8.585156249999983, 4.832812500000031], + [8.555859375000068, 4.755224609375034], + [8.54375, 4.757812500000028], + [8.514843750000068, 4.724707031250034], + [8.431347656250011, 4.74624023437498], + [8.393652343750063, 4.813769531249974], + [8.342089843750045, 4.824755859374989], + [8.252734375000045, 4.923974609375051], + [8.23378906250008, 4.907470703124972], + [8.328027343750023, 4.656103515625006], + [8.293066406250006, 4.557617187500014], + [8.028515625000011, 4.555371093749997], + [7.800781250000057, 4.522265625], + [7.644238281250068, 4.525341796875011], + [7.565625, 4.5609375], + [7.530761718750028, 4.655175781249994], + [7.517382812500074, 4.645458984374969], + [7.50947265625004, 4.594921874999983], + [7.45986328125008, 4.555224609374974], + [7.284375, 4.547656250000031], + [7.206738281250011, 4.612060546875], + [7.143847656250074, 4.684082031250028], + [7.076562500000051, 4.716162109374991], + [7.086914062500028, 4.685839843750031], + [7.164160156250034, 4.615576171875006], + [7.15468750000008, 4.514404296875], + [7.013378906250068, 4.397314453125048], + [6.92324218750008, 4.390673828125017], + [6.867871093750068, 4.441113281249997], + [6.839160156249989, 4.523486328124989], + [6.82470703125, 4.645263671875014], + [6.787597656250057, 4.724707031250034], + [6.767675781250006, 4.724707031250034], + [6.786035156250023, 4.652001953124966], + [6.792187500000011, 4.592626953125048], + [6.793066406250034, 4.469140625000023], + [6.860351562500057, 4.373339843750045], + [6.757031250000068, 4.343554687500017], + [6.715136718750045, 4.342431640624966], + [6.633007812500011, 4.340234375000051], + [6.617285156250006, 4.37578125], + [6.6015625, 4.45517578125002], + [6.579980468750051, 4.475976562499994], + [6.554589843750023, 4.34140625000002], + [6.5, 4.331933593750051], + [6.462109375000011, 4.333154296875023], + [6.2998046875, 4.303857421875009], + [6.263671875, 4.309423828124991], + [6.255957031250034, 4.334472656250028], + [6.275292968750051, 4.371679687499977], + [6.270996093749972, 4.432128906250028], + [6.214648437500045, 4.385498046875028], + [6.205566406250057, 4.29228515624996], + [6.173339843749972, 4.277392578125031], + [6.07656250000008, 4.29062], + [5.970703125, 4.338574218749983], + [5.90644531250004, 4.38774414062496], + [5.798632812500017, 4.455957031249994], + [5.587792968750051, 4.647216796874972], + [5.553613281250023, 4.733203124999989], + [5.493261718749977, 4.838769531250009], + [5.448144531250023, 4.945849609374974], + [5.383300781250057, 5.129003906249977], + [5.403222656250023, 5.142285156250026], + [5.452148437500057, 5.12656250000002], + [5.475976562500023, 5.153857421874989], + [5.38828125, 5.17377929687504], + [5.370019531250023, 5.195019531250026], + [5.364160156250051, 5.259277343750057], + [5.367968750000045, 5.337744140624963], + [5.439257812499989, 5.365332031249991], + [5.500878906250023, 5.378613281250026], + [5.531835937500034, 5.426367187499991], + [5.549707031250023, 5.474218749999963], + [5.385839843750034, 5.401757812500037], + [5.232421875000057, 5.483789062499966], + [5.199218750000028, 5.533544921874977], + [5.215820312500028, 5.571679687500023], + [5.289062500000028, 5.577490234375048], + [5.393847656250074, 5.574511718749974], + [5.456640624999977, 5.61171875], + [5.418066406250034, 5.624707031249983], + [5.350292968749983, 5.623291015625057], + [5.325292968750063, 5.647949218750014], + [5.327343750000011, 5.707519531249986], + [5.305371093750068, 5.694335937500043], + [5.276269531250023, 5.64155273437504], + [5.1728515625, 5.60273437500004], + [5.112402343750034, 5.64155273437504], + [5.10625, 5.728125], + [5.093066406250074, 5.767089843750043], + [5.042089843750006, 5.797509765625023], + [4.861035156250068, 6.026318359374997], + [4.633593749999989, 6.2171875], + [4.431347656250011, 6.348583984375026], + [4.125878906250023, 6.411376953125028], + [3.486621093750017, 6.408935546874972], + [3.450781249999977, 6.427050781250017], + [3.489941406250068, 6.457275390625043], + [3.54609375000004, 6.47744140624998], + [3.751660156250011, 6.583837890624991], + [3.71699218750004, 6.597949218750017], + [3.503320312500023, 6.531347656250034], + [3.430175781250057, 6.525], + [3.335546875000063, 6.396923828125011], + [2.7724609375, 6.375732421875043], + [2.706445312500051, 6.369238281249963], + [2.7080078125, 6.427685546874969], + [2.735644531250045, 6.595703125], + [2.753710937499989, 6.661767578124966], + [2.774609374999983, 6.711718750000017], + [2.752929687500028, 6.771630859374966], + [2.731738281250045, 6.852832031249989], + [2.721386718750068, 6.980273437500017], + [2.74775390625004, 7.019824218749989], + [2.75673828125008, 7.067919921875017], + [2.750585937500063, 7.143212890624994], + [2.750488281250057, 7.39506835937496], + [2.765820312500068, 7.422509765625051], + [2.783984375000045, 7.443408203125045], + [2.78515625, 7.476855468750017], + [2.750976562500057, 7.541894531250037], + [2.719335937500006, 7.616259765625003], + [2.72041015625004, 7.723095703124997], + [2.70771484375004, 7.82661132812504], + [2.686035156250057, 7.873730468750054], + [2.702343750000011, 8.049804687500043], + [2.711523437500006, 8.272998046875031], + [2.703125, 8.371826171875], + [2.7236328125, 8.441894531249986], + [2.734667968750017, 8.614013671875057], + [2.732910156250028, 8.782519531250003], + [2.774804687500023, 9.048535156250026], + [2.898046875, 9.061376953124977], + [3.044921875, 9.08383789062502], + [3.110449218750034, 9.188281249999989], + [3.148046875000034, 9.320605468750031], + [3.136132812500023, 9.451611328124983], + [3.164648437500063, 9.49467773437496], + [3.223437500000045, 9.565625], + [3.329492187500051, 9.667041015625003], + [3.325195312499972, 9.778466796875051], + [3.3544921875, 9.812792968750031], + [3.404785156250028, 9.838623046875043], + [3.47675781250004, 9.851904296875006], + [3.557226562500006, 9.907324218750006], + [3.60205078125, 10.004541015625009], + [3.645898437500051, 10.16015625], + [3.576562500000023, 10.268359375000017], + [3.577929687500045, 10.292480468750057], + [3.604101562500063, 10.350683593750006], + [3.646582031250006, 10.408984374999989], + [3.680273437500034, 10.427783203124989], + [3.758496093750068, 10.412695312500034], + [3.771777343750017, 10.417626953124966], + [3.783789062500063, 10.435888671875048], + [3.83447265625, 10.607421875], + [3.8296875, 10.653759765625026], + [3.7568359375, 10.76875], + [3.744921875000045, 10.850439453125034], + [3.734179687500074, 10.971923828125], + [3.71640625, 11.07958984375], + [3.695312499999972, 11.12031250000004], + [3.65625, 11.154589843750003], + [3.63886718750004, 11.176855468750006], + [3.487792968749972, 11.395410156250037], + [3.490527343750017, 11.499218750000054], + [3.55390625000004, 11.631884765624989], + [3.595410156250068, 11.696289062500057], + [3.65312, 11.731835937500009], + [3.664746093750068, 11.762451171875028], + [3.64736328125008, 11.799658203124977], + [3.618457031250045, 11.827734375], + [3.611816406250028, 11.887304687499977], + [3.620117187500028, 11.926953124999969], + [3.640625, 11.970361328125023], + [3.632519531250068, 12.061572265625045], + [3.634179687500051, 12.201611328124969], + [3.643847656250074, 12.405273437499986], + [3.646679687500011, 12.529980468749983], + [3.76923828125004, 12.622167968750034], + [3.947851562500006, 12.775048828124994], + [4.03876953125004, 12.934667968750006], + [4.08740234375, 13.055468750000017], + [4.147558593750006, 13.457714843749983], + [4.190820312500023, 13.482128906249983], + [4.242187500000028, 13.501074218750034], + [4.421386718750028, 13.647509765625017], + [4.55947265625008, 13.70180664062498], + [4.664843750000045, 13.733203124999974], + [4.823339843750006, 13.759765624999972], + [4.921679687500074, 13.74912109375002], + [5.100878906250074, 13.74272460937506], + [5.241894531250011, 13.757226562499994], + [5.361621093750074, 13.836865234375054], + [5.415820312500017, 13.859179687499974], + [5.491992187500074, 13.872851562500003], + [5.838183593749989, 13.765380859375057] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Nicaragua", + "iso_a2": "NI", + "iso_a3": "NIC", + "iso_n3": "558", + "continent": "North America" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-83.15751953124999, 14.993066406249994], + [-83.18535156249999, 14.956396484374991], + [-83.21591796874999, 14.932373046875], + [-83.27988281249999, 14.812792968750003], + [-83.302001953125, 14.802099609374991], + [-83.30634765625, 14.890527343749994], + [-83.344384765625, 14.902099609375], + [-83.38901367187499, 14.870654296875003], + [-83.413720703125, 14.825341796874994], + [-83.37485351562499, 14.76611328125], + [-83.34072265625, 14.765283203124994], + [-83.29921875, 14.7490234375], + [-83.187744140625, 14.340087890625], + [-83.21171874999999, 14.267138671875003], + [-83.28081054687499, 14.153613281250003], + [-83.34658203125, 14.056982421874991], + [-83.4123046875, 13.996484375], + [-83.49375, 13.738818359375003], + [-83.567333984375, 13.3203125], + [-83.51445312499999, 12.943945312499991], + [-83.5412109375, 12.596289062499991], + [-83.51796875, 12.514111328124997], + [-83.5109375, 12.411816406249997], + [-83.56523437499999, 12.393408203124991], + [-83.5958984375, 12.396484375], + [-83.627197265625, 12.459326171874991], + [-83.623681640625, 12.514550781249994], + [-83.5912109375, 12.579345703125], + [-83.578076171875, 12.667138671874994], + [-83.593359375, 12.713085937499997], + [-83.62534179687499, 12.612890625], + [-83.681640625, 12.568115234375], + [-83.718359375, 12.552636718749994], + [-83.75424804687499, 12.501953125], + [-83.7162109375, 12.40673828125], + [-83.66733398437499, 12.337060546874994], + [-83.65126953125, 12.287060546874997], + [-83.66923828124999, 12.2275390625], + [-83.680419921875, 12.024316406249994], + [-83.697705078125, 12.029980468749997], + [-83.715576171875, 12.057421874999989], + [-83.7671875, 12.059277343749997], + [-83.77333984375, 11.977392578124991], + [-83.76933593749999, 11.931640625], + [-83.81318359375, 11.896386718749994], + [-83.82890624999999, 11.861035156249997], + [-83.79296875, 11.836181640625], + [-83.753369140625, 11.8212890625], + [-83.70458984375, 11.824560546874991], + [-83.664306640625, 11.723876953125], + [-83.6517578125, 11.642041015624997], + [-83.74497070312499, 11.566503906249991], + [-83.776611328125, 11.503955078124989], + [-83.82939453124999, 11.428173828124997], + [-83.85908203125, 11.353662109374994], + [-83.86787109375, 11.300048828125], + [-83.83183593749999, 11.130517578124994], + [-83.76791992187499, 11.01025390625], + [-83.7140625, 10.933837890625], + [-83.6419921875, 10.917236328125], + [-83.658935546875, 10.836865234374997], + [-83.71293945312499, 10.785888671875], + [-83.811181640625, 10.743261718749991], + [-83.91928710937499, 10.7353515625], + [-84.09619140625, 10.775683593749989], + [-84.168359375, 10.780371093749991], + [-84.19658203124999, 10.801708984374997], + [-84.20498046875, 10.84130859375], + [-84.25556640625, 10.900732421874991], + [-84.348291015625, 10.979882812499994], + [-84.40185546875, 10.974462890624991], + [-84.48916015625, 10.991650390624997], + [-84.6341796875, 11.045605468749997], + [-84.701171875, 11.052197265624997], + [-84.79736328125, 11.005908203124989], + [-84.9091796875, 10.9453125], + [-85.178955078125, 11.039941406249994], + [-85.368359375, 11.1064453125], + [-85.538720703125, 11.166308593749989], + [-85.5841796875, 11.189453125], + [-85.62138671874999, 11.184472656249994], + [-85.65366210937499, 11.153076171875], + [-85.69052734374999, 11.097460937499989], + [-85.70263671875, 11.08154296875], + [-85.722265625, 11.066259765624991], + [-85.7443359375, 11.062109375], + [-85.74521484374999, 11.088574218749997], + [-85.828515625, 11.19873046875], + [-85.9611328125, 11.331347656249989], + [-86.468896484375, 11.73828125], + [-86.655517578125, 11.981542968749991], + [-86.755615234375, 12.156640625], + [-86.8509765625, 12.247753906249997], + [-87.1251953125, 12.434130859374989], + [-87.188427734375, 12.508349609374989], + [-87.46015625, 12.757568359375], + [-87.66752929687499, 12.903564453125], + [-87.670166015625, 12.965673828124991], + [-87.58505859374999, 13.043310546874991], + [-87.54331054687499, 13.039697265624994], + [-87.49794921875, 12.984179687499989], + [-87.42436523437499, 12.921142578125], + [-87.3896484375, 12.920654296875], + [-87.33857421875, 12.949951171875], + [-87.33725585937499, 12.979248046875], + [-87.05917968749999, 12.991455078125], + [-87.00932617187499, 13.0078125], + [-86.95888671875, 13.0537109375], + [-86.93315429687499, 13.117529296874991], + [-86.92880859374999, 13.179394531249997], + [-86.918212890625, 13.223583984374997], + [-86.87353515625, 13.266503906249994], + [-86.792138671875, 13.27978515625], + [-86.72929687499999, 13.284375], + [-86.710693359375, 13.313378906249994], + [-86.72958984374999, 13.4072265625], + [-86.76352539062499, 13.63525390625], + [-86.77060546874999, 13.69873046875], + [-86.758984375, 13.746142578125003], + [-86.733642578125, 13.763476562500003], + [-86.61025390625, 13.774853515624997], + [-86.376953125, 13.755664062500003], + [-86.33173828125, 13.770068359375003], + [-86.238232421875, 13.899462890625003], + [-86.15122070312499, 13.994580078124997], + [-86.0892578125, 14.037207031249991], + [-86.04038085937499, 14.050146484374991], + [-85.9837890625, 13.965673828124991], + [-85.78671875, 13.844433593749997], + [-85.75341796875, 13.85205078125], + [-85.73393554687499, 13.858691406250003], + [-85.727734375, 13.876074218749991], + [-85.731201171875, 13.931835937499997], + [-85.68193359374999, 13.982568359374994], + [-85.57978515625, 14.028222656249994], + [-85.47705078125, 14.108691406250003], + [-85.373779296875, 14.223876953125], + [-85.2841796875, 14.291650390624994], + [-85.20834960937499, 14.311816406250003], + [-85.17949218749999, 14.343310546875003], + [-85.19755859374999, 14.385986328125], + [-85.19150390624999, 14.446630859374991], + [-85.161328125, 14.525146484375], + [-85.11728515624999, 14.570605468750003], + [-85.05937, 14.582958984374997], + [-85.0365234375, 14.607666015625], + [-85.04863281249999, 14.644726562499997], + [-85.037353515625, 14.685546875], + [-84.98515624999999, 14.75244140625], + [-84.86044921874999, 14.809765625], + [-84.78916015624999, 14.790380859374991], + [-84.72978515624999, 14.71337890625], + [-84.645947265625, 14.661083984374997], + [-84.53764648437499, 14.633398437499991], + [-84.453564453125, 14.643701171874994], + [-84.39365234374999, 14.691748046874991], + [-84.339794921875, 14.706347656250003], + [-84.291943359375, 14.687353515624991], + [-84.26665039062499, 14.698144531249994], + [-84.26396484374999, 14.738525390625], + [-84.239208984375, 14.747851562500003], + [-84.1923828125, 14.726025390624997], + [-84.15078125, 14.720410156249997], + [-84.114404296875, 14.731005859375003], + [-84.10029296875, 14.750634765624994], + [-84.09296875, 14.770898437499994], + [-84.0658203125, 14.786083984374997], + [-83.972265625, 14.77109375], + [-83.86728515624999, 14.794482421875003], + [-83.750927734375, 14.85625], + [-83.67363281249999, 14.883544921875], + [-83.635498046875, 14.876416015624997], + [-83.58974609375, 14.907568359374991], + [-83.5365234375, 14.977001953124997], + [-83.4150390625, 15.008056640625], + [-83.15751953124999, 14.993066406249994] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "Niue", + "iso_a2": "NU", + "iso_a3": "NIU", + "iso_n3": "570", + "continent": "Oceania" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-169.80341796875, -19.0830078125], + [-169.90380859375, -19.13789062500001], + [-169.94833984375, -19.072851562500006], + [-169.908740234375, -18.990234375], + [-169.861572265625, -18.96865234375001], + [-169.834033203125, -18.96601562500001], + [-169.793408203125, -19.042578125], + [-169.80341796875, -19.0830078125] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Netherlands", + "iso_a2": "NL", + "iso_a3": "NLD", + "iso_n3": "528", + "continent": "Europe" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-68.205810546875, 12.144580078124989], + [-68.25434570312495, 12.032080078124977], + [-68.28222656249994, 12.082275390625], + [-68.287255859375, 12.171728515625006], + [-68.30712890624994, 12.20673828125004], + [-68.34843749999993, 12.228076171875031], + [-68.37109375000003, 12.257519531249997], + [-68.36923828125, 12.301953124999983], + [-68.21948242187494, 12.23125], + [-68.205810546875, 12.144580078124989] + ] + ], + [ + [ + [-62.9375, 17.49565429687499], + [-62.96171875, 17.475048828124983], + [-62.983105468749955, 17.476904296875006], + [-62.99716796874998, 17.496826171875057], + [-62.999609375000034, 17.530371093750063], + [-62.97934570312498, 17.521191406249955], + [-62.97177734374995, 17.516064453124983], + [-62.965429687500006, 17.50927734375003], + [-62.9375, 17.49565429687499] + ] + ], + [ + [ + [-63.232666015625, 17.623144531250034], + [-63.24160156249994, 17.61958007812501], + [-63.254492187500006, 17.628662109375], + [-63.252148437499955, 17.645263671875], + [-63.241650390624955, 17.65180664062501], + [-63.23349609374998, 17.647216796875057], + [-63.22690429687498, 17.634130859375063], + [-63.232666015625, 17.623144531250034] + ] + ], + [ + [ + [4.226171875000034, 51.38647460937503], + [4.211425781250057, 51.34873046874998], + [4.17255859375004, 51.30708007812501], + [4.040039062500057, 51.24707031250006], + [3.902050781250011, 51.20766601562502], + [3.83076171875004, 51.212597656249955], + [3.78193359375004, 51.23320312499999], + [3.755664062500017, 51.25483398437504], + [3.681835937500068, 51.27568359375002], + [3.580273437499983, 51.28618164062502], + [3.51708984375, 51.263623046874955], + [3.471972656250045, 51.242236328125045], + [3.43251953125008, 51.24575195312505], + [3.40283203125, 51.263623046874955], + [3.380078125000068, 51.29111328125006], + [3.35009765625, 51.37768554687503], + [3.425781250000057, 51.393505859374955], + [3.589453125, 51.3994140625], + [3.71650390625004, 51.36914062500006], + [3.883398437500006, 51.3544921875], + [4.011035156249989, 51.39594726562501], + [4.11152343750004, 51.36064453125002], + [4.226171875000034, 51.38647460937503] + ] + ], + [ + [ + [3.94912109375008, 51.73945312500001], + [4.04677734375008, 51.68491210937498], + [4.067578125000068, 51.66748046875], + [4.07509765625008, 51.648779296875006], + [3.950976562500017, 51.627050781250006], + [3.81904296875004, 51.693994140624966], + [3.731835937500051, 51.67822265625006], + [3.699023437500017, 51.70991210937501], + [3.698535156250017, 51.729687499999955], + [3.789062499999972, 51.746435546875006], + [3.94912109375008, 51.73945312500001] + ] + ], + [ + [ + [4.886132812500023, 53.07070312500005], + [4.787109375, 52.99980468749999], + [4.726757812500068, 53.019628906250034], + [4.70917968750004, 53.036035156249994], + [4.739843750000063, 53.09130859374997], + [4.886425781249983, 53.18330078124998], + [4.886132812500023, 53.07070312500005] + ] + ], + [ + [ + [5.10859375000004, 53.308007812499994], + [4.923730468750051, 53.23457031250004], + [4.907910156250011, 53.24624023437502], + [5.02705078125004, 53.310205078124994], + [5.10859375000004, 53.308007812499994] + ] + ], + [ + [ + [4.226171875000034, 51.38647460937503], + [4.138867187500011, 51.401513671874994], + [4.006542968750068, 51.443212890625034], + [3.821875, 51.40937], + [3.693554687500068, 51.44990234374998], + [3.5869140625, 51.45390624999999], + [3.520507812499972, 51.486181640625006], + [3.448925781250068, 51.54077148437503], + [3.499609374999977, 51.57666015625006], + [3.548632812500017, 51.589111328125], + [3.743945312500017, 51.596044921875006], + [3.886035156250017, 51.57421875], + [4.141308593750068, 51.45576171875001], + [4.205761718750068, 51.45668945312502], + [4.27412109375004, 51.47163085937498], + [4.239355468750063, 51.50390624999997], + [4.175488281250011, 51.519287109375], + [4.080468750000023, 51.551123046875006], + [4.004785156250051, 51.595849609374966], + [4.182617187500057, 51.61030273437498], + [4.158007812500017, 51.633447265624994], + [4.134570312500017, 51.67290039062502], + [3.946875, 51.810546875], + [3.978906250000023, 51.84780273437505], + [4.02607421875004, 51.927734375], + [4.084863281250023, 51.99409179687501], + [4.13173828125008, 52.01191406249998], + [4.208789062500045, 52.058984375], + [4.376269531250074, 52.19682617187502], + [4.482812500000023, 52.30917968749998], + [4.562109375, 52.44257812499998], + [4.678320312500063, 52.80976562500001], + [4.712695312500045, 52.87211914062502], + [4.76875, 52.941308593749966], + [4.839062500000011, 52.92827148437499], + [4.887988281250045, 52.90834960937502], + [5.061230468750068, 52.96064453125001], + [5.358398437500057, 53.09648437499996], + [5.44599609375004, 53.21406250000004], + [5.532031250000074, 53.268701171874966], + [5.87353515625, 53.37519531250001], + [6.062207031250068, 53.407080078125006], + [6.35322265625004, 53.415283203125], + [6.563574218749977, 53.434277343749955], + [6.816210937500045, 53.44116210937503], + [6.912402343749989, 53.37539062500005], + [6.96816406250008, 53.32729492187502], + [7.05800781250008, 53.30058593749999], + [7.197265625000028, 53.28227539062499], + [7.188964843750028, 53.18720703124998], + [7.189941406250057, 52.99951171875003], + [7.179492187500045, 52.966210937499994], + [7.117089843750051, 52.88701171875002], + [7.050878906250063, 52.744775390624994], + [7.033007812500045, 52.65136718749997], + [7.013183593750028, 52.63354492187497], + [6.74843750000008, 52.63408203125002], + [6.710742187500045, 52.61787109374998], + [6.705371093750017, 52.59765625000006], + [6.71875, 52.573583984375034], + [6.712402343750028, 52.549658203125034], + [6.69160156250004, 52.530175781249966], + [6.702929687500045, 52.49921874999998], + [6.748828125000074, 52.464013671874994], + [6.832519531249972, 52.44228515625002], + [6.922070312500011, 52.440283203125034], + [6.96816406250008, 52.44409179687503], + [7.001855468750023, 52.41899414062496], + [7.035156250000057, 52.38022460937498], + [7.03261718750008, 52.33149414062501], + [7.019628906250006, 52.266015625], + [6.977246093750068, 52.20551757812501], + [6.855078125000034, 52.13579101562502], + [6.800390625, 52.111230468749966], + [6.749023437500028, 52.09868164062499], + [6.724511718749994, 52.080224609374966], + [6.712988281250063, 52.056884765625], + [6.715625, 52.03618164062496], + [6.802441406250068, 51.98017578125001], + [6.800390625, 51.96738281249998], + [6.775195312500017, 51.93828125000002], + [6.741796875000063, 51.91088867187503], + [6.517578125000028, 51.853955078124955], + [6.425, 51.85839843749997], + [6.372167968749977, 51.83002929687498], + [6.355664062500011, 51.82465820312504], + [6.29707031250004, 51.85073242187502], + [6.16650390625, 51.88076171875002], + [6.1171875, 51.870410156250045], + [6.089843750000028, 51.853955078124955], + [6.007617187500045, 51.83398437499997], + [5.948730468750057, 51.80268554687501], + [5.948535156250017, 51.762402343749955], + [6.052734375, 51.65825195312499], + [6.08935546875, 51.63779296874998], + [6.091113281250017, 51.59892578124996], + [6.1416015625, 51.55009765624996], + [6.193261718750051, 51.48891601562502], + [6.198828125000034, 51.45], + [6.192871093750057, 51.41059570312498], + [6.16621093750004, 51.35483398437498], + [6.075878906250011, 51.22412109375], + [6.074804687500063, 51.199023437500045], + [6.082421875000023, 51.17998046874996], + [6.113378906250034, 51.174707031249966], + [6.136914062500011, 51.16484374999999], + [6.129980468750034, 51.14741210937501], + [5.961035156250063, 51.05668945312499], + [5.939257812500074, 51.040820312500045], + [5.868359375000011, 51.0453125], + [5.857519531250034, 51.030126953125006], + [5.867187500000057, 51.00566406249999], + [5.894726562500068, 50.98422851562506], + [5.955078125, 50.97294921874999], + [6.0068359375, 50.949951171875], + [6.048437500000034, 50.90488281250006], + [5.993945312500017, 50.75043945312504], + [5.797363281250028, 50.754541015624994], + [5.7470703125, 50.759570312500045], + [5.693652343750045, 50.774658203125], + [5.693554687500011, 50.774755859375006], + [5.669140625000011, 50.80595703124999], + [5.639453125000017, 50.843603515625006], + [5.647558593750063, 50.86665039062501], + [5.736621093750017, 50.93212890625003], + [5.75, 50.95024414062499], + [5.740820312500063, 50.95991210937498], + [5.749804687500017, 50.98876953125], + [5.818261718750023, 51.08642578125], + [5.827148437500057, 51.125634765624994], + [5.796484375000034, 51.153076171875], + [5.752343750000023, 51.16948242187496], + [5.60878906250008, 51.19843750000001], + [5.540429687499994, 51.23930664062499], + [5.508789062500028, 51.275], + [5.476855468750017, 51.285058593749966], + [5.429785156250034, 51.27299804687502], + [5.310839843750045, 51.259716796874955], + [5.214160156250045, 51.278955078124966], + [5.099902343750045, 51.34648437499996], + [5.073437500000068, 51.406835937500006], + [5.05947265625008, 51.453125], + [5.03095703125004, 51.46909179687498], + [4.992578125000023, 51.445361328125045], + [4.943945312499977, 51.40776367187502], + [4.84804687500008, 51.40327148437498], + [4.820703125000023, 51.41206054687501], + [4.816015625000034, 51.432812499999955], + [4.810546875, 51.452734375000034], + [4.784179687500028, 51.47739257812498], + [4.755664062499989, 51.49111328125002], + [4.633984375000068, 51.421728515625006], + [4.588769531250023, 51.42192382812496], + [4.531640625000023, 51.44858398437498], + [4.503417968750028, 51.47470703124998], + [4.44091796875, 51.45981445312506], + [4.384765625000028, 51.42758789062506], + [4.40400390625004, 51.367089843749994], + [4.373730468749983, 51.356005859375045], + [4.304492187500017, 51.36152343750001], + [4.226171875000034, 51.38647460937503] + ] + ], + [ + [ + [5.325781250000063, 53.38574218750003], + [5.232617187500011, 53.377783203125006], + [5.190234375000074, 53.39179687500001], + [5.415136718750063, 53.43144531249999], + [5.557421874999989, 53.44355468749998], + [5.582617187500063, 53.438085937500034], + [5.325781250000063, 53.38574218750003] + ] + ], + [ + [ + [5.929296875, 53.45883789062498], + [5.732031250000034, 53.44262695312497], + [5.665332031250045, 53.45488281249999], + [5.654296875000028, 53.46650390625004], + [5.708105468750063, 53.47338867187503], + [5.876269531250045, 53.47509765625], + [5.928222656250057, 53.464990234374994], + [5.929296875, 53.45883789062498] + ] + ], + [ + [ + [6.33339843750008, 53.5107421875], + [6.193261718750051, 53.476806640625], + [6.159277343750034, 53.483935546875045], + [6.167675781250068, 53.49375], + [6.290917968750051, 53.51499023437506], + [6.33339843750008, 53.5107421875] + ] + ], + [ + [ + [6.734765625000051, 53.58251953125006], + [6.64208984375, 53.579199218750006], + [6.668554687500063, 53.605664062499955], + [6.754589843750011, 53.62548828125], + [6.800878906250006, 53.62548828125], + [6.734765625000051, 53.58251953125006] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Norway", + "iso_a2": "NO", + "iso_a3": "NOR", + "iso_n3": "578", + "continent": "Europe" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [5.085839843750023, 60.30756835937501], + [5.089062500000068, 60.188769531250045], + [4.996972656250051, 60.19775390625003], + [4.955566406250057, 60.243310546874966], + [4.943554687499983, 60.272412109374955], + [4.950781250000034, 60.341162109375006], + [4.930078125, 60.41206054687498], + [4.95722656250004, 60.44726562500006], + [4.990625, 60.452050781249966], + [5.050195312500051, 60.38896484374999], + [5.085839843750023, 60.30756835937501] + ] + ], + [ + [ + [4.958691406250068, 61.084570312500034], + [4.870117187500057, 61.07192382812502], + [4.79902343750004, 61.08271484375001], + [4.824414062500068, 61.17822265625003], + [4.861621093749989, 61.19384765625], + [4.915429687500051, 61.199365234374966], + [4.973242187500006, 61.148242187500045], + [4.958691406250068, 61.084570312500034] + ] + ], + [ + [ + [8.10273437500004, 63.33759765625004], + [8.004687500000045, 63.33691406249997], + [7.888281250000034, 63.35234375000002], + [7.815332031250023, 63.38505859375002], + [7.804003906250017, 63.413916015625034], + [7.938378906250023, 63.44980468749998], + [8.073535156250045, 63.47080078124998], + [8.13613281250008, 63.43134765625004], + [8.140917968750074, 63.36640625000004], + [8.10273437500004, 63.33759765625004] + ] + ], + [ + [ + [8.470800781250063, 63.66713867187502], + [8.356152343750068, 63.66479492187497], + [8.287109375000028, 63.68715820312502], + [8.451269531250063, 63.731835937499966], + [8.708886718750051, 63.774316406249994], + [8.7333984375, 63.80131835937499], + [8.764648437500057, 63.804638671874955], + [8.809179687500063, 63.771435546874955], + [8.81484375000008, 63.72597656250002], + [8.78652343750008, 63.703466796875034], + [8.470800781250063, 63.66713867187502] + ] + ], + [ + [ + [11.2314453125, 64.865869140625], + [11.179003906250045, 64.838037109375], + [11.0625, 64.86040039062502], + [10.832519531249972, 64.84311523437506], + [10.739843750000034, 64.87031250000001], + [10.8134765625, 64.92324218750002], + [11.02099609375, 64.97871093749995], + [11.132617187500017, 64.97617187499998], + [11.246191406250063, 64.90791015625001], + [11.2314453125, 64.865869140625] + ] + ], + [ + [ + [11.967968750000011, 65.62651367187505], + [11.901855468750057, 65.595703125], + [11.778320312500028, 65.60454101562502], + [11.76513671875, 65.63095703124998], + [11.800390624999977, 65.68388671875002], + [11.87539062500008, 65.70590820312506], + [11.97236328125004, 65.70156249999997], + [12.003222656250017, 65.679443359375], + [11.967968750000011, 65.62651367187505] + ] + ], + [ + [ + [12.509570312500045, 65.90195312500003], + [12.429492187500074, 65.89907226562497], + [12.430175781250028, 65.93994140625003], + [12.476074218750057, 65.97709960937507], + [12.548828125000057, 66.00190429687495], + [12.642382812500017, 66.00854492187497], + [12.747070312500028, 66.01137695312502], + [12.77880859375, 65.99169921875003], + [12.718652343750023, 65.96386718750003], + [12.509570312500045, 65.90195312500003] + ] + ], + [ + [ + [12.419921875, 66.04326171875005], + [12.32734375000004, 66.03662109375003], + [12.3427734375, 66.08076171874995], + [12.417675781250068, 66.12265625000006], + [12.446386718750063, 66.15131835937504], + [12.46132812500008, 66.18500976562495], + [12.527441406250063, 66.210546875], + [12.620800781250068, 66.17792968750004], + [12.62265625, 66.12246093750002], + [12.576367187500068, 66.07192382812502], + [12.419921875, 66.04326171875005] + ] + ], + [ + [ + [12.971777343750063, 67.87412109375], + [12.824023437500074, 67.82124023437498], + [12.877929687500057, 67.91777343750002], + [12.95771484375004, 68.01547851562503], + [13.068066406250068, 68.07133789062505], + [13.122851562500017, 68.0494140625], + [13.097753906250063, 68.002685546875], + [13.098242187499977, 67.9564453125], + [13.074609375000051, 67.93457031249997], + [12.971777343750063, 67.87412109375] + ] + ], + [ + [ + [13.872851562500045, 68.26533203125004], + [13.932324218750011, 68.24824218750001], + [14.087695312500045, 68.25322265625005], + [14.118847656250068, 68.246826171875], + [14.096777343750034, 68.218603515625], + [14.029296875000028, 68.18754882812499], + [13.887695312500057, 68.16850585937502], + [13.824023437500045, 68.12109375000006], + [13.778417968750006, 68.10498046875006], + [13.656152343750051, 68.10478515625002], + [13.583984375, 68.09384765625], + [13.495214843750034, 68.05166015625002], + [13.424218750000051, 68.08276367187506], + [13.404394531250006, 68.060693359375], + [13.391503906250051, 68.02124023437503], + [13.35205078125, 68.00966796875], + [13.229394531250051, 67.995361328125], + [13.199511718750017, 68.08725585937498], + [13.255957031250063, 68.12060546875003], + [13.300195312499994, 68.16044921875007], + [13.367968750000045, 68.16655273437507], + [13.4287109375, 68.16323242187502], + [13.537988281250051, 68.2490234375], + [13.687695312499983, 68.27338867187498], + [13.78408203125008, 68.276123046875], + [13.872851562500045, 68.26533203125004] + ] + ], + [ + [ + [15.207128906250006, 68.943115234375], + [15.337207031250045, 68.842431640625], + [15.396582031250063, 68.78359375000002], + [15.348437500000017, 68.67241210937502], + [15.222070312500023, 68.61630859375003], + [15.027050781250011, 68.60634765624997], + [14.890234375000034, 68.61098632812502], + [14.804003906250045, 68.63798828125002], + [14.793261718750074, 68.66826171875005], + [14.743457031250045, 68.67719726562501], + [14.612109375000017, 68.638330078125], + [14.520800781250074, 68.63305664062497], + [14.404687500000051, 68.663232421875], + [14.37343750000008, 68.71142578125006], + [14.496679687500034, 68.771875], + [14.553710937500028, 68.81884765625], + [14.6904296875, 68.81469726562503], + [14.724609375000028, 68.80009765624999], + [14.801855468750034, 68.79096679687501], + [14.848828125000011, 68.84755859375], + [14.837988281250034, 68.88666992187495], + [14.872363281250017, 68.91386718749999], + [15.0375, 68.894287109375], + [15.037792968750068, 69.00053710937507], + [15.101855468750045, 69.00800781249998], + [15.12812, 69.00395507812505], + [15.175585937500074, 68.98154296875], + [15.207128906250006, 68.943115234375] + ] + ], + [ + [ + [15.760351562500006, 68.56123046875001], + [15.772363281250051, 68.55419921875], + [15.908593750000023, 68.65048828124998], + [16.05957031250003, 68.68051757812498], + [16.068945312500006, 68.71401367187505], + [16.12744140625, 68.74643554687498], + [16.120800781250068, 68.79936523437502], + [16.15058593750001, 68.8423828125], + [16.227539062500057, 68.853759765625], + [16.275585937499983, 68.86831054687505], + [16.328906250000017, 68.87631835937498], + [16.425195312499994, 68.841552734375], + [16.47968750000001, 68.80292968749995], + [16.54736328125003, 68.71655273437503], + [16.519238281250068, 68.63300781249998], + [16.337988281250006, 68.56787109375003], + [16.193945312500063, 68.5384765625], + [16.048437499999977, 68.46367187500002], + [15.975292968750011, 68.402490234375], + [15.9125, 68.38925781250006], + [15.872753906249983, 68.39423828125001], + [15.837402343749972, 68.409033203125], + [15.763671875000057, 68.40908203125], + [15.682519531250051, 68.35600585937502], + [15.4375, 68.31284179687503], + [15.34140625, 68.32529296874998], + [15.337011718750006, 68.37822265625002], + [15.279687500000051, 68.37382812500002], + [15.18789062500008, 68.31040039062498], + [15.09804687500008, 68.28920898437502], + [15.037695312500034, 68.28271484375003], + [14.926855468750034, 68.30659179687501], + [14.628906249999972, 68.198486328125], + [14.34951171875008, 68.17827148437505], + [14.257519531249983, 68.19077148437503], + [14.257226562500023, 68.25693359375], + [14.437792968750045, 68.34155273437503], + [14.585839843749994, 68.40034179687501], + [15.095312500000063, 68.44140625000003], + [15.412597656250028, 68.61582031250003], + [15.489257812500028, 68.805322265625], + [15.564257812500017, 68.87373046874998], + [15.52900390625004, 68.91240234375005], + [15.443652343750045, 68.919189453125], + [15.438476562499972, 68.97856445312502], + [15.483007812500006, 69.04345703125003], + [15.649511718749977, 69.13256835937506], + [15.741992187499989, 69.17050781250006], + [15.892675781250063, 69.27788085937499], + [15.965332031250028, 69.30205078125002], + [16.04804687500001, 69.30205078125002], + [16.129492187500063, 69.27392578124997], + [16.11484375, 69.21640624999998], + [15.99267578125, 69.11264648437498], + [15.811718749999983, 69.02421875000002], + [15.833789062500045, 68.96074218750005], + [15.905859374999977, 68.90849609375005], + [15.92353515625004, 68.81918945312498], + [15.92792968750004, 68.73320312500005], + [15.790722656250068, 68.617041015625], + [15.760351562500006, 68.56123046875001] + ] + ], + [ + [ + [17.503027343750034, 69.59624023437502], + [17.62324218750001, 69.5390625], + [17.67734375, 69.55654296875], + [17.78369140625, 69.56303710937499], + [17.862792968750057, 69.54296875], + [17.927441406250068, 69.50664062500005], + [18.004101562500068, 69.50498046874998], + [18.05224609375, 69.45751953125], + [18.076757812500034, 69.39575195312503], + [18.021093750000063, 69.34960937500003], + [17.94208984375004, 69.32871093750003], + [17.920703125000045, 69.27431640624997], + [17.95068359375003, 69.19814453125], + [17.773535156249977, 69.172021484375], + [17.568164062500074, 69.16040039062503], + [17.487890625000063, 69.19682617187499], + [17.32363281250008, 69.13002929687497], + [17.160937500000074, 69.02592773437499], + [17.08251953124997, 69.013671875], + [17.077050781250023, 69.04663085937503], + [16.96015625000001, 69.06938476562505], + [16.81044921875008, 69.07070312499997], + [16.81542968750003, 69.09511718749997], + [16.842578125000045, 69.11235351562502], + [16.971777343750063, 69.13789062499998], + [16.99755859375, 69.19062], + [16.97412109375003, 69.28471679687505], + [16.996875, 69.33037109375002], + [17.001757812500045, 69.36191406250006], + [17.0830078125, 69.39882812500002], + [17.36083984375003, 69.38149414062497], + [17.394531250000057, 69.41669921875004], + [17.373437500000023, 69.43886718750002], + [17.22988281250008, 69.47768554687502], + [17.25195312500003, 69.50380859375002], + [17.355566406250006, 69.52714843750005], + [17.45361328125, 69.53017578124997], + [17.483105468750068, 69.569677734375], + [17.488183593750023, 69.58686523437495], + [17.503027343750034, 69.59624023437502] + ] + ], + [ + [ + [29.956152343750006, 69.79677734375002], + [29.766210937500006, 69.76752929687501], + [29.744238281250063, 69.79160156250003], + [29.785937500000017, 69.82905273437501], + [29.835839843749994, 69.90556640625005], + [29.913964843749994, 69.90244140625003], + [29.992968750000017, 69.87324218749995], + [30.05517578124997, 69.83837890625006], + [29.956152343750006, 69.79677734375002] + ] + ], + [ + [ + [20.779199218750023, 70.08974609375002], + [20.72529296875004, 70.06650390624998], + [20.642578125000057, 70.05703125], + [20.59804687500005, 70.07143554687502], + [20.53466796875003, 70.08090820312498], + [20.46425781250005, 70.0765625], + [20.40507812499999, 70.11914062500006], + [20.41171875, 70.15488281250003], + [20.492773437500006, 70.20332031249995], + [20.654882812500006, 70.230859375], + [20.78603515625008, 70.21953124999999], + [20.819433593750034, 70.20546874999997], + [20.779199218750023, 70.08974609375002] + ] + ], + [ + [ + [19.25507812500001, 70.06640625000006], + [19.34375, 70.01196289062497], + [19.42226562500005, 70.01718749999998], + [19.445898437499977, 70.037744140625], + [19.49951171874997, 70.04790039062502], + [19.607812500000023, 70.019140625], + [19.592285156250057, 69.97016601562498], + [19.44238281249997, 69.90839843750001], + [19.334765625000074, 69.82026367187501], + [19.197070312500017, 69.7998046875], + [19.13085937500003, 69.81044921875005], + [19.0078125, 69.75957031250007], + [18.909179687500057, 69.70668945312505], + [18.806933593750017, 69.63984375000001], + [18.80068359375008, 69.60537109375], + [18.784765625000034, 69.57900390624997], + [18.410253906250034, 69.55283203125006], + [18.27412109375001, 69.53549804687498], + [18.12988281250003, 69.557861328125], + [18.06152343750003, 69.60209960937505], + [18.08349609374997, 69.62612304687497], + [18.22744140625008, 69.63574218749997], + [18.232031250000034, 69.67675781249997], + [18.268457031249994, 69.70180664062502], + [18.315039062500006, 69.71547851562497], + [18.34931640625004, 69.76787109374999], + [18.40625, 69.78154296875002], + [18.512402343750068, 69.76865234375006], + [18.58398437499997, 69.80659179687495], + [18.624316406250017, 69.81303710937505], + [18.67402343750004, 69.78164062500002], + [18.69794921875001, 69.82485351562505], + [18.67402343750004, 69.86430664062499], + [18.6865234375, 69.89091796875002], + [18.823828125, 69.96010742187497], + [18.883203125000023, 70.01054687500005], + [18.968652343750023, 70.04301757812499], + [19.05097656250001, 70.037841796875], + [19.074902343750068, 70.08569335937497], + [19.05097656250001, 70.13466796875002], + [19.06005859374997, 70.16660156250003], + [19.13271484375005, 70.24414062500003], + [19.212695312500074, 70.2474609375], + [19.249414062500023, 70.17856445312498], + [19.25507812500001, 70.06640625000006] + ] + ], + [ + [ + [19.76748046875005, 70.21669921875002], + [19.81835937500003, 70.20498046875005], + [19.868652343750057, 70.212255859375], + [19.910449218750045, 70.20190429687503], + [19.99414062500003, 70.14926757812506], + [20.084277343750017, 70.12856445312502], + [20.088476562500063, 70.10205078125003], + [20.005957031250034, 70.07622070312502], + [19.897265625000017, 70.06845703125003], + [19.780859375, 70.07744140624999], + [19.746679687500063, 70.11049804687497], + [19.71083984375005, 70.16533203125005], + [19.61347656250001, 70.21909179687498], + [19.599023437499994, 70.26616210937507], + [19.68378906250004, 70.273583984375], + [19.76748046875005, 70.21669921875002] + ] + ], + [ + [ + [23.615332031250034, 70.54931640625003], + [23.63398437500004, 70.5025390625], + [23.64101562500005, 70.46396484375003], + [23.54775390625005, 70.40815429687495], + [23.332812500000045, 70.33496093750006], + [23.34511718750005, 70.31528320312503], + [23.27070312500001, 70.29648437500003], + [23.15917968750003, 70.28261718750005], + [23.10029296875001, 70.29609374999995], + [23.108398437500057, 70.35883789062504], + [23.09062, 70.37763671874995], + [23.005957031250063, 70.35278320312503], + [22.91787109375005, 70.38466796874997], + [22.917773437500045, 70.41674804687503], + [22.941015625000063, 70.444580078125], + [23.022460937500057, 70.4869140625], + [23.15839843750004, 70.51606445312501], + [23.248046875, 70.505126953125], + [23.546679687500017, 70.61708984374997], + [23.57890624999999, 70.59365234375], + [23.615332031250034, 70.54931640625003] + ] + ], + [ + [ + [24.01757812500003, 70.56738281249997], + [23.82714843750003, 70.52749023437502], + [23.716601562500074, 70.561865234375], + [23.67011718750001, 70.5970703125], + [23.66328125000004, 70.67524414062501], + [23.689160156250068, 70.72280273437502], + [23.778417968750063, 70.74736328125005], + [23.836523437499977, 70.72939453125002], + [23.852050781250057, 70.71435546874997], + [23.95644531250008, 70.699609375], + [24.07832031250004, 70.65058593749995], + [24.01757812500003, 70.56738281249997] + ] + ], + [ + [ + [23.440527343750063, 70.81577148437503], + [23.420898437500057, 70.78442382812506], + [23.387109375, 70.75390625000006], + [23.30517578125, 70.72167968749997], + [23.068164062500045, 70.594091796875], + [22.92890625000001, 70.57353515624999], + [22.88476562499997, 70.55351562499999], + [22.8291015625, 70.54155273437505], + [22.656054687500017, 70.55903320312495], + [22.60537109375008, 70.53315429687501], + [22.557519531250023, 70.51586914062506], + [22.432226562500063, 70.50917968750002], + [22.358691406250017, 70.514794921875], + [22.16875, 70.56210937500006], + [22.055761718750034, 70.61333007812502], + [21.99453125000008, 70.65712890624997], + [22.170019531250034, 70.65629882812505], + [22.232617187499983, 70.66689453125], + [22.350292968750068, 70.65766601562498], + [22.420996093750006, 70.70258789062498], + [22.570703125000023, 70.69716796875002], + [22.858105468750068, 70.72841796875], + [22.96357421875004, 70.71098632812502], + [23.204687500000063, 70.81547851562507], + [23.28017578125008, 70.81274414062506], + [23.395605468750034, 70.84257812499999], + [23.440527343750063, 70.81577148437503] + ] + ], + [ + [ + [27.898046875, 70.67792968750001], + [27.998828125000017, 70.66425781249998], + [28.215625, 70.704345703125], + [28.271777343750017, 70.66796875000003], + [28.202734375, 70.57690429687506], + [28.191015625, 70.440185546875], + [28.166015625000057, 70.36040039062499], + [28.166015625000057, 70.28764648437502], + [28.192968750000034, 70.24858398437505], + [28.280078125000017, 70.40341796875006], + [28.309863281250045, 70.44306640624995], + [28.43730468749999, 70.50136718750002], + [28.48476562500008, 70.61879882812497], + [28.609375, 70.75966796874997], + [28.749804687500074, 70.84150390624995], + [28.83154296875003, 70.86396484375001], + [29.102343750000045, 70.86074218749997], + [29.218554687500017, 70.829931640625], + [29.321093750000017, 70.761474609375], + [29.397656250000097, 70.73413085937503], + [29.63906250000005, 70.70502929687495], + [29.721972656250074, 70.66855468749998], + [29.7375, 70.646826171875], + [29.796484375000063, 70.64252929687501], + [29.959375, 70.69438476562499], + [30.065136718750097, 70.70297851562498], + [30.23769531250005, 70.62216796875003], + [30.203027343749994, 70.56230468750002], + [30.213183593750017, 70.54331054687503], + [30.42207031250004, 70.54716796875002], + [30.59589843750004, 70.52368164062503], + [30.926367187500006, 70.40112304687503], + [30.960644531250097, 70.34384765625], + [30.944140625000017, 70.27441406249997], + [30.468945312500097, 70.1978515625], + [30.262988281250074, 70.12470703125004], + [29.925878906250063, 70.09648437500005], + [28.78115234375005, 70.14541015625], + [28.804296875000063, 70.09252929687506], + [29.601367187500017, 69.97675781249998], + [29.646875, 69.943701171875], + [29.621386718750017, 69.87407226562505], + [29.620996093749994, 69.81821289062503], + [29.63593750000004, 69.780126953125], + [29.694628906250017, 69.74458007812504], + [29.792089843750063, 69.727880859375], + [29.990332031250006, 69.73666992187503], + [30.08828125, 69.71757812500005], + [30.15517578125005, 69.74594726562503], + [30.18007812500005, 69.841162109375], + [30.237597656250017, 69.86220703125002], + [30.34882812500004, 69.83457031249998], + [30.397265625000074, 69.73281250000002], + [30.428320312500006, 69.722265625], + [30.48437, 69.79487304687498], + [30.594531250000017, 69.78964843749998], + [30.714453125, 69.79570312500005], + [30.869726562500006, 69.78344726562506], + [30.924121093750017, 69.65175781250005], + [30.922460937500006, 69.605810546875], + [30.896679687500097, 69.56123046874998], + [30.860742187499994, 69.53842773437503], + [30.788867187500074, 69.52851562499998], + [30.615429687500097, 69.532568359375], + [30.379687500000017, 69.58471679687497], + [30.22753906250003, 69.63378906250003], + [30.18017578124997, 69.63583984375], + [30.159765625, 69.62988281250003], + [30.196484375000097, 69.58056640625003], + [30.18671875000004, 69.54277343750005], + [30.163769531250097, 69.501611328125], + [30.13183593749997, 69.46425781250002], + [30.08730468750005, 69.43286132812503], + [29.994042968749994, 69.39248046874997], + [29.83271484375004, 69.36044921875003], + [29.38828125, 69.29814453125005], + [29.35302734375003, 69.27060546875], + [29.20996093750003, 69.097021484375], + [29.170898437500057, 69.07153320312506], + [29.11855468750005, 69.049951171875], + [28.96582031250003, 69.02197265625], + [28.891894531250074, 69.06059570312505], + [28.832617187500063, 69.11899414062503], + [28.846289062500006, 69.17690429687502], + [29.02490234374997, 69.28798828125], + [29.19179687500005, 69.36669921874997], + [29.238867187500063, 69.39394531250002], + [29.33339843750005, 69.47299804687503], + [29.14160156250003, 69.67143554687505], + [28.800390625000063, 69.73149414062505], + [28.411718750000034, 69.82275390624997], + [28.269140625000034, 69.87143554687503], + [28.047265625000023, 69.97167968750003], + [27.889941406250045, 70.06166992187497], + [27.747851562500045, 70.06484375], + [27.591699218750023, 70.042236328125], + [27.34804687500005, 69.96005859375006], + [27.205664062499977, 69.91870117187497], + [27.127539062500063, 69.90649414062497], + [27.108691406250045, 69.90468749999997], + [26.93427734375004, 69.928125], + [26.74023437500003, 69.93305664062498], + [26.584277343750045, 69.92631835937502], + [26.525390625000057, 69.91503906250003], + [26.308203125000034, 69.78193359375001], + [26.15615234375005, 69.71469726562498], + [26.07246093750004, 69.69155273437497], + [26.011523437500074, 69.65263671875005], + [25.961523437500006, 69.58862304687497], + [25.850195312500063, 69.36650390625002], + [25.767187500000034, 69.28266601562498], + [25.748632812500063, 69.23144531250003], + [25.768164062500063, 69.07612304687501], + [25.748339843750017, 68.99013671875], + [25.646679687499983, 68.91914062500001], + [25.575292968750006, 68.88715820312498], + [25.48085937500005, 68.88061523437497], + [25.357128906250068, 68.862451171875], + [25.249121093750006, 68.82133789062507], + [25.1728515625, 68.76528320312502], + [25.0869140625, 68.63959960937498], + [24.94140625000003, 68.59326171875006], + [24.80244140625004, 68.60649414062499], + [24.703222656249977, 68.65283203125003], + [24.49052734374999, 68.68867187500004], + [24.33203125000003, 68.71152343749998], + [24.154101562500017, 68.760888671875], + [23.997363281250074, 68.7984375], + [23.85400390625, 68.80590820312503], + [23.772558593750006, 68.75839843750003], + [23.70703125, 68.71386718750003], + [23.4625, 68.67763671875], + [23.324023437500017, 68.64897460937502], + [23.144335937500017, 68.64257812499997], + [23.07167968750005, 68.67436523437505], + [22.811035156250057, 68.69531249999997], + [22.500683593750068, 68.72021484374997], + [22.410937500000074, 68.719873046875], + [22.382910156250063, 68.776611328125], + [22.300390625000034, 68.855859375], + [22.0796875, 68.9927734375], + [21.98945312500001, 69.04111328124998], + [21.81972656250008, 69.15449218749998], + [21.621777343750068, 69.27070312499995], + [21.59375, 69.273583984375], + [21.461230468750045, 69.277490234375], + [21.26679687500004, 69.27368164062503], + [21.14375, 69.24726562499998], + [21.06611328125001, 69.21411132812497], + [21.052636718750023, 69.18657226562505], + [21.12783203125008, 69.080810546875], + [21.10449218750003, 69.05444335937503], + [21.065722656250017, 69.04174804687503], + [20.889257812500063, 69.07143554687502], + [20.675878906250006, 69.069482421875], + [20.622167968750006, 69.036865234375], + [20.491992187500017, 69.03330078124998], + [20.116699218750057, 69.02089843750005], + [20.282324218750034, 68.934326171875], + [20.33710937500001, 68.89965820312503], + [20.348046875000023, 68.84873046875003], + [20.319433593750034, 68.75405273437502], + [20.240039062500045, 68.67314453125007], + [20.1474609375, 68.60732421875], + [19.968847656250034, 68.54204101562502], + [20.240039062500045, 68.4775390625], + [20.055957031250017, 68.39038085937503], + [19.969824218750063, 68.35639648437501], + [19.87001953125005, 68.36225585937498], + [19.691210937500045, 68.39243164062498], + [19.25898437500001, 68.46533203125], + [19.05263671875008, 68.49272460937499], + [18.868261718749977, 68.50112304687502], + [18.769824218750017, 68.50004882812507], + [18.378613281250068, 68.56240234374997], + [18.303027343750045, 68.55541992187497], + [18.16259765625003, 68.52841796874998], + [18.147070312500063, 68.46777343749997], + [18.15595703125001, 68.31684570312495], + [18.17666015625005, 68.20063476562498], + [18.125, 68.133447265625], + [18.07324218750003, 68.08784179687501], + [17.91669921875001, 67.96489257812502], + [17.564746093750074, 68.04843749999998], + [17.324609375000023, 68.10380859374999], + [17.170507812500063, 68.03012695312498], + [16.783593750000023, 67.89501953125], + [16.585546874999977, 67.62832031250002], + [16.57412109375005, 67.61958007812501], + [16.457128906250034, 67.55175781250006], + [16.30712890625003, 67.52060546875], + [16.193554687500068, 67.50517578125007], + [16.12744140625, 67.42583007812507], + [16.281542968750045, 67.31206054687507], + [16.36064453124999, 67.25200195312499], + [16.434277343749983, 67.15507812500007], + [16.420703125000074, 67.093359375], + [16.40351562500004, 67.05498046875002], + [16.23769531250008, 66.97641601562498], + [15.884179687500023, 66.76884765625007], + [15.557031250000051, 66.55209960937506], + [15.422949218750006, 66.48984374999998], + [15.483789062500051, 66.30595703124999], + [15.37490234375008, 66.25205078125003], + [15.153320312500057, 66.19106445312505], + [15.0400390625, 66.16752929687505], + [14.91796875, 66.1537109375], + [14.543261718750045, 66.12934570312498], + [14.609960937500034, 65.932275390625], + [14.635156250000023, 65.84501953125007], + [14.634570312500074, 65.79326171874999], + [14.595800781249977, 65.74287109374995], + [14.549511718750068, 65.64638671875002], + [14.47968750000004, 65.30146484374998], + [14.42626953125, 65.26435546874998], + [14.352441406250051, 65.17084960937504], + [14.115136718750023, 64.946142578125], + [13.924804687499972, 64.79677734375002], + [13.650292968750023, 64.58154296874997], + [13.873535156250028, 64.51357421874997], + [14.077636718750028, 64.464013671875], + [14.119921875000017, 64.38774414062502], + [14.148046874999977, 64.26030273437507], + [14.141210937500006, 64.17353515624998], + [14.063281250000045, 64.09550781250007], + [14.002734375000045, 64.04072265625001], + [13.960546875000063, 64.01401367187498], + [13.670703125000074, 64.04062], + [13.299609375000074, 64.07480468750003], + [13.203515625000023, 64.07509765625], + [12.987597656250017, 64.05048828124995], + [12.792773437500017, 64], + [12.690039062500034, 63.957421875], + [12.6625, 63.94047851562502], + [12.532714843750057, 63.84355468749999], + [12.30195312500004, 63.671191406250045], + [12.175195312500051, 63.595947265625], + [12.212109375000011, 63.49223632812499], + [11.999902343750051, 63.29169921875001], + [12.138671874999972, 63.089160156250045], + [12.144628906250034, 63.08251953125003], + [12.218164062500023, 63.00063476562502], + [12.141015625000023, 62.947851562500034], + [12.108593750000068, 62.91948242187502], + [12.11962890625, 62.82592773437497], + [12.13984375000004, 62.721337890624966], + [12.121875, 62.660009765625006], + [12.114550781250045, 62.59189453124998], + [12.303515625000074, 62.28559570312501], + [12.301367187500006, 62.21376953125005], + [12.291992187500057, 62.16743164062501], + [12.233691406250074, 61.97685546875002], + [12.155371093750006, 61.720751953125045], + [12.292089843750063, 61.65346679687502], + [12.486816406250028, 61.57299804687497], + [12.59609375, 61.54130859375002], + [12.75751953125004, 61.445703124999966], + [12.88076171875008, 61.35229492187506], + [12.86367187500008, 61.29028320312503], + [12.828222656250034, 61.22182617187502], + [12.776367187500057, 61.17397460937505], + [12.727832031250017, 61.10825195312498], + [12.706054687500028, 61.059863281250074], + [12.683007812500023, 61.04682617187498], + [12.467578125000017, 61.04150390624997], + [12.353710937500011, 61.02319335937497], + [12.29414062500004, 61.00268554687506], + [12.31464843750004, 60.89213867187499], + [12.445312500000028, 60.689648437499955], + [12.553808593750006, 60.54565429687503], + [12.588671874999989, 60.450732421875045], + [12.552832031250063, 60.35449218749997], + [12.515820312499983, 60.305224609375074], + [12.514648437500028, 60.23886718750006], + [12.486132812500074, 60.10678710937506], + [12.402050781249983, 60.04003906250006], + [12.291992187500057, 59.967236328124955], + [12.169238281250074, 59.91289062499999], + [12.071875, 59.897607421874994], + [11.98828125, 59.89130859375004], + [11.93212890625, 59.863671875], + [11.88125, 59.78247070312497], + [11.834277343750045, 59.697167968749994], + [11.680761718750034, 59.59228515625003], + [11.684863281250074, 59.55576171874998], + [11.743359375000011, 59.431445312500045], + [11.798144531250074, 59.28989257812498], + [11.751855468750051, 59.157568359375034], + [11.712207031250045, 59.01865234374998], + [11.64277343750004, 58.92607421875002], + [11.543554687500063, 58.893017578124955], + [11.470703125000057, 58.909521484375034], + [11.388281250000063, 59.036523437499966], + [11.38642578125004, 59.065722656250045], + [11.36591796875004, 59.104541015625074], + [11.132128906250017, 59.14321289062502], + [11.090820312500028, 59.14179687500001], + [10.998925781250051, 59.16445312500002], + [10.945019531250068, 59.17084960937498], + [10.834472656250028, 59.18393554687498], + [10.742578125000051, 59.29599609374998], + [10.644921875000051, 59.389208984375045], + [10.631054687500068, 59.42817382812501], + [10.634375, 59.60249023437498], + [10.604492187499972, 59.68002929687498], + [10.595312500000063, 59.764550781249966], + [10.533886718750068, 59.69580078125], + [10.56953125000004, 59.587109374999955], + [10.49375, 59.54150390625], + [10.39814453125004, 59.51933593750002], + [10.407128906249994, 59.455664062500006], + [10.446386718750006, 59.44360351562503], + [10.45458984375, 59.377490234375074], + [10.431347656250068, 59.279638671875034], + [10.2431640625, 59.06206054687502], + [10.205175781249977, 59.03867187500006], + [10.179394531250068, 59.00927734375003], + [10.083105468749977, 59.02880859375], + [9.959570312500034, 58.96821289062501], + [9.842578125000017, 58.95849609374997], + [9.80019531250008, 59.02705078124998], + [9.635156250000023, 59.117773437500006], + [9.557226562500063, 59.11269531250002], + [9.627148437500011, 59.067919921875074], + [9.696093750000017, 59.00971679687501], + [9.65693359375004, 58.97119140624997], + [9.618457031250017, 58.946044921875], + [9.551074218750045, 58.93300781250002], + [9.309960937500051, 58.85683593750005], + [9.395800781250017, 58.8056640625], + [9.322949218750011, 58.74755859375], + [9.23867187500008, 58.73901367187503], + [9.19375, 58.71186523437501], + [9.178125, 58.675], + [8.928417968750011, 58.56997070312505], + [8.521386718750051, 58.300585937500045], + [8.312207031250068, 58.224462890625006], + [8.166113281250063, 58.145312500000045], + [8.037402343750045, 58.14726562499999], + [7.875585937500034, 58.079980468749966], + [7.465917968750063, 58.02094726562501], + [7.194140625000017, 58.047656250000045], + [7.0048828125, 58.024218750000074], + [6.903417968750034, 58.07050781249998], + [6.890234375, 58.10229492187497], + [6.895312500000074, 58.12075195312502], + [6.912304687500068, 58.14287109374999], + [6.877050781250006, 58.15073242187498], + [6.802832031250063, 58.15454101562497], + [6.771093749999977, 58.13222656250005], + [6.766796875000011, 58.08154296875003], + [6.7314453125, 58.06831054687498], + [6.590527343750068, 58.09731445312502], + [6.555078125000023, 58.12343750000002], + [6.605761718750045, 58.17636718749998], + [6.692480468750063, 58.224023437499994], + [6.676757812500057, 58.23378906250002], + [6.659863281250068, 58.26274414062499], + [6.61757812500008, 58.26640625000002], + [6.491503906250045, 58.25942382812502], + [6.389062500000051, 58.26796875], + [6.054687500000057, 58.375146484374966], + [5.976562500000028, 58.43232421874998], + [5.706835937500074, 58.52363281250001], + [5.585937500000028, 58.62041015625002], + [5.517285156249983, 58.726513671874955], + [5.522460937499972, 58.82265625000002], + [5.55556640625008, 58.975195312500006], + [5.612207031250051, 59.012890624999955], + [5.854296874999989, 58.95947265625], + [6.099023437500023, 58.87026367187502], + [6.137304687500006, 58.87465820312502], + [6.214160156250045, 58.944677734375006], + [6.363281250000028, 59.00092773437501], + [6.321093750000074, 59.01645507812506], + [6.099414062500017, 58.951953125000074], + [6.016992187500023, 58.987695312499966], + [5.88916015625, 59.06049804687498], + [5.88916015625, 59.097949218750045], + [5.948730468750057, 59.135449218749955], + [5.968554687500017, 59.18613281249998], + [5.937304687500045, 59.23398437500006], + [5.951855468750068, 59.299072265625], + [6.050683593750051, 59.36816406250003], + [6.19892578125004, 59.43808593749998], + [6.305664062500028, 59.505566406249955], + [6.415332031250074, 59.547119140625], + [6.403906250000063, 59.56098632812498], + [6.278515625000011, 59.534521484375006], + [6.15859375000008, 59.489648437499994], + [6.017382812500017, 59.414453124999966], + [5.84521484375, 59.35346679687498], + [5.717968750000011, 59.32983398437503], + [5.657324218750006, 59.310253906249955], + [5.564062500000034, 59.29121093749998], + [5.467578125000074, 59.20380859375004], + [5.362304687500028, 59.166357421875034], + [5.17324218750008, 59.16254882812498], + [5.131640625000045, 59.22646484375002], + [5.18505859375, 59.453662109375045], + [5.2421875, 59.564306640625034], + [5.304882812500068, 59.64257812499997], + [5.403515625000011, 59.65576171875], + [5.472460937500017, 59.713085937499955], + [5.529687500000023, 59.713085937499955], + [5.579492187500051, 59.68662109374998], + [5.77216796875004, 59.66093749999999], + [5.867285156250063, 59.733984375000034], + [5.991015625000045, 59.74467773437499], + [6.216601562499989, 59.818359375], + [6.211914062500028, 59.83178710937497], + [6.059277343750011, 59.815576171874966], + [5.96669921875008, 59.81318359375001], + [5.833984375000028, 59.79467773437497], + [5.763476562500045, 59.80791015625002], + [5.73046875, 59.863085937500045], + [5.78359375000008, 59.912792968749955], + [5.996484375000023, 60.031494140625], + [6.069921875000063, 60.08349609375003], + [6.111816406250057, 60.13208007812497], + [6.10517578125004, 60.165136718750034], + [6.140527343750051, 60.233496093750034], + [6.348730468750006, 60.35297851562504], + [6.518066406250057, 60.407568359375034], + [6.57363281250008, 60.36059570312497], + [6.526367187500057, 60.21362304687497], + [6.526855468750057, 60.152929687500034], + [6.660937500000017, 60.36723632812499], + [6.71992187500004, 60.41816406249998], + [6.787109375000057, 60.45410156250003], + [6.949707031250057, 60.478222656249955], + [6.995703125, 60.511962890625], + [6.806347656250068, 60.50078125000002], + [6.346972656250017, 60.419091796874994], + [6.1533203125, 60.34624023437499], + [6.10175781250004, 60.290136718750006], + [5.967382812500034, 60.20556640625003], + [5.904394531249977, 60.15063476562503], + [5.8765625, 60.07001953125001], + [5.800878906250034, 60.02622070312498], + [5.698828125000034, 60.01000976562497], + [5.557031250000023, 59.90776367187502], + [5.49453125000008, 59.825585937499966], + [5.353417968749994, 59.760107421875034], + [5.263867187500068, 59.70976562499999], + [5.234472656250034, 59.691796874999966], + [5.18603515625, 59.64228515625001], + [5.145800781250074, 59.63881835937502], + [5.110742187500051, 59.66782226562498], + [5.10488281250008, 59.73168945312503], + [5.119238281250006, 59.83369140625001], + [5.187109375000063, 59.907080078125034], + [5.219531249999989, 59.978759765625], + [5.174414062500034, 60.045703125000045], + [5.205664062500006, 60.087939453125045], + [5.265429687500017, 60.08647460937499], + [5.37646484375, 60.06723632812498], + [5.49453125000008, 60.0703125], + [5.688574218749977, 60.12319335937502], + [5.65761718750008, 60.15410156250002], + [5.573828125000063, 60.15849609375002], + [5.41738281250008, 60.15410156250002], + [5.285839843750011, 60.20571289062505], + [5.183593750000057, 60.30839843750002], + [5.13710937500008, 60.445605468750074], + [5.168164062500011, 60.48481445312498], + [5.546484375, 60.62456054687502], + [5.648339843750051, 60.68798828124997], + [5.589355468750028, 60.69428710937501], + [5.447363281250063, 60.617333984374966], + [5.244042968750023, 60.569580078125], + [5.115820312500006, 60.63598632812503], + [5.049121093750017, 60.70751953125006], + [5.0107421875, 60.858544921874994], + [5.024609375000068, 60.936132812500006], + [5.008593750000017, 61.038183593750006], + [5.095410156250011, 61.07133789062502], + [5.192480468750006, 61.05371093749997], + [5.288183593750034, 61.047167968750045], + [5.505273437500023, 61.05610351562501], + [5.983984375000034, 61.117333984374966], + [6.292578125000034, 61.08095703125002], + [6.41796875, 61.084277343750074], + [6.60986328125, 61.137011718750074], + [6.777832031250028, 61.142431640625006], + [6.903417968750034, 61.10214843749998], + [6.97207031250008, 61.055957031250074], + [6.980566406250034, 60.994140625], + [7.038671875000063, 60.952929687500045], + [7.077929687500074, 60.96630859375], + [7.046679687499989, 61.01528320312505], + [7.040136718750006, 61.091162109375034], + [7.545019531250006, 61.177148437499966], + [7.604492187500057, 61.210546875000034], + [7.403906250000034, 61.22216796875], + [7.34658203125008, 61.30058593749999], + [7.45253906250008, 61.41923828125002], + [7.442578125000011, 61.43461914062502], + [7.331152343750034, 61.37202148437498], + [7.276269531250051, 61.28393554687497], + [7.29804687500004, 61.21362304687503], + [7.275976562500006, 61.180957031250045], + [7.173535156250011, 61.16596679687501], + [6.942578125000011, 61.160546874999966], + [6.794335937500023, 61.19038085937501], + [6.657031250000017, 61.20659179687502], + [6.61025390625008, 61.229101562500006], + [6.62587890625008, 61.279296875], + [6.599902343750017, 61.28964843749998], + [6.543066406249977, 61.24453125000002], + [6.492578125, 61.15458984374999], + [6.383496093750068, 61.133886718750034], + [6.082519531250028, 61.16728515625002], + [5.646777343749989, 61.147607421874994], + [5.451269531250034, 61.10234375000002], + [5.32460937500008, 61.10825195312498], + [5.106738281250017, 61.187548828125045], + [5.021679687500011, 61.250585937500006], + [4.98994140625004, 61.37768554687497], + [5.002734375000074, 61.43359375], + [5.172460937500006, 61.457128906250006], + [5.25830078125, 61.45546875000002], + [5.338671875000017, 61.485498046874994], + [5.267578125000028, 61.505029296874994], + [5.167578125000063, 61.543359374999966], + [5.099414062500045, 61.62016601562499], + [4.996679687500063, 61.64521484375004], + [4.927832031249977, 61.71069335937506], + [4.910351562500068, 61.80957031250003], + [4.930078125, 61.878320312499994], + [4.985058593750011, 61.90043945312499], + [5.116992187500074, 61.88540039062502], + [5.465332031249972, 61.89692382812498], + [5.793261718749989, 61.827099609374955], + [6.01582031250004, 61.7875], + [6.466699218750051, 61.807421875000045], + [6.730761718750045, 61.86977539062505], + [6.682324218750011, 61.88701171874999], + [6.395898437500023, 61.85097656250002], + [6.131152343749989, 61.852441406249966], + [5.664453125000051, 61.92290039062502], + [5.473046875000051, 61.945605468750045], + [5.266894531250045, 61.935595703125045], + [5.159570312500051, 61.956982421874955], + [5.096484375000074, 62.02666015625002], + [5.143164062500063, 62.159912109375], + [5.240917968750011, 62.18867187499998], + [5.293847656250051, 62.15390625], + [5.357714843750074, 62.151708984375006], + [5.422363281250028, 62.20737304687498], + [5.484277343750023, 62.23911132812506], + [5.533300781250063, 62.310888671875034], + [5.718164062500051, 62.37890625000003], + [5.79628906250008, 62.38466796875005], + [5.908300781249977, 62.41601562500003], + [5.979785156250074, 62.407128906249994], + [6.025585937500068, 62.37568359374998], + [6.083496093750057, 62.349609375], + [6.208984375000057, 62.35278320312503], + [6.580078125000057, 62.407275390625045], + [6.620019531250023, 62.42329101562501], + [6.692382812500028, 62.46806640624999], + [6.457128906250063, 62.448095703125006], + [6.261718750000057, 62.41630859375002], + [6.136132812500051, 62.40747070312497], + [6.118457031250074, 62.447167968749994], + [6.164746093750011, 62.48242187499997], + [6.2375, 62.519921874999966], + [6.272851562499994, 62.583837890625034], + [6.352929687500051, 62.61113281249999], + [6.439453125000028, 62.609667968750045], + [6.61835937500004, 62.62128906250001], + [6.744628906250028, 62.63789062500004], + [6.961132812500068, 62.62675781249999], + [7.283789062499977, 62.60229492187497], + [7.491796875, 62.542822265625034], + [7.570117187500045, 62.54819335937506], + [7.653125, 62.56401367187499], + [7.690722656250017, 62.58559570312502], + [7.527441406250063, 62.61030273437501], + [7.518164062500034, 62.64550781249997], + [7.538378906250074, 62.67207031249998], + [7.804687500000057, 62.72099609374999], + [8.095507812500074, 62.731835937499994], + [8.045507812500006, 62.77124023437503], + [7.408398437500068, 62.71176757812498], + [7.242089843750023, 62.75234375], + [7.110839843750028, 62.75200195312502], + [7.02490234375, 62.72880859374999], + [6.779980468750011, 62.700732421875045], + [6.734960937500006, 62.72070312500003], + [6.781542968750074, 62.789648437500034], + [6.928222656250028, 62.902734375], + [6.940429687500028, 62.930468750000045], + [7.00849609375004, 62.957666015624994], + [7.389062500000023, 63.023291015625034], + [7.571875, 63.09951171875002], + [7.654296875000057, 63.109179687500045], + [7.736035156250011, 63.103857421875006], + [7.860351562500028, 63.11279296874997], + [8.100585937500028, 63.090966796874966], + [8.211132812500011, 62.995507812499966], + [8.310546875, 62.96552734374998], + [8.623144531250006, 62.84624023437502], + [8.609179687499989, 62.88056640625001], + [8.33857421875004, 63.04218749999998], + [8.235156250000017, 63.08217773437505], + [8.158007812500017, 63.16152343750005], + [8.18447265625008, 63.236523437499955], + [8.271484375000028, 63.28657226562501], + [8.580175781250034, 63.313378906249966], + [8.635546875000045, 63.34233398437502], + [8.641015625, 63.39208984375003], + [8.59375, 63.426123046875034], + [8.480175781250011, 63.42416992187498], + [8.386523437500017, 63.44526367187501], + [8.360742187500023, 63.498876953125034], + [8.398144531249983, 63.53510742187504], + [8.576171875000028, 63.60117187499998], + [8.673632812500074, 63.62260742187502], + [8.842382812500006, 63.64589843750005], + [9.135839843750006, 63.593652343749966], + [9.158105468750023, 63.56625976562498], + [9.07587890625004, 63.500390624999966], + [9.08417968750004, 63.46342773437499], + [9.156054687500045, 63.459326171875034], + [9.32363281250008, 63.57036132812502], + [9.520703125000068, 63.58569335937503], + [9.602246093750068, 63.60957031250001], + [9.696875, 63.624560546875045], + [9.83222656250004, 63.52416992187503], + [9.891503906250023, 63.49204101562506], + [9.936035156250057, 63.478857421875034], + [9.97919921875004, 63.39526367187506], + [10.020996093750028, 63.39082031250004], + [10.08056640625, 63.432714843750034], + [10.188574218750063, 63.45478515625001], + [10.340039062500011, 63.469335937500034], + [10.590917968750063, 63.44721679687498], + [10.704492187500023, 63.46357421875001], + [10.76015625000008, 63.461279296875006], + [10.70673828125004, 63.53632812500001], + [10.673632812500045, 63.558007812499994], + [10.725292968750068, 63.625], + [10.779199218750051, 63.651171875000045], + [10.952539062500023, 63.698193359374955], + [11.11787109375004, 63.719189453124955], + [11.225781250000068, 63.763818359374994], + [11.370703125000034, 63.804833984374994], + [11.347949218750017, 63.837695312500045], + [11.307617187500057, 63.87573242187497], + [11.213867187500057, 63.878125], + [11.175585937500074, 63.89887695312498], + [11.294628906250068, 63.94819335937498], + [11.457617187500063, 64.00297851562505], + [11.429199218750028, 64.02451171875], + [11.306640625000028, 64.04887695312499], + [11.213574218750068, 64.03051757812497], + [11.075195312500028, 63.988134765625034], + [10.91425781250004, 63.92109374999998], + [10.966699218750051, 63.90156249999998], + [11.047265625000023, 63.84521484374997], + [10.934863281250045, 63.770214843749955], + [10.339160156250017, 63.57104492187497], + [10.055078125000051, 63.5126953125], + [9.924023437499983, 63.521777343750074], + [9.892773437500011, 63.576220703125045], + [9.832324218750045, 63.61650390625002], + [9.76748046875008, 63.699511718750045], + [9.6572265625, 63.697314453125045], + [9.594628906250023, 63.67895507812503], + [9.567285156250051, 63.70615234374998], + [9.614746093750057, 63.794824218749994], + [9.708007812500028, 63.864892578124994], + [9.86445312500004, 63.917822265625006], + [9.939453125000028, 63.98173828124999], + [10.009960937500011, 64.08315429687505], + [10.236230468749994, 64.17963867187498], + [10.565625, 64.418310546875], + [10.833984375000028, 64.494482421875], + [10.932324218750068, 64.57773437499998], + [11.090429687500034, 64.61455078125002], + [11.225390624999989, 64.67949218750002], + [11.331347656249989, 64.6859375], + [11.523828125000051, 64.744384765625], + [11.632910156250063, 64.81391601562495], + [11.56171875000004, 64.81826171874997], + [11.392480468750023, 64.77299804687507], + [11.296777343750051, 64.75478515625], + [11.303515625000017, 64.82939453125002], + [11.349902343750045, 64.90590820312497], + [11.489355468750034, 64.975830078125], + [12.15966796875, 65.178955078125], + [12.226562500000028, 65.14536132812498], + [12.30654296875008, 65.08598632812507], + [12.508398437499977, 65.09941406250005], + [12.738378906250034, 65.21440429687502], + [12.915527343750057, 65.33925781249997], + [12.819824218750028, 65.31748046874998], + [12.715332031250057, 65.26635742187503], + [12.511718750000057, 65.19531250000003], + [12.417578125000063, 65.18408203124997], + [12.363867187500034, 65.19331054687498], + [12.333984374999972, 65.24072265624997], + [12.263378906250068, 65.256103515625], + [12.199609375000051, 65.24545898437503], + [12.133886718749977, 65.27915039062498], + [12.122167968750006, 65.36235351562505], + [12.20625, 65.48623046874997], + [12.272851562500051, 65.56816406250007], + [12.344824218750063, 65.63017578124999], + [12.627734375000045, 65.80615234375006], + [12.68886718750008, 65.90219726562498], + [12.816796875000023, 65.952880859375], + [12.983007812500034, 65.94160156250001], + [13.033105468750051, 65.95625], + [12.976074218750057, 66.01918945312502], + [12.794921875, 66.06909179687497], + [12.783789062500063, 66.10043945312506], + [13.387109375000051, 66.18276367187505], + [13.674414062500034, 66.17998046875002], + [13.75966796875008, 66.22104492187503], + [13.915820312500017, 66.24736328125005], + [14.034179687500057, 66.29755859374998], + [13.973144531250057, 66.31972656249997], + [13.68134765625004, 66.27358398437497], + [13.49892578125008, 66.25190429687501], + [13.416406250000051, 66.25258789062497], + [13.35205078125, 66.23671875000002], + [13.118847656250011, 66.23066406250004], + [13.068164062500074, 66.43081054687502], + [13.104687500000068, 66.53940429687503], + [13.191601562500011, 66.53715820312502], + [13.211425781250028, 66.64082031250001], + [13.311816406250074, 66.70185546875001], + [13.45039062500004, 66.71552734374995], + [13.520214843750068, 66.74165039062504], + [13.62109375, 66.79482421875002], + [13.78798828125008, 66.782470703125], + [13.959472656250028, 66.79433593750002], + [13.9169921875, 66.81938476562507], + [13.704101562500057, 66.85166015624998], + [13.651562500000011, 66.90708007812498], + [13.726660156250034, 66.93803710937499], + [13.808398437500074, 66.960791015625], + [13.880175781250045, 66.96489257812505], + [14.022363281250051, 67.07309570312506], + [14.10878906250008, 67.11923828125003], + [14.205566406249972, 67.11123046875002], + [14.34033203125, 67.15893554687506], + [14.472656250000028, 67.14267578125003], + [14.600683593750006, 67.17387695312499], + [14.775585937500011, 67.194482421875], + [15.41572265625004, 67.20244140625002], + [15.434765625000011, 67.24667968749998], + [15.300097656250045, 67.25693359375003], + [14.824414062500011, 67.26831054687503], + [14.581542968750028, 67.26743164062503], + [14.479296875000045, 67.25595703125], + [14.441699218750045, 67.27138671875005], + [14.448339843750063, 67.29785156250003], + [14.53662109375, 67.33974609375002], + [14.578515625000023, 67.38603515625005], + [14.754980468750006, 67.49902343749997], + [14.961914062500057, 67.57426757812502], + [15.120507812500051, 67.555029296875], + [15.289160156250034, 67.48315429687503], + [15.409375, 67.47416992187505], + [15.465332031250028, 67.45092773437503], + [15.55292968750004, 67.35175781249998], + [15.59443359375004, 67.34853515625005], + [15.575683593750057, 67.44384765625], + [15.691503906250006, 67.52138671875], + [15.661328124999983, 67.542822265625], + [15.487304687499972, 67.514794921875], + [15.35400390625, 67.54394531249997], + [15.24873046875004, 67.6021484375], + [15.218652343750051, 67.65537109375003], + [15.284082031250051, 67.70795898437498], + [15.345800781250006, 67.73442382812505], + [15.303906250000011, 67.76528320312502], + [15.040820312500045, 67.68256835937495], + [14.854687500000068, 67.66333007812506], + [14.781347656250034, 67.67490234375], + [14.821093750000045, 67.749853515625], + [14.798925781250063, 67.80932617187503], + [15.0484375, 67.95576171875001], + [15.13427734375, 67.97270507812502], + [15.274414062500028, 67.9609375], + [15.400878906250057, 67.91962890625004], + [15.506640625000017, 67.92622070312495], + [15.621386718750017, 67.94829101562502], + [15.605761718750045, 67.987890625], + [15.356933593750057, 68.00361328125001], + [15.29287109375008, 68.03647460937503], + [15.316015624999977, 68.06875], + [15.486816406250057, 68.10283203125005], + [15.656640625000023, 68.16435546875007], + [15.851269531250068, 68.18217773437505], + [16.007910156250006, 68.22871093750004], + [16.0380859375, 68.21816406250002], + [16.064550781249977, 68.19990234375001], + [16.120800781250068, 68.02734375000003], + [16.2607421875, 67.88657226562506], + [16.312304687500017, 67.88144531249998], + [16.258593750000074, 68.00122070312506], + [16.308691406249977, 68.03564453125006], + [16.372167968750034, 68.06181640625005], + [16.39199218750008, 68.09160156249999], + [16.319238281249994, 68.10175781250001], + [16.259765625000057, 68.14453125000003], + [16.174804687500057, 68.28125], + [16.20380859375001, 68.31674804687503], + [16.38789062500004, 68.38955078125002], + [16.61884765625001, 68.40629882812507], + [16.864941406250068, 68.35527343750005], + [16.95136718750001, 68.35468750000004], + [17.094042968750017, 68.36840820312497], + [17.33613281250004, 68.41035156250001], + [17.478515625, 68.42631835937505], + [17.552832031250063, 68.42626953125006], + [17.57119140625005, 68.44746093750001], + [17.50234375000008, 68.46108398437502], + [17.480175781249983, 68.47431640624998], + [17.426171875, 68.48193359375003], + [17.202343750000068, 68.45927734375002], + [16.584863281250023, 68.46645507812497], + [16.52529296875005, 68.49067382812501], + [16.51435546875004, 68.53256835937503], + [16.579882812500074, 68.59267578125002], + [16.65185546875, 68.62578125000002], + [16.88466796875008, 68.68540039062498], + [17.131152343750045, 68.69345703125003], + [17.39082031250001, 68.79936523437502], + [17.490039062500045, 68.87875976562503], + [17.54628906250005, 69.001123046875], + [17.704589843750057, 69.10004882812501], + [18.101464843749994, 69.15629882812499], + [18.117480468750074, 69.18120117187502], + [18.07539062500001, 69.23261718750001], + [18.078710937499977, 69.32524414062505], + [18.1875, 69.43310546875], + [18.259765625, 69.47060546875], + [18.293164062500068, 69.47509765625003], + [18.37871093749999, 69.43984375000002], + [18.48261718750004, 69.36484375000003], + [18.6455078125, 69.32187], + [18.858984375000063, 69.31445312499997], + [18.915917968750023, 69.33559570312502], + [18.75, 69.37841796875006], + [18.62441406250005, 69.43437], + [18.614453125000068, 69.49057617187498], + [18.67402343750004, 69.520361328125], + [18.766601562500057, 69.51704101562495], + [18.88281250000003, 69.52333984375], + [18.99111328125005, 69.56113281250006], + [19.006835937500057, 69.58769531250005], + [19.011328125, 69.62373046875001], + [19.038378906250017, 69.66040039062503], + [19.197265625000057, 69.74785156249999], + [19.68701171875, 69.80473632812505], + [19.722460937500017, 69.78164062500002], + [19.69599609375004, 69.61293945312505], + [19.639746093750034, 69.50380859375002], + [19.64150390625005, 69.42402343750001], + [19.73681640625, 69.50380859375002], + [19.864648437500023, 69.72211914062498], + [19.960546875000034, 69.824609375], + [20.068945312500006, 69.883447265625], + [20.14638671875005, 69.89672851562503], + [20.22304687500005, 69.92719726562501], + [20.324218750000057, 69.94531249999997], + [20.35517578125004, 69.92192382812502], + [20.38720703125, 69.86762695312495], + [20.33271484375001, 69.67695312500001], + [20.338183593750045, 69.61665039062498], + [20.277148437500045, 69.53583984374995], + [20.04375, 69.35566406250004], + [20.054492187500074, 69.33266601562497], + [20.107226562500074, 69.34121093750002], + [20.197656250000023, 69.37094726562503], + [20.486718750000023, 69.54208984375], + [20.739453124999983, 69.52050781250003], + [20.742578125000023, 69.53452148437506], + [20.661523437500023, 69.58471679687497], + [20.5625, 69.6328125], + [20.532714843750057, 69.69233398437495], + [20.545996093750006, 69.85107421874997], + [20.622070312500057, 69.91391601562498], + [20.84033203125003, 69.90732421874998], + [20.971093750000023, 69.91601562499997], + [21.032128906250023, 69.887451171875], + [21.163085937500057, 69.88950195312498], + [21.253710937500045, 70.00322265625005], + [21.432910156250045, 70.01318359375006], + [21.59023437500005, 69.93803710937502], + [21.779589843750074, 69.887451171875], + [21.931738281250063, 69.81469726562503], + [21.974707031250034, 69.83457031249998], + [21.892578125, 70.004248046875], + [21.802734375, 70.066064453125], + [21.60781250000008, 70.09819335937505], + [21.400390625, 70.17446289062505], + [21.346289062499977, 70.208251953125], + [21.355761718750045, 70.23339843749997], + [21.53876953125004, 70.25766601562503], + [21.78027343750003, 70.22988281249997], + [21.995507812499994, 70.29335937500002], + [22.05439453125001, 70.27597656250003], + [22.219433593750068, 70.30917968750003], + [22.321972656250068, 70.264501953125], + [22.384765625, 70.27773437500002], + [22.421191406250045, 70.33759765624995], + [22.684570312500057, 70.374755859375], + [22.851660156249977, 70.34047851562502], + [22.941210937500017, 70.30498046874999], + [22.98281250000005, 70.23676757812504], + [23.046484375000063, 70.10185546874999], + [23.17695312500001, 70.029052734375], + [23.257910156250063, 69.993310546875], + [23.35390625000008, 69.98339843750003], + [23.400195312500017, 70.01977539062497], + [23.310253906250068, 70.06357421875], + [23.286035156250023, 70.10483398437498], + [23.3291015625, 70.20722656249995], + [23.37939453125003, 70.2474609375], + [23.661230468750063, 70.399755859375], + [23.89716796875001, 70.47875976562503], + [24.038476562500023, 70.48535156250006], + [24.28554687500008, 70.66240234375005], + [24.355566406250034, 70.69458007812503], + [24.420019531250034, 70.70200195312503], + [24.40351562500004, 70.74531249999998], + [24.268164062500006, 70.77270507812497], + [24.263476562500017, 70.82631835937497], + [24.441796875000023, 70.89155273437501], + [24.658007812500017, 71.00102539062505], + [24.764746093750006, 71.00844726562502], + [24.831640625000034, 70.97802734374997], + [25.04218750000004, 70.92861328125002], + [25.171191406250017, 70.87202148437495], + [25.264648437500057, 70.843505859375], + [25.32539062500001, 70.84941406250005], + [25.375585937500006, 70.891943359375], + [25.43593750000005, 70.911865234375], + [25.569824218750057, 70.90068359375002], + [25.649707031250074, 70.87333984375005], + [25.711914062500057, 70.8697265625], + [25.768164062500063, 70.85317382812502], + [25.78144531250001, 70.816796875], + [25.665625, 70.77714843749999], + [25.468261718750057, 70.67197265625006], + [25.273535156250006, 70.55239257812502], + [25.209277343750045, 70.489404296875], + [25.146386718750023, 70.32402343750005], + [24.994238281250034, 70.21821289062498], + [24.98271484374999, 70.14399414062495], + [25.043847656250023, 70.10903320312502], + [25.21181640625005, 70.13647460937503], + [25.418847656250023, 70.23549804687505], + [25.470507812500074, 70.34057617187503], + [25.988085937500017, 70.62539062499997], + [26.23085937500008, 70.78261718750002], + [26.506933593750006, 70.91279296875001], + [26.66132812500004, 70.93974609374999], + [26.733984375, 70.85356445312502], + [26.675488281250068, 70.740966796875], + [26.558203125000063, 70.66914062500001], + [26.644628906250006, 70.63623046874997], + [26.628125, 70.55087890624998], + [26.601171875000034, 70.50346679687502], + [26.583984375, 70.45380859375001], + [26.585058593750034, 70.41000976562498], + [26.666113281250034, 70.42167968750005], + [26.989355468750063, 70.51137695312502], + [27.071289062500057, 70.60844726562499], + [27.147265625000074, 70.68120117187507], + [27.183691406250034, 70.74404296875], + [27.309375, 70.80356445312503], + [27.546484375000063, 70.80400390625005], + [27.555664062500057, 70.827392578125], + [27.26904296875003, 70.91000976562506], + [27.23525390625008, 70.94721679687498], + [27.331640624999977, 70.99672851562505], + [27.59707031250005, 71.09130859375003], + [27.733496093750063, 71.08085937500005], + [27.815039062500063, 71.059375], + [28.141699218750006, 71.04301757812507], + [28.392285156250068, 70.97529296875004], + [28.38271484375008, 70.86943359375005], + [28.326855468750068, 70.8251953125], + [28.271875, 70.79794921875006], + [27.950976562500045, 70.71757812500002], + [27.898046875, 70.67792968750001] + ] + ], + [ + [ + [25.58632812500005, 71.14208984375], + [25.85351562500003, 71.10385742187503], + [25.94501953125001, 71.104638671875], + [26.07763671875003, 71.03315429687501], + [26.146875, 71.03950195312495], + [26.13378906250003, 70.99580078125004], + [25.999707031250068, 70.97509765625], + [25.791308593750074, 70.9625], + [25.760156250000023, 70.95380859375001], + [25.582031250000057, 70.960791015625], + [25.482031250000034, 71.01958007812499], + [25.31494140625, 71.03413085937504], + [25.315234375000074, 71.05297851562506], + [25.423437499999977, 71.09741210937503], + [25.58632812500005, 71.14208984375] + ] + ], + [ + [ + [-8.953564453124983, 70.83916015625002], + [-9.045800781249937, 70.83266601562502], + [-9.098876953125, 70.85488281250002], + [-8.964648437499932, 70.91591796875002], + [-8.520800781250017, 71.03066406250002], + [-8.343701171874983, 71.14013671875003], + [-8.001367187499966, 71.17768554687495], + [-7.978808593749989, 71.11689453125001], + [-8.002099609374937, 71.04125976562497], + [-8.30234375, 70.98115234374998], + [-8.635351562499977, 70.94042968750003], + [-8.953564453124983, 70.83916015625002] + ] + ], + [ + [ + [19.219335937500006, 74.39101562500002], + [19.098535156249994, 74.3521484375], + [18.917578125, 74.41064453125003], + [18.797460937500034, 74.48569335937503], + [18.86123046875008, 74.51416015624997], + [19.182910156250045, 74.51791992187503], + [19.261523437500074, 74.47895507812498], + [19.274707031250017, 74.45673828124998], + [19.219335937500006, 74.39101562500002] + ] + ], + [ + [ + [21.60810546875004, 78.59570312499997], + [21.74560546874997, 78.57202148437503], + [22.04316406250004, 78.57695312500007], + [22.207324218750074, 78.40766601562495], + [22.29951171875004, 78.22817382812497], + [22.449316406250006, 78.215234375], + [22.73457031250001, 78.23994140624998], + [22.988867187500063, 78.25195312500003], + [23.119238281250063, 78.23862304687498], + [23.351660156250063, 78.18627929687497], + [23.451953125000074, 78.14946289062502], + [23.36464843750005, 78.12050781249997], + [23.151953125000063, 78.08808593750004], + [23.11669921874997, 77.99150390624999], + [23.33056640625003, 77.95786132812498], + [23.68398437500008, 77.87543945312495], + [23.88300781250004, 77.86474609375], + [24.23828125000003, 77.89853515625006], + [24.571484375000068, 77.83442382812495], + [24.901855468750057, 77.756591796875], + [24.12978515625005, 77.65825195312505], + [24.06191406250008, 77.630615234375], + [23.95498046875005, 77.55771484374998], + [23.84121093750005, 77.49775390625004], + [23.736132812500045, 77.46235351562501], + [23.505175781250074, 77.40141601562502], + [23.380859375000057, 77.38032226562498], + [23.101367187500045, 77.38505859374999], + [22.996679687500034, 77.36079101562501], + [22.899511718750063, 77.31137695312498], + [22.80175781250003, 77.27578125000002], + [22.55371093750003, 77.26665039062502], + [22.426953125000068, 77.31591796875003], + [22.468847656250063, 77.33110351562502], + [22.486621093750045, 77.36010742187506], + [22.442480468750034, 77.42934570312502], + [22.67890625000004, 77.500146484375], + [22.732617187500068, 77.53935546875007], + [22.685351562500045, 77.55351562500002], + [22.62031250000001, 77.54960937500002], + [22.448242187500057, 77.57114257812506], + [22.397265625000045, 77.57011718750002], + [22.25458984375004, 77.52885742187505], + [22.056835937500068, 77.50117187500001], + [21.85615234375004, 77.494140625], + [21.049902343750006, 77.44096679687502], + [20.928125, 77.45966796874998], + [20.873144531250063, 77.56533203125002], + [21.20107421875008, 77.61948242187503], + [21.25146484375003, 77.71093750000003], + [21.33417968750001, 77.77177734374999], + [21.430859375000068, 77.81210937500003], + [21.6083984375, 77.91606445312499], + [21.653125, 77.92353515624998], + [21.21044921875003, 78.00576171874997], + [21.035449218750074, 78.0591796875], + [20.844921875000068, 78.16586914062498], + [20.786425781250074, 78.25214843749998], + [20.528320312500057, 78.32558593750002], + [20.560253906249983, 78.41938476562504], + [20.372753906250068, 78.41201171875002], + [20.22792968750005, 78.47783203125005], + [20.36269531250008, 78.51479492187502], + [21.046875, 78.55673828125003], + [21.454785156250068, 78.59755859375], + [21.60810546875004, 78.59570312499997] + ] + ], + [ + [ + [26.875976562500057, 78.64892578124997], + [26.729492187500057, 78.64648437500003], + [26.459570312500034, 78.72026367187505], + [26.407714843750057, 78.78432617187502], + [26.455761718750068, 78.81049804687495], + [26.58593750000003, 78.81147460937498], + [26.788769531250068, 78.723974609375], + [27.007617187500045, 78.69750976562503], + [26.875976562500057, 78.64892578124997] + ] + ], + [ + [ + [11.250292968750017, 78.610693359375], + [11.261718750000028, 78.54169921874998], + [11.42421875, 78.54858398437497], + [11.616308593750063, 78.47509765625], + [11.82568359375, 78.43608398437505], + [11.884863281250063, 78.40932617187502], + [11.929394531250068, 78.37490234375002], + [12.056152343750057, 78.30561523437504], + [12.116406250000068, 78.232568359375], + [11.96503906250004, 78.224853515625], + [11.75654296875004, 78.32900390625], + [11.586523437500034, 78.38823242187499], + [11.372460937500023, 78.43876953125007], + [11.19921875, 78.44125976562503], + [11.121289062500011, 78.46328125], + [10.840625, 78.64472656250001], + [10.788867187500074, 78.6865234375], + [10.628417968750057, 78.75385742187495], + [10.557617187500028, 78.8375], + [10.558203125000063, 78.90292968750003], + [10.77285156250008, 78.8875], + [10.960839843750023, 78.84638671874998], + [11.123925781250023, 78.75336914062504], + [11.152929687500063, 78.724462890625], + [11.078222656250034, 78.68603515625], + [11.15498046875004, 78.64057617187498], + [11.250292968750017, 78.610693359375] + ] + ], + [ + [ + [29.047070312500068, 78.91206054687504], + [29.345410156250097, 78.90576171875], + [29.645117187500063, 78.92163085937503], + [29.69667968750005, 78.90473632812495], + [29.31054687499997, 78.85209960937499], + [28.881152343750017, 78.88007812500001], + [28.494531250000023, 78.88720703125003], + [28.037890625000074, 78.8287109375], + [27.88906250000005, 78.8521484375], + [28.12099609375005, 78.908447265625], + [28.37402343749997, 78.92705078125007], + [28.41474609375001, 78.96142578124997], + [28.511132812500023, 78.96733398437502], + [28.845214843750057, 78.97084960937502], + [29.047070312500068, 78.91206054687504] + ] + ], + [ + [ + [16.786718750000034, 79.90673828125], + [16.838476562500006, 79.90478515625003], + [16.888964843750074, 79.9154296875], + [16.925585937500074, 79.94345703125], + [16.966406250000034, 79.95893554687498], + [17.219433593750068, 79.940771484375], + [17.578222656249977, 79.88466796875002], + [17.68476562500001, 79.85703125], + [17.834570312499977, 79.80004882812503], + [17.956152343750063, 79.70424804687505], + [17.85976562500005, 79.63500976562497], + [17.73261718750001, 79.56953124999995], + [17.6875, 79.53334960937505], + [17.733984375, 79.48134765625002], + [17.715039062500068, 79.43076171875], + [17.66875, 79.38593750000004], + [17.86103515625004, 79.43706054687505], + [18.272070312500034, 79.60058593749997], + [18.333300781250074, 79.61069335937498], + [18.39736328125008, 79.60517578125001], + [18.58144531250008, 79.57158203125002], + [18.7484375, 79.48818359375], + [18.785253906250034, 79.46059570312497], + [18.815234375000017, 79.42666015624997], + [18.83242187500005, 79.38476562499997], + [18.822949218749983, 79.33666992187503], + [18.807421875000017, 79.30317382812495], + [18.720019531250074, 79.28149414062497], + [18.677832031250006, 79.26171875000003], + [18.772265625000074, 79.26025390625], + [18.88007812500001, 79.23427734375005], + [18.97900390625, 79.17915039062501], + [19.089453125000034, 79.15703125000002], + [19.490234375000057, 79.17568359375], + [19.750878906250023, 79.14682617187498], + [19.893554687500057, 79.05620117187499], + [20.11376953124997, 79.07670898437502], + [20.11445312500004, 79.125], + [20.162695312500006, 79.14565429687502], + [20.458203125000068, 79.12924804687506], + [20.61103515625004, 79.10664062499998], + [20.767187500000063, 79.05913085937507], + [20.50068359375001, 78.98139648437495], + [20.7203125, 78.90668945312501], + [21.089648437500017, 78.85263671875], + [21.312207031250068, 78.79584960937498], + [21.35253906250003, 78.77202148437502], + [21.388769531250034, 78.74042968749998], + [21.243945312500017, 78.69941406249995], + [21.096289062500034, 78.67626953125006], + [20.72480468750004, 78.67231445312495], + [20.387011718750045, 78.64326171874998], + [19.76875, 78.62270507812497], + [19.67675781250003, 78.60957031249995], + [19.65498046875004, 78.59785156249998], + [19.61855468750008, 78.562158203125], + [19.380664062500017, 78.47978515624999], + [19.150488281250034, 78.37939453125006], + [19.055664062500057, 78.3189453125], + [18.98378906250008, 78.23422851562506], + [18.957617187499977, 78.18247070312498], + [19.00869140625008, 78.13227539062498], + [18.9951171875, 78.08149414062501], + [18.822070312500074, 78.04169921875001], + [18.712304687500023, 78.04008789062502], + [18.574609375000023, 78.04799804687505], + [18.439257812500074, 78.025048828125], + [18.4306640625, 77.99057617187498], + [18.43867187500004, 77.94204101562502], + [18.40400390625001, 77.79394531249997], + [18.361914062500034, 77.68227539062497], + [18.29873046875005, 77.57856445312498], + [18.227929687500023, 77.52260742187502], + [18.13740234375004, 77.50703124999995], + [17.84707031250005, 77.49677734375001], + [17.623339843750017, 77.39936523437495], + [17.442480468750034, 77.22524414062502], + [17.34863281250003, 77.15688476562505], + [17.15253906250004, 77.04892578124998], + [17.18789062500005, 77.01064453125], + [17.249023437500057, 76.96918945312498], + [17.141992187500023, 76.89492187499997], + [16.976660156250006, 76.81162109375003], + [16.979882812500023, 76.77939453125006], + [17.035546875, 76.72036132812502], + [17.06269531250004, 76.65898437500005], + [16.935156250000063, 76.60615234375001], + [16.700488281250045, 76.57929687499995], + [16.46191406250003, 76.60932617187495], + [16.345800781250006, 76.64477539062497], + [16.238085937500074, 76.701513671875], + [16.123828125000074, 76.73852539062497], + [16.004492187500006, 76.76074218749997], + [15.546777343750023, 76.88642578125001], + [15.124218749999983, 77.085107421875], + [14.738476562500011, 77.162353515625], + [14.486914062500006, 77.19902343750002], + [14.365820312500034, 77.23447265625003], + [14.24755859375, 77.28212890624997], + [14.145312500000045, 77.33559570312502], + [14.050390624999977, 77.40322265625005], + [14.004199218750074, 77.44521484375], + [13.995703125000034, 77.50820312500002], + [14.026074218750011, 77.545166015625], + [14.071289062499972, 77.56411132812505], + [14.37763671875004, 77.57963867187502], + [14.48779296875, 77.57084960937499], + [14.596289062500006, 77.53793945312503], + [14.69501953125004, 77.525048828125], + [14.920800781250023, 77.68881835937506], + [16.205957031250023, 77.78247070312503], + [16.619140625, 77.79868164062506], + [17.033300781250006, 77.79770507812503], + [16.96875, 77.841943359375], + [16.91406250000003, 77.89799804687505], + [16.852929687500023, 77.91157226562495], + [16.539648437500063, 77.88022460937506], + [16.060058593750057, 77.84711914062498], + [15.82636718750004, 77.84707031249997], + [15.585351562500051, 77.86914062500003], + [15.344824218750006, 77.85698242187502], + [15.096875, 77.80903320312504], + [14.846875, 77.77866210937506], + [14.603906250000051, 77.76645507812506], + [14.089941406250063, 77.77138671875], + [13.9625, 77.796240234375], + [13.791113281250006, 77.85380859374999], + [13.749609375, 77.88330078124997], + [13.714160156250045, 77.91943359375006], + [13.680566406250051, 78.02812], + [13.717675781250051, 78.05761718750006], + [13.770117187500006, 78.07460937500005], + [13.824023437500045, 78.08500976562502], + [13.936914062500051, 78.08554687500006], + [14.04775390625008, 78.06684570312498], + [14.307226562500006, 78.00507812500001], + [14.248144531250034, 78.07138671875], + [14.994726562500006, 78.151220703125], + [15.34140625, 78.220947265625], + [15.519433593750051, 78.23271484375002], + [15.698046875000017, 78.22758789062505], + [15.65869140625, 78.26469726562505], + [15.657128906250023, 78.29902343750001], + [15.783886718750011, 78.32705078125005], + [15.87539062500008, 78.33911132812503], + [16.15029296875005, 78.35288085937498], + [16.776953125, 78.350439453125], + [17.00292968750003, 78.36938476562497], + [17.171972656250006, 78.41713867187502], + [16.991796875000063, 78.40048828125], + [16.81123046875004, 78.39726562500005], + [16.72656250000003, 78.40717773437504], + [16.535351562500068, 78.448876953125], + [16.44863281250008, 78.50356445312502], + [16.696582031250045, 78.612890625], + [16.78261718750008, 78.66362304687505], + [16.53046875000004, 78.65629882812507], + [16.44628906250003, 78.638525390625], + [16.157519531250017, 78.53813476562507], + [15.94404296875004, 78.493017578125], + [15.680664062500028, 78.47133789062505], + [15.417382812500023, 78.47324218749998], + [15.359960937500063, 78.48754882812497], + [15.279394531249977, 78.55410156250002], + [15.254199218750017, 78.58906249999995], + [15.264941406250074, 78.60830078124997], + [15.348339843750011, 78.66313476562505], + [15.391601562500028, 78.72119140625006], + [15.384179687500023, 78.77119140625001], + [15.322753906250028, 78.78120117187501], + [15.225292968750068, 78.73232421875002], + [15.137304687500006, 78.66425781250001], + [15.01630859375004, 78.63012695312497], + [14.891796875000068, 78.63945312500002], + [14.838671874999989, 78.66557617187499], + [14.79238281250008, 78.70556640624997], + [14.74355468750008, 78.720947265625], + [14.689257812500017, 78.720947265625], + [14.577636718750028, 78.70498046875002], + [14.46718750000008, 78.67539062500003], + [14.505273437500023, 78.63051757812497], + [14.515429687500045, 78.58056640625], + [14.467773437500028, 78.54091796875], + [14.431835937500068, 78.49248046874999], + [14.545605468750068, 78.46196289062499], + [14.638281250000034, 78.41459960937502], + [14.49951171875, 78.39238281250005], + [14.363281250000057, 78.35991210937499], + [14.238281249999972, 78.30986328125002], + [14.110449218750063, 78.27089843749997], + [13.907617187500023, 78.26674804687502], + [13.654980468750068, 78.24516601562507], + [13.150195312499989, 78.2375], + [12.91279296875004, 78.30107421874999], + [12.869531250000023, 78.33125], + [12.822167968750051, 78.35146484375005], + [12.664648437500034, 78.384765625], + [12.434765625000011, 78.48295898437502], + [12.257910156250034, 78.59467773437504], + [12.13828125, 78.60551757812502], + [11.961718750000074, 78.64238281249999], + [11.865527343750017, 78.67421875], + [11.77382812500008, 78.71640625000006], + [11.746289062500068, 78.766259765625], + [11.755175781250017, 78.81166992187502], + [11.861035156250011, 78.83188476562503], + [11.61103515625004, 78.88295898437497], + [11.365429687500011, 78.95039062500004], + [11.456152343750034, 78.972998046875], + [11.547558593749983, 78.98295898437499], + [12.274902343750028, 78.90449218750001], + [12.323437500000068, 78.91425781249995], + [12.4033203125, 78.95322265624998], + [12.375, 78.96635742187499], + [12.253125, 78.97534179687506], + [12.08730468750008, 78.97509765625], + [12.04580078125008, 78.98315429687503], + [11.981835937499994, 79.02529296875002], + [11.925683593750023, 79.07724609375003], + [11.901953124999977, 79.11186523437507], + [11.892773437500068, 79.15234375000006], + [12.016113281250057, 79.21308593749998], + [12.083984375000028, 79.26752929687498], + [11.978320312499989, 79.29267578124995], + [11.679296875, 79.291162109375], + [11.579785156250068, 79.28349609375005], + [11.616406250000068, 79.20527343749998], + [11.52119140625004, 79.15126953125], + [11.338867187500028, 79.10913085937503], + [11.208105468750034, 79.12963867187503], + [11.107226562500074, 79.23295898437505], + [10.975390625000045, 79.30488281249995], + [10.925781250000057, 79.35019531250003], + [10.888085937500023, 79.4154296875], + [10.834375, 79.46284179687498], + [10.737597656250017, 79.52016601562502], + [10.725, 79.55551757812503], + [10.737011718750068, 79.58164062500003], + [10.810742187500068, 79.64091796875002], + [10.754589843750011, 79.69033203124997], + [10.686230468750011, 79.73359374999998], + [10.68212890625, 79.75825195312504], + [10.746386718750017, 79.788671875], + [10.804003906250045, 79.79877929687504], + [10.86591796875004, 79.79658203125001], + [11.049609375000074, 79.76030273437502], + [11.150390625, 79.71699218749998], + [11.185253906249983, 79.72045898437497], + [11.250585937500063, 79.78486328125004], + [11.343652343750023, 79.79941406249998], + [11.702343750000011, 79.82060546875005], + [12.101757812500011, 79.737548828125], + [12.205175781250034, 79.71909179687503], + [12.287792968750068, 79.713134765625], + [12.245214843750006, 79.75], + [12.219140625000023, 79.79790039062502], + [12.279980468749983, 79.81596679687507], + [12.602441406250051, 79.77324218750007], + [12.753515625, 79.77578124999997], + [13.107519531250006, 79.83173828124998], + [13.692871093749972, 79.860986328125], + [13.914160156250034, 79.81694335937499], + [13.92568359375008, 79.79340820312501], + [13.921093750000011, 79.76171875000003], + [13.907031249999989, 79.75219726562503], + [13.777539062500011, 79.71528320312498], + [13.03925781250004, 79.68515624999998], + [12.555371093750068, 79.56948242187502], + [13.215136718749989, 79.58808593750001], + [13.333789062500017, 79.57480468750006], + [13.383593750000045, 79.48076171874999], + [13.431640625000057, 79.47089843750001], + [13.601269531250068, 79.45722656249998], + [13.716210937500023, 79.42915039062495], + [13.833691406250068, 79.37568359374998], + [13.957226562500011, 79.33964843750002], + [14.029589843750017, 79.34414062500005], + [14.05585937500004, 79.38310546874999], + [14.026367187500057, 79.42929687499998], + [14.01113281250008, 79.48193359375006], + [14.019824218750074, 79.53867187499998], + [14.039843750000045, 79.58564453124995], + [14.17841796875004, 79.61870117187502], + [14.379785156250023, 79.72597656250002], + [14.59365234375008, 79.79873046875002], + [14.831835937500017, 79.76640625000002], + [15.05234375, 79.67534179687502], + [15.251269531250045, 79.54545898437502], + [15.443945312500034, 79.40678710937502], + [15.660156250000028, 79.23486328124997], + [15.764062500000051, 79.17426757812498], + [15.858496093750006, 79.159912109375], + [16.294531250000034, 78.98105468750006], + [16.34375, 78.97612304687502], + [16.253515625000034, 79.11210937500002], + [16.027539062499983, 79.34238281250003], + [15.875097656250034, 79.51923828125001], + [15.840722656250051, 79.58686523437501], + [15.816113281250011, 79.68183593750001], + [15.82578125, 79.70903320312505], + [15.845117187500051, 79.73359374999998], + [15.95576171875004, 79.83510742187497], + [16.100195312500063, 79.88442382812497], + [16.056640625000057, 79.95395507812503], + [16.093847656250006, 80.00732421874997], + [16.245703125000034, 80.04946289062502], + [16.38662109375005, 80.05258789062503], + [16.524023437500063, 80.0205078125], + [16.786718750000034, 79.90673828125] + ] + ], + [ + [ + [32.52597656250006, 80.119140625], + [31.57763671875003, 80.08144531249997], + [31.48193359374997, 80.10791015625003], + [33.01914062500006, 80.21796874999998], + [33.09863281249997, 80.22871093749995], + [33.38398437500004, 80.24233398437497], + [33.629296875, 80.21743164062497], + [33.55664062499997, 80.19814453125002], + [32.52597656250006, 80.119140625] + ] + ], + [ + [ + [18.741601562500023, 80.30092773437502], + [18.525, 80.24560546875003], + [18.162207031250034, 80.28818359374998], + [18.20556640624997, 80.331787109375], + [18.29169921875004, 80.35834960937498], + [18.519335937500045, 80.34833984374998], + [18.741601562500023, 80.30092773437502] + ] + ], + [ + [ + [20.897851562500023, 80.24995117187501], + [20.99843750000008, 80.23881835937505], + [21.549218750000023, 80.242919921875], + [21.654882812500063, 80.21845703124998], + [21.69667968750005, 80.1591796875], + [21.780664062500023, 80.13876953125], + [21.897753906250074, 80.13247070312497], + [22.190234375000074, 80.059716796875], + [22.289746093749983, 80.04921874999997], + [22.37636718750005, 80.08964843750005], + [22.442675781250074, 80.19028320312503], + [22.44619140625008, 80.308349609375], + [22.41787109375008, 80.36552734375002], + [22.450781250000034, 80.40224609375005], + [22.54882812500003, 80.41645507812501], + [22.672070312499983, 80.41264648437505], + [22.792578125000034, 80.4330078125], + [22.896875, 80.46899414062497], + [23.00800781250004, 80.473974609375], + [23.25136718750005, 80.44667968750005], + [23.315429687500057, 80.42524414062501], + [23.250097656250063, 80.38085937500003], + [23.22460937500003, 80.31762695312503], + [23.114550781250074, 80.18696289062498], + [23.353320312500045, 80.17885742187502], + [23.68798828125003, 80.20654296874997], + [23.77294921875, 80.24438476562503], + [23.952929687500074, 80.30458984375005], + [24.14296875000008, 80.295166015625], + [24.234082031250068, 80.303125], + [24.28017578125005, 80.32929687500001], + [24.29755859375004, 80.36040039062505], + [24.402636718750045, 80.35517578124995], + [24.546679687500074, 80.295166015625], + [24.61367187500005, 80.28583984374995], + [24.73632812499997, 80.30131835937499], + [24.785937500000045, 80.30068359374997], + [24.907031250000045, 80.27666015625005], + [25.471289062500063, 80.23310546874995], + [25.666894531250023, 80.20976562499999], + [25.751171875000068, 80.18803710937502], + [25.83632812500008, 80.17514648437506], + [26.43671875000001, 80.17548828125004], + [26.86083984375, 80.16000976562498], + [27.017187500000063, 80.12548828124997], + [27.148339843750023, 80.05922851562497], + [27.19863281250008, 79.90659179687506], + [27.079882812500045, 79.865380859375], + [26.22109375000005, 79.67744140625001], + [26.00585937499997, 79.61704101562503], + [25.902050781250068, 79.56137695312498], + [25.726367187500074, 79.43974609375007], + [25.641210937500034, 79.40302734374995], + [25.23906249999999, 79.34506835937506], + [25.145117187500034, 79.33886718750003], + [24.842871093750006, 79.36723632812505], + [24.750585937500034, 79.36459960937503], + [24.383398437500034, 79.301611328125], + [24.2568359375, 79.26347656250005], + [24.132910156250063, 79.21547851562502], + [23.94775390625, 79.19428710937498], + [23.758789062500057, 79.20561523437507], + [22.903710937500023, 79.23066406250001], + [22.789160156250034, 79.26435546874995], + [22.695703125000023, 79.32905273437498], + [22.865527343750045, 79.41186523437497], + [21.911425781250017, 79.38105468750001], + [20.861132812500017, 79.39785156249997], + [20.80556640625005, 79.40952148437503], + [20.760839843750006, 79.44150390624998], + [20.399511718750006, 79.46337890625], + [20.128222656250074, 79.489599609375], + [19.900195312500074, 79.53378906250003], + [19.674609375000045, 79.591162109375], + [19.746679687500063, 79.61796875000005], + [19.821093750000045, 79.63364257812503], + [20.014843750000068, 79.64023437500006], + [20.187109375, 79.63227539062504], + [20.493457031250074, 79.63276367187495], + [20.56484375000005, 79.69052734375], + [20.686816406250017, 79.70717773437502], + [20.784082031250023, 79.74858398437502], + [20.460742187500045, 79.774658203125], + [20.12343750000008, 79.778564453125], + [19.89863281250004, 79.74418945312502], + [19.63808593750005, 79.72861328125003], + [19.4, 79.72656249999997], + [18.94208984375001, 79.736328125], + [18.725, 79.7607421875], + [18.428027343750017, 79.82451171875002], + [18.32470703125, 79.859716796875], + [18.284765625000034, 79.88735351562505], + [18.25537109375, 79.92919921875003], + [18.594628906250023, 79.96669921875005], + [18.72646484375005, 79.99624023437502], + [18.855957031250057, 80.03662109375], + [18.343847656250006, 80.05957031250006], + [18.129492187500034, 80.09340820312502], + [17.91689453125005, 80.14311523437502], + [18.089453125000034, 80.17114257812503], + [18.77929687499997, 80.19350585937497], + [18.961914062500057, 80.17480468749997], + [19.14296875000008, 80.138671875], + [19.343359375000063, 80.11640624999998], + [19.537109375, 80.16323242187502], + [19.354687500000068, 80.185400390625], + [19.19140625, 80.26323242187505], + [19.15693359375001, 80.30185546875003], + [19.178320312500006, 80.33154296875003], + [19.263769531250006, 80.33598632812505], + [19.327441406250017, 80.323095703125], + [19.568457031250006, 80.25], + [19.751074218749977, 80.227197265625], + [19.80224609375003, 80.29472656249999], + [19.810351562500074, 80.32680664062505], + [19.777148437500045, 80.35336914062503], + [19.69130859375008, 80.40234374999997], + [19.614355468750034, 80.462548828125], + [19.733300781249994, 80.47783203124999], + [19.851171875000034, 80.47119140624997], + [20.104296875000017, 80.42998046875002], + [20.359375, 80.40092773437505], + [20.475878906250045, 80.37163085937502], + [20.693457031250034, 80.298681640625], + [20.897851562500023, 80.24995117187501] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Nepal", + "iso_a2": "NP", + "iso_a3": "NPL", + "iso_n3": "524", + "continent": "Asia" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [88.10976562500002, 27.87060546875], + [88.15029296875002, 27.843310546874996], + [88.154296875, 27.798681640625], + [88.14697265625, 27.74921875], + [88.10556640625003, 27.642431640625], + [88.06787109375, 27.5673828125], + [88.02412109375001, 27.408886718749997], + [87.984375, 27.133935546874994], + [87.9931640625, 27.086083984374994], + [88.11103515625001, 26.928466796875], + [88.1572265625, 26.807324218749997], + [88.16152343750002, 26.724804687499997], + [88.11152343750001, 26.58642578125], + [88.05488281250001, 26.430029296875], + [88.02695312500003, 26.39501953125], + [87.9951171875, 26.382373046874996], + [87.84921875000003, 26.436914062499994], + [87.74882812499999, 26.429296875], + [87.63339843750003, 26.399121093749997], + [87.51308593750002, 26.404980468749997], + [87.41357421875, 26.42294921875], + [87.28740234374999, 26.360302734374997], + [87.16679687499999, 26.394238281249997], + [87.08955078125001, 26.433203125], + [87.03789062499999, 26.5416015625], + [87.01640624999999, 26.555419921875], + [86.7625, 26.441943359374996], + [86.70136718750001, 26.43505859375], + [86.54365234375001, 26.495996093749994], + [86.41445312500002, 26.556298828124994], + [86.36611328125002, 26.574414062499997], + [86.24160156250002, 26.597998046875], + [86.12939453125, 26.61171875], + [86.00732421875, 26.649365234374997], + [85.85566406250001, 26.6001953125], + [85.79453125000003, 26.604150390624994], + [85.7373046875, 26.63974609375], + [85.70742187500002, 26.712646484375], + [85.69990234375001, 26.781640625], + [85.6484375, 26.829003906249994], + [85.56845703125003, 26.83984375], + [85.45644531250002, 26.797216796875], + [85.29296875, 26.741015625], + [85.240234375, 26.750341796875], + [85.19179687500002, 26.766552734374997], + [85.17412109374999, 26.781542968749996], + [85.15156250000001, 26.846630859374997], + [85.12539062500002, 26.860986328124994], + [85.08730468750002, 26.862939453124994], + [85.02011718750003, 26.878515625], + [84.93720703125001, 26.926904296874994], + [84.68535156249999, 27.041015625], + [84.65380859375, 27.091699218749994], + [84.65478515625, 27.203662109374996], + [84.64072265625003, 27.249853515625], + [84.61015624999999, 27.298681640625], + [84.48085937500002, 27.348193359374996], + [84.22978515624999, 27.42783203125], + [84.09101562500001, 27.491357421874994], + [84.02480468750002, 27.461669921875], + [83.89716796875001, 27.435107421874996], + [83.82880859375001, 27.377832031249994], + [83.74697265625002, 27.395947265624997], + [83.55166015625002, 27.456347656249996], + [83.44716796875002, 27.46533203125], + [83.38398437500001, 27.44482421875], + [83.36943359374999, 27.41025390625], + [83.28974609375001, 27.370996093749994], + [83.2138671875, 27.402294921874997], + [83.06406250000003, 27.44453125], + [82.93281250000001, 27.467675781249994], + [82.7333984375, 27.518994140624997], + [82.71083984375002, 27.5966796875], + [82.67734375000003, 27.6734375], + [82.6298828125, 27.687060546874996], + [82.45136718750001, 27.671826171874997], + [82.28769531250003, 27.756542968749997], + [82.11191406250003, 27.864941406249997], + [82.03701171875002, 27.900585937499997], + [81.98769531250002, 27.913769531249997], + [81.94521484375002, 27.899267578125], + [81.896875, 27.874462890624997], + [81.85263671875003, 27.867089843749994], + [81.75722656250002, 27.913818359375], + [81.63554687499999, 27.98046875], + [81.48603515625001, 28.062207031249997], + [81.31083984374999, 28.1763671875], + [81.23896484375001, 28.240869140624994], + [81.20625, 28.289404296875], + [81.1689453125, 28.335009765624996], + [81.0166015625, 28.409570312499994], + [80.89609375000003, 28.468554687499996], + [80.75078124999999, 28.539697265624994], + [80.72617187500003, 28.55390625], + [80.67128906250002, 28.596240234374996], + [80.58701171875003, 28.649609375], + [80.51787109374999, 28.665185546874994], + [80.49580078125001, 28.635791015624996], + [80.47910156250003, 28.604882812499994], + [80.41855468750003, 28.612011718749997], + [80.32480468750003, 28.66640625], + [80.2265625, 28.723339843749997], + [80.14960937500001, 28.776074218749997], + [80.07070312500002, 28.83017578125], + [80.05166015625002, 28.8703125], + [80.08457031250003, 28.994189453124996], + [80.13046875000003, 29.100390625], + [80.16953125000003, 29.124316406249996], + [80.23300781250003, 29.194628906249996], + [80.25595703125003, 29.318017578124994], + [80.2548828125, 29.42333984375], + [80.31689453125, 29.572070312499996], + [80.40185546875, 29.730273437499996], + [80.54902343750001, 29.899804687499994], + [80.61289062500003, 29.955859375], + [80.68408203125, 29.994335937499997], + [80.81992187500003, 30.119335937499997], + [80.84814453125, 30.13974609375], + [80.90761718750002, 30.171923828124996], + [80.96611328124999, 30.180029296875], + [81.01025390625, 30.164501953124997], + [81.05556640625002, 30.098974609375], + [81.1103515625, 30.036816406249997], + [81.17714843750002, 30.039892578125], + [81.25507812500001, 30.093310546874996], + [81.41718750000001, 30.337597656249997], + [81.64189453124999, 30.3875], + [81.85488281250002, 30.36240234375], + [82.04335937500002, 30.3267578125], + [82.09892578124999, 30.245068359374997], + [82.13535156250003, 30.158984375], + [82.15898437499999, 30.115185546874997], + [82.220703125, 30.063867187499994], + [82.48652343750001, 29.94150390625], + [82.64082031250001, 29.831201171874994], + [82.85429687499999, 29.683398437499996], + [83.01396484374999, 29.618066406249994], + [83.15546875000001, 29.612646484375], + [83.23515624999999, 29.554589843749994], + [83.35517578125001, 29.439160156249997], + [83.45664062500003, 29.306347656249997], + [83.58349609375, 29.18359375], + [83.67109375000001, 29.18759765625], + [83.79042968750002, 29.227441406249994], + [83.93593750000002, 29.279492187499997], + [84.02197265625, 29.253857421874997], + [84.10136718749999, 29.219970703125], + [84.12783203125002, 29.156298828124996], + [84.17558593749999, 29.036376953125], + [84.22871093750001, 28.911767578124994], + [84.31210937500003, 28.868115234374997], + [84.41074218750003, 28.80390625], + [84.46542968750003, 28.7529296875], + [84.65058593750001, 28.659570312499994], + [84.6767578125, 28.621533203124997], + [84.71425781250002, 28.595556640625], + [84.759375, 28.579248046874994], + [84.796875, 28.560205078124994], + [84.85507812500003, 28.553613281249994], + [85.06914062499999, 28.609667968749996], + [85.12636718750002, 28.60263671875], + [85.15908203125002, 28.592236328124997], + [85.16015625, 28.571875], + [85.12148437500002, 28.484277343749994], + [85.08857421875001, 28.372265625], + [85.12246093750002, 28.315966796874996], + [85.21210937500001, 28.292626953124994], + [85.41064453125, 28.276025390624994], + [85.67832031250003, 28.27744140625], + [85.75947265625001, 28.220654296874997], + [85.84023437500002, 28.1353515625], + [85.92167968749999, 27.989697265624997], + [85.9541015625, 27.92822265625], + [85.99453125000002, 27.910400390625], + [86.06416015625001, 27.934716796874994], + [86.07548828124999, 27.994580078124997], + [86.07871093750003, 28.08359375], + [86.13701171874999, 28.11435546875], + [86.17421875000002, 28.091699218749994], + [86.21796875000001, 28.0220703125], + [86.32861328125, 27.959521484374996], + [86.40869140625, 27.928662109374997], + [86.48496093750003, 27.93955078125], + [86.51689453124999, 27.963525390624994], + [86.55449218749999, 28.085205078125], + [86.61445312500001, 28.10302734375], + [86.69052734375003, 28.094921875], + [86.71962890625002, 28.070654296875], + [86.75039062500002, 28.0220703125], + [86.84238281250003, 27.999169921874994], + [86.93378906250001, 27.968457031249997], + [87.02011718750003, 27.928662109374997], + [87.14140624999999, 27.838330078124997], + [87.29072265625001, 27.821923828124994], + [87.46416015624999, 27.823828125], + [87.55527343750003, 27.821826171874996], + [87.62255859375, 27.815185546875], + [87.68271484375003, 27.82138671875], + [87.86074218750002, 27.886083984375], + [87.93339843749999, 27.890820312499997], + [88.02333984375002, 27.8833984375], + [88.10976562500002, 27.87060546875] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "Nauru", + "iso_a2": "NR", + "iso_a3": "NRU", + "iso_n3": "520", + "continent": "Oceania" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [166.95839843750002, -0.5166015625], + [166.93896484375, -0.55078125], + [166.91640625000002, -0.546484375], + [166.90703125000005, -0.523730468750003], + [166.91357421875, -0.499121093750006], + [166.93896484375, -0.489355468750006], + [166.95566406250003, -0.496972656250009], + [166.95839843750002, -0.5166015625] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "New Zealand", + "iso_a2": "NZ", + "iso_a3": "NZL", + "iso_n3": "554", + "continent": "Oceania" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [169.17822265624997, -52.497265625], + [169.23349609375006, -52.548242187499994], + [169.12753906250006, -52.570312499999964], + [169.07597656250002, -52.55185546875002], + [169.03984375000002, -52.528515624999976], + [169.02177734375002, -52.49541015624998], + [169.07910156249997, -52.49882812500005], + [169.1286132812501, -52.485156250000024], + [169.17822265624997, -52.497265625] + ] + ], + [ + [ + [166.22109375, -50.76152343749997], + [166.2428710937501, -50.84570312499998], + [166.187890625, -50.846093749999966], + [166.07324218749997, -50.82265624999999], + [166.03769531250012, -50.78671875000004], + [166.01328125000012, -50.77792968750003], + [165.9713867187501, -50.819531249999976], + [165.90410156250007, -50.82148437500002], + [165.88916015624997, -50.80771484374996], + [165.91562500000012, -50.76308593750002], + [166.07382812500012, -50.67900390625003], + [166.10312500000012, -50.57304687500003], + [166.10136718750002, -50.538964843750016], + [166.22509765625003, -50.53095703124998], + [166.254296875, -50.543945312499964], + [166.26748046875005, -50.558593750000014], + [166.259375, -50.57724609375], + [166.20957031250012, -50.612011718749976], + [166.20761718750006, -50.65244140625004], + [166.22041015625004, -50.69433593749996], + [166.17949218750002, -50.71464843750001], + [166.20078125000012, -50.75087890625002], + [166.22109375, -50.76152343749997] + ] + ], + [ + [ + [168.14492187500005, -46.862207031249966], + [168.14531250000007, -46.90214843750002], + [168.04101562500003, -46.88779296875002], + [168.04316406250004, -46.9326171875], + [168.12548828125003, -46.956152343750006], + [168.1559570312501, -46.98828124999997], + [168.2414062500001, -46.97900390624996], + [168.26064453125, -47.02705078124997], + [168.2409179687501, -47.070019531250026], + [168.18388671875002, -47.10156249999996], + [168.0150390625, -47.11748046875], + [167.90556640625007, -47.179882812500026], + [167.8107421875001, -47.17041015624996], + [167.78496093750002, -47.176074218750045], + [167.67636718750006, -47.24296874999999], + [167.55488281250004, -47.26367187500004], + [167.52197265624997, -47.258691406249994], + [167.53876953125004, -47.19902343750002], + [167.62900390625012, -47.14228515625], + [167.63095703125006, -47.087792968749994], + [167.65410156250007, -47.04423828125], + [167.7409179687501, -47.01357421874998], + [167.74199218750002, -46.95683593750006], + [167.80078125000003, -46.90654296875002], + [167.76523437500006, -46.797656250000045], + [167.78398437500007, -46.699804687500006], + [167.9557617187501, -46.69443359374998], + [168.14492187500005, -46.862207031249966] + ] + ], + [ + [ + [166.74628906250004, -45.65585937500005], + [166.74101562500002, -45.70498046875001], + [166.72919921875004, -45.72968749999998], + [166.6945312500001, -45.72988281250002], + [166.64248046875005, -45.724414062499974], + [166.59169921875, -45.70175781249998], + [166.55917968750012, -45.708203125000054], + [166.53203125000002, -45.69980468750002], + [166.56708984375004, -45.64443359375002], + [166.68564453125012, -45.61503906249999], + [166.73144531249997, -45.638671875], + [166.74628906250004, -45.65585937500005] + ] + ], + [ + [ + [166.97949218749997, -45.17968750000003], + [167.02265625000004, -45.299804687499986], + [166.93115234374997, -45.276855468750014], + [166.89267578125012, -45.24052734374999], + [166.96269531250007, -45.18037109374998], + [166.97949218749997, -45.17968750000003] + ] + ], + [ + [ + [-176.17646484374998, -44.32167968750002], + [-176.22080078124998, -44.33056640624996], + [-176.21459960937503, -44.27353515624998], + [-176.229296875, -44.23671875000002], + [-176.1546875, -44.22451171875002], + [-176.12255859375003, -44.26845703125001], + [-176.17646484374998, -44.32167968750002] + ] + ], + [ + [ + [-176.17763671874997, -43.74033203124998], + [-176.213525390625, -43.766308593750026], + [-176.27485351562504, -43.76484375], + [-176.38173828124997, -43.86679687499998], + [-176.375244140625, -43.790625], + [-176.40737304687497, -43.7609375], + [-176.49912109375, -43.76806640625003], + [-176.516552734375, -43.78476562499996], + [-176.45493164062498, -43.80488281249998], + [-176.44125976562503, -43.816113281250054], + [-176.50014648437502, -43.860156250000045], + [-176.43911132812502, -43.954687500000034], + [-176.38544921875, -43.95146484375], + [-176.33359375000003, -44.02529296875004], + [-176.33383789062498, -44.048437500000034], + [-176.45278320312497, -44.07685546874997], + [-176.51552734374997, -44.11660156249998], + [-176.571533203125, -44.11494140625], + [-176.59799804687498, -44.10722656250003], + [-176.62934570312495, -44.036132812500014], + [-176.63154296874998, -44.00625], + [-176.562744140625, -43.9541015625], + [-176.52377929687495, -43.90097656250002], + [-176.55512695312504, -43.85195312499998], + [-176.63457031249996, -43.820214843749994], + [-176.80795898437503, -43.83457031249999], + [-176.84765625000003, -43.82392578125004], + [-176.76108398437498, -43.757910156250006], + [-176.66723632812497, -43.76513671874997], + [-176.56611328124995, -43.717578125000045], + [-176.17763671874997, -43.74033203124998] + ] + ], + [ + [ + [173.91464843750018, -40.86367187500004], + [173.78085937500012, -40.921777343749966], + [173.78623046875012, -40.881445312500006], + [173.81240234374994, -40.79365234374998], + [173.87333984375013, -40.74931640625], + [173.90332031250003, -40.74628906250001], + [173.964453125, -40.71298828124998], + [173.95800781249997, -40.78681640625001], + [173.91464843750018, -40.86367187500004] + ] + ], + [ + [ + [173.11533203125006, -41.27929687499997], + [173.23085937499994, -41.284179687499986], + [173.33779296875005, -41.210937499999986], + [173.44726562499997, -41.15136718750003], + [173.5625, -41.102050781250014], + [173.73789062500006, -40.98896484374998], + [173.78378906250018, -40.97236328124997], + [173.89755859375006, -40.95078125000002], + [173.94716796875005, -40.92412109375], + [174.00244140624997, -40.917773437500045], + [173.95283203125015, -40.98486328125003], + [173.8898437500001, -41.007226562499966], + [173.87988281250003, -41.03144531250001], + [173.91513671875012, -41.07011718749999], + [173.86035156249997, -41.12441406249995], + [173.86240234375, -41.19208984374997], + [173.79785156250003, -41.271972656249986], + [173.89707031250018, -41.239355468750006], + [173.93339843750007, -41.187304687499974], + [173.91464843750018, -41.158007812500045], + [173.95761718750006, -41.09990234375002], + [174.02402343750006, -41.072265624999986], + [173.99755859375003, -41.028125], + [173.99941406250005, -40.99326171874996], + [174.08056640625003, -41.00615234375002], + [174.12119140625018, -41.00468749999999], + [174.1532226562501, -40.990917968750026], + [174.21181640625, -40.98544921874998], + [174.2238281250001, -41.0244140625], + [174.30253906249996, -41.019531249999986], + [174.27392578125003, -41.06875], + [174.21367187500002, -41.125585937500006], + [174.19951171875013, -41.16015625000004], + [174.103125, -41.21738281249998], + [174.03857421875003, -41.24189453125], + [174.13808593750005, -41.24824218750004], + [174.28359375000005, -41.17158203124997], + [174.37011718750009, -41.1037109375], + [174.3675781250001, -41.18837890625001], + [174.297265625, -41.26425781250002], + [174.23710937499996, -41.31220703125001], + [174.16953125000006, -41.32705078125002], + [174.10205078124997, -41.36591796875004], + [174.06933593750009, -41.42949218750002], + [174.0729492187501, -41.4716796875], + [174.09238281250018, -41.50517578124999], + [174.16113281249997, -41.561816406249974], + [174.08369140625015, -41.67080078124998], + [174.16992187499997, -41.65722656249996], + [174.21708984374996, -41.67773437499997], + [174.2831054687501, -41.740625], + [174.24335937499998, -41.813085937500006], + [174.21542968750018, -41.85019531250002], + [174.047265625, -42.00302734374998], + [173.97392578125002, -42.08056640624997], + [173.88798828125007, -42.13017578125003], + [173.88916015624997, -42.211621093750026], + [173.83984375000003, -42.27089843750002], + [173.5892578125, -42.47392578124999], + [173.54511718750004, -42.51796875], + [173.3475585937501, -42.84082031249996], + [173.22119140624997, -42.976562499999986], + [173.14882812500005, -43.022753906249974], + [173.07236328125012, -43.06025390624998], + [172.8888671875001, -43.12421875000004], + [172.80800781250005, -43.197753906250014], + [172.71855468750002, -43.258789062500014], + [172.62402343749997, -43.27246093749996], + [172.62695312500003, -43.29951171874997], + [172.6875, -43.314648437500026], + [172.73476562500005, -43.35478515625003], + [172.69970703125003, -43.39970703125003], + [172.63222656250005, -43.42792968750001], + [172.5622070312501, -43.43603515624997], + [172.52666015625002, -43.464746093749966], + [172.69345703125006, -43.444335937499986], + [172.74042968750004, -43.46787109374998], + [172.7492187500001, -43.51728515625001], + [172.76660156249997, -43.56191406249995], + [172.80703125000005, -43.620996093749994], + [172.94726562500003, -43.65859375000002], + [173.07324218750003, -43.676171874999966], + [173.098046875, -43.70351562500002], + [173.1168945312501, -43.79785156249997], + [173.09394531250004, -43.84414062499998], + [173.065625, -43.87460937499998], + [173.02333984375005, -43.88544921874997], + [172.9206054687501, -43.89140625000002], + [172.81767578125007, -43.87011718750004], + [172.74931640625002, -43.81308593749996], + [172.55468749999997, -43.831347656250045], + [172.50273437500002, -43.84365234374998], + [172.4759765625, -43.83339843750002], + [172.58378906250002, -43.77353515624999], + [172.52724609375005, -43.73945312499997], + [172.48037109375, -43.726660156250034], + [172.42968749999997, -43.74648437499998], + [172.39560546875006, -43.77783203124997], + [172.38525390624997, -43.82958984374996], + [172.35039062500002, -43.85937], + [172.29658203125004, -43.867871093750026], + [172.22070312499997, -43.825], + [172.14580078125007, -43.76357421875001], + [172.035546875, -43.70175781250002], + [172.05224609375003, -43.7400390625], + [172.13720703125003, -43.8337890625], + [172.17978515625006, -43.895996093749986], + [172.08076171875004, -43.945605468750045], + [171.97763671875006, -43.98427734375002], + [171.890625, -44.00693359375002], + [171.80839843750007, -44.04228515625003], + [171.71201171875006, -44.09746093749999], + [171.65898437500002, -44.117187500000014], + [171.5177734375001, -44.11835937499998], + [171.44257812500004, -44.13583984374999], + [171.41748046875003, -44.20869140625], + [171.36455078125007, -44.25498046875002], + [171.24072265624997, -44.26416015625003], + [171.2853515625001, -44.278710937499966], + [171.31298828124997, -44.30185546874998], + [171.23105468750006, -44.52119140624998], + [171.21308593750004, -44.612207031249966], + [171.19785156250012, -44.767871093749974], + [171.14628906250002, -44.9123046875], + [170.99902343750003, -44.91142578124999], + [171.0228515625, -44.93701171874997], + [171.13417968750005, -44.977734375], + [171.11328125000003, -45.03925781250001], + [170.99072265625003, -45.15146484374996], + [170.9396484375001, -45.21640625000005], + [170.88994140625002, -45.37392578124998], + [170.81523437500007, -45.519140625], + [170.7005859375, -45.68427734374997], + [170.69970703124997, -45.71396484374998], + [170.73984375000006, -45.756054687500026], + [170.78847656250005, -45.792480468749986], + [170.79121093750004, -45.84384765624998], + [170.77626953125005, -45.870898437499974], + [170.72177734375012, -45.878027343750006], + [170.67421875000005, -45.89570312499997], + [170.4191406250001, -45.94101562499996], + [170.33544921875003, -45.991796875], + [170.26679687500004, -46.082617187500034], + [170.18613281250006, -46.16083984374998], + [169.91826171875002, -46.334375], + [169.76074218749997, -46.47978515625003], + [169.72910156250012, -46.52138671874998], + [169.68662109375006, -46.55166015625002], + [169.34228515625003, -46.62050781250001], + [169.09863281250003, -46.630664062500045], + [168.96582031249997, -46.61298828125], + [168.83779296875, -46.57822265625002], + [168.7667968750001, -46.56630859374998], + [168.63144531250006, -46.58759765624997], + [168.57226562499997, -46.61103515625004], + [168.46640625000012, -46.58789062500003], + [168.38212890625007, -46.60537109374995], + [168.35722656250007, -46.58837890624996], + [168.32568359375003, -46.545703125000045], + [168.34306640625002, -46.489062499999974], + [168.31972656250005, -46.447167968749966], + [168.26621093750006, -46.41875], + [168.23027343750002, -46.38574218749997], + [168.1891601562501, -46.362207031249966], + [168.07734375000004, -46.35292968749995], + [167.90039062499997, -46.367773437500034], + [167.8419921875001, -46.366210937499986], + [167.7220703125, -46.22714843749999], + [167.68222656250012, -46.19296875000005], + [167.539453125, -46.14853515624996], + [167.490625, -46.154687499999966], + [167.41425781250004, -46.22890625], + [167.36894531250007, -46.24150390624999], + [167.10029296875004, -46.249414062499994], + [166.83076171875004, -46.22548828125001], + [166.73154296875006, -46.19785156249998], + [166.7121093750001, -46.13369140624995], + [166.91669921875004, -45.95722656249998], + [166.85644531250003, -45.980859375], + [166.73027343750007, -46.052734374999986], + [166.64990234374997, -46.04169921875004], + [166.726953125, -45.963281249999966], + [166.7337890625, -45.928320312500034], + [166.71796875000004, -45.88935546875001], + [166.6126953125, -45.955371093750045], + [166.49316406249997, -45.9638671875], + [166.47763671875012, -45.90273437499998], + [166.48828124999997, -45.83183593750002], + [166.5128906250001, -45.81171875], + [166.83603515625012, -45.77451171874996], + [166.95253906250005, -45.75019531249998], + [167.0033203125, -45.71210937500004], + [166.80996093750005, -45.699023437500045], + [166.79765625000002, -45.64560546874999], + [166.82558593750005, -45.60283203124999], + [166.99082031250012, -45.531738281249986], + [166.86904296875, -45.549902343750034], + [166.73398437500012, -45.54355468749999], + [166.74306640625, -45.46845703124997], + [166.77832031250003, -45.409667968749986], + [166.91992187499997, -45.40791015624998], + [166.87558593750012, -45.36757812500002], + [166.86923828125006, -45.31123046875], + [166.90859375, -45.30742187500002], + [167.0521484375, -45.383203125], + [167.15566406250005, -45.410937499999974], + [167.11210937500007, -45.35390625], + [167.11777343750006, -45.317968750000034], + [167.14531250000007, -45.30185546875005], + [167.23007812500012, -45.29033203125], + [167.20683593750007, -45.2802734375], + [167.12734375000005, -45.26582031249998], + [167.03281250000006, -45.22246093750003], + [167.02265625000004, -45.17666015625002], + [167.02587890624997, -45.12363281249998], + [167.12792968749997, -45.05078124999996], + [167.1881835937501, -45.094140625], + [167.25947265625004, -45.08222656249997], + [167.20507812499997, -45.048144531250045], + [167.17187, -44.99707031250003], + [167.19453125000004, -44.963476562500034], + [167.41074218750006, -44.82792968750003], + [167.4662109375, -44.958300781250045], + [167.47919921875004, -44.915039062500014], + [167.48212890625004, -44.873925781249994], + [167.45625, -44.83828125], + [167.45996093749997, -44.80234374999998], + [167.48496093750006, -44.77138671874998], + [167.57763671874997, -44.74082031249996], + [167.69814453125, -44.641308593750026], + [167.78701171875, -44.59501953125002], + [167.85937, -44.624707031250026], + [167.90898437500002, -44.66474609375001], + [167.90156250000004, -44.625], + [167.8664062500001, -44.592089843750045], + [167.85654296875012, -44.50068359374998], + [168.01835937500002, -44.35878906250002], + [168.19619140625005, -44.22363281250003], + [168.3666015625, -44.08203124999996], + [168.45742187500005, -44.030566406250045], + [168.65097656250012, -43.97216796874996], + [168.77480468750005, -43.99648437500002], + [168.80644531250002, -43.9919921875], + [168.9904296875001, -43.88994140624999], + [169.06650390625006, -43.86347656250001], + [169.1359375000001, -43.89990234374997], + [169.17890625000004, -43.9130859375], + [169.13574218750003, -43.81982421875], + [169.16953125000006, -43.77705078125], + [169.32314453125, -43.7015625], + [169.51523437500006, -43.623632812500006], + [169.66152343750005, -43.591210937499966], + [169.76923828125004, -43.53847656249998], + [169.83388671875, -43.53701171875004], + [169.82402343750002, -43.49716796874999], + [169.83505859375012, -43.45898437500003], + [169.89082031250004, -43.46162109375004], + [169.90800781250007, -43.44658203124999], + [169.85898437500012, -43.42597656249997], + [170.01757812500003, -43.3494140625], + [170.10371093750004, -43.26503906249995], + [170.148828125, -43.24755859375004], + [170.1896484375001, -43.222070312499994], + [170.24023437499997, -43.163867187500045], + [170.3, -43.144628906250034], + [170.35576171875007, -43.15361328124999], + [170.39609375000012, -43.18222656249996], + [170.37431640625002, -43.13466796874995], + [170.30283203125012, -43.10761718750004], + [170.37949218750012, -43.066210937500045], + [170.4586914062501, -43.037695312500006], + [170.5358398437501, -43.05849609374998], + [170.61181640625003, -43.091796875000014], + [170.5358398437501, -43.04072265625], + [170.5236328125001, -43.00898437500001], + [170.61552734375007, -42.97246093750003], + [170.6654296875, -42.961230468749974], + [170.73525390625005, -43.029785156249986], + [170.72529296875004, -42.97548828125004], + [170.7416015625, -42.92734375], + [170.84033203125003, -42.84863281250003], + [170.96992187500004, -42.71835937499996], + [171.01142578125004, -42.76367187499996], + [171.01777343750004, -42.81875], + [171.01171875000003, -42.88505859374999], + [171.03837890625007, -42.86210937500003], + [171.04755859375004, -42.801855468750006], + [171.027734375, -42.696093750000045], + [171.18955078125012, -42.500488281249986], + [171.22128906250012, -42.47861328124996], + [171.2570312500001, -42.465332031250014], + [171.31337890625005, -42.460156250000026], + [171.29609375000004, -42.43056640624995], + [171.25224609375002, -42.40195312499998], + [171.29648437500006, -42.302539062499974], + [171.32265625000005, -42.18906250000005], + [171.36025390625, -42.07998046875002], + [171.42060546875004, -41.973046875], + [171.48623046875, -41.7947265625], + [171.53632812500004, -41.75751953124997], + [171.67216796875002, -41.74472656250002], + [171.73164062500004, -41.71962890624998], + [171.83066406250006, -41.655175781249994], + [171.94804687500002, -41.53867187499996], + [172.01074218749997, -41.44472656250001], + [172.09335937500012, -41.20156249999995], + [172.13945312500002, -40.947265625000014], + [172.27275390625007, -40.758691406249966], + [172.4681640625, -40.622167968750034], + [172.64062, -40.51826171875001], + [172.71113281250004, -40.49667968749996], + [172.83017578125006, -40.49003906250003], + [172.94365234375007, -40.51875], + [172.73261718750004, -40.54375], + [172.71113281250004, -40.605371093749994], + [172.70439453125002, -40.6677734375], + [172.72890625, -40.723632812500014], + [172.7667968750001, -40.77343750000003], + [172.86914062499997, -40.820312499999986], + [172.988671875, -40.84824218749999], + [173.04228515625002, -40.95361328124997], + [173.05214843750005, -41.07861328125003], + [173.06865234375007, -41.18583984375003], + [173.11533203125006, -41.27929687499997] + ] + ], + [ + [ + [175.54316406250015, -36.279296874999986], + [175.551171875, -36.33388671875001], + [175.47460937500003, -36.31445312499996], + [175.44462890625013, -36.2732421875], + [175.35878906250005, -36.230664062500026], + [175.34619140624997, -36.217773437499986], + [175.33662109375015, -36.13476562500003], + [175.38164062500007, -36.09482421874998], + [175.3895507812501, -36.07773437499996], + [175.409375, -36.07089843749999], + [175.44433593750009, -36.11464843750002], + [175.5125976562501, -36.17695312500001], + [175.54316406250015, -36.279296874999986] + ] + ], + [ + [ + [173.26943359375, -34.93476562499998], + [173.28457031250005, -34.98056640624999], + [173.33994140625018, -34.94794921875001], + [173.38125, -34.896484375], + [173.44785156250012, -34.844335937500034], + [173.43867187500004, -34.92851562499996], + [173.47265625000003, -34.94697265624998], + [173.6937500000001, -35.00566406249996], + [173.73925781249997, -35.05458984374998], + [173.78623046875012, -35.06855468749998], + [173.81279296875002, -35.0412109375], + [173.84394531250015, -35.02626953124998], + [173.92382812500009, -35.05712890624996], + [174.10400390625003, -35.14287109375002], + [174.11894531250007, -35.172363281249986], + [174.10976562499994, -35.21640625], + [174.11875, -35.26289062500004], + [174.1431640625, -35.3], + [174.20322265625018, -35.30859375000003], + [174.28291015625004, -35.253515625], + [174.32031250000003, -35.246679687500034], + [174.37333984375002, -35.32451171874999], + [174.39316406250012, -35.368554687499994], + [174.3849609375001, -35.36708984375005], + [174.4191406250001, -35.41074218749996], + [174.46474609375, -35.454101562500014], + [174.54345703125003, -35.58203124999996], + [174.53173828124997, -35.62695312499996], + [174.50859375000002, -35.66738281250002], + [174.58066406250018, -35.78554687500004], + [174.53349609375013, -35.79375], + [174.39101562500005, -35.77373046875002], + [174.39580078124996, -35.79736328124996], + [174.47871093750015, -35.88408203125003], + [174.54873046875005, -36.00664062499996], + [174.6048828125001, -36.08056640625], + [174.8021484375, -36.30947265625001], + [174.77246093749997, -36.39091796874999], + [174.77705078125004, -36.44462890625002], + [174.75175781250002, -36.490820312500006], + [174.8192382812501, -36.61210937500003], + [174.77714843750002, -36.64980468749998], + [174.74921875000004, -36.77402343749998], + [174.71865234375, -36.795800781249966], + [174.72246093750007, -36.84121093749998], + [174.8019531250001, -36.853222656250026], + [174.84990234375013, -36.87255859374997], + [174.89140625000002, -36.909375], + [174.91718750000015, -36.865039062500045], + [174.95205078124994, -36.852929687499966], + [175.04707031250015, -36.91220703124996], + [175.24511718749997, -36.97128906250002], + [175.29951171875004, -36.99326171874996], + [175.32646484375002, -37.040917968749994], + [175.34667968750009, -37.15615234375002], + [175.38535156250012, -37.206933593749966], + [175.46093750000009, -37.21669921875001], + [175.54248046874997, -37.2013671875], + [175.56816406250007, -37.15937], + [175.55195312500015, -37.04648437499996], + [175.49316406250009, -36.86572265625], + [175.49287109374998, -36.80693359375002], + [175.50126953125013, -36.748046875000014], + [175.48740234375012, -36.68955078124999], + [175.45800781250003, -36.634277343750014], + [175.42636718750012, -36.59189453124999], + [175.38554687500002, -36.55634765625004], + [175.39980468750005, -36.50078124999999], + [175.46083984375005, -36.475683593750034], + [175.49765625000012, -36.52265625000001], + [175.52802734375004, -36.579296875], + [175.68144531250007, -36.746972656249966], + [175.77216796875004, -36.73515625], + [175.7806640625, -36.80458984374998], + [175.8421875000001, -36.87509765624996], + [175.8761718750001, -36.95771484375], + [175.92109375000004, -37.20458984375003], + [175.99013671875005, -37.43701171875004], + [176.11455078125002, -37.53828124999997], + [176.12900390625012, -37.58671874999999], + [176.05332031250012, -37.56171875000004], + [176.02988281250018, -37.57626953124999], + [176.03789062500002, -37.60068359374999], + [176.10839843749997, -37.64511718749998], + [176.19111328125015, -37.6669921875], + [176.24316406250009, -37.663867187499974], + [176.29169921875004, -37.680078125], + [176.61474609374997, -37.83095703125001], + [176.77001953124997, -37.88964843749997], + [177.16181640625004, -37.98574218750001], + [177.27402343750012, -37.993457031249974], + [177.33593749999997, -37.99082031249998], + [177.4533203125001, -37.957421875], + [177.55830078125015, -37.89746093749996], + [177.64892578124997, -37.8078125], + [177.72734375000013, -37.70556640625004], + [177.8126953125001, -37.65595703124997], + [177.90947265625013, -37.61689453125], + [177.95800781250003, -37.58066406249999], + [178.0091796875, -37.55488281249998], + [178.2721679687501, -37.56689453125003], + [178.36074218750005, -37.61845703124996], + [178.47597656250005, -37.659765625000034], + [178.53623046875006, -37.69208984375004], + [178.51601562500005, -37.75761718749999], + [178.44707031250002, -37.85439453124998], + [178.39394531250005, -37.96025390624996], + [178.34726562500012, -38.200878906250054], + [178.31542968750003, -38.444042968750026], + [178.26767578125006, -38.551171875], + [178.18066406249991, -38.63369140625002], + [178.08486328124994, -38.69394531249996], + [177.976171875, -38.72226562500005], + [177.93212890624991, -38.860253906249994], + [177.9103515625001, -39.021777343750045], + [177.91660156250012, -39.062402343749966], + [177.9513671875001, -39.09453125000003], + [177.965625, -39.14248046875004], + [177.90878906250012, -39.23955078125], + [177.87548828124991, -39.22548828124998], + [177.82871093750018, -39.14472656250004], + [177.78613281250003, -39.1109375], + [177.65585937500012, -39.08574218750002], + [177.52294921875003, -39.073828125], + [177.40751953124996, -39.08115234374998], + [177.2965820312501, -39.11582031250002], + [177.12871093750002, -39.18613281250005], + [177.07675781250012, -39.22177734375002], + [177.03125, -39.266894531249974], + [176.95410156249997, -39.367578124999966], + [176.93574218750015, -39.490722656250014], + [176.93925781249996, -39.55527343750002], + [176.96660156250002, -39.60517578124997], + [177.10986328125009, -39.673144531250045], + [176.96796875000015, -39.91074218749996], + [176.8421875000001, -40.15781250000002], + [176.7707031250001, -40.22841796875002], + [176.68876953125013, -40.29345703125004], + [176.61152343749998, -40.441992187500006], + [176.47646484375, -40.57001953124998], + [176.38515625000005, -40.66767578124998], + [176.3138671875001, -40.76894531250001], + [176.25175781250007, -40.876855468749966], + [176.11865234374997, -41.02910156249999], + [176.05996093750005, -41.129687500000045], + [175.98291015625003, -41.21328125000002], + [175.83964843750013, -41.32011718750003], + [175.68730468750002, -41.411718750000034], + [175.44707031250007, -41.53828124999998], + [175.3802734375, -41.58007812499997], + [175.30976562499998, -41.610644531249974], + [175.22216796874991, -41.57441406249997], + [175.20449218750005, -41.53496093750002], + [175.18466796875012, -41.4490234375], + [175.16562500000012, -41.41738281249995], + [175.0539062500001, -41.391210937500034], + [174.90605468750002, -41.43291015625], + [174.88134765624997, -41.42402343749997], + [174.8751953125001, -41.40429687500004], + [174.875, -41.27822265625002], + [174.90019531250007, -41.24267578124997], + [174.8656250000001, -41.223046874999966], + [174.83154296874991, -41.23076171875003], + [174.8197265625, -41.26289062500001], + [174.8412109375001, -41.29072265625], + [174.75703125000004, -41.32529296875002], + [174.66953125000012, -41.326269531250034], + [174.64296875000005, -41.312695312500026], + [174.63535156250012, -41.289453125], + [174.65654296874996, -41.25126953125003], + [174.68486328125007, -41.21767578125004], + [174.84775390625, -41.0587890625], + [175.01679687499998, -40.84765624999997], + [175.1625, -40.62158203125], + [175.20048828125013, -40.50537109374996], + [175.25410156250004, -40.28935546875], + [175.21015625000015, -40.19941406249997], + [175.1559570312501, -40.11494140625], + [175.00927734375009, -39.95214843749996], + [174.81376953125002, -39.860156250000045], + [174.68730468750002, -39.84716796874997], + [174.56748046875012, -39.81298828125003], + [174.45468750000006, -39.73515624999999], + [174.35205078124991, -39.64335937500002], + [174.14863281250004, -39.568164062499974], + [173.93437500000013, -39.50908203125002], + [173.81210937500006, -39.425781250000014], + [173.78300781250002, -39.37617187500004], + [173.76367187499997, -39.31875], + [173.76640625000002, -39.26533203125001], + [173.7816406250001, -39.21123046875], + [173.8060546875001, -39.169531250000034], + [173.84433593750006, -39.13935546875001], + [174.07138671875012, -39.03125], + [174.3117187500001, -38.97109375000002], + [174.35605468750006, -38.97216796874997], + [174.39843749999997, -38.96259765624998], + [174.45849609374997, -38.92578125000003], + [174.56621093750007, -38.84160156250002], + [174.59736328124998, -38.78505859374995], + [174.61855468750005, -38.60527343750002], + [174.65302734375015, -38.42832031250002], + [174.71533203125003, -38.225585937500014], + [174.80927734374998, -38.09980468749997], + [174.84003906250004, -38.02265624999998], + [174.80166015625005, -37.895507812500014], + [174.8368164062501, -37.84892578125002], + [174.8795898437501, -37.82080078124997], + [174.92802734375002, -37.80449218750003], + [174.84599609375002, -37.68515624999996], + [174.74941406250005, -37.504687499999974], + [174.72919921875004, -37.44873046875003], + [174.74394531250002, -37.39345703125005], + [174.76767578125006, -37.33906249999998], + [174.70742187500005, -37.32529296875002], + [174.67255859375004, -37.273144531250054], + [174.58583984374994, -37.09775390625002], + [174.60966796875002, -37.069921875000034], + [174.65966796875009, -37.088769531249966], + [174.73427734375, -37.21523437499998], + [174.74638671874996, -37.150097656250026], + [174.8036132812501, -37.11005859375004], + [174.86386718750012, -37.08925781249998], + [174.92890625000004, -37.084765625000045], + [174.78203125000013, -36.94375], + [174.73291015625009, -36.9494140625], + [174.66796874999997, -36.971875], + [174.60146484374994, -36.98574218750002], + [174.53652343750005, -36.97333984374998], + [174.47558593750009, -36.94189453124997], + [174.44453125000015, -36.882519531250054], + [174.40605468750013, -36.76826171875004], + [174.38193359375018, -36.72597656250004], + [174.1888671875001, -36.492285156250034], + [174.24570312500012, -36.48496093749996], + [174.4015625000001, -36.601953125], + [174.43173828125018, -36.56455078125002], + [174.45429687500015, -36.510742187499986], + [174.446875, -36.45087890625004], + [174.4095703125001, -36.40556640624996], + [174.35410156250018, -36.37597656249997], + [174.35312500000018, -36.32285156249998], + [174.39541015625005, -36.27412109375], + [174.39277343750004, -36.24003906249999], + [174.30351562500002, -36.170507812500034], + [174.26787109375002, -36.16308593750003], + [174.25205078125018, -36.19560546874999], + [174.27753906250004, -36.24375], + [174.25371093749996, -36.24912109374998], + [174.03642578125013, -36.12246093750001], + [173.96933593750012, -36.02060546874996], + [173.91445312499994, -35.908691406249986], + [173.9088867187501, -35.95419921875002], + [173.91728515625002, -36.01816406249999], + [174.003125, -36.14628906249999], + [174.14238281250002, -36.28945312500002], + [174.16640624999994, -36.327636718749986], + [174.14580078125002, -36.376953124999986], + [174.09746093750013, -36.391015625], + [174.05468749999991, -36.35976562500004], + [173.99101562500013, -36.23720703125004], + [173.94511718750002, -36.17587890624998], + [173.41220703125012, -35.542578125], + [173.48027343749996, -35.45898437500003], + [173.58583984375, -35.38857421874998], + [173.61035156250003, -35.35722656249999], + [173.62617187500004, -35.31914062499996], + [173.581640625, -35.31259765624996], + [173.54169921875004, -35.32988281250002], + [173.49609374999997, -35.36230468749996], + [173.45429687499998, -35.39921875000002], + [173.40166015625013, -35.48115234375001], + [173.3763671875001, -35.50009765624996], + [173.31396484375003, -35.44335937499996], + [173.29023437500015, -35.408300781250006], + [173.29121093749998, -35.36630859374998], + [173.27451171875018, -35.33964843749996], + [173.22812500000012, -35.33125], + [173.16015625000003, -35.24775390624998], + [173.11669921874997, -35.205273437500026], + [173.18876953125002, -35.123730468750026], + [173.190625, -35.01621093749998], + [173.11728515625012, -34.90332031249997], + [173.02958984375007, -34.79990234374996], + [172.86074218750005, -34.632324218750014], + [172.70595703125005, -34.45517578124998], + [172.87373046875004, -34.432910156249974], + [173.04394531249997, -34.429101562499994], + [172.96376953125, -34.53515625000003], + [172.99980468750007, -34.59648437499999], + [173.0543945312501, -34.648242187499974], + [173.17109375000004, -34.806933593749974], + [173.18125, -34.85273437499997], + [173.24052734374996, -34.89902343749999], + [173.26943359375, -34.93476562499998] + ] + ], + [ + [ + [-171.18642578125, -9.355468750000014], + [-171.188623046875, -9.358300781249966], + [-171.193017578125, -9.352441406250009], + [-171.200048828125, -9.344726562499957], + [-171.20444335937503, -9.333300781250017], + [-171.20166015625, -9.332617187499977], + [-171.19443359375003, -9.33876953124998], + [-171.18930664062495, -9.34658203124998], + [-171.18642578125, -9.355468750000014] + ] + ], + [ + [ + [-172.47915039062502, -8.580761718750011], + [-172.48369140624996, -8.582910156250009], + [-172.488232421875, -8.571582031250003], + [-172.49404296875002, -8.559179687499963], + [-172.498681640625, -8.547949218749991], + [-172.497021484375, -8.546484374999949], + [-172.48725585937498, -8.556152343749972], + [-172.48110351562497, -8.567480468749963], + [-172.47915039062502, -8.580761718750011] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Oman", + "iso_a2": "OM", + "iso_a3": "OMN", + "iso_n3": "512", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [58.722070312499994, 20.21875], + [58.65908203125005, 20.20361328125003], + [58.640917968750074, 20.210693359375057], + [58.64121093750006, 20.33735351562501], + [58.787988281249994, 20.49658203125003], + [58.884375, 20.680566406250023], + [58.95078125000006, 20.516162109375017], + [58.83515625000004, 20.423925781250063], + [58.77226562500002, 20.26684570312503], + [58.722070312499994, 20.21875] + ] + ], + [ + [ + [56.38798828125002, 24.97919921875004], + [56.48984375000006, 24.716357421875045], + [56.64062, 24.4703125], + [56.7741210937501, 24.334570312499977], + [56.9125, 24.15019531249999], + [57.12304687500003, 23.980712890625], + [57.219824218750006, 23.922753906250023], + [57.61132812500003, 23.80366210937501], + [57.82509765625005, 23.759130859374977], + [58.120410156250074, 23.71655273437503], + [58.32451171875002, 23.623828125000045], + [58.39316406250006, 23.618164062500057], + [58.5, 23.64565429687505], + [58.57802734375005, 23.64345703125005], + [58.773046875, 23.517187499999977], + [58.83037109375002, 23.39746093750003], + [58.91152343750005, 23.33417968750001], + [58.98339843750003, 23.234716796875006], + [59.029882812500006, 23.13056640625001], + [59.194726562499994, 22.971875], + [59.31093750000005, 22.793359374999966], + [59.42939453125004, 22.660839843749955], + [59.53515624999997, 22.578515625], + [59.69560546875002, 22.546142578125057], + [59.82324218749997, 22.50898437500004], + [59.8375, 22.42055664062505], + [59.82441406250004, 22.30517578124997], + [59.8, 22.21992187500001], + [59.6808593750001, 22.053808593750034], + [59.65253906250004, 21.95136718750001], + [59.51757812499997, 21.782324218750034], + [59.37148437500005, 21.498828125000017], + [59.304492187500074, 21.435351562500045], + [59.06875, 21.2890625], + [58.89570312500004, 21.11279296874997], + [58.69042968750003, 20.80712890624997], + [58.53417968749997, 20.50390625], + [58.47421875000006, 20.406884765624966], + [58.34873046875006, 20.386914062499983], + [58.266015625, 20.39545898437504], + [58.20898437500003, 20.423974609374994], + [58.2316406250001, 20.5068359375], + [58.245019531249994, 20.599218749999977], + [58.16943359375003, 20.58950195312505], + [58.102929687499994, 20.570361328125045], + [57.94716796875005, 20.343603515625034], + [57.86181640624997, 20.24414062500003], + [57.843652343749994, 20.117724609375017], + [57.802148437499994, 19.95458984375], + [57.74121093750003, 19.80449218749999], + [57.71416015625002, 19.678417968749983], + [57.71513671875002, 19.60693359374997], + [57.760839843750006, 19.432226562500006], + [57.76396484375002, 19.253320312499966], + [57.790332031250074, 19.14594726562504], + [57.81162109375006, 19.01708984374997], + [57.7384765625001, 18.977343750000045], + [57.67578125000003, 18.957861328124977], + [57.42792968750004, 18.943798828124955], + [57.176562500000074, 18.902587890625], + [56.9572265625001, 18.827832031249955], + [56.825976562500074, 18.753515625], + [56.655078125000074, 18.58735351562501], + [56.55078124999997, 18.165966796874955], + [56.3834960937501, 17.98798828125001], + [56.27031250000002, 17.950781249999977], + [55.99765625000006, 17.935205078125023], + [55.61386718750006, 17.886083984375034], + [55.479101562500006, 17.84326171875003], + [55.25537109375003, 17.58564453125004], + [55.238183593749994, 17.504736328124977], + [55.2814453125001, 17.446240234374955], + [55.29560546875004, 17.38159179687503], + [55.275195312500074, 17.320898437500006], + [55.173730468749994, 17.15761718750005], + [55.06416015625004, 17.038916015625034], + [54.771875, 16.96464843749999], + [54.664648437500006, 17.008886718750034], + [54.566503906250006, 17.03125], + [54.37695312500003, 17.03364257812501], + [54.06816406250002, 17.005517578124966], + [53.95439453125002, 16.917822265625034], + [53.77539062499997, 16.855712890625], + [53.60986328124997, 16.75996093750004], + [53.297753906249994, 16.72333984375004], + [53.08564453125004, 16.648388671874955], + [53.025, 16.780224609374983], + [52.96435546875003, 16.91206054687504], + [52.903710937499994, 17.043847656249966], + [52.84296875000004, 17.175683593749994], + [52.80058593750002, 17.267919921875063], + [52.72919921875004, 17.300390625], + [52.68593750000005, 17.39794921874997], + [52.641699218750006, 17.49785156249999], + [52.59736328125004, 17.597753906250006], + [52.553125, 17.697607421875006], + [52.50888671875006, 17.797509765625023], + [52.46455078125004, 17.897412109374955], + [52.4203125, 17.997314453125057], + [52.37607421875006, 18.09716796874997], + [52.3317382812501, 18.197070312500074], + [52.2875, 18.29692382812499], + [52.243261718750006, 18.396826171875006], + [52.199023437500074, 18.496679687500006], + [52.1546875, 18.596582031250023], + [52.11044921875006, 18.69648437500004], + [52.06621093750002, 18.796386718750057], + [52.021875, 18.896289062500045], + [51.977636718750006, 18.996142578125074], + [52.118554687499994, 19.043164062499955], + [52.290625, 19.100488281249994], + [52.46269531250002, 19.157812500000034], + [52.634667968749994, 19.21513671874999], + [52.80673828125006, 19.272460937500057], + [52.9787109375001, 19.32978515625001], + [53.15078125, 19.387158203124955], + [53.32285156250006, 19.444482421874994], + [53.4948242187501, 19.501806640625063], + [53.66689453125005, 19.559130859375017], + [53.83886718750003, 19.616503906250045], + [54.01093750000004, 19.673828125], + [54.18300781250005, 19.731152343749955], + [54.35498046874997, 19.788476562500023], + [54.52705078125004, 19.845800781250063], + [54.69902343750002, 19.903125], + [54.87109374999997, 19.960498046875074], + [54.97734375000002, 19.995947265625006], + [55.02148437499997, 20.129248046874977], + [55.058203125, 20.239941406249983], + [55.09472656249997, 20.350634765625045], + [55.131445312500006, 20.46132812500005], + [55.168066406250006, 20.57202148437503], + [55.20458984374997, 20.682714843750034], + [55.24121093749997, 20.79340820312501], + [55.277929687500006, 20.904101562500017], + [55.31445312499997, 21.014794921874994], + [55.35107421874997, 21.12553710937499], + [55.38769531249997, 21.236230468749994], + [55.42431640624997, 21.34692382812497], + [55.46093749999997, 21.457617187499977], + [55.49755859374997, 21.568310546874955], + [55.53417968749997, 21.679003906250045], + [55.57080078124997, 21.78969726562505], + [55.60742187499997, 21.90039062500003], + [55.641015625, 22.001855468749994], + [55.57773437500006, 22.099511718749994], + [55.49277343750006, 22.230664062499983], + [55.40380859374997, 22.36782226562505], + [55.320117187500074, 22.496923828125063], + [55.25927734375003, 22.590917968750034], + [55.185839843750074, 22.7041015625], + [55.19404296875004, 22.85], + [55.19218750000002, 22.922949218749977], + [55.1999023437501, 23.034765625000034], + [55.27021484375004, 23.18994140625003], + [55.35322265625004, 23.38745117187503], + [55.413867187500074, 23.51875], + [55.46630859375003, 23.632910156250034], + [55.5084960937501, 23.72460937499997], + [55.531640625, 23.81904296875001], + [55.519335937500074, 23.88549804687497], + [55.49179687500006, 23.90966796875], + [55.4684570312501, 23.94111328125001], + [55.54785156250003, 23.99135742187505], + [55.69658203125002, 24.024121093749983], + [55.77910156250002, 24.017089843750057], + [55.894140625, 24.041406250000023], + [55.98515625000002, 24.063378906249966], + [55.99218750000003, 24.092968749999955], + [55.96630859374997, 24.142626953125045], + [55.92861328125005, 24.215136718750074], + [55.799707031249994, 24.22265625], + [55.76083984375006, 24.24267578125], + [55.80566406250003, 24.349804687499983], + [55.804003906250074, 24.383544921875], + [55.7868164062501, 24.423535156249983], + [55.76816406250006, 24.49062], + [55.7775390625001, 24.577343749999955], + [55.80390625000004, 24.63623046874997], + [55.80419921875003, 24.68359375000003], + [55.791601562500006, 24.781298828125045], + [55.795703125000074, 24.868115234374955], + [55.822851562500006, 24.911279296874966], + [55.87070312500006, 24.95141601562497], + [55.91582031250002, 24.971777343750034], + [55.96308593750004, 24.97026367187499], + [56.00058593750006, 24.953222656249977], + [56.01669921875006, 24.90771484375003], + [56.00634765624997, 24.876416015624955], + [55.97968750000004, 24.87207031249997], + [55.9703125, 24.858935546875045], + [56.00839843750006, 24.798242187500023], + [56.06386718750005, 24.73876953125], + [56.10654296875006, 24.748681640624966], + [56.15449218750004, 24.795507812500006], + [56.20468750000006, 24.833300781250074], + [56.267871093750074, 24.86669921875003], + [56.31357421875006, 24.93129882812505], + [56.352929687499994, 24.973291015624994], + [56.38798828125002, 24.97919921875004] + ] + ], + [ + [ + [56.28183593750006, 25.23554687500004], + [56.24023437500003, 25.208837890625006], + [56.210546875, 25.213281250000023], + [56.2165039062501, 25.266699218749977], + [56.23427734375005, 25.303808593750006], + [56.27734375000003, 25.300878906250034], + [56.28779296875004, 25.278613281250017], + [56.28183593750006, 25.23554687500004] + ] + ], + [ + [ + [56.429785156250006, 26.327197265625045], + [56.41777343750002, 26.208154296875023], + [56.41640625000005, 26.108740234375034], + [56.373632812500006, 25.804589843749966], + [56.32929687500004, 25.751953125], + [56.307226562500006, 25.709326171875006], + [56.29785156250003, 25.650683593750045], + [56.2785156250001, 25.62773437499999], + [56.24951171874997, 25.625390624999966], + [56.18359375000003, 25.644921875000023], + [56.144628906250006, 25.690527343750006], + [56.15195312500006, 25.74609375000003], + [56.154101562500074, 25.848486328125034], + [56.1725585937501, 25.945166015625006], + [56.16748046875003, 26.047460937499977], + [56.11650390625002, 26.068164062500017], + [56.08046875, 26.06264648437505], + [56.16445312500005, 26.20703124999997], + [56.19726562499997, 26.229199218749955], + [56.228417968749994, 26.21977539062499], + [56.305566406249994, 26.235205078125034], + [56.346484375000074, 26.313623046875023], + [56.378710937500074, 26.356347656250023], + [56.41308593749997, 26.351171875000034], + [56.429785156250006, 26.327197265625045] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Pakistan", + "iso_a2": "PK", + "iso_a3": "PAK", + "iso_n3": "586", + "continent": "Asia" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [76.76689453124999, 35.66171875], + [76.81279296874999, 35.571826171874996], + [76.88222656250002, 35.4357421875], + [76.927734375, 35.346630859375], + [76.97890625000002, 35.246435546875], + [77.00449218750003, 35.196337890624996], + [77.04863281249999, 35.109912109374996], + [77.03066406250002, 35.062353515625], + [77.00087890625002, 34.991992187499996], + [76.89169921875003, 34.938720703125], + [76.78291015625001, 34.900195312499996], + [76.75751953125001, 34.877832031249994], + [76.7490234375, 34.847558593749994], + [76.6962890625, 34.786914062499996], + [76.59443359375001, 34.73583984375], + [76.50996093750001, 34.740869140624994], + [76.45673828125001, 34.756103515625], + [76.17246093750003, 34.667724609375], + [76.041015625, 34.669921875], + [75.93828125000002, 34.612548828125], + [75.86210937500002, 34.56025390625], + [75.70917968750001, 34.503076171874994], + [75.60556640625, 34.502734375], + [75.45253906250002, 34.53671875], + [75.26406250000002, 34.601367187499996], + [75.1875, 34.639013671875], + [75.11845703125002, 34.63681640625], + [74.95185546875001, 34.645849609375], + [74.78876953125001, 34.677734375], + [74.59414062500002, 34.715771484375], + [74.49794921875002, 34.73203125], + [74.300390625, 34.765380859375], + [74.17197265625, 34.7208984375], + [74.05585937500001, 34.6806640625], + [73.96123046875002, 34.653466796874994], + [73.88310546875002, 34.529052734375], + [73.85009765625, 34.485302734375], + [73.812109375, 34.42236328125], + [73.79453125, 34.378222656249996], + [73.80996093750002, 34.325341796874994], + [73.92460937500002, 34.287841796875], + [73.97236328125001, 34.236621093749996], + [73.9794921875, 34.191308593749994], + [73.93828125000002, 34.144775390625], + [73.90390625, 34.1080078125], + [73.90410156250002, 34.07568359375], + [73.92236328125, 34.04306640625], + [73.94990234375001, 34.018798828125], + [74.11259765625002, 34.003710937499996], + [74.208984375, 34.00341796875], + [74.24648437500002, 33.990185546875], + [74.25087890625002, 33.94609375], + [74.215625, 33.886572265625], + [74.07841796875002, 33.838671875], + [74.0009765625, 33.78818359375], + [73.97646484375002, 33.7212890625], + [73.9775390625, 33.667822265625], + [74.00400390625, 33.632421875], + [74.06972656250002, 33.591699218749994], + [74.13125, 33.545068359374994], + [74.15, 33.506982421874994], + [74.142578125, 33.455371093749996], + [74.1177734375, 33.384130859375], + [74.050390625, 33.30126953125], + [73.99423828125, 33.2421875], + [73.98984375, 33.22119140625], + [74.00380859375002, 33.189453125], + [74.04912109375002, 33.143408203125], + [74.12626953125002, 33.075439453125], + [74.22207031250002, 33.0203125], + [74.28359375000002, 33.005126953125], + [74.30361328125002, 32.991796875], + [74.32275390625, 32.927978515625], + [74.32998046875002, 32.86083984375], + [74.30546875000002, 32.810449218749994], + [74.35458984375, 32.768701171874994], + [74.4833984375, 32.77099609375], + [74.58828125000002, 32.753222656249996], + [74.632421875, 32.770898437499994], + [74.66328125000001, 32.757666015625], + [74.64335937500002, 32.607714843749996], + [74.6578125, 32.518945312499994], + [74.68574218750001, 32.493798828124994], + [74.78886718750002, 32.4578125], + [74.9873046875, 32.462207031249996], + [75.1041015625, 32.420361328125], + [75.23369140625002, 32.372119140624996], + [75.30263671875002, 32.318896484374996], + [75.33349609375, 32.279199218749994], + [75.32470703125, 32.215283203125], + [75.25410156250001, 32.14033203125], + [75.13876953125, 32.104785156249996], + [75.07148437500001, 32.08935546875], + [74.73945312500001, 31.948828125], + [74.6357421875, 31.88974609375], + [74.55556640625002, 31.818554687499997], + [74.5259765625, 31.76513671875], + [74.50996093750001, 31.712939453124996], + [74.58183593750002, 31.52392578125], + [74.59394531250001, 31.465380859374996], + [74.53496093750002, 31.261376953124994], + [74.51767578125, 31.185595703124996], + [74.53974609375001, 31.132666015625], + [74.6103515625, 31.112841796874996], + [74.62578125000002, 31.06875], + [74.6328125, 31.03466796875], + [74.509765625, 30.959667968749997], + [74.38037109375, 30.893408203125], + [74.33935546875, 30.8935546875], + [74.215625, 30.768994140624997], + [74.00898437500001, 30.519677734374994], + [73.89931640625002, 30.435351562499996], + [73.8916015625, 30.39404296875], + [73.88271484375002, 30.3521484375], + [73.92460937500002, 30.281640625], + [73.93339843750002, 30.222070312499994], + [73.88652343750002, 30.162011718749994], + [73.8091796875, 30.093359375], + [73.65800781250002, 30.033203125], + [73.46748046875001, 29.9716796875], + [73.38164062500002, 29.934375], + [73.31728515625002, 29.772998046874996], + [73.2578125, 29.610693359375], + [73.23115234375001, 29.550634765625], + [73.12832031250002, 29.363916015624994], + [72.94873046875, 29.088818359374997], + [72.9033203125, 29.028759765624997], + [72.6255859375, 28.896142578124994], + [72.34189453125, 28.751904296874997], + [72.2919921875, 28.697265625], + [72.23388671875, 28.565820312499994], + [72.17919921875, 28.421777343749994], + [72.128515625, 28.346337890624994], + [71.94804687500002, 28.177294921874996], + [71.88886718750001, 28.0474609375], + [71.87031250000001, 27.9625], + [71.71669921875002, 27.915087890624996], + [71.54296875, 27.869873046875], + [71.29013671875, 27.855273437499996], + [71.18476562500001, 27.831640625], + [70.87490234375002, 27.714453125], + [70.79794921875, 27.709619140624994], + [70.73740234375, 27.72900390625], + [70.69160156250001, 27.768994140624997], + [70.64912109375001, 27.835351562499994], + [70.62910156250001, 27.937451171874997], + [70.56923828125002, 27.983789062499994], + [70.48857421875002, 28.023144531249997], + [70.40371093750002, 28.025048828124994], + [70.31845703125, 27.981640625], + [70.24433593750001, 27.934130859374996], + [70.1939453125, 27.894873046875], + [70.14453125, 27.849023437499994], + [70.0498046875, 27.694726562499994], + [69.89628906250002, 27.4736328125], + [69.72480468750001, 27.312695312499997], + [69.66132812500001, 27.264501953125], + [69.62158203125, 27.228076171874996], + [69.56796875, 27.174609375], + [69.53701171875002, 27.122949218749994], + [69.49453125000002, 26.954150390624996], + [69.47001953125002, 26.804443359375], + [69.48125, 26.77099609375], + [69.50693359375, 26.74267578125], + [69.6005859375, 26.699121093749994], + [69.7359375, 26.62705078125], + [69.91142578125002, 26.586132812499997], + [70.059375, 26.578759765624994], + [70.11464843750002, 26.548046875], + [70.14765625000001, 26.5064453125], + [70.1568359375, 26.471435546875], + [70.14921875000002, 26.347558593749994], + [70.13261718750002, 26.214794921874997], + [70.077734375, 26.071972656249997], + [70.07861328125, 25.990039062500003], + [70.1001953125, 25.910058593749994], + [70.2646484375, 25.70654296875], + [70.3251953125, 25.685742187499997], + [70.44853515625002, 25.681347656249997], + [70.505859375, 25.685302734375], + [70.56953125000001, 25.705957031249994], + [70.61484375, 25.69189453125], + [70.6484375, 25.666943359374997], + [70.6572265625, 25.62578125], + [70.65205078125001, 25.422900390625003], + [70.70253906250002, 25.3310546875], + [70.80048828125001, 25.205859375], + [70.87773437500002, 25.06298828125], + [70.95087890625001, 24.8916015625], + [71.02070312500001, 24.75766601562499], + [71.0478515625, 24.687744140625], + [71.00234375000002, 24.65390625], + [70.97636718750002, 24.61875], + [70.96982421875, 24.571875], + [70.97929687500002, 24.5224609375], + [70.9732421875, 24.48740234374999], + [71.00625, 24.4443359375], + [71.04531250000002, 24.429980468750003], + [71.04404296875, 24.400097656249997], + [70.98281250000002, 24.361035156249997], + [70.928125, 24.362353515625003], + [70.88623046875, 24.34375], + [70.80507812500002, 24.261962890625], + [70.76728515625001, 24.245410156250003], + [70.71630859375, 24.237988281249997], + [70.65947265625002, 24.24609375], + [70.57929687500001, 24.279052734375], + [70.55585937500001, 24.331103515625003], + [70.5650390625, 24.385791015625003], + [70.54677734375002, 24.41831054687499], + [70.4892578125, 24.412158203125003], + [70.2890625, 24.35629882812499], + [70.0982421875, 24.2875], + [70.06513671875001, 24.24057617187499], + [70.02109375, 24.191552734374994], + [69.93378906250001, 24.17138671875], + [69.80517578125, 24.165234375], + [69.71621093750002, 24.172607421875], + [69.63417968750002, 24.22519531249999], + [69.5591796875, 24.273095703124994], + [69.44345703125, 24.275390625], + [69.23505859375001, 24.268261718749997], + [69.11953125000002, 24.26865234374999], + [69.05156250000002, 24.286328125], + [68.98457031250001, 24.273095703124994], + [68.90078125000002, 24.292431640624997], + [68.86347656250001, 24.266503906249994], + [68.82832031250001, 24.26401367187499], + [68.8, 24.30908203125], + [68.78115234375002, 24.313720703125], + [68.75898437500001, 24.30722656249999], + [68.73964843750002, 24.2919921875], + [68.728125, 24.265625], + [68.72412109375, 23.96469726562499], + [68.58662109375001, 23.966601562500003], + [68.48867187500002, 23.967236328124997], + [68.38125, 23.950878906249997], + [68.28251953125002, 23.927978515625], + [68.23417968750002, 23.900537109374994], + [68.1650390625, 23.857324218749994], + [68.14882812500002, 23.79721679687499], + [68.11552734375002, 23.753369140624997], + [68.06777343750002, 23.818359375], + [68.03701171875002, 23.84824218749999], + [68.00146484375, 23.826074218749994], + [67.95097656250002, 23.82861328125], + [67.8599609375, 23.90268554687499], + [67.81904296875001, 23.828076171874997], + [67.66845703125, 23.810986328124997], + [67.64951171875, 23.86728515624999], + [67.64580078125002, 23.919873046874997], + [67.5630859375, 23.8818359375], + [67.50361328125001, 23.94003906249999], + [67.47685546875002, 24.018261718749997], + [67.45390625000002, 24.03989257812499], + [67.42763671875002, 24.06484375], + [67.365234375, 24.091601562500003], + [67.309375, 24.1748046875], + [67.304296875, 24.262890625], + [67.288671875, 24.36777343749999], + [67.171484375, 24.756103515625], + [67.1005859375, 24.791943359374997], + [66.70302734375002, 24.8609375], + [66.6822265625, 24.928857421874994], + [66.70986328125002, 25.111328125], + [66.69863281250002, 25.226318359375], + [66.569921875, 25.378515625], + [66.53388671875001, 25.484375], + [66.42861328125002, 25.575341796874994], + [66.32421875, 25.601806640625], + [66.21904296875002, 25.589892578125003], + [66.16230468750001, 25.55390625], + [66.13115234375002, 25.49326171874999], + [66.3564453125, 25.507373046875003], + [66.40712890625002, 25.485058593749997], + [66.46767578125002, 25.4453125], + [66.4029296875, 25.446826171875003], + [66.32832031250001, 25.465771484374997], + [66.23466796875002, 25.46435546875], + [65.88359375000002, 25.419628906249997], + [65.6796875, 25.355273437500003], + [65.40625, 25.374316406250003], + [65.06132812500002, 25.311083984375003], + [64.77666015625002, 25.307324218749997], + [64.65898437500002, 25.18408203125], + [64.59404296875002, 25.206298828125], + [64.54375, 25.23666992187499], + [64.15205078125001, 25.333447265624997], + [64.12490234375002, 25.373925781249994], + [64.059375, 25.40292968749999], + [63.9873046875, 25.351171875], + [63.935546875, 25.342529296875], + [63.72089843750001, 25.385888671874994], + [63.556640625, 25.353173828124994], + [63.495703125, 25.297509765624994], + [63.49140625000001, 25.210839843749994], + [63.285742187500006, 25.227587890625003], + [63.170019531250006, 25.2548828125], + [63.01503906250002, 25.224658203125003], + [62.66474609375001, 25.264794921874994], + [62.57246093750001, 25.25473632812499], + [62.44472656250002, 25.197265625], + [62.391210937500006, 25.152539062499997], + [62.31533203125002, 25.134912109374994], + [62.24873046875001, 25.19736328124999], + [62.19863281250002, 25.224853515625], + [62.15214843750002, 25.206640625], + [62.089453125, 25.155322265625003], + [61.90791015625001, 25.131298828124997], + [61.74365234375, 25.13818359375], + [61.56689453125, 25.186328125], + [61.587890625, 25.20234375], + [61.61542968750001, 25.2861328125], + [61.64013671875, 25.584619140624994], + [61.67138671875, 25.6923828125], + [61.66181640625001, 25.751269531250003], + [61.66865234375001, 25.768994140624997], + [61.73769531250002, 25.82109375], + [61.75439453125, 25.843359375], + [61.78076171875, 25.995849609375], + [61.80996093750002, 26.165283203125], + [61.842382812500006, 26.225927734375], + [61.86982421875001, 26.242431640625], + [62.08906250000001, 26.318261718749994], + [62.1259765625, 26.368994140625], + [62.239355468750006, 26.35703125], + [62.249609375, 26.36923828125], + [62.25966796875002, 26.427490234375], + [62.31230468750002, 26.490869140624994], + [62.38505859375002, 26.542626953124994], + [62.43925781250002, 26.56103515625], + [62.63642578125001, 26.593652343749994], + [62.7515625, 26.63916015625], + [62.78662109375, 26.643896484375], + [63.09296875000001, 26.63232421875], + [63.1578125, 26.649755859375], + [63.168066406250006, 26.665576171874996], + [63.186132812500006, 26.837597656249997], + [63.24160156250002, 26.86474609375], + [63.25039062500002, 26.879248046875], + [63.2314453125, 26.99814453125], + [63.24208984375002, 27.077685546874996], + [63.30517578125, 27.124560546874996], + [63.30156250000002, 27.15146484375], + [63.25625, 27.207910156249994], + [63.19609375000002, 27.243945312499996], + [63.16679687500002, 27.252490234374996], + [62.91542968750002, 27.218408203124994], + [62.811621093750006, 27.229443359374997], + [62.76298828125002, 27.250195312499997], + [62.75273437500002, 27.265625], + [62.7625, 27.300195312499994], + [62.764257812500006, 27.356738281249996], + [62.800878906250006, 27.44453125], + [62.81201171875, 27.497021484374997], + [62.782324218750006, 27.800537109375], + [62.73974609375, 28.00205078125], + [62.7625, 28.202050781249994], + [62.75800781250001, 28.243554687499994], + [62.74941406250002, 28.252880859374997], + [62.71757812500002, 28.252783203125], + [62.564550781250006, 28.23515625], + [62.43388671875002, 28.3638671875], + [62.35302734375, 28.414746093749997], + [62.13056640625001, 28.478808593749996], + [62.03300781250002, 28.491015625], + [61.88984375000001, 28.546533203124994], + [61.75800781250001, 28.667675781249997], + [61.623046875, 28.7916015625], + [61.56875, 28.870898437499996], + [61.50859375000002, 29.006054687499997], + [61.337890625, 29.264990234375], + [61.339453125, 29.331787109375], + [61.318359375, 29.372607421874996], + [61.15214843750002, 29.542724609375], + [61.0341796875, 29.663427734375], + [60.843359375, 29.858691406249996], + [61.22441406250002, 29.749414062499994], + [61.521484375, 29.665673828124994], + [62.0009765625, 29.530419921874994], + [62.37343750000002, 29.425390625], + [62.4765625, 29.408349609374994], + [63.56757812500001, 29.497998046874997], + [63.97099609375002, 29.430078125], + [64.09873046875, 29.391943359375], + [64.11796875000002, 29.414257812499997], + [64.17216796875002, 29.460351562499994], + [64.26611328125, 29.50693359375], + [64.39375, 29.544335937499994], + [64.52109375, 29.564501953124996], + [64.70351562500002, 29.567138671875], + [64.82734375000001, 29.564160156249997], + [64.9189453125, 29.552783203124996], + [65.09550781250002, 29.559472656249994], + [65.18046875000002, 29.57763671875], + [65.47099609375002, 29.6515625], + [65.66621093750001, 29.701318359374994], + [65.96162109375001, 29.77890625], + [66.17705078125002, 29.835595703124994], + [66.23125, 29.86572265625], + [66.28691406250002, 29.92001953125], + [66.31337890625002, 29.968554687499996], + [66.24716796875, 30.043505859374996], + [66.23847656250001, 30.109619140625], + [66.2818359375, 30.19345703125], + [66.30546875000002, 30.321142578125], + [66.30097656250001, 30.502978515624996], + [66.28691406250002, 30.60791015625], + [66.346875, 30.802783203124996], + [66.39716796875001, 30.91220703125], + [66.49736328125002, 30.964550781249997], + [66.56679687500002, 30.99658203125], + [66.59580078125, 31.019970703124997], + [66.62421875000001, 31.046044921874994], + [66.73134765625002, 31.19453125], + [66.82929687500001, 31.263671875], + [66.92431640625, 31.305615234374997], + [67.02773437500002, 31.300244140624997], + [67.11591796875001, 31.242919921875], + [67.28730468750001, 31.217822265624996], + [67.45283203125001, 31.234619140625], + [67.59638671875001, 31.277685546875], + [67.66152343750002, 31.31298828125], + [67.737890625, 31.343945312499997], + [67.73349609375, 31.379248046875], + [67.6470703125, 31.409960937499996], + [67.59755859375002, 31.453320312499997], + [67.57822265625, 31.506494140624994], + [67.62675781250002, 31.538769531249997], + [67.73984375, 31.548193359375], + [68.0171875, 31.677978515625], + [68.13017578125002, 31.76328125], + [68.16103515625002, 31.802978515625], + [68.21396484375, 31.807373046875], + [68.31982421875, 31.76767578125], + [68.44326171875002, 31.7544921875], + [68.52070312500001, 31.794140625], + [68.59765625, 31.802978515625], + [68.67324218750002, 31.759716796874997], + [68.71367187500002, 31.708056640624996], + [68.78232421875, 31.646435546874997], + [68.86894531250002, 31.634228515624997], + [68.97343750000002, 31.667382812499994], + [69.08310546875, 31.738476562499997], + [69.18691406250002, 31.838085937499997], + [69.279296875, 31.936816406249996], + [69.25654296875001, 32.249462890625], + [69.24140625000001, 32.433544921875], + [69.28994140625002, 32.530566406249996], + [69.35947265625, 32.59033203125], + [69.40537109375, 32.68271484375], + [69.40458984375002, 32.7642578125], + [69.453125, 32.8328125], + [69.5015625, 33.020068359374996], + [69.56777343750002, 33.06416015625], + [69.7037109375, 33.0947265625], + [69.92011718750001, 33.1125], + [70.09023437500002, 33.198095703125], + [70.26113281250002, 33.289013671875], + [70.2841796875, 33.369042968749994], + [70.2197265625, 33.4546875], + [70.13417968750002, 33.620751953124994], + [70.056640625, 33.719873046874994], + [69.86806640625002, 33.89765625], + [69.8896484375, 34.007275390625], + [69.9947265625, 34.051806640624996], + [70.25361328125001, 33.975976562499994], + [70.32568359375, 33.9611328125], + [70.41572265625001, 33.950439453125], + [70.65400390625001, 33.952294921874994], + [70.84843750000002, 33.981884765625], + [71.05156250000002, 34.049707031249994], + [71.09130859375, 34.120263671874994], + [71.08906250000001, 34.204052734375], + [71.0923828125, 34.273242187499996], + [71.095703125, 34.369433593749996], + [71.02294921875, 34.43115234375], + [70.97890625000002, 34.486279296875], + [70.965625, 34.53037109375], + [71.01630859375001, 34.554638671875], + [71.065625, 34.599609375], + [71.11328125, 34.681591796875], + [71.22578125000001, 34.779541015625], + [71.29414062500001, 34.867724609374996], + [71.35810546875001, 34.909619140625], + [71.455078125, 34.966943359374994], + [71.51708984375, 35.051123046875], + [71.5455078125, 35.101416015625], + [71.60166015625, 35.150683593749996], + [71.62050781250002, 35.183007812499994], + [71.60527343750002, 35.211767578125], + [71.57724609375, 35.247998046875], + [71.5455078125, 35.288867187499996], + [71.5455078125, 35.328515625], + [71.57197265625001, 35.370410156249996], + [71.6005859375, 35.40791015625], + [71.58740234375, 35.460839843749994], + [71.57197265625001, 35.546826171875], + [71.51904296875, 35.597509765625], + [71.48359375000001, 35.714599609375], + [71.42753906250002, 35.833740234375], + [71.39755859375, 35.880175781249996], + [71.34287109375, 35.938525390624996], + [71.22021484375, 36.00068359375], + [71.18505859375, 36.04208984375], + [71.23291015625, 36.12177734375], + [71.31259765625, 36.171191406249996], + [71.46328125000002, 36.293261718749996], + [71.5458984375, 36.377685546875], + [71.62050781250002, 36.436474609375], + [71.71640625, 36.4265625], + [71.77265625000001, 36.4318359375], + [71.822265625, 36.486083984375], + [71.92070312500002, 36.5341796875], + [72.09560546875002, 36.633740234375], + [72.15673828125, 36.70087890625], + [72.24980468750002, 36.734716796875], + [72.32695312500002, 36.7423828125], + [72.43115234375, 36.7658203125], + [72.53134765625, 36.802001953125], + [72.62285156250002, 36.82958984375], + [72.7662109375, 36.835009765624996], + [72.99375, 36.851611328124996], + [73.116796875, 36.868554687499994], + [73.4111328125, 36.881689453125], + [73.73183593750002, 36.88779296875], + [73.769140625, 36.888476562499996], + [73.9078125, 36.852929687499994], + [74.00185546875002, 36.823095703125], + [74.03886718750002, 36.825732421874996], + [74.19472656250002, 36.896875], + [74.43105468750002, 36.983691406249996], + [74.54140625000002, 37.02216796875], + [74.6005859375, 37.036669921874996], + [74.69218750000002, 37.0357421875], + [74.76601562500002, 37.012744140624996], + [74.84121093750002, 36.9791015625], + [74.8892578125, 36.952441406249996], + [74.94912109375002, 36.968359375], + [75.05390625000001, 36.987158203125], + [75.14521484375001, 36.9732421875], + [75.3466796875, 36.913476562499994], + [75.37685546875002, 36.883691406249994], + [75.42421875000002, 36.738232421875], + [75.46025390625002, 36.725048828125], + [75.57373046875, 36.759326171874996], + [75.66718750000001, 36.741992187499996], + [75.77216796875001, 36.694921875], + [75.84023437500002, 36.649707031249996], + [75.88496093750001, 36.600732421874994], + [75.93300781250002, 36.52158203125], + [75.95185546875001, 36.45810546875], + [75.97441406250002, 36.382421875], + [75.96865234375002, 36.168847656249994], + [75.93408203125, 36.133935546874994], + [75.9048828125, 36.0884765625], + [75.91230468750001, 36.048974609374994], + [75.94511718750002, 36.017578125], + [76.01044921875001, 35.996337890625], + [76.07089843750003, 35.9830078125], + [76.10332031249999, 35.94921875], + [76.14785156250002, 35.829003906249994], + [76.17783203125003, 35.810546875], + [76.25166015625001, 35.8109375], + [76.3857421875, 35.837158203125], + [76.50205078125003, 35.878222656249996], + [76.55126953125, 35.887060546875], + [76.5634765625, 35.772998046874996], + [76.6318359375, 35.729394531249994], + [76.7275390625, 35.678662109375], + [76.76689453124999, 35.66171875] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Panama", + "iso_a2": "PA", + "iso_a3": "PAN", + "iso_n3": "591", + "continent": "North America" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-81.60327148437497, 7.332812499999989], + [-81.65810546874994, 7.32753906249998], + [-81.77011718750003, 7.370361328125], + [-81.85205078125003, 7.453320312500026], + [-81.85859374999993, 7.480175781249983], + [-81.85693359374994, 7.507666015624991], + [-81.812158203125, 7.59238281250002], + [-81.75229492187495, 7.621630859375031], + [-81.72875976562494, 7.62119140625002], + [-81.67143554687499, 7.5234375], + [-81.71044921874994, 7.485546875000011], + [-81.69472656249994, 7.425], + [-81.613427734375, 7.380175781250045], + [-81.60327148437497, 7.332812499999989] + ] + ], + [ + [ + [-79.06542968749994, 8.254199218750017], + [-79.11035156249994, 8.209814453125034], + [-79.1275390625, 8.251855468749994], + [-79.09628906250003, 8.295410156249986], + [-79.085302734375, 8.295800781249966], + [-79.06542968749994, 8.254199218750017] + ] + ], + [ + [ + [-78.89833984375002, 8.27426757812502], + [-78.91811523437497, 8.231933593750014], + [-78.96494140625, 8.326269531249963], + [-78.95742187499997, 8.350585937500028], + [-78.960595703125, 8.435839843749989], + [-78.91601562499997, 8.458251953125028], + [-78.88325195312495, 8.460253906249989], + [-78.85615234374995, 8.448242187500028], + [-78.83916015624996, 8.347900390625014], + [-78.85322265624998, 8.302441406249997], + [-78.89833984375002, 8.27426757812502] + ] + ], + [ + [ + [-82.23349609375003, 9.38071289062502], + [-82.24443359374993, 9.33408203125002], + [-82.32172851562495, 9.418115234374994], + [-82.27578125000002, 9.431884765625057], + [-82.25942382812497, 9.430273437499991], + [-82.23349609375003, 9.38071289062502] + ] + ], + [ + [ + [-79.35546874999997, 9.569238281249966], + [-79.21162109374998, 9.531933593750011], + [-79.11225585937498, 9.536767578125009], + [-79.01669921874998, 9.510449218749983], + [-78.975, 9.452978515624991], + [-78.93164062499997, 9.428466796874972], + [-78.69692382812502, 9.434765625000011], + [-78.50434570312495, 9.406298828124989], + [-78.08276367187494, 9.236279296874997], + [-77.83081054687497, 9.068115234375014], + [-77.69721679687501, 8.889453125000031], + [-77.37421874999993, 8.65830078125002], + [-77.39306640624994, 8.644677734374994], + [-77.44833984375003, 8.565869140625011], + [-77.47851562499994, 8.498437500000037], + [-77.40727539062502, 8.427246093750014], + [-77.385888671875, 8.351660156249977], + [-77.34550781249993, 8.269531250000043], + [-77.28261718750002, 8.187060546875017], + [-77.2123046875, 8.033886718749997], + [-77.19599609374995, 7.972460937500003], + [-77.21596679687502, 7.932519531250037], + [-77.282958984375, 7.90815429687504], + [-77.34560546874997, 7.83652343750002], + [-77.36274414062498, 7.74907226562496], + [-77.35078124999995, 7.705859375000045], + [-77.53828124999995, 7.56625976562502], + [-77.58657226562494, 7.543066406250006], + [-77.61860351562498, 7.564550781250034], + [-77.65859374999997, 7.634619140625006], + [-77.70634765625002, 7.691210937499989], + [-77.73203125, 7.710937500000014], + [-77.746923828125, 7.711865234375026], + [-77.76191406249995, 7.698828125000034], + [-77.76875, 7.668066406249977], + [-77.74389648437503, 7.536962890625006], + [-77.76469726562499, 7.483691406249989], + [-77.82832031249998, 7.442822265625011], + [-77.90117187499999, 7.229345703125048], + [-77.92978515624995, 7.256347656250043], + [-78.17011718749998, 7.543798828124977], + [-78.37822265625002, 7.899902343750057], + [-78.42158203124995, 8.060986328125011], + [-78.36762695312498, 8.070556640625], + [-78.3154296875, 8.066943359374974], + [-78.28735351562497, 8.091796874999972], + [-78.25488281250003, 8.138623046875011], + [-78.28120117187495, 8.24755859375], + [-78.18002929687495, 8.330273437499983], + [-78.14189453125002, 8.386083984374977], + [-78.11386718749998, 8.379589843749983], + [-78.04775390625002, 8.284765625000034], + [-77.95166015624997, 8.230273437500031], + [-77.833642578125, 8.151171874999989], + [-77.76054687499993, 8.133251953124983], + [-77.85292968750002, 8.216210937500009], + [-78.0125, 8.325390625000054], + [-78.05717773437499, 8.397119140625009], + [-78.09946289062498, 8.496972656250009], + [-78.16181640624998, 8.453710937499991], + [-78.190771484375, 8.417333984375034], + [-78.22304687500002, 8.396630859374994], + [-78.25112304687497, 8.421435546874989], + [-78.256103515625, 8.453710937499991], + [-78.35014648437499, 8.460009765625031], + [-78.37431640625002, 8.489257812500043], + [-78.39921874999993, 8.505664062500003], + [-78.38789062499995, 8.443408203125017], + [-78.369384765625, 8.404931640624994], + [-78.37929687499997, 8.358593749999969], + [-78.40986328124998, 8.35532226562502], + [-78.43603515624997, 8.403320312500028], + [-78.46943359374995, 8.44667968749998], + [-78.51406249999997, 8.628173828125], + [-78.62089843749999, 8.71372070312502], + [-78.66982421875, 8.742187500000057], + [-78.71020507812497, 8.752929687500014], + [-78.769677734375, 8.81108398437496], + [-78.84824218750003, 8.8421875], + [-78.95517578124995, 8.932519531250009], + [-79.08637695312495, 8.997167968750034], + [-79.2466796875, 9.020068359375003], + [-79.44150390625, 9.00600585937498], + [-79.50708007812494, 8.97006835937502], + [-79.55166015624997, 8.924462890624966], + [-79.57236328125003, 8.903271484375011], + [-79.68745117187493, 8.850976562500009], + [-79.73105468750003, 8.775341796874969], + [-79.75854492187503, 8.711572265625037], + [-79.81591796875, 8.639208984375031], + [-79.75043945312498, 8.595507812500017], + [-80.12578125, 8.349658203125017], + [-80.20009765625002, 8.313964843750028], + [-80.36870117187499, 8.288769531250054], + [-80.407568359375, 8.262451171875014], + [-80.458984375, 8.213867187499972], + [-80.46586914062499, 8.139941406250017], + [-80.45810546875, 8.077050781249994], + [-80.40913085937495, 8.028564453124972], + [-80.36557617187498, 7.997998046875054], + [-80.26093749999998, 7.851660156249991], + [-80.07519531249997, 7.667041015625045], + [-80.0400390625, 7.599804687500026], + [-80.01123046875, 7.500048828125031], + [-80.06728515624997, 7.453222656250006], + [-80.11059570312497, 7.433447265624963], + [-80.28730468750001, 7.425634765624977], + [-80.3482421875, 7.385693359375011], + [-80.37294921874997, 7.324658203125011], + [-80.4388671875, 7.274951171875003], + [-80.66669921874995, 7.225683593750006], + [-80.84555664062498, 7.22006835937502], + [-80.90122070312503, 7.277148437500017], + [-80.9146484375, 7.4375], + [-81.03510742187495, 7.711132812500054], + [-81.06386718749994, 7.89975585937502], + [-81.09394531249995, 7.876318359375048], + [-81.15781249999998, 7.854394531250023], + [-81.17939453124995, 7.807519531249966], + [-81.19545898437502, 7.668408203125054], + [-81.21904296874993, 7.620947265624977], + [-81.26840820312495, 7.625488281250014], + [-81.36958007812495, 7.675292968750028], + [-81.50415039062503, 7.721191406249972], + [-81.67568359374997, 8.015917968749974], + [-81.69428710937495, 8.071386718749991], + [-81.72763671875, 8.137548828124977], + [-81.86025390625002, 8.165429687499966], + [-81.97329101562494, 8.215087890625043], + [-82.09672851562496, 8.222753906250006], + [-82.15986328124995, 8.19482421875], + [-82.22431640624993, 8.230371093749966], + [-82.23544921874998, 8.311035156250057], + [-82.36484374999995, 8.274853515624969], + [-82.53095703124995, 8.287402343750031], + [-82.67954101562503, 8.321972656249969], + [-82.78115234374994, 8.303515625000031], + [-82.86611328124994, 8.246337890625014], + [-82.85434570312503, 8.099511718750037], + [-82.87934570312498, 8.07065429687502], + [-82.88330078124997, 8.130566406249969], + [-82.91289062499996, 8.199609375], + [-82.94843750000001, 8.256835937500028], + [-83.02338867187501, 8.316015625], + [-83.02734375, 8.337744140624991], + [-82.99755859374997, 8.367773437499977], + [-82.86162109374999, 8.453515625000037], + [-82.84477539062493, 8.489355468749963], + [-82.84262695312495, 8.563964843749986], + [-82.85571289062494, 8.635302734375031], + [-82.91704101562502, 8.740332031250034], + [-82.88198242187497, 8.805322265625037], + [-82.8119140625, 8.857421874999986], + [-82.739990234375, 8.898583984375023], + [-82.72783203125002, 8.916064453125031], + [-82.74116210937498, 8.951708984375017], + [-82.78305664062498, 8.990283203124974], + [-82.88134765625003, 9.055859375000011], + [-82.94033203124997, 9.060107421874989], + [-82.94282226562493, 9.248876953124977], + [-82.93984374999994, 9.449169921875026], + [-82.92504882812494, 9.469042968749989], + [-82.88896484374999, 9.481005859375017], + [-82.86015625, 9.511474609375014], + [-82.84399414062497, 9.570800781250014], + [-82.801025390625, 9.591796875000028], + [-82.723388671875, 9.546093750000054], + [-82.64409179687502, 9.505859375000028], + [-82.61127929687498, 9.519238281249997], + [-82.5865234375, 9.538818359374986], + [-82.56923828124994, 9.558203125000034], + [-82.56357421875003, 9.576660156249972], + [-82.50034179687503, 9.523242187500017], + [-82.37080078124993, 9.428564453124991], + [-82.36318359374997, 9.381933593750006], + [-82.37539062499997, 9.337255859375048], + [-82.33974609375, 9.209179687499983], + [-82.27246093749997, 9.190625], + [-82.20488281249996, 9.215429687500006], + [-82.18813476562502, 9.191748046874977], + [-82.20068359375, 9.168115234375051], + [-82.23544921874998, 9.141650390624989], + [-82.24418945312499, 9.031494140625014], + [-82.13330078124994, 8.98007812500002], + [-82.07788085937503, 8.93486328124996], + [-81.89414062499998, 8.956103515625017], + [-81.82641601562494, 8.944091796874972], + [-81.78022460937495, 8.957226562499983], + [-81.83149414062501, 9.045605468750054], + [-81.90014648437497, 9.111035156249969], + [-81.89448242187495, 9.140429687500003], + [-81.8423828125, 9.118701171875017], + [-81.80258789062498, 9.074121093749994], + [-81.71220703124996, 9.018945312500037], + [-81.54560546874995, 8.827001953125006], + [-81.35478515624996, 8.78056640624996], + [-81.20375976562502, 8.786718749999977], + [-81.06308593749998, 8.812646484375023], + [-80.83867187499999, 8.887207031250014], + [-80.67646484374998, 9.021875], + [-80.54687, 9.081933593749994], + [-80.12709960937497, 9.20991210937504], + [-79.97797851562495, 9.343701171875026], + [-79.91508789062493, 9.361328124999972], + [-79.85507812499998, 9.378076171875009], + [-79.72309570312501, 9.479296875000031], + [-79.65224609374997, 9.558203125000034], + [-79.57729492187497, 9.597851562500026], + [-79.35546874999997, 9.569238281249966] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "Pitcairn Is.", + "iso_a2": "PN", + "iso_a3": "PCN", + "iso_n3": "612", + "continent": "Oceania" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-128.290087890625, -24.39736328125001], + [-128.3, -24.41259765625], + [-128.320654296875, -24.399707031250003], + [-128.3421875, -24.370703125], + [-128.3501953125, -24.340234375], + [-128.330126953125, -24.3232421875], + [-128.30361328125, -24.33359375], + [-128.2908203125, -24.36464843750001], + [-128.290087890625, -24.39736328125001] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Peru", + "iso_a2": "PE", + "iso_a3": "PER", + "iso_n3": "604", + "continent": "South America" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-69.96591796874999, -4.2359375], + [-69.97202148437499, -4.301171875], + [-70.00395507812499, -4.327246093750006], + [-70.05332031249999, -4.333105468750006], + [-70.12880859375, -4.28662109375], + [-70.183984375, -4.298144531250003], + [-70.23916015625, -4.301171875], + [-70.31689453125, -4.246972656250009], + [-70.34365234375, -4.193652343750003], + [-70.40463867187499, -4.150097656250011], + [-70.5306640625, -4.167578125], + [-70.63457031249999, -4.168652343750011], + [-70.72158203125, -4.158886718750011], + [-70.79951171875, -4.17333984375], + [-70.86601562499999, -4.229589843750006], + [-70.915625, -4.2953125], + [-70.97368164062499, -4.350488281250009], + [-71.14423828125, -4.38720703125], + [-71.235009765625, -4.38818359375], + [-71.316796875, -4.42431640625], + [-71.43828124999999, -4.437597656250006], + [-71.52133789062499, -4.4697265625], + [-71.668359375, -4.4873046875], + [-71.8447265625, -4.50439453125], + [-71.94316406249999, -4.553320312500006], + [-71.982421875, -4.574609375], + [-72.08251953125, -4.642285156250011], + [-72.256787109375, -4.748925781250009], + [-72.35283203124999, -4.786035156250009], + [-72.468994140625, -4.901269531250009], + [-72.608349609375, -5.009570312500003], + [-72.69873046875, -5.0671875], + [-72.83193359375, -5.09375], + [-72.88706054687499, -5.122753906250011], + [-72.907470703125, -5.15771484375], + [-72.89580078124999, -5.1982421875], + [-72.91826171874999, -5.302539062500003], + [-72.958935546875, -5.495214843750006], + [-72.97021484375, -5.589648437500003], + [-72.9798828125, -5.634863281250006], + [-73.06806640625, -5.78955078125], + [-73.16289062499999, -5.933398437500003], + [-73.209375, -6.028710937500009], + [-73.235546875, -6.0984375], + [-73.206494140625, -6.156445312500011], + [-73.167724609375, -6.260644531250009], + [-73.13535156249999, -6.344335937500006], + [-73.12631835937499, -6.40087890625], + [-73.137353515625, -6.4658203125], + [-73.17744140625, -6.525195312500003], + [-73.24033203124999, -6.5640625], + [-73.32548828124999, -6.57470703125], + [-73.49990234375, -6.679492187500003], + [-73.69453125, -6.833789062500003], + [-73.75810546874999, -6.90576171875], + [-73.77626953125, -6.973535156250009], + [-73.804638671875, -7.079882812500003], + [-73.79301757812499, -7.135058593750003], + [-73.758203125, -7.172753906250009], + [-73.72333984375, -7.262792968750006], + [-73.72041015625, -7.309277343750011], + [-73.749462890625, -7.335351562500009], + [-73.804638671875, -7.341210937500009], + [-73.85400390625, -7.349902343750003], + [-73.891748046875, -7.373144531250006], + [-73.929443359375, -7.367285156250006], + [-73.964306640625, -7.37890625], + [-73.964306640625, -7.416699218750011], + [-73.95268554687499, -7.460253906250003], + [-73.95849609375, -7.506640625], + [-73.98173828124999, -7.535742187500006], + [-74.00205078124999, -7.556054687500009], + [-73.98173828124999, -7.585058593750006], + [-73.946875, -7.611230468750009], + [-73.89462890624999, -7.65478515625], + [-73.82207031249999, -7.738964843750011], + [-73.76689453124999, -7.753515625], + [-73.72041015625, -7.782519531250003], + [-73.714599609375, -7.829003906250009], + [-73.73203125, -7.875390625], + [-73.772705078125, -7.895703125000011], + [-73.7755859375, -7.936425781250009], + [-73.72041015625, -7.985742187500009], + [-73.68266601562499, -8.020605468750006], + [-73.644921875, -8.072851562500006], + [-73.610107421875, -8.145410156250009], + [-73.610107421875, -8.19189453125], + [-73.57236328124999, -8.249902343750009], + [-73.54912109374999, -8.29931640625], + [-73.54912109374999, -8.345800781250006], + [-73.48813476562499, -8.3921875], + [-73.43588867187499, -8.427050781250003], + [-73.39814453125, -8.458984375], + [-73.36040039062499, -8.479296875], + [-73.351708984375, -8.51416015625], + [-73.35673828124999, -8.566992187500006], + [-73.30244140625, -8.654003906250011], + [-73.203125, -8.719335937500006], + [-73.12255859375, -8.8140625], + [-73.0705078125, -8.8828125], + [-72.9740234375, -8.9931640625], + [-72.970361328125, -9.1201171875], + [-73.08984375, -9.265722656250006], + [-73.209423828125, -9.411425781250003], + [-73.01376953124999, -9.407421875000011], + [-72.81425781249999, -9.410351562500011], + [-72.60546875, -9.452050781250009], + [-72.46474609375, -9.4921875], + [-72.379052734375, -9.51015625], + [-72.31806640625, -9.556640625], + [-72.289013671875, -9.629199218750003], + [-72.2658203125, -9.6884765625], + [-72.2599609375, -9.774316406250009], + [-72.1728515625, -9.844042968750003], + [-72.1791015625, -9.91015625], + [-72.181591796875, -10.003710937500003], + [-72.14296875, -10.005175781250003], + [-71.887451171875, -10.005566406250011], + [-71.60800781249999, -10.006054687500011], + [-71.33940429687499, -9.988574218750003], + [-71.237939453125, -9.966015625000011], + [-71.11528320312499, -9.852441406250009], + [-71.041748046875, -9.81875], + [-70.97075195312499, -9.765722656250006], + [-70.884521484375, -9.669042968750006], + [-70.81625976562499, -9.625292968750003], + [-70.75849609375, -9.571679687500009], + [-70.67246093749999, -9.51796875], + [-70.6369140625, -9.478222656250011], + [-70.60791015625, -9.463671875], + [-70.54111328124999, -9.4375], + [-70.57016601562499, -9.48984375], + [-70.592236328125, -9.54345703125], + [-70.59916992187499, -9.620507812500009], + [-70.56723632812499, -9.70458984375], + [-70.59379882812499, -9.767480468750009], + [-70.6369140625, -9.82373046875], + [-70.63759765625, -9.971777343750006], + [-70.63852539062499, -10.181542968750009], + [-70.63935546875, -10.361328125], + [-70.64033203125, -10.586035156250006], + [-70.641552734375, -10.8408203125], + [-70.642333984375, -11.01025390625], + [-70.59653320312499, -10.976855468750003], + [-70.53325195312499, -10.946875], + [-70.45087890625, -11.024804687500009], + [-70.39228515625, -11.05859375], + [-70.3419921875, -11.066699218750003], + [-70.29038085937499, -11.064257812500003], + [-70.22006835937499, -11.04765625], + [-70.06630859375, -10.982421875], + [-69.9603515625, -10.929882812500011], + [-69.839794921875, -10.933398437500003], + [-69.6740234375, -10.9541015625], + [-69.57861328125, -10.951757812500006], + [-69.45361328125, -11.16875], + [-69.36201171875, -11.327539062500009], + [-69.25771484375, -11.50859375], + [-69.17373046875, -11.654296875], + [-69.04619140624999, -11.875683593750011], + [-68.93603515625, -12.066796875], + [-68.81870117187499, -12.270410156250009], + [-68.68525390625, -12.501953125], + [-68.728125, -12.560742187500011], + [-68.762890625, -12.607714843750003], + [-68.75908203124999, -12.687207031250011], + [-68.81181640624999, -12.729589843750006], + [-68.86767578125, -12.755175781250003], + [-68.933740234375, -12.822070312500003], + [-68.97861328124999, -12.880078125000011], + [-68.98051757812499, -12.962597656250011], + [-68.972265625, -13.38232421875], + [-68.98344726562499, -13.496386718750003], + [-69.017529296875, -13.594433593750011], + [-69.05283203124999, -13.643945312500009], + [-69.07412109375, -13.682812500000011], + [-69.023046875, -13.7802734375], + [-68.974267578125, -13.975976562500009], + [-68.937451171875, -14.0146484375], + [-68.89169921874999, -14.094335937500006], + [-68.87089843749999, -14.169726562500003], + [-68.880322265625, -14.198828125], + [-68.97177734374999, -14.234375], + [-69.00449218749999, -14.265039062500009], + [-69.013134765625, -14.377246093750003], + [-69.05278320312499, -14.417578125], + [-69.11972656249999, -14.4703125], + [-69.16269531249999, -14.530957031250011], + [-69.19926757812499, -14.572558593750003], + [-69.23491210937499, -14.597070312500009], + [-69.25234375, -14.671093750000011], + [-69.276025390625, -14.745898437500003], + [-69.35947265624999, -14.7953125], + [-69.37373046875, -14.8875], + [-69.37470703125, -14.962988281250006], + [-69.330712890625, -15.038964843750009], + [-69.187109375, -15.19873046875], + [-69.17246093749999, -15.236621093750003], + [-69.254296875, -15.332910156250009], + [-69.301904296875, -15.3994140625], + [-69.41850585937499, -15.603417968750009], + [-69.4208984375, -15.640625], + [-69.39189453124999, -15.736914062500006], + [-69.21757812499999, -16.14912109375001], + [-69.18798828125, -16.18281250000001], + [-69.1341796875, -16.221972656250003], + [-69.04624023437499, -16.21767578125001], + [-68.9134765625, -16.26191406250001], + [-68.848828125, -16.312792968750003], + [-68.8427734375, -16.337890625], + [-68.8578125, -16.354785156250003], + [-68.92802734374999, -16.3890625], + [-69.00625, -16.433691406250006], + [-69.03291015625, -16.47597656250001], + [-69.03837890624999, -16.54267578125001], + [-69.020703125, -16.6421875], + [-69.05454101562499, -16.67431640625], + [-69.13251953125, -16.71308593750001], + [-69.19980468749999, -16.76845703125001], + [-69.267236328125, -16.8609375], + [-69.38154296875, -17.00136718750001], + [-69.42109375, -17.0400390625], + [-69.43833007812499, -17.08837890625], + [-69.5033203125, -17.104785156250003], + [-69.62485351562499, -17.2001953125], + [-69.645703125, -17.24853515625], + [-69.62587890625, -17.29443359375], + [-69.56381835937499, -17.33291015625001], + [-69.521923828125, -17.388964843750003], + [-69.510986328125, -17.46035156250001], + [-69.51108398437499, -17.5048828125], + [-69.5109375, -17.50605468750001], + [-69.58642578125, -17.5732421875], + [-69.684765625, -17.64980468750001], + [-69.806103515625, -17.66494140625001], + [-69.85209960937499, -17.70380859375001], + [-69.84150390625, -17.78515625], + [-69.80244140625, -17.9], + [-69.80258789062499, -17.990234375], + [-69.83969726562499, -18.09345703125001], + [-69.92636718749999, -18.2060546875], + [-70.05908203125, -18.283496093750003], + [-70.1837890625, -18.3251953125], + [-70.28227539062499, -18.32539062500001], + [-70.37749023437499, -18.33359375], + [-70.41826171874999, -18.34560546875001], + [-70.4916015625, -18.277734375], + [-70.81748046874999, -18.052539062500003], + [-70.94169921874999, -17.93203125], + [-71.056591796875, -17.87568359375001], + [-71.33696289062499, -17.68251953125001], + [-71.36494140625, -17.62050781250001], + [-71.3994140625, -17.421972656250006], + [-71.43588867187499, -17.366015625], + [-71.5322265625, -17.29433593750001], + [-71.77446289062499, -17.198828125], + [-71.868359375, -17.15107421875001], + [-71.96689453124999, -17.0640625], + [-72.111279296875, -17.002539062500006], + [-72.26860351562499, -16.87617187500001], + [-72.3625, -16.775], + [-72.46767578125, -16.708105468750006], + [-72.7939453125, -16.614550781250003], + [-72.95771484375, -16.52089843750001], + [-73.26376953124999, -16.38857421875001], + [-73.400048828125, -16.304296875], + [-73.727685546875, -16.20166015625], + [-73.824951171875, -16.15283203125], + [-74.14707031249999, -15.9125], + [-74.37290039062499, -15.833984375], + [-74.5548828125, -15.699023437500003], + [-75.104248046875, -15.411914062500003], + [-75.19052734374999, -15.320117187500003], + [-75.274560546875, -15.178125], + [-75.39658203124999, -15.093554687500003], + [-75.533642578125, -14.89921875], + [-75.7376953125, -14.784960937500003], + [-75.93388671874999, -14.63359375], + [-76.006298828125, -14.495800781250011], + [-76.136474609375, -14.3203125], + [-76.17514648437499, -14.226660156250006], + [-76.289013671875, -14.133105468750003], + [-76.297021484375, -13.948437500000011], + [-76.37646484375, -13.863085937500003], + [-76.319482421875, -13.821484375000011], + [-76.259228515625, -13.802832031250006], + [-76.18393554687499, -13.515234375], + [-76.2236328125, -13.371191406250006], + [-76.42734375, -13.109960937500006], + [-76.5021484375, -12.984375], + [-76.55522460937499, -12.823437500000011], + [-76.637109375, -12.72802734375], + [-76.7580078125, -12.527148437500003], + [-76.83212890624999, -12.348730468750006], + [-76.994091796875, -12.21923828125], + [-77.03813476562499, -12.172753906250009], + [-77.0626953125, -12.106835937500009], + [-77.152734375, -12.060351562500003], + [-77.1576171875, -11.9234375], + [-77.2203125, -11.663378906250003], + [-77.30991210937499, -11.532421875000011], + [-77.633203125, -11.287792968750011], + [-77.63857421875, -11.193554687500011], + [-77.664306640625, -11.022070312500006], + [-77.736083984375, -10.83671875], + [-78.095458984375, -10.260644531250009], + [-78.18559570312499, -10.089062500000011], + [-78.2755859375, -9.810351562500003], + [-78.35649414062499, -9.652050781250011], + [-78.44565429687499, -9.37060546875], + [-78.58012695312499, -9.156640625], + [-78.66459960937499, -8.97109375], + [-78.75458984375, -8.740429687500011], + [-78.76225585937499, -8.616992187500003], + [-78.925390625, -8.404589843750003], + [-79.01225585937499, -8.210156250000011], + [-79.16440429687499, -8.047167968750003], + [-79.31284179687499, -7.923242187500009], + [-79.37724609374999, -7.835546875], + [-79.5888671875, -7.4189453125], + [-79.61772460937499, -7.295605468750011], + [-79.761962890625, -7.066503906250006], + [-79.9046875, -6.901660156250003], + [-79.99497070312499, -6.768945312500009], + [-80.11025390625, -6.649609375000011], + [-80.81162109374999, -6.2822265625], + [-81.05844726562499, -6.12939453125], + [-81.142041015625, -6.056738281250006], + [-81.18051757812499, -5.9423828125], + [-81.164306640625, -5.875292968750003], + [-81.09184570312499, -5.812402343750009], + [-80.991650390625, -5.8609375], + [-80.9306640625, -5.8408203125], + [-80.88271484375, -5.758984375000011], + [-80.88193359374999, -5.635058593750003], + [-80.943115234375, -5.475390625], + [-81.16767578125, -5.167089843750006], + [-81.15073242187499, -5.101855468750003], + [-81.10849609374999, -5.02783203125], + [-81.195068359375, -4.879492187500006], + [-81.28940429687499, -4.7607421875], + [-81.33662109375, -4.66953125], + [-81.283203125, -4.322265625], + [-81.23203125, -4.234277343750009], + [-80.89194335937499, -3.881640625], + [-80.798583984375, -3.731054687500006], + [-80.652734375, -3.63818359375], + [-80.503662109375, -3.49609375], + [-80.324658203125, -3.387890625000011], + [-80.29833984375, -3.406445312500011], + [-80.27353515624999, -3.424609375], + [-80.271875, -3.461035156250006], + [-80.265234375, -3.492480468750003], + [-80.24541015624999, -3.522167968750011], + [-80.24375, -3.576757812500006], + [-80.22060546875, -3.613183593750009], + [-80.2189453125, -3.654492187500011], + [-80.21728515625, -3.710742187500003], + [-80.22885742187499, -3.738867187500006], + [-80.21757812499999, -3.787695312500006], + [-80.17924804687499, -3.877734375], + [-80.19414062499999, -3.905859375], + [-80.23051757812499, -3.924023437500011], + [-80.26689453124999, -3.948828125], + [-80.30327148437499, -4.005078125000011], + [-80.357861328125, -4.00341796875], + [-80.43720703125, -3.978613281250006], + [-80.49013671875, -4.010058593750003], + [-80.510009765625, -4.069531250000011], + [-80.49345703124999, -4.119140625], + [-80.4884765625, -4.16552734375], + [-80.453759765625, -4.205175781250006], + [-80.35288085937499, -4.20849609375], + [-80.44384765625, -4.335839843750009], + [-80.4884765625, -4.393652343750006], + [-80.47856445312499, -4.430078125], + [-80.42416992187499, -4.46142578125], + [-80.38349609375, -4.463671875], + [-80.293359375, -4.416796875], + [-80.232177734375, -4.349023437500009], + [-80.1974609375, -4.31103515625], + [-80.13955078125, -4.296093750000011], + [-80.06352539062499, -4.327539062500009], + [-79.962890625, -4.390332031250011], + [-79.8451171875, -4.445898437500006], + [-79.797265625, -4.476367187500003], + [-79.71098632812499, -4.467578125], + [-79.63852539062499, -4.454882812500003], + [-79.57768554687499, -4.500585937500006], + [-79.51616210937499, -4.539160156250006], + [-79.501904296875, -4.670605468750011], + [-79.45576171875, -4.766210937500006], + [-79.3994140625, -4.840039062500011], + [-79.33095703125, -4.927832031250006], + [-79.26811523437499, -4.957617187500006], + [-79.186669921875, -4.958203125000011], + [-79.07626953124999, -4.990625], + [-79.03330078124999, -4.969140625], + [-78.995263671875, -4.908007812500003], + [-78.97539062499999, -4.873242187500011], + [-78.919189453125, -4.8583984375], + [-78.914208984375, -4.818652343750003], + [-78.92578125, -4.770703125000011], + [-78.9076171875, -4.714453125], + [-78.8615234375, -4.6650390625], + [-78.74306640625, -4.592675781250009], + [-78.68603515625, -4.562402343750009], + [-78.674462890625, -4.517675781250006], + [-78.65292968749999, -4.458203125000011], + [-78.66123046874999, -4.425097656250003], + [-78.68515625, -4.383984375000011], + [-78.67939453125, -4.325878906250011], + [-78.64799804687499, -4.248144531250006], + [-78.60336914062499, -4.157324218750006], + [-78.56513671875, -4.041601562500006], + [-78.550439453125, -3.986914062500006], + [-78.50908203124999, -3.9521484375], + [-78.49345703124999, -3.902050781250011], + [-78.47104492187499, -3.843066406250003], + [-78.41977539062499, -3.77685546875], + [-78.42143554687499, -3.705761718750011], + [-78.39995117187499, -3.67431640625], + [-78.398046875, -3.594824218750006], + [-78.347265625, -3.43125], + [-78.345361328125, -3.397363281250009], + [-78.32304687499999, -3.38828125], + [-78.2841796875, -3.399023437500006], + [-78.250732421875, -3.436132812500006], + [-78.240380859375, -3.472558593750009], + [-78.226318359375, -3.489160156250009], + [-78.19487304687499, -3.48583984375], + [-78.15849609374999, -3.465136718750003], + [-78.16098632812499, -3.43212890625], + [-78.187451171875, -3.399804687500009], + [-78.19462890624999, -3.38046875], + [-78.18330078125, -3.350195312500006], + [-78.12822265624999, -3.283886718750011], + [-78.06791992187499, -3.206835937500003], + [-77.9384765625, -3.046972656250006], + [-77.860595703125, -2.981640625000011], + [-77.65898437499999, -2.912402343750003], + [-77.506494140625, -2.859960937500006], + [-77.36005859375, -2.809667968750006], + [-77.16147460937499, -2.737695312500009], + [-76.88076171875, -2.635937500000011], + [-76.6791015625, -2.562597656250006], + [-76.49936523437499, -2.432324218750011], + [-76.36015624999999, -2.331347656250003], + [-76.24091796875, -2.243945312500003], + [-76.089794921875, -2.133105468750003], + [-75.88544921875, -1.893457031250009], + [-75.74453125, -1.728125], + [-75.64165039062499, -1.607324218750009], + [-75.570556640625, -1.53125], + [-75.5138671875, -1.316308593750009], + [-75.449169921875, -1.071191406250009], + [-75.42041015625, -0.962207031250003], + [-75.40805664062499, -0.92431640625], + [-75.380126953125, -0.940234375], + [-75.34819335937499, -0.966796875], + [-75.30917968749999, -0.968066406250003], + [-75.272412109375, -0.966796875], + [-75.249609375, -0.951855468750011], + [-75.28359375, -0.707128906250006], + [-75.2787109375, -0.65390625], + [-75.259375, -0.590136718750003], + [-75.26323242187499, -0.555371093750011], + [-75.32524414062499, -0.506542968750011], + [-75.42470703125, -0.408886718750011], + [-75.465966796875, -0.32177734375], + [-75.49106445312499, -0.248339843750003], + [-75.56059570312499, -0.200097656250009], + [-75.63203125, -0.157617187500009], + [-75.62626953124999, -0.122851562500003], + [-75.583740234375, -0.122851562500003], + [-75.4759765625, -0.157128906250009], + [-75.398388671875, -0.14599609375], + [-75.340478515625, -0.1421875], + [-75.28447265624999, -0.106542968750006], + [-75.224609375, -0.041748046875], + [-75.18408203125, -0.041748046875], + [-75.13837890625, -0.050488281250011], + [-75.0546875, -0.11669921875], + [-75.00498046874999, -0.155859375], + [-74.9453125, -0.188183593750011], + [-74.888818359375, -0.199414062500011], + [-74.8375, -0.203320312500011], + [-74.8017578125, -0.200097656250009], + [-74.78046875, -0.24453125], + [-74.75537109375, -0.298632812500003], + [-74.691650390625, -0.335253906250003], + [-74.616357421875, -0.370019531250009], + [-74.555078125, -0.429882812500011], + [-74.5138671875, -0.470117187500009], + [-74.46518554687499, -0.517675781250006], + [-74.41787109375, -0.580664062500006], + [-74.37490234375, -0.69140625], + [-74.353125, -0.7666015625], + [-74.32861328125, -0.808398437500003], + [-74.334423828125, -0.850878906250003], + [-74.28388671875, -0.927832031250006], + [-74.24638671874999, -0.970605468750009], + [-74.18076171874999, -0.997753906250011], + [-74.05439453125, -1.028613281250003], + [-73.98681640625, -1.09814453125], + [-73.926953125, -1.125195312500011], + [-73.86318359375, -1.196679687500009], + [-73.80717773437499, -1.217968750000011], + [-73.7357421875, -1.214160156250003], + [-73.664306640625, -1.248828125], + [-73.61025390625, -1.31640625], + [-73.57548828124999, -1.4013671875], + [-73.52138671875, -1.44970703125], + [-73.4943359375, -1.53662109375], + [-73.52524414062499, -1.638867187500011], + [-73.4962890625, -1.693066406250011], + [-73.44028320312499, -1.737402343750006], + [-73.34951171875, -1.783886718750011], + [-73.26645507812499, -1.772265625], + [-73.22397460937499, -1.787695312500006], + [-73.19697265625, -1.830273437500011], + [-73.18149414062499, -1.88037109375], + [-73.14521484375, -2.003320312500009], + [-73.12651367187499, -2.0810546875], + [-73.16020507812499, -2.156347656250006], + [-73.17265624999999, -2.208398437500009], + [-73.1544921875, -2.278222656250009], + [-73.06816406249999, -2.31201171875], + [-72.9896484375, -2.339746093750009], + [-72.94111328125, -2.39404296875], + [-72.887158203125, -2.408496093750003], + [-72.81123046875, -2.405468750000011], + [-72.71416015624999, -2.3921875], + [-72.66015625, -2.361035156250011], + [-72.62534179687499, -2.351660156250006], + [-72.58671874999999, -2.365136718750009], + [-72.50068359375, -2.39501953125], + [-72.39560546874999, -2.428906250000011], + [-72.300732421875, -2.409277343750006], + [-72.21845703125, -2.400488281250006], + [-72.13681640624999, -2.380664062500003], + [-72.05380859374999, -2.324609375], + [-71.98427734375, -2.3265625], + [-71.93247070312499, -2.288671875], + [-71.86728515624999, -2.227734375000011], + [-71.802734375, -2.166308593750003], + [-71.75253906249999, -2.152734375], + [-71.671484375, -2.18212890625], + [-71.55947265625, -2.22421875], + [-71.49609375, -2.279199218750009], + [-71.4474609375, -2.29375], + [-71.39697265625, -2.334082031250006], + [-71.30009765624999, -2.334863281250009], + [-71.19638671874999, -2.313085937500006], + [-71.11337890624999, -2.245410156250003], + [-71.027294921875, -2.225781250000011], + [-70.96855468749999, -2.206835937500003], + [-70.91455078125, -2.218554687500003], + [-70.70537109374999, -2.341992187500011], + [-70.64799804687499, -2.40576171875], + [-70.57587890625, -2.418261718750003], + [-70.516796875, -2.453125], + [-70.418212890625, -2.49072265625], + [-70.36416015625, -2.529296875], + [-70.29462890625, -2.552539062500003], + [-70.24443359374999, -2.606542968750006], + [-70.16474609375, -2.639843750000011], + [-70.095849609375, -2.658203125], + [-70.06474609374999, -2.70166015625], + [-70.064453125, -2.730761718750003], + [-70.07402343749999, -2.750195312500011], + [-70.14707031249999, -2.8640625], + [-70.29013671874999, -3.087304687500009], + [-70.41899414062499, -3.288281250000011], + [-70.62167968749999, -3.604589843750006], + [-70.735107421875, -3.781542968750003], + [-70.706201171875, -3.788964843750009], + [-70.5296875, -3.866406250000011], + [-70.48583984375, -3.869335937500011], + [-70.42109375, -3.849609375], + [-70.37919921874999, -3.81875], + [-70.339501953125, -3.814355468750009], + [-70.2984375, -3.84423828125], + [-70.24028320312499, -3.882714843750009], + [-70.198388671875, -3.9951171875], + [-70.16752929687499, -4.050195312500009], + [-70.09477539062499, -4.0921875], + [-70.0171875, -4.162011718750009], + [-69.96591796874999, -4.2359375] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Philippines", + "iso_a2": "PH", + "iso_a3": "PHL", + "iso_n3": "608", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [120.250390625, 5.256591796875043], + [120.22324218750006, 5.196240234374997], + [120.19160156250004, 5.168310546874991], + [120.15, 5.184082031250014], + [120.11835937500004, 5.215380859374989], + [120.10058593749997, 5.16899414062496], + [120.01328125000012, 5.151123046875043], + [119.95810546875006, 5.079541015625026], + [119.87753906250006, 5.060205078124994], + [119.82148437500004, 5.06953125000004], + [119.82734375000004, 5.133154296875034], + [119.98271484375002, 5.22841796874998], + [120.07968750000006, 5.263623046875054], + [120.1652343750001, 5.332421875000037], + [120.20800781249997, 5.340087890625], + [120.22939453125, 5.284082031250051], + [120.250390625, 5.256591796875043] + ] + ], + [ + [ + [121.159375, 6.075634765625011], + [121.21386718750003, 6.003515624999977], + [121.28251953125007, 6.022265624999974], + [121.39150390625005, 6.002099609375037], + [121.41464843750006, 5.964501953125023], + [121.41103515625005, 5.939843749999966], + [121.29443359374997, 5.869970703125034], + [121.2181640625, 5.94272460937502], + [121.08300781249997, 5.893017578125026], + [121.01855468750003, 5.922949218749991], + [120.93066406249997, 5.896191406250054], + [120.8763671875, 5.95263671875], + [120.89824218750002, 6.006933593749963], + [121.03769531250006, 6.095996093749989], + [121.159375, 6.075634765625011] + ] + ], + [ + [ + [122.09287109375012, 6.428320312500006], + [121.99140625000004, 6.414550781250043], + [121.95917968750004, 6.415820312500045], + [121.87988281249997, 6.517578124999986], + [121.8724609375, 6.562744140625043], + [121.80869140625006, 6.61372070312504], + [121.83203125000003, 6.664062499999986], + [121.91494140625, 6.676220703124983], + [122.0583007812501, 6.740722656249972], + [122.28808593750003, 6.638916015625014], + [122.32353515625002, 6.602246093750011], + [122.25175781250007, 6.579785156250054], + [122.20097656250002, 6.482910156250028], + [122.09287109375012, 6.428320312500006] + ] + ], + [ + [ + [125.7845703125, 6.962744140624991], + [125.76894531250005, 6.905761718750028], + [125.70751953124997, 7.039990234375011], + [125.6830078125, 7.073193359375026], + [125.71445312500012, 7.185546875], + [125.78339843750004, 7.130664062500017], + [125.7845703125, 6.962744140624991] + ] + ], + [ + [ + [122.93710937500006, 7.409130859374983], + [122.94804687500007, 7.385742187500014], + [122.94365234375007, 7.361035156250054], + [122.8395507812501, 7.314599609375009], + [122.80468750000003, 7.315966796875017], + [122.79658203125004, 7.393359374999974], + [122.82216796875, 7.428466796875014], + [122.87119140625006, 7.397314453124977], + [122.91484375000007, 7.43339843749996], + [122.93710937500006, 7.409130859374983] + ] + ], + [ + [ + [117.07988281250007, 7.883398437499977], + [117.02832031249997, 7.807519531249966], + [116.96953125000007, 7.894921875], + [116.9757812500001, 8.016650390625031], + [116.9935546875, 8.050537109375014], + [117.07705078125, 8.069140624999974], + [117.07988281250007, 7.883398437499977] + ] + ], + [ + [ + [117.35527343750002, 8.21464843749996], + [117.28701171875, 8.191015625000034], + [117.27226562500002, 8.253515624999977], + [117.28085937500006, 8.314990234374974], + [117.32958984374997, 8.30849609374998], + [117.3537109375001, 8.289257812499969], + [117.35527343750002, 8.21464843749996] + ] + ], + [ + [ + [124.80664062500003, 9.142626953125003], + [124.77792968750012, 9.083105468749963], + [124.66582031250002, 9.132324218750043], + [124.6390625, 9.17509765624996], + [124.65332031250003, 9.225830078125], + [124.70810546875012, 9.243017578125034], + [124.73681640624997, 9.243164062499972], + [124.79023437500004, 9.190087890624994], + [124.80664062500003, 9.142626953125003] + ] + ], + [ + [ + [123.69765625000005, 9.237304687500028], + [123.70625, 9.133544921875028], + [123.61445312500004, 9.103320312499989], + [123.54072265625004, 9.129736328125048], + [123.49345703125002, 9.192089843750054], + [123.4935546875, 9.215527343750026], + [123.53515624999997, 9.213574218749983], + [123.62607421875012, 9.268261718750026], + [123.65488281250012, 9.278759765625026], + [123.69765625000005, 9.237304687500028] + ] + ], + [ + [ + [125.97050781250007, 9.593554687500031], + [125.95244140625002, 9.567968749999977], + [125.92207031250004, 9.621484375000037], + [125.94853515625002, 9.73920898437504], + [125.96777343749997, 9.759082031250003], + [125.99296875000002, 9.684570312500014], + [125.97050781250007, 9.593554687500031] + ] + ], + [ + [ + [126.00595703125006, 9.320947265625009], + [126.08759765625004, 9.2607421875], + [126.19335937499997, 9.276708984374963], + [126.19199218750006, 9.124902343750037], + [126.20908203125006, 9.080566406249972], + [126.30458984375, 8.952050781249994], + [126.31953125000004, 8.844726562499986], + [126.26298828125007, 8.74394531249996], + [126.22021484374997, 8.696289062500028], + [126.14160156250003, 8.627294921875006], + [126.13955078125005, 8.59565429687504], + [126.17304687500004, 8.560058593749986], + [126.28232421875006, 8.539306640625014], + [126.36533203125012, 8.483886718750014], + [126.37978515625005, 8.326757812499977], + [126.45869140625004, 8.20283203125004], + [126.45664062500006, 8.148779296875034], + [126.42529296874997, 7.927441406249983], + [126.43535156250002, 7.832812499999974], + [126.49443359375002, 7.75698242187498], + [126.54443359375003, 7.724804687499997], + [126.57011718750002, 7.677246093749986], + [126.59335937500012, 7.546777343749966], + [126.5892578125, 7.325146484375026], + [126.58154296875003, 7.247753906249969], + [126.54667968750002, 7.175830078124974], + [126.43906250000006, 7.01235351562498], + [126.29404296875006, 6.882324218750043], + [126.21689453125006, 6.891015625000037], + [126.1920898437501, 6.852539062500014], + [126.24023437500003, 6.73388671875], + [126.22119140624997, 6.483398437500043], + [126.18935546875, 6.309667968749991], + [126.14248046875, 6.397558593749963], + [126.109765625, 6.48964843749998], + [126.08007812500003, 6.733349609374983], + [126.04306640625012, 6.843164062499966], + [125.98496093750006, 6.943554687499997], + [125.96162109375004, 7.033203125000057], + [125.90117187500007, 7.116992187499974], + [125.82441406250004, 7.333300781249989], + [125.7736328125001, 7.322167968750037], + [125.68925781250007, 7.263037109374977], + [125.67021484375007, 7.222314453125037], + [125.66025390625012, 7.160595703124983], + [125.64072265625012, 7.105078125000034], + [125.54218750000004, 7.016601562500043], + [125.46474609375005, 6.911132812500057], + [125.40097656250012, 6.795751953124991], + [125.38066406250007, 6.689941406250014], + [125.43291015625007, 6.607128906250026], + [125.48662109375007, 6.573730468749972], + [125.56455078125006, 6.499609374999963], + [125.58847656250012, 6.465771484374997], + [125.67070312500002, 6.225], + [125.66796874999997, 5.97866210937498], + [125.6078125, 5.870166015624989], + [125.45585937500002, 5.664257812500054], + [125.34648437500002, 5.598974609374977], + [125.28789062500002, 5.632275390625011], + [125.24101562500002, 5.756933593750006], + [125.23320312500002, 5.808300781249997], + [125.26494140625002, 5.925585937500003], + [125.26845703125005, 6.033154296874969], + [125.23154296875006, 6.069531250000011], + [125.19101562500006, 6.0625], + [125.17402343750004, 6.046972656250034], + [125.07617187500003, 5.90625], + [125.03535156250004, 5.870654296875003], + [124.97519531250006, 5.865722656249972], + [124.92734375000006, 5.875341796874977], + [124.63632812500012, 5.998193359375051], + [124.39882812500005, 6.11972656250002], + [124.21279296875, 6.233251953124977], + [124.078125, 6.404443359375037], + [124.04970703125, 6.53256835937502], + [124.04814453125002, 6.66655273437496], + [123.98789062500012, 6.862988281250011], + [123.980859375, 6.929687500000014], + [123.98525390625, 6.993701171875003], + [124.04511718750004, 7.11411132812502], + [124.11757812500005, 7.175097656250003], + [124.15820312499997, 7.218798828125031], + [124.19072265625002, 7.267333984375057], + [124.21289062500003, 7.33212890625002], + [124.20664062500006, 7.396435546874983], + [124.18242187500002, 7.436718750000011], + [124.06796875000006, 7.577880859375], + [123.96845703125004, 7.664648437499991], + [123.76474609375012, 7.742626953124983], + [123.71738281250006, 7.785400390625], + [123.66582031250002, 7.817773437500023], + [123.60888671874997, 7.831640625], + [123.55322265625003, 7.832128906250006], + [123.49306640625, 7.80791015624996], + [123.47744140625, 7.756347656250028], + [123.4816406250001, 7.71025390624996], + [123.47636718750007, 7.665380859374963], + [123.39091796875007, 7.407519531250017], + [123.28203125000002, 7.464111328125], + [123.17822265624997, 7.52944335937498], + [123.15068359375007, 7.575195312499986], + [123.13876953125012, 7.629931640625031], + [123.12119140625012, 7.666894531250009], + [123.09667968749997, 7.700439453125], + [123.04892578125012, 7.614355468749963], + [122.98955078125002, 7.546289062500037], + [122.91689453125005, 7.530517578125028], + [122.8429687500001, 7.529296875000043], + [122.81875, 7.558496093750037], + [122.79179687500002, 7.72246093749996], + [122.71396484375006, 7.774121093750011], + [122.61621093749997, 7.763134765624983], + [122.49794921875005, 7.672753906250051], + [122.47441406250002, 7.638964843750003], + [122.44863281250005, 7.561132812500048], + [122.3197265625, 7.34023437499998], + [122.25146484375003, 7.170019531250034], + [122.17617187500005, 7.004199218750003], + [122.14248046875, 6.949658203124997], + [122.09814453124997, 6.913720703125051], + [122.02763671875007, 6.928613281249966], + [121.96425781250005, 6.96821289062504], + [121.90419921875005, 7.075195312499986], + [121.92460937500002, 7.199511718750003], + [121.99111328125, 7.278759765624983], + [122.04716796875002, 7.363574218750031], + [122.11484375000006, 7.659912109375014], + [122.11992187500002, 7.765380859375], + [122.13183593749997, 7.81049804687504], + [122.24335937500004, 7.945117187500031], + [122.33710937500004, 8.028417968750034], + [122.38671875000003, 8.045898437500043], + [122.58945312500012, 8.093310546875017], + [122.67294921875006, 8.133105468750045], + [122.80439453125004, 8.13369140624998], + [122.91113281250003, 8.156445312499997], + [122.99628906250004, 8.220507812500003], + [123.00273437500002, 8.286914062500031], + [122.99882812500002, 8.356054687499991], + [123.01757812500003, 8.398339843749994], + [123.05058593750002, 8.433935546875048], + [123.0958984375001, 8.480810546875006], + [123.14716796875004, 8.51601562499998], + [123.29287109375, 8.541455078125011], + [123.3412109375, 8.570410156249963], + [123.38017578125002, 8.615625], + [123.43457031249997, 8.70332031250004], + [123.49892578125005, 8.681542968750037], + [123.5636718750001, 8.647460937500028], + [123.680078125, 8.620605468749972], + [123.7833984375001, 8.547705078125048], + [123.84921875000006, 8.432714843749977], + [123.8605468750001, 8.376074218749977], + [123.87744140624997, 8.18881835937502], + [123.85341796875005, 8.145117187500006], + [123.753125, 8.05825195312498], + [123.79941406250006, 8.049121093749989], + [123.93115234374997, 8.128417968749972], + [123.996875, 8.158984374999989], + [124.159375, 8.201464843750031], + [124.19765625, 8.229541015624974], + [124.22578125000004, 8.271386718749966], + [124.28320312499997, 8.385986328125043], + [124.32519531249997, 8.508447265625037], + [124.35791015624997, 8.559423828125034], + [124.40488281250006, 8.599853515625014], + [124.45126953125006, 8.606347656249994], + [124.6217773437501, 8.52265625], + [124.7311523437501, 8.562988281250043], + [124.76171875000003, 8.689794921875034], + [124.78681640625004, 8.87412109375002], + [124.80615234374997, 8.924023437499969], + [124.86894531250002, 8.972265625000034], + [124.94384765624997, 8.956689453124966], + [125.04638671874997, 8.89052734374998], + [125.141015625, 8.86875], + [125.176171875, 8.922070312500011], + [125.20966796875004, 9.027148437500017], + [125.24785156250002, 9.026562499999983], + [125.37558593750012, 8.991796875], + [125.49873046875004, 9.014746093749977], + [125.5333984375001, 9.140917968750017], + [125.51015625, 9.275878906249972], + [125.41396484375, 9.669189453124986], + [125.47128906250006, 9.756787109374983], + [125.52089843750005, 9.75913085937502], + [125.64248046875005, 9.654492187500011], + [125.87666015625004, 9.513134765624997], + [125.95468750000012, 9.426660156249966], + [126.00595703125006, 9.320947265625009] + ] + ], + [ + [ + [126.059375, 9.766210937500034], + [126.04677734375005, 9.760791015625003], + [125.99121093750003, 9.838525390625023], + [125.99863281250012, 9.927050781250031], + [126.07382812500006, 10.059228515625051], + [126.12949218750012, 9.943554687500026], + [126.12890625000003, 9.89111328125], + [126.12080078125004, 9.86518554687504], + [126.1725585937501, 9.79995117187498], + [126.13691406250004, 9.767773437499997], + [126.059375, 9.766210937500034] + ] + ], + [ + [ + [125.28076171874997, 9.982177734374986], + [125.28769531250006, 9.932714843750034], + [125.15898437500002, 10.062939453125011], + [125.13300781250004, 10.155029296875028], + [125.17587890625006, 10.151074218750026], + [125.23095703125003, 10.115673828124997], + [125.28076171874997, 9.982177734374986] + ] + ], + [ + [ + [124.59384765625006, 9.787207031249963], + [124.58427734375002, 9.750488281250028], + [124.50566406250007, 9.753515625000034], + [124.47753906250003, 9.747900390625034], + [124.40341796875012, 9.654101562500031], + [124.35986328125003, 9.630224609375048], + [124.1224609375, 9.599316406249969], + [123.93564453125012, 9.623974609375011], + [123.87167968750006, 9.675732421874997], + [123.82998046875, 9.76113281249998], + [123.81718750000002, 9.817382812499986], + [123.86386718750006, 9.87880859374998], + [123.9088867187501, 9.919628906250026], + [124.0597656250001, 10.000195312500011], + [124.09384765625012, 10.061328125000031], + [124.17285156250003, 10.135205078124983], + [124.33574218750002, 10.159912109375043], + [124.35156250000003, 10.141357421875], + [124.3732421875001, 10.129589843749997], + [124.40585937500006, 10.126416015624969], + [124.48632812500003, 10.065478515624989], + [124.57714843749997, 10.026708984374991], + [124.555078125, 9.87919921874996], + [124.58222656250004, 9.829589843749986], + [124.59384765625006, 9.787207031249963] + ] + ], + [ + [ + [125.69023437500007, 9.914453125000037], + [125.67255859375004, 9.886474609375028], + [125.64863281250004, 9.944091796875043], + [125.5905273437501, 9.998193359375051], + [125.53447265625007, 10.090087890625028], + [125.49482421875004, 10.118701171875003], + [125.52197265624997, 10.191503906249991], + [125.5246093750001, 10.309716796875009], + [125.58017578125012, 10.363671875], + [125.60585937500005, 10.37958984375004], + [125.64794921874997, 10.436816406249974], + [125.66679687500002, 10.440136718750026], + [125.68457031249997, 10.392041015624997], + [125.6466796875001, 10.24541015624996], + [125.7033203125001, 10.071777343750028], + [125.684375, 9.963183593750017], + [125.69248046875006, 9.939013671874989], + [125.69023437500007, 9.914453125000037] + ] + ], + [ + [ + [119.91621093750004, 10.485986328125037], + [119.79316406250004, 10.455273437499997], + [119.76445312500002, 10.551611328124991], + [119.85205078124997, 10.64013671875], + [119.95019531249997, 10.604785156249989], + [120.00839843750012, 10.570117187500031], + [119.98115234375004, 10.538720703125037], + [119.91621093750004, 10.485986328125037] + ] + ], + [ + [ + [124.31621093750002, 10.606005859374974], + [124.28847656250005, 10.601464843750023], + [124.33466796875004, 10.706689453124966], + [124.37109375000003, 10.69135742187504], + [124.38232421874997, 10.679833984375009], + [124.38134765624997, 10.632568359374972], + [124.31621093750002, 10.606005859374974] + ] + ], + [ + [ + [122.64951171875012, 10.472705078125003], + [122.621875, 10.45903320312496], + [122.59716796875003, 10.46103515625002], + [122.53837890625002, 10.424951171875037], + [122.51669921875006, 10.492529296875034], + [122.5375, 10.607568359375023], + [122.62578125000007, 10.695019531249997], + [122.64843749999997, 10.722509765624991], + [122.6725585937501, 10.738818359375031], + [122.70126953125006, 10.740625], + [122.7291992187501, 10.706396484375006], + [122.73720703125005, 10.654589843750017], + [122.68125, 10.498242187500054], + [122.64951171875012, 10.472705078125003] + ] + ], + [ + [ + [123.13085937500003, 9.064111328124994], + [123.06464843750004, 9.053369140625037], + [122.99472656250006, 9.058837890624986], + [122.94785156250006, 9.10795898437496], + [122.8666015625, 9.319824218750043], + [122.77246093750003, 9.371337890624972], + [122.66455078124997, 9.410351562500011], + [122.61035156250003, 9.443212890624963], + [122.5625, 9.482812500000037], + [122.41093750000007, 9.69389648437496], + [122.39951171875006, 9.823046874999989], + [122.42558593750002, 9.896093750000034], + [122.47148437500007, 9.961523437500034], + [122.52324218750002, 9.979199218749997], + [122.64824218750002, 9.981542968750034], + [122.71298828125006, 9.990136718750009], + [122.85556640625006, 10.0869140625], + [122.86582031250012, 10.125], + [122.86650390625007, 10.28403320312502], + [122.85234375000002, 10.395263671875028], + [122.81699218750012, 10.503808593750023], + [122.85556640625006, 10.553417968750011], + [122.90585937500012, 10.602539062499986], + [122.95839843750005, 10.698339843750048], + [122.96875, 10.765722656250006], + [122.96972656249997, 10.836181640624972], + [122.98330078125, 10.886621093750037], + [123.02441406250003, 10.911816406250011], + [123.22177734375006, 10.988671875000037], + [123.25664062500007, 10.99394531249996], + [123.51064453125005, 10.923046875], + [123.5625, 10.816064453125051], + [123.5675781250001, 10.780761718750057], + [123.52773437500005, 10.662011718750023], + [123.49287109375004, 10.582324218750031], + [123.40693359375004, 10.458984375000043], + [123.34355468750002, 10.325390625000011], + [123.29609375000004, 10.124511718750028], + [123.26621093750006, 10.059033203125011], + [123.18662109375012, 9.933300781249969], + [123.16201171875, 9.864257812500028], + [123.16269531250012, 9.714648437500017], + [123.14941406249997, 9.659326171875023], + [123.1498046875, 9.606152343750026], + [123.30839843750002, 9.356982421874974], + [123.32187500000012, 9.31748046875002], + [123.32050781250004, 9.27294921875], + [123.293359375, 9.217285156250028], + [123.22871093750004, 9.121386718750031], + [123.19248046875006, 9.087890625000043], + [123.13085937500003, 9.064111328124994] + ] + ], + [ + [ + [123.37031250000004, 9.449609375000023], + [123.3317382812501, 9.422949218750006], + [123.31601562500006, 9.48896484375004], + [123.32705078125, 9.578076171874997], + [123.4037109375, 9.889257812499977], + [123.38623046874997, 9.967089843750017], + [123.5143554687501, 10.140332031250054], + [123.59287109375006, 10.302929687500054], + [123.71142578124997, 10.473681640625017], + [123.72646484375005, 10.562207031250026], + [123.83154296874997, 10.731005859375045], + [123.9298828125001, 10.96381835937504], + [123.92460937500007, 11.040917968750023], + [123.95009765625005, 11.079150390625003], + [123.96406250000004, 11.137451171874972], + [123.96718750000005, 11.186914062500023], + [124.03886718750002, 11.273535156249991], + [124.05791015625007, 11.217236328124983], + [124.03652343750005, 11.106689453125014], + [124.03984375000002, 11.053613281250037], + [124.05253906250002, 11.02875976562504], + [124.05332031250012, 10.925781250000014], + [124.0275390625001, 10.767871093750003], + [124.05126953124997, 10.585595703124994], + [124.00498046875012, 10.40009765625004], + [123.95214843750003, 10.316601562499997], + [123.87392578125005, 10.25771484374998], + [123.78867187500012, 10.22080078125002], + [123.70048828125007, 10.128320312500009], + [123.64335937500007, 10.020214843750011], + [123.63398437500004, 9.92172851562502], + [123.4935546875, 9.589306640624969], + [123.37031250000004, 9.449609375000023] + ] + ], + [ + [ + [123.75703125000004, 11.28330078125002], + [123.815625, 11.15073242187502], + [123.73671875, 11.151464843749991], + [123.70761718750012, 11.247998046875026], + [123.74140625000004, 11.279150390624977], + [123.75703125000004, 11.28330078125002] + ] + ], + [ + [ + [117.31113281250012, 8.439599609375051], + [117.21855468750007, 8.367285156249963], + [117.22851562499997, 8.45668945312498], + [117.25585937500003, 8.540966796874997], + [117.34990234375002, 8.713574218749997], + [117.41777343750007, 8.766650390624974], + [117.5299804687501, 8.902587890625043], + [117.59326171875003, 8.968310546875017], + [117.74492187500002, 9.09824218750002], + [117.88476562499997, 9.240673828124997], + [117.93154296875, 9.251269531250031], + [117.98300781250012, 9.253417968750014], + [118.023828125, 9.269775390624972], + [118.11484375000006, 9.346679687500014], + [118.34394531250004, 9.602783203125057], + [118.53339843750004, 9.79365234375004], + [118.72753906250003, 10.035009765625006], + [118.82011718750002, 10.10532226562502], + [118.8451171875, 10.131298828124983], + [119.023828125, 10.353564453124974], + [119.07988281250002, 10.385839843749977], + [119.14306640625003, 10.409277343750048], + [119.18603515624997, 10.439453124999972], + [119.22382812500004, 10.477294921875043], + [119.28701171875005, 10.574023437500031], + [119.31269531250004, 10.687109374999977], + [119.29667968750007, 10.750976562500028], + [119.2611328125, 10.845166015625026], + [119.30566406250003, 10.9736328125], + [119.34072265625005, 11.032910156249997], + [119.46533203125003, 11.293798828125034], + [119.50126953125007, 11.346435546875014], + [119.55332031250012, 11.31352539062496], + [119.5602539062501, 11.26679687500004], + [119.5345703125, 11.15683593750002], + [119.5326171875, 11.10161132812496], + [119.5619140625, 11.045507812499991], + [119.52666015625002, 10.953173828125003], + [119.61611328125, 10.70737304687502], + [119.684375, 10.551708984375011], + [119.68691406250005, 10.500341796875034], + [119.59521484375003, 10.407421875000026], + [119.54052734374997, 10.379345703124983], + [119.42246093750012, 10.354394531249966], + [119.36933593750004, 10.327294921875037], + [119.28476562500012, 10.251708984375], + [119.23193359375003, 10.152148437499974], + [119.21855468750002, 10.100683593749963], + [119.19150390625012, 10.061083984374989], + [118.9486328125, 9.993457031249974], + [118.8346679687501, 9.949316406250034], + [118.78212890625005, 9.91611328125002], + [118.75498046875006, 9.862109375000031], + [118.773828125, 9.766796874999983], + [118.56962890625007, 9.422753906249966], + [118.50449218750006, 9.332666015624994], + [118.4349609375, 9.256005859375009], + [118.34960937500003, 9.201464843750003], + [118.22929687500002, 9.167968750000014], + [118.13408203125007, 9.101367187500045], + [118.06943359375006, 8.983544921875023], + [117.98955078125002, 8.877099609375009], + [117.88857421875, 8.798242187500009], + [117.77978515625003, 8.728613281250034], + [117.6798828125001, 8.677832031249991], + [117.57216796875, 8.64199218749998], + [117.53964843750012, 8.595605468750037], + [117.51660156249997, 8.538330078125], + [117.46914062500005, 8.511376953125009], + [117.4125, 8.495849609375043], + [117.31113281250012, 8.439599609375051] + ] + ], + [ + [ + [119.86142578125006, 11.52534179687504], + [119.88291015625012, 11.472412109375], + [119.8548828125, 11.39306640625], + [119.83066406250012, 11.375683593750011], + [119.79863281250007, 11.408740234375003], + [119.72998046874997, 11.431933593750017], + [119.72558593750003, 11.474658203125017], + [119.76142578125004, 11.473632812499986], + [119.82675781250012, 11.515429687499974], + [119.86142578125006, 11.52534179687504] + ] + ], + [ + [ + [124.574609375, 11.343066406250031], + [124.64433593750007, 11.308105468750014], + [124.72431640625004, 11.322070312500017], + [124.82109375000002, 11.401416015625017], + [124.92998046875002, 11.372851562499974], + [124.99394531250007, 11.255908203125045], + [125.02656250000004, 11.21171875], + [125.04433593750005, 11.135253906249972], + [125.03974609375004, 10.951904296875014], + [125.01318359374997, 10.785693359374989], + [125.03378906250012, 10.751464843750028], + [125.08388671875, 10.72158203124998], + [125.12753906250012, 10.684716796875023], + [125.16416015625012, 10.637451171874986], + [125.1876953125001, 10.584863281250023], + [125.19716796875, 10.45722656250004], + [125.26005859375002, 10.349609375000057], + [125.26845703125005, 10.307714843750048], + [125.25332031250005, 10.26381835937498], + [125.14843750000003, 10.272412109375054], + [125.1400390625, 10.235351562500043], + [125.14257812499997, 10.189453125000028], + [125.10537109375005, 10.218310546875045], + [125.04394531250003, 10.323437500000054], + [124.9875, 10.36757812499998], + [125.00488281249997, 10.197070312499974], + [125.02353515625006, 10.115283203125017], + [125.02656250000004, 10.033105468749966], + [124.9291015625, 10.095898437499969], + [124.81279296875002, 10.134619140625048], + [124.78076171874997, 10.16806640625002], + [124.7916992187501, 10.274560546875037], + [124.78955078124997, 10.327539062499994], + [124.7376953125, 10.439746093750031], + [124.79863281250007, 10.682226562499963], + [124.79716796875002, 10.73178710937502], + [124.78671875000012, 10.781396484375009], + [124.738671875, 10.879736328124963], + [124.66269531250006, 10.961962890625017], + [124.61611328125, 10.962207031249974], + [124.50283203125, 10.904443359375023], + [124.44550781250004, 10.923583984375014], + [124.41171875000012, 11.150341796875026], + [124.36601562500002, 11.370703124999977], + [124.33095703125, 11.427099609375006], + [124.30820312500006, 11.486181640624963], + [124.33066406250012, 11.535205078125003], + [124.37412109375006, 11.514990234374977], + [124.4359375, 11.457226562500026], + [124.5109375000001, 11.423876953124974], + [124.54824218750005, 11.395019531250043], + [124.574609375, 11.343066406250031] + ] + ], + [ + [ + [124.60839843750003, 11.492187500000043], + [124.48349609375006, 11.485839843749986], + [124.42880859375012, 11.531738281250014], + [124.36035156250003, 11.665917968749994], + [124.43740234375, 11.695019531249969], + [124.5109375000001, 11.687109375000048], + [124.56494140624997, 11.639697265624974], + [124.6222656250001, 11.549560546875], + [124.60839843750003, 11.492187500000043] + ] + ], + [ + [ + [124.85439453125005, 11.594775390624974], + [124.83593750000003, 11.543310546874977], + [124.80664062500003, 11.55756835937504], + [124.78105468750002, 11.580761718750054], + [124.74365234374997, 11.658544921875006], + [124.730859375, 11.715332031250028], + [124.78837890625002, 11.683105468750028], + [124.8214843750001, 11.62661132812498], + [124.85439453125005, 11.594775390624974] + ] + ], + [ + [ + [122.49619140625006, 11.615087890625034], + [122.6126953125, 11.56416015625004], + [122.72626953125004, 11.607910156249986], + [122.83808593750004, 11.595654296874983], + [122.93125000000012, 11.529296875000043], + [122.90078125000005, 11.487353515625031], + [122.89453125000003, 11.44130859374998], + [123.10273437500004, 11.54145507812504], + [123.15830078125012, 11.535546875], + [123.1564453125001, 11.442529296875051], + [123.14414062500006, 11.363574218750031], + [123.11953125, 11.286816406250026], + [123.07548828125002, 11.196875], + [123.01650390625, 11.116503906249974], + [122.93876953125007, 11.058154296874989], + [122.84667968750003, 11.0224609375], + [122.8029296875001, 10.99003906249996], + [122.789453125, 10.94121093749996], + [122.79111328125006, 10.879736328124963], + [122.76992187500005, 10.823828125000034], + [122.67314453125002, 10.80092773437498], + [122.52207031250006, 10.691894531249972], + [122.19765625, 10.622900390625048], + [122.10859375000004, 10.575537109374991], + [122.05175781250003, 10.5140625], + [121.98837890625006, 10.458300781249989], + [121.95400390625, 10.444384765625003], + [121.93828125000007, 10.470898437499983], + [121.93378906250004, 10.49365234375], + [121.98007812500006, 10.638574218750037], + [121.9723632812501, 10.69887695312498], + [121.95029296875012, 10.757373046874989], + [121.96435546874997, 10.871679687500006], + [122.0207031250001, 10.979101562500048], + [122.05087890625006, 11.097363281249983], + [122.05966796875012, 11.325683593750043], + [122.10351562499997, 11.64291992187502], + [122.10136718750007, 11.680859375000011], + [122.06699218750006, 11.723730468750048], + [121.94082031250005, 11.758300781249986], + [121.89121093750006, 11.790869140625048], + [121.91601562499997, 11.854345703125006], + [121.96367187500002, 11.89736328124998], + [122.02919921875005, 11.895410156250023], + [122.08681640625005, 11.855078124999977], + [122.2907226562501, 11.772021484375031], + [122.39921875000002, 11.702197265625017], + [122.49619140625006, 11.615087890625034] + ] + ], + [ + [ + [120.03876953125004, 11.703320312499969], + [119.96386718749997, 11.669384765624983], + [119.94492187500006, 11.690722656249989], + [119.93173828125012, 11.740332031249963], + [119.93281250000004, 11.774462890624989], + [119.86093750000006, 11.953955078124963], + [119.91601562500003, 11.981347656250037], + [119.95654296875003, 11.960253906250003], + [119.99785156250007, 11.932128906250043], + [120.03593750000002, 11.917236328125028], + [120.070703125, 11.860546875000026], + [120.06240234375, 11.821337890625031], + [120.07314453125005, 11.78349609374996], + [120.03876953125004, 11.703320312499969] + ] + ], + [ + [ + [120.1, 12.167675781249983], + [120.15468750000005, 12.152392578124974], + [120.19375, 12.167041015625031], + [120.22822265625004, 12.219824218750034], + [120.26054687500002, 12.141748046875037], + [120.34140625000006, 12.077441406249989], + [120.31455078125012, 12.012402343749969], + [120.24345703125002, 12.004785156250023], + [120.17363281250002, 12.01962890625002], + [120.10009765625003, 11.99375], + [120.01054687500002, 12.008251953125011], + [119.95703125000003, 12.069238281250009], + [119.89609375000006, 12.178759765625017], + [119.86591796875004, 12.199023437499974], + [119.86962890624997, 12.243994140624991], + [119.89179687500004, 12.272509765625031], + [119.88007812500004, 12.27988281250002], + [119.88574218749997, 12.299853515625003], + [119.8966796875001, 12.313427734375011], + [119.91640625, 12.319091796875014], + [119.96386718749997, 12.270410156250037], + [120.07753906250005, 12.197753906249986], + [120.1, 12.167675781249983] + ] + ], + [ + [ + [122.65449218750004, 12.309033203125011], + [122.60332031250002, 12.285595703125026], + [122.49931640625007, 12.383691406250023], + [122.4388671875, 12.429492187500031], + [122.42294921875006, 12.455078125], + [122.471875, 12.491943359375057], + [122.60361328125006, 12.49160156249998], + [122.67363281250002, 12.42426757812504], + [122.68330078125004, 12.382324218750014], + [122.65449218750004, 12.309033203125011] + ] + ], + [ + [ + [125.23955078125002, 12.527880859375003], + [125.31035156250002, 12.446289062499986], + [125.3275390625, 12.387207031250028], + [125.32021484375, 12.321826171875031], + [125.35224609375004, 12.292773437499974], + [125.40878906250012, 12.284863281249969], + [125.48125, 12.251953125000014], + [125.53564453125003, 12.191406250000028], + [125.5033203125, 12.135791015624974], + [125.5133789062501, 12.054589843750037], + [125.45654296874997, 11.952539062500037], + [125.46425781250005, 11.77158203125002], + [125.496875, 11.713769531249966], + [125.5, 11.65541992187498], + [125.49179687500006, 11.594335937499977], + [125.50576171875, 11.544238281249989], + [125.59296875000004, 11.378222656250003], + [125.60898437500006, 11.323046875000045], + [125.58232421875002, 11.279492187500054], + [125.57353515625002, 11.238232421874997], + [125.62734375000005, 11.23388671875], + [125.70400390625005, 11.164794921875043], + [125.74912109375006, 11.07358398437502], + [125.73564453125002, 11.049609375000017], + [125.67441406250006, 11.120800781250054], + [125.628125, 11.132031250000026], + [125.4318359375001, 11.112597656249974], + [125.31152343750003, 11.142285156249983], + [125.23339843749997, 11.145068359375017], + [125.15585937500012, 11.267041015624997], + [125.08789062500003, 11.287353515625057], + [125.03427734375012, 11.341259765625026], + [124.94531250000003, 11.479150390625051], + [124.91699218750003, 11.558398437500031], + [124.97890625, 11.638476562500003], + [124.99824218750004, 11.70234375000004], + [124.99501953125, 11.764941406250003], + [124.93564453125006, 11.754638671875043], + [124.88427734375003, 11.77548828125002], + [124.82109375000002, 11.852099609375003], + [124.79580078125, 11.896337890625034], + [124.74980468750007, 11.933349609375028], + [124.67675781250003, 12.020898437500009], + [124.571875, 12.055126953124969], + [124.52910156250002, 12.079199218749991], + [124.445703125, 12.152783203124969], + [124.38486328125006, 12.243994140624991], + [124.32578125000012, 12.403808593750043], + [124.29472656250007, 12.569335937500014], + [124.5658203125, 12.52622070312502], + [124.84013671875007, 12.534570312500037], + [125.15019531250002, 12.57255859374996], + [125.23955078125002, 12.527880859375003] + ] + ], + [ + [ + [123.71660156250007, 12.287353515625028], + [123.90830078125006, 12.169091796875009], + [124.04033203125002, 11.966796875], + [124.05566406249997, 11.811572265625003], + [124.04550781250012, 11.752441406250028], + [123.98271484375002, 11.818896484374989], + [123.84775390625006, 11.91357421875], + [123.75400390625006, 11.934472656249994], + [123.72519531250006, 11.9515625], + [123.73603515625004, 12.002636718750026], + [123.67480468749997, 12.05], + [123.66757812500012, 12.069335937500028], + [123.6120117187501, 12.090234375000023], + [123.53105468750002, 12.19663085937502], + [123.47373046875006, 12.21665039062502], + [123.41884765625, 12.19423828124998], + [123.29267578125004, 12.036376953124972], + [123.15781250000012, 11.925634765624963], + [123.15585937500006, 11.967968749999983], + [123.21054687500006, 12.10659179687498], + [123.24531250000004, 12.328027343749966], + [123.26718750000006, 12.395458984375026], + [123.23984375000012, 12.494677734374989], + [123.23642578125012, 12.583496093750057], + [123.33701171875012, 12.542382812500023], + [123.46298828125012, 12.501220703124986], + [123.558984375, 12.444824218750043], + [123.57480468750006, 12.406933593749969], + [123.71660156250007, 12.287353515625028] + ] + ], + [ + [ + [122.31083984375002, 12.528808593750014], + [122.27978515625003, 12.498291015625014], + [122.2609375000001, 12.503076171875009], + [122.24785156250007, 12.556933593749974], + [122.2780273437501, 12.592919921875023], + [122.2875, 12.58925781249998], + [122.31083984375002, 12.528808593750014] + ] + ], + [ + [ + [122.09404296875002, 12.354882812500023], + [122.01396484375002, 12.105615234375037], + [121.9601562500001, 12.191406250000028], + [121.98193359374997, 12.2453125], + [121.93564453125006, 12.29038085937502], + [121.9232421875, 12.331298828125014], + [121.94101562500006, 12.385400390625023], + [121.9894531250001, 12.435302734374972], + [122.00156250000006, 12.598535156250009], + [122.10380859375002, 12.650634765625057], + [122.14501953124997, 12.652636718750017], + [122.1302734375, 12.612597656250031], + [122.13164062500002, 12.537548828125026], + [122.09404296875002, 12.354882812500023] + ] + ], + [ + [ + [123.77539062499997, 12.453906250000031], + [123.77910156250002, 12.366259765625031], + [123.74150390625007, 12.398535156250034], + [123.62060546874997, 12.570507812499983], + [123.58720703125002, 12.633300781249986], + [123.62148437500005, 12.67490234375002], + [123.70869140625004, 12.610791015625026], + [123.77539062499997, 12.453906250000031] + ] + ], + [ + [ + [123.28183593750006, 12.85341796874998], + [123.36718750000003, 12.70083007812498], + [123.27421875000002, 12.805078125], + [123.16640625, 12.875878906250023], + [123.05419921875003, 12.993457031250003], + [122.97343750000002, 13.03471679687496], + [122.94902343750002, 13.058691406249963], + [122.95751953124997, 13.107177734374986], + [123.01708984375003, 13.11616210937504], + [123.04355468750006, 13.113378906250006], + [123.20625, 12.905419921875009], + [123.28183593750006, 12.85341796874998] + ] + ], + [ + [ + [120.70439453125002, 13.479492187499986], + [120.75537109374997, 13.470996093750031], + [120.91533203125002, 13.501074218750034], + [120.98076171875002, 13.48598632812498], + [121.02470703125002, 13.428710937500028], + [121.07929687500004, 13.410742187500006], + [121.12246093750005, 13.38125], + [121.20273437500006, 13.432324218749969], + [121.284375, 13.374121093750006], + [121.3568359375, 13.265478515624991], + [121.44218750000007, 13.188427734375011], + [121.52275390625007, 13.131201171874991], + [121.53867187500012, 13.088867187499986], + [121.48974609374997, 13.019580078124989], + [121.47480468750004, 12.931591796875011], + [121.4796875000001, 12.837109375000026], + [121.540625, 12.63818359375], + [121.51923828125004, 12.584228515625028], + [121.45800781250003, 12.507958984375037], + [121.41230468750004, 12.423046875000054], + [121.41816406250004, 12.388769531249991], + [121.40009765625004, 12.360742187499966], + [121.39433593750002, 12.300585937499974], + [121.3568359375, 12.313085937500034], + [121.32236328125006, 12.303613281249966], + [121.28886718750002, 12.276708984374991], + [121.23671875000005, 12.218798828125003], + [121.1554687500001, 12.236328125000028], + [121.11699218750007, 12.253417968750043], + [121.10761718750004, 12.303613281249966], + [121.0833984375, 12.338964843749977], + [121.0485351562501, 12.359960937499991], + [120.9625, 12.446533203125043], + [120.92216796875002, 12.51162109374998], + [120.92148437500006, 12.581103515625017], + [120.89941406249997, 12.645849609374963], + [120.85478515625002, 12.703662109375017], + [120.79599609375006, 12.747998046874997], + [120.77636718749997, 12.79057617187496], + [120.76875, 12.840917968750006], + [120.76367187499997, 12.969824218749977], + [120.68027343750012, 13.130615234375057], + [120.65136718749997, 13.169140625], + [120.57314453125005, 13.208886718750009], + [120.50830078124997, 13.260058593750045], + [120.48066406250004, 13.311035156250043], + [120.45546875000005, 13.393505859375054], + [120.43808593750006, 13.405419921874994], + [120.3875, 13.401660156250031], + [120.33847656250012, 13.412353515624986], + [120.3527343750001, 13.472949218749989], + [120.40126953125, 13.517041015624997], + [120.46835937500012, 13.522412109375026], + [120.65332031250003, 13.497607421875031], + [120.70439453125002, 13.479492187499986] + ] + ], + [ + [ + [121.91484375000002, 13.540332031250031], + [121.97656249999997, 13.53740234375006], + [121.99570312500006, 13.546777343750009], + [122.11455078125002, 13.463183593750031], + [122.10732421875005, 13.420849609375026], + [122.12236328125002, 13.365136718750051], + [122.05468749999997, 13.26865234375002], + [122.04238281250005, 13.236181640624977], + [122.00488281249997, 13.204980468750009], + [121.87587890625005, 13.281738281250014], + [121.82919921875006, 13.328613281249972], + [121.81503906250012, 13.424462890624966], + [121.86621093749997, 13.566162109375057], + [121.91484375000002, 13.540332031250031] + ] + ], + [ + [ + [120.27128906250002, 13.750683593749983], + [120.27285156250005, 13.682958984375048], + [120.1041992187501, 13.782373046875051], + [120.09941406250007, 13.816943359374989], + [120.10341796875, 13.842529296875043], + [120.12070312500006, 13.858056640625009], + [120.21142578124997, 13.820654296875034], + [120.27128906250002, 13.750683593749983] + ] + ], + [ + [ + [124.35361328125006, 13.632226562500009], + [124.32705078125, 13.567382812500043], + [124.29453125000012, 13.59033203125], + [124.24824218750004, 13.586669921874972], + [124.17539062500012, 13.531542968750017], + [124.05703125000005, 13.605566406250006], + [124.03886718750002, 13.663134765625003], + [124.12373046875004, 13.790478515625011], + [124.12285156250007, 13.979687500000011], + [124.15371093750005, 14.026171874999974], + [124.1862304687501, 14.059521484375026], + [124.22490234375007, 14.077587890624969], + [124.3083007812501, 13.946972656250011], + [124.33671875000002, 13.931103515624969], + [124.41718750000004, 13.871044921874997], + [124.39628906250007, 13.750097656250048], + [124.40400390625004, 13.679443359375043], + [124.35361328125006, 13.632226562500009] + ] + ], + [ + [ + [122.17539062500006, 14.048828124999972], + [122.17226562500005, 14.008007812500011], + [121.95625, 14.156054687499974], + [121.94638671875012, 14.181494140625006], + [121.94599609375004, 14.205126953125017], + [121.95917968750004, 14.228759765625043], + [122.17539062500006, 14.048828124999972] + ] + ], + [ + [ + [122.03349609375002, 15.005029296875009], + [122.05156250000007, 14.969873046875037], + [122.03173828125003, 14.97163085937504], + [122.0172851562501, 14.965283203124983], + [121.97031250000012, 14.89296875], + [122.0216796875001, 14.759423828124966], + [121.98964843750005, 14.662158203125045], + [121.93300781250005, 14.656054687500045], + [121.91064453125003, 14.666503906250043], + [121.92216796875007, 14.714550781249983], + [121.93457031250003, 14.736621093750031], + [121.9230468750001, 14.8], + [121.88925781250012, 14.839843750000014], + [121.86230468749997, 14.917187500000054], + [121.82031250000003, 14.963574218749997], + [121.83984374999997, 15.038134765625003], + [121.97167968750003, 15.046386718749986], + [122.03349609375002, 15.005029296875009] + ] + ], + [ + [ + [121.10156249999997, 18.615283203125017], + [121.25449218750012, 18.56342773437501], + [121.59296875000004, 18.37646484375003], + [121.71679687499997, 18.330078125], + [121.84560546875, 18.29541015625003], + [121.94755859375002, 18.28515625], + [122.03847656250005, 18.32792968749999], + [122.07695312500007, 18.371679687500034], + [122.14667968750004, 18.486572265625], + [122.22119140624997, 18.500634765625023], + [122.26552734375005, 18.458837890625034], + [122.29980468749997, 18.402783203124983], + [122.31503906250006, 18.320312500000057], + [122.29384765625005, 18.234277343750023], + [122.22285156250004, 18.157128906250023], + [122.17949218750002, 18.064257812500017], + [122.15097656250006, 17.756494140625023], + [122.15234374999997, 17.664404296875006], + [122.1751953125, 17.575683593750057], + [122.23681640624997, 17.434863281250045], + [122.26904296874997, 17.39526367187497], + [122.36230468750003, 17.344873046874994], + [122.3875, 17.306787109374966], + [122.39287109375002, 17.238378906249977], + [122.40751953125002, 17.17812], + [122.46787109375006, 17.155126953124977], + [122.51914062500012, 17.124853515625034], + [122.5, 17.058007812499994], + [122.46796875000004, 16.990039062500017], + [122.42578124999997, 16.822656250000023], + [122.22587890625002, 16.43520507812505], + [122.21416015625007, 16.351513671874955], + [122.13515625000005, 16.18481445312503], + [121.97470703125012, 16.157910156249955], + [121.78867187500006, 16.07744140624999], + [121.68515625000012, 16.014746093750006], + [121.59531250000012, 15.933251953125023], + [121.5609375, 15.826757812499977], + [121.59042968750006, 15.778027343750011], + [121.60917968750007, 15.726025390624983], + [121.60703125000006, 15.669824218749994], + [121.57919921875012, 15.623193359374994], + [121.48984375000012, 15.509521484375028], + [121.45205078125005, 15.416650390625023], + [121.41191406250002, 15.375048828124974], + [121.39228515625004, 15.324414062499969], + [121.39892578124997, 15.2666015625], + [121.4349609375, 15.216308593749972], + [121.54394531250003, 14.999169921874966], + [121.660546875, 14.789501953124969], + [121.68564453125012, 14.765429687500045], + [121.69541015625006, 14.7373046875], + [121.62656250000006, 14.681738281250048], + [121.62792968749997, 14.581152343749977], + [121.64853515625012, 14.481494140625017], + [121.75185546875, 14.234179687499989], + [121.76660156249997, 14.16806640625002], + [121.80048828125004, 14.113867187499991], + [121.85332031250007, 14.063085937500034], + [121.91171875000006, 14.020410156250051], + [122.07958984374997, 13.947119140625034], + [122.14433593750002, 13.932714843750034], + [122.21171875000002, 13.930175781250057], + [122.22841796875, 13.979492187499972], + [122.2875, 13.996191406250006], + [122.27441406249997, 14.044726562500031], + [122.2025390625, 14.111669921874991], + [122.19970703125003, 14.148046875000034], + [122.2375, 14.175048828125028], + [122.28261718750005, 14.190820312500037], + [122.38369140625005, 14.263867187499997], + [122.49082031250012, 14.32236328125002], + [122.6271484375001, 14.317529296875009], + [122.76103515625002, 14.284863281250011], + [122.85605468750006, 14.25078125], + [122.93417968750012, 14.18808593750002], + [123.01455078125005, 14.079833984374986], + [123.0709960937501, 13.959960937499986], + [123.070703125, 13.902734374999966], + [123.05693359375007, 13.845458984375028], + [123.05996093750005, 13.788769531250026], + [123.101953125, 13.750244140624986], + [123.23144531249997, 13.747363281250017], + [123.29697265625012, 13.836425781250043], + [123.30537109375004, 13.936572265625017], + [123.25927734374997, 13.975439453125034], + [123.28046875000004, 14.024804687499966], + [123.32031249999997, 14.061669921875023], + [123.37744140624997, 14.028662109375048], + [123.43232421875004, 13.966259765625026], + [123.63281249999997, 13.898486328124989], + [123.68408203125003, 13.897021484375045], + [123.72597656250005, 13.884326171875031], + [123.81572265625002, 13.837109375000011], + [123.85761718750004, 13.799609375], + [123.80625000000012, 13.721728515625045], + [123.60712890625004, 13.704443359374977], + [123.54960937500007, 13.645751953125014], + [123.6081054687501, 13.528076171875028], + [123.70361328124997, 13.431591796874997], + [123.76484375000004, 13.353515624999986], + [123.81923828125, 13.269482421875011], + [123.8166015625001, 13.19160156250004], + [123.78515625000003, 13.110546875000054], + [123.8727539062501, 13.116992187500031], + [123.95517578125006, 13.099707031249977], + [124.06914062500002, 13.031933593750026], + [124.10458984375006, 13.025], + [124.14277343750004, 13.035791015625009], + [124.13730468750006, 12.791162109374994], + [124.0597656250001, 12.567089843749997], + [123.96171875000002, 12.594970703125], + [123.87783203125005, 12.689697265625014], + [123.894921875, 12.804980468749974], + [123.94853515625007, 12.916406250000023], + [123.91796874999997, 12.939941406250014], + [123.86386718750006, 12.9306640625], + [123.80234375000006, 12.905566406250031], + [123.73603515625004, 12.896923828125054], + [123.62675781250007, 12.911767578124966], + [123.40234374999997, 13.033105468749994], + [123.31093750000005, 13.044091796875009], + [123.2904296875, 13.099023437500009], + [123.29550781250006, 13.215576171875043], + [123.20595703125005, 13.353515624999986], + [123.19160156250004, 13.402880859375003], + [123.16328125000004, 13.44174804687502], + [122.8961914062501, 13.59194335937498], + [122.8634765625001, 13.617236328124974], + [122.78134765625006, 13.737060546875057], + [122.59521484374997, 13.90761718749998], + [122.54306640625006, 13.925048828124986], + [122.48632812499997, 13.929980468750017], + [122.46796875000004, 13.886718749999986], + [122.49375, 13.820214843750037], + [122.50419921875007, 13.763085937500023], + [122.50019531250004, 13.703173828124989], + [122.50800781250004, 13.656835937499963], + [122.59619140624997, 13.562011718750014], + [122.609375, 13.517138671875017], + [122.66787109375, 13.395361328124991], + [122.67509765625007, 13.253173828124972], + [122.59990234375002, 13.194140625000031], + [122.51523437500012, 13.260009765625028], + [122.5125, 13.313623046875037], + [122.49794921875005, 13.363525390624986], + [122.40693359375004, 13.49277343750002], + [122.37656250000012, 13.520605468750006], + [122.2052734375001, 13.648242187499989], + [122.07275390625003, 13.788378906250031], + [121.77792968750006, 13.93764648437498], + [121.74287109375004, 13.945849609375045], + [121.69169921875002, 13.934570312499972], + [121.64345703125005, 13.915966796874997], + [121.50107421875006, 13.8421875], + [121.45078125000006, 13.790771484374986], + [121.44628906250003, 13.711865234374983], + [121.344140625, 13.649121093749997], + [121.20351562500005, 13.640283203124966], + [121.09550781250007, 13.679492187500045], + [121.00615234375007, 13.758105468749989], + [120.93232421875004, 13.761865234375051], + [120.84072265625, 13.884716796875026], + [120.72910156250012, 13.900537109374966], + [120.637109375, 13.804492187500031], + [120.6173828125001, 13.9953125], + [120.61679687500006, 14.188037109375003], + [120.64267578125006, 14.244335937500011], + [120.68828125000007, 14.291210937499969], + [120.9220703125001, 14.493115234374983], + [120.95156250000005, 14.557958984374963], + [120.94130859375, 14.645068359375031], + [120.8880859375, 14.715771484375054], + [120.80449218750002, 14.758789062500014], + [120.70791015625005, 14.776611328125014], + [120.63828125000006, 14.816162109374986], + [120.58369140625004, 14.88125], + [120.54677734375, 14.76611328125], + [120.58271484375004, 14.594628906249966], + [120.58867187500002, 14.483105468749983], + [120.55566406250003, 14.441357421875011], + [120.49570312500006, 14.440185546875043], + [120.43876953125002, 14.453369140624972], + [120.39609375000012, 14.493310546875023], + [120.36523437499997, 14.608300781250009], + [120.2838867187501, 14.684375], + [120.25078125000002, 14.793310546875034], + [120.21386718750003, 14.808789062499997], + [120.13798828125002, 14.800390624999963], + [120.08212890625012, 14.851074218749986], + [120.04453125000006, 14.978125], + [120.03662109374997, 15.114550781250017], + [120.00498046875012, 15.229248046875028], + [119.959375, 15.340234375], + [119.93281250000004, 15.430908203124986], + [119.89160156250003, 15.837695312499989], + [119.88144531250006, 15.875], + [119.85966796875007, 15.90576171875], + [119.80820312500006, 15.951953125000017], + [119.7689453125, 16.008447265624966], + [119.76181640625006, 16.054980468750045], + [119.77255859375012, 16.25512695312503], + [119.79023437500004, 16.303320312500006], + [119.83076171875004, 16.326562500000023], + [119.88613281250005, 16.287402343750045], + [119.9303710937501, 16.23876953125], + [119.98515625000007, 16.215429687500034], + [120.03339843750004, 16.184570312500057], + [120.12402343750003, 16.066210937500017], + [120.15976562500012, 16.047656250000045], + [120.27128906250002, 16.051416015625023], + [120.33701171875006, 16.066455078125074], + [120.36875, 16.109570312499955], + [120.38876953125006, 16.160937500000045], + [120.38925781250006, 16.221630859374955], + [120.325, 16.400341796874955], + [120.30527343750006, 16.52924804687501], + [120.3043945312501, 16.645458984374983], + [120.32119140625005, 16.761865234374994], + [120.40888671875004, 16.955615234375017], + [120.42011718750004, 17.09008789062497], + [120.41171875000012, 17.269921875000023], + [120.42714843750005, 17.376904296874955], + [120.42451171875004, 17.438330078125034], + [120.37207031250003, 17.53510742187504], + [120.35839843749997, 17.63818359375], + [120.50507812500004, 18.16264648437499], + [120.55097656250004, 18.26406250000005], + [120.58447265624997, 18.36875], + [120.59970703125012, 18.507861328125074], + [120.709375, 18.545947265625017], + [120.81376953125002, 18.603417968749994], + [120.86777343750012, 18.598925781250045], + [120.925, 18.585107421874994], + [121.05136718750012, 18.613671875000023], + [121.10156249999997, 18.615283203125017] + ] + ], + [ + [ + [121.92167968750007, 18.89472656250001], + [121.85820312500002, 18.822900390625023], + [121.82519531250003, 18.842724609374983], + [121.8607421875, 18.912548828124983], + [121.85976562500005, 18.936767578125057], + [121.88886718750004, 18.991552734375006], + [121.94335937500003, 19.010449218749955], + [121.98789062500006, 18.956640625], + [121.92167968750007, 18.89472656250001] + ] + ], + [ + [ + [121.25224609375002, 19.082421874999966], + [121.24667968750012, 19.015185546875045], + [121.19609375000002, 19.050683593749994], + [121.18486328125007, 19.101416015625006], + [121.18994140625003, 19.13891601562503], + [121.21318359375007, 19.18359374999997], + [121.24472656250006, 19.143017578124955], + [121.25224609375002, 19.082421874999966] + ] + ], + [ + [ + [121.52089843750005, 19.361962890624994], + [121.53125, 19.271337890625006], + [121.47207031250005, 19.27333984375005], + [121.38291015625006, 19.328466796875006], + [121.37460937500006, 19.356298828124977], + [121.37597656249997, 19.379687500000045], + [121.39160156249997, 19.399365234374955], + [121.52089843750005, 19.361962890624994] + ] + ], + [ + [ + [121.96005859375006, 20.36586914062505], + [121.94130859375, 20.353710937499955], + [121.91406250000003, 20.359423828125074], + [121.94121093750002, 20.453710937500006], + [121.99121093750003, 20.479589843750034], + [122.03115234375, 20.469384765624994], + [121.96005859375006, 20.36586914062505] + ] + ], + [ + [ + [121.878125, 20.781884765624966], + [121.82958984374997, 20.700292968750063], + [121.79062500000012, 20.701171875000057], + [121.79648437500006, 20.74663085937499], + [121.84785156250004, 20.841259765624983], + [121.86699218750002, 20.839208984375034], + [121.878125, 20.781884765624966] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Palau", + "iso_a2": "PW", + "iso_a3": "PLW", + "iso_n3": "585", + "continent": "Oceania" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [131.17236328124997, 3.026220703125048], + [131.14960937500004, 3.021875], + [131.13496093750004, 3.02524414062502], + [131.13671874999997, 3.039453125], + [131.1515625000001, 3.054101562500037], + [131.17236328124997, 3.060595703125031], + [131.187890625, 3.055615234374997], + [131.18632812500007, 3.042089843749991], + [131.17236328124997, 3.026220703125048] + ] + ], + [ + [ + [134.5954101562501, 7.382031249999969], + [134.53466796874997, 7.360644531249974], + [134.50625, 7.437109375], + [134.51572265625012, 7.525781250000037], + [134.55595703125007, 7.593945312499983], + [134.59970703125006, 7.615771484374989], + [134.60869140625007, 7.623583984374974], + [134.65117187500002, 7.712109374999983], + [134.65957031250005, 7.663281249999983], + [134.63271484375, 7.501318359375034], + [134.59824218750006, 7.438281249999974], + [134.5954101562501, 7.382031249999969] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Papua New Guinea", + "iso_a2": "PG", + "iso_a3": "PNG", + "iso_n3": "598", + "continent": "Oceania" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [153.53613281249997, -11.476171874999949], + [153.70322265625006, -11.528515624999955], + [153.75986328125006, -11.586328125], + [153.69951171875002, -11.612597656249946], + [153.55371093749997, -11.630566406249969], + [153.5192382812501, -11.595214843749957], + [153.37900390625012, -11.559570312499986], + [153.35703125000006, -11.49501953124998], + [153.28681640625004, -11.516992187500009], + [153.32236328125012, -11.471484374999974], + [153.23447265625006, -11.420312500000037], + [153.20703124999997, -11.351855468750031], + [153.20361328124997, -11.32412109374998], + [153.30673828125006, -11.356347656249966], + [153.53613281249997, -11.476171874999949] + ] + ], + [ + [ + [154.28076171874997, -11.36142578125002], + [154.266015625, -11.415917968750023], + [154.22958984375012, -11.3974609375], + [154.12119140625006, -11.425683593749966], + [154.06406250000006, -11.419335937500009], + [154.03115234375, -11.370507812500009], + [154.02343750000003, -11.347949218750031], + [154.11767578124997, -11.365527343749974], + [154.1017578125001, -11.311425781249966], + [154.23789062500012, -11.338867187499957], + [154.28076171874997, -11.36142578125002] + ] + ], + [ + [ + [150.89873046875002, -10.565332031250023], + [150.88466796875, -10.643457031250037], + [150.80234375000006, -10.620214843750006], + [150.78574218750006, -10.603417968749966], + [150.79931640625003, -10.554101562499952], + [150.87207031249997, -10.551855468750034], + [150.89873046875002, -10.565332031250023] + ] + ], + [ + [ + [151.08095703125, -10.020117187499963], + [151.12343750000005, -10.020214843749983], + [151.19433593750003, -9.945507812499955], + [151.25566406250007, -9.92265625], + [151.29648437500012, -9.956738281250026], + [151.230859375, -10.194726562500009], + [151.1754882812501, -10.158886718749997], + [150.95917968750004, -10.092578124999989], + [150.95244140625002, -9.9984375], + [150.89609375000006, -9.968066406250017], + [150.86132812500003, -9.87617187500004], + [150.78964843750006, -9.77431640624998], + [150.77607421875004, -9.70908203125002], + [150.81669921875007, -9.735937499999977], + [150.86230468749997, -9.802441406250026], + [151.05146484375004, -9.938964843749957], + [151.04414062500004, -9.983105468749983], + [151.08095703125, -10.020117187499963] + ] + ], + [ + [ + [150.52841796875006, -9.34658203124998], + [150.66904296875012, -9.428515624999974], + [150.746484375, -9.404492187499955], + [150.78867187500006, -9.417968749999957], + [150.8791015625001, -9.512695312499972], + [150.88408203125002, -9.581933593749966], + [150.8986328125001, -9.64140625], + [150.89404296875003, -9.667480468749986], + [150.84404296875007, -9.702832031249983], + [150.84824218750012, -9.662597656249957], + [150.80996093750005, -9.654785156249972], + [150.67832031250006, -9.656542968749974], + [150.57626953125012, -9.631152343749946], + [150.43623046875004, -9.624609374999949], + [150.49531250000004, -9.561718750000011], + [150.5084960937501, -9.536132812499957], + [150.43466796875006, -9.434960937500037], + [150.43144531250002, -9.386621093749966], + [150.43730468750007, -9.359960937500034], + [150.49892578125, -9.345605468749952], + [150.52841796875006, -9.34658203124998] + ] + ], + [ + [ + [150.3454101562501, -9.493847656249955], + [150.33134765625007, -9.518554687500014], + [150.27285156250005, -9.500390624999952], + [150.10976562500005, -9.361914062499991], + [150.1349609375001, -9.259570312500017], + [150.20830078125002, -9.206347656250003], + [150.32011718750007, -9.264160156249972], + [150.35703125000006, -9.349023437500023], + [150.36816406250003, -9.396484375000014], + [150.3454101562501, -9.493847656249955] + ] + ], + [ + [ + [152.63095703125012, -8.95937], + [152.68925781250002, -8.974609374999957], + [152.81005859375003, -8.967187499999952], + [152.84980468750004, -9.024511718749991], + [152.90507812500002, -9.044238281250017], + [152.95292968750007, -9.07011718749996], + [152.9953125000001, -9.1078125], + [152.99501953125005, -9.130761718749966], + [152.98496093750012, -9.150781249999966], + [152.95927734375002, -9.168652343749969], + [152.96689453125006, -9.208984375000014], + [152.92275390625, -9.203027343750037], + [152.86748046875007, -9.224316406250026], + [152.7594726562501, -9.177148437500009], + [152.7201171875, -9.166503906249972], + [152.70820312500004, -9.126074218749991], + [152.6380859375, -9.058398437499974], + [152.51513671874997, -9.009863281250034], + [152.57705078125, -8.970019531250003], + [152.63095703125012, -8.95937] + ] + ], + [ + [ + [143.59033203125003, -8.633398437499991], + [143.60820312500002, -8.677148437500023], + [143.46279296875, -8.617089843750037], + [143.32412109375, -8.51679687500004], + [143.25380859375005, -8.489550781249989], + [143.20683593750007, -8.42343750000002], + [143.29306640625006, -8.472753906250034], + [143.44335937500003, -8.518945312500023], + [143.59033203125003, -8.633398437499991] + ] + ], + [ + [ + [151.10683593750005, -8.733496093749949], + [151.12412109375012, -8.804882812500011], + [151.04619140625002, -8.72832031249996], + [151.08076171875004, -8.641796875000011], + [151.08681640625005, -8.595019531249989], + [151.08281250000002, -8.568652343750031], + [151.00498046875006, -8.523828124999952], + [151.04628906250005, -8.450585937499952], + [151.09013671875002, -8.425976562500011], + [151.117578125, -8.41884765624998], + [151.11640625000004, -8.521875], + [151.13857421875, -8.568066406249997], + [151.10683593750005, -8.733496093749949] + ] + ], + [ + [ + [143.58681640625005, -8.481738281250003], + [143.5431640625001, -8.484765625], + [143.3668945312501, -8.416894531250023], + [143.321875, -8.367578125], + [143.52822265625, -8.37851562500002], + [143.5814453125, -8.390917968749974], + [143.59257812500002, -8.4599609375], + [143.58681640625005, -8.481738281250003] + ] + ], + [ + [ + [148.02578125, -5.826367187500011], + [147.98544921875006, -5.833984374999972], + [147.96796875000004, -5.788574218749957], + [147.87451171875003, -5.749218750000026], + [147.78105468750007, -5.627246093749946], + [147.78251953125002, -5.522460937500014], + [147.7946289062501, -5.492382812500011], + [147.84648437500002, -5.490820312499963], + [148.05478515625006, -5.61152343750004], + [148.07607421875005, -5.650195312500003], + [148.06044921875, -5.764648437499972], + [148.02578125, -5.826367187500011] + ] + ], + [ + [ + [155.95761718750006, -6.686816406249989], + [155.93320312500006, -6.780468749999969], + [155.91494140625, -6.796679687499989], + [155.89189453125002, -6.761523437500017], + [155.80498046875007, -6.79560546875004], + [155.76347656250007, -6.834375], + [155.71933593750012, -6.862792968749957], + [155.61738281250004, -6.855957031249986], + [155.5208984375, -6.830273437499997], + [155.42734375000006, -6.782714843749986], + [155.34404296875007, -6.721679687499986], + [155.26054687500002, -6.626074218749963], + [155.20859375000006, -6.52685546875], + [155.23447265625012, -6.411621093749972], + [155.20214843750003, -6.3076171875], + [155.04462890625004, -6.23369140624996], + [155.01015625, -6.20976562499996], + [154.94023437500002, -6.106152343749997], + [154.8703125000001, -6.061425781250037], + [154.78193359375004, -5.970703125000028], + [154.75927734375003, -5.931347656249997], + [154.72109375000005, -5.816503906249963], + [154.70898437499997, -5.747070312500028], + [154.74111328125005, -5.545312499999952], + [154.72929687500002, -5.444433593750006], + [154.7726562500001, -5.454101562500028], + [154.81845703125006, -5.494042968749994], + [154.87050781250005, -5.521386718749966], + [154.99707031249997, -5.539941406250023], + [155.09384765625006, -5.620214843750034], + [155.18671875000004, -5.776953125], + [155.19785156250012, -5.828320312499969], + [155.22753906250003, -5.865234375000028], + [155.32304687500002, -5.931738281249991], + [155.37255859374997, -5.974414062499974], + [155.46699218750004, -6.145117187500034], + [155.51933593750007, -6.181542968749994], + [155.58105468750003, -6.196191406249952], + [155.63847656250007, -6.220800781249991], + [155.73417968750002, -6.295703124999974], + [155.82255859375002, -6.38046875000002], + [155.8822265625, -6.469628906249966], + [155.92763671875, -6.565039062499963], + [155.95761718750006, -6.686816406249989] + ] + ], + [ + [ + [147.17626953124997, -5.431933593749946], + [147.12021484375012, -5.437402343749994], + [147.0290039062501, -5.342382812500006], + [147.00585937499997, -5.30703125], + [147.01474609375012, -5.25742187500002], + [147.1310546875001, -5.190820312500037], + [147.20634765625007, -5.251562499999977], + [147.221875, -5.381542968749983], + [147.17626953124997, -5.431933593749946] + ] + ], + [ + [ + [154.64726562500002, -5.43271484375002], + [154.62734375000005, -5.440625], + [154.58388671875, -5.314453125], + [154.57617187500003, -5.22089843750004], + [154.56279296875007, -5.15195312500002], + [154.54003906250003, -5.11083984375], + [154.60556640625006, -5.034960937499989], + [154.63261718750007, -5.013867187499955], + [154.68203125, -5.05400390624996], + [154.68916015625004, -5.142675781249991], + [154.72714843750006, -5.218066406249989], + [154.69843750000004, -5.382812499999986], + [154.64726562500002, -5.43271484375002] + ] + ], + [ + [ + [146.01933593750007, -4.726171874999963], + [145.95234375000004, -4.755761718749952], + [145.90400390625004, -4.73300781250002], + [145.88359375000007, -4.66748046875], + [145.90019531250007, -4.604199218749983], + [145.95878906250002, -4.554296875000034], + [145.9958007812501, -4.539257812499983], + [146.03740234375002, -4.573144531249966], + [146.0534179687501, -4.640136718750028], + [146.01933593750007, -4.726171874999963] + ] + ], + [ + [ + [151.915625, -4.296777343749966], + [151.96757812500007, -4.316992187500006], + [152.11718749999997, -4.212207031249974], + [152.19726562499997, -4.28515625], + [152.29941406250006, -4.320703124999966], + [152.40566406250005, -4.340722656249952], + [152.36357421875002, -4.490820312499977], + [152.37607421875006, -4.560253906249997], + [152.40351562500004, -4.629296875000037], + [152.4, -4.73125], + [152.35117187500006, -4.82216796874998], + [152.25761718750002, -4.954687499999977], + [152.21572265625, -4.979199218749997], + [152.16660156250012, -4.9931640625], + [152.01328125000006, -5.003808593750037], + [151.98369140625007, -5.07441406250004], + [151.99394531250002, -5.149023437499963], + [152.07685546875004, -5.247070312499943], + [152.14296875, -5.357031249999963], + [152.07705078125, -5.458300781249989], + [151.96845703125004, -5.528808593749972], + [151.86542968750004, -5.564843750000023], + [151.69492187500012, -5.543554687499949], + [151.51513671874997, -5.552343749999963], + [151.48144531249997, -5.590917968750006], + [151.48046874999997, -5.654589843750017], + [151.45517578125012, -5.70312], + [151.42246093750012, -5.747363281250003], + [151.33125, -5.839062500000026], + [151.22929687500002, -5.919921874999986], + [151.0900390625001, -5.996679687499991], + [151.04316406250004, -6.015039062499994], + [150.91992187499997, -6.027246093749994], + [150.808984375, -6.07138671875002], + [150.75957031250007, -6.114453125], + [150.70576171875004, -6.149414062500014], + [150.58808593750004, -6.187792968750017], + [150.47353515625, -6.263378906249969], + [150.42832031250012, -6.276171874999989], + [150.19082031250005, -6.289355468750017], + [149.8509765625, -6.292968749999957], + [149.75029296875007, -6.300878906249963], + [149.65253906250004, -6.290429687499966], + [149.59843750000002, -6.2609375], + [149.48300781250006, -6.124804687499974], + [149.38232421874997, -6.07812], + [149.27265625000004, -6.07949218749998], + [149.12656250000012, -6.127636718750026], + [149.0990234375, -6.116992187499989], + [148.80751953125005, -5.91640625], + [148.71914062500005, -5.867382812500026], + [148.62480468750002, -5.830761718750026], + [148.50976562500003, -5.805371093749997], + [148.40117187500002, -5.765039062499952], + [148.33720703125007, -5.669433593750014], + [148.34472656249997, -5.544921874999972], + [148.43203125, -5.471777343749991], + [148.56494140624997, -5.507910156249977], + [148.61582031250006, -5.507421874999963], + [148.66582031250002, -5.486621093749989], + [148.72431640625004, -5.493261718750006], + [148.78349609375002, -5.511621093750023], + [148.9992187500001, -5.484570312500011], + [149.12402343750003, -5.522656249999955], + [149.24531250000004, -5.573046875000017], + [149.35888671875003, -5.583984375000014], + [149.47539062500002, -5.573242187499957], + [149.63173828125, -5.516015625000023], + [149.6810546875, -5.523535156249963], + [149.8314453125, -5.524121093749997], + [149.96279296875, -5.447753906249972], + [150.0119140625001, -5.13955078124998], + [150.04531250000005, -5.034667968750014], + [150.0900390625001, -5.011816406249977], + [150.1222656250001, -5.018164062500034], + [150.1703125, -5.070605468749974], + [150.10869140625007, -5.136035156249974], + [150.08154296874997, -5.186425781250023], + [150.0724609375001, -5.309570312499986], + [150.10625, -5.429003906249974], + [150.18310546874997, -5.523632812499983], + [150.29873046875, -5.535644531250028], + [150.40439453125012, -5.47314453125], + [150.51943359375, -5.460253906249946], + [150.62578125000002, -5.520898437499952], + [150.73447265625012, -5.510449218749955], + [150.784375, -5.470898437499983], + [150.84257812500002, -5.453710937500034], + [150.90029296875005, -5.447167968750037], + [150.95292968750002, -5.423730468749966], + [151.02226562500002, -5.320703125000023], + [151.06884765625003, -5.20449218749998], + [151.13779296875012, -5.112890624999963], + [151.32656250000005, -4.96035156249998], + [151.38095703125012, -4.941308593750009], + [151.43984375, -4.930957031250031], + [151.57255859375007, -4.9375], + [151.67119140625007, -4.88330078125], + [151.67890625000004, -4.76103515624996], + [151.66464843750006, -4.637011718750003], + [151.55195312500004, -4.345507812499946], + [151.54423828125007, -4.299218750000023], + [151.56054687500003, -4.247363281250031], + [151.59306640625007, -4.200781249999949], + [151.70371093750006, -4.2], + [151.81933593749997, -4.216992187499969], + [151.86474609374997, -4.26083984375002], + [151.915625, -4.296777343749966] + ] + ], + [ + [ + [153.65927734375012, -4.099316406249983], + [153.6500976562501, -4.123046875000014], + [153.59150390625004, -4.095996093750017], + [153.63974609375012, -4.04472656249996], + [153.66298828125005, -4.04121093750004], + [153.65927734375012, -4.099316406249983] + ] + ], + [ + [ + [152.67060546875004, -3.13339843750002], + [152.64619140625004, -3.221191406249957], + [152.58505859375012, -3.16982421874998], + [152.54326171875002, -3.095605468749952], + [152.56992187500012, -3.0625], + [152.63876953125012, -3.042773437500031], + [152.67060546875004, -3.13339843750002] + ] + ], + [ + [ + [152.09921875000006, -2.947363281249949], + [152.08847656250012, -2.997851562500017], + [152.05732421875004, -2.99492187499996], + [151.97109375, -2.89609375], + [151.95458984374997, -2.870507812500009], + [151.97470703125012, -2.845605468750009], + [152.074609375, -2.918457031250014], + [152.09921875000006, -2.947363281249949] + ] + ], + [ + [ + [151.9572265625001, -2.830175781249963], + [151.93339843750002, -2.830371093750003], + [151.92978515625012, -2.750585937500006], + [151.94638671875012, -2.708593749999977], + [152.00195312499997, -2.737792968749972], + [152.01132812500012, -2.809179687499949], + [151.9572265625001, -2.830175781249963] + ] + ], + [ + [ + [144.12197265625, -3.815234375000017], + [144.24794921875, -3.818261718750009], + [144.3744140625, -3.802734374999957], + [144.42656250000002, -3.809667968750034], + [144.4777343750001, -3.82529296875002], + [144.52451171875012, -3.855273437500003], + [144.54824218750005, -3.913085937499957], + [144.62666015625004, -3.993066406250009], + [144.73789062500006, -4.029101562499974], + [144.84345703125004, -4.101464843749966], + [144.93847656249997, -4.188183593749969], + [145.00839843750012, -4.275488281249991], + [145.08779296875, -4.349121093749972], + [145.20800781249997, -4.380273437500023], + [145.33457031250012, -4.385253906249972], + [145.7669921875, -4.823046874999989], + [145.78808593749997, -4.89062], + [145.79287109375005, -5.177929687499983], + [145.74521484375012, -5.402441406249977], + [145.85283203125002, -5.471289062499977], + [145.9994140625, -5.497070312499986], + [146.20537109375007, -5.545117187500011], + [146.40341796875006, -5.616601562500009], + [147.03427734375006, -5.919238281250017], + [147.12089843750007, -5.945019531250026], + [147.24824218750004, -5.954785156249983], + [147.37666015625004, -5.950781249999963], + [147.42275390625, -5.966210937499994], + [147.51855468749997, -6.02109375], + [147.56669921875002, -6.056933593750003], + [147.65302734375004, -6.154785156249957], + [147.73007812500006, -6.261132812500037], + [147.76289062500004, -6.291503906250014], + [147.80205078125002, -6.31523437499996], + [147.82451171875007, -6.373046875000014], + [147.85449218750003, -6.55117187499998], + [147.84550781250007, -6.662402343749989], + [147.81044921875005, -6.703613281249943], + [147.70957031250006, -6.723632812500028], + [147.35576171875002, -6.742382812500026], + [147.11914062499997, -6.721679687499986], + [146.95361328124997, -6.834082031249963], + [146.94921874999997, -6.883105468750003], + [146.96074218750002, -6.928808593749991], + [147.1048828125, -7.166992187500028], + [147.19003906250012, -7.37812], + [147.26015625, -7.464062499999969], + [147.36533203125012, -7.533789062499963], + [147.45898437500003, -7.616210937499972], + [147.54511718750004, -7.7109375], + [147.72431640625004, -7.876269531250017], + [147.821875, -7.9375], + [147.93613281250006, -7.97539062499996], + [148.12675781250007, -8.103613281249963], + [148.15195312500006, -8.160253906249963], + [148.20644531250005, -8.338671874999989], + [148.22998046874997, -8.459667968750026], + [148.2335937500001, -8.509570312499989], + [148.246875, -8.554296875000034], + [148.414453125, -8.663964843749994], + [148.45117187499997, -8.694531250000011], + [148.52587890625003, -8.938574218749991], + [148.58310546875006, -9.051757812499957], + [148.67949218750007, -9.091992187499983], + [148.79179687500002, -9.089453125], + [149.09746093750002, -9.01689453124996], + [149.14169921875006, -9.014550781250009], + [149.19833984375006, -9.03125], + [149.24765625000006, -9.070996093749969], + [149.26406250000005, -9.180761718750034], + [149.2162109375, -9.295898437499957], + [149.20302734375005, -9.406835937499991], + [149.26318359374997, -9.497851562499974], + [149.41875, -9.568847656249957], + [149.4757812500001, -9.58828125], + [149.75576171875005, -9.6109375], + [149.865625, -9.630078125], + [149.97353515625, -9.660742187500034], + [150.01103515625007, -9.688183593750026], + [149.98466796875002, -9.737011718750026], + [149.92822265624997, -9.760839843749991], + [149.86435546875006, -9.770605468750034], + [149.76123046874997, -9.805859375000011], + [149.7630859375, -9.868652343750014], + [149.82128906249997, -9.934179687499963], + [149.87441406250005, -10.012988281250031], + [149.9191406250001, -10.041601562499991], + [149.96757812500002, -10.060742187499983], + [150.08857421875004, -10.088085937499955], + [150.20625, -10.125585937499963], + [150.28388671875004, -10.162890625000017], + [150.36406250000007, -10.189648437499955], + [150.53886718750007, -10.206738281249969], + [150.66699218749997, -10.257128906250031], + [150.84951171875, -10.236035156249997], + [150.69130859375005, -10.317871093749972], + [150.63681640625012, -10.337988281249977], + [150.44609375000007, -10.30732421875004], + [150.41025390625006, -10.339257812499966], + [150.48886718750006, -10.425781250000014], + [150.60546875000003, -10.484082031249983], + [150.6471679687501, -10.517968749999966], + [150.61796875000002, -10.557617187499957], + [150.48242187500003, -10.63691406250004], + [150.42578125000003, -10.648535156250006], + [150.31992187500012, -10.654882812499963], + [150.14238281250002, -10.62070312500002], + [150.0167968750001, -10.577148437500028], + [149.98154296875012, -10.517675781249991], + [149.94804687500002, -10.482617187499955], + [149.83476562500007, -10.398828125000023], + [149.75410156250004, -10.353027343750028], + [149.65136718749997, -10.3375], + [149.54433593750005, -10.338476562499991], + [149.35263671875006, -10.289746093750011], + [148.93681640625007, -10.255175781249989], + [148.83769531250007, -10.23398437500002], + [148.71289062500003, -10.166894531250023], + [148.65419921875005, -10.157324218750034], + [148.5912109375, -10.178417968749983], + [148.43056640625, -10.191406249999957], + [148.38339843750006, -10.185449218749994], + [148.26875, -10.12822265624996], + [148.15048828125012, -10.107324218749966], + [148.10126953125004, -10.124511718750014], + [148.05136718750006, -10.12832031249998], + [147.89013671875003, -10.08740234375], + [147.76865234375012, -10.070117187500031], + [147.66884765625005, -10.013085937499952], + [147.61435546875006, -9.959765625000017], + [147.553125, -9.91240234374996], + [147.496484375, -9.79042968749998], + [147.40830078125006, -9.674707031250037], + [147.29892578125006, -9.579589843750014], + [147.06445312500003, -9.426074218750003], + [147.01718750000006, -9.38789062500004], + [146.92539062500012, -9.247167968749977], + [146.93037109375004, -9.153906249999977], + [146.96376953125, -9.059570312499943], + [146.91328125000004, -9.091699218750009], + [146.85625, -9.087695312499989], + [146.69658203125002, -9.025390625], + [146.63085937499997, -8.951171874999972], + [146.52412109375004, -8.749707031249969], + [146.45585937500002, -8.643554687500014], + [146.29648437500006, -8.45556640625], + [146.25058593750012, -8.343945312499997], + [146.18408203124997, -8.246386718750017], + [146.14296875000005, -8.210253906250017], + [146.1087890625, -8.168457031249943], + [146.07851562500005, -8.11416015624998], + [146.03320312499997, -8.076367187500011], + [145.8109375, -7.992773437500034], + [145.77177734375002, -7.96640625], + [145.72871093750004, -7.952441406249989], + [145.56337890625, -7.943847656250014], + [145.46777343749997, -7.930078124999966], + [145.2875, -7.86162109374996], + [145.19433593749997, -7.84111328124996], + [145.08232421875007, -7.82812], + [144.97382812500004, -7.802148437500009], + [144.92089843750003, -7.776660156249974], + [144.88535156250006, -7.73359375], + [144.86425781249997, -7.631542968749983], + [144.77343750000003, -7.642480468749994], + [144.684375, -7.624804687500031], + [144.59794921875007, -7.58896484375002], + [144.50986328125006, -7.567382812499972], + [144.44970703124997, -7.598144531250014], + [144.43125000000012, -7.679394531249969], + [144.40341796875012, -7.683593750000014], + [144.35185546875002, -7.666992187500014], + [144.32617187500003, -7.676757812499957], + [144.2702148437501, -7.714257812499966], + [144.22539062500002, -7.764941406249989], + [144.14287109375007, -7.757226562500009], + [143.97363281249997, -7.705957031249952], + [143.89824218750007, -7.673828124999986], + [143.83417968750004, -7.615917968749997], + [143.77910156250002, -7.550097656250003], + [143.72333984375004, -7.498242187500011], + [143.65488281250012, -7.460351562500009], + [143.74208984375005, -7.549804687500028], + [143.94228515625005, -7.944238281250009], + [143.89218750000006, -7.951855468749955], + [143.840625, -7.941894531249972], + [143.88798828125002, -8.017675781249963], + [143.8333984375, -8.029101562499974], + [143.77929687499997, -8.02822265624998], + [143.66503906249997, -7.995507812499966], + [143.55156250000002, -7.984667968749989], + [143.51816406250006, -8.000683593749955], + [143.5421875000001, -8.029101562499974], + [143.58203125000003, -8.112695312499952], + [143.61376953125003, -8.200390624999969], + [143.45, -8.23984375], + [143.28203125000002, -8.263867187500026], + [143.0949218750001, -8.311230468749983], + [142.90546875000004, -8.314453125000028], + [142.80830078125004, -8.2875], + [142.70859375000006, -8.27226562499996], + [142.61503906250002, -8.2875], + [142.52412109375004, -8.32167968749998], + [142.44755859375002, -8.316210937500031], + [142.39921875000002, -8.254687500000017], + [142.37646484375003, -8.208007812500014], + [142.34746093750002, -8.167480468750014], + [142.27587890625003, -8.173925781249991], + [142.20683593750002, -8.195800781250014], + [142.32509765625, -8.198339843749991], + [142.36054687500004, -8.25], + [142.39101562500005, -8.312695312500026], + [142.47480468750004, -8.369433593750031], + [142.57597656250007, -8.335644531249983], + [142.79794921875006, -8.345019531250031], + [143.01367187499997, -8.44384765625], + [143.06484375, -8.455175781250006], + [143.11181640624997, -8.474511718750037], + [143.22294921875007, -8.572167968750037], + [143.30673828125006, -8.6609375], + [143.37724609375007, -8.762207031250028], + [143.39218750000006, -8.80185546875002], + [143.3875, -8.908203125000014], + [143.36621093750003, -8.961035156250034], + [143.22685546875007, -9.035937500000017], + [143.07822265625006, -9.092480468749983], + [142.85917968750002, -9.202636718749957], + [142.6471679687501, -9.327832031249969], + [142.53574218750012, -9.303320312499949], + [142.4352539062501, -9.23701171875004], + [142.39628906250002, -9.219042968750017], + [142.29277343750002, -9.182910156250031], + [142.22958984375012, -9.169921874999957], + [141.97890625, -9.198144531250023], + [141.72734375000002, -9.21259765625004], + [141.62158203124997, -9.211328124999952], + [141.51875, -9.190136718749983], + [141.4056640625, -9.150683593750031], + [141.29365234375004, -9.16816406250004], + [141.21699218750004, -9.214453124999963], + [141.13320312500005, -9.221289062500034], + [140.97617187500012, -9.11875], + [140.97597656250005, -9.105566406249991], + [140.97597656250005, -8.902246093749952], + [140.97587890625002, -8.698925781250011], + [140.97578125000004, -8.495703125], + [140.97568359375006, -8.292382812499966], + [140.97558593749997, -8.089062500000026], + [140.97558593749997, -7.885742187499986], + [140.97548828125005, -7.68251953124998], + [140.97539062500002, -7.47919921875004], + [140.9752929687501, -7.27587890625], + [140.97519531250006, -7.072558593749974], + [140.97519531250006, -6.90537109375002], + [140.91953125000012, -6.840039062500026], + [140.86230468749997, -6.740039062499989], + [140.87460937500012, -6.611523437500011], + [140.94404296875004, -6.452246093749977], + [140.975, -6.346093750000023], + [140.975, -6.259375], + [140.97490234375002, -6.056152343750028], + [140.9748046875001, -5.852832031249989], + [140.97470703125006, -5.649511718749963], + [140.97460937499997, -5.446191406250009], + [140.97460937499997, -5.24296875], + [140.97451171875005, -5.039648437499963], + [140.97441406250002, -4.836328125000023], + [140.9743164062501, -4.633007812499997], + [140.97421875000006, -4.429785156249977], + [140.97421875000006, -4.226464843750037], + [140.9740234375, -4.023144531249997], + [140.9740234375, -3.819824218749972], + [140.97392578125002, -3.616601562499952], + [140.97382812500004, -3.413281250000011], + [140.97373046875006, -3.209960937499986], + [140.97363281250003, -3.006640624999946], + [140.97353515625, -2.803417968750026], + [140.97343750000007, -2.681054687499966], + [140.97343750000007, -2.613574218749989], + [140.97343750000007, -2.609765625], + [141.00332031250005, -2.61015625], + [141.10478515625002, -2.611328124999972], + [141.18564453125006, -2.627832031249952], + [141.68681640625002, -2.845019531249974], + [141.83652343750006, -2.932128906249957], + [141.8875, -2.952539062500023], + [141.93779296875007, -2.953320312500011], + [141.9857421875, -2.963574218749969], + [142.21152343750006, -3.083496093749972], + [142.5490234375001, -3.204589843749957], + [142.90517578125, -3.32070312499998], + [143.015625, -3.344921875000026], + [143.12998046875012, -3.355078124999963], + [143.3783203125, -3.395312499999989], + [143.50898437500004, -3.431152343750014], + [143.7005859375, -3.57333984375002], + [143.79716796875007, -3.617285156250006], + [143.88769531249997, -3.697460937499997], + [144.01582031250004, -3.783593749999966], + [144.06640625000003, -3.80517578125], + [144.12197265625, -3.815234375000017] + ] + ], + [ + [ + [152.96582031249997, -4.756347656249986], + [152.89169921875006, -4.832421875000023], + [152.84560546875, -4.761523437499974], + [152.7865234375, -4.699414062500026], + [152.73994140625004, -4.635839843750034], + [152.68066406250003, -4.498437500000023], + [152.67773437499997, -4.429199218749943], + [152.69335937499997, -4.355957031249943], + [152.69677734375003, -4.282031249999989], + [152.66816406250004, -4.131835937500028], + [152.59843750000007, -3.994824218750011], + [152.35576171875002, -3.668164062499983], + [152.27939453125006, -3.582421875], + [152.19218750000002, -3.505859374999957], + [152.13632812500006, -3.48710937499996], + [152.02324218750002, -3.46875], + [151.97294921875002, -3.453417968750017], + [151.87978515625005, -3.400097656249997], + [151.79316406250004, -3.337890625000014], + [151.57851562500005, -3.153515625000026], + [151.4650390625001, -3.101367187499974], + [151.40507812500002, -3.036914062499989], + [151.06679687500005, -2.829003906249994], + [150.96806640625002, -2.77988281250002], + [150.84785156250004, -2.77978515625], + [150.74609374999997, -2.73886718750002], + [150.82646484375002, -2.712890624999972], + [150.8429687500001, -2.643554687499957], + [150.8253906250001, -2.572949218749969], + [150.99531250000004, -2.688281250000017], + [151.17460937500007, -2.789062500000028], + [151.22646484375, -2.870312499999969], + [151.31474609375002, -2.875292968750017], + [151.47539062500007, -2.94248046875002], + [151.58574218750007, -3.003027343750006], + [151.68984375, -3.07285156250002], + [151.80712890624997, -3.172851562499972], + [152.03291015625004, -3.25136718749998], + [152.06503906250012, -3.27988281250002], + [152.17939453125004, -3.41035156250004], + [152.3294921875, -3.520996093750014], + [152.38046875000006, -3.581933593749994], + [153.01679687500004, -4.105664062500026], + [153.1242187500001, -4.25234375], + [153.1325195312501, -4.352441406250037], + [153.11152343750004, -4.391699218750034], + [153.04433593750005, -4.47636718749996], + [153.04560546875004, -4.576367187499997], + [153.02324218750002, -4.666308593750031], + [152.96582031249997, -4.756347656249986] + ] + ], + [ + [ + [150.43662109375012, -2.66181640625004], + [150.2375, -2.675488281249983], + [150.16572265625004, -2.660253906249991], + [150.10156249999997, -2.602539062499957], + [150.04345703125003, -2.5125], + [149.98515625000007, -2.491503906249989], + [149.96162109375004, -2.473828125000026], + [150.10253906249997, -2.404980468750026], + [150.22714843750006, -2.384179687499966], + [150.42949218750007, -2.47041015625004], + [150.45, -2.513281249999977], + [150.45156250000005, -2.541113281249963], + [150.44609375000007, -2.632324218749986], + [150.43662109375012, -2.66181640625004] + ] + ], + [ + [ + [147.87695312499997, -2.28310546874998], + [147.84453125000002, -2.33574218749996], + [147.7689453125, -2.33125], + [147.73554687500004, -2.31552734375002], + [147.7902343750001, -2.305566406250023], + [147.81220703125004, -2.262109374999966], + [147.83583984375005, -2.24677734375004], + [147.87695312499997, -2.28310546874998] + ] + ], + [ + [ + [147.06757812500004, -1.96015625], + [147.4005859375001, -2.025097656249997], + [147.42255859375004, -2.024316406250023], + [147.41875, -2.001074218749991], + [147.42441406250006, -1.99453125], + [147.44414062500002, -2.011523437499989], + [147.43808593750012, -2.05898437499998], + [147.38544921875004, -2.070605468750031], + [147.33652343750012, -2.066015625], + [147.30136718750006, -2.090429687499991], + [147.20634765625007, -2.181933593749974], + [147.14218750000006, -2.166601562499963], + [147.0638671875, -2.187109374999963], + [146.92636718750012, -2.1890625], + [146.74785156250002, -2.14882812499998], + [146.69912109375, -2.182714843749963], + [146.6354492187501, -2.17333984375], + [146.57246093750004, -2.210449218750014], + [146.54648437500012, -2.20859375], + [146.53134765625012, -2.154101562499989], + [146.5324218750001, -2.126171874999983], + [146.60703125000006, -2.102539062499972], + [146.59589843750004, -2.016894531250017], + [146.65625, -1.97402343749998], + [146.76005859375002, -1.977734375000026], + [146.85712890625004, -1.948535156250031], + [147.06757812500004, -1.96015625] + ] + ], + [ + [ + [149.76542968750007, -1.553027343750017], + [149.76318359375003, -1.589160156250003], + [149.69091796874997, -1.57089843750002], + [149.6710937500001, -1.576269531249949], + [149.54589843749997, -1.471679687499957], + [149.54785156249997, -1.407714843749986], + [149.58095703125005, -1.353222656249983], + [149.6330078125001, -1.362011718749997], + [149.72529296875004, -1.430664062499957], + [149.76542968750007, -1.553027343750017] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Poland", + "iso_a2": "PL", + "iso_a3": "POL", + "iso_n3": "616", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [19.604394531250023, 54.4591796875], + [19.64423828125001, 54.447070312499996], + [19.92431640625, 54.433984375], + [20.20820312500001, 54.420751953125], + [20.66474609375001, 54.406640625], + [21.140527343750023, 54.391796875], + [21.634179687500023, 54.37646484375], + [22.16845703125, 54.35986328125], + [22.731835937500023, 54.35009765625], + [22.766210937500006, 54.356787109375], + [22.82373046875, 54.395800781249996], + [22.893945312500023, 54.39052734375], + [22.97675781250001, 54.366357421875], + [23.015527343750023, 54.34833984375], + [23.03193359375001, 54.327880859375], + [23.04218750000001, 54.30419921875], + [23.0875, 54.299462890625], + [23.170312500000023, 54.2814453125], + [23.282324218750006, 54.24033203125], + [23.3701171875, 54.200488281249996], + [23.45361328125, 54.14345703125], + [23.481347656250023, 54.07900390625], + [23.483007812500006, 54.00595703125], + [23.477636718750006, 53.958935546875], + [23.484667968750017, 53.939794921875], + [23.598925781250017, 53.59921875], + [23.78925781250001, 53.270947265625], + [23.859179687500017, 53.112109375], + [23.887109375000023, 53.0275390625], + [23.909375, 52.9048828125], + [23.916308593750017, 52.81875], + [23.915429687500023, 52.770263671875], + [23.901269531250023, 52.70361328125], + [23.8447265625, 52.664208984375], + [23.479589843750006, 52.5515625], + [23.410937500000017, 52.5162109375], + [23.303320312500006, 52.428369140625], + [23.2041015625, 52.337890625], + [23.18125, 52.306982421875], + [23.175097656250017, 52.28662109375], + [23.19697265625001, 52.25693359375], + [23.3271484375, 52.208447265625], + [23.458398437500023, 52.16953125], + [23.50117187500001, 52.140380859375], + [23.597949218750017, 52.103076171874996], + [23.63330078125, 52.069580078125], + [23.652441406250006, 52.040380859375], + [23.65107421875001, 51.972998046875], + [23.607421875, 51.87978515625], + [23.62568359375001, 51.809326171875], + [23.581347656250017, 51.76240234375], + [23.544824218750023, 51.710253906249996], + [23.539648437500006, 51.618896484375], + [23.605273437500017, 51.517919921875], + [23.65888671875001, 51.448974609375], + [23.6796875, 51.394921875], + [23.657617187500023, 51.352490234375], + [23.664453125000023, 51.31005859375], + [23.712207031250017, 51.26513671875], + [23.86347656250001, 51.126220703125], + [23.938085937500006, 50.992529296875], + [23.985742187500023, 50.9404296875], + [24.095800781250006, 50.87275390625], + [24.105761718750017, 50.844970703125], + [24.061621093750006, 50.81953125], + [24.025976562500006, 50.816162109375], + [23.9970703125, 50.809375], + [23.978417968750023, 50.785595703125], + [24.00732421875, 50.76015625], + [24.046289062500023, 50.722802734374994], + [24.0947265625, 50.617041015625], + [24.089941406250006, 50.53046875], + [24.052636718750023, 50.508447265624994], + [24.004980468750006, 50.45703125], + [23.97265625, 50.410058593749994], + [23.711718750000017, 50.37734375], + [23.649023437500006, 50.327050781249994], + [23.506152343750017, 50.229833984375], + [23.408593750000023, 50.17392578125], + [23.264453125000017, 50.0728515625], + [23.03632812500001, 49.899072265624994], + [22.952246093750006, 49.8263671875], + [22.890722656250006, 49.766259765624994], + [22.706152343750006, 49.606201171875], + [22.6494140625, 49.539013671875], + [22.66064453125, 49.483691406249996], + [22.71992187500001, 49.353808593749996], + [22.732421875, 49.295166015625], + [22.721972656250017, 49.240966796875], + [22.70234375000001, 49.192724609375], + [22.705664062500006, 49.171191406249996], + [22.760156250000023, 49.13623046875], + [22.847070312500023, 49.08125], + [22.85205078125, 49.062744140625], + [22.839746093750023, 49.038916015625], + [22.80976562500001, 49.020751953125], + [22.701269531250006, 49.039941406249994], + [22.579980468750023, 49.077197265624996], + [22.538671875, 49.072705078125], + [22.473046875000023, 49.081298828125], + [22.202539062500023, 49.153222656249994], + [22.020117187500006, 49.209521484374996], + [22.00214843750001, 49.24609375], + [21.967675781250023, 49.299072265625], + [21.89013671875, 49.34345703125], + [21.71210937500001, 49.38193359375], + [21.6396484375, 49.411962890625], + [21.350488281250023, 49.428759765624996], + [21.225, 49.429443359375], + [21.136132812500023, 49.417041015624996], + [21.079394531250017, 49.418261718749996], + [21.00117187500001, 49.33984375], + [20.947265625, 49.31708984375], + [20.868457031250017, 49.314697265625], + [20.79951171875001, 49.328662109374996], + [20.72900390625, 49.369921875], + [20.616113281250023, 49.39169921875], + [20.534570312500023, 49.381201171875], + [20.474511718750023, 49.390185546874996], + [20.422656250000017, 49.392333984375], + [20.404687500000023, 49.384082031249996], + [20.36298828125001, 49.38525390625], + [20.302539062500017, 49.365527343749996], + [20.23652343750001, 49.337646484375], + [20.163671875, 49.31640625], + [20.10761718750001, 49.270751953125], + [20.0576171875, 49.181298828124994], + [19.916113281250006, 49.22138671875], + [19.868945312500017, 49.204003906249994], + [19.80224609375, 49.192333984375], + [19.756640625000017, 49.204394531249996], + [19.767382812500017, 49.235205078125], + [19.787988281250023, 49.269970703125], + [19.787011718750023, 49.3185546875], + [19.77392578125, 49.37216796875], + [19.730078125, 49.389599609375], + [19.664160156250006, 49.396044921874996], + [19.630273437500023, 49.406640625], + [19.62666015625001, 49.424365234374996], + [19.593066406250017, 49.447119140625], + [19.534765625, 49.504785156249994], + [19.47968750000001, 49.5763671875], + [19.44160156250001, 49.597705078124996], + [19.38623046875, 49.563623046874994], + [19.30234375, 49.524853515625], + [19.25019531250001, 49.51142578125], + [19.1494140625, 49.4], + [18.968359375, 49.396240234375], + [18.95722656250001, 49.448291015624996], + [18.93818359375001, 49.498291015625], + [18.83222656250001, 49.510791015624996], + [18.82929687500001, 49.54013671875], + [18.806933593750017, 49.613720703125], + [18.594628906250023, 49.7578125], + [18.56884765625, 49.817919921874996], + [18.5771484375, 49.841113281249996], + [18.562402343750023, 49.879345703125], + [18.516210937500006, 49.902392578124996], + [18.348437500000017, 49.929833984374994], + [18.305273437500006, 49.9140625], + [18.26630859375001, 49.9302734375], + [18.20527343750001, 49.964746093749994], + [18.09921875, 49.9927734375], + [18.087695312500017, 50.007275390625], + [18.04951171875001, 50.03193359375], + [18.0283203125, 50.03525390625], + [18.0146484375, 50.020263671875], + [17.983789062500023, 49.999072265624996], + [17.874804687500017, 49.972265625], + [17.83125, 49.983300781249994], + [17.79169921875001, 50.006591796875], + [17.74658203125, 50.056787109374994], + [17.681054687500023, 50.10078125], + [17.627050781250006, 50.11640625], + [17.596289062500006, 50.139501953125], + [17.58935546875, 50.157470703125], + [17.709277343750017, 50.1935546875], + [17.735449218750006, 50.230761718749996], + [17.720117187500023, 50.298632812499996], + [17.702246093750006, 50.307177734374996], + [17.654687500000023, 50.284228515624996], + [17.554589843750023, 50.2640625], + [17.462304687500023, 50.254785156249994], + [17.41523437500001, 50.254785156249994], + [17.151953125, 50.378320312499994], + [16.980761718750017, 50.41611328125], + [16.88007812500001, 50.427050781249996], + [16.869140625, 50.414501953125], + [16.91474609375001, 50.34521484375], + [16.99335937500001, 50.259716796875], + [16.989648437500023, 50.2369140625], + [16.895312500000017, 50.201953125], + [16.841796875, 50.18671875], + [16.778613281250017, 50.15703125], + [16.72529296875001, 50.116064453125], + [16.679101562500023, 50.097460937499996], + [16.63916015625, 50.1021484375], + [16.5966796875, 50.121923828125], + [16.487597656250017, 50.248388671875], + [16.350488281250023, 50.34521484375], + [16.33417968750001, 50.36689453125], + [16.291308593750017, 50.371875], + [16.230761718750017, 50.394091796874996], + [16.210351562500023, 50.423730468749994], + [16.24072265625, 50.4546875], + [16.282519531250017, 50.4830078125], + [16.35664062500001, 50.50048828125], + [16.37910156250001, 50.516894531249996], + [16.39228515625001, 50.541650390624994], + [16.419726562500017, 50.573632812499994], + [16.4125, 50.58515625], + [16.359960937500006, 50.621386718749996], + [16.2822265625, 50.655615234375], + [16.06640625, 50.629931640624996], + [16.007226562500023, 50.611621093749996], + [15.973828125000011, 50.63544921875], + [15.948535156250017, 50.670263671875], + [15.893945312500023, 50.676904296874994], + [15.819238281250023, 50.70869140625], + [15.730566406250006, 50.739697265625], + [15.643945312500023, 50.748876953125], + [15.463964843750006, 50.793847656249994], + [15.394628906250006, 50.796289062499994], + [15.354394531250023, 50.811767578125], + [15.312597656250006, 50.845751953124996], + [15.277050781250011, 50.8830078125], + [15.258593750000017, 50.958544921874996], + [15.1259765625, 50.99287109375], + [14.99375, 51.01435546875], + [14.984472656250006, 51.00341796875], + [14.989941406250011, 50.92724609375], + [14.98291015625, 50.886572265625], + [14.895800781250017, 50.861376953124996], + [14.809375, 50.858984375], + [14.814257812500017, 50.871630859374996], + [14.91748046875, 51.008740234375], + [14.9638671875, 51.095117187499994], + [15.0166015625, 51.252734375], + [14.953125, 51.3771484375], + [14.935546875, 51.435351562499996], + [14.905957031250011, 51.463330078125], + [14.724707031250006, 51.523876953125], + [14.7109375, 51.544921875], + [14.738671875000023, 51.6271484375], + [14.724902343750017, 51.66171875], + [14.681347656250011, 51.698193359375], + [14.623925781250023, 51.770800781249996], + [14.601660156250006, 51.832373046875], + [14.674902343750006, 51.904833984374996], + [14.69296875, 51.9580078125], + [14.724804687500011, 52.030859375], + [14.748144531250006, 52.07080078125], + [14.752539062500006, 52.081835937499996], + [14.70458984375, 52.110205078125], + [14.6923828125, 52.150048828125], + [14.705371093750017, 52.207470703125], + [14.679882812500011, 52.25], + [14.615625, 52.277636718749996], + [14.573925781250011, 52.31416015625], + [14.554589843750023, 52.359667968749996], + [14.569726562500023, 52.431103515625], + [14.619433593750017, 52.528515625], + [14.514062500000023, 52.64560546875], + [14.253710937500017, 52.782519531249996], + [14.128613281250011, 52.878222656249996], + [14.138867187500011, 52.932861328125], + [14.193652343750017, 52.98232421875], + [14.293164062500011, 53.0267578125], + [14.368554687500023, 53.10556640625], + [14.410937500000017, 53.199023437499996], + [14.412304687500011, 53.216748046875], + [14.41455078125, 53.283496093749996], + [14.298730468750023, 53.556445312499996], + [14.279882812500006, 53.624755859375], + [14.26611328125, 53.70712890625], + [14.258886718750006, 53.729638671875], + [14.487597656250017, 53.671875], + [14.58349609375, 53.63935546875], + [14.571582031250017, 53.67587890625], + [14.552148437500023, 53.707324218749996], + [14.56494140625, 53.753515625], + [14.558398437500017, 53.823193359375], + [14.350878906250017, 53.858740234375], + [14.213671875000017, 53.870751953125], + [14.1982421875, 53.91904296875], + [14.21142578125, 53.950341796875], + [14.249316406250017, 53.931933593749996], + [14.384179687500023, 53.92470703125], + [14.715722656250023, 54.018310546875], + [15.288378906250017, 54.139892578125], + [15.9, 54.253955078124996], + [16.042773437500017, 54.266357421875], + [16.186328125000017, 54.290380859375], + [16.239355468750006, 54.333056640624996], + [16.292285156250017, 54.361621093749996], + [16.375585937500006, 54.436865234375], + [16.55976562500001, 54.55380859375], + [16.88544921875001, 54.59638671875], + [17.00703125000001, 54.65185546875], + [17.26191406250001, 54.729541015624996], + [17.84296875000001, 54.816699218749996], + [18.08564453125001, 54.83583984375], + [18.32343750000001, 54.838183593749996], + [18.53515625, 54.76943359375], + [18.75927734375, 54.6845703125], + [18.799609375000017, 54.633349609374996], + [18.678320312500006, 54.665283203125], + [18.5015625, 54.741503906249996], + [18.43623046875001, 54.7447265625], + [18.58710937500001, 54.512890625], + [18.66962890625001, 54.430908203125], + [18.83642578125, 54.369580078125], + [18.97626953125001, 54.348925781249996], + [19.407128906250023, 54.386083984375], + [19.56015625, 54.434619140624996], + [19.604394531250023, 54.4591796875] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Puerto Rico", + "iso_a2": "PR", + "iso_a3": "PRI", + "iso_n3": "630", + "continent": "North America" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-67.87246093749997, 18.059863281250017], + [-67.8818359375, 18.058935546875006], + [-67.89116210937493, 18.059912109375006], + [-67.89545898437493, 18.062792968750074], + [-67.90190429687499, 18.071875], + [-67.93037109374993, 18.0869140625], + [-67.93706054687496, 18.100634765625045], + [-67.93061523437498, 18.115136718749994], + [-67.9189453125, 18.120898437500017], + [-67.86108398437494, 18.12255859375], + [-67.85517578124998, 18.121142578125045], + [-67.84365234374994, 18.111035156249955], + [-67.84335937499998, 18.10395507812501], + [-67.84907226562498, 18.097021484375034], + [-67.85917968749999, 18.07958984375003], + [-67.86342773437497, 18.07519531250003], + [-67.86679687499995, 18.070654296874977], + [-67.86811523437495, 18.062792968750074], + [-67.87246093749997, 18.059863281250017] + ] + ], + [ + [ + [-65.42558593749999, 18.105615234374994], + [-65.50400390624998, 18.099511718749994], + [-65.555078125, 18.10766601562497], + [-65.57221679687493, 18.137304687499977], + [-65.4771484375, 18.16503906250003], + [-65.36621093749997, 18.16108398437501], + [-65.30268554687501, 18.144384765625006], + [-65.29487304687501, 18.133349609375045], + [-65.42558593749999, 18.105615234374994] + ] + ], + [ + [ + [-66.12939453125003, 18.444921875000034], + [-66.09848632812503, 18.425195312499994], + [-66.06840820312496, 18.428027343750045], + [-66.09267578125, 18.468994140625057], + [-66.07041015625, 18.468994140625057], + [-65.87875976562503, 18.44384765625], + [-65.75556640624998, 18.401611328125], + [-65.62880859375, 18.381396484375045], + [-65.62084960937497, 18.242333984374966], + [-65.71840820312497, 18.186669921874994], + [-65.7822265625, 18.128613281249983], + [-65.834130859375, 18.05732421875001], + [-65.97080078124995, 17.974365234375], + [-66.13549804687503, 17.949462890625], + [-66.24501953124997, 17.94726562499997], + [-66.28588867187503, 17.949951171875], + [-66.32578124999998, 17.964160156250045], + [-66.40854492187498, 17.95058593750005], + [-66.51079101562502, 17.98701171875001], + [-66.59843750000002, 17.977880859375006], + [-66.77241210937493, 17.986572265625], + [-66.83759765624998, 17.95507812499997], + [-66.9, 17.947900390625023], + [-66.96123046874993, 17.953759765624966], + [-67.013330078125, 17.967871093750006], + [-67.14238281249999, 17.966699218750023], + [-67.19687, 17.994189453125045], + [-67.17431640625, 18.152539062499983], + [-67.17246093749998, 18.22421875], + [-67.20415039062496, 18.283398437499983], + [-67.23896484374995, 18.320654296875034], + [-67.2640625, 18.364599609375006], + [-67.21337890624997, 18.393603515625045], + [-67.17177734375002, 18.43579101562503], + [-67.15864257812501, 18.499218749999983], + [-67.11303710937497, 18.514794921874966], + [-67.05961914062499, 18.522167968749955], + [-66.812890625, 18.492529296875034], + [-66.18857421875, 18.47578125000001], + [-66.15307617187497, 18.47065429687504], + [-66.12939453125003, 18.444921875000034] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Dem. Rep. Korea", + "iso_a2": "KP", + "iso_a3": "PRK", + "iso_n3": "408", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [124.90527343750003, 39.536279296874994], + [124.84892578125002, 39.507568359375], + [124.84609375000005, 39.55888671874996], + [124.88955078125, 39.60209960937499], + [124.93457031249997, 39.6078125], + [124.90527343750003, 39.536279296874994] + ] + ], + [ + [ + [129.97695312500005, 42.974853515625], + [130.02226562500002, 42.96259765625001], + [130.08261718750006, 42.97416992187496], + [130.12480468750007, 42.95600585937498], + [130.15126953125005, 42.91796875000006], + [130.24033203125006, 42.891796874999955], + [130.24882812500002, 42.87260742187496], + [130.24667968750012, 42.744824218749955], + [130.29560546875004, 42.68496093750002], + [130.3607421875, 42.630859375], + [130.45029296875012, 42.58168945312502], + [130.49824218750004, 42.570507812499955], + [130.52695312500012, 42.535400390625], + [130.55410156250005, 42.47470703124998], + [130.61796875000007, 42.415625], + [130.6515625000001, 42.372509765624955], + [130.65800781250007, 42.327783203124994], + [130.68730468750007, 42.30253906249999], + [130.63652343750002, 42.274853515624955], + [130.56923828125, 42.29169921875001], + [130.45751953124997, 42.30170898437501], + [130.31474609375002, 42.214111328125], + [130.2357421875, 42.183203125000034], + [130.1798828125001, 42.096972656250045], + [130.06826171875, 42.045751953125006], + [130.00732421875003, 41.99116210937498], + [129.92822265624997, 41.896728515625], + [129.8763671875, 41.805517578125006], + [129.75634765624997, 41.712255859375006], + [129.68632812500007, 41.594970703125], + [129.68242187500002, 41.49433593750001], + [129.75898437500004, 41.39150390625002], + [129.76582031250004, 41.30385742187502], + [129.7121093750001, 41.123681640624994], + [129.74199218750007, 40.932275390624994], + [129.70869140625004, 40.857324218749994], + [129.34111328125002, 40.72631835937506], + [129.24511718749997, 40.661035156249966], + [129.10976562500005, 40.49106445312498], + [128.94521484375, 40.427880859374994], + [128.84296875000004, 40.35849609374998], + [128.70136718750004, 40.317529296874994], + [128.6107421875, 40.19790039062505], + [128.51123046874997, 40.130224609375006], + [128.39296875, 40.08896484375006], + [128.30449218750002, 40.03593749999999], + [128.10634765625, 40.032568359375006], + [127.96660156250002, 39.99560546875003], + [127.86708984375, 39.89594726562498], + [127.56816406250002, 39.78198242187503], + [127.52744140625006, 39.69570312500005], + [127.54726562500005, 39.56279296874996], + [127.54892578125012, 39.46108398437502], + [127.52285156250005, 39.37739257812504], + [127.45742187500005, 39.400976562500034], + [127.422265625, 39.37358398437496], + [127.38349609375004, 39.296142578125], + [127.39453125000003, 39.207910156249966], + [127.49697265625, 39.179492187500045], + [127.58095703125, 39.14326171875004], + [127.69892578125004, 39.12504882812496], + [127.78613281250003, 39.084130859374966], + [127.97167968749997, 38.89799804687499], + [128.12304687500003, 38.81640625000006], + [128.1625, 38.78613281250003], + [128.2494140625, 38.745214843750034], + [128.32949218750005, 38.68090820312497], + [128.37460937500012, 38.6234375], + [128.33945312500006, 38.60786132812501], + [128.27929687499997, 38.523779296875034], + [128.22314453124997, 38.41699218750003], + [128.16865234375004, 38.35932617187501], + [128.10625, 38.32734374999998], + [128.03896484375, 38.30854492187498], + [127.90527343749997, 38.30043945312502], + [127.78466796874997, 38.30771484374998], + [127.7455078125, 38.31923828125002], + [127.57949218750005, 38.3125], + [127.53271484375003, 38.30498046874996], + [127.29404296875006, 38.31328125], + [127.16953125000006, 38.304541015625034], + [127.09033203125003, 38.28388671875001], + [127.00966796875005, 38.24052734374996], + [126.94003906250006, 38.17558593749999], + [126.87890625000003, 38.106054687500034], + [126.75429687500005, 37.97895507812498], + [126.66679687500007, 37.91718750000001], + [126.66650390625003, 37.82792968750002], + [126.66455078124997, 37.80073242187498], + [126.63388671875012, 37.78183593750006], + [126.6232421875001, 37.790185546874966], + [126.57275390625003, 37.79682617187498], + [126.36992187500007, 37.87836914062501], + [126.203125, 37.828515624999966], + [126.16103515625, 37.76372070312499], + [126.11669921875003, 37.74291992187503], + [126.05029296874997, 37.86982421875004], + [125.94169921875007, 37.87368164062502], + [125.76914062500006, 37.98535156250003], + [125.6950195312501, 37.962695312500045], + [125.67617187500005, 37.91772460937503], + [125.58154296874997, 37.81503906249998], + [125.44931640625012, 37.73022460937503], + [125.40664062500005, 37.71904296874996], + [125.35781250000005, 37.72480468749998], + [125.36484375000006, 37.748242187499955], + [125.31074218750004, 37.843505859375], + [125.10195312500005, 37.88208007812506], + [125.0267578125, 37.92260742187503], + [124.98876953124997, 37.93144531249999], + [125.19316406250007, 38.03779296874998], + [125.24667968750012, 38.05683593750004], + [125.2067382812501, 38.08154296875], + [125.16259765624997, 38.093652343749994], + [124.99501953125, 38.077832031249955], + [124.90703125000002, 38.112646484375034], + [124.7794921875001, 38.10151367187498], + [124.69091796874997, 38.12919921875002], + [124.87451171874997, 38.23339843750003], + [124.88271484375005, 38.29497070312496], + [124.88056640625004, 38.34165039062506], + [124.97373046875012, 38.48012695312502], + [125.06738281250003, 38.556738281250006], + [125.30966796875006, 38.665380859375006], + [125.41533203125002, 38.68041992187497], + [125.49179687500006, 38.67612304687498], + [125.55449218750002, 38.68623046875001], + [125.48867187500005, 38.72778320312503], + [125.42421875000005, 38.746875], + [125.29892578125012, 38.74296875000002], + [125.16884765625, 38.80551757812506], + [125.15732421875006, 38.87153320312501], + [125.40966796875003, 39.28837890625002], + [125.41318359375012, 39.326269531250006], + [125.37363281250006, 39.427636718749966], + [125.36083984375003, 39.52661132812497], + [125.18007812500005, 39.58349609375], + [125.10009765625003, 39.59033203124997], + [124.86787109375004, 39.70180664062505], + [124.77529296875, 39.75805664062506], + [124.73886718750006, 39.74150390624996], + [124.73222656250002, 39.65219726562498], + [124.69921874999997, 39.63237304687502], + [124.63828125000006, 39.61508789062506], + [124.60761718750004, 39.71694335937502], + [124.55742187500002, 39.79057617187502], + [124.40380859375003, 39.86552734375002], + [124.34863281249997, 39.906884765624994], + [124.37509765625012, 39.99614257812496], + [124.36210937500002, 40.004052734374994], + [124.38662109375005, 40.10424804687506], + [124.48105468750012, 40.181640625], + [124.71240234374997, 40.319238281249966], + [124.77197265624997, 40.38374023437498], + [124.8893554687501, 40.459814453125006], + [124.94228515625, 40.45815429687502], + [124.996875, 40.46474609375005], + [125.01337890625004, 40.497851562500045], + [125.02597656250012, 40.52387695312501], + [125.0729492187501, 40.547460937500034], + [125.1859375, 40.589404296875045], + [125.31445312499997, 40.644628906250006], + [125.41689453125, 40.65991210937503], + [125.54257812500012, 40.742578125], + [125.59384765625006, 40.77895507812502], + [125.64511718750012, 40.77895507812502], + [125.65917968749997, 40.7958984375], + [125.68828125000002, 40.83867187500002], + [125.72832031250002, 40.86669921875006], + [125.78398437500007, 40.87202148437498], + [125.87490234375005, 40.892236328124994], + [125.98906250000002, 40.904638671875034], + [126.06679687500005, 40.97407226562498], + [126.0931640625, 41.02368164062506], + [126.14453124999997, 41.078271484374994], + [126.2536132812501, 41.137792968750034], + [126.32871093750012, 41.225683593750006], + [126.4118164062501, 41.32133789062502], + [126.45146484375007, 41.35185546875002], + [126.49042968750004, 41.35805664062505], + [126.51357421875005, 41.39399414062501], + [126.54013671875012, 41.49555664062498], + [126.5783203125001, 41.594335937500034], + [126.60126953125004, 41.640966796875034], + [126.6969726562501, 41.69189453125003], + [126.72158203125005, 41.716552734375], + [126.74306640625, 41.724853515625], + [126.78769531250012, 41.71821289062498], + [126.84726562500006, 41.74799804687501], + [126.9035156250001, 41.78105468749999], + [126.95478515625004, 41.76948242187501], + [127.00693359375006, 41.742041015625034], + [127.06132812500007, 41.68735351562498], + [127.0853515625, 41.643798828125], + [127.12841796874997, 41.60742187500006], + [127.13671874999997, 41.554541015625034], + [127.17968750000003, 41.531347656250006], + [127.27080078125002, 41.51982421874996], + [127.4203125, 41.483789062499994], + [127.5169921875, 41.48173828125002], + [127.57216796875005, 41.45473632812502], + [127.68769531250004, 41.439990234375045], + [127.91865234375004, 41.46113281250001], + [128.0130859375, 41.44868164062504], + [128.05273437499997, 41.415625], + [128.11123046875, 41.389257812500006], + [128.14941406249997, 41.38774414062496], + [128.20029296875012, 41.43300781250005], + [128.25488281249997, 41.50654296875001], + [128.29091796875, 41.56279296875002], + [128.28925781250004, 41.60742187500006], + [128.25781250000003, 41.655371093750034], + [128.18173828125006, 41.700048828125006], + [128.13193359375006, 41.769140625000034], + [128.0841796875001, 41.84057617187503], + [128.05605468750005, 41.86376953125006], + [128.03291015625004, 41.89848632812502], + [128.0287109375, 41.95161132812501], + [128.04521484375007, 41.9875], + [128.16015625000003, 42.011621093749966], + [128.3078125000001, 42.02563476562497], + [128.42724609374997, 42.01074218749997], + [128.62675781250002, 42.02084960937498], + [128.74902343749997, 42.04067382812502], + [128.83984375000003, 42.03784179687497], + [128.92343750000006, 42.038232421874966], + [128.96064453125004, 42.06879882812498], + [129.07724609375006, 42.14238281249996], + [129.13369140625005, 42.16850585937496], + [129.1955078125001, 42.21845703125001], + [129.20537109375007, 42.27055664062496], + [129.21777343750003, 42.31269531250001], + [129.25253906250006, 42.35786132812498], + [129.3136718750001, 42.41357421874997], + [129.36582031250006, 42.43920898437503], + [129.42363281250002, 42.43588867187498], + [129.48486328124997, 42.41030273437502], + [129.52373046875002, 42.38466796875002], + [129.56757812500004, 42.39208984375003], + [129.60390625, 42.43588867187498], + [129.62792968749997, 42.44428710937501], + [129.69785156250012, 42.448144531249994], + [129.71972656249997, 42.475], + [129.746484375, 42.60380859374999], + [129.77343749999997, 42.70546875000002], + [129.77919921875, 42.77656250000001], + [129.8415039062501, 42.89423828125001], + [129.86103515625004, 42.96508789062497], + [129.89824218750002, 42.998144531250034], + [129.94121093750007, 42.99565429687499], + [129.97695312500005, 42.974853515625] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Portugal", + "iso_a2": "PT", + "iso_a3": "PRT", + "iso_n3": "620", + "continent": "Europe" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-17.190869140624926, 32.86860351562498], + [-17.054492187499932, 32.81586914062498], + [-16.92919921875, 32.841406250000034], + [-16.77397460937499, 32.77353515624998], + [-16.693261718749966, 32.75800781250001], + [-16.765283203124994, 32.70971679687503], + [-16.837402343749943, 32.648291015625034], + [-17.018261718749926, 32.66279296874998], + [-17.17119140624999, 32.721875], + [-17.226025390624983, 32.76684570312503], + [-17.241015625000017, 32.80737304687503], + [-17.190869140624926, 32.86860351562498] + ] + ], + [ + [ + [-25.02734375, 36.95996093750003], + [-25.03154296874999, 36.94155273437502], + [-25.08837890625, 36.948876953124994], + [-25.15991210937503, 36.94335937500003], + [-25.198388671874937, 36.99653320312501], + [-25.163525390624955, 37.01855468749997], + [-25.082910156249966, 37.024023437500034], + [-25.044335937499994, 37.00019531249998], + [-25.02734375, 36.95996093750003] + ] + ], + [ + [ + [-25.64897460937499, 37.840917968750006], + [-25.585498046874932, 37.83403320312502], + [-25.2666015625, 37.84863281249997], + [-25.18193359374996, 37.837890625], + [-25.19072265624999, 37.764355468749955], + [-25.251123046874937, 37.73500976562502], + [-25.439013671874932, 37.71533203125], + [-25.73447265624992, 37.76289062500001], + [-25.833691406249983, 37.826074218749994], + [-25.847851562499926, 37.872412109375034], + [-25.845898437499983, 37.89404296875], + [-25.783740234375017, 37.9111328125], + [-25.64897460937499, 37.840917968750006] + ] + ], + [ + [ + [-28.14726562499996, 38.45268554687502], + [-28.064794921875034, 38.412744140624966], + [-28.18974609374999, 38.404150390625006], + [-28.231152343749983, 38.38466796875002], + [-28.332421875000023, 38.41289062500002], + [-28.454492187500023, 38.40864257812504], + [-28.531152343749994, 38.462548828124994], + [-28.54882812499997, 38.51855468750003], + [-28.51025390625, 38.553027343750045], + [-28.402148437500017, 38.55336914062502], + [-28.14726562499996, 38.45268554687502] + ] + ], + [ + [ + [-28.641308593749983, 38.525], + [-28.743847656249983, 38.52236328125002], + [-28.842041015625, 38.5984375], + [-28.69775390625, 38.638476562500045], + [-28.655419921874994, 38.614062500000045], + [-28.624218749999955, 38.586328125], + [-28.605810546875034, 38.55073242187501], + [-28.641308593749983, 38.525] + ] + ], + [ + [ + [-27.778466796874966, 38.55561523437504], + [-27.825878906249926, 38.54355468749998], + [-28.09233398437496, 38.62055664062504], + [-28.18725585937503, 38.655371093750034], + [-28.310644531250006, 38.74389648437503], + [-27.962646484375, 38.63632812500006], + [-27.778466796874966, 38.55561523437504] + ] + ], + [ + [ + [-27.07524414062496, 38.643457031249994], + [-27.09531249999995, 38.63403320312503], + [-27.30283203124995, 38.66103515625002], + [-27.361914062500006, 38.69785156250006], + [-27.38593750000001, 38.765820312499955], + [-27.35102539062501, 38.788964843749966], + [-27.259667968749966, 38.80268554687501], + [-27.127001953125017, 38.78984375], + [-27.04194335937501, 38.7412109375], + [-27.04199218750003, 38.67890625000001], + [-27.07524414062496, 38.643457031249994] + ] + ], + [ + [ + [-31.137109374999937, 39.40693359375001], + [-31.181347656249983, 39.35893554687502], + [-31.25761718749999, 39.3759765625], + [-31.282958984375, 39.39409179687496], + [-31.260839843750034, 39.49677734375001], + [-31.199853515624937, 39.520849609375034], + [-31.138623046874983, 39.479443359374955], + [-31.137109374999937, 39.40693359375001] + ] + ], + [ + [ + [-8.173535156249955, 41.819970703124994], + [-8.152490234374937, 41.81196289062498], + [-8.094433593749926, 41.814208984375], + [-7.990966796874972, 41.851904296875034], + [-7.920849609374983, 41.883642578125006], + [-7.896386718749994, 41.87055664062501], + [-7.693066406249955, 41.88847656250002], + [-7.644677734374937, 41.87397460937498], + [-7.612597656249989, 41.85795898437502], + [-7.512597656249966, 41.83598632812499], + [-7.40361328124996, 41.833691406249955], + [-7.268554687499972, 41.864404296874994], + [-7.209619140624966, 41.89526367187497], + [-7.198339843749977, 41.92939453125001], + [-7.195361328124989, 41.95522460937502], + [-7.177929687499983, 41.9716796875], + [-7.147119140625023, 41.98115234374998], + [-7.09912109375, 41.964208984375006], + [-7.030468749999955, 41.95063476562498], + [-6.865527343749932, 41.945263671874955], + [-6.833203124999926, 41.96416015624999], + [-6.777294921874983, 41.95849609374997], + [-6.70361328125, 41.9345703125], + [-6.61826171874992, 41.9423828125], + [-6.575341796874966, 41.91308593749997], + [-6.557519531249966, 41.874121093750034], + [-6.552587890624949, 41.78955078125003], + [-6.558984375000023, 41.70405273437501], + [-6.542187499999955, 41.672509765624994], + [-6.48466796874996, 41.664404296875034], + [-6.391699218749949, 41.665380859375034], + [-6.308056640624955, 41.642187500000034], + [-6.243115234374955, 41.60180664062497], + [-6.221679687499943, 41.560449218749994], + [-6.2125, 41.53203125], + [-6.244335937499955, 41.51591796874996], + [-6.28935546874996, 41.45502929687501], + [-6.403125, 41.37539062500002], + [-6.56591796875, 41.3037109375], + [-6.690136718749983, 41.21450195312502], + [-6.775781249999937, 41.10771484375002], + [-6.8828125, 41.06240234375002], + [-6.91552734375, 41.038037109374955], + [-6.928466796874972, 41.009130859375006], + [-6.857714843749932, 40.87832031250002], + [-6.835888671874926, 40.777490234374994], + [-6.818359375, 40.65405273437497], + [-6.829833984374943, 40.619091796874955], + [-6.835693359374972, 40.48315429687497], + [-6.852050781249943, 40.44326171875002], + [-6.847949218749989, 40.410986328125006], + [-6.82177734375, 40.37626953124996], + [-6.81015625, 40.343115234375034], + [-6.85888671875, 40.30073242187504], + [-6.948437499999955, 40.251611328124966], + [-7.01469726562496, 40.208349609375034], + [-7.032617187499966, 40.16791992187498], + [-7.027832031249972, 40.14262695312496], + [-6.91640625, 40.05683593749998], + [-6.896093749999949, 40.02182617187506], + [-6.911181640624989, 39.937109375000034], + [-6.975390624999932, 39.79838867187502], + [-7.03671875, 39.713964843750034], + [-7.04741210937496, 39.70556640625], + [-7.117675781249972, 39.681689453125045], + [-7.454101562499943, 39.6806640625], + [-7.53569335937496, 39.66157226562501], + [-7.524218749999932, 39.644726562499955], + [-7.44511718749996, 39.53618164062496], + [-7.362695312499966, 39.47832031249999], + [-7.33544921875, 39.46513671874996], + [-7.30576171874992, 39.33813476562503], + [-7.172412109374932, 39.13520507812498], + [-7.042968749999943, 39.10708007812502], + [-6.997949218749994, 39.05644531250002], + [-7.00625, 38.985253906249994], + [-7.046044921874937, 38.907031250000045], + [-7.125488281249972, 38.82695312499999], + [-7.219921874999926, 38.77050781250003], + [-7.28154296874996, 38.71455078125001], + [-7.286376953124972, 38.649365234374955], + [-7.30595703124996, 38.56684570312501], + [-7.335791015625006, 38.50146484375003], + [-7.343017578124943, 38.45742187500002], + [-7.106396484374983, 38.181005859375006], + [-6.974804687499983, 38.194433593750006], + [-6.957568359374932, 38.187890625], + [-6.981103515624937, 38.121972656249966], + [-7.022851562500023, 38.04472656249996], + [-7.072509765625, 38.030029296875], + [-7.185449218749994, 38.00634765625006], + [-7.292236328125, 37.90644531250004], + [-7.378906249999972, 37.786376953125], + [-7.44394531249992, 37.72827148437497], + [-7.503515624999977, 37.58549804687502], + [-7.496044921874955, 37.52358398437502], + [-7.467187499999937, 37.42802734374999], + [-7.406152343749937, 37.17944335937497], + [-7.493603515624983, 37.168310546875034], + [-7.834130859374994, 37.005712890625034], + [-7.939697265625, 37.00541992187496], + [-8.136767578124932, 37.077050781249994], + [-8.484326171874955, 37.10004882812498], + [-8.597656249999943, 37.12133789062506], + [-8.739111328124977, 37.07460937500002], + [-8.8484375, 37.07568359374997], + [-8.935351562499989, 37.016015625], + [-8.997802734375028, 37.03227539062502], + [-8.92626953125, 37.16606445312502], + [-8.814160156249983, 37.43081054687502], + [-8.818554687500011, 37.59243164062502], + [-8.791845703124977, 37.73281250000002], + [-8.822656249999937, 37.871875], + [-8.87895507812496, 37.95869140625001], + [-8.802246093749972, 38.18383789062497], + [-8.810937499999966, 38.299755859374955], + [-8.881103515624943, 38.44667968750005], + [-8.668310546874949, 38.42431640625003], + [-8.73398437499992, 38.48242187500006], + [-8.798876953124989, 38.518164062500034], + [-8.861621093749989, 38.50996093749998], + [-8.914794921874972, 38.512109374999966], + [-9.09599609374996, 38.45522460937502], + [-9.186718749999955, 38.43818359375001], + [-9.213281249999937, 38.44809570312498], + [-9.203369140624972, 38.53896484375002], + [-9.250390624999966, 38.65673828125003], + [-9.17783203124992, 38.68779296874996], + [-9.093310546874932, 38.696679687499994], + [-9.021484374999943, 38.746875], + [-8.977050781249972, 38.80292968749998], + [-9.000488281249943, 38.90302734375004], + [-8.93808593749992, 38.998095703125045], + [-8.79160156249992, 39.07817382812502], + [-8.867480468749932, 39.06596679687502], + [-8.954296874999955, 39.016064453124955], + [-9.091015625000011, 38.834667968749955], + [-9.13579101562496, 38.74277343749998], + [-9.252294921875006, 38.712792968749994], + [-9.35673828124996, 38.697900390624994], + [-9.410205078124932, 38.70751953125], + [-9.474121093749972, 38.73085937500002], + [-9.479736328124972, 38.79877929687501], + [-9.474755859374937, 38.85292968750002], + [-9.431445312499989, 38.96044921875], + [-9.41435546874996, 39.11210937499999], + [-9.35283203124996, 39.248144531250006], + [-9.35722656249996, 39.28427734374998], + [-9.374755859374972, 39.338281249999966], + [-9.319628906249932, 39.39111328125], + [-9.251416015624983, 39.426025390625], + [-9.148291015624949, 39.542578125000034], + [-9.004052734374966, 39.820556640625], + [-8.837841796874926, 40.11567382812498], + [-8.851318359375028, 40.15180664062498], + [-8.886621093750023, 40.179443359375], + [-8.87265625, 40.25908203124999], + [-8.772412109374926, 40.60566406249998], + [-8.731591796874966, 40.65092773437496], + [-8.684619140624989, 40.75253906250006], + [-8.673974609374937, 40.91650390624997], + [-8.655566406249932, 41.02949218749998], + [-8.659814453124994, 41.086279296875006], + [-8.674609374999989, 41.154492187499955], + [-8.73837890624992, 41.28466796875003], + [-8.805664062499943, 41.56000976562498], + [-8.810839843749932, 41.65195312500006], + [-8.755419921874932, 41.69838867187502], + [-8.846386718749983, 41.70517578124998], + [-8.887597656249937, 41.76459960937501], + [-8.878222656249989, 41.83208007812499], + [-8.777148437500017, 41.941064453124994], + [-8.68295898437492, 42.008496093749955], + [-8.589648437499989, 42.052734375], + [-8.538085937499972, 42.0693359375], + [-8.322558593749932, 42.115087890625006], + [-8.266064453124983, 42.13740234375001], + [-8.213085937499926, 42.133691406249966], + [-8.204199218749977, 42.11186523437496], + [-8.173583984374972, 42.06938476562502], + [-8.139306640624994, 42.039941406249966], + [-8.129980468749977, 42.01816406250006], + [-8.213330078124983, 41.92709960937498], + [-8.224755859374994, 41.895849609375006], + [-8.18125, 41.83696289062502], + [-8.173535156249955, 41.819970703124994] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Paraguay", + "iso_a2": "PY", + "iso_a3": "PRY", + "iso_n3": "600", + "continent": "South America" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-58.159765625, -20.164648437500006], + [-58.13779296874999, -20.2373046875], + [-58.124609375, -20.29345703125], + [-58.09150390625, -20.33320312500001], + [-58.05844726562499, -20.38613281250001], + [-58.025390625, -20.415820312500003], + [-58.00224609374999, -20.465429687500006], + [-58.00883789062499, -20.52167968750001], + [-57.99560546875, -20.59443359375001], + [-57.97905273437499, -20.657324218750006], + [-57.9625, -20.673828125], + [-57.91513671874999, -20.69033203125001], + [-57.89140624999999, -20.74746093750001], + [-57.90849609374999, -20.7763671875], + [-57.90190429687499, -20.809375], + [-57.88481445312499, -20.84169921875001], + [-57.90048828124999, -20.873046875], + [-57.892236328124994, -20.897070312500006], + [-57.860009765624994, -20.918554687500006], + [-57.830224609374994, -20.99794921875001], + [-57.82695312499999, -21.13359375], + [-57.860009765624994, -21.20625], + [-57.886474609375, -21.26582031250001], + [-57.89306640625, -21.30224609375], + [-57.8732421875, -21.355078125], + [-57.90629882812499, -21.41796875], + [-57.94599609375, -21.49404296875001], + [-57.93608398437499, -21.546972656250006], + [-57.929443359375, -21.59658203125001], + [-57.926171875, -21.649511718750006], + [-57.9162109375, -21.69912109375001], + [-57.929443359375, -21.751953125], + [-57.94267578124999, -21.79833984375], + [-57.94931640624999, -21.851171875], + [-57.932763671874994, -21.910742187500006], + [-57.9625, -21.96699218750001], + [-57.97905273437499, -22.006640625], + [-57.98569335937499, -22.04638671875], + [-57.95590820312499, -22.109179687500003], + [-57.879833984375, -22.13564453125001], + [-57.8203125, -22.14228515625001], + [-57.7640625, -22.109179687500003], + [-57.72109375, -22.09921875], + [-57.64169921874999, -22.129003906250006], + [-57.56894531249999, -22.181933593750003], + [-57.47636718749999, -22.188574218750006], + [-57.39365234374999, -22.19843750000001], + [-57.33085937499999, -22.21503906250001], + [-57.238232421875, -22.19521484375001], + [-57.142333984375, -22.21503906250001], + [-57.02988281249999, -22.24482421875001], + [-56.937255859375, -22.271289062500003], + [-56.844677734375, -22.2646484375], + [-56.77519531249999, -22.261328125], + [-56.70244140624999, -22.231542968750006], + [-56.6330078125, -22.23486328125], + [-56.580078125, -22.181933593750003], + [-56.55029296875, -22.13564453125001], + [-56.523828125, -22.1025390625], + [-56.44780273437499, -22.076171875], + [-56.39487304687499, -22.09267578125001], + [-56.35185546874999, -22.17861328125001], + [-56.27578125, -22.22822265625001], + [-56.246044921875, -22.2646484375], + [-56.18984375, -22.28115234375001], + [-56.06748046874999, -22.284472656250003], + [-55.99140625, -22.28115234375001], + [-55.90537109374999, -22.3076171875], + [-55.84916992187499, -22.3076171875], + [-55.799560546875, -22.35390625], + [-55.75327148437499, -22.41015625], + [-55.74663085937499, -22.5126953125], + [-55.70366210937499, -22.592089843750003], + [-55.647412109375, -22.621875], + [-55.61767578125, -22.671484375], + [-55.627587890624994, -22.74091796875001], + [-55.654052734375, -22.810351562500003], + [-55.65073242187499, -22.88642578125001], + [-55.620996093749994, -22.955859375], + [-55.620996093749994, -23.02529296875001], + [-55.60112304687499, -23.0947265625], + [-55.561425781249994, -23.154296875], + [-55.54819335937499, -23.25019531250001], + [-55.554833984374994, -23.319628906250003], + [-55.52836914062499, -23.359375], + [-55.518457031249994, -23.415625], + [-55.53496093749999, -23.4619140625], + [-55.54160156249999, -23.524707031250003], + [-55.53828125, -23.58095703125001], + [-55.518457031249994, -23.627246093750003], + [-55.458886718749994, -23.68671875000001], + [-55.4423828125, -23.792578125], + [-55.4423828125, -23.865332031250006], + [-55.415917968749994, -23.95136718750001], + [-55.36630859374999, -23.991015625], + [-55.28691406249999, -24.004296875], + [-55.1943359375, -24.01748046875001], + [-55.08188476562499, -23.99765625], + [-54.982666015625, -23.97451171875001], + [-54.92646484375, -23.95136718750001], + [-54.817285156249994, -23.888476562500003], + [-54.72138671875, -23.852148437500006], + [-54.671777343749994, -23.82900390625001], + [-54.62548828125, -23.8125], + [-54.52958984374999, -23.852148437500006], + [-54.44023437499999, -23.90175781250001], + [-54.37080078125, -23.97119140625], + [-54.241796875, -24.047265625], + [-54.26689453124999, -24.06582031250001], + [-54.318261718749994, -24.128125], + [-54.317285156249994, -24.201269531250006], + [-54.281005859375, -24.30605468750001], + [-54.312939453125, -24.528125], + [-54.412988281249994, -24.867480468750003], + [-54.4541015625, -25.065234375], + [-54.43623046875, -25.12128906250001], + [-54.47314453125, -25.22021484375], + [-54.610546875, -25.432714843750006], + [-54.615869140624994, -25.57607421875001], + [-54.63193359374999, -26.00576171875001], + [-54.677734375, -26.30878906250001], + [-54.755078125, -26.53291015625001], + [-54.82548828124999, -26.65224609375001], + [-54.888916015625, -26.666796875], + [-54.934472656249994, -26.70253906250001], + [-54.962158203125, -26.759375], + [-55.013623046875, -26.806640625], + [-55.0888671875, -26.84453125], + [-55.129638671875, -26.886035156250003], + [-55.1359375, -26.93115234375], + [-55.2080078125, -26.96015625000001], + [-55.34580078124999, -26.97314453125], + [-55.426660156249994, -27.00927734375], + [-55.450634765625, -27.068359375], + [-55.496728515624994, -27.115332031250006], + [-55.564892578125, -27.15], + [-55.597265625, -27.207617187500006], + [-55.59379882812499, -27.2880859375], + [-55.63291015624999, -27.35712890625001], + [-55.71464843749999, -27.41484375], + [-55.789990234375, -27.41640625], + [-55.859033203124994, -27.361914062500006], + [-55.95146484374999, -27.32568359375], + [-56.067333984375, -27.307714843750006], + [-56.1640625, -27.32148437500001], + [-56.24169921875, -27.366796875], + [-56.310546875, -27.438769531250003], + [-56.370507812499994, -27.537402343750003], + [-56.437158203124994, -27.553808593750006], + [-56.51054687499999, -27.487890625], + [-56.60336914062499, -27.467871093750006], + [-56.715722656249994, -27.49375], + [-56.80517578125, -27.484667968750003], + [-56.871728515624994, -27.440625], + [-56.97397460937499, -27.43574218750001], + [-57.11181640625, -27.47011718750001], + [-57.391259765624994, -27.43046875], + [-57.81220703125, -27.31660156250001], + [-58.16826171874999, -27.2734375], + [-58.60483398437499, -27.31435546875001], + [-58.641748046874994, -27.19609375], + [-58.618603515625, -27.132128906250003], + [-58.54770507812499, -27.083984375], + [-58.50322265624999, -27.02949218750001], + [-58.485253906249994, -26.96845703125001], + [-58.43632812499999, -26.921972656250006], + [-58.3564453125, -26.89003906250001], + [-58.32255859374999, -26.85761718750001], + [-58.33466796875, -26.82490234375001], + [-58.31767578124999, -26.7958984375], + [-58.2716796875, -26.77070312500001], + [-58.245556640625, -26.731054687500006], + [-58.23935546874999, -26.676855468750006], + [-58.222070312499994, -26.65], + [-58.191308593749994, -26.629980468750006], + [-58.187939453125, -26.592578125], + [-58.20517578124999, -26.4765625], + [-58.203027343749994, -26.381445312500006], + [-58.18149414062499, -26.307421875], + [-58.1546875, -26.26259765625001], + [-58.135644531249994, -26.25146484375], + [-58.118066406249994, -26.224902343750003], + [-58.11113281249999, -26.18017578125], + [-58.082421875, -26.13857421875001], + [-57.943115234375, -26.05292968750001], + [-57.890625, -26.00654296875001], + [-57.88623046875, -25.96425781250001], + [-57.865234375, -25.90693359375001], + [-57.782470703125, -25.78369140625], + [-57.757080078125, -25.72597656250001], + [-57.754785156249994, -25.697070312500003], + [-57.725488281249994, -25.66718750000001], + [-57.62583007812499, -25.598730468750006], + [-57.571679687499994, -25.5341796875], + [-57.563134765624994, -25.473730468750006], + [-57.587158203125, -25.405078125], + [-57.64389648437499, -25.328417968750003], + [-57.821679687499994, -25.13642578125001], + [-57.95981445312499, -25.04921875], + [-58.136474609375, -24.977148437500006], + [-58.25278320312499, -24.95380859375001], + [-58.30869140624999, -24.979101562500006], + [-58.365380859374994, -24.959277343750003], + [-58.422802734375, -24.894140625], + [-58.51962890624999, -24.842871093750006], + [-58.724023437499994, -24.78662109375], + [-59.187255859375, -24.562304687500003], + [-59.372949218749994, -24.45390625], + [-59.43540039062499, -24.387011718750003], + [-59.60859375, -24.26679687500001], + [-59.892480468749994, -24.093554687500003], + [-60.110302734375, -24.00917968750001], + [-60.26220703125, -24.013964843750003], + [-60.50537109375, -23.96357421875001], + [-60.83984375, -23.85810546875001], + [-61.03291015625, -23.755664062500003], + [-61.084716796875, -23.65644531250001], + [-61.208398437499994, -23.55703125], + [-61.403955078124994, -23.45751953125], + [-61.505517578124994, -23.39199218750001], + [-61.51303710937499, -23.360449218750006], + [-61.57099609375, -23.319433593750006], + [-61.67949218749999, -23.26875], + [-61.79853515625, -23.18203125], + [-61.92802734374999, -23.05927734375001], + [-62.0666015625, -22.869433593750003], + [-62.21416015624999, -22.612402343750006], + [-62.372509765625, -22.43916015625001], + [-62.54155273437499, -22.349609375], + [-62.6259765625, -22.29042968750001], + [-62.62568359375, -22.261523437500003], + [-62.65097656249999, -22.233691406250003], + [-62.628515625, -22.183984375], + [-62.56694335937499, -21.988671875], + [-62.47783203124999, -21.70527343750001], + [-62.38544921875, -21.41171875], + [-62.27666015624999, -21.066015625], + [-62.276513671874994, -20.82080078125], + [-62.276318359375, -20.5625], + [-62.12163085937499, -20.349902343750003], + [-62.01181640624999, -20.199023437500003], + [-61.916943359375, -20.05537109375001], + [-61.82089843749999, -19.80947265625001], + [-61.7568359375, -19.6453125], + [-61.51181640624999, -19.6064453125], + [-61.09599609374999, -19.52099609375], + [-60.88876953124999, -19.478515625], + [-60.451611328125, -19.388769531250006], + [-60.00737304687499, -19.29755859375001], + [-59.54086914062499, -19.291796875], + [-59.09052734375, -19.286230468750006], + [-58.741113281249994, -19.490234375], + [-58.47421875, -19.64609375], + [-58.18017578125, -19.81787109375], + [-58.160058593749994, -19.85488281250001], + [-58.13994140624999, -19.998828125], + [-58.159765625, -20.164648437500006] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Palestine", + "iso_a2": "PS", + "iso_a3": "PSE", + "iso_n3": "275", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [34.34833984375004, 31.292919921874955], + [34.2453125000001, 31.208300781250045], + [34.2125, 31.292285156250017], + [34.198144531249994, 31.322607421875063], + [34.387304687500006, 31.483789062500023], + [34.47734375000002, 31.584863281250023], + [34.52412109375004, 31.541650390624994], + [34.5255859375001, 31.52563476562503], + [34.35019531250006, 31.362744140624983], + [34.34833984375004, 31.292919921874955] + ] + ], + [ + [ + [35.53144531250004, 31.98491210937499], + [35.55898437500005, 31.765527343749966], + [35.499414062499994, 31.67236328125], + [35.46542968750006, 31.562353515625063], + [35.450585937499994, 31.479296875000017], + [35.40869140624997, 31.48291015625003], + [35.276660156250074, 31.422802734374955], + [35.101171875, 31.36621093749997], + [34.90781250000006, 31.351318359375057], + [34.88046875, 31.3681640625], + [34.87275390625004, 31.396875], + [34.92919921874997, 31.53657226562504], + [34.950976562500074, 31.60229492187503], + [35.03466796874997, 31.673242187499994], + [35.153417968750006, 31.734472656250034], + [35.20371093750006, 31.75], + [35.19804687500002, 31.77631835937504], + [35.1271484375001, 31.816748046875006], + [35.05322265625003, 31.83793945312496], + [34.983007812500006, 31.816796875000023], + [34.9611328125001, 31.823339843750006], + [34.95380859375004, 31.84125976562504], + [34.97832031250002, 31.86640625000001], + [34.98974609374997, 31.913281249999955], + [34.978808593750074, 31.991601562500023], + [34.97138671875004, 32.08710937500001], + [34.955957031249994, 32.1609375], + [34.99951171875003, 32.28105468750002], + [35.01054687500002, 32.33818359375002], + [35.06503906250006, 32.46044921875006], + [35.19326171875005, 32.53442382812503], + [35.303808593750006, 32.512939453125], + [35.362109375000074, 32.50747070312505], + [35.38671875000003, 32.493017578125034], + [35.402636718750074, 32.45063476562501], + [35.484375, 32.40166015624999], + [35.5514648437501, 32.39550781250006], + [35.57207031250002, 32.237890625], + [35.534765625, 32.10302734374997], + [35.53144531250004, 31.98491210937499] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "Fr. Polynesia", + "iso_a2": "PF", + "iso_a3": "PYF", + "iso_n3": "258", + "continent": "Oceania" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-138.50585937499994, -20.85722656250003], + [-138.53486328125, -20.87587890625001], + [-138.52402343750003, -20.850585937500014], + [-138.54638671874994, -20.795117187499997], + [-138.568359375, -20.787109374999957], + [-138.54638671874994, -20.771191406249997], + [-138.51494140624993, -20.81337890624998], + [-138.50585937499994, -20.85722656250003] + ] + ], + [ + [ + [-136.29389648437498, -18.54433593750001], + [-136.3140625, -18.566308593749966], + [-136.31601562499998, -18.545214843750017], + [-136.34404296875, -18.53486328125004], + [-136.38291015625, -18.513671874999986], + [-136.43569335937502, -18.48906250000003], + [-136.46425781249997, -18.48505859375001], + [-136.47851562500003, -18.47080078125005], + [-136.45869140624998, -18.463183593750003], + [-136.426123046875, -18.474316406250054], + [-136.38037109375, -18.49677734375001], + [-136.32763671875, -18.51933593749999], + [-136.29389648437498, -18.54433593750001] + ] + ], + [ + [ + [-140.6853515625, -18.3798828125], + [-140.671875, -18.416113281250006], + [-140.69604492187503, -18.39912109375001], + [-140.77324218749993, -18.36376953125], + [-140.78173828125, -18.33417968750001], + [-140.6853515625, -18.3798828125] + ] + ], + [ + [ + [-136.97172851562496, -18.341992187499997], + [-136.97133789062497, -18.36093750000005], + [-137.06757812500004, -18.26533203125001], + [-137.02963867187503, -18.272851562500037], + [-136.97172851562496, -18.341992187499997] + ] + ], + [ + [ + [-140.82988281250005, -18.189355468749994], + [-140.82270507812498, -18.216894531250006], + [-140.86005859375004, -18.198730468750043], + [-140.89545898437495, -18.14794921875], + [-140.95864257812497, -18.085058593749977], + [-140.97353515624997, -18.059179687500034], + [-140.92514648437498, -18.083789062499974], + [-140.89326171874995, -18.120507812499994], + [-140.82988281250005, -18.189355468749994] + ] + ], + [ + [ + [-140.809375, -17.856640624999983], + [-140.804443359375, -17.87568359375004], + [-140.84082031250003, -17.873144531249963], + [-140.8515625, -17.866601562499966], + [-140.85073242187502, -17.8310546875], + [-140.82426757812493, -17.787988281250023], + [-140.80361328125002, -17.751660156249997], + [-140.76142578125, -17.717773437500014], + [-140.68618164062497, -17.683789062500026], + [-140.64980468750002, -17.669726562500003], + [-140.638232421875, -17.678027343750003], + [-140.65205078125004, -17.68310546874997], + [-140.77631835937504, -17.754101562500054], + [-140.81518554687494, -17.80371093750003], + [-140.83251953125003, -17.838476562500006], + [-140.82924804687497, -17.849218749999977], + [-140.809375, -17.856640624999983] + ] + ], + [ + [ + [-149.321533203125, -17.690039062499963], + [-149.177685546875, -17.736621093750045], + [-149.15087890624997, -17.812109374999963], + [-149.18178710937497, -17.86230468749997], + [-149.25449218750003, -17.84990234375003], + [-149.29047851562498, -17.822460937500026], + [-149.34111328125, -17.732421874999986], + [-149.48168945312494, -17.75273437500003], + [-149.57890624999993, -17.734960937499963], + [-149.6328125, -17.617578125000037], + [-149.635009765625, -17.564257812500003], + [-149.61142578125, -17.531640625000023], + [-149.50810546875, -17.49638671875003], + [-149.37919921874993, -17.522363281249994], + [-149.33007812499997, -17.588964843749977], + [-149.321533203125, -17.690039062499963] + ] + ], + [ + [ + [-149.813671875, -17.54501953124999], + [-149.84492187499995, -17.571093749999974], + [-149.88657226562503, -17.55283203124999], + [-149.90512695312498, -17.527734375000023], + [-149.91181640625, -17.50117187500004], + [-149.9021484375, -17.46953124999999], + [-149.80878906249998, -17.47392578124999], + [-149.782421875, -17.48779296874997], + [-149.813671875, -17.54501953124999] + ] + ], + [ + [ + [-151.40981445312502, -16.87773437500003], + [-151.449462890625, -16.879296875], + [-151.48549804687497, -16.863671875], + [-151.47641601562498, -16.7607421875], + [-151.46674804687495, -16.739648437499966], + [-151.41118164062502, -16.77441406250003], + [-151.364501953125, -16.864257812499957], + [-151.40981445312502, -16.87773437500003] + ] + ], + [ + [ + [-143.44057617187497, -16.619726562499963], + [-143.38618164062498, -16.668847656250023], + [-143.458544921875, -16.63544921874997], + [-143.55068359375002, -16.62109374999997], + [-143.51557617187495, -16.612304687499957], + [-143.46469726562498, -16.613574218750045], + [-143.44057617187497, -16.619726562499963] + ] + ], + [ + [ + [-143.571142578125, -16.634765625], + [-143.61064453125, -16.640429687500003], + [-143.70742187499997, -16.58085937500003], + [-143.67021484374993, -16.58085937500003], + [-143.61479492187502, -16.61806640624998], + [-143.571142578125, -16.634765625] + ] + ], + [ + [ + [-151.46660156249993, -16.657519531250017], + [-151.48491210937493, -16.665136718749977], + [-151.50415039062494, -16.64697265625], + [-151.51240234375004, -16.619042968749994], + [-151.50576171875002, -16.574023437499974], + [-151.45742187500002, -16.603710937499983], + [-151.43808593749998, -16.6234375], + [-151.46660156249993, -16.657519531250017] + ] + ], + [ + [ + [-145.48666992187498, -16.32978515625004], + [-145.4822265625, -16.34677734375005], + [-145.502734375, -16.34580078125002], + [-145.53984375, -16.295117187499997], + [-145.553125, -16.25117187500001], + [-145.57670898437493, -16.201464843750017], + [-145.60913085937497, -16.16523437500001], + [-145.61279296875, -16.131835937499957], + [-145.61381835937496, -16.079199218749977], + [-145.577099609375, -16.159863281249983], + [-145.54233398437498, -16.22460937500003], + [-145.51699218749997, -16.27783203125003], + [-145.48666992187498, -16.32978515625004] + ] + ], + [ + [ + [-142.51181640625003, -16.09628906249999], + [-142.52958984375, -16.107128906249983], + [-142.5068359375, -16.027734374999966], + [-142.481201171875, -16.017773437499983], + [-142.51181640625003, -16.09628906249999] + ] + ], + [ + [ + [-145.05136718750003, -15.856054687499991], + [-145.057666015625, -15.901074218750011], + [-145.076416015625, -15.85761718750004], + [-145.137939453125, -15.7880859375], + [-145.16074218750003, -15.757031249999983], + [-145.133544921875, -15.762011718750017], + [-145.05136718750003, -15.856054687499991] + ] + ], + [ + [ + [-138.65112304687497, -10.515332031249955], + [-138.68774414062497, -10.532421874999983], + [-138.69038085937498, -10.425585937499974], + [-138.64291992187498, -10.44589843750002], + [-138.62446289062495, -10.462988281249949], + [-138.632373046875, -10.492187499999957], + [-138.65112304687497, -10.515332031249955] + ] + ], + [ + [ + [-139.059716796875, -9.931347656249997], + [-139.133984375, -10.009570312499946], + [-139.13422851562498, -9.926269531249943], + [-139.10747070312496, -9.915429687499952], + [-139.08315429687497, -9.915429687499952], + [-139.059716796875, -9.931347656249997] + ] + ], + [ + [ + [-139.02431640624997, -9.695214843750037], + [-138.874462890625, -9.747167968749963], + [-138.82734375, -9.74160156249998], + [-138.874951171875, -9.792871093750037], + [-139.02426757812498, -9.820703125000023], + [-139.073681640625, -9.845703124999957], + [-139.13408203124996, -9.829492187500037], + [-139.16645507812498, -9.77021484375004], + [-139.02431640624997, -9.695214843750037] + ] + ], + [ + [ + [-140.075634765625, -9.425976562499983], + [-140.09736328125, -9.44414062499996], + [-140.13803710937503, -9.384375], + [-140.14438476562498, -9.359375], + [-140.07094726562497, -9.32812], + [-140.031103515625, -9.344726562499957], + [-140.075634765625, -9.425976562499983] + ] + ], + [ + [ + [-139.556201171875, -8.940234374999974], + [-139.62099609374997, -8.947949218750026], + [-139.631787109375, -8.898535156250006], + [-139.611767578125, -8.872363281250003], + [-139.58398437499994, -8.860058593749983], + [-139.53457031250002, -8.875390625], + [-139.508349609375, -8.897070312499963], + [-139.50991210937497, -8.915625], + [-139.556201171875, -8.940234374999974] + ] + ], + [ + [ + [-140.07260742187503, -8.910449218750031], + [-140.170556640625, -8.933984375000023], + [-140.21743164062497, -8.929687499999957], + [-140.25268554687503, -8.848046875000023], + [-140.24003906249993, -8.79755859375004], + [-140.22441406249996, -8.781542968749974], + [-140.057666015625, -8.801464843750026], + [-140.043701171875, -8.83847656250002], + [-140.04614257812494, -8.873632812499991], + [-140.07260742187503, -8.910449218750031] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Qatar", + "iso_a2": "QA", + "iso_a3": "QAT", + "iso_n3": "634", + "continent": "Asia" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [51.26796875000002, 24.607226562500003], + [51.17802734375002, 24.58671875], + [51.093359375, 24.564648437499997], + [51.02275390625002, 24.565234375], + [50.96601562500001, 24.573925781249997], + [50.928320312500006, 24.595117187499994], + [50.85566406250001, 24.679638671874997], + [50.80439453125001, 24.789257812499997], + [50.8359375, 24.850390625], + [50.846777343750006, 24.888574218749994], + [50.77734375, 25.177441406249997], + [50.75458984375001, 25.39926757812499], + [50.76289062500001, 25.444726562499994], + [50.80263671875002, 25.4970703125], + [50.86865234375, 25.612695312499994], + [50.90380859375, 25.724072265624997], + [51.003125, 25.9814453125], + [51.10810546875001, 26.08056640625], + [51.262304687500006, 26.153271484374997], + [51.38906250000002, 26.011132812499994], + [51.543066406250006, 25.902392578125003], + [51.572265625, 25.781005859375], + [51.526953125, 25.68212890625], + [51.4853515625, 25.524707031250003], + [51.51025390625, 25.45234375], + [51.51953125, 25.38974609374999], + [51.56142578125002, 25.284472656250003], + [51.60195312500002, 25.14794921875], + [51.60888671875, 25.052880859374994], + [51.5869140625, 24.96484375], + [51.53339843750001, 24.890869140625], + [51.42792968750001, 24.668261718750003], + [51.396484375, 24.64511718749999], + [51.26796875000002, 24.607226562500003] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Romania", + "iso_a2": "RO", + "iso_a3": "ROU", + "iso_n3": "642", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [28.2125, 45.450439453125], + [28.317675781250017, 45.347119140625], + [28.451269531250006, 45.2921875], + [28.7607421875, 45.234130859375], + [28.78828125000001, 45.240966796875], + [28.791406250000023, 45.251904296875], + [28.769824218750017, 45.266894531249996], + [28.7666015625, 45.28623046875], + [28.78173828125, 45.309863281249996], + [28.824316406250006, 45.311083984374996], + [28.894335937500017, 45.289941406249994], + [29.027441406250006, 45.320556640625], + [29.223535156250023, 45.4029296875], + [29.403710937500023, 45.419677734375], + [29.567675781250017, 45.37080078125], + [29.651953125, 45.313916015625], + [29.705859375000017, 45.259912109374994], + [29.6890625, 45.193212890625], + [29.678613281250023, 45.151660156249996], + [29.635351562500006, 44.979638671874994], + [29.60546875, 44.915478515625], + [29.557519531250023, 44.843408203124994], + [29.048242187500023, 44.757568359375], + [29.0810546875, 44.798828125], + [29.069140625000017, 44.871142578124996], + [29.047753906250023, 44.925683593749994], + [29.0953125, 44.975048828125], + [28.98066406250001, 44.992919921875], + [28.930566406250023, 44.9658203125], + [28.891503906250023, 44.91865234375], + [28.926171875000023, 44.810009765625], + [28.870410156250017, 44.749951171875], + [28.849023437500023, 44.71630859375], + [28.846484375000017, 44.636865234374994], + [28.813574218750006, 44.602490234375], + [28.807031250000023, 44.5650390625], + [28.88818359375, 44.574755859374996], + [28.85175781250001, 44.506103515625], + [28.69921875, 44.37421875], + [28.645410156250023, 44.295654296875], + [28.658593750000023, 43.983837890625], + [28.590722656250023, 43.797412109374996], + [28.585351562500023, 43.742236328124996], + [28.4234375, 43.740478515625], + [28.37519531250001, 43.744775390624994], + [28.221972656250017, 43.772851562499994], + [28.05, 43.822412109374994], + [27.94892578125001, 43.918603515624994], + [27.88427734375, 43.987353515624996], + [27.738574218750017, 43.956298828125], + [27.710742187500017, 43.964599609375], + [27.6708984375, 43.997802734375], + [27.56103515625, 44.020068359374996], + [27.425390625, 44.0205078125], + [27.120703125, 44.146142578124994], + [27.0869140625, 44.167382812499994], + [26.847753906250006, 44.14619140625], + [26.4892578125, 44.083984375], + [26.2158203125, 44.007275390625], + [25.933398437500017, 43.870556640625], + [25.81884765625, 43.766845703125], + [25.686132812500006, 43.711767578125], + [25.4970703125, 43.670800781249994], + [25.15966796875, 43.686328125], + [24.808203125, 43.738427734374994], + [24.430566406250023, 43.794384765625], + [24.22675781250001, 43.763476562499996], + [23.95078125, 43.786669921874996], + [23.534570312500023, 43.853564453124996], + [23.224609375, 43.873876953125], + [22.919042968750006, 43.83447265625], + [22.86767578125, 43.864550781249996], + [22.8564453125, 43.8990234375], + [22.868261718750006, 43.947900390624994], + [22.91132812500001, 43.987207031249994], + [22.9853515625, 44.016992187499994], + [23.0244140625, 44.047216796875], + [23.02851562500001, 44.077978515625], + [22.945410156250006, 44.127294921875], + [22.775195312500017, 44.195214843749994], + [22.705078125, 44.23779296875], + [22.687890625000023, 44.248291015625], + [22.68330078125001, 44.286474609375], + [22.64794921875, 44.316455078124996], + [22.581835937500017, 44.338330078125], + [22.530664062500023, 44.377978515624996], + [22.494531250000023, 44.435449218749994], + [22.502343750000023, 44.489599609375], + [22.554003906250017, 44.540332031249996], + [22.6201171875, 44.562353515625], + [22.70078125, 44.555517578125], + [22.734375, 44.569921875], + [22.72089843750001, 44.605517578124996], + [22.64208984375, 44.6509765625], + [22.49765625, 44.70625], + [22.350683593750006, 44.676123046875], + [22.200976562500017, 44.560693359374994], + [22.093066406250017, 44.541943359375], + [22.026953125, 44.619873046875], + [21.909277343750006, 44.66611328125], + [21.740234375, 44.6806640625], + [21.636132812500023, 44.71044921875], + [21.597070312500023, 44.755419921874996], + [21.52314453125001, 44.790087890624996], + [21.36005859375001, 44.82666015625], + [21.35791015625, 44.86181640625], + [21.384375, 44.870068359375], + [21.442187500000017, 44.873388671875], + [21.519921875000023, 44.880810546875], + [21.532324218750006, 44.900683593749996], + [21.533203125, 44.918847656249994], + [21.471972656250017, 44.9419921875], + [21.409960937500017, 44.95771484375], + [21.377734375000017, 44.9734375], + [21.35703125, 44.990771484374996], + [21.352929687500023, 45.008984375], + [21.37109375, 45.021386718749994], + [21.395898437500023, 45.022216796875], + [21.420703125000017, 45.032958984375], + [21.434472656250023, 45.075146484375], + [21.467871093750006, 45.10986328125], + [21.491796875, 45.122265625], + [21.490234375, 45.147900390625], + [21.465429687500006, 45.171875], + [21.431445312500017, 45.192529296874994], + [21.381738281250023, 45.205078125], + [21.226464843750023, 45.24130859375], + [21.147851562500023, 45.291748046875], + [21.099902343750017, 45.2935546875], + [21.023828125000023, 45.321533203125], + [20.941796875000023, 45.36533203125], + [20.87080078125001, 45.427539062499996], + [20.794042968750006, 45.46787109375], + [20.774218750000017, 45.484423828124996], + [20.7724609375, 45.50009765625], + [20.786523437500023, 45.517480468749994], + [20.786035156250023, 45.536474609375], + [20.76582031250001, 45.597460937499996], + [20.779296875, 45.662011718749994], + [20.775781250000023, 45.722509765625], + [20.775, 45.749804687499996], + [20.760156250000023, 45.758105468749996], + [20.746875, 45.748974609375], + [20.727832031250017, 45.73740234375], + [20.709277343750017, 45.735253906249994], + [20.652734375000023, 45.77939453125], + [20.581152343750006, 45.869482421875], + [20.532617187500023, 45.89951171875], + [20.43798828125, 45.940771484375], + [20.35859375000001, 45.975488281249994], + [20.301367187500006, 46.050683593749994], + [20.241796875, 46.10859375], + [20.28095703125001, 46.1330078125], + [20.508105468750017, 46.166943359375], + [20.613671875000023, 46.13349609375], + [20.661035156250023, 46.145654296874994], + [20.707421875000023, 46.172802734375], + [20.732714843750017, 46.19443359375], + [20.737402343750006, 46.21748046875], + [20.76025390625, 46.246240234374994], + [20.837011718750006, 46.259716796875], + [21.039843750000017, 46.242236328124996], + [21.121679687500006, 46.282421875], + [21.151953125, 46.304345703124994], + [21.17041015625, 46.352685546874994], + [21.191796875000023, 46.391552734375], + [21.264550781250023, 46.4123046875], + [21.26328125, 46.44775390625], + [21.252246093750017, 46.486376953124996], + [21.29453125, 46.5724609375], + [21.320214843750023, 46.6078125], + [21.361328125, 46.620751953124994], + [21.411035156250023, 46.647851562499994], + [21.4970703125, 46.704296875], + [21.47705078125, 46.753369140625], + [21.494433593750017, 46.78974609375], + [21.58417968750001, 46.878369140625], + [21.652636718750017, 46.963769531249994], + [21.651464843750006, 47.00654296875], + [21.661425781250017, 47.043896484375], + [21.721777343750006, 47.084814453125], + [21.785449218750017, 47.138134765625], + [21.86933593750001, 47.304589843749994], + [21.899218750000017, 47.332568359374996], + [21.95429687500001, 47.3642578125], + [21.99531250000001, 47.395703125], + [21.99970703125001, 47.505029296874994], + [22.037988281250023, 47.53662109375], + [22.111914062500006, 47.572021484375], + [22.18505859375, 47.629052734374994], + [22.24462890625, 47.69638671875], + [22.290625, 47.727832031249996], + [22.351464843750023, 47.736230468749994], + [22.41748046875, 47.762646484375], + [22.49140625000001, 47.77255859375], + [22.562890625000023, 47.759570312499996], + [22.6083984375, 47.76630859375], + [22.6767578125, 47.7990234375], + [22.85175781250001, 47.92255859375], + [22.87666015625001, 47.947265625], + [22.912890625000017, 47.964257812499994], + [23.054785156250006, 48.00654296875], + [23.0908203125, 48.049121093749996], + [23.139453125000017, 48.08740234375], + [23.20263671875, 48.084521484374996], + [23.408203125, 47.989990234375], + [23.628710937500017, 47.995849609375], + [23.669042968750006, 47.992333984374994], + [23.682031250000023, 47.990380859374994], + [23.708984375, 47.9826171875], + [24.001855468750023, 47.935791015625], + [24.04736328125, 47.941015625], + [24.05976562500001, 47.944775390625], + [24.177734375, 47.906054687499996], + [24.28193359375001, 47.911181640624996], + [24.380957031250006, 47.938037109374996], + [24.48408203125001, 47.947119140625], + [24.578906250000017, 47.931054687499994], + [24.650976562500006, 47.876513671874996], + [24.837890625, 47.76083984375], + [24.893359375000017, 47.7177734375], + [24.979101562500006, 47.72412109375], + [25.073828125, 47.745703125], + [25.16962890625001, 47.823095703125], + [25.464257812500023, 47.910791015624994], + [25.689257812500017, 47.932470703125], + [25.90869140625, 47.967578125], + [26.162695312500006, 47.992529296875], + [26.236230468750023, 48.064355468749994], + [26.276953125, 48.113232421875], + [26.3056640625, 48.203759765624994], + [26.4423828125, 48.22998046875], + [26.57246093750001, 48.248486328125], + [26.618945312500017, 48.25986328125], + [26.713769531250023, 48.263476562499996], + [26.78730468750001, 48.255810546875], + [26.900976562500006, 48.2111328125], + [26.980761718750017, 48.155029296875], + [27.01220703125, 48.110498046874994], + [27.080371093750017, 48.04765625], + [27.15205078125001, 47.959277343749996], + [27.230859375000023, 47.841748046875], + [27.248144531250006, 47.7822265625], + [27.277929687500006, 47.71796875], + [27.3369140625, 47.63974609375], + [27.44921875, 47.553125], + [27.46484375, 47.536669921874996], + [27.51582031250001, 47.475634765624996], + [27.614062500000017, 47.34052734375], + [27.696191406250023, 47.286425781249996], + [27.767968750000023, 47.227587890624996], + [27.80234375, 47.168310546875], + [27.853808593750017, 47.114501953125], + [27.97421875, 47.043212890625], + [28.07177734375, 46.978417968749994], + [28.15, 46.79208984375], + [28.2046875, 46.706396484375], + [28.23945312500001, 46.6408203125], + [28.22265625, 46.508056640625], + [28.24433593750001, 46.45126953125], + [28.199609375000023, 46.347558593749994], + [28.119140625, 46.138671875], + [28.099707031250006, 45.972607421875], + [28.113574218750017, 45.883056640625], + [28.115527343750017, 45.825537109375], + [28.13496093750001, 45.788867187499996], + [28.15625, 45.7130859375], + [28.159765625, 45.647119140624994], + [28.130859375, 45.628271484375], + [28.09033203125, 45.612744140625], + [28.07470703125, 45.598974609375], + [28.111914062500006, 45.569140625], + [28.1625, 45.51376953125], + [28.2125, 45.450439453125] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Russia", + "iso_a2": "RU", + "iso_a3": "RUS", + "iso_n3": "643", + "continent": "Europe" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [146.0456054687501, 43.409326171874966], + [146.03232421875006, 43.407128906249966], + [146.0280273437501, 43.42036132812501], + [146.04892578125006, 43.43359375000003], + [146.08857421875004, 43.44902343749999], + [146.10078125000004, 43.44018554687503], + [146.08632812500005, 43.42919921875003], + [146.06992187500006, 43.42148437500006], + [146.0456054687501, 43.409326171874966] + ] + ], + [ + [ + [145.8815429687501, 43.45952148437499], + [145.89560546875012, 43.45454101562504], + [145.91386718750002, 43.45537109375002], + [145.93115234374997, 43.45703125], + [145.94111328125004, 43.44545898437505], + [145.9435546875001, 43.42646484375001], + [145.93115234374997, 43.425634765625006], + [145.90722656249997, 43.422314453124955], + [145.89394531250005, 43.419824218749966], + [145.88652343750002, 43.43305664062501], + [145.8815429687501, 43.44379882812498], + [145.86914062500003, 43.450439453125], + [145.86914062500003, 43.457861328125006], + [145.8815429687501, 43.45952148437499] + ] + ], + [ + [ + [146.35878906250005, 43.62539062500002], + [146.33232421875007, 43.61992187499999], + [146.28818359375006, 43.62539062500002], + [146.27382812500005, 43.629833984374955], + [146.28369140625003, 43.638623046874955], + [146.31015625000006, 43.65185546875], + [146.33330078125002, 43.6474609375], + [146.3498046875001, 43.644140625000034], + [146.35878906250005, 43.62539062500002] + ] + ], + [ + [ + [146.71396484375012, 43.743798828124994], + [146.6830078125, 43.71635742187499], + [146.60859375000004, 43.74047851562503], + [146.61347656250004, 43.797021484374994], + [146.62197265625, 43.81298828125006], + [146.824609375, 43.86049804687505], + [146.88408203125002, 43.82915039062496], + [146.89902343750006, 43.80415039062504], + [146.71396484375012, 43.743798828124994] + ] + ], + [ + [ + [146.20761718750006, 44.49765625], + [146.35595703125003, 44.424609375000045], + [146.5677734375, 44.44042968749997], + [146.51621093750006, 44.374658203124994], + [146.43652343749997, 44.37568359375001], + [146.29619140625002, 44.28095703125001], + [146.17294921875012, 44.26865234374998], + [146.11230468750003, 44.24594726562506], + [145.91406249999997, 44.10371093750004], + [145.88730468750012, 44.047753906249994], + [145.7669921875, 43.94072265624996], + [145.58681640625, 43.84511718750002], + [145.5558593750001, 43.66459960937502], + [145.43925781250002, 43.73706054687503], + [145.42617187500005, 43.81035156249996], + [145.46171875000007, 43.870898437500045], + [145.66630859375002, 43.999072265625045], + [145.74833984375002, 44.07153320312506], + [145.77333984375005, 44.129003906250034], + [145.851953125, 44.19301757812502], + [145.89023437500006, 44.24858398437499], + [145.94042968749997, 44.27265624999998], + [146.11210937500007, 44.500146484374966], + [146.20761718750006, 44.49765625] + ] + ], + [ + [ + [148.59951171875, 45.317626953125], + [148.41464843750012, 45.247167968750034], + [148.26230468750006, 45.21684570312496], + [148.0052734375, 45.070166015625034], + [147.91376953125004, 44.99038085937502], + [147.78408203125, 44.958593750000034], + [147.65781250000012, 44.97714843749998], + [147.621875, 44.94472656250005], + [147.60957031250004, 44.886572265625006], + [147.56308593750006, 44.835546875], + [147.31015625000006, 44.677636718749994], + [147.207421875, 44.553564453125034], + [147.09843750000002, 44.53125], + [146.89746093750003, 44.404296875], + [146.93349609375, 44.51308593750005], + [146.97421875000012, 44.56572265625002], + [147.14091796875007, 44.663330078125], + [147.15478515625003, 44.766210937500006], + [147.24658203124997, 44.856054687500006], + [147.43046875000007, 44.945214843749966], + [147.5578125000001, 45.062451171874955], + [147.65791015625004, 45.09301757812497], + [147.76943359375, 45.19072265624999], + [147.88554687500007, 45.22563476562499], + [147.87265625000006, 45.30029296875], + [147.9240234375001, 45.38330078125006], + [147.96455078125004, 45.37773437499999], + [148.05605468750005, 45.26210937500005], + [148.13007812500004, 45.25820312500005], + [148.32421874999997, 45.28242187500001], + [148.61230468749997, 45.48466796874999], + [148.70664062500006, 45.52065429687505], + [148.77265625000004, 45.52646484374998], + [148.8122070312501, 45.510009765625], + [148.82617187500003, 45.48608398437503], + [148.82539062500004, 45.455908203125006], + [148.80302734375002, 45.41352539062498], + [148.83710937500004, 45.36269531250002], + [148.7907226562501, 45.32397460937503], + [148.59951171875, 45.317626953125] + ] + ], + [ + [ + [47.983007812500006, 45.48823242187501], + [47.967675781249994, 45.46997070312503], + [47.92031250000005, 45.56206054687496], + [47.917578125, 45.61816406250003], + [47.947167968749994, 45.647070312500034], + [47.987109375000074, 45.554052734375006], + [47.983007812500006, 45.48823242187501] + ] + ], + [ + [ + [149.68769531250004, 45.64204101562501], + [149.53886718750007, 45.59135742187499], + [149.44707031250002, 45.593359375000034], + [149.66591796875005, 45.839794921874955], + [149.79628906250005, 45.87607421874998], + [149.9623046875, 46.02192382812504], + [150.3087890625001, 46.200341796874966], + [150.34863281250003, 46.21342773437496], + [150.553125, 46.208544921875045], + [150.23457031250004, 46.012304687500034], + [150.1950195312501, 45.93320312499998], + [150.05664062499997, 45.84936523437506], + [149.95410156250003, 45.82246093749998], + [149.88339843750012, 45.78315429687498], + [149.68769531250004, 45.64204101562501] + ] + ], + [ + [ + [152.00205078125006, 46.89716796874998], + [151.815625, 46.78710937500006], + [151.7541015625001, 46.78833007812503], + [151.72343750000007, 46.82880859375001], + [151.71533203125003, 46.852685546874994], + [151.86435546875006, 46.868994140625034], + [152.03984375000002, 47.014990234375006], + [152.16582031250002, 47.110449218750006], + [152.23466796875002, 47.14340820312498], + [152.28886718750007, 47.1421875], + [152.00205078125006, 46.89716796874998] + ] + ], + [ + [ + [153.10107421874997, 47.76293945312497], + [153.05380859375012, 47.706103515625045], + [153.00410156250004, 47.713476562500034], + [152.98427734375, 47.72792968750005], + [153.04912109375007, 47.797021484374994], + [153.07919921875006, 47.808740234374994], + [153.10107421874997, 47.76293945312497] + ] + ], + [ + [ + [154.08125, 48.79028320312503], + [154.04296875000003, 48.73876953125], + [154.00068359375004, 48.755712890625006], + [153.99228515625006, 48.77250976562496], + [154.09169921875, 48.832128906250034], + [154.12636718750005, 48.90444335937502], + [154.19902343750002, 48.90493164062502], + [154.22841796875005, 48.89208984374997], + [154.20468750000012, 48.85717773437497], + [154.08125, 48.79028320312503] + ] + ], + [ + [ + [154.81044921875005, 49.31201171875], + [154.71484375000003, 49.267675781250034], + [154.61093750000006, 49.29404296874998], + [154.61298828125004, 49.38061523437503], + [154.82490234375004, 49.64692382812501], + [154.8996093750001, 49.63037109375003], + [154.88330078124997, 49.56640625000006], + [154.80234375000006, 49.46826171875003], + [154.82988281250002, 49.34790039062503], + [154.81044921875005, 49.31201171875] + ] + ], + [ + [ + [155.9210937500001, 50.30219726562501], + [155.7923828125, 50.20205078125005], + [155.60751953125006, 50.17724609374997], + [155.51640625000007, 50.145605468750006], + [155.4489257812501, 50.07778320312505], + [155.39716796875004, 50.04125976562497], + [155.28867187500006, 50.06118164062505], + [155.24306640625, 50.09462890625002], + [155.24306640625, 50.21279296875002], + [155.19511718750002, 50.264550781249994], + [155.21835937500012, 50.29785156250003], + [155.32675781250006, 50.29326171874999], + [155.43388671875007, 50.368945312500045], + [155.68017578124997, 50.400732421875034], + [155.77275390625007, 50.48242187499997], + [155.88476562499997, 50.68413085937502], + [156.0016601562501, 50.756933593750034], + [156.096875, 50.77187], + [156.12285156250002, 50.671289062499994], + [156.10058593749997, 50.55927734374998], + [156.04443359375003, 50.451757812500034], + [155.9210937500001, 50.30219726562501] + ] + ], + [ + [ + [156.40507812500002, 50.65761718750005], + [156.36542968750004, 50.6337890625], + [156.32578125000012, 50.6390625], + [156.19628906250003, 50.70214843749997], + [156.16796874999997, 50.73188476562498], + [156.2130859375001, 50.78471679687502], + [156.37646484374997, 50.86210937499996], + [156.45585937500007, 50.85957031249998], + [156.4875, 50.84296874999998], + [156.48310546875004, 50.75122070312503], + [156.40507812500002, 50.65761718750005] + ] + ], + [ + [ + [155.64482421875002, 50.82192382812502], + [155.55351562500002, 50.810595703125045], + [155.51279296875006, 50.837304687499966], + [155.48349609375012, 50.86962890624997], + [155.46738281250006, 50.91357421875006], + [155.56855468750004, 50.93447265625005], + [155.63964843749997, 50.91049804687506], + [155.65361328125007, 50.84536132812502], + [155.64482421875002, 50.82192382812502] + ] + ], + [ + [ + [142.76103515625002, 54.393945312499966], + [142.97617187500006, 54.140966796875034], + [142.98593750000006, 54.08569335937497], + [142.96708984375007, 54.02880859375003], + [142.92656250000007, 53.95561523437502], + [142.91142578125002, 53.87836914062501], + [142.93642578125005, 53.81093750000005], + [142.91796875000003, 53.79423828125002], + [143.09550781250002, 53.48867187500002], + [143.22363281250003, 53.29604492187505], + [143.25996093750004, 53.21728515624997], + [143.28789062500007, 53.134375], + [143.32470703125003, 52.96308593749998], + [143.33261718750012, 52.700048828125034], + [143.32363281250005, 52.61357421874999], + [143.29511718750004, 52.529150390625034], + [143.26425781250012, 52.47866210937505], + [143.20097656250002, 52.44291992187496], + [143.17226562500005, 52.349365234375], + [143.15556640625002, 52.08374023437497], + [143.190625, 51.94448242187502], + [143.25058593750012, 51.84790039062497], + [143.29472656250002, 51.74433593750001], + [143.29951171875004, 51.632373046875045], + [143.32050781250004, 51.58325195312497], + [143.41777343750007, 51.520605468750006], + [143.45546875, 51.47148437500002], + [143.46738281250012, 51.40190429687499], + [143.47294921875002, 51.29921875000002], + [143.48876953125003, 51.27705078125004], + [143.53417968749997, 51.24628906249998], + [143.73603515625004, 50.50673828125005], + [143.81601562500006, 50.28261718750002], + [144.04794921875006, 49.895751953125], + [144.1413085937501, 49.66147460937506], + [144.199609375, 49.54975585937504], + [144.23994140625004, 49.43203125000002], + [144.27207031250012, 49.311328125000045], + [144.3412109375, 49.180517578125034], + [144.43173828125012, 49.051074218750045], + [144.6068359375, 48.93583984375002], + [144.68554687499997, 48.871240234374994], + [144.70664062500006, 48.81953125000004], + [144.71376953125, 48.64028320312502], + [144.67265625000002, 48.678564453125006], + [144.62099609375005, 48.814843749999966], + [144.53632812500004, 48.89355468750003], + [144.41181640625004, 48.98637695312502], + [144.28378906250006, 49.06977539062504], + [144.12548828124997, 49.20854492187496], + [144.04873046875, 49.249169921874994], + [143.96777343750003, 49.27631835937501], + [143.81914062500002, 49.30859375000003], + [143.73232421875, 49.31201171875], + [143.3822265625, 49.290673828124994], + [143.23632812500003, 49.26284179687502], + [143.10498046875003, 49.198828125000034], + [143.02685546874997, 49.10541992187501], + [142.97167968750003, 48.91777343749999], + [142.65097656250006, 48.24687], + [142.57421874999997, 48.07216796875002], + [142.54589843749997, 47.884912109374966], + [142.55693359375002, 47.737890625000034], + [142.57900390625005, 47.683984374999966], + [142.67011718750004, 47.536914062500045], + [142.74541015625002, 47.45239257812506], + [142.80078125000003, 47.41616210937502], + [142.86396484375004, 47.391796874999955], + [142.90546875000004, 47.36186523437499], + [142.94033203125005, 47.32275390625], + [143.0055664062501, 47.22270507812496], + [143.0892578125, 47.00078125], + [143.17792968750004, 46.84404296875002], + [143.21767578125005, 46.79487304687504], + [143.31865234375002, 46.807373046875], + [143.384375, 46.8056640625], + [143.44726562500003, 46.79199218749997], + [143.48564453125002, 46.752050781250006], + [143.54033203125007, 46.57509765625002], + [143.57871093750006, 46.406054687500045], + [143.58066406250012, 46.360693359375034], + [143.50859375000007, 46.23017578125001], + [143.490625, 46.17460937499996], + [143.48232421875005, 46.11582031249998], + [143.46347656250012, 46.06948242187505], + [143.43164062500003, 46.02866210937498], + [143.41865234375004, 46.222021484375034], + [143.37031250000004, 46.358496093750034], + [143.35214843750006, 46.47622070312502], + [143.28232421875006, 46.55898437500002], + [143.04785156250003, 46.592626953125034], + [142.82929687500004, 46.605273437500045], + [142.79550781250012, 46.62021484375006], + [142.74736328125007, 46.67065429687503], + [142.69189453124997, 46.71083984375005], + [142.63574218749997, 46.716210937499994], + [142.57802734375005, 46.700781250000034], + [142.47880859375007, 46.64423828124998], + [142.4064453125001, 46.55468750000003], + [142.35, 46.45869140625001], + [142.30400390625007, 46.35756835937502], + [142.20859375000006, 46.0888671875], + [142.14970703125007, 45.99926757812503], + [142.07714843749997, 45.91704101562499], + [142.015625, 45.96162109375001], + [141.96162109375004, 46.01347656249999], + [141.92998046875007, 46.08828125000005], + [141.91630859375007, 46.17075195312498], + [141.83037109375002, 46.451074218749966], + [141.86650390625002, 46.694189453125034], + [142.01103515625007, 47.030322265625045], + [142.03867187500012, 47.140283203124966], + [142.01689453125002, 47.24467773437502], + [141.98417968750002, 47.347705078125045], + [141.9625, 47.543798828125006], + [141.9640625000001, 47.58745117187502], + [142.015625, 47.70063476562498], + [142.07597656250007, 47.808349609375], + [142.14921875000007, 47.90214843750002], + [142.18173828125012, 48.01337890625001], + [142.13535156250006, 48.29008789062499], + [142.02871093750005, 48.47709960937499], + [141.89726562500007, 48.65468750000002], + [141.87304687500003, 48.70195312499996], + [141.86630859375006, 48.750097656250006], + [141.97958984375006, 48.97216796875006], + [142.02011718750006, 49.078466796875034], + [142.06650390625012, 49.31206054687502], + [142.10869140625007, 49.43964843749998], + [142.1422851562501, 49.56914062499999], + [142.153125, 50.21674804687501], + [142.14306640624997, 50.312109375], + [142.07109375000007, 50.514990234375034], + [142.06601562500006, 50.630468750000034], + [142.10048828125, 50.776464843750006], + [142.14726562500002, 50.89018554687499], + [142.20791015625005, 50.99848632812504], + [142.20673828125004, 51.22255859375002], + [142.09072265625005, 51.42939453124998], + [142.00595703125012, 51.52050781249997], + [141.87294921875, 51.630029296874994], + [141.771875, 51.690185546875], + [141.72236328125004, 51.73632812499997], + [141.771875, 51.751806640625034], + [141.80810546875003, 51.78920898437502], + [141.72099609375007, 51.846777343750006], + [141.66845703125003, 51.93334960937497], + [141.66083984375004, 52.27294921874997], + [141.68242187500002, 52.35913085937503], + [141.74755859374997, 52.454833984375], + [141.80332031250012, 52.55561523437501], + [141.85556640625012, 52.79350585937499], + [141.87363281250006, 53.03891601562506], + [141.83886718749997, 53.13847656249999], + [141.82353515625007, 53.33950195312502], + [141.85244140625, 53.38945312499996], + [141.96445312500006, 53.456396484375034], + [142.1419921875, 53.49560546875003], + [142.1798828125001, 53.484033203124966], + [142.31894531250012, 53.40546875000004], + [142.37050781250005, 53.40253906249998], + [142.4240234375001, 53.410742187500034], + [142.52617187500002, 53.44746093749998], + [142.58349609374997, 53.536767578124966], + [142.50917968750005, 53.58759765625001], + [142.55253906250007, 53.652636718750045], + [142.67958984375005, 53.67436523437502], + [142.68886718750005, 53.73017578125001], + [142.64287109375002, 53.73676757812504], + [142.6830078125, 53.816015625], + [142.70595703125, 53.89570312499998], + [142.67021484375007, 53.968408203124966], + [142.46660156250007, 54.14853515624998], + [142.33496093749997, 54.28071289062501], + [142.55166015625, 54.278955078124994], + [142.615625, 54.30361328125005], + [142.66621093750004, 54.35820312499999], + [142.69277343750005, 54.41611328125006], + [142.76103515625002, 54.393945312499966] + ] + ], + [ + [ + [168.03906249999997, 54.56499023437502], + [168.08134765625007, 54.51274414062502], + [167.67734375000012, 54.69765625000002], + [167.48808593750002, 54.79497070312496], + [167.44150390625012, 54.85585937500002], + [167.51171875000003, 54.85693359374997], + [167.59248046875004, 54.797753906249994], + [167.71064453125004, 54.770166015624966], + [167.88261718750002, 54.69047851562499], + [168.03906249999997, 54.56499023437502] + ] + ], + [ + [ + [137.17861328125005, 55.100439453125034], + [137.05527343750006, 54.9267578125], + [136.96943359375004, 54.92397460937505], + [136.90273437500005, 54.960644531249955], + [136.76513671874997, 54.946044921875], + [136.71464843750002, 54.956152343750034], + [136.7953125, 55.009375], + [136.99570312500006, 55.092724609374955], + [137.07753906250005, 55.09174804687504], + [137.15605468750007, 55.10781250000002], + [137.17861328125005, 55.100439453125034] + ] + ], + [ + [ + [137.94052734375012, 55.092626953125034], + [138.03125, 55.053320312500006], + [138.1720703125001, 55.06005859374997], + [138.20615234375012, 55.03354492187498], + [138.09648437500007, 54.99091796875001], + [138.01660156249997, 54.90087890625006], + [137.99121093750003, 54.820703124999966], + [137.95947265624997, 54.78901367187498], + [137.87011718749997, 54.749560546875045], + [137.79023437500004, 54.696923828124966], + [137.72148437500007, 54.66323242187505], + [137.66113281250003, 54.653271484374955], + [137.52558593750004, 54.82583007812502], + [137.46269531250002, 54.873388671875034], + [137.2760742187501, 54.792382812499966], + [137.23291015624997, 54.79057617187496], + [137.27519531250002, 54.891015625], + [137.38437500000012, 55.000683593749955], + [137.43554687499997, 55.016015624999966], + [137.54365234375004, 55.1630859375], + [137.5773437500001, 55.19702148437497], + [137.91044921875002, 55.11005859375004], + [137.94052734375012, 55.092626953125034] + ] + ], + [ + [ + [20.67773437500003, 54.955664062500006], + [20.774023437500034, 54.94702148437503], + [20.8875, 54.90947265625002], + [20.995898437500017, 54.90268554687506], + [21.18886718750008, 54.93520507812502], + [21.222851562500068, 55.107763671875006], + [21.235742187500023, 55.26411132812498], + [21.29755859375001, 55.264453125000045], + [21.389257812500034, 55.275537109374994], + [21.447070312500017, 55.23442382812496], + [21.5546875, 55.1953125], + [21.682714843750063, 55.16035156249998], + [21.873925781250023, 55.100732421874994], + [22.072363281250034, 55.06367187499998], + [22.137890625000068, 55.059375], + [22.346386718750068, 55.06425781250002], + [22.56728515625005, 55.05913085937496], + [22.627441406250057, 54.97070312499997], + [22.736523437500068, 54.928857421874966], + [22.82470703125, 54.87128906249998], + [22.83125, 54.838476562500034], + [22.70966796875001, 54.63261718750002], + [22.684472656250023, 54.56293945312504], + [22.679882812500068, 54.493017578125006], + [22.724316406250068, 54.405615234375034], + [22.766210937499977, 54.356787109375034], + [22.73183593750008, 54.35009765625003], + [22.168457031250057, 54.35986328125006], + [21.634179687500023, 54.37646484374997], + [21.14052734375008, 54.39179687499998], + [20.66474609375004, 54.406640625], + [20.20820312500004, 54.420751953125034], + [19.92431640625003, 54.433984374999966], + [19.644238281250068, 54.44707031249996], + [19.604394531250023, 54.45917968750004], + [19.758496093750068, 54.544824218749994], + [19.85888671875, 54.63383789062499], + [19.944140625000074, 54.75], + [19.953222656250034, 54.83046875], + [19.974511718750023, 54.92119140625002], + [20.107617187500068, 54.95649414062501], + [20.396679687500068, 54.951269531250006], + [20.520312500000017, 54.994873046875], + [20.67890625000001, 55.102636718750034], + [20.845703125000057, 55.23203125], + [20.89980468750008, 55.286669921875045], + [20.957812500000074, 55.27890625000006], + [20.859375, 55.18364257812502], + [20.594824218750006, 54.982373046874955], + [20.67773437500003, 54.955664062500006] + ] + ], + [ + [ + [166.65029296875005, 54.83906249999998], + [166.64511718750006, 54.69409179687503], + [166.52128906250002, 54.76762695312499], + [166.46367187500002, 54.82685546874998], + [166.38173828125005, 54.838085937499955], + [166.32480468750006, 54.86455078125002], + [166.2298828125, 54.93652343750003], + [166.11972656250012, 55.03037109375006], + [166.08232421875007, 55.07656250000005], + [166.06630859375, 55.13569335937501], + [165.9918945312501, 55.19047851562499], + [165.75107421875006, 55.294531250000034], + [165.83046875, 55.30693359374999], + [165.93125000000012, 55.351464843749994], + [166.21191406249997, 55.323974609375], + [166.27578125000005, 55.311962890624955], + [166.22998046875003, 55.242333984374966], + [166.24804687499997, 55.16542968750002], + [166.40429687500003, 55.00561523437497], + [166.47949218749997, 54.94990234375001], + [166.5773437500001, 54.90771484375003], + [166.65029296875005, 54.83906249999998] + ] + ], + [ + [ + [150.58994140625006, 59.01875], + [150.5111328125, 59.007421875], + [150.47177734375006, 59.03476562500006], + [150.47021484375003, 59.05405273437498], + [150.59248046875004, 59.09721679687499], + [150.66621093750004, 59.16015625000003], + [150.71269531250002, 59.122460937499994], + [150.7277343750001, 59.09521484375003], + [150.58994140625006, 59.01875] + ] + ], + [ + [ + [163.63515625000005, 58.603369140625006], + [163.47138671875004, 58.509375], + [163.44726562500003, 58.52465820312506], + [163.4318359375001, 58.546142578125], + [163.42724609374997, 58.578955078125006], + [163.57675781250012, 58.640869140625], + [163.72656250000003, 58.79853515624998], + [163.78447265625007, 58.929736328125074], + [163.76660156249997, 58.972363281249955], + [163.7609375000001, 59.01503906250002], + [164.20214843749997, 59.09619140625006], + [164.51738281250002, 59.22675781250001], + [164.57265625, 59.22114257812501], + [164.62929687500005, 59.11220703125002], + [164.66162109374997, 58.97075195312499], + [164.61572265624997, 58.885595703125034], + [164.27880859374997, 58.838085937499955], + [163.96005859375006, 58.74375], + [163.63515625000005, 58.603369140625006] + ] + ], + [ + [ + [35.8161132812501, 65.18208007812501], + [35.84843750000002, 65.14267578124998], + [35.85839843750003, 65.07792968750002], + [35.8273437500001, 65.036474609375], + [35.84228515625003, 65.00146484374997], + [35.77871093750005, 64.97666015625], + [35.680078125, 65.05761718749997], + [35.621386718750074, 65.05878906250004], + [35.55859374999997, 65.093603515625], + [35.52890625000006, 65.15107421875001], + [35.585742187500074, 65.16708984374998], + [35.60869140625002, 65.15712890625], + [35.72910156250006, 65.19755859375005], + [35.8161132812501, 65.18208007812501] + ] + ], + [ + [ + [70.02070312500004, 66.502197265625], + [69.84472656249997, 66.48974609375006], + [69.65136718750003, 66.56533203125], + [69.46933593750006, 66.71596679687505], + [69.50273437500002, 66.75107421875], + [69.6164062500001, 66.73901367187503], + [69.800390625, 66.73647460937505], + [69.91757812500006, 66.71166992187497], + [70.07666015624997, 66.69589843750003], + [70.05761718749997, 66.627197265625], + [70.0572265625, 66.59946289062503], + [70.11005859375004, 66.56909179687506], + [70.05917968750006, 66.51757812500003], + [70.02070312500004, 66.502197265625] + ] + ], + [ + [ + [42.713671875000074, 66.70170898437507], + [42.67558593750002, 66.68808593750003], + [42.47734375000002, 66.73505859375001], + [42.46005859375006, 66.77036132812503], + [42.46855468750002, 66.785546875], + [42.547460937500006, 66.7955078125], + [42.631445312500006, 66.78222656250003], + [42.690722656250074, 66.73530273437498], + [42.713671875000074, 66.70170898437507] + ] + ], + [ + [ + [-179.79853515625, 68.9404296875], + [-179.59541015625, 68.906494140625], + [-179.51450195312503, 68.91713867187505], + [-179.47084960937502, 68.91240234375005], + [-179.35595703125, 68.85297851562501], + [-179.279296875, 68.82519531250006], + [-178.873876953125, 68.75410156249995], + [-178.68930664062498, 68.67514648437503], + [-178.53852539062498, 68.58564453125001], + [-178.61367187500002, 68.60307617187502], + [-178.75146484375003, 68.66044921875005], + [-178.7365234375, 68.593017578125], + [-178.69262695312503, 68.54599609375], + [-178.47392578125, 68.50175781250005], + [-178.24448242187503, 68.466650390625], + [-178.09746093750002, 68.4248046875], + [-178.04868164062503, 68.38842773437497], + [-178.01870117187497, 68.32275390625], + [-178.05581054687497, 68.26489257812503], + [-177.92241210937496, 68.2865234375], + [-177.79677734374997, 68.33798828125], + [-177.86181640624997, 68.37822265625002], + [-178.28452148437503, 68.51855468750003], + [-178.37304687500003, 68.56567382812503], + [-178.24985351562498, 68.54140624999997], + [-177.683203125, 68.36279296875], + [-177.52724609375002, 68.29438476562501], + [-177.59321289062504, 68.28115234374997], + [-177.63935546875004, 68.2412109375], + [-177.58920898437503, 68.22421875], + [-177.52089843749997, 68.23686523437502], + [-177.40751953124996, 68.24516601562502], + [-177.297412109375, 68.222509765625], + [-177.171826171875, 68.17465820312503], + [-176.90727539062502, 68.119140625], + [-175.34521484375, 67.67807617187503], + [-175.30986328125002, 67.60205078125], + [-175.26591796875002, 67.56650390625003], + [-175.23955078125, 67.52109375000003], + [-175.23251953124998, 67.44667968749997], + [-175.37470703124998, 67.35737304687498], + [-175.155078125, 67.365380859375], + [-175.122802734375, 67.37695312499997], + [-175.06562, 67.41342773437503], + [-175.00268554687494, 67.4375], + [-174.91806640625003, 67.40756835937498], + [-174.849853515625, 67.34887695312503], + [-174.869921875, 67.26850585937498], + [-174.93041992187497, 67.20346679687498], + [-174.93813476562497, 67.09301757812503], + [-174.88505859375, 67.00024414062506], + [-174.82871093750003, 66.96137695312504], + [-174.783642578125, 66.91679687500002], + [-174.77119140625004, 66.78432617187502], + [-174.87011718750003, 66.72490234374999], + [-174.92490234375, 66.62314453125006], + [-174.8642578125, 66.61313476562506], + [-174.674658203125, 66.60341796875002], + [-174.61245117187494, 66.58540039062501], + [-174.503759765625, 66.537939453125], + [-174.47773437500004, 66.49218750000003], + [-174.45375976562494, 66.42988281250001], + [-174.418701171875, 66.37197265625005], + [-174.39409179687496, 66.34423828124997], + [-174.36606445312503, 66.34833984375001], + [-174.256982421875, 66.428466796875], + [-174.206005859375, 66.45234374999998], + [-174.084765625, 66.47309570312504], + [-174.01772460937502, 66.38251953124995], + [-174.06503906249998, 66.22958984374998], + [-174.025439453125, 66.22968750000001], + [-173.99448242187498, 66.24580078125001], + [-173.95546874999997, 66.286767578125], + [-173.89995117187502, 66.31049804687495], + [-173.83203125000003, 66.36606445312498], + [-173.77397460937502, 66.43466796875003], + [-173.84252929687503, 66.48828125000003], + [-173.92094726562502, 66.52177734375002], + [-174.10185546875002, 66.540625], + [-174.196337890625, 66.58071289062502], + [-174.23159179687497, 66.63188476562505], + [-174.13959960937498, 66.65263671875002], + [-174.06059570312496, 66.68979492187503], + [-174.00551757812502, 66.77861328125002], + [-174.01884765625, 66.827392578125], + [-174.04101562499997, 66.87548828125003], + [-174.08642578125, 66.94287109375], + [-174.15434570312496, 66.98203124999998], + [-174.283544921875, 67.00156250000006], + [-174.341845703125, 67.03974609375001], + [-174.430908203125, 67.03764648437502], + [-174.5189453125, 67.04907226562506], + [-174.55449218749996, 67.06303710937505], + [-174.55009765624993, 67.09062], + [-174.44760742187503, 67.103125], + [-173.88403320312497, 67.1064453125], + [-173.6796875, 67.144775390625], + [-173.58657226562502, 67.13276367187495], + [-173.49399414062498, 67.10517578125001], + [-173.15781249999998, 67.06909179687503], + [-173.16762695312502, 67.05224609374997], + [-173.224169921875, 67.03510742187495], + [-173.32353515625, 66.95483398437503], + [-173.34306640625, 66.90922851562507], + [-173.34736328124995, 66.85136718750002], + [-173.25893554687497, 66.84008789062503], + [-173.175390625, 66.86459960937503], + [-173.21616210937498, 66.91123046875003], + [-173.22827148437503, 66.96855468749999], + [-173.19301757812497, 66.99360351562504], + [-173.14682617187498, 66.99897460937495], + [-173.05849609375, 66.95585937500007], + [-172.96259765625, 66.94213867187503], + [-172.64057617187504, 66.925], + [-172.54936523437502, 66.93051757812506], + [-172.5201171875, 66.952490234375], + [-172.582958984375, 66.97783203125002], + [-173.001904296875, 67.03398437499999], + [-173.00751953125, 67.06489257812498], + [-172.62104492187495, 67.02680664062495], + [-172.44731445312502, 66.99174804687502], + [-172.27392578125003, 66.965576171875], + [-172.03149414062503, 66.97329101562497], + [-171.79555664062502, 66.93173828125003], + [-171.56958007812497, 66.818701171875], + [-171.36049804687502, 66.67675781250006], + [-171.14926757812498, 66.59272460937498], + [-170.92666015625002, 66.52973632812504], + [-170.5556640625, 66.35722656250005], + [-170.50952148437503, 66.34365234375005], + [-170.47309570312498, 66.32026367187498], + [-170.54282226562498, 66.29106445312499], + [-170.604443359375, 66.24892578125002], + [-170.48330078125002, 66.278076171875], + [-170.3611328125, 66.29790039062505], + [-170.30122070312504, 66.29404296874998], + [-170.24697265625, 66.271875], + [-170.21162109375, 66.23642578125003], + [-170.191943359375, 66.20126953124998], + [-170.24394531250002, 66.16928710937503], + [-169.88881835937497, 66.16347656250002], + [-169.777880859375, 66.14311523437505], + [-169.72915039062502, 66.05810546875006], + [-169.83168945312497, 65.99892578124997], + [-169.89169921875, 66.00610351562503], + [-169.94931640625003, 66.03100585937503], + [-170.00380859375002, 66.03349609375002], + [-170.15942382812503, 66.00805664062497], + [-170.40102539062494, 65.92851562500002], + [-170.54067382812497, 65.86542968749995], + [-170.563037109375, 65.82358398437506], + [-170.54140624999994, 65.71025390625005], + [-170.560986328125, 65.65625], + [-170.66630859375, 65.62153320312501], + [-170.89687, 65.64262695312505], + [-171.00146484374997, 65.66489257812506], + [-171.11899414062503, 65.69501953124998], + [-171.23203124999995, 65.73686523437505], + [-171.37685546874997, 65.80395507812506], + [-171.42153320312502, 65.81035156250002], + [-171.451171875, 65.79423828125002], + [-171.40170898437498, 65.75175781249999], + [-171.30322265625, 65.69848632812497], + [-171.13442382812497, 65.62807617187502], + [-171.054248046875, 65.549951171875], + [-171.10585937500002, 65.51103515625005], + [-171.16997070312502, 65.50209960937502], + [-171.21601562499998, 65.50278320312498], + [-171.36376953124997, 65.52719726562498], + [-171.46625976562498, 65.53310546875002], + [-171.79038085937503, 65.51044921875004], + [-171.90712890625, 65.495947265625], + [-171.94716796875, 65.50795898437497], + [-171.957177734375, 65.54208984374998], + [-172.13149414062497, 65.56694335937499], + [-172.23388671874994, 65.570458984375], + [-172.28227539062496, 65.58232421875002], + [-172.32226562500003, 65.617529296875], + [-172.43569335937497, 65.66962890624995], + [-172.60771484375, 65.69003906250003], + [-172.71918945312498, 65.69243164062507], + [-172.78330078124998, 65.68105468749997], + [-172.55654296874997, 65.61201171875001], + [-172.353955078125, 65.49599609375002], + [-172.39199218750002, 65.47456054687501], + [-172.41777343749993, 65.44956054687506], + [-172.30571289062502, 65.44780273437505], + [-172.23281250000002, 65.45571289062497], + [-172.21157226562502, 65.42519531249997], + [-172.269873046875, 65.302734375], + [-172.30927734375004, 65.27563476562497], + [-172.66191406249993, 65.24853515625006], + [-172.57314453124997, 65.22822265624998], + [-172.482080078125, 65.221875], + [-172.3787109375, 65.22670898437505], + [-172.28603515625002, 65.20571289062502], + [-172.22368164062502, 65.12871093750007], + [-172.21318359375, 65.04814453124999], + [-172.30434570312502, 65.00214843750004], + [-172.39873046874996, 64.96474609374997], + [-172.592822265625, 64.90795898437503], + [-172.79248046875, 64.88291015624998], + [-172.89736328124994, 64.88920898437502], + [-172.99912109374998, 64.87661132812505], + [-173.0662109375, 64.84716796875], + [-173.08579101562498, 64.81733398437495], + [-172.99804687500003, 64.83710937499998], + [-172.896875, 64.82607421875005], + [-172.80107421874996, 64.79052734375], + [-172.81157226562496, 64.76118164062498], + [-172.90258789062503, 64.72919921875004], + [-172.92402343750004, 64.70493164062506], + [-172.88906250000002, 64.66401367187498], + [-172.90087890624994, 64.62885742187501], + [-172.85415039062502, 64.60991210937507], + [-172.746875, 64.60327148437503], + [-172.61611328125002, 64.57788085937503], + [-172.48740234375, 64.544189453125], + [-172.43662109374998, 64.51533203124998], + [-172.39384765624996, 64.47465820312505], + [-172.37875976562498, 64.43154296874997], + [-172.40146484374998, 64.413916015625], + [-172.69467773437503, 64.40708007812503], + [-172.73916015624997, 64.41225585937502], + [-172.75595703125, 64.45996093749997], + [-172.79150390624997, 64.49892578125002], + [-172.90317382812498, 64.52607421875004], + [-172.9490234375, 64.50737304687505], + [-172.91586914062498, 64.36943359375002], + [-172.96005859375003, 64.32768554687502], + [-173.00913085937498, 64.2974609375], + [-173.15742187499998, 64.27973632812504], + [-173.27548828124998, 64.2896484375], + [-173.37568359375004, 64.35488281249997], + [-173.37553710937502, 64.410400390625], + [-173.30922851562502, 64.44267578125002], + [-173.30932617187503, 64.487451171875], + [-173.327490234375, 64.53955078125003], + [-173.39565429687502, 64.47900390625003], + [-173.47495117187503, 64.42861328125], + [-173.60361328125003, 64.365478515625], + [-173.66596679687504, 64.35732421875002], + [-173.72973632812497, 64.36450195312497], + [-173.89785156250002, 64.40971679687505], + [-174.00136718749997, 64.44897460937506], + [-174.20483398437503, 64.577783203125], + [-174.318017578125, 64.63764648437504], + [-174.57055664062503, 64.7177734375], + [-174.83046874999997, 64.77597656250006], + [-175.03603515625, 64.81367187500001], + [-175.14584960937498, 64.80927734375001], + [-175.25590820312493, 64.79399414062499], + [-175.39511718749998, 64.80239257812502], + [-175.44213867187494, 64.81669921874999], + [-175.483203125, 64.84858398437501], + [-175.52065429687497, 64.86708984374997], + [-175.71586914062493, 64.94609374999999], + [-175.85385742187498, 65.01083984375003], + [-175.85947265624998, 65.05419921874997], + [-175.83022460937497, 65.10551757812505], + [-175.85615234375, 65.23281250000005], + [-175.92294921875003, 65.35249023437501], + [-176.09326171875, 65.471044921875], + [-176.54746093749998, 65.54755859374995], + [-176.92211914062503, 65.60136718749999], + [-177.05625, 65.613623046875], + [-177.17524414062498, 65.60166015625003], + [-177.48876953125, 65.50371093749999], + [-177.69863281250002, 65.48969726562498], + [-178.31020507812502, 65.48486328124997], + [-178.4125, 65.49555664062501], + [-178.504638671875, 65.53720703124998], + [-178.525927734375, 65.59301757812497], + [-178.49931640625, 65.69663085937503], + [-178.50234375, 65.74042968749998], + [-178.52622070312498, 65.75522460937498], + [-178.55854492187498, 65.75400390625], + [-178.67915039062504, 65.79536132812498], + [-178.79106445312502, 65.86474609375], + [-178.87934570312495, 65.93647460937495], + [-178.93906249999998, 66.03276367187505], + [-178.85825195312503, 66.03754882812504], + [-178.74672851562497, 66.01367187500006], + [-178.73056640625003, 66.03725585937497], + [-178.693798828125, 66.12421875000001], + [-178.61625976562502, 66.166015625], + [-178.5865234375, 66.19843750000004], + [-178.53413085937498, 66.31655273437502], + [-178.52656250000004, 66.40156250000004], + [-178.615771484375, 66.35517578124998], + [-178.75278320312503, 66.23725585937495], + [-178.82084960937496, 66.20268554687502], + [-178.86811523437498, 66.18706054687502], + [-178.91552734374997, 66.179931640625], + [-179.02612304687503, 66.203515625], + [-179.10507812500003, 66.23193359375003], + [-179.10688476562504, 66.34609375], + [-179.14340820312503, 66.37504882812505], + [-179.17836914062497, 66.35332031250005], + [-179.19267578125005, 66.31254882812502], + [-179.29316406249998, 66.305078125], + [-179.34013671874996, 66.2875], + [-179.3162109375, 66.21982421875003], + [-179.327197265625, 66.16259765625003], + [-179.42265625, 66.14106445312498], + [-179.61616210937498, 66.12788085937495], + [-179.68330078124998, 66.18413085937505], + [-179.74086914062497, 66.10576171874999], + [-179.78364257812498, 66.01796875000005], + [-179.78969726562497, 65.90087890625], + [-179.7283203125, 65.80380859375], + [-179.640625, 65.757568359375], + [-179.44907226562503, 65.687841796875], + [-179.365966796875, 65.63862304687504], + [-179.34438476562502, 65.57524414062499], + [-179.352099609375, 65.51674804687497], + [-179.45166015625003, 65.4453125], + [-179.51933593749996, 65.38627929687505], + [-179.63515625000002, 65.24414062500003], + [-179.70458984374994, 65.18720703124998], + [-180, 65.06723632812498], + [-180, 65.31196289062501], + [-180, 65.55678710937497], + [-180, 65.80156250000002], + [-180, 66.04628906250002], + [-180, 66.29106445312499], + [-180, 66.53583984375004], + [-180, 66.78056640625005], + [-180, 67.02534179687501], + [-180, 67.27011718750006], + [-180, 67.51484374999998], + [-180, 67.75961914062503], + [-180, 68.00439453124997], + [-180, 68.24912109375], + [-180, 68.49389648437497], + [-180, 68.738671875], + [-179.999951171875, 68.98344726562505], + [-179.79853515625, 68.9404296875] + ] + ], + [ + [ + [50.265234375, 69.18559570312502], + [50.283007812500074, 69.08886718750003], + [50.22060546875005, 69.04877929687504], + [50.164453125, 69.03754882812495], + [50.140917968750074, 69.09814453124997], + [50.0939453125001, 69.12553710937505], + [49.920800781249994, 69.05327148437507], + [49.83984375000003, 68.97377929687502], + [49.62626953125002, 68.85971679687498], + [49.180468750000074, 68.77841796875003], + [48.91035156250004, 68.74306640625002], + [48.66699218750003, 68.73315429687503], + [48.4390625, 68.80488281249998], + [48.31591796874997, 68.94238281250003], + [48.29443359374997, 68.98422851562503], + [48.27880859374997, 69.04033203124999], + [48.28027343749997, 69.09663085937501], + [48.296289062499994, 69.18388671875002], + [48.319921875, 69.26923828125001], + [48.41386718750002, 69.34565429687504], + [48.63134765625003, 69.43603515624997], + [48.8449218750001, 69.49472656250003], + [48.9533203125001, 69.50927734374997], + [49.22519531250006, 69.51123046875], + [49.9962890625001, 69.30942382812503], + [50.16728515625002, 69.25708007812503], + [50.265234375, 69.18559570312502] + ] + ], + [ + [ + [67.34492187500004, 69.52983398437499], + [67.26396484375002, 69.44252929687497], + [67.0978515625001, 69.44716796875002], + [67.047265625, 69.46704101562497], + [67.02587890624997, 69.48320312499999], + [67.21611328125002, 69.57539062500004], + [67.32890625000002, 69.57211914062498], + [67.34492187500004, 69.52983398437499] + ] + ], + [ + [ + [161.46708984375002, 68.90097656250003], + [161.42246093750006, 68.89965820312503], + [161.45625, 68.96601562499995], + [161.46113281250004, 68.99560546875003], + [161.36406250000002, 69.04443359375003], + [161.18251953125005, 69.08159179687505], + [161.13652343750002, 69.11025390625002], + [161.12548828124997, 69.19702148437503], + [161.16455078125003, 69.33359374999998], + [161.08281250000007, 69.4056640625], + [161.1107421875, 69.46982421875], + [161.32333984375006, 69.54091796875002], + [161.40976562500006, 69.595703125], + [161.50517578125007, 69.63945312500002], + [161.52070312500004, 69.63403320312497], + [161.61777343750006, 69.59243164062502], + [161.60927734375005, 69.50092773437495], + [161.54033203125002, 69.43652343749997], + [161.3744140625, 69.41367187500003], + [161.35087890625007, 69.36933593749998], + [161.37265625000006, 69.292822265625], + [161.37753906250006, 69.19443359375003], + [161.39423828125004, 69.10644531249997], + [161.49472656250006, 69.01601562500002], + [161.5169921875, 68.96958007812498], + [161.50673828125005, 68.92758789062503], + [161.46708984375002, 68.90097656250003] + ] + ], + [ + [ + [169.20078125000006, 69.58046875], + [168.91572265625004, 69.57143554687502], + [168.34804687500005, 69.66435546875005], + [168.14433593750002, 69.71333007812498], + [167.99267578124997, 69.77583007812501], + [167.82128906250003, 69.81962890625005], + [167.78886718750002, 69.83686523437501], + [167.81396484374997, 69.873046875], + [167.86474609375003, 69.90107421875004], + [168.05957031249997, 69.97490234375007], + [168.19628906249997, 70.00839843750003], + [168.35791015625003, 70.01567382812502], + [169.37480468750007, 69.88261718749999], + [169.42070312500002, 69.8560546875], + [169.43359374999997, 69.83217773437502], + [169.4181640625001, 69.77919921875], + [169.33242187500005, 69.76958007812507], + [169.29912109375002, 69.734765625], + [169.2633789062501, 69.62871093750005], + [169.2458007812501, 69.60112304687502], + [169.20078125000006, 69.58046875] + ] + ], + [ + [ + [60.450488281250074, 69.93486328124999], + [60.48066406250004, 69.88549804687497], + [60.4772460937501, 69.793701171875], + [60.44023437500002, 69.72592773437506], + [60.32714843749997, 69.71528320312501], + [60.21591796875006, 69.68769531249998], + [60.02617187500002, 69.71704101562503], + [59.91953125000006, 69.69697265625001], + [59.812792968750074, 69.695654296875], + [59.72460937499997, 69.70620117187502], + [59.637011718750074, 69.72104492187503], + [59.57822265625006, 69.73862304687498], + [59.58125, 69.79086914062506], + [59.50263671875004, 69.86621093750003], + [59.38154296875004, 69.89042968749999], + [59.26835937500002, 69.89843750000003], + [59.14423828125004, 69.92192382812502], + [59.08251953124997, 69.91079101562497], + [59.00400390625006, 69.88330078125006], + [58.952734375, 69.89277343750004], + [58.68007812500005, 70.05102539062503], + [58.63417968750005, 70.08803710937502], + [58.60556640625006, 70.12919921875005], + [58.56806640625004, 70.15566406250002], + [58.473046875, 70.26684570312503], + [58.51992187500005, 70.31831054687504], + [58.615332031250006, 70.350830078125], + [58.678027343750074, 70.35957031250001], + [58.79423828125002, 70.43295898437503], + [59.00527343750005, 70.46518554687503], + [59.04804687500004, 70.46049804687505], + [59.08828125, 70.43710937499998], + [59.30986328125002, 70.36166992187498], + [59.42597656250004, 70.31093750000005], + [59.52910156250002, 70.24897460937504], + [59.636328125, 70.19702148437503], + [59.95585937500002, 70.10834960937498], + [60.17226562500005, 70.02285156249997], + [60.39257812499997, 69.96240234375], + [60.450488281250074, 69.93486328124999] + ] + ], + [ + [ + [66.56093750000005, 70.541748046875], + [66.5685546875001, 70.50146484375006], + [66.5158203125001, 70.51489257812503], + [66.4486328125, 70.56103515625], + [66.4076171875, 70.61577148437507], + [66.39482421875002, 70.72729492187506], + [66.4181640625001, 70.75712890624999], + [66.44023437500007, 70.77265624999995], + [66.46289062499997, 70.76933593749999], + [66.45771484375004, 70.69877929687502], + [66.56093750000005, 70.541748046875] + ] + ], + [ + [ + [160.71894531250004, 70.82270507812504], + [160.65136718750003, 70.80585937499998], + [160.50478515625, 70.81972656250005], + [160.43691406250005, 70.85102539062504], + [160.44042968750003, 70.92265625000005], + [160.44853515625002, 70.93403320312498], + [160.5658203125, 70.92377929687501], + [160.64492187500005, 70.883544921875], + [160.71894531250004, 70.82270507812504] + ] + ], + [ + [ + [52.90332031250003, 71.36499023437503], + [52.99414062499997, 71.291259765625], + [53.074023437500074, 71.237939453125], + [53.14140625000002, 71.24189453124998], + [53.19257812500004, 71.21528320312498], + [53.20517578125006, 71.15971679687505], + [53.0714843750001, 71.0650390625], + [53.04814453125002, 71.03095703125001], + [53.10576171875002, 70.99926757812503], + [53.12099609375005, 70.98203124999998], + [53.0226562500001, 70.96870117187501], + [53.004492187500006, 71.01162109374997], + [52.94960937500005, 71.05361328125], + [52.835351562499994, 71.08583984375], + [52.788964843749994, 71.11494140624998], + [52.73837890625006, 71.18066406250003], + [52.5465820312501, 71.25043945312495], + [52.4254882812501, 71.23925781249997], + [52.289453125, 71.270361328125], + [52.24960937500006, 71.28491210937506], + [52.23984375, 71.32504882812506], + [52.29658203125004, 71.35683593750005], + [52.512597656249994, 71.38505859375002], + [52.61738281250004, 71.38334960937502], + [52.7296875000001, 71.35512695312497], + [52.7203125, 71.38979492187502], + [52.732226562500074, 71.4037109375], + [52.776757812499994, 71.3998046875], + [52.90332031250003, 71.36499023437503] + ] + ], + [ + [ + [178.8615234375001, 70.826416015625], + [178.79257812500006, 70.82207031249999], + [178.64824218749996, 71.00058593750003], + [178.6283203125, 71.04736328124997], + [178.68388671875013, 71.10566406250004], + [178.82900390625005, 71.177880859375], + [178.89111328125009, 71.23110351562502], + [179.23505859375015, 71.32451171875005], + [179.54765625000007, 71.44765625], + [179.71591796875006, 71.46621093750002], + [179.88642578125015, 71.52333984375005], + [180, 71.53774414062505], + [180, 70.993017578125], + [179.88134765625003, 70.97568359375003], + [179.64765625000004, 70.89892578125003], + [179.15253906250004, 70.88027343750002], + [178.8615234375001, 70.826416015625] + ] + ], + [ + [ + [137.95986328125005, 71.50766601562503], + [137.71181640625005, 71.4232421875], + [137.61289062500006, 71.43393554687503], + [137.51181640625006, 71.47460937499997], + [137.45781250000007, 71.48349609375], + [137.40322265625005, 71.47729492187497], + [137.34423828125003, 71.46054687500003], + [137.26552734375, 71.45590820312498], + [137.07871093750012, 71.502197265625], + [137.06406250000006, 71.52988281250003], + [137.08183593750002, 71.542724609375], + [137.12949218750006, 71.55615234374997], + [137.16816406250004, 71.55712890625], + [137.28183593750012, 71.57993164062503], + [137.816796875, 71.58789062500006], + [137.8576171875001, 71.58305664062505], + [137.93378906250004, 71.54277343749999], + [137.95986328125005, 71.50766601562503] + ] + ], + [ + [ + [-178.87646484375, 71.57705078124997], + [-178.43896484374994, 71.54116210937502], + [-178.35356445312496, 71.52919921875], + [-178.214697265625, 71.48164062499998], + [-178.13388671874998, 71.46547851562497], + [-178.05664062499994, 71.43759765624998], + [-177.97480468749998, 71.39052734375], + [-177.81699218749998, 71.339990234375], + [-177.58413085937497, 71.28168945312501], + [-177.53217773437504, 71.26308593750005], + [-177.498486328125, 71.21914062499997], + [-177.523583984375, 71.16689453125], + [-177.82177734375, 71.06757812500001], + [-178.06269531250004, 71.04194335937501], + [-178.52797851562497, 71.014794921875], + [-179.15688476562502, 70.93984375], + [-179.415673828125, 70.91899414062502], + [-179.50668945312498, 70.92343750000003], + [-179.73403320312502, 70.9716796875], + [-179.999951171875, 70.993017578125], + [-179.999951171875, 71.18422851562497], + [-179.999951171875, 71.39970703124999], + [-179.999951171875, 71.53774414062505], + [-179.84487304687502, 71.55097656249998], + [-179.69101562500003, 71.57797851562498], + [-179.54638671874997, 71.582421875], + [-179.40205078125007, 71.56665039062497], + [-179.25649414062497, 71.57167968750002], + [-179.11157226562503, 71.59619140625006], + [-178.99404296874997, 71.59321289062498], + [-178.87646484375, 71.57705078124997] + ] + ], + [ + [ + [77.6325195312501, 72.291259765625], + [77.14560546875012, 72.28188476562502], + [76.90595703125004, 72.29765625000005], + [76.87109374999997, 72.317041015625], + [76.903125, 72.36557617187503], + [77.14951171875012, 72.43920898437503], + [77.26044921875004, 72.48613281249999], + [77.37783203125, 72.56528320312503], + [77.57871093750006, 72.63085937499997], + [77.74853515625003, 72.63120117187506], + [78.27910156250002, 72.55322265624997], + [78.35292968750005, 72.50429687500005], + [78.36513671875005, 72.48242187500003], + [78.15449218750004, 72.41699218750003], + [78.00722656250005, 72.39248046875], + [77.78085937500012, 72.30854492187495], + [77.6325195312501, 72.291259765625] + ] + ], + [ + [ + [79.50146484374997, 72.72192382812497], + [79.43066406249997, 72.710693359375], + [78.88056640625004, 72.751611328125], + [78.69023437500002, 72.80341796874995], + [78.63320312500005, 72.85073242187502], + [78.65683593750006, 72.89228515624995], + [79.16425781250004, 73.0943359375], + [79.35654296875006, 73.03862304687502], + [79.4125, 72.98310546874998], + [79.54130859375002, 72.91865234374998], + [79.53789062500002, 72.76933593750005], + [79.50146484374997, 72.72192382812497] + ] + ], + [ + [ + [74.660546875, 72.87343750000002], + [74.6383789062501, 72.86376953125], + [74.5880859375001, 72.88115234374999], + [74.4347656250001, 72.90766601562498], + [74.18066406250003, 72.975341796875], + [74.10019531250006, 73.02153320312499], + [74.14238281250002, 73.07436523437502], + [74.19853515625002, 73.10908203124998], + [74.40878906250006, 73.13046874999998], + [74.59990234375007, 73.12177734374998], + [74.72529296875004, 73.10815429687497], + [74.9615234375, 73.0625], + [74.742578125, 73.03271484375006], + [74.64726562500007, 72.96904296875005], + [74.66015625000003, 72.92929687500003], + [74.69716796875, 72.90771484375], + [74.660546875, 72.87343750000002] + ] + ], + [ + [ + [120.26132812500012, 73.08984374999997], + [120.00791015625006, 73.04487304687495], + [119.79208984375006, 73.04541015624997], + [119.64042968750002, 73.12431640625007], + [119.76191406250004, 73.15546875000001], + [119.96445312500012, 73.16767578125001], + [120.078515625, 73.15673828125], + [120.23681640624997, 73.10727539062506], + [120.26132812500012, 73.08984374999997] + ] + ], + [ + [ + [55.31982421875003, 73.30830078124998], + [55.78730468750004, 73.26860351562505], + [56.13769531250003, 73.25615234375002], + [56.350488281249994, 73.22553710937498], + [56.42958984375005, 73.201171875], + [56.39746093749997, 73.13916015624997], + [56.3346679687501, 73.11367187500002], + [56.18896484374997, 73.03300781250002], + [56.16699218750003, 72.98320312499999], + [56.19287109374997, 72.90498046874995], + [56.170507812500006, 72.84809570312501], + [56.121679687500006, 72.80659179687498], + [56.08378906250002, 72.78940429687503], + [55.81972656250005, 72.78950195312498], + [55.723437500000074, 72.76640625000007], + [55.71845703125004, 72.72153320312498], + [55.70097656250002, 72.67172851562506], + [55.61640625000004, 72.59907226562498], + [55.44130859375005, 72.57539062499995], + [55.40332031249997, 72.54907226562503], + [55.41689453125005, 72.50131835937498], + [55.35595703124997, 72.46508789062506], + [55.3595703125001, 72.40869140625003], + [55.39042968750002, 72.37783203125005], + [55.3991210937501, 72.31362304687502], + [55.51806640624997, 72.22065429687498], + [55.494921875000074, 72.18232421875001], + [55.40332031249997, 72.10688476562498], + [55.375, 72.014892578125], + [55.29785156249997, 71.93535156250005], + [55.47109375, 71.86923828124998], + [55.54667968750002, 71.783349609375], + [55.613671875, 71.68989257812495], + [55.81933593749997, 71.50756835937503], + [56.0431640625001, 71.34560546874997], + [56.45439453125002, 71.10737304687504], + [56.894824218750074, 70.92700195312506], + [57.065625, 70.87602539062505], + [57.4835937500001, 70.79228515625005], + [57.55644531250002, 70.76582031249998], + [57.62539062500005, 70.72880859374999], + [57.44716796875005, 70.66103515625005], + [57.26367187499997, 70.63603515625002], + [57.24697265625005, 70.60512695312502], + [57.14589843750005, 70.58911132812506], + [56.64882812500005, 70.64653320312502], + [56.621679687500006, 70.65537109375003], + [56.568652343750074, 70.69746093750001], + [56.51005859375002, 70.72880859374999], + [56.38574218749997, 70.73413085937503], + [56.260058593750074, 70.71474609374997], + [56.33476562500002, 70.67670898437495], + [56.4171875000001, 70.66494140625005], + [56.561328125000074, 70.59355468750007], + [56.49970703125004, 70.56640625000003], + [56.43457031249997, 70.56298828124997], + [56.142480468749994, 70.65786132812502], + [56.11474609375003, 70.64614257812502], + [56.0871093750001, 70.61835937499995], + [55.94160156250004, 70.64926757812503], + [55.90722656250003, 70.62631835937498], + [55.796875, 70.61557617187503], + [55.70673828125004, 70.64189453125005], + [55.706445312499994, 70.67524414062501], + [55.687304687500074, 70.69218749999999], + [55.236914062500006, 70.666015625], + [55.051660156249994, 70.66674804687497], + [54.86708984375005, 70.67812], + [54.64511718750006, 70.741845703125], + [54.608203125000074, 70.71323242187503], + [54.60117187500006, 70.68007812500002], + [54.51738281250002, 70.69331054687495], + [54.33261718750006, 70.74467773437505], + [54.1994140625001, 70.76489257812497], + [53.7223632812501, 70.81445312500003], + [53.383593750000074, 70.87353515625], + [53.46777343749997, 70.90058593750001], + [53.61357421875002, 70.91464843750003], + [53.615625, 70.95083007812502], + [53.59257812500002, 71.00068359374995], + [53.587792968749994, 71.05229492187499], + [53.670507812500006, 71.08691406250003], + [53.85703125000006, 71.07041015625003], + [53.834277343750074, 71.12670898437497], + [53.92226562500005, 71.13759765624997], + [54.0939453125001, 71.10522460937503], + [54.155664062499994, 71.12548828125], + [53.88613281250005, 71.19628906250003], + [53.59082031250003, 71.29667968750005], + [53.622167968750006, 71.33276367187503], + [53.51523437500006, 71.34252929687497], + [53.40996093750002, 71.34013671875002], + [53.31904296875004, 71.39916992187497], + [53.33251953124997, 71.47724609374998], + [53.41162109375003, 71.530126953125], + [53.36386718750006, 71.54165039062505], + [52.90898437500002, 71.49501953125005], + [52.67871093749997, 71.50566406249999], + [52.418847656249994, 71.53686523437503], + [52.17998046875002, 71.49023437500006], + [51.93789062500005, 71.47470703124998], + [51.812597656250006, 71.49130859375], + [51.69160156250004, 71.52514648437506], + [51.59042968750006, 71.571142578125], + [51.511328125, 71.64809570312497], + [51.43867187500004, 71.77680664062498], + [51.42861328125005, 71.82553710937506], + [51.4435546875001, 71.934375], + [51.48222656250002, 71.97978515625005], + [51.58251953124997, 72.07119140625], + [51.653125, 72.09936523437497], + [51.805468750000074, 72.14213867187499], + [51.88544921875004, 72.15322265625002], + [52.068652343750074, 72.13115234375005], + [52.252050781250006, 72.12973632812503], + [52.33232421875002, 72.153955078125], + [52.40673828125003, 72.19672851562501], + [52.46191406249997, 72.25234374999997], + [52.58613281250004, 72.28403320312503], + [52.62207031250003, 72.30097656250001], + [52.66191406250002, 72.33686523437495], + [52.7057617187501, 72.39096679687506], + [52.71386718749997, 72.43696289062501], + [52.74873046875004, 72.48295898437505], + [52.863671875, 72.54985351562499], + [52.82324218749997, 72.59125976562501], + [52.83906250000004, 72.61928710937502], + [52.91660156250006, 72.66889648437501], + [52.68310546875003, 72.68232421874998], + [52.60498046874997, 72.70405273437498], + [52.52851562500004, 72.73735351562502], + [52.55058593750002, 72.76855468749997], + [52.5792968750001, 72.791357421875], + [52.8122070312501, 72.87524414062503], + [52.91318359375006, 72.89995117187502], + [53.02421875000002, 72.91357421875003], + [53.13496093750004, 72.91323242187505], + [53.25351562500006, 72.90375976562498], + [53.3698242187501, 72.91674804687506], + [53.2472656250001, 72.97314453125], + [53.237109375000074, 73.01118164062501], + [53.18896484375003, 73.10400390625], + [53.1979492187501, 73.14755859375], + [53.2511718750001, 73.182958984375], + [53.3576171875001, 73.22456054687495], + [53.51220703124997, 73.23837890625003], + [53.63369140625005, 73.26025390625006], + [53.753222656250074, 73.29326171875002], + [53.865625, 73.29897460937502], + [54.09101562500004, 73.27646484374998], + [54.2023437500001, 73.28134765624998], + [54.32763671875003, 73.29946289062505], + [54.67607421875002, 73.37001953125002], + [54.80390625000004, 73.38764648437498], + [54.940625, 73.38325195312495], + [55.121386718750074, 73.3568359375], + [55.31982421875003, 73.30830078124998] + ] + ], + [ + [ + [70.67392578125006, 73.09501953125005], + [70.38037109375003, 73.048095703125], + [70.29833984375003, 73.04448242187505], + [70.11865234374997, 73.05629882812497], + [70.04072265625004, 73.03715820312507], + [69.92011718750004, 73.08452148437505], + [69.9303710937501, 73.126611328125], + [69.98564453125007, 73.16923828125007], + [70.01875, 73.22431640625001], + [69.99589843750002, 73.359375], + [70.1496093750001, 73.44472656249997], + [70.35, 73.47763671875], + [70.94023437500002, 73.51440429687503], + [71.02324218750007, 73.50419921875002], + [71.14121093750006, 73.47797851562498], + [71.2316406250001, 73.44775390625006], + [71.351171875, 73.37221679687502], + [71.444921875, 73.34208984375002], + [71.5895507812501, 73.28315429687501], + [71.63046875000006, 73.22480468750001], + [71.6261718750001, 73.17397460937497], + [71.35566406250004, 73.162451171875], + [70.88671874999997, 73.11962890625], + [70.67392578125006, 73.09501953125005] + ] + ], + [ + [ + [76.75605468750004, 73.44580078125], + [76.659375, 73.43950195312505], + [76.23447265625012, 73.476220703125], + [76.08310546875006, 73.52348632812502], + [76.13955078125005, 73.554296875], + [76.25068359375004, 73.5552734375], + [76.75605468750004, 73.44580078125] + ] + ], + [ + [ + [75.50371093750002, 73.456640625], + [75.34433593750006, 73.432275390625], + [75.375, 73.47739257812506], + [75.56972656250005, 73.540625], + [75.93017578125003, 73.57363281250002], + [76.039453125, 73.55991210937498], + [76.05156250000007, 73.54926757812495], + [75.9009765625, 73.48149414062499], + [75.82714843749997, 73.45913085937497], + [75.50371093750002, 73.456640625] + ] + ], + [ + [ + [142.18486328125007, 73.89589843750005], + [142.43505859374997, 73.85156249999997], + [142.63916015624997, 73.80307617187506], + [143.34375, 73.56875], + [143.41074218750012, 73.52084960937503], + [143.46396484375006, 73.45888671875002], + [143.49130859375012, 73.24643554687498], + [143.45146484375007, 73.231298828125], + [143.19326171875005, 73.22075195312499], + [142.84160156250002, 73.24482421875001], + [142.58691406249997, 73.25332031249997], + [142.34218750000005, 73.25288085937495], + [142.12636718750005, 73.28168945312498], + [141.59667968750003, 73.31083984375005], + [141.18271484375006, 73.38920898437502], + [140.75400390625006, 73.44604492187497], + [140.66279296875004, 73.45200195312503], + [140.39248046875, 73.43535156250002], + [140.02695312500006, 73.36142578125006], + [139.92509765625002, 73.35522460937503], + [139.785546875, 73.35522460937503], + [139.68554687499997, 73.42573242187501], + [139.92011718750004, 73.44858398437503], + [140.15517578125, 73.45751953125], + [140.38066406250002, 73.48300781250003], + [140.59355468750002, 73.56455078125003], + [140.6974609375001, 73.62915039062497], + [140.88378906250003, 73.77753906250001], + [140.9835937500001, 73.83154296875], + [141.08476562500002, 73.86586914062497], + [141.18994140624997, 73.87646484375], + [141.3119140625, 73.871875], + [141.68193359375002, 73.90419921874997], + [141.9318359375001, 73.91494140625002], + [142.18486328125007, 73.89589843750005] + ] + ], + [ + [ + [124.54296875000003, 73.85009765625003], + [124.48173828125007, 73.84790039062503], + [124.36640625000004, 73.87460937499998], + [124.33574218750002, 73.91030273437497], + [124.33652343750006, 73.928369140625], + [124.42968749999997, 73.94301757812497], + [124.54765625000002, 73.93383789062506], + [124.63691406250004, 73.90039062499997], + [124.65292968750006, 73.88803710937503], + [124.54296875000003, 73.85009765625003] + ] + ], + [ + [ + [83.5490234375001, 74.07177734375], + [83.4958007812501, 74.04843750000003], + [83.45, 74.05166015625], + [83.41064453124997, 74.03955078125], + [83.15898437500002, 74.07534179687502], + [82.8177734375, 74.09160156250005], + [82.90292968750012, 74.12890625], + [83.14980468750005, 74.151611328125], + [83.51347656250002, 74.12236328124999], + [83.6183593750001, 74.08945312500003], + [83.5490234375001, 74.07177734375] + ] + ], + [ + [ + [82.70996093750003, 74.09086914062507], + [82.61279296874997, 74.05644531250007], + [82.478125, 74.07578125], + [82.3815429687501, 74.09921874999998], + [82.32939453125002, 74.131103515625], + [82.38242187500012, 74.14926757812498], + [82.52558593750004, 74.16142578125005], + [82.61103515625004, 74.14853515625], + [82.68896484375003, 74.11123046875005], + [82.70996093750003, 74.09086914062507] + ] + ], + [ + [ + [136.1974609375001, 73.91362304687502], + [136.12167968750012, 73.88500976562506], + [136.0514648437501, 73.92910156249997], + [135.71455078125004, 74.05952148437498], + [135.63339843750012, 74.12143554687498], + [135.4486328125, 74.17968750000003], + [135.40244140625012, 74.20170898437499], + [135.38701171875007, 74.25336914062495], + [135.62832031250005, 74.21992187499998], + [136.03681640625004, 74.09033203125006], + [136.25917968750005, 73.98496093749998], + [136.1974609375001, 73.91362304687502] + ] + ], + [ + [ + [141.01025390625003, 73.99946289062501], + [140.50722656250005, 73.91865234374998], + [140.40947265625002, 73.92167968750005], + [140.18320312500012, 74.00458984374998], + [140.10156249999997, 74.18427734375001], + [140.1935546875001, 74.23671875000002], + [140.30029296874997, 74.25722656250002], + [140.40742187500004, 74.26645507812503], + [140.84921875000006, 74.27377929687503], + [140.94433593750003, 74.26464843750003], + [141.03857421875003, 74.24272460937502], + [141.0794921875, 74.20932617187503], + [141.09746093750002, 74.16782226562503], + [141.046875, 74.05039062499998], + [141.01025390625003, 73.99946289062501] + ] + ], + [ + [ + [84.75898437500004, 74.45942382812501], + [84.71044921875003, 74.39980468750002], + [84.42890625000004, 74.43032226562502], + [84.38945312500007, 74.45444335937498], + [84.54033203125007, 74.49042968750001], + [84.6798828125001, 74.51235351562505], + [84.87285156250007, 74.51552734375], + [84.75898437500004, 74.45942382812501] + ] + ], + [ + [ + [113.38720703124997, 74.40043945312499], + [113.353125, 74.35297851562498], + [113.29921875, 74.31713867187497], + [113.25888671875012, 74.27270507812497], + [113.19023437500007, 74.23930664062502], + [112.97763671875012, 74.19682617187507], + [112.81132812500007, 74.10292968750002], + [112.78242187500004, 74.09506835937503], + [112.19580078124997, 74.14624023437497], + [112.10507812500006, 74.16323242187497], + [111.91210937500003, 74.21923828125003], + [111.64296875, 74.27294921875003], + [111.50341796874997, 74.35307617187502], + [111.57011718750007, 74.36831054687502], + [111.6375, 74.37431640624999], + [111.87978515625, 74.36381835937499], + [111.94921875000003, 74.38876953125], + [111.98281250000005, 74.456298828125], + [111.98935546875012, 74.49624023437497], + [112.00761718750002, 74.52675781249997], + [112.08447265624997, 74.54897460937505], + [112.95175781250006, 74.47958984375003], + [113.28623046875012, 74.44101562499998], + [113.38720703124997, 74.40043945312499] + ] + ], + [ + [ + [86.653125, 74.981298828125], + [86.73710937500007, 74.96298828125], + [87.00058593750012, 74.99194335937506], + [87.05214843750005, 74.982568359375], + [87.12431640625007, 74.93989257812501], + [87.01171874999997, 74.86191406250003], + [86.92714843750005, 74.83076171874998], + [86.69199218750012, 74.848291015625], + [86.39052734375, 74.85087890624999], + [86.25859375000002, 74.89350585937498], + [86.33066406250012, 74.93896484375], + [86.50449218750012, 74.965966796875], + [86.60546874999997, 74.99282226562497], + [86.653125, 74.981298828125] + ] + ], + [ + [ + [82.17236328125003, 75.41938476562501], + [82.20878906250007, 75.38696289062497], + [82.22158203125, 75.35053710937501], + [82.17929687500012, 75.33896484375006], + [82.05009765625007, 75.34096679687502], + [81.97851562499997, 75.24711914062499], + [81.90507812500002, 75.26279296874998], + [81.8605468750001, 75.31650390625], + [81.69765625000005, 75.28051757812506], + [81.65478515625003, 75.28891601562498], + [81.5792968750001, 75.33095703125002], + [81.53212890625, 75.33955078124998], + [81.50058593750012, 75.367919921875], + [81.71210937500004, 75.45141601562506], + [81.8421875, 75.40703125000007], + [81.92656250000002, 75.40996093750005], + [81.90976562500006, 75.46000976562502], + [81.9127929687501, 75.49770507812497], + [82.021875, 75.51347656249999], + [82.165625, 75.51562], + [82.17236328125003, 75.41938476562501] + ] + ], + [ + [ + [146.79521484375007, 75.37075195312505], + [147.06035156250007, 75.36430664062507], + [147.44355468750004, 75.43798828124997], + [147.49697265625, 75.44052734375003], + [148.43242187500002, 75.41352539062495], + [148.50888671875012, 75.38745117187497], + [148.51884765625002, 75.33647460937499], + [148.48916015625, 75.309375], + [148.475, 75.27241210937498], + [148.59013671875007, 75.23637695312502], + [148.89218750000006, 75.228125], + [149.08320312500004, 75.262060546875], + [149.64531250000002, 75.24458007812501], + [150.10390625, 75.21923828125], + [150.28066406250005, 75.16401367187501], + [150.41718750000004, 75.13432617187502], + [150.53056640625007, 75.099853515625], + [150.61289062500012, 75.12016601562507], + [150.69033203125, 75.15532226562502], + [150.75693359375006, 75.16240234375005], + [150.82236328125006, 75.15654296875002], + [150.64628906250002, 74.944580078125], + [150.58027343750004, 74.9189453125], + [150.33125, 74.86679687500003], + [149.83808593750004, 74.79531249999997], + [149.596875, 74.77260742187505], + [149.0501953125, 74.7724609375], + [148.296875, 74.80043945312502], + [148.09238281250006, 74.82568359375003], + [147.971875, 74.85732421875], + [147.7409179687501, 74.931982421875], + [147.62685546875, 74.95893554687498], + [147.2570312500001, 74.98427734375], + [147.14404296874997, 74.99843750000005], + [146.92490234375012, 75.0625], + [146.7033203125001, 75.11420898437501], + [146.14853515625012, 75.19829101562499], + [146.18613281250006, 75.295556640625], + [146.25761718750002, 75.39375], + [146.34296875000004, 75.48090820312501], + [146.43847656250003, 75.55820312500003], + [146.5375, 75.58178710937506], + [146.75097656250003, 75.51044921874998], + [146.7482421875001, 75.42866210937504], + [146.79521484375007, 75.37075195312505] + ] + ], + [ + [ + [135.9486328125, 75.40957031250005], + [135.74589843750002, 75.38198242187502], + [135.45195312500007, 75.38955078124997], + [135.473046875, 75.46323242187506], + [135.52343749999997, 75.49584960937503], + [135.59267578125005, 75.57646484375002], + [135.56123046875004, 75.636474609375], + [135.57841796875002, 75.70996093750006], + [135.61386718750012, 75.76630859374998], + [135.6986328125, 75.84526367187499], + [135.78828125000004, 75.79848632812497], + [135.84921875000012, 75.72924804687497], + [135.90478515624997, 75.69438476562499], + [136.12734375, 75.6255859375], + [136.16894531249997, 75.60556640625], + [135.98339843749997, 75.52192382812501], + [135.96513671875002, 75.48613281250002], + [136.02050781249997, 75.43837890624997], + [135.9486328125, 75.40957031250005] + ] + ], + [ + [ + [152.88593750000004, 76.121728515625], + [152.78632812500004, 76.08579101562506], + [152.55859375000003, 76.14360351562502], + [152.64277343750004, 76.17480468749997], + [152.79941406250006, 76.19482421874997], + [152.83505859375006, 76.18515625000003], + [152.86376953125003, 76.16342773437498], + [152.88593750000004, 76.121728515625] + ] + ], + [ + [ + [140.04873046875, 75.82895507812503], + [140.15214843750002, 75.80981445312506], + [140.27441406249997, 75.82241210937505], + [140.38906250000005, 75.79584960937495], + [140.49628906250004, 75.68979492187503], + [140.54667968750002, 75.66318359375003], + [140.60214843750012, 75.64394531250002], + [140.65673828125003, 75.63413085937506], + [140.81591796874997, 75.63071289062498], + [140.88925781250006, 75.65200195312497], + [140.94414062500007, 75.70048828124999], + [140.94042968750003, 75.74951171875003], + [140.92656250000002, 75.79892578125006], + [140.92578124999997, 75.86684570312502], + [140.95029296875006, 75.92734375], + [140.98535156250003, 75.96450195312502], + [141.03261718750005, 75.98896484374995], + [141.29931640625003, 76.06376953125002], + [141.48544921875012, 76.13715820312495], + [141.74228515625012, 76.10805664062497], + [142.00146484374997, 76.04355468749998], + [142.46035156250005, 75.90361328125007], + [142.66953125000012, 75.86342773437497], + [142.92675781250003, 75.82690429687497], + [143.18515625000006, 75.81362304687502], + [143.31113281250006, 75.82231445312502], + [143.5599609375, 75.86040039062505], + [143.68583984375002, 75.86367187500002], + [145.25527343750005, 75.58559570312502], + [145.30976562500004, 75.56406249999998], + [145.35996093750006, 75.53046874999998], + [145.02343749999997, 75.48974609375003], + [144.803125, 75.41606445312505], + [144.7267578125001, 75.36557617187506], + [144.81425781250007, 75.32451171875005], + [144.88349609375004, 75.2689453125], + [144.40781250000006, 75.10229492187497], + [144.21601562500004, 75.05917968749998], + [144.01972656250004, 75.04467773437506], + [143.62587890625, 75.08398437499997], + [143.39609375000006, 75.082861328125], + [143.1703125, 75.11689453125001], + [142.92207031250004, 75.217431640625], + [142.82011718750007, 75.26782226562503], + [142.72949218749997, 75.33764648437506], + [142.699609375, 75.44887695312497], + [142.73447265625012, 75.54458007812502], + [142.86757812500005, 75.57177734375006], + [142.98603515625004, 75.63325195312495], + [143.00244140624997, 75.65986328124995], + [142.941796875, 75.71328125000002], + [142.55156250000007, 75.72089843749995], + [142.30791015625007, 75.69169921875005], + [142.08623046875002, 75.66064453125003], + [142.1510742187501, 75.45756835937505], + [142.19882812500006, 75.39267578124998], + [142.26474609375006, 75.34614257812501], + [142.61679687500012, 75.13325195312498], + [142.69697265625004, 75.10307617187505], + [142.92968749999997, 75.06240234375002], + [143.12792968749997, 74.9703125], + [142.77822265625005, 74.86777343749998], + [142.62607421875006, 74.83740234375], + [142.47275390625006, 74.82041015625], + [142.37841796874997, 74.82856445312498], + [142.28740234375007, 74.84990234375007], + [142.18417968750006, 74.89960937499998], + [142.1, 74.95097656250005], + [141.98730468750003, 74.99125976562499], + [141.74843750000005, 74.982568359375], + [141.52998046875004, 74.94716796875], + [141.31044921875, 74.92319335937498], + [140.66074218750006, 74.8818359375], + [140.46386718749997, 74.85605468749998], + [140.26787109375002, 74.846923828125], + [140.01103515625002, 74.89477539062497], + [139.75820312500005, 74.96376953125], + [139.68125, 74.96406249999995], + [139.605859375, 74.94560546875002], + [139.54804687500004, 74.904052734375], + [139.51230468750012, 74.83779296875], + [139.430078125, 74.74921874999998], + [139.3255859375, 74.68681640625007], + [139.21533203125003, 74.65966796875003], + [139.09912109374997, 74.65654296875002], + [138.98173828125002, 74.67368164062506], + [138.865625, 74.700927734375], + [138.09228515625003, 74.79746093750003], + [138.00136718750005, 74.82700195312503], + [137.91503906249997, 74.87084960937497], + [137.68300781250005, 75.00854492187497], + [137.56806640625004, 75.04057617187502], + [137.4469726562501, 75.05419921875003], + [137.21796875000004, 75.12373046874998], + [137.00625, 75.23500976562502], + [136.9623046875, 75.270361328125], + [136.94765625000005, 75.32553710937498], + [136.98242187500003, 75.36533203125], + [137.16601562499997, 75.34658203125], + [137.28974609375004, 75.34863281249997], + [137.21523437500005, 75.55439453124998], + [137.26884765625002, 75.7494140625], + [137.35849609375006, 75.781640625], + [137.70654296875003, 75.75957031250002], + [137.59355468750002, 75.82338867187497], + [137.50117187500004, 75.90966796874997], + [137.56054687499997, 75.95522460937502], + [137.625390625, 75.98818359374997], + [137.77441406250003, 76.01567382812507], + [137.97705078124997, 76.02778320312495], + [138.03867187500012, 76.04726562500002], + [138.09599609375007, 76.08051757812495], + [138.20761718750006, 76.11494140624995], + [138.43066406250003, 76.13007812500001], + [138.81396484374997, 76.19970703125], + [138.91953125000006, 76.19672851562501], + [139.01757812499997, 76.16010742187501], + [139.10917968750007, 76.10834960937504], + [139.211328125, 76.080712890625], + [139.52851562500004, 76.01342773437497], + [139.74335937500004, 75.95307617187501], + [140.04873046875, 75.82895507812503] + ] + ], + [ + [ + [96.5324218750001, 76.278125], + [96.6139648437501, 76.263818359375], + [96.58964843750002, 76.22124023437502], + [96.48671875, 76.233740234375], + [96.3507812500001, 76.21215820312503], + [96.35341796875, 76.177490234375], + [96.30058593750002, 76.121728515625], + [96.1087890625, 76.15546874999995], + [95.84453125000002, 76.16025390625003], + [95.67861328125005, 76.19365234374999], + [95.31113281250006, 76.21474609375002], + [95.32207031250007, 76.26162109375], + [95.37988281250003, 76.2890625], + [95.59443359375004, 76.24960937500003], + [95.78623046875012, 76.29389648437498], + [96.15097656250006, 76.271875], + [96.27070312500004, 76.30537109375001], + [96.5324218750001, 76.278125] + ] + ], + [ + [ + [96.85390625, 76.19916992187498], + [96.79785156249997, 76.18842773437501], + [96.75449218750012, 76.19575195312498], + [96.73935546875006, 76.20693359375005], + [96.74023437499997, 76.25786132812502], + [96.83291015625, 76.32416992187504], + [96.83525390625002, 76.34482421874998], + [96.87792968750003, 76.35522460937497], + [96.99023437499997, 76.34340820312505], + [97.04531250000005, 76.31538085937501], + [97.05302734375002, 76.30258789062498], + [96.97421875000012, 76.23652343750004], + [96.85390625, 76.19916992187498] + ] + ], + [ + [ + [112.47802734375003, 76.62089843749999], + [112.63251953125004, 76.55297851562503], + [112.66083984375004, 76.50957031250005], + [112.61416015625005, 76.499267578125], + [112.58652343750012, 76.48295898437505], + [112.57480468750012, 76.45239257812506], + [112.531640625, 76.450048828125], + [112.39482421875002, 76.48378906250005], + [112.29687, 76.53798828125], + [112.15380859374997, 76.54931640624997], + [112.00273437500002, 76.60297851562498], + [111.96894531250004, 76.62617187500001], + [112.01113281250005, 76.63286132812505], + [112.28144531250004, 76.61835937500001], + [112.39414062500006, 76.64379882812506], + [112.47802734375003, 76.62089843749999] + ] + ], + [ + [ + [97.58837890624997, 76.59936523437497], + [97.53525390625012, 76.58442382812504], + [97.43037109375004, 76.59072265625], + [97.34169921875, 76.62885742187501], + [97.31035156250002, 76.68959960937497], + [97.38164062500007, 76.706689453125], + [97.58837890624997, 76.59936523437497] + ] + ], + [ + [ + [149.15019531250002, 76.65991210937506], + [148.39863281250004, 76.64824218750007], + [148.44814453125, 76.67695312499995], + [148.71962890625, 76.74658203125003], + [149.4064453125001, 76.78208007812498], + [149.26835937500002, 76.74721679687497], + [149.20478515625004, 76.67700195312497], + [149.15019531250002, 76.65991210937506] + ] + ], + [ + [ + [67.7653320312501, 76.23759765624999], + [67.36523437500003, 76.16127929687497], + [67.12695312499997, 76.108154296875], + [66.89316406250006, 76.07226562500006], + [66.65742187500004, 76.04702148437497], + [66.28242187500004, 75.98369140625005], + [65.61914062500003, 75.904638671875], + [65.20156250000005, 75.83945312500006], + [64.74453125, 75.788232421875], + [64.26259765625005, 75.71967773437498], + [63.77929687500003, 75.672607421875], + [63.65947265625002, 75.66875], + [63.316699218750074, 75.60307617187505], + [63.045996093750006, 75.57573242187505], + [62.06611328125004, 75.42773437500003], + [61.61621093750003, 75.31962890625002], + [61.4865234375001, 75.31083984375002], + [61.35595703124997, 75.31484375000002], + [61.248828125000074, 75.28100585937497], + [61.147265625000074, 75.22255859374997], + [60.935644531250006, 75.16367187500003], + [60.829199218750006, 75.11083984375003], + [60.71923828124997, 75.06860351562503], + [60.65537109375006, 75.05502929687503], + [60.53378906250006, 75.05927734375001], + [60.47558593750003, 75.05473632812505], + [60.27685546875003, 75.00756835937503], + [60.24111328125005, 74.97075195312499], + [60.454882812500074, 74.94614257812503], + [60.501367187499994, 74.90463867187503], + [60.43916015625004, 74.875341796875], + [60.30078125000003, 74.83701171875], + [60.22246093750002, 74.79658203124995], + [60.08007812499997, 74.755859375], + [59.98232421875005, 74.74462890625003], + [59.74726562500004, 74.74589843750002], + [59.734667968750074, 74.69545898437505], + [59.77148437500003, 74.66445312500002], + [59.75273437500002, 74.63701171875005], + [59.67402343750004, 74.61015624999999], + [59.595996093750074, 74.61372070312501], + [59.24013671875005, 74.69296874999998], + [59.18203125, 74.66577148437503], + [59.157031250000074, 74.61083984375003], + [59.14609375000006, 74.55190429687502], + [59.100976562499994, 74.50751953124995], + [59.040429687499994, 74.48554687500001], + [58.92822265624997, 74.46269531250005], + [58.53466796875003, 74.49892578124997], + [58.50214843750004, 74.464208984375], + [58.56201171874997, 74.42182617187498], + [58.6457031250001, 74.32802734374997], + [58.66503906250003, 74.28925781249998], + [58.6178710937501, 74.22739257812498], + [58.44140625000003, 74.12885742187498], + [57.76738281250002, 74.013818359375], + [57.77841796875006, 73.97392578125005], + [57.85341796875005, 73.8978515625], + [57.87226562500004, 73.85043945312503], + [57.8449218750001, 73.80507812500002], + [57.755957031250006, 73.769189453125], + [57.6574218750001, 73.76816406250003], + [57.60371093750004, 73.77548828125003], + [57.448535156250074, 73.82563476562504], + [57.313085937500006, 73.838037109375], + [57.290917968749994, 73.81455078125], + [57.464257812499994, 73.74604492187498], + [57.54257812500006, 73.65820312500003], + [57.459765625000074, 73.61030273437495], + [57.134375, 73.50439453125006], + [56.96386718750003, 73.36655273437503], + [56.634179687499994, 73.30429687500003], + [56.43037109375004, 73.29721679687503], + [56.228320312500074, 73.314111328125], + [56.03457031250005, 73.34589843749998], + [55.54921875, 73.3568359375], + [55.280175781249994, 73.39204101562498], + [55.00683593750003, 73.45385742187506], + [54.76865234375006, 73.44941406250004], + [54.56582031250005, 73.41850585937505], + [54.29990234375006, 73.35097656249997], + [54.13154296875004, 73.48100585937499], + [54.20458984374997, 73.54204101562499], + [53.838671875000074, 73.69711914062506], + [53.7628906250001, 73.76616210937499], + [53.851367187500074, 73.80053710937497], + [53.963476562500006, 73.82231445312507], + [54.1740234375001, 73.88574218750003], + [54.38632812500006, 73.93564453124998], + [54.6056640625001, 73.95131835937497], + [54.64267578125006, 73.95957031250006], + [54.73339843749997, 74.03398437500002], + [54.83125, 74.09575195312499], + [54.92031250000005, 74.12910156249995], + [55.022851562499994, 74.18662109375003], + [55.34091796875006, 74.41962890624998], + [55.41640625000005, 74.43613281249998], + [56.0783203125001, 74.48129882812503], + [56.13710937500005, 74.49609375000003], + [55.94746093750004, 74.54218749999998], + [55.751757812500074, 74.54121093749998], + [55.661523437499994, 74.55610351562498], + [55.61035156250003, 74.59052734374998], + [55.5822265625001, 74.627685546875], + [55.65966796874997, 74.65629882812507], + [55.913671875, 74.79609375000004], + [56.217871093750006, 74.89750976562499], + [56.4987304687501, 74.95708007812505], + [56.42851562500002, 74.97294921874999], + [56.3400390625001, 75.01347656249999], + [55.99804687499997, 75.00336914062498], + [55.86318359375005, 75.058740234375], + [55.821191406249994, 75.09062], + [55.81005859374997, 75.12490234374997], + [55.92070312500002, 75.16835937500002], + [56.035546875, 75.19423828124997], + [56.162207031250006, 75.18657226562499], + [56.288671875, 75.164306640625], + [56.38906250000005, 75.13818359375], + [56.485253906249994, 75.09609375000005], + [56.57031250000003, 75.09775390625003], + [56.87626953125002, 75.24438476562497], + [56.82929687500004, 75.27773437500002], + [56.809472656249994, 75.32841796875005], + [56.8444335937501, 75.351416015625], + [56.98945312500004, 75.37509765625003], + [57.0875, 75.38383789062505], + [57.30175781250003, 75.37324218750001], + [57.606835937499994, 75.34125976562498], + [57.63154296875004, 75.35644531249997], + [57.70820312500004, 75.45449218749997], + [57.7833984375001, 75.50668945312503], + [58.09365234375005, 75.59252929687503], + [58.07255859375002, 75.61899414062498], + [58.05830078125004, 75.6630859375], + [58.41835937500005, 75.71977539062502], + [58.652734375, 75.77680664062498], + [58.88125, 75.85478515625007], + [58.994726562500006, 75.87172851562497], + [59.11044921875006, 75.87373046875001], + [59.34658203125005, 75.90703125000005], + [59.7819335937501, 75.94584960937505], + [60.03613281250003, 75.98383789062498], + [60.11816406250003, 76.06655273437505], + [60.27929687499997, 76.09624023437505], + [60.60615234375004, 76.108642578125], + [60.730566406250006, 76.10405273437505], + [60.801171875, 76.06879882812495], + [60.94218750000002, 76.07128906250003], + [60.9977539062501, 76.08925781249997], + [61.05390625000004, 76.11987304687497], + [61.036914062500074, 76.16904296875006], + [61.034375, 76.23295898437502], + [61.1569335937501, 76.27353515625003], + [61.20166015624997, 76.28203125000007], + [61.569433593750006, 76.29848632812505], + [61.78710937500003, 76.29101562500003], + [62.23730468750003, 76.2416015625], + [62.47109375000005, 76.23046875000003], + [62.782031250000074, 76.24521484375003], + [62.97148437500002, 76.23666992187498], + [63.52617187500002, 76.30952148437498], + [64.4634765625, 76.37817382812503], + [64.7076171875, 76.426025390625], + [64.95, 76.48432617187498], + [65.0728515625, 76.49672851562502], + [65.19716796875005, 76.499658203125], + [65.30976562500004, 76.51791992187498], + [65.52841796875, 76.56782226562501], + [65.6369140625001, 76.57866210937502], + [65.75517578125002, 76.57929687499995], + [65.862890625, 76.61333007812505], + [65.95888671875005, 76.68793945312498], + [66.06298828125003, 76.74609375000003], + [66.34521484374997, 76.821044921875], + [66.8288085937501, 76.923828125], + [67.26367187500003, 76.96376953125005], + [67.53496093750007, 77.00776367187504], + [67.65185546874997, 77.011572265625], + [68.0172851562501, 76.990625], + [68.48574218750005, 76.93369140625003], + [68.69912109375, 76.87065429687499], + [68.87333984375007, 76.78959960937499], + [68.91171875000006, 76.76054687500002], + [68.94169921875002, 76.707666015625], + [68.89052734375, 76.65971679687502], + [68.8580078125, 76.61049804687502], + [68.8998046875, 76.57294921875001], + [68.55859374999997, 76.44941406249998], + [68.22236328125004, 76.3134765625], + [68.1654296875, 76.28486328125001], + [67.7653320312501, 76.23759765624999] + ] + ], + [ + [ + [96.28544921875002, 77.02666015625007], + [96.25351562500012, 77.00727539062501], + [96.20986328125, 76.99213867187495], + [96.09140625000012, 77.00253906250003], + [95.85468750000004, 76.974951171875], + [95.76582031250004, 76.990625], + [95.68085937500004, 77.02133789062503], + [95.36406250000007, 77.01152343749999], + [95.27031250000007, 77.01884765624999], + [95.42070312500007, 77.056494140625], + [95.85410156250006, 77.09755859375002], + [96.52841796875006, 77.20551757812501], + [96.56191406250005, 77.154052734375], + [96.56132812500002, 77.12958984374998], + [96.42431640624997, 77.07119140625], + [96.28544921875002, 77.02666015625007] + ] + ], + [ + [ + [89.51425781250006, 77.18881835937498], + [89.29951171875004, 77.18398437499997], + [89.17929687500006, 77.20991210937501], + [89.14169921875012, 77.22680664062497], + [89.20048828125002, 77.27197265625003], + [89.28154296875002, 77.30146484375001], + [89.61621093749997, 77.31103515625], + [89.67958984375, 77.28032226562505], + [89.66582031250002, 77.25449218750003], + [89.51425781250006, 77.18881835937498] + ] + ], + [ + [ + [107.41474609375004, 77.24267578125003], + [107.30224609375003, 77.24150390625005], + [107.26953125000003, 77.28901367187495], + [107.36640625000004, 77.34663085937498], + [107.48642578125006, 77.34711914062498], + [107.59365234375005, 77.33002929687495], + [107.62929687500005, 77.31967773437498], + [107.66455078125003, 77.29980468750003], + [107.67949218750007, 77.26826171874998], + [107.41474609375004, 77.24267578125003] + ] + ], + [ + [ + [104.81425781250002, 77.65209960937503], + [104.96523437500005, 77.59472656249997], + [105.308984375, 77.54921875000002], + [105.71025390625007, 77.52524414062503], + [105.89453125000003, 77.4888671875], + [105.98339843750003, 77.44760742187503], + [106.05957031249997, 77.39052734375002], + [105.73417968750002, 77.35200195312501], + [105.38457031250007, 77.23784179687502], + [104.91191406250002, 77.17470703125002], + [104.3236328125, 77.13266601562498], + [104.20244140625002, 77.101806640625], + [105.32021484375, 77.09233398437505], + [105.6458984375, 77.10068359375003], + [105.71201171875006, 77.00146484375], + [105.82216796875005, 76.99750976562498], + [106.14541015625, 77.04531250000005], + [106.33867187500002, 77.04785156250003], + [106.70507812499997, 77.01376953125], + [106.78369140624997, 77.03178710937505], + [106.9416015625001, 77.03437], + [107.27890625000006, 76.990966796875], + [107.42978515625006, 76.92656250000002], + [107.19023437500002, 76.82202148437503], + [106.94091796875003, 76.73046875000003], + [106.63876953125012, 76.573388671875], + [106.54550781250012, 76.58627929687506], + [106.38466796875005, 76.58945312499998], + [106.41357421874997, 76.51225585937499], + [106.68320312500012, 76.51469726562505], + [106.82539062500004, 76.480078125], + [107.15771484374997, 76.524072265625], + [107.62421875000004, 76.51010742187498], + [107.72216796875003, 76.52231445312498], + [107.90224609375005, 76.56967773437503], + [107.9499023437501, 76.66064453125003], + [108.02792968750006, 76.71845703124998], + [108.18164062500003, 76.73784179687502], + [108.35205078125003, 76.71953125000002], + [108.6383789062501, 76.72011718749997], + [109.36933593750004, 76.74921875000004], + [109.9811523437501, 76.71186523437498], + [110.47148437500007, 76.75839843750003], + [111.11484375000012, 76.72304687500002], + [111.39248046875, 76.686669921875], + [111.60058593749997, 76.62231445312503], + [111.78613281250003, 76.60356445312502], + [111.9386718750001, 76.55341796875001], + [112.09394531250004, 76.48032226562506], + [112.01679687500004, 76.42055664062505], + [111.94267578125002, 76.38046875000003], + [112.14277343750004, 76.42397460937502], + [112.2970703125001, 76.43466796874998], + [112.41328125000004, 76.40830078125003], + [112.61953125, 76.38354492187506], + [112.68417968750012, 76.21884765624998], + [112.742578125, 76.18691406249997], + [112.79843750000012, 76.12963867187503], + [112.721875, 76.07719726562499], + [112.65625, 76.05356445312498], + [112.81894531250012, 76.05859375000003], + [113.04667968750007, 76.11411132812506], + [113.09404296875002, 76.13291015624998], + [113.15039062499997, 76.17451171875001], + [113.06601562500006, 76.21523437500005], + [112.9879882812501, 76.23974609374997], + [113.08603515625006, 76.25810546874999], + [113.2726562500001, 76.25166015625001], + [113.36552734375007, 76.178857421875], + [113.42773437499997, 76.11210937499999], + [113.5638671875, 75.89165039062502], + [113.85722656250007, 75.92128906250002], + [113.87099609375005, 75.85600585937505], + [113.7487304687501, 75.70478515624998], + [113.61992187500002, 75.59267578125005], + [113.56757812500004, 75.56840820312499], + [113.48593750000012, 75.56396484374997], + [113.51718750000006, 75.621875], + [113.46904296875002, 75.65668945312504], + [113.39160156249997, 75.677880859375], + [113.12636718750005, 75.69868164062498], + [112.62919921875002, 75.83540039062501], + [112.49667968750006, 75.84990234375005], + [112.46611328125007, 75.84365234375002], + [112.45302734375, 75.83017578125003], + [112.72958984375012, 75.737646484375], + [112.95566406250006, 75.571923828125], + [113.1615234375, 75.62050781250002], + [113.24296875000007, 75.61142578125003], + [113.35625, 75.53427734375006], + [113.55888671875002, 75.50205078125006], + [113.72617187500012, 75.45063476562498], + [113.61357421875007, 75.29296875], + [112.92490234375012, 75.01503906249997], + [112.19199218750012, 74.85317382812502], + [111.86826171875006, 74.74003906250007], + [111.2990234375001, 74.65844726562497], + [110.8927734375001, 74.54809570312506], + [110.37353515625003, 74.46606445312503], + [110.22587890625002, 74.378662109375], + [109.84033203124997, 74.32197265624998], + [109.8664062500001, 74.29306640625003], + [109.9113281250001, 74.26132812499998], + [109.86386718750006, 74.20888671875005], + [109.8102539062501, 74.16918945312503], + [109.51083984375012, 74.08881835937501], + [109.075, 74.03232421875003], + [108.19951171875002, 73.69409179687497], + [107.76542968750007, 73.625], + [107.27109375000006, 73.62104492187501], + [107.16699218749997, 73.58940429687505], + [106.79423828125002, 73.37666015624995], + [106.67939453125004, 73.3306640625], + [106.1886718750001, 73.3080078125], + [105.67714843750005, 72.95927734375002], + [105.39277343750004, 72.84101562499998], + [105.14394531250005, 72.77705078125001], + [105.402734375, 72.78994140624997], + [105.7082031250001, 72.836669921875], + [106.06669921875002, 72.94985351562505], + [106.1595703125, 73.00200195312502], + [106.20878906250002, 73.06054687500003], + [106.31503906250006, 73.10639648437495], + [106.47792968750005, 73.13940429687503], + [107.10878906250005, 73.17729492187502], + [107.36875, 73.16313476562507], + [107.750390625, 73.17314453125007], + [108.00126953125007, 73.235595703125], + [108.15097656250006, 73.25791015625], + [108.28535156250004, 73.26586914062503], + [108.35146484375, 73.310205078125], + [108.57539062500004, 73.31904296875004], + [109.08994140625006, 73.37841796875006], + [109.16562500000012, 73.39960937500001], + [109.33105468749997, 73.48745117187497], + [109.637109375, 73.45400390625], + [109.85527343750002, 73.47246093750002], + [110.42871093749997, 73.62890625], + [110.77333984375, 73.68916015625004], + [110.86816406249997, 73.73071289062497], + [110.79921875000005, 73.75976562500003], + [110.7223632812501, 73.77993164062505], + [110.38828125000006, 73.72602539062498], + [110.09121093750005, 73.70854492187507], + [109.75273437500002, 73.72255859375], + [109.70673828125004, 73.74375], + [109.66562500000012, 73.80024414062501], + [109.7741210937501, 73.88125], + [109.86914062500003, 73.93061523437501], + [110.08388671875005, 73.99438476562503], + [110.2614257812501, 74.01743164062503], + [110.92011718750004, 73.947900390625], + [111.05625, 73.93935546875002], + [111.13085937500003, 74.05283203125003], + [111.34140625000012, 74.04736328125], + [111.55058593750007, 74.02851562499998], + [111.45996093750003, 74.00483398437504], + [111.22812500000012, 73.96855468750002], + [111.2995117187501, 73.88486328125], + [111.40039062500003, 73.827734375], + [111.80371093749997, 73.745263671875], + [112.14726562500007, 73.70893554687498], + [112.40000000000012, 73.71113281249998], + [112.79541015625003, 73.74609375], + [112.85595703125003, 73.77114257812502], + [112.9396484375001, 73.83564453125004], + [112.83593750000003, 73.96206054687502], + [112.93496093750005, 73.94570312499997], + [113.03281250000006, 73.91386718750007], + [113.18154296875, 73.83740234375003], + [113.32685546875004, 73.70742187500002], + [113.4162109375001, 73.647607421875], + [113.36445312500004, 73.58276367187503], + [113.15693359375004, 73.45957031249998], + [113.27695312500006, 73.39150390624997], + [113.49091796875004, 73.34609375000002], + [113.48759765625007, 73.14511718750003], + [113.47460937500003, 73.04785156250003], + [113.36933593750004, 72.94189453125003], + [113.24736328125007, 72.89721679687497], + [113.12783203125, 72.8306640625], + [113.15820312500003, 72.76948242187498], + [113.18613281250012, 72.73017578124995], + [113.31220703125004, 72.65737304687497], + [113.66455078124997, 72.63452148437503], + [113.71191406249997, 72.65415039062503], + [113.63007812500004, 72.67709960937498], + [113.39140625000002, 72.71103515624998], + [113.29814453125002, 72.73886718750006], + [113.2155273437501, 72.80585937500001], + [113.31152343750003, 72.87832031250005], + [113.41748046875003, 72.93217773437499], + [113.54277343750002, 73.05434570312502], + [113.5814453125, 73.142236328125], + [113.55888671875002, 73.23261718750001], + [113.63916015624997, 73.273583984375], + [113.76523437500006, 73.31796874999998], + [113.82929687500004, 73.32656249999997], + [113.88623046875003, 73.34580078124998], + [113.79511718750004, 73.36743164062503], + [113.711328125, 73.378564453125], + [113.539453125, 73.43364257812502], + [113.51035156250012, 73.50498046874998], + [113.85693359375003, 73.53339843750001], + [114.06054687500003, 73.58466796874995], + [114.81601562500006, 73.60717773437503], + [115.33769531250007, 73.70258789062501], + [116.49550781250005, 73.67607421875002], + [117.30859375000003, 73.59916992187499], + [118.45019531249997, 73.58979492187504], + [118.87089843750007, 73.53789062500002], + [118.91123046875012, 73.51835937500005], + [118.93642578125, 73.48120117187503], + [118.75449218750006, 73.464501953125], + [118.45703124999997, 73.46440429687507], + [118.37656250000006, 73.36723632812499], + [118.43027343750012, 73.24653320312501], + [118.9603515625, 73.11728515625006], + [119.42529296874997, 73.06396484375003], + [119.750390625, 72.97910156250006], + [119.92167968750002, 72.971337890625], + [120.59794921875002, 72.98110351562502], + [120.99716796875012, 72.93671875000004], + [121.35429687500002, 72.97084960937497], + [121.74785156250002, 72.96967773437501], + [121.88603515625007, 72.96088867187498], + [122.02978515624997, 72.89721679687497], + [122.26015625, 72.88056640624995], + [122.5375, 72.877783203125], + [122.6920898437501, 72.89082031250001], + [122.75195312500003, 72.906494140625], + [122.730859375, 72.931298828125], + [122.50195312499997, 72.97065429687501], + [122.52675781250005, 73.01669921874998], + [122.61523437499997, 73.02792968750006], + [122.99931640625002, 72.96464843750005], + [123.1603515625001, 72.95488281250002], + [123.301171875, 73.00180664062498], + [123.40458984375002, 73.08564453125001], + [123.4616210937501, 73.14418945312502], + [123.521875, 73.17290039062502], + [123.5724609375001, 73.17734375000003], + [123.62226562500004, 73.19326171875], + [123.50097656250003, 73.26162109374997], + [123.38388671875006, 73.34731445312502], + [123.35527343750002, 73.40249023437497], + [123.32265625, 73.43081054687497], + [123.305078125, 73.53291015624998], + [123.41621093750004, 73.63686523437502], + [123.49111328125005, 73.666357421875], + [123.79687, 73.62675781250002], + [123.93388671875002, 73.68930664062506], + [124.01904296874997, 73.71230468750002], + [124.3880859375, 73.75483398437498], + [124.54121093750004, 73.75126953125007], + [124.79628906250005, 73.711767578125], + [125.61708984375, 73.52060546874998], + [125.59853515625005, 73.447412109375], + [125.79443359374997, 73.46845703125001], + [125.88789062500004, 73.49809570312502], + [126.10742187499997, 73.51748046875005], + [126.25449218750012, 73.548193359375], + [126.29599609375012, 73.53666992187505], + [126.34492187500004, 73.50629882812498], + [126.30888671875007, 73.46367187500002], + [126.25742187500006, 73.41977539062503], + [126.29248046875003, 73.39418945312497], + [126.33544921874997, 73.38876953125003], + [126.55253906250007, 73.33491210937498], + [126.83847656250006, 73.43417968750003], + [126.95517578125012, 73.52822265625002], + [127.03134765625006, 73.54746093750003], + [127.74033203125012, 73.48154296875], + [127.95507812499997, 73.44555664062506], + [127.996875, 73.42563476562498], + [128.02568359375007, 73.390771484375], + [128.14169921875006, 73.35239257812498], + [128.28144531250004, 73.33056640624997], + [128.26416015624997, 73.30073242187504], + [128.25781250000003, 73.26748046875], + [128.58701171875012, 73.26240234374995], + [128.73046875000003, 73.2333984375], + [128.88867187500003, 73.19023437499999], + [128.87167968750012, 73.13935546875001], + [128.91337890625002, 73.11059570312503], + [129.05917968750012, 73.10751953125], + [129.10058593750003, 73.11235351562502], + [129.05371093749997, 73.04541015624997], + [128.85351562499997, 72.97260742187498], + [128.73525390625005, 72.94326171875002], + [128.5990234375, 72.895166015625], + [128.6740234375001, 72.885888671875], + [129.01728515625004, 72.8724609375], + [129.22910156250012, 72.775732421875], + [129.250390625, 72.70517578125003], + [129.11757812500005, 72.67695312499995], + [128.81533203125, 72.58588867187498], + [128.63339843750006, 72.55014648437498], + [128.50849609375004, 72.54731445312501], + [128.41826171875002, 72.53515625000003], + [128.54941406250012, 72.495849609375], + [129.1166015625, 72.4857421875], + [129.28134765625006, 72.43769531249998], + [129.41171875000006, 72.31547851562505], + [129.41064453124997, 72.16630859375002], + [129.28349609375007, 72.092041015625], + [128.93496093750005, 72.07949218750002], + [128.47519531250006, 72.24555664062501], + [128.19697265625004, 72.30961914062499], + [127.8034179687501, 72.43403320312504], + [127.72607421874997, 72.41318359375003], + [127.84140625000012, 72.308251953125], + [128.0265625000001, 72.25], + [128.3587890625, 72.08833007812504], + [128.91142578125002, 71.75532226562495], + [129.04013671875006, 71.78242187499998], + [129.1166015625, 71.82460937500005], + [129.15419921875005, 71.87866210937503], + [129.12158203124997, 71.95322265625003], + [129.21025390625007, 71.91694335937501], + [129.29179687500002, 71.8501953125], + [129.46083984375, 71.73930664062499], + [129.23417968750007, 71.74482421874995], + [128.94902343750007, 71.70756835937499], + [128.84326171875003, 71.6634765625], + [128.92265625000002, 71.60175781250004], + [129.13427734374997, 71.59287109375], + [129.22451171875005, 71.50883789062502], + [129.3898437500001, 71.40488281249998], + [129.76191406250004, 71.11953125000002], + [130.02597656250006, 71.06538085937501], + [130.28125, 70.94731445312502], + [130.53710937500003, 70.89252929687495], + [130.66845703124997, 70.888330078125], + [130.75712890625002, 70.96235351562498], + [130.83193359375005, 70.935888671875], + [130.89804687500012, 70.80356445312503], + [131.02158203125006, 70.74609374999997], + [131.15742187500004, 70.74218749999997], + [131.26826171875004, 70.76552734375002], + [131.4323242187501, 70.82827148437502], + [131.56201171875003, 70.901025390625], + [131.76904296875003, 71.10141601562506], + [131.90644531250004, 71.20263671874997], + [132.0353515625001, 71.24404296875], + [131.99082031250006, 71.29321289062506], + [132.00371093750002, 71.35019531250003], + [132.09882812500004, 71.483984375], + [132.22763671875012, 71.64277343750004], + [132.32578125000012, 71.726220703125], + [132.56230468750007, 71.89531250000005], + [132.65390625000006, 71.92597656250001], + [132.71582031249997, 71.871484375], + [132.76855468749997, 71.79873046875002], + [132.80361328125, 71.76757812499997], + [132.8392578125, 71.75517578125002], + [133.13085937499997, 71.60668945312497], + [133.426171875, 71.49096679687503], + [133.6888671875, 71.434228515625], + [134.10283203125002, 71.37895507812502], + [134.70273437500012, 71.38681640625003], + [134.8138671875, 71.46059570312505], + [135.02236328125005, 71.51503906250002], + [135.35937, 71.54350585937507], + [135.55917968750006, 71.6103515625], + [135.88476562499997, 71.63056640625004], + [136.09033203125003, 71.61958007812501], + [136.40615234375005, 71.57075195312501], + [137.11582031250012, 71.41567382812505], + [137.31542968750003, 71.35942382812505], + [137.41748046875003, 71.29902343749998], + [137.6505859375001, 71.20815429687505], + [137.79785156249997, 71.163916015625], + [137.9396484375001, 71.1333984375], + [137.99169921874997, 71.14272460937502], + [137.97373046875012, 71.16865234374998], + [137.90195312500006, 71.19404296875001], + [137.84404296875007, 71.22680664062503], + [138.01269531249997, 71.26083984375003], + [138.03251953125002, 71.28583984374998], + [138.090625, 71.30742187500002], + [138.31406250000006, 71.32553710937498], + [138.09716796875003, 71.35859374999995], + [138.02216796875004, 71.36342773437497], + [137.918359375, 71.38408203124999], + [137.92734375000006, 71.42978515624998], + [137.99570312500006, 71.46352539062502], + [138.04833984375003, 71.52597656250003], + [138.11845703125002, 71.56616210937497], + [138.23417968750007, 71.596337890625], + [138.3180664062501, 71.60283203125007], + [138.52519531250002, 71.56274414062497], + [138.67001953125012, 71.63481445312502], + [138.78017578125, 71.62900390624998], + [139.00488281249997, 71.55605468750005], + [139.209375, 71.44477539062501], + [139.32021484375, 71.44472656250002], + [139.63212890625002, 71.48925781250003], + [139.98417968750007, 71.49150390625005], + [139.93876953125007, 71.55766601562502], + [139.69511718750007, 71.70043945312497], + [139.72294921875002, 71.88496093749998], + [139.55234375000012, 71.92670898437498], + [139.35927734375005, 71.95136718750001], + [139.64023437500006, 71.99833984374999], + [139.8470703125, 72.14858398437497], + [140.0140625, 72.16210937499997], + [140.18769531250004, 72.19130859374997], + [140.13437500000012, 72.20961914062497], + [139.61699218750002, 72.22568359375003], + [139.5052734375, 72.20766601562502], + [139.43046875000007, 72.16347656249997], + [139.17636718750006, 72.16347656249997], + [139.14501953124997, 72.26440429687503], + [139.14082031250004, 72.32973632812502], + [139.47363281249997, 72.46650390624998], + [139.60117187500012, 72.49609374999997], + [140.45058593750005, 72.49311523437498], + [140.70507812500003, 72.51894531250002], + [141.07929687500004, 72.5869140625], + [140.98320312500002, 72.630029296875], + [140.97285156250004, 72.71699218750004], + [140.65234375000003, 72.84282226562499], + [140.67597656250004, 72.87163085937502], + [140.70810546875012, 72.89003906250002], + [140.80820312500006, 72.89096679687503], + [141.30976562500004, 72.85771484375002], + [141.51835937500007, 72.78867187499998], + [142.06142578125005, 72.72080078125], + [143.51582031250004, 72.69824218750003], + [143.68095703125002, 72.673193359375], + [144.3039062500001, 72.64301757812498], + [144.56865234375002, 72.60991210937507], + [145.19931640625006, 72.57021484374997], + [145.4857421875, 72.54208984375], + [145.71416015625007, 72.49736328125005], + [146.08330078125007, 72.47138671875001], + [146.25292968749997, 72.442236328125], + [146.234765625, 72.34970703125], + [145.46708984375002, 72.36206054687503], + [145.21289062500003, 72.39267578125003], + [144.89746093749997, 72.39624023437497], + [144.77636718749997, 72.38227539062495], + [144.5875976562501, 72.30551757812506], + [144.36093750000006, 72.26533203125004], + [144.16923828125002, 72.25878906250003], + [144.29492187499997, 72.19262695312497], + [144.47070312499997, 72.17475585937495], + [145.03916015625006, 72.25986328124998], + [146.59414062500005, 72.30244140624995], + [146.83183593750007, 72.29541015625003], + [146.80703125, 72.23657226562503], + [146.59921875000006, 72.12353515625], + [146.40166015625007, 72.035498046875], + [146.11328125000003, 71.94497070312497], + [146.00585937499997, 71.94545898437497], + [146.23027343750007, 72.1375], + [146.13730468750006, 72.14648437499997], + [146.05146484375004, 72.14228515625001], + [145.79941406250006, 72.22187], + [145.75859375000007, 72.22587890624999], + [145.70966796875004, 72.20634765625002], + [145.71015625000004, 72.177587890625], + [145.66406249999997, 72.06699218750003], + [145.75673828125005, 72.02065429687502], + [145.75673828125005, 71.94130859375002], + [145.40722656249997, 71.89013671874997], + [145.2711914062501, 71.89462890625], + [145.12578125000002, 71.92714843749997], + [145.06396484374997, 71.92607421875002], + [145.046875, 71.90102539062497], + [145.07773437500012, 71.85463867187502], + [145.07373046874997, 71.83085937499999], + [145.01787109375007, 71.79370117187506], + [144.9896484375, 71.75336914062501], + [145.0755859375, 71.70737304687506], + [145.18857421875012, 71.69580078125], + [145.80478515625006, 71.74648437500002], + [146.07324218749997, 71.80834960937503], + [146.36796875000007, 71.92207031250001], + [146.8947265625001, 72.19750976562497], + [147.12705078125006, 72.29204101562505], + [147.26181640625006, 72.327880859375], + [147.433984375, 72.34091796874998], + [148.40205078125004, 72.31196289062504], + [148.96484375000003, 72.25234374999997], + [149.50156250000012, 72.16430664062497], + [149.76621093750012, 72.09125976562501], + [149.9630859375001, 71.9921875], + [149.99814453125012, 71.95048828125002], + [150.01689453125002, 71.89565429687505], + [149.88105468750004, 71.84301757812497], + [149.27968750000005, 71.82553710937506], + [149.04873046875005, 71.79575195312503], + [148.96533203125003, 71.76279296874998], + [148.95488281250002, 71.744140625], + [148.92333984374997, 71.71464843750002], + [148.9681640625, 71.69047851562499], + [149.23789062500006, 71.68793945312501], + [149.49804687500003, 71.66401367187501], + [149.8571289062501, 71.60146484374997], + [149.91269531250012, 71.580712890625], + [150.02646484375012, 71.52133789062498], + [150.06083984375002, 71.51083984374998], + [150.59980468750004, 71.5201171875], + [150.63486328125006, 71.49887695312503], + [150.66777343750002, 71.45522460937502], + [150.5250976562501, 71.38583984375], + [150.38476562500003, 71.33881835937501], + [150.09765624999997, 71.22656249999997], + [150.24296875000007, 71.26718749999998], + [150.82167968750005, 71.36289062500003], + [150.96777343749997, 71.38046874999998], + [151.14531250000007, 71.37373046875001], + [151.58242187500005, 71.28696289062503], + [151.75976562500003, 71.21782226562505], + [152.09277343749997, 71.02329101562503], + [151.99980468750007, 71.00249023437507], + [151.76201171875002, 70.98247070312499], + [152.50878906250003, 70.83447265625003], + [152.79833984375003, 70.83564453125001], + [153.46064453125004, 70.87861328124995], + [153.79414062500004, 70.87998046874998], + [154.41396484375, 70.97446289062503], + [155.0294921875001, 71.03422851562505], + [155.59589843750004, 71.03862304687505], + [155.8952148437501, 71.09550781250002], + [156.68457031250003, 71.09375], + [157.44736328125012, 71.07451171874999], + [158.03701171875005, 71.03925781250001], + [158.70214843750003, 70.93500976562498], + [159.35068359375006, 70.79072265625001], + [159.7279296875, 70.64965820312503], + [159.80468750000003, 70.60493164062498], + [159.9118164062501, 70.506103515625], + [159.95859375000012, 70.42363281249999], + [160.00644531250006, 70.30966796875006], + [159.98339843750003, 70.22138671875001], + [159.88964843750003, 70.15878906250003], + [159.83144531250005, 70.0814453125], + [159.83916015625002, 69.98999023437503], + [159.72939453125005, 69.87021484375006], + [159.83251953125003, 69.78496093749999], + [160.11914062499997, 69.72978515625005], + [160.73945312500004, 69.65517578125002], + [160.91074218750012, 69.60634765625002], + [160.9289062500001, 69.45854492187502], + [160.98203125000006, 69.33447265624997], + [161.03554687500005, 69.09819335937507], + [161.1408203125001, 69.03886718750005], + [161.30986328125007, 68.98227539062498], + [161.340625, 68.90517578125], + [161.12900390625006, 68.65385742187505], + [160.99667968750012, 68.60751953125003], + [160.85605468750006, 68.53833007812506], + [161.10449218749997, 68.5625], + [161.2301757812501, 68.65390625000006], + [161.36513671875005, 68.82299804687506], + [161.4953125000001, 68.849853515625], + [161.565625, 68.90517578125], + [161.565625, 69.06396484375003], + [161.48007812500012, 69.20170898437502], + [161.48007812500012, 69.30009765624999], + [161.53691406250002, 69.379541015625], + [161.94511718750007, 69.54511718749998], + [162.16601562499997, 69.61157226562503], + [162.37568359375004, 69.64907226562502], + [162.94462890625002, 69.68276367187497], + [163.20136718750004, 69.71474609375], + [163.49804687499997, 69.69326171874997], + [163.7052734375001, 69.70180664062502], + [163.94599609375004, 69.73515625000007], + [164.1595703125, 69.71928710937505], + [164.51328125000006, 69.60913085937497], + [165.76074218749997, 69.58442382812501], + [165.98046874999997, 69.54599609374998], + [166.82031250000003, 69.49956054687505], + [166.88437500000012, 69.49990234375002], + [167.07314453125005, 69.55444335937503], + [167.628125, 69.74033203125006], + [167.8568359375, 69.72822265624998], + [167.95009765625, 69.69916992187501], + [168.04765625000007, 69.62563476562497], + [168.15000000000012, 69.577392578125], + [168.22998046874997, 69.447021484375], + [168.30302734375002, 69.27148437500003], + [168.42304687500004, 69.239501953125], + [168.5875976562501, 69.22836914062503], + [168.94619140625005, 69.163330078125], + [169.31064453125006, 69.07954101562498], + [169.41464843750012, 68.91962890625001], + [169.60986328124997, 68.78603515624997], + [170.065625, 68.79868164062498], + [170.53759765624997, 68.82539062500001], + [170.99541015625002, 69.04531250000005], + [170.99667968750006, 69.13471679687495], + [170.88378906249997, 69.26362304687501], + [170.71416015625007, 69.38823242187499], + [170.58222656250004, 69.58334960937506], + [170.16093750000007, 69.62656249999998], + [170.20117187500003, 69.68320312500006], + [170.35957031250004, 69.7509765625], + [170.503125, 69.85654296875], + [170.52539062499997, 69.937890625], + [170.48681640625003, 70.107568359375], + [170.86796875000007, 70.09604492187506], + [171.24667968750012, 70.07612304687498], + [171.97050781250007, 70.000341796875], + [172.55957031249997, 69.96835937499998], + [172.86923828125012, 69.91977539062503], + [173.05634765625004, 69.86494140624995], + [173.27744140625006, 69.823828125], + [173.35332031250002, 69.92402343750001], + [173.43867187500004, 69.94682617187502], + [173.73339843750003, 69.89111328125006], + [173.94804687500007, 69.87412109375003], + [174.31943359375006, 69.88164062500007], + [174.785546875, 69.85566406250001], + [175.29560546875015, 69.86005859375001], + [175.75117187500004, 69.90415039062503], + [175.92148437500012, 69.89531250000002], + [176.10751953125018, 69.86030273437498], + [176.41044921875007, 69.76850585937501], + [176.92441406250018, 69.64599609375003], + [177.39453125000003, 69.61162109375005], + [177.93369140625006, 69.49560546875003], + [178.44277343750005, 69.45297851562503], + [178.84833984375004, 69.38720703124997], + [178.9069335937501, 69.36210937500002], + [178.925, 69.32597656250002], + [178.95068359374997, 69.29580078125], + [179.27265624999998, 69.25966796875002], + [179.86826171875, 69.01269531249997], + [180, 68.98344726562505], + [180, 65.06723632812498], + [179.82734375000004, 65.0341796875], + [179.65136718750009, 64.92094726562502], + [179.44824218750009, 64.82202148437503], + [179.15, 64.78159179687503], + [178.6984375000001, 64.63110351562503], + [178.51953125000003, 64.60297851562498], + [178.2853515625001, 64.67226562499997], + [177.7486328125, 64.71704101562503], + [177.58164062500012, 64.77788085937499], + [177.33701171875018, 64.93134765625001], + [177.25185546875005, 64.95361328125], + [177.17919921875003, 65.01411132812498], + [176.88085937499997, 65.08193359375002], + [176.62480468750002, 65.03759765624997], + [176.41308593750009, 65.07124023437498], + [176.34101562500015, 65.04731445312501], + [176.45214843750003, 65.02524414062503], + [176.64550781249997, 65.007177734375], + [176.94003906250012, 65.01601562500002], + [177.03730468750004, 64.99965820312497], + [177.1234375, 64.947021484375], + [177.22285156250004, 64.861669921875], + [177.14824218750007, 64.804833984375], + [177.06875, 64.78666992187502], + [176.83105468749997, 64.84921875000006], + [176.55664062500003, 64.83999023437505], + [176.42949218750002, 64.85517578125001], + [176.06113281250012, 64.96088867187498], + [175.7811523437501, 64.84404296875007], + [175.39648437500009, 64.78369140625003], + [175.09775390625018, 64.77685546874997], + [174.54882812500009, 64.68388671875005], + [174.69863281250005, 64.68144531250007], + [175.0970703125, 64.74663085937502], + [175.33066406250018, 64.74663085937502], + [175.67792968750004, 64.78247070312506], + [175.8585937500001, 64.82529296874998], + [175.94589843750012, 64.86518554687501], + [176.0565429687501, 64.90473632812498], + [176.16923828125013, 64.884765625], + [176.24697265625, 64.84301757812503], + [176.30087890625012, 64.78383789062497], + [176.35097656250005, 64.70512695312502], + [176.28320312500009, 64.66381835937503], + [176.21943359375004, 64.641943359375], + [176.14091796875007, 64.58583984375005], + [176.50761718749996, 64.68242187499999], + [176.73095703124997, 64.624853515625], + [176.84287109375006, 64.63378906250003], + [177.04980468749991, 64.71923828125003], + [177.3875, 64.7740234375], + [177.42744140625015, 64.76337890624998], + [177.46718750000005, 64.73681640624997], + [177.4098632812501, 64.57280273437505], + [177.43291015625002, 64.44448242187502], + [177.6875, 64.30473632812507], + [177.95332031250015, 64.22226562500003], + [178.04472656250013, 64.21958007812503], + [178.13056640625004, 64.23525390625002], + [178.1639648437501, 64.30908203124997], + [178.22949218749991, 64.36440429687497], + [178.31298828125009, 64.31440429687498], + [178.38144531250018, 64.26088867187502], + [178.47714843750012, 64.12788085937501], + [178.47480468749998, 64.089013671875], + [178.45136718750004, 64.011376953125], + [178.53603515625005, 63.97563476562499], + [178.65029296875005, 63.96528320312501], + [178.69248046875012, 63.84233398437502], + [178.73144531250003, 63.667089843750006], + [178.68134765625015, 63.65073242187506], + [178.62597656250009, 63.65073242187506], + [178.44042968750009, 63.605566406250006], + [178.46611328125002, 63.57407226562498], + [178.65371093750005, 63.55664062499997], + [178.7064453125001, 63.52153320312502], + [178.6688476562501, 63.43994140625], + [178.67871093749997, 63.40229492187498], + [178.74404296874994, 63.39477539062503], + [178.78671875000012, 63.442431640625074], + [178.77539062499997, 63.51025390625003], + [178.79296874999997, 63.54033203125002], + [178.91855468750018, 63.400244140625006], + [178.92148437500006, 63.34501953125002], + [179.028125, 63.28242187499998], + [179.33232421875007, 63.19018554687503], + [179.38857421875, 63.14721679687497], + [179.40507812499996, 63.077734375000034], + [179.3290039062501, 63.057910156250074], + [179.25957031250002, 63.00830078125], + [179.3021484375, 62.93984375], + [179.38105468750004, 62.88369140625002], + [179.51093750000004, 62.86279296875003], + [179.5705078125001, 62.773486328125045], + [179.5705078125001, 62.6875], + [179.4772460937501, 62.613085937500045], + [179.28867187500006, 62.51035156249998], + [179.17695312500004, 62.46918945312504], + [179.13388671875018, 62.396435546874955], + [179.12070312500012, 62.32036132812499], + [179.0446289062501, 62.323681640624955], + [178.96386718749997, 62.35527343750002], + [178.0192382812501, 62.54697265624998], + [177.66308593750003, 62.58281249999999], + [177.3512695312501, 62.587451171875045], + [177.292578125, 62.59902343750002], + [177.29589843749997, 62.644482421874955], + [177.31582031249994, 62.68525390625001], + [177.35966796875002, 62.736962890624966], + [177.33896484375006, 62.781347656250034], + [177.29833984374997, 62.78422851562499], + [177.25869140625005, 62.750439453124955], + [177.17265625000007, 62.750341796875034], + [177.09121093750005, 62.78955078125003], + [177.02353515625012, 62.777246093749994], + [176.99003906250002, 62.722216796875074], + [176.96347656250012, 62.69326171875002], + [176.96474609375, 62.65864257812498], + [177.00800781250015, 62.626562500000034], + [177.18964843749998, 62.59160156250002], + [177.15947265625007, 62.56098632812498], + [176.90742187500004, 62.53608398437498], + [176.70253906250005, 62.50576171875002], + [176.43652343750003, 62.410839843749955], + [176.32841796875007, 62.346044921875006], + [175.61386718750012, 62.184375], + [175.44199218750012, 62.12792968749997], + [175.36582031250006, 62.12133789062506], + [175.26787109375002, 62.102392578125006], + [175.19238281250009, 62.034423828125], + [174.7975585937501, 61.938867187499994], + [174.71503906249998, 61.947900390624966], + [174.61054687500004, 61.867626953124955], + [174.51435546875015, 61.823632812499966], + [174.28496093750013, 61.817529296874966], + [174.13886718750004, 61.79516601562503], + [173.82236328125, 61.67939453124998], + [173.6234375, 61.716064453125], + [173.39072265625, 61.556738281250034], + [173.13183593749997, 61.40664062500002], + [173.05458984375005, 61.40620117187501], + [172.85654296875006, 61.469189453124955], + [172.8068359375001, 61.43613281249998], + [172.83789062500003, 61.375585937500006], + [172.90800781250002, 61.311621093750006], + [172.86777343750006, 61.29306640625006], + [172.78906250000003, 61.310693359374994], + [172.73066406250004, 61.314404296874955], + [172.69003906250012, 61.29516601562503], + [172.6969726562501, 61.24931640625002], + [172.58476562500007, 61.19042968750003], + [172.49707031249997, 61.18588867187498], + [172.39609375000006, 61.16738281250002], + [172.36240234375006, 61.116601562499994], + [172.39277343750004, 61.061767578125], + [172.21328125000005, 60.997851562500045], + [172.06728515625005, 60.915673828124994], + [171.99765625000006, 60.900683593750045], + [171.91796875000003, 60.86411132812498], + [171.83056640624997, 60.83735351562504], + [171.72949218749997, 60.84311523437506], + [171.48974609374997, 60.72573242187502], + [170.94931640625012, 60.52294921875003], + [170.79931640625003, 60.49648437500005], + [170.60820312500007, 60.434912109375034], + [170.58974609375005, 60.393701171874966], + [170.5885742187501, 60.342871093750006], + [170.51230468750006, 60.259521484375], + [170.42343750000012, 60.04780273437504], + [170.39648437500003, 60.009765625], + [170.3509765625, 59.965527343749955], + [170.15410156250002, 59.98608398437497], + [169.9826171875001, 60.067089843749955], + [169.92724609374997, 60.10424804687497], + [169.89755859375006, 60.147851562499994], + [169.88701171875007, 60.21791992187505], + [169.85429687500007, 60.25024414062497], + [169.81474609375007, 60.26538085937503], + [169.61835937500004, 60.438037109375045], + [169.27568359375002, 60.55664062500003], + [169.2267578125001, 60.59594726562497], + [168.78828125000004, 60.563818359375006], + [168.6703125, 60.562890625], + [168.46279296875, 60.59223632812501], + [168.1375, 60.57392578125001], + [167.74599609375005, 60.50932617187499], + [167.62607421875006, 60.46894531250004], + [167.22675781250004, 60.406298828125045], + [166.9640625000001, 60.30703125], + [166.4525390625, 59.947021484375], + [166.33183593750007, 59.872412109375006], + [166.27304687500012, 59.85625], + [166.18652343749997, 59.849462890625034], + [166.14892578125003, 59.92207031249998], + [166.13603515625007, 59.979345703125034], + [166.168359375, 60.08881835937504], + [166.22978515625007, 60.17832031249998], + [166.29248046874997, 60.34609375000005], + [166.30810546874997, 60.41425781249998], + [166.35214843750006, 60.48481445312498], + [166.18017578125003, 60.48037109375005], + [165.94199218750006, 60.35688476562501], + [165.58300781250003, 60.236474609374994], + [165.41582031250007, 60.205175781250034], + [165.28525390625012, 60.13491210937502], + [165.19257812500004, 60.12475585937497], + [165.08457031250006, 60.09858398437498], + [165.0736328125, 59.94560546874999], + [165.01894531250005, 59.86074218750002], + [164.95371093750006, 59.843603515625006], + [164.85429687500007, 59.840966796874994], + [164.77939453125006, 59.87421875000001], + [164.66972656250002, 59.997460937499994], + [164.52529296875, 60.06127929687503], + [164.44003906250006, 60.072705078124955], + [164.37685546875005, 60.05805664062498], + [164.25156250000012, 59.97377929687505], + [164.11328125000003, 59.89755859374998], + [164.13505859375002, 59.98437], + [164.01757812499997, 60.01733398437503], + [163.91289062500002, 60.03706054687498], + [163.78007812500007, 60.041113281250006], + [163.74384765625004, 60.02802734374998], + [163.69003906250012, 59.97841796875002], + [163.57431640625006, 59.91406250000006], + [163.49375, 59.88676757812499], + [163.40996093750007, 59.8349609375], + [163.36484375000012, 59.78144531250004], + [163.32119140625, 59.705419921875006], + [163.26904296874997, 59.52001953124997], + [163.27285156250005, 59.302587890625006], + [163.08486328125, 59.13139648437502], + [163.01015625, 59.148291015625006], + [162.97490234375007, 59.137060546875034], + [162.94003906250006, 59.11430664062502], + [163.00429687500005, 59.02016601562502], + [162.96982421875012, 58.986474609374994], + [162.93457031250003, 58.963964843750034], + [162.84726562500012, 58.939257812500045], + [162.64335937500002, 58.799902343750006], + [162.45302734375, 58.708593750000034], + [162.14160156249997, 58.44741210937502], + [162.04921875000005, 58.272851562499994], + [161.96005859375012, 58.07690429687506], + [162.00195312500003, 57.98095703125006], + [162.03964843750006, 57.91826171874996], + [162.09794921875002, 57.874658203124966], + [162.19746093750004, 57.82915039062502], + [162.41142578125002, 57.77836914062499], + [162.39218750000012, 57.74501953125002], + [162.39140625000002, 57.717236328124955], + [162.4669921875001, 57.766210937500006], + [162.52197265624997, 57.90410156250002], + [162.65429687499997, 57.94824218750003], + [162.71835937500012, 57.94609375], + [163.14501953125003, 57.837304687499994], + [163.22578125000004, 57.790380859375034], + [163.21386718750003, 57.68681640624999], + [163.18789062500005, 57.637402343749955], + [163.1087890625, 57.56484375], + [162.95703124999997, 57.47749023437498], + [162.77929687500003, 57.35761718749998], + [162.76230468750012, 57.284082031249994], + [162.76152343750002, 57.24394531249999], + [162.80810546875003, 57.10278320312503], + [162.81484375, 57.02338867187501], + [162.79111328125012, 56.875390624999966], + [162.80263671875, 56.81147460937501], + [162.84990234375002, 56.75683593749997], + [162.92207031250004, 56.72265625000003], + [163.04638671874997, 56.741308593750006], + [163.1654296875, 56.725488281249966], + [163.2565429687501, 56.68803710937499], + [163.24326171875012, 56.56455078125006], + [163.29404296875006, 56.447705078124955], + [163.33554687500012, 56.232519531250006], + [163.26132812500006, 56.17373046875002], + [163.18925781250007, 56.13701171874999], + [163.04736328125003, 56.044677734375], + [162.97167968749997, 56.033789062500006], + [162.84033203125003, 56.065625], + [162.628125, 56.232275390625034], + [162.71318359375007, 56.33085937499996], + [162.89326171875004, 56.39946289062499], + [162.97519531250006, 56.44902343749996], + [163.03837890625002, 56.52187], + [162.94414062500002, 56.508056640625], + [162.8776367187501, 56.47636718750002], + [162.67148437500006, 56.49008789062498], + [162.5890625000001, 56.454931640625006], + [162.48867187500005, 56.39912109375001], + [162.52822265625005, 56.260693359374955], + [162.46113281250004, 56.235498046874994], + [162.33408203125006, 56.18774414062503], + [162.14609375000006, 56.12827148437498], + [162.08496093749997, 56.08964843750002], + [161.92402343750004, 55.84038085937496], + [161.7755859375001, 55.65483398437499], + [161.72392578125002, 55.49614257812499], + [161.72939453125, 55.358007812500006], + [161.78496093750002, 55.205322265625], + [161.82421874999997, 55.13891601562506], + [161.99609374999997, 54.99799804687504], + [162.0802734375001, 54.886132812499966], + [162.10556640625006, 54.75214843750004], + [161.96689453125006, 54.68867187499998], + [161.72568359375006, 54.53295898437506], + [161.62480468750002, 54.51625976562502], + [161.29404296875012, 54.52055664062502], + [161.12988281249997, 54.598242187500034], + [160.93554687500003, 54.57836914062497], + [160.77265625000004, 54.54135742187498], + [160.51718750000006, 54.43085937500004], + [160.28886718750007, 54.28823242187502], + [160.0744140625001, 54.18916015625001], + [160.01015625000005, 54.13085937500003], + [159.92177734375, 54.008398437500034], + [159.84375, 53.78364257812498], + [159.87089843750002, 53.67265625000002], + [159.91425781250004, 53.62084960937503], + [159.95585937500007, 53.55219726562501], + [159.8991210937501, 53.44770507812504], + [159.89765625000004, 53.380761718749966], + [160.0021484375001, 53.27490234375], + [160.02509765625004, 53.129589843749955], + [159.94746093750004, 53.125097656250034], + [159.77158203125012, 53.22968750000001], + [159.58593750000003, 53.237695312499966], + [159.13613281250005, 53.11713867187501], + [158.95205078125005, 53.047558593749955], + [158.74541015625002, 52.90893554687506], + [158.68369140625006, 52.935400390625006], + [158.63955078125005, 53.01479492187502], + [158.5646484375001, 53.05], + [158.47207031250005, 53.032373046874966], + [158.43232421875004, 52.957421874999966], + [158.56015625000006, 52.92216796874999], + [158.6087890625, 52.873632812500034], + [158.53369140624997, 52.68842773437498], + [158.48076171875002, 52.62666015625001], + [158.50039062500005, 52.460302734375034], + [158.49316406249997, 52.383154296875034], + [158.46347656250006, 52.30498046875002], + [158.33164062500012, 52.09086914062502], + [158.10351562500003, 51.80961914062499], + [157.82324218750003, 51.605322265625034], + [157.62890624999997, 51.534570312499994], + [157.5309570312501, 51.479882812499966], + [157.48984375000006, 51.408935546875], + [157.20224609375006, 51.21274414062498], + [156.84746093750002, 51.006591796875], + [156.74775390625004, 50.969287109375045], + [156.72431640625004, 51.04707031249998], + [156.71347656250006, 51.12412109375006], + [156.67080078125, 51.22685546875002], + [156.54345703124997, 51.31162109375006], + [156.52119140625004, 51.38027343750002], + [156.500390625, 51.47509765625006], + [156.48984375000006, 51.91303710937501], + [156.37734375, 52.366552734375034], + [156.36474609374997, 52.509375], + [156.22861328125006, 52.62626953125002], + [156.15439453125012, 52.74726562499998], + [156.11035156250003, 52.86616210937504], + [156.0988281250001, 53.00649414062502], + [155.95019531249997, 53.744287109374966], + [155.90488281250006, 53.928125], + [155.7064453125, 54.52148437500003], + [155.62031250000004, 54.86455078125002], + [155.5638671875, 55.199121093749966], + [155.5548828125001, 55.348486328125034], + [155.64345703125005, 55.793554687500006], + [155.71660156250002, 56.07221679687504], + [155.98251953125012, 56.69521484375002], + [156.02539062500003, 56.75200195312496], + [156.06748046875006, 56.781591796875034], + [156.52929687500003, 57.02119140625001], + [156.72841796875, 57.152246093749966], + [156.8488281250001, 57.290185546874994], + [156.97675781250004, 57.46630859375], + [156.96357421875004, 57.5609375], + [156.94824218750003, 57.61577148437499], + [156.89990234375003, 57.676904296874994], + [156.79160156250006, 57.747949218749994], + [156.82988281250007, 57.77963867187498], + [156.87197265625, 57.80366210937498], + [156.9857421875, 57.83017578125006], + [157.21679687500003, 57.77680664062501], + [157.4503906250001, 57.79926757812498], + [157.66640625000005, 58.01977539062506], + [157.97460937500003, 57.9859375], + [158.21044921875003, 58.02529296875002], + [158.27519531250007, 58.00898437499998], + [158.32109375000002, 58.083447265624955], + [158.44941406250004, 58.16284179687497], + [158.68701171874997, 58.281347656250034], + [159.03691406250002, 58.423925781250034], + [159.21064453125004, 58.519433593749966], + [159.30839843750007, 58.610546874999955], + [159.45263671874997, 58.69594726562505], + [159.5915039062501, 58.803662109374955], + [159.8473632812501, 59.127148437499955], + [160.35039062500007, 59.39404296874997], + [160.54746093750006, 59.54736328125003], + [160.71142578125003, 59.601660156250006], + [160.85527343750002, 59.626855468749966], + [161.2189453125001, 59.84560546875005], + [161.44931640625006, 60.02734375000003], + [161.75351562500012, 60.15229492187501], + [161.84599609375002, 60.23222656250002], + [162.0036132812501, 60.42016601562503], + [162.06816406250002, 60.466406250000034], + [162.26630859375004, 60.53671874999998], + [162.71318359375007, 60.65947265625002], + [162.97314453124997, 60.782910156249955], + [163.35234375000007, 60.800439453124966], + [163.46640625000012, 60.849755859374994], + [163.58515625000004, 60.877148437499955], + [163.70996093749997, 60.916796875000045], + [163.55351562500002, 61.02563476562503], + [163.5892578125, 61.084375], + [163.61962890624997, 61.11132812499997], + [163.89335937500007, 61.240478515625], + [164.00546875000006, 61.34379882812499], + [163.99208984375, 61.38823242187499], + [163.97275390625006, 61.419873046874955], + [163.80439453125004, 61.46137695312498], + [163.83710937500004, 61.558251953124994], + [163.88271484375, 61.64013671874997], + [164.01953125000003, 61.71069335937506], + [164.06796875000012, 61.87387695312498], + [164.07421874999997, 62.045019531250034], + [164.20722656250004, 62.29223632812506], + [164.2875, 62.34663085937501], + [164.59833984375004, 62.470556640625034], + [164.67070312500007, 62.473779296874994], + [164.88769531250003, 62.43188476562497], + [165.12412109375006, 62.41152343750002], + [165.20810546875012, 62.37397460937501], + [165.22568359375006, 62.40576171875], + [165.21386718749997, 62.44819335937501], + [165.28037109375012, 62.462988281250006], + [165.41738281250005, 62.447070312500045], + [165.39658203125006, 62.493896484375], + [165.04404296875006, 62.516992187499994], + [164.7923828125, 62.57109375000002], + [164.56699218750006, 62.675488281249955], + [164.418359375, 62.704638671875045], + [164.25566406250007, 62.69658203124999], + [163.33173828125004, 62.550927734374994], + [163.28710937500003, 62.51142578125001], + [163.24423828125006, 62.455371093750074], + [163.30214843750005, 62.37299804687498], + [163.25800781250004, 62.3369140625], + [163.21328125000005, 62.31342773437501], + [163.16347656250005, 62.259570312500045], + [163.11845703125002, 62.152929687500006], + [163.1310546875001, 62.04990234375006], + [163.01767578125006, 61.89106445312504], + [163.00927734374997, 61.79150390625], + [163.20761718750006, 61.736572265625], + [163.25781249999997, 61.69946289062497], + [163.19785156250012, 61.64477539062503], + [163.1388671875001, 61.61142578124998], + [163.08525390625002, 61.570556640625], + [163.047265625, 61.554052734375034], + [162.99394531250007, 61.54418945312497], + [162.92167968750007, 61.597705078125045], + [162.85595703125003, 61.705029296874955], + [162.75234375000005, 61.711279296875006], + [162.71787109375012, 61.69511718749999], + [162.69902343750002, 61.65258789062503], + [162.60761718750004, 61.65004882812505], + [162.50644531250012, 61.670117187499955], + [162.39257812500003, 61.662109375], + [162.18837890625, 61.540673828124966], + [161.03710937500003, 60.96289062500003], + [160.91503906250003, 60.892675781250034], + [160.76660156249997, 60.753320312499966], + [160.48203125000006, 60.73984374999998], + [160.36816406249997, 60.70854492187499], + [160.2873046875001, 60.667041015625074], + [160.17363281250002, 60.638427734375], + [160.17734375000006, 60.69072265624999], + [160.20107421875005, 60.72963867187502], + [160.2257812500001, 60.83154296875], + [160.37890625000003, 61.02548828124998], + [160.28125, 61.044775390625006], + [160.1842773437501, 61.047656250000074], + [160.00400390625012, 61.007421875000034], + [159.88310546875002, 60.943408203125045], + [159.79042968750005, 60.956640625], + [159.83457031250006, 61.013964843750045], + [159.94921874999997, 61.128613281249955], + [159.91396484375, 61.234472656250034], + [159.88310546875002, 61.291796875000074], + [159.93085937500004, 61.323925781249955], + [160.16269531250012, 61.5375], + [160.246875, 61.647607421874994], + [160.31738281250003, 61.79335937500002], + [160.32148437500004, 61.83857421874998], + [160.309375, 61.894384765625006], + [160.23779296874997, 61.903857421875045], + [160.18251953125, 61.90283203125003], + [159.72216796874997, 61.758398437500006], + [159.55234375000012, 61.71948242187497], + [159.4962890625001, 61.78144531249998], + [159.4230468750001, 61.80805664062498], + [159.29501953125012, 61.914160156250034], + [159.18925781250007, 61.92939453125001], + [159.07666015625003, 61.922265625], + [158.82431640625012, 61.850244140624966], + [158.54716796875007, 61.810888671875034], + [158.3336914062501, 61.82568359375003], + [158.15156250000004, 61.76484374999998], + [158.07011718750002, 61.75361328125001], + [157.79931640625003, 61.79526367187506], + [157.46933593750012, 61.798925781250006], + [157.37070312500012, 61.7470703125], + [157.0841796875001, 61.67568359375002], + [156.89179687500004, 61.56518554687497], + [156.790625, 61.529638671875034], + [156.68027343750006, 61.480615234374994], + [156.62968750000002, 61.27246093750003], + [156.4826171875001, 61.20600585937498], + [156.34414062500005, 61.15507812500002], + [156.05595703125002, 60.99560546875003], + [155.85332031250007, 60.77714843750002], + [155.71611328125002, 60.682373046875], + [155.42783203125006, 60.54985351562499], + [154.97080078125012, 60.376660156249955], + [154.57822265625006, 60.095019531250045], + [154.44072265625007, 59.8837890625], + [154.3898437500001, 59.87675781249999], + [154.29306640625006, 59.833349609375034], + [154.26660156250003, 59.73037109375002], + [154.26884765625002, 59.65839843750001], + [154.20917968750004, 59.600341796875], + [154.1498046875, 59.52851562500001], + [154.21289062499997, 59.48339843749997], + [154.2721679687501, 59.475146484375074], + [154.3576171875001, 59.48144531250003], + [154.58251953124997, 59.540087890625074], + [154.97128906250006, 59.44960937500002], + [155.16669921875004, 59.36015624999999], + [155.15302734375004, 59.27021484374998], + [155.16044921875002, 59.19013671875001], + [155.01669921875006, 59.195605468750045], + [154.82373046875003, 59.18754882812502], + [154.70351562500005, 59.14130859375001], + [154.45800781250003, 59.21655273437497], + [154.37597656250003, 59.18784179687498], + [154.24667968750006, 59.10859375000001], + [154.01093750000004, 59.075537109375006], + [153.89169921875012, 59.114160156249966], + [153.69521484375005, 59.22475585937505], + [153.36113281250002, 59.214794921874955], + [153.27294921874997, 59.09130859375003], + [153.19609375000007, 59.094433593749955], + [153.07773437500012, 59.08188476562498], + [152.8822265625, 58.9390625], + [152.81787109375003, 58.92626953124997], + [152.57558593750005, 58.95410156249997], + [152.40068359375002, 59.026416015625045], + [152.31962890625002, 59.03076171875003], + [152.1652343750001, 58.99702148437501], + [152.08789062499997, 58.910449218750045], + [151.70458984374997, 58.86669921875], + [151.32675781250006, 58.875097656250034], + [151.12109375000003, 59.08251953125003], + [151.50498046875006, 59.16401367187501], + [151.73349609375006, 59.14667968750004], + [151.99003906250002, 59.160058593749994], + [152.26064453125, 59.22358398437498], + [152.16953125000006, 59.277929687500034], + [152.10449218749997, 59.290576171875045], + [151.94238281249997, 59.28408203125005], + [151.7980468750001, 59.32324218750003], + [151.48574218750005, 59.52412109375001], + [151.34824218750012, 59.561132812500006], + [151.1703125, 59.58325195312497], + [151.03359375000005, 59.58564453125001], + [150.98251953125012, 59.571337890625045], + [150.91191406250002, 59.52304687500006], + [150.86328124999997, 59.475439453125034], + [150.82343750000004, 59.460742187500074], + [150.72949218749997, 59.469140625], + [150.61523437499997, 59.50654296874998], + [150.4835937500001, 59.494384765625], + [150.53984375000007, 59.52495117187499], + [150.66728515625002, 59.55634765625001], + [150.45722656250004, 59.590722656249994], + [150.32558593750005, 59.63886718750004], + [150.2025390625, 59.651269531249966], + [149.64257812499997, 59.770410156249994], + [149.42451171875004, 59.76098632812503], + [149.2904296875, 59.72846679687498], + [149.06523437500002, 59.63051757812502], + [149.12773437500007, 59.558789062499955], + [149.17539062500012, 59.52675781250002], + [149.20498046875, 59.488183593749966], + [149.1330078125001, 59.48051757812502], + [148.925, 59.475], + [148.79707031250004, 59.532324218750006], + [148.70888671875, 59.448535156250074], + [148.74414062499997, 59.37353515624997], + [148.88964843749997, 59.4], + [148.96464843750007, 59.36914062499997], + [148.91406249999997, 59.28271484375003], + [148.72666015625006, 59.257910156250034], + [148.49121093749997, 59.26230468750006], + [148.25742187500006, 59.414208984374994], + [147.87460937500006, 59.388037109375006], + [147.687890625, 59.290673828124966], + [147.51445312500002, 59.2685546875], + [147.04003906250003, 59.36572265624997], + [146.80371093750003, 59.37294921875002], + [146.53720703125006, 59.45698242187501], + [146.44433593749997, 59.43046875000002], + [146.27343749999997, 59.22148437499999], + [146.0495117187501, 59.17055664062502], + [145.93164062499997, 59.198388671874994], + [145.82910156249997, 59.33032226562506], + [145.75644531250006, 59.37373046875001], + [145.55458984375, 59.413525390624955], + [144.48339843749997, 59.37626953124999], + [144.1234375, 59.408300781250034], + [143.86875, 59.41137695312506], + [143.523828125, 59.34365234375002], + [143.19218750000002, 59.3701171875], + [142.58027343750004, 59.240136718749966], + [142.33037109375002, 59.15263671874999], + [142.02539062499997, 58.99965820312502], + [141.75468750000007, 58.745263671874966], + [141.6029296875, 58.64902343749998], + [141.3470703125, 58.52807617187503], + [140.98769531250005, 58.416845703125034], + [140.79023437500004, 58.30346679687503], + [140.6849609375, 58.21215820312497], + [140.49511718749997, 57.865429687499955], + [140.446875, 57.81367187499998], + [140.00234375000005, 57.6875], + [139.86152343750004, 57.54931640625003], + [139.80332031250006, 57.51416015624997], + [139.61923828125006, 57.455712890624966], + [139.50664062500002, 57.35830078125002], + [139.44384765625003, 57.32968750000006], + [139.18164062499997, 57.26152343750002], + [138.96572265625005, 57.08813476562506], + [138.66210937500003, 56.96552734375004], + [138.21777343749997, 56.629003906250034], + [138.18007812500005, 56.588525390624966], + [138.140625, 56.49868164062505], + [138.07382812500006, 56.43310546875], + [137.69150390625006, 56.13935546875004], + [137.5729492187501, 56.11210937499999], + [137.38408203125007, 55.974755859374966], + [137.18984375, 55.892285156249955], + [137.01210937500005, 55.795263671875006], + [136.79355468750012, 55.694189453125006], + [136.46025390625007, 55.57670898437499], + [136.35117187500006, 55.51000976562497], + [136.1751953125, 55.35224609374998], + [135.75078125000002, 55.16064453125003], + [135.54062500000012, 55.11376953125], + [135.2625, 54.94331054687498], + [135.234765625, 54.903222656249994], + [135.21152343750012, 54.84082031249997], + [135.25771484375005, 54.73149414062499], + [135.32539062500004, 54.707421875], + [135.43779296875002, 54.692480468750034], + [135.85156249999997, 54.583935546874955], + [136.2379882812501, 54.6140625], + [136.5802734375001, 54.61362304687506], + [136.7145507812501, 54.62431640625002], + [136.797265625, 54.62099609375005], + [136.82373046875003, 54.56147460937501], + [136.82041015625006, 54.45234374999998], + [136.77041015625, 54.35332031249996], + [136.72939453125, 54.060644531250034], + [136.68300781250005, 53.93129882812505], + [136.71884765625006, 53.804101562499994], + [136.80263671875, 53.781982421875], + [136.88642578125004, 53.83935546874997], + [137.01875, 53.84814453124997], + [137.15537109375012, 53.82167968750002], + [137.25800781250004, 54.025244140625006], + [137.17246093750012, 54.05688476562506], + [137.09619140625003, 54.128564453124994], + [137.14160156249997, 54.182226562500006], + [137.37773437500002, 54.28232421874998], + [137.5250976562501, 54.29121093750001], + [137.66601562500003, 54.283300781250006], + [137.51318359374997, 54.156396484374994], + [137.45126953125006, 54.130468750000034], + [137.40341796875012, 54.12353515625006], + [137.3392578125, 54.10053710937498], + [137.47646484375005, 54.02758789062503], + [137.6227539062501, 53.97045898437503], + [137.83476562500002, 53.94672851562498], + [137.78613281249997, 53.90332031250003], + [137.64482421875007, 53.865820312500034], + [137.51699218750005, 53.70708007812502], + [137.31367187500004, 53.631591796875], + [137.22148437500007, 53.579199218750006], + [137.25371093750007, 53.546142578125], + [137.3283203125001, 53.538964843749966], + [137.73818359375, 53.56030273437506], + [137.95048828125007, 53.60356445312499], + [138.25292968749997, 53.72641601562506], + [138.37890624999997, 53.909277343750006], + [138.49355468750005, 53.959667968749955], + [138.52792968750012, 53.959863281249994], + [138.56816406250007, 53.947167968749994], + [138.56914062500002, 53.818798828124955], + [138.40703125000002, 53.67416992187498], + [138.29218750000004, 53.59243164062502], + [138.24970703125004, 53.524023437500034], + [138.32031250000003, 53.52290039062498], + [138.45068359375003, 53.53701171875002], + [138.51093750000004, 53.57001953124998], + [138.66074218750012, 53.744775390624966], + [138.69941406250004, 53.869726562500034], + [138.72167968749997, 54.04375], + [138.70468750000006, 54.14765624999998], + [138.71591796875006, 54.22265625], + [138.65722656249997, 54.29833984375003], + [138.695703125, 54.32001953125001], + [139.10507812500012, 54.21782226562499], + [139.31972656250005, 54.19296874999998], + [139.707421875, 54.27714843749999], + [139.79550781250006, 54.256445312500034], + [139.85839843750003, 54.205322265625], + [140.17871093749997, 54.051562500000045], + [140.24169921875003, 54.001025390625045], + [140.3470703125, 53.812597656250034], + [140.68759765625012, 53.59643554687503], + [141.00566406250007, 53.49458007812498], + [141.0150390625, 53.45424804687502], + [141.21767578125, 53.33447265625006], + [141.3737304687501, 53.29277343749999], + [141.4020507812501, 53.18398437500002], + [141.32792968750002, 53.097265625000034], + [141.18125, 53.01528320312505], + [140.88730468750012, 53.09150390625001], + [140.83964843750002, 53.087890625], + [140.87451171874997, 53.03984374999999], + [141.08681640625, 52.897558593750034], + [141.25585937499997, 52.84013671874996], + [141.26591796875007, 52.65258789062506], + [141.24501953125, 52.550146484375034], + [141.13242187500006, 52.435693359374994], + [141.16982421875005, 52.36840820312497], + [141.32968750000006, 52.27114257812505], + [141.40908203125, 52.23432617187501], + [141.48525390625, 52.17851562500002], + [141.38554687500002, 52.05722656249998], + [141.36689453125004, 51.92065429687506], + [141.25839843750006, 51.860693359375006], + [141.12939453124997, 51.72778320312503], + [140.93261718750003, 51.61992187499999], + [140.83857421875004, 51.41416015624998], + [140.68769531250004, 51.23227539062506], + [140.67070312500002, 51.05131835937496], + [140.64560546875006, 50.986767578124955], + [140.5208984375, 50.80019531250005], + [140.47636718750007, 50.545996093750034], + [140.53544921875002, 50.130761718749994], + [140.56406250000006, 50.10668945312497], + [140.62451171874997, 50.08242187500002], + [140.61328124999997, 50.05371093750003], + [140.58457031250006, 50.033349609374966], + [140.46269531250002, 49.911474609375006], + [140.46455078125004, 49.825585937499994], + [140.51132812500006, 49.76166992187504], + [140.51718750000012, 49.59614257812498], + [140.4310546875, 49.33149414062498], + [140.39912109375004, 49.289794921875], + [140.36435546875006, 49.220849609374994], + [140.34863281249997, 49.15917968750003], + [140.3255859375, 49.120019531249966], + [140.308984375, 49.05390625000001], + [140.33369140625004, 48.994824218749955], + [140.3783203125, 48.964111328125], + [140.22421875000012, 48.77285156250002], + [140.17060546875004, 48.52368164062497], + [140.11328124999997, 48.42265625000002], + [139.99843750000005, 48.32377929687502], + [139.76074218750003, 48.180566406249966], + [139.67626953124997, 48.08989257812499], + [139.52050781250003, 47.97529296874998], + [139.37265625000006, 47.88735351562502], + [139.16699218750003, 47.634863281250006], + [139.00136718750005, 47.38330078125], + [138.58681640625005, 47.057226562500006], + [138.52968750000005, 46.97622070312502], + [138.50048828124997, 46.88984375000001], + [138.3917968750001, 46.74506835937501], + [138.33691406250003, 46.543408203124955], + [138.21015625000004, 46.46293945312499], + [138.10634765625005, 46.25073242187503], + [137.76914062500006, 45.92851562500002], + [137.68544921875, 45.81835937500003], + [137.4251953125, 45.639990234375034], + [137.14697265624997, 45.39350585937498], + [136.80351562500002, 45.171142578125], + [136.73720703125, 45.08002929687498], + [136.60410156250006, 44.97817382812502], + [136.46044921875003, 44.822119140625034], + [136.2511718750001, 44.66679687499999], + [136.20869140625004, 44.56201171874997], + [136.14228515625004, 44.489111328125034], + [135.9870117187501, 44.43984375000005], + [135.87460937500012, 44.37353515625003], + [135.53320312500003, 43.97148437500002], + [135.48906250000002, 43.89882812500005], + [135.48339843749997, 43.83500976562502], + [135.26015625, 43.68461914062502], + [135.1310546875001, 43.52573242187506], + [134.91699218749997, 43.42656250000002], + [134.691796875, 43.29057617187502], + [134.15644531250004, 43.04213867187505], + [134.01044921875004, 42.94746093750001], + [133.709375, 42.82993164062506], + [133.58671875000002, 42.82822265624998], + [133.32949218750005, 42.76386718750001], + [133.15996093750007, 42.69697265624998], + [133.059375, 42.722802734374994], + [132.99658203124997, 42.80800781250002], + [132.92392578125012, 42.805273437500006], + [132.86357421875007, 42.79375], + [132.70898437500003, 42.875830078125006], + [132.57646484375002, 42.87158203125003], + [132.48134765625, 42.90976562499998], + [132.30380859375006, 42.88330078125], + [132.334375, 43.23867187500002], + [132.30957031249997, 43.31352539062499], + [132.23320312500007, 43.24506835937498], + [132.0287109375, 43.11894531249996], + [131.94726562499997, 43.095410156249955], + [131.8666015625, 43.09516601562501], + [131.89833984375, 43.170751953125034], + [132.0130859375, 43.280029296875], + [131.97626953125004, 43.296044921874994], + [131.93896484374997, 43.30195312500004], + [131.79472656250002, 43.25527343750002], + [131.72207031250005, 43.20263671875006], + [131.51640625000007, 42.99643554687506], + [131.39326171875004, 42.82231445312502], + [131.29248046875003, 42.772119140624994], + [131.2453125000001, 42.697412109374966], + [131.15830078125012, 42.62602539062499], + [131.0248046875, 42.645166015624994], + [130.94570312500005, 42.63393554687502], + [130.75615234375007, 42.67329101562504], + [130.709375, 42.656396484374966], + [130.8341796875001, 42.52294921875006], + [130.72988281250005, 42.325781250000034], + [130.68730468750007, 42.30253906249999], + [130.65800781250007, 42.327783203124994], + [130.6515625000001, 42.372509765624955], + [130.61796875000007, 42.415625], + [130.55410156250005, 42.47470703124998], + [130.52695312500012, 42.535400390625], + [130.58447265625003, 42.56733398437504], + [130.5765625, 42.623242187499955], + [130.52060546875006, 42.67431640624997], + [130.43925781250002, 42.68554687500006], + [130.41992187499997, 42.69985351562502], + [130.42480468749997, 42.72705078124997], + [130.45273437500006, 42.75541992187499], + [130.49296875000002, 42.77910156250002], + [130.57724609375006, 42.81162109375006], + [130.72246093750007, 42.83583984375002], + [130.80332031250006, 42.85683593750002], + [130.86855468750005, 42.86333007812502], + [130.94287109375003, 42.85175781249998], + [131.0055664062501, 42.88310546874996], + [131.06855468750004, 42.90224609375005], + [131.08349609374997, 42.95629882812506], + [131.08613281250004, 43.0380859375], + [131.10898437500012, 43.06245117187501], + [131.13554687500002, 43.09760742187498], + [131.17558593750007, 43.1421875], + [131.21191406250003, 43.25776367187501], + [131.23935546875012, 43.33764648437503], + [131.25732421875003, 43.378076171874994], + [131.26181640625006, 43.43305664062501], + [131.24394531250007, 43.46904296874996], + [131.2091796875001, 43.49042968749998], + [131.18242187500007, 43.50556640625004], + [131.180078125, 43.567089843749955], + [131.18359375000003, 43.65087890624997], + [131.17421875, 43.70473632812502], + [131.21328125000005, 44.00292968750003], + [131.2552734375, 44.07158203124999], + [131.12578125000007, 44.46918945312498], + [131.08691406249997, 44.59565429687498], + [131.06064453125012, 44.65966796874997], + [131.00390625000003, 44.75322265625002], + [130.96777343750003, 44.79995117187505], + [130.9816406250001, 44.844335937500034], + [131.03300781250007, 44.88886718750004], + [131.08232421875002, 44.91000976562498], + [131.2279296875, 44.92016601562503], + [131.26826171875004, 44.93613281249998], + [131.44687500000012, 44.984033203124966], + [131.4875, 45.01313476562504], + [131.57871093750006, 45.08364257812502], + [131.61396484375004, 45.13657226562506], + [131.65400390625004, 45.205371093750045], + [131.74208984375005, 45.24262695312498], + [131.79492187499997, 45.305273437500034], + [131.85185546875002, 45.32685546875001], + [131.90927734375006, 45.27373046875002], + [131.97753906250003, 45.243994140625006], + [132.06738281249997, 45.225976562499966], + [132.1813476562501, 45.20327148437505], + [132.36298828125004, 45.15996093750002], + [132.54902343750004, 45.122802734375], + [132.665625, 45.09370117187501], + [132.72314453124997, 45.08056640625], + [132.83867187500007, 45.061132812500034], + [132.88876953125006, 45.046044921874994], + [132.93603515624997, 45.029931640624994], + [133.01171874999997, 45.074560546875034], + [133.1134765625001, 45.130712890625006], + [133.096875, 45.220458984375], + [133.11337890625006, 45.321435546874966], + [133.18603515625003, 45.49482421875004], + [133.2669921875, 45.545263671875006], + [133.30957031249997, 45.553076171875006], + [133.35546875000003, 45.57221679687498], + [133.43642578125, 45.60468750000004], + [133.465625, 45.651220703125006], + [133.44912109375, 45.70507812500006], + [133.4757812500001, 45.757666015625006], + [133.48466796875002, 45.81044921875002], + [133.51308593750005, 45.878808593749994], + [133.551171875, 45.89780273437506], + [133.60800781250012, 45.92031250000002], + [133.6478515625, 45.95522460937502], + [133.68574218750004, 46.00893554687505], + [133.7111328125001, 46.06962890624999], + [133.70068359374997, 46.13974609375006], + [133.75019531250004, 46.18593750000005], + [133.83281250000002, 46.22426757812505], + [133.86132812500003, 46.24775390625004], + [133.87480468750002, 46.30908203125], + [133.8802734375, 46.33603515624998], + [133.90273437500005, 46.36694335937497], + [133.88671874999997, 46.430566406249966], + [133.86660156250005, 46.499121093750006], + [133.95751953124997, 46.6142578125], + [134.02265625000004, 46.71318359374999], + [134.03857421874997, 46.85815429687503], + [134.04599609375006, 46.88198242187502], + [134.07138671875012, 46.95078125], + [134.08642578124997, 46.978125], + [134.13691406250004, 47.068994140624994], + [134.20214843750003, 47.128076171874966], + [134.18925781250007, 47.19423828125002], + [134.16298828125005, 47.25874023437504], + [134.1676757812501, 47.30219726562501], + [134.22519531250006, 47.35263671875006], + [134.26005859375002, 47.37773437500002], + [134.29082031250002, 47.41357421875003], + [134.33945312500012, 47.42949218749999], + [134.3825195312501, 47.438232421875], + [134.48349609375006, 47.447363281250006], + [134.54189453125005, 47.48515625], + [134.59619140624997, 47.523876953124955], + [134.69580078124997, 47.624853515625006], + [134.728125, 47.684472656249994], + [134.75234375, 47.71542968749998], + [134.6986328125, 47.801416015624994], + [134.65029296875, 47.87426757812503], + [134.59130859374997, 47.97519531250006], + [134.56601562500006, 48.02250976562502], + [134.60537109375, 48.082910156249966], + [134.64726562500002, 48.12016601562502], + [134.6693359375, 48.15332031250003], + [134.6808593750001, 48.21044921875003], + [134.66523437500004, 48.25390625], + [134.56357421875012, 48.321728515624955], + [134.45615234375006, 48.35532226562506], + [134.33496093749997, 48.368847656249955], + [134.29335937500005, 48.37343750000002], + [134.20585937500007, 48.35991210937502], + [133.84218750000005, 48.273730468750045], + [133.67177734375005, 48.20771484375001], + [133.57324218749997, 48.13300781249998], + [133.46835937500006, 48.09716796875003], + [133.30117187500005, 48.10151367187504], + [133.14404296875003, 48.10566406249998], + [133.02011718750006, 48.06440429687504], + [132.8771484375001, 47.97910156250006], + [132.77285156250005, 47.94008789062502], + [132.7072265625001, 47.94726562500006], + [132.6369140625001, 47.890087890624955], + [132.5619140625, 47.768505859374955], + [132.47626953125004, 47.714990234374994], + [132.38017578125002, 47.7294921875], + [132.14980468750005, 47.71796874999998], + [131.78525390625012, 47.68051757812498], + [131.55673828125012, 47.68203125000002], + [131.4642578125, 47.72260742187504], + [131.31933593749997, 47.72783203125002], + [131.121875, 47.69765625], + [131.00273437500002, 47.69145507812499], + [130.96191406249997, 47.70932617187498], + [130.9328125000001, 47.75981445312496], + [130.9154296875, 47.84291992187502], + [130.84863281249997, 47.92944335937497], + [130.7326171875001, 48.01923828124998], + [130.7121093750001, 48.12763671875004], + [130.78720703125012, 48.254589843749955], + [130.80429687500012, 48.34150390624998], + [130.76347656250007, 48.38842773437506], + [130.746875, 48.43037109374998], + [130.65917968750003, 48.48339843750003], + [130.59726562500012, 48.57465820312498], + [130.5521484375, 48.602490234374955], + [130.565625, 48.680126953124955], + [130.61718750000003, 48.773193359375], + [130.553125, 48.861181640625006], + [130.35527343750002, 48.866357421874994], + [130.1959960937501, 48.89165039062499], + [130.03710937499997, 48.97226562499998], + [129.79257812500006, 49.19887695312505], + [129.6710937500001, 49.27851562500001], + [129.59140625000012, 49.28666992187499], + [129.53369140624997, 49.32343750000001], + [129.49814453125012, 49.38881835937502], + [129.44072265625007, 49.38945312499996], + [129.38466796875, 49.38945312499996], + [129.35009765624997, 49.362353515625045], + [129.30986328125002, 49.353857421875006], + [129.24843750000005, 49.378662109375], + [129.18515625000012, 49.38139648437502], + [129.12011718750003, 49.36206054687497], + [129.0651367187501, 49.374658203124966], + [129.02031250000002, 49.41923828124999], + [128.93828125000002, 49.44892578125001], + [128.81933593750003, 49.46376953125002], + [128.77031250000007, 49.494726562500006], + [128.79101562500003, 49.541845703125006], + [128.76904296874997, 49.57695312499999], + [128.70400390625, 49.60014648437499], + [128.5267578125, 49.59423828125003], + [128.23710937500007, 49.55927734375001], + [127.99960937500006, 49.56860351562506], + [127.81425781250007, 49.62211914062502], + [127.71113281250004, 49.671533203124966], + [127.6901367187501, 49.71674804687504], + [127.63671874999997, 49.76020507812501], + [127.55078124999997, 49.801806640625045], + [127.50244140624997, 49.8734375], + [127.49179687500012, 49.97504882812498], + [127.51230468750012, 50.07167968750005], + [127.590234375, 50.20898437500003], + [127.39531250000007, 50.298583984375], + [127.33720703125007, 50.35014648437502], + [127.35117187500006, 50.39360351562499], + [127.34082031249997, 50.428076171875006], + [127.3060546875, 50.45351562500002], + [127.30820312500012, 50.49418945312496], + [127.34716796874997, 50.55009765624999], + [127.346875, 50.62133789062503], + [127.30703125000005, 50.70795898437501], + [127.19824218749997, 50.82944335937506], + [127.02041015625, 50.985888671875045], + [126.92480468749997, 51.10014648437496], + [126.9115234375, 51.17231445312501], + [126.88769531249997, 51.230126953124966], + [126.85439453125, 51.26137695312502], + [126.83378906250007, 51.31489257812501], + [126.84775390625006, 51.37416992187502], + [126.8273437500001, 51.41225585937505], + [126.80175781250003, 51.44804687499996], + [126.80546875000007, 51.50566406249999], + [126.77451171875006, 51.54506835937502], + [126.7091796875001, 51.566308593749994], + [126.6886718750001, 51.60991210937499], + [126.70078125000006, 51.70302734375005], + [126.6537109375, 51.78129882812499], + [126.51054687500002, 51.925830078125045], + [126.46806640625002, 52.031298828125045], + [126.45556640625003, 52.12646484374997], + [126.39482421875002, 52.17299804687505], + [126.39150390625005, 52.214501953124966], + [126.3834960937501, 52.286523437499994], + [126.34628906250006, 52.30625], + [126.32421875000003, 52.331640625000034], + [126.34169921875, 52.36201171875001], + [126.312890625, 52.39975585937506], + [126.23759765625002, 52.44482421875], + [126.20292968750007, 52.48383789062504], + [126.19443359375012, 52.519140625000034], + [126.15664062500005, 52.54663085937503], + [126.04589843749997, 52.57333984374998], + [126.016015625, 52.610205078125034], + [126.02324218750007, 52.643017578124955], + [126.04707031250004, 52.67348632812505], + [126.06015625000012, 52.69199218749998], + [126.0560546875, 52.71586914062496], + [126.04814453125007, 52.73945312499998], + [126.004296875, 52.76787109374999], + [125.94160156250004, 52.80068359375002], + [125.871875, 52.87153320312498], + [125.78281250000012, 52.89072265624998], + [125.728125, 52.89072265624998], + [125.68076171875012, 52.930810546874966], + [125.69531249999997, 52.956298828125], + [125.69169921875002, 53.00371093749999], + [125.64902343750012, 53.042285156250045], + [125.59599609375007, 53.057470703125006], + [125.54599609375006, 53.04760742187506], + [125.42246093750006, 53.08374023437503], + [125.22558593750003, 53.16582031249999], + [125.075, 53.20366210937496], + [124.9708984375001, 53.19731445312499], + [124.90664062500005, 53.172656250000045], + [124.88212890625002, 53.129736328125006], + [124.81230468750002, 53.133837890625045], + [124.63984375000004, 53.210644531249955], + [124.46591796875006, 53.22963867187502], + [124.36914062499997, 53.27094726562498], + [124.29140625, 53.34086914062502], + [124.21992187500004, 53.37011718750003], + [124.15429687499997, 53.35869140625002], + [123.99472656250006, 53.40561523437498], + [123.74091796875004, 53.51098632812503], + [123.6078125, 53.546533203124994], + [123.5597656250001, 53.526660156250045], + [123.53476562500006, 53.526464843750006], + [123.48945312500004, 53.529443359374994], + [123.42402343750004, 53.53076171874997], + [123.30957031250003, 53.55561523437498], + [123.15410156250007, 53.54458007812505], + [122.95761718750006, 53.497705078124994], + [122.74472656250006, 53.468505859375], + [122.51582031250004, 53.456982421874955], + [122.38017578125002, 53.4625], + [122.33779296875, 53.485009765624994], + [122.08886718750003, 53.45146484374999], + [121.74394531250002, 53.38359375000002], + [121.40546875000004, 53.317041015624966], + [120.98544921875012, 53.28457031250002], + [120.70410156249997, 53.171826171874955], + [120.4212890625, 52.96806640625002], + [120.2181640625, 52.83989257812502], + [120.09453125000007, 52.787207031250034], + [120.04433593750005, 52.71821289062501], + [120.0675781250001, 52.632910156250034], + [120.17275390625, 52.602490234374955], + [120.36005859375004, 52.62700195312499], + [120.52109375000012, 52.615039062500045], + [120.65615234375, 52.56665039062503], + [120.69921874999997, 52.49360351562498], + [120.65039062499997, 52.395898437499966], + [120.6654296875, 52.299902343750034], + [120.74453125000005, 52.20546875], + [120.74980468750007, 52.096533203125006], + [120.68144531250007, 51.973046875], + [120.51054687500007, 51.84853515625002], + [120.23701171875004, 51.722998046875034], + [120.06689453125003, 51.60068359375006], + [119.9669921875001, 51.422119140625], + [119.81318359375004, 51.26704101562504], + [119.75664062500007, 51.17949218749996], + [119.74599609375, 51.10771484374999], + [119.6849609375, 51.030126953125006], + [119.57343750000004, 50.94677734374997], + [119.51230468750012, 50.863134765625006], + [119.50175781250002, 50.779248046874955], + [119.44570312500005, 50.70283203125001], + [119.34404296875002, 50.633886718750006], + [119.2806640625, 50.56098632812498], + [119.25585937499997, 50.48417968749996], + [119.21669921875, 50.43251953125002], + [119.16367187500006, 50.40600585937503], + [119.19189453125003, 50.37983398437504], + [119.30156250000007, 50.35390625], + [119.34628906250012, 50.278955078124994], + [119.32607421875, 50.15493164062505], + [119.25986328125012, 50.06640625000003], + [119.14746093750003, 50.01337890624998], + [118.97949218749997, 49.97885742187506], + [118.75595703125012, 49.96284179687498], + [118.4515625, 49.84448242187503], + [118.18662109375012, 49.69277343750002], + [117.8734375, 49.51347656250002], + [117.81259765625012, 49.513525390625034], + [117.69843750000004, 49.53583984375004], + [117.47714843750006, 49.60942382812502], + [117.24560546874997, 49.62485351562506], + [117.02167968750004, 49.69296874999998], + [116.88896484375007, 49.73779296874997], + [116.6833007812501, 49.82377929687499], + [116.63154296875004, 49.877050781250006], + [116.551171875, 49.92031250000002], + [116.35117187500012, 49.97807617187499], + [116.21679687500003, 50.00927734375003], + [116.13457031250002, 50.01079101562499], + [115.9259765625001, 49.95214843750003], + [115.79521484375002, 49.90590820312502], + [115.71777343750003, 49.88061523437503], + [115.58798828125006, 49.88603515624996], + [115.42919921874997, 49.89648437499997], + [115.36503906250002, 49.911767578124966], + [115.27451171875006, 49.948876953124994], + [115.098046875, 50.059423828125034], + [115.00332031250005, 50.138574218749994], + [114.8795898437501, 50.18305664062501], + [114.74316406249997, 50.23369140625002], + [114.67490234375012, 50.24570312500006], + [114.55400390625002, 50.241455078125], + [114.38632812500012, 50.25546875], + [114.29707031250004, 50.27441406250006], + [114.22177734375006, 50.25727539062501], + [114.07070312500005, 50.204736328124966], + [113.88115234375007, 50.10112304687502], + [113.73242187499997, 50.06152343750003], + [113.57421874999997, 50.00703125000001], + [113.44550781250004, 49.94160156250001], + [113.31904296875004, 49.87431640624999], + [113.16416015625012, 49.79716796874999], + [113.09208984375007, 49.692529296874994], + [113.05556640625, 49.61625976562499], + [112.91484375000002, 49.569238281249994], + [112.80644531250007, 49.52358398437502], + [112.69736328125012, 49.50727539062498], + [112.49492187500002, 49.532324218750034], + [112.37519531250004, 49.51459960937498], + [112.07968750000006, 49.42421875000002], + [111.93447265625005, 49.41601562500006], + [111.83339843750005, 49.40361328125002], + [111.7355468750001, 49.39775390624996], + [111.57480468750012, 49.37641601562498], + [111.5119140625001, 49.360937500000034], + [111.42929687500006, 49.342626953125034], + [111.3366210937501, 49.355859374999966], + [111.20419921875012, 49.304296875000034], + [110.82792968750002, 49.16616210937505], + [110.70976562500002, 49.14296875000002], + [110.63105468750004, 49.137597656249994], + [110.52958984375002, 49.187060546875045], + [110.42783203125006, 49.219970703125], + [110.32138671875012, 49.215869140625045], + [110.19990234375004, 49.17041015625003], + [109.99453125000005, 49.20561523437499], + [109.75039062500005, 49.23930664062502], + [109.5287109375, 49.269873046875034], + [109.45371093750012, 49.29633789062501], + [109.23671875000005, 49.334912109374955], + [108.91992187499997, 49.33535156250005], + [108.73300781250012, 49.33564453125001], + [108.61367187500005, 49.32280273437499], + [108.52246093750003, 49.34150390624998], + [108.4069335937501, 49.39638671875005], + [108.21308593750004, 49.52480468750002], + [108.09804687500005, 49.562646484374994], + [108.03378906250012, 49.59399414062497], + [108.00957031250007, 49.646875], + [107.96542968750012, 49.65351562500004], + [107.93671875000004, 49.691015625000034], + [107.93876953125002, 49.74072265625003], + [107.93486328125002, 49.849023437499994], + [107.94785156250012, 49.92470703125002], + [107.91660156250012, 49.947802734375045], + [107.78681640625004, 49.960009765625045], + [107.63095703125012, 49.98310546875004], + [107.3470703125, 49.986669921875034], + [107.23330078125, 49.989404296874994], + [107.14306640625003, 50.03300781249999], + [107.04023437500004, 50.086474609375045], + [106.94130859375005, 50.19667968750002], + [106.85371093750004, 50.24829101562506], + [106.71113281250004, 50.312597656250006], + [106.57441406250004, 50.32880859375004], + [106.36845703125002, 50.317578124999955], + [106.21787109375006, 50.304589843749966], + [106.08251953124997, 50.33256835937499], + [105.996484375, 50.367919921875], + [105.8751953125001, 50.405371093750006], + [105.6925781250001, 50.414160156250006], + [105.54160156250006, 50.441259765625034], + [105.38359375000002, 50.47373046874998], + [105.26669921875012, 50.460498046875045], + [105.1859375, 50.42958984375005], + [105.09472656249997, 50.38994140624996], + [104.97695312500005, 50.382910156250034], + [104.68535156250007, 50.34184570312502], + [104.59638671875004, 50.3171875], + [104.46630859375003, 50.30615234375003], + [104.35390625000005, 50.27529296875005], + [104.2599609375001, 50.214453125], + [104.17968749999997, 50.16943359374997], + [104.07871093750012, 50.15424804687498], + [103.95849609374997, 50.15727539062499], + [103.85615234375004, 50.17182617187501], + [103.80263671875, 50.17607421874999], + [103.72324218750006, 50.15385742187499], + [103.63291015625006, 50.138574218749994], + [103.49628906250004, 50.16494140625005], + [103.42119140625002, 50.18706054687502], + [103.3043945312501, 50.200292968750034], + [103.2337890625, 50.264257812500034], + [103.16171875000006, 50.29072265624998], + [103.03945312500005, 50.30063476562506], + [102.85966796875002, 50.33325195312506], + [102.76542968750007, 50.36655273437498], + [102.68330078125004, 50.38715820312501], + [102.5462890625, 50.46132812500002], + [102.4694335937501, 50.52568359374999], + [102.40683593750012, 50.53618164062499], + [102.33642578124997, 50.544238281250045], + [102.28837890625007, 50.58510742187502], + [102.28574218750006, 50.634667968749994], + [102.30332031250006, 50.66552734374997], + [102.31660156250004, 50.71845703125001], + [102.27656250000004, 50.76870117187502], + [102.23505859375004, 50.79121093749998], + [102.21503906250004, 50.82944335937506], + [102.22617187500006, 50.90146484374998], + [102.21025390625002, 50.97431640624998], + [102.19453125000004, 51.05068359375002], + [102.15195312500006, 51.107519531250034], + [102.14238281250007, 51.21606445312503], + [102.16005859375005, 51.260839843750006], + [102.1556640625, 51.31376953124996], + [102.1115234375001, 51.353466796874955], + [101.97919921875004, 51.382226562499966], + [101.82119140625, 51.421044921874966], + [101.57089843750006, 51.46718750000005], + [101.46435546874997, 51.47148437500002], + [101.38125, 51.45263671875], + [101.30449218750007, 51.474755859374994], + [101.22324218750012, 51.51328125], + [101.0853515625, 51.553027343750045], + [100.90361328125002, 51.604248046875], + [100.71074218750007, 51.66157226562504], + [100.53623046875006, 51.713476562500034], + [100.46894531250004, 51.72607421875003], + [100.23037109375, 51.729833984375006], + [100.0345703125, 51.73710937499996], + [99.92167968750002, 51.755517578124994], + [99.78789062500002, 51.827539062499994], + [99.71923828124997, 51.87163085937502], + [99.61289062500006, 51.89252929687501], + [99.53232421875006, 51.89990234375], + [99.40703125000002, 51.92353515625001], + [99.176171875, 51.998876953125006], + [99.09140625000006, 52.034863281249955], + [99.03427734375006, 52.03540039062497], + [98.95810546875006, 52.101708984374994], + [98.89316406250006, 52.11728515625006], + [98.84863281249997, 52.07006835937503], + [98.80253906250007, 51.95747070312501], + [98.76015625, 51.90507812499999], + [98.64052734375005, 51.80117187500005], + [98.3527343750001, 51.717626953125006], + [98.303125, 51.674267578124955], + [98.27685546875003, 51.634570312500045], + [98.2375, 51.57841796874996], + [98.21992187500004, 51.50561523437506], + [98.18466796875006, 51.485742187499994], + [98.103125, 51.483544921874994], + [98.03759765625003, 51.449951171875], + [97.98916015625, 51.37705078124998], + [97.94687500000012, 51.34843750000002], + [97.9232421875, 51.28046875000001], + [97.92734375000012, 51.250732421875], + [97.91787109375, 51.21787109375006], + [97.91083984375004, 51.165185546874966], + [97.83574218750002, 51.05166015625002], + [97.82529296875012, 50.985253906249994], + [97.8561523437501, 50.943359375], + [97.91982421875, 50.88715820312501], + [97.95312, 50.85517578124998], + [97.96416015625007, 50.81767578124996], + [97.96191406249997, 50.769140625000034], + [98.0011718750001, 50.70205078125005], + [98.02978515625003, 50.64462890624998], + [98.07890625000002, 50.60380859375002], + [98.14501953124997, 50.56855468750001], + [98.22050781250007, 50.55717773437502], + [98.2794921875001, 50.53325195312502], + [98.29267578125004, 50.486962890624994], + [98.27734375000003, 50.42299804687502], + [98.25029296875002, 50.30244140624998], + [98.2, 50.22768554687502], + [98.17011718750004, 50.18056640625002], + [98.12197265625, 50.106591796874966], + [98.10341796875005, 50.077832031249955], + [98.00390625000003, 50.01425781249998], + [97.93662109375006, 49.99677734374998], + [97.85390625, 49.94677734375], + [97.785546875, 49.94453124999998], + [97.72070312499997, 49.94462890625002], + [97.65097656250006, 49.93359374999997], + [97.58935546875003, 49.911474609375006], + [97.54082031250007, 49.843115234375034], + [97.418359375, 49.773046875000034], + [97.35976562500005, 49.741455078125], + [97.20859375000006, 49.73081054687506], + [97.13691406250004, 49.76171875000006], + [97.09765625000003, 49.80502929687498], + [97.04912109375002, 49.82988281249999], + [96.98574218750005, 49.88281250000003], + [96.71171875000002, 49.91157226562501], + [96.64023437500012, 49.897851562499994], + [96.59843750000002, 49.87841796875003], + [96.54326171875007, 49.892529296874955], + [96.50576171875005, 49.91870117187506], + [96.46640625000012, 49.91152343750002], + [96.38115234375007, 49.89604492187496], + [96.31503906250012, 49.90112304687503], + [96.22968750000004, 49.95410156249997], + [96.11171875, 49.98247070312499], + [96.06552734375006, 49.99873046875001], + [96.01855468750003, 49.99877929687503], + [95.98955078125007, 49.973583984374955], + [95.9357421875001, 49.960009765625045], + [95.89941406249997, 49.990576171875034], + [95.851953125, 50.01293945312497], + [95.78935546875002, 50.0125], + [95.70781250000002, 49.96601562500001], + [95.56718750000007, 49.94384765625003], + [95.52265625000004, 49.911230468750034], + [95.441796875, 49.91552734375003], + [95.38564453125005, 49.94121093750002], + [95.32949218750005, 49.94414062499999], + [95.1662109375001, 49.94384765625003], + [95.11142578125012, 49.935449218749994], + [95.04433593750005, 49.961572265624994], + [95.01289062500004, 50.00825195312501], + [94.93027343750006, 50.04375], + [94.8112304687501, 50.04819335937506], + [94.71806640625002, 50.04326171875002], + [94.67548828125004, 50.02807617187506], + [94.61474609375003, 50.02373046874996], + [94.56464843750004, 50.08793945312499], + [94.496875, 50.13281249999997], + [94.45849609374997, 50.16572265625001], + [94.40019531250002, 50.17963867187501], + [94.35468750000004, 50.221826171874994], + [94.346875, 50.30341796875001], + [94.31933593749997, 50.40488281249998], + [94.28701171875005, 50.511376953124994], + [94.25107421875006, 50.55639648437503], + [94.07578125000006, 50.572851562500006], + [93.98984375000006, 50.56884765625], + [93.79541015624997, 50.57763671875], + [93.66201171875, 50.58369140624998], + [93.62558593750012, 50.585546875], + [93.50107421875006, 50.59746093749996], + [93.38681640625006, 50.60849609374998], + [93.27050781249997, 50.615576171875006], + [93.22255859375, 50.606542968750034], + [93.103125, 50.60390625000002], + [93.00986328125006, 50.65454101562503], + [92.97070312500003, 50.7125], + [92.96357421875004, 50.74492187499999], + [92.94130859375005, 50.77822265625002], + [92.85644531250003, 50.78911132812502], + [92.77929687500003, 50.778662109375006], + [92.738671875, 50.71093749999997], + [92.68134765625004, 50.683203125], + [92.6266601562501, 50.68828124999999], + [92.57890625000002, 50.725439453125006], + [92.48642578125012, 50.76508789062501], + [92.42636718750006, 50.803076171875006], + [92.35478515625002, 50.86416015625002], + [92.29580078125, 50.84980468750004], + [92.27900390625004, 50.81220703125001], + [92.2653320312501, 50.77519531250002], + [92.19238281249997, 50.700585937499994], + [92.10400390625003, 50.691992187500034], + [91.95654296874997, 50.697607421875034], + [91.80429687500006, 50.693603515625], + [91.70634765625002, 50.66552734374997], + [91.63417968750005, 50.615136718749994], + [91.596875, 50.575537109375034], + [91.52167968750004, 50.56201171875003], + [91.4464843750001, 50.52216796874998], + [91.41503906249997, 50.46801757812506], + [91.34082031249997, 50.470068359375034], + [91.30058593750002, 50.46337890625], + [91.2337890625, 50.45239257812497], + [91.06279296875007, 50.42260742187503], + [91.02158203125012, 50.41547851562501], + [90.9171875000001, 50.36416015625002], + [90.83808593750004, 50.32373046874997], + [90.76074218749997, 50.30595703124999], + [90.71435546874997, 50.25942382812502], + [90.65507812500007, 50.22236328125001], + [90.51689453125007, 50.21333007812504], + [90.36484375000006, 50.166894531249994], + [90.31132812500002, 50.15117187499999], + [90.22451171875, 50.11669921874997], + [90.1037109375001, 50.10332031250002], + [90.05371093750003, 50.09375], + [90.00498046875012, 50.06928710937501], + [89.97734375000002, 49.98432617187501], + [89.87802734375012, 49.95351562500005], + [89.74423828125012, 49.948095703125006], + [89.64384765625002, 49.90302734374998], + [89.63427734375003, 49.82329101562499], + [89.66953125000006, 49.75048828124997], + [89.65410156250007, 49.71748046875001], + [89.57919921875006, 49.69970703125003], + [89.475, 49.66054687500005], + [89.39560546875006, 49.61152343750001], + [89.29921875000005, 49.61113281250002], + [89.24394531250007, 49.62705078125006], + [89.20292968750007, 49.59570312499997], + [89.17998046875002, 49.5322265625], + [89.10947265625012, 49.50136718750002], + [89.00839843750006, 49.472802734374994], + [88.97060546875, 49.483740234375006], + [88.94541015625012, 49.50766601562498], + [88.90019531250002, 49.53969726562502], + [88.86386718750006, 49.52763671874996], + [88.86035156249997, 49.48154296874998], + [88.83164062500012, 49.44843749999998], + [88.74785156250007, 49.44624023437498], + [88.68271484375006, 49.46455078124998], + [88.633203125, 49.486132812500045], + [88.5443359375, 49.48256835937502], + [88.45244140625002, 49.47270507812496], + [88.39335937500007, 49.48286132812498], + [88.33779296875005, 49.47255859375002], + [88.19257812500004, 49.451708984375045], + [88.13554687500002, 49.38149414062502], + [88.13427734374997, 49.29843749999998], + [88.11572265624997, 49.25629882812501], + [88.0285156250001, 49.219775390625045], + [87.98808593750002, 49.186914062499994], + [87.9347656250001, 49.16455078124997], + [87.81826171875005, 49.16210937500003], + [87.81425781250002, 49.162304687499955], + [87.7625, 49.16582031249996], + [87.668359375, 49.147216796875], + [87.5765625, 49.13237304687499], + [87.5158203125001, 49.122412109375006], + [87.47617187500006, 49.09145507812502], + [87.41669921875004, 49.07661132812501], + [87.32285156250012, 49.085791015625006], + [87.29687, 49.14765625000001], + [87.23369140625007, 49.216162109375006], + [87.14804687500012, 49.239794921875045], + [87.07060546875007, 49.25458984375004], + [87.00097656249997, 49.28730468750004], + [86.95292968750007, 49.32207031250002], + [86.81210937500006, 49.487890625000034], + [86.71435546874997, 49.55859375000006], + [86.62646484374997, 49.56269531250001], + [86.61425781249997, 49.60971679687498], + [86.66533203125002, 49.656689453124955], + [86.7306640625001, 49.69555664062497], + [86.72871093750004, 49.748681640624966], + [86.67548828125004, 49.77729492187501], + [86.61015625000007, 49.76914062500006], + [86.52226562500007, 49.70776367187497], + [86.41796874999997, 49.63847656249999], + [86.29238281250005, 49.5875], + [86.24218749999997, 49.546337890624955], + [86.1808593750001, 49.49931640624996], + [86.09296875000004, 49.50546874999998], + [86.02958984375007, 49.50341796875], + [85.97441406250002, 49.49931640624996], + [85.93359374999997, 49.550439453124994], + [85.88046875000006, 49.556542968749994], + [85.49843750000005, 49.605371093749994], + [85.37158203124997, 49.62392578125005], + [85.29189453125, 49.599462890625034], + [85.2326171875001, 49.61582031249998], + [85.21015625000004, 49.66484375000002], + [85.13652343750002, 49.75073242187503], + [85.07646484375007, 49.821630859375006], + [85.00078125000002, 49.894140625000034], + [84.97519531250012, 49.951074218749994], + [84.99970703125004, 50.01030273437499], + [84.9894531250001, 50.061425781249994], + [84.9240234375001, 50.087988281250006], + [84.83896484375006, 50.09130859375006], + [84.60732421875005, 50.20239257812503], + [84.49902343750003, 50.21875], + [84.40097656250012, 50.239160156249966], + [84.32324218749997, 50.239160156249966], + [84.25781249999997, 50.28823242187502], + [84.19453125000004, 50.437451171874955], + [84.1759765625001, 50.52055664062502], + [84.09931640625004, 50.60473632812503], + [84.00234375, 50.67685546875006], + [83.94511718750007, 50.774658203125], + [83.859765625, 50.81801757812505], + [83.71777343750003, 50.88715820312501], + [83.58144531250005, 50.935742187499955], + [83.35732421875005, 50.99458007812504], + [83.27373046875007, 50.99458007812504], + [83.16025390625012, 50.98920898437501], + [83.09277343749997, 50.96059570312505], + [83.0192382812501, 50.89726562500002], + [82.91904296875006, 50.89311523437496], + [82.76083984375012, 50.89335937500002], + [82.71855468750002, 50.869482421875034], + [82.69296875000012, 50.82631835937505], + [82.61171875, 50.77148437499997], + [82.49394531250007, 50.72758789062499], + [82.32636718750004, 50.74189453124998], + [82.21191406250003, 50.71943359375004], + [82.098046875, 50.710839843749966], + [81.93369140625006, 50.766357421875], + [81.75205078125012, 50.76440429687503], + [81.63388671875012, 50.739111328125034], + [81.46591796875006, 50.73984375], + [81.43144531250007, 50.771142578124994], + [81.4515625, 50.82368164062504], + [81.4376953125001, 50.87104492187501], + [81.41015624999997, 50.90976562499998], + [81.38828125000006, 50.95649414062501], + [81.31914062500002, 50.96640624999998], + [81.12460937500006, 50.94628906249997], + [81.0714843750001, 50.96875], + [81.0775390625, 51.01494140625002], + [81.11240234375006, 51.07236328124998], + [81.14101562500005, 51.146582031250006], + [81.12724609375002, 51.19106445312502], + [81.02675781250005, 51.185693359374994], + [80.965625, 51.189794921875006], + [80.93408203124997, 51.24277343749998], + [80.87734375, 51.28144531250004], + [80.81308593750012, 51.28349609375002], + [80.73525390625, 51.29340820312498], + [80.65048828125006, 51.27734375], + [80.60546875000003, 51.22421875], + [80.55068359375005, 51.21660156249996], + [80.49101562500007, 51.20175781250006], + [80.44804687500002, 51.18334960937503], + [80.42148437500012, 51.136376953124966], + [80.43359374999997, 51.092626953125034], + [80.45224609375006, 50.997607421875045], + [80.42363281250002, 50.94628906249997], + [80.34521484375003, 50.91909179687502], + [80.27041015625005, 50.92460937499999], + [80.22021484374997, 50.91176757812505], + [80.12724609375002, 50.85834960937498], + [80.08632812500005, 50.839990234374994], + [80.07207031250007, 50.807275390624994], + [80.06591796874997, 50.75820312500002], + [79.98623046875, 50.774560546874966], + [79.85966796875007, 50.955468749999966], + [79.71640625000006, 51.16000976562498], + [79.55429687500012, 51.37797851562499], + [79.46884765625012, 51.49311523437498], + [79.14873046875007, 51.86811523437501], + [78.99208984375005, 52.047412109375045], + [78.72148437500007, 52.35703125000006], + [78.47548828125005, 52.638427734375], + [78.19804687500002, 52.9296875], + [78.03349609375007, 53.09497070312503], + [77.85996093750006, 53.269189453124994], + [77.79941406250006, 53.317431640625045], + [77.70439453125007, 53.379150390625], + [77.46923828124997, 53.49877929687503], + [77.13242187500006, 53.670117187499955], + [76.820703125, 53.82265625000002], + [76.57568359374997, 53.94252929687502], + [76.51308593750005, 53.99321289062496], + [76.48476562500005, 54.02255859374998], + [76.45859375000012, 54.055273437500006], + [76.42207031250004, 54.11352539062506], + [76.42167968750007, 54.151513671874966], + [76.65458984375007, 54.14526367187503], + [76.70302734375, 54.18247070312506], + [76.78896484375, 54.321875], + [76.8373046875, 54.4423828125], + [76.75937500000012, 54.436865234375006], + [76.61552734375002, 54.387109375], + [76.53916015625012, 54.35107421875003], + [76.496484375, 54.335693359375], + [76.26660156249997, 54.31196289062498], + [76.14052734375, 54.25854492187503], + [75.88066406250007, 54.16796875000003], + [75.69287109374997, 54.114794921875045], + [75.6568359375, 54.10600585937502], + [75.43720703125004, 54.08964843749999], + [75.3981445312501, 54.06850585937502], + [75.39238281250007, 54.021728515625], + [75.37705078125006, 53.970117187499966], + [75.22021484374997, 53.89379882812506], + [75.0521484375, 53.82670898437496], + [74.98896484375004, 53.81923828125005], + [74.88681640625, 53.834033203125045], + [74.83417968750004, 53.82568359375003], + [74.68144531250007, 53.75439453124997], + [74.45195312500007, 53.64726562500002], + [74.43046875000002, 53.60371093750001], + [74.42929687500006, 53.550732421874955], + [74.40273437500005, 53.504443359375045], + [74.35156250000003, 53.487646484375006], + [74.27734375000003, 53.527734375], + [74.20996093749997, 53.57646484374996], + [74.06865234375002, 53.61142578124998], + [73.85898437500006, 53.61972656249998], + [73.7311523437501, 53.602783203125], + [73.64296875, 53.576269531250006], + [73.4699218750001, 53.468896484374994], + [73.40693359375004, 53.44755859374999], + [73.371875, 53.45439453124996], + [73.3619140625, 53.506201171875034], + [73.3268554687501, 53.54316406250001], + [73.28574218750006, 53.598388671875], + [73.30566406250003, 53.707226562499955], + [73.39941406250003, 53.81147460937498], + [73.55419921875003, 53.868310546874994], + [73.67890625000004, 53.92944335937503], + [73.71552734375004, 53.996191406250034], + [73.71240234375003, 54.04238281250002], + [73.66640625000005, 54.06347656249997], + [73.61796875000007, 54.06738281249997], + [73.58994140625, 54.04497070312502], + [73.50566406250002, 53.99931640624996], + [73.38066406250002, 53.96284179687498], + [73.27656250000004, 53.95561523437502], + [73.22988281250005, 53.957812500000045], + [73.1193359375001, 53.98076171874999], + [72.91406249999997, 54.10732421875002], + [72.74101562500002, 54.12451171874997], + [72.62226562500004, 54.13432617187502], + [72.5827148437501, 54.12158203125], + [72.56425781250007, 54.09042968750006], + [72.57558593750005, 54.05649414062498], + [72.59921875000006, 54.023046875], + [72.58593750000003, 53.99594726562498], + [72.53027343749997, 53.975781249999955], + [72.44677734375003, 53.94184570312498], + [72.40429687499997, 53.96445312500006], + [72.3830078125001, 54.05366210937501], + [72.38730468750006, 54.12304687500003], + [72.3294921875, 54.18144531250002], + [72.26914062500006, 54.27211914062502], + [72.18603515625003, 54.32563476562501], + [72.10537109375, 54.30844726562506], + [72.065625, 54.231640624999955], + [72.00449218750006, 54.20566406249998], + [71.8874023437501, 54.22148437500002], + [71.6771484375, 54.178027343750045], + [71.33642578125003, 54.15834960937502], + [71.09316406250005, 54.21220703124999], + [71.05273437499997, 54.26049804687497], + [71.15214843750007, 54.36406250000002], + [71.159765625, 54.45541992187498], + [71.15917968749997, 54.53862304687496], + [71.18554687500003, 54.59931640624998], + [71.12626953125002, 54.71503906250001], + [70.99179687500006, 54.95048828125002], + [70.91015624999997, 55.127978515625045], + [70.79033203125007, 55.261132812499994], + [70.73808593750007, 55.30517578125], + [70.48632812500003, 55.282373046874966], + [70.41718750000004, 55.25317382812506], + [70.371484375, 55.21225585937498], + [70.293359375, 55.18359375], + [70.18242187500002, 55.162451171875034], + [70.08740234375003, 55.17675781250003], + [69.98173828125007, 55.199072265625034], + [69.87021484375, 55.245654296875045], + [69.74023437499997, 55.307373046875], + [69.49326171875006, 55.356884765624955], + [69.24697265625005, 55.37250976562504], + [68.9772460937501, 55.389599609374955], + [68.8429687500001, 55.35834960937498], + [68.71289062499997, 55.30849609375005], + [68.5248046875, 55.20483398437497], + [68.43847656250003, 55.19443359374998], + [68.3019531250001, 55.18652343749997], + [68.20625, 55.16093750000002], + [68.2252929687501, 55.11523437500003], + [68.24404296875, 55.05244140625001], + [68.209375, 55.00302734374998], + [68.15585937500006, 54.97670898437505], + [68.07382812500006, 54.959570312500006], + [67.93994140624997, 54.95371093749998], + [67.82988281250002, 54.94355468750004], + [67.69335937499997, 54.872412109375034], + [67.48466796875002, 54.8544921875], + [67.25732421874997, 54.82880859375001], + [67.0983398437501, 54.788183593750006], + [66.75449218750006, 54.73789062500006], + [66.55537109375004, 54.715429687500006], + [66.22265624999997, 54.667382812499994], + [65.9546875, 54.659521484375006], + [65.9142578125001, 54.69331054687504], + [65.70781250000007, 54.61870117187502], + [65.476953125, 54.62329101562497], + [65.434375, 54.59331054687502], + [65.378125, 54.564453125], + [65.31591796874997, 54.55156250000002], + [65.23740234375006, 54.51606445312498], + [65.19218750000007, 54.44111328124998], + [65.1578125, 54.364404296874994], + [65.08837890624997, 54.340185546875034], + [64.99541015625002, 54.36875], + [64.92675781250003, 54.396630859374994], + [64.80927734375004, 54.36855468750005], + [64.64990234374997, 54.35224609375001], + [64.52509765625004, 54.36215820312498], + [64.46123046875002, 54.38417968750002], + [64.19941406250004, 54.347412109375], + [64.06289062500005, 54.30292968750001], + [64.03740234375002, 54.27973632812498], + [64.00390625000003, 54.26708984374997], + [63.84707031250005, 54.23647460937505], + [63.72119140624997, 54.24501953125002], + [63.70136718750004, 54.24321289062499], + [63.58203124999997, 54.22192382812503], + [63.413671875, 54.183203125000034], + [63.2926757812501, 54.17045898437502], + [63.19130859375005, 54.17104492187505], + [63.12656250000006, 54.13925781250006], + [63.0739257812501, 54.10522460937506], + [62.632714843749994, 54.06928710937501], + [62.58828125, 54.04443359375], + [62.49902343750003, 54.01318359375003], + [62.0402343750001, 54.00263671875001], + [62.00234375, 53.97993164062501], + [61.985644531250074, 53.95439453124996], + [61.92871093750003, 53.94648437500004], + [61.59814453124997, 53.994921875000045], + [61.33369140625004, 54.04926757812501], + [61.231054687500006, 54.01948242187498], + [61.14375, 53.96381835937501], + [61.11318359375005, 53.88247070312505], + [61.11318359375005, 53.81298828125003], + [61.11318359375005, 53.75346679687496], + [61.073535156250074, 53.71044921875], + [60.9855468750001, 53.65742187500004], + [60.97949218749997, 53.62172851562505], + [61.098535156249994, 53.58310546874998], + [61.247949218749994, 53.55097656250001], + [61.3361328125001, 53.56518554687497], + [61.40996093750002, 53.587060546874994], + [61.47412109374997, 53.58027343750004], + [61.51914062500006, 53.55449218750002], + [61.53496093750002, 53.52329101562506], + [61.5265625000001, 53.50156249999998], + [61.49853515624997, 53.48466796875002], + [61.40097656250006, 53.455810546875], + [61.31162109375006, 53.465722656249966], + [61.22890625, 53.445898437500006], + [61.18593750000005, 53.40620117187501], + [61.16279296875004, 53.33676757812498], + [61.19921874999997, 53.28715820312502], + [61.3109375, 53.27519531249996], + [61.436816406250074, 53.23940429687505], + [61.57617187499997, 53.22246093749996], + [61.65986328125004, 53.22846679687504], + [61.76621093750006, 53.173925781250034], + [62.01464843750003, 53.10786132812498], + [62.08105468749997, 53.05742187500002], + [62.08271484375004, 53.00541992187499], + [62.03710937499997, 52.96611328124996], + [61.97421875000006, 52.94375], + [61.888574218749994, 52.955908203125034], + [61.719335937500006, 52.96938476562502], + [61.53359375, 52.978515625], + [61.40078125000005, 52.99599609375002], + [61.20693359375005, 52.98906250000002], + [61.047460937500006, 52.97246093750002], + [61.0065429687501, 52.93334960937506], + [60.944726562499994, 52.86015625], + [60.8932617187501, 52.819433593750006], + [60.80234375000006, 52.74472656249998], + [60.77441406249997, 52.67578124999997], + [60.82128906250003, 52.56982421874997], + [60.97949218749997, 52.394775390625], + [60.99453125000005, 52.33686523437504], + [60.937597656250006, 52.28056640625002], + [60.82841796875002, 52.2333984375], + [60.6703125, 52.150830078124955], + [60.499316406250074, 52.146337890625034], + [60.4254882812501, 52.12558593750006], + [60.23369140625002, 52.02451171874998], + [60.06552734375006, 51.976464843749966], + [60.03027343749997, 51.93325195312505], + [60.067480468750006, 51.89062], + [60.280371093750006, 51.83461914062502], + [60.3875, 51.77299804687499], + [60.418359375, 51.703906250000045], + [60.464746093749994, 51.651171875000045], + [60.63037109375003, 51.616943359375], + [60.97353515625005, 51.53706054687498], + [60.99335937500004, 51.528710937499966], + [61.0148437500001, 51.49238281250001], + [61.363085937500074, 51.44189453125003], + [61.41132812500004, 51.41474609375001], + [61.55468750000003, 51.32460937500005], + [61.585058593750006, 51.22968749999998], + [61.51220703124997, 51.13701171875002], + [61.46503906250004, 50.99023437500003], + [61.38945312500002, 50.86103515625001], + [61.22685546875002, 50.77480468750002], + [60.94228515625005, 50.69550781250004], + [60.637988281250074, 50.66372070312505], + [60.50849609375004, 50.669189453125], + [60.42480468749997, 50.67915039062498], + [60.28808593750003, 50.70415039062502], + [60.18671875000004, 50.76977539062497], + [60.11210937500002, 50.834179687499955], + [60.05859374999997, 50.850292968749955], + [60.00527343750005, 50.839697265625006], + [59.95517578125006, 50.79926757812504], + [59.887792968750006, 50.69018554687503], + [59.812402343749994, 50.58203125], + [59.75117187500004, 50.54394531249997], + [59.523046875, 50.492871093749955], + [59.49785156250002, 50.511083984375034], + [59.52392578125003, 50.58281249999999], + [59.49511718750003, 50.60429687500002], + [59.4523437500001, 50.62041015625002], + [59.17089843749997, 50.64790039062501], + [59.064355468749994, 50.66821289062497], + [58.98486328124997, 50.676123046875006], + [58.88369140625005, 50.694433593750006], + [58.8140625, 50.737207031249994], + [58.66455078125003, 50.868310546874994], + [58.54746093750006, 50.971044921875034], + [58.359179687500074, 51.063818359375034], + [58.18847656250003, 51.08173828125004], + [58.17470703125005, 51.07226562500006], + [58.0451171875001, 51.06884765624997], + [57.83886718750003, 51.091650390625006], + [57.82890625000002, 51.089013671874994], + [57.76484375000004, 51.046875], + [57.71699218750004, 50.98095703125003], + [57.65380859374997, 50.925146484375006], + [57.55781250000004, 50.89555664062502], + [57.44218750000002, 50.88886718749998], + [57.3125, 50.94653320312503], + [57.179003906250074, 51.03603515625005], + [57.01171874999997, 51.06518554687503], + [56.84960937499997, 51.04555664062502], + [56.79033203125002, 51.031591796875034], + [56.62021484375006, 50.980859375], + [56.56689453124997, 51.004492187500006], + [56.49140625000004, 51.01953124999997], + [56.325585937499994, 50.93608398437502], + [56.14394531250005, 50.84462890625005], + [56.10449218749997, 50.776269531249966], + [56.049707031249994, 50.713525390624966], + [55.92919921874997, 50.65375976562498], + [55.79765625000002, 50.60205078125], + [55.68623046875004, 50.582861328125006], + [55.54228515625002, 50.60180664062506], + [55.361132812500074, 50.665283203125], + [55.195214843749994, 50.744726562500034], + [55.01484375000004, 50.86977539062502], + [54.867968750000074, 50.94135742187504], + [54.72714843750006, 50.998095703125045], + [54.64160156250003, 51.011572265625034], + [54.5729492187501, 50.99023437500003], + [54.54609375000004, 50.946044921875], + [54.565625, 50.91127929687502], + [54.60625, 50.87988281250003], + [54.6378906250001, 50.78105468749996], + [54.65, 50.66015625000003], + [54.636132812499994, 50.59160156250002], + [54.59619140625003, 50.55068359375002], + [54.555273437500006, 50.535791015624994], + [54.51738281250002, 50.54116210937502], + [54.47148437500002, 50.58378906250002], + [54.44335937499997, 50.673925781250006], + [54.42148437500006, 50.78032226562499], + [54.29785156249997, 50.91406249999997], + [54.1911132812501, 50.995703125], + [54.139746093750006, 51.04077148437503], + [54.04150390624997, 51.11518554687501], + [53.956835937500074, 51.16118164062496], + [53.776464843750006, 51.213720703125006], + [53.688085937500006, 51.251806640625034], + [53.53466796875003, 51.39956054687502], + [53.448632812499994, 51.444531249999955], + [53.33808593750004, 51.48237304687504], + [53.2472656250001, 51.49360351562501], + [53.22734375000002, 51.484960937500034], + [53.038378906250074, 51.463720703125034], + [52.902636718750074, 51.466943359374994], + [52.8205078125001, 51.49458007812504], + [52.7350585937501, 51.497900390625006], + [52.728125, 51.498144531250034], + [52.63515625, 51.47954101562499], + [52.617773437500006, 51.48076171874996], + [52.57119140625005, 51.481640624999955], + [52.496191406250006, 51.512158203124955], + [52.42304687500004, 51.59423828125], + [52.33105468749997, 51.681298828124966], + [52.219140625, 51.709375], + [52.00712890625002, 51.67270507812498], + [51.77539062499997, 51.55424804687502], + [51.60908203125004, 51.483984375], + [51.47343750000002, 51.482031250000034], + [51.39599609374997, 51.47128906249998], + [51.344531250000074, 51.47534179687503], + [51.30107421875002, 51.49741210937498], + [51.29072265625004, 51.540185546874994], + [51.26992187500005, 51.59448242187503], + [51.16347656250005, 51.6474609375], + [51.01787109375002, 51.68164062500003], + [50.88242187500006, 51.719189453124955], + [50.79394531249997, 51.729199218749955], + [50.75615234375002, 51.675146484375034], + [50.64394531250005, 51.58916015625002], + [50.5163085937501, 51.50561523437506], + [50.3537109375001, 51.369726562500006], + [50.3092773437501, 51.321582031250045], + [50.246875, 51.28950195312498], + [50.104882812499994, 51.25458984374998], + [49.93232421875004, 51.19716796875002], + [49.82226562499997, 51.131884765625045], + [49.66630859375002, 51.10229492187506], + [49.49804687500003, 51.08359375000006], + [49.424609375000074, 51.027001953124994], + [49.379492187500006, 50.934667968750006], + [49.32343750000004, 50.851708984374966], + [49.05869140625006, 50.72607421875006], + [48.9137695312501, 50.64458007812496], + [48.80839843750002, 50.60131835937503], + [48.73476562500005, 50.60688476562501], + [48.655175781249994, 50.619873046875], + [48.625097656250006, 50.61269531250005], + [48.66601562499997, 50.550341796875045], + [48.700488281250074, 50.35375976562506], + [48.749414062499994, 50.22846679687501], + [48.784765625, 50.15644531249998], + [48.81796875, 50.099853515625], + [48.84326171875003, 50.01313476562501], + [48.81025390625004, 49.96240234375], + [48.7589843750001, 49.92832031250006], + [48.6, 49.87470703124998], + [48.43427734375004, 49.828515624999966], + [48.33496093750003, 49.858251953125006], + [48.22480468750004, 49.93193359374999], + [48.1813476562501, 49.97001953125002], + [48.06074218750004, 50.09360351562498], + [47.84960937500003, 50.28232421875006], + [47.7057617187501, 50.37797851562502], + [47.59960937499997, 50.41357421874997], + [47.50361328125004, 50.402734375], + [47.42919921874997, 50.35795898437502], + [47.37636718750005, 50.31811523437497], + [47.32646484375002, 50.273535156250034], + [47.29472656250002, 50.21748046874998], + [47.29765625000002, 50.14023437499998], + [47.29521484375002, 50.05849609375002], + [47.24833984375002, 50.00087890625002], + [47.12958984375004, 49.939062500000034], + [46.99199218750002, 49.85273437500004], + [46.889550781249994, 49.69697265625001], + [46.82314453125005, 49.502246093750045], + [46.80205078125002, 49.36708984375002], + [46.852929687499994, 49.30385742187502], + [46.95341796875002, 49.252587890624966], + [47.018164062500006, 49.19990234374998], + [47.031347656250006, 49.150292968749994], + [47.014257812500006, 49.09833984374998], + [46.962207031250074, 49.03833007812503], + [46.852929687499994, 48.969628906249966], + [46.70263671875003, 48.80556640625002], + [46.609179687500074, 48.573876953124994], + [46.660937500000074, 48.41225585937502], + [46.853125, 48.32358398437498], + [47.004296875, 48.28447265625002], + [47.06464843750004, 48.23247070312499], + [47.11904296875005, 48.12700195312499], + [47.1115234375001, 48.02011718749998], + [47.09326171875003, 47.947705078124955], + [47.13076171875005, 47.87675781249999], + [47.202050781249994, 47.79248046875006], + [47.292382812499994, 47.74091796875004], + [47.38730468750006, 47.768652343750006], + [47.48193359374997, 47.80390624999998], + [47.600195312500006, 47.78999023437498], + [47.934667968750006, 47.76069335937498], + [48.109960937500006, 47.74541015624996], + [48.16699218750003, 47.70878906249996], + [48.27568359375002, 47.589941406250006], + [48.41308593749997, 47.45649414062498], + [48.55253906250002, 47.32099609375001], + [48.600683593750006, 47.262304687500034], + [48.71435546874997, 47.10048828125002], + [48.83183593750002, 46.954931640625034], + [48.959375, 46.77460937499998], + [48.950292968750006, 46.72578124999998], + [48.883593750000074, 46.705419921875006], + [48.77636718749997, 46.71035156250005], + [48.6935546875001, 46.73681640625], + [48.647070312500006, 46.75869140625002], + [48.60527343750002, 46.76591796874999], + [48.558398437500074, 46.75712890624999], + [48.51855468749997, 46.73432617187504], + [48.50234375000005, 46.69863281250005], + [48.509179687499994, 46.64995117187499], + [48.54121093750004, 46.60561523437502], + [48.586035156250006, 46.57709960937498], + [48.610156250000074, 46.566455078125045], + [48.774316406249994, 46.50795898437502], + [48.95898437499997, 46.44213867187503], + [49.18427734375004, 46.34882812500001], + [49.232226562500074, 46.33715820312503], + [49.245898437500074, 46.291601562500006], + [49.12548828124997, 46.28173828125003], + [49.110644531250074, 46.22846679687501], + [49.07958984375003, 46.189208984375], + [48.809960937499994, 46.10048828125005], + [48.74257812500005, 46.10073242187502], + [48.683691406250006, 46.08618164062497], + [48.687304687500074, 46.02875976562501], + [48.703417968750074, 45.97622070312505], + [48.74960937500006, 45.920556640624994], + [48.72958984375006, 45.896826171875034], + [48.6896484375001, 45.88886718750001], + [48.6374023437501, 45.90576171875], + [48.58906250000004, 45.93486328124996], + [48.53730468750004, 45.94213867187503], + [48.4870117187501, 45.93486328124996], + [48.25761718750002, 45.77778320312504], + [48.15917968750003, 45.73701171874998], + [48.052832031250006, 45.72099609375002], + [47.83017578125006, 45.66303710937501], + [47.763964843750074, 45.66596679687498], + [47.70107421875005, 45.68618164062502], + [47.649804687499994, 45.65673828124997], + [47.63330078124997, 45.58403320312499], + [47.57402343750002, 45.63427734375003], + [47.50839843750006, 45.67416992187506], + [47.479394531249994, 45.687597656250034], + [47.46328125, 45.67968750000003], + [47.524218750000074, 45.60170898437505], + [47.5294921875001, 45.530224609374955], + [47.51455078125005, 45.49091796875004], + [47.488671875, 45.455078125], + [47.454492187499994, 45.433056640624955], + [47.41308593749997, 45.421044921874994], + [47.39111328124997, 45.294775390625034], + [47.3512695312501, 45.21772460937498], + [47.296191406250074, 45.14946289062502], + [47.22148437500002, 45.024267578125006], + [47.161523437499994, 44.969628906249966], + [47.11474609374997, 44.905957031249955], + [47.083789062500074, 44.816992187500034], + [47.03925781250004, 44.83789062500003], + [47.00292968750003, 44.876074218750006], + [46.983691406250074, 44.82558593750002], + [46.95742187500005, 44.78256835937506], + [46.841210937499994, 44.71826171875], + [46.755273437499994, 44.656542968750045], + [46.71611328125002, 44.560693359374966], + [46.7072265625001, 44.503320312499994], + [46.7208984375001, 44.45166015625006], + [46.753027343750006, 44.42065429687503], + [46.9157226562501, 44.387158203124955], + [47.02363281250004, 44.34326171875], + [47.12265625000006, 44.26166992187498], + [47.22988281250005, 44.19238281249997], + [47.30703125000005, 44.103125], + [47.36152343750004, 43.99335937500004], + [47.42919921874997, 43.77988281250006], + [47.462792968749994, 43.55502929687498], + [47.56259765625006, 43.83466796875004], + [47.64648437500003, 43.88461914062498], + [47.62783203125005, 43.805957031250045], + [47.56796875, 43.684960937499994], + [47.5089843750001, 43.50971679687498], + [47.48984375, 43.381689453125034], + [47.511621093749994, 43.27075195312497], + [47.5128906250001, 43.21875], + [47.463183593750074, 43.03505859375002], + [47.48886718750006, 42.99975585937503], + [47.52900390625004, 42.967138671875034], + [47.63486328125006, 42.90346679687502], + [47.70908203125006, 42.81093750000002], + [47.72773437500004, 42.680712890625045], + [47.7697265625001, 42.644775390625], + [47.82236328125006, 42.61347656250001], + [48.080175781250006, 42.35371093750004], + [48.22861328125006, 42.18095703125002], + [48.30302734375002, 42.080224609374994], + [48.38378906250003, 41.95341796875002], + [48.426367187500006, 41.923974609374966], + [48.47675781250004, 41.905126953125034], + [48.572851562500006, 41.84448242187503], + [48.51865234375006, 41.77934570312499], + [48.43066406249997, 41.66333007812497], + [48.391406250000074, 41.60190429687498], + [48.29814453125002, 41.545019531250034], + [48.14228515625004, 41.48476562500002], + [48.05605468750005, 41.45869140625004], + [47.963671875000074, 41.33398437500003], + [47.861132812500074, 41.212744140625034], + [47.79101562499997, 41.19926757812502], + [47.59179687499997, 41.21811523437506], + [47.52060546875006, 41.22905273437496], + [47.31767578125002, 41.28242187500001], + [47.26113281250005, 41.315087890624994], + [47.2052734375001, 41.45561523437502], + [47.14257812500003, 41.51606445312501], + [47.06396484375003, 41.55468750000006], + [47.01015625000005, 41.5875], + [46.98779296875003, 41.62138671874996], + [46.93085937500004, 41.67041015625], + [46.82558593750005, 41.74340820312503], + [46.74931640625002, 41.812597656250006], + [46.690332031249994, 41.83134765625002], + [46.616015625000074, 41.80693359375002], + [46.57128906249997, 41.800097656250045], + [46.552148437499994, 41.812304687500045], + [46.537695312500006, 41.87041015624999], + [46.42988281250004, 41.890966796875006], + [46.41152343750005, 41.904638671875034], + [46.2677734375001, 41.960351562499994], + [46.21269531250002, 41.989892578124994], + [46.159765625, 41.99204101562498], + [46.04843750000006, 42.00874023437501], + [45.954003906249994, 42.03540039062503], + [45.9103515625001, 42.07070312500002], + [45.84599609375002, 42.109960937500034], + [45.72656250000003, 42.158886718749955], + [45.63857421875005, 42.20507812500003], + [45.63427734374997, 42.234716796875034], + [45.688378906249994, 42.35737304687498], + [45.72753906249997, 42.47504882812498], + [45.70527343750004, 42.49809570312496], + [45.655566406250074, 42.517675781250034], + [45.562890625, 42.53574218749998], + [45.34375, 42.52978515625003], + [45.20820312500004, 42.64824218749999], + [45.16025390625006, 42.675], + [45.07158203125002, 42.69414062500002], + [44.94335937499997, 42.73027343750002], + [44.870996093749994, 42.75639648437499], + [44.850488281249994, 42.746826171875], + [44.77109375000006, 42.61679687499998], + [44.691796875, 42.709619140624966], + [44.64433593750002, 42.734716796875034], + [44.57646484375002, 42.74848632812498], + [44.50585937500003, 42.748632812500006], + [44.329492187499994, 42.703515624999966], + [44.19970703125003, 42.65361328125002], + [44.10273437500004, 42.616357421874994], + [44.004687500000074, 42.59560546875002], + [43.95742187500005, 42.56655273437505], + [43.825976562500074, 42.571533203125], + [43.759863281250006, 42.593847656250006], + [43.738378906250006, 42.61699218750002], + [43.74990234375005, 42.65751953125002], + [43.79541015624997, 42.702978515625034], + [43.79873046875005, 42.72778320312503], + [43.78261718750005, 42.747021484374955], + [43.62304687500003, 42.80771484374998], + [43.5578125000001, 42.844482421875], + [43.34794921875002, 42.89667968749998], + [43.089160156250074, 42.9890625], + [43.00019531250004, 43.04965820312506], + [42.991601562499994, 43.09150390624998], + [42.890039062499994, 43.13261718749999], + [42.76064453125005, 43.169580078124966], + [42.660253906250006, 43.159082031249966], + [42.566015625, 43.15512695312506], + [42.41904296875006, 43.22421875], + [42.2796875, 43.22807617187499], + [42.1222656250001, 43.20732421875002], + [42.087792968749994, 43.19912109375005], + [42.05, 43.19013671874998], + [41.58056640624997, 43.21923828124997], + [41.460742187500074, 43.276318359374955], + [41.35820312500002, 43.33339843750005], + [41.08310546875006, 43.37446289062498], + [40.94199218750006, 43.41806640624998], + [40.801660156249994, 43.479931640624955], + [40.64804687500006, 43.53388671875004], + [40.51894531250005, 43.51201171875002], + [40.34228515625003, 43.54272460937497], + [40.150195312500074, 43.56977539062498], + [40.084570312500006, 43.553125], + [40.02373046875002, 43.48486328125], + [39.97832031250002, 43.419824218749966], + [39.873632812500006, 43.47280273437502], + [39.51669921875006, 43.727880859375034], + [39.329394531250074, 43.89726562499999], + [38.71728515624997, 44.28808593750003], + [38.635839843750006, 44.318017578124994], + [38.311816406250074, 44.374462890624955], + [38.18125, 44.41967773437503], + [37.851464843749994, 44.698828125000034], + [37.704882812500074, 44.66137695312506], + [37.5724609375001, 44.67084960937504], + [37.49511718750003, 44.69526367187504], + [37.41132812500004, 44.73535156250003], + [37.352343750000074, 44.78837890624999], + [37.28408203125005, 44.90502929687503], + [37.20478515625004, 44.97197265624999], + [36.944433593750006, 45.069580078125], + [36.65078125, 45.12646484375003], + [36.62763671875004, 45.15131835937504], + [36.61914062500003, 45.18549804687498], + [36.87304687499997, 45.25175781249999], + [36.941210937500074, 45.289697265624994], + [36.81103515625003, 45.34003906250001], + [36.761621093749994, 45.34833984375004], + [36.72041015625004, 45.371875], + [36.79375, 45.40971679687502], + [36.8659179687501, 45.42705078124999], + [36.977832031250074, 45.38359375000002], + [37.10351562500003, 45.302880859374994], + [37.21357421875004, 45.272314453125006], + [37.264257812500006, 45.31093750000005], + [37.6471679687501, 45.37719726562506], + [37.672949218750006, 45.42973632812499], + [37.67187, 45.488378906250034], + [37.634375, 45.48632812499997], + [37.609960937500006, 45.49951171875], + [37.61240234375006, 45.56469726562506], + [37.669238281250074, 45.65405273437506], + [37.84091796875006, 45.79956054687503], + [37.93310546875003, 46.001708984375], + [38.014257812500006, 46.047753906249966], + [38.073828125, 46.01708984375003], + [38.06972656250005, 45.969873046874994], + [38.07958984375003, 45.93481445312506], + [38.13281250000003, 46.00283203125005], + [38.18359374999997, 46.09482421875006], + [38.311816406250074, 46.095361328124994], + [38.40039062499997, 46.080029296874955], + [38.49228515625006, 46.09052734374998], + [38.315234375000074, 46.241943359375], + [38.07773437500006, 46.39433593749996], + [37.97753906249997, 46.38286132812502], + [37.913867187500074, 46.40649414062503], + [37.80957031249997, 46.532080078125034], + [37.766503906249994, 46.63613281250002], + [37.86738281250004, 46.63378906249997], + [37.9679687500001, 46.61801757812506], + [38.15947265625002, 46.69067382812503], + [38.22998046875003, 46.70126953125006], + [38.34345703125004, 46.678320312500006], + [38.50097656249997, 46.663671875000034], + [38.4879882812501, 46.73217773437506], + [38.43867187500004, 46.813085937500006], + [38.63076171875005, 46.87304687500006], + [38.80107421875002, 46.90615234375005], + [39.12675781250002, 47.02343750000006], + [39.2707031250001, 47.04414062500001], + [39.28906250000003, 47.070898437500034], + [39.29345703125003, 47.105761718750045], + [39.24453125, 47.199511718750045], + [39.195703125, 47.268847656250045], + [39.023730468750074, 47.27221679687503], + [38.928320312500006, 47.175683593749994], + [38.6681640625001, 47.143945312499994], + [38.55244140625004, 47.15034179687498], + [38.64433593750002, 47.21220703124996], + [38.7360351562501, 47.23583984374997], + [38.7619140625001, 47.261621093749994], + [38.57724609375006, 47.239111328125034], + [38.48476562500005, 47.17553710937503], + [38.21435546875003, 47.091455078124966], + [38.205859375000074, 47.13559570312498], + [38.20136718750004, 47.17524414062498], + [38.22119140624997, 47.21274414062498], + [38.2653320312501, 47.23696289062502], + [38.28076171874997, 47.259033203125], + [38.28076171874997, 47.276660156250045], + [38.24101562500002, 47.28769531249998], + [38.20800781249997, 47.296533203124994], + [38.20136718750004, 47.32080078124997], + [38.21240234374997, 47.3427734375], + [38.24326171875006, 47.373681640624994], + [38.2565429687501, 47.40893554687497], + [38.25878906250003, 47.47954101562499], + [38.287402343750074, 47.559179687500034], + [38.36884765625004, 47.609960937500006], + [38.51093750000004, 47.622412109375034], + [38.64062, 47.66591796875002], + [38.71894531250004, 47.71411132812497], + [38.82226562499997, 47.83701171874998], + [38.90029296875005, 47.85512695312502], + [39.0578125000001, 47.848486328125006], + [39.158496093750074, 47.83740234375006], + [39.391015625, 47.83374023437503], + [39.658496093750074, 47.84121093750002], + [39.7359375, 47.84482421875006], + [39.77871093750005, 47.88754882812506], + [39.77578125, 47.964453125], + [39.81396484375003, 48.03530273437505], + [39.88505859375002, 48.168359374999966], + [39.96103515625006, 48.23793945312502], + [39.95791015625005, 48.268896484375034], + [39.91816406250004, 48.28193359375001], + [39.866308593750006, 48.288427734375006], + [39.84746093750002, 48.30278320312502], + [39.849902343750074, 48.331933593749994], + [39.88984375000004, 48.360449218750034], + [39.882617187500074, 48.419091796874994], + [39.857519531250006, 48.484228515625034], + [39.8356445312501, 48.54277343749996], + [39.76542968750002, 48.571875], + [39.6447265625001, 48.591210937499966], + [39.67041015625003, 48.662451171875006], + [39.70458984375003, 48.739355468750034], + [39.75585937500003, 48.782080078125034], + [39.792871093749994, 48.807714843750034], + [39.90410156250002, 48.79375], + [39.98447265625006, 48.80737304687506], + [40.00361328125004, 48.82207031250002], + [39.989160156249994, 48.851416015625034], + [39.86376953124997, 48.877978515625045], + [39.753320312499994, 48.91445312500002], + [39.705664062500006, 48.95957031250006], + [39.68652343749997, 49.007910156250034], + [39.75947265625004, 49.03657226562501], + [39.889746093750006, 49.064062500000034], + [39.976367187500074, 49.12983398437501], + [40.07001953125004, 49.20029296874998], + [40.10878906250005, 49.251562500000034], + [40.12832031250005, 49.307226562500006], + [40.12617187500004, 49.36884765625004], + [40.05781250000004, 49.43154296875002], + [40.05781250000004, 49.49707031250006], + [40.09492187500004, 49.54267578125001], + [40.080664062500006, 49.576855468749955], + [40.03066406250005, 49.59672851562502], + [39.95849609374997, 49.59077148437504], + [39.87685546875005, 49.567675781250045], + [39.780566406250074, 49.57202148437503], + [39.62656250000006, 49.65068359374999], + [39.462792968749994, 49.72802734375003], + [39.36845703125002, 49.73066406250004], + [39.3029296875001, 49.742041015625034], + [39.24599609375005, 49.78193359374998], + [39.211816406249994, 49.833203124999955], + [39.17480468750003, 49.85595703124997], + [39.1149414062501, 49.84174804687501], + [39.027734375, 49.81840820312496], + [38.918359375, 49.82470703125], + [38.77666015625002, 49.88432617187499], + [38.64775390625002, 49.952880859375], + [38.55195312500004, 49.95458984375], + [38.45117187500003, 49.96406249999998], + [38.258593750000074, 50.05234375], + [38.2086914062501, 50.05146484375001], + [38.177539062500074, 50.02539062500003], + [38.16269531250006, 49.95454101562498], + [38.14677734375002, 49.93940429687501], + [38.1125, 49.92783203125006], + [38.046875, 49.92001953125006], + [37.95029296875006, 49.964208984375006], + [37.704199218750006, 50.10908203125004], + [37.60507812500006, 50.214941406250006], + [37.58232421875002, 50.291845703125034], + [37.501367187499994, 50.340722656249966], + [37.42285156249997, 50.411474609375006], + [37.343164062499994, 50.417626953124994], + [37.25488281250003, 50.39497070312501], + [37.1710937500001, 50.36088867187499], + [37.13125, 50.35151367187504], + [36.98847656250004, 50.33955078124998], + [36.75908203125002, 50.291845703125034], + [36.696386718750006, 50.246240234374994], + [36.619433593750074, 50.209228515625], + [36.55966796875006, 50.23486328124997], + [36.49980468750002, 50.28046875000004], + [36.3688476562501, 50.29682617187498], + [36.306054687499994, 50.28046875000004], + [36.2433593750001, 50.31176757812503], + [36.18945312499997, 50.367822265624994], + [36.1164062500001, 50.408544921875006], + [36.00781249999997, 50.41967773437497], + [35.890234375, 50.43710937499998], + [35.79619140625002, 50.40576171874997], + [35.67373046875005, 50.34599609374999], + [35.59111328125002, 50.36875], + [35.54550781250006, 50.43999023437502], + [35.48847656250004, 50.45991210937501], + [35.41162109375003, 50.539697265624994], + [35.39169921875006, 50.610937500000034], + [35.41162109375003, 50.64223632812502], + [35.4401367187501, 50.682080078124955], + [35.4401367187501, 50.72768554687502], + [35.41738281250005, 50.76757812499997], + [35.383203125, 50.79892578125006], + [35.34609375, 50.90429687500003], + [35.31474609375002, 50.94990234374998], + [35.30908203125003, 50.98691406249998], + [35.33476562500002, 51.02114257812502], + [35.31191406250005, 51.043896484374955], + [35.26914062500006, 51.04677734375002], + [35.19804687500002, 51.043896484374955], + [35.158105468749994, 51.06098632812498], + [35.11533203125006, 51.120849609375], + [35.092578125000074, 51.18066406250003], + [35.0640625, 51.203417968750045], + [34.99023437499997, 51.20175781250006], + [34.868554687499994, 51.189208984375], + [34.76035156250006, 51.16933593750002], + [34.71230468750005, 51.17221679687498], + [34.616796875, 51.20312], + [34.491015625000074, 51.23706054687506], + [34.234179687500074, 51.243798828124994], + [34.21386718750003, 51.25537109375006], + [34.22841796875005, 51.27685546875], + [34.280664062499994, 51.311669921874966], + [34.275, 51.340185546875006], + [34.229882812499994, 51.36323242187501], + [34.20654296875003, 51.419921875], + [34.20927734375002, 51.48408203125001], + [34.20087890625004, 51.553808593750006], + [34.14677734375002, 51.607958984375045], + [34.11542968750004, 51.64497070312501], + [34.12109375000003, 51.67915039062498], + [34.239160156249994, 51.69223632812506], + [34.37929687500005, 51.71650390625004], + [34.402734375, 51.74150390624996], + [34.397851562499994, 51.780419921874994], + [34.113085937500074, 51.979638671874994], + [34.01533203125004, 52.15595703125004], + [33.92207031250004, 52.25146484375003], + [33.81884765624997, 52.31562], + [33.735253906249994, 52.344775390625045], + [33.61337890625006, 52.33261718750006], + [33.4518554687501, 52.33378906250002], + [33.28710937500003, 52.35356445312496], + [33.14843750000003, 52.340429687500034], + [32.899707031250074, 52.25634765625006], + [32.806445312500074, 52.25263671875001], + [32.64541015625005, 52.27910156249999], + [32.507910156250006, 52.30854492187504], + [32.435449218749994, 52.307226562500034], + [32.39130859375004, 52.294824218749994], + [32.36298828125004, 52.272119140624994], + [32.28281250000006, 52.114013671875], + [32.21679687500003, 52.08295898437498], + [32.12226562500004, 52.05058593749996], + [32.041601562500006, 52.04501953124998], + [31.973828125000097, 52.04663085937506], + [31.875585937500063, 52.070898437500034], + [31.782421875000097, 52.09941406249996], + [31.763378906250097, 52.10107421875003], + [31.758593750000017, 52.125830078125034], + [31.690625, 52.22065429687498], + [31.64990234374997, 52.26220703125], + [31.60156250000003, 52.284814453124994], + [31.57734375000004, 52.31230468749999], + [31.57656250000005, 52.42602539062497], + [31.585546875, 52.532470703125], + [31.615917968750097, 52.546191406250045], + [31.526171875000017, 52.633007812499955], + [31.51943359375005, 52.69873046875003], + [31.56347656249997, 52.73144531250003], + [31.56484375, 52.75922851562501], + [31.53515624999997, 52.798242187499966], + [31.442773437499994, 52.86181640625003], + [31.35302734374997, 52.93344726562498], + [31.295117187500097, 52.98979492187499], + [31.25878906249997, 53.01669921875006], + [31.302929687500097, 53.060888671875006], + [31.364550781250017, 53.13896484375002], + [31.388378906250097, 53.18481445312503], + [31.41787109375005, 53.196044921875], + [31.56298828124997, 53.20249023437498], + [31.668261718750017, 53.20092773437503], + [31.74746093750005, 53.18417968749998], + [31.777441406250063, 53.146875], + [31.849707031250006, 53.106201171875], + [32.05546875000002, 53.08945312500006], + [32.14199218750005, 53.091162109375034], + [32.2506835937501, 53.12836914062498], + [32.42626953124997, 53.21059570312505], + [32.46933593750006, 53.270312500000045], + [32.578027343749994, 53.312402343749994], + [32.644433593749994, 53.32890624999999], + [32.70429687500004, 53.336328125], + [32.71025390625002, 53.371435546875034], + [32.70644531250005, 53.41943359375003], + [32.6857421875001, 53.44814453125002], + [32.469628906249994, 53.546972656250006], + [32.44238281249997, 53.579248046874994], + [32.425195312499994, 53.617285156250034], + [32.45097656250002, 53.6533203125], + [32.45019531249997, 53.69291992187499], + [32.20039062500004, 53.78125], + [31.99218750000003, 53.796875], + [31.82080078124997, 53.79194335937498], + [31.754199218750017, 53.81044921875002], + [31.783007812500017, 53.85498046875006], + [31.825292968750006, 53.93500976562501], + [31.837792968749994, 54.00078124999999], + [31.825976562500074, 54.030712890624955], + [31.79199218749997, 54.05590820312503], + [31.62841796874997, 54.111181640625006], + [31.403613281250017, 54.195947265624966], + [31.299121093750017, 54.29169921875001], + [31.24550781250005, 54.391650390625045], + [31.184765625000097, 54.452978515625006], + [31.074804687500063, 54.491796875], + [31.081933593749994, 54.51708984375003], + [31.154882812500063, 54.610937500000034], + [31.152148437500017, 54.625341796875034], + [31.12128906250004, 54.64848632812496], + [30.984179687500074, 54.695898437500034], + [30.79882812499997, 54.78325195312499], + [30.79101562499997, 54.806005859375006], + [30.804492187500074, 54.8609375], + [30.829882812500017, 54.91499023437498], + [30.866796875000063, 54.94072265624999], + [30.977734375000097, 55.05048828124998], + [30.977734375000097, 55.08779296875002], + [30.958886718749994, 55.13759765625005], + [30.87744140625003, 55.223437500000045], + [30.81445312499997, 55.27871093750002], + [30.81054687499997, 55.306982421875006], + [30.82099609375004, 55.330273437499955], + [30.86181640625003, 55.36040039062496], + [30.900585937500097, 55.397412109374955], + [30.908789062500006, 55.52534179687498], + [30.906835937500063, 55.57001953125004], + [30.882226562499994, 55.59638671874998], + [30.85595703124997, 55.607519531250034], + [30.80078125000003, 55.60112304687499], + [30.72167968749997, 55.62211914062499], + [30.66230468750004, 55.65546875000004], + [30.625585937500006, 55.666259765625], + [30.586718750000017, 55.700292968750006], + [30.475390625000074, 55.76879882812503], + [30.45625, 55.78681640624998], + [30.23359375000004, 55.84521484375006], + [30.04267578125004, 55.83642578125003], + [29.93701171874997, 55.84526367187499], + [29.881640625000074, 55.83232421875002], + [29.82392578125004, 55.79511718749998], + [29.74414062499997, 55.770410156249994], + [29.68457031249997, 55.769726562499955], + [29.630078125000097, 55.75117187499998], + [29.482226562500074, 55.6845703125], + [29.412988281249994, 55.72485351562506], + [29.35341796875005, 55.784375], + [29.373144531250063, 55.83471679687506], + [29.39794921874997, 55.88105468749998], + [29.39609375, 55.912207031250034], + [29.375, 55.938720703125], + [29.283007812500074, 55.967871093750006], + [29.08740234375, 56.02114257812502], + [29.03173828125003, 56.02177734374996], + [28.94746093750001, 56.00209960937505], + [28.794726562500074, 55.94257812499998], + [28.740820312500006, 55.95537109375002], + [28.69082031250005, 56.00263671874998], + [28.636914062500068, 56.06176757812503], + [28.563964843750057, 56.09199218749998], + [28.407031250000045, 56.089013671874994], + [28.39208984375003, 56.08671875], + [28.31630859375005, 56.05253906250002], + [28.284277343750006, 56.055908203125], + [28.14794921875003, 56.142919921875034], + [28.173339843750057, 56.19033203125002], + [28.202050781250023, 56.260400390624994], + [28.191699218750045, 56.31557617187505], + [28.169238281250017, 56.386865234374994], + [28.11083984375, 56.51069335937501], + [28.103125, 56.545703125000045], + [28.00751953125001, 56.59985351562506], + [27.99160156250005, 56.64531249999999], + [27.941406250000057, 56.70371093749998], + [27.89208984375003, 56.741064453125034], + [27.88154296875001, 56.82416992187501], + [27.848632812500057, 56.85341796875002], + [27.806054687499994, 56.86708984375005], + [27.655664062499994, 56.84321289062498], + [27.639453125000074, 56.84565429687504], + [27.71113281250004, 56.97807617187502], + [27.717382812500063, 57.05463867187498], + [27.762792968750063, 57.135107421875034], + [27.814550781250034, 57.16689453125002], + [27.83027343750004, 57.19448242187505], + [27.83828125000008, 57.247705078124966], + [27.82861328124997, 57.293310546875006], + [27.796875, 57.316943359375045], + [27.672753906250023, 57.36811523437498], + [27.538671875000063, 57.429785156250034], + [27.51113281250005, 57.508154296875006], + [27.469726562500057, 57.524023437500034], + [27.35195312500005, 57.52812], + [27.354296875000074, 57.55029296874997], + [27.371777343749983, 57.61254882812503], + [27.4, 57.66679687499999], + [27.491992187500045, 57.724951171875034], + [27.514746093749977, 57.76420898437502], + [27.542089843750063, 57.799414062500006], + [27.75283203125008, 57.841015624999955], + [27.776953125000034, 57.85673828124996], + [27.778515625000068, 57.87070312500006], + [27.76875, 57.884130859375034], + [27.721972656250017, 57.90546875000004], + [27.673437499999977, 57.93461914062502], + [27.644140625000063, 58.013916015625], + [27.571093750000017, 58.138085937499994], + [27.502441406250057, 58.221337890624994], + [27.48779296875, 58.270068359375045], + [27.505566406250068, 58.326269531250034], + [27.53007812499999, 58.38149414062502], + [27.531347656250006, 58.435253906249955], + [27.427050781250074, 58.733056640624966], + [27.434179687500006, 58.787255859374994], + [27.464453125000034, 58.84130859375], + [27.513085937499994, 58.88627929687502], + [27.62177734375004, 58.944970703124966], + [27.757617187500074, 59.05200195312503], + [27.84951171875005, 59.19267578124999], + [27.89765625000001, 59.277636718750074], + [27.93818359375001, 59.29702148437502], + [28.016406250000045, 59.30170898437498], + [28.046093750000068, 59.32783203124998], + [28.061328125000045, 59.34326171875003], + [28.128320312500023, 59.357568359374994], + [28.15107421875004, 59.374414062499966], + [28.13300781250001, 59.40307617187503], + [28.06582031250008, 59.453173828125045], + [28.0125, 59.484277343749966], + [28.063964843750057, 59.554003906250045], + [28.046289062499994, 59.64716796875004], + [28.013964843750074, 59.72475585937502], + [28.05800781250008, 59.781542968750045], + [28.131152343750074, 59.786523437499994], + [28.2125, 59.72465820312502], + [28.334570312500034, 59.69252929687502], + [28.42373046875008, 59.73408203124998], + [28.453906250000017, 59.814257812500045], + [28.518164062500034, 59.849560546874955], + [28.603906250000023, 59.81806640625004], + [28.747656249999977, 59.80668945312502], + [28.86689453125004, 59.81191406250002], + [28.947265625000057, 59.828759765624994], + [28.981542968750034, 59.854785156250045], + [29.01337890625004, 59.90156249999998], + [29.0791015625, 59.96098632812502], + [29.147265625000045, 59.999755859375], + [29.669726562500074, 59.955664062500006], + [30.12255859374997, 59.873583984375074], + [30.156835937500006, 59.904296875], + [30.172656250000017, 59.957128906250034], + [30.059960937499994, 60.002587890624966], + [29.976757812500097, 60.0263671875], + [29.87226562500004, 60.120849609375], + [29.72119140624997, 60.19531249999997], + [29.56933593749997, 60.20185546874998], + [29.370410156250017, 60.17592773437502], + [29.069140625000017, 60.19145507812499], + [28.81269531250001, 60.33154296875], + [28.643164062500006, 60.375292968750045], + [28.522265625000074, 60.482958984375045], + [28.49160156250005, 60.54013671875006], + [28.62246093750005, 60.49160156250002], + [28.640332031250068, 60.542871093749994], + [28.65058593750001, 60.61098632812502], + [28.57783203125004, 60.652539062499955], + [28.512792968750006, 60.67729492187502], + [28.179296875, 60.57099609375004], + [27.797656250000074, 60.53613281250003], + [28.151953125000034, 60.74584960937503], + [28.40742187500004, 60.89692382812501], + [28.455078125000057, 60.91962890625001], + [28.568164062500017, 60.960205078125], + [28.662890625000045, 61.002832031249994], + [28.739062500000017, 61.05874023437502], + [28.992968750000045, 61.169042968750006], + [29.251660156250097, 61.287792968749955], + [29.492382812500097, 61.44423828125002], + [29.579394531250074, 61.49345703125002], + [29.69013671875004, 61.54609375000001], + [29.933203125, 61.711572265624966], + [30.00996093750004, 61.757373046875045], + [30.306445312500017, 61.96484375000006], + [30.47968750000004, 62.06821289062506], + [30.565625, 62.127587890624994], + [30.935742187500097, 62.32377929687499], + [31.18671875000004, 62.48139648437504], + [31.28564453125003, 62.567822265624955], + [31.382421875, 62.69165039062497], + [31.437304687500017, 62.77612304687503], + [31.533984375000017, 62.885400390624994], + [31.536523437499994, 62.92163085937503], + [31.50927734375003, 62.95532226562503], + [31.43701171874997, 63.007714843749966], + [31.336718750000074, 63.06806640625001], + [31.247460937499994, 63.141894531250045], + [31.180859375000097, 63.208300781250074], + [30.97480468750004, 63.300634765625034], + [30.65527343749997, 63.41748046875006], + [30.418554687500063, 63.50405273437502], + [30.05537109375004, 63.689013671875045], + [29.991503906250074, 63.73515625000002], + [30.004101562500097, 63.747314453125], + [30.210253906250074, 63.80332031250006], + [30.415332031250017, 63.94750976562503], + [30.50390625000003, 64.02060546875], + [30.526074218750097, 64.077294921875], + [30.527929687500006, 64.14111328125003], + [30.513769531250006, 64.2], + [30.487890625000063, 64.23652343750001], + [30.390625, 64.28242187499995], + [30.10810546875004, 64.36611328125005], + [30.04189453125005, 64.44335937499997], + [29.986621093750074, 64.52426757812503], + [29.98554687500004, 64.55771484375], + [30.12011718749997, 64.64462890625003], + [30.126171875000097, 64.6880859375], + [30.11025390625005, 64.732568359375], + [30.072851562500063, 64.76503906250005], + [29.78320312500003, 64.80429687500006], + [29.70166015625003, 64.84575195312505], + [29.6375, 64.911767578125], + [29.60419921875004, 64.968408203125], + [29.600878906250074, 65.001953125], + [29.62246093750005, 65.03950195312501], + [29.720019531250017, 65.08032226562497], + [29.810839843750074, 65.10791015625], + [29.826953125000017, 65.14506835937502], + [29.82617187499997, 65.18530273437506], + [29.81054687499997, 65.204736328125], + [29.629687500000017, 65.223876953125], + [29.612402343750006, 65.234765625], + [29.608007812500006, 65.248681640625], + [29.61718750000003, 65.26533203125001], + [29.71484375000003, 65.33696289062505], + [29.72802734374997, 65.47343750000005], + [29.819433593750006, 65.56875], + [29.715917968750063, 65.62456054687502], + [29.723925781250017, 65.634375], + [29.882617187500017, 65.66362304687505], + [30.029003906250097, 65.67070312499999], + [30.0953125, 65.68168945312502], + [30.102734375000097, 65.72626953125004], + [30.0875, 65.78652343749997], + [29.936621093750006, 66.02294921875], + [29.903417968750006, 66.091064453125], + [29.803515625000074, 66.17705078125002], + [29.72070312499997, 66.23486328125], + [29.67089843749997, 66.27612304687506], + [29.59072265625005, 66.35683593749997], + [29.544335937499994, 66.43969726562497], + [29.46435546874997, 66.53217773437498], + [29.371191406250006, 66.61704101562506], + [29.293261718750017, 66.69550781249995], + [29.093066406250017, 66.84921875], + [29.066210937500045, 66.89174804687497], + [29.06904296875001, 66.93022460937499], + [29.087011718750034, 66.97094726562503], + [29.243359375000097, 67.09658203125005], + [29.38769531249997, 67.201416015625], + [29.57226562500003, 67.324365234375], + [29.750585937500006, 67.426416015625], + [29.941210937500074, 67.54746093749998], + [29.988085937500017, 67.66826171874999], + [29.97919921875004, 67.68857421875003], + [29.821582031250017, 67.75400390625003], + [29.524218750000017, 67.92910156250002], + [29.343847656250006, 68.06186523437506], + [29.06298828125, 68.11796875000002], + [28.685156250000034, 68.189794921875], + [28.560156250000063, 68.35136718750007], + [28.470703125000057, 68.48837890625], + [28.479296875000017, 68.53764648437499], + [28.752050781250006, 68.77143554687501], + [28.777636718750045, 68.81381835937503], + [28.77285156250005, 68.84003906249995], + [28.74482421875004, 68.85644531250003], + [28.705957031250023, 68.86552734375002], + [28.453515625000023, 68.87226562499995], + [28.414062500000057, 68.90415039062506], + [28.566015625, 68.92822265625], + [28.692187500000045, 68.96103515625], + [28.89892578124997, 69.00966796874997], + [28.96582031250003, 69.02197265625], + [29.11855468750005, 69.049951171875], + [29.170898437500057, 69.07153320312506], + [29.20996093750003, 69.097021484375], + [29.35302734375003, 69.27060546875], + [29.38828125, 69.29814453125005], + [29.83271484375004, 69.36044921875003], + [29.994042968749994, 69.39248046874997], + [30.08730468750005, 69.43286132812503], + [30.13183593749997, 69.46425781250002], + [30.163769531250097, 69.501611328125], + [30.18671875000004, 69.54277343750005], + [30.196484375000097, 69.58056640625003], + [30.159765625, 69.62988281250003], + [30.18017578124997, 69.63583984375], + [30.22753906250003, 69.63378906250003], + [30.379687500000017, 69.58471679687497], + [30.615429687500097, 69.532568359375], + [30.788867187500074, 69.52851562499998], + [30.860742187499994, 69.53842773437503], + [30.896679687500097, 69.56123046874998], + [30.922460937500006, 69.605810546875], + [30.924121093750017, 69.65175781250005], + [30.869726562500006, 69.78344726562506], + [31.04951171875004, 69.76923828124998], + [31.452734375000063, 69.68959960937502], + [31.546972656250063, 69.696923828125], + [31.66621093750004, 69.72099609375002], + [31.78857421874997, 69.81577148437498], + [31.87939453125003, 69.83198242187498], + [31.997949218749994, 69.80991210937503], + [32.03056640625002, 69.83530273437503], + [31.969335937500063, 69.91391601562498], + [31.98457031250004, 69.95366210937499], + [32.39160156250003, 69.86870117187502], + [32.56542968749997, 69.80649414062503], + [32.94169921875002, 69.75185546875], + [33.00781249999997, 69.72211914062498], + [33.01259765625005, 69.67050781250003], + [32.99462890625003, 69.62617187499998], + [32.91503906249997, 69.60170898437497], + [32.754296875, 69.605712890625], + [32.17675781250003, 69.67402343749995], + [32.0915039062501, 69.63256835937503], + [32.1613281250001, 69.59663085937501], + [32.33056640625003, 69.55424804687499], + [32.37773437500002, 69.47910156250003], + [32.63681640625006, 69.48945312500001], + [32.88378906250003, 69.46083984374997], + [32.99980468750002, 69.4701171875], + [33.02099609374997, 69.44560546875005], + [32.94160156250004, 69.38334960937499], + [32.97890625000005, 69.367333984375], + [33.25585937499997, 69.42773437499997], + [33.38486328125006, 69.44428710937495], + [33.45429687500004, 69.42817382812495], + [33.46367187500002, 69.378173828125], + [33.41796875000003, 69.31528320312498], + [33.412988281249994, 69.267431640625], + [33.32773437500006, 69.15185546874997], + [33.196386718750006, 69.11684570312505], + [33.14121093750006, 69.068701171875], + [33.33339843750005, 69.09819335937507], + [33.435644531250006, 69.13037109375006], + [33.627050781250006, 69.28916015624998], + [33.684375, 69.31025390625001], + [34.22939453125005, 69.31313476562497], + [34.35273437500004, 69.30292968750004], + [34.8639648437501, 69.22807617187505], + [35.00957031250002, 69.22124023437499], + [35.17587890625006, 69.230810546875], + [35.23320312500002, 69.26557617187498], + [35.28984375000002, 69.27543945312502], + [35.85791015625003, 69.19174804687503], + [36.618261718750006, 69.00346679687505], + [37.73056640625006, 68.69213867187503], + [38.3576171875001, 68.41513671875], + [38.43017578125003, 68.35561523437505], + [38.656835937500006, 68.321875], + [38.70556640624997, 68.34472656250003], + [38.83154296874997, 68.32490234375001], + [39.568945312500006, 68.07172851562501], + [39.82333984375006, 68.05859375], + [39.78974609375004, 68.112158203125], + [39.7462890625001, 68.16220703124998], + [39.80927734375004, 68.15083007812498], + [39.89560546875006, 68.11450195312503], + [40.035742187500006, 68.015380859375], + [40.206640625, 67.94189453125003], + [40.38066406250002, 67.831884765625], + [40.52578125, 67.78969726562502], + [40.65654296875002, 67.77407226562505], + [40.76630859375004, 67.74301757812503], + [40.96640625000006, 67.71347656250003], + [41.06093750000005, 67.44418945312498], + [41.133886718750006, 67.38603515625005], + [41.133886718750006, 67.26694335937503], + [41.26171875000003, 67.21845703125001], + [41.358789062499994, 67.20966796874998], + [41.35429687500002, 67.12143554687503], + [41.2755859375001, 66.91430664062503], + [41.18896484375003, 66.82617187500003], + [40.52158203125006, 66.44663085937498], + [40.10332031250002, 66.29995117187502], + [39.28906250000003, 66.13203125000001], + [38.65390625000006, 66.06904296874995], + [38.39755859375006, 66.064453125], + [37.900683593750074, 66.09560546875005], + [37.628222656250074, 66.12958984374995], + [37.294824218749994, 66.22504882812495], + [36.98369140625002, 66.27255859375003], + [36.769921875, 66.29355468750006], + [36.37343750000005, 66.30229492187505], + [35.51347656250002, 66.39580078125002], + [35.3639648437501, 66.42866210937495], + [34.824609375, 66.61113281249999], + [34.610253906249994, 66.55961914062499], + [34.48261718750004, 66.55034179687505], + [34.39609375, 66.61318359374997], + [34.43085937500004, 66.62978515625], + [34.4515625, 66.651220703125], + [34.14609375000006, 66.70327148437502], + [33.89365234375006, 66.70673828125004], + [33.75957031250002, 66.75097656249997], + [33.59541015625004, 66.78461914062498], + [33.52294921875003, 66.76435546874995], + [33.48203125, 66.76455078125], + [33.15019531250002, 66.84394531250001], + [33.00195312500003, 66.90830078125006], + [32.847558593749994, 67.02153320312505], + [32.88525390624997, 67.0611328125], + [32.93046875000002, 67.08681640625002], + [32.39990234375003, 67.152685546875], + [31.895312500000074, 67.16142578125002], + [31.983007812500006, 67.12983398437498], + [32.20156250000005, 67.11323242187498], + [32.340625, 67.06787109374997], + [32.50097656250003, 67.00385742187498], + [32.46367187500002, 66.91630859374999], + [32.68642578125005, 66.82954101562501], + [32.85732421875005, 66.74692382812503], + [32.862402343750006, 66.72138671874998], + [32.92871093750003, 66.70410156250003], + [33.180566406249994, 66.67993164062497], + [33.22441406250002, 66.60385742187503], + [33.18291015625002, 66.57387695312497], + [33.217382812500006, 66.53164062499997], + [33.40527343750003, 66.48427734375], + [33.517675781250006, 66.47138671874995], + [33.65595703125004, 66.44262695312506], + [33.59326171874997, 66.38457031250002], + [33.476953125, 66.34687], + [33.36054687500004, 66.32954101562501], + [33.41582031250002, 66.315625], + [33.566699218750074, 66.32099609374995], + [34.112695312499994, 66.225244140625], + [34.39980468750005, 66.12841796874997], + [34.69179687500005, 65.95185546874998], + [34.7863281250001, 65.86455078125005], + [34.7931640625001, 65.81635742187501], + [34.77695312500006, 65.76826171874998], + [34.734765625, 65.71630859375006], + [34.71552734375004, 65.66406249999997], + [34.61572265624997, 65.509912109375], + [34.54414062500004, 65.456689453125], + [34.40644531250004, 65.39575195312503], + [34.535937500000074, 65.2779296875], + [34.6710937500001, 65.168115234375], + [34.803515625000074, 64.98598632812502], + [34.82714843749997, 64.9126953125], + [34.832617187500006, 64.80019531250002], + [34.95224609375006, 64.75595703124998], + [34.90546875000004, 64.738671875], + [34.858300781249994, 64.70668945312497], + [34.86953125, 64.56000976562501], + [35.03535156250004, 64.44023437500005], + [35.284082031249994, 64.36254882812503], + [35.43203125, 64.34677734375], + [35.64707031250006, 64.37832031250005], + [35.802050781250074, 64.3353515625], + [36.14648437499997, 64.18901367187502], + [36.30195312500004, 64.03437], + [36.3649414062501, 64.00283203125002], + [36.713769531249994, 63.94506835937497], + [36.975195312500006, 63.909521484375006], + [37.37275390625004, 63.816748046875034], + [37.44218750000002, 63.813378906249966], + [37.635351562500006, 63.893408203125006], + [37.9679687500001, 63.949121093749994], + [38.07080078124997, 64.02583007812498], + [38.0622070312501, 64.09101562499995], + [37.977148437500006, 64.20703125000006], + [37.953710937500006, 64.32011718749999], + [37.843554687500074, 64.36630859375], + [37.740625, 64.39697265625003], + [37.429589843749994, 64.37358398437505], + [37.28955078124997, 64.37792968750006], + [37.183691406250006, 64.40849609375007], + [37.04042968750005, 64.48916015624997], + [36.769335937500074, 64.68525390624995], + [36.6242187500001, 64.75053710937502], + [36.57871093750006, 64.79096679687501], + [36.52822265625005, 64.84736328125004], + [36.534570312499994, 64.93862304687497], + [36.65292968750006, 64.93544921875002], + [36.785937500000074, 64.987158203125], + [36.88281249999997, 65.17236328124997], + [37.050195312499994, 65.19589843749998], + [37.14082031250004, 65.19428710937501], + [37.528125, 65.10825195312498], + [38.009375, 64.87875976562503], + [38.11572265624997, 64.85458984375], + [38.2282226562501, 64.85122070312502], + [38.41210937499997, 64.85708007812497], + [38.441992187500006, 64.8271484375], + [38.540917968749994, 64.79125976562497], + [38.613085937500074, 64.78666992187502], + [39.05351562500002, 64.71391601562502], + [39.56738281249997, 64.57055664062503], + [39.7580078125001, 64.57705078125002], + [39.83300781249997, 64.65639648437502], + [39.84863281249997, 64.69052734375006], + [40.05781250000004, 64.77075195312497], + [40.203710937500006, 64.784033203125], + [40.40781250000006, 64.75488281250003], + [40.44492187500006, 64.7787109375], + [40.375390625, 64.89628906250005], + [40.28125, 64.99809570312502], + [40.142675781250006, 65.06328125000005], + [39.89648437499997, 65.25478515625], + [39.7980468750001, 65.349853515625], + [39.74912109375006, 65.44794921874998], + [39.781152343749994, 65.53471679687499], + [39.816503906250006, 65.59794921874999], + [40.3278320312501, 65.75170898437497], + [40.512792968750006, 65.84379882812499], + [40.69160156250004, 65.96342773437502], + [40.77441406250003, 65.98789062500003], + [41.07607421875005, 66.02109375000006], + [41.4757812500001, 66.12343750000002], + [41.780859375, 66.25932617187502], + [42.08359375, 66.46591796875], + [42.21054687500006, 66.51967773437502], + [42.3136718750001, 66.51474609375], + [42.45078125000006, 66.48242187499997], + [42.60214843750006, 66.42250976562502], + [42.80654296875005, 66.41132812499998], + [43.005957031250006, 66.42094726562507], + [43.23320312500002, 66.41552734375003], + [43.550878906250006, 66.32128906250003], + [43.60332031250002, 66.29121093750001], + [43.653125, 66.2509765625], + [43.55039062500006, 66.17338867187499], + [43.54189453125005, 66.12338867187503], + [43.62392578125005, 66.14672851562497], + [43.7370117187501, 66.15839843749995], + [43.84375, 66.14238281249999], + [43.944140625000074, 66.09868164062505], + [44.016699218750006, 66.04975585937504], + [44.10439453125005, 66.00859374999999], + [44.13242187500006, 66.06455078125003], + [44.14531250000002, 66.11274414062498], + [44.09716796874997, 66.23505859375004], + [44.22070312500003, 66.407080078125], + [44.31640624999997, 66.481689453125], + [44.488671875, 66.67177734375002], + [44.43710937500006, 66.79462890624998], + [44.42929687500006, 66.93774414062503], + [44.40390625000006, 67.00419921875005], + [44.29179687500002, 67.09965820312505], + [44.07441406250004, 67.16733398437498], + [43.85537109375005, 67.18862304687497], + [43.7824218750001, 67.25449218749998], + [43.79570312500002, 67.32958984375], + [43.85634765625005, 67.43930664062506], + [44.036425781250074, 67.67065429687503], + [44.22539062500002, 67.99560546874997], + [44.231542968750006, 68.07124023437501], + [44.21386718749997, 68.11259765624999], + [44.22646484375005, 68.154443359375], + [44.20468750000006, 68.25375976562498], + [44.1691406250001, 68.32709960937501], + [43.4040039062501, 68.60854492187497], + [43.35800781250006, 68.63579101562502], + [43.33320312500004, 68.67338867187502], + [43.41328125000004, 68.68173828125003], + [43.471972656250074, 68.67983398437502], + [44.04804687500004, 68.54882812499997], + [44.17529296875003, 68.54174804687503], + [45.078125, 68.57817382812499], + [45.51943359375005, 68.54653320312502], + [45.891992187499994, 68.47968750000001], + [46.1583984375001, 68.291357421875], + [46.42968750000003, 68.11884765625004], + [46.68359374999997, 67.970458984375], + [46.69042968750003, 67.84882812500001], + [46.42890625000004, 67.82368164062504], + [46.17421875, 67.81816406250005], + [45.52871093750005, 67.75756835937497], + [45.374121093750006, 67.6888671875], + [44.93945312499997, 67.47744140625002], + [44.90214843750002, 67.41313476562505], + [44.93945312499997, 67.35078124999995], + [45.13886718750004, 67.28471679687502], + [45.56220703125004, 67.18559570312507], + [45.752539062500006, 66.98916015625002], + [45.88535156250006, 66.89106445312501], + [45.98603515625004, 66.853125], + [46.08398437500003, 66.843505859375], + [46.29775390625005, 66.84282226562505], + [46.44853515625002, 66.818994140625], + [46.4923828125001, 66.80019531249997], + [46.55234375000006, 66.818994140625], + [46.690820312499994, 66.82553710937498], + [47.496484375, 66.929833984375], + [47.65585937500006, 66.97592773437498], + [47.70908203125006, 67.04501953125003], + [47.76806640625003, 67.27563476562503], + [47.83925781250005, 67.355712890625], + [47.90820312499997, 67.4546875], + [47.882617187500074, 67.51533203125001], + [47.87470703125004, 67.58417968749998], + [48.27871093750005, 67.65039062499997], + [48.65380859374997, 67.69526367187498], + [48.83320312500004, 67.681494140625], + [48.87792968749997, 67.73134765625005], + [48.76269531249997, 67.827001953125], + [48.695703125, 67.87421875000001], + [48.75429687500005, 67.89594726562501], + [48.840625, 67.8697265625], + [48.95390625000002, 67.85380859375005], + [49.15527343750003, 67.87041015625005], + [49.93125, 68.06513671875001], + [50.233203125000074, 68.17534179687499], + [50.41406250000003, 68.21835937500006], + [50.6994140625001, 68.31772460937503], + [50.83886718749997, 68.34995117187503], + [51.07851562500005, 68.36333007812502], + [51.33613281250004, 68.40244140624998], + [51.61669921874997, 68.47631835937503], + [51.994726562500006, 68.53876953124995], + [52.05566406249997, 68.54130859375005], + [52.12880859375005, 68.53203125000002], + [52.28535156250004, 68.459375], + [52.227441406249994, 68.418603515625], + [52.183496093749994, 68.37426757812503], + [52.25917968750005, 68.35092773437498], + [52.32226562500003, 68.339697265625], + [52.3966796875001, 68.35170898437505], + [52.475, 68.38212890625002], + [52.66972656250002, 68.42675781249997], + [52.72265624999997, 68.484033203125], + [52.64765625000004, 68.50615234375007], + [52.550097656250074, 68.59243164062497], + [52.43505859375003, 68.61020507812503], + [52.34404296875002, 68.60815429687497], + [52.68359375000003, 68.731201171875], + [53.41289062500002, 68.91254882812498], + [53.80195312500004, 68.99589843750002], + [54.185839843750074, 69.00332031250002], + [54.49121093750003, 68.992333984375], + [54.376269531250074, 68.96474609374997], + [53.87441406250005, 68.926611328125], + [53.797656250000074, 68.90747070312503], + [53.798242187499994, 68.88466796875], + [53.91953125, 68.87124023437502], + [53.970605468749994, 68.84428710937502], + [53.92929687500006, 68.811865234375], + [53.891210937500006, 68.80151367187503], + [53.83388671875005, 68.70893554687498], + [53.75888671875006, 68.63398437499998], + [53.9176757812501, 68.53696289062503], + [53.9308593750001, 68.43554687499997], + [53.82949218750005, 68.38266601562503], + [53.69003906250006, 68.40253906250001], + [53.566699218750074, 68.36708984374997], + [53.342578125000074, 68.34321289062501], + [53.293359375, 68.31166992187497], + [53.260546875000074, 68.26748046875002], + [53.403125, 68.2568359375], + [53.51513671874997, 68.25966796875002], + [53.91367187500006, 68.231201171875], + [53.967871093750006, 68.22734375000002], + [54.09921875, 68.259033203125], + [54.23291015624997, 68.26630859374995], + [54.39394531250005, 68.27509765624998], + [54.476171875, 68.29414062499995], + [54.5612304687501, 68.273046875], + [54.71796875000004, 68.1841796875], + [54.86132812500003, 68.20185546874998], + [54.9230468750001, 68.37382812500002], + [55.15087890624997, 68.48002929687499], + [55.418066406250006, 68.56782226562501], + [55.67529296875003, 68.57587890624998], + [55.92460937500002, 68.63730468750006], + [56.04365234375004, 68.64887695312501], + [56.275683593750074, 68.62407226562502], + [56.62021484375006, 68.61904296874997], + [56.909375, 68.56669921875005], + [57.126855468749994, 68.55400390625005], + [57.44433593750003, 68.64150390625002], + [58.17304687500004, 68.88974609375006], + [58.23701171875004, 68.83393554687495], + [58.35390625000005, 68.91621093750004], + [58.91894531249997, 69.00380859375002], + [59.0573242187501, 69.00605468750004], + [59.059863281250074, 68.97255859374997], + [59.11015625000002, 68.89628906250005], + [59.2204101562501, 68.84960937500006], + [59.37050781250005, 68.73837890625003], + [59.29833984374997, 68.70844726562498], + [59.222558593749994, 68.69130859375005], + [59.11230468750003, 68.61630859375003], + [59.09902343750005, 68.4443359375], + [59.31074218750004, 68.40029296875], + [59.604296875000074, 68.35112304687502], + [59.725683593750006, 68.35161132812502], + [59.82753906250005, 68.38032226562501], + [59.85878906250005, 68.39604492187502], + [59.897363281249994, 68.42192382812505], + [59.92285156250003, 68.471337890625], + [59.94140624999997, 68.51049804687497], + [59.865136718749994, 68.60493164062504], + [59.89599609374997, 68.70634765624999], + [60.16025390625006, 68.69951171875002], + [60.489160156249994, 68.72895507812498], + [60.63769531249997, 68.78701171875], + [60.8151367187501, 68.89521484375001], + [60.93359374999997, 68.98676757812501], + [60.85859375000004, 69.14550781250003], + [60.66455078124997, 69.11025390625002], + [60.337304687499994, 69.45703124999997], + [60.17060546875004, 69.59091796875], + [60.276464843750006, 69.65263671875005], + [60.55869140625006, 69.69233398437495], + [60.81298828125003, 69.821142578125], + [60.90908203125005, 69.84711914062495], + [61.01591796875002, 69.85146484374997], + [61.77050781250003, 69.76303710937498], + [62.63125, 69.74311523437501], + [63.36142578125006, 69.67529296875003], + [64.19042968750003, 69.53466796875], + [64.59218750000005, 69.43564453124998], + [64.92851562500002, 69.32539062499998], + [64.89628906250002, 69.247802734375], + [65.03154296875002, 69.26982421875005], + [65.32675781250006, 69.20136718750004], + [65.5279296875, 69.17343750000003], + [65.73574218750005, 69.13232421875], + [65.8126953125001, 69.077001953125], + [66.08476562500002, 69.03632812499998], + [66.365625, 68.961328125], + [66.41611328125, 68.94785156249998], + [66.7564453125, 68.89199218749997], + [67.00244140625003, 68.87358398437505], + [67.14921875000007, 68.75395507812502], + [67.63964843749997, 68.57929687499995], + [67.73076171875007, 68.513671875], + [68.15693359375004, 68.40366210937506], + [68.37119140625006, 68.31425781250005], + [68.50419921875007, 68.34843749999999], + [68.8294921875, 68.56743164062502], + [69.02431640625, 68.81796875], + [69.14052734375005, 68.95063476562501], + [68.92441406250006, 68.956201171875], + [68.7628906250001, 68.9173828125], + [68.6595703125, 68.927392578125], + [68.54277343750002, 68.96708984374999], + [68.35507812500006, 69.06757812499995], + [68.11738281250004, 69.23623046875002], + [68.07304687500007, 69.42080078124997], + [68.00585937499997, 69.48002929687505], + [67.77431640625005, 69.52998046875001], + [67.62412109375, 69.58442382812501], + [67.06445312500003, 69.69370117187498], + [66.9640625000001, 69.65556640625002], + [66.93417968750006, 69.5966796875], + [66.89667968750004, 69.55380859374998], + [66.840234375, 69.60917968749999], + [66.80400390625002, 69.65922851562505], + [66.80292968750004, 69.74013671875002], + [66.83222656250004, 69.84218750000002], + [66.92636718750006, 70.0142578125], + [67.0690429687501, 70.005615234375], + [67.14443359375, 70.03061523437503], + [67.23925781250003, 70.10805664062502], + [67.19746093750004, 70.171630859375], + [67.14648437499997, 70.21992187499998], + [67.1568359375, 70.29511718750001], + [67.246875, 70.50009765625003], + [67.28476562500006, 70.73872070312498], + [67.21152343750006, 70.79843749999998], + [67.14335937500002, 70.83754882812502], + [66.82246093750004, 70.79736328125003], + [66.70224609375006, 70.81850585937497], + [66.67519531250005, 70.86469726562498], + [66.66611328125006, 70.90058593750001], + [66.75878906250003, 70.96235351562498], + [66.8470703125, 71.06372070312503], + [66.69257812500004, 71.04169921874998], + [66.63964843749997, 71.08139648437498], + [66.76806640624997, 71.139892578125], + [66.91757812500006, 71.28237304687497], + [67.27421875000007, 71.34785156249998], + [67.54179687500002, 71.41201171875], + [67.959375, 71.54838867187499], + [68.2692382812501, 71.68281250000001], + [68.4694335937501, 71.85263671874998], + [68.60742187499997, 72.01274414062499], + [68.82968750000006, 72.39155273437498], + [69.03906249999997, 72.66992187500003], + [69.39140625000007, 72.95551757812495], + [69.61181640625003, 72.98193359375], + [69.69433593749997, 72.9775390625], + [69.70898437500003, 72.95639648437503], + [69.6587890625, 72.93183593750001], + [69.64511718750006, 72.89755859375006], + [69.73828124999997, 72.88496093749998], + [69.8875, 72.88256835937503], + [70.17216796875007, 72.90117187499999], + [70.65537109375, 72.890380859375], + [71.5001953125001, 72.91367187500003], + [71.61699218750007, 72.902099609375], + [71.92958984375, 72.819677734375], + [72.1009765625, 72.82900390625002], + [72.44638671875, 72.79033203125005], + [72.63378906250003, 72.74448242187503], + [72.812109375, 72.69140624999997], + [72.78740234375002, 72.48295898437505], + [72.75292968750003, 72.3431640625], + [72.62441406250005, 72.079443359375], + [72.57412109375, 72.01254882812506], + [72.375, 71.82163085937506], + [72.27949218750004, 71.69550781250004], + [72.12968750000007, 71.60917968750002], + [71.91201171875005, 71.54794921874998], + [71.884375, 71.511376953125], + [71.86728515625, 71.457373046875], + [72.07929687500004, 71.30668945312505], + [72.58134765625007, 71.15112304687497], + [72.70449218750005, 70.96323242187498], + [72.73164062500004, 70.82285156249998], + [72.7, 70.45732421875002], + [72.65332031249997, 70.40341796875006], + [72.5619140625, 70.34555664062498], + [72.4694335937501, 70.27495117187499], + [72.52968750000005, 70.172509765625], + [72.59941406250002, 69.793212890625], + [72.615625, 69.48403320312497], + [72.55732421875004, 69.37841796875006], + [72.52705078125004, 69.15424804687504], + [72.52734374999997, 69.08051757812501], + [72.5767578125, 68.96870117187498], + [72.6783203125, 68.87485351562503], + [72.81191406250005, 68.81523437500007], + [73.19072265625007, 68.706787109375], + [73.5480468750001, 68.57451171875005], + [73.57343750000004, 68.53261718750005], + [73.59169921875005, 68.48188476562501], + [73.465234375, 68.43076171874998], + [73.26640625000002, 68.29448242187502], + [73.13945312500002, 68.18134765624998], + [73.12939453124997, 68.09091796875003], + [73.1730468750001, 67.973046875], + [73.15214843750002, 67.86503906250002], + [73.06679687500005, 67.766943359375], + [72.94873046874997, 67.69624023437501], + [72.59433593750006, 67.58696289062502], + [71.84746093750002, 67.00761718750005], + [71.6681640625001, 66.93969726562497], + [71.36523437500003, 66.96152343749998], + [71.44892578125004, 66.87895507812502], + [71.551171875, 66.76044921874995], + [71.53955078125003, 66.68310546875], + [71.3419921875001, 66.68671875000004], + [71.065625, 66.60449218749997], + [70.93945312499997, 66.54814453125005], + [70.72490234375007, 66.51943359374997], + [70.56142578125005, 66.54868164062498], + [70.38281249999997, 66.60249023437501], + [70.40888671875004, 66.64760742187497], + [70.4425781250001, 66.66826171875002], + [70.56796875000006, 66.70087890624998], + [70.69072265625002, 66.74531249999998], + [70.63076171875005, 66.75419921875002], + [70.57910156250003, 66.753759765625], + [70.4439453125, 66.69731445312507], + [70.2833984375001, 66.68579101562503], + [70.09375, 66.75434570312495], + [69.9486328125, 66.82998046875], + [69.8771484375001, 66.84545898437506], + [69.74042968750004, 66.81459960937497], + [69.21777343749997, 66.82861328125], + [69.07871093750006, 66.81591796874997], + [69.01347656250002, 66.78833007812503], + [69.05117187500005, 66.766357421875], + [69.09111328125002, 66.72358398437498], + [69.1439453125, 66.64072265624998], + [69.19433593749997, 66.57866210937505], + [69.41201171875, 66.51074218749997], + [69.70097656250007, 66.48457031249998], + [69.98242187499997, 66.40141601562499], + [70.33945312500006, 66.34238281250006], + [71.14550781250003, 66.36665039062501], + [71.35800781250006, 66.35942382812505], + [71.565625, 66.33374023437497], + [71.91699218749997, 66.24672851562502], + [72.06757812500004, 66.25332031250002], + [72.32158203125002, 66.33212890625], + [72.3839843750001, 66.50654296875001], + [72.4173828125, 66.56079101562506], + [73.34160156250007, 66.80683593749998], + [73.51357421875, 66.86108398437503], + [73.79208984375, 66.99531250000001], + [73.88330078125003, 67.0849609375], + [73.98623046875005, 67.32768554687505], + [74.07451171875007, 67.41411132812499], + [74.67607421875007, 67.69462890625002], + [74.76953124999997, 67.76635742187497], + [74.78730468750004, 67.89750976562505], + [74.77822265625, 67.98593750000003], + [74.74267578125003, 68.07353515625005], + [74.63242187500006, 68.21831054687505], + [74.51123046874997, 68.303076171875], + [74.39140625000007, 68.42060546874995], + [74.48095703125003, 68.65888671875001], + [74.57958984375003, 68.751220703125], + [75.12460937500006, 68.86171875000002], + [75.5895507812501, 68.90117187499999], + [76.10751953125006, 68.975732421875], + [76.31601562500012, 68.99150390624999], + [76.45917968750004, 68.97827148437497], + [76.60576171875007, 68.89760742187497], + [76.73505859375004, 68.77690429687507], + [77.11171875000005, 68.59619140625003], + [77.2384765625001, 68.46958007812498], + [77.26103515625007, 68.31557617187497], + [77.2484375, 67.94101562500003], + [77.17441406250012, 67.77851562499998], + [77.32509765625, 67.73564453125005], + [77.39560546875006, 67.69868164062495], + [77.57919921875006, 67.6439453125], + [77.67509765625007, 67.58959960937503], + [77.77158203125006, 67.57026367187501], + [77.98554687500004, 67.55917968750006], + [78.5895507812501, 67.57846679687498], + [78.92246093750006, 67.58911132812503], + [78.88759765625, 67.61313476562503], + [78.83906250000004, 67.63120117187498], + [78.55908203125003, 67.63911132812498], + [78.16123046875006, 67.678369140625], + [77.58828125000005, 67.75190429687498], + [77.52011718750012, 67.90961914062495], + [77.53593750000002, 68.00766601562503], + [77.66484375000002, 68.19038085937495], + [77.75683593750003, 68.22236328124998], + [77.86826171875006, 68.234716796875], + [77.99511718749997, 68.25947265624998], + [77.9586914062501, 68.37705078125006], + [77.90683593750012, 68.482275390625], + [77.78525390625012, 68.63046874999998], + [77.65068359375007, 68.90302734375001], + [77.46630859374997, 68.90512695312498], + [77.32832031250004, 68.95864257812497], + [76.64492187500005, 69.11738281249998], + [76.00097656249997, 69.23505859374998], + [75.56113281250006, 69.251806640625], + [75.42001953125, 69.23862304687498], + [75.05351562500002, 69.11630859375003], + [74.81484375, 69.09057617187503], + [74.36259765625007, 69.14458007812502], + [73.97744140625, 69.11464843750005], + [73.83603515625006, 69.143212890625], + [73.77568359375002, 69.19824218750003], + [73.89091796875007, 69.41796875000003], + [73.8327148437501, 69.50390625000003], + [73.66328125000004, 69.61708984375], + [73.56015625, 69.70722656249998], + [73.578125, 69.80297851562503], + [73.83017578125, 70.17568359375002], + [73.93740234375005, 70.27285156250002], + [74.2067382812501, 70.445458984375], + [74.34335937500006, 70.57871093749998], + [74.3109375, 70.65361328125005], + [73.73154296875, 71.06870117187506], + [73.57656250000005, 71.21650390624995], + [73.50722656250005, 71.26352539062503], + [73.36523437499997, 71.31977539062495], + [73.15048828125, 71.38520507812495], + [73.08623046875007, 71.44492187500006], + [73.67177734375, 71.84506835937503], + [73.93945312499997, 71.91474609375001], + [74.31123046875004, 71.95781249999999], + [74.48906250000007, 71.99702148437498], + [74.80410156250005, 72.07739257812503], + [74.99218749999997, 72.14482421874999], + [75.05322265624997, 72.19921874999997], + [75.08994140625, 72.26313476562504], + [75.09707031250005, 72.42065429687497], + [75.06035156250002, 72.54877929687495], + [75.0080078125001, 72.61943359375005], + [74.896875, 72.71010742187497], + [74.78681640625004, 72.811865234375], + [74.8649414062501, 72.83842773437499], + [74.94218750000002, 72.85380859375002], + [75.15244140625, 72.85273437499998], + [75.3693359375001, 72.796630859375], + [75.47490234375007, 72.68500976562501], + [75.60351562499997, 72.58105468750006], + [75.603125, 72.51215820312495], + [75.59140625, 72.45722656249995], + [75.64433593750007, 72.38227539062495], + [75.6911132812501, 72.35], + [75.74140625000004, 72.29624023437503], + [75.69443359375006, 72.25351562500003], + [75.64433593750007, 72.23232421874997], + [75.55019531250005, 72.17080078124997], + [75.39453124999997, 71.98320312500002], + [75.273828125, 71.95893554687495], + [75.2474609375, 71.81337890624997], + [75.50322265625007, 71.65463867187506], + [75.46855468750002, 71.53437], + [75.41718750000004, 71.49467773437507], + [75.28027343749997, 71.43007812500005], + [75.29804687500004, 71.37846679687502], + [75.33203125000003, 71.34174804687498], + [75.73359375000004, 71.26591796874999], + [76.11044921875006, 71.21855468750002], + [76.74199218750002, 71.20205078125005], + [76.92900390625002, 71.12788085937504], + [76.99521484375012, 71.18105468750002], + [77.58964843750007, 71.16791992187501], + [78.06826171875005, 70.98632812499997], + [78.32060546875002, 70.93041992187503], + [78.52578125, 70.91181640624998], + [78.94218750000002, 70.93378906250001], + [79.01542968750002, 70.95019531249997], + [79.08388671875, 71.00200195312505], + [78.88867187500003, 70.99716796875003], + [78.80351562500002, 70.97353515625002], + [78.72392578125002, 70.9759765625], + [78.58769531250007, 70.993896484375], + [78.4914062500001, 71.02539062500003], + [78.38652343750002, 71.08710937499998], + [78.21259765625004, 71.26630859374998], + [77.9083984375001, 71.32407226562503], + [77.70664062500006, 71.30058593750005], + [77.48105468750006, 71.31157226562507], + [77.113671875, 71.409375], + [76.87119140625006, 71.44658203125005], + [76.43339843750002, 71.55249023437503], + [76.31210937500012, 71.595458984375], + [76.21572265625, 71.68286132812503], + [76.10361328125012, 71.82900390624997], + [76.03242187500004, 71.91040039062503], + [76.12402343749997, 71.92661132812503], + [76.42167968750007, 72.00600585937497], + [76.87138671875002, 72.03300781250005], + [77.06132812500007, 72.00419921875005], + [77.55078124999997, 71.84208984375005], + [77.77753906250004, 71.83642578125006], + [78.18691406250005, 71.90708007812506], + [78.23242187500003, 71.95229492187502], + [78.1408203125001, 72.04467773437503], + [78.01640625000007, 72.092041015625], + [77.7806640625, 72.11430664062499], + [77.49287109375004, 72.07172851562504], + [77.41083984375004, 72.107763671875], + [77.43974609375007, 72.15654296874999], + [77.47158203125, 72.19213867187506], + [77.62529296875002, 72.20141601562497], + [77.73320312500007, 72.22919921874995], + [77.9681640625, 72.32871093749998], + [78.22539062500007, 72.37744140625006], + [78.4826171875001, 72.39497070312498], + [79.4220703125001, 72.38076171875002], + [79.95390625000007, 72.22304687500002], + [80.4740234375, 72.15312], + [80.69921875000003, 72.09829101562502], + [80.7625, 72.08916015625002], + [80.81474609375002, 72.05429687500003], + [80.85605468750006, 71.97021484375003], + [81.51123046874997, 71.74614257812505], + [81.66162109374997, 71.71596679687502], + [82.07988281250002, 71.70683593750002], + [82.547265625, 71.75859375000002], + [82.75781250000003, 71.76411132812498], + [82.98613281250007, 71.74868164062502], + [83.10664062500004, 71.72050781250007], + [83.23359375000004, 71.66816406249995], + [83.16552734375003, 71.60219726562502], + [83.1056640625001, 71.56245117187501], + [82.97705078125003, 71.45136718750004], + [82.91796874999997, 71.41992187500003], + [82.49316406250003, 71.29287109375], + [82.32285156250006, 71.26000976562503], + [82.27695312500012, 71.09345703125004], + [82.254296875, 71.05620117187499], + [82.23916015625005, 70.99770507812497], + [82.31601562500006, 70.87944335937505], + [82.33593749999997, 70.80737304687503], + [82.2707031250001, 70.70673828125004], + [82.16318359375012, 70.59814453125003], + [82.18242187500002, 70.51147460937503], + [82.22119140625003, 70.39570312499998], + [82.23583984374997, 70.4302734375], + [82.23144531249997, 70.48291015625], + [82.25839843750006, 70.54360351562502], + [82.45166015624997, 70.69008789062502], + [82.5924804687501, 70.88994140625005], + [82.73779296875003, 70.94208984375001], + [82.86914062499997, 70.95483398437503], + [83.01015625, 70.89541015625002], + [83.05107421875007, 70.81523437500002], + [83.05839843750007, 70.6947265625], + [83.03017578125, 70.58051757812498], + [82.91982421875, 70.40742187499998], + [82.74248046875002, 70.28647460937503], + [82.6823242187501, 70.21772460937498], + [82.7672851562501, 70.15405273437497], + [82.85654296875006, 70.10454101562502], + [82.96103515625012, 70.08828124999997], + [83.0807617187501, 70.09301757812497], + [83.1095703125001, 70.10957031249995], + [83.13203125000004, 70.15717773437498], + [83.09414062500005, 70.22109375000002], + [83.07382812500012, 70.276708984375], + [83.29345703124997, 70.32133789062502], + [83.49707031249997, 70.34526367187502], + [83.65986328125004, 70.418359375], + [83.70048828125002, 70.46640625], + [83.73593750000006, 70.54648437499998], + [83.65126953125005, 70.672216796875], + [83.57890625000007, 70.76591796875002], + [83.33388671875005, 70.98852539062497], + [83.15126953125005, 71.10361328124998], + [83.266015625, 71.27587890624997], + [83.45761718750012, 71.46752929687503], + [83.53105468750007, 71.51425781250006], + [83.55048828125004, 71.54365234375001], + [83.57128906250003, 71.59438476562502], + [83.55351562500002, 71.64980468750005], + [83.534375, 71.68393554687498], + [83.34042968750006, 71.82753906250002], + [83.20029296875012, 71.87470703125004], + [82.7550781250001, 71.90283203125], + [82.64541015625005, 71.92524414062504], + [82.31914062500002, 72.07182617187505], + [82.2806640625, 72.105126953125], + [82.20927734375002, 72.21118164062503], + [82.18359375000003, 72.23754882812497], + [82.09365234375, 72.26542968750005], + [81.79287109375, 72.32661132812498], + [81.58623046875007, 72.35170898437505], + [81.28271484374997, 72.35883789062498], + [81.09814453125003, 72.38974609374998], + [80.82705078125005, 72.48828124999997], + [80.79775390625005, 72.51997070312495], + [80.71962890625, 72.64790039062498], + [80.65625, 72.71201171875], + [80.67539062500006, 72.75917968750002], + [80.77373046875002, 72.86079101562501], + [80.84160156250007, 72.94916992187498], + [80.75742187500006, 73.02524414062503], + [80.63867187500003, 73.04916992187503], + [80.50966796875005, 73.086083984375], + [80.45546875, 73.15522460937495], + [80.4245117187501, 73.23115234374998], + [80.41894531250003, 73.2896484375], + [80.39804687500012, 73.3568359375], + [80.45830078125007, 73.41372070312505], + [80.59589843750004, 73.4740234375], + [80.56191406250005, 73.51499023437498], + [80.5832031250001, 73.56845703125003], + [81.46884765625006, 73.64042968750005], + [81.81699218750012, 73.65883789062497], + [83.54472656250002, 73.66650390625003], + [83.66699218749997, 73.68647460937501], + [84.4173828125, 73.72202148437498], + [84.73789062500006, 73.76284179687502], + [85.07744140625007, 73.71953124999999], + [85.20058593750005, 73.72153320312506], + [85.44833984375006, 73.73461914062506], + [85.61142578125006, 73.82158203125002], + [85.97929687500002, 73.85693359375], + [86.59140625000006, 73.89428710937497], + [86.89296875, 73.88710937500002], + [86.961328125, 73.8607421875], + [87.02949218750004, 73.82416992187501], + [86.69765625, 73.71684570312499], + [86.36591796875004, 73.61977539062502], + [86.094140625, 73.57832031250001], + [85.82705078125005, 73.49277343749998], + [85.80048828125004, 73.45893554687501], + [85.79257812500012, 73.438330078125], + [85.8024414062501, 73.3716796875], + [85.81816406250007, 73.32695312500005], + [86.09814453125003, 73.272607421875], + [86.30791015625002, 73.19575195312495], + [86.5143554687501, 73.14047851562498], + [86.67705078125002, 73.10678710937503], + [86.7150390625001, 73.125830078125], + [86.12167968750012, 73.30673828125], + [85.97080078125006, 73.34707031249997], + [85.91005859375005, 73.39042968750002], + [85.93896484374997, 73.45649414062495], + [85.99892578125005, 73.48583984375], + [86.09238281250006, 73.51914062500003], + [86.15507812500007, 73.53466796875], + [86.37626953125002, 73.56884765625003], + [87.12011718750003, 73.61503906250002], + [87.29443359375003, 73.7046875], + [87.36953125000005, 73.75590820312505], + [87.57119140625, 73.81074218750001], + [87.50322265625002, 73.83247070312501], + [87.3375, 73.846044921875], + [87.20966796875004, 73.878662109375], + [86.69707031250007, 74.19531250000003], + [86.57109375000007, 74.24375], + [86.17783203125006, 74.27939453125], + [86.0013671875, 74.316015625], + [86.18291015625007, 74.42304687499998], + [86.39580078125007, 74.45009765624997], + [86.5384765625, 74.44423828125002], + [86.66474609375004, 74.41425781249995], + [86.89794921874997, 74.32534179687497], + [87.22968750000004, 74.3638671875], + [87.10615234375004, 74.403564453125], + [86.8942382812501, 74.44970703124997], + [86.70009765625, 74.52246093749997], + [86.42568359375005, 74.58549804687502], + [86.11611328125005, 74.628564453125], + [85.79101562499997, 74.6451171875], + [85.88076171875005, 74.74023437500003], + [86.05888671875002, 74.72822265624998], + [86.11953125, 74.75742187500006], + [86.20126953125006, 74.81621093750005], + [86.65146484375012, 74.68242187500005], + [86.86289062500012, 74.71787109375], + [87.04179687500007, 74.77885742187499], + [87.41933593750005, 74.94091796875006], + [87.46757812500002, 75.01323242187505], + [87.28740234375002, 75.05253906250005], + [87.14072265625006, 75.07226562499997], + [86.93906250000006, 75.06811523437503], + [86.92167968750002, 75.11279296874997], + [87.00595703125012, 75.16982421874997], + [87.17080078125005, 75.19174804687498], + [87.67138671874997, 75.12958984375004], + [88.50371093750007, 75.29047851562504], + [88.7331054687501, 75.36918945312499], + [89.3102539062501, 75.47011718750002], + [89.59511718750005, 75.45825195312503], + [90.18496093750005, 75.59106445312497], + [91.00468750000007, 75.649560546875], + [91.47949218749997, 75.64965820312503], + [91.8454101562501, 75.72368164062499], + [92.40751953125002, 75.74965820312497], + [92.60253906249997, 75.77910156250002], + [93.54980468750003, 75.8541015625], + [94.07519531249997, 75.91289062499999], + [94.15634765625006, 75.95922851562503], + [93.68701171875003, 75.92158203124998], + [93.57402343750002, 75.95629882812506], + [93.47548828125, 75.93286132812497], + [93.40605468750007, 75.90126953125002], + [93.178125, 75.95898437499997], + [93.11630859375012, 75.94462890624999], + [93.06865234375007, 75.912841796875], + [92.98662109375007, 75.90268554687506], + [92.89042968750002, 75.90996093750002], + [92.8585937500001, 75.97949218749997], + [92.97158203125, 76.07509765625], + [93.1048828125, 76.02583007812501], + [93.25927734375003, 76.09877929687502], + [93.3595703125001, 76.100732421875], + [93.64843749999997, 76.05415039062501], + [93.84287109375006, 76.10131835937503], + [94.10234375000007, 76.12358398437502], + [94.38828125000006, 76.10278320312506], + [94.50673828125005, 76.10795898437505], + [94.57558593750005, 76.1517578125], + [95.0384765625, 76.11352539062503], + [95.35927734375, 76.13959960937501], + [95.57871093750012, 76.13730468749998], + [95.91992187499997, 76.11313476562503], + [96.07548828125007, 76.08198242187498], + [95.98603515625004, 76.00966796875], + [95.65332031250003, 75.89218750000003], + [95.7438476562501, 75.872314453125], + [95.9347656250001, 75.926025390625], + [96.50859375000002, 76.00556640624995], + [96.60058593750003, 75.98989257812497], + [96.53769531250006, 75.921630859375], + [96.49707031249997, 75.89121093750003], + [96.87919921875002, 75.93105468749997], + [97.20546875000005, 76.01870117187497], + [97.35068359375006, 76.03339843749995], + [97.49921875000004, 75.98022460937503], + [97.63769531250003, 76.02905273437503], + [97.66982421875, 76.07802734375], + [97.918359375, 76.08867187500002], + [98.02001953125003, 76.13369140625005], + [98.19462890625007, 76.16640625000005], + [98.34199218750004, 76.18056640625], + [98.66201171875005, 76.24267578125003], + [98.77128906250002, 76.22402343749997], + [98.98466796875007, 76.20756835937499], + [99.18730468750002, 76.17763671875002], + [99.56269531250004, 76.10932617187495], + [99.615625, 76.08232421875005], + [99.66318359375012, 76.07802734375], + [99.77041015625, 76.02875976562498], + [99.68925781250007, 75.95634765625007], + [99.60234375000002, 75.85205078125003], + [99.44218750000002, 75.80317382812504], + [99.5407226562501, 75.79858398437497], + [99.60937, 75.811279296875], + [99.7375, 75.88066406250002], + [99.85136718750007, 75.93027343749998], + [99.8253906250001, 76.13593749999995], + [99.61679687500006, 76.24018554687498], + [99.46064453125004, 76.27509765624998], + [99.09384765625012, 76.38432617187505], + [98.96953125000002, 76.430810546875], + [98.80566406250003, 76.48066406250004], + [98.86943359375002, 76.50957031250005], + [99.57626953125006, 76.47143554687503], + [99.93574218750004, 76.48989257812505], + [100.32236328125012, 76.479150390625], + [100.84375, 76.52519531250005], + [101.06074218750004, 76.47724609374995], + [101.3107421875001, 76.47890625000002], + [101.59775390625006, 76.43920898437503], + [101.6837890625001, 76.48549804687505], + [101.21298828125006, 76.53569335937505], + [101.00263671875004, 76.53051757812497], + [100.92802734375002, 76.55673828124998], + [101.00625, 76.61508789062498], + [101.0993164062501, 76.70400390624997], + [101.008203125, 76.78134765625], + [100.92041015624997, 76.82250976562503], + [100.90585937500012, 76.90068359375007], + [100.98994140625004, 76.99047851562497], + [101.18574218750004, 77.028564453125], + [101.29287109375, 77.10156250000006], + [101.51767578125006, 77.198095703125], + [102.61015625000007, 77.508544921875], + [103.13144531250012, 77.62646484375006], + [103.33125, 77.64106445312501], + [103.5607421875001, 77.63193359375], + [104.01455078125, 77.73041992187501], + [104.18486328125007, 77.73046875], + [104.81425781250002, 77.65209960937503] + ] + ], + [ + [ + [107.69550781250004, 78.13090820312505], + [107.60625, 78.08256835937507], + [107.48164062500004, 78.057763671875], + [107.34384765625006, 78.09858398437495], + [107.00166015625004, 78.09565429687498], + [106.41552734375003, 78.13984375000001], + [106.58330078125002, 78.16757812499998], + [107.50830078124997, 78.18940429687498], + [107.57324218749997, 78.185546875], + [107.69550781250004, 78.13090820312505] + ] + ], + [ + [ + [106.27041015625005, 78.20620117187502], + [106.15107421875004, 78.1986328125], + [106.02363281250004, 78.22011718750002], + [106.05839843750002, 78.26464843750003], + [106.35058593750003, 78.27260742187497], + [106.45683593750002, 78.34003906250004], + [106.64042968750002, 78.33623046875005], + [106.69121093750007, 78.31665039062497], + [106.71962890625, 78.294189453125], + [106.71894531250004, 78.264990234375], + [106.6791015625, 78.264990234375], + [106.50468750000007, 78.26166992187495], + [106.47246093750007, 78.24501953125002], + [106.27041015625005, 78.20620117187502] + ] + ], + [ + [ + [102.88476562499997, 79.25395507812505], + [102.7873046875001, 79.17641601562497], + [102.7458007812501, 79.10605468750003], + [102.44785156250012, 78.87666015625001], + [102.4123046875001, 78.83544921874997], + [102.58730468750005, 78.87128906249998], + [102.74765625000012, 78.94956054687503], + [102.84482421875006, 79.01435546875001], + [102.9503906250001, 79.05576171875], + [103.07568359374997, 79.05649414062498], + [103.19912109375005, 79.07128906249997], + [103.43339843750002, 79.12612304687502], + [103.67285156250003, 79.15], + [103.80078124999997, 79.14926757812503], + [103.92568359375, 79.12324218749998], + [104.00400390625006, 79.06254882812505], + [104.09111328125007, 79.01318359375003], + [104.40419921875, 78.97709960937505], + [104.44921875000003, 78.96391601562502], + [104.47695312500005, 78.92333984375003], + [104.45205078125005, 78.880029296875], + [104.633203125, 78.83515625000001], + [104.88105468750004, 78.85488281250002], + [105.01464843750003, 78.84331054687507], + [105.14599609375003, 78.81884765625006], + [105.20458984374997, 78.77993164062502], + [105.25605468750004, 78.73300781249998], + [105.31015625000006, 78.66616210937502], + [105.34267578125005, 78.59394531249998], + [105.31259765625012, 78.49990234375], + [104.83261718750006, 78.35273437499995], + [104.74179687500012, 78.33974609374997], + [104.51943359375, 78.34921875000003], + [104.29746093750006, 78.33505859374998], + [103.71933593750006, 78.25825195312498], + [103.003125, 78.25585937500003], + [102.79667968750007, 78.18789062500002], + [102.73437, 78.18989257812498], + [102.67314453125002, 78.20170898437499], + [102.61718749999997, 78.22460937500006], + [102.18046875000002, 78.20532226562503], + [101.69238281249997, 78.1943359375], + [101.20410156249997, 78.19194335937505], + [101.03994140625, 78.14296875000002], + [100.5412109375001, 78.04750976562502], + [100.08222656250004, 77.975], + [99.84501953125002, 77.95683593750002], + [99.50029296875002, 77.97607421875003], + [99.39169921875012, 78.00068359374998], + [99.28710937500003, 78.03808593749997], + [99.4386718750001, 78.08393554687498], + [99.54560546875004, 78.178564453125], + [99.6779296875001, 78.23349609375], + [100.0189453125, 78.33891601562507], + [100.05751953125005, 78.38037109374997], + [100.12353515624997, 78.47045898437503], + [100.16298828125005, 78.50395507812502], + [100.2150390625001, 78.53579101562502], + [100.25722656250005, 78.57382812500006], + [100.26269531250003, 78.631494140625], + [100.28398437500002, 78.67919921875003], + [100.41640625, 78.753173828125], + [100.515625, 78.78779296875004], + [100.61962890624997, 78.79741210937505], + [100.87558593750006, 78.78359374999997], + [100.9557617187501, 78.7884765625], + [100.89794921875003, 78.81245117187498], + [100.85625, 78.89775390625005], + [100.86455078125007, 78.92583007812499], + [100.90136718750003, 78.98007812500003], + [100.96542968750012, 79.00654296875001], + [101.03085937500012, 79.02329101562503], + [101.06816406250007, 79.09624023437499], + [101.05224609375003, 79.12324218749998], + [101.148828125, 79.156884765625], + [101.19609375000002, 79.204443359375], + [101.31044921875005, 79.23261718749998], + [101.54306640625012, 79.25444335937507], + [101.55527343750012, 79.31264648437502], + [101.590625, 79.350439453125], + [101.64335937500002, 79.36137695312499], + [101.76132812500006, 79.37197265625002], + [101.82421874999997, 79.37021484375003], + [101.91210937499997, 79.31162109374998], + [102.0052734375, 79.263671875], + [102.12851562500006, 79.25249023437502], + [102.25126953125002, 79.25605468749995], + [102.17724609374997, 79.31259765625], + [102.18066406249997, 79.37338867187506], + [102.22509765624997, 79.41293945312503], + [102.2824218750001, 79.43007812499997], + [102.40488281250006, 79.43320312499998], + [102.78984375000007, 79.39213867187505], + [103.04160156250012, 79.33154296875006], + [103.09794921875007, 79.29912109375002], + [103.0524414062501, 79.28251953125002], + [102.93964843750004, 79.27119140625001], + [102.88476562499997, 79.25395507812505] + ] + ], + [ + [ + [76.24892578125005, 79.65107421874995], + [76.37255859374997, 79.61523437500003], + [76.46738281250012, 79.64316406250003], + [77.36015625000002, 79.55683593750004], + [77.54931640625003, 79.5244140625], + [77.58896484375012, 79.50190429687504], + [76.81015625000006, 79.489501953125], + [76.64951171875012, 79.493408203125], + [76.63652343750002, 79.54443359375], + [76.45761718750012, 79.54545898437502], + [76.1537109375, 79.57875976562497], + [76.07187500000012, 79.62563476562502], + [76.05156250000007, 79.64472656249998], + [76.14843749999997, 79.66445312500002], + [76.24892578125005, 79.65107421874995] + ] + ], + [ + [ + [100.13593750000004, 79.61420898437498], + [99.91542968750005, 79.60161132812502], + [99.94228515625, 79.67143554687502], + [99.9557617187501, 79.69033203124997], + [100.06835937500003, 79.701025390625], + [100.14150390625, 79.68369140625003], + [100.30029296875003, 79.67026367187503], + [100.13593750000004, 79.61420898437498] + ] + ], + [ + [ + [92.68349609375005, 79.685205078125], + [92.440625, 79.67548828124995], + [92.1537109375, 79.68466796875006], + [91.68359374999997, 79.79057617187505], + [91.37626953125007, 79.83549804687505], + [91.12607421875006, 79.904931640625], + [91.07031250000003, 79.98149414062505], + [91.22929687500007, 80.03071289062504], + [91.4259765625001, 80.04921874999997], + [91.75195312499997, 80.05229492187499], + [92.17343750000012, 80.04545898437502], + [92.59277343750003, 79.99653320312498], + [93.48154296875006, 79.94111328124998], + [93.803125, 79.904541015625], + [93.60351562499997, 79.81674804687503], + [93.38203125000004, 79.78388671875001], + [93.15507812500002, 79.73759765624999], + [92.92626953125003, 79.7044921875], + [92.68349609375005, 79.685205078125] + ] + ], + [ + [ + [51.409277343750006, 79.94423828125], + [51.43515625000006, 79.93193359375007], + [51.43125, 79.92050781250003], + [51.076269531250006, 79.93198242187498], + [50.45410156250003, 79.92441406250003], + [50.09140625, 79.98056640625003], + [50.47265624999997, 80.03544921875002], + [50.67578124999997, 80.04853515625001], + [50.93632812500002, 80.09423828125], + [51.25439453124997, 80.04863281250005], + [51.237890625, 80.01035156250006], + [51.242773437500006, 79.99125976562499], + [51.32695312500002, 79.97231445312502], + [51.409277343750006, 79.94423828125] + ] + ], + [ + [ + [59.68886718750005, 79.95581054687506], + [59.330664062500006, 79.92304687500004], + [59.20263671875003, 79.932958984375], + [59.169238281250074, 79.94829101562502], + [59.100390625000074, 79.96416015625005], + [58.91923828125002, 79.98461914062506], + [58.946093750000074, 80.042333984375], + [59.00146484374997, 80.05390624999995], + [59.54453125000006, 80.11884765624995], + [59.80166015625005, 80.08266601562505], + [59.911035156249994, 79.99428710937497], + [59.68886718750005, 79.95581054687506] + ] + ], + [ + [ + [97.67451171875004, 80.15825195312499], + [97.90361328125002, 80.09501953124999], + [98.0177734375001, 80.02285156250002], + [97.90673828125003, 80.00375976562503], + [97.80791015625002, 79.95629882812497], + [97.75996093750004, 79.895849609375], + [97.62695312500003, 79.85043945312498], + [97.59130859374997, 79.77495117187505], + [97.65166015625002, 79.76064453125], + [97.72451171875, 79.78139648437505], + [97.87070312500006, 79.85263671874998], + [98.06455078125012, 79.90107421874998], + [98.27324218750007, 79.87412109375], + [98.35312500000012, 79.88432617187505], + [98.49902343749997, 79.953125], + [98.471875, 80.00913085937498], + [98.53183593750006, 80.043603515625], + [98.59648437500002, 80.05219726562495], + [98.86591796875004, 80.04541015625], + [99.29492187500003, 80.01635742187503], + [99.37070312500012, 79.98637695312505], + [99.473046875, 79.97016601562495], + [99.53613281249997, 79.94130859375002], + [99.72656250000003, 79.91992187500003], + [99.81835937499997, 79.89819335937503], + [99.94658203125002, 79.84897460937503], + [100.0612304687501, 79.77709960937506], + [99.91582031250007, 79.73833007812505], + [99.8392578125, 79.66894531250006], + [99.80546875000002, 79.653076171875], + [99.781640625, 79.628271484375], + [99.77109375000006, 79.56772460937503], + [99.74882812500002, 79.51518554687499], + [99.72119140625003, 79.49184570312502], + [99.70625, 79.4634765625], + [99.72158203125, 79.38510742187503], + [99.68066406250003, 79.32333984374998], + [99.53730468750004, 79.27656249999995], + [99.38779296875012, 79.27475585937503], + [99.16708984375012, 79.30629882812497], + [99.10439453125005, 79.30537109374995], + [99.04179687500007, 79.29301757812502], + [99.31738281249997, 79.22719726562502], + [99.51728515625004, 79.13017578125007], + [99.75078125000002, 79.107666015625], + [99.81464843750004, 79.095849609375], + [99.89960937500004, 79.00639648437507], + [99.92929687500012, 78.96142578124997], + [99.54082031250002, 78.85273437500004], + [99.43955078125012, 78.834228515625], + [98.8195312500001, 78.81826171875002], + [98.41113281250003, 78.78779296875004], + [98.28251953125002, 78.79501953125], + [98.05419921875003, 78.82099609374995], + [97.90517578125005, 78.81020507812497], + [97.68857421875006, 78.82734375000001], + [97.55546875000002, 78.82656250000002], + [97.24814453125006, 78.86801757812503], + [96.93291015625002, 78.93393554687506], + [96.87119140625006, 78.96381835937501], + [96.80781250000004, 78.98496093750006], + [96.42998046875007, 79.00302734375], + [96.34736328125004, 79.01586914062506], + [95.79648437500006, 79.00141601562504], + [95.7028320312501, 79.01201171875005], + [95.53105468750007, 79.09809570312501], + [95.4369140625, 79.09931640624998], + [95.13320312500005, 79.04960937499999], + [95.02041015625005, 79.05268554687498], + [94.79101562499997, 79.08662109374998], + [94.65234375000003, 79.12749023437505], + [94.63164062500007, 79.14086914062503], + [94.61972656250006, 79.19238281250003], + [94.4821289062501, 79.21860351562503], + [94.31376953125007, 79.30751953125005], + [94.21875, 79.40234375], + [93.75859375000002, 79.45141601562506], + [93.47871093750004, 79.46274414062503], + [93.27226562500007, 79.45839843749997], + [93.07080078124997, 79.49531250000001], + [93.40468750000005, 79.63159179687497], + [93.84726562500006, 79.70166015625006], + [94.03818359375006, 79.75600585937502], + [94.25712890625007, 79.82973632812502], + [94.34726562500006, 79.94194335937507], + [94.71943359375004, 80.01123046874997], + [94.81503906250006, 80.03481445312497], + [94.94677734374997, 80.08925781249997], + [94.98730468749997, 80.096826171875], + [95.28134765625012, 80.030517578125], + [95.33798828125012, 80.04213867187505], + [95.39072265625012, 80.07280273437499], + [95.49755859375003, 80.10561523437502], + [95.85781250000005, 80.11000976562502], + [96.1625, 80.096826171875], + [96.27734374999997, 80.11005859375004], + [96.41660156250012, 80.104345703125], + [97.1205078125, 80.15302734374998], + [97.58681640625005, 80.16826171874999], + [97.67451171875004, 80.15825195312499] + ] + ], + [ + [ + [50.05175781250003, 80.07431640625003], + [49.9708984375001, 80.06074218750001], + [49.58828125, 80.13613281250002], + [49.55605468750005, 80.15893554687503], + [49.883691406249994, 80.230224609375], + [50.25097656250003, 80.21948242187503], + [50.30996093750005, 80.18564453124998], + [50.319140625000074, 80.17236328125003], + [50.07226562500003, 80.10947265625], + [50.05175781250003, 80.07431640625003] + ] + ], + [ + [ + [55.47968750000004, 80.273828125], + [55.19511718750002, 80.226806640625], + [55.04843750000006, 80.22836914062498], + [54.9796875000001, 80.2564453125], + [55.091601562500074, 80.295556640625], + [55.24003906250002, 80.32539062500001], + [55.35322265625004, 80.31767578125005], + [55.43476562500004, 80.30224609375], + [55.47968750000004, 80.273828125] + ] + ], + [ + [ + [57.07871093750006, 80.35092773437498], + [57.12265625, 80.3169921875], + [57.118945312500074, 80.19394531249998], + [57.07275390624997, 80.13940429687497], + [57.080175781250006, 80.09467773437501], + [56.986914062500006, 80.07148437499998], + [56.20058593750005, 80.07646484375002], + [55.811621093750006, 80.08715820312497], + [55.724023437499994, 80.104736328125], + [55.942285156249994, 80.16328125000004], + [56.01220703125003, 80.20390625000005], + [55.98984375, 80.320068359375], + [56.02441406250003, 80.34130859374997], + [56.655078125000074, 80.33032226562506], + [56.70722656250004, 80.36328125], + [56.94453125000004, 80.36616210937498], + [57.07871093750006, 80.35092773437498] + ] + ], + [ + [ + [53.521386718749994, 80.18520507812497], + [52.85634765625005, 80.17324218750002], + [52.6359375000001, 80.17885742187502], + [52.60703125000006, 80.19116210937503], + [52.5504882812501, 80.20185546874998], + [52.34355468750002, 80.213232421875], + [52.21337890624997, 80.26372070312507], + [52.2702148437501, 80.27631835937498], + [52.57666015624997, 80.29692382812499], + [52.680566406249994, 80.31850585937505], + [52.71601562500004, 80.34755859375], + [52.85390625, 80.40239257812499], + [53.18564453125006, 80.41264648437505], + [53.329199218750006, 80.40239257812499], + [53.34589843750004, 80.36630859375], + [53.48613281250002, 80.32338867187497], + [53.85166015625006, 80.26835937500005], + [53.777929687500006, 80.22832031250005], + [53.65292968750006, 80.22255859375002], + [53.521386718749994, 80.18520507812497] + ] + ], + [ + [ + [57.95625, 80.12324218749995], + [57.80009765625002, 80.10405273437505], + [57.39228515625004, 80.13916015625], + [57.33232421875002, 80.15810546875005], + [57.28144531250004, 80.19389648437505], + [57.2140625000001, 80.328271484375], + [57.211718750000074, 80.36845703124999], + [57.1862304687501, 80.39624023437497], + [57.083398437499994, 80.44521484375], + [57.01113281250005, 80.46831054687502], + [57.075, 80.49394531249999], + [57.52197265625003, 80.47539062500002], + [58.48046874999997, 80.46474609375], + [58.97167968749997, 80.41586914062498], + [59.11591796875004, 80.38842773437497], + [59.25546875000006, 80.34321289062501], + [58.39794921874997, 80.31875], + [58.2838867187501, 80.29780273437498], + [58.285742187500006, 80.24814453125], + [58.25546875000006, 80.20180664062497], + [58.163183593750006, 80.19653320312497], + [57.95625, 80.12324218749995] + ] + ], + [ + [ + [54.41533203125002, 80.47280273437502], + [54.27587890624997, 80.42133789062504], + [53.811914062499994, 80.47622070312502], + [53.85, 80.50385742187495], + [53.900195312500074, 80.51542968750002], + [53.9015625000001, 80.54248046875003], + [53.85888671874997, 80.56303710937502], + [53.87724609375002, 80.60527343750002], + [54.17675781250003, 80.57436523437502], + [54.205371093750074, 80.56176757812503], + [54.40712890625005, 80.54013671874998], + [54.437304687500074, 80.49868164062497], + [54.41533203125002, 80.47280273437502] + ] + ], + [ + [ + [47.441992187500006, 80.853662109375], + [47.89951171875006, 80.81269531250001], + [48.243261718750006, 80.82348632812497], + [48.34521484374997, 80.81899414062505], + [48.44570312500005, 80.80600585937506], + [48.54736328124997, 80.77905273437497], + [48.68652343749997, 80.71777343750003], + [48.68359375000003, 80.63325195312504], + [48.62548828124997, 80.62929687500002], + [48.044335937499994, 80.66816406249995], + [47.77734375000003, 80.75625], + [47.7052734375001, 80.76518554687499], + [47.60009765624997, 80.74194335937497], + [47.51230468750006, 80.68793945312498], + [47.414160156250006, 80.67451171875001], + [47.30390625000004, 80.60620117187503], + [47.19824218750003, 80.61494140625004], + [47.144921875, 80.609033203125], + [47.011035156250074, 80.562109375], + [46.677539062500074, 80.56132812500005], + [46.623925781249994, 80.540673828125], + [46.51367187499997, 80.47553710937495], + [46.378125, 80.45678710937497], + [46.141406250000074, 80.44672851562495], + [46.059863281250074, 80.48378906249997], + [46.0236328125001, 80.54086914062503], + [45.969042968750074, 80.56948242187502], + [45.64082031250004, 80.53696289062503], + [45.38925781250006, 80.560302734375], + [45.14921875000002, 80.59873046875], + [44.9049804687501, 80.61127929687501], + [45.12451171875003, 80.65224609375], + [46.327441406250074, 80.73515625000002], + [46.799121093750074, 80.755224609375], + [47.02060546875006, 80.81440429687498], + [47.352343750000074, 80.85292968750002], + [47.441992187500006, 80.853662109375] + ] + ], + [ + [ + [62.167773437500074, 80.83476562500005], + [62.2277343750001, 80.79438476562501], + [62.19179687500005, 80.73022460937497], + [62.11455078125002, 80.68369140625], + [62.07578125000006, 80.616943359375], + [61.769140625, 80.60102539062495], + [61.68125, 80.58632812499997], + [61.59746093750002, 80.53496093749999], + [61.28515625000003, 80.50473632812506], + [61.05126953124997, 80.418603515625], + [60.722265625, 80.43466796874998], + [60.27832031249997, 80.49443359374999], + [59.90019531250002, 80.44609375000002], + [59.649804687499994, 80.43125], + [59.3463867187501, 80.50502929687502], + [59.30439453125004, 80.52153320312502], + [59.28818359375006, 80.57265625000002], + [59.30625, 80.61777343749998], + [59.38652343750002, 80.71254882812502], + [59.49511718750003, 80.76650390625], + [59.54941406250006, 80.78359375000002], + [59.59228515625003, 80.81650390624998], + [59.71582031250003, 80.83637695312504], + [60.09453125000002, 80.84858398437504], + [60.234960937500006, 80.83774414062503], + [60.2780273437501, 80.80146484375001], + [60.48154296875006, 80.80424804687505], + [60.82021484375005, 80.8265625], + [61.31318359375004, 80.86264648437506], + [61.59746093750002, 80.892919921875], + [61.85058593750003, 80.88593750000001], + [62.102929687499994, 80.86660156249997], + [62.167773437500074, 80.83476562500005] + ] + ], + [ + [ + [50.278125, 80.92724609374997], + [50.43144531250002, 80.91088867187503], + [50.80107421875002, 80.91416015624998], + [50.91767578125004, 80.89042968750002], + [51.45478515625004, 80.74467773437499], + [51.5910156250001, 80.74077148437499], + [51.70361328125003, 80.68764648437502], + [51.14619140625004, 80.60395507812501], + [50.96083984375005, 80.54047851562495], + [50.2796875, 80.52734375000003], + [49.84599609375002, 80.49765625000003], + [49.749804687500074, 80.47207031249997], + [49.79414062500004, 80.42534179687505], + [49.58593749999997, 80.37656250000006], + [48.89609375000006, 80.36918945312507], + [48.81103515625003, 80.35371093750001], + [48.67705078125002, 80.300048828125], + [48.68896484375003, 80.29028320312497], + [48.921972656250006, 80.27680664062498], + [48.959570312500006, 80.26567382812502], + [48.99082031250006, 80.24238281249998], + [49.01074218749997, 80.20742187499997], + [48.97753906250003, 80.16259765624997], + [48.891894531250074, 80.15532226562502], + [48.79736328125003, 80.16113281250003], + [48.58173828125004, 80.19536132812499], + [48.554589843749994, 80.18330078125004], + [48.532617187499994, 80.15825195312499], + [48.46679687499997, 80.11010742187503], + [48.38623046875003, 80.09580078125006], + [48.16718750000004, 80.13276367187504], + [48.0958984375001, 80.12231445312503], + [48.02578125, 80.099462890625], + [47.93994140625003, 80.088623046875], + [47.73730468749997, 80.08168945312502], + [47.632421875, 80.11196289062497], + [47.72314453125003, 80.1513671875], + [47.97753906249997, 80.21254882812502], + [47.89296875000005, 80.23925781249997], + [47.642382812500074, 80.24531249999995], + [47.44433593749997, 80.23012695312497], + [47.34306640625002, 80.18852539062502], + [47.24863281250006, 80.18022460937502], + [46.991015625000074, 80.182763671875], + [46.8458984375001, 80.23720703125], + [46.738183593749994, 80.25766601562498], + [46.644433593749994, 80.30034179687507], + [47.40292968750006, 80.44477539062501], + [47.65605468750002, 80.50053710937499], + [47.89580078125002, 80.52905273437503], + [48.20820312500004, 80.54389648437495], + [48.30615234375003, 80.56157226562499], + [48.402636718750074, 80.56879882812495], + [48.464746093749994, 80.55805664062498], + [48.625097656250006, 80.50830078124997], + [49.087792968749994, 80.515771484375], + [49.1852539062501, 80.55864257812502], + [49.192675781250074, 80.65600585937506], + [49.14746093750003, 80.71210937500001], + [49.24433593750004, 80.82138671875], + [49.50781249999997, 80.86533203124998], + [50.124316406250074, 80.92387695312499], + [50.278125, 80.92724609374997] + ] + ], + [ + [ + [80.02666015625007, 80.84814453125003], + [79.09853515625005, 80.81206054687505], + [79.00683593750003, 80.83481445312498], + [78.97763671875012, 80.84824218750003], + [79.10986328124997, 80.92358398437503], + [79.21738281250012, 80.96035156249997], + [79.80664062499997, 80.97539062500002], + [80.27958984375007, 80.94980468750003], + [80.4279296875001, 80.92768554687498], + [80.37333984375007, 80.88261718750005], + [80.34482421875012, 80.86791992187497], + [80.02666015625007, 80.84814453125003] + ] + ], + [ + [ + [61.1408203125001, 80.95034179687497], + [60.82675781250006, 80.92968750000003], + [60.321093750000074, 80.95551757812495], + [60.05820312500006, 80.98461914062503], + [60.0783203125001, 80.99916992187497], + [60.14755859375006, 81.01665039062499], + [60.5866210937501, 81.08769531250007], + [61.457421875, 81.10395507812501], + [61.56738281250003, 81.05029296875], + [61.471972656250074, 81.01103515624999], + [61.1408203125001, 80.95034179687497] + ] + ], + [ + [ + [54.71894531250004, 81.11596679687497], + [55.47070312500003, 81.019873046875], + [56.17011718750004, 81.02915039062503], + [56.47226562500006, 80.99824218749995], + [56.90966796874997, 80.91289062499999], + [57.56777343750005, 80.81972656250002], + [57.69414062500002, 80.79228515625002], + [57.58037109375002, 80.75546874999998], + [56.81474609375002, 80.66362304687502], + [56.315527343750006, 80.63286132812505], + [55.88339843750006, 80.62841796875003], + [55.7125, 80.63730468749998], + [55.540625, 80.70332031250001], + [55.11718750000003, 80.75190429687495], + [54.66816406250004, 80.73867187500002], + [54.62333984375002, 80.765234375], + [54.53281250000006, 80.78300781249999], + [54.376074218750006, 80.786962890625], + [54.06660156250004, 80.81362304687502], + [54.04541015624997, 80.87197265625], + [54.24052734375002, 80.90185546875006], + [54.367285156250006, 80.90380859375], + [54.416796875000074, 80.98652343749998], + [54.6339843750001, 81.11318359375002], + [54.71894531250004, 81.11596679687497] + ] + ], + [ + [ + [58.62236328125002, 81.04165039062502], + [58.76152343750002, 80.990966796875], + [58.815332031249994, 80.93359375000003], + [58.9025390625001, 80.89765624999998], + [58.930566406249994, 80.83168945312497], + [58.859960937500006, 80.77939453125006], + [58.64189453125002, 80.76796875000002], + [58.28564453124997, 80.76489257812503], + [57.937890625, 80.79335937499997], + [57.749804687500074, 80.88906250000002], + [57.40517578125005, 80.91513671875], + [57.21093749999997, 81.01708984374997], + [57.410253906250006, 81.04677734375], + [57.65625, 81.03154296874999], + [58.04951171875004, 81.11845703125002], + [58.10234375000002, 81.11425781249997], + [58.18994140625003, 81.09458007812506], + [58.50761718750002, 81.06176757812503], + [58.62236328125002, 81.04165039062502] + ] + ], + [ + [ + [50.75371093750002, 81.04741210937505], + [50.616015625000074, 81.04125976562503], + [50.518164062500006, 81.04555664062502], + [50.41191406250002, 81.084375], + [50.37744140625003, 81.10273437500001], + [50.368457031250074, 81.12250976562495], + [50.464941406250006, 81.126220703125], + [50.505957031250006, 81.14423828124995], + [50.521582031250006, 81.15820312500006], + [50.59179687500003, 81.16943359375003], + [50.71591796875006, 81.170654296875], + [50.8786132812501, 81.15087890624997], + [50.946191406249994, 81.10815429687497], + [50.7887695312501, 81.07182617187505], + [50.75371093750002, 81.04741210937505] + ] + ], + [ + [ + [63.37382812500002, 80.70009765624997], + [63.18759765625006, 80.697607421875], + [63.00214843750004, 80.71284179687498], + [62.7604492187501, 80.76269531250003], + [62.52031250000002, 80.821875], + [62.59257812500002, 80.85302734375006], + [62.81933593750003, 80.893798828125], + [63.115820312500006, 80.96679687500003], + [63.61474609374997, 80.98090820312498], + [63.85595703124997, 80.98115234375004], + [64.09570312499997, 80.99833984374999], + [64.16591796875, 81.03574218750006], + [64.21044921874997, 81.10634765624997], + [64.25585937500003, 81.14443359375], + [64.31015625000006, 81.17519531250005], + [64.5753906250001, 81.198486328125], + [64.80205078125002, 81.197265625], + [65.02773437500005, 81.16948242187505], + [65.17197265625006, 81.14404296875], + [65.30976562500004, 81.09643554687497], + [65.38203125000004, 81.05673828124998], + [65.3600585937501, 81.00820312500005], + [65.37207031249997, 80.96801757812503], + [65.43740234375005, 80.93071289062507], + [64.9974609375, 80.81889648437502], + [64.54833984375003, 80.75541992187505], + [63.37382812500002, 80.70009765624997] + ] + ], + [ + [ + [91.56718750000007, 81.14121093750003], + [91.2228515625001, 81.063818359375], + [89.97578125000004, 81.113134765625], + [89.91943359375003, 81.14873046875007], + [89.90117187500002, 81.17070312500002], + [90.06992187500012, 81.21372070312498], + [91.10898437500006, 81.19912109375002], + [91.47783203125007, 81.18393554687503], + [91.56718750000007, 81.14121093750003] + ] + ], + [ + [ + [96.52656250000004, 81.0755859375], + [96.56308593750012, 81.03007812500005], + [96.69326171875, 80.99418945312502], + [96.75498046875012, 80.957861328125], + [97.41367187500012, 80.84184570312499], + [97.70302734375, 80.82670898437502], + [97.83183593750002, 80.79829101562498], + [97.86992187500007, 80.76328125000006], + [97.85644531249997, 80.698095703125], + [97.74716796875012, 80.69868164062495], + [97.66542968750005, 80.678076171875], + [97.2213867187501, 80.65244140625003], + [97.11308593750007, 80.61406250000005], + [97.02539062499997, 80.53554687500002], + [97.07255859375007, 80.51987304687503], + [97.11503906250002, 80.49658203125], + [97.25019531250004, 80.36298828124995], + [97.28681640625004, 80.34252929687506], + [97.41699218749997, 80.32314453125], + [97.29843750000006, 80.27275390625005], + [97.1751953125, 80.24101562500007], + [95.85576171875007, 80.17695312499998], + [94.961328125, 80.15039062499997], + [94.66123046875006, 80.12280273437506], + [94.56503906250012, 80.12607421875], + [94.32841796875002, 80.07602539062503], + [93.87236328125002, 80.010107421875], + [93.6546875, 80.009619140625], + [93.00234375000005, 80.10209960937502], + [92.2015625, 80.179296875], + [92.0921875, 80.22333984375001], + [91.89160156249997, 80.24926757812497], + [91.6374023437501, 80.269921875], + [91.52382812500005, 80.35854492187502], + [91.68779296875002, 80.41850585937499], + [91.89667968750004, 80.47753906250003], + [92.24667968750012, 80.49912109374998], + [92.57792968750002, 80.53325195312499], + [92.82675781250006, 80.61855468749997], + [92.98105468750006, 80.70297851562503], + [93.2625, 80.79125976562497], + [92.77294921874997, 80.76865234375], + [92.59257812500007, 80.780859375], + [92.61015625000002, 80.81000976562498], + [92.7103515625, 80.87216796875003], + [92.76464843749997, 80.89306640625003], + [92.93867187500004, 80.92583007812505], + [93.06513671875004, 80.98847656250001], + [93.35869140625002, 81.03168945312504], + [93.49736328125002, 81.03920898437497], + [93.63671874999997, 81.03813476562502], + [93.8888671875001, 81.05839843750005], + [94.14013671874997, 81.08945312499998], + [94.37548828125003, 81.10737304687498], + [94.61162109375002, 81.11464843749997], + [94.83789062499997, 81.13940429687503], + [95.06093750000005, 81.1880859375], + [95.1595703125, 81.27099609375003], + [95.80068359375005, 81.28046874999998], + [95.90195312500006, 81.26059570312503], + [95.98398437500006, 81.21142578125006], + [96.07519531250003, 81.1927734375], + [96.18691406250005, 81.18393554687503], + [96.47109375, 81.09926757812502], + [96.52656250000004, 81.0755859375] + ] + ], + [ + [ + [59.31308593750006, 81.30522460937507], + [59.096972656250074, 81.29228515625002], + [58.71904296875002, 81.31352539062507], + [58.61015625000002, 81.337255859375], + [58.6344726562501, 81.36035156250003], + [58.88056640625004, 81.39184570312503], + [59.075, 81.397705078125], + [59.28085937500006, 81.36611328125002], + [59.37460937500006, 81.325048828125], + [59.31308593750006, 81.30522460937507] + ] + ], + [ + [ + [57.81025390625004, 81.54604492187502], + [57.862695312499994, 81.50644531250003], + [58.01660156249997, 81.48378906250002], + [58.43603515624997, 81.46416015625002], + [58.563867187499994, 81.41840820312504], + [58.371875, 81.38696289062503], + [57.858691406250074, 81.36806640625], + [57.911914062500074, 81.30327148437502], + [58.0153320312501, 81.25483398437501], + [57.912890625000074, 81.19750976562497], + [57.76972656250004, 81.16972656249999], + [57.45097656250002, 81.13554687500005], + [57.159472656250074, 81.178466796875], + [56.821875, 81.23793945312502], + [56.66923828125002, 81.19829101562505], + [56.5125, 81.17524414062495], + [56.3639648437501, 81.17861328125002], + [56.19199218750006, 81.22397460937503], + [55.71669921875005, 81.1884765625], + [55.57265625, 81.22807617187507], + [55.46601562500004, 81.31118164062502], + [55.7819335937501, 81.32944335937503], + [56.156835937500006, 81.30307617187498], + [56.40468750000005, 81.38701171875002], + [56.71875, 81.42338867187507], + [56.973046875, 81.51054687500007], + [57.0915039062501, 81.54121093750001], + [57.36503906250002, 81.53525390625003], + [57.456445312499994, 81.54287109375], + [57.716601562500074, 81.56464843749998], + [57.81025390625004, 81.54604492187502] + ] + ], + [ + [ + [63.65097656250006, 81.60932617187501], + [63.5285156250001, 81.59658203125], + [62.88496093750004, 81.60888671875003], + [62.57304687500002, 81.63305664062497], + [62.53125, 81.64702148437507], + [62.51523437500006, 81.65913085937495], + [62.10644531249997, 81.679345703125], + [62.28398437500002, 81.70654296875003], + [62.79492187500003, 81.71894531249998], + [63.709570312500006, 81.68730468750002], + [63.767382812500074, 81.66416015625], + [63.7824218750001, 81.64980468750002], + [63.65097656250006, 81.60932617187501] + ] + ], + [ + [ + [58.29541015625003, 81.715185546875], + [57.96484375000003, 81.69565429687503], + [57.92060546875004, 81.71049804687502], + [57.90927734375006, 81.72192382812506], + [57.945117187500074, 81.74785156249999], + [57.984960937500006, 81.797021484375], + [58.13457031250002, 81.82797851562498], + [59.261816406250006, 81.85419921874998], + [59.40849609375002, 81.825439453125], + [59.356835937499994, 81.78095703124998], + [59.35644531250003, 81.75898437499995], + [58.29541015625003, 81.715185546875] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Rwanda", + "iso_a2": "RW", + "iso_a3": "RWA", + "iso_n3": "646", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [30.50996093750001, -1.067285156250009], + [30.47705078125, -1.0830078125], + [30.47021484375, -1.131152343750003], + [30.508105468750017, -1.208203125000011], + [30.631933593750006, -1.367480468750003], + [30.710742187500017, -1.396777343750003], + [30.76220703125, -1.458691406250011], + [30.812597656250006, -1.563085937500006], + [30.827539062500023, -1.693652343750003], + [30.806738281250006, -1.850683593750006], + [30.819140625000017, -1.967480468750011], + [30.864648437500023, -2.044042968750006], + [30.8765625, -2.143359375], + [30.85498046875, -2.265429687500003], + [30.828710937500006, -2.338476562500006], + [30.797656250000017, -2.362695312500009], + [30.7625, -2.371679687500006], + [30.71484375, -2.363476562500011], + [30.656640625000023, -2.373828125], + [30.593359375, -2.396777343750003], + [30.553613281250023, -2.400097656250011], + [30.52890625, -2.395605468750006], + [30.482226562500017, -2.376074218750006], + [30.408496093750017, -2.31298828125], + [30.27099609375, -2.347851562500011], + [30.233789062500023, -2.347070312500009], + [30.18330078125001, -2.377050781250006], + [30.14228515625001, -2.413964843750009], + [30.117285156250006, -2.416601562500006], + [30.091894531250006, -2.411523437500009], + [29.973437500000017, -2.337109375000011], + [29.93017578125, -2.339550781250011], + [29.912402343750017, -2.548632812500003], + [29.892578125, -2.664648437500006], + [29.8681640625, -2.71640625], + [29.78339843750001, -2.76640625], + [29.698046875000017, -2.794726562500003], + [29.6513671875, -2.792773437500003], + [29.463671875000017, -2.808398437500003], + [29.390234375, -2.80859375], + [29.34980468750001, -2.79150390625], + [29.29707031250001, -2.673046875000011], + [29.197558593750017, -2.620312500000011], + [29.10205078125, -2.595703125], + [29.06318359375001, -2.6025390625], + [29.028613281250017, -2.66455078125], + [29.01435546875001, -2.72021484375], + [28.921777343750023, -2.68203125], + [28.893945312500023, -2.635058593750003], + [28.891406250000017, -2.555566406250009], + [28.85761718750001, -2.446679687500009], + [28.876367187500023, -2.400292968750009], + [28.912695312500006, -2.370312500000011], + [28.989550781250017, -2.312792968750003], + [29.1064453125, -2.233203125], + [29.13154296875001, -2.195117187500003], + [29.148046875, -2.1318359375], + [29.140625, -1.984570312500011], + [29.12939453125, -1.860253906250009], + [29.14326171875001, -1.816015625], + [29.196582031250017, -1.719921875000011], + [29.268164062500006, -1.62158203125], + [29.351660156250006, -1.517578125], + [29.401953125, -1.507421875], + [29.46796875000001, -1.468066406250003], + [29.53779296875001, -1.409765625], + [29.576953125000017, -1.387890625000011], + [29.609667968750017, -1.387109375], + [29.82539062500001, -1.335546875], + [29.846875, -1.351660156250006], + [29.881640625000017, -1.451757812500006], + [29.9, -1.46630859375], + [29.930078125000023, -1.469921875000011], + [29.990527343750017, -1.446972656250011], + [30.1015625, -1.36865234375], + [30.15, -1.32109375], + [30.20703125, -1.254199218750003], + [30.279882812500006, -1.178808593750006], + [30.32050781250001, -1.113085937500003], + [30.360253906250023, -1.074609375], + [30.41230468750001, -1.063085937500006], + [30.46992187500001, -1.066015625], + [30.50996093750001, -1.067285156250009] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "W. Sahara", + "iso_a2": "EH", + "iso_a3": "ESH", + "iso_n3": "732", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-8.683349609375, 27.2859375], + [-8.68310546875, 27.119287109374994], + [-8.682861328125, 26.921337890624997], + [-8.6826171875, 26.72314453125], + [-8.682324218749983, 26.497705078124994], + [-8.68212890625, 26.273193359375], + [-8.68212890625, 26.10947265625], + [-8.682226562499977, 25.995507812499994], + [-8.885644531249994, 25.995507812499994], + [-9.071923828124994, 25.995507812499994], + [-9.258203125, 25.995507812499994], + [-9.444531249999983, 25.995507812499994], + [-9.630859375, 25.995507812499994], + [-9.817187499999989, 25.99545898437499], + [-10.003515624999977, 25.99545898437499], + [-10.189794921874977, 25.99545898437499], + [-10.376123046874994, 25.99545898437499], + [-10.562451171874983, 25.99545898437499], + [-10.748779296875, 25.99545898437499], + [-10.935107421874989, 25.99545898437499], + [-11.121386718749989, 25.99545898437499], + [-11.307714843749977, 25.995410156250003], + [-11.494042968749994, 25.995410156250003], + [-11.680371093749983, 25.995410156250003], + [-11.866650390624983, 25.995410156250003], + [-12.016308593749983, 25.995410156250003], + [-12.016308593749983, 25.87631835937499], + [-12.016308593749983, 25.740136718749994], + [-12.016308593749983, 25.60400390625], + [-12.016308593749983, 25.46787109374999], + [-12.016308593749983, 25.331689453124994], + [-12.016308593749983, 25.195556640625], + [-12.016308593749983, 25.059375], + [-12.016308593749983, 24.923242187499994], + [-12.016308593749983, 24.787109375], + [-12.016308593749983, 24.65097656249999], + [-12.016308593749983, 24.514794921874994], + [-12.016308593749983, 24.378662109375], + [-12.016308593749983, 24.242480468750003], + [-12.016308593749983, 24.106347656249994], + [-12.016308593749983, 23.97021484375], + [-12.016308593749983, 23.834033203125003], + [-12.016308593749983, 23.697900390624994], + [-12.016308593749983, 23.576464843750003], + [-12.0234375, 23.467578125], + [-12.083349609374977, 23.435449218749994], + [-12.226171874999977, 23.377490234375003], + [-12.372900390624977, 23.318017578124994], + [-12.55937, 23.290820312500003], + [-12.620410156249989, 23.27133789062499], + [-12.739599609374977, 23.19272460937499], + [-12.89599609375, 23.089550781249997], + [-13.031494140625, 23.000244140625], + [-13.120898437499989, 22.884082031250003], + [-13.153271484374983, 22.820507812499997], + [-13.16650390625, 22.753222656250003], + [-13.155957031249983, 22.68930664062499], + [-13.107324218749994, 22.560742187499997], + [-13.094335937499977, 22.495996093749994], + [-13.086767578124977, 22.383251953124997], + [-13.078466796874977, 22.260449218749997], + [-13.069580078125, 22.128173828125], + [-13.060644531249977, 21.995751953124994], + [-13.051220703124983, 21.854785156250003], + [-13.041748046875, 21.713818359374997], + [-13.0322265625, 21.572070312500003], + [-13.025097656249983, 21.466796875], + [-13.016210937499977, 21.333935546874997], + [-13.167431640624983, 21.333789062500003], + [-13.396728515625, 21.333544921875003], + [-13.626025390624989, 21.333251953125], + [-13.855371093749994, 21.332958984374997], + [-14.084667968749983, 21.332714843749997], + [-14.31396484375, 21.332421875], + [-14.543261718749989, 21.33212890624999], + [-14.772607421874994, 21.33188476562499], + [-15.001904296874983, 21.331591796875003], + [-15.231201171875, 21.331298828125], + [-15.460546874999977, 21.3310546875], + [-15.689794921874977, 21.330761718749997], + [-15.919140624999983, 21.33046875], + [-16.1484375, 21.330224609374994], + [-16.37773437499999, 21.32993164062499], + [-16.607031249999977, 21.329638671875003], + [-16.836328125, 21.329394531250003], + [-16.964550781249983, 21.329248046874994], + [-17.00590820312499, 21.14243164062499], + [-17.042382812499994, 21.008007812499997], + [-17.06396484375, 20.898828125], + [-17.048046874999983, 20.80615234375], + [-17.098779296874994, 20.856884765624997], + [-17.009619140624977, 21.377099609374994], + [-17.003076171874994, 21.420703125], + [-17.00297851562499, 21.42075195312499], + [-16.951123046874983, 21.43027343749999], + [-16.73095703125, 21.4703125], + [-16.581005859374983, 21.48105468749999], + [-16.190869140624983, 21.48105468749999], + [-16.041015625, 21.50058593749999], + [-15.920849609374983, 21.50058593749999], + [-15.750927734374983, 21.49082031249999], + [-15.610791015624983, 21.4703125], + [-15.4609375, 21.45078125], + [-15.290966796874983, 21.45078125], + [-15.15087890625, 21.441015625], + [-14.971142578124983, 21.441015625], + [-14.8408203125, 21.45078125], + [-14.7509765625, 21.50058593749999], + [-14.670849609374983, 21.60019531249999], + [-14.64111328125, 21.68027343749999], + [-14.610791015624983, 21.75058593749999], + [-14.62109375, 21.82089843749999], + [-14.630859375, 21.8609375], + [-14.581005859374983, 21.91074218749999], + [-14.52099609375, 21.990869140624994], + [-14.460888671874983, 22.040625], + [-14.44091796875, 22.08066406249999], + [-14.380810546874983, 22.120703125], + [-14.31103515625, 22.191015625], + [-14.27099609375, 22.24082031249999], + [-14.22119140625, 22.31015625], + [-14.2109375, 22.370703125], + [-14.190869140624983, 22.45078125], + [-14.190869140624983, 22.59042968749999], + [-14.1708984375, 22.76035156249999], + [-14.141064453124983, 22.870703125], + [-14.12109375, 22.960546875], + [-14.10107421875, 23.10019531249999], + [-14.040966796874983, 23.34042968749999], + [-14.02099609375, 23.41074218749999], + [-13.980908203124983, 23.52011718749999], + [-13.931103515624983, 23.620703125], + [-13.89111328125, 23.691015625], + [-13.840771484374983, 23.75058593749999], + [-13.770947265624983, 23.790625], + [-13.661083984374983, 23.83066406249999], + [-13.5810546875, 23.870703125], + [-13.48095703125, 23.91074218749999], + [-13.39111328125, 23.941015625], + [-13.310986328124983, 23.98105468749999], + [-13.28076171875, 24.02011718749999], + [-13.23095703125, 24.09042968749999], + [-13.1611328125, 24.2203125], + [-13.12109375, 24.300390625], + [-13.06103515625, 24.40097656249999], + [-12.991162109374983, 24.4703125], + [-12.947851562499977, 24.497265625], + [-12.9111328125, 24.52011718749999], + [-12.820751953124983, 24.57089843749999], + [-12.7109375, 24.63046875], + [-12.630810546874983, 24.68027343749999], + [-12.56103515625, 24.73105468749999], + [-12.5009765625, 24.77011718749999], + [-12.43115234375, 24.83066406249999], + [-12.40087890625, 24.88046875], + [-12.36083984375, 24.9703125], + [-12.310986328124983, 25.1109375], + [-12.270947265624983, 25.260302734375003], + [-12.23095703125, 25.42050781249999], + [-12.201123046874983, 25.52011718749999], + [-12.170849609374983, 25.640234375], + [-12.130859375, 25.73105468749999], + [-12.101025390624983, 25.83066406249999], + [-12.0810546875, 25.870703125], + [-12.0810546875, 25.92050781249999], + [-12.060986328124983, 25.99082031249999], + [-12.056787109374994, 25.996337890625], + [-12.03076171875, 26.030859375], + [-11.960888671874983, 26.050390625], + [-11.880859375, 26.0708984375], + [-11.7548828125, 26.0865234375], + [-11.718212890624983, 26.1041015625], + [-11.69921875, 26.1626953125], + [-11.684521484374983, 26.2134765625], + [-11.63720703125, 26.2955078125], + [-11.583984375, 26.3609375], + [-11.553173828124983, 26.4009765625], + [-11.511669921874983, 26.4703125], + [-11.470703125, 26.5201171875], + [-11.39990234375, 26.58359375], + [-11.337890625, 26.6333984375], + [-11.316845703124983, 26.6841796875], + [-11.316845703124983, 26.7447265625], + [-11.361279296874983, 26.7935546875], + [-11.392578125, 26.8833984375], + [-11.263623046874983, 26.9107421875], + [-11.150341796874983, 26.941015625], + [-11.046826171874983, 26.9703125], + [-10.922802734374983, 27.0103515625], + [-10.830078125, 27.0103515625], + [-10.757763671874983, 27.0201171875], + [-10.654248046874983, 27.0005859375], + [-10.55126953125, 26.9908203125], + [-10.478955078124983, 26.960546875], + [-10.354931640624983, 26.9009765625], + [-10.25146484375, 26.8609375], + [-10.189453125, 26.8609375], + [-10.123046875, 26.88046875], + [-10.066845703124983, 26.9087890625], + [-10.03271484375, 26.9107421875], + [-9.980908203124983, 26.890234375], + [-9.900341796874983, 26.8501953125], + [-9.81787109375, 26.8501953125], + [-9.7353515625, 26.8609375], + [-9.67333984375, 26.9107421875], + [-9.56982421875, 26.9908203125], + [-9.4873046875, 27.050390625], + [-9.413037109374983, 27.0884765625], + [-9.352978515624983, 27.0982421875], + [-9.285595703124983, 27.0982421875], + [-9.208447265624983, 27.1001953125], + [-9.084423828124983, 27.0904296875], + [-9.001904296874983, 27.0904296875], + [-8.8890625, 27.1041015625], + [-8.794873046874983, 27.120703125], + [-8.753857421874983, 27.1509765625], + [-8.753857421874983, 27.191015625], + [-8.774365234374983, 27.2505859375], + [-8.796826171874983, 27.308203125], + [-8.802685546874983, 27.3609375], + [-8.788964843749994, 27.416552734374996], + [-8.774365234374983, 27.460546875], + [-8.784570312499994, 27.530859375], + [-8.813916015624983, 27.6138671875], + [-8.817773437499994, 27.655908203124994], + [-8.817822265624983, 27.656445312499997], + [-8.683349609375, 27.656445312499997], + [-8.683349609375, 27.490234375], + [-8.683349609375, 27.2859375] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Saudi Arabia", + "iso_a2": "SA", + "iso_a3": "SAU", + "iso_n3": "682", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [41.98769531250005, 16.715625], + [42.06503906250006, 16.710058593750006], + [42.03320312499997, 16.741943359375], + [42.02636718750003, 16.757666015625006], + [42.059960937499994, 16.803515625000017], + [42.17041015625003, 16.708642578124966], + [42.1671875000001, 16.59638671875001], + [42.15781250000006, 16.570703125000023], + [42.127734375000074, 16.594824218750063], + [42.10839843750003, 16.61845703124999], + [42.10234375000002, 16.643945312500023], + [42.07177734375003, 16.671484375000034], + [41.96416015625002, 16.653466796875023], + [41.897265625000074, 16.684277343749983], + [41.80156250000002, 16.778759765624955], + [41.7760742187501, 16.84687], + [41.81611328125004, 16.860156250000017], + [41.85820312500002, 16.892919921875034], + [41.88496093750004, 16.946826171875017], + [41.86044921875006, 17.002539062499977], + [41.917285156250074, 16.99365234375003], + [41.9479492187501, 16.936425781250023], + [41.953906250000074, 16.80625], + [41.9625, 16.778662109375034], + [41.946679687499994, 16.748925781250023], + [41.98769531250005, 16.715625] + ] + ], + [ + [ + [36.90166015625002, 25.38305664062497], + [36.87519531250004, 25.38305664062497], + [36.80507812500005, 25.45073242187499], + [36.7638671875001, 25.500585937500034], + [36.722070312499994, 25.534033203125006], + [36.53027343750003, 25.6015625], + [36.504296875, 25.645117187499977], + [36.53359375, 25.688720703125], + [36.554101562499994, 25.645361328125034], + [36.58876953125005, 25.619824218749983], + [36.74755859374997, 25.558740234374966], + [36.924414062500006, 25.42553710937503], + [36.9547851562501, 25.414648437500006], + [36.90166015625002, 25.38305664062497] + ] + ], + [ + [ + [36.595507812500074, 25.712792968749994], + [36.58613281250004, 25.69921875], + [36.54394531249997, 25.734277343750023], + [36.54648437500006, 25.811621093749977], + [36.58271484375004, 25.855517578125045], + [36.57988281250002, 25.795410156250057], + [36.595605468749994, 25.73486328124997], + [36.595507812500074, 25.712792968749994] + ] + ], + [ + [ + [44.71650390625004, 29.19360351562503], + [45.05029296875003, 29.167089843750034], + [45.498925781249994, 29.131542968749983], + [45.94970703125003, 29.095849609374994], + [46.35644531250003, 29.06367187500001], + [46.53144531250004, 29.09624023437499], + [46.7248046875001, 29.074609375000023], + [46.982226562500074, 29.045654296875], + [47.13876953125006, 29.026171875000017], + [47.433203125, 28.989550781250017], + [47.52128906250002, 28.83784179687501], + [47.55322265625003, 28.731542968750034], + [47.583105468750006, 28.62797851562499], + [47.671289062499994, 28.53315429687504], + [47.87197265625005, 28.53544921874996], + [48.049609375000074, 28.5375], + [48.26875, 28.54052734375003], + [48.442480468750006, 28.542919921874983], + [48.49853515624997, 28.448876953124994], + [48.523046875, 28.35502929687499], + [48.626367187499994, 28.13256835937503], + [48.773730468750074, 27.959082031250034], + [48.808984375, 27.895898437499966], + [48.83281250000002, 27.800683593750023], + [48.80722656250006, 27.765283203124994], + [48.797167968750074, 27.72431640625001], + [48.90644531250004, 27.62905273437505], + [49.08691406250003, 27.548583984375], + [49.15751953125002, 27.528222656250023], + [49.2375, 27.49272460937499], + [49.17509765625002, 27.43764648437505], + [49.281542968750074, 27.310498046874983], + [49.40527343749997, 27.18095703124996], + [49.537695312500006, 27.151757812499966], + [49.71650390625004, 26.955859375000045], + [49.986132812500074, 26.828906250000017], + [50.149804687499994, 26.66264648437499], + [50.13466796875005, 26.659521484375063], + [50.08662109375004, 26.676416015625023], + [50.02636718750003, 26.69921874999997], + [50.00810546875002, 26.678515625000017], + [50.01132812500006, 26.608789062500023], + [50.02734375000003, 26.52685546875003], + [50.11074218750005, 26.455957031249966], + [50.184960937499994, 26.404931640624966], + [50.21386718750003, 26.30849609375005], + [50.15546875000004, 26.100537109374955], + [50.13525390624997, 26.100683593749977], + [50.095996093750074, 26.118701171875017], + [50.05390625000004, 26.12285156249996], + [50.031640625, 26.11098632812505], + [50.08105468749997, 25.96137695312501], + [50.13027343750005, 25.84663085937501], + [50.18964843750004, 25.755810546874983], + [50.23896484375004, 25.622851562500074], + [50.28125, 25.566113281249955], + [50.45517578125006, 25.424804687500057], + [50.5084960937501, 25.306689453125045], + [50.55791015625002, 25.086669921875], + [50.66689453125005, 24.96381835937501], + [50.72558593749997, 24.869384765625057], + [50.80439453125004, 24.789257812499983], + [50.85566406250004, 24.67963867187501], + [50.928320312500006, 24.595117187500023], + [50.96601562500004, 24.573925781249983], + [51.022753906250074, 24.56523437499999], + [51.09335937500006, 24.564648437499955], + [51.178027343750074, 24.586718750000017], + [51.26796875, 24.607226562500017], + [51.33847656250006, 24.564355468749994], + [51.41123046875006, 24.570800781250057], + [51.418359375, 24.53095703125001], + [51.369921875000074, 24.476904296875034], + [51.30986328125002, 24.340380859375017], + [51.3952148437501, 24.31884765624997], + [51.4767578125001, 24.308203125000034], + [51.534765625, 24.28632812500001], + [51.56835937500003, 24.286181640625074], + [51.56835937500003, 24.257910156250006], + [51.572167968749994, 24.128320312499966], + [51.592578125000074, 24.07885742187503], + [51.629296875, 24.035009765625063], + [51.684375, 23.969531250000045], + [51.739355468750006, 23.90400390625001], + [51.79433593750005, 23.838476562499977], + [51.849414062500074, 23.772998046875045], + [51.904394531250006, 23.70751953125003], + [51.95947265625003, 23.641992187500023], + [52.01445312500002, 23.57646484374999], + [52.06943359375006, 23.51098632812497], + [52.12451171874997, 23.445458984375023], + [52.179492187500074, 23.379980468750006], + [52.2345703125001, 23.314453125], + [52.28955078125003, 23.248974609374983], + [52.34453125000002, 23.18349609375005], + [52.39960937500004, 23.117968750000017], + [52.45458984374997, 23.052441406249983], + [52.50957031250002, 22.986962890624966], + [52.55507812500005, 22.932812499999955], + [52.63916015625003, 22.922509765624994], + [52.66591796875005, 22.919287109375034], + [52.741601562499994, 22.910009765625006], + [52.859277343749994, 22.895605468750006], + [53.01191406250004, 22.877001953125045], + [53.19238281250003, 22.854931640624983], + [53.39404296874997, 22.83032226562503], + [53.6095703125001, 22.80400390624999], + [53.83212890625006, 22.776806640624955], + [54.054589843749994, 22.749658203125023], + [54.270117187500006, 22.72333984375001], + [54.47167968749997, 22.698730468750057], + [54.652246093749994, 22.676660156249994], + [54.8048828125001, 22.658007812500017], + [54.92246093750006, 22.643652343750006], + [54.99824218750004, 22.634375], + [55.025, 22.631152343750045], + [55.104296875000074, 22.621484375000023], + [55.11943359375002, 22.623925781249994], + [55.185839843750074, 22.7041015625], + [55.25927734375003, 22.590917968750034], + [55.320117187500074, 22.496923828125063], + [55.40380859374997, 22.36782226562505], + [55.49277343750006, 22.230664062499983], + [55.57773437500006, 22.099511718749994], + [55.641015625, 22.001855468749994], + [55.60742187499997, 21.90039062500003], + [55.57080078124997, 21.78969726562505], + [55.53417968749997, 21.679003906250045], + [55.49755859374997, 21.568310546874955], + [55.46093749999997, 21.457617187499977], + [55.42431640624997, 21.34692382812497], + [55.38769531249997, 21.236230468749994], + [55.35107421874997, 21.12553710937499], + [55.31445312499997, 21.014794921874994], + [55.277929687500006, 20.904101562500017], + [55.24121093749997, 20.79340820312501], + [55.20458984374997, 20.682714843750034], + [55.168066406250006, 20.57202148437503], + [55.131445312500006, 20.46132812500005], + [55.09472656249997, 20.350634765625045], + [55.058203125, 20.239941406249983], + [55.02148437499997, 20.129248046874977], + [54.97734375000002, 19.995947265625006], + [54.87109374999997, 19.960498046875074], + [54.69902343750002, 19.903125], + [54.52705078125004, 19.845800781250063], + [54.35498046874997, 19.788476562500023], + [54.18300781250005, 19.731152343749955], + [54.01093750000004, 19.673828125], + [53.83886718750003, 19.616503906250045], + [53.66689453125005, 19.559130859375017], + [53.4948242187501, 19.501806640625063], + [53.32285156250006, 19.444482421874994], + [53.15078125, 19.387158203124955], + [52.9787109375001, 19.32978515625001], + [52.80673828125006, 19.272460937500057], + [52.634667968749994, 19.21513671874999], + [52.46269531250002, 19.157812500000034], + [52.290625, 19.100488281249994], + [52.118554687499994, 19.043164062499955], + [51.977636718750006, 18.996142578125074], + [51.742968750000074, 18.96455078125001], + [51.514941406250074, 18.93388671874999], + [51.258398437500006, 18.899365234374983], + [50.95, 18.857861328124955], + [50.7082031250001, 18.825292968749977], + [50.355273437500074, 18.777783203124983], + [50.038964843749994, 18.735253906250023], + [49.742089843749994, 18.69531249999997], + [49.445117187500074, 18.65532226562499], + [49.19238281250003, 18.621337890625], + [49.04199218750003, 18.58178710937503], + [48.86484375, 18.495214843750063], + [48.59296875000004, 18.362402343750006], + [48.31582031250005, 18.227050781250057], + [48.17216796875002, 18.156933593749983], + [48.0216796875001, 17.976953125], + [47.9455078125001, 17.885839843750006], + [47.80781250000004, 17.72109375], + [47.70371093750006, 17.596826171874994], + [47.57958984374997, 17.448339843750034], + [47.52539062499997, 17.31611328125001], + [47.441796875, 17.111865234375045], + [47.36962890625003, 17.060400390625063], + [47.251269531250074, 16.993945312500017], + [47.14355468749997, 16.946679687499966], + [46.97568359375006, 16.953466796875034], + [46.879980468750006, 17.079003906250023], + [46.77851562500004, 17.212109374999955], + [46.72763671875006, 17.26557617187501], + [46.68203125, 17.2685546875], + [46.51347656250002, 17.25166015625001], + [46.31035156250002, 17.231298828125063], + [46.07080078124997, 17.25317382812497], + [45.79443359375003, 17.278417968750063], + [45.5353515625001, 17.30205078124999], + [45.40654296875002, 17.319775390624955], + [45.236621093750074, 17.406201171874983], + [45.192773437499994, 17.423388671875017], + [45.14804687500006, 17.427441406249955], + [44.9464843750001, 17.429589843750023], + [44.7467773437501, 17.431689453125017], + [44.54648437500006, 17.404345703125045], + [44.35468750000004, 17.414355468750045], + [44.1559570312501, 17.398535156250006], + [44.08593750000003, 17.365527343750045], + [44.008203125, 17.36748046874999], + [43.95966796875004, 17.33833007812501], + [43.91699218749997, 17.32470703124997], + [43.86640625000004, 17.349609375], + [43.804296875, 17.344140625000023], + [43.71298828125006, 17.365527343750045], + [43.653417968750006, 17.42187], + [43.597265625, 17.47143554687503], + [43.53925781250004, 17.49873046875001], + [43.47421875, 17.515917968750045], + [43.41796875000003, 17.516259765625023], + [43.34609375, 17.486035156249983], + [43.30214843750005, 17.45678710937497], + [43.19091796875003, 17.359375], + [43.186328125000074, 17.32470703124997], + [43.23691406250006, 17.266455078125006], + [43.2213867187501, 17.23925781249997], + [43.1559570312501, 17.20502929687504], + [43.1359375000001, 17.11298828125001], + [43.12617187500004, 17.06245117187501], + [43.116503906250074, 16.941992187500006], + [43.145605468750006, 16.846777343750063], + [43.18447265625005, 16.811816406250045], + [43.186328125000074, 16.77099609374997], + [43.16503906249997, 16.689404296874955], + [43.104785156250074, 16.664160156250063], + [43.06074218750004, 16.586621093749983], + [43.03359375000005, 16.550390624999977], + [42.98632812499997, 16.50908203124999], + [42.79931640624997, 16.37177734375001], + [42.78984375000002, 16.4515625], + [42.73066406250004, 16.56982421875003], + [42.726367187500074, 16.65332031249997], + [42.69882812500006, 16.736962890624966], + [42.64746093749997, 16.801367187500034], + [42.5529296875001, 16.868457031250017], + [42.54414062500004, 16.959667968749955], + [42.475, 17.049853515625045], + [42.38330078124997, 17.122460937499994], + [42.332421875, 17.256640625000074], + [42.29394531249997, 17.434960937499966], + [42.05224609375003, 17.669335937500023], + [41.75, 17.88574218749997], + [41.65800781250002, 18.007666015625034], + [41.50761718750002, 18.25610351562503], + [41.431738281250006, 18.452441406250045], + [41.22949218750003, 18.678417968749983], + [41.220800781250006, 18.765234375], + [41.19082031250005, 18.871191406250006], + [41.14414062500006, 18.989062500000045], + [41.116015625000074, 19.082177734374994], + [40.9132812500001, 19.490136718749994], + [40.8478515625001, 19.555273437500006], + [40.79160156250006, 19.646386718750023], + [40.77705078125004, 19.716894531250006], + [40.75917968750005, 19.755468750000034], + [40.6159179687501, 19.822363281249977], + [40.48222656250002, 19.993457031250017], + [40.080664062500006, 20.265917968750017], + [39.88408203125002, 20.29296875000003], + [39.728320312500074, 20.390332031249955], + [39.613671875, 20.517675781249977], + [39.49121093749997, 20.737011718749983], + [39.27607421875004, 20.973974609375034], + [39.093554687500074, 21.31035156249999], + [39.150683593750074, 21.432763671874966], + [39.14707031250006, 21.518994140624955], + [39.0910156250001, 21.663964843749994], + [39.02978515624997, 21.775976562500006], + [38.98789062500006, 21.88173828125005], + [39.0211914062501, 22.033447265625057], + [39.03398437500002, 22.20336914062503], + [39.06992187500006, 22.29365234375004], + [39.09589843750004, 22.392773437499983], + [39.06201171874997, 22.592187500000023], + [39.00136718750005, 22.698974609375], + [39.007421875, 22.770068359375017], + [38.938769531250074, 22.804785156249977], + [38.88291015625006, 22.88203125000001], + [38.9411132812501, 22.881835937500057], + [38.835546875, 22.989062500000045], + [38.796875, 23.048583984375], + [38.7570312500001, 23.19428710937501], + [38.70605468750003, 23.305517578125034], + [38.54228515625002, 23.557910156250017], + [38.46416015625002, 23.71186523437504], + [38.28886718750002, 23.910986328125006], + [38.09863281249997, 24.058007812500023], + [37.977832031250074, 24.124560546875017], + [37.91972656250002, 24.185400390625063], + [37.8209960937501, 24.1875], + [37.71337890625003, 24.27441406249997], + [37.63818359374997, 24.277734375000023], + [37.54306640625006, 24.291650390625023], + [37.43095703125002, 24.459033203125017], + [37.338476562500006, 24.615820312499977], + [37.18085937500004, 24.82001953125001], + [37.22041015625004, 24.873339843750045], + [37.26630859375004, 24.960058593750034], + [37.24345703125002, 25.073437499999955], + [37.21835937500006, 25.150683593750074], + [37.148828125, 25.291113281249977], + [36.920703125000074, 25.641162109375074], + [36.86015625000002, 25.692480468750034], + [36.76269531250003, 25.751318359375034], + [36.70253906250005, 25.902880859375017], + [36.675195312499994, 26.03886718749999], + [36.51875, 26.10488281250005], + [36.24960937500006, 26.594775390625017], + [36.09375, 26.765820312499955], + [36.03203125000002, 26.881005859374966], + [35.85166015625006, 27.070458984375023], + [35.76298828125002, 27.25878906250003], + [35.581347656250074, 27.432470703125063], + [35.42382812500003, 27.733789062499966], + [35.18046875000002, 28.03486328125004], + [35.0783203125001, 28.087011718750006], + [34.82753906250005, 28.108593749999955], + [34.722070312499994, 28.130664062500017], + [34.625, 28.064501953125017], + [34.61621093749997, 28.148339843749966], + [34.6833007812501, 28.26411132812501], + [34.779882812500006, 28.50732421875], + [34.79912109375002, 28.720507812500017], + [34.95078125, 29.353515625], + [35.1637695312501, 29.320947265625023], + [35.33916015625002, 29.294091796874966], + [35.59531250000006, 29.25488281249997], + [35.86035156249997, 29.214257812499966], + [36.01542968750002, 29.190478515625017], + [36.068457031250006, 29.200537109375006], + [36.28281250000006, 29.355371093750023], + [36.47607421874997, 29.49511718749997], + [36.59179687500003, 29.666113281250006], + [36.703906250000074, 29.831640624999977], + [36.75527343750005, 29.86601562499996], + [36.92705078125002, 29.897070312499977], + [37.1994140625001, 29.94628906249997], + [37.46923828125003, 29.995068359374955], + [37.49072265625003, 30.01171874999997], + [37.55361328125005, 30.14458007812496], + [37.63359375000002, 30.313281250000045], + [37.64990234374997, 30.330957031249994], + [37.669726562500074, 30.34814453125003], + [37.862890625, 30.44262695312503], + [37.98007812500006, 30.5], + [37.81298828124997, 30.669287109375006], + [37.65546875000004, 30.828955078125034], + [37.47900390624997, 31.007763671874955], + [37.32949218750005, 31.146826171875034], + [37.10527343750002, 31.35517578125004], + [36.95859375000006, 31.491503906250017], + [37.215625, 31.55610351562501], + [37.49335937500004, 31.625878906250023], + [37.773828125, 31.69633789062499], + [38.111425781250006, 31.78115234375005], + [38.37548828124997, 31.84746093749996], + [38.769628906250006, 31.946484374999983], + [38.962304687499994, 31.99492187499999], + [38.99707031249997, 32.00747070312505], + [39.145410156249994, 32.12451171875], + [39.36865234374997, 32.09174804687498], + [39.70410156250003, 32.04252929687499], + [40.02783203124997, 31.995019531249994], + [40.3693359375001, 31.93896484375003], + [40.47890625000005, 31.89335937499999], + [40.80839843750002, 31.725439453125063], + [41.02246093750003, 31.61635742187505], + [41.27246093749997, 31.48901367187503], + [41.58505859375006, 31.329736328124994], + [41.799707031249994, 31.220361328125023], + [42.07441406250004, 31.08037109374999], + [42.28857421874997, 30.92041015625], + [42.55976562500004, 30.71777343750003], + [42.857714843750074, 30.495214843749977], + [43.103125, 30.32221679687501], + [43.44082031250005, 30.083984375000057], + [43.77373046875002, 29.84921875], + [44.09960937499997, 29.619335937499983], + [44.36074218750005, 29.435253906249955], + [44.69082031250005, 29.20234375000001], + [44.71650390625004, 29.19360351562503] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Sudan", + "iso_a2": "SD", + "iso_a3": "SDN", + "iso_n3": "729", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [31.46640625, 22.084667968749997], + [31.434472656250023, 21.995849609375], + [31.621679687500006, 21.995849609375], + [31.949804687500006, 21.995898437500003], + [32.27783203125, 21.995996093749994], + [32.606054687500006, 21.995996093749994], + [32.93408203125, 21.99609375], + [33.26220703125, 21.996142578125003], + [33.59033203125, 21.99619140624999], + [33.91845703125, 21.996240234374994], + [34.24648437500002, 21.996289062499997], + [34.57460937500002, 21.996337890625], + [34.90273437500002, 21.996386718750003], + [35.23085937500002, 21.99643554687499], + [35.55898437500002, 21.996484375], + [35.88701171875002, 21.996533203124997], + [36.21523437500002, 21.99658203125], + [36.54326171875002, 21.996630859375003], + [36.87138671875002, 21.996728515624994], + [36.88261718750002, 21.768798828125], + [36.92695312500001, 21.58652343749999], + [37.081152343750006, 21.32602539062499], + [37.21171875000002, 21.185839843750003], + [37.25859375000002, 21.108544921874994], + [37.26318359375, 21.07265625], + [37.25722656250002, 21.03940429687499], + [37.21748046875001, 21.07763671875], + [37.15058593750001, 21.103759765625], + [37.14111328125, 20.98178710937499], + [37.156835937500006, 20.894921875], + [37.17265625000002, 20.731982421875003], + [37.2275390625, 20.55673828124999], + [37.18789062500002, 20.394921875], + [37.19316406250002, 20.120703125], + [37.26259765625002, 19.791894531249994], + [37.24843750000002, 19.58188476562499], + [37.36152343750001, 19.091992187499997], + [37.471289062500006, 18.820117187500003], + [37.53164062500002, 18.753125], + [37.59941406250002, 18.717431640624994], + [37.72978515625002, 18.6943359375], + [37.921875, 18.555908203125], + [38.07402343750002, 18.409765625], + [38.128125, 18.333300781250003], + [38.201757812500006, 18.249414062499994], + [38.25214843750001, 18.264404296875], + [38.28310546875002, 18.28671875], + [38.33291015625002, 18.219042968750003], + [38.57402343750002, 18.072949218749997], + [38.609472656250006, 18.005078125], + [38.52285156250002, 17.938525390625003], + [38.422460937500006, 17.823925781249997], + [38.39716796875001, 17.778369140625003], + [38.38554687500002, 17.751269531250003], + [38.37373046875001, 17.717333984375003], + [38.34736328125001, 17.68359375], + [38.28984375000002, 17.637011718750003], + [38.26728515625001, 17.61669921875], + [38.253515625, 17.584765625], + [38.21904296875002, 17.56396484375], + [38.18154296875002, 17.56284179687499], + [38.148535156250006, 17.548535156249997], + [38.09892578125002, 17.52646484374999], + [38.02529296875002, 17.537792968749997], + [37.95009765625002, 17.51767578124999], + [37.92255859375001, 17.492333984374994], + [37.86298828125001, 17.470263671875003], + [37.803320312500006, 17.465527343749997], + [37.78242187500001, 17.4580078125], + [37.72597656250002, 17.42050781249999], + [37.65673828125, 17.36826171874999], + [37.57597656250002, 17.335009765625003], + [37.547460937500006, 17.324121093749994], + [37.51015625000002, 17.288134765625003], + [37.45292968750002, 17.108691406250003], + [37.41103515625002, 17.06171875], + [37.340429687500006, 17.057080078124997], + [37.24882812500002, 17.056884765625], + [37.16953125, 17.04140625], + [37.0615234375, 17.061279296875], + [37.00898437500001, 17.058886718750003], + [36.995214843750006, 17.020556640625003], + [36.97578125000001, 16.86655273437499], + [36.97871093750001, 16.800585937500003], + [36.93574218750001, 16.722363281249997], + [36.887792968750006, 16.624658203124994], + [36.90546875000001, 16.459521484375003], + [36.91376953125001, 16.296191406250003], + [36.82587890625001, 16.05029296875], + [36.8134765625, 15.993945312500003], + [36.72451171875002, 15.798876953125003], + [36.67919921875, 15.726367187500003], + [36.566015625, 15.362109375], + [36.52177734375002, 15.250146484374994], + [36.4267578125, 15.132080078125], + [36.44814453125002, 14.940087890624994], + [36.470800781250006, 14.736474609374994], + [36.492285156250006, 14.544335937499994], + [36.52431640625002, 14.2568359375], + [36.443945312500006, 13.988427734374994], + [36.44707031250002, 13.842041015625], + [36.390625, 13.626074218749991], + [36.346289062500006, 13.526269531249994], + [36.30683593750001, 13.466845703125003], + [36.273535156250006, 13.40576171875], + [36.21220703125002, 13.27109375], + [36.16015625, 13.093310546874989], + [36.13710937500002, 12.9111328125], + [36.135351562500006, 12.805322265624994], + [36.12519531250001, 12.75703125], + [36.107519531250006, 12.726464843749994], + [35.98759765625002, 12.706298828125], + [35.82060546875002, 12.684863281249989], + [35.730566406250006, 12.661035156249994], + [35.67021484375002, 12.623730468749997], + [35.59609375000002, 12.537304687499997], + [35.44960937500002, 12.300585937499989], + [35.37275390625001, 12.155566406249989], + [35.25244140625, 11.95703125], + [35.1123046875, 11.816552734374994], + [35.08271484375001, 11.748291015625], + [35.059667968750006, 11.621044921874997], + [35.007910156250006, 11.419873046874997], + [34.96074218750002, 11.276757812499994], + [34.96914062500002, 11.161767578124994], + [34.924902343750006, 10.962109375], + [34.93144531250002, 10.864794921874989], + [34.88232421875, 10.810546875], + [34.81621093750002, 10.759179687499994], + [34.77128906250002, 10.746191406249991], + [34.675, 10.804931640625], + [34.60175781250001, 10.864550781249989], + [34.571875, 10.880175781249989], + [34.50800781250001, 10.842871093749991], + [34.43144531250002, 10.787841796875], + [34.34394531250001, 10.658642578124997], + [34.27568359375002, 10.52812], + [34.31484375000002, 10.2515625], + [34.31123046875001, 10.190869140624997], + [34.29150390625, 10.124755859375], + [34.18525390625001, 9.918554687499991], + [34.15908203125002, 9.853417968749994], + [34.12031250000001, 9.7296875], + [34.07929687500001, 9.513476562499989], + [34.078125, 9.461523437499991], + [34.078125, 9.461523437499991], + [34.076757812500006, 9.461523437499991], + [33.89091796875002, 9.462207031249989], + [33.88789062500001, 9.463525390624994], + [33.884863281250006, 9.46640625], + [33.88212890625002, 9.47119140625], + [33.87880859375002, 9.477734375], + [33.87148437500002, 9.506152343749989], + [33.867773437500006, 9.550341796874989], + [33.8740234375, 9.626757812499989], + [33.89492187500002, 9.717626953124991], + [33.95917968750001, 9.845263671874989], + [33.9625, 9.855810546874991], + [33.96328125000002, 9.861767578124997], + [33.96328125000002, 9.868701171874989], + [33.95732421875002, 9.891455078124991], + [33.94990234375001, 9.9111328125], + [33.94619140625002, 9.94091796875], + [33.95732421875002, 10.007177734374991], + [33.95839843750002, 10.027734375], + [33.95683593750002, 10.05419921875], + [33.95185546875001, 10.070947265624994], + [33.90703125000002, 10.181445312499989], + [33.8921875, 10.198974609375], + [33.459082031250006, 10.550830078124989], + [33.3798828125, 10.646191406249997], + [33.37138671875002, 10.652734375], + [33.36074218750002, 10.6578125], + [33.14082031250001, 10.737890625], + [33.13007812500001, 10.745947265624991], + [33.131445312500006, 10.757714843749994], + [33.13828125, 10.77294921875], + [33.16474609375001, 10.819189453124991], + [33.16845703125, 10.831445312499994], + [33.17216796875002, 10.850146484374989], + [33.07304687500002, 11.591503906249997], + [33.073339843750006, 11.606103515624994], + [33.07783203125001, 11.615771484374989], + [33.08154296875, 11.621728515624994], + [33.09462890625002, 11.6375], + [33.106054687500006, 11.653857421874989], + [33.119140625, 11.682421874999989], + [33.12246093750002, 11.693164062499989], + [33.13613281250002, 11.825585937499994], + [33.13505859375002, 11.941601562499997], + [33.19306640625001, 12.135009765625], + [33.199316406250006, 12.21728515625], + [32.721875, 12.223095703124997], + [32.71894531250001, 12.218847656249991], + [32.71855468750002, 12.213769531249994], + [32.719824218750006, 12.2080078125], + [32.72050781250002, 12.201806640624994], + [32.72011718750002, 12.188818359374991], + [32.71630859375, 12.164843749999989], + [32.71533203125, 12.152197265624991], + [32.7158203125, 12.139257812499991], + [32.72304687500002, 12.092919921874994], + [32.73564453125002, 12.058056640624997], + [32.73769531250002, 12.046435546874989], + [32.73828125, 12.033740234374989], + [32.73671875000002, 12.009667968749994], + [32.072265625, 12.006738281249994], + [32.33535156250002, 11.716015625], + [32.338476562500006, 11.710107421874994], + [32.34306640625002, 11.694287109374997], + [32.34492187500001, 11.682714843749991], + [32.34990234375002, 11.580419921874991], + [32.33574218750002, 11.418554687499991], + [32.3388671875, 11.314501953124989], + [32.35419921875001, 11.246923828124991], + [32.425390625, 11.113964843749997], + [32.42080078125002, 11.089111328125], + [32.40410156250002, 11.057763671874994], + [31.933007812500023, 10.6625], + [31.919921875, 10.643847656249989], + [31.854296875000017, 10.479052734374989], + [31.7919921875, 10.383154296874991], + [31.764257812500006, 10.355712890625], + [31.654882812500006, 10.221142578124997], + [31.224902343750017, 9.799267578124997], + [31.15449218750001, 9.770947265624997], + [30.940332031250023, 9.759375], + [30.827050781250023, 9.756298828124997], + [30.81416015625001, 9.753125], + [30.794921875, 9.745849609375], + [30.783105468750023, 9.734960937499991], + [30.769140625, 9.726806640625], + [30.75537109375, 9.731201171875], + [30.739355468750006, 9.74267578125], + [30.474609375, 9.978955078124997], + [30.003027343750006, 10.277392578124989], + [29.957910156250023, 10.250244140625], + [29.691015625, 10.121923828124991], + [29.63593750000001, 10.088623046875], + [29.60546875, 10.065087890624994], + [29.603906250000023, 9.92138671875], + [29.557421875000017, 9.848291015624994], + [29.47314453125, 9.768603515624989], + [29.24238281250001, 9.718066406249989], + [29.122363281250017, 9.674658203124991], + [28.999609375, 9.610156249999989], + [28.979589843750006, 9.593994140625], + [28.979589843750006, 9.594189453124997], + [28.93232421875001, 9.549462890624994], + [28.839453125, 9.459082031249991], + [28.829394531250017, 9.388818359374994], + [28.844531250000017, 9.326074218749994], + [28.048925781250006, 9.32861328125], + [27.99628906250001, 9.378808593749994], + [27.885839843750006, 9.599658203124989], + [27.880859375, 9.601611328124989], + [27.7998046875, 9.587890625], + [27.07421875, 9.613818359374989], + [26.970507812500017, 9.59062], + [26.76318359375, 9.49921875], + [26.65869140625, 9.484130859375], + [26.551367187500006, 9.525830078124997], + [26.16953125, 9.965917968749991], + [26.087011718750006, 10.018457031249994], + [26.057031250000023, 10.046777343749994], + [26.000585937500006, 10.1234375], + [25.91914062500001, 10.169335937499994], + [25.891503906250023, 10.202734375], + [25.8828125, 10.249609375], + [25.88525390625, 10.34609375], + [25.858203125000017, 10.406494140625], + [25.79804687500001, 10.420507812499991], + [25.28515625, 10.318505859374994], + [25.211718750000017, 10.329931640624991], + [25.10400390625, 10.311816406249989], + [25.066992187500006, 10.293798828124991], + [25.02363281250001, 10.235791015624997], + [25.01484375000001, 10.175878906249991], + [25.016210937500006, 10.115234375], + [25.0029296875, 10.055273437499991], + [24.9638671875, 9.988867187499991], + [24.817675781250017, 9.839599609375], + [24.785253906250006, 9.774658203125], + [24.79218750000001, 9.610302734374997], + [24.782617187500023, 9.52734375], + [24.760351562500006, 9.488916015624994], + [24.696679687500023, 9.425683593749994], + [24.673632812500017, 9.389306640624994], + [24.662890625000017, 9.338134765625], + [24.659375, 9.229931640624997], + [24.648046875, 9.179101562499994], + [24.568261718750023, 9.051708984374997], + [24.549414062500006, 9.006787109374997], + [24.544824218750023, 8.914843749999989], + [24.53193359375001, 8.886914062499997], + [24.300195312500023, 8.814257812499989], + [24.21357421875001, 8.767822265625], + [24.160449218750017, 8.6962890625], + [24.147363281250023, 8.665625], + [24.147363281250023, 8.665625], + [24.048144531250017, 8.691308593749994], + [23.921972656250006, 8.709716796875], + [23.679296875, 8.732470703124989], + [23.58320312500001, 8.765820312499997], + [23.53730468750001, 8.815820312499994], + [23.551855468750006, 8.943212890624991], + [23.52802734375001, 8.970605468749994], + [23.489062500000017, 8.993310546874994], + [23.462792968750023, 9.048486328124994], + [23.46826171875, 9.11474609375], + [23.596093750000023, 9.261914062499997], + [23.62265625, 9.34062], + [23.64277343750001, 9.613916015624994], + [23.65625, 9.710351562499994], + [23.646289062500017, 9.822900390624994], + [23.545019531250006, 10.030078124999989], + [23.456640625, 10.174267578124997], + [23.312304687500017, 10.387939453125], + [23.255859375, 10.457812499999989], + [22.96435546875, 10.751806640624991], + [22.930761718750006, 10.7953125], + [22.86005859375001, 10.919677734375], + [22.894824218750017, 11.029003906249997], + [22.93769531250001, 11.192041015624994], + [22.942773437500023, 11.2671875], + [22.922656250000017, 11.344873046874994], + [22.849023437500023, 11.403271484374997], + [22.78339843750001, 11.409960937499989], + [22.754003906250006, 11.43984375], + [22.697363281250006, 11.482666015625], + [22.641015625000023, 11.515917968749989], + [22.591113281250017, 11.579882812499989], + [22.55634765625001, 11.66953125], + [22.580957031250023, 11.990136718749994], + [22.564355468750023, 12.032958984375], + [22.48984375, 12.044726562499989], + [22.472460937500017, 12.067773437499994], + [22.475488281250023, 12.129248046874991], + [22.43525390625001, 12.311914062499994], + [22.390234375, 12.462988281249991], + [22.414453125000023, 12.54638671875], + [22.352343750000017, 12.660449218749989], + [22.2333984375, 12.70947265625], + [22.121191406250006, 12.694580078125], + [22.00068359375001, 12.671875], + [21.928125, 12.678125], + [21.878125, 12.699365234374994], + [21.843359375, 12.7412109375], + [21.825292968750006, 12.79052734375], + [21.841796875, 12.86474609375], + [21.90771484375, 13.0009765625], + [21.990234375, 13.113085937499989], + [22.158007812500017, 13.215039062499997], + [22.20263671875, 13.269335937500003], + [22.228125, 13.32958984375], + [22.23261718750001, 13.398779296874991], + [22.22138671875001, 13.471630859374997], + [22.20234375000001, 13.5380859375], + [22.152929687500006, 13.626416015624997], + [22.10761718750001, 13.730322265624991], + [22.1064453125, 13.7998046875], + [22.128222656250017, 13.850146484375003], + [22.173144531250017, 13.910595703124997], + [22.262109375000023, 13.978710937499997], + [22.283496093750017, 13.992333984374994], + [22.33935546875, 14.028857421875003], + [22.38818359375, 14.055517578124991], + [22.50996093750001, 14.12744140625], + [22.53857421875, 14.161865234375], + [22.528222656250023, 14.203222656249991], + [22.498339843750017, 14.237060546875], + [22.449316406250006, 14.284228515625003], + [22.439355468750023, 14.342138671874991], + [22.425, 14.441210937500003], + [22.399707031250017, 14.504199218750003], + [22.38154296875001, 14.550488281249997], + [22.41621093750001, 14.585205078125], + [22.4677734375, 14.633349609375003], + [22.532031250000017, 14.662744140624994], + [22.6318359375, 14.688085937499991], + [22.6708984375, 14.722460937500003], + [22.682421875000017, 14.788623046875003], + [22.67919921875, 14.851464843749994], + [22.714941406250006, 14.898388671874997], + [22.76328125, 14.998681640624994], + [22.802148437500023, 15.04443359375], + [22.8671875, 15.096630859374997], + [22.93232421875001, 15.162109375], + [22.961328125000023, 15.238134765624991], + [22.969531250000017, 15.311328125], + [22.933886718750017, 15.533105468749994], + [23.009179687500023, 15.625830078124991], + [23.10517578125001, 15.702539062499994], + [23.243457031250017, 15.697216796874997], + [23.4580078125, 15.713964843749991], + [23.60400390625, 15.745996093749994], + [23.70820312500001, 15.744970703124991], + [23.94599609375001, 15.703515625], + [23.965234375000023, 15.713427734375003], + [23.970800781250006, 15.721533203124991], + [23.9833984375, 15.780175781249994], + [23.983300781250023, 15.928125], + [23.98291015625, 16.37421875], + [23.982519531250006, 16.820263671874997], + [23.982226562500017, 17.266357421875], + [23.981835937500023, 17.71240234375], + [23.9814453125, 18.158496093750003], + [23.981054687500006, 18.604541015625003], + [23.98066406250001, 19.050585937500003], + [23.980273437500017, 19.496630859375003], + [23.980273437500017, 19.621484375], + [23.980273437500017, 19.746289062499997], + [23.980273437500017, 19.87109375], + [23.980273437500017, 19.99594726562499], + [24.226953125000023, 19.995849609375], + [24.4736328125, 19.995703125], + [24.72041015625001, 19.995556640624997], + [24.96699218750001, 19.99545898437499], + [24.97021484375, 19.997265625], + [24.973242187500006, 19.9990234375], + [24.976367187500017, 20.00078125], + [24.9794921875, 20.002587890624994], + [24.97968750000001, 20.500927734374997], + [24.979882812500023, 20.99921875], + [24.980078125, 21.49755859375], + [24.980273437500017, 21.995849609375], + [25.3623046875, 21.995800781249997], + [25.74433593750001, 21.995751953124994], + [26.126367187500023, 21.995654296875003], + [26.508398437500006, 21.99560546875], + [26.890429687500017, 21.995556640624997], + [27.2724609375, 21.995507812499994], + [27.65449218750001, 21.99545898437499], + [28.036425781250017, 21.995361328125], + [28.418554687500006, 21.9953125], + [28.800585937500017, 21.995263671874994], + [29.182519531250023, 21.99521484374999], + [29.564550781250006, 21.9951171875], + [29.946679687500023, 21.9951171875], + [30.32861328125, 21.995019531249994], + [30.71064453125001, 21.994921875], + [31.092675781250023, 21.994873046875], + [31.20917968750001, 21.994873046875], + [31.260644531250023, 22.00229492187499], + [31.358496093750006, 22.188623046874994], + [31.400292968750023, 22.202441406250003], + [31.464257812500023, 22.19150390624999], + [31.486132812500017, 22.14780273437499], + [31.46640625, 22.084667968749997] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "S. Sudan", + "iso_a2": "SS", + "iso_a3": "SSD", + "iso_n3": "728", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [33.95917968750001, 9.845263671874989], + [33.89492187500002, 9.717626953124991], + [33.8740234375, 9.626757812499989], + [33.867773437500006, 9.550341796874989], + [33.87148437500002, 9.506152343749989], + [33.87880859375002, 9.477734375], + [33.88212890625002, 9.47119140625], + [33.884863281250006, 9.46640625], + [33.88789062500001, 9.463525390624994], + [33.89091796875002, 9.462207031249989], + [34.076757812500006, 9.461523437499991], + [34.078125, 9.461523437499991], + [34.078125, 9.461523437499991], + [34.0771484375, 9.420996093749991], + [34.084570312500006, 9.218505859375], + [34.09101562500001, 9.041259765625], + [34.1015625, 8.751855468749994], + [34.10175781250001, 8.676367187499991], + [34.09453125000002, 8.582226562499997], + [34.07275390625, 8.545263671874991], + [34.01972656250001, 8.492089843749994], + [33.95332031250001, 8.443505859374994], + [33.78505859375002, 8.431103515624997], + [33.64482421875002, 8.432568359374997], + [33.54531250000002, 8.443408203124989], + [33.409375, 8.44775390625], + [33.28105468750002, 8.437255859375], + [33.23427734375002, 8.396386718749994], + [33.16523437500001, 8.251074218749991], + [33.06523437500002, 8.040478515624997], + [33.01259765625002, 7.951513671874991], + [32.99892578125002, 7.899511718749991], + [33.0146484375, 7.868554687499994], + [33.08076171875001, 7.82373046875], + [33.22597656250002, 7.760644531249994], + [33.39228515625001, 7.723730468749991], + [33.51630859375001, 7.707763671875], + [33.60097656250002, 7.6904296875], + [33.666113281250006, 7.670996093749991], + [33.902441406250006, 7.509521484375], + [33.97792968750002, 7.4345703125], + [34.02041015625002, 7.367968749999989], + [34.03017578125002, 7.296972656249991], + [34.06425781250002, 7.225732421874994], + [34.20039062500001, 7.084570312499991], + [34.279296875, 7.002832031249994], + [34.484375, 6.898388671874997], + [34.56279296875002, 6.779833984374989], + [34.638769531250006, 6.72216796875], + [34.71064453125001, 6.660302734374994], + [34.74921875000001, 6.56787109375], + [34.83808593750001, 6.300146484374991], + [34.89785156250002, 6.159814453124994], + [34.958984375, 6.045068359374994], + [34.98359375000001, 5.858300781249994], + [35.03193359375001, 5.77490234375], + [35.08193359375002, 5.673144531249989], + [35.16445312500002, 5.581201171874994], + [35.25244140625, 5.511035156249989], + [35.26835937500002, 5.492285156249991], + [35.08447265625, 5.311865234374991], + [34.87832031250002, 5.109570312499997], + [34.63984375000001, 4.87548828125], + [34.38017578125002, 4.620654296874989], + [34.176855468750006, 4.419091796874994], + [33.97607421875, 4.22021484375], + [33.74160156250002, 3.985253906249994], + [33.568457031250006, 3.81171875], + [33.53955078125, 3.787109375], + [33.489355468750006, 3.755078125], + [33.324316406250006, 3.754345703124997], + [33.15410156250002, 3.774707031249989], + [32.99726562500001, 3.880175781249989], + [32.83808593750001, 3.798486328124994], + [32.73710937500002, 3.772705078125], + [32.67695312500001, 3.76318359375], + [32.534765625, 3.749951171874997], + [32.33574218750002, 3.706201171874994], + [32.24550781250002, 3.651318359374997], + [32.19667968750002, 3.6078125], + [32.15625, 3.528027343749997], + [32.13593750000001, 3.519726562499997], + [32.09941406250002, 3.529199218749994], + [32.04824218750002, 3.561181640624994], + [31.941796875000023, 3.607568359374994], + [31.88828125, 3.709082031249991], + [31.838671875000017, 3.770458984374997], + [31.79804687500001, 3.802636718749994], + [31.62890625, 3.701464843749989], + [31.547167968750017, 3.677587890624991], + [31.47998046875, 3.680468749999989], + [31.357421875, 3.737597656249989], + [31.221972656250017, 3.785937499999989], + [31.15234375, 3.785595703124997], + [31.04804687500001, 3.725], + [30.92939453125001, 3.634082031249989], + [30.8681640625, 3.544140625], + [30.83857421875001, 3.49072265625], + [30.81689453125, 3.533349609374994], + [30.796972656250006, 3.573144531249994], + [30.757226562500023, 3.62421875], + [30.69990234375001, 3.644091796874989], + [30.64765625000001, 3.634130859374991], + [30.586718750000017, 3.62421875], + [30.559375, 3.652783203124997], + [30.553515625000017, 3.722949218749989], + [30.536914062500017, 3.787207031249991], + [30.50830078125, 3.835693359375], + [30.420703125000017, 3.883886718749991], + [30.194921875, 3.98193359375], + [30.021386718750023, 4.177636718749994], + [29.933984375000023, 4.268505859374997], + [29.870214843750006, 4.3271484375], + [29.779882812500006, 4.48095703125], + [29.676855468750006, 4.5869140625], + [29.552050781250017, 4.636035156249989], + [29.469628906250023, 4.61181640625], + [29.384863281250006, 4.498388671874991], + [29.224902343750017, 4.391894531249989], + [29.151464843750006, 4.38818359375], + [29.057421875000017, 4.445947265624994], + [28.939355468750023, 4.487060546875], + [28.72705078125, 4.504980468749991], + [28.639550781250023, 4.454492187499994], + [28.524804687500023, 4.372851562499989], + [28.427539062500017, 4.324169921874997], + [28.3671875, 4.318652343749989], + [28.31103515625, 4.338037109374994], + [28.24726562500001, 4.348535156249994], + [28.19208984375001, 4.350244140624994], + [28.07861328125, 4.4248046875], + [28.019824218750017, 4.479394531249994], + [27.98066406250001, 4.532080078124991], + [27.916601562500006, 4.567919921874989], + [27.841601562500017, 4.597753906249991], + [27.7880859375, 4.644677734374994], + [27.76142578125001, 4.703222656249991], + [27.71923828125, 4.7783203125], + [27.664160156250006, 4.845996093749989], + [27.491015625000017, 4.967578124999989], + [27.439257812500017, 5.039208984374994], + [27.4033203125, 5.109179687499989], + [27.332421875000023, 5.186328124999989], + [27.256738281250023, 5.289648437499991], + [27.232519531250006, 5.440771484374991], + [27.229101562500006, 5.5625], + [27.21337890625, 5.618798828124994], + [27.18125, 5.675146484374991], + [27.143945312500023, 5.722949218749989], + [27.083398437500023, 5.77685546875], + [26.942285156250023, 5.854931640624997], + [26.796484375, 5.945507812499997], + [26.726367187500017, 5.998242187499997], + [26.593652343750023, 6.017529296874997], + [26.514257812500006, 6.069238281249994], + [26.44746093750001, 6.183007812499994], + [26.420507812500006, 6.274169921875], + [26.353320312500017, 6.344921875], + [26.324609375000023, 6.396240234375], + [26.30859375, 6.455322265625], + [26.36181640625, 6.635302734374989], + [26.284570312500023, 6.699023437499989], + [26.169335937500023, 6.78173828125], + [26.0869140625, 6.872119140624989], + [26.036523437500023, 6.955224609374994], + [25.888964843750017, 7.06494140625], + [25.56660156250001, 7.228710937499997], + [25.380664062500017, 7.333398437499994], + [25.27890625, 7.427490234375], + [25.19013671875001, 7.519335937499989], + [25.18134765625001, 7.557226562499991], + [25.238671875000023, 7.648974609374989], + [25.247363281250017, 7.724560546874997], + [25.20039062500001, 7.807910156249989], + [25.007226562500023, 7.96484375], + [24.853320312500017, 8.137548828124991], + [24.736718750000023, 8.191552734374994], + [24.4560546875, 8.239453125], + [24.37548828125, 8.258447265624994], + [24.291406250000023, 8.29140625], + [24.208398437500023, 8.369140625], + [24.179980468750017, 8.461132812499997], + [24.22089843750001, 8.608251953124991], + [24.19482421875, 8.653369140624989], + [24.147363281250023, 8.665625], + [24.147363281250023, 8.665625], + [24.160449218750017, 8.6962890625], + [24.21357421875001, 8.767822265625], + [24.300195312500023, 8.814257812499989], + [24.53193359375001, 8.886914062499997], + [24.544824218750023, 8.914843749999989], + [24.549414062500006, 9.006787109374997], + [24.568261718750023, 9.051708984374997], + [24.648046875, 9.179101562499994], + [24.659375, 9.229931640624997], + [24.662890625000017, 9.338134765625], + [24.673632812500017, 9.389306640624994], + [24.696679687500023, 9.425683593749994], + [24.760351562500006, 9.488916015624994], + [24.782617187500023, 9.52734375], + [24.79218750000001, 9.610302734374997], + [24.785253906250006, 9.774658203125], + [24.817675781250017, 9.839599609375], + [24.9638671875, 9.988867187499991], + [25.0029296875, 10.055273437499991], + [25.016210937500006, 10.115234375], + [25.01484375000001, 10.175878906249991], + [25.02363281250001, 10.235791015624997], + [25.066992187500006, 10.293798828124991], + [25.10400390625, 10.311816406249989], + [25.211718750000017, 10.329931640624991], + [25.28515625, 10.318505859374994], + [25.79804687500001, 10.420507812499991], + [25.858203125000017, 10.406494140625], + [25.88525390625, 10.34609375], + [25.8828125, 10.249609375], + [25.891503906250023, 10.202734375], + [25.91914062500001, 10.169335937499994], + [26.000585937500006, 10.1234375], + [26.057031250000023, 10.046777343749994], + [26.087011718750006, 10.018457031249994], + [26.16953125, 9.965917968749991], + [26.551367187500006, 9.525830078124997], + [26.65869140625, 9.484130859375], + [26.76318359375, 9.49921875], + [26.970507812500017, 9.59062], + [27.07421875, 9.613818359374989], + [27.7998046875, 9.587890625], + [27.880859375, 9.601611328124989], + [27.885839843750006, 9.599658203124989], + [27.99628906250001, 9.378808593749994], + [28.048925781250006, 9.32861328125], + [28.844531250000017, 9.326074218749994], + [28.829394531250017, 9.388818359374994], + [28.839453125, 9.459082031249991], + [28.93232421875001, 9.549462890624994], + [28.979589843750006, 9.594189453124997], + [28.979589843750006, 9.593994140625], + [28.999609375, 9.610156249999989], + [29.122363281250017, 9.674658203124991], + [29.24238281250001, 9.718066406249989], + [29.47314453125, 9.768603515624989], + [29.557421875000017, 9.848291015624994], + [29.603906250000023, 9.92138671875], + [29.60546875, 10.065087890624994], + [29.63593750000001, 10.088623046875], + [29.691015625, 10.121923828124991], + [29.957910156250023, 10.250244140625], + [30.003027343750006, 10.277392578124989], + [30.474609375, 9.978955078124997], + [30.739355468750006, 9.74267578125], + [30.75537109375, 9.731201171875], + [30.769140625, 9.726806640625], + [30.783105468750023, 9.734960937499991], + [30.794921875, 9.745849609375], + [30.81416015625001, 9.753125], + [30.827050781250023, 9.756298828124997], + [30.940332031250023, 9.759375], + [31.15449218750001, 9.770947265624997], + [31.224902343750017, 9.799267578124997], + [31.654882812500006, 10.221142578124997], + [31.764257812500006, 10.355712890625], + [31.7919921875, 10.383154296874991], + [31.854296875000017, 10.479052734374989], + [31.919921875, 10.643847656249989], + [31.933007812500023, 10.6625], + [32.40410156250002, 11.057763671874994], + [32.42080078125002, 11.089111328125], + [32.425390625, 11.113964843749997], + [32.35419921875001, 11.246923828124991], + [32.3388671875, 11.314501953124989], + [32.33574218750002, 11.418554687499991], + [32.34990234375002, 11.580419921874991], + [32.34492187500001, 11.682714843749991], + [32.34306640625002, 11.694287109374997], + [32.338476562500006, 11.710107421874994], + [32.33535156250002, 11.716015625], + [32.072265625, 12.006738281249994], + [32.73671875000002, 12.009667968749994], + [32.73828125, 12.033740234374989], + [32.73769531250002, 12.046435546874989], + [32.73564453125002, 12.058056640624997], + [32.72304687500002, 12.092919921874994], + [32.7158203125, 12.139257812499991], + [32.71533203125, 12.152197265624991], + [32.71630859375, 12.164843749999989], + [32.72011718750002, 12.188818359374991], + [32.72050781250002, 12.201806640624994], + [32.719824218750006, 12.2080078125], + [32.71855468750002, 12.213769531249994], + [32.71894531250001, 12.218847656249991], + [32.721875, 12.223095703124997], + [33.199316406250006, 12.21728515625], + [33.19306640625001, 12.135009765625], + [33.13505859375002, 11.941601562499997], + [33.13613281250002, 11.825585937499994], + [33.12246093750002, 11.693164062499989], + [33.119140625, 11.682421874999989], + [33.106054687500006, 11.653857421874989], + [33.09462890625002, 11.6375], + [33.08154296875, 11.621728515624994], + [33.07783203125001, 11.615771484374989], + [33.073339843750006, 11.606103515624994], + [33.07304687500002, 11.591503906249997], + [33.17216796875002, 10.850146484374989], + [33.16845703125, 10.831445312499994], + [33.16474609375001, 10.819189453124991], + [33.13828125, 10.77294921875], + [33.131445312500006, 10.757714843749994], + [33.13007812500001, 10.745947265624991], + [33.14082031250001, 10.737890625], + [33.36074218750002, 10.6578125], + [33.37138671875002, 10.652734375], + [33.3798828125, 10.646191406249997], + [33.459082031250006, 10.550830078124989], + [33.8921875, 10.198974609375], + [33.90703125000002, 10.181445312499989], + [33.95185546875001, 10.070947265624994], + [33.95683593750002, 10.05419921875], + [33.95839843750002, 10.027734375], + [33.95732421875002, 10.007177734374991], + [33.94619140625002, 9.94091796875], + [33.94990234375001, 9.9111328125], + [33.95732421875002, 9.891455078124991], + [33.96328125000002, 9.868701171874989], + [33.96328125000002, 9.861767578124997], + [33.9625, 9.855810546874991], + [33.95917968750001, 9.845263671874989] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Senegal", + "iso_a2": "SN", + "iso_a3": "SEN", + "iso_n3": "686", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-12.280615234374977, 14.809033203124997], + [-12.1865234375, 14.648144531249997], + [-12.206835937499989, 14.571142578124991], + [-12.228417968749994, 14.45859375], + [-12.175244140624983, 14.376660156249997], + [-12.112890624999977, 14.323291015625003], + [-12.068359375, 14.27421875], + [-12.019189453124994, 14.206494140624997], + [-12.011181640624983, 14.071826171875003], + [-12.020117187499977, 13.974658203125003], + [-11.988085937499989, 13.930761718749991], + [-11.960888671874983, 13.875292968750003], + [-11.966357421874989, 13.828955078124991], + [-11.984179687499989, 13.7880859375], + [-12.044140624999983, 13.73388671875], + [-12.05419921875, 13.633056640625], + [-11.957080078124989, 13.510888671874994], + [-11.894580078124989, 13.444433593749991], + [-11.895214843749983, 13.406298828125003], + [-11.877783203124977, 13.364550781250003], + [-11.831689453124994, 13.315820312499994], + [-11.803369140624994, 13.327294921874994], + [-11.772216796875, 13.367089843749994], + [-11.758251953124983, 13.39453125], + [-11.674462890624994, 13.382373046875003], + [-11.634960937499983, 13.369873046875], + [-11.581347656249989, 13.2900390625], + [-11.561669921874994, 13.236962890624994], + [-11.548779296874983, 13.170263671874991], + [-11.492822265624994, 13.086962890624989], + [-11.444140624999989, 13.028222656249994], + [-11.433935546874977, 12.991601562499994], + [-11.390380859375, 12.941992187499991], + [-11.417431640624983, 12.831884765624991], + [-11.414355468749989, 12.775488281249991], + [-11.444091796875, 12.627587890624994], + [-11.450585937499994, 12.557714843749991], + [-11.448779296874989, 12.531933593749997], + [-11.382421874999977, 12.479248046875], + [-11.389404296875, 12.404394531249991], + [-11.456738281249983, 12.417578125], + [-11.573681640624983, 12.426318359374989], + [-11.80810546875, 12.387304687499991], + [-11.888574218749994, 12.4033203125], + [-12.042382812499994, 12.398046875], + [-12.151953124999977, 12.376611328124994], + [-12.291210937499983, 12.328027343749994], + [-12.399072265624994, 12.340087890625], + [-12.457373046874977, 12.378369140624997], + [-12.534228515624989, 12.375781249999989], + [-12.620800781249983, 12.396191406249997], + [-12.713037109374994, 12.433154296874989], + [-12.797314453124983, 12.451904296875], + [-12.88818359375, 12.52001953125], + [-12.930712890624989, 12.532275390624989], + [-12.960546874999977, 12.514355468749997], + [-12.985644531249989, 12.491650390624997], + [-13.011914062499983, 12.477636718749991], + [-13.061279296875, 12.489990234375], + [-13.079833984375, 12.536279296874994], + [-13.064404296874983, 12.5810546875], + [-13.059765624999983, 12.615039062499989], + [-13.082910156249994, 12.633544921875], + [-13.138476562499989, 12.639746093749991], + [-13.228076171874989, 12.639599609374997], + [-13.37255859375, 12.653613281249989], + [-13.40576171875, 12.662255859374994], + [-13.729248046875, 12.673925781249991], + [-14.06484375, 12.67529296875], + [-14.349218749999977, 12.676416015624994], + [-14.708154296874994, 12.677978515625], + [-14.960595703124994, 12.678955078125], + [-15.196093749999989, 12.679931640625], + [-15.3779296875, 12.588964843749991], + [-15.574804687499977, 12.490380859374994], + [-15.839550781249983, 12.437890625], + [-16.144189453124994, 12.457421875], + [-16.24150390624999, 12.443310546874997], + [-16.34228515625, 12.399511718749991], + [-16.41630859374999, 12.36767578125], + [-16.521337890624977, 12.3486328125], + [-16.656933593749983, 12.364355468749991], + [-16.711816406249994, 12.354833984374991], + [-16.745849609375, 12.399707031249989], + [-16.784863281249983, 12.472509765624991], + [-16.76030273437499, 12.52578125], + [-16.677636718749994, 12.56005859375], + [-16.55322265625, 12.604882812499994], + [-16.48808593749999, 12.581835937499989], + [-16.449951171875, 12.580712890624994], + [-16.44287109375, 12.609472656249991], + [-16.455029296874983, 12.624804687499989], + [-16.548828125, 12.663818359375], + [-16.59765625, 12.715283203124997], + [-16.637841796874994, 12.68515625], + [-16.672558593749983, 12.622021484374997], + [-16.701416015625, 12.603173828124994], + [-16.743896484375, 12.58544921875], + [-16.76796875, 12.62841796875], + [-16.778417968749977, 12.670166015625], + [-16.758984374999983, 12.70234375], + [-16.768945312499994, 12.88330078125], + [-16.75737304687499, 12.979785156249989], + [-16.763330078124994, 13.064160156249997], + [-16.704541015624983, 13.119726562499991], + [-16.648779296874977, 13.154150390624991], + [-16.430859374999983, 13.157324218749991], + [-16.22832031249999, 13.160302734374994], + [-16.033056640624977, 13.158349609374994], + [-15.834277343749989, 13.156445312499997], + [-15.814404296874983, 13.325146484374997], + [-15.751562499999977, 13.33837890625], + [-15.657324218749977, 13.355810546874991], + [-15.481835937499994, 13.376367187499994], + [-15.286230468749977, 13.39599609375], + [-15.24453125, 13.429101562499994], + [-15.212109374999983, 13.485058593749997], + [-15.191601562499983, 13.535253906249991], + [-15.151123046875, 13.556494140624991], + [-15.096386718749983, 13.539648437499991], + [-15.024609374999983, 13.513330078124994], + [-14.950292968749977, 13.472607421874997], + [-14.865039062499989, 13.434863281250003], + [-14.808251953124994, 13.4111328125], + [-14.671923828124989, 13.351708984374994], + [-14.438574218749977, 13.268896484374991], + [-14.246777343749983, 13.23583984375], + [-14.014892578125, 13.29638671875], + [-13.847509765624977, 13.335302734374991], + [-13.826708984374989, 13.4078125], + [-13.852832031249989, 13.478564453125003], + [-13.977392578124977, 13.54345703125], + [-14.14697265625, 13.5361328125], + [-14.199023437499989, 13.51875], + [-14.278027343749983, 13.497167968749991], + [-14.325537109374977, 13.488574218750003], + [-14.405468749999983, 13.503710937500003], + [-14.506982421874994, 13.559716796874994], + [-14.570849609374989, 13.616162109374997], + [-14.66015625, 13.642626953125003], + [-14.766015625, 13.669091796874994], + [-14.935791015625, 13.785205078125003], + [-15.024462890624989, 13.806005859374991], + [-15.108349609374983, 13.812109375], + [-15.26953125, 13.789111328125003], + [-15.426855468749977, 13.727001953124997], + [-15.509667968749994, 13.586230468750003], + [-15.667187499999983, 13.58828125], + [-16.001611328124994, 13.5927734375], + [-16.308740234374994, 13.596875], + [-16.56230468749999, 13.587304687499994], + [-16.587792968749994, 13.689550781249991], + [-16.647851562499994, 13.77099609375], + [-16.74541015624999, 13.840429687499991], + [-16.766943359374977, 13.904931640624994], + [-16.73388671875, 13.961181640625], + [-16.639599609374983, 14.007470703124994], + [-16.618115234374983, 14.04052734375], + [-16.66748046875, 14.035595703124997], + [-16.742138671874983, 14.005810546874997], + [-16.791748046875, 14.004150390625], + [-16.797753906249994, 14.09326171875], + [-16.880517578124994, 14.208349609374991], + [-16.973828124999983, 14.403222656249994], + [-17.07939453124999, 14.483056640624994], + [-17.168066406249977, 14.640625], + [-17.260644531249994, 14.701074218749994], + [-17.345800781249977, 14.729296875], + [-17.41845703125, 14.723486328124991], + [-17.445019531249983, 14.651611328125], + [-17.53564453125, 14.755126953125], + [-17.411816406249983, 14.7921875], + [-17.147167968749983, 14.922021484374994], + [-16.843408203124994, 15.293994140625003], + [-16.570751953124983, 15.734423828125003], + [-16.535253906249977, 15.83837890625], + [-16.502050781249977, 15.917333984374991], + [-16.480078124999977, 16.097216796875003], + [-16.441015624999977, 16.204541015624997], + [-16.40434570312499, 16.224902343750003], + [-16.358105468749983, 16.307177734375003], + [-16.30229492187499, 16.451318359374994], + [-16.239013671875, 16.531298828125003], + [-16.168359375, 16.547070312499997], + [-16.11328125, 16.54013671874999], + [-16.07402343749999, 16.510449218749997], + [-15.958984375, 16.492138671874997], + [-15.768212890624994, 16.485107421875], + [-15.620800781249983, 16.506591796875], + [-15.516699218749977, 16.556591796874997], + [-15.379980468749977, 16.581982421874997], + [-15.210546874999977, 16.58261718749999], + [-15.121435546874977, 16.60361328124999], + [-15.112646484374977, 16.644921875], + [-15.090576171875, 16.657373046874994], + [-15.055224609374989, 16.64096679687499], + [-15.021923828124983, 16.6474609375], + [-14.990625, 16.676904296874994], + [-14.959521484374989, 16.67890625], + [-14.928613281249994, 16.653515625], + [-14.786718749999977, 16.645898437499994], + [-14.533740234374989, 16.655957031249997], + [-14.300097656249989, 16.580273437499997], + [-14.085644531249983, 16.418847656249994], + [-13.975048828124983, 16.31113281249999], + [-13.968164062499994, 16.257226562499994], + [-13.9326171875, 16.202880859375], + [-13.868457031249989, 16.148144531249997], + [-13.809814453125, 16.13803710937499], + [-13.756640624999989, 16.172509765624994], + [-13.714941406249977, 16.16879882812499], + [-13.684667968749977, 16.126904296874997], + [-13.62353515625, 16.118310546874994], + [-13.555517578124977, 16.14404296875], + [-13.506982421874994, 16.135205078124997], + [-13.498144531249977, 16.110302734374997], + [-13.486962890624994, 16.09702148437499], + [-13.4541015625, 16.091113281250003], + [-13.40966796875, 16.05917968749999], + [-13.347558593749994, 15.973486328124991], + [-13.297021484374994, 15.853857421874991], + [-13.258007812499983, 15.700390625], + [-13.206445312499994, 15.616894531249997], + [-13.142382812499989, 15.603320312500003], + [-13.105273437499989, 15.57177734375], + [-13.097900390625, 15.535253906249991], + [-13.079296874999983, 15.510449218749997], + [-13.048535156249983, 15.496630859375003], + [-12.994335937499983, 15.5048828125], + [-12.930859374999983, 15.453027343749994], + [-12.862695312499994, 15.340429687499991], + [-12.851904296874977, 15.289648437499991], + [-12.862646484374977, 15.262402343749997], + [-12.858496093749977, 15.242529296874991], + [-12.813183593749983, 15.223535156249994], + [-12.770312499999989, 15.186669921874994], + [-12.735253906249994, 15.13125], + [-12.659619140624983, 15.082080078125003], + [-12.543554687499977, 15.039013671874997], + [-12.459863281249994, 14.974658203125003], + [-12.40869140625, 14.889013671874991], + [-12.302539062499989, 14.816992187499991], + [-12.280615234374977, 14.809033203124997] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "Singapore", + "iso_a2": "SG", + "iso_a3": "SGP", + "iso_n3": "702", + "continent": "Asia" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [103.9697265625, 1.331445312499994], + [103.81992187500003, 1.265380859375], + [103.65019531249999, 1.325537109374991], + [103.70527343750001, 1.4234375], + [103.81796875000003, 1.447070312499989], + [103.90898437499999, 1.415966796874997], + [103.96083984375002, 1.392236328124994], + [103.99638671874999, 1.365234375], + [103.9697265625, 1.331445312499994] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "S. Geo. and S. Sandw. Is.", + "iso_a2": "GS", + "iso_a3": "SGS", + "iso_n3": "239", + "continent": "Seven seas (open ocean)" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-26.264111328124983, -58.43515625000001], + [-26.25986328124992, -58.49228515625001], + [-26.41533203124999, -58.43984374999999], + [-26.451025390624977, -58.41533203124997], + [-26.40122070312495, -58.383203125], + [-26.30346679687503, -58.38222656249997], + [-26.279394531250006, -58.40175781249996], + [-26.264111328124983, -58.43515625000001] + ] + ], + [ + [ + [-37.10332031249996, -54.065625], + [-37.006054687499955, -54.1142578125], + [-36.928906249999955, -54.081152343750006], + [-36.84892578124999, -54.085058593750006], + [-36.80517578124997, -54.10146484374997], + [-36.76005859375002, -54.10771484375], + [-36.70380859375001, -54.10810546874999], + [-36.60688476562498, -54.189843749999945], + [-36.64741210937498, -54.26230468749996], + [-36.54101562499997, -54.248046875], + [-36.448632812499994, -54.30839843750003], + [-36.40673828124997, -54.30332031249997], + [-36.38583984374998, -54.27890625], + [-36.32646484374996, -54.251171875], + [-36.285253906250006, -54.288671875], + [-36.23564453125002, -54.36044921874998], + [-36.17260742187497, -54.38222656249997], + [-36.11689453124998, -54.45830078125002], + [-36.073144531249966, -54.554101562499994], + [-36.033105468749966, -54.56767578125], + [-35.96464843749996, -54.56806640625], + [-35.8953125, -54.55478515625004], + [-35.921533203124966, -54.6375], + [-35.91328124999998, -54.71083984374995], + [-35.79858398437497, -54.76347656250002], + [-35.86694335937497, -54.79238281249995], + [-35.938916015624955, -54.83427734375005], + [-36.08549804687499, -54.86679687500001], + [-36.123632812500034, -54.85292968750003], + [-36.251708984375, -54.779882812499984], + [-36.31147460937501, -54.69375], + [-36.44575195312501, -54.570703125], + [-36.472070312499966, -54.53447265624999], + [-36.506542968749955, -54.511230468749964], + [-36.62812, -54.496093749999986], + [-36.73496093749995, -54.46660156250002], + [-36.823876953124966, -54.40429687500003], + [-36.85170898437494, -54.366015625000045], + [-36.885986328125, -54.33945312499996], + [-37.006738281249994, -54.34091796874999], + [-37.0828125, -54.31152343749996], + [-37.15810546875002, -54.27148437499997], + [-37.49765625, -54.15585937500004], + [-37.63090820312496, -54.16748046875001], + [-37.69228515624994, -54.134765625], + [-37.68901367187499, -54.0767578125], + [-37.61884765625001, -54.04208984375004], + [-37.912792968749926, -54.02890625000002], + [-38.017431640625034, -54.008007812500026], + [-37.945507812499926, -53.995605468749986], + [-37.535839843749955, -53.99375], + [-37.38222656250002, -53.98408203125004], + [-37.36875, -54.0091796875], + [-37.232812499999966, -54.060546874999986], + [-37.10332031249996, -54.065625] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "Saint Helena", + "iso_a2": "SH", + "iso_a3": "SHN", + "iso_n3": "654", + "continent": "Seven seas (open ocean)" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-5.692138671874972, -15.997753906249997], + [-5.782519531250017, -16.00400390625002], + [-5.775048828124994, -15.956738281249983], + [-5.707861328124977, -15.90615234374998], + [-5.6625, -15.912792968749997], + [-5.65971679687496, -15.970898437500026], + [-5.692138671874972, -15.997753906249997] + ] + ], + [ + [ + [-14.364355468749977, -7.974316406250011], + [-14.398681640624943, -7.97578125000004], + [-14.408691406249943, -7.96748046875004], + [-14.414941406249994, -7.94375], + [-14.398583984374937, -7.905761718749986], + [-14.383642578125006, -7.882617187499974], + [-14.36040039062496, -7.885937500000026], + [-14.328857421874943, -7.912597656249957], + [-14.302539062499989, -7.935449218749994], + [-14.316796874999966, -7.956152343750034], + [-14.364355468749977, -7.974316406250011] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Solomon Is.", + "iso_a2": "SB", + "iso_a3": "SLB", + "iso_n3": "090", + "continent": "Oceania" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [166.92919921875003, -11.665136718749991], + [166.84082031250003, -11.681347656250011], + [166.80595703125002, -11.67734375], + [166.7474609375, -11.590820312499957], + [166.79091796875, -11.571289062499972], + [166.85546874999997, -11.578808593749997], + [166.87509765625006, -11.6296875], + [166.92919921875003, -11.665136718749991] + ] + ], + [ + [ + [160.57626953125006, -11.797851562500028], + [160.5065429687501, -11.832226562500011], + [160.44306640625004, -11.814941406249957], + [160.39453125000003, -11.788867187499974], + [160.35507812500006, -11.711914062500014], + [160.2702148437501, -11.663964843750023], + [160.14951171875012, -11.643945312500023], + [160.1, -11.610742187500009], + [160.0871093750001, -11.594335937499963], + [160.00351562500012, -11.579589843749972], + [159.97929687500007, -11.537988281250023], + [159.98632812499997, -11.494726562500006], + [160, -11.471972656249989], + [160.07734375000004, -11.492871093749983], + [160.44873046874997, -11.695898437499949], + [160.53710937500003, -11.758789062499972], + [160.57626953125006, -11.797851562500028] + ] + ], + [ + [ + [166.13320312500005, -10.757812499999972], + [166.05332031250012, -10.77509765625004], + [166.02792968750006, -10.770214843750011], + [165.9681640625, -10.77949218750004], + [165.90400390625004, -10.851464843749966], + [165.85654296875006, -10.841406249999949], + [165.81933593750003, -10.84404296874996], + [165.79101562500003, -10.784765624999963], + [165.7904296875, -10.756054687499969], + [165.83593750000003, -10.760644531250023], + [165.85986328125003, -10.703027343750009], + [165.90917968750003, -10.674316406250014], + [166.02382812500005, -10.6611328125], + [166.1256835937501, -10.679882812499997], + [166.16210937499997, -10.693066406250026], + [166.12988281249997, -10.745214843749991], + [166.13320312500005, -10.757812499999972] + ] + ], + [ + [ + [161.71533203124997, -10.387304687499991], + [161.84111328125002, -10.446093749999974], + [161.91435546875002, -10.436425781249966], + [162.0228515625, -10.476855468750031], + [162.10537109375005, -10.45380859375004], + [162.15683593750012, -10.506054687500026], + [162.28720703125006, -10.7099609375], + [162.28798828125005, -10.776171874999989], + [162.37333984375002, -10.823242187499986], + [162.30126953124997, -10.83212890625002], + [162.20126953125012, -10.80781250000004], + [162.12363281250012, -10.824414062499955], + [162.04267578125004, -10.784863281249983], + [161.90585937500006, -10.764355468749983], + [161.78681640625004, -10.716894531249991], + [161.53789062500007, -10.566406249999972], + [161.5392578125001, -10.491308593749949], + [161.49912109375006, -10.454589843750014], + [161.4870117187501, -10.361425781249963], + [161.39794921874997, -10.331933593749994], + [161.29394531250003, -10.326464843750031], + [161.285546875, -10.282421875000026], + [161.30478515625012, -10.204394531250031], + [161.38232421874997, -10.20556640625], + [161.47568359375012, -10.23798828125004], + [161.65380859374997, -10.35185546874996], + [161.6979492187501, -10.371289062500011], + [161.71533203124997, -10.387304687499991] + ] + ], + [ + [ + [161.54785156249997, -9.625683593749997], + [161.55888671875007, -9.732714843749946], + [161.55380859375012, -9.769726562500026], + [161.4779296875, -9.691113281249997], + [161.44248046875006, -9.718945312499983], + [161.40976562500006, -9.681640625000028], + [161.41201171875, -9.600390624999989], + [161.41699218750003, -9.51376953125002], + [161.40224609375005, -9.448144531249966], + [161.36416015625, -9.353417968750037], + [161.40683593750012, -9.368457031249989], + [161.54785156249997, -9.625683593749997] + ] + ], + [ + [ + [159.75039062500005, -9.272656250000011], + [159.97060546875, -9.433300781249969], + [160.06533203125, -9.418652343749997], + [160.35458984375006, -9.421582031249983], + [160.52519531250007, -9.536230468749977], + [160.62548828124997, -9.588867187499957], + [160.6818359375001, -9.691601562500011], + [160.75146484374997, -9.715039062499983], + [160.7943359375, -9.767382812499989], + [160.81894531250006, -9.862792968749986], + [160.80166015625, -9.878320312500037], + [160.7130859375001, -9.913867187499989], + [160.64921875000002, -9.92861328124998], + [160.4816406250001, -9.894726562499997], + [160.32109375000007, -9.821289062499957], + [160.00234375000005, -9.812402343750023], + [159.85371093750004, -9.791503906250028], + [159.80273437499997, -9.763476562500003], + [159.75546875000012, -9.726074218750014], + [159.68046875000002, -9.636816406249949], + [159.621875, -9.532128906250023], + [159.61230468749997, -9.470703124999943], + [159.60742187499997, -9.353808593750031], + [159.62558593750012, -9.311230468749969], + [159.68632812500007, -9.268652343749991], + [159.75039062500005, -9.272656250000011] + ] + ], + [ + [ + [160.1681640625001, -8.995507812500037], + [160.22568359375006, -9.009570312499974], + [160.25351562500006, -9.007324218749957], + [160.31933593749997, -9.061132812499991], + [160.40751953125007, -9.140332031249969], + [160.37148437500005, -9.18125], + [160.3, -9.160351562499955], + [160.27597656250012, -9.168652343749969], + [160.26816406250012, -9.163183593750006], + [160.253125, -9.1234375], + [160.1751953125, -9.084082031249963], + [160.10537109375, -9.080761718749997], + [160.09628906250012, -9.033984374999974], + [160.1681640625001, -8.995507812500037] + ] + ], + [ + [ + [159.18857421875006, -9.123535156250014], + [159.17509765625002, -9.125976562499972], + [159.128125, -9.113769531249972], + [159.07109375000002, -9.109667968750031], + [159.03632812500004, -9.075], + [159.07763671874997, -9.025390625], + [159.12978515625, -8.99306640624998], + [159.1537109375, -9.001367187499994], + [159.17607421875002, -9.022070312500034], + [159.22841796875005, -9.029980468749955], + [159.23398437500012, -9.09375], + [159.18857421875006, -9.123535156250014] + ] + ], + [ + [ + [157.64541015625005, -8.758886718749977], + [157.64316406250012, -8.794042968750034], + [157.58583984375005, -8.783105468750023], + [157.45791015625, -8.730175781249983], + [157.453515625, -8.705957031250023], + [157.52636718750003, -8.697070312499989], + [157.57929687500004, -8.703710937500006], + [157.62324218750004, -8.734570312499997], + [157.64541015625005, -8.758886718749977] + ] + ], + [ + [ + [158.20078125000012, -8.82197265625004], + [158.17880859375006, -8.82578125], + [158.15537109375012, -8.785937499999974], + [158.20996093750003, -8.678125], + [158.23632812499997, -8.764843750000026], + [158.25341796874997, -8.79736328125], + [158.20078125000012, -8.82197265625004] + ] + ], + [ + [ + [158.10791015625003, -8.684179687500034], + [158.00947265625004, -8.763085937500023], + [157.93759765625006, -8.73642578125002], + [157.879296875, -8.66875], + [157.89843749999997, -8.587207031249989], + [157.90927734375006, -8.565625], + [157.93828125000002, -8.560937499999966], + [157.9669921875001, -8.544238281250031], + [157.9984375, -8.508203124999966], + [158.10546874999997, -8.536816406250026], + [158.1322265625, -8.556640624999986], + [158.06835937499997, -8.60664062500004], + [158.08964843750002, -8.62265625000002], + [158.10351562500003, -8.646484374999986], + [158.10791015625003, -8.684179687500034] + ] + ], + [ + [ + [157.38896484375002, -8.713476562499963], + [157.38906250000005, -8.728125], + [157.33388671875, -8.7], + [157.2123046875, -8.565039062500006], + [157.2337890625, -8.519921874999966], + [157.34511718750005, -8.432421874999989], + [157.37949218750012, -8.420898437499943], + [157.41093750000002, -8.475097656249972], + [157.38349609375004, -8.555078125000023], + [157.3470703125, -8.575488281250003], + [157.3322265625001, -8.65068359374996], + [157.38896484375002, -8.713476562499963] + ] + ], + [ + [ + [159.6876953125001, -8.507910156250006], + [159.64003906250005, -8.521484375000014], + [159.56923828125, -8.484765625], + [159.53847656250005, -8.451367187500026], + [159.55322265625003, -8.399218749999974], + [159.59462890625005, -8.379492187499949], + [159.64160156250003, -8.414453124999966], + [159.64628906250007, -8.450390625000011], + [159.6876953125001, -8.507910156250006] + ] + ], + [ + [ + [160.7494140625, -8.313964843750014], + [160.99765625000006, -8.612011718749983], + [160.98779296874997, -8.66484375], + [160.95410156249997, -8.698925781250011], + [160.94433593750003, -8.799023437499983], + [160.97558593749997, -8.8375], + [161.04345703124997, -8.855078125000034], + [161.15869140624997, -8.961816406250009], + [161.20468750000012, -9.092480468749983], + [161.20878906250007, -9.132617187499989], + [161.25664062500007, -9.191992187500006], + [161.2584960937501, -9.316894531249972], + [161.36796875000002, -9.490332031249949], + [161.37753906250006, -9.573730468749972], + [161.36738281250004, -9.61123046874998], + [161.32187500000012, -9.589550781249997], + [161.19101562500012, -9.392871093749989], + [161.04150390625003, -9.308007812500023], + [161.02441406249997, -9.271484374999957], + [160.87343750000005, -9.156835937499949], + [160.77207031250012, -8.963867187499986], + [160.66259765625003, -8.620605468749957], + [160.7140625000001, -8.539257812499997], + [160.59042968750006, -8.372753906249997], + [160.59628906250006, -8.328222656249991], + [160.64853515625006, -8.338378906250014], + [160.6847656250001, -8.336328125000037], + [160.70214843749997, -8.316503906249991], + [160.7494140625, -8.313964843750014] + ] + ], + [ + [ + [157.76347656250002, -8.242187499999957], + [157.82626953125012, -8.324023437500017], + [157.89843749999997, -8.506347656249943], + [157.8854492187501, -8.569140624999946], + [157.8336914062501, -8.572656249999952], + [157.81933593750003, -8.612011718749983], + [157.74921875000004, -8.523632812500011], + [157.65595703125004, -8.499707031250011], + [157.58789062500003, -8.445410156249963], + [157.56455078125006, -8.33779296874998], + [157.5580078125, -8.269921875], + [157.50419921875002, -8.258300781249957], + [157.35136718750007, -8.275292968750037], + [157.30244140625004, -8.33330078124996], + [157.23242187500003, -8.31484375], + [157.21757812500002, -8.262792968749977], + [157.22851562500003, -8.21162109375004], + [157.32158203125007, -8.161230468749977], + [157.340625, -8.096386718750011], + [157.43339843750002, -7.984667968749989], + [157.490625, -7.965722656250037], + [157.59882812500004, -8.005957031249963], + [157.61230468750003, -8.16484375], + [157.65126953125, -8.216796875000028], + [157.76347656250002, -8.242187499999957] + ] + ], + [ + [ + [156.60390625000005, -8.171582031249955], + [156.59169921875005, -8.196289062500014], + [156.53964843750006, -8.072949218750026], + [156.54228515625002, -8.010839843749991], + [156.55126953124997, -7.970996093749946], + [156.57031250000003, -7.958789062499946], + [156.61240234375006, -8.096191406249972], + [156.60390625000005, -8.171582031249955] + ] + ], + [ + [ + [157.171875, -8.108105468749997], + [157.15, -8.123242187499969], + [157.04121093750004, -8.117480468749946], + [156.95830078125002, -8.014355468749997], + [156.95898437499997, -7.937988281249972], + [157.02412109375004, -7.867871093749997], + [157.10273437500004, -7.855468749999957], + [157.14580078125002, -7.882617187499974], + [157.18613281250006, -7.941210937500017], + [157.2005859375, -8.01591796874996], + [157.19150390625012, -8.081835937499974], + [157.171875, -8.108105468749997] + ] + ], + [ + [ + [156.687890625, -7.92304687500004], + [156.66875, -7.936816406250003], + [156.63535156250006, -7.882812500000014], + [156.61103515625004, -7.86591796875004], + [156.61171875000005, -7.805761718749949], + [156.5109375000001, -7.707812499999974], + [156.50244140624997, -7.640234374999977], + [156.5609375, -7.574023437499989], + [156.63964843750003, -7.612597656250031], + [156.71767578125005, -7.695703125], + [156.80908203124997, -7.722851562500026], + [156.79023437500004, -7.777929687499963], + [156.70800781250003, -7.876953124999972], + [156.687890625, -7.92304687500004] + ] + ], + [ + [ + [159.8791015625001, -8.534277343749949], + [159.88085937499997, -8.55742187499996], + [159.74648437500005, -8.473828124999983], + [159.64453124999997, -8.371679687499963], + [159.35410156250006, -8.26044921875004], + [159.29169921875004, -8.20341796874996], + [159.23925781250003, -8.196289062500014], + [159.09023437500005, -8.103320312500003], + [158.9440429687501, -8.04072265625004], + [158.85458984375006, -7.959765624999974], + [158.83183593750007, -7.92666015624998], + [158.77802734375004, -7.906933593749955], + [158.68623046875004, -7.818066406249969], + [158.59697265625002, -7.759082031250031], + [158.56542968749997, -7.651367187500028], + [158.47880859375007, -7.5771484375], + [158.457421875, -7.544726562499974], + [158.734375, -7.604296875000031], + [158.86279296874997, -7.722363281250011], + [158.97246093750002, -7.789160156250034], + [159.01054687500007, -7.83740234375], + [159.109375, -7.903515624999969], + [159.19804687500007, -7.909570312499966], + [159.28681640625004, -7.976171875000034], + [159.36767578124997, -7.994140624999957], + [159.43144531250002, -8.029003906249955], + [159.84306640625002, -8.326953124999989], + [159.79394531249997, -8.406054687500031], + [159.84863281249997, -8.463476562500006], + [159.8791015625001, -8.534277343749949] + ] + ], + [ + [ + [155.83984374999997, -7.097167968750014], + [155.73935546875012, -7.12109375], + [155.67753906250002, -7.08896484375002], + [155.70498046875005, -7.012695312500028], + [155.73896484375004, -6.972949218750017], + [155.8646484375, -7.043261718749946], + [155.83984374999997, -7.097167968750014] + ] + ], + [ + [ + [157.48671875000005, -7.330371093750003], + [157.51865234375006, -7.365625], + [157.44130859375, -7.425683593749966], + [157.3392578125, -7.393066406249986], + [157.31728515625005, -7.35937], + [157.31464843750004, -7.341503906249955], + [157.24345703125002, -7.35302734375], + [157.10156249999997, -7.323632812499966], + [156.90429687500003, -7.180468750000017], + [156.69580078125003, -6.910937499999989], + [156.49492187500002, -6.761621093750037], + [156.45742187500005, -6.715234375], + [156.4525390625, -6.638281249999963], + [156.47939453125, -6.608886718750014], + [156.6041992187501, -6.64101562499998], + [156.76542968750007, -6.7640625], + [157.03027343750003, -6.891992187499952], + [157.10253906250003, -6.957226562500011], + [157.14843750000003, -7.113769531250014], + [157.19335937499997, -7.160351562499997], + [157.3361328125001, -7.280468749999955], + [157.41162109375003, -7.30859375], + [157.45156250000005, -7.313671874999969], + [157.48671875000005, -7.330371093750003] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Sierra Leone", + "iso_a2": "SL", + "iso_a3": "SLE", + "iso_n3": "694", + "continent": "Africa" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-12.526074218749926, 7.436328125000017], + [-12.54062, 7.410253906250034], + [-12.607177734375028, 7.47451171874998], + [-12.951611328124926, 7.570849609374989], + [-12.854394531249937, 7.622021484375011], + [-12.615234374999972, 7.63720703125], + [-12.544189453124972, 7.607373046875054], + [-12.5125, 7.582421875000037], + [-12.500634765624994, 7.535107421874983], + [-12.526074218749926, 7.436328125000017] + ] + ], + [ + [ + [-11.180859374999955, 9.925341796875045], + [-11.115673828124926, 9.843164062499994], + [-11.047460937499977, 9.786328125000054], + [-10.963085937499926, 9.661621093750043], + [-10.86479492187496, 9.516455078124963], + [-10.758593749999989, 9.385351562499991], + [-10.690527343749977, 9.314257812499974], + [-10.682714843750006, 9.289355468749974], + [-10.687646484374937, 9.261132812499994], + [-10.721240234374932, 9.194482421875009], + [-10.749951171874926, 9.12236328124996], + [-10.747021484374955, 9.095263671875045], + [-10.726855468749932, 9.081689453125023], + [-10.615966796875, 9.059179687499977], + [-10.60576171874996, 8.978808593750031], + [-10.605615234375023, 8.867578125000023], + [-10.551757812499972, 8.763769531250006], + [-10.500537109375017, 8.687548828125017], + [-10.503125, 8.66030273437498], + [-10.62846679687496, 8.529980468749983], + [-10.677343749999977, 8.400585937499997], + [-10.702148437499972, 8.364208984375054], + [-10.712109374999955, 8.335253906250017], + [-10.686962890624983, 8.321679687500009], + [-10.652636718749989, 8.330273437499983], + [-10.604003906249943, 8.319482421874994], + [-10.55771484374992, 8.315673828125028], + [-10.496435546874977, 8.362109374999974], + [-10.394433593749966, 8.480957031250028], + [-10.360058593749983, 8.49550781249998], + [-10.283203124999972, 8.48515625], + [-10.285742187499949, 8.454101562499986], + [-10.314648437499983, 8.310839843750017], + [-10.359814453124926, 8.187939453125026], + [-10.389550781249966, 8.15761718749998], + [-10.516748046874937, 8.12529296874996], + [-10.570849609374932, 8.071142578125034], + [-10.617578124999966, 7.896435546874969], + [-10.6474609375, 7.759375], + [-10.691308593749966, 7.736425781249963], + [-10.878076171874994, 7.538232421874994], + [-11.000244140624943, 7.463037109375051], + [-11.085400390624955, 7.398583984374966], + [-11.166113281249977, 7.314404296875054], + [-11.267675781249977, 7.232617187499997], + [-11.376660156249983, 7.094677734375054], + [-11.454541015624955, 6.95122070312496], + [-11.507519531249983, 6.906542968750003], + [-11.547509765624966, 6.946972656249983], + [-11.733447265625017, 7.088574218750054], + [-11.92919921875, 7.18354492187504], + [-12.346630859374955, 7.341796875000043], + [-12.48564453124996, 7.386279296875045], + [-12.480664062500011, 7.442480468750034], + [-12.43271484374992, 7.545019531249963], + [-12.510449218749955, 7.66572265625004], + [-12.480273437499932, 7.75327148437502], + [-12.510449218749955, 7.75336914062504], + [-12.570214843749937, 7.700585937500037], + [-12.697607421874977, 7.715869140625045], + [-12.781933593749926, 7.791113281250006], + [-12.850878906249932, 7.818701171875034], + [-12.88095703124992, 7.856640625000026], + [-12.925146484374949, 8.055175781249972], + [-12.956933593749966, 8.145312500000045], + [-13.020800781249989, 8.200927734375], + [-13.148974609374989, 8.214599609375043], + [-13.20175781249992, 8.335839843750051], + [-13.272753906249989, 8.429736328124989], + [-13.261230468749943, 8.48759765624996], + [-13.203320312499955, 8.484277343749994], + [-13.157958984374972, 8.442285156249966], + [-13.085009765624932, 8.42475585937504], + [-12.99423828124992, 8.526464843749977], + [-12.912939453124949, 8.581542968750014], + [-12.894091796874932, 8.62978515624998], + [-12.904003906249926, 8.65625], + [-12.953369140624943, 8.615136718750009], + [-13.088232421874977, 8.625732421875043], + [-13.121630859374932, 8.588769531249966], + [-13.181835937499955, 8.576904296875043], + [-13.228417968749937, 8.695898437500034], + [-13.22617187499992, 8.765966796875006], + [-13.206933593749994, 8.843115234375006], + [-13.071044921875028, 8.856347656250037], + [-13.059472656249966, 8.881152343750031], + [-13.153710937499994, 8.897705078125028], + [-13.271630859374937, 8.987402343750006], + [-13.292675781249955, 9.04921875], + [-13.234228515624949, 9.070117187499974], + [-13.178369140624937, 9.060888671874963], + [-13.129882812500028, 9.047558593749997], + [-13.077294921874966, 9.069628906249974], + [-13.028027343749955, 9.103564453125045], + [-12.99863281249992, 9.146923828124997], + [-12.958789062499989, 9.263330078124994], + [-12.831103515624989, 9.302246093750014], + [-12.755859374999943, 9.373583984374989], + [-12.684423828124949, 9.48417968749996], + [-12.651660156249932, 9.56191406249998], + [-12.622167968749977, 9.600634765624974], + [-12.60361328124992, 9.634228515624969], + [-12.589843749999943, 9.671142578125028], + [-12.557861328125, 9.704980468749994], + [-12.524365234374926, 9.787207031249963], + [-12.501464843749972, 9.862158203125048], + [-12.427978515625028, 9.898144531250011], + [-12.277734374999966, 9.929785156249963], + [-12.142333984375, 9.875390625], + [-11.922753906249937, 9.922753906250051], + [-11.911083984374955, 9.993017578124977], + [-11.710058593749949, 9.994189453125031], + [-11.471923828125028, 9.99545898437502], + [-11.273632812499955, 9.996533203124983], + [-11.205664062499949, 9.977734374999969], + [-11.180859374999955, 9.925341796875045] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "El Salvador", + "iso_a2": "SV", + "iso_a3": "SLV", + "iso_n3": "222", + "continent": "North America" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-89.36259765624999, 14.416015625], + [-89.33725585937499, 14.411376953125], + [-89.1701171875, 14.360302734374997], + [-89.1205078125, 14.370214843749991], + [-89.05712890625, 14.329150390625003], + [-89.02685546875, 14.296972656249991], + [-89.0001953125, 14.252734375], + [-88.868310546875, 14.163671875], + [-88.845947265625, 14.124755859375], + [-88.74736328124999, 14.072265625], + [-88.70761718749999, 14.032080078124991], + [-88.665625, 14.015527343749994], + [-88.583154296875, 14.000146484374994], + [-88.51254882812499, 13.978955078124997], + [-88.504345703125, 13.964208984374991], + [-88.49765625, 13.904541015625], + [-88.482666015625, 13.854248046875], + [-88.44912109375, 13.850976562499994], + [-88.40849609374999, 13.875390625], + [-88.27622070312499, 13.942675781250003], + [-88.151025390625, 13.987353515625003], + [-88.08046875, 13.960595703124994], + [-88.038720703125, 13.904638671874991], + [-87.99101562499999, 13.879638671875], + [-87.8919921875, 13.894970703124997], + [-87.80224609375, 13.889990234374991], + [-87.7314453125, 13.841064453125], + [-87.71533203125, 13.812695312499997], + [-87.758544921875, 13.649951171875003], + [-87.77421874999999, 13.580322265625], + [-87.781884765625, 13.521386718749994], + [-87.75644531249999, 13.506005859374994], + [-87.731640625, 13.483105468749997], + [-87.73701171875, 13.451367187499997], + [-87.814208984375, 13.399169921875], + [-87.83837890625, 13.385791015625003], + [-87.820703125, 13.28515625], + [-87.878076171875, 13.224414062500003], + [-87.930859375, 13.1806640625], + [-88.0234375, 13.16875], + [-88.1806640625, 13.164013671874997], + [-88.417138671875, 13.213525390624994], + [-88.591552734375, 13.281054687500003], + [-88.68564453124999, 13.281494140625], + [-88.655859375, 13.259179687499994], + [-88.58154296875, 13.244970703124991], + [-88.48388671875, 13.197167968749994], + [-88.51201171874999, 13.183935546874991], + [-88.86704101562499, 13.283251953125003], + [-89.27763671874999, 13.478076171875003], + [-89.52324218749999, 13.509130859374991], + [-89.80419921875, 13.560107421875003], + [-89.970458984375, 13.683154296875003], + [-90.09521484375, 13.736523437499997], + [-90.105908203125, 13.783007812500003], + [-90.104736328125, 13.834765625], + [-90.04814453124999, 13.904052734375], + [-89.94267578124999, 13.997363281250003], + [-89.872705078125, 14.045605468749997], + [-89.83994140624999, 14.055078125], + [-89.793701171875, 14.050097656250003], + [-89.74936523437499, 14.077001953124991], + [-89.7111328125, 14.141308593749997], + [-89.6712890625, 14.182714843749991], + [-89.570263671875, 14.224658203125003], + [-89.54716796874999, 14.241259765625003], + [-89.55502929687499, 14.277246093749994], + [-89.57695312499999, 14.347070312499994], + [-89.5736328125, 14.390087890624997], + [-89.54052734375, 14.409912109375], + [-89.50087890625, 14.413769531249997], + [-89.41884765625, 14.431103515624997], + [-89.383251953125, 14.427636718749994], + [-89.36259765624999, 14.416015625] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "San Marino", + "iso_a2": "SM", + "iso_a3": "SMR", + "iso_n3": "674", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [12.485253906250023, 43.901416015624996], + [12.426367187500006, 43.894091796874996], + [12.396875, 43.9345703125], + [12.441113281250011, 43.982421875], + [12.503710937500017, 43.98974609375], + [12.5146484375, 43.952978515625], + [12.485253906250023, 43.901416015624996] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Somaliland", + "iso_a2": "-99", + "iso_a3": "-99", + "iso_n3": "-99", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [48.938574218750006, 11.258447265624994], + [48.9384765625, 10.982324218749994], + [48.9384765625, 10.714208984374991], + [48.93837890625002, 10.433251953124994], + [48.93828125000002, 9.973486328124991], + [48.93828125000002, 9.8076171875], + [48.938085937500006, 9.564111328124994], + [48.938085937500006, 9.451757812499991], + [48.793554687500006, 9.232714843749989], + [48.61660156250002, 8.964599609375], + [48.42861328125002, 8.679589843749994], + [48.27275390625002, 8.443359375], + [48.12675781250002, 8.22216796875], + [47.97822265625001, 7.9970703125], + [47.6376953125, 7.9970703125], + [47.3056640625, 7.9970703125], + [46.97822265625001, 7.9970703125], + [46.91953125, 8.026123046875], + [46.64472656250001, 8.1181640625], + [46.295996093750006, 8.234960937499991], + [45.86328125, 8.3798828125], + [45.55546875000002, 8.483007812499991], + [45.22695312500002, 8.5908203125], + [44.8935546875, 8.7001953125], + [44.63203125000001, 8.786083984374997], + [44.30625, 8.89306640625], + [44.02285156250002, 8.986035156249997], + [43.98378906250002, 9.008837890624989], + [43.826757812500006, 9.15078125], + [43.62050781250002, 9.33740234375], + [43.5810546875, 9.340722656249994], + [43.482519531250006, 9.379492187499991], + [43.39433593750002, 9.480273437499989], + [43.303125, 9.609082031249997], + [43.21845703125001, 9.770166015624994], + [43.181640625, 9.879980468749991], + [43.068945312500006, 9.926220703124997], + [43.014746093750006, 10.012597656249994], + [42.9125, 10.140820312499997], + [42.84160156250002, 10.203076171874997], + [42.81640625, 10.257373046874989], + [42.78369140625, 10.36962890625], + [42.725195312500006, 10.491748046874989], + [42.66923828125002, 10.567578125], + [42.65644531250001, 10.6], + [42.65957031250002, 10.621386718749989], + [42.76308593750002, 10.786914062499989], + [42.80976562500001, 10.845996093749989], + [42.862890625, 10.903222656249994], + [42.90615234375002, 10.960253906249989], + [42.92275390625002, 10.999316406249989], + [43.04863281250002, 11.1943359375], + [43.159375, 11.36572265625], + [43.24599609375002, 11.499804687499989], + [43.44121093750002, 11.346435546875], + [43.63115234375002, 11.035449218749989], + [43.85273437500001, 10.784277343749991], + [44.158203125, 10.55078125], + [44.279296875, 10.471875], + [44.38652343750002, 10.430224609374989], + [44.94296875, 10.43671875], + [45.33769531250002, 10.649755859374991], + [45.695898437500006, 10.80390625], + [45.81669921875002, 10.835888671874997], + [46.024511718750006, 10.793701171875], + [46.25390625, 10.781103515624991], + [46.46025390625002, 10.734179687499989], + [46.565039062500006, 10.745996093749994], + [46.97343750000002, 10.925390625], + [47.230078125, 11.099902343749989], + [47.40498046875001, 11.174023437499997], + [47.47382812500001, 11.1748046875], + [47.7125, 11.112011718749997], + [48.01923828125001, 11.139355468749997], + [48.43886718750002, 11.290136718749991], + [48.57255859375002, 11.320507812499997], + [48.674414062500006, 11.32265625], + [48.903125, 11.2548828125], + [48.938574218750006, 11.258447265624994] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Somalia", + "iso_a2": "SO", + "iso_a3": "SOM", + "iso_n3": "706", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [41.53271484375, -1.6953125], + [41.53759765625, -1.613183593750009], + [41.521875, -1.572265625], + [41.42695312500001, -1.449511718750003], + [41.24980468750002, -1.220507812500003], + [41.115820312500006, -1.047460937500006], + [40.97871093750001, -0.870312500000011], + [40.97822265625001, -0.728710937500011], + [40.9765625, -0.307324218750011], + [40.973242187500006, 0.535400390625], + [40.97001953125002, 1.378173828125], + [40.96669921875002, 2.220947265625], + [40.96503906250001, 2.642333984375], + [40.964453125, 2.814648437499997], + [40.97871093750001, 2.842431640624994], + [41.13496093750001, 2.9970703125], + [41.341796875, 3.20166015625], + [41.61347656250001, 3.590478515624994], + [41.76093750000001, 3.801611328124991], + [41.88398437500001, 3.977734375], + [41.91533203125002, 4.031298828124989], + [42.02412109375001, 4.137939453125], + [42.22841796875002, 4.20166015625], + [42.35517578125001, 4.212255859374991], + [42.791601562500006, 4.2919921875], + [42.85664062500001, 4.32421875], + [42.89472656250001, 4.361083984375], + [42.93095703125002, 4.4453125], + [43.01601562500002, 4.563330078124991], + [43.12568359375001, 4.644482421874997], + [43.333984375, 4.750390625], + [43.53828125000001, 4.84033203125], + [43.58349609375, 4.85498046875], + [43.829199218750006, 4.911425781249989], + [43.88945312500002, 4.930761718749991], + [43.988867187500006, 4.950537109374991], + [44.028125, 4.950976562499989], + [44.36953125000002, 4.931201171874989], + [44.63662109375002, 4.915771484375], + [44.91162109375, 4.89990234375], + [44.940527343750006, 4.912011718749994], + [45.1328125, 5.121679687499991], + [45.4384765625, 5.455419921874991], + [45.63359375000002, 5.668261718749989], + [45.93496093750002, 5.997216796874994], + [46.16679687500002, 6.234667968749989], + [46.422949218750006, 6.497265625], + [46.67177734375002, 6.737255859374997], + [46.97119140625, 7.026025390624994], + [47.159765625, 7.207861328124991], + [47.45283203125001, 7.490478515625], + [47.73164062500001, 7.759326171874989], + [47.97822265625001, 7.9970703125], + [48.12675781250002, 8.22216796875], + [48.27275390625002, 8.443359375], + [48.42861328125002, 8.679589843749994], + [48.61660156250002, 8.964599609375], + [48.793554687500006, 9.232714843749989], + [48.938085937500006, 9.451757812499991], + [48.938085937500006, 9.564111328124994], + [48.93828125000002, 9.8076171875], + [48.93828125000002, 9.973486328124991], + [48.93837890625002, 10.433251953124994], + [48.9384765625, 10.714208984374991], + [48.9384765625, 10.982324218749994], + [48.938574218750006, 11.258447265624994], + [49.062109375, 11.270849609374991], + [49.38828125, 11.342724609374997], + [49.64208984375, 11.450927734375], + [50.11005859375001, 11.529296875], + [50.46621093750002, 11.7275390625], + [50.5283203125, 11.823193359374997], + [50.63593750000001, 11.943798828124997], + [50.79228515625002, 11.983691406249989], + [51.19130859375002, 11.841992187499997], + [51.2548828125, 11.830712890624994], + [51.23183593750002, 11.745019531249994], + [51.21816406250002, 11.657666015624997], + [51.136328125, 11.505126953125], + [51.08427734375002, 11.335644531249997], + [51.12226562500001, 11.076757812499991], + [51.140625, 10.656884765624994], + [51.13125, 10.595898437499997], + [51.10488281250002, 10.535839843749997], + [51.093847656250006, 10.488525390625], + [51.05078125, 10.471972656249989], + [51.031835937500006, 10.444775390624997], + [51.06318359375001, 10.433935546874991], + [51.18828125000002, 10.479736328125], + [51.185546875, 10.529833984374989], + [51.19296875, 10.554638671874997], + [51.29570312500002, 10.498681640624994], + [51.369140625, 10.475244140624994], + [51.390234375, 10.422607421875], + [51.38457031250002, 10.386523437499989], + [51.268164062500006, 10.40312], + [51.20878906250002, 10.431054687499994], + [51.03593750000002, 10.38515625], + [50.93007812500002, 10.335546875], + [50.8984375, 10.253125], + [50.87373046875001, 9.924169921874991], + [50.83281250000002, 9.710498046874989], + [50.825, 9.428173828124997], + [50.68515625, 9.241162109374997], + [50.63798828125002, 9.109277343749994], + [50.429785156250006, 8.845263671874989], + [50.32119140625002, 8.619580078124997], + [50.285742187500006, 8.509423828124994], + [50.10283203125002, 8.199804687499991], + [49.85205078125, 7.962548828124994], + [49.76123046875, 7.659521484374991], + [49.67119140625002, 7.469531249999989], + [49.57001953125001, 7.296972656249991], + [49.34853515625002, 6.990527343749989], + [49.234960937500006, 6.77734375], + [49.09267578125002, 6.407861328124994], + [49.04931640625, 6.173632812499989], + [48.649023437500006, 5.494384765625], + [48.233984375, 4.952685546874989], + [47.97529296875001, 4.497021484374997], + [47.51142578125001, 3.96826171875], + [46.87880859375002, 3.28564453125], + [46.05117187500002, 2.475146484374989], + [45.826269531250006, 2.309863281249989], + [44.92021484375002, 1.81015625], + [44.33271484375001, 1.390966796874991], + [44.03271484375, 1.105908203124997], + [43.71757812500002, 0.857861328124997], + [43.46767578125002, 0.621630859374989], + [42.71210937500001, -0.175683593750009], + [42.63417968750002, -0.25078125], + [42.56074218750001, -0.321484375000011], + [42.465625, -0.45654296875], + [42.3994140625, -0.510058593750003], + [42.21894531250001, -0.737988281250011], + [42.10625, -0.856152343750011], + [41.97988281250002, -0.973046875], + [41.92626953125, -1.055566406250009], + [41.88828125, -1.150585937500011], + [41.84619140625, -1.203417968750003], + [41.73222656250002, -1.430078125], + [41.63203125000001, -1.578515625], + [41.53271484375, -1.6953125] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "St. Pierre and Miquelon", + "iso_a2": "PM", + "iso_a3": "SPM", + "iso_n3": "666", + "continent": "North America" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-56.15073242187498, 46.76240234374998], + [-56.17167968749996, 46.752832031249994], + [-56.24326171874998, 46.76718749999998], + [-56.20917968749998, 46.798242187499994], + [-56.18505859374994, 46.807275390624966], + [-56.15263671874999, 46.811083984375045], + [-56.137353515624994, 46.8015625], + [-56.139257812500034, 46.778662109375006], + [-56.15073242187498, 46.76240234374998] + ] + ], + [ + [ + [-56.26708984374997, 46.838476562500034], + [-56.354199218749955, 46.79531250000002], + [-56.38476562499994, 46.81943359375006], + [-56.37724609375002, 46.84765625000003], + [-56.33256835937499, 46.91596679687501], + [-56.33393554687498, 46.935644531250006], + [-56.386914062499955, 47.06796874999998], + [-56.37792968749997, 47.08955078125001], + [-56.36464843749994, 47.09897460937498], + [-56.287353515625, 47.07099609374998], + [-56.27836914062496, 47.035009765625006], + [-56.314892578124926, 46.953857421875], + [-56.28979492187497, 46.89990234375003], + [-56.25546874999998, 46.860986328124994], + [-56.26708984374997, 46.838476562500034] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Serbia", + "iso_a2": "RS", + "iso_a3": "SRB", + "iso_n3": "688", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [19.72451171875008, 46.151904296875045], + [19.84443359375001, 46.145898437499966], + [19.934082031250057, 46.161474609375034], + [20.161425781250017, 46.14189453124996], + [20.210156250000068, 46.12602539062502], + [20.241796875000034, 46.10859375000001], + [20.301367187500006, 46.05068359375002], + [20.35859375000004, 45.975488281249994], + [20.43798828125003, 45.940771484375006], + [20.53261718750005, 45.89951171875006], + [20.581152343749977, 45.86948242187506], + [20.652734375, 45.779394531250006], + [20.709277343750074, 45.735253906249994], + [20.727832031250017, 45.73740234374998], + [20.74687, 45.74897460937501], + [20.76015625000005, 45.75810546875002], + [20.775, 45.74980468750002], + [20.775781250000023, 45.72250976562506], + [20.77929687500003, 45.662011718749994], + [20.76582031250004, 45.59746093749999], + [20.78603515625008, 45.53647460937498], + [20.78652343750008, 45.51748046875002], + [20.772460937500057, 45.500097656250034], + [20.774218750000074, 45.484423828125045], + [20.794042968750006, 45.467871093750034], + [20.87080078125001, 45.42753906249999], + [20.941796875, 45.365332031250034], + [21.023828125000023, 45.32153320312497], + [21.099902343750074, 45.29355468750006], + [21.14785156250005, 45.29174804687506], + [21.226464843749994, 45.24130859374998], + [21.381738281250023, 45.20507812499997], + [21.431445312500017, 45.192529296874994], + [21.465429687500006, 45.171875], + [21.490234375, 45.147900390624955], + [21.491796875000063, 45.12226562499998], + [21.467871093750063, 45.10986328125003], + [21.434472656250023, 45.07514648437498], + [21.420703125000045, 45.032958984375], + [21.39589843750005, 45.02221679687503], + [21.37109374999997, 45.02138671875002], + [21.352929687500023, 45.00898437499998], + [21.357031250000034, 44.99077148437502], + [21.37773437499999, 44.973437500000045], + [21.409960937500074, 44.95771484375004], + [21.471972656250017, 44.941992187500034], + [21.533203125000057, 44.91884765625002], + [21.532324218750063, 44.900683593750045], + [21.519921875000023, 44.88081054687498], + [21.442187500000074, 44.87338867187498], + [21.384375, 44.87006835937501], + [21.357910156250057, 44.86181640625003], + [21.36005859375004, 44.82666015624997], + [21.52314453125004, 44.79008789062499], + [21.597070312500023, 44.75541992187502], + [21.63613281250005, 44.71044921875], + [21.740234375000057, 44.68066406249997], + [21.909277343750034, 44.666113281250034], + [22.026953125, 44.61987304687503], + [22.093066406250074, 44.541943359374955], + [22.200976562500017, 44.560693359374966], + [22.350683593750063, 44.676123046875034], + [22.497656249999977, 44.70625], + [22.64208984375, 44.65097656249998], + [22.720898437499983, 44.605517578125045], + [22.73437, 44.56992187499998], + [22.700781250000063, 44.55551757812498], + [22.620117187500057, 44.562353515625034], + [22.554003906250017, 44.54033203124999], + [22.50234375000005, 44.48959960937506], + [22.49453125000005, 44.43544921875002], + [22.53066406250005, 44.37797851562496], + [22.581835937500074, 44.338330078124955], + [22.647949218750057, 44.316455078125045], + [22.683300781250068, 44.28647460937506], + [22.687890625000023, 44.248291015625], + [22.705078125000057, 44.23779296875], + [22.66748046875003, 44.22021484374997], + [22.626562500000034, 44.19409179687497], + [22.60341796875005, 44.14858398437502], + [22.597460937500074, 44.075292968750034], + [22.469042968750017, 44.01801757812498], + [22.42080078125005, 44.00742187500006], + [22.399023437500063, 43.96953125], + [22.36542968750004, 43.86210937500002], + [22.36962890625003, 43.78129882812499], + [22.386914062500068, 43.74013671875005], + [22.39482421874999, 43.70664062500006], + [22.436328125000017, 43.66547851562501], + [22.47412109375, 43.60224609375001], + [22.499121093750006, 43.51884765624999], + [22.55458984375005, 43.45449218750002], + [22.69697265625001, 43.39106445312498], + [22.767578125, 43.35415039062502], + [22.81972656250005, 43.300732421874955], + [22.85957031250001, 43.252343749999966], + [22.97685546874999, 43.18798828125], + [22.967968750000068, 43.142041015624955], + [22.94228515625005, 43.09707031250005], + [22.915234375000068, 43.07597656250002], + [22.85683593750005, 43.01826171874998], + [22.799902343750006, 42.985742187499994], + [22.706152343750006, 42.88393554687505], + [22.558105468750057, 42.87846679687499], + [22.522753906250045, 42.87031250000004], + [22.466796875, 42.842480468749955], + [22.439257812500074, 42.791650390624994], + [22.465625, 42.75078125000002], + [22.46328125000008, 42.70947265625003], + [22.436230468749983, 42.62910156250001], + [22.472070312500023, 42.543310546875034], + [22.524218750000074, 42.50390625], + [22.53242187500004, 42.48120117187497], + [22.523535156250006, 42.440966796875045], + [22.44570312500005, 42.35913085937497], + [22.42207031250004, 42.32885742187503], + [22.344042968750045, 42.31396484375003], + [22.31738281250003, 42.32172851562501], + [22.277050781250068, 42.34985351562506], + [22.23974609375003, 42.35815429687506], + [22.146679687500068, 42.325], + [22.052050781250074, 42.30463867187498], + [21.97753906249997, 42.32006835937503], + [21.904101562500045, 42.32207031249999], + [21.85302734375003, 42.308398437500045], + [21.81464843750001, 42.303125], + [21.73925781250003, 42.26772460937502], + [21.618261718750063, 42.24213867187504], + [21.5625, 42.24750976562498], + [21.541601562499977, 42.28081054687502], + [21.51894531250008, 42.32841796875002], + [21.52998046875001, 42.35], + [21.60986328125003, 42.38745117187497], + [21.61904296875005, 42.423242187499994], + [21.73066406250004, 42.595458984375], + [21.752148437500068, 42.65151367187505], + [21.752929687500057, 42.66982421875005], + [21.723828125000068, 42.681982421875034], + [21.6625, 42.681494140625006], + [21.390625, 42.751416015624955], + [21.40302734375001, 42.83154296875003], + [21.32314453125008, 42.87470703125004], + [21.237109375000045, 42.913232421874966], + [21.22265625000003, 42.95620117187502], + [21.127050781250006, 43.043017578125045], + [21.057031250000023, 43.09169921875002], + [20.96767578125005, 43.11601562499999], + [20.890722656250006, 43.15166015624996], + [20.844433593750068, 43.17343750000006], + [20.823828125000034, 43.21396484375006], + [20.823828125000034, 43.23793945312505], + [20.800585937500017, 43.26108398437506], + [20.763378906250068, 43.25859374999999], + [20.70058593750008, 43.22636718749999], + [20.623144531250006, 43.19863281250002], + [20.609667968750017, 43.17841796875001], + [20.637597656250023, 43.13037109374997], + [20.657617187500023, 43.09985351562497], + [20.648535156250034, 43.07094726562505], + [20.62402343750003, 43.03417968750003], + [20.475097656250057, 42.953027343749994], + [20.458398437500023, 42.92456054687497], + [20.48681640625003, 42.87905273437502], + [20.468847656250034, 42.85791015625], + [20.344335937500063, 42.82792968750002], + [20.34765625000003, 42.852783203125], + [20.339941406250063, 42.89287109375002], + [20.26845703125005, 42.935449218749966], + [20.16787109375008, 42.96850585937506], + [19.94404296875004, 43.081640625], + [19.858007812500006, 43.096533203125006], + [19.78115234375008, 43.10976562500005], + [19.670996093750006, 43.163964843749994], + [19.61445312500004, 43.17343750000006], + [19.551562500000017, 43.21225585937506], + [19.414648437500006, 43.34282226562502], + [19.298242187500023, 43.41396484375002], + [19.21875, 43.449951171875], + [19.196484375000068, 43.48500976562502], + [19.19160156250004, 43.52104492187499], + [19.19433593749997, 43.533300781250006], + [19.254492187500063, 43.584375], + [19.30078125, 43.59179687500003], + [19.360351562500057, 43.59345703125001], + [19.399609375000068, 43.56757812499998], + [19.451269531250006, 43.56206054687499], + [19.47998046875, 43.59516601562498], + [19.495117187500057, 43.642871093750045], + [19.48818359375008, 43.703564453124955], + [19.364062500000017, 43.844775390625045], + [19.257226562499994, 43.943310546874955], + [19.245019531249994, 43.96503906250004], + [19.26806640625, 43.98344726562496], + [19.305273437500034, 43.99335937500004], + [19.34521484375, 43.98510742187503], + [19.449414062499983, 43.97802734375], + [19.54951171875004, 43.98710937499999], + [19.583691406249983, 44.011083984375006], + [19.583789062500017, 44.04345703125003], + [19.547167968750017, 44.073486328125], + [19.43017578124997, 44.15449218749998], + [19.33886718750003, 44.22583007812506], + [19.231542968750006, 44.28056640625002], + [19.15185546875003, 44.302539062500045], + [19.128320312500023, 44.33027343750001], + [19.118457031250074, 44.359960937500006], + [19.127343750000023, 44.41455078125003], + [19.132421875000063, 44.48378906250002], + [19.15136718750003, 44.52734375], + [19.22314453125, 44.60957031249998], + [19.29189453125005, 44.69677734374997], + [19.33447265625003, 44.78066406250002], + [19.35683593750005, 44.858544921874994], + [19.348632812500057, 44.88090820312502], + [19.31269531250004, 44.8974609375], + [19.23681640625003, 44.914257812499955], + [19.131542968750068, 44.89960937500001], + [19.042089843750063, 44.87133789062503], + [19.007128906250045, 44.86918945312502], + [18.99550781250008, 44.90400390625001], + [19.00957031249999, 44.91938476562504], + [19.03759765625003, 44.91752929687502], + [19.060546875, 44.910986328125006], + [19.085253906250045, 44.92675781250003], + [19.1, 44.97377929687502], + [19.062890625000023, 45.13720703125], + [19.129687500000045, 45.151708984375034], + [19.13076171875008, 45.17548828124998], + [19.13691406250001, 45.19624023437504], + [19.20595703125005, 45.16777343750002], + [19.303027343750017, 45.16728515624999], + [19.388085937500023, 45.17299804687502], + [19.400976562500063, 45.1890625], + [19.4, 45.2125], + [19.38232421875, 45.23061523437502], + [19.35224609375001, 45.24541015625002], + [19.330273437500068, 45.26806640625003], + [19.27285156250008, 45.277978515624994], + [19.093066406250045, 45.3369140625], + [19.004687500000074, 45.39951171875006], + [19.007617187500045, 45.46582031249997], + [19.033300781250034, 45.50219726562503], + [19.064257812500045, 45.51499023437506], + [19.055078125000023, 45.527246093749966], + [18.953710937499977, 45.55800781250002], + [18.91787109375005, 45.60083007812503], + [18.947265625, 45.65581054687496], + [18.89453125, 45.76708984374997], + [18.839062499999983, 45.83574218750002], + [18.8935546875, 45.86552734374996], + [18.90107421875001, 45.90761718750002], + [18.905371093750006, 45.931738281250034], + [18.927832031250034, 45.93139648437497], + [19.015722656250006, 45.95971679687497], + [19.047656250000045, 45.98266601562503], + [19.066210937500074, 46.009521484375], + [19.087304687500023, 46.01616210937502], + [19.146289062500045, 45.98701171875001], + [19.208398437499994, 45.98442382812502], + [19.27812, 46.00288085937498], + [19.330273437500068, 46.028515624999955], + [19.392871093750017, 46.04980468750003], + [19.421289062500023, 46.064453125], + [19.457519531250057, 46.08735351562504], + [19.530761718750057, 46.155175781249994], + [19.61347656250001, 46.169189453125], + [19.72451171875008, 46.151904296875045] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "São Tomé and Principe", + "iso_a2": "ST", + "iso_a3": "STP", + "iso_n3": "678", + "continent": "Africa" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [6.659960937499989, 0.120654296874989], + [6.55683593750004, 0.047363281249972], + [6.51972656250004, 0.066308593750023], + [6.496972656250023, 0.117382812500026], + [6.468164062499994, 0.22734375], + [6.477539062500057, 0.280126953124963], + [6.52431640625008, 0.340283203124969], + [6.62587890625008, 0.40024414062502], + [6.68691406250008, 0.404394531249977], + [6.749804687500017, 0.325634765624997], + [6.75, 0.24345703124996], + [6.659960937499989, 0.120654296874989] + ] + ], + [ + [ + [7.423828125, 1.567724609375006], + [7.38662109375008, 1.541552734375003], + [7.342382812500034, 1.563574218749963], + [7.330664062500034, 1.603369140624991], + [7.38759765625008, 1.68017578125], + [7.414453125000051, 1.699121093750037], + [7.437011718750028, 1.683056640624969], + [7.450390625000011, 1.66196289062502], + [7.45234375000004, 1.631103515625043], + [7.423828125, 1.567724609375006] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Suriname", + "iso_a2": "SR", + "iso_a3": "SUR", + "iso_n3": "740", + "continent": "South America" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-54.15595703125, 5.358984375], + [-54.240185546875, 5.288232421874994], + [-54.331640625, 5.187402343749994], + [-54.45219726562499, 5.013476562499989], + [-54.446875, 4.958789062499989], + [-54.47333984375, 4.914697265624994], + [-54.4796875, 4.836523437499991], + [-54.471142578125, 4.749316406249989], + [-54.44023437499999, 4.691992187499991], + [-54.42607421874999, 4.5830078125], + [-54.449609375, 4.485009765624994], + [-54.440673828125, 4.428027343749989], + [-54.416015625, 4.337646484375], + [-54.396240234375, 4.24140625], + [-54.398388671875, 4.202490234374991], + [-54.369140625, 4.170947265624989], + [-54.34213867187499, 4.140039062499994], + [-54.350732421874994, 4.054101562499994], + [-54.255517578124994, 3.901074218749997], + [-54.1974609375, 3.834423828124997], + [-54.11279296875, 3.769433593749994], + [-54.081982421875, 3.705957031249994], + [-54.03422851562499, 3.62939453125], + [-54.00590820312499, 3.620410156249989], + [-53.990478515625, 3.589550781249997], + [-54.00595703124999, 3.530517578125], + [-54.00957031249999, 3.448535156249989], + [-54.06318359375, 3.353320312499989], + [-54.18803710937499, 3.178759765624989], + [-54.203125, 3.13818359375], + [-54.17070312499999, 2.993603515624997], + [-54.18808593749999, 2.874853515624991], + [-54.1955078125, 2.81787109375], + [-54.256738281249994, 2.713720703124991], + [-54.402001953124994, 2.461523437499991], + [-54.485546875, 2.416113281249991], + [-54.53593749999999, 2.343310546874989], + [-54.56840820312499, 2.342578124999989], + [-54.604736328125, 2.335791015624991], + [-54.61625976562499, 2.326757812499991], + [-54.661865234375, 2.327539062499994], + [-54.697412109374994, 2.359814453124997], + [-54.70292968749999, 2.39794921875], + [-54.72221679687499, 2.441650390625], + [-54.766845703125, 2.454736328124994], + [-54.85166015624999, 2.439550781249991], + [-54.87607421874999, 2.450390625], + [-54.92656249999999, 2.497363281249989], + [-54.968408203124994, 2.54833984375], + [-54.978662109374994, 2.59765625], + [-55.005810546875, 2.59296875], + [-55.0703125, 2.54833984375], + [-55.11411132812499, 2.539208984374994], + [-55.148828125, 2.55078125], + [-55.1876953125, 2.547509765624994], + [-55.286035156249994, 2.499658203124994], + [-55.343994140625, 2.48876953125], + [-55.38535156249999, 2.440625], + [-55.658935546875, 2.41875], + [-55.73056640624999, 2.406152343749994], + [-55.89375, 2.489501953125], + [-55.9359375, 2.5166015625], + [-55.957470703125, 2.520458984374997], + [-55.9755859375, 2.515966796874991], + [-55.99350585937499, 2.497509765624997], + [-56.02036132812499, 2.392773437499997], + [-56.0451171875, 2.364404296874994], + [-56.087792968749994, 2.34130859375], + [-56.12939453125, 2.299511718749997], + [-56.1376953125, 2.259033203125], + [-56.073632812499994, 2.236767578124997], + [-56.02006835937499, 2.158154296874997], + [-55.96196289062499, 2.095117187499994], + [-55.91533203124999, 2.03955078125], + [-55.921630859375, 1.976660156249991], + [-55.929638671875, 1.8875], + [-55.963330078125, 1.857080078124994], + [-56.019921875, 1.842236328124997], + [-56.22714843749999, 1.885351562499991], + [-56.38583984374999, 1.923876953124989], + [-56.45283203125, 1.932324218749997], + [-56.4828125, 1.942138671875], + [-56.522363281249994, 1.974804687499997], + [-56.5626953125, 2.005078125], + [-56.627197265625, 2.016015625], + [-56.704345703125, 2.036474609374991], + [-56.761132812499994, 2.114892578124994], + [-56.81982421875, 2.226660156249991], + [-56.84052734375, 2.277148437499989], + [-56.88642578125, 2.325976562499989], + [-56.93149414062499, 2.395361328124991], + [-56.945214843749994, 2.456835937499989], + [-56.97929687499999, 2.513232421874989], + [-56.99711914062499, 2.532177734374997], + [-57.02348632812499, 2.608984375], + [-57.028955078124994, 2.6375], + [-57.041943359375, 2.64111328125], + [-57.060449218749994, 2.665673828124994], + [-57.096875, 2.747851562499989], + [-57.105126953124994, 2.768261718749997], + [-57.12114257812499, 2.775537109374994], + [-57.16362304687499, 2.833251953125], + [-57.19736328124999, 2.853271484375], + [-57.20981445312499, 2.8828125], + [-57.206933593749994, 2.96337890625], + [-57.225, 3.003076171874994], + [-57.23056640624999, 3.078564453124997], + [-57.231640625, 3.10888671875], + [-57.248974609375, 3.142285156249997], + [-57.27792968749999, 3.164306640625], + [-57.28291015625, 3.218847656249991], + [-57.289941406249994, 3.353613281249991], + [-57.303662109375, 3.377099609374994], + [-57.42558593749999, 3.375439453124997], + [-57.437890625, 3.362255859374997], + [-57.49057617187499, 3.354296874999989], + [-57.54960937499999, 3.352832031249989], + [-57.602734375, 3.370947265624991], + [-57.646728515625, 3.39453125], + [-57.65610351562499, 3.423730468749994], + [-57.64946289062499, 3.517382812499989], + [-57.720361328124994, 3.58828125], + [-57.832666015624994, 3.675976562499997], + [-57.86655273437499, 3.787255859374994], + [-57.90771484375, 3.856689453125], + [-58.0322265625, 4.001953125], + [-58.054296875, 4.101660156249991], + [-58.05449218749999, 4.171923828124989], + [-58.0107421875, 4.236474609374994], + [-57.94975585937499, 4.349951171874991], + [-57.924707031249994, 4.453125], + [-57.90625, 4.506787109374997], + [-57.87470703125, 4.577099609374997], + [-57.84599609374999, 4.668164062499997], + [-57.86787109375, 4.724316406249997], + [-57.90488281249999, 4.779296875], + [-57.91704101562499, 4.820410156249991], + [-57.881103515625, 4.880615234375], + [-57.844921875, 4.923046875], + [-57.804101562499994, 4.929052734374991], + [-57.75200195312499, 4.954492187499994], + [-57.711083984374994, 4.991064453124991], + [-57.648828125, 5.000683593749997], + [-57.57089843749999, 5.004492187499991], + [-57.41215820312499, 5.004589843749997], + [-57.331005859375, 5.020166015624994], + [-57.30576171874999, 5.049560546875], + [-57.3095703125, 5.105859375], + [-57.269287109375, 5.157031249999989], + [-57.22685546874999, 5.178515624999989], + [-57.20981445312499, 5.195410156249991], + [-57.20732421874999, 5.214208984374991], + [-57.21845703125, 5.231542968749991], + [-57.235302734375, 5.242871093749997], + [-57.27963867187499, 5.246777343749997], + [-57.3185546875, 5.335351562499994], + [-57.291894531249994, 5.373974609374997], + [-57.25751953125, 5.445166015624991], + [-57.24790039062499, 5.485253906249994], + [-57.194775390625, 5.5484375], + [-57.18212890625, 5.52890625], + [-57.1408203125, 5.643798828125], + [-57.13603515624999, 5.737207031249994], + [-57.10458984374999, 5.829394531249989], + [-57.056640625, 5.938671875], + [-56.96982421874999, 5.992871093749997], + [-56.466015625, 5.937744140625], + [-56.235595703125, 5.885351562499991], + [-55.93955078124999, 5.795458984374989], + [-55.897607421874994, 5.699316406249991], + [-55.8955078125, 5.795458984374989], + [-55.909912109375, 5.892626953124989], + [-55.82817382812499, 5.961669921875], + [-55.648339843749994, 5.985888671874989], + [-55.379296875, 5.95263671875], + [-55.14829101562499, 5.993457031249989], + [-54.83369140625, 5.988330078124989], + [-54.35615234375, 5.909863281249997], + [-54.142333984375, 5.856347656249994], + [-54.05419921875, 5.807910156249989], + [-54.03740234374999, 5.720507812499989], + [-54.04594726562499, 5.60888671875], + [-54.08046875, 5.502246093749989], + [-54.15595703125, 5.358984375] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Slovakia", + "iso_a2": "SK", + "iso_a3": "SVK", + "iso_n3": "703", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [22.538671875, 49.072705078125], + [22.52412109375001, 49.031396484374994], + [22.483203125000017, 48.983251953125], + [22.432031250000023, 48.933544921875], + [22.389453125000017, 48.873486328125], + [22.332617187500006, 48.745068359375], + [22.295214843750017, 48.685839843749996], + [22.142871093750017, 48.568505859374994], + [22.1318359375, 48.405322265624996], + [22.111328125, 48.393359375], + [21.766992187500023, 48.3380859375], + [21.721484375000017, 48.346582031249994], + [21.674609375000017, 48.378369140625], + [21.64863281250001, 48.40146484375], + [21.63251953125001, 48.418505859374996], + [21.602636718750006, 48.463671875], + [21.56318359375001, 48.495703125], + [21.504687500000017, 48.521875], + [21.45136718750001, 48.55224609375], + [21.382421875, 48.553466796875], + [21.196386718750006, 48.510595703125], + [21.067285156250023, 48.505908203124996], + [20.98115234375001, 48.519677734374994], + [20.866601562500023, 48.545654296875], + [20.643164062500006, 48.549707031249994], + [20.490039062500017, 48.526904296874996], + [20.475, 48.4951171875], + [20.333789062500017, 48.295556640624994], + [20.12861328125001, 48.222021484375], + [19.95039062500001, 48.146630859374994], + [19.89863281250001, 48.13134765625], + [19.81005859375, 48.155029296875], + [19.70917968750001, 48.1998046875], + [19.625390625000023, 48.223095703125], + [19.564257812500017, 48.212841796875], + [19.497460937500023, 48.162109375], + [19.46699218750001, 48.110693359375], + [19.26513671875, 48.073046875], + [18.914160156250006, 48.050830078124996], + [18.791894531250023, 48.000292968749996], + [18.750097656250006, 47.939453125], + [18.748339843750017, 47.89267578125], + [18.77802734375001, 47.852880859375], + [18.740625, 47.806494140625], + [18.72421875, 47.787158203124996], + [18.47626953125001, 47.777001953124994], + [18.145605468750006, 47.763427734375], + [17.94794921875001, 47.766894531249996], + [17.76191406250001, 47.770166015624994], + [17.63525390625, 47.809912109375], + [17.48066406250001, 47.887597656249994], + [17.317285156250023, 47.99091796875], + [17.301562500000017, 47.993359375], + [17.277246093750023, 48.004345703125], + [17.174609375000017, 48.012060546875], + [17.147363281250023, 48.00595703125], + [17.0859375, 48.03955078125], + [17.06787109375, 48.083251953125], + [16.97265625, 48.198095703125], + [16.86542968750001, 48.3869140625], + [16.862695312500023, 48.44140625], + [16.90449218750001, 48.503515625], + [16.943359375, 48.550927734374994], + [16.948828125, 48.58857421875], + [16.953125, 48.598828125], + [16.985253906250023, 48.676904296874994], + [17.063281250000017, 48.78076171875], + [17.135644531250023, 48.841064453125], + [17.1884765625, 48.8609375], + [17.296875, 48.842822265624996], + [17.48261718750001, 48.827783203124994], + [17.625390625000023, 48.841845703124996], + [17.75849609375001, 48.888134765625], + [17.830859375000017, 48.928613281249994], + [17.892675781250006, 48.971142578125], + [17.91328125000001, 48.99873046875], + [17.940722656250017, 49.011962890625], + [18.050878906250006, 49.036523437499994], + [18.0859375, 49.06513671875], + [18.100390625000017, 49.1193359375], + [18.109960937500006, 49.17978515625], + [18.132617187500017, 49.224560546875], + [18.160937500000017, 49.257373046874996], + [18.36484375, 49.336230468749996], + [18.383105468750017, 49.363916015624994], + [18.415820312500017, 49.390917968749996], + [18.47607421875, 49.42109375], + [18.534570312500023, 49.464697265625], + [18.596484375000017, 49.491455078125], + [18.676171875000023, 49.4884765625], + [18.74970703125001, 49.493994140625], + [18.807031250000023, 49.509228515625], + [18.83222656250001, 49.510791015624996], + [18.93818359375001, 49.498291015625], + [18.95722656250001, 49.448291015624996], + [18.968359375, 49.396240234375], + [19.1494140625, 49.4], + [19.25019531250001, 49.51142578125], + [19.30234375, 49.524853515625], + [19.38623046875, 49.563623046874994], + [19.44160156250001, 49.597705078124996], + [19.47968750000001, 49.5763671875], + [19.534765625, 49.504785156249994], + [19.593066406250017, 49.447119140625], + [19.62666015625001, 49.424365234374996], + [19.630273437500023, 49.406640625], + [19.664160156250006, 49.396044921874996], + [19.730078125, 49.389599609375], + [19.77392578125, 49.37216796875], + [19.787011718750023, 49.3185546875], + [19.787988281250023, 49.269970703125], + [19.767382812500017, 49.235205078125], + [19.756640625000017, 49.204394531249996], + [19.80224609375, 49.192333984375], + [19.868945312500017, 49.204003906249994], + [19.916113281250006, 49.22138671875], + [20.0576171875, 49.181298828124994], + [20.10761718750001, 49.270751953125], + [20.163671875, 49.31640625], + [20.23652343750001, 49.337646484375], + [20.302539062500017, 49.365527343749996], + [20.36298828125001, 49.38525390625], + [20.404687500000023, 49.384082031249996], + [20.422656250000017, 49.392333984375], + [20.474511718750023, 49.390185546874996], + [20.534570312500023, 49.381201171875], + [20.616113281250023, 49.39169921875], + [20.72900390625, 49.369921875], + [20.79951171875001, 49.328662109374996], + [20.868457031250017, 49.314697265625], + [20.947265625, 49.31708984375], + [21.00117187500001, 49.33984375], + [21.079394531250017, 49.418261718749996], + [21.136132812500023, 49.417041015624996], + [21.225, 49.429443359375], + [21.350488281250023, 49.428759765624996], + [21.6396484375, 49.411962890625], + [21.71210937500001, 49.38193359375], + [21.89013671875, 49.34345703125], + [21.967675781250023, 49.299072265625], + [22.00214843750001, 49.24609375], + [22.020117187500006, 49.209521484374996], + [22.202539062500023, 49.153222656249994], + [22.473046875000023, 49.081298828125], + [22.538671875, 49.072705078125] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Slovenia", + "iso_a2": "SI", + "iso_a3": "SVN", + "iso_n3": "705", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [16.516210937500006, 46.499902343749994], + [16.427636718750023, 46.5244140625], + [16.321191406250023, 46.534619140625], + [16.301171875000023, 46.521386718749994], + [16.258398437500006, 46.50791015625], + [16.236718750000023, 46.483837890625], + [16.253320312500023, 46.389111328125], + [16.227441406250023, 46.372851562499996], + [16.1064453125, 46.382226562499994], + [16.066503906250006, 46.371337890625], + [16.00068359375001, 46.30537109375], + [15.933300781250011, 46.277636718749996], + [15.847558593750023, 46.257861328124996], + [15.784277343750006, 46.233984375], + [15.704199218750006, 46.213232421875], + [15.635937500000011, 46.200732421874996], + [15.608984375, 46.171923828124996], + [15.592578125000017, 46.139990234375], + [15.596875, 46.109228515625], + [15.666210937500011, 46.048486328124994], + [15.675585937500017, 45.983691406249996], + [15.668066406250006, 45.904443359374994], + [15.652148437500017, 45.862158203125], + [15.624804687500017, 45.834033203124996], + [15.4541015625, 45.797607421875], + [15.277050781250011, 45.7326171875], + [15.27294921875, 45.717724609375], + [15.353710937500011, 45.659912109375], + [15.35693359375, 45.6455078125], + [15.290136718750006, 45.612646484375], + [15.283593750000023, 45.5796875], + [15.291210937500011, 45.541552734374996], + [15.32666015625, 45.502294921875], + [15.339453125, 45.467041015625], + [15.242089843750023, 45.44140625], + [15.110449218750006, 45.45078125], + [14.95458984375, 45.499902343749994], + [14.9, 45.49267578125], + [14.847070312500023, 45.467333984374996], + [14.793066406250006, 45.47822265625], + [14.733593750000011, 45.50849609375], + [14.649511718750006, 45.571484375], + [14.608593750000011, 45.610107421875], + [14.591796875, 45.651269531249994], + [14.56884765625, 45.6572265625], + [14.533984375000017, 45.645263671875], + [14.505175781250017, 45.59521484375], + [14.42734375, 45.505761718749994], + [14.369921875000017, 45.4814453125], + [14.283007812500017, 45.486621093749996], + [14.161230468750006, 45.48515625], + [14.085546875, 45.477832031249996], + [13.992773437500006, 45.509423828124994], + [13.9703125, 45.503369140625], + [13.970117187500023, 45.4826171875], + [13.935644531250006, 45.4498046875], + [13.878710937500017, 45.428369140624994], + [13.615234375, 45.4767578125], + [13.577929687500017, 45.516894531249996], + [13.637304687500006, 45.5359375], + [13.719824218750006, 45.58759765625], + [13.775976562500006, 45.581982421875], + [13.8447265625, 45.59287109375], + [13.874707031250011, 45.61484375], + [13.831152343750006, 45.680419921875], + [13.7216796875, 45.761279296874996], + [13.663476562500023, 45.7919921875], + [13.583398437500023, 45.812353515625], + [13.569628906250017, 45.834130859374994], + [13.613964843750011, 45.961669921875], + [13.6005859375, 45.979785156249996], + [13.509179687500023, 45.973779296874994], + [13.487695312500023, 45.987109375], + [13.480273437500017, 46.009228515625], + [13.486425781250006, 46.03955078125], + [13.548046875000011, 46.089111328125], + [13.616601562500023, 46.133105468749996], + [13.634960937500011, 46.157763671874996], + [13.632519531250011, 46.177050781249996], + [13.544726562500017, 46.196582031249996], + [13.491796875, 46.216601562499996], + [13.449804687500006, 46.223535156249994], + [13.420996093750006, 46.212304687499994], + [13.399609375000011, 46.224951171875], + [13.378222656250017, 46.261621093749994], + [13.399511718750006, 46.317529296874994], + [13.478515625, 46.369189453124996], + [13.563281250000017, 46.415087890624996], + [13.637109375000023, 46.448535156249996], + [13.6796875, 46.462890625], + [13.7, 46.520263671875], + [13.743945312500017, 46.514306640624994], + [13.831347656250017, 46.51123046875], + [13.928808593750006, 46.498193359374994], + [14.019628906250006, 46.482177734375], + [14.099511718750023, 46.4619140625], + [14.267285156250011, 46.440722656249996], + [14.419921875, 46.4279296875], + [14.465917968750006, 46.41611328125], + [14.503515625, 46.417041015624996], + [14.5498046875, 46.399707031249996], + [14.5771484375, 46.412939453125], + [14.596972656250017, 46.436083984374996], + [14.68017578125, 46.463427734374996], + [14.756738281250023, 46.49912109375], + [14.810546875, 46.544580078124994], + [14.840625, 46.58046875], + [14.893261718750011, 46.605908203125], + [14.949414062500011, 46.613232421875], + [15.000683593750011, 46.6259765625], + [15.216992187500011, 46.64296875], + [15.439257812500017, 46.629638671875], + [15.545312500000023, 46.654638671875], + [15.632617187500017, 46.6984375], + [15.76025390625, 46.710742187499996], + [15.766894531250017, 46.711279296875], + [15.957617187500006, 46.677636718749994], + [15.972265625, 46.697216796875], + [15.98046875, 46.705859375], + [15.976855468750017, 46.8013671875], + [16.037207031250006, 46.84482421875], + [16.093066406250017, 46.86328125], + [16.283593750000023, 46.857275390625], + [16.308496093750023, 46.827978515625], + [16.318457031250006, 46.782519531249996], + [16.33544921875, 46.721630859375], + [16.3671875, 46.70478515625], + [16.384570312500017, 46.680810546874994], + [16.38125, 46.638671875], + [16.41845703125, 46.607226562499996], + [16.505664062500017, 46.5220703125], + [16.516210937500006, 46.499902343749994] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Sweden", + "iso_a2": "SE", + "iso_a3": "SWE", + "iso_n3": "752", + "continent": "Europe" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [16.52851562500001, 56.29052734375], + [16.477148437500034, 56.240185546874955], + [16.431640625, 56.24375], + [16.401269531250023, 56.31088867187498], + [16.394140624999977, 56.483642578125], + [16.41230468750004, 56.568994140624994], + [16.630371093750057, 56.876855468749994], + [16.72773437500001, 56.902001953124966], + [16.864648437499994, 57.090673828125034], + [16.901562500000068, 57.17460937499999], + [16.9609375, 57.25019531250004], + [16.995996093750023, 57.31777343750002], + [17.02539062499997, 57.345068359375006], + [17.089257812500023, 57.33227539062506], + [17.11767578125003, 57.31982421875], + [17.050390625, 57.28046874999998], + [17.058203125, 57.22924804687503], + [17.053515625000017, 57.20800781250006], + [16.88369140625008, 56.985205078125034], + [16.83828125000005, 56.840527343749955], + [16.77802734375004, 56.80522460937496], + [16.52851562500001, 56.29052734375] + ] + ], + [ + [ + [19.076464843750045, 57.8359375], + [18.99375, 57.812109375], + [18.945117187500017, 57.74160156250005], + [18.878125, 57.72968750000001], + [18.813867187500023, 57.70620117187502], + [18.79091796875005, 57.483105468749955], + [18.907910156250068, 57.39833984375002], + [18.84365234375005, 57.386474609375], + [18.78486328125004, 57.36108398437497], + [18.74287109375001, 57.32353515624996], + [18.699902343750068, 57.24272460937502], + [18.53847656250005, 57.19692382812502], + [18.477343750000017, 57.16303710937504], + [18.38720703125003, 57.08764648437503], + [18.34023437500005, 56.978222656249955], + [18.248925781250023, 56.93154296875002], + [18.146386718749994, 56.920507812500006], + [18.20654296875, 57.010156249999966], + [18.285351562500068, 57.08320312500001], + [18.209570312500006, 57.13330078125003], + [18.163964843750023, 57.21171875000002], + [18.105078125000034, 57.271875], + [18.151953124999977, 57.33906250000001], + [18.12890625, 57.44916992187498], + [18.136523437500045, 57.55664062500003], + [18.204882812500017, 57.61088867187496], + [18.283203125, 57.655126953125006], + [18.40517578125005, 57.75683593750003], + [18.53740234374999, 57.83056640625006], + [18.721875, 57.863720703124955], + [18.80517578125003, 57.83315429687505], + [18.841113281250045, 57.90019531250002], + [18.90058593750001, 57.91547851562504], + [18.956445312500023, 57.9], + [19.076464843750045, 57.8359375] + ] + ], + [ + [ + [19.156347656250063, 57.92260742187497], + [19.13837890625004, 57.860253906249966], + [19.086523437500034, 57.86499023437506], + [19.03925781250001, 57.91103515625002], + [19.134863281250034, 57.98134765625002], + [19.28115234375008, 57.97753906249997], + [19.331445312500023, 57.962890625], + [19.156347656250063, 57.92260742187497] + ] + ], + [ + [ + [18.41621093750001, 59.029101562500045], + [18.371875, 59.01958007812499], + [18.349902343750074, 59.022607421874966], + [18.377246093750045, 59.06904296875001], + [18.397558593750006, 59.08911132812503], + [18.464941406250063, 59.10786132812504], + [18.48554687500001, 59.10458984374998], + [18.41621093750001, 59.029101562500045] + ] + ], + [ + [ + [18.59541015625001, 59.470361328124994], + [18.57031250000003, 59.437255859375], + [18.545117187500068, 59.47783203124999], + [18.555175781250057, 59.48579101562501], + [18.572363281250006, 59.52583007812501], + [18.620898437500045, 59.547802734374955], + [18.69843750000004, 59.53461914062501], + [18.69794921875001, 59.52460937500001], + [18.623828125000017, 59.4921875], + [18.59541015625001, 59.470361328124994] + ] + ], + [ + [ + [22.854101562500034, 68.36733398437502], + [22.975390625000045, 68.31645507812505], + [23.09785156250004, 68.25756835937506], + [23.18251953125008, 68.13662109375002], + [23.318554687500068, 68.13032226562498], + [23.35546875000003, 68.08867187500002], + [23.474218749999977, 68.01733398437506], + [23.63886718750004, 67.95439453125002], + [23.632910156249977, 67.93320312500003], + [23.501855468750023, 67.87519531249995], + [23.48779296875, 67.79658203125001], + [23.50019531250004, 67.69619140625], + [23.541308593750074, 67.61430664062502], + [23.53701171875008, 67.59038085937502], + [23.504492187500034, 67.56215820312505], + [23.465429687500063, 67.51787109374999], + [23.451464843750045, 67.47919921875001], + [23.454882812500045, 67.46025390625007], + [23.468066406250074, 67.449951171875], + [23.537109375, 67.44916992187501], + [23.660839843749983, 67.44003906250003], + [23.733593750000068, 67.42290039062499], + [23.774902343750057, 67.32861328124997], + [23.76093750000004, 67.31049804687501], + [23.656640625000023, 67.26782226562503], + [23.626074218750006, 67.23393554687505], + [23.62304687500003, 67.18413085937502], + [23.64150390625005, 67.12939453124997], + [23.677343750000063, 67.06811523437503], + [23.75898437500001, 67.002587890625], + [23.86933593750001, 66.93403320312498], + [23.941796875000023, 66.87783203124997], + [23.97607421875, 66.838232421875], + [23.988574218750045, 66.81054687500003], + [23.93886718750005, 66.77573242187506], + [23.894140625, 66.70688476562506], + [23.885839843750006, 66.62802734374998], + [23.865527343750045, 66.57661132812498], + [23.768359375000045, 66.50585937500006], + [23.70117187500003, 66.48076171874999], + [23.68203125000005, 66.44340820312502], + [23.673828125000057, 66.38071289062503], + [23.693554687499983, 66.304296875], + [23.700292968750034, 66.25263671874998], + [23.720996093750074, 66.21542968750003], + [23.75146484374997, 66.19116210937497], + [23.907324218750034, 66.14824218750002], + [23.994628906250057, 66.06035156250005], + [24.04902343750004, 65.98984375], + [24.15546875000004, 65.80527343750006], + [23.89052734375008, 65.78222656249997], + [23.69140625, 65.828515625], + [23.592089843750017, 65.80532226562497], + [23.41835937500005, 65.80434570312505], + [23.221093750000023, 65.78613281249997], + [23.154589843750074, 65.74990234374997], + [23.102343750000074, 65.73535156250003], + [22.919335937499994, 65.78647460937503], + [22.74658203124997, 65.870947265625], + [22.62031250000001, 65.80654296875005], + [22.538574218750057, 65.79433593750005], + [22.465136718750017, 65.85263671875], + [22.400976562500006, 65.86210937499999], + [22.366308593750063, 65.84267578125002], + [22.3359375, 65.79116210937502], + [22.28759765625, 65.75063476562502], + [22.275, 65.725], + [22.2666015625, 65.62153320312501], + [22.254003906250006, 65.59755859375002], + [22.086230468750017, 65.61093749999998], + [22.096289062500006, 65.58378906250005], + [22.1328125, 65.57011718750002], + [22.147558593750063, 65.55288085937497], + [22.086718750000017, 65.53022460937498], + [21.92011718750001, 65.53237304687497], + [21.903125, 65.50834960937505], + [21.95, 65.47036132812502], + [21.91347656250008, 65.437109375], + [21.87958984375001, 65.42402343750001], + [21.6806640625, 65.40336914062507], + [21.565527343750063, 65.40810546874997], + [21.532617187500023, 65.386572265625], + [21.52343750000003, 65.35859375000001], + [21.545214843750017, 65.33115234375], + [21.595996093750045, 65.31655273437497], + [21.61269531250008, 65.29912109375005], + [21.609179687500074, 65.261376953125], + [21.56689453125, 65.25454101562502], + [21.446875, 65.32084960937505], + [21.410351562500068, 65.31743164062505], + [21.437792968750074, 65.28295898437506], + [21.50634765625, 65.24536132812503], + [21.545996093750006, 65.20698242187501], + [21.580664062500034, 65.16079101562502], + [21.57392578125001, 65.12578124999999], + [21.424902343750006, 65.01269531250006], + [21.29375, 64.94125976562498], + [21.195898437500006, 64.87690429687501], + [21.138183593750057, 64.80869140625006], + [21.20498046875008, 64.77431640625], + [21.27929687500003, 64.72470703125], + [21.33154296875, 64.62934570312501], + [21.39384765624999, 64.54433593750002], + [21.519628906250034, 64.46308593749998], + [21.49433593750004, 64.41611328125], + [21.46503906250001, 64.37958984375004], + [21.255761718750023, 64.299169921875], + [21.01845703125008, 64.177978515625], + [20.76269531250003, 63.86782226562505], + [20.677636718750023, 63.826269531250006], + [20.453710937500034, 63.773730468750074], + [20.371386718750074, 63.722900390625], + [20.204687500000034, 63.662451171875034], + [19.913671875000063, 63.61054687500004], + [19.78164062500008, 63.538183593750034], + [19.722070312500023, 63.46333007812498], + [19.65576171875003, 63.45800781250006], + [19.59003906250004, 63.487255859374955], + [19.502343750000023, 63.50903320312506], + [19.49091796875001, 63.46020507812506], + [19.494628906250057, 63.42436523437502], + [19.354296875000074, 63.47749023437501], + [19.2880859375, 63.428759765625045], + [19.236328125, 63.34736328124998], + [19.03437, 63.23774414062501], + [18.816699218750045, 63.25747070312505], + [18.792285156250045, 63.238134765625006], + [18.850195312500034, 63.22412109375], + [18.858984375000063, 63.20659179687499], + [18.819433593749977, 63.19726562500003], + [18.759570312500045, 63.19824218749997], + [18.667187500000068, 63.17656249999999], + [18.60644531250003, 63.17827148437499], + [18.57763671875003, 63.12641601562498], + [18.53066406250005, 63.063525390625045], + [18.407714843750057, 63.0375], + [18.34423828125, 63.032128906249966], + [18.31289062500008, 62.996386718750045], + [18.502050781249977, 62.988867187500034], + [18.486914062500006, 62.95859375], + [18.48261718750004, 62.928320312500034], + [18.46308593750004, 62.895849609375006], + [18.24804687500003, 62.84907226562498], + [18.214941406250034, 62.81220703125001], + [18.170019531250034, 62.789355468750074], + [18.07441406250001, 62.790673828124994], + [18.077929687500017, 62.811962890624955], + [18.093554687500074, 62.83603515624998], + [17.951074218749994, 62.833886718749994], + [17.906640625000023, 62.88676757812502], + [17.87958984375001, 62.873193359374994], + [17.895605468749977, 62.83051757812501], + [17.932910156250045, 62.78613281250003], + [17.974414062500045, 62.721044921875006], + [17.940722656250017, 62.67988281249998], + [17.903027343750068, 62.65947265624999], + [17.930468750000074, 62.64062], + [18.00654296875004, 62.626269531250074], + [18.037304687500068, 62.60053710937498], + [17.947070312500074, 62.578466796875006], + [17.834472656250057, 62.50273437500002], + [17.7177734375, 62.500878906249994], + [17.646386718750023, 62.45087890625004], + [17.570605468750045, 62.45102539062498], + [17.50898437500001, 62.482519531250006], + [17.410253906250063, 62.508398437500034], + [17.378417968750057, 62.462792968749966], + [17.373339843750074, 62.42651367187506], + [17.429003906250045, 62.334716796875], + [17.535253906250034, 62.263671875], + [17.633691406249994, 62.23300781250006], + [17.56289062500005, 62.21230468750002], + [17.51015625000005, 62.166308593750045], + [17.446582031250074, 62.02265625000001], + [17.41201171875005, 61.966113281250045], + [17.374511718750057, 61.866308593750034], + [17.39824218749999, 61.782080078125034], + [17.417285156250074, 61.74067382812504], + [17.465429687500006, 61.68447265625005], + [17.334570312500006, 61.69169921874999], + [17.196386718750006, 61.72456054687504], + [17.215625, 61.656347656250006], + [17.13076171875005, 61.57573242187499], + [17.146582031250063, 61.504638671875], + [17.16425781250004, 61.458300781250045], + [17.137988281250017, 61.381689453125006], + [17.177929687500068, 61.35761718749998], + [17.199609375000023, 61.31196289062501], + [17.163867187500045, 61.27827148437498], + [17.179785156250006, 61.24926757812503], + [17.18574218750004, 61.146533203125045], + [17.212890625, 60.98583984375], + [17.20292968749999, 60.95185546875001], + [17.278906250000034, 60.812158203124966], + [17.261230468750057, 60.76318359375003], + [17.25097656250003, 60.70078125], + [17.35986328125, 60.640820312499955], + [17.45703125, 60.64179687499998], + [17.555468750000045, 60.642724609374994], + [17.593066406250074, 60.62768554687503], + [17.630761718750023, 60.58525390625002], + [17.6611328125, 60.53515625000003], + [17.7421875, 60.53930664062497], + [17.871582031250057, 60.58007812500003], + [17.955761718750068, 60.589794921874955], + [18.011328125000034, 60.51142578124998], + [18.1625, 60.40791015625004], + [18.25048828125, 60.36152343749998], + [18.4, 60.33710937499998], + [18.557519531250023, 60.25356445312502], + [18.535449218750045, 60.15288085937502], + [18.601171875000034, 60.119238281250006], + [18.78701171875005, 60.079492187499994], + [18.85273437500001, 60.02587890625], + [18.884277343750057, 59.98017578125001], + [18.933203124999977, 59.94228515625002], + [18.99042968750001, 59.827783203124966], + [18.970507812500045, 59.757226562499994], + [18.895605468750063, 59.73295898437502], + [18.71875, 59.657373046874966], + [18.639941406250017, 59.600927734375034], + [18.578125, 59.56577148437506], + [18.402441406250034, 59.490380859374966], + [18.338085937500068, 59.476855468750074], + [18.276464843750034, 59.437646484374966], + [18.216894531250063, 59.420507812500034], + [18.163574218750057, 59.43037109375001], + [17.964257812500023, 59.359375], + [17.979785156250074, 59.32905273437498], + [18.132617187500045, 59.31621093750002], + [18.210546875000034, 59.33144531250002], + [18.27050781249997, 59.36713867187501], + [18.336035156250006, 59.37534179687498], + [18.395800781250017, 59.36860351562504], + [18.45917968750004, 59.396728515625], + [18.508886718750063, 59.40795898437497], + [18.56025390625004, 59.39448242187498], + [18.61757812500008, 59.327050781249994], + [18.498632812500006, 59.291943359374955], + [18.41425781250004, 59.29033203124999], + [18.373046875, 59.17973632812502], + [18.321972656250068, 59.13222656250002], + [18.285351562500068, 59.10937], + [18.09814453125003, 59.06230468749999], + [17.974609375, 59.00263671874998], + [17.829003906249994, 58.95458984374997], + [17.765429687500017, 58.96503906249998], + [17.66962890625004, 58.91621093749998], + [17.45673828125001, 58.8583984375], + [17.34765625, 58.78051757812503], + [17.102832031250045, 58.710839843749966], + [16.978125, 58.65415039062506], + [16.63935546875004, 58.651171875000074], + [16.315820312500023, 58.66362304687502], + [16.214257812500023, 58.636669921874955], + [16.31806640625004, 58.62832031250002], + [16.39082031250001, 58.601855468750045], + [16.47802734375003, 58.612890625], + [16.68300781250005, 58.599658203125045], + [16.788476562500023, 58.585253906250045], + [16.92382812499997, 58.492578125], + [16.824316406250063, 58.45961914062502], + [16.651953125, 58.43432617187503], + [16.716601562500045, 58.302880859374994], + [16.76992187500008, 58.214257812499966], + [16.70009765625005, 58.160791015624994], + [16.694921875000063, 57.91752929687499], + [16.596972656250017, 57.912890625000045], + [16.555371093750068, 57.81225585937506], + [16.586230468750045, 57.76093749999998], + [16.583789062500074, 57.64174804687505], + [16.604199218750068, 57.56831054687501], + [16.65224609375008, 57.50068359374998], + [16.63085937499997, 57.43017578125], + [16.47597656250005, 57.26513671875006], + [16.479492187500057, 57.18769531249998], + [16.50732421875003, 57.141699218750034], + [16.527929687500063, 57.06816406249999], + [16.45751953125003, 56.92680664062496], + [16.4078125, 56.80869140625006], + [16.348730468750063, 56.70927734374996], + [16.21650390625004, 56.589990234374994], + [16.150683593750045, 56.500830078125034], + [15.996679687500006, 56.22260742187501], + [15.92031250000008, 56.167382812499966], + [15.826660156250028, 56.12495117187501], + [15.722265625000063, 56.16420898437502], + [15.6265625, 56.185595703125045], + [15.509667968749994, 56.18300781250005], + [15.3265625, 56.150830078124955], + [15.051171875000023, 56.17221679687506], + [14.782031250000017, 56.16191406250002], + [14.713964843750006, 56.134130859375034], + [14.754785156250051, 56.03315429687498], + [14.655566406249989, 56.01992187500002], + [14.558593750000057, 56.04863281250002], + [14.473242187500063, 56.014355468749955], + [14.401953125000034, 55.97675781250004], + [14.261914062500011, 55.88754882812498], + [14.21503906250004, 55.83261718749998], + [14.202929687500074, 55.72915039062502], + [14.276464843750034, 55.636376953124966], + [14.341699218749994, 55.52773437500002], + [14.17373046875008, 55.396630859374966], + [14.079980468750051, 55.392187500000034], + [13.806347656250011, 55.428564453125006], + [13.321386718750063, 55.34638671875004], + [12.885839843750063, 55.41137695312506], + [12.940625, 55.48159179687505], + [12.938769531250017, 55.533203125], + [12.963378906250057, 55.61259765625002], + [12.97802734375, 55.69379882812504], + [12.973925781250074, 55.748144531250006], + [12.941992187500034, 55.806054687499994], + [12.834570312500006, 55.88183593750006], + [12.592578124999989, 56.13759765625002], + [12.520996093749972, 56.24555664062498], + [12.471191406250057, 56.29052734375], + [12.507031250000068, 56.29296874999997], + [12.706347656250074, 56.235009765624966], + [12.752832031250051, 56.24213867187501], + [12.801660156250051, 56.263916015625], + [12.7421875, 56.346875], + [12.691113281250011, 56.38442382812505], + [12.65644531250004, 56.44057617187502], + [12.773144531250011, 56.45576171875001], + [12.857421875000028, 56.45239257812503], + [12.91953125, 56.51557617187501], + [12.883691406250051, 56.61772460937496], + [12.793164062500011, 56.64916992187497], + [12.717578125000074, 56.662841796875], + [12.572656250000023, 56.82329101562502], + [12.421484375000034, 56.906396484374966], + [12.15185546875, 57.226953125], + [12.053222656249972, 57.44697265624998], + [11.961523437500034, 57.42607421874999], + [11.916992187500028, 57.521923828124955], + [11.885058593750017, 57.612695312499994], + [11.878710937500045, 57.679443359375], + [11.734960937500063, 57.717675781249966], + [11.729101562500034, 57.76445312499999], + [11.703222656250006, 57.97319335937496], + [11.54902343750004, 58.001220703125], + [11.449316406250063, 58.118359374999955], + [11.43154296875008, 58.339990234374994], + [11.32998046875008, 58.380322265624955], + [11.24824218750004, 58.369140625], + [11.252050781250006, 58.424072265625], + [11.271582031250006, 58.47563476562502], + [11.22382812500004, 58.67993164062497], + [11.20791015625008, 58.866406249999955], + [11.169140624999983, 58.92270507812506], + [11.14716796875004, 58.98862304687498], + [11.16689453125008, 59.04555664062502], + [11.19580078125, 59.07827148437505], + [11.295312500000023, 59.08686523437501], + [11.388281250000063, 59.036523437499966], + [11.470703125000057, 58.909521484375034], + [11.543554687500063, 58.893017578124955], + [11.64277343750004, 58.92607421875002], + [11.712207031250045, 59.01865234374998], + [11.751855468750051, 59.157568359375034], + [11.798144531250074, 59.28989257812498], + [11.743359375000011, 59.431445312500045], + [11.684863281250074, 59.55576171874998], + [11.680761718750034, 59.59228515625003], + [11.834277343750045, 59.697167968749994], + [11.88125, 59.78247070312497], + [11.93212890625, 59.863671875], + [11.98828125, 59.89130859375004], + [12.071875, 59.897607421874994], + [12.169238281250074, 59.91289062499999], + [12.291992187500057, 59.967236328124955], + [12.402050781249983, 60.04003906250006], + [12.486132812500074, 60.10678710937506], + [12.514648437500028, 60.23886718750006], + [12.515820312499983, 60.305224609375074], + [12.552832031250063, 60.35449218749997], + [12.588671874999989, 60.450732421875045], + [12.553808593750006, 60.54565429687503], + [12.445312500000028, 60.689648437499955], + [12.31464843750004, 60.89213867187499], + [12.29414062500004, 61.00268554687506], + [12.353710937500011, 61.02319335937497], + [12.467578125000017, 61.04150390624997], + [12.683007812500023, 61.04682617187498], + [12.706054687500028, 61.059863281250074], + [12.727832031250017, 61.10825195312498], + [12.776367187500057, 61.17397460937505], + [12.828222656250034, 61.22182617187502], + [12.86367187500008, 61.29028320312503], + [12.88076171875008, 61.35229492187506], + [12.75751953125004, 61.445703124999966], + [12.59609375, 61.54130859375002], + [12.486816406250028, 61.57299804687497], + [12.292089843750063, 61.65346679687502], + [12.155371093750006, 61.720751953125045], + [12.233691406250074, 61.97685546875002], + [12.291992187500057, 62.16743164062501], + [12.301367187500006, 62.21376953125005], + [12.303515625000074, 62.28559570312501], + [12.114550781250045, 62.59189453124998], + [12.121875, 62.660009765625006], + [12.13984375000004, 62.721337890624966], + [12.11962890625, 62.82592773437497], + [12.108593750000068, 62.91948242187502], + [12.141015625000023, 62.947851562500034], + [12.218164062500023, 63.00063476562502], + [12.144628906250034, 63.08251953125003], + [12.138671874999972, 63.089160156250045], + [11.999902343750051, 63.29169921875001], + [12.212109375000011, 63.49223632812499], + [12.175195312500051, 63.595947265625], + [12.30195312500004, 63.671191406250045], + [12.532714843750057, 63.84355468749999], + [12.6625, 63.94047851562502], + [12.690039062500034, 63.957421875], + [12.792773437500017, 64], + [12.987597656250017, 64.05048828124995], + [13.203515625000023, 64.07509765625], + [13.299609375000074, 64.07480468750003], + [13.670703125000074, 64.04062], + [13.960546875000063, 64.01401367187498], + [14.002734375000045, 64.04072265625001], + [14.063281250000045, 64.09550781250007], + [14.141210937500006, 64.17353515624998], + [14.148046874999977, 64.26030273437507], + [14.119921875000017, 64.38774414062502], + [14.077636718750028, 64.464013671875], + [13.873535156250028, 64.51357421874997], + [13.650292968750023, 64.58154296874997], + [13.924804687499972, 64.79677734375002], + [14.115136718750023, 64.946142578125], + [14.352441406250051, 65.17084960937504], + [14.42626953125, 65.26435546874998], + [14.47968750000004, 65.30146484374998], + [14.549511718750068, 65.64638671875002], + [14.595800781249977, 65.74287109374995], + [14.634570312500074, 65.79326171874999], + [14.635156250000023, 65.84501953125007], + [14.609960937500034, 65.932275390625], + [14.543261718750045, 66.12934570312498], + [14.91796875, 66.1537109375], + [15.0400390625, 66.16752929687505], + [15.153320312500057, 66.19106445312505], + [15.37490234375008, 66.25205078125003], + [15.483789062500051, 66.30595703124999], + [15.422949218750006, 66.48984374999998], + [15.557031250000051, 66.55209960937506], + [15.884179687500023, 66.76884765625007], + [16.23769531250008, 66.97641601562498], + [16.40351562500004, 67.05498046875002], + [16.420703125000074, 67.093359375], + [16.434277343749983, 67.15507812500007], + [16.36064453124999, 67.25200195312499], + [16.281542968750045, 67.31206054687507], + [16.12744140625, 67.42583007812507], + [16.193554687500068, 67.50517578125007], + [16.30712890625003, 67.52060546875], + [16.457128906250034, 67.55175781250006], + [16.57412109375005, 67.61958007812501], + [16.585546874999977, 67.62832031250002], + [16.783593750000023, 67.89501953125], + [17.170507812500063, 68.03012695312498], + [17.324609375000023, 68.10380859374999], + [17.564746093750074, 68.04843749999998], + [17.91669921875001, 67.96489257812502], + [18.07324218750003, 68.08784179687501], + [18.125, 68.133447265625], + [18.17666015625005, 68.20063476562498], + [18.15595703125001, 68.31684570312495], + [18.147070312500063, 68.46777343749997], + [18.16259765625003, 68.52841796874998], + [18.303027343750045, 68.55541992187497], + [18.378613281250068, 68.56240234374997], + [18.769824218750017, 68.50004882812507], + [18.868261718749977, 68.50112304687502], + [19.05263671875008, 68.49272460937499], + [19.25898437500001, 68.46533203125], + [19.691210937500045, 68.39243164062498], + [19.87001953125005, 68.36225585937498], + [19.969824218750063, 68.35639648437501], + [20.055957031250017, 68.39038085937503], + [20.240039062500045, 68.4775390625], + [19.968847656250034, 68.54204101562502], + [20.1474609375, 68.60732421875], + [20.240039062500045, 68.67314453125007], + [20.319433593750034, 68.75405273437502], + [20.348046875000023, 68.84873046875003], + [20.33710937500001, 68.89965820312503], + [20.282324218750034, 68.934326171875], + [20.116699218750057, 69.02089843750005], + [20.491992187500017, 69.03330078124998], + [20.622167968750006, 69.036865234375], + [20.895117187500006, 68.97983398437503], + [20.907031250000017, 68.96748046874998], + [20.908984375000074, 68.93774414062497], + [20.918554687500063, 68.90693359375001], + [21.183398437500017, 68.82880859374998], + [21.25976562500003, 68.787451171875], + [21.42236328125003, 68.72460937499997], + [21.465429687500006, 68.690673828125], + [21.616015625000045, 68.6509765625], + [21.724023437500023, 68.60854492187497], + [21.850195312500063, 68.57412109374997], + [21.99746093750005, 68.52060546874998], + [22.195117187500074, 68.47797851562501], + [22.362109375000074, 68.46406250000001], + [22.78242187500001, 68.39101562499997], + [22.854101562500034, 68.36733398437502] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Swaziland", + "iso_a2": "SZ", + "iso_a3": "SWZ", + "iso_n3": "748", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [31.9482421875, -25.957617187500006], + [31.96845703125001, -25.972265625], + [32.060546875, -26.018359375], + [32.06884765625, -26.11015625], + [32.05996093750002, -26.21503906250001], + [32.04140625000002, -26.28125], + [32.04833984375, -26.34716796875], + [32.07792968750002, -26.449804687500006], + [32.10595703125, -26.52001953125], + [32.112890625, -26.839453125], + [32.081640625, -26.824804687500006], + [32.02480468750002, -26.811132812500006], + [31.994726562500006, -26.817480468750006], + [31.967187500000023, -26.96064453125001], + [31.946093750000017, -27.173632812500003], + [31.958398437500023, -27.30585937500001], + [31.742578125000023, -27.30996093750001], + [31.469531250000017, -27.295507812500006], + [31.274023437500006, -27.238378906250006], + [31.063378906250023, -27.1123046875], + [30.938085937500006, -26.915820312500003], + [30.88330078125, -26.79238281250001], + [30.806738281250006, -26.785253906250006], + [30.794335937500023, -26.764257812500006], + [30.7875, -26.613671875], + [30.7890625, -26.45546875], + [30.803320312500006, -26.41347656250001], + [30.945214843750023, -26.21875], + [31.033300781250006, -26.097753906250006], + [31.08808593750001, -25.98066406250001], + [31.207324218750017, -25.843359375], + [31.33515625000001, -25.75556640625001], + [31.382617187500017, -25.74296875], + [31.415136718750006, -25.74658203125], + [31.640429687500017, -25.867285156250006], + [31.871484375000023, -25.98164062500001], + [31.921679687500017, -25.96875], + [31.9482421875, -25.957617187500006] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "Sint Maarten", + "iso_a2": "SX", + "iso_a3": "SXM", + "iso_n3": "534", + "continent": "North America" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-63.123046875, 18.06894531249999], + [-63.011181640625, 18.06894531249999], + [-63.01230468749999, 18.04541015625], + [-63.023046875, 18.019189453124994], + [-63.09042968749999, 18.04140625], + [-63.12470703125, 18.06430664062499], + [-63.123046875, 18.06894531249999] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Seychelles", + "iso_a2": "SC", + "iso_a3": "SYC", + "iso_n3": "690", + "continent": "Seven seas (open ocean)" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [55.54033203125002, -4.693066406250011], + [55.54296875, -4.785546875], + [55.494726562500006, -4.754589843750011], + [55.48125, -4.69482421875], + [55.41679687500002, -4.650292968750009], + [55.383398437500006, -4.609277343750009], + [55.45576171875001, -4.558789062500011], + [55.54033203125002, -4.693066406250011] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Syria", + "iso_a2": "SY", + "iso_a3": "SYR", + "iso_n3": "760", + "continent": "Asia" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [42.358984375, 37.10859375], + [42.35908203125001, 37.095019531249996], + [42.35009765625, 37.060595703124996], + [42.2373046875, 36.9611328125], + [42.083984375, 36.826025390625], + [41.97402343750002, 36.7408203125], + [41.78857421875, 36.59716796875], + [41.65019531250002, 36.56640625], + [41.41679687500002, 36.5146484375], + [41.35419921875001, 36.464404296874996], + [41.295996093750006, 36.383349609374996], + [41.261816406250006, 36.2724609375], + [41.25175781250002, 36.203027343749994], + [41.24560546875, 36.073388671874994], + [41.30019531250002, 35.93896484375], + [41.352636718750006, 35.809960937499994], + [41.359375, 35.724609375], + [41.354101562500006, 35.640429687499996], + [41.303320312500006, 35.550634765625], + [41.24833984375002, 35.427490234375], + [41.21640625, 35.28818359375], + [41.19960937500002, 35.027392578124996], + [41.19921875, 34.805322265624994], + [41.19472656250002, 34.768994140625], + [41.09902343750002, 34.6123046875], + [40.98701171875001, 34.429052734375], + [40.93505859375, 34.386572265625], + [40.689453125, 34.33203125], + [40.421484375, 34.19775390625], + [40.12197265625002, 34.04765625], + [39.85, 33.911376953125], + [39.564453125, 33.768359375], + [39.26835937500002, 33.620019531249994], + [39.056738281250006, 33.514013671875], + [38.773535156250006, 33.372216796874994], + [38.515625, 33.236621093749996], + [38.25429687500002, 33.09921875], + [38.055761718750006, 32.994873046875], + [37.75410156250001, 32.829833984375], + [37.57744140625002, 32.733056640624994], + [37.31757812500001, 32.590771484375], + [37.088964843750006, 32.46552734375], + [36.818359375, 32.317285156249994], + [36.47919921875001, 32.361328125], + [36.3720703125, 32.3869140625], + [36.284277343750006, 32.457470703125], + [36.2197265625, 32.4951171875], + [36.05947265625002, 32.5337890625], + [35.95644531250002, 32.66669921875], + [35.89472656250001, 32.713769531249994], + [35.78730468750001, 32.734912109374996], + [35.80146484375001, 32.78232421875], + [35.85683593750002, 32.862353515624996], + [35.91347656250002, 32.949609375], + [35.88203125000001, 32.998095703124996], + [35.87177734375001, 33.039355468749996], + [35.86806640625002, 33.08857421875], + [35.90664062500002, 33.135693359375], + [35.88847656250002, 33.19248046875], + [35.85878906250002, 33.249560546874996], + [35.837011718750006, 33.278222656249994], + [35.83710937500001, 33.330517578125], + [35.8515625, 33.370458984375], + [35.869140625, 33.43173828125], + [35.91474609375001, 33.465380859374996], + [35.92656250000002, 33.500292968749996], + [35.96757812500002, 33.534570312499994], + [36.02226562500002, 33.5625], + [36.03447265625002, 33.58505859375], + [36.02666015625002, 33.597949218749996], + [35.9716796875, 33.623095703124996], + [35.9423828125, 33.667578125], + [35.96845703125001, 33.732421875], + [35.98613281250002, 33.75263671875], + [36.01884765625002, 33.783935546875], + [36.09218750000002, 33.831591796874996], + [36.14980468750002, 33.839501953124994], + [36.19941406250001, 33.83955078125], + [36.28339843750001, 33.835595703124994], + [36.34853515625002, 33.827050781249994], + [36.36503906250002, 33.83935546875], + [36.36279296875, 33.855126953124994], + [36.2822265625, 33.894189453124994], + [36.27783203125, 33.92529296875], + [36.2978515625, 33.958642578124994], + [36.35488281250002, 34.011328125], + [36.4228515625, 34.049853515624996], + [36.45751953125, 34.0568359375], + [36.53515625, 34.134326171874996], + [36.5849609375, 34.221240234374996], + [36.50439453125, 34.432373046875], + [36.45556640625, 34.466162109375], + [36.37646484375, 34.495166015624996], + [36.32988281250002, 34.499609375], + [36.326269531250006, 34.513330078124994], + [36.388671875, 34.56689453125], + [36.43300781250002, 34.6134765625], + [36.383886718750006, 34.65791015625], + [36.29628906250002, 34.6787109375], + [36.26357421875002, 34.632861328124996], + [36.15107421875001, 34.62861328125], + [35.97626953125001, 34.629199218749996], + [35.89931640625002, 34.852099609374996], + [35.88789062500001, 34.948632812499994], + [35.88994140625002, 35.060302734375], + [35.94306640625001, 35.223828125], + [35.918066406250006, 35.29951171875], + [35.916015625, 35.350537109375], + [35.902441406250006, 35.420703125], + [35.76445312500002, 35.571582031249996], + [35.83964843750002, 35.84921875], + [35.892675781250006, 35.916552734374996], + [35.96757812500002, 35.910058593749994], + [36.12734375000002, 35.831445312499994], + [36.15361328125002, 35.833886718749994], + [36.20195312500002, 35.937548828124996], + [36.24882812500002, 35.972705078124996], + [36.34755859375002, 36.003515625], + [36.37539062500002, 36.171240234375], + [36.421484375, 36.203466796875], + [36.47705078125, 36.220703125], + [36.56240234375002, 36.223925781249996], + [36.63671875, 36.233984375], + [36.64140625000002, 36.263525390625], + [36.5375, 36.457421875], + [36.54667968750002, 36.50634765625], + [36.596875, 36.7013671875], + [36.62841796875, 36.777685546875], + [36.65859375000002, 36.802539062499996], + [36.77656250000001, 36.79267578125], + [36.94179687500002, 36.7583984375], + [36.9853515625, 36.702392578125], + [37.06621093750002, 36.652636718749996], + [37.18740234375002, 36.655908203124994], + [37.32705078125002, 36.64658203125], + [37.43632812500002, 36.643310546875], + [37.523535156250006, 36.6783203125], + [37.7203125, 36.743701171874996], + [37.81796875, 36.765576171875], + [37.90664062500002, 36.79462890625], + [38.19169921875002, 36.9015625], + [38.30585937500001, 36.893359375], + [38.38398437500001, 36.879248046875], + [38.44375, 36.862255859375], + [38.57802734375002, 36.789111328124996], + [38.68886718750002, 36.715087890625], + [38.7666015625, 36.693115234375], + [38.90644531250001, 36.694677734375], + [39.1083984375, 36.680566406249994], + [39.35664062500001, 36.681591796875], + [39.50146484375, 36.70224609375], + [39.6865234375, 36.738623046875], + [40.01640625000002, 36.826074218749994], + [40.45039062500001, 37.00888671875], + [40.705664062500006, 37.097705078124996], + [40.815625, 37.108154296875], + [40.95888671875002, 37.109179687499996], + [41.102148437500006, 37.085888671875], + [41.2646484375, 37.0693359375], + [41.33955078125001, 37.07080078125], + [41.51552734375002, 37.089160156249996], + [41.74355468750002, 37.126123046874994], + [41.886816406250006, 37.156396484374994], + [42.05986328125002, 37.2060546875], + [42.16787109375002, 37.288623046874996], + [42.202734375, 37.297265625], + [42.24755859375, 37.2822265625], + [42.2685546875, 37.2765625], + [42.31289062500002, 37.22958984375], + [42.358984375, 37.10859375] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "Turks and Caicos Is.", + "iso_a2": "TC", + "iso_a3": "TCA", + "iso_n3": "796", + "continent": "North America" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-72.3328125, 21.85136718749999], + [-72.21865234374997, 21.79628906250005], + [-72.14980468749997, 21.804492187500045], + [-72.14433593750002, 21.79272460937503], + [-72.18154296874997, 21.78002929687503], + [-72.19067382812494, 21.76977539062497], + [-72.30087890625, 21.755224609375034], + [-72.33544921874994, 21.758007812499983], + [-72.34238281250003, 21.795312500000023], + [-72.3328125, 21.85136718749999] + ] + ], + [ + [ + [-71.66142578124996, 21.765234375000034], + [-71.66538085937495, 21.75170898437503], + [-71.72177734374998, 21.790234374999983], + [-71.830419921875, 21.790625], + [-71.84765624999997, 21.843457031249983], + [-71.80615234374994, 21.852099609375045], + [-71.66835937499994, 21.833447265624983], + [-71.63691406249993, 21.787548828124955], + [-71.66142578124996, 21.765234375000034] + ] + ], + [ + [ + [-71.87993164062496, 21.840429687499977], + [-71.8974609375, 21.829882812500045], + [-71.95546875, 21.864404296874994], + [-71.96376953125, 21.89204101562501], + [-71.98452148437497, 21.893408203125034], + [-72.01904296874997, 21.918261718750017], + [-72.01064453124997, 21.950439453125], + [-71.93154296875, 21.951904296875057], + [-71.89960937499998, 21.8625], + [-71.87993164062496, 21.840429687499977] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Chad", + "iso_a2": "TD", + "iso_a3": "TCD", + "iso_n3": "148", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [23.980273437500017, 19.496630859375003], + [23.98066406250001, 19.050585937500003], + [23.981054687500006, 18.604541015625003], + [23.9814453125, 18.158496093750003], + [23.981835937500023, 17.71240234375], + [23.982226562500017, 17.266357421875], + [23.982519531250006, 16.820263671874997], + [23.98291015625, 16.37421875], + [23.983300781250023, 15.928125], + [23.9833984375, 15.780175781249994], + [23.970800781250006, 15.721533203124991], + [23.965234375000023, 15.713427734375003], + [23.94599609375001, 15.703515625], + [23.70820312500001, 15.744970703124991], + [23.60400390625, 15.745996093749994], + [23.4580078125, 15.713964843749991], + [23.243457031250017, 15.697216796874997], + [23.10517578125001, 15.702539062499994], + [23.009179687500023, 15.625830078124991], + [22.933886718750017, 15.533105468749994], + [22.969531250000017, 15.311328125], + [22.961328125000023, 15.238134765624991], + [22.93232421875001, 15.162109375], + [22.8671875, 15.096630859374997], + [22.802148437500023, 15.04443359375], + [22.76328125, 14.998681640624994], + [22.714941406250006, 14.898388671874997], + [22.67919921875, 14.851464843749994], + [22.682421875000017, 14.788623046875003], + [22.6708984375, 14.722460937500003], + [22.6318359375, 14.688085937499991], + [22.532031250000017, 14.662744140624994], + [22.4677734375, 14.633349609375003], + [22.41621093750001, 14.585205078125], + [22.38154296875001, 14.550488281249997], + [22.399707031250017, 14.504199218750003], + [22.425, 14.441210937500003], + [22.439355468750023, 14.342138671874991], + [22.449316406250006, 14.284228515625003], + [22.498339843750017, 14.237060546875], + [22.528222656250023, 14.203222656249991], + [22.53857421875, 14.161865234375], + [22.50996093750001, 14.12744140625], + [22.38818359375, 14.055517578124991], + [22.33935546875, 14.028857421875003], + [22.283496093750017, 13.992333984374994], + [22.262109375000023, 13.978710937499997], + [22.173144531250017, 13.910595703124997], + [22.128222656250017, 13.850146484375003], + [22.1064453125, 13.7998046875], + [22.10761718750001, 13.730322265624991], + [22.152929687500006, 13.626416015624997], + [22.20234375000001, 13.5380859375], + [22.22138671875001, 13.471630859374997], + [22.23261718750001, 13.398779296874991], + [22.228125, 13.32958984375], + [22.20263671875, 13.269335937500003], + [22.158007812500017, 13.215039062499997], + [21.990234375, 13.113085937499989], + [21.90771484375, 13.0009765625], + [21.841796875, 12.86474609375], + [21.825292968750006, 12.79052734375], + [21.843359375, 12.7412109375], + [21.878125, 12.699365234374994], + [21.928125, 12.678125], + [22.00068359375001, 12.671875], + [22.121191406250006, 12.694580078125], + [22.2333984375, 12.70947265625], + [22.352343750000017, 12.660449218749989], + [22.414453125000023, 12.54638671875], + [22.390234375, 12.462988281249991], + [22.43525390625001, 12.311914062499994], + [22.475488281250023, 12.129248046874991], + [22.472460937500017, 12.067773437499994], + [22.48984375, 12.044726562499989], + [22.564355468750023, 12.032958984375], + [22.580957031250023, 11.990136718749994], + [22.55634765625001, 11.66953125], + [22.591113281250017, 11.579882812499989], + [22.641015625000023, 11.515917968749989], + [22.697363281250006, 11.482666015625], + [22.754003906250006, 11.43984375], + [22.78339843750001, 11.409960937499989], + [22.849023437500023, 11.403271484374997], + [22.922656250000017, 11.344873046874994], + [22.942773437500023, 11.2671875], + [22.93769531250001, 11.192041015624994], + [22.894824218750017, 11.029003906249997], + [22.86005859375001, 10.919677734375], + [22.8173828125, 10.927197265624997], + [22.73017578125001, 10.954052734374997], + [22.6240234375, 10.977343749999989], + [22.49384765625001, 10.996240234374994], + [22.36982421875001, 10.951513671874991], + [22.2359375, 10.894140625], + [22.193652343750017, 10.851367187499989], + [22.15625, 10.826074218749994], + [22.09716796875, 10.830078125], + [22.04316406250001, 10.822705078124997], + [22.013769531250006, 10.782031249999989], + [21.96484375, 10.736669921874991], + [21.771484375, 10.642822265625], + [21.73066406250001, 10.608691406249989], + [21.70654296875, 10.574804687499991], + [21.70654296875, 10.537890624999989], + [21.726171875, 10.461621093749997], + [21.72578125000001, 10.366552734374991], + [21.682714843750006, 10.289843749999989], + [21.632714843750023, 10.23828125], + [21.57578125, 10.218554687499989], + [21.52802734375001, 10.207812499999989], + [21.496875, 10.175683593749994], + [21.39599609375, 10.001367187499994], + [21.352441406250023, 9.969140625], + [21.26386718750001, 9.974609375], + [21.00947265625001, 9.713232421874991], + [20.984179687500017, 9.636279296874989], + [20.891015625000023, 9.527148437499989], + [20.773242187500017, 9.405664062499994], + [20.66816406250001, 9.347119140624997], + [20.65966796875, 9.324511718749989], + [20.631445312500006, 9.301367187499991], + [20.56689453125, 9.274951171874989], + [20.342089843750017, 9.127099609374994], + [20.072656250000023, 9.133203125], + [19.953515625000023, 9.075146484374997], + [19.837695312500017, 9.049365234374989], + [19.668359375000023, 9.020898437499994], + [19.617480468750017, 9.023583984374994], + [19.400292968750023, 9.011621093749994], + [19.1455078125, 9.015966796874991], + [19.0478515625, 8.995019531249994], + [18.95625, 8.938867187499994], + [18.88828125, 8.889746093749991], + [18.878320312500023, 8.873193359374994], + [18.888574218750023, 8.852490234374997], + [18.886035156250017, 8.836035156249991], + [19.06416015625001, 8.715429687499991], + [19.108691406250017, 8.656152343749994], + [19.063867187500023, 8.598828125], + [19.042382812500023, 8.590283203124997], + [19.039843750000017, 8.5869140625], + [19.010839843750006, 8.541210937499997], + [18.90644531250001, 8.405078124999989], + [18.747460937500023, 8.243798828124994], + [18.66621093750001, 8.197705078124997], + [18.633593750000017, 8.167724609375], + [18.591601562500017, 8.060791015625], + [18.56416015625001, 8.0458984375], + [18.455078125, 8.032031249999989], + [18.238867187500006, 8.020361328124991], + [17.94013671875001, 7.985449218749991], + [17.760839843750006, 7.973828125], + [17.6494140625, 7.98359375], + [17.49267578125, 7.909814453124994], + [17.436425781250023, 7.890917968749989], + [17.402148437500017, 7.884570312499989], + [17.246972656250023, 7.81298828125], + [17.117968750000017, 7.701904296875], + [17.07197265625001, 7.680810546874994], + [16.89033203125001, 7.633691406249994], + [16.818164062500017, 7.557324218749997], + [16.784765625, 7.550976562499997], + [16.668359375000023, 7.651757812499994], + [16.588964843750006, 7.743359375], + [16.550195312500023, 7.835888671874997], + [16.545312500000023, 7.865478515625], + [16.523242187500017, 7.859960937499991], + [16.459375, 7.818994140624994], + [16.404394531250006, 7.772363281249994], + [16.37890625, 7.683544921874997], + [16.19111328125001, 7.6234375], + [16.030664062500023, 7.572119140624991], + [15.957617187500006, 7.507568359375], + [15.845019531250017, 7.475292968749997], + [15.701269531250006, 7.488427734374994], + [15.589257812500023, 7.515039062499994], + [15.480078125, 7.523779296874991], + [15.532421875000011, 7.604394531249994], + [15.552636718750023, 7.664501953124997], + [15.557812500000011, 7.738037109375], + [15.5498046875, 7.787890624999989], + [15.484472656250006, 7.812744140625], + [15.44296875, 7.851855468749989], + [15.349023437500023, 8.083837890624991], + [15.252343750000023, 8.322363281249991], + [15.1162109375, 8.557324218749997], + [14.967968750000011, 8.707275390625], + [14.860742187500023, 8.798632812499989], + [14.826269531250006, 8.810302734375], + [14.771289062500017, 8.839160156249989], + [14.732812500000023, 8.865673828124997], + [14.5361328125, 9.025244140624991], + [14.332324218750017, 9.203515625], + [14.280078125000017, 9.285058593749994], + [14.177929687500011, 9.406494140625], + [14.064160156250011, 9.53173828125], + [14.004980468750006, 9.588720703124991], + [13.977246093750011, 9.691552734374994], + [14.055957031250017, 9.784375], + [14.139746093750006, 9.901806640624997], + [14.243261718750006, 9.979736328125], + [14.377246093750017, 9.985058593749997], + [14.597949218750017, 9.953076171874997], + [14.835839843750023, 9.941699218749989], + [15.071582031250017, 9.965966796874994], + [15.132714843750023, 9.982861328124997], + [15.193164062500017, 9.981494140624989], + [15.320019531250011, 9.954296875], + [15.540917968750023, 9.960302734374991], + [15.654882812500006, 10.0078125], + [15.531933593750011, 10.088476562499991], + [15.39990234375, 10.216894531249991], + [15.276074218750011, 10.357373046874997], + [15.200976562500017, 10.484521484374994], + [15.132226562500023, 10.648486328124989], + [15.068652343750017, 10.85107421875], + [15.029882812500006, 11.113671875], + [15.035742187500006, 11.2625], + [15.055468750000017, 11.368554687499994], + [15.121972656250023, 11.541259765625], + [15.078027343750023, 11.642578125], + [15.087695312500017, 11.724365234375], + [15.08125, 11.845507812499989], + [15.059863281250017, 11.907128906249994], + [14.973828125000011, 12.108349609374997], + [14.956738281250011, 12.13037109375], + [14.880664062500017, 12.269384765624991], + [14.847070312500023, 12.502099609374994], + [14.76123046875, 12.655615234374991], + [14.623242187500011, 12.729931640624997], + [14.544726562500017, 12.820214843749994], + [14.516210937500006, 12.979736328125], + [14.461718750000017, 13.021777343749989], + [14.244824218750011, 13.07734375], + [14.06396484375, 13.078515625], + [13.932324218750011, 13.258496093749997], + [13.763476562500017, 13.489550781250003], + [13.606347656250023, 13.70458984375], + [13.505761718750023, 14.134423828124994], + [13.4482421875, 14.380664062500003], + [13.513671875, 14.455517578124997], + [13.642382812500017, 14.630761718749994], + [13.80712890625, 14.966113281250003], + [14.17822265625, 15.484765625], + [14.367968750000017, 15.750146484374994], + [14.746679687500006, 16.146630859374994], + [15.212109375000011, 16.63388671874999], + [15.474316406250011, 16.908398437499997], + [15.516699218750006, 17.408496093750003], + [15.5615234375, 17.937255859375], + [15.595507812500017, 18.337060546874994], + [15.637597656250023, 18.810839843750003], + [15.672949218750006, 19.206787109375], + [15.698632812500023, 19.49521484374999], + [15.735058593750011, 19.904052734375], + [15.766210937500006, 19.982568359374994], + [15.948828125, 20.303173828124997], + [15.963183593750017, 20.34619140625], + [15.929296875, 20.399853515624997], + [15.66845703125, 20.67236328125], + [15.587109375000011, 20.733300781249994], + [15.540332031250017, 20.874902343749994], + [15.607324218750023, 20.954394531250003], + [15.293652343750011, 21.411523437499994], + [15.2158203125, 21.467431640624994], + [15.181835937500011, 21.523388671874997], + [15.177832031250006, 21.60581054687499], + [15.172265625000023, 21.922070312499997], + [15.088964843750006, 22.418359375], + [14.97900390625, 22.99619140624999], + [15.347460937500017, 23.160693359375003], + [15.627148437500011, 23.28574218749999], + [15.984082031250011, 23.445214843749994], + [16.315039062500006, 23.28183593749999], + [16.79414062500001, 23.04526367187499], + [17.273242187500017, 22.80869140624999], + [17.752246093750017, 22.57211914062499], + [18.231347656250023, 22.335546875], + [18.71044921875, 22.09897460937499], + [19.189453125, 21.86240234374999], + [19.668554687500006, 21.62583007812499], + [20.14765625000001, 21.38925781249999], + [20.626757812500017, 21.152636718750003], + [21.105859375000023, 20.91611328124999], + [21.5849609375, 20.679492187500003], + [22.0640625, 20.442919921875003], + [22.543066406250006, 20.206347656250003], + [23.02216796875001, 19.969775390625003], + [23.501269531250017, 19.733203125], + [23.980273437500017, 19.496630859375003] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Togo", + "iso_a2": "TG", + "iso_a3": "TGO", + "iso_n3": "768", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [0.900488281250006, 10.993261718749991], + [0.874804687500017, 10.8857421875], + [0.821875, 10.752587890624994], + [0.7875, 10.710253906249989], + [0.763378906250011, 10.386669921874997], + [0.779980468750011, 10.359570312499997], + [0.792187500000011, 10.3515625], + [0.958300781250017, 10.242041015624991], + [1.176171875000023, 10.098388671875], + [1.330078125, 9.996972656249994], + [1.342871093750006, 9.962939453124989], + [1.345117187500023, 9.750195312499997], + [1.347070312500023, 9.567529296874994], + [1.37890625, 9.462988281249991], + [1.3857421875, 9.361669921874991], + [1.42431640625, 9.285009765624991], + [1.566308593750023, 9.137255859374989], + [1.600195312500006, 9.050048828125], + [1.603808593750017, 8.77099609375], + [1.606640625000011, 8.559277343749997], + [1.624609375, 8.27099609375], + [1.624609375, 8.030224609374997], + [1.624609375, 7.725878906249989], + [1.624707031250011, 7.369189453124989], + [1.624707031250011, 6.997314453125], + [1.530957031250011, 6.992431640625], + [1.58203125, 6.877001953124989], + [1.5908203125, 6.772265624999989], + [1.602929687500023, 6.738085937499989], + [1.577539062500023, 6.687402343749994], + [1.598535156250023, 6.610205078124991], + [1.639257812500006, 6.58154296875], + [1.7431640625, 6.42626953125], + [1.777929687500006, 6.294628906249997], + [1.6109375, 6.250830078124991], + [1.62265625, 6.216796875], + [1.310644531250006, 6.146875], + [1.187207031250011, 6.089404296874989], + [1.18505859375, 6.14501953125], + [1.1396484375, 6.155029296875], + [1.08447265625, 6.173779296874997], + [1.049902343750006, 6.20263671875], + [1.002148437500011, 6.2685546875], + [0.984960937500006, 6.3203125], + [0.912207031250006, 6.328564453124997], + [0.822460937500011, 6.386376953124994], + [0.736914062500006, 6.452587890624997], + [0.707226562500011, 6.51875], + [0.715429687500006, 6.54931640625], + [0.702246093750006, 6.580761718749997], + [0.672753906250023, 6.592529296875], + [0.595703125, 6.7421875], + [0.548046875000011, 6.802490234375], + [0.525585937500011, 6.850927734374991], + [0.533398437500011, 6.888330078124994], + [0.523046875, 6.938867187499994], + [0.5380859375, 6.9796875], + [0.579492187500023, 7.004101562499997], + [0.592480468750011, 7.033984374999989], + [0.59619140625, 7.096630859374997], + [0.619531250000023, 7.2265625], + [0.634765625, 7.353662109374994], + [0.591015625000011, 7.388818359374994], + [0.537304687500011, 7.398730468749989], + [0.509570312500017, 7.435107421874989], + [0.498925781250023, 7.4951171875], + [0.5, 7.546875], + [0.605175781250011, 7.728222656249997], + [0.58359375, 8.145800781249989], + [0.59921875, 8.209570312499991], + [0.647070312500006, 8.253466796874989], + [0.688085937500006, 8.304248046874989], + [0.686328125000017, 8.354882812499994], + [0.6162109375, 8.479638671874994], + [0.483300781250023, 8.575292968749991], + [0.415332031250017, 8.652734375], + [0.378613281250011, 8.722021484374991], + [0.37255859375, 8.75927734375], + [0.453125, 8.813769531249989], + [0.48876953125, 8.851464843749994], + [0.493261718750006, 8.894921875], + [0.460351562500023, 8.97421875], + [0.466113281250017, 9.115332031249991], + [0.497167968750006, 9.221240234374989], + [0.529003906250011, 9.358300781249994], + [0.525683593750017, 9.398486328124989], + [0.447558593750017, 9.480273437499989], + [0.4052734375, 9.491455078125], + [0.370996093750023, 9.485546875], + [0.289355468750017, 9.431835937499997], + [0.259960937500011, 9.426025390625], + [0.241503906250017, 9.44189453125], + [0.2333984375, 9.463525390624994], + [0.261914062500011, 9.49560546875], + [0.2515625, 9.53564453125], + [0.275488281250006, 9.570605468749989], + [0.327343750000011, 9.586572265624994], + [0.342578125000017, 9.604150390624994], + [0.272753906250017, 9.620947265624991], + [0.264550781250023, 9.644726562499997], + [0.26953125, 9.667919921874997], + [0.289648437500006, 9.672314453124997], + [0.311718750000011, 9.670996093749991], + [0.323925781250011, 9.687597656249991], + [0.334570312500006, 9.803955078125], + [0.343066406250017, 9.844580078124991], + [0.351855468750017, 9.924902343749991], + [0.362695312500023, 10.236474609374994], + [0.378613281250011, 10.2685546875], + [0.380859375, 10.291845703124991], + [0.331835937500017, 10.306933593749989], + [0.216015625000011, 10.390527343749994], + [0.148242187500017, 10.454785156249997], + [0.089257812500023, 10.520605468749991], + [0.039453125000023, 10.563867187499994], + [-0.057714843749977, 10.630615234375], + [-0.086328125, 10.673046875], + [-0.090185546874977, 10.715527343749997], + [-0.060595703124989, 10.800585937499989], + [-0.013867187499983, 10.891357421875], + [0.009423828125023, 11.02099609375], + [-0.004736328124977, 11.055566406249994], + [-0.068603515625, 11.115625], + [0.159277343750006, 11.069628906249989], + [0.484179687500017, 10.991992187499989], + [0.49072265625, 10.978173828124994], + [0.49267578125, 10.954980468749994], + [0.549121093750017, 10.955419921874991], + [0.642968750000023, 10.983056640624994], + [0.900488281250006, 10.993261718749991] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Thailand", + "iso_a2": "TH", + "iso_a3": "THA", + "iso_n3": "764", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [99.66308593749997, 6.521923828124983], + [99.64404296875003, 6.516113281250043], + [99.60664062500004, 6.596826171874966], + [99.6540039062501, 6.714111328124972], + [99.70136718750004, 6.570556640625028], + [99.66308593749997, 6.521923828124983] + ] + ], + [ + [ + [99.07841796875007, 7.591845703125003], + [99.10439453125005, 7.471289062500034], + [99.06787109374997, 7.495898437499989], + [99.03769531250012, 7.548486328125051], + [99.03808593750003, 7.625732421874972], + [99.04511718750004, 7.636523437500045], + [99.07841796875007, 7.591845703125003] + ] + ], + [ + [ + [98.5919921875001, 7.933935546874963], + [98.57998046875005, 7.917041015624989], + [98.52939453125012, 8.108544921875009], + [98.60429687500002, 8.057324218749969], + [98.5919921875001, 7.933935546874963] + ] + ], + [ + [ + [98.40908203125005, 7.90205078125004], + [98.39843750000003, 7.82841796874996], + [98.35742187499997, 7.829443359374991], + [98.315625, 7.782324218749991], + [98.2962890625, 7.776074218750054], + [98.26230468750006, 7.92607421874996], + [98.30136718750012, 8.136230468749972], + [98.32207031250007, 8.166308593749974], + [98.3509765625, 8.110644531250003], + [98.4349609375, 8.085644531249969], + [98.398828125, 7.964550781249983], + [98.40908203125005, 7.90205078125004] + ] + ], + [ + [ + [98.30751953125005, 9.051464843749997], + [98.25078125000002, 9.04082031249996], + [98.25839843750006, 9.095410156249983], + [98.27363281250004, 9.129882812499986], + [98.301171875, 9.139111328124997], + [98.3125, 9.080371093750031], + [98.30751953125005, 9.051464843749997] + ] + ], + [ + [ + [100.070703125, 9.58603515625002], + [100.07529296875012, 9.529443359375037], + [100.05371093749997, 9.461425781250028], + [99.96240234375003, 9.421630859375], + [99.93125, 9.47607421875], + [99.93955078125006, 9.559960937500037], + [99.95361328125003, 9.581005859374969], + [100.04296875000003, 9.576855468750011], + [100.070703125, 9.58603515625002] + ] + ], + [ + [ + [100.07412109375005, 9.696679687499994], + [100.06445312499997, 9.679980468749974], + [100.02568359375007, 9.711718750000045], + [99.99804687500003, 9.747607421874974], + [99.98339843749997, 9.79355468750002], + [100.04345703125003, 9.79165039062498], + [100.07304687500002, 9.74912109375002], + [100.07412109375005, 9.696679687499994] + ] + ], + [ + [ + [102.60644531250003, 11.676513671875014], + [102.58994140625012, 11.572167968749994], + [102.53281250000012, 11.614941406249997], + [102.54648437500006, 11.667773437500017], + [102.56894531250012, 11.691699218750003], + [102.60644531250003, 11.676513671875014] + ] + ], + [ + [ + [102.42675781250003, 11.988720703125026], + [102.42998046875002, 11.964746093750037], + [102.378125, 11.982958984375017], + [102.35996093750006, 11.97441406249996], + [102.30195312500004, 11.98081054687502], + [102.27333984375, 12.119335937499997], + [102.27744140625006, 12.151855468750043], + [102.31884765624997, 12.141650390625017], + [102.378125, 12.072851562500034], + [102.4083984375001, 12.025097656249983], + [102.42675781250003, 11.988720703125026] + ] + ], + [ + [ + [100.0036132812501, 20.37958984375001], + [100.12246093750005, 20.316650390625057], + [100.11494140625004, 20.257666015625034], + [100.13974609375012, 20.245410156250017], + [100.17412109375002, 20.27275390624999], + [100.21806640625007, 20.33959960937503], + [100.266015625, 20.377294921874977], + [100.31796875000006, 20.38588867187505], + [100.37314453125006, 20.340380859375017], + [100.43154296875005, 20.24072265625003], + [100.4916015625, 20.184082031250057], + [100.51953125000003, 20.17792968750004], + [100.53994140625, 20.13237304687499], + [100.54306640625012, 20.088671875000074], + [100.51455078125, 19.996337890625], + [100.4662109375, 19.888916015625057], + [100.39765625000004, 19.756103515625], + [100.42011718750004, 19.644482421874983], + [100.51357421875005, 19.553466796875], + [100.62548828125003, 19.499853515625006], + [100.74394531250002, 19.514746093750034], + [100.80683593750004, 19.541943359374955], + [100.85820312500002, 19.585058593750034], + [100.90605468750007, 19.605371093750023], + [100.96650390625004, 19.610791015624955], + [101.1546875, 19.579199218750006], + [101.21191406249997, 19.54833984375003], + [101.22080078125006, 19.486621093750074], + [101.19755859375007, 19.327929687500074], + [101.22656250000003, 19.211523437499977], + [101.27988281250012, 19.088916015625045], + [101.2863281250001, 18.977148437500006], + [101.22050781250002, 18.792773437500017], + [101.16552734375003, 18.618310546874994], + [101.10634765625005, 18.533544921875063], + [101.06044921875, 18.479003906250057], + [101.04697265625012, 18.441992187500063], + [101.05058593750002, 18.407031250000045], + [101.09277343750003, 18.35454101562499], + [101.1375, 18.28686523437497], + [101.14873046875007, 18.22216796875003], + [101.14394531250005, 18.14262695312499], + [101.11328125000003, 18.033544921874977], + [100.99902343750003, 17.797167968750045], + [100.90849609375002, 17.583886718750023], + [100.95585937500002, 17.541113281250006], + [101.04570312500002, 17.509960937499983], + [101.10517578125004, 17.47954101562499], + [101.16748046874997, 17.49902343749997], + [101.29970703125, 17.625], + [101.41367187500012, 17.71875], + [101.55507812500005, 17.812353515625034], + [101.56367187500004, 17.82050781250001], + [101.6875, 17.889404296875], + [101.74414062500003, 17.952685546875017], + [101.77480468750005, 18.03339843750004], + [101.81865234375002, 18.06464843750001], + [101.87548828124997, 18.046435546875017], + [101.94746093750004, 18.081494140624983], + [102.03457031250005, 18.169824218750023], + [102.10146484375, 18.210644531249983], + [102.14824218750002, 18.20385742187503], + [102.23164062500004, 18.148974609375045], + [102.35185546875002, 18.045947265625017], + [102.45878906250002, 17.984619140625057], + [102.55253906250007, 17.96508789062497], + [102.59824218750012, 17.92675781249997], + [102.59609375000005, 17.86962890624997], + [102.61679687500006, 17.833349609375034], + [102.66064453124997, 17.817968750000034], + [102.680078125, 17.824121093750023], + [102.6751953125, 17.851757812499983], + [102.71757812500002, 17.892236328124966], + [102.80742187500002, 17.945556640625], + [102.89863281250004, 17.976904296874977], + [102.9914062500001, 17.986230468750023], + [103.05136718750006, 18.02851562500001], + [103.0912109375, 18.13823242187499], + [103.14853515625006, 18.221728515625045], + [103.19970703124997, 18.259472656249983], + [103.26318359374997, 18.27846679687505], + [103.27958984375002, 18.304980468750017], + [103.24892578125, 18.338964843750034], + [103.25175781250002, 18.373486328124955], + [103.2882812500001, 18.408398437499955], + [103.36699218750007, 18.42333984374997], + [103.48798828125004, 18.418164062499983], + [103.62968750000002, 18.38256835937503], + [103.79228515625002, 18.316503906249977], + [103.89882812500005, 18.295312500000023], + [103.949609375, 18.31899414062505], + [104.04873046875005, 18.216699218749994], + [104.19619140625005, 17.988378906250006], + [104.32265625, 17.815820312500023], + [104.428125, 17.69897460937503], + [104.53925781250004, 17.60927734375005], + [104.65585937500012, 17.546728515625006], + [104.7396484375, 17.461669921875], + [104.81601562500012, 17.30029296874997], + [104.75898437500004, 17.0771484375], + [104.7435546875, 16.88437], + [104.75058593750012, 16.647558593750063], + [104.81933593750003, 16.46606445312503], + [104.94990234375004, 16.339941406250006], + [105.02578125000005, 16.23798828125001], + [105.04716796875007, 16.160253906249977], + [105.14873046875007, 16.09355468749999], + [105.33066406250006, 16.037890625000017], + [105.40625, 15.987451171875051], + [105.37558593750006, 15.942187500000045], + [105.37324218750004, 15.889697265625017], + [105.39892578124997, 15.829882812500017], + [105.46201171875012, 15.780419921874966], + [105.56240234375005, 15.741259765625074], + [105.62207031250003, 15.699951171875], + [105.641015625, 15.656542968750045], + [105.6388671875001, 15.585937500000057], + [105.615625, 15.488281250000057], + [105.57373046875003, 15.413232421875037], + [105.51318359374997, 15.360888671875031], + [105.50585937499997, 15.31962890625006], + [105.49042968750004, 15.256591796875], + [105.49042968750004, 15.127587890625009], + [105.5333984375001, 15.041601562499991], + [105.54667968750002, 14.932470703124963], + [105.52304687500012, 14.843310546875003], + [105.50019531250004, 14.661230468750034], + [105.49736328125002, 14.590673828124963], + [105.47558593750003, 14.530126953124977], + [105.42265625000007, 14.471630859375054], + [105.34218750000005, 14.416699218750054], + [105.24365234375003, 14.367871093750054], + [105.1833007812501, 14.346240234374989], + [105.16914062500004, 14.336083984374966], + [105.12597656250003, 14.280957031250011], + [105.07412109375005, 14.227441406250037], + [105.03369140624997, 14.227392578125034], + [105.00341796875003, 14.254443359375031], + [104.98242187500003, 14.289453124999966], + [104.96972656249997, 14.366113281250051], + [104.87880859375005, 14.40400390625004], + [104.77900390625004, 14.427832031250006], + [104.57578125000012, 14.390039062500037], + [104.41162109374997, 14.36958007812504], + [104.2277343750001, 14.3955078125], + [104.05429687500012, 14.362744140624983], + [103.9818359375, 14.357910156249972], + [103.8986328125001, 14.362792968749986], + [103.81835937500003, 14.362158203125034], + [103.74189453125004, 14.374169921874994], + [103.60039062500002, 14.421093749999969], + [103.54638671875003, 14.417431640625026], + [103.43242187500007, 14.378613281250011], + [103.31347656249997, 14.351318359375057], + [103.19941406250004, 14.332617187499977], + [103.03105468750002, 14.252539062500006], + [102.90927734375006, 14.136718750000028], + [102.8732421875001, 14.054882812499969], + [102.81279296875002, 13.972460937500045], + [102.72890625, 13.841894531250006], + [102.62041015625002, 13.716943359375037], + [102.54472656250007, 13.659960937499974], + [102.56552734375012, 13.62636718749998], + [102.54687, 13.585693359375043], + [102.42851562500002, 13.567578124999983], + [102.33632812500005, 13.560302734375014], + [102.31972656250005, 13.539990234375054], + [102.3307617187501, 13.288232421875009], + [102.36298828125004, 13.192968749999963], + [102.42265625000007, 13.077978515624991], + [102.46171875000002, 13.015039062500037], + [102.49072265624997, 12.828320312500011], + [102.49960937500012, 12.669970703125003], + [102.62968750000002, 12.569921875000048], + [102.70332031250004, 12.49350585937502], + [102.75566406250002, 12.42626953125], + [102.73740234375006, 12.383398437499963], + [102.70625, 12.255664062499974], + [102.73662109375007, 12.089794921875011], + [102.91806640625006, 11.732080078124966], + [102.93388671875002, 11.706689453125037], + [102.91230468750004, 11.703857421875], + [102.88369140625, 11.772753906250003], + [102.79160156250006, 11.888623046874983], + [102.76298828125002, 12.012451171874986], + [102.65488281250012, 12.148828124999966], + [102.594140625, 12.203027343749994], + [102.57480468750006, 12.15781250000002], + [102.54023437500004, 12.109228515624977], + [102.43408203124997, 12.179248046875031], + [102.34316406250005, 12.252587890624966], + [102.25908203125002, 12.394335937499974], + [102.2484375, 12.36142578125002], + [102.22958984375006, 12.331640625], + [102.1341796875, 12.443017578125037], + [102.034375, 12.531884765625023], + [101.9445312500001, 12.563671875000011], + [101.88906250000005, 12.59326171875], + [101.83574218750002, 12.640380859375014], + [101.72363281250003, 12.689355468750037], + [101.44492187500006, 12.618945312499989], + [101.09023437500005, 12.673632812500031], + [100.95371093750012, 12.621240234375023], + [100.89775390625007, 12.653808593749986], + [100.86328124999997, 12.714501953125009], + [100.89638671875, 12.818164062499989], + [100.90390625000006, 13.034912109375], + [100.94609375000007, 13.187255859375043], + [100.92626953125003, 13.303027343750003], + [100.94697265625004, 13.357568359375009], + [100.96269531250007, 13.431982421874991], + [100.90654296875002, 13.462402343750057], + [100.65605468750002, 13.521289062499974], + [100.60292968750005, 13.568164062500017], + [100.53642578125002, 13.514453125], + [100.23564453125002, 13.48447265625002], + [100.12236328125002, 13.43955078125002], + [100.01748046875, 13.353173828125009], + [99.99052734375007, 13.243457031250031], + [100.05107421875007, 13.171240234374977], + [100.08994140625006, 13.045654296874972], + [99.98203125000012, 12.771484374999986], + [99.96396484375006, 12.690039062500006], + [100.00566406250007, 12.354736328124986], + [99.98906250000007, 12.170800781249994], + [99.93027343750006, 12.047460937500006], + [99.8371093750001, 11.936621093749991], + [99.79873046875, 11.748779296875], + [99.72548828125, 11.661767578125037], + [99.62734375, 11.462890625000014], + [99.56132812500002, 11.215185546875006], + [99.51435546875004, 11.100585937500014], + [99.48691406250006, 10.889550781250009], + [99.28476562500012, 10.569140625000017], + [99.23730468750003, 10.388134765624997], + [99.16503906250003, 10.319824218750028], + [99.19033203125005, 10.265869140625043], + [99.19462890625002, 10.175439453125009], + [99.16933593750005, 9.934179687499977], + [99.16074218750006, 9.734033203124966], + [99.19130859375005, 9.62714843750004], + [99.2882812500001, 9.414599609374989], + [99.2650390625, 9.352978515625054], + [99.25390625000003, 9.265234375000034], + [99.33544921875003, 9.225439453125006], + [99.39384765625002, 9.21372070312502], + [99.7238281250001, 9.314208984374972], + [99.83554687500012, 9.288378906250031], + [99.87753906250006, 9.194628906250031], + [99.9046875, 9.112890625], + [99.96064453125004, 8.671240234374991], + [99.98955078125007, 8.589208984374977], + [100.05625, 8.511132812499966], + [100.129296875, 8.428076171875006], + [100.15410156250002, 8.44296875000002], + [100.1588867187501, 8.473779296874994], + [100.16347656250005, 8.508398437500034], + [100.22871093750004, 8.424707031250037], + [100.27939453125006, 8.268505859375011], + [100.453515625, 7.442285156249994], + [100.50371093750002, 7.337304687500009], + [100.54521484375002, 7.226904296874991], + [100.43935546875005, 7.280761718750043], + [100.41074218750006, 7.46430664062504], + [100.38037109375003, 7.541503906250043], + [100.34296875000004, 7.552880859374966], + [100.28378906250006, 7.551513671875043], + [100.2799804687501, 7.584326171874977], + [100.32431640625006, 7.644189453125009], + [100.31738281249997, 7.715966796874966], + [100.25664062500002, 7.774902343749986], + [100.15820312499997, 7.72812], + [100.16074218750012, 7.599267578124994], + [100.20488281250007, 7.50053710937496], + [100.37138671875002, 7.280126953124991], + [100.4235351562501, 7.18784179687502], + [100.48974609374997, 7.161376953125057], + [100.58623046875002, 7.175976562500011], + [100.70166015625003, 7.08198242187504], + [100.79257812500006, 6.994677734375017], + [101.01787109375002, 6.860937500000034], + [101.15439453125006, 6.875146484375009], + [101.3019531250001, 6.908300781250006], + [101.40087890624997, 6.899560546875009], + [101.49794921875005, 6.865283203125031], + [101.61425781250003, 6.753955078125003], + [101.79921875000005, 6.474609375000028], + [102.10107421874997, 6.242236328125031], + [102.06835937499997, 6.18466796875002], + [102.05517578124997, 6.096679687500043], + [101.93613281250006, 5.97934570312502], + [101.9171875000001, 5.911376953125028], + [101.87363281250012, 5.825292968749991], + [101.7907226562501, 5.77934570312496], + [101.71953125000007, 5.770605468750048], + [101.67841796875004, 5.778808593750028], + [101.65000000000012, 5.795996093749977], + [101.60136718750007, 5.877148437499983], + [101.57675781250012, 5.902001953124994], + [101.5560546875, 5.907763671875003], + [101.40419921875005, 5.851660156250034], + [101.2570312500001, 5.789355468750045], + [101.22978515625002, 5.733691406249989], + [101.190625, 5.66875], + [101.1476562500001, 5.64306640625], + [101.1139648437501, 5.636767578125045], + [101.0817382812501, 5.674902343749991], + [101.02519531250002, 5.72451171874998], + [100.98164062500004, 5.771044921875045], + [100.99277343750006, 5.846191406249986], + [101.0755859375, 5.956494140624983], + [101.08652343750006, 6.03369140625], + [101.07597656250007, 6.16606445312496], + [101.05351562500002, 6.242578125], + [101.02939453125006, 6.245312500000026], + [100.98876953124997, 6.257666015624977], + [100.87392578125, 6.24541015624996], + [100.81650390625006, 6.331640625000034], + [100.79375, 6.426171875000023], + [100.75449218750012, 6.460058593749991], + [100.715625, 6.480664062500011], + [100.62949218750006, 6.447998046875028], + [100.5638671875, 6.467529296875], + [100.3454101562501, 6.549902343750006], + [100.26142578125004, 6.682714843749963], + [100.21660156250002, 6.686621093749963], + [100.17675781250003, 6.671826171874969], + [100.16123046875012, 6.641601562500028], + [100.13798828125002, 6.488671875000051], + [100.11914062499997, 6.441992187500048], + [99.86865234375003, 6.74990234374998], + [99.69599609375004, 6.87666015625004], + [99.72031250000012, 7.106201171875], + [99.66777343750007, 7.150878906250043], + [99.60244140625, 7.155322265624974], + [99.55302734375002, 7.218798828125031], + [99.59697265625002, 7.355615234375009], + [99.52910156250002, 7.329492187500023], + [99.43515625000006, 7.334375], + [99.35859375000004, 7.372216796875023], + [99.30039062500006, 7.561328125], + [99.26367187499997, 7.619042968750037], + [99.18339843750007, 7.718066406250045], + [99.07763671874997, 7.718066406250045], + [99.04267578125004, 7.765625], + [99.05107421875002, 7.887841796874994], + [98.97392578125002, 7.96279296874998], + [98.87246093750005, 8.02392578125], + [98.78867187500012, 8.059814453125028], + [98.703515625, 8.256738281250009], + [98.63632812500006, 8.305029296874991], + [98.57919921875006, 8.344287109374989], + [98.49980468750007, 8.317822265625011], + [98.47402343750005, 8.246923828124963], + [98.42099609375006, 8.17822265625], + [98.36074218750005, 8.186962890624997], + [98.30546875000007, 8.226220703125009], + [98.23818359375005, 8.423095703124972], + [98.22695312500005, 8.543652343750011], + [98.24179687500006, 8.767871093750045], + [98.32597656250007, 8.968945312499969], + [98.37138671875002, 9.290527343750028], + [98.44316406250007, 9.492822265625037], + [98.49296875000007, 9.56142578124998], + [98.5619140625, 9.8375], + [98.70253906250005, 10.19038085937504], + [98.7184570312501, 10.266015625], + [98.746875, 10.350830078125043], + [98.76835937500007, 10.430859375], + [98.77539062499997, 10.557031250000037], + [98.7572265625, 10.623583984375003], + [98.7572265625, 10.660937499999974], + [98.78691406250002, 10.708447265624969], + [98.887109375, 10.788330078125], + [99.02539062500003, 10.919970703124989], + [99.1901367187501, 11.105273437499989], + [99.3587890625, 11.389453124999974], + [99.44267578125002, 11.554394531250011], + [99.4779296875, 11.6125], + [99.51523437500006, 11.630664062500003], + [99.57285156250006, 11.687158203124966], + [99.6125, 11.749658203124994], + [99.61474609374997, 11.781201171875026], + [99.52294921875003, 12.089648437499989], + [99.46289062499997, 12.19023437499996], + [99.43242187500007, 12.309033203125011], + [99.41630859375007, 12.394824218749989], + [99.3942382812501, 12.473632812500057], + [99.40507812500002, 12.547900390625003], + [99.37197265625, 12.594238281250028], + [99.29736328124997, 12.652880859374974], + [99.21982421875012, 12.73974609375], + [99.1735351562501, 12.88193359375002], + [99.1735351562501, 12.961328125000023], + [99.12392578125, 13.030761718750043], + [99.10742187500003, 13.103515625000043], + [99.13710937500005, 13.17299804687498], + [99.176171875, 13.233056640625051], + [99.17167968750007, 13.496923828124977], + [99.15605468750007, 13.575781249999977], + [99.13681640625006, 13.716699218749994], + [99.08623046875007, 13.822753906250014], + [99.01464843749997, 13.947167968750051], + [98.93359374999997, 14.049853515625003], + [98.72119140625003, 14.235742187500037], + [98.57001953125004, 14.359912109375031], + [98.49501953125005, 14.472900390625043], + [98.40019531250002, 14.602978515624983], + [98.33212890625006, 14.696484375000026], + [98.24599609375005, 14.814746093750045], + [98.20214843749997, 14.97592773437502], + [98.17792968750004, 15.147412109374969], + [98.19101562500012, 15.204101562499972], + [98.23222656250007, 15.241357421875009], + [98.28613281250003, 15.271582031250034], + [98.32939453125007, 15.278564453125043], + [98.45214843750003, 15.357373046875026], + [98.53730468750004, 15.350683593749991], + [98.55693359375007, 15.367675781249986], + [98.56523437500007, 15.403564453125014], + [98.55449218750002, 15.559765624999955], + [98.55820312500006, 15.768603515625045], + [98.57402343750007, 15.938623046875051], + [98.59238281250006, 16.05068359375005], + [98.81796875000012, 16.180810546874994], + [98.86552734375002, 16.237060546875], + [98.88847656250002, 16.298095703125], + [98.88828125000006, 16.351904296875034], + [98.8693359375001, 16.39418945312505], + [98.83544921875003, 16.417578125], + [98.68925781250002, 16.30541992187497], + [98.66074218750006, 16.330419921875006], + [98.59365234375, 16.514794921874994], + [98.56474609375002, 16.570947265624994], + [98.5231445312501, 16.63818359375], + [98.478125, 16.732226562500074], + [98.47119140624997, 16.89501953125003], + [98.4388671875, 16.975683593750034], + [98.25654296875004, 17.147656249999983], + [98.17460937500007, 17.239892578125023], + [98.06308593750006, 17.37329101562503], + [97.92929687500006, 17.533300781250034], + [97.79296875000003, 17.68125], + [97.72910156250006, 17.775830078124955], + [97.7064453125, 17.79711914062503], + [97.69853515625007, 17.83354492187499], + [97.73994140625004, 17.93530273437503], + [97.71972656250003, 18.037402343750045], + [97.6515625000001, 18.173730468750023], + [97.6224609375, 18.258007812499955], + [97.63222656250005, 18.290332031250074], + [97.5993164062501, 18.30297851562497], + [97.523828125, 18.295898437500057], + [97.45078125000012, 18.359667968750074], + [97.38066406250002, 18.49428710937505], + [97.37392578125, 18.51796875], + [97.39707031250012, 18.517529296874983], + [97.48496093750006, 18.494238281250034], + [97.51513671874997, 18.497753906249955], + [97.57734375000004, 18.52871093750005], + [97.6715820312501, 18.56123046875001], + [97.72773437500004, 18.572021484375], + [97.74589843750002, 18.58818359374999], + [97.75400390625006, 18.620800781249983], + [97.70605468749997, 18.931787109374994], + [97.71416015625002, 18.99648437500005], + [97.80390625000004, 19.130468749999977], + [97.79355468750006, 19.26586914062503], + [97.816796875, 19.459960937500057], + [97.91640625000005, 19.592871093750034], + [97.99121093749997, 19.653710937499994], + [98.01503906250005, 19.74951171874997], + [98.04902343750004, 19.76972656250001], + [98.1110351562501, 19.762158203124983], + [98.23906250000002, 19.69067382812497], + [98.29365234375004, 19.687255859375], + [98.37128906250004, 19.68916015625004], + [98.45498046875, 19.694433593750034], + [98.4938476562501, 19.701318359375023], + [98.76064453125, 19.771093750000034], + [98.8195312500001, 19.778466796875023], + [98.87578125000007, 19.769580078125074], + [98.9166992187501, 19.77290039062504], + [98.95800781249997, 19.804931640625], + [98.98740234375006, 19.861376953125017], + [99.02070312500004, 20.041796875000017], + [99.0397460937501, 20.073632812500023], + [99.07421875000003, 20.09936523437503], + [99.13076171875, 20.116601562499966], + [99.19687500000012, 20.115136718750023], + [99.28369140624997, 20.080419921874977], + [99.33789062499997, 20.078906250000017], + [99.39921875000007, 20.093457031249983], + [99.45156250000005, 20.118310546874966], + [99.48593750000006, 20.14985351562501], + [99.50166015625004, 20.187744140625], + [99.4875, 20.260644531250023], + [99.44794921875004, 20.35205078124997], + [99.45888671875005, 20.363037109375], + [99.53164062500005, 20.342822265625045], + [99.63867187499997, 20.320458984375023], + [99.72011718750005, 20.32543945312497], + [99.77333984375, 20.34130859375003], + [99.82519531249997, 20.38447265625001], + [99.8903320312501, 20.424414062499977], + [99.9542968750001, 20.415429687500023], + [100.0036132812501, 20.37958984375001] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Tajikistan", + "iso_a2": "TJ", + "iso_a3": "TJK", + "iso_n3": "762", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [70.70166015625003, 39.82529296874998], + [70.61210937500007, 39.78676757812502], + [70.55957031250003, 39.790917968749994], + [70.51865234375006, 39.828173828125045], + [70.48925781250003, 39.86303710937503], + [70.48281250000005, 39.88271484375005], + [70.49775390625004, 39.88242187499998], + [70.56708984375004, 39.86660156250005], + [70.66416015625, 39.85546875], + [70.69824218750003, 39.845849609374994], + [70.70166015625003, 39.82529296874998] + ] + ], + [ + [ + [70.65253906250004, 40.93662109374998], + [70.62275390625004, 40.93442382812498], + [70.56875, 40.981835937499966], + [70.55, 41.01489257812503], + [70.57207031250002, 41.02480468750002], + [70.6183593750001, 41.00166015625001], + [70.64921875000002, 40.96083984375005], + [70.65253906250004, 40.93662109374998] + ] + ], + [ + [ + [70.69833984375006, 40.66118164062502], + [70.54882812499997, 40.562792968750045], + [70.38261718750002, 40.453515624999966], + [70.3771484375001, 40.43925781250002], + [70.3697265625, 40.41201171875005], + [70.37158203125003, 40.38413085937506], + [70.39824218750002, 40.361376953125045], + [70.46992187500004, 40.345361328124966], + [70.53359375, 40.32451171874999], + [70.56582031250005, 40.26713867187502], + [70.60273437500004, 40.21416015624999], + [70.653125, 40.201171875], + [70.89941406249997, 40.234570312499955], + [70.95800781250003, 40.238867187500034], + [70.96093749999997, 40.220654296874955], + [70.94638671875006, 40.18759765624998], + [70.73857421875007, 40.13115234375002], + [70.64433593750007, 40.08344726562498], + [70.62412109375006, 39.99897460937501], + [70.59921875, 39.974511718749994], + [70.5568359375001, 39.95449218750002], + [70.51513671875003, 39.949902343749955], + [70.4513671875001, 40.04921875000002], + [70.37890624999997, 40.06987304687499], + [70.27441406250003, 40.104833984375006], + [70.0714843750001, 40.172753906249966], + [69.96679687499997, 40.202246093750034], + [69.765234375, 40.15800781249999], + [69.53027343750003, 40.097314453124966], + [69.49365234375003, 40.06035156249999], + [69.46875, 40.020751953125], + [69.47099609375002, 39.990625], + [69.487890625, 39.95043945312497], + [69.47626953125004, 39.919726562500045], + [69.43193359375007, 39.909765625000034], + [69.36542968750004, 39.94707031250002], + [69.30722656250006, 39.968554687500045], + [69.27880859374997, 39.91777343749999], + [69.24472656250006, 39.82709960937498], + [69.22910156250006, 39.761083984375034], + [69.28027343749997, 39.665869140625006], + [69.29765625000007, 39.52480468750005], + [69.39150390625, 39.532470703125], + [69.46328125, 39.532080078125006], + [69.59882812500004, 39.57377929687499], + [69.66699218749997, 39.57490234375004], + [69.7720703125, 39.55673828124998], + [69.95595703125, 39.553076171875034], + [70.10166015625, 39.56059570312496], + [70.13681640625006, 39.55756835937498], + [70.17109375000004, 39.58417968749998], + [70.20927734375007, 39.575], + [70.24482421875004, 39.54262695312502], + [70.39208984375003, 39.581884765625034], + [70.50117187500004, 39.58735351562501], + [70.56796875000006, 39.57587890624998], + [70.6078125, 39.56440429687504], + [70.67861328125005, 39.47128906249998], + [70.73310546875004, 39.41328124999998], + [70.79931640625003, 39.39472656250001], + [71.00488281249997, 39.41186523437503], + [71.06503906250006, 39.49340820312506], + [71.11806640625005, 39.513574218749966], + [71.20273437500006, 39.51982421875002], + [71.27285156250005, 39.535302734374966], + [71.328515625, 39.568701171875006], + [71.40429687499997, 39.59785156250001], + [71.4703125, 39.60366210937502], + [71.50302734375006, 39.58217773437502], + [71.51738281250002, 39.55385742187502], + [71.50585937499997, 39.51708984374997], + [71.5033203125, 39.47880859374999], + [71.54628906250005, 39.45307617187501], + [71.67265625000002, 39.44707031250002], + [71.73222656250002, 39.422998046874994], + [71.73535156250003, 39.37773437500002], + [71.72568359375, 39.30659179687501], + [71.77861328125007, 39.27797851562502], + [71.80595703125002, 39.27558593749998], + [71.99101562500007, 39.35092773437506], + [72.04277343750002, 39.352148437500034], + [72.08417968750004, 39.310644531250034], + [72.14736328125005, 39.26074218749997], + [72.22998046874997, 39.20751953124997], + [72.24980468750002, 39.215673828125034], + [72.28720703125, 39.27373046874996], + [72.35771484375007, 39.33686523437504], + [72.49023437499997, 39.357373046874955], + [72.56337890625005, 39.377197265625], + [72.63994140625002, 39.385986328125], + [72.87246093750005, 39.360400390625045], + [72.9494140625001, 39.357080078124994], + [73.10927734375, 39.36191406249998], + [73.2349609375, 39.37456054687499], + [73.3361328125001, 39.41235351562506], + [73.38740234375004, 39.442724609375034], + [73.4704101562501, 39.46059570312502], + [73.57558593750005, 39.457617187500034], + [73.63164062500007, 39.44887695312502], + [73.63632812500006, 39.396679687499955], + [73.62314453125006, 39.2978515625], + [73.60732421875, 39.229199218749955], + [73.69042968749997, 39.10454101562496], + [73.74375, 39.04453124999998], + [73.7956054687501, 39.00214843749998], + [73.8052734375, 38.968652343749994], + [73.79453125000006, 38.94130859375002], + [73.72998046874997, 38.914697265624994], + [73.70683593750002, 38.88623046874997], + [73.69609375000007, 38.85429687499996], + [73.71679687500003, 38.817236328125034], + [73.7541015625001, 38.69892578125001], + [73.80166015625, 38.60688476562501], + [73.86914062499997, 38.56289062500002], + [73.97001953125002, 38.53369140625], + [74.02558593750004, 38.53984375000002], + [74.06533203125, 38.60849609374998], + [74.13134765625003, 38.66118164062496], + [74.18730468750002, 38.65751953125002], + [74.27744140625, 38.659765625000034], + [74.5140625, 38.6], + [74.74501953125, 38.51000976562497], + [74.81230468750002, 38.46030273437498], + [74.83593750000003, 38.40429687500003], + [74.77207031250006, 38.274755859375006], + [74.77509765625004, 38.19189453125], + [74.7896484375, 38.10361328125006], + [74.84248046875004, 38.03808593750003], + [74.8908203125001, 37.92578124999997], + [74.90029296875, 37.83271484375001], + [74.9212890625, 37.80498046874996], + [74.93828125000002, 37.77250976562502], + [74.91230468750004, 37.68730468749999], + [74.8942382812501, 37.60141601562498], + [74.91582031250007, 37.57280273437502], + [74.98642578125006, 37.53037109374998], + [75.09746093750002, 37.451269531250034], + [75.11875, 37.38569335937498], + [75.07900390625, 37.344042968750045], + [75.0083984375, 37.29355468750006], + [74.9181640625001, 37.25], + [74.89130859375004, 37.231640624999955], + [74.875390625, 37.24199218750002], + [74.83046875, 37.28593750000002], + [74.73056640625006, 37.35703125], + [74.659375, 37.39448242187501], + [74.52421875000002, 37.38237304687502], + [74.44492187500006, 37.39560546875006], + [74.34902343750005, 37.41875], + [74.25966796875005, 37.41542968750002], + [74.20351562500005, 37.37246093750005], + [74.16708984375, 37.32944335937498], + [74.077734375, 37.31621093749996], + [73.94882812500006, 37.28315429687498], + [73.74960937500006, 37.23178710937498], + [73.6535156250001, 37.239355468750034], + [73.62753906250006, 37.261572265625006], + [73.64882812500005, 37.29121093750001], + [73.71728515625003, 37.32944335937498], + [73.7337890625, 37.37578125000002], + [73.72060546875, 37.41875], + [73.65712890625005, 37.43046875], + [73.63261718750002, 37.43720703125001], + [73.6046875000001, 37.44604492187503], + [73.48134765625, 37.4716796875], + [73.38291015625006, 37.462255859375034], + [73.21113281250004, 37.40849609375002], + [72.89550781250003, 37.26752929687498], + [72.7570312500001, 37.172705078125034], + [72.65742187500004, 37.029052734375], + [72.35878906250005, 36.98291015625], + [72.15351562500004, 36.900537109374994], + [71.9419921875, 36.766455078125034], + [71.80205078125002, 36.69428710937501], + [71.7337890625, 36.684033203124955], + [71.665625, 36.696923828124994], + [71.59746093750002, 36.73291015625006], + [71.530859375, 36.845117187499994], + [71.471875, 37.01508789062498], + [71.43291015625007, 37.12753906249998], + [71.45478515625004, 37.27182617187498], + [71.4796875000001, 37.43603515625003], + [71.5050781250001, 37.60292968750002], + [71.54619140625002, 37.79565429687503], + [71.58037109375007, 37.86425781250006], + [71.5822265625001, 37.91010742187498], + [71.55195312500004, 37.93315429687496], + [71.48779296874997, 37.93188476562497], + [71.38964843750003, 37.90629882812502], + [71.31992187500006, 37.90185546875], + [71.27851562500004, 37.91840820312498], + [71.2828125, 38.007910156250006], + [71.33271484375004, 38.170263671875034], + [71.25585937499997, 38.306982421875006], + [71.0521484375, 38.41787109375005], + [70.87890624999997, 38.45639648437498], + [70.7359375, 38.42255859375001], + [70.6158203125, 38.33442382812501], + [70.51855468750003, 38.191992187500034], + [70.41777343750002, 38.075439453125], + [70.31328125000002, 37.98481445312501], + [70.23876953124997, 37.94121093750002], + [70.21464843750002, 37.92441406250006], + [70.19941406250004, 37.88603515624996], + [70.25498046875006, 37.76538085937497], + [70.25146484374997, 37.66416015625006], + [70.18867187500004, 37.58247070312501], + [70.11982421875004, 37.54350585937499], + [70.04472656250002, 37.547216796875034], + [69.9849609375, 37.566162109375], + [69.940625, 37.60029296875001], + [69.8208984375, 37.60957031250004], + [69.62578125000002, 37.59404296874999], + [69.49208984375, 37.55307617187498], + [69.42011718750004, 37.486718749999966], + [69.39921875000007, 37.39931640625002], + [69.42968749999997, 37.290869140625034], + [69.414453125, 37.20776367187497], + [69.35380859375007, 37.15004882812502], + [69.3039062500001, 37.11694335937503], + [69.26484375000004, 37.1083984375], + [69.18017578125003, 37.158300781250034], + [69.05, 37.26650390625005], + [68.96044921875003, 37.32504882812498], + [68.9118164062501, 37.33393554687501], + [68.88525390624997, 37.32807617187498], + [68.85537109375005, 37.31684570312501], + [68.83847656250006, 37.30283203124998], + [68.82373046874997, 37.27070312500001], + [68.78203125000002, 37.25800781250001], + [68.7232421875, 37.26801757812501], + [68.6691406250001, 37.258398437500006], + [68.63701171875002, 37.224462890625006], + [68.54648437500006, 37.183447265625006], + [68.3869140625001, 37.1375], + [68.29951171875004, 37.08842773437502], + [68.28476562500006, 37.036328124999955], + [68.2609375000001, 37.01308593750002], + [68.2121093750001, 37.02153320312496], + [68.0677734375, 36.949804687500006], + [67.95800781249997, 36.972021484375006], + [67.83447265624997, 37.06420898437506], + [67.76601562500005, 37.14013671874997], + [67.75898437500004, 37.172216796875034], + [67.7980468750001, 37.244970703125006], + [67.81435546875005, 37.48701171875004], + [67.86357421875002, 37.57070312500002], + [68.01093750000004, 37.720947265625], + [68.08759765625004, 37.83544921875006], + [68.17402343750004, 37.92841796874998], + [68.2365234375001, 37.959667968749955], + [68.29404296875006, 38.032910156249955], + [68.3412109375, 38.11679687499998], + [68.35449218750003, 38.16953124999998], + [68.3502929687501, 38.211035156250006], + [68.33310546875, 38.23779296875003], + [68.2513671875, 38.29453125000006], + [68.144140625, 38.38310546874999], + [68.08720703125002, 38.47353515625002], + [68.05595703125007, 38.58891601562499], + [68.04785156250003, 38.669287109375006], + [68.14853515625, 38.890625], + [68.13251953125004, 38.927636718749966], + [68.10351562499997, 38.96201171875006], + [68.0443359375, 38.98359375000001], + [67.95957031250006, 38.99291992187506], + [67.8756835937501, 38.98300781249998], + [67.76855468750003, 38.98222656249999], + [67.69443359375006, 38.99462890625003], + [67.67656250000002, 39.00849609375001], + [67.66728515625002, 39.10917968750002], + [67.64833984375005, 39.13105468750004], + [67.61650390625007, 39.15029296875005], + [67.40039062499997, 39.196679687499994], + [67.3576171875001, 39.216699218749994], + [67.34960937499997, 39.242089843749994], + [67.426171875, 39.46557617187497], + [67.45957031250006, 39.48242187500003], + [67.49169921875003, 39.51875], + [67.54248046874997, 39.55761718749997], + [67.71904296875007, 39.62138671875002], + [67.90859375000005, 39.59379882812499], + [68.07714843750003, 39.56416015624998], + [68.24492187500002, 39.54829101562504], + [68.30302734375002, 39.537695312500006], + [68.39902343750006, 39.52885742187499], + [68.46328125, 39.53671874999998], + [68.50693359375, 39.56279296874996], + [68.58613281250004, 39.63496093750001], + [68.61035156250003, 39.74326171875006], + [68.63896484375007, 39.8388671875], + [68.6869140625, 39.846289062500006], + [68.73525390625, 39.83623046874999], + [68.75820312500005, 39.855566406250006], + [68.76796875, 39.88183593750003], + [68.77783203124997, 39.904199218749966], + [68.79765625000007, 39.90913085937501], + [68.83242187500005, 39.88432617187502], + [68.8522460937501, 39.890966796875034], + [68.86875, 39.90747070312503], + [68.86386718750006, 39.92734374999998], + [68.82441406250004, 39.96079101562506], + [68.789453125, 40.013330078124994], + [68.79277343750007, 40.03149414062497], + [68.80468750000003, 40.05034179687499], + [68.90849609375002, 40.068212890625006], + [68.9556640625, 40.07133789062502], + [68.9720703125, 40.08994140624998], + [68.9660156250001, 40.11958007812498], + [68.92685546875, 40.136328125], + [68.7845703125, 40.127099609374994], + [68.63974609375006, 40.12919921874999], + [68.6224609375, 40.14726562500002], + [68.63066406250007, 40.16708984374998], + [68.6525390625001, 40.182666015625045], + [68.95175781250006, 40.22260742187501], + [69.11035156250003, 40.20874023437503], + [69.22832031250007, 40.18759765624998], + [69.27490234374997, 40.19809570312498], + [69.21953125000007, 40.288134765625045], + [69.29443359375003, 40.29658203124998], + [69.30419921874997, 40.32739257812503], + [69.20625, 40.566552734374994], + [69.25996093750004, 40.58764648437503], + [69.31396484375003, 40.63476562500006], + [69.309375, 40.72392578124999], + [69.35722656250002, 40.76738281249996], + [69.41386718750002, 40.79716796874999], + [69.4982421875001, 40.76708984375], + [69.62841796874997, 40.679052734375006], + [69.67080078125, 40.66196289062498], + [69.71289062500003, 40.65698242187503], + [69.77324218750007, 40.68427734375001], + [70.00566406250007, 40.77143554687501], + [70.13632812500006, 40.820410156250034], + [70.29208984375006, 40.89169921874998], + [70.31894531250006, 40.91923828124999], + [70.37265625000006, 41.02763671874996], + [70.40195312500006, 41.03510742187498], + [70.44150390625006, 41.0234375], + [70.57822265625, 40.911474609375006], + [70.65732421875006, 40.839648437500045], + [70.65732421875006, 40.81508789062502], + [70.63476562499997, 40.79658203124998], + [70.63916015624997, 40.77856445312503], + [70.75097656250003, 40.739599609375006], + [70.75107421875006, 40.721777343750006], + [70.72558593750003, 40.68779296875002], + [70.71201171875, 40.66909179687502], + [70.69833984375006, 40.66118164062502] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Turkmenistan", + "iso_a2": "TM", + "iso_a3": "TKM", + "iso_n3": "795", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [53.10957031250004, 38.803076171875006], + [53.10019531250006, 38.756152343750045], + [53.04589843750003, 38.897216796875], + [53.01855468749997, 39.05273437499997], + [53.053320312500006, 39.09658203125002], + [53.09218750000005, 39.09409179687506], + [53.05517578124997, 39.03793945312498], + [53.10957031250004, 38.803076171875006] + ] + ], + [ + [ + [58.72998046875003, 42.676171875], + [58.87695312500003, 42.56147460937498], + [58.9308593750001, 42.54028320312503], + [59.03583984375004, 42.528125], + [59.123144531250006, 42.523779296875034], + [59.15957031250005, 42.51142578125001], + [59.199121093749994, 42.481689453125], + [59.2765625000001, 42.35615234374998], + [59.35429687500002, 42.32329101562496], + [59.451074218749994, 42.29951171875001], + [59.76259765625005, 42.30156249999999], + [59.858300781249994, 42.295166015625], + [59.93652343749997, 42.23603515625004], + [59.98515625000002, 42.21171875], + [60.0060546875001, 42.190820312499966], + [60.00078125000002, 42.16474609374998], + [59.9816406250001, 42.13173828125002], + [59.97919921875004, 42.06806640625001], + [59.97412109374997, 42.018798828125], + [59.949316406250006, 41.995410156250045], + [59.941796875, 41.97353515625002], + [59.96259765625004, 41.954394531250045], + [60.10693359374997, 41.90742187499998], + [60.15556640625002, 41.85703125], + [60.1920898437501, 41.83442382812501], + [60.20078125000006, 41.803125], + [60.17636718750006, 41.78227539062496], + [60.10859375000004, 41.792675781249955], + [60.07558593750005, 41.759667968749966], + [60.07558593750005, 41.700537109375006], + [60.12402343749997, 41.64497070312498], + [60.137988281250074, 41.594140625], + [60.10605468750006, 41.54521484374999], + [60.06875, 41.476220703124966], + [60.06738281249997, 41.427343750000034], + [60.089648437500074, 41.39941406250003], + [60.2, 41.34897460937498], + [60.454980468749994, 41.221630859374955], + [60.513574218749994, 41.216162109375006], + [60.75488281249997, 41.245751953124994], + [60.86718750000003, 41.248681640624966], + [60.93320312500006, 41.22900390625006], + [61.11992187500002, 41.21088867187501], + [61.179296875, 41.19057617187502], + [61.2423828125001, 41.18920898437503], + [61.32890625000002, 41.19511718749999], + [61.3875, 41.252148437499955], + [61.41738281250005, 41.26513671875003], + [61.443652343750074, 41.27460937500001], + [61.496972656249994, 41.276074218749955], + [61.64453125000003, 41.239843750000034], + [61.79990234375006, 41.163427734375006], + [61.90283203124997, 41.09370117187501], + [61.953515625, 41.030615234375034], + [62.01757812500003, 40.89379882812497], + [62.095019531250074, 40.68330078124998], + [62.18847656250003, 40.54121093749998], + [62.29804687500004, 40.46748046874998], + [62.375, 40.33208007812502], + [62.44160156250004, 40.03623046875006], + [62.48320312500002, 39.97563476562496], + [62.525488281250006, 39.94409179687503], + [62.65068359375002, 39.858496093750006], + [62.90683593750006, 39.716796875], + [63.05810546874997, 39.633154296875006], + [63.291894531249994, 39.49951171875006], + [63.50605468750004, 39.377099609374966], + [63.720800781250006, 39.18813476562502], + [63.76367187500003, 39.160546875], + [63.95253906250005, 39.05834960937506], + [64.16279296875004, 38.95361328125003], + [64.3099609375, 38.97729492187497], + [64.531640625, 38.81621093750002], + [64.621875, 38.756445312500006], + [64.65996093750002, 38.73603515625001], + [64.820703125, 38.672460937500034], + [65.07666015624997, 38.53945312500002], + [65.39960937500004, 38.34882812500001], + [65.612890625, 38.23857421875002], + [65.67089843749997, 38.225732421874966], + [65.72851562500003, 38.22636718750002], + [65.79023437500004, 38.25004882812496], + [65.8571289062501, 38.26875], + [65.97119140624997, 38.244238281250006], + [66.09482421875, 38.20014648437501], + [66.17314453125007, 38.16669921875004], + [66.26367187499997, 38.118066406249994], + [66.3353515625, 38.07216796875005], + [66.38974609375006, 38.050927734374994], + [66.57451171875007, 38.01079101562499], + [66.60625, 37.98671875000005], + [66.62636718750005, 37.959863281249994], + [66.629296875, 37.93203125], + [66.52558593750004, 37.785742187500034], + [66.51132812500006, 37.59916992187496], + [66.51064453125, 37.45869140625004], + [66.52226562500007, 37.34848632812506], + [66.471875, 37.3447265625], + [66.35029296875004, 37.36816406249997], + [66.10839843750003, 37.414746093749955], + [65.90068359375002, 37.50810546874996], + [65.7650390625, 37.56914062499996], + [65.74384765625004, 37.56083984374996], + [65.68300781250005, 37.519140625], + [65.64121093750006, 37.46782226562502], + [65.60800781250006, 37.36840820312503], + [65.55498046875002, 37.25117187500004], + [65.30361328125005, 37.24677734375001], + [65.08964843750007, 37.237939453124994], + [64.9515625, 37.19355468750001], + [64.81630859375005, 37.13208007812503], + [64.7824218750001, 37.05927734375001], + [64.753125, 36.964794921874955], + [64.67431640624997, 36.75019531250001], + [64.60253906250003, 36.554541015625034], + [64.5658203125, 36.427587890625034], + [64.51103515625002, 36.34067382812498], + [64.35800781250006, 36.22607421875], + [64.184375, 36.14892578125], + [64.0921875, 36.112695312499994], + [64.0513671875, 36.06762695312506], + [64.04238281250005, 36.02509765625001], + [64.00966796875005, 36.01210937500002], + [63.938085937500006, 36.01972656249998], + [63.8625, 36.012353515624994], + [63.69658203125002, 35.96782226562496], + [63.51699218750005, 35.91313476562502], + [63.30166015625005, 35.85839843749997], + [63.1789062500001, 35.85844726562499], + [63.12998046875006, 35.84619140624997], + [63.10859375000004, 35.81870117187506], + [63.12998046875006, 35.76674804687505], + [63.15078125000005, 35.72827148437503], + [63.169726562500074, 35.678125], + [63.11933593750004, 35.637548828125006], + [63.08417968750004, 35.56806640624998], + [63.05664062500003, 35.44580078125003], + [62.98027343750002, 35.40917968750003], + [62.85800781250006, 35.34965820312499], + [62.72265625000003, 35.271337890625006], + [62.688085937500006, 35.25532226562504], + [62.6105468750001, 35.23315429687506], + [62.53310546875005, 35.239892578124994], + [62.46289062499997, 35.25136718750002], + [62.38662109375005, 35.23125], + [62.3078125000001, 35.17080078125005], + [62.2711914062501, 35.18911132812505], + [62.25283203125005, 35.25024414062497], + [62.21308593750004, 35.289941406249966], + [62.08964843750002, 35.3796875], + [61.98388671874997, 35.443701171875034], + [61.93808593750006, 35.447900390624994], + [61.8410156250001, 35.431494140625034], + [61.71972656249997, 35.41943359374997], + [61.62099609375005, 35.43232421875004], + [61.54277343750002, 35.457861328125006], + [61.42177734375005, 35.545800781249966], + [61.37773437500002, 35.593115234375006], + [61.34472656249997, 35.62949218750006], + [61.26201171875002, 35.61958007812498], + [61.238867187500006, 35.659277343750006], + [61.23554687500004, 35.70556640625], + [61.25869140625005, 35.761816406250006], + [61.25214843750004, 35.86762695312498], + [61.20585937500002, 35.943701171875034], + [61.15292968750006, 35.97675781250001], + [61.159472656250074, 35.99990234375002], + [61.18261718749997, 36.05283203125006], + [61.21240234375003, 36.09912109374997], + [61.212011718750006, 36.190527343750034], + [61.175097656250074, 36.289697265624994], + [61.1603515625001, 36.432714843750006], + [61.16992187499997, 36.572265625], + [61.11962890625003, 36.64257812500003], + [60.707910156249994, 36.64296875000002], + [60.34130859375003, 36.63764648437501], + [60.320703125, 36.65356445312506], + [60.178320312500006, 36.829443359375006], + [60.06279296875002, 36.962890625], + [59.94863281250005, 37.04160156250006], + [59.68720703125004, 37.13847656249999], + [59.5622070312501, 37.178906249999955], + [59.454980468749994, 37.25283203125002], + [59.3673828125001, 37.33374023437497], + [59.34472656250003, 37.44472656250002], + [59.32695312500002, 37.48115234374998], + [59.30175781249997, 37.51064453125005], + [59.27412109375004, 37.52373046874996], + [59.240820312500006, 37.52075195312497], + [58.93720703125004, 37.64965820312503], + [58.81542968750003, 37.683496093749994], + [58.70078125, 37.65625], + [58.65019531250002, 37.65156249999998], + [58.55048828125004, 37.68818359374998], + [58.4357421875001, 37.63852539062498], + [58.38671874999997, 37.63535156250006], + [58.31816406250002, 37.64721679687497], + [58.261621093749994, 37.665820312500045], + [58.108789062499994, 37.783056640625034], + [57.980566406250006, 37.83046875000002], + [57.88818359375003, 37.86083984374997], + [57.71054687500006, 37.90527343749997], + [57.52099609374997, 37.928466796875], + [57.42382812500003, 37.94770507812501], + [57.35371093750004, 37.97333984374998], + [57.33574218750002, 37.98994140624998], + [57.33671875000002, 38.032910156249955], + [57.331445312499994, 38.08930664062498], + [57.30810546874997, 38.13037109375], + [57.26015625000005, 38.179589843749994], + [57.1935546875001, 38.216406250000034], + [57.079003906249994, 38.20996093750006], + [56.906640625, 38.213037109374966], + [56.7746093750001, 38.25004882812496], + [56.66992187499997, 38.25664062499996], + [56.544042968750006, 38.249609375000034], + [56.440625, 38.249414062499994], + [56.36689453125004, 38.222509765625034], + [56.32412109375005, 38.19111328125004], + [56.296972656250006, 38.094824218750034], + [56.272070312500006, 38.080419921875034], + [56.22880859375002, 38.07338867187502], + [56.171191406250074, 38.07836914062497], + [56.05029296874997, 38.077539062499994], + [55.84130859375003, 38.094628906249994], + [55.57841796875002, 38.099755859374994], + [55.38085937500003, 38.051123046875034], + [55.224707031250006, 37.98134765625002], + [55.075585937499994, 37.90249023437502], + [54.90009765625004, 37.77792968750006], + [54.84863281250003, 37.72265624999997], + [54.745214843750006, 37.501904296874955], + [54.6994140625001, 37.47016601562498], + [54.63964843749997, 37.44472656250002], + [54.578906250000074, 37.44023437499999], + [54.4586914062501, 37.407568359375006], + [54.29980468750003, 37.353613281250034], + [54.1916015625001, 37.33247070312498], + [53.91416015625006, 37.34355468750002], + [53.89785156250005, 37.41357421875], + [53.84785156250004, 37.669580078124994], + [53.823535156250074, 37.92792968749998], + [53.82519531249997, 38.04692382812496], + [53.854101562500006, 38.28564453125003], + [53.851855468750074, 38.405908203124994], + [53.84003906250004, 38.51494140625002], + [53.85156250000003, 38.62177734375001], + [53.8737304687501, 38.74194335937497], + [53.88535156250006, 38.86406249999999], + [53.86865234375003, 38.949267578125045], + [53.81494140625003, 39.01801757812501], + [53.72412109374997, 39.10307617187502], + [53.709765625000074, 39.15341796875006], + [53.70458984375003, 39.209570312500034], + [53.61757812500005, 39.21596679687502], + [53.53945312500005, 39.27407226562502], + [53.475, 39.30571289062499], + [53.33632812500005, 39.34082031250006], + [53.2667968750001, 39.34262695312506], + [53.20332031250004, 39.31679687500002], + [53.156640625, 39.26499023437506], + [53.12402343750003, 39.3466796875], + [53.12480468750002, 39.43208007812498], + [53.23564453125002, 39.608544921874966], + [53.30498046875002, 39.557080078124955], + [53.38964843749997, 39.53642578125002], + [53.497363281250074, 39.533300781250006], + [53.603125, 39.546972656250034], + [53.582421875, 39.607421875], + [53.533300781250006, 39.641748046874966], + [53.472265625, 39.66879882812498], + [53.45048828125002, 39.74853515624997], + [53.45830078125002, 39.83120117187502], + [53.48730468749997, 39.90937], + [53.4542968750001, 39.94086914062498], + [53.404199218749994, 39.96035156250005], + [53.28857421874997, 39.95800781250003], + [53.138574218749994, 39.97866210937505], + [52.9875, 39.98759765625002], + [52.95214843750003, 39.89545898437498], + [53.03554687500005, 39.7744140625], + [52.96484375000003, 39.83388671875005], + [52.89824218750002, 39.9125], + [52.80468749999997, 40.054003906250045], + [52.744433593750074, 40.21977539062496], + [52.73369140625002, 40.39873046875002], + [52.784765625, 40.54672851562506], + [52.849902343750074, 40.685644531250006], + [52.889257812500006, 40.86347656250001], + [52.943457031250006, 41.03808593750006], + [52.99765625000006, 40.95986328125002], + [53.05957031249997, 40.889746093750034], + [53.1452148437501, 40.82495117187497], + [53.191992187500006, 40.80947265625002], + [53.33291015625005, 40.78271484375], + [53.423632812500074, 40.79277343749999], + [53.52031250000002, 40.83105468749997], + [53.61523437500003, 40.818505859374994], + [53.69375, 40.74643554687506], + [53.76376953125006, 40.66567382812502], + [53.87001953125005, 40.64868164062503], + [54.08886718749997, 40.707080078125045], + [54.19296875, 40.72041015624998], + [54.28330078125006, 40.69370117187506], + [54.32988281250002, 40.688769531250045], + [54.37734375, 40.693261718749966], + [54.336230468750074, 40.76494140625002], + [54.319433593750006, 40.83457031249998], + [54.37441406250005, 40.87138671875002], + [54.54707031250004, 40.83227539062506], + [54.657031250000074, 40.85834960937504], + [54.68505859375003, 40.873046875], + [54.710058593750006, 40.89111328125006], + [54.72324218750006, 40.951269531250034], + [54.71796875000004, 41.01298828125002], + [54.70371093750006, 41.071142578125034], + [54.671484375, 41.122167968750034], + [54.5921875, 41.19355468750001], + [54.28457031250005, 41.363720703124955], + [54.181054687499994, 41.43159179687501], + [54.094824218750006, 41.51938476562506], + [54.03984375000002, 41.64335937499999], + [53.99521484375006, 41.772558593750034], + [53.95380859375004, 41.86845703125002], + [53.846484375000074, 42.091162109375006], + [53.80468749999997, 42.11762695312498], + [53.75234375000005, 42.12939453124997], + [53.62490234375005, 42.136376953124994], + [53.49589843750002, 42.12016601562496], + [53.284960937500074, 42.08183593749999], + [53.16416015625006, 42.09379882812502], + [53.10830078125005, 42.07006835937497], + [52.97001953125002, 41.97622070312505], + [52.90527343749997, 41.895751953125], + [52.81484375, 41.711816406249994], + [52.88349609375004, 41.65253906250001], + [52.882226562499994, 41.613671875], + [52.830175781250006, 41.341894531250034], + [52.86181640624997, 41.210058593750006], + [52.850390625000074, 41.20029296875006], + [52.825585937499994, 41.230859375], + [52.7472656250001, 41.365429687499955], + [52.60937, 41.529443359374966], + [52.4938476562501, 41.780371093750034], + [52.696875, 41.944384765625045], + [52.870507812499994, 42.06059570312499], + [53.0125, 42.13071289062498], + [53.0558593750001, 42.14775390624999], + [53.25009765625006, 42.20585937500002], + [53.500781250000074, 42.25825195312504], + [53.685351562500074, 42.296875], + [53.92636718750006, 42.329785156249955], + [54.005175781250074, 42.335888671874955], + [54.120996093749994, 42.335205078125], + [54.21494140625006, 42.30419921874997], + [54.271875, 42.27998046875001], + [54.47285156250004, 42.18017578125003], + [54.67792968750004, 42.078222656250034], + [54.85380859375002, 41.965185546875006], + [54.90371093750005, 41.91909179687505], + [54.93164062499997, 41.864013671875], + [54.9523437500001, 41.81000976562501], + [55.10185546875002, 41.63872070312502], + [55.16230468750004, 41.56025390625004], + [55.249609375, 41.458105468750006], + [55.319726562499994, 41.40839843750001], + [55.38837890625004, 41.346923828125], + [55.434375, 41.296289062499994], + [55.48701171875004, 41.27226562499999], + [55.54521484375002, 41.26274414062499], + [55.678613281249994, 41.27880859374997], + [55.8390625000001, 41.310791015625], + [55.934960937499994, 41.324121093749966], + [55.97744140625005, 41.32221679687504], + [56.24199218750002, 41.31083984375002], + [56.479882812499994, 41.30063476562498], + [56.77363281250004, 41.287988281249994], + [56.86083984374997, 41.27612304687506], + [56.96582031249997, 41.26513671875003], + [57.01796875, 41.26347656249996], + [57.06425781250002, 41.307275390624994], + [57.09482421875006, 41.33129882812503], + [57.11884765625004, 41.35029296874998], + [57.113867187500006, 41.37177734375001], + [57.07666015624997, 41.38999023437498], + [57.01816406250006, 41.450585937499994], + [56.98486328125003, 41.66933593750005], + [56.96406250000004, 41.856542968750006], + [57.03369140625003, 41.91484375], + [57.11357421875002, 41.95712890625006], + [57.228808593750074, 42.08447265624997], + [57.290625, 42.123779296875], + [57.38173828125005, 42.15629882812496], + [57.68613281250006, 42.164794921875], + [57.814257812500074, 42.18984375000005], + [57.85595703125003, 42.231054687500006], + [57.9234375, 42.335205078125], + [57.945703125, 42.420019531250034], + [57.983496093750006, 42.458789062500045], + [58.02890625, 42.48764648437506], + [58.075488281250074, 42.48652343750001], + [58.165625, 42.461572265624966], + [58.23408203125004, 42.44770507812498], + [58.28291015625004, 42.428857421874966], + [58.327246093750006, 42.39892578125], + [58.37050781250005, 42.346777343750034], + [58.3771484375001, 42.31245117187498], + [58.39707031250006, 42.29248046875], + [58.43144531250002, 42.292089843750006], + [58.45703125000003, 42.29179687500002], + [58.474414062500074, 42.29936523437496], + [58.48583984375003, 42.31684570312498], + [58.476953125, 42.34013671875002], + [58.4181640625001, 42.40668945312498], + [58.288671875, 42.527294921874955], + [58.20410156249997, 42.57636718750001], + [58.16201171875005, 42.60297851562501], + [58.15156250000004, 42.628076171874966], + [58.206445312499994, 42.666308593750045], + [58.25966796875005, 42.688085937500034], + [58.353125, 42.67172851562498], + [58.477148437500006, 42.66284179687503], + [58.53232421875006, 42.68193359375002], + [58.5890625000001, 42.778466796874966], + [58.72998046875003, 42.676171875] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Timor-Leste", + "iso_a2": "TL", + "iso_a3": "TLS", + "iso_n3": "626", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [124.31933593750003, -9.413769531249983], + [124.28232421875012, -9.427929687500026], + [124.13457031250002, -9.413867187500003], + [124.11552734375007, -9.423144531250031], + [124.09013671875007, -9.41640625], + [124.0524414062501, -9.37539062499998], + [124.0363281250001, -9.341601562500031], + [124.19814453125005, -9.256152343750031], + [124.44443359375012, -9.190332031250023], + [124.43828125000002, -9.238574218750003], + [124.41298828125, -9.31435546874998], + [124.37568359375004, -9.349902343750031], + [124.31933593750003, -9.413769531249983] + ] + ], + [ + [ + [127.29609375000004, -8.424511718749969], + [127.11455078125007, -8.583593749999963], + [126.91523437500004, -8.715234374999966], + [126.79248046875003, -8.755078125], + [126.6654296875, -8.782031249999974], + [126.56855468750004, -8.832910156249952], + [126.48691406250012, -8.912695312499949], + [126.38251953125004, -8.957617187499963], + [126.26474609375006, -8.97275390625002], + [126.1642578125001, -8.996679687500006], + [126.07304687500007, -9.043554687499963], + [125.94609375000007, -9.123925781249994], + [125.8947265625001, -9.132128906249989], + [125.84033203125003, -9.130175781250031], + [125.73515625000007, -9.160937499999989], + [125.40800781250002, -9.275781250000023], + [125.21025390625007, -9.403515625000026], + [125.06816406250002, -9.511914062499997], + [125.03359375000005, -9.381835937499957], + [124.99697265625005, -9.325976562499946], + [124.96826171874997, -9.294238281249974], + [124.95859375000006, -9.254687499999989], + [124.96015625000004, -9.213769531250009], + [124.97753906250003, -9.194921875], + [125.10048828125, -9.189843750000023], + [125.14941406250003, -9.12294921874998], + [125.14902343750012, -9.042578125000034], + [125.1244140625, -9.015429687500017], + [125.10039062500007, -9.004003906249991], + [124.97324218750012, -9.064257812500017], + [124.93681640625007, -9.053417968750026], + [124.91503906249997, -9.031542968750003], + [124.92226562500005, -8.942480468749977], + [125.02695312500012, -8.859082031249955], + [125.11572265625003, -8.7080078125], + [125.17802734375002, -8.647851562499994], + [125.32314453125, -8.591308593750028], + [125.38183593749997, -8.575390624999983], + [125.80429687500006, -8.4921875], + [125.90507812500007, -8.486523437499997], + [126.17285156249997, -8.488964843749955], + [126.53105468750002, -8.470800781249991], + [126.61972656250006, -8.459472656249986], + [126.73457031250004, -8.422753906249966], + [126.84570312500003, -8.377343749999952], + [126.90468750000005, -8.34160156249996], + [126.96640625000012, -8.315722656250017], + [127.05849609375005, -8.348242187499977], + [127.21484374999997, -8.372949218750037], + [127.25703125000004, -8.39453125], + [127.29609375000004, -8.424511718749969] + ] + ], + [ + [ + [125.64609375000006, -8.139941406250003], + [125.5794921875, -8.311816406250017], + [125.50712890625007, -8.275097656249997], + [125.58408203125012, -8.178613281249966], + [125.62109375000003, -8.15], + [125.64609375000006, -8.139941406250003] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "Tonga", + "iso_a2": "TO", + "iso_a3": "TON", + "iso_n3": "776", + "continent": "Oceania" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-174.91313476562502, -21.30048828125001], + [-174.91865234374998, -21.450585937500037], + [-174.967529296875, -21.381738281250037], + [-174.97294921875002, -21.349804687500026], + [-174.923486328125, -21.303417968749983], + [-174.91313476562502, -21.30048828125001] + ] + ], + [ + [ + [-175.1619140625, -21.169335937500023], + [-175.14765625, -21.169433593749957], + [-175.13193359375, -21.139746093750034], + [-175.07817382812496, -21.129003906249977], + [-175.08408203125003, -21.160742187499963], + [-175.15659179687495, -21.26367187499997], + [-175.20234375000004, -21.22343750000003], + [-175.33544921874997, -21.15771484374997], + [-175.36235351562496, -21.106835937499994], + [-175.31806640624998, -21.068261718750037], + [-175.32260742187503, -21.09931640624997], + [-175.30043945312497, -21.11337890624999], + [-175.22539062499993, -21.11875], + [-175.1580078125, -21.146484374999986], + [-175.19975585937496, -21.155664062499994], + [-175.1619140625, -21.169335937500023] + ] + ], + [ + [ + [-173.953515625, -18.63935546875001], + [-173.99130859374998, -18.69863281250001], + [-174.009326171875, -18.69775390625], + [-174.05312, -18.663378906250017], + [-174.06914062500002, -18.640234375], + [-174.00244140625, -18.570703124999966], + [-173.96806640624993, -18.565332031250023], + [-173.921875, -18.58857421874997], + [-173.92397460937502, -18.608496093750034], + [-173.953515625, -18.63935546875001] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Trinidad and Tobago", + "iso_a2": "TT", + "iso_a3": "TTO", + "iso_n3": "780", + "continent": "North America" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-61.012109374999966, 10.134326171874989], + [-61.174267578124955, 10.078027343749966], + [-61.59667968750003, 10.064648437499997], + [-61.77167968749998, 10.085058593749977], + [-61.906103515625006, 10.069140625000031], + [-61.661474609375006, 10.191699218750031], + [-61.632714843749994, 10.243408203125], + [-61.52885742187499, 10.253125], + [-61.49931640624999, 10.268554687499972], + [-61.464746093749966, 10.538964843749994], + [-61.47827148437497, 10.603369140624977], + [-61.49882812499999, 10.638867187500011], + [-61.54091796874994, 10.66445312499998], + [-61.63530273437499, 10.699365234374994], + [-61.65117187499993, 10.718066406249974], + [-61.59184570312493, 10.747949218750023], + [-61.46484375, 10.764453125000017], + [-61.37001953124994, 10.79682617187504], + [-61.17373046875002, 10.803320312500034], + [-61.078515625, 10.831933593749994], + [-60.917626953124966, 10.840234375], + [-60.99672851562502, 10.716162109375034], + [-61.03374023437502, 10.669873046875026], + [-61.01933593750002, 10.558105468749986], + [-61.0375, 10.482275390624991], + [-61.01640624999993, 10.386376953124994], + [-60.968457031249955, 10.323388671875037], + [-60.99960937499998, 10.261474609375043], + [-61.00410156250001, 10.167822265624963], + [-61.012109374999966, 10.134326171874989] + ] + ], + [ + [ + [-60.75629882812498, 11.178515624999989], + [-60.810644531250034, 11.168603515625023], + [-60.80429687499998, 11.208398437500037], + [-60.70893554687501, 11.277246093750037], + [-60.56279296874999, 11.32353515624996], + [-60.525488281250034, 11.325390624999983], + [-60.54648437499995, 11.263720703125031], + [-60.75629882812498, 11.178515624999989] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Tunisia", + "iso_a2": "TN", + "iso_a3": "TUN", + "iso_n3": "788", + "continent": "Africa" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [10.957617187500063, 33.72207031250005], + [10.93134765625004, 33.717431640624994], + [10.883007812500068, 33.69018554687503], + [10.857421875, 33.68715820312502], + [10.784765625000034, 33.71767578125002], + [10.757031250000068, 33.71748046874998], + [10.722070312500051, 33.738916015624994], + [10.733886718750057, 33.855615234374966], + [10.745214843750063, 33.88867187500006], + [10.921972656250006, 33.89311523437499], + [11.017871093749989, 33.82333984374998], + [11.03359375, 33.80502929687498], + [11.037597656250028, 33.785058593749994], + [10.993066406249994, 33.745947265625006], + [10.957617187500063, 33.72207031250005] + ] + ], + [ + [ + [11.278027343750068, 34.753808593749994], + [11.123632812500063, 34.68168945312496], + [11.153027343750011, 34.74458007812498], + [11.254882812500057, 34.82031250000006], + [11.281054687500045, 34.80219726562501], + [11.278027343750068, 34.753808593749994] + ] + ], + [ + [ + [9.783984375000074, 37.21142578125003], + [9.830273437499983, 37.13535156250006], + [9.896386718750051, 37.181640625], + [9.879394531250057, 37.21284179687504], + [9.875585937499977, 37.25415039062503], + [9.988085937500074, 37.257763671874955], + [10.087402343750057, 37.25126953124996], + [10.196386718750063, 37.205859375000045], + [10.188769531250017, 37.03388671874998], + [10.334082031250034, 36.86538085937505], + [10.293261718750074, 36.781494140625], + [10.412304687499983, 36.73183593750002], + [10.518164062500063, 36.79135742187506], + [10.571289062500057, 36.87944335937496], + [10.766210937500063, 36.930273437500034], + [10.95136718750004, 37.05927734375001], + [11.053906250000068, 37.07250976562506], + [11.077050781250051, 36.966699218749994], + [11.12666015625004, 36.874072265625045], + [11.056542968750051, 36.84145507812505], + [10.967187500000051, 36.74301757812498], + [10.798144531249989, 36.493115234374955], + [10.642382812500074, 36.41962890625001], + [10.525683593749989, 36.323339843750006], + [10.48798828125004, 36.2548828125], + [10.476562500000028, 36.175146484375006], + [10.505761718750023, 36.03242187499998], + [10.590820312500028, 35.88725585937499], + [10.688964843750057, 35.799511718749955], + [10.783691406249972, 35.77207031250006], + [11.00429687500008, 35.63383789062496], + [11.00068359375004, 35.551611328125006], + [11.031542968750017, 35.45385742187497], + [11.043261718750017, 35.33510742187502], + [11.120117187500057, 35.24028320312499], + [10.955859375000074, 35.03364257812498], + [10.8662109375, 34.884326171875045], + [10.69091796875, 34.67846679687503], + [10.534863281250011, 34.544726562500045], + [10.200390625000068, 34.34604492187506], + [10.118359375000068, 34.280078125000045], + [10.06484375000008, 34.21162109375004], + [10.0400390625, 34.14033203124998], + [10.049023437500068, 34.056298828124994], + [10.158984375000074, 33.85004882812501], + [10.305273437500034, 33.72827148437497], + [10.454296875000011, 33.6625], + [10.713183593750017, 33.68901367187496], + [10.704296875000068, 33.60966796874996], + [10.722753906250006, 33.514404296875], + [10.828125, 33.518896484375034], + [10.8984375, 33.53369140625003], + [10.958007812500057, 33.62631835937498], + [11.084570312500006, 33.56289062500002], + [11.150292968750051, 33.369238281250006], + [11.257421875000034, 33.30883789062506], + [11.269921875000023, 33.28632812499998], + [11.23212890625004, 33.271582031250006], + [11.202636718749972, 33.24921874999998], + [11.234277343750023, 33.23359375000001], + [11.33808593750004, 33.20947265624997], + [11.400585937500068, 33.22490234375002], + [11.50458984375004, 33.181933593750045], + [11.502441406250028, 33.15556640624999], + [11.467187500000051, 32.96572265625005], + [11.459179687500011, 32.897363281249966], + [11.453906250000017, 32.78168945312504], + [11.453906250000017, 32.64257812500003], + [11.533789062500034, 32.52495117187496], + [11.535937500000017, 32.47333984375001], + [11.504980468750034, 32.413671875000034], + [11.358007812500006, 32.34521484375003], + [11.168261718750074, 32.25673828125002], + [11.005175781250074, 32.17270507812506], + [10.826367187500068, 32.080664062500034], + [10.771582031250006, 32.02119140625001], + [10.68300781250008, 31.97539062499999], + [10.60888671875, 31.929541015624977], + [10.595507812500017, 31.88574218750003], + [10.543652343750011, 31.802539062500045], + [10.47578125000004, 31.736035156249983], + [10.306054687500023, 31.70483398437503], + [10.274609375000011, 31.684960937499994], + [10.195996093750068, 31.585107421874966], + [10.159863281249983, 31.545800781249966], + [10.114941406250068, 31.46376953125005], + [10.172656250000017, 31.25097656250003], + [10.24335937500004, 31.032128906250023], + [10.257031250000068, 30.940820312499994], + [10.25605468750004, 30.864941406249983], + [10.216406250000063, 30.78320312500003], + [10.125976562500028, 30.665966796874955], + [10.05976562500004, 30.58007812500003], + [9.932519531250051, 30.42534179687496], + [9.895019531250028, 30.387304687500034], + [9.807421875000045, 30.342236328124983], + [9.637988281250074, 30.282324218750034], + [9.51875, 30.229394531249994], + [9.4580078125, 30.465380859375045], + [9.406054687500074, 30.666796875000045], + [9.363281250000057, 30.832910156250023], + [9.287890625000074, 31.125341796875006], + [9.224023437500023, 31.373681640624994], + [9.160253906250006, 31.621337890625], + [9.102343750000017, 31.846142578124955], + [9.044042968750034, 32.072363281250034], + [9.01894531250008, 32.10537109375002], + [8.844042968750074, 32.21210937499998], + [8.682910156250017, 32.31044921875005], + [8.515136718750028, 32.42231445312501], + [8.333398437500051, 32.54360351562502], + [8.304199218750028, 32.69628906250006], + [8.210937500000057, 32.92670898437501], + [8.1125, 33.055322265624994], + [8.075585937499994, 33.089062499999955], + [7.877246093750017, 33.172119140625], + [7.762695312500028, 33.23310546874998], + [7.731347656250051, 33.26850585937501], + [7.709179687500068, 33.36230468750003], + [7.627539062500034, 33.54863281249996], + [7.534375, 33.717919921874994], + [7.500195312500011, 33.83247070312498], + [7.495605468750057, 33.97651367187501], + [7.513867187500068, 34.080517578124955], + [7.554492187500074, 34.125], + [7.74853515625, 34.25449218750006], + [7.83828125000008, 34.410302734374994], + [7.949414062500068, 34.46870117187501], + [8.04560546875004, 34.5126953125], + [8.12343750000008, 34.56391601562504], + [8.19277343750008, 34.646289062500045], + [8.24560546875, 34.73408203124998], + [8.254687500000074, 34.828955078125034], + [8.276855468750057, 34.97949218749997], + [8.312109375000063, 35.084619140624994], + [8.394238281250011, 35.20385742187503], + [8.35986328125, 35.29960937499999], + [8.316406250000028, 35.403125], + [8.329003906250023, 35.58222656250001], + [8.318066406250011, 35.654931640624994], + [8.282910156250068, 35.71928710937496], + [8.247070312500028, 35.80180664062499], + [8.245703125000034, 35.870556640624955], + [8.280273437500057, 36.05097656250004], + [8.306738281250034, 36.188769531250045], + [8.348730468750063, 36.367968750000045], + [8.333984374999972, 36.418164062499955], + [8.302734375, 36.45561523437496], + [8.208789062500045, 36.4951171875], + [8.207617187500006, 36.518945312499994], + [8.230761718749989, 36.545263671875006], + [8.369628906250057, 36.63251953125004], + [8.444238281250051, 36.76074218750003], + [8.506738281249994, 36.7875], + [8.601269531250068, 36.83393554687504], + [8.597656250000057, 36.88388671874998], + [8.576562500000023, 36.93720703125001], + [8.823535156250074, 36.99760742187499], + [9.058886718750045, 37.15585937499998], + [9.141992187500023, 37.19462890624996], + [9.687988281250057, 37.34038085937499], + [9.758886718750006, 37.33027343749998], + [9.838476562500063, 37.308984375], + [9.815527343750006, 37.25463867187503], + [9.783984375000074, 37.21142578125003] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Turkey", + "iso_a2": "TR", + "iso_a3": "TUR", + "iso_n3": "792", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [25.970019531250045, 40.136328125], + [25.740234375000057, 40.10546875000003], + [25.6689453125, 40.13588867187502], + [25.74091796875001, 40.19628906249997], + [25.874804687500017, 40.23369140624996], + [25.918359375000023, 40.23798828125004], + [25.977050781250057, 40.177832031250034], + [25.970019531250045, 40.136328125] + ] + ], + [ + [ + [35.114062500000074, 41.95698242187504], + [35.12207031250003, 41.89111328125003], + [35.2091796875001, 41.79438476562504], + [35.297753906249994, 41.72851562500003], + [35.558007812499994, 41.63403320312506], + [35.919824218749994, 41.713720703125034], + [35.978125, 41.704833984375], + [36.05175781249997, 41.68256835937498], + [36.17919921875003, 41.4265625], + [36.27841796875006, 41.33613281250001], + [36.40537109375006, 41.27460937500001], + [36.509667968749994, 41.2625], + [36.58710937500004, 41.32666015625006], + [36.647070312500006, 41.3525390625], + [36.777734375, 41.36347656250001], + [36.99199218750002, 41.275390625], + [37.066210937500074, 41.184423828125034], + [37.43095703125002, 41.114111328125006], + [37.76562, 41.07890625000002], + [37.910058593749994, 41.001904296874955], + [38.38105468750004, 40.92451171875001], + [38.55693359375002, 40.93652343749997], + [38.852148437500006, 41.01767578124998], + [39.426367187500006, 41.10644531250003], + [39.80791015625002, 40.982519531250006], + [39.91113281250003, 40.96645507812502], + [40.00019531250004, 40.97714843749998], + [40.12841796874997, 40.94301757812505], + [40.26523437500006, 40.96132812500005], + [40.6875, 41.10742187499997], + [40.8195312500001, 41.19023437499996], + [40.95947265624997, 41.21162109374998], + [41.08359375000006, 41.26118164062504], + [41.41435546875002, 41.42363281249999], + [41.510058593750074, 41.51748046875002], + [41.57656250000005, 41.497314453125], + [41.70175781250006, 41.471582031249994], + [41.77939453125006, 41.44052734374998], + [41.823535156250074, 41.432373046875], + [41.92578125000003, 41.49565429687502], + [42.077734375, 41.494091796874955], + [42.2111328125001, 41.486718749999966], + [42.27998046875004, 41.475], + [42.364355468750006, 41.454003906249966], + [42.46640625, 41.43984375000002], + [42.50791015625006, 41.470068359375034], + [42.56738281249997, 41.55927734375001], + [42.590429687500006, 41.57070312500002], + [42.60683593750005, 41.57880859374998], + [42.682421875000074, 41.58574218749999], + [42.75410156250004, 41.57890625000002], + [42.787890625000074, 41.56372070312503], + [42.82167968750005, 41.49238281249998], + [42.90673828125003, 41.46684570312502], + [43.05712890625003, 41.35283203124996], + [43.149023437500006, 41.30712890624997], + [43.171289062499994, 41.28793945312498], + [43.141015625, 41.26484374999998], + [43.15283203124997, 41.23642578125006], + [43.20546875000005, 41.19916992187501], + [43.27929687499997, 41.185205078124994], + [43.35898437500006, 41.19013671875004], + [43.40234375000003, 41.17656250000002], + [43.43339843750002, 41.155517578125], + [43.44160156250004, 41.12597656250003], + [43.43945312500003, 41.10712890625001], + [43.45527343750004, 41.06469726562497], + [43.51748046875005, 41.00483398437504], + [43.59169921875005, 40.96821289062504], + [43.63164062500002, 40.929003906250045], + [43.6964843750001, 40.79414062500001], + [43.72265624999997, 40.71953124999999], + [43.71289062499997, 40.64775390625002], + [43.667871093749994, 40.574072265625034], + [43.56933593750003, 40.48237304687498], + [43.59375, 40.44404296875001], + [43.615820312500006, 40.39331054687497], + [43.60839843749997, 40.35659179687505], + [43.678125, 40.239306640625045], + [43.70986328125005, 40.16650390625003], + [43.68330078125004, 40.14965820312497], + [43.66621093750004, 40.12636718750002], + [43.79169921875004, 40.07026367187498], + [43.941992187500006, 40.023144531249955], + [44.00537109375003, 40.01411132812498], + [44.17802734375002, 40.035742187500034], + [44.28925781250004, 40.040380859375006], + [44.39960937500004, 39.995751953124966], + [44.56044921875005, 39.887597656249966], + [44.733789062499994, 39.746484375], + [44.76826171875004, 39.70351562500005], + [44.7833984375001, 39.684667968750006], + [44.81718750000002, 39.65043945312496], + [44.782128906249994, 39.65107421875001], + [44.725, 39.681738281250034], + [44.58710937500004, 39.76855468750006], + [44.516699218750006, 39.73125], + [44.455957031249994, 39.666748046875], + [44.3893554687501, 39.422119140625], + [44.33544921874997, 39.39604492187502], + [44.24042968750004, 39.39677734374999], + [44.12402343749997, 39.40522460937501], + [44.04394531249997, 39.39296875000002], + [44.02324218750002, 39.37744140625006], + [44.03378906250006, 39.35102539062498], + [44.057519531249994, 39.31083984374999], + [44.07431640625006, 39.25996093750001], + [44.07910156249997, 39.218310546875045], + [44.12128906250004, 39.18061523437501], + [44.17802734375002, 39.14482421874999], + [44.180566406249994, 39.108056640624966], + [44.171875, 39.05625], + [44.158789062500006, 39.01674804687502], + [44.14453124999997, 38.994384765625], + [44.170800781249994, 38.934375], + [44.23242187500003, 38.86323242187501], + [44.27167968750004, 38.83603515625006], + [44.25703125000004, 38.70063476562501], + [44.280175781249994, 38.64067382812496], + [44.29785156250003, 38.557812499999955], + [44.29082031250002, 38.420117187499955], + [44.2985351562501, 38.38627929687499], + [44.31962890625002, 38.374707031249955], + [44.37578125000002, 38.36958007812498], + [44.43085937500004, 38.356787109375034], + [44.4499023437501, 38.33422851562506], + [44.44960937500005, 38.317773437499994], + [44.38085937499997, 38.25458984374998], + [44.3727539062501, 38.209716796875], + [44.34892578125002, 38.146484375], + [44.329394531250074, 38.109277343749966], + [44.26796875, 38.038818359375], + [44.22890625, 37.967187499999966], + [44.211328125, 37.908056640625006], + [44.22294921875002, 37.88017578125002], + [44.33623046875002, 37.87177734374998], + [44.39775390625002, 37.82924804687502], + [44.56123046875004, 37.74462890625003], + [44.589941406250006, 37.710351562499966], + [44.5453125, 37.65815429687498], + [44.54609375000004, 37.63632812499998], + [44.56718750000002, 37.60864257812503], + [44.57714843749997, 37.56020507812502], + [44.573144531249994, 37.50639648437499], + [44.574023437500074, 37.435400390625006], + [44.60410156250006, 37.42373046875002], + [44.71513671875002, 37.35712890625004], + [44.79414062500004, 37.290380859375034], + [44.79677734375005, 37.269775390625], + [44.75830078125003, 37.21708984375002], + [44.76669921875006, 37.15634765624998], + [44.76513671875003, 37.142431640625006], + [44.73095703124997, 37.16528320312503], + [44.66933593750005, 37.17358398437503], + [44.60595703124997, 37.176025390625], + [44.566015625, 37.15825195312502], + [44.495996093749994, 37.11054687499998], + [44.401953125, 37.05849609375002], + [44.325585937499994, 37.0107421875], + [44.28183593750006, 36.97802734374997], + [44.24570312500006, 36.983300781249994], + [44.2174804687501, 37.01186523437505], + [44.20166015624997, 37.05180664062502], + [44.208398437499994, 37.20263671875], + [44.191796875, 37.249853515625034], + [44.15625, 37.28295898437503], + [44.11445312500004, 37.30185546875006], + [44.06464843750004, 37.31245117187498], + [44.01318359375003, 37.313525390625045], + [43.94003906250006, 37.269287109375], + [43.83642578124997, 37.223535156249994], + [43.67578125000003, 37.227246093749955], + [43.56796875, 37.23583984375003], + [43.51582031250004, 37.24453125000002], + [43.306738281250006, 37.31464843749998], + [43.263085937499994, 37.316503906250006], + [43.18515625, 37.34487304687502], + [43.09248046875004, 37.36738281249998], + [42.936621093750006, 37.32475585937502], + [42.86914062500003, 37.33491210937504], + [42.77460937500004, 37.371875], + [42.74111328125005, 37.361914062500034], + [42.6354492187501, 37.249267578125], + [42.45585937500002, 37.128710937500045], + [42.358984375, 37.10859375000004], + [42.312890625, 37.22958984374998], + [42.26855468749997, 37.276562499999955], + [42.24755859375003, 37.28222656250006], + [42.20273437500006, 37.297265625], + [42.16787109375005, 37.28862304687502], + [42.059863281250074, 37.2060546875], + [41.886816406250006, 37.156396484374994], + [41.74355468750005, 37.12612304687505], + [41.51552734375005, 37.08916015624999], + [41.33955078125004, 37.07080078125006], + [41.26464843749997, 37.06933593750003], + [41.102148437500006, 37.08588867187501], + [40.95888671875005, 37.10917968749996], + [40.815625, 37.10815429687503], + [40.70566406250006, 37.09770507812502], + [40.4503906250001, 37.00888671875006], + [40.016406250000074, 36.82607421875002], + [39.68652343749997, 36.73862304687506], + [39.50146484374997, 36.702246093750034], + [39.35664062500004, 36.68159179687498], + [39.10839843749997, 36.68056640625005], + [38.90644531250004, 36.69467773437498], + [38.76660156249997, 36.69311523437503], + [38.68886718750005, 36.71508789062497], + [38.57802734375005, 36.789111328125045], + [38.44375, 36.86225585937501], + [38.38398437500004, 36.879248046875034], + [38.3058593750001, 36.89335937499996], + [38.19169921875002, 36.90156250000004], + [37.90664062500005, 36.79462890625001], + [37.81796875, 36.765576171874955], + [37.7203125, 36.74370117187502], + [37.52353515625006, 36.678320312500034], + [37.436328125000074, 36.643310546875], + [37.327050781249994, 36.64658203125006], + [37.18740234375005, 36.655908203124994], + [37.066210937500074, 36.652636718750045], + [36.98535156250003, 36.70239257812506], + [36.941796875, 36.758398437500006], + [36.77656250000004, 36.79267578124998], + [36.65859375000005, 36.80253906250002], + [36.62841796875003, 36.777685546875034], + [36.596875, 36.70136718750001], + [36.546679687500074, 36.50634765625], + [36.5375, 36.457421874999966], + [36.64140625000002, 36.263525390625006], + [36.63671874999997, 36.233984375], + [36.562402343749994, 36.22392578125002], + [36.47705078125003, 36.22070312499997], + [36.42148437500006, 36.203466796875006], + [36.375390625, 36.171240234375034], + [36.347558593749994, 36.003515625000034], + [36.248828125000074, 35.97270507812499], + [36.20195312500002, 35.93754882812502], + [36.15361328125002, 35.83388671875005], + [36.12734375, 35.831445312499994], + [35.967578125000074, 35.91005859375002], + [35.89267578125006, 35.91655273437502], + [35.956933593749994, 35.998144531250006], + [35.887109375, 36.15908203125002], + [35.81093750000005, 36.30986328125002], + [35.88281250000003, 36.406347656250034], + [36.03173828124997, 36.52270507812503], + [36.18847656250003, 36.65898437499999], + [36.18818359375004, 36.743066406249994], + [36.180078125, 36.807226562500006], + [36.13515625, 36.85161132812499], + [36.048925781250006, 36.91059570312501], + [35.90458984375002, 36.84760742187498], + [35.801562500000074, 36.77807617187503], + [35.73427734375005, 36.76396484374999], + [35.66113281249997, 36.72431640624998], + [35.625585937500006, 36.65278320312498], + [35.537402343750074, 36.59702148437498], + [35.393164062500006, 36.57519531249997], + [35.17617187500005, 36.63486328125006], + [34.943164062500074, 36.725683593750006], + [34.81123046875004, 36.79926757812498], + [34.70361328125003, 36.816796875], + [34.601367187500074, 36.78447265624999], + [34.299609375000074, 36.60419921875004], + [34.02343750000003, 36.34077148437501], + [33.95488281250002, 36.29521484374996], + [33.694726562499994, 36.18198242187498], + [33.522753906250074, 36.14399414062498], + [33.441796875, 36.15283203125], + [33.099511718749994, 36.10297851562498], + [32.92949218750002, 36.095703125], + [32.794824218749994, 36.03588867187497], + [32.533789062500006, 36.10073242187505], + [32.37773437500002, 36.18364257812496], + [32.283789062500006, 36.26787109374999], + [32.13056640625004, 36.449121093749966], + [32.02197265625003, 36.53530273437502], + [31.777929687500063, 36.61279296875], + [31.35253906249997, 36.80107421874999], + [31.240625, 36.82172851562504], + [30.950292968750006, 36.84868164062502], + [30.64404296874997, 36.86567382812501], + [30.58203124999997, 36.79716796874999], + [30.55849609375005, 36.525830078124955], + [30.506054687500097, 36.45112304687501], + [30.48359375000004, 36.310400390625034], + [30.446093750000074, 36.269873046875034], + [30.387304687500063, 36.243261718750034], + [30.29541015625003, 36.287695312500034], + [30.23164062500004, 36.30732421875004], + [30.08320312500004, 36.249365234375034], + [29.789257812500097, 36.168066406250006], + [29.6890625, 36.15668945312498], + [29.34833984375004, 36.25883789062502], + [29.22363281249997, 36.32446289062497], + [29.14326171875001, 36.39721679687506], + [29.11611328125008, 36.520117187500034], + [29.065527343750006, 36.590087890625], + [29.05810546875, 36.63813476562501], + [29.03828125000004, 36.693457031250006], + [28.96962890625008, 36.71533203125003], + [28.89589843750008, 36.67358398437506], + [28.816894531250057, 36.67529296875003], + [28.717675781249994, 36.70087890625001], + [28.48359375000001, 36.803808593750006], + [28.303710937500057, 36.81196289062498], + [28.195605468750045, 36.68632812499999], + [28.111523437500068, 36.64638671875002], + [28.01943359375005, 36.63447265624998], + [28.01416015625003, 36.67021484374999], + [28.083984375000057, 36.75146484375], + [27.803808593749977, 36.736474609374966], + [27.655859375000034, 36.67460937499999], + [27.54042968750008, 36.684228515624994], + [27.453906250000017, 36.712158203125], + [27.466894531250006, 36.74633789062503], + [27.55468750000003, 36.758886718750006], + [27.63085937500003, 36.78666992187499], + [27.93447265625005, 36.80927734374998], + [28.00537109375003, 36.83198242187498], + [28.08300781250003, 36.920263671875034], + [28.224414062500045, 36.99638671874999], + [28.242382812500068, 37.029052734375], + [28.13369140625005, 37.02949218749998], + [27.668359375000023, 37.007421875000034], + [27.348925781250045, 37.01958007812502], + [27.311035156250057, 36.98188476562498], + [27.262988281250045, 36.97656250000003], + [27.249707031249983, 37.07915039062499], + [27.30019531250005, 37.12685546875002], + [27.368164062500057, 37.122412109375006], + [27.53505859375005, 37.16386718750002], + [27.520117187500006, 37.24912109375006], + [27.40058593750001, 37.30673828124998], + [27.376269531250017, 37.340722656249966], + [27.28955078125003, 37.34868164062499], + [27.21923828125, 37.38916015625], + [27.203906250000074, 37.49140625000004], + [27.147949218750057, 37.60361328124998], + [27.06796875, 37.65791015625004], + [27.077832031250068, 37.687695312499955], + [27.224414062500074, 37.725439453125006], + [27.25478515625005, 37.88232421875], + [27.23242187500003, 37.978662109374994], + [27.15869140625, 37.98686523437499], + [26.94384765625003, 38.06289062500002], + [26.878613281250068, 38.05478515625006], + [26.807421875000045, 38.13833007812502], + [26.68281250000004, 38.198339843750006], + [26.62109375, 38.176367187500034], + [26.582421875000023, 38.149267578125034], + [26.524707031250074, 38.16225585937502], + [26.427929687499983, 38.21435546874997], + [26.33291015625008, 38.24248046875002], + [26.29072265625001, 38.27719726562498], + [26.34365234375005, 38.37006835937498], + [26.41640625000005, 38.36787109374998], + [26.4296875, 38.44062], + [26.37226562500001, 38.561914062499994], + [26.377832031249994, 38.624169921874966], + [26.44130859375005, 38.64121093749998], + [26.513574218750023, 38.62949218749998], + [26.586523437500063, 38.557031249999966], + [26.61035156250003, 38.48691406249998], + [26.595019531250017, 38.41860351562502], + [26.64130859375004, 38.35244140625002], + [26.67421875000008, 38.33574218750002], + [26.696386718750063, 38.40537109374998], + [26.727343750000074, 38.41860351562502], + [26.769921875000023, 38.38818359375003], + [26.861425781250034, 38.37294921875005], + [27.09863281250003, 38.415722656249955], + [27.14423828125001, 38.45195312499996], + [26.97041015625001, 38.447851562500034], + [26.906835937500034, 38.48173828124999], + [26.837792968749994, 38.55756835937498], + [26.79531250000005, 38.62641601562498], + [26.787695312500006, 38.66020507812502], + [26.763671875, 38.709619140624966], + [26.790136718750063, 38.73608398437503], + [26.90917968749997, 38.77578125000005], + [27.013671875000057, 38.88686523437502], + [26.97011718750005, 38.919042968750006], + [26.920312500000023, 38.934228515624994], + [26.86621093750003, 38.922949218750006], + [26.814941406250057, 38.96098632812502], + [26.80830078125004, 39.01391601562497], + [26.84931640625004, 39.05673828124998], + [26.853613281250034, 39.115625], + [26.719335937500034, 39.260644531249966], + [26.68183593750004, 39.292236328125], + [26.710742187500045, 39.33964843749999], + [26.813281250000074, 39.419042968750006], + [26.910937500000074, 39.51733398437503], + [26.89921874999999, 39.549658203125034], + [26.82705078125005, 39.562890625], + [26.484082031250068, 39.52070312500001], + [26.35078125000001, 39.48408203125001], + [26.113085937500074, 39.46738281249998], + [26.095996093750045, 39.52080078125002], + [26.101367187500074, 39.56894531249998], + [26.154687500000023, 39.656640625], + [26.14980468750008, 39.87285156249999], + [26.18134765625004, 39.99008789062498], + [26.313378906250023, 40.025], + [26.475390625000074, 40.197265625], + [26.738085937500045, 40.40024414062506], + [27.01210937500008, 40.39633789062506], + [27.121679687500034, 40.45234375000001], + [27.28457031250008, 40.45561523437496], + [27.314160156250068, 40.414892578125006], + [27.332617187500006, 40.37592773437498], + [27.4755859375, 40.319921875000034], + [27.72802734375, 40.32880859374998], + [27.789355468750074, 40.35087890625002], + [27.84853515625005, 40.38173828125002], + [27.73183593750008, 40.48149414062499], + [27.769140625000034, 40.509619140625034], + [27.87490234375008, 40.512939453125], + [27.989550781250074, 40.48945312500001], + [27.99482421875001, 40.46660156249999], + [27.96435546875, 40.435302734375], + [27.928906250000068, 40.38041992187502], + [27.96259765625001, 40.369873046875], + [28.2890625, 40.40302734374998], + [28.63027343750005, 40.37646484375], + [28.738867187500063, 40.390869140625], + [29.00712890624999, 40.389746093750034], + [29.05517578125003, 40.424169921875034], + [28.974023437499994, 40.46738281250006], + [28.894628906250006, 40.482421875], + [28.84121093750005, 40.50346679687502], + [28.787890625000017, 40.534033203125034], + [28.95800781250003, 40.63056640624998], + [29.05410156250008, 40.64912109375004], + [29.507617187500017, 40.70839843750002], + [29.84492187500004, 40.738085937500045], + [29.849218750000063, 40.760107421875006], + [29.800585937500017, 40.76015625000002], + [29.36474609375003, 40.80927734374998], + [29.25976562499997, 40.847314453124994], + [29.113867187499977, 40.93784179687506], + [29.08222656250001, 40.963427734375045], + [29.045507812500006, 41.00756835937506], + [29.06738281250003, 41.101660156250034], + [29.094335937500006, 41.17724609374997], + [29.14814453125004, 41.221044921875034], + [29.32226562499997, 41.227734374999955], + [29.91933593750005, 41.15083007812501], + [30.34492187500004, 41.196923828124994], + [30.81005859374997, 41.084863281249994], + [31.25488281249997, 41.10761718750001], + [31.34667968750003, 41.157910156249955], + [31.45800781249997, 41.32001953125004], + [32.08642578125003, 41.58920898437498], + [32.306445312500074, 41.72958984374998], + [32.54218750000004, 41.806396484375], + [32.94667968750005, 41.891748046874966], + [33.284765625, 42.004589843749955], + [33.38134765625003, 42.01757812500003], + [34.19296875, 41.96367187499996], + [34.75048828124997, 41.95683593749999], + [35.006445312500006, 42.06328125000002], + [35.15488281250006, 42.02753906250001], + [35.14101562500005, 41.989501953125], + [35.114062500000074, 41.95698242187504] + ] + ], + [ + [ + [27.362890625000034, 42.02504882812505], + [27.47480468750001, 41.946875], + [27.53486328125001, 41.92080078125002], + [27.579882812500017, 41.93291015625002], + [27.661132812500057, 41.96132812500002], + [27.738867187500006, 41.96152343749998], + [27.80166015625008, 41.95654296875003], + [27.831933593750023, 41.981298828125006], + [27.879199218750074, 41.98662109375002], + [28.014453125000017, 41.96904296874999], + [27.98730468749997, 41.85488281250002], + [28.05029296875003, 41.729150390624966], + [28.197851562500063, 41.55449218750002], + [28.34638671875004, 41.46635742187499], + [28.946777343750057, 41.248388671875006], + [29.057226562500006, 41.22973632812503], + [29.032128906250023, 41.140478515625034], + [28.99599609375005, 41.061132812500034], + [28.95625, 41.008203125], + [28.780371093749977, 40.97416992187499], + [28.29492187500003, 41.07148437500001], + [28.172167968750074, 41.08071289062502], + [28.085546875, 41.06132812499999], + [27.925195312500023, 40.99057617187506], + [27.747363281250045, 41.01328124999998], + [27.49941406250005, 40.97314453124997], + [27.43017578125, 40.839941406250006], + [27.258007812499983, 40.687353515625006], + [26.974609375, 40.56401367187502], + [26.772070312500034, 40.498046875], + [26.467968750000068, 40.26147460937503], + [26.329980468750023, 40.123388671875034], + [26.271777343750074, 40.096582031249994], + [26.202734375000034, 40.07539062500004], + [26.22597656250005, 40.141699218750034], + [26.260156250000023, 40.20239257812497], + [26.252343750000023, 40.24814453125006], + [26.25380859375005, 40.31469726562503], + [26.355273437500017, 40.39023437500006], + [26.447460937500068, 40.44501953125001], + [26.720312500000063, 40.54423828124999], + [26.792089843750034, 40.626611328124994], + [26.578125, 40.62465820312502], + [26.360937500000034, 40.60634765625002], + [26.224218750000063, 40.61806640625002], + [26.10546875000003, 40.61132812499997], + [26.06777343750008, 40.68339843750002], + [26.03896484375008, 40.726757812499955], + [26.069726562500023, 40.74028320312496], + [26.109179687500074, 40.749658203124994], + [26.178906250000068, 40.826513671875034], + [26.241210937500057, 40.88320312500002], + [26.331054687500057, 40.954492187499994], + [26.354101562500063, 40.99707031250006], + [26.354101562500063, 41.036767578124966], + [26.332617187500034, 41.06430664062498], + [26.328417968750074, 41.09702148437498], + [26.32568359375003, 41.14326171874998], + [26.330664062499977, 41.23876953125], + [26.536425781250074, 41.343115234375034], + [26.60234374999999, 41.354150390624966], + [26.62490234375008, 41.401757812499994], + [26.609765625, 41.51215820312501], + [26.581347656250074, 41.60126953125004], + [26.544531250000034, 41.60722656250002], + [26.49501953125008, 41.63325195312498], + [26.4625, 41.66337890624999], + [26.410546875, 41.696337890625045], + [26.320898437500034, 41.716552734375], + [26.317968750000063, 41.744677734375045], + [26.327246093750006, 41.77280273437498], + [26.3603515625, 41.80156249999999], + [26.51142578125004, 41.82636718749998], + [26.52929687500003, 41.84667968750003], + [26.549707031250023, 41.896728515625], + [26.5796875, 41.947949218749955], + [26.615332031250063, 41.964892578125045], + [26.67919921875003, 41.96333007812498], + [26.800390625000034, 41.97514648437499], + [26.884863281250006, 41.99184570312502], + [26.96875, 42.02685546875006], + [27.01171875, 42.05864257812496], + [27.193359375000057, 42.07709960937498], + [27.24433593750004, 42.09326171875], + [27.294921875000057, 42.079541015624955], + [27.362890625000034, 42.02504882812505] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Taiwan", + "iso_a2": "TW", + "iso_a3": "TWN", + "iso_n3": "158", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [118.4074218750001, 24.522119140624994], + [118.45117187500003, 24.45556640625003], + [118.43271484375006, 24.414355468750074], + [118.29511718750004, 24.436328125000017], + [118.28730468750004, 24.476611328125045], + [118.33935546874997, 24.46914062500005], + [118.4074218750001, 24.522119140624994] + ] + ], + [ + [ + [121.00878906249997, 22.62036132812497], + [120.946875, 22.503076171874966], + [120.89736328125, 22.379150390625057], + [120.87734375, 22.26220703125003], + [120.87841796874997, 22.141552734374955], + [120.86425781250003, 22.032666015624983], + [120.83984375000003, 21.925], + [120.74277343750006, 21.956005859374983], + [120.6901367187501, 22.033105468749966], + [120.67802734375002, 22.15966796875], + [120.60761718750004, 22.312548828125074], + [120.58125, 22.35639648437504], + [120.47978515625002, 22.44189453125003], + [120.38759765625, 22.484521484375023], + [120.31621093750002, 22.547607421875], + [120.32558593750005, 22.54243164062501], + [120.27285156250005, 22.62744140625], + [120.2328125, 22.71791992187505], + [120.1500976562501, 22.97490234374999], + [120.12158203124997, 23.03701171875005], + [120.0833984375, 23.093701171874955], + [120.0724609375001, 23.149755859375006], + [120.08554687500006, 23.212060546874994], + [120.12119140625006, 23.305175781250057], + [120.14296875, 23.399072265624994], + [120.12539062500005, 23.526611328125057], + [120.13212890625007, 23.652929687500034], + [120.15898437500002, 23.70903320312499], + [120.62968750000002, 24.478515625], + [120.75742187500012, 24.642285156249955], + [120.83593750000003, 24.72265625], + [120.90156250000004, 24.813281250000074], + [120.9640625000001, 24.927978515625], + [121.040625, 25.032812500000034], + [121.09541015625004, 25.065087890625023], + [121.36542968750004, 25.15917968750003], + [121.449609375, 25.24902343750003], + [121.51708984374997, 25.276904296875017], + [121.59365234375, 25.275341796874983], + [121.64306640624997, 25.23242187500003], + [121.68710937500006, 25.181591796874955], + [121.73330078125005, 25.154101562500045], + [121.85283203125007, 25.104443359374983], + [121.90517578125, 25.056445312500045], + [121.92900390625002, 24.973730468749977], + [121.85625, 24.895263671875], + [121.82011718750007, 24.824511718750045], + [121.81337890625, 24.74633789062503], + [121.8263671875001, 24.64052734375005], + [121.82802734375, 24.534375], + [121.7370117187501, 24.285253906250063], + [121.6393554687501, 24.130078124999983], + [121.61308593750007, 24.05273437500003], + [121.5833984375, 23.860888671875017], + [121.52607421875004, 23.668261718750045], + [121.47714843750006, 23.42407226562503], + [121.39746093750003, 23.172509765625023], + [121.35224609375004, 23.067285156249994], + [121.29589843750003, 22.96660156249999], + [121.16123046875012, 22.776367187500057], + [121.00878906249997, 22.62036132812497] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Tanzania", + "iso_a2": "TZ", + "iso_a3": "TZA", + "iso_n3": "834", + "continent": "Africa" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [39.711328125, -7.977441406250023], + [39.65722656249997, -7.990527343750017], + [39.63613281250005, -7.977832031250017], + [39.602929687499994, -7.936132812499949], + [39.66064453124997, -7.900585937499997], + [39.71660156250002, -7.831542968749957], + [39.846582031249994, -7.730273437500031], + [39.890917968750074, -7.663476562500009], + [39.907128906249994, -7.649218750000031], + [39.89775390625002, -7.728125], + [39.82441406250004, -7.900683593750017], + [39.76181640625006, -7.911914062499989], + [39.711328125, -7.977441406250023] + ] + ], + [ + [ + [39.496484375, -6.174609375], + [39.573046875000074, -6.387402343750011], + [39.5631835937501, -6.427246093749957], + [39.509179687499994, -6.451660156249957], + [39.48095703124997, -6.45371093750002], + [39.44736328125006, -6.419726562500017], + [39.42363281250002, -6.347851562500026], + [39.382617187500074, -6.364941406249955], + [39.31269531250004, -6.279101562499974], + [39.243457031250074, -6.275], + [39.18232421875004, -6.172558593750026], + [39.20625, -6.083203125000026], + [39.19238281249997, -5.931054687500023], + [39.26699218750005, -5.85312], + [39.308984375, -5.721972656249974], + [39.357226562500074, -5.811523437500014], + [39.368261718750006, -5.951171874999957], + [39.4333007812501, -6.115429687500026], + [39.487890625, -6.166210937499969], + [39.496484375, -6.174609375] + ] + ], + [ + [ + [39.86503906250002, -4.906152343750037], + [39.870996093749994, -4.95654296875], + [39.8556640625001, -5.004003906249991], + [39.85898437500006, -5.155175781249966], + [39.85302734374997, -5.255468749999977], + [39.79589843749997, -5.394433593750037], + [39.74931640625002, -5.443847656249986], + [39.707617187500006, -5.429492187499989], + [39.6734375, -5.406640625000037], + [39.646777343750074, -5.368554687500009], + [39.70107421875005, -5.113671875000037], + [39.6734375, -4.927050781250031], + [39.78076171875003, -4.944921875000034], + [39.86503906250002, -4.906152343750037] + ] + ], + [ + [ + [30.82363281250005, -0.999023437499943], + [30.84472656250003, -1.002050781250034], + [30.94970703124997, -1.002050781250034], + [31.127539062500063, -1.002050781250034], + [31.305273437500063, -1.002050781250034], + [31.48310546875004, -1.002050781250034], + [31.660839843750097, -1.002050781250034], + [31.83857421875004, -1.002050781250034], + [32.016406250000074, -1.002050781250034], + [32.19414062500002, -1.002050781250034], + [32.371875, -1.002050781250034], + [32.549707031249994, -1.002050781250034], + [32.72744140625005, -1.002050781250034], + [32.905175781249994, -1.002050781250034], + [33.08300781250003, -1.002050781250034], + [33.26074218749997, -1.002050781250034], + [33.43847656249997, -1.002050781250034], + [33.616308593750006, -1.002050781250034], + [33.794042968750006, -1.002050781250034], + [33.90322265625005, -1.002050781250034], + [33.979394531249994, -1.002050781250034], + [34.051562500000074, -1.03984375], + [34.13164062500002, -1.084570312499963], + [34.34472656250003, -1.203613281249972], + [34.55791015625002, -1.32255859374996], + [34.77109375, -1.441601562499969], + [34.984277343749994, -1.560546874999943], + [35.1974609375001, -1.679589843749952], + [35.410546875, -1.79863281249996], + [35.6237304687501, -1.917578125000034], + [35.83691406249997, -2.036621093749943], + [36.05, -2.155664062499952], + [36.26308593750005, -2.274609375000026], + [36.476367187500074, -2.393554687500014], + [36.68945312500003, -2.512597656250023], + [36.90263671875002, -2.631640625000017], + [37.11582031250006, -2.750585937500006], + [37.32900390625005, -2.869628906250014], + [37.54218750000004, -2.988574218750003], + [37.643847656250074, -3.045410156250028], + [37.65917968749997, -3.070019531249983], + [37.676855468750006, -3.17841796875004], + [37.68798828124997, -3.246191406249991], + [37.68183593750004, -3.305761718749963], + [37.625390625, -3.407226562500028], + [37.608691406250074, -3.460253906249989], + [37.608203125000074, -3.497070312500028], + [37.62207031249997, -3.51152343749996], + [37.6701171875001, -3.516796874999969], + [37.71103515625006, -3.540820312499974], + [37.72617187500006, -3.559765625000011], + [37.757421875, -3.636132812500023], + [37.79726562500005, -3.674414062500006], + [37.887304687500006, -3.739257812499986], + [38.04082031250002, -3.84980468750004], + [38.19433593750003, -3.960351562499994], + [38.34785156250004, -4.070898437499963], + [38.50136718750005, -4.181445312500017], + [38.65488281250006, -4.291894531249952], + [38.808398437500074, -4.402441406250006], + [38.96191406249997, -4.51298828124996], + [39.1154296875001, -4.623535156250014], + [39.19013671875004, -4.677246093749943], + [39.221777343750006, -4.692382812500014], + [39.20185546875004, -4.776464843749991], + [39.1232421875001, -4.980468749999986], + [39.11875, -5.065429687499986], + [39.087988281250006, -5.165429687500009], + [39.0583007812501, -5.231542968749977], + [38.97822265625004, -5.518554687500014], + [38.911035156249994, -5.625976562499957], + [38.81923828125005, -5.877636718749983], + [38.80468750000003, -6.070117187500031], + [38.85527343750002, -6.204882812499946], + [38.87402343750003, -6.33125], + [38.98144531249997, -6.455078125000028], + [39.06738281249997, -6.499316406249974], + [39.12548828125003, -6.555957031249974], + [39.228417968749994, -6.685253906250026], + [39.28730468750004, -6.814941406249972], + [39.47236328125004, -6.878613281249983], + [39.5460937500001, -7.024023437500034], + [39.51923828125004, -7.124121093749991], + [39.43339843750002, -7.207031250000014], + [39.353125, -7.341406250000034], + [39.288476562499994, -7.517871093750003], + [39.28701171875005, -7.787695312500006], + [39.33046875000005, -7.746679687499991], + [39.4284179687501, -7.81279296874996], + [39.441015625, -8.011523437499946], + [39.34003906250004, -8.242871093750011], + [39.308984375, -8.350976562500009], + [39.304003906250074, -8.44384765625], + [39.37734375, -8.720800781250034], + [39.48837890625006, -8.861816406249986], + [39.48007812500006, -8.905957031249997], + [39.451269531250006, -8.94296875], + [39.64130859375004, -9.19248046875002], + [39.62548828124997, -9.409472656250003], + [39.69667968750005, -9.57841796874996], + [39.727929687499994, -9.724804687500026], + [39.77480468750005, -9.837109374999983], + [39.783789062500006, -9.914550781249957], + [39.72519531250006, -10.000488281249972], + [39.86376953124997, -10.021972656249986], + [39.94521484375005, -10.092285156250014], + [39.98359375000004, -10.159570312499952], + [40.0836914062501, -10.15664062499998], + [40.13789062500004, -10.202636718750028], + [40.21601562500004, -10.240625], + [40.38876953125006, -10.353515624999943], + [40.43554687500003, -10.410253906249963], + [40.452539062499994, -10.442968749999963], + [40.46357421875004, -10.464355468749972], + [40.34746093750002, -10.551562499999974], + [40.16621093750004, -10.6875], + [39.988671875, -10.820800781250014], + [39.81708984375004, -10.912402343750031], + [39.694433593750006, -10.954785156249955], + [39.56347656249997, -10.978515625], + [39.43916015625004, -11.034570312499966], + [39.321582031250074, -11.122558593749943], + [39.17099609375006, -11.166894531250009], + [38.9875, -11.167285156250003], + [38.79472656250002, -11.228906250000023], + [38.60332031250002, -11.345312500000034], + [38.49179687500006, -11.413281250000026], + [38.31513671875004, -11.311132812499991], + [38.17656250000002, -11.278710937499966], + [38.0172851562501, -11.282128906250037], + [37.92021484375002, -11.294726562500031], + [37.88535156250006, -11.316699218749974], + [37.855078125, -11.379101562499983], + [37.8292968750001, -11.481933593749972], + [37.72480468750004, -11.58066406250002], + [37.54169921875004, -11.675097656249974], + [37.37285156250002, -11.710449218749986], + [37.21835937500006, -11.6865234375], + [37.113867187500006, -11.647167968749969], + [37.05917968750006, -11.592187499999966], + [36.97890625000005, -11.566992187499977], + [36.87265625000006, -11.571289062499972], + [36.77109375000006, -11.610351562500028], + [36.67382812499997, -11.684277343749983], + [36.51865234375006, -11.716210937500009], + [36.30566406250003, -11.706347656249946], + [36.191308593749994, -11.670703124999974], + [36.17548828125004, -11.60927734374998], + [36.08222656250004, -11.537304687499969], + [35.91132812500004, -11.45468750000002], + [35.785449218750074, -11.452929687500017], + [35.70468750000006, -11.53212890624998], + [35.63095703125006, -11.582031250000028], + [35.564355468749994, -11.602343749999989], + [35.50439453125003, -11.60478515624996], + [35.45136718750004, -11.589550781249955], + [35.418261718750074, -11.583203125], + [35.18261718750003, -11.574804687499977], + [34.95947265625003, -11.578125], + [34.95263671874997, -11.54375], + [34.93701171874997, -11.463476562500034], + [34.890625, -11.3935546875], + [34.85058593749997, -11.351953124999966], + [34.80087890625006, -11.34091796875002], + [34.77382812500005, -11.341699218750009], + [34.75214843750004, -11.309472656250009], + [34.726464843749994, -11.238183593749966], + [34.68847656249997, -11.177441406250026], + [34.638085937499994, -11.127148437499997], + [34.60791015624997, -11.08046875], + [34.59765625000003, -11.0375], + [34.60566406250004, -10.990234374999986], + [34.65234374999997, -10.87285156249996], + [34.66708984375006, -10.792480468750028], + [34.66181640625004, -10.71005859375002], + [34.63652343750002, -10.625585937499949], + [34.58359375, -10.525097656249997], + [34.58955078125004, -10.496191406249963], + [34.571582031250074, -10.427636718750037], + [34.56972656250005, -10.379687499999946], + [34.579980468749994, -10.319824218750014], + [34.56992187500006, -10.241113281249966], + [34.524218750000074, -10.073144531250023], + [34.524218750000074, -10.03017578124998], + [34.475976562499994, -9.948828125], + [34.32783203125004, -9.756542968750011], + [34.32089843750006, -9.731542968749977], + [34.08857421875004, -9.537792968750026], + [33.99560546875003, -9.495410156250003], + [33.96210937500004, -9.531738281249943], + [33.949609375, -9.565332031249952], + [33.959375, -9.62734375], + [33.953710937500006, -9.658203124999957], + [33.943945312500006, -9.67216796874996], + [33.88886718750004, -9.670117187499983], + [33.8541992187501, -9.662988281249952], + [33.766210937500006, -9.6109375], + [33.69765625, -9.598144531249972], + [33.52753906250004, -9.60751953125002], + [33.46777343749997, -9.61972656250002], + [33.42089843750003, -9.608007812500034], + [33.330859375000074, -9.519140624999963], + [33.22529296875004, -9.500488281249972], + [33.13046875, -9.495898437500017], + [32.974023437499994, -9.395019531249986], + [32.937304687500074, -9.39970703124996], + [32.91992187500003, -9.407421875000026], + [32.86328125000003, -9.380859375000028], + [32.75664062500002, -9.322265625], + [32.60839843749997, -9.270507812500014], + [32.48710937500002, -9.21269531249996], + [32.43320312500006, -9.156347656250034], + [32.31933593750003, -9.134863281250006], + [32.22089843750004, -9.125585937499977], + [32.12978515625005, -9.073339843749991], + [32.0353515625001, -9.067382812500028], + [31.94257812500004, -9.05400390624996], + [31.92187, -9.019433593750023], + [31.91865234375004, -8.942187500000017], + [31.886132812499994, -8.921972656249977], + [31.81806640625004, -8.902246093749952], + [31.744726562500063, -8.90322265624998], + [31.7, -8.914355468750031], + [31.673632812500017, -8.908789062499963], + [31.61279296874997, -8.863281250000014], + [31.55625, -8.80546875], + [31.534863281250097, -8.71328125], + [31.44921874999997, -8.65390625], + [31.35058593750003, -8.607031250000034], + [31.07636718750004, -8.611914062499963], + [31.033398437500097, -8.597656249999986], + [30.968359375000063, -8.550976562499983], + [30.89199218750005, -8.473730468749963], + [30.830664062500063, -8.385546875000031], + [30.776757812499994, -8.265820312499969], + [30.75117187500004, -8.193652343750017], + [30.720898437500097, -8.104394531250037], + [30.65380859375003, -7.970898437500026], + [30.558886718750017, -7.781933593749983], + [30.485644531250017, -7.627148437499983], + [30.40673828125003, -7.460644531249983], + [30.37451171874997, -7.338671875], + [30.313183593750097, -7.203710937499949], + [30.212695312500017, -7.037890625000017], + [30.16181640625004, -6.973046875000037], + [30.10625, -6.915039062500028], + [29.961816406249994, -6.80312], + [29.798144531250017, -6.691894531249957], + [29.70966796875004, -6.61689453125004], + [29.590625, -6.394433593750023], + [29.540820312500017, -6.313867187500037], + [29.50625, -6.172070312500011], + [29.480078125, -6.025], + [29.490820312500063, -5.96542968750002], + [29.59638671875004, -5.775976562499963], + [29.60703125, -5.722656250000028], + [29.59414062500005, -5.650781250000037], + [29.542382812499994, -5.499804687500017], + [29.503710937500017, -5.400976562499949], + [29.47646484375005, -5.316601562499997], + [29.42011718750004, -5.17617187499998], + [29.34277343749997, -4.983105468749997], + [29.32343750000004, -4.898828124999966], + [29.32568359374997, -4.835644531249969], + [29.367578125, -4.668847656250009], + [29.404199218749994, -4.49667968750002], + [29.40322265625005, -4.449316406249963], + [29.71777343750003, -4.45585937499996], + [29.76953124999997, -4.418066406249991], + [29.94726562499997, -4.307324218749983], + [30.147167968750097, -4.08535156249998], + [30.187109375000063, -3.992871093749969], + [30.26855468750003, -3.850488281249994], + [30.348437500000074, -3.779785156249986], + [30.379101562500097, -3.730761718750031], + [30.4, -3.65390625], + [30.425, -3.588867187499986], + [30.529882812500006, -3.492480468749989], + [30.631933593750006, -3.41865234375004], + [30.624609375, -3.388671874999972], + [30.610937500000063, -3.366406249999969], + [30.626074218750063, -3.347363281249997], + [30.68183593750004, -3.30937], + [30.790234375000097, -3.274609375000011], + [30.81142578125005, -3.200585937500023], + [30.811132812500006, -3.116406250000011], + [30.793554687500063, -3.069335937500014], + [30.796875, -3.015136718749986], + [30.78027343750003, -2.984863281249957], + [30.70947265624997, -2.977246093749997], + [30.604296875000074, -2.935253906249969], + [30.515039062499994, -2.917578125], + [30.45556640625003, -2.893164062500006], + [30.433496093749994, -2.874511718750028], + [30.424023437500097, -2.82402343749996], + [30.44130859375005, -2.769042968749943], + [30.450488281250074, -2.753222656250017], + [30.473339843750097, -2.6943359375], + [30.434375, -2.658886718749983], + [30.42421875000005, -2.641601562500014], + [30.441992187500006, -2.613476562499969], + [30.53369140624997, -2.426269531250014], + [30.55361328125005, -2.400097656250011], + [30.593359375000063, -2.39677734374996], + [30.65664062500005, -2.373828124999989], + [30.71484375000003, -2.363476562500011], + [30.7625, -2.371679687499991], + [30.797656250000017, -2.362695312500037], + [30.828710937500006, -2.338476562499977], + [30.85498046874997, -2.265429687500017], + [30.8765625, -2.143359375000017], + [30.864648437499994, -2.044042968749949], + [30.819140625000017, -1.967480468749983], + [30.806738281250006, -1.850683593749991], + [30.82753906250005, -1.693652343749974], + [30.812597656250006, -1.56308593750002], + [30.76220703124997, -1.458691406249983], + [30.710742187500074, -1.396777343749974], + [30.631933593750006, -1.36748046874996], + [30.508105468750074, -1.208203125000026], + [30.47021484374997, -1.13115234374996], + [30.47705078124997, -1.0830078125], + [30.509960937500097, -1.067285156249994], + [30.519921875, -1.0625], + [30.598730468750063, -1.069726562499966], + [30.67275390625005, -1.051367187499949], + [30.741992187500017, -1.007519531249997], + [30.809179687500063, -0.994921875], + [30.82363281250005, -0.999023437499943] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Uganda", + "iso_a2": "UG", + "iso_a3": "UGA", + "iso_n3": "800", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [33.90322265625002, -1.002050781250006], + [33.794042968750006, -1.002050781250006], + [33.616308593750006, -1.002050781250006], + [33.4384765625, -1.002050781250006], + [33.2607421875, -1.002050781250006], + [33.0830078125, -1.002050781250006], + [32.90517578125002, -1.002050781250006], + [32.72744140625002, -1.002050781250006], + [32.54970703125002, -1.002050781250006], + [32.371875, -1.002050781250006], + [32.19414062500002, -1.002050781250006], + [32.01640625000002, -1.002050781250006], + [31.83857421875001, -1.002050781250006], + [31.66083984375001, -1.002050781250006], + [31.48310546875001, -1.002050781250006], + [31.305273437500006, -1.002050781250006], + [31.127539062500006, -1.002050781250006], + [30.94970703125, -1.002050781250006], + [30.8447265625, -1.002050781250006], + [30.823632812500023, -0.9990234375], + [30.809179687500006, -0.994921875], + [30.741992187500017, -1.007519531250011], + [30.672753906250023, -1.051367187500006], + [30.598730468750006, -1.069726562500009], + [30.519921875000023, -1.0625], + [30.50996093750001, -1.067285156250009], + [30.46992187500001, -1.066015625], + [30.41230468750001, -1.063085937500006], + [30.360253906250023, -1.074609375], + [30.32050781250001, -1.113085937500003], + [30.279882812500006, -1.178808593750006], + [30.20703125, -1.254199218750003], + [30.15, -1.32109375], + [30.1015625, -1.36865234375], + [29.990527343750017, -1.446972656250011], + [29.930078125000023, -1.469921875000011], + [29.9, -1.46630859375], + [29.881640625000017, -1.451757812500006], + [29.846875, -1.351660156250006], + [29.82539062500001, -1.335546875], + [29.609667968750017, -1.387109375], + [29.576953125000017, -1.387890625000011], + [29.579980468750023, -1.356738281250003], + [29.5640625, -1.121386718750003], + [29.561914062500023, -0.97734375], + [29.59003906250001, -0.887109375], + [29.6064453125, -0.783105468750009], + [29.608203125000017, -0.691308593750009], + [29.647851562500023, -0.535253906250006], + [29.633203125000023, -0.441699218750003], + [29.684375, -0.113574218750003], + [29.697851562500006, -0.060205078125009], + [29.717675781250023, 0.098339843749997], + [29.74970703125001, 0.147216796875], + [29.77783203125, 0.166357421874991], + [29.81464843750001, 0.263623046874997], + [29.88544921875001, 0.4189453125], + [29.934472656250023, 0.4990234375], + [29.923828125, 0.673925781249991], + [29.931640625, 0.792871093749994], + [29.94287109375, 0.819238281249994], + [30.04736328125, 0.863525390625], + [30.182910156250017, 0.973486328124991], + [30.240136718750023, 1.102783203125], + [30.321093750000017, 1.185302734375], + [30.477832031250017, 1.238818359374989], + [30.478125, 1.239062499999989], + [30.94257812500001, 1.6828125], + [31.158789062500006, 1.922021484374994], + [31.252734375000017, 2.044580078124994], + [31.25605468750001, 2.088476562499991], + [31.274023437500006, 2.146289062499989], + [31.236328125, 2.191357421874997], + [31.19140625, 2.232275390624991], + [31.176367187500006, 2.270068359374989], + [31.137597656250023, 2.288867187499989], + [31.082128906250006, 2.2880859375], + [31.045312500000023, 2.315527343749991], + [31.00361328125001, 2.369384765625], + [30.9619140625, 2.403271484374997], + [30.830078125, 2.400439453124989], + [30.728613281250006, 2.455371093749989], + [30.729882812500023, 2.5302734375], + [30.76953125, 2.677978515625], + [30.8466796875, 2.847021484374991], + [30.85078125000001, 2.893652343749991], + [30.839941406250006, 2.933496093749994], + [30.821386718750006, 2.967578124999989], + [30.786523437500023, 3.001367187499994], + [30.754003906250006, 3.041796874999989], + [30.779296875, 3.163378906249989], + [30.82783203125001, 3.282617187499994], + [30.867578125000023, 3.342138671874991], + [30.90644531250001, 3.408935546875], + [30.895312500000017, 3.463671874999989], + [30.83857421875001, 3.49072265625], + [30.8681640625, 3.544140625], + [30.92939453125001, 3.634082031249989], + [31.04804687500001, 3.725], + [31.15234375, 3.785595703124997], + [31.221972656250017, 3.785937499999989], + [31.357421875, 3.737597656249989], + [31.47998046875, 3.680468749999989], + [31.547167968750017, 3.677587890624991], + [31.62890625, 3.701464843749989], + [31.79804687500001, 3.802636718749994], + [31.838671875000017, 3.770458984374997], + [31.88828125, 3.709082031249991], + [31.941796875000023, 3.607568359374994], + [32.04824218750002, 3.561181640624994], + [32.09941406250002, 3.529199218749994], + [32.13593750000001, 3.519726562499997], + [32.15625, 3.528027343749997], + [32.19667968750002, 3.6078125], + [32.24550781250002, 3.651318359374997], + [32.33574218750002, 3.706201171874994], + [32.534765625, 3.749951171874997], + [32.67695312500001, 3.76318359375], + [32.73710937500002, 3.772705078125], + [32.83808593750001, 3.798486328124994], + [32.99726562500001, 3.880175781249989], + [33.15410156250002, 3.774707031249989], + [33.324316406250006, 3.754345703124997], + [33.489355468750006, 3.755078125], + [33.53955078125, 3.787109375], + [33.568457031250006, 3.81171875], + [33.74160156250002, 3.985253906249994], + [33.97607421875, 4.22021484375], + [34.13203125000001, 3.88916015625], + [34.18574218750001, 3.869775390624994], + [34.17822265625, 3.840869140624989], + [34.1650390625, 3.81298828125], + [34.26708984375, 3.733154296875], + [34.39287109375002, 3.691503906249991], + [34.43769531250001, 3.650585937499997], + [34.44179687500002, 3.60625], + [34.3994140625, 3.412695312499991], + [34.4072265625, 3.357519531249991], + [34.447851562500006, 3.163476562499994], + [34.522558593750006, 3.119970703124991], + [34.58916015625002, 2.924755859374997], + [34.723242187500006, 2.841943359374994], + [34.74248046875002, 2.818115234375], + [34.7734375, 2.723437499999989], + [34.814453125, 2.619824218749997], + [34.8466796875, 2.595751953124989], + [34.8662109375, 2.589697265624991], + [34.90576171875, 2.4796875], + [34.88300781250001, 2.417919921874997], + [34.91396484375002, 2.230175781249997], + [34.96406250000001, 2.062402343749994], + [34.9775390625, 1.861914062499991], + [34.97822265625001, 1.773632812499997], + [34.97646484375002, 1.719628906249994], + [34.96523437500002, 1.643359374999989], + [34.94121093750002, 1.599267578124994], + [34.89833984375002, 1.556494140624991], + [34.85097656250002, 1.489013671875], + [34.8095703125, 1.416699218749997], + [34.78359375000002, 1.381152343749989], + [34.803808593750006, 1.272851562499994], + [34.79863281250002, 1.24453125], + [34.78759765625, 1.230712890625], + [34.72675781250001, 1.214257812499994], + [34.64912109375001, 1.185302734375], + [34.60195312500002, 1.156445312499997], + [34.535253906250006, 1.1015625], + [34.48173828125002, 1.042138671874994], + [34.41083984375001, 0.867285156249991], + [34.292578125, 0.73125], + [34.272558593750006, 0.686425781249994], + [34.16093750000002, 0.605175781249997], + [34.11171875000002, 0.505126953125], + [34.08056640625, 0.382470703124994], + [34.037207031250006, 0.29453125], + [33.94316406250002, 0.173779296874997], + [33.921484375, -0.016992187500009], + [33.924414062500006, -0.397851562500009], + [33.9, -0.831640625], + [33.90322265625002, -1.002050781250006] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Ukraine", + "iso_a2": "UA", + "iso_a3": "UKR", + "iso_n3": "804", + "continent": "Europe" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [32.01220703124997, 46.20390624999999], + [32.15009765625004, 46.1546875], + [32.009375, 46.167822265625006], + [31.70019531250003, 46.21406250000001], + [31.56386718750005, 46.25776367187504], + [31.528710937499994, 46.30659179687504], + [31.50878906250003, 46.373144531250006], + [31.584863281249994, 46.303173828124955], + [31.638476562500074, 46.272558593750034], + [32.01220703124997, 46.20390624999999] + ] + ], + [ + [ + [33.4518554687501, 52.33378906250002], + [33.61337890625006, 52.33261718750006], + [33.735253906249994, 52.344775390625045], + [33.81884765624997, 52.31562], + [33.92207031250004, 52.25146484375003], + [34.01533203125004, 52.15595703125004], + [34.113085937500074, 51.979638671874994], + [34.397851562499994, 51.780419921874994], + [34.402734375, 51.74150390624996], + [34.37929687500005, 51.71650390625004], + [34.239160156249994, 51.69223632812506], + [34.12109375000003, 51.67915039062498], + [34.11542968750004, 51.64497070312501], + [34.14677734375002, 51.607958984375045], + [34.20087890625004, 51.553808593750006], + [34.20927734375002, 51.48408203125001], + [34.20654296875003, 51.419921875], + [34.229882812499994, 51.36323242187501], + [34.275, 51.340185546875006], + [34.280664062499994, 51.311669921874966], + [34.22841796875005, 51.27685546875], + [34.21386718750003, 51.25537109375006], + [34.234179687500074, 51.243798828124994], + [34.491015625000074, 51.23706054687506], + [34.616796875, 51.20312], + [34.71230468750005, 51.17221679687498], + [34.76035156250006, 51.16933593750002], + [34.868554687499994, 51.189208984375], + [34.99023437499997, 51.20175781250006], + [35.0640625, 51.203417968750045], + [35.092578125000074, 51.18066406250003], + [35.11533203125006, 51.120849609375], + [35.158105468749994, 51.06098632812498], + [35.19804687500002, 51.043896484374955], + [35.26914062500006, 51.04677734375002], + [35.31191406250005, 51.043896484374955], + [35.33476562500002, 51.02114257812502], + [35.30908203125003, 50.98691406249998], + [35.31474609375002, 50.94990234374998], + [35.34609375, 50.90429687500003], + [35.383203125, 50.79892578125006], + [35.41738281250005, 50.76757812499997], + [35.4401367187501, 50.72768554687502], + [35.4401367187501, 50.682080078124955], + [35.41162109375003, 50.64223632812502], + [35.39169921875006, 50.610937500000034], + [35.41162109375003, 50.539697265624994], + [35.48847656250004, 50.45991210937501], + [35.54550781250006, 50.43999023437502], + [35.59111328125002, 50.36875], + [35.67373046875005, 50.34599609374999], + [35.79619140625002, 50.40576171874997], + [35.890234375, 50.43710937499998], + [36.00781249999997, 50.41967773437497], + [36.1164062500001, 50.408544921875006], + [36.18945312499997, 50.367822265624994], + [36.2433593750001, 50.31176757812503], + [36.306054687499994, 50.28046875000004], + [36.3688476562501, 50.29682617187498], + [36.49980468750002, 50.28046875000004], + [36.55966796875006, 50.23486328124997], + [36.619433593750074, 50.209228515625], + [36.696386718750006, 50.246240234374994], + [36.75908203125002, 50.291845703125034], + [36.98847656250004, 50.33955078124998], + [37.13125, 50.35151367187504], + [37.1710937500001, 50.36088867187499], + [37.25488281250003, 50.39497070312501], + [37.343164062499994, 50.417626953124994], + [37.42285156249997, 50.411474609375006], + [37.501367187499994, 50.340722656249966], + [37.58232421875002, 50.291845703125034], + [37.60507812500006, 50.214941406250006], + [37.704199218750006, 50.10908203125004], + [37.95029296875006, 49.964208984375006], + [38.046875, 49.92001953125006], + [38.1125, 49.92783203125006], + [38.14677734375002, 49.93940429687501], + [38.16269531250006, 49.95454101562498], + [38.177539062500074, 50.02539062500003], + [38.2086914062501, 50.05146484375001], + [38.258593750000074, 50.05234375], + [38.45117187500003, 49.96406249999998], + [38.55195312500004, 49.95458984375], + [38.64775390625002, 49.952880859375], + [38.77666015625002, 49.88432617187499], + [38.918359375, 49.82470703125], + [39.027734375, 49.81840820312496], + [39.1149414062501, 49.84174804687501], + [39.17480468750003, 49.85595703124997], + [39.211816406249994, 49.833203124999955], + [39.24599609375005, 49.78193359374998], + [39.3029296875001, 49.742041015625034], + [39.36845703125002, 49.73066406250004], + [39.462792968749994, 49.72802734375003], + [39.62656250000006, 49.65068359374999], + [39.780566406250074, 49.57202148437503], + [39.87685546875005, 49.567675781250045], + [39.95849609374997, 49.59077148437504], + [40.03066406250005, 49.59672851562502], + [40.080664062500006, 49.576855468749955], + [40.09492187500004, 49.54267578125001], + [40.05781250000004, 49.49707031250006], + [40.05781250000004, 49.43154296875002], + [40.12617187500004, 49.36884765625004], + [40.12832031250005, 49.307226562500006], + [40.10878906250005, 49.251562500000034], + [40.07001953125004, 49.20029296874998], + [39.976367187500074, 49.12983398437501], + [39.889746093750006, 49.064062500000034], + [39.75947265625004, 49.03657226562501], + [39.68652343749997, 49.007910156250034], + [39.705664062500006, 48.95957031250006], + [39.753320312499994, 48.91445312500002], + [39.86376953124997, 48.877978515625045], + [39.989160156249994, 48.851416015625034], + [40.00361328125004, 48.82207031250002], + [39.98447265625006, 48.80737304687506], + [39.90410156250002, 48.79375], + [39.792871093749994, 48.807714843750034], + [39.75585937500003, 48.782080078125034], + [39.70458984375003, 48.739355468750034], + [39.67041015625003, 48.662451171875006], + [39.6447265625001, 48.591210937499966], + [39.76542968750002, 48.571875], + [39.8356445312501, 48.54277343749996], + [39.857519531250006, 48.484228515625034], + [39.882617187500074, 48.419091796874994], + [39.88984375000004, 48.360449218750034], + [39.849902343750074, 48.331933593749994], + [39.84746093750002, 48.30278320312502], + [39.866308593750006, 48.288427734375006], + [39.91816406250004, 48.28193359375001], + [39.95791015625005, 48.268896484375034], + [39.96103515625006, 48.23793945312502], + [39.88505859375002, 48.168359374999966], + [39.81396484375003, 48.03530273437505], + [39.77578125, 47.964453125], + [39.77871093750005, 47.88754882812506], + [39.7359375, 47.84482421875006], + [39.658496093750074, 47.84121093750002], + [39.391015625, 47.83374023437503], + [39.158496093750074, 47.83740234375006], + [39.0578125000001, 47.848486328125006], + [38.90029296875005, 47.85512695312502], + [38.82226562499997, 47.83701171874998], + [38.71894531250004, 47.71411132812497], + [38.64062, 47.66591796875002], + [38.51093750000004, 47.622412109375034], + [38.36884765625004, 47.609960937500006], + [38.287402343750074, 47.559179687500034], + [38.25878906250003, 47.47954101562499], + [38.2565429687501, 47.40893554687497], + [38.24326171875006, 47.373681640624994], + [38.21240234374997, 47.3427734375], + [38.20136718750004, 47.32080078124997], + [38.20800781249997, 47.296533203124994], + [38.24101562500002, 47.28769531249998], + [38.28076171874997, 47.276660156250045], + [38.28076171874997, 47.259033203125], + [38.2653320312501, 47.23696289062502], + [38.22119140624997, 47.21274414062498], + [38.20136718750004, 47.17524414062498], + [38.205859375000074, 47.13559570312498], + [38.21435546875003, 47.091455078124966], + [38.17832031250006, 47.080224609374994], + [37.82871093750006, 47.095849609374966], + [37.543359375, 47.07456054687498], + [37.33984375000003, 46.91689453125002], + [37.21855468750002, 46.917333984375006], + [37.0475585937501, 46.876220703125], + [36.93203125, 46.82514648437498], + [36.794824218749994, 46.71440429687499], + [36.68867187500004, 46.76411132812498], + [36.55878906250004, 46.76269531250006], + [36.43203125, 46.73256835937502], + [36.2794921875001, 46.658593749999966], + [36.19462890625002, 46.64550781249997], + [36.02490234375003, 46.66679687499996], + [35.82714843749997, 46.62431640625002], + [35.40019531250002, 46.38139648437499], + [35.256640625000074, 46.20390624999999], + [35.20439453125002, 46.169189453125], + [35.13232421874997, 46.125878906249994], + [35.055273437500006, 46.10400390625006], + [35.01455078125005, 46.10600585937502], + [35.21777343749997, 46.23217773437506], + [35.280175781249994, 46.27949218750001], + [35.29091796875005, 46.31440429687501], + [35.29199218749997, 46.370703125000034], + [35.23037109375005, 46.44062], + [35.0640625, 46.267236328124994], + [34.96953125000002, 46.24208984375002], + [34.84960937500003, 46.189892578124955], + [34.84375, 46.07358398437498], + [34.857324218749994, 45.98735351562502], + [34.906640625, 45.878808593749994], + [35.02285156250005, 45.70097656250002], + [35.26015625, 45.44692382812505], + [35.373925781249994, 45.353613281250034], + [35.45751953124997, 45.316308593749994], + [35.558007812499994, 45.310888671875034], + [35.75097656249997, 45.38935546875004], + [35.83349609375003, 45.40161132812506], + [36.01289062500004, 45.37167968749998], + [36.07714843749997, 45.42412109375002], + [36.170507812500006, 45.453076171874955], + [36.290332031250074, 45.45673828124998], + [36.427050781250074, 45.433251953124994], + [36.575, 45.3935546875], + [36.51425781250006, 45.30375976562502], + [36.45078125, 45.23232421875002], + [36.42841796875004, 45.15327148437498], + [36.39335937500002, 45.06538085937501], + [36.22988281250005, 45.02597656249998], + [36.05478515625006, 45.03081054687499], + [35.87011718750003, 45.005322265624955], + [35.80361328125005, 45.03959960937502], + [35.75947265625004, 45.07084960937499], + [35.67753906250002, 45.10200195312501], + [35.56953125000004, 45.11933593750001], + [35.472558593749994, 45.098486328125006], + [35.3578125, 44.978417968749994], + [35.15478515625003, 44.896337890625034], + [35.08769531250002, 44.802636718749966], + [34.887792968750006, 44.82358398437506], + [34.716894531250006, 44.80712890625], + [34.46992187500004, 44.7216796875], + [34.28173828124997, 44.53842773437506], + [34.0744140625001, 44.42382812499997], + [33.909960937500074, 44.387597656249966], + [33.75566406250002, 44.39892578125006], + [33.655859375, 44.433203125], + [33.45068359374997, 44.553662109374955], + [33.46269531250002, 44.59682617187505], + [33.49130859375006, 44.618603515624955], + [33.530078125000074, 44.680517578125034], + [33.612207031249994, 44.90781249999998], + [33.60117187500006, 44.98149414062499], + [33.55517578125003, 45.09765625000003], + [33.392480468749994, 45.187841796875006], + [33.261523437500074, 45.170751953125006], + [33.18691406250005, 45.19477539062501], + [32.9186523437501, 45.34814453125], + [32.77265625000004, 45.35898437499998], + [32.61132812500003, 45.32807617187498], + [32.55185546875006, 45.35039062499999], + [32.5080078125001, 45.40380859375006], + [32.828027343749994, 45.59301757812506], + [33.1422851562501, 45.74921874999998], + [33.28007812500002, 45.76523437500006], + [33.466210937499994, 45.83793945312502], + [33.664843750000074, 45.94707031249996], + [33.63671875000003, 46.03286132812505], + [33.59414062500005, 46.09624023437499], + [33.498828125000074, 46.078857421875], + [33.42988281250004, 46.05761718750003], + [33.26347656250002, 46.12568359375004], + [33.20224609375006, 46.17573242187501], + [32.941796875, 46.123779296875], + [32.79687, 46.131494140624966], + [32.47675781250004, 46.08369140625001], + [32.329882812500074, 46.13037109375], + [32.035742187500006, 46.26098632812497], + [31.92519531250005, 46.287255859374994], + [31.83125, 46.28168945312501], + [31.77998046875004, 46.32465820312498], + [31.842871093750063, 46.34614257812501], + [31.915917968749994, 46.34868164062499], + [31.99169921874997, 46.364404296874994], + [32.013085937499994, 46.38715820312501], + [32.00849609375004, 46.42998046875002], + [31.855761718750017, 46.46245117187499], + [31.713671875000017, 46.471777343750006], + [31.623632812500063, 46.51025390625003], + [31.554882812500097, 46.554296875000034], + [31.71601562500004, 46.55498046875002], + [31.87792968749997, 46.52167968749998], + [32.13144531250006, 46.509375], + [32.36132812499997, 46.474951171875034], + [32.41894531249997, 46.51777343749998], + [32.55253906250002, 46.59199218749998], + [32.578027343749994, 46.615625], + [32.354101562500006, 46.564843749999966], + [32.127246093750074, 46.59721679687499], + [32.04433593750005, 46.642480468749966], + [31.974316406250097, 46.70878906249999], + [31.944921875000063, 46.784375], + [31.96406250000004, 46.85483398437498], + [31.939550781250006, 46.981982421875045], + [31.86474609374997, 47.095117187499994], + [31.838183593750074, 47.15722656250003], + [31.75917968750005, 47.21284179687501], + [31.83691406249997, 47.087011718750034], + [31.86591796875004, 47.003271484375034], + [31.912695312500063, 46.926123046875034], + [31.901660156250017, 46.72163085937504], + [31.872851562500017, 46.649755859375034], + [31.779589843750017, 46.63164062499999], + [31.657031250000017, 46.64243164062506], + [31.532128906249994, 46.66474609374998], + [31.56337890625005, 46.77729492187501], + [31.496875, 46.73837890624998], + [31.402929687500063, 46.62880859375002], + [31.32031249999997, 46.6125], + [31.136816406250006, 46.62446289062504], + [30.796289062499994, 46.55200195312503], + [30.772851562499994, 46.47304687500002], + [30.72167968749997, 46.3662109375], + [30.67226562500005, 46.304003906250045], + [30.65673828124997, 46.26650390625002], + [30.511523437500074, 46.105371093749966], + [30.492968750000017, 46.09013671874999], + [30.219042968750074, 45.866748046875045], + [30.184179687500006, 45.84995117187498], + [30.006640625000074, 45.79794921875006], + [29.901660156250074, 45.75239257812501], + [29.82119140625005, 45.73208007812505], + [29.68505859375003, 45.754687500000045], + [29.62841796875003, 45.722460937500045], + [29.601660156250063, 45.682519531249994], + [29.601171875000063, 45.6], + [29.6703125, 45.54067382812505], + [29.726953125, 45.34331054687499], + [29.705859375000074, 45.25991210937505], + [29.651953125, 45.31391601562504], + [29.567675781250074, 45.37080078124998], + [29.40371093750005, 45.419677734375], + [29.22353515625005, 45.402929687500034], + [29.027441406250063, 45.32055664062506], + [28.894335937500017, 45.28994140625002], + [28.824316406250063, 45.31108398437499], + [28.78173828125, 45.30986328125002], + [28.76660156250003, 45.28623046874998], + [28.769824218750074, 45.266894531250045], + [28.791406250000023, 45.25190429687501], + [28.78828125000001, 45.240966796875], + [28.7607421875, 45.23413085937503], + [28.451269531250006, 45.292187499999955], + [28.317675781250045, 45.347119140624955], + [28.2125, 45.45043945312506], + [28.26484375000004, 45.48388671875003], + [28.310351562500074, 45.49858398437499], + [28.47138671875001, 45.50717773437506], + [28.499023437500057, 45.517724609374994], + [28.501757812500074, 45.541552734375045], + [28.513769531250034, 45.57241210937502], + [28.50947265625004, 45.61782226562505], + [28.49160156250005, 45.66577148437503], + [28.562304687500074, 45.73579101562501], + [28.667578125, 45.79384765625002], + [28.729296875000074, 45.852001953124955], + [28.73876953125003, 45.937158203124994], + [28.84951171875005, 45.97866210937502], + [28.94775390624997, 46.049951171874966], + [28.971875, 46.12763671874998], + [29.00625, 46.17646484374998], + [28.94375, 46.28842773437506], + [28.930566406250023, 46.36225585937501], + [28.92744140625001, 46.42412109374999], + [28.958398437500023, 46.45849609374997], + [29.049902343750006, 46.49702148437501], + [29.146289062500017, 46.52690429687496], + [29.186230468750068, 46.52397460937499], + [29.20078125, 46.504980468750034], + [29.20458984374997, 46.37934570312501], + [29.223828125000097, 46.37695312499997], + [29.25458984375004, 46.39262695312496], + [29.304882812500097, 46.46660156250002], + [29.33955078125004, 46.445068359375], + [29.392871093750074, 46.43691406250002], + [29.43281250000004, 46.455957031249994], + [29.458789062500017, 46.453759765624994], + [29.491015625000074, 46.434667968750006], + [29.555078125, 46.407763671875045], + [29.614941406250097, 46.398828125], + [29.66455078124997, 46.416748046875], + [29.706835937500017, 46.44873046875003], + [29.75195312499997, 46.43779296875002], + [29.83789062499997, 46.35053710937501], + [29.878027343750063, 46.360205078125034], + [30.07568359375003, 46.377832031249966], + [30.107519531250006, 46.40156250000001], + [30.131054687500097, 46.42309570312506], + [29.92431640624997, 46.53886718750002], + [29.934765625000097, 46.625], + [29.942480468750063, 46.72377929687502], + [29.918066406250063, 46.78242187499998], + [29.877832031249994, 46.828906250000045], + [29.71972656249997, 46.882910156250034], + [29.597753906250063, 46.938818359375034], + [29.57197265625004, 46.96401367187502], + [29.568652343750017, 46.99672851562502], + [29.56347656250003, 47.047509765624994], + [29.515039062499994, 47.09111328124999], + [29.51093750000004, 47.128027343750034], + [29.541796875000017, 47.18554687500003], + [29.54931640624997, 47.246826171875], + [29.539160156250006, 47.27099609375003], + [29.510644531249994, 47.29072265624998], + [29.455664062500006, 47.292626953124994], + [29.383398437500006, 47.32802734375002], + [29.333789062500017, 47.37573242187497], + [29.200585937499994, 47.44448242187502], + [29.159765625, 47.455664062500006], + [29.134863281250006, 47.48969726562501], + [29.12294921875005, 47.530371093750034], + [29.150878906250057, 47.58085937500002], + [29.18603515625003, 47.65859375000005], + [29.210742187500017, 47.73154296874998], + [29.211132812500097, 47.775], + [29.194824218750057, 47.88242187499998], + [29.125390625000023, 47.96455078125001], + [29.092968749999983, 47.975439453125034], + [29.036914062500017, 47.95234375000001], + [28.97333984375004, 47.933007812499994], + [28.923144531250045, 47.951123046874955], + [28.865820312499977, 47.99565429687496], + [28.77382812500008, 48.11958007812498], + [28.601660156250006, 48.14438476562498], + [28.530468750000068, 48.15029296875002], + [28.46308593750001, 48.09052734375001], + [28.441992187500063, 48.10869140624999], + [28.42304687500001, 48.146875], + [28.3875, 48.16210937500003], + [28.34052734375001, 48.144433593749994], + [28.326953125000074, 48.16142578124999], + [28.34716796875003, 48.21303710937502], + [28.29101562500003, 48.23857421874999], + [28.158789062500006, 48.237988281249955], + [28.088476562499977, 48.25703125000001], + [28.080078125000057, 48.295800781249994], + [28.038476562500023, 48.32128906250006], + [27.96337890625, 48.33354492187496], + [27.890625, 48.36523437500003], + [27.82001953125001, 48.41625976562503], + [27.714453125, 48.44951171874996], + [27.57373046875, 48.46489257812499], + [27.562207031250068, 48.470410156249955], + [27.54921875000008, 48.47773437500004], + [27.45839843750005, 48.44306640624998], + [27.40380859375003, 48.415625], + [27.3369140625, 48.432714843750006], + [27.22851562500003, 48.37143554687506], + [27.008496093750068, 48.368261718750034], + [26.90058593750001, 48.37192382812506], + [26.847070312500023, 48.387158203124955], + [26.640429687500045, 48.29414062500001], + [26.618945312500017, 48.25986328125006], + [26.57246093750004, 48.248486328124955], + [26.4423828125, 48.22998046875], + [26.305664062500057, 48.203759765624994], + [26.276953125000063, 48.11323242187504], + [26.236230468750023, 48.06435546875002], + [26.162695312500063, 47.992529296875034], + [25.90869140625, 47.96757812500002], + [25.689257812500045, 47.93247070312506], + [25.46425781250005, 47.910791015624994], + [25.169628906250068, 47.82309570312498], + [25.073828125, 47.745703125000034], + [24.979101562500063, 47.72412109374997], + [24.89335937499999, 47.71777343750003], + [24.83789062499997, 47.760839843750006], + [24.650976562500006, 47.87651367187502], + [24.578906250000074, 47.93105468750005], + [24.48408203125001, 47.947119140625034], + [24.380957031250063, 47.938037109375045], + [24.28193359375004, 47.91118164062499], + [24.177734375000057, 47.90605468750002], + [24.059765624999983, 47.94477539062498], + [24.047363281250057, 47.941015625000034], + [24.001855468750023, 47.93579101562503], + [23.70898437500003, 47.98261718749998], + [23.68203125000005, 47.99038085937505], + [23.669042968750063, 47.992333984374994], + [23.628710937500017, 47.995849609375], + [23.40820312500003, 47.98999023437506], + [23.20263671875, 48.084521484375045], + [23.13945312499999, 48.08740234375], + [23.09082031250003, 48.04912109375002], + [23.054785156250063, 48.006542968749955], + [22.912890625000017, 47.964257812499966], + [22.87666015625001, 47.94726562500006], + [22.856054687500006, 47.960302734375034], + [22.84648437499999, 47.9970703125], + [22.857226562500045, 48.02954101562503], + [22.836230468750045, 48.060302734375], + [22.782226562500057, 48.09521484375], + [22.769140625000063, 48.109619140625], + [22.70156250000005, 48.10703125], + [22.68310546875003, 48.103613281250034], + [22.676367187500063, 48.104394531249994], + [22.582421875000023, 48.134033203125], + [22.520117187500034, 48.20537109374996], + [22.423828125000057, 48.243310546874966], + [22.350195312500063, 48.25605468749998], + [22.316699218750074, 48.28662109375], + [22.29511718750001, 48.32729492187502], + [22.272167968750068, 48.35800781249998], + [22.269433593750023, 48.360888671875045], + [22.253710937500017, 48.407373046874994], + [22.23115234375004, 48.41215820312499], + [22.227148437500034, 48.41342773437498], + [22.131835937500057, 48.40532226562502], + [22.142871093750017, 48.568505859374966], + [22.295214843750045, 48.68583984374999], + [22.332617187500034, 48.745068359374955], + [22.389453125000045, 48.87348632812501], + [22.432031250000023, 48.93354492187498], + [22.483203125000074, 48.983251953125006], + [22.52412109375004, 49.03139648437502], + [22.538671875, 49.07270507812501], + [22.57998046875005, 49.077197265625045], + [22.701269531249977, 49.039941406249994], + [22.809765625000068, 49.020751953125], + [22.83974609375005, 49.03891601562506], + [22.852050781250057, 49.06274414062503], + [22.847070312500023, 49.08125], + [22.76015625000008, 49.13623046874997], + [22.705664062500006, 49.17119140624999], + [22.70234375000004, 49.192724609375034], + [22.721972656250045, 49.240966796875], + [22.73242187500003, 49.29516601562503], + [22.719921875000068, 49.35380859374999], + [22.660644531250057, 49.48369140624999], + [22.6494140625, 49.53901367187498], + [22.706152343750006, 49.60620117187497], + [22.890722656250034, 49.766259765624994], + [22.952246093750063, 49.82636718749998], + [23.03632812500004, 49.899072265624966], + [23.264453125000074, 50.072851562500006], + [23.408593750000023, 50.173925781250006], + [23.506152343750017, 50.229833984375034], + [23.649023437500063, 50.32705078125002], + [23.711718750000045, 50.377343749999966], + [23.97265625, 50.410058593749966], + [24.004980468750034, 50.45703125000003], + [24.05263671875005, 50.50844726562502], + [24.089941406250006, 50.53046874999998], + [24.0947265625, 50.617041015625034], + [24.046289062499994, 50.722802734374994], + [24.007324218750057, 50.760156249999966], + [23.978417968750023, 50.78559570312501], + [23.9970703125, 50.809375], + [24.025976562500034, 50.81616210937503], + [24.061621093750006, 50.81953124999998], + [24.105761718750045, 50.84497070312503], + [24.095800781250063, 50.87275390625001], + [23.985742187500023, 50.94042968750003], + [23.938085937499977, 50.99252929687498], + [23.863476562500068, 51.12622070312503], + [23.712207031250074, 51.26513671875], + [23.664453125000023, 51.31005859375], + [23.65761718750005, 51.35249023437504], + [23.6796875, 51.394921874999966], + [23.65888671875004, 51.44897460937497], + [23.605273437500045, 51.51791992187498], + [23.61376953125, 51.525390625], + [23.60859375000001, 51.61049804687502], + [23.64667968750004, 51.62885742187504], + [23.706835937500045, 51.64130859374998], + [23.79169921875001, 51.63710937500002], + [23.864257812500057, 51.62397460937501], + [23.951171875, 51.58505859374998], + [23.978320312500017, 51.59130859375003], + [24.12685546875008, 51.664648437500034], + [24.280078125000017, 51.77470703124999], + [24.32373046875003, 51.83842773437499], + [24.361914062500006, 51.86752929687498], + [24.495214843750063, 51.88305664062503], + [24.611328125, 51.889501953125006], + [24.685156250000034, 51.888281250000034], + [24.86640625000001, 51.89912109375001], + [24.97382812500004, 51.91113281249997], + [25.066699218750045, 51.930517578125034], + [25.267187500000034, 51.93774414062497], + [25.580273437500068, 51.92475585937501], + [25.785742187500006, 51.923828125], + [25.92529296875, 51.91352539062501], + [26.26708984375, 51.85502929687502], + [26.394335937500074, 51.84443359374998], + [26.453417968750045, 51.81342773437498], + [26.566894531250057, 51.80190429687502], + [26.77343750000003, 51.77070312499998], + [26.952832031249983, 51.754003906250034], + [27.074121093750023, 51.760839843750006], + [27.14199218750008, 51.75205078124998], + [27.270117187500063, 51.61357421875002], + [27.29628906250008, 51.59741210937503], + [27.347656250000057, 51.594140624999966], + [27.452343750000068, 51.60610351562502], + [27.601367187500045, 51.60161132812499], + [27.689746093750017, 51.572412109374994], + [27.67675781250003, 51.48994140624998], + [27.7, 51.47797851562501], + [27.741308593750034, 51.482568359374966], + [27.788867187500045, 51.52915039062506], + [27.82880859375001, 51.577441406250045], + [27.85859375000004, 51.59238281250006], + [28.010742187500057, 51.55976562499998], + [28.08027343750001, 51.565039062500006], + [28.144433593750023, 51.601660156250006], + [28.18378906250004, 51.60786132812501], + [28.291601562500063, 51.581835937500045], + [28.424609375000074, 51.563623046874966], + [28.532031250000017, 51.56245117187501], + [28.59902343750008, 51.54262695312505], + [28.647753906250074, 51.45654296875], + [28.690234375000017, 51.43886718750005], + [28.73125, 51.43339843749999], + [28.793261718750045, 51.510351562500034], + [28.84951171875005, 51.540185546874994], + [28.927539062500045, 51.56215820312502], + [28.97773437500004, 51.57177734375003], + [29.01308593750005, 51.59892578124996], + [29.06074218750001, 51.625439453124955], + [29.102050781250057, 51.627539062500034], + [29.13564453125008, 51.61728515624998], + [29.174218750000023, 51.58061523437496], + [29.23046875000003, 51.49702148437498], + [29.29882812500003, 51.41303710937501], + [29.346484375000017, 51.38256835937503], + [29.469628906249994, 51.40834960937505], + [29.553125, 51.43457031249997], + [29.70605468750003, 51.439550781250006], + [29.908789062500006, 51.45800781250003], + [30.063769531250074, 51.482031250000034], + [30.160742187500006, 51.477880859375006], + [30.219531250000017, 51.45122070312499], + [30.308984375, 51.399609374999955], + [30.333398437499994, 51.32553710937506], + [30.449511718750017, 51.274316406249994], + [30.544531250000063, 51.265039062499994], + [30.576953125000074, 51.318359375], + [30.63251953125004, 51.35541992187501], + [30.61171875000005, 51.406347656250006], + [30.602343750000017, 51.47124023437499], + [30.56074218750004, 51.531494140625], + [30.533007812500017, 51.596337890624966], + [30.583886718749994, 51.68896484375003], + [30.639453125000017, 51.77006835937502], + [30.667285156250017, 51.81411132812502], + [30.755273437499994, 51.89516601562502], + [30.84570312500003, 51.95307617187501], + [30.980664062500097, 52.04619140624996], + [31.079296875000097, 52.07695312500002], + [31.16845703124997, 52.06293945312501], + [31.217968750000097, 52.05024414062498], + [31.345996093750074, 52.10537109375002], + [31.57373046875003, 52.108105468749955], + [31.763378906250097, 52.10107421875003], + [31.782421875000097, 52.09941406249996], + [31.875585937500063, 52.070898437500034], + [31.973828125000097, 52.04663085937506], + [32.041601562500006, 52.04501953124998], + [32.12226562500004, 52.05058593749996], + [32.21679687500003, 52.08295898437498], + [32.28281250000006, 52.114013671875], + [32.36298828125004, 52.272119140624994], + [32.39130859375004, 52.294824218749994], + [32.435449218749994, 52.307226562500034], + [32.507910156250006, 52.30854492187504], + [32.64541015625005, 52.27910156249999], + [32.806445312500074, 52.25263671875001], + [32.899707031250074, 52.25634765625006], + [33.14843750000003, 52.340429687500034], + [33.28710937500003, 52.35356445312496], + [33.4518554687501, 52.33378906250002] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Uruguay", + "iso_a2": "UY", + "iso_a3": "URY", + "iso_n3": "858", + "continent": "South America" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [-53.37060546875, -33.7421875], + [-53.419580078124994, -33.77919921875001], + [-53.47246093749999, -33.84931640625001], + [-53.53452148437499, -34.01748046875001], + [-53.742919921875, -34.24951171875], + [-53.785302734374994, -34.38037109375], + [-54.01025390625, -34.51699218750001], + [-54.16855468749999, -34.670703125], + [-54.272119140624994, -34.66689453125001], + [-54.36533203124999, -34.73271484375], + [-54.902294921875, -34.93281250000001], + [-55.095117187499994, -34.895117187500006], + [-55.237890625, -34.89580078125], + [-55.37060546875, -34.8076171875], + [-55.67314453124999, -34.77568359375], + [-55.862939453124994, -34.8109375], + [-56.117919921875, -34.90791015625001], + [-56.19462890624999, -34.90644531250001], + [-56.249951171875, -34.90126953125001], + [-56.387841796874994, -34.86103515625001], + [-56.4630859375, -34.775390625], + [-56.85517578125, -34.67666015625001], + [-57.17070312499999, -34.45234375000001], + [-57.54345703125, -34.448046875], + [-57.8291015625, -34.47734375], + [-57.8732421875, -34.44765625], + [-57.90214843749999, -34.39013671875], + [-57.96123046874999, -34.30693359375], + [-58.20703125, -34.10908203125001], + [-58.40019531249999, -33.91240234375], + [-58.438134765624994, -33.719140625], + [-58.411328125, -33.508886718750006], + [-58.35336914062499, -33.26005859375], + [-58.363525390625, -33.18232421875001], + [-58.2921875, -33.13798828125], + [-58.221582031249994, -33.12910156250001], + [-58.153564453125, -33.06464843750001], + [-58.092675781249994, -32.967382812500006], + [-58.08232421874999, -32.893652343750006], + [-58.12958984375, -32.75722656250001], + [-58.16220703124999, -32.566503906250006], + [-58.201171875, -32.4716796875], + [-58.123046875, -32.321875], + [-58.11972656249999, -32.24892578125001], + [-58.164794921875, -32.18486328125], + [-58.177001953125, -32.11904296875001], + [-58.15634765624999, -32.0515625], + [-58.160400390625, -31.98652343750001], + [-58.18901367187499, -31.92421875], + [-58.16748046875, -31.87265625], + [-58.095849609374994, -31.831835937500003], + [-58.04233398437499, -31.76923828125001], + [-58.006982421874994, -31.68496093750001], + [-57.98886718749999, -31.62060546875], + [-57.98798828125, -31.576171875], + [-58.009667968749994, -31.534375], + [-58.053857421874994, -31.494921875], + [-58.0333984375, -31.416601562500006], + [-57.94833984374999, -31.299414062500006], + [-57.89335937499999, -31.1953125], + [-57.868408203125, -31.10439453125001], + [-57.870068359375, -31.031054687500003], + [-57.89829101562499, -30.975195312500006], + [-57.886328125, -30.93740234375001], + [-57.83408203124999, -30.91748046875], + [-57.81059570312499, -30.85859375000001], + [-57.8185546875, -30.712011718750006], + [-57.872509765625, -30.59101562500001], + [-57.831201171874994, -30.495214843750006], + [-57.71269531249999, -30.38447265625001], + [-57.65087890625, -30.295019531250006], + [-57.645751953125, -30.226953125], + [-57.60888671875, -30.187792968750003], + [-57.55229492187499, -30.26123046875], + [-57.38383789062499, -30.28066406250001], + [-57.214453125, -30.28339843750001], + [-57.186914062499994, -30.26484375000001], + [-57.120507812499994, -30.14443359375001], + [-57.03271484375, -30.109960937500006], + [-56.937255859375, -30.10107421875], + [-56.83271484375, -30.107226562500003], + [-56.7216796875, -30.18691406250001], + [-56.4072265625, -30.44746093750001], + [-56.176171875, -30.62841796875], + [-56.105859375, -30.71376953125001], + [-56.044824218749994, -30.777636718750003], + [-55.998974609375, -30.837207031250003], + [-56.018457031249994, -30.99189453125001], + [-56.015527343749994, -31.059667968750006], + [-56.00468749999999, -31.079199218750006], + [-55.95200195312499, -31.080859375], + [-55.873681640624994, -31.069628906250003], + [-55.807763671874994, -31.03671875], + [-55.75634765625, -30.987109375], + [-55.705957031249994, -30.946582031250003], + [-55.665234375, -30.924902343750006], + [-55.65048828124999, -30.89208984375], + [-55.6271484375, -30.85810546875001], + [-55.60302734375, -30.85078125000001], + [-55.55732421875, -30.8759765625], + [-55.44956054687499, -30.964453125], + [-55.36606445312499, -31.046191406250003], + [-55.34550781249999, -31.09296875000001], + [-55.31328124999999, -31.141699218750006], + [-55.278955078124994, -31.184179687500006], + [-55.254638671875, -31.2255859375], + [-55.17353515625, -31.279589843750003], + [-55.09116210937499, -31.31396484375], + [-55.036035156249994, -31.27900390625001], + [-54.89599609375, -31.391210937500006], + [-54.587646484375, -31.48515625], + [-54.530908203124994, -31.5419921875], + [-54.477685546874994, -31.62275390625001], + [-54.36992187499999, -31.74501953125001], + [-54.22055664062499, -31.85517578125001], + [-54.10043945312499, -31.90156250000001], + [-53.98515624999999, -31.928125], + [-53.92060546875, -31.95234375000001], + [-53.87651367187499, -31.99453125], + [-53.806103515625, -32.03994140625001], + [-53.76171875, -32.05683593750001], + [-53.74658203125, -32.0974609375], + [-53.701123046875, -32.186328125], + [-53.65361328124999, -32.29873046875001], + [-53.601708984374994, -32.40302734375001], + [-53.489404296874994, -32.50322265625], + [-53.362744140625, -32.581152343750006], + [-53.23125, -32.625390625], + [-53.15727539062499, -32.680078125], + [-53.12558593749999, -32.73671875], + [-53.2140625, -32.82109375], + [-53.31010742187499, -32.92705078125], + [-53.39521484375, -33.010351562500006], + [-53.482861328125, -33.06855468750001], + [-53.511865234374994, -33.10869140625], + [-53.53134765624999, -33.1708984375], + [-53.53037109374999, -33.50029296875], + [-53.53764648437499, -33.6228515625], + [-53.53134765624999, -33.65546875000001], + [-53.51884765624999, -33.67724609375], + [-53.46357421875, -33.70986328125001], + [-53.39755859374999, -33.7373046875], + [-53.37060546875, -33.7421875] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "United States", + "iso_a2": "US", + "iso_a3": "USA", + "iso_n3": "840", + "continent": "North America" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-155.58134765624996, 19.012011718750017], + [-155.62563476562502, 18.963916015625074], + [-155.68076171874998, 18.967675781250023], + [-155.88129882812495, 19.07050781250001], + [-155.90561523437503, 19.125830078125006], + [-155.89072265625003, 19.382519531249983], + [-155.96582031249994, 19.59082031249997], + [-156.04868164062498, 19.749951171874983], + [-155.98842773437502, 19.83159179687499], + [-155.90888671875, 19.894726562499983], + [-155.82031249999997, 20.01416015624997], + [-155.8927734375, 20.167382812500023], + [-155.87426757812494, 20.259814453125017], + [-155.83164062499998, 20.27583007812501], + [-155.6220703125, 20.163427734375006], + [-155.198779296875, 19.99438476562503], + [-155.08608398437497, 19.875634765624994], + [-155.06591796875003, 19.748193359374966], + [-154.989013671875, 19.731982421875045], + [-154.95258789062504, 19.644628906250006], + [-154.84135742187502, 19.568164062500074], + [-154.80419921875, 19.524462890625045], + [-154.85029296874998, 19.4541015625], + [-155.053466796875, 19.319189453125063], + [-155.30961914062493, 19.260156250000023], + [-155.53525390624998, 19.109082031249983], + [-155.58134765624996, 19.012011718750017] + ] + ], + [ + [ + [-156.84960937499997, 20.772656249999955], + [-156.90888671874995, 20.744482421875006], + [-156.97338867187497, 20.757519531249983], + [-156.98842773437502, 20.82568359375003], + [-157.0505859375, 20.912451171875034], + [-156.94179687500002, 20.930029296875063], + [-156.88056640624995, 20.904833984375074], + [-156.84829101562497, 20.877783203124977], + [-156.80937, 20.831152343749977], + [-156.84960937499997, 20.772656249999955] + ] + ], + [ + [ + [-156.48681640624994, 20.93256835937504], + [-156.46083984375, 20.914746093749955], + [-156.35439453124997, 20.941455078125074], + [-156.27753906250004, 20.951269531250034], + [-156.14833984375002, 20.88549804687503], + [-156.10351562500003, 20.84033203124997], + [-156.01865234374998, 20.792089843750006], + [-155.98984374999998, 20.75712890624999], + [-156.01357421875002, 20.714794921874983], + [-156.10712890624995, 20.64477539062503], + [-156.23476562499997, 20.62861328125001], + [-156.3099609375, 20.598779296874966], + [-156.40878906249998, 20.60517578125004], + [-156.438232421875, 20.617871093749955], + [-156.44887695312497, 20.70625], + [-156.480078125, 20.80122070312501], + [-156.54384765625002, 20.78999023437504], + [-156.61542968750007, 20.821826171875045], + [-156.689697265625, 20.90141601562499], + [-156.69775390625003, 20.949072265625034], + [-156.65688476562497, 21.024511718750034], + [-156.58540039062495, 21.034326171874994], + [-156.53232421874998, 20.99267578125003], + [-156.48681640624994, 20.93256835937504] + ] + ], + [ + [ + [-157.21362304687497, 21.215380859375017], + [-157.00229492187498, 21.18793945312501], + [-156.95234375, 21.19970703125], + [-156.91718749999995, 21.177294921875074], + [-156.74218750000003, 21.16352539062501], + [-156.71215820312506, 21.155078125000074], + [-156.74790039062503, 21.103564453125045], + [-156.85986328125, 21.05634765625004], + [-157.02089843749997, 21.097802734375023], + [-157.29033203124996, 21.112597656250017], + [-157.27949218749998, 21.152343750000057], + [-157.25380859374997, 21.180566406250023], + [-157.249951171875, 21.229785156250017], + [-157.21362304687497, 21.215380859375017] + ] + ], + [ + [ + [-157.79936523437502, 21.456640625000034], + [-157.76499023437503, 21.45092773437503], + [-157.7208984375, 21.457714843749983], + [-157.705517578125, 21.378076171875023], + [-157.654150390625, 21.33393554687501], + [-157.63540039062502, 21.30761718749997], + [-157.690869140625, 21.279736328124983], + [-157.79877929687498, 21.268603515625017], + [-157.84931640624998, 21.290820312500017], + [-157.90175781250002, 21.34057617187503], + [-157.958447265625, 21.326904296875], + [-157.968310546875, 21.366894531249955], + [-157.97841796875, 21.378515625000034], + [-158.01728515625, 21.367724609375045], + [-157.98095703124997, 21.31611328125001], + [-158.079150390625, 21.31225585937503], + [-158.11035156249994, 21.318603515625], + [-158.13784179687497, 21.37714843750001], + [-158.23911132812498, 21.489355468750034], + [-158.238671875, 21.533056640624977], + [-158.27314453125, 21.585253906250045], + [-158.123095703125, 21.600244140624994], + [-158.020361328125, 21.691796875], + [-157.9625, 21.701367187499983], + [-157.85151367187498, 21.553369140625023], + [-157.85434570312503, 21.51191406250001], + [-157.82958984374994, 21.47143554687503], + [-157.79936523437502, 21.456640625000034] + ] + ], + [ + [ + [-160.18002929687498, 21.84106445312503], + [-160.20024414062502, 21.796875], + [-160.23471679687503, 21.803662109374955], + [-160.24345703124993, 21.84306640624999], + [-160.22089843749995, 21.897265625000017], + [-160.1638671875, 21.944042968749955], + [-160.100634765625, 22.015234374999977], + [-160.04873046874997, 22.00463867187503], + [-160.076708984375, 21.958105468749977], + [-160.08002929687504, 21.907421874999955], + [-160.15341796874998, 21.878759765624977], + [-160.18002929687498, 21.84106445312503] + ] + ], + [ + [ + [-159.37275390625, 21.93237304687497], + [-159.460693359375, 21.876123046874966], + [-159.51186523437502, 21.90039062500003], + [-159.60883789062495, 21.909521484375034], + [-159.64638671874997, 21.951757812500006], + [-159.747998046875, 21.989843750000034], + [-159.78916015625003, 22.041796875000074], + [-159.726611328125, 22.140185546875045], + [-159.57919921874998, 22.22314453124997], + [-159.35205078124997, 22.219580078125034], + [-159.30478515625003, 22.15405273437503], + [-159.30068359375, 22.105273437500017], + [-159.33017578124998, 22.050683593749994], + [-159.34375, 21.97363281250003], + [-159.37275390625, 21.93237304687497] + ] + ], + [ + [ + [-81.783837890625, 24.54458007812505], + [-81.809228515625, 24.542333984375034], + [-81.81142578125002, 24.557812499999983], + [-81.76767578124998, 24.576708984375017], + [-81.73867187500002, 24.57543945312503], + [-81.73974609374997, 24.554492187500017], + [-81.783837890625, 24.54458007812505] + ] + ], + [ + [ + [-81.56669921874999, 24.599902343750045], + [-81.63149414062494, 24.590039062499983], + [-81.57924804687497, 24.62939453125], + [-81.56230468749996, 24.68916015625001], + [-81.53164062499994, 24.642480468749994], + [-81.53222656249997, 24.614160156249994], + [-81.56669921874999, 24.599902343750045] + ] + ], + [ + [ + [-81.33481445312498, 24.650488281250034], + [-81.36479492187496, 24.629931640625017], + [-81.37905273437494, 24.636279296875074], + [-81.37905273437494, 24.666259765625057], + [-81.42167968750002, 24.732617187499983], + [-81.42006835937494, 24.75], + [-81.32231445312502, 24.68505859374997], + [-81.31982421874994, 24.667626953124966], + [-81.33481445312498, 24.650488281250034] + ] + ], + [ + [ + [-81.04418945312503, 24.716796875000057], + [-81.08999023437494, 24.69311523437503], + [-81.137353515625, 24.710498046875017], + [-81.08525390624996, 24.734179687500045], + [-80.93046875, 24.75947265625004], + [-80.98891601562497, 24.727880859375006], + [-81.04418945312503, 24.716796875000057] + ] + ], + [ + [ + [-80.82939453124996, 24.803662109374983], + [-80.84833984375001, 24.803662109374983], + [-80.83886718750003, 24.81787109375003], + [-80.79941406249998, 24.846289062500034], + [-80.78520507812502, 24.835253906250017], + [-80.786767578125, 24.821044921875057], + [-80.82939453124996, 24.803662109374983] + ] + ], + [ + [ + [-80.63828125, 24.903173828125006], + [-80.66513671874998, 24.8984375], + [-80.62568359374993, 24.94111328125001], + [-80.61459960937498, 24.937939453124983], + [-80.63828125, 24.903173828125006] + ] + ], + [ + [ + [-80.3818359375, 25.142285156249955], + [-80.58056640624997, 24.954248046875023], + [-80.55854492187493, 25.001318359375006], + [-80.48105468749995, 25.101953125], + [-80.45600585937501, 25.149316406249966], + [-80.403662109375, 25.17934570312505], + [-80.35493164062493, 25.233642578125], + [-80.35126953124998, 25.296972656250034], + [-80.28046874999995, 25.341259765624983], + [-80.25708007812497, 25.34760742187504], + [-80.3818359375, 25.142285156249955] + ] + ], + [ + [ + [-82.03720703125, 26.45361328125003], + [-82.07285156249998, 26.42753906249996], + [-82.14497070312493, 26.44667968750005], + [-82.184375, 26.48095703125], + [-82.20136718749995, 26.548046874999983], + [-82.13857421874997, 26.47700195312501], + [-82.11606445312498, 26.4609375], + [-82.03720703125, 26.45361328125003] + ] + ], + [ + [ + [-82.08378906249999, 26.552343749999977], + [-82.085205078125, 26.49360351562501], + [-82.13559570312498, 26.591992187499983], + [-82.16914062499995, 26.700732421875017], + [-82.12114257812496, 26.66552734375003], + [-82.08378906249999, 26.552343749999977] + ] + ], + [ + [ + [-97.17070312499996, 26.159375], + [-97.18452148437493, 26.112939453124994], + [-97.26733398437503, 26.32978515625004], + [-97.40209960937494, 26.820507812499983], + [-97.40717773437501, 27.100195312500034], + [-97.38598632812494, 27.19648437500004], + [-97.35122070312497, 26.80146484375001], + [-97.20224609375, 26.299804687500057], + [-97.17070312499996, 26.159375] + ] + ], + [ + [ + [-97.35361328125, 27.300048828125], + [-97.38481445312499, 27.242529296875006], + [-97.376220703125, 27.328271484374966], + [-97.29501953124998, 27.52309570312505], + [-97.13002929687494, 27.779150390624977], + [-97.060546875, 27.822021484375], + [-97.25087890624997, 27.54121093750001], + [-97.35361328125, 27.300048828125] + ] + ], + [ + [ + [-80.18676757812497, 27.278417968750034], + [-80.17050781250003, 27.20478515625004], + [-80.262451171875, 27.375585937500006], + [-80.37607421874998, 27.643408203125034], + [-80.43691406249994, 27.850537109374955], + [-80.395751953125, 27.79453125], + [-80.35551757812496, 27.678613281250023], + [-80.18676757812497, 27.278417968750034] + ] + ], + [ + [ + [-97.01435546875001, 27.90161132812497], + [-97.03603515624997, 27.899169921875], + [-96.98764648437498, 27.981054687500006], + [-96.97866210937502, 28.01386718750001], + [-96.89931640625002, 28.11748046874999], + [-96.857421875, 28.132910156250034], + [-96.83974609374997, 28.08881835937501], + [-96.92133789062495, 28.016015625000023], + [-97.01435546875001, 27.90161132812497] + ] + ], + [ + [ + [-96.76440429687497, 28.15258789062503], + [-96.80112304687498, 28.1484375], + [-96.75561523437494, 28.20244140624999], + [-96.68164062499997, 28.22968750000001], + [-96.51933593749996, 28.33344726562501], + [-96.45312, 28.340576171875057], + [-96.41865234374995, 28.376318359375063], + [-96.403564453125, 28.38159179687497], + [-96.41333007812494, 28.337792968750023], + [-96.54389648437498, 28.275585937499955], + [-96.76440429687497, 28.15258789062503] + ] + ], + [ + [ + [-95.03969726562497, 29.145898437499994], + [-95.08964843750002, 29.136328124999977], + [-94.8716796875, 29.290136718750063], + [-94.82597656249993, 29.34130859375], + [-94.76762695312496, 29.339062499999983], + [-94.86494140624998, 29.25288085937501], + [-95.03969726562497, 29.145898437499994] + ] + ], + [ + [ + [-91.793701171875, 29.50073242187497], + [-91.83085937499993, 29.486474609374994], + [-91.99624023437497, 29.573095703125063], + [-92.00664062499996, 29.61030273437501], + [-91.92504882812503, 29.643945312500023], + [-91.875244140625, 29.640966796875034], + [-91.79648437499995, 29.596972656250045], + [-91.76767578125003, 29.58471679687503], + [-91.75429687499997, 29.56689453125003], + [-91.76191406250001, 29.539013671874955], + [-91.793701171875, 29.50073242187497] + ] + ], + [ + [ + [-84.90791015624998, 29.642626953125017], + [-85.00825195312498, 29.606640624999955], + [-85.11674804687499, 29.63281249999997], + [-85.04931640625, 29.637792968750006], + [-85.00053710937502, 29.62719726562497], + [-84.87700195312499, 29.678662109374983], + [-84.81220703124993, 29.717626953125006], + [-84.737158203125, 29.732421875], + [-84.90791015624998, 29.642626953125017] + ] + ], + [ + [ + [-88.889306640625, 29.712597656249983], + [-88.94360351562497, 29.660253906250063], + [-88.94111328124998, 29.680224609375045], + [-88.90117187499993, 29.732617187499955], + [-88.87265624999998, 29.752978515625017], + [-88.889306640625, 29.712597656249983] + ] + ], + [ + [ + [-88.82744140625002, 29.807714843749977], + [-88.85566406249998, 29.77587890624997], + [-88.82797851562503, 29.928369140624966], + [-88.86689453124998, 30.056738281250006], + [-88.82587890624995, 30.000390625], + [-88.81259765625, 29.933349609375], + [-88.82744140625002, 29.807714843749977] + ] + ], + [ + [ + [-89.22397460937498, 30.084082031249977], + [-89.22045898437497, 30.03759765625], + [-89.26943359375, 30.06074218750001], + [-89.34199218749995, 30.062841796875006], + [-89.31005859375003, 30.078710937500034], + [-89.28764648437499, 30.094189453124983], + [-89.27646484375, 30.11083984375], + [-89.18466796874995, 30.168652343749983], + [-89.21069335937503, 30.12622070312503], + [-89.22397460937498, 30.084082031249977] + ] + ], + [ + [ + [-88.55810546874994, 30.215917968750006], + [-88.570654296875, 30.204785156249955], + [-88.65922851562493, 30.22558593750003], + [-88.71308593749998, 30.24492187499996], + [-88.72285156249993, 30.264257812500006], + [-88.57397460937497, 30.22915039062505], + [-88.55810546874994, 30.215917968750006] + ] + ], + [ + [ + [-88.07133789062499, 30.252343749999966], + [-88.15932617187497, 30.230908203124955], + [-88.28974609374998, 30.23291015625], + [-88.31625976562498, 30.24042968750004], + [-88.26391601562497, 30.254736328125006], + [-88.109375, 30.27373046874999], + [-88.07133789062499, 30.252343749999966] + ] + ], + [ + [ + [-81.41899414062499, 30.971435546875], + [-81.4634765625, 30.72778320312503], + [-81.48271484375002, 30.8140625], + [-81.48461914062494, 30.897851562500023], + [-81.45092773437503, 30.947412109374994], + [-81.41899414062499, 30.971435546875] + ] + ], + [ + [ + [-118.35039062499997, 32.82758789062498], + [-118.40859375000002, 32.818505859374994], + [-118.47319335937495, 32.83891601562496], + [-118.52890625000002, 32.935595703125045], + [-118.59018554687498, 33.01118164062498], + [-118.55708007812498, 33.03266601562501], + [-118.50747070312501, 32.95991210937501], + [-118.383203125, 32.84946289062498], + [-118.35039062499997, 32.82758789062498] + ] + ], + [ + [ + [-119.43803710937496, 33.21718750000002], + [-119.48251953124996, 33.21533203125], + [-119.54365234374998, 33.22460937500003], + [-119.57519531250001, 33.27832031250006], + [-119.52514648437503, 33.28203125000002], + [-119.47880859375, 33.27460937500001], + [-119.44204101562498, 33.23242187500003], + [-119.43803710937496, 33.21718750000002] + ] + ], + [ + [ + [-118.34794921875002, 33.3857421875], + [-118.29746093750003, 33.312109375], + [-118.37021484375002, 33.32124023437501], + [-118.44628906249997, 33.317089843749955], + [-118.46933593749996, 33.35712890625004], + [-118.49204101562496, 33.41279296875001], + [-118.50732421874997, 33.42700195312506], + [-118.55942382812502, 33.431982421875006], + [-118.56333007812502, 33.43706054687496], + [-118.56943359375002, 33.46416015624999], + [-118.55483398437497, 33.47709960937496], + [-118.39169921874995, 33.41508789062502], + [-118.34794921875002, 33.3857421875] + ] + ], + [ + [ + [-120.04355468749995, 33.918847656249994], + [-120.11391601562498, 33.90488281249998], + [-120.167138671875, 33.918066406250006], + [-120.25190429687494, 34.01386718749998], + [-120.07182617187493, 34.026513671874966], + [-119.99438476562497, 33.98491210937502], + [-119.98393554687497, 33.97333984374998], + [-120.04355468749995, 33.918847656249994] + ] + ], + [ + [ + [-120.30659179687498, 34.02485351562498], + [-120.35971679687496, 34.02226562499999], + [-120.44155273437494, 34.03291015625004], + [-120.41293945312498, 34.056298828124994], + [-120.367724609375, 34.07329101562502], + [-120.3533203125, 34.06059570312499], + [-120.30659179687498, 34.02485351562498] + ] + ], + [ + [ + [-119.88237304687497, 34.07968749999998], + [-119.678857421875, 34.02846679687502], + [-119.56914062499993, 34.05297851562503], + [-119.54926757812497, 34.02817382812506], + [-119.56220703124994, 34.006591796875], + [-119.80957031249997, 33.9677734375], + [-119.88549804687499, 33.99492187500002], + [-119.89243164062498, 34.03217773437498], + [-119.91806640624996, 34.067822265624955], + [-119.88237304687497, 34.07968749999998] + ] + ], + [ + [ + [-76.546240234375, 34.654882812500006], + [-76.56850585937502, 34.65253906249998], + [-76.60781250000002, 34.66357421875], + [-76.66196289062495, 34.684667968750034], + [-76.67392578125, 34.70014648437498], + [-76.62226562499995, 34.69453125000001], + [-76.546240234375, 34.654882812500006] + ] + ], + [ + [ + [-76.50366210937494, 34.642968749999966], + [-76.52856445312494, 34.63149414062505], + [-76.43701171874994, 34.75634765624997], + [-76.25620117187498, 34.914697265624994], + [-76.20737304687498, 34.938916015624955], + [-76.35771484374996, 34.80366210937504], + [-76.50366210937494, 34.642968749999966] + ] + ], + [ + [ + [-75.78193359374998, 35.190185546875], + [-75.96367187499999, 35.11884765625004], + [-75.98417968749999, 35.12309570312502], + [-75.86494140624993, 35.17412109375002], + [-75.78193359374998, 35.190185546875] + ] + ], + [ + [ + [-75.54414062499995, 35.240087890625034], + [-75.67827148437502, 35.21284179687498], + [-75.69008789062502, 35.221582031249994], + [-75.53637695312497, 35.27861328124999], + [-75.48789062499995, 35.47949218750006], + [-75.48125, 35.572119140625006], + [-75.504296875, 35.73540039062496], + [-75.50351562500003, 35.769140625], + [-75.478515625, 35.71650390625001], + [-75.45644531249994, 35.56416015624998], + [-75.46474609374994, 35.448632812499966], + [-75.50932617187496, 35.28032226562496], + [-75.54414062499995, 35.240087890625034] + ] + ], + [ + [ + [-75.63569335937495, 35.85590820312498], + [-75.65078125, 35.83559570312502], + [-75.71718749999994, 35.946142578125006], + [-75.64887695312498, 35.910400390625], + [-75.63666992187498, 35.88066406249999], + [-75.63569335937495, 35.85590820312498] + ] + ], + [ + [ + [-75.33305664062493, 37.88828124999998], + [-75.37851562499995, 37.87207031250006], + [-75.22597656249997, 38.07231445312499], + [-75.13740234374995, 38.24008789062506], + [-75.097900390625, 38.29809570312497], + [-75.13623046874997, 38.180517578125006], + [-75.20322265624995, 38.072412109374994], + [-75.33305664062493, 37.88828124999998] + ] + ], + [ + [ + [-74.13320312500002, 39.680761718750034], + [-74.25048828125, 39.529394531250006], + [-74.25317382812503, 39.558496093749994], + [-74.10673828124996, 39.74643554687498], + [-74.13320312500002, 39.680761718750034] + ] + ], + [ + [ + [-74.18813476562502, 40.522851562499994], + [-74.23588867187496, 40.51870117187502], + [-74.18818359374993, 40.614599609375034], + [-74.10048828125, 40.65844726562497], + [-74.06875, 40.649316406249994], + [-74.0673828125, 40.61542968750001], + [-74.07968750000003, 40.58647460937499], + [-74.13852539062503, 40.541845703125034], + [-74.18813476562502, 40.522851562499994] + ] + ], + [ + [ + [-72.50976562500003, 40.98603515625001], + [-72.58085937499996, 40.92133789062498], + [-72.5166015625, 40.91479492187497], + [-72.46132812500002, 40.93378906250004], + [-72.40898437500002, 40.97216796875003], + [-72.28745117187503, 41.02407226562505], + [-72.18388671874999, 41.04677734375005], + [-72.15126953125, 41.05146484375004], + [-72.10190429687498, 41.015039062499966], + [-72.00395507812502, 41.04428710937498], + [-71.90322265625, 41.06069335937505], + [-72.33896484374995, 40.894140625000034], + [-72.428076171875, 40.87539062500005], + [-72.55556640624994, 40.82578125000006], + [-72.67607421874999, 40.790625], + [-72.762841796875, 40.77783203124997], + [-73.19428710937495, 40.654199218749994], + [-73.228515625, 40.651513671874994], + [-73.26552734375, 40.66357421875006], + [-73.62089843749999, 40.59990234374996], + [-73.76674804687497, 40.59272460937501], + [-73.89956054687502, 40.57050781250001], + [-73.80131835937499, 40.62177734374998], + [-73.799169921875, 40.64096679687498], + [-73.82265625, 40.65595703125001], + [-73.87519531249993, 40.651611328125], + [-73.92900390624999, 40.59882812500001], + [-74.01489257812497, 40.581201171874966], + [-74.03203125000002, 40.63867187500003], + [-74.00336914062493, 40.683154296875045], + [-73.96455078124993, 40.72534179687503], + [-73.87924804687498, 40.79165039062502], + [-73.75722656249997, 40.83369140624998], + [-73.69521484374997, 40.87001953125002], + [-73.65224609375, 40.838037109374966], + [-73.64282226562503, 40.88125], + [-73.60976562499997, 40.90620117187501], + [-73.573828125, 40.91962890624998], + [-73.48740234374998, 40.91997070312496], + [-73.44086914062501, 40.92675781250003], + [-73.4072265625, 40.94111328125001], + [-73.37270507812497, 40.94379882812504], + [-73.27817382812498, 40.92421875000005], + [-73.18583984375002, 40.92983398437502], + [-73.11127929687501, 40.956884765625034], + [-73.03378906250003, 40.96596679687502], + [-72.82880859375001, 40.97207031250002], + [-72.62509765624998, 40.99184570312505], + [-72.54365234375001, 41.02700195312502], + [-72.37255859374997, 41.12553710937502], + [-72.27412109374998, 41.15302734375001], + [-72.42739257812494, 41.038525390624955], + [-72.50976562500003, 40.98603515625001] + ] + ], + [ + [ + [-69.9779296875, 41.26557617187504], + [-70.055078125, 41.249462890624955], + [-70.23305664062502, 41.28632812500001], + [-70.08662109374993, 41.31757812499998], + [-70.06269531249995, 41.32846679687506], + [-70.04360351562497, 41.374414062499994], + [-70.04121093750001, 41.3974609375], + [-69.98559570312494, 41.29863281250002], + [-69.9779296875, 41.26557617187504] + ] + ], + [ + [ + [-70.50991210937502, 41.376318359375034], + [-70.785302734375, 41.32744140625002], + [-70.82919921874995, 41.35898437500006], + [-70.760498046875, 41.37358398437502], + [-70.67373046875, 41.44853515625002], + [-70.61601562499996, 41.45722656250001], + [-70.52534179687495, 41.41479492187497], + [-70.50991210937502, 41.376318359375034] + ] + ], + [ + [ + [-71.36533203125003, 41.48525390625002], + [-71.39306640625, 41.46674804687498], + [-71.40341796874998, 41.515039062499966], + [-71.38398437500001, 41.570556640625], + [-71.36430664062499, 41.57182617187499], + [-71.35449218749994, 41.54228515625002], + [-71.36533203125003, 41.48525390625002] + ] + ], + [ + [ + [-71.24140625000001, 41.49194335937497], + [-71.29091796874997, 41.464599609375], + [-71.34624023437496, 41.469384765624994], + [-71.31816406250002, 41.506298828124955], + [-71.30747070312495, 41.56049804687498], + [-71.28017578125, 41.62001953125005], + [-71.26445312499999, 41.63823242187502], + [-71.23203124999995, 41.654296875], + [-71.24140625000001, 41.49194335937497] + ] + ], + [ + [ + [-68.62319335937497, 44.19604492187503], + [-68.66118164062496, 44.17626953125], + [-68.70170898437496, 44.18266601562496], + [-68.70302734374997, 44.23198242187496], + [-68.69077148437495, 44.24873046875001], + [-68.67675781250003, 44.256201171875006], + [-68.65595703124995, 44.24233398437502], + [-68.62319335937497, 44.19604492187503] + ] + ], + [ + [ + [-68.18725585937497, 44.33247070312501], + [-68.245458984375, 44.31298828125003], + [-68.30927734374995, 44.32148437499998], + [-68.30795898437503, 44.268701171874994], + [-68.31508789062497, 44.24970703125004], + [-68.38579101562499, 44.27685546875006], + [-68.41171875000003, 44.294335937499966], + [-68.40947265624993, 44.3642578125], + [-68.347021484375, 44.43037109374998], + [-68.29941406249998, 44.456494140624955], + [-68.238037109375, 44.438378906249994], + [-68.19091796875, 44.364355468750034], + [-68.18725585937497, 44.33247070312501] + ] + ], + [ + [ + [-122.85307617187499, 47.20473632812505], + [-122.86259765624997, 47.18505859375003], + [-122.87675781250002, 47.18613281249998], + [-122.90795898437497, 47.226123046875045], + [-122.91191406249997, 47.25434570312501], + [-122.88510742187502, 47.27470703124999], + [-122.84916992187499, 47.21630859375], + [-122.85307617187499, 47.20473632812505] + ] + ], + [ + [ + [-122.394140625, 47.39526367187503], + [-122.39873046874997, 47.37250976562501], + [-122.43710937499998, 47.35478515624996], + [-122.45698242187503, 47.35932617187501], + [-122.45820312500001, 47.38613281250005], + [-122.46855468749999, 47.390234375], + [-122.50991210937497, 47.358007812500006], + [-122.50683593749997, 47.42167968750002], + [-122.486474609375, 47.48876953125], + [-122.46860351562499, 47.48999023437497], + [-122.44208984375001, 47.446142578125006], + [-122.394140625, 47.39526367187503] + ] + ], + [ + [ + [-122.49726562499997, 47.59458007812506], + [-122.50263671875, 47.57543945312497], + [-122.55781249999995, 47.59829101562502], + [-122.57592773437501, 47.61948242187498], + [-122.57373046875, 47.666845703125034], + [-122.56010742187499, 47.69775390625003], + [-122.54975585937501, 47.703955078125034], + [-122.51723632812495, 47.690576171874994], + [-122.507861328125, 47.68266601562496], + [-122.49726562499997, 47.59458007812506] + ] + ], + [ + [ + [-122.57275390624999, 48.156640625], + [-122.52382812499997, 48.02543945312499], + [-122.50283203124995, 48.08007812500003], + [-122.36674804687493, 47.985449218750006], + [-122.3666015625, 47.938818359375034], + [-122.38315429687499, 47.923193359375034], + [-122.41142578124997, 47.917724609375], + [-122.43759765624998, 47.93134765625001], + [-122.46162109375, 47.964013671874994], + [-122.49228515625002, 47.98129882812506], + [-122.55751953125, 47.99248046875002], + [-122.59135742187496, 48.02963867187506], + [-122.60317382812497, 48.05502929687498], + [-122.60629882812498, 48.12856445312505], + [-122.62265625000002, 48.15141601562499], + [-122.65727539062497, 48.15649414062506], + [-122.69038085937497, 48.173876953125045], + [-122.74150390624999, 48.22529296875004], + [-122.74873046874995, 48.23901367187497], + [-122.72451171875, 48.280908203124994], + [-122.66899414062496, 48.35102539062498], + [-122.62861328125, 48.38422851562498], + [-122.60351562499994, 48.38061523437506], + [-122.57246093750001, 48.35957031250004], + [-122.53554687499995, 48.32119140625002], + [-122.54243164062503, 48.29399414062499], + [-122.69213867187497, 48.241064453125034], + [-122.69702148437499, 48.228662109374994], + [-122.62441406249994, 48.213769531249994], + [-122.59760742187498, 48.20043945312503], + [-122.57275390624999, 48.156640625] + ] + ], + [ + [ + [-122.8208984375, 48.43134765625001], + [-122.836572265625, 48.42153320312505], + [-122.89003906249997, 48.43466796875006], + [-122.921630859375, 48.456933593749966], + [-122.93227539062495, 48.48476562500005], + [-122.91220703124995, 48.537988281249966], + [-122.88549804687501, 48.55161132812498], + [-122.86889648437501, 48.54863281249999], + [-122.8619140625, 48.501855468749966], + [-122.81459960937497, 48.45234375000001], + [-122.8208984375, 48.43134765625001] + ] + ], + [ + [ + [-123.013134765625, 48.50087890625005], + [-122.98676757812495, 48.468017578125], + [-123.09443359374995, 48.489062500000045], + [-123.13994140624999, 48.507958984374966], + [-123.15341796874998, 48.52631835937498], + [-123.16958007812498, 48.586718750000045], + [-123.16215820312497, 48.606396484374955], + [-123.11416015624997, 48.61328125000003], + [-123.02416992187503, 48.538476562499966], + [-123.013134765625, 48.50087890625005] + ] + ], + [ + [ + [-122.78212890625001, 48.67270507812506], + [-122.76884765624996, 48.65097656249998], + [-122.80898437499997, 48.62983398437501], + [-122.83759765625003, 48.62656249999998], + [-122.88310546874997, 48.66064453125], + [-122.90302734374994, 48.66469726562502], + [-122.88701171874997, 48.6123046875], + [-122.89252929687503, 48.59448242187503], + [-122.98564453124999, 48.626708984375], + [-123.00283203124994, 48.65219726562506], + [-122.97666015625002, 48.67915039062504], + [-122.91801757812497, 48.70698242187501], + [-122.89770507812501, 48.710351562499994], + [-122.78212890625001, 48.67270507812506] + ] + ], + [ + [ + [-94.80346679687497, 49.0029296875], + [-94.71279296874997, 48.863427734374994], + [-94.71254882812502, 48.86298828125001], + [-94.705078125, 48.808496093749994], + [-94.67534179687499, 48.7744140625], + [-94.62089843749999, 48.74262695312501], + [-94.41416015624998, 48.70410156250006], + [-94.05517578125003, 48.659033203125034], + [-93.85161132812496, 48.607275390625034], + [-93.803564453125, 48.54892578125006], + [-93.70771484374995, 48.52543945312499], + [-93.56425781249993, 48.53691406250002], + [-93.46362304687494, 48.561279296875], + [-93.37788085937498, 48.61655273437498], + [-93.25795898437497, 48.62885742187501], + [-93.15522460937501, 48.625341796875006], + [-93.05170898437495, 48.61987304687503], + [-92.99624023437494, 48.61181640625], + [-92.83671875, 48.567773437499994], + [-92.73266601562497, 48.531835937500034], + [-92.583251953125, 48.46508789062503], + [-92.50058593749995, 48.43535156250002], + [-92.46088867187495, 48.365869140624994], + [-92.41459960937493, 48.276611328125], + [-92.3484375, 48.276611328125], + [-92.29868164062503, 48.32890624999999], + [-92.17177734375002, 48.33837890624997], + [-92.00517578125002, 48.301855468750006], + [-91.85839843749994, 48.19755859374999], + [-91.64731445312503, 48.104589843750034], + [-91.51831054687494, 48.05830078125004], + [-91.38720703124997, 48.05854492187498], + [-91.22065429687495, 48.104589843750034], + [-91.04345703125003, 48.19370117187498], + [-90.91606445312499, 48.20913085937502], + [-90.84033203125003, 48.20053710937506], + [-90.79731445312495, 48.13105468750001], + [-90.74438476562503, 48.104589843750034], + [-90.60708007812502, 48.11259765624999], + [-90.32011718749999, 48.09916992187502], + [-90.09179687500003, 48.118115234374955], + [-90.03994140624994, 48.07817382812499], + [-89.99365234375003, 48.01533203124998], + [-89.90102539062497, 47.995458984375006], + [-89.77539062499997, 48.01533203124998], + [-89.55058593749999, 47.99990234375002], + [-89.4556640625, 47.996240234374994], + [-89.27319335937497, 48.01997070312504], + [-89.18564453124998, 48.04741210937502], + [-89.06259765624995, 48.09379882812499], + [-88.89868164062497, 48.15571289062498], + [-88.61176757812495, 48.264013671875006], + [-88.37817382812497, 48.30307617187498], + [-88.16064453124997, 48.22539062499996], + [-87.98745117187494, 48.15688476562505], + [-87.92050781249998, 48.13037109375006], + [-87.74389648437497, 48.06054687500003], + [-87.49423828125, 47.96176757812498], + [-87.20800781249997, 47.848486328125006], + [-86.92182617187501, 47.735205078125006], + [-86.67216796874996, 47.636425781249955], + [-86.49555664062495, 47.566601562499955], + [-86.42856445312498, 47.54008789062496], + [-86.23447265624995, 47.460058593750006], + [-86.04038085937503, 47.38002929687505], + [-85.84633789062502, 47.3], + [-85.65224609375, 47.21997070312503], + [-85.45820312499998, 47.13994140624999], + [-85.26411132812498, 47.05996093750002], + [-85.07006835937497, 46.97993164062498], + [-84.87597656249994, 46.89990234375003], + [-84.82705078125002, 46.766845703125], + [-84.77939453125, 46.63730468749998], + [-84.66577148437503, 46.54326171875002], + [-84.56176757812497, 46.457373046875006], + [-84.50156249999998, 46.461865234374955], + [-84.44047851562496, 46.49814453125006], + [-84.40170898437498, 46.51562], + [-84.33671875, 46.51850585937504], + [-84.19218749999999, 46.54956054687506], + [-84.14946289062499, 46.54277343750002], + [-84.12519531249995, 46.52724609375005], + [-84.12319335937497, 46.50292968749997], + [-84.128125, 46.48359375000004], + [-84.15048828125003, 46.44477539062501], + [-84.11518554687495, 46.370800781249955], + [-84.10776367187503, 46.28862304687502], + [-84.08837890625, 46.226513671874955], + [-84.02919921875002, 46.14702148437502], + [-83.97778320312503, 46.08491210937498], + [-83.91303710937498, 46.07290039062502], + [-83.76318359375, 46.10908203125001], + [-83.66928710937498, 46.122753906249955], + [-83.61596679687503, 46.116845703124994], + [-83.524755859375, 46.05869140625006], + [-83.48012695312497, 46.023730468750045], + [-83.46948242187503, 45.99467773437499], + [-83.59267578125, 45.81713867187506], + [-83.39731445312498, 45.72905273437496], + [-83.17929687499998, 45.63276367187498], + [-82.91933593749994, 45.51796875000002], + [-82.760400390625, 45.44770507812501], + [-82.55107421874996, 45.34736328125001], + [-82.51523437499995, 45.20439453125002], + [-82.48505859374993, 45.08374023437503], + [-82.44658203124999, 44.91552734375006], + [-82.407373046875, 44.74394531249999], + [-82.36826171875003, 44.572998046875], + [-82.32680664062502, 44.39155273437498], + [-82.28125, 44.192236328125034], + [-82.24077148437499, 44.01533203124998], + [-82.19658203124996, 43.82221679687498], + [-82.137841796875, 43.570898437500034], + [-82.19038085937495, 43.47407226562501], + [-82.30478515624998, 43.26323242187496], + [-82.408203125, 43.07265625000005], + [-82.41723632812497, 43.01738281249996], + [-82.48833007812499, 42.73950195312503], + [-82.54531249999997, 42.62470703124998], + [-82.64511718750003, 42.55805664062501], + [-82.74418945312496, 42.49345703124999], + [-82.8677734375, 42.385205078124955], + [-83.00371093749999, 42.33173828124998], + [-83.07314453125002, 42.30029296874997], + [-83.10952148437497, 42.25068359375001], + [-83.14965820312497, 42.14194335937506], + [-83.141943359375, 41.97587890624996], + [-83.02998046874993, 41.83295898437498], + [-82.86621093749997, 41.753027343750034], + [-82.69003906249995, 41.675195312499994], + [-82.43906249999998, 41.67485351562502], + [-82.21333007812501, 41.77871093750005], + [-81.97416992187496, 41.88872070312499], + [-81.76093749999993, 41.98681640624997], + [-81.50732421874997, 42.10346679687504], + [-81.27763671874999, 42.20917968749998], + [-81.02822265624997, 42.247167968750006], + [-80.6826171875, 42.299755859374955], + [-80.24755859375, 42.36601562499996], + [-80.0357421875, 42.44145507812496], + [-79.76201171874993, 42.53896484375002], + [-79.44624023437498, 42.651464843750034], + [-79.17373046875, 42.74853515625], + [-79.03671874999998, 42.802343750000034], + [-78.93925781250002, 42.86372070312501], + [-78.91508789062496, 42.90913085937504], + [-78.92084960937498, 42.93520507812502], + [-78.94599609374995, 42.961328125], + [-78.98076171874993, 42.98061523437502], + [-79.01166992187501, 42.99702148437498], + [-79.02617187499996, 43.01733398437506], + [-79.029052734375, 43.06176757812503], + [-79.04799804687497, 43.087304687499994], + [-79.066064453125, 43.10610351562502], + [-79.05922851562502, 43.27807617187506], + [-79.08305664062499, 43.331396484375006], + [-79.17187, 43.466552734375], + [-79.00249023437502, 43.52714843749999], + [-78.845556640625, 43.58334960937498], + [-78.72041015625001, 43.62495117187501], + [-78.45825195312497, 43.63149414062502], + [-78.21479492187493, 43.630664062500045], + [-77.87924804687498, 43.629541015624994], + [-77.596533203125, 43.62861328124998], + [-77.26669921874998, 43.62749023437502], + [-77.07333984375, 43.626855468749966], + [-76.819970703125, 43.62880859375002], + [-76.69648437499998, 43.784814453124994], + [-76.58613281249995, 43.92431640625], + [-76.46459960937497, 44.05761718749997], + [-76.24853515625003, 44.21411132812497], + [-76.18579101562503, 44.24223632812502], + [-76.15117187499999, 44.30395507812497], + [-76.02021484374995, 44.36259765625002], + [-75.87592773437495, 44.4169921875], + [-75.81933593749997, 44.468017578125], + [-75.79194335937498, 44.49707031249997], + [-75.40126953124997, 44.77226562499999], + [-75.17939453124998, 44.899365234374955], + [-74.99614257812496, 44.970117187499966], + [-74.85664062499995, 45.00390625000003], + [-74.76245117187494, 44.99907226562502], + [-74.70888671874997, 45.00385742187501], + [-74.663232421875, 45.00390625000003], + [-74.43037109374998, 45.00419921874999], + [-74.01425781250003, 45.00468750000002], + [-73.59814453124997, 45.00517578125002], + [-73.18203124999994, 45.00561523437503], + [-72.76591796874999, 45.00610351562503], + [-72.34975585937494, 45.00659179687503], + [-71.93364257812499, 45.00708007812506], + [-71.51752929687495, 45.00756835937497], + [-71.41904296874995, 45.200341796874994], + [-71.327294921875, 45.29008789062496], + [-71.20161132812498, 45.260351562500034], + [-71.13466796875002, 45.26284179687502], + [-71.06025390624995, 45.309130859375045], + [-70.99990234375, 45.33725585937498], + [-70.96015624999998, 45.333105468750034], + [-70.92622070312501, 45.29072265625001], + [-70.89799804687493, 45.26245117187503], + [-70.86503906249999, 45.27070312500001], + [-70.83681640625, 45.310693359374994], + [-70.83779296875002, 45.36616210937501], + [-70.79916992187498, 45.40478515624997], + [-70.75332031249997, 45.41069335937502], + [-70.71093750000003, 45.40947265624996], + [-70.68979492187498, 45.42832031249998], + [-70.692138671875, 45.45537109374999], + [-70.70742187500002, 45.498925781249966], + [-70.70224609375003, 45.551367187500006], + [-70.59638671874995, 45.643994140624955], + [-70.46660156249999, 45.70683593749996], + [-70.42109374999995, 45.738232421874955], + [-70.407861328125, 45.801904296874966], + [-70.33344726562495, 45.86806640625005], + [-70.296240234375, 45.90610351562506], + [-70.28715820312502, 45.939160156249955], + [-70.30644531249996, 45.97983398437498], + [-70.30449218749999, 46.05737304687497], + [-70.27890625000003, 46.15], + [-70.248291015625, 46.25087890625005], + [-70.17968749999997, 46.34184570312502], + [-70.0671875, 46.441064453124966], + [-70.03823242187502, 46.571435546874994], + [-70.00771484375002, 46.70893554687501], + [-69.87172851562494, 46.84291992187505], + [-69.71752929687497, 46.994873046875], + [-69.62978515624994, 47.081347656250045], + [-69.47148437499993, 47.23867187500002], + [-69.35888671875, 47.35063476562502], + [-69.3021484375, 47.402001953124994], + [-69.24287109374998, 47.46298828124998], + [-69.14628906249993, 47.44477539062501], + [-69.0501953125, 47.426611328125034], + [-69.06425781250002, 47.33813476562503], + [-69.04858398437503, 47.273632812499955], + [-69.00312, 47.236425781250006], + [-68.93720703124998, 47.21123046875002], + [-68.88740234374995, 47.20283203125001], + [-68.82871093749998, 47.20332031250001], + [-68.66855468749995, 47.25346679687502], + [-68.48037109375, 47.28579101562502], + [-68.37690429687495, 47.316162109375], + [-68.3580078125, 47.34453125000002], + [-68.310888671875, 47.3544921875], + [-68.23549804687502, 47.34594726562503], + [-68.09677734375, 47.27485351562501], + [-67.93486328124996, 47.16762695312502], + [-67.806787109375, 47.08281249999999], + [-67.80283203124998, 46.93574218750004], + [-67.80034179687502, 46.779882812500006], + [-67.797705078125, 46.615625], + [-67.79580078124997, 46.498388671875034], + [-67.79252929687502, 46.33740234375], + [-67.78994140625002, 46.209326171875006], + [-67.78647460937503, 46.042138671874966], + [-67.78466796875, 45.952783203124966], + [-67.76704101562498, 45.92700195312506], + [-67.77763671874999, 45.89179687499998], + [-67.78227539062496, 45.87416992187505], + [-67.78115234375, 45.86015625000002], + [-67.77412109374998, 45.842529296875], + [-67.77529296874997, 45.81787109375003], + [-67.79169921874993, 45.79555664062502], + [-67.79990234375, 45.769775390625], + [-67.80224609374994, 45.7275390625], + [-67.78466796875, 45.70170898437499], + [-67.75532226562498, 45.68647460937498], + [-67.73066406249993, 45.68647460937498], + [-67.69897460937497, 45.67119140624999], + [-67.65791015624995, 45.644189453124994], + [-67.59575195312499, 45.62075195312502], + [-67.53120117187498, 45.61254882812503], + [-67.48662109374996, 45.61840820312497], + [-67.43266601562496, 45.60312], + [-67.41386718749996, 45.565576171874966], + [-67.42441406249998, 45.530419921874994], + [-67.45493164062498, 45.51396484375002], + [-67.48779296875, 45.50102539062496], + [-67.49365234374997, 45.47407226562498], + [-67.47724609374998, 45.445898437500006], + [-67.453759765625, 45.421240234375034], + [-67.42792968749998, 45.37792968750003], + [-67.43852539062502, 45.34038085937502], + [-67.46196289062499, 45.308691406250034], + [-67.47255859375002, 45.27587890625], + [-67.45258789062495, 45.247656250000034], + [-67.39980468749994, 45.21015625000004], + [-67.366943359375, 45.17377929687498], + [-67.31528320312495, 45.15380859375], + [-67.290673828125, 45.167919921874955], + [-67.27070312499993, 45.186718749999955], + [-67.24960937499998, 45.20078124999998], + [-67.21323242187503, 45.192529296874994], + [-67.17099609374995, 45.18198242187498], + [-67.12485351562498, 45.16943359375], + [-67.13037109375003, 45.139013671875006], + [-67.10224609374998, 45.08774414062506], + [-67.08046875, 44.98916015625005], + [-67.11391601562497, 44.94438476562499], + [-67.10673828125002, 44.88505859374996], + [-67.01401367187503, 44.867773437500006], + [-66.99145507812497, 44.84960937500003], + [-66.98701171874995, 44.82768554687502], + [-67.191259765625, 44.67558593750002], + [-67.36406249999993, 44.696875], + [-67.45781249999993, 44.656542968750045], + [-67.55600585937498, 44.64477539062506], + [-67.59907226562495, 44.576806640624966], + [-67.652978515625, 44.56240234375005], + [-67.72680664062494, 44.566503906250006], + [-67.79047851562495, 44.585693359375], + [-67.83906249999998, 44.576269531250034], + [-67.90703124999999, 44.45361328125], + [-67.96269531249996, 44.464306640624955], + [-67.98486328125003, 44.42016601562503], + [-68.01396484375002, 44.40087890625], + [-68.056640625, 44.38432617187502], + [-68.09370117187498, 44.438818359375006], + [-68.11728515625, 44.490625], + [-68.15205078124998, 44.50200195312499], + [-68.19824218749997, 44.515234375000034], + [-68.24575195312497, 44.51479492187502], + [-68.27744140625003, 44.50737304687502], + [-68.31674804687495, 44.47387695312506], + [-68.37373046874993, 44.44511718749996], + [-68.416845703125, 44.469091796875034], + [-68.45058593749997, 44.50761718749999], + [-68.47944335937498, 44.44565429687498], + [-68.52143554687501, 44.38022460937506], + [-68.51445312500002, 44.303906249999955], + [-68.53251953124996, 44.25864257812498], + [-68.57236328124998, 44.27084960937498], + [-68.61201171874998, 44.310546875], + [-68.723291015625, 44.34228515624997], + [-68.81191406249994, 44.33935546875], + [-68.79389648437501, 44.38173828125002], + [-68.710107421875, 44.44257812499998], + [-68.73588867187499, 44.454492187499994], + [-68.77700195312502, 44.44604492187497], + [-68.79492187499994, 44.454492187499994], + [-68.76552734375, 44.50976562499997], + [-68.76269531249994, 44.57075195312498], + [-68.80019531249997, 44.54941406249998], + [-68.84736328124998, 44.48505859375001], + [-68.96147460937496, 44.43383789062497], + [-68.95615234375, 44.34809570312501], + [-69.06357421874998, 44.17236328125], + [-69.06835937499997, 44.09755859375002], + [-69.13725585937496, 44.03784179687503], + [-69.22607421875003, 43.98647460937505], + [-69.34453125000002, 44.00092773437498], + [-69.43496093749997, 43.95629882812503], + [-69.48085937499997, 43.90507812499999], + [-69.52075195312503, 43.89736328125002], + [-69.54155273437499, 43.96259765624998], + [-69.55668945312496, 43.982763671875006], + [-69.589990234375, 43.886572265625034], + [-69.62392578125, 43.88061523437497], + [-69.63676757812493, 43.948828125], + [-69.65288085937493, 43.99389648437506], + [-69.69912109374994, 43.95502929687504], + [-69.72983398437498, 43.85200195312501], + [-69.76201171874996, 43.860693359375006], + [-69.77226562500002, 43.899023437500006], + [-69.7953125, 43.91064453125006], + [-69.80322265625003, 43.86684570312502], + [-69.79160156249995, 43.80522460937499], + [-69.808349609375, 43.772314453125034], + [-69.84033203125003, 43.78989257812506], + [-69.87250976562501, 43.819531249999955], + [-69.92558593749999, 43.797021484374994], + [-69.97431640624995, 43.78789062499999], + [-69.97451171875, 43.81806640625001], + [-69.965234375, 43.855078125], + [-70.06235351562495, 43.83461914062502], + [-70.17880859374998, 43.76635742187506], + [-70.26923828125001, 43.67192382812499], + [-70.237890625, 43.65620117187498], + [-70.20258789062493, 43.626123046874994], + [-70.35966796874996, 43.48022460937503], + [-70.52070312499998, 43.34882812499998], + [-70.642333984375, 43.13442382812502], + [-70.691162109375, 43.109326171874955], + [-70.73310546875001, 43.07001953125004], + [-70.77763671874993, 42.94057617187505], + [-70.82905273437493, 42.82534179687502], + [-70.80029296875003, 42.774023437500034], + [-70.78134765624998, 42.721240234375045], + [-70.735693359375, 42.669287109375006], + [-70.696875, 42.664599609375045], + [-70.65483398437496, 42.673974609374994], + [-70.62397460937498, 42.671777343749994], + [-70.60415039062494, 42.64970703125002], + [-70.61293945312497, 42.623242187499955], + [-70.66142578124996, 42.616650390624955], + [-70.75185546875002, 42.57036132812502], + [-70.83115234375, 42.552587890625034], + [-70.87089843750002, 42.49663085937502], + [-70.93046874999999, 42.43198242187498], + [-71.04619140624993, 42.331103515625045], + [-70.996728515625, 42.3], + [-70.81796874999998, 42.26494140624999], + [-70.73828125, 42.228857421875006], + [-70.61767578125003, 42.040429687499966], + [-70.64521484374995, 42.021582031250034], + [-70.65615234374997, 41.98706054687503], + [-70.54892578124998, 41.93862304687502], + [-70.51469726562502, 41.80332031249998], + [-70.42666015625002, 41.75727539062501], + [-70.29545898437493, 41.72895507812504], + [-70.13500976562503, 41.769873046875006], + [-70.00141601562498, 41.82617187500003], + [-70.00610351562497, 41.872314453125], + [-70.09003906250001, 41.97968750000004], + [-70.11025390624994, 42.030126953125006], + [-70.17255859374995, 42.06279296875002], + [-70.19624023437498, 42.035107421874955], + [-70.23652343750001, 42.071044921875], + [-70.24106445312495, 42.09121093750002], + [-70.20351562499994, 42.10102539062498], + [-70.15986328124993, 42.09711914062498], + [-70.10893554687496, 42.07832031249998], + [-69.97788085937498, 41.961279296875006], + [-69.94160156249995, 41.80786132812503], + [-69.93383789062497, 41.71044921875], + [-69.94863281249997, 41.67714843750005], + [-69.98676757812493, 41.68398437500002], + [-70.05952148437501, 41.67734375], + [-70.4046875, 41.62690429687501], + [-70.48134765624997, 41.58247070312504], + [-70.65712890625, 41.53422851562496], + [-70.66806640625, 41.55830078124998], + [-70.65537109374998, 41.60810546875001], + [-70.66645507812493, 41.710107421874994], + [-70.70112304687498, 41.71484375], + [-70.97421875, 41.548535156249955], + [-71.07978515624993, 41.53808593750006], + [-71.1685546875, 41.489404296874994], + [-71.18842773437495, 41.51640624999999], + [-71.20429687499998, 41.64111328124997], + [-71.14873046874996, 41.74570312499998], + [-71.17832031250003, 41.744042968749994], + [-71.27109375, 41.68125], + [-71.31074218750001, 41.71987304687505], + [-71.33061523437496, 41.76225585937496], + [-71.35917968750002, 41.78623046875006], + [-71.39013671875003, 41.79531250000005], + [-71.36367187499997, 41.702734375], + [-71.42656249999999, 41.63330078125], + [-71.44379882812493, 41.453710937500006], + [-71.52285156249997, 41.378955078125045], + [-71.769287109375, 41.330908203125034], + [-71.92993164062503, 41.34106445312506], + [-72.07387695312497, 41.32612304687504], + [-72.26528320312497, 41.29165039062502], + [-72.37104492187501, 41.31215820312502], + [-72.47939453124997, 41.27578125], + [-72.84716796875003, 41.265869140625], + [-72.92470703125002, 41.28515625000003], + [-73.02373046874993, 41.216455078124966], + [-73.182275390625, 41.17583007812496], + [-73.5830078125, 41.021875], + [-73.67138671874997, 40.96586914062499], + [-73.77900390624998, 40.87841796875003], + [-73.85126953124995, 40.831396484375034], + [-73.91069335937499, 40.816113281249955], + [-73.94721679687495, 40.77695312500006], + [-73.98710937499999, 40.751367187499994], + [-73.94858398437498, 40.83876953125005], + [-73.90673828124997, 40.912451171875034], + [-73.87197265625, 41.05517578124997], + [-73.88222656249994, 41.170605468749955], + [-73.92534179687493, 41.218066406250045], + [-73.96992187499995, 41.24970703125001], + [-73.91767578124998, 41.13579101562499], + [-73.90922851562493, 40.99609375000003], + [-73.92719726562495, 40.914257812499955], + [-74.02548828125, 40.756396484375045], + [-74.06733398437501, 40.71962890625002], + [-74.11625976562493, 40.68730468749999], + [-74.15312, 40.673242187499966], + [-74.187158203125, 40.64799804687499], + [-74.22670898437497, 40.608007812500006], + [-74.26420898437496, 40.52861328124999], + [-74.24150390624996, 40.45625], + [-74.04985351562499, 40.42983398437505], + [-73.9984375, 40.45214843750006], + [-73.972265625, 40.40034179687498], + [-73.95761718750003, 40.32836914062497], + [-73.97197265624993, 40.25053710937502], + [-74.00400390624998, 40.171337890624955], + [-74.02832031249997, 40.072998046875], + [-74.04892578124998, 39.92304687500001], + [-74.079931640625, 39.78813476562496], + [-74.08398437500003, 39.82910156250006], + [-74.06459960937497, 39.99311523437498], + [-74.09599609374999, 39.97597656250002], + [-74.11762695312495, 39.938134765624966], + [-74.17612304687495, 39.726611328125045], + [-74.25654296875001, 39.61386718749998], + [-74.33061523437499, 39.535888671875], + [-74.40703125000002, 39.548779296874955], + [-74.38984374999998, 39.48681640625003], + [-74.41083984374998, 39.45454101562504], + [-74.42880859375, 39.38720703125], + [-74.47436523437497, 39.34257812499996], + [-74.51718749999998, 39.346875], + [-74.5787109375, 39.31611328124998], + [-74.60297851562498, 39.29257812499998], + [-74.60478515624999, 39.247509765624955], + [-74.64594726562493, 39.207861328125034], + [-74.79448242187499, 39.00190429687501], + [-74.92343749999998, 38.94111328124998], + [-74.95429687499995, 38.949951171875], + [-74.92031249999997, 39.04716796874999], + [-74.89702148437502, 39.14545898437504], + [-74.97529296874998, 39.18823242187506], + [-75.05019531249997, 39.21083984375002], + [-75.13613281249997, 39.207861328125034], + [-75.23105468750003, 39.28427734374998], + [-75.35341796875, 39.33984375000003], + [-75.52421874999999, 39.49018554687501], + [-75.51923828124995, 39.531884765624966], + [-75.52353515625, 39.60185546875002], + [-75.47163085937501, 39.71240234374997], + [-75.421875, 39.78969726562502], + [-75.35317382812494, 39.829736328124994], + [-75.15380859375, 39.87050781250005], + [-75.10380859374996, 39.93183593750001], + [-75.07416992187495, 39.98349609375006], + [-75.17294921875, 39.894775390625], + [-75.32089843750003, 39.86469726562501], + [-75.40063476562503, 39.83159179687502], + [-75.46440429687496, 39.78095703125001], + [-75.50214843750001, 39.717382812500034], + [-75.58759765625001, 39.64077148437505], + [-75.58159179687493, 39.58945312499998], + [-75.56728515624997, 39.552978515625], + [-75.57387695312497, 39.476953124999966], + [-75.51982421874996, 39.40283203124997], + [-75.41264648437499, 39.28139648437502], + [-75.3921875, 39.09277343750006], + [-75.31040039062503, 38.966552734375], + [-75.18505859374997, 38.819384765625045], + [-75.08867187499999, 38.777539062499955], + [-75.083984375, 38.722802734374994], + [-75.12846679687499, 38.63242187500006], + [-75.18710937499995, 38.59111328124999], + [-75.11083984374997, 38.59936523437497], + [-75.07285156249995, 38.578710937500034], + [-75.03588867187497, 38.50332031250005], + [-75.03876953124993, 38.426367187500006], + [-75.05126953125, 38.383007812499955], + [-75.074365234375, 38.36572265625], + [-75.07338867187497, 38.410009765625034], + [-75.08974609375002, 38.42539062499998], + [-75.11674804687502, 38.40620117187498], + [-75.13422851562493, 38.38432617187496], + [-75.14150390625, 38.29814453124999], + [-75.16000976562503, 38.25507812500001], + [-75.22543945312495, 38.24228515624998], + [-75.29179687499996, 38.12919921875002], + [-75.35351562500003, 38.065039062500006], + [-75.59638671874993, 37.631201171875006], + [-75.58710937500001, 37.55869140624998], + [-75.63154296874998, 37.53535156250001], + [-75.69882812500003, 37.51635742187506], + [-75.76689453124996, 37.472998046875006], + [-75.81206054687499, 37.42519531250005], + [-75.85400390625003, 37.29663085937506], + [-75.934375, 37.15190429687496], + [-75.98452148437497, 37.21220703124999], + [-75.99736328125002, 37.26381835937502], + [-75.97504882812498, 37.3984375], + [-75.88813476562495, 37.61914062500003], + [-75.7923828125, 37.75634765625], + [-75.71933593750003, 37.821386718750034], + [-75.65927734374995, 37.953955078125034], + [-75.73515625, 37.97373046874998], + [-75.850830078125, 37.971582031249994], + [-75.82905273437501, 38.03276367187502], + [-75.79531249999997, 38.08666992187497], + [-75.855615234375, 38.140380859375], + [-75.89130859374998, 38.14721679687497], + [-75.928076171875, 38.16923828125002], + [-75.88496093749993, 38.21396484374998], + [-75.863916015625, 38.26123046875003], + [-75.87675781249996, 38.31875], + [-75.85869140624999, 38.36206054687503], + [-75.888818359375, 38.355517578125045], + [-75.93725585937503, 38.309667968750034], + [-75.96738281250003, 38.291357421875034], + [-75.98574218749994, 38.33193359375002], + [-76.00668945312495, 38.32275390625003], + [-76.0203125, 38.29487304687504], + [-76.05122070312495, 38.27954101562503], + [-76.11650390624993, 38.31767578124996], + [-76.21166992187497, 38.36132812499997], + [-76.2646484375, 38.436425781249994], + [-76.29487304687495, 38.49462890625006], + [-76.26416015625, 38.599951171875006], + [-76.19838867187502, 38.61865234375], + [-76.11293945312502, 38.60156249999997], + [-76.00092773437493, 38.60170898437502], + [-76.016943359375, 38.62509765624998], + [-76.05693359374996, 38.621240234374994], + [-76.175, 38.706689453124994], + [-76.21298828124998, 38.75830078125003], + [-76.27832031249994, 38.77246093749997], + [-76.30810546874997, 38.72285156250001], + [-76.34116210937498, 38.70966796874998], + [-76.30034179687499, 38.81821289062498], + [-76.24697265624997, 38.82265625], + [-76.16816406249998, 38.85273437499998], + [-76.19106445312494, 38.91557617187502], + [-76.24082031249995, 38.94306640625001], + [-76.33066406249995, 38.90859375], + [-76.32958984375, 38.95278320312505], + [-76.31274414062494, 39.009375], + [-76.24501953125002, 39.009179687499994], + [-76.185693359375, 38.99072265625003], + [-76.13520507812493, 39.082128906250006], + [-76.132958984375, 39.122949218749966], + [-76.21684570312496, 39.063623046874966], + [-76.23569335937498, 39.19160156250001], + [-76.15312, 39.315039062500034], + [-76.07436523437497, 39.36884765624998], + [-75.9759765625, 39.367285156250006], + [-75.87597656249997, 39.3759765625], + [-75.93872070312497, 39.398583984374994], + [-76.00312, 39.41083984375001], + [-75.95473632812502, 39.459619140624994], + [-75.91347656249997, 39.468359375], + [-75.87294921874997, 39.510888671874966], + [-75.97041015624993, 39.50458984375001], + [-75.95893554687498, 39.58505859374998], + [-76.00629882812495, 39.568701171875006], + [-76.06298828124997, 39.56113281249998], + [-76.08505859375, 39.52700195312505], + [-76.08071289062502, 39.470312500000034], + [-76.097265625, 39.43310546875003], + [-76.14135742187503, 39.403222656249966], + [-76.2158203125, 39.37993164062502], + [-76.22304687499997, 39.4203125], + [-76.24765625, 39.438623046874994], + [-76.25683593750003, 39.352148437500034], + [-76.2763671875, 39.32275390625], + [-76.330810546875, 39.40390625], + [-76.34716796874994, 39.38754882812506], + [-76.34506835937498, 39.36450195312497], + [-76.35898437499995, 39.32465820312504], + [-76.40566406249997, 39.30390624999998], + [-76.40278320312501, 39.252832031249966], + [-76.42089843749997, 39.225], + [-76.57041015624995, 39.26933593749996], + [-76.57392578124995, 39.254296875], + [-76.48935546874995, 39.15869140624997], + [-76.42758789062498, 39.12602539062499], + [-76.42006835937497, 39.07387695312502], + [-76.47309570312493, 39.030615234375006], + [-76.546240234375, 39.06796875000006], + [-76.55854492187493, 39.065234375000045], + [-76.518798828125, 39.00117187500004], + [-76.49375, 38.945214843749994], + [-76.51953124999997, 38.89833984375005], + [-76.51552734374997, 38.840625], + [-76.52109375000003, 38.78828125000001], + [-76.53686523437497, 38.74262695312504], + [-76.501318359375, 38.53217773437498], + [-76.45849609374997, 38.474951171875034], + [-76.41640625000002, 38.42021484374999], + [-76.39409179687502, 38.368994140625034], + [-76.43876953124996, 38.36152343750001], + [-76.50991210937497, 38.40366210937498], + [-76.572412109375, 38.43579101562506], + [-76.646875, 38.53852539062501], + [-76.6591796875, 38.57954101562504], + [-76.67734374999998, 38.611962890624966], + [-76.66855468749998, 38.5375], + [-76.64199218749997, 38.454345703125], + [-76.40878906249998, 38.26826171875004], + [-76.36572265625, 38.196875], + [-76.33291015624997, 38.140771484374994], + [-76.34116210937498, 38.08701171875006], + [-76.401953125, 38.12504882812499], + [-76.45439453124993, 38.17353515625001], + [-76.59360351562498, 38.22832031249996], + [-76.76914062500003, 38.262939453125], + [-76.86811523437495, 38.39028320312502], + [-76.86777343749995, 38.33715820312503], + [-76.88974609375, 38.292089843750006], + [-76.95024414062499, 38.347021484375006], + [-76.98837890625, 38.393896484375034], + [-77.00117187499995, 38.44526367187504], + [-77.07670898437499, 38.441748046875034], + [-77.15590820312497, 38.397119140624994], + [-77.23251953125, 38.40771484375003], + [-77.2416015625, 38.49482421875001], + [-77.22089843749995, 38.54096679687498], + [-77.13491210937494, 38.65009765625001], + [-77.05390624999995, 38.705810546875], + [-77.01816406249995, 38.777734375], + [-77.03037109374995, 38.88925781249998], + [-77.04560546874995, 38.77578125000005], + [-77.09189453124998, 38.719531250000045], + [-77.16464843749995, 38.67656249999999], + [-77.26040039062502, 38.6], + [-77.28378906249998, 38.529199218749994], + [-77.31367187499995, 38.396630859374966], + [-77.27324218749996, 38.35175781249998], + [-77.23193359375, 38.34003906249998], + [-77.10991210937499, 38.3701171875], + [-77.04677734375002, 38.356689453125], + [-76.90634765625, 38.19707031249999], + [-76.64487304687503, 38.13393554687502], + [-76.54951171874995, 38.09448242187497], + [-76.47177734375003, 38.011181640624955], + [-76.35493164062493, 37.96323242187506], + [-76.26425781250003, 37.89355468749997], + [-76.26181640624998, 37.848095703124955], + [-76.29321289062497, 37.79433593750002], + [-76.30561523437501, 37.72158203125002], + [-76.34414062499997, 37.675683593749994], + [-76.43662109374998, 37.67041015625], + [-76.49248046874999, 37.682226562500006], + [-76.79277343749996, 37.93798828124997], + [-76.82861328124997, 37.96152343749998], + [-76.93999023437502, 38.095458984375], + [-77.070654296875, 38.167187499999955], + [-77.11108398437497, 38.165673828124994], + [-76.92509765625002, 38.03300781249996], + [-76.84916992187499, 37.94023437499999], + [-76.7154296875, 37.810156250000034], + [-76.61982421874998, 37.75507812500001], + [-76.54946289062494, 37.66914062500001], + [-76.48408203124995, 37.62885742187498], + [-76.30556640625, 37.57148437500001], + [-76.36762695312495, 37.53027343750006], + [-76.2685546875, 37.49516601562499], + [-76.25439453124997, 37.43061523437498], + [-76.26347656249996, 37.35703125], + [-76.40097656249998, 37.386132812499994], + [-76.40546875000001, 37.331933593749966], + [-76.3931640625, 37.29995117187502], + [-76.45390624999993, 37.27353515625006], + [-76.53837890624999, 37.30937], + [-76.75771484375002, 37.50541992187496], + [-76.755859375, 37.47919921875004], + [-76.73808593750002, 37.44877929687496], + [-76.61088867187493, 37.32255859375002], + [-76.49736328124999, 37.246875], + [-76.40112304687503, 37.21269531250002], + [-76.32695312500002, 37.14926757812506], + [-76.30078125, 37.11088867187496], + [-76.28330078125, 37.05268554687501], + [-76.33828125, 37.01313476562504], + [-76.40087890624997, 36.991308593750034], + [-76.46201171874998, 37.03076171874997], + [-76.50683593749997, 37.07231445312502], + [-76.60229492187497, 37.14287109374999], + [-76.63090820312493, 37.22172851562499], + [-76.703515625, 37.21767578125005], + [-77.006982421875, 37.31767578124999], + [-77.25087890624994, 37.329199218750034], + [-77.22705078124997, 37.30908203125003], + [-77.19619140625, 37.295703125000045], + [-77.00195312500003, 37.27104492187499], + [-76.92519531250002, 37.225], + [-76.76542968749999, 37.18413085937496], + [-76.671875, 37.172949218750006], + [-76.63393554687502, 37.04741210937499], + [-76.50463867187497, 36.96103515624998], + [-76.48784179687502, 36.89702148437499], + [-76.39956054687497, 36.889843749999955], + [-76.24423828125003, 36.95263671875006], + [-76.14399414062495, 36.93061523437501], + [-75.99941406249997, 36.91264648437499], + [-75.96635742187499, 36.861962890624966], + [-75.941552734375, 36.76552734375002], + [-75.89042968749999, 36.65703125], + [-75.75786132812496, 36.22924804687503], + [-75.55869140624998, 35.87934570312498], + [-75.53417968749997, 35.81909179687506], + [-75.58046875, 35.871972656249994], + [-75.72822265624998, 36.10371093750004], + [-75.80976562499998, 36.27104492187502], + [-75.8935546875, 36.56650390624998], + [-75.91787109374997, 36.63266601562506], + [-75.94648437499995, 36.65908203125002], + [-75.96533203124997, 36.637597656249994], + [-75.97343750000002, 36.59995117187506], + [-75.95976562499999, 36.57104492187503], + [-75.99277343749995, 36.47377929687502], + [-75.97846679687498, 36.42915039062498], + [-75.92485351562499, 36.38300781250001], + [-75.86660156250002, 36.26787109374999], + [-75.82006835937494, 36.11284179687502], + [-75.88300781249998, 36.17568359375005], + [-75.9501953125, 36.20898437499997], + [-76.05473632812496, 36.23452148437502], + [-76.14785156250002, 36.279296875], + [-76.14106445312498, 36.21508789062497], + [-76.15, 36.14575195312497], + [-76.22177734374998, 36.16689453125002], + [-76.27060546874998, 36.18989257812501], + [-76.22739257812498, 36.11601562499996], + [-76.32119140625, 36.13818359375003], + [-76.38369140625002, 36.13354492187497], + [-76.42431640624994, 36.067968750000034], + [-76.47880859374993, 36.028173828125006], + [-76.559375, 36.015332031249955], + [-76.67890624999995, 36.075292968750006], + [-76.717626953125, 36.14809570312502], + [-76.733642578125, 36.229150390624994], + [-76.74003906249996, 36.13330078125003], + [-76.71875, 36.03349609375002], + [-76.726220703125, 35.957617187500034], + [-76.61113281249999, 35.94365234375002], + [-76.503515625, 35.95605468749997], + [-76.35830078125, 35.95288085937503], + [-76.26357421874997, 35.96708984374999], + [-76.20654296875, 35.99121093750003], + [-76.06977539062501, 35.970312500000034], + [-76.06005859375, 35.878662109375], + [-76.07568359374997, 35.78754882812501], + [-76.08359374999998, 35.69052734375006], + [-76.04570312499999, 35.691162109375], + [-76.00117187499998, 35.72216796875003], + [-75.97890624999997, 35.89594726562498], + [-75.85390625, 35.96015625000001], + [-75.81201171875, 35.95576171875001], + [-75.77221679687497, 35.89990234375], + [-75.75883789062499, 35.84326171875], + [-75.74472656249995, 35.765478515625034], + [-75.77392578124997, 35.64697265624997], + [-75.965966796875, 35.50839843749998], + [-76.10351562499997, 35.380273437499994], + [-76.17382812499997, 35.354150390624994], + [-76.27524414062495, 35.36904296875002], + [-76.390234375, 35.40126953125002], + [-76.44663085937495, 35.40776367187499], + [-76.489501953125, 35.397021484375045], + [-76.51562, 35.43647460937498], + [-76.53247070312494, 35.508447265624994], + [-76.57719726562502, 35.53232421874998], + [-76.61103515624998, 35.529687499999966], + [-76.63413085937498, 35.453222656250034], + [-76.74140624999998, 35.431494140625034], + [-76.88725585937493, 35.46308593749998], + [-77.03999023437495, 35.527392578125045], + [-76.97446289062503, 35.45839843750002], + [-76.595458984375, 35.3296875], + [-76.55278320312502, 35.30561523437498], + [-76.51293945312497, 35.270410156249994], + [-76.56596679687493, 35.215185546875034], + [-76.60751953124998, 35.152978515624966], + [-76.61337890625, 35.104150390624966], + [-76.62802734374998, 35.073339843750006], + [-76.77915039062503, 34.990332031250034], + [-76.86103515625001, 35.004980468750006], + [-77.07026367187501, 35.154638671875034], + [-76.97495117187503, 35.025195312500045], + [-76.89863281249995, 34.970263671875045], + [-76.74497070312498, 34.94096679687502], + [-76.45673828124998, 34.989355468750034], + [-76.36220703125, 34.9365234375], + [-76.43979492187498, 34.84291992187502], + [-76.51689453124999, 34.777246093749966], + [-76.61801757812498, 34.769921875], + [-76.70708007812499, 34.75214843750001], + [-76.73320312499999, 34.706982421874955], + [-76.79667968749996, 34.70415039062502], + [-76.8958984375, 34.70146484374999], + [-77.04951171874995, 34.697363281250034], + [-77.13388671875, 34.707910156249966], + [-77.25175781249993, 34.615625], + [-77.29624023437503, 34.602929687499994], + [-77.3583984375, 34.620263671874966], + [-77.38447265624998, 34.69438476562496], + [-77.41225585937497, 34.730810546875034], + [-77.412939453125, 34.592138671875006], + [-77.40205078125001, 34.554785156250034], + [-77.37978515625, 34.526611328125], + [-77.51767578125003, 34.45136718750001], + [-77.649658203125, 34.357519531250006], + [-77.69697265624995, 34.33198242187504], + [-77.750732421875, 34.28496093749996], + [-77.86083984374994, 34.149169921875], + [-77.88803710937498, 34.050146484375006], + [-77.92783203125, 33.93974609374999], + [-77.93286132812497, 33.98945312499998], + [-77.926025390625, 34.073144531249966], + [-77.95327148437494, 34.16899414062496], + [-77.970556640625, 33.99340820312497], + [-78.01333007812502, 33.91181640624998], + [-78.40585937499995, 33.91757812499998], + [-78.57768554687496, 33.87324218750001], + [-78.84145507812497, 33.72407226562501], + [-78.92031249999997, 33.65869140625], + [-79.13818359375003, 33.40590820312502], + [-79.19379882812498, 33.24414062500003], + [-79.23837890625, 33.31215820312502], + [-79.22734374999999, 33.36318359375002], + [-79.22646484375, 33.40488281249998], + [-79.28134765624998, 33.31542968749997], + [-79.22924804687503, 33.18515624999998], + [-79.27602539062497, 33.135400390624966], + [-79.41992187499997, 33.04252929687499], + [-79.49868164062502, 33.02729492187498], + [-79.58710937500001, 33.00087890625002], + [-79.61494140624998, 32.909277343750006], + [-79.73500976562494, 32.824804687500034], + [-79.80498046874999, 32.78740234374996], + [-79.93310546874997, 32.81005859375006], + [-79.89365234375, 32.72871093749998], + [-79.94072265625002, 32.667138671874966], + [-80.02177734375002, 32.619921875000045], + [-80.12255859375003, 32.58911132812497], + [-80.18032226562497, 32.592871093750034], + [-80.22968750000001, 32.57651367187498], + [-80.26835937499996, 32.537353515625], + [-80.36284179687496, 32.500732421875], + [-80.46098632812496, 32.521337890625034], + [-80.57221679687498, 32.53369140625006], + [-80.6341796875, 32.51171875000003], + [-80.530029296875, 32.47539062499999], + [-80.474267578125, 32.42275390625002], + [-80.48574218749994, 32.35180664062503], + [-80.51362304687493, 32.324414062499955], + [-80.579345703125, 32.28730468750004], + [-80.60820312500002, 32.292822265625006], + [-80.62583007812498, 32.32626953124998], + [-80.64721679687497, 32.395947265624955], + [-80.67778320312499, 32.38110351562506], + [-80.68305664062498, 32.3486328125], + [-80.709326171875, 32.33706054687505], + [-80.80253906249999, 32.44804687500002], + [-80.79790039062493, 32.363378906250006], + [-80.76533203124995, 32.29833984374997], + [-80.73383789062495, 32.26533203125001], + [-80.70205078124997, 32.245898437500045], + [-80.69423828124997, 32.21572265625002], + [-80.75800781249998, 32.14218750000006], + [-80.79082031250002, 32.125830078125006], + [-80.84921875, 32.113916015624966], + [-80.88208007812494, 32.06860351562497], + [-80.87236328125002, 32.02958984375002], + [-80.92343750000003, 31.944921875], + [-81.04555664062494, 31.892041015624983], + [-81.082861328125, 31.894091796875045], + [-81.11328124999997, 31.87861328125001], + [-81.09550781249999, 31.840917968750034], + [-81.0650390625, 31.813476562500057], + [-81.06611328124995, 31.787988281250023], + [-81.09838867187497, 31.753369140624983], + [-81.16210937499997, 31.74370117187496], + [-81.197900390625, 31.704199218750006], + [-81.18657226562499, 31.666943359374955], + [-81.16552734374997, 31.646142578124966], + [-81.16992187499997, 31.610302734374955], + [-81.24238281249998, 31.574316406250006], + [-81.25937, 31.538916015624977], + [-81.22338867187503, 31.528466796874994], + [-81.195703125, 31.538916015624977], + [-81.17543945312494, 31.531298828125017], + [-81.218896484375, 31.472119140624955], + [-81.25791015624995, 31.43603515624997], + [-81.29497070312496, 31.371191406250006], + [-81.38095703124998, 31.353271484375], + [-81.37773437499993, 31.33232421874999], + [-81.32915039062499, 31.313769531250045], + [-81.28847656249997, 31.263916015625], + [-81.364892578125, 31.171875], + [-81.41259765625003, 31.17944335937503], + [-81.441748046875, 31.19970703124997], + [-81.4603515625, 31.127050781250006], + [-81.45322265624995, 31.088281250000023], + [-81.47138671875001, 31.00903320312503], + [-81.5005859375, 30.913769531249983], + [-81.52041015624997, 30.874658203125023], + [-81.5162109375, 30.801806640625017], + [-81.50395507812499, 30.73144531249997], + [-81.45717773437497, 30.640771484374966], + [-81.38574218749997, 30.26997070312501], + [-81.33710937500001, 30.141210937499977], + [-81.24951171875003, 29.793798828125006], + [-81.10454101562496, 29.45698242187504], + [-80.9, 29.049853515625045], + [-80.56430664062495, 28.556396484375057], + [-80.52412109374995, 28.48608398437503], + [-80.56782226562495, 28.426464843749955], + [-80.58115234375, 28.364697265624983], + [-80.5849609375, 28.271582031250034], + [-80.5728515625, 28.18085937500001], + [-80.53315429687501, 28.070068359375], + [-80.456884765625, 27.90068359374996], + [-80.49956054687499, 27.934472656249994], + [-80.61000976562494, 28.177587890624977], + [-80.62285156249999, 28.320361328125017], + [-80.60693359375003, 28.522900390624983], + [-80.63286132812499, 28.518017578124955], + [-80.65390625, 28.45219726562496], + [-80.66547851562495, 28.374902343750023], + [-80.693505859375, 28.34497070312497], + [-80.73173828124996, 28.462890625], + [-80.72905273437496, 28.516210937500034], + [-80.68847656250003, 28.578515625000023], + [-80.70024414062493, 28.600927734374977], + [-80.76591796874999, 28.6328125], + [-80.7798828125, 28.682958984375006], + [-80.77099609374997, 28.732470703125045], + [-80.80869140625, 28.758935546875023], + [-80.83818359374999, 28.757666015625034], + [-80.81840820312493, 28.635595703125034], + [-80.78720703124998, 28.560644531250034], + [-80.74863281250003, 28.381005859375023], + [-80.68637695312495, 28.272167968749983], + [-80.65009765624993, 28.18090820312503], + [-80.22612304687499, 27.207031250000057], + [-80.12578125, 27.0830078125], + [-80.08867187499996, 26.99394531249999], + [-80.050048828125, 26.807714843750063], + [-80.04130859374999, 26.568603515625], + [-80.11059570312497, 26.13159179687497], + [-80.1263671875, 25.83349609375], + [-80.13627929687499, 25.842626953124977], + [-80.142919921875, 25.8740234375], + [-80.15893554687497, 25.878320312499966], + [-80.21909179687498, 25.741748046875045], + [-80.30083007812502, 25.618554687499994], + [-80.32773437499998, 25.427099609374977], + [-80.36694335937497, 25.33125], + [-80.48466796874999, 25.229833984375034], + [-80.55761718750003, 25.23242187500003], + [-80.73652343749995, 25.156347656249977], + [-80.86220703125, 25.176171875000023], + [-81.01196289062503, 25.133251953124983], + [-81.11049804687494, 25.138037109374977], + [-81.1673828125, 25.22851562500003], + [-81.15869140625, 25.26899414062501], + [-81.13603515624999, 25.309667968750034], + [-81.09765625, 25.319140625000017], + [-80.96538085937496, 25.224316406249955], + [-80.94042968750003, 25.264208984375017], + [-80.98037109375, 25.311669921874994], + [-81.05683593749993, 25.33813476562497], + [-81.11333007812499, 25.367236328125045], + [-81.2271484375, 25.583398437500023], + [-81.34506835937503, 25.731835937499966], + [-81.36494140625001, 25.83105468750003], + [-81.56826171874994, 25.89155273437501], + [-81.715478515625, 25.98315429687503], + [-81.81147460937493, 26.14609375], + [-81.86655273437495, 26.435009765624983], + [-81.93149414062495, 26.46748046875001], + [-81.95893554687495, 26.489941406249983], + [-81.8955078125, 26.597167968750057], + [-81.82866210937496, 26.68706054687499], + [-81.88154296874998, 26.66469726562505], + [-81.92055664062494, 26.631445312500034], + [-81.97016601562493, 26.552050781250017], + [-82.00639648437493, 26.539843750000017], + [-82.03959960937496, 26.552050781250017], + [-82.07788085937503, 26.70434570312503], + [-82.06694335937502, 26.891552734374983], + [-82.01328125, 26.96157226562505], + [-82.09570312500003, 26.96342773437499], + [-82.18110351562501, 26.936767578125057], + [-82.16860351562494, 26.874365234375034], + [-82.1806640625, 26.84008789062497], + [-82.24287109374998, 26.848876953125], + [-82.2900390625, 26.87080078125001], + [-82.35405273437499, 26.93574218750001], + [-82.44135742187501, 27.059667968750034], + [-82.62045898437498, 27.401074218749955], + [-82.65537109375, 27.44921875], + [-82.71459960937497, 27.499609375000063], + [-82.68671874999998, 27.51528320312505], + [-82.63583984375, 27.524560546874994], + [-82.52084960937503, 27.678271484375045], + [-82.430517578125, 27.77114257812505], + [-82.40053710937494, 27.835400390624983], + [-82.40576171874994, 27.862890624999977], + [-82.445703125, 27.902832031250057], + [-82.49814453125003, 27.86791992187503], + [-82.52060546874998, 27.87788085937501], + [-82.57958984375, 27.95844726562501], + [-82.63593749999995, 27.98120117187503], + [-82.67519531249994, 27.963769531250023], + [-82.63378906249994, 27.89775390624999], + [-82.59658203125, 27.873242187499955], + [-82.61098632812502, 27.77724609375005], + [-82.62602539062496, 27.745996093749966], + [-82.66088867187497, 27.71840820312505], + [-82.71533203124994, 27.73310546875001], + [-82.74287109374995, 27.70937], + [-82.77529296875, 27.734375], + [-82.80756835937501, 27.776562499999983], + [-82.84350585937494, 27.845996093750017], + [-82.74853515624997, 28.236816406250057], + [-82.66064453125, 28.48583984374997], + [-82.65058593749998, 28.769921875000023], + [-82.64404296875, 28.81201171875], + [-82.65146484375, 28.8875], + [-82.76933593749993, 29.051562500000045], + [-83.29047851562498, 29.45190429687497], + [-83.69438476562502, 29.92597656250001], + [-84.04423828124996, 30.10380859374999], + [-84.30966796874995, 30.064746093750045], + [-84.355615234375, 30.02900390625004], + [-84.375341796875, 29.982275390625034], + [-84.35869140624999, 29.929394531249983], + [-84.38281250000003, 29.90737304687505], + [-84.45405273437498, 29.91015624999997], + [-84.55, 29.897851562499966], + [-84.80053710937494, 29.773046875000034], + [-84.888916015625, 29.77763671874999], + [-84.96918945312493, 29.745312499999983], + [-85.029296875, 29.721093750000023], + [-85.18603515624997, 29.707910156249994], + [-85.31894531249995, 29.680224609375045], + [-85.37636718750002, 29.695214843749994], + [-85.413818359375, 29.76757812499997], + [-85.413818359375, 29.842480468749955], + [-85.38344726562497, 29.785058593749994], + [-85.33642578124997, 29.740136718749994], + [-85.31489257812493, 29.758105468750017], + [-85.30683593749998, 29.79785156250003], + [-85.35361328125, 29.875732421875], + [-85.50429687499997, 29.97578125000004], + [-85.67578125, 30.121923828125063], + [-85.62348632812501, 30.11708984375005], + [-85.61025390624997, 30.14838867187501], + [-85.66342773437498, 30.18945312500003], + [-85.640966796875, 30.236914062500034], + [-85.60351562500003, 30.286767578124966], + [-85.67587890625003, 30.279296875000057], + [-85.7408203125, 30.24438476562503], + [-85.74296875000002, 30.201269531250063], + [-85.75581054687495, 30.1669921875], + [-85.79077148437497, 30.171972656250034], + [-85.85566406249995, 30.21440429687496], + [-86.17514648437495, 30.332519531250057], + [-86.454443359375, 30.39912109375004], + [-86.24008789062503, 30.429101562500023], + [-86.12382812499999, 30.40581054687499], + [-86.13769531249997, 30.441552734374966], + [-86.16567382812497, 30.464257812499994], + [-86.25737304687502, 30.493017578124977], + [-86.374169921875, 30.482080078124966], + [-86.44794921874993, 30.49560546874997], + [-86.52338867187493, 30.467089843750017], + [-86.60605468749998, 30.424707031249994], + [-86.67963867187495, 30.40288085937499], + [-86.967626953125, 30.37236328124999], + [-87.201171875, 30.339257812499994], + [-87.163720703125, 30.37421875000001], + [-87.12377929687494, 30.396679687499983], + [-86.98579101562498, 30.43085937500001], + [-86.96513671874996, 30.50190429687501], + [-86.99755859375, 30.5703125], + [-87.03388671874993, 30.55390625000004], + [-87.07202148437497, 30.500439453124983], + [-87.118798828125, 30.538964843750023], + [-87.17060546874998, 30.538769531249983], + [-87.18466796875, 30.453710937500063], + [-87.25107421875003, 30.396679687499983], + [-87.28105468750002, 30.339257812499994], + [-87.47578124999998, 30.294287109375006], + [-87.500732421875, 30.30927734375004], + [-87.44375, 30.363818359375045], + [-87.44829101562499, 30.394140625], + [-87.51328124999998, 30.36811523437501], + [-87.62226562499998, 30.264746093750006], + [-88.00595703124998, 30.230908203124955], + [-87.985009765625, 30.25439453125003], + [-87.90400390625001, 30.259082031250017], + [-87.79028320312503, 30.291796875000017], + [-87.81328124999999, 30.34687], + [-87.85712890624995, 30.40742187500004], + [-87.89760742187494, 30.414160156249977], + [-87.92431640624997, 30.44965820312504], + [-87.92299804687497, 30.5615234375], + [-87.948876953125, 30.626904296874983], + [-88.011328125, 30.694189453125006], + [-88.03242187499995, 30.68125], + [-88.078369140625, 30.56621093749996], + [-88.11655273437495, 30.41533203124996], + [-88.13544921874998, 30.366601562499994], + [-88.24921874999998, 30.363183593749994], + [-88.34990234374999, 30.373486328124955], + [-88.69208984374998, 30.355371093749994], + [-88.819921875, 30.40649414062503], + [-88.87294921874997, 30.41630859374999], + [-88.90522460937495, 30.415136718750006], + [-89.054052734375, 30.368261718750063], + [-89.2236328125, 30.332373046875034], + [-89.26357421874997, 30.343652343750023], + [-89.32055664062503, 30.3453125], + [-89.44350585937502, 30.22314453124997], + [-89.58847656249998, 30.165966796874955], + [-89.954248046875, 30.26875], + [-90.04521484374996, 30.351416015625006], + [-90.12597656249997, 30.369091796874955], + [-90.22529296874995, 30.379296875], + [-90.33198242187493, 30.277587890625057], + [-90.41303710937501, 30.140332031249983], + [-90.28496093749993, 30.065087890625023], + [-90.17534179687499, 30.02910156249996], + [-89.99418945312496, 30.059277343749983], + [-89.89404296874997, 30.125878906249966], + [-89.812255859375, 30.123681640624966], + [-89.77314453124995, 30.137207031250057], + [-89.73745117187497, 30.171972656250034], + [-89.66752929687502, 30.14453125000003], + [-89.66503906249994, 30.117041015625034], + [-89.71469726562503, 30.078320312499955], + [-89.77724609375, 30.04570312499999], + [-89.81518554687497, 30.007275390624955], + [-89.743798828125, 29.929833984374994], + [-89.631689453125, 29.90380859375003], + [-89.58950195312502, 29.9150390625], + [-89.56337890625002, 30.002099609374966], + [-89.49443359375002, 30.058154296875017], + [-89.400732421875, 30.04604492187505], + [-89.41406249999997, 30.010888671874994], + [-89.40092773437496, 29.977685546874966], + [-89.35786132812498, 29.920996093750063], + [-89.36279296875, 29.83979492187504], + [-89.35444335937501, 29.82021484375005], + [-89.45541992187498, 29.784375], + [-89.53066406250002, 29.77221679687503], + [-89.59086914062493, 29.725292968749983], + [-89.559326171875, 29.698046875000017], + [-89.62065429687496, 29.674121093750045], + [-89.66210937499997, 29.683691406250034], + [-89.68295898437495, 29.674853515625017], + [-89.689208984375, 29.64604492187499], + [-89.72089843749995, 29.619287109374966], + [-89.67480468749997, 29.538671874999977], + [-89.580322265625, 29.48603515625001], + [-89.51367187500003, 29.420068359374966], + [-89.24570312499995, 29.33320312500004], + [-89.18076171874998, 29.335693359375], + [-89.116845703125, 29.248242187499955], + [-89.06533203125, 29.21816406250005], + [-89.01572265625, 29.202880859375057], + [-89.02138671875, 29.14272460937505], + [-89.10952148437502, 29.098681640625045], + [-89.13334960937499, 29.046142578125], + [-89.15551757812497, 29.01660156250003], + [-89.19526367187498, 29.05400390624999], + [-89.23608398437494, 29.081103515625017], + [-89.33056640625003, 28.998681640625023], + [-89.37612304687497, 28.981347656250023], + [-89.353515625, 29.070214843750023], + [-89.38920898437499, 29.105029296875017], + [-89.44316406249996, 29.194140625000045], + [-89.52177734374999, 29.249267578125], + [-89.57714843749997, 29.267529296874983], + [-89.62026367187497, 29.302392578124966], + [-89.67246093749995, 29.316503906250006], + [-89.71699218749995, 29.312890625], + [-89.79238281249997, 29.33320312500004], + [-89.79736328125, 29.38061523437503], + [-89.81826171875, 29.416113281250063], + [-89.87724609375002, 29.45800781249997], + [-90.15908203124997, 29.537158203125017], + [-90.16079101562497, 29.50439453125], + [-90.14125976562497, 29.479736328125057], + [-90.10078124999998, 29.463330078124983], + [-90.05234374999998, 29.43139648437497], + [-90.05278320312499, 29.336816406249966], + [-90.07373046875, 29.296777343749994], + [-90.08271484374995, 29.23974609375], + [-90.10136718749993, 29.181787109375023], + [-90.13583984375003, 29.136083984375034], + [-90.21279296875, 29.104931640624983], + [-90.24672851562497, 29.131005859374966], + [-90.30161132812495, 29.255810546874983], + [-90.37919921874996, 29.29511718750001], + [-90.50249023437493, 29.299755859374983], + [-90.58623046874996, 29.27153320312499], + [-90.67749023437497, 29.15063476562497], + [-90.75102539062496, 29.13085937500003], + [-91.00273437499999, 29.193505859374994], + [-91.29013671875, 29.288964843749994], + [-91.28271484375, 29.320751953124983], + [-91.2375, 29.330957031250023], + [-91.15078124999994, 29.317919921875045], + [-91.15537109374998, 29.350683593750034], + [-91.243994140625, 29.457324218750017], + [-91.26025390624994, 29.505468750000063], + [-91.24882812499993, 29.56420898437503], + [-91.27773437499997, 29.562890625000023], + [-91.33095703124997, 29.513574218750023], + [-91.51420898437499, 29.55537109375001], + [-91.564794921875, 29.605322265625063], + [-91.6724609375, 29.746093750000057], + [-91.82441406249995, 29.75068359375001], + [-91.8931640625, 29.836035156249977], + [-92.017333984375, 29.80029296874997], + [-92.08022460937502, 29.7607421875], + [-92.135498046875, 29.699462890625057], + [-92.11396484374998, 29.667675781249955], + [-92.05888671874993, 29.61718749999997], + [-92.08403320312499, 29.59282226562499], + [-92.26083984374995, 29.55683593750004], + [-92.6712890625, 29.597070312499966], + [-92.79130859374993, 29.634667968749994], + [-92.95239257812497, 29.714160156250017], + [-93.17568359375, 29.778955078124994], + [-93.28320312499997, 29.789404296874977], + [-93.38847656250002, 29.77656250000004], + [-93.69482421874997, 29.769921875000023], + [-93.76591796874999, 29.752685546875057], + [-93.82646484374999, 29.725146484375045], + [-93.86572265624997, 29.75561523437503], + [-93.88388671874995, 29.81000976562501], + [-93.84833984374998, 29.81884765625003], + [-93.80878906249993, 29.85083007812497], + [-93.77309570312494, 29.91406249999997], + [-93.76904296875, 29.95229492187505], + [-93.79399414062493, 29.977246093749983], + [-93.84145507812502, 29.97973632812503], + [-93.94628906249997, 29.81499023437496], + [-93.88637695312502, 29.72265624999997], + [-93.89047851562495, 29.689355468750023], + [-94.09965820312493, 29.67041015625], + [-94.57446289062494, 29.48452148437505], + [-94.759619140625, 29.384277343750057], + [-94.75014648437494, 29.41801757812499], + [-94.52626953125, 29.547949218750006], + [-94.60532226562503, 29.567822265624955], + [-94.73261718749993, 29.53535156250001], + [-94.77827148437498, 29.54785156249997], + [-94.72436523437503, 29.65527343750003], + [-94.74194335937497, 29.75], + [-94.83232421874999, 29.752587890625023], + [-94.889892578125, 29.676953124999983], + [-94.92988281249998, 29.68017578125003], + [-94.98227539062498, 29.712597656249983], + [-95.0228515625, 29.70234375000001], + [-94.992822265625, 29.53095703125001], + [-94.93588867187495, 29.46044921875003], + [-94.88828125000003, 29.37055664062501], + [-95.01831054687497, 29.25947265625004], + [-95.13906249999997, 29.167822265625006], + [-95.15214843749996, 29.079248046874994], + [-95.27348632812499, 28.96386718750003], + [-95.38764648437498, 28.89843750000003], + [-95.655859375, 28.74462890625003], + [-95.73237304687495, 28.71171874999999], + [-95.85341796875, 28.64033203125001], + [-96.02041015625002, 28.586816406250023], + [-96.18051757812503, 28.50185546875005], + [-96.23452148437502, 28.488964843749983], + [-96.13227539062498, 28.560888671875006], + [-96.01103515624996, 28.631933593749977], + [-96.11503906250002, 28.622216796874966], + [-96.27534179687498, 28.655126953125006], + [-96.3734375, 28.657031250000045], + [-96.37412109374995, 28.631103515625], + [-96.44873046874997, 28.594482421875], + [-96.526025390625, 28.648291015625034], + [-96.55971679687502, 28.684472656250023], + [-96.57568359374997, 28.715722656249994], + [-96.60849609375, 28.72329101562505], + [-96.64003906249994, 28.708789062500017], + [-96.52465820312497, 28.48872070312504], + [-96.47548828125, 28.479199218749955], + [-96.42109374999993, 28.457324218750045], + [-96.48881835937496, 28.40605468749999], + [-96.56171874999998, 28.367138671874955], + [-96.67636718749998, 28.34130859375003], + [-96.77353515624998, 28.421630859375057], + [-96.794580078125, 28.320849609375017], + [-96.806884765625, 28.220214843750057], + [-96.839501953125, 28.194384765625017], + [-96.89160156249994, 28.157568359374977], + [-96.91987304687493, 28.18535156249996], + [-96.93330078125001, 28.224267578124994], + [-96.96665039062495, 28.189550781250006], + [-97.01547851562495, 28.163476562500023], + [-97.09604492187503, 28.158251953125045], + [-97.156494140625, 28.144335937500045], + [-97.15507812499999, 28.102636718749977], + [-97.141259765625, 28.060742187499983], + [-97.034326171875, 28.093847656250063], + [-97.07309570312498, 27.98608398437503], + [-97.17143554687493, 27.87958984375001], + [-97.2515625, 27.854443359374955], + [-97.37412109375, 27.870019531250023], + [-97.40439453124998, 27.859326171874983], + [-97.43149414062498, 27.83720703124999], + [-97.28872070312494, 27.670605468749983], + [-97.38046874999998, 27.41933593750005], + [-97.43911132812502, 27.328271484374966], + [-97.47978515624996, 27.316601562499983], + [-97.52387695312498, 27.31396484374997], + [-97.68212890624997, 27.39492187500005], + [-97.76845703124997, 27.45751953125], + [-97.69238281250003, 27.287158203125017], + [-97.48510742187497, 27.237402343750006], + [-97.47451171874997, 27.172949218750034], + [-97.47568359375, 27.11787109375001], + [-97.51650390625, 27.05322265624997], + [-97.55468749999994, 26.96733398437496], + [-97.52651367187497, 26.907519531250045], + [-97.49379882812497, 26.759619140625034], + [-97.46582031249997, 26.691748046875063], + [-97.43505859375, 26.48583984375003], + [-97.40234375, 26.396533203125045], + [-97.21391601562499, 26.067871093750057], + [-97.150390625, 26.065332031249966], + [-97.14018554687496, 26.02973632812501], + [-97.14624023437494, 25.961474609375045], + [-97.28178710937496, 25.941601562499983], + [-97.33867187499999, 25.911181640625017], + [-97.34975585937494, 25.884765625000057], + [-97.35815429687497, 25.870507812499994], + [-97.37563476562497, 25.871826171875], + [-97.440283203125, 25.89082031250004], + [-97.587255859375, 25.984179687500045], + [-97.80141601562494, 26.042041015625017], + [-98.08281249999999, 26.06445312499997], + [-98.27504882812497, 26.111181640624977], + [-98.378125, 26.18237304687503], + [-98.48588867187493, 26.224560546874983], + [-98.59829101562502, 26.237841796875045], + [-98.69140624999997, 26.276464843750006], + [-98.765234375, 26.340429687499977], + [-98.87319335937498, 26.38125], + [-99.01528320312497, 26.39897460937499], + [-99.10776367187498, 26.446923828124994], + [-99.17207031250003, 26.564160156249983], + [-99.17236328125, 26.56591796875], + [-99.229931640625, 26.761914062499955], + [-99.30244140625003, 26.88471679687501], + [-99.4435546875, 27.03666992187499], + [-99.45649414062497, 27.056640625000057], + [-99.45654296874999, 27.05668945312496], + [-99.45771484374995, 27.081689453124994], + [-99.44023437499995, 27.170117187499983], + [-99.45512695312496, 27.23369140624996], + [-99.4998046875, 27.285498046875034], + [-99.51005859374996, 27.34033203125003], + [-99.48583984375, 27.398046875000063], + [-99.48427734374995, 27.467382812500063], + [-99.50532226562497, 27.54833984375003], + [-99.5953125, 27.635888671875023], + [-99.75424804687496, 27.729931640624983], + [-99.88964843750001, 27.867285156250006], + [-100.00141601562497, 28.0478515625], + [-100.11196289062501, 28.172949218750006], + [-100.22128906249999, 28.242626953124983], + [-100.29604492187495, 28.32768554687499], + [-100.33627929687498, 28.428125], + [-100.34814453124999, 28.486425781250006], + [-100.33173828125003, 28.502539062500006], + [-100.39892578124994, 28.61420898437501], + [-100.54970703125002, 28.821337890625017], + [-100.636328125, 28.972802734374966], + [-100.65864257812501, 29.06855468750004], + [-100.75458984375001, 29.182519531249994], + [-100.92412109375, 29.314697265625], + [-101.01630859374995, 29.400683593750017], + [-101.03862304687497, 29.460302734375006], + [-101.03896484374995, 29.46040039062501], + [-101.30351562499993, 29.63408203124996], + [-101.38037109374996, 29.74257812500005], + [-101.44038085937503, 29.77685546875], + [-101.50927734375003, 29.773144531249955], + [-101.54462890624994, 29.783544921875034], + [-101.54638671874994, 29.808056640624955], + [-101.56870117187496, 29.809228515625023], + [-101.61162109375, 29.786962890625034], + [-101.75234375, 29.782470703125], + [-101.99091796875, 29.795703125000017], + [-102.1630859375, 29.825244140625017], + [-102.26894531249998, 29.871191406250034], + [-102.34306640624997, 29.86499023437503], + [-102.38564453124995, 29.80664062500003], + [-102.47626953125003, 29.769091796875017], + [-102.61494140624994, 29.75234375], + [-102.73417968749999, 29.643945312500023], + [-102.83398437499999, 29.443945312500034], + [-102.87783203124995, 29.31533203125005], + [-102.86567382812495, 29.258007812499983], + [-102.8919921875, 29.216406250000034], + [-102.95683593749996, 29.190380859374983], + [-103.02285156250001, 29.13222656250005], + [-103.08999023437501, 29.041894531250023], + [-103.16831054687498, 28.998193359374994], + [-103.25771484374998, 29.001123046874966], + [-103.42294921874998, 29.070703125000023], + [-103.66396484374997, 29.206884765625063], + [-103.85292968750001, 29.29106445312499], + [-103.98974609374999, 29.323144531250023], + [-104.110595703125, 29.386132812499994], + [-104.21552734374998, 29.479882812499994], + [-104.31220703124995, 29.54243164062504], + [-104.40063476562503, 29.57373046875], + [-104.50400390624995, 29.677685546874955], + [-104.62221679687497, 29.85429687499996], + [-104.68134765625003, 29.990527343750017], + [-104.68134765625003, 30.134375], + [-104.83588867187497, 30.447656249999966], + [-104.91787109374998, 30.583349609375006], + [-104.97880859374996, 30.645947265624955], + [-105.09814453125003, 30.720556640625063], + [-105.27583007812498, 30.807275390624966], + [-105.51401367187502, 30.98076171874996], + [-105.81269531250003, 31.241015625000045], + [-106.02407226562501, 31.39775390624999], + [-106.14804687499995, 31.450927734375], + [-106.25571289062495, 31.544677734375], + [-106.34697265624997, 31.679003906250017], + [-106.43603515625, 31.764453125000017], + [-106.44541015624996, 31.768408203125006], + [-106.45322265624995, 31.770166015625023], + [-106.67304687499997, 31.771337890625006], + [-106.89287109374999, 31.772460937500057], + [-107.11269531250001, 31.77363281250001], + [-107.33251953124994, 31.774755859374977], + [-107.55234374999996, 31.77587890625003], + [-107.772216796875, 31.77705078125001], + [-107.99204101562502, 31.778173828125063], + [-108.21181640625002, 31.779345703125017], + [-108.2125, 31.666845703125034], + [-108.21318359374995, 31.55439453125004], + [-108.21381835937498, 31.44189453125003], + [-108.21445312499993, 31.329443359375034], + [-108.56787109375, 31.328808593749983], + [-108.92133789062498, 31.328125], + [-109.27475585937495, 31.32744140624999], + [-109.62822265625002, 31.326806640625023], + [-109.98164062499998, 31.32617187499997], + [-110.33510742187497, 31.325537109375034], + [-110.68852539062502, 31.324853515624994], + [-111.0419921875, 31.32421875000003], + [-111.51621093749998, 31.472265625], + [-111.99047851562497, 31.620214843750034], + [-112.46474609374995, 31.768261718749983], + [-112.93896484375001, 31.91625976562503], + [-113.41318359374999, 32.064306640625006], + [-113.88745117187499, 32.21230468750002], + [-114.36171874999997, 32.36030273437498], + [-114.83593749999994, 32.50830078125003], + [-114.78798828124995, 32.564794921875006], + [-114.72475585937495, 32.71533203125003], + [-114.83906249999997, 32.704736328124994], + [-115.1251953125, 32.68330078124998], + [-115.41137695312503, 32.66186523437506], + [-115.69750976562497, 32.640478515625034], + [-115.98369140625, 32.61904296875002], + [-116.26982421874995, 32.59760742187501], + [-116.55595703124997, 32.57622070312502], + [-116.84208984375, 32.554785156250006], + [-117.12827148437495, 32.533349609374994], + [-117.13046874999996, 32.539746093749955], + [-117.13740234374995, 32.64916992187503], + [-117.18374023437498, 32.68789062500002], + [-117.24345703124997, 32.664013671874955], + [-117.27070312500001, 32.80625], + [-117.25576171875, 32.87338867187498], + [-117.26298828124996, 32.938867187499994], + [-117.31884765624997, 33.10004882812498], + [-117.46743164062495, 33.295507812500006], + [-117.788525390625, 33.53847656250002], + [-117.95209960937501, 33.61962890625003], + [-118.08051757812497, 33.72216796874997], + [-118.16191406249995, 33.75068359375001], + [-118.26440429687496, 33.75859375000002], + [-118.29418945312499, 33.712304687499994], + [-118.41044921874996, 33.74394531249996], + [-118.39296874999995, 33.858300781249994], + [-118.506201171875, 34.01738281249999], + [-118.59882812499997, 34.035009765625034], + [-118.83203124999996, 34.02446289062502], + [-119.14375, 34.11201171874998], + [-119.23583984374997, 34.164111328125045], + [-119.26767578124998, 34.257421875000034], + [-119.41367187499996, 34.338574218749955], + [-119.60605468749999, 34.41801757812499], + [-119.71318359374997, 34.39965820312497], + [-119.8533203125, 34.41196289062498], + [-120.052978515625, 34.469287109375045], + [-120.16953125000003, 34.476464843749994], + [-120.396484375, 34.459570312500006], + [-120.48120117187503, 34.47163085937498], + [-120.55981445312497, 34.543896484374955], + [-120.64467773437502, 34.57998046875002], + [-120.626708984375, 34.66894531250003], + [-120.63759765625001, 34.74936523437498], + [-120.62490234375, 34.81196289062504], + [-120.66303710937494, 34.94926757812502], + [-120.63359374999999, 35.07646484375002], + [-120.65908203124994, 35.122412109375034], + [-120.70703125000003, 35.15766601562504], + [-120.85737304687501, 35.209667968749955], + [-120.88486328125002, 35.274951171875045], + [-120.86030273437498, 35.36542968749998], + [-120.899609375, 35.42509765624999], + [-121.02285156249998, 35.480761718750045], + [-121.13793945312497, 35.60712890625004], + [-121.28383789062494, 35.67631835937499], + [-121.34384765625, 35.792236328125], + [-121.43374023437502, 35.863867187500006], + [-121.464990234375, 35.927392578124994], + [-121.66435546875002, 36.15405273437497], + [-121.87739257812498, 36.33105468749997], + [-121.91015625, 36.432910156250045], + [-121.91865234374995, 36.572363281250034], + [-121.83515625, 36.65747070312506], + [-121.78999023437494, 36.732275390625006], + [-121.79453124999998, 36.80097656249998], + [-121.80742187499995, 36.851220703124994], + [-121.88066406249995, 36.93891601562501], + [-122.16420898437498, 36.99096679687506], + [-122.394921875, 37.20751953125003], + [-122.408447265625, 37.373144531250006], + [-122.49921875000001, 37.542626953124994], + [-122.500439453125, 37.652783203124955], + [-122.51420898437496, 37.77197265625], + [-122.44560546875002, 37.797998046874966], + [-122.38408203125, 37.78852539062498], + [-122.39028320312502, 37.741064453125006], + [-122.3697265625, 37.65585937500006], + [-122.29760742187497, 37.59184570312499], + [-122.22866210937497, 37.56391601562498], + [-122.16601562499999, 37.50166015624998], + [-122.11904296875001, 37.482812499999966], + [-122.07050781249998, 37.47827148437503], + [-122.09653320312495, 37.518212890624994], + [-122.12412109374998, 37.54379882812506], + [-122.15805664062496, 37.62646484375003], + [-122.22221679687497, 37.732031250000034], + [-122.29599609375, 37.79033203125002], + [-122.333447265625, 37.89658203124998], + [-122.36547851562494, 37.92119140625002], + [-122.38544921875001, 37.960595703124966], + [-122.31425781249999, 38.00732421874997], + [-122.21704101562499, 38.040625], + [-122.08671875, 38.04960937499999], + [-121.71684570312496, 38.03408203125002], + [-121.6380859375, 38.06127929687506], + [-121.57299804687497, 38.05239257812502], + [-121.52534179687503, 38.05590820312503], + [-121.62573242187496, 38.083935546874955], + [-121.68222656250002, 38.07480468750006], + [-121.74863281249995, 38.08046875000005], + [-121.88076171874997, 38.075], + [-121.9341796875, 38.08681640625002], + [-121.99311523437503, 38.12011718750006], + [-122.03149414062503, 38.12353515625003], + [-122.15375976562498, 38.065527343750034], + [-122.20830078124999, 38.072558593750045], + [-122.33710937500003, 38.135888671874966], + [-122.39335937499995, 38.14482421875002], + [-122.48388671875, 38.108837890624955], + [-122.49492187499993, 37.953564453124955], + [-122.46689453125, 37.83818359374999], + [-122.52133789062499, 37.82641601562497], + [-122.5841796875, 37.87407226562502], + [-122.68071289062495, 37.90234375], + [-122.76040039062502, 37.945654296875034], + [-122.87294921874995, 38.02607421874998], + [-122.93198242187498, 38.05546875000002], + [-122.998779296875, 37.98862304687498], + [-123.00146484375001, 38.01928710937503], + [-122.96816406249998, 38.097021484375034], + [-122.97758789062495, 38.227343750000045], + [-122.87680664062502, 38.12333984374999], + [-122.90815429687501, 38.19658203124999], + [-122.9865234375, 38.27709960937506], + [-123.04619140624997, 38.305078124999966], + [-123.12114257812497, 38.449267578125045], + [-123.28974609374995, 38.53583984375001], + [-123.42480468750001, 38.67563476562498], + [-123.701123046875, 38.90727539062502], + [-123.71953124999993, 39.11098632812502], + [-123.82031249999994, 39.36840820312497], + [-123.77778320312498, 39.51494140624999], + [-123.78349609375, 39.61870117187499], + [-123.83291015624994, 39.775488281250034], + [-123.88447265624997, 39.86079101562501], + [-124.10849609374995, 40.09453125000002], + [-124.32402343749999, 40.25195312500003], + [-124.35654296875003, 40.37109374999997], + [-124.3716796875, 40.49121093750003], + [-124.32451171874999, 40.59809570312504], + [-124.28369140625003, 40.710546875000034], + [-124.25390625, 40.74028320312496], + [-124.24233398437495, 40.727880859375006], + [-124.25058593750003, 40.70390625000002], + [-124.22001953124993, 40.69648437500001], + [-124.20844726562497, 40.74609375], + [-124.19023437499999, 40.77172851562497], + [-124.22250976562499, 40.77504882812502], + [-124.21918945312494, 40.79072265625001], + [-124.19990234375001, 40.82207031250002], + [-124.13310546874999, 40.96977539062499], + [-124.14003906249998, 41.155908203124994], + [-124.06850585937498, 41.38417968750005], + [-124.07192382812497, 41.45952148437502], + [-124.11767578124996, 41.62172851562502], + [-124.163232421875, 41.71899414062503], + [-124.24462890624997, 41.78793945312506], + [-124.20874023437494, 41.88857421875005], + [-124.21166992187501, 41.98461914062497], + [-124.35527343749996, 42.122900390625006], + [-124.410009765625, 42.30434570312502], + [-124.4205078125, 42.381005859374994], + [-124.40615234375002, 42.58369140624998], + [-124.44379882812495, 42.67021484375002], + [-124.53964843750003, 42.812890624999966], + [-124.49858398437502, 42.936865234375006], + [-124.45444335937499, 43.01235351562502], + [-124.34658203124997, 43.341650390625034], + [-124.32060546875, 43.368212890625045], + [-124.27548828124995, 43.367382812499955], + [-124.19692382812502, 43.42333984374997], + [-124.23315429687494, 43.43637695312498], + [-124.28798828125001, 43.40971679687496], + [-124.23920898437503, 43.54003906250006], + [-124.184375, 43.65156250000004], + [-124.14873046874997, 43.691748046875034], + [-124.13066406249993, 44.05566406250003], + [-124.099169921875, 44.33378906250002], + [-124.04746093749995, 44.425488281249955], + [-124.06542968749997, 44.520068359375045], + [-124.04453124999998, 44.648242187500045], + [-124.05917968750003, 44.77773437500005], + [-123.94858398437496, 45.40083007812498], + [-123.9630859375, 45.47607421875003], + [-123.92934570312495, 45.57695312499996], + [-123.96123046874997, 45.84296874999998], + [-123.94711914062502, 46.140576171874955], + [-123.97524414062498, 46.178320312500006], + [-123.989306640625, 46.21938476562502], + [-123.96293945312496, 46.225439453125006], + [-123.911669921875, 46.18217773437499], + [-123.6736328125, 46.1826171875], + [-123.52163085937494, 46.22265624999997], + [-123.46635742187496, 46.20942382812504], + [-123.40229492187497, 46.154980468749955], + [-123.32158203124995, 46.14399414062504], + [-123.22060546874998, 46.153613281250045], + [-123.25131835937502, 46.16728515624999], + [-123.29868164062499, 46.17084960937498], + [-123.40473632812501, 46.22099609374999], + [-123.46484375, 46.27109374999998], + [-123.65034179687495, 46.26772460937502], + [-123.68837890624998, 46.29985351562499], + [-123.89570312499994, 46.26777343750001], + [-123.95976562499993, 46.30073242187498], + [-124.07275390624996, 46.279443359374994], + [-124.04511718750001, 46.372900390625034], + [-124.05019531249998, 46.49052734375002], + [-124.04433593750002, 46.605078125], + [-124.01640625000002, 46.521386718749994], + [-123.946142578125, 46.43256835937501], + [-123.91240234374997, 46.53334960937505], + [-123.88916015625003, 46.660009765625006], + [-123.95771484374997, 46.708691406249955], + [-124.0716796875, 46.74477539062502], + [-124.11254882812497, 46.862695312499994], + [-123.84287109375002, 46.963183593750045], + [-123.98603515624995, 46.984472656250006], + [-124.04223632812496, 47.0296875], + [-124.11171875, 47.03520507812496], + [-124.11679687499995, 47.00034179687506], + [-124.1392578125, 46.95468749999998], + [-124.16357421874999, 47.01533203125001], + [-124.17050781249998, 47.08666992187506], + [-124.19882812499996, 47.20854492187502], + [-124.30927734375, 47.40458984374999], + [-124.376025390625, 47.658642578124955], + [-124.46005859374999, 47.78422851562496], + [-124.62109375000001, 47.90415039062498], + [-124.66308593749996, 47.97412109375003], + [-124.70166015625, 48.151660156250045], + [-124.67998046874993, 48.28588867187503], + [-124.7099609375, 48.38037109375], + [-124.63261718749997, 48.37504882812499], + [-124.42905273437498, 48.30078125000006], + [-124.17548828125001, 48.24243164062497], + [-124.09877929687501, 48.2], + [-123.97578125, 48.16845703125], + [-123.29443359375001, 48.119531249999966], + [-123.24990234375001, 48.124218749999955], + [-123.16186523437501, 48.154541015625], + [-123.12441406250002, 48.15092773437499], + [-123.02421874999995, 48.08159179687499], + [-122.97387695312499, 48.07329101562496], + [-122.90888671874998, 48.076904296875], + [-122.86088867187497, 48.09003906250001], + [-122.77861328125, 48.13759765625002], + [-122.76752929687497, 48.120019531249994], + [-122.76909179687502, 48.07597656249999], + [-122.73974609374999, 48.01323242187499], + [-122.67949218749997, 47.93178710937502], + [-122.65664062500002, 47.88115234374999], + [-122.77841796874996, 47.738427734374966], + [-122.80175781250001, 47.73535156250006], + [-122.80537109374994, 47.78364257812504], + [-122.82138671875, 47.79316406250001], + [-123.05063476562499, 47.55195312499998], + [-123.13105468749995, 47.437744140625], + [-123.1390625, 47.386083984375034], + [-123.13632812499996, 47.355810546875006], + [-123.10419921874998, 47.348388671875], + [-123.03090820312498, 47.360205078125006], + [-122.92216796874993, 47.40766601562498], + [-122.91689453125002, 47.41796875000006], + [-123.01821289062497, 47.40107421874998], + [-123.066796875, 47.39965820312506], + [-123.06015624999998, 47.453662109375045], + [-123.04863281249995, 47.479345703125034], + [-122.98247070312496, 47.55937], + [-122.912890625, 47.60737304687501], + [-122.81406250000003, 47.658544921875034], + [-122.75712890624997, 47.70053710937506], + [-122.71787109374998, 47.762109375], + [-122.608154296875, 47.83549804687502], + [-122.58789062499996, 47.85595703125003], + [-122.59267578124995, 47.91640625], + [-122.58574218749996, 47.92788085937502], + [-122.53281250000002, 47.919726562500045], + [-122.51079101562497, 47.81572265624999], + [-122.52392578124999, 47.769335937500045], + [-122.61840820312496, 47.712792968749994], + [-122.63017578124996, 47.69282226562501], + [-122.61362304687496, 47.615625], + [-122.62827148437502, 47.60815429687497], + [-122.66430664062499, 47.61723632812496], + [-122.67548828124995, 47.612353515625045], + [-122.58583984374998, 47.52841796874998], + [-122.55742187499997, 47.46318359375002], + [-122.55356445312498, 47.404931640624966], + [-122.57788085937496, 47.29316406250001], + [-122.60390625000002, 47.27460937499998], + [-122.64863281249998, 47.28144531250004], + [-122.70771484374994, 47.31640625000006], + [-122.72089843749997, 47.30512695312498], + [-122.76777343750001, 47.21835937500006], + [-122.78330078124998, 47.22597656250002], + [-122.81254882812499, 47.328955078125034], + [-122.82846679687503, 47.336572265624994], + [-122.91953125000002, 47.289648437500006], + [-122.95620117187494, 47.24458007812498], + [-122.98764648437495, 47.172558593749955], + [-123.02758789062501, 47.13891601562503], + [-122.91416015624999, 47.13149414062505], + [-122.81196289062495, 47.14599609374997], + [-122.72988281250002, 47.11181640625003], + [-122.70195312500002, 47.11088867187502], + [-122.62705078125003, 47.14423828124998], + [-122.60415039062498, 47.1669921875], + [-122.54218749999997, 47.27558593749998], + [-122.51108398437503, 47.295019531250034], + [-122.46484375000003, 47.29580078125002], + [-122.42011718749997, 47.31210937499998], + [-122.35380859374996, 47.37158203125], + [-122.35112304687495, 47.39521484375004], + [-122.37524414062499, 47.52836914062499], + [-122.368359375, 47.60390625], + [-122.38076171874995, 47.627832031249994], + [-122.41049804687496, 47.65263671874999], + [-122.40678710937502, 47.6767578125], + [-122.383642578125, 47.71645507812502], + [-122.38198242187502, 47.75234375000005], + [-122.40180664062497, 47.78427734374998], + [-122.39287109375002, 47.820556640625], + [-122.33032226562497, 47.89863281250001], + [-122.31845703124996, 47.93305664062501], + [-122.24199218750002, 48.01074218750003], + [-122.26127929687495, 48.04204101562499], + [-122.31748046875002, 48.080175781250034], + [-122.35297851562497, 48.11381835937496], + [-122.38867187499996, 48.166357421875006], + [-122.41582031249999, 48.183935546875034], + [-122.42470703125002, 48.17592773437502], + [-122.38662109375, 48.08994140624998], + [-122.39477539062496, 48.08413085937505], + [-122.49404296875002, 48.13046874999998], + [-122.5169921875, 48.15966796874997], + [-122.52915039062498, 48.19931640624998], + [-122.5203125, 48.229101562500006], + [-122.46704101562503, 48.258496093749955], + [-122.40336914062493, 48.269189453124994], + [-122.40854492187502, 48.29389648437498], + [-122.48842773437495, 48.37431640625002], + [-122.54165039062495, 48.41093750000002], + [-122.58256835937495, 48.42866210937498], + [-122.63779296875, 48.433300781249955], + [-122.6625, 48.446386718750034], + [-122.66899414062496, 48.465234374999966], + [-122.65727539062497, 48.48999023437506], + [-122.62797851562496, 48.49790039062506], + [-122.54267578124998, 48.48798828124998], + [-122.49677734374995, 48.50556640625001], + [-122.50107421875003, 48.5375], + [-122.514794921875, 48.55517578125], + [-122.51274414062502, 48.66943359375], + [-122.54511718749995, 48.762304687500006], + [-122.56201171875001, 48.777978515624994], + [-122.58017578124999, 48.77958984374999], + [-122.5994140625, 48.76708984375], + [-122.65302734375, 48.76386718749998], + [-122.68593749999995, 48.794287109375034], + [-122.72246093750002, 48.85302734375003], + [-122.78876953125003, 48.993017578125034], + [-122.68637695312495, 48.993017578125034], + [-122.26000976562496, 48.993017578125034], + [-121.83359375000003, 48.993017578125034], + [-121.40722656249994, 48.993017578125034], + [-120.98085937499995, 48.993017578125034], + [-120.55449218749995, 48.993017578125034], + [-120.12807617187494, 48.993017578125034], + [-119.70170898437495, 48.993017578125034], + [-119.27534179687494, 48.99306640625005], + [-118.84892578124993, 48.99306640625005], + [-118.42255859375003, 48.99306640625005], + [-117.99619140625002, 48.99306640625005], + [-117.56977539062501, 48.99306640625005], + [-117.14340820312502, 48.99306640625005], + [-116.71704101562501, 48.99306640625005], + [-116.290625, 48.99306640625005], + [-115.86425781250001, 48.99306640625005], + [-115.437890625, 48.99306640625005], + [-115.01152343750002, 48.99306640625005], + [-114.58510742187501, 48.99306640625005], + [-114.158740234375, 48.99306640625005], + [-113.73237304687501, 48.99306640625005], + [-113.30595703125, 48.99306640625005], + [-112.87958984375, 48.99306640625005], + [-112.45322265625, 48.99306640625005], + [-112.026806640625, 48.99306640625005], + [-111.60043945312499, 48.99306640625005], + [-111.174072265625, 48.99306640625005], + [-110.74765625, 48.99306640625005], + [-110.32128906249999, 48.99306640625005], + [-109.894921875, 48.99306640625005], + [-109.46855468749999, 48.99306640625005], + [-109.04213867187498, 48.993115234374955], + [-108.61577148437499, 48.993115234374955], + [-108.18940429687498, 48.993115234374955], + [-107.76298828124997, 48.993115234374955], + [-107.33662109374998, 48.993115234374955], + [-106.91025390624998, 48.993115234374955], + [-106.48383789062497, 48.993115234374955], + [-106.05747070312498, 48.993115234374955], + [-105.63110351562497, 48.993115234374955], + [-105.20468749999996, 48.993115234374955], + [-104.77832031249997, 48.993115234374955], + [-104.35195312499997, 48.993115234374955], + [-103.92558593749997, 48.993115234374955], + [-103.49916992187497, 48.993115234374955], + [-103.07280273437496, 48.993115234374955], + [-102.64643554687497, 48.993115234374955], + [-102.22001953124996, 48.993115234374955], + [-101.79365234374995, 48.993115234374955], + [-101.36728515624996, 48.993115234374955], + [-100.94086914062495, 48.993115234374955], + [-100.51450195312495, 48.993115234374955], + [-100.08813476562496, 48.993115234374955], + [-99.66171874999995, 48.993115234374955], + [-99.23535156249994, 48.993115234374955], + [-98.80898437499995, 48.99316406249997], + [-98.38261718749996, 48.99316406249997], + [-97.95620117187494, 48.99316406249997], + [-97.52983398437493, 48.99316406249997], + [-97.10346679687495, 48.99316406249997], + [-96.67705078124993, 48.99316406249997], + [-96.25068359374993, 48.99316406249997], + [-95.82431640625003, 48.99316406249997], + [-95.39790039062493, 48.99316406249997], + [-95.16206054687493, 48.991748046875045], + [-95.15825195312496, 49.20307617187501], + [-95.15527343749997, 49.36967773437502], + [-94.93935546874994, 49.34941406249999], + [-94.87480468749993, 49.31904296875001], + [-94.85434570312495, 49.304589843749994], + [-94.86040039062493, 49.258593750000045], + [-94.84257812499996, 49.11918945312499], + [-94.80346679687497, 49.0029296875] + ] + ], + [ + [ + [179.45156250000005, 51.37260742187496], + [179.278125, 51.372216796874966], + [178.92587890625006, 51.53505859375002], + [178.74707031250003, 51.58671875], + [178.64794921875009, 51.64389648437498], + [178.69218750000007, 51.655957031249955], + [178.90800781250013, 51.61557617187498], + [179.08427734375002, 51.527685546875034], + [179.18173828125012, 51.46992187499998], + [179.2943359375, 51.42084960937501], + [179.41552734374997, 51.40087890625003], + [179.45156250000005, 51.37260742187496] + ] + ], + [ + [ + [-176.28671874999998, 51.79199218750006], + [-176.34965820312502, 51.733300781249994], + [-176.39609374999998, 51.75986328124998], + [-176.41372070312502, 51.840576171875], + [-176.37856445312497, 51.86113281250002], + [-176.28022460937498, 51.802832031250034], + [-176.28671874999998, 51.79199218750006] + ] + ], + [ + [ + [-176.00898437499998, 51.812353515625006], + [-176.09335937500003, 51.79047851562501], + [-176.204443359375, 51.83481445312498], + [-176.19365234375002, 51.88627929687499], + [-176.07163085937503, 51.84331054687502], + [-176.00898437499998, 51.812353515625006] + ] + ], + [ + [ + [-177.87905273437502, 51.64970703125002], + [-177.90126953125002, 51.61640624999998], + [-177.92534179687493, 51.61738281250001], + [-178.05888671875, 51.67260742187497], + [-178.07846679687498, 51.691259765625034], + [-178.000048828125, 51.717480468749955], + [-177.97724609375004, 51.73779296875003], + [-177.98637695312493, 51.76425781249998], + [-178.0451171875, 51.80107421875002], + [-178.15346679687497, 51.848242187500034], + [-178.19453124999998, 51.88222656250005], + [-178.16826171874996, 51.90302734375001], + [-178.11660156250002, 51.91586914062506], + [-177.95380859374995, 51.91845703125006], + [-177.865869140625, 51.860400390625045], + [-177.799609375, 51.84003906249998], + [-177.644482421875, 51.826269531250006], + [-177.72495117187498, 51.801660156249966], + [-177.77065429687497, 51.77788085937502], + [-177.826953125, 51.685888671875006], + [-177.87905273437502, 51.64970703125002] + ] + ], + [ + [ + [-177.14819335937497, 51.71674804687498], + [-177.177001953125, 51.703710937500006], + [-177.22988281250002, 51.69355468749998], + [-177.382373046875, 51.70483398437506], + [-177.47465820312496, 51.701269531250034], + [-177.57758789062498, 51.694189453125006], + [-177.6548828125, 51.67656249999999], + [-177.67021484375002, 51.701074218749994], + [-177.66762695312502, 51.72119140625], + [-177.33471679687497, 51.776220703125034], + [-177.257275390625, 51.80493164062503], + [-177.209765625, 51.841259765624955], + [-177.16640624999997, 51.909423828125], + [-177.13149414062497, 51.92978515625006], + [-177.11005859375, 51.92875976562502], + [-177.06303710937496, 51.90190429687496], + [-177.079541015625, 51.866552734375034], + [-177.12138671875002, 51.835791015625006], + [-177.13510742187498, 51.80693359374999], + [-177.14819335937497, 51.71674804687498] + ] + ], + [ + [ + [-176.593310546875, 51.86669921875], + [-176.587939453125, 51.83320312500001], + [-176.473388671875, 51.83740234374997], + [-176.43745117187504, 51.82011718749999], + [-176.43735351562503, 51.754296875], + [-176.45234374999995, 51.735693359375034], + [-176.46977539062496, 51.73115234374998], + [-176.510986328125, 51.74560546875], + [-176.55751953125, 51.71206054687502], + [-176.77094726562504, 51.62993164062499], + [-176.837109375, 51.675878906250006], + [-176.96162109374998, 51.60366210937505], + [-176.87441406249997, 51.79047851562501], + [-176.77363281249995, 51.81875], + [-176.73642578125003, 51.839941406250034], + [-176.74511718750003, 51.894677734374994], + [-176.69833984374998, 51.986035156249955], + [-176.59682617187502, 51.98178710937498], + [-176.54990234375003, 51.94404296875001], + [-176.55161132812503, 51.91958007812502], + [-176.593310546875, 51.86669921875] + ] + ], + [ + [ + [178.57548828125007, 51.91625976562506], + [178.51181640625006, 51.89912109375001], + [178.47773437500004, 51.942529296874994], + [178.475, 51.967724609374955], + [178.50937500000012, 51.994677734375045], + [178.57060546874996, 51.9775390625], + [178.60732421875, 51.953027343749994], + [178.57548828125007, 51.91625976562506] + ] + ], + [ + [ + [179.72773437500015, 51.905419921874966], + [179.64521484375004, 51.88022460937498], + [179.54960937500013, 51.89404296875006], + [179.49765625000018, 51.932812499999955], + [179.50390625000003, 51.97958984374998], + [179.6271484375001, 52.03041992187502], + [179.77998046875015, 51.96684570312496], + [179.72773437500015, 51.905419921874966] + ] + ], + [ + [ + [-176.02153320312496, 52.00244140625003], + [-176.04506835937497, 51.97299804687506], + [-176.14287109375, 52.00429687500005], + [-176.17753906249993, 52.02983398437502], + [-176.18452148437504, 52.05605468750002], + [-176.15566406250002, 52.09941406249996], + [-176.07739257812497, 52.09995117187498], + [-176.03120117187495, 52.082324218750045], + [-175.9880859375, 52.049462890624994], + [-175.97529296875004, 52.028955078124994], + [-176.02153320312496, 52.00244140625003] + ] + ], + [ + [ + [177.4154296875, 51.88281249999997], + [177.32851562500005, 51.841064453125], + [177.2606445312501, 51.883691406249994], + [177.25029296875013, 51.902929687500006], + [177.38066406250002, 51.97578125000001], + [177.47841796875005, 51.99160156250002], + [177.52050781250009, 52.01821289062502], + [177.56376953125002, 52.110498046874994], + [177.63652343750007, 52.11381835937496], + [177.6696289062501, 52.10302734375], + [177.6530273437501, 52.05976562499998], + [177.59599609375002, 51.993847656249955], + [177.594140625, 51.94755859375002], + [177.4154296875, 51.88281249999997] + ] + ], + [ + [ + [-173.5533203125, 52.13627929687502], + [-173.35722656250002, 52.09565429687501], + [-173.11328124999997, 52.10039062499999], + [-173.02431640624997, 52.09052734375001], + [-173.02290039062504, 52.07915039062502], + [-173.17885742187502, 52.0625], + [-173.23222656249996, 52.067968750000034], + [-173.368408203125, 52.04560546875001], + [-173.46098632812502, 52.04155273437499], + [-173.67255859375004, 52.06264648437502], + [-173.83579101562498, 52.048193359375006], + [-173.878955078125, 52.05366210937498], + [-173.93022460937496, 52.07216796875002], + [-173.98959960937498, 52.103613281250034], + [-173.99248046874993, 52.12333984374996], + [-173.93891601562504, 52.13129882812498], + [-173.79409179687502, 52.10429687499999], + [-173.77900390624995, 52.11835937500001], + [-173.65683593750003, 52.14375], + [-173.5533203125, 52.13627929687502] + ] + ], + [ + [ + [-172.464794921875, 52.27226562500002], + [-172.53911132812496, 52.25747070312502], + [-172.61982421874998, 52.27285156250005], + [-172.58217773437497, 52.325634765624955], + [-172.54365234375, 52.35380859375002], + [-172.47041015625, 52.38803710937506], + [-172.38310546875, 52.372949218749994], + [-172.31362304687497, 52.32958984375006], + [-172.464794921875, 52.27226562500002] + ] + ], + [ + [ + [-174.67739257812502, 52.035009765625006], + [-175.2138671875, 51.99389648437506], + [-175.29555664062502, 52.022167968749955], + [-175.21416015624996, 52.03823242187502], + [-175.11767578125003, 52.04711914062497], + [-174.91591796874997, 52.09418945312498], + [-174.66777343750002, 52.13496093750001], + [-174.47426757812497, 52.18403320312498], + [-174.30615234375, 52.216162109375034], + [-174.25883789062502, 52.26904296874997], + [-174.406494140625, 52.29599609375006], + [-174.43554687499997, 52.317236328125034], + [-174.36542968749998, 52.341943359374994], + [-174.30688476562494, 52.37792968750006], + [-174.168896484375, 52.42016601562503], + [-174.04560546875, 52.36723632812499], + [-174.018359375, 52.33178710937497], + [-174.03007812499996, 52.28979492187503], + [-174.05488281250004, 52.245996093749994], + [-174.163232421875, 52.223388671875], + [-174.17939453125, 52.20034179687502], + [-174.12065429687493, 52.13520507812498], + [-174.34355468749996, 52.077783203124994], + [-174.67739257812502, 52.035009765625006] + ] + ], + [ + [ + [173.72275390625018, 52.35957031250004], + [173.65781250000006, 52.35664062499998], + [173.61621093749997, 52.391259765624994], + [173.40234375000009, 52.40478515625], + [173.42451171875015, 52.43764648437505], + [173.51650390625005, 52.451416015625], + [173.65761718750005, 52.50410156249998], + [173.77607421875004, 52.49511718750003], + [173.7447265625, 52.446630859375006], + [173.72275390625018, 52.35957031250004] + ] + ], + [ + [ + [-170.73339843749997, 52.58149414062504], + [-170.79736328124994, 52.549755859374955], + [-170.81606445312494, 52.56152343750006], + [-170.82705078124997, 52.60073242187505], + [-170.79116210937502, 52.63125], + [-170.682080078125, 52.69755859374996], + [-170.60805664062502, 52.68505859375], + [-170.58461914062497, 52.66757812499998], + [-170.58662109375, 52.642431640625006], + [-170.614013671875, 52.609619140625], + [-170.64926757812498, 52.593115234375006], + [-170.69228515624997, 52.59296874999998], + [-170.73339843749997, 52.58149414062504] + ] + ], + [ + [ + [-169.691943359375, 52.84736328125001], + [-169.70810546875, 52.80712890625], + [-169.72275390624998, 52.792333984375006], + [-169.87734375000002, 52.81376953125002], + [-169.98056640625, 52.806005859375034], + [-169.991845703125, 52.829833984375], + [-169.98256835937497, 52.85102539062498], + [-169.820654296875, 52.883398437500006], + [-169.75488281250003, 52.883642578125034], + [-169.71098632812496, 52.86674804687499], + [-169.691943359375, 52.84736328125001] + ] + ], + [ + [ + [172.81181640625002, 53.01298828125002], + [172.98398437500012, 52.98027343750002], + [173.10214843750012, 52.99560546875003], + [173.2516601562501, 52.94267578124999], + [173.43603515625003, 52.85205078125], + [173.39472656250015, 52.834765625000045], + [173.34824218750006, 52.824853515624966], + [173.30253906250002, 52.825927734375], + [173.15869140625003, 52.81079101562503], + [173.0802734375001, 52.81445312499997], + [172.93515625000012, 52.752099609374966], + [172.77558593750004, 52.79692382812496], + [172.72177734375006, 52.88554687499999], + [172.59511718750005, 52.90742187500001], + [172.49482421875004, 52.937890625], + [172.67792968750004, 53.00756835937497], + [172.81181640625002, 53.01298828125002] + ] + ], + [ + [ + [-167.96435546875003, 53.345117187499994], + [-168.270703125, 53.23803710937503], + [-168.3701171875, 53.15976562499998], + [-168.44599609375, 53.08442382812501], + [-168.50561523437497, 53.04316406250004], + [-168.54902343750004, 53.03608398437501], + [-168.59741210937503, 53.01611328125003], + [-168.69853515625002, 52.963427734375045], + [-168.741015625, 52.956884765625034], + [-169.06591796875, 52.833935546874955], + [-169.088916015625, 52.83203125], + [-169.07309570312503, 52.864160156249994], + [-168.973876953125, 52.90966796875003], + [-168.90917968749994, 52.95117187500003], + [-168.83608398437497, 53.019726562499955], + [-168.79584960937504, 53.04492187500003], + [-168.7830078125, 53.07934570312503], + [-168.777783203125, 53.14877929687506], + [-168.75961914062503, 53.175048828125], + [-168.68984375000002, 53.227246093749955], + [-168.63901367187498, 53.255761718749994], + [-168.57216796874997, 53.26562], + [-168.43662109374995, 53.25688476562496], + [-168.38041992187496, 53.28344726562506], + [-168.36298828124995, 53.30356445312506], + [-168.39726562500002, 53.321923828124994], + [-168.405322265625, 53.35380859374999], + [-168.39643554687504, 53.408789062500006], + [-168.35722656249993, 53.45756835937499], + [-168.28769531249998, 53.500146484374966], + [-168.19306640624998, 53.53330078125006], + [-168.07329101562502, 53.556982421875006], + [-167.98569335937503, 53.55820312499998], + [-167.82807617187495, 53.50795898437505], + [-167.8046875, 53.48496093749998], + [-167.843115234375, 53.43457031250003], + [-167.86513671874997, 53.38730468749998], + [-167.96435546875003, 53.345117187499994] + ] + ], + [ + [ + [-166.20976562499996, 53.72329101562505], + [-166.22382812499998, 53.72041015624998], + [-166.24941406249997, 53.74516601562496], + [-166.25073242187497, 53.767773437499955], + [-166.234375, 53.7841796875], + [-166.187744140625, 53.82246093749998], + [-166.154541015625, 53.83613281250001], + [-166.11372070312504, 53.84306640625002], + [-166.102685546875, 53.8328125], + [-166.13862304687504, 53.787402343750045], + [-166.183740234375, 53.756884765625045], + [-166.20976562499996, 53.72329101562505] + ] + ], + [ + [ + [-166.61533203124998, 53.90092773437499], + [-166.57216796875, 53.85346679687501], + [-166.49746093749997, 53.883544921875], + [-166.44277343750002, 53.92480468749997], + [-166.40004882812502, 53.978125], + [-166.37231445312494, 53.99897460937498], + [-166.33564453125004, 53.97089843750004], + [-166.230859375, 53.93261718750006], + [-166.31899414062502, 53.87377929687506], + [-166.48876953124997, 53.785498046875006], + [-166.54560546875, 53.726464843749966], + [-166.54921875000002, 53.70097656250002], + [-166.384716796875, 53.72050781250002], + [-166.33876953124997, 53.71767578125005], + [-166.30947265625002, 53.69750976562503], + [-166.354541015625, 53.67353515625004], + [-166.44418945312503, 53.651806640624955], + [-166.522021484375, 53.60966796874999], + [-166.70219726562502, 53.536669921875045], + [-166.77041015624997, 53.47602539062501], + [-166.85097656249997, 53.45288085937503], + [-166.96074218750002, 53.447363281250034], + [-167.15366210937498, 53.407861328124994], + [-167.27080078124993, 53.37060546875003], + [-167.30043945312494, 53.35048828125002], + [-167.33725585937498, 53.34096679687505], + [-167.38129882812498, 53.34199218749998], + [-167.42880859374998, 53.32568359375003], + [-167.47983398437498, 53.2919921875], + [-167.52246093749997, 53.276220703125006], + [-167.59218749999997, 53.272705078125], + [-167.62861328125, 53.25942382812505], + [-167.66943359374997, 53.25996093749998], + [-167.78085937500003, 53.30024414062501], + [-167.80878906250004, 53.32377929687502], + [-167.71010742187502, 53.37089843750002], + [-167.63872070312493, 53.386572265625006], + [-167.53017578125002, 53.39370117187505], + [-167.42353515624998, 53.43725585937503], + [-167.20410156250003, 53.49497070312498], + [-167.13608398437503, 53.526464843750006], + [-167.092333984375, 53.63593750000001], + [-167.04243164062495, 53.65458984374999], + [-167.01572265625003, 53.69838867187502], + [-166.89414062500003, 53.697119140625034], + [-166.83833007812504, 53.64804687499998], + [-166.81875, 53.64135742187506], + [-166.80898437500002, 53.64614257812505], + [-166.80366210937498, 53.685400390625034], + [-166.741259765625, 53.71293945312496], + [-166.77724609375002, 53.733154296875], + [-166.889599609375, 53.758593750000045], + [-166.97294921875002, 53.77055664062499], + [-167.02724609374997, 53.76914062500006], + [-167.071484375, 53.78339843750004], + [-167.10561523437497, 53.813378906249994], + [-167.12114257812502, 53.843115234375034], + [-167.11816406250003, 53.87260742187499], + [-167.09047851562497, 53.905664062499966], + [-167.03808593749997, 53.9421875], + [-166.978076171875, 53.96293945312502], + [-166.84868164062502, 53.977880859375034], + [-166.73403320312502, 54.00219726562503], + [-166.67329101562498, 54.00595703124998], + [-166.62739257812495, 53.99565429687502], + [-166.61533203124998, 53.90092773437499] + ] + ], + [ + [ + [-165.841552734375, 54.070654296875006], + [-165.87939453125, 54.05302734374999], + [-165.90986328124998, 54.049169921875006], + [-165.93291015624996, 54.05917968749998], + [-166.03642578125, 54.04716796875002], + [-166.05664062500003, 54.054345703124994], + [-166.10283203124993, 54.113964843749955], + [-166.10581054687503, 54.14482421875002], + [-166.08774414062498, 54.16914062500001], + [-166.041259765625, 54.19125976562498], + [-165.96640625000003, 54.211035156250006], + [-165.89287109375, 54.20698242187498], + [-165.76445312500002, 54.152099609375], + [-165.70424804687502, 54.11992187500002], + [-165.69287109375, 54.09990234375002], + [-165.73789062500003, 54.08110351562502], + [-165.841552734375, 54.070654296875006] + ] + ], + [ + [ + [-165.56113281249998, 54.13671874999997], + [-165.604833984375, 54.12915039062503], + [-165.61538085937502, 54.13955078125002], + [-165.6205078125, 54.18354492187501], + [-165.65415039062503, 54.25332031250002], + [-165.59033203125, 54.278662109375034], + [-165.55063476562498, 54.28452148437498], + [-165.5337890625, 54.27387695312504], + [-165.48769531249994, 54.221875], + [-165.441748046875, 54.20800781250003], + [-165.40786132812502, 54.19682617187496], + [-165.46757812500002, 54.180908203125], + [-165.56113281249998, 54.13671874999997] + ] + ], + [ + [ + [-162.55439453125, 54.40136718749997], + [-162.64111328125, 54.379541015624966], + [-162.73310546875, 54.40229492187498], + [-162.81171875000004, 54.444384765625045], + [-162.82055664062497, 54.49453125000005], + [-162.64541015625, 54.462060546874994], + [-162.607958984375, 54.44663085937506], + [-162.55439453125, 54.40136718749997] + ] + ], + [ + [ + [-162.29814453124993, 54.847021484375006], + [-162.321923828125, 54.842382812500034], + [-162.39077148437497, 54.872998046874955], + [-162.415771484375, 54.89589843750002], + [-162.43388671875, 54.931542968749994], + [-162.29365234375, 54.982861328124955], + [-162.26459960937504, 54.983496093750006], + [-162.23837890625003, 54.954736328124994], + [-162.23374023437498, 54.93203125], + [-162.27255859374998, 54.86718750000003], + [-162.29814453124993, 54.847021484375006] + ] + ], + [ + [ + [-163.476025390625, 54.98071289062497], + [-163.37895507812496, 54.81552734374998], + [-163.3369140625, 54.78320312500006], + [-163.27451171874998, 54.76557617187501], + [-163.18710937500003, 54.74775390625004], + [-163.13505859375, 54.72329101562502], + [-163.0892578125, 54.68608398437499], + [-163.083251953125, 54.66899414062496], + [-163.35810546874995, 54.73569335937506], + [-163.53085937499998, 54.63833007812502], + [-163.58300781249994, 54.62568359375004], + [-164.07329101562502, 54.62099609375005], + [-164.1712890625, 54.60302734375003], + [-164.234619140625, 54.57133789062496], + [-164.3466796875, 54.48242187499997], + [-164.40351562500004, 54.447851562500034], + [-164.4634765625, 54.427343750000034], + [-164.5908203125, 54.40434570312496], + [-164.74379882812502, 54.40747070312497], + [-164.82343749999998, 54.41909179687505], + [-164.86616210937498, 54.46137695312504], + [-164.90395507812497, 54.54477539062498], + [-164.9037109375, 54.56796875], + [-164.887646484375, 54.60781250000002], + [-164.75146484374997, 54.66293945312498], + [-164.706201171875, 54.691992187500034], + [-164.52978515625, 54.88085937500006], + [-164.47861328124998, 54.906835937500006], + [-164.42431640625003, 54.91318359374998], + [-164.27368164062497, 54.900048828124966], + [-164.145068359375, 54.95512695312499], + [-163.86796875000002, 55.03911132812496], + [-163.80712890624997, 55.04907226562503], + [-163.60747070312496, 55.050830078125045], + [-163.55302734375, 55.03784179687497], + [-163.51088867187502, 55.014306640624966], + [-163.476025390625, 54.98071289062497] + ] + ], + [ + [ + [-159.36201171875007, 54.97241210937506], + [-159.394482421875, 54.96733398437499], + [-159.42133789062495, 54.97812], + [-159.45849609375, 55.03496093750002], + [-159.46191406249997, 55.05878906249998], + [-159.3904296875, 55.04086914062506], + [-159.36318359375002, 54.99951171874997], + [-159.36201171875007, 54.97241210937506] + ] + ], + [ + [ + [-159.51513671875, 55.15185546875003], + [-159.52041015625, 55.07216796875005], + [-159.53496093750002, 55.05961914062496], + [-159.561474609375, 55.080908203125034], + [-159.617724609375, 55.05732421875004], + [-159.648486328125, 55.074560546875006], + [-159.63540039062497, 55.10234375], + [-159.63964843750003, 55.12397460937501], + [-159.59794921875, 55.12568359375001], + [-159.588037109375, 55.16533203125002], + [-159.59526367187496, 55.18203125000005], + [-159.57475585937496, 55.21772460937504], + [-159.54506835937497, 55.22597656250002], + [-159.51513671875, 55.15185546875003] + ] + ], + [ + [ + [-131.33974609375002, 55.079833984375], + [-131.23745117187497, 54.94951171875002], + [-131.23203125, 54.90375976562501], + [-131.32954101562498, 54.887744140625045], + [-131.40620117187495, 54.89428710937503], + [-131.44570312500002, 54.909326171874994], + [-131.456103515625, 54.930566406249966], + [-131.43134765625, 54.996484375], + [-131.48173828125, 55.03525390624998], + [-131.54003906249997, 55.04848632812502], + [-131.592236328125, 55.02568359374999], + [-131.5951171875, 55.090722656249994], + [-131.55600585937503, 55.13740234375001], + [-131.57783203125, 55.20083007812505], + [-131.57846679687498, 55.24877929687506], + [-131.5654296875, 55.26411132812498], + [-131.51264648437498, 55.26274414062496], + [-131.404638671875, 55.21333007812501], + [-131.33974609375002, 55.079833984375] + ] + ], + [ + [ + [-159.87299804687495, 55.128759765625034], + [-159.93393554687503, 55.106835937499994], + [-159.953076171875, 55.078955078125006], + [-159.99941406249997, 55.06718749999999], + [-160.038427734375, 55.04448242187499], + [-160.169580078125, 54.94169921875002], + [-160.22705078124997, 54.92270507812506], + [-160.16357421875, 55.01044921874998], + [-160.15361328125005, 55.03833007812497], + [-160.15239257812496, 55.05688476562503], + [-160.17207031249995, 55.123046875], + [-160.13374023437495, 55.12016601562496], + [-160.10219726562502, 55.133886718750006], + [-160.03876953124998, 55.19252929687505], + [-159.98164062499998, 55.19775390625006], + [-159.92045898437496, 55.267529296874955], + [-159.88735351562497, 55.27299804687502], + [-159.871044921875, 55.26357421875005], + [-159.89824218749996, 55.221289062500034], + [-159.83940429687496, 55.18237304687503], + [-159.85410156250003, 55.144677734374966], + [-159.87299804687495, 55.128759765625034] + ] + ], + [ + [ + [-132.86225585937504, 54.894433593749966], + [-132.83774414062503, 54.88095703124998], + [-132.81289062500002, 54.89042968749996], + [-132.77231445312503, 54.92607421875002], + [-132.70063476562498, 54.919042968750006], + [-132.648876953125, 54.90708007812498], + [-132.61723632812493, 54.892431640625006], + [-132.634033203125, 54.840478515624994], + [-132.64697265624997, 54.75615234374996], + [-132.67666015624997, 54.726220703124994], + [-132.70581054687497, 54.684179687500034], + [-132.80727539062502, 54.709130859374966], + [-132.889599609375, 54.762646484374955], + [-133.008935546875, 54.854833984375006], + [-133.075390625, 54.921337890624955], + [-133.08056640625, 54.94941406249998], + [-133.122705078125, 54.96982421875006], + [-133.204638671875, 55.08447265624997], + [-133.25117187500007, 55.17514648437506], + [-133.32485351562497, 55.18549804687504], + [-133.41796875, 55.21069335937503], + [-133.45380859375, 55.260351562500006], + [-133.42905273437498, 55.30380859374998], + [-133.29658203124995, 55.32573242187502], + [-133.097412109375, 55.213720703125006], + [-133.06708984375, 55.16621093750001], + [-132.99575195312497, 55.11059570312506], + [-132.98217773437494, 55.03300781249996], + [-132.94599609375007, 55.002587890624994], + [-132.86225585937504, 54.894433593749966] + ] + ], + [ + [ + [-160.329296875, 55.337695312500045], + [-160.34331054687493, 55.25878906250006], + [-160.48076171875, 55.308984374999966], + [-160.51748046875, 55.33383789062506], + [-160.49291992187494, 55.35234375000002], + [-160.3623046875, 55.35698242187499], + [-160.329296875, 55.337695312500045] + ] + ], + [ + [ + [-160.68491210937498, 55.314794921875006], + [-160.66972656250002, 55.31425781249999], + [-160.63881835937502, 55.32192382812502], + [-160.57397460937494, 55.37827148437506], + [-160.552783203125, 55.38076171875002], + [-160.552490234375, 55.363378906250034], + [-160.58315429687497, 55.30761718750006], + [-160.53120117187504, 55.23320312499999], + [-160.482666015625, 55.197412109374966], + [-160.48754882812503, 55.18486328124999], + [-160.60908203125, 55.15903320312506], + [-160.70180664062497, 55.17763671875002], + [-160.75063476562497, 55.17119140624996], + [-160.79506835937497, 55.14521484375001], + [-160.82548828124993, 55.173974609374994], + [-160.84653320312498, 55.31132812499999], + [-160.8396484375, 55.33540039062501], + [-160.78920898437502, 55.38310546874996], + [-160.72392578124993, 55.404638671875006], + [-160.69565429687498, 55.398339843749966], + [-160.67216796875, 55.37939453125], + [-160.66635742187503, 55.35942382812502], + [-160.68491210937498, 55.314794921875006] + ] + ], + [ + [ + [-133.30507812500002, 55.54375], + [-133.283203125, 55.515625], + [-133.28168945312507, 55.49785156249999], + [-133.42646484374995, 55.43144531249996], + [-133.42910156249997, 55.417724609375], + [-133.46308593749995, 55.37666015624998], + [-133.49345703125005, 55.361669921875034], + [-133.54736328125, 55.31723632812506], + [-133.6501953125, 55.26928710937506], + [-133.635009765625, 55.413330078125], + [-133.73710937500002, 55.49692382812498], + [-133.634228515625, 55.53925781249998], + [-133.56669921875005, 55.527197265625006], + [-133.45478515624995, 55.522314453125006], + [-133.345556640625, 55.55908203125003], + [-133.30507812500002, 55.54375] + ] + ], + [ + [ + [-155.56601562500003, 55.82119140625005], + [-155.60488281249997, 55.78955078125], + [-155.680615234375, 55.791845703125006], + [-155.723193359375, 55.80219726562498], + [-155.73735351562493, 55.82978515625001], + [-155.62060546874997, 55.91308593750003], + [-155.59394531250004, 55.92431640625], + [-155.5732421875, 55.92109374999998], + [-155.56391601562495, 55.88666992187498], + [-155.56601562500003, 55.82119140625005] + ] + ], + [ + [ + [-130.97915039062502, 55.489160156249994], + [-131.013916015625, 55.379296875], + [-131.08276367187497, 55.26679687499998], + [-131.187890625, 55.206298828125], + [-131.26186523437497, 55.21977539062499], + [-131.31630859374997, 55.26850585937498], + [-131.36684570312502, 55.265820312499955], + [-131.420703125, 55.27587890624997], + [-131.450927734375, 55.31630859375005], + [-131.42236328124997, 55.368408203125], + [-131.44755859374996, 55.40878906250006], + [-131.47451171875002, 55.373486328124955], + [-131.52182617187498, 55.34106445312503], + [-131.64130859375, 55.29892578125006], + [-131.723681640625, 55.21835937499998], + [-131.7625, 55.16582031250002], + [-131.810986328125, 55.223095703124955], + [-131.8419921875, 55.35869140624996], + [-131.84609374999997, 55.41625976562497], + [-131.75947265625, 55.503076171874994], + [-131.64755859375003, 55.585546875], + [-131.62495117187504, 55.831689453124966], + [-131.26923828125004, 55.95537109375002], + [-131.23618164062498, 55.94897460937506], + [-131.120654296875, 55.85664062499998], + [-130.997802734375, 55.727636718750006], + [-130.96596679687497, 55.66953125000006], + [-130.96503906249995, 55.568017578124994], + [-130.97915039062502, 55.489160156249994] + ] + ], + [ + [ + [-133.56611328125, 56.33920898437498], + [-133.37661132812502, 56.31777343750005], + [-133.202978515625, 56.31982421875003], + [-133.14370117187502, 56.27856445312506], + [-133.1044921875, 56.235107421875], + [-133.08173828125, 56.194189453125006], + [-133.07543945312494, 56.155859375], + [-133.08012695312502, 56.12871093749999], + [-133.10122070312497, 56.099804687499955], + [-133.096630859375, 56.09003906250001], + [-132.75756835937503, 55.99501953125002], + [-132.59760742187504, 55.89501953125], + [-132.5337890625, 55.84248046875004], + [-132.49697265624997, 55.79809570312506], + [-132.43017578125003, 55.68701171874997], + [-132.28886718750002, 55.55810546875], + [-132.21474609375002, 55.51884765624999], + [-132.17270507812498, 55.48061523437502], + [-132.196337890625, 55.479150390624994], + [-132.29589843750003, 55.507470703124994], + [-132.51127929687493, 55.59394531250001], + [-132.528857421875, 55.59047851562502], + [-132.54833984375006, 55.543701171875], + [-132.58173828125, 55.50263671874998], + [-132.63129882812495, 55.47319335937502], + [-132.5916015625, 55.46435546875], + [-132.41787109375002, 55.48291015625006], + [-132.27202148437496, 55.39863281250001], + [-132.21528320312504, 55.38354492187497], + [-132.16025390625003, 55.32299804687497], + [-132.1583984375, 55.29980468750006], + [-132.19042968749994, 55.25498046874998], + [-132.21489257812496, 55.23676757812501], + [-132.20668945312497, 55.22441406249996], + [-132.165966796875, 55.218017578125], + [-132.005078125, 55.230615234374994], + [-131.97641601562498, 55.208593750000034], + [-132.00039062499997, 55.03383789062505], + [-131.97758789062502, 54.969482421875], + [-131.97792968750002, 54.94023437499999], + [-131.99658203125, 54.90141601562499], + [-131.99721679687502, 54.868603515624955], + [-131.98271484375, 54.83491210937501], + [-131.98085937499997, 54.80483398437502], + [-132.02167968750004, 54.726318359375], + [-132.06474609375002, 54.713134765625], + [-132.134326171875, 54.71254882812505], + [-132.1892578125, 54.73486328124997], + [-132.26630859375004, 54.802343750000034], + [-132.34130859374994, 54.9072265625], + [-132.37021484374998, 54.922216796875034], + [-132.46865234374997, 54.937939453124955], + [-132.48647460937497, 54.95039062500001], + [-132.549365234375, 54.95258789062501], + [-132.59384765624998, 54.99575195312502], + [-132.58847656250003, 55.05234375], + [-132.62695312499997, 55.11005859375004], + [-132.62216796874998, 55.13593749999998], + [-132.66533203125, 55.14677734374996], + [-132.70175781250003, 55.13051757812502], + [-132.682861328125, 55.073925781249955], + [-132.704150390625, 55.03007812499999], + [-132.78232421875, 55.04848632812502], + [-132.91259765625, 55.18847656250003], + [-133.06059570312493, 55.30092773437502], + [-133.11855468750002, 55.32763671875003], + [-133.10302734374997, 55.36025390625002], + [-133.03002929687503, 55.37753906249998], + [-132.97080078125003, 55.37617187499998], + [-132.95888671875002, 55.39555664062502], + [-133.08247070312495, 55.50410156250001], + [-133.07841796875005, 55.534912109375], + [-133.0333984375, 55.589697265625034], + [-133.0896484375, 55.61259765625002], + [-133.24375, 55.595410156249955], + [-133.29824218749997, 55.60688476562498], + [-133.342822265625, 55.65083007812498], + [-133.36899414062498, 55.68896484375003], + [-133.50273437499996, 55.695898437500006], + [-133.55327148437496, 55.69116210937503], + [-133.64047851562498, 55.74877929687503], + [-133.68017578124994, 55.78515625], + [-133.66440429687503, 55.80380859375006], + [-133.58408203125003, 55.83652343750006], + [-133.53715820312496, 55.83193359375002], + [-133.44697265624995, 55.797021484374994], + [-133.41171874999998, 55.79833984375], + [-133.32211914062503, 55.84462890625002], + [-133.30849609375002, 55.88647460937503], + [-133.24150390624993, 55.920800781249994], + [-133.25214843749998, 55.95708007812502], + [-133.28920898437497, 56.01870117187505], + [-133.371240234375, 56.035888671875], + [-133.538623046875, 55.999267578125], + [-133.684228515625, 55.94277343750002], + [-133.74252929687498, 55.96484375], + [-133.75517578124996, 55.99946289062504], + [-133.59921874999998, 56.09365234375005], + [-133.530859375, 56.145654296874966], + [-133.54409179687497, 56.17651367187506], + [-133.59443359375, 56.21635742187499], + [-133.59863281249994, 56.316259765625006], + [-133.56611328125, 56.33920898437498] + ] + ], + [ + [ + [-132.77988281249998, 56.24726562499998], + [-132.83095703124997, 56.24414062499997], + [-132.89145507812503, 56.259423828124966], + [-133.03500976562498, 56.34091796875006], + [-133.037646484375, 56.364843750000034], + [-133.01708984374997, 56.391992187499994], + [-132.93549804687504, 56.441796875], + [-132.90205078124998, 56.45375976562505], + [-132.7060546875, 56.44848632812503], + [-132.64335937499993, 56.43515624999998], + [-132.62910156249995, 56.411914062500045], + [-132.632275390625, 56.388281250000034], + [-132.65283203125, 56.364355468750034], + [-132.65756835937498, 56.33930664062498], + [-132.64658203124998, 56.31318359375001], + [-132.669384765625, 56.28730468749998], + [-132.77988281249998, 56.24726562499998] + ] + ], + [ + [ + [-132.11235351562493, 56.109375], + [-132.13295898437497, 55.94326171875005], + [-132.17260742187494, 55.95263671875], + [-132.210302734375, 55.95297851562498], + [-132.28730468749995, 55.92939453124998], + [-132.368603515625, 55.939746093750045], + [-132.40659179687503, 55.95820312499998], + [-132.42060546875004, 55.97954101562499], + [-132.4060546875, 56.02885742187499], + [-132.45117187499994, 56.05634765624998], + [-132.60297851562498, 56.06640625], + [-132.65991210937503, 56.07817382812499], + [-132.69135742187504, 56.13007812500001], + [-132.6990234375, 56.19819335937501], + [-132.67519531249997, 56.22363281250006], + [-132.59873046875, 56.24165039062498], + [-132.539013671875, 56.32416992187501], + [-132.50595703125003, 56.33525390624996], + [-132.379833984375, 56.49877929687497], + [-132.31650390624998, 56.4875], + [-132.20561523437505, 56.38793945312506], + [-132.06689453125, 56.24423828124998], + [-132.11235351562493, 56.109375] + ] + ], + [ + [ + [-154.68281249999995, 56.43579101562503], + [-154.75122070312494, 56.41215820312502], + [-154.77392578124994, 56.42026367187506], + [-154.7771484375, 56.43989257812498], + [-154.76093749999998, 56.47114257812504], + [-154.72934570312503, 56.502148437499955], + [-154.62373046875, 56.56132812500002], + [-154.51752929687504, 56.60053710937501], + [-154.46337890625003, 56.59819335937499], + [-154.444873046875, 56.57319335937504], + [-154.511181640625, 56.52143554687498], + [-154.68281249999995, 56.43579101562503] + ] + ], + [ + [ + [-154.208642578125, 56.51489257812497], + [-154.25781249999997, 56.51269531249997], + [-154.33212890625003, 56.53901367187501], + [-154.32221679687504, 56.570605468750045], + [-154.21674804687507, 56.608740234375006], + [-154.11040039062496, 56.602929687499966], + [-154.10224609375, 56.58164062499998], + [-154.107177734375, 56.55781250000001], + [-154.11596679687503, 56.54389648437501], + [-154.1498046875, 56.529589843750045], + [-154.208642578125, 56.51489257812497] + ] + ], + [ + [ + [-169.755224609375, 56.63505859375002], + [-169.62392578125, 56.615136718749966], + [-169.55048828125004, 56.628125], + [-169.48569335937498, 56.61772460937496], + [-169.47431640624998, 56.59404296875002], + [-169.58686523437498, 56.54243164062498], + [-169.6326171875, 56.545703125000045], + [-169.76616210937502, 56.60795898437502], + [-169.755224609375, 56.63505859375002] + ] + ], + [ + [ + [-132.74687, 56.525683593750045], + [-132.75761718749993, 56.51103515624999], + [-132.884716796875, 56.512451171875], + [-132.93081054687497, 56.52446289062496], + [-132.94804687500002, 56.56723632812498], + [-132.93623046875, 56.606835937499966], + [-132.90654296875, 56.63740234374998], + [-132.870654296875, 56.696386718750006], + [-132.842529296875, 56.79477539062506], + [-132.655859375, 56.68471679687502], + [-132.598681640625, 56.6357421875], + [-132.56796875000003, 56.57583007812505], + [-132.63422851562504, 56.55346679687503], + [-132.71445312500003, 56.54252929687502], + [-132.74687, 56.525683593750045] + ] + ], + [ + [ + [-133.98959960937503, 56.84497070312497], + [-133.92480468749997, 56.77568359374999], + [-133.83085937500002, 56.78129882812499], + [-133.778125, 56.728906249999966], + [-133.73837890625, 56.65043945312496], + [-133.76728515625004, 56.60009765625], + [-133.809033203125, 56.611328125], + [-133.85527343750002, 56.582177734374994], + [-133.88359375000002, 56.48549804687502], + [-133.870458984375, 56.38867187500003], + [-133.88461914062498, 56.292138671874966], + [-133.93852539062502, 56.19365234374999], + [-133.94970703125, 56.12773437499996], + [-133.97080078125003, 56.10791015625003], + [-133.99399414062503, 56.10112304687496], + [-134.02402343750003, 56.11899414062506], + [-134.06748046874998, 56.13300781249998], + [-134.12241210937498, 56.07739257812503], + [-134.18959960937502, 56.07695312500002], + [-134.245068359375, 56.203271484374994], + [-134.19545898437497, 56.41352539062501], + [-134.08437, 56.456347656250045], + [-134.15048828125003, 56.513476562500045], + [-134.290234375, 56.58002929687501], + [-134.278369140625, 56.61708984375002], + [-134.384423828125, 56.72402343750002], + [-134.390625, 56.74946289062498], + [-134.37368164062502, 56.838671875000045], + [-134.27441406249997, 56.91816406249998], + [-134.14326171874998, 56.93232421875001], + [-134.051806640625, 56.898291015625006], + [-134.00058593749998, 56.869189453125045], + [-133.98959960937503, 56.84497070312497] + ] + ], + [ + [ + [-133.36621093750006, 57.003515625000034], + [-133.29970703125, 56.97216796875006], + [-133.26352539062498, 57.00498046874998], + [-133.19599609375, 57.003466796875045], + [-133.07080078125, 56.97426757812502], + [-132.99624023437497, 56.93041992187497], + [-132.95415039062502, 56.880273437499994], + [-132.95058593750002, 56.850439453125034], + [-132.963330078125, 56.78256835937506], + [-132.95400390625, 56.71308593750004], + [-132.95917968749998, 56.67705078124996], + [-132.97587890625, 56.64726562500002], + [-133.00410156249998, 56.62373046875004], + [-133.03491210937494, 56.62075195312505], + [-133.132373046875, 56.683251953124994], + [-133.243994140625, 56.79584960937501], + [-133.32895507812498, 56.83007812499997], + [-133.332421875, 56.81850585937502], + [-133.30908203125003, 56.786230468750006], + [-133.239697265625, 56.725683593750006], + [-133.22724609374995, 56.68925781249996], + [-133.178466796875, 56.64482421874999], + [-133.15664062499997, 56.611132812500045], + [-133.14423828125, 56.56689453125], + [-133.14472656250004, 56.52822265625002], + [-133.158154296875, 56.495166015625045], + [-133.18081054687502, 56.47397460937498], + [-133.212646484375, 56.46459960937503], + [-133.38276367187504, 56.47387695312506], + [-133.4841796875, 56.45175781249998], + [-133.602783203125, 56.46411132812503], + [-133.63134765624994, 56.484033203124994], + [-133.64926757812498, 56.51679687500001], + [-133.65830078125003, 56.596289062500034], + [-133.68818359375, 56.71000976562502], + [-133.68095703124993, 56.797509765624994], + [-133.75751953125, 56.876660156249955], + [-133.82304687500005, 56.92436523437499], + [-133.91728515624993, 56.96708984374999], + [-133.979443359375, 57.009570312500045], + [-133.96235351562498, 57.04345703125], + [-133.86596679687497, 57.068701171875006], + [-133.70771484374998, 57.06284179687506], + [-133.36621093750006, 57.003515625000034] + ] + ], + [ + [ + [-153.007080078125, 57.12485351562498], + [-153.13422851562504, 57.09257812499999], + [-153.15683593750003, 57.09394531249998], + [-153.23540039062496, 57.02861328125002], + [-153.29541015625, 57.00043945312504], + [-153.37460937499998, 57.05190429687505], + [-153.35434570312503, 57.131933593750006], + [-153.285205078125, 57.18505859375], + [-152.93544921874997, 57.167333984375034], + [-152.90839843750004, 57.152441406250006], + [-152.907763671875, 57.139746093750006], + [-152.93344726562498, 57.12924804687498], + [-153.007080078125, 57.12485351562498] + ] + ], + [ + [ + [-170.16054687499997, 57.183935546875034], + [-170.264013671875, 57.13676757812502], + [-170.35800781249998, 57.15419921875002], + [-170.38588867187497, 57.188574218750006], + [-170.38662109375002, 57.20302734375002], + [-170.116162109375, 57.241796875], + [-170.16054687499997, 57.183935546875034] + ] + ], + [ + [ + [-134.96977539062496, 57.351416015625034], + [-134.88486328124998, 57.24169921874997], + [-134.82319335937504, 57.156542968750045], + [-134.768505859375, 57.05419921874997], + [-134.67685546874998, 56.84228515624997], + [-134.63408203124996, 56.762109374999966], + [-134.62070312499998, 56.71831054687502], + [-134.61054687499995, 56.603417968749966], + [-134.62431640625002, 56.578710937500006], + [-134.651708984375, 56.55605468750002], + [-134.65708007812503, 56.52324218749999], + [-134.631689453125, 56.435644531250006], + [-134.63002929687502, 56.30244140625004], + [-134.65400390625, 56.227490234374955], + [-134.68188476562503, 56.216162109375034], + [-134.75029296875002, 56.24077148437499], + [-134.8064453125, 56.28125], + [-134.84799804687503, 56.32348632812497], + [-134.95014648437495, 56.45683593749996], + [-134.98056640625003, 56.518945312499994], + [-134.98242187499997, 56.56362304687505], + [-134.96665039062503, 56.59614257812501], + [-134.93320312499998, 56.61635742187505], + [-134.87509765625003, 56.67045898437496], + [-134.88344726562497, 56.679052734375034], + [-134.92758789062498, 56.66699218750006], + [-135.017822265625, 56.66015625], + [-135.09716796875, 56.70283203124998], + [-135.15903320312498, 56.72539062499996], + [-135.14658203125003, 56.80234375], + [-135.16313476562502, 56.824121093749994], + [-135.28481445312502, 56.800341796875045], + [-135.33061523437505, 56.82187], + [-135.340625, 56.85078125000001], + [-135.33837890625, 56.89399414062501], + [-135.31513671874998, 56.93183593750001], + [-135.19960937499997, 57.02734375], + [-135.21123046874993, 57.04492187500003], + [-135.26738281250002, 57.04887695312496], + [-135.341357421875, 57.08159179687496], + [-135.37529296875, 57.188427734374955], + [-135.45493164062503, 57.24941406250005], + [-135.50195312500003, 57.24384765624998], + [-135.608935546875, 57.07143554687502], + [-135.661865234375, 57.03374023437499], + [-135.81230468750002, 57.00952148437503], + [-135.78164062499997, 57.05751953125002], + [-135.767724609375, 57.10039062499996], + [-135.82114257812503, 57.23041992187498], + [-135.82275390625, 57.280419921874966], + [-135.78710937500003, 57.31728515625002], + [-135.680908203125, 57.33256835937502], + [-135.62451171875006, 57.35439453125002], + [-135.58056640624997, 57.389990234375006], + [-135.56962890624996, 57.424707031249966], + [-135.48730468749997, 57.51650390625002], + [-135.448681640625, 57.534375], + [-135.34628906250003, 57.53310546875002], + [-135.1306640625, 57.43164062500006], + [-135.06523437499996, 57.41669921875001], + [-134.96977539062496, 57.351416015625034] + ] + ], + [ + [ + [-153.24062, 57.85009765625003], + [-153.26855468749997, 57.82236328124998], + [-153.29497070312502, 57.829492187499994], + [-153.35083007812503, 57.86196289062505], + [-153.4650390625, 57.909375], + [-153.51708984374997, 57.94189453125], + [-153.52006835937496, 57.95576171874998], + [-153.4810546875, 57.97104492187498], + [-153.34697265624996, 57.93281250000001], + [-153.2900390625, 57.89790039062501], + [-153.24062, 57.85009765625003] + ] + ], + [ + [ + [-152.89804687499998, 57.82392578125004], + [-152.8908203125, 57.76899414062504], + [-152.850146484375, 57.77568359374996], + [-152.69624023437498, 57.83227539062503], + [-152.616015625, 57.84887695312506], + [-152.51157226562503, 57.85146484375005], + [-152.42875976562493, 57.82568359375003], + [-152.4119140625, 57.805908203125], + [-152.419140625, 57.78232421874998], + [-152.48540039062502, 57.73442382812499], + [-152.48261718749998, 57.70332031249998], + [-152.41147460937498, 57.646093750000034], + [-152.23652343750004, 57.614892578124994], + [-152.21528320312495, 57.597705078125045], + [-152.21621093749997, 57.577001953125006], + [-152.336669921875, 57.48222656249996], + [-152.38085937499994, 57.460107421874994], + [-152.41220703125003, 57.454785156249955], + [-152.63095703125, 57.471826171874966], + [-152.83115234375003, 57.50288085937498], + [-152.91215820312502, 57.508154296875006], + [-152.94077148437498, 57.49809570312499], + [-152.99746093749997, 57.46894531250001], + [-152.95683593749996, 57.46035156250002], + [-152.78134765625, 57.453417968750045], + [-152.71953125000005, 57.41083984374998], + [-152.69252929687502, 57.37958984375001], + [-152.67905273437503, 57.345117187499994], + [-152.71406249999998, 57.33095703125005], + [-152.789111328125, 57.320654296875006], + [-152.87905273437502, 57.32080078125003], + [-152.99028320312493, 57.28198242187503], + [-153.051611328125, 57.237646484375034], + [-153.274365234375, 57.22636718749996], + [-153.44370117187503, 57.16718749999998], + [-153.50356445312497, 57.13798828124999], + [-153.52441406249994, 57.10307617187499], + [-153.58828125, 57.07768554687496], + [-153.732568359375, 57.052343750000034], + [-153.64653320312496, 57.02958984375002], + [-153.63305664062497, 57.010351562500006], + [-153.6314453125, 56.98369140624999], + [-153.643310546875, 56.960742187500045], + [-153.75722656249997, 56.858349609374955], + [-153.972705078125, 56.77421875], + [-154.02734375, 56.77797851562502], + [-154.05078125, 56.78847656250002], + [-154.07001953125, 56.804541015625006], + [-154.070849609375, 56.820654296875006], + [-153.793212890625, 56.98950195312503], + [-153.80419921875003, 56.99780273437503], + [-153.87973632812498, 57.003515625000034], + [-153.99936523437498, 57.049951171874994], + [-154.08378906249996, 57.020068359375045], + [-154.10297851562495, 57.021240234375], + [-154.08046875, 57.06103515625003], + [-154.025439453125, 57.108496093750034], + [-154.03505859374997, 57.121826171875], + [-154.06533203125002, 57.133691406249994], + [-154.13486328124998, 57.14077148437502], + [-154.24375, 57.143017578124955], + [-154.32441406250004, 57.13178710937498], + [-154.37680664062498, 57.10703125], + [-154.38110351562494, 57.09653320312498], + [-154.26953124999997, 57.09946289062506], + [-154.239208984375, 57.08686523437498], + [-154.20913085937502, 57.06333007812506], + [-154.19082031250002, 57.03613281250003], + [-154.184326171875, 57.005322265624955], + [-154.20771484374998, 56.96381835937504], + [-154.2609375, 56.911767578124994], + [-154.33896484374998, 56.9208984375], + [-154.49877929687494, 57.03657226562504], + [-154.56933593750003, 57.20590820312498], + [-154.70595703124997, 57.335351562499966], + [-154.71220703125, 57.36625976562496], + [-154.67319335937498, 57.44609375], + [-154.53530273437502, 57.55942382812506], + [-154.38706054687503, 57.590478515624994], + [-154.2814453125, 57.638085937499994], + [-154.17934570312497, 57.652441406250006], + [-154.11616210937498, 57.651220703125006], + [-154.029833984375, 57.630712890625006], + [-153.99501953125, 57.58730468750005], + [-154.015869140625, 57.56689453124997], + [-154.00791015624998, 57.55615234375], + [-153.94736328124998, 57.53007812500002], + [-153.88188476562493, 57.439013671875045], + [-153.805419921875, 57.35820312500002], + [-153.75458984375004, 57.325341796874966], + [-153.6876953125, 57.30512695312504], + [-153.75693359374998, 57.366845703124994], + [-153.79780273437495, 57.44326171875002], + [-153.81835937499997, 57.595605468749966], + [-153.838134765625, 57.63583984374998], + [-153.79946289062497, 57.64667968749998], + [-153.69013671874995, 57.640722656250006], + [-153.69316406249996, 57.663427734375006], + [-153.80849609375002, 57.714746093749994], + [-153.879443359375, 57.757177734375006], + [-153.906103515625, 57.79077148437503], + [-153.90444335937502, 57.81987304687499], + [-153.841552734375, 57.86284179687496], + [-153.805810546875, 57.87509765625006], + [-153.76899414062504, 57.88037109374997], + [-153.69560546875002, 57.871240234374994], + [-153.66264648437496, 57.8578125], + [-153.56855468749998, 57.761083984375006], + [-153.52446289062496, 57.73100585937502], + [-153.48793945312497, 57.73095703125], + [-153.454052734375, 57.74702148437498], + [-153.42270507812503, 57.77915039062506], + [-153.39042968750002, 57.79838867187499], + [-153.35712890624998, 57.80468750000003], + [-153.25239257812507, 57.790478515624955], + [-153.21748046875004, 57.79575195312506], + [-153.20029296875, 57.82001953125004], + [-153.20102539062498, 57.86328125000006], + [-153.17519531249997, 57.87885742187504], + [-153.16884765625, 57.91064453125003], + [-153.22592773437498, 57.957617187500006], + [-153.16044921875, 57.97197265624999], + [-152.94326171874997, 57.93603515625003], + [-152.85039062499993, 57.896777343750045], + [-152.89804687499998, 57.82392578125004] + ] + ], + [ + [ + [-135.73037109375002, 58.244238281250034], + [-135.5875, 58.14677734374999], + [-135.58627929687498, 58.12441406250005], + [-135.61538085937497, 58.057470703125006], + [-135.693115234375, 58.038525390624955], + [-135.67114257812503, 58.011914062499955], + [-135.61323242187507, 57.99184570312505], + [-135.572021484375, 58.00854492187497], + [-135.42119140625, 58.102392578125006], + [-135.37470703125004, 58.12211914062502], + [-135.346630859375, 58.12412109374998], + [-135.16284179687494, 58.095849609374994], + [-135.00209960937497, 58.05107421875002], + [-134.9546875, 58.01533203125004], + [-134.92797851562497, 57.952783203124994], + [-134.97065429687495, 57.817236328125006], + [-135.10258789062502, 57.79365234374998], + [-135.16474609374998, 57.796093749999955], + [-135.23120117187503, 57.815820312499966], + [-135.33847656250003, 57.768652343750034], + [-135.24956054687493, 57.732568359374966], + [-134.97885742187503, 57.724365234375], + [-134.89663085937497, 57.64799804687499], + [-134.873095703125, 57.589208984375006], + [-134.93149414062498, 57.48115234375001], + [-135.08486328124997, 57.51103515624996], + [-135.22021484375, 57.57363281250002], + [-135.4978515625, 57.66225585937505], + [-135.564208984375, 57.66640625], + [-135.60854492187497, 57.650732421875006], + [-135.62065429687496, 57.59697265624999], + [-135.61782226562502, 57.48037109375002], + [-135.691943359375, 57.41992187500006], + [-135.91079101562502, 57.44658203124999], + [-135.9966796875, 57.53486328125001], + [-136.07661132812504, 57.67456054687497], + [-136.37822265625002, 57.83999023437502], + [-136.45991210937495, 57.87309570312502], + [-136.568603515625, 57.97216796875003], + [-136.52509765625, 58.05058593750002], + [-136.51230468749998, 58.095996093750045], + [-136.45439453125, 58.10800781249998], + [-136.36953125000002, 58.14306640625003], + [-136.32197265625, 58.21889648437502], + [-136.24570312500003, 58.15747070312503], + [-136.14375, 58.098486328125006], + [-136.142333984375, 58.15390625], + [-136.09438476562502, 58.198144531249966], + [-135.994384765625, 58.196533203125], + [-135.94741210937502, 58.20581054687503], + [-135.88173828124997, 58.247167968750006], + [-135.787060546875, 58.26850585937501], + [-135.73037109375002, 58.244238281250034] + ] + ], + [ + [ + [-134.31274414062494, 58.22890625000002], + [-134.319873046875, 58.20410156250003], + [-134.45625, 58.20654296875], + [-134.59399414062497, 58.24311523437498], + [-134.66157226562495, 58.29091796875005], + [-134.64799804687496, 58.312402343749966], + [-134.51997070312498, 58.33251953125], + [-134.398876953125, 58.287207031250006], + [-134.31274414062494, 58.22890625000002] + ] + ], + [ + [ + [-134.68027343749998, 58.16166992187499], + [-134.42612304687498, 58.138818359374966], + [-134.24008789062498, 58.143994140624955], + [-134.070166015625, 57.994531249999966], + [-133.96552734375, 57.87377929687497], + [-133.90410156250002, 57.789208984374966], + [-133.86928710937502, 57.70751953125003], + [-133.82275390624997, 57.62866210937503], + [-133.826904296875, 57.617578125], + [-133.925, 57.670800781249994], + [-133.995556640625, 57.778466796874994], + [-134.03164062499997, 57.82060546874996], + [-134.06723632812503, 57.83959960937503], + [-134.10473632812506, 57.87934570312504], + [-134.17753906249993, 57.98217773437503], + [-134.18027343749998, 58.011132812499966], + [-134.21259765624998, 58.037939453125006], + [-134.24995117187504, 58.049169921875006], + [-134.29233398437498, 58.044726562500074], + [-134.306884765625, 58.034375], + [-134.30039062500003, 57.96342773437502], + [-134.26708984375, 57.88452148437503], + [-134.08369140625, 57.712255859375006], + [-133.9611328125, 57.61416015625002], + [-133.93701171874997, 57.581591796875045], + [-133.92084960937495, 57.49199218749999], + [-133.97373046874998, 57.45136718749998], + [-133.90883789062502, 57.36870117187502], + [-133.91113281250003, 57.3525390625], + [-133.92529296875, 57.33676757812498], + [-134.10004882812495, 57.30009765624999], + [-134.26015625, 57.14677734375002], + [-134.43530273437497, 57.056982421875006], + [-134.51601562499997, 57.042578125], + [-134.55478515624998, 57.057568359374955], + [-134.59150390625, 57.09199218750004], + [-134.61308593749993, 57.13793945312497], + [-134.61953125000002, 57.19550781249998], + [-134.57587890625, 57.23173828124999], + [-134.489208984375, 57.42016601562503], + [-134.48676757812495, 57.48203125], + [-134.59482421874998, 57.56782226562498], + [-134.65986328124998, 57.638085937499994], + [-134.69511718749996, 57.73603515624998], + [-134.7541015625, 57.995019531249966], + [-134.78149414062497, 58.07783203124998], + [-134.82011718749993, 58.146875], + [-134.86997070312498, 58.20209960937498], + [-134.907666015625, 58.262792968750006], + [-134.93310546874994, 58.32895507812498], + [-134.92348632812497, 58.354638671874966], + [-134.836962890625, 58.320166015625034], + [-134.733203125, 58.225], + [-134.68027343749998, 58.16166992187499] + ] + ], + [ + [ + [-152.416943359375, 58.360205078125034], + [-152.38076171875002, 58.352099609375074], + [-152.34301757812497, 58.41162109375003], + [-152.31625976562503, 58.413476562499966], + [-152.19794921875, 58.36308593749999], + [-152.125244140625, 58.37426757812497], + [-152.078515625, 58.31235351562506], + [-152.03662109375, 58.306689453125045], + [-151.99775390624995, 58.314208984375], + [-151.974365234375, 58.30986328124999], + [-151.98251953124998, 58.244335937499955], + [-152.068896484375, 58.17792968750001], + [-152.10908203125, 58.16113281249997], + [-152.16547851562504, 58.17827148437502], + [-152.18652343749997, 58.18466796874998], + [-152.22358398437495, 58.214013671874994], + [-152.25166015625, 58.25112304687502], + [-152.26835937499993, 58.25170898437506], + [-152.33437, 58.208056640625045], + [-152.332666015625, 58.1865234375], + [-152.305224609375, 58.15405273437506], + [-152.30922851562502, 58.133886718750034], + [-152.38115234375002, 58.12426757812503], + [-152.45161132812498, 58.12924804687506], + [-152.537646484375, 58.100976562499966], + [-152.55820312500003, 58.11860351562501], + [-152.57133789062493, 58.168212890625], + [-152.5982421875, 58.16259765625], + [-152.63876953125, 58.10180664062497], + [-152.68305664062495, 58.063330078125034], + [-152.7638671875, 58.03139648437502], + [-152.78154296874996, 58.015917968750074], + [-152.84072265625002, 58.013818359374994], + [-152.92841796875004, 57.99370117187499], + [-152.98256835937497, 57.99707031250003], + [-153.30546875000005, 58.06308593749998], + [-153.38134765625003, 58.08720703125002], + [-153.11582031250003, 58.23852539062503], + [-152.976123046875, 58.29702148437505], + [-152.89536132812498, 58.29384765625002], + [-152.81455078125003, 58.27563476562503], + [-152.771875, 58.278564453125], + [-152.76870117187502, 58.345605468749994], + [-152.84394531249995, 58.39560546875006], + [-152.84111328125002, 58.41640625000002], + [-152.67465820312503, 58.450585937499966], + [-152.61230468750003, 58.44570312500005], + [-152.54355468749998, 58.42817382812501], + [-152.478466796875, 58.39970703124999], + [-152.416943359375, 58.360205078125034] + ] + ], + [ + [ + [-152.486083984375, 58.485009765624966], + [-152.51552734375002, 58.478613281250006], + [-152.588623046875, 58.50922851562501], + [-152.63662109375002, 58.54169921874998], + [-152.60488281250002, 58.56640625000003], + [-152.46318359375005, 58.61850585937498], + [-152.3955078125, 58.619384765625], + [-152.367919921875, 58.61108398437497], + [-152.35683593750002, 58.594970703125], + [-152.36225585937498, 58.570849609375045], + [-152.392822265625, 58.54086914062498], + [-152.486083984375, 58.485009765624966] + ] + ], + [ + [ + [-160.918994140625, 58.57709960937498], + [-160.9923828125, 58.56103515625], + [-161.07026367187498, 58.569140625000045], + [-161.13149414062502, 58.668212890625], + [-161.08457031249998, 58.671289062499994], + [-160.98623046875002, 58.736425781250034], + [-160.768603515625, 58.78920898437502], + [-160.71513671875005, 58.79521484375002], + [-160.918994140625, 58.57709960937498] + ] + ], + [ + [ + [-144.565625, 59.81840820312502], + [-144.61357421875002, 59.812646484374994], + [-144.541552734375, 59.87822265625002], + [-144.44492187500003, 59.95068359375006], + [-144.35395507812495, 59.996191406250006], + [-144.23574218749997, 60.015185546875045], + [-144.24897460937498, 59.98212890624998], + [-144.40322265624997, 59.92109374999998], + [-144.565625, 59.81840820312502] + ] + ], + [ + [ + [-148.02177734375, 60.06533203125005], + [-148.074169921875, 60.03471679687502], + [-148.27187, 60.05327148437499], + [-148.2306640625, 60.113525390625], + [-148.07958984375003, 60.151660156250045], + [-147.91420898437502, 60.092333984375045], + [-148.02177734375, 60.06533203125005] + ] + ], + [ + [ + [-147.735888671875, 59.81323242187503], + [-147.84633789062502, 59.79882812500003], + [-147.87246093750002, 59.828369140625], + [-147.81435546875, 59.90195312499998], + [-147.76806640625, 59.94375], + [-147.733642578125, 59.95361328125003], + [-147.60668945312497, 60.03662109374997], + [-147.46582031249994, 60.097021484375006], + [-147.33652343749998, 60.18535156249999], + [-147.20522460937497, 60.311328125000074], + [-147.180859375, 60.358251953125034], + [-147.12001953125002, 60.363085937500045], + [-147.01987304687498, 60.33222656249998], + [-146.95786132812503, 60.28886718750002], + [-146.98671874999997, 60.25434570312501], + [-147.31845703124998, 60.075292968750034], + [-147.34633789062497, 60.05195312499998], + [-147.376513671875, 59.99116210937504], + [-147.40380859375003, 59.96997070312497], + [-147.44755859375, 59.960253906250045], + [-147.47939453124997, 59.93369140625006], + [-147.49931640624993, 59.890185546875074], + [-147.540234375, 59.86752929687498], + [-147.60205078125, 59.865576171875034], + [-147.64492187500002, 59.85361328124998], + [-147.66875, 59.83154296875003], + [-147.735888671875, 59.81323242187503] + ] + ], + [ + [ + [-166.13544921875, 60.38354492187503], + [-166.04365234374995, 60.333935546874955], + [-165.994921875, 60.331152343750034], + [-165.84091796874998, 60.34624023437499], + [-165.78447265625002, 60.33559570312505], + [-165.72968750000004, 60.31420898437503], + [-165.69580078124997, 60.281542968750045], + [-165.68935546875, 60.22412109374997], + [-165.71440429687493, 60.1728515625], + [-165.70693359375002, 60.10058593750003], + [-165.71235351562498, 60.06933593749997], + [-165.63056640625, 60.028369140625074], + [-165.60502929687496, 59.97280273437502], + [-165.591796875, 59.913134765625045], + [-165.76928710937503, 59.893212890624966], + [-165.946728515625, 59.89003906250005], + [-166.09985351562494, 59.84960937499997], + [-166.13120117187503, 59.81977539062501], + [-166.10668945312503, 59.775439453125045], + [-166.14873046874996, 59.764111328124955], + [-166.187548828125, 59.773828125], + [-166.26162109374997, 59.81489257812501], + [-166.34296875, 59.83442382812498], + [-166.62763671875, 59.86464843750002], + [-166.98505859375, 59.98388671874997], + [-167.13886718749998, 60.00854492187503], + [-167.2951171875, 60.09570312500003], + [-167.43642578125002, 60.20664062500006], + [-167.3443359375, 60.224462890625034], + [-167.25170898437497, 60.23354492187502], + [-166.836328125, 60.21699218750004], + [-166.78437, 60.296435546875045], + [-166.73095703125, 60.316259765625006], + [-166.59897460937503, 60.338769531249966], + [-166.47568359374998, 60.382763671874955], + [-166.42036132812498, 60.381689453125006], + [-166.3638671875, 60.36474609375003], + [-166.24697265625, 60.39116210937499], + [-166.18496093749997, 60.396777343750074], + [-166.13544921875, 60.38354492187503] + ] + ], + [ + [ + [-145.11850585937503, 60.33710937499998], + [-145.15048828124998, 60.312646484374994], + [-145.23764648437498, 60.321337890625074], + [-145.28427734374998, 60.33681640625002], + [-145.128125, 60.40112304687497], + [-145.10244140624997, 60.38823242187502], + [-145.11850585937503, 60.33710937499998] + ] + ], + [ + [ + [-146.3939453125, 60.44965820312501], + [-146.37167968749998, 60.42216796874999], + [-146.179541015625, 60.42875976562502], + [-146.12426757812503, 60.423925781250006], + [-146.10224609374998, 60.41118164062499], + [-146.12827148437498, 60.39252929687501], + [-146.20239257812494, 60.36801757812498], + [-146.419189453125, 60.325048828125034], + [-146.59531249999998, 60.26845703125005], + [-146.61831054687497, 60.27368164062503], + [-146.65043945312502, 60.335644531249955], + [-146.6830078125, 60.360693359375006], + [-146.70288085937494, 60.395605468750006], + [-146.70253906249997, 60.40854492187498], + [-146.67026367187498, 60.4326171875], + [-146.605908203125, 60.467822265625074], + [-146.56030273437494, 60.480566406250006], + [-146.3939453125, 60.44965820312501] + ] + ], + [ + [ + [-147.658251953125, 60.45048828124999], + [-147.65869140625, 60.424121093750045], + [-147.69003906249998, 60.398876953124955], + [-147.6599609375, 60.35249023437501], + [-147.71201171875003, 60.27275390625002], + [-147.73212890625004, 60.222070312499994], + [-147.75991210937502, 60.19023437499999], + [-147.787841796875, 60.17792968749998], + [-147.81582031250002, 60.185156250000034], + [-147.82167968749997, 60.20273437499998], + [-147.80527343750003, 60.23066406249998], + [-147.87133789062497, 60.229785156250074], + [-147.89145507812498, 60.299414062500034], + [-147.8548828125, 60.321435546874994], + [-147.84169921874997, 60.35126953125004], + [-147.83759765625, 60.37128906250004], + [-147.79453124999998, 60.45986328125005], + [-147.77915039062503, 60.46606445312497], + [-147.774169921875, 60.44497070312502], + [-147.76020507812498, 60.43876953125002], + [-147.73730468750003, 60.447412109374994], + [-147.70297851562498, 60.48681640625003], + [-147.68857421875003, 60.49140624999998], + [-147.658251953125, 60.45048828124999] + ] + ], + [ + [ + [-152.02075195312494, 60.36171875000002], + [-152.06904296875, 60.358056640624994], + [-152.00449218750003, 60.40742187500001], + [-151.95971679687494, 60.503759765625006], + [-151.8994140625, 60.49038085937505], + [-151.88730468750003, 60.47270507812499], + [-151.98691406249998, 60.373974609374955], + [-152.02075195312494, 60.36171875000002] + ] + ], + [ + [ + [-172.74223632812496, 60.45737304687498], + [-172.52607421874998, 60.39174804687502], + [-172.3875, 60.398486328125074], + [-172.27753906249995, 60.343652343749994], + [-172.23208007812494, 60.299121093750074], + [-172.39716796875, 60.33110351562502], + [-172.63574218750003, 60.328857421875], + [-172.95839843749994, 60.46279296875002], + [-173.07402343749996, 60.49321289062499], + [-173.04765625000002, 60.56831054687501], + [-172.92387695312502, 60.606835937499966], + [-172.860205078125, 60.505664062500045], + [-172.74223632812496, 60.45737304687498] + ] + ], + [ + [ + [-147.930712890625, 60.82617187499997], + [-148.05742187499996, 60.817919921875074], + [-148.11542968749995, 60.83061523437499], + [-148.12377929687497, 60.844335937500034], + [-148.09970703124998, 60.89482421875002], + [-148.10166015625, 60.916113281250006], + [-148.03774414062497, 60.924121093750045], + [-147.96440429687502, 60.90014648437503], + [-147.94311523437503, 60.875390624999966], + [-147.930712890625, 60.82617187499997] + ] + ], + [ + [ + [-171.46303710937494, 63.640039062499994], + [-171.44785156249998, 63.61567382812501], + [-171.34335937499998, 63.61962890625003], + [-171.196923828125, 63.609130859375], + [-171.03486328125, 63.58549804687499], + [-170.87460937499998, 63.59399414062503], + [-170.67250976562502, 63.66884765625002], + [-170.55185546875003, 63.6884765625], + [-170.430419921875, 63.69882812499998], + [-170.29936523437502, 63.68061523437501], + [-170.17128906249997, 63.64091796875002], + [-170.121826171875, 63.617529296875034], + [-170.08242187499997, 63.57666015624997], + [-170.05629882812497, 63.527197265625006], + [-170.01738281249993, 63.49174804687499], + [-169.77744140625, 63.44799804687506], + [-169.62412109375003, 63.430566406249966], + [-169.58720703125, 63.40659179687506], + [-169.55454101562498, 63.373486328124955], + [-169.42758789062498, 63.34833984374998], + [-169.29506835937497, 63.357519531250006], + [-169.22109375, 63.348583984374955], + [-168.99604492187498, 63.347314453124966], + [-168.71601562500004, 63.310595703125045], + [-168.76132812500003, 63.21376953125002], + [-168.85239257812503, 63.17124023437498], + [-169.109033203125, 63.184912109375006], + [-169.364697265625, 63.17114257812506], + [-169.47084960937497, 63.12128906250001], + [-169.55927734374995, 63.058203125000034], + [-169.5712890625, 62.996777343749955], + [-169.62285156249996, 62.96855468749999], + [-169.67636718750003, 62.95610351562502], + [-169.71982421874998, 62.990087890625006], + [-169.77778320312498, 63.09375], + [-169.81860351562494, 63.122363281250045], + [-169.86342773437502, 63.140380859375], + [-169.9884765625, 63.17314453125002], + [-170.11538085937502, 63.19384765625006], + [-170.18959960937497, 63.19633789062502], + [-170.243115234375, 63.23227539062498], + [-170.272705078125, 63.284277343750006], + [-170.32353515624996, 63.31113281250006], + [-170.42416992187503, 63.349267578124994], + [-170.52709960937497, 63.379296875], + [-170.84838867187494, 63.44438476562502], + [-170.95405273437498, 63.45292968749999], + [-171.06123046874998, 63.44589843749998], + [-171.176025390625, 63.416210937499955], + [-171.2873046875, 63.37216796875006], + [-171.40117187499996, 63.33925781250002], + [-171.519140625, 63.331982421874955], + [-171.63183593749997, 63.351220703124966], + [-171.737841796875, 63.39423828125001], + [-171.79096679687495, 63.42470703125002], + [-171.819384765625, 63.477246093749955], + [-171.81791992187493, 63.52983398437502], + [-171.80351562499993, 63.580517578124955], + [-171.74638671874993, 63.703076171874955], + [-171.646484375, 63.727001953124955], + [-171.46303710937494, 63.640039062499994] + ] + ], + [ + [ + [-166.10986328124994, 66.22744140625], + [-166.14863281250004, 66.221826171875], + [-166.14648437499994, 66.237158203125], + [-166.03251953125002, 66.27773437500002], + [-165.82221679687498, 66.32807617187498], + [-165.82988281250002, 66.31713867187497], + [-165.94228515625002, 66.27817382812503], + [-166.10986328124994, 66.22744140625] + ] + ], + [ + [ + [-155.97353515625002, 70.84199218749995], + [-155.87221679687497, 70.83466796874998], + [-155.70805664062502, 70.85727539062506], + [-155.57939453125002, 70.89433593750005], + [-155.31337890625, 71.01499023437503], + [-155.229736328125, 71.08222656249995], + [-155.16684570312498, 71.09921875000006], + [-154.943798828125, 71.08305664062505], + [-154.81752929687497, 71.04848632812502], + [-154.67368164062498, 70.98710937500005], + [-154.72631835937503, 70.92778320312505], + [-154.78520507812493, 70.89428710937506], + [-154.59863281249994, 70.84799804687503], + [-154.39218749999998, 70.83833007812501], + [-154.19521484375002, 70.80112304687498], + [-153.918212890625, 70.87734374999997], + [-153.70136718750004, 70.89360351562499], + [-153.49770507812502, 70.89106445312501], + [-153.23291015625, 70.93256835937504], + [-152.78491210937503, 70.87602539062505], + [-152.67084960937495, 70.89072265625003], + [-152.49121093749994, 70.88095703125], + [-152.30039062499998, 70.84677734375006], + [-152.23291015625, 70.81035156249999], + [-152.437255859375, 70.733251953125], + [-152.47060546875002, 70.65361328125005], + [-152.39921875, 70.62045898437503], + [-152.26967773437497, 70.61474609375003], + [-152.253369140625, 70.56826171874997], + [-152.17294921874998, 70.556640625], + [-151.76904296875, 70.56015625], + [-151.79990234374998, 70.53803710937504], + [-151.81962890625002, 70.511328125], + [-151.94467773437498, 70.45209960937501], + [-151.22480468749998, 70.41875], + [-151.12802734374998, 70.45161132812501], + [-150.979052734375, 70.464697265625], + [-150.66264648437505, 70.509912109375], + [-150.543505859375, 70.49013671875005], + [-150.40322265625002, 70.44389648437505], + [-150.2736328125, 70.43432617187506], + [-150.15249023437502, 70.443701171875], + [-149.87011718750006, 70.50966796875002], + [-149.54404296875003, 70.51289062499998], + [-149.41059570312504, 70.49140624999995], + [-149.26943359374997, 70.50078124999999], + [-148.84477539062496, 70.42519531249997], + [-148.68837890624997, 70.41630859375002], + [-148.47919921875, 70.31791992187505], + [-148.37114257812502, 70.31499023437507], + [-148.24877929687494, 70.35673828125005], + [-148.14272460937502, 70.35546874999997], + [-148.03906250000006, 70.31547851562499], + [-147.86953124999997, 70.30327148437499], + [-147.79057617187493, 70.24013671875], + [-147.70537109375, 70.21723632812495], + [-147.06293945312504, 70.17041015625], + [-146.744873046875, 70.191748046875], + [-146.28125, 70.1861328125], + [-146.05766601562496, 70.15625], + [-145.82314453124997, 70.16005859375002], + [-145.440087890625, 70.050927734375], + [-145.23681640624997, 70.033935546875], + [-145.19736328125003, 70.00869140625002], + [-144.619189453125, 69.98212890625001], + [-144.41689453125002, 70.03901367187498], + [-144.06411132812497, 70.05410156250002], + [-143.74643554687503, 70.10195312500002], + [-143.56640625, 70.10146484375], + [-143.35703124999998, 70.08955078124998], + [-143.27646484375003, 70.09531249999998], + [-143.218310546875, 70.11625976562499], + [-142.70786132812498, 70.03378906249998], + [-142.42211914062494, 69.93950195312505], + [-142.29697265625003, 69.86987304687497], + [-141.69921875000003, 69.77036132812503], + [-141.5263671875, 69.71469726562498], + [-141.40791015625, 69.65336914062502], + [-141.338623046875, 69.64677734375002], + [-141.28964843749998, 69.66469726562502], + [-141.080810546875, 69.659423828125], + [-141.00214843750004, 69.65078125000002], + [-141.00214843750004, 69.35859375000001], + [-141.00214843750004, 69.06635742187498], + [-141.00214843750004, 68.77416992187506], + [-141.00214843750004, 68.48198242187502], + [-141.00214843750004, 68.18974609374999], + [-141.00214843750004, 67.89755859374998], + [-141.00214843750004, 67.60537109374997], + [-141.00214843750004, 67.31313476562502], + [-141.00214843750004, 67.02094726562501], + [-141.00214843750004, 66.72875976562497], + [-141.00214843750004, 66.43652343750006], + [-141.00214843750004, 66.14433593750002], + [-141.00214843750004, 65.8521484375], + [-141.00214843750004, 65.55991210937498], + [-141.00214843750004, 65.26772460937497], + [-141.00214843750004, 64.97553710937504], + [-141.00214843750004, 64.68330078125001], + [-141.00214843750004, 64.39111328124997], + [-141.00214843750004, 64.09887695312506], + [-141.00214843750004, 63.80668945312502], + [-141.00214843750004, 63.51445312499999], + [-141.00214843750004, 63.22226562499998], + [-141.00214843750004, 62.930078124999966], + [-141.00214843750004, 62.63789062500004], + [-141.00214843750004, 62.345703125], + [-141.00214843750004, 62.05346679687497], + [-141.00214843750004, 61.761279296875045], + [-141.00214843750004, 61.46904296875002], + [-141.00214843750004, 61.176855468750006], + [-141.00214843750004, 60.884667968749994], + [-141.00214843750004, 60.592431640624966], + [-141.00214843750004, 60.30024414062504], + [-140.76274414062505, 60.259130859375006], + [-140.525439453125, 60.218359375000034], + [-140.45283203125004, 60.29970703125002], + [-140.19692382812497, 60.2375], + [-139.97329101562497, 60.183154296875074], + [-139.83066406250003, 60.25288085937498], + [-139.67631835937505, 60.32832031249998], + [-139.46796875000004, 60.33369140625001], + [-139.23476562499997, 60.339746093749994], + [-139.07924804687497, 60.34370117187501], + [-139.07924804687497, 60.279443359374966], + [-139.136962890625, 60.17270507812498], + [-139.18515624999998, 60.083593750000034], + [-139.04345703124997, 59.993261718750006], + [-138.86875, 59.94575195312501], + [-138.70546874999997, 59.90131835937504], + [-138.63227539062504, 59.77827148437501], + [-138.45361328124997, 59.683398437500045], + [-138.317626953125, 59.611132812500074], + [-138.187451171875, 59.54194335937501], + [-138.00112304687497, 59.44291992187499], + [-137.870556640625, 59.37358398437499], + [-137.69663085937503, 59.281152343749994], + [-137.59331054687493, 59.22626953124998], + [-137.54370117187494, 59.11943359374999], + [-137.4841796875, 58.99121093749997], + [-137.52089843750002, 58.91538085937498], + [-137.43857421875003, 58.903125], + [-137.2775390625, 58.988183593749994], + [-137.126220703125, 59.04096679687498], + [-136.93930664062503, 59.10610351562502], + [-136.81328125000002, 59.150048828124994], + [-136.57875976562502, 59.15224609375002], + [-136.466748046875, 59.279931640624994], + [-136.46635742187493, 59.459082031250006], + [-136.34785156249995, 59.4560546875], + [-136.27797851562502, 59.48032226562506], + [-136.24711914062496, 59.53291015625001], + [-136.321826171875, 59.604833984375034], + [-136.09716796874994, 59.63837890625001], + [-135.93466796874998, 59.66264648437499], + [-135.70258789062504, 59.72875976562506], + [-135.47592773437498, 59.793261718750045], + [-135.36787109374998, 59.743310546874994], + [-135.26079101562502, 59.69501953125001], + [-135.051025390625, 59.57866210937502], + [-135.036669921875, 59.550683593749994], + [-135.05083007812496, 59.49604492187498], + [-135.07128906249994, 59.441455078125045], + [-134.94375, 59.28828125000001], + [-134.9072265625, 59.27119140624998], + [-134.80239257812497, 59.25], + [-134.67724609374997, 59.19926757812499], + [-134.62197265624997, 59.15532226562502], + [-134.44077148437503, 59.085351562499966], + [-134.410205078125, 59.05625], + [-134.39306640625, 59.009179687499994], + [-134.363525390625, 58.96875], + [-134.32963867187505, 58.93969726562506], + [-134.29697265625003, 58.89848632812502], + [-134.21850585937503, 58.849902343750045], + [-134.06918945312498, 58.79550781249998], + [-133.96572265624997, 58.757861328125045], + [-133.820751953125, 58.70502929687504], + [-133.67392578125003, 58.59716796875], + [-133.54638671874997, 58.50346679687499], + [-133.40112304687494, 58.41088867187497], + [-133.42255859374995, 58.33706054687502], + [-133.27529296875, 58.22285156250004], + [-133.12041015624996, 58.077734375000034], + [-133.00141601562495, 57.948974609375], + [-132.91684570312498, 57.87700195312502], + [-132.81552734375003, 57.77270507812497], + [-132.69150390624998, 57.645117187500006], + [-132.55048828125, 57.499902343749994], + [-132.44248046874998, 57.40673828125003], + [-132.30166015624997, 57.27631835937501], + [-132.232177734375, 57.19853515624999], + [-132.27939453124998, 57.14536132812498], + [-132.33798828124998, 57.07944335937506], + [-132.15703125, 57.048193359375006], + [-132.03154296875, 57.02656250000004], + [-132.062890625, 56.95336914062503], + [-132.104296875, 56.856787109375006], + [-131.9625, 56.81870117187506], + [-131.86616210937495, 56.792822265625006], + [-131.885986328125, 56.74213867187498], + [-131.83310546874998, 56.68481445312503], + [-131.82426757812496, 56.589990234374994], + [-131.65151367187502, 56.59609375], + [-131.57509765625002, 56.59882812500001], + [-131.471875, 56.55673828125006], + [-131.335791015625, 56.50122070312503], + [-131.1994140625, 56.44921875], + [-131.08291015625002, 56.40483398437502], + [-130.930224609375, 56.37861328125001], + [-130.74169921875006, 56.34082031250003], + [-130.649072265625, 56.26367187500003], + [-130.47709960937496, 56.230566406250034], + [-130.413134765625, 56.12250976562498], + [-130.21469726562498, 56.0828125], + [-130.09785156249995, 56.10927734375002], + [-130.05595703124996, 56.06523437500002], + [-130.02290039062495, 56.014501953125006], + [-130.01406249999997, 55.950537109375006], + [-130.02509765624995, 55.88823242187502], + [-130.07465820312504, 55.83603515625006], + [-130.111962890625, 55.77978515625006], + [-130.13706054687498, 55.719384765624994], + [-130.14653320312502, 55.65449218750001], + [-130.14042968750002, 55.58500976562499], + [-130.12041015624993, 55.52441406249997], + [-130.05947265624997, 55.412304687499955], + [-130.0392578125, 55.343603515625006], + [-130.036572265625, 55.29790039062502], + [-130.171826171875, 55.13701171875002], + [-130.21850585937503, 55.06025390625001], + [-130.2140625, 55.02587890625003], + [-130.312548828125, 54.945947265624994], + [-130.49326171874998, 54.834179687499955], + [-130.57534179687497, 54.769677734374966], + [-130.61582031249998, 54.79091796875002], + [-130.849609375, 54.80761718750006], + [-130.934619140625, 54.95039062500001], + [-130.9796875, 55.06118164062502], + [-131.04785156249997, 55.157666015624955], + [-131.0458984375, 55.179589843749994], + [-130.983935546875, 55.243945312500045], + [-130.75039062500002, 55.296972656250006], + [-130.74819335937502, 55.31801757812502], + [-130.83505859374998, 55.33208007812496], + [-130.85595703124994, 55.35512695312505], + [-130.87978515625002, 55.45952148437499], + [-130.87338867187503, 55.551123046875006], + [-130.879638671875, 55.61181640625003], + [-130.9185546875, 55.735986328124994], + [-130.977001953125, 55.81196289062504], + [-131.127685546875, 55.96015625000001], + [-131.140380859375, 55.99750976562498], + [-131.0740234375, 56.044384765624955], + [-131.032763671875, 56.08808593749998], + [-131.28759765624994, 56.01210937500005], + [-131.63525390625, 55.932226562500006], + [-131.78417968749997, 55.876562500000034], + [-131.81547851562493, 55.85419921875001], + [-131.826171875, 55.835351562499994], + [-131.799072265625, 55.782812500000034], + [-131.80327148437493, 55.76596679687498], + [-131.83359374999998, 55.73491210937496], + [-131.86943359375002, 55.64716796875004], + [-131.94501953125007, 55.55415039062501], + [-131.98339843749994, 55.535009765625006], + [-132.11899414062498, 55.56977539062498], + [-132.15541992187502, 55.59956054687501], + [-132.22343750000002, 55.72104492187498], + [-132.20751953124997, 55.75341796875], + [-132.157958984375, 55.78066406250005], + [-132.09067382812498, 55.839550781249955], + [-132.00571289062498, 55.93007812500002], + [-131.84384765625003, 56.16010742187498], + [-131.738037109375, 56.161230468750034], + [-131.55136718749998, 56.206787109375], + [-131.84423828125003, 56.22963867187502], + [-131.88789062500004, 56.24165039062498], + [-131.927294921875, 56.27299804687499], + [-131.96230468750002, 56.32368164062501], + [-132.021923828125, 56.380078124999955], + [-132.133251953125, 56.39985351562498], + [-132.18203125000002, 56.42065429687506], + [-132.25556640624998, 56.48911132812506], + [-132.30498046875002, 56.519873046875006], + [-132.33203125000003, 56.557910156250045], + [-132.336669921875, 56.603125], + [-132.357666015625, 56.62587890625002], + [-132.434423828125, 56.634130859375006], + [-132.47592773437503, 56.64965820312497], + [-132.487109375, 56.76640625], + [-132.63950195312498, 56.796435546875045], + [-132.701953125, 56.82226562499997], + [-132.80219726562495, 56.895166015624994], + [-132.82988281250002, 56.93061523437501], + [-132.83881835937495, 56.960205078125], + [-132.81425781249993, 57.04072265624998], + [-132.82460937500002, 57.05581054687505], + [-132.91342773437498, 57.047460937500034], + [-133.465869140625, 57.17216796875002], + [-133.43666992187502, 57.33686523437501], + [-133.53896484374997, 57.554150390624955], + [-133.64873046874993, 57.64228515624998], + [-133.62695312499994, 57.67651367187503], + [-133.60336914062503, 57.69467773437498], + [-133.55419921874997, 57.69506835937497], + [-133.342333984375, 57.631103515625], + [-133.142822265625, 57.55512695312498], + [-133.11704101562498, 57.56621093750002], + [-133.4357421875, 57.72705078125], + [-133.51547851562498, 57.77514648437503], + [-133.535205078125, 57.83295898437501], + [-133.53642578125, 57.863867187500006], + [-133.51113281249997, 57.88012695312503], + [-133.21206054687497, 57.86567382812501], + [-133.1943359375, 57.87768554687506], + [-133.49741210937503, 57.924658203125034], + [-133.559375, 57.924462890624994], + [-133.62573242187497, 57.85698242187502], + [-133.657275390625, 57.841015624999955], + [-133.72231445312502, 57.84423828125], + [-133.74414062500003, 57.85458984375006], + [-133.82138671875003, 57.936376953125034], + [-133.894482421875, 57.99326171874998], + [-134.03110351562498, 58.072167968749966], + [-134.05673828125003, 58.128369140624955], + [-134.06333007812503, 58.21108398437502], + [-134.045263671875, 58.289257812499955], + [-133.933642578125, 58.467871093750034], + [-133.88852539062503, 58.49873046875001], + [-133.87675781249996, 58.51816406249998], + [-133.91113281250003, 58.515234375], + [-133.94384765625003, 58.498291015625], + [-134.0361328125, 58.41533203124999], + [-134.131201171875, 58.27934570312499], + [-134.20883789062503, 58.232958984375045], + [-134.2576171875, 58.24418945312502], + [-134.33144531249997, 58.299609375000045], + [-134.48544921874998, 58.36718750000003], + [-134.66362304687493, 58.384716796874955], + [-134.77612304687506, 58.45385742187503], + [-134.94252929687502, 58.646289062500045], + [-134.964794921875, 58.74218750000006], + [-134.98613281250002, 58.765625], + [-135.07646484374993, 58.796777343749966], + [-135.13183593750003, 58.842871093750034], + [-135.21738281249998, 59.076611328124955], + [-135.33032226562497, 59.23906250000002], + [-135.35844726562502, 59.32490234375001], + [-135.34892578125005, 59.41005859375005], + [-135.36367187500002, 59.41943359375], + [-135.4025390625, 59.353076171875074], + [-135.41274414062497, 59.318457031250034], + [-135.48408203125, 59.308691406250006], + [-135.416943359375, 59.24150390624999], + [-135.400146484375, 59.207910156249994], + [-135.43374023437497, 59.21069335937503], + [-135.50234375000002, 59.202294921874994], + [-135.38613281249997, 59.087548828124966], + [-135.33408203125003, 58.909619140624955], + [-135.25703125000004, 58.777734375], + [-135.207080078125, 58.6708984375], + [-135.18457031250003, 58.589746093749994], + [-135.15190429687493, 58.51220703125], + [-135.06201171875, 58.34086914062499], + [-135.04970703125, 58.306787109374994], + [-135.06049804687495, 58.27890624999998], + [-135.090234375, 58.245849609375], + [-135.14155273437495, 58.23339843750006], + [-135.3025390625, 58.25590820312502], + [-135.36313476562498, 58.29829101562504], + [-135.449951171875, 58.376123046874994], + [-135.57177734374994, 58.41206054687504], + [-135.87343749999997, 58.394238281249955], + [-135.89755859374998, 58.40019531250002], + [-135.89633789062498, 58.46381835937501], + [-135.86171874999997, 58.577050781249966], + [-135.88955078125002, 58.62270507812505], + [-136.0455078125, 58.78911132812502], + [-136.04311523437497, 58.82163085937498], + [-135.82636718750004, 58.89794921874997], + [-135.931689453125, 58.90375976562501], + [-136.0166015625, 58.87397460937498], + [-136.049365234375, 58.893212890624994], + [-136.10063476562496, 58.99985351562506], + [-136.13369140625002, 59.03955078124997], + [-136.150048828125, 59.04809570312503], + [-136.15947265624996, 58.94677734374997], + [-136.12353515625, 58.89345703125005], + [-136.11840820312503, 58.862597656250074], + [-136.12416992187497, 58.81962890625002], + [-136.14682617187503, 58.78881835937506], + [-136.186328125, 58.770166015624966], + [-136.22583007812497, 58.765478515625006], + [-136.29902343749995, 58.78691406250002], + [-136.3802734375, 58.827294921874966], + [-136.45117187499994, 58.84633789062505], + [-136.47758789062502, 58.8625], + [-136.511181640625, 58.90708007812498], + [-136.56621093749993, 58.94091796875003], + [-136.83095703124997, 58.98383789062498], + [-136.98901367187503, 59.03447265624999], + [-137.00214843750004, 59.02114257812502], + [-136.95283203125, 58.966943359374994], + [-136.94804687500005, 58.93491210937506], + [-136.98789062499998, 58.925146484375006], + [-137.05903320312498, 58.87373046875001], + [-137.03837890624996, 58.86665039062501], + [-136.96303710937497, 58.88354492187497], + [-136.8791015625, 58.88154296875001], + [-136.74013671874997, 58.850195312500034], + [-136.613916015625, 58.809277343749955], + [-136.568212890625, 58.78632812499998], + [-136.54931640624997, 58.75239257812498], + [-136.53349609374993, 58.740234375], + [-136.41010742187504, 58.70063476562501], + [-136.40419921874997, 58.679785156250034], + [-136.48374023437503, 58.61767578125], + [-136.31987304687493, 58.624462890624955], + [-136.224609375, 58.602246093749955], + [-136.10288085937498, 58.506298828124955], + [-136.06147460937495, 58.45273437500006], + [-136.05595703125, 58.38417968750002], + [-136.08125, 58.364208984374955], + [-136.129638671875, 58.35039062499999], + [-136.46240234375003, 58.327978515625034], + [-136.5826171875, 58.24521484375006], + [-136.607421875, 58.24399414062498], + [-136.69892578124998, 58.266455078125034], + [-136.864990234375, 58.332421874999966], + [-137.07192382812497, 58.39521484374998], + [-137.54399414062502, 58.58120117187502], + [-137.55693359375, 58.589941406250034], + [-137.56459960937497, 58.625878906249966], + [-137.5970703125, 58.64423828124998], + [-137.66108398437498, 58.65991210937497], + [-137.75, 58.70708007812499], + [-137.86372070312495, 58.785546875], + [-137.93398437499997, 58.84687], + [-137.96088867187504, 58.891015625], + [-138.026904296875, 58.941455078125045], + [-138.24072265625003, 59.04682617187504], + [-138.35249023437498, 59.08730468750002], + [-138.45131835937497, 59.11010742187503], + [-138.53715820312493, 59.11508789062498], + [-138.56030273437506, 59.129150390625], + [-138.52070312499995, 59.15224609375002], + [-138.51489257812503, 59.16591796875005], + [-138.70419921875003, 59.18754882812502], + [-138.884326171875, 59.236914062500034], + [-139.34096679687502, 59.37563476562505], + [-139.57680664062502, 59.462451171875045], + [-139.71445312499998, 59.50395507812499], + [-139.77329101562498, 59.52729492187504], + [-139.79912109375, 59.54624023437498], + [-139.766064453125, 59.56606445312502], + [-139.67412109375002, 59.586816406249994], + [-139.61162109375, 59.61030273437498], + [-139.51303710937498, 59.698095703125006], + [-139.50556640624995, 59.726318359375], + [-139.55849609375002, 59.79018554687502], + [-139.58217773437502, 59.848291015624966], + [-139.58115234375, 59.880517578124966], + [-139.56914062499993, 59.91235351562497], + [-139.5541015625, 59.93330078124998], + [-139.5123046875, 59.95356445312501], + [-139.48300781249998, 59.963769531249966], + [-139.446875, 59.956835937500045], + [-139.33095703125002, 59.877001953125045], + [-139.31464843749995, 59.84794921874999], + [-139.32001953125, 59.73872070312504], + [-139.28671874999998, 59.610937500000034], + [-139.27626953124997, 59.620361328125], + [-139.265625, 59.66259765624997], + [-139.25874023437504, 59.743310546874994], + [-139.24570312499998, 59.78208007812498], + [-139.22080078125003, 59.819873046875045], + [-139.17885742187502, 59.83984375000003], + [-139.04829101562498, 59.82822265625006], + [-138.9880859375, 59.83500976562502], + [-139.24248046875002, 59.89277343749998], + [-139.40249023437502, 60.0009765625], + [-139.43144531249996, 60.012255859375074], + [-139.51894531250002, 60.01708984375], + [-139.611669921875, 59.973437500000074], + [-139.8501953125, 59.83071289062502], + [-139.91689453125002, 59.8056640625], + [-140.216748046875, 59.72666015624998], + [-140.41982421874997, 59.71074218750002], + [-140.648388671875, 59.723193359375074], + [-140.84316406249997, 59.74887695312506], + [-141.33193359375, 59.873779296875], + [-141.40830078125, 59.90278320312498], + [-141.29462890625, 59.98002929687499], + [-141.28994140624997, 60.00415039062503], + [-141.32954101562504, 60.082812500000045], + [-141.36215820312503, 60.10527343750002], + [-141.408740234375, 60.11767578125006], + [-141.4216796875, 60.10883789062504], + [-141.42216796875, 60.085498046875074], + [-141.40971679687505, 60.042285156250045], + [-141.4470703125, 60.01943359375002], + [-141.53017578124997, 59.994775390624966], + [-141.67016601562497, 59.969873046874966], + [-142.1041015625, 60.03344726562503], + [-142.54858398437494, 60.086035156250006], + [-142.94565429687503, 60.09697265625002], + [-143.506103515625, 60.05502929687498], + [-143.80507812499997, 60.01289062500001], + [-143.97949218749997, 60.00878906249997], + [-144.14721679687494, 60.01640625000002], + [-144.1609375, 60.045800781249966], + [-144.08427734375, 60.06303710937502], + [-144.08852539062497, 60.084326171875006], + [-144.185498046875, 60.150732421875034], + [-144.33261718749998, 60.19101562499998], + [-144.52998046875004, 60.20522460937502], + [-144.64296874999997, 60.22465820312499], + [-144.67158203125, 60.24921875000004], + [-144.74140625000004, 60.27270507812503], + [-144.85244140625002, 60.29506835937505], + [-144.901318359375, 60.335156249999955], + [-144.86245117187502, 60.45917968749998], + [-144.82441406249998, 60.533593749999966], + [-144.786572265625, 60.584619140624966], + [-144.69111328125, 60.66909179687502], + [-144.72441406249993, 60.662841796875], + [-144.86308593749996, 60.60087890624999], + [-144.984033203125, 60.53691406250002], + [-145.09599609375, 60.45366210937502], + [-145.16269531249998, 60.415380859375034], + [-145.248291015625, 60.38012695312506], + [-145.381787109375, 60.388574218749994], + [-145.56313476562502, 60.440722656250045], + [-145.71845703125004, 60.46757812500002], + [-145.84775390625, 60.46923828125], + [-145.898876953125, 60.47817382812505], + [-145.81064453124998, 60.524658203125], + [-145.75981445312493, 60.56201171874997], + [-145.690234375, 60.62197265625002], + [-145.67490234374998, 60.65112304687503], + [-146.1490234375, 60.66069335937502], + [-146.16640625, 60.692285156249966], + [-146.16708984374998, 60.71552734374998], + [-146.18232421875004, 60.734765625], + [-146.251025390625, 60.74907226562499], + [-146.34716796874997, 60.73813476562498], + [-146.502978515625, 60.70078125], + [-146.57045898437497, 60.72915039062502], + [-146.54638671874994, 60.74511718749997], + [-146.4955078125, 60.756787109374955], + [-146.39199218749997, 60.810839843750045], + [-146.53193359375004, 60.83886718749997], + [-146.603564453125, 60.870947265625034], + [-146.63842773437497, 60.89731445312498], + [-146.63603515625002, 60.992529296875034], + [-146.59912109374994, 61.05351562500002], + [-146.284912109375, 61.11264648437498], + [-146.38437, 61.135839843750006], + [-146.58271484375, 61.127832031249966], + [-146.71591796875003, 61.07753906250002], + [-146.8740234375, 61.00488281249997], + [-146.98017578124995, 60.97778320312503], + [-147.03432617187497, 60.99619140624998], + [-147.10595703125, 61.002539062500034], + [-147.19501953125004, 60.996826171875], + [-147.25488281249997, 60.97827148437506], + [-147.285595703125, 60.94677734375003], + [-147.32109375, 60.925488281249955], + [-147.361376953125, 60.91450195312504], + [-147.390576171875, 60.918017578125045], + [-147.43339843750002, 60.950292968750034], + [-147.52329101562503, 60.970312500000034], + [-147.56728515625002, 60.994921875000074], + [-147.59257812500005, 60.97944335937501], + [-147.62329101562497, 60.933007812499966], + [-147.6556640625, 60.90952148437498], + [-147.80761718749994, 60.885400390624966], + [-147.89111328125, 60.889892578125], + [-147.990771484375, 60.94829101562499], + [-148.00512695312494, 60.96855468750002], + [-147.97119140624997, 61.01904296875], + [-147.75185546874997, 61.218945312499955], + [-147.77377929687498, 61.21782226562502], + [-147.84482421874998, 61.186376953125006], + [-147.98637695312496, 61.106494140625074], + [-148.04941406250003, 61.082666015624994], + [-148.15791015625, 61.0796875], + [-148.20869140625004, 61.08828125], + [-148.27001953125, 61.081787109375], + [-148.34189453125, 61.060400390625006], + [-148.38876953124998, 61.036962890625006], + [-148.41074218749998, 61.01147460937497], + [-148.39584960937498, 61.007128906250074], + [-148.28740234375, 61.036230468750034], + [-148.22587890625, 61.044042968750034], + [-148.20869140625004, 61.029931640624994], + [-148.2931640625, 60.939697265625], + [-148.34443359374998, 60.853564453125045], + [-148.393310546875, 60.83188476562498], + [-148.47104492187503, 60.83549804687502], + [-148.55615234374994, 60.82700195312506], + [-148.55737304687503, 60.80292968750004], + [-148.39868164062503, 60.73403320312502], + [-148.34125976562495, 60.72431640625001], + [-148.26787109375002, 60.69970703124997], + [-148.25673828124997, 60.67529296874997], + [-148.284228515625, 60.60932617187504], + [-148.30498046874993, 60.58334960937498], + [-148.338427734375, 60.56982421874997], + [-148.4677734375, 60.57207031249999], + [-148.5095703125, 60.56523437500002], + [-148.596630859375, 60.523779296875006], + [-148.64013671875, 60.48945312500004], + [-148.62426757812497, 60.486425781250034], + [-148.54912109374993, 60.51479492187505], + [-148.43984374999997, 60.52998046875004], + [-148.29638671874997, 60.532080078125006], + [-148.18945312500003, 60.54711914062497], + [-148.11918945312502, 60.57514648437498], + [-148.05068359375002, 60.567187500000045], + [-147.98403320312502, 60.523339843749994], + [-147.96411132812494, 60.48486328124997], + [-147.990966796875, 60.45185546875001], + [-148.04599609375003, 60.428320312500006], + [-148.12919921875002, 60.414208984374966], + [-148.18168945312496, 60.39306640625003], + [-148.20356445312498, 60.36494140624998], + [-148.215869140625, 60.323144531249994], + [-148.21865234375002, 60.26767578125006], + [-148.197607421875, 60.167773437500045], + [-148.21376953125002, 60.154248046874955], + [-148.24501953124997, 60.146826171875034], + [-148.291357421875, 60.14545898437504], + [-148.33310546874998, 60.122021484374955], + [-148.430712890625, 59.98911132812498], + [-148.46508789062497, 59.97470703125006], + [-148.50605468749995, 59.98896484375004], + [-148.5423828125, 59.98740234374998], + [-148.57407226562498, 59.970068359375006], + [-148.643603515625, 59.956835937500045], + [-148.75087890625002, 59.94775390624997], + [-148.84272460937498, 59.951220703125074], + [-149.00424804687503, 59.97998046874997], + [-149.07011718749993, 60.00024414062503], + [-149.12158203124994, 60.033496093750045], + [-149.2666015625, 59.99829101562497], + [-149.304931640625, 60.013671875], + [-149.395263671875, 60.10576171875002], + [-149.41484375000002, 60.100244140624966], + [-149.4322265625, 60.00102539062499], + [-149.459716796875, 59.96625976562501], + [-149.54916992187503, 59.89433593750002], + [-149.59804687500002, 59.77045898437501], + [-149.61289062500003, 59.766845703125], + [-149.629638671875, 59.78466796874997], + [-149.68466796875, 59.895312500000045], + [-149.7138671875, 59.91958007812502], + [-149.79477539062498, 59.855810546875006], + [-149.803662109375, 59.83271484374998], + [-149.78247070312503, 59.750341796875006], + [-149.80126953124994, 59.737939453124966], + [-149.96499023437502, 59.78227539062502], + [-150.00532226562507, 59.78442382812503], + [-150.01596679687498, 59.776953125], + [-149.96015625, 59.71303710937505], + [-149.96650390625004, 59.69003906249998], + [-150.19804687499996, 59.56655273437505], + [-150.25849609375, 59.57094726562505], + [-150.29648437500003, 59.58325195312497], + [-150.338134765625, 59.581347656250045], + [-150.48535156249997, 59.535302734374966], + [-150.52597656249998, 59.53730468750004], + [-150.58154296875003, 59.564599609374994], + [-150.60737304687504, 59.56337890625002], + [-150.621142578125, 59.53505859375002], + [-150.622900390625, 59.479638671874994], + [-150.67744140625, 59.42695312500001], + [-150.85278320312506, 59.34184570312499], + [-150.89931640625002, 59.30268554687501], + [-150.934521484375, 59.249121093750034], + [-150.9607421875, 59.24399414062506], + [-151.06357421874998, 59.278417968750034], + [-151.18276367187502, 59.30078124999997], + [-151.19921875, 59.289648437500034], + [-151.163037109375, 59.256933593750034], + [-151.170703125, 59.236914062500034], + [-151.22226562499998, 59.229394531249994], + [-151.2875, 59.232324218749994], + [-151.36635742187497, 59.24560546875003], + [-151.477001953125, 59.23056640624998], + [-151.619384765625, 59.187304687500045], + [-151.73818359375002, 59.18852539062502], + [-151.90385742187493, 59.25976562499997], + [-151.94951171875, 59.26508789062498], + [-151.96406250000004, 59.28510742187498], + [-151.93168945312502, 59.34272460937501], + [-151.88461914062503, 59.386328125], + [-151.84995117187498, 59.406347656250006], + [-151.69257812499995, 59.46220703125002], + [-151.5126953125, 59.48271484375002], + [-151.39960937499995, 59.51630859375001], + [-151.26210937500002, 59.58559570312502], + [-151.18940429687507, 59.63769531249997], + [-151.04648437499998, 59.771826171875034], + [-151.05732421874995, 59.78217773437501], + [-151.08945312500003, 59.78940429687506], + [-151.403662109375, 59.662255859374994], + [-151.45009765624997, 59.65039062499997], + [-151.51259765625, 59.651269531249966], + [-151.76381835937502, 59.7], + [-151.816943359375, 59.720898437499955], + [-151.85322265625, 59.78208007812498], + [-151.783447265625, 59.92114257812497], + [-151.734521484375, 59.98833007812499], + [-151.61186523437496, 60.09204101562497], + [-151.45146484375, 60.20263671875003], + [-151.39599609375006, 60.27446289062502], + [-151.3126953125, 60.466455078124966], + [-151.31752929687497, 60.553564453125034], + [-151.35502929687493, 60.65986328125001], + [-151.35644531249997, 60.72294921874999], + [-151.32177734375, 60.74291992187497], + [-150.95375976562502, 60.84121093750002], + [-150.7794921875, 60.914794921875], + [-150.44125976562503, 61.02358398437505], + [-150.34912109375, 61.02265625000004], + [-150.281494140625, 60.985205078125034], + [-150.20278320312497, 60.955224609374966], + [-150.11303710937497, 60.93281250000004], + [-149.99755859374997, 60.93515624999998], + [-149.85625, 60.96225585937498], + [-149.63247070312502, 60.952001953125034], + [-149.1728515625, 60.88041992187502], + [-149.07509765624997, 60.87641601562498], + [-149.0712890625, 60.88554687499999], + [-149.14223632812497, 60.935693359374994], + [-149.45913085937497, 60.964746093749966], + [-149.59248046874995, 60.99384765625004], + [-149.967724609375, 61.121728515624966], + [-150.05327148437496, 61.17109374999998], + [-150.0185546875, 61.194238281249994], + [-149.92675781250003, 61.213281249999966], + [-149.89531250000002, 61.23173828124999], + [-149.88203124999998, 61.26372070312502], + [-149.82919921874998, 61.307519531249994], + [-149.73691406249998, 61.36333007812499], + [-149.59599609375, 61.417285156250045], + [-149.329052734375, 61.49736328125002], + [-149.433544921875, 61.50078125000002], + [-149.625439453125, 61.48603515625001], + [-149.695263671875, 61.470703125], + [-149.82373046875, 61.413378906250045], + [-149.87368164062497, 61.37299804687501], + [-149.94521484374997, 61.29423828125002], + [-149.97568359374998, 61.27934570312502], + [-150.10893554687502, 61.267919921875006], + [-150.47177734375003, 61.25996093749998], + [-150.53320312500003, 61.30024414062501], + [-150.56723632812503, 61.30678710937502], + [-150.61225585937495, 61.301123046875006], + [-150.9455078125, 61.1982421875], + [-151.06499023437502, 61.145703124999955], + [-151.15014648437494, 61.08583984375002], + [-151.28188476562497, 61.041943359374955], + [-151.46010742187497, 61.01411132812498], + [-151.59350585937494, 60.979638671874966], + [-151.73398437499998, 60.91074218749998], + [-151.781640625, 60.857958984375045], + [-151.78442382812503, 60.833154296874966], + [-151.75048828124994, 60.75488281250003], + [-151.785107421875, 60.74023437500006], + [-151.86616210937498, 60.734082031249955], + [-151.99624023437502, 60.682226562500034], + [-152.27070312499998, 60.528125], + [-152.306591796875, 60.47221679687499], + [-152.30507812499997, 60.453027343749994], + [-152.260302734375, 60.40942382812497], + [-152.29150390624994, 60.38110351562497], + [-152.36884765625, 60.33632812500002], + [-152.54091796874997, 60.265429687500045], + [-152.653955078125, 60.238427734374966], + [-152.727294921875, 60.23706054687503], + [-152.797900390625, 60.24716796875006], + [-152.923388671875, 60.29287109375005], + [-153.025, 60.29565429687497], + [-153.03125, 60.28925781250001], + [-152.892919921875, 60.240380859374994], + [-152.75239257812495, 60.17749023437497], + [-152.66474609374995, 60.12529296875002], + [-152.630126953125, 60.08378906249999], + [-152.62856445312497, 60.041113281250006], + [-152.660107421875, 59.99721679687502], + [-152.75947265625, 59.92089843750003], + [-152.85693359374994, 59.898095703124994], + [-153.10605468749998, 59.87504882812502], + [-153.186376953125, 59.85688476562504], + [-153.21123046875002, 59.84272460937498], + [-153.04008789062496, 59.81049804687501], + [-153.024609375, 59.79399414062502], + [-153.04814453125, 59.730029296875045], + [-153.09360351562503, 59.70913085937505], + [-153.23618164062503, 59.67094726562499], + [-153.36401367187494, 59.659863281249955], + [-153.38349609375, 59.66718750000001], + [-153.35961914062494, 59.717480468749955], + [-153.366455078125, 59.729833984375006], + [-153.41440429687503, 59.740136718749966], + [-153.48261718749995, 59.72094726562506], + [-153.65253906250004, 59.64702148437499], + [-153.670703125, 59.63481445312499], + [-153.609375, 59.615039062500045], + [-153.622265625, 59.59848632812498], + [-153.71435546875, 59.54526367187506], + [-153.752587890625, 59.509863281250034], + [-153.81416015625, 59.473730468750034], + [-154.088330078125, 59.36328125000003], + [-154.06748046875003, 59.336376953124955], + [-154.13881835937497, 59.240136718749966], + [-154.17832031250003, 59.155566406250074], + [-154.129833984375, 59.119873046875], + [-153.899560546875, 59.078027343749994], + [-153.78793945312498, 59.067919921875074], + [-153.65639648437502, 59.03867187500006], + [-153.41826171875, 58.9599609375], + [-153.33896484375, 58.908544921875006], + [-153.32705078124997, 58.884326171875045], + [-153.33442382812495, 58.85786132812498], + [-153.36293945312502, 58.82221679687501], + [-153.43759765625003, 58.754833984374955], + [-153.61733398437497, 58.65473632812498], + [-153.698583984375, 58.626367187499994], + [-153.821484375, 58.60410156249998], + [-153.86196289062497, 58.587841796874955], + [-154.01987304687498, 58.49296874999999], + [-154.06245117187495, 58.441748046875034], + [-154.05571289062502, 58.39716796875001], + [-154.08588867187504, 58.365820312500034], + [-154.289013671875, 58.30434570312502], + [-154.281787109375, 58.29345703125003], + [-154.20805664062496, 58.288769531249955], + [-154.23510742187497, 58.23461914062503], + [-154.247021484375, 58.15942382812497], + [-154.282275390625, 58.14677734374999], + [-154.409228515625, 58.147314453125006], + [-154.57060546875002, 58.118066406249994], + [-154.58193359375002, 58.109765625], + [-154.584912109375, 58.0556640625], + [-155.006884765625, 58.01606445312501], + [-155.09926757812497, 57.91333007812503], + [-155.14736328125002, 57.8818359375], + [-155.31274414062494, 57.80712890624997], + [-155.41396484374997, 57.77705078124998], + [-155.529638671875, 57.758886718750006], + [-155.590234375, 57.73359375000001], + [-155.595849609375, 57.70107421875005], + [-155.62871093750002, 57.67304687500001], + [-155.728955078125, 57.626611328124966], + [-155.77797851562497, 57.56821289062498], + [-155.81367187500004, 57.55903320312498], + [-156.0001953125, 57.544970703125045], + [-156.03735351562494, 57.52651367187502], + [-156.05537109375, 57.44755859374999], + [-156.089892578125, 57.44506835937503], + [-156.15600585937497, 57.463427734375045], + [-156.24218750000006, 57.44921874999997], + [-156.43588867187498, 57.359960937500006], + [-156.47841796875002, 57.32788085937506], + [-156.47368164062493, 57.310693359374994], + [-156.4435546875, 57.29365234375001], + [-156.39765625, 57.240576171875034], + [-156.40048828124998, 57.20483398437503], + [-156.475146484375, 57.10517578124998], + [-156.50131835937498, 57.08979492187504], + [-156.592041015625, 57.065087890624966], + [-156.62900390624998, 57.00996093750001], + [-156.71264648437494, 57.01606445312501], + [-156.77988281249998, 57.00561523437503], + [-156.82387695312497, 56.968847656250006], + [-156.87172851562497, 56.94765625000002], + [-156.9234375, 56.942089843749955], + [-156.98842773437502, 56.91293945312498], + [-157.06669921875, 56.86020507812498], + [-157.13916015625, 56.826562499999966], + [-157.20576171874995, 56.81206054687502], + [-157.27055664062502, 56.80849609375002], + [-157.33359374999998, 56.81586914062501], + [-157.39023437499998, 56.80981445312503], + [-157.44057617187502, 56.790332031250045], + [-157.48964843749997, 56.75976562500003], + [-157.52871093749997, 56.67319335937498], + [-157.57836914062503, 56.63447265625001], + [-157.60976562500002, 56.62768554687503], + [-157.67387695312493, 56.633447265624966], + [-157.77070312500004, 56.651660156250045], + [-157.869091796875, 56.645214843749955], + [-158.02788085937493, 56.59213867187498], + [-158.0783203125, 56.55205078124999], + [-157.97827148437494, 56.543164062499955], + [-157.9287109375, 56.53168945312501], + [-157.92998046875, 56.520458984374955], + [-157.98217773437494, 56.509570312500045], + [-158.07094726562502, 56.510351562500034], + [-158.12436523437498, 56.50102539062499], + [-158.18940429687498, 56.47817382812505], + [-158.352490234375, 56.453515625], + [-158.41440429687498, 56.435839843750045], + [-158.53740234375, 56.33544921875], + [-158.5521484375, 56.31269531249998], + [-158.53637695312497, 56.307666015625045], + [-158.46733398437493, 56.318261718749966], + [-158.38613281250002, 56.301562500000045], + [-158.34399414062494, 56.28032226562496], + [-158.31699218749998, 56.25415039062506], + [-158.29140624999997, 56.20366210937499], + [-158.27563476562497, 56.19624023437498], + [-158.4318359375, 56.11147460937502], + [-158.47612304687496, 56.07548828124999], + [-158.5046875, 56.062109375], + [-158.52333984374997, 56.07246093749998], + [-158.54267578125, 56.166845703125034], + [-158.554443359375, 56.182861328125], + [-158.59116210937503, 56.18452148437498], + [-158.6267578125, 56.15468750000005], + [-158.70488281250002, 56.04311523437505], + [-158.78984375000002, 55.98691406250006], + [-159.429443359375, 55.84272460937498], + [-159.52324218749993, 55.81000976562498], + [-159.54130859375, 55.74848632812498], + [-159.567626953125, 55.69521484375005], + [-159.61005859375004, 55.65278320312501], + [-159.65966796875003, 55.625927734374955], + [-159.67026367187498, 55.64501953125003], + [-159.66533203125005, 55.79487304687501], + [-159.67851562499996, 55.824658203124955], + [-159.74301757812503, 55.84375], + [-159.77138671874997, 55.84111328125002], + [-159.810400390625, 55.83271484374998], + [-159.87436523437498, 55.80029296875006], + [-159.91352539062495, 55.79218750000001], + [-159.96230468749997, 55.79487304687501], + [-160.04565429687497, 55.762939453125], + [-160.24379882812502, 55.660546875], + [-160.373193359375, 55.63510742187506], + [-160.40742187500004, 55.61381835937499], + [-160.46269531250002, 55.55781250000004], + [-160.49931640625002, 55.53730468750004], + [-160.55351562499996, 55.535498046875006], + [-160.625244140625, 55.552392578124994], + [-160.68291015624993, 55.54042968750005], + [-160.72651367187504, 55.499658203124994], + [-160.770849609375, 55.483544921874994], + [-160.896728515625, 55.51362304687501], + [-160.952197265625, 55.493066406249994], + [-161.02421875000002, 55.4404296875], + [-161.09951171875, 55.405712890624955], + [-161.17802734375, 55.38886718749998], + [-161.38193359374998, 55.371289062499955], + [-161.46386718749997, 55.38251953125004], + [-161.480517578125, 55.397802734375034], + [-161.47670898437502, 55.46489257812502], + [-161.44379882812495, 55.513281250000034], + [-161.413330078125, 55.53613281249997], + [-161.37270507812497, 55.556298828124994], + [-161.31328125000005, 55.55864257812502], + [-161.202099609375, 55.54355468750006], + [-161.21469726562503, 55.55976562499998], + [-161.255126953125, 55.579003906249994], + [-161.357470703125, 55.61220703125002], + [-161.4587890625, 55.629150390625], + [-161.51694335937503, 55.61840820312503], + [-161.59877929687502, 55.59282226562496], + [-161.65429687499994, 55.56337890625002], + [-161.68354492187495, 55.52993164062505], + [-161.72036132812502, 55.42070312499999], + [-161.74155273437498, 55.39116210937502], + [-161.98032226562503, 55.19863281250005], + [-162.073974609375, 55.13930664062505], + [-162.16660156249998, 55.14375], + [-162.21147460937496, 55.12133789062503], + [-162.27465820312494, 55.0732421875], + [-162.33291015625002, 55.05024414062501], + [-162.38637695312497, 55.05234375], + [-162.4279296875, 55.06147460937498], + [-162.45747070312498, 55.07768554687502], + [-162.452392578125, 55.09282226562499], + [-162.41254882812498, 55.10688476562501], + [-162.42680664062493, 55.14541015625005], + [-162.49526367187497, 55.20844726562501], + [-162.54189453124997, 55.24272460937496], + [-162.63037109375003, 55.24667968749998], + [-162.64414062499998, 55.218017578125], + [-162.61430664062496, 55.07148437499998], + [-162.618896484375, 55.038427734375006], + [-162.67436523437505, 54.99658203125], + [-162.81958007812503, 54.95], + [-162.86503906249996, 54.954541015624955], + [-162.9958984375, 55.046484375000034], + [-163.11962890624997, 55.06469726562503], + [-163.12783203124997, 55.03476562500006], + [-163.1001953125, 54.97363281250003], + [-163.131103515625, 54.916552734375045], + [-163.220556640625, 54.863378906250034], + [-163.28862304687502, 54.83759765625004], + [-163.33530273437503, 54.83916015624999], + [-163.33789062500003, 54.87636718750002], + [-163.296337890625, 54.94926757812496], + [-163.28569335937496, 55.00996093749998], + [-163.30595703125, 55.05854492187501], + [-163.30366210937498, 55.095849609374966], + [-163.27880859374997, 55.12182617187503], + [-163.114501953125, 55.19394531249998], + [-163.045361328125, 55.20473632812505], + [-163.008251953125, 55.186865234375034], + [-162.961962890625, 55.18383789062506], + [-162.906591796875, 55.19555664062503], + [-162.87158203124997, 55.218603515625034], + [-162.85712890625004, 55.253027343750034], + [-162.78623046874998, 55.29707031250004], + [-162.658984375, 55.350781249999955], + [-162.51337890625, 55.45], + [-162.349365234375, 55.5947265625], + [-162.15712890625, 55.71943359375001], + [-161.93662109375, 55.82416992187504], + [-161.69731445312502, 55.9072265625], + [-161.215625, 56.02143554687498], + [-161.17861328124997, 56.01445312499999], + [-161.22255859375002, 55.977441406249994], + [-161.19252929687502, 55.95429687499998], + [-161.14516601562497, 55.951318359374994], + [-160.96865234374997, 55.969628906249994], + [-160.8986328125, 55.99365234375], + [-160.87783203124997, 55.97050781249999], + [-160.902392578125, 55.941308593749994], + [-161.00839843749998, 55.91171875], + [-161.00537109375, 55.88715820312498], + [-160.85131835937497, 55.771875], + [-160.80283203125003, 55.754443359375045], + [-160.76259765625002, 55.75659179687503], + [-160.7455078125, 55.77148437500006], + [-160.75839843749998, 55.85463867187502], + [-160.70634765625002, 55.870458984375034], + [-160.59970703124998, 55.874316406250045], + [-160.530224609375, 55.863476562499955], + [-160.497900390625, 55.83789062499997], + [-160.43691406250002, 55.81669921875002], + [-160.34731445312497, 55.79990234375006], + [-160.29169921875, 55.80507812500005], + [-160.27011718749998, 55.832177734374966], + [-160.30849609374997, 55.86445312499998], + [-160.47988281249997, 55.935449218749966], + [-160.52744140624998, 55.965039062499955], + [-160.53906250000006, 56.00629882812501], + [-160.51469726562496, 56.05913085937502], + [-160.46083984375, 56.1375], + [-160.377490234375, 56.24145507812506], + [-160.30205078125, 56.31411132812502], + [-160.14926757812503, 56.39633789062498], + [-160.046240234375, 56.43701171875], + [-159.78505859375, 56.56162109374998], + [-159.28310546874997, 56.688574218750006], + [-159.15903320312498, 56.77006835937499], + [-158.99038085937502, 56.86005859375004], + [-158.91801757812502, 56.882177734375006], + [-158.91801757812502, 56.84741210937503], + [-158.894873046875, 56.81640625000003], + [-158.78208007812503, 56.795751953125006], + [-158.70883789062503, 56.78857421875003], + [-158.675146484375, 56.79487304687498], + [-158.66591796875, 56.82792968749999], + [-158.68105468749997, 56.88774414062499], + [-158.684814453125, 56.94423828125005], + [-158.67724609375, 56.997363281250045], + [-158.66079101562502, 57.03940429687498], + [-158.58559570312497, 57.11406250000002], + [-158.47373046875, 57.199072265625006], + [-158.32094726562497, 57.29790039062499], + [-158.22451171874997, 57.34267578125005], + [-158.13354492187497, 57.36640624999998], + [-158.04570312500002, 57.40947265624996], + [-157.8943359375, 57.51137695312502], + [-157.84575195312496, 57.52807617187497], + [-157.73720703124997, 57.54814453124999], + [-157.69741210937502, 57.53925781250004], + [-157.67402343749995, 57.51372070312499], + [-157.64555664062493, 57.49780273437503], + [-157.53530273437497, 57.48344726562502], + [-157.4619140625, 57.506201171875034], + [-157.47387695312497, 57.518212890624994], + [-157.53349609374993, 57.52587890624997], + [-157.57163085937498, 57.540673828124966], + [-157.60756835937502, 57.601464843749994], + [-157.6806640625, 57.638085937499994], + [-157.697216796875, 57.679443359375], + [-157.68398437499997, 57.74389648437497], + [-157.62119140624998, 57.89521484374998], + [-157.610888671875, 58.050830078125074], + [-157.55502929687498, 58.13994140625002], + [-157.44267578125, 58.17216796875002], + [-157.19370117187498, 58.19418945312506], + [-157.33940429687502, 58.234521484374994], + [-157.39360351562496, 58.23481445312498], + [-157.48837890624998, 58.25371093750002], + [-157.52441406249994, 58.350732421874966], + [-157.52363281249998, 58.421337890624955], + [-157.46088867187498, 58.503027343750006], + [-157.22885742187498, 58.64091796875002], + [-156.97465820312496, 58.736328125], + [-157.00903320312503, 58.74418945312502], + [-157.04047851562504, 58.772558593750006], + [-156.92324218749997, 58.963671875000045], + [-156.80888671875005, 59.13427734375], + [-156.96337890624997, 58.988867187500034], + [-157.14204101562504, 58.87763671875001], + [-157.66572265624995, 58.74848632812501], + [-158.02192382812495, 58.640185546875045], + [-158.19091796875003, 58.6142578125], + [-158.30258789062503, 58.64179687500001], + [-158.3896484375, 58.745654296875045], + [-158.439306640625, 58.78261718750002], + [-158.50317382812494, 58.85034179687497], + [-158.47626953124998, 58.938378906249966], + [-158.42563476562498, 58.99931640625002], + [-158.314501953125, 59.00932617187502], + [-158.18920898437506, 58.97993164062498], + [-158.080517578125, 58.97744140625002], + [-158.22060546874997, 59.0375], + [-158.422802734375, 59.08984375], + [-158.51440429687503, 59.072851562500006], + [-158.58447265625, 58.98779296875], + [-158.67827148437502, 58.92939453124998], + [-158.760595703125, 58.95009765625005], + [-158.80947265625002, 58.973876953125], + [-158.77553710937502, 58.90253906250004], + [-158.837744140625, 58.79394531250003], + [-158.86137695312502, 58.71875], + [-158.77211914062497, 58.520312500000045], + [-158.78862304687493, 58.440966796875045], + [-158.95068359375, 58.404541015625], + [-159.08266601562497, 58.469775390625074], + [-159.358203125, 58.72128906250006], + [-159.45419921875, 58.79291992187498], + [-159.67026367187498, 58.9111328125], + [-159.741455078125, 58.89428710937503], + [-159.8322265625, 58.835986328125074], + [-159.92021484375, 58.819873046875074], + [-160.152587890625, 58.905908203124994], + [-160.26079101562502, 58.97153320312506], + [-160.36313476562498, 59.05117187500002], + [-160.51992187499997, 59.00732421874997], + [-160.65664062500002, 58.955078125], + [-160.81708984375, 58.87167968750006], + [-160.924267578125, 58.872412109375034], + [-161.21591796874998, 58.80097656250004], + [-161.246826171875, 58.799462890624994], + [-161.287890625, 58.760937499999955], + [-161.328125, 58.74370117187499], + [-161.36132812499994, 58.66953124999998], + [-161.75546874999998, 58.61201171874998], + [-162.144921875, 58.64423828124998], + [-162.00869140624997, 58.68500976562504], + [-161.85649414062505, 58.71708984374999], + [-161.724365234375, 58.794287109375006], + [-161.780517578125, 58.897412109374955], + [-161.79028320312506, 58.949951171875], + [-161.78867187499998, 59.016406250000045], + [-161.64438476562498, 59.109667968750045], + [-161.794482421875, 59.109472656250006], + [-161.890771484375, 59.07607421875002], + [-161.9810546875, 59.14614257812502], + [-162.02329101562498, 59.28398437500002], + [-161.9201171875, 59.36547851562503], + [-161.87221679687502, 59.42827148437502], + [-161.83168945312497, 59.514501953125006], + [-161.82871093749998, 59.588623046875], + [-161.908642578125, 59.714111328125], + [-162.138134765625, 59.98002929687499], + [-162.24248046875, 60.17832031249998], + [-162.421337890625, 60.28398437500002], + [-162.28779296874995, 60.45688476562506], + [-162.1388671875, 60.61435546874998], + [-161.94658203125, 60.68481445312503], + [-161.96201171875003, 60.695361328125045], + [-162.06826171875002, 60.694873046875045], + [-162.138037109375, 60.685546875], + [-162.19990234375, 60.634326171875045], + [-162.26503906249997, 60.59521484375], + [-162.46870117187507, 60.394677734374994], + [-162.59970703125, 60.29697265624998], + [-162.68496093749997, 60.268945312499966], + [-162.54770507812498, 60.23105468750006], + [-162.52695312500003, 60.19912109375002], + [-162.50048828124994, 60.1265625], + [-162.53564453125, 60.038378906250074], + [-162.57075195312495, 59.98974609375], + [-162.7326171875, 59.99365234375], + [-162.87783203125, 59.92275390625005], + [-163.21938476562497, 59.84560546875005], + [-163.68037109374998, 59.80151367187503], + [-163.90688476562494, 59.80678710937505], + [-164.14282226562497, 59.89677734374999], + [-164.14111328124997, 59.94887695312502], + [-164.13154296874998, 59.994238281250034], + [-164.47050781250002, 60.14931640625002], + [-164.662255859375, 60.303808593750034], + [-164.799951171875, 60.307226562500034], + [-164.91972656249996, 60.34843749999999], + [-165.0611328125, 60.41254882812498], + [-165.04873046874997, 60.464257812499966], + [-165.02651367187497, 60.500634765624994], + [-165.11328124999997, 60.52607421875004], + [-165.22451171874997, 60.523583984374966], + [-165.35380859375002, 60.54121093750001], + [-165.01601562499997, 60.74003906250002], + [-164.8998046875, 60.873144531250034], + [-164.80517578125, 60.89204101562498], + [-164.682373046875, 60.87153320312498], + [-164.51293945312494, 60.81904296875004], + [-164.37006835937498, 60.79589843750003], + [-164.31850585937497, 60.77128906249999], + [-164.26567382812493, 60.72465820312499], + [-164.32138671875, 60.646630859374994], + [-164.37236328125002, 60.59184570312502], + [-164.30966796875003, 60.606738281250045], + [-164.13183593750003, 60.69150390624998], + [-163.999560546875, 60.76606445312498], + [-163.93613281250003, 60.75830078125], + [-163.894921875, 60.74516601562499], + [-163.82138671875003, 60.668261718750045], + [-163.72998046874997, 60.589990234374994], + [-163.5287109375, 60.66455078125], + [-163.420947265625, 60.757421875], + [-163.51186523437502, 60.798144531250045], + [-163.62304687500003, 60.822216796874955], + [-163.90654296874996, 60.85380859375002], + [-163.83730468749997, 60.88041992187502], + [-163.65541992187497, 60.877490234375045], + [-163.58691406249994, 60.902978515624994], + [-163.65893554687497, 60.93823242187497], + [-163.74902343750003, 60.9697265625], + [-163.99462890624997, 60.86469726562501], + [-164.44155273437497, 60.869970703125006], + [-164.75395507812493, 60.931298828124994], + [-165.065625, 60.92065429687503], + [-165.11484375, 60.93281250000004], + [-165.17548828125, 60.96567382812498], + [-164.99990234374997, 61.043652343749955], + [-164.87558593750003, 61.086767578125034], + [-164.86899414062503, 61.11176757812498], + [-164.9412109375, 61.114892578124994], + [-165.07709960937495, 61.094189453124955], + [-165.13769531249997, 61.130126953125], + [-165.12778320312498, 61.19243164062499], + [-165.150048828125, 61.186865234375006], + [-165.20375976562502, 61.15283203125], + [-165.27978515624994, 61.169628906249955], + [-165.34487304687497, 61.19770507812498], + [-165.31079101562497, 61.22763671875006], + [-165.24394531250002, 61.26875], + [-165.27363281250004, 61.27485351562498], + [-165.33369140625, 61.26611328124997], + [-165.392041015625, 61.21230468750002], + [-165.37929687499997, 61.16875], + [-165.38076171875002, 61.106298828125034], + [-165.48046875, 61.094873046874994], + [-165.56586914062498, 61.10234375000002], + [-165.62758789062502, 61.16518554687502], + [-165.69135742187504, 61.299902343750034], + [-165.86396484375004, 61.33569335937503], + [-165.90629882812496, 61.40380859374997], + [-165.797119140625, 61.49116210937501], + [-165.84531249999998, 61.536230468750034], + [-165.96132812499997, 61.550878906250006], + [-166.093994140625, 61.506738281249966], + [-166.152734375, 61.545947265625074], + [-166.16352539062495, 61.58901367187505], + [-166.16811523437502, 61.65083007812501], + [-166.13115234374993, 61.657324218750006], + [-166.10048828125, 61.64506835937502], + [-165.8345703125, 61.67939453124998], + [-165.80893554687503, 61.69609375000002], + [-166.01992187500002, 61.74829101562497], + [-166.07880859375, 61.80312], + [-165.99140624999998, 61.83417968749998], + [-165.83383789062503, 61.836816406249994], + [-165.61279296875003, 61.86928710937502], + [-165.70581054687497, 61.92744140624998], + [-165.72524414062502, 61.959375], + [-165.74394531250002, 62.01171875], + [-165.707275390625, 62.10043945312506], + [-165.44765624999997, 62.30390625000001], + [-165.19453125, 62.47353515625002], + [-165.115625, 62.51269531250003], + [-164.99970703125, 62.53378906250006], + [-164.89184570312497, 62.51757812500003], + [-164.77919921875002, 62.48115234374998], + [-164.75786132812493, 62.496728515624966], + [-164.79609375, 62.511621093749966], + [-164.84438476562497, 62.5810546875], + [-164.68798828125, 62.608251953125034], + [-164.59628906249998, 62.68666992187502], + [-164.589453125, 62.709375], + [-164.68896484375003, 62.67675781250006], + [-164.79267578125, 62.623193359374966], + [-164.81865234375, 62.67705078125002], + [-164.84541015625, 62.800976562499955], + [-164.79965820312503, 62.918066406250006], + [-164.76406249999997, 62.97060546875005], + [-164.67744140624998, 63.02045898437498], + [-164.428125, 63.040429687499966], + [-164.384228515625, 63.03046874999998], + [-164.37509765625003, 63.05400390624999], + [-164.52519531249996, 63.12763671874998], + [-164.46328124999997, 63.185205078124966], + [-164.40903320312503, 63.21503906250001], + [-164.10761718749998, 63.26171875000003], + [-163.94287109375, 63.247216796874994], + [-163.73623046875, 63.19282226562501], + [-163.61630859374998, 63.125146484374994], + [-163.63374023437498, 63.090429687500034], + [-163.66357421875003, 63.07031250000003], + [-163.725732421875, 63.047802734374955], + [-163.748974609375, 63.030322265625045], + [-163.73784179687496, 63.016406250000045], + [-163.64936523437498, 63.05678710937502], + [-163.504345703125, 63.105859374999966], + [-163.42319335937498, 63.08452148437499], + [-163.358837890625, 63.04575195312498], + [-163.28784179687494, 63.046435546875045], + [-163.062255859375, 63.079736328124994], + [-162.947705078125, 63.11499023437497], + [-162.80776367187502, 63.20659179687499], + [-162.621484375, 63.26582031249998], + [-162.35981445312498, 63.45258789062501], + [-162.28281250000003, 63.529199218749994], + [-162.19331054687498, 63.54096679687498], + [-162.1125, 63.53417968750003], + [-162.05625, 63.471337890624994], + [-161.97397460937498, 63.45292968749999], + [-161.505419921875, 63.468164062499994], + [-161.266015625, 63.496972656249994], + [-161.09970703125003, 63.557910156250045], + [-160.92670898437495, 63.660546875], + [-160.82651367187498, 63.72934570312498], + [-160.778564453125, 63.818945312500034], + [-160.84047851562497, 63.934912109375034], + [-160.90395507812497, 64.03120117187501], + [-160.987548828125, 64.25126953125002], + [-161.22011718749997, 64.39658203125003], + [-161.38569335937504, 64.43994140624997], + [-161.49072265625003, 64.43378906249998], + [-161.414599609375, 64.5263671875], + [-161.19306640625007, 64.51640625000002], + [-161.04877929687495, 64.53447265625005], + [-160.93193359374996, 64.5791015625], + [-160.893701171875, 64.61289062500003], + [-160.83603515624998, 64.68193359374999], + [-160.855908203125, 64.755615234375], + [-160.88696289062506, 64.79555664062505], + [-160.96748046875, 64.83955078124995], + [-161.06323242187497, 64.90400390625001], + [-161.13017578125005, 64.92543945312505], + [-161.18691406249997, 64.92402343750001], + [-161.46635742187493, 64.79487304687498], + [-161.633984375, 64.79248046875003], + [-161.75937, 64.816259765625], + [-161.86831054687497, 64.74267578125003], + [-162.17226562499997, 64.678076171875], + [-162.334619140625, 64.61284179687505], + [-162.63574218749997, 64.450830078125], + [-162.71108398437497, 64.37753906249998], + [-162.80703124999997, 64.37421875000001], + [-162.87641601562498, 64.51640625000002], + [-163.20390625, 64.65200195312502], + [-163.30283203124998, 64.60590820312495], + [-163.24829101562497, 64.56328125000007], + [-163.17407226562494, 64.53295898437503], + [-163.0517578125, 64.51972656249998], + [-163.1044921875, 64.47861328125003], + [-163.14433593750002, 64.423828125], + [-163.26704101562498, 64.47519531249998], + [-163.48618164062503, 64.54980468749997], + [-163.71308593749998, 64.588232421875], + [-164.303955078125, 64.58393554687501], + [-164.69184570312498, 64.50742187500006], + [-164.72749023437495, 64.523291015625], + [-164.76494140624996, 64.52963867187506], + [-164.82954101562498, 64.51137695312497], + [-164.85727539062503, 64.48032226562503], + [-164.89951171875003, 64.46064453125004], + [-164.978759765625, 64.45366210937502], + [-165.13813476562495, 64.465234375], + [-165.44619140625002, 64.512841796875], + [-166.1427734375, 64.58276367187503], + [-166.32509765625002, 64.625732421875], + [-166.48139648437498, 64.72807617187507], + [-166.478125, 64.79755859375001], + [-166.40869140625, 64.82695312500005], + [-166.415234375, 64.926513671875], + [-166.55087890625, 64.95297851562506], + [-166.82695312499993, 65.09609375], + [-166.92841796875, 65.15708007812498], + [-166.90639648437497, 65.16381835937503], + [-166.85678710937498, 65.14726562500002], + [-166.76254882812498, 65.134912109375], + [-166.53100585937494, 65.15473632812504], + [-166.45166015624994, 65.24731445312497], + [-166.2796875, 65.27377929687503], + [-166.12148437500002, 65.26074218750006], + [-166.15703125, 65.28583984375001], + [-166.19741210937502, 65.30556640625002], + [-166.609375, 65.35273437499995], + [-166.66538085937498, 65.33828125000002], + [-167.40400390625, 65.42211914062497], + [-167.98725585937498, 65.5677734375], + [-168.03500976562503, 65.59560546874997], + [-168.08837890624997, 65.65776367187502], + [-168.00966796875002, 65.719140625], + [-167.93056640624997, 65.74814453125003], + [-167.92700195312497, 65.71435546875], + [-167.91435546874996, 65.68120117187499], + [-167.58002929687498, 65.75830078124997], + [-167.405322265625, 65.85932617187495], + [-167.07421874999994, 65.87705078125], + [-166.997216796875, 65.90493164062502], + [-166.89443359375002, 65.95917968749995], + [-166.74765625000003, 66.05185546875], + [-166.54013671875003, 66.10063476562502], + [-166.39873046875002, 66.14443359375005], + [-166.21459960937497, 66.17026367187498], + [-166.05742187500002, 66.12724609375002], + [-166.008935546875, 66.12133789062506], + [-165.723681640625, 66.11254882812503], + [-165.62993164062496, 66.131201171875], + [-165.589990234375, 66.1451171875], + [-165.56020507812497, 66.16708984375003], + [-165.840234375, 66.24506835937504], + [-165.811865234375, 66.2884765625], + [-165.77617187500002, 66.31904296875001], + [-165.44941406249995, 66.40991210937503], + [-165.19829101562496, 66.43994140625003], + [-165.06396484374994, 66.43784179687503], + [-164.67412109375002, 66.55502929687503], + [-164.46049804687502, 66.58842773437499], + [-164.05825195312497, 66.61074218750002], + [-163.72768554687502, 66.61645507812503], + [-163.63823242187502, 66.57465820312504], + [-163.81572265625002, 66.58349609374997], + [-163.89394531249997, 66.57587890625001], + [-163.83823242187498, 66.56157226562502], + [-163.77548828125, 66.53110351562503], + [-163.79370117187497, 66.49262695312501], + [-163.90288085937502, 66.37836914062501], + [-163.89394531249997, 66.28691406250002], + [-163.96499023437497, 66.25732421875003], + [-164.03374023437493, 66.21552734374995], + [-163.69536132812502, 66.08383789062503], + [-163.17143554687496, 66.07543945312503], + [-162.886474609375, 66.09921874999998], + [-162.72177734375, 66.05981445312503], + [-162.58686523437495, 66.05083007812499], + [-162.2142578125, 66.07104492187503], + [-161.93369140625003, 66.04287109374997], + [-161.81630859375002, 66.05366210937504], + [-161.5568359375, 66.25053710937499], + [-161.45541992187503, 66.28139648437497], + [-161.34506835937503, 66.24716796875], + [-161.20107421875, 66.21938476562505], + [-161.10922851562503, 66.23950195312506], + [-161.03427734375003, 66.18881835937503], + [-161.06953125, 66.29462890625001], + [-161.12031249999995, 66.334326171875], + [-161.54443359374994, 66.40703124999999], + [-161.82817382812493, 66.370849609375], + [-161.91689453124997, 66.41181640624998], + [-161.88759765624997, 66.49306640625002], + [-162.191162109375, 66.693115234375], + [-162.31772460937503, 66.73369140625002], + [-162.46743164062497, 66.73564453125005], + [-162.54365234375004, 66.80512695312501], + [-162.60742187499997, 66.89438476562498], + [-162.47832031249996, 66.93081054687502], + [-162.36162109375, 66.94731445312502], + [-162.25356445312502, 66.91865234375004], + [-162.131396484375, 66.80136718750003], + [-162.017626953125, 66.78413085937498], + [-162.05073242187498, 66.66728515624999], + [-161.90957031250002, 66.55961914062499], + [-161.591015625, 66.45952148437502], + [-161.33593750000003, 66.49633789062497], + [-161.155810546875, 66.49531250000004], + [-161.04814453125002, 66.47421875], + [-160.78447265624993, 66.38437], + [-160.65053710937502, 66.37309570312499], + [-160.23168945312503, 66.420263671875], + [-160.22734374999993, 66.50854492187497], + [-160.26254882812503, 66.57246093750004], + [-160.360888671875, 66.6125], + [-160.64379882812497, 66.60498046875], + [-160.864013671875, 66.67084960937501], + [-161.05146484374998, 66.65278320312495], + [-161.39804687499998, 66.55185546875], + [-161.571728515625, 66.59160156250002], + [-161.68090820312494, 66.6455078125], + [-161.85668945312497, 66.70034179687497], + [-161.87875976562503, 66.80395507812503], + [-161.731298828125, 66.92280273437498], + [-161.622216796875, 66.97934570312506], + [-161.719921875, 67.02055664062502], + [-161.96542968750003, 67.04956054687497], + [-162.39155273437495, 67.01987304687506], + [-162.41157226562504, 67.06030273437503], + [-162.40942382812494, 67.10395507812495], + [-162.58310546874998, 67.01850585937495], + [-162.76142578125, 67.03642578125005], + [-163.001708984375, 67.02729492187495], + [-163.5318359375, 67.10258789062502], + [-163.720556640625, 67.19555664062506], + [-163.79980468749997, 67.27099609375006], + [-163.94267578124996, 67.47758789062505], + [-164.1251953125, 67.60673828125007], + [-165.38603515625002, 68.04560546875004], + [-165.95957031249998, 68.15590820312502], + [-166.23593749999998, 68.27792968750003], + [-166.409130859375, 68.307958984375], + [-166.574462890625, 68.32026367187504], + [-166.786279296875, 68.35961914062497], + [-166.64389648437503, 68.40800781250005], + [-166.54589843749997, 68.42436523437502], + [-166.64785156249997, 68.37382812500002], + [-166.57041015624998, 68.361083984375], + [-166.447021484375, 68.39023437499998], + [-166.38051757812502, 68.425146484375], + [-166.28295898437494, 68.57324218749997], + [-166.18203125, 68.79721679687503], + [-166.20908203125, 68.88535156250003], + [-165.50947265625004, 68.86757812499997], + [-165.04394531249994, 68.882470703125], + [-164.889697265625, 68.90244140624998], + [-164.30234375000003, 68.93647460937498], + [-164.15019531249996, 68.96118164062503], + [-163.867919921875, 69.03666992187505], + [-163.535693359375, 69.17011718749998], + [-163.250537109375, 69.34536132812497], + [-163.20517578124998, 69.39252929687498], + [-163.18710937500003, 69.38046875], + [-163.16147460937498, 69.38793945312503], + [-163.13100585937497, 69.45434570312497], + [-163.0935546875, 69.61069335937503], + [-162.95209960937504, 69.75810546875005], + [-162.35039062500002, 70.09414062500002], + [-162.07114257812498, 70.22719726562502], + [-161.977978515625, 70.28764648437502], + [-161.88095703125003, 70.33173828125001], + [-161.81259765624998, 70.28984375000002], + [-161.77993164062497, 70.27734375000003], + [-161.76108398437503, 70.25766601562503], + [-161.818408203125, 70.24843750000002], + [-161.91196289062498, 70.20546874999997], + [-162.04238281249997, 70.17666015625005], + [-162.073876953125, 70.16196289062498], + [-161.99741210937498, 70.16523437500001], + [-161.76816406249998, 70.196533203125], + [-161.63901367187503, 70.23452148437502], + [-160.9962890625, 70.30458984375], + [-160.64765625000004, 70.420556640625], + [-160.63413085937503, 70.44638671875], + [-160.11713867187495, 70.59121093750002], + [-160.04560546875007, 70.58559570312505], + [-159.96313476562503, 70.56816406250005], + [-160.106396484375, 70.47255859375002], + [-160.00556640624995, 70.44755859374999], + [-160.095068359375, 70.33330078125007], + [-159.90756835937498, 70.33144531250005], + [-159.86567382812498, 70.27885742187499], + [-159.855224609375, 70.32416992187498], + [-159.85751953125, 70.3892578125], + [-159.84262695312498, 70.45302734375002], + [-159.81499023437496, 70.49707031250003], + [-159.68330078125004, 70.47714843749998], + [-159.38676757812493, 70.52451171875003], + [-159.74619140624998, 70.53046875000001], + [-159.96181640625002, 70.63408203125007], + [-160.081591796875, 70.63486328125003], + [-159.680908203125, 70.786767578125], + [-159.31450195312496, 70.87851562500003], + [-159.23173828125, 70.87675781250002], + [-159.191748046875, 70.85966796875002], + [-159.18315429687505, 70.83193359375005], + [-159.26220703124997, 70.8138671875], + [-159.33984374999997, 70.78125], + [-159.30415039062498, 70.75253906250003], + [-159.251171875, 70.7484375], + [-159.07504882812503, 70.7720703125], + [-158.99628906249995, 70.801611328125], + [-158.62094726562498, 70.79902343750001], + [-158.51083984375003, 70.82011718750005], + [-158.48437, 70.84106445312503], + [-157.998486328125, 70.8453125], + [-157.909375, 70.860107421875], + [-157.60561523437497, 70.94125976562503], + [-157.32475585937496, 71.03959960937499], + [-157.19531249999997, 71.09326171875], + [-156.97333984375004, 71.23002929687505], + [-156.78330078124998, 71.31894531250006], + [-156.47021484374994, 71.40766601562501], + [-156.39526367187494, 71.39667968749998], + [-156.49667968750003, 71.37910156249995], + [-156.567236328125, 71.34155273437503], + [-156.469970703125, 71.29155273437507], + [-155.81113281249998, 71.18842773437501], + [-155.64560546875, 71.18276367187502], + [-155.57944335937503, 71.12109374999997], + [-155.6345703125, 71.06157226562502], + [-155.80434570312502, 70.99541015625005], + [-156.14658203125, 70.92783203125003], + [-156.041943359375, 70.90224609375], + [-155.97353515625002, 70.84199218749995] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Uzbekistan", + "iso_a2": "UZ", + "iso_a3": "UZB", + "iso_n3": "860", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [71.7796875, 39.950244140625045], + [71.75292968749997, 39.90712890625005], + [71.70585937500007, 39.91743164062501], + [71.66894531249997, 39.94609374999999], + [71.68125, 39.968652343749966], + [71.7365234375001, 39.98095703124997], + [71.7653320312501, 39.993261718750006], + [71.78994140625005, 39.99531249999998], + [71.7796875, 39.950244140625045] + ] + ], + [ + [ + [71.20615234375006, 39.892578125], + [71.15625, 39.88344726562502], + [71.06425781250002, 39.88491210937505], + [71.01171874999997, 39.895117187500006], + [71.04365234375004, 39.97631835937503], + [71.04482421875005, 39.992529296875034], + [71.04101562499997, 39.99492187499999], + [71.01445312500007, 40.005761718749966], + [70.97441406250007, 40.03886718749996], + [70.96064453125004, 40.087988281250034], + [70.9762695312501, 40.13325195312501], + [71.00546875, 40.15229492187498], + [71.0241210937501, 40.14916992187497], + [71.08037109375007, 40.07988281249999], + [71.13027343750005, 40.059667968750034], + [71.2287109375001, 40.04814453124999], + [71.179296875, 39.979833984375034], + [71.215625, 39.90678710937496], + [71.20615234375006, 39.892578125] + ] + ], + [ + [ + [61.99023437500003, 43.492138671874955], + [62.0719726562501, 43.489355468750034], + [62.23789062500006, 43.50957031249996], + [62.459375, 43.53662109374997], + [62.6344726562501, 43.558007812499966], + [62.84619140624997, 43.583886718749994], + [63.047656250000074, 43.608496093750034], + [63.20703125000003, 43.62797851562502], + [63.44482421874997, 43.61323242187504], + [63.67968749999997, 43.5986328125], + [63.84814453124997, 43.58813476562497], + [64.01328125000006, 43.57783203125001], + [64.20878906250002, 43.565722656250045], + [64.31816406250002, 43.55893554687498], + [64.44316406250007, 43.551171875], + [64.49609375000003, 43.571630859375006], + [64.6041015625, 43.61347656249998], + [64.70605468749997, 43.65297851562505], + [64.81181640625002, 43.693945312500034], + [64.9054687500001, 43.714697265625006], + [65.003125, 43.649072265624966], + [65.08486328125005, 43.57368164062498], + [65.17089843750003, 43.49418945312502], + [65.27050781249997, 43.417529296875045], + [65.36650390625007, 43.37202148437501], + [65.49619140625, 43.310546875], + [65.570703125, 43.205175781250034], + [65.67021484375002, 43.064599609374994], + [65.73564453125002, 42.97211914062498], + [65.80302734375002, 42.87695312500006], + [65.9010742187501, 42.91450195312498], + [66.00566406250007, 42.95458984375006], + [66.1002929687501, 42.99082031249998], + [66.08886718749997, 42.873388671875034], + [66.078515625, 42.76665039062496], + [66.06269531250004, 42.60517578125001], + [66.04980468750003, 42.472753906250034], + [66.01552734375005, 42.314794921875006], + [66.01318359375003, 42.19448242187502], + [66.01123046874997, 42.088769531249966], + [66.00957031250007, 42.00488281250003], + [66.19316406250007, 42.001123046874966], + [66.3288085937501, 41.99833984375002], + [66.49863281250006, 41.99487304687503], + [66.5150390625, 41.88940429687503], + [66.53789062500007, 41.74125976562496], + [66.57255859375002, 41.60698242187496], + [66.60166015625, 41.49433593750001], + [66.64531250000002, 41.3486328125], + [66.66865234375004, 41.27075195312503], + [66.70966796875004, 41.17915039062501], + [66.74980468750007, 41.15708007812506], + [66.81425781250002, 41.14238281249999], + [67.038671875, 41.1533203125], + [67.225, 41.16235351562497], + [67.37158203124997, 41.16953125], + [67.52802734375004, 41.177148437499966], + [67.73505859375004, 41.18725585937497], + [67.805078125, 41.163916015625034], + [67.86572265625003, 41.18027343749998], + [67.9357421875001, 41.19658203125002], + [67.99140625000004, 41.13002929687505], + [68.01972656250004, 41.09624023437499], + [68.059375, 41.06127929687497], + [68.11308593750007, 41.02861328124999], + [68.09033203124997, 40.96025390625002], + [68.05703125, 40.86059570312506], + [68.04765625000007, 40.80927734374998], + [68.11230468749997, 40.75405273437502], + [68.16025390625, 40.721777343750006], + [68.29189453125, 40.656103515625034], + [68.41503906250003, 40.61943359375002], + [68.495703125, 40.60864257812506], + [68.57265625, 40.62265624999998], + [68.60068359375, 40.65996093750002], + [68.59365234375, 40.711279296875006], + [68.55654296875, 40.76513671875006], + [68.5592773437501, 40.82929687499998], + [68.58408203125, 40.876269531250045], + [68.66279296875004, 40.961523437500006], + [68.73710937500002, 41.04189453125002], + [68.85117187500006, 41.12382812500002], + [68.9869140625, 41.205029296874955], + [69.04345703124997, 41.26411132812501], + [69.06494140625003, 41.366943359375], + [69.15361328125002, 41.42524414062498], + [69.24931640625007, 41.46025390624999], + [69.3683593750001, 41.490576171875034], + [69.40097656250006, 41.54189453125002], + [69.56513671875004, 41.62905273437502], + [69.66386718750007, 41.672119140625], + [69.78808593749997, 41.69731445312499], + [69.95996093749997, 41.754052734374994], + [70.09560546875, 41.82050781250004], + [70.22587890625007, 41.94599609375001], + [70.32890625000002, 42.02797851562502], + [70.41601562500003, 42.07856445312501], + [70.48906250000007, 42.08027343750001], + [70.54013671875006, 42.03945312500005], + [70.58427734375002, 42.036035156249966], + [70.61328124999997, 42.05473632812496], + [70.6625, 42.10747070312496], + [70.71523437500005, 42.16865234374998], + [70.76455078125005, 42.194189453125034], + [70.86035156250003, 42.20722656250004], + [70.94677734374997, 42.24868164062505], + [70.97900390625003, 42.26655273437504], + [71.03603515625, 42.28466796875], + [71.12998046875006, 42.25], + [71.21269531250002, 42.20644531250005], + [71.23232421875005, 42.18627929687503], + [71.22851562499997, 42.16289062499996], + [71.03222656249997, 42.07778320312505], + [70.9103515625001, 42.03798828125002], + [70.85664062500004, 42.03081054687496], + [70.84189453125, 42.019628906250006], + [70.80332031250006, 41.92265625], + [70.7277343750001, 41.905224609374955], + [70.63085937499997, 41.87548828125003], + [70.562890625, 41.830810546875], + [70.45498046875005, 41.72504882812504], + [70.18095703125007, 41.571435546874994], + [70.17695312500004, 41.53999023437498], + [70.20087890625004, 41.51445312500002], + [70.29003906250003, 41.496826171875], + [70.4078125, 41.449560546875034], + [70.4713867187501, 41.41264648437499], + [70.64589843750005, 41.46035156250002], + [70.6888671875, 41.449804687500006], + [70.734375, 41.400537109374994], + [70.78242187500004, 41.2625], + [70.86044921875006, 41.22490234375002], + [70.9625976562501, 41.19599609374998], + [71.0259765625, 41.18657226562502], + [71.11074218750005, 41.152636718750045], + [71.22343750000002, 41.13994140625002], + [71.29882812500003, 41.152490234374994], + [71.39306640625003, 41.123388671875034], + [71.40839843750004, 41.13603515625002], + [71.42089843750003, 41.341894531250034], + [71.5, 41.307470703125034], + [71.5456054687501, 41.30805664062498], + [71.58554687500006, 41.33325195312497], + [71.60625, 41.367431640625], + [71.61962890624997, 41.435449218749994], + [71.6022460937501, 41.50327148437506], + [71.6375, 41.53417968750006], + [71.66494140625, 41.54121093749998], + [71.68515625, 41.53300781249999], + [71.69726562499997, 41.51557617187498], + [71.70068359374997, 41.454003906249966], + [71.75771484375005, 41.42802734375002], + [71.79248046875003, 41.41313476562499], + [71.82578125000006, 41.36103515625004], + [71.85800781250006, 41.311376953125034], + [71.8786132812501, 41.195019531249955], + [71.95849609375003, 41.18706054687502], + [72.05244140625004, 41.16474609375001], + [72.1154296875001, 41.18657226562502], + [72.1642578125001, 41.173730468749966], + [72.18095703125002, 41.11845703124999], + [72.18066406249997, 41.066845703124955], + [72.18730468750002, 41.02592773437499], + [72.2130859375001, 41.014257812500006], + [72.29492187499997, 41.039941406249994], + [72.36406250000002, 41.04345703125], + [72.42734375000006, 41.018945312499966], + [72.50595703125, 40.98168945312503], + [72.62041015625002, 40.88378906249997], + [72.65830078125, 40.86992187499999], + [72.83095703125005, 40.862158203125006], + [72.8666015625, 40.84233398437496], + [72.92597656250004, 40.842431640624994], + [72.99003906250002, 40.86010742187503], + [73.13212890625002, 40.828515625], + [73.1369140625001, 40.810644531250006], + [73.112890625, 40.78603515625005], + [72.77382812500005, 40.65039062500003], + [72.74882812500002, 40.60869140624996], + [72.67958984375, 40.55561523437498], + [72.6041015625, 40.52543945312499], + [72.56748046875, 40.52436523437501], + [72.40205078125004, 40.578076171874955], + [72.38261718750002, 40.56513671874998], + [72.36904296875, 40.54345703125], + [72.36972656250006, 40.519726562499955], + [72.40595703125004, 40.46308593749998], + [72.3892578125, 40.427392578124994], + [72.35771484375007, 40.40166015624999], + [72.25400390625, 40.42421875000005], + [72.23466796875007, 40.438623046874966], + [72.23281250000005, 40.45439453124999], + [72.19287109374997, 40.45444335937498], + [72.13125, 40.438623046874966], + [72.01259765625, 40.340722656249994], + [71.97109375, 40.289501953124955], + [71.95566406250006, 40.25859375], + [71.902734375, 40.24096679687503], + [71.84541015625004, 40.23432617187501], + [71.7726562500001, 40.18803710937499], + [71.69248046875, 40.15234375], + [71.66679687500002, 40.17861328125002], + [71.65087890624997, 40.20800781250006], + [71.62988281250003, 40.21713867187506], + [71.58046875, 40.21025390624999], + [71.52041015625005, 40.208984375], + [71.457421875, 40.24199218749996], + [71.37617187500004, 40.27519531249999], + [71.30468749999997, 40.28691406249996], + [71.09453125000002, 40.27124023437497], + [70.990625, 40.2548828125], + [70.95800781250003, 40.238867187500034], + [70.89941406249997, 40.234570312499955], + [70.653125, 40.201171875], + [70.60273437500004, 40.21416015624999], + [70.56582031250005, 40.26713867187502], + [70.53359375, 40.32451171874999], + [70.46992187500004, 40.345361328124966], + [70.39824218750002, 40.361376953125045], + [70.37158203125003, 40.38413085937506], + [70.3697265625, 40.41201171875005], + [70.3771484375001, 40.43925781250002], + [70.38261718750002, 40.453515624999966], + [70.54882812499997, 40.562792968750045], + [70.69833984375006, 40.66118164062502], + [70.71201171875, 40.66909179687502], + [70.72558593750003, 40.68779296875002], + [70.75107421875006, 40.721777343750006], + [70.75097656250003, 40.739599609375006], + [70.63916015624997, 40.77856445312503], + [70.63476562499997, 40.79658203124998], + [70.65732421875006, 40.81508789062502], + [70.65732421875006, 40.839648437500045], + [70.57822265625, 40.911474609375006], + [70.44150390625006, 41.0234375], + [70.40195312500006, 41.03510742187498], + [70.37265625000006, 41.02763671874996], + [70.31894531250006, 40.91923828124999], + [70.29208984375006, 40.89169921874998], + [70.13632812500006, 40.820410156250034], + [70.00566406250007, 40.77143554687501], + [69.77324218750007, 40.68427734375001], + [69.71289062500003, 40.65698242187503], + [69.67080078125, 40.66196289062498], + [69.62841796874997, 40.679052734375006], + [69.4982421875001, 40.76708984375], + [69.41386718750002, 40.79716796874999], + [69.35722656250002, 40.76738281249996], + [69.309375, 40.72392578124999], + [69.31396484375003, 40.63476562500006], + [69.25996093750004, 40.58764648437503], + [69.20625, 40.566552734374994], + [69.30419921874997, 40.32739257812503], + [69.29443359375003, 40.29658203124998], + [69.21953125000007, 40.288134765625045], + [69.27490234374997, 40.19809570312498], + [69.22832031250007, 40.18759765624998], + [69.11035156250003, 40.20874023437503], + [68.95175781250006, 40.22260742187501], + [68.6525390625001, 40.182666015625045], + [68.63066406250007, 40.16708984374998], + [68.6224609375, 40.14726562500002], + [68.63974609375006, 40.12919921874999], + [68.7845703125, 40.127099609374994], + [68.92685546875, 40.136328125], + [68.9660156250001, 40.11958007812498], + [68.9720703125, 40.08994140624998], + [68.9556640625, 40.07133789062502], + [68.90849609375002, 40.068212890625006], + [68.80468750000003, 40.05034179687499], + [68.79277343750007, 40.03149414062497], + [68.789453125, 40.013330078124994], + [68.82441406250004, 39.96079101562506], + [68.86386718750006, 39.92734374999998], + [68.86875, 39.90747070312503], + [68.8522460937501, 39.890966796875034], + [68.83242187500005, 39.88432617187502], + [68.79765625000007, 39.90913085937501], + [68.77783203124997, 39.904199218749966], + [68.76796875, 39.88183593750003], + [68.75820312500005, 39.855566406250006], + [68.73525390625, 39.83623046874999], + [68.6869140625, 39.846289062500006], + [68.63896484375007, 39.8388671875], + [68.61035156250003, 39.74326171875006], + [68.58613281250004, 39.63496093750001], + [68.50693359375, 39.56279296874996], + [68.46328125, 39.53671874999998], + [68.39902343750006, 39.52885742187499], + [68.30302734375002, 39.537695312500006], + [68.24492187500002, 39.54829101562504], + [68.07714843750003, 39.56416015624998], + [67.90859375000005, 39.59379882812499], + [67.71904296875007, 39.62138671875002], + [67.54248046874997, 39.55761718749997], + [67.49169921875003, 39.51875], + [67.45957031250006, 39.48242187500003], + [67.426171875, 39.46557617187497], + [67.34960937499997, 39.242089843749994], + [67.3576171875001, 39.216699218749994], + [67.40039062499997, 39.196679687499994], + [67.61650390625007, 39.15029296875005], + [67.64833984375005, 39.13105468750004], + [67.66728515625002, 39.10917968750002], + [67.67656250000002, 39.00849609375001], + [67.69443359375006, 38.99462890625003], + [67.76855468750003, 38.98222656249999], + [67.8756835937501, 38.98300781249998], + [67.95957031250006, 38.99291992187506], + [68.0443359375, 38.98359375000001], + [68.10351562499997, 38.96201171875006], + [68.13251953125004, 38.927636718749966], + [68.14853515625, 38.890625], + [68.04785156250003, 38.669287109375006], + [68.05595703125007, 38.58891601562499], + [68.08720703125002, 38.47353515625002], + [68.144140625, 38.38310546874999], + [68.2513671875, 38.29453125000006], + [68.33310546875, 38.23779296875003], + [68.3502929687501, 38.211035156250006], + [68.35449218750003, 38.16953124999998], + [68.3412109375, 38.11679687499998], + [68.29404296875006, 38.032910156249955], + [68.2365234375001, 37.959667968749955], + [68.17402343750004, 37.92841796874998], + [68.08759765625004, 37.83544921875006], + [68.01093750000004, 37.720947265625], + [67.86357421875002, 37.57070312500002], + [67.81435546875005, 37.48701171875004], + [67.7980468750001, 37.244970703125006], + [67.75898437500004, 37.172216796875034], + [67.75292968749997, 37.199804687500034], + [67.7, 37.227246093749955], + [67.60742187499997, 37.22250976562506], + [67.546484375, 37.23564453124999], + [67.5172851562501, 37.26665039062499], + [67.44169921875007, 37.25800781250001], + [67.3197265625, 37.209570312500006], + [67.1955078125001, 37.23520507812498], + [67.06884765624997, 37.334814453125006], + [66.82773437500006, 37.37128906249998], + [66.52226562500007, 37.34848632812506], + [66.51064453125, 37.45869140625004], + [66.51132812500006, 37.59916992187496], + [66.52558593750004, 37.785742187500034], + [66.629296875, 37.93203125], + [66.62636718750005, 37.959863281249994], + [66.60625, 37.98671875000005], + [66.57451171875007, 38.01079101562499], + [66.38974609375006, 38.050927734374994], + [66.3353515625, 38.07216796875005], + [66.26367187499997, 38.118066406249994], + [66.17314453125007, 38.16669921875004], + [66.09482421875, 38.20014648437501], + [65.97119140624997, 38.244238281250006], + [65.8571289062501, 38.26875], + [65.79023437500004, 38.25004882812496], + [65.72851562500003, 38.22636718750002], + [65.67089843749997, 38.225732421874966], + [65.612890625, 38.23857421875002], + [65.39960937500004, 38.34882812500001], + [65.07666015624997, 38.53945312500002], + [64.820703125, 38.672460937500034], + [64.65996093750002, 38.73603515625001], + [64.621875, 38.756445312500006], + [64.531640625, 38.81621093750002], + [64.3099609375, 38.97729492187497], + [64.16279296875004, 38.95361328125003], + [63.95253906250005, 39.05834960937506], + [63.76367187500003, 39.160546875], + [63.720800781250006, 39.18813476562502], + [63.50605468750004, 39.377099609374966], + [63.291894531249994, 39.49951171875006], + [63.05810546874997, 39.633154296875006], + [62.90683593750006, 39.716796875], + [62.65068359375002, 39.858496093750006], + [62.525488281250006, 39.94409179687503], + [62.48320312500002, 39.97563476562496], + [62.44160156250004, 40.03623046875006], + [62.375, 40.33208007812502], + [62.29804687500004, 40.46748046874998], + [62.18847656250003, 40.54121093749998], + [62.095019531250074, 40.68330078124998], + [62.01757812500003, 40.89379882812497], + [61.953515625, 41.030615234375034], + [61.90283203124997, 41.09370117187501], + [61.79990234375006, 41.163427734375006], + [61.64453125000003, 41.239843750000034], + [61.496972656249994, 41.276074218749955], + [61.443652343750074, 41.27460937500001], + [61.41738281250005, 41.26513671875003], + [61.3875, 41.252148437499955], + [61.32890625000002, 41.19511718749999], + [61.2423828125001, 41.18920898437503], + [61.179296875, 41.19057617187502], + [61.11992187500002, 41.21088867187501], + [60.93320312500006, 41.22900390625006], + [60.86718750000003, 41.248681640624966], + [60.75488281249997, 41.245751953124994], + [60.513574218749994, 41.216162109375006], + [60.454980468749994, 41.221630859374955], + [60.2, 41.34897460937498], + [60.089648437500074, 41.39941406250003], + [60.06738281249997, 41.427343750000034], + [60.06875, 41.476220703124966], + [60.10605468750006, 41.54521484374999], + [60.137988281250074, 41.594140625], + [60.12402343749997, 41.64497070312498], + [60.07558593750005, 41.700537109375006], + [60.07558593750005, 41.759667968749966], + [60.10859375000004, 41.792675781249955], + [60.17636718750006, 41.78227539062496], + [60.20078125000006, 41.803125], + [60.1920898437501, 41.83442382812501], + [60.15556640625002, 41.85703125], + [60.10693359374997, 41.90742187499998], + [59.96259765625004, 41.954394531250045], + [59.941796875, 41.97353515625002], + [59.949316406250006, 41.995410156250045], + [59.97412109374997, 42.018798828125], + [59.97919921875004, 42.06806640625001], + [59.9816406250001, 42.13173828125002], + [60.00078125000002, 42.16474609374998], + [60.0060546875001, 42.190820312499966], + [59.98515625000002, 42.21171875], + [59.93652343749997, 42.23603515625004], + [59.858300781249994, 42.295166015625], + [59.76259765625005, 42.30156249999999], + [59.451074218749994, 42.29951171875001], + [59.35429687500002, 42.32329101562496], + [59.2765625000001, 42.35615234374998], + [59.199121093749994, 42.481689453125], + [59.15957031250005, 42.51142578125001], + [59.123144531250006, 42.523779296875034], + [59.03583984375004, 42.528125], + [58.9308593750001, 42.54028320312503], + [58.87695312500003, 42.56147460937498], + [58.72998046875003, 42.676171875], + [58.5890625000001, 42.778466796874966], + [58.53232421875006, 42.68193359375002], + [58.477148437500006, 42.66284179687503], + [58.353125, 42.67172851562498], + [58.25966796875005, 42.688085937500034], + [58.206445312499994, 42.666308593750045], + [58.15156250000004, 42.628076171874966], + [58.16201171875005, 42.60297851562501], + [58.20410156249997, 42.57636718750001], + [58.288671875, 42.527294921874955], + [58.4181640625001, 42.40668945312498], + [58.476953125, 42.34013671875002], + [58.48583984375003, 42.31684570312498], + [58.474414062500074, 42.29936523437496], + [58.45703125000003, 42.29179687500002], + [58.43144531250002, 42.292089843750006], + [58.39707031250006, 42.29248046875], + [58.3771484375001, 42.31245117187498], + [58.37050781250005, 42.346777343750034], + [58.327246093750006, 42.39892578125], + [58.28291015625004, 42.428857421874966], + [58.23408203125004, 42.44770507812498], + [58.165625, 42.461572265624966], + [58.075488281250074, 42.48652343750001], + [58.02890625, 42.48764648437506], + [57.983496093750006, 42.458789062500045], + [57.945703125, 42.420019531250034], + [57.9234375, 42.335205078125], + [57.85595703125003, 42.231054687500006], + [57.814257812500074, 42.18984375000005], + [57.68613281250006, 42.164794921875], + [57.38173828125005, 42.15629882812496], + [57.290625, 42.123779296875], + [57.228808593750074, 42.08447265624997], + [57.11357421875002, 41.95712890625006], + [57.03369140625003, 41.91484375], + [56.96406250000004, 41.856542968750006], + [56.98486328125003, 41.66933593750005], + [57.01816406250006, 41.450585937499994], + [57.07666015624997, 41.38999023437498], + [57.113867187500006, 41.37177734375001], + [57.11884765625004, 41.35029296874998], + [57.09482421875006, 41.33129882812503], + [57.06425781250002, 41.307275390624994], + [57.01796875, 41.26347656249996], + [56.96582031249997, 41.26513671875003], + [56.86083984374997, 41.27612304687506], + [56.77363281250004, 41.287988281249994], + [56.479882812499994, 41.30063476562498], + [56.24199218750002, 41.31083984375002], + [55.97744140625005, 41.32221679687504], + [55.97734375000002, 41.5517578125], + [55.97714843750006, 41.781347656250034], + [55.97705078124997, 42.010888671874994], + [55.97695312500005, 42.240429687499955], + [55.97685546875002, 42.469970703125], + [55.9767578125001, 42.69951171874996], + [55.97666015625006, 42.929052734375006], + [55.97656250000003, 43.15859375000005], + [55.976464843749994, 43.388085937499994], + [55.97636718750002, 43.617626953124955], + [55.97626953125004, 43.84721679687502], + [55.97617187500006, 44.07675781250006], + [55.97607421875003, 44.30629882812502], + [55.975976562499994, 44.535839843749955], + [55.97578125000004, 44.765380859375], + [55.97568359375006, 44.99492187499996], + [56.10048828125005, 45.02338867187498], + [56.25791015625006, 45.05932617187503], + [56.40917968749997, 45.093798828125045], + [56.58876953125005, 45.13476562500003], + [56.79189453125005, 45.181054687499966], + [56.96503906250004, 45.22060546875002], + [57.171679687500074, 45.26772460937502], + [57.32929687500004, 45.30366210937498], + [57.477343750000074, 45.33745117187502], + [57.6666992187501, 45.37744140625], + [57.961035156250006, 45.439697265625], + [58.1251953125001, 45.47436523437503], + [58.29111328125006, 45.509423828124994], + [58.44941406250004, 45.542919921874955], + [58.555273437500006, 45.55537109375001], + [58.66894531250003, 45.50756835937506], + [58.80703125, 45.441796874999966], + [58.945117187500074, 45.37597656249997], + [59.083398437499994, 45.310205078124994], + [59.22148437500002, 45.24443359374999], + [59.35957031250004, 45.178613281249994], + [59.49785156250002, 45.11284179687502], + [59.6359375000001, 45.04707031250001], + [59.774023437500006, 44.981298828125034], + [59.912207031250006, 44.91557617187496], + [60.05029296874997, 44.849755859374966], + [60.18847656249997, 44.78398437499999], + [60.32666015624997, 44.71821289062498], + [60.464746093749994, 44.652441406250006], + [60.602929687499994, 44.58662109375001], + [60.741113281249994, 44.520849609375034], + [60.879199218750074, 44.45507812500003], + [61.007910156250006, 44.39379882812497], + [61.065332031249994, 44.34838867187497], + [61.09707031250005, 44.24824218749998], + [61.16074218750006, 44.16860351562502], + [61.27148437499997, 44.08227539062503], + [61.38505859375002, 43.99394531249996], + [61.52587890625003, 43.877197265625], + [61.62363281250006, 43.79619140625002], + [61.723242187500006, 43.713574218749955], + [61.887597656249994, 43.57724609374998], + [61.99023437500003, 43.492138671874955] + ], + [ + [70.56875, 40.981835937499966], + [70.62275390625004, 40.93442382812498], + [70.65253906250004, 40.93662109374998], + [70.64921875000002, 40.96083984375005], + [70.6183593750001, 41.00166015625001], + [70.57207031250002, 41.02480468750002], + [70.55, 41.01489257812503], + [70.56875, 40.981835937499966] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 6, + "name": "Vatican", + "iso_a2": "VA", + "iso_a3": "VAT", + "iso_n3": "336", + "continent": "Europe" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [12.439160156250011, 41.898388671875], + [12.430566406250023, 41.89755859375], + [12.427539062500017, 41.900732421875], + [12.430566406250023, 41.90546875], + [12.438378906250023, 41.906201171875], + [12.439160156250011, 41.898388671875] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "St. Vin. and Gren.", + "iso_a2": "VC", + "iso_a3": "VCT", + "iso_n3": "670", + "continent": "North America" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-61.33437, 12.695214843749994], + [-61.34453124999999, 12.69472656249998], + [-61.35351562499997, 12.698144531249966], + [-61.35112304687502, 12.701171875000043], + [-61.339746093749994, 12.703613281250014], + [-61.33442382812498, 12.710205078125028], + [-61.33632812500002, 12.71904296874996], + [-61.335839843749994, 12.728808593749989], + [-61.32680664062494, 12.734814453124969], + [-61.31987304687496, 12.73544921875002], + [-61.31679687499994, 12.731689453125043], + [-61.31484375, 12.722558593749966], + [-61.32011718749999, 12.71552734375004], + [-61.32592773437503, 12.709863281250037], + [-61.32880859374998, 12.70112304687504], + [-61.33437, 12.695214843749994] + ] + ], + [ + [ + [-61.226220703124966, 12.994628906249972], + [-61.24223632812493, 12.98369140624996], + [-61.234716796875006, 12.98369140624996], + [-61.24223632812493, 12.976269531250054], + [-61.24726562499998, 12.983642578125043], + [-61.255224609375006, 12.988183593749994], + [-61.265332031249926, 12.99018554687504], + [-61.276953125, 12.98989257812498], + [-61.276953125, 12.997363281249989], + [-61.26206054687498, 12.992773437500034], + [-61.23935546874998, 12.997265624999969], + [-61.23925781249994, 13.005371093750028], + [-61.24594726562498, 13.012695312500014], + [-61.2490234375, 13.017822265624986], + [-61.24062, 13.025732421875006], + [-61.21284179687498, 13.043261718750017], + [-61.201171875, 13.052539062500045], + [-61.199804687500006, 13.04873046874998], + [-61.19931640624998, 13.04511718750004], + [-61.19794921874998, 13.041699218749969], + [-61.19375, 13.038281249999983], + [-61.20805664062499, 13.024707031249974], + [-61.226220703124966, 12.994628906249972] + ] + ], + [ + [ + [-61.17451171875001, 13.158105468749966], + [-61.20390625, 13.142285156250026], + [-61.27729492187498, 13.209570312499977], + [-61.268457031249966, 13.287695312499991], + [-61.22407226562498, 13.330664062500034], + [-61.18212890624994, 13.355957031250043], + [-61.13896484374996, 13.358740234374991], + [-61.12402343750003, 13.294042968750034], + [-61.13452148437503, 13.202880859375028], + [-61.17451171875001, 13.158105468749966] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Venezuela", + "iso_a2": "VE", + "iso_a3": "VEN", + "iso_n3": "862", + "continent": "South America" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-60.99790039062498, 8.867333984374966], + [-61.05996093750002, 8.847021484375006], + [-61.069189453125034, 8.947314453125003], + [-61.050488281249955, 8.974365234375014], + [-60.94477539062501, 9.05502929687502], + [-60.91582031249996, 9.070312500000014], + [-60.89458007812499, 9.053369140625037], + [-60.89990234375, 9.031884765625009], + [-60.84916992187499, 8.995703125], + [-60.86142578124998, 8.949609375000037], + [-60.91640625, 8.899267578124991], + [-60.99790039062498, 8.867333984374966] + ] + ], + [ + [ + [-60.821191406249966, 9.138378906250026], + [-60.94140625000003, 9.105566406250006], + [-60.93945312499997, 9.132324218750043], + [-60.90727539062499, 9.178710937499986], + [-60.844873046874994, 9.191796875], + [-60.821386718750006, 9.207666015625023], + [-60.78159179687498, 9.218359374999977], + [-60.75888671874998, 9.216455078125037], + [-60.73583984374997, 9.203320312500026], + [-60.79038085937498, 9.17719726562504], + [-60.821191406249966, 9.138378906250026] + ] + ], + [ + [ + [-65.2125, 10.906445312499983], + [-65.26640624999999, 10.883984375000026], + [-65.36523437499994, 10.906445312499983], + [-65.41464843749998, 10.937890625], + [-65.38320312499997, 10.97382812500004], + [-65.30234375000003, 10.97382812500004], + [-65.22656249999994, 10.930224609375031], + [-65.2125, 10.906445312499983] + ] + ], + [ + [ + [-63.84936523437494, 11.131005859374994], + [-63.817285156249994, 11.00034179687502], + [-63.827099609374955, 10.975830078125], + [-63.917626953124994, 10.887548828125048], + [-63.99355468750002, 10.881201171874991], + [-64.05468749999994, 10.884326171875017], + [-64.101171875, 10.901416015625031], + [-64.160888671875, 10.958789062499989], + [-64.21894531249993, 10.94160156250004], + [-64.3625, 10.96152343750002], + [-64.40234375, 10.981591796875023], + [-64.34863281249997, 11.051904296875051], + [-64.249755859375, 11.080322265624972], + [-64.21367187500002, 11.086132812499997], + [-64.184814453125, 11.04296875], + [-64.11279296874997, 11.005664062500045], + [-64.0283203125, 11.00185546874998], + [-64.00732421874997, 11.068457031250048], + [-63.89311523437499, 11.167236328125], + [-63.84936523437494, 11.131005859374994] + ] + ], + [ + [ + [-69.76240234374995, 11.676025390625014], + [-69.71191406249997, 11.564208984375057], + [-69.63159179687494, 11.479931640625026], + [-69.56982421874997, 11.485449218749991], + [-69.52573242187498, 11.499511718750014], + [-69.23256835937502, 11.518457031249966], + [-69.05458984375, 11.461035156249991], + [-68.827978515625, 11.431738281249977], + [-68.61621093749994, 11.309375], + [-68.39863281249995, 11.160986328124977], + [-68.34316406250002, 11.052832031249963], + [-68.3248046875, 10.94931640625002], + [-68.2720703125, 10.880029296875023], + [-68.32470703124997, 10.80874023437498], + [-68.29628906249997, 10.689355468749994], + [-68.23408203124998, 10.569140625000017], + [-68.13994140624999, 10.492724609374989], + [-67.87163085937496, 10.472070312500051], + [-67.58134765624999, 10.523730468750003], + [-67.13330078125, 10.570410156250006], + [-66.98906250000002, 10.610644531250031], + [-66.24721679687497, 10.632226562499994], + [-66.10585937499994, 10.57460937499998], + [-66.09213867187498, 10.517089843749986], + [-66.090478515625, 10.47294921874996], + [-65.85175781249995, 10.257763671874997], + [-65.655859375, 10.228466796874983], + [-65.48935546875, 10.159423828125028], + [-65.31738281249997, 10.122363281250031], + [-65.12910156249998, 10.070068359375043], + [-65.023291015625, 10.076660156250043], + [-64.94404296874995, 10.095019531249974], + [-64.85048828125, 10.098095703124969], + [-64.188330078125, 10.457812499999989], + [-63.833691406249955, 10.44853515624996], + [-63.77905273437503, 10.471923828125014], + [-63.73188476562501, 10.503417968750043], + [-63.862695312499994, 10.558154296875003], + [-64.15791015624993, 10.579248046875037], + [-64.24750976562498, 10.54257812500002], + [-64.298193359375, 10.635156249999966], + [-64.20195312500002, 10.632666015624991], + [-63.873437499999966, 10.663769531250026], + [-63.49677734374998, 10.643261718750011], + [-63.18989257812498, 10.70917968750004], + [-63.03549804687498, 10.720117187500037], + [-62.94672851562501, 10.70708007812496], + [-62.702343749999955, 10.74980468749996], + [-62.242285156250006, 10.699560546875034], + [-61.879492187500006, 10.741015625000031], + [-61.92138671875, 10.681445312499974], + [-62.04042968750002, 10.645361328125006], + [-62.23291015624997, 10.633984375], + [-62.379980468750006, 10.546875], + [-62.693554687499926, 10.56298828125], + [-62.91357421875, 10.531494140624986], + [-62.84296875000001, 10.507226562500009], + [-62.843017578125, 10.417919921875026], + [-62.81293945312501, 10.39990234375], + [-62.78125, 10.399218750000031], + [-62.70629882812497, 10.333056640624974], + [-62.68583984374996, 10.289794921875043], + [-62.66162109375, 10.19858398437502], + [-62.69467773437498, 10.100097656250028], + [-62.740576171875006, 10.056152343750043], + [-62.65117187500002, 10.070654296874977], + [-62.600488281249994, 10.116943359375], + [-62.60791015625, 10.163427734374963], + [-62.600488281249994, 10.217285156250014], + [-62.55034179687499, 10.200439453125043], + [-62.51513671875, 10.176123046874977], + [-62.40092773437502, 9.918408203125054], + [-62.320410156250034, 9.783056640625006], + [-62.2998046875, 9.788183593749991], + [-62.28066406250002, 9.792968749999986], + [-62.25673828124994, 9.818896484375031], + [-62.22114257812498, 9.882568359375028], + [-62.19042968750003, 9.8421875], + [-62.171972656250006, 9.826708984375017], + [-62.15336914062493, 9.821777343749986], + [-62.17031250000002, 9.87949218750002], + [-62.14746093749997, 9.953417968749989], + [-62.15532226562499, 9.979248046875014], + [-62.11962890625, 9.98486328125], + [-62.077099609374926, 9.97504882812504], + [-62.01650390624994, 9.954687499999977], + [-61.90859375, 9.869921875000031], + [-61.837255859375006, 9.782080078124991], + [-61.831152343750006, 9.733056640625037], + [-61.80537109375001, 9.705517578125026], + [-61.75874023437501, 9.676513671874972], + [-61.73593749999998, 9.631201171874977], + [-61.73173828125002, 9.70249023437502], + [-61.759179687499994, 9.754443359375045], + [-61.76591796874996, 9.813818359374963], + [-61.62539062500002, 9.816455078124974], + [-61.58886718749994, 9.894531249999986], + [-61.51230468749998, 9.847509765624991], + [-61.30937, 9.633056640625], + [-61.23442382812496, 9.597607421874969], + [-61.013378906249955, 9.556445312500031], + [-60.87407226562499, 9.453320312499983], + [-60.79248046874997, 9.360742187500037], + [-60.840966796874994, 9.263671874999972], + [-60.971044921875034, 9.215185546875048], + [-61.02314453124998, 9.15458984374996], + [-61.05307617187495, 9.095117187500009], + [-61.05356445312495, 9.035253906249977], + [-61.09296874999998, 8.96577148437504], + [-61.098828124999955, 8.941308593750023], + [-61.12236328124993, 8.843359374999963], + [-61.175878906250006, 8.725390625], + [-61.24726562499998, 8.600341796875014], + [-61.61870117187499, 8.59746093749996], + [-61.52690429687493, 8.546142578124986], + [-61.44257812499998, 8.508691406249994], + [-61.30400390624999, 8.410400390625043], + [-61.19375, 8.48759765624996], + [-61.035986328125034, 8.493115234375026], + [-60.86523437499997, 8.578808593749983], + [-60.800976562499926, 8.592138671875034], + [-60.48149414062493, 8.547265625000037], + [-60.40449218749998, 8.610253906249994], + [-60.34023437499994, 8.628759765625034], + [-60.16748046875, 8.616992187500031], + [-60.01752929687501, 8.549316406250014], + [-59.83164062499998, 8.305957031250003], + [-59.82890625, 8.279150390625048], + [-59.84907226562498, 8.248681640624966], + [-59.96484375000003, 8.191601562499969], + [-59.99072265624997, 8.16201171874998], + [-60.032421874999926, 8.053564453125006], + [-60.178173828124955, 7.994042968750051], + [-60.27890624999998, 7.919433593750028], + [-60.346777343750034, 7.854003906250028], + [-60.380615234375, 7.827636718749986], + [-60.51362304687501, 7.813183593749969], + [-60.55634765625001, 7.772021484375017], + [-60.61010742187494, 7.648339843750051], + [-60.64946289062496, 7.596630859374997], + [-60.71865234374994, 7.535937499999974], + [-60.71923828124997, 7.498681640625023], + [-60.623730468749955, 7.363330078124989], + [-60.606542968750006, 7.320849609375031], + [-60.636181640624926, 7.256591796875], + [-60.63330078124997, 7.211083984374966], + [-60.58320312499998, 7.156201171874969], + [-60.523193359375, 7.143701171875009], + [-60.464941406250034, 7.166552734375045], + [-60.39238281249999, 7.164550781249986], + [-60.34506835937495, 7.15], + [-60.32548828124996, 7.133984374999983], + [-60.32207031249996, 7.092041015625043], + [-60.35209960937496, 7.002880859374997], + [-60.39501953125, 6.945361328125003], + [-60.58608398437502, 6.857080078124966], + [-60.67104492187502, 6.805957031250031], + [-60.717919921874966, 6.768310546875], + [-60.82084960937499, 6.788476562500023], + [-60.87333984375002, 6.786914062499974], + [-60.91357421874994, 6.757812499999986], + [-60.93798828124994, 6.732763671875034], + [-61.007080078125, 6.726611328125031], + [-61.10478515625002, 6.71137695312504], + [-61.14560546874998, 6.694531249999983], + [-61.17724609375003, 6.650927734374974], + [-61.20361328124997, 6.588378906250028], + [-61.181591796874926, 6.513378906250026], + [-61.15102539062502, 6.446533203124986], + [-61.15229492187501, 6.385107421875006], + [-61.12871093749999, 6.214306640625026], + [-61.15947265624996, 6.174414062499977], + [-61.22495117187498, 6.129199218750003], + [-61.303125, 6.049511718750026], + [-61.39082031250001, 5.938769531250017], + [-61.376806640625006, 5.906982421875028], + [-61.167187499999926, 5.674218750000037], + [-60.95400390625002, 5.437402343750023], + [-60.742138671874926, 5.202050781250037], + [-60.71196289062499, 5.191552734375023], + [-60.671972656250034, 5.164355468749989], + [-60.63500976562494, 5.081982421874997], + [-60.60449218749994, 4.99458007812504], + [-60.603857421875006, 4.94936523437498], + [-60.627587890624966, 4.89252929687504], + [-60.67915039062498, 4.827099609375026], + [-60.74174804687493, 4.774121093749983], + [-60.833398437499966, 4.729199218749983], + [-60.90625, 4.68681640624996], + [-60.96640624999998, 4.574707031250028], + [-61.00283203125002, 4.535253906249991], + [-61.036279296874994, 4.519335937500031], + [-61.102441406249966, 4.504687499999974], + [-61.20942382812501, 4.508056640625043], + [-61.28007812500002, 4.516894531249974], + [-61.36752929687498, 4.433007812500037], + [-61.47939453124994, 4.40224609374998], + [-61.55424804687499, 4.287792968750026], + [-61.82084960937496, 4.197021484375], + [-62.08159179687496, 4.126318359374991], + [-62.153125, 4.098388671874986], + [-62.41064453124994, 4.156738281249972], + [-62.47255859374994, 4.138525390624991], + [-62.5439453125, 4.084326171874963], + [-62.60976562500002, 4.042285156250017], + [-62.66533203124996, 4.039648437500006], + [-62.71210937499998, 4.01791992187502], + [-62.73994140624998, 3.940332031250023], + [-62.764599609374926, 3.672949218749991], + [-62.85698242187502, 3.593457031249969], + [-62.96865234374994, 3.593945312499983], + [-63.04531250000002, 3.686474609374997], + [-63.13623046874997, 3.756445312500048], + [-63.29472656249993, 3.92226562499998], + [-63.33867187500002, 3.943896484375045], + [-63.37978515624994, 3.942871093750014], + [-63.526806640624955, 3.893701171875023], + [-63.59663085937498, 3.915039062500028], + [-63.65292968749998, 3.940820312500037], + [-63.746972656249966, 3.93256835937504], + [-63.914648437500006, 3.930664062500014], + [-64.02148437500003, 3.929101562500051], + [-64.07338867187494, 3.974414062500045], + [-64.12172851562502, 4.066992187499977], + [-64.154296875, 4.100146484374989], + [-64.19248046874995, 4.126855468750009], + [-64.25566406249996, 4.140332031249997], + [-64.52553710937494, 4.13999023437502], + [-64.57636718750001, 4.139892578125], + [-64.61367187499997, 4.157714843749986], + [-64.66552734374997, 4.237109375], + [-64.72226562499998, 4.274414062500057], + [-64.788671875, 4.276025390625023], + [-64.81787109375, 4.232275390624991], + [-64.70258789062495, 4.089306640624997], + [-64.66899414062496, 4.01181640625002], + [-64.56791992187496, 3.899804687500023], + [-64.27529296874994, 3.662695312500034], + [-64.22109375000002, 3.587402343749972], + [-64.22705078124997, 3.491210937500014], + [-64.22875976562497, 3.343994140625043], + [-64.21884765625, 3.2046875], + [-64.14355468750003, 3.004882812500057], + [-64.03779296874998, 2.801513671875014], + [-64.00903320312497, 2.67187], + [-64.0287109375, 2.576074218749994], + [-64.048828125, 2.525097656250011], + [-64.04658203124998, 2.502392578124997], + [-64.02490234375, 2.481884765624997], + [-63.924169921875006, 2.452441406250031], + [-63.712548828124966, 2.434033203125011], + [-63.58461914062502, 2.433935546874991], + [-63.389257812500006, 2.411914062500045], + [-63.374853515625006, 2.340429687500048], + [-63.393945312499994, 2.222509765625006], + [-63.43251953124994, 2.155566406250045], + [-63.46391601562493, 2.136035156249974], + [-63.570263671874926, 2.120507812500009], + [-63.68212890625, 2.048144531250003], + [-63.84448242187503, 1.976708984375023], + [-63.937158203124994, 1.966992187499997], + [-63.975781249999955, 1.953027343749994], + [-64.00849609374995, 1.931591796874969], + [-64.03544921874993, 1.904443359375037], + [-64.06704101562497, 1.770507812500014], + [-64.11484375000003, 1.619287109375037], + [-64.20502929687493, 1.52949218750004], + [-64.30419921874997, 1.455273437500011], + [-64.40512695312503, 1.446875], + [-64.48603515624998, 1.452783203125037], + [-64.52626953125002, 1.431005859375048], + [-64.58437, 1.369873046875028], + [-64.66743164062498, 1.293847656249994], + [-64.73154296875, 1.253320312499994], + [-64.81796875, 1.257128906249974], + [-64.91010742187495, 1.219726562499986], + [-65.02656249999998, 1.158447265625028], + [-65.10375976562497, 1.108105468749983], + [-65.16962890624998, 1.022216796874986], + [-65.26396484375002, 0.931884765625057], + [-65.36083984374994, 0.868652343750057], + [-65.40722656249997, 0.790478515625026], + [-65.47338867187497, 0.691259765624977], + [-65.55605468750002, 0.687988281250014], + [-65.56269531249995, 0.747509765624969], + [-65.52299804687493, 0.843408203124966], + [-65.566015625, 0.926074218750031], + [-65.64467773437497, 0.970361328124994], + [-65.68144531249999, 0.983447265624989], + [-65.718115234375, 0.978027343750043], + [-65.81132812499999, 0.937255859375], + [-65.92587890624995, 0.863134765624991], + [-65.996337890625, 0.80976562500004], + [-66.06005859375003, 0.78535156250004], + [-66.19121093750002, 0.76328125], + [-66.30166015624994, 0.751953124999986], + [-66.34711914062498, 0.7671875], + [-66.42924804687502, 0.82167968749998], + [-66.61904296874994, 0.992138671874983], + [-66.87602539062499, 1.223046875000037], + [-66.89550781249997, 1.289892578124977], + [-66.88447265624993, 1.358251953124963], + [-66.93110351562493, 1.458007812500043], + [-66.95834960937498, 1.564208984375], + [-66.98154296875, 1.60078125], + [-66.988134765625, 1.68017578125], + [-67.04389648437498, 1.823193359375011], + [-67.08955078124998, 1.94033203124998], + [-67.13144531249998, 1.99985351562502], + [-67.11381835937493, 2.050585937499974], + [-67.13144531249998, 2.101269531249997], + [-67.16547851562498, 2.142578124999972], + [-67.215234375, 2.275488281250048], + [-67.19760742187495, 2.332763671874986], + [-67.21083984375, 2.390136718750043], + [-67.25273437499999, 2.429443359374972], + [-67.31225585937494, 2.471679687500043], + [-67.39160156249994, 2.559912109374991], + [-67.48642578125, 2.643652343750006], + [-67.53496093749993, 2.6767578125], + [-67.56801757812502, 2.689941406250014], + [-67.5966796875, 2.769335937500031], + [-67.61870117187496, 2.793603515624994], + [-67.66723632812497, 2.800195312500009], + [-67.76645507812503, 2.833300781250003], + [-67.85908203124998, 2.793603515624994], + [-67.86123046874997, 2.855322265625048], + [-67.83476562499999, 2.892822265625043], + [-67.51484374999993, 3.187255859374986], + [-67.35361328125003, 3.322656250000037], + [-67.33627929687498, 3.34262695312502], + [-67.32216796875002, 3.373974609375011], + [-67.3111328125, 3.41586914062502], + [-67.34770507812499, 3.463769531250009], + [-67.49868164062502, 3.691113281249969], + [-67.55112304687503, 3.733837890624969], + [-67.60253906250003, 3.768798828124986], + [-67.66162109375, 3.864257812499986], + [-67.73232421875, 4.086523437499963], + [-67.78320312499997, 4.198242187499986], + [-67.79863281250002, 4.283886718750026], + [-67.79541015624997, 4.380712890625034], + [-67.814306640625, 4.455078125], + [-67.85527343750002, 4.506884765624989], + [-67.85527343750002, 4.665478515625054], + [-67.814306640625, 4.930810546875023], + [-67.80419921875, 5.132519531249983], + [-67.82490234374995, 5.270458984375026], + [-67.78842773437498, 5.375488281250014], + [-67.69462890624996, 5.447509765625028], + [-67.64228515624995, 5.558789062499969], + [-67.63134765624994, 5.709375], + [-67.57519531249997, 5.833105468749991], + [-67.47387695312503, 5.929980468750003], + [-67.43935546875, 6.025537109375023], + [-67.47158203125, 6.119775390625037], + [-67.48198242187499, 6.18027343750002], + [-67.56806640624993, 6.24179687500002], + [-67.7271484375, 6.284960937500031], + [-67.85917968749999, 6.289892578124963], + [-67.9388671875, 6.241943359375057], + [-68.14306640625003, 6.197509765624972], + [-68.47177734375, 6.156542968749974], + [-68.73647460937494, 6.156787109375031], + [-68.93720703124998, 6.198193359375026], + [-69.08994140625, 6.184375], + [-69.19453125000001, 6.11533203125002], + [-69.26816406249998, 6.099707031250034], + [-69.31083984374999, 6.137597656250023], + [-69.357080078125, 6.147998046875017], + [-69.42714843749997, 6.123974609374997], + [-69.43925781249993, 6.134912109375009], + [-69.59482421875, 6.321484375000011], + [-69.73896484374998, 6.494384765624972], + [-69.90419921875, 6.700244140624989], + [-70.09501953124996, 6.937939453125011], + [-70.12919921874999, 6.95361328125], + [-70.188134765625, 6.952050781250037], + [-70.26611328125, 6.947949218749997], + [-70.3875, 6.972607421875054], + [-70.47065429687501, 7.007128906249974], + [-70.535546875, 7.040527343750028], + [-70.65507812500002, 7.082763671875028], + [-70.73715820312503, 7.090039062499997], + [-70.810693359375, 7.07758789062504], + [-71.01328124999998, 6.994433593749974], + [-71.12861328124993, 6.98671875], + [-71.21782226562499, 6.985205078125048], + [-71.45712890624998, 7.026367187499986], + [-71.62089843749996, 7.032910156249997], + [-71.81127929687503, 7.005810546874983], + [-71.89267578124998, 6.99033203125002], + [-72.00664062499993, 7.032617187500023], + [-72.08427734374993, 7.09687], + [-72.15668945312495, 7.249707031250011], + [-72.20771484374995, 7.37026367187498], + [-72.29633789062498, 7.394531250000028], + [-72.39462890625003, 7.41508789062496], + [-72.44296875, 7.454882812499989], + [-72.47197265624996, 7.524267578124991], + [-72.47895507812498, 7.613232421874997], + [-72.46889648437497, 7.757958984374994], + [-72.4595703125, 7.809863281250003], + [-72.44604492187503, 7.966113281250045], + [-72.39169921874995, 8.047705078124963], + [-72.35761718749995, 8.087304687500037], + [-72.36416015624994, 8.152783203124969], + [-72.39033203124995, 8.287060546874969], + [-72.41655273437496, 8.381982421875037], + [-72.525732421875, 8.48969726562504], + [-72.66542968749994, 8.62758789062498], + [-72.72553710937493, 8.848291015624994], + [-72.79638671874997, 9.108984375], + [-72.85209960937496, 9.13515625], + [-72.90444335937497, 9.1220703125], + [-72.96015624999995, 9.13515625], + [-73.00927734375, 9.239941406250026], + [-73.05839843749999, 9.259570312500031], + [-73.13671874999994, 9.222802734374994], + [-73.19316406249999, 9.194140625000017], + [-73.33671875000002, 9.167919921875011], + [-73.36621093749997, 9.194140625000017], + [-73.35634765625002, 9.226855468750031], + [-73.295654296875, 9.322021484375057], + [-73.22426757812502, 9.443603515625043], + [-73.141259765625, 9.554638671875011], + [-73.06406249999998, 9.668212890624972], + [-73.00654296874998, 9.789160156250006], + [-72.9673828125, 10.029736328124997], + [-72.94038085937501, 10.195751953124969], + [-72.86933593750001, 10.49125976562496], + [-72.73916015624997, 10.72719726562498], + [-72.690087890625, 10.835839843749994], + [-72.57226562499997, 10.977148437500006], + [-72.51801757812493, 11.053906250000011], + [-72.44609374999993, 11.114257812500043], + [-72.24848632812501, 11.196435546875009], + [-72.01230468750003, 11.601953125000023], + [-71.95810546875, 11.66640625], + [-71.71948242187497, 11.726855468749974], + [-71.53608398437498, 11.774072265624994], + [-71.40019531249993, 11.823535156250045], + [-71.35556640624998, 11.849755859374966], + [-71.31972656249997, 11.861914062500048], + [-71.34941406249999, 11.814941406249972], + [-71.41455078125003, 11.755175781249974], + [-71.48837890624995, 11.71875], + [-71.86865234374997, 11.627343750000037], + [-71.90751953124999, 11.607958984375003], + [-71.95693359375002, 11.569921874999977], + [-71.95722656249998, 11.4828125], + [-71.94697265624995, 11.414453125], + [-71.835107421875, 11.190332031250009], + [-71.79145507812498, 11.135058593750017], + [-71.6416015625, 11.013525390625048], + [-71.67568359375002, 10.996728515624994], + [-71.73090820312498, 10.994677734375017], + [-71.6904296875, 10.835498046875017], + [-71.59843749999999, 10.726220703125037], + [-71.59433593749995, 10.657373046875051], + [-71.66484374999993, 10.44375], + [-71.79350585937496, 10.315966796875045], + [-71.88476562499997, 10.167236328125028], + [-71.95571289062497, 10.108056640625051], + [-72.11284179687499, 9.815576171874966], + [-71.99326171874998, 9.641503906250037], + [-71.97626953124995, 9.553222656249986], + [-71.873046875, 9.42763671874998], + [-71.80566406250003, 9.386425781250026], + [-71.76074218750003, 9.335742187500003], + [-71.78134765624995, 9.25], + [-71.74013671875, 9.133886718750006], + [-71.68671874999995, 9.072509765625028], + [-71.61953124999994, 9.047949218749991], + [-71.53662109375003, 9.048291015624969], + [-71.29794921874998, 9.125634765625009], + [-71.24140625000001, 9.160449218750003], + [-71.20537109374993, 9.222460937500017], + [-71.08583984375002, 9.348242187499977], + [-71.07841796875002, 9.51079101562496], + [-71.05268554687501, 9.705810546874986], + [-71.08173828124998, 9.833203125000011], + [-71.20722656249995, 10.014599609375011], + [-71.26220703124997, 10.143603515625003], + [-71.38662109375002, 10.263769531249977], + [-71.46279296875, 10.46923828125], + [-71.49423828125, 10.533203124999972], + [-71.51787109375002, 10.621826171875], + [-71.54462890624995, 10.778710937499994], + [-71.46113281250001, 10.83564453125004], + [-71.46953124999993, 10.964160156250017], + [-71.26435546874998, 10.999511718750028], + [-70.82050781249995, 11.208447265625054], + [-70.54560546875001, 11.261376953124994], + [-70.23251953124998, 11.372998046874997], + [-70.15996093749996, 11.428076171875034], + [-70.09711914062493, 11.519775390624972], + [-70.04853515624998, 11.530322265624989], + [-69.88535156249995, 11.444335937499972], + [-69.80478515624998, 11.47421875000002], + [-69.77290039062495, 11.541308593750003], + [-69.81733398437495, 11.672070312499997], + [-69.91093749999993, 11.672119140625014], + [-70.19257812499993, 11.62460937500002], + [-70.22011718749994, 11.680859375000011], + [-70.22001953125002, 11.730078125], + [-70.28652343749997, 11.886035156249989], + [-70.24511718749997, 12.00351562500002], + [-70.20278320312497, 12.098388671874986], + [-70.12202148437495, 12.136621093749966], + [-70.00395507812496, 12.177880859375023], + [-69.91435546875002, 12.114599609375006], + [-69.86010742187497, 12.054199218750043], + [-69.83061523437499, 11.995605468750014], + [-69.810546875, 11.836865234374997], + [-69.76240234374995, 11.676025390625014] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "British Virgin Is.", + "iso_a2": "VG", + "iso_a3": "VGB", + "iso_n3": "092", + "continent": "North America" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-64.59365234374997, 18.40283203124997], + [-64.67182617187501, 18.39912109375001], + [-64.69511718749996, 18.411669921875017], + [-64.6509765625, 18.442529296874994], + [-64.56914062499996, 18.44628906250003], + [-64.54516601562494, 18.438134765624966], + [-64.59365234374997, 18.40283203124997] + ] + ], + [ + [ + [-64.39521484374995, 18.46459960937503], + [-64.421142578125, 18.457421875], + [-64.43803710937499, 18.458984375000057], + [-64.44375, 18.473388671875057], + [-64.42607421874993, 18.513085937499966], + [-64.32465820312498, 18.517480468749966], + [-64.39521484374995, 18.46459960937503] + ] + ], + [ + [ + [-64.28789062499993, 18.740576171875034], + [-64.27358398437497, 18.707128906249977], + [-64.28232421874995, 18.70771484375001], + [-64.33945312499998, 18.730712890625], + [-64.38339843750003, 18.73261718750001], + [-64.40146484374998, 18.73857421874999], + [-64.41142578124996, 18.751171874999983], + [-64.323095703125, 18.75268554687503], + [-64.28789062499993, 18.740576171875034] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "U.S. Virgin Is.", + "iso_a2": "VI", + "iso_a3": "VIR", + "iso_n3": "850", + "continent": "North America" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-64.765625, 17.794335937499994], + [-64.68183593749998, 17.750195312499983], + [-64.58046874999994, 17.750195312499983], + [-64.686279296875, 17.706103515625045], + [-64.88911132812495, 17.701708984375045], + [-64.88471679687493, 17.772265625000045], + [-64.765625, 17.794335937499994] + ] + ], + [ + [ + [-64.65981445312494, 18.354345703125063], + [-64.72597656250002, 18.327880859375], + [-64.77060546874995, 18.331591796875045], + [-64.78769531249998, 18.341113281250017], + [-64.75244140625, 18.371972656249994], + [-64.65981445312494, 18.354345703125063] + ] + ], + [ + [ + [-64.84501953124993, 18.330078125], + [-64.91997070312502, 18.32128906249997], + [-65.02363281249998, 18.367578125], + [-64.942041015625, 18.38520507812504], + [-64.88911132812495, 18.37421875000001], + [-64.84501953124993, 18.330078125] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Vietnam", + "iso_a2": "VN", + "iso_a3": "VNM", + "iso_n3": "704", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [106.61748046875007, 8.68281250000004], + [106.5892578125, 8.680517578125006], + [106.56796875000006, 8.700927734375], + [106.65859375, 8.766357421875], + [106.64951171875006, 8.722998046874963], + [106.6525390625001, 8.70112304687504], + [106.61748046875007, 8.68281250000004] + ] + ], + [ + [ + [104.06396484375003, 10.390820312500011], + [104.08300781250003, 10.341113281250017], + [104.07578125000006, 10.224853515625043], + [104.0368164062501, 10.11074218749998], + [104.04833984374997, 10.061035156249972], + [104.01845703125, 10.029199218749966], + [103.95214843749997, 10.242919921874986], + [103.86796875000007, 10.335400390624997], + [103.84951171875005, 10.371093749999986], + [103.89843749999997, 10.368505859374991], + [103.98583984375003, 10.426953125], + [104.02773437500005, 10.428369140625023], + [104.06396484375003, 10.390820312500011] + ] + ], + [ + [ + [107.16767578125004, 10.397167968749969], + [107.08378906250002, 10.33657226562498], + [107.07792968750007, 10.3875], + [107.15087890625003, 10.4203125], + [107.17656250000007, 10.446191406250009], + [107.19492187500012, 10.445703125], + [107.16767578125004, 10.397167968749969] + ] + ], + [ + [ + [107.03134765625006, 20.747021484374983], + [106.99003906250002, 20.743066406249966], + [106.91064453124997, 20.82421875], + [106.95341796875002, 20.867041015625006], + [107.04375, 20.836816406249966], + [107.06445312499997, 20.817285156249994], + [107.06396484374997, 20.799755859374983], + [107.04228515625007, 20.76103515624999], + [107.03134765625006, 20.747021484374983] + ] + ], + [ + [ + [106.865625, 20.815722656250045], + [106.85410156250012, 20.79638671875], + [106.803125, 20.84375], + [106.76943359375, 20.864208984374955], + [106.79531250000005, 20.927929687499983], + [106.85507812500006, 20.858251953125006], + [106.865625, 20.815722656250045] + ] + ], + [ + [ + [107.52128906250007, 20.926611328124977], + [107.46552734375004, 20.900537109374994], + [107.39921875000007, 20.903466796874966], + [107.47861328125006, 20.952343749999983], + [107.51894531250005, 21.01284179687505], + [107.55126953125003, 21.034033203125006], + [107.55107421875002, 20.981201171875], + [107.52128906250007, 20.926611328124977] + ] + ], + [ + [ + [107.60273437500004, 21.21679687500003], + [107.4586914062501, 21.091650390625034], + [107.40351562500004, 21.093652343749994], + [107.4525390625, 21.235302734374983], + [107.47626953125004, 21.268945312499994], + [107.56269531250004, 21.220410156249955], + [107.60273437500004, 21.21679687500003] + ] + ], + [ + [ + [105.78232421875006, 22.969335937500034], + [105.8429687500001, 22.922802734374955], + [105.90263671875007, 22.92495117187505], + [105.9623046875, 22.93745117187501], + [106.00097656250003, 22.974755859374966], + [106.06845703125012, 22.975537109374955], + [106.14843749999997, 22.970068359375006], + [106.183984375, 22.955126953125045], + [106.24941406250005, 22.869433593750017], + [106.2790039062501, 22.857470703125045], + [106.33808593750004, 22.86347656250004], + [106.45087890625004, 22.893896484375006], + [106.54179687500007, 22.908349609375023], + [106.62402343749997, 22.87426757812503], + [106.78027343749997, 22.778906250000034], + [106.73632812500003, 22.710937500000057], + [106.70156250000005, 22.637744140625045], + [106.63310546875002, 22.586035156250006], + [106.582421875, 22.57324218749997], + [106.55039062500006, 22.501367187499994], + [106.53632812500004, 22.395410156249994], + [106.55361328125, 22.341699218749966], + [106.5931640625, 22.324511718750017], + [106.63652343750002, 22.28862304687499], + [106.65419921875, 22.24145507812497], + [106.66005859375, 22.136474609375], + [106.65771484374997, 22.018212890624966], + [106.66357421875003, 21.97890625000005], + [106.69765625000005, 21.986181640625006], + [106.72949218749997, 22.000341796875063], + [106.79414062500004, 21.981982421875045], + [106.87451171875003, 21.951269531250006], + [106.92519531250005, 21.920117187499955], + [106.97099609375002, 21.923925781250034], + [107.00644531250006, 21.893408203125034], + [107.01982421875002, 21.834863281249994], + [107.06162109375012, 21.79418945312497], + [107.17851562500002, 21.71708984374999], + [107.27207031250006, 21.71064453125001], + [107.35117187500012, 21.60888671874997], + [107.43349609375005, 21.64228515625004], + [107.4713867187501, 21.598339843749955], + [107.64101562500005, 21.613916015625023], + [107.75927734374997, 21.655029296875057], + [107.80205078125007, 21.645166015624994], + [107.90839843750004, 21.560400390625034], + [107.97265624999997, 21.507958984375023], + [107.92578124999997, 21.49892578125005], + [107.80908203124997, 21.497119140625017], + [107.7072265625001, 21.405859375], + [107.63671875000003, 21.368066406250023], + [107.52695312500006, 21.336230468750017], + [107.40996093750002, 21.284814453125023], + [107.3761718750001, 21.194140625000045], + [107.37333984375002, 21.128466796875074], + [107.35429687500007, 21.055175781250057], + [107.1647460937501, 20.94873046875003], + [107.11171875, 20.959570312500034], + [107.07519531250003, 20.99926757812503], + [107.0192382812501, 20.9912109375], + [106.98144531250003, 20.97138671875004], + [106.93642578125, 20.974072265624955], + [106.88623046874997, 20.95], + [106.82060546875002, 20.957519531250057], + [106.76025390625003, 20.991113281249966], + [106.72519531250006, 20.999902343749994], + [106.68339843750007, 21.000292968750074], + [106.67548828125004, 20.960498046875045], + [106.73730468750003, 20.80615234375003], + [106.75341796875003, 20.73505859375004], + [106.55078124999997, 20.52656250000001], + [106.57285156250012, 20.392187499999977], + [106.51796875000005, 20.28886718749999], + [106.39550781250003, 20.205908203125063], + [106.16572265625004, 19.992041015625006], + [106.0622070312501, 19.987353515625017], + [105.98408203125004, 19.939062500000034], + [105.81396484374997, 19.58745117187499], + [105.81210937500012, 19.466992187499983], + [105.7853515625001, 19.378857421874955], + [105.79111328125012, 19.29418945312503], + [105.71640625000006, 19.127783203125063], + [105.63906250000005, 19.057177734375074], + [105.62177734375004, 18.96630859375003], + [105.73203125000006, 18.77929687500003], + [105.74423828125006, 18.746289062499955], + [105.80820312500012, 18.645849609375006], + [105.83925781250005, 18.574169921874983], + [105.88828125000006, 18.502490234375045], + [106.065625, 18.31635742187504], + [106.14453124999997, 18.259423828124994], + [106.23955078125007, 18.220703125], + [106.41191406250002, 18.053173828124983], + [106.49902343749997, 17.946435546874994], + [106.459375, 17.873681640624994], + [106.47890625000005, 17.719580078125063], + [106.35585937500005, 17.765039062499994], + [106.3705078125, 17.746875], + [106.51679687500004, 17.66279296875004], + [106.7357421875, 17.36718750000003], + [106.92617187500005, 17.221386718749983], + [107.11992187500002, 17.055517578125034], + [107.18037109375004, 16.89794921875], + [107.35507812500012, 16.79375], + [107.54931640624997, 16.64257812500003], + [107.54082031250002, 16.60864257812503], + [107.5934570312501, 16.56806640625001], + [107.72412109374997, 16.487841796875017], + [107.803125, 16.40307617187497], + [107.83378906250002, 16.322460937499983], + [107.8820312500001, 16.309619140625045], + [107.93632812500007, 16.329394531250074], + [107.99072265625003, 16.337109374999955], + [108.02939453125012, 16.331103515625074], + [108.08798828125006, 16.24272460937499], + [108.16972656250002, 16.163671875000063], + [108.20898437500003, 16.091064453125], + [108.24082031250012, 16.10078125000004], + [108.26738281250002, 16.08979492187501], + [108.27402343750012, 16.029052734375], + [108.28603515625, 15.989062500000017], + [108.39531250000002, 15.872460937499966], + [108.4474609375001, 15.7626953125], + [108.5778320312501, 15.584716796874972], + [108.67421875, 15.483593749999983], + [108.74277343750012, 15.426611328125006], + [108.82128906249997, 15.377929687500028], + [108.89824218750002, 15.180517578124963], + [108.93994140624997, 15.001464843749986], + [109.02246093749997, 14.80283203125002], + [109.08486328125, 14.716162109375034], + [109.08701171875012, 14.55258789062502], + [109.13730468750012, 14.384130859374991], + [109.19140624999997, 14.270458984375011], + [109.20732421875002, 14.154296874999972], + [109.22392578125002, 14.096679687500043], + [109.24462890624997, 14.053417968750026], + [109.30332031250012, 13.856445312500043], + [109.28808593750003, 13.76503906249998], + [109.24707031250003, 13.854736328125043], + [109.25205078125006, 13.59052734375004], + [109.28808593750003, 13.45078125], + [109.271875, 13.279345703124974], + [109.30957031249997, 13.219189453124983], + [109.37675781250007, 13.025488281250034], + [109.42392578125006, 12.955957031249994], + [109.42001953125006, 12.71904296874996], + [109.44492187500006, 12.599609375000057], + [109.38144531250012, 12.670751953124977], + [109.33554687500012, 12.751904296874997], + [109.27402343750006, 12.70903320312496], + [109.21894531250004, 12.64580078124996], + [109.30468750000003, 12.391162109375045], + [109.20683593750007, 12.415380859375006], + [109.21572265625005, 12.072900390625037], + [109.25625, 11.992871093749983], + [109.2591796875, 11.954541015624997], + [109.24726562500004, 11.908691406249986], + [109.22021484374997, 11.958837890624977], + [109.21455078125004, 12.010449218750011], + [109.19912109375, 11.9990234375], + [109.1999023437501, 11.972460937500003], + [109.16728515625002, 11.912011718750037], + [109.15751953125007, 11.837109375000054], + [109.19267578125002, 11.773437500000043], + [109.1986328125, 11.724853515625014], + [109.1732421875, 11.664746093750026], + [109.13251953125004, 11.601074218750014], + [109.03964843750012, 11.592675781249994], + [109.01845703125, 11.468359374999977], + [108.98671875, 11.336376953124997], + [108.82080078125003, 11.3154296875], + [108.70029296875006, 11.19926757812496], + [108.55126953125003, 11.155957031250011], + [108.41855468750006, 11.040722656249983], + [108.2716796875001, 10.934277343749969], + [108.176171875, 10.920166015625028], + [108.09492187500004, 10.897265624999989], + [108.0013671875, 10.720361328125009], + [107.84511718750005, 10.700097656250051], + [107.56445312499997, 10.555468749999989], + [107.47031250000006, 10.485839843750014], + [107.3844726562501, 10.45864257812498], + [107.26152343750007, 10.39838867187504], + [107.2350585937501, 10.419873046874983], + [107.19414062500002, 10.471582031250037], + [107.08779296875005, 10.498339843749974], + [107.03574218750006, 10.55629882812498], + [107.02070312500004, 10.630957031249991], + [107.00664062500002, 10.66054687499998], + [106.98369140625007, 10.618310546874994], + [106.96611328125002, 10.44072265624996], + [106.94746093750004, 10.400341796874997], + [106.90205078125004, 10.382812499999986], + [106.81269531250004, 10.433300781250054], + [106.72734375000007, 10.535644531250028], + [106.605859375, 10.46494140625002], + [106.64306640625003, 10.45625], + [106.69843750000004, 10.462060546875051], + [106.74121093750003, 10.444384765625003], + [106.77753906250004, 10.376123046875037], + [106.77626953125, 10.33896484375002], + [106.75742187500006, 10.295800781250023], + [106.64355468750003, 10.288916015625034], + [106.49169921875003, 10.304101562500023], + [106.46406250000004, 10.298291015624997], + [106.60244140625, 10.231738281250017], + [106.72900390625003, 10.193310546875011], + [106.78525390625012, 10.151171875000045], + [106.78525390625012, 10.116455078124986], + [106.71416015625002, 10.06020507812498], + [106.65917968750003, 9.99140625], + [106.65810546875, 9.948730468750014], + [106.65683593750006, 9.901074218749983], + [106.59560546875005, 9.859863281250028], + [106.55732421875004, 9.868066406250009], + [106.44912109375005, 9.939648437500026], + [106.1364257812501, 10.221679687500014], + [106.18359375000003, 10.142089843750057], + [106.50742187500012, 9.821240234374969], + [106.56435546875005, 9.715625], + [106.57246093750004, 9.641113281250043], + [106.53916015625006, 9.603564453125031], + [106.48408203125004, 9.559423828125006], + [106.37802734375012, 9.55610351562504], + [106.20400390625, 9.675439453125023], + [105.92568359375, 9.961718749999989], + [105.83095703125005, 10.000732421875028], + [106.1125, 9.673583984375], + [106.15859375, 9.59414062499998], + [106.20615234375012, 9.502343750000023], + [106.1925781250001, 9.447802734375003], + [106.16835937500005, 9.396728515625], + [105.50097656249997, 9.093212890624983], + [105.40136718750003, 8.962402343749972], + [105.32226562499997, 8.801123046874977], + [105.19121093750002, 8.71132812499998], + [105.11435546875006, 8.629199218750031], + [104.89189453125002, 8.583251953125], + [104.77041015625, 8.59765625], + [104.89628906250007, 8.746630859374974], + [104.81855468750004, 8.801855468750034], + [104.81464843750004, 9.18549804687504], + [104.84521484375003, 9.606152343750026], + [104.90322265625005, 9.81625976562502], + [104.98710937500007, 9.868652343750043], + [105.09257812500007, 9.900976562499963], + [105.0949218750001, 9.945263671875011], + [105.08447265625003, 9.995703125], + [105.02783203125003, 10.067431640625031], + [104.96582031250003, 10.100585937500043], + [104.87324218750004, 10.114794921875003], + [104.8019531250001, 10.202734374999977], + [104.74765625000006, 10.199121093750037], + [104.66347656250005, 10.169921875000043], + [104.6126953125, 10.207666015625009], + [104.59404296875002, 10.266894531249989], + [104.51611328124997, 10.339990234375051], + [104.42636718750006, 10.411230468749991], + [104.4669921875001, 10.422363281250043], + [104.5140625, 10.46333007812504], + [104.56425781250007, 10.51596679687502], + [104.68964843750004, 10.523242187499989], + [104.81542968750003, 10.520800781250031], + [104.85058593749997, 10.534472656249974], + [104.90126953125, 10.590234375000051], + [104.98388671874997, 10.661914062500003], + [105.04638671874997, 10.701660156250014], + [105.06113281250006, 10.73378906249998], + [105.03613281250003, 10.809375], + [105.02226562500002, 10.886865234374994], + [105.04570312500002, 10.911376953125014], + [105.15947265625002, 10.897558593750048], + [105.28427734375006, 10.86147460937498], + [105.3146484375001, 10.845166015625026], + [105.38652343750002, 10.940087890625009], + [105.40576171875003, 10.95161132812504], + [105.45273437500006, 10.951416015625], + [105.5765625, 10.968896484375009], + [105.69775390624997, 10.99404296874998], + [105.75507812500004, 10.989990234375043], + [105.8107421875001, 10.926074218749989], + [105.85332031250007, 10.86357421874996], + [105.8751953125001, 10.858496093749991], + [105.93818359375004, 10.88515625], + [105.99013671875005, 10.851806640625043], + [106.0988281250001, 10.797265625000037], + [106.16396484375005, 10.794921875], + [106.1315429687501, 10.921972656250048], + [106.16796874999997, 11.012304687499977], + [106.16093750000002, 11.037109375000057], + [106.09951171875005, 11.078662109374989], + [105.89160156249997, 11.244824218749997], + [105.85605468750006, 11.294287109375048], + [105.86093750000012, 11.372412109374977], + [105.85400390625003, 11.487060546874972], + [105.83535156250005, 11.559130859375003], + [105.83847656250006, 11.601318359374972], + [105.85146484375005, 11.635009765625], + [105.88984375000004, 11.648388671874969], + [105.92656250000007, 11.652929687500006], + [105.95625, 11.682470703124991], + [106.0060546875001, 11.758007812500011], + [106.10292968750005, 11.751269531249974], + [106.23916015625, 11.70834960937502], + [106.33984374999997, 11.68183593750004], + [106.39921875000007, 11.687011718750028], + [106.4125, 11.697802734375003], + [106.41074218750012, 11.738378906250006], + [106.41777343750002, 11.911718749999977], + [106.41386718750002, 11.9484375], + [106.49960937500012, 11.965527343750011], + [106.63095703125012, 11.969189453125054], + [106.70009765625, 11.979296874999974], + [106.76464843750003, 12.05234375000002], + [106.93066406249997, 12.077490234374991], + [107.05068359375, 12.175878906249963], + [107.15898437500007, 12.277050781249969], + [107.21210937500004, 12.30400390624996], + [107.27968750000005, 12.321582031249989], + [107.33007812500003, 12.319042968749997], + [107.39335937500002, 12.260498046874972], + [107.4459960937501, 12.295703125000045], + [107.50644531250006, 12.364550781250031], + [107.53808593750003, 12.431787109374966], + [107.55546875000002, 12.539990234374983], + [107.54355468750006, 12.705908203125034], + [107.51152343750002, 12.835742187500017], + [107.48154296875006, 12.933105468750043], + [107.47539062500002, 13.030371093749963], + [107.54550781250012, 13.225439453125006], + [107.60546874999997, 13.437792968750017], + [107.59394531250004, 13.521679687500054], + [107.52861328125002, 13.654199218750051], + [107.46230468750005, 13.81562], + [107.38945312500002, 13.993017578124977], + [107.36210937500007, 14.01948242187504], + [107.34257812500007, 14.068896484374974], + [107.3314453125, 14.126611328125009], + [107.36035156249997, 14.307861328124986], + [107.3644531250001, 14.368701171875045], + [107.44843750000004, 14.451220703124974], + [107.49316406250003, 14.545751953124963], + [107.53525390625006, 14.649951171875045], + [107.51943359375005, 14.705078125], + [107.51376953125012, 14.817382812500057], + [107.52451171875012, 14.871826171875043], + [107.50468750000007, 14.915917968749966], + [107.48037109375, 14.979882812500037], + [107.49628906250004, 15.021435546874969], + [107.55527343750006, 15.057031250000023], + [107.58964843750002, 15.118457031250017], + [107.63369140625005, 15.18984375], + [107.653125, 15.255224609374991], + [107.62167968750006, 15.309863281250017], + [107.56425781250002, 15.391601562499972], + [107.45957031250012, 15.4658203125], + [107.33876953125, 15.560498046875011], + [107.27939453125006, 15.618701171875045], + [107.23261718750004, 15.678076171874977], + [107.18955078125006, 15.747265624999955], + [107.16591796875005, 15.802490234375028], + [107.1888671875, 15.838623046875], + [107.36064453125002, 15.921728515624977], + [107.3919921875, 15.951660156250028], + [107.41015624999997, 15.997851562500017], + [107.39638671875, 16.04301757812499], + [107.35009765624997, 16.06738281249997], + [107.29648437500006, 16.08403320312499], + [107.21738281250006, 16.136328125], + [107.0697265625, 16.279833984375017], + [107.00195312500003, 16.311816406250045], + [106.93066406249997, 16.353125], + [106.8927734375001, 16.396533203125074], + [106.85107421875003, 16.515625], + [106.83242187500005, 16.526269531250023], + [106.79160156250006, 16.490332031250006], + [106.73955078125007, 16.452539062500023], + [106.69609375000007, 16.458984375], + [106.6564453125001, 16.49262695312501], + [106.6375, 16.537939453125006], + [106.59365234375, 16.60009765624997], + [106.54619140625002, 16.650732421874977], + [106.53369140625003, 16.821044921875057], + [106.52597656250006, 16.876611328124994], + [106.50224609375002, 16.95410156249997], + [106.46533203124997, 16.981835937500023], + [106.42597656250004, 17.002539062499977], + [106.3333984375, 17.143701171874966], + [106.26953125000003, 17.21679687500003], + [106.00625, 17.415283203125057], + [105.97353515625005, 17.44697265625001], + [105.902734375, 17.528662109375063], + [105.77949218750004, 17.644433593750023], + [105.69140625000003, 17.737841796875045], + [105.62724609375002, 17.83442382812501], + [105.59765625000003, 17.918261718750017], + [105.58847656250012, 17.983691406250045], + [105.51855468749997, 18.077441406250045], + [105.45820312500004, 18.15429687499997], + [105.4, 18.17924804687499], + [105.33349609375003, 18.189648437499983], + [105.27324218750002, 18.235351562500057], + [105.1632812500001, 18.338720703124977], + [105.11455078125002, 18.40527343750003], + [105.08583984375005, 18.450097656250023], + [105.08701171875006, 18.496240234374994], + [105.11347656250004, 18.573046875000017], + [105.14541015625, 18.616796875000063], + [105.14648437500003, 18.650976562500006], + [105.11513671875005, 18.678857421874994], + [104.99316406249997, 18.728320312500045], + [104.7165039062501, 18.803417968749955], + [104.61328125000003, 18.86064453124999], + [104.51796875, 18.93408203125003], + [104.44580078125003, 18.983837890624955], + [104.10859375000004, 19.195556640625], + [104.00634765625003, 19.23090820312501], + [103.91835937500005, 19.26850585937504], + [103.89160156250003, 19.304980468750017], + [103.89638671875, 19.339990234375023], + [103.93203125, 19.366064453125006], + [104.0275390625001, 19.42045898437499], + [104.062890625, 19.48256835937505], + [104.05156250000007, 19.564160156249955], + [104.01347656250007, 19.64648437500003], + [104.03203125000002, 19.675146484375006], + [104.06279296875007, 19.678417968749983], + [104.12714843750004, 19.68085937500001], + [104.25986328125006, 19.685498046874983], + [104.5462890625, 19.61054687500001], + [104.58789062500003, 19.61875], + [104.74316406250003, 19.754736328124977], + [104.80175781249997, 19.83613281250004], + [104.81513671875004, 19.90400390625001], + [104.84580078125006, 19.947167968750023], + [104.9279296875001, 20.01811523437499], + [104.92919921875003, 20.082812500000017], + [104.88867187500003, 20.169091796875023], + [104.84785156250004, 20.202441406250045], + [104.8126953125001, 20.216845703125074], + [104.69873046875003, 20.20532226562503], + [104.67695312500004, 20.224707031249977], + [104.66191406250007, 20.28901367187501], + [104.65644531250004, 20.328515625], + [104.6188476562501, 20.37451171875003], + [104.49619140625006, 20.413671875], + [104.39218750000012, 20.424755859374955], + [104.36777343750012, 20.44140624999997], + [104.40781250000012, 20.48574218750005], + [104.47861328125006, 20.529589843750017], + [104.53271484374997, 20.55488281250001], + [104.57519531250003, 20.600244140625023], + [104.58320312500004, 20.646679687499955], + [104.53037109375012, 20.68798828125003], + [104.46142578125003, 20.733740234375034], + [104.34960937499997, 20.821093750000074], + [104.19531249999997, 20.913964843749966], + [104.10136718750002, 20.94550781250001], + [104.05205078125002, 20.941210937500017], + [103.8820312500001, 20.861425781250006], + [103.79052734375003, 20.80952148437501], + [103.71445312500006, 20.716943359374994], + [103.63505859375007, 20.697070312500017], + [103.55468750000003, 20.737841796875074], + [103.46357421875004, 20.779833984375017], + [103.21074218750002, 20.840625], + [103.10449218749997, 20.891650390625045], + [102.88378906250003, 21.202587890624983], + [102.85117187500006, 21.26591796874999], + [102.8722656250001, 21.3375], + [102.8875, 21.43994140625003], + [102.90957031250005, 21.506347656250057], + [102.9486328125, 21.56977539062501], + [102.95917968750004, 21.62622070312503], + [102.94960937500005, 21.681347656249983], + [102.9176757812501, 21.712939453125045], + [102.8761718750001, 21.722265624999977], + [102.84521484374997, 21.73476562500005], + [102.81591796874997, 21.807373046875], + [102.7982421875, 21.797949218750034], + [102.77109375000006, 21.709667968749983], + [102.73857421875002, 21.67792968750001], + [102.69531250000003, 21.66210937499997], + [102.66201171875005, 21.67602539062497], + [102.6408203125001, 21.71142578125], + [102.63125, 21.771337890625034], + [102.60966796875007, 21.851757812499983], + [102.58251953125003, 21.90429687500003], + [102.4875, 21.957763671875], + [102.44267578125007, 22.027148437500017], + [102.30136718750012, 22.178173828124955], + [102.1830078125, 22.284033203125034], + [102.12744140624997, 22.379199218750045], + [102.1759765625001, 22.414648437500006], + [102.2370117187501, 22.466015624999983], + [102.30224609375003, 22.545996093750006], + [102.37578125000002, 22.646630859374994], + [102.40644531250004, 22.70800781249997], + [102.42792968750004, 22.732812499999966], + [102.47089843750004, 22.75092773437501], + [102.51718750000012, 22.741015625000045], + [102.59853515625, 22.70039062500004], + [102.72099609375007, 22.648486328125017], + [102.83007812500003, 22.587158203125057], + [102.87421875000004, 22.525390625], + [102.93515625000012, 22.466162109375006], + [102.98193359374997, 22.4482421875], + [103.00537109375003, 22.452978515624977], + [103.0758789062501, 22.49750976562501], + [103.13632812500006, 22.542236328125057], + [103.13759765625005, 22.592968749999983], + [103.19335937500003, 22.638525390625034], + [103.26630859375004, 22.71352539062505], + [103.30058593750002, 22.76440429687503], + [103.32666015625003, 22.769775390625057], + [103.35605468750006, 22.75468749999999], + [103.47099609375002, 22.597412109375], + [103.49296875000007, 22.587988281250034], + [103.52539062500003, 22.611572265625057], + [103.570703125, 22.734423828125045], + [103.62021484375006, 22.782031250000045], + [103.63730468750006, 22.77001953125], + [103.91503906249997, 22.538232421875023], + [103.94150390625006, 22.540087890625045], + [103.9713867187501, 22.550488281249955], + [103.99082031250006, 22.58613281250001], + [104.01269531249997, 22.666357421875034], + [104.05390625000004, 22.752294921875034], + [104.14306640624997, 22.800146484375006], + [104.21250000000012, 22.809423828125034], + [104.23828125000003, 22.768505859374955], + [104.29833984374997, 22.712011718750006], + [104.37177734375004, 22.704052734374983], + [104.52685546875003, 22.804101562500023], + [104.57753906250005, 22.820019531249983], + [104.63173828125, 22.818212890625063], + [104.68730468750002, 22.822216796874983], + [104.74003906250002, 22.860498046874966], + [104.79570312500007, 22.91113281249997], + [104.81474609375002, 23.010791015625017], + [104.82656250000005, 23.100195312500034], + [104.86474609375003, 23.136376953125023], + [104.91015625000003, 23.160546875], + [104.99570312500006, 23.19433593750003], + [105.18906250000012, 23.281054687500017], + [105.23876953125003, 23.322119140625034], + [105.27539062500003, 23.34521484375003], + [105.35048828125005, 23.307666015625017], + [105.4401367187501, 23.23535156250003], + [105.49453125, 23.18085937500004], + [105.53085937500012, 23.121972656250023], + [105.54814453125007, 23.072656250000023], + [105.69121093750007, 23.029931640625023], + [105.78232421875006, 22.969335937500034] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Vanuatu", + "iso_a2": "VU", + "iso_a3": "VUT", + "iso_n3": "548", + "continent": "Oceania" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [169.89628906250007, -20.18662109375002], + [169.86113281250002, -20.241796874999977], + [169.80703125, -20.24111328125001], + [169.7375, -20.202148437499986], + [169.7506835937501, -20.153320312499986], + [169.82949218750005, -20.14472656250001], + [169.85234375000002, -20.147949218749957], + [169.89628906250007, -20.18662109375002] + ] + ], + [ + [ + [169.49130859375006, -19.54013671875002], + [169.43847656249997, -19.648828124999966], + [169.34726562500006, -19.623535156249957], + [169.2619140625001, -19.54501953125005], + [169.2174804687501, -19.476367187500003], + [169.24746093750005, -19.3447265625], + [169.29111328125006, -19.321777343750043], + [169.33671875000002, -19.32929687499997], + [169.35996093750006, -19.457812500000045], + [169.49130859375006, -19.54013671875002] + ] + ], + [ + [ + [169.334375, -18.940234375000017], + [169.28828125000004, -18.988574218750017], + [169.24804687499997, -18.98330078125001], + [168.98691406250006, -18.87128906250001], + [168.99785156250002, -18.82519531250003], + [168.98710937500002, -18.707617187499977], + [169.01582031250004, -18.64375], + [169.08789062499997, -18.61748046874999], + [169.14384765625002, -18.63105468750001], + [169.17802734375002, -18.725097656249986], + [169.25576171875005, -18.76337890624997], + [169.20117187499997, -18.795703124999974], + [169.29619140625002, -18.866796874999977], + [169.334375, -18.940234375000017] + ] + ], + [ + [ + [168.44580078124997, -17.54218750000004], + [168.54541015625003, -17.68466796875002], + [168.58496093750003, -17.695898437500006], + [168.52460937500004, -17.798046875000026], + [168.39941406250003, -17.807226562500034], + [168.25166015625004, -17.78076171874997], + [168.3058593750001, -17.74570312500002], + [168.27783203124997, -17.70605468750003], + [168.23320312500002, -17.698046875], + [168.18203125, -17.71699218750004], + [168.15820312500003, -17.710546874999963], + [168.19091796875003, -17.64482421874999], + [168.2731445312501, -17.552246093749957], + [168.29746093750006, -17.54492187499997], + [168.3195312500001, -17.543945312499957], + [168.34101562500004, -17.552050781250003], + [168.44580078124997, -17.54218750000004] + ] + ], + [ + [ + [168.44677734375003, -16.778808593749957], + [168.47656250000003, -16.79365234375004], + [168.46015625000004, -16.83505859375005], + [168.32275390624997, -16.78779296875001], + [168.2123046875, -16.806152343750014], + [168.18144531250002, -16.804003906250017], + [168.14853515625006, -16.765722656250034], + [168.12431640625002, -16.69003906249999], + [168.13535156250006, -16.636914062499997], + [168.18183593750004, -16.599902343750003], + [168.19921875000003, -16.59384765625002], + [168.23378906250005, -16.63964843750003], + [168.26542968750002, -16.67080078124998], + [168.29609375000004, -16.684179687500034], + [168.36601562500007, -16.758789062499957], + [168.44677734375003, -16.778808593749957] + ] + ], + [ + [ + [168.29667968750007, -16.33652343749999], + [168.18242187500007, -16.34677734375005], + [168.0216796875001, -16.315625], + [167.95703124999997, -16.27226562499996], + [167.92900390625002, -16.22871093749997], + [167.9845703125001, -16.196484374999983], + [168.06425781250007, -16.18125], + [168.16386718750002, -16.081640625000034], + [168.19833984375012, -16.119824218749997], + [168.23544921875012, -16.23134765624998], + [168.27568359375007, -16.264941406249974], + [168.29794921875006, -16.298730468750023], + [168.29667968750007, -16.33652343749999] + ] + ], + [ + [ + [167.4125, -16.095898437499997], + [167.45859375000012, -16.11757812499998], + [167.48369140625002, -16.11757812499998], + [167.49873046875004, -16.166210937500026], + [167.6419921875, -16.26328125], + [167.68134765625004, -16.260546874999974], + [167.71445312500012, -16.313671875000054], + [167.77597656250012, -16.34052734375001], + [167.79257812500006, -16.39462890625002], + [167.83662109375004, -16.449707031249957], + [167.75976562500003, -16.51640625], + [167.61142578125006, -16.498632812499977], + [167.52636718749997, -16.574316406250034], + [167.44931640625012, -16.554980468750003], + [167.43613281250006, -16.515234375], + [167.446875, -16.501953125000043], + [167.40097656250012, -16.400585937499997], + [167.3802734375, -16.245703124999963], + [167.34921875000006, -16.15449218750004], + [167.315625, -16.115527343750003], + [167.24609374999997, -16.149609375000026], + [167.21806640625007, -16.155273437500014], + [167.15146484375006, -16.080468749999966], + [167.18300781250005, -15.928515625], + [167.19951171875002, -15.885058593750031], + [167.25371093750002, -15.876757812500031], + [167.33574218750007, -15.916699218749997], + [167.4125, -16.095898437499997] + ] + ], + [ + [ + [167.21894531250004, -15.724121093750028], + [167.20078125000012, -15.750097656249991], + [167.09472656249997, -15.685253906250011], + [167.11904296875005, -15.622558593750028], + [167.234375, -15.645019531249986], + [167.21894531250004, -15.724121093750028] + ] + ], + [ + [ + [168.21289062499997, -15.970410156250011], + [168.19619140625005, -15.971679687500014], + [168.17929687500006, -15.925683593749966], + [168.12285156250002, -15.680859375], + [168.15996093750002, -15.461816406249966], + [168.18349609375, -15.508203125], + [168.26777343750004, -15.892285156249997], + [168.25634765625003, -15.95517578125002], + [168.21289062499997, -15.970410156250011] + ] + ], + [ + [ + [167.9113281250001, -15.435937500000023], + [167.84423828124997, -15.481835937500051], + [167.72021484374997, -15.477441406250037], + [167.67421875, -15.4515625], + [167.82626953125006, -15.31201171875], + [168.00253906250012, -15.283203124999986], + [167.9113281250001, -15.435937500000023] + ] + ], + [ + [ + [168.1891601562501, -15.32871093750002], + [168.17187, -15.390625], + [168.13046875000006, -15.318945312499991], + [168.10419921875004, -15.016601562500028], + [168.1149414062501, -14.988574218750003], + [168.1364257812501, -14.98642578125002], + [168.1869140625, -15.196875], + [168.1891601562501, -15.32871093750002] + ] + ], + [ + [ + [166.74580078125004, -14.826855468750011], + [166.81015625000012, -15.15742187500004], + [166.88515625, -15.156738281249986], + [166.92343750000006, -15.139160156249957], + [166.96757812500002, -15.061718749999983], + [166.98730468750003, -14.940039062499977], + [167.02656250000004, -14.922656249999989], + [167.0755859375, -14.935644531249977], + [167.05429687500012, -14.97441406249996], + [167.06855468750004, -15.07177734375], + [167.10644531249997, -15.125585937500034], + [167.13164062500002, -15.135351562499977], + [167.18203125, -15.38974609375002], + [167.20078125000012, -15.443066406249969], + [167.19960937500005, -15.485742187500037], + [167.0939453125001, -15.580859374999974], + [166.93662109375012, -15.578027343750009], + [166.82578125000006, -15.634863281249963], + [166.75830078125003, -15.631152343750003], + [166.75898437500004, -15.566796875000037], + [166.6989257812501, -15.515625], + [166.63105468750004, -15.406054687499974], + [166.6478515625, -15.211523437500048], + [166.52724609375, -14.850097656249957], + [166.52607421875004, -14.759765625000028], + [166.56738281250003, -14.641796874999969], + [166.6078125, -14.63652343749996], + [166.66259765624997, -14.735058593749969], + [166.74580078125004, -14.826855468750011] + ] + ], + [ + [ + [167.58486328125, -14.260937500000011], + [167.54326171875007, -14.311621093750034], + [167.43027343750012, -14.294921875], + [167.4035156250001, -14.281542968750031], + [167.41074218750006, -14.19746093750004], + [167.43906250000006, -14.16845703125], + [167.50644531250012, -14.142187499999977], + [167.59892578125002, -14.183789062500011], + [167.58486328125, -14.260937500000011] + ] + ], + [ + [ + [167.48886718750006, -13.907226562499972], + [167.47421875000012, -13.917089843750034], + [167.45107421875, -13.90937], + [167.3917968750001, -13.788378906250017], + [167.40683593750006, -13.748046874999972], + [167.48105468750006, -13.709472656250014], + [167.547265625, -13.776660156250017], + [167.55351562500002, -13.813964843749986], + [167.55302734375002, -13.845703124999972], + [167.54287109375, -13.873144531249963], + [167.49863281250012, -13.884570312499974], + [167.48886718750006, -13.907226562499972] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 3, + "name": "Wallis and Futuna Is.", + "iso_a2": "WF", + "iso_a3": "WLF", + "iso_n3": "876", + "continent": "Oceania" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-178.0466796875, -14.318359374999986], + [-178.10332031249996, -14.324902343749983], + [-178.15859375000002, -14.311914062499994], + [-178.19438476562496, -14.255468749999963], + [-178.17802734375, -14.231640624999983], + [-178.142236328125, -14.242578125], + [-178.10502929687496, -14.284179687500028], + [-178.04365234374998, -14.30322265625], + [-178.0466796875, -14.318359374999986] + ] + ], + [ + [ + [-176.16059570312504, -13.332812500000017], + [-176.176904296875, -13.340917968749977], + [-176.19536132812502, -13.30166015624998], + [-176.17119140625, -13.242578125000023], + [-176.14794921874994, -13.221679687500028], + [-176.128076171875, -13.268164062499991], + [-176.16059570312504, -13.332812500000017] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Samoa", + "iso_a2": "WS", + "iso_a3": "WSM", + "iso_n3": "882", + "continent": "Oceania" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [-171.4541015625, -14.04648437500002], + [-171.72822265624995, -14.047265625], + [-171.86376953124997, -14.00205078125002], + [-171.9119140625, -14.001660156250026], + [-172.02807617187494, -13.906835937499991], + [-172.04589843750003, -13.857128906249983], + [-171.98486328125003, -13.824414062499983], + [-171.85815429687497, -13.807128906250014], + [-171.60390624999997, -13.879199218750045], + [-171.56542968750003, -13.943066406249997], + [-171.506884765625, -13.949902343749969], + [-171.46137695312495, -13.97763671875002], + [-171.44956054687503, -14.0224609375], + [-171.4541015625, -14.04648437500002] + ] + ], + [ + [ + [-172.33349609375, -13.465234375], + [-172.22153320312503, -13.559570312500028], + [-172.17685546874998, -13.68466796875002], + [-172.224951171875, -13.804296874999963], + [-172.330859375, -13.774707031249974], + [-172.48452148437497, -13.800195312500023], + [-172.535693359375, -13.791699218749983], + [-172.6587890625, -13.644824218749989], + [-172.74409179687498, -13.57871093750002], + [-172.77851562499998, -13.516796875000011], + [-172.66962890625, -13.523828125000023], + [-172.510888671875, -13.482812500000023], + [-172.33349609375, -13.465234375] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Yemen", + "iso_a2": "YE", + "iso_a3": "YEM", + "iso_n3": "887", + "continent": "Asia" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [53.76318359374997, 12.636816406249991], + [53.82480468750006, 12.624804687500031], + [53.918554687500006, 12.659423828124986], + [54.18740234375005, 12.664013671875026], + [54.511132812499994, 12.552783203125017], + [54.45, 12.523437499999986], + [54.41376953125004, 12.48330078124998], + [54.271289062500074, 12.446630859374977], + [54.12949218750006, 12.360644531250045], + [53.71884765625006, 12.318994140624994], + [53.59833984375004, 12.342285156250028], + [53.49941406250005, 12.425341796874989], + [53.31582031250005, 12.533154296875011], + [53.38847656250002, 12.601855468749974], + [53.40390625, 12.633349609375003], + [53.43095703125002, 12.663574218750028], + [53.53496093750002, 12.715771484374997], + [53.63847656250002, 12.707373046874977], + [53.76318359374997, 12.636816406249991] + ] + ], + [ + [ + [42.75585937500003, 13.70429687500004], + [42.689746093750074, 13.673632812500017], + [42.734960937500006, 13.752978515625017], + [42.78125, 13.769287109375043], + [42.7941406250001, 13.766113281250028], + [42.75585937500003, 13.70429687500004] + ] + ], + [ + [ + [42.787402343750074, 13.971484375000031], + [42.77421875000002, 13.95024414062506], + [42.75605468750004, 13.954882812500017], + [42.69404296875004, 14.007910156249991], + [42.76210937500005, 14.067480468750048], + [42.79833984374997, 14.012255859374989], + [42.787402343750074, 13.971484375000031] + ] + ], + [ + [ + [42.59023437500005, 15.30341796875004], + [42.558691406250006, 15.28120117187504], + [42.5490234375001, 15.320068359374972], + [42.56972656250005, 15.407324218749977], + [42.60234375000002, 15.432519531249966], + [42.62451171875003, 15.367968750000045], + [42.61044921875006, 15.332275390624972], + [42.59023437500005, 15.30341796875004] + ] + ], + [ + [ + [52.903710937499994, 17.043847656249966], + [52.96435546875003, 16.91206054687504], + [53.025, 16.780224609374983], + [53.08564453125004, 16.648388671874955], + [52.581445312499994, 16.470361328125023], + [52.44843750000004, 16.391259765624966], + [52.327734375, 16.293554687500063], + [52.23730468749997, 16.17138671875003], + [52.17402343750004, 15.956835937500017], + [52.22207031250005, 15.760595703125006], + [52.2174804687501, 15.655517578125], + [52.08730468750005, 15.585937500000057], + [51.96582031249997, 15.535693359375017], + [51.8307617187501, 15.459277343749989], + [51.74863281250006, 15.440136718750011], + [51.68154296875005, 15.379101562500011], + [51.6037109375001, 15.336816406250009], + [51.3224609375001, 15.22626953125004], + [51.01513671875003, 15.140771484375037], + [50.52705078125004, 15.038183593750006], + [50.33857421875004, 14.92719726562504], + [50.16689453125005, 14.851025390624983], + [49.90634765625006, 14.828125], + [49.54863281250002, 14.722412109374986], + [49.34990234375002, 14.637792968749977], + [49.102929687499994, 14.500048828124974], + [49.0480468750001, 14.45644531249998], + [49.004687500000074, 14.355029296875003], + [48.92871093750003, 14.267480468750023], + [48.7799804687501, 14.123876953124991], + [48.668359375, 14.050146484374977], + [48.59375, 14.046240234374977], + [48.44902343750002, 14.005908203125031], + [48.27783203125003, 13.997656250000034], + [47.9899414062501, 14.048095703125], + [47.91601562499997, 14.012841796875023], + [47.85507812500006, 13.956933593749994], + [47.633398437500006, 13.858447265625003], + [47.40771484374997, 13.661621093750057], + [47.242578125, 13.60937], + [46.97568359375006, 13.547460937499977], + [46.78886718750002, 13.465576171874986], + [46.66347656250005, 13.432714843750048], + [46.50195312499997, 13.415576171875017], + [46.20312, 13.423828125000014], + [45.91972656250002, 13.394287109375028], + [45.65732421875006, 13.338720703124991], + [45.533984375000074, 13.233496093749963], + [45.39355468749997, 13.06704101562498], + [45.163867187500074, 12.998291015625], + [45.10976562500005, 12.938574218750006], + [45.03867187500006, 12.815869140624969], + [44.8898437500001, 12.7841796875], + [44.75527343750005, 12.763769531250006], + [44.617773437500006, 12.817236328124977], + [44.358496093750006, 12.669140625000011], + [44.260351562500006, 12.644628906249991], + [44.1115234375001, 12.638671875000014], + [44.00585937499997, 12.607666015625], + [43.929785156250006, 12.616503906250031], + [43.83535156250005, 12.67441406250002], + [43.634375, 12.744482421874991], + [43.487597656250074, 12.69882812500002], + [43.47529296875004, 12.83901367187498], + [43.23193359375003, 13.267089843750057], + [43.28261718750005, 13.639843749999969], + [43.2824218750001, 13.692529296875037], + [43.23408203125004, 13.858935546875017], + [43.08906250000004, 14.010986328125], + [43.09335937500006, 14.203662109374989], + [43.044824218749994, 14.341552734375014], + [43.00625, 14.483105468749983], + [43.01875, 14.520800781250031], + [43.02109375000006, 14.55488281250004], + [42.94697265625004, 14.773144531250011], + [42.922167968750074, 14.817382812500057], + [42.912988281249994, 14.863085937500045], + [42.93730468750002, 14.898046874999963], + [42.93642578125005, 14.938574218749963], + [42.897070312500006, 15.005566406250026], + [42.85566406250004, 15.132958984375037], + [42.65781250000006, 15.232812500000051], + [42.697851562500006, 15.326318359374994], + [42.73642578125006, 15.293554687499991], + [42.788476562499994, 15.265722656250006], + [42.79902343750004, 15.326269531249991], + [42.799902343750006, 15.371630859374989], + [42.71718750000005, 15.654638671875006], + [42.83964843750002, 16.032031250000074], + [42.79931640624997, 16.37177734375001], + [42.98632812499997, 16.50908203124999], + [43.03359375000005, 16.550390624999977], + [43.06074218750004, 16.586621093749983], + [43.104785156250074, 16.664160156250063], + [43.16503906249997, 16.689404296874955], + [43.186328125000074, 16.77099609374997], + [43.18447265625005, 16.811816406250045], + [43.145605468750006, 16.846777343750063], + [43.116503906250074, 16.941992187500006], + [43.12617187500004, 17.06245117187501], + [43.1359375000001, 17.11298828125001], + [43.1559570312501, 17.20502929687504], + [43.2213867187501, 17.23925781249997], + [43.23691406250006, 17.266455078125006], + [43.186328125000074, 17.32470703124997], + [43.19091796875003, 17.359375], + [43.30214843750005, 17.45678710937497], + [43.34609375, 17.486035156249983], + [43.41796875000003, 17.516259765625023], + [43.47421875, 17.515917968750045], + [43.53925781250004, 17.49873046875001], + [43.597265625, 17.47143554687503], + [43.653417968750006, 17.42187], + [43.71298828125006, 17.365527343750045], + [43.804296875, 17.344140625000023], + [43.86640625000004, 17.349609375], + [43.91699218749997, 17.32470703124997], + [43.95966796875004, 17.33833007812501], + [44.008203125, 17.36748046874999], + [44.08593750000003, 17.365527343750045], + [44.1559570312501, 17.398535156250006], + [44.35468750000004, 17.414355468750045], + [44.54648437500006, 17.404345703125045], + [44.7467773437501, 17.431689453125017], + [44.9464843750001, 17.429589843750023], + [45.14804687500006, 17.427441406249955], + [45.192773437499994, 17.423388671875017], + [45.236621093750074, 17.406201171874983], + [45.40654296875002, 17.319775390624955], + [45.5353515625001, 17.30205078124999], + [45.79443359375003, 17.278417968750063], + [46.07080078124997, 17.25317382812497], + [46.31035156250002, 17.231298828125063], + [46.51347656250002, 17.25166015625001], + [46.68203125, 17.2685546875], + [46.72763671875006, 17.26557617187501], + [46.77851562500004, 17.212109374999955], + [46.879980468750006, 17.079003906250023], + [46.97568359375006, 16.953466796875034], + [47.14355468749997, 16.946679687499966], + [47.251269531250074, 16.993945312500017], + [47.36962890625003, 17.060400390625063], + [47.441796875, 17.111865234375045], + [47.52539062499997, 17.31611328125001], + [47.57958984374997, 17.448339843750034], + [47.70371093750006, 17.596826171874994], + [47.80781250000004, 17.72109375], + [47.9455078125001, 17.885839843750006], + [48.0216796875001, 17.976953125], + [48.17216796875002, 18.156933593749983], + [48.31582031250005, 18.227050781250057], + [48.59296875000004, 18.362402343750006], + [48.86484375, 18.495214843750063], + [49.04199218750003, 18.58178710937503], + [49.19238281250003, 18.621337890625], + [49.445117187500074, 18.65532226562499], + [49.742089843749994, 18.69531249999997], + [50.038964843749994, 18.735253906250023], + [50.355273437500074, 18.777783203124983], + [50.7082031250001, 18.825292968749977], + [50.95, 18.857861328124955], + [51.258398437500006, 18.899365234374983], + [51.514941406250074, 18.93388671874999], + [51.742968750000074, 18.96455078125001], + [51.977636718750006, 18.996142578125074], + [52.021875, 18.896289062500045], + [52.06621093750002, 18.796386718750057], + [52.11044921875006, 18.69648437500004], + [52.1546875, 18.596582031250023], + [52.199023437500074, 18.496679687500006], + [52.243261718750006, 18.396826171875006], + [52.2875, 18.29692382812499], + [52.3317382812501, 18.197070312500074], + [52.37607421875006, 18.09716796874997], + [52.4203125, 17.997314453125057], + [52.46455078125004, 17.897412109374955], + [52.50888671875006, 17.797509765625023], + [52.553125, 17.697607421875006], + [52.59736328125004, 17.597753906250006], + [52.641699218750006, 17.49785156249999], + [52.68593750000005, 17.39794921874997], + [52.72919921875004, 17.300390625], + [52.80058593750002, 17.267919921875063], + [52.84296875000004, 17.175683593749994], + [52.903710937499994, 17.043847656249966] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "South Africa", + "iso_a2": "ZA", + "iso_a3": "ZAF", + "iso_n3": "710", + "continent": "Africa" + }, + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [37.85693359375003, -46.94423828124998], + [37.81396484374997, -46.96289062499996], + [37.61181640625003, -46.94648437499998], + [37.5900390625001, -46.90800781250006], + [37.64970703125002, -46.84892578125], + [37.684863281250074, -46.8240234375], + [37.78955078124997, -46.8375], + [37.872851562500074, -46.88544921874998], + [37.88769531249997, -46.90166015625], + [37.85693359375003, -46.94423828124998] + ] + ], + [ + [ + [30.19042968750003, -22.291113281250034], + [30.460156250000097, -22.329003906250023], + [30.71162109375004, -22.297851562499986], + [30.916113281250063, -22.29072265625004], + [31.07343750000004, -22.30781249999997], + [31.19726562499997, -22.344921874999983], + [31.287890625000074, -22.402050781249983], + [31.29316406250004, -22.454687499999963], + [31.300195312499994, -22.478613281250034], + [31.34804687500005, -22.617578125000023], + [31.419335937499994, -22.825097656250023], + [31.46669921875005, -23.016699218749977], + [31.53173828124997, -23.27949218750004], + [31.5296875, -23.42578125], + [31.54560546875004, -23.48232421874998], + [31.604101562500006, -23.55292968749997], + [31.675585937500074, -23.67421875], + [31.7, -23.74306640624998], + [31.724023437499994, -23.79453125], + [31.799609375000017, -23.8921875], + [31.858300781249994, -24.04023437500004], + [31.908007812500074, -24.236230468749994], + [31.95058593750005, -24.33027343749997], + [31.966601562500017, -24.37646484374997], + [31.98583984374997, -24.460644531249983], + [31.983203125000017, -24.63828125000002], + [31.984375, -24.844042968750017], + [31.985742187499994, -25.07382812500002], + [31.987011718750097, -25.263476562500017], + [31.97939453125005, -25.359472656250034], + [31.98457031250004, -25.631933593750034], + [31.9203125, -25.773925781250014], + [31.928320312500063, -25.885351562499977], + [31.94824218750003, -25.957617187500034], + [31.921679687500017, -25.96875], + [31.871484375, -25.981640625000054], + [31.640429687500017, -25.86728515625002], + [31.415136718750063, -25.74658203125003], + [31.382617187500074, -25.74296875], + [31.335156250000097, -25.755566406249997], + [31.207324218750074, -25.843359375000034], + [31.08808593750004, -25.980664062500026], + [31.033300781250063, -26.09775390624999], + [30.94521484375005, -26.21875], + [30.803320312500006, -26.41347656250001], + [30.78906250000003, -26.455468750000037], + [30.7875, -26.613671875000023], + [30.79433593750005, -26.764257812499977], + [30.806738281250006, -26.78525390624999], + [30.88330078124997, -26.792382812500023], + [30.938085937500006, -26.91582031250003], + [31.06337890625005, -27.1123046875], + [31.274023437500063, -27.23837890625002], + [31.469531250000017, -27.29550781250002], + [31.74257812500005, -27.309960937500037], + [31.95839843750005, -27.305859375], + [31.946093750000017, -27.173632812499974], + [31.96718750000005, -26.96064453125001], + [31.994726562500006, -26.817480468749977], + [32.024804687499994, -26.81113281250002], + [32.081640625, -26.824804687499963], + [32.112890625, -26.83945312500002], + [32.199609375, -26.833496093749957], + [32.35351562499997, -26.861621093750003], + [32.47773437500004, -26.85849609374999], + [32.58876953125005, -26.85576171874996], + [32.7765625000001, -26.850976562499966], + [32.88613281250005, -26.849316406249983], + [32.84912109374997, -27.080175781250034], + [32.70585937500002, -27.441601562500026], + [32.65703125000002, -27.607324218750037], + [32.53476562500006, -28.19970703125003], + [32.37519531250004, -28.498242187499997], + [32.285742187500006, -28.62148437499998], + [32.02724609375005, -28.839550781249997], + [31.955371093750074, -28.88378906250003], + [31.891503906249994, -28.91210937500003], + [31.778222656249994, -28.937109374999977], + [31.335156250000097, -29.378125], + [31.16992187499997, -29.590820312500014], + [31.023339843749994, -29.90087890625003], + [30.87763671875004, -30.071093749999974], + [30.66357421874997, -30.434179687499963], + [30.472265625000063, -30.71455078124997], + [30.288671875000063, -30.970117187499994], + [29.97119140625003, -31.322070312500017], + [29.830273437500097, -31.42382812499997], + [29.735156250000074, -31.47041015625004], + [29.48291015625003, -31.67470703125001], + [29.12783203125008, -32.003125], + [28.85595703125003, -32.29423828125002], + [28.449414062500068, -32.624609375], + [28.214062499999983, -32.76923828124997], + [27.860644531250017, -33.05390624999997], + [27.762109375000023, -33.09599609375002], + [27.363769531250057, -33.360546875], + [27.077441406250074, -33.52119140625004], + [26.61367187500008, -33.707421874999966], + [26.429492187500045, -33.75957031250002], + [25.989550781250045, -33.711328124999966], + [25.80585937500001, -33.737109374999974], + [25.652441406250006, -33.849609374999986], + [25.63818359375003, -34.01113281250002], + [25.574218750000057, -34.03535156249998], + [25.47724609375004, -34.028125], + [25.169726562500074, -33.960742187499974], + [25.00292968750003, -33.97363281250003], + [24.90556640624999, -34.05976562499998], + [24.8271484375, -34.16894531250003], + [24.595507812500074, -34.17451171875], + [24.18300781250005, -34.061523437499986], + [23.697851562500063, -33.99277343750002], + [23.585546875, -33.985156249999974], + [23.350390625000074, -34.06894531249999], + [23.268164062500006, -34.08115234374999], + [22.925585937500045, -34.06318359374997], + [22.73554687500004, -34.01025390625003], + [22.553808593750063, -34.01005859374999], + [22.41445312500008, -34.05380859375002], + [22.24550781250005, -34.06914062500003], + [21.788964843750023, -34.37265624999996], + [21.553222656250057, -34.37304687500004], + [21.349804687499983, -34.408203125], + [21.24892578125005, -34.40703125000003], + [21.060156250000063, -34.36464843750001], + [20.989843750000034, -34.367480468749974], + [20.882421874999977, -34.38652343750003], + [20.774804687499994, -34.439941406249986], + [20.529882812500034, -34.4630859375], + [20.434667968749977, -34.50859375000003], + [20.020605468750006, -34.785742187500006], + [19.926269531250057, -34.774707031249974], + [19.85, -34.75664062500003], + [19.63496093750004, -34.753320312499966], + [19.391503906249994, -34.6056640625], + [19.298242187500023, -34.61503906249996], + [19.323242187500057, -34.57080078125], + [19.330761718750068, -34.49238281250001], + [19.279394531250006, -34.437011718750014], + [19.24462890625003, -34.41230468750004], + [19.14912109375001, -34.416894531249994], + [19.098339843750068, -34.350097656249986], + [18.95214843750003, -34.34375], + [18.90156250000001, -34.36064453125], + [18.831347656250017, -34.36406249999999], + [18.82509765625008, -34.29648437499998], + [18.830664062500063, -34.253906250000014], + [18.826367187500068, -34.1884765625], + [18.80878906250004, -34.10820312499999], + [18.75214843750004, -34.08261718750002], + [18.708691406250068, -34.07187], + [18.60517578125004, -34.07734375000001], + [18.533886718749983, -34.085937499999986], + [18.500390625, -34.10927734375004], + [18.46210937500001, -34.16806640625002], + [18.46162109375001, -34.346875], + [18.41035156250004, -34.29560546874998], + [18.35205078124997, -34.1884765625], + [18.333398437499994, -34.07421875], + [18.354394531250023, -33.9390625], + [18.46503906250001, -33.887792968750034], + [18.456445312500023, -33.796484375], + [18.43300781250005, -33.71728515625003], + [18.309472656250023, -33.514453125], + [18.261230468750057, -33.42167968750002], + [18.156347656250006, -33.358789062499994], + [18.074804687499977, -33.20732421874996], + [17.992578125000023, -33.15234375000004], + [17.95839843750008, -33.04638671875003], + [17.87822265624999, -32.96152343749998], + [17.851074218750057, -32.82744140625002], + [17.895312500000017, -32.75048828124997], + [17.96523437500005, -32.70859374999996], + [18.036523437499994, -32.77509765625001], + [18.125, -32.74912109374996], + [18.25087890625008, -32.6521484375], + [18.325292968750034, -32.50498046874996], + [18.32988281249999, -32.26953124999996], + [18.31074218750001, -32.12246093750001], + [18.21083984375008, -31.74248046874996], + [18.163671875000063, -31.655175781250023], + [17.938574218750034, -31.383203125000037], + [17.67744140625004, -31.019042968750014], + [17.34707031250005, -30.44482421875], + [17.1890625, -30.09980468749997], + [16.95, -29.40341796875002], + [16.739453124999983, -29.009375], + [16.480761718750045, -28.641503906249966], + [16.447558593750045, -28.61757812499998], + [16.487109375000017, -28.57285156250002], + [16.62617187500001, -28.48789062500002], + [16.68945312500003, -28.464941406249963], + [16.723046875000023, -28.47548828124998], + [16.755761718750023, -28.45214843750003], + [16.7875, -28.39472656249997], + [16.794531250000034, -28.3408203125], + [16.81015625, -28.264550781249994], + [16.841210937500023, -28.21894531250004], + [16.875292968750045, -28.12792968749997], + [16.93330078125004, -28.06962890624999], + [17.05625, -28.03105468750003], + [17.14941406250003, -28.082226562499983], + [17.1884765625, -28.13251953125001], + [17.20458984374997, -28.19882812500002], + [17.24580078125004, -28.23085937499998], + [17.31201171875003, -28.228613281249963], + [17.358691406250017, -28.269433593750023], + [17.38574218750003, -28.35322265625004], + [17.38027343750008, -28.41396484374998], + [17.342578125000017, -28.451660156250014], + [17.34785156250004, -28.501171874999983], + [17.39589843750005, -28.562695312499983], + [17.41572265625001, -28.621093749999986], + [17.44794921875001, -28.698144531249966], + [17.616796875000034, -28.743066406249966], + [17.699316406250063, -28.76835937499996], + [17.84160156249999, -28.776953125000034], + [17.97607421875003, -28.811328125000017], + [18.102734374999983, -28.871679687499963], + [18.310839843750017, -28.88623046875], + [18.600390625000045, -28.855273437500003], + [18.838769531250023, -28.869140624999986], + [19.026074218750068, -28.92792968749997], + [19.16171875, -28.93876953124996], + [19.245800781250068, -28.90166015625003], + [19.28222656250003, -28.847949218750017], + [19.270996093750057, -28.777734375], + [19.31269531250004, -28.733300781250023], + [19.4072265625, -28.714453125], + [19.482910156250057, -28.661621093749986], + [19.539843750000017, -28.574609375000023], + [19.671484375000034, -28.50390625], + [19.87783203125005, -28.449414062499997], + [19.98046875, -28.45126953125002], + [19.98046875, -28.310351562500003], + [19.98046875, -27.865527343749974], + [19.98046875, -27.42070312500003], + [19.98046875, -26.975976562500023], + [19.98046875, -26.531152343749994], + [19.98046875, -26.086328124999966], + [19.98046875, -25.641601562499957], + [19.98046875, -25.19677734375003], + [19.98046875, -24.77675781249998], + [20.028613281250045, -24.807031250000023], + [20.345214843750057, -25.029882812500034], + [20.430664062500057, -25.14707031250002], + [20.47314453125, -25.22128906250005], + [20.609277343750023, -25.49121093749997], + [20.710742187500017, -25.733203124999974], + [20.79316406250001, -25.915625], + [20.799414062500034, -25.999023437500043], + [20.81103515625, -26.080566406249957], + [20.82265625000008, -26.12060546875003], + [20.815039062500034, -26.164941406249994], + [20.75703125000001, -26.264160156249957], + [20.697851562500034, -26.34013671874999], + [20.626757812500045, -26.44384765624997], + [20.619921875000074, -26.580859375], + [20.641406250000017, -26.7421875], + [20.68505859375003, -26.82246093750001], + [20.739843749999977, -26.84882812499997], + [20.870898437500045, -26.808789062499983], + [20.953906250000074, -26.82109375], + [21.07099609375004, -26.85175781250004], + [21.454980468750023, -26.83281249999999], + [21.50136718750005, -26.842675781249966], + [21.64628906249999, -26.854199218749997], + [21.694726562500023, -26.840917968749963], + [21.738085937500045, -26.806835937500026], + [21.788281250000068, -26.710058593750034], + [21.833203125000068, -26.678320312499963], + [21.91455078125003, -26.66191406249999], + [22.01093750000004, -26.635839843750006], + [22.090917968749977, -26.580175781250034], + [22.217578125000045, -26.38886718749997], + [22.47089843750004, -26.219042968750003], + [22.548632812500074, -26.178417968749997], + [22.59765625000003, -26.13271484375001], + [22.640234374999977, -26.071191406249994], + [22.729003906250057, -25.857324218750037], + [22.79609375000004, -25.679101562499966], + [22.818945312500063, -25.595117187499994], + [22.878808593750023, -25.457910156250023], + [22.951269531250034, -25.370312500000026], + [23.022070312500063, -25.324121093750037], + [23.057519531249994, -25.312304687500017], + [23.148730468750017, -25.288671875], + [23.266015625000023, -25.266601562500043], + [23.389257812500006, -25.291406250000023], + [23.52148437500003, -25.344433593749997], + [23.670703125000045, -25.433984375000037], + [23.823437500000068, -25.54462890625001], + [23.89375, -25.600878906250017], + [23.96953124999999, -25.62607421874999], + [24.104492187500057, -25.634863281250006], + [24.192968750000034, -25.632910156249963], + [24.33056640625, -25.742871093749983], + [24.400195312500074, -25.749804687499974], + [24.555859375000068, -25.78310546875001], + [24.748144531250006, -25.817382812499986], + [24.869238281250063, -25.813476562499986], + [24.998925781250023, -25.754003906250034], + [25.092480468750068, -25.751464843749957], + [25.21337890625, -25.75625], + [25.346191406250057, -25.73994140625001], + [25.443652343750017, -25.714453124999977], + [25.518164062500006, -25.66279296875001], + [25.583789062500074, -25.60625], + [25.659179687500057, -25.437890625000023], + [25.70263671875003, -25.302343750000034], + [25.76992187500005, -25.146484374999986], + [25.85244140625008, -24.93525390625004], + [25.88183593750003, -24.787988281249966], + [25.91210937499997, -24.747460937499966], + [26.031835937500034, -24.70244140625003], + [26.130859375000057, -24.671484375000034], + [26.39716796875004, -24.61357421874996], + [26.451757812500063, -24.582714843749983], + [26.501562499999977, -24.51328125000005], + [26.617773437500034, -24.39550781250003], + [26.761132812500023, -24.297167968749974], + [26.835058593750063, -24.240820312499963], + [26.97060546875005, -23.76347656249996], + [26.98701171875004, -23.704589843749957], + [27.085546875000034, -23.577929687500003], + [27.14638671875008, -23.52441406250003], + [27.185546875000057, -23.5234375], + [27.24121093750003, -23.49003906250003], + [27.31337890625008, -23.424218750000037], + [27.399218750000074, -23.383593750000017], + [27.49873046875001, -23.368359375000026], + [27.563183593749983, -23.324609375], + [27.59267578125005, -23.252636718749983], + [27.64384765624999, -23.217675781249966], + [27.71679687500003, -23.21962890625001], + [27.758300781250057, -23.19677734374997], + [27.7685546875, -23.14892578125], + [27.812597656250006, -23.108007812500006], + [27.89052734375008, -23.073925781249997], + [27.93134765625004, -23.033593750000037], + [27.93505859375, -22.98701171874997], + [28.027929687500006, -22.873730468749983], + [28.210156249999983, -22.693652343749974], + [28.38173828125005, -22.593359374999963], + [28.542871093750023, -22.572949218749983], + [28.69550781250001, -22.53544921874999], + [28.83984375000003, -22.480859374999966], + [28.94580078125003, -22.39511718749999], + [29.013476562500045, -22.27841796875002], + [29.129882812500057, -22.21328125], + [29.364843750000063, -22.19394531250005], + [29.37744140625003, -22.19277343749998], + [29.66308593749997, -22.146289062500017], + [29.90234375000003, -22.184179687500006], + [30.19042968750003, -22.291113281250034] + ], + [ + [27.830371093750074, -28.909082031250037], + [27.73554687500004, -28.940039062500034], + [27.660449218750017, -29.046972656249977], + [27.59023437500008, -29.146484375], + [27.527148437500017, -29.23613281249996], + [27.491015625000045, -29.276562500000026], + [27.458007812500057, -29.30273437500003], + [27.424902343750063, -29.360058593749983], + [27.35683593750005, -29.455273437500026], + [27.294531250000063, -29.519335937500017], + [27.20742187500008, -29.554199218750014], + [27.095214843750057, -29.59931640624997], + [27.056933593750074, -29.62558593749999], + [27.0517578125, -29.664062500000014], + [27.091796875000057, -29.753710937499974], + [27.130468750000034, -29.840234375000023], + [27.19355468750001, -29.94130859375001], + [27.23974609375, -30.015332031249983], + [27.31269531250004, -30.10566406250001], + [27.355371093750023, -30.158593750000037], + [27.349707031250034, -30.247363281250003], + [27.364062500000017, -30.27919921875001], + [27.388476562500017, -30.31591796875003], + [27.408593750000023, -30.32529296874999], + [27.431445312500074, -30.338476562500006], + [27.491992187500045, -30.363964843750054], + [27.50654296875001, -30.380957031249963], + [27.54902343750004, -30.41123046874999], + [27.589648437500045, -30.466406249999963], + [27.666601562500006, -30.54228515624996], + [27.753125, -30.6], + [27.90185546874997, -30.62382812499996], + [28.018164062500063, -30.642285156249997], + [28.05683593750001, -30.63105468750001], + [28.09638671875001, -30.584570312499963], + [28.128710937500017, -30.52509765625001], + [28.13906250000008, -30.44990234374997], + [28.17617187500008, -30.409863281249983], + [28.31542968750003, -30.218457031249983], + [28.39208984375003, -30.14755859375002], + [28.4390625, -30.14248046875005], + [28.499609374999977, -30.12890625000003], + [28.576660156250057, -30.123046875], + [28.634375, -30.12871093749999], + [28.646875, -30.1265625], + [28.736914062500006, -30.101953124999966], + [28.901074218750068, -30.038476562499994], + [28.97529296875001, -29.999414062500037], + [29.02900390625001, -29.96757812500003], + [29.09804687500005, -29.919042968750006], + [29.12197265625005, -29.801171874999966], + [29.142187500000063, -29.70097656249999], + [29.195117187500017, -29.651660156249974], + [29.24921875000004, -29.61884765625004], + [29.293554687500006, -29.56689453125003], + [29.348828125000097, -29.441992187499977], + [29.38671874999997, -29.319726562500023], + [29.390722656250006, -29.26972656249997], + [29.370898437500017, -29.218457031249997], + [29.33593750000003, -29.163671875000034], + [29.301367187500006, -29.08984375], + [29.25976562499997, -29.07832031249997], + [29.17802734374999, -29.03691406249996], + [29.05800781250005, -28.953710937499977], + [28.953710937500034, -28.881445312500006], + [28.85625, -28.776074218750026], + [28.816210937500017, -28.75888671874999], + [28.721777343750034, -28.68769531249997], + [28.68115234375003, -28.646777343749974], + [28.652636718750074, -28.59785156250004], + [28.625781250000017, -28.581738281250054], + [28.583398437499994, -28.594140625], + [28.471875, -28.615820312499977], + [28.23261718750004, -28.701269531249977], + [28.084375, -28.779980468750026], + [27.95986328125008, -28.87333984375003], + [27.830371093750074, -28.909082031250037] + ] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Zambia", + "iso_a2": "ZM", + "iso_a3": "ZMB", + "iso_n3": "894", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [32.919921875, -9.407421875000011], + [32.92333984375, -9.433984375], + [32.95107421875002, -9.484179687500003], + [32.97988281250002, -9.5203125], + [32.98212890625001, -9.573632812500009], + [32.99599609375002, -9.622851562500003], + [33.03779296875001, -9.635058593750003], + [33.07246093750001, -9.63818359375], + [33.1044921875, -9.602636718750006], + [33.148046875, -9.603515625], + [33.19570312500002, -9.626171875000011], + [33.21269531250002, -9.683007812500009], + [33.25, -9.759570312500003], + [33.31044921875002, -9.811816406250003], + [33.35097656250002, -9.862207031250009], + [33.33710937500001, -9.954003906250009], + [33.3115234375, -10.037988281250009], + [33.3935546875, -10.120898437500003], + [33.500097656250006, -10.19970703125], + [33.52890625, -10.234667968750003], + [33.53759765625, -10.3515625], + [33.5537109375, -10.391308593750011], + [33.62617187500001, -10.488574218750003], + [33.66152343750002, -10.553125], + [33.65908203125002, -10.590527343750011], + [33.46474609375002, -10.783105468750009], + [33.403125, -10.8017578125], + [33.34492187500001, -10.812695312500011], + [33.29277343750002, -10.85234375], + [33.261328125, -10.893359375], + [33.27275390625002, -10.9150390625], + [33.29326171875002, -10.981152343750011], + [33.33867187500002, -11.085156250000011], + [33.37978515625002, -11.157910156250011], + [33.34550781250002, -11.249121093750006], + [33.26835937500002, -11.40390625], + [33.23271484375002, -11.417675781250011], + [33.22636718750002, -11.534863281250011], + [33.25, -11.57763671875], + [33.28828125000001, -11.611132812500003], + [33.30390625000001, -11.690820312500009], + [33.30507812500002, -11.8], + [33.30097656250001, -11.88818359375], + [33.25234375000002, -12.112597656250003], + [33.34013671875002, -12.308300781250011], + [33.37001953125002, -12.3296875], + [33.49140625000001, -12.3310546875], + [33.512304687500006, -12.347753906250006], + [33.48320312500002, -12.403417968750006], + [33.4306640625, -12.46044921875], + [33.39794921875, -12.48984375], + [33.24345703125002, -12.556542968750009], + [33.021582031250006, -12.63046875], + [32.975195312500006, -12.701367187500011], + [32.94560546875002, -12.804394531250011], + [32.97050781250002, -12.86474609375], + [33, -12.899609375000011], + [32.99042968750001, -12.989453125000011], + [32.97109375000002, -13.084277343750003], + [32.977636718750006, -13.158886718750011], + [32.96757812500002, -13.225], + [32.938574218750006, -13.257421875], + [32.89970703125002, -13.35703125], + [32.85185546875002, -13.45703125], + [32.8140625, -13.502734375], + [32.758398437500006, -13.55029296875], + [32.67041015625, -13.590429687500006], + [32.67207031250001, -13.6103515625], + [32.77177734375002, -13.656542968750003], + [32.797460937500006, -13.6884765625], + [32.806738281250006, -13.710253906250003], + [32.78535156250001, -13.7314453125], + [32.76513671875, -13.761035156250003], + [32.81103515625, -13.791601562500006], + [32.8671875, -13.8173828125], + [32.92031250000002, -13.883886718750006], + [32.96757812500002, -13.976855468750003], + [32.98125, -14.009375], + [32.99208984375002, -14.022167968750011], + [33.00927734375, -14.023730468750003], + [33.04238281250002, -14.010058593750003], + [33.103613281250006, -13.959179687500011], + [33.148046875, -13.94091796875], + [33.201757812500006, -14.013378906250011], + [32.98710937500002, -14.0849609375], + [32.87451171875, -14.122460937500009], + [32.55322265625, -14.229589843750006], + [32.27285156250002, -14.323046875], + [32.19990234375001, -14.3408203125], + [32.05449218750002, -14.386523437500003], + [31.98212890625001, -14.414453125], + [31.728906250000023, -14.49609375], + [31.623046875, -14.53671875], + [31.537890625000017, -14.5771484375], + [31.328515625000023, -14.6376953125], + [31.130859375, -14.694628906250003], + [30.915136718750006, -14.753320312500009], + [30.67333984375, -14.819140625], + [30.537695312500006, -14.866503906250003], + [30.446093750000017, -14.907519531250003], + [30.231835937500023, -14.990332031250006], + [30.221777343750006, -15.010546875], + [30.225, -15.06689453125], + [30.25214843750001, -15.183203125], + [30.3056640625, -15.288867187500003], + [30.3505859375, -15.349707031250006], + [30.3798828125, -15.505859375], + [30.39609375, -15.64306640625], + [30.25068359375001, -15.643457031250009], + [29.994921875000017, -15.64404296875], + [29.729589843750006, -15.644628906250006], + [29.4873046875, -15.69677734375], + [29.287890625000017, -15.776464843750006], + [29.050585937500017, -15.901171875], + [28.973046875000023, -15.950097656250009], + [28.9130859375, -15.98779296875], + [28.875585937500006, -16.0361328125], + [28.856738281250017, -16.14228515625001], + [28.856738281250017, -16.30615234375], + [28.83271484375001, -16.424121093750003], + [28.760546875000017, -16.53212890625001], + [28.760644531250023, -16.53193359375001], + [28.399804687500023, -16.66279296875001], + [28.16376953125001, -16.76972656250001], + [27.932226562500006, -16.89619140625001], + [27.75654296875001, -17.060351562500003], + [27.63671875, -17.262109375], + [27.437890625000023, -17.51191406250001], + [27.235742187500023, -17.728320312500003], + [27.020800781250017, -17.95839843750001], + [26.779882812500006, -18.04150390625], + [26.577539062500023, -18.022558593750006], + [26.333398437500023, -17.929296875], + [26.139550781250023, -17.91171875], + [25.995898437500017, -17.969824218750006], + [25.86328125, -17.951953125], + [25.741601562500023, -17.858203125], + [25.6396484375, -17.82412109375001], + [25.55712890625, -17.84951171875001], + [25.451757812500006, -17.84511718750001], + [25.2587890625, -17.793554687500006], + [25.092187500000023, -17.634375], + [25.001757812500017, -17.56855468750001], + [24.932421875000017, -17.54345703125], + [24.73291015625, -17.51777343750001], + [24.27490234375, -17.481054687500006], + [24.227148437500006, -17.489550781250003], + [24.036914062500017, -17.52089843750001], + [23.799218750000023, -17.56015625], + [23.59492187500001, -17.599414062500003], + [23.380664062500017, -17.640625], + [23.181640625, -17.474414062500003], + [22.955859375000017, -17.285742187500006], + [22.721972656250017, -17.075292968750006], + [22.545996093750006, -16.910253906250006], + [22.45947265625, -16.81513671875001], + [22.305078125000023, -16.689550781250006], + [22.193945312500006, -16.628125], + [22.150683593750017, -16.59716796875], + [22.04023437500001, -16.262792968750006], + [21.979785156250017, -15.95556640625], + [21.979785156250017, -15.72412109375], + [21.97968750000001, -15.403222656250009], + [21.979589843750006, -15.082324218750003], + [21.9794921875, -14.761425781250011], + [21.979394531250023, -14.440527343750006], + [21.979296875000017, -14.11962890625], + [21.979101562500006, -13.798730468750009], + [21.979101562500006, -13.477734375000011], + [21.97900390625, -13.156835937500006], + [21.978906250000023, -13.0009765625], + [22.209570312500006, -13.0009765625], + [22.470996093750017, -13.0009765625], + [22.74433593750001, -13.0009765625], + [23.04150390625, -13.0009765625], + [23.338671875000017, -13.0009765625], + [23.635839843750006, -13.0009765625], + [23.843164062500023, -13.0009765625], + [23.8974609375, -12.998242187500011], + [23.962988281250006, -12.988476562500011], + [23.968066406250017, -12.956933593750009], + [23.882421875, -12.799023437500011], + [23.886523437500017, -12.743261718750006], + [23.909375, -12.636132812500009], + [23.944726562500023, -12.54375], + [23.991308593750006, -12.422167968750003], + [23.996484375000023, -12.350683593750006], + [23.958886718750023, -12.117773437500006], + [23.962304687500023, -11.987890625], + [23.973437500000017, -11.852929687500009], + [23.98388671875, -11.725], + [23.970996093750017, -11.635839843750006], + [23.98681640625, -11.587207031250003], + [24.0146484375, -11.517675781250006], + [24.029296875, -11.439160156250011], + [24.046679687500017, -11.405371093750006], + [24.041406250000023, -11.374121093750006], + [24.02558593750001, -11.315625], + [24.010058593750017, -11.184765625000011], + [23.98828125, -11.002832031250009], + [23.96650390625001, -10.871777343750011], + [24.002734375000017, -10.879101562500011], + [24.078417968750017, -10.891503906250009], + [24.115136718750023, -10.955664062500006], + [24.136523437500017, -11.025976562500006], + [24.18720703125001, -11.029980468750011], + [24.319921875, -11.07177734375], + [24.36572265625, -11.1298828125], + [24.396289062500017, -11.255175781250003], + [24.3779296875, -11.3193359375], + [24.33515625000001, -11.371289062500011], + [24.3779296875, -11.417089843750006], + [24.466601562500017, -11.44765625], + [24.5185546875, -11.4384765625], + [24.668261718750017, -11.352929687500009], + [24.728125, -11.337792968750009], + [24.80634765625001, -11.321191406250009], + [24.876855468750023, -11.299121093750003], + [25.075976562500017, -11.260058593750003], + [25.184863281250017, -11.24296875], + [25.245996093750023, -11.21240234375], + [25.28876953125001, -11.21240234375], + [25.3193359375, -11.236914062500006], + [25.291796875000017, -11.325488281250003], + [25.282617187500023, -11.404980468750011], + [25.320703125000023, -11.553515625], + [25.349414062500017, -11.623046875], + [25.413378906250017, -11.673535156250011], + [25.4599609375, -11.699804687500006], + [25.51191406250001, -11.75341796875], + [25.61884765625001, -11.744140625], + [25.854882812500023, -11.820117187500003], + [25.926562500000017, -11.855273437500003], + [26.025976562500006, -11.89013671875], + [26.09638671875001, -11.903222656250009], + [26.339648437500017, -11.929882812500011], + [26.4296875, -11.947851562500006], + [26.59638671875001, -11.972070312500009], + [26.72968750000001, -11.975976562500009], + [26.824023437500017, -11.965234375], + [26.890429687500017, -11.943554687500011], + [26.93085937500001, -11.919335937500009], + [26.949609375000023, -11.898828125], + [26.976855468750017, -11.824609375], + [27.026660156250017, -11.663769531250011], + [27.04609375000001, -11.615917968750011], + [27.09541015625001, -11.59375], + [27.1591796875, -11.579199218750006], + [27.196386718750006, -11.605078125], + [27.238085937500017, -11.783496093750003], + [27.423632812500017, -11.944531250000011], + [27.48701171875001, -12.0796875], + [27.53339843750001, -12.1953125], + [27.573828125, -12.22705078125], + [27.644335937500017, -12.266796875000011], + [27.7568359375, -12.280859375], + [27.857421875, -12.284863281250011], + [28.06884765625, -12.3681640625], + [28.2373046875, -12.4345703125], + [28.357714843750017, -12.48203125], + [28.412890625000017, -12.51806640625], + [28.451464843750017, -12.577441406250003], + [28.474414062500017, -12.623339843750003], + [28.51123046875, -12.7421875], + [28.550878906250006, -12.836132812500011], + [28.61542968750001, -12.854101562500006], + [28.672949218750006, -12.861328125], + [28.730078125, -12.925488281250011], + [28.77314453125001, -12.98193359375], + [28.858789062500023, -13.119433593750003], + [28.921679687500017, -13.214648437500003], + [28.942285156250023, -13.30712890625], + [29.014257812500006, -13.368847656250011], + [29.111621093750017, -13.395117187500006], + [29.20185546875001, -13.398339843750009], + [29.253710937500017, -13.370800781250011], + [29.3818359375, -13.322851562500006], + [29.4814453125, -13.26796875], + [29.55419921875, -13.248925781250009], + [29.59716796875, -13.260546875], + [29.630273437500023, -13.298535156250011], + [29.64765625000001, -13.372949218750009], + [29.651757812500023, -13.414355468750003], + [29.72265625, -13.453808593750011], + [29.775195312500017, -13.438085937500006], + [29.795312500000023, -13.392773437500011], + [29.796484375, -13.369726562500006], + [29.796289062500023, -13.16748046875], + [29.79609375000001, -12.992089843750009], + [29.795800781250023, -12.827050781250009], + [29.79560546875001, -12.625878906250009], + [29.795507812500006, -12.450585937500009], + [29.795312500000023, -12.30615234375], + [29.79511718750001, -12.155468750000011], + [29.749609375, -12.1640625], + [29.691992187500006, -12.198339843750006], + [29.55976562500001, -12.202441406250003], + [29.508203125000023, -12.228222656250011], + [29.491992187500017, -12.266894531250003], + [29.502246093750017, -12.317578125000011], + [29.5048828125, -12.386132812500009], + [29.48554687500001, -12.41845703125], + [29.427539062500017, -12.43125], + [29.34375, -12.40478515625], + [29.191210937500017, -12.370214843750006], + [29.064355468750023, -12.348828125000011], + [28.973437500000017, -12.2578125], + [28.85, -12.120507812500009], + [28.769433593750023, -12.05126953125], + [28.574609375000023, -11.908105468750009], + [28.541601562500006, -11.879199218750003], + [28.482519531250006, -11.812109375], + [28.43183593750001, -11.698339843750006], + [28.407031250000017, -11.622851562500003], + [28.383398437500006, -11.566699218750003], + [28.357226562500017, -11.483007812500006], + [28.404199218750023, -11.354394531250009], + [28.4703125, -11.109570312500011], + [28.517968750000023, -10.933203125], + [28.544238281250017, -10.80234375], + [28.63886718750001, -10.669238281250003], + [28.6455078125, -10.550195312500009], + [28.607421875, -10.397363281250009], + [28.6171875, -10.31298828125], + [28.62353515625, -10.098828125000011], + [28.62890625, -9.91875], + [28.63007812500001, -9.83125], + [28.60419921875001, -9.678808593750006], + [28.54052734375, -9.510058593750003], + [28.400195312500017, -9.275], + [28.400683593750017, -9.224804687500011], + [28.484277343750023, -9.16943359375], + [28.616503906250017, -9.072265625], + [28.68125, -9.0146484375], + [28.7587890625, -8.9326171875], + [28.793554687500006, -8.891015625], + [28.869531250000023, -8.785839843750011], + [28.917773437500017, -8.700585937500009], + [28.934472656250023, -8.590234375], + [28.89814453125001, -8.485449218750006], + [28.972265625, -8.464941406250006], + [29.215625, -8.427832031250006], + [29.483789062500023, -8.386914062500011], + [29.766210937500006, -8.34375], + [30.051367187500006, -8.30029296875], + [30.327539062500023, -8.258203125], + [30.577929687500017, -8.220019531250003], + [30.75117187500001, -8.193652343750003], + [30.776757812500023, -8.265820312500011], + [30.830664062500006, -8.385546875], + [30.891992187500023, -8.473730468750006], + [30.968359375, -8.550976562500011], + [31.03339843750001, -8.59765625], + [31.07636718750001, -8.611914062500006], + [31.3505859375, -8.60703125], + [31.44921875, -8.65390625], + [31.53486328125001, -8.71328125], + [31.55625, -8.80546875], + [31.61279296875, -8.86328125], + [31.673632812500017, -8.908789062500006], + [31.7, -8.914355468750003], + [31.744726562500006, -8.903222656250009], + [31.81806640625001, -8.902246093750009], + [31.886132812500023, -8.921972656250006], + [31.91865234375001, -8.9421875], + [31.921875, -9.019433593750009], + [31.94257812500001, -9.054003906250003], + [32.03535156250001, -9.0673828125], + [32.12978515625002, -9.073339843750006], + [32.22089843750001, -9.125585937500006], + [32.3193359375, -9.134863281250006], + [32.433203125, -9.156347656250006], + [32.48710937500002, -9.212695312500003], + [32.6083984375, -9.2705078125], + [32.75664062500002, -9.322265625], + [32.86328125, -9.380859375], + [32.919921875, -9.407421875000011] + ] + ] + } + }, + { + "type": "Feature", + "properties": { + "scalerank": 1, + "name": "Zimbabwe", + "iso_a2": "ZW", + "iso_a3": "ZWE", + "iso_n3": "716", + "continent": "Africa" + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [31.287890625000017, -22.40205078125001], + [31.197265625, -22.34492187500001], + [31.07343750000001, -22.30781250000001], + [30.916113281250006, -22.29072265625001], + [30.71162109375001, -22.2978515625], + [30.46015625000001, -22.32900390625001], + [30.1904296875, -22.291113281250006], + [29.90234375, -22.184179687500006], + [29.6630859375, -22.146289062500003], + [29.37744140625, -22.19277343750001], + [29.36484375, -22.193945312500006], + [29.315234375000017, -22.15771484375], + [29.237207031250023, -22.07949218750001], + [29.106835937500023, -22.065722656250003], + [29.07148437500001, -22.047460937500006], + [29.042382812500023, -22.018359375], + [29.023339843750023, -21.98125], + [29.01582031250001, -21.93994140625], + [29.03730468750001, -21.811328125], + [29.02558593750001, -21.796875], + [28.99072265625, -21.78144531250001], + [28.919335937500023, -21.766015625], + [28.74775390625001, -21.707617187500006], + [28.532031250000017, -21.65126953125001], + [28.181640625, -21.58935546875], + [28.04560546875001, -21.573046875], + [28.014062500000023, -21.55419921875], + [27.974609375, -21.50673828125001], + [27.90742187500001, -21.35908203125001], + [27.844140625000023, -21.261523437500003], + [27.693457031250006, -21.11103515625001], + [27.66943359375, -21.064257812500003], + [27.67695312500001, -20.94482421875], + [27.688085937500006, -20.84833984375001], + [27.70429687500001, -20.76640625], + [27.69697265625001, -20.689746093750003], + [27.69482421875, -20.59453125], + [27.699609375000023, -20.53066406250001], + [27.679296875, -20.503027343750006], + [27.624609375, -20.48359375000001], + [27.46894531250001, -20.47480468750001], + [27.28076171875, -20.47871093750001], + [27.27460937500001, -20.3818359375], + [27.256738281250023, -20.23203125], + [27.221484375000017, -20.145800781250003], + [27.17822265625, -20.10097656250001], + [27.091796875, -20.05419921875], + [26.91669921875001, -19.99013671875001], + [26.67822265625, -19.89277343750001], + [26.474609375, -19.748632812500006], + [26.241015625000017, -19.5693359375], + [26.168066406250006, -19.53828125000001], + [26.081933593750023, -19.369921875], + [25.95068359375, -19.08173828125001], + [25.95917968750001, -18.985644531250003], + [25.939355468750023, -18.93867187500001], + [25.811914062500023, -18.79707031250001], + [25.78369140625, -18.72353515625001], + [25.76123046875, -18.64921875], + [25.55830078125001, -18.441796875], + [25.4892578125, -18.35126953125001], + [25.43671875000001, -18.234960937500006], + [25.384375, -18.14199218750001], + [25.340234375000023, -18.1044921875], + [25.28242187500001, -18.04121093750001], + [25.242285156250006, -17.969042968750003], + [25.224023437500023, -17.91523437500001], + [25.239062500000017, -17.843066406250003], + [25.2587890625, -17.793554687500006], + [25.451757812500006, -17.84511718750001], + [25.55712890625, -17.84951171875001], + [25.6396484375, -17.82412109375001], + [25.741601562500023, -17.858203125], + [25.86328125, -17.951953125], + [25.995898437500017, -17.969824218750006], + [26.139550781250023, -17.91171875], + [26.333398437500023, -17.929296875], + [26.577539062500023, -18.022558593750006], + [26.779882812500006, -18.04150390625], + [27.020800781250017, -17.95839843750001], + [27.235742187500023, -17.728320312500003], + [27.437890625000023, -17.51191406250001], + [27.63671875, -17.262109375], + [27.75654296875001, -17.060351562500003], + [27.932226562500006, -16.89619140625001], + [28.16376953125001, -16.76972656250001], + [28.399804687500023, -16.66279296875001], + [28.760644531250023, -16.53193359375001], + [28.760546875000017, -16.53212890625001], + [28.83271484375001, -16.424121093750003], + [28.856738281250017, -16.30615234375], + [28.856738281250017, -16.14228515625001], + [28.875585937500006, -16.0361328125], + [28.9130859375, -15.98779296875], + [28.973046875000023, -15.950097656250009], + [29.050585937500017, -15.901171875], + [29.287890625000017, -15.776464843750006], + [29.4873046875, -15.69677734375], + [29.729589843750006, -15.644628906250006], + [29.994921875000017, -15.64404296875], + [30.25068359375001, -15.643457031250009], + [30.39609375, -15.64306640625], + [30.39814453125001, -15.80078125], + [30.409375, -15.978222656250011], + [30.437792968750017, -15.995312500000011], + [30.630175781250017, -15.999218750000011], + [30.938769531250017, -16.01171875], + [31.236230468750023, -16.02363281250001], + [31.426171875000023, -16.15234375], + [31.48984375, -16.1796875], + [31.687597656250006, -16.214160156250003], + [31.939843750000023, -16.428808593750006], + [32.243261718750006, -16.44873046875], + [32.45195312500002, -16.515722656250006], + [32.635839843750006, -16.589453125], + [32.741796875, -16.67763671875001], + [32.81025390625001, -16.69765625], + [32.902929687500006, -16.704199218750006], + [32.94804687500002, -16.71230468750001], + [32.93789062500002, -16.775976562500006], + [32.87626953125002, -16.88359375], + [32.884375, -17.03779296875001], + [32.969335937500006, -17.2515625], + [32.98076171875002, -17.4375], + [32.9546875, -17.765429687500003], + [32.95556640625, -18.08291015625001], + [32.96464843750002, -18.1962890625], + [32.978515625, -18.271484375], + [32.99638671875002, -18.312597656250006], + [32.99306640625002, -18.35957031250001], + [32.942480468750006, -18.49267578125], + [32.90166015625002, -18.632910156250006], + [32.90029296875002, -18.6890625], + [32.88457031250002, -18.728515625], + [32.8544921875, -18.763671875], + [32.72197265625002, -18.828417968750003], + [32.69921875, -18.868457031250003], + [32.69970703125, -18.94091796875], + [32.71650390625001, -19.00185546875001], + [32.766210937500006, -19.02431640625001], + [32.826171875, -19.05878906250001], + [32.84980468750001, -19.10439453125001], + [32.85, -19.152441406250006], + [32.83095703125002, -19.24140625000001], + [32.77763671875002, -19.388769531250006], + [32.83076171875001, -19.558203125], + [32.89042968750002, -19.668066406250006], + [32.97265625, -19.79541015625], + [33.00673828125002, -19.873828125], + [33.0048828125, -19.93017578125], + [32.992773437500006, -19.98486328125], + [32.86962890625, -20.2171875], + [32.780859375, -20.36152343750001], + [32.67255859375001, -20.51611328125], + [32.529296875, -20.613085937500003], + [32.49238281250001, -20.659765625], + [32.477636718750006, -20.712988281250006], + [32.48281250000002, -20.82890625], + [32.476171875, -20.95009765625001], + [32.353613281250006, -21.136523437500003], + [32.429785156250006, -21.29707031250001], + [32.41240234375002, -21.311816406250003], + [32.37109375, -21.33486328125001], + [32.19472656250002, -21.515429687500003], + [32.01630859375001, -21.698046875], + [31.88593750000001, -21.83154296875], + [31.737695312500023, -21.9833984375], + [31.57148437500001, -22.15351562500001], + [31.429492187500017, -22.298828125], + [31.287890625000017, -22.40205078125001] + ] + ] + } + } + ] +} diff --git a/static/vendor/flowbite/flowbite.min.js b/static/vendor/flowbite/flowbite.min.js new file mode 100644 index 0000000..e2c52c2 --- /dev/null +++ b/static/vendor/flowbite/flowbite.min.js @@ -0,0 +1,2 @@ +!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define("Flowbite",[],e):"object"==typeof exports?exports.Flowbite=e():t.Flowbite=e()}(self,(function(){return function(){"use strict";var t={647:function(t,e,i){i.r(e)},853:function(t,e,i){i.r(e),i.d(e,{afterMain:function(){return w},afterRead:function(){return y},afterWrite:function(){return O},applyStyles:function(){return P},arrow:function(){return Q},auto:function(){return a},basePlacements:function(){return c},beforeMain:function(){return b},beforeRead:function(){return _},beforeWrite:function(){return L},bottom:function(){return o},clippingParents:function(){return u},computeStyles:function(){return it},createPopper:function(){return Pt},createPopperBase:function(){return Ht},createPopperLite:function(){return St},detectOverflow:function(){return mt},end:function(){return l},eventListeners:function(){return ot},flip:function(){return yt},hide:function(){return wt},left:function(){return s},main:function(){return E},modifierPhases:function(){return k},offset:function(){return Lt},placements:function(){return g},popper:function(){return h},popperGenerator:function(){return Tt},popperOffsets:function(){return It},preventOverflow:function(){return Ot},read:function(){return m},reference:function(){return f},right:function(){return r},start:function(){return d},top:function(){return n},variationPlacements:function(){return v},viewport:function(){return p},write:function(){return I}});var n="top",o="bottom",r="right",s="left",a="auto",c=[n,o,r,s],d="start",l="end",u="clippingParents",p="viewport",h="popper",f="reference",v=c.reduce((function(t,e){return t.concat([e+"-"+d,e+"-"+l])}),[]),g=[].concat(c,[a]).reduce((function(t,e){return t.concat([e,e+"-"+d,e+"-"+l])}),[]),_="beforeRead",m="read",y="afterRead",b="beforeMain",E="main",w="afterMain",L="beforeWrite",I="write",O="afterWrite",k=[_,m,y,b,E,w,L,I,O];function x(t){return t?(t.nodeName||"").toLowerCase():null}function A(t){if(null==t)return window;if("[object Window]"!==t.toString()){var e=t.ownerDocument;return e&&e.defaultView||window}return t}function C(t){return t instanceof A(t).Element||t instanceof Element}function T(t){return t instanceof A(t).HTMLElement||t instanceof HTMLElement}function H(t){return"undefined"!=typeof ShadowRoot&&(t instanceof A(t).ShadowRoot||t instanceof ShadowRoot)}var P={name:"applyStyles",enabled:!0,phase:"write",fn:function(t){var e=t.state;Object.keys(e.elements).forEach((function(t){var i=e.styles[t]||{},n=e.attributes[t]||{},o=e.elements[t];T(o)&&x(o)&&(Object.assign(o.style,i),Object.keys(n).forEach((function(t){var e=n[t];!1===e?o.removeAttribute(t):o.setAttribute(t,!0===e?"":e)})))}))},effect:function(t){var e=t.state,i={popper:{position:e.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(e.elements.popper.style,i.popper),e.styles=i,e.elements.arrow&&Object.assign(e.elements.arrow.style,i.arrow),function(){Object.keys(e.elements).forEach((function(t){var n=e.elements[t],o=e.attributes[t]||{},r=Object.keys(e.styles.hasOwnProperty(t)?e.styles[t]:i[t]).reduce((function(t,e){return t[e]="",t}),{});T(n)&&x(n)&&(Object.assign(n.style,r),Object.keys(o).forEach((function(t){n.removeAttribute(t)})))}))}},requires:["computeStyles"]};function S(t){return t.split("-")[0]}var j=Math.max,D=Math.min,z=Math.round;function M(){var t=navigator.userAgentData;return null!=t&&t.brands?t.brands.map((function(t){return t.brand+"/"+t.version})).join(" "):navigator.userAgent}function q(){return!/^((?!chrome|android).)*safari/i.test(M())}function V(t,e,i){void 0===e&&(e=!1),void 0===i&&(i=!1);var n=t.getBoundingClientRect(),o=1,r=1;e&&T(t)&&(o=t.offsetWidth>0&&z(n.width)/t.offsetWidth||1,r=t.offsetHeight>0&&z(n.height)/t.offsetHeight||1);var s=(C(t)?A(t):window).visualViewport,a=!q()&&i,c=(n.left+(a&&s?s.offsetLeft:0))/o,d=(n.top+(a&&s?s.offsetTop:0))/r,l=n.width/o,u=n.height/r;return{width:l,height:u,top:d,right:c+l,bottom:d+u,left:c,x:c,y:d}}function B(t){var e=V(t),i=t.offsetWidth,n=t.offsetHeight;return Math.abs(e.width-i)<=1&&(i=e.width),Math.abs(e.height-n)<=1&&(n=e.height),{x:t.offsetLeft,y:t.offsetTop,width:i,height:n}}function R(t,e){var i=e.getRootNode&&e.getRootNode();if(t.contains(e))return!0;if(i&&H(i)){var n=e;do{if(n&&t.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}function W(t){return A(t).getComputedStyle(t)}function F(t){return["table","td","th"].indexOf(x(t))>=0}function K(t){return((C(t)?t.ownerDocument:t.document)||window.document).documentElement}function N(t){return"html"===x(t)?t:t.assignedSlot||t.parentNode||(H(t)?t.host:null)||K(t)}function U(t){return T(t)&&"fixed"!==W(t).position?t.offsetParent:null}function X(t){for(var e=A(t),i=U(t);i&&F(i)&&"static"===W(i).position;)i=U(i);return i&&("html"===x(i)||"body"===x(i)&&"static"===W(i).position)?e:i||function(t){var e=/firefox/i.test(M());if(/Trident/i.test(M())&&T(t)&&"fixed"===W(t).position)return null;var i=N(t);for(H(i)&&(i=i.host);T(i)&&["html","body"].indexOf(x(i))<0;){var n=W(i);if("none"!==n.transform||"none"!==n.perspective||"paint"===n.contain||-1!==["transform","perspective"].indexOf(n.willChange)||e&&"filter"===n.willChange||e&&n.filter&&"none"!==n.filter)return i;i=i.parentNode}return null}(t)||e}function Y(t){return["top","bottom"].indexOf(t)>=0?"x":"y"}function G(t,e,i){return j(t,D(e,i))}function $(t){return Object.assign({},{top:0,right:0,bottom:0,left:0},t)}function J(t,e){return e.reduce((function(e,i){return e[i]=t,e}),{})}var Q={name:"arrow",enabled:!0,phase:"main",fn:function(t){var e,i=t.state,a=t.name,d=t.options,l=i.elements.arrow,u=i.modifiersData.popperOffsets,p=S(i.placement),h=Y(p),f=[s,r].indexOf(p)>=0?"height":"width";if(l&&u){var v=function(t,e){return $("number"!=typeof(t="function"==typeof t?t(Object.assign({},e.rects,{placement:e.placement})):t)?t:J(t,c))}(d.padding,i),g=B(l),_="y"===h?n:s,m="y"===h?o:r,y=i.rects.reference[f]+i.rects.reference[h]-u[h]-i.rects.popper[f],b=u[h]-i.rects.reference[h],E=X(l),w=E?"y"===h?E.clientHeight||0:E.clientWidth||0:0,L=y/2-b/2,I=v[_],O=w-g[f]-v[m],k=w/2-g[f]/2+L,x=G(I,k,O),A=h;i.modifiersData[a]=((e={})[A]=x,e.centerOffset=x-k,e)}},effect:function(t){var e=t.state,i=t.options.element,n=void 0===i?"[data-popper-arrow]":i;null!=n&&("string"!=typeof n||(n=e.elements.popper.querySelector(n)))&&R(e.elements.popper,n)&&(e.elements.arrow=n)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Z(t){return t.split("-")[1]}var tt={top:"auto",right:"auto",bottom:"auto",left:"auto"};function et(t){var e,i=t.popper,a=t.popperRect,c=t.placement,d=t.variation,u=t.offsets,p=t.position,h=t.gpuAcceleration,f=t.adaptive,v=t.roundOffsets,g=t.isFixed,_=u.x,m=void 0===_?0:_,y=u.y,b=void 0===y?0:y,E="function"==typeof v?v({x:m,y:b}):{x:m,y:b};m=E.x,b=E.y;var w=u.hasOwnProperty("x"),L=u.hasOwnProperty("y"),I=s,O=n,k=window;if(f){var x=X(i),C="clientHeight",T="clientWidth";if(x===A(i)&&"static"!==W(x=K(i)).position&&"absolute"===p&&(C="scrollHeight",T="scrollWidth"),c===n||(c===s||c===r)&&d===l)O=o,b-=(g&&x===k&&k.visualViewport?k.visualViewport.height:x[C])-a.height,b*=h?1:-1;if(c===s||(c===n||c===o)&&d===l)I=r,m-=(g&&x===k&&k.visualViewport?k.visualViewport.width:x[T])-a.width,m*=h?1:-1}var H,P=Object.assign({position:p},f&&tt),S=!0===v?function(t){var e=t.x,i=t.y,n=window.devicePixelRatio||1;return{x:z(e*n)/n||0,y:z(i*n)/n||0}}({x:m,y:b}):{x:m,y:b};return m=S.x,b=S.y,h?Object.assign({},P,((H={})[O]=L?"0":"",H[I]=w?"0":"",H.transform=(k.devicePixelRatio||1)<=1?"translate("+m+"px, "+b+"px)":"translate3d("+m+"px, "+b+"px, 0)",H)):Object.assign({},P,((e={})[O]=L?b+"px":"",e[I]=w?m+"px":"",e.transform="",e))}var it={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(t){var e=t.state,i=t.options,n=i.gpuAcceleration,o=void 0===n||n,r=i.adaptive,s=void 0===r||r,a=i.roundOffsets,c=void 0===a||a,d={placement:S(e.placement),variation:Z(e.placement),popper:e.elements.popper,popperRect:e.rects.popper,gpuAcceleration:o,isFixed:"fixed"===e.options.strategy};null!=e.modifiersData.popperOffsets&&(e.styles.popper=Object.assign({},e.styles.popper,et(Object.assign({},d,{offsets:e.modifiersData.popperOffsets,position:e.options.strategy,adaptive:s,roundOffsets:c})))),null!=e.modifiersData.arrow&&(e.styles.arrow=Object.assign({},e.styles.arrow,et(Object.assign({},d,{offsets:e.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:c})))),e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-placement":e.placement})},data:{}},nt={passive:!0};var ot={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(t){var e=t.state,i=t.instance,n=t.options,o=n.scroll,r=void 0===o||o,s=n.resize,a=void 0===s||s,c=A(e.elements.popper),d=[].concat(e.scrollParents.reference,e.scrollParents.popper);return r&&d.forEach((function(t){t.addEventListener("scroll",i.update,nt)})),a&&c.addEventListener("resize",i.update,nt),function(){r&&d.forEach((function(t){t.removeEventListener("scroll",i.update,nt)})),a&&c.removeEventListener("resize",i.update,nt)}},data:{}},rt={left:"right",right:"left",bottom:"top",top:"bottom"};function st(t){return t.replace(/left|right|bottom|top/g,(function(t){return rt[t]}))}var at={start:"end",end:"start"};function ct(t){return t.replace(/start|end/g,(function(t){return at[t]}))}function dt(t){var e=A(t);return{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function lt(t){return V(K(t)).left+dt(t).scrollLeft}function ut(t){var e=W(t),i=e.overflow,n=e.overflowX,o=e.overflowY;return/auto|scroll|overlay|hidden/.test(i+o+n)}function pt(t){return["html","body","#document"].indexOf(x(t))>=0?t.ownerDocument.body:T(t)&&ut(t)?t:pt(N(t))}function ht(t,e){var i;void 0===e&&(e=[]);var n=pt(t),o=n===(null==(i=t.ownerDocument)?void 0:i.body),r=A(n),s=o?[r].concat(r.visualViewport||[],ut(n)?n:[]):n,a=e.concat(s);return o?a:a.concat(ht(N(s)))}function ft(t){return Object.assign({},t,{left:t.x,top:t.y,right:t.x+t.width,bottom:t.y+t.height})}function vt(t,e,i){return e===p?ft(function(t,e){var i=A(t),n=K(t),o=i.visualViewport,r=n.clientWidth,s=n.clientHeight,a=0,c=0;if(o){r=o.width,s=o.height;var d=q();(d||!d&&"fixed"===e)&&(a=o.offsetLeft,c=o.offsetTop)}return{width:r,height:s,x:a+lt(t),y:c}}(t,i)):C(e)?function(t,e){var i=V(t,!1,"fixed"===e);return i.top=i.top+t.clientTop,i.left=i.left+t.clientLeft,i.bottom=i.top+t.clientHeight,i.right=i.left+t.clientWidth,i.width=t.clientWidth,i.height=t.clientHeight,i.x=i.left,i.y=i.top,i}(e,i):ft(function(t){var e,i=K(t),n=dt(t),o=null==(e=t.ownerDocument)?void 0:e.body,r=j(i.scrollWidth,i.clientWidth,o?o.scrollWidth:0,o?o.clientWidth:0),s=j(i.scrollHeight,i.clientHeight,o?o.scrollHeight:0,o?o.clientHeight:0),a=-n.scrollLeft+lt(t),c=-n.scrollTop;return"rtl"===W(o||i).direction&&(a+=j(i.clientWidth,o?o.clientWidth:0)-r),{width:r,height:s,x:a,y:c}}(K(t)))}function gt(t,e,i,n){var o="clippingParents"===e?function(t){var e=ht(N(t)),i=["absolute","fixed"].indexOf(W(t).position)>=0&&T(t)?X(t):t;return C(i)?e.filter((function(t){return C(t)&&R(t,i)&&"body"!==x(t)})):[]}(t):[].concat(e),r=[].concat(o,[i]),s=r[0],a=r.reduce((function(e,i){var o=vt(t,i,n);return e.top=j(o.top,e.top),e.right=D(o.right,e.right),e.bottom=D(o.bottom,e.bottom),e.left=j(o.left,e.left),e}),vt(t,s,n));return a.width=a.right-a.left,a.height=a.bottom-a.top,a.x=a.left,a.y=a.top,a}function _t(t){var e,i=t.reference,a=t.element,c=t.placement,u=c?S(c):null,p=c?Z(c):null,h=i.x+i.width/2-a.width/2,f=i.y+i.height/2-a.height/2;switch(u){case n:e={x:h,y:i.y-a.height};break;case o:e={x:h,y:i.y+i.height};break;case r:e={x:i.x+i.width,y:f};break;case s:e={x:i.x-a.width,y:f};break;default:e={x:i.x,y:i.y}}var v=u?Y(u):null;if(null!=v){var g="y"===v?"height":"width";switch(p){case d:e[v]=e[v]-(i[g]/2-a[g]/2);break;case l:e[v]=e[v]+(i[g]/2-a[g]/2)}}return e}function mt(t,e){void 0===e&&(e={});var i=e,s=i.placement,a=void 0===s?t.placement:s,d=i.strategy,l=void 0===d?t.strategy:d,v=i.boundary,g=void 0===v?u:v,_=i.rootBoundary,m=void 0===_?p:_,y=i.elementContext,b=void 0===y?h:y,E=i.altBoundary,w=void 0!==E&&E,L=i.padding,I=void 0===L?0:L,O=$("number"!=typeof I?I:J(I,c)),k=b===h?f:h,x=t.rects.popper,A=t.elements[w?k:b],T=gt(C(A)?A:A.contextElement||K(t.elements.popper),g,m,l),H=V(t.elements.reference),P=_t({reference:H,element:x,strategy:"absolute",placement:a}),S=ft(Object.assign({},x,P)),j=b===h?S:H,D={top:T.top-j.top+O.top,bottom:j.bottom-T.bottom+O.bottom,left:T.left-j.left+O.left,right:j.right-T.right+O.right},z=t.modifiersData.offset;if(b===h&&z){var M=z[a];Object.keys(D).forEach((function(t){var e=[r,o].indexOf(t)>=0?1:-1,i=[n,o].indexOf(t)>=0?"y":"x";D[t]+=M[i]*e}))}return D}var yt={name:"flip",enabled:!0,phase:"main",fn:function(t){var e=t.state,i=t.options,l=t.name;if(!e.modifiersData[l]._skip){for(var u=i.mainAxis,p=void 0===u||u,h=i.altAxis,f=void 0===h||h,_=i.fallbackPlacements,m=i.padding,y=i.boundary,b=i.rootBoundary,E=i.altBoundary,w=i.flipVariations,L=void 0===w||w,I=i.allowedAutoPlacements,O=e.options.placement,k=S(O),x=_||(k===O||!L?[st(O)]:function(t){if(S(t)===a)return[];var e=st(t);return[ct(t),e,ct(e)]}(O)),A=[O].concat(x).reduce((function(t,i){return t.concat(S(i)===a?function(t,e){void 0===e&&(e={});var i=e,n=i.placement,o=i.boundary,r=i.rootBoundary,s=i.padding,a=i.flipVariations,d=i.allowedAutoPlacements,l=void 0===d?g:d,u=Z(n),p=u?a?v:v.filter((function(t){return Z(t)===u})):c,h=p.filter((function(t){return l.indexOf(t)>=0}));0===h.length&&(h=p);var f=h.reduce((function(e,i){return e[i]=mt(t,{placement:i,boundary:o,rootBoundary:r,padding:s})[S(i)],e}),{});return Object.keys(f).sort((function(t,e){return f[t]-f[e]}))}(e,{placement:i,boundary:y,rootBoundary:b,padding:m,flipVariations:L,allowedAutoPlacements:I}):i)}),[]),C=e.rects.reference,T=e.rects.popper,H=new Map,P=!0,j=A[0],D=0;D=0,B=V?"width":"height",R=mt(e,{placement:z,boundary:y,rootBoundary:b,altBoundary:E,padding:m}),W=V?q?r:s:q?o:n;C[B]>T[B]&&(W=st(W));var F=st(W),K=[];if(p&&K.push(R[M]<=0),f&&K.push(R[W]<=0,R[F]<=0),K.every((function(t){return t}))){j=z,P=!1;break}H.set(z,K)}if(P)for(var N=function(t){var e=A.find((function(e){var i=H.get(e);if(i)return i.slice(0,t).every((function(t){return t}))}));if(e)return j=e,"break"},U=L?3:1;U>0;U--){if("break"===N(U))break}e.placement!==j&&(e.modifiersData[l]._skip=!0,e.placement=j,e.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function bt(t,e,i){return void 0===i&&(i={x:0,y:0}),{top:t.top-e.height-i.y,right:t.right-e.width+i.x,bottom:t.bottom-e.height+i.y,left:t.left-e.width-i.x}}function Et(t){return[n,r,o,s].some((function(e){return t[e]>=0}))}var wt={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(t){var e=t.state,i=t.name,n=e.rects.reference,o=e.rects.popper,r=e.modifiersData.preventOverflow,s=mt(e,{elementContext:"reference"}),a=mt(e,{altBoundary:!0}),c=bt(s,n),d=bt(a,o,r),l=Et(c),u=Et(d);e.modifiersData[i]={referenceClippingOffsets:c,popperEscapeOffsets:d,isReferenceHidden:l,hasPopperEscaped:u},e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-reference-hidden":l,"data-popper-escaped":u})}};var Lt={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(t){var e=t.state,i=t.options,o=t.name,a=i.offset,c=void 0===a?[0,0]:a,d=g.reduce((function(t,i){return t[i]=function(t,e,i){var o=S(t),a=[s,n].indexOf(o)>=0?-1:1,c="function"==typeof i?i(Object.assign({},e,{placement:t})):i,d=c[0],l=c[1];return d=d||0,l=(l||0)*a,[s,r].indexOf(o)>=0?{x:l,y:d}:{x:d,y:l}}(i,e.rects,c),t}),{}),l=d[e.placement],u=l.x,p=l.y;null!=e.modifiersData.popperOffsets&&(e.modifiersData.popperOffsets.x+=u,e.modifiersData.popperOffsets.y+=p),e.modifiersData[o]=d}};var It={name:"popperOffsets",enabled:!0,phase:"read",fn:function(t){var e=t.state,i=t.name;e.modifiersData[i]=_t({reference:e.rects.reference,element:e.rects.popper,strategy:"absolute",placement:e.placement})},data:{}};var Ot={name:"preventOverflow",enabled:!0,phase:"main",fn:function(t){var e=t.state,i=t.options,a=t.name,c=i.mainAxis,l=void 0===c||c,u=i.altAxis,p=void 0!==u&&u,h=i.boundary,f=i.rootBoundary,v=i.altBoundary,g=i.padding,_=i.tether,m=void 0===_||_,y=i.tetherOffset,b=void 0===y?0:y,E=mt(e,{boundary:h,rootBoundary:f,padding:g,altBoundary:v}),w=S(e.placement),L=Z(e.placement),I=!L,O=Y(w),k="x"===O?"y":"x",x=e.modifiersData.popperOffsets,A=e.rects.reference,C=e.rects.popper,T="function"==typeof b?b(Object.assign({},e.rects,{placement:e.placement})):b,H="number"==typeof T?{mainAxis:T,altAxis:T}:Object.assign({mainAxis:0,altAxis:0},T),P=e.modifiersData.offset?e.modifiersData.offset[e.placement]:null,z={x:0,y:0};if(x){if(l){var M,q="y"===O?n:s,V="y"===O?o:r,R="y"===O?"height":"width",W=x[O],F=W+E[q],K=W-E[V],N=m?-C[R]/2:0,U=L===d?A[R]:C[R],$=L===d?-C[R]:-A[R],J=e.elements.arrow,Q=m&&J?B(J):{width:0,height:0},tt=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},et=tt[q],it=tt[V],nt=G(0,A[R],Q[R]),ot=I?A[R]/2-N-nt-et-H.mainAxis:U-nt-et-H.mainAxis,rt=I?-A[R]/2+N+nt+it+H.mainAxis:$+nt+it+H.mainAxis,st=e.elements.arrow&&X(e.elements.arrow),at=st?"y"===O?st.clientTop||0:st.clientLeft||0:0,ct=null!=(M=null==P?void 0:P[O])?M:0,dt=W+rt-ct,lt=G(m?D(F,W+ot-ct-at):F,W,m?j(K,dt):K);x[O]=lt,z[O]=lt-W}if(p){var ut,pt="x"===O?n:s,ht="x"===O?o:r,ft=x[k],vt="y"===k?"height":"width",gt=ft+E[pt],_t=ft-E[ht],yt=-1!==[n,s].indexOf(w),bt=null!=(ut=null==P?void 0:P[k])?ut:0,Et=yt?gt:ft-A[vt]-C[vt]-bt+H.altAxis,wt=yt?ft+A[vt]+C[vt]-bt-H.altAxis:_t,Lt=m&&yt?function(t,e,i){var n=G(t,e,i);return n>i?i:n}(Et,ft,wt):G(m?Et:gt,ft,m?wt:_t);x[k]=Lt,z[k]=Lt-ft}e.modifiersData[a]=z}},requiresIfExists:["offset"]};function kt(t,e,i){void 0===i&&(i=!1);var n,o,r=T(e),s=T(e)&&function(t){var e=t.getBoundingClientRect(),i=z(e.width)/t.offsetWidth||1,n=z(e.height)/t.offsetHeight||1;return 1!==i||1!==n}(e),a=K(e),c=V(t,s,i),d={scrollLeft:0,scrollTop:0},l={x:0,y:0};return(r||!r&&!i)&&(("body"!==x(e)||ut(a))&&(d=(n=e)!==A(n)&&T(n)?{scrollLeft:(o=n).scrollLeft,scrollTop:o.scrollTop}:dt(n)),T(e)?((l=V(e,!0)).x+=e.clientLeft,l.y+=e.clientTop):a&&(l.x=lt(a))),{x:c.left+d.scrollLeft-l.x,y:c.top+d.scrollTop-l.y,width:c.width,height:c.height}}function xt(t){var e=new Map,i=new Set,n=[];function o(t){i.add(t.name),[].concat(t.requires||[],t.requiresIfExists||[]).forEach((function(t){if(!i.has(t)){var n=e.get(t);n&&o(n)}})),n.push(t)}return t.forEach((function(t){e.set(t.name,t)})),t.forEach((function(t){i.has(t.name)||o(t)})),n}var At={placement:"bottom",modifiers:[],strategy:"absolute"};function Ct(){for(var t=arguments.length,e=new Array(t),i=0;it._options.maxValue&&(i.value=t._options.maxValue.toString()),null!==t._options.minValue&&parseInt(i.value)=this._options.maxValue||(this._targetEl.value=(this.getCurrentValue()+1).toString(),this._options.onIncrement(this))},t.prototype.decrement=function(){null!==this._options.minValue&&this.getCurrentValue()<=this._options.minValue||(this._targetEl.value=(this.getCurrentValue()-1).toString(),this._options.onDecrement(this))},t.prototype.updateOnIncrement=function(t){this._options.onIncrement=t},t.prototype.updateOnDecrement=function(t){this._options.onDecrement=t},t}();function c(){document.querySelectorAll("[data-input-counter]").forEach((function(t){var e=t.id,i=document.querySelector('[data-input-counter-increment="'+e+'"]'),n=document.querySelector('[data-input-counter-decrement="'+e+'"]'),r=t.getAttribute("data-input-counter-min"),s=t.getAttribute("data-input-counter-max");t?o.default.instanceExists("InputCounter",t.getAttribute("id"))||new a(t,i||null,n||null,{minValue:r?parseInt(r):null,maxValue:s?parseInt(s):null}):console.error('The target element with id "'.concat(e,'" does not exist. Please check the data-input-counter attribute.'))}))}e.initInputCounters=c,"undefined"!=typeof window&&(window.InputCounter=a,window.initInputCounters=c),e.default=a},16:function(t,e,i){var n=this&&this.__assign||function(){return n=Object.assign||function(t){for(var e,i=1,n=arguments.length;i + +{% endblock content %} diff --git a/templates/layout.html b/templates/layout.html new file mode 100644 index 0000000..b5d1463 --- /dev/null +++ b/templates/layout.html @@ -0,0 +1,33 @@ + + + + + + + {% if title %} + {{ title }} - Geolens + {% else %} + Geolens + {% endif %} + + + + + {% include '_header.html' %} + +
+
{% block content %} {% endblock content %}
+
{% include '_footer.html' %}
+
+ + + + + diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..4c950c5 --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,13 @@ +{ + "compilerOptions": { + "outDir": "./static", + "removeComments": true, + "sourceMap": true, + "noImplicitAny": false, + "module": "es6", + "target": "es5", + "allowJs": true, + "moduleResolution": "node" + }, + "exclude": ["test.ts", "node_modules"] +} diff --git a/webpack.config.js b/webpack.config.js new file mode 100644 index 0000000..2005ac7 --- /dev/null +++ b/webpack.config.js @@ -0,0 +1,22 @@ +const path = require("path"); + +module.exports = { + entry: "./src/ts/Main.ts", + devtool: "inline-source-map", + module: { + rules: [ + { + test: /\.tsx?$/, + use: "ts-loader", + exclude: /node_modules/, + }, + ], + }, + resolve: { + extensions: [".js", ".ts", ".tsx"], + }, + output: { + path: path.resolve(__dirname, "./"), + filename: "static/js/bundle.js", + }, +};